@vcmap/ui 5.0.2 → 5.1.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/build/buildTypes.js +176 -0
- package/build/lintTypes.js +30 -0
- package/config/aerowest.config.json +4 -0
- package/config/base.config.json +22 -0
- package/config/dev.config.json +176 -5
- package/config/www.config.json +32 -0
- package/dist/assets/{cesium.a3a1dc.js → cesium.b97c3b.js} +1859 -1828
- package/dist/assets/cesium.js +1 -1
- package/dist/assets/{core.bb64ed.js → core.5b03e5.js} +5859 -5041
- package/dist/assets/core.js +1 -1
- package/dist/assets/index-92075a75.js +1 -0
- package/dist/assets/{ol.833fa9.js → ol.0cd250.js} +7257 -7252
- package/dist/assets/ol.js +1 -1
- package/dist/assets/{ui.aeb2ec.css → ui.67779e.css} +2 -2
- package/dist/assets/{ui.aeb2ec.js → ui.67779e.js} +14199 -9198
- package/dist/assets/ui.js +1 -1
- package/dist/assets/{vue.8e1850.js → vue.62ecd5.js} +1243 -1234
- package/dist/assets/vue.js +2 -2
- package/dist/assets/{vuetify.3ed426.css → vuetify.3b3e23.css} +1 -1
- package/dist/assets/{vuetify.3ed426.js → vuetify.3b3e23.js} +155 -154
- package/dist/assets/vuetify.js +2 -2
- package/dist/index.html +1 -1
- package/index.d.ts +256 -0
- package/index.js +48 -11
- package/package.json +21 -14
- package/plugins/@vcmap-show-case/buttons-example/src/ButtonsExample.vue +3 -0
- package/plugins/@vcmap-show-case/category-tester/src/CategoriesExample.vue +312 -43
- package/plugins/@vcmap-show-case/category-tester/src/CollectionComponentOptions.vue +48 -182
- package/plugins/@vcmap-show-case/category-tester/src/FoobarEditor.vue +118 -0
- package/plugins/@vcmap-show-case/category-tester/src/importExportHelper.js +29 -0
- package/plugins/@vcmap-show-case/category-tester/src/index.js +16 -0
- package/plugins/@vcmap-show-case/collection-manager-example/src/CollectionManagerExample.vue +2 -1
- package/plugins/@vcmap-show-case/collection-manager-example/src/index.js +8 -4
- package/plugins/@vcmap-show-case/extent-example/README.md +3 -0
- package/plugins/@vcmap-show-case/extent-example/package.json +5 -0
- package/plugins/@vcmap-show-case/extent-example/src/ExtentExample.vue +71 -0
- package/plugins/@vcmap-show-case/extent-example/src/index.js +68 -0
- package/plugins/@vcmap-show-case/flight-component-example/README.md +3 -0
- package/plugins/@vcmap-show-case/flight-component-example/package.json +5 -0
- package/plugins/@vcmap-show-case/flight-component-example/src/FlightExample.vue +53 -0
- package/plugins/@vcmap-show-case/flight-component-example/src/index.js +42 -0
- package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +78 -5
- package/plugins/@vcmap-show-case/hello-world/src/helloWorld.vue +2 -2
- package/plugins/@vcmap-show-case/list-example/src/ListExample.vue +22 -10
- package/plugins/@vcmap-show-case/toolbox-example/README.md +9 -0
- package/plugins/@vcmap-show-case/toolbox-example/package.json +5 -0
- package/plugins/@vcmap-show-case/toolbox-example/src/TriStateExampleWindow.vue +21 -0
- package/plugins/@vcmap-show-case/toolbox-example/src/dummyToolboxActions.js +94 -0
- package/plugins/@vcmap-show-case/toolbox-example/src/index.js +260 -0
- package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +12 -2
- package/plugins/@vcmap-show-case/viewpoint-component-example/README.md +3 -0
- package/plugins/@vcmap-show-case/viewpoint-component-example/package.json +5 -0
- package/plugins/@vcmap-show-case/viewpoint-component-example/src/ViewpointExample.vue +52 -0
- package/plugins/@vcmap-show-case/viewpoint-component-example/src/index.js +42 -0
- package/plugins/@vcmap-show-case/window-tester/src/WindowExample.vue +31 -1
- package/plugins/@vcmap-show-case/window-tester/src/WindowExampleToggleChild.vue +20 -16
- package/plugins/@vcmap-show-case/window-tester/src/index.js +2 -17
- package/plugins/package.json +6 -2
- package/src/actions/StyleSelector.vue +8 -7
- package/src/actions/StyleSelector.vue.d.ts +27 -0
- package/src/actions/actionHelper.d.ts +153 -0
- package/src/actions/actionHelper.js +36 -19
- package/src/actions/extentActions.d.ts +40 -0
- package/src/actions/extentActions.js +359 -0
- package/src/actions/flightActions.d.ts +59 -0
- package/src/actions/flightActions.js +232 -0
- package/src/actions/listActions.d.ts +63 -0
- package/src/actions/listActions.js +185 -0
- package/src/actions/stateRefAction.d.ts +19 -0
- package/src/actions/stateRefAction.js +1 -1
- package/src/application/VcsApp.vue +103 -28
- package/src/application/VcsApp.vue.d.ts +86 -0
- package/src/application/VcsAppWrapper.vue.d.ts +12 -0
- package/src/application/VcsAttributions.vue.d.ts +14 -0
- package/src/application/VcsAttributionsFooter.vue +1 -4
- package/src/application/VcsAttributionsFooter.vue.d.ts +26 -0
- package/src/application/VcsMap.vue.d.ts +12 -0
- package/src/application/VcsNavbar.vue.d.ts +45 -0
- package/src/application/VcsPositionDisplay.vue +208 -0
- package/src/application/VcsPositionDisplay.vue.d.ts +18 -0
- package/src/application/VcsSettings.vue.d.ts +5 -0
- package/src/application/VcsTextPage.vue +65 -0
- package/src/application/VcsTextPage.vue.d.ts +16 -0
- package/src/application/VcsTextPageFooter.vue +89 -0
- package/src/application/VcsTextPageFooter.vue.d.ts +22 -0
- package/src/application/attributionsHelper.d.ts +64 -0
- package/src/application/attributionsHelper.js +1 -1
- package/src/application/markdownHelper.d.ts +5 -0
- package/src/application/markdownHelper.js +11 -0
- package/src/application/positionDisplayInteraction.d.ts +42 -0
- package/src/application/positionDisplayInteraction.js +65 -0
- package/src/callback/activateLayersCallback.d.ts +29 -0
- package/src/callback/activateLayersCallback.js +2 -2
- package/src/callback/applyLayerStyleCallback.d.ts +36 -0
- package/src/callback/applyLayerStyleCallback.js +2 -2
- package/src/callback/deactivateLayersCallback.d.ts +29 -0
- package/src/callback/deactivateLayersCallback.js +2 -2
- package/src/callback/goToViewpointCallback.d.ts +29 -0
- package/src/callback/goToViewpointCallback.js +2 -2
- package/src/callback/vcsCallback.d.ts +44 -0
- package/src/callback/vcsCallback.js +4 -9
- package/src/components/ImageElementInjector.vue.d.ts +24 -0
- package/src/components/buttons/VcsActionButtonList.vue +24 -16
- package/src/components/buttons/VcsActionButtonList.vue.d.ts +68 -0
- package/src/components/buttons/VcsButton.vue +7 -0
- package/src/components/buttons/VcsButton.vue.d.ts +89 -0
- package/src/components/buttons/VcsFormButton.vue +9 -0
- package/src/components/buttons/VcsFormButton.vue.d.ts +91 -0
- package/src/components/buttons/VcsToolButton.vue +9 -0
- package/src/components/buttons/VcsToolButton.vue.d.ts +91 -0
- package/src/components/flight/VcsFlightAnchorsComponent.vue +329 -0
- package/src/components/flight/VcsFlightAnchorsComponent.vue.d.ts +45 -0
- package/src/components/flight/VcsFlightComponent.vue +284 -0
- package/src/components/flight/VcsFlightComponent.vue.d.ts +104 -0
- package/src/components/flight/VcsFlightEditor.vue +77 -0
- package/src/components/flight/VcsFlightEditor.vue.d.ts +34 -0
- package/src/components/flight/VcsFlightPlayer.vue +124 -0
- package/src/components/flight/VcsFlightPlayer.vue.d.ts +25 -0
- package/src/components/flight/composables.d.ts +11 -0
- package/src/components/flight/composables.js +39 -0
- package/src/components/form-inputs-controls/VcsCheckbox.vue.d.ts +18 -0
- package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +82 -0
- package/src/components/form-inputs-controls/VcsCoordinate.vue +152 -0
- package/src/components/form-inputs-controls/VcsCoordinate.vue.d.ts +90 -0
- package/src/components/form-inputs-controls/VcsDatePicker.vue +2 -2
- package/src/components/form-inputs-controls/VcsDatePicker.vue.d.ts +31 -0
- package/src/components/form-inputs-controls/VcsExtent.vue +122 -0
- package/src/components/form-inputs-controls/VcsExtent.vue.d.ts +36 -0
- package/src/components/form-inputs-controls/VcsFormSection.vue +6 -1
- package/src/components/form-inputs-controls/VcsFormSection.vue.d.ts +75 -0
- package/src/components/form-inputs-controls/VcsLabel.vue +18 -0
- package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +41 -0
- package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +32 -0
- package/src/components/form-inputs-controls/VcsRadioGrid.vue.d.ts +35 -0
- package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +31 -0
- package/src/components/form-inputs-controls/VcsSlider.vue.d.ts +2 -0
- package/src/components/form-inputs-controls/VcsTextArea.vue.d.ts +22 -0
- package/src/components/form-inputs-controls/VcsTextField.vue +57 -10
- package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +65 -0
- package/src/components/form-inputs-controls/VcsWizard.vue.d.ts +14 -0
- package/src/components/form-inputs-controls/VcsWizardStep.vue.d.ts +89 -0
- package/src/components/form-inputs-controls/composables.d.ts +7 -0
- package/src/components/form-inputs-controls/composables.js +1 -1
- package/src/components/form-output/VcsFormattedNumber.vue +13 -2
- package/src/components/form-output/VcsFormattedNumber.vue.d.ts +89 -0
- package/src/components/icons/+all.d.ts +9 -0
- package/src/components/icons/+all.js +16 -0
- package/src/components/icons/2DAreaIcon.vue.d.ts +2 -0
- package/src/components/icons/2DDistanceIcon.vue.d.ts +2 -0
- package/src/components/icons/2DHeightObliqueIcon.vue +20 -0
- package/src/components/icons/2DHeightObliqueIcon.vue.d.ts +2 -0
- package/src/components/icons/3DAreaIcon.vue.d.ts +2 -0
- package/src/components/icons/3DDistanceIcon.vue.d.ts +2 -0
- package/src/components/icons/3DHeightIcon.vue.d.ts +2 -0
- package/src/components/icons/AngleIcon.vue.d.ts +2 -0
- package/src/components/icons/AssociationsIcon.vue.d.ts +2 -0
- package/src/components/icons/AxisIcon.vue.d.ts +2 -0
- package/src/components/icons/BoundingBoxIcon.vue.d.ts +2 -0
- package/src/components/icons/CheckboxCheckedIcon.vue.d.ts +2 -0
- package/src/components/icons/CheckboxIcon.vue.d.ts +2 -0
- package/src/components/icons/CheckboxIndeterminateIcon.vue.d.ts +2 -0
- package/src/components/icons/CircleIcon.vue.d.ts +2 -0
- package/src/components/icons/ClippingHorizontalIcon.vue.d.ts +2 -0
- package/src/components/icons/ClippingIcon.vue.d.ts +2 -0
- package/src/components/icons/ClippingVerticalIcon.vue.d.ts +2 -0
- package/src/components/icons/ColorPickerIcon.vue.d.ts +2 -0
- package/src/components/icons/ColorSwatchIcon.vue.d.ts +2 -0
- package/src/components/icons/CommentIcon.vue.d.ts +2 -0
- package/src/components/icons/CompassIcon.vue.d.ts +2 -0
- package/src/components/icons/ComponentsIcon.vue.d.ts +2 -0
- package/src/components/icons/ComponentsPlusIcon.vue +17 -0
- package/src/components/icons/ComponentsPlusIcon.vue.d.ts +2 -0
- package/src/components/icons/ConeIcon.vue.d.ts +2 -0
- package/src/components/icons/DimensionsHouseIcon.vue.d.ts +2 -0
- package/src/components/icons/EditIcon.vue.d.ts +2 -0
- package/src/components/icons/EditVerticesIcon.vue.d.ts +2 -0
- package/src/components/icons/ElevationProfileIcon.vue.d.ts +2 -0
- package/src/components/icons/ExportAreaIcon.vue.d.ts +2 -0
- package/src/components/icons/ExportFlightIcon.vue.d.ts +2 -0
- package/src/components/icons/ExportIcon.vue.d.ts +2 -0
- package/src/components/icons/ExternalLinkIcon.vue.d.ts +2 -0
- package/src/components/icons/EyeIcon.vue.d.ts +2 -0
- package/src/components/icons/FastForwardIcon.vue.d.ts +2 -0
- package/src/components/icons/FilterIcon.vue.d.ts +2 -0
- package/src/components/icons/GlobalTerrainIcon.vue.d.ts +2 -0
- package/src/components/icons/GlobeNatureIcon.vue.d.ts +2 -0
- package/src/components/icons/GroundIcon.vue.d.ts +2 -0
- package/src/components/icons/HealthCareIndustriesIcon.vue.d.ts +2 -0
- package/src/components/icons/HelpIcon.vue.d.ts +2 -0
- package/src/components/icons/HideIcon.vue.d.ts +2 -0
- package/src/components/icons/HomePointIcon.vue.d.ts +2 -0
- package/src/components/icons/HospitalsIcon.vue.d.ts +2 -0
- package/src/components/icons/HouseIcon.vue.d.ts +2 -0
- package/src/components/icons/ImportIcon.vue.d.ts +2 -0
- package/src/components/icons/InfoIcon.vue.d.ts +2 -0
- package/src/components/icons/KebabIcon.vue.d.ts +2 -0
- package/src/components/icons/LabelIcon.vue.d.ts +2 -0
- package/src/components/icons/LayersIcon.vue.d.ts +2 -0
- package/src/components/icons/LegendIcon.vue.d.ts +2 -0
- package/src/components/icons/LineIcon.vue.d.ts +2 -0
- package/src/components/icons/LinkIcon.vue.d.ts +2 -0
- package/src/components/icons/LogoutIcon.vue.d.ts +2 -0
- package/src/components/icons/MapIcon.vue.d.ts +2 -0
- package/src/components/icons/MenuIcon.vue.d.ts +2 -0
- package/src/components/icons/MinusIcon.vue.d.ts +2 -0
- package/src/components/icons/MultiViewIcon.vue +16 -0
- package/src/components/icons/MultiViewIcon.vue.d.ts +2 -0
- package/src/components/icons/ObjectAttributeIcon.vue.d.ts +2 -0
- package/src/components/icons/ObjectSelectIcon.vue.d.ts +2 -0
- package/src/components/icons/ObliqueViewIcon.vue.d.ts +2 -0
- package/src/components/icons/PdfIcon.vue.d.ts +2 -0
- package/src/components/icons/PedestrianIcon.vue.d.ts +2 -0
- package/src/components/icons/PenIcon.vue.d.ts +2 -0
- package/src/components/icons/PlayCircleIcon.vue.d.ts +2 -0
- package/src/components/icons/PlusIcon.vue.d.ts +2 -0
- package/src/components/icons/PoiIcon.vue.d.ts +2 -0
- package/src/components/icons/PointIcon.vue.d.ts +2 -0
- package/src/components/icons/PointMeasurementIcon.vue +36 -0
- package/src/components/icons/PointMeasurementIcon.vue.d.ts +2 -0
- package/src/components/icons/PointSelectIcon.vue.d.ts +2 -0
- package/src/components/icons/PresentationModeIcon.vue.d.ts +2 -0
- package/src/components/icons/ProgressIcon.vue.d.ts +2 -0
- package/src/components/icons/QueryIcon.vue.d.ts +2 -0
- package/src/components/icons/RectangleIcon.vue.d.ts +2 -0
- package/src/components/icons/ReturnIcon.vue.d.ts +2 -0
- package/src/components/icons/RewindIcon.vue.d.ts +2 -0
- package/src/components/icons/RotateLeftIcon.vue.d.ts +2 -0
- package/src/components/icons/RotateRightIcon.vue.d.ts +2 -0
- package/src/components/icons/ScreenshotIcon.vue.d.ts +2 -0
- package/src/components/icons/SearchIcon.vue.d.ts +2 -0
- package/src/components/icons/ShadowIcon.vue.d.ts +2 -0
- package/src/components/icons/ShapesIcon.vue.d.ts +2 -0
- package/src/components/icons/ShareIcon.vue.d.ts +2 -0
- package/src/components/icons/SimpleCircleFilledIcon.vue.d.ts +2 -0
- package/src/components/icons/SimpleCircleHalfFilledIcon.vue.d.ts +2 -0
- package/src/components/icons/SimpleCircleOutlinedIcon.vue.d.ts +2 -0
- package/src/components/icons/SkipNextIcon.vue.d.ts +2 -0
- package/src/components/icons/SkipPreviousIcon.vue.d.ts +2 -0
- package/src/components/icons/SplitViewIcon.vue.d.ts +2 -0
- package/src/components/icons/TerrainBoxIcon.vue.d.ts +2 -0
- package/src/components/icons/TextStyleIcon.vue.d.ts +2 -0
- package/src/components/icons/ThreeDimensionsIcon.vue.d.ts +2 -0
- package/src/components/icons/ToolsIcon.vue.d.ts +2 -0
- package/src/components/icons/TouchIcon.vue.d.ts +2 -0
- package/src/components/icons/TrashCanIcon.vue.d.ts +2 -0
- package/src/components/icons/TriangleIcon.vue.d.ts +2 -0
- package/src/components/icons/TwoDimensionsIcon.vue.d.ts +2 -0
- package/src/components/icons/UploadIcon.vue.d.ts +2 -0
- package/src/components/icons/UserProfileIcon.vue.d.ts +2 -0
- package/src/components/icons/UserShareIcon.vue.d.ts +2 -0
- package/src/components/icons/VideoRecorderIcon.vue.d.ts +2 -0
- package/src/components/icons/ViewpointFlightIcon.vue.d.ts +2 -0
- package/src/components/icons/ViewpointIcon.vue.d.ts +2 -0
- package/src/components/icons/Viewshed360Icon.vue.d.ts +2 -0
- package/src/components/icons/ViewshedConeIcon.vue.d.ts +2 -0
- package/src/components/icons/ViewshedIcon.vue.d.ts +2 -0
- package/src/components/icons/WalkingIcon.vue.d.ts +2 -0
- package/src/components/icons/WallIcon.vue.d.ts +2 -0
- package/src/components/icons/WandIcon.vue.d.ts +2 -0
- package/src/components/import/FileDrop.vue +69 -0
- package/src/components/import/FileDrop.vue.d.ts +26 -0
- package/src/components/import/ImportComponent.vue +78 -0
- package/src/components/import/ImportComponent.vue.d.ts +34 -0
- package/src/components/lists/VcsActionList.vue +8 -15
- package/src/components/lists/VcsActionList.vue.d.ts +66 -0
- package/src/components/lists/VcsList.vue +207 -116
- package/src/components/lists/VcsList.vue.d.ts +227 -0
- package/src/components/lists/VcsTreeview.vue +3 -1
- package/src/components/lists/VcsTreeview.vue.d.ts +28 -0
- package/src/components/lists/VcsTreeviewLeaf.vue +1 -0
- package/src/components/lists/VcsTreeviewLeaf.vue.d.ts +19 -0
- package/src/components/lists/VcsTreeviewSearchbar.vue.d.ts +41 -0
- package/src/components/notification/VcsBadge.vue.d.ts +14 -0
- package/src/components/notification/VcsHelp.vue.d.ts +22 -0
- package/src/components/notification/VcsTooltip.vue.d.ts +27 -0
- package/src/components/notification/validation.d.ts +8 -0
- package/src/components/notification/validation.js +3 -2
- package/src/components/plugins/AbstractConfigEditor.vue +25 -4
- package/src/components/plugins/AbstractConfigEditor.vue.d.ts +55 -0
- package/src/components/style/MenuWrapper.vue.d.ts +55 -0
- package/src/components/style/VcsFeatureStyleComponent.vue +389 -0
- package/src/components/style/VcsFeatureStyleComponent.vue.d.ts +31 -0
- package/src/components/style/VcsFillMenu.vue.d.ts +34 -0
- package/src/components/style/VcsFillSelector.vue.d.ts +22 -0
- package/src/components/style/VcsImageMenu.vue.d.ts +43 -0
- package/src/components/style/VcsImageSelector.vue.d.ts +128 -0
- package/src/components/style/VcsStrokeMenu.vue.d.ts +34 -0
- package/src/components/style/VcsStrokeSelector.vue.d.ts +23 -0
- package/src/components/style/VcsTextMenu.vue.d.ts +52 -0
- package/src/components/style/VcsTextSelector.vue.d.ts +58 -0
- package/src/components/style/VcsVectorStyleComponent.vue.d.ts +76 -0
- package/src/components/style/composables.d.ts +43 -0
- package/src/components/style/composables.js +11 -8
- package/src/components/tables/VcsDataTable.vue +11 -3
- package/src/components/tables/VcsDataTable.vue.d.ts +142 -0
- package/src/components/tables/VcsTable.vue +71 -2
- package/src/components/tables/VcsTable.vue.d.ts +88 -0
- package/src/components/vector-properties/VcsFeatureEditingWindow.vue +392 -0
- package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +87 -0
- package/src/components/vector-properties/VcsFeatureTransforms.vue +217 -0
- package/src/components/vector-properties/VcsFeatureTransforms.vue.d.ts +45 -0
- package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +96 -52
- package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +119 -0
- package/src/components/vector-properties/composables.d.ts +33 -0
- package/src/components/vector-properties/composables.js +21 -14
- package/src/components/viewpoint/VcsViewpointComponent.vue +514 -0
- package/src/components/viewpoint/VcsViewpointComponent.vue.d.ts +126 -0
- package/src/components/viewpoint/VcsViewpointEditor.vue +87 -0
- package/src/components/viewpoint/VcsViewpointEditor.vue.d.ts +25 -0
- package/src/contentTree/LayerTree.vue.d.ts +15 -0
- package/src/contentTree/contentTreeCollection.d.ts +113 -0
- package/src/contentTree/contentTreeCollection.js +10 -20
- package/src/contentTree/contentTreeItem.d.ts +334 -0
- package/src/contentTree/contentTreeItem.js +31 -17
- package/src/contentTree/flightContentTreeItem.d.ts +53 -0
- package/src/contentTree/flightContentTreeItem.js +201 -0
- package/src/contentTree/groupContentTreeItem.d.ts +14 -0
- package/src/contentTree/groupContentTreeItem.js +2 -2
- package/src/contentTree/layerContentTreeItem.d.ts +76 -0
- package/src/contentTree/layerContentTreeItem.js +7 -9
- package/src/contentTree/layerGroupContentTreeItem.d.ts +50 -0
- package/src/contentTree/layerGroupContentTreeItem.js +2 -3
- package/src/contentTree/nodeContentTreeItem.d.ts +10 -0
- package/src/contentTree/nodeContentTreeItem.js +2 -2
- package/src/contentTree/obliqueCollectionContentTreeItem.d.ts +46 -0
- package/src/contentTree/obliqueCollectionContentTreeItem.js +3 -5
- package/src/contentTree/subContentTreeItem.d.ts +15 -0
- package/src/contentTree/subContentTreeItem.js +3 -3
- package/src/contentTree/vcsObjectContentTreeItem.d.ts +56 -0
- package/src/contentTree/vcsObjectContentTreeItem.js +3 -4
- package/src/contentTree/viewpointContentTreeItem.d.ts +46 -0
- package/src/contentTree/viewpointContentTreeItem.js +3 -4
- package/src/downloadHelper.d.ts +27 -0
- package/src/featureInfo/AddressBalloonComponent.vue.d.ts +2 -0
- package/src/featureInfo/BalloonComponent.vue +16 -3
- package/src/featureInfo/BalloonComponent.vue.d.ts +61 -0
- package/src/featureInfo/abstractFeatureInfoView.d.ts +199 -0
- package/src/featureInfo/abstractFeatureInfoView.js +82 -18
- package/src/featureInfo/addressBalloonFeatureInfoView.d.ts +67 -0
- package/src/featureInfo/addressBalloonFeatureInfoView.js +9 -2
- package/src/featureInfo/balloonFeatureInfoView.d.ts +49 -0
- package/src/featureInfo/balloonFeatureInfoView.js +12 -11
- package/src/featureInfo/balloonHelper.d.ts +31 -0
- package/src/featureInfo/balloonHelper.js +6 -6
- package/src/featureInfo/featureInfo.d.ts +146 -0
- package/src/featureInfo/featureInfo.js +11 -16
- package/src/featureInfo/featureInfoInteraction.d.ts +21 -0
- package/src/featureInfo/featureInfoInteraction.js +2 -2
- package/src/featureInfo/iframeFeatureInfoView.d.ts +48 -0
- package/src/featureInfo/iframeFeatureInfoView.js +3 -5
- package/src/featureInfo/tableFeatureInfoView.d.ts +75 -0
- package/src/featureInfo/tableFeatureInfoView.js +19 -9
- package/src/i18n/de.d.ts +353 -0
- package/src/i18n/de.js +114 -2
- package/src/i18n/en.d.ts +352 -0
- package/src/i18n/en.js +113 -1
- package/src/i18n/i18nCollection.d.ts +82 -0
- package/src/i18n/i18nCollection.js +3 -3
- package/src/init.d.ts +58 -0
- package/src/init.js +3 -5
- package/src/legend/StyleLegendItem.vue.d.ts +25 -0
- package/src/legend/VcsLegend.vue.d.ts +20 -0
- package/src/legend/legendHelper.d.ts +172 -0
- package/src/legend/legendHelper.js +21 -21
- package/src/manager/buttonManager.d.ts +106 -0
- package/src/manager/buttonManager.js +8 -4
- package/src/manager/collectionManager/CollectionComponent.vue +38 -42
- package/src/manager/collectionManager/CollectionComponent.vue.d.ts +17 -0
- package/src/manager/collectionManager/CollectionComponentList.vue +53 -18
- package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +38 -0
- package/src/manager/collectionManager/CollectionComponentProvider.vue +3 -2
- package/src/manager/collectionManager/CollectionComponentProvider.vue.d.ts +12 -0
- package/src/manager/collectionManager/CollectionManager.vue +29 -4
- package/src/manager/collectionManager/CollectionManager.vue.d.ts +8 -0
- package/src/manager/collectionManager/categoryManager.d.ts +56 -0
- package/src/manager/collectionManager/categoryManager.js +21 -7
- package/src/manager/collectionManager/collectionComponentClass.d.ts +257 -0
- package/src/manager/collectionManager/{collectionComponent.js → collectionComponentClass.js} +210 -57
- package/src/manager/collectionManager/collectionManager.d.ts +200 -0
- package/src/manager/collectionManager/collectionManager.js +45 -39
- package/src/manager/collectionManager/editorCollectionComponentClass.d.ts +60 -0
- package/src/manager/collectionManager/editorCollectionComponentClass.js +295 -0
- package/src/manager/contextMenu/ContextMenuComponent.vue.d.ts +18 -0
- package/src/manager/contextMenu/contextMenuInteraction.d.ts +24 -0
- package/src/manager/contextMenu/contextMenuManager.d.ts +70 -0
- package/src/manager/contextMenu/contextMenuManager.js +5 -5
- package/src/manager/navbarManager.d.ts +60 -0
- package/src/manager/navbarManager.js +10 -6
- package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +17 -0
- package/src/manager/toolbox/SelectToolboxComponent.vue +1 -0
- package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +15 -0
- package/src/manager/toolbox/ToolboxManager.vue +33 -7
- package/src/manager/toolbox/ToolboxManager.vue.d.ts +21 -0
- package/src/manager/toolbox/toolboxManager.d.ts +177 -0
- package/src/manager/toolbox/toolboxManager.js +86 -31
- package/src/manager/window/WindowComponent.vue.d.ts +40 -0
- package/src/manager/window/WindowComponentHeader.vue +1 -1
- package/src/manager/window/WindowComponentHeader.vue.d.ts +36 -0
- package/src/manager/window/WindowManager.vue +1 -0
- package/src/manager/window/WindowManager.vue.d.ts +19 -0
- package/src/manager/window/windowHelper.d.ts +134 -0
- package/src/manager/window/windowHelper.js +20 -20
- package/src/manager/window/windowManager.d.ts +422 -0
- package/src/manager/window/windowManager.js +95 -40
- package/src/navigation/MapNavCompass.vue.d.ts +25 -0
- package/src/navigation/MapNavigation.vue +2 -2
- package/src/navigation/MapNavigation.vue.d.ts +46 -0
- package/src/navigation/ObliqueRotation.vue +8 -4
- package/src/navigation/ObliqueRotation.vue.d.ts +14 -0
- package/src/navigation/OrientationToolsButton.vue.d.ts +30 -0
- package/src/navigation/TiltSlider.vue.d.ts +19 -0
- package/src/navigation/VcsCompass.vue.d.ts +25 -0
- package/src/navigation/VcsZoomButton.vue +6 -3
- package/src/navigation/VcsZoomButton.vue.d.ts +2 -0
- package/src/navigation/overviewMap.d.ts +199 -0
- package/src/navigation/overviewMap.js +3 -7
- package/src/navigation/overviewMapClickedInteraction.d.ts +21 -0
- package/src/notifier/NotifierComponent.vue.d.ts +10 -0
- package/src/notifier/notifier.d.ts +53 -0
- package/src/notifier/notifier.js +0 -1
- package/src/pluginHelper.d.ts +67 -0
- package/src/pluginHelper.js +11 -9
- package/src/search/ResultItem.vue.d.ts +25 -0
- package/src/search/ResultsComponent.vue +1 -1
- package/src/search/ResultsComponent.vue.d.ts +24 -0
- package/src/search/SearchComponent.vue +1 -1
- package/src/search/SearchComponent.vue.d.ts +10 -0
- package/src/search/search.d.ts +129 -0
- package/src/search/search.js +8 -11
- package/src/setup.d.ts +1 -0
- package/src/state.d.ts +57 -0
- package/src/state.js +7 -5
- package/src/uiConfig.d.ts +99 -0
- package/src/uiConfig.js +17 -7
- package/src/vcsUiApp.d.ts +301 -0
- package/src/vcsUiApp.js +58 -54
- package/src/vuePlugins/i18n.d.ts +10 -0
- package/src/vuePlugins/i18n.js +3 -3
- package/src/vuePlugins/vuetify.d.ts +27 -0
- package/tsconfig.json +36 -0
- package/dist/assets/index-661636d9.js +0 -1
- package/plugins/@vcmap-show-case/window-tester/src/toolboxData.js +0 -288
package/src/pluginHelper.js
CHANGED
@@ -32,6 +32,7 @@ export const pluginBaseUrlSymbol = Symbol('pluginBaseUrl');
|
|
32
32
|
* @type {symbol}
|
33
33
|
*/
|
34
34
|
export const pluginModuleUrlSymbol = Symbol('pluginModuleUrl');
|
35
|
+
|
35
36
|
/**
|
36
37
|
* A symbol added to each plugin which describes the configured version range
|
37
38
|
* @type {symbol}
|
@@ -43,7 +44,7 @@ export const pluginVersionRangeSymbol = Symbol('pluginVersionRange');
|
|
43
44
|
* shipping your plugin with a "plugin-asset/icon.png", you can always retrieve said icon with getPluginAssetUrl(app, name, 'pluing-assets/icon.png')
|
44
45
|
* Sets the plugin version as searchParam.
|
45
46
|
* Returns null, if the plugin does not exist.
|
46
|
-
* @param {
|
47
|
+
* @param {import("@src/vcsUiApp.js").default} app
|
47
48
|
* @param {string} pluginName
|
48
49
|
* @param {string} asset
|
49
50
|
* @returns {string|null}
|
@@ -83,8 +84,10 @@ export function isValidPackageName(name) {
|
|
83
84
|
|
84
85
|
/**
|
85
86
|
* @param {string} name
|
86
|
-
* @param {
|
87
|
-
* @returns {Promise<VcsPlugin
|
87
|
+
* @param {T} config
|
88
|
+
* @returns {Promise<import("@src/vcsUiApp.js").VcsPlugin<T, S>|null>}
|
89
|
+
* @template {Object} T
|
90
|
+
* @template {Object} S
|
88
91
|
*/
|
89
92
|
export async function loadPlugin(name, config) {
|
90
93
|
let module = config.entry;
|
@@ -97,7 +100,7 @@ export async function loadPlugin(name, config) {
|
|
97
100
|
} else if (module === '_dev') {
|
98
101
|
module = `/${name}.js`;
|
99
102
|
} else if (module === 'http://localhost/_test') {
|
100
|
-
// early escape to bypass module loading for testing, see
|
103
|
+
// early escape to bypass module loading for testing, see import("@src/vcsUiApp.js").default.spec.js
|
101
104
|
return null;
|
102
105
|
}
|
103
106
|
if (config.version) {
|
@@ -193,7 +196,7 @@ export function getPluginEntry(base, pluginUrl) {
|
|
193
196
|
}
|
194
197
|
|
195
198
|
/**
|
196
|
-
* @param {VcsPlugin} plugin
|
199
|
+
* @param {import("@src/vcsUiApp.js").VcsPlugin<Object, Object>} plugin
|
197
200
|
* @returns {Object}
|
198
201
|
*/
|
199
202
|
export function serializePlugin(plugin) {
|
@@ -215,13 +218,12 @@ export function serializePlugin(plugin) {
|
|
215
218
|
|
216
219
|
/**
|
217
220
|
* @param {Object} serializedPlugin
|
218
|
-
* @returns {Promise<VcsPlugin
|
221
|
+
* @returns {Promise<import("@src/vcsUiApp.js").VcsPlugin<Object, Object>|null>}
|
219
222
|
*/
|
220
223
|
export async function deserializePlugin(serializedPlugin) {
|
221
224
|
if (serializedPlugin[pluginFactorySymbol]) {
|
222
|
-
const reincarnation =
|
223
|
-
serializedPlugin
|
224
|
-
);
|
225
|
+
const reincarnation =
|
226
|
+
await serializedPlugin[pluginFactorySymbol](serializedPlugin);
|
225
227
|
reincarnation[pluginFactorySymbol] = serializedPlugin[pluginFactorySymbol];
|
226
228
|
reincarnation[pluginBaseUrlSymbol] = serializedPlugin[pluginBaseUrlSymbol];
|
227
229
|
reincarnation[pluginModuleUrlSymbol] =
|
@@ -0,0 +1,25 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
query: {
|
3
|
+
type: StringConstructor;
|
4
|
+
default: string;
|
5
|
+
};
|
6
|
+
item: {
|
7
|
+
type: ObjectConstructor;
|
8
|
+
required: true;
|
9
|
+
};
|
10
|
+
}, {
|
11
|
+
hasActions: import("vue").ComputedRef<boolean>;
|
12
|
+
marked: import("vue").ComputedRef<string>;
|
13
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
14
|
+
query: {
|
15
|
+
type: StringConstructor;
|
16
|
+
default: string;
|
17
|
+
};
|
18
|
+
item: {
|
19
|
+
type: ObjectConstructor;
|
20
|
+
required: true;
|
21
|
+
};
|
22
|
+
}>>, {
|
23
|
+
query: string;
|
24
|
+
}>;
|
25
|
+
export default _default;
|
@@ -54,7 +54,7 @@
|
|
54
54
|
},
|
55
55
|
setup(props) {
|
56
56
|
const highlightedRef = ref(-1);
|
57
|
-
/** @type {
|
57
|
+
/** @type {import("@src/vcsUiApp.js").default} */
|
58
58
|
const app = inject('vcsApp');
|
59
59
|
const selectedListener = app.featureInfo.featureChanged.addEventListener(
|
60
60
|
(feature) => {
|
@@ -0,0 +1,24 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
query: {
|
3
|
+
type: StringConstructor;
|
4
|
+
default: string;
|
5
|
+
};
|
6
|
+
results: {
|
7
|
+
type: ArrayConstructor;
|
8
|
+
required: true;
|
9
|
+
};
|
10
|
+
}, {
|
11
|
+
highlighted: import("vue").WritableComputedRef<number>;
|
12
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
13
|
+
query: {
|
14
|
+
type: StringConstructor;
|
15
|
+
default: string;
|
16
|
+
};
|
17
|
+
results: {
|
18
|
+
type: ArrayConstructor;
|
19
|
+
required: true;
|
20
|
+
};
|
21
|
+
}>>, {
|
22
|
+
query: string;
|
23
|
+
}>;
|
24
|
+
export default _default;
|
@@ -0,0 +1,10 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {
|
2
|
+
query: import("vue").Ref<null>;
|
3
|
+
searching: import("vue").Ref<boolean>;
|
4
|
+
results: import("vue").Ref<import("./search.js").ResultItem[]>;
|
5
|
+
reset: () => void;
|
6
|
+
clear: () => void;
|
7
|
+
search: () => Promise<void>;
|
8
|
+
zoomToAll: () => void;
|
9
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
10
|
+
export default _default;
|
@@ -0,0 +1,129 @@
|
|
1
|
+
export default Search;
|
2
|
+
/**
|
3
|
+
* A readonly rendering interface of a ResultItem.
|
4
|
+
* A ResultItem must provide either a feature, a clicked handler or both.
|
5
|
+
*/
|
6
|
+
export type ResultItem = {
|
7
|
+
title: string;
|
8
|
+
/**
|
9
|
+
* An optional icon
|
10
|
+
*/
|
11
|
+
icon?: string | undefined;
|
12
|
+
actions?: import("../actions/actionHelper.js").VcsAction[] | undefined;
|
13
|
+
/**
|
14
|
+
* Obligatory, if no feature is provided. Can overwrite default zoom to feature behaviour.
|
15
|
+
*/
|
16
|
+
clicked?: (() => Promise<void>) | undefined;
|
17
|
+
/**
|
18
|
+
* If a feature is provided, the feature is added to the result layer and search zooms to the layer's extent. Default clicked handler is zoom to feature, highlight feature and select feature, if feature has a FeatureInfoView.
|
19
|
+
*/
|
20
|
+
feature?: import("ol").Feature | undefined;
|
21
|
+
};
|
22
|
+
export type SearchImpl = {
|
23
|
+
/**
|
24
|
+
* Name of the implementation. Must be the name of the plugin the SearchImpl is owned by
|
25
|
+
*/
|
26
|
+
name: string;
|
27
|
+
search: (arg0: string) => Array<ResultItem>;
|
28
|
+
suggest?: ((arg0: string) => Array<string>) | undefined;
|
29
|
+
/**
|
30
|
+
* - should abort any ongoing requests to search or suggest without throwing an error
|
31
|
+
*/
|
32
|
+
abort: () => void;
|
33
|
+
destroy: () => void;
|
34
|
+
};
|
35
|
+
/**
|
36
|
+
* Collection of SearchImpl
|
37
|
+
* @extends {IndexedCollection<SearchImpl>}
|
38
|
+
*/
|
39
|
+
declare class Search extends IndexedCollection<SearchImpl> {
|
40
|
+
/**
|
41
|
+
* @param {import("@src/vcsUiApp.js").default} app
|
42
|
+
*/
|
43
|
+
constructor(app: import("@src/vcsUiApp.js").default);
|
44
|
+
/**
|
45
|
+
* @type {import("@src/vcsUiApp.js").default}
|
46
|
+
* @private
|
47
|
+
*/
|
48
|
+
private _app;
|
49
|
+
/**
|
50
|
+
* An event triggered every time the currentResults array changes,
|
51
|
+
* either by a new search providing the new results or
|
52
|
+
* on clearing, if the results array has not been empty already.
|
53
|
+
* @type {import("@vcmap/core").VcsEvent<Array<ResultItem>>}
|
54
|
+
* @private
|
55
|
+
*/
|
56
|
+
private _resultsChanged;
|
57
|
+
/**
|
58
|
+
* @type {import("vue").Ref<Array<ResultItem>>}
|
59
|
+
* @private
|
60
|
+
*/
|
61
|
+
private _currentResults;
|
62
|
+
/**
|
63
|
+
* @type {import("@vcmap/core").VectorLayer}
|
64
|
+
* @private
|
65
|
+
*/
|
66
|
+
private _resultLayer;
|
67
|
+
/**
|
68
|
+
* @type {function():void}
|
69
|
+
* @private
|
70
|
+
*/
|
71
|
+
private _destroyResultLayer;
|
72
|
+
/**
|
73
|
+
* An event triggered every time the currentResults array changes,
|
74
|
+
* either by a new search providing the new results or
|
75
|
+
* on clearing, if the results array has not been empty already.
|
76
|
+
* @type {import("@vcmap/core").VcsEvent<Array<ResultItem>>}
|
77
|
+
*/
|
78
|
+
get resultsChanged(): VcsEvent<ResultItem[]>;
|
79
|
+
/**
|
80
|
+
* @type {import("vue").Ref<Array<ResultItem>>}
|
81
|
+
*/
|
82
|
+
get currentResults(): import("vue").Ref<ResultItem[]>;
|
83
|
+
/**
|
84
|
+
* @type {VectorLayer}
|
85
|
+
*/
|
86
|
+
get resultLayer(): VectorLayer;
|
87
|
+
/**
|
88
|
+
* @param {SearchImpl} item
|
89
|
+
* @param {string|symbol} owner pluginName or vcsAppSymbol
|
90
|
+
* @param {number=} index
|
91
|
+
*/
|
92
|
+
// @ts-ignore
|
93
|
+
add(item: SearchImpl, owner: string | symbol, index?: number | undefined): void;
|
94
|
+
/**
|
95
|
+
* removes all search implementations of a specific owner (plugin) and fires removed Events
|
96
|
+
* @param {string|vcsAppSymbol} owner
|
97
|
+
*/
|
98
|
+
removeOwner(owner: string | symbol): void;
|
99
|
+
/**
|
100
|
+
* Get the results for a given query string.
|
101
|
+
* Available features are added to results layer and map is zoomed to all results (extent of result layer).
|
102
|
+
* Adds default clicked handler to result items with feature, which zooms to and highlights said feature. If feature has FeatureInfoView, feature is selected by featureInfo.
|
103
|
+
* @param {string} q
|
104
|
+
* @returns {Promise<Array<ResultItem>>}
|
105
|
+
*/
|
106
|
+
search(q: string): Promise<Array<ResultItem>>;
|
107
|
+
/**
|
108
|
+
* Get the suggestions for a given query string
|
109
|
+
* @param {string} q
|
110
|
+
* @returns {Promise<Array<string>>}
|
111
|
+
*/
|
112
|
+
suggest(q: string): Promise<Array<string>>;
|
113
|
+
/**
|
114
|
+
* Aborting any ongoing request
|
115
|
+
*/
|
116
|
+
abort(): void;
|
117
|
+
/**
|
118
|
+
* Zooms to the extent of all available result features
|
119
|
+
* @returns {Promise<void>}
|
120
|
+
*/
|
121
|
+
zoomToAll(): Promise<void>;
|
122
|
+
/**
|
123
|
+
* Clears the results and aborts running request
|
124
|
+
*/
|
125
|
+
clearResults(): void;
|
126
|
+
}
|
127
|
+
import { IndexedCollection } from '@vcmap/core';
|
128
|
+
import { VcsEvent } from '@vcmap/core';
|
129
|
+
import { VectorLayer } from '@vcmap/core';
|
package/src/search/search.js
CHANGED
@@ -26,16 +26,16 @@ import { getViewpointFromFeature } from '../actions/actionHelper.js';
|
|
26
26
|
* @typedef {Object} ResultItem
|
27
27
|
* @property {string} title
|
28
28
|
* @property {string} [icon] An optional icon
|
29
|
-
* @property {Array<VcsAction>} [actions]
|
29
|
+
* @property {Array<import("../actions/actionHelper.js").VcsAction>} [actions]
|
30
30
|
* @property {function():Promise<void>} [clicked] Obligatory, if no feature is provided. Can overwrite default zoom to feature behaviour.
|
31
31
|
* @property {import("ol").Feature|undefined} [feature] If a feature is provided, the feature is added to the result layer and search zooms to the layer's extent. Default clicked handler is zoom to feature, highlight feature and select feature, if feature has a FeatureInfoView.
|
32
32
|
*/
|
33
33
|
|
34
34
|
/**
|
35
|
-
* @
|
35
|
+
* @typedef {Object} SearchImpl
|
36
36
|
* @property {string} name Name of the implementation. Must be the name of the plugin the SearchImpl is owned by
|
37
|
-
* @property {function(
|
38
|
-
* @property {function(
|
37
|
+
* @property {function(string):Array<ResultItem>} search
|
38
|
+
* @property {function(string):Array<string>} [suggest] // XXX currently not implemented in UI at Beta state
|
39
39
|
* @property{function():void} abort - should abort any ongoing requests to search or suggest without throwing an error
|
40
40
|
* @property {function():void} destroy
|
41
41
|
*/
|
@@ -56,7 +56,7 @@ function getPointResultIcon(color) {
|
|
56
56
|
|
57
57
|
/**
|
58
58
|
* sets up result layer for displaying search results
|
59
|
-
* @param {
|
59
|
+
* @param {import("@src/vcsUiApp.js").default} app
|
60
60
|
* @returns {{ resultLayer: import("@vcmap/core").VectorLayer, destroy: (function(): void)}}
|
61
61
|
*/
|
62
62
|
function setupSearchResultLayer(app) {
|
@@ -111,17 +111,17 @@ const searchImplOwnerSymbol = Symbol('featureInfoView');
|
|
111
111
|
|
112
112
|
/**
|
113
113
|
* Collection of SearchImpl
|
114
|
-
* @extends {IndexedCollection<SearchImpl
|
114
|
+
* @extends {IndexedCollection<SearchImpl>}
|
115
115
|
*/
|
116
116
|
class Search extends IndexedCollection {
|
117
117
|
/**
|
118
|
-
* @param {
|
118
|
+
* @param {import("@src/vcsUiApp.js").default} app
|
119
119
|
*/
|
120
120
|
constructor(app) {
|
121
121
|
super();
|
122
122
|
|
123
123
|
/**
|
124
|
-
* @type {
|
124
|
+
* @type {import("@src/vcsUiApp.js").default}
|
125
125
|
* @private
|
126
126
|
*/
|
127
127
|
this._app = app;
|
@@ -158,7 +158,6 @@ class Search extends IndexedCollection {
|
|
158
158
|
* either by a new search providing the new results or
|
159
159
|
* on clearing, if the results array has not been empty already.
|
160
160
|
* @type {import("@vcmap/core").VcsEvent<Array<ResultItem>>}
|
161
|
-
* @readonly
|
162
161
|
*/
|
163
162
|
get resultsChanged() {
|
164
163
|
return this._resultsChanged;
|
@@ -166,7 +165,6 @@ class Search extends IndexedCollection {
|
|
166
165
|
|
167
166
|
/**
|
168
167
|
* @type {import("vue").Ref<Array<ResultItem>>}
|
169
|
-
* @readonly
|
170
168
|
*/
|
171
169
|
get currentResults() {
|
172
170
|
return this._currentResults;
|
@@ -174,7 +172,6 @@ class Search extends IndexedCollection {
|
|
174
172
|
|
175
173
|
/**
|
176
174
|
* @type {VectorLayer}
|
177
|
-
* @readonly
|
178
175
|
*/
|
179
176
|
get resultLayer() {
|
180
177
|
return this._resultLayer;
|
package/src/setup.d.ts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
package/src/state.d.ts
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
/**
|
2
|
+
* @returns {AppState}
|
3
|
+
*/
|
4
|
+
export function createEmptyState(): AppState;
|
5
|
+
/**
|
6
|
+
* @param {(URL)=} url
|
7
|
+
* @returns {AppState}
|
8
|
+
*/
|
9
|
+
export function getStateFromURL(url?: (URL) | undefined): AppState;
|
10
|
+
/**
|
11
|
+
* @param {AppState} state
|
12
|
+
* @param {URL} url - sets the query parameter "state" on this URL
|
13
|
+
*/
|
14
|
+
export function setStateToUrl(state: AppState, url: URL): void;
|
15
|
+
export type LayerState = {
|
16
|
+
name: string;
|
17
|
+
active: boolean;
|
18
|
+
styleName?: string | undefined;
|
19
|
+
};
|
20
|
+
/**
|
21
|
+
* The URL state of a layer is an array. The first entry is the layer name,
|
22
|
+
* the second its active state encoded in an integer (1 active, 0 inactive),
|
23
|
+
* the third and optional entry, is an optional styleName to set on the layer
|
24
|
+
*/
|
25
|
+
export type UrlLayerState = [string, number, string | 0];
|
26
|
+
export type PluginState<T> = {
|
27
|
+
name: string;
|
28
|
+
state: T;
|
29
|
+
};
|
30
|
+
/**
|
31
|
+
* The URL state of a plugin is an array. The first entry is the plugin name, the second entry is
|
32
|
+
* an encoded object, which is the plugins state.
|
33
|
+
*/
|
34
|
+
export type UrlPluginState = [string, unknown];
|
35
|
+
/**
|
36
|
+
* The URL state of a viewpoint is an array, the first entry is the camera position (or 0)
|
37
|
+
* the second is the ground position (or 0), the third is the distance, the last three are
|
38
|
+
* heading, pitch, roll in that order
|
39
|
+
*/
|
40
|
+
export type UrlViewpointState = [Array<number> | 0, Array<number> | 0, number, number, number, number];
|
41
|
+
export type AppState = {
|
42
|
+
activeViewpoint?: import("@vcmap/core").ViewpointOptions | undefined;
|
43
|
+
activeMap?: string | undefined;
|
44
|
+
moduleIds: Array<string>;
|
45
|
+
layers: Array<LayerState>;
|
46
|
+
plugins: Array<PluginState<unknown>>;
|
47
|
+
activeObliqueCollection?: string | undefined;
|
48
|
+
};
|
49
|
+
/**
|
50
|
+
* The URL state of the app is an array. To null parameters, pass in 0 instead.
|
51
|
+
* The first entry is the viewpoint state, the second the active map name
|
52
|
+
* The third is an array of modules to apply the state to
|
53
|
+
* the fourth is an array of layer states
|
54
|
+
* the fifth is an array of plugin states
|
55
|
+
* the sixth is the currently active oblique collection or 0 if not applicable
|
56
|
+
*/
|
57
|
+
export type UrlAppState = [[0 | number[], 0 | number[], number, number, number, number], string, Array<string>, Array<[string, number, string | 0]>, Array<[string, unknown]>, (string | 0)];
|
package/src/state.js
CHANGED
@@ -17,15 +17,17 @@ import { Viewpoint } from '@vcmap/core';
|
|
17
17
|
*/
|
18
18
|
|
19
19
|
/**
|
20
|
-
* @typedef {
|
21
|
-
*
|
22
|
-
*
|
20
|
+
* @typedef {{
|
21
|
+
* name: string,
|
22
|
+
* state: T
|
23
|
+
* }} PluginState
|
24
|
+
* @template T
|
23
25
|
*/
|
24
26
|
|
25
27
|
/**
|
26
28
|
* The URL state of a plugin is an array. The first entry is the plugin name, the second entry is
|
27
29
|
* an encoded object, which is the plugins state.
|
28
|
-
* @typedef {[string,
|
30
|
+
* @typedef {[string, unknown]} UrlPluginState
|
29
31
|
*/
|
30
32
|
|
31
33
|
/**
|
@@ -41,7 +43,7 @@ import { Viewpoint } from '@vcmap/core';
|
|
41
43
|
* @property {string} [activeMap]
|
42
44
|
* @property {Array<string>} moduleIds
|
43
45
|
* @property {Array<LayerState>} layers
|
44
|
-
* @property {Array<PluginState
|
46
|
+
* @property {Array<PluginState<unknown>>} plugins
|
45
47
|
* @property {string} [activeObliqueCollection]
|
46
48
|
*/
|
47
49
|
|
@@ -0,0 +1,99 @@
|
|
1
|
+
export default UiConfig;
|
2
|
+
export type UiConfigurationItem<T> = {
|
3
|
+
name: string;
|
4
|
+
value: T;
|
5
|
+
};
|
6
|
+
export type TextPageType = {
|
7
|
+
title: string;
|
8
|
+
url?: string | URL | undefined;
|
9
|
+
content?: string | undefined;
|
10
|
+
};
|
11
|
+
export type UiConfigObject = {
|
12
|
+
/**
|
13
|
+
* - the company logo to display. this will override any and all css overrides.
|
14
|
+
*/
|
15
|
+
logo?: string | undefined;
|
16
|
+
/**
|
17
|
+
* - an alternative logo to display in mobile view
|
18
|
+
*/
|
19
|
+
mobileLogo?: string | undefined;
|
20
|
+
/**
|
21
|
+
* - an optional title to display next to the company logo
|
22
|
+
*/
|
23
|
+
appTitle?: string | undefined;
|
24
|
+
/**
|
25
|
+
* - an optional primary color to use in all themes
|
26
|
+
*/
|
27
|
+
primaryColor?: string | undefined;
|
28
|
+
/**
|
29
|
+
* - an optional flag whether to activate feature info on startup (default active)
|
30
|
+
*/
|
31
|
+
startingFeatureInfo?: boolean | undefined;
|
32
|
+
/**
|
33
|
+
* - mouse event, when position display is updated. Either 'click' (default) or 'move'.
|
34
|
+
*/
|
35
|
+
positionDisplayEventType?: string | undefined;
|
36
|
+
/**
|
37
|
+
* - an optional URL to a help landing page
|
38
|
+
*/
|
39
|
+
helpBaseUrl?: string | undefined;
|
40
|
+
/**
|
41
|
+
* - an option imprint, will show a link in the footer.
|
42
|
+
*/
|
43
|
+
imprint?: TextPageType | undefined;
|
44
|
+
/**
|
45
|
+
* - an option dataProtection, will show a link in the footer.
|
46
|
+
*/
|
47
|
+
dataProtection?: TextPageType | undefined;
|
48
|
+
};
|
49
|
+
/**
|
50
|
+
* @typedef {{
|
51
|
+
* name: string,
|
52
|
+
* value: T
|
53
|
+
* }} UiConfigurationItem
|
54
|
+
* @template T
|
55
|
+
*/
|
56
|
+
/**
|
57
|
+
* @typedef {Object} TextPageType
|
58
|
+
* @property {string} title
|
59
|
+
* @property {URL|string} [url]
|
60
|
+
* @property {string} [content]
|
61
|
+
*/
|
62
|
+
/**
|
63
|
+
* @typedef {Object} UiConfigObject
|
64
|
+
* @property {string} [logo] - the company logo to display. this will override any and all css overrides.
|
65
|
+
* @property {string} [mobileLogo] - an alternative logo to display in mobile view
|
66
|
+
* @property {string} [appTitle] - an optional title to display next to the company logo
|
67
|
+
* @property {string} [primaryColor] - an optional primary color to use in all themes
|
68
|
+
* @property {boolean} [startingFeatureInfo] - an optional flag whether to activate feature info on startup (default active)
|
69
|
+
* @property {string} [positionDisplayEventType] - mouse event, when position display is updated. Either 'click' (default) or 'move'.
|
70
|
+
* @property {string} [helpBaseUrl='https://help.vc.systems/'] - an optional URL to a help landing page
|
71
|
+
* @property {TextPageType} [imprint] - an option imprint, will show a link in the footer.
|
72
|
+
* @property {TextPageType} [dataProtection] - an option dataProtection, will show a link in the footer.
|
73
|
+
*/
|
74
|
+
/**
|
75
|
+
* @extends {Collection<UiConfigurationItem<unknown>>}
|
76
|
+
*/
|
77
|
+
declare class UiConfig extends Collection<UiConfigurationItem<unknown>> {
|
78
|
+
/**
|
79
|
+
* @param {function():string} getDynamicModuleId
|
80
|
+
*/
|
81
|
+
constructor(getDynamicModuleId: () => string);
|
82
|
+
/**
|
83
|
+
* @type {import("vue").Ref<Object<string, *>>}
|
84
|
+
* @private
|
85
|
+
*/
|
86
|
+
private _config;
|
87
|
+
/**
|
88
|
+
* @type {Array<function():void>}
|
89
|
+
* @private
|
90
|
+
*/
|
91
|
+
private _listeners;
|
92
|
+
/**
|
93
|
+
* @type {import("vue").Ref<Object<string, unknown>|UiConfigObject>}
|
94
|
+
*/
|
95
|
+
get config(): import("vue").Ref<{
|
96
|
+
[x: string]: unknown;
|
97
|
+
} | UiConfigObject>;
|
98
|
+
}
|
99
|
+
import { Collection } from '@vcmap/core';
|
package/src/uiConfig.js
CHANGED
@@ -2,9 +2,18 @@ import { Collection, makeOverrideCollection } from '@vcmap/core';
|
|
2
2
|
import { ref } from 'vue';
|
3
3
|
|
4
4
|
/**
|
5
|
-
* @typedef {
|
6
|
-
*
|
7
|
-
*
|
5
|
+
* @typedef {{
|
6
|
+
* name: string,
|
7
|
+
* value: T
|
8
|
+
* }} UiConfigurationItem
|
9
|
+
* @template T
|
10
|
+
*/
|
11
|
+
|
12
|
+
/**
|
13
|
+
* @typedef {Object} TextPageType
|
14
|
+
* @property {string} title
|
15
|
+
* @property {URL|string} [url]
|
16
|
+
* @property {string} [content]
|
8
17
|
*/
|
9
18
|
|
10
19
|
/**
|
@@ -14,13 +23,14 @@ import { ref } from 'vue';
|
|
14
23
|
* @property {string} [appTitle] - an optional title to display next to the company logo
|
15
24
|
* @property {string} [primaryColor] - an optional primary color to use in all themes
|
16
25
|
* @property {boolean} [startingFeatureInfo] - an optional flag whether to activate feature info on startup (default active)
|
26
|
+
* @property {string} [positionDisplayEventType] - mouse event, when position display is updated. Either 'click' (default) or 'move'.
|
17
27
|
* @property {string} [helpBaseUrl='https://help.vc.systems/'] - an optional URL to a help landing page
|
28
|
+
* @property {TextPageType} [imprint] - an option imprint, will show a link in the footer.
|
29
|
+
* @property {TextPageType} [dataProtection] - an option dataProtection, will show a link in the footer.
|
18
30
|
*/
|
19
31
|
|
20
32
|
/**
|
21
|
-
* @
|
22
|
-
* @extends {Collection<UiConfigurationItem>}
|
23
|
-
* @implements {import("@vcmap/core").OverrideCollectionInterface<UiConfigurationItem>}
|
33
|
+
* @extends {Collection<UiConfigurationItem<unknown>>}
|
24
34
|
*/
|
25
35
|
class UiConfig extends Collection {
|
26
36
|
/**
|
@@ -62,7 +72,7 @@ class UiConfig extends Collection {
|
|
62
72
|
}
|
63
73
|
|
64
74
|
/**
|
65
|
-
* @
|
75
|
+
* @type {import("vue").Ref<Object<string, unknown>|UiConfigObject>}
|
66
76
|
*/
|
67
77
|
get config() {
|
68
78
|
return this._config;
|