@vcmap/ui 5.0.2 → 5.1.0-rc.1

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 (443) hide show
  1. package/README.md +2 -2
  2. package/build/buildTypes.js +176 -0
  3. package/build/lintTypes.js +30 -0
  4. package/config/aerowest.config.json +4 -0
  5. package/config/base.config.json +22 -0
  6. package/config/dev.config.json +176 -5
  7. package/config/www.config.json +24 -0
  8. package/dist/assets/{cesium.a3a1dc.js → cesium.e9b3ca.js} +1859 -1828
  9. package/dist/assets/cesium.js +1 -1
  10. package/dist/assets/{core.bb64ed.js → core.a9fe5a.js} +5859 -5041
  11. package/dist/assets/core.js +1 -1
  12. package/dist/assets/index-bb2549d6.js +1 -0
  13. package/dist/assets/{ol.833fa9.js → ol.5f0496.js} +7257 -7252
  14. package/dist/assets/ol.js +1 -1
  15. package/dist/assets/{ui.aeb2ec.css → ui.3c73c2.css} +2 -2
  16. package/dist/assets/{ui.aeb2ec.js → ui.3c73c2.js} +14199 -9198
  17. package/dist/assets/ui.js +1 -1
  18. package/dist/assets/{vue.8e1850.js → vue.4fe14e.js} +1243 -1234
  19. package/dist/assets/vue.js +2 -2
  20. package/dist/assets/{vuetify.3ed426.css → vuetify.260d9a.css} +1 -1
  21. package/dist/assets/{vuetify.3ed426.js → vuetify.260d9a.js} +155 -154
  22. package/dist/assets/vuetify.js +2 -2
  23. package/dist/index.html +1 -1
  24. package/index.d.ts +256 -0
  25. package/index.js +48 -11
  26. package/package.json +21 -14
  27. package/plugins/@vcmap-show-case/buttons-example/src/ButtonsExample.vue +3 -0
  28. package/plugins/@vcmap-show-case/category-tester/src/CategoriesExample.vue +312 -43
  29. package/plugins/@vcmap-show-case/category-tester/src/CollectionComponentOptions.vue +48 -182
  30. package/plugins/@vcmap-show-case/category-tester/src/FoobarEditor.vue +118 -0
  31. package/plugins/@vcmap-show-case/category-tester/src/importExportHelper.js +29 -0
  32. package/plugins/@vcmap-show-case/category-tester/src/index.js +16 -0
  33. package/plugins/@vcmap-show-case/collection-manager-example/src/CollectionManagerExample.vue +2 -1
  34. package/plugins/@vcmap-show-case/collection-manager-example/src/index.js +8 -4
  35. package/plugins/@vcmap-show-case/extent-example/README.md +3 -0
  36. package/plugins/@vcmap-show-case/extent-example/package.json +5 -0
  37. package/plugins/@vcmap-show-case/extent-example/src/ExtentExample.vue +71 -0
  38. package/plugins/@vcmap-show-case/extent-example/src/index.js +68 -0
  39. package/plugins/@vcmap-show-case/flight-component-example/README.md +3 -0
  40. package/plugins/@vcmap-show-case/flight-component-example/package.json +5 -0
  41. package/plugins/@vcmap-show-case/flight-component-example/src/FlightExample.vue +53 -0
  42. package/plugins/@vcmap-show-case/flight-component-example/src/index.js +42 -0
  43. package/plugins/@vcmap-show-case/form-inputs-example/src/FormInputsExample.vue +78 -5
  44. package/plugins/@vcmap-show-case/hello-world/src/helloWorld.vue +2 -2
  45. package/plugins/@vcmap-show-case/list-example/src/ListExample.vue +22 -10
  46. package/plugins/@vcmap-show-case/toolbox-example/README.md +9 -0
  47. package/plugins/@vcmap-show-case/toolbox-example/package.json +5 -0
  48. package/plugins/@vcmap-show-case/toolbox-example/src/TriStateExampleWindow.vue +21 -0
  49. package/plugins/@vcmap-show-case/toolbox-example/src/dummyToolboxActions.js +94 -0
  50. package/plugins/@vcmap-show-case/toolbox-example/src/index.js +260 -0
  51. package/plugins/@vcmap-show-case/vector-properties-example/src/VectorPropertiesExample.vue +12 -2
  52. package/plugins/@vcmap-show-case/viewpoint-component-example/README.md +3 -0
  53. package/plugins/@vcmap-show-case/viewpoint-component-example/package.json +5 -0
  54. package/plugins/@vcmap-show-case/viewpoint-component-example/src/ViewpointExample.vue +52 -0
  55. package/plugins/@vcmap-show-case/viewpoint-component-example/src/index.js +42 -0
  56. package/plugins/@vcmap-show-case/window-tester/src/WindowExample.vue +31 -1
  57. package/plugins/@vcmap-show-case/window-tester/src/WindowExampleToggleChild.vue +20 -16
  58. package/plugins/@vcmap-show-case/window-tester/src/index.js +2 -17
  59. package/plugins/package.json +3 -1
  60. package/src/actions/StyleSelector.vue +8 -7
  61. package/src/actions/StyleSelector.vue.d.ts +27 -0
  62. package/src/actions/actionHelper.d.ts +153 -0
  63. package/src/actions/actionHelper.js +36 -19
  64. package/src/actions/extentActions.d.ts +40 -0
  65. package/src/actions/extentActions.js +359 -0
  66. package/src/actions/flightActions.d.ts +59 -0
  67. package/src/actions/flightActions.js +232 -0
  68. package/src/actions/listActions.d.ts +63 -0
  69. package/src/actions/listActions.js +185 -0
  70. package/src/actions/stateRefAction.d.ts +19 -0
  71. package/src/actions/stateRefAction.js +1 -1
  72. package/src/application/VcsApp.vue +103 -28
  73. package/src/application/VcsApp.vue.d.ts +86 -0
  74. package/src/application/VcsAppWrapper.vue.d.ts +12 -0
  75. package/src/application/VcsAttributions.vue.d.ts +14 -0
  76. package/src/application/VcsAttributionsFooter.vue +1 -4
  77. package/src/application/VcsAttributionsFooter.vue.d.ts +26 -0
  78. package/src/application/VcsMap.vue.d.ts +12 -0
  79. package/src/application/VcsNavbar.vue.d.ts +45 -0
  80. package/src/application/VcsPositionDisplay.vue +208 -0
  81. package/src/application/VcsPositionDisplay.vue.d.ts +18 -0
  82. package/src/application/VcsSettings.vue.d.ts +5 -0
  83. package/src/application/VcsTextPage.vue +65 -0
  84. package/src/application/VcsTextPage.vue.d.ts +16 -0
  85. package/src/application/VcsTextPageFooter.vue +89 -0
  86. package/src/application/VcsTextPageFooter.vue.d.ts +22 -0
  87. package/src/application/attributionsHelper.d.ts +64 -0
  88. package/src/application/attributionsHelper.js +1 -1
  89. package/src/application/markdownHelper.d.ts +5 -0
  90. package/src/application/markdownHelper.js +11 -0
  91. package/src/application/positionDisplayInteraction.d.ts +42 -0
  92. package/src/application/positionDisplayInteraction.js +65 -0
  93. package/src/callback/activateLayersCallback.d.ts +29 -0
  94. package/src/callback/activateLayersCallback.js +2 -2
  95. package/src/callback/applyLayerStyleCallback.d.ts +36 -0
  96. package/src/callback/applyLayerStyleCallback.js +2 -2
  97. package/src/callback/deactivateLayersCallback.d.ts +29 -0
  98. package/src/callback/deactivateLayersCallback.js +2 -2
  99. package/src/callback/goToViewpointCallback.d.ts +29 -0
  100. package/src/callback/goToViewpointCallback.js +2 -2
  101. package/src/callback/vcsCallback.d.ts +44 -0
  102. package/src/callback/vcsCallback.js +4 -9
  103. package/src/components/ImageElementInjector.vue.d.ts +24 -0
  104. package/src/components/buttons/VcsActionButtonList.vue +24 -16
  105. package/src/components/buttons/VcsActionButtonList.vue.d.ts +68 -0
  106. package/src/components/buttons/VcsButton.vue +7 -0
  107. package/src/components/buttons/VcsButton.vue.d.ts +89 -0
  108. package/src/components/buttons/VcsFormButton.vue +9 -0
  109. package/src/components/buttons/VcsFormButton.vue.d.ts +91 -0
  110. package/src/components/buttons/VcsToolButton.vue +9 -0
  111. package/src/components/buttons/VcsToolButton.vue.d.ts +91 -0
  112. package/src/components/flight/VcsFlightAnchorsComponent.vue +329 -0
  113. package/src/components/flight/VcsFlightAnchorsComponent.vue.d.ts +45 -0
  114. package/src/components/flight/VcsFlightComponent.vue +284 -0
  115. package/src/components/flight/VcsFlightComponent.vue.d.ts +104 -0
  116. package/src/components/flight/VcsFlightEditor.vue +77 -0
  117. package/src/components/flight/VcsFlightEditor.vue.d.ts +34 -0
  118. package/src/components/flight/VcsFlightPlayer.vue +124 -0
  119. package/src/components/flight/VcsFlightPlayer.vue.d.ts +25 -0
  120. package/src/components/flight/composables.d.ts +11 -0
  121. package/src/components/flight/composables.js +39 -0
  122. package/src/components/form-inputs-controls/VcsCheckbox.vue.d.ts +18 -0
  123. package/src/components/form-inputs-controls/VcsChipArrayInput.vue.d.ts +82 -0
  124. package/src/components/form-inputs-controls/VcsCoordinate.vue +152 -0
  125. package/src/components/form-inputs-controls/VcsCoordinate.vue.d.ts +90 -0
  126. package/src/components/form-inputs-controls/VcsDatePicker.vue +2 -2
  127. package/src/components/form-inputs-controls/VcsDatePicker.vue.d.ts +31 -0
  128. package/src/components/form-inputs-controls/VcsExtent.vue +122 -0
  129. package/src/components/form-inputs-controls/VcsExtent.vue.d.ts +36 -0
  130. package/src/components/form-inputs-controls/VcsFormSection.vue +6 -1
  131. package/src/components/form-inputs-controls/VcsFormSection.vue.d.ts +75 -0
  132. package/src/components/form-inputs-controls/VcsLabel.vue +18 -0
  133. package/src/components/form-inputs-controls/VcsLabel.vue.d.ts +41 -0
  134. package/src/components/form-inputs-controls/VcsRadio.vue.d.ts +32 -0
  135. package/src/components/form-inputs-controls/VcsRadioGrid.vue.d.ts +35 -0
  136. package/src/components/form-inputs-controls/VcsSelect.vue.d.ts +31 -0
  137. package/src/components/form-inputs-controls/VcsSlider.vue.d.ts +2 -0
  138. package/src/components/form-inputs-controls/VcsTextArea.vue.d.ts +22 -0
  139. package/src/components/form-inputs-controls/VcsTextField.vue +57 -10
  140. package/src/components/form-inputs-controls/VcsTextField.vue.d.ts +65 -0
  141. package/src/components/form-inputs-controls/VcsWizard.vue.d.ts +14 -0
  142. package/src/components/form-inputs-controls/VcsWizardStep.vue.d.ts +89 -0
  143. package/src/components/form-inputs-controls/composables.d.ts +7 -0
  144. package/src/components/form-inputs-controls/composables.js +1 -1
  145. package/src/components/form-output/VcsFormattedNumber.vue +13 -2
  146. package/src/components/form-output/VcsFormattedNumber.vue.d.ts +89 -0
  147. package/src/components/icons/+all.d.ts +9 -0
  148. package/src/components/icons/+all.js +16 -0
  149. package/src/components/icons/2DAreaIcon.vue.d.ts +2 -0
  150. package/src/components/icons/2DDistanceIcon.vue.d.ts +2 -0
  151. package/src/components/icons/2DHeightObliqueIcon.vue +20 -0
  152. package/src/components/icons/2DHeightObliqueIcon.vue.d.ts +2 -0
  153. package/src/components/icons/3DAreaIcon.vue.d.ts +2 -0
  154. package/src/components/icons/3DDistanceIcon.vue.d.ts +2 -0
  155. package/src/components/icons/3DHeightIcon.vue.d.ts +2 -0
  156. package/src/components/icons/AngleIcon.vue.d.ts +2 -0
  157. package/src/components/icons/AssociationsIcon.vue.d.ts +2 -0
  158. package/src/components/icons/AxisIcon.vue.d.ts +2 -0
  159. package/src/components/icons/BoundingBoxIcon.vue.d.ts +2 -0
  160. package/src/components/icons/CheckboxCheckedIcon.vue.d.ts +2 -0
  161. package/src/components/icons/CheckboxIcon.vue.d.ts +2 -0
  162. package/src/components/icons/CheckboxIndeterminateIcon.vue.d.ts +2 -0
  163. package/src/components/icons/CircleIcon.vue.d.ts +2 -0
  164. package/src/components/icons/ClippingHorizontalIcon.vue.d.ts +2 -0
  165. package/src/components/icons/ClippingIcon.vue.d.ts +2 -0
  166. package/src/components/icons/ClippingVerticalIcon.vue.d.ts +2 -0
  167. package/src/components/icons/ColorPickerIcon.vue.d.ts +2 -0
  168. package/src/components/icons/ColorSwatchIcon.vue.d.ts +2 -0
  169. package/src/components/icons/CommentIcon.vue.d.ts +2 -0
  170. package/src/components/icons/CompassIcon.vue.d.ts +2 -0
  171. package/src/components/icons/ComponentsIcon.vue.d.ts +2 -0
  172. package/src/components/icons/ComponentsPlusIcon.vue +17 -0
  173. package/src/components/icons/ComponentsPlusIcon.vue.d.ts +2 -0
  174. package/src/components/icons/ConeIcon.vue.d.ts +2 -0
  175. package/src/components/icons/DimensionsHouseIcon.vue.d.ts +2 -0
  176. package/src/components/icons/EditIcon.vue.d.ts +2 -0
  177. package/src/components/icons/EditVerticesIcon.vue.d.ts +2 -0
  178. package/src/components/icons/ElevationProfileIcon.vue.d.ts +2 -0
  179. package/src/components/icons/ExportAreaIcon.vue.d.ts +2 -0
  180. package/src/components/icons/ExportFlightIcon.vue.d.ts +2 -0
  181. package/src/components/icons/ExportIcon.vue.d.ts +2 -0
  182. package/src/components/icons/ExternalLinkIcon.vue.d.ts +2 -0
  183. package/src/components/icons/EyeIcon.vue.d.ts +2 -0
  184. package/src/components/icons/FastForwardIcon.vue.d.ts +2 -0
  185. package/src/components/icons/FilterIcon.vue.d.ts +2 -0
  186. package/src/components/icons/GlobalTerrainIcon.vue.d.ts +2 -0
  187. package/src/components/icons/GlobeNatureIcon.vue.d.ts +2 -0
  188. package/src/components/icons/GroundIcon.vue.d.ts +2 -0
  189. package/src/components/icons/HealthCareIndustriesIcon.vue.d.ts +2 -0
  190. package/src/components/icons/HelpIcon.vue.d.ts +2 -0
  191. package/src/components/icons/HideIcon.vue.d.ts +2 -0
  192. package/src/components/icons/HomePointIcon.vue.d.ts +2 -0
  193. package/src/components/icons/HospitalsIcon.vue.d.ts +2 -0
  194. package/src/components/icons/HouseIcon.vue.d.ts +2 -0
  195. package/src/components/icons/ImportIcon.vue.d.ts +2 -0
  196. package/src/components/icons/InfoIcon.vue.d.ts +2 -0
  197. package/src/components/icons/KebabIcon.vue.d.ts +2 -0
  198. package/src/components/icons/LabelIcon.vue.d.ts +2 -0
  199. package/src/components/icons/LayersIcon.vue.d.ts +2 -0
  200. package/src/components/icons/LegendIcon.vue.d.ts +2 -0
  201. package/src/components/icons/LineIcon.vue.d.ts +2 -0
  202. package/src/components/icons/LinkIcon.vue.d.ts +2 -0
  203. package/src/components/icons/LogoutIcon.vue.d.ts +2 -0
  204. package/src/components/icons/MapIcon.vue.d.ts +2 -0
  205. package/src/components/icons/MenuIcon.vue.d.ts +2 -0
  206. package/src/components/icons/MinusIcon.vue.d.ts +2 -0
  207. package/src/components/icons/MultiViewIcon.vue +16 -0
  208. package/src/components/icons/MultiViewIcon.vue.d.ts +2 -0
  209. package/src/components/icons/ObjectAttributeIcon.vue.d.ts +2 -0
  210. package/src/components/icons/ObjectSelectIcon.vue.d.ts +2 -0
  211. package/src/components/icons/ObliqueViewIcon.vue.d.ts +2 -0
  212. package/src/components/icons/PdfIcon.vue.d.ts +2 -0
  213. package/src/components/icons/PedestrianIcon.vue.d.ts +2 -0
  214. package/src/components/icons/PenIcon.vue.d.ts +2 -0
  215. package/src/components/icons/PlayCircleIcon.vue.d.ts +2 -0
  216. package/src/components/icons/PlusIcon.vue.d.ts +2 -0
  217. package/src/components/icons/PoiIcon.vue.d.ts +2 -0
  218. package/src/components/icons/PointIcon.vue.d.ts +2 -0
  219. package/src/components/icons/PointMeasurementIcon.vue +36 -0
  220. package/src/components/icons/PointMeasurementIcon.vue.d.ts +2 -0
  221. package/src/components/icons/PointSelectIcon.vue.d.ts +2 -0
  222. package/src/components/icons/PresentationModeIcon.vue.d.ts +2 -0
  223. package/src/components/icons/ProgressIcon.vue.d.ts +2 -0
  224. package/src/components/icons/QueryIcon.vue.d.ts +2 -0
  225. package/src/components/icons/RectangleIcon.vue.d.ts +2 -0
  226. package/src/components/icons/ReturnIcon.vue.d.ts +2 -0
  227. package/src/components/icons/RewindIcon.vue.d.ts +2 -0
  228. package/src/components/icons/RotateLeftIcon.vue.d.ts +2 -0
  229. package/src/components/icons/RotateRightIcon.vue.d.ts +2 -0
  230. package/src/components/icons/ScreenshotIcon.vue.d.ts +2 -0
  231. package/src/components/icons/SearchIcon.vue.d.ts +2 -0
  232. package/src/components/icons/ShadowIcon.vue.d.ts +2 -0
  233. package/src/components/icons/ShapesIcon.vue.d.ts +2 -0
  234. package/src/components/icons/ShareIcon.vue.d.ts +2 -0
  235. package/src/components/icons/SimpleCircleFilledIcon.vue.d.ts +2 -0
  236. package/src/components/icons/SimpleCircleHalfFilledIcon.vue.d.ts +2 -0
  237. package/src/components/icons/SimpleCircleOutlinedIcon.vue.d.ts +2 -0
  238. package/src/components/icons/SkipNextIcon.vue.d.ts +2 -0
  239. package/src/components/icons/SkipPreviousIcon.vue.d.ts +2 -0
  240. package/src/components/icons/SplitViewIcon.vue.d.ts +2 -0
  241. package/src/components/icons/TerrainBoxIcon.vue.d.ts +2 -0
  242. package/src/components/icons/TextStyleIcon.vue.d.ts +2 -0
  243. package/src/components/icons/ThreeDimensionsIcon.vue.d.ts +2 -0
  244. package/src/components/icons/ToolsIcon.vue.d.ts +2 -0
  245. package/src/components/icons/TouchIcon.vue.d.ts +2 -0
  246. package/src/components/icons/TrashCanIcon.vue.d.ts +2 -0
  247. package/src/components/icons/TriangleIcon.vue.d.ts +2 -0
  248. package/src/components/icons/TwoDimensionsIcon.vue.d.ts +2 -0
  249. package/src/components/icons/UploadIcon.vue.d.ts +2 -0
  250. package/src/components/icons/UserProfileIcon.vue.d.ts +2 -0
  251. package/src/components/icons/UserShareIcon.vue.d.ts +2 -0
  252. package/src/components/icons/VideoRecorderIcon.vue.d.ts +2 -0
  253. package/src/components/icons/ViewpointFlightIcon.vue.d.ts +2 -0
  254. package/src/components/icons/ViewpointIcon.vue.d.ts +2 -0
  255. package/src/components/icons/Viewshed360Icon.vue.d.ts +2 -0
  256. package/src/components/icons/ViewshedConeIcon.vue.d.ts +2 -0
  257. package/src/components/icons/ViewshedIcon.vue.d.ts +2 -0
  258. package/src/components/icons/WalkingIcon.vue.d.ts +2 -0
  259. package/src/components/icons/WallIcon.vue.d.ts +2 -0
  260. package/src/components/icons/WandIcon.vue.d.ts +2 -0
  261. package/src/components/import/FileDrop.vue +69 -0
  262. package/src/components/import/FileDrop.vue.d.ts +26 -0
  263. package/src/components/import/ImportComponent.vue +78 -0
  264. package/src/components/import/ImportComponent.vue.d.ts +34 -0
  265. package/src/components/lists/VcsActionList.vue +8 -15
  266. package/src/components/lists/VcsActionList.vue.d.ts +66 -0
  267. package/src/components/lists/VcsList.vue +207 -116
  268. package/src/components/lists/VcsList.vue.d.ts +227 -0
  269. package/src/components/lists/VcsTreeview.vue +3 -1
  270. package/src/components/lists/VcsTreeview.vue.d.ts +28 -0
  271. package/src/components/lists/VcsTreeviewLeaf.vue +1 -0
  272. package/src/components/lists/VcsTreeviewLeaf.vue.d.ts +19 -0
  273. package/src/components/lists/VcsTreeviewSearchbar.vue.d.ts +41 -0
  274. package/src/components/notification/VcsBadge.vue.d.ts +14 -0
  275. package/src/components/notification/VcsHelp.vue.d.ts +22 -0
  276. package/src/components/notification/VcsTooltip.vue.d.ts +27 -0
  277. package/src/components/notification/validation.d.ts +8 -0
  278. package/src/components/notification/validation.js +3 -2
  279. package/src/components/plugins/AbstractConfigEditor.vue +25 -4
  280. package/src/components/plugins/AbstractConfigEditor.vue.d.ts +55 -0
  281. package/src/components/style/MenuWrapper.vue.d.ts +55 -0
  282. package/src/components/style/VcsFeatureStyleComponent.vue +389 -0
  283. package/src/components/style/VcsFeatureStyleComponent.vue.d.ts +31 -0
  284. package/src/components/style/VcsFillMenu.vue.d.ts +34 -0
  285. package/src/components/style/VcsFillSelector.vue.d.ts +22 -0
  286. package/src/components/style/VcsImageMenu.vue.d.ts +43 -0
  287. package/src/components/style/VcsImageSelector.vue.d.ts +128 -0
  288. package/src/components/style/VcsStrokeMenu.vue.d.ts +34 -0
  289. package/src/components/style/VcsStrokeSelector.vue.d.ts +23 -0
  290. package/src/components/style/VcsTextMenu.vue.d.ts +52 -0
  291. package/src/components/style/VcsTextSelector.vue.d.ts +58 -0
  292. package/src/components/style/VcsVectorStyleComponent.vue.d.ts +76 -0
  293. package/src/components/style/composables.d.ts +43 -0
  294. package/src/components/style/composables.js +11 -8
  295. package/src/components/tables/VcsDataTable.vue +11 -3
  296. package/src/components/tables/VcsDataTable.vue.d.ts +142 -0
  297. package/src/components/tables/VcsTable.vue +71 -2
  298. package/src/components/tables/VcsTable.vue.d.ts +88 -0
  299. package/src/components/vector-properties/VcsFeatureEditingWindow.vue +392 -0
  300. package/src/components/vector-properties/VcsFeatureEditingWindow.vue.d.ts +87 -0
  301. package/src/components/vector-properties/VcsFeatureTransforms.vue +217 -0
  302. package/src/components/vector-properties/VcsFeatureTransforms.vue.d.ts +45 -0
  303. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue +96 -52
  304. package/src/components/vector-properties/VcsVectorPropertiesComponent.vue.d.ts +119 -0
  305. package/src/components/vector-properties/composables.d.ts +33 -0
  306. package/src/components/vector-properties/composables.js +21 -14
  307. package/src/components/viewpoint/VcsViewpointComponent.vue +514 -0
  308. package/src/components/viewpoint/VcsViewpointComponent.vue.d.ts +126 -0
  309. package/src/components/viewpoint/VcsViewpointEditor.vue +87 -0
  310. package/src/components/viewpoint/VcsViewpointEditor.vue.d.ts +25 -0
  311. package/src/contentTree/LayerTree.vue.d.ts +15 -0
  312. package/src/contentTree/contentTreeCollection.d.ts +113 -0
  313. package/src/contentTree/contentTreeCollection.js +10 -20
  314. package/src/contentTree/contentTreeItem.d.ts +334 -0
  315. package/src/contentTree/contentTreeItem.js +31 -17
  316. package/src/contentTree/flightContentTreeItem.d.ts +53 -0
  317. package/src/contentTree/flightContentTreeItem.js +201 -0
  318. package/src/contentTree/groupContentTreeItem.d.ts +14 -0
  319. package/src/contentTree/groupContentTreeItem.js +2 -2
  320. package/src/contentTree/layerContentTreeItem.d.ts +76 -0
  321. package/src/contentTree/layerContentTreeItem.js +7 -9
  322. package/src/contentTree/layerGroupContentTreeItem.d.ts +50 -0
  323. package/src/contentTree/layerGroupContentTreeItem.js +2 -3
  324. package/src/contentTree/nodeContentTreeItem.d.ts +10 -0
  325. package/src/contentTree/nodeContentTreeItem.js +2 -2
  326. package/src/contentTree/obliqueCollectionContentTreeItem.d.ts +46 -0
  327. package/src/contentTree/obliqueCollectionContentTreeItem.js +3 -5
  328. package/src/contentTree/subContentTreeItem.d.ts +15 -0
  329. package/src/contentTree/subContentTreeItem.js +3 -3
  330. package/src/contentTree/vcsObjectContentTreeItem.d.ts +56 -0
  331. package/src/contentTree/vcsObjectContentTreeItem.js +3 -4
  332. package/src/contentTree/viewpointContentTreeItem.d.ts +46 -0
  333. package/src/contentTree/viewpointContentTreeItem.js +3 -4
  334. package/src/downloadHelper.d.ts +27 -0
  335. package/src/featureInfo/AddressBalloonComponent.vue.d.ts +2 -0
  336. package/src/featureInfo/BalloonComponent.vue +16 -3
  337. package/src/featureInfo/BalloonComponent.vue.d.ts +61 -0
  338. package/src/featureInfo/abstractFeatureInfoView.d.ts +199 -0
  339. package/src/featureInfo/abstractFeatureInfoView.js +82 -18
  340. package/src/featureInfo/addressBalloonFeatureInfoView.d.ts +67 -0
  341. package/src/featureInfo/addressBalloonFeatureInfoView.js +9 -2
  342. package/src/featureInfo/balloonFeatureInfoView.d.ts +49 -0
  343. package/src/featureInfo/balloonFeatureInfoView.js +12 -11
  344. package/src/featureInfo/balloonHelper.d.ts +31 -0
  345. package/src/featureInfo/balloonHelper.js +6 -6
  346. package/src/featureInfo/featureInfo.d.ts +146 -0
  347. package/src/featureInfo/featureInfo.js +11 -16
  348. package/src/featureInfo/featureInfoInteraction.d.ts +21 -0
  349. package/src/featureInfo/featureInfoInteraction.js +2 -2
  350. package/src/featureInfo/iframeFeatureInfoView.d.ts +48 -0
  351. package/src/featureInfo/iframeFeatureInfoView.js +3 -5
  352. package/src/featureInfo/tableFeatureInfoView.d.ts +75 -0
  353. package/src/featureInfo/tableFeatureInfoView.js +19 -9
  354. package/src/i18n/de.d.ts +353 -0
  355. package/src/i18n/de.js +114 -2
  356. package/src/i18n/en.d.ts +352 -0
  357. package/src/i18n/en.js +113 -1
  358. package/src/i18n/i18nCollection.d.ts +82 -0
  359. package/src/i18n/i18nCollection.js +3 -3
  360. package/src/init.d.ts +58 -0
  361. package/src/init.js +3 -5
  362. package/src/legend/StyleLegendItem.vue.d.ts +25 -0
  363. package/src/legend/VcsLegend.vue.d.ts +20 -0
  364. package/src/legend/legendHelper.d.ts +172 -0
  365. package/src/legend/legendHelper.js +21 -21
  366. package/src/manager/buttonManager.d.ts +106 -0
  367. package/src/manager/buttonManager.js +8 -4
  368. package/src/manager/collectionManager/CollectionComponent.vue +38 -42
  369. package/src/manager/collectionManager/CollectionComponent.vue.d.ts +17 -0
  370. package/src/manager/collectionManager/CollectionComponentList.vue +53 -18
  371. package/src/manager/collectionManager/CollectionComponentList.vue.d.ts +38 -0
  372. package/src/manager/collectionManager/CollectionComponentProvider.vue +3 -2
  373. package/src/manager/collectionManager/CollectionComponentProvider.vue.d.ts +12 -0
  374. package/src/manager/collectionManager/CollectionManager.vue +29 -4
  375. package/src/manager/collectionManager/CollectionManager.vue.d.ts +8 -0
  376. package/src/manager/collectionManager/categoryManager.d.ts +56 -0
  377. package/src/manager/collectionManager/categoryManager.js +21 -7
  378. package/src/manager/collectionManager/collectionComponentClass.d.ts +257 -0
  379. package/src/manager/collectionManager/{collectionComponent.js → collectionComponentClass.js} +210 -57
  380. package/src/manager/collectionManager/collectionManager.d.ts +200 -0
  381. package/src/manager/collectionManager/collectionManager.js +45 -39
  382. package/src/manager/collectionManager/editorCollectionComponentClass.d.ts +60 -0
  383. package/src/manager/collectionManager/editorCollectionComponentClass.js +295 -0
  384. package/src/manager/contextMenu/ContextMenuComponent.vue.d.ts +18 -0
  385. package/src/manager/contextMenu/contextMenuInteraction.d.ts +24 -0
  386. package/src/manager/contextMenu/contextMenuManager.d.ts +70 -0
  387. package/src/manager/contextMenu/contextMenuManager.js +5 -5
  388. package/src/manager/navbarManager.d.ts +60 -0
  389. package/src/manager/navbarManager.js +10 -6
  390. package/src/manager/toolbox/GroupToolboxComponent.vue.d.ts +17 -0
  391. package/src/manager/toolbox/SelectToolboxComponent.vue +1 -0
  392. package/src/manager/toolbox/SelectToolboxComponent.vue.d.ts +15 -0
  393. package/src/manager/toolbox/ToolboxManager.vue +33 -7
  394. package/src/manager/toolbox/ToolboxManager.vue.d.ts +21 -0
  395. package/src/manager/toolbox/toolboxManager.d.ts +177 -0
  396. package/src/manager/toolbox/toolboxManager.js +86 -31
  397. package/src/manager/window/WindowComponent.vue.d.ts +40 -0
  398. package/src/manager/window/WindowComponentHeader.vue +1 -1
  399. package/src/manager/window/WindowComponentHeader.vue.d.ts +36 -0
  400. package/src/manager/window/WindowManager.vue +1 -0
  401. package/src/manager/window/WindowManager.vue.d.ts +19 -0
  402. package/src/manager/window/windowHelper.d.ts +134 -0
  403. package/src/manager/window/windowHelper.js +20 -20
  404. package/src/manager/window/windowManager.d.ts +422 -0
  405. package/src/manager/window/windowManager.js +95 -40
  406. package/src/navigation/MapNavCompass.vue.d.ts +25 -0
  407. package/src/navigation/MapNavigation.vue +2 -2
  408. package/src/navigation/MapNavigation.vue.d.ts +46 -0
  409. package/src/navigation/ObliqueRotation.vue +8 -4
  410. package/src/navigation/ObliqueRotation.vue.d.ts +14 -0
  411. package/src/navigation/OrientationToolsButton.vue.d.ts +30 -0
  412. package/src/navigation/TiltSlider.vue.d.ts +19 -0
  413. package/src/navigation/VcsCompass.vue.d.ts +25 -0
  414. package/src/navigation/VcsZoomButton.vue +6 -3
  415. package/src/navigation/VcsZoomButton.vue.d.ts +2 -0
  416. package/src/navigation/overviewMap.d.ts +199 -0
  417. package/src/navigation/overviewMap.js +3 -7
  418. package/src/navigation/overviewMapClickedInteraction.d.ts +21 -0
  419. package/src/notifier/NotifierComponent.vue.d.ts +10 -0
  420. package/src/notifier/notifier.d.ts +53 -0
  421. package/src/notifier/notifier.js +0 -1
  422. package/src/pluginHelper.d.ts +67 -0
  423. package/src/pluginHelper.js +11 -9
  424. package/src/search/ResultItem.vue.d.ts +25 -0
  425. package/src/search/ResultsComponent.vue +1 -1
  426. package/src/search/ResultsComponent.vue.d.ts +24 -0
  427. package/src/search/SearchComponent.vue +1 -1
  428. package/src/search/SearchComponent.vue.d.ts +10 -0
  429. package/src/search/search.d.ts +129 -0
  430. package/src/search/search.js +8 -11
  431. package/src/setup.d.ts +1 -0
  432. package/src/state.d.ts +57 -0
  433. package/src/state.js +7 -5
  434. package/src/uiConfig.d.ts +99 -0
  435. package/src/uiConfig.js +17 -7
  436. package/src/vcsUiApp.d.ts +301 -0
  437. package/src/vcsUiApp.js +58 -54
  438. package/src/vuePlugins/i18n.d.ts +10 -0
  439. package/src/vuePlugins/i18n.js +3 -3
  440. package/src/vuePlugins/vuetify.d.ts +27 -0
  441. package/tsconfig.json +36 -0
  442. package/dist/assets/index-661636d9.js +0 -1
  443. package/plugins/@vcmap-show-case/window-tester/src/toolboxData.js +0 -288
