@kepler.gl/components 3.3.0-alpha.3 → 3.3.0-alpha.5
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/annotations/annotation-overlay.d.ts +1 -0
- package/dist/annotations/annotation-overlay.js +7 -5
- package/dist/annotations/annotation-panel.js +16 -17
- package/dist/annotations/annotation-text.js +2 -3
- package/dist/annotations/annotation-utils.d.ts +14 -0
- package/dist/annotations/annotation-utils.js +44 -3
- package/dist/annotations/lexical-editor/floating-link-editor.js +9 -10
- package/dist/annotations/lexical-editor/lexical-rich-text-editor.js +2 -3
- package/dist/annotations/lexical-editor/lexical-toolbar.js +6 -7
- package/dist/annotations/lexical-editor/use-lexical-toolbar.js +15 -15
- package/dist/bottom-widget.js +3 -4
- package/dist/common/action-panel.js +2 -3
- package/dist/common/animation-control/animation-speed-slider.js +2 -3
- package/dist/common/animation-control/animation-window-control.js +2 -3
- package/dist/common/animation-control/floating-time-display.js +2 -3
- package/dist/common/animation-control/playback-controls.js +2 -3
- package/dist/common/animation-control/window-action-control.js +2 -3
- package/dist/common/checkbox.js +2 -3
- package/dist/common/color-legend.js +2 -3
- package/dist/common/column-stats-chart.js +2 -3
- package/dist/common/data-table/display-format.js +2 -3
- package/dist/common/data-table/grid.js +2 -3
- package/dist/common/data-table/header-cell.js +2 -3
- package/dist/common/data-table/index.js +2 -3
- package/dist/common/data-table/option-dropdown.js +2 -3
- package/dist/common/field-selector.js +2 -3
- package/dist/common/file-uploader/file-drop.js +2 -3
- package/dist/common/file-uploader/file-upload-progress.js +2 -3
- package/dist/common/file-uploader/file-upload.js +8 -9
- package/dist/common/file-uploader/upload-button.js +2 -3
- package/dist/common/histogram-plot.js +2 -3
- package/dist/common/icons/3d-models/airplane.js +2 -3
- package/dist/common/icons/3d-models/bicycle.js +2 -3
- package/dist/common/icons/3d-models/boeing.js +2 -3
- package/dist/common/icons/3d-models/car.js +2 -3
- package/dist/common/icons/3d-models/cargoship.js +2 -3
- package/dist/common/icons/3d-models/evtol.js +2 -3
- package/dist/common/icons/3d-models/glider.js +2 -3
- package/dist/common/icons/3d-models/helicopter.js +2 -3
- package/dist/common/icons/3d-models/scooter.js +2 -3
- package/dist/common/icons/3d-models/semitruck.js +2 -3
- package/dist/common/icons/3d-models/truck.js +2 -3
- package/dist/common/icons/add.js +2 -3
- package/dist/common/icons/annotation-text.js +2 -3
- package/dist/common/icons/arrow-down-alt.js +2 -3
- package/dist/common/icons/arrow-down-full.js +2 -3
- package/dist/common/icons/arrow-down-small.js +2 -3
- package/dist/common/icons/arrow-down-solid.js +2 -3
- package/dist/common/icons/arrow-down.js +2 -3
- package/dist/common/icons/arrow-left.js +2 -3
- package/dist/common/icons/arrow-right.js +2 -3
- package/dist/common/icons/arrow-up-alt.js +2 -3
- package/dist/common/icons/arrow-up-solid.js +2 -3
- package/dist/common/icons/arrow-up.js +2 -3
- package/dist/common/icons/base-map.js +2 -3
- package/dist/common/icons/base.js +2 -3
- package/dist/common/icons/bug.js +2 -3
- package/dist/common/icons/calendar.js +2 -3
- package/dist/common/icons/cancel.js +2 -3
- package/dist/common/icons/checkmark.js +2 -3
- package/dist/common/icons/clipboard.js +2 -3
- package/dist/common/icons/clock.js +2 -3
- package/dist/common/icons/close.js +2 -3
- package/dist/common/icons/cloud.js +2 -3
- package/dist/common/icons/code-alt.js +2 -3
- package/dist/common/icons/copy.js +2 -3
- package/dist/common/icons/crosshairs.js +2 -3
- package/dist/common/icons/cube-3d.js +2 -3
- package/dist/common/icons/cursor-click.js +2 -3
- package/dist/common/icons/cursor-point.js +2 -3
- package/dist/common/icons/data-table.js +2 -3
- package/dist/common/icons/db.js +2 -3
- package/dist/common/icons/delete.js +2 -3
- package/dist/common/icons/docs.js +2 -3
- package/dist/common/icons/docs2.js +2 -3
- package/dist/common/icons/drag-n-drop.js +2 -3
- package/dist/common/icons/draggable-dots.js +2 -3
- package/dist/common/icons/draw-polygon.js +2 -3
- package/dist/common/icons/edit.js +2 -3
- package/dist/common/icons/effects/brightness-contrast.js +2 -3
- package/dist/common/icons/effects/color-halftone.js +2 -3
- package/dist/common/icons/effects/distance-fog.js +2 -3
- package/dist/common/icons/effects/dot-screen.js +2 -3
- package/dist/common/icons/effects/edge-work.js +2 -3
- package/dist/common/icons/effects/hexagonal-pixelate.js +2 -3
- package/dist/common/icons/effects/hue-saturation.js +2 -3
- package/dist/common/icons/effects/ink.js +2 -3
- package/dist/common/icons/effects/light-and-shadow.js +2 -3
- package/dist/common/icons/effects/magic-wand.js +2 -3
- package/dist/common/icons/effects/magnify.js +2 -3
- package/dist/common/icons/effects/noise.js +2 -3
- package/dist/common/icons/effects/sepia.js +2 -3
- package/dist/common/icons/effects/surface-fog.js +2 -3
- package/dist/common/icons/effects/tilt-shift.js +2 -3
- package/dist/common/icons/effects/triangle-blur.js +2 -3
- package/dist/common/icons/effects/vibrance.js +2 -3
- package/dist/common/icons/effects/vignette.js +2 -3
- package/dist/common/icons/effects/zoom-blur.js +2 -3
- package/dist/common/icons/email.js +2 -3
- package/dist/common/icons/expand.js +2 -3
- package/dist/common/icons/eye-seen.js +2 -3
- package/dist/common/icons/eye-unseen.js +2 -3
- package/dist/common/icons/file.js +2 -3
- package/dist/common/icons/filter-funnel.js +2 -3
- package/dist/common/icons/folder.js +2 -3
- package/dist/common/icons/gear.js +2 -3
- package/dist/common/icons/globe.js +2 -3
- package/dist/common/icons/hash.js +2 -3
- package/dist/common/icons/help.js +2 -3
- package/dist/common/icons/horizontal-resize-handle.js +2 -3
- package/dist/common/icons/info.js +2 -3
- package/dist/common/icons/layers.js +2 -3
- package/dist/common/icons/left-arrow.js +2 -3
- package/dist/common/icons/legend.js +2 -3
- package/dist/common/icons/line-chart.js +2 -3
- package/dist/common/icons/location-marker.js +2 -3
- package/dist/common/icons/login.js +2 -3
- package/dist/common/icons/logout.js +2 -3
- package/dist/common/icons/map-icon.js +2 -3
- package/dist/common/icons/map-pin.js +2 -3
- package/dist/common/icons/messages.js +2 -3
- package/dist/common/icons/minus.js +2 -3
- package/dist/common/icons/moon.js +2 -3
- package/dist/common/icons/pause.js +2 -3
- package/dist/common/icons/pin.js +2 -3
- package/dist/common/icons/play.js +2 -3
- package/dist/common/icons/pointer-click.js +2 -3
- package/dist/common/icons/polygon.js +2 -3
- package/dist/common/icons/rectangle.js +2 -3
- package/dist/common/icons/reduce.js +2 -3
- package/dist/common/icons/reset.js +2 -3
- package/dist/common/icons/save.js +2 -3
- package/dist/common/icons/save2.js +2 -3
- package/dist/common/icons/search.js +2 -3
- package/dist/common/icons/settings.js +2 -3
- package/dist/common/icons/share.js +2 -3
- package/dist/common/icons/speed.js +2 -3
- package/dist/common/icons/split.js +2 -3
- package/dist/common/icons/square-select.js +2 -3
- package/dist/common/icons/sun.js +2 -3
- package/dist/common/icons/sunrise.js +2 -3
- package/dist/common/icons/sunset.js +2 -3
- package/dist/common/icons/timeline-marker.js +2 -3
- package/dist/common/icons/trash.js +2 -3
- package/dist/common/icons/vert-dots.js +2 -3
- package/dist/common/icons/vert-three-dots.js +2 -3
- package/dist/common/icons/warning-sign.js +2 -3
- package/dist/common/icons/warning.js +2 -3
- package/dist/common/icons/zoom-in.js +2 -3
- package/dist/common/icons/zoom-out.js +2 -3
- package/dist/common/index.js +2 -3
- package/dist/common/item-selector/chickleted-input.js +2 -3
- package/dist/common/item-selector/dropdown-list.js +2 -3
- package/dist/common/item-selector/item-selector.js +2 -3
- package/dist/common/item-selector/typeahead.js +2 -3
- package/dist/common/layout-splitter.js +2 -3
- package/dist/common/line-chart.js +2 -3
- package/dist/common/loading-spinner.js +2 -3
- package/dist/common/modal.js +6 -7
- package/dist/common/portaled.js +2 -3
- package/dist/common/radius-legend.js +2 -3
- package/dist/common/range-brush.js +2 -3
- package/dist/common/range-plot.js +2 -3
- package/dist/common/range-slider-timeline-panel.js +2 -3
- package/dist/common/range-slider-timeline.js +2 -3
- package/dist/common/range-slider.js +2 -3
- package/dist/common/slider/slider-bar-handle.js +2 -3
- package/dist/common/slider/slider-handle.js +2 -3
- package/dist/common/slider/slider.js +2 -3
- package/dist/common/styled-components.d.ts +86 -83
- package/dist/common/styled-components.js +53 -45
- package/dist/common/time-range-slider.js +2 -3
- package/dist/common/time-slider-marker.js +2 -3
- package/dist/common/timeline-slider.js +2 -3
- package/dist/common/tippy-tooltip.js +2 -3
- package/dist/connect/with-local-selector.js +2 -3
- package/dist/container.js +4 -5
- package/dist/context.js +2 -3
- package/dist/dnd-context.js +2 -3
- package/dist/editor/editor.js +3 -4
- package/dist/editor/feature-action-panel.js +2 -3
- package/dist/effects/compact-color-picker.js +2 -3
- package/dist/effects/effect-configurator.js +17 -18
- package/dist/effects/effect-list.js +2 -3
- package/dist/effects/effect-manager.js +2 -3
- package/dist/effects/effect-panel-header.js +2 -3
- package/dist/effects/effect-panel.js +2 -3
- package/dist/effects/effect-time-configurator.js +18 -7
- package/dist/effects/effect-time-selector.js +2 -3
- package/dist/effects/effect-time-slider.js +2 -3
- package/dist/effects/effect-type-dropdown-list.js +2 -3
- package/dist/effects/effect-type-list-item.js +2 -3
- package/dist/effects/effect-type-selector.js +2 -3
- package/dist/effects/surface-fog-section.js +7 -8
- package/dist/effects/timezone-selector.js +2 -3
- package/dist/filter-animation-controller.js +2 -3
- package/dist/filters/filter-panels/filter-panel-with-field-select.js +2 -3
- package/dist/filters/filter-panels/filter-synced-dataset-panel.js +4 -5
- package/dist/filters/filter-panels/multi-select-filter-panel.js +2 -3
- package/dist/filters/filter-panels/new-filter-panel.js +2 -3
- package/dist/filters/filter-panels/polygon-filter-panel.js +2 -3
- package/dist/filters/filter-panels/range-filter-panel.js +2 -3
- package/dist/filters/filter-panels/single-select-filter-panel.js +2 -3
- package/dist/filters/filter-panels/time-range-filter-panel.js +2 -3
- package/dist/filters/polygon-filter.js +3 -4
- package/dist/filters/time-widget-settings.js +9 -10
- package/dist/filters/time-widget-top.js +2 -3
- package/dist/filters/time-widget.js +2 -3
- package/dist/geocoder/geocoder.js +6 -7
- package/dist/geocoder-panel.js +2 -3
- package/dist/hooks/use-cloud-list-provider.js +2 -3
- package/dist/hooks/use-fetch-raster-tile-metadata.js +2 -2
- package/dist/hooks/use-fetch-vector-tile-metadata.js +2 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +31 -3
- package/dist/kepler-gl.d.ts +1 -0
- package/dist/kepler-gl.js +3 -3
- package/dist/layer-animation-controller.js +2 -3
- package/dist/loading-indicator.d.ts +1 -0
- package/dist/loading-indicator.js +6 -4
- package/dist/map/annotations/annotation-control.js +2 -3
- package/dist/map/attribution.d.ts +52 -0
- package/dist/map/attribution.js +391 -0
- package/dist/map/effects/effect-control.js +2 -3
- package/dist/map/layer-hover-info.js +2 -3
- package/dist/map/lazy-tippy.js +2 -3
- package/dist/map/locale-panel.d.ts +1 -1
- package/dist/map/locale-panel.js +2 -3
- package/dist/map/map-control-panel.js +2 -3
- package/dist/map/map-control.d.ts +3 -0
- package/dist/map/map-control.js +1 -1
- package/dist/map/map-draw-panel.d.ts +1 -1
- package/dist/map/map-draw-panel.js +2 -3
- package/dist/map/map-legend-panel.d.ts +1 -1
- package/dist/map/map-legend-panel.js +9 -14
- package/dist/map/map-legend.js +2 -3
- package/dist/map/map-navigation-control.js +20 -4
- package/dist/map/map-popover.js +2 -3
- package/dist/map/map-scale.d.ts +11 -0
- package/dist/map/map-scale.js +162 -0
- package/dist/map/split-map-button.d.ts +4 -2
- package/dist/map/split-map-button.js +63 -46
- package/dist/map/toggle-3d-button.d.ts +8 -2
- package/dist/map/toggle-3d-button.js +79 -17
- package/dist/map-container.d.ts +6 -16
- package/dist/map-container.js +354 -240
- package/dist/map-view-state-context.d.ts +2 -0
- package/dist/map-view-state-context.js +2 -3
- package/dist/maps-layout.js +2 -3
- package/dist/modal-container.js +2 -3
- package/dist/modals/add-map-style-modal.js +49 -12
- package/dist/modals/cloud-components/cloud-header.js +2 -3
- package/dist/modals/cloud-components/cloud-item.spec.js +8 -8
- package/dist/modals/cloud-components/cloud-maps.spec.js +7 -7
- package/dist/modals/cloud-tile.js +5 -6
- package/dist/modals/data-table-modal.js +2 -3
- package/dist/modals/error-display.js +2 -3
- package/dist/modals/export-data-modal.js +2 -3
- package/dist/modals/export-image-modal.js +2 -3
- package/dist/modals/export-map-modal/export-json-map.js +2 -3
- package/dist/modals/export-video-modal.js +52 -10
- package/dist/modals/export-video-modal.spec.js +83 -83
- package/dist/modals/globe-export-video-container.d.ts +117 -0
- package/dist/modals/globe-export-video-container.js +626 -0
- package/dist/modals/globe-export-video-preview.d.ts +41 -0
- package/dist/modals/globe-export-video-preview.js +152 -0
- package/dist/modals/hubble-utils.d.ts +13 -1
- package/dist/modals/hubble-utils.js +164 -36
- package/dist/modals/image-modal-container.js +2 -3
- package/dist/modals/load-data-modal.js +2 -3
- package/dist/modals/load-storage-map.js +2 -3
- package/dist/modals/load-storage-map.spec.js +10 -10
- package/dist/modals/modal-tabs.js +2 -3
- package/dist/modals/overwrite-map-modal.js +2 -3
- package/dist/modals/save-map-modal.js +2 -3
- package/dist/modals/save-map-modal.spec.js +16 -16
- package/dist/modals/share-map-modal.js +2 -3
- package/dist/modals/share-map-modal.spec.js +9 -9
- package/dist/modals/swipe-composite-utils.d.ts +1 -1
- package/dist/modals/swipe-composite-utils.js +11 -1
- package/dist/modals/swipe-export-settings.d.ts +1 -0
- package/dist/modals/swipe-export-settings.js +8 -6
- package/dist/modals/swipe-export-video-container.d.ts +6 -0
- package/dist/modals/swipe-export-video-container.js +27 -4
- package/dist/modals/swipe-export-video-preview.d.ts +2 -0
- package/dist/modals/swipe-export-video-preview.js +80 -18
- package/dist/modals/tilesets-modals/load-data-footer.js +2 -3
- package/dist/modals/tilesets-modals/load-tileset.js +2 -3
- package/dist/modals/tilesets-modals/tileset-bitmap-form.js +18 -19
- package/dist/modals/tilesets-modals/tileset-raster-form.js +5 -6
- package/dist/modals/tilesets-modals/tileset-tile3d-form.js +13 -14
- package/dist/modals/tilesets-modals/tileset-vector-form.js +7 -8
- package/dist/modals/tilesets-modals/tileset-wms-form.js +11 -12
- package/dist/notification-panel/notification-item.js +2 -3
- package/dist/plot-container.js +2 -3
- package/dist/side-panel/add-by-dataset-button.js +2 -3
- package/dist/side-panel/common/dataset-title.js +2 -3
- package/dist/side-panel/common/source-data-selector-content.js +2 -3
- package/dist/side-panel/common/source-selector.js +2 -3
- package/dist/side-panel/filter-manager.js +2 -3
- package/dist/side-panel/filter-panel/filter-panel-header.js +2 -3
- package/dist/side-panel/filter-panel/filter-panel.js +2 -3
- package/dist/side-panel/interaction-panel/interaction-panel.js +2 -3
- package/dist/side-panel/interaction-panel/tooltip-config/tooltip-chicklet.js +2 -3
- package/dist/side-panel/interaction-panel/tooltip-config.js +2 -3
- package/dist/side-panel/layer-manager.d.ts +2 -1
- package/dist/side-panel/layer-manager.js +6 -4
- package/dist/side-panel/layer-panel/channel-by-value-selector.js +2 -3
- package/dist/side-panel/layer-panel/color-breaks-panel.js +2 -3
- package/dist/side-panel/layer-panel/color-palette.js +2 -3
- package/dist/side-panel/layer-panel/color-range-selector.js +2 -3
- package/dist/side-panel/layer-panel/color-scale-selector.js +2 -3
- package/dist/side-panel/layer-panel/color-selector.js +2 -3
- package/dist/side-panel/layer-panel/column-selector.js +2 -3
- package/dist/side-panel/layer-panel/custom-palette.js +41 -42
- package/dist/side-panel/layer-panel/custom-picker.js +2 -3
- package/dist/side-panel/layer-panel/dataset-layer-group.d.ts +2 -1
- package/dist/side-panel/layer-panel/dataset-layer-group.js +6 -5
- package/dist/side-panel/layer-panel/dataset-layer-section.d.ts +2 -1
- package/dist/side-panel/layer-panel/dataset-layer-section.js +5 -4
- package/dist/side-panel/layer-panel/dimension-scale-selector.js +2 -3
- package/dist/side-panel/layer-panel/layer-color-selector.js +2 -3
- package/dist/side-panel/layer-panel/layer-column-config.js +2 -3
- package/dist/side-panel/layer-panel/layer-column-mode-config.js +2 -3
- package/dist/side-panel/layer-panel/layer-config-group.js +2 -3
- package/dist/side-panel/layer-panel/layer-configurator.js +51 -52
- package/dist/side-panel/layer-panel/layer-group-header.js +2 -3
- package/dist/side-panel/layer-panel/layer-list.d.ts +2 -1
- package/dist/side-panel/layer-panel/layer-list.js +8 -7
- package/dist/side-panel/layer-panel/layer-panel-header.d.ts +1 -1
- package/dist/side-panel/layer-panel/layer-panel-header.js +3 -4
- package/dist/side-panel/layer-panel/layer-panel.d.ts +2 -1
- package/dist/side-panel/layer-panel/layer-panel.js +15 -6
- package/dist/side-panel/layer-panel/layer-type-dropdown-list.js +2 -3
- package/dist/side-panel/layer-panel/layer-type-list-item.js +2 -3
- package/dist/side-panel/layer-panel/layer-type-selector.js +2 -3
- package/dist/side-panel/layer-panel/raster-tile-layer-configurator.js +4 -5
- package/dist/side-panel/layer-panel/scenegraph-model-selector.js +2 -3
- package/dist/side-panel/layer-panel/single-color-palette.js +2 -3
- package/dist/side-panel/layer-panel/text-label-panel.js +2 -3
- package/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +2 -3
- package/dist/side-panel/layer-panel/vis-config-slider.js +2 -3
- package/dist/side-panel/map-manager.d.ts +9 -3
- package/dist/side-panel/map-manager.js +13 -7
- package/dist/side-panel/map-style-panel/globe-config-panel.d.ts +15 -0
- package/dist/side-panel/map-style-panel/globe-config-panel.js +269 -0
- package/dist/side-panel/map-style-panel/map-layer-group-color-picker.js +2 -3
- package/dist/side-panel/map-style-panel/map-layer-group-item.js +2 -3
- package/dist/side-panel/panel-header.js +9 -10
- package/dist/side-panel/panel-toggle.js +2 -3
- package/dist/side-panel/panel-view-list-toggle.js +2 -3
- package/dist/side-panel/side-bar.js +2 -3
- package/dist/side-panel.js +4 -3
- package/dist/types.d.ts +2 -1
- package/dist/types.js +1 -1
- package/package.json +23 -23
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import React, { Component, RefObject } from 'react';
|
|
2
|
+
import type { Deck, DeckProps, MapViewState } from '@deck.gl/core';
|
|
3
|
+
import { DeckAdapter } from '@hubble.gl/core';
|
|
4
|
+
export type GlobeExportVideoPreviewProps = {
|
|
5
|
+
mapData: any;
|
|
6
|
+
resolution: [number, number];
|
|
7
|
+
exportVideoWidth: number;
|
|
8
|
+
deckProps?: DeckProps;
|
|
9
|
+
viewState: MapViewState;
|
|
10
|
+
adapter: DeckAdapter;
|
|
11
|
+
rendering: boolean;
|
|
12
|
+
saving: boolean;
|
|
13
|
+
setViewState: (viewState: MapViewState) => void;
|
|
14
|
+
durationMs: number;
|
|
15
|
+
/** CSS color string for the area the globe does not cover. */
|
|
16
|
+
backgroundColor: string;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Single-canvas video export preview for globe mode.
|
|
20
|
+
*
|
|
21
|
+
* hubble's built-in preview cannot be used for globe mode: in its
|
|
22
|
+
* `disableBaseMap` branch it renders a bare <DeckGL> without a viewState and
|
|
23
|
+
* never wires up the frame-capture loop (that loop is driven by the mapbox
|
|
24
|
+
* 'render' event, which does not exist without a base map). This component
|
|
25
|
+
* renders the globe deck directly with a valid, controlled viewState so the
|
|
26
|
+
* GlobeView controller initializes correctly (no MapState/GlobeState assert),
|
|
27
|
+
* stays interactive, and exposes the deck canvas so the parent container can
|
|
28
|
+
* drive its own capture loop (mirrors the swipe export approach).
|
|
29
|
+
*/
|
|
30
|
+
export declare class GlobeExportVideoPreview extends Component<GlobeExportVideoPreviewProps> {
|
|
31
|
+
deckRef: RefObject<Deck | null>;
|
|
32
|
+
_getContainer(): {
|
|
33
|
+
height: number;
|
|
34
|
+
width: number;
|
|
35
|
+
};
|
|
36
|
+
/** Expose the deck canvas so the parent container can capture frames. */
|
|
37
|
+
getCanvas(): HTMLCanvasElement | null;
|
|
38
|
+
/** All layers loaded — used to gate the first capture frame. */
|
|
39
|
+
areLayersLoaded(): boolean;
|
|
40
|
+
render(): React.JSX.Element;
|
|
41
|
+
}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.GlobeExportVideoPreview = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
13
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
14
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
15
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
17
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
18
|
+
var _react2 = _interopRequireDefault(require("@deck.gl/react"));
|
|
19
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
20
|
+
var _templateObject; // SPDX-License-Identifier: MIT
|
|
21
|
+
// Copyright contributors to the kepler.gl project
|
|
22
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
23
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
24
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
25
|
+
var PreviewContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n width: ", "px;\n height: ", "px;\n position: relative;\n background: ", ";\n"])), function (props) {
|
|
26
|
+
return props.$width;
|
|
27
|
+
}, function (props) {
|
|
28
|
+
return props.$height;
|
|
29
|
+
}, function (props) {
|
|
30
|
+
return props.$background;
|
|
31
|
+
});
|
|
32
|
+
/**
|
|
33
|
+
* Single-canvas video export preview for globe mode.
|
|
34
|
+
*
|
|
35
|
+
* hubble's built-in preview cannot be used for globe mode: in its
|
|
36
|
+
* `disableBaseMap` branch it renders a bare <DeckGL> without a viewState and
|
|
37
|
+
* never wires up the frame-capture loop (that loop is driven by the mapbox
|
|
38
|
+
* 'render' event, which does not exist without a base map). This component
|
|
39
|
+
* renders the globe deck directly with a valid, controlled viewState so the
|
|
40
|
+
* GlobeView controller initializes correctly (no MapState/GlobeState assert),
|
|
41
|
+
* stays interactive, and exposes the deck canvas so the parent container can
|
|
42
|
+
* drive its own capture loop (mirrors the swipe export approach).
|
|
43
|
+
*/
|
|
44
|
+
var GlobeExportVideoPreview = exports.GlobeExportVideoPreview = /*#__PURE__*/function (_Component) {
|
|
45
|
+
function GlobeExportVideoPreview() {
|
|
46
|
+
var _this;
|
|
47
|
+
(0, _classCallCheck2["default"])(this, GlobeExportVideoPreview);
|
|
48
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
49
|
+
args[_key] = arguments[_key];
|
|
50
|
+
}
|
|
51
|
+
_this = _callSuper(this, GlobeExportVideoPreview, [].concat(args));
|
|
52
|
+
(0, _defineProperty2["default"])(_this, "deckRef", /*#__PURE__*/_react["default"].createRef());
|
|
53
|
+
return _this;
|
|
54
|
+
}
|
|
55
|
+
(0, _inherits2["default"])(GlobeExportVideoPreview, _Component);
|
|
56
|
+
return (0, _createClass2["default"])(GlobeExportVideoPreview, [{
|
|
57
|
+
key: "_getContainer",
|
|
58
|
+
value: function _getContainer() {
|
|
59
|
+
var _this$props = this.props,
|
|
60
|
+
exportVideoWidth = _this$props.exportVideoWidth,
|
|
61
|
+
resolution = _this$props.resolution;
|
|
62
|
+
var aspectRatio = resolution[0] / resolution[1];
|
|
63
|
+
return {
|
|
64
|
+
height: exportVideoWidth / aspectRatio,
|
|
65
|
+
width: exportVideoWidth
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/** Expose the deck canvas so the parent container can capture frames. */
|
|
70
|
+
}, {
|
|
71
|
+
key: "getCanvas",
|
|
72
|
+
value: function getCanvas() {
|
|
73
|
+
var _deck$getCanvas;
|
|
74
|
+
var deck = this.deckRef.current;
|
|
75
|
+
return deck && ((_deck$getCanvas = deck.getCanvas) === null || _deck$getCanvas === void 0 ? void 0 : _deck$getCanvas.call(deck)) || null;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/** All layers loaded — used to gate the first capture frame. */
|
|
79
|
+
}, {
|
|
80
|
+
key: "areLayersLoaded",
|
|
81
|
+
value: function areLayersLoaded() {
|
|
82
|
+
var deck = this.deckRef.current;
|
|
83
|
+
if (!deck) return false;
|
|
84
|
+
var layers = deck.props.layers || [];
|
|
85
|
+
return layers.length > 0 && layers.every(function (layer) {
|
|
86
|
+
return layer.isLoaded;
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
}, {
|
|
90
|
+
key: "render",
|
|
91
|
+
value: function render() {
|
|
92
|
+
var _this2 = this;
|
|
93
|
+
var _this$props2 = this.props,
|
|
94
|
+
adapter = _this$props2.adapter,
|
|
95
|
+
deckProps = _this$props2.deckProps,
|
|
96
|
+
viewState = _this$props2.viewState,
|
|
97
|
+
setViewState = _this$props2.setViewState,
|
|
98
|
+
resolution = _this$props2.resolution,
|
|
99
|
+
exportVideoWidth = _this$props2.exportVideoWidth,
|
|
100
|
+
backgroundColor = _this$props2.backgroundColor;
|
|
101
|
+
var _this$_getContainer = this._getContainer(),
|
|
102
|
+
width = _this$_getContainer.width,
|
|
103
|
+
height = _this$_getContainer.height;
|
|
104
|
+
var deck = this.deckRef.current;
|
|
105
|
+
|
|
106
|
+
// adapter.getProps injects `_animate` (and toggles `controller` off while
|
|
107
|
+
// recording) so hubble's KeplerAnimation can drive the camera. Layers,
|
|
108
|
+
// views, controller bounds and initialViewState come from `deckProps`
|
|
109
|
+
// (see getHubbleDeckGlProps). A controlled `viewState` keeps the preview in
|
|
110
|
+
// sync with the animated camera and prevents the GlobeState assert.
|
|
111
|
+
var adapterProps = adapter.getProps({
|
|
112
|
+
deck: deck,
|
|
113
|
+
extraProps: deckProps
|
|
114
|
+
});
|
|
115
|
+
|
|
116
|
+
// Render the drawing buffer at the true export resolution regardless of the
|
|
117
|
+
// small CSS preview size. deck.gl's MSAA (antialias defaults to true when
|
|
118
|
+
// deck owns the canvas) only smooths edges at the drawing-buffer resolution,
|
|
119
|
+
// so if the buffer were the small preview size the globe silhouette would
|
|
120
|
+
// look pixelated once the captured frame is scaled up to the output size.
|
|
121
|
+
// Passing an explicit numeric `useDevicePixels` sizes the buffer to
|
|
122
|
+
// width * ratio === exportVideoWidth * (resolution / exportVideoWidth) ===
|
|
123
|
+
// resolution, and is far more reliable than mutating window.devicePixelRatio.
|
|
124
|
+
var pixelRatio = Math.max(1, resolution[0] / exportVideoWidth);
|
|
125
|
+
return /*#__PURE__*/_react["default"].createElement(PreviewContainer, {
|
|
126
|
+
$width: width,
|
|
127
|
+
$height: height,
|
|
128
|
+
$background: backgroundColor
|
|
129
|
+
}, /*#__PURE__*/_react["default"].createElement(_react2["default"], (0, _extends2["default"])({
|
|
130
|
+
ref: function ref(_ref2) {
|
|
131
|
+
_this2.deckRef.current = (_ref2 === null || _ref2 === void 0 ? void 0 : _ref2.deck) || null;
|
|
132
|
+
},
|
|
133
|
+
deviceProps: {
|
|
134
|
+
type: 'webgl',
|
|
135
|
+
webgl: {
|
|
136
|
+
preserveDrawingBuffer: true
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}, adapterProps, {
|
|
140
|
+
viewState: viewState,
|
|
141
|
+
onViewStateChange: function onViewStateChange(_ref) {
|
|
142
|
+
var vs = _ref.viewState;
|
|
143
|
+
return setViewState(vs);
|
|
144
|
+
},
|
|
145
|
+
useDevicePixels: pixelRatio,
|
|
146
|
+
width: width,
|
|
147
|
+
height: height
|
|
148
|
+
})));
|
|
149
|
+
}
|
|
150
|
+
}]);
|
|
151
|
+
}(_react.Component);
|
|
152
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3QyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9zdHlsZWRDb21wb25lbnRzIiwiX3RlbXBsYXRlT2JqZWN0IiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJfY2FsbFN1cGVyIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJhcHBseSIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiUHJldmlld0NvbnRhaW5lciIsInN0eWxlZCIsImRpdiIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCIkd2lkdGgiLCIkaGVpZ2h0IiwiJGJhY2tncm91bmQiLCJHbG9iZUV4cG9ydFZpZGVvUHJldmlldyIsImV4cG9ydHMiLCJfQ29tcG9uZW50IiwiX3RoaXMiLCJfY2xhc3NDYWxsQ2hlY2syIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjb25jYXQiLCJfZGVmaW5lUHJvcGVydHkyIiwiUmVhY3QiLCJjcmVhdGVSZWYiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsInZhbHVlIiwiX2dldENvbnRhaW5lciIsIl90aGlzJHByb3BzIiwiZXhwb3J0VmlkZW9XaWR0aCIsInJlc29sdXRpb24iLCJhc3BlY3RSYXRpbyIsImhlaWdodCIsIndpZHRoIiwiZ2V0Q2FudmFzIiwiX2RlY2skZ2V0Q2FudmFzIiwiZGVjayIsImRlY2tSZWYiLCJjdXJyZW50IiwiYXJlTGF5ZXJzTG9hZGVkIiwibGF5ZXJzIiwiZXZlcnkiLCJsYXllciIsImlzTG9hZGVkIiwicmVuZGVyIiwiX3RoaXMyIiwiX3RoaXMkcHJvcHMyIiwiYWRhcHRlciIsImRlY2tQcm9wcyIsInZpZXdTdGF0ZSIsInNldFZpZXdTdGF0ZSIsImJhY2tncm91bmRDb2xvciIsIl90aGlzJF9nZXRDb250YWluZXIiLCJhZGFwdGVyUHJvcHMiLCJnZXRQcm9wcyIsImV4dHJhUHJvcHMiLCJwaXhlbFJhdGlvIiwiTWF0aCIsIm1heCIsImNyZWF0ZUVsZW1lbnQiLCJfZXh0ZW5kczIiLCJyZWYiLCJkZXZpY2VQcm9wcyIsInR5cGUiLCJ3ZWJnbCIsInByZXNlcnZlRHJhd2luZ0J1ZmZlciIsIm9uVmlld1N0YXRlQ2hhbmdlIiwiX3JlZiIsInZzIiwidXNlRGV2aWNlUGl4ZWxzIiwiQ29tcG9uZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGFscy9nbG9iZS1leHBvcnQtdmlkZW8tcHJldmlldy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50LCBSZWZPYmplY3R9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBEZWNrR0wgZnJvbSAnQGRlY2suZ2wvcmVhY3QnO1xuaW1wb3J0IHR5cGUge0RlY2ssIERlY2tQcm9wcywgTWFwVmlld1N0YXRlfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuXG5pbXBvcnQge0RlY2tBZGFwdGVyfSBmcm9tICdAaHViYmxlLmdsL2NvcmUnO1xuXG5jb25zdCBQcmV2aWV3Q29udGFpbmVyID0gc3R5bGVkLmRpdjx7JHdpZHRoOiBudW1iZXI7ICRoZWlnaHQ6IG51bWJlcjsgJGJhY2tncm91bmQ6IHN0cmluZ30+YFxuICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy4kd2lkdGh9cHg7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy4kaGVpZ2h0fXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMuJGJhY2tncm91bmR9O1xuYDtcblxuZXhwb3J0IHR5cGUgR2xvYmVFeHBvcnRWaWRlb1ByZXZpZXdQcm9wcyA9IHtcbiAgbWFwRGF0YTogYW55O1xuICByZXNvbHV0aW9uOiBbbnVtYmVyLCBudW1iZXJdO1xuICBleHBvcnRWaWRlb1dpZHRoOiBudW1iZXI7XG4gIGRlY2tQcm9wcz86IERlY2tQcm9wcztcbiAgdmlld1N0YXRlOiBNYXBWaWV3U3RhdGU7XG4gIGFkYXB0ZXI6IERlY2tBZGFwdGVyO1xuICByZW5kZXJpbmc6IGJvb2xlYW47XG4gIHNhdmluZzogYm9vbGVhbjtcbiAgc2V0Vmlld1N0YXRlOiAodmlld1N0YXRlOiBNYXBWaWV3U3RhdGUpID0+IHZvaWQ7XG4gIGR1cmF0aW9uTXM6IG51bWJlcjtcbiAgLyoqIENTUyBjb2xvciBzdHJpbmcgZm9yIHRoZSBhcmVhIHRoZSBnbG9iZSBkb2VzIG5vdCBjb3Zlci4gKi9cbiAgYmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG59O1xuXG4vKipcbiAqIFNpbmdsZS1jYW52YXMgdmlkZW8gZXhwb3J0IHByZXZpZXcgZm9yIGdsb2JlIG1vZGUuXG4gKlxuICogaHViYmxlJ3MgYnVpbHQtaW4gcHJldmlldyBjYW5ub3QgYmUgdXNlZCBmb3IgZ2xvYmUgbW9kZTogaW4gaXRzXG4gKiBgZGlzYWJsZUJhc2VNYXBgIGJyYW5jaCBpdCByZW5kZXJzIGEgYmFyZSA8RGVja0dMPiB3aXRob3V0IGEgdmlld1N0YXRlIGFuZFxuICogbmV2ZXIgd2lyZXMgdXAgdGhlIGZyYW1lLWNhcHR1cmUgbG9vcCAodGhhdCBsb29wIGlzIGRyaXZlbiBieSB0aGUgbWFwYm94XG4gKiAncmVuZGVyJyBldmVudCwgd2hpY2ggZG9lcyBub3QgZXhpc3Qgd2l0aG91dCBhIGJhc2UgbWFwKS4gVGhpcyBjb21wb25lbnRcbiAqIHJlbmRlcnMgdGhlIGdsb2JlIGRlY2sgZGlyZWN0bHkgd2l0aCBhIHZhbGlkLCBjb250cm9sbGVkIHZpZXdTdGF0ZSBzbyB0aGVcbiAqIEdsb2JlVmlldyBjb250cm9sbGVyIGluaXRpYWxpemVzIGNvcnJlY3RseSAobm8gTWFwU3RhdGUvR2xvYmVTdGF0ZSBhc3NlcnQpLFxuICogc3RheXMgaW50ZXJhY3RpdmUsIGFuZCBleHBvc2VzIHRoZSBkZWNrIGNhbnZhcyBzbyB0aGUgcGFyZW50IGNvbnRhaW5lciBjYW5cbiAqIGRyaXZlIGl0cyBvd24gY2FwdHVyZSBsb29wIChtaXJyb3JzIHRoZSBzd2lwZSBleHBvcnQgYXBwcm9hY2gpLlxuICovXG5leHBvcnQgY2xhc3MgR2xvYmVFeHBvcnRWaWRlb1ByZXZpZXcgZXh0ZW5kcyBDb21wb25lbnQ8R2xvYmVFeHBvcnRWaWRlb1ByZXZpZXdQcm9wcz4ge1xuICBkZWNrUmVmOiBSZWZPYmplY3Q8RGVjayB8IG51bGw+ID0gUmVhY3QuY3JlYXRlUmVmPERlY2sgfCBudWxsPigpO1xuXG4gIF9nZXRDb250YWluZXIoKSB7XG4gICAgY29uc3Qge2V4cG9ydFZpZGVvV2lkdGgsIHJlc29sdXRpb259ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCBhc3BlY3RSYXRpbyA9IHJlc29sdXRpb25bMF0gLyByZXNvbHV0aW9uWzFdO1xuICAgIHJldHVybiB7aGVpZ2h0OiBleHBvcnRWaWRlb1dpZHRoIC8gYXNwZWN0UmF0aW8sIHdpZHRoOiBleHBvcnRWaWRlb1dpZHRofTtcbiAgfVxuXG4gIC8qKiBFeHBvc2UgdGhlIGRlY2sgY2FudmFzIHNvIHRoZSBwYXJlbnQgY29udGFpbmVyIGNhbiBjYXB0dXJlIGZyYW1lcy4gKi9cbiAgZ2V0Q2FudmFzKCk6IEhUTUxDYW52YXNFbGVtZW50IHwgbnVsbCB7XG4gICAgY29uc3QgZGVjayA9IHRoaXMuZGVja1JlZi5jdXJyZW50IGFzIGFueTtcbiAgICByZXR1cm4gKGRlY2sgJiYgZGVjay5nZXRDYW52YXM/LigpKSB8fCBudWxsO1xuICB9XG5cbiAgLyoqIEFsbCBsYXllcnMgbG9hZGVkIOKAlCB1c2VkIHRvIGdhdGUgdGhlIGZpcnN0IGNhcHR1cmUgZnJhbWUuICovXG4gIGFyZUxheWVyc0xvYWRlZCgpOiBib29sZWFuIHtcbiAgICBjb25zdCBkZWNrID0gdGhpcy5kZWNrUmVmLmN1cnJlbnQ7XG4gICAgaWYgKCFkZWNrKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgbGF5ZXJzID0gZGVjay5wcm9wcy5sYXllcnMgfHwgW107XG4gICAgcmV0dXJuIGxheWVycy5sZW5ndGggPiAwICYmIGxheWVycy5ldmVyeSgobGF5ZXI6IGFueSkgPT4gbGF5ZXIuaXNMb2FkZWQpO1xuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHthZGFwdGVyLCBkZWNrUHJvcHMsIHZpZXdTdGF0ZSwgc2V0Vmlld1N0YXRlLCByZXNvbHV0aW9uLCBleHBvcnRWaWRlb1dpZHRoLCBiYWNrZ3JvdW5kQ29sb3J9ID1cbiAgICAgIHRoaXMucHJvcHM7XG4gICAgY29uc3Qge3dpZHRoLCBoZWlnaHR9ID0gdGhpcy5fZ2V0Q29udGFpbmVyKCk7XG4gICAgY29uc3QgZGVjayA9IHRoaXMuZGVja1JlZi5jdXJyZW50O1xuXG4gICAgLy8gYWRhcHRlci5nZXRQcm9wcyBpbmplY3RzIGBfYW5pbWF0ZWAgKGFuZCB0b2dnbGVzIGBjb250cm9sbGVyYCBvZmYgd2hpbGVcbiAgICAvLyByZWNvcmRpbmcpIHNvIGh1YmJsZSdzIEtlcGxlckFuaW1hdGlvbiBjYW4gZHJpdmUgdGhlIGNhbWVyYS4gTGF5ZXJzLFxuICAgIC8vIHZpZXdzLCBjb250cm9sbGVyIGJvdW5kcyBhbmQgaW5pdGlhbFZpZXdTdGF0ZSBjb21lIGZyb20gYGRlY2tQcm9wc2BcbiAgICAvLyAoc2VlIGdldEh1YmJsZURlY2tHbFByb3BzKS4gQSBjb250cm9sbGVkIGB2aWV3U3RhdGVgIGtlZXBzIHRoZSBwcmV2aWV3IGluXG4gICAgLy8gc3luYyB3aXRoIHRoZSBhbmltYXRlZCBjYW1lcmEgYW5kIHByZXZlbnRzIHRoZSBHbG9iZVN0YXRlIGFzc2VydC5cbiAgICBjb25zdCBhZGFwdGVyUHJvcHMgPSBhZGFwdGVyLmdldFByb3BzKHtcbiAgICAgIGRlY2s6IGRlY2sgYXMgYW55LFxuICAgICAgZXh0cmFQcm9wczogZGVja1Byb3BzIGFzIGFueVxuICAgIH0pIGFzIGFueTtcblxuICAgIC8vIFJlbmRlciB0aGUgZHJhd2luZyBidWZmZXIgYXQgdGhlIHRydWUgZXhwb3J0IHJlc29sdXRpb24gcmVnYXJkbGVzcyBvZiB0aGVcbiAgICAvLyBzbWFsbCBDU1MgcHJldmlldyBzaXplLiBkZWNrLmdsJ3MgTVNBQSAoYW50aWFsaWFzIGRlZmF1bHRzIHRvIHRydWUgd2hlblxuICAgIC8vIGRlY2sgb3ducyB0aGUgY2FudmFzKSBvbmx5IHNtb290aHMgZWRnZXMgYXQgdGhlIGRyYXdpbmctYnVmZmVyIHJlc29sdXRpb24sXG4gICAgLy8gc28gaWYgdGhlIGJ1ZmZlciB3ZXJlIHRoZSBzbWFsbCBwcmV2aWV3IHNpemUgdGhlIGdsb2JlIHNpbGhvdWV0dGUgd291bGRcbiAgICAvLyBsb29rIHBpeGVsYXRlZCBvbmNlIHRoZSBjYXB0dXJlZCBmcmFtZSBpcyBzY2FsZWQgdXAgdG8gdGhlIG91dHB1dCBzaXplLlxuICAgIC8vIFBhc3NpbmcgYW4gZXhwbGljaXQgbnVtZXJpYyBgdXNlRGV2aWNlUGl4ZWxzYCBzaXplcyB0aGUgYnVmZmVyIHRvXG4gICAgLy8gd2lkdGggKiByYXRpbyA9PT0gZXhwb3J0VmlkZW9XaWR0aCAqIChyZXNvbHV0aW9uIC8gZXhwb3J0VmlkZW9XaWR0aCkgPT09XG4gICAgLy8gcmVzb2x1dGlvbiwgYW5kIGlzIGZhciBtb3JlIHJlbGlhYmxlIHRoYW4gbXV0YXRpbmcgd2luZG93LmRldmljZVBpeGVsUmF0aW8uXG4gICAgY29uc3QgcGl4ZWxSYXRpbyA9IE1hdGgubWF4KDEsIHJlc29sdXRpb25bMF0gLyBleHBvcnRWaWRlb1dpZHRoKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8UHJldmlld0NvbnRhaW5lciAkd2lkdGg9e3dpZHRofSAkaGVpZ2h0PXtoZWlnaHR9ICRiYWNrZ3JvdW5kPXtiYWNrZ3JvdW5kQ29sb3J9PlxuICAgICAgICA8RGVja0dMXG4gICAgICAgICAgcmVmPXtyZWYgPT4ge1xuICAgICAgICAgICAgdGhpcy5kZWNrUmVmLmN1cnJlbnQgPSAocmVmPy5kZWNrIGFzIGFueSkgfHwgbnVsbDtcbiAgICAgICAgICB9fVxuICAgICAgICAgIGRldmljZVByb3BzPXt7dHlwZTogJ3dlYmdsJywgd2ViZ2w6IHtwcmVzZXJ2ZURyYXdpbmdCdWZmZXI6IHRydWV9fX1cbiAgICAgICAgICB7Li4uYWRhcHRlclByb3BzfVxuICAgICAgICAgIHZpZXdTdGF0ZT17dmlld1N0YXRlfVxuICAgICAgICAgIG9uVmlld1N0YXRlQ2hhbmdlPXsoe3ZpZXdTdGF0ZTogdnN9OiBhbnkpID0+IHNldFZpZXdTdGF0ZSh2cyl9XG4gICAgICAgICAgdXNlRGV2aWNlUGl4ZWxzPXtwaXhlbFJhdGlvfVxuICAgICAgICAgIHdpZHRoPXt3aWR0aH1cbiAgICAgICAgICBoZWlnaHQ9e2hlaWdodH1cbiAgICAgICAgLz5cbiAgICAgIDwvUHJldmlld0NvbnRhaW5lcj5cbiAgICApO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxpQkFBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBQXVDLElBQUFJLGVBQUEsRUFOdkM7QUFDQTtBQUFBLFNBQUFMLHdCQUFBTSxDQUFBLEVBQUFDLENBQUEsNkJBQUFDLE9BQUEsTUFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFF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
|
|
@@ -21,7 +21,19 @@ export declare function getTimeRangeFilterKeyframes({ filter, timings }: {
|
|
|
21
21
|
}): TimeRangeFilterKeyframes;
|
|
22
22
|
export declare function getBeforeLayerId(topMapStyle: any, bottomMapStyle: any): MapboxLayerRef | null;
|
|
23
23
|
export declare function getStaticMapProps(keplerState: KeplerState, onViewChange: (viewState: Record<string, any>) => void, mapboxApiAccessToken: string, mapboxApiUrl?: string): Record<string, any>;
|
|
24
|
-
export declare function getHubbleDeckGlProps(keplerState: KeplerState,
|
|
24
|
+
export declare function getHubbleDeckGlProps(keplerState: KeplerState, mapboxApiAccessToken: string, mapboxApiUrl?: string): Record<string, any>;
|
|
25
|
+
/**
|
|
26
|
+
* Build a fresh set of globe layers (base + data + top) for a given split-map
|
|
27
|
+
* index. Used by the swipe export preview, which mounts two independent Deck
|
|
28
|
+
* instances: each side needs its OWN layer instances (deck.gl Layer objects are
|
|
29
|
+
* stateful and bound to a single Deck) and its own `mapIndex` so the split-map
|
|
30
|
+
* layer visibility is respected on each half of the swipe.
|
|
31
|
+
*/
|
|
32
|
+
export declare function getGlobeExportLayers(keplerState: KeplerState, { mapIndex, mapboxApiAccessToken, mapboxApiUrl }: {
|
|
33
|
+
mapIndex: number;
|
|
34
|
+
mapboxApiAccessToken?: string;
|
|
35
|
+
mapboxApiUrl?: string;
|
|
36
|
+
}): (import("@kepler.gl/layers").Layer | import("@deck.gl/core").Layer<{}>)[];
|
|
25
37
|
export declare function getAnimatableFilters(keplerState: KeplerState): TimeRangeFilter[];
|
|
26
38
|
export declare function scaleToVideoExport(viewState: MapViewState, container: {
|
|
27
39
|
width: number;
|