@vcmap/ui 5.3.3 → 6.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (699) hide show
  1. package/build/build.js +26 -4
  2. package/build/buildHelpers.js +6 -1
  3. package/build/buildTypes.js +18 -0
  4. package/build/commonViteConfig.js +7 -10
  5. package/build/generateOLLib.js +5 -1
  6. package/build/info/publish.js +2 -2
  7. package/build/lintTypes.js +5 -0
  8. package/build/staging/Dockerfile +1 -1
  9. package/config/base.config.json +9 -6
  10. package/config/dev.config.json +14 -10
  11. package/config/www.config.json +1 -1
  12. package/dist/assets/cesium/Assets/approximateTerrainHeights.json +1 -1
  13. package/dist/assets/cesium/ThirdParty/Workers/z-worker-pako.js +1 -1
  14. package/dist/assets/cesium/Workers/{chunk-ZA25DG4Y.js → chunk-3DRPXHZ4.js} +11 -11
  15. package/dist/assets/cesium/Workers/{chunk-OAVNIRB4.js → chunk-3GI7DWF7.js} +5 -7
  16. package/dist/assets/cesium/Workers/{chunk-TFC6TZ3S.js → chunk-4EW3HFFI.js} +33 -22
  17. package/dist/assets/cesium/Workers/{chunk-LLUNNUJV.js → chunk-4OX4RYLB.js} +5 -5
  18. package/dist/assets/cesium/Workers/{chunk-66QLLS45.js → chunk-4RJH3H6D.js} +11 -9
  19. package/dist/assets/cesium/Workers/{chunk-MPAZH4BF.js → chunk-5OUTANXX.js} +1 -1
  20. package/dist/assets/cesium/Workers/{chunk-WXTV4ATB.js → chunk-6DH5PLFD.js} +1 -1
  21. package/dist/assets/cesium/Workers/{chunk-A4JVFBQ3.js → chunk-6DXIYFX3.js} +2 -2
  22. package/dist/assets/cesium/Workers/chunk-A5C2A5O5.js +963 -0
  23. package/dist/assets/cesium/Workers/{chunk-HQF437NJ.js → chunk-AGTH5JMJ.js} +6 -6
  24. package/dist/assets/cesium/Workers/{chunk-RP2A7BR5.js → chunk-AVFIYUKX.js} +12 -14
  25. package/dist/assets/cesium/Workers/{chunk-227AJNOA.js → chunk-BAJAVGUF.js} +5 -5
  26. package/dist/assets/cesium/Workers/{chunk-N3JIFFX2.js → chunk-BPY4HDAK.js} +5 -6
  27. package/dist/assets/cesium/Workers/{chunk-ABADGKYE.js → chunk-D6PDWQXW.js} +2 -2
  28. package/dist/assets/cesium/Workers/{chunk-34YUDLRP.js → chunk-DR7LK6PG.js} +13 -13
  29. package/dist/assets/cesium/Workers/{chunk-OYFCF4PL.js → chunk-DTACCQDR.js} +6 -6
  30. package/dist/assets/cesium/Workers/{chunk-C3SXRKRW.js → chunk-EVU2UNBD.js} +7 -7
  31. package/dist/assets/cesium/Workers/{chunk-6BTKZDRG.js → chunk-F7IEM66T.js} +3 -5
  32. package/dist/assets/cesium/Workers/{chunk-QT3MPEMI.js → chunk-FSXNF76Y.js} +4 -4
  33. package/dist/assets/cesium/Workers/{chunk-PCJWUS4M.js → chunk-FYYT5EVH.js} +830 -14
  34. package/dist/assets/cesium/Workers/{chunk-QMEMZIJI.js → chunk-FZDKIUDT.js} +4 -4
  35. package/dist/assets/cesium/Workers/{chunk-XTY7B2N6.js → chunk-G6346EDR.js} +16 -16
  36. package/dist/assets/cesium/Workers/{chunk-CHHNOC2C.js → chunk-H7PSTL64.js} +95 -155
  37. package/dist/assets/cesium/Workers/{chunk-2R5O53JW.js → chunk-I67V66MN.js} +6 -6
  38. package/dist/assets/cesium/Workers/{chunk-JS3AW5BK.js → chunk-IALQGTA2.js} +6 -6
  39. package/dist/assets/cesium/Workers/{chunk-K36FEYS7.js → chunk-KNMGSIIN.js} +16 -12
  40. package/dist/assets/cesium/Workers/{chunk-J3JY6I2C.js → chunk-L4XQPD6P.js} +49 -88
  41. package/dist/assets/cesium/Workers/{chunk-X4SU25DT.js → chunk-LMTN7R7M.js} +10 -12
  42. package/dist/assets/cesium/Workers/{chunk-JB2LWGH4.js → chunk-LUYI3XCB.js} +14 -14
  43. package/dist/assets/cesium/Workers/{chunk-AFFLIKOH.js → chunk-N5MIFVXJ.js} +7 -7
  44. package/dist/assets/cesium/Workers/{chunk-MYZB7C4T.js → chunk-O7OUBDMZ.js} +10 -10
  45. package/dist/assets/cesium/Workers/{chunk-VLGOATD6.js → chunk-P24I5VUS.js} +22 -22
  46. package/dist/assets/cesium/Workers/{chunk-KD4Y7CZL.js → chunk-PIOKSAZH.js} +15 -17
  47. package/dist/assets/cesium/Workers/{chunk-3W63OHNJ.js → chunk-PRKEY4QK.js} +5 -5
  48. package/dist/assets/cesium/Workers/{chunk-O5AMBQ36.js → chunk-Q7PM4W34.js} +8 -8
  49. package/dist/assets/cesium/Workers/{chunk-GLZBE3ML.js → chunk-QLC66ZRL.js} +13 -13
  50. package/dist/assets/cesium/Workers/{chunk-OZJDGN5F.js → chunk-RRLGJV3Q.js} +16 -16
  51. package/dist/assets/cesium/Workers/{chunk-CCFQRR6D.js → chunk-S2UEXF6T.js} +1 -1
  52. package/dist/assets/cesium/Workers/{chunk-QIKODV5G.js → chunk-S4VTLNAJ.js} +4 -4
  53. package/dist/assets/cesium/Workers/{chunk-EW2GWJYB.js → chunk-SJC5PRDX.js} +2 -2
  54. package/dist/assets/cesium/Workers/{chunk-KTJSNCK4.js → chunk-T6TZXGG5.js} +230 -20
  55. package/dist/assets/cesium/Workers/{chunk-RW6LU2CJ.js → chunk-TLGODPEV.js} +5 -5
  56. package/dist/assets/cesium/Workers/{chunk-CTELOFLA.js → chunk-UC566ISB.js} +6 -6
  57. package/dist/assets/cesium/Workers/{chunk-ZFOBYDGF.js → chunk-UMX265HW.js} +2 -2
  58. package/dist/assets/cesium/Workers/{chunk-Z24VKNDO.js → chunk-V7WJDCPA.js} +12 -12
  59. package/dist/assets/cesium/Workers/{chunk-4MFFIWUA.js → chunk-VD6G7UPU.js} +2 -2
  60. package/dist/assets/cesium/Workers/{chunk-XY7MGBKC.js → chunk-WMVCLETM.js} +14 -16
  61. package/dist/assets/cesium/Workers/{chunk-IPA4EACJ.js → chunk-WOA6WSHH.js} +12 -12
  62. package/dist/assets/cesium/Workers/{chunk-PFQBCKBM.js → chunk-X67EJ6X6.js} +4398 -2722
  63. package/dist/assets/cesium/Workers/{chunk-V3NGATMV.js → chunk-XGI4FRXF.js} +11 -13
  64. package/dist/assets/cesium/Workers/{chunk-AHKEZ2OE.js → chunk-YFVI4SQI.js} +1 -1
  65. package/dist/assets/cesium/Workers/{chunk-HARLBUOL.js → chunk-YFYPR4MW.js} +11 -8
  66. package/dist/assets/cesium/Workers/combineGeometry.js +22 -23
  67. package/dist/assets/cesium/Workers/createBoxGeometry.js +16 -17
  68. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +14 -15
  69. package/dist/assets/cesium/Workers/createCircleGeometry.js +29 -26
  70. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +17 -18
  71. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +35 -36
  72. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +29 -30
  73. package/dist/assets/cesium/Workers/createCorridorGeometry.js +29 -30
  74. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +27 -28
  75. package/dist/assets/cesium/Workers/createCylinderGeometry.js +18 -19
  76. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +17 -19
  77. package/dist/assets/cesium/Workers/createEllipseGeometry.js +24 -25
  78. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +17 -18
  79. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +17 -18
  80. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +16 -17
  81. package/dist/assets/cesium/Workers/createFrustumGeometry.js +16 -17
  82. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +18 -18
  83. package/dist/assets/cesium/Workers/createGeometry.js +52 -33
  84. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +28 -29
  85. package/dist/assets/cesium/Workers/createPlaneGeometry.js +14 -15
  86. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +13 -14
  87. package/dist/assets/cesium/Workers/createPolygonGeometry.js +451 -176
  88. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +29 -30
  89. package/dist/assets/cesium/Workers/createPolylineGeometry.js +24 -25
  90. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +31 -33
  91. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +27 -29
  92. package/dist/assets/cesium/Workers/createRectangleGeometry.js +30 -31
  93. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +21 -24
  94. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +22 -23
  95. package/dist/assets/cesium/Workers/createSphereGeometry.js +17 -18
  96. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +16 -17
  97. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +3 -3
  98. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +14 -16
  99. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +22 -23
  100. package/dist/assets/cesium/Workers/createVectorTilePoints.js +12 -12
  101. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +20 -21
  102. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +14 -16
  103. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +24 -25
  104. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +25 -26
  105. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +19 -21
  106. package/dist/assets/cesium/Workers/createWallGeometry.js +23 -24
  107. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +22 -23
  108. package/dist/assets/cesium/Workers/decodeDraco.js +11 -11
  109. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +12 -19
  110. package/dist/assets/cesium/Workers/decodeI3S.js +600 -92
  111. package/dist/assets/cesium/Workers/transcodeKTX2.js +46 -82
  112. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +1 -1
  113. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +21 -22
  114. package/dist/assets/{cesium.7b7975.js → cesium.0b750d.js} +150319 -144832
  115. package/dist/assets/cesium.js +1 -1
  116. package/dist/assets/{core.2823d9.js → core.cbf44a.js} +2810 -2749
  117. package/dist/assets/core.js +1 -1
  118. package/dist/assets/index-8eGauqjA.js +1 -0
  119. package/dist/assets/{ol.f4bb15.js → ol.86e93c.js} +19259 -19196
  120. package/dist/assets/ol.js +1 -1
  121. package/dist/assets/ui.7c276c.css +1 -0
  122. package/dist/assets/ui.7c276c.js +35158 -0
  123. package/dist/assets/ui.js +1 -1
  124. package/dist/assets/vue.a3cd64.js +6096 -0
  125. package/dist/assets/vue.js +1 -5
  126. package/dist/assets/vuetify.4d18fe.css +5 -0
  127. package/dist/assets/vuetify.4d18fe.js +24605 -0
  128. package/dist/assets/vuetify.js +1 -5
  129. package/dist/index.html +1 -2
  130. package/index.d.ts +27 -9
  131. package/index.js +12 -29
  132. package/lib/vue.js +0 -1
  133. package/lib/vuetify.js +1 -2
  134. package/lib/vuetifyLib.js +6 -0
  135. package/package.json +29 -19
  136. package/plugins/@vcmap-show-case/buttons-example/package.json +2 -2
  137. package/plugins/@vcmap-show-case/buttons-example/src/ButtonsExample.vue +57 -61
  138. package/plugins/@vcmap-show-case/buttons-example/src/index.js +1 -1
  139. package/plugins/@vcmap-show-case/category-tester/package.json +2 -2
  140. package/plugins/@vcmap-show-case/category-tester/src/CategoriesExample.vue +12 -6
  141. package/plugins/@vcmap-show-case/category-tester/src/CollectionComponentOptions.vue +4 -4
  142. package/plugins/@vcmap-show-case/category-tester/src/FoobarEditor.vue +4 -4
  143. package/plugins/@vcmap-show-case/collection-manager-example/src/CollectionManagerExample.vue +11 -7
  144. package/plugins/@vcmap-show-case/config-editor/src/ConfigEditor.vue +2 -2
  145. package/plugins/@vcmap-show-case/extent-example/README.md +1 -1
  146. package/plugins/@vcmap-show-case/extent-example/src/index.js +11 -20
  147. package/plugins/@vcmap-show-case/flight-component-example/src/FlightExample.vue +3 -3
  148. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +122 -169
  149. package/plugins/@vcmap-show-case/form-inputs-example/src/index.js +7 -8
  150. package/plugins/@vcmap-show-case/hello-world/src/helloWorld.vue +1 -1
  151. package/plugins/@vcmap-show-case/icons-example/src/AllIconsComponent.vue +1 -1
  152. package/plugins/@vcmap-show-case/list-example/src/ListExample.vue +47 -80
  153. package/plugins/@vcmap-show-case/notifier-tester/src/NotifierTester.vue +4 -6
  154. package/plugins/@vcmap-show-case/panel-tester/src/PanelExample.vue +3 -4
  155. package/plugins/@vcmap-show-case/project-selector/src/ModulesListComponent.vue +3 -7
  156. package/plugins/@vcmap-show-case/project-selector/src/ProjectSelectorComponent.vue +10 -16
  157. package/plugins/@vcmap-show-case/search-example/package.json +5 -0
  158. package/plugins/@vcmap-show-case/search-example/src/index.js +75 -0
  159. package/plugins/@vcmap-show-case/search-example/src/searchImpl.js +99 -0
  160. package/plugins/@vcmap-show-case/simple-graph/src/SimpleGraphComponent.vue +1 -1
  161. package/plugins/@vcmap-show-case/style-input-example/src/StyleExample.vue +1 -1
  162. package/plugins/@vcmap-show-case/table-example/src/DataTableExample.vue +32 -16
  163. package/plugins/@vcmap-show-case/textfields-example/src/TextfieldsExample.vue +7 -1
  164. package/plugins/@vcmap-show-case/theme-changer/src/ThemeChangerComponent.vue +3 -3
  165. package/plugins/@vcmap-show-case/theme-changer/src/index.js +2 -2
  166. package/plugins/@vcmap-show-case/toolbox-example/src/TriStateExampleWindow.vue +1 -1
  167. package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +36 -11
  168. package/plugins/@vcmap-show-case/viewpoint-component-example/src/ViewpointExample.vue +4 -4
  169. package/plugins/@vcmap-show-case/window-tester/src/BrokenWindow.vue +17 -0
  170. package/plugins/@vcmap-show-case/window-tester/src/EmptyComponent.vue +1 -1
  171. package/plugins/@vcmap-show-case/window-tester/src/WindowExample.vue +10 -0
  172. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleContent.vue +1 -1
  173. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleToggleChild.vue +1 -1
  174. package/plugins/@vcmap-show-case/wizard-example/src/WizardExample.vue +40 -54
  175. package/src/actions/StyleSelector.vue +4 -34
  176. package/src/actions/StyleSelector.vue.d.ts +6 -4
  177. package/src/actions/actionHelper.js +6 -6
  178. package/src/actions/extentActions.d.ts +1 -2
  179. package/src/actions/extentActions.js +19 -8
  180. package/src/actions/flightActions.js +8 -8
  181. package/src/actions/listActions.d.ts +2 -2
  182. package/src/actions/listActions.js +3 -3
  183. package/src/actions/stateRefAction.js +3 -3
  184. package/src/application/VcsApp.vue +20 -30
  185. package/src/application/VcsApp.vue.d.ts +6 -6
  186. package/src/application/VcsAppWrapper.vue +1 -1
  187. package/src/application/VcsAppWrapper.vue.d.ts +2 -2
  188. package/src/application/VcsAttributions.vue +14 -18
  189. package/src/application/VcsAttributions.vue.d.ts +7 -7
  190. package/src/application/VcsAttributionsFooter.vue +1 -1
  191. package/src/application/VcsAttributionsFooter.vue.d.ts +2 -2
  192. package/src/application/VcsContainer.vue +13 -7
  193. package/src/application/VcsContainer.vue.d.ts +3 -2
  194. package/src/application/VcsCustomScreen.vue +5 -5
  195. package/src/application/VcsCustomScreen.vue.d.ts +3 -3
  196. package/src/application/VcsMainMap.vue +4 -1
  197. package/src/application/VcsMainMap.vue.d.ts +1 -1
  198. package/src/application/VcsMap.vue +21 -23
  199. package/src/application/VcsMap.vue.d.ts +2 -2
  200. package/src/application/VcsNavbar.vue +60 -56
  201. package/src/application/VcsNavbar.vue.d.ts +11 -8
  202. package/src/application/VcsPositionDisplay.vue +33 -46
  203. package/src/application/VcsPositionDisplay.vue.d.ts +3 -3
  204. package/src/application/VcsSettings.vue +19 -7
  205. package/src/application/VcsSettings.vue.d.ts +2 -1
  206. package/src/application/VcsSplashScreen.vue +19 -23
  207. package/src/application/VcsSplashScreen.vue.d.ts +7 -7
  208. package/src/application/VcsTextPage.vue +5 -5
  209. package/src/application/VcsTextPage.vue.d.ts +5 -5
  210. package/src/application/VcsTextPageFooter.vue +4 -4
  211. package/src/application/VcsTextPageFooter.vue.d.ts +2 -2
  212. package/src/application/attributionsHelper.d.ts +2 -2
  213. package/src/application/attributionsHelper.js +9 -9
  214. package/src/application/markdownHelper.js +2 -17
  215. package/src/components/ImageElementInjector.vue.d.ts +2 -2
  216. package/src/components/attrsHelpers.d.ts +5 -0
  217. package/src/components/attrsHelpers.js +14 -0
  218. package/src/components/buttons/VcsActionButtonList.vue +6 -23
  219. package/src/components/buttons/VcsActionButtonList.vue.d.ts +3 -12
  220. package/src/components/buttons/VcsButton.vue +79 -90
  221. package/src/components/buttons/VcsButton.vue.d.ts +19 -34
  222. package/src/components/buttons/VcsFormButton.vue +77 -125
  223. package/src/components/buttons/VcsFormButton.vue.d.ts +10 -43
  224. package/src/components/buttons/VcsToolButton.vue +91 -94
  225. package/src/components/buttons/VcsToolButton.vue.d.ts +21 -28
  226. package/src/components/composables.d.ts +21 -0
  227. package/src/components/composables.js +65 -0
  228. package/src/components/{form-inputs-controls → extent}/VcsExtent.vue +22 -18
  229. package/src/components/{form-inputs-controls → extent}/VcsExtent.vue.d.ts +10 -7
  230. package/src/components/extent/VcsExtentEditor.vue +79 -0
  231. package/src/components/extent/VcsExtentEditor.vue.d.ts +37 -0
  232. package/src/components/flight/VcsFlightAnchorsComponent.vue +7 -2
  233. package/src/components/flight/VcsFlightAnchorsComponent.vue.d.ts +6 -6
  234. package/src/components/flight/VcsFlightComponent.vue +2 -1
  235. package/src/components/flight/VcsFlightComponent.vue.d.ts +4 -4
  236. package/src/components/flight/VcsFlightEditor.vue.d.ts +2 -2
  237. package/src/components/flight/VcsFlightPlayer.vue +2 -3
  238. package/src/components/flight/VcsFlightPlayer.vue.d.ts +3 -3
  239. package/src/components/form-inputs-controls/VcsCheckbox.vue +62 -82
  240. package/src/components/form-inputs-controls/VcsCheckbox.vue.d.ts +14 -4
  241. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +128 -117
  242. package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +17 -21
  243. package/src/components/form-inputs-controls/VcsCoordinate.vue +31 -41
  244. package/src/components/form-inputs-controls/VcsCoordinate.vue.d.ts +10 -11
  245. package/src/components/form-inputs-controls/VcsDatePicker.vue +39 -72
  246. package/src/components/form-inputs-controls/VcsDatePicker.vue.d.ts +75 -13
  247. package/src/components/form-inputs-controls/VcsFileInput.vue +100 -0
  248. package/src/components/form-inputs-controls/VcsFileInput.vue.d.ts +27 -0
  249. package/src/components/form-inputs-controls/VcsFormSection.vue +12 -12
  250. package/src/components/form-inputs-controls/VcsFormSection.vue.d.ts +7 -5
  251. package/src/components/form-inputs-controls/VcsLabel.vue +38 -28
  252. package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +22 -11
  253. package/src/components/form-inputs-controls/VcsRadio.vue +80 -104
  254. package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +35 -9
  255. package/src/components/form-inputs-controls/VcsSelect.vue +166 -156
  256. package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +36 -9
  257. package/src/components/form-inputs-controls/VcsSlider.vue +97 -52
  258. package/src/components/form-inputs-controls/VcsSlider.vue.d.ts +29 -1
  259. package/src/components/form-inputs-controls/VcsTextArea.vue +141 -144
  260. package/src/components/form-inputs-controls/VcsTextArea.vue.d.ts +13 -10
  261. package/src/components/form-inputs-controls/VcsTextField.vue +100 -278
  262. package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +34 -32
  263. package/src/components/form-inputs-controls/VcsWizard.vue +88 -117
  264. package/src/components/form-inputs-controls/VcsWizard.vue.d.ts +3 -13
  265. package/src/components/form-inputs-controls/VcsWizardStep.vue +77 -59
  266. package/src/components/form-inputs-controls/VcsWizardStep.vue.d.ts +26 -13
  267. package/src/components/form-inputs-controls/vcsTextField.scss +83 -0
  268. package/src/components/form-output/VcsFormattedNumber.vue +42 -33
  269. package/src/components/form-output/VcsFormattedNumber.vue.d.ts +21 -20
  270. package/src/components/form-output/VcsMarkdown.vue +53 -0
  271. package/src/components/form-output/VcsMarkdown.vue.d.ts +16 -0
  272. package/src/components/icons/+all.js +1 -1
  273. package/src/components/icons/2DAreaIcon.vue +1 -7
  274. package/src/components/icons/2DAreaIcon.vue.d.ts +1 -1
  275. package/src/components/icons/2DDistanceIcon.vue +1 -7
  276. package/src/components/icons/2DDistanceIcon.vue.d.ts +1 -1
  277. package/src/components/icons/2DHeightObliqueIcon.vue.d.ts +1 -1
  278. package/src/components/icons/2DPointIcon.vue +0 -1
  279. package/src/components/icons/2DPointIcon.vue.d.ts +1 -1
  280. package/src/components/icons/3DAreaIcon.vue +1 -7
  281. package/src/components/icons/3DAreaIcon.vue.d.ts +1 -1
  282. package/src/components/icons/3DDistanceIcon.vue +1 -7
  283. package/src/components/icons/3DDistanceIcon.vue.d.ts +1 -1
  284. package/src/components/icons/3DHeightIcon.vue +1 -7
  285. package/src/components/icons/3DHeightIcon.vue.d.ts +1 -1
  286. package/src/components/icons/3DPointIcon.vue +0 -1
  287. package/src/components/icons/3DPointIcon.vue.d.ts +1 -1
  288. package/src/components/icons/AngleIcon.vue +1 -6
  289. package/src/components/icons/AngleIcon.vue.d.ts +1 -1
  290. package/src/components/icons/AssociationsIcon.vue +1 -6
  291. package/src/components/icons/AssociationsIcon.vue.d.ts +1 -1
  292. package/src/components/icons/AxisIcon.vue.d.ts +1 -1
  293. package/src/components/icons/BoundingBoxIcon.vue +1 -6
  294. package/src/components/icons/BoundingBoxIcon.vue.d.ts +1 -1
  295. package/src/components/icons/CheckboxCheckedIcon.vue.d.ts +1 -1
  296. package/src/components/icons/CheckboxIcon.vue +1 -6
  297. package/src/components/icons/CheckboxIcon.vue.d.ts +1 -1
  298. package/src/components/icons/CheckboxIndeterminateIcon.vue.d.ts +1 -1
  299. package/src/components/icons/CircleIcon.vue +1 -6
  300. package/src/components/icons/CircleIcon.vue.d.ts +1 -1
  301. package/src/components/icons/ClippingHorizontalIcon.vue +1 -6
  302. package/src/components/icons/ClippingHorizontalIcon.vue.d.ts +1 -1
  303. package/src/components/icons/ClippingIcon.vue +1 -6
  304. package/src/components/icons/ClippingIcon.vue.d.ts +1 -1
  305. package/src/components/icons/ClippingVerticalIcon.vue +1 -6
  306. package/src/components/icons/ClippingVerticalIcon.vue.d.ts +1 -1
  307. package/src/components/icons/ColorPickerIcon.vue +1 -6
  308. package/src/components/icons/ColorPickerIcon.vue.d.ts +1 -1
  309. package/src/components/icons/ColorSwatchIcon.vue +1 -7
  310. package/src/components/icons/ColorSwatchIcon.vue.d.ts +1 -1
  311. package/src/components/icons/CommentIcon.vue +1 -6
  312. package/src/components/icons/CommentIcon.vue.d.ts +1 -1
  313. package/src/components/icons/CompassIcon.vue +1 -13
  314. package/src/components/icons/CompassIcon.vue.d.ts +1 -1
  315. package/src/components/icons/ComponentsIcon.vue +1 -6
  316. package/src/components/icons/ComponentsIcon.vue.d.ts +1 -1
  317. package/src/components/icons/ComponentsPlusIcon.vue +0 -1
  318. package/src/components/icons/ComponentsPlusIcon.vue.d.ts +1 -1
  319. package/src/components/icons/ConeIcon.vue +1 -13
  320. package/src/components/icons/ConeIcon.vue.d.ts +1 -1
  321. package/src/components/icons/CrosshairIcon.vue +0 -2
  322. package/src/components/icons/CrosshairIcon.vue.d.ts +1 -1
  323. package/src/components/icons/DimensionsHouseIcon.vue +1 -7
  324. package/src/components/icons/DimensionsHouseIcon.vue.d.ts +1 -1
  325. package/src/components/icons/EditIcon.vue +1 -6
  326. package/src/components/icons/EditIcon.vue.d.ts +1 -1
  327. package/src/components/icons/EditVerticesIcon.vue +1 -6
  328. package/src/components/icons/EditVerticesIcon.vue.d.ts +1 -1
  329. package/src/components/icons/ElevationProfileIcon.vue +1 -6
  330. package/src/components/icons/ElevationProfileIcon.vue.d.ts +1 -1
  331. package/src/components/icons/ExportAreaIcon.vue +1 -6
  332. package/src/components/icons/ExportAreaIcon.vue.d.ts +1 -1
  333. package/src/components/icons/ExportFlightIcon.vue +1 -6
  334. package/src/components/icons/ExportFlightIcon.vue.d.ts +1 -1
  335. package/src/components/icons/ExportIcon.vue +1 -13
  336. package/src/components/icons/ExportIcon.vue.d.ts +1 -1
  337. package/src/components/icons/ExternalLinkIcon.vue +1 -6
  338. package/src/components/icons/ExternalLinkIcon.vue.d.ts +1 -1
  339. package/src/components/icons/EyeIcon.vue +1 -6
  340. package/src/components/icons/EyeIcon.vue.d.ts +1 -1
  341. package/src/components/icons/FastForwardIcon.vue +1 -6
  342. package/src/components/icons/FastForwardIcon.vue.d.ts +1 -1
  343. package/src/components/icons/FilterIcon.vue +1 -7
  344. package/src/components/icons/FilterIcon.vue.d.ts +1 -1
  345. package/src/components/icons/GlobalTerrainIcon.vue +1 -6
  346. package/src/components/icons/GlobalTerrainIcon.vue.d.ts +1 -1
  347. package/src/components/icons/GlobeNatureIcon.vue +1 -6
  348. package/src/components/icons/GlobeNatureIcon.vue.d.ts +1 -1
  349. package/src/components/icons/GroundIcon.vue +1 -6
  350. package/src/components/icons/GroundIcon.vue.d.ts +1 -1
  351. package/src/components/icons/HealthCareIndustriesIcon.vue +1 -6
  352. package/src/components/icons/HealthCareIndustriesIcon.vue.d.ts +1 -1
  353. package/src/components/icons/HelpIcon.vue +1 -6
  354. package/src/components/icons/HelpIcon.vue.d.ts +1 -1
  355. package/src/components/icons/HideIcon.vue +1 -6
  356. package/src/components/icons/HideIcon.vue.d.ts +1 -1
  357. package/src/components/icons/HomePointIcon.vue +1 -6
  358. package/src/components/icons/HomePointIcon.vue.d.ts +1 -1
  359. package/src/components/icons/HospitalsIcon.vue +1 -6
  360. package/src/components/icons/HospitalsIcon.vue.d.ts +1 -1
  361. package/src/components/icons/HouseIcon.vue +1 -6
  362. package/src/components/icons/HouseIcon.vue.d.ts +1 -1
  363. package/src/components/icons/ImportIcon.vue +1 -7
  364. package/src/components/icons/ImportIcon.vue.d.ts +1 -1
  365. package/src/components/icons/InfoIcon.vue +1 -6
  366. package/src/components/icons/InfoIcon.vue.d.ts +1 -1
  367. package/src/components/icons/KebabIcon.vue +1 -7
  368. package/src/components/icons/KebabIcon.vue.d.ts +1 -1
  369. package/src/components/icons/LabelIcon.vue +1 -13
  370. package/src/components/icons/LabelIcon.vue.d.ts +1 -1
  371. package/src/components/icons/LayersIcon.vue +1 -7
  372. package/src/components/icons/LayersIcon.vue.d.ts +1 -1
  373. package/src/components/icons/LegendIcon.vue +1 -6
  374. package/src/components/icons/LegendIcon.vue.d.ts +1 -1
  375. package/src/components/icons/LineIcon.vue +1 -13
  376. package/src/components/icons/LineIcon.vue.d.ts +1 -1
  377. package/src/components/icons/LinkIcon.vue +1 -6
  378. package/src/components/icons/LinkIcon.vue.d.ts +1 -1
  379. package/src/components/icons/LogoutIcon.vue +1 -6
  380. package/src/components/icons/LogoutIcon.vue.d.ts +1 -1
  381. package/src/components/icons/MapIcon.vue +1 -7
  382. package/src/components/icons/MapIcon.vue.d.ts +1 -1
  383. package/src/components/icons/MenuIcon.vue +1 -7
  384. package/src/components/icons/MenuIcon.vue.d.ts +1 -1
  385. package/src/components/icons/MinusIcon.vue +1 -7
  386. package/src/components/icons/MinusIcon.vue.d.ts +1 -1
  387. package/src/components/icons/MultiViewIcon.vue +1 -7
  388. package/src/components/icons/MultiViewIcon.vue.d.ts +1 -1
  389. package/src/components/icons/ObjectAttributeIcon.vue +1 -7
  390. package/src/components/icons/ObjectAttributeIcon.vue.d.ts +1 -1
  391. package/src/components/icons/ObjectSelectIcon.vue +1 -7
  392. package/src/components/icons/ObjectSelectIcon.vue.d.ts +1 -1
  393. package/src/components/icons/ObliqueViewIcon.vue +1 -7
  394. package/src/components/icons/ObliqueViewIcon.vue.d.ts +1 -1
  395. package/src/components/icons/PdfIcon.vue +1 -7
  396. package/src/components/icons/PdfIcon.vue.d.ts +1 -1
  397. package/src/components/icons/PedestrianIcon.vue +1 -6
  398. package/src/components/icons/PedestrianIcon.vue.d.ts +1 -1
  399. package/src/components/icons/PenIcon.vue +1 -6
  400. package/src/components/icons/PenIcon.vue.d.ts +1 -1
  401. package/src/components/icons/PlayCircleIcon.vue +1 -6
  402. package/src/components/icons/PlayCircleIcon.vue.d.ts +1 -1
  403. package/src/components/icons/PlusIcon.vue +1 -7
  404. package/src/components/icons/PlusIcon.vue.d.ts +1 -1
  405. package/src/components/icons/PoiIcon.vue +1 -6
  406. package/src/components/icons/PoiIcon.vue.d.ts +1 -1
  407. package/src/components/icons/PointIcon.vue +1 -7
  408. package/src/components/icons/PointIcon.vue.d.ts +1 -1
  409. package/src/components/icons/PointMeasurementIcon.vue.d.ts +1 -1
  410. package/src/components/icons/PointSelectIcon.vue +1 -6
  411. package/src/components/icons/PointSelectIcon.vue.d.ts +1 -1
  412. package/src/components/icons/PresentationModeIcon.vue +1 -6
  413. package/src/components/icons/PresentationModeIcon.vue.d.ts +1 -1
  414. package/src/components/icons/ProgressIcon.vue +0 -1
  415. package/src/components/icons/ProgressIcon.vue.d.ts +1 -1
  416. package/src/components/icons/QueryIcon.vue +1 -6
  417. package/src/components/icons/QueryIcon.vue.d.ts +1 -1
  418. package/src/components/icons/RectangleIcon.vue +1 -13
  419. package/src/components/icons/RectangleIcon.vue.d.ts +1 -1
  420. package/src/components/icons/ReturnIcon.vue +1 -6
  421. package/src/components/icons/ReturnIcon.vue.d.ts +1 -1
  422. package/src/components/icons/RewindIcon.vue +1 -6
  423. package/src/components/icons/RewindIcon.vue.d.ts +1 -1
  424. package/src/components/icons/RotateLeftIcon.vue +1 -6
  425. package/src/components/icons/RotateLeftIcon.vue.d.ts +1 -1
  426. package/src/components/icons/RotateRightIcon.vue +1 -6
  427. package/src/components/icons/RotateRightIcon.vue.d.ts +1 -1
  428. package/src/components/icons/ScreenshotIcon.vue +1 -6
  429. package/src/components/icons/ScreenshotIcon.vue.d.ts +1 -1
  430. package/src/components/icons/SearchIcon.vue +1 -6
  431. package/src/components/icons/SearchIcon.vue.d.ts +1 -1
  432. package/src/components/icons/ShadowIcon.vue +1 -7
  433. package/src/components/icons/ShadowIcon.vue.d.ts +1 -1
  434. package/src/components/icons/ShapesIcon.vue +1 -6
  435. package/src/components/icons/ShapesIcon.vue.d.ts +1 -1
  436. package/src/components/icons/ShareIcon.vue +1 -6
  437. package/src/components/icons/ShareIcon.vue.d.ts +1 -1
  438. package/src/components/icons/SimpleCircleFilledIcon.vue +1 -6
  439. package/src/components/icons/SimpleCircleFilledIcon.vue.d.ts +1 -1
  440. package/src/components/icons/SimpleCircleHalfFilledIcon.vue +1 -6
  441. package/src/components/icons/SimpleCircleHalfFilledIcon.vue.d.ts +1 -1
  442. package/src/components/icons/SimpleCircleOutlinedIcon.vue +1 -6
  443. package/src/components/icons/SimpleCircleOutlinedIcon.vue.d.ts +1 -1
  444. package/src/components/icons/SkipNextIcon.vue +1 -6
  445. package/src/components/icons/SkipNextIcon.vue.d.ts +1 -1
  446. package/src/components/icons/SkipPreviousIcon.vue +1 -6
  447. package/src/components/icons/SkipPreviousIcon.vue.d.ts +1 -1
  448. package/src/components/icons/SplitViewIcon.vue +1 -6
  449. package/src/components/icons/SplitViewIcon.vue.d.ts +1 -1
  450. package/src/components/icons/TerrainBoxIcon.vue +1 -6
  451. package/src/components/icons/TerrainBoxIcon.vue.d.ts +1 -1
  452. package/src/components/icons/TextStyleIcon.vue +1 -7
  453. package/src/components/icons/TextStyleIcon.vue.d.ts +1 -1
  454. package/src/components/icons/ThreeDimensionsIcon.vue +1 -6
  455. package/src/components/icons/ThreeDimensionsIcon.vue.d.ts +1 -1
  456. package/src/components/icons/ToolsIcon.vue +1 -7
  457. package/src/components/icons/ToolsIcon.vue.d.ts +1 -1
  458. package/src/components/icons/TouchIcon.vue +1 -7
  459. package/src/components/icons/TouchIcon.vue.d.ts +1 -1
  460. package/src/components/icons/TransparentTerrainIcon.vue +0 -1
  461. package/src/components/icons/TransparentTerrainIcon.vue.d.ts +1 -1
  462. package/src/components/icons/TrashCanIcon.vue +1 -7
  463. package/src/components/icons/TrashCanIcon.vue.d.ts +1 -1
  464. package/src/components/icons/TriangleIcon.vue +1 -6
  465. package/src/components/icons/TriangleIcon.vue.d.ts +1 -1
  466. package/src/components/icons/TwoDimensionsIcon.vue +1 -7
  467. package/src/components/icons/TwoDimensionsIcon.vue.d.ts +1 -1
  468. package/src/components/icons/UploadIcon.vue +1 -6
  469. package/src/components/icons/UploadIcon.vue.d.ts +1 -1
  470. package/src/components/icons/UserProfileIcon.vue +1 -7
  471. package/src/components/icons/UserProfileIcon.vue.d.ts +1 -1
  472. package/src/components/icons/UserShareIcon.vue +1 -6
  473. package/src/components/icons/UserShareIcon.vue.d.ts +1 -1
  474. package/src/components/icons/VideoRecorderIcon.vue +1 -6
  475. package/src/components/icons/VideoRecorderIcon.vue.d.ts +1 -1
  476. package/src/components/icons/ViewpointFlightIcon.vue +1 -6
  477. package/src/components/icons/ViewpointFlightIcon.vue.d.ts +1 -1
  478. package/src/components/icons/ViewpointIcon.vue +1 -6
  479. package/src/components/icons/ViewpointIcon.vue.d.ts +1 -1
  480. package/src/components/icons/Viewshed360Icon.vue +1 -7
  481. package/src/components/icons/Viewshed360Icon.vue.d.ts +1 -1
  482. package/src/components/icons/ViewshedConeIcon.vue +1 -7
  483. package/src/components/icons/ViewshedConeIcon.vue.d.ts +1 -1
  484. package/src/components/icons/ViewshedIcon.vue +1 -7
  485. package/src/components/icons/ViewshedIcon.vue.d.ts +1 -1
  486. package/src/components/icons/WalkingIcon.vue +1 -6
  487. package/src/components/icons/WalkingIcon.vue.d.ts +1 -1
  488. package/src/components/icons/WallIcon.vue +1 -6
  489. package/src/components/icons/WallIcon.vue.d.ts +1 -1
  490. package/src/components/icons/WandIcon.vue +1 -6
  491. package/src/components/icons/WandIcon.vue.d.ts +1 -1
  492. package/src/components/import/{FileDrop.vue → VcsFileDrop.vue} +21 -10
  493. package/src/components/import/VcsFileDrop.vue.d.ts +37 -0
  494. package/src/components/import/{ImportComponent.vue → VcsImportComponent.vue} +24 -12
  495. package/src/components/import/{ImportComponent.vue.d.ts → VcsImportComponent.vue.d.ts} +6 -3
  496. package/src/components/lists/VcsActionList.vue +41 -37
  497. package/src/components/lists/VcsActionList.vue.d.ts +5 -3
  498. package/src/components/lists/VcsList.vue +138 -200
  499. package/src/components/lists/VcsList.vue.d.ts +24 -27
  500. package/src/components/lists/VcsListItem.vue +154 -0
  501. package/src/components/lists/VcsListItem.vue.d.ts +21 -0
  502. package/src/components/lists/VcsTreeview.vue +56 -43
  503. package/src/components/lists/VcsTreeview.vue.d.ts +3 -5
  504. package/src/components/lists/VcsTreeviewLeaf.vue +76 -75
  505. package/src/components/lists/VcsTreeviewLeaf.vue.d.ts +5 -17
  506. package/src/components/lists/VcsTreeviewSearchbar.vue +39 -83
  507. package/src/components/lists/VcsTreeviewSearchbar.vue.d.ts +2 -20
  508. package/src/components/modelHelper.d.ts +36 -0
  509. package/src/components/modelHelper.js +128 -0
  510. package/src/components/notification/VcsBadge.vue +8 -6
  511. package/src/components/notification/VcsBadge.vue.d.ts +2 -2
  512. package/src/components/notification/VcsHelp.vue +19 -14
  513. package/src/components/notification/VcsHelp.vue.d.ts +2 -2
  514. package/src/components/notification/VcsTooltip.vue +4 -8
  515. package/src/components/notification/VcsTooltip.vue.d.ts +3 -3
  516. package/src/components/plugins/AbstractConfigEditor.vue +5 -5
  517. package/src/components/plugins/AbstractConfigEditor.vue.d.ts +2 -2
  518. package/src/components/style/MenuWrapper.vue +10 -11
  519. package/src/components/style/MenuWrapper.vue.d.ts +5 -5
  520. package/src/components/style/VcsFeatureStyleComponent.vue +1 -1
  521. package/src/components/style/VcsFeatureStyleComponent.vue.d.ts +7 -7
  522. package/src/components/style/VcsFillMenu.vue +5 -6
  523. package/src/components/style/VcsFillMenu.vue.d.ts +5 -5
  524. package/src/components/style/VcsFillSelector.vue +6 -7
  525. package/src/components/style/VcsFillSelector.vue.d.ts +5 -5
  526. package/src/components/style/VcsImageMenu.vue +13 -9
  527. package/src/components/style/VcsImageMenu.vue.d.ts +5 -5
  528. package/src/components/style/VcsImageSelector.vue +36 -32
  529. package/src/components/style/VcsImageSelector.vue.d.ts +11 -11
  530. package/src/components/style/VcsStrokeMenu.vue +6 -7
  531. package/src/components/style/VcsStrokeMenu.vue.d.ts +5 -5
  532. package/src/components/style/VcsStrokeSelector.vue +19 -13
  533. package/src/components/style/VcsStrokeSelector.vue.d.ts +5 -5
  534. package/src/components/style/VcsTextMenu.vue +9 -8
  535. package/src/components/style/VcsTextMenu.vue.d.ts +5 -5
  536. package/src/components/style/VcsTextSelector.vue +14 -11
  537. package/src/components/style/VcsTextSelector.vue.d.ts +10 -10
  538. package/src/components/style/VcsVectorStyleComponent.vue +4 -4
  539. package/src/components/style/VcsVectorStyleComponent.vue.d.ts +8 -8
  540. package/src/components/style/composables.js +4 -1
  541. package/src/components/tables/VcsDataTable.vue +152 -207
  542. package/src/components/tables/VcsDataTable.vue.d.ts +10 -36
  543. package/src/components/tables/VcsTable.vue +13 -18
  544. package/src/components/tables/VcsTable.vue.d.ts +4 -4
  545. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +15 -7
  546. package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +7 -7
  547. package/src/components/vector-properties/VcsFeatureTransforms.vue +5 -1
  548. package/src/components/vector-properties/VcsFeatureTransforms.vue.d.ts +2 -2
  549. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +476 -580
  550. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +199 -28
  551. package/src/components/viewpoint/VcsViewpointComponent.vue +56 -104
  552. package/src/components/viewpoint/VcsViewpointComponent.vue.d.ts +14 -22
  553. package/src/components/viewpoint/VcsViewpointEditor.vue +2 -5
  554. package/src/components/viewpoint/VcsViewpointEditor.vue.d.ts +3 -3
  555. package/src/contentTree/LayerTree.vue +31 -10
  556. package/src/contentTree/LayerTree.vue.d.ts +3 -3
  557. package/src/contentTree/contentTreeCollection.d.ts +2 -2
  558. package/src/contentTree/contentTreeCollection.js +6 -8
  559. package/src/contentTree/contentTreeItem.d.ts +11 -11
  560. package/src/contentTree/contentTreeItem.js +8 -7
  561. package/src/contentTree/flightContentTreeItem.js +5 -4
  562. package/src/contentTree/viewpointContentTreeItem.d.ts +1 -1
  563. package/src/featureInfo/AddressBalloonComponent.vue +24 -26
  564. package/src/featureInfo/AddressBalloonComponent.vue.d.ts +1 -1
  565. package/src/featureInfo/BalloonComponent.vue +21 -29
  566. package/src/featureInfo/BalloonComponent.vue.d.ts +2 -2
  567. package/src/featureInfo/IframeComponent.vue.d.ts +2 -2
  568. package/src/featureInfo/MarkdownBalloonComponent.vue.d.ts +2 -2
  569. package/src/featureInfo/MarkdownComponent.vue +16 -0
  570. package/src/featureInfo/MarkdownComponent.vue.d.ts +7 -0
  571. package/src/featureInfo/abstractFeatureInfoView.d.ts +5 -5
  572. package/src/featureInfo/abstractFeatureInfoView.js +2 -2
  573. package/src/featureInfo/balloonFeatureInfoView.d.ts +2 -2
  574. package/src/featureInfo/balloonFeatureInfoView.js +1 -1
  575. package/src/featureInfo/featureInfo.js +2 -2
  576. package/src/featureInfo/markdownFeatureInfoView.js +1 -15
  577. package/src/i18n/de.d.ts +105 -0
  578. package/src/i18n/de.js +14 -5
  579. package/src/i18n/en.d.ts +105 -0
  580. package/src/i18n/en.js +14 -5
  581. package/src/init.js +10 -12
  582. package/src/legend/StyleLegendItem.vue +32 -28
  583. package/src/legend/StyleLegendItem.vue.d.ts +3 -2
  584. package/src/legend/VcsLegend.vue +19 -20
  585. package/src/legend/VcsLegend.vue.d.ts +8 -6
  586. package/src/legend/legendHelper.d.ts +2 -2
  587. package/src/legend/legendHelper.js +9 -8
  588. package/src/manager/buttonManager.d.ts +2 -2
  589. package/src/manager/buttonManager.js +6 -4
  590. package/src/manager/collectionManager/CollectionComponent.vue +30 -26
  591. package/src/manager/collectionManager/CollectionComponent.vue.d.ts +14 -2
  592. package/src/manager/collectionManager/CollectionComponentContent.vue +9 -11
  593. package/src/manager/collectionManager/CollectionComponentContent.vue.d.ts +1 -1
  594. package/src/manager/collectionManager/CollectionComponentList.vue +3 -3
  595. package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +2 -2
  596. package/src/manager/collectionManager/CollectionComponentProvider.vue +1 -1
  597. package/src/manager/collectionManager/CollectionComponentProvider.vue.d.ts +2 -2
  598. package/src/manager/collectionManager/CollectionComponentStandalone.vue +1 -1
  599. package/src/manager/collectionManager/CollectionComponentStandalone.vue.d.ts +1 -1
  600. package/src/manager/collectionManager/CollectionManager.vue +11 -9
  601. package/src/manager/collectionManager/CollectionManager.vue.d.ts +1 -1
  602. package/src/manager/collectionManager/categoryManager.d.ts +2 -2
  603. package/src/manager/collectionManager/collectionComponentClass.d.ts +6 -6
  604. package/src/manager/collectionManager/collectionComponentClass.js +4 -8
  605. package/src/manager/collectionManager/collectionManager.d.ts +5 -4
  606. package/src/manager/collectionManager/collectionManager.js +4 -2
  607. package/src/manager/collectionManager/editorCollectionComponentClass.d.ts +1 -1
  608. package/src/manager/contextMenu/ContextMenuComponent.vue.d.ts +2 -2
  609. package/src/manager/panel/PanelComponent.vue.d.ts +2 -2
  610. package/src/manager/panel/PanelManagerComponent.vue +7 -5
  611. package/src/manager/panel/PanelManagerComponent.vue.d.ts +4 -4
  612. package/src/manager/panel/panelManager.d.ts +6 -6
  613. package/src/manager/panel/panelManager.js +4 -4
  614. package/src/manager/toolbox/GroupToolboxComponent.vue +10 -34
  615. package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +3 -4
  616. package/src/manager/toolbox/SelectToolboxComponent.vue +12 -58
  617. package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +2 -3
  618. package/src/manager/toolbox/ToolboxManager.vue +12 -38
  619. package/src/manager/toolbox/ToolboxManager.vue.d.ts +3 -2
  620. package/src/manager/toolbox/toolboxManager.d.ts +3 -3
  621. package/src/manager/toolbox/toolboxManager.js +2 -3
  622. package/src/manager/window/WindowComponent.vue +3 -2
  623. package/src/manager/window/WindowComponent.vue.d.ts +2 -2
  624. package/src/manager/window/WindowComponentHeader.vue +8 -4
  625. package/src/manager/window/WindowComponentHeader.vue.d.ts +3 -3
  626. package/src/manager/window/WindowManager.vue +4 -9
  627. package/src/manager/window/WindowManager.vue.d.ts +2 -2
  628. package/src/manager/window/windowManager.d.ts +52 -46
  629. package/src/manager/window/windowManager.js +33 -10
  630. package/src/navigation/MapNavCompass.vue.d.ts +3 -3
  631. package/src/navigation/MapNavigation.vue +17 -10
  632. package/src/navigation/MapNavigation.vue.d.ts +6 -3
  633. package/src/navigation/ObliqueRotation.vue +15 -17
  634. package/src/navigation/ObliqueRotation.vue.d.ts +5 -5
  635. package/src/navigation/OrientationToolsButton.vue +39 -21
  636. package/src/navigation/OrientationToolsButton.vue.d.ts +6 -2
  637. package/src/navigation/TiltSlider.vue +87 -95
  638. package/src/navigation/TiltSlider.vue.d.ts +13 -10
  639. package/src/navigation/VcsCompass.vue +24 -11
  640. package/src/navigation/VcsCompass.vue.d.ts +8 -6
  641. package/src/navigation/VcsZoomButton.vue +12 -14
  642. package/src/navigation/VcsZoomButton.vue.d.ts +2 -2
  643. package/src/navigation/locatorHelper.js +1 -1
  644. package/src/navigation/overviewMap.d.ts +1 -1
  645. package/src/navigation/overviewMap.js +3 -3
  646. package/src/notifier/NotifierComponent.vue +18 -21
  647. package/src/notifier/NotifierComponent.vue.d.ts +1 -1
  648. package/src/notifier/notifier.d.ts +2 -1
  649. package/src/notifier/notifier.js +6 -2
  650. package/src/search/ResultItem.vue +14 -13
  651. package/src/search/ResultItem.vue.d.ts +2 -2
  652. package/src/search/ResultsComponent.vue +13 -24
  653. package/src/search/ResultsComponent.vue.d.ts +2 -2
  654. package/src/search/SearchComponent.vue +16 -15
  655. package/src/search/SearchComponent.vue.d.ts +2 -2
  656. package/src/search/search.d.ts +2 -2
  657. package/src/search/search.js +6 -10
  658. package/src/setup.js +2 -2
  659. package/src/styles/_typography.scss +12 -7
  660. package/src/styles/main.scss +6 -3
  661. package/src/styles/settings.scss +6 -0
  662. package/src/styles/variables.scss +10 -8
  663. package/src/styles/vcsGrid.scss +0 -10
  664. package/src/styles/vcsList.scss +8 -0
  665. package/src/vcsUiApp.d.ts +127 -26
  666. package/src/vcsUiApp.js +63 -27
  667. package/src/vuePlugins/i18n.d.ts +8 -2
  668. package/src/vuePlugins/i18n.js +39 -11
  669. package/src/vuePlugins/vuetify.d.ts +79 -9
  670. package/src/vuePlugins/vuetify.js +177 -68
  671. package/dist/assets/cesium/Workers/chunk-DUHWWBQQ.js +0 -3273
  672. package/dist/assets/cesium/Workers/chunk-QJ3DFBH3.js +0 -73
  673. package/dist/assets/index-7043a93a.js +0 -1
  674. package/dist/assets/ui.ce88d9.css +0 -5
  675. package/dist/assets/ui.ce88d9.js +0 -23835
  676. package/dist/assets/vue.808297.js +0 -4920
  677. package/dist/assets/vuetify.01ade4.css +0 -5
  678. package/dist/assets/vuetify.01ade4.js +0 -21263
  679. package/plugins/@vcmap-show-case/extent-example/src/ExtentExample.vue +0 -71
  680. package/src/components/form-inputs-controls/VcsRadioGrid.vue +0 -160
  681. package/src/components/form-inputs-controls/VcsRadioGrid.vue.d.ts +0 -35
  682. package/src/components/form-inputs-controls/composables.d.ts +0 -7
  683. package/src/components/form-inputs-controls/composables.js +0 -31
  684. package/src/components/import/FileDrop.vue.d.ts +0 -26
  685. package/src/components/vector-properties/composables.d.ts +0 -33
  686. package/src/components/vector-properties/composables.js +0 -100
  687. package/src/styles/utils/_all.scss +0 -12
  688. package/src/styles/utils/_border.scss +0 -7
  689. package/src/styles/utils/_cursor.scss +0 -19
  690. package/src/styles/utils/_display.scss +0 -3
  691. package/src/styles/utils/_fade-in.scss +0 -8
  692. package/src/styles/utils/_position.scss +0 -38
  693. package/src/styles/utils/_size.scss +0 -79
  694. package/src/styles/utils/_slide-in.scss +0 -26
  695. package/src/styles/utils/_spacing.scss +0 -11
  696. package/src/styles/utils/_text.scss +0 -30
  697. package/src/styles/utils/_transform.scss +0 -11
  698. package/src/styles/utils/_transition.scss +0 -11
  699. package/src/styles/utils/_z-index.scss +0 -15
