@igo2/geo 18.0.0-next.8 → 18.0.0

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 (308) hide show
  1. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +4 -6
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +13 -10
  3. package/esm2022/lib/datasource/shared/capabilities.service.mjs +1 -1
  4. package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
  5. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +9 -1
  6. package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +1 -1
  7. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +8 -1
  8. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
  9. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +8 -1
  10. package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
  11. package/esm2022/lib/datasource/shared/datasources/datasource.mjs +8 -1
  12. package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
  13. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +8 -1
  14. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
  15. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +8 -1
  16. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +1 -1
  17. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +4 -1
  18. package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +1 -1
  19. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +1 -1
  20. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +8 -1
  21. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
  22. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
  23. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +8 -1
  24. package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
  25. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +8 -1
  26. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
  27. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
  28. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +151 -102
  29. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +177 -83
  30. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +93 -44
  31. package/esm2022/lib/directions/directions-sources/directions-source.mjs +1 -1
  32. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +1 -1
  33. package/esm2022/lib/directions/directions.component.mjs +55 -31
  34. package/esm2022/lib/directions/shared/directions.enum.mjs +51 -7
  35. package/esm2022/lib/directions/shared/directions.interface.mjs +1 -1
  36. package/esm2022/lib/directions/shared/directions.service.mjs +122 -96
  37. package/esm2022/lib/directions/shared/directions.utils.mjs +281 -318
  38. package/esm2022/lib/directions/shared/store.mjs +2 -2
  39. package/esm2022/lib/download/download-button/download-button.component.mjs +8 -20
  40. package/esm2022/lib/download/shared/download.service.mjs +1 -1
  41. package/esm2022/lib/draw/draw/draw-popup.component.mjs +1 -1
  42. package/esm2022/lib/draw/draw/draw.component.mjs +5 -12
  43. package/esm2022/lib/draw/shared/draw.utils.mjs +1 -1
  44. package/esm2022/lib/environment/environment.interface.mjs +1 -1
  45. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +2 -2
  46. package/esm2022/lib/feature/shared/feature-store.utils.mjs +7 -6
  47. package/esm2022/lib/feature/shared/feature.interfaces.mjs +1 -1
  48. package/esm2022/lib/feature/shared/store.mjs +1 -1
  49. package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +3 -3
  50. package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +7 -4
  51. package/esm2022/lib/feature/shared/strategies/selection.mjs +5 -4
  52. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +3 -3
  53. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +2 -2
  54. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +5 -3
  55. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +1 -1
  56. package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +8 -1
  57. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1 -1
  58. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +2 -8
  59. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +2 -8
  60. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +2 -2
  61. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +13 -10
  62. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +2 -2
  63. package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +4 -2
  64. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +5 -16
  65. package/esm2022/lib/import-export/export-button/export-button.component.mjs +4 -17
  66. package/esm2022/lib/import-export/import-export/import-export.component.mjs +23 -12
  67. package/esm2022/lib/import-export/shared/export.service.mjs +7 -4
  68. package/esm2022/lib/import-export/shared/import.utils.mjs +3 -3
  69. package/esm2022/lib/layer/index.mjs +10 -5
  70. package/esm2022/lib/layer/layer-group/index.mjs +2 -0
  71. package/esm2022/lib/layer/layer-group/layer-group.component.mjs +103 -0
  72. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +61 -128
  73. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +5 -8
  74. package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +5 -6
  75. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +14 -21
  76. package/esm2022/lib/layer/layer-list/index.mjs +1 -3
  77. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +176 -775
  78. package/esm2022/lib/layer/layer-list-tool/index.mjs +1 -2
  79. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +51 -84
  80. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +7 -2
  81. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +56 -16
  82. package/esm2022/lib/layer/layer-search/index.mjs +2 -0
  83. package/esm2022/lib/layer/layer-search/layer-search.component.mjs +65 -0
  84. package/esm2022/lib/layer/layer-unavailable/index.mjs +3 -0
  85. package/esm2022/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.mjs +25 -0
  86. package/esm2022/lib/layer/layer-unavailable/layer-unavailable.component.mjs +35 -0
  87. package/esm2022/lib/layer/layer-viewer/index.mjs +3 -0
  88. package/esm2022/lib/layer/layer-viewer/layer-viewer.component.mjs +226 -0
  89. package/esm2022/lib/layer/layer-viewer/layer-viewer.interface.mjs +2 -0
  90. package/esm2022/lib/layer/layer-viewer-bottom-actions/index.mjs +2 -0
  91. package/esm2022/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.mjs +207 -0
  92. package/esm2022/lib/layer/layer-visibility-button/index.mjs +2 -0
  93. package/esm2022/lib/layer/layer-visibility-button/layer-visibility-button.component.mjs +83 -0
  94. package/esm2022/lib/layer/layer.module.mjs +51 -33
  95. package/esm2022/lib/layer/shared/index.mjs +2 -1
  96. package/esm2022/lib/layer/shared/layer-controller.mjs +316 -0
  97. package/esm2022/lib/layer/shared/layer-selection.mjs +38 -0
  98. package/esm2022/lib/layer/shared/layer.service.mjs +56 -14
  99. package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
  100. package/esm2022/lib/layer/shared/layers/any-layer.mjs +1 -1
  101. package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
  102. package/esm2022/lib/layer/shared/layers/image-layer.mjs +8 -3
  103. package/esm2022/lib/layer/shared/layers/index.mjs +6 -1
  104. package/esm2022/lib/layer/shared/layers/layer-base.mjs +199 -0
  105. package/esm2022/lib/layer/shared/layers/layer-group.interface.mjs +2 -0
  106. package/esm2022/lib/layer/shared/layers/layer-group.mjs +120 -0
  107. package/esm2022/lib/layer/shared/layers/layer.interface.mjs +1 -11
  108. package/esm2022/lib/layer/shared/layers/layer.mjs +113 -113
  109. package/esm2022/lib/layer/shared/layers/linked/index.mjs +4 -0
  110. package/esm2022/lib/layer/shared/layers/linked/linked-layer.interface.mjs +12 -0
  111. package/esm2022/lib/layer/shared/layers/linked/linked-layer.mjs +242 -0
  112. package/esm2022/lib/layer/shared/layers/linked/linked-layer.utils.mjs +70 -0
  113. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +8 -3
  114. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +9 -3
  115. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +8 -3
  116. package/esm2022/lib/layer/utils/layer.utils.mjs +47 -1
  117. package/esm2022/lib/layer/utils/outputLegend.mjs +5 -1
  118. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +3 -3
  119. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +8 -6
  120. package/esm2022/lib/map/map-center/map-center.component.mjs +1 -2
  121. package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +1 -1
  122. package/esm2022/lib/map/shared/controllers/view.mjs +1 -1
  123. package/esm2022/lib/map/shared/hover-feature.directive.mjs +1 -9
  124. package/esm2022/lib/map/shared/linkedLayers.utils.mjs +113 -123
  125. package/esm2022/lib/map/shared/map.abstract.mjs +4 -3
  126. package/esm2022/lib/map/shared/map.mjs +7 -243
  127. package/esm2022/lib/map/shared/map.service.mjs +1 -1
  128. package/esm2022/lib/map/shared/map.utils.mjs +3 -3
  129. package/esm2022/lib/map/shared/mapOffline.directive.mjs +9 -5
  130. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +1 -3
  131. package/esm2022/lib/map/utils/index.mjs +2 -0
  132. package/esm2022/lib/map/utils/layer-watcher.mjs +45 -13
  133. package/esm2022/lib/measure/measurer/measurer.component.mjs +7 -25
  134. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +6 -18
  135. package/esm2022/lib/offline/offline.provider.mjs +10 -11
  136. package/esm2022/lib/print/shared/print.service.mjs +3 -3
  137. package/esm2022/lib/query/shared/query.directive.mjs +9 -5
  138. package/esm2022/lib/query/shared/query.service.mjs +7 -7
  139. package/esm2022/lib/query/shared/query.utils.mjs +5 -1
  140. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +15 -9
  141. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +1 -10
  142. package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
  143. package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +1 -1
  144. package/esm2022/lib/search/shared/sources/workspace.mjs +1 -1
  145. package/esm2022/lib/workspace/shared/edition-workspace.mjs +6 -4
  146. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +19 -17
  147. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +17 -2
  148. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +22 -4
  149. package/esm2022/lib/workspace/shared/workspace.utils.mjs +6 -3
  150. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +2 -2
  151. package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +6 -2
  152. package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +4 -3
  153. package/fesm2022/igo2-geo.mjs +22502 -21440
  154. package/fesm2022/igo2-geo.mjs.map +1 -1
  155. package/lib/datasource/shared/capabilities.service.d.ts +7 -2
  156. package/lib/datasource/shared/datasources/any-datasource.interface.d.ts +1 -0
  157. package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +1 -0
  158. package/lib/datasource/shared/datasources/carto-datasource.d.ts +1 -0
  159. package/lib/datasource/shared/datasources/carto-datasource.interface.d.ts +0 -2
  160. package/lib/datasource/shared/datasources/cluster-datasource.d.ts +1 -0
  161. package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +0 -1
  162. package/lib/datasource/shared/datasources/datasource.d.ts +1 -0
  163. package/lib/datasource/shared/datasources/datasource.interface.d.ts +1 -2
  164. package/lib/datasource/shared/datasources/feature-datasource.d.ts +1 -0
  165. package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +0 -3
  166. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.d.ts +1 -0
  167. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.d.ts +0 -2
  168. package/lib/datasource/shared/datasources/mvt-datasource.d.ts +1 -0
  169. package/lib/datasource/shared/datasources/mvt-datasource.interface.d.ts +0 -2
  170. package/lib/datasource/shared/datasources/osm-datasource.interface.d.ts +0 -2
  171. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.d.ts +1 -0
  172. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.d.ts +0 -2
  173. package/lib/datasource/shared/datasources/tiledebug-datasource.interface.d.ts +0 -2
  174. package/lib/datasource/shared/datasources/wfs-datasource.d.ts +1 -0
  175. package/lib/datasource/shared/datasources/wfs-datasource.interface.d.ts +3 -4
  176. package/lib/datasource/shared/datasources/wms-datasource.d.ts +1 -0
  177. package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +6 -6
  178. package/lib/datasource/shared/datasources/wmts-datasource.interface.d.ts +0 -2
  179. package/lib/datasource/shared/datasources/xyz-datasource.interface.d.ts +0 -2
  180. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +57 -20
  181. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +115 -13
  182. package/lib/directions/directions-results/directions-results.component.d.ts +50 -16
  183. package/lib/directions/directions-sources/directions-source.d.ts +2 -2
  184. package/lib/directions/directions-sources/osrm-directions-source.d.ts +2 -2
  185. package/lib/directions/directions.component.d.ts +5 -5
  186. package/lib/directions/shared/directions.enum.d.ts +42 -1
  187. package/lib/directions/shared/directions.interface.d.ts +50 -25
  188. package/lib/directions/shared/directions.service.d.ts +46 -8
  189. package/lib/directions/shared/directions.utils.d.ts +102 -23
  190. package/lib/directions/shared/store.d.ts +3 -3
  191. package/lib/download/download-button/download-button.component.d.ts +4 -8
  192. package/lib/download/shared/download.service.d.ts +1 -1
  193. package/lib/draw/draw/draw.component.d.ts +2 -2
  194. package/lib/draw/shared/draw.utils.d.ts +2 -1
  195. package/lib/environment/environment.interface.d.ts +2 -0
  196. package/lib/feature/shared/feature-store.utils.d.ts +1 -1
  197. package/lib/feature/shared/feature.interfaces.d.ts +1 -1
  198. package/lib/feature/shared/store.d.ts +1 -1
  199. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +1 -1
  200. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +1 -1
  201. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +1 -1
  202. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +2 -2
  203. package/lib/filter/shared/filterable-datasource.pipe.d.ts +2 -2
  204. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +3 -3
  205. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +3 -5
  206. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +3 -5
  207. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +1 -1
  208. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +5 -5
  209. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +1 -1
  210. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +2 -7
  211. package/lib/import-export/export-button/export-button.component.d.ts +3 -7
  212. package/lib/import-export/import-export/import-export.component.d.ts +1 -2
  213. package/lib/import-export/shared/export.service.d.ts +2 -2
  214. package/lib/layer/index.d.ts +9 -4
  215. package/lib/layer/layer-group/index.d.ts +1 -0
  216. package/lib/layer/layer-group/layer-group.component.d.ts +30 -0
  217. package/lib/layer/layer-item/layer-item.component.d.ts +19 -38
  218. package/lib/layer/layer-legend/layer-legend.component.d.ts +2 -5
  219. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +6 -7
  220. package/lib/layer/layer-list/index.d.ts +0 -2
  221. package/lib/layer/layer-list/layer-list.component.d.ts +51 -123
  222. package/lib/layer/layer-list-tool/index.d.ts +0 -1
  223. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +19 -26
  224. package/lib/layer/layer-list-tool/layer-list-tool.interface.d.ts +5 -1
  225. package/lib/layer/layer-list-tool/layer-list-tool.service.d.ts +9 -8
  226. package/lib/layer/layer-search/index.d.ts +1 -0
  227. package/lib/layer/layer-search/layer-search.component.d.ts +16 -0
  228. package/lib/layer/layer-unavailable/index.d.ts +2 -0
  229. package/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.d.ts +10 -0
  230. package/lib/layer/layer-unavailable/layer-unavailable.component.d.ts +11 -0
  231. package/lib/layer/layer-viewer/index.d.ts +2 -0
  232. package/lib/layer/layer-viewer/layer-viewer.component.d.ts +52 -0
  233. package/lib/layer/layer-viewer/layer-viewer.interface.d.ts +22 -0
  234. package/lib/layer/layer-viewer-bottom-actions/index.d.ts +1 -0
  235. package/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.d.ts +44 -0
  236. package/lib/layer/layer-visibility-button/index.d.ts +1 -0
  237. package/lib/layer/layer-visibility-button/layer-visibility-button.component.d.ts +22 -0
  238. package/lib/layer/layer.module.d.ts +18 -6
  239. package/lib/layer/shared/index.d.ts +1 -0
  240. package/lib/layer/shared/layer-controller.d.ts +81 -0
  241. package/lib/layer/shared/layer-selection.d.ts +14 -0
  242. package/lib/layer/shared/layer.service.d.ts +12 -3
  243. package/lib/layer/shared/layers/any-layer.d.ts +3 -6
  244. package/lib/layer/shared/layers/any-layer.interface.d.ts +8 -6
  245. package/lib/layer/shared/layers/image-layer.d.ts +5 -2
  246. package/lib/layer/shared/layers/image-layer.interface.d.ts +1 -4
  247. package/lib/layer/shared/layers/index.d.ts +5 -0
  248. package/lib/layer/shared/layers/layer-base.d.ts +75 -0
  249. package/lib/layer/shared/layers/layer-group.d.ts +32 -0
  250. package/lib/layer/shared/layers/layer-group.interface.d.ts +8 -0
  251. package/lib/layer/shared/layers/layer.d.ts +27 -44
  252. package/lib/layer/shared/layers/layer.interface.d.ts +23 -41
  253. package/lib/layer/shared/layers/linked/index.d.ts +3 -0
  254. package/lib/layer/shared/layers/linked/linked-layer.d.ts +35 -0
  255. package/lib/layer/shared/layers/linked/linked-layer.interface.d.ts +32 -0
  256. package/lib/layer/shared/layers/linked/linked-layer.utils.d.ts +9 -0
  257. package/lib/layer/shared/layers/tile-layer.d.ts +5 -2
  258. package/lib/layer/shared/layers/vector-layer.d.ts +7 -3
  259. package/lib/layer/shared/layers/vectortile-layer.d.ts +5 -2
  260. package/lib/layer/utils/layer.utils.d.ts +12 -2
  261. package/lib/layer/utils/outputLegend.d.ts +2 -2
  262. package/lib/map/shared/controllers/geolocation.interface.d.ts +2 -1
  263. package/lib/map/shared/hover-feature.directive.d.ts +0 -1
  264. package/lib/map/shared/linkedLayers.utils.d.ts +13 -17
  265. package/lib/map/shared/map.abstract.d.ts +12 -29
  266. package/lib/map/shared/map.d.ts +10 -85
  267. package/lib/map/shared/map.service.d.ts +1 -1
  268. package/lib/map/shared/map.utils.d.ts +5 -3
  269. package/lib/map/utils/index.d.ts +1 -0
  270. package/lib/map/utils/layer-watcher.d.ts +18 -8
  271. package/lib/measure/measurer/measurer.component.d.ts +0 -8
  272. package/lib/metadata/metadata-button/metadata-button.component.d.ts +3 -7
  273. package/lib/offline/offline.provider.d.ts +1 -1
  274. package/lib/query/shared/query.service.d.ts +1 -1
  275. package/lib/query/shared/query.utils.d.ts +2 -1
  276. package/lib/search/search-results/search-results-add-button.component.d.ts +1 -1
  277. package/lib/search/shared/search-pointer-summary.directive.d.ts +0 -1
  278. package/lib/search/shared/sources/cadastre.providers.d.ts +1 -1
  279. package/lib/search/shared/sources/coordinates.providers.d.ts +1 -1
  280. package/lib/search/shared/sources/icherche.providers.d.ts +1 -1
  281. package/lib/search/shared/sources/ilayer.interfaces.d.ts +1 -1
  282. package/lib/search/shared/sources/ilayer.providers.d.ts +1 -1
  283. package/lib/search/shared/sources/nominatim.providers.d.ts +1 -1
  284. package/lib/search/shared/sources/storedqueries.providers.d.ts +2 -2
  285. package/lib/search/shared/sources/workspace.interfaces.d.ts +1 -1
  286. package/lib/search/shared/sources/workspace.providers.d.ts +1 -1
  287. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +1 -1
  288. package/locale/en.geo.json +106 -89
  289. package/locale/fr.geo.json +105 -89
  290. package/package.json +5 -5
  291. package/src/geo-theme.scss +1 -1
  292. package/src/lib/directions/directions-inputs/directions-inputs.theming.scss +21 -0
  293. package/src/lib/directions/directions.theming.scss +2 -0
  294. package/src/lib/layer/layer-group/layer-group.theme.scss +28 -0
  295. package/src/lib/layer/layer-item/layer-item.theme.scss +12 -9
  296. package/src/lib/layer/layer-legend/layer-legend.theme.scss +30 -0
  297. package/src/lib/layer/layer-list/layer-list.theme.scss +50 -0
  298. package/src/lib/layer/layer-unavailable/layer-unavailable.theme.scss +19 -0
  299. package/src/lib/layer/layer-viewer/_layer-viewer.theme.scss +16 -0
  300. package/src/lib/layer/layer-visibility-button/layer-visibility-button.theme.scss +27 -0
  301. package/src/lib/layer/layer.theming.scss +14 -3
  302. package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +0 -70
  303. package/esm2022/lib/layer/layer-list/layer-list.enum.mjs +0 -19
  304. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +0 -7
  305. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +0 -19
  306. package/lib/layer/layer-list/layer-list.enum.d.ts +0 -15
  307. package/lib/layer/layer-list-tool/layer-list-tool.enum.d.ts +0 -5
  308. package/src/lib/layer/layer-legend/layer-legend.theming.scss +0 -10