@@ -0,0 +1,45 @@
1
+ declare const _default: import("vue").DefineComponent<{
2
+ transformationMode: {
3
+ type: StringConstructor;
4
+ required: true;
5
+ };
6
+ featureProperties: {
7
+ type: ObjectConstructor;
8
+ required: true;
9
+ };
10
+ allowZInput: {
11
+ type: BooleanConstructor;
12
+ default: boolean;
13
+ };
14
+ }, {
15
+ showTranslate: import("vue").Ref<boolean>;
16
+ showRotate: import("vue").Ref<boolean>;
17
+ showScale: import("vue").Ref<boolean>;
18
+ TransformationMode: typeof TransformationMode;
19
+ xValue: import("vue").Ref<null>;
20
+ yValue: import("vue").Ref<null>;
21
+ zValue: import("vue").Ref<null>;
22
+ translate(): Promise<void>;
23
+ rotate(): Promise<void>;
24
+ cw(): Promise<void>;
25
+ ccw(): Promise<void>;
26
+ scale(): Promise<void>;
27
+ placeOnTerrain(): void;
28
+ }, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
29
+ transformationMode: {
30
+ type: StringConstructor;
31
+ required: true;
32
+ };
33
+ featureProperties: {
34
+ type: ObjectConstructor;
35
+ required: true;
36
+ };
37
+ allowZInput: {
38
+ type: BooleanConstructor;
39
+ default: boolean;
40
+ };
41
+ }>>, {
42
+ allowZInput: boolean;
43
+ }>;
44
+ export default _default;
45
+ import { TransformationMode } from '@vcmap/core';
@@ -1,18 +1,9 @@
1
1
  <template>