@@ -3,14 +3,14 @@ declare const _default: import("vue").DefineComponent<{
3
3
  type: BooleanConstructor;
4
4
  default: boolean;
5
5
  };
6
- color: {
7
- type: StringConstructor;
8
- default: undefined;
9
- };
10
6
  disabled: {
11
7
  type: BooleanConstructor;
12
8
  default: boolean;
13
9
  };
10
+ color: {
11
+ type: StringConstructor;
12
+ default: undefined;
13
+ };
14
14
  hasUpdate: {
15
15
  type: BooleanConstructor;
16
16
  default: boolean;
@@ -27,30 +27,25 @@ declare const _default: import("vue").DefineComponent<{
27
27
  type: StringConstructor;
28
28
  default: string;
29
29
  };
30
- tooltipProps: {
31
- type: ObjectConstructor;
32
- default: () => {};
33
- };
34
- customClasses: {
35
- type: ArrayConstructor;
36
- default: () => never[];
37
- };
38
- }, {}, {}, {
39
- appliedColor(): any;
40
- hasDefaultSlot(): boolean;
41
- }, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
30
+ }, {
31
+ forwardSlots: import("vue").ComputedRef<string[]>;
32
+ hasDefaultSlot: import("vue").ComputedRef<boolean>;
33
+ appliedColor: import("vue").ComputedRef<string | null>;
34
+ iconSize: import("vue").ComputedRef<number>;
35
+ minHeight: import("vue").ComputedRef<number>;
36
+ }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
42
37
  active: {
43
38
  type: BooleanConstructor;
44
39
  default: boolean;
45
40
  };
