@vcmap/ui 6.0.0-rc.1 → 6.0.0-rc.3

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 (320) hide show
  1. package/build/build.js +40 -60
  2. package/build/buildHelpers.js +2 -8
  3. package/build/info/conf.json +1 -1
  4. package/config/base.config.json +4 -4
  5. package/config/projects.config.json +2 -1
  6. package/config/splashscreen.config.json +45 -0
  7. package/dist/.htaccess +7 -0
  8. package/dist/assets/@mdi/font/README.md +25 -0
  9. package/dist/assets/@mdi/font/css/materialdesignicons.min-7a4f6be0.css +3 -0
  10. package/dist/assets/@mdi/font/css/materialdesignicons.min.css.map +16 -0
  11. package/dist/assets/@mdi/font/fonts/materialdesignicons-webfont.woff2 +0 -0
  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.6b12b4.js → cesium-cb4dbfba.js} +151166 -145641
  115. package/dist/assets/cesium.js +1 -1
  116. package/dist/assets/{core.074b78.js → core-72f21835.js} +2299 -2225
  117. package/dist/assets/core.js +1 -1
  118. package/dist/assets/{ol.8b2e3a.js → ol-2d33bc8b.js} +42505 -44282
  119. package/dist/assets/ol.js +1 -1
  120. package/dist/assets/ui-2ab43a16.css +1 -0
  121. package/dist/assets/{ui.715986.js → ui-2ab43a16.js} +12001 -11136
  122. package/dist/assets/ui.js +1 -1
  123. package/dist/assets/vue.js +1 -1
  124. package/dist/assets/{vuetify.28d881.css → vuetify-760ced3b.css} +1 -1
  125. package/dist/assets/{vuetify.28d881.js → vuetify-760ced3b.js} +5720 -5662
  126. package/dist/assets/vuetify.js +1 -1
  127. package/dist/index.html +11 -10
  128. package/index.d.ts +9 -5
  129. package/index.html +5 -5
  130. package/index.js +4 -3
  131. package/lib/olLib.js +84 -23
  132. package/package.json +10 -9
  133. package/plugins/@vcmap-show-case/flight-component-example/src/FlightExample.vue +41 -1
  134. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +70 -30
  135. package/plugins/@vcmap-show-case/form-inputs-example/src/exampleActions.js +7 -11
  136. package/plugins/@vcmap-show-case/form-inputs-example/src/index.js +2 -2
  137. package/plugins/@vcmap-show-case/list-example/src/ListExample.vue +45 -94
  138. package/plugins/@vcmap-show-case/style-input-example/src/StyleExample.vue +29 -90
  139. package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +35 -10
  140. package/plugins/@vcmap-show-case/wizard-example/src/WizardExample.vue +40 -54
  141. package/public/assets/@mdi/font/README.md +25 -0
  142. package/public/assets/@mdi/font/css/materialdesignicons.min.css +2 -2
  143. package/public/assets/@mdi/font/css/materialdesignicons.min.css.map +16 -0
  144. package/public/assets/@mdi/font/fonts/materialdesignicons-webfont.woff2 +0 -0
  145. package/src/actions/actionHelper.js +20 -20
  146. package/src/actions/flightActions.js +5 -5
  147. package/src/actions/listActions.d.ts +0 -7
  148. package/src/actions/listActions.js +4 -20
  149. package/src/actions/stateRefAction.js +2 -2
  150. package/src/application/VcsApp.vue +53 -29
  151. package/src/application/VcsApp.vue.d.ts +1 -0
  152. package/src/application/VcsAttributions.vue +2 -13
  153. package/src/application/VcsAttributionsFooter.vue +10 -11
  154. package/src/application/VcsNavbar.vue.d.ts +1 -1
  155. package/src/application/VcsPositionDisplay.vue +8 -23
  156. package/src/application/VcsPositionDisplay.vue.d.ts +0 -1
  157. package/src/application/VcsSettings.vue +10 -17
  158. package/src/application/VcsSplashScreen.vue +34 -54
  159. package/src/application/VcsSplashScreen.vue.d.ts +4 -6
  160. package/src/application/VcsTextPage.vue +13 -44
  161. package/src/application/VcsTextPage.vue.d.ts +4 -8
  162. package/src/application/VcsTextPageFooter.vue +22 -40
  163. package/src/application/markdownHelper.js +2 -17
  164. package/src/components/buttons/VcsButton.vue +1 -1
  165. package/src/components/buttons/VcsButton.vue.d.ts +3 -3
  166. package/src/components/buttons/VcsFormButton.vue +1 -1
  167. package/src/components/buttons/VcsFormButton.vue.d.ts +2 -2
  168. package/src/components/buttons/VcsToolButton.vue +1 -1
  169. package/src/components/buttons/VcsToolButton.vue.d.ts +4 -4
  170. package/src/components/composables.d.ts +7 -0
  171. package/src/components/composables.js +35 -1
  172. package/src/components/extent/VcsExtentEditor.vue +1 -1
  173. package/src/components/flight/VcsFlightAnchorsComponent.vue +63 -36
  174. package/src/components/flight/VcsFlightComponent.vue +16 -21
  175. package/src/components/flight/VcsFlightPlayer.vue +27 -5
  176. package/src/components/form-inputs-controls/VcsCheckbox.vue +19 -11
  177. package/src/components/form-inputs-controls/VcsCheckbox.vue.d.ts +1 -0
  178. package/src/components/form-inputs-controls/VcsChipArrayInput.vue +1 -1
  179. package/src/components/form-inputs-controls/VcsCoordinate.vue +13 -1
  180. package/src/components/form-inputs-controls/VcsCoordinate.vue.d.ts +5 -2
  181. package/src/components/form-inputs-controls/VcsDatePicker.vue +34 -60
  182. package/src/components/form-inputs-controls/VcsDatePicker.vue.d.ts +2 -64
  183. package/src/components/form-inputs-controls/VcsFileInput.vue +18 -19
  184. package/src/components/form-inputs-controls/VcsFileInput.vue.d.ts +1 -0
  185. package/src/components/form-inputs-controls/VcsLabel.vue +31 -1
  186. package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +21 -1
  187. package/src/components/form-inputs-controls/VcsRadio.vue +19 -5
  188. package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +1 -0
  189. package/src/components/form-inputs-controls/VcsSelect.vue +44 -41
  190. package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +7 -4
  191. package/src/components/form-inputs-controls/VcsSlider.vue +49 -10
  192. package/src/components/form-inputs-controls/VcsSlider.vue.d.ts +28 -2
  193. package/src/components/form-inputs-controls/VcsTextArea.vue +54 -35
  194. package/src/components/form-inputs-controls/VcsTextArea.vue.d.ts +1 -0
  195. package/src/components/form-inputs-controls/VcsTextField.vue +21 -14
  196. package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +1 -0
  197. package/src/components/form-inputs-controls/VcsWizard.vue +89 -112
  198. package/src/components/form-inputs-controls/VcsWizard.vue.d.ts +3 -13
  199. package/src/components/form-inputs-controls/VcsWizardStep.vue +75 -57
  200. package/src/components/form-inputs-controls/VcsWizardStep.vue.d.ts +24 -11
  201. package/src/components/form-inputs-controls/vcsTextField.scss +13 -8
  202. package/src/components/form-output/VcsFormattedNumber.vue +40 -10
  203. package/src/components/form-output/VcsFormattedNumber.vue.d.ts +27 -0
  204. package/src/components/form-output/VcsMarkdown.vue +53 -0
  205. package/src/{application/VcsCustomScreen.vue.d.ts → components/form-output/VcsMarkdown.vue.d.ts} +6 -5
  206. package/src/components/lists/VcsActionList.vue +50 -34
  207. package/src/components/lists/VcsActionList.vue.d.ts +3 -1
  208. package/src/components/lists/VcsList.vue +82 -158
  209. package/src/components/lists/VcsList.vue.d.ts +7 -14
  210. package/src/components/lists/VcsListItem.vue +184 -0
  211. package/src/components/lists/VcsListItem.vue.d.ts +27 -0
  212. package/src/components/lists/VcsTreeviewLeaf.vue +1 -1
  213. package/src/components/modelHelper.d.ts +11 -0
  214. package/src/components/modelHelper.js +42 -2
  215. package/src/components/section/VcsExpansionPanel.vue +101 -0
  216. package/src/components/section/VcsExpansionPanel.vue.d.ts +19 -0
  217. package/src/components/style/MenuWrapper.vue +24 -26
  218. package/src/components/style/MenuWrapper.vue.d.ts +4 -4
  219. package/src/components/style/VcsFillMenu.vue +9 -16
  220. package/src/components/style/VcsFillMenu.vue.d.ts +0 -18
  221. package/src/components/style/VcsFillSelector.vue +13 -16
  222. package/src/components/style/VcsImageMenu.vue +8 -25
  223. package/src/components/style/VcsImageMenu.vue.d.ts +0 -27
  224. package/src/components/style/VcsImageSelector.vue +102 -167
  225. package/src/components/style/VcsImageSelector.vue.d.ts +15 -15
  226. package/src/components/style/VcsStrokeMenu.vue +8 -15
  227. package/src/components/style/VcsStrokeMenu.vue.d.ts +0 -18
  228. package/src/components/style/VcsStrokeSelector.vue +11 -18
  229. package/src/components/style/VcsTextMenu.vue +9 -12
  230. package/src/components/style/VcsTextMenu.vue.d.ts +0 -9
  231. package/src/components/style/VcsTextSelector.vue +79 -95
  232. package/src/components/style/VcsTextSelector.vue.d.ts +20 -22
  233. package/src/components/style/VcsVectorStyleComponent.vue +7 -18
  234. package/src/components/style/VcsVectorStyleComponent.vue.d.ts +1 -1
  235. package/src/components/style/composables.d.ts +0 -14
  236. package/src/components/style/composables.js +0 -49
  237. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +53 -12
  238. package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +3 -3
  239. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +475 -586
  240. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +193 -22
  241. package/src/components/viewpoint/VcsViewpointComponent.vue +21 -8
  242. package/src/components/viewpoint/VcsViewpointEditor.vue +1 -0
  243. package/src/contentTree/contentTreeItem.d.ts +2 -2
  244. package/src/contentTree/contentTreeItem.js +7 -7
  245. package/src/featureInfo/featureInfo.js +8 -10
  246. package/src/init.d.ts +5 -38
  247. package/src/init.js +19 -18
  248. package/src/legend/StyleLegendItem.vue +4 -9
  249. package/src/legend/VcsLegend.vue +28 -54
  250. package/src/manager/buttonManager.js +4 -4
  251. package/src/manager/collectionManager/CollectionComponent.vue +17 -42
  252. package/src/manager/collectionManager/CollectionComponent.vue.d.ts +4 -2
  253. package/src/manager/collectionManager/CollectionComponentContent.vue +7 -6
  254. package/src/manager/collectionManager/CollectionComponentContent.vue.d.ts +3 -1
  255. package/src/manager/collectionManager/CollectionComponentList.vue +10 -8
  256. package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +4 -2
  257. package/src/manager/collectionManager/CollectionComponentProvider.vue +1 -1
  258. package/src/manager/collectionManager/CollectionComponentStandalone.vue +3 -2
  259. package/src/manager/collectionManager/CollectionManager.vue +1 -1
  260. package/src/manager/collectionManager/collectionComponentClass.js +6 -9
  261. package/src/manager/collectionManager/collectionManager.js +10 -10
  262. package/src/manager/collectionManager/editorCollectionComponentClass.js +4 -4
  263. package/src/manager/contextMenu/contextMenuManager.js +2 -2
  264. package/src/manager/navbarManager.js +2 -2
  265. package/src/manager/panel/panelManager.js +3 -3
  266. package/src/manager/toolbox/toolboxManager.js +10 -10
  267. package/src/manager/window/windowManager.d.ts +6 -6
  268. package/src/manager/window/windowManager.js +6 -6
  269. package/src/navigation/MapNavigation.vue +6 -3
  270. package/src/navigation/OrientationToolsButton.vue +39 -26
  271. package/src/navigation/OrientationToolsButton.vue.d.ts +5 -1
  272. package/src/navigation/TiltSlider.vue +83 -88
  273. package/src/navigation/TiltSlider.vue.d.ts +10 -7
  274. package/src/navigation/VcsCompass.vue +17 -11
  275. package/src/navigation/VcsCompass.vue.d.ts +2 -0
  276. package/src/search/search.js +2 -2
  277. package/src/siteConfig.js +1 -1
  278. package/src/state.js +4 -4
  279. package/src/styles/_typography.scss +1 -0
  280. package/src/vcsUiApp.d.ts +24 -26
  281. package/src/vcsUiApp.js +11 -4
  282. package/src/vuePlugins/i18n.js +7 -0
  283. package/src/vuePlugins/vuetify.d.ts +2 -0
  284. package/src/vuePlugins/vuetify.js +15 -0
  285. package/dist/assets/@mdi/font/css/materialdesignicons.css.map +0 -16
  286. package/dist/assets/@mdi/font/css/materialdesignicons.min.e3f476.css +0 -3
  287. package/dist/assets/cesium/Workers/chunk-DUHWWBQQ.js +0 -3273
  288. package/dist/assets/cesium/Workers/chunk-QJ3DFBH3.js +0 -73
  289. package/dist/assets/index-ca7EmZ3d.js +0 -1
  290. package/dist/assets/ui.715986.css +0 -1
  291. package/public/assets/@mdi/font/css/materialdesignicons.css.map +0 -16
  292. package/src/application/VcsCustomScreen.vue +0 -45
  293. package/src/components/vector-properties/composables.d.ts +0 -33
  294. package/src/components/vector-properties/composables.js +0 -100
  295. package/dist/assets/{favicon-128.4c4ce5.png → favicon-128-4c4ce5df.png} +0 -0
  296. package/dist/assets/{favicon-180.5b99c0.png → favicon-180-4c4ce5df.png} +0 -0
  297. package/dist/assets/{favicon-192.0e205e.png → favicon-192-4c4ce5df.png} +0 -0
  298. package/dist/assets/{favicon-32.6b9add.png → favicon-32-4c4ce5df.png} +0 -0
  299. package/dist/assets/{favicon.d5ec97.svg → favicon-4c4ce5df.svg} +0 -0
  300. package/dist/assets/font/{TitilliumWeb-Regular.9ca076.woff2 → TitilliumWeb-Regular-9ca076be.woff2} +0 -0
  301. package/dist/assets/style/{icon-marker.70960f.png → icon-marker-70960f05.png} +0 -0
  302. package/dist/assets/style/{icon-marker-blue.534e37.png → icon-marker-blue-534e374b.png} +0 -0
  303. package/dist/assets/style/{icon-marker-green.0b6a92.png → icon-marker-green-0b6a92bc.png} +0 -0
  304. package/dist/assets/style/{icon-marker-o.036477.png → icon-marker-o-036477fa.png} +0 -0
  305. package/dist/assets/style/{icon-marker-o-blue.7b6d62.png → icon-marker-o-blue-7b6d6279.png} +0 -0
  306. package/dist/assets/style/{icon-marker-o-green.c863c0.png → icon-marker-o-green-c863c0fa.png} +0 -0
  307. package/dist/assets/style/{icon-marker-o-red.93ff58.png → icon-marker-o-red-93ff58df.png} +0 -0
  308. package/dist/assets/style/{icon-marker-red.313d03.png → icon-marker-red-313d03e8.png} +0 -0
  309. package/dist/assets/style/{icon-pin.b7ce77.png → icon-pin-b7ce771e.png} +0 -0
  310. package/dist/assets/style/{icon-pin-blue.7be369.png → icon-pin-blue-7be369a3.png} +0 -0
  311. package/dist/assets/style/{icon-pin-green.cbb935.png → icon-pin-green-cbb935fe.png} +0 -0
  312. package/dist/assets/style/{icon-pin-red.3f25b2.png → icon-pin-red-3f25b245.png} +0 -0
  313. package/dist/assets/{vue.0f2c53.js → vue-03b265aa.js} +0 -0
  314. package/public/assets/{favicon-128.png → favicon-128-4c4ce5df.png} +0 -0
  315. package/public/assets/{favicon-180.png → favicon-180-4c4ce5df.png} +0 -0
  316. package/public/assets/{favicon-192.png → favicon-192-4c4ce5df.png} +0 -0
  317. package/public/assets/{favicon-32.png → favicon-32-4c4ce5df.png} +0 -0
  318. package/public/assets/{favicon.svg → favicon-4c4ce5df.svg} +0 -0
  319. package/src/components/{form-inputs-controls → section}/VcsFormSection.vue +0 -0
  320. package/src/components/{form-inputs-controls → section}/VcsFormSection.vue.d.ts +1 -1
