@kepler.gl/components 3.3.0-alpha.1 → 3.3.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/action-panel.js +1 -1
- package/dist/common/color-legend.d.ts +1 -1
- package/dist/common/data-table/canvas.d.ts +1 -1
- package/dist/common/data-table/index.d.ts +1 -1
- package/dist/common/dnd-layer-items.d.ts +4 -0
- package/dist/common/dnd-layer-items.js +6 -2
- package/dist/common/error-boundary.d.ts +1 -1
- package/dist/common/file-uploader/file-upload.d.ts +1 -1
- package/dist/common/flex-container.d.ts +15 -7
- package/dist/common/icon-button.d.ts +53 -6
- package/dist/common/icons/arrow-down-full.d.ts +2 -1
- package/dist/common/icons/arrow-down-full.js +1 -1
- package/dist/common/icons/folder.d.ts +10 -0
- package/dist/common/icons/folder.js +51 -0
- package/dist/common/icons/index.d.ts +1 -0
- package/dist/common/icons/index.js +8 -1
- package/dist/common/icons/timeline-marker.d.ts +2 -1
- package/dist/common/icons/timeline-marker.js +1 -1
- package/dist/common/item-selector/dropdown-list.d.ts +1 -1
- package/dist/common/item-selector/dropdown-list.js +1 -1
- package/dist/common/item-selector/dropdown-select.d.ts +13 -7
- package/dist/common/item-selector/item-selector.d.ts +1 -1
- package/dist/common/item-selector/item-selector.js +1 -1
- package/dist/common/item-selector/typeahead.d.ts +4 -4
- package/dist/common/item-selector/typeahead.js +1 -3
- package/dist/common/layout-splitter.d.ts +45 -0
- package/dist/common/layout-splitter.js +231 -0
- package/dist/common/line-chart.d.ts +7 -3
- package/dist/common/line-chart.js +179 -59
- package/dist/common/modal.d.ts +11 -5
- package/dist/common/modal.js +1 -1
- package/dist/common/portaled.d.ts +17 -17
- package/dist/common/range-slider.js +1 -3
- package/dist/common/slider/mouse-event.d.ts +1 -1
- package/dist/common/slider/mouse-event.js +1 -2
- package/dist/common/slider/slider-bar-handle.d.ts +1 -1
- package/dist/common/slider/slider-bar-handle.js +1 -1
- package/dist/common/slider/slider-handle.d.ts +3 -3
- package/dist/common/slider/slider-handle.js +1 -1
- package/dist/common/slider/slider.d.ts +4 -4
- package/dist/common/slider/slider.js +1 -1
- package/dist/common/styled-components.d.ts +627 -177
- package/dist/common/vertical-toolbar.d.ts +12 -2
- package/dist/container.d.ts +3 -2
- package/dist/container.js +2 -2
- package/dist/context.d.ts +1 -1
- package/dist/context.js +1 -1
- package/dist/dnd-context.d.ts +4 -3
- package/dist/dnd-context.js +64 -9
- package/dist/effects/compact-color-picker.d.ts +1 -1
- package/dist/effects/effect-configurator.d.ts +2 -4
- package/dist/effects/effect-time-configurator.js +1 -1
- package/dist/effects/effect-type-list-item.d.ts +1 -1
- package/dist/filters/components.d.ts +7 -5
- package/dist/filters/filter-panels/filter-synced-dataset-panel.d.ts +6 -2
- package/dist/geocoder-panel.d.ts +2 -2
- package/dist/geocoder-panel.js +6 -7
- package/dist/hooks/use-dnd-layers.d.ts +4 -3
- package/dist/hooks/use-dnd-layers.js +103 -42
- package/dist/index.d.ts +3 -2
- package/dist/index.js +38 -9
- package/dist/injector.d.ts +1 -1
- package/dist/kepler-gl.d.ts +167 -27
- package/dist/kepler-gl.js +3 -2
- package/dist/loading-indicator.d.ts +1 -1
- package/dist/map/layer-hover-info.d.ts +7 -3
- package/dist/map/layer-hover-info.js +58 -22
- package/dist/map/map-control-panel.js +3 -2
- package/dist/map/map-control-toolbar.d.ts +29 -4
- package/dist/map/map-control.d.ts +11 -4
- package/dist/map/map-control.js +7 -6
- package/dist/map/map-legend-panel.d.ts +11 -2
- package/dist/map/map-legend-panel.js +19 -2
- package/dist/map/map-legend.d.ts +19 -2
- package/dist/map/map-legend.js +141 -27
- package/dist/map/split-map-button.d.ts +6 -1
- package/dist/map/split-map-button.js +113 -19
- package/dist/map-container.js +20 -3
- package/dist/maps-layout.d.ts +3 -0
- package/dist/maps-layout.js +86 -26
- package/dist/modal-container.d.ts +1 -1
- package/dist/modals/cloud-tile.d.ts +1 -2
- package/dist/modals/export-map-modal/components.d.ts +9 -5
- package/dist/modals/export-video-modal.d.ts +3 -0
- package/dist/modals/export-video-modal.js +79 -46
- package/dist/modals/export-video-modal.spec.js +2 -2
- package/dist/modals/hubble-utils.d.ts +16 -0
- package/dist/modals/hubble-utils.js +98 -1
- package/dist/modals/modal-dialog.d.ts +1 -1
- package/dist/modals/share-map-modal.d.ts +2 -4
- package/dist/modals/swipe-composite-utils.d.ts +10 -0
- package/dist/modals/swipe-composite-utils.js +108 -0
- package/dist/modals/swipe-export-settings.d.ts +24 -0
- package/dist/modals/swipe-export-settings.js +370 -0
- package/dist/modals/swipe-export-video-container.d.ts +122 -0
- package/dist/modals/swipe-export-video-container.js +630 -0
- package/dist/modals/swipe-export-video-preview.d.ts +68 -0
- package/dist/modals/swipe-export-video-preview.js +339 -0
- package/dist/modals/tilesets-modals/tileset-raster-form.js +1 -5
- package/dist/side-panel/filter-panel/filter-panel-header.d.ts +7 -3
- package/dist/side-panel/layer-manager.d.ts +5 -4
- package/dist/side-panel/layer-manager.js +16 -4
- package/dist/side-panel/layer-panel/color-selector.d.ts +6 -4
- package/dist/side-panel/layer-panel/custom-palette.d.ts +3 -5
- package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +2 -1
- package/dist/side-panel/layer-panel/dataset-layer-group.js +1 -1
- package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +2 -1
- package/dist/side-panel/layer-panel/dataset-layer-section.js +1 -1
- package/dist/side-panel/layer-panel/layer-config-group.d.ts +5 -11
- package/dist/side-panel/layer-panel/layer-configurator.js +130 -82
- package/dist/side-panel/layer-panel/layer-group-header.d.ts +15 -0
- package/dist/side-panel/layer-panel/layer-group-header.js +179 -0
- package/dist/side-panel/layer-panel/layer-list.d.ts +9 -4
- package/dist/side-panel/layer-panel/layer-list.js +197 -40
- package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +2 -10
- package/dist/side-panel/panel-tab.d.ts +1 -3
- package/dist/side-panel/panel-view-list-toggle.d.ts +4 -4
- package/dist/side-panel/side-bar.d.ts +1 -6
- package/dist/side-panel.d.ts +1 -1
- package/dist/types.d.ts +2 -2
- package/dist/types.js +1 -1
- package/package.json +29 -35
- package/dist/map/layer-selector-panel.d.ts +0 -21
- package/dist/map/layer-selector-panel.js +0 -85
- package/dist/side-panel/layer-panel/radius-by-zoom-input.d.ts +0 -11
- package/dist/side-panel/layer-panel/radius-by-zoom-input.js +0 -220
|
@@ -299,4 +299,4 @@ function EffectTimeConfiguratorFactory(TimezoneSelector, EffectTimeSlider, Effec
|
|
|
299
299
|
// @ts-expect-error how to properly type?
|
|
300
300
|
return (0, _injector.withState)([_reducers.mapStateLens])((0, _reactIntl.injectIntl)(EffectTimeConfigurator));
|
|
301
301
|
}
|
|
302
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RJbnRsIiwiX3N0eWxlZENvbXBvbmVudHMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX21vbWVudFRpbWV6b25lIiwiX3N1bmNhbGMiLCJfbG9jYWxpemF0aW9uIiwiX3V0aWxzIiwiX2NvbnN0YW50cyIsIl9yZWR1Y2VycyIsIl9pbmplY3RvciIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9jaGVja2JveCIsIl9idXR0b24iLCJfaWNvbnMiLCJfdGltZXpvbmVTZWxlY3RvciIsIl9lZmZlY3RUaW1lU2xpZGVyIiwiX2VmZmVjdFRpbWVTZWxlY3RvciIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX3RlbXBsYXRlT2JqZWN0NCIsIl90ZW1wbGF0ZU9iamVjdDUiLCJfdGVtcGxhdGVPYmplY3Q2IiwiX3RlbXBsYXRlT2JqZWN0NyIsIl90ZW1wbGF0ZU9iamVjdDgiLCJfdGVtcGxhdGVPYmplY3Q5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiREFZX01JTElTRUNPTkRTIiwiU3R5bGVkV3JhcHBlciIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJfcHJvcHMkJG1hcmdpbkJvdHRvbSIsIiRtYXJnaW5Cb3R0b20iLCJoaWRkZW4iLCJTbGlkZXJXcmFwcGVyIiwiU3R5bGVkQnV0dG9uIiwiQnV0dG9uIiwidGhlbWUiLCJlZmZlY3RQYW5lbFRleHRTZWNvbmRhcnkyIiwiaW5wdXRCZ2QiLCJlZmZlY3RQYW5lbFRleHRNYWluIiwiaW5wdXRCZ2RIb3ZlciIsIlN0eWxlZFJhZGlvIiwiQ2hlY2tib3giLCJmb250RmFtaWx5IiwiaW5wdXRGb250U2l6ZSIsImFjdGl2ZUNvbG9yIiwiU3R5bGVkRWZmZWN0VGltZUNvbmZpZ3VyYXRvciIsIlN0eWxlZERhdGVQaWNrZXIiLCJXaXRoSWNvbldyYXBwZXIiLCJ3aWR0aCIsImNvbmNhdCIsIlN0eWxlZEV4dHJhSWNvbiIsIlRleHRCbG9jayIsImdldFRpbWVzdGFtcCIsImRhdGVTdHIiLCJ0aW1lU3RyIiwidGltZXpvbmUiLCJ0aW1lc3RhbXAiLCJjdXJyIiwibW9tZW50IiwidHoiLCJpc1ZhbGlkIiwidXRjIiwidmFsdWVPZiIsImdldERheVJhdGlvIiwiZGF0ZSIsImhvdXJzIiwibWludXRlcyIsIkVmZmVjdFRpbWVDb25maWd1cmF0b3JGYWN0b3J5IiwiZGVwcyIsIlRpbWV6b25lU2VsZWN0b3JGYWN0b3J5IiwiRWZmZWN0VGltZVNsaWRlckZhY3RvcnkiLCJFZmZlY3RUaW1lU2VsZWN0b3JGYWN0b3J5IiwiVGltZXpvbmVTZWxlY3RvciIsIkVmZmVjdFRpbWVTbGlkZXIiLCJFZmZlY3RUaW1lU2VsZWN0b3IiLCJFZmZlY3RUaW1lQ29uZmlndXJhdG9yIiwiX3JlZiIsIl90aW1lem9uZSIsInRpbWVNb2RlIiwib25UaW1lUGFyYW1ldGVyc0NoYW5nZWQiLCJvbkNoYW5nZSIsIm1hcFN0YXRlIiwiaW50bCIsInVzZU1lbW8iLCJuYW1lcyIsImluY2x1ZGVzIiwiREVGQVVMVF9USU1FWk9ORSIsIl91c2VNZW1vIiwiY3VycmVudE1vbWVudCIsImRheVByb2dyZXNzIiwiRGF0ZSIsInNldEZ1bGxZZWFyIiwieWVhciIsIm1vbnRoIiwic2V0SG91cnMiLCJ0b0RhdGUiLCJmb3JtYXQiLCJfdXNlTWVtbzIiLCJfc2xpY2VkVG9BcnJheTIiLCJkYXRlUGlja2VyRGF0ZSIsImZ1bGxEYXRlIiwiZm9ybWF0dGVkVGltZSIsImZvcm1hdHRlZERhdGUiLCJkYXlUaW1lUHJvZ3Jlc3MiLCJ0aW1lU2xpZGVyQ29uZmlnIiwidGltZXMiLCJTdW5DYWxjIiwiZ2V0VGltZXMiLCJsYXRpdHVkZSIsImxvbmdpdHVkZSIsImRhd24iLCJzdW5yaXNlIiwic3Vuc2V0IiwiZHVzayIsInN1bnJpc2VUaW1lIiwic3Vuc2V0VGltZSIsIm9uVGltZVNsaWRlckNoYW5nZSIsInVzZUNhbGxiYWNrIiwidmFsdWUiLCJjbGFtcCIsIk1hdGgiLCJmbG9vciIsIm5ld0Zvcm1hdHRlZFRpbWUiLCJuZXdUaW1lc3RhbXAiLCJzZXREYXRlIiwibmV3RGF0ZSIsIm5ld0Zvcm1hdHRlZERhdGUiLCJzZXRUaW1lIiwibmV3VGltZSIsInNldFRpbWV6b25lIiwibmV3VGltZXpvbmUiLCJzZXRDdXJyZW50RGF0ZVRpbWUiLCJmb3JtYXRTaG9ydFdlZWtkYXkiLCJsb2NhbGUiLCJnZXREYXkiLCJkaXNhYmxlRGF0ZVRpbWVQaWNrIiwiTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUyIsInBpY2siLCJjcmVhdGVFbGVtZW50IiwidHlwZSIsImNoZWNrZWQiLCJpZCIsImxhYmVsIiwiZm9ybWF0TWVzc2FnZSIsImNvbmZpZyIsIkZvcm1hdHRlZE1lc3NhZ2UiLCJvbkNsaWNrIiwiTG9jYXRpb25NYXJrZXIiLCJoZWlnaHQiLCJUb29sdGlwIiwiZWZmZWN0IiwicGxhY2UiLCJkZWxheVNob3ciLCJtaW5EZXRhaWwiLCJDYWxlbmRhciIsIkNsb2NrIiwic2VsZWN0ZWQiLCJvblNlbGVjdCIsIkdsb2JlIiwiY3VycmVudCIsImFuaW1hdGlvbiIsIndpdGhTdGF0ZSIsIm1hcFN0YXRlTGVucyIsImluamVjdEludGwiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZWZmZWN0cy9lZmZlY3QtdGltZS1jb25maWd1cmF0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge2luamVjdEludGwsIEludGxTaGFwZX0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCBTdW5DYWxjIGZyb20gJ3N1bmNhbGMnO1xuXG5pbXBvcnQge01hcFN0YXRlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtjbGFtcH0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge1xuICBMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVF9USU1FX01PREVTLFxuICBMaWdodEFuZFNoYWRvd0VmZmVjdFRpbWVNb2RlLFxuICBERUZBVUxUX1RJTUVaT05FXG59IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7bWFwU3RhdGVMZW5zfSBmcm9tICdAa2VwbGVyLmdsL3JlZHVjZXJzJztcblxuaW1wb3J0IHt3aXRoU3RhdGV9IGZyb20gJy4uL2luamVjdG9yJztcbmltcG9ydCB7U3R5bGVkRGF0ZVBpY2tlciBhcyBEYXRlUGlja2VyLCBUb29sdGlwfSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IENoZWNrYm94IGZyb20gJy4uL2NvbW1vbi9jaGVja2JveCc7XG5pbXBvcnQgQnV0dG9uIGZyb20gJy4uL2NvbW1vbi9kYXRhLXRhYmxlL2J1dHRvbic7XG5pbXBvcnQge0xvY2F0aW9uTWFya2VyLCBDYWxlbmRhciwgQ2xvY2ssIEdsb2JlfSBmcm9tICcuLi9jb21tb24vaWNvbnMnO1xuaW1wb3J0IFRpbWV6b25lU2VsZWN0b3JGYWN0b3J5IGZyb20gJy4vdGltZXpvbmUtc2VsZWN0b3InO1xuaW1wb3J0IEVmZmVjdFRpbWVTbGlkZXJGYWN0b3J5IGZyb20gJy4vZWZmZWN0LXRpbWUtc2xpZGVyJztcbmltcG9ydCBFZmZlY3RUaW1lU2VsZWN0b3JGYWN0b3J5IGZyb20gJy4vZWZmZWN0LXRpbWUtc2VsZWN0b3InO1xuXG5jb25zdCBEQVlfTUlMSVNFQ09ORFMgPSAxMDAwICogNjAgKiA2MCAqIDI0O1xuXG5leHBvcnQgdHlwZSBFZmZlY3RUaW1lQ29uZmlndXJhdG9yUHJvcHMgPSB7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xuICB0aW1lem9uZTogc3RyaW5nO1xuICB0aW1lTW9kZTogTGlnaHRBbmRTaGFkb3dFZmZlY3RUaW1lTW9kZTtcbiAgb25DaGFuZ2U6IChwYXJhbWV0ZXJzOiB7XG4gICAgdGltZXN0YW1wPzogbnVtYmVyIHwgbnVsbDtcbiAgICB0aW1lem9uZT86IHN0cmluZztcbiAgICB0aW1lTW9kZT86IExpZ2h0QW5kU2hhZG93RWZmZWN0VGltZU1vZGU7XG4gIH0pID0+IHZvaWQ7XG59O1xuXG50eXBlIFN0eWxlZFdyYXBwZXJQcm9wcyA9IHtkaXNhYmxlZD86IGJvb2xlYW47ICRtYXJnaW5Cb3R0b20/OiBudW1iZXJ9O1xuY29uc3QgU3R5bGVkV3JhcHBlciA9IHN0eWxlZC5kaXY8U3R5bGVkV3JhcHBlclByb3BzPmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAke3Byb3BzID0+IHByb3BzLiRtYXJnaW5Cb3R0b20gPz8gOX1weDtcbiAgJHtwcm9wcyA9PiAocHJvcHMuaGlkZGVuID8gJ2Rpc3BsYXk6IG5vbmU7JyA6ICcnKX1cbmA7XG5cbnR5cGUgU2xpZGVyV3JhcHBlclByb3BzID0ge2Rpc2FibGVkPzogYm9vbGVhbn07XG5jb25zdCBTbGlkZXJXcmFwcGVyID0gc3R5bGVkLmRpdjxTbGlkZXJXcmFwcGVyUHJvcHM+YFxuICBtYXJnaW4tdG9wOiAxM3B4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAke3Byb3BzID0+IChwcm9wcy5oaWRkZW4gPyAnZGlzcGxheTogbm9uZTsnIDogJycpfVxuYDtcblxuY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbilgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTJ9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkfTtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lZmZlY3RQYW5lbFRleHRNYWlufTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkSG92ZXJ9O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRSYWRpbyA9IHN0eWxlZChDaGVja2JveClgXG4gIC5rZy1jaGVja2JveF9fbGFiZWwge1xuICAgIGZvbnQtZmFtaWx5OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmZvbnRGYW1pbHl9O1xuICAgIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEZvbnRTaXplfTtcbiAgfVxuICAua2ctY2hlY2tib3hfX2xhYmVsOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTJ9O1xuICB9XG4gIGlucHV0OmNoZWNrZWQgKyAua2ctY2hlY2tib3hfX2xhYmVsOmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgfVxuICAua2ctY2hlY2tib3hfX2xhYmVsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgfVxuYDtcblxuY29uc3QgU3R5bGVkRWZmZWN0VGltZUNvbmZpZ3VyYXRvciA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgbWFyZ2luLXRvcDogM3B4O1xuYDtcblxuY29uc3QgU3R5bGVkRGF0ZVBpY2tlciA9IHN0eWxlZC5kaXZgXG4gIC5yZWFjdC1kYXRlLXBpY2tlci0tb3BlbiAucmVhY3QtZGF0ZS1waWNrZXJfX3dyYXBwZXIgLnJlYWN0LWRhdGUtcGlja2VyX19pbnB1dEdyb3VwIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDBweCAwcHggIWltcG9ydGFudDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX3ByZXYyLWJ1dHRvbixcbiAgLnJlYWN0LWNhbGVuZGFyX19uYXZpZ2F0aW9uX19uZXh0Mi1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnJlYWN0LWNhbGVuZGFyX19uYXZpZ2F0aW9uX19sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX2Fycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxOHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX3ByZXYtYnV0dG9uIHtcbiAgICByaWdodDogMzZweDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX25leHQtYnV0dG9uIHtcbiAgICByaWdodDogMTJweDtcbiAgfVxuYDtcblxudHlwZSBXaXRoSWNvbldyYXBwZXJQcm9wcyA9IHt3aWR0aD86IHN0cmluZ307XG5jb25zdCBXaXRoSWNvbldyYXBwZXIgPSBzdHlsZWQuZGl2PFdpdGhJY29uV3JhcHBlclByb3BzPmBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAke3Byb3BzID0+IChwcm9wcy53aWR0aCA/IGB3aWR0aDogJHtwcm9wcy53aWR0aH1gIDogJycpfVxuYDtcblxuY29uc3QgU3R5bGVkRXh0cmFJY29uID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogOHB4O1xuICB3aWR0aDogMHB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTJ9O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbmA7XG5cbnR5cGUgVGV4dEJsb2NrUHJvcHMgPSB7XG4gIHdpZHRoPzogc3RyaW5nO1xufTtcbmNvbnN0IFRleHRCbG9jayA9IHN0eWxlZC5kaXY8VGV4dEJsb2NrUHJvcHM+YFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lZmZlY3RQYW5lbFRleHRTZWNvbmRhcnkyfTtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMud2lkdGh9O1xuICBmb250LXNpemU6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRGb250U2l6ZX07XG5gO1xuXG4vKipcbiAqIENvbnZlcnRzIGRhdGUsIHRpbWUgYW5kIHRpbWV6b25lIGludG8gYSBVVEMgdGltZXN0YW1wLlxuICogQHBhcmFtIGRhdGVTdHIgRGF0ZSBzdHJpbmcgaW4gWVlZWS1NTS1ERCBmb3JtYXQuXG4gKiBAcGFyYW0gdGltZVN0ciBUaW1lIHN0cmluZyBpbiBISDpNTSBmb3JtYXQuXG4gKiBAcGFyYW0gdGltZXpvbmUgVGltZXpvbmUgbmFtZS5cbiAqIEByZXR1cm5zIFRpbWVzdGFtcCBvciBudWxsIGlmIGNhc2Ugb2YgYmFkIGlucHV0cy5cbiAqL1xuY29uc3QgZ2V0VGltZXN0YW1wID0gKGRhdGVTdHI6IHN0cmluZywgdGltZVN0cjogc3RyaW5nLCB0aW1lem9uZTogc3RyaW5nKTogbnVtYmVyIHwgbnVsbCA9PiB7XG4gIGxldCB0aW1lc3RhbXA6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBjb25zdCBjdXJyID0gbW9tZW50LnR6KGAke2RhdGVTdHJ9VCR7dGltZVN0cn06MDBgLCB0aW1lem9uZSk7XG4gIGlmIChjdXJyLmlzVmFsaWQoKSkge1xuICAgIHRpbWVzdGFtcCA9IGN1cnIudXRjKCkudmFsdWVPZigpO1xuICB9XG4gIHJldHVybiB0aW1lc3RhbXA7XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIHRpbWUgb2YgdGhlIGRheSBpbnRvIFswLCAxXSByYW5nZVxuICogQHBhcmFtIGRhdGVcbiAqIEByZXR1cm5zXG4gKi9cbmNvbnN0IGdldERheVJhdGlvID0gKGRhdGU6IG1vbWVudC5Nb21lbnQpID0+IHtcbiAgcmV0dXJuICgoZGF0ZS5ob3VycygpICogNjAgKyBkYXRlLm1pbnV0ZXMoKSkgKiA2MCAqIDEwMDApIC8gREFZX01JTElTRUNPTkRTO1xufTtcblxuRWZmZWN0VGltZUNvbmZpZ3VyYXRvckZhY3RvcnkuZGVwcyA9IFtcbiAgVGltZXpvbmVTZWxlY3RvckZhY3RvcnksXG4gIEVmZmVjdFRpbWVTbGlkZXJGYWN0b3J5LFxuICBFZmZlY3RUaW1lU2VsZWN0b3JGYWN0b3J5XG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBFZmZlY3RUaW1lQ29uZmlndXJhdG9yRmFjdG9yeShcbiAgVGltZXpvbmVTZWxlY3RvcjogUmV0dXJuVHlwZTx0eXBlb2YgVGltZXpvbmVTZWxlY3RvckZhY3Rvcnk+LFxuICBFZmZlY3RUaW1lU2xpZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBFZmZlY3RUaW1lU2xpZGVyRmFjdG9yeT4sXG4gIEVmZmVjdFRpbWVTZWxlY3RvcjogUmV0dXJuVHlwZTx0eXBlb2YgRWZmZWN0VGltZVNlbGVjdG9yRmFjdG9yeT5cbik6IFJlYWN0LkZDPEVmZmVjdFRpbWVDb25maWd1cmF0b3JQcm9wcz4ge1xuICBjb25zdCBFZmZlY3RUaW1lQ29uZmlndXJhdG9yID0gKHtcbiAgICB0aW1lc3RhbXAsXG4gICAgdGltZXpvbmU6IF90aW1lem9uZSxcbiAgICB0aW1lTW9kZSxcbiAgICBvbkNoYW5nZTogb25UaW1lUGFyYW1ldGVyc0NoYW5nZWQsXG4gICAgbWFwU3RhdGUsXG4gICAgaW50bFxuICB9OiBFZmZlY3RUaW1lQ29uZmlndXJhdG9yUHJvcHMgJiB7aW50bDogSW50bFNoYXBlOyBtYXBTdGF0ZTogTWFwU3RhdGV9KSA9PiB7XG4gICAgY29uc3QgdGltZXpvbmUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIHJldHVybiBtb21lbnQudHoubmFtZXMoKS5pbmNsdWRlcyhfdGltZXpvbmUpID8gX3RpbWV6b25lIDogREVGQVVMVF9USU1FWk9ORTtcbiAgICB9LCBbX3RpbWV6b25lXSk7XG5cbiAgICBjb25zdCBbZGF0ZVBpY2tlckRhdGUsIGZ1bGxEYXRlLCBmb3JtYXR0ZWRUaW1lLCBmb3JtYXR0ZWREYXRlLCBkYXlUaW1lUHJvZ3Jlc3NdID1cbiAgICAgIHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBjb25zdCBjdXJyZW50TW9tZW50ID0gbW9tZW50LnR6KHRpbWVzdGFtcCwgdGltZXpvbmUpO1xuXG4gICAgICAgIC8vIFNsaWRlciB2YWx1ZSBmcm9tIDAgdG8gMVxuICAgICAgICBjb25zdCBkYXlQcm9ncmVzcyA9IGdldERheVJhdGlvKGN1cnJlbnRNb21lbnQpO1xuXG4gICAgICAgIC8vIERhdGUgcGlja2VyIGFsd2F5cyByZW5kZXJzIERhdGUgaW4gbG9jYWwgdGltZXpvbmVcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGRhdGUuc2V0RnVsbFllYXIoY3VycmVudE1vbWVudC55ZWFyKCksIGN1cnJlbnRNb21lbnQubW9udGgoKSwgY3VycmVudE1vbWVudC5kYXRlKCkpO1xuICAgICAgICBkYXRlLnNldEhvdXJzKDAsIDAsIDAsIDApO1xuXG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgZGF0ZSxcbiAgICAgICAgICBjdXJyZW50TW9tZW50LnRvRGF0ZSgpLFxuICAgICAgICAgIGN1cnJlbnRNb21lbnQuZm9ybWF0KCdISDptbScpLFxuICAgICAgICAgIGN1cnJlbnRNb21lbnQuZm9ybWF0KCdZWVlZLU1NLUREJyksXG4gICAgICAgICAgZGF5UHJvZ3Jlc3NcbiAgICAgICAgXTtcbiAgICAgIH0sIFt0aW1lc3RhbXAsIHRpbWV6b25lXSk7XG5cbiAgICBjb25zdCB0aW1lU2xpZGVyQ29uZmlnID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCB0aW1lcyA9IFN1bkNhbGMuZ2V0VGltZXMoZnVsbERhdGUsIG1hcFN0YXRlLmxhdGl0dWRlLCBtYXBTdGF0ZS5sb25naXR1ZGUpO1xuICAgICAgY29uc3Qge2Rhd24sIHN1bnJpc2UsIHN1bnNldCwgZHVza30gPSB0aW1lcztcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF3bjogZ2V0RGF5UmF0aW8obW9tZW50LnR6KGRhd24udmFsdWVPZigpLCB0aW1lem9uZSkpLFxuICAgICAgICBzdW5yaXNlOiBnZXREYXlSYXRpbyhtb21lbnQudHooc3VucmlzZS52YWx1ZU9mKCksIHRpbWV6b25lKSksXG4gICAgICAgIHN1bnNldDogZ2V0RGF5UmF0aW8obW9tZW50LnR6KHN1bnNldC52YWx1ZU9mKCksIHRpbWV6b25lKSksXG4gICAgICAgIGR1c2s6IGdldERheVJhdGlvKG1vbWVudC50eihkdXNrLnZhbHVlT2YoKSwgdGltZXpvbmUpKSxcbiAgICAgICAgc3VucmlzZVRpbWU6IG1vbWVudC50eihzdW5yaXNlLnZhbHVlT2YoKSwgdGltZXpvbmUpLmZvcm1hdCgnaGg6bW0gQScpLFxuICAgICAgICBzdW5zZXRUaW1lOiBtb21lbnQudHooc3Vuc2V0LnZhbHVlT2YoKSwgdGltZXpvbmUpLmZvcm1hdCgnaGg6bW0gQScpXG4gICAgICB9O1xuICAgIH0sIFtmdWxsRGF0ZSwgdGltZXpvbmUsIG1hcFN0YXRlLmxhdGl0dWRlLCBtYXBTdGF0ZS5sb25naXR1ZGVdKTtcblxuICAgIGNvbnN0IG9uVGltZVNsaWRlckNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgdmFsdWUgPT4ge1xuICAgICAgICBjb25zdCBob3VycyA9IGNsYW1wKFswLCAyM10sIE1hdGguZmxvb3IodmFsdWVbMV0gKiAyNCkpO1xuICAgICAgICBjb25zdCBtaW51dGVzID0gY2xhbXAoWzAsIDU5XSwgTWF0aC5mbG9vcigodmFsdWVbMV0gKiAyNCAtIGhvdXJzKSAqIDYwKSk7XG5cbiAgICAgICAgY29uc3QgbmV3Rm9ybWF0dGVkVGltZSA9IGAke2hvdXJzIDwgMTAgPyBgMCR7aG91cnN9YCA6IGhvdXJzfToke1xuICAgICAgICAgIG1pbnV0ZXMgPCAxMCA/IGAwJHttaW51dGVzfWAgOiBtaW51dGVzXG4gICAgICAgIH1gO1xuICAgICAgICBjb25zdCBuZXdUaW1lc3RhbXAgPSBnZXRUaW1lc3RhbXAoZm9ybWF0dGVkRGF0ZSwgbmV3Rm9ybWF0dGVkVGltZSwgdGltZXpvbmUpO1xuICAgICAgICBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZCh7dGltZXN0YW1wOiBuZXdUaW1lc3RhbXB9KTtcbiAgICAgIH0sXG4gICAgICBbZm9ybWF0dGVkRGF0ZSwgdGltZXpvbmUsIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkXVxuICAgICk7XG5cbiAgICBjb25zdCBzZXREYXRlID0gdXNlQ2FsbGJhY2soXG4gICAgICBuZXdEYXRlID0+IHtcbiAgICAgICAgaWYgKCFuZXdEYXRlKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgbmV3Rm9ybWF0dGVkRGF0ZSA9IG1vbWVudChuZXdEYXRlKS5mb3JtYXQoJ1lZWVktTU0tREQnKTtcbiAgICAgICAgY29uc3QgbmV3VGltZXN0YW1wID0gZ2V0VGltZXN0YW1wKG5ld0Zvcm1hdHRlZERhdGUsIGZvcm1hdHRlZFRpbWUsIHRpbWV6b25lKTtcbiAgICAgICAgb25UaW1lUGFyYW1ldGVyc0NoYW5nZWQoe3RpbWVzdGFtcDogbmV3VGltZXN0YW1wfSk7XG4gICAgICB9LFxuICAgICAgW2Zvcm1hdHRlZFRpbWUsIHRpbWV6b25lLCBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZF1cbiAgICApO1xuXG4gICAgY29uc3Qgc2V0VGltZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgbmV3VGltZSA9PiB7XG4gICAgICAgIGlmICghbmV3VGltZSkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IG5ld1RpbWVzdGFtcCA9IGdldFRpbWVzdGFtcChmb3JtYXR0ZWREYXRlLCBuZXdUaW1lLCB0aW1lem9uZSk7XG4gICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lc3RhbXA6IG5ld1RpbWVzdGFtcH0pO1xuICAgICAgfSxcbiAgICAgIFtmb3JtYXR0ZWREYXRlLCB0aW1lem9uZSwgb25UaW1lUGFyYW1ldGVyc0NoYW5nZWRdXG4gICAgKTtcblxuICAgIGNvbnN0IHNldFRpbWV6b25lID0gdXNlQ2FsbGJhY2soXG4gICAgICBuZXdUaW1lem9uZSA9PiB7XG4gICAgICAgIGlmICghbmV3VGltZXpvbmUpIHJldHVybjtcblxuICAgICAgICBjb25zdCBuZXdUaW1lc3RhbXAgPSBnZXRUaW1lc3RhbXAoZm9ybWF0dGVkRGF0ZSwgZm9ybWF0dGVkVGltZSwgbmV3VGltZXpvbmUpO1xuICAgICAgICAvLyBkYXRlIGFuZCB0aW1lIGFyZSBhZGp1c3RlZCB0byBoYXZlIHRoZSBzYW1lIHZhbHVlIGJ1dCBpbiB0aGUgbmV3IHRpbWV6b25lXG4gICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lc3RhbXA6IG5ld1RpbWVzdGFtcCwgdGltZXpvbmU6IG5ld1RpbWV6b25lfSk7XG4gICAgICB9LFxuICAgICAgW2Zvcm1hdHRlZERhdGUsIGZvcm1hdHRlZFRpbWUsIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkXVxuICAgICk7XG5cbiAgICBjb25zdCBzZXRDdXJyZW50RGF0ZVRpbWUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZCh7dGltZXN0YW1wOiBuZXcgRGF0ZSgpLnZhbHVlT2YoKX0pO1xuICAgIH0sIFtvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZF0pO1xuXG4gICAgY29uc3QgZm9ybWF0U2hvcnRXZWVrZGF5ID0gdXNlQ2FsbGJhY2soKGxvY2FsZSwgZGF0ZSkgPT4ge1xuICAgICAgcmV0dXJuIFsnUycsICdNJywgJ1QnLCAnVycsICdUJywgJ0YnLCAnUyddW2RhdGUuZ2V0RGF5KCldO1xuICAgIH0sIFtdKTtcblxuICAgIGNvbnN0IGRpc2FibGVEYXRlVGltZVBpY2sgPSB0aW1lTW9kZSAhPT0gTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5waWNrO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRFZmZlY3RUaW1lQ29uZmlndXJhdG9yPlxuICAgICAgICA8U3R5bGVkV3JhcHBlciAkbWFyZ2luQm90dG9tPXsxNn0+XG4gICAgICAgICAgPFN0eWxlZFJhZGlvXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgY2hlY2tlZD17dGltZU1vZGUgPT09IExJR0hUX0FORF9TSEFET1dfRUZGRUNUX1RJTUVfTU9ERVMucGlja31cbiAgICAgICAgICAgIGlkPXtgZWZmZWN0LXRpbWUtdG9nZ2xlLXVzZS1waWNrLXRpbWVgfVxuICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgIGlkOiAnZWZmZWN0TWFuYWdlci5waWNrRGF0ZVRpbWUnXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXsoKSA9PiB7XG4gICAgICAgICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lTW9kZTogTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5waWNrfSk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU3R5bGVkV3JhcHBlcj5cblxuICAgICAgICA8U2xpZGVyV3JhcHBlciBoaWRkZW49e2Rpc2FibGVEYXRlVGltZVBpY2t9PlxuICAgICAgICAgIDxFZmZlY3RUaW1lU2xpZGVyXG4gICAgICAgICAgICB2YWx1ZT17ZGF5VGltZVByb2dyZXNzfVxuICAgICAgICAgICAgb25DaGFuZ2U9e29uVGltZVNsaWRlckNoYW5nZX1cbiAgICAgICAgICAgIGNvbmZpZz17dGltZVNsaWRlckNvbmZpZ31cbiAgICAgICAgICAvPlxuICAgICAgICA8L1NsaWRlcldyYXBwZXI+XG5cbiAgICAgICAgPFN0eWxlZFdyYXBwZXIgaGlkZGVuPXtkaXNhYmxlRGF0ZVRpbWVQaWNrfSAkbWFyZ2luQm90dG9tPXsyfT5cbiAgICAgICAgICA8VGV4dEJsb2NrIHdpZHRoPVwiMzJweFwiIC8+XG4gICAgICAgICAgPFRleHRCbG9jayB3aWR0aD1cIjExMHB4XCI+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J2VmZmVjdE1hbmFnZXIuZGF0ZSd9IC8+XG4gICAgICAgICAgPC9UZXh0QmxvY2s+XG4gICAgICAgICAgPFRleHRCbG9jayB3aWR0aD1cIjExMHB4XCI+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J2VmZmVjdE1hbmFnZXIudGltZSd9IC8+XG4gICAgICAgICAgPC9UZXh0QmxvY2s+XG4gICAgICAgIDwvU3R5bGVkV3JhcHBlcj5cblxuICAgICAgICA8U3R5bGVkV3JhcHBlciBoaWRkZW49e2Rpc2FibGVEYXRlVGltZVBpY2t9ICRtYXJnaW5Cb3R0b209ezE2fT5cbiAgICAgICAgICA8U3R5bGVkQnV0dG9uIG9uQ2xpY2s9e3NldEN1cnJlbnREYXRlVGltZX0gZGF0YS1mb3I9XCJwaWNrLXRpbWUtYnV0dG9uXCIgZGF0YS10aXA+XG4gICAgICAgICAgICA8TG9jYXRpb25NYXJrZXIgaGVpZ2h0PVwiMTZweFwiIC8+XG4gICAgICAgICAgICA8VG9vbHRpcCBpZD1cInBpY2stdGltZS1idXR0b25cIiBlZmZlY3Q9XCJzb2xpZFwiIHBsYWNlPVwidG9wXCIgZGVsYXlTaG93PXs1MDB9PlxuICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J2VmZmVjdE1hbmFnZXIucGlja0N1cnJyZW50VGltZSd9IC8+XG4gICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgPC9TdHlsZWRCdXR0b24+XG4gICAgICAgICAgPFdpdGhJY29uV3JhcHBlcj5cbiAgICAgICAgICAgIDxTdHlsZWREYXRlUGlja2VyPlxuICAgICAgICAgICAgICA8RGF0ZVBpY2tlclxuICAgICAgICAgICAgICAgIHZhbHVlPXtkYXRlUGlja2VyRGF0ZX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17c2V0RGF0ZX1cbiAgICAgICAgICAgICAgICBtaW5EZXRhaWw9eydtb250aCd9XG4gICAgICAgICAgICAgICAgZm9ybWF0U2hvcnRXZWVrZGF5PXtmb3JtYXRTaG9ydFdlZWtkYXl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L1N0eWxlZERhdGVQaWNrZXI+XG4gICAgICAgICAgICA8U3R5bGVkRXh0cmFJY29uPlxuICAgICAgICAgICAgICA8Q2FsZW5kYXIgd2lkdGg9XCIxNnB4XCIgaGVpZ2h0PVwiMzJweFwiIC8+XG4gICAgICAgICAgICA8L1N0eWxlZEV4dHJhSWNvbj5cbiAgICAgICAgICA8L1dpdGhJY29uV3JhcHBlcj5cbiAgICAgICAgICA8V2l0aEljb25XcmFwcGVyPlxuICAgICAgICAgICAgPEVmZmVjdFRpbWVTZWxlY3RvciB2YWx1ZT17Zm9ybWF0dGVkVGltZX0gb25DaGFuZ2U9e3NldFRpbWV9IC8+XG4gICAgICAgICAgICA8U3R5bGVkRXh0cmFJY29uPlxuICAgICAgICAgICAgICA8Q2xvY2sgd2lkdGg9XCIxNnB4XCIgaGVpZ2h0PVwiMzJweFwiIC8+XG4gICAgICAgICAgICA8L1N0eWxlZEV4dHJhSWNvbj5cbiAgICAgICAgICA8L1dpdGhJY29uV3JhcHBlcj5cbiAgICAgICAgPC9TdHlsZWRXcmFwcGVyPlxuXG4gICAgICAgIDxTdHlsZWRXcmFwcGVyIGhpZGRlbj17ZGlzYWJsZURhdGVUaW1lUGlja30gJG1hcmdpbkJvdHRvbT17Mn0+XG4gICAgICAgICAgPFRleHRCbG9jaz5cbiAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXsnZWZmZWN0TWFuYWdlci50aW1lem9uZSd9IC8+XG4gICAgICAgICAgPC9UZXh0QmxvY2s+XG4gICAgICAgIDwvU3R5bGVkV3JhcHBlcj5cblxuICAgICAgICA8U3R5bGVkV3JhcHBlciBoaWRkZW49e2Rpc2FibGVEYXRlVGltZVBpY2t9ICRtYXJnaW5Cb3R0b209ezI0fT5cbiAgICAgICAgICA8V2l0aEljb25XcmFwcGVyIHdpZHRoPXsnMTAwJSd9PlxuICAgICAgICAgICAgPFRpbWV6b25lU2VsZWN0b3Igc2VsZWN0ZWQ9e3RpbWV6b25lfSBvblNlbGVjdD17c2V0VGltZXpvbmV9IC8+XG4gICAgICAgICAgICA8U3R5bGVkRXh0cmFJY29uPlxuICAgICAgICAgICAgICA8R2xvYmUgd2lkdGg9XCIxNnB4XCIgaGVpZ2h0PVwiMzJweFwiIC8+XG4gICAgICAgICAgICA8L1N0eWxlZEV4dHJhSWNvbj5cbiAgICAgICAgICA8L1dpdGhJY29uV3JhcHBlcj5cbiAgICAgICAgPC9TdHlsZWRXcmFwcGVyPlxuXG4gICAgICAgIDxTdHlsZWRXcmFwcGVyICRtYXJnaW5Cb3R0b209ezE2fT5cbiAgICAgICAgICA8U3R5bGVkUmFkaW9cbiAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICBjaGVja2VkPXt0aW1lTW9kZSA9PT0gTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5jdXJyZW50fVxuICAgICAgICAgICAgaWQ9e2BlZmZlY3QtdGltZS10b2dnbGUtdXNlLWN1cnJlbnQtdGltZWB9XG4gICAgICAgICAgICBsYWJlbD17aW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgaWQ6ICdlZmZlY3RNYW5hZ2VyLmN1cnJlbnRUaW1lJ1xuICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICBvbkNoYW5nZT17KCkgPT4ge1xuICAgICAgICAgICAgICBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZCh7dGltZU1vZGU6IExJR0hUX0FORF9TSEFET1dfRUZGRUNUX1RJTUVfTU9ERVMuY3VycmVudH0pO1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1N0eWxlZFdyYXBwZXI+XG5cbiAgICAgICAgPFN0eWxlZFdyYXBwZXIgJG1hcmdpbkJvdHRvbT17MTZ9PlxuICAgICAgICAgIDxTdHlsZWRSYWRpb1xuICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgIGNoZWNrZWQ9e3RpbWVNb2RlID09PSBMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVF9USU1FX01PREVTLmFuaW1hdGlvbn1cbiAgICAgICAgICAgIGlkPXtgZWZmZWN0LXRpbWUtdG9nZ2xlLXVzZS1hbmltYXRpb24tdGltZWB9XG4gICAgICAgICAgICBsYWJlbD17J0FuaW1hdGlvbiB0aW1lJ31cbiAgICAgICAgICAgIG9uQ2hhbmdlPXsoKSA9PiB7XG4gICAgICAgICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lTW9kZTogTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5hbmltYXRpb259KTtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9TdHlsZWRXcmFwcGVyPlxuICAgICAgPC9TdHlsZWRFZmZlY3RUaW1lQ29uZmlndXJhdG9yPlxuICAgICk7XG4gIH07XG5cbiAgLy8gQHRzLWV4cGVjdC1lcnJvciBob3cgdG8gcHJvcGVybHkgdHlwZT9cbiAgcmV0dXJuIHdpdGhTdGF0ZShbbWFwU3RhdGVMZW5zXSkoaW5qZWN0SW50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
|
|
302
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RJbnRsIiwiX3N0eWxlZENvbXBvbmVudHMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX21vbWVudFRpbWV6b25lIiwiX3N1bmNhbGMiLCJfbG9jYWxpemF0aW9uIiwiX3V0aWxzIiwiX2NvbnN0YW50cyIsIl9yZWR1Y2VycyIsIl9pbmplY3RvciIsIl9zdHlsZWRDb21wb25lbnRzMiIsIl9jaGVja2JveCIsIl9idXR0b24iLCJfaWNvbnMiLCJfdGltZXpvbmVTZWxlY3RvciIsIl9lZmZlY3RUaW1lU2xpZGVyIiwiX2VmZmVjdFRpbWVTZWxlY3RvciIsIl90ZW1wbGF0ZU9iamVjdCIsIl90ZW1wbGF0ZU9iamVjdDIiLCJfdGVtcGxhdGVPYmplY3QzIiwiX3RlbXBsYXRlT2JqZWN0NCIsIl90ZW1wbGF0ZU9iamVjdDUiLCJfdGVtcGxhdGVPYmplY3Q2IiwiX3RlbXBsYXRlT2JqZWN0NyIsIl90ZW1wbGF0ZU9iamVjdDgiLCJfdGVtcGxhdGVPYmplY3Q5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0IiwiREFZX01JTElTRUNPTkRTIiwiU3R5bGVkV3JhcHBlciIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJfcHJvcHMkJG1hcmdpbkJvdHRvbSIsIiRtYXJnaW5Cb3R0b20iLCJoaWRkZW4iLCJTbGlkZXJXcmFwcGVyIiwiU3R5bGVkQnV0dG9uIiwiQnV0dG9uIiwidGhlbWUiLCJlZmZlY3RQYW5lbFRleHRTZWNvbmRhcnkyIiwiaW5wdXRCZ2QiLCJlZmZlY3RQYW5lbFRleHRNYWluIiwiaW5wdXRCZ2RIb3ZlciIsIlN0eWxlZFJhZGlvIiwiQ2hlY2tib3giLCJmb250RmFtaWx5IiwiaW5wdXRGb250U2l6ZSIsImFjdGl2ZUNvbG9yIiwiU3R5bGVkRWZmZWN0VGltZUNvbmZpZ3VyYXRvciIsIlN0eWxlZERhdGVQaWNrZXIiLCJXaXRoSWNvbldyYXBwZXIiLCJ3aWR0aCIsImNvbmNhdCIsIlN0eWxlZEV4dHJhSWNvbiIsIlRleHRCbG9jayIsImdldFRpbWVzdGFtcCIsImRhdGVTdHIiLCJ0aW1lU3RyIiwidGltZXpvbmUiLCJ0aW1lc3RhbXAiLCJjdXJyIiwibW9tZW50IiwidHoiLCJpc1ZhbGlkIiwidXRjIiwidmFsdWVPZiIsImdldERheVJhdGlvIiwiZGF0ZSIsImhvdXJzIiwibWludXRlcyIsIkVmZmVjdFRpbWVDb25maWd1cmF0b3JGYWN0b3J5IiwiZGVwcyIsIlRpbWV6b25lU2VsZWN0b3JGYWN0b3J5IiwiRWZmZWN0VGltZVNsaWRlckZhY3RvcnkiLCJFZmZlY3RUaW1lU2VsZWN0b3JGYWN0b3J5IiwiVGltZXpvbmVTZWxlY3RvciIsIkVmZmVjdFRpbWVTbGlkZXIiLCJFZmZlY3RUaW1lU2VsZWN0b3IiLCJFZmZlY3RUaW1lQ29uZmlndXJhdG9yIiwiX3JlZiIsIl90aW1lem9uZSIsInRpbWVNb2RlIiwib25UaW1lUGFyYW1ldGVyc0NoYW5nZWQiLCJvbkNoYW5nZSIsIm1hcFN0YXRlIiwiaW50bCIsInVzZU1lbW8iLCJuYW1lcyIsImluY2x1ZGVzIiwiREVGQVVMVF9USU1FWk9ORSIsIl91c2VNZW1vIiwiY3VycmVudE1vbWVudCIsImRheVByb2dyZXNzIiwiRGF0ZSIsInNldEZ1bGxZZWFyIiwieWVhciIsIm1vbnRoIiwic2V0SG91cnMiLCJ0b0RhdGUiLCJmb3JtYXQiLCJfdXNlTWVtbzIiLCJfc2xpY2VkVG9BcnJheTIiLCJkYXRlUGlja2VyRGF0ZSIsImZ1bGxEYXRlIiwiZm9ybWF0dGVkVGltZSIsImZvcm1hdHRlZERhdGUiLCJkYXlUaW1lUHJvZ3Jlc3MiLCJ0aW1lU2xpZGVyQ29uZmlnIiwidGltZXMiLCJTdW5DYWxjIiwiZ2V0VGltZXMiLCJsYXRpdHVkZSIsImxvbmdpdHVkZSIsImRhd24iLCJzdW5yaXNlIiwic3Vuc2V0IiwiZHVzayIsInN1bnJpc2VUaW1lIiwic3Vuc2V0VGltZSIsIm9uVGltZVNsaWRlckNoYW5nZSIsInVzZUNhbGxiYWNrIiwidmFsdWUiLCJjbGFtcCIsIk1hdGgiLCJmbG9vciIsIm5ld0Zvcm1hdHRlZFRpbWUiLCJuZXdUaW1lc3RhbXAiLCJzZXREYXRlIiwibmV3RGF0ZSIsIm5ld0Zvcm1hdHRlZERhdGUiLCJzZXRUaW1lIiwibmV3VGltZSIsInNldFRpbWV6b25lIiwibmV3VGltZXpvbmUiLCJzZXRDdXJyZW50RGF0ZVRpbWUiLCJmb3JtYXRTaG9ydFdlZWtkYXkiLCJsb2NhbGUiLCJnZXREYXkiLCJkaXNhYmxlRGF0ZVRpbWVQaWNrIiwiTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUyIsInBpY2siLCJjcmVhdGVFbGVtZW50IiwidHlwZSIsImNoZWNrZWQiLCJpZCIsImxhYmVsIiwiZm9ybWF0TWVzc2FnZSIsImNvbmZpZyIsIkZvcm1hdHRlZE1lc3NhZ2UiLCJvbkNsaWNrIiwiTG9jYXRpb25NYXJrZXIiLCJoZWlnaHQiLCJUb29sdGlwIiwiZWZmZWN0IiwicGxhY2UiLCJkZWxheVNob3ciLCJtaW5EZXRhaWwiLCJDYWxlbmRhciIsIkNsb2NrIiwic2VsZWN0ZWQiLCJvblNlbGVjdCIsIkdsb2JlIiwiY3VycmVudCIsImFuaW1hdGlvbiIsIndpdGhTdGF0ZSIsIm1hcFN0YXRlTGVucyIsImluamVjdEludGwiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvZWZmZWN0cy9lZmZlY3QtdGltZS1jb25maWd1cmF0b3IudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrLCB1c2VNZW1vfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQge2luamVjdEludGwsIEludGxTaGFwZX0gZnJvbSAncmVhY3QtaW50bCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCBTdW5DYWxjIGZyb20gJ3N1bmNhbGMnO1xuXG5pbXBvcnQge01hcFN0YXRlfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnQGtlcGxlci5nbC9sb2NhbGl6YXRpb24nO1xuaW1wb3J0IHtjbGFtcH0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge1xuICBMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVF9USU1FX01PREVTLFxuICBMaWdodEFuZFNoYWRvd0VmZmVjdFRpbWVNb2RlLFxuICBERUZBVUxUX1RJTUVaT05FXG59IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7bWFwU3RhdGVMZW5zfSBmcm9tICdAa2VwbGVyLmdsL3JlZHVjZXJzJztcblxuaW1wb3J0IHt3aXRoU3RhdGV9IGZyb20gJy4uL2luamVjdG9yJztcbmltcG9ydCB7U3R5bGVkRGF0ZVBpY2tlciBhcyBEYXRlUGlja2VyLCBUb29sdGlwfSBmcm9tICcuLi9jb21tb24vc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IENoZWNrYm94IGZyb20gJy4uL2NvbW1vbi9jaGVja2JveCc7XG5pbXBvcnQgQnV0dG9uIGZyb20gJy4uL2NvbW1vbi9kYXRhLXRhYmxlL2J1dHRvbic7XG5pbXBvcnQge0xvY2F0aW9uTWFya2VyLCBDYWxlbmRhciwgQ2xvY2ssIEdsb2JlfSBmcm9tICcuLi9jb21tb24vaWNvbnMnO1xuaW1wb3J0IFRpbWV6b25lU2VsZWN0b3JGYWN0b3J5IGZyb20gJy4vdGltZXpvbmUtc2VsZWN0b3InO1xuaW1wb3J0IEVmZmVjdFRpbWVTbGlkZXJGYWN0b3J5IGZyb20gJy4vZWZmZWN0LXRpbWUtc2xpZGVyJztcbmltcG9ydCBFZmZlY3RUaW1lU2VsZWN0b3JGYWN0b3J5IGZyb20gJy4vZWZmZWN0LXRpbWUtc2VsZWN0b3InO1xuXG5jb25zdCBEQVlfTUlMSVNFQ09ORFMgPSAxMDAwICogNjAgKiA2MCAqIDI0O1xuXG5leHBvcnQgdHlwZSBFZmZlY3RUaW1lQ29uZmlndXJhdG9yUHJvcHMgPSB7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xuICB0aW1lem9uZTogc3RyaW5nO1xuICB0aW1lTW9kZTogTGlnaHRBbmRTaGFkb3dFZmZlY3RUaW1lTW9kZTtcbiAgb25DaGFuZ2U6IChwYXJhbWV0ZXJzOiB7XG4gICAgdGltZXN0YW1wPzogbnVtYmVyIHwgbnVsbDtcbiAgICB0aW1lem9uZT86IHN0cmluZztcbiAgICB0aW1lTW9kZT86IExpZ2h0QW5kU2hhZG93RWZmZWN0VGltZU1vZGU7XG4gIH0pID0+IHZvaWQ7XG59O1xuXG50eXBlIFN0eWxlZFdyYXBwZXJQcm9wcyA9IHtkaXNhYmxlZD86IGJvb2xlYW47ICRtYXJnaW5Cb3R0b20/OiBudW1iZXJ9O1xuY29uc3QgU3R5bGVkV3JhcHBlciA9IHN0eWxlZC5kaXY8U3R5bGVkV3JhcHBlclByb3BzPmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAke3Byb3BzID0+IHByb3BzLiRtYXJnaW5Cb3R0b20gPz8gOX1weDtcbiAgJHtwcm9wcyA9PiAocHJvcHMuaGlkZGVuID8gJ2Rpc3BsYXk6IG5vbmU7JyA6ICcnKX1cbmA7XG5cbnR5cGUgU2xpZGVyV3JhcHBlclByb3BzID0ge2Rpc2FibGVkPzogYm9vbGVhbn07XG5jb25zdCBTbGlkZXJXcmFwcGVyID0gc3R5bGVkLmRpdjxTbGlkZXJXcmFwcGVyUHJvcHM+YFxuICBtYXJnaW4tdG9wOiAxM3B4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAke3Byb3BzID0+IChwcm9wcy5oaWRkZW4gPyAnZGlzcGxheTogbm9uZTsnIDogJycpfVxuYDtcblxuY29uc3QgU3R5bGVkQnV0dG9uID0gc3R5bGVkKEJ1dHRvbilgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTJ9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkfTtcbiAgaGVpZ2h0OiAzMnB4O1xuICB3aWR0aDogMzJweDtcbiAgcGFkZGluZzogNXB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lZmZlY3RQYW5lbFRleHRNYWlufTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkSG92ZXJ9O1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRSYWRpbyA9IHN0eWxlZChDaGVja2JveClgXG4gIC5rZy1jaGVja2JveF9fbGFiZWwge1xuICAgIGZvbnQtZmFtaWx5OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmZvbnRGYW1pbHl9O1xuICAgIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEZvbnRTaXplfTtcbiAgfVxuICAua2ctY2hlY2tib3hfX2xhYmVsOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTJ9O1xuICB9XG4gIGlucHV0OmNoZWNrZWQgKyAua2ctY2hlY2tib3hfX2xhYmVsOmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgfVxuICAua2ctY2hlY2tib3hfX2xhYmVsOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgfVxuYDtcblxuY29uc3QgU3R5bGVkRWZmZWN0VGltZUNvbmZpZ3VyYXRvciA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgbWFyZ2luLXRvcDogM3B4O1xuYDtcblxuY29uc3QgU3R5bGVkRGF0ZVBpY2tlciA9IHN0eWxlZC5kaXZgXG4gIC5yZWFjdC1kYXRlLXBpY2tlci0tb3BlbiAucmVhY3QtZGF0ZS1waWNrZXJfX3dyYXBwZXIgLnJlYWN0LWRhdGUtcGlja2VyX19pbnB1dEdyb3VwIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLmFjdGl2ZUNvbG9yfTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHggNHB4IDBweCAwcHggIWltcG9ydGFudDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX3ByZXYyLWJ1dHRvbixcbiAgLnJlYWN0LWNhbGVuZGFyX19uYXZpZ2F0aW9uX19uZXh0Mi1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnJlYWN0LWNhbGVuZGFyX19uYXZpZ2F0aW9uX19sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX2Fycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxOHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX3ByZXYtYnV0dG9uIHtcbiAgICByaWdodDogMzZweDtcbiAgfVxuICAucmVhY3QtY2FsZW5kYXJfX25hdmlnYXRpb25fX25leHQtYnV0dG9uIHtcbiAgICByaWdodDogMTJweDtcbiAgfVxuYDtcblxudHlwZSBXaXRoSWNvbldyYXBwZXJQcm9wcyA9IHt3aWR0aD86IHN0cmluZ307XG5jb25zdCBXaXRoSWNvbldyYXBwZXIgPSBzdHlsZWQuZGl2PFdpdGhJY29uV3JhcHBlclByb3BzPmBcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAke3Byb3BzID0+IChwcm9wcy53aWR0aCA/IGB3aWR0aDogJHtwcm9wcy53aWR0aH1gIDogJycpfVxuYDtcblxuY29uc3QgU3R5bGVkRXh0cmFJY29uID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogOHB4O1xuICB3aWR0aDogMHB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTJ9O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbmA7XG5cbnR5cGUgVGV4dEJsb2NrUHJvcHMgPSB7XG4gIHdpZHRoPzogc3RyaW5nO1xufTtcbmNvbnN0IFRleHRCbG9jayA9IHN0eWxlZC5kaXY8VGV4dEJsb2NrUHJvcHM+YFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5lZmZlY3RQYW5lbFRleHRTZWNvbmRhcnkyfTtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMud2lkdGh9O1xuICBmb250LXNpemU6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRGb250U2l6ZX07XG5gO1xuXG4vKipcbiAqIENvbnZlcnRzIGRhdGUsIHRpbWUgYW5kIHRpbWV6b25lIGludG8gYSBVVEMgdGltZXN0YW1wLlxuICogQHBhcmFtIGRhdGVTdHIgRGF0ZSBzdHJpbmcgaW4gWVlZWS1NTS1ERCBmb3JtYXQuXG4gKiBAcGFyYW0gdGltZVN0ciBUaW1lIHN0cmluZyBpbiBISDpNTSBmb3JtYXQuXG4gKiBAcGFyYW0gdGltZXpvbmUgVGltZXpvbmUgbmFtZS5cbiAqIEByZXR1cm5zIFRpbWVzdGFtcCBvciBudWxsIGlmIGNhc2Ugb2YgYmFkIGlucHV0cy5cbiAqL1xuY29uc3QgZ2V0VGltZXN0YW1wID0gKGRhdGVTdHI6IHN0cmluZywgdGltZVN0cjogc3RyaW5nLCB0aW1lem9uZTogc3RyaW5nKTogbnVtYmVyIHwgbnVsbCA9PiB7XG4gIGxldCB0aW1lc3RhbXA6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBjb25zdCBjdXJyID0gbW9tZW50LnR6KGAke2RhdGVTdHJ9VCR7dGltZVN0cn06MDBgLCB0aW1lem9uZSk7XG4gIGlmIChjdXJyLmlzVmFsaWQoKSkge1xuICAgIHRpbWVzdGFtcCA9IGN1cnIudXRjKCkudmFsdWVPZigpO1xuICB9XG4gIHJldHVybiB0aW1lc3RhbXA7XG59O1xuXG4vKipcbiAqIENvbnZlcnRzIHRpbWUgb2YgdGhlIGRheSBpbnRvIFswLCAxXSByYW5nZVxuICogQHBhcmFtIGRhdGVcbiAqIEByZXR1cm5zXG4gKi9cbmNvbnN0IGdldERheVJhdGlvID0gKGRhdGU6IG1vbWVudC5Nb21lbnQpID0+IHtcbiAgcmV0dXJuICgoZGF0ZS5ob3VycygpICogNjAgKyBkYXRlLm1pbnV0ZXMoKSkgKiA2MCAqIDEwMDApIC8gREFZX01JTElTRUNPTkRTO1xufTtcblxuRWZmZWN0VGltZUNvbmZpZ3VyYXRvckZhY3RvcnkuZGVwcyA9IFtcbiAgVGltZXpvbmVTZWxlY3RvckZhY3RvcnksXG4gIEVmZmVjdFRpbWVTbGlkZXJGYWN0b3J5LFxuICBFZmZlY3RUaW1lU2VsZWN0b3JGYWN0b3J5XG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBFZmZlY3RUaW1lQ29uZmlndXJhdG9yRmFjdG9yeShcbiAgVGltZXpvbmVTZWxlY3RvcjogUmV0dXJuVHlwZTx0eXBlb2YgVGltZXpvbmVTZWxlY3RvckZhY3Rvcnk+LFxuICBFZmZlY3RUaW1lU2xpZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBFZmZlY3RUaW1lU2xpZGVyRmFjdG9yeT4sXG4gIEVmZmVjdFRpbWVTZWxlY3RvcjogUmV0dXJuVHlwZTx0eXBlb2YgRWZmZWN0VGltZVNlbGVjdG9yRmFjdG9yeT5cbik6IFJlYWN0LkZDPEVmZmVjdFRpbWVDb25maWd1cmF0b3JQcm9wcz4ge1xuICBjb25zdCBFZmZlY3RUaW1lQ29uZmlndXJhdG9yID0gKHtcbiAgICB0aW1lc3RhbXAsXG4gICAgdGltZXpvbmU6IF90aW1lem9uZSxcbiAgICB0aW1lTW9kZSxcbiAgICBvbkNoYW5nZTogb25UaW1lUGFyYW1ldGVyc0NoYW5nZWQsXG4gICAgbWFwU3RhdGUsXG4gICAgaW50bFxuICB9OiBFZmZlY3RUaW1lQ29uZmlndXJhdG9yUHJvcHMgJiB7aW50bDogSW50bFNoYXBlOyBtYXBTdGF0ZTogTWFwU3RhdGV9KSA9PiB7XG4gICAgY29uc3QgdGltZXpvbmUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICAgIHJldHVybiBtb21lbnQudHoubmFtZXMoKS5pbmNsdWRlcyhfdGltZXpvbmUpID8gX3RpbWV6b25lIDogREVGQVVMVF9USU1FWk9ORTtcbiAgICB9LCBbX3RpbWV6b25lXSk7XG5cbiAgICBjb25zdCBbZGF0ZVBpY2tlckRhdGUsIGZ1bGxEYXRlLCBmb3JtYXR0ZWRUaW1lLCBmb3JtYXR0ZWREYXRlLCBkYXlUaW1lUHJvZ3Jlc3NdID1cbiAgICAgIHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICBjb25zdCBjdXJyZW50TW9tZW50ID0gbW9tZW50LnR6KHRpbWVzdGFtcCwgdGltZXpvbmUpO1xuXG4gICAgICAgIC8vIFNsaWRlciB2YWx1ZSBmcm9tIDAgdG8gMVxuICAgICAgICBjb25zdCBkYXlQcm9ncmVzcyA9IGdldERheVJhdGlvKGN1cnJlbnRNb21lbnQpO1xuXG4gICAgICAgIC8vIERhdGUgcGlja2VyIGFsd2F5cyByZW5kZXJzIERhdGUgaW4gbG9jYWwgdGltZXpvbmVcbiAgICAgICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGRhdGUuc2V0RnVsbFllYXIoY3VycmVudE1vbWVudC55ZWFyKCksIGN1cnJlbnRNb21lbnQubW9udGgoKSwgY3VycmVudE1vbWVudC5kYXRlKCkpO1xuICAgICAgICBkYXRlLnNldEhvdXJzKDAsIDAsIDAsIDApO1xuXG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgZGF0ZSxcbiAgICAgICAgICBjdXJyZW50TW9tZW50LnRvRGF0ZSgpLFxuICAgICAgICAgIGN1cnJlbnRNb21lbnQuZm9ybWF0KCdISDptbScpLFxuICAgICAgICAgIGN1cnJlbnRNb21lbnQuZm9ybWF0KCdZWVlZLU1NLUREJyksXG4gICAgICAgICAgZGF5UHJvZ3Jlc3NcbiAgICAgICAgXTtcbiAgICAgIH0sIFt0aW1lc3RhbXAsIHRpbWV6b25lXSk7XG5cbiAgICBjb25zdCB0aW1lU2xpZGVyQ29uZmlnID0gdXNlTWVtbygoKSA9PiB7XG4gICAgICBjb25zdCB0aW1lcyA9IFN1bkNhbGMuZ2V0VGltZXMoZnVsbERhdGUsIG1hcFN0YXRlLmxhdGl0dWRlLCBtYXBTdGF0ZS5sb25naXR1ZGUpO1xuICAgICAgY29uc3Qge2Rhd24sIHN1bnJpc2UsIHN1bnNldCwgZHVza30gPSB0aW1lcztcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGF3bjogZ2V0RGF5UmF0aW8obW9tZW50LnR6KGRhd24udmFsdWVPZigpLCB0aW1lem9uZSkpLFxuICAgICAgICBzdW5yaXNlOiBnZXREYXlSYXRpbyhtb21lbnQudHooc3VucmlzZS52YWx1ZU9mKCksIHRpbWV6b25lKSksXG4gICAgICAgIHN1bnNldDogZ2V0RGF5UmF0aW8obW9tZW50LnR6KHN1bnNldC52YWx1ZU9mKCksIHRpbWV6b25lKSksXG4gICAgICAgIGR1c2s6IGdldERheVJhdGlvKG1vbWVudC50eihkdXNrLnZhbHVlT2YoKSwgdGltZXpvbmUpKSxcbiAgICAgICAgc3VucmlzZVRpbWU6IG1vbWVudC50eihzdW5yaXNlLnZhbHVlT2YoKSwgdGltZXpvbmUpLmZvcm1hdCgnaGg6bW0gQScpLFxuICAgICAgICBzdW5zZXRUaW1lOiBtb21lbnQudHooc3Vuc2V0LnZhbHVlT2YoKSwgdGltZXpvbmUpLmZvcm1hdCgnaGg6bW0gQScpXG4gICAgICB9O1xuICAgIH0sIFtmdWxsRGF0ZSwgdGltZXpvbmUsIG1hcFN0YXRlLmxhdGl0dWRlLCBtYXBTdGF0ZS5sb25naXR1ZGVdKTtcblxuICAgIGNvbnN0IG9uVGltZVNsaWRlckNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgdmFsdWUgPT4ge1xuICAgICAgICBjb25zdCBob3VycyA9IGNsYW1wKFswLCAyM10sIE1hdGguZmxvb3IodmFsdWVbMV0gKiAyNCkpO1xuICAgICAgICBjb25zdCBtaW51dGVzID0gY2xhbXAoWzAsIDU5XSwgTWF0aC5mbG9vcigodmFsdWVbMV0gKiAyNCAtIGhvdXJzKSAqIDYwKSk7XG5cbiAgICAgICAgY29uc3QgbmV3Rm9ybWF0dGVkVGltZSA9IGAke2hvdXJzIDwgMTAgPyBgMCR7aG91cnN9YCA6IGhvdXJzfToke1xuICAgICAgICAgIG1pbnV0ZXMgPCAxMCA/IGAwJHttaW51dGVzfWAgOiBtaW51dGVzXG4gICAgICAgIH1gO1xuICAgICAgICBjb25zdCBuZXdUaW1lc3RhbXAgPSBnZXRUaW1lc3RhbXAoZm9ybWF0dGVkRGF0ZSwgbmV3Rm9ybWF0dGVkVGltZSwgdGltZXpvbmUpO1xuICAgICAgICBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZCh7dGltZXN0YW1wOiBuZXdUaW1lc3RhbXB9KTtcbiAgICAgIH0sXG4gICAgICBbZm9ybWF0dGVkRGF0ZSwgdGltZXpvbmUsIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkXVxuICAgICk7XG5cbiAgICBjb25zdCBzZXREYXRlID0gdXNlQ2FsbGJhY2soXG4gICAgICBuZXdEYXRlID0+IHtcbiAgICAgICAgaWYgKCFuZXdEYXRlKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgbmV3Rm9ybWF0dGVkRGF0ZSA9IG1vbWVudChuZXdEYXRlKS5mb3JtYXQoJ1lZWVktTU0tREQnKTtcbiAgICAgICAgY29uc3QgbmV3VGltZXN0YW1wID0gZ2V0VGltZXN0YW1wKG5ld0Zvcm1hdHRlZERhdGUsIGZvcm1hdHRlZFRpbWUsIHRpbWV6b25lKTtcbiAgICAgICAgb25UaW1lUGFyYW1ldGVyc0NoYW5nZWQoe3RpbWVzdGFtcDogbmV3VGltZXN0YW1wfSk7XG4gICAgICB9LFxuICAgICAgW2Zvcm1hdHRlZFRpbWUsIHRpbWV6b25lLCBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZF1cbiAgICApO1xuXG4gICAgY29uc3Qgc2V0VGltZSA9IHVzZUNhbGxiYWNrKFxuICAgICAgbmV3VGltZSA9PiB7XG4gICAgICAgIGlmICghbmV3VGltZSkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IG5ld1RpbWVzdGFtcCA9IGdldFRpbWVzdGFtcChmb3JtYXR0ZWREYXRlLCBuZXdUaW1lLCB0aW1lem9uZSk7XG4gICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lc3RhbXA6IG5ld1RpbWVzdGFtcH0pO1xuICAgICAgfSxcbiAgICAgIFtmb3JtYXR0ZWREYXRlLCB0aW1lem9uZSwgb25UaW1lUGFyYW1ldGVyc0NoYW5nZWRdXG4gICAgKTtcblxuICAgIGNvbnN0IHNldFRpbWV6b25lID0gdXNlQ2FsbGJhY2soXG4gICAgICBuZXdUaW1lem9uZSA9PiB7XG4gICAgICAgIGlmICghbmV3VGltZXpvbmUpIHJldHVybjtcblxuICAgICAgICBjb25zdCBuZXdUaW1lc3RhbXAgPSBnZXRUaW1lc3RhbXAoZm9ybWF0dGVkRGF0ZSwgZm9ybWF0dGVkVGltZSwgbmV3VGltZXpvbmUpO1xuICAgICAgICAvLyBkYXRlIGFuZCB0aW1lIGFyZSBhZGp1c3RlZCB0byBoYXZlIHRoZSBzYW1lIHZhbHVlIGJ1dCBpbiB0aGUgbmV3IHRpbWV6b25lXG4gICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lc3RhbXA6IG5ld1RpbWVzdGFtcCwgdGltZXpvbmU6IG5ld1RpbWV6b25lfSk7XG4gICAgICB9LFxuICAgICAgW2Zvcm1hdHRlZERhdGUsIGZvcm1hdHRlZFRpbWUsIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkXVxuICAgICk7XG5cbiAgICBjb25zdCBzZXRDdXJyZW50RGF0ZVRpbWUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICBvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZCh7dGltZXN0YW1wOiBuZXcgRGF0ZSgpLnZhbHVlT2YoKX0pO1xuICAgIH0sIFtvblRpbWVQYXJhbWV0ZXJzQ2hhbmdlZF0pO1xuXG4gICAgY29uc3QgZm9ybWF0U2hvcnRXZWVrZGF5ID0gdXNlQ2FsbGJhY2soKGxvY2FsZSwgZGF0ZSkgPT4ge1xuICAgICAgcmV0dXJuIFsnUycsICdNJywgJ1QnLCAnVycsICdUJywgJ0YnLCAnUyddW2RhdGUuZ2V0RGF5KCldO1xuICAgIH0sIFtdKTtcblxuICAgIGNvbnN0IGRpc2FibGVEYXRlVGltZVBpY2sgPSB0aW1lTW9kZSAhPT0gTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5waWNrO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRFZmZlY3RUaW1lQ29uZmlndXJhdG9yPlxuICAgICAgICA8U3R5bGVkV3JhcHBlciAkbWFyZ2luQm90dG9tPXsxNn0+XG4gICAgICAgICAgPFN0eWxlZFJhZGlvXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgY2hlY2tlZD17dGltZU1vZGUgPT09IExJR0hUX0FORF9TSEFET1dfRUZGRUNUX1RJTUVfTU9ERVMucGlja31cbiAgICAgICAgICAgIGlkPXtgZWZmZWN0LXRpbWUtdG9nZ2xlLXVzZS1waWNrLXRpbWVgfVxuICAgICAgICAgICAgbGFiZWw9e2ludGwuZm9ybWF0TWVzc2FnZSh7XG4gICAgICAgICAgICAgIGlkOiAnZWZmZWN0TWFuYWdlci5waWNrRGF0ZVRpbWUnXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXsoKSA9PiB7XG4gICAgICAgICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lTW9kZTogTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5waWNrfSk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU3R5bGVkV3JhcHBlcj5cblxuICAgICAgICA8U2xpZGVyV3JhcHBlciBoaWRkZW49e2Rpc2FibGVEYXRlVGltZVBpY2t9PlxuICAgICAgICAgIDxFZmZlY3RUaW1lU2xpZGVyXG4gICAgICAgICAgICB2YWx1ZT17ZGF5VGltZVByb2dyZXNzfVxuICAgICAgICAgICAgb25DaGFuZ2U9e29uVGltZVNsaWRlckNoYW5nZX1cbiAgICAgICAgICAgIGNvbmZpZz17dGltZVNsaWRlckNvbmZpZ31cbiAgICAgICAgICAvPlxuICAgICAgICA8L1NsaWRlcldyYXBwZXI+XG5cbiAgICAgICAgPFN0eWxlZFdyYXBwZXIgaGlkZGVuPXtkaXNhYmxlRGF0ZVRpbWVQaWNrfSAkbWFyZ2luQm90dG9tPXsyfT5cbiAgICAgICAgICA8VGV4dEJsb2NrIHdpZHRoPVwiMzJweFwiIC8+XG4gICAgICAgICAgPFRleHRCbG9jayB3aWR0aD1cIjExMHB4XCI+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J2VmZmVjdE1hbmFnZXIuZGF0ZSd9IC8+XG4gICAgICAgICAgPC9UZXh0QmxvY2s+XG4gICAgICAgICAgPFRleHRCbG9jayB3aWR0aD1cIjExMHB4XCI+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J2VmZmVjdE1hbmFnZXIudGltZSd9IC8+XG4gICAgICAgICAgPC9UZXh0QmxvY2s+XG4gICAgICAgIDwvU3R5bGVkV3JhcHBlcj5cblxuICAgICAgICA8U3R5bGVkV3JhcHBlciBoaWRkZW49e2Rpc2FibGVEYXRlVGltZVBpY2t9ICRtYXJnaW5Cb3R0b209ezE2fT5cbiAgICAgICAgICA8U3R5bGVkQnV0dG9uIG9uQ2xpY2s9e3NldEN1cnJlbnREYXRlVGltZX0gZGF0YS1mb3I9XCJwaWNrLXRpbWUtYnV0dG9uXCIgZGF0YS10aXA+XG4gICAgICAgICAgICA8TG9jYXRpb25NYXJrZXIgaGVpZ2h0PVwiMTZweFwiIC8+XG4gICAgICAgICAgICA8VG9vbHRpcCBpZD1cInBpY2stdGltZS1idXR0b25cIiBlZmZlY3Q9XCJzb2xpZFwiIHBsYWNlPVwidG9wXCIgZGVsYXlTaG93PXs1MDB9PlxuICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD17J2VmZmVjdE1hbmFnZXIucGlja0N1cnJyZW50VGltZSd9IC8+XG4gICAgICAgICAgICA8L1Rvb2x0aXA+XG4gICAgICAgICAgPC9TdHlsZWRCdXR0b24+XG4gICAgICAgICAgPFdpdGhJY29uV3JhcHBlcj5cbiAgICAgICAgICAgIDxTdHlsZWREYXRlUGlja2VyPlxuICAgICAgICAgICAgICA8RGF0ZVBpY2tlclxuICAgICAgICAgICAgICAgIHZhbHVlPXtkYXRlUGlja2VyRGF0ZX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17c2V0RGF0ZX1cbiAgICAgICAgICAgICAgICB7Li4uKHttaW5EZXRhaWw6ICdtb250aCcsIGZvcm1hdFNob3J0V2Vla2RheX0gYXMgYW55KX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkRGF0ZVBpY2tlcj5cbiAgICAgICAgICAgIDxTdHlsZWRFeHRyYUljb24+XG4gICAgICAgICAgICAgIDxDYWxlbmRhciB3aWR0aD1cIjE2cHhcIiBoZWlnaHQ9XCIzMnB4XCIgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkRXh0cmFJY29uPlxuICAgICAgICAgIDwvV2l0aEljb25XcmFwcGVyPlxuICAgICAgICAgIDxXaXRoSWNvbldyYXBwZXI+XG4gICAgICAgICAgICA8RWZmZWN0VGltZVNlbGVjdG9yIHZhbHVlPXtmb3JtYXR0ZWRUaW1lfSBvbkNoYW5nZT17c2V0VGltZX0gLz5cbiAgICAgICAgICAgIDxTdHlsZWRFeHRyYUljb24+XG4gICAgICAgICAgICAgIDxDbG9jayB3aWR0aD1cIjE2cHhcIiBoZWlnaHQ9XCIzMnB4XCIgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkRXh0cmFJY29uPlxuICAgICAgICAgIDwvV2l0aEljb25XcmFwcGVyPlxuICAgICAgICA8L1N0eWxlZFdyYXBwZXI+XG5cbiAgICAgICAgPFN0eWxlZFdyYXBwZXIgaGlkZGVuPXtkaXNhYmxlRGF0ZVRpbWVQaWNrfSAkbWFyZ2luQm90dG9tPXsyfT5cbiAgICAgICAgICA8VGV4dEJsb2NrPlxuICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9eydlZmZlY3RNYW5hZ2VyLnRpbWV6b25lJ30gLz5cbiAgICAgICAgICA8L1RleHRCbG9jaz5cbiAgICAgICAgPC9TdHlsZWRXcmFwcGVyPlxuXG4gICAgICAgIDxTdHlsZWRXcmFwcGVyIGhpZGRlbj17ZGlzYWJsZURhdGVUaW1lUGlja30gJG1hcmdpbkJvdHRvbT17MjR9PlxuICAgICAgICAgIDxXaXRoSWNvbldyYXBwZXIgd2lkdGg9eycxMDAlJ30+XG4gICAgICAgICAgICA8VGltZXpvbmVTZWxlY3RvciBzZWxlY3RlZD17dGltZXpvbmV9IG9uU2VsZWN0PXtzZXRUaW1lem9uZX0gLz5cbiAgICAgICAgICAgIDxTdHlsZWRFeHRyYUljb24+XG4gICAgICAgICAgICAgIDxHbG9iZSB3aWR0aD1cIjE2cHhcIiBoZWlnaHQ9XCIzMnB4XCIgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkRXh0cmFJY29uPlxuICAgICAgICAgIDwvV2l0aEljb25XcmFwcGVyPlxuICAgICAgICA8L1N0eWxlZFdyYXBwZXI+XG5cbiAgICAgICAgPFN0eWxlZFdyYXBwZXIgJG1hcmdpbkJvdHRvbT17MTZ9PlxuICAgICAgICAgIDxTdHlsZWRSYWRpb1xuICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgIGNoZWNrZWQ9e3RpbWVNb2RlID09PSBMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVF9USU1FX01PREVTLmN1cnJlbnR9XG4gICAgICAgICAgICBpZD17YGVmZmVjdC10aW1lLXRvZ2dsZS11c2UtY3VycmVudC10aW1lYH1cbiAgICAgICAgICAgIGxhYmVsPXtpbnRsLmZvcm1hdE1lc3NhZ2Uoe1xuICAgICAgICAgICAgICBpZDogJ2VmZmVjdE1hbmFnZXIuY3VycmVudFRpbWUnXG4gICAgICAgICAgICB9KX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXsoKSA9PiB7XG4gICAgICAgICAgICAgIG9uVGltZVBhcmFtZXRlcnNDaGFuZ2VkKHt0aW1lTW9kZTogTElHSFRfQU5EX1NIQURPV19FRkZFQ1RfVElNRV9NT0RFUy5jdXJyZW50fSk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvU3R5bGVkV3JhcHBlcj5cblxuICAgICAgICA8U3R5bGVkV3JhcHBlciAkbWFyZ2luQm90dG9tPXsxNn0+XG4gICAgICAgICAgPFN0eWxlZFJhZGlvXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICAgICAgY2hlY2tlZD17dGltZU1vZGUgPT09IExJR0hUX0FORF9TSEFET1dfRUZGRUNUX1RJTUVfTU9ERVMuYW5pbWF0aW9ufVxuICAgICAgICAgICAgaWQ9e2BlZmZlY3QtdGltZS10b2dnbGUtdXNlLWFuaW1hdGlvbi10aW1lYH1cbiAgICAgICAgICAgIGxhYmVsPXsnQW5pbWF0aW9uIHRpbWUnfVxuICAgICAgICAgICAgb25DaGFuZ2U9eygpID0+IHtcbiAgICAgICAgICAgICAgb25UaW1lUGFyYW1ldGVyc0NoYW5nZWQoe3RpbWVNb2RlOiBMSUdIVF9BTkRfU0hBRE9XX0VGRkVDVF9USU1FX01PREVTLmFuaW1hdGlvbn0pO1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1N0eWxlZFdyYXBwZXI+XG4gICAgICA8L1N0eWxlZEVmZmVjdFRpbWVDb25maWd1cmF0b3I+XG4gICAgKTtcbiAgfTtcblxuICAvLyBAdHMtZXhwZWN0LWVycm9yIGhvdyB0byBwcm9wZXJseSB0eXBlP1xuICByZXR1cm4gd2l0aFN0YXRlKFttYXBTdGF0ZUxlbnNdKShpbmplY3RJbnRsKEVmZmVjdFRpbWVDb25maWd1cmF0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
|
|
@@ -10,5 +10,5 @@ export type EffectTypeListItemProps = {
|
|
|
10
10
|
isTile?: boolean;
|
|
11
11
|
theme: any;
|
|
12
12
|
};
|
|
13
|
-
export declare function EffectTypeListItemFactory(): React.ForwardRefExoticComponent<import("styled-components").ExecutionProps & React.RefAttributes<React.FC<EffectTypeListItemProps
|
|
13
|
+
export declare function EffectTypeListItemFactory(): React.ForwardRefExoticComponent<Omit<EffectTypeListItemProps, keyof import("styled-components").ExecutionProps> & import("styled-components").ExecutionProps & React.RefAttributes<any>> & import("styled-components/dist/utils/hoist").NonReactStatics<React.FC<EffectTypeListItemProps>>;
|
|
14
14
|
export default EffectTypeListItemFactory;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
export declare const StyledFilterPanel: import("styled-components").
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
export declare const StyledFilterPanel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, keyof import("react").ClassAttributes<HTMLLabelElement> | keyof import("react").LabelHTMLAttributes<HTMLLabelElement>> & import("react").ClassAttributes<HTMLLabelElement> & import("react").LabelHTMLAttributes<HTMLLabelElement>, "className"> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, keyof import("react").ClassAttributes<HTMLLabelElement> | keyof import("react").LabelHTMLAttributes<HTMLLabelElement>> & import("react").ClassAttributes<HTMLLabelElement> & import("react").LabelHTMLAttributes<HTMLLabelElement>, "className">>, "as" | "forwardedAs"> & {
|
|
2
|
+
as?: import("styled-components").WebTarget | undefined;
|
|
3
|
+
forwardedAs?: import("styled-components").WebTarget | undefined;
|
|
4
|
+
}, never> & Partial<Pick<import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, keyof import("react").ClassAttributes<HTMLLabelElement> | keyof import("react").LabelHTMLAttributes<HTMLLabelElement>> & import("react").ClassAttributes<HTMLLabelElement> & import("react").LabelHTMLAttributes<HTMLLabelElement>, "className"> & Partial<Pick<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, keyof import("react").ClassAttributes<HTMLLabelElement> | keyof import("react").LabelHTMLAttributes<HTMLLabelElement>> & import("react").ClassAttributes<HTMLLabelElement> & import("react").LabelHTMLAttributes<HTMLLabelElement>, "className">>, "as" | "forwardedAs"> & {
|
|
5
|
+
as?: import("styled-components").WebTarget | undefined;
|
|
6
|
+
forwardedAs?: import("styled-components").WebTarget | undefined;
|
|
7
|
+
}, never>>> & string;
|
|
@@ -19,11 +19,15 @@ declare function DatasetItemFactory(SourceSelector: any, FilterPanelHeader: any)
|
|
|
19
19
|
declare namespace DatasetItemFactory {
|
|
20
20
|
var deps: (typeof FilterPanelHeaderFactory | typeof SourceSelectorFactory)[];
|
|
21
21
|
}
|
|
22
|
-
declare function LayerTimelineFactory(LayerTypeListItem: any): React.ForwardRefExoticComponent<
|
|
22
|
+
declare function LayerTimelineFactory(LayerTypeListItem: any): React.ForwardRefExoticComponent<Omit<{
|
|
23
23
|
layers: any;
|
|
24
24
|
theme: any;
|
|
25
25
|
onDelete: any;
|
|
26
|
-
})
|
|
26
|
+
}, keyof import("styled-components").ExecutionProps> & import("styled-components").ExecutionProps & React.RefAttributes<any>> & import("styled-components/dist/utils/hoist").NonReactStatics<({ layers, theme, onDelete }: {
|
|
27
|
+
layers: any;
|
|
28
|
+
theme: any;
|
|
29
|
+
onDelete: any;
|
|
30
|
+
}) => React.JSX.Element>;
|
|
27
31
|
declare namespace LayerTimelineFactory {
|
|
28
32
|
var deps: (typeof LayerTypeListItemFactory)[];
|
|
29
33
|
}
|
package/dist/geocoder-panel.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { AddDataToMapOptions, MapState, ProtoDataset, UiState } from '@kepler.gl/types';
|
|
2
|
+
import { AddDataToMapOptions, LayerOrder, MapState, ProtoDataset, UiState } from '@kepler.gl/types';
|
|
3
3
|
import { ActionHandler, removeDataset, updateMap, updateVisData } from '@kepler.gl/actions';
|
|
4
4
|
type MapViewState = {
|
|
5
5
|
latitude: number;
|
|
@@ -25,7 +25,7 @@ interface GeocoderPanelProps {
|
|
|
25
25
|
updateVisData: ActionHandler<typeof updateVisData>;
|
|
26
26
|
removeDataset: ActionHandler<typeof removeDataset>;
|
|
27
27
|
updateMap: ActionHandler<typeof updateMap>;
|
|
28
|
-
layerOrder:
|
|
28
|
+
layerOrder: LayerOrder;
|
|
29
29
|
limitSearch?: boolean;
|
|
30
30
|
transitionDuration?: MapViewState['transitionDuration'];
|
|
31
31
|
width?: number;
|
package/dist/geocoder-panel.js
CHANGED
|
@@ -8,9 +8,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
exports["default"] = GeocoderPanelFactory;
|
|
9
9
|
exports.getUpdateVisDataPayload = getUpdateVisDataPayload;
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
13
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
15
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
16
16
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
@@ -45,11 +45,11 @@ var ICON_LAYER = {
|
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
|
-
function generateConfig(
|
|
48
|
+
function generateConfig() {
|
|
49
49
|
return {
|
|
50
50
|
visState: {
|
|
51
51
|
layers: [ICON_LAYER],
|
|
52
|
-
layerOrder: [ICON_LAYER.id]
|
|
52
|
+
layerOrder: [ICON_LAYER.id]
|
|
53
53
|
}
|
|
54
54
|
};
|
|
55
55
|
}
|
|
@@ -106,7 +106,6 @@ function GeocoderPanelFactory() {
|
|
|
106
106
|
updateVisData = _ref.updateVisData,
|
|
107
107
|
removeDataset = _ref.removeDataset,
|
|
108
108
|
updateMap = _ref.updateMap,
|
|
109
|
-
layerOrder = _ref.layerOrder,
|
|
110
109
|
_ref$limitSearch = _ref.limitSearch,
|
|
111
110
|
limitSearch = _ref$limitSearch === void 0 ? false : _ref$limitSearch,
|
|
112
111
|
_ref$transitionDurati = _ref.transitionDuration,
|
|
@@ -129,7 +128,7 @@ function GeocoderPanelFactory() {
|
|
|
129
128
|
var updateVisDataPayload = getUpdateVisDataPayload(lat, lon, text);
|
|
130
129
|
if (updateVisDataPayload) {
|
|
131
130
|
removeGeocoderDataset();
|
|
132
|
-
updateVisData.apply(void 0, (0, _toConsumableArray2["default"])(updateVisDataPayload).concat([generateConfig(
|
|
131
|
+
updateVisData.apply(void 0, (0, _toConsumableArray2["default"])(updateVisDataPayload).concat([generateConfig()]));
|
|
133
132
|
}
|
|
134
133
|
var bounds = bbox || [lon - _constants.GEOCODER_GEO_OFFSET, lat - _constants.GEOCODER_GEO_OFFSET, lon + _constants.GEOCODER_GEO_OFFSET, lat + _constants.GEOCODER_GEO_OFFSET];
|
|
135
134
|
var centerAndZoom = (0, _utils.getCenterAndZoomFromBounds)(bounds, {
|
|
@@ -151,7 +150,7 @@ function GeocoderPanelFactory() {
|
|
|
151
150
|
transitionDuration: transitionDuration,
|
|
152
151
|
transitionInterpolator: new _core.FlyToInterpolator()
|
|
153
152
|
}), index);
|
|
154
|
-
}, [index,
|
|
153
|
+
}, [index, mapState, removeGeocoderDataset, transitionDuration, updateMap, updateVisData]);
|
|
155
154
|
return /*#__PURE__*/_react["default"].createElement(StyledGeocoderPanel, {
|
|
156
155
|
className: (0, _classnames["default"])('geocoder-panel', className),
|
|
157
156
|
width: width,
|
|
@@ -171,4 +170,4 @@ function GeocoderPanelFactory() {
|
|
|
171
170
|
};
|
|
172
171
|
return GeocoderPanel;
|
|
173
172
|
}
|
|
174
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY2xhc3NuYW1lcyIsIl9wcm9jZXNzb3JzIiwiX2NvcmUiLCJfdXRpbHMiLCJfY29uc3RhbnRzIiwiX2dlb2NvZGVyIiwiX3RlbXBsYXRlT2JqZWN0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiSUNPTl9MQVlFUiIsImlkIiwiR0VPQ09ERVJfTEFZRVJfSUQiLCJ0eXBlIiwiY29uZmlnIiwibGFiZWwiLCJjb2xvciIsIkdFT0NPREVSX0lDT05fQ09MT1IiLCJkYXRhSWQiLCJHRU9DT0RFUl9EQVRBU0VUX05BTUUiLCJjb2x1bW5zIiwibGF0IiwibG5nIiwiaWNvbiIsImlzVmlzaWJsZSIsImhpZGRlbiIsInZpc0NvbmZpZyIsInJhZGl1cyIsIkdFT0NPREVSX0lDT05fU0laRSIsImdlbmVyYXRlQ29uZmlnIiwibGF5ZXJPcmRlciIsInZpc1N0YXRlIiwibGF5ZXJzIiwiY29uY2F0IiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsIlN0eWxlZEdlb2NvZGVyUGFuZWwiLCJzdHlsZWQiLCJkaXYiLCJfdGFnZ2VkVGVtcGxhdGVMaXRlcmFsMiIsInByb3BzIiwidGhlbWUiLCJnZW9jb2RlclRvcCIsInVuc3luY2VkVmlld3BvcnRzIiwiTnVtYmVyIiwiaXNGaW5pdGUiLCJpbmRleCIsImdlb2NvZGVyUmlnaHQiLCJ3aWR0aCIsImdlb2NvZGVyV2lkdGgiLCJib3hTaGFkb3ciLCJnZW5lcmF0ZUdlb2NvZGVyRGF0YXNldCIsImxvbiIsInRleHQiLCJkYXRhIiwicHJvY2Vzc1Jvd09iamVjdCIsImx0IiwibG4iLCJpbmZvIiwiaXNWYWxpZCIsImtleSIsInRlc3QiLCJnZXRVcGRhdGVWaXNEYXRhUGF5bG9hZCIsImRhdGFzZXQiLCJrZWVwRXhpc3RpbmdDb25maWciLCJHZW9jb2RlclBhbmVsRmFjdG9yeSIsIkdlb2NvZGVyUGFuZWwiLCJfcmVmIiwiaXNHZW9jb2RlckVuYWJsZWQiLCJtYXBTdGF0ZSIsIm1hcGJveEFwaUFjY2Vzc1Rva2VuIiwidXBkYXRlVmlzRGF0YSIsInJlbW92ZURhdGFzZXQiLCJ1cGRhdGVNYXAiLCJfcmVmJGxpbWl0U2VhcmNoIiwibGltaXRTZWFyY2giLCJfcmVmJHRyYW5zaXRpb25EdXJhdGkiLCJ0cmFuc2l0aW9uRHVyYXRpb24iLCJjbGFzc05hbWUiLCJyZW1vdmVHZW9jb2RlckRhdGFzZXQiLCJ1c2VDYWxsYmFjayIsIm9uU2VsZWN0ZWQiLCJfdmlld3BvcnQiLCJ1bmRlZmluZWQiLCJnZW9JdGVtIiwiX2dlb0l0ZW0kY2VudGVyIiwiX3NsaWNlZFRvQXJyYXkyIiwiY2VudGVyIiwiYmJveCIsInVwZGF0ZVZpc0RhdGFQYXlsb2FkIiwiYm91bmRzIiwiR0VPQ09ERVJfR0VPX09GRlNFVCIsImNlbnRlckFuZFpvb20iLCJnZXRDZW50ZXJBbmRab29tRnJvbUJvdW5kcyIsImhlaWdodCIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwiem9vbSIsInBpdGNoIiwiYmVhcmluZyIsInRyYW5zaXRpb25JbnRlcnBvbGF0b3IiLCJGbHlUb0ludGVycG9sYXRvciIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc25hbWVzIiwic3R5bGUiLCJkaXNwbGF5Iiwib25EZWxldGVNYXJrZXIiXSwic291cmNlcyI6WyIuLi9zcmMvZ2VvY29kZXItcGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkLCB7SVN0eWxlZENvbXBvbmVudH0gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQge3Byb2Nlc3NSb3dPYmplY3R9IGZyb20gJ0BrZXBsZXIuZ2wvcHJvY2Vzc29ycyc7XG5pbXBvcnQge0ZseVRvSW50ZXJwb2xhdG9yfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7Z2V0Q2VudGVyQW5kWm9vbUZyb21Cb3VuZHN9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtcbiAgR0VPQ09ERVJfREFUQVNFVF9OQU1FLFxuICBHRU9DT0RFUl9MQVlFUl9JRCxcbiAgR0VPQ09ERVJfR0VPX09GRlNFVCxcbiAgR0VPQ09ERVJfSUNPTl9DT0xPUixcbiAgR0VPQ09ERVJfSUNPTl9TSVpFXG59IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7QWRkRGF0YVRvTWFwT3B0aW9ucywgTWFwU3RhdGUsIFByb3RvRGF0YXNldCwgVWlTdGF0ZSwgVmlld3BvcnR9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtBY3Rpb25IYW5kbGVyLCByZW1vdmVEYXRhc2V0LCB1cGRhdGVNYXAsIHVwZGF0ZVZpc0RhdGF9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5cbmltcG9ydCBHZW9jb2Rlciwge1Jlc3VsdH0gZnJvbSAnLi9nZW9jb2Rlci9nZW9jb2Rlcic7XG50eXBlIE1hcFZpZXdTdGF0ZSA9IHtcbiAgbGF0aXR1ZGU6IG51bWJlcjtcbiAgbG9uZ2l0dWRlOiBudW1iZXI7XG4gIHpvb206IG51bWJlcjtcbiAgYmVhcmluZz86IG51bWJlcjtcbiAgcGl0Y2g/OiBudW1iZXI7XG4gIHRyYW5zaXRpb25EdXJhdGlvbj86IG51bWJlcjtcbiAgdHJhbnNpdGlvbkludGVycG9sYXRvcj86IG9iamVjdDtcbn07XG5cbmltcG9ydCB7QmFzZUNvbXBvbmVudFByb3BzfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgSUNPTl9MQVlFUiA9IHtcbiAgaWQ6IEdFT0NPREVSX0xBWUVSX0lELFxuICB0eXBlOiAnaWNvbicsXG4gIGNvbmZpZzoge1xuICAgIGxhYmVsOiAnR2VvY29kZXIgTGF5ZXInLFxuICAgIGNvbG9yOiBHRU9DT0RFUl9JQ09OX0NPTE9SLFxuICAgIGRhdGFJZDogR0VPQ09ERVJfREFUQVNFVF9OQU1FLFxuICAgIGNvbHVtbnM6IHtcbiAgICAgIGxhdDogJ2x0JyxcbiAgICAgIGxuZzogJ2xuJyxcbiAgICAgIGljb246ICdpY29uJyxcbiAgICAgIGxhYmVsOiAndGV4dCdcbiAgICB9LFxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcbiAgICBoaWRkZW46IHRydWUsXG4gICAgdmlzQ29uZmlnOiB7XG4gICAgICByYWRpdXM6IEdFT0NPREVSX0lDT05fU0laRVxuICAgIH1cbiAgfVxufTtcblxuZnVuY3Rpb24gZ2VuZXJhdGVDb25maWcobGF5ZXJPcmRlcikge1xuICByZXR1cm4ge1xuICAgIHZpc1N0YXRlOiB7XG4gICAgICBsYXllcnM6IFtJQ09OX0xBWUVSXSxcbiAgICAgIGxheWVyT3JkZXI6IFtJQ09OX0xBWUVSLmlkLCAuLi5sYXllck9yZGVyXVxuICAgIH1cbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgU3R5bGVkR2VvY29kZXJQYW5lbFByb3BzID0gQmFzZUNvbXBvbmVudFByb3BzICYge1xuICB1bnN5bmNlZFZpZXdwb3J0cz86IGJvb2xlYW47XG4gIGluZGV4PzogbnVtYmVyO1xuICB3aWR0aD86IG51bWJlcjtcbn07XG5cbmNvbnN0IFN0eWxlZEdlb2NvZGVyUGFuZWw6IElTdHlsZWRDb21wb25lbnQ8XG4gICd3ZWInLFxuICBTdHlsZWRHZW9jb2RlclBhbmVsUHJvcHNcbj4gPSBzdHlsZWQuZGl2PFN0eWxlZEdlb2NvZGVyUGFuZWxQcm9wcz5gXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmdlb2NvZGVyVG9wfXB4O1xuICByaWdodDogJHtwcm9wcyA9PlxuICAgIHByb3BzLnVuc3luY2VkVmlld3BvcnRzXG4gICAgICA/IC8vIDIgZ2VvY29kZXJzOiBzcGxpdCBtb2RlIGFuZCB1bnN5bmNlZCB2aWV3cG9ydHNcbiAgICAgICAgTnVtYmVyLmlzRmluaXRlKHByb3BzLmluZGV4KSAmJiBwcm9wcy5pbmRleCA9PT0gMFxuICAgICAgICA/IGBjYWxjKDUwJSArICR7cHJvcHMudGhlbWUuZ2VvY29kZXJSaWdodH1weClgIC8vIHVuc3luY2VkIGxlZnQgZ2VvY29kZXIgKGluZGV4IDApXG4gICAgICAgIDogYCR7cHJvcHMudGhlbWUuZ2VvY29kZXJSaWdodH1weGAgLy8gdW5zeW5jZWQgcmlnaHQgZ2VvY29kZXIgKGluZGV4IDEpXG4gICAgICA6IC8vIDEgZ2VvY29kZXI6IHNpbmdsZSBtb2RlIE9SIHNwbGl0IG1vZGUgYW5kIHN5bmNlZCB2aWV3cG9ydHNcbiAgICAgICAgYCR7cHJvcHMudGhlbWUuZ2VvY29kZXJSaWdodH1weGB9O1xuICB3aWR0aDogJHtwcm9wcyA9PiAoTnVtYmVyLmlzRmluaXRlKHByb3BzLndpZHRoKSA/IHByb3BzLndpZHRoIDogcHJvcHMudGhlbWUuZ2VvY29kZXJXaWR0aCl9cHg7XG4gIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm94U2hhZG93fTtcbiAgei1pbmRleDogMTAwO1xuYDtcblxuZnVuY3Rpb24gZ2VuZXJhdGVHZW9jb2RlckRhdGFzZXQobGF0OiBudW1iZXIsIGxvbjogbnVtYmVyLCB0ZXh0Pzogc3RyaW5nKTogUHJvdG9EYXRhc2V0IHwgbnVsbCB7XG4gIGNvbnN0IGRhdGEgPSBwcm9jZXNzUm93T2JqZWN0KFtcbiAgICB7XG4gICAgICBsdDogbGF0LFxuICAgICAgbG46IGxvbixcbiAgICAgIGljb246ICdwbGFjZScsXG4gICAgICB0ZXh0XG4gICAgfVxuICBdKTtcbiAgaWYgKCFkYXRhKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGRhdGEsXG4gICAgaW5mbzoge1xuICAgICAgaGlkZGVuOiB0cnVlLFxuICAgICAgaWQ6IEdFT0NPREVSX0RBVEFTRVRfTkFNRSxcbiAgICAgIGxhYmVsOiBHRU9DT0RFUl9EQVRBU0VUX05BTUVcbiAgICB9XG4gIH07XG59XG5cbmZ1bmN0aW9uIGlzVmFsaWQoa2V5KSB7XG4gIHJldHVybiAvcGtcXC4uKlxcLi4qLy50ZXN0KGtleSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRVcGRhdGVWaXNEYXRhUGF5bG9hZChcbiAgbGF0OiBudW1iZXIsXG4gIGxvbjogbnVtYmVyLFxuICB0ZXh0Pzogc3RyaW5nXG4pOiBbUHJvdG9EYXRhc2V0W10sIEFkZERhdGFUb01hcE9wdGlvbnNdIHwgbnVsbCB7XG4gIGNvbnN0IGRhdGFzZXQgPSBnZW5lcmF0ZUdlb2NvZGVyRGF0YXNldChsYXQsIGxvbiwgdGV4dCk7XG4gIGlmICghZGF0YXNldCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiBbXG4gICAgW2RhdGFzZXRdLFxuICAgIHtcbiAgICAgIGtlZXBFeGlzdGluZ0NvbmZpZzogdHJ1ZVxuICAgIH1cbiAgXTtcbn1cblxuaW50ZXJmYWNlIEdlb2NvZGVyUGFuZWxQcm9wcyB7XG4gIGlzR2VvY29kZXJFbmFibGVkOiBib29sZWFuO1xuICBtYXBTdGF0ZTogTWFwU3RhdGU7XG4gIHVpU3RhdGU6IFVpU3RhdGU7XG4gIG1hcGJveEFwaUFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIHVwZGF0ZVZpc0RhdGE6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHVwZGF0ZVZpc0RhdGE+O1xuICByZW1vdmVEYXRhc2V0OiBBY3Rpb25IYW5kbGVyPHR5cGVvZiByZW1vdmVEYXRhc2V0PjtcbiAgdXBkYXRlTWFwOiBBY3Rpb25IYW5kbGVyPHR5cGVvZiB1cGRhdGVNYXA+O1xuICBsYXllck9yZGVyOiBzdHJpbmdbXTtcbiAgbGltaXRTZWFyY2g/OiBib29sZWFuO1xuXG4gIHRyYW5zaXRpb25EdXJhdGlvbj86IE1hcFZpZXdTdGF0ZVsndHJhbnNpdGlvbkR1cmF0aW9uJ107XG4gIHdpZHRoPzogbnVtYmVyO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGluZGV4OiBudW1iZXI7XG4gIHVuc3luY2VkVmlld3BvcnRzOiBib29sZWFuO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBHZW9jb2RlclBhbmVsRmFjdG9yeSgpOiBSZWFjdC5GQzxHZW9jb2RlclBhbmVsUHJvcHM+IHtcbiAgY29uc3QgR2VvY29kZXJQYW5lbCA9ICh7XG4gICAgaXNHZW9jb2RlckVuYWJsZWQsXG4gICAgbWFwU3RhdGUsXG4gICAgbWFwYm94QXBpQWNjZXNzVG9rZW4sXG4gICAgdXBkYXRlVmlzRGF0YSxcbiAgICByZW1vdmVEYXRhc2V0LFxuICAgIHVwZGF0ZU1hcCxcbiAgICBsYXllck9yZGVyLFxuICAgIGxpbWl0U2VhcmNoID0gZmFsc2UsXG4gICAgdHJhbnNpdGlvbkR1cmF0aW9uID0gMzAwMCxcbiAgICB3aWR0aCxcbiAgICBjbGFzc05hbWUsXG4gICAgaW5kZXgsXG4gICAgdW5zeW5jZWRWaWV3cG9ydHNcbiAgfTogR2VvY29kZXJQYW5lbFByb3BzKSA9PiB7XG4gICAgY29uc3QgcmVtb3ZlR2VvY29kZXJEYXRhc2V0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgcmVtb3ZlRGF0YXNldChHRU9DT0RFUl9EQVRBU0VUX05BTUUpO1xuICAgIH0sIFtyZW1vdmVEYXRhc2V0XSk7XG5cbiAgICBjb25zdCBvblNlbGVjdGVkID0gdXNlQ2FsbGJhY2soXG4gICAgICAoX3ZpZXdwb3J0OiBWaWV3cG9ydCB8IG51bGwgPSBudWxsLCBnZW9JdGVtOiBSZXN1bHQpID0+IHtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgIGNlbnRlcjogW2xvbiwgbGF0XSxcbiAgICAgICAgICB0ZXh0LFxuICAgICAgICAgIGJib3hcbiAgICAgICAgfSA9IGdlb0l0ZW07XG5cbiAgICAgICAgY29uc3QgdXBkYXRlVmlzRGF0YVBheWxvYWQgPSBnZXRVcGRhdGVWaXNEYXRhUGF5bG9hZChsYXQsIGxvbiwgdGV4dCk7XG4gICAgICAgIGlmICh1cGRhdGVWaXNEYXRhUGF5bG9hZCkge1xuICAgICAgICAgIHJlbW92ZUdlb2NvZGVyRGF0YXNldCgpO1xuICAgICAgICAgIHVwZGF0ZVZpc0RhdGEoLi4udXBkYXRlVmlzRGF0YVBheWxvYWQsIGdlbmVyYXRlQ29uZmlnKGxheWVyT3JkZXIpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGJvdW5kcyA9IGJib3ggfHwgW1xuICAgICAgICAgIGxvbiAtIEdFT0NPREVSX0dFT19PRkZTRVQsXG4gICAgICAgICAgbGF0IC0gR0VPQ09ERVJfR0VPX09GRlNFVCxcbiAgICAgICAgICBsb24gKyBHRU9DT0RFUl9HRU9fT0ZGU0VULFxuICAgICAgICAgIGxhdCArIEdFT0NPREVSX0dFT19PRkZTRVRcbiAgICAgICAgXTtcbiAgICAgICAgY29uc3QgY2VudGVyQW5kWm9vbSA9IGdldENlbnRlckFuZFpvb21Gcm9tQm91bmRzKGJvdW5kcywge1xuICAgICAgICAgIHdpZHRoOiBtYXBTdGF0ZS53aWR0aCxcbiAgICAgICAgICBoZWlnaHQ6IG1hcFN0YXRlLmhlaWdodFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoIWNlbnRlckFuZFpvb20pIHtcbiAgICAgICAgICAvLyBmYWlsZWQgdG8gZml0IGJvdW5kc1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHVwZGF0ZU1hcChcbiAgICAgICAgICB7XG4gICAgICAgICAgICBsYXRpdHVkZTogY2VudGVyQW5kWm9vbS5jZW50ZXJbMV0sXG4gICAgICAgICAgICBsb25naXR1ZGU6IGNlbnRlckFuZFpvb20uY2VudGVyWzBdLFxuICAgICAgICAgICAgLy8gRm9yIG1hcmdpbmFsIG9yIGludmFsaWQgYm91bmRzLCB6b29tIG1heSBiZSBOYU4uIE1ha2Ugc3VyZSB0byBwcm92aWRlIGEgdmFsaWQgdmFsdWUgaW4gb3JkZXJcbiAgICAgICAgICAgIC8vIHRvIGF2b2lkIGNvcnJ1cHQgc3RhdGUgYW5kIHBvdGVudGlhbCBjcmFzaGVzIGFzIHpvb20gaXMgZXhwZWN0ZWQgdG8gYmUgYSBudW1iZXJcbiAgICAgICAgICAgIC4uLihOdW1iZXIuaXNGaW5pdGUoY2VudGVyQW5kWm9vbS56b29tKSA/IHt6b29tOiBjZW50ZXJBbmRab29tLnpvb219IDoge30pLFxuICAgICAgICAgICAgcGl0Y2g6IDAsXG4gICAgICAgICAgICBiZWFyaW5nOiAwLFxuICAgICAgICAgICAgdHJhbnNpdGlvbkR1cmF0aW9uLFxuICAgICAgICAgICAgdHJhbnNpdGlvbkludGVycG9sYXRvcjogbmV3IEZseVRvSW50ZXJwb2xhdG9yKClcbiAgICAgICAgICB9LFxuICAgICAgICAgIGluZGV4XG4gICAgICAgICk7XG4gICAgICB9LFxuICAgICAgW1xuICAgICAgICBpbmRleCxcbiAgICAgICAgbGF5ZXJPcmRlcixcbiAgICAgICAgbWFwU3RhdGUsXG4gICAgICAgIHJlbW92ZUdlb2NvZGVyRGF0YXNldCxcbiAgICAgICAgdHJhbnNpdGlvbkR1cmF0aW9uLFxuICAgICAgICB1cGRhdGVNYXAsXG4gICAgICAgIHVwZGF0ZVZpc0RhdGFcbiAgICAgIF1cbiAgICApO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRHZW9jb2RlclBhbmVsXG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NuYW1lcygnZ2VvY29kZXItcGFuZWwnLCBjbGFzc05hbWUpfVxuICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgIGluZGV4PXtpbmRleH1cbiAgICAgICAgdW5zeW5jZWRWaWV3cG9ydHM9e3Vuc3luY2VkVmlld3BvcnRzfVxuICAgICAgICBzdHlsZT17e2Rpc3BsYXk6IGlzR2VvY29kZXJFbmFibGVkID8gJ2Jsb2NrJyA6ICdub25lJ319XG4gICAgICA+XG4gICAgICAgIHtpc1ZhbGlkKG1hcGJveEFwaUFjY2Vzc1Rva2VuKSAmJiAoXG4gICAgICAgICAgPEdlb2NvZGVyXG4gICAgICAgICAgICBtYXBib3hBcGlBY2Nlc3NUb2tlbj17bWFwYm94QXBpQWNjZXNzVG9rZW59XG4gICAgICAgICAgICBvblNlbGVjdGVkPXtvblNlbGVjdGVkfVxuICAgICAgICAgICAgb25EZWxldGVNYXJrZXI9e3JlbW92ZUdlb2NvZGVyRGF0YXNldH1cbiAgICAgICAgICAgIHdpZHRoPXt3aWR0aH1cbiAgICAgICAgICAgIG1hcFN0YXRlPXttYXBTdGF0ZX1cbiAgICAgICAgICAgIGxpbWl0U2VhcmNoPXtsaW1pdFNlYXJjaH1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9TdHlsZWRHZW9jb2RlclBhbmVsPlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIEdlb2NvZGVyUGFuZWw7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxpQkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssS0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sTUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sVUFBQSxHQUFBUCxPQUFBO0FBVUEsSUFBQVEsU0FBQSxHQUFBTixzQkFBQSxDQUFBRixPQUFBO0FBQXFELElBQUFTLGVBQUEsRUFuQnJEO0FBQ0E7QUFBQSxTQUFBQyx5QkFBQUMsQ0FBQSw2QkFBQUMsT0FBQSxtQkFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsQ0FBQSxXQUFBQSxDQUFBLEdBQUFHLENBQUEsR0FBQUQsQ0FBQSxLQUFBRixDQUFBO0FBQUEsU0FBQVosd0JBQUFZLENBQUEsRUFBQUUsQ0FBQSxTQUFBQSxDQUFBLElBQUFGLENBQUEsSUFBQUEsQ0FBQSxDQUFBSSxVQUFBLFNBQUFKLENBQUEsZUFBQUEsQ0FBQSxnQkFBQUssT0FBQSxDQUFBTCxDQUFBLDBCQUFBQSxDQUFBLHNCQUFBQSxDQUFBLFFBQUFHLENBQUEsR0FBQUosd0JBQUEsQ0FBQUcsQ0FBQSxPQUFBQyxDQUFBLElBQUFBLENBQUEsQ0FBQUcsR0FBQSxDQUFBTixDQUFBLFVBQUFHLENBQUEsQ0FBQUksR0FBQSxDQUFBUCxDQUFBLE9BQUFRLENBQUEsS0FBQUMsU0FBQSxVQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLENBQUEsSUFBQWQsQ0FBQSxvQkFBQWMsQ0FBQSxPQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWhCLENBQUEsRUFBQWMsQ0FBQSxTQUFBRyxDQUFBLEdBQUFQLENBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBYixDQUFBLEVBQUFjLENBQUEsVUFBQUcsQ0FBQSxLQUFBQSxDQUFBLENBQUFWLEdBQUEsSUFBQVUsQ0FBQSxDQUFBQyxHQUFBLElBQUFQLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSixDQUFBLEVBQUFNLENBQUEsRUFBQUcsQ0FBQSxJQUFBVCxDQUFBLENBQUFNLENBQUEsSUFBQWQsQ0FBQSxDQUFBYyxDQUFBLFlBQUFOLENBQUEsY0FBQVIsQ0FBQSxFQUFBRyxDQUFBLElBQUFBLENBQUEsQ0FBQWUsR0FBQSxDQUFBbEIsQ0FBQSxFQUFBUSxDQUFBLEdBQUFBLENBQUE7QUFBQSxTQUFBVyxRQUFBbkIsQ0FBQSxFQUFBRSxDQUFBLFFBQUFDLENBQUEsR0FBQVEsTUFBQSxDQUFBUyxJQUFBLENBQUFwQixDQUFBLE9BQUFXLE1BQUEsQ0FBQVUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBWCxNQUFBLENBQUFVLHFCQUFBLENBQUFyQixDQUFBLEdBQUFFLENBQUEsS0FBQW9CLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFyQixDQUFBLFdBQUFTLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQWIsQ0FBQSxFQUFBRSxDQUFBLEVBQUFzQixVQUFBLE9BQUFyQixDQUFBLENBQUFzQixJQUFBLENBQUFDLEtBQUEsQ0FBQXZCLENBQUEsRUFBQW1CLENBQUEsWUFBQW5CLENBQUE7QUFBQSxTQUFBd0IsY0FBQTNCLENBQUEsYUFBQUUsQ0FBQSxNQUFBQSxDQUFBLEdBQUEwQixTQUFBLENBQUFDLE1BQUEsRUFBQTNCLENBQUEsVUFBQUMsQ0FBQSxXQUFBeUIsU0FBQSxDQUFBMUIsQ0FBQSxJQUFBMEIsU0FBQSxDQUFBMUIsQ0FBQSxRQUFBQSxDQUFBLE9BQUFpQixPQUFBLENBQUFSLE1BQUEsQ0FBQVIsQ0FBQSxPQUFBMkIsT0FBQSxXQUFBNUIsQ0FBQSxRQUFBNkIsZ0JBQUEsYUFBQS9CLENBQUEsRUFBQUUsQ0FBQSxFQUFBQyxDQUFBLENBQUFELENBQUEsU0FBQVMsTUFBQSxDQUFBcUIseUJBQUEsR0FBQXJCLE1BQUEsQ0FBQXNCLGdCQUFBLENBQUFqQyxDQUFBLEVBQUFXLE1BQUEsQ0FBQXFCLHlCQUFBLENBQUE3QixDQUFBLEtBQUFnQixPQUFBLENBQUFSLE1BQUEsQ0FBQVIsQ0FBQSxHQUFBMkIsT0FBQSxXQUFBNUIsQ0FBQSxJQUFBUyxNQUFBLENBQUFDLGNBQUEsQ0FBQVosQ0FBQSxFQUFBRSxDQUFBLEVBQUFTLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVYsQ0FBQSxFQUFBRCxDQUFBLGlCQUFBRixDQUFBO0FBK0JBLElBQU1rQyxVQUFVLEdBQUc7RUFDakJDLEVBQUUsRUFBRUMsNEJBQWlCO0VBQ3JCQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxNQUFNLEVBQUU7SUFDTkMsS0FBSyxFQUFFLGdCQUFnQjtJQUN2QkMsS0FBSyxFQUFFQyw4QkFBbUI7SUFDMUJDLE1BQU0sRUFBRUMsZ0NBQXFCO0lBQzdCQyxPQUFPLEVBQUU7TUFDUEMsR0FBRyxFQUFFLElBQUk7TUFDVEMsR0FBRyxFQUFFLElBQUk7TUFDVEMsSUFBSSxFQUFFLE1BQU07TUFDWlIsS0FBSyxFQUFFO0lBQ1QsQ0FBQztJQUNEUyxTQUFTLEVBQUUsSUFBSTtJQUNmQyxNQUFNLEVBQUUsSUFBSTtJQUNaQyxTQUFTLEVBQUU7TUFDVEMsTUFBTSxFQUFFQztJQUNWO0VBQ0Y7QUFDRixDQUFDO0FBRUQsU0FBU0MsY0FBY0EsQ0FBQ0MsVUFBVSxFQUFFO0VBQ2xDLE9BQU87SUFDTEMsUUFBUSxFQUFFO01BQ1JDLE1BQU0sRUFBRSxDQUFDdEIsVUFBVSxDQUFDO01BQ3BCb0IsVUFBVSxHQUFHcEIsVUFBVSxDQUFDQyxFQUFFLEVBQUFzQixNQUFBLEtBQUFDLG1CQUFBLGFBQUtKLFVBQVU7SUFDM0M7RUFDRixDQUFDO0FBQ0g7QUFRQSxJQUFNSyxtQkFHTCxHQUFHQyw0QkFBTSxDQUFDQyxHQUFHLENBQUEvRCxlQUFBLEtBQUFBLGVBQUEsT0FBQWdFLHVCQUFBLHNJQUVMLFVBQUFDLEtBQUs7RUFBQSxPQUFJQSxLQUFLLENBQUNDLEtBQUssQ0FBQ0MsV0FBVztBQUFBLEdBQzlCLFVBQUFGLEtBQUs7RUFBQSxPQUNaQSxLQUFLLENBQUNHLGlCQUFpQjtFQUNuQjtFQUNBQyxNQUFNLENBQUNDLFFBQVEsQ0FBQ0wsS0FBSyxDQUFDTSxLQUFLLENBQUMsSUFBSU4sS0FBSyxDQUFDTSxLQUFLLEtBQUssQ0FBQyxpQkFBQVosTUFBQSxDQUNqQ00sS0FBSyxDQUFDQyxLQUFLLENBQUNNLGFBQWEsU0FBTTtFQUFBLEtBQUFiLE1BQUEsQ0FDMUNNLEtBQUssQ0FBQ0MsS0FBSyxDQUFDTSxhQUFhLE9BQUksQ0FBQztFQUFBLEVBQ25DO0VBQUEsR0FBQWIsTUFBQSxDQUNHTSxLQUFLLENBQUNDLEtBQUssQ0FBQ00sYUFBYSxPQUFJO0FBQUEsR0FDN0IsVUFBQVAsS0FBSztFQUFBLE9BQUtJLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDTCxLQUFLLENBQUNRLEtBQUssQ0FBQyxHQUFHUixLQUFLLENBQUNRLEtBQUssR0FBR1IsS0FBSyxDQUFDQyxLQUFLLENBQUNRLGFBQWE7QUFBQSxDQUFDLEVBQzVFLFVBQUFULEtBQUs7RUFBQSxPQUFJQSxLQUFLLENBQUNDLEtBQUssQ0FBQ1MsU0FBUztBQUFBLEVBRTdDO0FBRUQsU0FBU0MsdUJBQXVCQSxDQUFDN0IsR0FBVyxFQUFFOEIsR0FBVyxFQUFFQyxJQUFhLEVBQXVCO0VBQzdGLElBQU1DLElBQUksR0FBRyxJQUFBQyw0QkFBZ0IsRUFBQyxDQUM1QjtJQUNFQyxFQUFFLEVBQUVsQyxHQUFHO0lBQ1BtQyxFQUFFLEVBQUVMLEdBQUc7SUFDUDVCLElBQUksRUFBRSxPQUFPO0lBQ2I2QixJQUFJLEVBQUpBO0VBQ0YsQ0FBQyxDQUNGLENBQUM7RUFDRixJQUFJLENBQUNDLElBQUksRUFBRTtJQUNULE9BQU8sSUFBSTtFQUNiO0VBRUEsT0FBTztJQUNMQSxJQUFJLEVBQUpBLElBQUk7SUFDSkksSUFBSSxFQUFFO01BQ0poQyxNQUFNLEVBQUUsSUFBSTtNQUNaZCxFQUFFLEVBQUVRLGdDQUFxQjtNQUN6QkosS0FBSyxFQUFFSTtJQUNUO0VBQ0YsQ0FBQztBQUNIO0FBRUEsU0FBU3VDLE9BQU9BLENBQUNDLEdBQUcsRUFBRTtFQUNwQixPQUFPLFlBQVksQ0FBQ0MsSUFBSSxDQUFDRCxHQUFHLENBQUM7QUFDL0I7QUFFTyxTQUFTRSx1QkFBdUJBLENBQ3JDeEMsR0FBVyxFQUNYOEIsR0FBVyxFQUNYQyxJQUFhLEVBQ2lDO0VBQzlDLElBQU1VLE9BQU8sR0FBR1osdUJBQXVCLENBQUM3QixHQUFHLEVBQUU4QixHQUFHLEVBQUVDLElBQUksQ0FBQztFQUN2RCxJQUFJLENBQUNVLE9BQU8sRUFBRTtJQUNaLE9BQU8sSUFBSTtFQUNiO0VBQ0EsT0FBTyxDQUNMLENBQUNBLE9BQU8sQ0FBQyxFQUNUO0lBQ0VDLGtCQUFrQixFQUFFO0VBQ3RCLENBQUMsQ0FDRjtBQUNIO0FBb0JlLFNBQVNDLG9CQUFvQkEsQ0FBQSxFQUFpQztFQUMzRSxJQUFNQyxhQUFhLEdBQUcsU0FBaEJBLGFBQWFBLENBQUFDLElBQUEsRUFjTztJQUFBLElBYnhCQyxpQkFBaUIsR0FBQUQsSUFBQSxDQUFqQkMsaUJBQWlCO01BQ2pCQyxRQUFRLEdBQUFGLElBQUEsQ0FBUkUsUUFBUTtNQUNSQyxvQkFBb0IsR0FBQUgsSUFBQSxDQUFwQkcsb0JBQW9CO01BQ3BCQyxhQUFhLEdBQUFKLElBQUEsQ0FBYkksYUFBYTtNQUNiQyxhQUFhLEdBQUFMLElBQUEsQ0FBYkssYUFBYTtNQUNiQyxTQUFTLEdBQUFOLElBQUEsQ0FBVE0sU0FBUztNQUNUMUMsVUFBVSxHQUFBb0MsSUFBQSxDQUFWcEMsVUFBVTtNQUFBMkMsZ0JBQUEsR0FBQVAsSUFBQSxDQUNWUSxXQUFXO01BQVhBLFdBQVcsR0FBQUQsZ0JBQUEsY0FBRyxLQUFLLEdBQUFBLGdCQUFBO01BQUFFLHFCQUFBLEdBQUFULElBQUEsQ0FDbkJVLGtCQUFrQjtNQUFsQkEsa0JBQWtCLEdBQUFELHFCQUFBLGNBQUcsSUFBSSxHQUFBQSxxQkFBQTtNQUN6QjVCLEtBQUssR0FBQW1CLElBQUEsQ0FBTG5CLEtBQUs7TUFDTDhCLFNBQVMsR0FBQVgsSUFBQSxDQUFUVyxTQUFTO01BQ1RoQyxLQUFLLEdBQUFxQixJQUFBLENBQUxyQixLQUFLO01BQ0xILGlCQUFpQixHQUFBd0IsSUFBQSxDQUFqQnhCLGlCQUFpQjtJQUVqQixJQUFNb0MscUJBQXFCLEdBQUcsSUFBQUMsa0JBQVcsRUFBQyxZQUFNO01BQzlDUixhQUFhLENBQUNwRCxnQ0FBcUIsQ0FBQztJQUN0QyxDQUFDLEVBQUUsQ0FBQ29ELGFBQWEsQ0FBQyxDQUFDO0lBRW5CLElBQU1TLFVBQVUsR0FBRyxJQUFBRCxrQkFBVyxFQUM1QixZQUF3RDtNQUFBLElBQXZERSxTQUEwQixHQUFBN0UsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQThFLFNBQUEsR0FBQTlFLFNBQUEsTUFBRyxJQUFJO01BQUEsSUFBRStFLE9BQWUsR0FBQS9FLFNBQUEsQ0FBQUMsTUFBQSxPQUFBRCxTQUFBLE1BQUE4RSxTQUFBO01BQ2pELElBQUFFLGVBQUEsT0FBQUMsZUFBQSxhQUlJRixPQUFPLENBSFRHLE1BQU07UUFBR25DLEdBQUcsR0FBQWlDLGVBQUE7UUFBRS9ELEdBQUcsR0FBQStELGVBQUE7UUFDakJoQyxJQUFJLEdBRUYrQixPQUFPLENBRlQvQixJQUFJO1FBQ0ptQyxJQUFJLEdBQ0ZKLE9BQU8sQ0FEVEksSUFBSTtNQUdOLElBQU1DLG9CQUFvQixHQUFHM0IsdUJBQXVCLENBQUN4QyxHQUFHLEVBQUU4QixHQUFHLEVBQUVDLElBQUksQ0FBQztNQUNwRSxJQUFJb0Msb0JBQW9CLEVBQUU7UUFDeEJWLHFCQUFxQixDQUFDLENBQUM7UUFDdkJSLGFBQWEsQ0FBQXBFLEtBQUEsYUFBQWdDLG1CQUFBLGFBQUlzRCxvQkFBb0IsRUFBQXZELE1BQUEsRUFBRUosY0FBYyxDQUFDQyxVQUFVLENBQUMsR0FBQztNQUNwRTtNQUVBLElBQU0yRCxNQUFNLEdBQUdGLElBQUksSUFBSSxDQUNyQnBDLEdBQUcsR0FBR3VDLDhCQUFtQixFQUN6QnJFLEdBQUcsR0FBR3FFLDhCQUFtQixFQUN6QnZDLEdBQUcsR0FBR3VDLDhCQUFtQixFQUN6QnJFLEdBQUcsR0FBR3FFLDhCQUFtQixDQUMxQjtNQUNELElBQU1DLGFBQWEsR0FBRyxJQUFBQyxpQ0FBMEIsRUFBQ0gsTUFBTSxFQUFFO1FBQ3ZEMUMsS0FBSyxFQUFFcUIsUUFBUSxDQUFDckIsS0FBSztRQUNyQjhDLE1BQU0sRUFBRXpCLFFBQVEsQ0FBQ3lCO01BQ25CLENBQUMsQ0FBQztNQUVGLElBQUksQ0FBQ0YsYUFBYSxFQUFFO1FBQ2xCO1FBQ0E7TUFDRjtNQUVBbkIsU0FBUyxDQUFBckUsYUFBQSxDQUFBQSxhQUFBO1FBRUwyRixRQUFRLEVBQUVILGFBQWEsQ0FBQ0wsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNqQ1MsU0FBUyxFQUFFSixhQUFhLENBQUNMLE1BQU0sQ0FBQyxDQUFDO01BQUMsR0FHOUIzQyxNQUFNLENBQUNDLFFBQVEsQ0FBQytDLGFBQWEsQ0FBQ0ssSUFBSSxDQUFDLEdBQUc7UUFBQ0EsSUFBSSxFQUFFTCxhQUFhLENBQUNLO01BQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6RUMsS0FBSyxFQUFFLENBQUM7UUFDUkMsT0FBTyxFQUFFLENBQUM7UUFDVnRCLGtCQUFrQixFQUFsQkEsa0JBQWtCO1FBQ2xCdUIsc0JBQXNCLEVBQUUsSUFBSUMsdUJBQWlCLENBQUM7TUFBQyxJQUVqRHZELEtBQ0YsQ0FBQztJQUNILENBQUMsRUFDRCxDQUNFQSxLQUFLLEVBQ0xmLFVBQVUsRUFDVnNDLFFBQVEsRUFDUlUscUJBQXFCLEVBQ3JCRixrQkFBa0IsRUFDbEJKLFNBQVMsRUFDVEYsYUFBYSxDQUVqQixDQUFDO0lBRUQsb0JBQ0UzRyxNQUFBLFlBQUEwSSxhQUFBLENBQUNsRSxtQkFBbUI7TUFDbEIwQyxTQUFTLEVBQUUsSUFBQXlCLHNCQUFVLEVBQUMsZ0JBQWdCLEVBQUV6QixTQUFTLENBQUU7TUFDbkQ5QixLQUFLLEVBQUVBLEtBQU07TUFDYkYsS0FBSyxFQUFFQSxLQUFNO01BQ2JILGlCQUFpQixFQUFFQSxpQkFBa0I7TUFDckM2RCxLQUFLLEVBQUU7UUFBQ0MsT0FBTyxFQUFFckMsaUJBQWlCLEdBQUcsT0FBTyxHQUFHO01BQU07SUFBRSxHQUV0RFQsT0FBTyxDQUFDVyxvQkFBb0IsQ0FBQyxpQkFDNUIxRyxNQUFBLFlBQUEwSSxhQUFBLENBQUNoSSxTQUFBLFdBQVE7TUFDUGdHLG9CQUFvQixFQUFFQSxvQkFBcUI7TUFDM0NXLFVBQVUsRUFBRUEsVUFBVztNQUN2QnlCLGNBQWMsRUFBRTNCLHFCQUFzQjtNQUN0Qy9CLEtBQUssRUFBRUEsS0FBTTtNQUNicUIsUUFBUSxFQUFFQSxRQUFTO01BQ25CTSxXQUFXLEVBQUVBO0lBQVksQ0FDMUIsQ0FFZ0IsQ0FBQztFQUUxQixDQUFDO0VBRUQsT0FBT1QsYUFBYTtBQUN0QiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
173
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfc3R5bGVkQ29tcG9uZW50cyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfY2xhc3NuYW1lcyIsIl9wcm9jZXNzb3JzIiwiX2NvcmUiLCJfdXRpbHMiLCJfY29uc3RhbnRzIiwiX2dlb2NvZGVyIiwiX3RlbXBsYXRlT2JqZWN0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwiZSIsIldlYWtNYXAiLCJyIiwidCIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiaGFzIiwiZ2V0IiwibiIsIl9fcHJvdG9fXyIsImEiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsInUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpIiwic2V0Iiwib3duS2V5cyIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiSUNPTl9MQVlFUiIsImlkIiwiR0VPQ09ERVJfTEFZRVJfSUQiLCJ0eXBlIiwiY29uZmlnIiwibGFiZWwiLCJjb2xvciIsIkdFT0NPREVSX0lDT05fQ09MT1IiLCJkYXRhSWQiLCJHRU9DT0RFUl9EQVRBU0VUX05BTUUiLCJjb2x1bW5zIiwibGF0IiwibG5nIiwiaWNvbiIsImlzVmlzaWJsZSIsImhpZGRlbiIsInZpc0NvbmZpZyIsInJhZGl1cyIsIkdFT0NPREVSX0lDT05fU0laRSIsImdlbmVyYXRlQ29uZmlnIiwidmlzU3RhdGUiLCJsYXllcnMiLCJsYXllck9yZGVyIiwiU3R5bGVkR2VvY29kZXJQYW5lbCIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsImdlb2NvZGVyVG9wIiwidW5zeW5jZWRWaWV3cG9ydHMiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsImluZGV4IiwiY29uY2F0IiwiZ2VvY29kZXJSaWdodCIsIndpZHRoIiwiZ2VvY29kZXJXaWR0aCIsImJveFNoYWRvdyIsImdlbmVyYXRlR2VvY29kZXJEYXRhc2V0IiwibG9uIiwidGV4dCIsImRhdGEiLCJwcm9jZXNzUm93T2JqZWN0IiwibHQiLCJsbiIsImluZm8iLCJpc1ZhbGlkIiwia2V5IiwidGVzdCIsImdldFVwZGF0ZVZpc0RhdGFQYXlsb2FkIiwiZGF0YXNldCIsImtlZXBFeGlzdGluZ0NvbmZpZyIsIkdlb2NvZGVyUGFuZWxGYWN0b3J5IiwiR2VvY29kZXJQYW5lbCIsIl9yZWYiLCJpc0dlb2NvZGVyRW5hYmxlZCIsIm1hcFN0YXRlIiwibWFwYm94QXBpQWNjZXNzVG9rZW4iLCJ1cGRhdGVWaXNEYXRhIiwicmVtb3ZlRGF0YXNldCIsInVwZGF0ZU1hcCIsIl9yZWYkbGltaXRTZWFyY2giLCJsaW1pdFNlYXJjaCIsIl9yZWYkdHJhbnNpdGlvbkR1cmF0aSIsInRyYW5zaXRpb25EdXJhdGlvbiIsImNsYXNzTmFtZSIsInJlbW92ZUdlb2NvZGVyRGF0YXNldCIsInVzZUNhbGxiYWNrIiwib25TZWxlY3RlZCIsIl92aWV3cG9ydCIsInVuZGVmaW5lZCIsImdlb0l0ZW0iLCJfZ2VvSXRlbSRjZW50ZXIiLCJfc2xpY2VkVG9BcnJheTIiLCJjZW50ZXIiLCJiYm94IiwidXBkYXRlVmlzRGF0YVBheWxvYWQiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiYm91bmRzIiwiR0VPQ09ERVJfR0VPX09GRlNFVCIsImNlbnRlckFuZFpvb20iLCJnZXRDZW50ZXJBbmRab29tRnJvbUJvdW5kcyIsImhlaWdodCIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwiem9vbSIsInBpdGNoIiwiYmVhcmluZyIsInRyYW5zaXRpb25JbnRlcnBvbGF0b3IiLCJGbHlUb0ludGVycG9sYXRvciIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc25hbWVzIiwic3R5bGUiLCJkaXNwbGF5Iiwib25EZWxldGVNYXJrZXIiXSwic291cmNlcyI6WyIuLi9zcmMvZ2VvY29kZXItcGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVRcbi8vIENvcHlyaWdodCBjb250cmlidXRvcnMgdG8gdGhlIGtlcGxlci5nbCBwcm9qZWN0XG5cbmltcG9ydCBSZWFjdCwge3VzZUNhbGxiYWNrfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkLCB7SVN0eWxlZENvbXBvbmVudH0gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQge3Byb2Nlc3NSb3dPYmplY3R9IGZyb20gJ0BrZXBsZXIuZ2wvcHJvY2Vzc29ycyc7XG5pbXBvcnQge0ZseVRvSW50ZXJwb2xhdG9yfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7Z2V0Q2VudGVyQW5kWm9vbUZyb21Cb3VuZHN9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtcbiAgR0VPQ09ERVJfREFUQVNFVF9OQU1FLFxuICBHRU9DT0RFUl9MQVlFUl9JRCxcbiAgR0VPQ09ERVJfR0VPX09GRlNFVCxcbiAgR0VPQ09ERVJfSUNPTl9DT0xPUixcbiAgR0VPQ09ERVJfSUNPTl9TSVpFXG59IGZyb20gJ0BrZXBsZXIuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7QWRkRGF0YVRvTWFwT3B0aW9ucywgTGF5ZXJPcmRlciwgTWFwU3RhdGUsIFByb3RvRGF0YXNldCwgVWlTdGF0ZSwgVmlld3BvcnR9IGZyb20gJ0BrZXBsZXIuZ2wvdHlwZXMnO1xuaW1wb3J0IHtBY3Rpb25IYW5kbGVyLCByZW1vdmVEYXRhc2V0LCB1cGRhdGVNYXAsIHVwZGF0ZVZpc0RhdGF9IGZyb20gJ0BrZXBsZXIuZ2wvYWN0aW9ucyc7XG5cbmltcG9ydCBHZW9jb2Rlciwge1Jlc3VsdH0gZnJvbSAnLi9nZW9jb2Rlci9nZW9jb2Rlcic7XG50eXBlIE1hcFZpZXdTdGF0ZSA9IHtcbiAgbGF0aXR1ZGU6IG51bWJlcjtcbiAgbG9uZ2l0dWRlOiBudW1iZXI7XG4gIHpvb206IG51bWJlcjtcbiAgYmVhcmluZz86IG51bWJlcjtcbiAgcGl0Y2g/OiBudW1iZXI7XG4gIHRyYW5zaXRpb25EdXJhdGlvbj86IG51bWJlcjtcbiAgdHJhbnNpdGlvbkludGVycG9sYXRvcj86IG9iamVjdDtcbn07XG5cbmltcG9ydCB7QmFzZUNvbXBvbmVudFByb3BzfSBmcm9tICcuL3R5cGVzJztcblxuY29uc3QgSUNPTl9MQVlFUiA9IHtcbiAgaWQ6IEdFT0NPREVSX0xBWUVSX0lELFxuICB0eXBlOiAnaWNvbicsXG4gIGNvbmZpZzoge1xuICAgIGxhYmVsOiAnR2VvY29kZXIgTGF5ZXInLFxuICAgIGNvbG9yOiBHRU9DT0RFUl9JQ09OX0NPTE9SLFxuICAgIGRhdGFJZDogR0VPQ09ERVJfREFUQVNFVF9OQU1FLFxuICAgIGNvbHVtbnM6IHtcbiAgICAgIGxhdDogJ2x0JyxcbiAgICAgIGxuZzogJ2xuJyxcbiAgICAgIGljb246ICdpY29uJyxcbiAgICAgIGxhYmVsOiAndGV4dCdcbiAgICB9LFxuICAgIGlzVmlzaWJsZTogdHJ1ZSxcbiAgICBoaWRkZW46IHRydWUsXG4gICAgdmlzQ29uZmlnOiB7XG4gICAgICByYWRpdXM6IEdFT0NPREVSX0lDT05fU0laRVxuICAgIH1cbiAgfVxufTtcblxuZnVuY3Rpb24gZ2VuZXJhdGVDb25maWcoKSB7XG4gIHJldHVybiB7XG4gICAgdmlzU3RhdGU6IHtcbiAgICAgIGxheWVyczogW0lDT05fTEFZRVJdLFxuICAgICAgbGF5ZXJPcmRlcjogW0lDT05fTEFZRVIuaWRdXG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgdHlwZSBTdHlsZWRHZW9jb2RlclBhbmVsUHJvcHMgPSBCYXNlQ29tcG9uZW50UHJvcHMgJiB7XG4gIHVuc3luY2VkVmlld3BvcnRzPzogYm9vbGVhbjtcbiAgaW5kZXg/OiBudW1iZXI7XG4gIHdpZHRoPzogbnVtYmVyO1xufTtcblxuY29uc3QgU3R5bGVkR2VvY29kZXJQYW5lbDogSVN0eWxlZENvbXBvbmVudDxcbiAgJ3dlYicsXG4gIFN0eWxlZEdlb2NvZGVyUGFuZWxQcm9wc1xuPiA9IHN0eWxlZC5kaXY8U3R5bGVkR2VvY29kZXJQYW5lbFByb3BzPmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZ2VvY29kZXJUb3B9cHg7XG4gIHJpZ2h0OiAke3Byb3BzID0+XG4gICAgcHJvcHMudW5zeW5jZWRWaWV3cG9ydHNcbiAgICAgID8gLy8gMiBnZW9jb2RlcnM6IHNwbGl0IG1vZGUgYW5kIHVuc3luY2VkIHZpZXdwb3J0c1xuICAgICAgICBOdW1iZXIuaXNGaW5pdGUocHJvcHMuaW5kZXgpICYmIHByb3BzLmluZGV4ID09PSAwXG4gICAgICAgID8gYGNhbGMoNTAlICsgJHtwcm9wcy50aGVtZS5nZW9jb2RlclJpZ2h0fXB4KWAgLy8gdW5zeW5jZWQgbGVmdCBnZW9jb2RlciAoaW5kZXggMClcbiAgICAgICAgOiBgJHtwcm9wcy50aGVtZS5nZW9jb2RlclJpZ2h0fXB4YCAvLyB1bnN5bmNlZCByaWdodCBnZW9jb2RlciAoaW5kZXggMSlcbiAgICAgIDogLy8gMSBnZW9jb2Rlcjogc2luZ2xlIG1vZGUgT1Igc3BsaXQgbW9kZSBhbmQgc3luY2VkIHZpZXdwb3J0c1xuICAgICAgICBgJHtwcm9wcy50aGVtZS5nZW9jb2RlclJpZ2h0fXB4YH07XG4gIHdpZHRoOiAke3Byb3BzID0+IChOdW1iZXIuaXNGaW5pdGUocHJvcHMud2lkdGgpID8gcHJvcHMud2lkdGggOiBwcm9wcy50aGVtZS5nZW9jb2RlcldpZHRoKX1weDtcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5ib3hTaGFkb3d9O1xuICB6LWluZGV4OiAxMDA7XG5gO1xuXG5mdW5jdGlvbiBnZW5lcmF0ZUdlb2NvZGVyRGF0YXNldChsYXQ6IG51bWJlciwgbG9uOiBudW1iZXIsIHRleHQ/OiBzdHJpbmcpOiBQcm90b0RhdGFzZXQgfCBudWxsIHtcbiAgY29uc3QgZGF0YSA9IHByb2Nlc3NSb3dPYmplY3QoW1xuICAgIHtcbiAgICAgIGx0OiBsYXQsXG4gICAgICBsbjogbG9uLFxuICAgICAgaWNvbjogJ3BsYWNlJyxcbiAgICAgIHRleHRcbiAgICB9XG4gIF0pO1xuICBpZiAoIWRhdGEpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgZGF0YSxcbiAgICBpbmZvOiB7XG4gICAgICBoaWRkZW46IHRydWUsXG4gICAgICBpZDogR0VPQ09ERVJfREFUQVNFVF9OQU1FLFxuICAgICAgbGFiZWw6IEdFT0NPREVSX0RBVEFTRVRfTkFNRVxuICAgIH1cbiAgfTtcbn1cblxuZnVuY3Rpb24gaXNWYWxpZChrZXkpIHtcbiAgcmV0dXJuIC9wa1xcLi4qXFwuLiovLnRlc3Qoa2V5KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFVwZGF0ZVZpc0RhdGFQYXlsb2FkKFxuICBsYXQ6IG51bWJlcixcbiAgbG9uOiBudW1iZXIsXG4gIHRleHQ/OiBzdHJpbmdcbik6IFtQcm90b0RhdGFzZXRbXSwgQWRkRGF0YVRvTWFwT3B0aW9uc10gfCBudWxsIHtcbiAgY29uc3QgZGF0YXNldCA9IGdlbmVyYXRlR2VvY29kZXJEYXRhc2V0KGxhdCwgbG9uLCB0ZXh0KTtcbiAgaWYgKCFkYXRhc2V0KSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIFtcbiAgICBbZGF0YXNldF0sXG4gICAge1xuICAgICAga2VlcEV4aXN0aW5nQ29uZmlnOiB0cnVlXG4gICAgfVxuICBdO1xufVxuXG5pbnRlcmZhY2UgR2VvY29kZXJQYW5lbFByb3BzIHtcbiAgaXNHZW9jb2RlckVuYWJsZWQ6IGJvb2xlYW47XG4gIG1hcFN0YXRlOiBNYXBTdGF0ZTtcbiAgdWlTdGF0ZTogVWlTdGF0ZTtcbiAgbWFwYm94QXBpQWNjZXNzVG9rZW46IHN0cmluZztcbiAgdXBkYXRlVmlzRGF0YTogQWN0aW9uSGFuZGxlcjx0eXBlb2YgdXBkYXRlVmlzRGF0YT47XG4gIHJlbW92ZURhdGFzZXQ6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHJlbW92ZURhdGFzZXQ+O1xuICB1cGRhdGVNYXA6IEFjdGlvbkhhbmRsZXI8dHlwZW9mIHVwZGF0ZU1hcD47XG4gIGxheWVyT3JkZXI6IExheWVyT3JkZXI7XG4gIGxpbWl0U2VhcmNoPzogYm9vbGVhbjtcblxuICB0cmFuc2l0aW9uRHVyYXRpb24/OiBNYXBWaWV3U3RhdGVbJ3RyYW5zaXRpb25EdXJhdGlvbiddO1xuICB3aWR0aD86IG51bWJlcjtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBpbmRleDogbnVtYmVyO1xuICB1bnN5bmNlZFZpZXdwb3J0czogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gR2VvY29kZXJQYW5lbEZhY3RvcnkoKTogUmVhY3QuRkM8R2VvY29kZXJQYW5lbFByb3BzPiB7XG4gIGNvbnN0IEdlb2NvZGVyUGFuZWwgPSAoe1xuICAgIGlzR2VvY29kZXJFbmFibGVkLFxuICAgIG1hcFN0YXRlLFxuICAgIG1hcGJveEFwaUFjY2Vzc1Rva2VuLFxuICAgIHVwZGF0ZVZpc0RhdGEsXG4gICAgcmVtb3ZlRGF0YXNldCxcbiAgICB1cGRhdGVNYXAsXG4gICAgbGltaXRTZWFyY2ggPSBmYWxzZSxcbiAgICB0cmFuc2l0aW9uRHVyYXRpb24gPSAzMDAwLFxuICAgIHdpZHRoLFxuICAgIGNsYXNzTmFtZSxcbiAgICBpbmRleCxcbiAgICB1bnN5bmNlZFZpZXdwb3J0c1xuICB9OiBHZW9jb2RlclBhbmVsUHJvcHMpID0+IHtcbiAgICBjb25zdCByZW1vdmVHZW9jb2RlckRhdGFzZXQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICByZW1vdmVEYXRhc2V0KEdFT0NPREVSX0RBVEFTRVRfTkFNRSk7XG4gICAgfSwgW3JlbW92ZURhdGFzZXRdKTtcblxuICAgIGNvbnN0IG9uU2VsZWN0ZWQgPSB1c2VDYWxsYmFjayhcbiAgICAgIChfdmlld3BvcnQ6IFZpZXdwb3J0IHwgbnVsbCA9IG51bGwsIGdlb0l0ZW06IFJlc3VsdCkgPT4ge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgY2VudGVyOiBbbG9uLCBsYXRdLFxuICAgICAgICAgIHRleHQsXG4gICAgICAgICAgYmJveFxuICAgICAgICB9ID0gZ2VvSXRlbTtcblxuICAgICAgICBjb25zdCB1cGRhdGVWaXNEYXRhUGF5bG9hZCA9IGdldFVwZGF0ZVZpc0RhdGFQYXlsb2FkKGxhdCwgbG9uLCB0ZXh0KTtcbiAgICAgICAgaWYgKHVwZGF0ZVZpc0RhdGFQYXlsb2FkKSB7XG4gICAgICAgICAgcmVtb3ZlR2VvY29kZXJEYXRhc2V0KCk7XG4gICAgICAgICAgdXBkYXRlVmlzRGF0YSguLi51cGRhdGVWaXNEYXRhUGF5bG9hZCwgZ2VuZXJhdGVDb25maWcoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBib3VuZHMgPSBiYm94IHx8IFtcbiAgICAgICAgICBsb24gLSBHRU9DT0RFUl9HRU9fT0ZGU0VULFxuICAgICAgICAgIGxhdCAtIEdFT0NPREVSX0dFT19PRkZTRVQsXG4gICAgICAgICAgbG9uICsgR0VPQ09ERVJfR0VPX09GRlNFVCxcbiAgICAgICAgICBsYXQgKyBHRU9DT0RFUl9HRU9fT0ZGU0VUXG4gICAgICAgIF07XG4gICAgICAgIGNvbnN0IGNlbnRlckFuZFpvb20gPSBnZXRDZW50ZXJBbmRab29tRnJvbUJvdW5kcyhib3VuZHMsIHtcbiAgICAgICAgICB3aWR0aDogbWFwU3RhdGUud2lkdGgsXG4gICAgICAgICAgaGVpZ2h0OiBtYXBTdGF0ZS5oZWlnaHRcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKCFjZW50ZXJBbmRab29tKSB7XG4gICAgICAgICAgLy8gZmFpbGVkIHRvIGZpdCBib3VuZHNcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB1cGRhdGVNYXAoXG4gICAgICAgICAge1xuICAgICAgICAgICAgbGF0aXR1ZGU6IGNlbnRlckFuZFpvb20uY2VudGVyWzFdLFxuICAgICAgICAgICAgbG9uZ2l0dWRlOiBjZW50ZXJBbmRab29tLmNlbnRlclswXSxcbiAgICAgICAgICAgIC8vIEZvciBtYXJnaW5hbCBvciBpbnZhbGlkIGJvdW5kcywgem9vbSBtYXkgYmUgTmFOLiBNYWtlIHN1cmUgdG8gcHJvdmlkZSBhIHZhbGlkIHZhbHVlIGluIG9yZGVyXG4gICAgICAgICAgICAvLyB0byBhdm9pZCBjb3JydXB0IHN0YXRlIGFuZCBwb3RlbnRpYWwgY3Jhc2hlcyBhcyB6b29tIGlzIGV4cGVjdGVkIHRvIGJlIGEgbnVtYmVyXG4gICAgICAgICAgICAuLi4oTnVtYmVyLmlzRmluaXRlKGNlbnRlckFuZFpvb20uem9vbSkgPyB7em9vbTogY2VudGVyQW5kWm9vbS56b29tfSA6IHt9KSxcbiAgICAgICAgICAgIHBpdGNoOiAwLFxuICAgICAgICAgICAgYmVhcmluZzogMCxcbiAgICAgICAgICAgIHRyYW5zaXRpb25EdXJhdGlvbixcbiAgICAgICAgICAgIHRyYW5zaXRpb25JbnRlcnBvbGF0b3I6IG5ldyBGbHlUb0ludGVycG9sYXRvcigpXG4gICAgICAgICAgfSxcbiAgICAgICAgICBpbmRleFxuICAgICAgICApO1xuICAgICAgfSxcbiAgICAgIFtcbiAgICAgICAgaW5kZXgsXG4gICAgICAgIG1hcFN0YXRlLFxuICAgICAgICByZW1vdmVHZW9jb2RlckRhdGFzZXQsXG4gICAgICAgIHRyYW5zaXRpb25EdXJhdGlvbixcbiAgICAgICAgdXBkYXRlTWFwLFxuICAgICAgICB1cGRhdGVWaXNEYXRhXG4gICAgICBdXG4gICAgKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkR2VvY29kZXJQYW5lbFxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ2dlb2NvZGVyLXBhbmVsJywgY2xhc3NOYW1lKX1cbiAgICAgICAgd2lkdGg9e3dpZHRofVxuICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgIHVuc3luY2VkVmlld3BvcnRzPXt1bnN5bmNlZFZpZXdwb3J0c31cbiAgICAgICAgc3R5bGU9e3tkaXNwbGF5OiBpc0dlb2NvZGVyRW5hYmxlZCA/ICdibG9jaycgOiAnbm9uZSd9fVxuICAgICAgPlxuICAgICAgICB7aXNWYWxpZChtYXBib3hBcGlBY2Nlc3NUb2tlbikgJiYgKFxuICAgICAgICAgIDxHZW9jb2RlclxuICAgICAgICAgICAgbWFwYm94QXBpQWNjZXNzVG9rZW49e21hcGJveEFwaUFjY2Vzc1Rva2VufVxuICAgICAgICAgICAgb25TZWxlY3RlZD17b25TZWxlY3RlZH1cbiAgICAgICAgICAgIG9uRGVsZXRlTWFya2VyPXtyZW1vdmVHZW9jb2RlckRhdGFzZXR9XG4gICAgICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgICAgICBtYXBTdGF0ZT17bWFwU3RhdGV9XG4gICAgICAgICAgICBsaW1pdFNlYXJjaD17bGltaXRTZWFyY2h9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3R5bGVkR2VvY29kZXJQYW5lbD5cbiAgICApO1xuICB9O1xuXG4gIHJldHVybiBHZW9jb2RlclBhbmVsO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLE1BQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFVBQUEsR0FBQVAsT0FBQTtBQVVBLElBQUFRLFNBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUFxRCxJQUFBUyxlQUFBLEVBbkJyRDtBQUNBO0FBQUEsU0FBQUMs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
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { DragEndEvent, DragStartEvent } from '@dnd-kit/core';
|
|
2
2
|
import { Layer } from '@kepler.gl/layers';
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
import { LayerOrder, LayerOrderHierarchyEntry } from '@kepler.gl/types';
|
|
4
|
+
type DndLayersHook = {
|
|
5
|
+
activeElement: LayerOrderHierarchyEntry | undefined;
|
|
5
6
|
onDragStart: (event: DragStartEvent) => void;
|
|
6
7
|
onDragEnd: (event: DragEndEvent) => void;
|
|
7
8
|
};
|
|
8
|
-
declare const useDndLayers: (layers: Layer[], layerOrder:
|
|
9
|
+
declare const useDndLayers: (layers: Layer[], layerOrder: LayerOrder) => DndLayersHook;
|
|
9
10
|
export default useDndLayers;
|