UNPKG

kepler.gl.geoiq

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

178 lines (140 loc) 16.5 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn")); var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf")); var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral")); var _react = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _styledComponents = _interopRequireDefault(require("styled-components")); var _fieldSelector = _interopRequireDefault(require("../../common/field-selector")); var _styledComponents2 = require("../../common/styled-components"); function _templateObject4() { var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 70%;\n"]); _templateObject4 = function _templateObject4() { return data; }; return data; } function _templateObject3() { var data = (0, _taggedTemplateLiteral2["default"])(["\n width: 30%;\n"]); _templateObject3 = function _templateObject3() { return data; }; return data; } function _templateObject2() { var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n margin-bottom: 8px;\n align-items: center;\n"]); _templateObject2 = function _templateObject2() { return data; }; return data; } function _templateObject() { var data = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: space-between;\n"]); _templateObject = function _templateObject() { return data; }; return data; } var TopRow = _styledComponents["default"].div(_templateObject()); var LayerColumnConfig = /*#__PURE__*/ function (_Component) { (0, _inherits2["default"])(LayerColumnConfig, _Component); function LayerColumnConfig() { (0, _classCallCheck2["default"])(this, LayerColumnConfig); return (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(LayerColumnConfig).apply(this, arguments)); } (0, _createClass2["default"])(LayerColumnConfig, [{ key: "_updateColumn", value: function _updateColumn(key, value) { var layer = this.props.layer; var columns = value && value.pair && layer.columnPairs ? layer.assignColumnPairs(key, value.pair) : layer.assignColumn(key, value); this.props.updateLayerConfig({ columns: columns }); layer.type === 'pincode' ? this.props.updateLayerConfig({ apiCallRequest: true, apiCallLoader: true }) : null; } }, { key: "render", value: function render() { var _this = this; var _this$props = this.props, layer = _this$props.layer, fields = _this$props.fields, fieldPairs = _this$props.fieldPairs; // console.log( // 'inside layer-column-config layer=', // layer, // 'fields=', // fields, // 'fieldPairs=', // fieldPairs // ); return _react["default"].createElement("div", null, _react["default"].createElement(_styledComponents2.SidePanelSection, null, _react["default"].createElement("div", { className: "layer-config__column" }, _react["default"].createElement(TopRow, null, _react["default"].createElement(_styledComponents2.PanelLabel, null, "Columns"), _react["default"].createElement(_styledComponents2.PanelLabel, null, "* Required")), Object.keys(layer.config.columns).map(function (key) { return _react["default"].createElement(ColumnSelector, { column: layer.config.columns[key], label: key, key: key, allFields: fields, fieldPairs: layer.columnPairs ? fieldPairs.map(function (fp) { return { name: fp.defaultName, type: 'point', pair: fp.pair }; }) : null, onSelect: function onSelect(val) { return _this._updateColumn(key, val); } }); })))); } }]); return LayerColumnConfig; }(_react.Component); exports["default"] = LayerColumnConfig; (0, _defineProperty2["default"])(LayerColumnConfig, "propTypes", { layer: _propTypes["default"].object.isRequired, fields: _propTypes["default"].arrayOf(_propTypes["default"].any).isRequired, updateLayerConfig: _propTypes["default"].func.isRequired, fieldPairs: _propTypes["default"].arrayOf(_propTypes["default"].any) }); var ColumnRow = _styledComponents["default"].div(_templateObject2()); var ColumnName = _styledComponents["default"].div(_templateObject3()); var ColumnSelect = _styledComponents["default"].div(_templateObject4()); var ColumnSelector = function ColumnSelector(_ref) { var column = _ref.column, label = _ref.label, allFields = _ref.allFields, onSelect = _ref.onSelect, fieldPairs = _ref.fieldPairs; return _react["default"].createElement(ColumnRow, { className: "layer-config__column__selector" }, _react["default"].createElement(ColumnName, { className: "layer-config__column__name" }, _react["default"].createElement(_styledComponents2.PanelLabel, null, label), !column.optional ? _react["default"].createElement(_styledComponents2.PanelLabel, null, " *") : null), _react["default"].createElement(ColumnSelect, { className: "layer-config__column__select" }, _react["default"].createElement(_fieldSelector["default"], { suggested: fieldPairs, error: !column.optional && !column.value, fields: allFields, value: column.value, erasable: Boolean(column.optional), onSelect: onSelect }))); }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvbGF5ZXItY29sdW1uLWNvbmZpZy5qcyJdLCJuYW1lcyI6WyJUb3BSb3ciLCJzdHlsZWQiLCJkaXYiLCJMYXllckNvbHVtbkNvbmZpZyIsImtleSIsInZhbHVlIiwibGF5ZXIiLCJwcm9wcyIsImNvbHVtbnMiLCJwYWlyIiwiY29sdW1uUGFpcnMiLCJhc3NpZ25Db2x1bW5QYWlycyIsImFzc2lnbkNvbHVtbiIsInVwZGF0ZUxheWVyQ29uZmlnIiwidHlwZSIsImFwaUNhbGxSZXF1ZXN0IiwiYXBpQ2FsbExvYWRlciIsImZpZWxkcyIsImZpZWxkUGFpcnMiLCJPYmplY3QiLCJrZXlzIiwiY29uZmlnIiwibWFwIiwiZnAiLCJuYW1lIiwiZGVmYXVsdE5hbWUiLCJ2YWwiLCJfdXBkYXRlQ29sdW1uIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwib2JqZWN0IiwiaXNSZXF1aXJlZCIsImFycmF5T2YiLCJhbnkiLCJmdW5jIiwiQ29sdW1uUm93IiwiQ29sdW1uTmFtZSIsIkNvbHVtblNlbGVjdCIsIkNvbHVtblNlbGVjdG9yIiwiY29sdW1uIiwibGFiZWwiLCJhbGxGaWVsZHMiLCJvblNlbGVjdCIsIm9wdGlvbmFsIiwiQm9vbGVhbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBS0EsSUFBTUEsTUFBTSxHQUFHQyw2QkFBT0MsR0FBVixtQkFBWjs7SUFLcUJDLGlCOzs7Ozs7Ozs7Ozs7a0NBUUxDLEcsRUFBS0MsSyxFQUFPO0FBQUEsVUFDakJDLEtBRGlCLEdBQ1IsS0FBS0MsS0FERyxDQUNqQkQsS0FEaUI7QUFHeEIsVUFBTUUsT0FBTyxHQUNYSCxLQUFLLElBQUlBLEtBQUssQ0FBQ0ksSUFBZixJQUF1QkgsS0FBSyxD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QkEsUUFBNUI7QUFBQSxNQUFzQ3hCLFVBQXRDLFFBQXNDQSxVQUF0QztBQUFBLFNBQ3JCLGdDQUFDLFNBQUQ7QUFBVyxJQUFBLFNBQVMsRUFBQztBQUFyQixLQUNFLGdDQUFDLFVBQUQ7QUFBWSxJQUFBLFNBQVMsRUFBQztBQUF0QixLQUNFLGdDQUFDLDZCQUFELFFBQWFzQixLQUFiLENBREYsRUFFRyxDQUFDRCxNQUFNLENBQUNJLFFBQVIsR0FBbUIsZ0NBQUMsNkJBQUQsY0FBbkIsR0FBc0QsSUFGekQsQ0FERixFQUtFLGdDQUFDLFlBQUQ7QUFBYyxJQUFBLFNBQVMsRUFBQztBQUF4QixLQUNFLGdDQUFDLHlCQUFEO0FBQ0UsSUFBQSxTQUFTLEVBQUV6QixVQURiO0FBRUUsSUFBQSxLQUFLLEVBQUUsQ0FBQ3FCLE1BQU0sQ0FBQ0ksUUFBUixJQUFvQixDQUFDSixNQUFNLENBQUNsQyxLQUZyQztBQUdFLElBQUEsTUFBTSxFQUFFb0MsU0FIVjtBQUlFLElBQUEsS0FBSyxFQUFFRixNQUFNLENBQUNsQyxLQUpoQjtBQUtFLElBQUEsUUFBUSxFQUFFdUMsT0FBTyxDQUFDTCxNQUFNLENBQUNJLFFBQVIsQ0FMbkI7QUFNRSxJQUFBLFFBQVEsRUFBRUQ7QUFOWixJQURGLENBTEYsQ0FEcUI7QUFBQSxDQUF2QiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAxOSBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IEZpZWxkU2VsZWN0b3IgZnJvbSAnY29tcG9uZW50cy9jb21tb24vZmllbGQtc2VsZWN0b3InO1xuXG5pbXBvcnQge1xuICBQYW5lbExhYmVsLFxuICBTaWRlUGFuZWxTZWN0aW9uXG59IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcblxuY29uc3QgVG9wUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuYDtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTGF5ZXJDb2x1bW5Db25maWcgZXh0ZW5kcyBDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGxheWVyOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgZmllbGRzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KS5pc1JlcXVpcmVkLFxuICAgIHVwZGF0ZUxheWVyQ29uZmlnOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIGZpZWxkUGFpcnM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5hbnkpXG4gIH07XG5cbiAgX3VwZGF0ZUNvbHVtbihrZXksIHZhbHVlKSB7XG4gICAgY29uc3Qge2xheWVyfSA9IHRoaXMucHJvcHM7XG5cbiAgICBjb25zdCBjb2x1bW5zID1cbiAgICAgIHZhbHVlICYmIHZhbHVlLnBhaXIgJiYgbGF5ZXIuY29sdW1uUGFpcnNcbiAgICAgICAgPyBsYXllci5hc3NpZ25Db2x1bW5QYWlycyhrZXksIHZhbHVlLnBhaXIpXG4gICAgICAgIDogbGF5ZXIuYXNzaWduQ29sdW1uKGtleSwgdmFsdWUpO1xuXG4gICAgdGhpcy5wcm9wcy51cGRhdGVMYXllckNvbmZpZyh7Y29sdW1uc30pO1xuICAgIGxheWVyLnR5cGUgPT09ICdwaW5jb2RlJ1xuICAgICAgPyB0aGlzLnByb3BzLnVwZGF0ZUxheWVyQ29uZmlnKHtcbiAgICAgICAgICBhcGlDYWxsUmVxdWVzdDogdHJ1ZSxcbiAgICAgICAgICBhcGlDYWxsTG9hZGVyOiB0cnVlXG4gICAgICAgIH0pXG4gICAgICA6IG51bGw7XG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2xheWVyLCBmaWVsZHMsIGZpZWxkUGFpcnN9ID0gdGhpcy5wcm9wcztcbiAgICAvLyBjb25zb2xlLmxvZyhcbiAgICAvLyAgICdpbnNpZGUgbGF5ZXItY29sdW1uLWNvbmZpZyBsYXllcj0nLFxuICAgIC8vICAgbGF5ZXIsXG4gICAgLy8gICAnZmllbGRzPScsXG4gICAgLy8gICBmaWVsZHMsXG4gICAgLy8gICAnZmllbGRQYWlycz0nLFxuICAgIC8vICAgZmllbGRQYWlyc1xuICAgIC8vICk7XG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXY+XG4gICAgICAgIDxTaWRlUGFuZWxTZWN0aW9uPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGF5ZXItY29uZmlnX19jb2x1bW5cIj5cbiAgICAgICAgICAgIDxUb3BSb3c+XG4gICAgICAgICAgICAgIDxQYW5lbExhYmVsPkNvbHVtbnM8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgIDxQYW5lbExhYmVsPiogUmVxdWlyZWQ8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICA8L1RvcFJvdz5cbiAgICAgICAgICAgIHtPYmplY3Qua2V5cyhsYXllci5jb25maWcuY29sdW1ucykubWFwKGtleSA9PiAoXG4gICAgICAgICAgICAgIDxDb2x1bW5TZWxlY3RvclxuICAgICAgICAgICAgICAgIGNvbHVtbj17bGF5ZXIuY29uZmlnLmNvbHVtbnNba2V5XX1cbiAgICAgICAgICAgICAgICBsYWJlbD17a2V5fVxuICAgICAgICAgICAgICAgIGtleT17a2V5fVxuICAgICAgICAgICAgICAgIGFsbEZpZWxkcz17ZmllbGRzfVxuICAgICAgICAgICAgICAgIGZpZWxkUGFpcnM9e1xuICAgICAgICAgICAgICAgICAgbGF5ZXIuY29sdW1uUGFpcnNcbiAgICAgICAgICAgICAgICAgICAgPyBmaWVsZFBhaXJzLm1hcChmcCA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogZnAuZGVmYXVsdE5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAncG9pbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFpcjogZnAucGFpclxuICAgICAgICAgICAgICAgICAgICAgIH0pKVxuICAgICAgICAgICAgICAgICAgICA6IG51bGxcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgb25TZWxlY3Q9e3ZhbCA9PiB0aGlzLl91cGRhdGVDb2x1bW4oa2V5LCB2YWwpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvU2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuY29uc3QgQ29sdW1uUm93ID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuYDtcblxuY29uc3QgQ29sdW1uTmFtZSA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAzMCU7XG5gO1xuY29uc3QgQ29sdW1uU2VsZWN0ID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDcwJTtcbmA7XG5cbmNvbnN0IENvbHVtblNlbGVjdG9yID0gKHtjb2x1bW4sIGxhYmVsLCBhbGxGaWVsZHMsIG9uU2VsZWN0LCBmaWVsZFBhaXJzfSkgPT4gKFxuICA8Q29sdW1uUm93IGNsYXNzTmFtZT1cImxheWVyLWNvbmZpZ19fY29sdW1uX19zZWxlY3RvclwiPlxuICAgIDxDb2x1bW5OYW1lIGNsYXNzTmFtZT1cImxheWVyLWNvbmZpZ19fY29sdW1uX19uYW1lXCI+XG4gICAgICA8UGFuZWxMYWJlbD57bGFiZWx9PC9QYW5lbExhYmVsPlxuICAgICAgeyFjb2x1bW4ub3B0aW9uYWwgPyA8UGFuZWxMYWJlbD57YCAgKmB9PC9QYW5lbExhYmVsPiA6IG51bGx9XG4gICAgPC9Db2x1bW5OYW1lPlxuICAgIDxDb2x1bW5TZWxlY3QgY2xhc3NOYW1lPVwibGF5ZXItY29uZmlnX19jb2x1bW5fX3NlbGVjdFwiPlxuICAgICAgPEZpZWxkU2VsZWN0b3JcbiAgICAgICAgc3VnZ2VzdGVkPXtmaWVsZFBhaXJzfVxuICAgICAgICBlcnJvcj17IWNvbHVtbi5vcHRpb25hbCAmJiAhY29sdW1uLnZhbHVlfVxuICAgICAgICBmaWVsZHM9e2FsbEZpZWxkc31cbiAgICAgICAgdmFsdWU9e2NvbHVtbi52YWx1ZX1cbiAgICAgICAgZXJhc2FibGU9e0Jvb2xlYW4oY29sdW1uLm9wdGlvbmFsKX1cbiAgICAgICAgb25TZWxlY3Q9e29uU2VsZWN0fVxuICAgICAgLz5cbiAgICA8L0NvbHVtblNlbGVjdD5cbiAgPC9Db2x1bW5Sb3c+XG4pO1xuIl19