@kepler.gl/components 3.3.0-alpha.6 → 3.3.0-alpha.8
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.
- package/dist/cjs/common/data-table/cell-size.js +40 -23
- package/dist/cjs/common/data-table/column-statistics-categoric.js +40 -0
- package/dist/cjs/common/data-table/column-statistics-components.js +65 -0
- package/dist/cjs/common/data-table/column-statistics-numeric.js +87 -0
- package/dist/cjs/common/data-table/column-statistics-time.js +69 -0
- package/dist/cjs/common/data-table/grid.js +2 -2
- package/dist/cjs/common/data-table/header-cell.js +123 -44
- package/dist/cjs/common/data-table/index.js +104 -31
- package/dist/cjs/common/file-uploader/file-upload.js +250 -40
- package/dist/cjs/common/histogram-plot.js +1 -1
- package/dist/cjs/common/icons/circle.js +54 -0
- package/dist/cjs/common/icons/{arrow-down-solid.js → draw-point.js} +21 -11
- package/dist/cjs/common/icons/index.js +22 -1
- package/dist/cjs/common/icons/line-string.js +60 -0
- package/dist/cjs/common/item-selector/item-selector.js +2 -2
- package/dist/cjs/common/portaled.js +3 -3
- package/dist/cjs/common/time-range-slider.js +2 -2
- package/dist/cjs/common/timeline-slider.js +2 -2
- package/dist/cjs/common/toolbar-item.js +24 -3
- package/dist/cjs/editor/editor.js +27 -9
- package/dist/cjs/editor/feature-action-panel.js +34 -12
- package/dist/cjs/editor/feature-properties-editor.js +215 -0
- package/dist/cjs/editor/filter-feature-badges.js +92 -0
- package/dist/cjs/filters/filter-panels/polygon-filter-panel.js +2 -2
- package/dist/cjs/filters/time-widget.js +2 -2
- package/dist/cjs/index.js +33 -1
- package/dist/cjs/kepler-gl.js +20 -3
- package/dist/cjs/map/layer-hover-info.js +2 -2
- package/dist/cjs/map/map-control-toolbar.js +2 -2
- package/dist/cjs/map/map-control.js +14 -8
- package/dist/cjs/map/map-draw-panel.js +74 -15
- package/dist/cjs/map/theme-toggle-button.js +64 -0
- package/dist/cjs/map-container.js +17 -6
- package/dist/cjs/map-view-state-context.js +3 -3
- package/dist/cjs/modal-container.js +3 -2
- package/dist/cjs/modals/cloud-components/cloud-item.js +55 -7
- package/dist/cjs/modals/cloud-components/cloud-item.spec.js +75 -3
- package/dist/cjs/modals/cloud-components/cloud-maps.js +2 -1
- package/dist/cjs/modals/cloud-components/cloud-storage-disclaimer.js +24 -0
- package/dist/cjs/modals/cloud-tile.js +82 -39
- package/dist/cjs/modals/data-table-modal.js +37 -25
- package/dist/cjs/modals/export-video-modal.js +28 -1
- package/dist/cjs/modals/export-video-modal.spec.js +56 -10
- package/dist/cjs/modals/globe-export-video-container.js +19 -3
- package/dist/cjs/modals/globe-export-video-preview.js +25 -7
- package/dist/cjs/modals/hubble-utils.js +8 -3
- package/dist/cjs/modals/image-modal-container.js +2 -2
- package/dist/cjs/modals/load-data-modal.js +3 -3
- package/dist/cjs/modals/load-storage-map.js +9 -6
- package/dist/cjs/modals/save-map-modal.js +4 -3
- package/dist/cjs/modals/share-map-modal.js +5 -4
- package/dist/cjs/modals/swipe-composite-utils.js +9 -1
- package/dist/cjs/modals/swipe-composite-utils.spec.js +69 -0
- package/dist/cjs/modals/swipe-export-video-preview.js +9 -5
- package/dist/cjs/plot-container.js +12 -5
- package/dist/cjs/side-panel/common/dataset-info.js +2 -2
- package/dist/cjs/side-panel/filter-panel/filter-panel.js +2 -2
- package/dist/cjs/side-panel/layer-manager.js +11 -3
- package/dist/cjs/side-panel/layer-panel/custom-palette.js +2 -2
- package/dist/cjs/side-panel/layer-panel/dataset-layer-section.js +11 -3
- package/dist/cjs/side-panel/layer-panel/layer-configurator.js +74 -31
- package/dist/cjs/side-panel/map-style-panel/globe-config-panel.js +90 -25
- package/dist/common/data-table/column-statistics-categoric.d.ts +9 -0
- package/dist/common/data-table/column-statistics-components.d.ts +31 -0
- package/dist/common/data-table/column-statistics-numeric.d.ts +18 -0
- package/dist/common/data-table/column-statistics-time.d.ts +19 -0
- package/dist/common/data-table/header-cell.d.ts +7 -5
- package/dist/common/data-table/index.d.ts +7 -24
- package/dist/common/histogram-plot.d.ts +24 -1
- package/dist/common/icons/{arrow-down-solid.d.ts → circle.d.ts} +2 -1
- package/dist/common/icons/draw-point.d.ts +10 -0
- package/dist/common/icons/index.d.ts +3 -0
- package/dist/common/icons/line-string.d.ts +10 -0
- package/dist/common/toolbar-item.d.ts +2 -0
- package/dist/editor/editor.d.ts +1 -0
- package/dist/editor/feature-action-panel.d.ts +1 -0
- package/dist/editor/feature-properties-editor.d.ts +8 -0
- package/dist/editor/filter-feature-badges.d.ts +12 -0
- package/dist/esm/common/data-table/cell-size.js +40 -23
- package/dist/esm/common/data-table/column-statistics-categoric.js +33 -0
- package/dist/esm/common/data-table/column-statistics-components.js +59 -0
- package/dist/esm/common/data-table/column-statistics-numeric.js +78 -0
- package/dist/esm/common/data-table/column-statistics-time.js +60 -0
- package/dist/esm/common/data-table/grid.js +2 -2
- package/dist/esm/common/data-table/header-cell.js +125 -46
- package/dist/esm/common/data-table/index.js +104 -31
- package/dist/esm/common/file-uploader/file-upload.js +251 -41
- package/dist/esm/common/histogram-plot.js +1 -1
- package/dist/esm/common/icons/circle.js +48 -0
- package/dist/esm/common/icons/draw-point.js +44 -0
- package/dist/esm/common/icons/index.js +4 -1
- package/dist/esm/common/icons/line-string.js +54 -0
- package/dist/esm/common/item-selector/item-selector.js +2 -2
- package/dist/esm/common/portaled.js +3 -3
- package/dist/esm/common/time-range-slider.js +2 -2
- package/dist/esm/common/timeline-slider.js +2 -2
- package/dist/esm/common/toolbar-item.js +24 -3
- package/dist/esm/editor/editor.js +27 -9
- package/dist/esm/editor/feature-action-panel.js +37 -15
- package/dist/esm/editor/feature-properties-editor.js +208 -0
- package/dist/esm/editor/filter-feature-badges.js +85 -0
- package/dist/esm/filters/filter-panels/polygon-filter-panel.js +2 -2
- package/dist/esm/filters/time-widget.js +2 -2
- package/dist/esm/index.js +5 -1
- package/dist/esm/kepler-gl.js +20 -3
- package/dist/esm/map/layer-hover-info.js +2 -2
- package/dist/esm/map/map-control-toolbar.js +2 -2
- package/dist/esm/map/map-control.js +14 -8
- package/dist/esm/map/map-draw-panel.js +72 -11
- package/dist/esm/map/theme-toggle-button.js +55 -0
- package/dist/esm/map-container.js +17 -6
- package/dist/esm/map-view-state-context.js +3 -3
- package/dist/esm/modal-container.js +3 -2
- package/dist/esm/modals/cloud-components/cloud-item.js +53 -7
- package/dist/esm/modals/cloud-components/cloud-item.spec.js +76 -4
- package/dist/esm/modals/cloud-components/cloud-maps.js +2 -1
- package/dist/esm/modals/cloud-components/cloud-storage-disclaimer.js +19 -0
- package/dist/esm/modals/cloud-tile.js +82 -39
- package/dist/esm/modals/data-table-modal.js +38 -26
- package/dist/esm/modals/export-video-modal.js +29 -2
- package/dist/esm/modals/export-video-modal.spec.js +56 -10
- package/dist/esm/modals/globe-export-video-container.js +20 -4
- package/dist/esm/modals/globe-export-video-preview.js +26 -8
- package/dist/esm/modals/hubble-utils.js +8 -3
- package/dist/esm/modals/image-modal-container.js +2 -2
- package/dist/esm/modals/load-data-modal.js +3 -3
- package/dist/esm/modals/load-storage-map.js +8 -3
- package/dist/esm/modals/save-map-modal.js +4 -3
- package/dist/esm/modals/share-map-modal.js +5 -4
- package/dist/esm/modals/swipe-composite-utils.js +9 -1
- package/dist/esm/modals/swipe-composite-utils.spec.js +67 -0
- package/dist/esm/modals/swipe-export-video-preview.js +8 -4
- package/dist/esm/plot-container.js +12 -5
- package/dist/esm/side-panel/common/dataset-info.js +2 -2
- package/dist/esm/side-panel/filter-panel/filter-panel.js +2 -2
- package/dist/esm/side-panel/layer-manager.js +11 -3
- package/dist/esm/side-panel/layer-panel/custom-palette.js +2 -2
- package/dist/esm/side-panel/layer-panel/dataset-layer-section.js +11 -3
- package/dist/esm/side-panel/layer-panel/layer-configurator.js +74 -31
- package/dist/esm/side-panel/map-style-panel/globe-config-panel.js +90 -25
- package/dist/index.d.ts +8 -0
- package/dist/kepler-gl.d.ts +3 -0
- package/dist/map/map-control.d.ts +6 -2
- package/dist/map/map-draw-panel.d.ts +1 -0
- package/dist/map/theme-toggle-button.d.ts +18 -0
- package/dist/map-container.d.ts +1 -0
- package/dist/modals/cloud-components/cloud-item.d.ts +2 -1
- package/dist/modals/cloud-components/cloud-storage-disclaimer.d.ts +2 -0
- package/dist/modals/data-table-modal.d.ts +1 -0
- package/dist/modals/globe-export-video-container.d.ts +2 -0
- package/dist/modals/globe-export-video-preview.d.ts +3 -0
- package/dist/modals/hubble-utils.d.ts +2 -1
- package/dist/modals/swipe-composite-utils.d.ts +1 -1
- package/dist/modals/swipe-composite-utils.spec.d.ts +1 -0
- package/package.json +20 -21
- package/dist/cjs/modals/cloud-components/provider-loading.js +0 -20
- package/dist/cjs/modals/storage-map-viewer.js +0 -98
- package/dist/cjs/side-panel/cloud-storage-dropdown.js +0 -40
- package/dist/esm/common/icons/arrow-down-solid.js +0 -34
- package/dist/esm/modals/cloud-components/provider-loading.js +0 -15
- package/dist/esm/modals/storage-map-viewer.js +0 -93
- package/dist/esm/side-panel/cloud-storage-dropdown.js +0 -33
- package/dist/modals/cloud-components/provider-loading.d.ts +0 -2
- package/dist/modals/storage-map-viewer.d.ts +0 -21
- package/dist/side-panel/cloud-storage-dropdown.d.ts +0 -6
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
+
var _constants = require("@kepler.gl/constants");
|
|
12
|
+
var _utils = require("@kepler.gl/utils");
|
|
13
|
+
var _icons = require("../common/icons");
|
|
14
|
+
var _styledComponents = require("../common/styled-components");
|
|
15
|
+
var _mapControlTooltip = _interopRequireDefault(require("./map-control-tooltip"));
|
|
16
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
17
|
+
// SPDX-License-Identifier: MIT
|
|
18
|
+
// Copyright contributors to the kepler.gl project
|
|
19
|
+
|
|
20
|
+
ThemeToggleButtonFactory.deps = [_mapControlTooltip["default"]];
|
|
21
|
+
function ThemeToggleButtonFactory(MapControlTooltip) {
|
|
22
|
+
var defaultActionIcons = {
|
|
23
|
+
sun: _icons.Sun,
|
|
24
|
+
moon: _icons.Moon
|
|
25
|
+
};
|
|
26
|
+
var ThemeToggleButton = function ThemeToggleButton(_ref) {
|
|
27
|
+
var _mapControls$mapTheme;
|
|
28
|
+
var _ref$themeName = _ref.themeName,
|
|
29
|
+
themeName = _ref$themeName === void 0 ? _constants.THEME.dark : _ref$themeName,
|
|
30
|
+
onSetTheme = _ref.onSetTheme,
|
|
31
|
+
mapControls = _ref.mapControls,
|
|
32
|
+
_ref$actionIcons = _ref.actionIcons,
|
|
33
|
+
actionIcons = _ref$actionIcons === void 0 ? defaultActionIcons : _ref$actionIcons;
|
|
34
|
+
var isLight = themeName === _constants.THEME.light;
|
|
35
|
+
var onClick = (0, _react.useCallback)(function (event) {
|
|
36
|
+
event.preventDefault();
|
|
37
|
+
onSetTheme(isLight ? _constants.THEME.dark : _constants.THEME.light);
|
|
38
|
+
}, [isLight, onSetTheme]);
|
|
39
|
+
if (!(0, _utils.getApplicationConfig)().enableThemeToggle) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
var showControl = mapControls === null || mapControls === void 0 || (_mapControls$mapTheme = mapControls.mapTheme) === null || _mapControls$mapTheme === void 0 ? void 0 : _mapControls$mapTheme.show;
|
|
43
|
+
if (!showControl) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
var Icon = isLight ? actionIcons.moon : actionIcons.sun;
|
|
47
|
+
return /*#__PURE__*/_react["default"].createElement(MapControlTooltip, {
|
|
48
|
+
id: "toggle-theme",
|
|
49
|
+
message: isLight ? 'tooltip.switchToDarkTheme' : 'tooltip.switchToLightTheme'
|
|
50
|
+
}, /*#__PURE__*/_react["default"].createElement(_styledComponents.MapControlButton, {
|
|
51
|
+
className: (0, _classnames["default"])('map-control-button', 'toggle-theme', {
|
|
52
|
+
light: isLight
|
|
53
|
+
}),
|
|
54
|
+
onClick: onClick,
|
|
55
|
+
active: isLight
|
|
56
|
+
}, /*#__PURE__*/_react["default"].createElement(Icon, {
|
|
57
|
+
height: "18px"
|
|
58
|
+
})));
|
|
59
|
+
};
|
|
60
|
+
ThemeToggleButton.displayName = 'ThemeToggleButton';
|
|
61
|
+
return /*#__PURE__*/_react["default"].memo(ThemeToggleButton);
|
|
62
|
+
}
|
|
63
|
+
var _default = exports["default"] = ThemeToggleButtonFactory;
|
|
64
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY29uc3RhbnRzIiwiX3V0aWxzIiwiX2ljb25zIiwiX3N0eWxlZENvbXBvbmVudHMiLCJfbWFwQ29udHJvbFRvb2x0aXAiLCJlIiwidCIsIldlYWtNYXAiLCJyIiwibiIsIl9fZXNNb2R1bGUiLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJfdHlwZW9mIiwiaGFzIiwiZ2V0Iiwic2V0IiwiX3QiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIlRoZW1lVG9nZ2xlQnV0dG9uRmFjdG9yeSIsImRlcHMiLCJNYXBDb250cm9sVG9vbHRpcEZhY3RvcnkiLCJNYXBDb250cm9sVG9vbHRpcCIsImRlZmF1bHRBY3Rpb25JY29ucyIsInN1biIsIlN1biIsIm1vb24iLCJNb29uIiwiVGhlbWVUb2dnbGVCdXR0b24iLCJfcmVmIiwiX21hcENvbnRyb2xzJG1hcFRoZW1lIiwiX3JlZiR0aGVtZU5hbWUiLCJ0aGVtZU5hbWUiLCJUSEVNRSIsImRhcmsiLCJvblNldFRoZW1lIiwibWFwQ29udHJvbHMiLCJfcmVmJGFjdGlvbkljb25zIiwiYWN0aW9uSWNvbnMiLCJpc0xpZ2h0IiwibGlnaHQiLCJvbkNsaWNrIiwidXNlQ2FsbGJhY2siLCJldmVudCIsInByZXZlbnREZWZhdWx0IiwiZ2V0QXBwbGljYXRpb25Db25maWciLCJlbmFibGVUaGVtZVRvZ2dsZSIsInNob3dDb250cm9sIiwibWFwVGhlbWUiLCJzaG93IiwiSWNvbiIsImNyZWF0ZUVsZW1lbnQiLCJpZCIsIm1lc3NhZ2UiLCJNYXBDb250cm9sQnV0dG9uIiwiY2xhc3NOYW1lIiwiY2xhc3NuYW1lcyIsImFjdGl2ZSIsImhlaWdodCIsImRpc3BsYXlOYW1lIiwiUmVhY3QiLCJtZW1vIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21hcC90aGVtZS10b2dnbGUtYnV0dG9uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgUmVhY3QsIHtDb21wb25lbnRUeXBlLCB1c2VDYWxsYmFja30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5cbmltcG9ydCB7VEhFTUV9IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7TWFwQ29udHJvbHN9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtnZXRBcHBsaWNhdGlvbkNvbmZpZ30gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5cbmltcG9ydCB7TW9vbiwgU3VufSBmcm9tICcuLi9jb21tb24vaWNvbnMnO1xuaW1wb3J0IHtNYXBDb250cm9sQnV0dG9ufSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IE1hcENvbnRyb2xUb29sdGlwRmFjdG9yeSBmcm9tICcuL21hcC1jb250cm9sLXRvb2x0aXAnO1xuXG5pbnRlcmZhY2UgVGhlbWVUb2dnbGVCdXR0b25JY29ucyB7XG4gIHN1bjogQ29tcG9uZW50VHlwZTxhbnk+O1xuICBtb29uOiBDb21wb25lbnRUeXBlPGFueT47XG59XG5cbmV4cG9ydCB0eXBlIFRoZW1lVG9nZ2xlQnV0dG9uUHJvcHMgPSB7XG4gIHRoZW1lTmFtZT86IHN0cmluZztcbiAgb25TZXRUaGVtZTogKHRoZW1lOiBzdHJpbmcpID0+IHZvaWQ7XG4gIG1hcENvbnRyb2xzOiBNYXBDb250cm9scztcbiAgYWN0aW9uSWNvbnM/OiBUaGVtZVRvZ2dsZUJ1dHRvbkljb25zO1xufTtcblxuVGhlbWVUb2dnbGVCdXR0b25GYWN0b3J5LmRlcHMgPSBbTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5XTtcblxuZnVuY3Rpb24gVGhlbWVUb2dnbGVCdXR0b25GYWN0b3J5KFxuICBNYXBDb250cm9sVG9vbHRpcDogUmV0dXJuVHlwZTx0eXBlb2YgTWFwQ29udHJvbFRvb2x0aXBGYWN0b3J5PlxuKSB7XG4gIGNvbnN0IGRlZmF1bHRBY3Rpb25JY29ucyA9IHtcbiAgICBzdW46IFN1bixcbiAgICBtb29uOiBNb29uXG4gIH07XG5cbiAgY29uc3QgVGhlbWVUb2dnbGVCdXR0b246IFJlYWN0LkZDPFRoZW1lVG9nZ2xlQnV0dG9uUHJvcHM+ID0gKHtcbiAgICB0aGVtZU5hbWUgPSBUSEVNRS5kYXJrLFxuICAgIG9uU2V0VGhlbWUsXG4gICAgbWFwQ29udHJvbHMsXG4gICAgYWN0aW9uSWNvbnMgPSBkZWZhdWx0QWN0aW9uSWNvbnNcbiAgfSkgPT4ge1xuICAgIGNvbnN0IGlzTGlnaHQgPSB0aGVtZU5hbWUgPT09IFRIRU1FLmxpZ2h0O1xuXG4gICAgY29uc3Qgb25DbGljayA9IHVzZUNhbGxiYWNrKFxuICAgICAgZXZlbnQgPT4ge1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBvblNldFRoZW1lKGlzTGlnaHQgPyBUSEVNRS5kYXJrIDogVEhFTUUubGlnaHQpO1xuICAgICAgfSxcbiAgICAgIFtpc0xpZ2h0LCBvblNldFRoZW1lXVxuICAgICk7XG5cbiAgICBpZiAoIWdldEFwcGxpY2F0aW9uQ29uZmlnKCkuZW5hYmxlVGhlbWVUb2dnbGUpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IHNob3dDb250cm9sID0gbWFwQ29udHJvbHM/Lm1hcFRoZW1lPy5zaG93O1xuICAgIGlmICghc2hvd0NvbnRyb2wpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGNvbnN0IEljb24gPSBpc0xpZ2h0ID8gYWN0aW9uSWNvbnMubW9vbiA6IGFjdGlvbkljb25zLnN1bjtcblxuICAgIHJldHVybiAoXG4gICAgICA8TWFwQ29udHJvbFRvb2x0aXBcbiAgICAgICAgaWQ9XCJ0b2dnbGUtdGhlbWVcIlxuICAgICAgICBtZXNzYWdlPXtpc0xpZ2h0ID8gJ3Rvb2x0aXAuc3dpdGNoVG9EYXJrVGhlbWUnIDogJ3Rvb2x0aXAuc3dpdGNoVG9MaWdodFRoZW1lJ31cbiAgICAgID5cbiAgICAgICAgPE1hcENvbnRyb2xCdXR0b25cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ21hcC1jb250cm9sLWJ1dHRvbicsICd0b2dnbGUtdGhlbWUnLCB7bGlnaHQ6IGlzTGlnaHR9KX1cbiAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgIGFjdGl2ZT17aXNMaWdodH1cbiAgICAgICAgPlxuICAgICAgICAgIDxJY29uIGhlaWdodD1cIjE4cHhcIiAvPlxuICAgICAgICA8L01hcENvbnRyb2xCdXR0b24+XG4gICAgICA8L01hcENvbnRyb2xUb29sdGlwPlxuICAgICk7XG4gIH07XG5cbiAgVGhlbWVUb2dnbGVCdXR0b24uZGlzcGxheU5hbWUgPSAnVGhlbWVUb2dnbGVCdXR0b24nO1xuICByZXR1cm4gUmVhY3QubWVtbyhUaGVtZVRvZ2dsZUJ1dHRvbik7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRoZW1lVG9nZ2xlQnV0dG9uRmFjdG9yeTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxVQUFBLEdBQUFILE9BQUE7QUFFQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFFQSxJQUFBSyxNQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxpQkFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sa0JBQUEsR0FBQUwsc0JBQUEsQ0FBQUYsT0FBQTtBQUE2RCxTQUFBRCx3QkFBQVMsQ0FBQSxFQUFBQyxDQUFBLDZCQUFBQyxP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
|