@igo2/geo 18.0.0-next.1 → 18.0.0-next.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +4 -4
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +7 -9
  3. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +16 -13
  4. package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +5 -5
  5. package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +4 -4
  6. package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +4 -4
  7. package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +4 -4
  8. package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +5 -5
  9. package/esm2022/lib/catalog/catalog.module.mjs +5 -5
  10. package/esm2022/lib/catalog/shared/catalog.enum.mjs +1 -1
  11. package/esm2022/lib/catalog/shared/catalog.service.mjs +4 -4
  12. package/esm2022/lib/datasource/shared/capabilities.service.mjs +4 -4
  13. package/esm2022/lib/datasource/shared/datasource.service.mjs +4 -4
  14. package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
  15. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +9 -1
  16. package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +1 -1
  17. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +8 -1
  18. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
  19. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +8 -1
  20. package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
  21. package/esm2022/lib/datasource/shared/datasources/datasource.mjs +8 -1
  22. package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
  23. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +8 -1
  24. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
  25. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +8 -1
  26. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +1 -1
  27. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +4 -1
  28. package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +1 -1
  29. package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +1 -1
  30. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +1 -1
  31. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +8 -1
  32. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
  33. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +1 -1
  34. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
  35. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
  36. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +73 -2
  37. package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +4 -4
  38. package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
  39. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +8 -1
  40. package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +7 -5
  41. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
  42. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +1 -1
  43. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
  44. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +1 -1
  45. package/esm2022/lib/datasource/shared/options/options-api.service.mjs +4 -4
  46. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +153 -104
  47. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +179 -85
  48. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +95 -46
  49. package/esm2022/lib/directions/directions-sources/directions-source.mjs +1 -1
  50. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +4 -4
  51. package/esm2022/lib/directions/directions.component.mjs +57 -33
  52. package/esm2022/lib/directions/directions.module.mjs +5 -5
  53. package/esm2022/lib/directions/shared/directions.enum.mjs +51 -7
  54. package/esm2022/lib/directions/shared/directions.interface.mjs +1 -1
  55. package/esm2022/lib/directions/shared/directions.service.mjs +125 -99
  56. package/esm2022/lib/directions/shared/directions.utils.mjs +281 -318
  57. package/esm2022/lib/directions/shared/store.mjs +2 -2
  58. package/esm2022/lib/download/download-button/download-button.component.mjs +10 -22
  59. package/esm2022/lib/download/download.module.mjs +5 -5
  60. package/esm2022/lib/download/shared/download.service.mjs +4 -4
  61. package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +4 -4
  62. package/esm2022/lib/draw/draw/draw-popup.component.mjs +4 -4
  63. package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +4 -4
  64. package/esm2022/lib/draw/draw/draw.component.mjs +8 -15
  65. package/esm2022/lib/draw/draw/draw.module.mjs +5 -5
  66. package/esm2022/lib/draw/drawingTool.module.mjs +5 -5
  67. package/esm2022/lib/draw/shared/draw-icon.service.mjs +4 -4
  68. package/esm2022/lib/draw/shared/draw.utils.mjs +1 -1
  69. package/esm2022/lib/environment/environment.interface.mjs +1 -1
  70. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +5 -5
  71. package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +4 -4
  72. package/esm2022/lib/feature/feature-details/feature-details.module.mjs +5 -5
  73. package/esm2022/lib/feature/feature-form/feature-form.component.mjs +4 -4
  74. package/esm2022/lib/feature/feature-form/feature-form.module.mjs +5 -5
  75. package/esm2022/lib/feature/feature.module.mjs +5 -5
  76. package/esm2022/lib/feature/shared/feature-store.utils.mjs +7 -6
  77. package/esm2022/lib/feature/shared/feature.interfaces.mjs +1 -1
  78. package/esm2022/lib/feature/shared/store.mjs +1 -1
  79. package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +3 -3
  80. package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +7 -4
  81. package/esm2022/lib/feature/shared/strategies/selection.mjs +5 -4
  82. package/esm2022/lib/filter/filter.module.mjs +5 -5
  83. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +6 -6
  84. package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +4 -4
  85. package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +4 -4
  86. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +4 -4
  87. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +4 -4
  88. package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +4 -4
  89. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +5 -5
  90. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +8 -6
  91. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +4 -4
  92. package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +11 -4
  93. package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +4 -4
  94. package/esm2022/lib/filter/shared/ogc-filter.mjs +7 -2
  95. package/esm2022/lib/filter/shared/ogc-filter.service.mjs +4 -4
  96. package/esm2022/lib/filter/shared/spatial-filter.service.mjs +4 -4
  97. package/esm2022/lib/filter/shared/time-filter.service.mjs +4 -4
  98. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +4 -4
  99. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +5 -11
  100. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +5 -11
  101. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +5 -5
  102. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +15 -12
  103. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +5 -5
  104. package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +7 -5
  105. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +7 -18
  106. package/esm2022/lib/geo.module.mjs +5 -5
  107. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +4 -4
  108. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +4 -4
  109. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +5 -5
  110. package/esm2022/lib/geometry/geometry.module.mjs +5 -5
  111. package/esm2022/lib/import-export/export-button/export-button.component.mjs +7 -20
  112. package/esm2022/lib/import-export/import-export/import-export.component.mjs +215 -323
  113. package/esm2022/lib/import-export/import-export.module.mjs +5 -5
  114. package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +4 -4
  115. package/esm2022/lib/import-export/shared/export.interface.mjs +1 -1
  116. package/esm2022/lib/import-export/shared/export.service.mjs +257 -91
  117. package/esm2022/lib/import-export/shared/export.type.mjs +9 -9
  118. package/esm2022/lib/import-export/shared/export.utils.mjs +5 -1
  119. package/esm2022/lib/import-export/shared/import.service.mjs +4 -4
  120. package/esm2022/lib/import-export/shared/import.utils.mjs +3 -3
  121. package/esm2022/lib/layer/index.mjs +10 -5
  122. package/esm2022/lib/layer/layer-group/index.mjs +2 -0
  123. package/esm2022/lib/layer/layer-group/layer-group.component.mjs +103 -0
  124. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +62 -129
  125. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +7 -10
  126. package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +4 -4
  127. package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +8 -9
  128. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +16 -23
  129. package/esm2022/lib/layer/layer-list/index.mjs +1 -3
  130. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +177 -776
  131. package/esm2022/lib/layer/layer-list-tool/index.mjs +1 -2
  132. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +52 -85
  133. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +7 -2
  134. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +57 -17
  135. package/esm2022/lib/layer/layer-search/index.mjs +2 -0
  136. package/esm2022/lib/layer/layer-search/layer-search.component.mjs +65 -0
  137. package/esm2022/lib/layer/layer-unavailable/index.mjs +3 -0
  138. package/esm2022/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.mjs +25 -0
  139. package/esm2022/lib/layer/layer-unavailable/layer-unavailable.component.mjs +35 -0
  140. package/esm2022/lib/layer/layer-viewer/index.mjs +3 -0
  141. package/esm2022/lib/layer/layer-viewer/layer-viewer.component.mjs +226 -0
  142. package/esm2022/lib/layer/layer-viewer/layer-viewer.interface.mjs +2 -0
  143. package/esm2022/lib/layer/layer-viewer-bottom-actions/index.mjs +2 -0
  144. package/esm2022/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.mjs +207 -0
  145. package/esm2022/lib/layer/layer-visibility-button/index.mjs +2 -0
  146. package/esm2022/lib/layer/layer-visibility-button/layer-visibility-button.component.mjs +83 -0
  147. package/esm2022/lib/layer/layer.module.mjs +54 -36
  148. package/esm2022/lib/layer/shared/index.mjs +2 -1
  149. package/esm2022/lib/layer/shared/layer-controller.mjs +316 -0
  150. package/esm2022/lib/layer/shared/layer-selection.mjs +38 -0
  151. package/esm2022/lib/layer/shared/layer.service.mjs +73 -27
  152. package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
  153. package/esm2022/lib/layer/shared/layers/any-layer.mjs +1 -1
  154. package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
  155. package/esm2022/lib/layer/shared/layers/image-layer.mjs +8 -3
  156. package/esm2022/lib/layer/shared/layers/index.mjs +6 -1
  157. package/esm2022/lib/layer/shared/layers/layer-base.mjs +199 -0
  158. package/esm2022/lib/layer/shared/layers/layer-group.interface.mjs +2 -0
  159. package/esm2022/lib/layer/shared/layers/layer-group.mjs +120 -0
  160. package/esm2022/lib/layer/shared/layers/layer.interface.mjs +1 -11
  161. package/esm2022/lib/layer/shared/layers/layer.mjs +114 -118
  162. package/esm2022/lib/layer/shared/layers/linked/index.mjs +4 -0
  163. package/esm2022/lib/layer/shared/layers/linked/linked-layer.interface.mjs +12 -0
  164. package/esm2022/lib/layer/shared/layers/linked/linked-layer.mjs +242 -0
  165. package/esm2022/lib/layer/shared/layers/linked/linked-layer.utils.mjs +70 -0
  166. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +8 -3
  167. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +22 -19
  168. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +8 -3
  169. package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +4 -4
  170. package/esm2022/lib/layer/utils/layer.utils.mjs +47 -1
  171. package/esm2022/lib/layer/utils/outputLegend.mjs +5 -1
  172. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +6 -6
  173. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +11 -9
  174. package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +4 -4
  175. package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +4 -4
  176. package/esm2022/lib/map/info-section/info-section.component.mjs +4 -4
  177. package/esm2022/lib/map/map-browser/map-browser.component.mjs +4 -4
  178. package/esm2022/lib/map/map-center/map-center.component.mjs +4 -4
  179. package/esm2022/lib/map/map.module.mjs +5 -5
  180. package/esm2022/lib/map/menu-button/menu-button.component.mjs +4 -4
  181. package/esm2022/lib/map/offline-button/offline-button.component.mjs +4 -4
  182. package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +4 -4
  183. package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +1 -1
  184. package/esm2022/lib/map/shared/controllers/view.mjs +1 -1
  185. package/esm2022/lib/map/shared/hover-feature.directive.mjs +5 -13
  186. package/esm2022/lib/map/shared/linkedLayers.utils.mjs +113 -123
  187. package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +4 -4
  188. package/esm2022/lib/map/shared/map.abstract.mjs +4 -3
  189. package/esm2022/lib/map/shared/map.mjs +7 -243
  190. package/esm2022/lib/map/shared/map.service.mjs +4 -4
  191. package/esm2022/lib/map/shared/map.utils.mjs +3 -3
  192. package/esm2022/lib/map/shared/mapOffline.directive.mjs +12 -8
  193. package/esm2022/lib/map/shared/projection.service.mjs +4 -4
  194. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +4 -4
  195. package/esm2022/lib/map/utils/index.mjs +2 -0
  196. package/esm2022/lib/map/utils/layer-watcher.mjs +45 -13
  197. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +4 -5
  198. package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +4 -4
  199. package/esm2022/lib/measure/measure.module.mjs +5 -5
  200. package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +4 -4
  201. package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +4 -4
  202. package/esm2022/lib/measure/measurer/measurer-item.component.mjs +4 -4
  203. package/esm2022/lib/measure/measurer/measurer.component.mjs +10 -28
  204. package/esm2022/lib/measure/measurer/measurer.module.mjs +5 -5
  205. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +11 -23
  206. package/esm2022/lib/metadata/metadata.module.mjs +5 -5
  207. package/esm2022/lib/metadata/shared/metadata.service.mjs +4 -4
  208. package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +5 -8
  209. package/esm2022/lib/offline/geoDB/geoDB.service.mjs +21 -22
  210. package/esm2022/lib/offline/index.mjs +3 -1
  211. package/esm2022/lib/offline/layerDB/layerDB.service.mjs +16 -17
  212. package/esm2022/lib/offline/offline.interface.mjs +2 -0
  213. package/esm2022/lib/offline/offline.provider.mjs +51 -0
  214. package/esm2022/lib/offline/shared/geo-network.service.mjs +15 -16
  215. package/esm2022/lib/overlay/shared/overlay.mjs +3 -2
  216. package/esm2022/lib/print/print/print.component.mjs +4 -4
  217. package/esm2022/lib/print/print-form/print-form.component.mjs +4 -4
  218. package/esm2022/lib/print/print.module.mjs +5 -5
  219. package/esm2022/lib/print/shared/print.service.mjs +6 -6
  220. package/esm2022/lib/query/query.module.mjs +5 -5
  221. package/esm2022/lib/query/shared/query-search-source.mjs +4 -4
  222. package/esm2022/lib/query/shared/query.directive.mjs +12 -8
  223. package/esm2022/lib/query/shared/query.service.mjs +10 -10
  224. package/esm2022/lib/query/shared/query.utils.mjs +5 -1
  225. package/esm2022/lib/search/search-bar/search-bar.component.mjs +4 -4
  226. package/esm2022/lib/search/search-bar/search-bar.module.mjs +5 -5
  227. package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +4 -4
  228. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +18 -12
  229. package/esm2022/lib/search/search-results/search-results-item.component.mjs +4 -4
  230. package/esm2022/lib/search/search-results/search-results.component.mjs +4 -4
  231. package/esm2022/lib/search/search-results/search-results.module.mjs +5 -5
  232. package/esm2022/lib/search/search-selector/search-selector.component.mjs +4 -4
  233. package/esm2022/lib/search/search-selector/search-selector.module.mjs +5 -5
  234. package/esm2022/lib/search/search-settings/search-settings.component.mjs +4 -4
  235. package/esm2022/lib/search/search-settings/search-settings.module.mjs +5 -5
  236. package/esm2022/lib/search/search.module.mjs +5 -5
  237. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +5 -14
  238. package/esm2022/lib/search/shared/search.service.mjs +4 -4
  239. package/esm2022/lib/search/shared/sources/cadastre.mjs +4 -4
  240. package/esm2022/lib/search/shared/sources/coordinates.mjs +7 -7
  241. package/esm2022/lib/search/shared/sources/icherche.mjs +10 -10
  242. package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
  243. package/esm2022/lib/search/shared/sources/ilayer.mjs +7 -7
  244. package/esm2022/lib/search/shared/sources/nominatim.mjs +4 -4
  245. package/esm2022/lib/search/shared/sources/storedqueries.mjs +7 -7
  246. package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +1 -1
  247. package/esm2022/lib/search/shared/sources/workspace.mjs +4 -4
  248. package/esm2022/lib/style/style-list/style-list.module.mjs +5 -5
  249. package/esm2022/lib/style/style-list/style-list.service.mjs +4 -4
  250. package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +4 -4
  251. package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +4 -4
  252. package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +4 -4
  253. package/esm2022/lib/style/style-service/draw-style.service.mjs +4 -4
  254. package/esm2022/lib/style/style-service/style.service.mjs +4 -4
  255. package/esm2022/lib/style/style.module.mjs +5 -5
  256. package/esm2022/lib/toast/toast.component.mjs +4 -4
  257. package/esm2022/lib/toast/toast.module.mjs +5 -5
  258. package/esm2022/lib/utils/id-generator.mjs +1 -1
  259. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +4 -4
  260. package/esm2022/lib/wkt/shared/wkt.service.mjs +4 -4
  261. package/esm2022/lib/wkt/wkt.module.mjs +5 -5
  262. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +4 -4
  263. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +5 -5
  264. package/esm2022/lib/workspace/shared/edition-workspace.mjs +6 -4
  265. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +22 -20
  266. package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +4 -4
  267. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +20 -5
  268. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +25 -7
  269. package/esm2022/lib/workspace/shared/workspace.utils.mjs +6 -3
  270. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +5 -5
  271. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +5 -5
  272. package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +9 -5
  273. package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +5 -5
  274. package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +7 -6
  275. package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +5 -5
  276. package/esm2022/lib/workspace/workspace.module.mjs +5 -5
  277. package/fesm2022/igo2-geo.mjs +19538 -18321
  278. package/fesm2022/igo2-geo.mjs.map +1 -1
  279. package/lib/catalog/shared/catalog.enum.d.ts +1 -3
  280. package/lib/datasource/shared/capabilities.service.d.ts +7 -2
  281. package/lib/datasource/shared/datasources/any-datasource.interface.d.ts +1 -0
  282. package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +1 -0
  283. package/lib/datasource/shared/datasources/carto-datasource.d.ts +1 -0
  284. package/lib/datasource/shared/datasources/carto-datasource.interface.d.ts +0 -2
  285. package/lib/datasource/shared/datasources/cluster-datasource.d.ts +1 -0
  286. package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +0 -1
  287. package/lib/datasource/shared/datasources/datasource.d.ts +1 -0
  288. package/lib/datasource/shared/datasources/datasource.interface.d.ts +1 -2
  289. package/lib/datasource/shared/datasources/feature-datasource.d.ts +1 -0
  290. package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +0 -3
  291. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.d.ts +1 -0
  292. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.d.ts +0 -2
  293. package/lib/datasource/shared/datasources/mvt-datasource.d.ts +1 -0
  294. package/lib/datasource/shared/datasources/mvt-datasource.interface.d.ts +0 -2
  295. package/lib/datasource/shared/datasources/osm-datasource.interface.d.ts +0 -2
  296. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.d.ts +1 -0
  297. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.d.ts +0 -2
  298. package/lib/datasource/shared/datasources/tiledebug-datasource.interface.d.ts +0 -2
  299. package/lib/datasource/shared/datasources/wfs-datasource.d.ts +16 -0
  300. package/lib/datasource/shared/datasources/wfs-datasource.interface.d.ts +3 -4
  301. package/lib/datasource/shared/datasources/wms-datasource.d.ts +1 -0
  302. package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +7 -7
  303. package/lib/datasource/shared/datasources/wmts-datasource.interface.d.ts +0 -2
  304. package/lib/datasource/shared/datasources/xyz-datasource.interface.d.ts +0 -2
  305. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +57 -20
  306. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +115 -13
  307. package/lib/directions/directions-results/directions-results.component.d.ts +50 -16
  308. package/lib/directions/directions-sources/directions-source.d.ts +2 -2
  309. package/lib/directions/directions-sources/osrm-directions-source.d.ts +2 -2
  310. package/lib/directions/directions.component.d.ts +5 -5
  311. package/lib/directions/shared/directions.enum.d.ts +42 -1
  312. package/lib/directions/shared/directions.interface.d.ts +50 -25
  313. package/lib/directions/shared/directions.service.d.ts +46 -8
  314. package/lib/directions/shared/directions.utils.d.ts +102 -23
  315. package/lib/directions/shared/store.d.ts +3 -3
  316. package/lib/download/download-button/download-button.component.d.ts +4 -8
  317. package/lib/download/shared/download.service.d.ts +1 -1
  318. package/lib/draw/draw/draw.component.d.ts +2 -2
  319. package/lib/draw/shared/draw.utils.d.ts +2 -1
  320. package/lib/environment/environment.interface.d.ts +2 -0
  321. package/lib/feature/shared/feature-store.utils.d.ts +2 -2
  322. package/lib/feature/shared/feature.interfaces.d.ts +1 -1
  323. package/lib/feature/shared/store.d.ts +2 -2
  324. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +1 -1
  325. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +1 -1
  326. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +2 -2
  327. package/lib/filter/shared/filterable-datasource.pipe.d.ts +2 -2
  328. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +3 -3
  329. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +3 -5
  330. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +3 -5
  331. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +1 -1
  332. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +5 -5
  333. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +1 -1
  334. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +2 -7
  335. package/lib/import-export/export-button/export-button.component.d.ts +3 -7
  336. package/lib/import-export/import-export/import-export.component.d.ts +23 -16
  337. package/lib/import-export/shared/export.interface.d.ts +10 -3
  338. package/lib/import-export/shared/export.service.d.ts +28 -15
  339. package/lib/import-export/shared/export.type.d.ts +8 -16
  340. package/lib/import-export/shared/export.utils.d.ts +2 -0
  341. package/lib/layer/index.d.ts +9 -4
  342. package/lib/layer/layer-group/index.d.ts +1 -0
  343. package/lib/layer/layer-group/layer-group.component.d.ts +30 -0
  344. package/lib/layer/layer-item/layer-item.component.d.ts +19 -38
  345. package/lib/layer/layer-legend/layer-legend.component.d.ts +2 -5
  346. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +6 -7
  347. package/lib/layer/layer-list/index.d.ts +0 -2
  348. package/lib/layer/layer-list/layer-list.component.d.ts +51 -123
  349. package/lib/layer/layer-list-tool/index.d.ts +0 -1
  350. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +19 -26
  351. package/lib/layer/layer-list-tool/layer-list-tool.interface.d.ts +5 -1
  352. package/lib/layer/layer-list-tool/layer-list-tool.service.d.ts +9 -8
  353. package/lib/layer/layer-search/index.d.ts +1 -0
  354. package/lib/layer/layer-search/layer-search.component.d.ts +16 -0
  355. package/lib/layer/layer-unavailable/index.d.ts +2 -0
  356. package/lib/layer/layer-unavailable/layer-unavailable-list/layer-unavailable-list.component.d.ts +10 -0
  357. package/lib/layer/layer-unavailable/layer-unavailable.component.d.ts +11 -0
  358. package/lib/layer/layer-viewer/index.d.ts +2 -0
  359. package/lib/layer/layer-viewer/layer-viewer.component.d.ts +52 -0
  360. package/lib/layer/layer-viewer/layer-viewer.interface.d.ts +22 -0
  361. package/lib/layer/layer-viewer-bottom-actions/index.d.ts +1 -0
  362. package/lib/layer/layer-viewer-bottom-actions/layer-viewer-bottom-actions.component.d.ts +44 -0
  363. package/lib/layer/layer-visibility-button/index.d.ts +1 -0
  364. package/lib/layer/layer-visibility-button/layer-visibility-button.component.d.ts +22 -0
  365. package/lib/layer/layer.module.d.ts +18 -6
  366. package/lib/layer/shared/index.d.ts +1 -0
  367. package/lib/layer/shared/layer-controller.d.ts +81 -0
  368. package/lib/layer/shared/layer-selection.d.ts +14 -0
  369. package/lib/layer/shared/layer.service.d.ts +17 -8
  370. package/lib/layer/shared/layers/any-layer.d.ts +3 -6
  371. package/lib/layer/shared/layers/any-layer.interface.d.ts +8 -6
  372. package/lib/layer/shared/layers/image-layer.d.ts +5 -2
  373. package/lib/layer/shared/layers/image-layer.interface.d.ts +1 -4
  374. package/lib/layer/shared/layers/index.d.ts +5 -0
  375. package/lib/layer/shared/layers/layer-base.d.ts +75 -0
  376. package/lib/layer/shared/layers/layer-group.d.ts +32 -0
  377. package/lib/layer/shared/layers/layer-group.interface.d.ts +8 -0
  378. package/lib/layer/shared/layers/layer.d.ts +28 -49
  379. package/lib/layer/shared/layers/layer.interface.d.ts +23 -41
  380. package/lib/layer/shared/layers/linked/index.d.ts +3 -0
  381. package/lib/layer/shared/layers/linked/linked-layer.d.ts +35 -0
  382. package/lib/layer/shared/layers/linked/linked-layer.interface.d.ts +32 -0
  383. package/lib/layer/shared/layers/linked/linked-layer.utils.d.ts +9 -0
  384. package/lib/layer/shared/layers/tile-layer.d.ts +5 -2
  385. package/lib/layer/shared/layers/vector-layer.d.ts +8 -7
  386. package/lib/layer/shared/layers/vectortile-layer.d.ts +5 -2
  387. package/lib/layer/utils/layer.utils.d.ts +12 -2
  388. package/lib/layer/utils/outputLegend.d.ts +2 -2
  389. package/lib/map/shared/controllers/geolocation.interface.d.ts +2 -1
  390. package/lib/map/shared/hover-feature.directive.d.ts +0 -1
  391. package/lib/map/shared/linkedLayers.utils.d.ts +13 -17
  392. package/lib/map/shared/map.abstract.d.ts +12 -29
  393. package/lib/map/shared/map.d.ts +10 -85
  394. package/lib/map/shared/map.service.d.ts +1 -1
  395. package/lib/map/shared/map.utils.d.ts +5 -3
  396. package/lib/map/utils/index.d.ts +1 -0
  397. package/lib/map/utils/layer-watcher.d.ts +18 -8
  398. package/lib/measure/measurer/measurer.component.d.ts +0 -8
  399. package/lib/metadata/metadata-button/metadata-button.component.d.ts +3 -7
  400. package/lib/offline/geoDB/geoDB.service.d.ts +1 -1
  401. package/lib/offline/index.d.ts +2 -0
  402. package/lib/offline/layerDB/layerDB.service.d.ts +1 -1
  403. package/lib/offline/offline.interface.d.ts +3 -0
  404. package/lib/offline/offline.provider.d.ts +3 -0
  405. package/lib/offline/shared/geo-network.service.d.ts +3 -3
  406. package/lib/overlay/shared/overlay.d.ts +2 -1
  407. package/lib/query/shared/query.service.d.ts +1 -1
  408. package/lib/query/shared/query.utils.d.ts +2 -1
  409. package/lib/search/search-results/search-results-add-button.component.d.ts +1 -1
  410. package/lib/search/shared/search-pointer-summary.directive.d.ts +0 -1
  411. package/lib/search/shared/sources/cadastre.providers.d.ts +1 -1
  412. package/lib/search/shared/sources/coordinates.providers.d.ts +1 -1
  413. package/lib/search/shared/sources/icherche.providers.d.ts +1 -1
  414. package/lib/search/shared/sources/ilayer.interfaces.d.ts +1 -1
  415. package/lib/search/shared/sources/ilayer.providers.d.ts +1 -1
  416. package/lib/search/shared/sources/nominatim.providers.d.ts +1 -1
  417. package/lib/search/shared/sources/storedqueries.providers.d.ts +2 -2
  418. package/lib/search/shared/sources/workspace.interfaces.d.ts +1 -1
  419. package/lib/search/shared/sources/workspace.providers.d.ts +1 -1
  420. package/lib/utils/id-generator.d.ts +5 -5
  421. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +1 -1
  422. package/locale/en.geo.json +114 -92
  423. package/locale/fr.geo.json +113 -92
  424. package/package.json +6 -7
  425. package/src/_index.scss +2 -1
  426. package/src/geo-theme.scss +1 -1
  427. package/src/lib/directions/directions-inputs/directions-inputs.theming.scss +21 -0
  428. package/src/lib/directions/directions.theming.scss +2 -0
  429. package/src/lib/layer/layer-group/layer-group.theme.scss +28 -0
  430. package/src/lib/layer/layer-item/layer-item.theme.scss +12 -9
  431. package/src/lib/layer/layer-legend/layer-legend.theme.scss +30 -0
  432. package/src/lib/layer/layer-list/layer-list.theme.scss +50 -0
  433. package/src/lib/layer/layer-unavailable/layer-unavailable.theme.scss +19 -0
  434. package/src/lib/layer/layer-viewer/_layer-viewer.theme.scss +16 -0
  435. package/src/lib/layer/layer-visibility-button/layer-visibility-button.theme.scss +27 -0
  436. package/src/lib/layer/layer.theming.scss +14 -3
  437. package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +0 -70
  438. package/esm2022/lib/layer/layer-list/layer-list.enum.mjs +0 -19
  439. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +0 -7
  440. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +0 -19
  441. package/lib/layer/layer-list/layer-list.enum.d.ts +0 -15
  442. package/lib/layer/layer-list-tool/layer-list-tool.enum.d.ts +0 -5
  443. package/src/lib/layer/layer-legend/layer-legend.theming.scss +0 -10
