@vcmap/ui 5.0.0-rc.22 → 5.0.0-rc.24

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 (425) hide show
  1. package/README.md +38 -20
  2. package/app.config.json +3 -0
  3. package/build/.eslintrc +3 -0
  4. package/build/build.js +184 -174
  5. package/build/buildCesium.js +32 -19
  6. package/build/buildHelpers.js +117 -48
  7. package/build/buildPreview.js +9 -6
  8. package/build/commonViteConfig.js +1 -3
  9. package/build/determineHost.js +17 -4
  10. package/build/generateOLLib.js +13 -16
  11. package/build/getPluginProxies.js +16 -3
  12. package/build/info/conf.json +21 -21
  13. package/build/info/publish.js +15 -4
  14. package/config/aerowest.config.json +18 -44
  15. package/config/base.config.json +72 -246
  16. package/config/codes.config.json +4 -0
  17. package/config/dev.config.json +11 -13
  18. package/config/graphFeatureInfo.config.json +58 -17
  19. package/config/projects.config.json +30 -0
  20. package/config/www.config.json +98 -297
  21. package/dist/assets/cesium/Workers/{ArcType-ce2e50ab.js → ArcType-2d9abbbc.js} +4 -4
  22. package/dist/assets/cesium/Workers/{AttributeCompression-b646d393.js → AttributeCompression-f9f6c717.js} +24 -24
  23. package/dist/assets/cesium/Workers/{AxisAlignedBoundingBox-ff186ccc.js → AxisAlignedBoundingBox-85d9e53a.js} +3 -3
  24. package/dist/assets/cesium/Workers/{BoundingRectangle-be5924f4.js → BoundingRectangle-1ee7eb47.js} +18 -18
  25. package/dist/assets/cesium/Workers/{BoxGeometry-12eeccaf.js → BoxGeometry-3b2be784.js} +9 -9
  26. package/dist/assets/cesium/Workers/{Check-666ab1a0.js → Check-6ede7e26.js} +22 -22
  27. package/dist/assets/cesium/Workers/{Color-a84038cb.js → Color-f107c84d.js} +59 -59
  28. package/dist/assets/cesium/Workers/{ComponentDatatype-f7b11d02.js → ComponentDatatype-cf1fa08e.js} +16 -16
  29. package/dist/assets/cesium/Workers/{CoplanarPolygonGeometryLibrary-3272c1b3.js → CoplanarPolygonGeometryLibrary-78d71993.js} +1 -1
  30. package/dist/assets/cesium/Workers/{CorridorGeometryLibrary-0170e093.js → CorridorGeometryLibrary-50d99b33.js} +1 -1
  31. package/dist/assets/cesium/Workers/{CylinderGeometry-7c5da648.js → CylinderGeometry-51b0d9bf.js} +12 -12
  32. package/dist/assets/cesium/Workers/{CylinderGeometryLibrary-372c07d8.js → CylinderGeometryLibrary-7bf291b4.js} +1 -1
  33. package/dist/assets/cesium/Workers/{EllipseGeometry-797d580e.js → EllipseGeometry-bcfb5d87.js} +20 -20
  34. package/dist/assets/cesium/Workers/{EllipseGeometryLibrary-2939e1dc.js → EllipseGeometryLibrary-e94f8472.js} +1 -1
  35. package/dist/assets/cesium/Workers/{EllipseOutlineGeometry-8b50870f.js → EllipseOutlineGeometry-28e3a1bb.js} +15 -15
  36. package/dist/assets/cesium/Workers/{EllipsoidGeodesic-98c62a56.js → EllipsoidGeodesic-5b3623dc.js} +6 -6
  37. package/dist/assets/cesium/Workers/{EllipsoidGeometry-21c0e3a5.js → EllipsoidGeometry-b222fa63.js} +14 -14
  38. package/dist/assets/cesium/Workers/{EllipsoidOutlineGeometry-eff247c8.js → EllipsoidOutlineGeometry-38a3fb5b.js} +15 -15
  39. package/dist/assets/cesium/Workers/{EllipsoidRhumbLine-19756602.js → EllipsoidRhumbLine-ef872433.js} +9 -9
  40. package/dist/assets/cesium/Workers/{EllipsoidTangentPlane-214683dc.js → EllipsoidTangentPlane-8c89f28c.js} +1 -1
  41. package/dist/assets/cesium/Workers/{EncodedCartesian3-81f70735.js → EncodedCartesian3-57415c8a.js} +6 -6
  42. package/dist/assets/cesium/Workers/{FrustumGeometry-ac42a6d9.js → FrustumGeometry-bdd3a04d.js} +139 -111
  43. package/dist/assets/cesium/Workers/{GeometryAttribute-7d6f1732.js → GeometryAttribute-153115c5.js} +20 -20
  44. package/dist/assets/cesium/Workers/{GeometryAttributes-f06a2792.js → GeometryAttributes-ad136444.js} +1 -1
  45. package/dist/assets/cesium/Workers/{GeometryInstance-451dc1cd.js → GeometryInstance-34d9e21e.js} +6 -6
  46. package/dist/assets/cesium/Workers/{GeometryPipeline-ce4339ed.js → GeometryPipeline-acb2399c.js} +22 -22
  47. package/dist/assets/cesium/Workers/{IndexDatatype-a55ceaa1.js → IndexDatatype-2643aa47.js} +13 -13
  48. package/dist/assets/cesium/Workers/{IntersectionTests-f6e6bd8a.js → IntersectionTests-271e513e.js} +37 -37
  49. package/dist/assets/cesium/Workers/{Math-2dbd6b93.js → Math-0a2ac845.js} +149 -139
  50. package/dist/assets/cesium/Workers/{Matrix2-13178034.js → Matrix2-e1298525.js} +256 -256
  51. package/dist/assets/cesium/Workers/{Matrix3-315394f6.js → Matrix3-41c58dde.js} +150 -150
  52. package/dist/assets/cesium/Workers/{OrientedBoundingBox-04920dc7.js → OrientedBoundingBox-5e04e31f.js} +19 -17
  53. package/dist/assets/cesium/Workers/{Plane-900aa728.js → Plane-4c3d403b.js} +5 -5
  54. package/dist/assets/cesium/Workers/{PolygonGeometryLibrary-a8680d96.js → PolygonGeometryLibrary-6762b65b.js} +6 -6
  55. package/dist/assets/cesium/Workers/PolygonPipeline-7dc7a431.js +1344 -0
  56. package/dist/assets/cesium/Workers/{PolylinePipeline-32f36d2a.js → PolylinePipeline-15fde655.js} +16 -16
  57. package/dist/assets/cesium/Workers/{PolylineVolumeGeometryLibrary-a510d657.js → PolylineVolumeGeometryLibrary-ba7dfed5.js} +7 -7
  58. package/dist/assets/cesium/Workers/{PrimitivePipeline-ba38434a.js → PrimitivePipeline-68f0b9a2.js} +6 -6
  59. package/dist/assets/cesium/Workers/{RectangleGeometryLibrary-bdba697e.js → RectangleGeometryLibrary-8eaf23da.js} +1 -1
  60. package/dist/assets/cesium/Workers/{RuntimeError-06c93819.js → RuntimeError-ef395448.js} +5 -5
  61. package/dist/assets/cesium/Workers/{TerrainEncoding-833187da.js → TerrainEncoding-eb8a645a.js} +30 -30
  62. package/dist/assets/cesium/Workers/Transforms-f6451f99.js +14698 -0
  63. package/dist/assets/cesium/Workers/{VertexFormat-6b480673.js → VertexFormat-030f11ff.js} +14 -14
  64. package/dist/assets/cesium/Workers/{WallGeometryLibrary-919eed92.js → WallGeometryLibrary-feef3109.js} +1 -1
  65. package/dist/assets/cesium/Workers/{WebGLConstants-a8cc3e8c.js → WebGLConstants-0b1ce7ba.js} +1 -1
  66. package/dist/assets/cesium/Workers/{WebMercatorProjection-13a90d41.js → WebMercatorProjection-13ed1a6e.js} +6 -6
  67. package/dist/assets/cesium/Workers/{arrayRemoveDuplicates-c2038105.js → arrayRemoveDuplicates-d2061e85.js} +5 -5
  68. package/dist/assets/cesium/Workers/cesiumWorkerBootstrapper.js +5 -5
  69. package/dist/assets/cesium/Workers/{combine-ca22a614.js → combine-d9581036.js} +5 -5
  70. package/dist/assets/cesium/Workers/combineGeometry.js +1 -1
  71. package/dist/assets/cesium/Workers/createBoxGeometry.js +1 -1
  72. package/dist/assets/cesium/Workers/createBoxOutlineGeometry.js +9 -9
  73. package/dist/assets/cesium/Workers/createCircleGeometry.js +13 -13
  74. package/dist/assets/cesium/Workers/createCircleOutlineGeometry.js +13 -13
  75. package/dist/assets/cesium/Workers/createCoplanarPolygonGeometry.js +11 -11
  76. package/dist/assets/cesium/Workers/createCoplanarPolygonOutlineGeometry.js +9 -9
  77. package/dist/assets/cesium/Workers/createCorridorGeometry.js +14 -14
  78. package/dist/assets/cesium/Workers/createCorridorOutlineGeometry.js +12 -12
  79. package/dist/assets/cesium/Workers/createCylinderGeometry.js +1 -1
  80. package/dist/assets/cesium/Workers/createCylinderOutlineGeometry.js +13 -13
  81. package/dist/assets/cesium/Workers/createEllipseGeometry.js +1 -1
  82. package/dist/assets/cesium/Workers/createEllipseOutlineGeometry.js +1 -1
  83. package/dist/assets/cesium/Workers/createEllipsoidGeometry.js +1 -1
  84. package/dist/assets/cesium/Workers/createEllipsoidOutlineGeometry.js +1 -1
  85. package/dist/assets/cesium/Workers/createFrustumGeometry.js +1 -1
  86. package/dist/assets/cesium/Workers/createFrustumOutlineGeometry.js +8 -8
  87. package/dist/assets/cesium/Workers/createGeometry.js +1 -1
  88. package/dist/assets/cesium/Workers/createGroundPolylineGeometry.js +33 -33
  89. package/dist/assets/cesium/Workers/createPlaneGeometry.js +8 -8
  90. package/dist/assets/cesium/Workers/createPlaneOutlineGeometry.js +6 -6
  91. package/dist/assets/cesium/Workers/createPolygonGeometry.js +25 -25
  92. package/dist/assets/cesium/Workers/createPolygonOutlineGeometry.js +17 -17
  93. package/dist/assets/cesium/Workers/createPolylineGeometry.js +11 -11
  94. package/dist/assets/cesium/Workers/createPolylineVolumeGeometry.js +9 -9
  95. package/dist/assets/cesium/Workers/createPolylineVolumeOutlineGeometry.js +9 -9
  96. package/dist/assets/cesium/Workers/createRectangleGeometry.js +16 -16
  97. package/dist/assets/cesium/Workers/createRectangleOutlineGeometry.js +12 -12
  98. package/dist/assets/cesium/Workers/createSimplePolylineGeometry.js +10 -10
  99. package/dist/assets/cesium/Workers/createSphereGeometry.js +11 -11
  100. package/dist/assets/cesium/Workers/createSphereOutlineGeometry.js +12 -12
  101. package/dist/assets/cesium/Workers/createTaskProcessorWorker.js +2 -2
  102. package/dist/assets/cesium/Workers/createVectorTileClampedPolylines.js +1 -1
  103. package/dist/assets/cesium/Workers/createVectorTileGeometries.js +8 -8
  104. package/dist/assets/cesium/Workers/createVectorTilePoints.js +1 -1
  105. package/dist/assets/cesium/Workers/createVectorTilePolygons.js +1 -1
  106. package/dist/assets/cesium/Workers/createVectorTilePolylines.js +1 -1
  107. package/dist/assets/cesium/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
  108. package/dist/assets/cesium/Workers/createVerticesFromHeightmap.js +27 -28
  109. package/dist/assets/cesium/Workers/createVerticesFromQuantizedTerrainMesh.js +33 -38
  110. package/dist/assets/cesium/Workers/createWallGeometry.js +14 -14
  111. package/dist/assets/cesium/Workers/createWallOutlineGeometry.js +14 -14
  112. package/dist/assets/cesium/Workers/decodeDraco.js +10 -2
  113. package/dist/assets/cesium/Workers/decodeGoogleEarthEnterprisePacket.js +15 -15
  114. package/dist/assets/cesium/Workers/decodeI3S.js +1 -1
  115. package/dist/assets/cesium/Workers/{defaultValue-0a909f67.js → defaultValue-fe22d8c0.js} +2 -2
  116. package/dist/assets/cesium/Workers/package.js +1 -1
  117. package/dist/assets/cesium/Workers/transcodeKTX2.js +46 -26
  118. package/dist/assets/cesium/Workers/transferTypedArrayTest.js +1 -1
  119. package/dist/assets/cesium/Workers/upsampleQuantizedTerrainMesh.js +24 -24
  120. package/dist/assets/{cesium.88cffd.js → cesium.253914.js} +36578 -33768
  121. package/dist/assets/cesium.js +1 -1
  122. package/dist/assets/{core.a66593.js → core.3a8205.js} +7824 -5377
  123. package/dist/assets/core.js +1 -1
  124. package/dist/assets/index.91ae2d55.js +1 -0
  125. package/dist/assets/{ol.d4539f.js → ol.1c946a.js} +5550 -5491
  126. package/dist/assets/ol.js +1 -1
  127. package/dist/assets/ui.0025be.css +5 -0
  128. package/dist/assets/{ui.d760e4.js → ui.0025be.js} +6260 -5164
  129. package/dist/assets/ui.js +1 -1
  130. package/dist/assets/vue.js +2 -2
  131. package/dist/assets/{vuetify.427322.css → vuetify.6efa21.css} +2 -2
  132. package/dist/assets/{vuetify.427322.js → vuetify.6efa21.js} +1 -1
  133. package/dist/assets/vuetify.js +2 -2
  134. package/dist/index.html +27 -7
  135. package/index.html +26 -6
  136. package/index.js +68 -15
  137. package/lib/cesium.js +1 -1
  138. package/lib/core.js +1 -1
  139. package/lib/ui.js +1 -1
  140. package/lib/vue.js +2 -2
  141. package/lib/vuetify.js +2 -2
  142. package/package.json +19 -10
  143. package/plugins/.eslintrc +9 -0
  144. package/plugins/@vcmap/create-link/fallbackCreateLink.vue +13 -9
  145. package/plugins/@vcmap/create-link/index.js +15 -6
  146. package/plugins/@vcmap/project-selector/{ContextsListComponent.vue → ModulesListComponent.vue} +14 -18
  147. package/plugins/@vcmap/project-selector/ProjectSelectorComponent.vue +19 -24
  148. package/plugins/@vcmap/project-selector/README.md +16 -20
  149. package/plugins/@vcmap/project-selector/config.json +13 -13
  150. package/plugins/@vcmap/project-selector/de.json +4 -1
  151. package/plugins/@vcmap/project-selector/en.json +4 -1
  152. package/plugins/@vcmap/project-selector/index.js +117 -107
  153. package/plugins/@vcmap/search-nominatim/LICENSE.md +5 -6
  154. package/plugins/@vcmap/search-nominatim/README.md +2 -1
  155. package/plugins/@vcmap/search-nominatim/config.json +1 -2
  156. package/plugins/@vcmap/search-nominatim/index.js +7 -4
  157. package/plugins/@vcmap/search-nominatim/nominatim.js +7 -2
  158. package/plugins/@vcmap/search-nominatim/package.json +2 -36
  159. package/plugins/@vcmap/simple-graph/README.md +29 -9
  160. package/plugins/@vcmap/simple-graph/SimpleGraphComponent.vue +2 -7
  161. package/plugins/@vcmap/simple-graph/index.js +2 -2
  162. package/plugins/@vcmap/simple-graph/simpleGraphView.js +3 -1
  163. package/plugins/@vcmap/theme-changer/README.md +5 -3
  164. package/plugins/@vcmap/theme-changer/ThemeChangerComponent.vue +6 -10
  165. package/plugins/@vcmap/theme-changer/config.json +67 -67
  166. package/plugins/@vcmap/theme-changer/index.js +11 -5
  167. package/plugins/@vcmap-show-case/buttons-example/ButtonsExample.vue +76 -11
  168. package/plugins/@vcmap-show-case/buttons-example/index.js +10 -8
  169. package/plugins/@vcmap-show-case/category-tester/Categories.vue +144 -117
  170. package/plugins/@vcmap-show-case/category-tester/Category.vue +46 -29
  171. package/plugins/@vcmap-show-case/category-tester/index.js +9 -3
  172. package/plugins/@vcmap-show-case/config-editor/ConfigEditor.vue +62 -0
  173. package/plugins/@vcmap-show-case/config-editor/index.js +13 -11
  174. package/plugins/@vcmap-show-case/context-menu-tester/index.js +18 -10
  175. package/plugins/@vcmap-show-case/form-inputs-example/FormInputsExample.vue +97 -109
  176. package/plugins/@vcmap-show-case/form-inputs-example/config.json +3 -3
  177. package/plugins/@vcmap-show-case/form-inputs-example/exampleActions.js +14 -4
  178. package/plugins/@vcmap-show-case/form-inputs-example/index.js +42 -19
  179. package/plugins/@vcmap-show-case/form-inputs-example/validation.js +2 -1
  180. package/plugins/@vcmap-show-case/icons-example/README.md +1 -1
  181. package/plugins/@vcmap-show-case/icons-example/allIconsComponent.vue +10 -10
  182. package/plugins/@vcmap-show-case/icons-example/index.js +10 -8
  183. package/plugins/@vcmap-show-case/list-example/ListExample.vue +221 -103
  184. package/plugins/@vcmap-show-case/list-example/index.js +10 -8
  185. package/plugins/@vcmap-show-case/notifier-tester/index.js +9 -3
  186. package/plugins/@vcmap-show-case/notifier-tester/notifierTester.vue +15 -21
  187. package/plugins/@vcmap-show-case/table-example/DataTableExample.vue +183 -0
  188. package/plugins/@vcmap-show-case/table-example/README.md +3 -0
  189. package/plugins/@vcmap-show-case/table-example/index.js +49 -0
  190. package/plugins/@vcmap-show-case/table-example/package.json +5 -0
  191. package/plugins/@vcmap-show-case/textfields-example/TextfieldsExample.vue +7 -30
  192. package/plugins/@vcmap-show-case/textfields-example/index.js +10 -4
  193. package/plugins/@vcmap-show-case/window-tester/WindowExample.vue +16 -13
  194. package/plugins/@vcmap-show-case/window-tester/emptyComponent.vue +4 -7
  195. package/plugins/@vcmap-show-case/window-tester/index.js +26 -20
  196. package/plugins/@vcmap-show-case/window-tester/myCustomHeader.vue +7 -3
  197. package/plugins/@vcmap-show-case/window-tester/toolbox-data.js +82 -5
  198. package/plugins/@vcmap-show-case/window-tester/windowExampleContent.vue +3 -7
  199. package/plugins/@vcmap-show-case/wizard-example/index.js +9 -3
  200. package/plugins/@vcmap-show-case/wizard-example/wizardExample.vue +36 -38
  201. package/src/actions/actionHelper.js +64 -37
  202. package/src/actions/styleSelector.vue +40 -24
  203. package/src/application/VcsApp.vue +117 -80
  204. package/src/application/VcsAttributions.vue +8 -9
  205. package/src/application/VcsAttributionsFooter.vue +12 -9
  206. package/src/application/VcsMap.vue +9 -5
  207. package/src/application/VcsNavbar.vue +44 -27
  208. package/src/application/VcsSettings.vue +5 -12
  209. package/src/application/attributionsHelper.js +23 -11
  210. package/src/application/vcsAppWrapper.vue +1 -3
  211. package/src/components/buttons/VcsActionButtonList.vue +20 -17
  212. package/src/components/buttons/VcsButton.vue +19 -23
  213. package/src/components/buttons/VcsFormButton.vue +176 -0
  214. package/src/components/form-inputs-controls/VcsCheckbox.vue +6 -7
  215. package/src/components/form-inputs-controls/VcsDatePicker.vue +142 -0
  216. package/src/components/form-inputs-controls/VcsFormSection.vue +11 -12
  217. package/src/components/form-inputs-controls/VcsLabel.vue +9 -10
  218. package/src/components/form-inputs-controls/VcsRadio.vue +44 -44
  219. package/src/components/form-inputs-controls/VcsSelect.vue +16 -13
  220. package/src/components/form-inputs-controls/VcsTextArea.vue +21 -14
  221. package/src/components/form-inputs-controls/VcsTextField.vue +44 -19
  222. package/src/components/form-inputs-controls/VcsWizard.vue +79 -77
  223. package/src/components/form-inputs-controls/VcsWizardStep.vue +20 -20
  224. package/src/components/form-inputs-controls/composables.js +13 -8
  225. package/src/components/form-output/VcsFormattedNumber.vue +26 -26
  226. package/src/components/icons/+all.js +13 -5
  227. package/src/components/icons/2DAreaIcon.vue +62 -10
  228. package/src/components/icons/2DDistanceIcon.vue +14 -2
  229. package/src/components/icons/3DAreaIcon.vue +62 -10
  230. package/src/components/icons/3DDistanceIcon.vue +14 -2
  231. package/src/components/icons/3DHeightIcon.vue +14 -2
  232. package/src/components/icons/AngleIcon.vue +12 -3
  233. package/src/components/icons/AssociationsIcon.vue +6 -1
  234. package/src/components/icons/AxisIcon.vue +34 -5
  235. package/src/components/icons/BoundingBoxIcon.vue +31 -5
  236. package/src/components/icons/CheckboxCheckedIcon.vue +4 -1
  237. package/src/components/icons/CheckboxIcon.vue +1 -8
  238. package/src/components/icons/CheckboxIndeterminateIcon.vue +9 -2
  239. package/src/components/icons/CircleIcon.vue +24 -4
  240. package/src/components/icons/ClippingHorizontalIcon.vue +14 -2
  241. package/src/components/icons/ClippingIcon.vue +13 -2
  242. package/src/components/icons/ClippingVerticalIcon.vue +14 -2
  243. package/src/components/icons/ColorPickerIcon.vue +13 -2
  244. package/src/components/icons/ColorSwatchIcon.vue +7 -1
  245. package/src/components/icons/CommentIcon.vue +6 -1
  246. package/src/components/icons/CompassIcon.vue +21 -3
  247. package/src/components/icons/ComponentsIcon.vue +14 -2
  248. package/src/components/icons/ConeIcon.vue +26 -4
  249. package/src/components/icons/DimensionsHouseIcon.vue +7 -1
  250. package/src/components/icons/EditIcon.vue +13 -2
  251. package/src/components/icons/ElevationProfileIcon.vue +6 -1
  252. package/src/components/icons/ExportAreaIcon.vue +13 -2
  253. package/src/components/icons/ExportFlightIcon.vue +13 -2
  254. package/src/components/icons/ExportIcon.vue +14 -2
  255. package/src/components/icons/ExternalLinkIcon.vue +18 -3
  256. package/src/components/icons/EyeIcon.vue +12 -2
  257. package/src/components/icons/FastForwardIcon.vue +13 -2
  258. package/src/components/icons/FilterIcon.vue +13 -2
  259. package/src/components/icons/GlobalTerrainIcon.vue +12 -2
  260. package/src/components/icons/GlobeNatureIcon.vue +7 -1
  261. package/src/components/icons/GroundIcon.vue +12 -2
  262. package/src/components/icons/HealthCareIndustriesIcon.vue +6 -1
  263. package/src/components/icons/HelpIcon.vue +12 -2
  264. package/src/components/icons/HideIcon.vue +17 -3
  265. package/src/components/icons/HomePointIcon.vue +13 -3
  266. package/src/components/icons/HospitalsIcon.vue +6 -1
  267. package/src/components/icons/HouseIcon.vue +20 -3
  268. package/src/components/icons/ImportIcon.vue +21 -3
  269. package/src/components/icons/InfoIcon.vue +19 -3
  270. package/src/components/icons/KebabIcon.vue +12 -2
  271. package/src/components/icons/LabelIcon.vue +21 -3
  272. package/src/components/icons/LayersIcon.vue +12 -2
  273. package/src/components/icons/LegendIcon.vue +20 -60
  274. package/src/components/icons/LineIcon.vue +20 -3
  275. package/src/components/icons/LinkIcon.vue +13 -2
  276. package/src/components/icons/LogoutIcon.vue +13 -2
  277. package/src/components/icons/MapIcon.vue +14 -2
  278. package/src/components/icons/MenuIcon.vue +7 -1
  279. package/src/components/icons/MinusIcon.vue +14 -2
  280. package/src/components/icons/ObjectAttributeIcon.vue +13 -2
  281. package/src/components/icons/ObjectSelectIcon.vue +14 -2
  282. package/src/components/icons/ObliqueViewIcon.vue +11 -2
  283. package/src/components/icons/PdfIcon.vue +12 -2
  284. package/src/components/icons/PedestrianIcon.vue +13 -2
  285. package/src/components/icons/PenIcon.vue +13 -3
  286. package/src/components/icons/PlayCircleIcon.vue +20 -3
  287. package/src/components/icons/PlusIcon.vue +14 -3
  288. package/src/components/icons/PoiIcon.vue +17 -3
  289. package/src/components/icons/PointSelectIcon.vue +12 -2
  290. package/src/components/icons/PolygonIcon.vue +7 -1
  291. package/src/components/icons/PresentationModeIcon.vue +13 -2
  292. package/src/components/icons/ProgressIcon.vue +8 -6
  293. package/src/components/icons/QueryIcon.vue +31 -5
  294. package/src/components/icons/RectangleIcon.vue +24 -4
  295. package/src/components/icons/ReturnIcon.vue +13 -2
  296. package/src/components/icons/RewindIcon.vue +13 -2
  297. package/src/components/icons/RotateLeftIcon.vue +13 -2
  298. package/src/components/icons/RotateRightIcon.vue +13 -2
  299. package/src/components/icons/ScreenshotIcon.vue +52 -10
  300. package/src/components/icons/SearchIcon.vue +13 -3
  301. package/src/components/icons/ShadowIcon.vue +14 -3
  302. package/src/components/icons/ShapesIcon.vue +13 -3
  303. package/src/components/icons/ShareIcon.vue +17 -4
  304. package/src/components/icons/SimpleCircleFilledIcon.vue +14 -10
  305. package/src/components/icons/SimpleCircleHalfFilledIcon.vue +6 -1
  306. package/src/components/icons/SimpleCircleOutlinedIcon.vue +14 -10
  307. package/src/components/icons/SkipNextIcon.vue +11 -2
  308. package/src/components/icons/SkipPreviousIcon.vue +17 -3
  309. package/src/components/icons/SplitViewIcon.vue +6 -1
  310. package/src/components/icons/TerrainBoxIcon.vue +12 -2
  311. package/src/components/icons/TextStyleIcon.vue +7 -1
  312. package/src/components/icons/ThreeDimensionsIcon.vue +13 -2
  313. package/src/components/icons/ToolsIcon.vue +12 -2
  314. package/src/components/icons/TouchIcon.vue +13 -2
  315. package/src/components/icons/TrashCanIcon.vue +13 -2
  316. package/src/components/icons/TriangleIcon.vue +6 -2
  317. package/src/components/icons/TwoDimensionsIcon.vue +14 -2
  318. package/src/components/icons/UploadIcon.vue +13 -2
  319. package/src/components/icons/UserProfileIcon.vue +13 -2
  320. package/src/components/icons/UserShareIcon.vue +12 -2
  321. package/src/components/icons/VideoRecorderIcon.vue +16 -3
  322. package/src/components/icons/ViewpointFlightIcon.vue +22 -4
  323. package/src/components/icons/ViewpointIcon.vue +22 -4
  324. package/src/components/icons/Viewshed360Icon.vue +14 -2
  325. package/src/components/icons/ViewshedConeIcon.vue +13 -2
  326. package/src/components/icons/ViewshedIcon.vue +14 -2
  327. package/src/components/icons/WalkingIcon.vue +13 -2
  328. package/src/components/icons/WallIcon.vue +19 -3
  329. package/src/components/icons/WandIcon.vue +129 -21
  330. package/src/components/imageElementInjector.vue +1 -3
  331. package/src/components/lists/VcsActionList.vue +21 -18
  332. package/src/components/lists/VcsList.vue +226 -97
  333. package/src/components/lists/VcsTreeview.vue +30 -26
  334. package/src/components/lists/VcsTreeviewLeaf.vue +23 -22
  335. package/src/components/lists/VcsTreeviewSearchbar.vue +19 -15
  336. package/src/components/notification/VcsBadge.vue +4 -6
  337. package/src/components/notification/VcsTooltip.vue +95 -94
  338. package/src/components/notification/validation.js +1 -1
  339. package/src/components/tables/VcsDataTable.vue +398 -0
  340. package/src/components/tables/VcsTable.vue +63 -300
  341. package/src/contentTree/LayerTree.vue +2 -3
  342. package/src/contentTree/contentTreeCollection.js +49 -23
  343. package/src/contentTree/contentTreeItem.js +36 -14
  344. package/src/contentTree/groupContentTreeItem.js +44 -22
  345. package/src/contentTree/layerContentTreeItem.js +45 -20
  346. package/src/contentTree/layerGroupContentTreeItem.js +53 -31
  347. package/src/contentTree/nodeContentTreeItem.js +18 -7
  348. package/src/contentTree/obliqueCollectionContentTreeItem.js +45 -20
  349. package/src/contentTree/subContentTreeItem.js +13 -4
  350. package/src/contentTree/vcsObjectContentTreeItem.js +24 -15
  351. package/src/contentTree/viewpointContentTreeItem.js +19 -6
  352. package/src/downloadHelper.js +52 -0
  353. package/src/featureInfo/AddressBalloonComponent.vue +11 -16
  354. package/src/featureInfo/BalloonComponent.vue +41 -31
  355. package/src/featureInfo/abstractFeatureInfoView.js +30 -14
  356. package/src/featureInfo/addressBalloonFeatureInfoView.js +19 -7
  357. package/src/featureInfo/balloonFeatureInfoView.js +22 -9
  358. package/src/featureInfo/balloonHelper.js +61 -42
  359. package/src/featureInfo/featureInfo.js +74 -34
  360. package/src/featureInfo/featureInfoInteraction.js +13 -7
  361. package/src/featureInfo/iframeFeatureInfoView.js +3 -1
  362. package/src/featureInfo/tableFeatureInfoView.js +15 -5
  363. package/src/i18n/de.js +8 -0
  364. package/src/i18n/en.js +8 -0
  365. package/src/i18n/i18nCollection.js +183 -155
  366. package/src/init.js +124 -38
  367. package/src/legend/legendHelper.js +11 -6
  368. package/src/legend/styleLegendItem.vue +18 -12
  369. package/src/legend/vcsLegend.vue +15 -17
  370. package/src/manager/buttonManager.js +6 -3
  371. package/src/manager/categoryManager/CategoryComponent.vue +99 -63
  372. package/src/manager/categoryManager/CategoryComponentList.vue +33 -8
  373. package/src/manager/categoryManager/CategoryManager.vue +23 -11
  374. package/src/manager/categoryManager/categoryManager.js +90 -45
  375. package/src/manager/contextMenu/contextMenuComponent.vue +2 -6
  376. package/src/manager/contextMenu/contextMenuInteraction.js +6 -1
  377. package/src/manager/contextMenu/contextMenuManager.js +37 -22
  378. package/src/manager/navbarManager.js +28 -3
  379. package/src/manager/toolbox/GroupToolboxComponent.vue +22 -21
  380. package/src/manager/toolbox/SelectToolboxComponent.vue +36 -35
  381. package/src/manager/toolbox/ToolboxManager.vue +18 -10
  382. package/src/manager/toolbox/toolboxManager.js +30 -12
  383. package/src/manager/window/WindowComponent.vue +24 -32
  384. package/src/manager/window/WindowComponentHeader.vue +38 -28
  385. package/src/manager/window/WindowManager.vue +45 -35
  386. package/src/manager/window/windowHelper.js +80 -24
  387. package/src/manager/window/windowManager.js +79 -39
  388. package/src/navigation/mapNavCompass.vue +18 -4
  389. package/src/navigation/mapNavigation.vue +65 -46
  390. package/src/navigation/obliqueRotation.vue +34 -13
  391. package/src/navigation/orientationToolsButton.vue +6 -10
  392. package/src/navigation/overviewMap.js +76 -45
  393. package/src/navigation/overviewMapClickedInteraction.js +6 -1
  394. package/src/navigation/tiltSlider.vue +6 -10
  395. package/src/navigation/vcsCompass.vue +1 -9
  396. package/src/navigation/vcsZoomButton.vue +36 -11
  397. package/src/notifier/notifier.js +22 -13
  398. package/src/notifier/notifierComponent.vue +21 -21
  399. package/src/pluginHelper.js +39 -5
  400. package/src/search/resultItem.vue +10 -15
  401. package/src/search/resultsComponent.vue +30 -24
  402. package/src/search/search.js +48 -22
  403. package/src/search/searchComponent.vue +35 -10
  404. package/src/setup.js +9 -9
  405. package/src/state.js +28 -12
  406. package/src/styles/_typography.scss +0 -1
  407. package/src/styles/shades.scss +4 -2
  408. package/src/styles/utils/_border.scss +1 -1
  409. package/src/styles/utils/_display.scss +1 -1
  410. package/src/styles/variables.scss +39 -34
  411. package/src/styles/vcsFont.scss +6 -5
  412. package/src/styles/vcsGrid.scss +9 -0
  413. package/src/uiConfig.js +6 -4
  414. package/src/vcsUiApp.js +192 -91
  415. package/src/vuePlugins/i18n.js +5 -4
  416. package/src/vuePlugins/vuetify.js +4 -0
  417. package/start.js +8 -2
  418. package/dist/assets/cesium/Workers/PolygonPipeline-844aab0a.js +0 -1345
  419. package/dist/assets/cesium/Workers/Transforms-40229881.js +0 -14696
  420. package/dist/assets/index.8b833ead.js +0 -1
  421. package/dist/assets/ui.d760e4.css +0 -5
  422. package/map.config.json +0 -44
  423. package/plugins/@vcmap-show-case/config-editor/editor.vue +0 -66
  424. /package/dist/assets/cesium/Workers/{GeometryOffsetAttribute-04332ce7.js → GeometryOffsetAttribute-9ad0019c.js} +0 -0
  425. /package/dist/assets/{vue.db5102.js → vue.c1ece7.js} +0 -0
