@kepler.gl/components 3.2.5 → 3.3.0-alpha.0

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 (224) hide show
  1. package/dist/bottom-widget.d.ts +4 -4
  2. package/dist/common/action-panel.d.ts +3 -3
  3. package/dist/common/animation-control/animation-control.d.ts +1 -1
  4. package/dist/common/animation-control/playback-controls.d.ts +1 -1
  5. package/dist/common/color-legend.d.ts +4 -4
  6. package/dist/common/column-stats-chart.d.ts +3 -3
  7. package/dist/common/data-table/button.d.ts +1 -1
  8. package/dist/common/data-table/canvas.d.ts +0 -1
  9. package/dist/common/data-table/cell-size.d.ts +2 -2
  10. package/dist/common/data-table/display-format.d.ts +1 -1
  11. package/dist/common/data-table/header-cell.d.ts +2 -2
  12. package/dist/common/data-table/index.d.ts +7 -9
  13. package/dist/common/data-table/index.js +1 -1
  14. package/dist/common/data-table/option-dropdown.d.ts +1 -1
  15. package/dist/common/field-selector.d.ts +5 -5
  16. package/dist/common/field-token.d.ts +1 -1
  17. package/dist/common/file-uploader/file-drop.d.ts +1 -1
  18. package/dist/common/file-uploader/file-upload-progress.d.ts +1 -1
  19. package/dist/common/file-uploader/file-upload.d.ts +1 -1
  20. package/dist/common/flex-container.d.ts +2 -3
  21. package/dist/common/histogram-plot.d.ts +1 -1
  22. package/dist/common/icon-button.d.ts +16 -16
  23. package/dist/common/icons/base.d.ts +1 -1
  24. package/dist/common/icons/close.js +7 -6
  25. package/dist/common/icons/effects/distance-fog.d.ts +14 -0
  26. package/dist/common/icons/effects/distance-fog.js +79 -0
  27. package/dist/common/icons/effects/surface-fog.d.ts +14 -0
  28. package/dist/common/icons/effects/surface-fog.js +86 -0
  29. package/dist/common/icons/index.d.ts +3 -0
  30. package/dist/common/icons/index.js +22 -1
  31. package/dist/common/icons/zoom-out.d.ts +10 -0
  32. package/dist/common/icons/zoom-out.js +48 -0
  33. package/dist/common/item-selector/chickleted-input.d.ts +4 -4
  34. package/dist/common/item-selector/dropdown-list.d.ts +3 -3
  35. package/dist/common/item-selector/dropdown-select.d.ts +7 -7
  36. package/dist/common/item-selector/item-selector.d.ts +2 -2
  37. package/dist/common/item-selector/typeahead.d.ts +3 -3
  38. package/dist/common/loading-spinner.d.ts +2 -2
  39. package/dist/common/modal.d.ts +5 -5
  40. package/dist/common/portaled.d.ts +8 -25
  41. package/dist/common/progress-bar.d.ts +1 -1
  42. package/dist/common/radius-legend.d.ts +1 -1
  43. package/dist/common/range-brush.d.ts +1 -1
  44. package/dist/common/range-plot.d.ts +1 -1
  45. package/dist/common/slider/mouse-event.d.ts +1 -1
  46. package/dist/common/slider/slider-bar-handle.d.ts +2 -2
  47. package/dist/common/slider/slider-handle.d.ts +3 -3
  48. package/dist/common/slider/slider.d.ts +2 -2
  49. package/dist/common/styled-components.d.ts +157 -158
  50. package/dist/common/sync-timeline-control.d.ts +3 -3
  51. package/dist/common/time-range-slider-time-title.d.ts +1 -1
  52. package/dist/common/time-range-slider.d.ts +2 -2
  53. package/dist/common/timeline-slider.d.ts +1 -1
  54. package/dist/common/tippy-tooltip.d.ts +1 -1
  55. package/dist/common/toolbar-item.d.ts +1 -1
  56. package/dist/common/toolbar.d.ts +1 -1
  57. package/dist/common/vertical-toolbar.d.ts +2 -3
  58. package/dist/container.d.ts +6 -6
  59. package/dist/context.d.ts +3 -3
  60. package/dist/dnd-context.d.ts +2 -2
  61. package/dist/editor/editor.d.ts +1 -1
  62. package/dist/editor/editor.js +1 -1
  63. package/dist/editor/feature-action-panel.d.ts +1 -1
  64. package/dist/editor/feature-action-panel.js +1 -1
  65. package/dist/effects/compact-color-picker.d.ts +1 -1
  66. package/dist/effects/effect-configurator.d.ts +2 -2
  67. package/dist/effects/effect-configurator.js +52 -14
  68. package/dist/effects/effect-list.d.ts +1 -1
  69. package/dist/effects/effect-manager.d.ts +3 -3
  70. package/dist/effects/effect-manager.js +9 -2
  71. package/dist/effects/effect-panel-header.d.ts +2 -2
  72. package/dist/effects/effect-panel-header.js +2 -2
  73. package/dist/effects/effect-panel.d.ts +2 -2
  74. package/dist/effects/effect-time-configurator.d.ts +1 -1
  75. package/dist/effects/effect-time-selector.d.ts +1 -1
  76. package/dist/effects/effect-time-slider.d.ts +3 -3
  77. package/dist/effects/effect-type-dropdown-list.d.ts +2 -2
  78. package/dist/effects/effect-type-list-item.d.ts +1 -1
  79. package/dist/effects/effect-type-selector.d.ts +2 -2
  80. package/dist/effects/side-panel-title.d.ts +1 -1
  81. package/dist/effects/timezone-selector.d.ts +1 -1
  82. package/dist/filters/components.d.ts +2 -3
  83. package/dist/filters/filter-panels/types.d.ts +4 -4
  84. package/dist/filters/types.d.ts +8 -8
  85. package/dist/geocoder/geocoder.d.ts +3 -3
  86. package/dist/geocoder/geocoder.js +5 -1
  87. package/dist/geocoder-panel.d.ts +10 -2
  88. package/dist/geocoder-panel.js +3 -3
  89. package/dist/hooks/use-cloud-list-provider.d.ts +1 -1
  90. package/dist/hooks/use-dnd-effects.d.ts +1 -1
  91. package/dist/hooks/use-dnd-layers.d.ts +1 -1
  92. package/dist/hooks/use-feature-flags.d.ts +1 -1
  93. package/dist/hooks/use-fetch-raster-tile-metadata.d.ts +3 -3
  94. package/dist/hooks/use-fetch-vector-tile-metadata.d.ts +2 -2
  95. package/dist/hooks/use-legend-position.d.ts +8 -6
  96. package/dist/hooks/use-legend-position.js +27 -4
  97. package/dist/injector.d.ts +5 -5
  98. package/dist/kepler-gl.d.ts +55 -64
  99. package/dist/loading-indicator.d.ts +4 -4
  100. package/dist/loading-indicator.js +33 -8
  101. package/dist/map/effects/effect-control.d.ts +1 -1
  102. package/dist/map/layer-hover-info.d.ts +3 -3
  103. package/dist/map/layer-hover-info.js +8 -3
  104. package/dist/map/layer-selector-panel.d.ts +1 -1
  105. package/dist/map/lazy-tippy.js +3 -3
  106. package/dist/map/locale-panel.d.ts +1 -1
  107. package/dist/map/map-control-panel.d.ts +1 -1
  108. package/dist/map/map-control-toolbar.d.ts +6 -7
  109. package/dist/map/map-control-tooltip.d.ts +1 -1
  110. package/dist/map/map-control.d.ts +3 -2
  111. package/dist/map/map-control.js +1 -1
  112. package/dist/map/map-draw-panel.d.ts +1 -1
  113. package/dist/map/map-legend-panel.d.ts +4 -3
  114. package/dist/map/map-legend-panel.js +22 -9
  115. package/dist/map/map-legend.d.ts +10 -8
  116. package/dist/map/map-legend.js +37 -7
  117. package/dist/map/map-popover-content.d.ts +2 -2
  118. package/dist/map/map-popover.d.ts +2 -2
  119. package/dist/map/split-map-button.d.ts +1 -1
  120. package/dist/map/toggle-3d-button.d.ts +1 -1
  121. package/dist/map-container.d.ts +2 -2
  122. package/dist/map-container.js +50 -25
  123. package/dist/map-view-state-context.d.ts +9 -2
  124. package/dist/map-view-state-context.js +1 -1
  125. package/dist/modal-container.d.ts +3 -6
  126. package/dist/modals/cloud-components/cloud-header.d.ts +1 -1
  127. package/dist/modals/cloud-components/provider-select.d.ts +1 -1
  128. package/dist/modals/cloud-tile.d.ts +1 -1
  129. package/dist/modals/data-table-modal.d.ts +1 -1
  130. package/dist/modals/export-data-modal.js +2 -2
  131. package/dist/modals/export-image-modal.d.ts +1 -1
  132. package/dist/modals/export-image-modal.js +75 -7
  133. package/dist/modals/export-map-modal/components.d.ts +1 -1
  134. package/dist/modals/export-map-modal/export-html-map.d.ts +1 -1
  135. package/dist/modals/export-map-modal/export-html-map.js +3 -1
  136. package/dist/modals/export-map-modal/export-json-map.d.ts +1 -1
  137. package/dist/modals/image-modal-container.d.ts +1 -1
  138. package/dist/modals/load-data-modal.d.ts +2 -2
  139. package/dist/modals/modal-dialog.d.ts +0 -2
  140. package/dist/modals/overwrite-map-modal.d.ts +1 -1
  141. package/dist/modals/save-map-modal.d.ts +3 -3
  142. package/dist/modals/share-map-modal.d.ts +1 -1
  143. package/dist/modals/tilesets-modals/common.d.ts +3 -3
  144. package/dist/modals/tilesets-modals/common.js +1 -1
  145. package/dist/modals/tilesets-modals/load-data-footer.d.ts +1 -1
  146. package/dist/modals/tilesets-modals/load-tileset.d.ts +1 -1
  147. package/dist/modals/tilesets-modals/load-tileset.js +8 -2
  148. package/dist/modals/tilesets-modals/tileset-icon.d.ts +1 -1
  149. package/dist/modals/tilesets-modals/tileset-raster-form.d.ts +2 -2
  150. package/dist/modals/tilesets-modals/tileset-tile3d-form.d.ts +12 -0
  151. package/dist/modals/tilesets-modals/tileset-tile3d-form.js +388 -0
  152. package/dist/modals/tilesets-modals/tileset-vector-form.d.ts +3 -3
  153. package/dist/modals/tilesets-modals/tileset-wms-form.d.ts +1 -1
  154. package/dist/modals/tilesets-modals/tileset-wms-form.js +53 -10
  155. package/dist/plot-container.js +82 -11
  156. package/dist/side-panel/add-by-dataset-button.d.ts +1 -1
  157. package/dist/side-panel/common/dataset-info.d.ts +2 -2
  158. package/dist/side-panel/common/dataset-info.js +2 -2
  159. package/dist/side-panel/common/dataset-tag.d.ts +2 -2
  160. package/dist/side-panel/common/dataset-title.d.ts +2 -2
  161. package/dist/side-panel/common/source-data-catalog.d.ts +3 -3
  162. package/dist/side-panel/common/types.d.ts +8 -8
  163. package/dist/side-panel/custom-panel.d.ts +2 -2
  164. package/dist/side-panel/filter-manager.d.ts +3 -3
  165. package/dist/side-panel/filter-panel/add-filter-button.d.ts +1 -1
  166. package/dist/side-panel/filter-panel/filter-panel-header.d.ts +2 -2
  167. package/dist/side-panel/interaction-manager.d.ts +1 -1
  168. package/dist/side-panel/interaction-panel/brush-config.d.ts +1 -1
  169. package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +3 -3
  170. package/dist/side-panel/interaction-panel/tooltip-config.d.ts +1 -1
  171. package/dist/side-panel/layer-manager.d.ts +2 -2
  172. package/dist/side-panel/layer-panel/add-layer-button.d.ts +1 -1
  173. package/dist/side-panel/layer-panel/channel-by-value-selector.d.ts +1 -1
  174. package/dist/side-panel/layer-panel/color-breaks-panel.d.ts +4 -4
  175. package/dist/side-panel/layer-panel/color-palette-preset.d.ts +1 -1
  176. package/dist/side-panel/layer-panel/color-palette.d.ts +2 -2
  177. package/dist/side-panel/layer-panel/color-range-selector.d.ts +3 -3
  178. package/dist/side-panel/layer-panel/color-scale-selector.d.ts +4 -4
  179. package/dist/side-panel/layer-panel/color-selector.d.ts +3 -3
  180. package/dist/side-panel/layer-panel/column-selector.d.ts +1 -1
  181. package/dist/side-panel/layer-panel/custom-palette.d.ts +10 -10
  182. package/dist/side-panel/layer-panel/custom-picker.d.ts +1 -1
  183. package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +1 -1
  184. package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +1 -1
  185. package/dist/side-panel/layer-panel/dataset-section.d.ts +2 -2
  186. package/dist/side-panel/layer-panel/dimension-scale-selector.d.ts +1 -1
  187. package/dist/side-panel/layer-panel/how-to-button.d.ts +1 -1
  188. package/dist/side-panel/layer-panel/layer-color-selector.d.ts +3 -3
  189. package/dist/side-panel/layer-panel/layer-column-config.d.ts +1 -1
  190. package/dist/side-panel/layer-panel/layer-column-mode-config.d.ts +3 -3
  191. package/dist/side-panel/layer-panel/layer-config-group.d.ts +5 -5
  192. package/dist/side-panel/layer-panel/layer-configurator.d.ts +2 -2
  193. package/dist/side-panel/layer-panel/layer-configurator.js +27 -17
  194. package/dist/side-panel/layer-panel/layer-error-message.d.ts +1 -1
  195. package/dist/side-panel/layer-panel/layer-list.d.ts +2 -2
  196. package/dist/side-panel/layer-panel/layer-panel-header.d.ts +6 -5
  197. package/dist/side-panel/layer-panel/layer-panel-header.js +15 -5
  198. package/dist/side-panel/layer-panel/layer-panel.d.ts +1 -1
  199. package/dist/side-panel/layer-panel/layer-type-dropdown-list.d.ts +2 -2
  200. package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +2 -2
  201. package/dist/side-panel/layer-panel/layer-type-selector.d.ts +1 -1
  202. package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +1 -1
  203. package/dist/side-panel/layer-panel/raster-tile-layer-configurator.d.ts +1 -1
  204. package/dist/side-panel/layer-panel/single-color-palette.d.ts +1 -1
  205. package/dist/side-panel/layer-panel/text-label-panel.d.ts +1 -1
  206. package/dist/side-panel/layer-panel/vector-tile-layer-configurator.d.ts +2 -2
  207. package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +1 -1
  208. package/dist/side-panel/layer-panel/vis-config-slider.d.ts +1 -1
  209. package/dist/side-panel/layer-panel/vis-config-switch.d.ts +1 -1
  210. package/dist/side-panel/map-manager.d.ts +1 -1
  211. package/dist/side-panel/map-style-panel/map-layer-group-color-picker.d.ts +1 -1
  212. package/dist/side-panel/map-style-panel/map-layer-group-item.d.ts +2 -2
  213. package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +1 -1
  214. package/dist/side-panel/map-style-panel/map-style-selector.d.ts +1 -1
  215. package/dist/side-panel/panel-header-action.d.ts +1 -1
  216. package/dist/side-panel/panel-header.d.ts +12 -12
  217. package/dist/side-panel/panel-tab.d.ts +4 -4
  218. package/dist/side-panel/panel-title.d.ts +1 -1
  219. package/dist/side-panel/panel-toggle.d.ts +1 -1
  220. package/dist/side-panel/panel-view-list-toggle.d.ts +3 -3
  221. package/dist/side-panel/side-bar.d.ts +2 -2
  222. package/dist/side-panel.d.ts +1 -1
  223. package/dist/types.d.ts +3 -3
  224. package/package.json +23 -22
