@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
package/README.md CHANGED
@@ -131,6 +131,8 @@ We will offer bugfix support for the current major version and the one preceding
131
131
  [Shadow](https://github.com/virtualcitySYSTEMS/map-shadow)
132
132
  [Create Link](https://github.com/virtualcitySYSTEMS/map-createLink)
133
133
  [Search Nominatim](https://github.com/virtualcitySYSTEMS/map-search-nominatim)
134
+ [Cesium Filters](https://github.com/virtualcitySYSTEMS/map-cesium-filters)
135
+ [MultiView](https://github.com/virtualcitySYSTEMS/map-multi-view)
134
136
 
135
137
  ### Plugins in Development
136
138
 
@@ -138,7 +140,6 @@ We will offer bugfix support for the current major version and the one preceding
138
140
  | :----------------: | :------: | :-------: |
139
141
  | Measurement | 1 | 1 |
140
142
  | Planning | 1 | 1 |
141
- | MultiView | 4 | 1 |
142
143
  | HeightProfile | 4 | 2 |
143
144
  | Flight | 4 | 2 |
144
145
  | ViewShed | 4 | 2 |
@@ -147,7 +148,6 @@ We will offer bugfix support for the current major version and the one preceding
147
148
  | ClippingTool | 4 | 3 |
148
149
  | AttributeEditor | 4 | 3 |
149
150
  | Query | 4 | 3 |
150
- | Positiondisplay | 2 | 4 |
151
151
  | Locator | 4 | 4 |
152
152
  | DisplayQuality | 4 | 4 |
153
153
  | Search esri | 4 | 4 |
@@ -0,0 +1,176 @@
1
+ import { join as joinPath } from 'node:path';
2
+ import { existsSync } from 'node:fs';
3
+ import { EOL } from 'node:os';
4
+ import { unlink, readFile, writeFile, rm } from 'node:fs/promises';
5
+ import { promisify } from 'node:util';
6
+ import { exec } from 'node:child_process';
7
+ import { getFilesInDirectory } from './buildHelpers.js';
8
+
9
+ const indexDTs = joinPath(process.cwd(), 'index.d.ts');
10
+
11
+ const execPromisify = promisify(exec);
12
+
13
+ const exportFromJSPattern = /export.*(from.*["'].*)\.js(["'])/;
14
+ const exportFromVuePattern = /export.*(from.*["'].*\.vue)(["'])/;
15
+
16
+ /**
17
+ * @param {string} line
18
+ * @param {RegExp} pattern
19
+ * @returns {string|undefined}
20
+ */
21
+ function getExportFromLine(line, pattern) {
22
+ if (pattern.test(line)) {
23
+ const newLine = line.replace(pattern, 'export type * $1.d.ts$2');
24
+ return newLine;
25
+ }
26
+ return undefined;
27
+ }
28
+
29
+ /**
30
+ * Adds `export types * from '...d.t.s';` to each line of imports
31
+ * @returns {Promise<void>}
32
+ */
33
+ async function addTypeExports() {
34
+ const content = await readFile(indexDTs, 'utf-8');
35
+ const newContent = content
36
+ .split(';')
37
+ .flatMap((line, index) => {
38
+ let newLine = getExportFromLine(line, exportFromJSPattern);
39
+ newLine = newLine ?? getExportFromLine(line, exportFromVuePattern);
40
+
41
+ if (newLine) {
42
+ if (index === 0) {
43
+ newLine = `${EOL}${newLine}`;
44
+ }
45
+ return [line, newLine];
46
+ }
47
+ return [line];
48
+ })
49
+ .join(';');
50
+ await writeFile(indexDTs, newContent);
51
+ }
52
+
53
+ /**
54
+ * TS is way more picky with extension than JS. These classes do not properly extend their parents, the below defined
55
+ * methods are not compatible in TS, so we ignore them to not break.
56
+ * @type {Array<{ file:string, replacement: Array<{ regex: RegExp, replace: string }> }>}
57
+ */
58
+ const knownExtensionErrors = [
59
+ {
60
+ file: './src/search/search.d.ts',
61
+ replacements: [
62
+ {
63
+ regex: /(add\(item)/,
64
+ replace: '// @ts-ignore\n$1',
65
+ },
66
+ ],
67
+ },
68
+ {
69
+ file: './src/manager/navbarManager.d.ts',
70
+ replacements: [
71
+ {
72
+ regex: /(add\(buttonComponentOptions)/,
73
+ replace: '// @ts-ignore\n$1',
74
+ },
75
+ ],
76
+ },
77
+ {
78
+ file: './src/manager/toolbox/toolboxManager.d.ts',
79
+ replacements: [
80
+ {
81
+ regex: /(add\(toolboxComponentOptions)/,
82
+ replace: '// @ts-ignore\n$1',
83
+ },
84
+ ],
85
+ },
86
+ ];
87
+
88
+ /**
89
+ * @returns {Promise<void>}
90
+ */
91
+ async function fixTemplateFunctions() {
92
+ await Promise.all(
93
+ knownExtensionErrors.map(async ({ file, replacements }) => {
94
+ let content = await readFile(file, 'utf8');
95
+ replacements.forEach(({ regex, replace }) => {
96
+ content = content.replace(regex, replace);
97
+ });
98
+ await writeFile(file, content);
99
+ }),
100
+ );
101
+ }
102
+
103
+ function printTypeErrors(stdout) {
104
+ let withinNodeModule = false;
105
+ const lines = stdout.split(EOL).filter((line) => {
106
+ if (!line) {
107
+ return false;
108
+ }
109
+ if (line.startsWith('node_modules')) {
110
+ withinNodeModule = true;
111
+ return false;
112
+ }
113
+ if (line.startsWith(' ')) {
114
+ return !withinNodeModule;
115
+ }
116
+ withinNodeModule = false;
117
+ return true;
118
+ });
119
+
120
+ lines.forEach((line) => {
121
+ console.error(line);
122
+ });
123
+
124
+ return lines.length > 0;
125
+ }
126
+
127
+ async function run() {
128
+ if (existsSync(indexDTs)) {
129
+ await unlink(indexDTs);
130
+ }
131
+ // eslint-disable-next-line no-restricted-syntax
132
+ for await (const file of getFilesInDirectory('src')) {
133
+ if (/\.d\.ts/.test(file)) {
134
+ await rm(file);
135
+ }
136
+ }
137
+ console.log('building vue-tsc declarations');
138
+ const { stderr: vueTscError } = await execPromisify(
139
+ 'npx vue-tsc --emitDeclarationOnly --skipLibCheck',
140
+ );
141
+ if (vueTscError) {
142
+ console.error(vueTscError);
143
+ process.exitCode = 1;
144
+ return;
145
+ }
146
+ console.log('fixing template functions');
147
+ await fixTemplateFunctions();
148
+ console.log('exporting types');
149
+ await addTypeExports();
150
+ if (process.argv.includes('--skipValidation')) {
151
+ return;
152
+ }
153
+ console.log('validating library');
154
+ let validationFailed = false;
155
+ try {
156
+ await execPromisify('npx vue-tsc --noEmit');
157
+ } catch (e) {
158
+ let hasErrors = e.code !== 2;
159
+ if (e.code === 2) {
160
+ hasErrors = printTypeErrors(e.stdout);
161
+ } else {
162
+ validationFailed = true;
163
+ console.error(e.stderr);
164
+ }
165
+ if (hasErrors) {
166
+ validationFailed = true;
167
+ process.exitCode = 1;
168
+ }
169
+ }
170
+
171
+ if (!validationFailed) {
172
+ console.log('all declarations valid');
173
+ }
174
+ }
175
+
176
+ await run();
@@ -0,0 +1,30 @@
1
+ import { readFile } from 'node:fs/promises';
2
+ import { EOL } from 'node:os';
3
+ import { getFilesInDirectory } from './buildHelpers.js';
4
+
5
+ const anyRegex = /:[^\n,;]+\bany\b/;
6
+
7
+ async function lintTypes() {
8
+ let errors = 0;
9
+ // eslint-disable-next-line no-restricted-syntax
10
+ for await (const path of getFilesInDirectory('./src')) {
11
+ if (path.endsWith('.d.ts') && !path.endsWith('vue.d.ts')) {
12
+ const content = await readFile(path, 'utf8');
13
+ // eslint-disable-next-line no-loop-func
14
+ content.split(EOL).forEach((line, index) => {
15
+ const matches = line.match(anyRegex);
16
+ if (matches?.index != null) {
17
+ errors += 1;
18
+ console.error(`found any: ${path}:${index + 1}:${matches.index}`);
19
+ }
20
+ });
21
+ }
22
+ }
23
+ return errors;
24
+ }
25
+
26
+ const errors = await lintTypes();
27
+ if (errors) {
28
+ console.error(`Found ${errors} errors`);
29
+ process.exit(1);
30
+ }
@@ -367,6 +367,10 @@
367
367
  {
368
368
  "name": "logo",
369
369
  "value": "data:image/png;base64,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"
370
+ },
371
+ {
372
+ "name": "positionDisplayEventType",
373
+ "value": "move"
370
374
  }
371
375
  ]
372
376
  }
@@ -9,6 +9,22 @@
9
9
  "epsg": "25833",
10
10
  "proj4": "+proj=utm +zone=33 +ellps=GRS80 +units=m +no_defs"
11
11
  },
12
+ "uiConfig": [
13
+ {
14
+ "name": "imprint",
15
+ "value": {
16
+ "title": "footer.imprint.title",
17
+ "content": "MyImpressum.content"
18
+ }
19
+ },
20
+ {
21
+ "name": "dataProtection",
22
+ "value": {
23
+ "title": "footer.dataprotection.title",
24
+ "url": "https://vc.systems/datenschutz/"
25
+ }
26
+ }
27
+ ],
12
28
  "i18n": [
13
29
  {
14
30
  "name": "base",
@@ -29,6 +45,9 @@
29
45
  "building": {
30
46
  "title": "3D Gebäude"
31
47
  }
48
+ },
49
+ "MyImpressum": {
50
+ "content": "![image](https://vc.systems/wp-content/uploads/2020/07/vcs_logo.png)<br>**Firmierung:** <br>Musterfirma GmbH<br><br>**Sitz:**<br>Musterstadt<br><br>**Adresse:**<br>Musterstraße 1 a<br>12345 Musterstadt<br>Deutschland<br><br> **Telefon:** +49 (0) 00 . 0000 . 000 . 00<br> **Telefax:** +49 (0) 00 . 0000 . 000 . 00<br> **E-Mail:** [info@musterfirma.de](mailto:info@musterfirma.de)<br><br>**Geschäftsführer:**<br>- Max Mustermann<br><br>**Registergericht:**<br>Musterstadt 1234567<br><br>**Steuernummer:**<br>11/222/33333<br><br>**Umsatzsteuer-ID:**<br>DE1234567890<br><br>**Copyright:**<br>Alle Rechte vorbehalten. Sämtliche Inhalte (Texte, Bilder, Grafiken, Animationen) sind urheberrechtlich geschützt. Sie dürfen ohne Zustimmung der Musterfirma GmbH zu kommerziellen Zwecken weder kopiert, verbreitet noch verändert werden.<br>(Copyright 2023 Musterfirma GmbH)<br><br>**Inhalte:**<br>Trotz sorgfältiger Bearbeitung kann die Musterfirma GmbH für die Fehlerfreiheit und Genauigkeit der angebotenen Informationen auf [www.musterfirma.de](http://www.musterfirma.de) nicht garantieren. Jegliche Haftung für Schäden, die direkt oder indirekt aus der Benutzung von [www.musterfirma.de](http://www.musterfirma.de) entstehen und nicht auf Vorsatz oder grober Fahrlässigkeit der Musterfirma GmbH beruhen, ist ausgeschlossen. Für die Inhalte von mit [www.musterfirma.de](http://www.musterfirma.de) verlinkter Websites ist grundsätzlich jede Haftung ausgeschlossen.<br><br>**Datenschutz:**<br>Die Musterfirma GmbH nimmt den Schutz Ihrer persönlichen Daten sehr ernst. Wir halten uns strikt an die Regeln der Datenschutzgesetze. Personenbezogene Daten werden auf dieser Webseite nur im technisch notwendigen Umfang erhoben. In keinem Fall werden die erhobenen Daten verkauft oder aus anderen Gründen an Dritte weitergegeben. Unsere vollständige Datenschutzerklärung können Sie [hier](#) nachlesen.<br>"
32
51
  }
33
52
  },
34
53
  "en": {
@@ -48,6 +67,9 @@
48
67
  "building": {
49
68
  "title": "3D buildings"
50
69
  }
70
+ },
71
+ "MyImpressum": {
72
+ "content": "![image](https://vc.systems/wp-content/uploads/2020/07/vcs_logo.png)<br>**Company name:** <br>Musterfirma GmbH<br><br>**Company headquarters:**<br>Musterstadt<br><br>**Address:**<br>Musterstraße 1 a<br>12345 Musterstadt<br>Germany<br><br> **Phone:** +49 (0) 00 . 0000 . 000 . 00<br> **Fax:** +49 (0) 00 . 0000 . 000 . 00<br> **E-Mail:** [info@musterfirma.de](mailto:info@musterfirma.de)<br><br>**Managing Director:**<br>- Max Mustermann<br><br>**Registry court:**<br>Musterstadt 1234567<br><br>**Tax number:**<br>11/222/33333<br><br>**VAT ID:**<br>DE1234567890<br><br>**Copyright:**<br>All rights reserved. All contents (texts, images, graphics, animations) are protected by copyright. They may not be copied, distributed or modified for commercial purposes without the consent of Musterfirma GmbH.<br>(Copyright 2023 Musterfirma GmbH)<br><br>**Contents:**<br>Despite careful editing, Musterfirma GmbH cannot guarantee the correctness and accuracy of the information provided on [www.musterfirma.de](http://www.musterfirma.de). Any liability for damages arising directly or indirectly from the use of [www.musterfirma.de](http://www.musterfirma.de) and which are not based on intent or gross negligence on the part of Musterfirma GmbH is excluded. No liability is accepted for the content of websites linked to [www.musterfirma.de](http://www.musterfirma.de).<br><br>**Data protection:**<br>Musterfirma GmbH takes the protection of your personal data very seriously. We adhere strictly to the rules of the data protection laws. Personal data is only collected on this website to the extent that is technically necessary. Under no circumstances will the data collected be sold or passed on to third parties for other reasons. You can read our complete privacy policy [here](#).<br>"
51
73
  }
52
74
  }
53
75
  }
@@ -32,14 +32,47 @@
32
32
  "olcs_storeyNumber": "Storey Number",
33
33
  "olcs_storeyHeight": "Storey Height",
34
34
  "olcs_altitudeMode": "Altitude Mode"
35
+ },
36
+ "tags": {
37
+ "olcs_altitudeMode": {
38
+ "tag": "a",
39
+ "href": "https://github.com/virtualcitySYSTEMS/map-core/blob/release-v5.0/src/layer/vectorProperties.ts#L77"
40
+ }
35
41
  }
36
42
  },
37
43
  {
38
44
  "type": "BalloonFeatureInfoView",
39
45
  "name": "genericBalloonLaerm",
40
46
  "title": "Lärmkarte Bayern",
41
- "subtitle": "WMS Feature Info",
42
- "attributeKeys": ["Pixel Value"]
47
+ "subtitle": "WMS Feature Info"
48
+ },
49
+ {
50
+ "type": "TableFeatureInfoView",
51
+ "name": "tableLink",
52
+ "keyMapping": {
53
+ "gemeinde": "GemeindeWiki"
54
+ },
55
+ "tags": {
56
+ "gemeinde": {
57
+ "tag": "a",
58
+ "href": "https://de.wikipedia.org/wiki/${value}"
59
+ },
60
+ "typ": {
61
+ "tag": "audio",
62
+ "src": "https://www.w3schools.com/TAgs/horse.mp3"
63
+ },
64
+ "typ2": {
65
+ "tag": "img",
66
+ "src": "https://sgx.geodatenzentrum.de/wms_poi_open?service=WMS&version=1.3.0&request=GetLegendGraphic&format=image%2Fpng&width=20&height=20&layer=heliports"
67
+ },
68
+ "code": {
69
+ "tag": "b"
70
+ },
71
+ "betreiber": {
72
+ "tag": "video",
73
+ "src": "https://www.w3schools.com/TAgs/movie.mp4"
74
+ }
75
+ }
43
76
  }
44
77
  ],
45
78
  "layers": [
@@ -230,11 +263,11 @@
230
263
  {
231
264
  "name": "wmsLayerLaerm",
232
265
  "type": "WMSLayer",
233
- "url": "http://www.lfu.bayern.de/gdi/wms/laerm/hauptverkehrsstrassen",
266
+ "url": "https://www.lfu.bayern.de/gdi/wms/laerm/hauptverkehrsstrassen",
234
267
  "datasourceId": "P7xfmLJ5zkFmT7hNQ",
235
268
  "activeOnStartup": false,
236
269
  "version": "1.3.0",
237
- "layers": "mroadbylden,mroadbyln,isophonelden67,isophoneln57,lsemroadby",
270
+ "layers": "mroadbylden2022,lsemroadby2022",
238
271
  "parameters": "STYLE=default&TRANSPARENT=TRUE&format=image/png&transparent=true",
239
272
  "extent": {
240
273
  "coordinates": [8.7992, 47.156072, 14.055682, 50.670961],
@@ -295,7 +328,7 @@
295
328
  "zIndex": 13,
296
329
  "properties": {
297
330
  "title": "WMS POI Open",
298
- "featureInfo": "tableAll",
331
+ "featureInfo": "tableLink",
299
332
  "legend": [
300
333
  {
301
334
  "type": "StyleLegendItem",
@@ -346,7 +379,129 @@
346
379
  }
347
380
  }
348
381
  ],
382
+ "flights": [
383
+ {
384
+ "type": "Flight",
385
+ "name": "FlightExampleBerlin",
386
+ "anchors": [
387
+ {
388
+ "type": "Feature",
389
+ "id": "Großer Stern",
390
+ "properties": {
391
+ "distance": 1484.9766210629282,
392
+ "heading": 85.13663281180378,
393
+ "pitch": -23.80350377142778,
394
+ "roll": 0.20258916046175293,
395
+ "duration": 12.359533611184698
396
+ },
397
+ "geometry": {
398
+ "type": "Point",
399
+ "coordinates": [
400
+ 13.336405993652752, 52.51455229018015, 599.1699567549152
401
+ ]
402
+ }
403
+ },
404
+ {
405
+ "type": "Feature",
406
+ "id": "Brandenburger Tor",
407
+ "properties": {
408
+ "heading": 84.50653421768497,
409
+ "pitch": -14.40144021163224,
410
+ "roll": 0.1911682675828907,
411
+ "duration": 12.359533611184698
412
+ },
413
+ "geometry": {
414
+ "type": "Point",
415
+ "coordinates": [
416
+ 13.373968835542765, 52.51619726804361, 128.08001018941596
417
+ ]
418
+ }
419
+ },
420
+ {
421
+ "type": "Feature",
422
+ "id": "Alexanderplatz",
423
+ "properties": {
424
+ "heading": 38.00893220915712,
425
+ "pitch": -25.973149034877526,
426
+ "roll": 0.1275668917623299,
427
+ "duration": 13
428
+ },
429
+ "geometry": {
430
+ "type": "Point",
431
+ "coordinates": [
432
+ 13.395021157995563, 52.51030339049845, 1130.670346412213
433
+ ]
434
+ }
435
+ }
436
+ ]
437
+ },
438
+ {
439
+ "type": "Flight",
440
+ "name": "FlightExampleBerlin2",
441
+ "anchors": [
442
+ {
443
+ "type": "Feature",
444
+ "id": "Großer Stern",
445
+ "properties": {
446
+ "distance": 1484.9766210629282,
447
+ "heading": 85.13663281180378,
448
+ "pitch": -23.80350377142778,
449
+ "roll": 0.20258916046175293,
450
+ "duration": 12.359533611184698
451
+ },
452
+ "geometry": {
453
+ "type": "Point",
454
+ "coordinates": [
455
+ 13.336405993652752, 52.51455229018015, 599.1699567549152
456
+ ]
457
+ }
458
+ },
459
+ {
460
+ "type": "Feature",
461
+ "id": "Brandenburger Tor",
462
+ "properties": {
463
+ "heading": 84.50653421768497,
464
+ "pitch": -14.40144021163224,
465
+ "roll": 0.1911682675828907,
466
+ "duration": 12.359533611184698
467
+ },
468
+ "geometry": {
469
+ "type": "Point",
470
+ "coordinates": [
471
+ 13.373968835542765, 52.51619726804361, 128.08001018941596
472
+ ]
473
+ }
474
+ },
475
+ {
476
+ "type": "Feature",
477
+ "id": "Alexanderplatz",
478
+ "properties": {
479
+ "heading": 38.00893220915712,
480
+ "pitch": -25.973149034877526,
481
+ "roll": 0.1275668917623299,
482
+ "duration": 13
483
+ },
484
+ "geometry": {
485
+ "type": "Point",
486
+ "coordinates": [
487
+ 13.395021157995563, 52.51030339049845, 1130.670346412213
488
+ ]
489
+ }
490
+ }
491
+ ]
492
+ }
493
+ ],
349
494
  "contentTree": [
495
+ {
496
+ "name": "flight",
497
+ "flightName": "FlightExampleBerlin",
498
+ "type": "FlightContentTreeItem"
499
+ },
500
+ {
501
+ "name": "flight2",
502
+ "flightName": "FlightExampleBerlin2",
503
+ "type": "FlightContentTreeItem"
504
+ },
350
505
  {
351
506
  "name": "geojson",
352
507
  "layerName": "testGeojson",
@@ -413,6 +568,10 @@
413
568
  "name": "window-tester",
414
569
  "entry": "plugins/@vcmap-show-case/window-tester/index.js"
415
570
  },
571
+ {
572
+ "name": "toolbox-example",
573
+ "entry": "plugins/@vcmap-show-case/toolbox-example/index.js"
574
+ },
416
575
  {
417
576
  "name": "buttons-example",
418
577
  "entry": "plugins/@vcmap-show-case/buttons-example/index.js"
@@ -447,6 +606,18 @@
447
606
  "name": "style-input-example",
448
607
  "entry": "plugins/@vcmap-show-case/style-input-example/index.js"
449
608
  },
609
+ {
610
+ "name": "extent-example",
611
+ "entry": "plugins/@vcmap-show-case/extent-example/index.js"
612
+ },
613
+ {
614
+ "name": "viewpoint-component-example",
615
+ "entry": "plugins/@vcmap-show-case/viewpoint-component-example/index.js"
616
+ },
617
+ {
618
+ "name": "flight-component-example",
619
+ "entry": "plugins/@vcmap-show-case/flight-component-example/index.js"
620
+ },
450
621
  {
451
622
  "name": "vector-properties-example",
452
623
  "entry": "plugins/@vcmap-show-case/vector-properties-example/index.js"
@@ -9,6 +9,22 @@
9
9
  "epsg": "25832",
10
10
  "proj4": "+proj=utm +zone=32 +ellps=GRS80 +units=m +no_defs"
11
11
  },
12
+ "uiConfig": [
13
+ {
14
+ "name": "imprint",
15
+ "value": {
16
+ "title": "footer.imprint.title",
17
+ "url": "https://vc.systems/impressum/"
18
+ }
19
+ },
20
+ {
21
+ "name": "dataProtection",
22
+ "value": {
23
+ "title": "footer.dataprotection.title",
24
+ "url": "https://vc.systems/datenschutz/"
25
+ }
26
+ }
27
+ ],
12
28
  "i18n": [
13
29
  {
14
30
  "name": "Demo",
@@ -1814,6 +1830,14 @@
1814
1830
  "name": "@vcmap/search-nominatim",
1815
1831
  "entry": "plugins/@vcmap/search-nominatim/index.js"
1816
1832
  },
1833
+ {
1834
+ "name": "@vcmap/multi-view",
1835
+ "entry": "plugins/@vcmap/multi-view/index.js"
1836
+ },
1837
+ {
1838
+ "name": "@vcmap/cesium-filters",
1839
+ "entry": "plugins/@vcmap/cesium-filters/index.js"
1840
+ },
1817
1841
  {
1818
1842
  "name": "@vcmap/export",
1819
1843
  "entry": "plugins/@vcmap/export/index.js",
@@ -1838,6 +1862,14 @@
1838
1862
  "title": "Mesh model"
1839
1863
  }
1840
1864
  ]
1865
+ },
1866
+ {
1867
+ "name": "@vcmap/viewshed",
1868
+ "entry": "plugins/@vcmap/viewshed/index.js"
1869
+ },
1870
+ {
1871
+ "name": "@vcmap/measurement",
1872
+ "entry": "plugins/@vcmap/measurement/index.js"
1841
1873
  }
1842
1874
  ]
1843
1875
  }