@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.
Files changed (282) hide show
  1. package/build/buildTypes.js +9 -5
  2. package/config/base.config.json +8 -8
  3. package/config/dev.config.json +4 -0
  4. package/config/projects.config.json +2 -1
  5. package/config/theming.config.json +68 -0
  6. package/config/www.config.json +31 -30
  7. package/dist/assets/cesium/Workers/{chunk-LUYI3XCB.js → chunk-2LOWCAMW.js} +13 -13
  8. package/dist/assets/cesium/Workers/{chunk-V7WJDCPA.js → chunk-2PTKXHJB.js} +10 -10
  9. package/dist/assets/cesium/Workers/{chunk-YFVI4SQI.js → chunk-3HQMMUPU.js} +1 -1
  10. package/dist/assets/cesium/Workers/{chunk-XGI4FRXF.js → chunk-3IFRSGEY.js} +9 -9
  11. package/dist/assets/cesium/Workers/{chunk-4RJH3H6D.js → chunk-44QAAS4P.js} +7 -7
  12. package/dist/assets/cesium/Workers/{chunk-4EW3HFFI.js → chunk-56EDBCGT.js} +10 -10
  13. package/dist/assets/cesium/Workers/{chunk-PRKEY4QK.js → chunk-57H6I3SV.js} +5 -5
  14. package/dist/assets/cesium/Workers/{chunk-X67EJ6X6.js → chunk-6SQMLVGV.js} +54 -7
  15. package/dist/assets/cesium/Workers/{chunk-RRLGJV3Q.js → chunk-7YIOHQWH.js} +13 -13
  16. package/dist/assets/cesium/Workers/{chunk-G6346EDR.js → chunk-7ZZ5LMZY.js} +16 -15
  17. package/dist/assets/cesium/Workers/{chunk-YFYPR4MW.js → chunk-BVKITG4N.js} +7 -7
  18. package/dist/assets/cesium/Workers/{chunk-N5MIFVXJ.js → chunk-C3EQ27WF.js} +6 -6
  19. package/dist/assets/cesium/Workers/{chunk-TLGODPEV.js → chunk-C4WPMOKT.js} +6 -5
  20. package/dist/assets/cesium/Workers/{chunk-DTACCQDR.js → chunk-EDLRS3AW.js} +6 -6
  21. package/dist/assets/cesium/Workers/{chunk-EVU2UNBD.js → chunk-EJVGYGLF.js} +7 -7
  22. package/dist/assets/cesium/Workers/{chunk-FYYT5EVH.js → chunk-FFLMY4TE.js} +5 -5
  23. package/dist/assets/cesium/Workers/{chunk-5OUTANXX.js → chunk-GBT7MJ6X.js} +1 -1
  24. package/dist/assets/cesium/Workers/{chunk-3DRPXHZ4.js → chunk-HJMNR3GC.js} +11 -11
  25. package/dist/assets/cesium/Workers/{chunk-IALQGTA2.js → chunk-HP5XLODI.js} +6 -6
  26. package/dist/assets/cesium/Workers/{chunk-DR7LK6PG.js → chunk-IBRIWOCM.js} +13 -13
  27. package/dist/assets/cesium/Workers/{chunk-WMVCLETM.js → chunk-IZGUQO6Q.js} +13 -13
  28. package/dist/assets/cesium/Workers/{chunk-T6TZXGG5.js → chunk-IZJ42N4W.js} +17 -17
  29. package/dist/assets/cesium/Workers/{chunk-FZDKIUDT.js → chunk-JBSKHTNX.js} +4 -4
  30. package/dist/assets/cesium/Workers/{chunk-S4VTLNAJ.js → chunk-JISPSEF3.js} +4 -4
  31. package/dist/assets/cesium/Workers/{chunk-KNMGSIIN.js → chunk-JSQJDZI4.js} +6 -6
  32. package/dist/assets/cesium/Workers/{chunk-LMTN7R7M.js → chunk-JXVLNVXC.js} +7 -7
  33. package/dist/assets/cesium/Workers/{chunk-A5C2A5O5.js → chunk-KHZNBFOH.js} +7 -7
  34. package/dist/assets/cesium/Workers/{chunk-PIOKSAZH.js → chunk-L5GODJAR.js} +14 -14
  35. package/dist/assets/cesium/Workers/{chunk-Q7PM4W34.js → chunk-LJ2JQHJT.js} +12 -7
  36. package/dist/assets/cesium/Workers/{chunk-D6PDWQXW.js → chunk-LLAF3CPH.js} +2 -2
  37. package/dist/assets/cesium/Workers/{chunk-H7PSTL64.js → chunk-M24KHENR.js} +2 -2
  38. package/dist/assets/cesium/Workers/{chunk-I67V66MN.js → chunk-NDDI2LWR.js} +6 -6
  39. package/dist/assets/cesium/Workers/{chunk-FSXNF76Y.js → chunk-NGZJIN5Z.js} +4 -4
  40. package/dist/assets/cesium/Workers/{chunk-UMX265HW.js → chunk-O72GZTSE.js} +2 -2
  41. package/dist/assets/cesium/Workers/{chunk-WOA6WSHH.js → chunk-OPP2SKMA.js} +12 -12
  42. package/dist/assets/cesium/Workers/{chunk-VD6G7UPU.js → chunk-P6TRGU3S.js} +2 -2
  43. package/dist/assets/cesium/Workers/{chunk-QLC66ZRL.js → chunk-QN6TBED4.js} +11 -11
  44. package/dist/assets/cesium/Workers/{chunk-O7OUBDMZ.js → chunk-QQOZO7KO.js} +7 -7
  45. package/dist/assets/cesium/Workers/{chunk-AGTH5JMJ.js → chunk-RJM36CNY.js} +6 -6
  46. package/dist/assets/cesium/Workers/{chunk-UC566ISB.js → chunk-RTJKHZWU.js} +6 -6
  47. package/dist/assets/cesium/Workers/{chunk-L4XQPD6P.js → chunk-TI3TRKIC.js} +423 -448
  48. package/dist/assets/cesium/Workers/{chunk-3GI7DWF7.js → chunk-TK5IIG2F.js} +4 -4
  49. package/dist/assets/cesium/Workers/{chunk-6DH5PLFD.js → chunk-U5HSOKPQ.js} +1 -1
  50. package/dist/assets/cesium/Workers/{chunk-BPY4HDAK.js → chunk-WGDFYAGC.js} +4 -4
  51. package/dist/assets/cesium/Workers/{chunk-SJC5PRDX.js → chunk-X7IQYYHF.js} +2 -2
  52. package/dist/assets/cesium/Workers/{chunk-4OX4RYLB.js → chunk-XIUSRWL6.js} +9 -5
  53. package/dist/assets/cesium/Workers/{chunk-S2UEXF6T.js → chunk-XWOUPGUF.js} +1 -1
  54. package/dist/assets/cesium/Workers/{chunk-F7IEM66T.js → chunk-YCDZX5LS.js} +1 -1
  55. package/dist/assets/cesium/Workers/{chunk-AVFIYUKX.js → chunk-YK3QIKY7.js} +9 -9
  56. package/dist/assets/cesium/Workers/{chunk-BAJAVGUF.js → chunk-YSIJTJ7N.js} +5 -5
  57. package/dist/assets/cesium/Workers/{chunk-6DXIYFX3.js → chunk-Z2QP3CXW.js} +2 -2
  58. package/dist/assets/cesium/Workers/{chunk-P24I5VUS.js → chunk-ZVUUPJEM.js} +17 -17
  59. package/dist/assets/cesium/Workers/combineGeometry.js +22 -22
  60. package/dist/assets/cesium/Workers/createBoxGeometry.js +16 -16
  61. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +14 -14
  62. package/dist/assets/cesium/Workers/createCircleGeometry.js +24 -24
  63. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +17 -17
  64. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +31 -31
  65. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +29 -29
  66. package/dist/assets/cesium/Workers/createCorridorGeometry.js +27 -27
  67. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +26 -26
  68. package/dist/assets/cesium/Workers/createCylinderGeometry.js +18 -18
  69. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +16 -16
  70. package/dist/assets/cesium/Workers/createEllipseGeometry.js +24 -24
  71. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +17 -17
  72. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +17 -17
  73. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +16 -16
  74. package/dist/assets/cesium/Workers/createFrustumGeometry.js +16 -16
  75. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +16 -16
  76. package/dist/assets/cesium/Workers/createGeometry.js +22 -22
  77. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +20 -20
  78. package/dist/assets/cesium/Workers/createPlaneGeometry.js +14 -14
  79. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +13 -13
  80. package/dist/assets/cesium/Workers/createPolygonGeometry.js +30 -30
  81. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +28 -28
  82. package/dist/assets/cesium/Workers/createPolylineGeometry.js +23 -23
  83. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +29 -29
  84. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +25 -25
  85. package/dist/assets/cesium/Workers/createRectangleGeometry.js +25 -25
  86. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +18 -18
  87. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +21 -21
  88. package/dist/assets/cesium/Workers/createSphereGeometry.js +17 -17
  89. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +16 -16
  90. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +3 -3
  91. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +13 -13
  92. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +22 -22
  93. package/dist/assets/cesium/Workers/createVectorTilePoints.js +12 -12
  94. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +20 -20
  95. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +13 -13
  96. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +20 -20
  97. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +24 -20
  98. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +17 -17
  99. package/dist/assets/cesium/Workers/createWallGeometry.js +22 -22
  100. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +21 -21
  101. package/dist/assets/cesium/Workers/decodeDraco.js +11 -11
  102. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +28 -5
  103. package/dist/assets/cesium/Workers/decodeI3S.js +10 -10
  104. package/dist/assets/cesium/Workers/transcodeKTX2.js +19 -18
  105. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +1 -1
  106. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +20 -20
  107. package/dist/assets/{cesium-126f111a.js → cesium-2afc3568.js} +136600 -136700
  108. package/dist/assets/cesium.js +1 -1
  109. package/dist/assets/{core-1c8b8674.js → core-3fd82bc2.js} +8384 -7554
  110. package/dist/assets/core.js +1 -1
  111. package/dist/assets/{ol-27f9b3f3.js → ol-edf7bfb3.js} +2246 -2248
  112. package/dist/assets/ol.js +1 -1
  113. package/dist/assets/ui-c6eb55a5.css +1 -0
  114. package/dist/assets/{ui-7214428e.js → ui-c6eb55a5.js} +8687 -8464
  115. package/dist/assets/ui.js +1 -1
  116. package/dist/assets/vue.js +1 -1
  117. package/dist/assets/{vuetify-88a2fabe.css → vuetify-c3b6c9b3.css} +1 -1
  118. package/dist/assets/{vuetify-88a2fabe.js → vuetify-c3b6c9b3.js} +2375 -2369
  119. package/dist/assets/vuetify.js +1 -1
  120. package/index.d.ts +22 -10
  121. package/index.js +9 -3
  122. package/package.json +4 -4
  123. package/plugins/@vcmap-show-case/custom-icons-example/README.md +3 -0
  124. package/plugins/@vcmap-show-case/custom-icons-example/assets/imageExample.png +0 -0
  125. package/plugins/@vcmap-show-case/custom-icons-example/assets/svgExample.svg +1 -0
  126. package/plugins/@vcmap-show-case/custom-icons-example/package.json +5 -0
  127. package/plugins/@vcmap-show-case/custom-icons-example/src/CustomIconsExample.vue +90 -0
  128. package/plugins/@vcmap-show-case/custom-icons-example/src/index.js +45 -0
  129. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +2 -2
  130. package/plugins/@vcmap-show-case/plugin-editors/src/PluginEditors.vue +11 -7
  131. package/plugins/@vcmap-show-case/project-selector/src/ModulesListComponent.vue +1 -1
  132. package/plugins/@vcmap-show-case/theming-example/README.md +3 -0
  133. package/plugins/@vcmap-show-case/theming-example/package.json +5 -0
  134. package/plugins/@vcmap-show-case/theming-example/src/ThemingExample.vue +116 -0
  135. package/plugins/@vcmap-show-case/theming-example/src/index.js +53 -0
  136. package/plugins/@vcmap-show-case/vector-properties-example/src/GeometrySettings.vue +420 -0
  137. package/plugins/@vcmap-show-case/vector-properties-example/src/LayoutHandler.vue +97 -0
  138. package/plugins/@vcmap-show-case/vector-properties-example/src/TerrainSettings.vue +90 -0
  139. package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +61 -70
  140. package/plugins/@vcmap-show-case/vector-properties-example/src/index.js +34 -1
  141. package/plugins/@vcmap-show-case/vector-properties-example/src/lib.js +294 -0
  142. package/plugins/package.json +5 -1
  143. package/src/actions/StyleSelector.vue +35 -19
  144. package/src/actions/StyleSelector.vue.d.ts +5 -5
  145. package/src/actions/actionHelper.d.ts +4 -11
  146. package/src/actions/actionHelper.js +2 -5
  147. package/src/actions/listActions.d.ts +2 -2
  148. package/src/application/VcsApp.vue +20 -26
  149. package/src/application/VcsApp.vue.d.ts +5 -1
  150. package/src/application/VcsAttributionsFooter.vue +20 -11
  151. package/src/application/VcsAttributionsFooter.vue.d.ts +1 -1
  152. package/src/application/VcsContainer.vue +2 -2
  153. package/src/application/VcsContainer.vue.d.ts +5 -1
  154. package/src/application/VcsNavbar.vue +9 -1
  155. package/src/application/VcsNavbar.vue.d.ts +1 -0
  156. package/src/application/VcsSplashScreen.vue +11 -2
  157. package/src/application/VcsTextPageFooter.vue +4 -4
  158. package/src/application/attributionsHelper.d.ts +20 -22
  159. package/src/application/attributionsHelper.js +4 -4
  160. package/src/callback/vcsCallback.d.ts +2 -2
  161. package/src/callback/vcsCallback.js +1 -1
  162. package/src/components/buttons/VcsActionButtonList.vue +2 -3
  163. package/src/components/buttons/VcsButton.vue +2 -4
  164. package/src/components/buttons/VcsButton.vue.d.ts +1 -1
  165. package/src/components/buttons/VcsFormButton.vue +4 -4
  166. package/src/components/buttons/VcsToolButton.vue +4 -2
  167. package/src/components/buttons/VcsToolButton.vue.d.ts +2 -2
  168. package/src/components/composables.d.ts +5 -0
  169. package/src/components/composables.js +79 -9
  170. package/src/components/extent/VcsExtent.vue +10 -6
  171. package/src/components/extent/VcsExtent.vue.d.ts +1 -0
  172. package/src/components/flight/VcsFlightComponent.vue +13 -13
  173. package/src/components/flight/VcsFlightComponent.vue.d.ts +1 -0
  174. package/src/components/form-inputs-controls/VcsCheckbox.vue +8 -3
  175. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +3 -8
  176. package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +0 -1
  177. package/src/components/form-inputs-controls/VcsCoordinate.vue +1 -2
  178. package/src/components/form-inputs-controls/VcsFileInput.vue +1 -1
  179. package/src/components/form-inputs-controls/VcsLabel.vue +32 -9
  180. package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +2 -0
  181. package/src/components/form-inputs-controls/VcsRadio.vue +8 -6
  182. package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +1 -0
  183. package/src/components/form-inputs-controls/VcsSelect.vue +2 -2
  184. package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +2 -2
  185. package/src/components/form-inputs-controls/VcsSlider.vue +5 -5
  186. package/src/components/form-inputs-controls/VcsTextArea.vue +1 -1
  187. package/src/components/form-inputs-controls/VcsTextField.vue +10 -1
  188. package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +2 -1
  189. package/src/components/form-inputs-controls/VcsWizard.vue +3 -3
  190. package/src/components/form-inputs-controls/VcsWizardStep.vue +5 -1
  191. package/src/components/form-inputs-controls/vcsTextField.scss +7 -1
  192. package/src/components/form-output/VcsFormattedNumber.vue +1 -1
  193. package/src/components/import/VcsImportComponent.vue +7 -4
  194. package/src/components/import/VcsImportComponent.vue.d.ts +1 -1
  195. package/src/components/lists/VcsActionList.vue +2 -6
  196. package/src/components/lists/VcsListItemComponent.vue +20 -10
  197. package/src/components/lists/VcsListItemComponent.vue.d.ts +11 -1
  198. package/src/components/lists/VcsTreeview.vue +75 -11
  199. package/src/components/lists/VcsTreeview.vue.d.ts +12 -0
  200. package/src/components/lists/VcsTreeviewSearchbar.vue +14 -3
  201. package/src/components/lists/VcsTreeviewSearchbar.vue.d.ts +3 -1
  202. package/src/components/lists/VcsTreeviewTitle.vue +40 -0
  203. package/src/components/modelHelper.d.ts +10 -8
  204. package/src/components/modelHelper.js +8 -6
  205. package/src/components/notification/VcsHelp.vue +6 -7
  206. package/src/components/notification/VcsHelp.vue.d.ts +0 -9
  207. package/src/components/plugins/AbstractConfigEditor.vue +1 -22
  208. package/src/components/plugins/AbstractConfigEditor.vue.d.ts +6 -29
  209. package/src/components/section/VcsExpansionPanel.vue +9 -3
  210. package/src/components/section/VcsExpansionPanel.vue.d.ts +2 -2
  211. package/src/components/section/VcsFormSection.vue +6 -6
  212. package/src/components/section/VcsFormSection.vue.d.ts +2 -2
  213. package/src/components/style/VcsImageSelector.vue +14 -6
  214. package/src/components/style/VcsImageSelector.vue.d.ts +1 -0
  215. package/src/components/style/VcsStrokeSelector.vue +5 -2
  216. package/src/components/style/VcsStrokeSelector.vue.d.ts +1 -0
  217. package/src/components/style/VcsTextMenu.vue +2 -2
  218. package/src/components/tables/VcsDataTable.vue +14 -10
  219. package/src/components/tables/VcsDataTable.vue.d.ts +1 -0
  220. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +17 -34
  221. package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +5 -3
  222. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +78 -43
  223. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +4 -2
  224. package/src/components/viewpoint/VcsViewpointComponent.vue +12 -9
  225. package/src/components/viewpoint/VcsViewpointComponent.vue.d.ts +1 -0
  226. package/src/contentTree/contentTreeItem.d.ts +2 -2
  227. package/src/contentTree/contentTreeItem.js +1 -1
  228. package/src/contentTree/layerContentTreeItem.d.ts +8 -5
  229. package/src/contentTree/layerContentTreeItem.js +48 -34
  230. package/src/contentTree/layerGroupContentTreeItem.d.ts +7 -1
  231. package/src/contentTree/layerGroupContentTreeItem.js +22 -3
  232. package/src/featureInfo/BalloonComponent.vue +21 -13
  233. package/src/featureInfo/BalloonComponent.vue.d.ts +1 -0
  234. package/src/featureInfo/abstractFeatureInfoView.d.ts +4 -4
  235. package/src/featureInfo/abstractFeatureInfoView.js +4 -4
  236. package/src/featureInfo/balloonHelper.js +1 -1
  237. package/src/featureInfo/featureInfo.d.ts +2 -2
  238. package/src/featureInfo/featureInfo.js +1 -1
  239. package/src/i18n/de.d.ts +5 -0
  240. package/src/i18n/de.js +7 -2
  241. package/src/i18n/en.d.ts +5 -0
  242. package/src/i18n/en.js +6 -1
  243. package/src/i18n/i18nCollection.d.ts +9 -15
  244. package/src/i18n/i18nCollection.js +3 -3
  245. package/src/legend/VcsLegend.vue +6 -2
  246. package/src/legend/VcsLegend.vue.d.ts +1 -0
  247. package/src/manager/collectionManager/CollectionComponentList.vue +1 -1
  248. package/src/manager/collectionManager/categoryManager.d.ts +1 -1
  249. package/src/manager/collectionManager/collectionComponentClass.d.ts +2 -2
  250. package/src/manager/collectionManager/collectionComponentClass.js +4 -4
  251. package/src/manager/collectionManager/collectionManager.d.ts +1 -1
  252. package/src/manager/toolbox/GroupToolboxComponent.vue +8 -6
  253. package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +1 -1
  254. package/src/manager/toolbox/SelectToolboxComponent.vue +8 -6
  255. package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +1 -1
  256. package/src/manager/toolbox/{ToolboxManager.vue → ToolboxManagerComponent.vue} +8 -5
  257. package/src/manager/toolbox/{ToolboxManager.vue.d.ts → ToolboxManagerComponent.vue.d.ts} +1 -1
  258. package/src/manager/window/WindowComponentHeader.vue +6 -3
  259. package/src/manager/window/WindowComponentHeader.vue.d.ts +1 -0
  260. package/src/manager/window/windowManager.d.ts +6 -6
  261. package/src/manager/window/windowManager.js +3 -3
  262. package/src/navigation/OrientationToolsButton.vue +2 -4
  263. package/src/navigation/TiltSlider.vue +3 -5
  264. package/src/navigation/locatorHelper.js +3 -21
  265. package/src/search/SearchComponent.vue +8 -6
  266. package/src/search/SearchComponent.vue.d.ts +1 -1
  267. package/src/styles/vcsList.scss +1 -1
  268. package/src/uiConfig.d.ts +12 -3
  269. package/src/uiConfig.js +2 -1
  270. package/src/vcsUiApp.d.ts +39 -53
  271. package/src/vcsUiApp.js +30 -24
  272. package/src/vuePlugins/vuetify.d.ts +88 -62
  273. package/src/vuePlugins/vuetify.js +116 -20
  274. package/dist/assets/ui-7214428e.css +0 -1
  275. package/plugins/@vcmap-show-case/theme-changer/README.md +0 -23
  276. package/plugins/@vcmap-show-case/theme-changer/config.json +0 -69
  277. package/plugins/@vcmap-show-case/theme-changer/package.json +0 -11
  278. package/plugins/@vcmap-show-case/theme-changer/src/ThemeChangerComponent.vue +0 -120
  279. package/plugins/@vcmap-show-case/theme-changer/src/index.js +0 -108
  280. package/src/components/lists/VcsTreeviewLeaf.vue +0 -92
  281. /package/dist/assets/{vue-c78a5f76.js → vue-aefad438.js} +0 -0
  282. /package/src/components/lists/{VcsTreeviewLeaf.vue.d.ts → VcsTreeviewTitle.vue.d.ts} +0 -0
