@vcmap/ui 5.3.7 → 6.0.0-rc.10

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 (807) hide show
  1. package/build/build.js +66 -64
  2. package/build/buildHelpers.js +69 -21
  3. package/build/buildTypes.js +22 -0
  4. package/build/bundle.js +1 -1
  5. package/build/commonViteConfig.js +7 -10
  6. package/build/generateOLLib.js +5 -1
  7. package/build/info/conf.json +1 -1
  8. package/build/info/publish.js +27 -33
  9. package/build/lintTypes.js +10 -0
  10. package/build/staging/Dockerfile +1 -1
  11. package/config/aerowest.config.json +12 -2
  12. package/config/base.config.json +25 -17
  13. package/config/dev.config.json +174 -10
  14. package/config/projects.config.json +3 -1
  15. package/config/solar.config.json +65 -0
  16. package/config/splashscreen.config.json +45 -0
  17. package/config/theming.config.json +68 -0
  18. package/config/www.config.json +38 -22
  19. package/dist/.htaccess +7 -0
  20. package/dist/assets/@mdi/font/README.md +25 -0
  21. package/dist/assets/@mdi/font/css/materialdesignicons.min-680621ca.css +3 -0
  22. package/dist/assets/@mdi/font/css/materialdesignicons.min.css.map +16 -0
  23. package/dist/assets/@mdi/font/fonts/materialdesignicons-webfont.woff2 +0 -0
  24. package/dist/assets/cesium/Assets/approximateTerrainHeights.json +1 -1
  25. package/dist/assets/cesium/ThirdParty/Workers/z-worker-pako.js +1 -1
  26. package/dist/assets/cesium/Workers/{chunk-JB2LWGH4.js → chunk-2LOWCAMW.js} +14 -14
  27. package/dist/assets/cesium/Workers/{chunk-Z24VKNDO.js → chunk-2PTKXHJB.js} +12 -12
  28. package/dist/assets/cesium/Workers/{chunk-AHKEZ2OE.js → chunk-3HQMMUPU.js} +1 -1
  29. package/dist/assets/cesium/Workers/{chunk-V3NGATMV.js → chunk-3IFRSGEY.js} +11 -13
  30. package/dist/assets/cesium/Workers/{chunk-66QLLS45.js → chunk-44QAAS4P.js} +11 -9
  31. package/dist/assets/cesium/Workers/{chunk-TFC6TZ3S.js → chunk-56EDBCGT.js} +33 -22
  32. package/dist/assets/cesium/Workers/{chunk-3W63OHNJ.js → chunk-57H6I3SV.js} +5 -5
  33. package/dist/assets/cesium/Workers/{chunk-PFQBCKBM.js → chunk-6SQMLVGV.js} +5206 -3483
  34. package/dist/assets/cesium/Workers/{chunk-OZJDGN5F.js → chunk-7YIOHQWH.js} +16 -16
  35. package/dist/assets/cesium/Workers/{chunk-XTY7B2N6.js → chunk-7ZZ5LMZY.js} +17 -16
  36. package/dist/assets/cesium/Workers/{chunk-HARLBUOL.js → chunk-BVKITG4N.js} +11 -8
  37. package/dist/assets/cesium/Workers/{chunk-AFFLIKOH.js → chunk-C3EQ27WF.js} +7 -7
  38. package/dist/assets/cesium/Workers/{chunk-RW6LU2CJ.js → chunk-C4WPMOKT.js} +6 -5
  39. package/dist/assets/cesium/Workers/{chunk-OYFCF4PL.js → chunk-EDLRS3AW.js} +6 -6
  40. package/dist/assets/cesium/Workers/{chunk-C3SXRKRW.js → chunk-EJVGYGLF.js} +7 -7
  41. package/dist/assets/cesium/Workers/{chunk-PCJWUS4M.js → chunk-FFLMY4TE.js} +830 -14
  42. package/dist/assets/cesium/Workers/{chunk-MPAZH4BF.js → chunk-GBT7MJ6X.js} +1 -1
  43. package/dist/assets/cesium/Workers/{chunk-ZA25DG4Y.js → chunk-HJMNR3GC.js} +11 -11
  44. package/dist/assets/cesium/Workers/{chunk-JS3AW5BK.js → chunk-HP5XLODI.js} +6 -6
  45. package/dist/assets/cesium/Workers/{chunk-34YUDLRP.js → chunk-IBRIWOCM.js} +13 -13
  46. package/dist/assets/cesium/Workers/{chunk-XY7MGBKC.js → chunk-IZGUQO6Q.js} +14 -16
  47. package/dist/assets/cesium/Workers/{chunk-KTJSNCK4.js → chunk-IZJ42N4W.js} +230 -20
  48. package/dist/assets/cesium/Workers/{chunk-QMEMZIJI.js → chunk-JBSKHTNX.js} +4 -4
  49. package/dist/assets/cesium/Workers/{chunk-QIKODV5G.js → chunk-JISPSEF3.js} +4 -4
  50. package/dist/assets/cesium/Workers/{chunk-K36FEYS7.js → chunk-JSQJDZI4.js} +16 -12
  51. package/dist/assets/cesium/Workers/{chunk-X4SU25DT.js → chunk-JXVLNVXC.js} +10 -12
  52. package/dist/assets/cesium/Workers/chunk-KHZNBFOH.js +963 -0
  53. package/dist/assets/cesium/Workers/{chunk-KD4Y7CZL.js → chunk-L5GODJAR.js} +15 -17
  54. package/dist/assets/cesium/Workers/{chunk-O5AMBQ36.js → chunk-LJ2JQHJT.js} +13 -8
  55. package/dist/assets/cesium/Workers/{chunk-ABADGKYE.js → chunk-LLAF3CPH.js} +2 -2
  56. package/dist/assets/cesium/Workers/{chunk-CHHNOC2C.js → chunk-M24KHENR.js} +95 -155
  57. package/dist/assets/cesium/Workers/{chunk-2R5O53JW.js → chunk-NDDI2LWR.js} +6 -6
  58. package/dist/assets/cesium/Workers/{chunk-QT3MPEMI.js → chunk-NGZJIN5Z.js} +4 -4
  59. package/dist/assets/cesium/Workers/{chunk-ZFOBYDGF.js → chunk-O72GZTSE.js} +2 -2
  60. package/dist/assets/cesium/Workers/{chunk-IPA4EACJ.js → chunk-OPP2SKMA.js} +12 -12
  61. package/dist/assets/cesium/Workers/{chunk-4MFFIWUA.js → chunk-P6TRGU3S.js} +2 -2
  62. package/dist/assets/cesium/Workers/{chunk-GLZBE3ML.js → chunk-QN6TBED4.js} +13 -13
  63. package/dist/assets/cesium/Workers/{chunk-MYZB7C4T.js → chunk-QQOZO7KO.js} +10 -10
  64. package/dist/assets/cesium/Workers/{chunk-HQF437NJ.js → chunk-RJM36CNY.js} +6 -6
  65. package/dist/assets/cesium/Workers/{chunk-CTELOFLA.js → chunk-RTJKHZWU.js} +6 -6
  66. package/dist/assets/cesium/Workers/{chunk-J3JY6I2C.js → chunk-TI3TRKIC.js} +425 -489
  67. package/dist/assets/cesium/Workers/{chunk-OAVNIRB4.js → chunk-TK5IIG2F.js} +5 -7
  68. package/dist/assets/cesium/Workers/{chunk-WXTV4ATB.js → chunk-U5HSOKPQ.js} +1 -1
  69. package/dist/assets/cesium/Workers/{chunk-N3JIFFX2.js → chunk-WGDFYAGC.js} +5 -6
  70. package/dist/assets/cesium/Workers/{chunk-EW2GWJYB.js → chunk-X7IQYYHF.js} +2 -2
  71. package/dist/assets/cesium/Workers/{chunk-LLUNNUJV.js → chunk-XIUSRWL6.js} +9 -5
  72. package/dist/assets/cesium/Workers/{chunk-CCFQRR6D.js → chunk-XWOUPGUF.js} +1 -1
  73. package/dist/assets/cesium/Workers/{chunk-6BTKZDRG.js → chunk-YCDZX5LS.js} +3 -5
  74. package/dist/assets/cesium/Workers/{chunk-RP2A7BR5.js → chunk-YK3QIKY7.js} +12 -14
  75. package/dist/assets/cesium/Workers/{chunk-227AJNOA.js → chunk-YSIJTJ7N.js} +5 -5
  76. package/dist/assets/cesium/Workers/{chunk-A4JVFBQ3.js → chunk-Z2QP3CXW.js} +2 -2
  77. package/dist/assets/cesium/Workers/{chunk-VLGOATD6.js → chunk-ZVUUPJEM.js} +22 -22
  78. package/dist/assets/cesium/Workers/combineGeometry.js +22 -23
  79. package/dist/assets/cesium/Workers/createBoxGeometry.js +16 -17
  80. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +14 -15
  81. package/dist/assets/cesium/Workers/createCircleGeometry.js +29 -26
  82. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +17 -18
  83. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +35 -36
  84. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +29 -30
  85. package/dist/assets/cesium/Workers/createCorridorGeometry.js +29 -30
  86. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +27 -28
  87. package/dist/assets/cesium/Workers/createCylinderGeometry.js +18 -19
  88. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +17 -19
  89. package/dist/assets/cesium/Workers/createEllipseGeometry.js +24 -25
  90. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +17 -18
  91. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +17 -18
  92. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +16 -17
  93. package/dist/assets/cesium/Workers/createFrustumGeometry.js +16 -17
  94. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +18 -18
  95. package/dist/assets/cesium/Workers/createGeometry.js +52 -33
  96. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +28 -29
  97. package/dist/assets/cesium/Workers/createPlaneGeometry.js +14 -15
  98. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +13 -14
  99. package/dist/assets/cesium/Workers/createPolygonGeometry.js +451 -176
  100. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +29 -30
  101. package/dist/assets/cesium/Workers/createPolylineGeometry.js +24 -25
  102. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +31 -33
  103. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +27 -29
  104. package/dist/assets/cesium/Workers/createRectangleGeometry.js +30 -31
  105. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +21 -24
  106. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +22 -23
  107. package/dist/assets/cesium/Workers/createSphereGeometry.js +17 -18
  108. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +16 -17
  109. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +3 -3
  110. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +14 -16
  111. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +22 -23
  112. package/dist/assets/cesium/Workers/createVectorTilePoints.js +12 -12
  113. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +20 -21
  114. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +14 -16
  115. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +24 -25
  116. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +29 -26
  117. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +19 -21
  118. package/dist/assets/cesium/Workers/createWallGeometry.js +23 -24
  119. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +22 -23
  120. package/dist/assets/cesium/Workers/decodeDraco.js +11 -11
  121. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +35 -19
  122. package/dist/assets/cesium/Workers/decodeI3S.js +600 -92
  123. package/dist/assets/cesium/Workers/transcodeKTX2.js +58 -93
  124. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +1 -1
  125. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +21 -22
  126. package/dist/assets/{cesium.0cabe2.js → cesium-9ea5ba6e.js} +54060 -48818
  127. package/dist/assets/cesium.js +1 -1
  128. package/dist/assets/{core.7122ed.js → core-9b003470.js} +7112 -5644
  129. package/dist/assets/core.js +1 -1
  130. package/dist/assets/{ol.086f00.js → ol-8373d6ac.js} +42074 -43270
  131. package/dist/assets/ol.js +1 -1
  132. package/dist/assets/ui-163311a7.css +1 -0
  133. package/dist/assets/ui-163311a7.js +35745 -0
  134. package/dist/assets/ui.js +1 -1
  135. package/dist/assets/vue-0f6dd813.js +6083 -0
  136. package/dist/assets/vue.js +1 -5
  137. package/dist/assets/vuetify-e2c4b35c.css +5 -0
  138. package/dist/assets/vuetify-e2c4b35c.js +24480 -0
  139. package/dist/assets/vuetify.js +1 -5
  140. package/dist/index.html +11 -11
  141. package/index.d.ts +53 -23
  142. package/index.html +5 -5
  143. package/index.js +29 -38
  144. package/lib/olLib.js +90 -23
  145. package/lib/vue.js +0 -1
  146. package/lib/vuetify.js +1 -2
  147. package/lib/vuetifyLib.js +6 -0
  148. package/package.json +38 -27
  149. package/plugins/@vcmap-show-case/buttons-example/package.json +2 -2
  150. package/plugins/@vcmap-show-case/buttons-example/src/ButtonsExample.vue +57 -61
  151. package/plugins/@vcmap-show-case/buttons-example/src/index.js +1 -1
  152. package/plugins/@vcmap-show-case/category-tester/package.json +2 -2
  153. package/plugins/@vcmap-show-case/category-tester/src/CategoriesExample.vue +12 -6
  154. package/plugins/@vcmap-show-case/category-tester/src/CollectionComponentOptions.vue +4 -4
  155. package/plugins/@vcmap-show-case/category-tester/src/FoobarEditor.vue +4 -4
  156. package/plugins/@vcmap-show-case/collection-manager-example/src/CollectionManagerExample.vue +11 -7
  157. package/plugins/@vcmap-show-case/config-editor/src/ConfigEditor.vue +2 -2
  158. package/plugins/@vcmap-show-case/custom-icons-example/README.md +3 -0
  159. package/plugins/@vcmap-show-case/custom-icons-example/assets/imageExample.png +0 -0
  160. package/plugins/@vcmap-show-case/custom-icons-example/assets/svgExample.svg +1 -0
  161. package/plugins/@vcmap-show-case/custom-icons-example/package.json +5 -0
  162. package/plugins/@vcmap-show-case/custom-icons-example/src/CustomIconsExample.vue +90 -0
  163. package/plugins/@vcmap-show-case/custom-icons-example/src/index.js +45 -0
  164. package/plugins/@vcmap-show-case/extent-example/README.md +1 -1
  165. package/plugins/@vcmap-show-case/extent-example/src/index.js +11 -20
  166. package/plugins/@vcmap-show-case/flight-component-example/src/FlightExample.vue +44 -4
  167. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +160 -168
  168. package/plugins/@vcmap-show-case/form-inputs-example/src/exampleActions.js +7 -11
  169. package/plugins/@vcmap-show-case/form-inputs-example/src/index.js +9 -10
  170. package/plugins/@vcmap-show-case/hello-world/src/helloWorld.vue +1 -1
  171. package/plugins/@vcmap-show-case/icons-example/src/AllIconsComponent.vue +1 -1
  172. package/plugins/@vcmap-show-case/list-example/src/ListExample.vue +71 -88
  173. package/plugins/@vcmap-show-case/notifier-tester/src/NotifierTester.vue +4 -6
  174. package/plugins/@vcmap-show-case/panel-tester/src/PanelExample.vue +3 -4
  175. package/plugins/@vcmap-show-case/plugin-editors/src/PluginEditors.vue +14 -11
  176. package/plugins/@vcmap-show-case/project-selector/src/ModulesListComponent.vue +18 -15
  177. package/plugins/@vcmap-show-case/project-selector/src/ProjectSelectorComponent.vue +10 -16
  178. package/plugins/@vcmap-show-case/search-example/package.json +5 -0
  179. package/plugins/@vcmap-show-case/search-example/src/index.js +76 -0
  180. package/plugins/@vcmap-show-case/search-example/src/searchImpl.js +129 -0
  181. package/plugins/@vcmap-show-case/simple-graph/src/SimpleGraphComponent.vue +1 -1
  182. package/plugins/@vcmap-show-case/style-input-example/src/StyleExample.vue +30 -91
  183. package/plugins/@vcmap-show-case/table-example/src/DataTableExample.vue +32 -16
  184. package/plugins/@vcmap-show-case/textfields-example/src/TextfieldsExample.vue +7 -1
  185. package/plugins/@vcmap-show-case/theming-example/README.md +3 -0
  186. package/plugins/@vcmap-show-case/theming-example/package.json +5 -0
  187. package/plugins/@vcmap-show-case/theming-example/src/ThemingExample.vue +116 -0
  188. package/plugins/@vcmap-show-case/theming-example/src/index.js +53 -0
  189. package/plugins/@vcmap-show-case/toolbox-example/src/TriStateExampleWindow.vue +1 -1
  190. package/plugins/@vcmap-show-case/toolbox-example/src/index.js +2 -1
  191. package/plugins/@vcmap-show-case/vector-properties-example/src/GeometrySettings.vue +420 -0
  192. package/plugins/@vcmap-show-case/vector-properties-example/src/LayoutHandler.vue +97 -0
  193. package/plugins/@vcmap-show-case/vector-properties-example/src/TerrainSettings.vue +90 -0
  194. package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +87 -71
  195. package/plugins/@vcmap-show-case/vector-properties-example/src/index.js +34 -1
  196. package/plugins/@vcmap-show-case/vector-properties-example/src/lib.js +294 -0
  197. package/plugins/@vcmap-show-case/viewpoint-component-example/src/ViewpointExample.vue +4 -4
  198. package/plugins/@vcmap-show-case/window-tester/src/BrokenWindow.vue +17 -0
  199. package/plugins/@vcmap-show-case/window-tester/src/EmptyComponent.vue +1 -1
  200. package/plugins/@vcmap-show-case/window-tester/src/WindowExample.vue +10 -0
  201. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleContent.vue +1 -1
  202. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleToggleChild.vue +1 -1
  203. package/plugins/@vcmap-show-case/wizard-example/src/WizardExample.vue +40 -54
  204. package/plugins/package.json +23 -21
  205. package/public/assets/@mdi/font/README.md +25 -0
  206. package/public/assets/@mdi/font/css/materialdesignicons.min.css +2 -2
  207. package/public/assets/@mdi/font/css/materialdesignicons.min.css.map +16 -0
  208. package/public/assets/@mdi/font/fonts/materialdesignicons-webfont.woff2 +0 -0
  209. package/src/actions/StyleSelector.vue +39 -53
  210. package/src/actions/StyleSelector.vue.d.ts +11 -9
  211. package/src/actions/actionHelper.d.ts +4 -11
  212. package/src/actions/actionHelper.js +41 -33
  213. package/src/actions/extentActions.d.ts +1 -2
  214. package/src/actions/extentActions.js +19 -8
  215. package/src/actions/flightActions.js +52 -31
  216. package/src/actions/listActions.d.ts +5 -12
  217. package/src/actions/listActions.js +8 -24
  218. package/src/actions/stateRefAction.js +5 -5
  219. package/src/application/VcsApp.vue +199 -97
  220. package/src/application/VcsApp.vue.d.ts +314 -9
  221. package/src/application/VcsAppWrapper.vue +2 -2
  222. package/src/application/VcsAppWrapper.vue.d.ts +2 -2
  223. package/src/application/VcsAttributions.vue +17 -32
  224. package/src/application/VcsAttributions.vue.d.ts +7 -7
  225. package/src/application/VcsAttributionsFooter.vue +28 -18
  226. package/src/application/VcsAttributionsFooter.vue.d.ts +3 -3
  227. package/src/application/VcsContainer.vue +38 -15
  228. package/src/application/VcsContainer.vue.d.ts +251 -2
  229. package/src/application/VcsMainMap.vue +12 -9
  230. package/src/application/VcsMainMap.vue.d.ts +3 -3
  231. package/src/application/VcsMap.vue +22 -23
  232. package/src/application/VcsMap.vue.d.ts +2 -2
  233. package/src/application/VcsNavbar.vue +74 -58
  234. package/src/application/VcsNavbar.vue.d.ts +12 -8
  235. package/src/application/VcsPositionDisplay.vue +34 -62
  236. package/src/application/VcsPositionDisplay.vue.d.ts +3 -4
  237. package/src/application/VcsSettings.vue +30 -25
  238. package/src/application/VcsSettings.vue.d.ts +2 -1
  239. package/src/application/VcsSplashScreen.vue +43 -56
  240. package/src/application/VcsSplashScreen.vue.d.ts +6 -8
  241. package/src/application/VcsTextPage.vue +13 -44
  242. package/src/application/VcsTextPage.vue.d.ts +4 -8
  243. package/src/application/VcsTextPageFooter.vue +26 -41
  244. package/src/application/VcsTextPageFooter.vue.d.ts +2 -2
  245. package/src/application/attributionsHelper.d.ts +22 -24
  246. package/src/application/attributionsHelper.js +23 -19
  247. package/src/callback/vcsCallback.d.ts +2 -2
  248. package/src/callback/vcsCallback.js +1 -1
  249. package/src/components/ImageElementInjector.vue.d.ts +2 -2
  250. package/src/components/attrsHelpers.d.ts +5 -0
  251. package/src/components/attrsHelpers.js +14 -0
  252. package/src/components/buttons/VcsActionButtonList.vue +62 -20
  253. package/src/components/buttons/VcsActionButtonList.vue.d.ts +22 -3
  254. package/src/components/buttons/VcsButton.vue +76 -89
  255. package/src/components/buttons/VcsButton.vue.d.ts +19 -34
  256. package/src/components/buttons/VcsFormButton.vue +77 -125
  257. package/src/components/buttons/VcsFormButton.vue.d.ts +10 -43
  258. package/src/components/buttons/VcsToolButton.vue +93 -94
  259. package/src/components/buttons/VcsToolButton.vue.d.ts +21 -28
  260. package/src/components/composables.d.ts +26 -0
  261. package/src/components/composables.js +133 -0
  262. package/src/components/{form-inputs-controls → extent}/VcsExtent.vue +30 -22
  263. package/src/components/{form-inputs-controls → extent}/VcsExtent.vue.d.ts +11 -7
  264. package/src/components/extent/VcsExtentEditor.vue +80 -0
  265. package/src/components/extent/VcsExtentEditor.vue.d.ts +37 -0
  266. package/src/components/flight/VcsFlightAnchorsComponent.vue +68 -35
  267. package/src/components/flight/VcsFlightAnchorsComponent.vue.d.ts +6 -6
  268. package/src/components/flight/VcsFlightComponent.vue +27 -31
  269. package/src/components/flight/VcsFlightComponent.vue.d.ts +5 -4
  270. package/src/components/flight/VcsFlightEditor.vue +1 -0
  271. package/src/components/flight/VcsFlightEditor.vue.d.ts +2 -2
  272. package/src/components/flight/VcsFlightPlayer.vue +47 -20
  273. package/src/components/flight/VcsFlightPlayer.vue.d.ts +3 -3
  274. package/src/components/form-inputs-controls/VcsCheckbox.vue +77 -82
  275. package/src/components/form-inputs-controls/VcsCheckbox.vue.d.ts +23 -4
  276. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +130 -122
  277. package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +17 -23
  278. package/src/components/form-inputs-controls/VcsCoordinate.vue +43 -41
  279. package/src/components/form-inputs-controls/VcsCoordinate.vue.d.ts +14 -12
  280. package/src/components/form-inputs-controls/VcsDatePicker.vue +66 -105
  281. package/src/components/form-inputs-controls/VcsDatePicker.vue.d.ts +13 -13
  282. package/src/components/form-inputs-controls/VcsFileInput.vue +99 -0
  283. package/src/components/{notification/VcsTooltip.vue.d.ts → form-inputs-controls/VcsFileInput.vue.d.ts} +7 -6
  284. package/src/components/form-inputs-controls/VcsLabel.vue +72 -30
  285. package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +33 -11
  286. package/src/components/form-inputs-controls/VcsRadio.vue +94 -102
  287. package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +37 -9
  288. package/src/components/form-inputs-controls/VcsSelect.vue +175 -156
  289. package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +40 -10
  290. package/src/components/form-inputs-controls/VcsSlider.vue +110 -53
  291. package/src/components/form-inputs-controls/VcsSlider.vue.d.ts +30 -1
  292. package/src/components/form-inputs-controls/VcsTextArea.vue +141 -143
  293. package/src/components/form-inputs-controls/VcsTextArea.vue.d.ts +14 -10
  294. package/src/components/form-inputs-controls/VcsTextField.vue +121 -274
  295. package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +38 -26
  296. package/src/components/form-inputs-controls/VcsWizard.vue +88 -117
  297. package/src/components/form-inputs-controls/VcsWizard.vue.d.ts +3 -13
  298. package/src/components/form-inputs-controls/VcsWizardStep.vue +80 -60
  299. package/src/components/form-inputs-controls/VcsWizardStep.vue.d.ts +26 -13
  300. package/src/components/form-inputs-controls/vcsTextField.scss +86 -0
  301. package/src/components/form-output/VcsFormattedNumber.vue +54 -29
  302. package/src/components/form-output/VcsFormattedNumber.vue.d.ts +30 -20
  303. package/src/components/form-output/VcsMarkdown.vue +56 -0
  304. package/src/components/form-output/VcsMarkdown.vue.d.ts +17 -0
  305. package/src/components/form-output/markdownHelper.d.ts +30 -0
  306. package/src/components/form-output/markdownHelper.js +398 -0
  307. package/src/components/icons/+all.js +1 -1
  308. package/src/components/icons/2DAreaIcon.vue +1 -7
  309. package/src/components/icons/2DAreaIcon.vue.d.ts +1 -1
  310. package/src/components/icons/2DDistanceIcon.vue +1 -7
  311. package/src/components/icons/2DDistanceIcon.vue.d.ts +1 -1
  312. package/src/components/icons/2DHeightObliqueIcon.vue.d.ts +1 -1
  313. package/src/components/icons/2DPointIcon.vue +0 -1
  314. package/src/components/icons/2DPointIcon.vue.d.ts +1 -1
  315. package/src/components/icons/3DAreaIcon.vue +1 -7
  316. package/src/components/icons/3DAreaIcon.vue.d.ts +1 -1
  317. package/src/components/icons/3DDistanceIcon.vue +1 -7
  318. package/src/components/icons/3DDistanceIcon.vue.d.ts +1 -1
  319. package/src/components/icons/3DHeightIcon.vue +1 -7
  320. package/src/components/icons/3DHeightIcon.vue.d.ts +1 -1
  321. package/src/components/icons/3DPointIcon.vue +0 -1
  322. package/src/components/icons/3DPointIcon.vue.d.ts +1 -1
  323. package/src/components/icons/AngleIcon.vue +1 -6
  324. package/src/components/icons/AngleIcon.vue.d.ts +1 -1
  325. package/src/components/icons/AssociationsIcon.vue +1 -6
  326. package/src/components/icons/AssociationsIcon.vue.d.ts +1 -1
  327. package/src/components/icons/AxisIcon.vue.d.ts +1 -1
  328. package/src/components/icons/BoundingBoxIcon.vue +1 -6
  329. package/src/components/icons/BoundingBoxIcon.vue.d.ts +1 -1
  330. package/src/components/icons/CheckboxCheckedIcon.vue.d.ts +1 -1
  331. package/src/components/icons/CheckboxIcon.vue +1 -6
  332. package/src/components/icons/CheckboxIcon.vue.d.ts +1 -1
  333. package/src/components/icons/CheckboxIndeterminateIcon.vue.d.ts +1 -1
  334. package/src/components/icons/CircleIcon.vue +1 -6
  335. package/src/components/icons/CircleIcon.vue.d.ts +1 -1
  336. package/src/components/icons/ClippingHorizontalIcon.vue +1 -6
  337. package/src/components/icons/ClippingHorizontalIcon.vue.d.ts +1 -1
  338. package/src/components/icons/ClippingIcon.vue +1 -6
  339. package/src/components/icons/ClippingIcon.vue.d.ts +1 -1
  340. package/src/components/icons/ClippingVerticalIcon.vue +1 -6
  341. package/src/components/icons/ClippingVerticalIcon.vue.d.ts +1 -1
  342. package/src/components/icons/ColorPickerIcon.vue +1 -6
  343. package/src/components/icons/ColorPickerIcon.vue.d.ts +1 -1
  344. package/src/components/icons/ColorSwatchIcon.vue +1 -7
  345. package/src/components/icons/ColorSwatchIcon.vue.d.ts +1 -1
  346. package/src/components/icons/CommentIcon.vue +1 -6
  347. package/src/components/icons/CommentIcon.vue.d.ts +1 -1
  348. package/src/components/icons/CompassIcon.vue +1 -13
  349. package/src/components/icons/CompassIcon.vue.d.ts +1 -1
  350. package/src/components/icons/ComponentsIcon.vue +1 -6
  351. package/src/components/icons/ComponentsIcon.vue.d.ts +1 -1
  352. package/src/components/icons/ComponentsPlusIcon.vue +0 -1
  353. package/src/components/icons/ComponentsPlusIcon.vue.d.ts +1 -1
  354. package/src/components/icons/ConeIcon.vue +1 -13
  355. package/src/components/icons/ConeIcon.vue.d.ts +1 -1
  356. package/src/components/icons/CrosshairIcon.vue +0 -2
  357. package/src/components/icons/CrosshairIcon.vue.d.ts +1 -1
  358. package/src/components/icons/DimensionsHouseIcon.vue +1 -7
  359. package/src/components/icons/DimensionsHouseIcon.vue.d.ts +1 -1
  360. package/src/components/icons/EditIcon.vue +1 -6
  361. package/src/components/icons/EditIcon.vue.d.ts +1 -1
  362. package/src/components/icons/EditVerticesIcon.vue +1 -6
  363. package/src/components/icons/EditVerticesIcon.vue.d.ts +1 -1
  364. package/src/components/icons/ElevationProfileIcon.vue +1 -6
  365. package/src/components/icons/ElevationProfileIcon.vue.d.ts +1 -1
  366. package/src/components/icons/ExportAreaIcon.vue +1 -6
  367. package/src/components/icons/ExportAreaIcon.vue.d.ts +1 -1
  368. package/src/components/icons/ExportFlightIcon.vue +1 -6
  369. package/src/components/icons/ExportFlightIcon.vue.d.ts +1 -1
  370. package/src/components/icons/ExportIcon.vue +1 -13
  371. package/src/components/icons/ExportIcon.vue.d.ts +1 -1
  372. package/src/components/icons/ExternalLinkIcon.vue +1 -6
  373. package/src/components/icons/ExternalLinkIcon.vue.d.ts +1 -1
  374. package/src/components/icons/EyeIcon.vue +1 -6
  375. package/src/components/icons/EyeIcon.vue.d.ts +1 -1
  376. package/src/components/icons/FastForwardIcon.vue +1 -6
  377. package/src/components/icons/FastForwardIcon.vue.d.ts +1 -1
  378. package/src/components/icons/FilterIcon.vue +1 -7
  379. package/src/components/icons/FilterIcon.vue.d.ts +1 -1
  380. package/src/components/icons/GlobalTerrainIcon.vue +1 -6
  381. package/src/components/icons/GlobalTerrainIcon.vue.d.ts +1 -1
  382. package/src/components/icons/GlobeNatureIcon.vue +1 -6
  383. package/src/components/icons/GlobeNatureIcon.vue.d.ts +1 -1
  384. package/src/components/icons/GroundIcon.vue +1 -6
  385. package/src/components/icons/GroundIcon.vue.d.ts +1 -1
  386. package/src/components/icons/HealthCareIndustriesIcon.vue +1 -6
  387. package/src/components/icons/HealthCareIndustriesIcon.vue.d.ts +1 -1
  388. package/src/components/icons/HelpIcon.vue +1 -6
  389. package/src/components/icons/HelpIcon.vue.d.ts +1 -1
  390. package/src/components/icons/HideIcon.vue +1 -6
  391. package/src/components/icons/HideIcon.vue.d.ts +1 -1
  392. package/src/components/icons/HomePointIcon.vue +1 -6
  393. package/src/components/icons/HomePointIcon.vue.d.ts +1 -1
  394. package/src/components/icons/HospitalsIcon.vue +1 -6
  395. package/src/components/icons/HospitalsIcon.vue.d.ts +1 -1
  396. package/src/components/icons/HouseIcon.vue +1 -6
  397. package/src/components/icons/HouseIcon.vue.d.ts +1 -1
  398. package/src/components/icons/ImportIcon.vue +1 -7
  399. package/src/components/icons/ImportIcon.vue.d.ts +1 -1
  400. package/src/components/icons/InfoIcon.vue +1 -6
  401. package/src/components/icons/InfoIcon.vue.d.ts +1 -1
  402. package/src/components/icons/KebabIcon.vue +1 -7
  403. package/src/components/icons/KebabIcon.vue.d.ts +1 -1
  404. package/src/components/icons/LabelIcon.vue +1 -13
  405. package/src/components/icons/LabelIcon.vue.d.ts +1 -1
  406. package/src/components/icons/LayersIcon.vue +1 -7
  407. package/src/components/icons/LayersIcon.vue.d.ts +1 -1
  408. package/src/components/icons/LegendIcon.vue +1 -6
  409. package/src/components/icons/LegendIcon.vue.d.ts +1 -1
  410. package/src/components/icons/LineIcon.vue +1 -13
  411. package/src/components/icons/LineIcon.vue.d.ts +1 -1
  412. package/src/components/icons/LinkIcon.vue +1 -6
  413. package/src/components/icons/LinkIcon.vue.d.ts +1 -1
  414. package/src/components/icons/LogoutIcon.vue +1 -6
  415. package/src/components/icons/LogoutIcon.vue.d.ts +1 -1
  416. package/src/components/icons/MapIcon.vue +1 -7
  417. package/src/components/icons/MapIcon.vue.d.ts +1 -1
  418. package/src/components/icons/MenuIcon.vue +1 -7
  419. package/src/components/icons/MenuIcon.vue.d.ts +1 -1
  420. package/src/components/icons/MinusIcon.vue +1 -7
  421. package/src/components/icons/MinusIcon.vue.d.ts +1 -1
  422. package/src/components/icons/MultiViewIcon.vue +1 -7
  423. package/src/components/icons/MultiViewIcon.vue.d.ts +1 -1
  424. package/src/components/icons/ObjectAttributeIcon.vue +1 -7
  425. package/src/components/icons/ObjectAttributeIcon.vue.d.ts +1 -1
  426. package/src/components/icons/ObjectSelectIcon.vue +1 -7
  427. package/src/components/icons/ObjectSelectIcon.vue.d.ts +1 -1
  428. package/src/components/icons/ObliqueViewIcon.vue +1 -7
  429. package/src/components/icons/ObliqueViewIcon.vue.d.ts +1 -1
  430. package/src/components/icons/PdfIcon.vue +1 -7
  431. package/src/components/icons/PdfIcon.vue.d.ts +1 -1
  432. package/src/components/icons/PedestrianIcon.vue +1 -6
  433. package/src/components/icons/PedestrianIcon.vue.d.ts +1 -1
  434. package/src/components/icons/PenIcon.vue +1 -6
  435. package/src/components/icons/PenIcon.vue.d.ts +1 -1
  436. package/src/components/icons/PlayCircleIcon.vue +1 -6
  437. package/src/components/icons/PlayCircleIcon.vue.d.ts +1 -1
  438. package/src/components/icons/PlusIcon.vue +1 -7
  439. package/src/components/icons/PlusIcon.vue.d.ts +1 -1
  440. package/src/components/icons/PoiIcon.vue +1 -6
  441. package/src/components/icons/PoiIcon.vue.d.ts +1 -1
  442. package/src/components/icons/PointIcon.vue +1 -7
  443. package/src/components/icons/PointIcon.vue.d.ts +1 -1
  444. package/src/components/icons/PointMeasurementIcon.vue.d.ts +1 -1
  445. package/src/components/icons/PointSelectIcon.vue +1 -6
  446. package/src/components/icons/PointSelectIcon.vue.d.ts +1 -1
  447. package/src/components/icons/PresentationModeIcon.vue +1 -6
  448. package/src/components/icons/PresentationModeIcon.vue.d.ts +1 -1
  449. package/src/components/icons/ProgressIcon.vue +0 -1
  450. package/src/components/icons/ProgressIcon.vue.d.ts +1 -1
  451. package/src/components/icons/QueryIcon.vue +1 -6
  452. package/src/components/icons/QueryIcon.vue.d.ts +1 -1
  453. package/src/components/icons/RectangleIcon.vue +1 -13
  454. package/src/components/icons/RectangleIcon.vue.d.ts +1 -1
  455. package/src/components/icons/ReturnIcon.vue +1 -6
  456. package/src/components/icons/ReturnIcon.vue.d.ts +1 -1
  457. package/src/components/icons/RewindIcon.vue +1 -6
  458. package/src/components/icons/RewindIcon.vue.d.ts +1 -1
  459. package/src/components/icons/RotateLeftIcon.vue +1 -6
  460. package/src/components/icons/RotateLeftIcon.vue.d.ts +1 -1
  461. package/src/components/icons/RotateRightIcon.vue +1 -6
  462. package/src/components/icons/RotateRightIcon.vue.d.ts +1 -1
  463. package/src/components/icons/ScreenshotIcon.vue +1 -6
  464. package/src/components/icons/ScreenshotIcon.vue.d.ts +1 -1
  465. package/src/components/icons/SearchIcon.vue +1 -6
  466. package/src/components/icons/SearchIcon.vue.d.ts +1 -1
  467. package/src/components/icons/ShadowIcon.vue +1 -7
  468. package/src/components/icons/ShadowIcon.vue.d.ts +1 -1
  469. package/src/components/icons/ShapesIcon.vue +1 -6
  470. package/src/components/icons/ShapesIcon.vue.d.ts +1 -1
  471. package/src/components/icons/ShareIcon.vue +1 -6
  472. package/src/components/icons/ShareIcon.vue.d.ts +1 -1
  473. package/src/components/icons/SimpleCircleFilledIcon.vue +1 -6
  474. package/src/components/icons/SimpleCircleFilledIcon.vue.d.ts +1 -1
  475. package/src/components/icons/SimpleCircleHalfFilledIcon.vue +1 -6
  476. package/src/components/icons/SimpleCircleHalfFilledIcon.vue.d.ts +1 -1
  477. package/src/components/icons/SimpleCircleOutlinedIcon.vue +1 -6
  478. package/src/components/icons/SimpleCircleOutlinedIcon.vue.d.ts +1 -1
  479. package/src/components/icons/SkipNextIcon.vue +1 -6
  480. package/src/components/icons/SkipNextIcon.vue.d.ts +1 -1
  481. package/src/components/icons/SkipPreviousIcon.vue +1 -6
  482. package/src/components/icons/SkipPreviousIcon.vue.d.ts +1 -1
  483. package/src/components/icons/SplitViewIcon.vue +1 -6
  484. package/src/components/icons/SplitViewIcon.vue.d.ts +1 -1
  485. package/src/components/icons/TerrainBoxIcon.vue +1 -6
  486. package/src/components/icons/TerrainBoxIcon.vue.d.ts +1 -1
  487. package/src/components/icons/TextStyleIcon.vue +1 -7
  488. package/src/components/icons/TextStyleIcon.vue.d.ts +1 -1
  489. package/src/components/icons/ThreeDimensionsIcon.vue +1 -6
  490. package/src/components/icons/ThreeDimensionsIcon.vue.d.ts +1 -1
  491. package/src/components/icons/ToolsIcon.vue +1 -7
  492. package/src/components/icons/ToolsIcon.vue.d.ts +1 -1
  493. package/src/components/icons/TouchIcon.vue +1 -7
  494. package/src/components/icons/TouchIcon.vue.d.ts +1 -1
  495. package/src/components/icons/TransparentTerrainIcon.vue +0 -1
  496. package/src/components/icons/TransparentTerrainIcon.vue.d.ts +1 -1
  497. package/src/components/icons/TrashCanIcon.vue +1 -7
  498. package/src/components/icons/TrashCanIcon.vue.d.ts +1 -1
  499. package/src/components/icons/TriangleIcon.vue +1 -6
  500. package/src/components/icons/TriangleIcon.vue.d.ts +1 -1
  501. package/src/components/icons/TwoDimensionsIcon.vue +1 -7
  502. package/src/components/icons/TwoDimensionsIcon.vue.d.ts +1 -1
  503. package/src/components/icons/UploadIcon.vue +1 -6
  504. package/src/components/icons/UploadIcon.vue.d.ts +1 -1
  505. package/src/components/icons/UserProfileIcon.vue +1 -7
  506. package/src/components/icons/UserProfileIcon.vue.d.ts +1 -1
  507. package/src/components/icons/UserShareIcon.vue +1 -6
  508. package/src/components/icons/UserShareIcon.vue.d.ts +1 -1
  509. package/src/components/icons/VideoRecorderIcon.vue +1 -6
  510. package/src/components/icons/VideoRecorderIcon.vue.d.ts +1 -1
  511. package/src/components/icons/ViewpointFlightIcon.vue +1 -6
  512. package/src/components/icons/ViewpointFlightIcon.vue.d.ts +1 -1
  513. package/src/components/icons/ViewpointIcon.vue +1 -6
  514. package/src/components/icons/ViewpointIcon.vue.d.ts +1 -1
  515. package/src/components/icons/Viewshed360Icon.vue +1 -7
  516. package/src/components/icons/Viewshed360Icon.vue.d.ts +1 -1
  517. package/src/components/icons/ViewshedConeIcon.vue +1 -7
  518. package/src/components/icons/ViewshedConeIcon.vue.d.ts +1 -1
  519. package/src/components/icons/ViewshedIcon.vue +1 -7
  520. package/src/components/icons/ViewshedIcon.vue.d.ts +1 -1
  521. package/src/components/icons/WalkingIcon.vue +1 -6
  522. package/src/components/icons/WalkingIcon.vue.d.ts +1 -1
  523. package/src/components/icons/WallIcon.vue +1 -6
  524. package/src/components/icons/WallIcon.vue.d.ts +1 -1
  525. package/src/components/icons/WandIcon.vue +1 -6
  526. package/src/components/icons/WandIcon.vue.d.ts +1 -1
  527. package/src/components/import/VcsFileDrop.vue +83 -0
  528. package/src/components/import/VcsFileDrop.vue.d.ts +37 -0
  529. package/src/components/import/{ImportComponent.vue → VcsImportComponent.vue} +32 -16
  530. package/src/components/import/{ImportComponent.vue.d.ts → VcsImportComponent.vue.d.ts} +5 -3
  531. package/src/components/lists/VcsActionList.vue +48 -44
  532. package/src/components/lists/VcsActionList.vue.d.ts +5 -3
  533. package/src/components/lists/VcsList.vue +156 -236
  534. package/src/components/lists/VcsList.vue.d.ts +27 -75
  535. package/src/components/lists/VcsListItemComponent.vue +216 -0
  536. package/src/components/lists/VcsListItemComponent.vue.d.ts +83 -0
  537. package/src/components/lists/VcsTreeview.vue +159 -53
  538. package/src/components/lists/VcsTreeview.vue.d.ts +28 -7
  539. package/src/components/lists/VcsTreeviewSearchbar.vue +52 -85
  540. package/src/components/lists/VcsTreeviewSearchbar.vue.d.ts +4 -20
  541. package/src/components/lists/VcsTreeviewTitle.vue +40 -0
  542. package/src/components/lists/VcsTreeviewTitle.vue.d.ts +7 -0
  543. package/src/components/modelHelper.d.ts +38 -0
  544. package/src/components/modelHelper.js +130 -0
  545. package/src/components/notification/VcsBadge.vue +9 -7
  546. package/src/components/notification/VcsBadge.vue.d.ts +2 -2
  547. package/src/components/notification/VcsHelp.vue +22 -18
  548. package/src/components/notification/VcsHelp.vue.d.ts +2 -10
  549. package/src/components/notification/VcsHelpTooltip.vue +48 -0
  550. package/src/components/notification/VcsHelpTooltip.vue.d.ts +25 -0
  551. package/src/components/plugins/AbstractConfigEditor.vue +7 -28
  552. package/src/components/plugins/AbstractConfigEditor.vue.d.ts +7 -30
  553. package/src/components/section/VcsExpansionPanel.vue +111 -0
  554. package/src/components/section/VcsExpansionPanel.vue.d.ts +19 -0
  555. package/src/components/{form-inputs-controls → section}/VcsFormSection.vue +17 -11
  556. package/src/components/{form-inputs-controls → section}/VcsFormSection.vue.d.ts +6 -5
  557. package/src/components/style/MenuWrapper.vue +32 -35
  558. package/src/components/style/MenuWrapper.vue.d.ts +8 -8
  559. package/src/components/style/VcsFeatureStyleComponent.vue +2 -1
  560. package/src/components/style/VcsFeatureStyleComponent.vue.d.ts +7 -7
  561. package/src/components/style/VcsFillMenu.vue +12 -19
  562. package/src/components/style/VcsFillMenu.vue.d.ts +5 -23
  563. package/src/components/style/VcsFillSelector.vue +15 -18
  564. package/src/components/style/VcsFillSelector.vue.d.ts +5 -5
  565. package/src/components/style/VcsImageMenu.vue +14 -26
  566. package/src/components/style/VcsImageMenu.vue.d.ts +5 -32
  567. package/src/components/style/VcsImageSelector.vue +126 -179
  568. package/src/components/style/VcsImageSelector.vue.d.ts +21 -20
  569. package/src/components/style/VcsStrokeMenu.vue +12 -19
  570. package/src/components/style/VcsStrokeMenu.vue.d.ts +5 -23
  571. package/src/components/style/VcsStrokeSelector.vue +28 -26
  572. package/src/components/style/VcsStrokeSelector.vue.d.ts +6 -5
  573. package/src/components/style/VcsTextMenu.vue +16 -17
  574. package/src/components/style/VcsTextMenu.vue.d.ts +5 -14
  575. package/src/components/style/VcsTextSelector.vue +84 -97
  576. package/src/components/style/VcsTextSelector.vue.d.ts +25 -27
  577. package/src/components/style/VcsVectorStyleComponent.vue +11 -22
  578. package/src/components/style/VcsVectorStyleComponent.vue.d.ts +8 -8
  579. package/src/components/style/composables.d.ts +0 -14
  580. package/src/components/style/composables.js +0 -46
  581. package/src/components/tables/VcsDataTable.vue +167 -212
  582. package/src/components/tables/VcsDataTable.vue.d.ts +12 -37
  583. package/src/components/tables/VcsTable.vue +46 -67
  584. package/src/components/tables/VcsTable.vue.d.ts +34 -21
  585. package/src/components/tables/VcsTableCell.vue +72 -0
  586. package/src/components/tables/VcsTableCell.vue.d.ts +13 -0
  587. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +88 -52
  588. package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +13 -11
  589. package/src/components/vector-properties/VcsFeatureTransforms.vue +50 -7
  590. package/src/components/vector-properties/VcsFeatureTransforms.vue.d.ts +4 -3
  591. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +543 -591
  592. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +228 -30
  593. package/src/components/viewpoint/VcsViewpointComponent.vue +80 -112
  594. package/src/components/viewpoint/VcsViewpointComponent.vue.d.ts +15 -22
  595. package/src/components/viewpoint/VcsViewpointEditor.vue +5 -6
  596. package/src/components/viewpoint/VcsViewpointEditor.vue.d.ts +3 -3
  597. package/src/contentTree/LayerTree.vue +9 -6
  598. package/src/contentTree/LayerTree.vue.d.ts +3 -3
  599. package/src/contentTree/contentTreeCollection.d.ts +3 -2
  600. package/src/contentTree/contentTreeCollection.js +51 -19
  601. package/src/contentTree/contentTreeItem.d.ts +14 -14
  602. package/src/contentTree/contentTreeItem.js +16 -15
  603. package/src/contentTree/flightContentTreeItem.js +5 -4
  604. package/src/contentTree/layerContentTreeItem.d.ts +8 -5
  605. package/src/contentTree/layerContentTreeItem.js +48 -34
  606. package/src/contentTree/layerGroupContentTreeItem.d.ts +7 -1
  607. package/src/contentTree/layerGroupContentTreeItem.js +22 -3
  608. package/src/contentTree/viewpointContentTreeItem.d.ts +1 -1
  609. package/src/featureInfo/AddressBalloonComponent.vue +25 -27
  610. package/src/featureInfo/AddressBalloonComponent.vue.d.ts +1 -1
  611. package/src/featureInfo/BalloonComponent.vue +38 -39
  612. package/src/featureInfo/BalloonComponent.vue.d.ts +3 -2
  613. package/src/featureInfo/IframeComponent.vue +6 -1
  614. package/src/featureInfo/IframeComponent.vue.d.ts +2 -2
  615. package/src/featureInfo/MarkdownBalloonComponent.vue +5 -3
  616. package/src/featureInfo/MarkdownBalloonComponent.vue.d.ts +4 -4
  617. package/src/featureInfo/abstractFeatureInfoView.d.ts +23 -8
  618. package/src/featureInfo/abstractFeatureInfoView.js +40 -15
  619. package/src/featureInfo/balloonFeatureInfoView.d.ts +2 -2
  620. package/src/featureInfo/balloonFeatureInfoView.js +1 -1
  621. package/src/featureInfo/balloonHelper.js +1 -1
  622. package/src/featureInfo/featureInfo.d.ts +7 -7
  623. package/src/featureInfo/featureInfo.js +61 -43
  624. package/src/featureInfo/iframeFeatureInfoView.d.ts +8 -2
  625. package/src/featureInfo/iframeFeatureInfoView.js +15 -5
  626. package/src/featureInfo/markdownBalloonFeatureInfoView.d.ts +1 -1
  627. package/src/featureInfo/markdownBalloonFeatureInfoView.js +5 -5
  628. package/src/featureInfo/markdownFeatureInfoView.d.ts +1 -1
  629. package/src/featureInfo/markdownFeatureInfoView.js +9 -25
  630. package/src/featureInfo/tableFeatureInfoView.js +13 -4
  631. package/src/i18n/de.d.ts +129 -2
  632. package/src/i18n/de.js +37 -10
  633. package/src/i18n/en.d.ts +129 -2
  634. package/src/i18n/en.js +34 -7
  635. package/src/i18n/i18nCollection.d.ts +9 -15
  636. package/src/i18n/i18nCollection.js +3 -3
  637. package/src/init.d.ts +5 -38
  638. package/src/init.js +29 -30
  639. package/src/legend/StyleLegendItem.vue +27 -28
  640. package/src/legend/StyleLegendItem.vue.d.ts +3 -2
  641. package/src/legend/VcsLegend.vue +39 -62
  642. package/src/legend/VcsLegend.vue.d.ts +9 -6
  643. package/src/legend/legendHelper.d.ts +2 -2
  644. package/src/legend/legendHelper.js +9 -8
  645. package/src/manager/buttonManager.d.ts +2 -2
  646. package/src/manager/buttonManager.js +10 -8
  647. package/src/manager/collectionManager/CollectionComponent.vue +24 -44
  648. package/src/manager/collectionManager/CollectionComponent.vue.d.ts +16 -2
  649. package/src/manager/collectionManager/CollectionComponentContent.vue +12 -13
  650. package/src/manager/collectionManager/CollectionComponentContent.vue.d.ts +3 -1
  651. package/src/manager/collectionManager/CollectionComponentList.vue +13 -11
  652. package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +7 -5
  653. package/src/manager/collectionManager/CollectionComponentProvider.vue +1 -1
  654. package/src/manager/collectionManager/CollectionComponentProvider.vue.d.ts +2 -2
  655. package/src/manager/collectionManager/CollectionComponentStandalone.vue +4 -3
  656. package/src/manager/collectionManager/CollectionComponentStandalone.vue.d.ts +1 -1
  657. package/src/manager/collectionManager/CollectionManager.vue +12 -10
  658. package/src/manager/collectionManager/CollectionManager.vue.d.ts +1 -1
  659. package/src/manager/collectionManager/categoryManager.d.ts +2 -2
  660. package/src/manager/collectionManager/collectionComponentClass.d.ts +8 -8
  661. package/src/manager/collectionManager/collectionComponentClass.js +13 -16
  662. package/src/manager/collectionManager/collectionManager.d.ts +6 -5
  663. package/src/manager/collectionManager/collectionManager.js +14 -12
  664. package/src/manager/collectionManager/editorCollectionComponentClass.d.ts +1 -1
  665. package/src/manager/collectionManager/editorCollectionComponentClass.js +11 -8
  666. package/src/manager/contextMenu/ContextMenuComponent.vue +1 -1
  667. package/src/manager/contextMenu/ContextMenuComponent.vue.d.ts +2 -2
  668. package/src/manager/contextMenu/contextMenuManager.js +2 -2
  669. package/src/manager/navbarManager.js +2 -2
  670. package/src/manager/panel/PanelComponent.vue +2 -9
  671. package/src/manager/panel/PanelComponent.vue.d.ts +2 -2
  672. package/src/manager/panel/PanelManagerComponent.vue +16 -10
  673. package/src/manager/panel/PanelManagerComponent.vue.d.ts +4 -4
  674. package/src/manager/panel/panelHelper.js +3 -3
  675. package/src/manager/panel/panelManager.d.ts +15 -7
  676. package/src/manager/panel/panelManager.js +22 -10
  677. package/src/manager/toolbox/GroupToolboxComponent.vue +19 -37
  678. package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +4 -4
  679. package/src/manager/toolbox/SelectToolboxComponent.vue +19 -60
  680. package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +3 -3
  681. package/src/manager/toolbox/{ToolboxManager.vue → ToolboxManagerComponent.vue} +31 -37
  682. package/src/manager/toolbox/{ToolboxManager.vue.d.ts → ToolboxManagerComponent.vue.d.ts} +4 -2
  683. package/src/manager/toolbox/toolboxManager.d.ts +3 -3
  684. package/src/manager/toolbox/toolboxManager.js +12 -13
  685. package/src/manager/window/WindowComponent.vue +16 -11
  686. package/src/manager/window/WindowComponent.vue.d.ts +2 -2
  687. package/src/manager/window/WindowComponentHeader.vue +40 -12
  688. package/src/manager/window/WindowComponentHeader.vue.d.ts +6 -3
  689. package/src/manager/window/WindowManager.vue +9 -11
  690. package/src/manager/window/WindowManager.vue.d.ts +2 -2
  691. package/src/manager/window/windowManager.d.ts +99 -37
  692. package/src/manager/window/windowManager.js +58 -14
  693. package/src/navigation/MapNavCompass.vue.d.ts +3 -3
  694. package/src/navigation/MapNavigation.vue +60 -13
  695. package/src/navigation/MapNavigation.vue.d.ts +6 -3
  696. package/src/navigation/ObliqueRotation.vue +17 -19
  697. package/src/navigation/ObliqueRotation.vue.d.ts +5 -5
  698. package/src/navigation/OrientationToolsButton.vue +37 -21
  699. package/src/navigation/OrientationToolsButton.vue.d.ts +6 -2
  700. package/src/navigation/TiltSlider.vue +86 -95
  701. package/src/navigation/TiltSlider.vue.d.ts +13 -10
  702. package/src/navigation/VcsCompass.vue +24 -11
  703. package/src/navigation/VcsCompass.vue.d.ts +8 -6
  704. package/src/navigation/VcsZoomButton.vue +13 -15
  705. package/src/navigation/VcsZoomButton.vue.d.ts +2 -2
  706. package/src/navigation/locatorHelper.js +4 -22
  707. package/src/navigation/overviewMap.d.ts +1 -1
  708. package/src/navigation/overviewMap.js +7 -4
  709. package/src/notifier/NotifierComponent.vue +24 -24
  710. package/src/notifier/NotifierComponent.vue.d.ts +1 -1
  711. package/src/notifier/notifier.d.ts +2 -1
  712. package/src/notifier/notifier.js +6 -2
  713. package/src/search/ResultItem.vue +30 -17
  714. package/src/search/ResultItem.vue.d.ts +2 -2
  715. package/src/search/ResultsComponent.vue +40 -40
  716. package/src/search/ResultsComponent.vue.d.ts +4 -3
  717. package/src/search/SearchComponent.vue +20 -21
  718. package/src/search/SearchComponent.vue.d.ts +3 -2
  719. package/src/search/search.d.ts +2 -2
  720. package/src/search/search.js +8 -12
  721. package/src/setup.js +2 -2
  722. package/src/siteConfig.js +9 -9
  723. package/src/state.js +4 -4
  724. package/src/styles/_typography.scss +12 -9
  725. package/src/styles/main.scss +6 -7
  726. package/src/styles/vcsList.scss +8 -0
  727. package/src/uiConfig.d.ts +323 -7
  728. package/src/uiConfig.js +31 -17
  729. package/src/vcsUiApp.d.ts +190 -74
  730. package/src/vcsUiApp.js +100 -55
  731. package/src/vuePlugins/i18n.d.ts +8 -2
  732. package/src/vuePlugins/i18n.js +40 -11
  733. package/src/vuePlugins/vuetify.d.ts +107 -9
  734. package/src/vuePlugins/vuetify.js +287 -68
  735. package/dist/assets/@mdi/font/css/materialdesignicons.css.map +0 -16
  736. package/dist/assets/@mdi/font/css/materialdesignicons.min.e3f476.css +0 -3
  737. package/dist/assets/cesium/Workers/chunk-DUHWWBQQ.js +0 -3273
  738. package/dist/assets/cesium/Workers/chunk-QJ3DFBH3.js +0 -73
  739. package/dist/assets/index-12958251.js +0 -1
  740. package/dist/assets/ui.07c23d.css +0 -5
  741. package/dist/assets/ui.07c23d.js +0 -23876
  742. package/dist/assets/vue.67ce32.js +0 -4920
  743. package/dist/assets/vuetify.8284ec.css +0 -5
  744. package/dist/assets/vuetify.8284ec.js +0 -21263
  745. package/plugins/@vcmap-show-case/extent-example/src/ExtentExample.vue +0 -71
  746. package/plugins/@vcmap-show-case/theme-changer/README.md +0 -23
  747. package/plugins/@vcmap-show-case/theme-changer/config.json +0 -69
  748. package/plugins/@vcmap-show-case/theme-changer/package.json +0 -11
  749. package/plugins/@vcmap-show-case/theme-changer/src/ThemeChangerComponent.vue +0 -120
  750. package/plugins/@vcmap-show-case/theme-changer/src/index.js +0 -108
  751. package/public/assets/@mdi/font/css/materialdesignicons.css.map +0 -16
  752. package/src/application/VcsCustomScreen.vue +0 -45
  753. package/src/application/VcsCustomScreen.vue.d.ts +0 -15
  754. package/src/application/markdownHelper.d.ts +0 -12
  755. package/src/application/markdownHelper.js +0 -85
  756. package/src/components/form-inputs-controls/VcsRadioGrid.vue +0 -160
  757. package/src/components/form-inputs-controls/VcsRadioGrid.vue.d.ts +0 -35
  758. package/src/components/form-inputs-controls/composables.d.ts +0 -7
  759. package/src/components/form-inputs-controls/composables.js +0 -31
  760. package/src/components/import/FileDrop.vue +0 -69
  761. package/src/components/import/FileDrop.vue.d.ts +0 -26
  762. package/src/components/lists/VcsTreeviewLeaf.vue +0 -82
  763. package/src/components/lists/VcsTreeviewLeaf.vue.d.ts +0 -19
  764. package/src/components/notification/VcsTooltip.vue +0 -160
  765. package/src/components/vector-properties/composables.d.ts +0 -33
  766. package/src/components/vector-properties/composables.js +0 -100
  767. package/src/styles/_theming.scss +0 -73
  768. package/src/styles/shades.scss +0 -4
  769. package/src/styles/utils/_all.scss +0 -12
  770. package/src/styles/utils/_border.scss +0 -7
  771. package/src/styles/utils/_cursor.scss +0 -19
  772. package/src/styles/utils/_display.scss +0 -3
  773. package/src/styles/utils/_fade-in.scss +0 -8
  774. package/src/styles/utils/_position.scss +0 -38
  775. package/src/styles/utils/_size.scss +0 -79
  776. package/src/styles/utils/_slide-in.scss +0 -26
  777. package/src/styles/utils/_spacing.scss +0 -11
  778. package/src/styles/utils/_text.scss +0 -30
  779. package/src/styles/utils/_transform.scss +0 -11
  780. package/src/styles/utils/_transition.scss +0 -11
  781. package/src/styles/utils/_z-index.scss +0 -15
  782. package/src/styles/variables.scss +0 -138
  783. package/src/styles/vcsFont.scss +0 -2
  784. package/src/styles/vcsGrid.scss +0 -13
  785. /package/dist/assets/{favicon-128.4c4ce5.png → favicon-128-4c4ce5df.png} +0 -0
  786. /package/dist/assets/{favicon-180.5b99c0.png → favicon-180-4c4ce5df.png} +0 -0
  787. /package/dist/assets/{favicon-192.0e205e.png → favicon-192-4c4ce5df.png} +0 -0
  788. /package/dist/assets/{favicon-32.6b9add.png → favicon-32-4c4ce5df.png} +0 -0
  789. /package/dist/assets/{favicon.d5ec97.svg → favicon-4c4ce5df.svg} +0 -0
  790. /package/dist/assets/font/{TitilliumWeb-Regular.9ca076.woff2 → TitilliumWeb-Regular-9ca076be.woff2} +0 -0
  791. /package/dist/assets/style/{icon-marker.70960f.png → icon-marker-70960f05.png} +0 -0
  792. /package/dist/assets/style/{icon-marker-blue.534e37.png → icon-marker-blue-534e374b.png} +0 -0
  793. /package/dist/assets/style/{icon-marker-green.0b6a92.png → icon-marker-green-0b6a92bc.png} +0 -0
  794. /package/dist/assets/style/{icon-marker-o.036477.png → icon-marker-o-036477fa.png} +0 -0
  795. /package/dist/assets/style/{icon-marker-o-blue.7b6d62.png → icon-marker-o-blue-7b6d6279.png} +0 -0
  796. /package/dist/assets/style/{icon-marker-o-green.c863c0.png → icon-marker-o-green-c863c0fa.png} +0 -0
  797. /package/dist/assets/style/{icon-marker-o-red.93ff58.png → icon-marker-o-red-93ff58df.png} +0 -0
  798. /package/dist/assets/style/{icon-marker-red.313d03.png → icon-marker-red-313d03e8.png} +0 -0
  799. /package/dist/assets/style/{icon-pin.b7ce77.png → icon-pin-b7ce771e.png} +0 -0
  800. /package/dist/assets/style/{icon-pin-blue.7be369.png → icon-pin-blue-7be369a3.png} +0 -0
  801. /package/dist/assets/style/{icon-pin-green.cbb935.png → icon-pin-green-cbb935fe.png} +0 -0
  802. /package/dist/assets/style/{icon-pin-red.3f25b2.png → icon-pin-red-3f25b245.png} +0 -0
  803. /package/public/assets/{favicon-128.png → favicon-128-4c4ce5df.png} +0 -0
  804. /package/public/assets/{favicon-180.png → favicon-180-4c4ce5df.png} +0 -0
  805. /package/public/assets/{favicon-192.png → favicon-192-4c4ce5df.png} +0 -0
  806. /package/public/assets/{favicon-32.png → favicon-32-4c4ce5df.png} +0 -0
  807. /package/public/assets/{favicon.svg → favicon-4c4ce5df.svg} +0 -0