2
2
  <VcsFormSection
3
3
  :heading="$attrs.heading || 'components.vectorProperties.header'"
4
- :expandable="$attrs.expandable"
5
- :start-open="$attrs.startOpen"
6
- :header-actions="[
7
- {
8
- name: 'reset',
9
- title: 'components.style.reset',
10
- icon: '$vcsReturn',
11
- callback: () => {
12
- reset();
13
- },
14
- },
15
- ]"
4
+ :expandable="expandable"
5
+ :start-open="startOpen"
6
+ :header-actions="headerActions"
16
7
  >
17
8
  <v-container class="px-1 py-0">
18
9
  <v-row
@@ -27,27 +18,18 @@
27
18
  <v-col>
28
19
  <VcsSelect
29
20
  id="vp-altitude-mode"
30
- :items="[
31
- {
32
- value: 'clampToGround',
33
- text: 'components.vectorProperties.clampToGround',
34
- },
35
- {
36
- value: 'absolute',
37
- text: 'components.vectorProperties.absolute',
38
- },
39
- {
40
- value: 'relativeToGround',
41
- text: 'components.vectorProperties.relativeToGround',
42
- },
43
- ]"
21
+ :items="availableAltitudeModes"
44
22
  v-model="altitudeMode"
45
23
  dense