@@ -1,13 +1,13 @@
1
- import React from 'react';
2
- declare type StyledContainerProps = {
1
+ import React, { PropsWithChildren } from 'react';
2
+ type StyledContainerProps = {
3
3
  $isVisible?: boolean;
4
4
  $left: number;
5
5
  };
6
6
  export declare const StyledContainer: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledContainerProps>>;
7
- declare type LoadingIndicatorProps = {
7
+ type LoadingIndicatorProps = {
8
8
  isVisible?: boolean;
9
9
  activeSidePanel?: boolean;
10
10
  sidePanelWidth?: number;
11
11
  };
12
- declare const _default: React.FC<React.PropsWithChildren<LoadingIndicatorProps>>;
12
+ declare const _default: React.FC<PropsWithChildren<LoadingIndicatorProps>>;
13
13
  export default _default;
@@ -7,19 +7,23 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports["default"] = exports.StyledContainer = void 0;
9
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
- var _react = _interopRequireDefault(require("react"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
11
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
12
12
  var _layers = require("@kepler.gl/layers");
13
- var _templateObject; // SPDX-License-Identifier: MIT
13
+ var _templateObject, _templateObject2, _templateObject3; // SPDX-License-Identifier: MIT
14
14
  // Copyright contributors to the kepler.gl project
15
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
16
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
17
- var StyledContainer = exports.StyledContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n left: ", "px;\n bottom: ", "px;\n z-index: 1;\n color: ", ";\n opacity: ", ";\n transition: opacity 0.5s ease-in-out;\n background-color: ", ";\n border-radius: 0px;\n padding-left: 3px;\n padding-right: 3px;\n font-size: 12px;\n"])), function (props) {
17
+ var spin = (0, _styledComponents.keyframes)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n"])));
18
+ var Spinner = _styledComponents["default"].div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-block;\n width: 14px;\n height: 14px;\n margin-right: 8px;\n border: 2px solid ", ";\n border-top-color: transparent;\n border-radius: 50%;\n animation: ", " 0.8s linear infinite;\n vertical-align: middle;\n"])), function (props) {
19
+ return props.theme.textColorHl;
20
+ }, spin);
21
+ var StyledContainer = exports.StyledContainer = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n left: ", "px;\n bottom: ", "px;\n z-index: 1;\n color: ", ";\n opacity: ", ";\n transition: opacity 0.5s ease-in-out;\n background-color: ", ";\n padding: 8px 12px;\n font-size: 13px;\n font-weight: 500;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);\n backdrop-filter: blur(4px);\n display: flex;\n align-items: center;\n pointer-events: none;\n"])), function (props) {
18
22
  return props.$left;
19
23
  }, function (props) {
20
24
  return props.theme.sidePanel.margin.left;
21
25
  }, function (props) {
22
- return props.theme.textColorHl;
26
+ return props.theme.textColor;
23
27
  }, function (props) {
24
28
  return props.$isVisible ? 1 : 0;
25
29
  }, function (props) {
@@ -34,13 +38,34 @@ var LoadingIndicator = function LoadingIndicator(_ref) {
34
38
  theme = _ref.theme;
35
39
  var left = (activeSidePanel ? (sidePanelWidth || 0) + LEFT_POSITION_ADJUSTMENT : 0) + theme.sidePanel.margin.left;
36
40
 
37
- // Helper message to track number of raster tiles that are being loaded
41
+ // Helper message to track number of tiles that are being loaded
38
42
  var numRasterTilesInProgress = (0, _layers.getNumRasterTilesBeingLoaded)();
39
- var extraMessage = numRasterTilesInProgress < 1 ? '' : "".concat(numRasterTilesInProgress, " raster tile").concat(numRasterTilesInProgress === 1 ? ' is' : 's are', " being loaded");
43
+ var numVectorTilesInProgress = (0, _layers.getNumVectorTilesBeingLoaded)();
44
+ var extraMessage = '';
45
+ if (numRasterTilesInProgress > 0 && numVectorTilesInProgress > 0) {
46
+ // Both types loading: show combined count
47
+ var totalTiles = numRasterTilesInProgress + numVectorTilesInProgress;
48
+ extraMessage = "".concat(totalTiles, " tile").concat(totalTiles === 1 ? ' is' : 's are', " being loaded");
49
+ } else if (numRasterTilesInProgress > 0) {
50
+ // Only raster tiles loading
51
+ extraMessage = "".concat(numRasterTilesInProgress, " raster tile").concat(numRasterTilesInProgress === 1 ? ' is' : 's are', " being loaded");
52
+ } else if (numVectorTilesInProgress > 0) {
53
+ // Only vector tiles loading
54
+ extraMessage = "".concat(numVectorTilesInProgress, " vector tile").concat(numVectorTilesInProgress === 1 ? ' is' : 's are', " being loaded");
55
+ }
56
+
57
+ // Preserve the last message during fade-out
58
+ var lastMessageRef = (0, _react.useRef)(extraMessage);
59
+ (0, _react.useEffect)(function () {
60
+ if (isVisible && extraMessage) {
61
+ lastMessageRef.current = extraMessage;
62
+ }
63
+ }, [isVisible, extraMessage]);
64
+ var displayMessage = isVisible ? extraMessage : lastMessageRef.current;
40
65
  return /*#__PURE__*/_react["default"].createElement(StyledContainer, {
41
66
  $isVisible: isVisible,
42
67
  $left: left
43
- }, "Loading... ".concat(extraMessage));
68
+ }, /*#__PURE__*/_react["default"].createElement(Spinner, null), /*#__PURE__*/_react["default"].createElement("span", null, "Loading... ".concat(displayMessage)));
44
69
  };
45
70
  var _default = exports["default"] = (0, _styledComponents.withTheme)(LoadingIndicator);
46
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfbGF5ZXJzIiwiX3RlbXBsYXRlT2JqZWN0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiU3R5bGVkQ29udGFpbmVyIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCIkbGVmdCIsInRoZW1lIiwic2lkZVBhbmVsIiwibWFyZ2luIiwibGVmdCIsInRleHRDb2xvckhsIiwiJGlzVmlzaWJsZSIsInNpZGVQYW5lbEJnIiwiTEVGVF9QT1NJVElPTl9BREpVU1RNRU5UIiwiTG9hZGluZ0luZGljYXRvciIsIl9yZWYiLCJpc1Zpc2libGUiLCJhY3RpdmVTaWRlUGFuZWwiLCJzaWRlUGFuZWxXaWR0aCIsIm51bVJhc3RlclRpbGVzSW5Qcm9ncmVzcyIsImdldE51bVJhc3RlclRpbGVzQmVpbmdMb2FkZWQiLCJleHRyYU1lc3NhZ2UiLCJjb25jYXQiLCJjcmVhdGVFbGVtZW50IiwiX2RlZmF1bHQiLCJ3aXRoVGhlbWUiXSwic291cmNlcyI6WyIuLi9zcmMvbG9hZGluZy1pbmRpY2F0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge1Byb3BzV2l0aENoaWxkcmVufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkLCB7d2l0aFRoZW1lfSBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCB7Z2V0TnVtUmFzdGVyVGlsZXNCZWluZ0xvYWRlZH0gZnJvbSAnQGtlcGxlci5nbC9sYXllcnMnO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0ge1xuICAkaXNWaXNpYmxlPzogYm9vbGVhbjtcbiAgJGxlZnQ6IG51bWJlcjtcbn07XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZENvbnRhaW5lclByb3BzPmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAke3Byb3BzID0+IHByb3BzLiRsZWZ0fXB4O1xuICBib3R0b206ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsLm1hcmdpbi5sZWZ0fXB4O1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gIG9wYWNpdHk6ICR7cHJvcHMgPT4gKHByb3BzLiRpc1Zpc2libGUgPyAxIDogMCl9O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsQmd9O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICBwYWRkaW5nLXJpZ2h0OiAzcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbmA7XG5cbnR5cGUgTG9hZGluZ0luZGljYXRvclByb3BzID0ge1xuICBpc1Zpc2libGU/OiBib29sZWFuO1xuICBhY3RpdmVTaWRlUGFuZWw/OiBib29sZWFuO1xuICBzaWRlUGFuZWxXaWR0aD86IG51bWJlcjtcbn07XG5cbi8qKiBFeHRyYSBhZGp1c3RtZW50IGZvciB0aGUgbG9hZGluZyBpbmRpY2F0b3Igd2hlbiBzaWRlIHBhbmVsIGlzIHZpc2libGUgKi9cbmNvbnN0IExFRlRfUE9TSVRJT05fQURKVVNUTUVOVCA9IDM7XG5cbmNvbnN0IExvYWRpbmdJbmRpY2F0b3I6IFJlYWN0LkZDPExvYWRpbmdJbmRpY2F0b3JQcm9wcyAmIHt0aGVtZTogYW55fT4gPSAoe1xuICBpc1Zpc2libGUsXG4gIGFjdGl2ZVNpZGVQYW5lbCxcbiAgc2lkZVBhbmVsV2lkdGgsXG4gIHRoZW1lXG59KSA9PiB7XG4gIGNvbnN0IGxlZnQgPVxuICAgIChhY3RpdmVTaWRlUGFuZWwgPyAoc2lkZVBhbmVsV2lkdGggfHwgMCkgKyBMRUZUX1BPU0lUSU9OX0FESlVTVE1FTlQgOiAwKSArXG4gICAgdGhlbWUuc2lkZVBhbmVsLm1hcmdpbi5sZWZ0O1xuXG4gIC8vIEhlbHBlciBtZXNzYWdlIHRvIHRyYWNrIG51bWJlciBvZiByYXN0ZXIgdGlsZXMgdGhhdCBhcmUgYmVpbmcgbG9hZGVkXG4gIGNvbnN0IG51bVJhc3RlclRpbGVzSW5Qcm9ncmVzcyA9IGdldE51bVJhc3RlclRpbGVzQmVpbmdMb2FkZWQoKTtcbiAgY29uc3QgZXh0cmFNZXNzYWdlID1cbiAgICBudW1SYXN0ZXJUaWxlc0luUHJvZ3Jlc3MgPCAxXG4gICAgICA/ICcnXG4gICAgICA6IGAke251bVJhc3RlclRpbGVzSW5Qcm9ncmVzc30gcmFzdGVyIHRpbGUke1xuICAgICAgICAgIG51bVJhc3RlclRpbGVzSW5Qcm9ncmVzcyA9PT0gMSA/ICcgaXMnIDogJ3MgYXJlJ1xuICAgICAgICB9IGJlaW5nIGxvYWRlZGA7XG5cbiAgcmV0dXJuIChcbiAgICA8U3R5bGVkQ29udGFpbmVyICRpc1Zpc2libGU9e2lzVmlzaWJsZX0gJGxlZnQ9e2xlZnR9PlxuICAgICAge2BMb2FkaW5nLi4uICR7ZXh0cmFNZXNzYWdlfWB9XG4gICAgPC9TdHlsZWRDb250YWluZXI+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoVGhlbWUoTG9hZGluZ0luZGljYXRvcikgYXMgUmVhY3QuRkM8UHJvcHNXaXRoQ2hpbGRyZW48TG9hZGluZ0luZGljYXRvclByb3BzPj47XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFDLHVCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxPQUFBLEdBQUFILE9BQUE7QUFBK0QsSUFBQUksZUFBQSxFQU4vRDtBQUNBO0FBQUEsU0FBQUMseUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFKLHdCQUFBSSxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFBLENBQUEsQ0FBQUksVUFBQSxTQUFBSixDQUFBLGVBQUFBLENBQUEsZ0JBQUFLLE9BQUEsQ0FBQUwsQ0FBQSwwQkFBQUEsQ0FBQSxzQkFBQUEsQ0FBQSxRQUFBRyxDQUFBLEdBQUFKLHdCQUFBLENBQUFHLENBQUEsT0FBQUMsQ0FBQSxJQUFBQSxDQUFBLENBQUFHLEdBQUEsQ0FBQU4sQ0FBQSxVQUFBRyxDQUFBLENBQUFJLEdBQUEsQ0FBQVAsQ0FBQSxPQUFBUSxDQUFBLEtBQUFDLFNBQUEsVUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxDQUFBLElBQUFkLENBQUEsb0JBQUFjLENBQUEsT0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFoQixDQUFBLEVBQUFjLENBQUEsU0FBQUcsQ0FBQSxHQUFBUCxDQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBYyxDQUFBLFVBQUFHLENBQUEsS0FBQUEsQ0FBQSxDQUFBVixHQUFBLElBQUFVLENBQUEsQ0FBQUMsR0FBQSxJQUFBUCxNQUFBLENBQUFDLGNBQUEsQ0FBQUosQ0FBQSxFQUFBTSxDQUFBLEVBQUFHLENBQUEsSUFBQVQsQ0FBQSxDQUFBTSxDQUFBLElBQUFkLENBQUEsQ0FBQWMsQ0FBQSxZQUFBTixDQUFBLGNBQUFSLENBQUEsRUFBQUcsQ0FBQSxJQUFBQSxDQUFBLENBQUFlLEdBQUEsQ0FBQWxCLENBQUEsRUFBQVEsQ0FBQSxHQUFBQSxDQUFBO0FBWU8sSUFBTVcsZUFBZSxHQUFBQyxPQUFBLENBQUFELGVBQUEsR0FBR0UsNEJBQU0sQ0FBQ0MsR0FBRyxDQUFBeEIsZUFBQSxLQUFBQSxlQUFBLE9BQUF5Qix1QkFBQSwrUkFFL0IsVUFBQUMsS0FBSztFQUFBLE9BQUlBLEtBQUssQ0FBQ0MsS0FBSztBQUFBLEdBQ2xCLFVBQUFELEtBQUs7RUFBQSxPQUFJQSxLQUFLLENBQUNFLEtBQUssQ0FBQ0MsU0FBUyxDQUFDQyxNQUFNLENBQUNDLElBQUk7QUFBQSxHQUUzQyxVQUFBTCxLQUFLO0VBQUEsT0FBSUEsS0FBSyxDQUFDRSxLQUFLLENBQUNJLFdBQVc7QUFBQSxHQUM5QixVQUFBTixLQUFLO0VBQUEsT0FBS0EsS0FBSyxDQUFDTyxVQUFVLEdBQUcsQ0FBQyxHQUFHLENBQUM7QUFBQSxDQUFDLEVBRTFCLFVBQUFQLEtBQUs7RUFBQSxPQUFJQSxLQUFLLENBQUNFLEtBQUssQ0FBQ00sV0FBVztBQUFBLEVBS3JEO0FBUUQ7QUFDQSxJQUFNQyx3QkFBd0IsR0FBRyxDQUFDO0FBRWxDLElBQU1DLGdCQUFnRSxHQUFHLFNBQW5FQSxnQkFBZ0VBLENBQUFDLElBQUEsRUFLaEU7RUFBQSxJQUpKQyxTQUFTLEdBQUFELElBQUEsQ0FBVEMsU0FBUztJQUNUQyxlQUFlLEdBQUFGLElBQUEsQ0FBZkUsZUFBZTtJQUNmQyxjQUFjLEdBQUFILElBQUEsQ0FBZEcsY0FBYztJQUNkWixLQUFLLEdBQUFTLElBQUEsQ0FBTFQsS0FBSztFQUVMLElBQU1HLElBQUksR0FDUixDQUFDUSxlQUFlLEdBQUcsQ0FBQ0MsY0FBYyxJQUFJLENBQUMsSUFBSUwsd0JBQXdCLEdBQUcsQ0FBQyxJQUN2RVAsS0FBSyxDQUFDQyxTQUFTLENBQUNDLE1BQU0sQ0FBQ0MsSUFBSTs7RUFFN0I7RUFDQSxJQUFNVSx3QkFBd0IsR0FBRyxJQUFBQyxvQ0FBNEIsRUFBQyxDQUFDO0VBQy9ELElBQU1DLFlBQVksR0FDaEJGLHdCQUF3QixHQUFHLENBQUMsR0FDeEIsRUFBRSxNQUFBRyxNQUFBLENBQ0NILHdCQUF3QixrQkFBQUcsTUFBQSxDQUN6Qkgsd0JBQXdCLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxPQUFPLGtCQUNuQztFQUVyQixvQkFDRS9DLE1BQUEsWUFBQW1ELGFBQUEsQ0FBQ3hCLGVBQWU7SUFBQ1ksVUFBVSxFQUFFSyxTQUFVO0lBQUNYLEtBQUssRUFBRUk7RUFBSyxpQkFBQWEsTUFBQSxDQUNuQ0QsWUFBWSxDQUNaLENBQUM7QUFFdEIsQ0FBQztBQUFDLElBQUFHLFFBQUEsR0FBQXhCLE9BQUEsY0FFYSxJQUFBeUIsMkJBQVMsRUFBQ1gsZ0JBQWdCLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
71
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9sYXllcnMiLCJfdGVtcGxhdGVPYmplY3QiLCJfdGVtcGxhdGVPYmplY3QyIiwiX3RlbXBsYXRlT2JqZWN0MyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsInNwaW4iLCJrZXlmcmFtZXMiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsIlNwaW5uZXIiLCJzdHlsZWQiLCJkaXYiLCJwcm9wcyIsInRoZW1lIiwidGV4dENvbG9ySGwiLCJTdHlsZWRDb250YWluZXIiLCJleHBvcnRzIiwiJGxlZnQiLCJzaWRlUGFuZWwiLCJtYXJnaW4iLCJsZWZ0IiwidGV4dENvbG9yIiwiJGlzVmlzaWJsZSIsInNpZGVQYW5lbEJnIiwiTEVGVF9QT1NJVElPTl9BREpVU1RNRU5UIiwiTG9hZGluZ0luZGljYXRvciIsIl9yZWYiLCJpc1Zpc2libGUiLCJhY3RpdmVTaWRlUGFuZWwiLCJzaWRlUGFuZWxXaWR0aCIsIm51bVJhc3RlclRpbGVzSW5Qcm9ncmVzcyIsImdldE51bVJhc3RlclRpbGVzQmVpbmdMb2FkZWQiLCJudW1WZWN0b3JUaWxlc0luUHJvZ3Jlc3MiLCJnZXROdW1WZWN0b3JUaWxlc0JlaW5nTG9hZGVkIiwiZXh0cmFNZXNzYWdlIiwidG90YWxUaWxlcyIsImNvbmNhdCIsImxhc3RNZXNzYWdlUmVmIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiY3VycmVudCIsImRpc3BsYXlNZXNzYWdlIiwiY3JlYXRlRWxlbWVudCIsIl9kZWZhdWx0Iiwid2l0aFRoZW1lIl0sInNvdXJjZXMiOlsiLi4vc3JjL2xvYWRpbmctaW5kaWNhdG9yLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtQcm9wc1dpdGhDaGlsZHJlbiwgdXNlUmVmLCB1c2VFZmZlY3R9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQsIHt3aXRoVGhlbWUsIGtleWZyYW1lc30gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQge2dldE51bVJhc3RlclRpbGVzQmVpbmdMb2FkZWQsIGdldE51bVZlY3RvclRpbGVzQmVpbmdMb2FkZWR9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcblxudHlwZSBTdHlsZWRDb250YWluZXJQcm9wcyA9IHtcbiAgJGlzVmlzaWJsZT86IGJvb2xlYW47XG4gICRsZWZ0OiBudW1iZXI7XG59O1xuXG5jb25zdCBzcGluID0ga2V5ZnJhbWVzYFxuICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG5gO1xuXG5jb25zdCBTcGlubmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgYm9yZGVyOiAycHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogJHtzcGlufSAwLjhzIGxpbmVhciBpbmZpbml0ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZENvbnRhaW5lclByb3BzPmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAke3Byb3BzID0+IHByb3BzLiRsZWZ0fXB4O1xuICBib3R0b206ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsLm1hcmdpbi5sZWZ0fXB4O1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy4kaXNWaXNpYmxlID8gMSA6IDApfTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbEJnfTtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuYDtcblxudHlwZSBMb2FkaW5nSW5kaWNhdG9yUHJvcHMgPSB7XG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XG4gIGFjdGl2ZVNpZGVQYW5lbD86IGJvb2xlYW47XG4gIHNpZGVQYW5lbFdpZHRoPzogbnVtYmVyO1xufTtcblxuLyoqIEV4dHJhIGFkanVzdG1lbnQgZm9yIHRoZSBsb2FkaW5nIGluZGljYXRvciB3aGVuIHNpZGUgcGFuZWwgaXMgdmlzaWJsZSAqL1xuY29uc3QgTEVGVF9QT1NJVElPTl9BREpVU1RNRU5UID0gMztcblxuY29uc3QgTG9hZGluZ0luZGljYXRvcjogUmVhY3QuRkM8TG9hZGluZ0luZGljYXRvclByb3BzICYge3RoZW1lOiBhbnl9PiA9ICh7XG4gIGlzVmlzaWJsZSxcbiAgYWN0aXZlU2lkZVBhbmVsLFxuICBzaWRlUGFuZWxXaWR0aCxcbiAgdGhlbWVcbn0pID0+IHtcbiAgY29uc3QgbGVmdCA9XG4gICAgKGFjdGl2ZVNpZGVQYW5lbCA/IChzaWRlUGFuZWxXaWR0aCB8fCAwKSArIExFRlRfUE9TSVRJT05fQURKVVNUTUVOVCA6IDApICtcbiAgICB0aGVtZS5zaWRlUGFuZWwubWFyZ2luLmxlZnQ7XG5cbiAgLy8gSGVscGVyIG1lc3NhZ2UgdG8gdHJhY2sgbnVtYmVyIG9mIHRpbGVzIHRoYXQgYXJlIGJlaW5nIGxvYWRlZFxuICBjb25zdCBudW1SYXN0ZXJUaWxlc0luUHJvZ3Jlc3MgPSBnZXROdW1SYXN0ZXJUaWxlc0JlaW5nTG9hZGVkKCk7XG4gIGNvbnN0IG51bVZlY3RvclRpbGVzSW5Qcm9ncmVzcyA9IGdldE51bVZlY3RvclRpbGVzQmVpbmdMb2FkZWQoKTtcblxuICBsZXQgZXh0cmFNZXNzYWdlID0gJyc7XG4gIGlmIChudW1SYXN0ZXJUaWxlc0luUHJvZ3Jlc3MgPiAwICYmIG51bVZlY3RvclRpbGVzSW5Qcm9ncmVzcyA+IDApIHtcbiAgICAvLyBCb3RoIHR5cGVzIGxvYWRpbmc6IHNob3cgY29tYmluZWQgY291bnRcbiAgICBjb25zdCB0b3RhbFRpbGVzID0gbnVtUmFzdGVyVGlsZXNJblByb2dyZXNzICsgbnVtVmVjdG9yVGlsZXNJblByb2dyZXNzO1xuICAgIGV4dHJhTWVzc2FnZSA9IGAke3RvdGFsVGlsZXN9IHRpbGUke3RvdGFsVGlsZXMgPT09IDEgPyAnIGlzJyA6ICdzIGFyZSd9IGJlaW5nIGxvYWRlZGA7XG4gIH0gZWxzZSBpZiAobnVtUmFzdGVyVGlsZXNJblByb2dyZXNzID4gMCkge1xuICAgIC8vIE9ubHkgcmFzdGVyIHRpbGVzIGxvYWRpbmdcbiAgICBleHRyYU1lc3NhZ2UgPSBgJHtudW1SYXN0ZXJUaWxlc0luUHJvZ3Jlc3N9IHJhc3RlciB0aWxlJHtcbiAgICAgIG51bVJhc3RlclRpbGVzSW5Qcm9ncmVzcyA9PT0gMSA/ICcgaXMnIDogJ3MgYXJlJ1xuICAgIH0gYmVpbmcgbG9hZGVkYDtcbiAgfSBlbHNlIGlmIChudW1WZWN0b3JUaWxlc0luUHJvZ3Jlc3MgPiAwKSB7XG4gICAgLy8gT25seSB2ZWN0b3IgdGlsZXMgbG9hZGluZ1xuICAgIGV4dHJhTWVzc2FnZSA9IGAke251bVZlY3RvclRpbGVzSW5Qcm9ncmVzc30gdmVjdG9yIHRpbGUke1xuICAgICAgbnVtVmVjdG9yVGlsZXNJblByb2dyZXNzID09PSAxID8gJyBpcycgOiAncyBhcmUnXG4gICAgfSBiZWluZyBsb2FkZWRgO1xuICB9XG5cbiAgLy8gUHJlc2VydmUgdGhlIGxhc3QgbWVzc2FnZSBkdXJpbmcgZmFkZS1vdXRcbiAgY29uc3QgbGFzdE1lc3NhZ2VSZWYgPSB1c2VSZWYoZXh0cmFNZXNzYWdlKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlICYmIGV4dHJhTWVzc2FnZSkge1xuICAgICAgbGFzdE1lc3NhZ2VSZWYuY3VycmVudCA9IGV4dHJhTWVzc2FnZTtcbiAgICB9XG4gIH0sIFtpc1Zpc2libGUsIGV4dHJhTWVzc2FnZV0pO1xuXG4gIGNvbnN0IGRpc3BsYXlNZXNzYWdlID0gaXNWaXNpYmxlID8gZXh0cmFNZXNzYWdlIDogbGFzdE1lc3NhZ2VSZWYuY3VycmVudDtcblxuICByZXR1cm4gKFxuICAgIDxTdHlsZWRDb250YWluZXIgJGlzVmlzaWJsZT17aXNWaXNpYmxlfSAkbGVmdD17bGVmdH0+XG4gICAgICA8U3Bpbm5lciAvPlxuICAgICAgPHNwYW4+e2BMb2FkaW5nLi4uICR7ZGlzcGxheU1lc3NhZ2V9YH08L3NwYW4+XG4gICAgPC9TdHlsZWRDb250YWluZXI+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoVGhlbWUoTG9hZGluZ0luZGljYXRvcikgYXMgUmVhY3QuRkM8UHJvcHNXaXRoQ2hpbGRyZW48TG9hZGluZ0luZGljYXRvclByb3BzPj47XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUdB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
@@ -4,7 +4,7 @@ import MapControlTooltipFactory from '../map-control-tooltip';
4
4
  interface EffectControlIcons {
5
5
  effectsIcon: ComponentType<any>;
6
6
  }