@@ -1,18 +1,18 @@
1
1
  <template>
2
- <v-container class="fill-height pa-0" absolute fluid>
2
+ <v-container class="fill-height pa-0 vcs-app" absolute fluid>
3
3
  <VcsSplashScreen
4
4
  v-if="splashScreen"
5
- v-model="splashScreenRef"
6
5
  :options="splashScreen"
7
- :window-id="'splashScreen'"
6
+ v-model="splashScreenRef"
8
7
  ></VcsSplashScreen>
9
- <VcsNavbar />
8
+ <VcsNavbar v-if="!config.hideHeader" />
10
9
  <VcsContainer :attribution-action="attributionAction" />
11
10
  <v-footer
11
+ v-if="showFooter"
12
+ app
12
13
  absolute
13
- v-if="$vuetify.breakpoint.smAndUp"
14
- min-height="22px"
15
- class="d-flex gap-1 pa-0"
14
+ :height="footerHeight"
15
+ class="d-flex gc-1 pa-0"
16
16
  >
17
17
  <VcsPositionDisplay />
18
18
  <VcsTextPageFooter
@@ -25,8 +25,8 @@
25
25
  :text-page="dataProtection"
26
26
  :window-id="'dataProtectionWindow'"
27
27
  />
28
+ <v-spacer />
28
29
  <VcsAttributionsFooter