@@ -20,13 +20,18 @@
20
20
  <template #default>
21
21
  <v-container class="py-0 px-1">
22
22
  <v-row no-gutters>
23
- <v-col class="w-max-half">
24
- <VcsLabel html-for="selectInput">
23
+ <v-col>
24
+ <VcsLabel
25
+ :disabled="disabled"
26
+ html-for="selectInput"
27
+ tooltip="labelTooltip"
28
+ >
25
29
  {{ $t('form-inputs-example.select') }}
26
30
  </VcsLabel>
27
31
  </v-col>
28
- <v-col class="w-max-half">
32
+ <v-col>
29
33
  <VcsSelect
34
+ :disabled="disabled"
30
35
  id="selectInput"
31
36
  loading="primary"
32
37
  :items="selectOptions"
@@ -37,12 +42,13 @@
37
42
  </v-row>
38
43
  <v-row no-gutters>
39
44
  <v-col>
40
- <VcsLabel html-for="conditionalInput">
45
+ <VcsLabel :disabled="disabled" html-for="conditionalInput">
41
46
  ConditionalInput
42
47
  </VcsLabel>
43
48
  </v-col>
44
49
  <v-col>
45
50
  <VcsTextField
51
+ :disabled="disabled"
46
52
  id="conditionalInput"
