@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
@@ -2,8 +2,13 @@
|
|
2
2
|
<div>
|
3
3
|
<div class="v-expansion-panel-header px-2 v-expansion-panel-header--active">
|
4
4
|
<div class="d-flex justify-space-between">
|
5
|
-
<div class="d-flex align-center">
|
6
|
-
|
5
|
+
<div class="d-flex align-center gap-1 pl-2">
|
6
|
+
<span>
|
7
|
+
{{ $t(title) }}
|
8
|
+
</span>
|
9
|
+
<span v-if="selectable && selection.length > 0">
|
10
|
+
{{ `(${selection.length})` }}
|
11
|
+
</span>
|
7
12
|
</div>
|
8
13
|
<VcsActionButtonList
|
9
14
|
v-if="actions?.length > 0"
|
@@ -21,21 +26,30 @@
|
|
21
26
|
:show-title="false"
|
22
27
|
@item-moved="move"
|
23
28
|
/>
|
29
|
+
<v-sheet v-if="showLessButton" class="ma-2 pl-2">
|
30
|
+
<VcsButton @click="closeList">
|
31
|
+
{{ $t('collectionManager.less') }}
|
32
|
+
</VcsButton>
|
33
|
+
</v-sheet>
|
24
34
|
</div>
|
25
35
|
</template>
|
26
36
|
|
27
37
|
<script>
|
28
|
-
import { inject } from 'vue';
|
38
|
+
import { computed, inject } from 'vue';
|
29
39
|
import { IndexedCollection } from '@vcmap/core';
|
30
|
-
import
|
40
|
+
import { VSheet } from 'vuetify/lib';
|
41
|
+
import VcsList, {
|
42
|
+
createSelectionActions,
|
43
|
+
} from '../../components/lists/VcsList.vue';
|
31
44
|
import VcsActionButtonList from '../../components/buttons/VcsActionButtonList.vue';
|
45
|
+
import VcsButton from '../../components/buttons/VcsButton.vue';
|
32
46
|
|
33
47
|
/**
|
34
48
|
* Moves an item to a new position.
|
35
49
|
* New position is derived from a target item in the collection.
|
36
50
|
* This ensures correct movement, if rendered list is only a subset of the collection.
|
37
|
-
* @param {
|
38
|
-
* @param {VcsListItem} item
|
51
|
+
* @param {import("./collectionComponentClass.js").default<Object>} collectionComponent
|
52
|
+
* @param {import("../../components/lists/VcsList.vue").VcsListItem} item
|
39
53
|
* @param {number} targetIndex
|
40
54
|
*/
|
41
55
|
export function moveItem(collectionComponent, item, targetIndex) {
|
@@ -45,7 +59,7 @@
|
|
45
59
|
const keyProperty = collection.uniqueKey;
|
46
60
|
const targetItem = collectionComponent.items.value[targetIndex];
|
47
61
|
const targetIndexCol = [...collection].findIndex(
|
48
|
-
(i) => i[keyProperty] === targetItem
|
62
|
+
(i) => i[keyProperty] === targetItem.name,
|
49
63
|
);
|
50
64
|
collection.moveTo(collectionItem, targetIndexCol);
|
51
65
|
}
|
@@ -53,28 +67,38 @@
|
|
53
67
|
|
54
68
|
/**
|
55
69
|
* @description
|
56
|
-
* Renders the items of a
|
70
|
+
* Renders the items of a CollectionComponentClass in a List.
|
57
71
|
* The collectionComponent must be passed via {@link https://vuejs.org/api/composition-api-dependency-injection.html |provide }.
|
58
|
-
* @vue-prop {string}
|
72
|
+
* @vue-prop {string} showLessButton - Show a `show less button` at the end of the list, which will emit a closeList event
|
59
73
|
*/
|
60
74
|
export default {
|
61
75
|
name: 'CollectionComponentList',
|
76
|
+
props: {
|
77
|
+
showLessButton: {
|
78
|
+
type: Boolean,
|
79
|
+
default: true,
|
80
|
+
},
|
81
|
+
},
|
62
82
|
components: {
|
83
|
+
VcsButton,
|
63
84
|
VcsActionButtonList,
|
64
85
|
VcsList,
|
86
|
+
VSheet,
|
65
87
|
},
|
66
|
-
|
67
|
-
windowId: {
|
68
|
-
type: String,
|
69
|
-
required: true,
|
70
|
-
},
|
71
|
-
},
|
72
|
-
setup() {
|
88
|
+
setup(_props, { emit }) {
|
73
89
|
/**
|
74
|
-
* @type {
|
90
|
+
* @type {import("./collectionComponentClass.js").CollectionComponentClass}
|
75
91
|
*/
|
76
92
|
const collectionComponent = inject('collectionComponent');
|
77
93
|
|
94
|
+
const selectionActions = createSelectionActions(
|
95
|
+
collectionComponent.items,
|
96
|
+
collectionComponent.selection,
|
97
|
+
emit,
|
98
|
+
);
|
99
|
+
|
100
|
+
const actions = collectionComponent.getActions();
|
101
|
+
|
78
102
|
return {
|
79
103
|
title: collectionComponent.title,
|
80
104
|
items: collectionComponent.items,
|
@@ -84,10 +108,21 @@
|
|
84
108
|
singleSelect: collectionComponent.singleSelect,
|
85
109
|
overflowCount: collectionComponent.overflowCount,
|
86
110
|
limit: collectionComponent.limit,
|
87
|
-
actions:
|
111
|
+
actions: computed(() => {
|
112
|
+
if (
|
113
|
+
collectionComponent.selectable.value &&
|
114
|
+
!collectionComponent.singleSelect.value
|
115
|
+
) {
|
116
|
+
return [...selectionActions, ...actions.value];
|
117
|
+
}
|
118
|
+
return actions.value;
|
119
|
+
}),
|
88
120
|
move({ item, targetIndex }) {
|
89
121
|
moveItem(collectionComponent, item, targetIndex);
|
90
122
|
},
|
123
|
+
closeList() {
|
124
|
+
emit('closeList', collectionComponent.id);
|
125
|
+
},
|
91
126
|
};
|
92
127
|
},
|
93
128
|
};
|
@@ -0,0 +1,38 @@
|
|
1
|
+
/**
|
2
|
+
* Moves an item to a new position.
|
3
|
+
* New position is derived from a target item in the collection.
|
4
|
+
* This ensures correct movement, if rendered list is only a subset of the collection.
|
5
|
+
* @param {import("./collectionComponentClass.js").default<Object>} collectionComponent
|
6
|
+
* @param {import("../../components/lists/VcsList.vue").VcsListItem} item
|
7
|
+
* @param {number} targetIndex
|
8
|
+
*/
|
9
|
+
export function moveItem(collectionComponent: import("./collectionComponentClass.js").default<Object>, item: import("../../components/lists/VcsList.vue").VcsListItem, targetIndex: number): void;
|
10
|
+
declare const _default: import("vue").DefineComponent<{
|
11
|
+
showLessButton: {
|
12
|
+
type: BooleanConstructor;
|
13
|
+
default: boolean;
|
14
|
+
};
|
15
|
+
}, {
|
16
|
+
title: any;
|
17
|
+
items: any;
|
18
|
+
selection: any;
|
19
|
+
draggable: any;
|
20
|
+
selectable: any;
|
21
|
+
singleSelect: any;
|
22
|
+
overflowCount: any;
|
23
|
+
limit: any;
|
24
|
+
actions: import("vue").ComputedRef<any>;
|
25
|
+
move({ item, targetIndex }: {
|
26
|
+
item: any;
|
27
|
+
targetIndex: any;
|
28
|
+
}): void;
|
29
|
+
closeList(): void;
|
30
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
31
|
+
showLessButton: {
|
32
|
+
type: BooleanConstructor;
|
33
|
+
default: boolean;
|
34
|
+
};
|
35
|
+
}>>, {
|
36
|
+
showLessButton: boolean;
|
37
|
+
}>;
|
38
|
+
export default _default;
|
@@ -11,7 +11,8 @@
|
|
11
11
|
import CollectionComponent from './CollectionComponent.vue';
|
12
12
|
|
13
13
|
/**
|
14
|
-
* @description Provides a
|
14
|
+
* @description Provides a CollectionComponentClass of a CollectionManager.
|
15
|
+
* Default rendering of the slot is the `CollectionComponent.vue`
|
15
16
|
* The collectionManager must be passed via {@link https://vuejs.org/api/composition-api-dependency-injection.html |provide }.
|
16
17
|
* @vue-prop {string} componentId - ID of the collectionComponent to be provided
|
17
18
|
* @vue-data {slot} [#default] - Slot rendering collection component.
|
@@ -29,7 +30,7 @@
|
|
29
30
|
},
|
30
31
|
setup(props) {
|
31
32
|
/**
|
32
|
-
* @type {CollectionManager}
|
33
|
+
* @type {import("./collectionManager.js").CollectionManager}
|
33
34
|
*/
|
34
35
|
const collectionManager = inject('collectionManager');
|
35
36
|
const collectionComponent = collectionManager.get(props.componentId);
|
@@ -0,0 +1,12 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{
|
2
|
+
componentId: {
|
3
|
+
type: StringConstructor;
|
4
|
+
required: true;
|
5
|
+
};
|
6
|
+
}, void, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
|
7
|
+
componentId: {
|
8
|
+
type: StringConstructor;
|
9
|
+
required: true;
|
10
|
+
};
|
11
|
+
}>>, {}>;
|
12
|
+
export default _default;
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<v-expansion-panels
|
4
4
|
accordion
|
5
5
|
multiple
|
6
|
-
v-if="componentIds.length > 0"
|
6
|
+
v-if="!componentView && componentIds.length > 0"
|
7
7
|
v-model="panels"
|
8
8
|
class="rounded-0"
|
9
9
|
>
|
@@ -11,8 +11,16 @@
|
|
11
11
|
v-for="componentId in componentIds"
|
12
12
|
:component-id="componentId"
|
13
13
|
:key="componentId"
|
14
|
-
|
14
|
+
>
|
15
|
+
<collection-component @openList="openList" />
|
16
|
+
</collection-component-provider>
|
15
17
|
</v-expansion-panels>
|
18
|
+
<collection-component-provider
|
19
|
+
v-if="componentView"
|
20
|
+
:component-id="componentView"
|
21
|
+
>
|
22
|
+
<collection-component-list @closeList="closeList" />
|
23
|
+
</collection-component-provider>
|
16
24
|
</v-container>
|
17
25
|
</template>
|
18
26
|
|
@@ -20,6 +28,8 @@
|
|
20
28
|
import { computed, inject, ref } from 'vue';
|
21
29
|
import { VExpansionPanels, VContainer } from 'vuetify/lib';
|
22
30
|
import CollectionComponentProvider from './CollectionComponentProvider.vue';
|
31
|
+
import CollectionComponentList from './CollectionComponentList.vue';
|
32
|
+
import CollectionComponent from './CollectionComponent.vue';
|
23
33
|
|
24
34
|
/**
|
25
35
|
* @description Renders the all managed CollectionComponents of a CollectionManager.
|
@@ -28,16 +38,24 @@
|
|
28
38
|
export default {
|
29
39
|
name: 'CollectionManager',
|
30
40
|
components: {
|
41
|
+
CollectionComponentList,
|
31
42
|
VExpansionPanels,
|
32
43
|
VContainer,
|
33
44
|
CollectionComponentProvider,
|
45
|
+
CollectionComponent,
|
34
46
|
},
|
35
47
|
setup() {
|
48
|
+
/**
|
49
|
+
* @type {import("./collectionManager.js").CollectionManager}
|
50
|
+
*/
|
36
51
|
const collectionManager = inject('collectionManager');
|
37
52
|
const componentIds = ref(collectionManager.componentIds);
|
38
|
-
|
39
53
|
/**
|
40
|
-
* @type {
|
54
|
+
* @type {import("vue").Ref<string|null>}
|
55
|
+
*/
|
56
|
+
const componentView = ref(null);
|
57
|
+
/**
|
58
|
+
* @type {import("vue").WritableComputedRef<number[]>}
|
41
59
|
*/
|
42
60
|
const panels = computed({
|
43
61
|
get() {
|
@@ -56,6 +74,13 @@
|
|
56
74
|
return {
|
57
75
|
componentIds,
|
58
76
|
panels,
|
77
|
+
componentView,
|
78
|
+
openList(id) {
|
79
|
+
componentView.value = id;
|
80
|
+
},
|
81
|
+
closeList() {
|
82
|
+
componentView.value = null;
|
83
|
+
},
|
59
84
|
};
|
60
85
|
},
|
61
86
|
};
|
@@ -0,0 +1,8 @@
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {
|
2
|
+
componentIds: any;
|
3
|
+
panels: import("vue").WritableComputedRef<number[]>;
|
4
|
+
componentView: import("vue").Ref<string | null>;
|
5
|
+
openList(id: any): void;
|
6
|
+
closeList(): void;
|
7
|
+
}, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
8
|
+
export default _default;
|
@@ -0,0 +1,56 @@
|
|
1
|
+
export default CategoryManager;
|
2
|
+
export type ICategoryManager = import("../../vcsUiApp.js").VcsComponentManager<import("./collectionComponentClass.js").default<Object>, import("./collectionComponentClass.js").CollectionComponentClassOptions<Object>>;
|
3
|
+
/**
|
4
|
+
* @typedef {import("../../vcsUiApp.js").VcsComponentManager<import("./collectionComponentClass.js").default<Object>, import("./collectionComponentClass.js").CollectionComponentClassOptions<Object>>} ICategoryManager
|
5
|
+
*/
|
6
|
+
/**
|
7
|
+
* Manages all requested category collections.
|
8
|
+
* Provides an API to add/remove collectionsComponents.
|
9
|
+
* @implements {ICategoryManager}
|
10
|
+
* @extends CollectionManager
|
11
|
+
*/
|
12
|
+
declare class CategoryManager extends CollectionManager implements ICategoryManager {
|
13
|
+
/**
|
14
|
+
* @param {import("../../vcsUiApp.js").default} app
|
15
|
+
*/
|
16
|
+
/**
|
17
|
+
* @param {import("../../vcsUiApp.js").default} app
|
18
|
+
*/
|
19
|
+
constructor(app: import("../../vcsUiApp.js").default);
|
20
|
+
/**
|
21
|
+
* @type {import("../../vcsUiApp.js").default}
|
22
|
+
* @private
|
23
|
+
*/
|
24
|
+
private _app;
|
25
|
+
/**
|
26
|
+
* @type {string}
|
27
|
+
* @private
|
28
|
+
*/
|
29
|
+
private _dynamicModuleId;
|
30
|
+
/**
|
31
|
+
* @param {Object} item
|
32
|
+
* @return {boolean}
|
33
|
+
* @private
|
34
|
+
*/
|
35
|
+
private _dynamicModuleIdFilter;
|
36
|
+
/**
|
37
|
+
* @type {(() => void)[]}
|
38
|
+
* @private
|
39
|
+
*/
|
40
|
+
private _categoryListeners;
|
41
|
+
/**
|
42
|
+
* Requests a new or existing category and adds its collection to this manager.
|
43
|
+
* The collectionComponent's id is always the category's name.
|
44
|
+
* Returns requested category and its corresponding collectionComponent.
|
45
|
+
* @param {import("@vcmap/core").CategoryOptions<T>} options
|
46
|
+
* @param {string|symbol} owner
|
47
|
+
* @param {import("./collectionComponentClass.js").CollectionComponentUiOptions} collectionComponentOptions
|
48
|
+
* @returns {Promise<{ collectionComponent: import("./collectionComponentClass.js").default<T>, category: import("@vcmap/core").Category<T> }>}
|
49
|
+
* @template {Object|import("@vcmap/core").VcsObject} T
|
50
|
+
*/
|
51
|
+
requestCategory<T extends Object | import("@vcmap/core/dist/src/vcsObject.js").default>(options: import("@vcmap/core").CategoryOptions<T>, owner: string | symbol, collectionComponentOptions?: import("./collectionComponentClass.js").CollectionComponentUiOptions): Promise<{
|
52
|
+
collectionComponent: import("./collectionComponentClass.js").default<T>;
|
53
|
+
category: import("@vcmap/core/dist/src/category/category.js").default<T>;
|
54
|
+
}>;
|
55
|
+
}
|
56
|
+
import CollectionManager from './collectionManager.js';
|
@@ -2,24 +2,28 @@ import { moduleIdSymbol } from '@vcmap/core';
|
|
2
2
|
import { vcsAppSymbol } from '../../pluginHelper.js';
|
3
3
|
import CollectionManager from './collectionManager.js';
|
4
4
|
|
5
|
+
/**
|
6
|
+
* @typedef {import("../../vcsUiApp.js").VcsComponentManager<import("./collectionComponentClass.js").default<Object>, import("./collectionComponentClass.js").CollectionComponentClassOptions<Object>>} ICategoryManager
|
7
|
+
*/
|
8
|
+
|
5
9
|
/**
|
6
10
|
* Manages all requested category collections.
|
7
11
|
* Provides an API to add/remove collectionsComponents.
|
8
|
-
* @implements {
|
12
|
+
* @implements {ICategoryManager}
|
9
13
|
* @extends CollectionManager
|
10
14
|
*/
|
11
15
|
class CategoryManager extends CollectionManager {
|
12
16
|
/**
|
13
|
-
* @param {import("
|
17
|
+
* @param {import("../../vcsUiApp.js").default} app
|
14
18
|
*/
|
15
19
|
/**
|
16
|
-
* @param {import("
|
20
|
+
* @param {import("../../vcsUiApp.js").default} app
|
17
21
|
*/
|
18
22
|
constructor(app) {
|
19
23
|
super();
|
20
24
|
|
21
25
|
/**
|
22
|
-
* @type {import("
|
26
|
+
* @type {import("../../vcsUiApp.js").default}
|
23
27
|
* @private
|
24
28
|
*/
|
25
29
|
this._app = app;
|
@@ -29,11 +33,20 @@ class CategoryManager extends CollectionManager {
|
|
29
33
|
*/
|
30
34
|
this._dynamicModuleId = this._app.dynamicModuleId;
|
31
35
|
|
36
|
+
/**
|
37
|
+
* @param {Object} item
|
38
|
+
* @return {boolean}
|
39
|
+
* @private
|
40
|
+
*/
|
32
41
|
this._dynamicModuleIdFilter = (item) =>
|
33
42
|
item[moduleIdSymbol] === this._dynamicModuleId;
|
34
43
|
|
35
44
|
this.addFilterFunction(this._dynamicModuleIdFilter, vcsAppSymbol);
|
36
45
|
|
46
|
+
/**
|
47
|
+
* @type {(() => void)[]}
|
48
|
+
* @private
|
49
|
+
*/
|
37
50
|
this._categoryListeners = [
|
38
51
|
this._app.dynamicModuleIdChanged.addEventListener((id) => {
|
39
52
|
this._dynamicModuleId = id;
|
@@ -50,10 +63,11 @@ class CategoryManager extends CollectionManager {
|
|
50
63
|
* Requests a new or existing category and adds its collection to this manager.
|
51
64
|
* The collectionComponent's id is always the category's name.
|
52
65
|
* Returns requested category and its corresponding collectionComponent.
|
53
|
-
* @param {import("@vcmap/core").CategoryOptions} options
|
66
|
+
* @param {import("@vcmap/core").CategoryOptions<T>} options
|
54
67
|
* @param {string|symbol} owner
|
55
|
-
* @param {CollectionComponentUiOptions} collectionComponentOptions
|
56
|
-
* @
|
68
|
+
* @param {import("./collectionComponentClass.js").CollectionComponentUiOptions} collectionComponentOptions
|
69
|
+
* @returns {Promise<{ collectionComponent: import("./collectionComponentClass.js").default<T>, category: import("@vcmap/core").Category<T> }>}
|
70
|
+
* @template {Object|import("@vcmap/core").VcsObject} T
|
57
71
|
*/
|
58
72
|
async requestCategory(options, owner, collectionComponentOptions = {}) {
|
59
73
|
const category = await this._app.categories.requestCategory(options);
|
@@ -0,0 +1,257 @@
|
|
1
|
+
export default CollectionComponentClass;
|
2
|
+
export type CollectionComponentUiOptions = {
|
3
|
+
id?: string | undefined;
|
4
|
+
title?: string | undefined;
|
5
|
+
/**
|
6
|
+
* - only supported for IndexedCollections
|
7
|
+
*/
|
8
|
+
draggable?: boolean | undefined;
|
9
|
+
/**
|
10
|
+
* - adds actions to rename items from list. Sets a default titleChanged callback on all list items, which can be overwritten in the mapping function, if necessary.
|
11
|
+
*/
|
12
|
+
renamable?: boolean | undefined;
|
13
|
+
/**
|
14
|
+
* - adds actions to remove items from list. Also adds a header action to delete selected, if selectable is set to true.
|
15
|
+
*/
|
16
|
+
removable?: boolean | undefined;
|
17
|
+
selectable?: boolean | undefined;
|
18
|
+
singleSelect?: boolean | undefined;
|
19
|
+
/**
|
20
|
+
* - number of header action buttons rendered until overflow
|
21
|
+
*/
|
22
|
+
overflowCount?: number | undefined;
|
23
|
+
/**
|
24
|
+
* - limit number of items in rendered list (more items are rendered in extra window)
|
25
|
+
*/
|
26
|
+
limit?: number | undefined;
|
27
|
+
};
|
28
|
+
export type CollectionComponentClassOptions<T extends Object> = CollectionComponentUiOptions & {
|
29
|
+
collection: import("@vcmap/core").Collection<T>;
|
30
|
+
};
|
31
|
+
export type CollectionComponentListItem = import("../../components/lists/VcsList.vue").VcsListItem & {
|
32
|
+
actions: Array<import("../../actions/actionHelper.js").VcsAction & {
|
33
|
+
weight?: number;
|
34
|
+
}>;
|
35
|
+
clickedCallbacks: Array<(arg0: PointerEvent) => void>;
|
36
|
+
destroy: () => void | undefined;
|
37
|
+
destroyFunctions: Array<() => void>;
|
38
|
+
};
|
39
|
+
/**
|
40
|
+
* Manages one collection and creates a mirrored items array with ListItems.
|
41
|
+
* Listens to all collection events and synchronizes changes to the items array.
|
42
|
+
* The Collection Items will be transformed and filtered with the given itemMappings and itemFilter functions
|
43
|
+
* @class
|
44
|
+
* @template {Object|import("@vcmap/core").VcsObject} T
|
45
|
+
*/
|
46
|
+
declare class CollectionComponentClass<T extends Object | import("@vcmap/core/dist/src/vcsObject.js").default> {
|
47
|
+
/**
|
48
|
+
* @param {CollectionComponentClassOptions<T>} options
|
49
|
+
* @param {string|import("../../pluginHelper.js").vcsAppSymbol} owner
|
50
|
+
*/
|
51
|
+
constructor(options: CollectionComponentClassOptions<T>, owner: string | symbol);
|
52
|
+
/**
|
53
|
+
* @type {import("@vcmap/core").Collection<T>}
|
54
|
+
* @private
|
55
|
+
*/
|
56
|
+
private _collection;
|
57
|
+
/**
|
58
|
+
* @type {string}
|
59
|
+
* @private
|
60
|
+
*/
|
61
|
+
private _id;
|
62
|
+
/**
|
63
|
+
* @type {import("vue").Ref<string>}
|
64
|
+
*/
|
65
|
+
title: import("vue").Ref<string>;
|
66
|
+
/**
|
67
|
+
* @type {import("vue").Ref<boolean>}
|
68
|
+
*/
|
69
|
+
open: import("vue").Ref<boolean>;
|
70
|
+
/**
|
71
|
+
*
|
72
|
+
* @type {import("vue").Ref<number>}
|
73
|
+
*/
|
74
|
+
overflowCount: import("vue").Ref<number>;
|
75
|
+
/**
|
76
|
+
*
|
77
|
+
* @type {import("vue").Ref<number>}
|
78
|
+
*/
|
79
|
+
limit: import("vue").Ref<number>;
|
80
|
+
/**
|
81
|
+
* @type {import("vue").Ref<boolean>}
|
82
|
+
* @private
|
83
|
+
*/
|
84
|
+
private _draggable;
|
85
|
+
/**
|
86
|
+
* @type {import("vue").Ref<boolean>}
|
87
|
+
*/
|
88
|
+
renamable: import("vue").Ref<boolean>;
|
89
|
+
/**
|
90
|
+
* @type {import("vue").Ref<boolean>}
|
91
|
+
*/
|
92
|
+
removable: import("vue").Ref<boolean>;
|
93
|
+
/**
|
94
|
+
* @type {import("vue").Ref<boolean>}
|
95
|
+
*/
|
96
|
+
selectable: import("vue").Ref<boolean>;
|
97
|
+
/**
|
98
|
+
* @type {import("vue").Ref<boolean>}
|
99
|
+
*/
|
100
|
+
singleSelect: import("vue").Ref<boolean>;
|
101
|
+
/**
|
102
|
+
* @type {string|vcsAppSymbol}
|
103
|
+
* @private
|
104
|
+
*/
|
105
|
+
private _owner;
|
106
|
+
/**
|
107
|
+
* @type {import("vue").Ref<Array<import("./collectionManager.js").OwnedAction>>}
|
108
|
+
*/
|
109
|
+
_actions: import("vue").Ref<Array<import("./collectionManager.js").OwnedAction>>;
|
110
|
+
/**
|
111
|
+
* @type {Array<import("./collectionManager.js").ItemMapping<T>>}
|
112
|
+
* @private
|
113
|
+
*/
|
114
|
+
private _itemMappings;
|
115
|
+
/**
|
116
|
+
* @type {Array<import("./collectionManager.js").ItemFilter<T>>}
|
117
|
+
* @private
|
118
|
+
*/
|
119
|
+
private _itemFilters;
|
120
|
+
/**
|
121
|
+
* @type {import("vue").Ref<Array<CollectionComponentListItem>>}
|
122
|
+
* @private
|
123
|
+
*/
|
124
|
+
private _listItems;
|
125
|
+
/**
|
126
|
+
* @type {import("vue").Ref<Array<CollectionComponentListItem>>}
|
127
|
+
*/
|
128
|
+
selection: import("vue").Ref<Array<CollectionComponentListItem>>;
|
129
|
+
_resetWatchers: import("vue").WatchStopHandle[];
|
130
|
+
_destroyBulkDelete: () => void;
|
131
|
+
_listeners: (() => void)[];
|
132
|
+
/**
|
133
|
+
* @type {string}
|
134
|
+
*/
|
135
|
+
get id(): string;
|
136
|
+
/**
|
137
|
+
* @type {import("@vcmap/core").Collection<T>}
|
138
|
+
*/
|
139
|
+
get collection(): import("@vcmap/core/dist/src/util/collection.js").default<T>;
|
140
|
+
/**
|
141
|
+
* @type {import("vue").Ref<Array<CollectionComponentListItem>>}
|
142
|
+
*/
|
143
|
+
get items(): import("vue").Ref<CollectionComponentListItem[]>;
|
144
|
+
/**
|
145
|
+
* @param {boolean} value
|
146
|
+
* @deprecated
|
147
|
+
*/
|
148
|
+
set draggable(arg: import("vue").Ref<boolean>);
|
149
|
+
/**
|
150
|
+
* @type {import("vue").Ref<boolean>}
|
151
|
+
*/
|
152
|
+
get draggable(): import("vue").Ref<boolean>;
|
153
|
+
/**
|
154
|
+
* @type {string|import("../../pluginHelper.js").vcsAppSymbol}
|
155
|
+
*/
|
156
|
+
get owner(): string | symbol;
|
157
|
+
/**
|
158
|
+
* @returns {import("vue").ComputedRef<import("../../actions/actionHelper.js").VcsAction[]>}
|
159
|
+
*/
|
160
|
+
getActions(): import("vue").ComputedRef<import("../../actions/actionHelper.js").VcsAction[]>;
|
161
|
+
/**
|
162
|
+
* @private
|
163
|
+
*/
|
164
|
+
private _addBulkDeleteAction;
|
165
|
+
/**
|
166
|
+
* @private
|
167
|
+
*/
|
168
|
+
private _removeBulkDeleteAction;
|
169
|
+
/**
|
170
|
+
* uses the itemMappings to transform the given Item to an CollectionComponentListItem usable in the VcsList
|
171
|
+
* @param {T} item
|
172
|
+
* @returns {CollectionComponentListItem}
|
173
|
+
* @template T
|
174
|
+
* @private
|
175
|
+
*/
|
176
|
+
private _transformItem;
|
177
|
+
/**
|
178
|
+
* Inserts the listItem into the list items array at the correct relative position in respect to the position of the listItem
|
179
|
+
* in the collection
|
180
|
+
* @param {CollectionComponentListItem} listItem
|
181
|
+
* @private
|
182
|
+
*/
|
183
|
+
private _insertListItem;
|
184
|
+
/**
|
185
|
+
* synchronizes the collection items with the internal items list.
|
186
|
+
* @param {T} item
|
187
|
+
* @template T
|
188
|
+
* @private
|
189
|
+
*/
|
190
|
+
private _handleItemAdded;
|
191
|
+
/**
|
192
|
+
* synchronizes the collection items with the internal items list by preserving previous selection
|
193
|
+
* @param {import("@vcmap/core").ReplacedEvent<T>} replaced
|
194
|
+
* @private
|
195
|
+
*/
|
196
|
+
private _handleItemReplaced;
|
197
|
+
/**
|
198
|
+
* synchronizes the order of the list items with respect to the order of the items in the collection.
|
199
|
+
* removes and reinserts the moved item.
|
200
|
+
* @param {T} item
|
201
|
+
* @template T
|
202
|
+
* @private
|
203
|
+
*/
|
204
|
+
private _handleItemMoved;
|
205
|
+
/**
|
206
|
+
* synchronizes the collection items with the internal list items.
|
207
|
+
* @param {T} item
|
208
|
+
* @template T
|
209
|
+
* @private
|
210
|
+
*/
|
211
|
+
private _handleItemRemoved;
|
212
|
+
/**
|
213
|
+
* @param {T} item
|
214
|
+
* @template T
|
215
|
+
* @returns {CollectionComponentListItem|undefined}
|
216
|
+
*/
|
217
|
+
getListItemForItem<T_1>(item: T_1): CollectionComponentListItem | undefined;
|
218
|
+
/**
|
219
|
+
* recreates the items array with the new Mapping Function
|
220
|
+
* @param {import("./collectionManager.js").ItemMapping<T>} itemMapping
|
221
|
+
*/
|
222
|
+
addItemMapping(itemMapping: import("./collectionManager.js").ItemMapping<T>): void;
|
223
|
+
/**
|
224
|
+
* recreates the items array with the new Mapping Function
|
225
|
+
* @param {import("./collectionManager.js").ItemMapping<T>} itemMapping
|
226
|
+
*/
|
227
|
+
removeItemMapping(itemMapping: import("./collectionManager.js").ItemMapping<T>): void;
|
228
|
+
/**
|
229
|
+
* recreates the items array with the new Filter Function
|
230
|
+
* @param {import("./collectionManager.js").ItemFilter<T>} itemFilter
|
231
|
+
*/
|
232
|
+
addItemFilter(itemFilter: import("./collectionManager.js").ItemFilter<T>): void;
|
233
|
+
/**
|
234
|
+
* recreates the items array with the new Filter Function
|
235
|
+
* @param {import("./collectionManager.js").ItemFilter<T>} itemFilter
|
236
|
+
*/
|
237
|
+
removeItemFilter(itemFilter: import("./collectionManager.js").ItemFilter<T>): void;
|
238
|
+
/**
|
239
|
+
* @param {Array<import("./collectionManager.js").OwnedAction>} ownedActions
|
240
|
+
*/
|
241
|
+
addActions(ownedActions: Array<import("./collectionManager.js").OwnedAction>): void;
|
242
|
+
/**
|
243
|
+
* @param {Array<import("./collectionManager.js").OwnedAction>} ownedActions
|
244
|
+
*/
|
245
|
+
removeActions(ownedActions: Array<import("./collectionManager.js").OwnedAction>): void;
|
246
|
+
/**
|
247
|
+
* removes itemMapping, itemFilter and actions of provided owner and resets all list items
|
248
|
+
* @param {string | symbol} owner
|
249
|
+
*/
|
250
|
+
removeOwner(owner: string | symbol): void;
|
251
|
+
/**
|
252
|
+
* resets this collection component by destroying all list items and
|
253
|
+
* re-adding them from the collection applying current filter and mapping functions
|
254
|
+
*/
|
255
|
+
reset(): void;
|
256
|
+
destroy(): void;
|
257
|
+
}
|