29
- class="align-wrapper"
30
30
  :entries="attributionEntries"
31
31
  :attribution-action="attributionAction"
32
32
  />
@@ -35,28 +35,16 @@
35
35
  </template>
36
36
 
37
37
  <style scoped lang="scss">
38
- ::v-deep .v-application--wrap {
38
+ :deep(.v-application--wrap) {
39
39
  min-height: fit-content;
40
40
  }
41
- .align-wrapper {
42
- position: absolute;
43
- right: 0;
44
- margin-right: 4px !important;
45
- }
46
41
  </style>
47
42
 
48
43
  <script>
49
- import {
50
- computed,
51
- getCurrentInstance,
52
- onMounted,
53
- onUnmounted,
54
- provide,
55
- ref,
56
- watch,
57
- } from 'vue';
44
+ import { computed, onMounted, onUnmounted, provide, watch, ref } from 'vue';
45
+ import { useDisplay } from 'vuetify';
58
46
  import { getVcsAppById, moduleIdSymbol } from '@vcmap/core';
59
- import { VContainer, VFooter } from 'vuetify/lib';
47
+ import { VContainer, VFooter, VSpacer } from 'vuetify/components';
60
48
  import { getLogger } from '@vcsuite/logger';
61
49
  import VcsContainer from './VcsContainer.vue';
62
50
  import { ButtonLocation } from '../manager/navbarManager.js';
@@ -70,18 +58,53 @@
70
58
  import VcsSettings from './VcsSettings.vue';
71
59
  import { WindowSlot } from '../manager/window/windowManager.js';
72
60
  import CollectionManager from '../manager/collectionManager/CollectionManager.vue';
73
- import { defaultPrimaryColor } from '../vuePlugins/vuetify.js';
61
+ import {
62
+ createVcsThemes,
63
+ setTheme,
64
+ useFontSize,
65
+ } from '../vuePlugins/vuetify.js';
74
66
  import VcsLegend from '../legend/VcsLegend.vue';
75
67
  import { getLegendEntries } from '../legend/legendHelper.js';
76
68
  import VcsAttributionsFooter from './VcsAttributionsFooter.vue';
77
69
  import VcsTextPageFooter from './VcsTextPageFooter.vue';
78
70
  import VcsSplashScreen from './VcsSplashScreen.vue';
79
- import VcsCustomScreen from './VcsCustomScreen.vue';
71
+ import VcsTextPage from './VcsTextPage.vue';
80
72
  import VcsAttributions from './VcsAttributions.vue';
81
73
  import { getAttributions } from './attributionsHelper.js';
82
74
  import VcsDefaultLogoMobile from '../logo-mobile.svg';
83
75
  import VcsPositionDisplay from './VcsPositionDisplay.vue';
84
76
 
77
+ /**
78
+ * This helper checks the uiConfig and depending on the value will setup/teardown the providedSetupFunction
79
+ * @param {import("../vcsUiApp.js").default} app
80
+ * @param {(import("../vcsUiApp.js").default) => () => void} setupFunction
81
+ * @param {string} configOption parameter name of a uiConfig parameter, for example `app.uiConfig.config.hideContentTree`
82
+ * @returns {function():void} - cleanup function
83
+ */
84
+ export function setupUIConfigDependency(app, setupFunction, configOption) {
85
+ let destroyFunction = null;
86
+ function handler() {
87
+ if (!app.uiConfig.config[configOption] && !destroyFunction) {
88
+ destroyFunction = setupFunction(app);
89
+ } else if (app.uiConfig.config[configOption] && destroyFunction) {
90
+ destroyFunction();
91
+ destroyFunction = null;
92
+ }
93
+ }
94
+ handler();
95
+ const listeners = [
96
+ app.uiConfig.added.addEventListener(handler),
97
+ app.uiConfig.added.addEventListener(handler),
98
+ ];
99
+
100
+ return () => {
101
+ if (destroyFunction) {
102
+ destroyFunction();
103
+ }
104
+ listeners.forEach((cb) => cb());
105
+ };
106
+ }
107
+
85
108
  /**
86
109
  * You should call this function in the component providing the vcsUiApp to your
87
110
  * application in the components mounted hook. This will call VcsAppMounted on all plugins in the app
@@ -116,6 +139,7 @@
116
139
  /**
117
140
  * This helper function will add a map action button based on the default icons
118
141
  * to the apps NavbarManager. Furthermore, all maps on the app are synced for adding and removing.
142
+ * The buttons can be removed with the uiConfig hideMapButtons
119
143
  * @param {import("../vcsUiApp.js").default} app
120
144
  * @returns {function():void}
121
145
  */
@@ -224,6 +248,33 @@
224
248
  }