47
53
  clearable
48
54
  :rules="[
@@ -54,13 +60,21 @@
54
60
  </v-col>
55
61
  </v-row>
56
62
  <v-row no-gutters>
57
- <v-col class="w-max-half">
58
- <VcsLabel html-for="arrayInput"> Array Input </VcsLabel>
63
+ <v-col>
64
+ <VcsCheckbox :disabled="disabled" label="Checkbox"></VcsCheckbox>
65
+ </v-col>
66
+ </v-row>
67
+ <v-row no-gutters>
68
+ <v-col>
69
+ <VcsLabel :disabled="disabled" html-for="arrayInput">
70
+ Array Input
71
+ </VcsLabel>
59
72
  </v-col>
60
73
  </v-row>
61
74
  <v-row no-gutters>
62
75
  <v-col>
63
76
  <VcsChipArrayInput
77
+ :disabled="disabled"
64
78
  id="arrayInput"
65
79
  type="number"
66
80
  v-model="array"
@@ -71,6 +85,7 @@
71
85
  <v-row no-gutters>
72
86
  <v-col>
73
87
  <VcsChipArrayInput
88
+ :disabled="disabled"
74
89
  id="arrayInput"
75
90
  v-model="state.arrayInputString"
76
91
  column
@@ -80,6 +95,7 @@
80
95
  <v-row no-gutters>
