@vcmap/ui 5.0.2 → 5.1.0-rc.1
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 +24 -0
- package/dist/assets/{cesium.a3a1dc.js → cesium.e9b3ca.js} +1859 -1828
- package/dist/assets/cesium.js +1 -1
- package/dist/assets/{core.bb64ed.js → core.a9fe5a.js} +5859 -5041
- package/dist/assets/core.js +1 -1
- package/dist/assets/index-bb2549d6.js +1 -0
- package/dist/assets/{ol.833fa9.js → ol.5f0496.js} +7257 -7252
- package/dist/assets/ol.js +1 -1
- package/dist/assets/{ui.aeb2ec.css → ui.3c73c2.css} +2 -2
- package/dist/assets/{ui.aeb2ec.js → ui.3c73c2.js} +14199 -9198
- package/dist/assets/ui.js +1 -1
- package/dist/assets/{vue.8e1850.js → vue.4fe14e.js} +1243 -1234
- package/dist/assets/vue.js +2 -2
- package/dist/assets/{vuetify.3ed426.css → vuetify.260d9a.css} +1 -1
- package/dist/assets/{vuetify.3ed426.js → vuetify.260d9a.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 +3 -1
- 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/init.js
CHANGED
@@ -7,7 +7,6 @@ import VcsUiApp from './vcsUiApp.js';
|
|
7
7
|
|
8
8
|
/**
|
9
9
|
* Base pattern to check VcsObjects
|
10
|
-
* @type {import("vcsuite/check").PatternFor<import("@vcmap/core").VcsObject>}
|
11
10
|
*/
|
12
11
|
const VcsObjectPattern = {
|
13
12
|
type: String,
|
@@ -16,7 +15,6 @@ const VcsObjectPattern = {
|
|
16
15
|
|
17
16
|
/**
|
18
17
|
* Base pattern to check VcsUiAppConfig
|
19
|
-
* @type {import("vcsuite/check").PatternFor<VcsUiAppConfig>}
|
20
18
|
*/
|
21
19
|
export const VcsUiAppConfigPattern = {
|
22
20
|
id: [undefined, String],
|
@@ -39,7 +37,7 @@ export const VcsUiAppConfigPattern = {
|
|
39
37
|
/**
|
40
38
|
* creates and mounts a vcsApp
|
41
39
|
* @param {string} mountTarget
|
42
|
-
* @returns {Promise<
|
40
|
+
* @returns {Promise<import("@src/vcsUiApp.js").default>}
|
43
41
|
*/
|
44
42
|
export default async function initApp(mountTarget) {
|
45
43
|
check(mountTarget, String);
|
@@ -62,7 +60,7 @@ export default async function initApp(mountTarget) {
|
|
62
60
|
* Initializes app with an optional single config
|
63
61
|
* @param {string} mountTarget
|
64
62
|
* @param {string=} configUrl optional config
|
65
|
-
* @returns {Promise<
|
63
|
+
* @returns {Promise<import("@src/vcsUiApp.js").default>}
|
66
64
|
*/
|
67
65
|
export async function initAppFromModule(mountTarget, configUrl) {
|
68
66
|
check(mountTarget, String);
|
@@ -82,7 +80,7 @@ export async function initAppFromModule(mountTarget, configUrl) {
|
|
82
80
|
* Initializes app with a map config containing a set of config urls
|
83
81
|
* @param {string} mountTarget
|
84
82
|
* @param {string} appUrl app config containing further modules to be loaded
|
85
|
-
* @returns {Promise<
|
83
|
+
* @returns {Promise<import("@src/vcsUiApp.js").default>}
|
86
84
|
*/
|
87
85
|
export async function initAppFromAppConfig(mountTarget, appUrl) {
|
88
86
|
check(mountTarget, String);
|
@@ -0,0 +1,25 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
item: {
|
3
|
+
type: ObjectConstructor;
|
4
|
+
required: true;
|
5
|
+
};
|
6
|
+
}, {
|
7
|
+
StyleRowType: {
|
8
|
+
Stroke: string;
|
9
|
+
Fill: string;
|
10
|
+
Circle: string;
|
11
|
+
Icon: string;
|
12
|
+
Shape: string;
|
13
|
+
Text: string;
|
14
|
+
};
|
15
|
+
getImageSrcFromShape: typeof getImageSrcFromShape;
|
16
|
+
getColor(color: any): string | null;
|
17
|
+
determineInnerPadding: (index: number) => string;
|
18
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
19
|
+
item: {
|
20
|
+
type: ObjectConstructor;
|
21
|
+
required: true;
|
22
|
+
};
|
23
|
+
}>>, {}>;
|
24
|
+
export default _default;
|
25
|
+
import { getImageSrcFromShape } from './legendHelper.js';
|
@@ -0,0 +1,20 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
entries: {
|
3
|
+
type: ObjectConstructor;
|
4
|
+
required: true;
|
5
|
+
};
|
6
|
+
}, {
|
7
|
+
LegendType: {
|
8
|
+
Image: string;
|
9
|
+
Iframe: string;
|
10
|
+
Style: string;
|
11
|
+
};
|
12
|
+
setIframeHeight: (id: string) => void;
|
13
|
+
panels: import("vue").ComputedRef<number[]>;
|
14
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
15
|
+
entries: {
|
16
|
+
type: ObjectConstructor;
|
17
|
+
required: true;
|
18
|
+
};
|
19
|
+
}>>, {}>;
|
20
|
+
export default _default;
|
@@ -0,0 +1,172 @@
|
|
1
|
+
/**
|
2
|
+
* @typedef {Object} LegendItem
|
3
|
+
* @property {LegendType} type - determines rendering, specialised properties are type based.
|
4
|
+
*/
|
5
|
+
/**
|
6
|
+
* @typedef {LegendItem & { popoutBtn?: boolean, src: string, tooltip?: string }} ImageLegendItem
|
7
|
+
* @property {boolean} [popoutBtn=false] - show a button in legend title to open legend in new tab
|
8
|
+
* @property {string} src - the source url. Can be an i18n string.
|
9
|
+
* @property {string} [tooltip] - Optional further explanation of the legend
|
10
|
+
*/
|
11
|
+
/**
|
12
|
+
* @typedef {LegendItem & { popoutBtn?: boolean, src: string }} IframeLegendItem
|
13
|
+
* @property {boolean} [popoutBtn=false] - show a button in legend title to open legend in new tab
|
14
|
+
* @property {string} src - the source url. Can be an i18n string.
|
15
|
+
*/
|
16
|
+
/**
|
17
|
+
* @typedef {LegendItem & { colNr?: number, rows: StyleLegendRow[] }} StyleLegendItem
|
18
|
+
* @property {number} [colNr=2] Number of columns. Valid values are 1 or 2. Per default 2.
|
19
|
+
* @property {Array<StyleLegendRow>} rows - style definitions with description
|
20
|
+
*/
|
21
|
+
/**
|
22
|
+
* @typedef {Object} StyleLegendRow
|
23
|
+
* @property {StyleRowType} type - determines rendering of the row, specialised properties are type based.
|
24
|
+
* @property {string} title - Description of the style. Can be an i18n string
|
25
|
+
* @property {string} [tooltip] - Optional further explanation of the legend row
|
26
|
+
*/
|
27
|
+
/**
|
28
|
+
* @typedef {StyleLegendRow & { stroke: import("ol/style/Stroke.js").Options }} StrokeLegendRow
|
29
|
+
*/
|
30
|
+
/**
|
31
|
+
* @typedef {StyleLegendRow & {
|
32
|
+
* fill: import("ol/style/Fill.js").Options,
|
33
|
+
* stroke?: import("ol/style/Stroke.js").Options
|
34
|
+
* }} FillLegendRow
|
35
|
+
*/
|
36
|
+
/**
|
37
|
+
* @typedef {StyleLegendRow & { image: import("ol/style/Circle.js").Options }} CircleLegendRow
|
38
|
+
*/
|
39
|
+
/**
|
40
|
+
* @typedef {StyleLegendRow & { image: import("ol/style/Icon.js").Options }} IconLegendRow
|
41
|
+
*/
|
42
|
+
/**
|
43
|
+
* @typedef {StyleLegendRow & { image: import("ol/style/RegularShape.js").Options }} RegularShapeLegendRow
|
44
|
+
*/
|
45
|
+
/**
|
46
|
+
* @typedef {StyleLegendRow & {
|
47
|
+
* text: import("ol/style/Text.js").Options,
|
48
|
+
* label?: string,
|
49
|
+
* }} TextLegendRow
|
50
|
+
* @property {import("ol/style/Text.js").Options} text
|
51
|
+
* @property {string} [label='Text']
|
52
|
+
*/
|
53
|
+
/**
|
54
|
+
* @param {import("ol/style/Image.js").Options} image
|
55
|
+
* @returns {string}
|
56
|
+
*/
|
57
|
+
export function getImageSrcFromShape(image: import("ol/style/Image.js").Options): string;
|
58
|
+
/**
|
59
|
+
* @typedef {Object} LegendEntry
|
60
|
+
* @property {string} key
|
61
|
+
* @property {string} title - layer or entry name
|
62
|
+
* @property {boolean} [open=true] - panel state of entry
|
63
|
+
* @property {Array<LegendItem>} legend - legend properties
|
64
|
+
* @property {Array<import("../actions/actionHelper.js").VcsAction>} actions - popout actions
|
65
|
+
*/
|
66
|
+
/**
|
67
|
+
* creates a LegendEntry with title, options and optionally popout action to the entries array
|
68
|
+
* @param {string} key - layerName
|
69
|
+
* @param {string} title
|
70
|
+
* @param {Array<LegendItem>} legend
|
71
|
+
* @returns {LegendEntry}
|
72
|
+
*/
|
73
|
+
export function createLayerLegendEntry(key: string, title: string, legend: Array<LegendItem>): LegendEntry;
|
74
|
+
/**
|
75
|
+
*
|
76
|
+
* @param {import("../vcsUiApp.js").default} app
|
77
|
+
* @returns {{entries: import("vue").Ref<Array<LegendEntry>>, destroy: function():void }}
|
78
|
+
*/
|
79
|
+
export function getLegendEntries(app: import("../vcsUiApp.js").default): {
|
80
|
+
entries: import("vue").Ref<Array<LegendEntry>>;
|
81
|
+
destroy: () => void;
|
82
|
+
};
|
83
|
+
/**
|
84
|
+
* *
|
85
|
+
*/
|
86
|
+
export type LegendType = string;
|
87
|
+
export namespace LegendType {
|
88
|
+
let Image: string;
|
89
|
+
let Iframe: string;
|
90
|
+
let Style: string;
|
91
|
+
}
|
92
|
+
export type StyleRowType = string;
|
93
|
+
export namespace StyleRowType {
|
94
|
+
let Stroke: string;
|
95
|
+
let Fill: string;
|
96
|
+
let Circle: string;
|
97
|
+
let Icon: string;
|
98
|
+
let Shape: string;
|
99
|
+
let Text: string;
|
100
|
+
}
|
101
|
+
export type LegendItem = {
|
102
|
+
/**
|
103
|
+
* - determines rendering, specialised properties are type based.
|
104
|
+
*/
|
105
|
+
type: LegendType;
|
106
|
+
};
|
107
|
+
export type ImageLegendItem = LegendItem & {
|
108
|
+
popoutBtn?: boolean;
|
109
|
+
src: string;
|
110
|
+
tooltip?: string;
|
111
|
+
};
|
112
|
+
export type IframeLegendItem = LegendItem & {
|
113
|
+
popoutBtn?: boolean;
|
114
|
+
src: string;
|
115
|
+
};
|
116
|
+
export type StyleLegendItem = LegendItem & {
|
117
|
+
colNr?: number;
|
118
|
+
rows: StyleLegendRow[];
|
119
|
+
};
|
120
|
+
export type StyleLegendRow = {
|
121
|
+
/**
|
122
|
+
* - determines rendering of the row, specialised properties are type based.
|
123
|
+
*/
|
124
|
+
type: StyleRowType;
|
125
|
+
/**
|
126
|
+
* - Description of the style. Can be an i18n string
|
127
|
+
*/
|
128
|
+
title: string;
|
129
|
+
/**
|
130
|
+
* - Optional further explanation of the legend row
|
131
|
+
*/
|
132
|
+
tooltip?: string | undefined;
|
133
|
+
};
|
134
|
+
export type StrokeLegendRow = StyleLegendRow & {
|
135
|
+
stroke: import("ol/style/Stroke.js").Options;
|
136
|
+
};
|
137
|
+
export type FillLegendRow = StyleLegendRow & {
|
138
|
+
fill: import("ol/style/Fill.js").Options;
|
139
|
+
stroke?: import("ol/style/Stroke.js").Options;
|
140
|
+
};
|
141
|
+
export type CircleLegendRow = StyleLegendRow & {
|
142
|
+
image: import("ol/style/Circle.js").Options;
|
143
|
+
};
|
144
|
+
export type IconLegendRow = StyleLegendRow & {
|
145
|
+
image: import("ol/style/Icon.js").Options;
|
146
|
+
};
|
147
|
+
export type RegularShapeLegendRow = StyleLegendRow & {
|
148
|
+
image: import("ol/style/RegularShape.js").Options;
|
149
|
+
};
|
150
|
+
export type TextLegendRow = StyleLegendRow & {
|
151
|
+
text: import("ol/style/Text.js").Options;
|
152
|
+
label?: string;
|
153
|
+
};
|
154
|
+
export type LegendEntry = {
|
155
|
+
key: string;
|
156
|
+
/**
|
157
|
+
* - layer or entry name
|
158
|
+
*/
|
159
|
+
title: string;
|
160
|
+
/**
|
161
|
+
* - panel state of entry
|
162
|
+
*/
|
163
|
+
open?: boolean | undefined;
|
164
|
+
/**
|
165
|
+
* - legend properties
|
166
|
+
*/
|
167
|
+
legend: Array<LegendItem>;
|
168
|
+
/**
|
169
|
+
* - popout actions
|
170
|
+
*/
|
171
|
+
actions: Array<import("../actions/actionHelper.js").VcsAction>;
|
172
|
+
};
|
@@ -31,20 +31,20 @@ export const StyleRowType = {
|
|
31
31
|
*/
|
32
32
|
|
33
33
|
/**
|
34
|
-
* @typedef {LegendItem} ImageLegendItem
|
34
|
+
* @typedef {LegendItem & { popoutBtn?: boolean, src: string, tooltip?: string }} ImageLegendItem
|
35
35
|
* @property {boolean} [popoutBtn=false] - show a button in legend title to open legend in new tab
|
36
36
|
* @property {string} src - the source url. Can be an i18n string.
|
37
37
|
* @property {string} [tooltip] - Optional further explanation of the legend
|
38
38
|
*/
|
39
39
|
|
40
40
|
/**
|
41
|
-
* @typedef {LegendItem} IframeLegendItem
|
41
|
+
* @typedef {LegendItem & { popoutBtn?: boolean, src: string }} IframeLegendItem
|
42
42
|
* @property {boolean} [popoutBtn=false] - show a button in legend title to open legend in new tab
|
43
43
|
* @property {string} src - the source url. Can be an i18n string.
|
44
44
|
*/
|
45
45
|
|
46
46
|
/**
|
47
|
-
* @typedef {LegendItem} StyleLegendItem
|
47
|
+
* @typedef {LegendItem & { colNr?: number, rows: StyleLegendRow[] }} StyleLegendItem
|
48
48
|
* @property {number} [colNr=2] Number of columns. Valid values are 1 or 2. Per default 2.
|
49
49
|
* @property {Array<StyleLegendRow>} rows - style definitions with description
|
50
50
|
*/
|
@@ -57,40 +57,40 @@ export const StyleRowType = {
|
|
57
57
|
*/
|
58
58
|
|
59
59
|
/**
|
60
|
-
* @typedef {StyleLegendRow} StrokeLegendRow
|
61
|
-
* @property {import("ol/style/Stroke").Options} stroke
|
60
|
+
* @typedef {StyleLegendRow & { stroke: import("ol/style/Stroke.js").Options }} StrokeLegendRow
|
62
61
|
*/
|
63
62
|
|
64
63
|
/**
|
65
|
-
* @typedef {StyleLegendRow
|
66
|
-
*
|
67
|
-
*
|
64
|
+
* @typedef {StyleLegendRow & {
|
65
|
+
* fill: import("ol/style/Fill.js").Options,
|
66
|
+
* stroke?: import("ol/style/Stroke.js").Options
|
67
|
+
* }} FillLegendRow
|
68
68
|
*/
|
69
69
|
|
70
70
|
/**
|
71
|
-
* @typedef {StyleLegendRow} CircleLegendRow
|
72
|
-
* @property {import("ol/style/Circle").Options} image
|
71
|
+
* @typedef {StyleLegendRow & { image: import("ol/style/Circle.js").Options }} CircleLegendRow
|
73
72
|
*/
|
74
73
|
|
75
74
|
/**
|
76
|
-
* @typedef {StyleLegendRow} IconLegendRow
|
77
|
-
* @property {import("ol/style/Icon").Options} image
|
75
|
+
* @typedef {StyleLegendRow & { image: import("ol/style/Icon.js").Options }} IconLegendRow
|
78
76
|
*/
|
79
77
|
|
80
78
|
/**
|
81
|
-
* @typedef {StyleLegendRow} RegularShapeLegendRow
|
82
|
-
* @property {import("ol/style/RegularShape").Options} image
|
79
|
+
* @typedef {StyleLegendRow & { image: import("ol/style/RegularShape.js").Options }} RegularShapeLegendRow
|
83
80
|
*/
|
84
81
|
|
85
82
|
/**
|
86
|
-
* @typedef {StyleLegendRow
|
87
|
-
*
|
83
|
+
* @typedef {StyleLegendRow & {
|
84
|
+
* text: import("ol/style/Text.js").Options,
|
85
|
+
* label?: string,
|
86
|
+
* }} TextLegendRow
|
87
|
+
* @property {import("ol/style/Text.js").Options} text
|
88
88
|
* @property {string} [label='Text']
|
89
89
|
*/
|
90
90
|
|
91
91
|
/**
|
92
|
-
* @
|
93
|
-
* @
|
92
|
+
* @param {import("ol/style/Image.js").Options} image
|
93
|
+
* @returns {string}
|
94
94
|
*/
|
95
95
|
export function getImageSrcFromShape(image) {
|
96
96
|
if (image.src) {
|
@@ -107,7 +107,7 @@ export function getImageSrcFromShape(image) {
|
|
107
107
|
* @property {string} title - layer or entry name
|
108
108
|
* @property {boolean} [open=true] - panel state of entry
|
109
109
|
* @property {Array<LegendItem>} legend - legend properties
|
110
|
-
* @property {Array<VcsAction>} actions - popout actions
|
110
|
+
* @property {Array<import("../actions/actionHelper.js").VcsAction>} actions - popout actions
|
111
111
|
*/
|
112
112
|
|
113
113
|
/**
|
@@ -135,8 +135,8 @@ export function createLayerLegendEntry(key, title, legend) {
|
|
135
135
|
|
136
136
|
/**
|
137
137
|
*
|
138
|
-
* @param {
|
139
|
-
* @returns {{entries: import("vue").Ref<Array<LegendEntry>>, destroy:
|
138
|
+
* @param {import("../vcsUiApp.js").default} app
|
139
|
+
* @returns {{entries: import("vue").Ref<Array<LegendEntry>>, destroy: function():void }}
|
140
140
|
*/
|
141
141
|
export function getLegendEntries(app) {
|
142
142
|
/**
|
@@ -0,0 +1,106 @@
|
|
1
|
+
/**
|
2
|
+
* @param {number} weightA
|
3
|
+
* @param {number} weightB
|
4
|
+
* @returns {number}
|
5
|
+
*/
|
6
|
+
export function sortByWeight(weightA?: number, weightB?: number): number;
|
7
|
+
export default ButtonManager;
|
8
|
+
export type ButtonComponentOptions = {
|
9
|
+
/**
|
10
|
+
* Optional ID, If not provided an uuid will be generated.
|
11
|
+
*/
|
12
|
+
id?: string | undefined;
|
13
|
+
/**
|
14
|
+
* Action performed by button.
|
15
|
+
*/
|
16
|
+
action: import("../actions/actionHelper.js").VcsAction;
|
17
|
+
/**
|
18
|
+
* Optional weight affecting the displaying order
|
19
|
+
*/
|
20
|
+
weight?: number | undefined;
|
21
|
+
};
|
22
|
+
export type ButtonComponent = {
|
23
|
+
id: string;
|
24
|
+
owner: string | symbol;
|
25
|
+
action: import("../actions/actionHelper.js").VcsAction;
|
26
|
+
weight: number;
|
27
|
+
};
|
28
|
+
export type IButtonManager = import("../vcsUiApp.js").VcsComponentManager<ButtonComponent, ButtonComponentOptions>;
|
29
|
+
/**
|
30
|
+
* @typedef ButtonComponentOptions
|
31
|
+
* @property {string} [id] Optional ID, If not provided an uuid will be generated.
|
32
|
+
* @property {import("../actions/actionHelper.js").VcsAction} action Action performed by button.
|
33
|
+
* @property {number} [weight=0] Optional weight affecting the displaying order
|
34
|
+
*/
|
35
|
+
/**
|
36
|
+
* @typedef ButtonComponent
|
37
|
+
* @property {string} id
|
38
|
+
* @property {string|vcsAppSymbol} owner
|
39
|
+
* @property {import("../actions/actionHelper.js").VcsAction} action
|
40
|
+
* @property {number} weight
|
41
|
+
*/
|
42
|
+
/**
|
43
|
+
* @typedef {import("../vcsUiApp.js").VcsComponentManager<ButtonComponent,ButtonComponentOptions>} IButtonManager
|
44
|
+
*/
|
45
|
+
/**
|
46
|
+
* @class ButtonManager
|
47
|
+
* @description Manages a set of Map Buttons
|
48
|
+
* @implements {IButtonManager}
|
49
|
+
*/
|
50
|
+
declare class ButtonManager implements IButtonManager {
|
51
|
+
/**
|
52
|
+
* @type {import("@vcmap/core").VcsEvent<ButtonComponent>}
|
53
|
+
*/
|
54
|
+
added: import("@vcmap/core").VcsEvent<ButtonComponent>;
|
55
|
+
/**
|
56
|
+
* @type {import("@vcmap/core").VcsEvent<ButtonComponent>}
|
57
|
+
*/
|
58
|
+
removed: import("@vcmap/core").VcsEvent<ButtonComponent>;
|
59
|
+
/**
|
60
|
+
* reactive ordered array of ids,
|
61
|
+
* @type {Array<string>}
|
62
|
+
*/
|
63
|
+
componentIds: Array<string>;
|
64
|
+
/**
|
65
|
+
* @type {Map<string, ButtonComponent>}
|
66
|
+
* @private
|
67
|
+
*/
|
68
|
+
private _buttonComponents;
|
69
|
+
/**
|
70
|
+
* @param {string} id
|
71
|
+
* @returns {ButtonComponent}
|
72
|
+
*/
|
73
|
+
get(id: string): ButtonComponent;
|
74
|
+
/**
|
75
|
+
* @param {string} id
|
76
|
+
* @returns {boolean}
|
77
|
+
*/
|
78
|
+
has(id: string): boolean;
|
79
|
+
/**
|
80
|
+
* removes a button, Component will not be rendered anymore and will be destroyed. Add ButtonComponent again
|
81
|
+
* to show the component again
|
82
|
+
* @param {string} id
|
83
|
+
*/
|
84
|
+
remove(id: string): void;
|
85
|
+
/**
|
86
|
+
* adds a buttonComponent
|
87
|
+
* @param {ButtonComponentOptions} buttonComponentOptions
|
88
|
+
* @param {string|symbol} owner pluginName or vcsAppSymbol
|
89
|
+
* @throws {Error} if a buttonComponent with the same ID has already been added
|
90
|
+
* @returns {ButtonComponent}
|
91
|
+
*/
|
92
|
+
add(buttonComponentOptions: ButtonComponentOptions, owner: string | symbol): ButtonComponent;
|
93
|
+
/**
|
94
|
+
* removes all buttonComponents of a specific owner and fires removed Events
|
95
|
+
* @param {string|vcsAppSymbol} owner
|
96
|
+
*/
|
97
|
+
removeOwner(owner: string | symbol): void;
|
98
|
+
/**
|
99
|
+
* removes all buttonComponents and fires removed Events
|
100
|
+
*/
|
101
|
+
clear(): void;
|
102
|
+
/**
|
103
|
+
* destroys the ButtonManager;
|
104
|
+
*/
|
105
|
+
destroy(): void;
|
106
|
+
}
|
@@ -11,14 +11,14 @@ import { getActionFromOptions } from '../actions/actionHelper.js';
|
|
11
11
|
* @param {number} weightB
|
12
12
|
* @returns {number}
|
13
13
|
*/
|
14
|
-
export function sortByWeight(weightA, weightB) {
|
14
|
+
export function sortByWeight(weightA = 0, weightB = 0) {
|
15
15
|
return weightB - weightA;
|
16
16
|
}
|
17
17
|
|
18
18
|
/**
|
19
19
|
* @typedef ButtonComponentOptions
|
20
20
|
* @property {string} [id] Optional ID, If not provided an uuid will be generated.
|
21
|
-
* @property {VcsAction} action Action performed by button.
|
21
|
+
* @property {import("../actions/actionHelper.js").VcsAction} action Action performed by button.
|
22
22
|
* @property {number} [weight=0] Optional weight affecting the displaying order
|
23
23
|
*/
|
24
24
|
|
@@ -26,14 +26,18 @@ export function sortByWeight(weightA, weightB) {
|
|
26
26
|
* @typedef ButtonComponent
|
27
27
|
* @property {string} id
|
28
28
|
* @property {string|vcsAppSymbol} owner
|
29
|
-
* @property {VcsAction} action
|
29
|
+
* @property {import("../actions/actionHelper.js").VcsAction} action
|
30
30
|
* @property {number} weight
|
31
31
|
*/
|
32
32
|
|
33
|
+
/**
|
34
|
+
* @typedef {import("../vcsUiApp.js").VcsComponentManager<ButtonComponent,ButtonComponentOptions>} IButtonManager
|
35
|
+
*/
|
36
|
+
|
33
37
|
/**
|
34
38
|
* @class ButtonManager
|
35
39
|
* @description Manages a set of Map Buttons
|
36
|
-
* @implements
|
40
|
+
* @implements {IButtonManager}
|
37
41
|
*/
|
38
42
|
class ButtonManager {
|
39
43
|
constructor() {
|
@@ -3,11 +3,14 @@
|
|
3
3
|
<v-expansion-panel-header hide-actions class="px-2">
|
4
4
|
<template #default="{ open }">
|
5
5
|
<div class="d-flex justify-space-between">
|
6
|
-
<div class="d-flex align-center">
|
7
|
-
<v-icon
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
<div class="d-flex align-center gap-1">
|
7
|
+
<v-icon :class="{ rotate: !open }"> mdi-chevron-down </v-icon>
|
8
|
+
<span>
|
9
|
+
{{ $t(title) }}
|
10
|
+
</span>
|
11
|
+
<span v-if="selectable && selection.length > 0">
|
12
|
+
{{ `(${selection.length})` }}
|
13
|
+
</span>
|
11
14
|
</div>
|
12
15
|
<VcsActionButtonList
|
13
16
|
v-if="actions?.length > 0"
|
@@ -40,7 +43,7 @@
|
|
40
43
|
</template>
|
41
44
|
|
42
45
|
<script>
|
43
|
-
import { inject } from 'vue';
|
46
|
+
import { computed, inject } from 'vue';
|
44
47
|
import {
|
45
48
|
VIcon,
|
46
49
|
VExpansionPanel,
|
@@ -48,14 +51,12 @@
|
|
48
51
|
VExpansionPanelContent,
|
49
52
|
VSheet,
|
50
53
|
} from 'vuetify/lib';
|
51
|
-
import VcsList
|
54
|
+
import VcsList, {
|
55
|
+
createSelectionActions,
|
56
|
+
} from '../../components/lists/VcsList.vue';
|
52
57
|
import VcsActionButtonList from '../../components/buttons/VcsActionButtonList.vue';
|
53
58
|
import VcsButton from '../../components/buttons/VcsButton.vue';
|
54
|
-
import {
|
55
|
-
import { WindowSlot } from '../window/windowManager.js';
|
56
|
-
import CollectionComponentList, {
|
57
|
-
moveItem,
|
58
|
-
} from './CollectionComponentList.vue';
|
59
|
+
import { moveItem } from './CollectionComponentList.vue';
|
59
60
|
|
60
61
|
/**
|
61
62
|
* @description
|
@@ -74,14 +75,19 @@
|
|
74
75
|
VSheet,
|
75
76
|
VIcon,
|
76
77
|
},
|
77
|
-
setup() {
|
78
|
-
/** @type {VcsUiApp} */
|
79
|
-
const app = inject('vcsApp');
|
78
|
+
setup(_props, { emit }) {
|
80
79
|
/**
|
81
|
-
* @type {
|
80
|
+
* @type {CollectionComponentClass}
|
82
81
|
*/
|
83
82
|
const collectionComponent = inject('collectionComponent');
|
84
|
-
|
83
|
+
|
84
|
+
const selectionActions = createSelectionActions(
|
85
|
+
collectionComponent.items,
|
86
|
+
collectionComponent.selection,
|
87
|
+
emit,
|
88
|
+
);
|
89
|
+
|
90
|
+
const actions = collectionComponent.getActions();
|
85
91
|
|
86
92
|
return {
|
87
93
|
title: collectionComponent.title,
|
@@ -92,35 +98,20 @@
|
|
92
98
|
singleSelect: collectionComponent.singleSelect,
|
93
99
|
overflowCount: collectionComponent.overflowCount,
|
94
100
|
limit: collectionComponent.limit,
|
95
|
-
actions:
|
101
|
+
actions: computed(() => {
|
102
|
+
if (
|
103
|
+
collectionComponent.selectable.value &&
|
104
|
+
!collectionComponent.singleSelect.value
|
105
|
+
) {
|
106
|
+
return [...selectionActions, ...actions.value];
|
107
|
+
}
|
108
|
+
return actions.value;
|
109
|
+
}),
|
96
110
|
move({ item, targetIndex }) {
|
97
111
|
moveItem(collectionComponent, item, targetIndex);
|
98
112
|
},
|
99
113
|
openCollectionComponentList() {
|
100
|
-
|
101
|
-
setTimeout(() => {
|
102
|
-
app.windowManager.bringWindowToTop(windowId);
|
103
|
-
}, 0);
|
104
|
-
} else {
|
105
|
-
app.windowManager.add(
|
106
|
-
{
|
107
|
-
id: windowId,
|
108
|
-
component: CollectionComponentList,
|
109
|
-
props: {
|
110
|
-
windowId,
|
111
|
-
},
|
112
|
-
state: {
|
113
|
-
headerTitle: 'collectionManager.more',
|
114
|
-
headerIcon: '$vcsComponents',
|
115
|
-
},
|
116
|
-
provides: {
|
117
|
-
collectionComponent,
|
118
|
-
},
|
119
|
-
slot: WindowSlot.DYNAMIC_LEFT,
|
120
|
-
},
|
121
|
-
vcsAppSymbol,
|
122
|
-
);
|
123
|
-
}
|
114
|
+
emit('openList', collectionComponent.id);
|
124
115
|
},
|
125
116
|
};
|
126
117
|
},
|
@@ -139,6 +130,11 @@
|
|
139
130
|
.v-list-item {
|
140
131
|
padding: 4px 8px 4px 28px;
|
141
132
|
}
|
133
|
+
.v-list-item__selected {
|
134
|
+
border-left: solid 4px;
|
135
|
+
border-left-color: var(--v-primary-base);
|
136
|
+
padding-left: 24px !important;
|
137
|
+
}
|
142
138
|
}
|
143
139
|
}
|
144
140
|
</style>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {
|
2
|
+
title: any;
|
3
|
+
items: any;
|
4
|
+
selection: any;
|
5
|
+
draggable: any;
|
6
|
+
selectable: any;
|
7
|
+
singleSelect: any;
|
8
|
+
overflowCount: any;
|
9
|
+
limit: any;
|
10
|
+
actions: import("vue").ComputedRef<any>;
|
11
|
+
move({ item, targetIndex }: {
|
12
|
+
item: any;
|
13
|
+
targetIndex: any;
|
14
|
+
}): void;
|
15
|
+
openCollectionComponentList(): void;
|
16
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
17
|
+
export default _default;
|