225
249
  };
226
250
 
251
+ let currentEntryLength = entries.length;
252
+ const watchEntries = watch(entries, (newValue) => {
253
+ if (
254
+ app.uiConfig.config.openLegendOnAdd &&
255
+ newValue.length > currentEntryLength &&
256
+ !app.windowManager.has('legend')
257
+ ) {
258
+ app.windowManager.add(
259
+ {
260
+ id: 'legend',
261
+ component: VcsLegend,
262
+ state: {
263
+ headerTitle: 'legend.title',
264
+ headerIcon: '$vcsLegend',
265
+ infoUrl: app.getHelpUrlCallback(
266
+ '/components/contentspace.html#id_legend',
267
+ ),
268
+ },
269
+ slot: WindowSlot.DYNAMIC_RIGHT,
270
+ props: { entries },
271
+ },
272
+ vcsAppSymbol,
273
+ );
274
+ }
275
+ currentEntryLength = newValue.length;
276
+ });
277
+
227
278
  /**
228
279
  * Handles legend button and window.
229
280
  * Adds a button, if legend definitions are available or removes legend otherwise.
@@ -238,8 +289,11 @@
238
289
  if (layersWithLegend < 1 && stylesWithLegend < 1) {
239
290
  app.navbarManager.remove('legend');
240
291
  app.windowManager.remove('legend');
292
+ } else {
293
+ addLegend();
241
294
  }
242
295
  };
296
+ handleLegend();
243
297
 
244
298
  const listeners = [
245
299
  app.layers.added.addEventListener((layer) => {
@@ -257,6 +311,9 @@
257
311
  ];
258
312
 
259
313
  return () => {
314
+ watchEntries();
315
+ app.navbarManager.remove('legend');
316
+ app.windowManager.remove('legend');
260
317
  destroy();
261
318
  legendDestroy();
262
319
  listeners.forEach((cb) => cb());
@@ -270,7 +327,7 @@
270
327
  */