@@ -9,50 +9,44 @@
9
9
  <template v-if="show3DProperties">
10
10
  <v-row v-if="visibleProperties.has('altitudeMode')" no-gutters>
11
11
  <v-col>
12
- <VcsLabel html-for="vp-altitude-mode">{{
12
+ <VcsLabel :html-for="`${cid}-vp-altitude-mode`">{{
13
13
  $t('components.vectorProperties.altitudeMode')
14
14
  }}</VcsLabel>
15
15
  </v-col>
16
16
  <v-col>
17
17
  <VcsSelect
18
- id="vp-altitude-mode"
18
+ :id="`${cid}-vp-altitude-mode`"
19
19
  :items="availableAltitudeModes"
20
20
  v-model="localValue.altitudeMode"
21
21
  />
22
22
  </v-col>
23
23
  </v-row>
24
- <v-row
25
- v-if="
26
- visibleProperties.has('heightAboveGround') &&
27
- localValue.altitudeMode === 'relativeToGround'
28
- "
29
- no-gutters
30
- >
24
+ <v-row v-if="visibleProperties.has('heightAboveGround')" no-gutters>
31
25
  <v-col>
32
- <VcsLabel html-for="vp-height-above-ground">{{
26
+ <VcsLabel :html-for="`${cid}-vp-height-above-ground`">{{
33
27
  $t('components.vectorProperties.heightAboveGround')
34
28
  }}</VcsLabel>
35
29
  </v-col>
36
30
  <v-col>
37
31
  <VcsTextField
38
- id="vp-height-above-ground"
32
+ :id="`${cid}-vp-height-above-ground`"
39
33
  v-model.number="localValue.heightAboveGround"
40
34
  :hide-spin-buttons="true"
41
35
  type="number"
42
36
  unit="m"
43
- placeholder="0"
37
+ clearable
44
38
  />
45
39
  </v-col>
46
40
  </v-row>
47
41
  <v-row v-if="visibleProperties.has('groundLevel')" no-gutters>
48
42
  <v-col>
49
- <VcsLabel html-for="vp-ground-level">{{
43
+ <VcsLabel :html-for="`${cid}-vp-ground-level`">{{
50
44
  $t('components.vectorProperties.groundLevel')
51
45
  }}</VcsLabel>
52
46
  </v-col>
53
47
  <v-col>
54
48
  <VcsTextField
55
- id="vp-ground-level"
49
+ :id="`${cid}-vp-ground-level`"
56
50
  v-model.number="localValue.groundLevel"
57
51
  :hide-spin-buttons="true"
58
52
  type="number"
@@ -142,13 +136,13 @@
142
136
  no-gutters
143
137
  >
144
138
  <v-col>
145
- <VcsLabel html-for="vp-classification-type">
139
+ <VcsLabel :html-for="`${cid}-vp-classification-type`">
146
140
  {{ $t('components.vectorProperties.classificationType') }}
147
141
  </VcsLabel>
148
142
  </v-col>
149
143
  <v-col>
150
144
  <VcsSelect
151
- id="vp-classification-type"
145
+ :id="`${cid}-vp-classification-type`"
152
146
  :items="availableClassificationTypes"
153
147
  v-model="classificationType"
154
148
  />
@@ -186,7 +180,7 @@
186
180
  <v-row v-if="visibleProperties.has('extrudedHeight')" no-gutters>
187
181
  <v-col>
188
182
  <VcsLabel
189
- html-for="vp-extruded-height"
183
+ :html-for="`${cid}-vp-extruded-height`"
190
184
  :class="{
191
185
  'px-4':
192
186
  visibleProperties.has('storeysAboveGround') ||
@@ -197,7 +191,7 @@
197
191
  </v-col>
198
192
  <v-col>
199
193
  <VcsTextField
200
- id="vp-extruded-height"
194
+ :id="`${cid}-vp-extruded-height`"
201
195
  v-model.number="localValue.extrudedHeight"
202
196
  :hide-spin-buttons="true"
203
197
  type="number"
@@ -212,13 +206,13 @@
212
206
  </v-row>
213
207
  <v-row v-if="visibleProperties.has('storeysAboveGround')" no-gutters>
214
208
  <v-col>
215
- <VcsLabel html-for="vp-storeys-above" class="px-4">{{
209
+ <VcsLabel :html-for="`${cid}-vp-storeys-above`" class="px-4">{{
216
210
  $t('components.vectorProperties.storeys')
217
211
  }}</VcsLabel>
218
212
  </v-col>
219
213
  <v-col>
220
214
  <VcsTextField
221
- id="vp-storeys-above"
215
+ :id="`${cid}-vp-storeys-above`"
222
216
  v-model.number="localValue.storeysAboveGround"
223
217
  :hide-spin-buttons="true"
224
218
  type="number"
@@ -235,13 +229,15 @@
235
229
  no-gutters
236
230
  >
237
231
  <v-col>
238
- <VcsLabel :html-for="'vp-storey-heights-above'" class="px-4">{{
239
- $t('components.vectorProperties.storeyHeights')
240
- }}</VcsLabel>
232
+ <VcsLabel
233
+ :html-for="`${cid}-vp-storey-heights-above`"
234
+ class="px-4"
235
+ >{{ $t('components.vectorProperties.storeyHeights') }}</VcsLabel
236
+ >
241
237
  </v-col>
242
238
  <v-col>
243
239
  <VcsChipArrayInput
244
- id="vp-storey-heights-above"
240
+ :id="`${cid}-vp-storey-heights-above`"
245
241
  column
246
242
  type="number"
247
243
  v-model="storeyHeights.storeyHeightsAboveGround.value"
@@ -266,7 +262,7 @@
266
262
  <v-row v-if="visibleProperties.has('skirt')" no-gutters>
267
263
  <v-col>
268
264
  <VcsLabel
269
- html-for="vp-skirt"
265
+ :html-for="`${cid}-vp-skirt`"
270
266
  :class="{
271
267
  'px-4':
272
268
  visibleProperties.has('storeysBelowGround') ||
@@ -277,7 +273,7 @@
277
273
  </v-col>
278
274
  <v-col>
279
275
  <VcsTextField
280
- id="vp-skirt"
276
+ :id="`${cid}-vp-skirt`"
281
277
  v-model.number="localValue.skirt"
282
278
  :hide-spin-buttons="true"
283
279
  type="number"
@@ -292,13 +288,13 @@
292
288
  </v-row>
293
289
  <v-row v-if="visibleProperties.has('storeysBelowGround')" no-gutters>
294
290
  <v-col>
295
- <VcsLabel html-for="vp-storeys-below" class="px-4">{{
291
+ <VcsLabel :html-for="`${cid}-vp-storeys-below`" class="px-4">{{
296
292
  $t('components.vectorProperties.storeys')
297
293
  }}</VcsLabel>
298
294
  </v-col>
299
295
  <v-col>
300
296
  <VcsTextField
301
- id="vp-storeys-below"
297
+ :id="`${cid}-vp-storeys-below`"
302
298
  v-model.number="localValue.storeysBelowGround"
303
299
  :hide-spin-buttons="true"
304
300
  type="number"
@@ -315,13 +311,15 @@
315
311
  no-gutters
316
312
  >
317
313
  <v-col>
318
- <VcsLabel :html-for="'vp-storey-heights-below'" class="px-4">{{
319
- $t('components.vectorProperties.storeyHeights')
320
- }}</VcsLabel>
314
+ <VcsLabel
315
+ :html-for="`${cid}-vp-storey-heights-below`"
316
+ class="px-4"
317
+ >{{ $t('components.vectorProperties.storeyHeights') }}</VcsLabel
318
+ >
321
319
  </v-col>
322
320
  <v-col>
323
321
  <VcsChipArrayInput
324
- :id="'vp-storey-heights-below'"
322
+ :id="`${cid}-vp-storey-heights-below`"
325
323
  column
326
324
  type="number"
327
325
  v-model="storeyHeights.storeyHeightsBelowGround.value"
@@ -341,6 +339,7 @@
341
339
  'modelHeading',
342
340
  'modelPitch',
343
341
  'modelRoll',
342
+ 'modelAutoScale',
344
343
  'baseUrl',
345
344
  ].some((prop) => visibleProperties.has(prop))
346
345
  "
@@ -348,13 +347,13 @@
348
347
  <v-container class="px-1 py-0">
349
348
  <v-row v-if="visibleProperties.has('modelUrl')" no-gutters>
350
349
  <v-col>
351
- <VcsLabel html-for="vp-model-url">
350
+ <VcsLabel :html-for="`${cid}-vp-model-url`">
352
351
  {{ $t('components.vectorProperties.modelUrl') }}
353
352
  </VcsLabel>
354
353
  </v-col>
355
354
  <v-col>
356
355
  <VcsTextField
357
- id="vp-model-url"
356
+ :id="`${cid}-vp-model-url`"
358
357
  v-model="localValue.modelUrl"
359
358
  clearable
360
359
  :placeholder="'modelUrl' in localValue ? 'example.glb' : ''"
@@ -384,12 +383,13 @@
384
383
  </template>
385
384
  <v-row v-if="visibleProperties.has('modelHeading')" no-gutters>
386
385
  <v-col cols="6">
387
- <VcsLabel>{{
386
+ <VcsLabel :html-for="`${cid}-vp-model-heading`">{{
388
387
  $t('components.vectorProperties.modelHeading')
389
388
  }}</VcsLabel>
390
389
  </v-col>
391
390
  <v-col>
392
391
  <VcsTextField
392
+ :id="`${cid}-vp-model-heading`"
393
393
  v-model.number="localValue.modelHeading"
394
394
  :hide-spin-buttons="true"
395
395
  type="number"
@@ -401,12 +401,13 @@
401
401
  </v-row>
402
402
  <v-row v-if="visibleProperties.has('modelPitch')" no-gutters>
403
403
  <v-col cols="6">
404
- <VcsLabel>{{
404
+ <VcsLabel :html-for="`${cid}-vp-model-pitch`">{{
405
405
  $t('components.vectorProperties.modelPitch')
406
406
  }}</VcsLabel>
407
407
  </v-col>
408
408
  <v-col>
409
409
  <VcsTextField
410
+ :id="`${cid}-vp-model-pitch`"
410
411
  v-model.number="localValue.modelPitch"
411
412
  :hide-spin-buttons="true"
412
413
  type="number"
@@ -418,12 +419,13 @@
418
419
  </v-row>
419
420
  <v-row v-if="visibleProperties.has('modelRoll')" no-gutters>
420
421
  <v-col cols="6">
421
- <VcsLabel>{{
422
+ <VcsLabel :html-for="`${cid}-vp-model-roll`">{{
422
423
  $t('components.vectorProperties.modelRoll')
423
424
  }}</VcsLabel>
424
425
  </v-col>
425
426
  <v-col>
426
427
  <VcsTextField
428
+ :id="`${cid}-vp-model-roll`"
427
429
  v-model.number="localValue.modelRoll"
428
430
  :hide-spin-buttons="true"
429
431
  type="number"
@@ -433,15 +435,25 @@
433
435
  />
434
436
  </v-col>
435
437
  </v-row>
438
+ <v-row v-if="visibleProperties.has('modelAutoScale')" no-gutters>
439
+ <v-col cols="6">
440
+ <VcsLabel>{{
441
+ $t('components.vectorProperties.modelAutoScale')
442
+ }}</VcsLabel>
443
+ </v-col>
444
+ <v-col>
445
+ <VcsCheckbox v-model="localValue.modelAutoScale" />
446
+ </v-col>
447
+ </v-row>
436
448
  <v-row v-if="visibleProperties.has('baseUrl')" no-gutters>
437
449
  <v-col>
438
- <VcsLabel html-for="vp-base-url">{{
450
+ <VcsLabel :html-for="`${cid}-vp-base-url`">{{
439
451
  $t('components.vectorProperties.baseUrl')
440
452
  }}</VcsLabel>
441
453
  </v-col>
442
454
  <v-col>
443
455
  <VcsTextField
444
- id="vp-base-url"
456
+ :id="`${cid}-vp-base-url`"
445
457
  clearable
446
458
  v-model="localValue.baseUrl"
447
459
  :placeholder="'baseUrl' in localValue ? 'path/to/files/' : ''"
@@ -466,6 +478,7 @@
466
478
  import VcsSelect from '../form-inputs-controls/VcsSelect.vue';
467
479
  import VcsCheckbox from '../form-inputs-controls/VcsCheckbox.vue';
468
480
  import VcsChipArrayInput from '../form-inputs-controls/VcsChipArrayInput.vue';
481
+ import { useComponentId } from '../composables.js';
469
482
 
470
483
  export const genericVectorProperties = [
471
484
  'altitudeMode',
@@ -486,6 +499,7 @@
486
499
  'modelHeading',
487
500
  'modelPitch',
488
501
  'modelRoll',
502
+ 'modelAutoScale',
489
503
  'baseUrl',
490
504
  ];
491
505
 
@@ -587,6 +601,14 @@
587
601
  value: 'clampToGround',
588
602
  title: 'components.vectorProperties.clampToGround',
589
603
  },
604
+ {
605
+ value: 'clampToTerrain',
606
+ title: 'components.vectorProperties.clampToTerrain',
607
+ },
608
+ {
609
+ value: 'clampTo3DTiles',
610
+ title: 'components.vectorProperties.clampTo3DTiles',
611
+ },
590
612
  {
591
613
  value: 'absolute',
592
614
  title: 'components.vectorProperties.absolute',
@@ -594,10 +616,20 @@
594
616
  ];
595
617
 
596
618
  if (visibleProperties.value.has('heightAboveGround')) {
597
- altitudeModes.push({
598
- value: 'relativeToGround',
599
- title: 'components.vectorProperties.relativeToGround',
600
- });
619
+ altitudeModes.push(
620
+ {
621
+ value: 'relativeToGround',
622
+ title: 'components.vectorProperties.relativeToGround',
623
+ },
624
+ {
625
+ value: 'relativeToTerrain',
626
+ title: 'components.vectorProperties.relativeToTerrain',
627
+ },
628
+ {
629
+ value: 'relativeTo3DTiles',
630
+ title: 'components.vectorProperties.relativeTo3DTiles',
631
+ },
632
+ );
601
633
  }
602
634
 
603
635
  return altitudeModes;
@@ -698,6 +730,8 @@
698
730
  : [],
699
731
  );
700
732
 
733
+ const cid = useComponentId();
734
+
701
735
  return {
702
736
  localValue,
703
737
  headerActions,
@@ -712,6 +746,7 @@
712
746
  storeyHeights,
713
747
  modelScale,
714
748
  dimensionsUpperCase,
749
+ cid,
715
750
  };
716
751
  },
717
752
  };
@@ -75,7 +75,7 @@ declare const _default: import("vue").DefineComponent<{
75
75
  toString: () => string;
76
76
  } | undefined;
77
77
  getEyeOffset: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => import("@vcmap-cesium/engine", { with: { "resolution-mode": "import" } }).Cartesian3 | undefined;
78
- heightAboveGround: number;
78
+ heightAboveGround: number | undefined;
79
79
  getHeightAboveGround: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => number;
80
80
  skirt: number;
81
81
  getSkirt: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => number;
@@ -106,7 +106,7 @@ declare const _default: import("vue").DefineComponent<{
106
106
  modelRoll: number;
107
107
  getModelRoll: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => number;
108
108
  modelOptions: Record<string, unknown> | undefined;
109
- getModelOptions: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => Record<string, unknown>;
109
+ getModelOptions: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => Record<string, unknown> | undefined;
110
110
  modelAutoScale: boolean;
111
111
  getModelAutoScale: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => boolean;
112
112
  baseUrl: string | undefined;
@@ -210,6 +210,7 @@ declare const _default: import("vue").DefineComponent<{
210
210
  getPrimitiveOptions: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => import("@vcmap/core", { with: { "resolution-mode": "import" } }).VectorPropertiesPrimitiveOptions<import("@vcmap/core", { with: { "resolution-mode": "import" } }).PrimitiveOptionsType> | undefined;
211
211
  getPrimitive: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => import("@vcmap/core", { with: { "resolution-mode": "import" } }).VectorPropertiesPrimitive | null;
212
212
  getModel: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => import("@vcmap/core", { with: { "resolution-mode": "import" } }).VectorPropertiesModelOptions | null;
213
+ renderAs: (feature: import("ol/Feature.js", { with: { "resolution-mode": "import" } }).default<import("ol/geom.js", { with: { "resolution-mode": "import" } }).Geometry>) => "geometry" | "model" | "primitive";
213
214
  setVcsMeta: (vcsMeta: import("@vcmap/core", { with: { "resolution-mode": "import" } }).VcsMeta) => void;
214
215
  setValues: (options: import("@vcmap/core", { with: { "resolution-mode": "import" } }).VectorPropertiesOptions) => void;
215
216
  getValues: () => import("@vcmap/core", { with: { "resolution-mode": "import" } }).VectorPropertiesOptions;
@@ -241,6 +242,7 @@ declare const _default: import("vue").DefineComponent<{
241
242
  storeyHeights: import("vue").ComputedRef<{}>;
242
243
  modelScale: import("vue").ComputedRef<{}>;
243
244
  dimensionsUpperCase: string[];
245
+ cid: string;
244
246
  }, any, {}, {
245
247
  computed: typeof import("@vue/reactivity").computed;
246
248
  }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -9,13 +9,13 @@
9
9
  <v-container class="py-0 px-1">
10
10
  <v-row no-gutters v-if="!hideName">
11
11
  <v-col cols="6">
12
- <VcsLabel html-for="name" dense required>
12
+ <VcsLabel :html-for="`${cid}-name`" dense required>
13
13
  {{ $t('components.viewpoint.name') }}
14
14
  </VcsLabel>
15
15
  </v-col>
16
16
  <v-col>
17
17
  <VcsTextField
18
- id="name"
18
+ :id="`${cid}-name`"
19
19
  clearable
20
20
  v-model="localValue.name"
21
21
  :rules="nameRules"
@@ -24,13 +24,13 @@
24
24
  </v-row>
25
25
  <v-row no-gutters v-if="!hideTitle">
26
26
  <v-col cols="6">
27
- <VcsLabel html-for="title" dense>
27
+ <VcsLabel :html-for="`${cid}-title`" dense>
28
28
  {{ $t('components.viewpoint.title') }}
29
29
  </VcsLabel>
30
30
  </v-col>
31
31
  <v-col>
32
32
  <VcsTextField
33
- id="title"
33
+ :id="`${cid}-title`"
34
34
  clearable
35
35
  :placeholder="$t('components.viewpoint.titlePlaceholder')"
36
36
  v-model="title"
@@ -40,7 +40,6 @@
40
40
  <v-row no-gutters v-if="!hideAnimate">
41
41
  <v-col cols="6">
42
42
  <VcsCheckbox
43
- id="animate"
44
43
  label="components.viewpoint.animate"
45
44
  v-model="localValue.animate"
46
45
  />
@@ -48,7 +47,6 @@
48
47
  <v-col>
49
48
  <VcsTextField
50
49
  v-if="localValue.animate"
51
- id="duration"
52
50
  clearable
53
51
  :hide-spin-buttons="true"
54
52
  type="number"
@@ -102,12 +100,13 @@
102
100
  <template v-if="!isCesiumMap">
103
101
  <v-row no-gutters>
104
102
  <v-col>
105
- <VcsLabel html-for="distance" dense>
103
+ <VcsLabel :html-for="`${cid}-distance`" dense>
106
104
  {{ $t('components.viewpoint.distance') }}
107
105
  </VcsLabel>
108
106
  </v-col>
109
107
  <v-col>
110
108
  <VcsTextField
109
+ :id="`${cid}-distance`"
111
110
  :min="0"
112
111
  :step="100"
113
112
  prefix="d"
@@ -128,13 +127,13 @@
128
127
  <div v-for="key in ['heading', 'pitch', 'roll']" :key="key">
129
128
  <v-row no-gutters>
130
129
  <v-col cols="9">
131
- <VcsLabel :html-for="key" dense>
130
+ <VcsLabel :html-for="`${cid}-${key}`" dense>
132
131
  {{ $st(`components.viewpoint.${key}`) }}
133
132
  </VcsLabel>
134
133
  </v-col>
135
134
  <v-col cols="3">
136
135
  <VcsTextField
137
- :id="key"
136
+ :id="`${cid}-${key}`"
138
137
  :hide-spin-buttons="true"
139
138
  type="number"
140
139
  unit="°"
@@ -188,6 +187,7 @@
188
187
  import VcsCoordinate from '../form-inputs-controls/VcsCoordinate.vue';
189
188
  import VcsSlider from '../form-inputs-controls/VcsSlider.vue';
190
189
  import { useProxiedComplexModel } from '../modelHelper.js';
190
+ import { useComponentId } from '../composables.js';
191
191
 
192
192
  /**
193
193
  * Updates the localValue ref by keeping name and properties
@@ -489,6 +489,8 @@
489
489
  }
490
490
  }
491
491
 
492
+ const cid = useComponentId();
493
+
492
494
  return {
493
495
  isCesiumMap,
494
496
  localValue,
@@ -500,6 +502,7 @@
500
502
  hprSliderOptions,
501
503
  isFiniteNumber,
502
504
  isPositiveNumber,
505
+ cid,
503
506
  };
504
507
  },
505
508
  };
@@ -79,6 +79,7 @@ declare const _default: import("vue").DefineComponent<{
79
79
  };
80
80
  isFiniteNumber: typeof isFiniteNumber;
81
81
  isPositiveNumber: typeof isPositiveNumber;
82
+ cid: string;
82
83
  }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:modelValue"[], "update:modelValue", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
83
84
  modelValue: {
84
85
  type: ObjectConstructor;
@@ -1,7 +1,7 @@
1
1
  /**
2
- * @type {ClassRegistry<import("@vcmap/core").Ctor<typeof ContentTreeItem>>}
2
+ * @type {ClassRegistry<typeof ContentTreeItem>}
3
3
  */
4
- export const contentTreeClassRegistry: ClassRegistry<import("@vcmap/core").Ctor<typeof ContentTreeItem>>;
4
+ export const contentTreeClassRegistry: ClassRegistry<typeof ContentTreeItem>;
5
5
  export default ContentTreeItem;
6
6
  export type ContentTreeItemOptions = {
7
7
  type?: string | undefined;
@@ -47,7 +47,7 @@ import { executeCallbacks } from '../callback/vcsCallback.js';
47
47
  const actionWeightSymbol = Symbol('ActionWeight');
48
48
 
49
49
  /**
50
- * @type {ClassRegistry<import("@vcmap/core").Ctor<typeof ContentTreeItem>>}
50
+ * @type {ClassRegistry<typeof ContentTreeItem>}
51
51
  */
52
52
  export const contentTreeClassRegistry = new ClassRegistry();
53
53
 
@@ -11,6 +11,14 @@
11
11
  * @param {string|import("@vcmap/core").Viewpoint=} viewpoint
12
12
  */
13
13
  export function setViewpointAction(item: import("./contentTreeItem.js").default, app: import("@src/vcsUiApp.js").default, viewpoint?: (string | import("@vcmap/core").Viewpoint) | undefined): void;
14
+ /**
15
+ * @param {import("./contentTreeItem.js").default} item
16
+ * @param {import("@src/vcsUiApp.js").default} app
17
+ * @param {Array<Function>} listeners
18
+ * @param {Array<string>} layerNames
19
+ * @param {Array<string>=} availableStyles
20
+ */
21
+ export function setStyleAction(item: import("./contentTreeItem.js").default, app: import("@src/vcsUiApp.js").default, listeners: Array<Function>, layerNames: Array<string>, availableStyles?: Array<string> | undefined): void;
14
22
  /**
15
23
  * @param {import("@vcmap/core").Layer} layer
16
24
  * @returns {StateActionState}
@@ -51,11 +59,6 @@ declare class LayerContentTreeItem extends VcsObjectContentTreeItem<LayerContent
51
59
  * @private
52
60
  */
53
61
  private get _layer();
54
- /**
55
- * @param {Array<string>=} availableStyles
56
- * @private
57
- */
58
- private _setStyleAction;
59
62
  /**
60
63
  * @private
61
64
  */
@@ -43,6 +43,47 @@ export function setViewpointAction(item, app, viewpoint) {
43
43
  }
44
44
  }
45
45
 
46
+ /**
47
+ * @param {import("./contentTreeItem.js").default} item
48
+ * @param {import("@src/vcsUiApp.js").default} app
49
+ * @param {Array<Function>} listeners
50
+ * @param {Array<string>} layerNames
51
+ * @param {Array<string>=} availableStyles
52
+ */
53
+ export function setStyleAction(
54
+ item,
55
+ app,
56
+ listeners,
57
+ layerNames,
58
+ availableStyles,
59
+ ) {
60
+ const name = 'StyleSelector';
61
+ item.removeAction(name);
62
+ if (Array.isArray(availableStyles) && availableStyles.length > 0) {
63
+ const { action, destroy } = createModalAction(
64
+ {
65
+ name,
66
+ icon: '$vcsColorSwatch',
67
+ title: 'content.styleAction.title',
68
+ },
69
+ {
70
+ component,
71
+ position: {
72
+ width: 200,
73
+ },
74
+ props: reactive({
75
+ availableStyles: availableStyles.slice(),
76
+ layerNames: layerNames.slice(),
77
+ }),
78
+ },
79
+ app,
80
+ vcsAppSymbol,
81
+ );
82
+ item.addAction(action, 4);
83
+ listeners.push(destroy);
84
+ }
85
+ }
86
+
46
87
  /**
47
88
  * @param {import("@vcmap/core").Layer} layer
48
89
  * @returns {StateActionState}
@@ -101,38 +142,6 @@ class LayerContentTreeItem extends VcsObjectContentTreeItem {
101
142
  return this._app.layers.getByKey(this._layerName);
102
143
  }
103
144
 
104
- /**
105
- * @param {Array<string>=} availableStyles
106
- * @private
107
- */
108
- _setStyleAction(availableStyles) {
109
- const name = 'StyleSelector';
110
- this.removeAction(name);
111
- if (Array.isArray(availableStyles) && availableStyles.length > 0) {
112
- const { action, destroy } = createModalAction(
113
- {
114
- name,
115
- icon: '$vcsColorSwatch',
116
- title: 'content.styleAction.title',
117
- },
118
- {
119
- component,
120
- position: {
121
- width: 200,
122
- },
123
- props: reactive({
124
- availableStyles: availableStyles.slice(),
125
- layerName: this._layerName,
126
- }),
127
- },
128
- this._app,
129
- vcsAppSymbol,
130
- );
131
- this.addAction(action, 4);
132
- this._listeners.push(destroy);
133
- }
134
- }
135
-
136
145
  /**
137
146
  * @private
138
147
  */
@@ -165,8 +174,13 @@ class LayerContentTreeItem extends VcsObjectContentTreeItem {
165
174
  */
166
175
  _setProperties(properties) {
167
176
  super._setProperties(properties);
168
-
169
- this._setStyleAction(properties.availableStyles);
177
+ setStyleAction(
178
+ this,
179
+ this._app,
180
+ this._listeners,
181
+ [this._layerName],
182
+ properties.availableStyles,
183
+ );
170
184
  setViewpointAction(this, this._app, properties.defaultViewpoint);
171
185
  }
172
186
 
@@ -2,6 +2,7 @@ export default LayerGroupContentTreeItem;
2
2
  export type LayerGroupContentTreeItemOptions = import("./contentTreeItem.js").ContentTreeItemOptions & {
3
3
  layerNames: string[];
4
4
  defaultViewpoint?: string;
5
+ availableStyles?: string[];
5
6
  };
6
7
  /**
7
8
  * A layer group. When clicked will try to activate all layers in the group or deactivate all layer in the group if all are active.
@@ -25,10 +26,15 @@ declare class LayerGroupContentTreeItem extends ContentTreeItem {
25
26
  */
26
27
  private _listeners;
27
28
  /**
28
- * @type {string|null}
29
+ * @type {string|undefined}
29
30
  * @private
30
31
  */
31
32
  private _defaultViewpoint;
33
+ /**
34
+ * @type {string[]}
35
+ * @private
36
+ */
37
+ private _availableStyles;
32
38
  /**
33
39
  * @type {Array<import("@vcmap/core").Layer>}
34
40
  * @private