@mapsight/ui 7.0.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/README.md +3 -0
- package/dist/components/app.d.ts +6 -0
- package/dist/components/app.d.ts.map +1 -0
- package/dist/components/app.js +68 -0
- package/dist/components/app.js.map +1 -0
- package/dist/components/close-overlay-button.d.ts +8 -0
- package/dist/components/close-overlay-button.d.ts.map +1 -0
- package/dist/components/close-overlay-button.js +7 -0
- package/dist/components/close-overlay-button.js.map +1 -0
- package/dist/components/feature-details-content/feature-details-content-inner.d.ts +18 -0
- package/dist/components/feature-details-content/feature-details-content-inner.d.ts.map +1 -0
- package/dist/components/feature-details-content/feature-details-content-inner.js +47 -0
- package/dist/components/feature-details-content/feature-details-content-inner.js.map +1 -0
- package/dist/components/feature-details-content/feature-details-content.d.ts +9 -0
- package/dist/components/feature-details-content/feature-details-content.d.ts.map +1 -0
- package/dist/components/feature-details-content/feature-details-content.js +99 -0
- package/dist/components/feature-details-content/feature-details-content.js.map +1 -0
- package/dist/components/feature-details-content/index.d.ts +14 -0
- package/dist/components/feature-details-content/index.d.ts.map +1 -0
- package/dist/components/feature-details-content/index.js +11 -0
- package/dist/components/feature-details-content/index.js.map +1 -0
- package/dist/components/feature-details-content/share-feature-link-modal.d.ts +8 -0
- package/dist/components/feature-details-content/share-feature-link-modal.d.ts.map +1 -0
- package/dist/components/feature-details-content/share-feature-link-modal.js +14 -0
- package/dist/components/feature-details-content/share-feature-link-modal.js.map +1 -0
- package/dist/components/feature-list/content.d.ts +3 -0
- package/dist/components/feature-list/content.d.ts.map +1 -0
- package/dist/components/feature-list/content.js +17 -0
- package/dist/components/feature-list/content.js.map +1 -0
- package/dist/components/feature-list/context.d.ts +16 -0
- package/dist/components/feature-list/context.d.ts.map +1 -0
- package/dist/components/feature-list/context.js +13 -0
- package/dist/components/feature-list/context.js.map +1 -0
- package/dist/components/feature-list/empty-message.d.ts +7 -0
- package/dist/components/feature-list/empty-message.d.ts.map +1 -0
- package/dist/components/feature-list/empty-message.js +10 -0
- package/dist/components/feature-list/empty-message.js.map +1 -0
- package/dist/components/feature-list/filter.d.ts +4 -0
- package/dist/components/feature-list/filter.d.ts.map +1 -0
- package/dist/components/feature-list/filter.js +26 -0
- package/dist/components/feature-list/filter.js.map +1 -0
- package/dist/components/feature-list/footer.d.ts +6 -0
- package/dist/components/feature-list/footer.d.ts.map +1 -0
- package/dist/components/feature-list/footer.js +6 -0
- package/dist/components/feature-list/footer.js.map +1 -0
- package/dist/components/feature-list/grouped-content.d.ts +8 -0
- package/dist/components/feature-list/grouped-content.d.ts.map +1 -0
- package/dist/components/feature-list/grouped-content.js +31 -0
- package/dist/components/feature-list/grouped-content.js.map +1 -0
- package/dist/components/feature-list/header.d.ts +6 -0
- package/dist/components/feature-list/header.d.ts.map +1 -0
- package/dist/components/feature-list/header.js +7 -0
- package/dist/components/feature-list/header.js.map +1 -0
- package/dist/components/feature-list/hooks/useAutoloadFeatureSource.d.ts +2 -0
- package/dist/components/feature-list/hooks/useAutoloadFeatureSource.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useAutoloadFeatureSource.js +14 -0
- package/dist/components/feature-list/hooks/useAutoloadFeatureSource.js.map +1 -0
- package/dist/components/feature-list/hooks/useFeatureListFeatureSource.d.ts +10 -0
- package/dist/components/feature-list/hooks/useFeatureListFeatureSource.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useFeatureListFeatureSource.js +14 -0
- package/dist/components/feature-list/hooks/useFeatureListFeatureSource.js.map +1 -0
- package/dist/components/feature-list/hooks/useFeatureListItemGroups.d.ts +15 -0
- package/dist/components/feature-list/hooks/useFeatureListItemGroups.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useFeatureListItemGroups.js +69 -0
- package/dist/components/feature-list/hooks/useFeatureListItemGroups.js.map +1 -0
- package/dist/components/feature-list/hooks/useFeatureListState.d.ts +16 -0
- package/dist/components/feature-list/hooks/useFeatureListState.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useFeatureListState.js +43 -0
- package/dist/components/feature-list/hooks/useFeatureListState.js.map +1 -0
- package/dist/components/feature-list/hooks/useKeyboardNavigation.d.ts +14 -0
- package/dist/components/feature-list/hooks/useKeyboardNavigation.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useKeyboardNavigation.js +90 -0
- package/dist/components/feature-list/hooks/useKeyboardNavigation.js.map +1 -0
- package/dist/components/feature-list/hooks/useMakeHeaderSticky.d.ts +2 -0
- package/dist/components/feature-list/hooks/useMakeHeaderSticky.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useMakeHeaderSticky.js +26 -0
- package/dist/components/feature-list/hooks/useMakeHeaderSticky.js.map +1 -0
- package/dist/components/feature-list/hooks/usePaginatedFilteredFeatures.d.ts +11 -0
- package/dist/components/feature-list/hooks/usePaginatedFilteredFeatures.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/usePaginatedFilteredFeatures.js +78 -0
- package/dist/components/feature-list/hooks/usePaginatedFilteredFeatures.js.map +1 -0
- package/dist/components/feature-list/hooks/useRestoreDocumentScroll.d.ts +2 -0
- package/dist/components/feature-list/hooks/useRestoreDocumentScroll.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useRestoreDocumentScroll.js +11 -0
- package/dist/components/feature-list/hooks/useRestoreDocumentScroll.js.map +1 -0
- package/dist/components/feature-list/hooks/useSelectFeature.d.ts +2 -0
- package/dist/components/feature-list/hooks/useSelectFeature.d.ts.map +1 -0
- package/dist/components/feature-list/hooks/useSelectFeature.js +43 -0
- package/dist/components/feature-list/hooks/useSelectFeature.js.map +1 -0
- package/dist/components/feature-list/index.d.ts +4 -0
- package/dist/components/feature-list/index.d.ts.map +1 -0
- package/dist/components/feature-list/index.js +139 -0
- package/dist/components/feature-list/index.js.map +1 -0
- package/dist/components/feature-list/pagination.d.ts +6 -0
- package/dist/components/feature-list/pagination.d.ts.map +1 -0
- package/dist/components/feature-list/pagination.js +24 -0
- package/dist/components/feature-list/pagination.js.map +1 -0
- package/dist/components/feature-list/query-input.d.ts +3 -0
- package/dist/components/feature-list/query-input.d.ts.map +1 -0
- package/dist/components/feature-list/query-input.js +8 -0
- package/dist/components/feature-list/query-input.js.map +1 -0
- package/dist/components/feature-list-cycling/button.d.ts +7 -0
- package/dist/components/feature-list-cycling/button.d.ts.map +1 -0
- package/dist/components/feature-list-cycling/button.js +6 -0
- package/dist/components/feature-list-cycling/button.js.map +1 -0
- package/dist/components/feature-list-cycling/dot.d.ts +11 -0
- package/dist/components/feature-list-cycling/dot.d.ts.map +1 -0
- package/dist/components/feature-list-cycling/dot.js +16 -0
- package/dist/components/feature-list-cycling/dot.js.map +1 -0
- package/dist/components/feature-list-cycling/feature-list-cycling.d.ts +11 -0
- package/dist/components/feature-list-cycling/feature-list-cycling.d.ts.map +1 -0
- package/dist/components/feature-list-cycling/feature-list-cycling.js +78 -0
- package/dist/components/feature-list-cycling/feature-list-cycling.js.map +1 -0
- package/dist/components/feature-list-cycling/index.d.ts +16 -0
- package/dist/components/feature-list-cycling/index.d.ts.map +1 -0
- package/dist/components/feature-list-cycling/index.js +35 -0
- package/dist/components/feature-list-cycling/index.js.map +1 -0
- package/dist/components/feature-list-item/head.d.ts +16 -0
- package/dist/components/feature-list-item/head.d.ts.map +1 -0
- package/dist/components/feature-list-item/head.js +56 -0
- package/dist/components/feature-list-item/head.js.map +1 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemScrollAndFocus.d.ts +6 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemScrollAndFocus.d.ts.map +1 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemScrollAndFocus.js +40 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemScrollAndFocus.js.map +1 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemState.d.ts +16 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemState.d.ts.map +1 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemState.js +44 -0
- package/dist/components/feature-list-item/hooks/useFeatureListItemState.js.map +1 -0
- package/dist/components/feature-list-item/icon.d.ts +9 -0
- package/dist/components/feature-list-item/icon.d.ts.map +1 -0
- package/dist/components/feature-list-item/icon.js +23 -0
- package/dist/components/feature-list-item/icon.js.map +1 -0
- package/dist/components/feature-list-item/index.d.ts +14 -0
- package/dist/components/feature-list-item/index.d.ts.map +1 -0
- package/dist/components/feature-list-item/index.js +72 -0
- package/dist/components/feature-list-item/index.js.map +1 -0
- package/dist/components/feature-list-sorting/feature-list-sorting.d.ts +22 -0
- package/dist/components/feature-list-sorting/feature-list-sorting.d.ts.map +1 -0
- package/dist/components/feature-list-sorting/feature-list-sorting.js +45 -0
- package/dist/components/feature-list-sorting/feature-list-sorting.js.map +1 -0
- package/dist/components/feature-list-sorting/index.d.ts +24 -0
- package/dist/components/feature-list-sorting/index.d.ts.map +1 -0
- package/dist/components/feature-list-sorting/index.js +19 -0
- package/dist/components/feature-list-sorting/index.js.map +1 -0
- package/dist/components/feature-list-sorting/status-indicator.d.ts +4 -0
- package/dist/components/feature-list-sorting/status-indicator.d.ts.map +1 -0
- package/dist/components/feature-list-sorting/status-indicator.js +6 -0
- package/dist/components/feature-list-sorting/status-indicator.js.map +1 -0
- package/dist/components/feature-select-button.d.ts +12 -0
- package/dist/components/feature-select-button.d.ts.map +1 -0
- package/dist/components/feature-select-button.js +47 -0
- package/dist/components/feature-select-button.js.map +1 -0
- package/dist/components/feature-selection-info/close-button.d.ts +8 -0
- package/dist/components/feature-selection-info/close-button.d.ts.map +1 -0
- package/dist/components/feature-selection-info/close-button.js +30 -0
- package/dist/components/feature-selection-info/close-button.js.map +1 -0
- package/dist/components/feature-selection-info/container.d.ts +7 -0
- package/dist/components/feature-selection-info/container.d.ts.map +1 -0
- package/dist/components/feature-selection-info/container.js +6 -0
- package/dist/components/feature-selection-info/container.js.map +1 -0
- package/dist/components/feature-selection-info/header.d.ts +14 -0
- package/dist/components/feature-selection-info/header.d.ts.map +1 -0
- package/dist/components/feature-selection-info/header.js +11 -0
- package/dist/components/feature-selection-info/header.js.map +1 -0
- package/dist/components/feature-selection-info/index.d.ts +6 -0
- package/dist/components/feature-selection-info/index.d.ts.map +1 -0
- package/dist/components/feature-selection-info/index.js +31 -0
- package/dist/components/feature-selection-info/index.js.map +1 -0
- package/dist/components/feature-selection-info/with-sticky-header.d.ts +9 -0
- package/dist/components/feature-selection-info/with-sticky-header.d.ts.map +1 -0
- package/dist/components/feature-selection-info/with-sticky-header.js +29 -0
- package/dist/components/feature-selection-info/with-sticky-header.js.map +1 -0
- package/dist/components/feature-selection-info/without-sticky-header.d.ts +8 -0
- package/dist/components/feature-selection-info/without-sticky-header.d.ts.map +1 -0
- package/dist/components/feature-selection-info/without-sticky-header.js +9 -0
- package/dist/components/feature-selection-info/without-sticky-header.js.map +1 -0
- package/dist/components/feature-selection-info/wrapper.d.ts +3 -0
- package/dist/components/feature-selection-info/wrapper.d.ts.map +1 -0
- package/dist/components/feature-selection-info/wrapper.js +26 -0
- package/dist/components/feature-selection-info/wrapper.js.map +1 -0
- package/dist/components/helping/app-channel.d.ts +23 -0
- package/dist/components/helping/app-channel.d.ts.map +1 -0
- package/dist/components/helping/app-channel.js +66 -0
- package/dist/components/helping/app-channel.js.map +1 -0
- package/dist/components/helping/app-context.d.ts +11 -0
- package/dist/components/helping/app-context.d.ts.map +1 -0
- package/dist/components/helping/app-context.js +9 -0
- package/dist/components/helping/app-context.js.map +1 -0
- package/dist/components/helping/visibility-wrapper.d.ts +16 -0
- package/dist/components/helping/visibility-wrapper.d.ts.map +1 -0
- package/dist/components/helping/visibility-wrapper.js +22 -0
- package/dist/components/helping/visibility-wrapper.js.map +1 -0
- package/dist/components/instance.d.ts +11 -0
- package/dist/components/instance.d.ts.map +1 -0
- package/dist/components/instance.js +14 -0
- package/dist/components/instance.js.map +1 -0
- package/dist/components/layer-switcher/GroupedLayerSwitcher.d.ts +5 -0
- package/dist/components/layer-switcher/GroupedLayerSwitcher.d.ts.map +1 -0
- package/dist/components/layer-switcher/GroupedLayerSwitcher.js +27 -0
- package/dist/components/layer-switcher/GroupedLayerSwitcher.js.map +1 -0
- package/dist/components/layer-switcher/LayerSwitcher.d.ts +16 -0
- package/dist/components/layer-switcher/LayerSwitcher.d.ts.map +1 -0
- package/dist/components/layer-switcher/LayerSwitcher.js +14 -0
- package/dist/components/layer-switcher/LayerSwitcher.js.map +1 -0
- package/dist/components/layer-switcher/LayerSwitcherEntry.d.ts +14 -0
- package/dist/components/layer-switcher/LayerSwitcherEntry.d.ts.map +1 -0
- package/dist/components/layer-switcher/LayerSwitcherEntry.js +80 -0
- package/dist/components/layer-switcher/LayerSwitcherEntry.js.map +1 -0
- package/dist/components/layer-switcher/LayerSwticherContainer.d.ts +4 -0
- package/dist/components/layer-switcher/LayerSwticherContainer.d.ts.map +1 -0
- package/dist/components/layer-switcher/LayerSwticherContainer.js +19 -0
- package/dist/components/layer-switcher/LayerSwticherContainer.js.map +1 -0
- package/dist/components/layer-switcher/index.d.ts +5 -0
- package/dist/components/layer-switcher/index.d.ts.map +1 -0
- package/dist/components/layer-switcher/index.js +28 -0
- package/dist/components/layer-switcher/index.js.map +1 -0
- package/dist/components/layout/additional-container/content.d.ts +7 -0
- package/dist/components/layout/additional-container/content.d.ts.map +1 -0
- package/dist/components/layout/additional-container/content.js +6 -0
- package/dist/components/layout/additional-container/content.js.map +1 -0
- package/dist/components/layout/additional-container/index.d.ts +7 -0
- package/dist/components/layout/additional-container/index.d.ts.map +1 -0
- package/dist/components/layout/additional-container/index.js +6 -0
- package/dist/components/layout/additional-container/index.js.map +1 -0
- package/dist/components/layout/additional-container/marginal.d.ts +8 -0
- package/dist/components/layout/additional-container/marginal.d.ts.map +1 -0
- package/dist/components/layout/additional-container/marginal.js +6 -0
- package/dist/components/layout/additional-container/marginal.js.map +1 -0
- package/dist/components/layout/main-container.d.ts +6 -0
- package/dist/components/layout/main-container.d.ts.map +1 -0
- package/dist/components/layout/main-container.js +6 -0
- package/dist/components/layout/main-container.js.map +1 -0
- package/dist/components/layout/map-row.d.ts +6 -0
- package/dist/components/layout/map-row.d.ts.map +1 -0
- package/dist/components/layout/map-row.js +6 -0
- package/dist/components/layout/map-row.js.map +1 -0
- package/dist/components/layout/title-bar.d.ts +10 -0
- package/dist/components/layout/title-bar.d.ts.map +1 -0
- package/dist/components/layout/title-bar.js +11 -0
- package/dist/components/layout/title-bar.js.map +1 -0
- package/dist/components/layout/wrapper.d.ts +7 -0
- package/dist/components/layout/wrapper.d.ts.map +1 -0
- package/dist/components/layout/wrapper.js +13 -0
- package/dist/components/layout/wrapper.js.map +1 -0
- package/dist/components/link-share.d.ts +9 -0
- package/dist/components/link-share.d.ts.map +1 -0
- package/dist/components/link-share.js +30 -0
- package/dist/components/link-share.js.map +1 -0
- package/dist/components/main-panel/container.d.ts +5 -0
- package/dist/components/main-panel/container.d.ts.map +1 -0
- package/dist/components/main-panel/container.js +13 -0
- package/dist/components/main-panel/container.js.map +1 -0
- package/dist/components/main-panel/context.d.ts +6 -0
- package/dist/components/main-panel/context.d.ts.map +1 -0
- package/dist/components/main-panel/context.js +45 -0
- package/dist/components/main-panel/context.js.map +1 -0
- package/dist/components/main-panel/index.d.ts +3 -0
- package/dist/components/main-panel/index.d.ts.map +1 -0
- package/dist/components/main-panel/index.js +19 -0
- package/dist/components/main-panel/index.js.map +1 -0
- package/dist/components/main-panel/list-toggle-button.d.ts +3 -0
- package/dist/components/main-panel/list-toggle-button.d.ts.map +1 -0
- package/dist/components/main-panel/list-toggle-button.js +23 -0
- package/dist/components/main-panel/list-toggle-button.js.map +1 -0
- package/dist/components/map-overlay/area.d.ts +12 -0
- package/dist/components/map-overlay/area.d.ts.map +1 -0
- package/dist/components/map-overlay/area.js +12 -0
- package/dist/components/map-overlay/area.js.map +1 -0
- package/dist/components/map-overlay/attribution-entries.d.ts +8 -0
- package/dist/components/map-overlay/attribution-entries.d.ts.map +1 -0
- package/dist/components/map-overlay/attribution-entries.js +8 -0
- package/dist/components/map-overlay/attribution-entries.js.map +1 -0
- package/dist/components/map-overlay/attribution.d.ts +4 -0
- package/dist/components/map-overlay/attribution.d.ts.map +1 -0
- package/dist/components/map-overlay/attribution.js +14 -0
- package/dist/components/map-overlay/attribution.js.map +1 -0
- package/dist/components/map-overlay/combined-buttons.d.ts +5 -0
- package/dist/components/map-overlay/combined-buttons.d.ts.map +1 -0
- package/dist/components/map-overlay/combined-buttons.js +6 -0
- package/dist/components/map-overlay/combined-buttons.js.map +1 -0
- package/dist/components/map-overlay/index.d.ts +5 -0
- package/dist/components/map-overlay/index.d.ts.map +1 -0
- package/dist/components/map-overlay/index.js +6 -0
- package/dist/components/map-overlay/index.js.map +1 -0
- package/dist/components/map-overlay/info-overlay-left.d.ts +4 -0
- package/dist/components/map-overlay/info-overlay-left.d.ts.map +1 -0
- package/dist/components/map-overlay/info-overlay-left.js +18 -0
- package/dist/components/map-overlay/info-overlay-left.js.map +1 -0
- package/dist/components/map-overlay/info-overlay-modal.d.ts +5 -0
- package/dist/components/map-overlay/info-overlay-modal.d.ts.map +1 -0
- package/dist/components/map-overlay/info-overlay-modal.js +27 -0
- package/dist/components/map-overlay/info-overlay-modal.js.map +1 -0
- package/dist/components/map-overlay/info-overlay-right.d.ts +4 -0
- package/dist/components/map-overlay/info-overlay-right.d.ts.map +1 -0
- package/dist/components/map-overlay/info-overlay-right.js +23 -0
- package/dist/components/map-overlay/info-overlay-right.js.map +1 -0
- package/dist/components/map-overlay/layer-switcher-overlay.d.ts +4 -0
- package/dist/components/map-overlay/layer-switcher-overlay.d.ts.map +1 -0
- package/dist/components/map-overlay/layer-switcher-overlay.js +31 -0
- package/dist/components/map-overlay/layer-switcher-overlay.js.map +1 -0
- package/dist/components/map-overlay/legend.d.ts +2 -0
- package/dist/components/map-overlay/legend.d.ts.map +1 -0
- package/dist/components/map-overlay/legend.js +13 -0
- package/dist/components/map-overlay/legend.js.map +1 -0
- package/dist/components/map-overlay/logo.d.ts +2 -0
- package/dist/components/map-overlay/logo.d.ts.map +1 -0
- package/dist/components/map-overlay/logo.js +6 -0
- package/dist/components/map-overlay/logo.js.map +1 -0
- package/dist/components/map-overlay/measure-distance-button.d.ts +8 -0
- package/dist/components/map-overlay/measure-distance-button.d.ts.map +1 -0
- package/dist/components/map-overlay/measure-distance-button.js +43 -0
- package/dist/components/map-overlay/measure-distance-button.js.map +1 -0
- package/dist/components/map-overlay/measure-distance-overlay.d.ts +5 -0
- package/dist/components/map-overlay/measure-distance-overlay.d.ts.map +1 -0
- package/dist/components/map-overlay/measure-distance-overlay.js +42 -0
- package/dist/components/map-overlay/measure-distance-overlay.js.map +1 -0
- package/dist/components/map-overlay/mini-legend.d.ts +8 -0
- package/dist/components/map-overlay/mini-legend.d.ts.map +1 -0
- package/dist/components/map-overlay/mini-legend.js +42 -0
- package/dist/components/map-overlay/mini-legend.js.map +1 -0
- package/dist/components/map-overlay/region-selector.d.ts +3 -0
- package/dist/components/map-overlay/region-selector.d.ts.map +1 -0
- package/dist/components/map-overlay/region-selector.js +32 -0
- package/dist/components/map-overlay/region-selector.js.map +1 -0
- package/dist/components/map-overlay/search-overlay.d.ts +4 -0
- package/dist/components/map-overlay/search-overlay.d.ts.map +1 -0
- package/dist/components/map-overlay/search-overlay.js +33 -0
- package/dist/components/map-overlay/search-overlay.js.map +1 -0
- package/dist/components/map-overlay/share-position-link-button.d.ts +8 -0
- package/dist/components/map-overlay/share-position-link-button.d.ts.map +1 -0
- package/dist/components/map-overlay/share-position-link-button.js +54 -0
- package/dist/components/map-overlay/share-position-link-button.js.map +1 -0
- package/dist/components/map-overlay/tool-overlay.d.ts +9 -0
- package/dist/components/map-overlay/tool-overlay.d.ts.map +1 -0
- package/dist/components/map-overlay/tool-overlay.js +8 -0
- package/dist/components/map-overlay/tool-overlay.js.map +1 -0
- package/dist/components/map-overlay/user-geo-location-button.d.ts +5 -0
- package/dist/components/map-overlay/user-geo-location-button.d.ts.map +1 -0
- package/dist/components/map-overlay/user-geo-location-button.js +63 -0
- package/dist/components/map-overlay/user-geo-location-button.js.map +1 -0
- package/dist/components/map-overlay/zoom-button.d.ts +20 -0
- package/dist/components/map-overlay/zoom-button.d.ts.map +1 -0
- package/dist/components/map-overlay/zoom-button.js +64 -0
- package/dist/components/map-overlay/zoom-button.js.map +1 -0
- package/dist/components/map-overlay/zoom-buttons.d.ts +3 -0
- package/dist/components/map-overlay/zoom-buttons.d.ts.map +1 -0
- package/dist/components/map-overlay/zoom-buttons.js +10 -0
- package/dist/components/map-overlay/zoom-buttons.js.map +1 -0
- package/dist/components/map-synced-interlay/index.d.ts +11 -0
- package/dist/components/map-synced-interlay/index.d.ts.map +1 -0
- package/dist/components/map-synced-interlay/index.js +12 -0
- package/dist/components/map-synced-interlay/index.js.map +1 -0
- package/dist/components/map-synced-interlay/map-synced-interlay.d.ts +6 -0
- package/dist/components/map-synced-interlay/map-synced-interlay.d.ts.map +1 -0
- package/dist/components/map-synced-interlay/map-synced-interlay.js +12 -0
- package/dist/components/map-synced-interlay/map-synced-interlay.js.map +1 -0
- package/dist/components/map-synced-interlay/tooltip-content.d.ts +15 -0
- package/dist/components/map-synced-interlay/tooltip-content.d.ts.map +1 -0
- package/dist/components/map-synced-interlay/tooltip-content.js +7 -0
- package/dist/components/map-synced-interlay/tooltip-content.js.map +1 -0
- package/dist/components/map-synced-interlay/tooltip.d.ts +10 -0
- package/dist/components/map-synced-interlay/tooltip.d.ts.map +1 -0
- package/dist/components/map-synced-interlay/tooltip.js +111 -0
- package/dist/components/map-synced-interlay/tooltip.js.map +1 -0
- package/dist/components/map-wrapper.d.ts +5 -0
- package/dist/components/map-wrapper.d.ts.map +1 -0
- package/dist/components/map-wrapper.js +39 -0
- package/dist/components/map-wrapper.js.map +1 -0
- package/dist/components/map.d.ts +8 -0
- package/dist/components/map.d.ts.map +1 -0
- package/dist/components/map.js +20 -0
- package/dist/components/map.js.map +1 -0
- package/dist/components/modal.d.ts +9 -0
- package/dist/components/modal.d.ts.map +1 -0
- package/dist/components/modal.js +9 -0
- package/dist/components/modal.js.map +1 -0
- package/dist/components/query-input-with-label.d.ts +15 -0
- package/dist/components/query-input-with-label.d.ts.map +1 -0
- package/dist/components/query-input-with-label.js +21 -0
- package/dist/components/query-input-with-label.js.map +1 -0
- package/dist/components/query-input.d.ts +15 -0
- package/dist/components/query-input.d.ts.map +1 -0
- package/dist/components/query-input.js +16 -0
- package/dist/components/query-input.js.map +1 -0
- package/dist/components/search/index.d.ts +7 -0
- package/dist/components/search/index.d.ts.map +1 -0
- package/dist/components/search/index.js +36 -0
- package/dist/components/search/index.js.map +1 -0
- package/dist/components/search/query-input.d.ts +3 -0
- package/dist/components/search/query-input.d.ts.map +1 -0
- package/dist/components/search/query-input.js +9 -0
- package/dist/components/search/query-input.js.map +1 -0
- package/dist/components/search/result-entry.d.ts +8 -0
- package/dist/components/search/result-entry.d.ts.map +1 -0
- package/dist/components/search/result-entry.js +37 -0
- package/dist/components/search/result-entry.js.map +1 -0
- package/dist/components/search/result.d.ts +7 -0
- package/dist/components/search/result.d.ts.map +1 -0
- package/dist/components/search/result.js +24 -0
- package/dist/components/search/result.js.map +1 -0
- package/dist/components/switcher/GroupedSwitcher.d.ts +4 -0
- package/dist/components/switcher/GroupedSwitcher.d.ts.map +1 -0
- package/dist/components/switcher/GroupedSwitcher.js +10 -0
- package/dist/components/switcher/GroupedSwitcher.js.map +1 -0
- package/dist/components/switcher/Switcher.d.ts +4 -0
- package/dist/components/switcher/Switcher.d.ts.map +1 -0
- package/dist/components/switcher/Switcher.js +23 -0
- package/dist/components/switcher/Switcher.js.map +1 -0
- package/dist/components/switcher/SwitcherButton.d.ts +3 -0
- package/dist/components/switcher/SwitcherButton.d.ts.map +1 -0
- package/dist/components/switcher/SwitcherButton.js +8 -0
- package/dist/components/switcher/SwitcherButton.js.map +1 -0
- package/dist/components/switcher/SwitcherEntry.d.ts +6 -0
- package/dist/components/switcher/SwitcherEntry.d.ts.map +1 -0
- package/dist/components/switcher/SwitcherEntry.js +55 -0
- package/dist/components/switcher/SwitcherEntry.js.map +1 -0
- package/dist/components/switcher/SwitcherHeader.d.ts +4 -0
- package/dist/components/switcher/SwitcherHeader.d.ts.map +1 -0
- package/dist/components/switcher/SwitcherHeader.js +16 -0
- package/dist/components/switcher/SwitcherHeader.js.map +1 -0
- package/dist/components/switcher/SwitcherStatusIcon.d.ts +3 -0
- package/dist/components/switcher/SwitcherStatusIcon.d.ts.map +1 -0
- package/dist/components/switcher/SwitcherStatusIcon.js +13 -0
- package/dist/components/switcher/SwitcherStatusIcon.js.map +1 -0
- package/dist/components/tag-switcher/TagSwitcher.d.ts +9 -0
- package/dist/components/tag-switcher/TagSwitcher.d.ts.map +1 -0
- package/dist/components/tag-switcher/TagSwitcher.js +31 -0
- package/dist/components/tag-switcher/TagSwitcher.js.map +1 -0
- package/dist/components/tag-switcher/createTagSwitcherEntry.d.ts +13 -0
- package/dist/components/tag-switcher/createTagSwitcherEntry.d.ts.map +1 -0
- package/dist/components/tag-switcher/createTagSwitcherEntry.js +22 -0
- package/dist/components/tag-switcher/createTagSwitcherEntry.js.map +1 -0
- package/dist/components/tag-switcher/createTagSwitcherHeader.d.ts +13 -0
- package/dist/components/tag-switcher/createTagSwitcherHeader.d.ts.map +1 -0
- package/dist/components/tag-switcher/createTagSwitcherHeader.js +18 -0
- package/dist/components/tag-switcher/createTagSwitcherHeader.js.map +1 -0
- package/dist/components/tag-switcher/index.d.ts +14 -0
- package/dist/components/tag-switcher/index.d.ts.map +1 -0
- package/dist/components/tag-switcher/index.js +11 -0
- package/dist/components/tag-switcher/index.js.map +1 -0
- package/dist/components/time-filter.d.ts +4 -0
- package/dist/components/time-filter.d.ts.map +1 -0
- package/dist/components/time-filter.js +112 -0
- package/dist/components/time-filter.js.map +1 -0
- package/dist/components/view-toggle-button/desktop-button.d.ts +3 -0
- package/dist/components/view-toggle-button/desktop-button.d.ts.map +1 -0
- package/dist/components/view-toggle-button/desktop-button.js +7 -0
- package/dist/components/view-toggle-button/desktop-button.js.map +1 -0
- package/dist/components/view-toggle-button/index.d.ts +16 -0
- package/dist/components/view-toggle-button/index.d.ts.map +1 -0
- package/dist/components/view-toggle-button/index.js +24 -0
- package/dist/components/view-toggle-button/index.js.map +1 -0
- package/dist/components/view-toggle-button/mobile-button.d.ts +3 -0
- package/dist/components/view-toggle-button/mobile-button.d.ts.map +1 -0
- package/dist/components/view-toggle-button/mobile-button.js +7 -0
- package/dist/components/view-toggle-button/mobile-button.js.map +1 -0
- package/dist/components/view-toggle-button/view-toggle-button.d.ts +11 -0
- package/dist/components/view-toggle-button/view-toggle-button.d.ts.map +1 -0
- package/dist/components/view-toggle-button/view-toggle-button.js +40 -0
- package/dist/components/view-toggle-button/view-toggle-button.js.map +1 -0
- package/dist/components/view-toggle-button/viewport-button.d.ts +3 -0
- package/dist/components/view-toggle-button/viewport-button.d.ts.map +1 -0
- package/dist/components/view-toggle-button/viewport-button.js +7 -0
- package/dist/components/view-toggle-button/viewport-button.js.map +1 -0
- package/dist/config/constants/app.d.ts +9 -0
- package/dist/config/constants/app.d.ts.map +1 -0
- package/dist/config/constants/app.js +8 -0
- package/dist/config/constants/app.js.map +1 -0
- package/dist/config/constants/controllers.d.ts +9 -0
- package/dist/config/constants/controllers.d.ts.map +1 -0
- package/dist/config/constants/controllers.js +9 -0
- package/dist/config/constants/controllers.js.map +1 -0
- package/dist/config/feature/selections.d.ts +16 -0
- package/dist/config/feature/selections.d.ts.map +1 -0
- package/dist/config/feature/selections.js +13 -0
- package/dist/config/feature/selections.js.map +1 -0
- package/dist/config/feature/sources.d.ts +37 -0
- package/dist/config/feature/sources.d.ts.map +1 -0
- package/dist/config/feature/sources.js +66 -0
- package/dist/config/feature/sources.js.map +1 -0
- package/dist/config/index.d.ts +64 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +80 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/map/featureInteractions.d.ts +6 -0
- package/dist/config/map/featureInteractions.d.ts.map +1 -0
- package/dist/config/map/featureInteractions.js +42 -0
- package/dist/config/map/featureInteractions.js.map +1 -0
- package/dist/config/map/interactions.d.ts +4 -0
- package/dist/config/map/interactions.d.ts.map +1 -0
- package/dist/config/map/interactions.js +13 -0
- package/dist/config/map/interactions.js.map +1 -0
- package/dist/config/map/layers.d.ts +48 -0
- package/dist/config/map/layers.d.ts.map +1 -0
- package/dist/config/map/layers.js +110 -0
- package/dist/config/map/layers.js.map +1 -0
- package/dist/controllers/defaults.d.ts +4 -0
- package/dist/controllers/defaults.d.ts.map +1 -0
- package/dist/controllers/defaults.js +25 -0
- package/dist/controllers/defaults.js.map +1 -0
- package/dist/embed/browser.d.ts +20 -0
- package/dist/embed/browser.d.ts.map +1 -0
- package/dist/embed/browser.js +41 -0
- package/dist/embed/browser.js.map +1 -0
- package/dist/embed/node.d.ts +23 -0
- package/dist/embed/node.d.ts.map +1 -0
- package/dist/embed/node.js +26 -0
- package/dist/embed/node.js.map +1 -0
- package/dist/filters/tag-filter.d.ts +11 -0
- package/dist/filters/tag-filter.d.ts.map +1 -0
- package/dist/filters/tag-filter.js +86 -0
- package/dist/filters/tag-filter.js.map +1 -0
- package/dist/filters/time-filter.d.ts +16 -0
- package/dist/filters/time-filter.d.ts.map +1 -0
- package/dist/filters/time-filter.js +26 -0
- package/dist/filters/time-filter.js.map +1 -0
- package/dist/helpers/components.d.ts +26 -0
- package/dist/helpers/components.d.ts.map +1 -0
- package/dist/helpers/components.js +25 -0
- package/dist/helpers/components.js.map +1 -0
- package/dist/helpers/create-action-watcher.d.ts +10 -0
- package/dist/helpers/create-action-watcher.d.ts.map +1 -0
- package/dist/helpers/create-action-watcher.js +19 -0
- package/dist/helpers/create-action-watcher.js.map +1 -0
- package/dist/helpers/events.d.ts +10 -0
- package/dist/helpers/events.d.ts.map +1 -0
- package/dist/helpers/events.js +7 -0
- package/dist/helpers/events.js.map +1 -0
- package/dist/helpers/get-feature-property.d.ts +6 -0
- package/dist/helpers/get-feature-property.d.ts.map +1 -0
- package/dist/helpers/get-feature-property.js +8 -0
- package/dist/helpers/get-feature-property.js.map +1 -0
- package/dist/helpers/i18n/de.d.ts +3 -0
- package/dist/helpers/i18n/de.d.ts.map +1 -0
- package/dist/helpers/i18n/de.js +98 -0
- package/dist/helpers/i18n/de.js.map +1 -0
- package/dist/helpers/i18n/en.d.ts +3 -0
- package/dist/helpers/i18n/en.d.ts.map +1 -0
- package/dist/helpers/i18n/en.js +94 -0
- package/dist/helpers/i18n/en.js.map +1 -0
- package/dist/helpers/i18n/index.d.ts +10 -0
- package/dist/helpers/i18n/index.d.ts.map +1 -0
- package/dist/helpers/i18n/index.js +30 -0
- package/dist/helpers/i18n/index.js.map +1 -0
- package/dist/helpers/makeReplaceableComponent.d.ts +2 -0
- package/dist/helpers/makeReplaceableComponent.d.ts.map +1 -0
- package/dist/helpers/makeReplaceableComponent.js +2 -0
- package/dist/helpers/makeReplaceableComponent.js.map +1 -0
- package/dist/helpers/mod-classes.d.ts +7 -0
- package/dist/helpers/mod-classes.d.ts.map +1 -0
- package/dist/helpers/mod-classes.js +32 -0
- package/dist/helpers/mod-classes.js.map +1 -0
- package/dist/helpers/react.d.ts +3 -0
- package/dist/helpers/react.d.ts.map +1 -0
- package/dist/helpers/react.js +11 -0
- package/dist/helpers/react.js.map +1 -0
- package/dist/helpers/scroll-to-element-top.d.ts +2 -0
- package/dist/helpers/scroll-to-element-top.d.ts.map +1 -0
- package/dist/helpers/scroll-to-element-top.js +13 -0
- package/dist/helpers/scroll-to-element-top.js.map +1 -0
- package/dist/helpers/sort-features-by-distance.d.ts +15 -0
- package/dist/helpers/sort-features-by-distance.d.ts.map +1 -0
- package/dist/helpers/sort-features-by-distance.js +61 -0
- package/dist/helpers/sort-features-by-distance.js.map +1 -0
- package/dist/helpers/sticky.d.ts +2 -0
- package/dist/helpers/sticky.d.ts.map +1 -0
- package/dist/helpers/sticky.js +114 -0
- package/dist/helpers/sticky.js.map +1 -0
- package/dist/hooks/useCallbackRef.d.ts +2 -0
- package/dist/hooks/useCallbackRef.d.ts.map +1 -0
- package/dist/hooks/useCallbackRef.js +10 -0
- package/dist/hooks/useCallbackRef.js.map +1 -0
- package/dist/hooks/useControllableState.d.ts +7 -0
- package/dist/hooks/useControllableState.d.ts.map +1 -0
- package/dist/hooks/useControllableState.js +32 -0
- package/dist/hooks/useControllableState.js.map +1 -0
- package/dist/hooks/useDebounce.d.ts +7 -0
- package/dist/hooks/useDebounce.d.ts.map +1 -0
- package/dist/hooks/useDebounce.js +27 -0
- package/dist/hooks/useDebounce.js.map +1 -0
- package/dist/hooks/useHandleEscapeKeyDown.d.ts +3 -0
- package/dist/hooks/useHandleEscapeKeyDown.d.ts.map +1 -0
- package/dist/hooks/useHandleEscapeKeyDown.js +20 -0
- package/dist/hooks/useHandleEscapeKeyDown.js.map +1 -0
- package/dist/hooks/useMapsightPanel.d.ts +5 -0
- package/dist/hooks/useMapsightPanel.d.ts.map +1 -0
- package/dist/hooks/useMapsightPanel.js +22 -0
- package/dist/hooks/useMapsightPanel.js.map +1 -0
- package/dist/hooks/useMountable.d.ts +15 -0
- package/dist/hooks/useMountable.d.ts.map +1 -0
- package/dist/hooks/useMountable.js +26 -0
- package/dist/hooks/useMountable.js.map +1 -0
- package/dist/hooks/usePrevious.d.ts +2 -0
- package/dist/hooks/usePrevious.d.ts.map +1 -0
- package/dist/hooks/usePrevious.js +13 -0
- package/dist/hooks/usePrevious.js.map +1 -0
- package/dist/hooks/useStickyHeader.d.ts +15 -0
- package/dist/hooks/useStickyHeader.d.ts.map +1 -0
- package/dist/hooks/useStickyHeader.js +31 -0
- package/dist/hooks/useStickyHeader.js.map +1 -0
- package/dist/hooks/useUpdateMapSizeCallback.d.ts +5 -0
- package/dist/hooks/useUpdateMapSizeCallback.d.ts.map +1 -0
- package/dist/hooks/useUpdateMapSizeCallback.js +17 -0
- package/dist/hooks/useUpdateMapSizeCallback.js.map +1 -0
- package/dist/hooks/useUpdateMapSizeOnRender.d.ts +3 -0
- package/dist/hooks/useUpdateMapSizeOnRender.d.ts.map +1 -0
- package/dist/hooks/useUpdateMapSizeOnRender.js +12 -0
- package/dist/hooks/useUpdateMapSizeOnRender.js.map +1 -0
- package/dist/hooks/useUpdateMapSizeOnTransitionEnd.d.ts +5 -0
- package/dist/hooks/useUpdateMapSizeOnTransitionEnd.d.ts.map +1 -0
- package/dist/hooks/useUpdateMapSizeOnTransitionEnd.js +25 -0
- package/dist/hooks/useUpdateMapSizeOnTransitionEnd.js.map +1 -0
- package/dist/hooks/useUpdateMapSizeOnViewChange.d.ts +4 -0
- package/dist/hooks/useUpdateMapSizeOnViewChange.d.ts.map +1 -0
- package/dist/hooks/useUpdateMapSizeOnViewChange.js +26 -0
- package/dist/hooks/useUpdateMapSizeOnViewChange.js.map +1 -0
- package/dist/img/mapsight-ui/check-empty.svg +1 -0
- package/dist/img/mapsight-ui/check.svg +1 -0
- package/dist/img/mapsight-ui/close-list.svg +1 -0
- package/dist/img/mapsight-ui/close.svg +1 -0
- package/dist/img/mapsight-ui/error.svg +1 -0
- package/dist/img/mapsight-ui/fullscreen-close.svg +1 -0
- package/dist/img/mapsight-ui/fullscreen.svg +1 -0
- package/dist/img/mapsight-ui/geo-active.svg +1 -0
- package/dist/img/mapsight-ui/geo-error.svg +1 -0
- package/dist/img/mapsight-ui/geo-inactive.svg +1 -0
- package/dist/img/mapsight-ui/info.svg +1 -0
- package/dist/img/mapsight-ui/layers.svg +1 -0
- package/dist/img/mapsight-ui/loading.svg +1 -0
- package/dist/img/mapsight-ui/map.svg +1 -0
- package/dist/img/mapsight-ui/measure-distance.svg +1 -0
- package/dist/img/mapsight-ui/open-list.svg +1 -0
- package/dist/img/mapsight-ui/place-marker.svg +1 -0
- package/dist/img/mapsight-ui/print.svg +1 -0
- package/dist/img/mapsight-ui/reset-active.svg +1 -0
- package/dist/img/mapsight-ui/reset.svg +1 -0
- package/dist/img/mapsight-ui/search.svg +1 -0
- package/dist/img/mapsight-ui/sharing.svg +1 -0
- package/dist/img/mapsight-ui/sort-active.svg +1 -0
- package/dist/img/mapsight-ui/sort.svg +1 -0
- package/dist/img/mapsight-ui/watermark.svg +1 -0
- package/dist/img/mapsight-ui/zoom-in.svg +1 -0
- package/dist/img/mapsight-ui/zoom-out.svg +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +243 -0
- package/dist/index.js.map +1 -0
- package/dist/plugins/browser/app-title.d.ts +12 -0
- package/dist/plugins/browser/app-title.d.ts.map +1 -0
- package/dist/plugins/browser/app-title.js +25 -0
- package/dist/plugins/browser/app-title.js.map +1 -0
- package/dist/plugins/browser/debug.d.ts +8 -0
- package/dist/plugins/browser/debug.d.ts.map +1 -0
- package/dist/plugins/browser/debug.js +28 -0
- package/dist/plugins/browser/debug.js.map +1 -0
- package/dist/plugins/browser/feature-deep-link.d.ts +29 -0
- package/dist/plugins/browser/feature-deep-link.d.ts.map +1 -0
- package/dist/plugins/browser/feature-deep-link.js +124 -0
- package/dist/plugins/browser/feature-deep-link.js.map +1 -0
- package/dist/plugins/browser/local-storage.d.ts +15 -0
- package/dist/plugins/browser/local-storage.d.ts.map +1 -0
- package/dist/plugins/browser/local-storage.js +57 -0
- package/dist/plugins/browser/local-storage.js.map +1 -0
- package/dist/plugins/browser/native-fullscreen.d.ts +17 -0
- package/dist/plugins/browser/native-fullscreen.d.ts.map +1 -0
- package/dist/plugins/browser/native-fullscreen.js +62 -0
- package/dist/plugins/browser/native-fullscreen.js.map +1 -0
- package/dist/plugins/browser/no-scroll.d.ts +30 -0
- package/dist/plugins/browser/no-scroll.d.ts.map +1 -0
- package/dist/plugins/browser/no-scroll.js +57 -0
- package/dist/plugins/browser/no-scroll.js.map +1 -0
- package/dist/plugins/browser/partial-content-changed-event.d.ts +11 -0
- package/dist/plugins/browser/partial-content-changed-event.d.ts.map +1 -0
- package/dist/plugins/browser/partial-content-changed-event.js +22 -0
- package/dist/plugins/browser/partial-content-changed-event.js.map +1 -0
- package/dist/plugins/browser/piwik-track-feature-selection-event.d.ts +20 -0
- package/dist/plugins/browser/piwik-track-feature-selection-event.d.ts.map +1 -0
- package/dist/plugins/browser/piwik-track-feature-selection-event.js +41 -0
- package/dist/plugins/browser/piwik-track-feature-selection-event.js.map +1 -0
- package/dist/plugins/browser/piwik-track-fullscreen-toggle-event.d.ts +18 -0
- package/dist/plugins/browser/piwik-track-fullscreen-toggle-event.d.ts.map +1 -0
- package/dist/plugins/browser/piwik-track-fullscreen-toggle-event.js +30 -0
- package/dist/plugins/browser/piwik-track-fullscreen-toggle-event.js.map +1 -0
- package/dist/plugins/browser/search.d.ts +14 -0
- package/dist/plugins/browser/search.d.ts.map +1 -0
- package/dist/plugins/browser/search.js +25 -0
- package/dist/plugins/browser/search.js.map +1 -0
- package/dist/plugins/browser/share-position-link.d.ts +121 -0
- package/dist/plugins/browser/share-position-link.d.ts.map +1 -0
- package/dist/plugins/browser/share-position-link.js +212 -0
- package/dist/plugins/browser/share-position-link.js.map +1 -0
- package/dist/plugins/browser/toggle-mobile-views.d.ts +14 -0
- package/dist/plugins/browser/toggle-mobile-views.d.ts.map +1 -0
- package/dist/plugins/browser/toggle-mobile-views.js +42 -0
- package/dist/plugins/browser/toggle-mobile-views.js.map +1 -0
- package/dist/plugins/browser/user-geolocation.d.ts +18 -0
- package/dist/plugins/browser/user-geolocation.d.ts.map +1 -0
- package/dist/plugins/browser/user-geolocation.js +71 -0
- package/dist/plugins/browser/user-geolocation.js.map +1 -0
- package/dist/plugins/browser/views.d.ts +17 -0
- package/dist/plugins/browser/views.d.ts.map +1 -0
- package/dist/plugins/browser/views.js +86 -0
- package/dist/plugins/browser/views.js.map +1 -0
- package/dist/plugins/browser-defaults.d.ts +35 -0
- package/dist/plugins/browser-defaults.d.ts.map +1 -0
- package/dist/plugins/browser-defaults.js +70 -0
- package/dist/plugins/browser-defaults.js.map +1 -0
- package/dist/plugins/common/feature-selection-details-url.d.ts +18 -0
- package/dist/plugins/common/feature-selection-details-url.d.ts.map +1 -0
- package/dist/plugins/common/feature-selection-details-url.js +79 -0
- package/dist/plugins/common/feature-selection-details-url.js.map +1 -0
- package/dist/plugins/common/lang.d.ts +9 -0
- package/dist/plugins/common/lang.d.ts.map +1 -0
- package/dist/plugins/common/lang.js +17 -0
- package/dist/plugins/common/lang.js.map +1 -0
- package/dist/plugins/common/measure-distance.d.ts +30 -0
- package/dist/plugins/common/measure-distance.d.ts.map +1 -0
- package/dist/plugins/common/measure-distance.js +143 -0
- package/dist/plugins/common/measure-distance.js.map +1 -0
- package/dist/plugins/common/ol-proxy.d.ts +13 -0
- package/dist/plugins/common/ol-proxy.d.ts.map +1 -0
- package/dist/plugins/common/ol-proxy.js +59 -0
- package/dist/plugins/common/ol-proxy.js.map +1 -0
- package/dist/plugins/common/render-await-feature-details-loaded.d.ts +16 -0
- package/dist/plugins/common/render-await-feature-details-loaded.d.ts.map +1 -0
- package/dist/plugins/common/render-await-feature-details-loaded.js +79 -0
- package/dist/plugins/common/render-await-feature-details-loaded.js.map +1 -0
- package/dist/plugins/common/render-await-list-feature-sources-loaded.d.ts +15 -0
- package/dist/plugins/common/render-await-list-feature-sources-loaded.d.ts.map +1 -0
- package/dist/plugins/common/render-await-list-feature-sources-loaded.js +58 -0
- package/dist/plugins/common/render-await-list-feature-sources-loaded.js.map +1 -0
- package/dist/plugins/server/feature-deep-link.d.ts +21 -0
- package/dist/plugins/server/feature-deep-link.d.ts.map +1 -0
- package/dist/plugins/server/feature-deep-link.js +37 -0
- package/dist/plugins/server/feature-deep-link.js.map +1 -0
- package/dist/plugins/server-defaults.d.ts +16 -0
- package/dist/plugins/server-defaults.d.ts.map +1 -0
- package/dist/plugins/server-defaults.js +25 -0
- package/dist/plugins/server-defaults.js.map +1 -0
- package/dist/renderer/browser-dom.d.ts +7 -0
- package/dist/renderer/browser-dom.d.ts.map +1 -0
- package/dist/renderer/browser-dom.js +12 -0
- package/dist/renderer/browser-dom.js.map +1 -0
- package/dist/renderer/server-string.d.ts +4 -0
- package/dist/renderer/server-string.d.ts.map +1 -0
- package/dist/renderer/server-string.js +10 -0
- package/dist/renderer/server-string.js.map +1 -0
- package/dist/server-handler.d.ts +2 -0
- package/dist/server-handler.d.ts.map +1 -0
- package/dist/server-handler.js +32 -0
- package/dist/server-handler.js.map +1 -0
- package/dist/store/actions.d.ts +261 -0
- package/dist/store/actions.d.ts.map +1 -0
- package/dist/store/actions.js +478 -0
- package/dist/store/actions.js.map +1 -0
- package/dist/store/reducers.d.ts +228 -0
- package/dist/store/reducers.d.ts.map +1 -0
- package/dist/store/reducers.js +386 -0
- package/dist/store/reducers.js.map +1 -0
- package/dist/store/selectors.d.ts +443 -0
- package/dist/store/selectors.d.ts.map +1 -0
- package/dist/store/selectors.js +195 -0
- package/dist/store/selectors.js.map +1 -0
- package/dist/types.d.ts +286 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +78 -0
- package/src/img/mapsight-ui/check-empty.svg +1 -0
- package/src/img/mapsight-ui/check.svg +2 -0
- package/src/img/mapsight-ui/close-list.svg +1 -0
- package/src/img/mapsight-ui/close.svg +1 -0
- package/src/img/mapsight-ui/error.svg +1 -0
- package/src/img/mapsight-ui/fullscreen-close.svg +1 -0
- package/src/img/mapsight-ui/fullscreen.svg +1 -0
- package/src/img/mapsight-ui/geo-active.svg +1 -0
- package/src/img/mapsight-ui/geo-error.svg +1 -0
- package/src/img/mapsight-ui/geo-inactive.svg +1 -0
- package/src/img/mapsight-ui/info.svg +1 -0
- package/src/img/mapsight-ui/layers.svg +1 -0
- package/src/img/mapsight-ui/loading.svg +1 -0
- package/src/img/mapsight-ui/map.svg +1 -0
- package/src/img/mapsight-ui/measure-distance.svg +7 -0
- package/src/img/mapsight-ui/open-list.svg +1 -0
- package/src/img/mapsight-ui/place-marker.svg +4 -0
- package/src/img/mapsight-ui/print.svg +4 -0
- package/src/img/mapsight-ui/reset-active.svg +1 -0
- package/src/img/mapsight-ui/reset.svg +1 -0
- package/src/img/mapsight-ui/search.svg +1 -0
- package/src/img/mapsight-ui/sharing.svg +7 -0
- package/src/img/mapsight-ui/sort-active.svg +1 -0
- package/src/img/mapsight-ui/sort.svg +1 -0
- package/src/img/mapsight-ui/watermark.svg +1 -0
- package/src/img/mapsight-ui/zoom-in.svg +3 -0
- package/src/img/mapsight-ui/zoom-out.svg +3 -0
- package/src/js/components/app.jsx +237 -0
- package/src/js/components/close-overlay-button.tsx +27 -0
- package/src/js/components/feature-details-content/feature-details-content-inner.tsx +116 -0
- package/src/js/components/feature-details-content/feature-details-content.jsx +185 -0
- package/src/js/components/feature-details-content/index.js +20 -0
- package/src/js/components/feature-details-content/share-feature-link-modal.jsx +56 -0
- package/src/js/components/feature-list/content.jsx +42 -0
- package/src/js/components/feature-list/context.tsx +47 -0
- package/src/js/components/feature-list/empty-message.jsx +15 -0
- package/src/js/components/feature-list/filter.jsx +35 -0
- package/src/js/components/feature-list/footer.jsx +5 -0
- package/src/js/components/feature-list/grouped-content.jsx +74 -0
- package/src/js/components/feature-list/header.jsx +7 -0
- package/src/js/components/feature-list/hooks/useAutoloadFeatureSource.ts +25 -0
- package/src/js/components/feature-list/hooks/useFeatureListFeatureSource.ts +22 -0
- package/src/js/components/feature-list/hooks/useFeatureListItemGroups.ts +127 -0
- package/src/js/components/feature-list/hooks/useFeatureListState.ts +90 -0
- package/src/js/components/feature-list/hooks/useKeyboardNavigation.js +112 -0
- package/src/js/components/feature-list/hooks/useMakeHeaderSticky.js +40 -0
- package/src/js/components/feature-list/hooks/usePaginatedFilteredFeatures.ts +129 -0
- package/src/js/components/feature-list/hooks/useRestoreDocumentScroll.js +12 -0
- package/src/js/components/feature-list/hooks/useSelectFeature.js +88 -0
- package/src/js/components/feature-list/index.jsx +278 -0
- package/src/js/components/feature-list/pagination.tsx +57 -0
- package/src/js/components/feature-list/query-input.jsx +14 -0
- package/src/js/components/feature-list-cycling/button.jsx +13 -0
- package/src/js/components/feature-list-cycling/dot.jsx +43 -0
- package/src/js/components/feature-list-cycling/feature-list-cycling.jsx +153 -0
- package/src/js/components/feature-list-cycling/index.js +82 -0
- package/src/js/components/feature-list-item/head.jsx +131 -0
- package/src/js/components/feature-list-item/hooks/useFeatureListItemScrollAndFocus.js +51 -0
- package/src/js/components/feature-list-item/hooks/useFeatureListItemState.ts +75 -0
- package/src/js/components/feature-list-item/icon.jsx +35 -0
- package/src/js/components/feature-list-item/index.jsx +168 -0
- package/src/js/components/feature-list-sorting/feature-list-sorting.tsx +144 -0
- package/src/js/components/feature-list-sorting/index.js +25 -0
- package/src/js/components/feature-list-sorting/status-indicator.jsx +10 -0
- package/src/js/components/feature-select-button.jsx +70 -0
- package/src/js/components/feature-selection-info/close-button.jsx +64 -0
- package/src/js/components/feature-selection-info/container.jsx +9 -0
- package/src/js/components/feature-selection-info/header.tsx +27 -0
- package/src/js/components/feature-selection-info/index.tsx +81 -0
- package/src/js/components/feature-selection-info/with-sticky-header.jsx +61 -0
- package/src/js/components/feature-selection-info/without-sticky-header.jsx +19 -0
- package/src/js/components/feature-selection-info/wrapper.jsx +43 -0
- package/src/js/components/helping/app-channel.tsx +99 -0
- package/src/js/components/helping/app-context.tsx +32 -0
- package/src/js/components/helping/visibility-wrapper.jsx +23 -0
- package/src/js/components/instance.tsx +48 -0
- package/src/js/components/layer-switcher/GroupedLayerSwitcher.js +47 -0
- package/src/js/components/layer-switcher/LayerSwitcher.js +27 -0
- package/src/js/components/layer-switcher/LayerSwitcherEntry.js +132 -0
- package/src/js/components/layer-switcher/LayerSwticherContainer.jsx +80 -0
- package/src/js/components/layer-switcher/index.js +47 -0
- package/src/js/components/layout/additional-container/content.jsx +10 -0
- package/src/js/components/layout/additional-container/index.jsx +5 -0
- package/src/js/components/layout/additional-container/marginal.jsx +10 -0
- package/src/js/components/layout/main-container.jsx +5 -0
- package/src/js/components/layout/map-row.jsx +5 -0
- package/src/js/components/layout/title-bar.tsx +25 -0
- package/src/js/components/layout/wrapper.jsx +28 -0
- package/src/js/components/link-share.jsx +78 -0
- package/src/js/components/main-panel/container.tsx +23 -0
- package/src/js/components/main-panel/context.jsx +62 -0
- package/src/js/components/main-panel/index.tsx +46 -0
- package/src/js/components/main-panel/list-toggle-button.jsx +43 -0
- package/src/js/components/map-overlay/area.jsx +17 -0
- package/src/js/components/map-overlay/attribution-entries.tsx +33 -0
- package/src/js/components/map-overlay/attribution.tsx +25 -0
- package/src/js/components/map-overlay/combined-buttons.jsx +5 -0
- package/src/js/components/map-overlay/index.jsx +5 -0
- package/src/js/components/map-overlay/info-overlay-left.jsx +51 -0
- package/src/js/components/map-overlay/info-overlay-modal.tsx +49 -0
- package/src/js/components/map-overlay/info-overlay-right.jsx +46 -0
- package/src/js/components/map-overlay/layer-switcher-overlay.tsx +100 -0
- package/src/js/components/map-overlay/legend.tsx +22 -0
- package/src/js/components/map-overlay/logo.jsx +11 -0
- package/src/js/components/map-overlay/measure-distance-button.tsx +116 -0
- package/src/js/components/map-overlay/measure-distance-overlay.jsx +56 -0
- package/src/js/components/map-overlay/mini-legend.jsx +103 -0
- package/src/js/components/map-overlay/region-selector.jsx +63 -0
- package/src/js/components/map-overlay/search-overlay.jsx +79 -0
- package/src/js/components/map-overlay/share-position-link-button.tsx +144 -0
- package/src/js/components/map-overlay/tool-overlay.tsx +28 -0
- package/src/js/components/map-overlay/user-geo-location-button.jsx +89 -0
- package/src/js/components/map-overlay/zoom-button.jsx +98 -0
- package/src/js/components/map-overlay/zoom-buttons.jsx +26 -0
- package/src/js/components/map-synced-interlay/index.js +17 -0
- package/src/js/components/map-synced-interlay/map-synced-interlay.jsx +22 -0
- package/src/js/components/map-synced-interlay/tooltip-content.tsx +22 -0
- package/src/js/components/map-synced-interlay/tooltip.tsx +199 -0
- package/src/js/components/map-wrapper.tsx +65 -0
- package/src/js/components/map.jsx +37 -0
- package/src/js/components/modal.tsx +40 -0
- package/src/js/components/query-input-with-label.tsx +71 -0
- package/src/js/components/query-input.tsx +81 -0
- package/src/js/components/search/index.jsx +83 -0
- package/src/js/components/search/query-input.jsx +20 -0
- package/src/js/components/search/result-entry.jsx +63 -0
- package/src/js/components/search/result.jsx +71 -0
- package/src/js/components/switcher/GroupedSwitcher.jsx +42 -0
- package/src/js/components/switcher/Switcher.jsx +54 -0
- package/src/js/components/switcher/SwitcherButton.jsx +23 -0
- package/src/js/components/switcher/SwitcherEntry.jsx +143 -0
- package/src/js/components/switcher/SwitcherHeader.jsx +58 -0
- package/src/js/components/switcher/SwitcherStatusIcon.jsx +36 -0
- package/src/js/components/tag-switcher/TagSwitcher.jsx +57 -0
- package/src/js/components/tag-switcher/createTagSwitcherEntry.js +41 -0
- package/src/js/components/tag-switcher/createTagSwitcherHeader.js +34 -0
- package/src/js/components/tag-switcher/index.js +20 -0
- package/src/js/components/time-filter.jsx +187 -0
- package/src/js/components/view-toggle-button/desktop-button.jsx +13 -0
- package/src/js/components/view-toggle-button/index.js +39 -0
- package/src/js/components/view-toggle-button/mobile-button.jsx +13 -0
- package/src/js/components/view-toggle-button/view-toggle-button.jsx +74 -0
- package/src/js/components/view-toggle-button/viewport-button.jsx +13 -0
- package/src/js/config/constants/app.ts +16 -0
- package/src/js/config/constants/controllers.ts +11 -0
- package/src/js/config/feature/selections.ts +13 -0
- package/src/js/config/feature/sources.ts +77 -0
- package/src/js/config/index.ts +133 -0
- package/src/js/config/map/featureInteractions.ts +53 -0
- package/src/js/config/map/interactions.ts +15 -0
- package/src/js/config/map/layers.ts +190 -0
- package/src/js/controllers/defaults.ts +36 -0
- package/src/js/embed/browser.ts +89 -0
- package/src/js/embed/node.ts +57 -0
- package/src/js/filters/tag-filter.ts +135 -0
- package/src/js/filters/time-filter.ts +53 -0
- package/src/js/global.d.ts +7 -0
- package/src/js/helpers/components.ts +66 -0
- package/src/js/helpers/create-action-watcher.ts +35 -0
- package/src/js/helpers/events.ts +11 -0
- package/src/js/helpers/get-feature-property.ts +14 -0
- package/src/js/helpers/i18n/de.ts +145 -0
- package/src/js/helpers/i18n/en.ts +140 -0
- package/src/js/helpers/i18n/index.ts +41 -0
- package/src/js/helpers/makeReplaceableComponent.ts +0 -0
- package/src/js/helpers/mod-classes.ts +47 -0
- package/src/js/helpers/react.ts +14 -0
- package/src/js/helpers/scroll-to-element-top.ts +16 -0
- package/src/js/helpers/sort-features-by-distance.ts +102 -0
- package/src/js/helpers/sticky.js +143 -0
- package/src/js/hooks/useCallbackRef.ts +14 -0
- package/src/js/hooks/useControllableState.ts +50 -0
- package/src/js/hooks/useDebounce.ts +32 -0
- package/src/js/hooks/useHandleEscapeKeyDown.ts +27 -0
- package/src/js/hooks/useMapsightPanel.ts +40 -0
- package/src/js/hooks/useMountable.ts +38 -0
- package/src/js/hooks/usePrevious.ts +15 -0
- package/src/js/hooks/useStickyHeader.ts +51 -0
- package/src/js/hooks/useUpdateMapSizeCallback.ts +32 -0
- package/src/js/hooks/useUpdateMapSizeOnRender.ts +16 -0
- package/src/js/hooks/useUpdateMapSizeOnTransitionEnd.ts +40 -0
- package/src/js/hooks/useUpdateMapSizeOnViewChange.ts +36 -0
- package/src/js/index.ts +319 -0
- package/src/js/plugins/browser/app-title.ts +36 -0
- package/src/js/plugins/browser/debug.ts +37 -0
- package/src/js/plugins/browser/feature-deep-link.ts +222 -0
- package/src/js/plugins/browser/local-storage.ts +79 -0
- package/src/js/plugins/browser/native-fullscreen.ts +81 -0
- package/src/js/plugins/browser/no-scroll.ts +90 -0
- package/src/js/plugins/browser/partial-content-changed-event.ts +23 -0
- package/src/js/plugins/browser/piwik-track-feature-selection-event.ts +75 -0
- package/src/js/plugins/browser/piwik-track-fullscreen-toggle-event.ts +46 -0
- package/src/js/plugins/browser/search.ts +42 -0
- package/src/js/plugins/browser/share-position-link.ts +463 -0
- package/src/js/plugins/browser/toggle-mobile-views.ts +60 -0
- package/src/js/plugins/browser/user-geolocation.ts +134 -0
- package/src/js/plugins/browser/views.ts +141 -0
- package/src/js/plugins/browser-defaults.ts +101 -0
- package/src/js/plugins/common/feature-selection-details-url.ts +135 -0
- package/src/js/plugins/common/lang.ts +17 -0
- package/src/js/plugins/common/measure-distance.ts +223 -0
- package/src/js/plugins/common/ol-proxy.ts +68 -0
- package/src/js/plugins/common/render-await-feature-details-loaded.ts +153 -0
- package/src/js/plugins/common/render-await-list-feature-sources-loaded.ts +108 -0
- package/src/js/plugins/server/feature-deep-link.ts +67 -0
- package/src/js/plugins/server-defaults.ts +36 -0
- package/src/js/renderer/browser-dom.tsx +23 -0
- package/src/js/renderer/server-string.tsx +17 -0
- package/src/js/server-handler.js +39 -0
- package/src/js/store/actions.ts +648 -0
- package/src/js/store/reducers.ts +491 -0
- package/src/js/store/selectors.ts +449 -0
- package/src/js/types.ts +381 -0
- package/src/scss/_reset.scss +205 -0
- package/src/scss/_variables.scss +94 -0
- package/src/scss/blocks/_additional-container.scss +25 -0
- package/src/scss/blocks/_app-overlay.scss +19 -0
- package/src/scss/blocks/_attribution.scss +41 -0
- package/src/scss/blocks/_dialog-close-button.scss +32 -0
- package/src/scss/blocks/_feature-link.scss +44 -0
- package/src/scss/blocks/_feature-selection-info.scss +107 -0
- package/src/scss/blocks/_features-sorting.scss +23 -0
- package/src/scss/blocks/_filter-button.scss +78 -0
- package/src/scss/blocks/_filter.scss +16 -0
- package/src/scss/blocks/_flex.scss +20 -0
- package/src/scss/blocks/_hint.scss +58 -0
- package/src/scss/blocks/_info-overlay.scss +26 -0
- package/src/scss/blocks/_input-container.scss +31 -0
- package/src/scss/blocks/_layer-switcher-overlay.scss +24 -0
- package/src/scss/blocks/_layer-switcher.scss +138 -0
- package/src/scss/blocks/_link-share.scss +25 -0
- package/src/scss/blocks/_list-cycling-box.scss +143 -0
- package/src/scss/blocks/_list-header.scss +20 -0
- package/src/scss/blocks/_list-pagination.scss +41 -0
- package/src/scss/blocks/_list-toggle-button.scss +57 -0
- package/src/scss/blocks/_list-wrapper.scss +25 -0
- package/src/scss/blocks/_list.scss +100 -0
- package/src/scss/blocks/_logo.scss +27 -0
- package/src/scss/blocks/_main-container.scss +9 -0
- package/src/scss/blocks/_map-overlay-combined-buttons.scss +45 -0
- package/src/scss/blocks/_map-overlay.scss +224 -0
- package/src/scss/blocks/_map-row.scss +13 -0
- package/src/scss/blocks/_map-synced-interlay.scss +18 -0
- package/src/scss/blocks/_map-target.scss +7 -0
- package/src/scss/blocks/_map-usage.scss +6 -0
- package/src/scss/blocks/_map-wrapper.scss +27 -0
- package/src/scss/blocks/_marginal.scss +32 -0
- package/src/scss/blocks/_mini-legend.scss +51 -0
- package/src/scss/blocks/_modal.scss +67 -0
- package/src/scss/blocks/_page-title.scss +19 -0
- package/src/scss/blocks/_panel-container.scss +36 -0
- package/src/scss/blocks/_panel.scss +30 -0
- package/src/scss/blocks/_query-input-with-label.scss +55 -0
- package/src/scss/blocks/_region-selector.scss +44 -0
- package/src/scss/blocks/_search-overlay.scss +21 -0
- package/src/scss/blocks/_search-result.scss +127 -0
- package/src/scss/blocks/_search.scss +84 -0
- package/src/scss/blocks/_share-link.scss +15 -0
- package/src/scss/blocks/_sticky-header.scss +50 -0
- package/src/scss/blocks/_switcher-header.scss +17 -0
- package/src/scss/blocks/_tool-overlay.scss +38 -0
- package/src/scss/blocks/_tooltip.scss +51 -0
- package/src/scss/blocks/_viewport-button.scss +101 -0
- package/src/scss/blocks/_watermark.scss +21 -0
- package/src/scss/blocks/_wrapper.scss +22 -0
- package/src/scss/default.scss +63 -0
- package/src/scss/global/_no-scroll.scss +6 -0
- package/src/scss/helpers/visually-hidden.scss +8 -0
- package/src/scss/mixins/_visually-hidden.scss +31 -0
- package/src/scss/ol/_viewport.scss +18 -0
- package/src/scss/themes/2022-03.scss +48 -0
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import type {ProjectionLike} from "ol/proj";
|
|
2
|
+
|
|
3
|
+
import type {
|
|
4
|
+
Description,
|
|
5
|
+
LayerMetaData,
|
|
6
|
+
OptionValue,
|
|
7
|
+
Options,
|
|
8
|
+
} from "@mapsight/core/lib/map/types";
|
|
9
|
+
|
|
10
|
+
import type {MapsightStyleFunctionEnv} from "@mapsight/lib-ol/style/styleFunction";
|
|
11
|
+
|
|
12
|
+
import {FEATURE_SELECTIONS, FEATURE_SOURCES} from "../constants/controllers";
|
|
13
|
+
import {
|
|
14
|
+
FEATURE_SELECTION_HIGHLIGHT,
|
|
15
|
+
FEATURE_SELECTION_SELECT,
|
|
16
|
+
} from "../feature/selections";
|
|
17
|
+
|
|
18
|
+
export function features(
|
|
19
|
+
featureSourceId: string,
|
|
20
|
+
visible = false,
|
|
21
|
+
interactive = false,
|
|
22
|
+
_metaData: LayerMetaData = {},
|
|
23
|
+
style: string | MapsightStyleFunctionEnv = "features",
|
|
24
|
+
sourceOptions?: Options,
|
|
25
|
+
): Description {
|
|
26
|
+
return {
|
|
27
|
+
type: "VectorLayer",
|
|
28
|
+
options: {
|
|
29
|
+
visible: visible,
|
|
30
|
+
style: style as OptionValue,
|
|
31
|
+
//updateWhileAnimating: true,
|
|
32
|
+
//updateWhileInteracting: true,
|
|
33
|
+
renderBuffer: 200,
|
|
34
|
+
source: {
|
|
35
|
+
type: "VectorFeatureSource",
|
|
36
|
+
options: {
|
|
37
|
+
featureSourceId,
|
|
38
|
+
featureSourcesControllerName: FEATURE_SOURCES,
|
|
39
|
+
featureSelectionsControllerName: FEATURE_SELECTIONS,
|
|
40
|
+
...sourceOptions,
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
selections: !interactive
|
|
44
|
+
? {}
|
|
45
|
+
: {
|
|
46
|
+
//'second-touch': FEATURE_SELECTION_SELECT,
|
|
47
|
+
//touch: FEATURE_SELECTION_HIGHLIGHT,
|
|
48
|
+
mousedown: FEATURE_SELECTION_SELECT,
|
|
49
|
+
touch: FEATURE_SELECTION_SELECT,
|
|
50
|
+
mouseover: FEATURE_SELECTION_HIGHLIGHT,
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
metaData: _metaData,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export function interactiveFeatures(
|
|
58
|
+
featureSourceId,
|
|
59
|
+
visible = false,
|
|
60
|
+
_metaData = {},
|
|
61
|
+
style: string | MapsightStyleFunctionEnv = "features",
|
|
62
|
+
sourceOptions?: Options,
|
|
63
|
+
) {
|
|
64
|
+
return features(
|
|
65
|
+
featureSourceId,
|
|
66
|
+
visible,
|
|
67
|
+
true,
|
|
68
|
+
_metaData,
|
|
69
|
+
style,
|
|
70
|
+
sourceOptions,
|
|
71
|
+
);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export function userGeolocation(
|
|
75
|
+
featureSourceId: string,
|
|
76
|
+
visible = false,
|
|
77
|
+
_metaData: LayerMetaData = {},
|
|
78
|
+
style: string | MapsightStyleFunctionEnv = "userGeolocation",
|
|
79
|
+
sourceOptions?: Options,
|
|
80
|
+
) {
|
|
81
|
+
const base = features(
|
|
82
|
+
featureSourceId,
|
|
83
|
+
visible,
|
|
84
|
+
false,
|
|
85
|
+
_metaData,
|
|
86
|
+
style,
|
|
87
|
+
sourceOptions,
|
|
88
|
+
);
|
|
89
|
+
|
|
90
|
+
return {
|
|
91
|
+
...base,
|
|
92
|
+
options: {
|
|
93
|
+
...base.options,
|
|
94
|
+
updateWhileAnimating: true,
|
|
95
|
+
updateWhileInteracting: true,
|
|
96
|
+
renderBuffer: 400,
|
|
97
|
+
},
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export function osm(url: string, visible = false, _metaData = {}) {
|
|
102
|
+
return {
|
|
103
|
+
type: "TileLayer",
|
|
104
|
+
metaData: _metaData,
|
|
105
|
+
options: {
|
|
106
|
+
source: {
|
|
107
|
+
type: "OsmSource",
|
|
108
|
+
options: {url},
|
|
109
|
+
},
|
|
110
|
+
visible,
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export function wms(
|
|
116
|
+
url: string,
|
|
117
|
+
params = {},
|
|
118
|
+
projection: ProjectionLike = "ESPG:3857",
|
|
119
|
+
visible = false,
|
|
120
|
+
_metaData: LayerMetaData = {},
|
|
121
|
+
opacity?: number,
|
|
122
|
+
) {
|
|
123
|
+
return {
|
|
124
|
+
type: "TileLayer",
|
|
125
|
+
metaData: _metaData,
|
|
126
|
+
options: {
|
|
127
|
+
source: {
|
|
128
|
+
type: "TileWMSSource",
|
|
129
|
+
options: {
|
|
130
|
+
projection,
|
|
131
|
+
url,
|
|
132
|
+
params,
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
visible,
|
|
136
|
+
opacity,
|
|
137
|
+
},
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
// TODO metadata auftrennen in metaData, withAttribution() und withLegend()
|
|
142
|
+
export function metaData(
|
|
143
|
+
title: string,
|
|
144
|
+
attribution: string | null = null,
|
|
145
|
+
visibleInLayerSwitcher = false,
|
|
146
|
+
visibleInExternalLayerSwitcher = false,
|
|
147
|
+
isBaseLayer = false,
|
|
148
|
+
group: string | null = null,
|
|
149
|
+
lockedInLayerSwitcher = undefined,
|
|
150
|
+
): LayerMetaData {
|
|
151
|
+
return {
|
|
152
|
+
title,
|
|
153
|
+
attribution: attribution ?? undefined,
|
|
154
|
+
visibleInLayerSwitcher,
|
|
155
|
+
visibleInExternalLayerSwitcher,
|
|
156
|
+
group: group ?? undefined,
|
|
157
|
+
isBaseLayer,
|
|
158
|
+
lockedInLayerSwitcher, // users can't change layer's visbility TODO this has to be implemented
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export function metaDataWithAttribution(
|
|
163
|
+
_metaData: LayerMetaData = {},
|
|
164
|
+
attribution: string,
|
|
165
|
+
): LayerMetaData {
|
|
166
|
+
return {
|
|
167
|
+
..._metaData,
|
|
168
|
+
attribution: attribution,
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
export function metaDataWithLegend(
|
|
173
|
+
_metaData: LayerMetaData = {},
|
|
174
|
+
legend,
|
|
175
|
+
): LayerMetaData {
|
|
176
|
+
return {
|
|
177
|
+
..._metaData,
|
|
178
|
+
legend: legend,
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
export function metaDataWithMiniLegend(
|
|
183
|
+
_metaData: LayerMetaData = {},
|
|
184
|
+
miniLegend,
|
|
185
|
+
): LayerMetaData {
|
|
186
|
+
return {
|
|
187
|
+
..._metaData,
|
|
188
|
+
miniLegend: miniLegend,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type {BaseController} from "@mapsight/core/lib/base/controller";
|
|
2
|
+
import {FeatureSelectionsController} from "@mapsight/core/lib/feature-selections/controller";
|
|
3
|
+
import {FeatureSourcesController} from "@mapsight/core/lib/feature-sources/controller";
|
|
4
|
+
import {FilterController} from "@mapsight/core/lib/filter/controller";
|
|
5
|
+
import {ListController} from "@mapsight/core/lib/list/controller";
|
|
6
|
+
import {MapController} from "@mapsight/core/lib/map/controller";
|
|
7
|
+
import {ProjectionsController} from "@mapsight/core/lib/projections/controller";
|
|
8
|
+
import {UserGeolocationController} from "@mapsight/core/lib/user-geolocation/controller";
|
|
9
|
+
|
|
10
|
+
import * as c from "../config/constants/controllers";
|
|
11
|
+
import {createTagFilterFunction} from "../filters/tag-filter";
|
|
12
|
+
import timeFilter from "../filters/time-filter";
|
|
13
|
+
import type {MapsightUiContext} from "../types";
|
|
14
|
+
|
|
15
|
+
export function createDefaultControllers(
|
|
16
|
+
context: MapsightUiContext,
|
|
17
|
+
): Record<string, BaseController> {
|
|
18
|
+
const mapController = new MapController(c.MAP);
|
|
19
|
+
mapController.setStyleFunction(context.styleFunction);
|
|
20
|
+
|
|
21
|
+
return {
|
|
22
|
+
[c.PROJECTIONS]: new ProjectionsController(c.PROJECTIONS),
|
|
23
|
+
[c.MAP]: mapController,
|
|
24
|
+
[c.FEATURE_LIST]: new ListController(c.FEATURE_LIST),
|
|
25
|
+
[c.TIME_FILTER]: new FilterController(c.TIME_FILTER, timeFilter),
|
|
26
|
+
[c.TAG_FILTER]: new FilterController(
|
|
27
|
+
c.TAG_FILTER,
|
|
28
|
+
createTagFilterFunction(),
|
|
29
|
+
),
|
|
30
|
+
[c.USER_GEOLOCATION]: new UserGeolocationController(c.USER_GEOLOCATION),
|
|
31
|
+
[c.FEATURE_SOURCES]: new FeatureSourcesController(c.FEATURE_SOURCES),
|
|
32
|
+
[c.FEATURE_SELECTIONS]: new FeatureSelectionsController(
|
|
33
|
+
c.FEATURE_SELECTIONS,
|
|
34
|
+
),
|
|
35
|
+
};
|
|
36
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import merge from "lodash/merge";
|
|
2
|
+
|
|
3
|
+
import type {MapsightStyleFunction} from "@mapsight/lib-ol/style/styleFunction";
|
|
4
|
+
|
|
5
|
+
import {create} from "../index";
|
|
6
|
+
import browserDomRenderer from "../renderer/browser-dom";
|
|
7
|
+
import type {CreateOptions, MapsightUiRenderFunction} from "../types";
|
|
8
|
+
|
|
9
|
+
type Options = {
|
|
10
|
+
/** style function */
|
|
11
|
+
styleFunction: MapsightStyleFunction;
|
|
12
|
+
|
|
13
|
+
/** base mapsight core config */
|
|
14
|
+
baseMapsightConfig: object;
|
|
15
|
+
|
|
16
|
+
/**create options */
|
|
17
|
+
createOptions: CreateOptions;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Browser embed
|
|
22
|
+
*
|
|
23
|
+
* @param container the container element to render the app into
|
|
24
|
+
* @param options
|
|
25
|
+
* @returns render function
|
|
26
|
+
*/
|
|
27
|
+
export default function browserEmbed(
|
|
28
|
+
container: HTMLElement,
|
|
29
|
+
options: Options,
|
|
30
|
+
): MapsightUiRenderFunction<any> | undefined {
|
|
31
|
+
const {
|
|
32
|
+
styleFunction,
|
|
33
|
+
baseMapsightConfig = {},
|
|
34
|
+
createOptions = {},
|
|
35
|
+
} = options;
|
|
36
|
+
|
|
37
|
+
const {dehydratedStateAttributeName = "data-dehydrated-state"} =
|
|
38
|
+
createOptions;
|
|
39
|
+
|
|
40
|
+
createOptions.renderer = createOptions.renderer || browserDomRenderer;
|
|
41
|
+
|
|
42
|
+
if (
|
|
43
|
+
!createOptions.reHydratedState &&
|
|
44
|
+
dehydratedStateAttributeName &&
|
|
45
|
+
container
|
|
46
|
+
) {
|
|
47
|
+
pullDeHydratedStateFromContainer(
|
|
48
|
+
createOptions,
|
|
49
|
+
dehydratedStateAttributeName,
|
|
50
|
+
container,
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
createOptions.uiState = merge({}, createOptions.uiState || {});
|
|
54
|
+
|
|
55
|
+
const {render} = create(
|
|
56
|
+
container,
|
|
57
|
+
styleFunction,
|
|
58
|
+
baseMapsightConfig,
|
|
59
|
+
createOptions,
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
// initial render
|
|
63
|
+
if (render !== undefined) {
|
|
64
|
+
render({});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return render;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
function pullDeHydratedStateFromContainer(
|
|
71
|
+
createOptions: CreateOptions,
|
|
72
|
+
dehydratedStateAttributeName: string,
|
|
73
|
+
container: HTMLElement,
|
|
74
|
+
): void {
|
|
75
|
+
const stateJson = container.getAttribute(dehydratedStateAttributeName);
|
|
76
|
+
if (stateJson === null) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
try {
|
|
81
|
+
createOptions.reHydratedState = JSON.parse(stateJson);
|
|
82
|
+
container.setAttribute(dehydratedStateAttributeName, "");
|
|
83
|
+
} catch (e) {
|
|
84
|
+
console.error(
|
|
85
|
+
"mapsight ui: error reading dehydrated state from container",
|
|
86
|
+
e,
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type {MapsightStyleFunction} from "@mapsight/lib-ol/style/styleFunction";
|
|
2
|
+
|
|
3
|
+
import {create} from "..";
|
|
4
|
+
import serverStringRenderer from "../renderer/server-string";
|
|
5
|
+
import type {CreateOptions} from "../types";
|
|
6
|
+
|
|
7
|
+
type Options = {
|
|
8
|
+
/** style function */
|
|
9
|
+
styleFunction: MapsightStyleFunction;
|
|
10
|
+
|
|
11
|
+
/** base mapsight core config */
|
|
12
|
+
baseMapsightConfig: object;
|
|
13
|
+
|
|
14
|
+
/**create options */
|
|
15
|
+
createOptions: CreateOptions;
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
type Result = {
|
|
19
|
+
store: any;
|
|
20
|
+
// (function(*=): undefined)
|
|
21
|
+
render(...something: Array<any>): void;
|
|
22
|
+
// (function(*=): Promise<undefined>)
|
|
23
|
+
renderAsync(...something: Array<any>): Promise<void>;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Node embed
|
|
28
|
+
*
|
|
29
|
+
* @returns embed reference
|
|
30
|
+
*/
|
|
31
|
+
export default function nodeEmbed(options: Options): Result {
|
|
32
|
+
const {
|
|
33
|
+
styleFunction,
|
|
34
|
+
baseMapsightConfig = {},
|
|
35
|
+
createOptions = {},
|
|
36
|
+
} = options;
|
|
37
|
+
|
|
38
|
+
createOptions.renderer = createOptions.renderer ?? serverStringRenderer;
|
|
39
|
+
|
|
40
|
+
const ctx = create(null, styleFunction, baseMapsightConfig, createOptions);
|
|
41
|
+
|
|
42
|
+
function render(renderProps = {}) {
|
|
43
|
+
if (ctx.render) {
|
|
44
|
+
ctx.render(renderProps);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
async function renderAsync(renderProps = {}) {
|
|
49
|
+
if (ctx.renderAsync) {
|
|
50
|
+
await ctx.renderAsync(renderProps);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// for node we do not render but return an object with
|
|
55
|
+
// references to store and async render function
|
|
56
|
+
return {store: ctx.store, render, renderAsync};
|
|
57
|
+
}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import type {FilterFunction} from "@mapsight/core/lib/filter/types";
|
|
2
|
+
|
|
3
|
+
import getPath from "@mapsight/lib-js/object/getPath";
|
|
4
|
+
|
|
5
|
+
import type {MapsightUiFeature} from "../types";
|
|
6
|
+
|
|
7
|
+
type CacheEntry = {
|
|
8
|
+
features: Array<MapsightUiFeature>;
|
|
9
|
+
filtered: Array<MapsightUiFeature>;
|
|
10
|
+
visibleTags: Record<string, Array<string>>;
|
|
11
|
+
visibleTagGroups: Record<string, boolean>;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Creates a cached tag filter function
|
|
16
|
+
*/
|
|
17
|
+
export function createTagFilterFunction(): FilterFunction {
|
|
18
|
+
const cache: Record<string, CacheEntry> = {};
|
|
19
|
+
|
|
20
|
+
return function tagFilterFunction(_features, filterState, featureSourceId) {
|
|
21
|
+
// FIXME: unify types for Features in core and ui
|
|
22
|
+
const features = _features as MapsightUiFeature[];
|
|
23
|
+
|
|
24
|
+
// early return if parameters are missing
|
|
25
|
+
if (!featureSourceId || !filterState || !features) {
|
|
26
|
+
return features;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// show all features, if no tag is selected
|
|
30
|
+
const visibleTags = getPath(filterState, [
|
|
31
|
+
"visibleTags",
|
|
32
|
+
featureSourceId,
|
|
33
|
+
]) as Record<string, string[]>;
|
|
34
|
+
const visibleTagGroups = getPath(filterState, [
|
|
35
|
+
"visibleTagGroups",
|
|
36
|
+
featureSourceId,
|
|
37
|
+
]) as Record<string, boolean>;
|
|
38
|
+
if (!visibleTags && !visibleTagGroups) {
|
|
39
|
+
return features;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
let fromCache = cache[featureSourceId];
|
|
43
|
+
|
|
44
|
+
if (
|
|
45
|
+
fromCache === undefined ||
|
|
46
|
+
fromCache.features !== features ||
|
|
47
|
+
fromCache.visibleTags !== visibleTags ||
|
|
48
|
+
fromCache.visibleTagGroups !== visibleTagGroups
|
|
49
|
+
) {
|
|
50
|
+
const flattenedTags = transformTagMapsToArrays(
|
|
51
|
+
visibleTags,
|
|
52
|
+
visibleTagGroups,
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
fromCache = cache[featureSourceId] = {
|
|
56
|
+
// inputs:
|
|
57
|
+
features: features,
|
|
58
|
+
visibleTags: visibleTags,
|
|
59
|
+
visibleTagGroups: visibleTagGroups,
|
|
60
|
+
// output:
|
|
61
|
+
filtered: features.filter((feature) =>
|
|
62
|
+
flattenedTags.every(({group, tags}) =>
|
|
63
|
+
isFeatureMatchingFilter(feature, group, tags),
|
|
64
|
+
),
|
|
65
|
+
),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return fromCache?.filtered;
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* @deprecated Do not use. This uses a global cache. Use export createTagFilterFunction instead to create local function per mapsight instance!
|
|
75
|
+
*/
|
|
76
|
+
const deprecatedTagFilterFunction = createTagFilterFunction();
|
|
77
|
+
export default deprecatedTagFilterFunction;
|
|
78
|
+
|
|
79
|
+
function transformTagMapsToArrays(
|
|
80
|
+
visibleTags: Record<string, Array<string>> | null = null,
|
|
81
|
+
visibleTagGroups: Record<string, boolean> | null = null,
|
|
82
|
+
) {
|
|
83
|
+
const result = {};
|
|
84
|
+
if (visibleTags) {
|
|
85
|
+
Object.keys(visibleTags).forEach((group) => {
|
|
86
|
+
const tags = getVisibleTagsForGroup(visibleTags, group);
|
|
87
|
+
if (tags.length) {
|
|
88
|
+
result[group] = tags;
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if (visibleTagGroups) {
|
|
93
|
+
Object.keys(visibleTagGroups).forEach((group) => {
|
|
94
|
+
const isActive = !!visibleTagGroups[group];
|
|
95
|
+
|
|
96
|
+
if (isActive) {
|
|
97
|
+
result[group] = result[group] || true;
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
return Object.keys(result).map((group) => {
|
|
103
|
+
const tags = result[group];
|
|
104
|
+
return {group: group, tags: tags};
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function getVisibleTagsForGroup(
|
|
109
|
+
visibleTags: Record<string, Array<string>>,
|
|
110
|
+
tagGroup: string,
|
|
111
|
+
) {
|
|
112
|
+
return Object.keys(visibleTags[tagGroup]!).filter(
|
|
113
|
+
(tag) => visibleTags[tagGroup]![tag] === true,
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
function isFeatureMatchingFilter(
|
|
118
|
+
feature: MapsightUiFeature,
|
|
119
|
+
group: string,
|
|
120
|
+
visibleTags: boolean | Array<string>,
|
|
121
|
+
): boolean {
|
|
122
|
+
const featureData = feature.properties?.tagGroups?.[group];
|
|
123
|
+
if (!featureData) {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const {andJunction, tags} = featureData;
|
|
128
|
+
if (visibleTags === true) {
|
|
129
|
+
return !!tags.length;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
return visibleTags[andJunction === true ? "every" : "some"](
|
|
133
|
+
(tag) => tags.indexOf(tag) > -1,
|
|
134
|
+
);
|
|
135
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type {FilterFunction} from "@mapsight/core/lib/filter/types";
|
|
2
|
+
|
|
3
|
+
import {unreachable} from "@mapsight/lib-js/unreachable";
|
|
4
|
+
|
|
5
|
+
type TimeFilterState = {
|
|
6
|
+
options?: {
|
|
7
|
+
/** from datetime in ISO 8601 (Y-m-d\TH:i:sP) */
|
|
8
|
+
fromDate?: string;
|
|
9
|
+
/** to datetime in ISO 8601 (Y-m-d\TH:i:sP) */
|
|
10
|
+
toDate?: string;
|
|
11
|
+
/** if set to true the filter will filter even if neither from nor to date are set. */
|
|
12
|
+
allowEmpty?: boolean;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
// TODO: document/collect magic property names
|
|
17
|
+
export interface FeatureWithWhen {
|
|
18
|
+
when?: object;
|
|
19
|
+
/** start datetime in ISO 8601 (Y-m-d\TH:i:sP) */
|
|
20
|
+
start: string;
|
|
21
|
+
/** end datetime in ISO 8601 (Y-m-d\TH:i:sP) */
|
|
22
|
+
end: string;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Feature filter to filter by when property in a time range.
|
|
27
|
+
* Features are expected to have a when object property with
|
|
28
|
+
* start and end datetimes.
|
|
29
|
+
*/
|
|
30
|
+
const timeFilter: FilterFunction = (features, filterState: TimeFilterState) => {
|
|
31
|
+
const filterOptions = filterState.options;
|
|
32
|
+
if (!filterOptions) {
|
|
33
|
+
return features;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const {fromDate, toDate, allowEmpty = false} = filterOptions;
|
|
37
|
+
if (!allowEmpty && !fromDate && !toDate) {
|
|
38
|
+
return features;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
// TODO: document/collect magic property names (here: when.start, when.end)
|
|
42
|
+
const predicate = toDate
|
|
43
|
+
? (feature) =>
|
|
44
|
+
feature?.when?.start <= toDate &&
|
|
45
|
+
feature?.when?.end >= (fromDate || Date.now())
|
|
46
|
+
: fromDate
|
|
47
|
+
? (feature) => feature?.when?.end >= fromDate
|
|
48
|
+
: unreachable();
|
|
49
|
+
|
|
50
|
+
return features.filter(predicate);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
export default timeFilter;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type {ComponentType, ReactNode} from "react";
|
|
2
|
+
import {createContext, createElement, useCallback, useContext} from "react";
|
|
3
|
+
|
|
4
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
|
5
|
+
export interface ComponentProps {
|
|
6
|
+
// extendable
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export type PropsWithFallback<P = unknown> = P & {
|
|
10
|
+
fallback?: ReactNode | undefined;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
/** @deprecated */
|
|
14
|
+
export type ComponentPropsWithFallback = {
|
|
15
|
+
MapOverlayModal: PropsWithFallback;
|
|
16
|
+
MapOverlayStart: PropsWithFallback;
|
|
17
|
+
MapOverlayEnd: PropsWithFallback;
|
|
18
|
+
MapOverlayTopLeft: PropsWithFallback;
|
|
19
|
+
MapOverlayTopRight: PropsWithFallback;
|
|
20
|
+
MapOverlayBottomLeft: PropsWithFallback;
|
|
21
|
+
MapOverlayBottomRight: PropsWithFallback;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export type MapsightUiComponents = {
|
|
25
|
+
[N in keyof ComponentProps]?: ComponentType<ComponentProps[N]>;
|
|
26
|
+
} & {
|
|
27
|
+
[N in keyof ComponentPropsWithFallback]?: ComponentType<
|
|
28
|
+
ComponentPropsWithFallback[N]
|
|
29
|
+
>;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export const ComponentsContext = createContext<MapsightUiComponents>({});
|
|
33
|
+
ComponentsContext.displayName = "ComponentsContext";
|
|
34
|
+
|
|
35
|
+
/** @deprecated */
|
|
36
|
+
export function useContextComponentWithFallback<
|
|
37
|
+
N extends keyof ComponentPropsWithFallback,
|
|
38
|
+
>(
|
|
39
|
+
componentName: N,
|
|
40
|
+
): (fallback: ReactNode, props: ComponentPropsWithFallback[N]) => ReactNode {
|
|
41
|
+
const Comp = useContext(ComponentsContext)[componentName];
|
|
42
|
+
return useCallback(
|
|
43
|
+
(fallback, props) => {
|
|
44
|
+
if (Comp) {
|
|
45
|
+
return createElement(Comp, {...props, fallback});
|
|
46
|
+
}
|
|
47
|
+
return fallback;
|
|
48
|
+
},
|
|
49
|
+
[Comp],
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export function makeReplaceableComponent<N extends keyof ComponentProps>(
|
|
54
|
+
componentName: N,
|
|
55
|
+
Component: ComponentType<ComponentProps[N]>,
|
|
56
|
+
): ComponentType<ComponentProps[N]> {
|
|
57
|
+
const NewComp: ComponentType<ComponentProps[N]> = (props) => {
|
|
58
|
+
const CtxComp = useContext(ComponentsContext)[componentName];
|
|
59
|
+
if (CtxComp !== undefined) {
|
|
60
|
+
return createElement(CtxComp as any, props as any);
|
|
61
|
+
}
|
|
62
|
+
return createElement(Component as any, props as any);
|
|
63
|
+
};
|
|
64
|
+
NewComp.displayName = `MsUiReplaceable${componentName}`;
|
|
65
|
+
return NewComp;
|
|
66
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// FIXME: use es once default export is fixed in @mapsight/lib-redux
|
|
2
|
+
import type {AnyAction, StoreEnhancer} from "redux";
|
|
3
|
+
import {applyMiddleware} from "redux";
|
|
4
|
+
|
|
5
|
+
import {isNonNullable} from "@mapsight/lib-js/nonNullable";
|
|
6
|
+
import flattenActions from "@mapsight/lib-redux/flatten-actions";
|
|
7
|
+
|
|
8
|
+
type Result = {
|
|
9
|
+
handler: null | ((action: AnyAction) => void);
|
|
10
|
+
enhancer: StoreEnhancer<{dispatch: unknown}>;
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
// TODO: This is a candidate for lib-redux
|
|
14
|
+
export default function createActionWatcher(): Result {
|
|
15
|
+
const context: Partial<Result> = {
|
|
16
|
+
handler: null,
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
context.enhancer = applyMiddleware(
|
|
20
|
+
(_store) => (nextMiddleware) => (action) => {
|
|
21
|
+
const result = nextMiddleware(action);
|
|
22
|
+
|
|
23
|
+
if (isNonNullable(context.handler)) {
|
|
24
|
+
const {handler} = context;
|
|
25
|
+
flattenActions(action).map((singleAction) =>
|
|
26
|
+
handler(singleAction),
|
|
27
|
+
);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
return result;
|
|
31
|
+
},
|
|
32
|
+
);
|
|
33
|
+
|
|
34
|
+
return context as Result;
|
|
35
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns `true` if no modifier key is pressed for the event.
|
|
3
|
+
*/
|
|
4
|
+
export function isEventWithNoModKeys(event: {
|
|
5
|
+
altKey: boolean;
|
|
6
|
+
ctrlKey: boolean;
|
|
7
|
+
shiftKey: boolean;
|
|
8
|
+
metaKey: boolean;
|
|
9
|
+
}): boolean {
|
|
10
|
+
return !event.altKey && !event.ctrlKey && !event.metaKey && !event.shiftKey;
|
|
11
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import getPath from "@mapsight/lib-js/object/getPath";
|
|
2
|
+
|
|
3
|
+
import type {MapsightUiFeature, MapsightUiFeatureProperty} from "../types";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Gets the property value by key, falling back to the specified fallback if value is not defined.
|
|
7
|
+
*/
|
|
8
|
+
export default function getFeatureProperty(
|
|
9
|
+
feature: MapsightUiFeature,
|
|
10
|
+
key: MapsightUiFeatureProperty,
|
|
11
|
+
fallback: unknown = null,
|
|
12
|
+
) {
|
|
13
|
+
return getPath(feature, ["properties", key], fallback);
|
|
14
|
+
}
|