@vcmap/ui 5.0.2 → 5.1.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +32 -0
  8. package/dist/assets/{cesium.a3a1dc.js → cesium.b97c3b.js} +1859 -1828
  9. package/dist/assets/cesium.js +1 -1
  10. package/dist/assets/{core.bb64ed.js → core.5b03e5.js} +5859 -5041
  11. package/dist/assets/core.js +1 -1
  12. package/dist/assets/index-92075a75.js +1 -0
  13. package/dist/assets/{ol.833fa9.js → ol.0cd250.js} +7257 -7252
  14. package/dist/assets/ol.js +1 -1
  15. package/dist/assets/{ui.aeb2ec.css → ui.67779e.css} +2 -2
  16. package/dist/assets/{ui.aeb2ec.js → ui.67779e.js} +14199 -9198
  17. package/dist/assets/ui.js +1 -1
  18. package/dist/assets/{vue.8e1850.js → vue.62ecd5.js} +1243 -1234
  19. package/dist/assets/vue.js +2 -2
  20. package/dist/assets/{vuetify.3ed426.css → vuetify.3b3e23.css} +1 -1
  21. package/dist/assets/{vuetify.3ed426.js → vuetify.3b3e23.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 +6 -2
  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
@@ -11,16 +11,17 @@ import { executeCallbacks } from '../callback/vcsCallback.js';
11
11
 
12
12
  /**
13
13
  * @typedef {Object} ContentTreeItemOptions
14
+ * @property {string} [type]
14
15
  * @property {string} name - name of the item defining the structure within the tree using dot notation.
15
16
  * @property {string} [title] - may be unset, if set from object properties later on. required otherwise
16
17
  * @property {string} [tooltip] - may be unset or set from object properties later on.
17
- * @property {string|HTMLCanvasElement|HTMLImageElement|undefined} icon - an icon URL or element to display.
18
+ * @property {string|HTMLCanvasElement|HTMLImageElement|undefined} [icon] - an icon URL or element to display.
18
19
  * @property {number} [weight] - optional weighting of the item. higher weights come first.
19
20
  * @property {string} [infoUrl] - optional info url providing link with additional information.
20
21
  * @property {boolean} [initOpen=false] - groups being initially open or not.
21
- * @property {VcsCallbackOptions} [onClick] - optional callback actions executed on click
22
- * @property {VcsCallbackOptions} [onActivate] - optional callback actions executed on activation of the item
23
- * @property {VcsCallbackOptions} [onDeactivate] - optional callback actions executed on deactivation of the item
22
+ * @property {import("../callback/vcsCallback.js").VcsCallbackOptions} [onClick] - optional callback actions executed on click
23
+ * @property {import("../callback/vcsCallback.js").VcsCallbackOptions} [onActivate] - optional callback actions executed on activation of the item
24
+ * @property {import("../callback/vcsCallback.js").VcsCallbackOptions} [onDeactivate] - optional callback actions executed on deactivation of the item
24
25
  */
25
26
 
26
27
  /**
@@ -34,7 +35,7 @@ import { executeCallbacks } from '../callback/vcsCallback.js';
34
35
  * @property {string} title - The title to be displayed
35
36
  * @property {string} [tooltip]
36
37
  * @property {string|HTMLCanvasElement|HTMLImageElement|undefined} [icon] - An optional icon to display with this item. Can be an URL or HTMLElement.
37
- * @property {Array<VcsAction>} actions
38
+ * @property {Array<import("../actions/actionHelper.js").VcsAction>} actions
38
39
  * @property {Array<TreeViewItem>} children
39
40
  * @property {Array<TreeViewItem>} visibleChildren - computed property
40
41
  * @property {function(PointerEvent):Promise<void>} clicked - A callback called once the item is clicked.
@@ -46,7 +47,7 @@ import { executeCallbacks } from '../callback/vcsCallback.js';
46
47
  const actionWeightSymbol = Symbol('ActionWeight');
47
48
 
48
49
  /**
49
- * @type {ClassRegistry<ContentTreeItem>}
50
+ * @type {ClassRegistry<import("@vcmap/core").Ctor<typeof ContentTreeItem>>}
50
51
  */
51
52
  export const contentTreeClassRegistry = new ClassRegistry();
52
53
 
@@ -64,17 +65,17 @@ class ContentTreeItem {
64
65
 
65
66
  /**
66
67
  * @param {ContentTreeItemOptions} options
67
- * @param {VcsUiApp} app
68
+ * @param {import("@src/vcsUiApp.js").default} app
68
69
  */
69
70
  constructor(options, app) {
70
71
  /**
71
72
  * @protected
72
- * @type {VcsUiApp}
73
+ * @type {import("@src/vcsUiApp.js").default}
73
74
  */
74
75
  this._app = app;
75
76
 
76
77
  /**
77
- * @type {import("vue").Ref<Array<VcsAction>>}
78
+ * @type {import("vue").Ref<Array<import("../actions/actionHelper.js").VcsAction>>}
78
79
  * @private
79
80
  */
80
81
  this._actions = ref([]);
@@ -162,17 +163,17 @@ class ContentTreeItem {
162
163
  */
163
164
  this.initOpen = parseBoolean(options.initOpen, false);
164
165
  /**
165
- * @type {Array<VcsCallbackOptions>}
166
+ * @type {Array<import("../callback/vcsCallback.js").VcsCallbackOptions>}
166
167
  * @protected
167
168
  */
168
169
  this._onClick = options.onClick ?? [];
169
170
  /**
170
- * @type {Array<VcsCallbackOptions>}
171
+ * @type {Array<import("../callback/vcsCallback.js").VcsCallbackOptions>}
171
172
  * @protected
172
173
  */
173
174
  this._onActivate = options.onActivate ?? [];
174
175
  /**
175
- * @type {Array<VcsCallbackOptions>}
176
+ * @type {Array<import("../callback/vcsCallback.js").VcsCallbackOptions>}
176
177
  * @protected
177
178
  */
178
179
  this._onDeactivate = options.onDeactivate ?? [];
@@ -183,7 +184,6 @@ class ContentTreeItem {
183
184
  }
184
185
 
185
186
  /**
186
- * @readonly
187
187
  * @type {string}
188
188
  */
189
189
  get className() {
@@ -192,7 +192,6 @@ class ContentTreeItem {
192
192
 
193
193
  /**
194
194
  * @type {string}
195
- * @readonly
196
195
  */
197
196
  get name() {
198
197
  return this._name;
@@ -200,8 +199,7 @@ class ContentTreeItem {
200
199
 
201
200
  /**
202
201
  * A slice of the underlying actions array. Use add/removeAction to manipulate the actions array.
203
- * @type {Array<VcsAction>}
204
- * @readonly
202
+ * @type {Array<import("../actions/actionHelper.js").VcsAction>}
205
203
  */
206
204
  get actions() {
207
205
  return this._actions.value.slice();
@@ -408,7 +406,7 @@ class ContentTreeItem {
408
406
  * InfoUrl: 6
409
407
  * GoToExtent: 8
410
408
  * The default weight is set to always push new actions past these.
411
- * @param {VcsAction} action
409
+ * @param {import("../actions/actionHelper.js").VcsAction} action
412
410
  * @param {number} [weight=11]
413
411
  */
414
412
  addAction(action, weight = 11) {
@@ -485,6 +483,10 @@ class ContentTreeItem {
485
483
  config.title = this.title;
486
484
  }
487
485
 
486
+ if (this.tooltip) {
487
+ config.tooltip = this.tooltip;
488
+ }
489
+
488
490
  if (this.icon) {
489
491
  config.icon = this.icon;
490
492
  }
@@ -501,6 +503,18 @@ class ContentTreeItem {
501
503
  config.weight = this.weight;
502
504
  }
503
505
 
506
+ if (this._onClick.length > 0) {
507
+ config.onClick = this._onClick;
508
+ }
509
+
510
+ if (this._onActivate.length > 0) {
511
+ config.onActivate = this._onActivate;
512
+ }
513
+
514
+ if (this._onDeactivate.length > 0) {
515
+ config.onDeactivate = this._onDeactivate;
516
+ }
517
+
504
518
  return config;
505
519
  }
506
520
 
@@ -0,0 +1,53 @@
1
+ export default FlightContentTreeItem;
2
+ export type FlightContentTreeItemOptions = import("./contentTreeItem.js").ContentTreeItemOptions & {
3
+ flightName: string;
4
+ };
5
+ /**
6
+ * @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { flightName: string }} FlightContentTreeItemOptions
7
+ */
8
+ /**
9
+ * A flight item. Allows for playing a flight from the content tree.
10
+ * Callbacks for onActivate are called on play, when playing from a paused state and onDeactivate are called
11
+ * on stop. Pausing and continueing a flight does not trigger any callbacks.
12
+ * @class
13
+ * @extends {VcsObjectContentTreeItem}
14
+ */
15
+ declare class FlightContentTreeItem extends VcsObjectContentTreeItem<any> {
16
+ /**
17
+ * @param {FlightContentTreeItemOptions} options
18
+ * @param {import("@src/vcsUiApp.js").default} app
19
+ */
20
+ constructor(options: FlightContentTreeItemOptions, app: import("@src/vcsUiApp.js").default);
21
+ /**
22
+ * @type {string}
23
+ * @private
24
+ */
25
+ private _flightName;
26
+ /**
27
+ * @type {Array<Function>}
28
+ * @private
29
+ */
30
+ private _listeners;
31
+ /**
32
+ * @type {import("@vcmap/core").FlightInstance}
33
+ * @private
34
+ */
35
+ private get _flight();
36
+ /**
37
+ * @private
38
+ */
39
+ private _clearListeners;
40
+ /**
41
+ * @private
42
+ */
43
+ private _setupPlayer;
44
+ /**
45
+ * @private
46
+ */
47
+ private _setup;
48
+ /**
49
+ * @returns {FlightContentTreeItemOptions}
50
+ */
51
+ toJSON(): FlightContentTreeItemOptions;
52
+ }
53
+ import VcsObjectContentTreeItem from './vcsObjectContentTreeItem.js';
@@ -0,0 +1,201 @@
1
+ import { CesiumMap } from '@vcmap/core';
2
+ import VcsObjectContentTreeItem from './vcsObjectContentTreeItem.js';
3
+ import { contentTreeClassRegistry } from './contentTreeItem.js';
4
+ import { executeCallbacks } from '../callback/vcsCallback.js';
5
+
6
+ /**
7
+ * @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { flightName: string }} FlightContentTreeItemOptions
8
+ */
9
+
10
+ /**
11
+ * A flight item. Allows for playing a flight from the content tree.
12
+ * Callbacks for onActivate are called on play, when playing from a paused state and onDeactivate are called
13
+ * on stop. Pausing and continueing a flight does not trigger any callbacks.
14
+ * @class
15
+ * @extends {VcsObjectContentTreeItem}
16
+ */
17
+ class FlightContentTreeItem extends VcsObjectContentTreeItem {
18
+ /**
19
+ * @returns {string}
20
+ */
21
+ static get className() {
22
+ return 'FlightContentTreeItem';
23
+ }
24
+
25
+ /**
26
+ * @param {FlightContentTreeItemOptions} options
27
+ * @param {import("@src/vcsUiApp.js").default} app
28
+ */
29
+ constructor(options, app) {
30
+ super(options, app);
31
+
32
+ /**
33
+ * @type {string}
34
+ * @private
35
+ */
36
+ this._flightName = options.flightName;
37
+
38
+ /**
39
+ * @type {Array<Function>}
40
+ * @private
41
+ */
42
+ this._listeners = [];
43
+
44
+ this._setup();
45
+ }
46
+
47
+ /**
48
+ * @type {import("@vcmap/core").FlightInstance}
49
+ * @private
50
+ */
51
+ get _flight() {
52
+ return this._app.flights.getByKey(this._flightName);
53
+ }
54
+
55
+ /**
56
+ * @private
57
+ */
58
+ _clearListeners() {
59
+ this._listeners.forEach((cb) => {
60
+ cb();
61
+ });
62
+ this._listeners.splice(0);
63
+ }
64
+
65
+ /**
66
+ * @private
67
+ */
68
+ _setupPlayer() {
69
+ let stateListener = () => {};
70
+ let destroyListener = () => {};
71
+ /** @type {import("@vcmap/core").FlightPlayer|undefined} */
72
+ let player;
73
+
74
+ const stopAction = {
75
+ name: 'stop',
76
+ icon: 'mdi-square',
77
+ title: 'flight.stopTooltip',
78
+ callback: () => {
79
+ player?.stop();
80
+ },
81
+ };
82
+
83
+ const playAction = {
84
+ name: 'play',
85
+ icon: 'mdi-play',
86
+ title: 'flight.playTooltip',
87
+ callback: async () => {
88
+ if (player) {
89
+ if (player.state === 'playing') {
90
+ player.pause();
91
+ } else {
92
+ player.play();
93
+ }
94
+ } else {
95
+ player = await this._app.flights.setPlayerForFlight(this._flight);
96
+ if (player) {
97
+ stateListener = player.stateChanged.addEventListener((state) => {
98
+ if (state === 'stopped') {
99
+ this.removeAction(stopAction.name);
100
+ playAction.icon = 'mdi-play';
101
+ playAction.title = 'flight.playTooltip';
102
+ executeCallbacks(this._app, this._onDeactivate);
103
+ } else {
104
+ if (!this.actions.includes(stopAction)) {
105
+ this.addAction(stopAction);
106
+ }
107
+ if (state === 'paused') {
108
+ playAction.icon = 'mdi-play';
109
+ playAction.title = 'flight.playTooltip';
110
+ } else {
111
+ playAction.icon = 'mdi-pause';
112
+ playAction.title = 'flight.pauseTooltip';
113
+ }
114
+ }
115
+ });
116
+ destroyListener = player.destroyed.addEventListener(() => {
117
+ player = null;
118
+ this.removeAction(stopAction.name);
119
+ playAction.icon = 'mdi-play';
120
+ stateListener();
121
+ destroyListener();
122
+ });
123
+ player.play();
124
+ executeCallbacks(this._app, this._onActivate);
125
+ }
126
+ }
127
+ },
128
+ };
129
+
130
+ this.addAction(playAction, 12);
131
+
132
+ this._listeners.push(() => {
133
+ if (player) {
134
+ player.stop();
135
+ player.destroy();
136
+ player = null;
137
+ }
138
+ this.removeAction(playAction.name);
139
+ });
140
+ }
141
+
142
+ /**
143
+ * @private
144
+ */
145
+ _setup() {
146
+ this._clearListeners();
147
+ /**
148
+ * Called when a flight is added or removed to reset the item if needed
149
+ * @param {import("@vcmap/core").FlightInstance} flight
150
+ */
151
+ const resetHandler = (flight) => {
152
+ if (flight.name === this._flightName) {
153
+ this._setup();
154
+ }
155
+ };
156
+
157
+ if (!this._flight) {
158
+ this.visible = false;
159
+ this._listeners.push(
160
+ this._app.flights.added.addEventListener(resetHandler),
161
+ );
162
+ } else {
163
+ this.visible = this._app.maps.activeMap instanceof CesiumMap;
164
+ this._setupPlayer();
165
+ this.setPropertiesFromObject(this._flight);
166
+
167
+ this._listeners.push(
168
+ this._app.flights.removed.addEventListener(resetHandler),
169
+ );
170
+ this._listeners.push(
171
+ this._app.flights.added.addEventListener(resetHandler),
172
+ );
173
+
174
+ this._listeners.push(
175
+ this._app.maps.mapActivated.addEventListener(() => {
176
+ this.visible = this._app.maps.activeMap instanceof CesiumMap;
177
+ }),
178
+ );
179
+ }
180
+ }
181
+
182
+ /**
183
+ * @returns {FlightContentTreeItemOptions}
184
+ */
185
+ toJSON() {
186
+ const config = super.toJSON();
187
+ config.flightName = this._flightName;
188
+ return config;
189
+ }
190
+
191
+ destroy() {
192
+ super.destroy();
193
+ this._clearListeners();
194
+ }
195
+ }
196
+
197
+ export default FlightContentTreeItem;
198
+ contentTreeClassRegistry.registerClass(
199
+ FlightContentTreeItem.className,
200
+ FlightContentTreeItem,
201
+ );
@@ -0,0 +1,14 @@
1
+ export default GroupContentTreeItem;
2
+ /**
3
+ * A clickable group item. When clicked, every child with a state not NONE will also be clicked.
4
+ * @class
5
+ * @extends {ContentTreeItem}
6
+ */
7
+ declare class GroupContentTreeItem extends ContentTreeItem {
8
+ /**
9
+ * @type {function():void}
10
+ * @private
11
+ */
12
+ private _childWatcher;
13
+ }
14
+ import ContentTreeItem from './contentTreeItem.js';
@@ -18,8 +18,8 @@ class GroupContentTreeItem extends ContentTreeItem {
18
18
  }
19
19
 
20
20
  /**
21
- * @param {ContentTreeItemOptions} options
22
- * @param {VcsUiApp} app
21
+ * @param {import("./contentTreeItem.js").ContentTreeItemOptions} options
22
+ * @param {import("@src/vcsUiApp.js").default} app
23
23
  */
24
24
  constructor(options, app) {
25
25
  super(options, app);
@@ -0,0 +1,76 @@
1
+ /**
2
+ * @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { layerName: string }} LayerContentTreeItemOptions
3
+ */
4
+ /**
5
+ * @typedef {import("./vcsObjectContentTreeItem.js").VcsObjectContentTreeItemProperties & { availableStyles?: string[], defaultViewpoint?: string }} LayerContentTreeItemProperties
6
+ * @property {string} [defaultViewpoint] - the name the default viewpoint
7
+ */
8
+ /**
9
+ * @param {import("./contentTreeItem.js").default} item
10
+ * @param {import("@src/vcsUiApp.js").default} app
11
+ * @param {string|import("@vcmap/core").Viewpoint=} viewpoint
12
+ */
13
+ export function setViewpointAction(item: import("./contentTreeItem.js").default, app: import("@src/vcsUiApp.js").default, viewpoint?: (string | import("@vcmap/core").Viewpoint) | undefined): void;
14
+ /**
15
+ * @param {import("@vcmap/core").Layer} layer
16
+ * @returns {StateActionState}
17
+ */
18
+ export function getStateFromLayer(layer: import("@vcmap/core").Layer): StateActionState;
19
+ export default LayerContentTreeItem;
20
+ export type LayerContentTreeItemOptions = import("./contentTreeItem.js").ContentTreeItemOptions & {
21
+ layerName: string;
22
+ };
23
+ export type LayerContentTreeItemProperties = import("./vcsObjectContentTreeItem.js").VcsObjectContentTreeItemProperties & {
24
+ availableStyles?: string[];
25
+ defaultViewpoint?: string;
26
+ };
27
+ import { StateActionState } from '../actions/stateRefAction.js';
28
+ /**
29
+ * A layer item. Activates/deactivates the layer when clicked.
30
+ * @class
31
+ * @extends {VcsObjectContentTreeItem<LayerContentTreeItemProperties>}
32
+ */
33
+ declare class LayerContentTreeItem extends VcsObjectContentTreeItem<LayerContentTreeItemProperties> {
34
+ /**
35
+ * @param {LayerContentTreeItemOptions} options
36
+ * @param {import("@src/vcsUiApp.js").default} app
37
+ */
38
+ constructor(options: LayerContentTreeItemOptions, app: import("@src/vcsUiApp.js").default);
39
+ /**
40
+ * @type {string}
41
+ * @private
42
+ */
43
+ private _layerName;
44
+ /**
45
+ * @type {Array<Function>}
46
+ * @private
47
+ */
48
+ private _listeners;
49
+ /**
50
+ * @type {import("@vcmap/core").Layer}
51
+ * @private
52
+ */
53
+ private get _layer();
54
+ /**
55
+ * @param {Array<string>=} availableStyles
56
+ * @private
57
+ */
58
+ private _setStyleAction;
59
+ /**
60
+ * @private
61
+ */
62
+ private _setLayerExtentAction;
63
+ /**
64
+ * @private
65
+ */
66
+ private _clearListeners;
67
+ /**
68
+ * @private
69
+ */
70
+ private _setup;
71
+ /**
72
+ * @returns {LayerContentTreeItemOptions}
73
+ */
74
+ toJSON(): LayerContentTreeItemOptions;
75
+ }
76
+ import VcsObjectContentTreeItem from './vcsObjectContentTreeItem.js';
@@ -12,20 +12,18 @@ import { contentTreeClassRegistry } from './contentTreeItem.js';
12
12
  import { executeCallbacks } from '../callback/vcsCallback.js';
13
13
 
14
14
  /**
15
- * @typedef {ContentTreeItemOptions} LayerContentTreeItemOptions
16
- * @property {string} layerName
15
+ * @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { layerName: string }} LayerContentTreeItemOptions
17
16
  */
18
17
 
19
18
  /**
20
- * @typedef {VcsObjectContentTreeItemProperties} LayerContentTreeItemProperties
21
- * @property {Array<string>} [availableStyles]
19
+ * @typedef {import("./vcsObjectContentTreeItem.js").VcsObjectContentTreeItemProperties & { availableStyles?: string[], defaultViewpoint?: string }} LayerContentTreeItemProperties
22
20
  * @property {string} [defaultViewpoint] - the name the default viewpoint
23
21
  */
24
22
 
25
23
  /**
26
- * @param {ContentTreeItem} item
27
- * @param {VcsUiApp} app
28
- * @param {string=} viewpoint
24
+ * @param {import("./contentTreeItem.js").default} item
25
+ * @param {import("@src/vcsUiApp.js").default} app
26
+ * @param {string|import("@vcmap/core").Viewpoint=} viewpoint
29
27
  */
30
28
  export function setViewpointAction(item, app, viewpoint) {
31
29
  const name = 'ViewpointAction';
@@ -74,7 +72,7 @@ class LayerContentTreeItem extends VcsObjectContentTreeItem {
74
72
 
75
73
  /**
76
74
  * @param {LayerContentTreeItemOptions} options
77
- * @param {VcsUiApp} app
75
+ * @param {import("@src/vcsUiApp.js").default} app
78
76
  */
79
77
  constructor(options, app) {
80
78
  super(options, app);
@@ -110,7 +108,7 @@ class LayerContentTreeItem extends VcsObjectContentTreeItem {
110
108
  _setStyleAction(availableStyles) {
111
109
  const name = 'StyleSelector';
112
110
  this.removeAction(name);
113
- if (Array.isArray(availableStyles)) {
111
+ if (Array.isArray(availableStyles) && availableStyles.length > 0) {
114
112
  const { action, destroy } = createModalAction(
115
113
  {
116
114
  name,
@@ -0,0 +1,50 @@
1
+ export default LayerGroupContentTreeItem;
2
+ export type LayerGroupContentTreeItemOptions = import("./contentTreeItem.js").ContentTreeItemOptions & {
3
+ layerNames: string[];
4
+ defaultViewpoint?: string;
5
+ };
6
+ /**
7
+ * A layer group. When clicked will try to activate all layers in the group or deactivate all layer in the group if all are active.
8
+ * @class
9
+ * @extends {ContentTreeItem}
10
+ */
11
+ declare class LayerGroupContentTreeItem extends ContentTreeItem {
12
+ /**
13
+ * @param {LayerGroupContentTreeItemOptions} options
14
+ * @param {import("@src/vcsUiApp.js").default} app
15
+ */
16
+ constructor(options: LayerGroupContentTreeItemOptions, app: import("@src/vcsUiApp.js").default);
17
+ /**
18
+ * @type {Array<string>}
19
+ * @private
20
+ */
21
+ private _layerNames;
22
+ /**
23
+ * @type {Array<function():void>}
24
+ * @private
25
+ */
26
+ private _listeners;
27
+ /**
28
+ * @type {string|null}
29
+ * @private
30
+ */
31
+ private _defaultViewpoint;
32
+ /**
33
+ * @type {Array<import("@vcmap/core").Layer>}
34
+ * @private
35
+ */
36
+ private get _layers();
37
+ /**
38
+ * @private
39
+ */
40
+ private _clearListeners;
41
+ /**
42
+ * @private
43
+ */
44
+ private _setup;
45
+ /**
46
+ * @returns {LayerGroupContentTreeItemOptions}
47
+ */
48
+ toJSON(): LayerGroupContentTreeItemOptions;
49
+ }
50
+ import ContentTreeItem from './contentTreeItem.js';
@@ -9,7 +9,7 @@ import { StateActionState } from '../actions/stateRefAction.js';
9
9
  import { executeCallbacks } from '../callback/vcsCallback.js';
10
10
 
11
11
  /**
12
- * @typedef {ContentTreeItemOptions} LayerGroupContentTreeItemOptions
12
+ * @typedef {import("./contentTreeItem.js").ContentTreeItemOptions & { layerNames: string[], defaultViewpoint?: string }} LayerGroupContentTreeItemOptions
13
13
  * @property {Array<string>} layerNames list of LayerNames which should be activated on click
14
14
  * @property {string} [defaultViewpoint] - the name of an optional default viewpoint
15
15
  */
@@ -41,7 +41,6 @@ function getStateFromLayers(layers) {
41
41
  */
42
42
  class LayerGroupContentTreeItem extends ContentTreeItem {
43
43
  /**
44
- * @readonly
45
44
  * @type {string}
46
45
  */
47
46
  static get className() {
@@ -50,7 +49,7 @@ class LayerGroupContentTreeItem extends ContentTreeItem {
50
49
 
51
50
  /**
52
51
  * @param {LayerGroupContentTreeItemOptions} options
53
- * @param {VcsUiApp} app
52
+ * @param {import("@src/vcsUiApp.js").default} app
54
53
  */
55
54
  constructor(options, app) {
56
55
  super(options, app);
@@ -0,0 +1,10 @@
1
+ export default NodeContentTreeItem;
2
+ /**
3
+ * A group item which has _no click handler_
4
+ * @class
5
+ * @extends {ContentTreeItem}
6
+ */
7
+ declare class NodeContentTreeItem extends ContentTreeItem {
8
+ _childWatcher: import("vue").WatchStopHandle;
9
+ }
10
+ import ContentTreeItem from './contentTreeItem.js';
@@ -17,8 +17,8 @@ class NodeContentTreeItem extends ContentTreeItem {
17
17
  }
18
18
 
19
19
  /**
20
- * @param {ContentTreeItemOptions} options
21
- * @param {VcsUiApp} app
20
+ * @param {import("./contentTreeItem.js").ContentTreeItemOptions} options
21
+ * @param {import("@src/vcsUiApp.js").default} app
22
22
  */
23
23
  constructor(options, app) {
24
24
  super(options, app);
@@ -0,0 +1,46 @@
1
+ export default ObliqueCollectionContentTreeItem;
2
+ export type ObliqueCollectionContentTreeItemOptions = import("./contentTreeItem.js").ContentTreeItemOptions & {
3
+ collectionName: string;
4
+ };
5
+ export type ObliqueCollectionContentTreeItemProperties = import("./vcsObjectContentTreeItem.js").VcsObjectContentTreeItemProperties & {
6
+ defaultViewpoint: string;
7
+ };
8
+ /**
9
+ * An oblique collection item. Sets/unsets the oblique collection when clicked.
10
+ * @extends {VcsObjectContentTreeItem<ObliqueCollectionContentTreeItemProperties>}
11
+ */
12
+ declare class ObliqueCollectionContentTreeItem extends VcsObjectContentTreeItem<ObliqueCollectionContentTreeItemProperties> {
13
+ /**
14
+ * @param {ObliqueCollectionContentTreeItemOptions} options
15
+ * @param {import("@src/vcsUiApp.js").default} app
16
+ */
17
+ constructor(options: ObliqueCollectionContentTreeItemOptions, app: import("@src/vcsUiApp.js").default);
18
+ /**
19
+ * @type {string}
20
+ * @private
21
+ */
22
+ private _collectionName;
23
+ /**
24
+ * @type {Array<function():void>}
25
+ * @private
26
+ */
27
+ private _listeners;
28
+ /**
29
+ * @type {import("@vcmap/core").ObliqueCollection}
30
+ * @private
31
+ */
32
+ private get _collection();
33
+ /**
34
+ * @private
35
+ */
36
+ private _clearListeners;
37
+ /**
38
+ * @private
39
+ */
40
+ private _setup;
41
+ /**
42
+ * @returns {ObliqueCollectionContentTreeItemOptions}
43
+ */
44
+ toJSON(): ObliqueCollectionContentTreeItemOptions;
45
+ }
46
+ import VcsObjectContentTreeItem from './vcsObjectContentTreeItem.js';