46
- color: {
47
- type: StringConstructor;
48
- default: undefined;
49
- };
50
41
  disabled: {
51
42
  type: BooleanConstructor;
52
43
  default: boolean;
53
44
  };
45
+ color: {
46
+ type: StringConstructor;
47
+ default: undefined;
48
+ };
54
49
  hasUpdate: {
55
50
  type: BooleanConstructor;
56
51
  default: boolean;
@@ -67,23 +62,13 @@ declare const _default: import("vue").DefineComponent<{
67
62
  type: StringConstructor;
68
63
  default: string;
69
64
  };
70
- tooltipProps: {
71
- type: ObjectConstructor;
72
- default: () => {};
73
- };
74
- customClasses: {
75
- type: ArrayConstructor;
76
- default: () => never[];
77
- };
78
65
  }>>, {
79
- tooltip: string;
80
- tooltipPosition: string;
81
- disabled: boolean;
82
66
  icon: string;
83
67
  active: boolean;
84
68
  hasUpdate: boolean;
69
+ disabled: boolean;
85
70
  color: string;
86
- tooltipProps: Record<string, any>;
87
- customClasses: unknown[];
88
- }>;
71
+ tooltip: string;
72
+ tooltipPosition: string;
73
+ }, {}>;
89
74
  export default _default;