81
96
  <v-col>
82
97
  <VcsTextField
98
+ :disabled="disabled"
83
99
  v-model="state.initialTextInput"
84
100
  :rules="[isValidText]"
85
101
  :loading="
@@ -98,7 +114,7 @@
98
114
  <v-row no-gutters>
99
115
  <v-col>
100
116
  <VcsTextArea
101
- :dense="dense"
117
+ :disabled="disabled"
102
118
  :rules="[(v) => !!v || 'text area must not be empty']"
103
119
  placeholder="This is a text area"
104
120
  tooltip="This is a tooltip"
@@ -108,10 +124,13 @@
108
124
  </v-row>
109
125
  <v-row no-gutters>
110
126
  <v-col>
111
- <VcsLabel html-for="emailInput" required> Email </VcsLabel>
127
+ <VcsLabel :disabled="disabled" html-for="emailInput" required>
128
+ Email
129
+ </VcsLabel>
112
130
  </v-col>
113
131
  <v-col>
114
132
  <VcsTextField
133
+ :disabled="disabled"
115
134
  id="emailInput"
116
135
  type="email"
117
136
  :rules="[isValidEmail]"
@@ -122,10 +141,13 @@
122
141
  </v-row>
123
142
  <v-row no-gutters>
124
143
  <v-col>
