@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
@@ -0,0 +1,63 @@
|
|
1
|
+
/**
|
2
|
+
* Creates an action for renaming an item in a VcsList. Sho VcsTextfield in VcsList.
|
3
|
+
* @param {import("../components/lists/VcsList.vue").VcsListItem} item
|
4
|
+
* @param {Partial<import("./actionHelper.js").ActionOptions>} [actionOptions={}]
|
5
|
+
* @returns {import("./actionHelper.js").VcsAction}
|
6
|
+
*/
|
7
|
+
export function createListItemRenameAction(item: import("../components/lists/VcsList.vue").VcsListItem, actionOptions?: Partial<import("./actionHelper.js").ActionOptions> | undefined): import("./actionHelper.js").VcsAction;
|
8
|
+
/**
|
9
|
+
* Creates an action for renaming an item in a VcsList.
|
10
|
+
* @param {import("@vcmap/core").Collection<T>} collection
|
11
|
+
* @param {T} item
|
12
|
+
* @param {Partial<import("./actionHelper.js").ActionOptions>} [actionOptions={}]
|
13
|
+
* @template {Object} T
|
14
|
+
* @returns {import("./actionHelper.js").VcsAction}
|
15
|
+
*/
|
16
|
+
export function createListItemDeleteAction<T extends Object>(collection: import("@vcmap/core/dist/src/util/collection.js").default<T>, item: T, actionOptions?: Partial<import("./actionHelper.js").ActionOptions> | undefined): import("./actionHelper.js").VcsAction;
|
17
|
+
/**
|
18
|
+
* Creates an action based on a provided selection
|
19
|
+
* @param {import("vue").Ref<Array<import("../components/lists/VcsList.vue").VcsListItem>>} selection
|
20
|
+
* @param {import("./actionHelper.js").ActionOptions & {callback:import("./actionHelper.js").ActionCallback}} [actionOptions]
|
21
|
+
* @returns {{action: import("vue").UnwrapRef<import("./actionHelper.js").VcsAction>, destroy: import("vue").WatchStopHandle}}
|
22
|
+
*/
|
23
|
+
export function createListItemBulkAction(selection: import("vue").Ref<Array<import("../components/lists/VcsList.vue").VcsListItem>>, actionOptions?: (import("./actionHelper.js").ActionOptions & {
|
24
|
+
callback: import("./actionHelper.js").ActionCallback;
|
25
|
+
}) | undefined): {
|
26
|
+
action: import("vue").UnwrapRef<import("./actionHelper.js").VcsAction>;
|
27
|
+
destroy: import("vue").WatchStopHandle;
|
28
|
+
};
|
29
|
+
/**
|
30
|
+
* @param {import("vue").Ref<Array<import("../components/lists/VcsList.vue").VcsListItem>>} selection
|
31
|
+
* @param {import("./actionHelper.js").ActionCallback} exportCallback
|
32
|
+
* @param {string|symbol} owner
|
33
|
+
* @returns {{action: import("../manager/collectionManager/collectionManager.js").OwnedAction, destroy: (function(): void)}}
|
34
|
+
*/
|
35
|
+
export function createListExportAction(selection: import("vue").Ref<Array<import("../components/lists/VcsList.vue").VcsListItem>>, exportCallback: import("./actionHelper.js").ActionCallback, owner: string | symbol): {
|
36
|
+
action: import("../manager/collectionManager/collectionManager.js").OwnedAction;
|
37
|
+
destroy: (() => void);
|
38
|
+
};
|
39
|
+
/**
|
40
|
+
*
|
41
|
+
* @param {function(File[]):void|Promise<void>} importCallback
|
42
|
+
* @param {import("../manager/window/windowManager.js").default} windowManager
|
43
|
+
* @param {string|symbol} owner
|
44
|
+
* @param {string} parentId
|
45
|
+
* @returns {{action: import("../manager/collectionManager/collectionManager.js").OwnedAction, destroy: (function(): void)}}
|
46
|
+
*/
|
47
|
+
export function createListImportAction(importCallback: (arg0: File[]) => void | Promise<void>, windowManager: import("../manager/window/windowManager.js").default, owner: string | symbol, parentId: string): {
|
48
|
+
action: import("../manager/collectionManager/collectionManager.js").OwnedAction;
|
49
|
+
destroy: (() => void);
|
50
|
+
};
|
51
|
+
/**
|
52
|
+
* @param {import("vue").Ref<Array<import("../manager/collectionManager/collectionComponentClass.js").CollectionComponentListItem>>} selection
|
53
|
+
* @param {function(T):void} editCallback
|
54
|
+
* @param {import("../manager/window/windowManager.js").default} windowManager
|
55
|
+
* @param {string|symbol} owner
|
56
|
+
* @param {string} multiEditorId
|
57
|
+
* @template {Object} T
|
58
|
+
* @returns {{action: import("./actionHelper.js").VcsAction, destroy: function(): void}}
|
59
|
+
*/
|
60
|
+
export function createListEditAction<T extends Object>(selection: import("vue").Ref<Array<import("../manager/collectionManager/collectionComponentClass.js").CollectionComponentListItem>>, editCallback: (arg0: T) => void, windowManager: import("../manager/window/windowManager.js").default, owner: string | symbol, multiEditorId: string): {
|
61
|
+
action: import("./actionHelper.js").VcsAction;
|
62
|
+
destroy: () => void;
|
63
|
+
};
|
@@ -0,0 +1,185 @@
|
|
1
|
+
import { reactive, watch } from 'vue';
|
2
|
+
import { check } from '@vcsuite/check';
|
3
|
+
import { createToggleAction } from './actionHelper.js';
|
4
|
+
import ImportComponent from '../components/import/ImportComponent.vue';
|
5
|
+
import { WindowSlot } from '../manager/window/windowManager.js';
|
6
|
+
import { vcsAppSymbol } from '../pluginHelper.js';
|
7
|
+
|
8
|
+
/**
|
9
|
+
* Creates an action for renaming an item in a VcsList. Sho VcsTextfield in VcsList.
|
10
|
+
* @param {import("../components/lists/VcsList.vue").VcsListItem} item
|
11
|
+
* @param {Partial<import("./actionHelper.js").ActionOptions>} [actionOptions={}]
|
12
|
+
* @returns {import("./actionHelper.js").VcsAction}
|
13
|
+
*/
|
14
|
+
export function createListItemRenameAction(item, actionOptions = {}) {
|
15
|
+
return {
|
16
|
+
name: 'list.renameItem',
|
17
|
+
...actionOptions,
|
18
|
+
callback: () => {
|
19
|
+
item.rename = true;
|
20
|
+
},
|
21
|
+
};
|
22
|
+
}
|
23
|
+
|
24
|
+
/**
|
25
|
+
* Creates an action for renaming an item in a VcsList.
|
26
|
+
* @param {import("@vcmap/core").Collection<T>} collection
|
27
|
+
* @param {T} item
|
28
|
+
* @param {Partial<import("./actionHelper.js").ActionOptions>} [actionOptions={}]
|
29
|
+
* @template {Object} T
|
30
|
+
* @returns {import("./actionHelper.js").VcsAction}
|
31
|
+
*/
|
32
|
+
export function createListItemDeleteAction(
|
33
|
+
collection,
|
34
|
+
item,
|
35
|
+
actionOptions = {},
|
36
|
+
) {
|
37
|
+
return {
|
38
|
+
name: 'list.deleteItem',
|
39
|
+
...actionOptions,
|
40
|
+
callback: () => {
|
41
|
+
if (collection.has(item)) {
|
42
|
+
collection.remove(item);
|
43
|
+
}
|
44
|
+
},
|
45
|
+
};
|
46
|
+
}
|
47
|
+
|
48
|
+
/**
|
49
|
+
* Creates an action based on a provided selection
|
50
|
+
* @param {import("vue").Ref<Array<import("../components/lists/VcsList.vue").VcsListItem>>} selection
|
51
|
+
* @param {import("./actionHelper.js").ActionOptions & {callback:import("./actionHelper.js").ActionCallback}} [actionOptions]
|
52
|
+
* @returns {{action: import("vue").UnwrapRef<import("./actionHelper.js").VcsAction>, destroy: import("vue").WatchStopHandle}}
|
53
|
+
*/
|
54
|
+
export function createListItemBulkAction(selection, actionOptions) {
|
55
|
+
check(actionOptions, {
|
56
|
+
name: String,
|
57
|
+
icon: [undefined, String],
|
58
|
+
title: [undefined, String],
|
59
|
+
callback: Function,
|
60
|
+
});
|
61
|
+
|
62
|
+
const action = reactive({
|
63
|
+
disabled: true,
|
64
|
+
...actionOptions,
|
65
|
+
});
|
66
|
+
|
67
|
+
const destroy = watch(selection, () => {
|
68
|
+
action.disabled = selection.value.length < 1;
|
69
|
+
});
|
70
|
+
|
71
|
+
return { action, destroy };
|
72
|
+
}
|
73
|
+
|
74
|
+
/**
|
75
|
+
* @param {import("vue").Ref<Array<import("../components/lists/VcsList.vue").VcsListItem>>} selection
|
76
|
+
* @param {import("./actionHelper.js").ActionCallback} exportCallback
|
77
|
+
* @param {string|symbol} owner
|
78
|
+
* @returns {{action: import("../manager/collectionManager/collectionManager.js").OwnedAction, destroy: (function(): void)}}
|
79
|
+
*/
|
80
|
+
export function createListExportAction(selection, exportCallback, owner) {
|
81
|
+
const { action, destroy } = createListItemBulkAction(selection, {
|
82
|
+
name: 'list.export',
|
83
|
+
callback: exportCallback,
|
84
|
+
});
|
85
|
+
|
86
|
+
return {
|
87
|
+
action: {
|
88
|
+
action,
|
89
|
+
owner,
|
90
|
+
weight: 99,
|
91
|
+
},
|
92
|
+
destroy,
|
93
|
+
};
|
94
|
+
}
|
95
|
+
|
96
|
+
/**
|
97
|
+
*
|
98
|
+
* @param {function(File[]):void|Promise<void>} importCallback
|
99
|
+
* @param {import("../manager/window/windowManager.js").default} windowManager
|
100
|
+
* @param {string|symbol} owner
|
101
|
+
* @param {string} parentId
|
102
|
+
* @returns {{action: import("../manager/collectionManager/collectionManager.js").OwnedAction, destroy: (function(): void)}}
|
103
|
+
*/
|
104
|
+
export function createListImportAction(
|
105
|
+
importCallback,
|
106
|
+
windowManager,
|
107
|
+
owner,
|
108
|
+
parentId,
|
109
|
+
) {
|
110
|
+
check(importCallback, Function);
|
111
|
+
check(owner, [String, vcsAppSymbol]);
|
112
|
+
check(parentId, String);
|
113
|
+
|
114
|
+
const { action, destroy } = createToggleAction(
|
115
|
+
{
|
116
|
+
name: `list.import`,
|
117
|
+
},
|
118
|
+
{
|
119
|
+
id: `list-import`,
|
120
|
+
parentId,
|
121
|
+
component: ImportComponent,
|
122
|
+
slot: WindowSlot.DYNAMIC_CHILD,
|
123
|
+
state: {
|
124
|
+
headerTitle: `list.import`,
|
125
|
+
headerIcon: '$vcsPlus',
|
126
|
+
},
|
127
|
+
props: {
|
128
|
+
importFiles: importCallback,
|
129
|
+
},
|
130
|
+
},
|
131
|
+
windowManager,
|
132
|
+
owner,
|
133
|
+
);
|
134
|
+
|
135
|
+
return {
|
136
|
+
action: {
|
137
|
+
action,
|
138
|
+
owner,
|
139
|
+
weight: 98,
|
140
|
+
},
|
141
|
+
destroy,
|
142
|
+
};
|
143
|
+
}
|
144
|
+
|
145
|
+
/**
|
146
|
+
* @param {import("vue").Ref<Array<import("../manager/collectionManager/collectionComponentClass.js").CollectionComponentListItem>>} selection
|
147
|
+
* @param {function(T):void} editCallback
|
148
|
+
* @param {import("../manager/window/windowManager.js").default} windowManager
|
149
|
+
* @param {string|symbol} owner
|
150
|
+
* @param {string} multiEditorId
|
151
|
+
* @template {Object} T
|
152
|
+
* @returns {{action: import("./actionHelper.js").VcsAction, destroy: function(): void}}
|
153
|
+
*/
|
154
|
+
export function createListEditAction(
|
155
|
+
selection,
|
156
|
+
editCallback,
|
157
|
+
windowManager,
|
158
|
+
owner,
|
159
|
+
multiEditorId,
|
160
|
+
) {
|
161
|
+
const { action, destroy: destroyEditSelected } = createListItemBulkAction(
|
162
|
+
selection,
|
163
|
+
{
|
164
|
+
name: 'list.edit',
|
165
|
+
callback: editCallback,
|
166
|
+
},
|
167
|
+
);
|
168
|
+
|
169
|
+
function handleWindowChanged() {
|
170
|
+
action.active = windowManager.has(multiEditorId);
|
171
|
+
}
|
172
|
+
|
173
|
+
const editorStateListener = [
|
174
|
+
windowManager.added.addEventListener(handleWindowChanged),
|
175
|
+
windowManager.removed.addEventListener(handleWindowChanged),
|
176
|
+
];
|
177
|
+
|
178
|
+
return {
|
179
|
+
action,
|
180
|
+
destroy: () => {
|
181
|
+
destroyEditSelected();
|
182
|
+
editorStateListener.forEach((cb) => cb());
|
183
|
+
},
|
184
|
+
};
|
185
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
/**
|
2
|
+
* Creates an action
|
3
|
+
* @param {string} name
|
4
|
+
* @param {import("vue").Ref<StateActionState>} stateRef
|
5
|
+
* @param {function():void} callback
|
6
|
+
* @returns {{ action: import("./actionHelper.js").VcsAction, destroy: function():void }}
|
7
|
+
*/
|
8
|
+
export function createStateRefAction(name: string, stateRef: import("vue").Ref<StateActionState>, callback: () => void): {
|
9
|
+
action: import("./actionHelper.js").VcsAction;
|
10
|
+
destroy: () => void;
|
11
|
+
};
|
12
|
+
export type StateActionState = number;
|
13
|
+
export namespace StateActionState {
|
14
|
+
let NONE: number;
|
15
|
+
let INACTIVE: number;
|
16
|
+
let LOADING: number;
|
17
|
+
let ACTIVE: number;
|
18
|
+
let INDETERMINATE: number;
|
19
|
+
}
|
@@ -24,7 +24,7 @@ const stateIconMap = {
|
|
24
24
|
* @param {string} name
|
25
25
|
* @param {import("vue").Ref<StateActionState>} stateRef
|
26
26
|
* @param {function():void} callback
|
27
|
-
* @returns {{ action: VcsAction, destroy: function():void }}
|
27
|
+
* @returns {{ action: import("./actionHelper.js").VcsAction, destroy: function():void }}
|
28
28
|
*/
|
29
29
|
export function createStateRefAction(name, stateRef, callback) {
|
30
30
|
check(name, String);
|
@@ -31,11 +31,29 @@
|
|
31
31
|
<WindowManagerComponent />
|
32
32
|
<NotifierComponent />
|
33
33
|
</v-container>
|
34
|
-
<v-footer
|
34
|
+
<v-footer
|
35
|
+
absolute
|
36
|
+
v-if="$vuetify.breakpoint.smAndUp"
|
37
|
+
min-height="22px"
|
38
|
+
class="d-flex gap-1 pa-0"
|
39
|
+
>
|
40
|
+
<VcsPositionDisplay />
|
41
|
+
|
42
|
+
<VcsTextPageFooter
|
43
|
+
v-if="imprint"
|
44
|
+
:text-page="imprint"
|
45
|
+
:window-id="'imprintWindow'"
|
46
|
+
/>
|
47
|
+
<VcsTextPageFooter
|
48
|
+
v-if="dataProtection"
|
49
|
+
:text-page="dataProtection"
|
50
|
+
:window-id="'dataProtectionWindow'"
|
51
|
+
/>
|
35
52
|
<VcsAttributionsFooter
|
53
|
+
class="align-wrapper"
|
36
54
|
:entries="attributionEntries"
|
37
55
|
:attribution-action="attributionAction"
|
38
|
-
|
56
|
+
></VcsAttributionsFooter>
|
39
57
|
</v-footer>
|
40
58
|
</v-container>
|
41
59
|
</template>
|
@@ -44,6 +62,11 @@
|
|
44
62
|
::v-deep .v-application--wrap {
|
45
63
|
min-height: fit-content;
|
46
64
|
}
|
65
|
+
.align-wrapper {
|
66
|
+
position: absolute;
|
67
|
+
right: 0;
|
68
|
+
margin-right: 4px !important;
|
69
|
+
}
|
47
70
|
.vcs-main {
|
48
71
|
position: absolute;
|
49
72
|
top: 48px;
|
@@ -84,7 +107,7 @@
|
|
84
107
|
ref,
|
85
108
|
watch,
|
86
109
|
} from 'vue';
|
87
|
-
import { getVcsAppById } from '@vcmap/core';
|
110
|
+
import { getVcsAppById, moduleIdSymbol } from '@vcmap/core';
|
88
111
|
import { VContainer, VFooter } from 'vuetify/lib';
|
89
112
|
import { getLogger } from '@vcsuite/logger';
|
90
113
|
import WindowManagerComponent from '../manager/window/WindowManager.vue';
|
@@ -106,24 +129,26 @@
|
|
106
129
|
import VcsLegend from '../legend/VcsLegend.vue';
|
107
130
|
import { getLegendEntries } from '../legend/legendHelper.js';
|
108
131
|
import VcsAttributionsFooter from './VcsAttributionsFooter.vue';
|
132
|
+
import VcsTextPageFooter from './VcsTextPageFooter.vue';
|
109
133
|
import VcsButton from '../components/buttons/VcsButton.vue';
|
110
134
|
import VcsAttributions from './VcsAttributions.vue';
|
111
135
|
import { getAttributions } from './attributionsHelper.js';
|
112
136
|
import NotifierComponent from '../notifier/NotifierComponent.vue';
|
113
137
|
import VcsDefaultLogoMobile from '../logo-mobile.svg';
|
138
|
+
import VcsPositionDisplay from './VcsPositionDisplay.vue';
|
114
139
|
|
115
140
|
/**
|
116
141
|
* You should call this function in the component providing the vcsUiApp to your
|
117
142
|
* application in the components mounted hook. This will call VcsAppMounted on all plugins in the app
|
118
143
|
* and add a listener to call. Returns a destroy hook to stop listening to the added event. If you use the VcsApp
|
119
144
|
* component, do not call this function, since the component will do this for you.
|
120
|
-
* @param {
|
145
|
+
* @param {import("../vcsUiApp.js").default} app
|
121
146
|
* @returns {function():void}
|
122
147
|
*/
|
123
148
|
export function setupPluginMountedListeners(app) {
|
124
149
|
/**
|
125
150
|
* wrapped execution of onVcsAppMounted hook
|
126
|
-
* @param {VcsPlugin} plugin
|
151
|
+
* @param {import("@src/vcsUiApp.js").VcsPlugin} plugin
|
127
152
|
*/
|
128
153
|
function onVcsAppMounted(plugin) {
|
129
154
|
if (plugin.onVcsAppMounted) {
|
@@ -146,7 +171,7 @@
|
|
146
171
|
/**
|
147
172
|
* This helper function will add a map action button based on the default icons
|
148
173
|
* to the apps NavbarManager. Furthermore, all maps on the app are synced for adding and removing.
|
149
|
-
* @param {
|
174
|
+
* @param {import("../vcsUiApp.js").default} app
|
150
175
|
* @returns {function():void}
|
151
176
|
*/
|
152
177
|
export function setupMapNavbar(app) {
|
@@ -209,7 +234,7 @@
|
|
209
234
|
/**
|
210
235
|
* This helper function will add a legend action button to the apps NavbarManager TOOL location, if legend entries are available.
|
211
236
|
* Watches number of legend entries.
|
212
|
-
* @param {
|
237
|
+
* @param {import("../vcsUiApp.js").default} app
|
213
238
|
* @returns {function():void}
|
214
239
|
*/
|
215
240
|
export function setupLegendWindow(app) {
|
@@ -295,7 +320,7 @@
|
|
295
320
|
|
296
321
|
/**
|
297
322
|
* This helper function will add a settings action button to the apps NavbarManager MENU location.
|
298
|
-
* @param {
|
323
|
+
* @param {import("../vcsUiApp.js").default} app
|
299
324
|
* @returns {function():void}
|
300
325
|
*/
|
301
326
|
export function setupSettingsWindow(app) {
|
@@ -330,7 +355,7 @@
|
|
330
355
|
|
331
356
|
/**
|
332
357
|
* This helper function will add a help action button referencing VC Map help page to the apps NavbarManager MENU location.
|
333
|
-
* @param {
|
358
|
+
* @param {import("../vcsUiApp.js").default} app
|
334
359
|
*/
|
335
360
|
export function setupHelpButton(app) {
|
336
361
|
const helpAction = createLinkAction(
|
@@ -354,7 +379,7 @@
|
|
354
379
|
/**
|
355
380
|
* This helper function will add a category manager button to the navbar. The category Manager
|
356
381
|
* will only be shown if there is at least one category under management in the categoryManager.
|
357
|
-
* @param {
|
382
|
+
* @param {import("../vcsUiApp.js").default} app
|
358
383
|
* @returns {function():void}
|
359
384
|
*/
|
360
385
|
export function setupCategoryManagerWindow(app) {
|
@@ -384,30 +409,74 @@
|
|
384
409
|
vcsAppSymbol,
|
385
410
|
);
|
386
411
|
|
387
|
-
const
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
412
|
+
const collectionListeners = new Map();
|
413
|
+
|
414
|
+
/**
|
415
|
+
* Makes sure that the category-manager button is in the navbar.
|
416
|
+
* Adds listener to the collectionComponents collection to display hasUpdate if new item is added to collection AND category-manager window is closed.
|
417
|
+
* @param {import("../manager/collectionManager/collectionComponentClass.js").default} collectionComponent
|
418
|
+
*/
|
419
|
+
function handleAdded(collectionComponent) {
|
420
|
+
if (!app.navbarManager.has(id)) {
|
421
|
+
app.navbarManager.add(
|
422
|
+
{ id, action: categoryManagerAction },
|
423
|
+
vcsAppSymbol,
|
424
|
+
ButtonLocation.CONTENT,
|
425
|
+
);
|
426
|
+
}
|
427
|
+
collectionListeners.set(
|
428
|
+
collectionComponent.id,
|
429
|
+
collectionComponent.collection.added.addEventListener((item) => {
|
430
|
+
if (
|
431
|
+
!app.windowManager.has(id) &&
|
432
|
+
item[moduleIdSymbol] === app.dynamicModuleId
|
433
|
+
) {
|
434
|
+
categoryManagerAction.hasUpdate = true;
|
435
|
+
}
|
436
|
+
}),
|
437
|
+
);
|
438
|
+
}
|
439
|
+
|
440
|
+
/**
|
441
|
+
* Removes listener on collection of collectionComponent.
|
442
|
+
* Removes collection-manager button in navbar, if categoryManager has no more collectionComponents.
|
443
|
+
* @param {import("../manager/collectionManager/collectionComponentClass.js").default} collectionComponent
|
444
|
+
*/
|
445
|
+
function handleRemoved(collectionComponent) {
|
446
|
+
collectionListeners.get(collectionComponent.id)?.();
|
447
|
+
collectionListeners.delete(collectionComponent.id);
|
448
|
+
|
449
|
+
if (!app.categoryManager.componentIds.length) {
|
397
450
|
app.windowManager.remove(id);
|
398
451
|
app.navbarManager.remove(id);
|
452
|
+
categoryManagerAction.hasUpdate = false;
|
399
453
|
}
|
400
|
-
}
|
454
|
+
}
|
455
|
+
|
401
456
|
const addedListener =
|
402
|
-
app.categoryManager.added.addEventListener(
|
457
|
+
app.categoryManager.added.addEventListener(handleAdded);
|
403
458
|
const removedListener =
|
404
|
-
app.categoryManager.removed.addEventListener(
|
405
|
-
|
459
|
+
app.categoryManager.removed.addEventListener(handleRemoved);
|
460
|
+
|
461
|
+
// setup existing collectionComponents
|
462
|
+
app.categoryManager.componentIds.forEach((componentId) =>
|
463
|
+
handleAdded(app.categoryManager.get(componentId)),
|
464
|
+
);
|
465
|
+
|
466
|
+
const windowListener = app.windowManager.added.addEventListener(
|
467
|
+
(windowComponent) => {
|
468
|
+
if (windowComponent.id === id) {
|
469
|
+
categoryManagerAction.hasUpdate = false;
|
470
|
+
}
|
471
|
+
},
|
472
|
+
);
|
406
473
|
|
407
474
|
return () => {
|
408
475
|
destroy();
|
409
476
|
addedListener();
|
410
477
|
removedListener();
|
478
|
+
collectionListeners.forEach((value) => value());
|
479
|
+
windowListener();
|
411
480
|
};
|
412
481
|
}
|
413
482
|
|
@@ -416,7 +485,7 @@
|
|
416
485
|
* with a given vuetify instance. Use this helper, if you do not use the VcsApp component and wish to evaluate
|
417
486
|
* the theming keys. Returns a function to stop syncing.
|
418
487
|
* Also adds a watcher to vuetify theme, which triggers themeChanged event on the VcsUiApp.
|
419
|
-
* @param {
|
488
|
+
* @param {import("../vcsUiApp.js").default} app
|
420
489
|
* @param {import("vuetify").Framework} vuetify
|
421
490
|
* @returns {function():void} - call to stop syncing
|
422
491
|
*/
|
@@ -454,8 +523,8 @@
|
|
454
523
|
/**
|
455
524
|
* This helper gets attributions of all active maps, layers and oblique collections and returns an array of entries.
|
456
525
|
* It also returns a attributionAction to toggle the attributions window and a destroy function.
|
457
|
-
* @param {
|
458
|
-
* @returns {{attributionEntries: import("vue").Ref<Array<AttributionEntry>>, attributionAction: VcsAction, destroyAttributions: function():void}}
|
526
|
+
* @param {import("../vcsUiApp.js").default} app
|
527
|
+
* @returns {{ attributionEntries: import("vue").Ref<Array<import("./attributionsHelper.js").AttributionEntry>>, attributionAction: import("../actions/actionHelper.js").VcsAction, destroyAttributions: function():void }}
|
459
528
|
*/
|
460
529
|
export function setupAttributions(app) {
|
461
530
|
const { entries, destroy } = getAttributions(app);
|
@@ -521,7 +590,9 @@
|
|
521
590
|
export default {
|
522
591
|
components: {
|
523
592
|
VcsButton,
|
593
|
+
VcsPositionDisplay,
|
524
594
|
VcsAttributionsFooter,
|
595
|
+
VcsTextPageFooter,
|
525
596
|
MapNavigation,
|
526
597
|
VcsNavbar,
|
527
598
|
VcsMap,
|
@@ -540,7 +611,7 @@
|
|
540
611
|
setup(props) {
|
541
612
|
const id = uuid();
|
542
613
|
const mapId = `mapCollection-${id}`;
|
543
|
-
/** @type {
|
614
|
+
/** @type {import("../vcsUiApp.js").default} */
|
544
615
|
const app = getVcsAppById(props.appId);
|
545
616
|
provide('vcsApp', app);
|
546
617
|
|
@@ -586,6 +657,10 @@
|
|
586
657
|
app.uiConfig.config.value.logo ??
|
587
658
|
VcsDefaultLogoMobile,
|
588
659
|
),
|
660
|
+
imprint: computed(() => app.uiConfig.config.value.imprint),
|
661
|
+
dataProtection: computed(
|
662
|
+
() => app.uiConfig.config.value.dataProtection,
|
663
|
+
),
|
589
664
|
attributionEntries,
|
590
665
|
attributionAction,
|
591
666
|
showMapNavigation,
|
@@ -0,0 +1,86 @@
|
|
1
|
+
/**
|
2
|
+
* You should call this function in the component providing the vcsUiApp to your
|
3
|
+
* application in the components mounted hook. This will call VcsAppMounted on all plugins in the app
|
4
|
+
* and add a listener to call. Returns a destroy hook to stop listening to the added event. If you use the VcsApp
|
5
|
+
* component, do not call this function, since the component will do this for you.
|
6
|
+
* @param {import("../vcsUiApp.js").default} app
|
7
|
+
* @returns {function():void}
|
8
|
+
*/
|
9
|
+
export function setupPluginMountedListeners(app: import("../vcsUiApp.js").default): () => void;
|
10
|
+
/**
|
11
|
+
* This helper function will add a map action button based on the default icons
|
12
|
+
* to the apps NavbarManager. Furthermore, all maps on the app are synced for adding and removing.
|
13
|
+
* @param {import("../vcsUiApp.js").default} app
|
14
|
+
* @returns {function():void}
|
15
|
+
*/
|
16
|
+
export function setupMapNavbar(app: import("../vcsUiApp.js").default): () => void;
|
17
|
+
/**
|
18
|
+
* This helper function will add a legend action button to the apps NavbarManager TOOL location, if legend entries are available.
|
19
|
+
* Watches number of legend entries.
|
20
|
+
* @param {import("../vcsUiApp.js").default} app
|
21
|
+
* @returns {function():void}
|
22
|
+
*/
|
23
|
+
export function setupLegendWindow(app: import("../vcsUiApp.js").default): () => void;
|
24
|
+
/**
|
25
|
+
* This helper function will add a settings action button to the apps NavbarManager MENU location.
|
26
|
+
* @param {import("../vcsUiApp.js").default} app
|
27
|
+
* @returns {function():void}
|
28
|
+
*/
|
29
|
+
export function setupSettingsWindow(app: import("../vcsUiApp.js").default): () => void;
|
30
|
+
/**
|
31
|
+
* This helper function will add a help action button referencing VC Map help page to the apps NavbarManager MENU location.
|
32
|
+
* @param {import("../vcsUiApp.js").default} app
|
33
|
+
*/
|
34
|
+
export function setupHelpButton(app: import("../vcsUiApp.js").default): void;
|
35
|
+
/**
|
36
|
+
* This helper function will add a category manager button to the navbar. The category Manager
|
37
|
+
* will only be shown if there is at least one category under management in the categoryManager.
|
38
|
+
* @param {import("../vcsUiApp.js").default} app
|
39
|
+
* @returns {function():void}
|
40
|
+
*/
|
41
|
+
export function setupCategoryManagerWindow(app: import("../vcsUiApp.js").default): () => void;
|
42
|
+
/**
|
43
|
+
* This helper sets up a listener to sync the theming relevant keys from the {@see UiConfigObject}
|
44
|
+
* with a given vuetify instance. Use this helper, if you do not use the VcsApp component and wish to evaluate
|
45
|
+
* the theming keys. Returns a function to stop syncing.
|
46
|
+
* Also adds a watcher to vuetify theme, which triggers themeChanged event on the VcsUiApp.
|
47
|
+
* @param {import("../vcsUiApp.js").default} app
|
48
|
+
* @param {import("vuetify").Framework} vuetify
|
49
|
+
* @returns {function():void} - call to stop syncing
|
50
|
+
*/
|
51
|
+
export function setupUiConfigTheming(app: import("../vcsUiApp.js").default, vuetify: import("vuetify").Framework): () => void;
|
52
|
+
/**
|
53
|
+
* This helper gets attributions of all active maps, layers and oblique collections and returns an array of entries.
|
54
|
+
* It also returns a attributionAction to toggle the attributions window and a destroy function.
|
55
|
+
* @param {import("../vcsUiApp.js").default} app
|
56
|
+
* @returns {{ attributionEntries: import("vue").Ref<Array<import("./attributionsHelper.js").AttributionEntry>>, attributionAction: import("../actions/actionHelper.js").VcsAction, destroyAttributions: function():void }}
|
57
|
+
*/
|
58
|
+
export function setupAttributions(app: import("../vcsUiApp.js").default): {
|
59
|
+
attributionEntries: import("vue").Ref<Array<import("./attributionsHelper.js").AttributionEntry>>;
|
60
|
+
attributionAction: import("../actions/actionHelper.js").VcsAction;
|
61
|
+
destroyAttributions: () => void;
|
62
|
+
};
|
63
|
+
export function setupMapNavigation(app: any): {
|
64
|
+
showMapNavigation: import("vue").Ref<boolean>;
|
65
|
+
destroy: () => void;
|
66
|
+
};
|
67
|
+
declare const _default: import("vue").DefineComponent<{
|
68
|
+
appId: {
|
69
|
+
type: StringConstructor;
|
70
|
+
required: true;
|
71
|
+
};
|
72
|
+
}, {
|
73
|
+
mapId: string;
|
74
|
+
mobileLogo: import("vue").ComputedRef<any>;
|
75
|
+
imprint: import("vue").ComputedRef<unknown>;
|
76
|
+
dataProtection: import("vue").ComputedRef<unknown>;
|
77
|
+
attributionEntries: import("vue").Ref<import("./attributionsHelper.js").AttributionEntry[]>;
|
78
|
+
attributionAction: import("../actions/actionHelper.js").VcsAction;
|
79
|
+
showMapNavigation: import("vue").Ref<boolean>;
|
80
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
81
|
+
appId: {
|
82
|
+
type: StringConstructor;
|
83
|
+
required: true;
|
84
|
+
};
|
85
|
+
}>>, {}>;
|
86
|
+
export default _default;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
appId: {
|
3
|
+
type: StringConstructor;
|
4
|
+
required: true;
|
5
|
+
};
|
6
|
+
}, {}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
7
|
+
appId: {
|
8
|
+
type: StringConstructor;
|
9
|
+
required: true;
|
10
|
+
};
|
11
|
+
}>>, {}>;
|
12
|
+
export default _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
entries: {
|
3
|
+
type: ObjectConstructor;
|
4
|
+
default: () => void;
|
5
|
+
};
|
6
|
+
}, {}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
7
|
+
entries: {
|
8
|
+
type: ObjectConstructor;
|
9
|
+
default: () => void;
|
10
|
+
};
|
11
|
+
}>>, {
|
12
|
+
entries: Record<string, any>;
|
13
|
+
}>;
|
14
|
+
export default _default;
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<template>
|
2
|
-
<span class="d-inline-block text-truncate mr-10
|
2
|
+
<span class="d-inline-block text-truncate mr-10">
|
3
3
|
<span
|
4
4
|
v-for="attribution in mergedAttributions"
|
5
5
|
class="attribution-span"
|
@@ -10,7 +10,6 @@
|
|
10
10
|
</a>
|
11
11
|
</span>
|
12
12
|
<VcsButton
|
13
|
-
class="d-flex"
|
14
13
|
:key="attributionAction.name"
|
15
14
|
:tooltip="attributionAction.title"
|
16
15
|
:icon="attributionAction.icon"
|
@@ -23,8 +22,6 @@
|
|
23
22
|
|
24
23
|
<style lang="scss" scoped>
|
25
24
|
.attribution-wrap .vcs-button-wrap {
|
26
|
-
position: absolute;
|
27
|
-
right: 4px;
|
28
25
|
bottom: 3px;
|
29
26
|
}
|
30
27
|
|