@@ -1,132 +1,91 @@
1
1
  <template>
2
- <div class="vcs-button-wrap">
3
- <v-btn
4
- v-if="!tooltip"
5
- :outlined="variant === 'outlined'"
6
- :disabled="disabled"
7
- :loading="loading"
8
- :ripple="false"
9
- elevation="0"
10
- color="primary"
11
- class="vcs-form-button"
12
- :class="classes"
13
- v-bind="{ ...$attrs }"
14
- v-on="{ ...$listeners }"
15
- >
16
- <v-icon v-if="icon" :class="{ 'mr-2': hasDefaultSlot }">
2
+ <v-btn
3
+ :variant="buttonVariant"
4
+ elevation="0"
5
+ color="primary"
6
+ :min-width="itemHeight * 1.5"
7
+ :height="itemHeight"
8
+ class="vcsFormButton"
9
+ :slim="false"
10
+ v-bind="{ ...$attrs }"
11
+ >
12
+ <template #default="scope">
13
+ <v-tooltip
14
+ activator="parent"
15
+ v-if="tooltip"
16
+ :text="$st(tooltip)"
17
+ :location="tooltipPosition"
18
+ />
19
+ <v-icon :size="iconSize" v-if="icon" :class="{ 'mr-2': hasDefaultSlot }">
17
20
  {{ icon }}
