@vcmap/ui 6.0.0-rc.5 → 6.0.0-rc.7
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/build/buildTypes.js +9 -5
- package/config/base.config.json +8 -8
- package/config/dev.config.json +4 -0
- package/config/projects.config.json +2 -1
- package/config/theming.config.json +68 -0
- package/config/www.config.json +31 -30
- package/dist/assets/cesium/Workers/{chunk-LUYI3XCB.js → chunk-2LOWCAMW.js} +13 -13
- package/dist/assets/cesium/Workers/{chunk-V7WJDCPA.js → chunk-2PTKXHJB.js} +10 -10
- package/dist/assets/cesium/Workers/{chunk-YFVI4SQI.js → chunk-3HQMMUPU.js} +1 -1
- package/dist/assets/cesium/Workers/{chunk-XGI4FRXF.js → chunk-3IFRSGEY.js} +9 -9
- package/dist/assets/cesium/Workers/{chunk-4RJH3H6D.js → chunk-44QAAS4P.js} +7 -7
- package/dist/assets/cesium/Workers/{chunk-4EW3HFFI.js → chunk-56EDBCGT.js} +10 -10
- package/dist/assets/cesium/Workers/{chunk-PRKEY4QK.js → chunk-57H6I3SV.js} +5 -5
- package/dist/assets/cesium/Workers/{chunk-X67EJ6X6.js → chunk-6SQMLVGV.js} +54 -7
- package/dist/assets/cesium/Workers/{chunk-RRLGJV3Q.js → chunk-7YIOHQWH.js} +13 -13
- package/dist/assets/cesium/Workers/{chunk-G6346EDR.js → chunk-7ZZ5LMZY.js} +16 -15
- package/dist/assets/cesium/Workers/{chunk-YFYPR4MW.js → chunk-BVKITG4N.js} +7 -7
- package/dist/assets/cesium/Workers/{chunk-N5MIFVXJ.js → chunk-C3EQ27WF.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-TLGODPEV.js → chunk-C4WPMOKT.js} +6 -5
- package/dist/assets/cesium/Workers/{chunk-DTACCQDR.js → chunk-EDLRS3AW.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-EVU2UNBD.js → chunk-EJVGYGLF.js} +7 -7
- package/dist/assets/cesium/Workers/{chunk-FYYT5EVH.js → chunk-FFLMY4TE.js} +5 -5
- package/dist/assets/cesium/Workers/{chunk-5OUTANXX.js → chunk-GBT7MJ6X.js} +1 -1
- package/dist/assets/cesium/Workers/{chunk-3DRPXHZ4.js → chunk-HJMNR3GC.js} +11 -11
- package/dist/assets/cesium/Workers/{chunk-IALQGTA2.js → chunk-HP5XLODI.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-DR7LK6PG.js → chunk-IBRIWOCM.js} +13 -13
- package/dist/assets/cesium/Workers/{chunk-WMVCLETM.js → chunk-IZGUQO6Q.js} +13 -13
- package/dist/assets/cesium/Workers/{chunk-T6TZXGG5.js → chunk-IZJ42N4W.js} +17 -17
- package/dist/assets/cesium/Workers/{chunk-FZDKIUDT.js → chunk-JBSKHTNX.js} +4 -4
- package/dist/assets/cesium/Workers/{chunk-S4VTLNAJ.js → chunk-JISPSEF3.js} +4 -4
- package/dist/assets/cesium/Workers/{chunk-KNMGSIIN.js → chunk-JSQJDZI4.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-LMTN7R7M.js → chunk-JXVLNVXC.js} +7 -7
- package/dist/assets/cesium/Workers/{chunk-A5C2A5O5.js → chunk-KHZNBFOH.js} +7 -7
- package/dist/assets/cesium/Workers/{chunk-PIOKSAZH.js → chunk-L5GODJAR.js} +14 -14
- package/dist/assets/cesium/Workers/{chunk-Q7PM4W34.js → chunk-LJ2JQHJT.js} +12 -7
- package/dist/assets/cesium/Workers/{chunk-D6PDWQXW.js → chunk-LLAF3CPH.js} +2 -2
- package/dist/assets/cesium/Workers/{chunk-H7PSTL64.js → chunk-M24KHENR.js} +2 -2
- package/dist/assets/cesium/Workers/{chunk-I67V66MN.js → chunk-NDDI2LWR.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-FSXNF76Y.js → chunk-NGZJIN5Z.js} +4 -4
- package/dist/assets/cesium/Workers/{chunk-UMX265HW.js → chunk-O72GZTSE.js} +2 -2
- package/dist/assets/cesium/Workers/{chunk-WOA6WSHH.js → chunk-OPP2SKMA.js} +12 -12
- package/dist/assets/cesium/Workers/{chunk-VD6G7UPU.js → chunk-P6TRGU3S.js} +2 -2
- package/dist/assets/cesium/Workers/{chunk-QLC66ZRL.js → chunk-QN6TBED4.js} +11 -11
- package/dist/assets/cesium/Workers/{chunk-O7OUBDMZ.js → chunk-QQOZO7KO.js} +7 -7
- package/dist/assets/cesium/Workers/{chunk-AGTH5JMJ.js → chunk-RJM36CNY.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-UC566ISB.js → chunk-RTJKHZWU.js} +6 -6
- package/dist/assets/cesium/Workers/{chunk-L4XQPD6P.js → chunk-TI3TRKIC.js} +423 -448
- package/dist/assets/cesium/Workers/{chunk-3GI7DWF7.js → chunk-TK5IIG2F.js} +4 -4
- package/dist/assets/cesium/Workers/{chunk-6DH5PLFD.js → chunk-U5HSOKPQ.js} +1 -1
- package/dist/assets/cesium/Workers/{chunk-BPY4HDAK.js → chunk-WGDFYAGC.js} +4 -4
- package/dist/assets/cesium/Workers/{chunk-SJC5PRDX.js → chunk-X7IQYYHF.js} +2 -2
- package/dist/assets/cesium/Workers/{chunk-4OX4RYLB.js → chunk-XIUSRWL6.js} +9 -5
- package/dist/assets/cesium/Workers/{chunk-S2UEXF6T.js → chunk-XWOUPGUF.js} +1 -1
- package/dist/assets/cesium/Workers/{chunk-F7IEM66T.js → chunk-YCDZX5LS.js} +1 -1
- package/dist/assets/cesium/Workers/{chunk-AVFIYUKX.js → chunk-YK3QIKY7.js} +9 -9
- package/dist/assets/cesium/Workers/{chunk-BAJAVGUF.js → chunk-YSIJTJ7N.js} +5 -5
- package/dist/assets/cesium/Workers/{chunk-6DXIYFX3.js → chunk-Z2QP3CXW.js} +2 -2
- package/dist/assets/cesium/Workers/{chunk-P24I5VUS.js → chunk-ZVUUPJEM.js} +17 -17
- package/dist/assets/cesium/Workers/combineGeometry.js +22 -22
- package/dist/assets/cesium/Workers/createBoxGeometry.js +16 -16
- package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +14 -14
- package/dist/assets/cesium/Workers/createCircleGeometry.js +24 -24
- package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +17 -17
- package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +31 -31
- package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +29 -29
- package/dist/assets/cesium/Workers/createCorridorGeometry.js +27 -27
- package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +26 -26
- package/dist/assets/cesium/Workers/createCylinderGeometry.js +18 -18
- package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +16 -16
- package/dist/assets/cesium/Workers/createEllipseGeometry.js +24 -24
- package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +17 -17
- package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +17 -17
- package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +16 -16
- package/dist/assets/cesium/Workers/createFrustumGeometry.js +16 -16
- package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +16 -16
- package/dist/assets/cesium/Workers/createGeometry.js +22 -22
- package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +20 -20
- package/dist/assets/cesium/Workers/createPlaneGeometry.js +14 -14
- package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +13 -13
- package/dist/assets/cesium/Workers/createPolygonGeometry.js +30 -30
- package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +28 -28
- package/dist/assets/cesium/Workers/createPolylineGeometry.js +23 -23
- package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +29 -29
- package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +25 -25
- package/dist/assets/cesium/Workers/createRectangleGeometry.js +25 -25
- package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +18 -18
- package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +21 -21
- package/dist/assets/cesium/Workers/createSphereGeometry.js +17 -17
- package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +16 -16
- package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +3 -3
- package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +13 -13
- package/dist/assets/cesium/Workers/createVectorTileGeometries.js +22 -22
- package/dist/assets/cesium/Workers/createVectorTilePoints.js +12 -12
- package/dist/assets/cesium/Workers/createVectorTilePolygons.js +20 -20
- package/dist/assets/cesium/Workers/createVectorTilePolylines.js +13 -13
- package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -20
- package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +24 -20
- package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -17
- package/dist/assets/cesium/Workers/createWallGeometry.js +22 -22
- package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +21 -21
- package/dist/assets/cesium/Workers/decodeDraco.js +11 -11
- package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +28 -5
- package/dist/assets/cesium/Workers/decodeI3S.js +10 -10
- package/dist/assets/cesium/Workers/transcodeKTX2.js +19 -18
- package/dist/assets/cesium/Workers/transferTypedArrayTest.js +1 -1
- package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +20 -20
- package/dist/assets/{cesium-126f111a.js → cesium-2afc3568.js} +136600 -136700
- package/dist/assets/cesium.js +1 -1
- package/dist/assets/{core-1c8b8674.js → core-3fd82bc2.js} +8384 -7554
- package/dist/assets/core.js +1 -1
- package/dist/assets/{ol-27f9b3f3.js → ol-edf7bfb3.js} +2246 -2248
- package/dist/assets/ol.js +1 -1
- package/dist/assets/ui-c6eb55a5.css +1 -0
- package/dist/assets/{ui-7214428e.js → ui-c6eb55a5.js} +8687 -8464
- package/dist/assets/ui.js +1 -1
- package/dist/assets/vue.js +1 -1
- package/dist/assets/{vuetify-88a2fabe.css → vuetify-c3b6c9b3.css} +1 -1
- package/dist/assets/{vuetify-88a2fabe.js → vuetify-c3b6c9b3.js} +2375 -2369
- package/dist/assets/vuetify.js +1 -1
- package/index.d.ts +22 -10
- package/index.js +9 -3
- package/package.json +4 -4
- package/plugins/@vcmap-show-case/custom-icons-example/README.md +3 -0
- package/plugins/@vcmap-show-case/custom-icons-example/assets/imageExample.png +0 -0
- package/plugins/@vcmap-show-case/custom-icons-example/assets/svgExample.svg +1 -0
- package/plugins/@vcmap-show-case/custom-icons-example/package.json +5 -0
- package/plugins/@vcmap-show-case/custom-icons-example/src/CustomIconsExample.vue +90 -0
- package/plugins/@vcmap-show-case/custom-icons-example/src/index.js +45 -0
- package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +2 -2
- package/plugins/@vcmap-show-case/plugin-editors/src/PluginEditors.vue +11 -7
- package/plugins/@vcmap-show-case/project-selector/src/ModulesListComponent.vue +1 -1
- package/plugins/@vcmap-show-case/theming-example/README.md +3 -0
- package/plugins/@vcmap-show-case/theming-example/package.json +5 -0
- package/plugins/@vcmap-show-case/theming-example/src/ThemingExample.vue +116 -0
- package/plugins/@vcmap-show-case/theming-example/src/index.js +53 -0
- package/plugins/@vcmap-show-case/vector-properties-example/src/GeometrySettings.vue +420 -0
- package/plugins/@vcmap-show-case/vector-properties-example/src/LayoutHandler.vue +97 -0
- package/plugins/@vcmap-show-case/vector-properties-example/src/TerrainSettings.vue +90 -0
- package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +61 -70
- package/plugins/@vcmap-show-case/vector-properties-example/src/index.js +34 -1
- package/plugins/@vcmap-show-case/vector-properties-example/src/lib.js +294 -0
- package/plugins/package.json +5 -1
- package/src/actions/StyleSelector.vue +35 -19
- package/src/actions/StyleSelector.vue.d.ts +5 -5
- package/src/actions/actionHelper.d.ts +4 -11
- package/src/actions/actionHelper.js +2 -5
- package/src/actions/listActions.d.ts +2 -2
- package/src/application/VcsApp.vue +20 -26
- package/src/application/VcsApp.vue.d.ts +5 -1
- package/src/application/VcsAttributionsFooter.vue +20 -11
- package/src/application/VcsAttributionsFooter.vue.d.ts +1 -1
- package/src/application/VcsContainer.vue +2 -2
- package/src/application/VcsContainer.vue.d.ts +5 -1
- package/src/application/VcsNavbar.vue +9 -1
- package/src/application/VcsNavbar.vue.d.ts +1 -0
- package/src/application/VcsSplashScreen.vue +11 -2
- package/src/application/VcsTextPageFooter.vue +4 -4
- package/src/application/attributionsHelper.d.ts +20 -22
- package/src/application/attributionsHelper.js +4 -4
- package/src/callback/vcsCallback.d.ts +2 -2
- package/src/callback/vcsCallback.js +1 -1
- package/src/components/buttons/VcsActionButtonList.vue +2 -3
- package/src/components/buttons/VcsButton.vue +2 -4
- package/src/components/buttons/VcsButton.vue.d.ts +1 -1
- package/src/components/buttons/VcsFormButton.vue +4 -4
- package/src/components/buttons/VcsToolButton.vue +4 -2
- package/src/components/buttons/VcsToolButton.vue.d.ts +2 -2
- package/src/components/composables.d.ts +5 -0
- package/src/components/composables.js +79 -9
- package/src/components/extent/VcsExtent.vue +10 -6
- package/src/components/extent/VcsExtent.vue.d.ts +1 -0
- package/src/components/flight/VcsFlightComponent.vue +13 -13
- package/src/components/flight/VcsFlightComponent.vue.d.ts +1 -0
- package/src/components/form-inputs-controls/VcsCheckbox.vue +8 -3
- package/src/components/form-inputs-controls/VcsChipArrayInput.vue +3 -8
- package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +0 -1
- package/src/components/form-inputs-controls/VcsCoordinate.vue +1 -2
- package/src/components/form-inputs-controls/VcsFileInput.vue +1 -1
- package/src/components/form-inputs-controls/VcsLabel.vue +32 -9
- package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +2 -0
- package/src/components/form-inputs-controls/VcsRadio.vue +8 -6
- package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +1 -0
- package/src/components/form-inputs-controls/VcsSelect.vue +2 -2
- package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +2 -2
- package/src/components/form-inputs-controls/VcsSlider.vue +5 -5
- package/src/components/form-inputs-controls/VcsTextArea.vue +1 -1
- package/src/components/form-inputs-controls/VcsTextField.vue +10 -1
- package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +2 -1
- package/src/components/form-inputs-controls/VcsWizard.vue +3 -3
- package/src/components/form-inputs-controls/VcsWizardStep.vue +5 -1
- package/src/components/form-inputs-controls/vcsTextField.scss +7 -1
- package/src/components/form-output/VcsFormattedNumber.vue +1 -1
- package/src/components/import/VcsImportComponent.vue +7 -4
- package/src/components/import/VcsImportComponent.vue.d.ts +1 -1
- package/src/components/lists/VcsActionList.vue +2 -6
- package/src/components/lists/VcsListItemComponent.vue +20 -10
- package/src/components/lists/VcsListItemComponent.vue.d.ts +11 -1
- package/src/components/lists/VcsTreeview.vue +75 -11
- package/src/components/lists/VcsTreeview.vue.d.ts +12 -0
- package/src/components/lists/VcsTreeviewSearchbar.vue +14 -3
- package/src/components/lists/VcsTreeviewSearchbar.vue.d.ts +3 -1
- package/src/components/lists/VcsTreeviewTitle.vue +40 -0
- package/src/components/modelHelper.d.ts +10 -8
- package/src/components/modelHelper.js +8 -6
- package/src/components/notification/VcsHelp.vue +6 -7
- package/src/components/notification/VcsHelp.vue.d.ts +0 -9
- package/src/components/plugins/AbstractConfigEditor.vue +1 -22
- package/src/components/plugins/AbstractConfigEditor.vue.d.ts +6 -29
- package/src/components/section/VcsExpansionPanel.vue +9 -3
- package/src/components/section/VcsExpansionPanel.vue.d.ts +2 -2
- package/src/components/section/VcsFormSection.vue +6 -6
- package/src/components/section/VcsFormSection.vue.d.ts +2 -2
- package/src/components/style/VcsImageSelector.vue +14 -6
- package/src/components/style/VcsImageSelector.vue.d.ts +1 -0
- package/src/components/style/VcsStrokeSelector.vue +5 -2
- package/src/components/style/VcsStrokeSelector.vue.d.ts +1 -0
- package/src/components/style/VcsTextMenu.vue +2 -2
- package/src/components/tables/VcsDataTable.vue +14 -10
- package/src/components/tables/VcsDataTable.vue.d.ts +1 -0
- package/src/components/vector-properties/VcsFeatureEditingWindow.vue +17 -34
- package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +5 -3
- package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +78 -43
- package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +4 -2
- package/src/components/viewpoint/VcsViewpointComponent.vue +12 -9
- package/src/components/viewpoint/VcsViewpointComponent.vue.d.ts +1 -0
- package/src/contentTree/contentTreeItem.d.ts +2 -2
- package/src/contentTree/contentTreeItem.js +1 -1
- package/src/contentTree/layerContentTreeItem.d.ts +8 -5
- package/src/contentTree/layerContentTreeItem.js +48 -34
- package/src/contentTree/layerGroupContentTreeItem.d.ts +7 -1
- package/src/contentTree/layerGroupContentTreeItem.js +22 -3
- package/src/featureInfo/BalloonComponent.vue +21 -13
- package/src/featureInfo/BalloonComponent.vue.d.ts +1 -0
- package/src/featureInfo/abstractFeatureInfoView.d.ts +4 -4
- package/src/featureInfo/abstractFeatureInfoView.js +4 -4
- package/src/featureInfo/balloonHelper.js +1 -1
- package/src/featureInfo/featureInfo.d.ts +2 -2
- package/src/featureInfo/featureInfo.js +1 -1
- package/src/i18n/de.d.ts +5 -0
- package/src/i18n/de.js +7 -2
- package/src/i18n/en.d.ts +5 -0
- package/src/i18n/en.js +6 -1
- package/src/i18n/i18nCollection.d.ts +9 -15
- package/src/i18n/i18nCollection.js +3 -3
- package/src/legend/VcsLegend.vue +6 -2
- package/src/legend/VcsLegend.vue.d.ts +1 -0
- package/src/manager/collectionManager/CollectionComponentList.vue +1 -1
- package/src/manager/collectionManager/categoryManager.d.ts +1 -1
- package/src/manager/collectionManager/collectionComponentClass.d.ts +2 -2
- package/src/manager/collectionManager/collectionComponentClass.js +4 -4
- package/src/manager/collectionManager/collectionManager.d.ts +1 -1
- package/src/manager/toolbox/GroupToolboxComponent.vue +8 -6
- package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +1 -1
- package/src/manager/toolbox/SelectToolboxComponent.vue +8 -6
- package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +1 -1
- package/src/manager/toolbox/{ToolboxManager.vue → ToolboxManagerComponent.vue} +8 -5
- package/src/manager/toolbox/{ToolboxManager.vue.d.ts → ToolboxManagerComponent.vue.d.ts} +1 -1
- package/src/manager/window/WindowComponentHeader.vue +6 -3
- package/src/manager/window/WindowComponentHeader.vue.d.ts +1 -0
- package/src/manager/window/windowManager.d.ts +6 -6
- package/src/manager/window/windowManager.js +3 -3
- package/src/navigation/OrientationToolsButton.vue +2 -4
- package/src/navigation/TiltSlider.vue +3 -5
- package/src/navigation/locatorHelper.js +3 -21
- package/src/search/SearchComponent.vue +8 -6
- package/src/search/SearchComponent.vue.d.ts +1 -1
- package/src/styles/vcsList.scss +1 -1
- package/src/uiConfig.d.ts +12 -3
- package/src/uiConfig.js +2 -1
- package/src/vcsUiApp.d.ts +39 -53
- package/src/vcsUiApp.js +30 -24
- package/src/vuePlugins/vuetify.d.ts +88 -62
- package/src/vuePlugins/vuetify.js +116 -20
- package/dist/assets/ui-7214428e.css +0 -1
- package/plugins/@vcmap-show-case/theme-changer/README.md +0 -23
- package/plugins/@vcmap-show-case/theme-changer/config.json +0 -69
- package/plugins/@vcmap-show-case/theme-changer/package.json +0 -11
- package/plugins/@vcmap-show-case/theme-changer/src/ThemeChangerComponent.vue +0 -120
- package/plugins/@vcmap-show-case/theme-changer/src/index.js +0 -108
- package/src/components/lists/VcsTreeviewLeaf.vue +0 -92
- /package/dist/assets/{vue-c78a5f76.js → vue-aefad438.js} +0 -0
- /package/src/components/lists/{VcsTreeviewLeaf.vue.d.ts → VcsTreeviewTitle.vue.d.ts} +0 -0
@@ -3,13 +3,14 @@ import ContentTreeItem, {
|
|
3
3
|
} from './contentTreeItem.js';
|
4
4
|
import {
|
5
5
|
getStateFromLayer,
|
6
|
+
setStyleAction,
|
6
7
|
setViewpointAction,
|
7
8
|
} from './layerContentTreeItem.js';
|
8
9
|
import { StateActionState } from '../actions/stateRefAction.js';
|
9
10
|
import { executeCallbacks } from '../callback/vcsCallback.js';
|
10
11
|
|
11
12
|
/**
|
12
|
-
* @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { layerNames: string[], defaultViewpoint?: string }} LayerGroupContentTreeItemOptions
|
13
|
+
* @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { layerNames: string[], defaultViewpoint?: string, availableStyles?: string[] }} LayerGroupContentTreeItemOptions
|
13
14
|
* @property {Array<string>} layerNames list of LayerNames which should be activated on click
|
14
15
|
* @property {string} [defaultViewpoint] - the name of an optional default viewpoint
|
15
16
|
*/
|
@@ -69,10 +70,18 @@ class LayerGroupContentTreeItem extends ContentTreeItem {
|
|
69
70
|
this._listeners = [];
|
70
71
|
|
71
72
|
/**
|
72
|
-
* @type {string|
|
73
|
+
* @type {string|undefined}
|
73
74
|
* @private
|
74
75
|
*/
|
75
|
-
this._defaultViewpoint = options.defaultViewpoint
|
76
|
+
this._defaultViewpoint = options.defaultViewpoint;
|
77
|
+
|
78
|
+
/**
|
79
|
+
* @type {string[]}
|
80
|
+
* @private
|
81
|
+
*/
|
82
|
+
this._availableStyles = Array.isArray(options.availableStyles)
|
83
|
+
? options.availableStyles.slice()
|
84
|
+
: [];
|
76
85
|
|
77
86
|
this._setup();
|
78
87
|
}
|
@@ -116,6 +125,13 @@ class LayerGroupContentTreeItem extends ContentTreeItem {
|
|
116
125
|
this.visible = layers.some((l) => l.isSupported(this._app.maps.activeMap));
|
117
126
|
this.state = getStateFromLayers(layers);
|
118
127
|
setViewpointAction(this, this._app, this._defaultViewpoint);
|
128
|
+
setStyleAction(
|
129
|
+
this,
|
130
|
+
this._app,
|
131
|
+
this._listeners,
|
132
|
+
this._layerNames,
|
133
|
+
this._availableStyles,
|
134
|
+
);
|
119
135
|
|
120
136
|
this._listeners.push(
|
121
137
|
this._app.layers.removed.addEventListener(resetHandler),
|
@@ -166,6 +182,9 @@ class LayerGroupContentTreeItem extends ContentTreeItem {
|
|
166
182
|
if (this._defaultViewpoint) {
|
167
183
|
config.defaultViewpoint = this._defaultViewpoint;
|
168
184
|
}
|
185
|
+
if (this._availableStyles.length > 0) {
|
186
|
+
config.availableStyles = this._availableStyles.slice();
|
187
|
+
}
|
169
188
|
return config;
|
170
189
|
}
|
171
190
|
|
@@ -2,19 +2,23 @@
|
|
2
2
|
<v-card class="mx-auto elevation-0" v-if="position">
|
3
3
|
<slot name="balloon-header" :attrs="{ ...$props, ...$attrs }">
|
4
4
|
<v-list-item class="px-1">
|
5
|
-
<template #prepend>
|
6
|
-
<
|
7
|
-
<
|
8
|
-
|
5
|
+
<template #prepend="prependScope">
|
6
|
+
<slot name="prepend" v-bind="prependScope">
|
7
|
+
<div class="pl-1 pr-2">
|
8
|
+
<v-icon color="primary" :size="iconSize"> $vcsInfo </v-icon>
|
9
|
+
</div>
|
10
|
+
</slot>
|
9
11
|
</template>
|
10
|
-
<
|
11
|
-
<
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
12
|
+
<slot name="balloon-title" :attrs="{ ...$props, ...$attrs }">
|
13
|
+
<v-list-item-title>
|
14
|
+
<h3 class="font-weight-bold">
|
15
|
+
{{ $st(balloonTitle) }}
|
16
|
+
</h3>
|
17
|
+
</v-list-item-title>
|
18
|
+
<v-list-item-subtitle v-if="balloonSubtitle">
|
19
|
+
{{ $st(balloonSubtitle) }}
|
20
|
+
</v-list-item-subtitle>
|
21
|
+
</slot>
|
18
22
|
<template #append>
|
19
23
|
<VcsButton
|
20
24
|
@click.stop="close"
|
@@ -73,6 +77,7 @@
|
|
73
77
|
import { setupBalloonPositionListener } from './balloonHelper.js';
|
74
78
|
import VcsButton from '../components/buttons/VcsButton.vue';
|
75
79
|
import { getTag, getTagOptions } from '../components/tables/VcsTable.vue';
|
80
|
+
import { useIconSize } from '../vuePlugins/vuetify.js';
|
76
81
|
|
77
82
|
/**
|
78
83
|
* @description A balloon viewing feature attributes. Size dynamic dependent on number of attributes.
|
@@ -84,7 +89,9 @@
|
|
84
89
|
* @vue-prop {Object} tags - optional object containing keys rendered as tags
|
85
90
|
* @vue-prop {Array<import("ol/coordinate").Coordinate>} position - clicked position balloon is rendered at
|
86
91
|
* @vue-data {slot} [#balloon-header] - slot to override balloon header, $props and $attrs are passed to `attrs`
|
92
|
+
* @vue-data {slot} [#balloon-title] - slot to override balloon title and subtitle, $props and $attrs are passed to `attrs`. Is overwritten by balloon-header slot.
|
87
93
|
* @vue-data {slot} [#default] - slot to override balloon content, $props and $attrs are passed to `attrs`
|
94
|
+
* @vue-data {slot} [#prepend] - slot to override balloon header icon
|
88
95
|
*/
|
89
96
|
export default {
|
90
97
|
name: 'BalloonComponent',
|
@@ -186,8 +193,9 @@
|
|
186
193
|
app.windowManager.remove(attrs['window-state'].id);
|
187
194
|
destroyListener();
|
188
195
|
};
|
189
|
-
|
196
|
+
const iconSize = useIconSize();
|
190
197
|
return {
|
198
|
+
iconSize,
|
191
199
|
close,
|
192
200
|
getTag,
|
193
201
|
getTagOptions,
|
@@ -103,7 +103,7 @@ export type FeatureInfoViewOptions = import("@vcmap/core").VcsObjectOptions & {
|
|
103
103
|
keyMapping?: Record<string, string>;
|
104
104
|
valueMapping?: Record<string, string | Record<string, string>>;
|
105
105
|
tags?: Record<string, HTMLTagOptions>;
|
106
|
-
window?: import("../manager/window/windowManager.js").WindowComponentOptions
|
106
|
+
window?: Pick<import("../manager/window/windowManager.js").WindowComponentOptions, 'state' | 'slot' | 'position'>;
|
107
107
|
};
|
108
108
|
/**
|
109
109
|
* Abstract class to be extended by FeatureInfoView classes
|
@@ -145,7 +145,7 @@ declare class AbstractFeatureInfoView extends VcsObject {
|
|
145
145
|
[x: string]: HTMLTagOptions;
|
146
146
|
};
|
147
147
|
/**
|
148
|
-
* @type {import("../manager/window/windowManager.js").WindowComponentOptions|Object}
|
148
|
+
* @type {Pick<import("../manager/window/windowManager.js").WindowComponentOptions,'state'|'slot'|'position'>|Object}
|
149
149
|
* @private
|
150
150
|
*/
|
151
151
|
private _window;
|
@@ -156,9 +156,9 @@ declare class AbstractFeatureInfoView extends VcsObject {
|
|
156
156
|
private _component;
|
157
157
|
/**
|
158
158
|
* window options, configured in a module, used only internally by AbstractFeatureInfoView or subclass
|
159
|
-
* @type {import("../manager/window/windowManager.js").WindowComponentOptions|Object}
|
159
|
+
* @type {Pick<import("../manager/window/windowManager.js").WindowComponentOptions<FeatureInfoProps>,'state'|'slot'|'position'>|Object}
|
160
160
|
*/
|
161
|
-
get window(): Object | import("../manager/window/windowManager.js").WindowComponentOptions<
|
161
|
+
get window(): Object | Pick<import("../manager/window/windowManager.js").WindowComponentOptions<FeatureInfoProps>, "slot" | "state" | "position">;
|
162
162
|
/**
|
163
163
|
* component provided by a FeatureInfoView class, passed to featureInfo via `getWindowComponentOptions()`
|
164
164
|
* @type {import("vue").Component<FeatureInfoProps, unknown, unknown>|undefined}
|
@@ -24,13 +24,13 @@ import { renderTemplate } from '../components/form-output/markdownHelper.js';
|
|
24
24
|
* keyMapping?: Record<string,string>,
|
25
25
|
* valueMapping?: Record<string, string|Record<string,string>>,
|
26
26
|
* tags?: Record<string, HTMLTagOptions>,
|
27
|
-
* window?: import("../manager/window/windowManager.js").WindowComponentOptions
|
27
|
+
* window?: Pick<import("../manager/window/windowManager.js").WindowComponentOptions,'state'|'slot'|'position'>
|
28
28
|
* }} FeatureInfoViewOptions
|
29
29
|
* @property {Array<string>} [attributeKeys] - list of keys to filter attributes of selected feature
|
30
30
|
* @property {Object<string,string>} [keyMapping] - object providing text replacements or i18n strings for attribute keys
|
31
31
|
* @property {Object<string, string|Object<string,string>>} [valueMapping] - object providing text replacements or i18n strings for attribute values
|
32
32
|
* @property {Object<string,HTMLTagOptions>} [tags] - object with keys rendered as special html element. Value contains html options
|
33
|
-
* @property {import("../manager/window/windowManager.js").WindowComponentOptions} [window] - state, slot, position can be set. Other options are predefined. headerTitle of window state can be a template string, e.g. "{{myAttribute}}" or ["{{layerName}}", " - ", "{{myAttribute}}"]
|
33
|
+
* @property {Pick<import("../manager/window/windowManager.js").WindowComponentOptions,'state'|'slot'|'position'>} [window] - state, slot, position can be set. Other options are predefined. headerTitle of window state can be a template string, e.g. "{{myAttribute}}" or ["{{layerName}}", " - ", "{{myAttribute}}"]
|
34
34
|
*/
|
35
35
|
|
36
36
|
/**
|
@@ -314,7 +314,7 @@ class AbstractFeatureInfoView extends VcsObject {
|
|
314
314
|
*/
|
315
315
|
this.tags = options.tags || defaultOptions.tags;
|
316
316
|
/**
|
317
|
-
* @type {import("../manager/window/windowManager.js").WindowComponentOptions|Object}
|
317
|
+
* @type {Pick<import("../manager/window/windowManager.js").WindowComponentOptions,'state'|'slot'|'position'>|Object}
|
318
318
|
* @private
|
319
319
|
*/
|
320
320
|
this._window = options.window || defaultOptions.window;
|
@@ -327,7 +327,7 @@ class AbstractFeatureInfoView extends VcsObject {
|
|
327
327
|
|
328
328
|
/**
|
329
329
|
* window options, configured in a module, used only internally by AbstractFeatureInfoView or subclass
|
330
|
-
* @type {import("../manager/window/windowManager.js").WindowComponentOptions|Object}
|
330
|
+
* @type {Pick<import("../manager/window/windowManager.js").WindowComponentOptions<FeatureInfoProps>,'state'|'slot'|'position'>|Object}
|
331
331
|
*/
|
332
332
|
get window() {
|
333
333
|
return this._window;
|
@@ -28,7 +28,7 @@ export const balloonOffset = { x: 55, y: 25 };
|
|
28
28
|
* @returns {undefined|import("@vcmap-cesium/engine").Cartesian2}
|
29
29
|
*/
|
30
30
|
function getBalloonPositionCesium(scene, cartesian) {
|
31
|
-
return SceneTransforms.
|
31
|
+
return SceneTransforms.worldToWindowCoordinates(scene, cartesian);
|
32
32
|
}
|
33
33
|
|
34
34
|
/**
|
@@ -11,9 +11,9 @@ export function getHighlightStyle(feature: FeatureType, layer: import("@vcmap/co
|
|
11
11
|
*/
|
12
12
|
export function createFeatureInfoSession(app: import("../vcsUiApp.js").default): FeatureInfoSession;
|
13
13
|
/**
|
14
|
-
* @type {ClassRegistry<
|
14
|
+
* @type {ClassRegistry<typeof AbstractFeatureInfoView>}
|
15
15
|
*/
|
16
|
-
export const featureInfoClassRegistry: ClassRegistry<
|
16
|
+
export const featureInfoClassRegistry: ClassRegistry<typeof AbstractFeatureInfoView>;
|
17
17
|
/**
|
18
18
|
* Symbol added to features to overwrite the layers predefined feature info
|
19
19
|
* @type {symbol}
|
package/src/i18n/de.d.ts
CHANGED
@@ -334,8 +334,12 @@ declare namespace messages {
|
|
334
334
|
export { header_1 as header };
|
335
335
|
export let altitudeMode: string;
|
336
336
|
export let clampToGround: string;
|
337
|
+
export let clampToTerrain: string;
|
338
|
+
export let clampTo3DTiles: string;
|
337
339
|
export let absolute: string;
|
338
340
|
export let relativeToGround: string;
|
341
|
+
export let relativeToTerrain: string;
|
342
|
+
export let relativeTo3DTiles: string;
|
339
343
|
export let groundLevel: string;
|
340
344
|
export let classificationType: string;
|
341
345
|
export let none: string;
|
@@ -354,6 +358,7 @@ declare namespace messages {
|
|
354
358
|
export let modelHeading: string;
|
355
359
|
export let modelPitch: string;
|
356
360
|
export let modelRoll: string;
|
361
|
+
export let modelAutoScale: string;
|
357
362
|
export let baseUrl: string;
|
358
363
|
export let extrudedHeight: string;
|
359
364
|
export let skirt: string;
|
package/src/i18n/de.js
CHANGED
@@ -217,9 +217,13 @@ const messages = {
|
|
217
217
|
vectorProperties: {
|
218
218
|
header: 'Vektor Eigenschaften',
|
219
219
|
altitudeMode: 'Höhenmodus',
|
220
|
-
clampToGround: 'Auf
|
220
|
+
clampToGround: 'Auf Grund legen',
|
221
|
+
clampToTerrain: 'Auf Gelände legen',
|
222
|
+
clampTo3DTiles: 'Auf 3D Tiles legen',
|
221
223
|
absolute: 'Absolut',
|
222
|
-
relativeToGround: 'Relativ zum
|
224
|
+
relativeToGround: 'Relativ zum Grund',
|
225
|
+
relativeToTerrain: 'Relativ zum Gelände',
|
226
|
+
relativeTo3DTiles: 'Relativ zu 3D Tiles',
|
223
227
|
groundLevel: 'Geländehöhe',
|
224
228
|
classificationType: 'Klassifizierung',
|
225
229
|
none: 'Keine',
|
@@ -238,6 +242,7 @@ const messages = {
|
|
238
242
|
modelHeading: 'Modell Ausrichtung',
|
239
243
|
modelPitch: 'Modell Neigung',
|
240
244
|
modelRoll: 'Modell Rotation',
|
245
|
+
modelAutoScale: 'Modellautoskalierung',
|
241
246
|
baseUrl: 'Basis URL',
|
242
247
|
extrudedHeight: 'Extrusion',
|
243
248
|
skirt: 'Skirts',
|
package/src/i18n/en.d.ts
CHANGED
@@ -334,8 +334,12 @@ declare namespace messages {
|
|
334
334
|
export { header_1 as header };
|
335
335
|
export let altitudeMode: string;
|
336
336
|
export let clampToGround: string;
|
337
|
+
export let clampToTerrain: string;
|
338
|
+
export let clampTo3DTiles: string;
|
337
339
|
export let absolute: string;
|
338
340
|
export let relativeToGround: string;
|
341
|
+
export let relativeToTerrain: string;
|
342
|
+
export let relativeTo3DTiles: string;
|
339
343
|
export let groundLevel: string;
|
340
344
|
export let classificationType: string;
|
341
345
|
export let none: string;
|
@@ -354,6 +358,7 @@ declare namespace messages {
|
|
354
358
|
export let modelHeading: string;
|
355
359
|
export let modelPitch: string;
|
356
360
|
export let modelRoll: string;
|
361
|
+
export let modelAutoScale: string;
|
357
362
|
export let baseUrl: string;
|
358
363
|
export let extrudedHeight: string;
|
359
364
|
export let skirt: string;
|
package/src/i18n/en.js
CHANGED
@@ -217,9 +217,13 @@ const messages = {
|
|
217
217
|
vectorProperties: {
|
218
218
|
header: 'Vector properties',
|
219
219
|
altitudeMode: 'Altitude mode',
|
220
|
-
clampToGround: '
|
220
|
+
clampToGround: 'Drape on ground',
|
221
|
+
clampToTerrain: 'Drape on terrain',
|
222
|
+
clampTo3DTiles: 'Drape on 3D tiles',
|
221
223
|
absolute: 'Absolute',
|
222
224
|
relativeToGround: 'Relative to ground',
|
225
|
+
relativeToTerrain: 'Relative to terrain',
|
226
|
+
relativeTo3DTiles: 'Relative to 3D tiles',
|
223
227
|
groundLevel: 'Ground level',
|
224
228
|
classificationType: 'Classification',
|
225
229
|
none: 'None',
|
@@ -238,6 +242,7 @@ const messages = {
|
|
238
242
|
modelHeading: 'Model heading',
|
239
243
|
modelPitch: 'Model pitch',
|
240
244
|
modelRoll: 'Model roll',
|
245
|
+
modelAutoScale: 'Model auto scale',
|
241
246
|
baseUrl: 'Base URL',
|
242
247
|
extrudedHeight: 'Extrusion',
|
243
248
|
skirt: 'Skirts',
|
@@ -16,8 +16,8 @@ export function mergeDeep(...sources: Object[]): Object;
|
|
16
16
|
/**
|
17
17
|
* Item for internationalization containing an object with key value mapping for each locale (de, en, nl, pl, ...).
|
18
18
|
* Other locales can be supported by adding corresponding mapping objects with associated locale key.
|
19
|
-
* @typedef {
|
20
|
-
* @property {string}
|
19
|
+
* @typedef {Record<string, string | object> & { name: string, properties?: object, de?: object, en?: object }} I18nConfigurationItem
|
20
|
+
* @property {string} name - the name for the item.
|
21
21
|
* @property {Object} [properties]
|
22
22
|
* @property {Object} [de]
|
23
23
|
* @property {Object} [en]
|
@@ -33,17 +33,11 @@ export default I18nCollection;
|
|
33
33
|
* Item for internationalization containing an object with key value mapping for each locale (de, en, nl, pl, ...).
|
34
34
|
* Other locales can be supported by adding corresponding mapping objects with associated locale key.
|
35
35
|
*/
|
36
|
-
export type I18nConfigurationItem = {
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
properties?: Object | undefined;
|
42
|
-
de?: Object | undefined;
|
43
|
-
/**
|
44
|
-
* ...
|
45
|
-
*/
|
46
|
-
en?: Object | undefined;
|
36
|
+
export type I18nConfigurationItem = Record<string, string | object> & {
|
37
|
+
name: string;
|
38
|
+
properties?: object;
|
39
|
+
de?: object;
|
40
|
+
en?: object;
|
47
41
|
};
|
48
42
|
/**
|
49
43
|
* @extends {IndexedCollection<I18nConfigurationItem>}
|
@@ -74,9 +68,9 @@ declare class I18nCollection extends IndexedCollection<I18nConfigurationItem> {
|
|
74
68
|
/**
|
75
69
|
* Returns a merged Message Object with the locale as a key and an Object with all the translated keys.
|
76
70
|
* Includes all available plugin messages.
|
77
|
-
* @returns {
|
71
|
+
* @returns {Record<string, object>}
|
78
72
|
*/
|
79
|
-
getMergedMessages():
|
73
|
+
getMergedMessages(): Record<string, object>;
|
80
74
|
}
|
81
75
|
import { IndexedCollection } from '@vcmap/core';
|
82
76
|
import { VcsEvent } from '@vcmap/core';
|
@@ -17,8 +17,8 @@ export function isObject(item) {
|
|
17
17
|
/**
|
18
18
|
* Item for internationalization containing an object with key value mapping for each locale (de, en, nl, pl, ...).
|
19
19
|
* Other locales can be supported by adding corresponding mapping objects with associated locale key.
|
20
|
-
* @typedef {
|
21
|
-
* @property {string}
|
20
|
+
* @typedef {Record<string, string | object> & { name: string, properties?: object, de?: object, en?: object }} I18nConfigurationItem
|
21
|
+
* @property {string} name - the name for the item.
|
22
22
|
* @property {Object} [properties]
|
23
23
|
* @property {Object} [de]
|
24
24
|
* @property {Object} [en]
|
@@ -113,7 +113,7 @@ class I18nCollection extends IndexedCollection {
|
|
113
113
|
/**
|
114
114
|
* Returns a merged Message Object with the locale as a key and an Object with all the translated keys.
|
115
115
|
* Includes all available plugin messages.
|
116
|
-
* @returns {
|
116
|
+
* @returns {Record<string, object>}
|
117
117
|
*/
|
118
118
|
getMergedMessages() {
|
119
119
|
const pluginMessages = [...this._pluginCollection]
|
package/src/legend/VcsLegend.vue
CHANGED
@@ -25,12 +25,12 @@
|
|
25
25
|
</div>
|
26
26
|
<div v-else-if="item.type === LegendType.Iframe">
|
27
27
|
<iframe
|
28
|
-
:id="
|
28
|
+
:id="`${cid}-legendIframe${idx}`"
|
29
29
|
:src="$st(item.src)"
|
30
30
|
scrolling="no"
|
31
31
|
style="width: 100%; height: 100%"
|
32
32
|
frameBorder="0"
|
33
|
-
@load="setIframeHeight(
|
33
|
+
@load="setIframeHeight(`${cid}-legendIframe${idx}`)"
|
34
34
|
/>
|
35
35
|
</div>
|
36
36
|
<style-legend-item v-else :item="item" />
|
@@ -47,6 +47,7 @@
|
|
47
47
|
<script>
|
48
48
|
import { VExpansionPanels, VList, VSheet } from 'vuetify/components';
|
49
49
|
import { computed } from 'vue';
|
50
|
+
import { useComponentId } from '../components/composables.js';
|
50
51
|
import { LegendType } from './legendHelper.js';
|
51
52
|
import StyleLegendItem from './StyleLegendItem.vue';
|
52
53
|
import VcsExpansionPanel from '../components/section/VcsExpansionPanel.vue';
|
@@ -93,10 +94,13 @@
|
|
93
94
|
set() {},
|
94
95
|
});
|
95
96
|
|
97
|
+
const cid = useComponentId();
|
98
|
+
|
96
99
|
return {
|
97
100
|
LegendType,
|
98
101
|
setIframeHeight,
|
99
102
|
panels, // TODO
|
103
|
+
cid,
|
100
104
|
};
|
101
105
|
},
|
102
106
|
};
|
@@ -11,6 +11,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
11
11
|
};
|
12
12
|
setIframeHeight: (id: string) => void;
|
13
13
|
panels: import("vue").ComputedRef<number[]>;
|
14
|
+
cid: string;
|
14
15
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
15
16
|
entries: {
|
16
17
|
type: ArrayConstructor;
|
@@ -57,7 +57,7 @@ declare class CategoryManager extends CollectionManager implements ICategoryMana
|
|
57
57
|
*/
|
58
58
|
requestCategory<T extends Object | import("@vcmap/core").VcsObject>(options: import("@vcmap/core").CategoryOptions<T>, owner: string | symbol, collectionComponentOptions?: import("./collectionComponentClass.js").CollectionComponentUiOptions): Promise<{
|
59
59
|
collectionComponent: import("./collectionComponentClass.js").default<T>;
|
60
|
-
category: import("@vcmap/core").Category<T>;
|
60
|
+
category: import("@vcmap/core").Category<T, object>;
|
61
61
|
}>;
|
62
62
|
/**
|
63
63
|
* Updates the filterFunction for added moduleIds.
|
@@ -51,9 +51,9 @@ export type CollectionComponentListItem = import("../../components/lists/VcsList
|
|
51
51
|
* Listens to all collection events and synchronizes changes to the items array.
|
52
52
|
* The Collection Items will be transformed and filtered with the given itemMappings and itemFilter functions
|
53
53
|
* @class
|
54
|
-
* @template {Object|import("@vcmap/core").VcsObject} T
|
54
|
+
* @template {Object|import("@vcmap/core").VcsObject} [T=Object|import("@vcmap/core").VcsObject]
|
55
55
|
*/
|
56
|
-
declare class CollectionComponentClass<T extends Object | import("@vcmap/core").VcsObject> {
|
56
|
+
declare class CollectionComponentClass<T extends Object | import("@vcmap/core").VcsObject = Object | import("@vcmap/core").VcsObject> {
|
57
57
|
/**
|
58
58
|
* @param {CollectionComponentClassOptions<T>} options
|
59
59
|
* @param {string|import("../../pluginHelper.js").vcsAppSymbol} owner
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { IndexedCollection, isOverrideCollection } from '@vcmap/core';
|
2
2
|
import { getLogger } from '@vcsuite/logger';
|
3
3
|
import { v4 as uuidv4 } from 'uuid';
|
4
|
-
import { computed, ref, shallowRef, watch } from 'vue';
|
4
|
+
import { computed, reactive, ref, shallowRef, watch } from 'vue';
|
5
5
|
import { parseBoolean, parseNumber } from '@vcsuite/parsers';
|
6
6
|
import { check, oneOf } from '@vcsuite/check';
|
7
7
|
import { validateAction } from '../../components/lists/VcsActionList.vue';
|
@@ -95,7 +95,7 @@ export function createSupportedMapMappingFunction(
|
|
95
95
|
* Listens to all collection events and synchronizes changes to the items array.
|
96
96
|
* The Collection Items will be transformed and filtered with the given itemMappings and itemFilter functions
|
97
97
|
* @class
|
98
|
-
* @template {Object|import("@vcmap/core").VcsObject} T
|
98
|
+
* @template {Object|import("@vcmap/core").VcsObject} [T=Object|import("@vcmap/core").VcsObject]
|
99
99
|
*/
|
100
100
|
class CollectionComponentClass {
|
101
101
|
/**
|
@@ -341,7 +341,7 @@ class CollectionComponentClass {
|
|
341
341
|
*/
|
342
342
|
_transformItem(item) {
|
343
343
|
const keyProperty = this._collection.uniqueKey;
|
344
|
-
const listItem = {
|
344
|
+
const listItem = reactive({
|
345
345
|
get name() {
|
346
346
|
return item[keyProperty];
|
347
347
|
},
|
@@ -356,7 +356,7 @@ class CollectionComponentClass {
|
|
356
356
|
clickedCallbacks: [],
|
357
357
|
destroy: undefined,
|
358
358
|
destroyFunctions: [],
|
359
|
-
};
|
359
|
+
});
|
360
360
|
if (this.renamable.value) {
|
361
361
|
listItem.renamable = {
|
362
362
|
name: this._actionTitles.renameTitle,
|
@@ -18,7 +18,7 @@ export type OwnedAction = {
|
|
18
18
|
weight?: number | undefined;
|
19
19
|
owner: string | symbol;
|
20
20
|
};
|
21
|
-
export type ICollectionManager = import("../../vcsUiApp.js").VcsComponentManager<CollectionComponentClass
|
21
|
+
export type ICollectionManager = import("../../vcsUiApp.js").VcsComponentManager<CollectionComponentClass, import("./collectionComponentClass.js").CollectionComponentClassOptions<Object>>;
|
22
22
|
/**
|
23
23
|
* @typedef {function(T, import("./collectionComponentClass.js").default<T>, import("./collectionComponentClass.js").CollectionComponentListItem): void} MappingFunction
|
24
24
|
* @template {Object} T
|
@@ -22,9 +22,8 @@
|
|
22
22
|
</template>
|
23
23
|
|
24
24
|
<v-toolbar
|
25
|
-
|
26
|
-
|
27
|
-
:height="itemHeight + 8"
|
25
|
+
class="vcs-toolbox-toolbar--secondary mx-auto marginToTop rounded-b elevation-4 opacity-80 px-1"
|
26
|
+
:height="toolboxHeight"
|
28
27
|
>
|
29
28
|
<v-toolbar-items class="w-100">
|
30
29
|
<div class="d-flex align-center justify-space-between gc-1 w-100">
|
@@ -54,7 +53,7 @@
|
|
54
53
|
import { VMenu, VIcon, VToolbar, VToolbarItems } from 'vuetify/components';
|
55
54
|
import VcsToolButton from '../../components/buttons/VcsToolButton.vue';
|
56
55
|
import { getComponentsByOrder } from './toolboxManager.js';
|
57
|
-
import {
|
56
|
+
import { useFontSize } from '../../vuePlugins/vuetify.js';
|
58
57
|
|
59
58
|
/**
|
60
59
|
* @description
|
@@ -95,13 +94,16 @@
|
|
95
94
|
orderedButtons.value.some((a) => a.action.active),
|
96
95
|
);
|
97
96
|
|
98
|
-
const
|
97
|
+
const fontSize = useFontSize();
|
98
|
+
const toolboxHeight = computed(() => {
|
99
|
+
return fontSize.value * 3 + 1;
|
100
|
+
});
|
99
101
|
|
100
102
|
return {
|
101
103
|
open,
|
102
104
|
orderedButtons,
|
103
105
|
hasActiveAction,
|
104
|
-
|
106
|
+
toolboxHeight,
|
105
107
|
};
|
106
108
|
},
|
107
109
|
};
|
@@ -7,7 +7,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
7
7
|
open: import("vue").Ref<boolean>;
|
8
8
|
orderedButtons: import("vue").ComputedRef<(import("../buttonManager.js", { with: { "resolution-mode": "import" } }).ButtonComponent | import("./toolboxManager.js", { with: { "resolution-mode": "import" } }).ToolboxComponent)[]>;
|
9
9
|
hasActiveAction: import("vue").ComputedRef<boolean>;
|
10
|
-
|
10
|
+
toolboxHeight: import("vue").ComputedRef<number>;
|
11
11
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
12
12
|
group: {
|
13
13
|
type: ObjectConstructor;
|
@@ -38,7 +38,7 @@
|
|
38
38
|
|
39
39
|
<v-toolbar
|
40
40
|
class="vcs-toolbox-2 mx-auto marginToTop rounded-b elevation-4 opacity-80 px-1"
|
41
|
-
:height="
|
41
|
+
:height="toolboxHeight"
|
42
42
|
dense
|
43
43
|
>
|
44
44
|
<v-toolbar-items class="w-100">
|
@@ -64,10 +64,10 @@
|
|
64
64
|
}
|
65
65
|
</style>
|
66
66
|
<script>
|
67
|
-
import { ref } from 'vue';
|
67
|
+
import { ref, computed } from 'vue';
|
68
68
|
import { VMenu, VIcon, VToolbar, VToolbarItems } from 'vuetify/components';
|
69
69
|
import VcsToolButton from '../../components/buttons/VcsToolButton.vue';
|
70
|
-
import {
|
70
|
+
import { useFontSize } from '../../vuePlugins/vuetify.js';
|
71
71
|
|
72
72
|
/**
|
73
73
|
* @description
|
@@ -91,11 +91,13 @@
|
|
91
91
|
},
|
92
92
|
setup() {
|
93
93
|
const open = ref(false);
|
94
|
-
const
|
95
|
-
|
94
|
+
const fontSize = useFontSize();
|
95
|
+
const toolboxHeight = computed(() => {
|
96
|
+
return fontSize.value * 3 + 1;
|
97
|
+
});
|
96
98
|
return {
|
97
99
|
open,
|
98
|
-
|
100
|
+
toolboxHeight,
|
99
101
|
};
|
100
102
|
},
|
101
103
|
};
|
@@ -5,7 +5,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
5
5
|
};
|
6
6
|
}, {
|
7
7
|
open: import("vue").Ref<boolean>;
|
8
|
-
|
8
|
+
toolboxHeight: import("vue").ComputedRef<number>;
|
9
9
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
10
10
|
group: {
|
11
11
|
type: ObjectConstructor;
|