125
- <VcsLabel html-for="prependedInput"> String With Icon </VcsLabel>
144
+ <VcsLabel :disabled="disabled" html-for="prependedInput">
145
+ String With Icon
146
+ </VcsLabel>
126
147
  </v-col>
127
148
  <v-col>
128
149
  <VcsTextField
150
+ :disabled="disabled"
129
151
  id="prependedInput"
130
152
  prepend-icon="mdi-map-marker"
131
153
  v-model="state.prependedInput"
@@ -135,10 +157,13 @@
135
157
  </v-row>
136
158
  <v-row no-gutters>
137
159
  <v-col>
138
- <VcsLabel html-for="fileInput"> File input </VcsLabel>
160
+ <VcsLabel :disabled="disabled" html-for="fileInput">
161
+ File input
162
+ </VcsLabel>
139
163
  </v-col>
140
164
  <v-col>
141
165
  <VcsFileInput
166
+ :disabled="disabled"
142
167
  id="fileInput"
143
168
  multiple
144
169
  tooltip="Click to select a file."
@@ -148,10 +173,12 @@
148
173
  </v-row>
149
174
  <v-row no-gutters>
150
175
  <v-col>
151
- <VcsLabel html-for="dateInput"> Date </VcsLabel>
176
+ <VcsLabel :disabled="disabled" html-for="dateInput">
177
+ Date
178
+ </VcsLabel>
152
179
  </v-col>
153
180
  <v-col>
154
- <VcsDatePicker id="dateInput" v-model="state.dateInput" />
181
+ <VcsDatePicker :disabled="disabled" id="dateInput" />
155
182
  </v-col>
156
183
  </v-row>
157
184
  </v-container>
@@ -165,10 +192,13 @@
165
192
  <v-container class="py-0 px-1">
166
193
  <v-row no-gutters>
167
194
  <v-col>
168
- <VcsLabel html-for="numberInput"> NumberInput </VcsLabel>
195
+ <VcsLabel :disabled="disabled" html-for="numberInput">
196
+ NumberInput
197
+ </VcsLabel>
169
198
  </v-col>
170
199
  <v-col>
171
200
  <VcsTextField
201
+ :disabled="disabled"
172
202
  id="numberInput"
173
203
  type="number"
174
204
  step="1"
@@ -180,12 +210,14 @@
180
210
  </v-row>
181
211
  <v-row no-gutters class="align-center">
182
212
  <v-col>
183
- <VcsLabel html-for="sliderInput"> Slider </VcsLabel>
213
+ <VcsLabel :disabled="disabled" html-for="sliderInput">
214
+ Slider
215
+ </VcsLabel>
184
216
  </v-col>
185
217
  <v-col>
186
218
  <VcsSlider
219
+ :disabled="disabled"
187
220
  id="sliderInput"
188
- :dense="dense"
189
221
  type="number"
190
222
  step="1"
191
223
  v-model.number="state.numberInput"
@@ -194,53 +226,53 @@
194
226
  </v-row>
195
227
  <v-row no-gutters>
196
228
  <v-col>
197
- <VcsLabel html-for="formattedNumber">
229
+ <VcsLabel :disabled="disabled" html-for="formattedNumber">
198
230
  VcsFormattedNumber
199
231
  </VcsLabel>
200
232
  </v-col>
201
233
  <v-col class="d-flex justify-end">
202
234
  <VcsFormattedNumber
235
+ :disabled="disabled"
203
236
  id="formattedNumber"
204
237
  :value="state.numberInput"
205
238
  unit="cm"
206
239
  :fraction-digits="1"
207
- :dense="dense"
208
240
  />
209
241
  </v-col>
210
242
  </v-row>
211
243
  <v-row no-gutters class="gc-2">
212
244
  <v-col>
213
245
  <VcsFormattedNumber
246
+ :disabled="disabled"
214
247
  id="formattedNumber"
215
248
  :value="state.numberInput"
216
249
  prefix="X"
217
250
  unit="cm"
218
251
  :fraction-digits="1"
219
- :dense="dense"
220
252
  />
221
253
  </v-col>
222
254
  <v-col>
223
255
  <VcsFormattedNumber
256
+ :disabled="disabled"
224
257
  id="formattedNumber"
225
258
  :value="state.numberInput"
226
259
  prefix="Y"
227
260
  unit="cm"
228
261
  :fraction-digits="1"
229
- :dense="dense"
230
262
  />
231
263
  </v-col>
232
264
  <v-col>
233
265
  <VcsFormattedNumber
266
+ :disabled="disabled"
234
267
  id="formattedNumber"
235
268
  :value="state.numberInput"
236
269
  prefix="Z"
237
270
  unit="cm"
238
271
  :fraction-digits="1"
239
- :dense="dense"
240
272
  />
241
273
  </v-col>
242
274
  </v-row>
243
- <VcsCoordinate v-model="array" />
275
+ <VcsCoordinate :disabled="disabled" v-model="array" />
244
276
  </v-container>
245
277
  </template>
246
278
  </VcsFormSection>