@@ -0,0 +1,75 @@
1
+ import { SubjectStatus } from '@igo2/utils';
2
+ import BaseLayer from 'ol/layer/Base';
3
+ import { BehaviorSubject, Subject } from 'rxjs';
4
+ import type { DataSource } from '../../../datasource/shared/datasources/datasource';
5
+ import type { MapBase } from '../../../map/shared/map.abstract';
6
+ import type { LayerOptions, LayerType } from './layer.interface';
7
+ export type AnyLayerBase = LayerBase | LayerGroupBase;
8
+ export declare abstract class LayerBase {
9
+ options: LayerOptions;
10
+ abstract type: LayerType;
11
+ abstract ol: BaseLayer;
12
+ abstract parent: LayerGroupBase;
13
+ protected abstract createOlLayer(): BaseLayer;
14
+ collapsed: boolean;
15
+ firstLoadComponent: boolean;
16
+ map: MapBase;
17
+ olLoadingProblem: boolean;
18
+ status$: Subject<SubjectStatus>;
19
+ dataSource: DataSource | undefined;
20
+ /**
21
+ * Define if a layer is generated by code OR defined by layer/context user layer.
22
+ * Useful for filtering layers list in mapOffline.directive or in the sharemap...
23
+ * return false by default.
24
+ */
25
+ get isIgoInternalLayer(): boolean;
26
+ get id(): string;
27
+ get parentId(): string;
28
+ get alias(): string;
29
+ get title(): string;
30
+ set title(title: string);
31
+ get zIndex(): number;
32
+ set zIndex(zIndex: number);
33
+ get baseLayer(): boolean;
34
+ set baseLayer(baseLayer: boolean);
35
+ get opacity(): number;
36
+ set opacity(opacity: number);
37
+ set isInResolutionsRange(value: boolean);
38
+ get isInResolutionsRange(): boolean;
39
+ readonly isInResolutionsRange$: BehaviorSubject<boolean>;
40
+ set maxResolution(value: number);
41
+ get maxResolution(): number;
42
+ set minResolution(value: number);
43
+ get minResolution(): number;
44
+ set visible(value: boolean);
45
+ get visible(): boolean;
46
+ private _visible$;
47
+ readonly visible$: import("rxjs").Observable<boolean>;
48
+ get displayed(): boolean;
49
+ set displayed(value: boolean);
50
+ private _displayed$;
51
+ displayed$: import("rxjs").Observable<boolean>;
52
+ private displayed$$;
53
+ get showInLayerList(): boolean;
54
+ get saveableOptions(): Partial<LayerOptions>;
55
+ constructor(options: LayerOptions);
56
+ afterCreated(): void;
57
+ init(map: MapBase): void;
58
+ add(parent?: LayerGroupBase): void;
59
+ private _add;
60
+ addParent(parent?: LayerGroupBase): void;
61
+ remove(): void;
62
+ private _remove;
63
+ reset(parent?: LayerGroupBase): void;
64
+ moveTo(parent?: LayerGroupBase): void;
65
+ clone(): LayerBase;
66
+ private initDisplayed$$;
67
+ }
68
+ export declare abstract class LayerGroupBase extends LayerBase {
69
+ type: LayerType;
70
+ children: LayerBase[];
71
+ abstract get descendants(): LayerBase[];
72
+ abstract addChild(layer: LayerBase): void;
73
+ abstract removeChild(layer: LayerBase): void;
74
+ abstract isDescendant(layer: LayerBase): boolean;
75
+ }
@@ -0,0 +1,32 @@
1
+ import { Group } from 'ol/layer.js';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import type { MapBase } from '../../../map/shared/map.abstract';
4
+ import { type AnyLayer } from './any-layer';
5
+ import { LayerGroupBase } from './layer-base';
6
+ import { type LayerGroupOptions } from './layer-group.interface';
7
+ export declare class LayerGroup extends LayerGroupBase {
8
+ children: AnyLayer[] | null;
9
+ options: LayerGroupOptions;
10
+ parent: LayerGroup;
11
+ ol: Group;
12
+ expanded: boolean;
13
+ private isInResolutionsRange$$;
14
+ readonly isInResolutionsRange$: BehaviorSubject<boolean>;
15
+ get saveableOptions(): Partial<LayerGroupOptions>;
16
+ get descendants(): AnyLayer[];
17
+ get descendantsLevel(): number;
18
+ constructor(children: AnyLayer[] | null, options: LayerGroupOptions);
19
+ init(map: MapBase): void;
20
+ add(parent?: LayerGroupBase): void;
21
+ addChild(...layers: AnyLayer[]): void;
22
+ remove(): void;
23
+ removeChild(layer: AnyLayer): void;
24
+ isDescendant(layer: AnyLayer): boolean;
25
+ private setChildrenObserver;
26
+ protected createOlLayer(): Group;
27
+ private hasChildren;
28
+ /** recursive */
29
+ private _getDescendants;
30
+ /** recursive */
31
+ private _getDescendantsLevel;
32
+ }
@@ -0,0 +1,8 @@
1
+ import { AnyLayerOptions } from './any-layer.interface';
2
+ import type { LayerOptionsBase } from './layer.interface';
3
+ export interface LayerGroupOptions extends Omit<LayerOptionsBase, 'title'> {
4
+ type: 'group';
5
+ title: string;
6
+ expanded?: boolean;
7
+ children?: AnyLayerOptions[];
8
+ }
@@ -1,61 +1,44 @@
1
1
  import { AuthInterceptor } from '@igo2/auth';
