@vcmap/core 5.0.0-rc.32 → 5.0.0-rc.34

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 (815) hide show
  1. package/README.md +102 -35
  2. package/build/postinstall.js +59 -23
  3. package/dist/index.d.ts +176 -0
  4. package/{index.js → dist/index.js} +100 -100
  5. package/dist/index.js.map +1 -0
  6. package/dist/src/category/category.d.ts +84 -0
  7. package/dist/src/category/category.js +288 -0
  8. package/dist/src/category/category.js.map +1 -0
  9. package/dist/src/category/categoryCollection.d.ts +32 -0
  10. package/dist/src/category/categoryCollection.js +107 -0
  11. package/dist/src/category/categoryCollection.js.map +1 -0
  12. package/dist/src/cesium/cesium3DTileFeature.d.ts +1 -0
  13. package/dist/src/cesium/cesium3DTileFeature.js +6 -0
  14. package/dist/src/cesium/cesium3DTileFeature.js.map +1 -0
  15. package/dist/src/cesium/cesium3DTilePointFeature.d.ts +1 -0
  16. package/dist/src/cesium/cesium3DTilePointFeature.js +6 -0
  17. package/dist/src/cesium/cesium3DTilePointFeature.js.map +1 -0
  18. package/dist/src/cesium/cesiumVcsCameraPrimitive.d.ts +21 -0
  19. package/dist/src/cesium/cesiumVcsCameraPrimitive.js +128 -0
  20. package/dist/src/cesium/cesiumVcsCameraPrimitive.js.map +1 -0
  21. package/dist/src/cesium/entity.d.ts +1 -0
  22. package/{src → dist/src}/cesium/entity.js +6 -17
  23. package/dist/src/cesium/entity.js.map +1 -0
  24. package/dist/src/cesium/wallpaperMaterial.d.ts +1 -0
  25. package/dist/src/cesium/wallpaperMaterial.js +61 -0
  26. package/dist/src/cesium/wallpaperMaterial.js.map +1 -0
  27. package/dist/src/classRegistry.d.ts +40 -0
  28. package/dist/src/classRegistry.js +89 -0
  29. package/dist/src/classRegistry.js.map +1 -0
  30. package/dist/src/featureProvider/abstractFeatureProvider.d.ts +76 -0
  31. package/dist/src/featureProvider/abstractFeatureProvider.js +134 -0
  32. package/dist/src/featureProvider/abstractFeatureProvider.js.map +1 -0
  33. package/dist/src/featureProvider/featureProviderSymbols.d.ts +9 -0
  34. package/{src → dist/src}/featureProvider/featureProviderSymbols.js +3 -4
  35. package/dist/src/featureProvider/featureProviderSymbols.js.map +1 -0
  36. package/dist/src/featureProvider/tileProviderFeatureProvider.d.ts +19 -0
  37. package/dist/src/featureProvider/tileProviderFeatureProvider.js +30 -0
  38. package/dist/src/featureProvider/tileProviderFeatureProvider.js.map +1 -0
  39. package/dist/src/featureProvider/wmsFeatureProvider.d.ts +91 -0
  40. package/dist/src/featureProvider/wmsFeatureProvider.js +214 -0
  41. package/dist/src/featureProvider/wmsFeatureProvider.js.map +1 -0
  42. package/dist/src/interaction/abstractInteraction.d.ts +116 -0
  43. package/dist/src/interaction/abstractInteraction.js +101 -0
  44. package/dist/src/interaction/abstractInteraction.js.map +1 -0
  45. package/dist/src/interaction/coordinateAtPixel.d.ts +10 -0
  46. package/dist/src/interaction/coordinateAtPixel.js +72 -0
  47. package/dist/src/interaction/coordinateAtPixel.js.map +1 -0
  48. package/dist/src/interaction/eventHandler.d.ts +86 -0
  49. package/dist/src/interaction/eventHandler.js +325 -0
  50. package/dist/src/interaction/eventHandler.js.map +1 -0
  51. package/dist/src/interaction/featureAtPixelInteraction.d.ts +36 -0
  52. package/dist/src/interaction/featureAtPixelInteraction.js +200 -0
  53. package/dist/src/interaction/featureAtPixelInteraction.js.map +1 -0
  54. package/dist/src/interaction/featureProviderInteraction.d.ts +6 -0
  55. package/dist/src/interaction/featureProviderInteraction.js +29 -0
  56. package/dist/src/interaction/featureProviderInteraction.js.map +1 -0
  57. package/dist/src/interaction/interactionChain.d.ts +29 -0
  58. package/dist/src/interaction/interactionChain.js +80 -0
  59. package/dist/src/interaction/interactionChain.js.map +1 -0
  60. package/dist/src/interaction/interactionType.d.ts +42 -0
  61. package/dist/src/interaction/interactionType.js +47 -0
  62. package/dist/src/interaction/interactionType.js.map +1 -0
  63. package/dist/src/layer/cesium/cesiumTilesetCesiumImpl.d.ts +44 -0
  64. package/dist/src/layer/cesium/cesiumTilesetCesiumImpl.js +248 -0
  65. package/dist/src/layer/cesium/cesiumTilesetCesiumImpl.js.map +1 -0
  66. package/dist/src/layer/cesium/clusterContext.d.ts +24 -0
  67. package/dist/src/layer/cesium/clusterContext.js +61 -0
  68. package/dist/src/layer/cesium/clusterContext.js.map +1 -0
  69. package/dist/src/layer/cesium/dataSourceCesiumImpl.d.ts +18 -0
  70. package/dist/src/layer/cesium/dataSourceCesiumImpl.js +115 -0
  71. package/dist/src/layer/cesium/dataSourceCesiumImpl.js.map +1 -0
  72. package/dist/src/layer/cesium/openStreetMapCesiumImpl.d.ts +10 -0
  73. package/dist/src/layer/cesium/openStreetMapCesiumImpl.js +18 -0
  74. package/dist/src/layer/cesium/openStreetMapCesiumImpl.js.map +1 -0
  75. package/dist/src/layer/cesium/rasterLayerCesiumImpl.d.ts +24 -0
  76. package/dist/src/layer/cesium/rasterLayerCesiumImpl.js +69 -0
  77. package/dist/src/layer/cesium/rasterLayerCesiumImpl.js.map +1 -0
  78. package/dist/src/layer/cesium/singleImageCesiumImpl.d.ts +14 -0
  79. package/dist/src/layer/cesium/singleImageCesiumImpl.js +36 -0
  80. package/dist/src/layer/cesium/singleImageCesiumImpl.js.map +1 -0
  81. package/dist/src/layer/cesium/terrainCesiumImpl.d.ts +19 -0
  82. package/dist/src/layer/cesium/terrainCesiumImpl.js +47 -0
  83. package/dist/src/layer/cesium/terrainCesiumImpl.js.map +1 -0
  84. package/dist/src/layer/cesium/tmsCesiumImpl.d.ts +14 -0
  85. package/dist/src/layer/cesium/tmsCesiumImpl.js +43 -0
  86. package/dist/src/layer/cesium/tmsCesiumImpl.js.map +1 -0
  87. package/dist/src/layer/cesium/vectorCesiumImpl.d.ts +61 -0
  88. package/dist/src/layer/cesium/vectorCesiumImpl.js +192 -0
  89. package/dist/src/layer/cesium/vectorCesiumImpl.js.map +1 -0
  90. package/dist/src/layer/cesium/vectorContext.d.ts +82 -0
  91. package/dist/src/layer/cesium/vectorContext.js +202 -0
  92. package/dist/src/layer/cesium/vectorContext.js.map +1 -0
  93. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.d.ts +31 -0
  94. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.js +78 -0
  95. package/dist/src/layer/cesium/vectorRasterTileCesiumImpl.js.map +1 -0
  96. package/dist/src/layer/cesium/vectorTileImageryProvider.d.ts +57 -0
  97. package/dist/src/layer/cesium/vectorTileImageryProvider.js +130 -0
  98. package/dist/src/layer/cesium/vectorTileImageryProvider.js.map +1 -0
  99. package/dist/src/layer/cesium/wmsCesiumImpl.d.ts +17 -0
  100. package/dist/src/layer/cesium/wmsCesiumImpl.js +53 -0
  101. package/dist/src/layer/cesium/wmsCesiumImpl.js.map +1 -0
  102. package/dist/src/layer/cesium/wmtsCesiumImpl.d.ts +22 -0
  103. package/dist/src/layer/cesium/wmtsCesiumImpl.js +64 -0
  104. package/dist/src/layer/cesium/wmtsCesiumImpl.js.map +1 -0
  105. package/dist/src/layer/cesiumTilesetLayer.d.ts +86 -0
  106. package/dist/src/layer/cesiumTilesetLayer.js +185 -0
  107. package/dist/src/layer/cesiumTilesetLayer.js.map +1 -0
  108. package/dist/src/layer/czmlLayer.d.ts +31 -0
  109. package/dist/src/layer/czmlLayer.js +112 -0
  110. package/dist/src/layer/czmlLayer.js.map +1 -0
  111. package/dist/src/layer/dataSourceLayer.d.ts +53 -0
  112. package/dist/src/layer/dataSourceLayer.js +131 -0
  113. package/dist/src/layer/dataSourceLayer.js.map +1 -0
  114. package/dist/src/layer/featureLayer.d.ts +84 -0
  115. package/dist/src/layer/featureLayer.js +154 -0
  116. package/dist/src/layer/featureLayer.js.map +1 -0
  117. package/dist/src/layer/featureStoreLayer.d.ts +121 -0
  118. package/dist/src/layer/featureStoreLayer.js +468 -0
  119. package/dist/src/layer/featureStoreLayer.js.map +1 -0
  120. package/dist/src/layer/featureStoreLayerChanges.d.ts +88 -0
  121. package/dist/src/layer/featureStoreLayerChanges.js +288 -0
  122. package/dist/src/layer/featureStoreLayerChanges.js.map +1 -0
  123. package/dist/src/layer/featureStoreLayerState.d.ts +9 -0
  124. package/dist/src/layer/featureStoreLayerState.js +11 -0
  125. package/dist/src/layer/featureStoreLayerState.js.map +1 -0
  126. package/dist/src/layer/featureVisibility.d.ts +108 -0
  127. package/dist/src/layer/featureVisibility.js +334 -0
  128. package/dist/src/layer/featureVisibility.js.map +1 -0
  129. package/dist/src/layer/geojsonHelpers.d.ts +72 -0
  130. package/dist/src/layer/geojsonHelpers.js +343 -0
  131. package/dist/src/layer/geojsonHelpers.js.map +1 -0
  132. package/dist/src/layer/geojsonLayer.d.ts +26 -0
  133. package/dist/src/layer/geojsonLayer.js +118 -0
  134. package/dist/src/layer/geojsonLayer.js.map +1 -0
  135. package/dist/src/layer/globalHider.d.ts +31 -0
  136. package/dist/src/layer/globalHider.js +93 -0
  137. package/dist/src/layer/globalHider.js.map +1 -0
  138. package/dist/src/layer/layer.d.ts +221 -0
  139. package/dist/src/layer/layer.js +491 -0
  140. package/dist/src/layer/layer.js.map +1 -0
  141. package/dist/src/layer/layerImplementation.d.ts +41 -0
  142. package/dist/src/layer/layerImplementation.js +75 -0
  143. package/dist/src/layer/layerImplementation.js.map +1 -0
  144. package/dist/src/layer/layerState.d.ts +10 -0
  145. package/dist/src/layer/layerState.js +12 -0
  146. package/dist/src/layer/layerState.js.map +1 -0
  147. package/dist/src/layer/layerSymbols.d.ts +1 -0
  148. package/{src → dist/src}/layer/layerSymbols.js +1 -5
  149. package/dist/src/layer/layerSymbols.js.map +1 -0
  150. package/dist/src/layer/oblique/layerObliqueImpl.d.ts +15 -0
  151. package/dist/src/layer/oblique/layerObliqueImpl.js +41 -0
  152. package/dist/src/layer/oblique/layerObliqueImpl.js.map +1 -0
  153. package/dist/src/layer/oblique/obliqueHelpers.d.ts +40 -0
  154. package/dist/src/layer/oblique/obliqueHelpers.js +140 -0
  155. package/dist/src/layer/oblique/obliqueHelpers.js.map +1 -0
  156. package/dist/src/layer/oblique/vectorObliqueImpl.d.ts +70 -0
  157. package/dist/src/layer/oblique/vectorObliqueImpl.js +344 -0
  158. package/dist/src/layer/oblique/vectorObliqueImpl.js.map +1 -0
  159. package/dist/src/layer/openStreetMapLayer.d.ts +51 -0
  160. package/dist/src/layer/openStreetMapLayer.js +123 -0
  161. package/dist/src/layer/openStreetMapLayer.js.map +1 -0
  162. package/dist/src/layer/openlayers/layerOpenlayersImpl.d.ts +31 -0
  163. package/dist/src/layer/openlayers/layerOpenlayersImpl.js +96 -0
  164. package/dist/src/layer/openlayers/layerOpenlayersImpl.js.map +1 -0
  165. package/dist/src/layer/openlayers/openStreetMapOpenlayersImpl.d.ts +11 -0
  166. package/dist/src/layer/openlayers/openStreetMapOpenlayersImpl.js +21 -0
  167. package/dist/src/layer/openlayers/openStreetMapOpenlayersImpl.js.map +1 -0
  168. package/dist/src/layer/openlayers/rasterLayerOpenlayersImpl.d.ts +15 -0
  169. package/dist/src/layer/openlayers/rasterLayerOpenlayersImpl.js +27 -0
  170. package/dist/src/layer/openlayers/rasterLayerOpenlayersImpl.js.map +1 -0
  171. package/dist/src/layer/openlayers/singleImageOpenlayersImpl.d.ts +18 -0
  172. package/dist/src/layer/openlayers/singleImageOpenlayersImpl.js +38 -0
  173. package/dist/src/layer/openlayers/singleImageOpenlayersImpl.js.map +1 -0
  174. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.d.ts +15 -0
  175. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.js +23 -0
  176. package/dist/src/layer/openlayers/tileDebugOpenlayersImpl.js.map +1 -0
  177. package/dist/src/layer/openlayers/tmsOpenlayersImpl.d.ts +21 -0
  178. package/dist/src/layer/openlayers/tmsOpenlayersImpl.js +55 -0
  179. package/dist/src/layer/openlayers/tmsOpenlayersImpl.js.map +1 -0
  180. package/dist/src/layer/openlayers/vectorOpenlayersImpl.d.ts +31 -0
  181. package/dist/src/layer/openlayers/vectorOpenlayersImpl.js +81 -0
  182. package/dist/src/layer/openlayers/vectorOpenlayersImpl.js.map +1 -0
  183. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.d.ts +37 -0
  184. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.js +131 -0
  185. package/dist/src/layer/openlayers/vectorTileOpenlayersImpl.js.map +1 -0
  186. package/dist/src/layer/openlayers/wmsOpenlayersImpl.d.ts +18 -0
  187. package/dist/src/layer/openlayers/wmsOpenlayersImpl.js +38 -0
  188. package/dist/src/layer/openlayers/wmsOpenlayersImpl.js.map +1 -0
  189. package/dist/src/layer/openlayers/wmtsOpenlayersImpl.d.ts +24 -0
  190. package/dist/src/layer/openlayers/wmtsOpenlayersImpl.js +99 -0
  191. package/dist/src/layer/openlayers/wmtsOpenlayersImpl.js.map +1 -0
  192. package/dist/src/layer/pointCloudLayer.d.ts +45 -0
  193. package/dist/src/layer/pointCloudLayer.js +92 -0
  194. package/dist/src/layer/pointCloudLayer.js.map +1 -0
  195. package/dist/src/layer/rasterLayer.d.ts +94 -0
  196. package/dist/src/layer/rasterLayer.js +196 -0
  197. package/dist/src/layer/rasterLayer.js.map +1 -0
  198. package/dist/src/layer/singleImageLayer.d.ts +29 -0
  199. package/dist/src/layer/singleImageLayer.js +78 -0
  200. package/dist/src/layer/singleImageLayer.js.map +1 -0
  201. package/dist/src/layer/terrainHelpers.d.ts +27 -0
  202. package/dist/src/layer/terrainHelpers.js +59 -0
  203. package/dist/src/layer/terrainHelpers.js.map +1 -0
  204. package/dist/src/layer/terrainLayer.d.ts +29 -0
  205. package/dist/src/layer/terrainLayer.js +65 -0
  206. package/dist/src/layer/terrainLayer.js.map +1 -0
  207. package/dist/src/layer/tileLoadedHelper.d.ts +5 -0
  208. package/dist/src/layer/tileLoadedHelper.js +52 -0
  209. package/dist/src/layer/tileLoadedHelper.js.map +1 -0
  210. package/dist/src/layer/tileProvider/mvtTileProvider.d.ts +31 -0
  211. package/dist/src/layer/tileProvider/mvtTileProvider.js +91 -0
  212. package/dist/src/layer/tileProvider/mvtTileProvider.js.map +1 -0
  213. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.d.ts +17 -0
  214. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.js +43 -0
  215. package/dist/src/layer/tileProvider/staticGeojsonTileProvider.js.map +1 -0
  216. package/dist/src/layer/tileProvider/tileProvider.d.ts +174 -0
  217. package/dist/src/layer/tileProvider/tileProvider.js +444 -0
  218. package/dist/src/layer/tileProvider/tileProvider.js.map +1 -0
  219. package/dist/src/layer/tileProvider/urlTemplateTileProvider.d.ts +37 -0
  220. package/dist/src/layer/tileProvider/urlTemplateTileProvider.js +89 -0
  221. package/dist/src/layer/tileProvider/urlTemplateTileProvider.js.map +1 -0
  222. package/dist/src/layer/tmsLayer.d.ts +24 -0
  223. package/dist/src/layer/tmsLayer.js +68 -0
  224. package/dist/src/layer/tmsLayer.js.map +1 -0
  225. package/dist/src/layer/vectorHelpers.d.ts +14 -0
  226. package/dist/src/layer/vectorHelpers.js +100 -0
  227. package/dist/src/layer/vectorHelpers.js.map +1 -0
  228. package/dist/src/layer/vectorLayer.d.ts +194 -0
  229. package/dist/src/layer/vectorLayer.js +413 -0
  230. package/dist/src/layer/vectorLayer.js.map +1 -0
  231. package/dist/src/layer/vectorProperties.d.ts +312 -0
  232. package/dist/src/layer/vectorProperties.js +889 -0
  233. package/dist/src/layer/vectorProperties.js.map +1 -0
  234. package/dist/src/layer/vectorSymbols.d.ts +31 -0
  235. package/{src → dist/src}/layer/vectorSymbols.js +2 -20
  236. package/dist/src/layer/vectorSymbols.js.map +1 -0
  237. package/dist/src/layer/vectorTileLayer.d.ts +92 -0
  238. package/dist/src/layer/vectorTileLayer.js +345 -0
  239. package/dist/src/layer/vectorTileLayer.js.map +1 -0
  240. package/dist/src/layer/wfsLayer.d.ts +37 -0
  241. package/dist/src/layer/wfsLayer.js +111 -0
  242. package/dist/src/layer/wfsLayer.js.map +1 -0
  243. package/dist/src/layer/wmsHelpers.d.ts +15 -0
  244. package/dist/src/layer/wmsHelpers.js +54 -0
  245. package/dist/src/layer/wmsHelpers.js.map +1 -0
  246. package/dist/src/layer/wmsLayer.d.ts +74 -0
  247. package/dist/src/layer/wmsLayer.js +205 -0
  248. package/dist/src/layer/wmsLayer.js.map +1 -0
  249. package/dist/src/layer/wmtsLayer.d.ts +48 -0
  250. package/dist/src/layer/wmtsLayer.js +141 -0
  251. package/dist/src/layer/wmtsLayer.js.map +1 -0
  252. package/dist/src/map/baseOLMap.d.ts +31 -0
  253. package/dist/src/map/baseOLMap.js +171 -0
  254. package/dist/src/map/baseOLMap.js.map +1 -0
  255. package/dist/src/map/cameraLimiter.d.ts +71 -0
  256. package/dist/src/map/cameraLimiter.js +136 -0
  257. package/dist/src/map/cameraLimiter.js.map +1 -0
  258. package/dist/src/map/cesiumMap.d.ts +234 -0
  259. package/dist/src/map/cesiumMap.js +920 -0
  260. package/dist/src/map/cesiumMap.js.map +1 -0
  261. package/dist/src/map/mapState.d.ts +10 -0
  262. package/dist/src/map/mapState.js +12 -0
  263. package/dist/src/map/mapState.js.map +1 -0
  264. package/dist/src/map/obliqueMap.d.ts +86 -0
  265. package/dist/src/map/obliqueMap.js +361 -0
  266. package/dist/src/map/obliqueMap.js.map +1 -0
  267. package/dist/src/map/openlayersMap.d.ts +23 -0
  268. package/dist/src/map/openlayersMap.js +166 -0
  269. package/dist/src/map/openlayersMap.js.map +1 -0
  270. package/dist/src/map/vcsMap.d.ts +202 -0
  271. package/dist/src/map/vcsMap.js +388 -0
  272. package/dist/src/map/vcsMap.js.map +1 -0
  273. package/dist/src/moduleIdSymbol.d.ts +1 -0
  274. package/dist/src/moduleIdSymbol.js +3 -0
  275. package/dist/src/moduleIdSymbol.js.map +1 -0
  276. package/dist/src/oblique/defaultObliqueCollection.d.ts +13 -0
  277. package/dist/src/oblique/defaultObliqueCollection.js +43 -0
  278. package/dist/src/oblique/defaultObliqueCollection.js.map +1 -0
  279. package/dist/src/oblique/helpers.d.ts +77 -0
  280. package/dist/src/oblique/helpers.js +404 -0
  281. package/dist/src/oblique/helpers.js.map +1 -0
  282. package/dist/src/oblique/obliqueCollection.d.ts +195 -0
  283. package/dist/src/oblique/obliqueCollection.js +442 -0
  284. package/dist/src/oblique/obliqueCollection.js.map +1 -0
  285. package/dist/src/oblique/obliqueDataSet.d.ts +91 -0
  286. package/dist/src/oblique/obliqueDataSet.js +270 -0
  287. package/dist/src/oblique/obliqueDataSet.js.map +1 -0
  288. package/dist/src/oblique/obliqueImage.d.ts +80 -0
  289. package/dist/src/oblique/obliqueImage.js +164 -0
  290. package/dist/src/oblique/obliqueImage.js.map +1 -0
  291. package/dist/src/oblique/obliqueImageMeta.d.ts +59 -0
  292. package/dist/src/oblique/obliqueImageMeta.js +81 -0
  293. package/dist/src/oblique/obliqueImageMeta.js.map +1 -0
  294. package/dist/src/oblique/obliqueProvider.d.ts +91 -0
  295. package/dist/src/oblique/obliqueProvider.js +337 -0
  296. package/dist/src/oblique/obliqueProvider.js.map +1 -0
  297. package/dist/src/oblique/obliqueView.d.ts +46 -0
  298. package/dist/src/oblique/obliqueView.js +139 -0
  299. package/dist/src/oblique/obliqueView.js.map +1 -0
  300. package/dist/src/oblique/obliqueViewDirection.d.ts +15 -0
  301. package/dist/src/oblique/obliqueViewDirection.js +20 -0
  302. package/dist/src/oblique/obliqueViewDirection.js.map +1 -0
  303. package/dist/src/oblique/parseImageJson.d.ts +17 -0
  304. package/dist/src/oblique/parseImageJson.js +227 -0
  305. package/dist/src/oblique/parseImageJson.js.map +1 -0
  306. package/dist/src/ol/feature.d.ts +1 -0
  307. package/dist/src/ol/feature.js +78 -0
  308. package/dist/src/ol/feature.js.map +1 -0
  309. package/dist/src/ol/geom/circle.d.ts +1 -0
  310. package/dist/src/ol/geom/circle.js +27 -0
  311. package/dist/src/ol/geom/circle.js.map +1 -0
  312. package/dist/src/ol/geom/geometryCollection.d.ts +1 -0
  313. package/dist/src/ol/geom/geometryCollection.js +31 -0
  314. package/dist/src/ol/geom/geometryCollection.js.map +1 -0
  315. package/dist/src/ol/render/canvas/canvasTileRenderer.d.ts +54 -0
  316. package/dist/src/ol/render/canvas/canvasTileRenderer.js +131 -0
  317. package/dist/src/ol/render/canvas/canvasTileRenderer.js.map +1 -0
  318. package/dist/src/ol/source/ClusterEnhancedVectorSource.d.ts +18 -0
  319. package/dist/src/ol/source/ClusterEnhancedVectorSource.js +38 -0
  320. package/dist/src/ol/source/ClusterEnhancedVectorSource.js.map +1 -0
  321. package/dist/src/ol/source/VcsCluster.d.ts +17 -0
  322. package/dist/src/ol/source/VcsCluster.js +32 -0
  323. package/dist/src/ol/source/VcsCluster.js.map +1 -0
  324. package/dist/src/overrideClassRegistry.d.ts +54 -0
  325. package/dist/src/overrideClassRegistry.js +151 -0
  326. package/dist/src/overrideClassRegistry.js.map +1 -0
  327. package/dist/src/style/arcStyle.d.ts +75 -0
  328. package/dist/src/style/arcStyle.js +256 -0
  329. package/dist/src/style/arcStyle.js.map +1 -0
  330. package/dist/src/style/arrowStyle.d.ts +67 -0
  331. package/dist/src/style/arrowStyle.js +188 -0
  332. package/dist/src/style/arrowStyle.js.map +1 -0
  333. package/dist/src/style/declarativeStyleItem.d.ts +74 -0
  334. package/dist/src/style/declarativeStyleItem.js +420 -0
  335. package/dist/src/style/declarativeStyleItem.js.map +1 -0
  336. package/dist/src/style/shapesCategory.d.ts +13 -0
  337. package/dist/src/style/shapesCategory.js +46 -0
  338. package/dist/src/style/shapesCategory.js.map +1 -0
  339. package/dist/src/style/styleFactory.d.ts +4 -0
  340. package/dist/src/style/styleFactory.js +25 -0
  341. package/dist/src/style/styleFactory.js.map +1 -0
  342. package/dist/src/style/styleHelpers.d.ts +106 -0
  343. package/dist/src/style/styleHelpers.js +415 -0
  344. package/dist/src/style/styleHelpers.js.map +1 -0
  345. package/dist/src/style/styleItem.d.ts +58 -0
  346. package/dist/src/style/styleItem.js +97 -0
  347. package/dist/src/style/styleItem.js.map +1 -0
  348. package/dist/src/style/vectorStyleItem.d.ts +123 -0
  349. package/dist/src/style/vectorStyleItem.js +723 -0
  350. package/dist/src/style/vectorStyleItem.js.map +1 -0
  351. package/dist/src/style/writeStyle.d.ts +6 -0
  352. package/dist/src/style/writeStyle.js +34 -0
  353. package/dist/src/style/writeStyle.js.map +1 -0
  354. package/dist/src/util/clipping/clippingObject.d.ts +100 -0
  355. package/dist/src/util/clipping/clippingObject.js +274 -0
  356. package/dist/src/util/clipping/clippingObject.js.map +1 -0
  357. package/dist/src/util/clipping/clippingObjectManager.d.ts +69 -0
  358. package/dist/src/util/clipping/clippingObjectManager.js +221 -0
  359. package/dist/src/util/clipping/clippingObjectManager.js.map +1 -0
  360. package/dist/src/util/clipping/clippingPlaneHelper.d.ts +66 -0
  361. package/dist/src/util/clipping/clippingPlaneHelper.js +316 -0
  362. package/dist/src/util/clipping/clippingPlaneHelper.js.map +1 -0
  363. package/dist/src/util/collection.d.ts +76 -0
  364. package/dist/src/util/collection.js +159 -0
  365. package/dist/src/util/collection.js.map +1 -0
  366. package/dist/src/util/editor/createFeatureSession.d.ts +38 -0
  367. package/dist/src/util/editor/createFeatureSession.js +163 -0
  368. package/dist/src/util/editor/createFeatureSession.js.map +1 -0
  369. package/dist/src/util/editor/editFeaturesSession.d.ts +29 -0
  370. package/dist/src/util/editor/editFeaturesSession.js +251 -0
  371. package/dist/src/util/editor/editFeaturesSession.js.map +1 -0
  372. package/dist/src/util/editor/editGeometrySession.d.ts +16 -0
  373. package/dist/src/util/editor/editGeometrySession.js +331 -0
  374. package/dist/src/util/editor/editGeometrySession.js.map +1 -0
  375. package/dist/src/util/editor/editorHelpers.d.ts +54 -0
  376. package/dist/src/util/editor/editorHelpers.js +155 -0
  377. package/dist/src/util/editor/editorHelpers.js.map +1 -0
  378. package/dist/src/util/editor/editorSessionHelpers.d.ts +49 -0
  379. package/dist/src/util/editor/editorSessionHelpers.js +92 -0
  380. package/dist/src/util/editor/editorSessionHelpers.js.map +1 -0
  381. package/dist/src/util/editor/editorSymbols.d.ts +17 -0
  382. package/{src → dist/src}/util/editor/editorSymbols.js +3 -6
  383. package/dist/src/util/editor/editorSymbols.js.map +1 -0
  384. package/dist/src/util/editor/interactions/createBBoxInteraction.d.ts +27 -0
  385. package/dist/src/util/editor/interactions/createBBoxInteraction.js +107 -0
  386. package/dist/src/util/editor/interactions/createBBoxInteraction.js.map +1 -0
  387. package/dist/src/util/editor/interactions/createCircleInteraction.d.ts +28 -0
  388. package/dist/src/util/editor/interactions/createCircleInteraction.js +77 -0
  389. package/dist/src/util/editor/interactions/createCircleInteraction.js.map +1 -0
  390. package/dist/src/util/editor/interactions/createLineStringInteraction.d.ts +28 -0
  391. package/dist/src/util/editor/interactions/createLineStringInteraction.js +79 -0
  392. package/dist/src/util/editor/interactions/createLineStringInteraction.js.map +1 -0
  393. package/dist/src/util/editor/interactions/createPointInteraction.d.ts +21 -0
  394. package/dist/src/util/editor/interactions/createPointInteraction.js +47 -0
  395. package/dist/src/util/editor/interactions/createPointInteraction.js.map +1 -0
  396. package/dist/src/util/editor/interactions/createPolygonInteraction.d.ts +30 -0
  397. package/dist/src/util/editor/interactions/createPolygonInteraction.js +91 -0
  398. package/dist/src/util/editor/interactions/createPolygonInteraction.js.map +1 -0
  399. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.d.ts +19 -0
  400. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.js +55 -0
  401. package/dist/src/util/editor/interactions/editFeaturesMouseOverInteraction.js.map +1 -0
  402. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.d.ts +35 -0
  403. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js +77 -0
  404. package/dist/src/util/editor/interactions/editGeometryMouseOverInteraction.js.map +1 -0
  405. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.d.ts +16 -0
  406. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.js +37 -0
  407. package/dist/src/util/editor/interactions/ensureHandlerSelectionInteraction.js.map +1 -0
  408. package/dist/src/util/editor/interactions/insertVertexInteraction.d.ts +23 -0
  409. package/dist/src/util/editor/interactions/insertVertexInteraction.js +61 -0
  410. package/dist/src/util/editor/interactions/insertVertexInteraction.js.map +1 -0
  411. package/dist/src/util/editor/interactions/mapInteractionController.d.ts +11 -0
  412. package/dist/src/util/editor/interactions/mapInteractionController.js +81 -0
  413. package/dist/src/util/editor/interactions/mapInteractionController.js.map +1 -0
  414. package/dist/src/util/editor/interactions/removeVertexInteraction.d.ts +14 -0
  415. package/dist/src/util/editor/interactions/removeVertexInteraction.js +27 -0
  416. package/dist/src/util/editor/interactions/removeVertexInteraction.js.map +1 -0
  417. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.d.ts +35 -0
  418. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.js +99 -0
  419. package/dist/src/util/editor/interactions/selectFeatureMouseOverInteraction.js.map +1 -0
  420. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.d.ts +36 -0
  421. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.js +96 -0
  422. package/dist/src/util/editor/interactions/selectMultiFeatureInteraction.js.map +1 -0
  423. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.d.ts +35 -0
  424. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.js +72 -0
  425. package/dist/src/util/editor/interactions/selectSingleFeatureInteraction.js.map +1 -0
  426. package/dist/src/util/editor/interactions/translateVertexInteraction.d.ts +15 -0
  427. package/dist/src/util/editor/interactions/translateVertexInteraction.js +41 -0
  428. package/dist/src/util/editor/interactions/translateVertexInteraction.js.map +1 -0
  429. package/dist/src/util/editor/selectFeaturesSession.d.ts +30 -0
  430. package/dist/src/util/editor/selectFeaturesSession.js +227 -0
  431. package/dist/src/util/editor/selectFeaturesSession.js.map +1 -0
  432. package/dist/src/util/editor/transformation/create2DHandlers.d.ts +12 -0
  433. package/dist/src/util/editor/transformation/create2DHandlers.js +295 -0
  434. package/dist/src/util/editor/transformation/create2DHandlers.js.map +1 -0
  435. package/dist/src/util/editor/transformation/create3DHandlers.d.ts +10 -0
  436. package/dist/src/util/editor/transformation/create3DHandlers.js +488 -0
  437. package/dist/src/util/editor/transformation/create3DHandlers.js.map +1 -0
  438. package/dist/src/util/editor/transformation/extrudeInteraction.d.ts +20 -0
  439. package/dist/src/util/editor/transformation/extrudeInteraction.js +55 -0
  440. package/dist/src/util/editor/transformation/extrudeInteraction.js.map +1 -0
  441. package/dist/src/util/editor/transformation/rotateInteraction.d.ts +25 -0
  442. package/dist/src/util/editor/transformation/rotateInteraction.js +106 -0
  443. package/dist/src/util/editor/transformation/rotateInteraction.js.map +1 -0
  444. package/dist/src/util/editor/transformation/scaleInteraction.d.ts +26 -0
  445. package/dist/src/util/editor/transformation/scaleInteraction.js +118 -0
  446. package/dist/src/util/editor/transformation/scaleInteraction.js.map +1 -0
  447. package/dist/src/util/editor/transformation/transformationHandler.d.ts +18 -0
  448. package/dist/src/util/editor/transformation/transformationHandler.js +133 -0
  449. package/dist/src/util/editor/transformation/transformationHandler.js.map +1 -0
  450. package/dist/src/util/editor/transformation/transformationTypes.d.ts +53 -0
  451. package/dist/src/util/editor/transformation/transformationTypes.js +30 -0
  452. package/dist/src/util/editor/transformation/transformationTypes.js.map +1 -0
  453. package/dist/src/util/editor/transformation/translateInteraction.d.ts +29 -0
  454. package/dist/src/util/editor/transformation/translateInteraction.js +151 -0
  455. package/dist/src/util/editor/transformation/translateInteraction.js.map +1 -0
  456. package/dist/src/util/editor/validateGeoemetry.d.ts +2 -0
  457. package/dist/src/util/editor/validateGeoemetry.js +24 -0
  458. package/dist/src/util/editor/validateGeoemetry.js.map +1 -0
  459. package/dist/src/util/exclusiveManager.d.ts +39 -0
  460. package/dist/src/util/exclusiveManager.js +103 -0
  461. package/dist/src/util/exclusiveManager.js.map +1 -0
  462. package/dist/src/util/extent.d.ts +33 -0
  463. package/dist/src/util/extent.js +84 -0
  464. package/dist/src/util/extent.js.map +1 -0
  465. package/dist/src/util/featureconverter/arcToCesium.d.ts +22 -0
  466. package/dist/src/util/featureconverter/arcToCesium.js +57 -0
  467. package/dist/src/util/featureconverter/arcToCesium.js.map +1 -0
  468. package/dist/src/util/featureconverter/circleToCesium.d.ts +30 -0
  469. package/dist/src/util/featureconverter/circleToCesium.js +128 -0
  470. package/dist/src/util/featureconverter/circleToCesium.js.map +1 -0
  471. package/dist/src/util/featureconverter/convert.d.ts +16 -0
  472. package/dist/src/util/featureconverter/convert.js +76 -0
  473. package/dist/src/util/featureconverter/convert.js.map +1 -0
  474. package/dist/src/util/featureconverter/extent3D.d.ts +33 -0
  475. package/dist/src/util/featureconverter/extent3D.js +150 -0
  476. package/dist/src/util/featureconverter/extent3D.js.map +1 -0
  477. package/dist/src/util/featureconverter/featureconverterHelper.d.ts +35 -0
  478. package/dist/src/util/featureconverter/featureconverterHelper.js +447 -0
  479. package/dist/src/util/featureconverter/featureconverterHelper.js.map +1 -0
  480. package/dist/src/util/featureconverter/lineStringToCesium.d.ts +41 -0
  481. package/dist/src/util/featureconverter/lineStringToCesium.js +172 -0
  482. package/dist/src/util/featureconverter/lineStringToCesium.js.map +1 -0
  483. package/dist/src/util/featureconverter/pointHelpers.d.ts +13 -0
  484. package/dist/src/util/featureconverter/pointHelpers.js +243 -0
  485. package/dist/src/util/featureconverter/pointHelpers.js.map +1 -0
  486. package/dist/src/util/featureconverter/pointToCesium.d.ts +36 -0
  487. package/dist/src/util/featureconverter/pointToCesium.js +252 -0
  488. package/dist/src/util/featureconverter/pointToCesium.js.map +1 -0
  489. package/dist/src/util/featureconverter/polygonToCesium.d.ts +33 -0
  490. package/dist/src/util/featureconverter/polygonToCesium.js +152 -0
  491. package/dist/src/util/featureconverter/polygonToCesium.js.map +1 -0
  492. package/dist/src/util/fetch.d.ts +3 -0
  493. package/dist/src/util/fetch.js +16 -0
  494. package/dist/src/util/fetch.js.map +1 -0
  495. package/dist/src/util/geometryHelpers.d.ts +14 -0
  496. package/dist/src/util/geometryHelpers.js +132 -0
  497. package/dist/src/util/geometryHelpers.js.map +1 -0
  498. package/dist/src/util/indexedCollection.d.ts +63 -0
  499. package/dist/src/util/indexedCollection.js +137 -0
  500. package/dist/src/util/indexedCollection.js.map +1 -0
  501. package/dist/src/util/isMobile.d.ts +4 -0
  502. package/dist/src/util/isMobile.js +12 -0
  503. package/dist/src/util/isMobile.js.map +1 -0
  504. package/dist/src/util/layerCollection.d.ts +92 -0
  505. package/dist/src/util/layerCollection.js +247 -0
  506. package/dist/src/util/layerCollection.js.map +1 -0
  507. package/dist/src/util/locale.d.ts +4 -0
  508. package/dist/src/util/locale.js +12 -0
  509. package/dist/src/util/locale.js.map +1 -0
  510. package/dist/src/util/mapCollection.d.ts +112 -0
  511. package/dist/src/util/mapCollection.js +312 -0
  512. package/dist/src/util/mapCollection.js.map +1 -0
  513. package/dist/src/util/math.d.ts +45 -0
  514. package/dist/src/util/math.js +136 -0
  515. package/dist/src/util/math.js.map +1 -0
  516. package/dist/src/util/overrideCollection.d.ts +58 -0
  517. package/dist/src/util/overrideCollection.js +176 -0
  518. package/dist/src/util/overrideCollection.js.map +1 -0
  519. package/dist/src/util/projection.d.ts +98 -0
  520. package/dist/src/util/projection.js +207 -0
  521. package/dist/src/util/projection.js.map +1 -0
  522. package/dist/src/util/urlHelpers.d.ts +1 -0
  523. package/dist/src/util/urlHelpers.js +12 -0
  524. package/dist/src/util/urlHelpers.js.map +1 -0
  525. package/dist/src/util/viewpoint.d.ts +154 -0
  526. package/dist/src/util/viewpoint.js +262 -0
  527. package/dist/src/util/viewpoint.js.map +1 -0
  528. package/dist/src/vcsApp.d.ts +98 -0
  529. package/dist/src/vcsApp.js +330 -0
  530. package/dist/src/vcsApp.js.map +1 -0
  531. package/dist/src/vcsEvent.d.ts +32 -0
  532. package/dist/src/vcsEvent.js +60 -0
  533. package/dist/src/vcsEvent.js.map +1 -0
  534. package/dist/src/vcsModule.d.ts +60 -0
  535. package/dist/src/vcsModule.js +76 -0
  536. package/dist/src/vcsModule.js.map +1 -0
  537. package/dist/src/vcsModuleHelpers.d.ts +23 -0
  538. package/dist/src/vcsModuleHelpers.js +72 -0
  539. package/dist/src/vcsModuleHelpers.js.map +1 -0
  540. package/dist/src/vcsObject.d.ts +35 -0
  541. package/dist/src/vcsObject.js +45 -0
  542. package/dist/src/vcsObject.js.map +1 -0
  543. package/dist/tests/unit/helpers/cesiumHelpers.d.ts +108 -0
  544. package/dist/tests/unit/helpers/cesiumHelpers.js +277 -0
  545. package/dist/tests/unit/helpers/cesiumHelpers.js.map +1 -0
  546. package/dist/tests/unit/helpers/getFileNameFromUrl.d.ts +6 -0
  547. package/{tests → dist/tests}/unit/helpers/getFileNameFromUrl.js +3 -3
  548. package/dist/tests/unit/helpers/getFileNameFromUrl.js.map +1 -0
  549. package/dist/tests/unit/helpers/helpers.d.ts +12 -0
  550. package/{tests → dist/tests}/unit/helpers/helpers.js +8 -17
  551. package/dist/tests/unit/helpers/helpers.js.map +1 -0
  552. package/dist/tests/unit/helpers/imageHelpers.d.ts +20 -0
  553. package/dist/tests/unit/helpers/imageHelpers.js +21 -0
  554. package/dist/tests/unit/helpers/imageHelpers.js.map +1 -0
  555. package/dist/tests/unit/helpers/importJSON.d.ts +5 -0
  556. package/dist/tests/unit/helpers/importJSON.js +15 -0
  557. package/dist/tests/unit/helpers/importJSON.js.map +1 -0
  558. package/dist/tests/unit/helpers/obliqueData.d.ts +21 -0
  559. package/dist/tests/unit/helpers/obliqueData.js +76 -0
  560. package/dist/tests/unit/helpers/obliqueData.js.map +1 -0
  561. package/dist/tests/unit/helpers/obliqueHelpers.d.ts +33 -0
  562. package/{tests → dist/tests}/unit/helpers/obliqueHelpers.js +45 -63
  563. package/dist/tests/unit/helpers/obliqueHelpers.js.map +1 -0
  564. package/dist/tests/unit/helpers/openlayersHelpers.d.ts +11 -0
  565. package/dist/tests/unit/helpers/openlayersHelpers.js +24 -0
  566. package/dist/tests/unit/helpers/openlayersHelpers.js.map +1 -0
  567. package/dist/tests/unit/helpers/terrain/terrainData.d.ts +10 -0
  568. package/dist/tests/unit/helpers/terrain/terrainData.js +40 -0
  569. package/dist/tests/unit/helpers/terrain/terrainData.js.map +1 -0
  570. package/index.ts +721 -0
  571. package/package.json +57 -29
  572. package/src/category/{category.js → category.ts} +131 -198
  573. package/src/category/{categoryCollection.js → categoryCollection.ts} +35 -49
  574. package/src/cesium/cesium.d.ts +253 -0
  575. package/src/cesium/cesium3DTileFeature.ts +10 -0
  576. package/src/cesium/cesium3DTilePointFeature.ts +10 -0
  577. package/src/cesium/{cesiumVcsCameraPrimitive.js → cesiumVcsCameraPrimitive.ts} +44 -23
  578. package/src/cesium/entity.ts +26 -0
  579. package/src/cesium/wallpaperMaterial.js +0 -1
  580. package/src/classRegistry.ts +147 -0
  581. package/src/featureProvider/{abstractFeatureProvider.js → abstractFeatureProvider.ts} +72 -76
  582. package/src/featureProvider/featureProviderSymbols.ts +10 -0
  583. package/src/featureProvider/tileProviderFeatureProvider.ts +55 -0
  584. package/src/featureProvider/{wmsFeatureProvider.js → wmsFeatureProvider.ts} +141 -121
  585. package/src/global.d.ts +12 -0
  586. package/src/interaction/abstractInteraction.ts +191 -0
  587. package/src/interaction/{coordinateAtPixel.js → coordinateAtPixel.ts} +24 -43
  588. package/src/interaction/{eventHandler.js → eventHandler.ts} +115 -211
  589. package/src/interaction/{featureAtPixelInteraction.js → featureAtPixelInteraction.ts} +79 -117
  590. package/src/interaction/{featureProviderInteraction.js → featureProviderInteraction.ts} +11 -14
  591. package/src/interaction/{interactionChain.js → interactionChain.ts} +15 -39
  592. package/src/interaction/interactionType.ts +45 -0
  593. package/src/layer/cesium/{cesiumTilesetCesiumImpl.js → cesiumTilesetCesiumImpl.ts} +91 -121
  594. package/src/layer/cesium/clusterContext.ts +136 -0
  595. package/src/layer/cesium/{dataSourceCesiumImpl.js → dataSourceCesiumImpl.ts} +35 -61
  596. package/src/layer/cesium/{openStreetMapCesiumImpl.js → openStreetMapCesiumImpl.ts} +2 -8
  597. package/src/layer/cesium/{rasterLayerCesiumImpl.js → rasterLayerCesiumImpl.ts} +38 -55
  598. package/src/layer/cesium/{singleImageCesiumImpl.js → singleImageCesiumImpl.ts} +10 -16
  599. package/src/layer/cesium/terrainCesiumImpl.ts +63 -0
  600. package/src/layer/cesium/{tmsCesiumImpl.js → tmsCesiumImpl.ts} +10 -14
  601. package/src/layer/cesium/{vectorCesiumImpl.js → vectorCesiumImpl.ts} +91 -140
  602. package/src/layer/cesium/vectorContext.ts +498 -0
  603. package/src/layer/cesium/{vectorRasterTileCesiumImpl.js → vectorRasterTileCesiumImpl.ts} +31 -47
  604. package/src/layer/cesium/{vectorTileImageryProvider.js → vectorTileImageryProvider.ts} +73 -117
  605. package/src/layer/cesium/{wmsCesiumImpl.js → wmsCesiumImpl.ts} +16 -23
  606. package/src/layer/cesium/{wmtsCesiumImpl.js → wmtsCesiumImpl.ts} +28 -48
  607. package/src/layer/{cesiumTilesetLayer.js → cesiumTilesetLayer.ts} +92 -140
  608. package/src/layer/czmlLayer.ts +141 -0
  609. package/src/layer/dataSourceLayer.ts +166 -0
  610. package/src/layer/featureLayer.ts +224 -0
  611. package/src/layer/{featureStoreLayer.js → featureStoreLayer.ts} +209 -277
  612. package/src/layer/{featureStoreLayerChanges.js → featureStoreLayerChanges.ts} +138 -164
  613. package/src/layer/featureStoreLayerState.ts +10 -0
  614. package/src/layer/{featureVisibility.js → featureVisibility.ts} +101 -143
  615. package/src/layer/{geojsonHelpers.js → geojsonHelpers.ts} +167 -139
  616. package/src/layer/{geojsonLayer.js → geojsonLayer.ts} +24 -64
  617. package/src/layer/{globalHider.js → globalHider.ts} +23 -52
  618. package/src/layer/{layer.js → layer.ts} +196 -346
  619. package/src/layer/{layerImplementation.js → layerImplementation.ts} +30 -48
  620. package/src/layer/layerState.ts +11 -0
  621. package/src/layer/layerSymbols.ts +2 -0
  622. package/src/layer/oblique/layerObliqueImpl.ts +49 -0
  623. package/src/layer/oblique/{obliqueHelpers.js → obliqueHelpers.ts} +56 -60
  624. package/src/layer/oblique/vectorObliqueImpl.ts +497 -0
  625. package/src/layer/{openStreetMapLayer.js → openStreetMapLayer.ts} +61 -92
  626. package/src/layer/openlayers/{layerOpenlayersImpl.js → layerOpenlayersImpl.ts} +36 -68
  627. package/src/layer/openlayers/{openStreetMapOpenlayersImpl.js → openStreetMapOpenlayersImpl.ts} +2 -7
  628. package/src/layer/openlayers/rasterLayerOpenlayersImpl.ts +45 -0
  629. package/src/layer/openlayers/{singleImageOpenlayersImpl.js → singleImageOpenlayersImpl.ts} +13 -16
  630. package/src/layer/openlayers/{tileDebugOpenlayersImpl.js → tileDebugOpenlayersImpl.ts} +10 -18
  631. package/src/layer/openlayers/{tmsOpenlayersImpl.js → tmsOpenlayersImpl.ts} +19 -18
  632. package/src/layer/openlayers/{vectorOpenlayersImpl.js → vectorOpenlayersImpl.ts} +38 -53
  633. package/src/layer/openlayers/{vectorTileOpenlayersImpl.js → vectorTileOpenlayersImpl.ts} +57 -76
  634. package/src/layer/openlayers/{wmsOpenlayersImpl.js → wmsOpenlayersImpl.ts} +14 -22
  635. package/src/layer/openlayers/{wmtsOpenlayersImpl.js → wmtsOpenlayersImpl.ts} +34 -57
  636. package/src/layer/{pointCloudLayer.js → pointCloudLayer.ts} +44 -73
  637. package/src/layer/{rasterLayer.js → rasterLayer.ts} +109 -129
  638. package/src/layer/{singleImageLayer.js → singleImageLayer.ts} +30 -43
  639. package/src/layer/{terrainHelpers.js → terrainHelpers.ts} +31 -31
  640. package/src/layer/{terrainLayer.js → terrainLayer.ts} +35 -59
  641. package/src/layer/tileLoadedHelper.ts +70 -0
  642. package/src/layer/tileProvider/{mvtTileProvider.js → mvtTileProvider.ts} +38 -64
  643. package/src/layer/tileProvider/{staticGeojsonTileProvider.js → staticGeojsonTileProvider.ts} +17 -44
  644. package/src/layer/tileProvider/{tileProvider.js → tileProvider.ts} +164 -234
  645. package/src/layer/tileProvider/{urlTemplateTileProvider.js → urlTemplateTileProvider.ts} +34 -61
  646. package/src/layer/{tmsLayer.js → tmsLayer.ts} +35 -54
  647. package/src/layer/{vectorHelpers.js → vectorHelpers.ts} +24 -26
  648. package/src/layer/{vectorLayer.js → vectorLayer.ts} +224 -256
  649. package/src/layer/{vectorProperties.js → vectorProperties.ts} +420 -689
  650. package/src/layer/vectorSymbols.ts +41 -0
  651. package/src/layer/{vectorTileLayer.js → vectorTileLayer.ts} +148 -215
  652. package/src/layer/{wfsLayer.js → wfsLayer.ts} +49 -73
  653. package/src/layer/{wmsHelpers.js → wmsHelpers.ts} +21 -21
  654. package/src/layer/{wmsLayer.js → wmsLayer.ts} +90 -86
  655. package/src/layer/{wmtsLayer.js → wmtsLayer.ts} +82 -94
  656. package/src/map/baseOLMap.ts +238 -0
  657. package/src/map/{cameraLimiter.js → cameraLimiter.ts} +80 -97
  658. package/src/map/{cesiumMap.js → cesiumMap.ts} +363 -387
  659. package/src/map/mapState.ts +11 -0
  660. package/src/map/{obliqueMap.js → obliqueMap.ts} +110 -197
  661. package/src/map/{openlayersMap.js → openlayersMap.ts} +44 -70
  662. package/src/map/{vcsMap.js → vcsMap.ts} +149 -229
  663. package/src/moduleIdSymbol.ts +2 -0
  664. package/src/oblique/{defaultObliqueCollection.js → defaultObliqueCollection.ts} +6 -16
  665. package/src/oblique/{helpers.js → helpers.ts} +117 -86
  666. package/src/oblique/{obliqueCollection.js → obliqueCollection.ts} +178 -265
  667. package/src/oblique/{obliqueDataSet.js → obliqueDataSet.ts} +104 -162
  668. package/src/oblique/{obliqueImage.js → obliqueImage.ts} +93 -113
  669. package/src/oblique/obliqueImageMeta.ts +125 -0
  670. package/src/oblique/{obliqueProvider.js → obliqueProvider.ts} +115 -150
  671. package/src/oblique/{obliqueView.js → obliqueView.ts} +90 -80
  672. package/src/oblique/obliqueViewDirection.ts +25 -0
  673. package/src/oblique/{parseImageJson.js → parseImageJson.ts} +120 -73
  674. package/src/ol/{feature.js → feature.ts} +19 -6
  675. package/src/ol/geojson.d.ts +34 -0
  676. package/src/ol/geom/{circle.js → circle.ts} +12 -4
  677. package/src/ol/ol.d.ts +142 -0
  678. package/src/ol/render/canvas/canvasTileRenderer.js +0 -3
  679. package/src/{overrideClassRegistry.js → overrideClassRegistry.ts} +52 -73
  680. package/src/style/{arcStyle.js → arcStyle.ts} +118 -137
  681. package/src/style/{arrowStyle.js → arrowStyle.ts} +85 -86
  682. package/src/style/{declarativeStyleItem.js → declarativeStyleItem.ts} +138 -271
  683. package/src/style/{shapesCategory.js → shapesCategory.ts} +13 -24
  684. package/src/style/{styleFactory.js → styleFactory.ts} +16 -10
  685. package/src/style/{styleHelpers.js → styleHelpers.ts} +141 -183
  686. package/src/style/styleItem.ts +133 -0
  687. package/src/style/{vectorStyleItem.js → vectorStyleItem.ts} +193 -322
  688. package/src/style/{writeStyle.js → writeStyle.ts} +11 -13
  689. package/src/util/clipping/{clippingObject.js → clippingObject.ts} +107 -166
  690. package/src/util/clipping/{clippingObjectManager.js → clippingObjectManager.ts} +57 -118
  691. package/src/util/clipping/{clippingPlaneHelper.js → clippingPlaneHelper.ts} +122 -118
  692. package/src/util/{collection.js → collection.ts} +48 -78
  693. package/src/util/editor/{createFeatureSession.js → createFeatureSession.ts} +92 -55
  694. package/src/util/editor/{editFeaturesSession.js → editFeaturesSession.ts} +105 -87
  695. package/src/util/editor/{editGeometrySession.js → editGeometrySession.ts} +125 -125
  696. package/src/util/editor/{editorHelpers.js → editorHelpers.ts} +86 -66
  697. package/src/util/editor/{editorSessionHelpers.js → editorSessionHelpers.ts} +51 -46
  698. package/src/util/editor/editorSymbols.ts +17 -0
  699. package/src/util/editor/interactions/{createBBoxInteraction.js → createBBoxInteraction.ts} +27 -46
  700. package/src/util/editor/interactions/{createCircleInteraction.js → createCircleInteraction.ts} +25 -42
  701. package/src/util/editor/interactions/{createLineStringInteraction.js → createLineStringInteraction.ts} +26 -42
  702. package/src/util/editor/interactions/{createPointInteraction.js → createPointInteraction.ts} +18 -29
  703. package/src/util/editor/interactions/{createPolygonInteraction.js → createPolygonInteraction.ts} +35 -56
  704. package/src/util/editor/interactions/{editFeaturesMouseOverInteraction.js → editFeaturesMouseOverInteraction.ts} +16 -36
  705. package/src/util/editor/interactions/{editGeometryMouseOverInteraction.js → editGeometryMouseOverInteraction.ts} +18 -45
  706. package/src/util/editor/interactions/ensureHandlerSelectionInteraction.ts +52 -0
  707. package/src/util/editor/interactions/{insertVertexInteraction.js → insertVertexInteraction.ts} +27 -39
  708. package/src/util/editor/interactions/mapInteractionController.ts +115 -0
  709. package/src/util/editor/interactions/{removeVertexInteraction.js → removeVertexInteraction.ts} +11 -16
  710. package/src/util/editor/interactions/{selectFeatureMouseOverInteraction.js → selectFeatureMouseOverInteraction.ts} +39 -64
  711. package/src/util/editor/interactions/selectMultiFeatureInteraction.ts +135 -0
  712. package/src/util/editor/interactions/selectSingleFeatureInteraction.ts +108 -0
  713. package/src/util/editor/interactions/{translateVertexInteraction.js → translateVertexInteraction.ts} +14 -23
  714. package/src/util/editor/{selectFeaturesSession.js → selectFeaturesSession.ts} +100 -90
  715. package/src/util/editor/transformation/{create2DHandlers.js → create2DHandlers.ts} +121 -92
  716. package/src/util/editor/transformation/{create3DHandlers.js → create3DHandlers.ts} +121 -135
  717. package/src/util/editor/transformation/extrudeInteraction.ts +87 -0
  718. package/src/util/editor/transformation/{rotateInteraction.js → rotateInteraction.ts} +67 -91
  719. package/src/util/editor/transformation/{scaleInteraction.js → scaleInteraction.ts} +62 -78
  720. package/src/util/editor/transformation/{transformationHandler.js → transformationHandler.ts} +47 -51
  721. package/src/util/editor/transformation/transformationTypes.ts +71 -0
  722. package/src/util/editor/transformation/{translateInteraction.js → translateInteraction.ts} +85 -100
  723. package/src/util/editor/{validateGeoemetry.js → validateGeoemetry.ts} +9 -11
  724. package/src/util/{exclusiveManager.js → exclusiveManager.ts} +23 -42
  725. package/src/util/{extent.js → extent.ts} +40 -66
  726. package/src/util/featureconverter/{arcToCesium.js → arcToCesium.ts} +36 -31
  727. package/src/util/featureconverter/{circleToCesium.js → circleToCesium.ts} +55 -92
  728. package/src/util/featureconverter/{convert.js → convert.ts} +45 -46
  729. package/src/util/featureconverter/{extent3D.js → extent3D.ts} +50 -117
  730. package/src/util/featureconverter/{featureconverterHelper.js → featureconverterHelper.ts} +132 -156
  731. package/src/util/featureconverter/{lineStringToCesium.js → lineStringToCesium.ts} +81 -120
  732. package/src/util/featureconverter/{pointHelpers.js → pointHelpers.ts} +93 -104
  733. package/src/util/featureconverter/{pointToCesium.js → pointToCesium.ts} +55 -68
  734. package/src/util/featureconverter/{polygonToCesium.js → polygonToCesium.ts} +68 -96
  735. package/src/util/fetch.ts +28 -0
  736. package/src/util/{geometryHelpers.js → geometryHelpers.ts} +53 -63
  737. package/src/util/{indexedCollection.js → indexedCollection.ts} +39 -82
  738. package/src/util/{isMobile.js → isMobile.ts} +5 -5
  739. package/src/util/{layerCollection.js → layerCollection.ts} +90 -108
  740. package/src/util/{locale.js → locale.ts} +1 -2
  741. package/src/util/{mapCollection.js → mapCollection.ts} +103 -180
  742. package/src/util/{math.js → math.ts} +41 -54
  743. package/src/util/overrideCollection.ts +286 -0
  744. package/src/util/projection.ts +288 -0
  745. package/src/util/{urlHelpers.js → urlHelpers.ts} +1 -5
  746. package/src/util/{viewpoint.js → viewpoint.ts} +167 -136
  747. package/src/{vcsApp.js → vcsApp.ts} +123 -285
  748. package/src/{vcsEvent.js → vcsEvent.ts} +17 -36
  749. package/src/vcsModule.ts +113 -0
  750. package/src/vcsModuleHelpers.ts +128 -0
  751. package/src/vcsObject.ts +72 -0
  752. package/index.d.ts +0 -8937
  753. package/src/cesium/cesium3DTileFeature.js +0 -9
  754. package/src/cesium/cesium3DTilePointFeature.js +0 -9
  755. package/src/classRegistry.js +0 -169
  756. package/src/featureProvider/tileProviderFeatureProvider.js +0 -70
  757. package/src/interaction/abstractInteraction.js +0 -161
  758. package/src/interaction/interactionType.js +0 -107
  759. package/src/layer/cesium/clusterContext.js +0 -120
  760. package/src/layer/cesium/terrainCesiumImpl.js +0 -79
  761. package/src/layer/cesium/vectorContext.js +0 -363
  762. package/src/layer/cesium/x3dmHelper.js +0 -25
  763. package/src/layer/czmlLayer.js +0 -144
  764. package/src/layer/dataSourceLayer.js +0 -224
  765. package/src/layer/featureLayer.js +0 -276
  766. package/src/layer/featureStoreLayerState.js +0 -18
  767. package/src/layer/layerState.js +0 -16
  768. package/src/layer/oblique/layerObliqueImpl.js +0 -78
  769. package/src/layer/oblique/vectorObliqueImpl.js +0 -587
  770. package/src/layer/openlayers/rasterLayerOpenlayersImpl.js +0 -44
  771. package/src/layer/tileLoadedHelper.js +0 -77
  772. package/src/map/baseOLMap.js +0 -305
  773. package/src/map/mapState.js +0 -16
  774. package/src/oblique/obliqueImageMeta.js +0 -126
  775. package/src/oblique/obliqueViewDirection.js +0 -38
  776. package/src/style/styleItem.js +0 -174
  777. package/src/util/editor/interactions/ensureHandlerSelectionInteraction.js +0 -50
  778. package/src/util/editor/interactions/mapInteractionController.js +0 -119
  779. package/src/util/editor/interactions/selectMultiFeatureInteraction.js +0 -165
  780. package/src/util/editor/interactions/selectSingleFeatureInteraction.js +0 -120
  781. package/src/util/editor/transformation/extrudeInteraction.js +0 -106
  782. package/src/util/editor/transformation/transformationTypes.js +0 -88
  783. package/src/util/fetch.js +0 -34
  784. package/src/util/overrideCollection.js +0 -261
  785. package/src/util/projection.js +0 -374
  786. package/src/vcsModule.js +0 -130
  787. package/src/vcsModuleHelpers.js +0 -136
  788. package/src/vcsObject.js +0 -85
  789. package/tests/unit/helpers/cesiumHelpers.js +0 -326
  790. package/tests/unit/helpers/imageHelpers.js +0 -24
  791. package/tests/unit/helpers/importJSON.js +0 -15
  792. package/tests/unit/helpers/obliqueData.js +0 -102
  793. package/tests/unit/helpers/openlayersHelpers.js +0 -25
  794. package/tests/unit/helpers/terrain/terrainData.js +0 -45
  795. /package/{tests → dist/tests}/data/dynamicPointCzml.json +0 -0
  796. /package/{tests → dist/tests}/data/oblique/imageData/imagev34.json +0 -0
  797. /package/{tests → dist/tests}/data/oblique/imageData/imagev35.json +0 -0
  798. /package/{tests → dist/tests}/data/oblique/imageData/imagev35PerImageSize.json +0 -0
  799. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2199/1342.json +0 -0
  800. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2199/1343.json +0 -0
  801. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2199/1344.json +0 -0
  802. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2200/1342.json +0 -0
  803. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2200/1343.json +0 -0
  804. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2200/1344.json +0 -0
  805. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2201/1342.json +0 -0
  806. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2201/1343.json +0 -0
  807. /package/{tests → dist/tests}/data/oblique/tiledImageData/12/2201/1344.json +0 -0
  808. /package/{tests → dist/tests}/data/oblique/tiledImageData/image.json +0 -0
  809. /package/{tests → dist/tests}/data/terrain/13/8800/6485.terrain +0 -0
  810. /package/{tests → dist/tests}/data/terrain/13/8800/6486.terrain +0 -0
  811. /package/{tests → dist/tests}/data/terrain/13/8801/6485.terrain +0 -0
  812. /package/{tests → dist/tests}/data/terrain/13/8801/6486.terrain +0 -0
  813. /package/{tests → dist/tests}/data/terrain/layer.json +0 -0
  814. /package/{tests → dist/tests}/data/testGeoJSON.json +0 -0
  815. /package/{tests → dist/tests}/data/tile.pbf +0 -0
