@kepler.gl/components 3.3.0-alpha.1 → 3.3.0-alpha.2

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.
Files changed (126) hide show
  1. package/dist/common/action-panel.js +1 -1
  2. package/dist/common/color-legend.d.ts +1 -1
  3. package/dist/common/data-table/canvas.d.ts +1 -1
  4. package/dist/common/data-table/index.d.ts +1 -1
  5. package/dist/common/dnd-layer-items.d.ts +4 -0
  6. package/dist/common/dnd-layer-items.js +6 -2
  7. package/dist/common/error-boundary.d.ts +1 -1
  8. package/dist/common/file-uploader/file-upload.d.ts +1 -1
  9. package/dist/common/flex-container.d.ts +15 -7
  10. package/dist/common/icon-button.d.ts +53 -6
  11. package/dist/common/icons/arrow-down-full.d.ts +2 -1
  12. package/dist/common/icons/arrow-down-full.js +1 -1
  13. package/dist/common/icons/folder.d.ts +10 -0
  14. package/dist/common/icons/folder.js +51 -0
  15. package/dist/common/icons/index.d.ts +1 -0
  16. package/dist/common/icons/index.js +8 -1
  17. package/dist/common/icons/timeline-marker.d.ts +2 -1
  18. package/dist/common/icons/timeline-marker.js +1 -1
  19. package/dist/common/item-selector/dropdown-list.d.ts +1 -1
  20. package/dist/common/item-selector/dropdown-list.js +1 -1
  21. package/dist/common/item-selector/dropdown-select.d.ts +13 -7
  22. package/dist/common/item-selector/item-selector.d.ts +1 -1
  23. package/dist/common/item-selector/item-selector.js +1 -1
  24. package/dist/common/item-selector/typeahead.d.ts +4 -4
  25. package/dist/common/item-selector/typeahead.js +1 -3
  26. package/dist/common/layout-splitter.d.ts +45 -0
  27. package/dist/common/layout-splitter.js +231 -0
  28. package/dist/common/line-chart.d.ts +7 -3
  29. package/dist/common/line-chart.js +179 -59
  30. package/dist/common/modal.d.ts +11 -5
  31. package/dist/common/modal.js +1 -1
  32. package/dist/common/portaled.d.ts +17 -17
  33. package/dist/common/range-slider.js +1 -3
  34. package/dist/common/slider/mouse-event.d.ts +1 -1
  35. package/dist/common/slider/mouse-event.js +1 -2
  36. package/dist/common/slider/slider-bar-handle.d.ts +1 -1
  37. package/dist/common/slider/slider-bar-handle.js +1 -1
  38. package/dist/common/slider/slider-handle.d.ts +3 -3
  39. package/dist/common/slider/slider-handle.js +1 -1
  40. package/dist/common/slider/slider.d.ts +4 -4
  41. package/dist/common/slider/slider.js +1 -1
  42. package/dist/common/styled-components.d.ts +627 -177
  43. package/dist/common/vertical-toolbar.d.ts +12 -2
  44. package/dist/container.d.ts +3 -2
  45. package/dist/container.js +2 -2
  46. package/dist/context.d.ts +1 -1
  47. package/dist/context.js +1 -1
  48. package/dist/dnd-context.d.ts +4 -3
  49. package/dist/dnd-context.js +64 -9
  50. package/dist/effects/compact-color-picker.d.ts +1 -1
  51. package/dist/effects/effect-configurator.d.ts +2 -4
  52. package/dist/effects/effect-time-configurator.js +1 -1
  53. package/dist/effects/effect-type-list-item.d.ts +1 -1
  54. package/dist/filters/components.d.ts +7 -5
  55. package/dist/filters/filter-panels/filter-synced-dataset-panel.d.ts +6 -2
  56. package/dist/geocoder-panel.d.ts +2 -2
  57. package/dist/geocoder-panel.js +6 -7
  58. package/dist/hooks/use-dnd-layers.d.ts +4 -3
  59. package/dist/hooks/use-dnd-layers.js +103 -42
  60. package/dist/index.d.ts +3 -2
  61. package/dist/index.js +38 -9
  62. package/dist/injector.d.ts +1 -1
  63. package/dist/kepler-gl.d.ts +167 -27
  64. package/dist/kepler-gl.js +3 -2
  65. package/dist/loading-indicator.d.ts +1 -1
  66. package/dist/map/layer-hover-info.d.ts +7 -3
  67. package/dist/map/layer-hover-info.js +58 -22
  68. package/dist/map/map-control-panel.js +3 -2
  69. package/dist/map/map-control-toolbar.d.ts +29 -4
  70. package/dist/map/map-control.d.ts +11 -4
  71. package/dist/map/map-control.js +7 -6
  72. package/dist/map/map-legend-panel.d.ts +11 -2
  73. package/dist/map/map-legend-panel.js +19 -2
  74. package/dist/map/map-legend.d.ts +19 -2
  75. package/dist/map/map-legend.js +141 -27
  76. package/dist/map/split-map-button.d.ts +6 -1
  77. package/dist/map/split-map-button.js +113 -19
  78. package/dist/map-container.js +20 -3
  79. package/dist/maps-layout.d.ts +3 -0
  80. package/dist/maps-layout.js +86 -26
  81. package/dist/modal-container.d.ts +1 -1
  82. package/dist/modals/cloud-tile.d.ts +1 -2
  83. package/dist/modals/export-map-modal/components.d.ts +9 -5
  84. package/dist/modals/export-video-modal.d.ts +3 -0
  85. package/dist/modals/export-video-modal.js +79 -46
  86. package/dist/modals/export-video-modal.spec.js +2 -2
  87. package/dist/modals/hubble-utils.d.ts +16 -0
  88. package/dist/modals/hubble-utils.js +98 -1
  89. package/dist/modals/modal-dialog.d.ts +1 -1
  90. package/dist/modals/share-map-modal.d.ts +2 -4
  91. package/dist/modals/swipe-composite-utils.d.ts +10 -0
  92. package/dist/modals/swipe-composite-utils.js +108 -0
  93. package/dist/modals/swipe-export-settings.d.ts +24 -0
  94. package/dist/modals/swipe-export-settings.js +370 -0
  95. package/dist/modals/swipe-export-video-container.d.ts +122 -0
  96. package/dist/modals/swipe-export-video-container.js +630 -0
  97. package/dist/modals/swipe-export-video-preview.d.ts +68 -0
  98. package/dist/modals/swipe-export-video-preview.js +339 -0
  99. package/dist/modals/tilesets-modals/tileset-raster-form.js +1 -5
  100. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +7 -3
  101. package/dist/side-panel/layer-manager.d.ts +5 -4
  102. package/dist/side-panel/layer-manager.js +16 -4
  103. package/dist/side-panel/layer-panel/color-selector.d.ts +6 -4
  104. package/dist/side-panel/layer-panel/custom-palette.d.ts +3 -5
  105. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +2 -1
  106. package/dist/side-panel/layer-panel/dataset-layer-group.js +1 -1
  107. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +2 -1
  108. package/dist/side-panel/layer-panel/dataset-layer-section.js +1 -1
  109. package/dist/side-panel/layer-panel/layer-config-group.d.ts +5 -11
  110. package/dist/side-panel/layer-panel/layer-configurator.js +130 -82
  111. package/dist/side-panel/layer-panel/layer-group-header.d.ts +15 -0
  112. package/dist/side-panel/layer-panel/layer-group-header.js +179 -0
  113. package/dist/side-panel/layer-panel/layer-list.d.ts +9 -4
  114. package/dist/side-panel/layer-panel/layer-list.js +197 -40
  115. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +2 -10
  116. package/dist/side-panel/panel-tab.d.ts +1 -3
  117. package/dist/side-panel/panel-view-list-toggle.d.ts +4 -4
  118. package/dist/side-panel/side-bar.d.ts +1 -6
  119. package/dist/side-panel.d.ts +1 -1
  120. package/dist/types.d.ts +2 -2
  121. package/dist/types.js +1 -1
  122. package/package.json +29 -35
  123. package/dist/map/layer-selector-panel.d.ts +0 -21
  124. package/dist/map/layer-selector-panel.js +0 -85
  125. package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +0 -11
  126. package/dist/side-panel/layer-panel/radius-by-zoom-input.js +0 -220