7
- export declare type EffectControlProps = {
7
+ export type EffectControlProps = {
8
8
  mapControls: MapControls;
9
9
  onToggleMapControl: (control: string) => void;
10
10
  actionIcons: EffectControlIcons;
@@ -5,12 +5,12 @@ import { Layer } from '@kepler.gl/layers';
5
5
  import { LayerHoverProp } from '@kepler.gl/reducers';
6
6
  import { VisState } from '@kepler.gl/schemas';
7
7
  export declare const StyledLayerName: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<Omit<import("styled-components/dist/types").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>, "ref"> & {
8
- ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
8
+ ref?: ((instance: HTMLDivElement | null) => void | React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES]) | React.RefObject<HTMLDivElement> | null | undefined;
9
9
  }, never>> & Omit<import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>, keyof React.Component<any, {}, any>>;
10
- export declare type EntryInfoProps = Merge<LayerHoverProp, {
10
+ export type EntryInfoProps = Merge<LayerHoverProp, {
11
11
  fieldsToShow: TooltipField[];
12
12
  }>;
13
- export declare type EntryInfoRowProps = {
13
+ export type EntryInfoRowProps = {
14
14
  data: LayerHoverProp['data'];
15
15
  fields: Field[];
16
16
  layer: Layer;
@@ -12,6 +12,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
12
12
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
13
  var _react = _interopRequireWildcard(require("react"));
14
14
  var _styledComponents = _interopRequireDefault(require("styled-components"));
15
+ var _truncate = _interopRequireDefault(require("lodash/truncate"));
15
16
  var _styledComponents2 = require("../common/styled-components");
16
17
  var _icons = require("../common/icons");
17
18
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -27,7 +28,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
27
28
  var StyledLayerName = exports.StyledLayerName = (0, _styledComponents["default"])(_styledComponents2.CenterFlexbox)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n font-size: 12px;\n letter-spacing: 0.43px;\n text-transform: capitalize;\n\n svg {\n margin-right: 4px;\n }\n"])), function (props) {
28
29
  return props.theme.textColorHl;
29
30
  });
30
- var StyledTable = _styledComponents["default"].table(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n & .row__delta-value {\n text-align: right;\n margin-left: 6px;\n\n &.positive {\n color: ", ";\n }\n\n &.negative {\n color: ", ";\n }\n }\n & .row__value,\n & .row__name {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: no-wrap;\n }\n"])), function (props) {
31
+ var StyledTable = _styledComponents["default"].table(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n & .row__delta-value {\n text-align: right;\n margin-left: 6px;\n\n &.positive {\n color: ", ";\n }\n\n &.negative {\n color: ", ";\n }\n }\n & .row__name {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n & .row__value {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: pre-line;\n max-width: 250px;\n }\n"])), function (props) {
31
32
  return props.theme.notificationColors.success;
32
33
  }, function (props) {
33
34
  return props.theme.negativeBtnActBgd;
@@ -35,6 +36,7 @@ var StyledTable = _styledComponents["default"].table(_templateObject2 || (_templ
35
36
  var StyledDivider = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n // offset divider to reach popover edge\n margin-left: -14px;\n margin-right: -14px;\n border-bottom: 1px solid ", ";\n"])), function (props) {
36
37
  return props.theme.panelBorderColor;
37
38
  });
39
+ var TOOLTIP_VALUE_MAX_LENGTH = 256;
38
40
  var Row = function Row(_ref) {
39
41
  var name = _ref.name,
40
42
  value = _ref.value,
@@ -44,6 +46,9 @@ var Row = function Row(_ref) {
44
46
  if (!url && value && typeof value === 'string' && value.match(/^http/)) {
45
47
  url = value;
46
48
  }
49
+ var displayValue = typeof value === 'string' && value.length > TOOLTIP_VALUE_MAX_LENGTH ? (0, _truncate["default"])(value, {
50
+ length: TOOLTIP_VALUE_MAX_LENGTH
51
+ }) : value;
47
52
  var asImg = /<img>/.test(name);
48
53
  return /*#__PURE__*/_react["default"].createElement("tr", {
49
54
  className: "layer-hover-info__row",
@@ -58,7 +63,7 @@ var Row = function Row(_ref) {
58
63
  target: "_blank",
59
64
  rel: "noopener noreferrer",
60
65
  href: url
61
- }, value) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", null, value), (0, _commonUtils.notNullorUndefined)(deltaValue) ? /*#__PURE__*/_react["default"].createElement("span", {
66
+ }, displayValue) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("span", null, displayValue), (0, _commonUtils.notNullorUndefined)(deltaValue) ? /*#__PURE__*/_react["default"].createElement("span", {
62
67
  className: "row__delta-value ".concat((deltaValue === null || deltaValue === void 0 ? void 0 : deltaValue.toString().charAt(0)) === '+' ? 'positive' : 'negative')
63
68
  }, deltaValue) : null)));
64
69
  };
@@ -242,4 +247,4 @@ var LayerHoverInfoFactory = function LayerHoverInfoFactory() {
242
247
  return LayerHoverInfo;
243
248
  };
244
249
  var _default = exports["default"] = LayerHoverInfoFactory;
245
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfaWNvbnMiLCJfcHJvcFR5cGVzIiwiX2NvbW1vblV0aWxzIiwiX3V0aWxzIiwiX3JlZHVjZXJzIiwiX3JlYWN0SW50bCIsIl9leGNsdWRlZCIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mMyIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIlN0eWxlZExheWVyTmFtZSIsImV4cG9ydHMiLCJzdHlsZWQiLCJDZW50ZXJGbGV4Ym94IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJwcm9wcyIsInRoZW1lIiwidGV4dENvbG9ySGwiLCJTdHlsZWRUYWJsZSIsInRhYmxlIiwibm90aWZpY2F0aW9uQ29sb3JzIiwic3VjY2VzcyIsIm5lZ2F0aXZlQnRuQWN0QmdkIiwiU3R5bGVkRGl2aWRlciIsImRpdiIsInBhbmVsQm9yZGVyQ29sb3IiLCJSb3ciLCJfcmVmIiwibmFtZSIsInZhbHVlIiwiZGVsdGFWYWx1ZSIsInVybCIsIm1hdGNoIiwiYXNJbWciLCJ0ZXN0IiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImtleSIsInJlcGxhY2UiLCJzcmMiLCJ0YXJnZXQiLCJyZWwiLCJocmVmIiwiRnJhZ21lbnQiLCJub3ROdWxsb3JVbmRlZmluZWQiLCJjb25jYXQiLCJ0b1N0cmluZyIsImNoYXJBdCIsIkVudHJ5SW5mbyIsIl9yZWYyIiwiZmllbGRzVG9TaG93IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsIm1hcCIsIml0ZW0iLCJFbnRyeUluZm9Sb3ciLCJfZXh0ZW5kczIiLCJfcmVmMyIsImxheWVyIiwiZmllbGRzIiwiZGF0YSIsInByaW1hcnlEYXRhIiwiY29tcGFyZVR5cGUiLCJjdXJyZW50VGltZSIsImZpZWxkSWR4IiwiZmluZEluZGV4IiwiZiIsImZpZWxkIiwiZmllbGRWYWx1ZUFjY2Vzc29yIiwiYWNjZXNzVlNGaWVsZFZhbHVlIiwiRGF0YVJvdyIsImluZGV4IiwiX3Jvd0luZGV4IiwicHJpbWFyeVZhbHVlIiwiZGlzcGxheURlbHRhVmFsdWUiLCJfdHlwZW9mMiIsImdldFRvb2x0aXBEaXNwbGF5RGVsdGFWYWx1ZSIsImVycm9yIiwiZGlzcGxheVZhbHVlIiwiZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSIsImRpc3BsYXlOYW1lIiwiQ2VsbEluZm8iLCJfcmVmNCIsIl9yZWY1IiwiY29uZmlnIiwiY29sb3JGaWVsZCIsInNpemVGaWVsZCIsImNvbG9yVmFsdWUiLCJ1c2VNZW1vIiwidmlzdWFsQ2hhbm5lbHMiLCJjb2xvciIsImZpbmQiLCJlbGV2YXRpb25WYWx1ZSIsInNpemUiLCJhZ2dyZWdhdGVkRGF0YSIsInJlZHVjZSIsImFjYyIsIl9kYXRhJGFnZ3JlZ2F0ZWREYXRhIiwiZGF0YUZvckZpZWxkIiwibWVhc3VyZSIsInB1c2giLCJjYXBpdGFsaXplRmlyc3RMZXR0ZXIiLCJjb2xvck1lYXN1cmUiLCJnZXRWaXN1YWxDaGFubmVsRGVzY3JpcHRpb24iLCJzaXplTWVhc3VyZSIsIlN0cmluZyIsInBvaW50cyIsImxlbmd0aCIsImlkeCIsIkxheWVySG92ZXJJbmZvRmFjdG9yeSIsIkxheWVySG92ZXJJbmZvIiwiaW50bCIsInVzZUludGwiLCJoYXNGaWVsZHNUb1Nob3ciLCJmaWVsZFZhbHVlcyIsImtleXMiLCJ3bXNGZWF0dXJlRGF0YSIsIkxheWVycyIsImhlaWdodCIsImxhYmVsIiwiX3JlZjYiLCJfcmVmNyIsImxhYmVsTWVzc2FnZSIsImZvcm1hdE1lc3NhZ2UiLCJpZCIsImlzQWdncmVnYXRlZCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsImFycmF5T2YiLCJhbnkiLCJvYmplY3QiLCJvbmVPZlR5cGUiLCJfZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXAvbGF5ZXItaG92ZXItaW5mby50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7dXNlTWVtb30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0NvbXBhcmVUeXBlLCBGaWVsZCwgTWVyZ2UsIFRvb2x0aXBGaWVsZH0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge0NlbnRlckZsZXhib3h9IGZyb20gJy4uL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge0xheWVyc30gZnJvbSAnLi4vY29tbW9uL2ljb25zJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQge25vdE51bGxvclVuZGVmaW5lZH0gZnJvbSAnQGtlcGxlci5nbC9jb21tb24tdXRpbHMnO1xuaW1wb3J0IHtEYXRhUm93fSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7XG4gIEFnZ3JlZ2F0aW9uTGF5ZXJIb3ZlckRhdGEsXG4gIExheWVySG92ZXJQcm9wLFxuICBnZXRUb29sdGlwRGlzcGxheURlbHRhVmFsdWUsXG4gIGdldFRvb2x0aXBEaXNwbGF5VmFsdWVcbn0gZnJvbSAnQGtlcGxlci5nbC9yZWR1Y2Vycyc7XG5pbXBvcnQge3VzZUludGx9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHtWaXNTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC9zY2hlbWFzJztcbmltcG9ydCB7Y2FwaXRhbGl6ZUZpcnN0TGV0dGVyfSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IFN0eWxlZExheWVyTmFtZSA9IHN0eWxlZChDZW50ZXJGbGV4Ym94KWBcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICBmb250LXNpemU6IDEycHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQzcHg7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZFRhYmxlID0gc3R5bGVkLnRhYmxlYFxuICAmIC5yb3dfX2RlbHRhLXZhbHVlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogNnB4O1xuXG4gICAgJi5wb3NpdGl2ZSB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ub3RpZmljYXRpb25Db2xvcnMuc3VjY2Vzc307XG4gICAgfVxuXG4gICAgJi5uZWdhdGl2ZSB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5uZWdhdGl2ZUJ0bkFjdEJnZH07XG4gICAgfVxuICB9XG4gICYgLnJvd19fdmFsdWUsXG4gICYgLnJvd19fbmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm8td3JhcDtcbiAgfVxuYDtcblxuY29uc3QgU3R5bGVkRGl2aWRlciA9IHN0eWxlZC5kaXZgXG4gIC8vIG9mZnNldCBkaXZpZGVyIHRvIHJlYWNoIHBvcG92ZXIgZWRnZVxuICBtYXJnaW4tbGVmdDogLTE0cHg7XG4gIG1hcmdpbi1yaWdodDogLTE0cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQm9yZGVyQ29sb3J9O1xuYDtcblxuaW50ZXJmYWNlIFJvd1Byb3BzIHtcbiAgbmFtZTogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xuICBkZWx0YVZhbHVlPzogc3RyaW5nIHwgbnVsbDtcbiAgdXJsPzogc3RyaW5nO1xufVxuXG5jb25zdCBSb3c6IFJlYWN0LkZDPFJvd1Byb3BzPiA9ICh7bmFtZSwgdmFsdWUsIGRlbHRhVmFsdWUsIHVybH0pID0+IHtcbiAgLy8gU2V0ICd1cmwnIHRvICd2YWx1ZScgaWYgaXQgbG9va3MgbGlrZSBhIHVybFxuICBpZiAoIXVybCAmJiB2YWx1ZSAmJiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLm1hdGNoKC9eaHR0cC8pKSB7XG4gICAgdXJsID0gdmFsdWU7XG4gIH1cblxuICBjb25zdCBhc0ltZyA9IC88aW1nPi8udGVzdChuYW1lKTtcbiAgcmV0dXJuIChcbiAgICA8dHIgY2xhc3NOYW1lPVwibGF5ZXItaG92ZXItaW5mb19fcm93XCIga2V5PXtuYW1lfT5cbiAgICAgIDx0ZCBjbGFzc05hbWU9XCJyb3dfX25hbWVcIj57YXNJbWcgPyBuYW1lLnJlcGxhY2UoJzxpbWc+JywgJycpIDogbmFtZX08L3RkPlxuICAgICAgPHRkIGNsYXNzTmFtZT1cInJvd19fdmFsdWVcIj5cbiAgICAgICAge2FzSW1nID8gKFxuICAgICAgICAgIDxpbWcgc3JjPXt2YWx1ZX0gLz5cbiAgICAgICAgKSA6IHVybCA/IChcbiAgICAgICAgICA8YSB0YXJnZXQ9XCJfYmxhbmtcIiByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCIgaHJlZj17dXJsfT5cbiAgICAgICAgICAgIHt2YWx1ZX1cbiAgICAgICAgICA8L2E+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPD5cbiAgICAgICAgICAgIDxzcGFuPnt2YWx1ZX08L3NwYW4+XG4gICAgICAgICAgICB7bm90TnVsbG9yVW5kZWZpbmVkKGRlbHRhVmFsdWUpID8gKFxuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YHJvd19fZGVsdGEtdmFsdWUgJHtcbiAgICAgICAgICAgICAgICAgIGRlbHRhVmFsdWU/LnRvU3RyaW5nKCkuY2hhckF0KDApID09PSAnKycgPyAncG9zaXRpdmUnIDogJ25lZ2F0aXZlJ1xuICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2RlbHRhVmFsdWV9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICApO1xufTtcblxuZXhwb3J0IHR5cGUgRW50cnlJbmZvUHJvcHMgPSBNZXJnZTxMYXllckhvdmVyUHJvcCwge2ZpZWxkc1RvU2hvdzogVG9vbHRpcEZpZWxkW119PjtcblxuY29uc3QgRW50cnlJbmZvOiBSZWFjdC5GQzxFbnRyeUluZm9Qcm9wcz4gPSAoe2ZpZWxkc1RvU2hvdywgLi4ucHJvcHN9KSA9PiAoXG4gIDx0Ym9keT5cbiAgICB7ZmllbGRzVG9TaG93Lm1hcChpdGVtID0+IChcbiAgICAgIDxFbnRyeUluZm9Sb3cga2V5PXtpdGVtLm5hbWV9IGl0ZW09e2l0ZW19IHsuLi5wcm9wc30gLz5cbiAgICApKX1cbiAgPC90Ym9keT5cbik7XG5cbmV4cG9ydCB0eXBlIEVudHJ5SW5mb1Jvd1Byb3BzID0ge1xuICBkYXRhOiBMYXllckhvdmVyUHJvcFsnZGF0YSddO1xuICBmaWVsZHM6IEZpZWxkW107XG4gIGxheWVyOiBMYXllcjtcbiAgcHJpbWFyeURhdGE/OiBMYXllckhvdmVyUHJvcFsncHJpbWFyeURhdGEnXTtcbiAgY29tcGFyZVR5cGU/OiBDb21wYXJlVHlwZTtcbiAgY3VycmVudFRpbWU/OiBWaXNTdGF0ZVsnYW5pbWF0aW9uQ29uZmlnJ11bJ2N1cnJlbnRUaW1lJ107XG4gIGl0ZW06IFRvb2x0aXBGaWVsZDtcbn07XG5cbmNvbnN0IEVudHJ5SW5mb1JvdzogUmVhY3QuRkM8RW50cnlJbmZvUm93UHJvcHM+ID0gKHtcbiAgbGF5ZXIsXG4gIGl0ZW0sXG4gIGZpZWxkcyxcbiAgZGF0YSxcbiAgcHJpbWFyeURhdGEsXG4gIGNvbXBhcmVUeXBlLFxuICBjdXJyZW50VGltZVxufSkgPT4ge1xuICBjb25zdCBmaWVsZElkeCA9IGZpZWxkcy5maW5kSW5kZXgoZiA9PiBmLm5hbWUgPT09IGl0ZW0ubmFtZSk7XG4gIGlmIChmaWVsZElkeCA8IDApIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBmaWVsZCA9IGZpZWxkc1tmaWVsZElkeF07XG4gIGNvbnN0IGZpZWxkVmFsdWVBY2Nlc3NvciA9IGxheWVyLmFjY2Vzc1ZTRmllbGRWYWx1ZShmaWVsZCwgY3VycmVudFRpbWUpO1xuICBjb25zdCB2YWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihmaWVsZCwgZGF0YSBpbnN0YW5jZW9mIERhdGFSb3cgPyB7aW5kZXg6IGRhdGEuX3Jvd0luZGV4fSA6IGRhdGEpO1xuXG4gIC8vIEhhbmRsZSBXTVMgbGF5ZXIgZGF0YSBpbiBjb21wYXJpc29uIG1vZGUgLSBXTVMgbGF5ZXJzIGRvbid0IGhhdmUgY29tcGFyYWJsZSBmaWVsZCBkYXRhXG4gIGxldCBwcmltYXJ5VmFsdWUgPSBudWxsO1xuICBsZXQgZGlzcGxheURlbHRhVmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIGlmIChwcmltYXJ5RGF0YSkge1xuICAgIHRyeSB7XG4gICAgICAvLyBPbmx5IGNhbGN1bGF0ZSBwcmltYXJ5IHZhbHVlIGlmIHByaW1hcnlEYXRhIGhhcyBhIGNvbXBhdGlibGUgc3RydWN0dXJlXG4gICAgICBpZiAoXG4gICAgICAgIHByaW1hcnlEYXRhIGluc3RhbmNlb2YgRGF0YVJvdyB8fFxuICAgICAgICAocHJpbWFyeURhdGEgJiYgdHlwZW9mIHByaW1hcnlEYXRhID09PSAnb2JqZWN0JyAmJiAnaW5kZXgnIGluIHByaW1hcnlEYXRhKVxuICAgICAgKSB7XG4gICAgICAgIHByaW1hcnlWYWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBwcmltYXJ5RGF0YSBpbnN0YW5jZW9mIERhdGFSb3cgPyB7aW5kZXg6IHByaW1hcnlEYXRhLl9yb3dJbmRleH0gOiBwcmltYXJ5RGF0YVxuICAgICAgICApO1xuXG4gICAgICAgIGRpc3BsYXlEZWx0YVZhbHVlID0gZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlKHtcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICBwcmltYXJ5VmFsdWUsXG4gICAgICAgICAgY29tcGFyZVR5cGVcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIElmIHRoZXJlJ3MgYW4gZXJyb3IgYWNjZXNzaW5nIHByaW1hcnlEYXRhIChlLmcuLCBXTVMgbGF5ZXIgZGF0YSksIHNraXAgY29tcGFyaXNvblxuICAgICAgcHJpbWFyeVZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkaXNwbGF5VmFsdWUgPSBnZXRUb29sdGlwRGlzcGxheVZhbHVlKHtpdGVtLCBmaWVsZCwgdmFsdWV9KTtcblxuICByZXR1cm4gKFxuICAgIDxSb3dcbiAgICAgIG5hbWU9e2ZpZWxkLmRpc3BsYXlOYW1lIHx8IGZpZWxkLm5hbWV9XG4gICAgICB2YWx1ZT17ZGlzcGxheVZhbHVlfVxuICAgICAgZGVsdGFWYWx1ZT17ZGlzcGxheURlbHRhVmFsdWV9XG4gICAgLz5cbiAgKTtcbn07XG5cbi8vIFRPRE86IHN1cHBvcnRpbmcgY29tcGFyYXRpdmUgdmFsdWUgZm9yIGFnZ3JlZ2F0ZWQgY2VsbHMgYXMgd2VsbFxuY29uc3QgQ2VsbEluZm8gPSAoe1xuICBmaWVsZHNUb1Nob3csXG4gIGRhdGEsXG4gIGxheWVyXG59OiB7XG4gIGRhdGE6IEFnZ3JlZ2F0aW9uTGF5ZXJIb3ZlckRhdGE7XG4gIGZpZWxkc1RvU2hvdzogVG9vbHRpcEZpZWxkW107XG4gIGxheWVyOiBMYXllcjtcbn0pID0+IHtcbiAgY29uc3Qge2NvbG9yRmllbGQsIHNpemVGaWVsZH0gPSBsYXllci5jb25maWcgYXMgYW55O1xuXG4gIGNvbnN0IGNvbG9yVmFsdWUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoY29sb3JGaWVsZCAmJiBsYXllci52aXN1YWxDaGFubmVscy5jb2xvcikge1xuICAgICAgY29uc3QgaXRlbSA9IGZpZWxkc1RvU2hvdy5maW5kKGZpZWxkID0+IGZpZWxkLm5hbWUgPT09IGNvbG9yRmllbGQubmFtZSk7XG4gICAgICByZXR1cm4gZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSh7aXRlbSwgZmllbGQ6IGNvbG9yRmllbGQsIHZhbHVlOiBkYXRhLmNvbG9yVmFsdWV9KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH0sIFtmaWVsZHNUb1Nob3csIGNvbG9yRmllbGQsIGxheWVyLCBkYXRhLmNvbG9yVmFsdWVdKTtcblxuICBjb25zdCBlbGV2YXRpb25WYWx1ZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChzaXplRmllbGQgJiYgbGF5ZXIudmlzdWFsQ2hhbm5lbHMuc2l6ZSkge1xuICAgICAgY29uc3QgaXRlbSA9IGZpZWxkc1RvU2hvdy5maW5kKGZpZWxkID0+IGZpZWxkLm5hbWUgPT09IHNpemVGaWVsZC5uYW1lKTtcbiAgICAgIHJldHVybiBnZXRUb29sdGlwRGlzcGxheVZhbHVlKHtpdGVtLCBmaWVsZDogc2l6ZUZpZWxkLCB2YWx1ZTogZGF0YS5lbGV2YXRpb25WYWx1ZX0pO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfSwgW2ZpZWxkc1RvU2hvdywgc2l6ZUZpZWxkLCBsYXllciwgZGF0YS5lbGV2YXRpb25WYWx1ZV0pO1xuXG4gIGNvbnN0IGFnZ3JlZ2F0ZWREYXRhID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGRhdGEuYWdncmVnYXRlZERhdGEgJiYgZmllbGRzVG9TaG93KSB7XG4gICAgICByZXR1cm4gZmllbGRzVG9TaG93LnJlZHVjZSgoYWNjLCBmaWVsZCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhRm9yRmllbGQgPSBkYXRhLmFnZ3JlZ2F0ZWREYXRhPy5bZmllbGQubmFtZV07XG4gICAgICAgIGlmIChkYXRhRm9yRmllbGQ/Lm1lYXN1cmUgJiYgZmllbGQubmFtZSAhPT0gY29sb3JGaWVsZD8ubmFtZSkge1xuICAgICAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IGAke2NhcGl0YWxpemVGaXJzdExldHRlcihkYXRhRm9yRmllbGQubWVhc3VyZSl9IG9mICR7ZmllbGQubmFtZX1gLFxuICAgICAgICAgICAgdmFsdWU6IGRhdGFGb3JGaWVsZC52YWx1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCBbXSBhcyB7bmFtZTogc3RyaW5nOyB2YWx1ZT86IHN0cmluZ31bXSk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfSwgW2RhdGEuYWdncmVnYXRlZERhdGEsIGZpZWxkc1RvU2hvdywgY29sb3JGaWVsZD8ubmFtZV0pO1xuXG4gIGNvbnN0IGNvbG9yTWVhc3VyZSA9IGxheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignY29sb3InKS5tZWFzdXJlO1xuICBjb25zdCBzaXplTWVhc3VyZSA9IGxheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignc2l6ZScpLm1lYXN1cmU7XG4gIHJldHVybiAoXG4gICAgPHRib2R5PlxuICAgICAgPFJvdyBuYW1lPXsndG90YWwgcG9pbnRzJ30ga2V5PVwiY291bnRcIiB2YWx1ZT17U3RyaW5nKGRhdGEucG9pbnRzICYmIGRhdGEucG9pbnRzLmxlbmd0aCl9IC8+XG4gICAgICB7Y29sb3JGaWVsZCAmJiBsYXllci52aXN1YWxDaGFubmVscy5jb2xvciAmJiBjb2xvck1lYXN1cmUgPyAoXG4gICAgICAgIDxSb3cgbmFtZT17Y29sb3JNZWFzdXJlfSBrZXk9XCJjb2xvclwiIHZhbHVlPXtjb2xvclZhbHVlIHx8ICdOL0EnfSAvPlxuICAgICAgKSA6IG51bGx9XG4gICAgICB7c2l6ZUZpZWxkICYmIGxheWVyLnZpc3VhbENoYW5uZWxzLnNpemUgJiYgc2l6ZU1lYXN1cmUgPyAoXG4gICAgICAgIDxSb3cgbmFtZT17c2l6ZU1lYXN1cmV9IGtleT1cInNpemVcIiB2YWx1ZT17ZWxldmF0aW9uVmFsdWUgfHwgJ04vQSd9IC8+XG4gICAgICApIDogbnVsbH1cbiAgICAgIHthZ2dyZWdhdGVkRGF0YS5tYXAoKGRhdGFGb3JGaWVsZCwgaWR4KSA9PiAoXG4gICAgICAgIDxSb3cgbmFtZT17ZGF0YUZvckZpZWxkLm5hbWV9IGtleT17YGRhdGFfJHtpZHh9YH0gdmFsdWU9e2RhdGFGb3JGaWVsZC52YWx1ZSB8fCAnTi9BJ30gLz5cbiAgICAgICkpfVxuICAgIDwvdGJvZHk+XG4gICk7XG59O1xuXG5jb25zdCBMYXllckhvdmVySW5mb0ZhY3RvcnkgPSAoKSA9PiB7XG4gIGNvbnN0IExheWVySG92ZXJJbmZvID0gcHJvcHMgPT4ge1xuICAgIGNvbnN0IHtkYXRhLCBsYXllcn0gPSBwcm9wcztcbiAgICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuICAgIGlmICghZGF0YSB8fCAhbGF5ZXIpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGhhc0ZpZWxkc1RvU2hvdyA9XG4gICAgICAoZGF0YS5maWVsZFZhbHVlcyAmJiBPYmplY3Qua2V5cyhkYXRhLmZpZWxkVmFsdWVzKS5sZW5ndGggPiAwKSB8fFxuICAgICAgKGRhdGEud21zRmVhdHVyZURhdGEgJiYgZGF0YS53bXNGZWF0dXJlRGF0YS5sZW5ndGggPiAwKSB8fFxuICAgICAgKHByb3BzLmZpZWxkc1RvU2hvdyAmJiBwcm9wcy5maWVsZHNUb1Nob3cubGVuZ3RoID4gMCk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJtYXAtcG9wb3Zlcl9fbGF5ZXItaW5mb1wiPlxuICAgICAgICA8U3R5bGVkTGF5ZXJOYW1lIGNsYXNzTmFtZT1cIm1hcC1wb3BvdmVyX19sYXllci1uYW1lXCI+XG4gICAgICAgICAgPExheWVycyBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICB7cHJvcHMubGF5ZXIuY29uZmlnLmxhYmVsfVxuICAgICAgICA8L1N0eWxlZExheWVyTmFtZT5cbiAgICAgICAge2hhc0ZpZWxkc1RvU2hvdyAmJiA8U3R5bGVkRGl2aWRlciAvPn1cbiAgICAgICAgPFN0eWxlZFRhYmxlPlxuICAgICAgICAgIHtkYXRhLndtc0ZlYXR1cmVEYXRhID8gKFxuICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICB7ZGF0YS53bXNGZWF0dXJlRGF0YS5tYXAoKHtuYW1lLCB2YWx1ZX0sIGkpID0+IChcbiAgICAgICAgICAgICAgICA8Um93IGtleT17aX0gbmFtZT17bmFtZX0gdmFsdWU9e3ZhbHVlfSAvPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgKSA6IGRhdGEuZmllbGRWYWx1ZXMgPyAoXG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgIHtkYXRhLmZpZWxkVmFsdWVzLm1hcCgoe2xhYmVsTWVzc2FnZSwgdmFsdWV9LCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgPFJvdyBrZXk9e2l9IG5hbWU9e2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6IGxhYmVsTWVzc2FnZX0pfSB2YWx1ZT17dmFsdWV9IC8+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICApIDogcHJvcHMubGF5ZXIuaXNBZ2dyZWdhdGVkID8gKFxuICAgICAgICAgICAgPENlbGxJbmZvIHsuLi5wcm9wc30gLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPEVudHJ5SW5mbyB7Li4ucHJvcHN9IC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TdHlsZWRUYWJsZT5cbiAgICAgICAge2hhc0ZpZWxkc1RvU2hvdyAmJiA8U3R5bGVkRGl2aWRlciAvPn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgTGF5ZXJIb3ZlckluZm8ucHJvcFR5cGVzID0ge1xuICAgIGZpZWxkczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgZmllbGRzVG9TaG93OiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICBsYXllcjogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBkYXRhOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSwgUHJvcFR5cGVzLm9iamVjdF0pXG4gIH07XG4gIHJldHVybiBMYXllckhvdmVySW5mbztcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExheWVySG92ZXJJbmZvRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUVBLElBQUFHLGtCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFILHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBTSxZQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxNQUFBLEdBQUFQLE9BQUE7QUFFQSxJQUFBUSxTQUFBLEdBQUFSLE9BQUE7QUFNQSxJQUFBUyxVQUFBLEdBQUFULE9BQUE7QUFBbUMsSUFBQVUsU0FBQTtBQUFBLElBQUFDLGVBQUEsRUFBQUMsZ0JBQUEsRUFBQUMsZ0JBQUEsRUFsQm5DO0FBQ0E7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFB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
250
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdHJ1bmNhdGUiLCJfc3R5bGVkQ29tcG9uZW50czIiLCJfaWNvbnMiLCJfcHJvcFR5cGVzIiwiX2NvbW1vblV0aWxzIiwiX3V0aWxzIiwiX3JlZHVjZXJzIiwiX3JlYWN0SW50bCIsIl9leGNsdWRlZCIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mMyIsImhhcyIsImdldCIsIm4iLCJfX3Byb3RvX18iLCJhIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJ1IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaSIsInNldCIsIlN0eWxlZExheWVyTmFtZSIsImV4cG9ydHMiLCJzdHlsZWQiLCJDZW50ZXJGbGV4Ym94IiwiX3RhZ2dlZFRlbXBsYXRlTGl0ZXJhbDIiLCJwcm9wcyIsInRoZW1lIiwidGV4dENvbG9ySGwiLCJTdHlsZWRUYWJsZSIsInRhYmxlIiwibm90aWZpY2F0aW9uQ29sb3JzIiwic3VjY2VzcyIsIm5lZ2F0aXZlQnRuQWN0QmdkIiwiU3R5bGVkRGl2aWRlciIsImRpdiIsInBhbmVsQm9yZGVyQ29sb3IiLCJUT09MVElQX1ZBTFVFX01BWF9MRU5HVEgiLCJSb3ciLCJfcmVmIiwibmFtZSIsInZhbHVlIiwiZGVsdGFWYWx1ZSIsInVybCIsIm1hdGNoIiwiZGlzcGxheVZhbHVlIiwibGVuZ3RoIiwidHJ1bmNhdGUiLCJhc0ltZyIsInRlc3QiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwia2V5IiwicmVwbGFjZSIsInNyYyIsInRhcmdldCIsInJlbCIsImhyZWYiLCJGcmFnbWVudCIsIm5vdE51bGxvclVuZGVmaW5lZCIsImNvbmNhdCIsInRvU3RyaW5nIiwiY2hhckF0IiwiRW50cnlJbmZvIiwiX3JlZjIiLCJmaWVsZHNUb1Nob3ciLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMyIiwibWFwIiwiaXRlbSIsIkVudHJ5SW5mb1JvdyIsIl9leHRlbmRzMiIsIl9yZWYzIiwibGF5ZXIiLCJmaWVsZHMiLCJkYXRhIiwicHJpbWFyeURhdGEiLCJjb21wYXJlVHlwZSIsImN1cnJlbnRUaW1lIiwiZmllbGRJZHgiLCJmaW5kSW5kZXgiLCJmIiwiZmllbGQiLCJmaWVsZFZhbHVlQWNjZXNzb3IiLCJhY2Nlc3NWU0ZpZWxkVmFsdWUiLCJEYXRhUm93IiwiaW5kZXgiLCJfcm93SW5kZXgiLCJwcmltYXJ5VmFsdWUiLCJkaXNwbGF5RGVsdGFWYWx1ZSIsIl90eXBlb2YyIiwiZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlIiwiZXJyb3IiLCJnZXRUb29sdGlwRGlzcGxheVZhbHVlIiwiZGlzcGxheU5hbWUiLCJDZWxsSW5mbyIsIl9yZWY0IiwiX3JlZjUiLCJjb25maWciLCJjb2xvckZpZWxkIiwic2l6ZUZpZWxkIiwiY29sb3JWYWx1ZSIsInVzZU1lbW8iLCJ2aXN1YWxDaGFubmVscyIsImNvbG9yIiwiZmluZCIsImVsZXZhdGlvblZhbHVlIiwic2l6ZSIsImFnZ3JlZ2F0ZWREYXRhIiwicmVkdWNlIiwiYWNjIiwiX2RhdGEkYWdncmVnYXRlZERhdGEiLCJkYXRhRm9yRmllbGQiLCJtZWFzdXJlIiwicHVzaCIsImNhcGl0YWxpemVGaXJzdExldHRlciIsImNvbG9yTWVhc3VyZSIsImdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbiIsInNpemVNZWFzdXJlIiwiU3RyaW5nIiwicG9pbnRzIiwiaWR4IiwiTGF5ZXJIb3ZlckluZm9GYWN0b3J5IiwiTGF5ZXJIb3ZlckluZm8iLCJpbnRsIiwidXNlSW50bCIsImhhc0ZpZWxkc1RvU2hvdyIsImZpZWxkVmFsdWVzIiwia2V5cyIsIndtc0ZlYXR1cmVEYXRhIiwiTGF5ZXJzIiwiaGVpZ2h0IiwibGFiZWwiLCJfcmVmNiIsIl9yZWY3IiwibGFiZWxNZXNzYWdlIiwiZm9ybWF0TWVzc2FnZSIsImlkIiwiaXNBZ2dyZWdhdGVkIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwiYXJyYXlPZiIsImFueSIsIm9iamVjdCIsIm9uZU9mVHlwZSIsIl9kZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hcC9sYXllci1ob3Zlci1pbmZvLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHt1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB0cnVuY2F0ZSBmcm9tICdsb2Rhc2gvdHJ1bmNhdGUnO1xuaW1wb3J0IHtDb21wYXJlVHlwZSwgRmllbGQsIE1lcmdlLCBUb29sdGlwRmllbGR9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtDZW50ZXJGbGV4Ym94fSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtMYXllcnN9IGZyb20gJy4uL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHtub3ROdWxsb3JVbmRlZmluZWR9IGZyb20gJ0BrZXBsZXIuZ2wvY29tbW9uLXV0aWxzJztcbmltcG9ydCB7RGF0YVJvd30gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge0xheWVyfSBmcm9tICdAa2VwbGVyLmdsL2xheWVycyc7XG5pbXBvcnQge1xuICBBZ2dyZWdhdGlvbkxheWVySG92ZXJEYXRhLFxuICBMYXllckhvdmVyUHJvcCxcbiAgZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlLFxuICBnZXRUb29sdGlwRGlzcGxheVZhbHVlXG59IGZyb20gJ0BrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuaW1wb3J0IHt1c2VJbnRsfSBmcm9tICdyZWFjdC1pbnRsJztcbmltcG9ydCB7VmlzU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvc2NoZW1hcyc7XG5pbXBvcnQge2NhcGl0YWxpemVGaXJzdExldHRlcn0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRMYXllck5hbWUgPSBzdHlsZWQoQ2VudGVyRmxleGJveClgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsZXR0ZXItc3BhY2luZzogMC40M3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRUYWJsZSA9IHN0eWxlZC50YWJsZWBcbiAgJiAucm93X19kZWx0YS12YWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcblxuICAgICYucG9zaXRpdmUge1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubm90aWZpY2F0aW9uQ29sb3JzLnN1Y2Nlc3N9O1xuICAgIH1cblxuICAgICYubmVnYXRpdmUge1xuICAgICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubmVnYXRpdmVCdG5BY3RCZ2R9O1xuICAgIH1cbiAgfVxuICAmIC5yb3dfX25hbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICAmIC5yb3dfX3ZhbHVlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgICBtYXgtd2lkdGg6IDI1MHB4O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWREaXZpZGVyID0gc3R5bGVkLmRpdmBcbiAgLy8gb2Zmc2V0IGRpdmlkZXIgdG8gcmVhY2ggcG9wb3ZlciBlZGdlXG4gIG1hcmdpbi1sZWZ0OiAtMTRweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTRweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCb3JkZXJDb2xvcn07XG5gO1xuXG5pbnRlcmZhY2UgUm93UHJvcHMge1xuICBuYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGRlbHRhVmFsdWU/OiBzdHJpbmcgfCBudWxsO1xuICB1cmw/OiBzdHJpbmc7XG59XG5cbmNvbnN0IFRPT0xUSVBfVkFMVUVfTUFYX0xFTkdUSCA9IDI1NjtcblxuY29uc3QgUm93OiBSZWFjdC5GQzxSb3dQcm9wcz4gPSAoe25hbWUsIHZhbHVlLCBkZWx0YVZhbHVlLCB1cmx9KSA9PiB7XG4gIC8vIFNldCAndXJsJyB0byAndmFsdWUnIGlmIGl0IGxvb2tzIGxpa2UgYSB1cmxcbiAgaWYgKCF1cmwgJiYgdmFsdWUgJiYgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiB2YWx1ZS5tYXRjaCgvXmh0dHAvKSkge1xuICAgIHVybCA9IHZhbHVlO1xuICB9XG5cbiAgY29uc3QgZGlzcGxheVZhbHVlID1cbiAgICB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIHZhbHVlLmxlbmd0aCA+IFRPT0xUSVBfVkFMVUVfTUFYX0xFTkdUSFxuICAgICAgPyB0cnVuY2F0ZSh2YWx1ZSwge2xlbmd0aDogVE9PTFRJUF9WQUxVRV9NQVhfTEVOR1RIfSlcbiAgICAgIDogdmFsdWU7XG5cbiAgY29uc3QgYXNJbWcgPSAvPGltZz4vLnRlc3QobmFtZSk7XG4gIHJldHVybiAoXG4gICAgPHRyIGNsYXNzTmFtZT1cImxheWVyLWhvdmVyLWluZm9fX3Jvd1wiIGtleT17bmFtZX0+XG4gICAgICA8dGQgY2xhc3NOYW1lPVwicm93X19uYW1lXCI+e2FzSW1nID8gbmFtZS5yZXBsYWNlKCc8aW1nPicsICcnKSA6IG5hbWV9PC90ZD5cbiAgICAgIDx0ZCBjbGFzc05hbWU9XCJyb3dfX3ZhbHVlXCI+XG4gICAgICAgIHthc0ltZyA/IChcbiAgICAgICAgICA8aW1nIHNyYz17dmFsdWV9IC8+XG4gICAgICAgICkgOiB1cmwgPyAoXG4gICAgICAgICAgPGEgdGFyZ2V0PVwiX2JsYW5rXCIgcmVsPVwibm9vcGVuZXIgbm9yZWZlcnJlclwiIGhyZWY9e3VybH0+XG4gICAgICAgICAgICB7ZGlzcGxheVZhbHVlfVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPHNwYW4+e2Rpc3BsYXlWYWx1ZX08L3NwYW4+XG4gICAgICAgICAgICB7bm90TnVsbG9yVW5kZWZpbmVkKGRlbHRhVmFsdWUpID8gKFxuICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17YHJvd19fZGVsdGEtdmFsdWUgJHtcbiAgICAgICAgICAgICAgICAgIGRlbHRhVmFsdWU/LnRvU3RyaW5nKCkuY2hhckF0KDApID09PSAnKycgPyAncG9zaXRpdmUnIDogJ25lZ2F0aXZlJ1xuICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2RlbHRhVmFsdWV9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgPC90ZD5cbiAgICA8L3RyPlxuICApO1xufTtcblxuZXhwb3J0IHR5cGUgRW50cnlJbmZvUHJvcHMgPSBNZXJnZTxMYXllckhvdmVyUHJvcCwge2ZpZWxkc1RvU2hvdzogVG9vbHRpcEZpZWxkW119PjtcblxuY29uc3QgRW50cnlJbmZvOiBSZWFjdC5GQzxFbnRyeUluZm9Qcm9wcz4gPSAoe2ZpZWxkc1RvU2hvdywgLi4ucHJvcHN9KSA9PiAoXG4gIDx0Ym9keT5cbiAgICB7ZmllbGRzVG9TaG93Lm1hcChpdGVtID0+IChcbiAgICAgIDxFbnRyeUluZm9Sb3cga2V5PXtpdGVtLm5hbWV9IGl0ZW09e2l0ZW19IHsuLi5wcm9wc30gLz5cbiAgICApKX1cbiAgPC90Ym9keT5cbik7XG5cbmV4cG9ydCB0eXBlIEVudHJ5SW5mb1Jvd1Byb3BzID0ge1xuICBkYXRhOiBMYXllckhvdmVyUHJvcFsnZGF0YSddO1xuICBmaWVsZHM6IEZpZWxkW107XG4gIGxheWVyOiBMYXllcjtcbiAgcHJpbWFyeURhdGE/OiBMYXllckhvdmVyUHJvcFsncHJpbWFyeURhdGEnXTtcbiAgY29tcGFyZVR5cGU/OiBDb21wYXJlVHlwZTtcbiAgY3VycmVudFRpbWU/OiBWaXNTdGF0ZVsnYW5pbWF0aW9uQ29uZmlnJ11bJ2N1cnJlbnRUaW1lJ107XG4gIGl0ZW06IFRvb2x0aXBGaWVsZDtcbn07XG5cbmNvbnN0IEVudHJ5SW5mb1JvdzogUmVhY3QuRkM8RW50cnlJbmZvUm93UHJvcHM+ID0gKHtcbiAgbGF5ZXIsXG4gIGl0ZW0sXG4gIGZpZWxkcyxcbiAgZGF0YSxcbiAgcHJpbWFyeURhdGEsXG4gIGNvbXBhcmVUeXBlLFxuICBjdXJyZW50VGltZVxufSkgPT4ge1xuICBjb25zdCBmaWVsZElkeCA9IGZpZWxkcy5maW5kSW5kZXgoZiA9PiBmLm5hbWUgPT09IGl0ZW0ubmFtZSk7XG4gIGlmIChmaWVsZElkeCA8IDApIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBmaWVsZCA9IGZpZWxkc1tmaWVsZElkeF07XG4gIGNvbnN0IGZpZWxkVmFsdWVBY2Nlc3NvciA9IGxheWVyLmFjY2Vzc1ZTRmllbGRWYWx1ZShmaWVsZCwgY3VycmVudFRpbWUpO1xuICBjb25zdCB2YWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihmaWVsZCwgZGF0YSBpbnN0YW5jZW9mIERhdGFSb3cgPyB7aW5kZXg6IGRhdGEuX3Jvd0luZGV4fSA6IGRhdGEpO1xuXG4gIC8vIEhhbmRsZSBXTVMgbGF5ZXIgZGF0YSBpbiBjb21wYXJpc29uIG1vZGUgLSBXTVMgbGF5ZXJzIGRvbid0IGhhdmUgY29tcGFyYWJsZSBmaWVsZCBkYXRhXG4gIGxldCBwcmltYXJ5VmFsdWUgPSBudWxsO1xuICBsZXQgZGlzcGxheURlbHRhVmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gIGlmIChwcmltYXJ5RGF0YSkge1xuICAgIHRyeSB7XG4gICAgICAvLyBPbmx5IGNhbGN1bGF0ZSBwcmltYXJ5IHZhbHVlIGlmIHByaW1hcnlEYXRhIGhhcyBhIGNvbXBhdGlibGUgc3RydWN0dXJlXG4gICAgICBpZiAoXG4gICAgICAgIHByaW1hcnlEYXRhIGluc3RhbmNlb2YgRGF0YVJvdyB8fFxuICAgICAgICAocHJpbWFyeURhdGEgJiYgdHlwZW9mIHByaW1hcnlEYXRhID09PSAnb2JqZWN0JyAmJiAnaW5kZXgnIGluIHByaW1hcnlEYXRhKVxuICAgICAgKSB7XG4gICAgICAgIHByaW1hcnlWYWx1ZSA9IGZpZWxkVmFsdWVBY2Nlc3NvcihcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICBwcmltYXJ5RGF0YSBpbnN0YW5jZW9mIERhdGFSb3cgPyB7aW5kZXg6IHByaW1hcnlEYXRhLl9yb3dJbmRleH0gOiBwcmltYXJ5RGF0YVxuICAgICAgICApO1xuXG4gICAgICAgIGRpc3BsYXlEZWx0YVZhbHVlID0gZ2V0VG9vbHRpcERpc3BsYXlEZWx0YVZhbHVlKHtcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICBwcmltYXJ5VmFsdWUsXG4gICAgICAgICAgY29tcGFyZVR5cGVcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIElmIHRoZXJlJ3MgYW4gZXJyb3IgYWNjZXNzaW5nIHByaW1hcnlEYXRhIChlLmcuLCBXTVMgbGF5ZXIgZGF0YSksIHNraXAgY29tcGFyaXNvblxuICAgICAgcHJpbWFyeVZhbHVlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBjb25zdCBkaXNwbGF5VmFsdWUgPSBnZXRUb29sdGlwRGlzcGxheVZhbHVlKHtpdGVtLCBmaWVsZCwgdmFsdWV9KTtcblxuICByZXR1cm4gKFxuICAgIDxSb3dcbiAgICAgIG5hbWU9e2ZpZWxkLmRpc3BsYXlOYW1lIHx8IGZpZWxkLm5hbWV9XG4gICAgICB2YWx1ZT17ZGlzcGxheVZhbHVlfVxuICAgICAgZGVsdGFWYWx1ZT17ZGlzcGxheURlbHRhVmFsdWV9XG4gICAgLz5cbiAgKTtcbn07XG5cbi8vIFRPRE86IHN1cHBvcnRpbmcgY29tcGFyYXRpdmUgdmFsdWUgZm9yIGFnZ3JlZ2F0ZWQgY2VsbHMgYXMgd2VsbFxuY29uc3QgQ2VsbEluZm8gPSAoe1xuICBmaWVsZHNUb1Nob3csXG4gIGRhdGEsXG4gIGxheWVyXG59OiB7XG4gIGRhdGE6IEFnZ3JlZ2F0aW9uTGF5ZXJIb3ZlckRhdGE7XG4gIGZpZWxkc1RvU2hvdzogVG9vbHRpcEZpZWxkW107XG4gIGxheWVyOiBMYXllcjtcbn0pID0+IHtcbiAgY29uc3Qge2NvbG9yRmllbGQsIHNpemVGaWVsZH0gPSBsYXllci5jb25maWcgYXMgYW55O1xuXG4gIGNvbnN0IGNvbG9yVmFsdWUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoY29sb3JGaWVsZCAmJiBsYXllci52aXN1YWxDaGFubmVscy5jb2xvcikge1xuICAgICAgY29uc3QgaXRlbSA9IGZpZWxkc1RvU2hvdy5maW5kKGZpZWxkID0+IGZpZWxkLm5hbWUgPT09IGNvbG9yRmllbGQubmFtZSk7XG4gICAgICByZXR1cm4gZ2V0VG9vbHRpcERpc3BsYXlWYWx1ZSh7aXRlbSwgZmllbGQ6IGNvbG9yRmllbGQsIHZhbHVlOiBkYXRhLmNvbG9yVmFsdWV9KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH0sIFtmaWVsZHNUb1Nob3csIGNvbG9yRmllbGQsIGxheWVyLCBkYXRhLmNvbG9yVmFsdWVdKTtcblxuICBjb25zdCBlbGV2YXRpb25WYWx1ZSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChzaXplRmllbGQgJiYgbGF5ZXIudmlzdWFsQ2hhbm5lbHMuc2l6ZSkge1xuICAgICAgY29uc3QgaXRlbSA9IGZpZWxkc1RvU2hvdy5maW5kKGZpZWxkID0+IGZpZWxkLm5hbWUgPT09IHNpemVGaWVsZC5uYW1lKTtcbiAgICAgIHJldHVybiBnZXRUb29sdGlwRGlzcGxheVZhbHVlKHtpdGVtLCBmaWVsZDogc2l6ZUZpZWxkLCB2YWx1ZTogZGF0YS5lbGV2YXRpb25WYWx1ZX0pO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfSwgW2ZpZWxkc1RvU2hvdywgc2l6ZUZpZWxkLCBsYXllciwgZGF0YS5lbGV2YXRpb25WYWx1ZV0pO1xuXG4gIGNvbnN0IGFnZ3JlZ2F0ZWREYXRhID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGRhdGEuYWdncmVnYXRlZERhdGEgJiYgZmllbGRzVG9TaG93KSB7XG4gICAgICByZXR1cm4gZmllbGRzVG9TaG93LnJlZHVjZSgoYWNjLCBmaWVsZCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRhRm9yRmllbGQgPSBkYXRhLmFnZ3JlZ2F0ZWREYXRhPy5bZmllbGQubmFtZV07XG4gICAgICAgIGlmIChkYXRhRm9yRmllbGQ/Lm1lYXN1cmUgJiYgZmllbGQubmFtZSAhPT0gY29sb3JGaWVsZD8ubmFtZSkge1xuICAgICAgICAgIGFjYy5wdXNoKHtcbiAgICAgICAgICAgIG5hbWU6IGAke2NhcGl0YWxpemVGaXJzdExldHRlcihkYXRhRm9yRmllbGQubWVhc3VyZSl9IG9mICR7ZmllbGQubmFtZX1gLFxuICAgICAgICAgICAgdmFsdWU6IGRhdGFGb3JGaWVsZC52YWx1ZVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LCBbXSBhcyB7bmFtZTogc3RyaW5nOyB2YWx1ZT86IHN0cmluZ31bXSk7XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfSwgW2RhdGEuYWdncmVnYXRlZERhdGEsIGZpZWxkc1RvU2hvdywgY29sb3JGaWVsZD8ubmFtZV0pO1xuXG4gIGNvbnN0IGNvbG9yTWVhc3VyZSA9IGxheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignY29sb3InKS5tZWFzdXJlO1xuICBjb25zdCBzaXplTWVhc3VyZSA9IGxheWVyLmdldFZpc3VhbENoYW5uZWxEZXNjcmlwdGlvbignc2l6ZScpLm1lYXN1cmU7XG4gIHJldHVybiAoXG4gICAgPHRib2R5PlxuICAgICAgPFJvdyBuYW1lPXsndG90YWwgcG9pbnRzJ30ga2V5PVwiY291bnRcIiB2YWx1ZT17U3RyaW5nKGRhdGEucG9pbnRzICYmIGRhdGEucG9pbnRzLmxlbmd0aCl9IC8+XG4gICAgICB7Y29sb3JGaWVsZCAmJiBsYXllci52aXN1YWxDaGFubmVscy5jb2xvciAmJiBjb2xvck1lYXN1cmUgPyAoXG4gICAgICAgIDxSb3cgbmFtZT17Y29sb3JNZWFzdXJlfSBrZXk9XCJjb2xvclwiIHZhbHVlPXtjb2xvclZhbHVlIHx8ICdOL0EnfSAvPlxuICAgICAgKSA6IG51bGx9XG4gICAgICB7c2l6ZUZpZWxkICYmIGxheWVyLnZpc3VhbENoYW5uZWxzLnNpemUgJiYgc2l6ZU1lYXN1cmUgPyAoXG4gICAgICAgIDxSb3cgbmFtZT17c2l6ZU1lYXN1cmV9IGtleT1cInNpemVcIiB2YWx1ZT17ZWxldmF0aW9uVmFsdWUgfHwgJ04vQSd9IC8+XG4gICAgICApIDogbnVsbH1cbiAgICAgIHthZ2dyZWdhdGVkRGF0YS5tYXAoKGRhdGFGb3JGaWVsZCwgaWR4KSA9PiAoXG4gICAgICAgIDxSb3cgbmFtZT17ZGF0YUZvckZpZWxkLm5hbWV9IGtleT17YGRhdGFfJHtpZHh9YH0gdmFsdWU9e2RhdGFGb3JGaWVsZC52YWx1ZSB8fCAnTi9BJ30gLz5cbiAgICAgICkpfVxuICAgIDwvdGJvZHk+XG4gICk7XG59O1xuXG5jb25zdCBMYXllckhvdmVySW5mb0ZhY3RvcnkgPSAoKSA9PiB7XG4gIGNvbnN0IExheWVySG92ZXJJbmZvID0gcHJvcHMgPT4ge1xuICAgIGNvbnN0IHtkYXRhLCBsYXllcn0gPSBwcm9wcztcbiAgICBjb25zdCBpbnRsID0gdXNlSW50bCgpO1xuICAgIGlmICghZGF0YSB8fCAhbGF5ZXIpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IGhhc0ZpZWxkc1RvU2hvdyA9XG4gICAgICAoZGF0YS5maWVsZFZhbHVlcyAmJiBPYmplY3Qua2V5cyhkYXRhLmZpZWxkVmFsdWVzKS5sZW5ndGggPiAwKSB8fFxuICAgICAgKGRhdGEud21zRmVhdHVyZURhdGEgJiYgZGF0YS53bXNGZWF0dXJlRGF0YS5sZW5ndGggPiAwKSB8fFxuICAgICAgKHByb3BzLmZpZWxkc1RvU2hvdyAmJiBwcm9wcy5maWVsZHNUb1Nob3cubGVuZ3RoID4gMCk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJtYXAtcG9wb3Zlcl9fbGF5ZXItaW5mb1wiPlxuICAgICAgICA8U3R5bGVkTGF5ZXJOYW1lIGNsYXNzTmFtZT1cIm1hcC1wb3BvdmVyX19sYXllci1uYW1lXCI+XG4gICAgICAgICAgPExheWVycyBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgICB7cHJvcHMubGF5ZXIuY29uZmlnLmxhYmVsfVxuICAgICAgICA8L1N0eWxlZExheWVyTmFtZT5cbiAgICAgICAge2hhc0ZpZWxkc1RvU2hvdyAmJiA8U3R5bGVkRGl2aWRlciAvPn1cbiAgICAgICAgPFN0eWxlZFRhYmxlPlxuICAgICAgICAgIHtkYXRhLndtc0ZlYXR1cmVEYXRhID8gKFxuICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICB7ZGF0YS53bXNGZWF0dXJlRGF0YS5tYXAoKHtuYW1lLCB2YWx1ZX0sIGkpID0+IChcbiAgICAgICAgICAgICAgICA8Um93IGtleT17aX0gbmFtZT17bmFtZX0gdmFsdWU9e3ZhbHVlfSAvPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgKSA6IGRhdGEuZmllbGRWYWx1ZXMgPyAoXG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgIHtkYXRhLmZpZWxkVmFsdWVzLm1hcCgoe2xhYmVsTWVzc2FnZSwgdmFsdWV9LCBpKSA9PiAoXG4gICAgICAgICAgICAgICAgPFJvdyBrZXk9e2l9IG5hbWU9e2ludGwuZm9ybWF0TWVzc2FnZSh7aWQ6IGxhYmVsTWVzc2FnZX0pfSB2YWx1ZT17dmFsdWV9IC8+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICApIDogcHJvcHMubGF5ZXIuaXNBZ2dyZWdhdGVkID8gKFxuICAgICAgICAgICAgPENlbGxJbmZvIHsuLi5wcm9wc30gLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPEVudHJ5SW5mbyB7Li4ucHJvcHN9IC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TdHlsZWRUYWJsZT5cbiAgICAgICAge2hhc0ZpZWxkc1RvU2hvdyAmJiA8U3R5bGVkRGl2aWRlciAvPn1cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgTGF5ZXJIb3ZlckluZm8ucHJvcFR5cGVzID0ge1xuICAgIGZpZWxkczogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSksXG4gICAgZmllbGRzVG9TaG93OiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSxcbiAgICBsYXllcjogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBkYXRhOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KSwgUHJvcFR5cGVzLm9iamVjdF0pXG4gIH07XG4gIHJldHVybiBMYXllckhvdmVySW5mbztcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExheWVySG92ZXJJbmZvRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFB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
@@ -3,7 +3,7 @@ import MapControlTooltipFactory from './map-control-tooltip';
3
3
  import MapControlPanelFactory from './map-control-panel';
4
4
  import { Layer } from '@kepler.gl/layers';
5
5
  import { MapControls } from '@kepler.gl/types';
6
- export declare type LayerSelectorPanelProps = {
6
+ export type LayerSelectorPanelProps = {
7
7
  onMapToggleLayer: (layerId: string) => void;
8
8
  onToggleMapControl: (control: string) => void;
9
9
  layers: ReadonlyArray<Layer>;
@@ -18,7 +18,6 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
18
18
  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; }
19
19
  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
20
20
  // Copyright contributors to the kepler.gl project
21
- // @ts-nocheck
22
21
  var isTestEnv = (0, _utils.isTest)();
23
22
 
24
23
  /**
@@ -47,8 +46,9 @@ var LazyTippy = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
47
46
  var computedProps = _objectSpread({}, props);
48
47
  computedProps.plugins = [lazyPlugin].concat((0, _toConsumableArray2["default"])(props.plugins || []));
49
48
  if (props.render) {
49
+ var render = props.render;
50
50
  computedProps.render = function () {
51
- return mounted ? props.render.apply(props, arguments) : '';
51
+ return mounted ? render.apply(void 0, arguments) : '';
52
52
  };
53
53
  } else {
54
54
  computedProps.content = mounted ? props.content : '';
@@ -58,4 +58,4 @@ var LazyTippy = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
58
58
  }));
59
59
  });
60
60
  var _default = exports["default"] = LazyTippy;
61
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaGVhZGxlc3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiaXNUZXN0RW52IiwiaXNUZXN0IiwiTGF6eVRpcHB5IiwiZm9yd2FyZFJlZiIsInByb3BzIiwicmVmIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibW91bnRlZCIsInNldE1vdW50ZWQiLCJsYXp5UGx1Z2luIiwiZm4iLCJvbk1vdW50Iiwib25IaWRkZW4iLCJjb21wdXRlZFByb3BzIiwicGx1Z2lucyIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJyZW5kZXIiLCJjb250ZW50IiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzMiIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXAvbGF6eS10aXBweS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuLy8gQHRzLW5vY2hlY2tcbmltcG9ydCBSZWFjdCwge3VzZVN0YXRlLCBmb3J3YXJkUmVmfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgVGlwcHkgZnJvbSAnQHRpcHB5anMvcmVhY3QvaGVhZGxlc3MnO1xuaW1wb3J0IHR5cGUge1RpcHB5UHJvcHN9IGZyb20gJ0B0aXBweWpzL3JlYWN0JztcbmltcG9ydCB7aXNUZXN0fSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcblxuY29uc3QgaXNUZXN0RW52ID0gaXNUZXN0KCk7XG5cbi8qKlxuICogTGF6eSBtb3VudGluZyB0aXBweSBjb250ZW50XG4gKiBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9hdG9taWtzLzUyMGY0YjBjN2I1MzcyMDJhMjNhMzA1OWQ0ZWVjOTA4XG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZWFjdC9kaXNwbGF5LW5hbWVcbmNvbnN0IExhenlUaXBweSA9IGZvcndhcmRSZWYoKHByb3BzOiBUaXBweVByb3BzLCByZWYpID0+IHtcbiAgLy8gTW91bnQgaW4gdGVzdCBlbnYgZm9yIGVhc2llciB0ZXN0aW5nXG4gIGNvbnN0IFttb3VudGVkLCBzZXRNb3VudGVkXSA9IHVzZVN0YXRlKGlzVGVzdEVudik7XG5cbiAgY29uc3QgbGF6eVBsdWdpbiA9IHtcbiAgICBmbjogKCkgPT4gKHtcbiAgICAgIG9uTW91bnQ6ICgpID0+IHNldE1vdW50ZWQodHJ1ZSksXG4gICAgICBvbkhpZGRlbjogKCkgPT4gc2V0TW91bnRlZChmYWxzZSlcbiAgICB9KVxuICB9O1xuXG4gIGNvbnN0IGNvbXB1dGVkUHJvcHMgPSB7Li4ucHJvcHN9O1xuXG4gIGNvbXB1dGVkUHJvcHMucGx1Z2lucyA9IFtsYXp5UGx1Z2luLCAuLi4ocHJvcHMucGx1Z2lucyB8fCBbXSldO1xuXG4gIGlmIChwcm9wcy5yZW5kZXIpIHtcbiAgICBjb21wdXRlZFByb3BzLnJlbmRlciA9ICguLi5hcmdzKSA9PiAobW91bnRlZCA/IHByb3BzLnJlbmRlciguLi5hcmdzKSA6ICcnKTtcbiAgfSBlbHNlIHtcbiAgICBjb21wdXRlZFByb3BzLmNvbnRlbnQgPSBtb3VudGVkID8gcHJvcHMuY29udGVudCA6ICcnO1xuICB9XG5cbiAgcmV0dXJuIDxUaXBweSB7Li4uY29tcHV0ZWRQcm9wc30gcmVmPXtyZWZ9IC8+O1xufSk7XG5cbmV4cG9ydCBkZWZhdWx0IExhenlUaXBweTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBSUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsU0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQXdDLFNBQUFJLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBTix3QkFBQU0sQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFBLG9CQUFBYyxDQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFB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
61
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaGVhZGxlc3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3V0aWxzIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiaXNUZXN0RW52IiwiaXNUZXN0IiwiTGF6eVRpcHB5IiwiZm9yd2FyZFJlZiIsInByb3BzIiwicmVmIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibW91bnRlZCIsInNldE1vdW50ZWQiLCJsYXp5UGx1Z2luIiwiZm4iLCJvbk1vdW50Iiwib25IaWRkZW4iLCJjb21wdXRlZFByb3BzIiwicGx1Z2lucyIsImNvbmNhdCIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJyZW5kZXIiLCJjb250ZW50IiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzMiIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXAvbGF6eS10aXBweS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7dXNlU3RhdGUsIGZvcndhcmRSZWYsIFJlZn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFRpcHB5IGZyb20gJ0B0aXBweWpzL3JlYWN0L2hlYWRsZXNzJztcbmltcG9ydCB0eXBlIHtUaXBweVByb3BzfSBmcm9tICdAdGlwcHlqcy9yZWFjdCc7XG5pbXBvcnQge2lzVGVzdH0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5cbmNvbnN0IGlzVGVzdEVudiA9IGlzVGVzdCgpO1xuXG4vKipcbiAqIExhenkgbW91bnRpbmcgdGlwcHkgY29udGVudFxuICogaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vYXRvbWlrcy81MjBmNGIwYzdiNTM3MjAyYTIzYTMwNTlkNGVlYzkwOFxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3QvZGlzcGxheS1uYW1lXG5jb25zdCBMYXp5VGlwcHkgPSBmb3J3YXJkUmVmKChwcm9wczogVGlwcHlQcm9wcywgcmVmKSA9PiB7XG4gIC8vIE1vdW50IGluIHRlc3QgZW52IGZvciBlYXNpZXIgdGVzdGluZ1xuICBjb25zdCBbbW91bnRlZCwgc2V0TW91bnRlZF0gPSB1c2VTdGF0ZShpc1Rlc3RFbnYpO1xuXG4gIGNvbnN0IGxhenlQbHVnaW4gPSB7XG4gICAgZm46ICgpID0+ICh7XG4gICAgICBvbk1vdW50OiAoKSA9PiBzZXRNb3VudGVkKHRydWUpLFxuICAgICAgb25IaWRkZW46ICgpID0+IHNldE1vdW50ZWQoZmFsc2UpXG4gICAgfSlcbiAgfTtcblxuICBjb25zdCBjb21wdXRlZFByb3BzID0gey4uLnByb3BzfTtcblxuICBjb21wdXRlZFByb3BzLnBsdWdpbnMgPSBbbGF6eVBsdWdpbiwgLi4uKHByb3BzLnBsdWdpbnMgfHwgW10pXTtcblxuICBpZiAocHJvcHMucmVuZGVyKSB7XG4gICAgY29uc3QgcmVuZGVyID0gcHJvcHMucmVuZGVyO1xuICAgIGNvbXB1dGVkUHJvcHMucmVuZGVyID0gKC4uLmFyZ3MpID0+IChtb3VudGVkID8gcmVuZGVyKC4uLmFyZ3MpIDogJycpO1xuICB9IGVsc2Uge1xuICAgIGNvbXB1dGVkUHJvcHMuY29udGVudCA9IG1vdW50ZWQgPyBwcm9wcy5jb250ZW50IDogJyc7XG4gIH1cblxuICByZXR1cm4gPFRpcHB5IHsuLi5jb21wdXRlZFByb3BzfSByZWY9e3JlZiBhcyBSZWY8RWxlbWVudD59IC8+O1xufSk7XG5cbmV4cG9ydCBkZWZhdWx0IExhenlUaXBweTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsU0FBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQXdDLFNBQUFJLHlCQUFBQyxDQUFBLDZCQUFBQyxPQUFBLG1CQUFBQyxDQUFBLE9BQUFELE9BQUEsSUFBQUUsQ0FBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxDQUFBLFdBQUFBLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLEtBQUFGLENBQUE7QUFBQSxTQUFBTix3QkFBQU0sQ0FBQSxFQUFBRSxDQUFBLFNBQUFBLENBQUEsSUFBQUYsQ0FBQSxJQUFBQSxDQUFBLENBQUFJLFVBQUEsU0FBQUosQ0FBQSxlQUFBQSxDQUFBLGdCQUFBSyxPQUFBLENBQUFMLENBQUEsMEJBQUFBLENBQUEsc0JBQUFBLENBQUEsUUFBQUcsQ0FBQSxHQUFBSix3QkFBQSxDQUFBRyxDQUFBLE9BQUFDLENBQUEsSUFBQUEsQ0FBQSxDQUFBRyxHQUFBLENBQUFOLENBQUEsVUFBQUcsQ0FBQSxDQUFBSSxHQUFBLENBQUFQLENBQUEsT0FBQVEsQ0FBQSxLQUFBQyxTQUFBLFVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsQ0FBQSxJQUFBZCxDQUFB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
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import MapControlTooltipFactory from './map-control-tooltip';
3
3
  import MapControlToolbarFactory from './map-control-toolbar';
4
4
  import { MapControls } from '@kepler.gl/types';
5
- export declare type LocalePanelProps = {
5
+ export type LocalePanelProps = {
6
6
  availableLocales: ReadonlyArray<string>;
7
7
  onSetLocale: (locale: string) => void;
8
8
  locale: string;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { MapState } from '@kepler.gl/types';
3
3
  import { ActionHandler, toggleSplitMapViewport } from '@kepler.gl/actions';
4
- export declare type MapControlPanelProps = {
4
+ export type MapControlPanelProps = {
5
5
  header?: string;
6
6
  scale?: number;
7
7
  onClick?: React.MouseEventHandler<HTMLDivElement>;
@@ -1,16 +1,15 @@
1
- /// <reference types="react" />
2
1
  import { BaseComponentProps } from '../types';
3
2
  declare function MapControlToolbar(): import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<import("styled-components/dist/types").FastOmit<{
4
- show?: boolean | undefined;
3
+ show?: boolean;
5
4
  } & import("react").HTMLAttributes<unknown> & {
6
- children?: import("react").ReactNode;
5
+ children?: import("react").ReactNode | undefined;
7
6
  }, "show" | keyof import("react").HTMLAttributes<unknown>> & {
8
- show?: boolean | undefined;
7
+ show?: boolean;
9
8
  } & import("react").HTMLAttributes<unknown> & {
10
- children?: import("react").ReactNode;
9
+ children?: import("react").ReactNode | undefined;
11
10
  }, BaseComponentProps>> & Omit<import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<{
12
- show?: boolean | undefined;
11
+ show?: boolean;
13
12
  } & import("react").HTMLAttributes<unknown> & {
14
- children?: import("react").ReactNode;
13
+ children?: import("react").ReactNode | undefined;
15
14
  }, import("../common/toolbar").ToolbarProps>> & Omit<import("styled-components").IStyledComponent<"web", import("../common/toolbar").ToolbarProps>, keyof import("react").Component<any, {}, any>>, keyof import("react").Component<any, {}, any>>;
16
15
  export default MapControlToolbar;
@@ -1,5 +1,5 @@
1
1
  import React, { ReactElement, JSXElementConstructor } from 'react';
2
- export declare type MapControlTooltipProps = {
2
+ export type MapControlTooltipProps = {
3
3
  id: string;
4
4
  message: string;
5
5
  children?: ReactElement<any, string | JSXElementConstructor<any>>;
@@ -9,7 +9,7 @@ import { Layer } from '@kepler.gl/layers';
9
9
  import { Editor, LayerVisConfig, MapControls, MapState } from '@kepler.gl/types';
10
10
  import { Datasets } from '@kepler.gl/table';
11
11
  import { MapStateActions, UIStateActions } from '@kepler.gl/actions';
12
- export declare type MapControlProps = {
12
+ export type MapControlProps = {
13
13
  datasets: Datasets;
14
14
  dragRotate: boolean;
15
15
  isSplit: boolean;
@@ -31,6 +31,7 @@ export declare type MapControlProps = {
31
31
  onSetEditorMode: (mode: string) => void;
32
32
  onToggleEditorVisibility: () => void;
33
33
  onLayerVisConfigChange: (oldLayer: Layer, newVisConfig: Partial<LayerVisConfig>) => void;
34
+ onToggleLayerVisibility?: (layer: Layer) => void;
34
35
  top: number;
35
36
  onSetLocale: typeof UIStateActions.setLocale;
36
37
  availableLocales: string[];
@@ -50,7 +51,7 @@ export declare type MapControlProps = {
50
51
  mapHeight?: number;
51
52
  };
52
53
  declare function MapControlFactory(SplitMapButton: ReturnType<typeof SplitMapButtonFactory>, Toggle3dButton: ReturnType<typeof Toggle3dButtonFactory>, LayerSelectorPanel: ReturnType<typeof LayerSelectorPanelFactory>, MapLegendPanel: ReturnType<typeof MapLegendPanelFactory>, MapDrawPanel: ReturnType<typeof MapDrawPanelFactory>, LocalePanel: ReturnType<typeof LocalePanelFactory>): React.FC<MapControlProps> & {
53
- defaultActionComponents: MapControlProps['actionComponents'];
54
+ defaultActionComponents: MapControlProps["actionComponents"];
54
55
  };
55
56
  declare namespace MapControlFactory {
56
57
  var deps: (typeof LocalePanelFactory | typeof SplitMapButtonFactory | typeof Toggle3dButtonFactory | typeof LayerSelectorPanelFactory | typeof MapLegendPanelFactory | typeof MapDrawPanelFactory)[];
@@ -68,4 +68,4 @@ function MapControlFactory(SplitMapButton, Toggle3dButton, LayerSelectorPanel, M
68
68
  return MapControl;
69
69
  }
70
70
  var _default = exports["default"] = MapControlFactory;
71
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2xvZ28iLCJfc3BsaXRNYXBCdXR0b24iLCJfdG9nZ2xlM2RCdXR0b24iLCJfbGF5ZXJTZWxlY3RvclBhbmVsIiwiX21hcExlZ2VuZFBhbmVsIiwiX21hcERyYXdQYW5lbCIsIl9sb2NhbGVQYW5lbCIsIl9leGNsdWRlZCIsIl90ZW1wbGF0ZU9iamVjdCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiU3R5bGVkTWFwQ29udHJvbCIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsIm1hcENvbnRyb2wiLCJwYWRkaW5nIiwiJHRvcCIsIkxlZ2VuZExvZ28iLCJjcmVhdGVFbGVtZW50IiwidmVyc2lvbiIsImFwcE5hbWUiLCJNYXBDb250cm9sRmFjdG9yeSIsImRlcHMiLCJTcGxpdE1hcEJ1dHRvbkZhY3RvcnkiLCJUb2dnbGUzZEJ1dHRvbkZhY3RvcnkiLCJMYXllclNlbGVjdG9yUGFuZWxGYWN0b3J5IiwiTWFwTGVnZW5kUGFuZWxGYWN0b3J5IiwiTWFwRHJhd1BhbmVsRmFjdG9yeSIsIkxvY2FsZVBhbmVsRmFjdG9yeSIsIlNwbGl0TWFwQnV0dG9uIiwiVG9nZ2xlM2RCdXR0b24iLCJMYXllclNlbGVjdG9yUGFuZWwiLCJNYXBMZWdlbmRQYW5lbCIsIk1hcERyYXdQYW5lbCIsIkxvY2FsZVBhbmVsIiwiREVGQVVMVF9BQ1RJT05TIiwiTWFwQ29udHJvbCIsIl9yZWYiLCJfcmVmJGFjdGlvbkNvbXBvbmVudHMiLCJhY3Rpb25Db21wb25lbnRzIiwiX3JlZiRpc1NwbGl0IiwiaXNTcGxpdCIsIl9yZWYkdG9wIiwidG9wIiwiX3JlZiRtYXBJbmRleCIsIm1hcEluZGV4IiwiX3JlZiRsb2dvQ29tcG9uZW50IiwibG9nb0NvbXBvbmVudCIsInJlc3RQcm9wcyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJhY3Rpb25Db21wb25lbnRQcm9wcyIsImNsYXNzTmFtZSIsIm1hcCIsIkFjdGlvbkNvbXBvbmVudCIsImluZGV4IiwiX2V4dGVuZHMyIiwia2V5IiwiZGVmYXVsdEFjdGlvbkNvbXBvbmVudHMiLCJkaXNwbGF5TmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXAvbWFwLWNvbnRyb2wudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBLZXBsZXJHbExvZ28gZnJvbSAnLi4vY29tbW9uL2xvZ28nO1xuXG4vLyBmYWN0b3JpZXNcbmltcG9ydCBTcGxpdE1hcEJ1dHRvbkZhY3RvcnkgZnJvbSAnLi9zcGxpdC1tYXAtYnV0dG9uJztcbmltcG9ydCBUb2dnbGUzZEJ1dHRvbkZhY3RvcnkgZnJvbSAnLi90b2dnbGUtM2QtYnV0dG9uJztcbmltcG9ydCBMYXllclNlbGVjdG9yUGFuZWxGYWN0b3J5IGZyb20gJy4vbGF5ZXItc2VsZWN0b3ItcGFuZWwnO1xuaW1wb3J0IE1hcExlZ2VuZFBhbmVsRmFjdG9yeSBmcm9tICcuL21hcC1sZWdlbmQtcGFuZWwnO1xuaW1wb3J0IE1hcERyYXdQYW5lbEZhY3RvcnkgZnJvbSAnLi9tYXAtZHJhdy1wYW5lbCc7XG5pbXBvcnQgTG9jYWxlUGFuZWxGYWN0b3J5IGZyb20gJy4vbG9jYWxlLXBhbmVsJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7RWRpdG9yLCBMYXllclZpc0NvbmZpZywgTWFwQ29udHJvbHMsIE1hcFN0YXRlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7RGF0YXNldHN9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuaW1wb3J0IHtNYXBTdGF0ZUFjdGlvbnMsIFVJU3RhdGVBY3Rpb25zfSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuXG5pbnRlcmZhY2UgU3R5bGVkTWFwQ29udHJvbFByb3BzIHtcbiAgJHRvcD86IG51bWJlcjtcbn1cblxuY29uc3QgU3R5bGVkTWFwQ29udHJvbCA9IHN0eWxlZC5kaXY8U3R5bGVkTWFwQ29udHJvbFByb3BzPmBcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubWFwQ29udHJvbC5wYWRkaW5nfXB4O1xuICB6LWluZGV4OiAxMDtcbiAgbWFyZ2luLXRvcDogJHtwcm9wcyA9PiBwcm9wcy4kdG9wIHx8IDB9cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcm93LWdhcDogOHB4O1xuICBqdXN0aWZ5LWl0ZW1zOiBlbmQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyAvKiBwcmV2ZW50IHBhZGRpbmcgZnJvbSBibG9ja2luZyBpbnB1dCAqL1xuICAmID4gKiB7XG4gICAgLyogYWxsIGNoaWxkcmVuIHNob3VsZCBhbGxvdyBpbnB1dCAqL1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbmA7XG5cbmNvbnN0IExlZ2VuZExvZ28gPSA8S2VwbGVyR2xMb2dvIHZlcnNpb249e2ZhbHNlfSBhcHBOYW1lPVwia2VwbGVyLmdsXCIgLz47XG5cbmV4cG9ydCB0eXBlIE1hcENvbnRyb2xQcm9wcyA9IHtcbiAgZGF0YXNldHM6IERhdGFzZXRzO1xuICBkcmFnUm90YXRlOiBib29sZWFuO1xuICBpc1NwbGl0OiBib29sZWFuO1xuICBwcmltYXJ5OiBib29sZWFuO1xuICBsYXllcnM6IExheWVyW107XG4gIGxheWVyc1RvUmVuZGVyOiB7W2tleTogc3RyaW5nXTogYm9vbGVhbn07XG4gIG1hcEluZGV4OiBudW1iZXI7XG4gIG1hcENvbnRyb2xzOiBNYXBDb250cm9scztcbiAgb25Ub2dnbGVQZXJzcGVjdGl2ZTogKCkgPT4gdm9pZDtcbiAgb25Ub2dnbGVTcGxpdE1hcDogdHlwZW9mIE1hcFN0YXRlQWN0aW9ucy50b2dnbGVTcGxpdE1hcDtcbiAgb25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0OiAoe1xuICAgIGlzVmlld3BvcnRTeW5jZWQsXG4gICAgaXNab29tTG9ja2VkXG4gIH06IHtcbiAgICBpc1ZpZXdwb3J0U3luY2VkOiBib29sZWFuO1xuICAgIGlzWm9vbUxvY2tlZDogYm9vbGVhbjtcbiAgfSkgPT4gdm9pZDtcbiAgb25NYXBUb2dnbGVMYXllcjogKGxheWVySWQ6IHN0cmluZykgPT4gdm9pZDtcbiAgb25Ub2dnbGVNYXBDb250cm9sOiAoY29udHJvbDogc3RyaW5nKSA9PiB2b2lkO1xuICBvblNldEVkaXRvck1vZGU6IChtb2RlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uVG9nZ2xlRWRpdG9yVmlzaWJpbGl0eTogKCkgPT4gdm9pZDtcbiAgb25MYXllclZpc0NvbmZpZ0NoYW5nZTogKG9sZExheWVyOiBMYXllciwgbmV3VmlzQ29uZmlnOiBQYXJ0aWFsPExheWVyVmlzQ29uZmlnPikgPT4gdm9pZDtcbiAgdG9wOiBudW1iZXI7XG4gIG9uU2V0TG9jYWxlOiB0eXBlb2YgVUlTdGF0ZUFjdGlvbnMuc2V0TG9jYWxlO1xuICBhdmFpbGFibGVMb2NhbGVzOiBzdHJpbmdbXTtcbiAgbG9jYWxlOiBzdHJpbmc7XG4gIGxvZ29Db21wb25lbnQ/OiBSZWFjdC5GQyB8IFJlYWN0LlJlYWN0Tm9kZTtcbiAgaXNFeHBvcnQ/OiBib29sZWFuO1xuXG4gIHNldE1hcENvbnRyb2xTZXR0aW5nczogdHlwZW9mIFVJU3RhdGVBY3Rpb25zLnNldE1hcENvbnRyb2xTZXR0aW5ncztcbiAgYWN0aXZlU2lkZVBhbmVsOiBzdHJpbmcgfCBudWxsO1xuXG4gIC8vIG9wdGlvbmFsXG4gIG1hcFN0YXRlPzogTWFwU3RhdGU7XG4gIHJlYWRPbmx5PzogYm9vbGVhbjtcbiAgc2NhbGU/OiBudW1iZXI7XG4gIG1hcExheWVycz86IHtba2V5OiBzdHJpbmddOiBib29sZWFufTtcbiAgZWRpdG9yOiBFZGl0b3I7XG4gIGFjdGlvbkNvbXBvbmVudHM/OiBSZWFjdC5Db21wb25lbnRUeXBlPGFueT5bXTtcbiAgbWFwSGVpZ2h0PzogbnVtYmVyO1xufTtcblxuTWFwQ29udHJvbEZhY3RvcnkuZGVwcyA9IFtcbiAgU3BsaXRNYXBCdXR0b25GYWN0b3J5LFxuICBUb2dnbGUzZEJ1dHRvbkZhY3RvcnksXG4gIExheWVyU2VsZWN0b3JQYW5lbEZhY3RvcnksXG4gIE1hcExlZ2VuZFBhbmVsRmFjdG9yeSxcbiAgTWFwRHJhd1BhbmVsRmFjdG9yeSxcbiAgTG9jYWxlUGFuZWxGYWN0b3J5XG5dO1xuXG5mdW5jdGlvbiBNYXBDb250cm9sRmFjdG9yeShcbiAgU3BsaXRNYXBCdXR0b246IFJldHVyblR5cGU8dHlwZW9mIFNwbGl0TWFwQnV0dG9uRmFjdG9yeT4sXG4gIFRvZ2dsZTNkQnV0dG9uOiBSZXR1cm5UeXBlPHR5cGVvZiBUb2dnbGUzZEJ1dHRvbkZhY3Rvcnk+LFxuICBMYXllclNlbGVjdG9yUGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIExheWVyU2VsZWN0b3JQYW5lbEZhY3Rvcnk+LFxuICBNYXBMZWdlbmRQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwTGVnZW5kUGFuZWxGYWN0b3J5PixcbiAgTWFwRHJhd1BhbmVsOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBEcmF3UGFuZWxGYWN0b3J5PixcbiAgTG9jYWxlUGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIExvY2FsZVBhbmVsRmFjdG9yeT5cbikge1xuICBjb25zdCBERUZBVUxUX0FDVElPTlMgPSBbXG4gICAgU3BsaXRNYXBCdXR0b24sXG4gICAgTGF5ZXJTZWxlY3RvclBhbmVsLFxuICAgIFRvZ2dsZTNkQnV0dG9uLFxuICAgIE1hcERyYXdQYW5lbCxcbiAgICBMb2NhbGVQYW5lbCxcbiAgICBNYXBMZWdlbmRQYW5lbFxuICBdO1xuXG4gIGNvbnN0IE1hcENvbnRyb2w6IFJlYWN0LkZDPE1hcENvbnRyb2xQcm9wcz4gJiB7XG4gICAgZGVmYXVsdEFjdGlvbkNvbXBvbmVudHM6IE1hcENvbnRyb2xQcm9wc1snYWN0aW9uQ29tcG9uZW50cyddO1xuICB9ID0gKHtcbiAgICBhY3Rpb25Db21wb25lbnRzID0gREVGQVVMVF9BQ1RJT05TLFxuICAgIGlzU3BsaXQgPSBmYWxzZSxcbiAgICB0b3AgPSAwLFxuICAgIG1hcEluZGV4ID0gMCxcbiAgICBsb2dvQ29tcG9uZW50ID0gTGVnZW5kTG9nbyxcbiAgICAuLi5yZXN0UHJvcHNcbiAgfSkgPT4ge1xuICAgIGNvbnN0IGFjdGlvbkNvbXBvbmVudFByb3BzID0ge1xuICAgICAgaXNTcGxpdCxcbiAgICAgIG1hcEluZGV4LFxuICAgICAgbG9nb0NvbXBvbmVudCxcbiAgICAgIC4uLnJlc3RQcm9wc1xuICAgIH07XG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRNYXBDb250cm9sIGNsYXNzTmFtZT1cIm1hcC1jb250cm9sXCIgJHRvcD17dG9wfT5cbiAgICAgICAge2FjdGlvbkNvbXBvbmVudHMubWFwKChBY3Rpb25Db21wb25lbnQsIGluZGV4KSA9PiAoXG4gICAgICAgICAgPEFjdGlvbkNvbXBvbmVudCBrZXk9e2luZGV4fSBjbGFzc05hbWU9XCJtYXAtY29udHJvbC1hY3Rpb25cIiB7Li4uYWN0aW9uQ29tcG9uZW50UHJvcHN9IC8+XG4gICAgICAgICkpfVxuICAgICAgPC9TdHlsZWRNYXBDb250cm9sPlxuICAgICk7XG4gIH07XG5cbiAgTWFwQ29udHJvbC5kZWZhdWx0QWN0aW9uQ29tcG9uZW50cyA9IERFRkFVTFRfQUNUSU9OUztcblxuICBNYXBDb250cm9sLmRpc3BsYXlOYW1lID0gJ01hcENvbnRyb2wnO1xuXG4gIHJldHVybiBNYXBDb250cm9sO1xufVxuXG5leHBvcnQgZGVmYXVsdCBNYXBDb250cm9sRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBR0EsSUFBQUcsZUFBQSxHQUFBSixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBTCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUssbUJBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFPLGFBQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFRLFlBQUEsR0FBQVQsc0JBQUEsQ0FBQUMsT0FBQTtBQUFnRCxJQUFBUyxTQUFBO0FBQUEsSUFBQUMsZUFBQSxFQWJoRDtBQUNBO0FBTUE7QUFBQSxTQUFBQyxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxVQUFBLE9BQUFQLENB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
71
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX2xvZ28iLCJfc3BsaXRNYXBCdXR0b24iLCJfdG9nZ2xlM2RCdXR0b24iLCJfbGF5ZXJTZWxlY3RvclBhbmVsIiwiX21hcExlZ2VuZFBhbmVsIiwiX21hcERyYXdQYW5lbCIsIl9sb2NhbGVQYW5lbCIsIl9leGNsdWRlZCIsIl90ZW1wbGF0ZU9iamVjdCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiU3R5bGVkTWFwQ29udHJvbCIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsIm1hcENvbnRyb2wiLCJwYWRkaW5nIiwiJHRvcCIsIkxlZ2VuZExvZ28iLCJjcmVhdGVFbGVtZW50IiwidmVyc2lvbiIsImFwcE5hbWUiLCJNYXBDb250cm9sRmFjdG9yeSIsImRlcHMiLCJTcGxpdE1hcEJ1dHRvbkZhY3RvcnkiLCJUb2dnbGUzZEJ1dHRvbkZhY3RvcnkiLCJMYXllclNlbGVjdG9yUGFuZWxGYWN0b3J5IiwiTWFwTGVnZW5kUGFuZWxGYWN0b3J5IiwiTWFwRHJhd1BhbmVsRmFjdG9yeSIsIkxvY2FsZVBhbmVsRmFjdG9yeSIsIlNwbGl0TWFwQnV0dG9uIiwiVG9nZ2xlM2RCdXR0b24iLCJMYXllclNlbGVjdG9yUGFuZWwiLCJNYXBMZWdlbmRQYW5lbCIsIk1hcERyYXdQYW5lbCIsIkxvY2FsZVBhbmVsIiwiREVGQVVMVF9BQ1RJT05TIiwiTWFwQ29udHJvbCIsIl9yZWYiLCJfcmVmJGFjdGlvbkNvbXBvbmVudHMiLCJhY3Rpb25Db21wb25lbnRzIiwiX3JlZiRpc1NwbGl0IiwiaXNTcGxpdCIsIl9yZWYkdG9wIiwidG9wIiwiX3JlZiRtYXBJbmRleCIsIm1hcEluZGV4IiwiX3JlZiRsb2dvQ29tcG9uZW50IiwibG9nb0NvbXBvbmVudCIsInJlc3RQcm9wcyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJhY3Rpb25Db21wb25lbnRQcm9wcyIsImNsYXNzTmFtZSIsIm1hcCIsIkFjdGlvbkNvbXBvbmVudCIsImluZGV4IiwiX2V4dGVuZHMyIiwia2V5IiwiZGVmYXVsdEFjdGlvbkNvbXBvbmVudHMiLCJkaXNwbGF5TmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXAvbWFwLWNvbnRyb2wudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBLZXBsZXJHbExvZ28gZnJvbSAnLi4vY29tbW9uL2xvZ28nO1xuXG4vLyBmYWN0b3JpZXNcbmltcG9ydCBTcGxpdE1hcEJ1dHRvbkZhY3RvcnkgZnJvbSAnLi9zcGxpdC1tYXAtYnV0dG9uJztcbmltcG9ydCBUb2dnbGUzZEJ1dHRvbkZhY3RvcnkgZnJvbSAnLi90b2dnbGUtM2QtYnV0dG9uJztcbmltcG9ydCBMYXllclNlbGVjdG9yUGFuZWxGYWN0b3J5IGZyb20gJy4vbGF5ZXItc2VsZWN0b3ItcGFuZWwnO1xuaW1wb3J0IE1hcExlZ2VuZFBhbmVsRmFjdG9yeSBmcm9tICcuL21hcC1sZWdlbmQtcGFuZWwnO1xuaW1wb3J0IE1hcERyYXdQYW5lbEZhY3RvcnkgZnJvbSAnLi9tYXAtZHJhdy1wYW5lbCc7XG5pbXBvcnQgTG9jYWxlUGFuZWxGYWN0b3J5IGZyb20gJy4vbG9jYWxlLXBhbmVsJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7RWRpdG9yLCBMYXllclZpc0NvbmZpZywgTWFwQ29udHJvbHMsIE1hcFN0YXRlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7RGF0YXNldHN9IGZyb20gJ0BrZXBsZXIuZ2wvdGFibGUnO1xuaW1wb3J0IHtNYXBTdGF0ZUFjdGlvbnMsIFVJU3RhdGVBY3Rpb25zfSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuXG5pbnRlcmZhY2UgU3R5bGVkTWFwQ29udHJvbFByb3BzIHtcbiAgJHRvcD86IG51bWJlcjtcbn1cblxuY29uc3QgU3R5bGVkTWFwQ29udHJvbCA9IHN0eWxlZC5kaXY8U3R5bGVkTWFwQ29udHJvbFByb3BzPmBcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubWFwQ29udHJvbC5wYWRkaW5nfXB4O1xuICB6LWluZGV4OiAxMDtcbiAgbWFyZ2luLXRvcDogJHtwcm9wcyA9PiBwcm9wcy4kdG9wIHx8IDB9cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcm93LWdhcDogOHB4O1xuICBqdXN0aWZ5LWl0ZW1zOiBlbmQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyAvKiBwcmV2ZW50IHBhZGRpbmcgZnJvbSBibG9ja2luZyBpbnB1dCAqL1xuICAmID4gKiB7XG4gICAgLyogYWxsIGNoaWxkcmVuIHNob3VsZCBhbGxvdyBpbnB1dCAqL1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIH1cbmA7XG5cbmNvbnN0IExlZ2VuZExvZ28gPSA8S2VwbGVyR2xMb2dvIHZlcnNpb249e2ZhbHNlfSBhcHBOYW1lPVwia2VwbGVyLmdsXCIgLz47XG5cbmV4cG9ydCB0eXBlIE1hcENvbnRyb2xQcm9wcyA9IHtcbiAgZGF0YXNldHM6IERhdGFzZXRzO1xuICBkcmFnUm90YXRlOiBib29sZWFuO1xuICBpc1NwbGl0OiBib29sZWFuO1xuICBwcmltYXJ5OiBib29sZWFuO1xuICBsYXllcnM6IExheWVyW107XG4gIGxheWVyc1RvUmVuZGVyOiB7W2tleTogc3RyaW5nXTogYm9vbGVhbn07XG4gIG1hcEluZGV4OiBudW1iZXI7XG4gIG1hcENvbnRyb2xzOiBNYXBDb250cm9scztcbiAgb25Ub2dnbGVQZXJzcGVjdGl2ZTogKCkgPT4gdm9pZDtcbiAgb25Ub2dnbGVTcGxpdE1hcDogdHlwZW9mIE1hcFN0YXRlQWN0aW9ucy50b2dnbGVTcGxpdE1hcDtcbiAgb25Ub2dnbGVTcGxpdE1hcFZpZXdwb3J0OiAoe1xuICAgIGlzVmlld3BvcnRTeW5jZWQsXG4gICAgaXNab29tTG9ja2VkXG4gIH06IHtcbiAgICBpc1ZpZXdwb3J0U3luY2VkOiBib29sZWFuO1xuICAgIGlzWm9vbUxvY2tlZDogYm9vbGVhbjtcbiAgfSkgPT4gdm9pZDtcbiAgb25NYXBUb2dnbGVMYXllcjogKGxheWVySWQ6IHN0cmluZykgPT4gdm9pZDtcbiAgb25Ub2dnbGVNYXBDb250cm9sOiAoY29udHJvbDogc3RyaW5nKSA9PiB2b2lkO1xuICBvblNldEVkaXRvck1vZGU6IChtb2RlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG9uVG9nZ2xlRWRpdG9yVmlzaWJpbGl0eTogKCkgPT4gdm9pZDtcbiAgb25MYXllclZpc0NvbmZpZ0NoYW5nZTogKG9sZExheWVyOiBMYXllciwgbmV3VmlzQ29uZmlnOiBQYXJ0aWFsPExheWVyVmlzQ29uZmlnPikgPT4gdm9pZDtcbiAgb25Ub2dnbGVMYXllclZpc2liaWxpdHk/OiAobGF5ZXI6IExheWVyKSA9PiB2b2lkO1xuICB0b3A6IG51bWJlcjtcbiAgb25TZXRMb2NhbGU6IHR5cGVvZiBVSVN0YXRlQWN0aW9ucy5zZXRMb2NhbGU7XG4gIGF2YWlsYWJsZUxvY2FsZXM6IHN0cmluZ1tdO1xuICBsb2NhbGU6IHN0cmluZztcbiAgbG9nb0NvbXBvbmVudD86IFJlYWN0LkZDIHwgUmVhY3QuUmVhY3ROb2RlO1xuICBpc0V4cG9ydD86IGJvb2xlYW47XG5cbiAgc2V0TWFwQ29udHJvbFNldHRpbmdzOiB0eXBlb2YgVUlTdGF0ZUFjdGlvbnMuc2V0TWFwQ29udHJvbFNldHRpbmdzO1xuICBhY3RpdmVTaWRlUGFuZWw6IHN0cmluZyB8IG51bGw7XG5cbiAgLy8gb3B0aW9uYWxcbiAgbWFwU3RhdGU/OiBNYXBTdGF0ZTtcbiAgcmVhZE9ubHk/OiBib29sZWFuO1xuICBzY2FsZT86IG51bWJlcjtcbiAgbWFwTGF5ZXJzPzoge1trZXk6IHN0cmluZ106IGJvb2xlYW59O1xuICBlZGl0b3I6IEVkaXRvcjtcbiAgYWN0aW9uQ29tcG9uZW50cz86IFJlYWN0LkNvbXBvbmVudFR5cGU8YW55PltdO1xuICBtYXBIZWlnaHQ/OiBudW1iZXI7XG59O1xuXG5NYXBDb250cm9sRmFjdG9yeS5kZXBzID0gW1xuICBTcGxpdE1hcEJ1dHRvbkZhY3RvcnksXG4gIFRvZ2dsZTNkQnV0dG9uRmFjdG9yeSxcbiAgTGF5ZXJTZWxlY3RvclBhbmVsRmFjdG9yeSxcbiAgTWFwTGVnZW5kUGFuZWxGYWN0b3J5LFxuICBNYXBEcmF3UGFuZWxGYWN0b3J5LFxuICBMb2NhbGVQYW5lbEZhY3Rvcnlcbl07XG5cbmZ1bmN0aW9uIE1hcENvbnRyb2xGYWN0b3J5KFxuICBTcGxpdE1hcEJ1dHRvbjogUmV0dXJuVHlwZTx0eXBlb2YgU3BsaXRNYXBCdXR0b25GYWN0b3J5PixcbiAgVG9nZ2xlM2RCdXR0b246IFJldHVyblR5cGU8dHlwZW9mIFRvZ2dsZTNkQnV0dG9uRmFjdG9yeT4sXG4gIExheWVyU2VsZWN0b3JQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTGF5ZXJTZWxlY3RvclBhbmVsRmFjdG9yeT4sXG4gIE1hcExlZ2VuZFBhbmVsOiBSZXR1cm5UeXBlPHR5cGVvZiBNYXBMZWdlbmRQYW5lbEZhY3Rvcnk+LFxuICBNYXBEcmF3UGFuZWw6IFJldHVyblR5cGU8dHlwZW9mIE1hcERyYXdQYW5lbEZhY3Rvcnk+LFxuICBMb2NhbGVQYW5lbDogUmV0dXJuVHlwZTx0eXBlb2YgTG9jYWxlUGFuZWxGYWN0b3J5PlxuKSB7XG4gIGNvbnN0IERFRkFVTFRfQUNUSU9OUyA9IFtcbiAgICBTcGxpdE1hcEJ1dHRvbixcbiAgICBMYXllclNlbGVjdG9yUGFuZWwsXG4gICAgVG9nZ2xlM2RCdXR0b24sXG4gICAgTWFwRHJhd1BhbmVsLFxuICAgIExvY2FsZVBhbmVsLFxuICAgIE1hcExlZ2VuZFBhbmVsXG4gIF07XG5cbiAgY29uc3QgTWFwQ29udHJvbDogUmVhY3QuRkM8TWFwQ29udHJvbFByb3BzPiAmIHtcbiAgICBkZWZhdWx0QWN0aW9uQ29tcG9uZW50czogTWFwQ29udHJvbFByb3BzWydhY3Rpb25Db21wb25lbnRzJ107XG4gIH0gPSAoe1xuICAgIGFjdGlvbkNvbXBvbmVudHMgPSBERUZBVUxUX0FDVElPTlMsXG4gICAgaXNTcGxpdCA9IGZhbHNlLFxuICAgIHRvcCA9IDAsXG4gICAgbWFwSW5kZXggPSAwLFxuICAgIGxvZ29Db21wb25lbnQgPSBMZWdlbmRMb2dvLFxuICAgIC4uLnJlc3RQcm9wc1xuICB9KSA9PiB7XG4gICAgY29uc3QgYWN0aW9uQ29tcG9uZW50UHJvcHMgPSB7XG4gICAgICBpc1NwbGl0LFxuICAgICAgbWFwSW5kZXgsXG4gICAgICBsb2dvQ29tcG9uZW50LFxuICAgICAgLi4ucmVzdFByb3BzXG4gICAgfTtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZE1hcENvbnRyb2wgY2xhc3NOYW1lPVwibWFwLWNvbnRyb2xcIiAkdG9wPXt0b3B9PlxuICAgICAgICB7YWN0aW9uQ29tcG9uZW50cy5tYXAoKEFjdGlvbkNvbXBvbmVudCwgaW5kZXgpID0+IChcbiAgICAgICAgICA8QWN0aW9uQ29tcG9uZW50IGtleT17aW5kZXh9IGNsYXNzTmFtZT1cIm1hcC1jb250cm9sLWFjdGlvblwiIHsuLi5hY3Rpb25Db21wb25lbnRQcm9wc30gLz5cbiAgICAgICAgKSl9XG4gICAgICA8L1N0eWxlZE1hcENvbnRyb2w+XG4gICAgKTtcbiAgfTtcblxuICBNYXBDb250cm9sLmRlZmF1bHRBY3Rpb25Db21wb25lbnRzID0gREVGQVVMVF9BQ1RJT05TO1xuXG4gIE1hcENvbnRyb2wuZGlzcGxheU5hbWUgPSAnTWFwQ29udHJvbCc7XG5cbiAgcmV0dXJuIE1hcENvbnRyb2w7XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1hcENvbnRyb2xGYWN0b3J5O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUdBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFHQSxJQUFBRyxlQUFBLEdBQUFKLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSSxlQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBSyxtQkFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sZUFBQSxHQUFBUCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU8sYUFBQSxHQUFBUixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVEsWUFBQSxHQUFBVCxzQkFBQSxDQUFBQyxPQUFBO0FBQWdELElBQUFTLFNBQUE7QUFBQSxJQUFBQyxlQUFBLEVBYmhEO0FBQ0E7QUFNQTtBQUFBLFNBQUFDLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEs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
@@ -3,7 +3,7 @@ import MapControlTooltipFactory from './map-control-tooltip';
3
3
  import MapControlToolbarFactory from './map-control-toolbar';
4
4
  import { Editor, MapControls } from '@kepler.gl/types';
5
5
  import { BaseProps } from '../common/icons';
6
- export declare type MapDrawPanelProps = {
6
+ export type MapDrawPanelProps = {
7
7
  editor: Editor;
8
8
  mapControls: MapControls;
9
9
  onToggleMapControl: (control: string) => void;
@@ -6,7 +6,7 @@ import { MapLegendControlSettings } from '@kepler.gl/types';
6
6
  import MapControlPanelFactory from './map-control-panel';
7
7
  import MapControlTooltipFactory from './map-control-tooltip';
8
8
  import MapLegendFactory from './map-legend';
9
- export declare type MapLegendPanelFactoryDeps = [
9
+ export type MapLegendPanelFactoryDeps = [
10
10
  typeof MapControlTooltipFactory,
11
11
  typeof MapControlPanelFactory,
12
12
  typeof MapLegendFactory
@@ -14,7 +14,7 @@ export declare type MapLegendPanelFactoryDeps = [
14
14
  interface MapLegendPanelIcons {
15
15
  legend: ComponentType<any>;
16
16
  }
17
- export declare type MapLegendPanelProps = {
17
+ export type MapLegendPanelProps = {
18
18
  theme: any;
19
19
  layers: ReadonlyArray<Layer>;
20
20
  scale: number;
@@ -25,6 +25,7 @@ export declare type MapLegendPanelProps = {
25
25
  mapControls: MapControls;
26
26
  mapState?: MapState;
27
27
  onLayerVisConfigChange?: (oldLayer: Layer, newVisConfig: Partial<LayerVisConfig>) => void;
28
+ onToggleLayerVisibility?: (layer: Layer) => void;
28
29
  onToggleSplitMapViewport?: ActionHandler<typeof toggleSplitMapViewport>;
29
30
  isViewportUnsyncAllowed?: boolean;
30
31
  onClickControlBtn?: (e?: MouseEvent) => void;
@@ -34,7 +35,7 @@ export declare type MapLegendPanelProps = {
34
35
  activeSidePanel: string | null;
35
36
  setMapControlSettings: any;
36
37
  };
37
- declare type MapLegendPanelComponentType = React.FC<MapLegendPanelProps>;
38
+ type MapLegendPanelComponentType = React.FC<MapLegendPanelProps>;
38
39
  declare function MapLegendPanelFactory(MapControlTooltip: ReturnType<typeof MapControlTooltipFactory>, MapControlPanel: ReturnType<typeof MapControlPanelFactory>, MapLegend: ReturnType<typeof MapLegendFactory>): MapLegendPanelComponentType;
39
40
  declare namespace MapLegendPanelFactory {
40
41
  var deps: (typeof MapControlTooltipFactory | typeof MapControlPanelFactory | typeof MapLegendFactory)[];