@@ -1,29 +1,25 @@
1
1
  # VC Map Plugin Project Selector
2
2
 
3
- This is a plugin to select and load `VCMapProjects` and `VCMapContexts`.
3
+ This is a plugin to select and load `Projects` and `VcsModules`.
4
4
 
5
5
  ## configuration
6
6
 
7
- You can add projects or contexts and define the startup behavior of the plugin:
7
+ You can add projects or modules and define the startup behavior of the plugin:
8
8
 
9
9
  ### ProjectSelectorConfig
10
- | Property | Type | default | Description |
11
- |------------------|----------------------------|---------------|------------------------------|
12
- | selected | string | 'VC Map Base' | selected project on startup |
13
- | selectedContexts | string[] | [] | selected contexts on startup |
14
- | projects | Array<VCMapProjectOptions> | [] | |
15
- | contexts | Array<VCMapContextOptions> | [] | |
16
10
 
17
- ### VCMapProjectOptions
18
- | Property | Type | Description |
19
- |-------------|----------------------------|----------------------------|
20
- | name | string | name of the project |
21
- | description | string | description of the project |
22
- | contexts | Array<VCMapContextOptions> | |
11
+ | Property | Type | default | Description |
12
+ | --------------- | --------------------- | ------------- | --------------------------- |
13
+ | selected | string | 'VC Map Base' | selected project on startup |
14
+ | selectedModules | string[] | [] | selected modules on startup |
15
+ | open | boolean | false | open plugin on startup |
16
+ | projects | Array<ProjectOptions> | [] | |
17
+ | modules | Array<string> | [] | list of config urls |
23
18
 
