@carto/kepler.gl 0.0.41 → 0.0.42

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,14 +2,28 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
10
  exports["default"] = void 0;
9
11
 
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
+
10
24
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
25
 
12
- var _react = _interopRequireDefault(require("react"));
26
+ var _react = _interopRequireWildcard(require("react"));
13
27
 
14
28
  var _propTypes = _interopRequireDefault(require("prop-types"));
15
29
 
@@ -23,11 +37,10 @@ var _colorPalette = require("../../../constants/color-palette");
23
37
 
24
38
  var _templateObject, _templateObject2, _templateObject3;
25
39
 
26
- var propTypes = {
27
- onSelectColor: _propTypes["default"].func.isRequired,
28
- // hex value
29
- selectedColor: _propTypes["default"].string.isRequired
30
- };
40
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
41
+
42
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
43
+
31
44
  var PALETTE_HEIGHT = '8px';
32
45
  var ROWS = 22;
33
46
 
@@ -37,33 +50,60 @@ var StyledColorColumn = _styledComponents["default"].div(_templateObject2 || (_t
37
50
 
38
51
  var StyledColorBlock = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n flex-grow: 1;\n height: ", ";\n border-width: 1px;\n border-style: solid;\n"])), PALETTE_HEIGHT);
39
52
 
40
- var SingleColorPalette = function SingleColorPalette(_ref) {
41
- var selectedColor = _ref.selectedColor,
42
- onSelectColor = _ref.onSelectColor;
43
- return /*#__PURE__*/_react["default"].createElement(StyledColorPalette, {
44
- className: "single-color-palette"
45
- }, _colorPalette.Themes.map(function (theme, col) {
46
- return /*#__PURE__*/_react["default"].createElement(StyledColorColumn, {
47
- key: theme,
48
- className: "single-color-palette__column"
49
- }, (0, _d3Array.range)(1, ROWS + 1, 1).map(function (key, i) {
50
- return /*#__PURE__*/_react["default"].createElement(StyledColorBlock, {
51
- className: "single-color-palette__block",
52
- style: {
53
- backgroundColor: _colorPalette.ColorsByTheme[theme][key],
54
- borderColor: selectedColor === _colorPalette.ColorsByTheme[theme][key].toUpperCase() ? 'white' : _colorPalette.ColorsByTheme[theme][key]
55
- },
56
- key: "".concat(theme, "_").concat(key),
57
- selected: selectedColor === _colorPalette.ColorsByTheme[theme][key].toUpperCase(),
58
- onClick: function onClick(e) {
59
- return onSelectColor((0, _colorUtils.hexToRgb)(_colorPalette.ColorsByTheme[theme][key]), e);
60
- }
61
- });
62
- }));
63
- }));
64
- };
65
-
66
- SingleColorPalette.propTypes = propTypes;
67
- var _default = SingleColorPalette;
53
+ SingleColorPaletteFactory.deps = [];
54
+
55
+ function SingleColorPaletteFactory() {
56
+ var SingleColorPalette = /*#__PURE__*/function (_Component) {
57
+ (0, _inherits2["default"])(SingleColorPalette, _Component);
58
+
59
+ var _super = _createSuper(SingleColorPalette);
60
+
61
+ function SingleColorPalette() {
62
+ (0, _classCallCheck2["default"])(this, SingleColorPalette);
63
+ return _super.apply(this, arguments);
64
+ }
65
+
66
+ (0, _createClass2["default"])(SingleColorPalette, [{
67
+ key: "render",
68
+ value: function render() {
69
+ var _this$props = this.props,
70
+ selectedColor = _this$props.selectedColor,
71
+ onSelectColor = _this$props.onSelectColor;
72
+ return /*#__PURE__*/_react["default"].createElement(StyledColorPalette, {
73
+ className: "single-color-palette"
74
+ }, _colorPalette.Themes.map(function (theme, col) {
75
+ return /*#__PURE__*/_react["default"].createElement(StyledColorColumn, {
76
+ key: theme,
77
+ className: "single-color-palette__column"
78
+ }, (0, _d3Array.range)(1, ROWS + 1, 1).map(function (key, i) {
79
+ return /*#__PURE__*/_react["default"].createElement(StyledColorBlock, {
80
+ className: "single-color-palette__block",
81
+ style: {
82
+ backgroundColor: _colorPalette.ColorsByTheme[theme][key],
83
+ borderColor: selectedColor === _colorPalette.ColorsByTheme[theme][key].toUpperCase() ? 'white' : _colorPalette.ColorsByTheme[theme][key]
84
+ },
85
+ key: "".concat(theme, "_").concat(key),
86
+ selected: selectedColor === _colorPalette.ColorsByTheme[theme][key].toUpperCase(),
87
+ onClick: function onClick(e) {
88
+ return onSelectColor((0, _colorUtils.hexToRgb)(_colorPalette.ColorsByTheme[theme][key]), e);
89
+ }
90
+ });
91
+ }));
92
+ }));
93
+ }
94
+ }]);
95
+ return SingleColorPalette;
96
+ }(_react.Component);
97
+
98
+ (0, _defineProperty2["default"])(SingleColorPalette, "propTypes", {
99
+ onSelectColor: _propTypes["default"].func.isRequired,
100
+ // hex value
101
+ selectedColor: _propTypes["default"].string.isRequired
102
+ });
103
+ return SingleColorPalette;
104
+ } // SingleColorPalette.propTypes = propTypes;
105
+
106
+
107
+ var _default = SingleColorPaletteFactory;
68
108
  exports["default"] = _default;
69
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvc2luZ2xlLWNvbG9yLXBhbGV0dGUuanMiXSwibmFtZXMiOlsicHJvcFR5cGVzIiwib25TZWxlY3RDb2xvciIsIlByb3BUeXBlcyIsImZ1bmMiLCJpc1JlcXVpcmVkIiwic2VsZWN0ZWRDb2xvciIsInN0cmluZyIsIlBBTEVUVEVfSEVJR0hUIiwiUk9XUyIsIlN0eWxlZENvbG9yUGFsZXR0ZSIsInN0eWxlZCIsImRpdiIsIlN0eWxlZENvbG9yQ29sdW1uIiwiU3R5bGVkQ29sb3JCbG9jayIsIlNpbmdsZUNvbG9yUGFsZXR0ZSIsIlRoZW1lcyIsIm1hcCIsInRoZW1lIiwiY29sIiwia2V5IiwiaSIsImJhY2tncm91bmRDb2xvciIsIkNvbG9yc0J5VGhlbWUiLCJib3JkZXJDb2xvciIsInRvVXBwZXJDYXNlIiwiZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7Ozs7QUFFQSxJQUFNQSxTQUFTLEdBQUc7QUFDaEJDLEVBQUFBLGFBQWEsRUFBRUMsc0JBQVVDLElBQVYsQ0FBZUMsVUFEZDtBQUVoQjtBQUNBQyxFQUFBQSxhQUFhLEVBQUVILHNCQUFVSSxNQUFWLENBQWlCRjtBQUhoQixDQUFsQjtBQU1BLElBQU1HLGNBQWMsR0FBRyxLQUF2QjtBQUNBLElBQU1DLElBQUksR0FBRyxFQUFiOztBQUVBLElBQU1DLGtCQUFrQixHQUFHQyw2QkFBT0MsR0FBVixnT0FBeEI7O0FBV0EsSUFBTUMsaUJBQWlCLEdBQUdGLDZCQUFPQyxHQUFWLDJMQUF2Qjs7QUFPQSxJQUFNRSxnQkFBZ0IsR0FBR0gsNkJBQU9DLEdBQVYsMktBRVZKLGNBRlUsQ0FBdEI7O0FBT0EsSUFBTU8sa0JBQWtCLEdBQUcsU0FBckJBLGtCQUFxQjtBQUFBLE1BQUVULGFBQUYsUUFBRUEsYUFBRjtBQUFBLE1BQWlCSixhQUFqQixRQUFpQkEsYUFBakI7QUFBQSxzQkFDekIsZ0NBQUMsa0JBQUQ7QUFBb0IsSUFBQSxTQUFTLEVBQUM7QUFBOUIsS0FDR2MscUJBQU9DLEdBQVAsQ0FBVyxVQUFDQyxLQUFELEVBQVFDLEdBQVI7QUFBQSx3QkFDVixnQ0FBQyxpQkFBRDtBQUFtQixNQUFBLEdBQUcsRUFBRUQsS0FBeEI7QUFBK0IsTUFBQSxTQUFTLEVBQUM7QUFBekMsT0FDRyxvQkFBTSxDQUFOLEVBQVNULElBQUksR0FBRyxDQUFoQixFQUFtQixDQUFuQixFQUFzQlEsR0FBdEIsQ0FBMEIsVUFBQ0csR0FBRCxFQUFNQyxDQUFOO0FBQUEsMEJBQ3pCLGdDQUFDLGdCQUFEO0FBQ0UsUUFBQSxTQUFTLEVBQUMsNkJBRFo7QUFFRSxRQUFBLEtBQUssRUFBRTtBQUNMQyxVQUFBQSxlQUFlLEVBQUVDLDRCQUFjTCxLQUFkLEVBQXFCRSxHQUFyQixDQURaO0FBRUxJLFVBQUFBLFdBQVcsRUFDVGxCLGFBQWEsS0FBS2lCLDRCQUFjTCxLQUFkLEVBQXFCRSxHQUFyQixFQUEwQkssV0FBMUIsRUFBbEIsR0FDSSxPQURKLEdBRUlGLDRCQUFjTCxLQUFkLEVBQXFCRSxHQUFyQjtBQUxELFNBRlQ7QUFTRSxRQUFBLEdBQUcsWUFBS0YsS0FBTCxjQUFjRSxHQUFkLENBVEw7QUFVRSxRQUFBLFFBQVEsRUFBRWQsYUFBYSxLQUFLaUIsNEJBQWNMLEtBQWQsRUFBcUJFLEdBQXJCLEVBQTBCSyxXQUExQixFQVY5QjtBQVdFLFFBQUEsT0FBTyxFQUFFLGlCQUFBQyxDQUFDO0FBQUEsaUJBQUl4QixhQUFhLENBQUMsMEJBQVNxQiw0QkFBY0wsS0FBZCxFQUFxQkUsR0FBckIsQ0FBVCxDQUFELEVBQXNDTSxDQUF0QyxDQUFqQjtBQUFBO0FBWFosUUFEeUI7QUFBQSxLQUExQixDQURILENBRFU7QUFBQSxHQUFYLENBREgsQ0FEeUI7QUFBQSxDQUEzQjs7QUF3QkFYLGtCQUFrQixDQUFDZCxTQUFuQixHQUErQkEsU0FBL0I7ZUFFZWMsa0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7cmFuZ2V9IGZyb20gJ2QzLWFycmF5JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtoZXhUb1JnYn0gZnJvbSAndXRpbHMvY29sb3ItdXRpbHMnO1xuXG5pbXBvcnQge0NvbG9yc0J5VGhlbWUsIFRoZW1lc30gZnJvbSAnY29uc3RhbnRzL2NvbG9yLXBhbGV0dGUnO1xuXG5jb25zdCBwcm9wVHlwZXMgPSB7XG4gIG9uU2VsZWN0Q29sb3I6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIC8vIGhleCB2YWx1ZVxuICBzZWxlY3RlZENvbG9yOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWRcbn07XG5cbmNvbnN0IFBBTEVUVEVfSEVJR0hUID0gJzhweCc7XG5jb25zdCBST1dTID0gMjI7XG5cbmNvbnN0IFN0eWxlZENvbG9yUGFsZXR0ZSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMTJweDtcblxuICA6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuYDtcblxuY29uc3QgU3R5bGVkQ29sb3JDb2x1bW4gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWdyb3c6IDE7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFN0eWxlZENvbG9yQmxvY2sgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWdyb3c6IDE7XG4gIGhlaWdodDogJHtQQUxFVFRFX0hFSUdIVH07XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuYDtcblxuY29uc3QgU2luZ2xlQ29sb3JQYWxldHRlID0gKHtzZWxlY3RlZENvbG9yLCBvblNlbGVjdENvbG9yfSkgPT4gKFxuICA8U3R5bGVkQ29sb3JQYWxldHRlIGNsYXNzTmFtZT1cInNpbmdsZS1jb2xvci1wYWxldHRlXCI+XG4gICAge1RoZW1lcy5tYXAoKHRoZW1lLCBjb2wpID0+IChcbiAgICAgIDxTdHlsZWRDb2xvckNvbHVtbiBrZXk9e3RoZW1lfSBjbGFzc05hbWU9XCJzaW5nbGUtY29sb3ItcGFsZXR0ZV9fY29sdW1uXCI+XG4gICAgICAgIHtyYW5nZSgxLCBST1dTICsgMSwgMSkubWFwKChrZXksIGkpID0+IChcbiAgICAgICAgICA8U3R5bGVkQ29sb3JCbG9ja1xuICAgICAgICAgICAgY2xhc3NOYW1lPVwic2luZ2xlLWNvbG9yLXBhbGV0dGVfX2Jsb2NrXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogQ29sb3JzQnlUaGVtZVt0aGVtZV1ba2V5XSxcbiAgICAgICAgICAgICAgYm9yZGVyQ29sb3I6XG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRDb2xvciA9PT0gQ29sb3JzQnlUaGVtZVt0aGVtZV1ba2V5XS50b1VwcGVyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICA/ICd3aGl0ZSdcbiAgICAgICAgICAgICAgICAgIDogQ29sb3JzQnlUaGVtZVt0aGVtZV1ba2V5XVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIGtleT17YCR7dGhlbWV9XyR7a2V5fWB9XG4gICAgICAgICAgICBzZWxlY3RlZD17c2VsZWN0ZWRDb2xvciA9PT0gQ29sb3JzQnlUaGVtZVt0aGVtZV1ba2V5XS50b1VwcGVyQ2FzZSgpfVxuICAgICAgICAgICAgb25DbGljaz17ZSA9PiBvblNlbGVjdENvbG9yKGhleFRvUmdiKENvbG9yc0J5VGhlbWVbdGhlbWVdW2tleV0pLCBlKX1cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICAgIDwvU3R5bGVkQ29sb3JDb2x1bW4+XG4gICAgKSl9XG4gIDwvU3R5bGVkQ29sb3JQYWxldHRlPlxuKTtcblxuU2luZ2xlQ29sb3JQYWxldHRlLnByb3BUeXBlcyA9IHByb3BUeXBlcztcblxuZXhwb3J0IGRlZmF1bHQgU2luZ2xlQ29sb3JQYWxldHRlO1xuIl19
109
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvc2luZ2xlLWNvbG9yLXBhbGV0dGUuanMiXSwibmFtZXMiOlsiUEFMRVRURV9IRUlHSFQiLCJST1dTIiwiU3R5bGVkQ29sb3JQYWxldHRlIiwic3R5bGVkIiwiZGl2IiwiU3R5bGVkQ29sb3JDb2x1bW4iLCJTdHlsZWRDb2xvckJsb2NrIiwiU2luZ2xlQ29sb3JQYWxldHRlRmFjdG9yeSIsImRlcHMiLCJTaW5nbGVDb2xvclBhbGV0dGUiLCJwcm9wcyIsInNlbGVjdGVkQ29sb3IiLCJvblNlbGVjdENvbG9yIiwiVGhlbWVzIiwibWFwIiwidGhlbWUiLCJjb2wiLCJrZXkiLCJpIiwiYmFja2dyb3VuZENvbG9yIiwiQ29sb3JzQnlUaGVtZSIsImJvcmRlckNvbG9yIiwidG9VcHBlckNhc2UiLCJlIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwiZnVuYyIsImlzUmVxdWlyZWQiLCJzdHJpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7Ozs7Ozs7O0FBRUEsSUFBTUEsY0FBYyxHQUFHLEtBQXZCO0FBQ0EsSUFBTUMsSUFBSSxHQUFHLEVBQWI7O0FBRUEsSUFBTUMsa0JBQWtCLEdBQUdDLDZCQUFPQyxHQUFWLGdPQUF4Qjs7QUFXQSxJQUFNQyxpQkFBaUIsR0FBR0YsNkJBQU9DLEdBQVYsMkxBQXZCOztBQU9BLElBQU1FLGdCQUFnQixHQUFHSCw2QkFBT0MsR0FBViwyS0FFVkosY0FGVSxDQUF0Qjs7QUFNQU8seUJBQXlCLENBQUNDLElBQTFCLEdBQWlDLEVBQWpDOztBQUVBLFNBQVNELHlCQUFULEdBQXFDO0FBQUEsTUFDN0JFLGtCQUQ2QjtBQUFBOztBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBOztBQUFBO0FBQUE7QUFBQSxhQVFqQyxrQkFBUztBQUFBLDBCQUNnQyxLQUFLQyxLQURyQztBQUFBLFlBQ0FDLGFBREEsZUFDQUEsYUFEQTtBQUFBLFlBQ2VDLGFBRGYsZUFDZUEsYUFEZjtBQUVQLDRCQUNFLGdDQUFDLGtCQUFEO0FBQW9CLFVBQUEsU0FBUyxFQUFDO0FBQTlCLFdBQ0dDLHFCQUFPQyxHQUFQLENBQVcsVUFBQ0MsS0FBRCxFQUFRQyxHQUFSO0FBQUEsOEJBQ1YsZ0NBQUMsaUJBQUQ7QUFBbUIsWUFBQSxHQUFHLEVBQUVELEtBQXhCO0FBQStCLFlBQUEsU0FBUyxFQUFDO0FBQXpDLGFBQ0csb0JBQU0sQ0FBTixFQUFTZCxJQUFJLEdBQUcsQ0FBaEIsRUFBbUIsQ0FBbkIsRUFBc0JhLEdBQXRCLENBQTBCLFVBQUNHLEdBQUQsRUFBTUMsQ0FBTjtBQUFBLGdDQUN6QixnQ0FBQyxnQkFBRDtBQUNFLGNBQUEsU0FBUyxFQUFDLDZCQURaO0FBRUUsY0FBQSxLQUFLLEVBQUU7QUFDTEMsZ0JBQUFBLGVBQWUsRUFBRUMsNEJBQWNMLEtBQWQsRUFBcUJFLEdBQXJCLENBRFo7QUFFTEksZ0JBQUFBLFdBQVcsRUFDVFYsYUFBYSxLQUFLUyw0QkFBY0wsS0FBZCxFQUFxQkUsR0FBckIsRUFBMEJLLFdBQTFCLEVBQWxCLEdBQ0ksT0FESixHQUVJRiw0QkFBY0wsS0FBZCxFQUFxQkUsR0FBckI7QUFMRCxlQUZUO0FBU0UsY0FBQSxHQUFHLFlBQUtGLEtBQUwsY0FBY0UsR0FBZCxDQVRMO0FBVUUsY0FBQSxRQUFRLEVBQUVOLGFBQWEsS0FBS1MsNEJBQWNMLEtBQWQsRUFBcUJFLEdBQXJCLEVBQTBCSyxXQUExQixFQVY5QjtBQVdFLGNBQUEsT0FBTyxFQUFFLGlCQUFBQyxDQUFDO0FBQUEsdUJBQUlYLGFBQWEsQ0FBQywwQkFBU1EsNEJBQWNMLEtBQWQsRUFBcUJFLEdBQXJCLENBQVQsQ0FBRCxFQUFzQ00sQ0FBdEMsQ0FBakI7QUFBQTtBQVhaLGNBRHlCO0FBQUEsV0FBMUIsQ0FESCxDQURVO0FBQUEsU0FBWCxDQURILENBREY7QUF1QkQ7QUFqQ2dDO0FBQUE7QUFBQSxJQUNGQyxnQkFERTs7QUFBQSxtQ0FDN0JmLGtCQUQ2QixlQUVkO0FBQ2pCRyxJQUFBQSxhQUFhLEVBQUVhLHNCQUFVQyxJQUFWLENBQWVDLFVBRGI7QUFFakI7QUFDQWhCLElBQUFBLGFBQWEsRUFBRWMsc0JBQVVHLE1BQVYsQ0FBaUJEO0FBSGYsR0FGYztBQW1DbkMsU0FBT2xCLGtCQUFQO0FBQ0QsQyxDQUVEOzs7ZUFFZUYseUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnR9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQge3JhbmdlfSBmcm9tICdkMy1hcnJheSc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7aGV4VG9SZ2J9IGZyb20gJ3V0aWxzL2NvbG9yLXV0aWxzJztcblxuaW1wb3J0IHtDb2xvcnNCeVRoZW1lLCBUaGVtZXN9IGZyb20gJ2NvbnN0YW50cy9jb2xvci1wYWxldHRlJztcblxuY29uc3QgUEFMRVRURV9IRUlHSFQgPSAnOHB4JztcbmNvbnN0IFJPV1MgPSAyMjtcblxuY29uc3QgU3R5bGVkQ29sb3JQYWxldHRlID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxMnB4O1xuXG4gIDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRDb2xvckNvbHVtbiA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuYDtcblxuY29uc3QgU3R5bGVkQ29sb3JCbG9jayA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtZ3JvdzogMTtcbiAgaGVpZ2h0OiAke1BBTEVUVEVfSEVJR0hUfTtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG5gO1xuU2luZ2xlQ29sb3JQYWxldHRlRmFjdG9yeS5kZXBzID0gW107XG5cbmZ1bmN0aW9uIFNpbmdsZUNvbG9yUGFsZXR0ZUZhY3RvcnkoKSB7XG4gIGNsYXNzIFNpbmdsZUNvbG9yUGFsZXR0ZSBleHRlbmRzIENvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIG9uU2VsZWN0Q29sb3I6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICAvLyBoZXggdmFsdWVcbiAgICAgIHNlbGVjdGVkQ29sb3I6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZFxuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7c2VsZWN0ZWRDb2xvciwgb25TZWxlY3RDb2xvcn0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPFN0eWxlZENvbG9yUGFsZXR0ZSBjbGFzc05hbWU9XCJzaW5nbGUtY29sb3ItcGFsZXR0ZVwiPlxuICAgICAgICAgIHtUaGVtZXMubWFwKCh0aGVtZSwgY29sKSA9PiAoXG4gICAgICAgICAgICA8U3R5bGVkQ29sb3JDb2x1bW4ga2V5PXt0aGVtZX0gY2xhc3NOYW1lPVwic2luZ2xlLWNvbG9yLXBhbGV0dGVfX2NvbHVtblwiPlxuICAgICAgICAgICAgICB7cmFuZ2UoMSwgUk9XUyArIDEsIDEpLm1hcCgoa2V5LCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgPFN0eWxlZENvbG9yQmxvY2tcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInNpbmdsZS1jb2xvci1wYWxldHRlX19ibG9ja1wiXG4gICAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IENvbG9yc0J5VGhlbWVbdGhlbWVdW2tleV0sXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlckNvbG9yOlxuICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkQ29sb3IgPT09IENvbG9yc0J5VGhlbWVbdGhlbWVdW2tleV0udG9VcHBlckNhc2UoKVxuICAgICAgICAgICAgICAgICAgICAgICAgPyAnd2hpdGUnXG4gICAgICAgICAgICAgICAgICAgICAgICA6IENvbG9yc0J5VGhlbWVbdGhlbWVdW2tleV1cbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBrZXk9e2Ake3RoZW1lfV8ke2tleX1gfVxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkQ29sb3IgPT09IENvbG9yc0J5VGhlbWVbdGhlbWVdW2tleV0udG9VcHBlckNhc2UoKX1cbiAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2UgPT4gb25TZWxlY3RDb2xvcihoZXhUb1JnYihDb2xvcnNCeVRoZW1lW3RoZW1lXVtrZXldKSwgZSl9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L1N0eWxlZENvbG9yQ29sdW1uPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1N0eWxlZENvbG9yUGFsZXR0ZT5cbiAgICAgICk7XG4gICAgfVxuICB9XG4gIHJldHVybiBTaW5nbGVDb2xvclBhbGV0dGU7XG59XG5cbi8vIFNpbmdsZUNvbG9yUGFsZXR0ZS5wcm9wVHlwZXMgPSBwcm9wVHlwZXM7XG5cbmV4cG9ydCBkZWZhdWx0IFNpbmdsZUNvbG9yUGFsZXR0ZUZhY3Rvcnk7XG4iXX0=
@@ -33,8 +33,6 @@ var _styledComponents = require("../../common/styled-components");
33
33
 
34
34
  var _icons = require("../../common/icons");
35
35
 
36
- var _colorSelector = _interopRequireDefault(require("./color-selector"));
37
-
38
36
  var _itemSelector = _interopRequireDefault(require("../../common/item-selector/item-selector"));
39
37
 
40
38
  var _layerConfigGroup = _interopRequireWildcard(require("./layer-config-group"));
@@ -45,13 +43,15 @@ var _layerFactory = require("../../../layers/layer-factory");
45
43
 
46
44
  var _fieldSelector = _interopRequireDefault(require("../../common/field-selector"));
47
45
 
46
+ var _colorSelector = _interopRequireDefault(require("./color-selector"));
47
+
48
48
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
49
49
 
50
50
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
51
51
 
52
- TextLabelPanelFactory.deps = [_rangeSlider["default"], _layerConfigGroup["default"], _fieldSelector["default"]];
52
+ TextLabelPanelFactory.deps = [_rangeSlider["default"], _layerConfigGroup["default"], _fieldSelector["default"], _colorSelector["default"]];
53
53
 
54
- function TextLabelPanelFactory(RangeSlider, LayerConfigGroup, FieldSelector) {
54
+ function TextLabelPanelFactory(RangeSlider, LayerConfigGroup, FieldSelector, ColorSelector) {
55
55
  var TextLabelPanel = /*#__PURE__*/function (_Component) {
56
56
  (0, _inherits2["default"])(TextLabelPanel, _Component);
57
57
 
@@ -112,7 +112,7 @@ function TextLabelPanelFactory(RangeSlider, LayerConfigGroup, FieldSelector) {
112
112
  }
113
113
  }))), /*#__PURE__*/_react["default"].createElement(_styledComponents.SidePanelSection, null, /*#__PURE__*/_react["default"].createElement(_styledComponents.PanelLabel, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
114
114
  id: "panel.text.fontColor"
115
- })), /*#__PURE__*/_react["default"].createElement(_colorSelector["default"], {
115
+ })), /*#__PURE__*/_react["default"].createElement(ColorSelector, {
116
116
  colorSets: [{
117
117
  selectedColor: tl.color,
118
118
  setColor: function setColor(v) {
@@ -165,4 +165,4 @@ function TextLabelPanelFactory(RangeSlider, LayerConfigGroup, FieldSelector) {
165
165
 
166
166
  var _default = TextLabelPanelFactory;
167
167
  exports["default"] = _default;
168
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvdGV4dC1sYWJlbC1wYW5lbC5qcyJdLCJuYW1lcyI6WyJUZXh0TGFiZWxQYW5lbEZhY3RvcnkiLCJkZXBzIiwiUmFuZ2VTbGlkZXJGYWN0b3J5IiwiTGF5ZXJDb25maWdHcm91cEZhY3RvcnkiLCJGaWVsZFNlbGVjdG9yRmFjdG9yeSIsIlJhbmdlU2xpZGVyIiwiTGF5ZXJDb25maWdHcm91cCIsIkZpZWxkU2VsZWN0b3IiLCJUZXh0TGFiZWxQYW5lbCIsInByb3BzIiwidXBkYXRlTGF5ZXJUZXh0TGFiZWwiLCJ0ZXh0TGFiZWwiLCJmaWVsZHMiLCJBZGRCdXR0b24iLCJjdXJyZW50RmllbGRzIiwibWFwIiwidGwiLCJmaWVsZCIsIm5hbWUiLCJmaWx0ZXIiLCJkIiwic2VsZWN0ZWQiLCJpZHgiLCJsYWJlbElkIiwidiIsIkxBWUVSX1RFWFRfQ09ORklHUyIsImZvbnRTaXplIiwic2l6ZSIsInNlbGVjdGVkQ29sb3IiLCJjb2xvciIsInNldENvbG9yIiwidGV4dEFuY2hvciIsImFuY2hvciIsInZhbCIsInRleHRBbGlnbm1lbnQiLCJhbGlnbm1lbnQiLCJsZW5ndGgiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwib2JqZWN0IiwiZnVuYyIsImlzUmVxdWlyZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBT0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBRUE7O0FBQ0E7Ozs7OztBQUVBQSxxQkFBcUIsQ0FBQ0MsSUFBdEIsR0FBNkIsQ0FBQ0MsdUJBQUQsRUFBcUJDLDRCQUFyQixFQUE4Q0MseUJBQTlDLENBQTdCOztBQUNBLFNBQVNKLHFCQUFULENBQStCSyxXQUEvQixFQUE0Q0MsZ0JBQTVDLEVBQThEQyxhQUE5RCxFQUE2RTtBQUFBLE1BQ3JFQyxjQURxRTtBQUFBOztB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b0ZEO0FBeEd3RTtBQUFBO0FBQUEsSUFDOUNDLGdCQUQ4Qzs7QUFBQSxtQ0FDckU3QixjQURxRSxlQUV0RDtBQUNqQkksSUFBQUEsTUFBTSxFQUFFMEIsc0JBQVVDLE9BQVYsQ0FBa0JELHNCQUFVRSxNQUE1QixDQURTO0FBRWpCN0IsSUFBQUEsU0FBUyxFQUFFMkIsc0JBQVVDLE9BQVYsQ0FBa0JELHNCQUFVRSxNQUE1QixDQUZNO0FBR2pCOUIsSUFBQUEsb0JBQW9CLEVBQUU0QixzQkFBVUcsSUFBVixDQUFlQztBQUhwQixHQUZzRDtBQUFBLG1DQUNyRWxDLGNBRHFFLGtCQVFuRDtBQUNwQkssSUFBQUEsU0FBUyxFQUFFLG1CQUFBSixLQUFLO0FBQUEsMEJBQ2QsZ0NBQUMsd0JBQUQsZ0NBQVlBLEtBQVo7QUFBbUIsUUFBQSxJQUFJO0FBQXZCLHVCQUNFLGdDQUFDLFVBQUQ7QUFBSyxRQUFBLE1BQU0sRUFBQztBQUFaLFFBREYsZUFFRSxnQ0FBQyw4QkFBRDtBQUFrQixRQUFBLEVBQUUsRUFBQztBQUFyQixRQUZGLENBRGM7QUFBQTtBQURJLEdBUm1EO0FBMkczRSxTQUFPRCxjQUFQO0FBQ0Q7O2VBRWNSLHFCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHtGb3JtYXR0ZWRNZXNzYWdlfSBmcm9tICdsb2NhbGl6YXRpb24nO1xuXG5pbXBvcnQge1xuICBCdXR0b24sXG4gIFBhbmVsTGFiZWwsXG4gIFNCRmxleGJveEl0ZW0sXG4gIFNpZGVQYW5lbFNlY3Rpb24sXG4gIFNwYWNlQmV0d2VlbkZsZXhib3hcbn0gZnJvbSAnY29tcG9uZW50cy9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtBZGR9IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2ljb25zJztcbmltcG9ydCBDb2xvclNlbGVjdG9yIGZyb20gJy4vY29sb3Itc2VsZWN0b3InO1xuaW1wb3J0IEl0ZW1TZWxlY3RvciBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pdGVtLXNlbGVjdG9yL2l0ZW0tc2VsZWN0b3InO1xuaW1wb3J0IExheWVyQ29uZmlnR3JvdXBGYWN0b3J5LCB7XG4gIENvbmZpZ0dyb3VwQ29sbGFwc2libGVDb250ZW50LFxuICBDb25maWdHcm91cENvbGxhcHNpYmxlSGVhZGVyXG59IGZyb20gJy4vbGF5ZXItY29uZmlnLWdyb3VwJztcbmltcG9ydCBSYW5nZVNsaWRlckZhY3RvcnkgZnJvbSAnY29tcG9uZW50cy9jb21tb24vcmFuZ2Utc2xpZGVyJztcblxuaW1wb3J0IHtMQVlFUl9URVhUX0NPTkZJR1N9IGZyb20gJ2xheWVycy9sYXllci1mYWN0b3J5JztcbmltcG9ydCBGaWVsZFNlbGVjdG9yRmFjdG9yeSBmcm9tICcuLi8uLi9jb21tb24vZmllbGQtc2VsZWN0b3InO1xuXG5UZXh0TGFiZWxQYW5lbEZhY3RvcnkuZGVwcyA9IFtSYW5nZVNsaWRlckZhY3RvcnksIExheWVyQ29uZmlnR3JvdXBGYWN0b3J5LCBGaWVsZFNlbGVjdG9yRmFjdG9yeV07XG5mdW5jdGlvbiBUZXh0TGFiZWxQYW5lbEZhY3RvcnkoUmFuZ2VTbGlkZXIsIExheWVyQ29uZmlnR3JvdXAsIEZpZWxkU2VsZWN0b3IpIHtcbiAgY2xhc3MgVGV4dExhYmVsUGFuZWwgZXh0ZW5kcyBDb21wb25lbnQge1xuICAgIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgICBmaWVsZHM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5vYmplY3QpLFxuICAgICAgdGV4dExhYmVsOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMub2JqZWN0KSxcbiAgICAgIHVwZGF0ZUxheWVyVGV4dExhYmVsOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICBBZGRCdXR0b246IHByb3BzID0+IChcbiAgICAgICAgPEJ1dHRvbiB7Li4ucHJvcHN9IGxpbms+XG4gICAgICAgICAgPEFkZCBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cInBhbmVsLnRleHQuYWRkTW9yZUxhYmVsXCIgLz5cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICApXG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHt1cGRhdGVMYXllclRleHRMYWJlbCwgdGV4dExhYmVsLCBmaWVsZHMsIEFkZEJ1dHRvbn0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgY3VycmVudEZpZWxkcyA9IHRleHRMYWJlbC5tYXAodGwgPT4gdGwuZmllbGQgJiYgdGwuZmllbGQubmFtZSkuZmlsdGVyKGQgPT4gZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8TGF5ZXJDb25maWdHcm91cCBsYWJlbD17J3BhbmVsLnRleHQubGFiZWwnfSBjb2xsYXBzaWJsZT5cbiAgICAgICAgICA8Q29uZmlnR3JvdXBDb2xsYXBzaWJsZUhlYWRlcj5cbiAgICAgICAgICAgIDxGaWVsZFNlbGVjdG9yXG4gICAgICAgICAgICAgIGZpZWxkcz17ZmllbGRzfVxuICAgICAgICAgICAgICB2YWx1ZT17Y3VycmVudEZpZWxkc31cbiAgICAgICAgICAgICAgb25TZWxlY3Q9e3NlbGVjdGVkID0+IHVwZGF0ZUxheWVyVGV4dExhYmVsKCdhbGwnLCAnZmllbGRzJywgc2VsZWN0ZWQpfVxuICAgICAgICAgICAgICBtdWx0aVNlbGVjdFxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L0NvbmZpZ0dyb3VwQ29sbGFwc2libGVIZWFkZXI+XG4gICAgICAgICAgPENvbmZpZ0dyb3VwQ29sbGFwc2libGVDb250ZW50PlxuICAgICAgICAgICAge3RleHRMYWJlbC5tYXAoKHRsLCBpZHgpID0+IChcbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGtleT17dGwuZmllbGQgPyB0bC5maWVsZC5uYW1lIDogYG51bGwtJHtpZHh9YH1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzaWRlLXBhbmVsLXNlY3Rpb24tZ3JvdXBcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J3BhbmVsLnRleHQubGFiZWxXaXRoSWQnfSB2YWx1ZXM9e3tsYWJlbElkOiBpZHggKyAxfX0gLz5cbiAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgPFNpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8RmllbGRTZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICBmaWVsZHM9e2ZpZWxkc31cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9eyh0bC5maWVsZCAmJiB0bC5maWVsZC5uYW1lKSB8fCAncGxhY2Vob2xkZXIuc2VsZWN0RmllbGQnfVxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17J3BsYWNlaG9sZGVyLmVtcHR5J31cbiAgICAgICAgICAgICAgICAgICAgb25TZWxlY3Q9e3YgPT4gdXBkYXRlTGF5ZXJUZXh0TGFiZWwoaWR4LCAnZmllbGQnLCB2KX1cbiAgICAgICAgICAgICAgICAgICAgZXJhc2FibGVcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9TaWRlUGFuZWxTZWN0aW9uPlxuICAgICAgICAgICAgICAgIDxTaWRlUGFuZWxTZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwicGFuZWwudGV4dC5mb250U2l6ZVwiIC8+XG4gICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8UmFuZ2VTbGlkZXJcbiAgICAgICAgICAgICAgICAgICAgey4uLkxBWUVSX1RFWFRfQ09ORklHUy5mb250U2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWUxPXt0bC5zaXplfVxuICAgICAgICAgICAgICAgICAgICBpc1JhbmdlPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3YgPT4gdXBkYXRlTGF5ZXJUZXh0TGFiZWwoaWR4LCAnc2l6ZScsIHZbMV0pfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgPFNpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8UGFuZWxMYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJwYW5lbC50ZXh0LmZvbnRDb2xvclwiIC8+XG4gICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8Q29sb3JTZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICBjb2xvclNldHM9e1tcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZENvbG9yOiB0bC5jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldENvbG9yOiB2ID0+IHVwZGF0ZUxheWVyVGV4dExhYmVsKGlkeCwgJ2NvbG9yJywgdilcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF19XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvU2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8U2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICAgIDxTcGFjZUJldHdlZW5GbGV4Ym94PlxuICAgICAgICAgICAgICAgICAgICA8U0JGbGV4Ym94SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICA8UGFuZWxMYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwicGFuZWwudGV4dC50ZXh0QW5jaG9yXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICAgICAgey4uLkxBWUVSX1RFWFRfQ09ORklHUy50ZXh0QW5jaG9yfVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dGwuYW5jaG9yfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3ZhbCA9PiB1cGRhdGVMYXllclRleHRMYWJlbChpZHgsICdhbmNob3InLCB2YWwpfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0JGbGV4Ym94SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgPFNCRmxleGJveEl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cInBhbmVsLnRleHQuYWxpZ25tZW50XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICAgICAgey4uLkxBWUVSX1RFWFRfQ09ORklHUy50ZXh0QWxpZ25tZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dGwuYWxpZ25tZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3ZhbCA9PiB1cGRhdGVMYXllclRleHRMYWJlbChpZHgsICdhbGlnbm1lbnQnLCB2YWwpfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0JGbGV4Ym94SXRlbT5cbiAgICAgICAgICAgICAgICAgIDwvU3BhY2VCZXR3ZWVuRmxleGJveD5cbiAgICAgICAgICAgICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8U2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgICAgICAgICAgPEFkZEJ1dHRvbiBvbkNsaWNrPXt2YWwgPT4gdXBkYXRlTGF5ZXJUZXh0TGFiZWwodGV4dExhYmVsLmxlbmd0aCl9IC8+XG4gICAgICAgICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgPC9Db25maWdHcm91cENvbGxhcHNpYmxlQ29udGVudD5cbiAgICAgICAgPC9MYXllckNvbmZpZ0dyb3VwPlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gVGV4dExhYmVsUGFuZWw7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRleHRMYWJlbFBhbmVsRmFjdG9yeTtcbiJdfQ==
168
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvdGV4dC1sYWJlbC1wYW5lbC5qcyJdLCJuYW1lcyI6WyJUZXh0TGFiZWxQYW5lbEZhY3RvcnkiLCJkZXBzIiwiUmFuZ2VTbGlkZXJGYWN0b3J5IiwiTGF5ZXJDb25maWdHcm91cEZhY3RvcnkiLCJGaWVsZFNlbGVjdG9yRmFjdG9yeSIsIkNvbG9yU2VsZWN0b3JGYWN0b3J5IiwiUmFuZ2VTbGlkZXIiLCJMYXllckNvbmZpZ0dyb3VwIiwiRmllbGRTZWxlY3RvciIsIkNvbG9yU2VsZWN0b3IiLCJUZXh0TGFiZWxQYW5lbCIsInByb3BzIiwidXBkYXRlTGF5ZXJUZXh0TGFiZWwiLCJ0ZXh0TGFiZWwiLCJmaWVsZHMiLCJBZGRCdXR0b24iLCJjdXJyZW50RmllbGRzIiwibWFwIiwidGwiLCJmaWVsZCIsIm5hbWUiLCJmaWx0ZXIiLCJkIiwic2VsZWN0ZWQiLCJpZHgiLCJsYWJlbElkIiwidiIsIkxBWUVSX1RFWFRfQ09ORklHUyIsImZvbnRTaXplIiwic2l6ZSIsInNlbGVjdGVkQ29sb3IiLCJjb2xvciIsInNldENvbG9yIiwidGV4dEFuY2hvciIsImFuY2hvciIsInZhbCIsInRleHRBbGlnbm1lbnQiLCJhbGlnbm1lbnQiLCJsZW5ndGgiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwib2JqZWN0IiwiZnVuYyIsImlzUmVxdWlyZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBT0E7O0FBQ0E7O0FBQ0E7O0FBSUE7O0FBRUE7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBQSxxQkFBcUIsQ0FBQ0MsSUFBdEIsR0FBNkIsQ0FDM0JDLHVCQUQyQixFQUUzQkMsNEJBRjJCLEVBRzNCQyx5QkFIMkIsRUFJM0JDLHlCQUoyQixDQUE3Qjs7QUFNQSxTQUFTTCxxQkFBVCxDQUErQk0sV0FBL0IsRUFB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QW9CLENBQUNDLFNBQVMsQ0FBQ3lCLE1BQVgsQ0FBeEI7QUFBQTtBQUF2QixVQURGLENBcEVGLENBVEYsQ0FERjtBQW9GRDtBQXhHdUY7QUFBQTtBQUFBLElBQzdEQyxnQkFENkQ7O0FBQUEsbUNBQ3BGN0IsY0FEb0YsZUFFckU7QUFDakJJLElBQUFBLE1BQU0sRUFBRTBCLHNCQUFVQyxPQUFWLENBQWtCRCxzQkFBVUUsTUFBNUIsQ0FEUztBQUVqQjdCLElBQUFBLFNBQVMsRUFBRTJCLHNCQUFVQyxPQUFWLENBQWtCRCxzQkFBVUUsTUFBNUIsQ0FGTTtBQUdqQjlCLElBQUFBLG9CQUFvQixFQUFFNEIsc0JBQVVHLElBQVYsQ0FBZUM7QUFIcEIsR0FGcUU7QUFBQSxtQ0FDcEZsQyxjQURvRixrQkFRbEU7QUFDcEJLLElBQUFBLFNBQVMsRUFBRSxtQkFBQUosS0FBSztBQUFBLDBCQUNkLGdDQUFDLHdCQUFELGdDQUFZQSxLQUFaO0FBQW1CLFFBQUEsSUFBSTtBQUF2Qix1QkFDRSxnQ0FBQyxVQUFEO0FBQUssUUFBQSxNQUFNLEVBQUM7QUFBWixRQURGLGVBRUUsZ0NBQUMsOEJBQUQ7QUFBa0IsUUFBQSxFQUFFLEVBQUM7QUFBckIsUUFGRixDQURjO0FBQUE7QUFESSxHQVJrRTtBQTJHMUYsU0FBT0QsY0FBUDtBQUNEOztlQUVjVixxQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnbG9jYWxpemF0aW9uJztcblxuaW1wb3J0IHtcbiAgQnV0dG9uLFxuICBQYW5lbExhYmVsLFxuICBTQkZsZXhib3hJdGVtLFxuICBTaWRlUGFuZWxTZWN0aW9uLFxuICBTcGFjZUJldHdlZW5GbGV4Ym94XG59IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7QWRkfSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgSXRlbVNlbGVjdG9yIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2l0ZW0tc2VsZWN0b3IvaXRlbS1zZWxlY3Rvcic7XG5pbXBvcnQgTGF5ZXJDb25maWdHcm91cEZhY3RvcnksIHtcbiAgQ29uZmlnR3JvdXBDb2xsYXBzaWJsZUNvbnRlbnQsXG4gIENvbmZpZ0dyb3VwQ29sbGFwc2libGVIZWFkZXJcbn0gZnJvbSAnLi9sYXllci1jb25maWctZ3JvdXAnO1xuaW1wb3J0IFJhbmdlU2xpZGVyRmFjdG9yeSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9yYW5nZS1zbGlkZXInO1xuXG5pbXBvcnQge0xBWUVSX1RFWFRfQ09ORklHU30gZnJvbSAnbGF5ZXJzL2xheWVyLWZhY3RvcnknO1xuaW1wb3J0IEZpZWxkU2VsZWN0b3JGYWN0b3J5IGZyb20gJy4uLy4uL2NvbW1vbi9maWVsZC1zZWxlY3Rvcic7XG5pbXBvcnQgQ29sb3JTZWxlY3RvckZhY3RvcnkgZnJvbSAnLi9jb2xvci1zZWxlY3Rvcic7XG5cblRleHRMYWJlbFBhbmVsRmFjdG9yeS5kZXBzID0gW1xuICBSYW5nZVNsaWRlckZhY3RvcnksXG4gIExheWVyQ29uZmlnR3JvdXBGYWN0b3J5LFxuICBGaWVsZFNlbGVjdG9yRmFjdG9yeSxcbiAgQ29sb3JTZWxlY3RvckZhY3Rvcnlcbl07XG5mdW5jdGlvbiBUZXh0TGFiZWxQYW5lbEZhY3RvcnkoUmFuZ2VTbGlkZXIsIExheWVyQ29uZmlnR3JvdXAsIEZpZWxkU2VsZWN0b3IsIENvbG9yU2VsZWN0b3IpIHtcbiAgY2xhc3MgVGV4dExhYmVsUGFuZWwgZXh0ZW5kcyBDb21wb25lbnQge1xuICAgIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgICBmaWVsZHM6IFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5vYmplY3QpLFxuICAgICAgdGV4dExhYmVsOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMub2JqZWN0KSxcbiAgICAgIHVwZGF0ZUxheWVyVGV4dExhYmVsOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICBBZGRCdXR0b246IHByb3BzID0+IChcbiAgICAgICAgPEJ1dHRvbiB7Li4ucHJvcHN9IGxpbms+XG4gICAgICAgICAgPEFkZCBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cInBhbmVsLnRleHQuYWRkTW9yZUxhYmVsXCIgLz5cbiAgICAgICAgPC9CdXR0b24+XG4gICAgICApXG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHt1cGRhdGVMYXllclRleHRMYWJlbCwgdGV4dExhYmVsLCBmaWVsZHMsIEFkZEJ1dHRvbn0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgY3VycmVudEZpZWxkcyA9IHRleHRMYWJlbC5tYXAodGwgPT4gdGwuZmllbGQgJiYgdGwuZmllbGQubmFtZSkuZmlsdGVyKGQgPT4gZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8TGF5ZXJDb25maWdHcm91cCBsYWJlbD17J3BhbmVsLnRleHQubGFiZWwnfSBjb2xsYXBzaWJsZT5cbiAgICAgICAgICA8Q29uZmlnR3JvdXBDb2xsYXBzaWJsZUhlYWRlcj5cbiAgICAgICAgICAgIDxGaWVsZFNlbGVjdG9yXG4gICAgICAgICAgICAgIGZpZWxkcz17ZmllbGRzfVxuICAgICAgICAgICAgICB2YWx1ZT17Y3VycmVudEZpZWxkc31cbiAgICAgICAgICAgICAgb25TZWxlY3Q9e3NlbGVjdGVkID0+IHVwZGF0ZUxheWVyVGV4dExhYmVsKCdhbGwnLCAnZmllbGRzJywgc2VsZWN0ZWQpfVxuICAgICAgICAgICAgICBtdWx0aVNlbGVjdFxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L0NvbmZpZ0dyb3VwQ29sbGFwc2libGVIZWFkZXI+XG4gICAgICAgICAgPENvbmZpZ0dyb3VwQ29sbGFwc2libGVDb250ZW50PlxuICAgICAgICAgICAge3RleHRMYWJlbC5tYXAoKHRsLCBpZHgpID0+IChcbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGtleT17dGwuZmllbGQgPyB0bC5maWVsZC5uYW1lIDogYG51bGwtJHtpZHh9YH1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzaWRlLXBhbmVsLXNlY3Rpb24tZ3JvdXBcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J3BhbmVsLnRleHQubGFiZWxXaXRoSWQnfSB2YWx1ZXM9e3tsYWJlbElkOiBpZHggKyAxfX0gLz5cbiAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgPFNpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8RmllbGRTZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICBmaWVsZHM9e2ZpZWxkc31cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9eyh0bC5maWVsZCAmJiB0bC5maWVsZC5uYW1lKSB8fCAncGxhY2Vob2xkZXIuc2VsZWN0RmllbGQnfVxuICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17J3BsYWNlaG9sZGVyLmVtcHR5J31cbiAgICAgICAgICAgICAgICAgICAgb25TZWxlY3Q9e3YgPT4gdXBkYXRlTGF5ZXJUZXh0TGFiZWwoaWR4LCAnZmllbGQnLCB2KX1cbiAgICAgICAgICAgICAgICAgICAgZXJhc2FibGVcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9TaWRlUGFuZWxTZWN0aW9uPlxuICAgICAgICAgICAgICAgIDxTaWRlUGFuZWxTZWN0aW9uPlxuICAgICAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwicGFuZWwudGV4dC5mb250U2l6ZVwiIC8+XG4gICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8UmFuZ2VTbGlkZXJcbiAgICAgICAgICAgICAgICAgICAgey4uLkxBWUVSX1RFWFRfQ09ORklHUy5mb250U2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWUxPXt0bC5zaXplfVxuICAgICAgICAgICAgICAgICAgICBpc1JhbmdlPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3YgPT4gdXBkYXRlTGF5ZXJUZXh0TGFiZWwoaWR4LCAnc2l6ZScsIHZbMV0pfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgPFNpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgICAgICA8UGFuZWxMYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJwYW5lbC50ZXh0LmZvbnRDb2xvclwiIC8+XG4gICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICA8Q29sb3JTZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICBjb2xvclNldHM9e1tcbiAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZENvbG9yOiB0bC5jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICAgIHNldENvbG9yOiB2ID0+IHVwZGF0ZUxheWVyVGV4dExhYmVsKGlkeCwgJ2NvbG9yJywgdilcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIF19XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvU2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICA8U2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgICAgICAgICAgICAgIDxTcGFjZUJldHdlZW5GbGV4Ym94PlxuICAgICAgICAgICAgICAgICAgICA8U0JGbGV4Ym94SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICA8UGFuZWxMYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPVwicGFuZWwudGV4dC50ZXh0QW5jaG9yXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICAgICAgey4uLkxBWUVSX1RFWFRfQ09ORklHUy50ZXh0QW5jaG9yfVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dGwuYW5jaG9yfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3ZhbCA9PiB1cGRhdGVMYXllclRleHRMYWJlbChpZHgsICdhbmNob3InLCB2YWwpfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0JGbGV4Ym94SXRlbT5cbiAgICAgICAgICAgICAgICAgICAgPFNCRmxleGJveEl0ZW0+XG4gICAgICAgICAgICAgICAgICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cInBhbmVsLnRleHQuYWxpZ25tZW50XCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgPEl0ZW1TZWxlY3RvclxuICAgICAgICAgICAgICAgICAgICAgICAgey4uLkxBWUVSX1RFWFRfQ09ORklHUy50ZXh0QWxpZ25tZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRJdGVtcz17dGwuYWxpZ25tZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3ZhbCA9PiB1cGRhdGVMYXllclRleHRMYWJlbChpZHgsICdhbGlnbm1lbnQnLCB2YWwpfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvU0JGbGV4Ym94SXRlbT5cbiAgICAgICAgICAgICAgICAgIDwvU3BhY2VCZXR3ZWVuRmxleGJveD5cbiAgICAgICAgICAgICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8U2lkZVBhbmVsU2VjdGlvbj5cbiAgICAgICAgICAgICAgPEFkZEJ1dHRvbiBvbkNsaWNrPXt2YWwgPT4gdXBkYXRlTGF5ZXJUZXh0TGFiZWwodGV4dExhYmVsLmxlbmd0aCl9IC8+XG4gICAgICAgICAgICA8L1NpZGVQYW5lbFNlY3Rpb24+XG4gICAgICAgICAgPC9Db25maWdHcm91cENvbGxhcHNpYmxlQ29udGVudD5cbiAgICAgICAgPC9MYXllckNvbmZpZ0dyb3VwPlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gVGV4dExhYmVsUGFuZWw7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRleHRMYWJlbFBhbmVsRmFjdG9yeTtcbiJdfQ==
@@ -134,7 +134,7 @@ var KEPLER_GL_NAME = 'kepler.gl'; // __PACKAGE_VERSION__ is automatically inject
134
134
  // an empty string which will allow us to retrieve the latest umd version
135
135
 
136
136
  exports.KEPLER_GL_NAME = KEPLER_GL_NAME;
137
- var KEPLER_GL_VERSION = "0.0.41";
137
+ var KEPLER_GL_VERSION = "0.0.42";
138
138
  exports.KEPLER_GL_VERSION = KEPLER_GL_VERSION;
139
139
  var KEPLER_GL_WEBSITE = 'http://kepler.gl/';
140
140
  exports.KEPLER_GL_WEBSITE = KEPLER_GL_WEBSITE;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@carto/kepler.gl",
3
3
  "author": "CARTO",
4
4
  "homepage": "https://github.com/CartoDB/carto-kepler#readme",
5
- "version": "0.0.41",
5
+ "version": "0.0.42",
6
6
  "description": "kepler.gl is a webgl based application to visualize large scale location data in the browser",
7
7
  "license": "MIT",
8
8
  "main": "dist/index.js",
@@ -23,7 +23,12 @@ import RangeSliderFactory from './common/range-slider';
23
23
  import VisConfigSliderFactory from './side-panel/layer-panel/vis-config-slider';
24
24
  import VisConfigSwitchFactory from './side-panel/layer-panel/vis-config-switch';
25
25
  import LayerConfigGroupFactory from './side-panel/layer-panel/layer-config-group';
26
- import {ChannelByValueSelectorFactory} from './side-panel/layer-panel/layer-configurator';
26
+ import {
27
+ LayerColorRangeSelectorFactory,
28
+ LayerColorSelectorFactory,
29
+ ArcLayerColorSelectorFactory,
30
+ ChannelByValueSelectorFactory
31
+ } from './side-panel/layer-panel/layer-configurator';
27
32
  import ColorDimensionScaleSelectorFactory from './side-panel/layer-panel/color-dimension-scale-selector';
28
33
  import FieldSelectorFactory, {FieldListItemFactoryFactory} from './common/field-selector';
29
34
  import FieldTokenFactory from './common/field-token';
@@ -194,12 +199,7 @@ export {
194
199
  LayerTitleSectionFactory
195
200
  } from './side-panel/layer-panel/layer-panel-header';
196
201
 
197
- export {
198
- HowToButton,
199
- LayerColorRangeSelector,
200
- LayerColorSelector,
201
- AggregationTypeSelector
202
- } from './side-panel/layer-panel/layer-configurator';
202
+ export {HowToButton, AggregationTypeSelector} from './side-panel/layer-panel/layer-configurator';
203
203
 
204
204
  export {default as ColorPalette} from './side-panel/layer-panel/color-palette';
205
205
 
@@ -209,6 +209,9 @@ import * as Icons from './common/icons';
209
209
  export {Icons};
210
210
 
211
211
  // Individual Component from Dependency Tree
212
+ export const LayerColorSelector = appInjector.get(LayerColorSelectorFactory);
213
+ export const LayerColorRangeSelector = appInjector.get(LayerColorRangeSelectorFactory);
214
+ export const ArcLayerColorSelector = appInjector.get(ArcLayerColorSelectorFactory);
212
215
  export const TimeRangeSlider = appInjector.get(TimeRangeSliderFactory);
213
216
  export const RangeSlider = appInjector.get(RangeSliderFactory);
214
217
  export const VisConfigSlider = appInjector.get(VisConfigSliderFactory);
@@ -232,7 +235,10 @@ export {
232
235
  ChannelByValueSelectorFactory,
233
236
  ColorDimensionScaleSelectorFactory,
234
237
  FieldListItemFactoryFactory,
235
- InfoHelperFactory
238
+ InfoHelperFactory,
239
+ LayerColorSelectorFactory,
240
+ LayerColorRangeSelectorFactory,
241
+ ArcLayerColorSelectorFactory
236
242
  };
237
243
 
238
244
  // Context
@@ -160,7 +160,6 @@ export default class ColorRangeSelect extends Component {
160
160
  const {customPalette, showSketcher, colorRangeConfig} = this.props.colorPaletteUI;
161
161
 
162
162
  const filteredColorRanges = this.filteredColorRange(this.props);
163
-
164
163
  return (
165
164
  <StyledColorRangeSelector>
166
165
  <StyledColorConfig className="color-range-selector__config">
@@ -22,11 +22,11 @@ import React, {Component, createRef} from 'react';
22
22
  import PropTypes from 'prop-types';
23
23
  import styled from 'styled-components';
24
24
  import {rgbToHex} from 'utils/color-utils';
25
- import SingleColorPalette from 'components/side-panel/layer-panel/single-color-palette';
26
25
  import ColorRangeSelector from 'components/side-panel/layer-panel/color-range-selector';
27
26
  import ColorPalette from 'components/side-panel/layer-panel/color-palette';
28
27
  import {StyledPanelDropdown} from 'components/common/styled-components';
29
28
  import onClickOutside from 'react-onclickoutside';
29
+ import SingleColorPaletteFactory from 'components/side-panel/layer-panel/single-color-palette';
30
30
 
31
31
  export const ColorBlock = styled.div`
32
32
  width: 32px;
@@ -59,131 +59,136 @@ export const InputBoxContainer = styled.div`
59
59
  }
60
60
  `;
61
61
 
62
- class ColorSelector extends Component {
63
- static propTypes = {
64
- colorSets: PropTypes.arrayOf(
65
- PropTypes.shape({
66
- selectedColor: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
67
- setColor: PropTypes.func.isRequired,
68
- isRange: PropTypes.bool,
69
- label: PropTypes.string
70
- })
71
- ),
72
- colorUI: PropTypes.shape({
73
- customPalette: PropTypes.object,
74
- showSketcher: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),
75
- showDropdown: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),
76
- colorRangeConfig: PropTypes.object
77
- }),
78
- inputTheme: PropTypes.string,
79
- disabled: PropTypes.bool,
80
- setColorUI: PropTypes.func
81
- };
82
-
83
- static defaultProps = {
84
- colorSets: []
85
- };
86
-
87
- state = {
88
- showDropdown: false
89
- };
90
-
91
- node = createRef();
92
-
93
- handleClickOutside = e => {
94
- if (this.props.colorUI && Number.isInteger(this.props.colorUI.showSketcher)) {
95
- // if sketcher is open, let sketch to close itself first
96
- return;
62
+ ColorSelectorFactory.deps = [SingleColorPaletteFactory];
63
+
64
+ function ColorSelectorFactory(SingleColorPalette) {
65
+ class ColorSelector extends Component {
66
+ static propTypes = {
67
+ colorSets: PropTypes.arrayOf(
68
+ PropTypes.shape({
69
+ selectedColor: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.any), PropTypes.object]),
70
+ setColor: PropTypes.func.isRequired,
71
+ isRange: PropTypes.bool,
72
+ label: PropTypes.string
73
+ })
74
+ ),
75
+ colorUI: PropTypes.shape({
76
+ customPalette: PropTypes.object,
77
+ showSketcher: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),
78
+ showDropdown: PropTypes.oneOfType([PropTypes.bool, PropTypes.number]),
79
+ colorRangeConfig: PropTypes.object
80
+ }),
81
+ inputTheme: PropTypes.string,
82
+ disabled: PropTypes.bool,
83
+ setColorUI: PropTypes.func
84
+ };
85
+
86
+ static defaultProps = {
87
+ colorSets: []
88
+ };
89
+
90
+ state = {
91
+ showDropdown: false
92
+ };
93
+
94
+ node = createRef();
95
+
96
+ handleClickOutside = e => {
97
+ if (this.props.colorUI && Number.isInteger(this.props.colorUI.showSketcher)) {
98
+ // if sketcher is open, let sketch to close itself first
99
+ return;
100
+ }
101
+ this._closePanelDropdown();
102
+ };
103
+
104
+ _getEditing = () => {
105
+ return this.props.colorUI ? this.props.colorUI.showDropdown : this.state.showDropdown;
106
+ };
107
+
108
+ _closePanelDropdown = () => {
109
+ if (this._getEditing() === false) {
110
+ return;
111
+ }
112
+ if (this.props.setColorUI) {
113
+ this.props.setColorUI({showDropdown: false, showSketcher: false});
114
+ } else {
115
+ this.setState({showDropdown: false});
116
+ }
117
+ };
118
+
119
+ _onSelectColor = (color, e) => {
120
+ e?.stopPropagation();
121
+ const editing = this._getEditing();
122
+ if (this.props.colorSets[editing]) {
123
+ this.props.colorSets[editing].setColor(color);
124
+ }
125
+ };
126
+
127
+ _showDropdown = (e, i) => {
128
+ e.stopPropagation();
129
+ e.preventDefault();
130
+ if (this.props.setColorUI) {
131
+ this.props.setColorUI({showDropdown: i});
132
+ } else {
133
+ this.setState({showDropdown: i});
134
+ }
135
+ };
136
+
137
+ render() {
138
+ const {colorSets, disabled, inputTheme, colorUI} = this.props;
139
+
140
+ const editing = this._getEditing();
141
+ const currentEditing = colorSets[editing] && typeof colorSets[editing] === 'object';
142
+
143
+ return (
144
+ <div className="color-selector" ref={this.node}>
145
+ <InputBoxContainer>
146
+ {colorSets.map((cSet, i) => (
147
+ <div className="color-select__input-group" key={i}>
148
+ <ColorSelectorInput
149
+ className="color-selector__selector"
150
+ active={editing === i}
151
+ disabled={disabled}
152
+ inputTheme={inputTheme}
153
+ onMouseDown={e => this._showDropdown(e, i)}
154
+ >
155
+ {cSet.isRange ? (
156
+ <ColorPalette colors={cSet.selectedColor.colors} />
157
+ ) : (
158
+ <ColorBlock
159
+ className="color-selector__selector__block"
160
+ color={cSet.selectedColor}
161
+ />
162
+ )}
163
+ {cSet.label ? (
164
+ <div className="color-selector__selector__label">{cSet.label}</div>
165
+ ) : null}
166
+ </ColorSelectorInput>
167
+ </div>
168
+ ))}
169
+ </InputBoxContainer>
170
+ {currentEditing ? (
171
+ <StyledPanelDropdown className="color-selector__dropdown">
172
+ {colorSets[editing].isRange ? (
173
+ <ColorRangeSelector
174
+ selectedColorRange={colorSets[editing].selectedColor}
175
+ onSelectColorRange={this._onSelectColor}
176
+ setColorPaletteUI={this.props.setColorUI}
177
+ colorPaletteUI={colorUI}
178
+ />
179
+ ) : (
180
+ <SingleColorPalette
181
+ selectedColor={rgbToHex(colorSets[editing].selectedColor)}
182
+ onSelectColor={this._onSelectColor}
183
+ />
184
+ )}
185
+ </StyledPanelDropdown>
186
+ ) : null}
187
+ </div>
188
+ );
97
189
  }
98
- this._closePanelDropdown();
99
- };
100
-
101
- _getEditing = () => {
102
- return this.props.colorUI ? this.props.colorUI.showDropdown : this.state.showDropdown;
103
- };
104
-
105
- _closePanelDropdown = () => {
106
- if (this._getEditing() === false) {
107
- return;
108
- }
109
- if (this.props.setColorUI) {
110
- this.props.setColorUI({showDropdown: false, showSketcher: false});
111
- } else {
112
- this.setState({showDropdown: false});
113
- }
114
- };
115
-
116
- _onSelectColor = (color, e) => {
117
- e.stopPropagation();
118
- const editing = this._getEditing();
119
- if (this.props.colorSets[editing]) {
120
- this.props.colorSets[editing].setColor(color);
121
- }
122
- };
123
-
124
- _showDropdown = (e, i) => {
125
- e.stopPropagation();
126
- e.preventDefault();
127
- if (this.props.setColorUI) {
128
- this.props.setColorUI({showDropdown: i});
129
- } else {
130
- this.setState({showDropdown: i});
131
- }
132
- };
133
-
134
- render() {
135
- const {colorSets, disabled, inputTheme, colorUI} = this.props;
136
-
137
- const editing = this._getEditing();
138
- const currentEditing = colorSets[editing] && typeof colorSets[editing] === 'object';
139
-
140
- return (
141
- <div className="color-selector" ref={this.node}>
142
- <InputBoxContainer>
143
- {colorSets.map((cSet, i) => (
144
- <div className="color-select__input-group" key={i}>
145
- <ColorSelectorInput
146
- className="color-selector__selector"
147
- active={editing === i}
148
- disabled={disabled}
149
- inputTheme={inputTheme}
150
- onMouseDown={e => this._showDropdown(e, i)}
151
- >
152
- {cSet.isRange ? (
153
- <ColorPalette colors={cSet.selectedColor.colors} />
154
- ) : (
155
- <ColorBlock
156
- className="color-selector__selector__block"
157
- color={cSet.selectedColor}
158
- />
159
- )}
160
- {cSet.label ? (
161
- <div className="color-selector__selector__label">{cSet.label}</div>
162
- ) : null}
163
- </ColorSelectorInput>
164
- </div>
165
- ))}
166
- </InputBoxContainer>
167
- {currentEditing ? (
168
- <StyledPanelDropdown className="color-selector__dropdown">
169
- {colorSets[editing].isRange ? (
170
- <ColorRangeSelector
171
- selectedColorRange={colorSets[editing].selectedColor}
172
- onSelectColorRange={this._onSelectColor}
173
- setColorPaletteUI={this.props.setColorUI}
174
- colorPaletteUI={colorUI}
175
- />
176
- ) : (
177
- <SingleColorPalette
178
- selectedColor={rgbToHex(colorSets[editing].selectedColor)}
179
- onSelectColor={this._onSelectColor}
180
- />
181
- )}
182
- </StyledPanelDropdown>
183
- ) : null}
184
- </div>
185
- );
186
190
  }
191
+ return onClickOutside(ColorSelector);
187
192
  }
188
193
 
189
- export default onClickOutside(ColorSelector);
194
+ export default ColorSelectorFactory;