46
24
  />
47
25
  </v-col>
48
26
  </v-row>
49
27
  <v-row
50
- v-if="altitudeMode === 'relativeToGround' && show3DProperties"
28
+ v-if="
29
+ visibleProperties.has('heightAboveGround') &&
30
+ altitudeMode === 'relativeToGround' &&
31
+ show3DProperties
32
+ "
51
33
  no-gutters
52
34
  >
53
35
  <v-col>
@@ -62,7 +44,7 @@
62
44
  v-model.number="heightAboveGround"
63
45
  type="number"
64
46
  unit="m"
65
- :placeholder="'heightAboveGround' in value ? '0 m' : ''"
47
+ :placeholder="'heightAboveGround' in value ? '0' : ''"
66
48
  />
67
49
  </v-col>
68
50
  </v-row>
@@ -82,7 +64,7 @@
82
64
  v-model.number="groundLevel"
83
65
  type="number"
84
66
  unit="m"
85
- :placeholder="'groundLevel' in value ? '0 m' : ''"
67
+ :placeholder="'groundLevel' in value ? '0' : ''"
86
68
  clearable
87
69
  />
88
70
  </v-col>
@@ -108,9 +90,7 @@
108
90
  :disabled="!hasScaleByDistance"
109
91
  :placeholder="