24
- ### VCMapContextOptions
25
- | Property | Type | Description |
26
- |-------------|--------|----------------------------|
27
- | name | string | name of the context |
28
- | description | string | description of the context |
29
- | configUrl | string | url to config.json |
19
+ ### ProjectOptions
20
+
21
+ | Property | Type | Description |
22
+ | ----------- | ------------- | -------------------------- |
23
+ | name | string | name of the project |
24
+ | description | string | description of the project |
25
+ | modules | Array<string> | list of config urls |
@@ -1,15 +1,15 @@
1
1
  {
2
- "name": "projectSelector",
3
- "entry": "plugins/@vcmap/project-selector/index.js",
4
- "selected": "VC Map Base",
5
- "selectedContexts": [],
6
- "open": false,
7
- "projects": [
8
- {
9
- "name": "VC Map Base",
10
- "description": "Base Layout with basic datasets",
11
- "contexts": [ { "configUrl": "config/base.config.json" } ]
12
- }
13
- ],
14
- "contexts": []
2
+ "name": "projectSelector",
3
+ "entry": "plugins/@vcmap/project-selector/index.js",
4
+ "selected": "VC Map Base",
5
+ "selectedModules": [],
6
+ "open": false,
7
+ "projects": [
8
+ {
9
+ "name": "VC Map Base",
10
+ "description": "Base Layout with basic datasets",
11
+ "modules": ["config/base.config.json"]
12
+ }
13
+ ],
14
+ "modules": []
15
15
  }