18
21
  </v-icon>
19
- <slot />
20
- </v-btn>
21
- <VcsTooltip
22
- v-else
23
- :tooltip="tooltip"
24
- :tooltip-position="tooltipPosition"
25
- v-bind="{ ...tooltipProps }"
26
- >
27
- <template #activator="{ on, attrs }">
28
- <v-btn
29
- :outlined="variant === 'outlined'"
30
- :disabled="disabled"
31
- :loading="loading"
32
- :ripple="false"
33
- elevation="0"
34
- color="primary"
35
- class="vcs-form-button"
36
- :class="classes"
37
- v-bind="{ ...$attrs, ...attrs }"
38
- v-on="{ ...$listeners, ...on }"
39
- >
40
- <v-icon v-if="icon" :class="{ 'mr-2': hasDefaultSlot }">
41
- {{ icon }}
42
- </v-icon>
43
- <slot />
44
- </v-btn>
45
- </template>
46
- </VcsTooltip>
47
- <VcsBadge v-if="hasUpdate" :color="'warning'" class="position-absolute" />
48
- </div>
22
+ <VcsBadge
23
+ v-if="hasUpdate"
24
+ :color="'bg-warning'"
25
+ class="position-absolute"
26
+ />
27
+ <slot name="default" v-bind="scope ?? {}" />
28
+ </template>
29
+ <template v-for="slot of forwardSlots" #[slot]="scope">
30
+ <slot :name="slot" v-bind="scope ?? {}" />
31
+ </template>
32
+ </v-btn>
49
33
  </template>
