@kepler.gl/components 3.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bottom-widget.d.ts +46 -0
- package/dist/bottom-widget.js +242 -0
- package/dist/common/action-panel.d.ts +27 -0
- package/dist/common/action-panel.js +152 -0
- package/dist/common/animation-control/animation-control.d.ts +24 -0
- package/dist/common/animation-control/animation-control.js +155 -0
- package/dist/common/animation-control/animation-controller.d.ts +15 -0
- package/dist/common/animation-control/animation-controller.js +324 -0
- package/dist/common/animation-control/animation-speed-slider.d.ts +12 -0
- package/dist/common/animation-control/animation-speed-slider.js +120 -0
- package/dist/common/animation-control/animation-window-control.d.ts +20 -0
- package/dist/common/animation-control/animation-window-control.js +86 -0
- package/dist/common/animation-control/floating-time-display.d.ts +9 -0
- package/dist/common/animation-control/floating-time-display.js +181 -0
- package/dist/common/animation-control/play-control.d.ts +12 -0
- package/dist/common/animation-control/play-control.js +81 -0
- package/dist/common/animation-control/playback-controls.d.ts +55 -0
- package/dist/common/animation-control/playback-controls.js +202 -0
- package/dist/common/animation-control/reset-control.d.ts +9 -0
- package/dist/common/animation-control/reset-control.js +71 -0
- package/dist/common/animation-control/speed-control.d.ts +12 -0
- package/dist/common/animation-control/speed-control.js +88 -0
- package/dist/common/animation-control/window-action-control.d.ts +11 -0
- package/dist/common/animation-control/window-action-control.js +87 -0
- package/dist/common/checkbox.d.ts +35 -0
- package/dist/common/checkbox.js +159 -0
- package/dist/common/color-legend.d.ts +39 -0
- package/dist/common/color-legend.js +257 -0
- package/dist/common/data-table/button.d.ts +8 -0
- package/dist/common/data-table/button.js +66 -0
- package/dist/common/data-table/canvas.d.ts +2 -0
- package/dist/common/data-table/canvas.js +52 -0
- package/dist/common/data-table/cell-size.d.ts +43 -0
- package/dist/common/data-table/cell-size.js +195 -0
- package/dist/common/data-table/grid.d.ts +7 -0
- package/dist/common/data-table/grid.js +119 -0
- package/dist/common/data-table/header-cell.d.ts +25 -0
- package/dist/common/data-table/header-cell.js +152 -0
- package/dist/common/data-table/index.d.ts +108 -0
- package/dist/common/data-table/index.js +457 -0
- package/dist/common/data-table/option-dropdown.d.ts +14 -0
- package/dist/common/data-table/option-dropdown.js +142 -0
- package/dist/common/dataset-label.d.ts +10 -0
- package/dist/common/dataset-label.js +56 -0
- package/dist/common/error-boundary.d.ts +12 -0
- package/dist/common/error-boundary.js +103 -0
- package/dist/common/field-selector.d.ts +43 -0
- package/dist/common/field-selector.js +220 -0
- package/dist/common/field-token.d.ts +46 -0
- package/dist/common/field-token.js +70 -0
- package/dist/common/file-uploader/file-drop.d.ts +53 -0
- package/dist/common/file-uploader/file-drop.js +252 -0
- package/dist/common/file-uploader/file-upload-progress.d.ts +8 -0
- package/dist/common/file-uploader/file-upload-progress.js +123 -0
- package/dist/common/file-uploader/file-upload.d.ts +27 -0
- package/dist/common/file-uploader/file-upload.js +324 -0
- package/dist/common/file-uploader/upload-button.d.ts +7 -0
- package/dist/common/file-uploader/upload-button.js +94 -0
- package/dist/common/histogram-plot.d.ts +3 -0
- package/dist/common/histogram-plot.js +134 -0
- package/dist/common/icon-button.d.ts +12 -0
- package/dist/common/icon-button.js +52 -0
- package/dist/common/icons/add.d.ts +9 -0
- package/dist/common/icons/add.js +78 -0
- package/dist/common/icons/anchor_window.d.ts +11 -0
- package/dist/common/icons/anchor_window.js +55 -0
- package/dist/common/icons/arrow-down-alt.d.ts +9 -0
- package/dist/common/icons/arrow-down-alt.js +78 -0
- package/dist/common/icons/arrow-down-solid.d.ts +9 -0
- package/dist/common/icons/arrow-down-solid.js +78 -0
- package/dist/common/icons/arrow-down.d.ts +9 -0
- package/dist/common/icons/arrow-down.js +78 -0
- package/dist/common/icons/arrow-left.d.ts +9 -0
- package/dist/common/icons/arrow-left.js +81 -0
- package/dist/common/icons/arrow-right.d.ts +9 -0
- package/dist/common/icons/arrow-right.js +78 -0
- package/dist/common/icons/arrow-up-alt.d.ts +9 -0
- package/dist/common/icons/arrow-up-alt.js +79 -0
- package/dist/common/icons/arrow-up-solid.d.ts +9 -0
- package/dist/common/icons/arrow-up-solid.js +78 -0
- package/dist/common/icons/arrow-up.d.ts +9 -0
- package/dist/common/icons/arrow-up.js +78 -0
- package/dist/common/icons/base.d.ts +29 -0
- package/dist/common/icons/base.js +116 -0
- package/dist/common/icons/bug.d.ts +9 -0
- package/dist/common/icons/bug.js +80 -0
- package/dist/common/icons/cancel.d.ts +9 -0
- package/dist/common/icons/cancel.js +78 -0
- package/dist/common/icons/checkmark.d.ts +10 -0
- package/dist/common/icons/checkmark.js +85 -0
- package/dist/common/icons/clipboard.d.ts +9 -0
- package/dist/common/icons/clipboard.js +79 -0
- package/dist/common/icons/clock.d.ts +9 -0
- package/dist/common/icons/clock.js +80 -0
- package/dist/common/icons/close.d.ts +9 -0
- package/dist/common/icons/close.js +83 -0
- package/dist/common/icons/code-alt.d.ts +9 -0
- package/dist/common/icons/code-alt.js +82 -0
- package/dist/common/icons/copy.d.ts +9 -0
- package/dist/common/icons/copy.js +84 -0
- package/dist/common/icons/crosshairs.d.ts +9 -0
- package/dist/common/icons/crosshairs.js +82 -0
- package/dist/common/icons/cube-3d.d.ts +9 -0
- package/dist/common/icons/cube-3d.js +82 -0
- package/dist/common/icons/cursor-click.d.ts +9 -0
- package/dist/common/icons/cursor-click.js +82 -0
- package/dist/common/icons/data-table.d.ts +10 -0
- package/dist/common/icons/data-table.js +79 -0
- package/dist/common/icons/db.d.ts +10 -0
- package/dist/common/icons/db.js +79 -0
- package/dist/common/icons/delete.d.ts +9 -0
- package/dist/common/icons/delete.js +80 -0
- package/dist/common/icons/docs.d.ts +9 -0
- package/dist/common/icons/docs.js +94 -0
- package/dist/common/icons/drag-n-drop.d.ts +9 -0
- package/dist/common/icons/drag-n-drop.js +80 -0
- package/dist/common/icons/draw-polygon.d.ts +10 -0
- package/dist/common/icons/draw-polygon.js +98 -0
- package/dist/common/icons/email.d.ts +9 -0
- package/dist/common/icons/email.js +82 -0
- package/dist/common/icons/expand.d.ts +9 -0
- package/dist/common/icons/expand.js +80 -0
- package/dist/common/icons/eye-seen.d.ts +9 -0
- package/dist/common/icons/eye-seen.js +80 -0
- package/dist/common/icons/eye-unseen.d.ts +9 -0
- package/dist/common/icons/eye-unseen.js +80 -0
- package/dist/common/icons/file-type.d.ts +8 -0
- package/dist/common/icons/file-type.js +65 -0
- package/dist/common/icons/file.d.ts +9 -0
- package/dist/common/icons/file.js +78 -0
- package/dist/common/icons/files.d.ts +9 -0
- package/dist/common/icons/files.js +80 -0
- package/dist/common/icons/filter-funnel.d.ts +9 -0
- package/dist/common/icons/filter-funnel.js +78 -0
- package/dist/common/icons/free-window.d.ts +11 -0
- package/dist/common/icons/free-window.js +55 -0
- package/dist/common/icons/gear.d.ts +9 -0
- package/dist/common/icons/gear.js +80 -0
- package/dist/common/icons/hash.d.ts +9 -0
- package/dist/common/icons/hash.js +78 -0
- package/dist/common/icons/histogram.d.ts +9 -0
- package/dist/common/icons/histogram.js +79 -0
- package/dist/common/icons/index.d.ts +76 -0
- package/dist/common/icons/index.js +624 -0
- package/dist/common/icons/info.d.ts +12 -0
- package/dist/common/icons/info.js +92 -0
- package/dist/common/icons/layers.d.ts +9 -0
- package/dist/common/icons/layers.js +78 -0
- package/dist/common/icons/left-arrow.d.ts +9 -0
- package/dist/common/icons/left-arrow.js +82 -0
- package/dist/common/icons/legend.d.ts +9 -0
- package/dist/common/icons/legend.js +78 -0
- package/dist/common/icons/line-chart.d.ts +9 -0
- package/dist/common/icons/line-chart.js +78 -0
- package/dist/common/icons/login.d.ts +9 -0
- package/dist/common/icons/login.js +81 -0
- package/dist/common/icons/logout.d.ts +9 -0
- package/dist/common/icons/logout.js +80 -0
- package/dist/common/icons/map-icon.d.ts +11 -0
- package/dist/common/icons/map-icon.js +86 -0
- package/dist/common/icons/map.d.ts +11 -0
- package/dist/common/icons/map.js +86 -0
- package/dist/common/icons/messages.d.ts +9 -0
- package/dist/common/icons/messages.js +78 -0
- package/dist/common/icons/minus.d.ts +9 -0
- package/dist/common/icons/minus.js +78 -0
- package/dist/common/icons/order-by-dataset.d.ts +12 -0
- package/dist/common/icons/order-by-dataset.js +55 -0
- package/dist/common/icons/order-by-list.d.ts +12 -0
- package/dist/common/icons/order-by-list.js +47 -0
- package/dist/common/icons/pause.d.ts +9 -0
- package/dist/common/icons/pause.js +78 -0
- package/dist/common/icons/picture.d.ts +9 -0
- package/dist/common/icons/picture.js +80 -0
- package/dist/common/icons/pin.d.ts +9 -0
- package/dist/common/icons/pin.js +86 -0
- package/dist/common/icons/play.d.ts +9 -0
- package/dist/common/icons/play.js +78 -0
- package/dist/common/icons/polygon.d.ts +10 -0
- package/dist/common/icons/polygon.js +100 -0
- package/dist/common/icons/rectangle.d.ts +10 -0
- package/dist/common/icons/rectangle.js +101 -0
- package/dist/common/icons/reduce.d.ts +9 -0
- package/dist/common/icons/reduce.js +81 -0
- package/dist/common/icons/reset.d.ts +9 -0
- package/dist/common/icons/reset.js +78 -0
- package/dist/common/icons/rocket.d.ts +9 -0
- package/dist/common/icons/rocket.js +78 -0
- package/dist/common/icons/save.d.ts +9 -0
- package/dist/common/icons/save.js +80 -0
- package/dist/common/icons/save2.d.ts +9 -0
- package/dist/common/icons/save2.js +84 -0
- package/dist/common/icons/search.d.ts +9 -0
- package/dist/common/icons/search.js +80 -0
- package/dist/common/icons/settings.d.ts +9 -0
- package/dist/common/icons/settings.js +80 -0
- package/dist/common/icons/share.d.ts +9 -0
- package/dist/common/icons/share.js +78 -0
- package/dist/common/icons/split.d.ts +9 -0
- package/dist/common/icons/split.js +106 -0
- package/dist/common/icons/square-select.d.ts +9 -0
- package/dist/common/icons/square-select.js +80 -0
- package/dist/common/icons/trash.d.ts +9 -0
- package/dist/common/icons/trash.js +80 -0
- package/dist/common/icons/vert-dots.d.ts +9 -0
- package/dist/common/icons/vert-dots.js +116 -0
- package/dist/common/icons/vert-three-dots.d.ts +9 -0
- package/dist/common/icons/vert-three-dots.js +91 -0
- package/dist/common/icons/warning-sign.d.ts +15 -0
- package/dist/common/icons/warning-sign.js +100 -0
- package/dist/common/icons/warning.d.ts +10 -0
- package/dist/common/icons/warning.js +93 -0
- package/dist/common/image-preview.d.ts +15 -0
- package/dist/common/image-preview.js +91 -0
- package/dist/common/index.d.ts +3 -0
- package/dist/common/index.js +287 -0
- package/dist/common/info-helper.d.ts +10 -0
- package/dist/common/info-helper.js +95 -0
- package/dist/common/item-selector/accessor.d.ts +7 -0
- package/dist/common/item-selector/accessor.js +56 -0
- package/dist/common/item-selector/chickleted-input.d.ts +21 -0
- package/dist/common/item-selector/chickleted-input.js +116 -0
- package/dist/common/item-selector/dropdown-list.d.ts +50 -0
- package/dist/common/item-selector/dropdown-list.js +191 -0
- package/dist/common/item-selector/item-selector.d.ts +45 -0
- package/dist/common/item-selector/item-selector.js +359 -0
- package/dist/common/item-selector/typeahead.d.ts +113 -0
- package/dist/common/item-selector/typeahead.js +507 -0
- package/dist/common/line-chart.d.ts +34 -0
- package/dist/common/line-chart.js +146 -0
- package/dist/common/loading-spinner.d.ts +9 -0
- package/dist/common/loading-spinner.js +76 -0
- package/dist/common/logo.d.ts +8 -0
- package/dist/common/logo.js +102 -0
- package/dist/common/map-layer-selector.d.ts +13 -0
- package/dist/common/map-layer-selector.js +69 -0
- package/dist/common/modal.d.ts +51 -0
- package/dist/common/modal.js +211 -0
- package/dist/common/portaled.d.ts +54 -0
- package/dist/common/portaled.js +360 -0
- package/dist/common/progress-bar.d.ts +12 -0
- package/dist/common/progress-bar.js +74 -0
- package/dist/common/range-brush.d.ts +19 -0
- package/dist/common/range-brush.js +346 -0
- package/dist/common/range-plot.d.ts +35 -0
- package/dist/common/range-plot.js +156 -0
- package/dist/common/range-slider.d.ts +30 -0
- package/dist/common/range-slider.js +343 -0
- package/dist/common/slider/mouse-event.d.ts +27 -0
- package/dist/common/slider/mouse-event.js +145 -0
- package/dist/common/slider/slider-bar-handle.d.ts +29 -0
- package/dist/common/slider/slider-bar-handle.js +135 -0
- package/dist/common/slider/slider-handle.d.ts +33 -0
- package/dist/common/slider/slider-handle.js +182 -0
- package/dist/common/slider/slider.d.ts +70 -0
- package/dist/common/slider/slider.js +264 -0
- package/dist/common/styled-components.d.ts +123 -0
- package/dist/common/styled-components.js +438 -0
- package/dist/common/switch.d.ts +15 -0
- package/dist/common/switch.js +50 -0
- package/dist/common/time-range-slider-time-title.d.ts +9 -0
- package/dist/common/time-range-slider-time-title.js +94 -0
- package/dist/common/time-range-slider.d.ts +32 -0
- package/dist/common/time-range-slider.js +132 -0
- package/dist/common/time-slider-marker.d.ts +21 -0
- package/dist/common/time-slider-marker.js +161 -0
- package/dist/common/tippy-tooltip.d.ts +4 -0
- package/dist/common/tippy-tooltip.js +142 -0
- package/dist/common/toolbar-item.d.ts +14 -0
- package/dist/common/toolbar-item.js +91 -0
- package/dist/common/toolbar.d.ts +5 -0
- package/dist/common/toolbar.js +53 -0
- package/dist/common/vertical-toolbar.d.ts +3 -0
- package/dist/common/vertical-toolbar.js +42 -0
- package/dist/connect/keplergl-connect.d.ts +5 -0
- package/dist/connect/keplergl-connect.js +67 -0
- package/dist/connect/with-local-selector.d.ts +6 -0
- package/dist/connect/with-local-selector.js +130 -0
- package/dist/container.d.ts +39 -0
- package/dist/container.js +242 -0
- package/dist/context.d.ts +16 -0
- package/dist/context.js +53 -0
- package/dist/editor/constants.d.ts +17 -0
- package/dist/editor/constants.js +47 -0
- package/dist/editor/editor.d.ts +30 -0
- package/dist/editor/editor.js +279 -0
- package/dist/editor/feature-action-panel.d.ts +30 -0
- package/dist/editor/feature-action-panel.js +169 -0
- package/dist/editor/feature-styles.d.ts +37 -0
- package/dist/editor/feature-styles.js +92 -0
- package/dist/editor/handle-style.d.ts +42 -0
- package/dist/editor/handle-style.js +100 -0
- package/dist/filters/components.d.ts +3 -0
- package/dist/filters/components.js +40 -0
- package/dist/filters/filter-panels/filter-panel-with-field-select.d.ts +10 -0
- package/dist/filters/filter-panels/filter-panel-with-field-select.js +106 -0
- package/dist/filters/filter-panels/multi-select-filter-panel.d.ts +9 -0
- package/dist/filters/filter-panels/multi-select-filter-panel.js +72 -0
- package/dist/filters/filter-panels/new-filter-panel.d.ts +12 -0
- package/dist/filters/filter-panels/new-filter-panel.js +94 -0
- package/dist/filters/filter-panels/polygon-filter-panel.d.ts +9 -0
- package/dist/filters/filter-panels/polygon-filter-panel.js +96 -0
- package/dist/filters/filter-panels/range-filter-panel.d.ts +9 -0
- package/dist/filters/filter-panels/range-filter-panel.js +72 -0
- package/dist/filters/filter-panels/single-select-filter-panel.d.ts +9 -0
- package/dist/filters/filter-panels/single-select-filter-panel.js +72 -0
- package/dist/filters/filter-panels/time-range-filter-panel.d.ts +8 -0
- package/dist/filters/filter-panels/time-range-filter-panel.js +87 -0
- package/dist/filters/filter-panels/types.d.ts +35 -0
- package/dist/filters/filter-panels/types.js +26 -0
- package/dist/filters/index.d.ts +5 -0
- package/dist/filters/index.js +68 -0
- package/dist/filters/multi-select-filter.d.ts +3 -0
- package/dist/filters/multi-select-filter.js +53 -0
- package/dist/filters/polygon-filter.d.ts +4 -0
- package/dist/filters/polygon-filter.js +94 -0
- package/dist/filters/range-filter.d.ts +8 -0
- package/dist/filters/range-filter.js +52 -0
- package/dist/filters/single-select-filter.d.ts +3 -0
- package/dist/filters/single-select-filter.js +62 -0
- package/dist/filters/time-range-filter.d.ts +28 -0
- package/dist/filters/time-range-filter.js +84 -0
- package/dist/filters/time-widget.d.ts +14 -0
- package/dist/filters/time-widget.js +192 -0
- package/dist/filters/types.d.ts +54 -0
- package/dist/filters/types.js +26 -0
- package/dist/geocoder/geocoder.d.ts +33 -0
- package/dist/geocoder/geocoder.js +336 -0
- package/dist/geocoder-panel.d.ts +25 -0
- package/dist/geocoder-panel.js +241 -0
- package/dist/hooks/useFeatureFlags.d.ts +2 -0
- package/dist/hooks/useFeatureFlags.js +38 -0
- package/dist/index.d.ts +176 -0
- package/dist/index.js +1935 -0
- package/dist/injector.d.ts +29 -0
- package/dist/injector.js +198 -0
- package/dist/kepler-gl.d.ts +281 -0
- package/dist/kepler-gl.js +568 -0
- package/dist/map/coordinate-info.d.ts +7 -0
- package/dist/map/coordinate-info.js +67 -0
- package/dist/map/layer-hover-info.d.ts +13 -0
- package/dist/map/layer-hover-info.js +228 -0
- package/dist/map/layer-selector-panel.d.ts +21 -0
- package/dist/map/layer-selector-panel.js +114 -0
- package/dist/map/lazy-tippy.d.ts +7 -0
- package/dist/map/lazy-tippy.js +94 -0
- package/dist/map/locale-panel.d.ts +16 -0
- package/dist/map/locale-panel.js +107 -0
- package/dist/map/map-control-panel.d.ts +13 -0
- package/dist/map/map-control-panel.js +116 -0
- package/dist/map/map-control-toolbar.d.ts +2 -0
- package/dist/map/map-control-toolbar.js +45 -0
- package/dist/map/map-control-tooltip.d.ts +8 -0
- package/dist/map/map-control-tooltip.js +57 -0
- package/dist/map/map-control.d.ts +45 -0
- package/dist/map/map-control.js +101 -0
- package/dist/map/map-draw-panel.d.ts +20 -0
- package/dist/map/map-draw-panel.js +137 -0
- package/dist/map/map-legend-panel.d.ts +24 -0
- package/dist/map/map-legend-panel.js +181 -0
- package/dist/map/map-legend.d.ts +55 -0
- package/dist/map/map-legend.js +274 -0
- package/dist/map/map-popover.d.ts +36 -0
- package/dist/map/map-popover.js +217 -0
- package/dist/map/split-map-button.d.ts +20 -0
- package/dist/map/split-map-button.js +92 -0
- package/dist/map/toggle-3d-button.d.ts +17 -0
- package/dist/map/toggle-3d-button.js +81 -0
- package/dist/map-container.d.ts +48 -0
- package/dist/map-container.js +653 -0
- package/dist/maps-layout.d.ts +9 -0
- package/dist/maps-layout.js +80 -0
- package/dist/modal-container.d.ts +63 -0
- package/dist/modal-container.js +530 -0
- package/dist/modals/add-map-style-modal.d.ts +18 -0
- package/dist/modals/add-map-style-modal.js +300 -0
- package/dist/modals/cloud-tile.d.ts +15 -0
- package/dist/modals/cloud-tile.js +144 -0
- package/dist/modals/data-table-modal.d.ts +28 -0
- package/dist/modals/data-table-modal.js +285 -0
- package/dist/modals/delete-data-modal.d.ts +10 -0
- package/dist/modals/delete-data-modal.js +74 -0
- package/dist/modals/error-display.d.ts +6 -0
- package/dist/modals/error-display.js +50 -0
- package/dist/modals/export-data-modal.d.ts +25 -0
- package/dist/modals/export-data-modal.js +232 -0
- package/dist/modals/export-image-modal.d.ts +18 -0
- package/dist/modals/export-image-modal.js +156 -0
- package/dist/modals/export-map-modal/components.d.ts +8 -0
- package/dist/modals/export-map-modal/components.js +71 -0
- package/dist/modals/export-map-modal/export-html-map.d.ts +12 -0
- package/dist/modals/export-map-modal/export-html-map.js +158 -0
- package/dist/modals/export-map-modal/export-json-map.d.ts +9 -0
- package/dist/modals/export-map-modal/export-json-map.js +120 -0
- package/dist/modals/export-map-modal/export-map-modal.d.ts +27 -0
- package/dist/modals/export-map-modal/export-map-modal.js +119 -0
- package/dist/modals/image-modal-container.d.ts +17 -0
- package/dist/modals/image-modal-container.js +86 -0
- package/dist/modals/load-data-modal.d.ts +41 -0
- package/dist/modals/load-data-modal.js +118 -0
- package/dist/modals/load-storage-map.d.ts +26 -0
- package/dist/modals/load-storage-map.js +308 -0
- package/dist/modals/loading-dialog.d.ts +7 -0
- package/dist/modals/loading-dialog.js +68 -0
- package/dist/modals/modal-dialog.d.ts +2 -0
- package/dist/modals/modal-dialog.js +36 -0
- package/dist/modals/modal-tabs.d.ts +27 -0
- package/dist/modals/modal-tabs.js +119 -0
- package/dist/modals/overwrite-map-modal.d.ts +16 -0
- package/dist/modals/overwrite-map-modal.js +100 -0
- package/dist/modals/provider-modal-container.d.ts +22 -0
- package/dist/modals/provider-modal-container.js +101 -0
- package/dist/modals/save-map-modal.d.ts +30 -0
- package/dist/modals/save-map-modal.js +226 -0
- package/dist/modals/share-map-modal.d.ts +30 -0
- package/dist/modals/share-map-modal.js +219 -0
- package/dist/modals/status-panel.d.ts +13 -0
- package/dist/modals/status-panel.js +103 -0
- package/dist/modals/storage-map-viewer.d.ts +21 -0
- package/dist/modals/storage-map-viewer.js +147 -0
- package/dist/notification-panel/notification-item.d.ts +70 -0
- package/dist/notification-panel/notification-item.js +173 -0
- package/dist/notification-panel.d.ts +13 -0
- package/dist/notification-panel.js +106 -0
- package/dist/plot-container.d.ts +24 -0
- package/dist/plot-container.js +276 -0
- package/dist/side-panel/cloud-storage-dropdown.d.ts +6 -0
- package/dist/side-panel/cloud-storage-dropdown.js +62 -0
- package/dist/side-panel/common/dataset-info.d.ts +3 -0
- package/dist/side-panel/common/dataset-info.js +63 -0
- package/dist/side-panel/common/dataset-tag.d.ts +3 -0
- package/dist/side-panel/common/dataset-tag.js +89 -0
- package/dist/side-panel/common/dataset-title.d.ts +8 -0
- package/dist/side-panel/common/dataset-title.js +225 -0
- package/dist/side-panel/common/source-data-catalog.d.ts +9 -0
- package/dist/side-panel/common/source-data-catalog.js +82 -0
- package/dist/side-panel/common/source-data-selector.d.ts +8 -0
- package/dist/side-panel/common/source-data-selector.js +96 -0
- package/dist/side-panel/common/types.d.ts +63 -0
- package/dist/side-panel/common/types.js +26 -0
- package/dist/side-panel/custom-panel.d.ts +9 -0
- package/dist/side-panel/custom-panel.js +59 -0
- package/dist/side-panel/filter-manager.d.ts +20 -0
- package/dist/side-panel/filter-manager.js +132 -0
- package/dist/side-panel/filter-panel/filter-panel-header.d.ts +21 -0
- package/dist/side-panel/filter-panel/filter-panel-header.js +87 -0
- package/dist/side-panel/filter-panel/filter-panel.d.ts +23 -0
- package/dist/side-panel/filter-panel/filter-panel.js +151 -0
- package/dist/side-panel/interaction-manager.d.ts +15 -0
- package/dist/side-panel/interaction-manager.js +57 -0
- package/dist/side-panel/interaction-panel/brush-config.d.ts +15 -0
- package/dist/side-panel/interaction-panel/brush-config.js +74 -0
- package/dist/side-panel/interaction-panel/interaction-panel.d.ts +18 -0
- package/dist/side-panel/interaction-panel/interaction-panel.js +156 -0
- package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.d.ts +28 -0
- package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +264 -0
- package/dist/side-panel/interaction-panel/tooltip-config.d.ts +38 -0
- package/dist/side-panel/interaction-panel/tooltip-config.js +185 -0
- package/dist/side-panel/layer-manager.d.ts +39 -0
- package/dist/side-panel/layer-manager.js +225 -0
- package/dist/side-panel/layer-panel/add-layer-button.d.ts +10 -0
- package/dist/side-panel/layer-panel/add-layer-button.js +176 -0
- package/dist/side-panel/layer-panel/color-palette.d.ts +11 -0
- package/dist/side-panel/layer-panel/color-palette.js +91 -0
- package/dist/side-panel/layer-panel/color-range-selector.d.ts +47 -0
- package/dist/side-panel/layer-panel/color-range-selector.js +290 -0
- package/dist/side-panel/layer-panel/color-selector.d.ts +42 -0
- package/dist/side-panel/layer-panel/color-selector.js +225 -0
- package/dist/side-panel/layer-panel/column-selector.d.ts +22 -0
- package/dist/side-panel/layer-panel/column-selector.js +85 -0
- package/dist/side-panel/layer-panel/custom-palette.d.ts +38 -0
- package/dist/side-panel/layer-panel/custom-palette.js +312 -0
- package/dist/side-panel/layer-panel/custom-picker.d.ts +51 -0
- package/dist/side-panel/layer-panel/custom-picker.js +136 -0
- package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +22 -0
- package/dist/side-panel/layer-panel/dataset-layer-group.js +86 -0
- package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +23 -0
- package/dist/side-panel/layer-panel/dataset-layer-section.js +89 -0
- package/dist/side-panel/layer-panel/dataset-section.d.ts +24 -0
- package/dist/side-panel/layer-panel/dataset-section.js +112 -0
- package/dist/side-panel/layer-panel/dimension-scale-selector.d.ts +10 -0
- package/dist/side-panel/layer-panel/dimension-scale-selector.js +60 -0
- package/dist/side-panel/layer-panel/how-to-button.d.ts +6 -0
- package/dist/side-panel/layer-panel/how-to-button.js +58 -0
- package/dist/side-panel/layer-panel/layer-column-config.d.ts +19 -0
- package/dist/side-panel/layer-panel/layer-column-config.js +107 -0
- package/dist/side-panel/layer-panel/layer-config-group.d.ts +35 -0
- package/dist/side-panel/layer-panel/layer-config-group.js +188 -0
- package/dist/side-panel/layer-panel/layer-configurator.d.ts +100 -0
- package/dist/side-panel/layer-panel/layer-configurator.js +792 -0
- package/dist/side-panel/layer-panel/layer-list.d.ts +19 -0
- package/dist/side-panel/layer-panel/layer-list.js +188 -0
- package/dist/side-panel/layer-panel/layer-panel-header.d.ts +63 -0
- package/dist/side-panel/layer-panel/layer-panel-header.js +291 -0
- package/dist/side-panel/layer-panel/layer-panel.d.ts +36 -0
- package/dist/side-panel/layer-panel/layer-panel.js +201 -0
- package/dist/side-panel/layer-panel/layer-type-dropdown-list.d.ts +22 -0
- package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +109 -0
- package/dist/side-panel/layer-panel/layer-type-list-item.d.ts +13 -0
- package/dist/side-panel/layer-panel/layer-type-list-item.js +89 -0
- package/dist/side-panel/layer-panel/layer-type-selector.d.ts +21 -0
- package/dist/side-panel/layer-panel/layer-type-selector.js +91 -0
- package/dist/side-panel/layer-panel/panel-view-list-toggle.d.ts +36 -0
- package/dist/side-panel/layer-panel/panel-view-list-toggle.js +143 -0
- package/dist/side-panel/layer-panel/single-color-palette.d.ts +9 -0
- package/dist/side-panel/layer-panel/single-color-palette.js +81 -0
- package/dist/side-panel/layer-panel/text-label-panel.d.ts +15 -0
- package/dist/side-panel/layer-panel/text-label-panel.js +171 -0
- package/dist/side-panel/layer-panel/vis-config-by-field-selector.d.ts +29 -0
- package/dist/side-panel/layer-panel/vis-config-by-field-selector.js +137 -0
- package/dist/side-panel/layer-panel/vis-config-slider.d.ts +20 -0
- package/dist/side-panel/layer-panel/vis-config-slider.js +210 -0
- package/dist/side-panel/layer-panel/vis-config-switch.d.ts +16 -0
- package/dist/side-panel/layer-panel/vis-config-switch.js +91 -0
- package/dist/side-panel/map-manager.d.ts +20 -0
- package/dist/side-panel/map-manager.js +168 -0
- package/dist/side-panel/map-style-panel/map-layer-selector.d.ts +19 -0
- package/dist/side-panel/map-style-panel/map-layer-selector.js +128 -0
- package/dist/side-panel/map-style-panel/map-style-selector.d.ts +16 -0
- package/dist/side-panel/map-style-panel/map-style-selector.js +98 -0
- package/dist/side-panel/panel-dropdown.d.ts +17 -0
- package/dist/side-panel/panel-dropdown.js +99 -0
- package/dist/side-panel/panel-header-action.d.ts +20 -0
- package/dist/side-panel/panel-header-action.js +100 -0
- package/dist/side-panel/panel-header.d.ts +79 -0
- package/dist/side-panel/panel-header.js +360 -0
- package/dist/side-panel/panel-tab.d.ts +20 -0
- package/dist/side-panel/panel-tab.js +88 -0
- package/dist/side-panel/panel-title.d.ts +4 -0
- package/dist/side-panel/panel-title.js +54 -0
- package/dist/side-panel/panel-toggle.d.ts +13 -0
- package/dist/side-panel/panel-toggle.js +80 -0
- package/dist/side-panel/side-bar.d.ts +79 -0
- package/dist/side-panel/side-bar.js +177 -0
- package/dist/side-panel.d.ts +134 -0
- package/dist/side-panel.js +274 -0
- package/dist/types.d.ts +42 -0
- package/dist/types.js +26 -0
- package/package.json +136 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included in
|
|
11
|
+
// all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
// THE SOFTWARE.
|
|
20
|
+
|
|
21
|
+
"use strict";
|
|
22
|
+
|
|
23
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
24
|
+
|
|
25
|
+
Object.defineProperty(exports, "__esModule", {
|
|
26
|
+
value: true
|
|
27
|
+
});
|
|
28
|
+
exports["default"] = void 0;
|
|
29
|
+
|
|
30
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
31
|
+
|
|
32
|
+
var _react = _interopRequireDefault(require("react"));
|
|
33
|
+
|
|
34
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
35
|
+
|
|
36
|
+
var _icons = require("./icons");
|
|
37
|
+
|
|
38
|
+
var _utils = require("@kepler.gl/utils");
|
|
39
|
+
|
|
40
|
+
var _templateObject;
|
|
41
|
+
|
|
42
|
+
var TimeValueWrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n align-items: center;\n font-size: ", ";\n justify-content: ", ";\n\n .horizontal-bar {\n padding: 0 12px;\n color: ", ";\n }\n\n .time-value {\n display: flex;\n flex-direction: ", ";\n align-items: flex-start;\n max-width: ", ";\n span {\n color: ", ";\n }\n }\n\n .time-value:last-child {\n align-items: flex-end;\n text-align: right;\n }\n"])), function (props) {
|
|
43
|
+
return props.theme.timeTitleFontSize;
|
|
44
|
+
}, function (props) {
|
|
45
|
+
return props.isEnlarged ? 'center' : 'space-between';
|
|
46
|
+
}, function (props) {
|
|
47
|
+
return props.theme.textColor;
|
|
48
|
+
}, function (props) {
|
|
49
|
+
return props.isEnlarged ? 'row' : 'column';
|
|
50
|
+
}, function (props) {
|
|
51
|
+
return !props.isEnlarged ? '40%' : 'auto';
|
|
52
|
+
}, function (props) {
|
|
53
|
+
return props.theme.textColor;
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
var TimeValue = function TimeValue(_ref) {
|
|
57
|
+
var value = _ref.value;
|
|
58
|
+
return (
|
|
59
|
+
/*#__PURE__*/
|
|
60
|
+
// render two lines if not enlarged
|
|
61
|
+
_react["default"].createElement("div", {
|
|
62
|
+
className: "time-value"
|
|
63
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, value))
|
|
64
|
+
);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
function TimeRangeSliderTimeTitleFactory() {
|
|
68
|
+
var TimeTitle = function TimeTitle(_ref2) {
|
|
69
|
+
var value = _ref2.value,
|
|
70
|
+
isEnlarged = _ref2.isEnlarged,
|
|
71
|
+
timezone = _ref2.timezone,
|
|
72
|
+
timeFormat = _ref2.timeFormat;
|
|
73
|
+
return /*#__PURE__*/_react["default"].createElement(TimeValueWrapper, {
|
|
74
|
+
isEnlarged: isEnlarged,
|
|
75
|
+
className: "time-range-slider__time-title"
|
|
76
|
+
}, /*#__PURE__*/_react["default"].createElement(TimeValue, {
|
|
77
|
+
key: 0,
|
|
78
|
+
value: (0, _utils.datetimeFormatter)(timezone)(timeFormat)(value[0])
|
|
79
|
+
}), isEnlarged ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
80
|
+
className: "horizontal-bar"
|
|
81
|
+
}, /*#__PURE__*/_react["default"].createElement(_icons.Minus, {
|
|
82
|
+
height: "12px"
|
|
83
|
+
})) : null, /*#__PURE__*/_react["default"].createElement(TimeValue, {
|
|
84
|
+
key: 1,
|
|
85
|
+
value: (0, _utils.datetimeFormatter)(timezone)(timeFormat)(value[1])
|
|
86
|
+
}));
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
return TimeTitle;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
var _default = TimeRangeSliderTimeTitleFactory;
|
|
93
|
+
exports["default"] = _default;
|
|
94
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vdGltZS1yYW5nZS1zbGlkZXItdGltZS10aXRsZS50c3giXSwibmFtZXMiOlsiVGltZVZhbHVlV3JhcHBlciIsInN0eWxlZCIsImRpdiIsInByb3BzIiwidGhlbWUiLCJ0aW1lVGl0bGVGb250U2l6ZSIsImlzRW5sYXJnZWQiLCJ0ZXh0Q29sb3IiLCJUaW1lVmFsdWUiLCJ2YWx1ZSIsIlRpbWVSYW5nZVNsaWRlclRpbWVUaXRsZUZhY3RvcnkiLCJUaW1lVGl0bGUiLCJ0aW1lem9uZSIsInRpbWVGb3JtYXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBTUEsSUFBTUEsZ0JBQWdCLEdBQUdDLDZCQUFPQyxHQUFWLDhlQUdQLFVBQUFDLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMsaUJBQWhCO0FBQUEsQ0FIRSxFQUlELFVBQUFGLEtBQUs7QUFBQSxTQUFLQSxLQUFLLENBQUNHLFVBQU4sR0FBbUIsUUFBbkIsR0FBOEIsZUFBbkM7QUFBQSxDQUpKLEVBUVQsVUFBQUgsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZRyxTQUFoQjtBQUFBLENBUkksRUFhQSxVQUFBSixLQUFLO0FBQUEsU0FBS0EsS0FBSyxDQUFDRyxVQUFOLEdBQW1CLEtBQW5CLEdBQTJCLFFBQWhDO0FBQUEsQ0FiTCxFQWVMLFVBQUFILEtBQUs7QUFBQSxTQUFLLENBQUNBLEtBQUssQ0FBQ0csVUFBUCxHQUFvQixLQUFwQixHQUE0QixNQUFqQztBQUFBLENBZkEsRUFpQlAsVUFBQUgsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZRyxTQUFoQjtBQUFBLENBakJFLENBQXRCOztBQTJCQSxJQUFNQyxTQUFTLEdBQUcsU0FBWkEsU0FBWTtBQUFBLE1BQUVDLEtBQUYsUUFBRUEsS0FBRjtBQUFBO0FBQUE7QUFDaEI7QUFDQTtBQUFLLE1BQUEsU0FBUyxFQUFDO0FBQWYsb0JBQ0UsOENBQU9BLEtBQVAsQ0FERjtBQUZnQjtBQUFBLENBQWxCOztBQWNBLFNBQVNDLCtCQUFULEdBQTJDO0FBQ3pDLE1BQU1DLFNBQVMsR0FBRyxTQUFaQSxTQUFZO0FBQUEsUUFBRUYsS0FBRixTQUFFQSxLQUFGO0FBQUEsUUFBU0gsVUFBVCxTQUFTQSxVQUFUO0FBQUEsUUFBcUJNLFFBQXJCLFNBQXFCQSxRQUFyQjtBQUFBLFFBQStCQyxVQUEvQixTQUErQkEsVUFBL0I7QUFBQSx3QkFDaEIsZ0NBQUMsZ0JBQUQ7QUFBa0IsTUFBQSxVQUFVLEVBQUVQLFVBQTlCO0FBQTBDLE1BQUEsU0FBUyxFQUFDO0FBQXBELG9CQUNFLGdDQUFDLFNBQUQ7QUFBVyxNQUFBLEdBQUcsRUFBRSxDQUFoQjtBQUFtQixNQUFBLEtBQUssRUFBRSw4QkFBa0JNLFFBQWxCLEVBQTRCQyxVQUE1QixFQUF3Q0osS0FBSyxDQUFDLENBQUQsQ0FBN0M7QUFBMUIsTUFERixFQUVHSCxVQUFVLGdCQUNUO0FBQUssTUFBQSxTQUFTLEVBQUM7QUFBZixvQkFDRSxnQ0FBQyxZQUFEO0FBQU8sTUFBQSxNQUFNLEVBQUM7QUFBZCxNQURGLENBRFMsR0FJUCxJQU5OLGVBT0UsZ0NBQUMsU0FBRDtBQUFXLE1BQUEsR0FBRyxFQUFFLENBQWhCO0FBQW1CLE1BQUEsS0FBSyxFQUFFLDhCQUFrQk0sUUFBbEIsRUFBNEJDLFVBQTVCLEVBQXdDSixLQUFLLENBQUMsQ0FBRCxDQUE3QztBQUExQixNQVBGLENBRGdCO0FBQUEsR0FBbEI7O0FBWUEsU0FBT0UsU0FBUDtBQUNEOztlQUVjRCwrQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7TWludXN9IGZyb20gJy4vaWNvbnMnO1xuaW1wb3J0IHtkYXRldGltZUZvcm1hdHRlcn0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5cbmludGVyZmFjZSBUaW1lVmFsdWVXcmFwcGVyUHJvcHMge1xuICBpc0VubGFyZ2VkPzogYm9vbGVhbjtcbn1cblxuY29uc3QgVGltZVZhbHVlV3JhcHBlciA9IHN0eWxlZC5kaXY8VGltZVZhbHVlV3JhcHBlclByb3BzPmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRpbWVUaXRsZUZvbnRTaXplfTtcbiAganVzdGlmeS1jb250ZW50OiAke3Byb3BzID0+IChwcm9wcy5pc0VubGFyZ2VkID8gJ2NlbnRlcicgOiAnc3BhY2UtYmV0d2VlbicpfTtcblxuICAuaG9yaXpvbnRhbC1iYXIge1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICB9XG5cbiAgLnRpbWUtdmFsdWUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246ICR7cHJvcHMgPT4gKHByb3BzLmlzRW5sYXJnZWQgPyAncm93JyA6ICdjb2x1bW4nKX07XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgbWF4LXdpZHRoOiAke3Byb3BzID0+ICghcHJvcHMuaXNFbmxhcmdlZCA/ICc0MCUnIDogJ2F1dG8nKX07XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICAgIH1cbiAgfVxuXG4gIC50aW1lLXZhbHVlOmxhc3QtY2hpbGQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuYDtcblxuY29uc3QgVGltZVZhbHVlID0gKHt2YWx1ZX0pID0+IChcbiAgLy8gcmVuZGVyIHR3byBsaW5lcyBpZiBub3QgZW5sYXJnZWRcbiAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lLXZhbHVlXCI+XG4gICAgPHNwYW4+e3ZhbHVlfTwvc3Bhbj5cbiAgPC9kaXY+XG4pO1xuXG5pbnRlcmZhY2UgVGltZVRpdGxlUHJvcHMge1xuICB2YWx1ZTogbnVtYmVyW107XG4gIGlzRW5sYXJnZWQ/OiBib29sZWFuO1xuICB0aW1lem9uZT86IHN0cmluZyB8IG51bGw7XG4gIHRpbWVGb3JtYXQ6IHN0cmluZztcbn1cblxuZnVuY3Rpb24gVGltZVJhbmdlU2xpZGVyVGltZVRpdGxlRmFjdG9yeSgpIHtcbiAgY29uc3QgVGltZVRpdGxlID0gKHt2YWx1ZSwgaXNFbmxhcmdlZCwgdGltZXpvbmUsIHRpbWVGb3JtYXR9OiBUaW1lVGl0bGVQcm9wcykgPT4gKFxuICAgIDxUaW1lVmFsdWVXcmFwcGVyIGlzRW5sYXJnZWQ9e2lzRW5sYXJnZWR9IGNsYXNzTmFtZT1cInRpbWUtcmFuZ2Utc2xpZGVyX190aW1lLXRpdGxlXCI+XG4gICAgICA8VGltZVZhbHVlIGtleT17MH0gdmFsdWU9e2RhdGV0aW1lRm9ybWF0dGVyKHRpbWV6b25lKSh0aW1lRm9ybWF0KSh2YWx1ZVswXSl9IC8+XG4gICAgICB7aXNFbmxhcmdlZCA/IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJob3Jpem9udGFsLWJhclwiPlxuICAgICAgICAgIDxNaW51cyBoZWlnaHQ9XCIxMnB4XCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxUaW1lVmFsdWUga2V5PXsxfSB2YWx1ZT17ZGF0ZXRpbWVGb3JtYXR0ZXIodGltZXpvbmUpKHRpbWVGb3JtYXQpKHZhbHVlWzFdKX0gLz5cbiAgICA8L1RpbWVWYWx1ZVdyYXBwZXI+XG4gICk7XG5cbiAgcmV0dXJuIFRpbWVUaXRsZTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgVGltZVJhbmdlU2xpZGVyVGltZVRpdGxlRmFjdG9yeTtcbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import RangeSliderFactory from './range-slider';
|
|
3
|
+
import TimeSliderMarkerFactory from './time-slider-marker';
|
|
4
|
+
import PlaybackControlsFactory from './animation-control/playback-controls';
|
|
5
|
+
import TimeRangeSliderTimeTitleFactory from './time-range-slider-time-title';
|
|
6
|
+
import { HistogramBin, LineChart } from '@kepler.gl/types';
|
|
7
|
+
declare type TimeRangeSliderProps = {
|
|
8
|
+
domain?: [number, number];
|
|
9
|
+
value: [number, number];
|
|
10
|
+
isEnlarged?: boolean;
|
|
11
|
+
hideTimeTitle?: boolean;
|
|
12
|
+
isAnimating: boolean;
|
|
13
|
+
timeFormat: string;
|
|
14
|
+
timezone?: string | null;
|
|
15
|
+
histogram?: HistogramBin[];
|
|
16
|
+
plotType?: string;
|
|
17
|
+
lineChart?: LineChart;
|
|
18
|
+
step: number;
|
|
19
|
+
isAnimatable?: boolean;
|
|
20
|
+
speed: number;
|
|
21
|
+
animationWindow: string;
|
|
22
|
+
resetAnimation?: () => void;
|
|
23
|
+
toggleAnimation: () => void;
|
|
24
|
+
updateAnimationSpeed?: (val: number) => void;
|
|
25
|
+
setFilterAnimationWindow?: (id: string) => void;
|
|
26
|
+
onChange: (v: number[]) => void;
|
|
27
|
+
};
|
|
28
|
+
declare function TimeRangeSliderFactory(PlaybackControls: ReturnType<typeof PlaybackControlsFactory>, RangeSlider: ReturnType<typeof RangeSliderFactory>, TimeSliderMarker: ReturnType<typeof TimeSliderMarkerFactory>, TimeRangeSliderTimeTitle: ReturnType<typeof TimeRangeSliderTimeTitleFactory>): React.NamedExoticComponent<TimeRangeSliderProps>;
|
|
29
|
+
declare namespace TimeRangeSliderFactory {
|
|
30
|
+
var deps: (typeof RangeSliderFactory | typeof TimeSliderMarkerFactory | typeof PlaybackControlsFactory | typeof TimeRangeSliderTimeTitleFactory)[];
|
|
31
|
+
}
|
|
32
|
+
export default TimeRangeSliderFactory;
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included in
|
|
11
|
+
// all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
// THE SOFTWARE.
|
|
20
|
+
|
|
21
|
+
"use strict";
|
|
22
|
+
|
|
23
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
24
|
+
|
|
25
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
26
|
+
|
|
27
|
+
Object.defineProperty(exports, "__esModule", {
|
|
28
|
+
value: true
|
|
29
|
+
});
|
|
30
|
+
exports["default"] = TimeRangeSliderFactory;
|
|
31
|
+
|
|
32
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
33
|
+
|
|
34
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
35
|
+
|
|
36
|
+
var _lodash = _interopRequireDefault(require("lodash.throttle"));
|
|
37
|
+
|
|
38
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
39
|
+
|
|
40
|
+
var _rangeSlider = _interopRequireDefault(require("./range-slider"));
|
|
41
|
+
|
|
42
|
+
var _timeSliderMarker = _interopRequireDefault(require("./time-slider-marker"));
|
|
43
|
+
|
|
44
|
+
var _playbackControls = _interopRequireDefault(require("./animation-control/playback-controls"));
|
|
45
|
+
|
|
46
|
+
var _timeRangeSliderTimeTitle = _interopRequireDefault(require("./time-range-slider-time-title"));
|
|
47
|
+
|
|
48
|
+
var _templateObject;
|
|
49
|
+
|
|
50
|
+
var animationControlWidth = 176;
|
|
51
|
+
|
|
52
|
+
var StyledSliderContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n align-items: flex-end;\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n padding-left: ", "px;\n\n .timeline-container .kg-slider {\n display: none;\n }\n\n .playback-controls {\n margin-left: 22px;\n }\n"])), function (props) {
|
|
53
|
+
return props.isEnlarged ? 24 : 0;
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
TimeRangeSliderFactory.deps = [_playbackControls["default"], _rangeSlider["default"], _timeSliderMarker["default"], _timeRangeSliderTimeTitle["default"]];
|
|
57
|
+
|
|
58
|
+
function TimeRangeSliderFactory(PlaybackControls, RangeSlider, TimeSliderMarker, TimeRangeSliderTimeTitle) {
|
|
59
|
+
var TimeRangeSlider = function TimeRangeSlider(props) {
|
|
60
|
+
var domain = props.domain,
|
|
61
|
+
value = props.value,
|
|
62
|
+
isEnlarged = props.isEnlarged,
|
|
63
|
+
hideTimeTitle = props.hideTimeTitle,
|
|
64
|
+
isAnimating = props.isAnimating,
|
|
65
|
+
resetAnimation = props.resetAnimation,
|
|
66
|
+
timeFormat = props.timeFormat,
|
|
67
|
+
timezone = props.timezone,
|
|
68
|
+
histogram = props.histogram,
|
|
69
|
+
plotType = props.plotType,
|
|
70
|
+
lineChart = props.lineChart,
|
|
71
|
+
step = props.step,
|
|
72
|
+
isAnimatable = props.isAnimatable,
|
|
73
|
+
speed = props.speed,
|
|
74
|
+
animationWindow = props.animationWindow,
|
|
75
|
+
updateAnimationSpeed = props.updateAnimationSpeed,
|
|
76
|
+
setFilterAnimationWindow = props.setFilterAnimationWindow,
|
|
77
|
+
toggleAnimation = props.toggleAnimation,
|
|
78
|
+
onChange = props.onChange;
|
|
79
|
+
var throttledOnchange = (0, _react.useMemo)(function () {
|
|
80
|
+
return (0, _lodash["default"])(onChange, 20);
|
|
81
|
+
}, [onChange]);
|
|
82
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
83
|
+
className: "time-range-slider"
|
|
84
|
+
}, !hideTimeTitle ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
85
|
+
className: "time-range-slider__title",
|
|
86
|
+
style: {
|
|
87
|
+
width: isEnlarged ? "calc(100% - ".concat(animationControlWidth, "px)") : '100%'
|
|
88
|
+
}
|
|
89
|
+
}, /*#__PURE__*/_react["default"].createElement(TimeRangeSliderTimeTitle, {
|
|
90
|
+
timeFormat: timeFormat,
|
|
91
|
+
timezone: timezone,
|
|
92
|
+
value: value,
|
|
93
|
+
isEnlarged: isEnlarged
|
|
94
|
+
})) : null, /*#__PURE__*/_react["default"].createElement(StyledSliderContainer, {
|
|
95
|
+
className: "time-range-slider__container",
|
|
96
|
+
isEnlarged: isEnlarged
|
|
97
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
98
|
+
className: "timeline-container",
|
|
99
|
+
style: {
|
|
100
|
+
width: isEnlarged ? "calc(100% - ".concat(animationControlWidth, "px)") : '100%'
|
|
101
|
+
}
|
|
102
|
+
}, /*#__PURE__*/_react["default"].createElement(RangeSlider, {
|
|
103
|
+
range: domain,
|
|
104
|
+
value0: value[0],
|
|
105
|
+
value1: value[1],
|
|
106
|
+
histogram: histogram,
|
|
107
|
+
lineChart: lineChart,
|
|
108
|
+
plotType: plotType,
|
|
109
|
+
isEnlarged: isEnlarged,
|
|
110
|
+
showInput: false,
|
|
111
|
+
step: step,
|
|
112
|
+
onChange: throttledOnchange,
|
|
113
|
+
xAxis: TimeSliderMarker,
|
|
114
|
+
timezone: timezone,
|
|
115
|
+
timeFormat: timeFormat
|
|
116
|
+
})), isEnlarged ? /*#__PURE__*/_react["default"].createElement(PlaybackControls, {
|
|
117
|
+
isAnimatable: isAnimatable,
|
|
118
|
+
width: animationControlWidth,
|
|
119
|
+
speed: speed,
|
|
120
|
+
animationWindow: animationWindow,
|
|
121
|
+
updateAnimationSpeed: updateAnimationSpeed,
|
|
122
|
+
setFilterAnimationWindow: setFilterAnimationWindow,
|
|
123
|
+
pauseAnimation: toggleAnimation,
|
|
124
|
+
resetAnimation: resetAnimation,
|
|
125
|
+
isAnimating: isAnimating,
|
|
126
|
+
startAnimation: toggleAnimation
|
|
127
|
+
}) : null));
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
return /*#__PURE__*/_react["default"].memo(TimeRangeSlider);
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vdGltZS1yYW5nZS1zbGlkZXIudHN4Il0sIm5hbWVzIjpbImFuaW1hdGlvbkNvbnRyb2xXaWR0aCIsIlN0eWxlZFNsaWRlckNvbnRhaW5lciIsInN0eWxlZCIsImRpdiIsInByb3BzIiwiaXNFbmxhcmdlZCIsIlRpbWVSYW5nZVNsaWRlckZhY3RvcnkiLCJkZXBzIiwiUGxheWJhY2tDb250cm9sc0ZhY3RvcnkiLCJSYW5nZVNsaWRlckZhY3RvcnkiLCJUaW1lU2xpZGVyTWFya2VyRmFjdG9yeSIsIlRpbWVSYW5nZVNsaWRlclRpbWVUaXRsZUZhY3RvcnkiLCJQbGF5YmFja0NvbnRyb2xzIiwiUmFuZ2VTbGlkZXIiLCJUaW1lU2xpZGVyTWFya2VyIiwiVGltZVJhbmdlU2xpZGVyVGltZVRpdGxlIiwiVGltZVJhbmdlU2xpZGVyIiwiZG9tYWluIiwidmFsdWUiLCJoaWRlVGltZVRpdGxlIiwiaXNBbmltYXRpbmciLCJyZXNldEFuaW1hdGlvbiIsInRpbWVGb3JtYXQiLCJ0aW1lem9uZSIsImhpc3RvZ3JhbSIsInBsb3RUeXBlIiwibGluZUNoYXJ0Iiwic3RlcCIsImlzQW5pbWF0YWJsZSIsInNwZWVkIiwiYW5pbWF0aW9uV2luZG93IiwidXBkYXRlQW5pbWF0aW9uU3BlZWQiLCJzZXRGaWx0ZXJBbmltYXRpb25XaW5kb3ciLCJ0b2dnbGVBbmltYXRpb24iLCJvbkNoYW5nZSIsInRocm90dGxlZE9uY2hhbmdlIiwid2lkdGgiLCJSZWFjdCIsIm1lbW8iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7QUFHQSxJQUFNQSxxQkFBcUIsR0FBRyxHQUE5Qjs7QUE0QkEsSUFBTUMscUJBQXFCLEdBQUdDLDZCQUFPQyxHQUFWLCtVQUtULFVBQUFDLEtBQUs7QUFBQSxTQUFLQSxLQUFLLENBQUNDLFVBQU4sR0FBbUIsRUFBbkIsR0FBd0IsQ0FBN0I7QUFBQSxD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QURUO0FBRUUsTUFBQSxNQUFNLEVBQUVDLEtBQUssQ0FBQyxDQUFELENBRmY7QUFHRSxNQUFBLE1BQU0sRUFBRUEsS0FBSyxDQUFDLENBQUQsQ0FIZjtBQUlFLE1BQUEsU0FBUyxFQUFFTSxTQUpiO0FBS0UsTUFBQSxTQUFTLEVBQUVFLFNBTGI7QUFNRSxNQUFBLFFBQVEsRUFBRUQsUUFOWjtBQU9FLE1BQUEsVUFBVSxFQUFFcEIsVUFQZDtBQVFFLE1BQUEsU0FBUyxFQUFFLEtBUmI7QUFTRSxNQUFBLElBQUksRUFBRXNCLElBVFI7QUFVRSxNQUFBLFFBQVEsRUFBRVEsaUJBVlo7QUFXRSxNQUFBLEtBQUssRUFBRXJCLGdCQVhUO0FBWUUsTUFBQSxRQUFRLEVBQUVTLFFBWlo7QUFhRSxNQUFBLFVBQVUsRUFBRUQ7QUFiZCxNQU5GLENBREYsRUF1QkdqQixVQUFVLGdCQUNULGdDQUFDLGdCQUFEO0FBQ0UsTUFBQSxZQUFZLEVBQUV1QixZQURoQjtBQUVFLE1BQUEsS0FBSyxFQUFFNUIscUJBRlQ7QUFHRSxNQUFBLEtBQUssRUFBRTZCLEtBSFQ7QUFJRSxNQUFBLGVBQWUsRUFBRUMsZUFKbkI7QUFLRSxNQUFBLG9CQUFvQixFQUFFQyxvQkFMeEI7QUFNRSxNQUFBLHdCQUF3QixFQUFFQyx3QkFONUI7QUFPRSxNQUFBLGNBQWMsRUFBRUMsZUFQbEI7QUFRRSxNQUFBLGNBQWMsRUFBRVosY0FSbEI7QUFTRSxNQUFBLFdBQVcsRUFBRUQsV0FUZjtBQVVFLE1BQUEsY0FBYyxFQUFFYTtBQVZsQixNQURTLEdBYVAsSUFwQ04sQ0FoQkYsQ0FERjtBQXlERCxHQWpGRDs7QUFtRkEsc0JBQU9JLGtCQUFNQyxJQUFOLENBQVd0QixlQUFYLENBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMiBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge3VzZU1lbW99IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0aHJvdHRsZSBmcm9tICdsb2Rhc2gudGhyb3R0bGUnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmltcG9ydCBSYW5nZVNsaWRlckZhY3RvcnkgZnJvbSAnLi9yYW5nZS1zbGlkZXInO1xuaW1wb3J0IFRpbWVTbGlkZXJNYXJrZXJGYWN0b3J5IGZyb20gJy4vdGltZS1zbGlkZXItbWFya2VyJztcbmltcG9ydCBQbGF5YmFja0NvbnRyb2xzRmFjdG9yeSBmcm9tICcuL2FuaW1hdGlvbi1jb250cm9sL3BsYXliYWNrLWNvbnRyb2xzJztcbmltcG9ydCBUaW1lUmFuZ2VTbGlkZXJUaW1lVGl0bGVGYWN0b3J5IGZyb20gJy4vdGltZS1yYW5nZS1zbGlkZXItdGltZS10aXRsZSc7XG5pbXBvcnQge0hpc3RvZ3JhbUJpbiwgTGluZUNoYXJ0fSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcblxuY29uc3QgYW5pbWF0aW9uQ29udHJvbFdpZHRoID0gMTc2O1xuXG5pbnRlcmZhY2UgU3R5bGVkU2xpZGVyQ29udGFpbmVyUHJvcHMge1xuICBpc0VubGFyZ2VkPzogYm9vbGVhbjtcbn1cblxudHlwZSBUaW1lUmFuZ2VTbGlkZXJQcm9wcyA9IHtcbiAgZG9tYWluPzogW251bWJlciwgbnVtYmVyXTtcbiAgdmFsdWU6IFtudW1iZXIsIG51bWJlcl07XG4gIGlzRW5sYXJnZWQ/OiBib29sZWFuO1xuICBoaWRlVGltZVRpdGxlPzogYm9vbGVhbjtcbiAgaXNBbmltYXRpbmc6IGJvb2xlYW47XG4gIHRpbWVGb3JtYXQ6IHN0cmluZztcbiAgdGltZXpvbmU/OiBzdHJpbmcgfCBudWxsO1xuICBoaXN0b2dyYW0/OiBIaXN0b2dyYW1CaW5bXTtcbiAgcGxvdFR5cGU/OiBzdHJpbmc7XG4gIGxpbmVDaGFydD86IExpbmVDaGFydDtcbiAgc3RlcDogbnVtYmVyO1xuICBpc0FuaW1hdGFibGU/OiBib29sZWFuO1xuICBzcGVlZDogbnVtYmVyO1xuICBhbmltYXRpb25XaW5kb3c6IHN0cmluZztcbiAgcmVzZXRBbmltYXRpb24/OiAoKSA9PiB2b2lkO1xuICB0b2dnbGVBbmltYXRpb246ICgpID0+IHZvaWQ7XG4gIHVwZGF0ZUFuaW1hdGlvblNwZWVkPzogKHZhbDogbnVtYmVyKSA9PiB2b2lkO1xuICBzZXRGaWx0ZXJBbmltYXRpb25XaW5kb3c/OiAoaWQ6IHN0cmluZykgPT4gdm9pZDtcbiAgb25DaGFuZ2U6ICh2OiBudW1iZXJbXSkgPT4gdm9pZDtcbn07XG5cbmNvbnN0IFN0eWxlZFNsaWRlckNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkU2xpZGVyQ29udGFpbmVyUHJvcHM+YFxuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy1sZWZ0OiAke3Byb3BzID0+IChwcm9wcy5pc0VubGFyZ2VkID8gMjQgOiAwKX1weDtcblxuICAudGltZWxpbmUtY29udGFpbmVyIC5rZy1zbGlkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAucGxheWJhY2stY29udHJvbHMge1xuICAgIG1hcmdpbi1sZWZ0OiAyMnB4O1xuICB9XG5gO1xuXG5UaW1lUmFuZ2VTbGlkZXJGYWN0b3J5LmRlcHMgPSBbXG4gIFBsYXliYWNrQ29udHJvbHNGYWN0b3J5LFxuICBSYW5nZVNsaWRlckZhY3RvcnksXG4gIFRpbWVTbGlkZXJNYXJrZXJGYWN0b3J5LFxuICBUaW1lUmFuZ2VTbGlkZXJUaW1lVGl0bGVGYWN0b3J5XG5dO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBUaW1lUmFuZ2VTbGlkZXJGYWN0b3J5KFxuICBQbGF5YmFja0NvbnRyb2xzOiBSZXR1cm5UeXBlPHR5cGVvZiBQbGF5YmFja0NvbnRyb2xzRmFjdG9yeT4sXG4gIFJhbmdlU2xpZGVyOiBSZXR1cm5UeXBlPHR5cGVvZiBSYW5nZVNsaWRlckZhY3Rvcnk+LFxuICBUaW1lU2xpZGVyTWFya2VyOiBSZXR1cm5UeXBlPHR5cGVvZiBUaW1lU2xpZGVyTWFya2VyRmFjdG9yeT4sXG4gIFRpbWVSYW5nZVNsaWRlclRpbWVUaXRsZTogUmV0dXJuVHlwZTx0eXBlb2YgVGltZVJhbmdlU2xpZGVyVGltZVRpdGxlRmFjdG9yeT5cbikge1xuICBjb25zdCBUaW1lUmFuZ2VTbGlkZXI6IFJlYWN0LkZDPFRpbWVSYW5nZVNsaWRlclByb3BzPiA9IHByb3BzID0+IHtcbiAgICBjb25zdCB7XG4gICAgICBkb21haW4sXG4gICAgICB2YWx1ZSxcbiAgICAgIGlzRW5sYXJnZWQsXG4gICAgICBoaWRlVGltZVRpdGxlLFxuICAgICAgaXNBbmltYXRpbmcsXG4gICAgICByZXNldEFuaW1hdGlvbixcbiAgICAgIHRpbWVGb3JtYXQsXG4gICAgICB0aW1lem9uZSxcbiAgICAgIGhpc3RvZ3JhbSxcbiAgICAgIHBsb3RUeXBlLFxuICAgICAgbGluZUNoYXJ0LFxuICAgICAgc3RlcCxcbiAgICAgIGlzQW5pbWF0YWJsZSxcbiAgICAgIHNwZWVkLFxuICAgICAgYW5pbWF0aW9uV2luZG93LFxuICAgICAgdXBkYXRlQW5pbWF0aW9uU3BlZWQsXG4gICAgICBzZXRGaWx0ZXJBbmltYXRpb25XaW5kb3csXG4gICAgICB0b2dnbGVBbmltYXRpb24sXG4gICAgICBvbkNoYW5nZVxuICAgIH0gPSBwcm9wcztcbiAgICBjb25zdCB0aHJvdHRsZWRPbmNoYW5nZSA9IHVzZU1lbW8oKCkgPT4gdGhyb3R0bGUob25DaGFuZ2UsIDIwKSwgW29uQ2hhbmdlXSk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aW1lLXJhbmdlLXNsaWRlclwiPlxuICAgICAgICB7IWhpZGVUaW1lVGl0bGUgPyAoXG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3NOYW1lPVwidGltZS1yYW5nZS1zbGlkZXJfX3RpdGxlXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIHdpZHRoOiBpc0VubGFyZ2VkID8gYGNhbGMoMTAwJSAtICR7YW5pbWF0aW9uQ29udHJvbFdpZHRofXB4KWAgOiAnMTAwJSdcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPFRpbWVSYW5nZVNsaWRlclRpbWVUaXRsZVxuICAgICAgICAgICAgICB0aW1lRm9ybWF0PXt0aW1lRm9ybWF0fVxuICAgICAgICAgICAgICB0aW1lem9uZT17dGltZXpvbmV9XG4gICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZX1cbiAgICAgICAgICAgICAgaXNFbmxhcmdlZD17aXNFbmxhcmdlZH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICA8U3R5bGVkU2xpZGVyQ29udGFpbmVyIGNsYXNzTmFtZT1cInRpbWUtcmFuZ2Utc2xpZGVyX19jb250YWluZXJcIiBpc0VubGFyZ2VkPXtpc0VubGFyZ2VkfT5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9XCJ0aW1lbGluZS1jb250YWluZXJcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgd2lkdGg6IGlzRW5sYXJnZWQgPyBgY2FsYygxMDAlIC0gJHthbmltYXRpb25Db250cm9sV2lkdGh9cHgpYCA6ICcxMDAlJ1xuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8UmFuZ2VTbGlkZXJcbiAgICAgICAgICAgICAgcmFuZ2U9e2RvbWFpbn1cbiAgICAgICAgICAgICAgdmFsdWUwPXt2YWx1ZVswXX1cbiAgICAgICAgICAgICAgdmFsdWUxPXt2YWx1ZVsxXX1cbiAgICAgICAgICAgICAgaGlzdG9ncmFtPXtoaXN0b2dyYW19XG4gICAgICAgICAgICAgIGxpbmVDaGFydD17bGluZUNoYXJ0fVxuICAgICAgICAgICAgICBwbG90VHlwZT17cGxvdFR5cGV9XG4gICAgICAgICAgICAgIGlzRW5sYXJnZWQ9e2lzRW5sYXJnZWR9XG4gICAgICAgICAgICAgIHNob3dJbnB1dD17ZmFsc2V9XG4gICAgICAgICAgICAgIHN0ZXA9e3N0ZXB9XG4gICAgICAgICAgICAgIG9uQ2hhbmdlPXt0aHJvdHRsZWRPbmNoYW5nZX1cbiAgICAgICAgICAgICAgeEF4aXM9e1RpbWVTbGlkZXJNYXJrZXJ9XG4gICAgICAgICAgICAgIHRpbWV6b25lPXt0aW1lem9uZX1cbiAgICAgICAgICAgICAgdGltZUZvcm1hdD17dGltZUZvcm1hdH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAge2lzRW5sYXJnZWQgPyAoXG4gICAgICAgICAgICA8UGxheWJhY2tDb250cm9sc1xuICAgICAgICAgICAgICBpc0FuaW1hdGFibGU9e2lzQW5pbWF0YWJsZX1cbiAgICAgICAgICAgICAgd2lkdGg9e2FuaW1hdGlvbkNvbnRyb2xXaWR0aH1cbiAgICAgICAgICAgICAgc3BlZWQ9e3NwZWVkfVxuICAgICAgICAgICAgICBhbmltYXRpb25XaW5kb3c9e2FuaW1hdGlvbldpbmRvd31cbiAgICAgICAgICAgICAgdXBkYXRlQW5pbWF0aW9uU3BlZWQ9e3VwZGF0ZUFuaW1hdGlvblNwZWVkfVxuICAgICAgICAgICAgICBzZXRGaWx0ZXJBbmltYXRpb25XaW5kb3c9e3NldEZpbHRlckFuaW1hdGlvbldpbmRvd31cbiAgICAgICAgICAgICAgcGF1c2VBbmltYXRpb249e3RvZ2dsZUFuaW1hdGlvbn1cbiAgICAgICAgICAgICAgcmVzZXRBbmltYXRpb249e3Jlc2V0QW5pbWF0aW9ufVxuICAgICAgICAgICAgICBpc0FuaW1hdGluZz17aXNBbmltYXRpbmd9XG4gICAgICAgICAgICAgIHN0YXJ0QW5pbWF0aW9uPXt0b2dnbGVBbmltYXRpb259XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZFNsaWRlckNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH07XG5cbiAgcmV0dXJuIFJlYWN0Lm1lbW8oVGltZVJhbmdlU2xpZGVyKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { NumberValue } from 'd3-scale';
|
|
4
|
+
export declare function getTickFormat(timezone: string): (date: any) => string;
|
|
5
|
+
export declare function getXAxis(domain: Date[] | NumberValue[], width: number, isEnlarged: boolean, timezone: string): any;
|
|
6
|
+
export declare function updateAxis(xAxisRef: any, xAxis: any): void;
|
|
7
|
+
interface TimeSliderMarkerProps {
|
|
8
|
+
width: number;
|
|
9
|
+
domain: Date[] | NumberValue[];
|
|
10
|
+
isEnlarged?: boolean;
|
|
11
|
+
height?: number;
|
|
12
|
+
timezone: string;
|
|
13
|
+
}
|
|
14
|
+
declare function TimeSliderMarkerFactory(): React.MemoExoticComponent<{
|
|
15
|
+
({ width, domain, isEnlarged, height, timezone }: TimeSliderMarkerProps): JSX.Element;
|
|
16
|
+
propTypes: {
|
|
17
|
+
domain: PropTypes.Validator<any[]>;
|
|
18
|
+
width: PropTypes.Validator<number>;
|
|
19
|
+
};
|
|
20
|
+
}>;
|
|
21
|
+
export default TimeSliderMarkerFactory;
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
// Copyright (c) 2022 Uber Technologies, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included in
|
|
11
|
+
// all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
19
|
+
// THE SOFTWARE.
|
|
20
|
+
|
|
21
|
+
"use strict";
|
|
22
|
+
|
|
23
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
24
|
+
|
|
25
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
26
|
+
|
|
27
|
+
Object.defineProperty(exports, "__esModule", {
|
|
28
|
+
value: true
|
|
29
|
+
});
|
|
30
|
+
exports.getTickFormat = getTickFormat;
|
|
31
|
+
exports.getXAxis = getXAxis;
|
|
32
|
+
exports.updateAxis = updateAxis;
|
|
33
|
+
exports["default"] = void 0;
|
|
34
|
+
|
|
35
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
36
|
+
|
|
37
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
38
|
+
|
|
39
|
+
var _momentTimezone = _interopRequireDefault(require("moment-timezone"));
|
|
40
|
+
|
|
41
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
42
|
+
|
|
43
|
+
var _d3Scale = require("d3-scale");
|
|
44
|
+
|
|
45
|
+
var _d3Selection = require("d3-selection");
|
|
46
|
+
|
|
47
|
+
var _d3Axis = require("d3-axis");
|
|
48
|
+
|
|
49
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
50
|
+
|
|
51
|
+
var _utils = require("@kepler.gl/utils");
|
|
52
|
+
|
|
53
|
+
var _templateObject;
|
|
54
|
+
|
|
55
|
+
var MIN_TICK_WIDTH_LARGE = 80;
|
|
56
|
+
var MIN_TICK_WIDTH_SMALL = 50;
|
|
57
|
+
var HEIGHT = 30;
|
|
58
|
+
|
|
59
|
+
var TimeSliderContainer = _styledComponents["default"].svg(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n pointer-events: none;\n position: absolute;\n top: 0;\n overflow: visible;\n margin-top: 6px;\n\n .axis text {\n font-size: ", ";\n fill: ", ";\n }\n\n .axis line,\n .axis path {\n fill: none;\n stroke: ", ";\n shape-rendering: crispEdges;\n stroke-width: 2;\n }\n\n .axis .domain {\n display: none;\n }\n\n .value {\n fill: ", ";\n font-size: ", ";\n\n &.start {\n text-anchor: start;\n }\n\n &.end {\n text-anchor: end;\n }\n }\n"])), function (props) {
|
|
60
|
+
return props.theme.axisFontSize;
|
|
61
|
+
}, function (props) {
|
|
62
|
+
return props.theme.axisFontColor;
|
|
63
|
+
}, function (props) {
|
|
64
|
+
return props.theme.sliderBarBgd;
|
|
65
|
+
}, function (props) {
|
|
66
|
+
return props.theme.axisFontColor;
|
|
67
|
+
}, function (props) {
|
|
68
|
+
return props.theme.axisFontSize;
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
var TICK_FORMATS = {
|
|
72
|
+
millisecond: '.SSS',
|
|
73
|
+
second: ':ss',
|
|
74
|
+
minute: 'HH:ss',
|
|
75
|
+
hour: 'HH A',
|
|
76
|
+
day: 'ddd DD',
|
|
77
|
+
week: 'MMM DD',
|
|
78
|
+
month: 'MMM',
|
|
79
|
+
year: 'YYYY'
|
|
80
|
+
}; // timezone sensitive tick formatter based on moment
|
|
81
|
+
// adapted based on d3 time scale tick format https://github.com/d3/d3-scale/blob/master/src/time.js#L59
|
|
82
|
+
|
|
83
|
+
function getTickFormat(timezone) {
|
|
84
|
+
// date is js date object
|
|
85
|
+
var toMoment = timezone ? function (date) {
|
|
86
|
+
return (0, _momentTimezone["default"])(date).tz(timezone);
|
|
87
|
+
} : _momentTimezone["default"];
|
|
88
|
+
var formatter = (0, _utils.datetimeFormatter)(timezone);
|
|
89
|
+
return function (date) {
|
|
90
|
+
return (toMoment(date).startOf('second') < date ? formatter(TICK_FORMATS.millisecond) : toMoment(date).startOf('minute') < date ? formatter(TICK_FORMATS.second) : toMoment(date).startOf('hour') < date ? formatter(TICK_FORMATS.minute) : toMoment(date).startOf('day') < date ? formatter(TICK_FORMATS.hour) : toMoment(date).startOf('month') < date ? toMoment(date).startOf('isoWeek') < date ? formatter(TICK_FORMATS.day) : formatter(TICK_FORMATS.week) : toMoment(date).startOf('year') < date ? formatter(TICK_FORMATS.month) : formatter(TICK_FORMATS.year))(date);
|
|
91
|
+
};
|
|
92
|
+
} // create a helper function so we can test it
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
function getXAxis(domain, width, isEnlarged, timezone) {
|
|
96
|
+
if (!Array.isArray(domain) || !domain.every(Number.isFinite)) {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
var scale = (0, _d3Scale.scaleUtc)().domain(domain).range([0, width]);
|
|
101
|
+
|
|
102
|
+
if (!scale) {
|
|
103
|
+
return null;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
var ticks = Math.floor(width / (isEnlarged ? MIN_TICK_WIDTH_LARGE : MIN_TICK_WIDTH_SMALL));
|
|
107
|
+
var tickFormat = timezone ? getTickFormat(timezone) : null;
|
|
108
|
+
var xAxis = (0, _d3Axis.axisBottom)(scale).ticks(ticks).tickSize(0).tickPadding(12);
|
|
109
|
+
|
|
110
|
+
if (tickFormat) {
|
|
111
|
+
xAxis.tickFormat(tickFormat);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
return xAxis;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
function updateAxis(xAxisRef, xAxis) {
|
|
118
|
+
if (!xAxis) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
(0, _d3Selection.select)(xAxisRef.current).call(xAxis);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
function TimeSliderMarkerFactory() {
|
|
126
|
+
var TimeSliderMarker = function TimeSliderMarker(_ref) {
|
|
127
|
+
var width = _ref.width,
|
|
128
|
+
domain = _ref.domain,
|
|
129
|
+
_ref$isEnlarged = _ref.isEnlarged,
|
|
130
|
+
isEnlarged = _ref$isEnlarged === void 0 ? true : _ref$isEnlarged,
|
|
131
|
+
_ref$height = _ref.height,
|
|
132
|
+
height = _ref$height === void 0 ? HEIGHT : _ref$height,
|
|
133
|
+
timezone = _ref.timezone;
|
|
134
|
+
var xAxisRef = (0, _react.useRef)(null);
|
|
135
|
+
var xAxis = (0, _react.useMemo)(function () {
|
|
136
|
+
return getXAxis(domain, width, isEnlarged, timezone);
|
|
137
|
+
}, [domain, width, isEnlarged, timezone]);
|
|
138
|
+
(0, _react.useEffect)(function () {
|
|
139
|
+
updateAxis(xAxisRef, xAxis);
|
|
140
|
+
}, [xAxisRef, xAxis]);
|
|
141
|
+
return /*#__PURE__*/_react["default"].createElement(TimeSliderContainer, {
|
|
142
|
+
className: "time-slider-marker",
|
|
143
|
+
width: width,
|
|
144
|
+
height: height
|
|
145
|
+
}, /*#__PURE__*/_react["default"].createElement("g", {
|
|
146
|
+
className: "x axis",
|
|
147
|
+
ref: xAxisRef,
|
|
148
|
+
transform: "translate(0, 0)"
|
|
149
|
+
}));
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
TimeSliderMarker.propTypes = {
|
|
153
|
+
domain: _propTypes["default"].arrayOf(_propTypes["default"].any).isRequired,
|
|
154
|
+
width: _propTypes["default"].number.isRequired
|
|
155
|
+
};
|
|
156
|
+
return /*#__PURE__*/_react["default"].memo(TimeSliderMarker);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
var _default = TimeSliderMarkerFactory;
|
|
160
|
+
exports["default"] = _default;
|
|
161
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21tb24vdGltZS1zbGlkZXItbWFya2VyLnRzeCJdLCJuYW1lcyI6WyJNSU5fVElDS19XSURUSF9MQVJHRSIsIk1JTl9USUNLX1dJRFRIX1NNQUxMIiwiSEVJR0hUIiwiVGltZVNsaWRlckNvbnRhaW5lciIsInN0eWxlZCIsInN2ZyIsInByb3BzIiwidGhlbWUiLCJheGlzRm9udFNpemUiLCJheGlzRm9udENvbG9yIiwic2xpZGVyQmFyQmdkIiwiVElDS19GT1JNQVRTIiwibWlsbGlzZWNvbmQiLCJzZWNvbmQiLCJtaW51dGUiLCJob3VyIiwiZGF5Iiwid2VlayIsIm1vbnRoIiwieWVhciIsImdldFRpY2tGb3JtYXQiLCJ0aW1lem9uZSIsInRvTW9tZW50IiwiZGF0ZSIsInR6IiwibW9tZW50IiwiZm9ybWF0dGVyIiwic3RhcnRPZiIsImdldFhBeGlzIiwiZG9tYWluIiwid2lkdGgiLCJpc0VubGFyZ2VkIiwiQXJyYXkiLCJpc0FycmF5IiwiZXZlcnkiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsInNjYWxlIiwicmFuZ2UiLCJ0aWNrcyIsIk1hdGgiLCJmbG9vciIsInRpY2tGb3JtYXQiLCJ4QXhpcyIsInRpY2tTaXplIiwidGlja1BhZGRpbmciLCJ1cGRhdGVBeGlzIiwieEF4aXNSZWYiLCJjdXJyZW50IiwiY2FsbCIsIlRpbWVTbGlkZXJNYXJrZXJGYWN0b3J5IiwiVGltZVNsaWRlck1hcmtlciIsImhlaWdodCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsImFycmF5T2YiLCJhbnkiLCJpc1JlcXVpcmVkIiwibnVtYmVyIiwiUmVhY3QiLCJtZW1vIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBb0JBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBRUEsSUFBTUEsb0JBQW9CLEdBQUcsRUFBN0I7QUFDQSxJQUFNQyxvQkFBb0IsR0FBRyxFQUE3QjtBQUNBLElBQU1DLE1BQU0sR0FBRyxFQUFm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MkI7QUFBQSxRQUYzQkEsTUFFMkIsNEJBRmxCbEQsTUFFa0I7QUFBQSxRQUQzQm1CLFFBQzJCLFFBRDNCQSxRQUMyQjtBQUMzQixRQUFNMEIsUUFBUSxHQUFHLG1CQUFPLElBQVAsQ0FBakI7QUFDQSxRQUFNSixLQUFLLEdBQUcsb0JBQVE7QUFBQSxhQUFNZixRQUFRLENBQUNDLE1BQUQsRUFBU0MsS0FBVCxFQUFnQkMsVUFBaEIsRUFBNEJWLFFBQTVCLENBQWQ7QUFBQSxLQUFSLEVBQTZELENBQ3pFUSxNQUR5RSxFQUV6RUMsS0FGeUUsRUFHekVDLFVBSHlFLEVBSXpFVixRQUp5RSxDQUE3RCxDQUFkO0FBTUEsMEJBQVUsWUFBTTtBQUNkeUIsTUFBQUEsVUFBVSxDQUFDQyxRQUFELEVBQVdKLEtBQVgsQ0FBVjtBQUNELEtBRkQsRUFFRyxDQUFDSSxRQUFELEVBQVdKLEtBQVgsQ0FGSDtBQUdBLHdCQUNFLGdDQUFDLG1CQUFEO0FBQXFCLE1BQUEsU0FBUyxFQUFDLG9CQUEvQjtBQUFvRCxNQUFBLEtBQUssRUFBRWIsS0FBM0Q7QUFBa0UsTUFBQSxNQUFNLEVBQUVzQjtBQUExRSxvQkFDRTtBQUFHLE1BQUEsU0FBUyxFQUFDLFFBQWI7QUFBc0IsTUFBQSxHQUFHLEVBQUVMLFFBQTNCO0FBQXFDLE1BQUEsU0FBUyxFQUFDO0FBQS9DLE1BREYsQ0FERjtBQUtELEdBdEJEOztBQXdCQUksRUFBQUEsZ0JBQWdCLENBQUNFLFNBQWpCLEdBQTZCO0FBQzNCeEIsSUFBQUEsTUFBTSxFQUFFeUIsc0JBQVVDLE9BQVYsQ0FBa0JELHNCQUFVRSxHQUE1QixFQUFpQ0MsVUFEZDtBQUUzQjNCLElBQUFBLEtBQUssRUFBRXdCLHNCQUFVSSxNQUFWLENBQWlCRDtBQUZHLEdBQTdCO0FBS0Esc0JBQU9FLGtCQUFNQyxJQUFOLENBQVdULGdCQUFYLENBQVA7QUFDRDs7ZUFFY0QsdUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIDIwMjIgVWJlciBUZWNobm9sb2dpZXMsIEluYy5cbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5pbXBvcnQgUmVhY3QsIHt1c2VSZWYsIHVzZUVmZmVjdCwgdXNlTWVtb30gZnJvbSAncmVhY3QnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQtdGltZXpvbmUnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7TnVtYmVyVmFsdWUsIHNjYWxlVXRjfSBmcm9tICdkMy1zY2FsZSc7XG5pbXBvcnQge3NlbGVjdH0gZnJvbSAnZDMtc2VsZWN0aW9uJztcbmltcG9ydCB7YXhpc0JvdHRvbX0gZnJvbSAnZDMtYXhpcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7ZGF0ZXRpbWVGb3JtYXR0ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuXG5jb25zdCBNSU5fVElDS19XSURUSF9MQVJHRSA9IDgwO1xuY29uc3QgTUlOX1RJQ0tfV0lEVEhfU01BTEwgPSA1MDtcbmNvbnN0IEhFSUdIVCA9IDMwO1xuXG5jb25zdCBUaW1lU2xpZGVyQ29udGFpbmVyID0gc3R5bGVkLnN2Z2BcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgbWFyZ2luLXRvcDogNnB4O1xuXG4gIC5heGlzIHRleHQge1xuICAgIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5heGlzRm9udFNpemV9O1xuICAgIGZpbGw6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYXhpc0ZvbnRDb2xvcn07XG4gIH1cblxuICAuYXhpcyBsaW5lLFxuICAuYXhpcyBwYXRoIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zbGlkZXJCYXJCZ2R9O1xuICAgIHNoYXBlLXJlbmRlcmluZzogY3Jpc3BFZGdlcztcbiAgICBzdHJva2Utd2lkdGg6IDI7XG4gIH1cblxuICAuYXhpcyAuZG9tYWluIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnZhbHVlIHtcbiAgICBmaWxsOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmF4aXNGb250Q29sb3J9O1xuICAgIGZvbnQtc2l6ZTogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5heGlzRm9udFNpemV9O1xuXG4gICAgJi5zdGFydCB7XG4gICAgICB0ZXh0LWFuY2hvcjogc3RhcnQ7XG4gICAgfVxuXG4gICAgJi5lbmQge1xuICAgICAgdGV4dC1hbmNob3I6IGVuZDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IFRJQ0tfRk9STUFUUyA9IHtcbiAgbWlsbGlzZWNvbmQ6ICcuU1NTJyxcbiAgc2Vjb25kOiAnOnNzJyxcbiAgbWludXRlOiAnSEg6c3MnLFxuICBob3VyOiAnSEggQScsXG4gIGRheTogJ2RkZCBERCcsXG4gIHdlZWs6ICdNTU0gREQnLFxuICBtb250aDogJ01NTScsXG4gIHllYXI6ICdZWVlZJ1xufTtcblxuLy8gdGltZXpvbmUgc2Vuc2l0aXZlIHRpY2sgZm9ybWF0dGVyIGJhc2VkIG9uIG1vbWVudFxuLy8gYWRhcHRlZCBiYXNlZCBvbiBkMyB0aW1lIHNjYWxlIHRpY2sgZm9ybWF0IGh0dHBzOi8vZ2l0aHViLmNvbS9kMy9kMy1zY2FsZS9ibG9iL21hc3Rlci9zcmMvdGltZS5qcyNMNTlcbmV4cG9ydCBmdW5jdGlvbiBnZXRUaWNrRm9ybWF0KHRpbWV6b25lOiBzdHJpbmcpIHtcbiAgLy8gZGF0ZSBpcyBqcyBkYXRlIG9iamVjdFxuICBjb25zdCB0b01vbWVudCA9IHRpbWV6b25lID8gZGF0ZSA9PiBtb21lbnQoZGF0ZSkudHoodGltZXpvbmUpIDogbW9tZW50O1xuICBjb25zdCBmb3JtYXR0ZXIgPSBkYXRldGltZUZvcm1hdHRlcih0aW1lem9uZSk7XG5cbiAgcmV0dXJuIGRhdGUgPT5cbiAgICAodG9Nb21lbnQoZGF0ZSkuc3RhcnRPZignc2Vjb25kJykgPCBkYXRlXG4gICAgICA/IGZvcm1hdHRlcihUSUNLX0ZPUk1BVFMubWlsbGlzZWNvbmQpXG4gICAgICA6IHRvTW9tZW50KGRhdGUpLnN0YXJ0T2YoJ21pbnV0ZScpIDwgZGF0ZVxuICAgICAgPyBmb3JtYXR0ZXIoVElDS19GT1JNQVRTLnNlY29uZClcbiAgICAgIDogdG9Nb21lbnQoZGF0ZSkuc3RhcnRPZignaG91cicpIDwgZGF0ZVxuICAgICAgPyBmb3JtYXR0ZXIoVElDS19GT1JNQVRTLm1pbnV0ZSlcbiAgICAgIDogdG9Nb21lbnQoZGF0ZSkuc3RhcnRPZignZGF5JykgPCBkYXRlXG4gICAgICA/IGZvcm1hdHRlcihUSUNLX0ZPUk1BVFMuaG91cilcbiAgICAgIDogdG9Nb21lbnQoZGF0ZSkuc3RhcnRPZignbW9udGgnKSA8IGRhdGVcbiAgICAgID8gdG9Nb21lbnQoZGF0ZSkuc3RhcnRPZignaXNvV2VlaycpIDwgZGF0ZVxuICAgICAgICA/IGZvcm1hdHRlcihUSUNLX0ZPUk1BVFMuZGF5KVxuICAgICAgICA6IGZvcm1hdHRlcihUSUNLX0ZPUk1BVFMud2VlaylcbiAgICAgIDogdG9Nb21lbnQoZGF0ZSkuc3RhcnRPZigneWVhcicpIDwgZGF0ZVxuICAgICAgPyBmb3JtYXR0ZXIoVElDS19GT1JNQVRTLm1vbnRoKVxuICAgICAgOiBmb3JtYXR0ZXIoVElDS19GT1JNQVRTLnllYXIpKShkYXRlKTtcbn1cblxuLy8gY3JlYXRlIGEgaGVscGVyIGZ1bmN0aW9uIHNvIHdlIGNhbiB0ZXN0IGl0XG5leHBvcnQgZnVuY3Rpb24gZ2V0WEF4aXMoXG4gIGRvbWFpbjogRGF0ZVtdIHwgTnVtYmVyVmFsdWVbXSxcbiAgd2lkdGg6IG51bWJlcixcbiAgaXNFbmxhcmdlZDogYm9vbGVhbixcbiAgdGltZXpvbmU6IHN0cmluZ1xuKSB7XG4gIGlmICghQXJyYXkuaXNBcnJheShkb21haW4pIHx8ICFkb21haW4uZXZlcnkoTnVtYmVyLmlzRmluaXRlKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IHNjYWxlID0gc2NhbGVVdGMoKVxuICAgIC5kb21haW4oZG9tYWluKVxuICAgIC5yYW5nZShbMCwgd2lkdGhdKTtcbiAgaWYgKCFzY2FsZSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgdGlja3MgPSBNYXRoLmZsb29yKHdpZHRoIC8gKGlzRW5sYXJnZWQgPyBNSU5fVElDS19XSURUSF9MQVJHRSA6IE1JTl9USUNLX1dJRFRIX1NNQUxMKSk7XG4gIGNvbnN0IHRpY2tGb3JtYXQgPSB0aW1lem9uZSA/IGdldFRpY2tGb3JtYXQodGltZXpvbmUpIDogbnVsbDtcbiAgY29uc3QgeEF4aXMgPSBheGlzQm90dG9tKHNjYWxlKVxuICAgIC50aWNrcyh0aWNrcylcbiAgICAudGlja1NpemUoMClcbiAgICAudGlja1BhZGRpbmcoMTIpO1xuICBpZiAodGlja0Zvcm1hdCkge1xuICAgIHhBeGlzLnRpY2tGb3JtYXQodGlja0Zvcm1hdCk7XG4gIH1cblxuICByZXR1cm4geEF4aXM7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVBeGlzKHhBeGlzUmVmLCB4QXhpcykge1xuICBpZiAoIXhBeGlzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgc2VsZWN0KHhBeGlzUmVmLmN1cnJlbnQpLmNhbGwoeEF4aXMpO1xufVxuXG5pbnRlcmZhY2UgVGltZVNsaWRlck1hcmtlclByb3BzIHtcbiAgd2lkdGg6IG51bWJlcjtcbiAgZG9tYWluOiBEYXRlW10gfCBOdW1iZXJWYWx1ZVtdO1xuICBpc0VubGFyZ2VkPzogYm9vbGVhbjtcbiAgaGVpZ2h0PzogbnVtYmVyO1xuICB0aW1lem9uZTogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBUaW1lU2xpZGVyTWFya2VyRmFjdG9yeSgpIHtcbiAgY29uc3QgVGltZVNsaWRlck1hcmtlciA9ICh7XG4gICAgd2lkdGgsXG4gICAgZG9tYWluLFxuICAgIGlzRW5sYXJnZWQgPSB0cnVlLFxuICAgIGhlaWdodCA9IEhFSUdIVCxcbiAgICB0aW1lem9uZVxuICB9OiBUaW1lU2xpZGVyTWFya2VyUHJvcHMpID0+IHtcbiAgICBjb25zdCB4QXhpc1JlZiA9IHVzZVJlZihudWxsKTtcbiAgICBjb25zdCB4QXhpcyA9IHVzZU1lbW8oKCkgPT4gZ2V0WEF4aXMoZG9tYWluLCB3aWR0aCwgaXNFbmxhcmdlZCwgdGltZXpvbmUpLCBbXG4gICAgICBkb21haW4sXG4gICAgICB3aWR0aCxcbiAgICAgIGlzRW5sYXJnZWQsXG4gICAgICB0aW1lem9uZVxuICAgIF0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICB1cGRhdGVBeGlzKHhBeGlzUmVmLCB4QXhpcyk7XG4gICAgfSwgW3hBeGlzUmVmLCB4QXhpc10pO1xuICAgIHJldHVybiAoXG4gICAgICA8VGltZVNsaWRlckNvbnRhaW5lciBjbGFzc05hbWU9XCJ0aW1lLXNsaWRlci1tYXJrZXJcIiB3aWR0aD17d2lkdGh9IGhlaWdodD17aGVpZ2h0fT5cbiAgICAgICAgPGcgY2xhc3NOYW1lPVwieCBheGlzXCIgcmVmPXt4QXhpc1JlZn0gdHJhbnNmb3JtPVwidHJhbnNsYXRlKDAsIDApXCIgLz5cbiAgICAgIDwvVGltZVNsaWRlckNvbnRhaW5lcj5cbiAgICApO1xuICB9O1xuXG4gIFRpbWVTbGlkZXJNYXJrZXIucHJvcFR5cGVzID0ge1xuICAgIGRvbWFpbjogUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLmFueSkuaXNSZXF1aXJlZCxcbiAgICB3aWR0aDogUHJvcFR5cGVzLm51bWJlci5pc1JlcXVpcmVkXG4gIH07XG5cbiAgcmV0dXJuIFJlYWN0Lm1lbW8oVGltZVNsaWRlck1hcmtlcik7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRpbWVTbGlkZXJNYXJrZXJGYWN0b3J5O1xuIl19
|