@@ -254,6 +286,7 @@
254
286
  <v-row no-gutters>
255
287
  <v-col>
256
288
  <VcsRadio
289
+ :disabled="disabled"
257
290
  :items="[
258
291
  ...selectOptions,
259
292
  {
@@ -270,12 +303,13 @@
270
303
  </v-row>
271
304
  <v-row no-gutters>
272
305
  <v-col>
273
- <VcsLabel> Radio with img label </VcsLabel>
306
+ <VcsLabel :disabled="disabled"> Radio with img label </VcsLabel>
274
307
  </v-col>
275
308
  </v-row>
276
309
  <v-row no-gutters>
277
310
  <v-col>
278
311
  <VcsRadio
312
+ :disabled="disabled"
279
313
  v-model="state.selected"
280
314
  :items="[
281
315
  { value: 'AAAAAAAA', src: 'mdi-circle-outline' },
@@ -283,7 +317,6 @@
283
317
  { value: 'C', src: 'mdi-triangle-outline' },
284
318
  { value: 'D', src: 'mdi-square-outline' },
285
319
  ]"
286
- :dense="dense"
287
320
  :rules="[(v) => v !== 'D' || 'Square is not allowed']"
288
321
  tooltip="This is a radio grid"
289
322
  inline
@@ -313,6 +346,7 @@
313
346
  <v-row no-gutters>
314
347
  <v-col>
315
348
  <VcsCheckbox
349
+ :disabled="disabled"
316
350
  id="checkboxInput"
317
351
  label="CheckboxInput"
318
352
  tooltip="This is a checkbox for terms of usage"
@@ -324,6 +358,7 @@
324
358
  </v-col>
325
359
  <v-col>
326
360
  <VcsFormButton
361
+ :disabled="disabled"
327
362
  :is-active="state.checkboxInput"
328
363
  @click="state.checkboxInput = !state.checkboxInput"
329
364
  tooltip="toggle button"
@@ -349,29 +384,35 @@
349
384
  <v-container class="py-0 px-1">
350
385
  <v-row>
351
386
  <v-col cols="1">
352
- <VcsLabel html-for="textInput" class="text-caption"> 1 </VcsLabel>
387
+ <VcsLabel
388
+ :disabled="disabled"
389
+ html-for="textInput"
390
+ class="text-caption"
391
+ >
392
+ 1
393
+ </VcsLabel>
353
394
  </v-col>
354
395
  <v-col>
355
396
  <VcsSelect
397
+ :disabled="disabled"
356
398
  :items="[
357
399
  { value: 'one', i18n: 'form-inputs-example.numbers.one' },
358
400
  { value: 'two', i18n: 'form-inputs-example.numbers.two' },
359
401
  { value: 'three', i18n: 'form-inputs-example.numbers.three' },
360
402
  ]"
361
403
  :item-text="(item) => item.i18n"
362
- :dense="dense"
363
404
  placeholder="Numbers"
364
405
  />
365
406
  </v-col>
366
407
  <v-col>
367
408
  <VcsSelect
409
+ :disabled="disabled"
368
410
  :items="[
369
411
  { value: 'Anna', fullName: 'Annabella' },
370
412
  { value: 'Bella', fullName: 'Belladonna' },
371
413
  { value: 'Claudi', fullName: 'Claudine' },
372
414
  ]"
373
415
  :item-text="(item) => item.fullName"
374
- :dense="dense"
375
416
  multiple
376
417
  v-model="state.selectedMultiple"
377
418
  :rules="[
@@ -404,16 +445,15 @@
404
445
  <template #default>
405
446
  <v-container class="py-0 px-1">
406
447
  <v-row no-gutters>
407
- <v-col class="w-max-half">
448
+ <v-col>
408
449
  <VcsLabel html-for="selectInput2" disabled>
409
450
  {{ $t('form-inputs-example.select') }}
410
451
  </VcsLabel>
411
452
  </v-col>
412
- <v-col class="w-max-half">
453
+ <v-col>
413
454
  <VcsSelect
414
455
  id="selectInput2"
415
456
  :items="selectOptions"
416
- :dense="dense"
417
457
  :rules="[(v) => v !== 'D' || 'D is not allowed']"
418
458
  v-model="state.selected"
419
459
  :disabled="true"
@@ -499,7 +539,7 @@
499
539
  type: Array,
500
540
  required: true,
501
541
  },