271
328
  function setupCustomScreen(app) {
272
329
  function setupCustomScreenAction() {
273
- const { customScreen } = app.uiConfig.config.value;
330
+ const { customScreen } = app.uiConfig.config;
274
331
  const { action: customScreenAction, destroy: customScreenDestroy } =
275
332
  createToggleAction(
276
333
  {
@@ -280,7 +337,7 @@
280
337
  },
281
338
  {
282
339
  id: 'customScreenId',
283
- component: VcsCustomScreen,
340
+ component: VcsTextPage,
284
341
  state: {
285
342
  headerIcon: customScreen.icon,
286
343
  headerTitle: customScreen.name,
@@ -308,7 +365,7 @@
308
365
  }
309
366
  let customScreen;
310
367
  const stopCustomScreenWatcher = watch(
311
- () => app.uiConfig.config.value.customScreen,
368
+ () => app.uiConfig.config.customScreen,
312
369
  (newCustomScreen) => {
313
370
  if (app.navbarManager.has('customScreenToggle')) {
314
371
  app.navbarManager.remove('customScreenToggle');
@@ -334,37 +391,51 @@
334
391
  */
335
392
  function setupSplashScreen(app, splashScreenRef) {
336
393
  function setupSplashScreenAction() {
337
- const { splashScreen } = app.uiConfig.config.value;
338
- const splashScreenAction = {
339
- name: splashScreen.name || 'components.splashScreen.name',
340
- icon: splashScreen.icon || 'mdi-alert-box',
341
- title: splashScreen.title,
342
- callback() {
343
- splashScreenRef.value = !splashScreenRef.value;
344
- },
345
- };
346
- app.navbarManager.add(
347
- {
348
- id: 'splashScreenToggle',
349
- action: splashScreenAction,
350
- },
351
- vcsAppSymbol,
352
- ButtonLocation.MENU,
353
- );
394
+ const { splashScreen } = app.uiConfig.config;
395
+ if (splashScreen) {
396
+ splashScreenRef.value = true;
397
+ }
398
+ if (splashScreen && splashScreen.menuEntry) {
399
+ const splashScreenAction = {
400
+ name: splashScreen.name || 'components.splashScreen.name',
401
+ icon: splashScreen.icon || 'mdi-alert-box',
402
+ title: splashScreen.title,
403
+ callback() {
404
+ splashScreenRef.value = !splashScreenRef.value;
405
+ },
406
+ };
407
+ app.navbarManager.add(
408
+ {
409
+ id: 'splashScreenToggle',
410
+ action: splashScreenAction,
411
+ },
412
+ vcsAppSymbol,
413
+ ButtonLocation.MENU,
414
+ );
415
+ }
354
416
  }
355
-
356
- return watch(
357
- () => app.uiConfig.config.value.splashScreen,
358
- (newSplashScreen) => {
417
+ setupSplashScreenAction();
418
+ const removeAddedListener = app.uiConfig.added.addEventListener((item) => {
419
+ if (item.name === 'splashScreen') {
359
420
  if (app.navbarManager.has('splashScreenToggle')) {
360
421
  app.navbarManager.remove('splashScreenToggle');
361
422
  }
362
- if (newSplashScreen && newSplashScreen.menuEntry) {
363
- setupSplashScreenAction();
423
+ setupSplashScreenAction();
424
+ }
425
+ });
426
+ const removeRemovedListener = app.uiConfig.removed.addEventListener(
427
+ (item) => {
428
+ if (item.name === 'splashScreen') {
429
+ if (app.navbarManager.has('splashScreenToggle')) {
430
+ app.navbarManager.remove('splashScreenToggle');
431
+ }
364
432
  }
365
433
  },
366
- { immediate: true },
367
434
  );
435
+ return () => {
436
+ removeAddedListener();
437
+ removeRemovedListener();
438
+ };
368
439
  }
369
440
  /**
370
441
  * This helper function will add a settings action button to the apps NavbarManager MENU location.
@@ -372,6 +443,7 @@
372
443
  * @returns {function():void}
373
444
  */
374
445
  export function setupSettingsWindow(app) {
446
+ const settingsWindowId = 'vcsSettings';
375
447
  const { action: settingsAction, destroy: settingsDestroy } =
376
448
  createToggleAction(
377
449
  {
@@ -380,7 +452,7 @@
380
452
  title: 'settings.tooltip',
381
453
  },
382
454
  {
383
- id: 'settingsId',
455
+ id: settingsWindowId,
384
456
  component: VcsSettings,
385
457
  state: { headerIcon: 'mdi-cog', headerTitle: 'settings.title' },
386
458
  slot: WindowSlot.DYNAMIC_RIGHT,
@@ -390,13 +462,15 @@
390
462
  );
391
463
  app.navbarManager.add(
392
464
  {
393
- id: 'settingsToggle',
465
+ id: settingsWindowId,
394
466
  action: settingsAction,
395
467
  },
396
468
  vcsAppSymbol,
397
469
  ButtonLocation.MENU,
398
470
  );
399
471
  return () => {
472
+ app.navbarManager.remove(settingsWindowId);
473
+ app.windowManager.remove(settingsWindowId);
400
474
  settingsDestroy();
401
475
  };
402
476
  }
@@ -424,6 +498,11 @@
424
498
  );
425
499
  }
426
500
 
501
+ /**
502
+ * @type {string}
503
+ */
504
+ export const categoryManagerWindowId = 'category-manager';
505
+
427
506
  /**
428
507
  * This helper function will add a category manager button to the navbar. The category Manager
429
508
  * will only be shown if there is at least one category under management in the categoryManager.
@@ -431,15 +510,14 @@
431
510
  * @returns {function():void}
432
511
  */
433
512
  export function setupCategoryManagerWindow(app) {
434
- const id = 'category-manager';
435
513
  const { action: categoryManagerAction, destroy } = createToggleAction(
436
514
  {
437
- name: id,
515
+ name: categoryManagerWindowId,
438
516
  icon: '$vcsComponents',
439
517
  title: 'categoryManager.tooltip',
440
518
  },
441
519
  {
442
- id,
520
+ id: categoryManagerWindowId,
443
521
  state: {
444
522
  headerTitle: 'categoryManager.title',
445
523
  headerIcon: '$vcsComponents',
@@ -465,9 +543,9 @@
465
543
  * @param {import("../manager/collectionManager/collectionComponentClass.js").default} collectionComponent
466
544
  */
467
545
  function handleAdded(collectionComponent) {
468
- if (!app.navbarManager.has(id)) {
546
+ if (!app.navbarManager.has(categoryManagerWindowId)) {
469
547
  app.navbarManager.add(
470
- { id, action: categoryManagerAction },
548
+ { id: categoryManagerWindowId, action: categoryManagerAction },
471
549
  vcsAppSymbol,
472
550
  ButtonLocation.CONTENT,
473
551
  );
@@ -476,7 +554,7 @@
476
554
  collectionComponent.id,
477
555
  collectionComponent.collection.added.addEventListener((item) => {
478
556
  if (
479
- !app.windowManager.has(id) &&
557
+ !app.windowManager.has(categoryManagerWindowId) &&
480
558
  item[moduleIdSymbol] === app.dynamicModuleId
481
559
  ) {
482
560
  categoryManagerAction.hasUpdate = true;
@@ -495,8 +573,8 @@
495
573
  collectionListeners.delete(collectionComponent.id);
496
574
 
497
575
  if (!app.categoryManager.componentIds.length) {
498
- app.windowManager.remove(id);
499
- app.navbarManager.remove(id);
576
+ app.windowManager.remove(categoryManagerWindowId);
577
+ app.navbarManager.remove(categoryManagerWindowId);
500
578
  categoryManagerAction.hasUpdate = false;
501
579
  }
502
580
  }
@@ -513,13 +591,15 @@
513
591
 
514
592
  const windowListener = app.windowManager.added.addEventListener(
515
593
  (windowComponent) => {
516
- if (windowComponent.id === id) {
594
+ if (windowComponent.id === categoryManagerWindowId) {
517
595
  categoryManagerAction.hasUpdate = false;
518
596
  }
519
597
  },
520
598
  );
521
599
 
522
600
  return () => {
601
+ app.windowManager.remove(categoryManagerWindowId);
602
+ app.navbarManager.remove(categoryManagerWindowId);
523
603
  destroy();
524
604
  addedListener();
525
605
  removedListener();
@@ -534,28 +614,25 @@
534
614
  * the theming keys. Returns a function to stop syncing.
535
615
  * Also adds a watcher to vuetify theme, which triggers themeChanged event on the VcsUiApp.
536
616
  * @param {import("../vcsUiApp.js").default} app
537
- * @param {import("vuetify").Framework} vuetify
538
617
  * @returns {function():void} - call to stop syncing
539
618
  */
540
- export function setupUiConfigTheming(app, vuetify) {
619
+ export function setupUiConfigTheming(app) {
620
+ function updateTheme(item) {
621
+ if (item.name === 'primaryColor' || item.name === 'vuetifyTheme') {
622
+ const mergedThemes = createVcsThemes(
623
+ app.uiConfig.getByKey('vuetifyTheme')?.value,
624
+ app.uiConfig.getByKey('primaryColor')?.value,
625
+ );
626
+ setTheme(app.vuetify, mergedThemes);
627
+ app.themeChanged.raiseEvent();
628
+ }
629
+ }
541
630
  const listeners = [
542
- app.uiConfig.added.addEventListener((item) => {
543
- if (item.name === 'primaryColor') {
544
- vuetify.theme.themes.dark.primary = item.value?.dark || item.value;
545
- vuetify.theme.themes.light.primary = item.value?.light || item.value;
546
- app.themeChanged.raiseEvent();
547
- }
548
- }),
549
- app.uiConfig.removed.addEventListener((item) => {
550
- if (item.name === 'primaryColor') {
551
- vuetify.theme.themes.dark.primary = defaultPrimaryColor.dark;
552
- vuetify.theme.themes.light.primary = defaultPrimaryColor.light;
553
- app.themeChanged.raiseEvent();
554
- }
555
- }),
631
+ app.uiConfig.added.addEventListener(updateTheme),
632
+ app.uiConfig.removed.addEventListener(updateTheme),
556
633
  ];
557
634
  const stopWatching = watch(
558
- () => vuetify.theme.dark,
635
+ () => app.vuetify.theme.current.value.dark,
559
636
  () => app.themeChanged.raiseEvent(),
560
637
  );
561
638
 
@@ -650,6 +727,7 @@
650
727
  VcsNavbar,
651
728
  VContainer,
652
729
  VFooter,
730
+ VSpacer,
653
731
  },
654
732
  props: {
655
733
  appId: {
@@ -661,18 +739,31 @@
661
739
  /** @type {import("../vcsUiApp.js").default} */
662
740
  const app = getVcsAppById(props.appId);
663
741
  provide('vcsApp', app);
664
- const mapNavbarListener = setupMapNavbar(app);
665
- const legendDestroy = setupLegendWindow(app);
666
- const settingsDestroy = setupSettingsWindow(app);
742
+ const mapNavbarListener = setupUIConfigDependency(
743
+ app,
744
+ setupMapNavbar,
745
+ 'hideMapButtons',
746
+ );
747
+ const legendDestroy = setupUIConfigDependency(
748
+ app,
749
+ setupLegendWindow,
750
+ 'hideLegend',
751
+ );
752
+ const settingsDestroy = setupUIConfigDependency(
753
+ app,
754
+ setupSettingsWindow,
755
+ 'hideSettings',
756
+ );
667
757
  const stopCustomScreen = setupCustomScreen(app);
668
758
  const splashScreenRef = ref(true);
669
759
  const stopSplashScreen = setupSplashScreen(app, splashScreenRef);
670
760
  setupHelpButton(app);
671
- const destroyComponentsWindow = setupCategoryManagerWindow(app);
672
- const destroyThemingListener = setupUiConfigTheming(
761
+ const destroyMyWorkspace = setupUIConfigDependency(
673
762
  app,
674
- getCurrentInstance().proxy.$vuetify,
763
+ setupCategoryManagerWindow,
764
+ 'hideMyWorkspace',
675
765
  );
766
+ const destroyThemingListener = setupUiConfigTheming(app);
676
767
  const destroyDisplayQualityListener = setupUiConfigDisplayQuality(app);
677
768
  const { attributionEntries, attributionAction, destroyAttributions } =
678
769
  setupAttributions(app);
@@ -691,42 +782,53 @@
691
782
  settingsDestroy();
692
783
  stopCustomScreen();
693
784
  stopSplashScreen();
694
- destroyComponentsWindow();
785
+ destroyMyWorkspace();
695
786
  destroyThemingListener();
696
- destroyAttributions();
697
787
  destroyDisplayQualityListener();
788
+ destroyAttributions();
789
+ });
790
+
791
+ const { smAndUp } = useDisplay();
792
+ const fontSize = useFontSize();
793
+ const footerHeight = computed(() => {
794
+ return Math.ceil(fontSize.value * 1.65);
698
795
  });
699
796
 
700
797
  return {
798
+ config: app.uiConfig.config,
799
+ showFooter: computed(() => {
800
+ return !app.uiConfig.config.hideFooter && smAndUp.value;
801
+ }),
802
+ footerHeight,
701
803
  mobileLogo: computed(
702
804
  () =>
703
- app.uiConfig.config.value.mobileLogo ??
704
- app.uiConfig.config.value.logo ??
805
+ app.uiConfig.config.mobileLogo ??
806
+ app.uiConfig.config.logo ??
705
807
  VcsDefaultLogoMobile,
706
808
  ),
707
809
  imprint: computed(() => {
708
- if (app.uiConfig.config.value.imprint) {
810
+ if (app.uiConfig.config.imprint) {
709
811
  return {
710
812
  title: 'footer.imprint.title',
711
813
  tooltip: 'footer.imprint.tooltip',
712
- ...app.uiConfig.config.value.imprint,
814
+ ...app.uiConfig.config.imprint,
713
815
  };
714
816
  }
715
817
  return undefined;
716
818
  }),
717
819
  dataProtection: computed(() => {
718
- if (app.uiConfig.config.value.dataProtection) {
820
+ if (app.uiConfig.config.dataProtection) {
719
821
  return {
720
822
  title: 'footer.dataProtection.title',
721
823
  tooltip: 'footer.dataProtection.tooltip',
722
- ...app.uiConfig.config.value.dataProtection,
824
+ ...app.uiConfig.config.dataProtection,
723
825
  };
724
826
  }
725
827
  return undefined;
726
828
  }),
727
829
  splashScreenRef,
728
830
  splashScreen: computed(() => {
729
- if (app.uiConfig.config.value.splashScreen) {
831
+ if (app.uiConfig.config.splashScreen) {
730
832
  return {
731
833
  title: 'components.splashScreen.name',
732
834
  tooltip: 'components.splashScreen.tooltip',
@@ -734,7 +836,7 @@
734
836
  width: '800px',
735
837
  height: '400px',
736
838
  },
737
- ...app.uiConfig.config.value.splashScreen,
839
+ ...app.uiConfig.config.splashScreen,
738
840
  };
739
841
  }
740
842
  return undefined;