@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
@@ -32,11 +32,7 @@
|
|
32
32
|
* @vue-prop {boolean} [showReset=false] - Flag to show a reset button in the footer. You need to handle @reset in a child component.
|
33
33
|
* @vue-prop {Array<VcsAction>} [actions] - Optional actions rendered as ActionButtonList in the footer.
|
34
34
|
* @vue-prop {string} [submitButtonTitle='components.apply'] - Option to change the submit button title, e.g. to 'components.add'.
|
35
|
-
* @vue-prop {boolean} [setConfigOnCancel=true] - Whether setConfig shall be called on cancel. Ensures compatability with v5.0.x
|
36
35
|
* @vue-prop {boolean} [autoClose=true] - Whether window component shall be close on submit or cancel.
|
37
|
-
* @vue-prop {function():void} [onSubmit] - Callback function called on submit.
|
38
|
-
* @vue-prop {function():void} [onReset] - Callback function called on reset.
|
39
|
-
* @vue-prop {function():void} [onCancel] - Callback function called on cancel.
|
40
36
|
* @vue-event {Event} submit - Event fired on clicking the submit button.
|
41
37
|
* @vue-event {Event} cancel - Event fired on clicking the cancel button.
|
42
38
|
* @vue-event {Event} reset - Event fired on clicking the reset button.
|
@@ -70,19 +66,8 @@
|
|
70
66
|
type: Boolean,
|
71
67
|
default: true,
|
72
68
|
},
|
73
|
-
onSubmit: {
|
74
|
-
type: Function,
|
75
|
-
default: () => {},
|
76
|
-
},
|
77
|
-
onReset: {
|
78
|
-
type: Function,
|
79
|
-
default: () => {},
|
80
|
-
},
|
81
|
-
onCancel: {
|
82
|
-
type: Function,
|
83
|
-
default: () => {},
|
84
|
-
},
|
85
69
|
},
|
70
|
+
emits: ['submit', 'cancel', 'reset'],
|
86
71
|
setup(props, { attrs, emit }) {
|
87
72
|
const app = inject('vcsApp');
|
88
73
|
|
@@ -95,24 +80,18 @@
|
|
95
80
|
return {
|
96
81
|
isValid: ref(true),
|
97
82
|
submit(e) {
|
98
|
-
props.onSubmit();
|
99
83
|
emit('submit', e);
|
100
84
|
if (props.autoClose) {
|
101
85
|
close();
|
102
86
|
}
|
103
87
|
},
|
104
88
|
cancel(e) {
|
105
|
-
props.onCancel();
|
106
|
-
if (props.setConfigOnCancel) {
|
107
|
-
attrs.setConfig?.();
|
108
|
-
}
|
109
89
|
emit('cancel', e);
|
110
90
|
if (props.autoClose) {
|
111
91
|
close();
|
112
92
|
}
|
113
93
|
},
|
114
94
|
reset(e) {
|
115
|
-
props.onReset();
|
116
95
|
emit('reset', e);
|
117
96
|
},
|
118
97
|
};
|
@@ -19,24 +19,12 @@ declare const _default: import("vue").DefineComponent<{
|
|
19
19
|
type: BooleanConstructor;
|
20
20
|
default: boolean;
|
21
21
|
};
|
22
|
-
onSubmit: {
|
23
|
-
type: FunctionConstructor;
|
24
|
-
default: () => void;
|
25
|
-
};
|
26
|
-
onReset: {
|
27
|
-
type: FunctionConstructor;
|
28
|
-
default: () => void;
|
29
|
-
};
|
30
|
-
onCancel: {
|
31
|
-
type: FunctionConstructor;
|
32
|
-
default: () => void;
|
33
|
-
};
|
34
22
|
}, {
|
35
23
|
isValid: import("vue").Ref<boolean>;
|
36
24
|
submit(e: any): void;
|
37
25
|
cancel(e: any): void;
|
38
26
|
reset(e: any): void;
|
39
|
-
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin,
|
27
|
+
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("cancel" | "reset" | "submit")[], "cancel" | "reset" | "submit", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
40
28
|
showReset: {
|
41
29
|
type: BooleanConstructor;
|
42
30
|
default: boolean;
|
@@ -57,26 +45,15 @@ declare const _default: import("vue").DefineComponent<{
|
|
57
45
|
type: BooleanConstructor;
|
58
46
|
default: boolean;
|
59
47
|
};
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
type: FunctionConstructor;
|
66
|
-
default: () => void;
|
67
|
-
};
|
68
|
-
onCancel: {
|
69
|
-
type: FunctionConstructor;
|
70
|
-
default: () => void;
|
71
|
-
};
|
72
|
-
}>>, {
|
73
|
-
onReset: Function;
|
74
|
-
onSubmit: Function;
|
48
|
+
}>> & {
|
49
|
+
onReset?: ((...args: any[]) => any) | undefined;
|
50
|
+
onSubmit?: ((...args: any[]) => any) | undefined;
|
51
|
+
onCancel?: ((...args: any[]) => any) | undefined;
|
52
|
+
}, {
|
75
53
|
actions: unknown[];
|
76
54
|
showReset: boolean;
|
77
55
|
submitButtonTitle: string;
|
78
56
|
setConfigOnCancel: boolean;
|
79
57
|
autoClose: boolean;
|
80
|
-
onCancel: Function;
|
81
58
|
}, {}>;
|
82
59
|
export default _default;
|
@@ -10,6 +10,7 @@
|
|
10
10
|
import { computed, ref, useSlots } from 'vue';
|
11
11
|
import VcsActionButtonList from '../buttons/VcsActionButtonList.vue';
|
12
12
|
import { createEllipseTooltip } from '../composables.js';
|
13
|
+
import { useIconSize } from '../../vuePlugins/vuetify.js';
|
13
14
|
|
14
15
|
const props = defineProps({
|
15
16
|
heading: {
|
@@ -39,14 +40,19 @@
|
|
39
40
|
computed(() => undefined),
|
40
41
|
computed(() => props.heading),
|
41
42
|
);
|
43
|
+
const iconSize = useIconSize();
|
42
44
|
</script>
|
43
45
|
<template>
|
44
46
|
<v-expansion-panel :disabled="disabled" v-bind="$attrs">
|
45
47
|
<v-expansion-panel-title static class="px-2">
|
46
48
|
<template #default="{ expanded }">
|
47
49
|
<v-list-item-title ref="panelHeader">
|
48
|
-
<v-icon v-if="!expanded" class="pr-1">
|
49
|
-
|
50
|
+
<v-icon :size="iconSize" v-if="!expanded" class="pr-1">
|
51
|
+
mdi-chevron-right
|
52
|
+
</v-icon>
|
53
|
+
<v-icon :size="iconSize" v-if="expanded" class="pr-1">
|
54
|
+
mdi-chevron-down
|
55
|
+
</v-icon>
|
50
56
|
<span
|
51
57
|
:class="{
|
52
58
|
'vcs-panel-title__append':
|
@@ -82,7 +88,7 @@
|
|
82
88
|
:deep(.v-expansion-panel-title) {
|
83
89
|
font-size: var(--v-vcs-font-size);
|
84
90
|
min-height: unset;
|
85
|
-
height: var(--v-vcs-
|
91
|
+
height: calc(var(--v-vcs-font-size) * 2 + 6px);
|
86
92
|
line-height: 1.2;
|
87
93
|
padding: 0 8px;
|
88
94
|
}
|
@@ -1,11 +1,11 @@
|
|
1
1
|
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{}, {
|
2
|
-
headerActions: unknown[];
|
3
2
|
disabled: boolean;
|
3
|
+
headerActions: unknown[];
|
4
4
|
heading?: string | undefined;
|
5
5
|
actionButtonListOverflowCount?: number | undefined;
|
6
6
|
$props: {
|
7
|
-
readonly headerActions?: unknown[] | undefined;
|
8
7
|
readonly disabled?: boolean | undefined;
|
8
|
+
readonly headerActions?: unknown[] | undefined;
|
9
9
|
readonly heading?: string | undefined;
|
10
10
|
readonly actionButtonListOverflowCount?: number | undefined;
|
11
11
|
};
|
@@ -12,7 +12,7 @@
|
|
12
12
|
dense
|
13
13
|
variant="text"
|
14
14
|
icon
|
15
|
-
:size="
|
15
|
+
:size="fontSize * 2"
|
16
16
|
:disabled="disabled"
|
17
17
|
elevation="0"
|
18
18
|
@click="open = !open"
|
@@ -36,7 +36,7 @@
|
|
36
36
|
</div>
|
37
37
|
</div>
|
38
38
|
</slot>
|
39
|
-
<VcsHelp :text="helpText"
|
39
|
+
<VcsHelp :text="helpText" v-if="showHelp && ($slots.help || helpText)">
|
40
40
|
<slot name="help" />
|
41
41
|
</VcsHelp>
|
42
42
|
<article class="section-content" v-if="showContent">
|
@@ -48,7 +48,7 @@
|
|
48
48
|
<script>
|
49
49
|
import { computed, reactive, ref } from 'vue';
|
50
50
|
import { VBtn, VIcon } from 'vuetify/components';
|
51
|
-
import {
|
51
|
+
import { useFontSize } from '../../vuePlugins/vuetify.js';
|
52
52
|
import VcsActionButtonList from '../buttons/VcsActionButtonList.vue';
|
53
53
|
import VcsHelp from '../notification/VcsHelp.vue';
|
54
54
|
|
@@ -134,14 +134,14 @@
|
|
134
134
|
return props.headerActions;
|
135
135
|
});
|
136
136
|
|
137
|
-
const
|
137
|
+
const fontSize = useFontSize();
|
138
138
|
|
139
139
|
return {
|
140
140
|
open,
|
141
141
|
showContent,
|
142
142
|
showHelp,
|
143
143
|
actions,
|
144
|
-
|
144
|
+
fontSize,
|
145
145
|
};
|
146
146
|
},
|
147
147
|
};
|
@@ -149,7 +149,7 @@
|
|
149
149
|
|
150
150
|
<style lang="scss" scoped>
|
151
151
|
.vcs-form-section-header {
|
152
|
-
height: calc(var(--v-vcs-
|
152
|
+
height: calc(var(--v-vcs-font-size) * 2 + 14px);
|
153
153
|
}
|
154
154
|
.v-alert--text:before {
|
155
155
|
background-color: transparent;
|
@@ -33,7 +33,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
33
33
|
showContent: import("vue").ComputedRef<boolean>;
|
34
34
|
showHelp: import("vue").ComputedRef<boolean>;
|
35
35
|
actions: import("vue").ComputedRef<VcsAction>;
|
36
|
-
|
36
|
+
fontSize: import("vue").ComputedRef<number>;
|
37
37
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
38
38
|
heading: {
|
39
39
|
type: StringConstructor;
|
@@ -65,8 +65,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
65
65
|
default: undefined;
|
66
66
|
};
|
67
67
|
}>>, {
|
68
|
-
headerActions: unknown[];
|
69
68
|
disabled: boolean;
|
69
|
+
headerActions: unknown[];
|
70
70
|
heading: string;
|
71
71
|
actionButtonListOverflowCount: number;
|
72
72
|
expandable: boolean;
|
@@ -45,13 +45,13 @@
|
|
45
45
|
<div v-if="selectedType === ImageType.ICON">
|
46
46
|
<v-row no-gutters>
|
47
47
|
<v-col>
|
48
|
-
<VcsLabel html-for="style-icon-opacity">
|
48
|
+
<VcsLabel :html-for="`${cid}-style-icon-opacity`">
|
49
49
|
{{ $t('components.style.opacity') }}
|
50
50
|
</VcsLabel>
|
51
51
|
</v-col>
|
52
52
|
<v-col>
|
53
53
|
<VcsSlider
|
54
|
-
id="style-icon-opacity"
|
54
|
+
:id="`${cid}-style-icon-opacity`"
|
55
55
|
v-model="localValue.opacity"
|
56
56
|
step="0.1"
|
57
57
|
type="number"
|
@@ -69,11 +69,13 @@
|
|
69
69
|
:key="input.key"
|
70
70
|
>
|
71
71
|
<v-col>
|
72
|
-
<VcsLabel
|
72
|
+
<VcsLabel :html-for="`${cid}-${input.key}`">{{
|
73
|
+
$st(`components.style.${input.key}`)
|
74
|
+
}}</VcsLabel>
|
73
75
|
</v-col>
|
74
76
|
<v-col cols="3">
|
75
77
|
<VcsTextField
|
76
|
-
:id="
|
78
|
+
:id="`${cid}-${input.key}`"
|
77
79
|
:hide-spin-buttons="true"
|
78
80
|
type="number"
|
79
81
|
:unit="input.unit || ''"
|
@@ -102,11 +104,13 @@
|
|
102
104
|
v-if="extendedShapeSettings || selectedType === ImageType.ICON"
|
103
105
|
>
|
104
106
|
<v-col>
|
105
|
-
<VcsLabel
|
107
|
+
<VcsLabel :html-for="`${cid}-style-shape-scale`">{{
|
108
|
+
$t('components.style.scale')
|
109
|
+
}}</VcsLabel>
|
106
110
|
</v-col>
|
107
111
|
<v-col cols="3">
|
108
112
|
<VcsTextField
|
109
|
-
id="style-shape-scale"
|
113
|
+
:id="`${cid}-style-shape-scale`"
|
110
114
|
:hide-spin-buttons="true"
|
111
115
|
type="number"
|
112
116
|
v-model.number="selectedScale"
|
@@ -148,6 +152,7 @@
|
|
148
152
|
import { toContext } from 'ol/render.js';
|
149
153
|
import { Point } from 'ol/geom.js';
|
150
154
|
import { getImageStyleFromOptions } from '@vcmap/core';
|
155
|
+
import { useComponentId } from '../composables.js';
|
151
156
|
import { useProxiedComplexModel } from '../modelHelper.js';
|
152
157
|
import VcsLabel from '../form-inputs-controls/VcsLabel.vue';
|
153
158
|
import VcsTextField from '../form-inputs-controls/VcsTextField.vue';
|
@@ -907,6 +912,8 @@
|
|
907
912
|
);
|
908
913
|
});
|
909
914
|
|
915
|
+
const cid = useComponentId();
|
916
|
+
|
910
917
|
return {
|
911
918
|
ImageType,
|
912
919
|
localValue,
|
@@ -919,6 +926,7 @@
|
|
919
926
|
between,
|
920
927
|
currentItems,
|
921
928
|
selectedImageTypeTab,
|
929
|
+
cid,
|
922
930
|
};
|
923
931
|
},
|
924
932
|
};
|
@@ -98,6 +98,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
98
98
|
idx: number;
|
99
99
|
}[]>;
|
100
100
|
selectedImageTypeTab: import("vue").Ref<number>;
|
101
|
+
cid: string;
|
101
102
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
102
103
|
modelValue: {
|
103
104
|
type: ObjectConstructor;
|
@@ -3,13 +3,13 @@
|
|
3
3
|
<v-container class="px-1 py-0">
|
4
4
|
<v-row no-gutters>
|
5
5
|
<v-col>
|
6
|
-
<VcsLabel html-for="draw-stroke-width">
|
6
|
+
<VcsLabel :html-for="`${cid}-draw-stroke-width`">
|
7
7
|
{{ $t('components.style.lineWidth') }}
|
8
8
|
</VcsLabel>
|
9
9
|
</v-col>
|
10
10
|
<v-col cols="3">
|
11
11
|
<VcsTextField
|
12
|
-
id="draw-stroke-width"
|
12
|
+
:id="`${cid}-draw-stroke-width`"
|
13
13
|
v-model.number="width"
|
14
14
|
:hide-spin-buttons="true"
|
15
15
|
type="number"
|
@@ -38,6 +38,7 @@
|
|
38
38
|
VRow,
|
39
39
|
VCol,
|
40
40
|
} from 'vuetify/components';
|
41
|
+
import { useComponentId } from '../composables.js';
|
41
42
|
import VcsLabel from '../form-inputs-controls/VcsLabel.vue';
|
42
43
|
import VcsTextField from '../form-inputs-controls/VcsTextField.vue';
|
43
44
|
import { useColorObject } from './composables.js';
|
@@ -66,6 +67,7 @@
|
|
66
67
|
},
|
67
68
|
setup(props, { emit }) {
|
68
69
|
const localValue = useProxiedComplexModel(props, 'modelValue', emit);
|
70
|
+
const cid = useComponentId();
|
69
71
|
return {
|
70
72
|
rgbaObject: useColorObject(() => localValue.value?.color),
|
71
73
|
width: computed({
|
@@ -81,6 +83,7 @@
|
|
81
83
|
updateColor(rgba) {
|
82
84
|
localValue.value.color = [rgba.r, rgba.g, rgba.b, rgba.a];
|
83
85
|
},
|
86
|
+
cid,
|
84
87
|
};
|
85
88
|
},
|
86
89
|
};
|
@@ -12,6 +12,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
12
12
|
}>;
|
13
13
|
width: import("vue").WritableComputedRef<any>;
|
14
14
|
updateColor(rgba: any): void;
|
15
|
+
cid: string;
|
15
16
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
16
17
|
modelValue: {
|
17
18
|
type: ObjectConstructor;
|
@@ -6,7 +6,7 @@
|
|
6
6
|
>
|
7
7
|
<template #preview>
|
8
8
|
<div v-if="modelValue" class="d-flex justify-center align-center">
|
9
|
-
<span
|
9
|
+
<span class="vcs-text-menu-preview">T</span>
|
10
10
|
</div>
|
11
11
|
</template>
|
12
12
|
<template #content>
|
@@ -68,7 +68,7 @@
|
|
68
68
|
</script>
|
69
69
|
|
70
70
|
<style>
|
71
|
-
|
71
|
+
.vcs-text-menu-preview {
|
72
72
|
font: v-bind(fontStyle) !important;
|
73
73
|
font-size: 20px !important;
|
74
74
|
-webkit-text-stroke-color: v-bind(strokeColor);
|
@@ -38,12 +38,8 @@
|
|
38
38
|
v-model:items-per-page="itemsPerPageRef"
|
39
39
|
@update:options="(o) => $emit('update:items', { ...o, search })"
|
40
40
|
>
|
41
|
-
<template v-for="slot of
|
42
|
-
<slot
|
43
|
-
v-if="!['prepend', 'default', 'append'].includes(slot)"
|
44
|
-
:name="slot"
|
45
|
-
v-bind="scope"
|
46
|
-
/>
|
41
|
+
<template v-for="slot of forwardSlots" #[slot]="scope">
|
42
|
+
<slot :name="slot" v-bind="scope ?? {}" />
|
47
43
|
</template>
|
48
44
|
<template
|
49
45
|
#header.data-table-select="{ allSelected, selectAll, someSelected }"
|
@@ -137,6 +133,7 @@
|
|
137
133
|
import VcsTreeviewSearchbar from '../lists/VcsTreeviewSearchbar.vue';
|
138
134
|
import VcsButton from '../buttons/VcsButton.vue';
|
139
135
|
import VcsCheckbox from '../form-inputs-controls/VcsCheckbox.vue';
|
136
|
+
import { useForwardSlots } from '../composables.js';
|
140
137
|
|
141
138
|
/**
|
142
139
|
* @typedef {Object} UpdateItemsEvent
|
@@ -220,7 +217,7 @@
|
|
220
217
|
default: 'isSelectable',
|
221
218
|
},
|
222
219
|
},
|
223
|
-
setup(props, { attrs, emit }) {
|
220
|
+
setup(props, { attrs, emit, slots }) {
|
224
221
|
const vm = getCurrentInstance().proxy;
|
225
222
|
const hovering = ref(null);
|
226
223
|
/**
|
@@ -366,6 +363,12 @@
|
|
366
363
|
props.serverItemsLength > itemsPerPageRef.value,
|
367
364
|
);
|
368
365
|
|
366
|
+
const forwardSlots = useForwardSlots(slots, [
|
367
|
+
'prepend',
|
368
|
+
'default',
|
369
|
+
'append',
|
370
|
+
]);
|
371
|
+
|
369
372
|
return {
|
370
373
|
hovering,
|
371
374
|
search,
|
@@ -393,6 +396,7 @@
|
|
393
396
|
handleSearch,
|
394
397
|
translatedHeaders,
|
395
398
|
showFooter,
|
399
|
+
forwardSlots,
|
396
400
|
};
|
397
401
|
},
|
398
402
|
};
|
@@ -446,10 +450,10 @@
|
|
446
450
|
}
|
447
451
|
|
448
452
|
.v-table--density-compact {
|
449
|
-
--v-table-header-height: var(--v-vcs-
|
450
|
-
--v-table-row-height: var(--v-vcs-
|
453
|
+
--v-table-header-height: calc(var(--v-vcs-font-size) * 2 + 6px);
|
454
|
+
--v-table-row-height: calc(var(--v-vcs-font-size) * 2 + 6px);
|
451
455
|
& :deep(.v-selection-control--density-default) {
|
452
|
-
--v-selection-control-size: var(--v-vcs-
|
456
|
+
--v-selection-control-size: calc(var(--v-vcs-font-size) * 2 + 6px);
|
453
457
|
}
|
454
458
|
}
|
455
459
|
|
@@ -54,6 +54,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
54
54
|
handleSearch: () => void;
|
55
55
|
translatedHeaders: ComputedRef<Object[]>;
|
56
56
|
showFooter: import("vue").ComputedRef<boolean>;
|
57
|
+
forwardSlots: import("vue").ComputedRef<string[]>;
|
57
58
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
58
59
|
headers: {
|
59
60
|
type: ArrayConstructor;
|
@@ -99,18 +99,28 @@
|
|
99
99
|
/**
|
100
100
|
* Returns the allowed transformation modes for the provided geometry types and number of features. Rotate is e.g. not allowed for a single point but for multiple points.
|
101
101
|
* @param {Set<GeometryType>} geometryTypes A set with all geometry types of the features.
|
102
|
-
* @param {
|
102
|
+
* @param {import("ol").Feature[]} features The features currently being edited.
|
103
|
+
* @param {import("@vcmap/core").VectorLayer} layer The number of the features.
|
104
|
+
* @param {boolean} is3D if the current map is 3D
|
103
105
|
* @returns {Array<TransformationMode>} The allowed transformation modes.
|
104
106
|
*/
|
105
107
|
export function getAllowedEditorTransformationModes(
|
106
108
|
geometryTypes,
|
107
|
-
|
109
|
+
features,
|
110
|
+
layer,
|
111
|
+
is3D = false,
|
108
112
|
) {
|
113
|
+
const nFeatures = features.length;
|
109
114
|
const isSinglePoint =
|
110
|
-
nFeatures === 1 &&
|
115
|
+
nFeatures === 1 &&
|
116
|
+
geometryTypes.has(GeometryType.Point) &&
|
117
|
+
(!is3D || layer.vectorProperties.renderAs(features[0]) === 'geometry');
|
118
|
+
|
111
119
|
const isSingleCircle =
|
112
120
|
nFeatures === 1 && geometryTypes.has(GeometryType.Circle);
|
121
|
+
|
113
122
|
const isBboxSelected = geometryTypes.has(GeometryType.BBox);
|
123
|
+
|
114
124
|
return [
|
115
125
|
TransformationMode.TRANSLATE,
|
116
126
|
...(isSinglePoint || isSingleCircle || isBboxSelected
|
@@ -194,36 +204,7 @@
|
|
194
204
|
* Sets the changed vector property options on the features. Also handles side effects.
|
195
205
|
* @param {import("@vcmap/core").VectorPropertiesOptions} update New property values from user input.
|
196
206
|
*/
|
197
|
-
|
198
|
-
const extrusionLikePropertyKeys = [
|
199
|
-
'extrudedHeight',
|
200
|
-
'skirt',
|
201
|
-
'storeysAboveGround',
|
202
|
-
'storeysBelowGround',
|
203
|
-
'storeyHeightsAboveGround',
|
204
|
-
'storeyHeightsBelowGround',
|
205
|
-
];
|
206
|
-
const setsExtrusionLikePropertyKeys =
|
207
|
-
!!extrusionLikePropertyKeys.filter(
|
208
|
-
(key) => Object.keys(update).includes(key) && !!update[key],
|
209
|
-
).length;
|
210
|
-
if (
|
211
|
-
setsExtrusionLikePropertyKeys &&
|
212
|
-
featureProperties.value.altitudeMode !== 'absolute'
|
213
|
-
) {
|
214
|
-
update.altitudeMode = 'absolute';
|
215
|
-
} else if (update.altitudeMode === 'clampToGround') {
|
216
|
-
extrusionLikePropertyKeys
|
217
|
-
.filter((key) => !!featureProperties.value[key])
|
218
|
-
.forEach((key) => {
|
219
|
-
update[key] = 0;
|
220
|
-
});
|
221
|
-
}
|
222
|
-
// when in create mode and changing altitude mode, this is triggered, but currentFeatures is empty array.
|
223
|
-
if (update.altitudeMode === 'absolute' && features?.length) {
|
224
|
-
await editorManager.placeCurrentFeaturesOnTerrain();
|
225
|
-
}
|
226
|
-
|
207
|
+
function updateFeatureProperties(update) {
|
227
208
|
layer.value.vectorProperties.setValuesForFeatures(
|
228
209
|
update,
|
229
210
|
features.value,
|
@@ -297,7 +278,9 @@
|
|
297
278
|
function getAllowedModifyActions() {
|
298
279
|
const allowedModes = getAllowedEditorTransformationModes(
|
299
280
|
currentGeometryTypes.value.types,
|
300
|
-
|
281
|
+
features.value,
|
282
|
+
layer.value,
|
283
|
+
is3D.value,
|
301
284
|
);
|
302
285
|
|
303
286
|
const allowedActions = allowedModes.map((mode) => {
|
@@ -1,10 +1,12 @@
|
|
1
1
|
/**
|
2
2
|
* Returns the allowed transformation modes for the provided geometry types and number of features. Rotate is e.g. not allowed for a single point but for multiple points.
|
3
3
|
* @param {Set<GeometryType>} geometryTypes A set with all geometry types of the features.
|
4
|
-
* @param {
|
4
|
+
* @param {import("ol").Feature[]} features The features currently being edited.
|
5
|
+
* @param {import("@vcmap/core").VectorLayer} layer The number of the features.
|
6
|
+
* @param {boolean} is3D if the current map is 3D
|
5
7
|
* @returns {Array<TransformationMode>} The allowed transformation modes.
|
6
8
|
*/
|
7
|
-
export function getAllowedEditorTransformationModes(geometryTypes: Set<GeometryType>,
|
9
|
+
export function getAllowedEditorTransformationModes(geometryTypes: Set<GeometryType>, features: import("ol").Feature[], layer: import("@vcmap/core").VectorLayer, is3D?: boolean): Array<TransformationMode>;
|
8
10
|
export namespace EditorTransformationIcons {
|
9
11
|
let translate: string;
|
10
12
|
let rotate: string;
|
@@ -41,7 +43,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
41
43
|
availableModifyActions: import("vue").ShallowRef<never[]>;
|
42
44
|
availableVectorProperties: import("vue").ShallowRef<never[]>;
|
43
45
|
is3D: import("vue").Ref<boolean>;
|
44
|
-
updateFeatureProperties: (update: import("@vcmap/core").VectorPropertiesOptions) =>
|
46
|
+
updateFeatureProperties: (update: import("@vcmap/core").VectorPropertiesOptions) => void;
|
45
47
|
defaultVectorProperties: import("@vcmap/core", { with: { "resolution-mode": "import" } }).VectorPropertiesOptions;
|
46
48
|
}, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
47
49
|
allowedVectorProperties: {
|