@@ -0,0 +1,221 @@
1
+ import VcsObject, { VcsObjectOptions } from '../vcsObject.js';
2
+ import Extent, { type ExtentOptions } from '../util/extent.js';
3
+ import LayerState from './layerState.js';
4
+ import VcsEvent from '../vcsEvent.js';
5
+ import GlobalHider from './globalHider.js';
6
+ import VcsMap from '../map/vcsMap.js';
7
+ import LayerImplementation from './layerImplementation.js';
8
+ import AbstractFeatureProvider from '../featureProvider/abstractFeatureProvider.js';
9
+ export type CopyrightOptions = {
10
+ provider?: string;
11
+ url?: string;
12
+ year?: string;
13
+ };
14
+ export type LayerOptions = VcsObjectOptions & {
15
+ /**
16
+ * if true the layer will be activated on initialization
17
+ */
18
+ activeOnStartup?: boolean;
19
+ /**
20
+ * whether to allow picking on this layer
21
+ */
22
+ allowPicking?: boolean;
23
+ /**
24
+ * zIndex of this layer
25
+ */
26
+ zIndex?: number;
27
+ /**
28
+ * metadata on the data extent of the layer.
29
+ */
30
+ extent?: ExtentOptions;
31
+ exclusiveGroups?: (string | symbol)[];
32
+ /**
33
+ * the map names on which this layer is shown, all if empty or undefined
34
+ */
35
+ mapNames?: string[];
36
+ url?: string | Record<string, string>;
37
+ /**
38
+ * an array of building ids which should be hidden if this layer is active
39
+ */
40
+ hiddenObjectIds?: string[];
41
+ copyright?: CopyrightOptions;
42
+ };
43
+ export type LayerImplementationOptions = {
44
+ name: string;
45
+ url: string;
46
+ };
47
+ /**
48
+ * Abstract base class for Layers.
49
+ * To create a layer Implementation the function `createImplementationsForMap` has to be implemented.
50
+ * To receive implementation options, implement `geImplementationOptions`
51
+ */
52
+ declare class Layer<I extends LayerImplementation<VcsMap> = LayerImplementation<VcsMap>> extends VcsObject {
53
+ static get className(): string;
54
+ /**
55
+ * Symbol to declare a layers name on its visualizations, e.g. ol.layer.Layer, Cesium.Cesium3DTileset
56
+ * @deprecated
57
+ */
58
+ static get vcsLayerNameSymbol(): symbol;
59
+ static getDefaultOptions(): LayerOptions;
60
+ extent: Extent | null;
61
+ activeOnStartup: boolean;
62
+ private _allowPicking;
63
+ private _state;
64
+ private _loadingPromise;
65
+ private _initialized;
66
+ mapNames: string[];
67
+ /**
68
+ * The class names of the supported maps.
69
+ */
70
+ protected _supportedMaps: string[];
71
+ protected _url: string | Record<string, string> | undefined;
72
+ private _zIndex;
73
+ /**
74
+ * Called when the zIndex of this layer is changed. Is passed the new zIndex as its only argument.
75
+ */
76
+ zIndexChanged: VcsEvent<number>;
77
+ /**
78
+ * array of object Ids which should be hidden within the context of the layers layerCollection, if this layer is active
79
+ */
80
+ private _hiddenObjectIds;
81
+ private _globalHider;
82
+ private _exclusiveGroups;
83
+ /**
84
+ * event raised if the exclusives group of the layer changes. is passed the array of exclusive groups as its only argument
85
+ */
86
+ exclusiveGroupsChanged: VcsEvent<(string | symbol)[]>;
87
+ copyright: CopyrightOptions | undefined;
88
+ private _implementations;
89
+ private _activeMaps;
90
+ /**
91
+ * Event raised, if the layers state changes. Is passed the LayerState as its only parameter
92
+ */
93
+ stateChanged: VcsEvent<LayerState>;
94
+ /**
95
+ * An optional feature provider to provider features based on click events.
96
+ */
97
+ featureProvider: AbstractFeatureProvider | undefined;
98
+ private _locale;
99
+ constructor(options: LayerOptions);
100
+ /**
101
+ * True if this layer has been initialized, typically after its first activation.
102
+ */
103
+ get initialized(): boolean;
104
+ get active(): boolean;
105
+ get loading(): boolean;
106
+ get state(): LayerState;
107
+ get allowPicking(): boolean;
108
+ set allowPicking(allowPicking: boolean);
109
+ /**
110
+ * A layers url, should on be configured, else an empty string
111
+ */
112
+ get url(): string;
113
+ set url(url: string | Record<string, string>);
114
+ get hiddenObjectIds(): string[];
115
+ set hiddenObjectIds(hiddenObjectIds: string[]);
116
+ get globalHider(): GlobalHider | undefined;
117
+ setGlobalHider(globalHider?: GlobalHider): void;
118
+ /**
119
+ * Indicates, that this layer is part of an exclusiveGroup
120
+ */
121
+ get exclusive(): boolean;
122
+ /**
123
+ * An array of arbitrary exclusive groups
124
+ */
125
+ get exclusiveGroups(): (string | symbol)[];
126
+ set exclusiveGroups(groups: (string | symbol)[]);
127
+ get zIndex(): number;
128
+ set zIndex(index: number);
129
+ /**
130
+ * returns the currently set locale. Can be used to provide locale specific URLs.
131
+ */
132
+ get locale(): string;
133
+ /**
134
+ * sets the locale and reloads the layer the if the URL is a locale aware Object.
135
+ */
136
+ set locale(value: string);
137
+ /**
138
+ * creates an array of layer implementations for the given map.
139
+ * @param _map Map
140
+ * @returns return the specific implementation
141
+ */
142
+ createImplementationsForMap(_map: VcsMap): I[];
143
+ /**
144
+ * creates or returns a cached array of layer implementations for the given map.
145
+ * @param map initialized Map
146
+ * @returns return the specific implementation
147
+ */
148
+ getImplementationsForMap<T extends VcsMap>(map: T): I[];
149
+ /**
150
+ * Returns all implementation of this layer for all maps
151
+ */
152
+ getImplementations(): I[];
153
+ getImplementationOptions(): LayerImplementationOptions;
154
+ /**
155
+ * Reloads all the data loaded and forces a redraw
156
+ */
157
+ reload(): Promise<void>;
158
+ /**
159
+ * destroys all current implementations and recreates the ones which have an active map.
160
+ * called for instance when the URL for a layer changes
161
+ */
162
+ forceRedraw(): Promise<void>;
163
+ /**
164
+ * returns the Extent of this layer
165
+ */
166
+ getExtent(): Extent | null;
167
+ /**
168
+ * returns the Extent of this layer or null, if the layers extent was not defined or cannot be established
169
+ */
170
+ getZoomToExtent(): Extent | null;
171
+ /**
172
+ * initializes the layer, can be used to defer loading
173
+ */
174
+ initialize(): Promise<void>;
175
+ /**
176
+ * is called from the map when the map is activated, and this layer is in the layerCollection of the map.
177
+ * Will create an implementation if it does not exits and will forward the activation call to the implementation.
178
+ * @param map
179
+ @link */
180
+ mapActivated(map: VcsMap): Promise<void>;
181
+ /**
182
+ * is called from the map when the map is deactivated, and this layer is in the layerCollection of the map.
183
+ * will forward deactivation call to the map specific implementation
184
+ * @param map
185
+ */
186
+ mapDeactivated(map: VcsMap): void;
187
+ /**
188
+ * is called when a layer is removed from the layer collection of a map or said map is destroyed.
189
+ * destroys the associated implementation.
190
+ * @param map
191
+ */
192
+ removedFromMap(map: VcsMap): void;
193
+ /**
194
+ * checks if the currently active map supports this layer
195
+ * @param map
196
+ */
197
+ isSupported(map: VcsMap): boolean;
198
+ private _activateImplsForMap;
199
+ private _activate;
200
+ /**
201
+ * Activates this layer object, i.e. changes its internal view state
202
+ * and updates the map. The returned promise resolves, once the layer & any _implementations are initialized
203
+ * and all data is loaded.
204
+ * Once the promise resolves, the layer can still be inactive, if deactivate was called while initializing the layer.
205
+ */
206
+ activate(): Promise<void>;
207
+ /**
208
+ * Deactivates a layer, changing the internal view state
209
+ */
210
+ deactivate(): void;
211
+ toJSON(): LayerOptions;
212
+ /**
213
+ * disposes of this layer, removes instances from the current maps and the framework
214
+ */
215
+ destroy(): void;
216
+ }
217
+ export interface SplitLayer {
218
+ splitDirection: import('@vcmap-cesium/engine').SplitDirection;
219
+ splitDirectionChanged: VcsEvent<import('@vcmap-cesium/engine').SplitDirection>;
220
+ }
221
+ export default Layer;
@@ -0,0 +1,491 @@
1
+ import { check, checkMaybe } from '@vcsuite/check';
2
+ import { parseBoolean, parseInteger } from '@vcsuite/parsers';
3
+ import VcsObject from '../vcsObject.js';
4
+ import Extent from '../util/extent.js';
5
+ import { vcsLayerName } from './layerSymbols.js';
6
+ import LayerState from './layerState.js';
7
+ import VcsEvent from '../vcsEvent.js';
8
+ import { layerClassRegistry } from '../classRegistry.js';
9
+ import GlobalHider from './globalHider.js';
10
+ /**
11
+ * Abstract base class for Layers.
12
+ * To create a layer Implementation the function `createImplementationsForMap` has to be implemented.
13
+ * To receive implementation options, implement `geImplementationOptions`
14
+ */
15
+ class Layer extends VcsObject {
16
+ static get className() {
17
+ return 'Layer';
18
+ }
19
+ /**
20
+ * Symbol to declare a layers name on its visualizations, e.g. ol.layer.Layer, Cesium.Cesium3DTileset
21
+ * @deprecated
22
+ */
23
+ static get vcsLayerNameSymbol() {
24
+ return vcsLayerName;
25
+ }
26
+ static getDefaultOptions() {
27
+ return {
28
+ name: undefined,
29
+ extent: undefined,
30
+ activeOnStartup: false,
31
+ allowPicking: true,
32
+ exclusiveGroups: [],
33
+ mapNames: [],
34
+ url: undefined,
35
+ hiddenObjectIds: [],
36
+ copyright: undefined,
37
+ };
38
+ }
39
+ extent;
40
+ activeOnStartup;
41
+ _allowPicking;
42
+ _state;
43
+ _loadingPromise;
44
+ _initialized;
45
+ mapNames;
46
+ /**
47
+ * The class names of the supported maps.
48
+ */
49
+ _supportedMaps;
50
+ _url;
51
+ _zIndex;
52
+ /**
53
+ * Called when the zIndex of this layer is changed. Is passed the new zIndex as its only argument.
54
+ */
55
+ zIndexChanged;
56
+ /**
57
+ * array of object Ids which should be hidden within the context of the layers layerCollection, if this layer is active
58
+ */
59
+ _hiddenObjectIds;
60
+ _globalHider;
61
+ _exclusiveGroups;
62
+ /**
63
+ * event raised if the exclusives group of the layer changes. is passed the array of exclusive groups as its only argument
64
+ */
65
+ exclusiveGroupsChanged;
66
+ copyright;
67
+ _implementations;
68
+ _activeMaps;
69
+ /**
70
+ * Event raised, if the layers state changes. Is passed the LayerState as its only parameter
71
+ */
72
+ stateChanged;
73
+ /**
74
+ * An optional feature provider to provider features based on click events.
75
+ */
76
+ featureProvider;
77
+ _locale;
78
+ constructor(options) {
79
+ super(options);
80
+ const defaultOptions = Layer.getDefaultOptions();
81
+ this.extent = options.extent ? new Extent(options.extent) : null;
82
+ this.activeOnStartup = parseBoolean(options.activeOnStartup, defaultOptions.activeOnStartup);
83
+ this._allowPicking = parseBoolean(options.allowPicking, defaultOptions.allowPicking);
84
+ this._state = LayerState.INACTIVE;
85
+ this._loadingPromise = null;
86
+ this._initialized = false;
87
+ this.mapNames = options.mapNames ?? defaultOptions.mapNames;
88
+ this._supportedMaps = [];
89
+ this._url = options.url;
90
+ this._zIndex = parseInteger(options.zIndex, 0);
91
+ this.zIndexChanged = new VcsEvent();
92
+ this._hiddenObjectIds = Array.isArray(options.hiddenObjectIds)
93
+ ? options.hiddenObjectIds
94
+ : defaultOptions.hiddenObjectIds;
95
+ this._globalHider = undefined;
96
+ this._exclusiveGroups = Array.isArray(options.exclusiveGroups)
97
+ ? options.exclusiveGroups.slice()
98
+ : defaultOptions.exclusiveGroups;
99
+ this.exclusiveGroupsChanged = new VcsEvent();
100
+ this.copyright = options.copyright || defaultOptions.copyright;
101
+ this._implementations = new Map();
102
+ this._activeMaps = new Set();
103
+ this.stateChanged = new VcsEvent();
104
+ this.featureProvider = undefined;
105
+ this._locale = 'en';
106
+ }
107
+ /**
108
+ * True if this layer has been initialized, typically after its first activation.
109
+ */
110
+ get initialized() {
111
+ return this._initialized;
112
+ }
113
+ get active() {
114
+ return this._state === LayerState.ACTIVE;
115
+ }
116
+ get loading() {
117
+ return !!(this._state & LayerState.LOADING);
118
+ }
119
+ get state() {
120
+ return this._state;
121
+ }
122
+ get allowPicking() {
123
+ return this._allowPicking;
124
+ }
125
+ set allowPicking(allowPicking) {
126
+ this._allowPicking = allowPicking;
127
+ }
128
+ /**
129
+ * A layers url, should on be configured, else an empty string
130
+ */
131
+ get url() {
132
+ if (this._url) {
133
+ if (typeof this._url === 'string') {
134
+ return this._url;
135
+ }
136
+ if (this._url[this._locale]) {
137
+ return this._url[this._locale];
138
+ }
139
+ return Object.values(this._url)[0];
140
+ }
141
+ return '';
142
+ }
143
+ set url(url) {
144
+ check(url, [String, Object]);
145
+ if (this._url !== url) {
146
+ const currentValue = this._url;
147
+ this._url = url;
148
+ this.reload().catch((err) => {
149
+ this.getLogger().error('failed to reload after URL setting');
150
+ this.getLogger().error(String(err));
151
+ this._url = currentValue;
152
+ });
153
+ }
154
+ }
155
+ get hiddenObjectIds() {
156
+ return this._hiddenObjectIds;
157
+ }
158
+ set hiddenObjectIds(hiddenObjectIds) {
159
+ check(hiddenObjectIds, [String]);
160
+ if (this._globalHider && this.active) {
161
+ this._globalHider.hideObjects(hiddenObjectIds);
162
+ }
163
+ this._hiddenObjectIds = hiddenObjectIds;
164
+ }
165
+ get globalHider() {
166
+ return this._globalHider;
167
+ }
168
+ setGlobalHider(globalHider) {
169
+ checkMaybe(globalHider, GlobalHider);
170
+ if (globalHider && this.active) {
171
+ globalHider.hideObjects(this.hiddenObjectIds);
172
+ }
173
+ this._globalHider = globalHider;
174
+ }
175
+ /**
176
+ * Indicates, that this layer is part of an exclusiveGroup
177
+ */
178
+ get exclusive() {
179
+ return this._exclusiveGroups.length > 0;
180
+ }
181
+ /**
182
+ * An array of arbitrary exclusive groups
183
+ */
184
+ get exclusiveGroups() {
185
+ return this._exclusiveGroups.slice();
186
+ }
187
+ set exclusiveGroups(groups) {
188
+ check(groups, [[String, Symbol]]);
189
+ if (groups.length !== this._exclusiveGroups.length ||
190
+ !groups.every((g) => this._exclusiveGroups.includes(g))) {
191
+ this._exclusiveGroups = groups.slice();
192
+ this.exclusiveGroupsChanged.raiseEvent(groups);
193
+ }
194
+ }
195
+ get zIndex() {
196
+ return this._zIndex;
197
+ }
198
+ set zIndex(index) {
199
+ check(index, Number);
200
+ if (this._zIndex !== index) {
201
+ this._zIndex = index;
202
+ this.zIndexChanged.raiseEvent(index);
203
+ }
204
+ }
205
+ /**
206
+ * returns the currently set locale. Can be used to provide locale specific URLs.
207
+ */
208
+ get locale() {
209
+ return this._locale;
210
+ }
211
+ /**
212
+ * sets the locale and reloads the layer the if the URL is a locale aware Object.
213
+ */
214
+ set locale(value) {
215
+ check(value, String);
216
+ if (this._locale !== value) {
217
+ this._locale = value;
218
+ if (this._url &&
219
+ typeof this._url === 'object' &&
220
+ this._url[this._locale]) {
221
+ this.reload().catch((err) => {
222
+ this.getLogger().error('failed to reload after setting locale');
223
+ this.getLogger().error(String(err));
224
+ });
225
+ }
226
+ }
227
+ }
228
+ /**
229
+ * creates an array of layer implementations for the given map.
230
+ * @param _map Map
231
+ * @returns return the specific implementation
232
+ */
233
+ // eslint-disable-next-line class-methods-use-this,no-unused-vars
234
+ createImplementationsForMap(_map) {
235
+ return [];
236
+ }
237
+ /**
238
+ * creates or returns a cached array of layer implementations for the given map.
239
+ * @param map initialized Map
240
+ * @returns return the specific implementation
241
+ */
242
+ getImplementationsForMap(map) {
243
+ if (!this._implementations.has(map)) {
244
+ if (this.isSupported(map)) {
245
+ this._implementations.set(map, this.createImplementationsForMap(map));
246
+ }
247
+ else {
248
+ this._implementations.set(map, []);
249
+ }
250
+ }
251
+ return this._implementations.get(map);
252
+ }
253
+ /**
254
+ * Returns all implementation of this layer for all maps
255
+ */
256
+ getImplementations() {
257
+ return [...this._implementations.values()].flat();
258
+ }
259
+ getImplementationOptions() {
260
+ return {
261
+ name: this.name,
262
+ url: this.url,
263
+ };
264
+ }
265
+ /**
266
+ * Reloads all the data loaded and forces a redraw
267
+ */
268
+ reload() {
269
+ return this.forceRedraw();
270
+ }
271
+ /**
272
+ * destroys all current implementations and recreates the ones which have an active map.
273
+ * called for instance when the URL for a layer changes
274
+ */
275
+ async forceRedraw() {
276
+ const maps = [...this._implementations.keys()];
277
+ const promises = maps.map((map) => {
278
+ this.removedFromMap(map);
279
+ if (map.active) {
280
+ return this.mapActivated(map);
281
+ }
282
+ return Promise.resolve();
283
+ });
284
+ await Promise.all(promises);
285
+ }
286
+ /**
287
+ * returns the Extent of this layer
288
+ */
289
+ getExtent() {
290
+ return this.extent;
291
+ }
292
+ /**
293
+ * returns the Extent of this layer or null, if the layers extent was not defined or cannot be established
294
+ */
295
+ getZoomToExtent() {
296
+ if (this.extent && this.extent.isValid()) {
297
+ return this.extent;
298
+ }
299
+ return null;
300
+ }
301
+ /**
302
+ * initializes the layer, can be used to defer loading
303
+ */
304
+ initialize() {
305
+ this._initialized = true;
306
+ return Promise.resolve();
307
+ }
308
+ /**
309
+ * is called from the map when the map is activated, and this layer is in the layerCollection of the map.
310
+ * Will create an implementation if it does not exits and will forward the activation call to the implementation.
311
+ * @param map
312
+ @link */
313
+ async mapActivated(map) {
314
+ this.getLogger().debug(`Layer: ${this.name} mapActivated is called from Map: ${map.name}`);
315
+ this._activeMaps.add(map);
316
+ if (this.active || (this.loading && this.initialized)) {
317
+ await this._activateImplsForMap(map);
318
+ }
319
+ }
320
+ /**
321
+ * is called from the map when the map is deactivated, and this layer is in the layerCollection of the map.
322
+ * will forward deactivation call to the map specific implementation
323
+ * @param map
324
+ */
325
+ mapDeactivated(map) {
326
+ this.getLogger().debug(`Layer: ${this.name} mapDeactivated is called from Map: ${map.name}`);
327
+ this._activeMaps.delete(map);
328
+ if (this.active || this.loading) {
329
+ this.getImplementationsForMap(map).forEach((impl) => {
330
+ impl.deactivate();
331
+ });
332
+ }
333
+ }
334
+ /**
335
+ * is called when a layer is removed from the layer collection of a map or said map is destroyed.
336
+ * destroys the associated implementation.
337
+ * @param map
338
+ */
339
+ removedFromMap(map) {
340
+ this._activeMaps.delete(map);
341
+ this.getImplementationsForMap(map).forEach((impl) => {
342
+ impl.destroy();
343
+ });
344
+ this._implementations.delete(map);
345
+ }
346
+ /**
347
+ * checks if the currently active map supports this layer
348
+ * @param map
349
+ */
350
+ isSupported(map) {
351
+ return (map &&
352
+ this._supportedMaps.includes(map.className) &&
353
+ (this.mapNames.length === 0 || this.mapNames.indexOf(map.name) >= 0));
354
+ }
355
+ async _activateImplsForMap(map) {
356
+ const impls = this.getImplementationsForMap(map);
357
+ try {
358
+ await Promise.all(impls.map((i) => i.activate()));
359
+ }
360
+ catch (err) {
361
+ this.getLogger().error(`Layer ${this.name} could not activate impl for map ${map.name}`);
362
+ this.getLogger().error(String(err));
363
+ this._implementations.set(map, []);
364
+ impls.forEach((i) => {
365
+ i.destroy();
366
+ });
367
+ }
368
+ }
369
+ async _activate() {
370
+ this._state = LayerState.LOADING;
371
+ try {
372
+ this.stateChanged.raiseEvent(LayerState.LOADING);
373
+ }
374
+ catch (e) {
375
+ this.getLogger().debug(`Error on raising LayerState.LOADING event for layer ${this.name} : ${e.message}`);
376
+ }
377
+ await this.initialize();
378
+ if (this._state !== LayerState.LOADING) {
379
+ return;
380
+ }
381
+ await Promise.all([...this._activeMaps].map((m) => this._activateImplsForMap(m)));
382
+ if (this._state !== LayerState.LOADING) {
383
+ return;
384
+ }
385
+ if (this._globalHider) {
386
+ this._globalHider.hideObjects(this.hiddenObjectIds);
387
+ }
388
+ this._state = LayerState.ACTIVE;
389
+ try {
390
+ this.stateChanged.raiseEvent(LayerState.ACTIVE);
391
+ }
392
+ catch (e) {
393
+ this.getLogger().debug(`Error on raising LayerState.ACTIVE event for layer ${this.name} : ${e.message}`);
394
+ }
395
+ this._loadingPromise = null;
396
+ }
397
+ /**
398
+ * Activates this layer object, i.e. changes its internal view state
399
+ * and updates the map. The returned promise resolves, once the layer & any _implementations are initialized
400
+ * and all data is loaded.
401
+ * Once the promise resolves, the layer can still be inactive, if deactivate was called while initializing the layer.
402
+ */
403
+ activate() {
404
+ if (this._loadingPromise) {
405
+ return this._loadingPromise;
406
+ }
407
+ if (this._state === LayerState.INACTIVE) {
408
+ this._loadingPromise = this._activate().catch((err) => {
409
+ this._state = LayerState.INACTIVE;
410
+ return Promise.reject(err);
411
+ });
412
+ return this._loadingPromise;
413
+ }
414
+ return Promise.resolve();
415
+ }
416
+ /**
417
+ * Deactivates a layer, changing the internal view state
418
+ */
419
+ deactivate() {
420
+ if (this._loadingPromise) {
421
+ this._loadingPromise = null;
422
+ }
423
+ if (this._state !== LayerState.INACTIVE) {
424
+ this.getImplementations().forEach((impl) => {
425
+ if (impl.loading || impl.active) {
426
+ impl.deactivate();
427
+ }
428
+ });
429
+ if (this._globalHider) {
430
+ this._globalHider.showObjects(this.hiddenObjectIds);
431
+ }
432
+ this._state = LayerState.INACTIVE;
433
+ try {
434
+ this.stateChanged.raiseEvent(LayerState.INACTIVE);
435
+ }
436
+ catch (e) {
437
+ this.getLogger().debug(`Error on raising LayerState.INACTIVE event for layer ${this.name} : ${e.message}`);
438
+ }
439
+ }
440
+ }
441
+ toJSON() {
442
+ const config = super.toJSON();
443
+ const defaultOptions = Layer.getDefaultOptions();
444
+ if (this.activeOnStartup !== defaultOptions.activeOnStartup) {
445
+ config.activeOnStartup = this.activeOnStartup;
446
+ }
447
+ if (this.allowPicking !== defaultOptions.allowPicking) {
448
+ config.allowPicking = this.allowPicking;
449
+ }
450
+ if (this.mapNames.length > 0) {
451
+ config.mapNames = this.mapNames.slice();
452
+ }
453
+ if (this.hiddenObjectIds.length > 0) {
454
+ config.hiddenObjectIds = this.hiddenObjectIds.slice();
455
+ }
456
+ if (this._url) {
457
+ config.url = this._url;
458
+ }
459
+ if (this.extent && this.extent.isValid()) {
460
+ config.extent = this.extent.toJSON();
461
+ }
462
+ if (this._exclusiveGroups.length > 0) {
463
+ config.exclusiveGroups = this._exclusiveGroups.slice();
464
+ }
465
+ if (this.copyright !== defaultOptions.copyright) {
466
+ config.copyright = { ...this.copyright };
467
+ }
468
+ return config;
469
+ }
470
+ /**
471
+ * disposes of this layer, removes instances from the current maps and the framework
472
+ */
473
+ destroy() {
474
+ super.destroy();
475
+ if (this.featureProvider) {
476
+ this.featureProvider.destroy();
477
+ }
478
+ this._activeMaps.clear();
479
+ this.getImplementations().forEach((impl) => {
480
+ impl.destroy();
481
+ });
482
+ this._initialized = false;
483
+ this._implementations.clear();
484
+ this.stateChanged.destroy();
485
+ this.zIndexChanged.destroy();
486
+ this.exclusiveGroupsChanged.destroy();
487
+ }
488
+ }
489
+ layerClassRegistry.registerClass(Layer.className, Layer);
490
+ export default Layer;
491
+ //# sourceMappingURL=layer.js.map