@@ -1,7 +1,10 @@
1
1
  {
2
2
  "project-selector": {
3
- "project" : {
3
+ "project": {
4
4
  "title": "Projekte"
5
+ },
6
+ "module": {
7
+ "title": "Module"
5
8
  }
6
9
  }
7
10
  }
@@ -1,7 +1,10 @@
1
1
  {
2
2
  "project-selector": {
3
- "project" : {
3
+ "project": {
4
4
  "title": "Projects"
5
+ },
6
+ "module": {
7
+ "title": "Modules"
5
8
  }
6
9
  }
7
10
  }
@@ -1,50 +1,42 @@
1
- import { ref } from 'vue';
1
+ import { reactive } from 'vue';
2
2
  import { ButtonLocation, createToggleAction } from '@vcmap/ui';
3
- import { Context } from '@vcmap/core';
3
+ import { VcsModule } from '@vcmap/core';
4
4
  import { getLogger } from '@vcsuite/logger';
5
5
  import ProjectsComponent from './ProjectSelectorComponent.vue';
6
6
  import packageJSON from './package.json';
7
7
  import defaultConfig from './config.json';
8
8
  import de from './de.json';
9
9
  import en from './en.json';
10
- /**
11
- * @typedef {Object} VCMapContextOptions
12
- * @property {string} [name]
13
- * @property {string} [description]
14
- * @property {string} configUrl
15
- */
16
10
 
17
11
  /**
18
- * @typedef {Object} VCMapContext
12
+ * @typedef {Object} VcsModuleState
13
+ * @property {string} _id
19
14
  * @property {string} [name]
20
15
  * @property {string} [description]
21
16
  * @property {string} configUrl
22
- * @property {string} contextId
23
17
  * @property {boolean} active
24
18
  */
25
19
 
26
20
  /**
27
- * @typedef {Object} VCMapProjectOptions
21
+ * @typedef {Object} ProjectOptions
28
22
  * @property {string} name
29
23
  * @property {string} [description]
30
- * @property {Array<VCMapContextOptions>} contexts
24
+ * @property {Array<string>} modules - a list of config urls
31
25
  */
32
26
 
33
27
  /**
34
- * @typedef {Object} VCMapProject
35
- * @property {string} name
36
- * @property {string} [description]
37
- * @property {Array<VCMapContext>} contexts
28
+ * @typedef {ProjectOptions} Project
38
29
  * @property {boolean} active
30
+ * @property {Array<VcsModuleState>} modules
39
31
  */
40
32
 
41
33
  /**
42
34
  * @typedef {Object} ProjectSelectorConfig
43
35
  * @property {string} [selected='VC Map Base'] - selected project on startup
44
- * @property {string[]} [selectedContexts] - selected contexts on startup
36
+ * @property {string[]} [selectedModules] - selected modules on startup
45
37
  * @property {boolean} [open=false] - open plugin on startup
46
- * @property {Array<VCMapProjectOptions>} projects
47
- * @property {Array<VCMapContextOptions>} contexts
38
+ * @property {Array<Project>} projects
39
+ * @property {Array<string>} modules
48
40
  */
49
41
 
50
42
  /**
@@ -52,156 +44,172 @@ import en from './en.json';
52
44
  * @returns {VcsPlugin}
53
45
  */
54
46
  export default async function projectSelector(config) {
55
- const { selected, selectedContexts, open, projects = [], contexts = [] } = config;
47
+ const {
48
+ selected,
49
+ selectedModules,
50
+ open,
51
+ projects = [],
52
+ modules = [],
53
+ } = config;
56
54
 
57
- const pluginConfig = {
58
- selected: ref(selected || defaultConfig.selected),
59
- selectedContexts: ref(selectedContexts || defaultConfig.selectedContexts),
60
- open: ref(open || defaultConfig.open),
61
- projects: ref(/** @type {Array<VCMapProjectOptions>} */[...defaultConfig.projects, ...projects]),
62
- contexts: ref(/** @type {Array<VCMapContextOptions>} */[...defaultConfig.contexts, ...contexts]),
63
- };
55
+ const pluginConfig = reactive({
56
+ selected: selected || defaultConfig.selected,
57
+ selectedModules: selectedModules || defaultConfig.selectedModules,
58
+ open: open || defaultConfig.open,
59
+ projects: /** @type {Array<ProjectOptions>} */ [
60
+ ...defaultConfig.projects,
61
+ ...projects,
62
+ ],
63
+ modules: /** @type {Array<string>} */ [
64
+ ...defaultConfig.modules,
65
+ ...modules,
66
+ ],
67
+ });
64
68
 
65
- const pluginState = {
66
- projects: ref(/** @type {Array<VCMapProject>} */[]),
67
- contexts: ref(/** @type {Array<VCMapContext>} */[]),
68
- };
69
+ const pluginState = reactive({
70
+ projects: /** @type {Array<Project>} */ [],
71
+ modules: /** @type {Array<VcsModuleState>} */ [],
72
+ });
69
73
 
70
74
  /**
71
- * @param {VCMapContextOptions} contextOptions
75
+ * @param {string} configUrl
72
76
  */
73
- function addContextFromOptions(contextOptions) {
74
- /**
75
- * @type {VCMapContext}
76
- */
77
- const context = {
78
- name: undefined,
79
- description: undefined,
80
- configUrl: undefined,
81
- ...contextOptions,
82
- contextId: undefined,
83
- active: false,
84
- };
85
- pluginState.contexts.value.push(context);
77
+ function addModule(configUrl) {
78
+ pluginState.modules.push({ _id: undefined, configUrl, active: false });
86
79
  }
87
80
 
88
81
  /**
89
- * @param {VCMapContext} context
82
+ * @param {string} moduleId
90
83
  */
91
- function removeContext(context) {
92
- const idx = pluginState.contexts.value.findIndex(c => c.configUrl === context.configUrl);
93
- pluginState.contexts.value.splice(idx, 1);
84
+ function removeModule(moduleId) {
85
+ const idx = pluginState.modules.findIndex(({ _id }) => _id === moduleId);
86
+ pluginState.modules.splice(idx, 1);
94
87
  }
95
88
 
96
89
  /**
97
- * @param {VCMapProjectOptions} projectOptions
90
+ * @param {ProjectOptions} projectOptions
98
91
  */
99
- function addProjectFromOptions(projectOptions) {
100
- const { name, description, contexts: contextsOptions = [] } = projectOptions;
101
- /**
102
- * @type {VCMapProject}
103
- */
92
+ function addProject({ name, description, modules: configUrls }) {
104
93
  const project = {
105
94
  name,
106
95
  description,
107
- contexts: contextsOptions.map(options => /** @type {VCMapContext} */({
108
- name: undefined,
109
- description: undefined,
110
- configUrl: undefined,
111
- ...options,
112
- contextId: undefined,
96
+ modules: configUrls.map((configUrl) => ({
97
+ _id: undefined,
98
+ configUrl,
113
99
  active: false,
114
100
  })),
115
101
  active: false,
116
102
  };
117
- pluginState.projects.value.push(project);
103
+ pluginState.projects.push(project);
118
104
  }
119
105
 
120
106
  /**
121
- * @param {VCMapProject} project
107
+ * @param {Project} project
122
108
  */
123
109
  function removeProject(project) {
124
- const projectIdx = pluginState.projects.findIndex(p => p.name === project.name);
125
- pluginState.projects.value.splice(projectIdx, 1);
110
+ const projectIdx = pluginState.projects.findIndex(
111
+ (p) => p.name === project.name,
112
+ );
113
+ pluginState.projects.splice(projectIdx, 1);
126
114
  }
127
115
 
128
116
  /**
129
117
  * @param {VcsApp} app
130
- * @param {VCMapContext} vcMapContext
118
+ * @param {VcsModuleState} moduleState
131
119
  * @returns {Promise<void>}
132
120
  */
133
- async function loadContext(app, vcMapContext) {
121
+ async function loadModule(app, moduleState) {
134
122
  try {
135
- const configJson = await fetch(vcMapContext.configUrl)
136
- .then(response => response.json());
137
- const context = new Context(configJson);
138
- if (!app.getContextById(context.id)) {
139
- await app.addContext(context);
123
+ const response = await fetch(moduleState.configUrl);
124
+ if (response.ok) {
125
+ const configJson = await response.json();
126
+ const module = new VcsModule(configJson);
127
+ if (!app.getModuleById(module._id)) {
128
+ await app.addModule(module);
129
+ moduleState._id = module._id;
130
+ moduleState.name = module.name;
131
+ moduleState.description = module.description;
132
+ moduleState.active = true;
133
+ }
140
134
  }
141
- vcMapContext.contextId = context.id;
142
- vcMapContext.active = true;
143
135
  } catch (err) {
144
- getLogger().error(`Failed loading context from ${ vcMapContext.configUrl}`, err);
136
+ getLogger().error(
137
+ `Failed loading module from ${moduleState.configUrl}`,
138
+ err,
139
+ );
145
140
  }
146
141
  }
147
142
 
148
143
  /**
149
144
  * @param {VcsApp} app
150
- * @param {VCMapContext} vcMapContext
145
+ * @param {VcsModuleState} moduleState
151
146
  * @returns {Promise<void>}
152
147
  */
153
- async function unloadContext(app, vcMapContext) {
154
- if (app.getContextById(vcMapContext.contextId)) {
155
- await app.removeContext(vcMapContext.contextId);
148
+ async function unloadModule(app, moduleState) {
149
+ if (app.getModuleById(moduleState._id)) {
150
+ await app.removeModule(moduleState._id);
151
+ moduleState.active = false;
152
+ moduleState._id = undefined;
156
153
  }
157
- vcMapContext.active = false;
158
154
  }
159
155
 
160
156
  /**
161
157
  * @param {VcsApp} app
162
- * @param {VCMapProject} project
158
+ * @param {Project} project
163
159
  * @returns {Promise<void>}
164
160
  */
165
161
  async function deselectProject(app, project) {
166
162
  if (project.active) {
167
- await Promise.all([...project.contexts].map((context) => {
168
- return unloadContext(app, context);
169
- }));
163
+ await Promise.all(
164
+ [...project.modules].map((moduleState) => {
165
+ return unloadModule(app, moduleState);
166
+ }),
167
+ );
170
168
  project.active = false;
171
169
  }
172
170
  }
173
171
 
174
172
  /**
175
173
  * @param {VcsApp} app
176
- * @param {VCMapProject} project
174
+ * @param {Project} project
177
175
  * @returns {Promise<void>}
178
176
  */
179
177
  async function selectProject(app, project) {
180
178
  if (!project.active) {
181
- await Promise.all([...pluginState.projects.value].map((p) => {
182
- return deselectProject(app, p);
183
- }));
184
- await Promise.all([...project.contexts].map((context) => {
185
- return loadContext(app, context);
186
- }));
179
+ await Promise.all(
180
+ [...pluginState.projects].map((p) => {
181
+ return deselectProject(app, p);
182
+ }),
183
+ );
184
+ await Promise.all(
185
+ [...project.modules].map((moduleState) => {
186
+ return loadModule(app, moduleState);
187
+ }),
188
+ );
187
189
  project.active = true;
188
190
  }
189
191
  }
190
192
 
191
193
  return {
192
- get name() { return packageJSON.name; },
193
- get version() { return packageJSON.version; },
194
- get vcMapVersion() { return packageJSON.vcMapVersion; },
194
+ get name() {
195
+ return packageJSON.name;
196
+ },
197
+ get version() {
198
+ return packageJSON.version;
199
+ },
200
+ get vcMapVersion() {
201
+ return packageJSON.vcMapVersion;
202
+ },
195
203
  config: pluginConfig,
196
204
  state: pluginState,
197
- addContextFromOptions,
198
- removeContext,
199
- addProjectFromOptions,
205
+ addModule,
206
+ removeModule,
207
+ addProject,
200
208
  removeProject,
201
209
  selectProject,
202
210
  deselectProject,
203
- loadContext,
204
- unloadContext,
211
+ loadModule,
212
+ unloadModule,
205
213
  onVcsAppMounted(app) {
206
214
  const windowComponent = {
207
215
  id: 'project-selector',
@@ -232,15 +240,17 @@ export default async function projectSelector(config) {
232
240
  );
233
241
  this._destroyAction = destroy;
234
242
 
235
- pluginConfig.contexts.value.forEach(c => addContextFromOptions(c));
236
- pluginConfig.projects.value.forEach(p => addProjectFromOptions(p));
237
- const projectToSelect = [...pluginState.projects.value]
238
- .find(p => p.name === pluginConfig.selected.value) ||
239
- pluginState.projects.value[0];
243
+ pluginConfig.modules.forEach((c) => addModule(c));
244
+ pluginConfig.projects.forEach((p) => addProject(p));
245
+ const projectToSelect =
246
+ [...pluginState.projects].find(
247
+ (p) => p.name === pluginConfig.selected,
248
+ ) || pluginState.projects[0];
240
249
  selectProject(app, projectToSelect);
241
- const contextsToSelect = [...pluginState.contexts.value]
242
- .filter(c => pluginConfig.selectedContexts.value.includes(c.name));
243
- contextsToSelect.forEach(c => loadContext(app, c));
250
+ const modulesToSelect = [...pluginState.modules].filter((m) =>
251
+ pluginConfig.selectedModules.includes(m.configUrl),
252
+ );
253
+ modulesToSelect.forEach((m) => loadModule(app, m));
244
254
  if (pluginConfig.open) {
245
255
  app.windowManager.add(windowComponent, packageJSON.name);
246
256
  }
@@ -1,14 +1,13 @@
1
-
2
1
  Copyright 2022 support@vc.systems
3
2
 
4
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
5
4
  documentation files (the "Software"), to deal in the Software without restriction, including without limitation
6
- the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
5
+ the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
7
6
  and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
8
7
 
9
8
  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
10
9
 
11
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
12
- THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
13
- OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
10
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
11
+ THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
12
+ OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
14
13
  TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,2 +1,3 @@
1
1
  # @vcmap/search-nominatim
2
- describe your plugin
2
+
3
+ describe your plugin
@@ -1,4 +1,3 @@
1
1
  {
2
- "name": "@vcmap/search-nominatim",
3
-
2
+ "name": "@vcmap/search-nominatim"
4
3
  }
@@ -1,19 +1,22 @@
1
1
  import { version, name } from './package.json';
2
2
  import Nominatim from './nominatim.js';
3
3
 
4
-
5
4
  /**
6
5
  * @param {NominatimSearchOptions} config - the configuration of this plugin instance, passed in from the app.
7
6
  * @returns {import("@vcmap/ui/src/vcsUiApp").VcsPlugin<T>}
8
7
  * @template {Object} T
9
8
  * @template {Object} S
10
9
  */
11
- export default function SearchNominatim(config) {
10
+ export default function searchNominatim(config) {
12
11
  return {
13
12
  _instance: null,
14
13
  _app: null,
15
- get name() { return name; },
16
- get version() { return version; },
14
+ get name() {
15
+ return name;
16
+ },
17
+ get version() {
18
+ return version;
19
+ },
17
20
  /**
18
21
  * @param {import("@vcmap/ui").VcsUiApp} vcsUiApp
19
22
  */
@@ -1,5 +1,8 @@
1
1
  import { Extent, parseGeoJSON, wgs84Projection } from '@vcmap/core';
2
- import { AddressBalloonFeatureInfoView, featureInfoViewSymbol } from '@vcmap/ui';
2
+ import {
3
+ AddressBalloonFeatureInfoView,
4
+ featureInfoViewSymbol,
5
+ } from '@vcmap/ui';
3
6
 
4
7
  /**
5
8
  *
@@ -120,7 +123,9 @@ class Nominatim {
120
123
  }
121
124
 
122
125
  if (this.extent) {
123
- params.viewbox = this.extent.getCoordinatesInProjection(wgs84Projection).join(',');
126
+ params.viewbox = this.extent
127
+ .getCoordinatesInProjection(wgs84Projection)
128
+ .join(',');
124
129
  params.bounded = 1;
125
130
  }
126
131
 
@@ -2,42 +2,8 @@
2
2
  "name": "@vcmap/search-nominatim",
3
3
  "version": "1.0.0",
4
4
  "description": "A search plugin for OSM Nominatim",
5
- "main": "index.js",
6
- "scripts": {
7
- "prepublishOnly": "vcmplugin build",
8
- "build": "vcmplugin build",
9
- "pack": "vcmplugin pack",
10
- "start": "vcmplugin serve",
11
- "preview": "vcmplugin preview",
12
- "buildStagingApp": "vcmplugin buildStagingApp",
13
- "lint": "eslint \"{src,tests}/**/*.{js,vue}\""
14
- },
15
- "author": "support@vc.systems",
16
- "license": "MIT",
17
- "dependencies": {},
18
5
  "peerDependencies": {
19
- "@vcmap/core": "^5.0.0-rc.20"
20
- },
21
- "keywords": [
22
- "vcmap",
23
- "plugin"
24
- ],
25
- "files": [
26
- "src/",
27
- "dist/",
28
- "plugin-assets/",
29
- "LICENSE.md",
30
- "README.md"
31
- ],
32
- "exports": {
33
- ".": "./src/index.js",
34
- "./dist": "./dist/index.js"
35
- },
36
- "eslintIgnore": [
37
- "node_modules"
38
- ],
39
- "eslintConfig": {
40
- "root": true,
41
- "extends": "@vcsuite/eslint-config/vue"
6
+ "@vcmap/core": "^5.0.0-rc.30",
7
+ "@vcmap/ui": "^5.0.0-rc.23"
42
8
  }
43
9
  }
@@ -2,11 +2,10 @@
2
2
 
3
3
  This is a plugin adding a new Feature Info View using {@link https://vuetifyjs.com/en/api/v-sparkline/#props|vuetify v-sparkline }.
4
4
 
5
- | View class | VueComponent | description |
6
- |-----------------------------------------|----------------------------------------------------|----------------------------------------------------------|
5
+ | View class | VueComponent | description |
6
+ | ------------------------------------- | ------------------------------------------------ | -------------------------------------------------------- |
7
7
  | [SimpleGraphView](simpleGraphView.js) | [SimpleGraphComponent](SimpleGraphComponent.vue) | A simple graph view including trend lines and bar graph. |
8
8
 
9
-
10
9
  ## configuration
11
10
 
12
11
  See `{FeatureInfoViewOptions}` for general configuration of Feature Views.
@@ -15,7 +14,7 @@ Use `{WindowComponentOptions} window` to define the position and size of the gra
15
14
  The graph can be configured as follows:
16
15
 
17
16
  | Property | Type | default | Description |
18
- |----------|--------------------------|-----------|------------------------------------------------------|
17
+ | -------- | ------------------------ | --------- | ---------------------------------------------------- |
19
18
  | labels | string[] &#124; number[] | [] | optional array of strings labeling all data points |
20
19
  | graph | string | 'trend' | Choose between a trendline or bars |
21
20
  | color | string | 'primary' | optional color of the sparkline of the graph |
@@ -30,12 +29,33 @@ The graph can be configured as follows:
30
29
  "type": "SimpleGraphView",
31
30
  "name": "graphBar",
32
31
  "attributeKeys": [
33
- "globalRadRoofsMonth_01", "globalRadRoofsMonth_02", "globalRadRoofsMonth_03",
34
- "globalRadRoofsMonth_04", "globalRadRoofsMonth_05", "globalRadRoofsMonth_06",
35
- "globalRadRoofsMonth_07", "globalRadRoofsMonth_08", "globalRadRoofsMonth_09",
36
- "globalRadRoofsMonth_10", "globalRadRoofsMonth_11", "globalRadRoofsMonth_12"
32
+ "globalRadRoofsMonth_01",
33
+ "globalRadRoofsMonth_02",
34
+ "globalRadRoofsMonth_03",
35
+ "globalRadRoofsMonth_04",
36
+ "globalRadRoofsMonth_05",
37
+ "globalRadRoofsMonth_06",
38
+ "globalRadRoofsMonth_07",
39
+ "globalRadRoofsMonth_08",
40
+ "globalRadRoofsMonth_09",
41
+ "globalRadRoofsMonth_10",
42
+ "globalRadRoofsMonth_11",
43
+ "globalRadRoofsMonth_12"
44
+ ],
45
+ "labels": [
46
+ "Jan",
47
+ "Feb",
48
+ "Mar",
49
+ "Apr",
50
+ "May",
51
+ "Jun",
52
+ "Jul",
53
+ "Aug",
54
+ "Sep",
55
+ "Oct",
56
+ "Nov",
57
+ "Dec"
37
58
  ],
38
- "labels": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
39
59
  "color": "secondary",
40
60
  "graph": "bar",
41
61
  "gradient": ["red", "orange", "yellow"],
@@ -13,14 +13,11 @@
13
13
  />
14
14
  </template>
15
15
  <script>
16
-
17
16
  import { VSparkline } from 'vuetify/lib';
18
17
 
19
18
  export default {
20
19
  name: 'SimpleGraphComponent',
21
- components: [
22
- VSparkline,
23
- ],
20
+ components: [VSparkline],
24
21
  props: {
25
22
  attributes: {
26
23
  type: Object,
@@ -59,6 +56,4 @@
59
56
  };
60
57
  </script>
61
58
 
62
- <style scoped>
63
-
64
- </style>
59
+ <style scoped></style>