2
2
  import { MessageService } from '@igo2/core/message';
3
- import { SubjectStatus } from '@igo2/utils';
4
- import olLayer from 'ol/layer/Layer';
5
- import olSource from 'ol/source/Source';
6
- import { BehaviorSubject, Observable, Subject } from 'rxjs';
7
- import { DataSource } from '../../../datasource/shared/datasources/datasource';
8
- import { Legend } from '../../../datasource/shared/datasources/datasource.interface';
3
+ import OlLayer from 'ol/layer/Layer';
4
+ import { Source } from 'ol/source';
5
+ import { BehaviorSubject } from 'rxjs';
6
+ import { DataSource, Legend } from '../../../datasource/shared/datasources';
9
7
  import type { MapBase } from '../../../map/shared/map.abstract';
10
- import { LayerOptions } from './layer.interface';
11
- export declare abstract class Layer {
8
+ import { LayerBase, LayerGroupBase } from './layer-base';
9
+ import { type LayerGroup } from './layer-group';
10
+ import { type LayerOptions } from './layer.interface';
11
+ import { Linked } from './linked/linked-layer';
12
+ export declare abstract class Layer extends LayerBase {
12
13
  options: LayerOptions;
13
14
  protected messageService?: MessageService;
14
15
  protected authInterceptor?: AuthInterceptor;
15
- collapsed: boolean;
16
16
  dataSource: DataSource;
17
+ parent: LayerGroup;
18
+ ol: OlLayer<Source>;
19
+ hasBeenVisible$: BehaviorSubject<boolean>;
17
20
  legend: Legend[];
18
21
  legendCollapsed: boolean;
19
- firstLoadComponent: boolean;
20
- map: MapBase;
21
- ol: olLayer<olSource>;
22
- olLoadingProblem: boolean;
23
- status$: Subject<SubjectStatus>;
24
- hasBeenVisible$: BehaviorSubject<boolean>;
25
- private hasBeenVisible$$;
22
+ link?: Linked;
23
+ linkMaster?: Linked;
26
24
  private resolution$$;
27
- /**
28
- * Define if a layer is generated by code OR defined by layer/context user layer.
29
- * Useful for filtering layers list in mapOffline.directive or in the sharemap...
30
- * return false by default.
31
- */
32
- get isIgoInternalLayer(): boolean;
33
25
  get id(): string;
34
- get alias(): string;
35
- get title(): string;
36
- set title(title: string);
37
- get zIndex(): number;
38
- set zIndex(zIndex: number);
39
- get baseLayer(): boolean;
40
- set baseLayer(baseLayer: boolean);
41
- get opacity(): number;
42
- set opacity(opacity: number);
43
- set isInResolutionsRange(value: boolean);
44
- get isInResolutionsRange(): boolean;
45
- readonly isInResolutionsRange$: BehaviorSubject<boolean>;
46
- set maxResolution(value: number);
26
+ get visible(): boolean;
27
+ set visible(value: boolean);
47
28
  get maxResolution(): number;
48
- set minResolution(value: number);
29
+ set maxResolution(value: number);
49
30
  get minResolution(): number;
50
- set visible(value: boolean);
51
- get visible(): boolean;
52
- readonly visible$: BehaviorSubject<boolean>;
53
- get displayed(): boolean;
54
- readonly displayed$: Observable<boolean>;
55
- get showInLayerList(): boolean;
31
+ set minResolution(value: number);
32
+ get saveableOptions(): Partial<LayerOptions> | undefined;
56
33
  constructor(options: LayerOptions, messageService?: MessageService, authInterceptor?: AuthInterceptor);
57
- protected abstract createOlLayer(): olLayer<olSource>;
58
- setMap(map: MapBase | undefined): void;
34
+ protected abstract createOlLayer(): OlLayer<Source>;
35
+ init(map: MapBase): void;
36
+ createLink(): void;
37
+ remove(): void;
38
+ add(parent?: LayerGroupBase): void;
39
+ moveTo(parent?: LayerGroup): void;
40
+ private createLinkWithParent;
41
+ private findParentByLinkId;
59
42
  private showMessage;
60
43
  private observeResolution;
61
44
  private unobserveResolution;
@@ -1,40 +1,46 @@
1
1
  import { Message } from '@igo2/core/message';
2
2
  import olLayer from 'ol/layer/Layer';
3
3
  import olSource from 'ol/source/Source';
4
- import { AnyDataSourceOptions } from '../../../datasource/shared/datasources/any-datasource.interface';
5
- import { DataSource } from '../../../datasource/shared/datasources/datasource';
6
- import { MapExtent } from '../../../map/shared/map.interface';
7
- import { LegendOptions } from './legend.interface';
8
- export interface LayerOptions {
4
+ import type { AnyDataSourceOptions, DataSource } from '../../../datasource/shared/datasources';
5
+ import type { MapExtent } from '../../../map/shared/map.interface';
6
+ import type { LegendOptions } from './legend.interface';
7
+ import type { LayersLink } from './linked/linked-layer.interface';
8
+ export interface LayerOptions extends LayerOptionsBase {
9
9
  isIgoInternalLayer?: boolean;
10
10
  source?: DataSource;
11
11
  sourceOptions?: AnyDataSourceOptions;
12
- title?: string;
13
- id?: string;
14
12
  alias?: string;
15
13
  security?: LayerSecurityOptions;
16
14
  baseLayer?: boolean;
17
- opacity?: number;
18
- visible?: boolean;
19
- extent?: MapExtent;
20
- zIndex?: number;
21
15
  messages?: Message[];
22
- minResolution?: number;
23
- maxResolution?: number;
24
16
  minScaleDenom?: number;
25
17
  maxScaleDenom?: number;
26
- showInLayerList?: boolean;
27
18
  removable?: boolean;
28
19
  workspace?: GeoWorkspaceOptions;
29
20
  legendOptions?: LegendOptions;
30
21
  ol?: olLayer<olSource>;
31
22
  tooltip?: TooltipContent;
32
23
  _internal?: Record<string, string>;
33
- active?: boolean;
34
- check?: boolean;
35
24
  linkedLayers?: LayersLink;
36
25
  showButtonZoomToExtent?: boolean;
37
26
  }
27
+ export interface LayerOptionsBase {
28
+ id?: string | number;
29
+ /**
30
+ * An unique identifier calculated client side
31
+ * The name prop provide a way to have a unique identifier between all layers
32
+ **/
33
+ name?: string;
34
+ title?: string;
35
+ opacity?: number;
36
+ visible?: boolean;
37
+ extent?: MapExtent;
38
+ zIndex?: number;
39
+ minResolution?: number;
40
+ maxResolution?: number;
41
+ showInLayerList?: boolean;
42
+ parentId?: string;
43
+ }
38
44
  export interface LayerSecurityOptions {
39
45
  profils?: string[];
40
46
  }
@@ -54,31 +60,6 @@ export interface GeoWorkspaceQueryOptions {
54
60
  mapQueryOnOpenTab?: boolean;
55
61
  tabQuery?: boolean;
56
62
  }
57
- export interface LayersLink {
58
- linkId: string;
59
- /** Default value is true */
60
- showInMiniBaseMap?: boolean;
61
- links?: LayersLinkProperties[];
62
- }
63
- export interface LayersLinkProperties {
64
- linkedIds: string[];
65
- syncedDelete: boolean;
66
- properties: LinkedProperties[];
67
- }
68
- export declare enum LinkedProperties {
69
- OPACITY = "opacity",
70
- VISIBLE = "visible",
71
- OGCFILTERS = "ogcFilters",
72
- MINRESOLUTION = "minResolution",
73
- MAXRESOLUTION = "maxResolution",
74
- ZINDEX = "zIndex",
75
- TIMEFILTER = "timeFilter"
76
- }
77
- export interface GroupLayers {
78
- title: string;
79
- layers?: LayerOptions;
80
- collapsed?: boolean;
81
- }
82
63
  export interface TooltipContent {
83
64
  type?: TooltipType;
84
65
  text?: string;
@@ -88,3 +69,4 @@ export declare enum TooltipType {
88
69
  ABSTRACT = "abstract",
89
70
  CUSTOM = "custom"
90
71
  }
72
+ export type LayerType = 'vector' | 'raster' | 'group';
@@ -0,0 +1,3 @@
1
+ export * from './linked-layer';
2
+ export * from './linked-layer.interface';
3
+ export * from './linked-layer.utils';
@@ -0,0 +1,35 @@
1
+ import type { LayerController } from '../../layer-controller';
2
+ import type { Layer } from '../layer';
3
+ import type { LayerGroup } from '../layer-group';
4
+ import { LayersLinkProperties } from './linked-layer.interface';
5
+ export declare class Linked {
6
+ layer: Layer;
7
+ private children;
8
+ private watcher;
9
+ private bidirectionnalChildren;
10
+ private childrenByProperty;
11
+ private disabledProperties;
12
+ constructor(layer: Layer);
13
+ get options(): import("@igo2/geo").LayerOptions;
14
+ get links(): LayersLinkProperties[];
15
+ get map(): import("@igo2/geo").MapBase;
16
+ init(): void;
17
+ private initZIndexLinkOptions;
18
+ destroy(): void;
19
+ add(layer: Layer): void;
20
+ hasSyncDeletion(layer: Layer): boolean;
21
+ remove(layer: Layer): void;
22
+ deleteChildren(controller: LayerController): void;
23
+ move(layer: Layer, parent?: LayerGroup): void;
24
+ private disable;
25
+ private enable;
26
+ private getByProperty;
27
+ private propertyIsDisabled;
28
+ private getLayerLinks;
29
+ private removeArrayItem;
30
+ private getLinkedLayersOnZindex;
31
+ private unwatch;
32
+ private handleChange;
33
+ private handleDisplayChange;
34
+ private findChildren;
35
+ }
@@ -0,0 +1,32 @@
1
+ import type { AnyLayer } from '../any-layer';
2
+ import type { Layer } from '../layer';
3
+ export type AnyPropertyOptions = ZindexPropertyOptions | BasePropertyOptions;
4
+ export interface ZindexPropertyOptions extends BasePropertyOptions {
5
+ initialOrder: AnyLayer[];
6
+ }
7
+ interface BasePropertyOptions {
8
+ layers: Layer[];
9
+ }
10
+ export interface LayersLink {
11
+ linkId: string;
12
+ /** Default value is true */
13
+ showInMiniBaseMap?: boolean;
14
+ links?: LayersLinkProperties[];
15
+ }
16
+ export interface LayersLinkProperties {
17
+ bidirectionnal?: boolean;
18
+ linkedIds: string[];
19
+ syncedDelete: boolean;
20
+ properties: LinkedProperties[];
21
+ }
22
+ export declare enum LinkedProperties {
23
+ OPACITY = "opacity",
24
+ VISIBLE = "visible",
25
+ DISPLAYED = "displayed",
26
+ OGCFILTERS = "ogcFilters",
27
+ MINRESOLUTION = "minResolution",
28
+ MAXRESOLUTION = "maxResolution",
29
+ ZINDEX = "zIndex",
30
+ TIMEFILTER = "timeFilter"
31
+ }
32
+ export {};
@@ -0,0 +1,9 @@
1
+ import type { AnyLayer } from '../any-layer';
2
+ import type { AnyLayerItemOptions, AnyLayerOptions } from '../any-layer.interface';
3
+ import type { Layer } from '../layer';
4
+ import type { LinkedProperties } from './linked-layer.interface';
5
+ export declare function isLayerLinked(layer: AnyLayer): layer is Layer;
6
+ export declare function isLinkMaster(layer: Layer): boolean;
7
+ export declare function isLayerLinkedTogether(layerA: AnyLayer, layerB: AnyLayer, layers: AnyLayer[], property?: LinkedProperties): boolean;
8
+ export declare function isLayerLinkedOptions(options: AnyLayerOptions): options is AnyLayerItemOptions;
9
+ export declare function isBaseLayerLinked(layer: AnyLayer, allLayers: AnyLayer[]): layer is Layer;
@@ -8,12 +8,14 @@ import { TileArcGISRestDataSource } from '../../../datasource/shared/datasources
8
8
  import { TileDebugDataSource } from '../../../datasource/shared/datasources/tiledebug-datasource';
9
9
  import { WMTSDataSource } from '../../../datasource/shared/datasources/wmts-datasource';
10
10
  import { XYZDataSource } from '../../../datasource/shared/datasources/xyz-datasource';
11
- import type { IgoMap } from '../../../map/shared/map';
11
+ import type { MapBase } from '../../../map/shared/map.abstract';
12
12
  import { Layer } from './layer';
13
+ import { LayerType } from './layer.interface';
13
14
  import { TileLayerOptions } from './tile-layer.interface';
14
15
  export declare class TileLayer extends Layer {
15
16
  messageService?: MessageService;
16
17
  authInterceptor?: AuthInterceptor;
18
+ type: LayerType;
17
19
  dataSource: OSMDataSource | WMTSDataSource | XYZDataSource | TileDebugDataSource | CartoDataSource | TileArcGISRestDataSource;
18
20
  options: TileLayerOptions;
19
21
  ol: olLayerTile<olSourceTile>;
@@ -27,5 +29,6 @@ export declare class TileLayer extends Layer {
27
29
  * @param url the url string or function to retrieve the data
28
30
  */
29
31
  customLoader(tile: any, url: string, interceptor: AuthInterceptor): void;
30
- setMap(map: IgoMap | undefined): void;
32
+ init(map: MapBase | undefined): void;
33
+ remove(): void;
31
34
  }
@@ -11,11 +11,13 @@ import { FeatureDataSource } from '../../../datasource/shared/datasources/featur
11
11
  import { WebSocketDataSource } from '../../../datasource/shared/datasources/websocket-datasource';
12
12
  import { WFSDataSource } from '../../../datasource/shared/datasources/wfs-datasource';
13
13
  import { WFSDataSourceOptions } from '../../../datasource/shared/datasources/wfs-datasource.interface';
14
- import type { IgoMap, MapExtent } from '../../../map/shared';
14
+ import type { MapBase } from '../../../map/shared/map.abstract';
15
+ import { MapExtent } from '../../../map/shared/map.interface';
15
16
  import { GeoDBService } from '../../../offline/geoDB/geoDB.service';
16
17
  import { LayerDBService } from '../../../offline/layerDB/layerDB.service';
17
18
  import { GeoNetworkService } from '../../../offline/shared/geo-network.service';
18
19
  import { Layer } from './layer';
20
+ import { LayerType } from './layer.interface';
19
21
  import type { VectorLayerOptions } from './vector-layer.interface';
20
22
  export declare class VectorLayer extends Layer {
21
23
  messageService?: MessageService;
@@ -23,6 +25,7 @@ export declare class VectorLayer extends Layer {
23
25
  private geoNetworkService?;
24
26
  geoDBService?: GeoDBService;
25
27
  layerDBService?: LayerDBService;
28
+ type: LayerType;
26
29
  private previousLoadExtent;
27
30
  private previousLoadResolution;
28
31
  private previousOgcFilters;
@@ -36,11 +39,12 @@ export declare class VectorLayer extends Layer {
36
39
  get exportable(): boolean;
37
40
  constructor(options: VectorLayerOptions, messageService?: MessageService, authInterceptor?: AuthInterceptor, geoNetworkService?: GeoNetworkService, geoDBService?: GeoDBService, layerDBService?: LayerDBService);
38
41
  protected createOlLayer(): olLayerVector<olSourceVector>;
39
- removeLayerFromIDB(): void;
42
+ remove(): void;
43
+ private removeLayerFromIDB;
40
44
  private maintainOptionsInIdb;
41
45
  private maintainFeaturesInIdb;
42
46
  protected flash(feature: any): void;
43
- setMap(map: IgoMap | undefined): void;
47
+ init(map: MapBase | undefined): void;
44
48
  setExtent(extent: MapExtent): void;
45
49
  onUnwatch(): void;
46
50
  stopAnimation(): void;
@@ -2,12 +2,14 @@ import { AuthInterceptor } from '@igo2/auth';
2
2
  import { MessageService } from '@igo2/core/message';
3
3
  import olLayerVectorTile from 'ol/layer/VectorTile';
4
4
  import { MVTDataSource } from '../../../datasource/shared/datasources/mvt-datasource';
5
- import type { IgoMap } from '../../../map/shared/map';
5
+ import type { MapBase } from '../../../map/shared/map.abstract';
6
6
  import { Layer } from './layer';
7
+ import { LayerType } from './layer.interface';
7
8
  import { VectorTileLayerOptions } from './vectortile-layer.interface';
8
9
  export declare class VectorTileLayer extends Layer {
9
10
  messageService?: MessageService;
10
11
  authInterceptor?: AuthInterceptor;
12
+ type: LayerType;
11
13
  dataSource: MVTDataSource;
12
14
  options: VectorTileLayerOptions;
13
15
  ol: olLayerVectorTile;
@@ -24,5 +26,6 @@ export declare class VectorTileLayer extends Layer {
24
26
  * @param failure On failure event action to trigger TODO
25
27
  */
26
28
  customLoader(url: any, format: any, interceptor: any, success: any, failure?: any): (extent: any, resolution: any, projection: any) => void;
27
- setMap(map: IgoMap | undefined): void;
29
+ init(map: MapBase | undefined): void;
30
+ remove(): void;
28
31
  }
@@ -1,2 +1,12 @@
1
- import { AnyLayerOptions } from '../shared/layers/any-layer.interface';
2
- export declare function computeMVTOptionsOnHover(layerOptions: AnyLayerOptions): AnyLayerOptions;
1
+ import type { AnyLayer, AnyLayerItemOptions, AnyLayerOptions, Layer, LayerGroup, LayerGroupOptions } from '../shared/layers';
2
+ type SortDirection = 'asc' | 'desc';
3
+ export declare function isLayerGroupOptions(option: AnyLayerOptions): option is LayerGroupOptions;
4
+ export declare function isLayerItemOptions(options: AnyLayerOptions): options is AnyLayerItemOptions;
5
+ export declare function isLayerGroup(layer: AnyLayer): layer is LayerGroup;
6
+ export declare function isLayerItem(layer: AnyLayer): layer is Layer;
7
+ export declare function isBaseLayer(layer: AnyLayer): layer is Layer;
8
+ export declare function computeMVTOptionsOnHover(layerOptions: AnyLayerItemOptions): AnyLayerItemOptions;
9
+ export declare function isSaveableLayer(layer: Layer): boolean;
10
+ /** Recursive */
11
+ export declare function sortLayersByZindex(layers: AnyLayer[], direction: SortDirection): AnyLayer[];
12
+ export {};
@@ -1,7 +1,7 @@
1
- import { Layer } from '../shared/layers/layer';
1
+ import { AnyLayer } from '../shared';
2
2
  import { OutputLayerLegend } from '../shared/layers/legend.interface';
3
3
  /**
4
4
  * Get all the layers legend
5
5
  * @return Array of legend
6
6
  */
7
- export declare function getLayersLegends(layers: Layer[]): OutputLayerLegend[];
7
+ export declare function getLayersLegends(layers: AnyLayer[]): OutputLayerLegend[];
@@ -1,3 +1,4 @@
1
+ import { Coordinate } from 'ol/coordinate';
1
2
  import { ProjectionLike } from 'ol/proj';
2
3
  export interface GeolocationOptions {
3
4
  activateDefault?: boolean;
@@ -14,7 +15,7 @@ export interface MapGeolocationControllerOptions {
14
15
  buffer?: GeolocationBuffer;
15
16
  }
16
17
  export interface MapGeolocationState {
17
- position: number[];
18
+ position: Coordinate;
18
19
  projection: string;
19
20
  accuracy: number;
20
21
  altitude: number;
@@ -25,7 +25,6 @@ export declare class HoverFeatureDirective implements OnInit, OnDestroy {
25
25
  private pointerHoverFeatureStore;
26
26
  private lastTimeoutRequest;
27
27
  private store$$;
28
- private layers$$;
29
28
  private selectionLayer;
30
29
  private selectionMVT;
31
30
  private mvtStyleOptions;
@@ -1,17 +1,13 @@
1
- import { ObjectEvent } from 'ol/Object';
2
- import { Layer, LinkedProperties } from '../../layer/shared/layers';
3
- import type { MapBase } from '../shared/map.abstract';
4
- export declare function getLinkedLayersOptions(layer: Layer): import("../../layer/shared/layers").LayersLink;
5
- export declare function getIgoLayerByLinkId(map: MapBase, id: string): Layer;
6
- export declare function layerHasLinkWithProperty(layer: Layer, property: LinkedProperties): boolean;
7
- export declare function layerHasLinkDeletion(layer: Layer): boolean;
8
- export declare function getRootParentByProperty(map: MapBase, layer: Layer, property: LinkedProperties): Layer;
9
- export declare function getDirectParentLayerByProperty(map: MapBase, layer: Layer, property: LinkedProperties): Layer;
10
- export declare function getDirectChildLayersByProperty(map: MapBase, layer: Layer, property: LinkedProperties): Layer[];
11
- export declare function getAllChildLayersByProperty(map: MapBase, layer: Layer, knownChildLayers: Layer[], property: LinkedProperties): Layer[];
12
- export declare function getRootParentByDeletion(map: MapBase, layer: Layer): Layer;
13
- export declare function getDirectParentLayerByDeletion(map: MapBase, layer: Layer): Layer;
14
- export declare function getDirectChildLayersByDeletion(map: MapBase, layer: Layer): Layer[];
15
- export declare function getAllChildLayersByDeletion(map: MapBase, layer: Layer, knownChildLayers: Layer[]): Layer[];
16
- export declare function initLayerSyncFromRootParentLayers(map: MapBase, layers: Layer[]): void;
17
- export declare function handleLayerPropertyChange(map: MapBase, propertyChange: ObjectEvent, initiatorIgoLayer: Layer): void;
1
+ import type { AnyLayer } from '../../layer/shared/layers/any-layer';
2
+ import type { Layer } from '../../layer/shared/layers/layer';
3
+ import { LayersLinkProperties, LinkedProperties } from '../../layer/shared/layers/linked/linked-layer.interface';
4
+ import { MapViewController } from '../../map/shared/controllers/view';
5
+ import { LayerWatcherChange } from '../utils/layer-watcher';
6
+ export declare function getRootParentByProperty(layers: AnyLayer[], layer: Layer, property: LinkedProperties): Layer;
7
+ export declare function getAllChildLayersByProperty(layers: AnyLayer[], layer: Layer, knownChildLayers: AnyLayer[], property: LinkedProperties): AnyLayer[];
8
+ export declare function getRootParentByDeletion(layer: Layer, layers: AnyLayer[]): Layer;
9
+ export declare function getAllChildLayersByDeletion(layers: Layer[], layer: Layer, knownChildLayers: Layer[]): Layer[];
10
+ export declare function getLinkedLayersOptions(layer: Layer): import("../../layer/shared/layers/linked/linked-layer.interface").LayersLink;
11
+ export declare function findLayerByLinkId(layers: Layer[], id: string): Layer;
12
+ export declare function getLayersByDeletion(layers: Layer[], links: LayersLinkProperties[]): Layer[];
13
+ export declare function handleLayerPropertyChange(layers: AnyLayer[], change: LayerWatcherChange, viewController: MapViewController): void;
@@ -1,25 +1,21 @@
1
1
  import { SubjectStatus } from '@igo2/utils';
2
- import { ObjectEvent } from 'ol/Object';
3
- import { Layer as OlLayer } from 'ol/layer';
4
2
  import { Projection } from 'ol/proj';
5
- import { Source } from 'ol/source';
6
3
  import { Map } from 'ol';
7
4
  import { BehaviorSubject, Subject } from 'rxjs';
8
5
  import { FeatureDataSource } from '../../datasource/shared/datasources';
9
- import { Layer } from '../../layer/shared/layers/layer';
6
+ import { LayerController } from '../../layer/shared/layer-controller';
7
+ import type { AnyLayer } from '../../layer/shared/layers/any-layer';
8
+ import type { Layer } from '../../layer/shared/layers/layer';
10
9
  import { Overlay } from '../../overlay/shared/overlay';
11
10
  import { MapGeolocationController, MapViewController } from '../shared/controllers';
12
- import { MapControlsOptions, MapExtent, MapViewOptions } from '../shared/map.interface';
11
+ import { MapControlsOptions, MapExtent, MapOptions, MapViewOptions } from '../shared/map.interface';
12
+ import { LayerWatcher, LayerWatcherChange } from '../utils';
13
13
  export declare abstract class MapBase {
14
14
  ol: Map;
15
15
  forcedOffline$: BehaviorSubject<boolean>;
16
- layers$: BehaviorSubject<Layer[]>;
17
- layersAddedByClick$: BehaviorSubject<Layer[]>;
16
+ layersAddedByClick$: BehaviorSubject<AnyLayer[]>;
18
17
  status$: Subject<SubjectStatus>;
19
- propertyChange$: Subject<{
20
- event: ObjectEvent;
21
- layer: Layer;
22
- }>;
18
+ propertyChange$: Subject<LayerWatcherChange>;
23
19
  overlay: Overlay;
24
20
  queryResultsOverlay: Overlay;
25
21
  searchResultsOverlay: Overlay;
@@ -29,11 +25,12 @@ export declare abstract class MapBase {
29
25
  mapCenter$: BehaviorSubject<boolean>;
30
26
  selectedFeatures$: BehaviorSubject<Layer[]>;
31
27
  bufferDataSource: FeatureDataSource;
32
- layers: Layer[];
28
+ layerWatcher: LayerWatcher;
29
+ readonly options: MapOptions;
30
+ layerController: LayerController;
33
31
  projection: string;
34
32
  viewProjection: Projection;
35
33
  projectionCode: string;
36
- abstract init(): void;
37
34
  abstract setTarget(id: string): void;
38
35
  abstract updateView(options: MapViewOptions): void;
39
36
  abstract setView(options: MapViewOptions): void;
@@ -41,20 +38,6 @@ export declare abstract class MapBase {
41
38
  abstract getCenter(projection?: string | Projection): [number, number];
42
39
  abstract getExtent(projection?: string | Projection): MapExtent;
43
40
  abstract getZoom(): number;
44
- abstract changeBaseLayer(baseLayer: Layer): void;
45
- abstract getBaseLayers(): Layer[];
46
- abstract getLayerById(id: string): Layer | undefined;
47
- abstract getLayerByAlias(alias: string): Layer;
48
- abstract getLayerByOlUId(olUId: string): Layer;
49
- abstract getLayerByOlLayer(olLayer: OlLayer<Source>): Layer;
50
- abstract addLayer(layer: Layer, push: boolean): void;
51
- abstract addLayers(layers: Layer[], push?: boolean): void;
52
- abstract removeLayer(layer: Layer): void;
53
- abstract removeLayers(layers: Layer[]): void;
54
- abstract removeAllLayers(): void;
55
- abstract raiseLayer(layer: Layer): void;
56
- abstract raiseLayers(layers: Layer[]): void;
57
- abstract lowerLayer(layer: Layer): void;
58
- abstract lowerLayers(layers: Layer[]): void;
59
- abstract moveLayer(layer: Layer, from: number, to: number): void;
41
+ /** @deprecated find a way to remove this method. For now we discourage to use it until we find the way to remove it */
42
+ abstract getLayerByOlUId(olUId: string): AnyLayer;
60
43
  }