@@ -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 { 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,18 +11,21 @@ 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 { 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';
19
- import { VectorLayerOptions } from './vector-layer.interface';
20
+ import { LayerType } from './layer.interface';
21
+ import type { VectorLayerOptions } from './vector-layer.interface';
20
22
  export declare class VectorLayer extends Layer {
21
23
  messageService?: MessageService;
22
24
  authInterceptor?: AuthInterceptor;
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;
@@ -66,7 +70,6 @@ export declare class VectorLayer extends Layer {
66
70
  * Custom loader to get feature from a WFS datasource
67
71
  * @internal
68
72
  * @param vectorSource the vector source to be created
69
- * @param interceptor the interceptor of the data
70
73
  * @param extent the extent of the requested data
71
74
  * @param dataProjection the projection of the retrieved data
72
75
  * @param featureProjection the projection of the created features
@@ -80,7 +83,6 @@ export declare class VectorLayer extends Layer {
80
83
  * @internal
81
84
  * @param vectorSource the vector source to be created
82
85
  * @param url the url string or function to retrieve the data
83
- * @param interceptor the interceptor of the data
84
86
  * @param extent the extent of the requested data
85
87
  * @param resolution the current resolution
86
88
  * @param projection the projection to retrieve the data
@@ -91,7 +93,6 @@ export declare class VectorLayer extends Layer {
91
93
  * @internal
92
94
  * @param vectorSource the vector source to be created
93
95
  * @param layerID the url string or function to retrieve the data
94
- * @param interceptor the interceptor of the data
95
96
  * @param extent the extent of the requested data
96
97
  * @param resolution the current resolution
97
98
  * @param projection the projection to retrieve the data
@@ -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 { 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
  }
@@ -2,15 +2,14 @@ import { ConfigService } from '@igo2/core/config';
2
2
  import { StorageService } from '@igo2/core/storage';
3
3
  import { SubjectStatus } from '@igo2/utils';
4
4
  import olMap from 'ol/Map';
5
- import { ObjectEvent } from 'ol/Object';
6
- import olLayer from 'ol/layer/Layer';
7
5
  import * as olproj from 'ol/proj';
8
6
  import OlProjection from 'ol/proj/Projection';
9
- import olSource from 'ol/source/Source';
10
7
  import { BehaviorSubject, Subject } from 'rxjs';
11
8
  import { FeatureDataSource } from '../../datasource/shared/datasources/feature-datasource';
12
- import { Layer } from '../../layer/shared/layers';
9
+ import { LayerController } from '../../layer';
10
+ import type { AnyLayer, Layer } from '../../layer/shared/layers';
13
11
  import { Overlay } from '../../overlay/shared/overlay';
12
+ import { LayerWatcher, LayerWatcherChange } from '../utils/layer-watcher';
14
13
  import { MapGeolocationController } from './controllers/geolocation';
15
14
  import { MapViewController } from './controllers/view';
16
15
  import type { MapBase } from './map.abstract';
@@ -20,27 +19,23 @@ export declare class IgoMap implements MapBase {
20
19
  private configService?;
21
20
  ol: olMap;
22
21
  forcedOffline$: BehaviorSubject<boolean>;
23
- layers$: BehaviorSubject<Layer[]>;
24
- layersAddedByClick$: BehaviorSubject<Layer[]>;
22
+ layersAddedByClick$: BehaviorSubject<AnyLayer[]>;
25
23
  status$: Subject<SubjectStatus>;
26
- propertyChange$: Subject<{
27
- event: ObjectEvent;
28
- layer: Layer;
29
- }>;
24
+ propertyChange$: Subject<LayerWatcherChange>;
30
25
  overlay: Overlay;
31
26
  queryResultsOverlay: Overlay;
32
27
  searchResultsOverlay: Overlay;
33
28
  viewController: MapViewController;
29
+ layerController: LayerController;
34
30
  geolocationController: MapGeolocationController;
35
31
  swipeEnabled$: BehaviorSubject<boolean>;
36
32
  mapCenter$: BehaviorSubject<boolean>;
37
33
  selectedFeatures$: BehaviorSubject<Layer[]>;
38
34
  bufferDataSource: FeatureDataSource;
39
- private layerWatcher;
40
- private options;
35
+ layerWatcher: LayerWatcher;
36
+ readonly options: MapOptions;
41
37
  private mapViewOptions;
42
38
  private defaultOptions;
43
- get layers(): Layer[];
44
39
  /** @deprecated use projectionCode */
45
40
  get projection(): string;
46
41
  get viewProjection(): olproj.Projection;
@@ -70,76 +65,6 @@ export declare class IgoMap implements MapBase {
70
65
  * TODO: Move to ViewController and update every place it's used
71
66
  */
72
67
  getZoom(): number;
73
- changeBaseLayer(baseLayer: Layer): void;
74
- getBaseLayers(): Layer[];
75
- getLayerById(id: string): Layer;
76
- getLayerByAlias(alias: string): Layer;
77
- getLayerByOlUId(olUId: string): Layer;
78
- getLayerByOlLayer(olLayer: olLayer<olSource>): Layer;
79
- /**
80
- * Add a single layer
81
- * @param layer Layer to add
82
- * @param push DEPRECATED
83
- */
84
- addLayer(layer: Layer): void;
85
- /**
86
- * Add many layers
87
- * @param layers Layers to add
88
- * @param push DEPRECATED
89
- */
90
- addLayers(layers: Layer[]): void;
91
- /**
92
- * Remove a single layer
93
- * @param layer Layer to remove
94
- */
95
- removeLayer(layer: Layer): void;
96
- /**
97
- * Remove many layers
98
- * @param layers Layers to remove
99
- */
100
- removeLayers(layers: Layer[]): void;
101
- /**
102
- * Build a list of linked layers to delete
103
- * @param srcLayer Layer that has triggered the deletion
104
- * @param layersToRemove list to append the layer to delete into
105
- */
106
- handleLinkedLayersDeletion(srcLayer: Layer, layersToRemove: Layer[]): void;
107
- /**
108
- * Remove all layers
109
- */
110
- removeAllLayers(): void;
111
- raiseLayer(layer: Layer): void;
112
- raiseLayers(layers: Layer[]): void;
113
- lowerLayer(layer: Layer): void;
114
- lowerLayers(layers: Layer[]): void;
115
- moveLayer(layer: Layer, from: number, to: number): void;
116
- /**
117
- * Add a layer to the OL map and start watching. If the layer is already
118
- * added to this map, make it visible but don't add it one again.
119
- * @param layer Layer
120
- * @returns The layer added, if any
121
- */
122
- private doAddLayer;
123
- /**
124
- * Remove a layer from the OL map and stop watching
125
- * @param layer Layer
126
- */
127
- private doRemoveLayer;
128
- /**
129
- * Update the layers observable
130
- * @param layers Layers
131
- */
132
- private setLayers;
133
- /**
134
- * Sort layers by descending zIndex
135
- * @param layers Array of layers
136
- * @returns The original array, sorted by zIndex
137
- */
138
- private sortLayersByZIndex;
139
- /**
140
- * Get layer index in the map's inenr array of layers
141
- * @param layer Layer
142
- * @returns The layer index
143
- */
144
- private getLayerIndex;
68
+ /** @deprecated find a way to remove this method. For now we discourage to use it until we find the way to remove it */
69
+ getLayerByOlUId(olUId: string): AnyLayer;
145
70
  }
@@ -1,4 +1,4 @@
1
- import { IgoMap } from './map';
1
+ import type { IgoMap } from './map';
2
2
  import * as i0 from "@angular/core";
3
3
  /**
4
4
  * MapService
@@ -1,4 +1,6 @@
1
1
  import MapBrowserPointerEvent from 'ol/MapBrowserEvent';
2
+ import { Coordinate } from 'ol/coordinate';
3
+ import { Position } from 'geojson';
2
4
  import { MapViewState } from './map.interface';
3
5
  import { Projection } from './projection.interfaces';
4
6
  /**
@@ -26,7 +28,7 @@ export declare function stringToLonLat(str: string, mapProjection: string, opts?
26
28
  * @param decimal number of decimals for seconds
27
29
  * @returns longitude and latitude in dms
28
30
  */
29
- export declare function convertDDToDMS(lonLatDD: [number, number], decimal?: number): string[];
31
+ export declare function convertDDToDMS(lonLatDD: Coordinate, decimal?: number): string[];
30
32
  /**
31
33
  * Return true of two view states are equal.
32
34
  * @param state1 View state
@@ -59,8 +61,8 @@ export declare function getScaleFromResolution(resolution: number, unit?: string
59
61
  * @returns Whether the CTRL key is pushed
60
62
  */
61
63
  export declare function ctrlKeyDown(event: MapBrowserPointerEvent<any>): boolean;
62
- export declare function roundCoordTo(coord: [number, number], decimal?: number): [number, number];
63
- export declare function roundCoordToString(coord: [number, number], decimal?: number): [string, string];
64
+ export declare function roundCoordTo(coord: [number, number] | Position | Coordinate, decimal?: number): Coordinate;
65
+ export declare function roundCoordToString(coord: [number, number] | Position | Coordinate, decimal?: number): [string, string];
64
66
  /**
65
67
  * Returns an array of converted coordinates.
66
68
  * Conversion is done for every configured projections
@@ -0,0 +1 @@
1
+ export * from './layer-watcher';
@@ -1,20 +1,30 @@
1
1
  import { Watcher } from '@igo2/utils';
2
2
  import { ObjectEvent } from 'ol/Object';
3
3
  import { BehaviorSubject } from 'rxjs';
4
- import { Layer } from '../../layer/shared/layers';
4
+ import type { AnyLayer } from '../../layer/shared/layers/any-layer';
5
+ import type { Layer } from '../../layer/shared/layers/layer';
6
+ export interface LayerWatcherChange {
7
+ event: LayerWatcherEvent;
8
+ layer: Layer;
9
+ }
10
+ type LayerWatcherEvent = Pick<ObjectEvent, 'key' | 'oldValue'> & {
11
+ value: unknown;
12
+ };
5
13
  export declare class LayerWatcher extends Watcher {
6
- propertyChange$: BehaviorSubject<{
7
- event: ObjectEvent;
8
- layer: Layer;
9
- }>;
14
+ propertyChange$: BehaviorSubject<LayerWatcherChange>;
10
15
  private loaded;
11
16
  private loading;
12
17
  private layers;
18
+ private subscriptionsByLayerId;
13
19
  private subscriptions;
14
20
  constructor();
15
21
  watch(): void;
16
22
  unwatch(): void;
17
- setPropertyChange(change: ObjectEvent, layer: Layer): void;
18
- watchLayer(layer: Layer): void;
19
- unwatchLayer(layer: Layer): void;
23
+ setPropertyChange(change: LayerWatcherChange): void;
24
+ watchLayer(layer: AnyLayer): void;
25
+ private _watchLayer;
26
+ private createOlEventObservable;
27
+ unwatchLayer(layer: AnyLayer): void;
28
+ private _unwatchLayer;
20
29
  }
30
+ export {};
@@ -360,10 +360,6 @@ export declare class MeasurerComponent implements OnInit, OnDestroy {
360
360
  * @param measureUnit Display tooltip measure in those units
361
361
  */
362
362
  private updateTooltipsOfOlGeometry;
363
- /**
364
- * Show the map tooltips of a geoemtry
365
- */
366
- private showTooltipsOfOlGeometry;
367
363
  /**
368
364
  * Clear the tooltips of an OL geometrys
369
365
  * @param olGeometry OL geometry with tooltips
@@ -373,10 +369,6 @@ export declare class MeasurerComponent implements OnInit, OnDestroy {
373
369
  * Show the map tooltips of all the geometries of a source
374
370
  */
375
371
  private updateTooltipsOfOlSource;
376
- /**
377
- * Show the map tooltips of all the geometries of a source
378
- */
379
- private showTooltipsOfOlSource;
380
372
  /**
381
373
  * Clear the map tooltips
382
374
  * @param olDrawSource OL vector source
@@ -1,17 +1,13 @@
1
1
  import { MatDialog } from '@angular/material/dialog';
2
- import { Layer } from '../../layer/shared/layers/layer';
2
+ import { Layer } from '../../layer';
3
3
  import { MetadataLayerOptions, MetadataOptions } from '../shared/metadata.interface';
4
4
  import { MetadataService } from '../shared/metadata.service';
5
5
  import * as i0 from "@angular/core";
6
6
  export declare class MetadataButtonComponent {
7
7
  private metadataService;
8
8
  private dialog;
9
- get layer(): Layer;
10
- set layer(value: Layer);
11
- private _layer;
12
- get color(): string;
13
- set color(value: string);
14
- private _color;
9
+ layer: Layer;
10
+ color: string;
15
11
  constructor(metadataService: MetadataService, dialog: MatDialog);
16
12
  openMetadata(metadata: MetadataOptions): void;
17
13
  get options(): MetadataLayerOptions;
@@ -31,6 +31,6 @@ export declare class GeoDBService {
31
31
  resetCollisionsMap(): void;
32
32
  revertCollisions(): void;
33
33
  get newData(): number;
34
- static ɵfac: i0.ɵɵFactoryDeclaration<GeoDBService, never>;
34
+ static ɵfac: i0.ɵɵFactoryDeclaration<GeoDBService, [{ optional: true; }]>;
35
35
  static ɵprov: i0.ɵɵInjectableDeclaration<GeoDBService>;
36
36
  }
@@ -1,3 +1,5 @@
1
1
  export * from './geoDB';
2
2
  export * from './layerDB';
3
3
  export * from './shared';
4
+ export * from './offline.interface';
5
+ export * from './offline.provider';
@@ -31,6 +31,6 @@ export declare class LayerDBService {
31
31
  * @returns
32
32
  */
33
33
  getAll(): Observable<LayerDBData[]>;
34
- static ɵfac: i0.ɵɵFactoryDeclaration<LayerDBService, never>;
34
+ static ɵfac: i0.ɵɵFactoryDeclaration<LayerDBService, [{ optional: true; }]>;
35
35
  static ɵprov: i0.ɵɵInjectableDeclaration<LayerDBService>;
36
36
  }
@@ -0,0 +1,3 @@
1
+ export interface IOfflineOptions {
2
+ enable: boolean;
3
+ }
@@ -0,0 +1,3 @@
1
+ import { EnvironmentProviders } from '@angular/core';
2
+ import { IOfflineOptions } from './offline.interface';
3
+ export declare function provideOffline(options: IOfflineOptions | undefined): EnvironmentProviders;