@@ -5,76 +5,137 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports["default"] = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
10
  var _react = require("react");
10
11
  var _reactRedux = require("react-redux");
11
12
  var _actions = require("@kepler.gl/actions");
12
13
  var _dndLayerItems = require("../common/dnd-layer-items");
13
14
  var _reducers = require("@kepler.gl/reducers");
14
- // SPDX-License-Identifier: MIT
15
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; } // SPDX-License-Identifier: MIT
15
17
  // Copyright contributors to the kepler.gl project
16
-
17
18
  var useDndLayers = function useDndLayers(layers, layerOrder) {
18
19
  var dispatch = (0, _reactRedux.useDispatch)();
19
20
  var _useState = (0, _react.useState)(),
20
21
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
21
- activeLayer = _useState2[0],
22
- setActiveLayer = _useState2[1];
22
+ activeElement = _useState2[0],
23
+ setActiveElement = _useState2[1];
23
24
  var onDragStart = (0, _react.useCallback)(function (event) {
25
+ var _event$active$data$cu;
24
26
  var active = event.active;
25
- var newActiveLayer = layers.find(function (layer) {
26
- return layer.id === active.id;
27
- });
28
- if (newActiveLayer) {
29
- setActiveLayer(newActiveLayer);
30
- if (newActiveLayer !== null && newActiveLayer !== void 0 && newActiveLayer.config.isConfigActive) {
31
- dispatch((0, _actions.layerConfigChange)(newActiveLayer, {
32
- isConfigActive: false
33
- }));
34
- }
35
- }
36
- }, [dispatch, layers]);
37
- var onDragEnd = (0, _react.useCallback)(function (event) {
38
- var _over$data;
39
- var active = event.active,
40
- over = event.over;
41
- var activeLayerId = active.id;
42
- var overType = over === null || over === void 0 || (_over$data = over.data) === null || _over$data === void 0 || (_over$data = _over$data.current) === null || _over$data === void 0 ? void 0 : _over$data.type;
43
- if (!overType) {
44
- setActiveLayer(undefined);
27
+ var activeType = (_event$active$data$cu = event.active.data.current) === null || _event$active$data$cu === void 0 ? void 0 : _event$active$data$cu.type;
28
+ if (!activeType) {
45
29
  return;
46
30
  }
47
- switch (overType) {
48
- // moving layers into maps
49
- case _dndLayerItems.DROPPABLE_MAP_CONTAINER_TYPE:
31
+ switch (activeType) {
32
+ case _dndLayerItems.SORTABLE_LAYER_TYPE:
50
33
  {
51
- var _over$data$current$in, _over$data$current;
52
- var mapIndex = (_over$data$current$in = (_over$data$current = over.data.current) === null || _over$data$current === void 0 ? void 0 : _over$data$current.index) !== null && _over$data$current$in !== void 0 ? _over$data$current$in : 0;
53
- dispatch((0, _actions.toggleLayerForMap)(mapIndex, activeLayerId));
34
+ var activeLayer = layers.find(function (l) {
35
+ return l.id === active.id;
36
+ });
37
+ if (activeLayer) {
38
+ setActiveElement(['layer', activeLayer]);
39
+ }
54
40
  break;
55
41
  }
56
- // swaping layers
57
- case _dndLayerItems.SORTABLE_LAYER_TYPE:
42
+ case _dndLayerItems.SORTABLE_LAYER_GROUP_TYPE:
58
43
  {
59
- var newLayerOrder = (0, _reducers.reorderLayerOrder)(layerOrder, activeLayerId, over.id);
60
- dispatch((0, _actions.reorderLayer)(newLayerOrder));
44
+ var activeLayerGroup = (0, _reducers.getLayerGroupFromLayerOrder)(layerOrder, active.id);
45
+ if (activeLayerGroup) {
46
+ setActiveElement(['layerGroup', activeLayerGroup]);
47
+ }
61
48
  break;
62
49
  }
63
- // moving layers within side panel
64
- case _dndLayerItems.SORTABLE_SIDE_PANEL_TYPE:
65
- // move layer to the end of the list
66
- dispatch((0, _actions.reorderLayer)((0, _reducers.reorderLayerOrder)(layerOrder, activeLayerId, layerOrder[layerOrder.length - 1])));
67
- break;
68
50
  default:
69
51
  break;
70
52
  }
71
- setActiveLayer(undefined);
53
+ }, [layerOrder, layers]);
54
+
55
+ // eslint-disable-next-line complexity
56
+ var onDragEnd = (0, _react.useCallback)(function (event) {
57
+ var _active$data, _active$data2, _over$data, _over$data2;
58
+ var active = event.active,
59
+ over = event.over;
60
+ var activeId = active.id;
61
+ var overId = over === null || over === void 0 ? void 0 : over.id;
62
+ var activeParent = (_active$data = active.data) === null || _active$data === void 0 || (_active$data = _active$data.current) === null || _active$data === void 0 ? void 0 : _active$data.parent;
63
+ var activeType = (_active$data2 = active.data) === null || _active$data2 === void 0 || (_active$data2 = _active$data2.current) === null || _active$data2 === void 0 ? void 0 : _active$data2.type;
64
+ var overParent = over === null || over === void 0 || (_over$data = over.data) === null || _over$data === void 0 || (_over$data = _over$data.current) === null || _over$data === void 0 ? void 0 : _over$data.parent;
65
+ var overType = over === null || over === void 0 || (_over$data2 = over.data) === null || _over$data2 === void 0 || (_over$data2 = _over$data2.current) === null || _over$data2 === void 0 ? void 0 : _over$data2.type;
66
+ setActiveElement(undefined);
67
+ if (!overId) {
68
+ if (activeParent && activeType === _dndLayerItems.SORTABLE_LAYER_TYPE) {
69
+ var newLayerOrder = (0, _reducers.removeElementFromLayerOrder)(layerOrder, activeId);
70
+ newLayerOrder = (0, _reducers.addLayerOrGroupToLayerOrder)(newLayerOrder, activeId, newLayerOrder.length);
71
+ dispatch((0, _actions.reorderLayer)(newLayerOrder));
72
+ }
73
+ return;
74
+ }
75
+ if (overType === _dndLayerItems.DROPPABLE_MAP_CONTAINER_TYPE) {
76
+ if (activeType === _dndLayerItems.SORTABLE_LAYER_TYPE) {
77
+ var _over$data$current$in, _over$data$current;
78
+ var mapIndex = (_over$data$current$in = over === null || over === void 0 || (_over$data$current = over.data.current) === null || _over$data$current === void 0 ? void 0 : _over$data$current.index) !== null && _over$data$current$in !== void 0 ? _over$data$current$in : 0;
79
+ dispatch((0, _actions.toggleLayerForMap)(mapIndex, activeId));
80
+ }
81
+ return;
82
+ }
83
+ if (overType === _dndLayerItems.SORTABLE_LAYER_END_TYPE) {
84
+ var groupObj = (0, _reducers.getLayerGroupFromLayerOrder)(layerOrder, activeId);
85
+ var _newLayerOrder = (0, _reducers.removeElementFromLayerOrder)(layerOrder, activeId);
86
+ _newLayerOrder = (0, _reducers.addLayerOrGroupToLayerOrder)(_newLayerOrder, groupObj !== null && groupObj !== void 0 ? groupObj : activeId, _newLayerOrder.length);
87
+ dispatch((0, _actions.reorderLayer)(_newLayerOrder));
88
+ return;
89
+ }
90
+
91
+ // swap layers at same level
92
+ if ((activeParent === null || activeParent === void 0 ? void 0 : activeParent.id) === (overParent === null || overParent === void 0 ? void 0 : overParent.id)) {
93
+ if (!activeParent) {
94
+ var _newLayerOrder2 = (0, _reducers.reorderLayerOrder)(layerOrder, activeId, overId);
95
+ dispatch((0, _actions.reorderLayer)(_newLayerOrder2));
96
+ } else {
97
+ var currentLayerGroup = activeParent;
98
+ var newGroupLayerOrder = (0, _reducers.reorderLayerOrder)(currentLayerGroup.layerOrder, activeId, overId);
99
+ var newLayerGroup = _objectSpread(_objectSpread({}, currentLayerGroup), {}, {
100
+ layerOrder: newGroupLayerOrder
101
+ });
102
+ var _newLayerOrder3 = (0, _reducers.updateLayerGroupInLayerOrder)(layerOrder, newLayerGroup);
103
+ dispatch((0, _actions.reorderLayer)(_newLayerOrder3));
104
+ }
105
+ return;
106
+ }
107
+
108
+ // move into a group (either empty group droppable or onto a layer inside group)
109
+ if (overType === _dndLayerItems.SORTABLE_LAYER_GROUP_DROPPABLE_TYPE || overParent) {
110
+ if (activeType === _dndLayerItems.SORTABLE_LAYER_TYPE) {
111
+ var _currentLayerGroup = overParent ? overParent : (0, _reducers.getLayerGroupFromLayerOrder)(layerOrder, overId);
112
+ if (!_currentLayerGroup) return;
113
+ var overIndex = overType === _dndLayerItems.SORTABLE_LAYER_GROUP_DROPPABLE_TYPE ? 0 : (0, _reducers.getIndexFromLayerEntryId)(_currentLayerGroup.layerOrder, overId);
114
+ var _newLayerGroup = _objectSpread(_objectSpread({}, _currentLayerGroup), {}, {
115
+ layerOrder: (0, _reducers.addLayerOrGroupToLayerOrder)(_currentLayerGroup.layerOrder, activeId, overIndex)
116
+ });
117
+ var _newLayerOrder4 = (0, _reducers.removeElementFromLayerOrder)(layerOrder, activeId);
118
+ _newLayerOrder4 = (0, _reducers.updateLayerGroupInLayerOrder)(_newLayerOrder4, _newLayerGroup);
119
+ dispatch((0, _actions.reorderLayer)(_newLayerOrder4));
120
+ }
121
+ return;
122
+ }
123
+
124
+ // moving layer/group onto root
125
+ if (!overParent) {
126
+ var _over$data$current$so, _over$data$current2;
127
+ var _groupObj = (0, _reducers.getLayerGroupFromLayerOrder)(layerOrder, activeId);
128
+ var _newLayerOrder5 = (0, _reducers.removeElementFromLayerOrder)(layerOrder, activeId);
129
+ var _overIndex = (_over$data$current$so = over === null || over === void 0 || (_over$data$current2 = over.data.current) === null || _over$data$current2 === void 0 || (_over$data$current2 = _over$data$current2.sortable) === null || _over$data$current2 === void 0 ? void 0 : _over$data$current2.index) !== null && _over$data$current$so !== void 0 ? _over$data$current$so : 0;
130
+ _newLayerOrder5 = (0, _reducers.addLayerOrGroupToLayerOrder)(_newLayerOrder5, _groupObj !== null && _groupObj !== void 0 ? _groupObj : activeId, _overIndex);
131
+ dispatch((0, _actions.reorderLayer)(_newLayerOrder5));
132
+ }
72
133
  }, [dispatch, layerOrder]);
73
134
  return {
74
- activeLayer: activeLayer,
135
+ activeElement: activeElement,
75
136
  onDragStart: onDragStart,
76
137
  onDragEnd: onDragEnd
77
138
  };
78
139
  };
79
140
  var _default = exports["default"] = useDndLayers;
80
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3JlYWN0UmVkdXgiLCJfYWN0aW9ucyIsIl9kbmRMYXllckl0ZW1zIiwiX3JlZHVjZXJzIiwidXNlRG5kTGF5ZXJzIiwibGF5ZXJzIiwibGF5ZXJPcmRlciIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJhY3RpdmVMYXllciIsInNldEFjdGl2ZUxheWVyIiwib25EcmFnU3RhcnQiLCJ1c2VDYWxsYmFjayIsImV2ZW50IiwiYWN0aXZlIiwibmV3QWN0aXZlTGF5ZXIiLCJmaW5kIiwibGF5ZXIiLCJpZCIsImNvbmZpZyIsImlzQ29uZmlnQWN0aXZlIiwibGF5ZXJDb25maWdDaGFuZ2UiLCJvbkRyYWdFbmQiLCJfb3ZlciRkYXRhIiwib3ZlciIsImFjdGl2ZUxheWVySWQiLCJvdmVyVHlwZSIsImRhdGEiLCJjdXJyZW50IiwidHlwZSIsInVuZGVmaW5lZCIsIkRST1BQQUJMRV9NQVBfQ09OVEFJTkVSX1RZUEUiLCJfb3ZlciRkYXRhJGN1cnJlbnQkaW4iLCJfb3ZlciRkYXRhJGN1cnJlbnQiLCJtYXBJbmRleCIsImluZGV4IiwidG9nZ2xlTGF5ZXJGb3JNYXAiLCJTT1JUQUJMRV9MQVlFUl9UWVBFIiwibmV3TGF5ZXJPcmRlciIsInJlb3JkZXJMYXllck9yZGVyIiwicmVvcmRlckxheWVyIiwiU09SVEFCTEVfU0lERV9QQU5FTF9UWVBFIiwibGVuZ3RoIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3VzZS1kbmQtbGF5ZXJzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge3VzZUNhbGxiYWNrLCB1c2VTdGF0ZX0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHt1c2VEaXNwYXRjaH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtEcmFnRW5kRXZlbnQsIERyYWdTdGFydEV2ZW50fSBmcm9tICdAZG5kLWtpdC9jb3JlJztcbmltcG9ydCB7bGF5ZXJDb25maWdDaGFuZ2UsIHJlb3JkZXJMYXllciwgdG9nZ2xlTGF5ZXJGb3JNYXB9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5pbXBvcnQge1xuICBEUk9QUEFCTEVfTUFQX0NPTlRBSU5FUl9UWVBFLFxuICBTT1JUQUJMRV9MQVlFUl9UWVBFLFxuICBTT1JUQUJMRV9TSURFX1BBTkVMX1RZUEVcbn0gZnJvbSAnLi4vY29tbW9uL2RuZC1sYXllci1pdGVtcyc7XG5pbXBvcnQge3Jlb3JkZXJMYXllck9yZGVyfSBmcm9tICdAa2VwbGVyLmdsL3JlZHVjZXJzJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcblxudHlwZSBEbmRFZmZlY3RzSG9vayA9IHtcbiAgYWN0aXZlTGF5ZXI6IExheWVyIHwgdW5kZWZpbmVkO1xuICBvbkRyYWdTdGFydDogKGV2ZW50OiBEcmFnU3RhcnRFdmVudCkgPT4gdm9pZDtcbiAgb25EcmFnRW5kOiAoZXZlbnQ6IERyYWdFbmRFdmVudCkgPT4gdm9pZDtcbn07XG5cbmNvbnN0IHVzZURuZExheWVyczogKGxheWVyczogTGF5ZXJbXSwgbGF5ZXJPcmRlcjogc3RyaW5nW10pID0+IERuZEVmZmVjdHNIb29rID0gKFxuICBsYXllcnMsXG4gIGxheWVyT3JkZXJcbikgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG5cbiAgY29uc3QgW2FjdGl2ZUxheWVyLCBzZXRBY3RpdmVMYXllcl06IFtcbiAgICBhY3RpdmVFZmZlY3Q6IExheWVyIHwgdW5kZWZpbmVkLFxuICAgIHNldEFjdGl2ZUVmZmVjdDogKGVmZmVjdDogTGF5ZXIgfCB1bmRlZmluZWQpID0+IHZvaWRcbiAgXSA9IHVzZVN0YXRlKCk7XG5cbiAgY29uc3Qgb25EcmFnU3RhcnQgPSB1c2VDYWxsYmFjayhcbiAgICBldmVudCA9PiB7XG4gICAgICBjb25zdCB7YWN0aXZlfSA9IGV2ZW50O1xuICAgICAgY29uc3QgbmV3QWN0aXZlTGF5ZXIgPSBsYXllcnMuZmluZChsYXllciA9PiBsYXllci5pZCA9PT0gYWN0aXZlLmlkKTtcbiAgICAgIGlmIChuZXdBY3RpdmVMYXllcikge1xuICAgICAgICBzZXRBY3RpdmVMYXllcihuZXdBY3RpdmVMYXllcik7XG4gICAgICAgIGlmIChuZXdBY3RpdmVMYXllcj8uY29uZmlnLmlzQ29uZmlnQWN0aXZlKSB7XG4gICAgICAgICAgZGlzcGF0Y2gobGF5ZXJDb25maWdDaGFuZ2UobmV3QWN0aXZlTGF5ZXIsIHtpc0NvbmZpZ0FjdGl2ZTogZmFsc2V9KSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIFtkaXNwYXRjaCwgbGF5ZXJzXVxuICApO1xuXG4gIGNvbnN0IG9uRHJhZ0VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIGV2ZW50ID0+IHtcbiAgICAgIGNvbnN0IHthY3RpdmUsIG92ZXJ9ID0gZXZlbnQ7XG5cbiAgICAgIGNvbnN0IHtpZDogYWN0aXZlTGF5ZXJJZH0gPSBhY3RpdmU7XG4gICAgICBjb25zdCBvdmVyVHlwZSA9IG92ZXI/LmRhdGE/LmN1cnJlbnQ/LnR5cGU7XG5cbiAgICAgIGlmICghb3ZlclR5cGUpIHtcbiAgICAgICAgc2V0QWN0aXZlTGF5ZXIodW5kZWZpbmVkKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBzd2l0Y2ggKG92ZXJUeXBlKSB7XG4gICAgICAgIC8vIG1vdmluZyBsYXllcnMgaW50byBtYXBzXG4gICAgICAgIGNhc2UgRFJPUFBBQkxFX01BUF9DT05UQUlORVJfVFlQRToge1xuICAgICAgICAgIGNvbnN0IG1hcEluZGV4ID0gb3Zlci5kYXRhLmN1cnJlbnQ/LmluZGV4ID8/IDA7XG4gICAgICAgICAgZGlzcGF0Y2godG9nZ2xlTGF5ZXJGb3JNYXAobWFwSW5kZXgsIGFjdGl2ZUxheWVySWQpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICAvLyBzd2FwaW5nIGxheWVyc1xuICAgICAgICBjYXNlIFNPUlRBQkxFX0xBWUVSX1RZUEU6IHtcbiAgICAgICAgICBjb25zdCBuZXdMYXllck9yZGVyID0gcmVvcmRlckxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlTGF5ZXJJZCwgb3Zlci5pZCk7XG4gICAgICAgICAgZGlzcGF0Y2gocmVvcmRlckxheWVyKG5ld0xheWVyT3JkZXIpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICAvLyAgbW92aW5nIGxheWVycyB3aXRoaW4gc2lkZSBwYW5lbFxuICAgICAgICBjYXNlIFNPUlRBQkxFX1NJREVfUEFORUxfVFlQRTpcbiAgICAgICAgICAvLyBtb3ZlIGxheWVyIHRvIHRoZSBlbmQgb2YgdGhlIGxpc3RcbiAgICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICAgIHJlb3JkZXJMYXllcihcbiAgICAgICAgICAgICAgcmVvcmRlckxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlTGF5ZXJJZCwgbGF5ZXJPcmRlcltsYXllck9yZGVyLmxlbmd0aCAtIDFdKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIHNldEFjdGl2ZUxheWVyKHVuZGVmaW5lZCk7XG4gICAgfSxcbiAgICBbZGlzcGF0Y2gsIGxheWVyT3JkZXJdXG4gICk7XG5cbiAgcmV0dXJuIHthY3RpdmVMYXllciwgb25EcmFnU3RhcnQsIG9uRHJhZ0VuZH07XG59O1xuXG5leHBvcnQgZGVmYXVsdCB1c2VEbmRMYXllcnM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFB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
141
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX3JlYWN0UmVkdXgiLCJfYWN0aW9ucyIsIl9kbmRMYXllckl0ZW1zIiwiX3JlZHVjZXJzIiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJ1c2VEbmRMYXllcnMiLCJsYXllcnMiLCJsYXllck9yZGVyIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImFjdGl2ZUVsZW1lbnQiLCJzZXRBY3RpdmVFbGVtZW50Iiwib25EcmFnU3RhcnQiLCJ1c2VDYWxsYmFjayIsImV2ZW50IiwiX2V2ZW50JGFjdGl2ZSRkYXRhJGN1IiwiYWN0aXZlIiwiYWN0aXZlVHlwZSIsImRhdGEiLCJjdXJyZW50IiwidHlwZSIsIlNPUlRBQkxFX0xBWUVSX1RZUEUiLCJhY3RpdmVMYXllciIsImZpbmQiLCJsIiwiaWQiLCJTT1JUQUJMRV9MQVlFUl9HUk9VUF9UWVBFIiwiYWN0aXZlTGF5ZXJHcm91cCIsImdldExheWVyR3JvdXBGcm9tTGF5ZXJPcmRlciIsIm9uRHJhZ0VuZCIsIl9hY3RpdmUkZGF0YSIsIl9hY3RpdmUkZGF0YTIiLCJfb3ZlciRkYXRhIiwiX292ZXIkZGF0YTIiLCJvdmVyIiwiYWN0aXZlSWQiLCJvdmVySWQiLCJhY3RpdmVQYXJlbnQiLCJwYXJlbnQiLCJvdmVyUGFyZW50Iiwib3ZlclR5cGUiLCJ1bmRlZmluZWQiLCJuZXdMYXllck9yZGVyIiwicmVtb3ZlRWxlbWVudEZyb21MYXllck9yZGVyIiwiYWRkTGF5ZXJPckdyb3VwVG9MYXllck9yZGVyIiwicmVvcmRlckxheWVyIiwiRFJPUFBBQkxFX01BUF9DT05UQUlORVJfVFlQRSIsIl9vdmVyJGRhdGEkY3VycmVudCRpbiIsIl9vdmVyJGRhdGEkY3VycmVudCIsIm1hcEluZGV4IiwiaW5kZXgiLCJ0b2dnbGVMYXllckZvck1hcCIsIlNPUlRBQkxFX0xBWUVSX0VORF9UWVBFIiwiZ3JvdXBPYmoiLCJyZW9yZGVyTGF5ZXJPcmRlciIsImN1cnJlbnRMYXllckdyb3VwIiwibmV3R3JvdXBMYXllck9yZGVyIiwibmV3TGF5ZXJHcm91cCIsInVwZGF0ZUxheWVyR3JvdXBJbkxheWVyT3JkZXIiLCJTT1JUQUJMRV9MQVlFUl9HUk9VUF9EUk9QUEFCTEVfVFlQRSIsIm92ZXJJbmRleCIsImdldEluZGV4RnJvbUxheWVyRW50cnlJZCIsIl9vdmVyJGRhdGEkY3VycmVudCRzbyIsIl9vdmVyJGRhdGEkY3VycmVudDIiLCJzb3J0YWJsZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2UtZG5kLWxheWVycy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHt1c2VDYWxsYmFjaywgdXNlU3RhdGV9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7dXNlRGlzcGF0Y2h9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7RHJhZ0VuZEV2ZW50LCBEcmFnU3RhcnRFdmVudH0gZnJvbSAnQGRuZC1raXQvY29yZSc7XG5pbXBvcnQge3Jlb3JkZXJMYXllciwgdG9nZ2xlTGF5ZXJGb3JNYXB9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5pbXBvcnQge1xuICBEUk9QUEFCTEVfTUFQX0NPTlRBSU5FUl9UWVBFLFxuICBTT1JUQUJMRV9MQVlFUl9UWVBFLFxuICBTT1JUQUJMRV9MQVlFUl9HUk9VUF9UWVBFLFxuICBTT1JUQUJMRV9MQVlFUl9HUk9VUF9EUk9QUEFCTEVfVFlQRSxcbiAgU09SVEFCTEVfTEFZRVJfRU5EX1RZUEVcbn0gZnJvbSAnLi4vY29tbW9uL2RuZC1sYXllci1pdGVtcyc7XG5pbXBvcnQge1xuICByZW9yZGVyTGF5ZXJPcmRlcixcbiAgZ2V0TGF5ZXJHcm91cEZyb21MYXllck9yZGVyLFxuICBnZXRJbmRleEZyb21MYXllckVudHJ5SWQsXG4gIGFkZExheWVyT3JHcm91cFRvTGF5ZXJPcmRlcixcbiAgcmVtb3ZlRWxlbWVudEZyb21MYXllck9yZGVyLFxuICB1cGRhdGVMYXllckdyb3VwSW5MYXllck9yZGVyXG59IGZyb20gJ0BrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuaW1wb3J0IHtMYXllcn0gZnJvbSAnQGtlcGxlci5nbC9sYXllcnMnO1xuaW1wb3J0IHtMYXllck9yZGVyR3JvdXAsIExheWVyT3JkZXIsIExheWVyT3JkZXJIaWVyYXJjaHlFbnRyeX0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5cbnR5cGUgRG5kTGF5ZXJzSG9vayA9IHtcbiAgYWN0aXZlRWxlbWVudDogTGF5ZXJPcmRlckhpZXJhcmNoeUVudHJ5IHwgdW5kZWZpbmVkO1xuICBvbkRyYWdTdGFydDogKGV2ZW50OiBEcmFnU3RhcnRFdmVudCkgPT4gdm9pZDtcbiAgb25EcmFnRW5kOiAoZXZlbnQ6IERyYWdFbmRFdmVudCkgPT4gdm9pZDtcbn07XG5cbmNvbnN0IHVzZURuZExheWVyczogKGxheWVyczogTGF5ZXJbXSwgbGF5ZXJPcmRlcjogTGF5ZXJPcmRlcikgPT4gRG5kTGF5ZXJzSG9vayA9IChcbiAgbGF5ZXJzLFxuICBsYXllck9yZGVyXG4pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIGNvbnN0IFthY3RpdmVFbGVtZW50LCBzZXRBY3RpdmVFbGVtZW50XSA9IHVzZVN0YXRlPExheWVyT3JkZXJIaWVyYXJjaHlFbnRyeSB8IHVuZGVmaW5lZD4oKTtcblxuICBjb25zdCBvbkRyYWdTdGFydCA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudDogRHJhZ1N0YXJ0RXZlbnQpID0+IHtcbiAgICAgIGNvbnN0IHthY3RpdmV9ID0gZXZlbnQ7XG4gICAgICBjb25zdCBhY3RpdmVUeXBlID0gZXZlbnQuYWN0aXZlLmRhdGEuY3VycmVudD8udHlwZTtcblxuICAgICAgaWYgKCFhY3RpdmVUeXBlKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgc3dpdGNoIChhY3RpdmVUeXBlKSB7XG4gICAgICAgIGNhc2UgU09SVEFCTEVfTEFZRVJfVFlQRToge1xuICAgICAgICAgIGNvbnN0IGFjdGl2ZUxheWVyID0gbGF5ZXJzLmZpbmQobCA9PiBsLmlkID09PSBhY3RpdmUuaWQpO1xuICAgICAgICAgIGlmIChhY3RpdmVMYXllcikge1xuICAgICAgICAgICAgc2V0QWN0aXZlRWxlbWVudChbJ2xheWVyJywgYWN0aXZlTGF5ZXJdKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgY2FzZSBTT1JUQUJMRV9MQVlFUl9HUk9VUF9UWVBFOiB7XG4gICAgICAgICAgY29uc3QgYWN0aXZlTGF5ZXJHcm91cCA9IGdldExheWVyR3JvdXBGcm9tTGF5ZXJPcmRlcihsYXllck9yZGVyLCBhY3RpdmUuaWQgYXMgc3RyaW5nKTtcbiAgICAgICAgICBpZiAoYWN0aXZlTGF5ZXJHcm91cCkge1xuICAgICAgICAgICAgc2V0QWN0aXZlRWxlbWVudChbJ2xheWVyR3JvdXAnLCBhY3RpdmVMYXllckdyb3VwIGFzIExheWVyT3JkZXJHcm91cF0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2xheWVyT3JkZXIsIGxheWVyc11cbiAgKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY29tcGxleGl0eVxuICBjb25zdCBvbkRyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ6IERyYWdFbmRFdmVudCkgPT4ge1xuICAgICAgY29uc3Qge2FjdGl2ZSwgb3Zlcn0gPSBldmVudDtcbiAgICAgIGNvbnN0IGFjdGl2ZUlkID0gYWN0aXZlLmlkIGFzIHN0cmluZztcbiAgICAgIGNvbnN0IG92ZXJJZCA9IG92ZXI/LmlkIGFzIHN0cmluZyB8IG51bGw7XG4gICAgICBjb25zdCBhY3RpdmVQYXJlbnQgPSBhY3RpdmUuZGF0YT8uY3VycmVudD8ucGFyZW50O1xuICAgICAgY29uc3QgYWN0aXZlVHlwZSA9IGFjdGl2ZS5kYXRhPy5jdXJyZW50Py50eXBlO1xuICAgICAgY29uc3Qgb3ZlclBhcmVudCA9IG92ZXI/LmRhdGE/LmN1cnJlbnQ/LnBhcmVudDtcbiAgICAgIGNvbnN0IG92ZXJUeXBlID0gb3Zlcj8uZGF0YT8uY3VycmVudD8udHlwZTtcbiAgICAgIHNldEFjdGl2ZUVsZW1lbnQodW5kZWZpbmVkKTtcblxuICAgICAgaWYgKCFvdmVySWQpIHtcbiAgICAgICAgaWYgKGFjdGl2ZVBhcmVudCAmJiBhY3RpdmVUeXBlID09PSBTT1JUQUJMRV9MQVlFUl9UWVBFKSB7XG4gICAgICAgICAgbGV0IG5ld0xheWVyT3JkZXIgPSByZW1vdmVFbGVtZW50RnJvbUxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlSWQpO1xuICAgICAgICAgIG5ld0xheWVyT3JkZXIgPSBhZGRMYXllck9yR3JvdXBUb0xheWVyT3JkZXIobmV3TGF5ZXJPcmRlciwgYWN0aXZlSWQsIG5ld0xheWVyT3JkZXIubGVuZ3RoKTtcbiAgICAgICAgICBkaXNwYXRjaChyZW9yZGVyTGF5ZXIobmV3TGF5ZXJPcmRlcikpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKG92ZXJUeXBlID09PSBEUk9QUEFCTEVfTUFQX0NPTlRBSU5FUl9UWVBFKSB7XG4gICAgICAgIGlmIChhY3RpdmVUeXBlID09PSBTT1JUQUJMRV9MQVlFUl9UWVBFKSB7XG4gICAgICAgICAgY29uc3QgbWFwSW5kZXggPSBvdmVyPy5kYXRhLmN1cnJlbnQ/LmluZGV4ID8/IDA7XG4gICAgICAgICAgZGlzcGF0Y2godG9nZ2xlTGF5ZXJGb3JNYXAobWFwSW5kZXgsIGFjdGl2ZUlkKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAob3ZlclR5cGUgPT09IFNPUlRBQkxFX0xBWUVSX0VORF9UWVBFKSB7XG4gICAgICAgIGNvbnN0IGdyb3VwT2JqID0gZ2V0TGF5ZXJHcm91cEZyb21MYXllck9yZGVyKGxheWVyT3JkZXIsIGFjdGl2ZUlkKTtcbiAgICAgICAgbGV0IG5ld0xheWVyT3JkZXIgPSByZW1vdmVFbGVtZW50RnJvbUxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlSWQpO1xuICAgICAgICBuZXdMYXllck9yZGVyID0gYWRkTGF5ZXJPckdyb3VwVG9MYXllck9yZGVyKFxuICAgICAgICAgIG5ld0xheWVyT3JkZXIsXG4gICAgICAgICAgZ3JvdXBPYmogPz8gYWN0aXZlSWQsXG4gICAgICAgICAgbmV3TGF5ZXJPcmRlci5sZW5ndGhcbiAgICAgICAgKTtcbiAgICAgICAgZGlzcGF0Y2gocmVvcmRlckxheWVyKG5ld0xheWVyT3JkZXIpKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBzd2FwIGxheWVycyBhdCBzYW1lIGxldmVsXG4gICAgICBpZiAoYWN0aXZlUGFyZW50Py5pZCA9PT0gb3ZlclBhcmVudD8uaWQpIHtcbiAgICAgICAgaWYgKCFhY3RpdmVQYXJlbnQpIHtcbiAgICAgICAgICBjb25zdCBuZXdMYXllck9yZGVyID0gcmVvcmRlckxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlSWQsIG92ZXJJZCk7XG4gICAgICAgICAgZGlzcGF0Y2gocmVvcmRlckxheWVyKG5ld0xheWVyT3JkZXIpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW50TGF5ZXJHcm91cCA9IGFjdGl2ZVBhcmVudCBhcyBMYXllck9yZGVyR3JvdXA7XG4gICAgICAgICAgY29uc3QgbmV3R3JvdXBMYXllck9yZGVyID0gcmVvcmRlckxheWVyT3JkZXIoXG4gICAgICAgICAgICBjdXJyZW50TGF5ZXJHcm91cC5sYXllck9yZGVyLFxuICAgICAgICAgICAgYWN0aXZlSWQsXG4gICAgICAgICAgICBvdmVySWRcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IG5ld0xheWVyR3JvdXAgPSB7XG4gICAgICAgICAgICAuLi5jdXJyZW50TGF5ZXJHcm91cCxcbiAgICAgICAgICAgIGxheWVyT3JkZXI6IG5ld0dyb3VwTGF5ZXJPcmRlclxuICAgICAgICAgIH07XG4gICAgICAgICAgY29uc3QgbmV3TGF5ZXJPcmRlciA9IHVwZGF0ZUxheWVyR3JvdXBJbkxheWVyT3JkZXIobGF5ZXJPcmRlciwgbmV3TGF5ZXJHcm91cCk7XG4gICAgICAgICAgZGlzcGF0Y2gocmVvcmRlckxheWVyKG5ld0xheWVyT3JkZXIpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIG1vdmUgaW50byBhIGdyb3VwIChlaXRoZXIgZW1wdHkgZ3JvdXAgZHJvcHBhYmxlIG9yIG9udG8gYSBsYXllciBpbnNpZGUgZ3JvdXApXG4gICAgICBpZiAob3ZlclR5cGUgPT09IFNPUlRBQkxFX0xBWUVSX0dST1VQX0RST1BQQUJMRV9UWVBFIHx8IG92ZXJQYXJlbnQpIHtcbiAgICAgICAgaWYgKGFjdGl2ZVR5cGUgPT09IFNPUlRBQkxFX0xBWUVSX1RZUEUpIHtcbiAgICAgICAgICBjb25zdCBjdXJyZW50TGF5ZXJHcm91cCA9IG92ZXJQYXJlbnRcbiAgICAgICAgICAgID8gb3ZlclBhcmVudFxuICAgICAgICAgICAgOiBnZXRMYXllckdyb3VwRnJvbUxheWVyT3JkZXIobGF5ZXJPcmRlciwgb3ZlcklkKTtcblxuICAgICAgICAgIGlmICghY3VycmVudExheWVyR3JvdXApIHJldHVybjtcblxuICAgICAgICAgIGNvbnN0IG92ZXJJbmRleCA9XG4gICAgICAgICAgICBvdmVyVHlwZSA9PT0gU09SVEFCTEVfTEFZRVJfR1JPVVBfRFJPUFBBQkxFX1RZUEVcbiAgICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICAgIDogZ2V0SW5kZXhGcm9tTGF5ZXJFbnRyeUlkKGN1cnJlbnRMYXllckdyb3VwLmxheWVyT3JkZXIsIG92ZXJJZCk7XG5cbiAgICAgICAgICBjb25zdCBuZXdMYXllckdyb3VwID0ge1xuICAgICAgICAgICAgLi4uY3VycmVudExheWVyR3JvdXAsXG4gICAgICAgICAgICBsYXllck9yZGVyOiBhZGRMYXllck9yR3JvdXBUb0xheWVyT3JkZXIoXG4gICAgICAgICAgICAgIGN1cnJlbnRMYXllckdyb3VwLmxheWVyT3JkZXIsXG4gICAgICAgICAgICAgIGFjdGl2ZUlkLFxuICAgICAgICAgICAgICBvdmVySW5kZXhcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgbGV0IG5ld0xheWVyT3JkZXIgPSByZW1vdmVFbGVtZW50RnJvbUxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlSWQpO1xuICAgICAgICAgIG5ld0xheWVyT3JkZXIgPSB1cGRhdGVMYXllckdyb3VwSW5MYXllck9yZGVyKG5ld0xheWVyT3JkZXIsIG5ld0xheWVyR3JvdXApO1xuICAgICAgICAgIGRpc3BhdGNoKHJlb3JkZXJMYXllcihuZXdMYXllck9yZGVyKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBtb3ZpbmcgbGF5ZXIvZ3JvdXAgb250byByb290XG4gICAgICBpZiAoIW92ZXJQYXJlbnQpIHtcbiAgICAgICAgY29uc3QgZ3JvdXBPYmogPSBnZXRMYXllckdyb3VwRnJvbUxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlSWQgYXMgc3RyaW5nKTtcbiAgICAgICAgbGV0IG5ld0xheWVyT3JkZXIgPSByZW1vdmVFbGVtZW50RnJvbUxheWVyT3JkZXIobGF5ZXJPcmRlciwgYWN0aXZlSWQpO1xuICAgICAgICBjb25zdCBvdmVySW5kZXggPSBvdmVyPy5kYXRhLmN1cnJlbnQ/LnNvcnRhYmxlPy5pbmRleCA/PyAwO1xuICAgICAgICBuZXdMYXllck9yZGVyID0gYWRkTGF5ZXJPckdyb3VwVG9MYXllck9yZGVyKG5ld0xheWVyT3JkZXIsIGdyb3VwT2JqID8/IGFjdGl2ZUlkLCBvdmVySW5kZXgpO1xuICAgICAgICBkaXNwYXRjaChyZW9yZGVyTGF5ZXIobmV3TGF5ZXJPcmRlcikpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2Rpc3BhdGNoLCBsYXllck9yZGVyXVxuICApO1xuXG4gIHJldHVybiB7YWN0aXZlRWxlbWVudCwgb25EcmFnU3RhcnQsIG9uRHJhZ0VuZH07XG59O1xuXG5leHBvcnQgZGVmYXVsdCB1c2VEbmRMYXllcnM7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFdBQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLFFBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLGNBQUEsR0FBQUgsT0FBQTtBQU9BLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQU82QixTQUFBSyxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxV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
package/dist/index.d.ts CHANGED
@@ -23,6 +23,7 @@ export { DEFAULT_KEPLER_GL_PROPS, default as KeplerGlFactory, getVisibleDatasets
23
23
  export { default as LayerAnimationControllerFactory } from './layer-animation-controller';
24
24
  export { Attribution, default as MapContainerFactory } from './map-container';
25
25
  export { default as MapsLayoutFactory } from './maps-layout';
26
+ export { default as LayoutSplitter, LayoutSplitterMode } from './common/layout-splitter';
26
27
  export { default as ModalContainerFactory } from './modal-container';
27
28
  export { default as PlotContainerFactory } from './plot-container';
28
29
  export { default as SidePanelFactory } from './side-panel';
@@ -54,6 +55,7 @@ export { default as DatasetLayerSectionFactory } from './side-panel/layer-panel/
54
55
  export { AddDataButtonFactory, default as DatasetSectionFactory } from './side-panel/layer-panel/dataset-section';
55
56
  export * from './side-panel/layer-panel/dimension-scale-selector';
56
57
  export { default as LayerListFactory } from './side-panel/layer-panel/layer-list';
58
+ export { default as LayerGroupHeaderFactory } from './side-panel/layer-panel/layer-group-header';
57
59
  export * from './side-panel/layer-panel/vis-config-by-field-selector';
58
60
  export { default as PanelViewListToggleFactory } from './side-panel/panel-view-list-toggle';
59
61
  export { default as DatasetInfoFactory } from './side-panel/common/dataset-info';
@@ -76,7 +78,6 @@ export { default as LayerGroupSelectorFactory } from './side-panel/map-style-pan
76
78
  export { default as MapStyleSelectorFactory } from './side-panel/map-style-panel/map-style-selector';
77
79
  export { default as CoordinateInfoFactory } from './map/coordinate-info';
78
80
  export { default as LayerHoverInfoFactory } from './map/layer-hover-info';
79
- export { default as LayerSelectorPanelFactory } from './map/layer-selector-panel';
80
81
  export { default as LazyTippy } from './map/lazy-tippy';
81
82
  export { default as LocalePanelFactory } from './map/locale-panel';
82
83
  export { default as MapControlFactory } from './map/map-control';
@@ -244,7 +245,7 @@ export type { PanelTabProps } from './side-panel/panel-tab';
244
245
  export type { CollapseButtonProps, SideBarProps } from './side-panel/side-bar';
245
246
  export { BottomWidgetInner, Button, ButtonGroup, CenterFlexbox, CenterVerticalFlexbox, CheckMark, DatasetSquare, Edit, IconRoundSmall, Icons, InlineInput, Input, InputLight, MapControlButton, PanelContent, PanelHeaderContent, PanelHeaderTitle, PanelLabel, PanelLabelBold, PanelLabelWrapper, SBFlexboxItem, SBFlexboxNoMargin, SelectText, SelectTextBold, SelectionButton, SidePanelDivider, SidePanelSection, SpaceBetweenFlexbox, StyledAttribution, StyledExportSection, StyledFilterContent, StyledFilteredOption, StyledMapContainer, StyledModalContent, StyledModalInputFootnote, StyledModalSection, StyledModalVerticalPanel, StyledPanelDropdown, StyledPanelHeader, StyledType, shouldForwardProp, TextArea, TextAreaLight, Tooltip, TruncatedTitleText, WidgetContainer } from './common';
246
247
  export { ArcLayerColorSelectorFactory, ChannelByValueSelectorFactory, ColorSelectorFactory, ColumnModeConfigFactory, DataTableFactory, FieldListItemFactoryFactory, InfoHelperFactory, LayerColorRangeSelectorFactory, LayerColorSelectorFactory, LayerColumnConfigFactory, LayerColumnModeConfigFactory, LayerConfigGroupFactory, LayerTypeListItemFactory, RangeSliderFactory, TimeRangeSliderFactory, VisConfigSliderFactory, VisConfigSwitchFactory, appInjector };
247
- export { DROPPABLE_MAP_CONTAINER_TYPE, SORTABLE_LAYER_TYPE, SORTABLE_EFFECT_TYPE, SORTABLE_SIDE_PANEL_TYPE, DND_MODIFIERS, DND_EMPTY_MODIFIERS } from './common/dnd-layer-items';
248
+ export { DROPPABLE_MAP_CONTAINER_TYPE, SORTABLE_LAYER_TYPE, SORTABLE_EFFECT_TYPE, SORTABLE_SIDE_PANEL_TYPE, SORTABLE_LAYER_GROUP_TYPE, SORTABLE_LAYER_GROUP_DROPPABLE_TYPE, DND_MODIFIERS, DND_EMPTY_MODIFIERS } from './common/dnd-layer-items';
248
249
  export declare const TimeRangeSlider: any;
249
250
  export declare const RangeSlider: any;
250
251
  export declare const VisConfigSlider: any;