110
92
  'scaleByDistance' in value
111
- ? index % 2 === 0
112
- ? `${scaleByDistanceDefault[index]} m`
113
- : `${scaleByDistanceDefault[index]}`
93
+ ? `${scaleByDistanceDefault[index]}`
114
94
  : ''
115
95
  "
116
96
  :rules="[
@@ -147,7 +127,7 @@
147
127
  !hasEyeOffset || !isNaN(v) || 'components.validation.required',
148
128
  ]"
149
129
  :placeholder="
150
- 'eyeOffset' in value ? `${eyeOffsetDefault[index]} m` : ''
130
+ 'eyeOffset' in value ? `${eyeOffsetDefault[index]}` : ''
151
131
  "
152
132
  />
153
133
  </v-col>
@@ -189,7 +169,7 @@
189
169
  </v-container>
190
170
  <v-divider
191
171
  v-if="
192
- !hideDividers &&
172
+ showDividers &&
193
173
  show3DProperties &&
194
174
  [
195
175
  'extrudedHeight',
@@ -234,7 +214,7 @@
234
214
  v-model.number="extrudedHeight"
235
215
  type="number"
236
216
  unit="m"
237
- :placeholder="'extrudedHeight' in value ? '0 m' : ''"
217
+ :placeholder="'extrudedHeight' in value ? '0' : ''"
238
218
  clearable
239
219
  :rules="[
240
220
  (v) => v >= 0 || isNaN(v) || 'components.validation.notValid',
@@ -315,7 +295,7 @@
315
295
  v-model.number="skirt"
316
296
  type="number"
317
297
  unit="m"
318
- :placeholder="'skirt' in value ? '0 m' : ''"
298
+ :placeholder="'skirt' in value ? '0' : ''"
319
299
  clearable
320
300
  :rules="[
321
301
  (v) => v >= 0 || isNaN(v) || 'components.validation.notValid',
@@ -366,7 +346,7 @@
366
346
  </v-container>
367
347
  <v-divider
368
348
  v-if="
369
- !hideDividers &&
349
+ showDividers &&
370
350
  show3DProperties &&
371
351
  [
372
352
  'modelUrl',
@@ -425,7 +405,7 @@
425
405
  dense
426
406
  v-model.number="modelHeading"
427
407
  type="number"
428
- :placeholder="'modelHeading' in value ? '0 °' : ''"
408
+ :placeholder="'modelHeading' in value ? '0' : ''"
429
409
  unit="°"
430
410
  clearable
431
411
  />
@@ -442,7 +422,7 @@
442
422
  dense
443
423
  v-model.number="modelPitch"
444
424
  type="number"
445
- :placeholder="'modelPitch' in value ? '0 °' : ''"
425
+ :placeholder="'modelPitch' in value ? '0' : ''"
446
426
  unit="°"
447
427
  clearable
448
428
  />
@@ -457,7 +437,7 @@
457
437
  dense
458
438
  v-model.number="modelRoll"
459
439
  type="number"
460
- :placeholder="'modelRoll' in value ? '0 °' : ''"
440
+ :placeholder="'modelRoll' in value ? '0' : ''"
461
441
  unit="°"
462
442
  clearable
463
443
  />
@@ -482,7 +462,6 @@
482
462
  </v-container>
483
463
  </VcsFormSection>
484
464
  </template>
485
-
486
465
  <script>
487
466
  import { computed } from 'vue';
488
467
  import { VContainer, VRow, VCol, VDivider } from 'vuetify/lib';
@@ -498,20 +477,18 @@
498
477
  } from './composables.js';
499
478
  import VcsChipArrayInput from '../form-inputs-controls/VcsChipArrayInput.vue';
500
479
 
501
- export const vectorProperties = [
480
+ export const genericVectorProperties = [
502
481
  'altitudeMode',
503
482
  'allowPicking',
504
- 'classificationType',
505
- 'scaleByDistance',
506
- 'eyeOffset',
483
+ 'groundLevel',
507
484
  'heightAboveGround',
508
485
  'skirt',
509
- 'groundLevel',
510
486
  'extrudedHeight',
511
- 'storeysAboveGround',
512
- 'storeysBelowGround',
513
- 'storeyHeightsAboveGround',
514
- 'storeyHeightsBelowGround',
487
+ ];
488
+
489
+ export const pointVectorProperties = [
490
+ 'eyeOffset',
491
+ 'scaleByDistance',
515
492
  'modelUrl',
516
493
  'modelScaleX',
517
494
  'modelScaleY',
@@ -522,6 +499,20 @@
522
499
  'baseUrl',
523
500
  ];
524
501
 
502
+ export const nonPointVectorProperties = [
503
+ 'classificationType',
504
+ 'storeysAboveGround',
505
+ 'storeysBelowGround',
506
+ 'storeyHeightsAboveGround',
507
+ 'storeyHeightsBelowGround',
508
+ ];
509
+
510
+ export const vectorProperties = [
511
+ ...genericVectorProperties,
512
+ ...nonPointVectorProperties,
513
+ ...pointVectorProperties,
514
+ ];
515
+
525
516
  export const scaleByDistanceDefault = [0, 1, 1, 1];
526
517
  export const eyeOffsetDefault = [0, 0, 0];
527
518
  export const dimensionsUpperCase = ['X', 'Y', 'Z'];
@@ -532,10 +523,11 @@
532
523
  * @vue-prop {import("@vcmap/core").VectorPropertiesOptions} valueDefault - The default VectorPropertiesOptions that are applied when clicking the "Reset" button.
533
524
  * @vue-prop {Array<string>} properties - The keys of the VectorPropertiesOptions that should be editable. If a key is not within this array, the corresponding input field is not shown.
534
525
  * @vue-prop {boolean} show3DProperties - Whether the 3D related properties should be shown or not.
535
- * @vue-prop {boolean} hideDividers - Wether the dividers, which group similar properties, should be hidden.
526
+ * @vue-prop {boolean} [showDividers=true] - Wether the dividers, which group similar properties, should be shown.
536
527
  * @vue-prop {string} [heading='Vector properties'] - Title of the form section, will be translated.
537
528
  * @vue-prop {boolean} [expandable=false] - If true, form section can be toggled.
538
529
  * @vue-prop {boolean} [startOpen=false] - If form section starts open.
530
+ * @vue-prop {boolean} [showReset=true] - If a reset action is added to the form header.
539
531
  * @vue-event {import("@vcmap/core").VectorPropertiesOptions} input - Emits the updated VectorPropertiesOptions each time a property is changed.
540
532
  * @vue-event {import("@vcmap/core").VectorPropertiesOptions} propertyChange - Emits the updated VectorPropertiesOptions, containing only the keys that changed, each time a property is changed.
541
533
  */
@@ -570,10 +562,22 @@
570
562
  type: Boolean,
571
563
  default: true,
572
564
  },
573
- hideDividers: {
565
+ showDividers: {
566
+ type: Boolean,
567
+ default: true,
568
+ },
569
+ expandable: {
570
+ type: Boolean,
571
+ default: false,
572
+ },
573
+ startOpen: {
574
574
  type: Boolean,
575
575
  default: false,
576
576
  },
577
+ showReset: {
578
+ type: Boolean,
579
+ default: true,
580
+ },
577
581
  },
578
582
  setup(props, { emit }) {
579
583
  const visibleProperties = computed(() => {
@@ -585,6 +589,29 @@
585
589
  'altitudeMode',
586
590
  emit,
587
591
  );
592
+
593
+ const availableAltitudeModes = computed(() => {
594
+ const altitudeModes = [
595
+ {
596
+ value: 'clampToGround',
597
+ text: 'components.vectorProperties.clampToGround',
598
+ },
599
+ {
600
+ value: 'absolute',
601
+ text: 'components.vectorProperties.absolute',
602
+ },
603
+ ];
604
+
605
+ if (visibleProperties.value.has('heightAboveGround')) {
606
+ altitudeModes.push({
607
+ value: 'relativeToGround',
608
+ text: 'components.vectorProperties.relativeToGround',
609
+ });
610
+ }
611
+
612
+ return altitudeModes;
613
+ });
614
+
588
615
  const heightAboveGround = usePrimitiveProperty(
589
616
  () => props.value,
590
617
  'heightAboveGround',
@@ -746,9 +773,26 @@
746
773
  emit('propertyChange', newParams);
747
774
  }
748
775
 
776
+ const headerActions = computed(() =>
777
+ props.showReset
778
+ ? [
779
+ {
780
+ name: 'reset',
781
+ title: 'components.style.reset',
782
+ icon: '$vcsReturn',
783
+ callback: () => {
784
+ reset();
785
+ },
786
+ },
787
+ ]
788
+ : [],
789
+ );
790
+
749
791
  return {
792
+ headerActions,
750
793
  visibleProperties,
751
794
  altitudeMode,
795
+ availableAltitudeModes,
752
796
  heightAboveGround,
753
797
  allowPicking,
754
798
  classificationType,
@@ -0,0 +1,119 @@
1
+ export const genericVectorProperties: string[];
2
+ export const pointVectorProperties: string[];
3
+ export const nonPointVectorProperties: string[];
4
+ export const vectorProperties: string[];
5
+ export const scaleByDistanceDefault: number[];
6
+ export const eyeOffsetDefault: number[];
7
+ export const dimensionsUpperCase: string[];
8
+ declare const _default: import("vue").DefineComponent<{
9
+ value: {
10
+ type: ObjectConstructor;
11
+ default: () => void;
12
+ };
13
+ valueDefault: {
14
+ type: ObjectConstructor;
15
+ required: true;
16
+ };
17
+ properties: {
18
+ type: ArrayConstructor;
19
+ default: () => string[];
20
+ };
21
+ show3DProperties: {
22
+ type: BooleanConstructor;
23
+ default: boolean;
24
+ };
25
+ showDividers: {
26
+ type: BooleanConstructor;
27
+ default: boolean;
28
+ };
29
+ expandable: {
30
+ type: BooleanConstructor;
31
+ default: boolean;
32
+ };
33
+ startOpen: {
34
+ type: BooleanConstructor;
35
+ default: boolean;
36
+ };
37
+ showReset: {
38
+ type: BooleanConstructor;
39
+ default: boolean;
40
+ };
41
+ }, {
42
+ headerActions: import("vue").ComputedRef<{
43
+ name: string;
44
+ title: string;
45
+ icon: string;
46
+ callback: () => void;
47
+ }[]>;
48
+ visibleProperties: import("vue").ComputedRef<Set<any>>;
49
+ altitudeMode: import("vue").WritableComputedRef<any>;
50
+ availableAltitudeModes: import("vue").ComputedRef<{
51
+ value: string;
52
+ text: string;
53
+ }[]>;
54
+ heightAboveGround: import("vue").WritableComputedRef<any>;
55
+ allowPicking: import("vue").WritableComputedRef<any>;
56
+ classificationType: import("vue").WritableComputedRef<any>;
57
+ scaleByDistance: import("vue").WritableComputedRef<any>[];
58
+ hasScaleByDistance: import("vue").WritableComputedRef<boolean>;
59
+ scaleByDistanceDefault: number[];
60
+ eyeOffset: import("vue").WritableComputedRef<any>[];
61
+ hasEyeOffset: import("vue").WritableComputedRef<boolean>;
62
+ eyeOffsetDefault: number[];
63
+ groundLevel: import("vue").WritableComputedRef<any>;
64
+ extrudedHeight: import("vue").WritableComputedRef<any>;
65
+ skirt: import("vue").WritableComputedRef<any>;
66
+ storeysAboveGround: import("vue").WritableComputedRef<any>;
67
+ storeysBelowGround: import("vue").WritableComputedRef<any>;
68
+ storeyHeights: import("vue").ComputedRef<{}>;
69
+ modelUrl: import("vue").WritableComputedRef<any>;
70
+ modelScale: import("vue").ComputedRef<{}>;
71
+ modelHeading: import("vue").WritableComputedRef<any>;
72
+ modelPitch: import("vue").WritableComputedRef<any>;
73
+ modelRoll: import("vue").WritableComputedRef<any>;
74
+ baseUrl: import("vue").WritableComputedRef<any>;
75
+ reset: () => void;
76
+ dimensionsUpperCase: string[];
77
+ }, {}, {}, {}, import("vue/types/v3-component-options.js").ComponentOptionsMixin, import("vue/types/v3-component-options.js").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
78
+ value: {
79
+ type: ObjectConstructor;
80
+ default: () => void;
81
+ };
82
+ valueDefault: {
83
+ type: ObjectConstructor;
84
+ required: true;
85
+ };
86
+ properties: {
87
+ type: ArrayConstructor;
88
+ default: () => string[];
89
+ };
90
+ show3DProperties: {
91
+ type: BooleanConstructor;
92
+ default: boolean;
93
+ };
94
+ showDividers: {
95
+ type: BooleanConstructor;
96
+ default: boolean;
97
+ };
98
+ expandable: {
99
+ type: BooleanConstructor;
100
+ default: boolean;
101
+ };
102
+ startOpen: {
103
+ type: BooleanConstructor;
104
+ default: boolean;
105
+ };
106
+ showReset: {
107
+ type: BooleanConstructor;
108
+ default: boolean;
109
+ };
110
+ }>>, {
111
+ value: Record<string, any>;
112
+ properties: unknown[];
113
+ expandable: boolean;
114
+ startOpen: boolean;
115
+ showReset: boolean;
116
+ show3DProperties: boolean;
117
+ showDividers: boolean;
118
+ }>;
119
+ export default _default;
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Creates a computed property with a getter and a setter for a specific primitive object property/key of the modelled object. This composable allows to pass the computed to an v-model of a sub component. The getter returns the value of the key. The setter merges the passed value with the other object properties of the modelled object and emits the whole object as a input event, and only the changed props as an change event.
3
+ * @param {function():T} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
4
+ * @param {K} key The key of the modelObject that should be returned on get and updated on set.
5
+ * @param {function(string, unknown[]):void} emit The emit function of the component context that is using this composable.
6
+ * @returns {import('vue').WritableComputedRef<T[K]>} A computed with a getter and a setter.
7
+ * @template {Record<string, unknown>} T
8
+ * @template {string} K
9
+ */
10
+ export function usePrimitiveProperty<T extends Record<string, unknown>, K extends string>(modelObject: () => T, key: K, emit: (arg0: string, arg1: unknown[]) => void): import("vue").WritableComputedRef<T[K]>;
11
+ /**
12
+ * Creates an object with the entries of the input array as keys and computed properties as values. These have a getter and a setter for a specific entry of the array, that is an object property/key of the modelled object. This composable allows to pass the computeds to an v-model of a sub component. The getter returns the value of the array entry. The setter first merges the passed value with the other array entries, and then with the other object properties of the modelled object and emits the whole object as a input event, and only the changed props as an change event.
13
+ * @param {function():T} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
14
+ * @param {K} key The key of the modelObject that should be returned on get and updated on set.
15
+ * @param {function(string, unknown[]):void} emit The emit function of the component context that is using this composable.
16
+ * @param {number} arrayLength The length of the array property.
17
+ * @returns {import('vue').WritableComputedRef<T[K][number]>[]} An object with the provided names as keys and the corresponding computed properties with a getter and a setter.
18
+ * @template {Object} T
19
+ * @template {string} K
20
+ */
21
+ export function useArrayProperty<T extends Object, K extends string>(modelObject: () => T, key: K, emit: (arg0: string, arg1: unknown[]) => void, arrayLength: number): import("vue").WritableComputedRef<T[K][number]>[];
22
+ /**
23
+ * Creates a computed property that returns whether a specific key of the modelled object (value prop) is undefined or not. If set to true, the provided default value is applied to the key of the modelled object.
24
+ * @param {function():T} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
25
+ * @param {K} key The key of the modelObject that should be return on get and updated on set.
26
+ * @param {function(string, unknown[]):void} emit The emit function of the component context that is using this composable.
27
+ * @param {D} valueDefault The defualt value that is set when `true` is provided to the setter of the computed property.
28
+ * @returns {import('vue').WritableComputedRef<boolean>} A computed ref with a setter and a getter.
29
+ * @template {Object} T
30
+ * @template {string} K
31
+ * @template D
32
+ */
33
+ export function useHasProperty<T extends Object, K extends string, D>(modelObject: () => T, key: K, emit: (arg0: string, arg1: unknown[]) => void, valueDefault: D): import('vue').WritableComputedRef<boolean>;
@@ -2,10 +2,12 @@ import { computed } from 'vue';
2
2
 
3
3
  /**
4
4
  * Creates a computed property with a getter and a setter for a specific primitive object property/key of the modelled object. This composable allows to pass the computed to an v-model of a sub component. The getter returns the value of the key. The setter merges the passed value with the other object properties of the modelled object and emits the whole object as a input event, and only the changed props as an change event.
5
- * @param {function():Object} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
6
- * @param {string} key The key of the modelObject that should be returned on get and updated on set.
7
- * @param {function(event: string, ...args: any[]):void} emit The emit function of the component context that is using this composable.
8
- * @returns {import('vue').WriteableComputedRef} A computed with a getter and a setter.
5
+ * @param {function():T} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
6
+ * @param {K} key The key of the modelObject that should be returned on get and updated on set.
7
+ * @param {function(string, unknown[]):void} emit The emit function of the component context that is using this composable.
8
+ * @returns {import('vue').WritableComputedRef<T[K]>} A computed with a getter and a setter.
9
+ * @template {Record<string, unknown>} T
10
+ * @template {string} K
9
11
  */
10
12
  export function usePrimitiveProperty(modelObject, key, emit) {
11
13
  return computed({
@@ -15,7 +17,7 @@ export function usePrimitiveProperty(modelObject, key, emit) {
15
17
  set(value) {
16
18
  if (modelObject()[key] !== value) {
17
19
  const newParams = structuredClone(modelObject());
18
- const changedParams = { [key]: value || undefined }; // XXX boolean values need to be handled differently
20
+ const changedParams = { [key]: value ?? undefined };
19
21
  emit('input', Object.assign(newParams, changedParams));
20
22
  emit('propertyChange', changedParams);
21
23
  }
@@ -25,11 +27,13 @@ export function usePrimitiveProperty(modelObject, key, emit) {
25
27
 
26
28
  /**
27
29
  * Creates an object with the entries of the input array as keys and computed properties as values. These have a getter and a setter for a specific entry of the array, that is an object property/key of the modelled object. This composable allows to pass the computeds to an v-model of a sub component. The getter returns the value of the array entry. The setter first merges the passed value with the other array entries, and then with the other object properties of the modelled object and emits the whole object as a input event, and only the changed props as an change event.
28
- * @param {function():Object} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
29
- * @param {string} key The key of the modelObject that should be returned on get and updated on set.
30
- * @param {function(event: string, ...args: any[]):void} emit The emit function of the component context that is using this composable.
30
+ * @param {function():T} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
31
+ * @param {K} key The key of the modelObject that should be returned on get and updated on set.
32
+ * @param {function(string, unknown[]):void} emit The emit function of the component context that is using this composable.
31
33
  * @param {number} arrayLength The length of the array property.
32
- * @returns {Object<string, import('vue').WriteableComputedRef>} An object with the provided names as keys and the corresponding computed properties with a getter and a setter.
34
+ * @returns {import('vue').WritableComputedRef<T[K][number]>[]} An object with the provided names as keys and the corresponding computed properties with a getter and a setter.
35
+ * @template {Object} T
36
+ * @template {string} K
33
37
  */
34
38
  export function useArrayProperty(modelObject, key, emit, arrayLength) {
35
39
  return Array(arrayLength)
@@ -67,11 +71,14 @@ export function useArrayProperty(modelObject, key, emit, arrayLength) {
67
71
 
68
72
  /**
69
73
  * Creates a computed property that returns whether a specific key of the modelled object (value prop) is undefined or not. If set to true, the provided default value is applied to the key of the modelled object.
70
- * @param {function():Object} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
71
- * @param {string} key The key of the modelObject that should be return on get and updated on set.
72
- * @param {function(event: string, ...args: any[]):void} emit The emit function of the component context that is using this composable.
73
- * @param {*} valueDefault The defualt value that is set when `true` is provided to the setter of the computed property.
74
- * @returns {import('vue').WriteableComputedRef} A computed ref with a setter and a getter.
74
+ * @param {function():T} modelObject Getter for the property that is modelled by the component and should be updated with input event, usually this is the 'value' prop.
75
+ * @param {K} key The key of the modelObject that should be return on get and updated on set.
76
+ * @param {function(string, unknown[]):void} emit The emit function of the component context that is using this composable.
77
+ * @param {D} valueDefault The defualt value that is set when `true` is provided to the setter of the computed property.
78
+ * @returns {import('vue').WritableComputedRef<boolean>} A computed ref with a setter and a getter.
79
+ * @template {Object} T
80
+ * @template {string} K
81
+ * @template D
75
82
  */
76
83
  export function useHasProperty(modelObject, key, emit, valueDefault) {
77
84
  return computed({