502
- dense: {
542
+ disabled: {
503
543
  type: Boolean,
504
544
  required: true,
505
545
  },
@@ -1,21 +1,17 @@
1
1
  import { reactive, ref } from 'vue';
2
2
 
3
3
  export default function createExampleActions() {
4
- const dense = ref(false);
4
+ const disabled = ref(false);
5
5
  const showSection = ref(true);
6
6
 
7
7
  const actions = [
8
8
  reactive({
9
- name: 'denseSelection',
10
- title: 'change row height',
11
- icon: dense.value
12
- ? 'mdi-arrow-split-horizontal'
13
- : 'mdi-arrow-collapse-vertical',
9
+ name: 'disabledSelection',
10
+ title: 'Changed Disabled',
11
+ icon: disabled.value ? 'mdi-airplane' : 'mdi-airplane-off',
14
12
  callback() {
15
- dense.value = !dense.value;
16
- this.icon = dense.value
17
- ? 'mdi-arrow-split-horizontal'
18
- : 'mdi-arrow-collapse-vertical';
13
+ disabled.value = !disabled.value;
14
+ this.icon = disabled.value ? 'mdi-airplane' : 'mdi-airplane-off';
19
15
  },
20
16
  }),
21
17
  {
@@ -32,5 +28,5 @@ export default function createExampleActions() {
32
28
  },
33
29
  ];
34
30
 
35
- return { actions, dense, showSection };
31
+ return { actions, disabled, showSection };
36
32
  }
@@ -178,7 +178,7 @@ export default function formInputsExample(config) {
178
178
  getSerializedState,
179
179
  setSerializedState,
180
180
  onVcsAppMounted(app) {
181
- const { actions, dense } = createExampleActions();
181
+ const { actions, disabled } = createExampleActions();
182
182
 
183
183
  const { action, destroy } = createToggleAction(
184
184
  {
@@ -199,7 +199,7 @@ export default function formInputsExample(config) {
199
199
  },
200
200
  props: reactive({
201
201
  actions,
202
- dense,
202
+ disabled,
203
203
  }),
204
204
  },
205
205
  app.windowManager,
@@ -1,74 +1,46 @@
1
1
  <template>
2
2
  <v-sheet>
3
3
  <VcsFormSection heading="Settings">
4
- <v-container class="py-0 px-1">
4
+ <v-container class="py-0 px-4">
5
5
  <v-row no-gutters>
6
6
  <v-col>
7
- <v-switch
8
- v-model="selectable"
9
- label="Selectable"
10
- class="ma-0"
11
- dense
12
- />
7
+ <v-switch v-model="selectable" label="Selectable" />
13
8
  </v-col>
14
9
  <v-col>
15
10
  <v-switch
16
11
  :disabled="!selectable"
17
12
  v-model="selectSingle"
18
13
  label=" Single Select"
19
- class="ma-0"
20
- dense
21
14
  />
22
15
  </v-col>
23
16
  </v-row>
24
17
  <v-row no-gutters>
25
18
  <v-col>
26
- <v-switch
27
- dense
28
- v-model="searchable"
29
- label="Searchable"
30
- class="ma-0"
31
- />
19
+ <v-switch v-model="searchable" label="Searchable" />
32
20
  </v-col>
33
21
  <v-col>
34
- <v-switch
35
- dense
36
- v-model="draggable"
37
- label="Draggable"
38
- class="ma-0"
39
- />
22
+ <v-switch v-model="draggable" label="Draggable" />
40
23
  </v-col>
41
24
  </v-row>
42
25
  <v-row no-gutters>
43
26
  <v-col>
44
27
  <v-switch
45
- dense
46
28
  v-model="prependIndex"
47
29
  label="Prepend Index"
48
30
  class="ma-0"
49
31
  />
50
32
  </v-col>
51
33
  <v-col>
52
- <v-switch
53
- dense
54
- v-model="appendIndex"
55
- label="Append Index"
56
- class="ma-0"
57
- />
34
+ <v-switch v-model="appendIndex" label="Append Index" />
58
35
  </v-col>
59
36
  </v-row>
60
37
  </v-container>
61
38
  </VcsFormSection>
62
39
  <VcsFormSection heading="Title">
63
- <v-container class="py-0 px-1">
40
+ <v-container class="py-0 px-4">
64
41
  <v-row no-gutters>
65
42
  <v-col>
66
- <v-switch
67
- dense
68
- v-model="showTitle"
69
- label="Show Title"
70
- class="ma-0"
71
- />
43
+ <v-switch v-model="showTitle" label="Show Title" />
72
44
  </v-col>
73
45
  <v-col>
74
46
  <vcs-text-field
@@ -84,28 +56,22 @@
84
56
  v-model="titleActions"
85
57
  label="Title Actions"
86
58
  class="ma-0"
87
- dense
88
59
  />
89
60
  </v-col>
90
61
  <v-col>
91
- <v-switch
92
- dense
93
- v-model="titleIcon"
94
- label="Title Icon"
95
- class="ma-0"
96
- />
62
+ <v-switch v-model="titleIcon" label="Title Icon" class="ma-0" />
97
63
  </v-col>
98
64
  </v-row>
99
65
  </v-container>
100
66
  </VcsFormSection>
101
67
  <VcsFormSection heading="Item">
102
- <v-container class="py-1 px-1">
68
+ <v-container class="py-2 px-4">
103
69
  <v-row no-gutters>
104
70
  <v-dialog v-model="dialog" width="400">
105
71
  <template #activator="{ props }">
106
72
  <vcs-form-button v-bind="props"> Add An item </vcs-form-button>
107
73
  </template>
108
- <v-card class="pa-2">
74
+ <v-card class="py-2 px-4">
109
75
  <v-form @submit.prevent="add">
110
76
  <vcs-text-field
111
77
  v-model="newItem.name"
@@ -117,52 +83,23 @@
117
83
  label="Title"
118
84
  :rules="required"
119
85
  />
86
+ <v-switch label="visible" v-model="newItem.visible" />
87
+ <v-switch label="disabled" v-model="newItem.disabled" />
88
+ <v-switch label="random icon" v-model="newItem.icon" />
89
+ <v-switch label="hasUpdate" v-model="newItem.hasUpdate" />
90
+ <v-switch label="rename action" v-model="newItem.renamable" />
120
91
  <v-switch
121
- dense
122
- label="visible"
123
- v-model="newItem.visible"
124
- class="ma-0"
125
- />
126
- <v-switch
127
- dense
128
- label="disabled"
129
- v-model="newItem.disabled"
130
- class="ma-0"
131
- />
132
- <v-switch
133
- dense
134
- label="random icon"
135
- v-model="newItem.icon"
136
- class="ma-0"
137
- />
138
- <v-switch
139
- dense
140
- label="hasUpdate"
141
- v-model="newItem.hasUpdate"
142
- class="ma-0"
143
- />
144
- <v-switch
145
- dense
146
- label="rename action"
147
- v-model="newItem.renameAction"
148
- class="ma-0"
149
- />
150
- <v-switch
151
- dense
152
- label="console.log action"
153
- v-model="newItem.action"
154
- class="ma-0"
92
+ label="toggle rename action"
93
+ v-model="newItem.toggleRename"
155
94
  />
95
+ <v-switch label="console.log action" v-model="newItem.action" />
156
96
  <v-switch
157
97
  label="console.log on clicked"
158
98
  v-model="newItem.clicked"
159
- class="ma-0"
160
99
  />
161
100
  <v-switch
162
- dense
163
101
  label="console.log selected state"
164
102
  v-model="newItem.selected"
165
- class="ma-0"
166
103
  />
167
104
  <vcs-form-button type="submit"> Add </vcs-form-button>
168
105
  </v-form>
@@ -172,7 +109,7 @@
172
109
  </v-container>
173
110
  </VcsFormSection>
174
111
  <VcsFormSection heading="Selection">
175
- <v-container class="py-1 px-1">
112
+ <v-container class="py-2 px-4">
176
113
  <v-row no-gutters>
177
114
  <template v-if="selectable">
178
115
  <v-col>
@@ -226,7 +163,6 @@
226
163
  VcsTextField,
227
164
  Icons,
228
165
  VcsFormSection,
229
- createListItemRenameAction,
230
166
  } from '@vcmap/ui';
231
167
  import {
232
168
  VSwitch,
@@ -238,7 +174,7 @@
238
174
  VRow,
239
175
  VCol,
240
176
  } from 'vuetify/components';
241
- import { computed, ref } from 'vue';
177
+ import { computed, reactive, ref } from 'vue';
242
178
 
243
179
  function getRandomIcon() {
244
180
  const keys = Object.keys(Icons);
@@ -311,7 +247,8 @@
311
247
  disabled: false,
312
248
  visible: true,
313
249
  icon: false,
314
- renameAction: false,
250
+ renamable: false,
251
+ toggleRename: false,
315
252
  action: false,
316
253
  clicked: false,
317
254
  selected: false,
@@ -339,13 +276,14 @@
339
276
  (v) => v.length > 0 || 'Input must have a length',
340
277
  ],
341
278
  add() {
342
- const item = {
279
+ const item = reactive({
343
280
  name: newItem.value.name,
344
281
  title: newItem.value.title,
345
282
  disabled: newItem.value.disabled,
346
283
  visible: newItem.value.visible,
347
284
  hasUpdate: newItem.value.hasUpdate,
348
- };
285
+ renamable: newItem.value.renamable,
286
+ });
349
287
 
350
288
  if (newItem.value.icon) {
351
289
  item.icon = getRandomIcon();
@@ -353,9 +291,13 @@
353
291
 
354
292
  item.actions = [];
355
293
 
356
- if (newItem.value.renameAction) {
357
- item.rename = false;
358
- item.actions.push(createListItemRenameAction(item));
294
+ if (newItem.value.toggleRename) {
295
+ item.actions.push({
296
+ name: 'toggle rename',
297
+ callback() {
298
+ item.renamable = !item.renamable;
299
+ },
300
+ });
359
301
  }
360
302
 
361
303
  if (newItem.value.action) {
@@ -368,9 +310,11 @@
368
310
  }
369
311
 
370
312
  if (newItem.value.clicked) {
371
- item.clicked = () => {
372
- console.log(`${item.name} just got clicked`);
373
- };
313
+ item.clickedCallbacks = [
314
+ () => {
315
+ console.log(`${item.name} just got clicked`);
316
+ },
317
+ ];
374
318
  }
375
319
 
376
320
  if (newItem.value.selected) {
@@ -382,6 +326,13 @@
382
326
  }
383
327
  };
384
328
  }
329
+
330
+ if (newItem.value.renamable) {
331
+ item.titleChanged = (newTitle) => {
332
+ item.title = newTitle;
333
+ };
334
+ }
335
+
385
336
  items.value.push(item);
386
337
  newItem.value = {
387
338
  name: 'foo',
@@ -389,7 +340,7 @@
389
340
  disabled: false,
390
341
  visible: true,
391
342
  icon: false,
392
- renameAction: false,
343
+ renamable: false,
393
344
  action: false,
394
345
  clicked: false,
395
346
  selected: false,