50
34
 
51
35
  <style lang="scss" scoped>
52
- @import '../../styles/shades.scss';
53
-
54
- .vcs-button-wrap {
55
- position: relative;
56
- display: inline-block;
57
- }
58
36
  .badge {
59
37
  top: -3px;
60
38
  right: -3px;
61
39
  }
62
40
  .v-btn {
63
- &--outlined {
64
- border: thin solid currentColor;
41
+ &.v-btn--variant-outlined:hover {
42
+ border-color: rgb(var(--v-theme-primary-lighten-1));
65
43
  }
66
- &--disabled {
67
- // TODO text color primary
68
- border-color: var(--v-primary-lighten1);
69
- background-color: transparent !important;
44
+ &.v-btn--variant-flat:hover {
45
+ background-color: rgb(var(--v-theme-primary-lighten-1)) !important;
46
+ --v-hover-opacity: 0;
70
47
  }
71
- }
72
- .vcs-button-wrap {
73
- .vcs-form-button {
74
- min-width: 48px;
75
- height: 32px;
76
- font-size: 12px;
77
- border: 1px solid transparent;
78
-
79
- &--outlined {
80
- border: thin solid currentColor;
81
- &:hover {
82
- border-color: var(--v-primary-lighten1) !important;
83
- }
84
- &.theme--light:hover::before {
85
- opacity: 0.16;
86
- }
87
- &.theme--dark:hover::before {
88
- opacity: 0.32;
89
- }
90
- }
91
-
92
- &--filled {
93
- &:hover {
94
- color: map-get($shades, 'white') !important;
95
- border-color: var(--v-primary-lighten1) !important;
96
- background-color: var(--v-primary-lighten1) !important;
97
- }
48
+ &.v-btn--disabled.v-btn--variant-outlined {
49
+ opacity: var(--v-disabled-opacity);
50
+ color: rgb(var(--v-theme-on-surface)) !important;
51
+ }
52
+ &.v-btn--disabled.v-btn--variant-flat {
53
+ opacity: var(--v-disabled-opacity);
54
+ background-color: rgb(var(--v-theme-base-lighten-1)) !important;
55
+ :deep(.v-btn__overlay) {
56
+ opacity: 0;
98
57
  }
99
58
  }
59
+ :deep(.v-btn__loader > .v-progress-circular) {
60
+ width: calc(var(--v-vcs-font-size) * (1.2 + 0.1 / 3)) !important;
61
+ height: calc(var(--v-vcs-font-size) * (1.2 + 0.1 / 3)) !important;
62
+ }
100
63
  }
101
64
  </style>
102
65
 
103
66
  <script>
104
- import { VBtn, VIcon } from 'vuetify/lib';
67
+ import { computed } from 'vue';
68
+ import { VBtn, VIcon, VTooltip } from 'vuetify/components';
105
69
  import VcsBadge from '../notification/VcsBadge.vue';
106
- import VcsTooltip from '../notification/VcsTooltip.vue';
70
+ import { useFontSize, useItemHeight } from '../../vuePlugins/vuetify.js';
71
+ import { useForwardSlots } from '../composables.js';
107
72
 
108
73
  /**
109
- * @description a button with tooltip extending {@link https://vuetifyjs.com/en/api/v-btn/|vuetify v-btn} using {@link VcsTooltip}. Meant to be used in forms or window contents.
74
+ * @description a button with tooltip extending {@link https://vuetifyjs.com/en/api/v-btn/|vuetify v-btn}.
75
+ * Meant to be used in forms or window contents.
110
76
  * @vue-prop {('filled' | 'outlined')} [variant='outlined'] - Filled or outlined representation of the button.
111
- * @vue-prop {boolean} disabled
112
- * @vue-prop {boolean} loading
113
77
  * @vue-prop {boolean} hasUpdate - Whether the button shows a badge in the top right.
114
78
  * @vue-prop {string} icon - When given, will display an icon in the button. Replaces vuetify icon property.
115
79
  * @vue-prop {string} tooltip - Text content of a tooltip which appears on hover with default delay.
116
80
  * @vue-prop {('bottom' | 'left' | 'top' | 'right')} tooltipPosition - Position of the tooltip.
117
- * @vue-prop {Object<string, any>} tooltipProps - Properties to be passed to VcsTooltip {@link https://vuetifyjs.com/en/api/v-tooltip/#props|vuetify v-tooltip}
118
- * @vue-prop {string[]} [customClasses] - CSS classes to customize style
119
- * @vue-computed {Object<string, string>} classes - css classes applied to button, depending on variant
120
- * @vue-computed {boolean} hasDefaultSlot
121
- * @vue-event {MouseEvent} click - Emits click event when the button is clicked.
122
81
  */
123
82
  export default {
124
83
  name: 'VcsFormButton',
125
84
  components: {
126
- VcsTooltip,
127
85
  VcsBadge,
128
86
  VBtn,
129
87
  VIcon,
88
+ VTooltip,
130
89
  },
131
90
  inheritAttrs: false,
132
91
  props: {
@@ -135,14 +94,6 @@
135
94
  default: 'outlined',
136
95
  validator: (value) => ['outlined', 'filled'].includes(value),
137
96
  },
138
- disabled: {
139
- type: Boolean,
140
- default: false,
141
- },
142
- loading: {
143
- type: Boolean,
144
- default: false,
145
- },
146
97
  hasUpdate: {
147
98
  type: Boolean,
148
99
  default: false,
@@ -159,29 +110,30 @@
159
110
  type: String,
160
111
  default: 'bottom',
161
112
  },
162
- tooltipProps: {
163
- type: Object,
164
- default: () => ({}),
165
- },
166
- customClasses: {
167
- type: Array,
168
- default: () => [],
169
- },
170
113
  },
171
- computed: {
172
- classes() {
173
- return {
174
- ...this.customClasses.reduce(
175
- (acc, cur) => ({ ...acc, [cur]: true }),
176
- {},
177
- ),
178
- 'vcs-form-button--outlined': this.variant === 'outlined',
179
- 'vcs-form-button--filled': this.variant === 'filled',
180
- };
181
- },
182
- hasDefaultSlot() {
183
- return !!this.$slots?.default?.[0]?.text?.trim();
184
- },
114
+ setup(props, { slots }) {
115
+ const itemHeight = useItemHeight();
116
+ const buttonVariant = computed(() => {
117
+ if (props.variant === 'filled') {
118
+ return 'flat';
119
+ }
120
+ return props.variant;
121
+ });
122
+ const hasDefaultSlot = computed(() => {
123
+ return !!slots?.default;
124
+ });
125
+ const forwardSlots = useForwardSlots(slots, ['default']);
126
+ const fontSize = useFontSize();
127
+ const iconSize = computed(() => {
128
+ return fontSize.value * (1.2 + 0.1 / 3);
129
+ });
130
+ return {
131
+ forwardSlots,
132
+ buttonVariant,
133
+ hasDefaultSlot,
134
+ itemHeight,
135
+ iconSize,
136
+ };
185
137
  },
186
138
  };
187
139
  </script>
@@ -4,14 +4,6 @@ declare const _default: import("vue").DefineComponent<{
4
4
  default: string;
5
5
  validator: (value: unknown) => boolean;
6
6
  };
7
- disabled: {
8
- type: BooleanConstructor;
9
- default: boolean;
10
- };
11
- loading: {
12
- type: BooleanConstructor;
13
- default: boolean;
14
- };
15
7
  hasUpdate: {
16
8
  type: BooleanConstructor;
17
9
  default: boolean;
@@ -28,31 +20,18 @@ declare const _default: import("vue").DefineComponent<{
28
20
  type: StringConstructor;
29
21
  default: string;
30
22
  };
31
- tooltipProps: {
32
- type: ObjectConstructor;
33
- default: () => {};
34
- };
35
- customClasses: {
36
- type: ArrayConstructor;
37
- default: () => never[];
38
- };
39
- }, {}, {}, {
40
- classes(): any;
41
- hasDefaultSlot(): boolean;
42
- }, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
23
+ }, {
24
+ forwardSlots: import("vue").ComputedRef<string[]>;
25
+ buttonVariant: import("vue").ComputedRef<string>;
26
+ hasDefaultSlot: import("vue").ComputedRef<boolean>;
27
+ itemHeight: import("vue").ComputedRef<number>;
28
+ iconSize: import("vue").ComputedRef<number>;
29
+ }, any, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
43
30
  variant: {
44
31
  type: StringConstructor;
45
32
  default: string;
46
33
  validator: (value: unknown) => boolean;
47
34
  };
48
- disabled: {
49
- type: BooleanConstructor;
50
- default: boolean;
51
- };
52
- loading: {
53
- type: BooleanConstructor;
54
- default: boolean;
55
- };
56
35
  hasUpdate: {
57
36
  type: BooleanConstructor;
58
37
  default: boolean;
@@ -69,23 +48,11 @@ declare const _default: import("vue").DefineComponent<{
69
48
  type: StringConstructor;
70
49
  default: string;
71
50
  };
72
- tooltipProps: {
73
- type: ObjectConstructor;
74
- default: () => {};
75
- };
76
- customClasses: {
77
- type: ArrayConstructor;
78
- default: () => never[];
79
- };
80
51
  }>>, {
81
- tooltip: string;
82
- tooltipPosition: string;
83
- disabled: boolean;
84
52
  icon: string;
85
53
  hasUpdate: boolean;
86
- tooltipProps: Record<string, any>;
87
- customClasses: unknown[];
88
54
  variant: string;
89
- loading: boolean;
90
- }>;
55
+ tooltip: string;
56
+ tooltipPosition: string;
57
+ }, {}>;
91
58
  export default _default;
@@ -1,85 +1,81 @@
1
1
  <template>
2
- <div class="vcs-button-wrap">
3
- <v-btn
4
- v-if="!tooltip"
5
- :color="appliedColor"
6
- :text="isTextButton"
7
- class="vcs-tool-button"
8
- :class="classes"
9
- :ripple="{ class: 'primary--text text--darken-4' }"
10
- elevation="0"
11
- v-bind="{ ...$attrs }"
12
- v-on="{ ...$listeners }"
13
- >
14
- <v-icon v-if="icon" :class="{ 'mr-2': hasDefaultSlot }">
2
+ <v-btn
3
+ :color="appliedColor"
4
+ :variant="buttonVariant"
5
+ :height="itemHeight + 2"
6
+ :min-width="itemHeight + itemHeight / 3"
7
+ class="vcsToolButton"
8
+ :disabled="disabled"
9
+ :class="{
10
+ 'vcs-background': background,
11
+ 'vcs-active': active,
12
+ }"
13
+ elevation="0"
14
+ v-bind="{ ...$attrs }"
15
+ >
16
+ <template #default="scope">
17
+ <v-tooltip
18
+ activator="parent"
19
+ v-if="tooltip"
20
+ :text="$st(tooltip)"
21
+ :location="tooltipPosition"
22
+ />
23
+ <v-icon :size="iconSize" v-if="icon" :class="{ 'mr-2': hasDefaultSlot }">
15
24
  {{ icon }}
16
25
  </v-icon>
17
- <slot />
18
- </v-btn>
19
- <VcsTooltip
20
- v-else
21
- :tooltip="tooltip"
22
- :tooltip-position="tooltipPosition"
23
- v-bind="{ ...tooltipProps }"
24
- >
25
- <template #activator="{ on, attrs }">
26
- <v-btn
27
- :color="appliedColor"
28
- :text="isTextButton"
29
- class="vcs-tool-button"
30
- :class="classes"
31
- :ripple="{ class: 'primary--text text--darken-4' }"
32
- elevation="0"
33
- v-bind="{ ...$attrs, ...attrs }"
34
- v-on="{ ...$listeners, ...on }"
35
- >
36
- <v-icon v-if="icon" :class="{ 'mr-2': hasDefaultSlot }">
37
- {{ icon }}
38
- </v-icon>
39
- <slot />
40
- </v-btn>
41
- </template>
42
- </VcsTooltip>
43
- <VcsBadge v-if="hasUpdate" :color="'warning'" class="position-absolute" />
44
- </div>
26
+ <VcsBadge
27
+ v-if="hasUpdate"
28
+ :color="'bg-warning'"
29
+ class="position-absolute"
30
+ />
31
+ <slot name="default" v-bind="scope ?? {}" />
32
+ </template>
33
+ <template v-for="slot of forwardSlots" #[slot]="scope">
34
+ <slot :name="slot" v-bind="scope ?? {}" />
35
+ </template>
36
+ </v-btn>
45
37
  </template>
46
38
 
47
39
  <style lang="scss" scoped>
48
- .vcs-button-wrap {
49
- position: relative;
50
- display: inline-block;
51
- }
52
40
  .badge {
53
41
  top: -3px;
54
42
  right: -3px;
55
43
  }
44
+ .vcs-active.vcs-background:not(.v-btn--disabled) :deep(.badge) {
45
+ top: -5px;
46
+ right: -5px;
47
+ }
56
48
  .v-btn {
57
- &.vcs-tool-button {
58
- min-width: 42px;
59
- height: 34px;
60
- padding: 0;
61
- position: relative;
62
-
63
- &.vcs-tool-button--active-background {
64
- border: 2px solid var(--v-primary-base);
65
- background-color: var(--v-base-lighten2) !important;
66
- }
49
+ padding-left: 11px;
50
+ padding-right: 11px;
67
51
 
68
- &.v-btn--disabled {
69
- background-color: transparent !important;
70
- }
52
+ &.vcs-active.vcs-background:not(.v-btn--disabled) {
53
+ padding-left: 9px;
54
+ padding-right: 9px;
55
+ border: 2px solid rgb(var(--v-theme-primary));
56
+ background-color: rgb(var(--v-theme-base-lighten-2)) !important;
57
+ }
58
+ &.v-btn--disabled.v-btn--variant-text {
59
+ opacity: var(--v-disabled-opacity);
60
+ }
61
+ :deep(.v-btn__loader > .v-progress-circular) {
62
+ width: calc(var(--v-vcs-font-size) * (1.2 + 0.1 / 3)) !important;
63
+ height: calc(var(--v-vcs-font-size) * (1.2 + 0.1 / 3)) !important;
71
64
  }
72
65
  }
73
66
  </style>
74
67
 
75
68
  <script>
76
- import { VBtn, VIcon } from 'vuetify/lib';
69
+ import { computed } from 'vue';
70
+ import { VBtn, VIcon, VTooltip } from 'vuetify/components';
77
71
  import VcsBadge from '../notification/VcsBadge.vue';
78
- import VcsTooltip from '../notification/VcsTooltip.vue';
72
+ import { useForwardSlots } from '../composables.js';
73
+ import { useItemHeight, useFontSize } from '../../vuePlugins/vuetify.js';
79
74
 
80
75
  /**
81
76
  * @description a button with tooltip extending {@link https://vuetifyjs.com/en/api/v-btn/|vuetify v-btn} using {@link VcsTooltip}. Used for tool buttons in the Navbar.
82
77
  * @vue-prop {boolean} active - Whether button has background color. Applies vuetify primary color if color property is not set.
78
+ * @vue-prop {boolean} disabled - Whether button is disabled.
83
79
  * @vue-prop {string} color - Passes property to v-btn in case prop active is true.
84
80
  * @vue-prop {boolean} background - When applied with active the button shows an active-background state implying that a tool is active, but running in background, e.g. windowComponent closed.
85
81
  * @vue-prop {boolean} hasUpdate - Whether the button shows a badge in the top right.
@@ -87,20 +83,16 @@
87
83
  * @vue-prop {string} tooltip - Text content of a tooltip which appears on hover with default delay.
88
84
  * @vue-prop {('bottom' | 'left' | 'top' | 'right')} tooltipPosition - Position of the tooltip.
89
85
  * @vue-prop {Object<string, any>} tooltipProps - Properties to be passed to VcsTooltip {@link https://vuetifyjs.com/en/api/v-tooltip/#props|vuetify v-tooltip}
90
- * @vue-prop {string[]} [customClasses] - CSS classes to customize style
91
86
  * @vue-computed {string} appliedColor - color applied to button, depending on size and state
92
- * @vue-computed {Object<string, string>} classes - css classes applied to button, depending on size and state
93
87
  * @vue-computed {boolean} hasDefaultSlot
94
- * @vue-computed {boolean} isTextButton - button is text
95
- * @vue-event {MouseEvent} click - Emits click event when the button is clicked.
96
88
  */
97
89
  export default {
98
90
  name: 'VcsToolButton',
99
91
  components: {
100
- VcsTooltip,
101
92
  VcsBadge,
102
93
  VBtn,
103
94
  VIcon,
95
+ VTooltip,
104
96
  },
105
97
  inheritAttrs: false,
106
98
  props: {
@@ -108,6 +100,10 @@
108
100
  type: Boolean,
109
101
  default: false,
110
102
  },
103
+ disabled: {
104
+ type: Boolean,
105
+ default: false,
106
+ },
111
107
  color: {
112
108
  type: String,
113
109
  default: undefined,
@@ -132,39 +128,40 @@
132
128
  type: String,
133
129
  default: 'bottom',
134
130
  },
135
- tooltipProps: {
136
- type: Object,
137
- default: () => ({}),
138
- },
139
- customClasses: {
140
- type: Array,
141
- default: () => [],
142
- },
143
131
  },
144
- computed: {
145
- appliedColor() {
146
- if (this.active) {
147
- return this.color ? this.color : 'primary';
132
+ setup(props, { slots }) {
133
+ const appliedColor = computed(() => {
134
+ if (props.active && !props.disabled) {
135
+ return props.color ? props.color : 'primary';
148
136
  } else {
149
137
  return null;
150
138
  }
151
- },
152
- classes() {
153
- return {
154
- ...this.customClasses.reduce(
155
- (acc, cur) => ({ ...acc, [cur]: true }),
156
- {},
157
- ),
158
- 'vcs-tool-button--active-background':
159
- this.active && this.background && !this.$attrs.disabled,
160
- };
161
- },
162
- hasDefaultSlot() {
163
- return !!this.$slots?.default?.[0]?.text?.trim();
164
- },
165
- isTextButton() {
166
- return !this.active ? true : null;
167
- },
139
+ });
140
+ const hasDefaultSlot = computed(() => {
141
+ return !!slots?.default;
142
+ });
143
+ const forwardSlots = useForwardSlots(slots, ['default']);
144
+ const buttonVariant = computed(() => {
145
+ if (props.active && !props.disabled) {
146
+ return 'flat';
147
+ }
148
+ return 'text';
149
+ });
150
+
151
+ const fontSize = useFontSize();
152
+ const itemHeight = useItemHeight();
153
+ const iconSize = computed(() => {
154
+ return fontSize.value * 1.5;
155
+ });
156
+
157
+ return {
158
+ itemHeight,
159
+ iconSize,
160
+ appliedColor,
161
+ forwardSlots,
162
+ buttonVariant,
163
+ hasDefaultSlot,
164
+ };
168
165
  },
169
166
  };
170
167
  </script>