@igo2/geo 1.15.4 → 16.0.0-rc.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 (1433) hide show
  1. package/esm2022/igo2-geo.mjs +5 -0
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +320 -0
  3. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +319 -0
  4. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +278 -0
  5. package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +78 -0
  6. package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +223 -0
  7. package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +89 -0
  8. package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +230 -0
  9. package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +91 -0
  10. package/esm2022/lib/catalog/catalog.module.mjs +48 -0
  11. package/esm2022/lib/catalog/index.mjs +5 -0
  12. package/esm2022/lib/catalog/shared/catalog.abstract.mjs +32 -0
  13. package/esm2022/lib/catalog/shared/catalog.enum.mjs +16 -0
  14. package/esm2022/lib/catalog/shared/catalog.interface.mjs +2 -0
  15. package/esm2022/lib/catalog/shared/catalog.service.mjs +666 -0
  16. package/esm2022/lib/catalog/shared/catalogs.mjs +75 -0
  17. package/esm2022/lib/catalog/shared/index.mjs +5 -0
  18. package/esm2022/lib/datasource/datasource.module.mjs +22 -0
  19. package/esm2022/lib/datasource/index.mjs +3 -0
  20. package/esm2022/lib/datasource/shared/capabilities.service.mjs +448 -0
  21. package/esm2022/lib/datasource/shared/datasource.service.mjs +259 -0
  22. package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +2 -0
  23. package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +2 -0
  24. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +2 -0
  25. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +212 -0
  26. package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +2 -0
  27. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +109 -0
  28. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +2 -0
  29. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +15 -0
  30. package/esm2022/lib/datasource/shared/datasources/data.service.mjs +3 -0
  31. package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +2 -0
  32. package/esm2022/lib/datasource/shared/datasources/datasource.mjs +34 -0
  33. package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +2 -0
  34. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +43 -0
  35. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +2 -0
  36. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +61 -0
  37. package/esm2022/lib/datasource/shared/datasources/index.mjs +36 -0
  38. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +2 -0
  39. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +28 -0
  40. package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +2 -0
  41. package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +12 -0
  42. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +2 -0
  43. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +51 -0
  44. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +2 -0
  45. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +15 -0
  46. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +2 -0
  47. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +55 -0
  48. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +2 -0
  49. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +79 -0
  50. package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +169 -0
  51. package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +2 -0
  52. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +218 -0
  53. package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +222 -0
  54. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +2 -0
  55. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +16 -0
  56. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +2 -0
  57. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +9 -0
  58. package/esm2022/lib/datasource/shared/index.mjs +5 -0
  59. package/esm2022/lib/datasource/shared/options/index.mjs +5 -0
  60. package/esm2022/lib/datasource/shared/options/options-api.interface.mjs +2 -0
  61. package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +15 -0
  62. package/esm2022/lib/datasource/shared/options/options-api.service.mjs +85 -0
  63. package/esm2022/lib/datasource/shared/options/options.service.mjs +3 -0
  64. package/esm2022/lib/datasource/utils/index.mjs +2 -0
  65. package/esm2022/lib/datasource/utils/tilegrid.mjs +20 -0
  66. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +265 -0
  67. package/esm2022/lib/directions/directions-buttons/index.mjs +2 -0
  68. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +294 -0
  69. package/esm2022/lib/directions/directions-inputs/index.mjs +2 -0
  70. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +215 -0
  71. package/esm2022/lib/directions/directions-results/index.mjs +2 -0
  72. package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +2 -0
  73. package/esm2022/lib/directions/directions-sources/directions-source.mjs +3 -0
  74. package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +16 -0
  75. package/esm2022/lib/directions/directions-sources/index.mjs +5 -0
  76. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +128 -0
  77. package/esm2022/lib/directions/directions.component.mjs +349 -0
  78. package/esm2022/lib/directions/directions.module.mjs +102 -0
  79. package/esm2022/lib/directions/index.mjs +7 -0
  80. package/esm2022/lib/directions/shared/directions-source.service.mjs +18 -0
  81. package/esm2022/lib/directions/shared/directions.enum.mjs +28 -0
  82. package/esm2022/lib/directions/shared/directions.interface.mjs +2 -0
  83. package/esm2022/lib/directions/shared/directions.service.mjs +202 -0
  84. package/esm2022/lib/directions/shared/directions.utils.mjs +559 -0
  85. package/esm2022/lib/directions/shared/index.mjs +6 -0
  86. package/esm2022/lib/directions/shared/store.mjs +21 -0
  87. package/esm2022/lib/download/download-button/download-button.component.mjs +65 -0
  88. package/esm2022/lib/download/download-button/index.mjs +2 -0
  89. package/esm2022/lib/download/download.module.mjs +42 -0
  90. package/esm2022/lib/download/index.mjs +3 -0
  91. package/esm2022/lib/download/shared/download.interface.mjs +2 -0
  92. package/esm2022/lib/download/shared/download.service.mjs +67 -0
  93. package/esm2022/lib/download/shared/index.mjs +3 -0
  94. package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +57 -0
  95. package/esm2022/lib/draw/draw/draw-popup.component.mjs +677 -0
  96. package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +48 -0
  97. package/esm2022/lib/draw/draw/draw.component.mjs +1369 -0
  98. package/esm2022/lib/draw/draw/draw.module.mjs +117 -0
  99. package/esm2022/lib/draw/drawingTool.module.mjs +18 -0
  100. package/esm2022/lib/draw/index.mjs +3 -0
  101. package/esm2022/lib/draw/shared/draw-icon.service.mjs +30 -0
  102. package/esm2022/lib/draw/shared/draw.enum.mjs +21 -0
  103. package/esm2022/lib/draw/shared/draw.interface.mjs +2 -0
  104. package/esm2022/lib/draw/shared/draw.utils.mjs +125 -0
  105. package/esm2022/lib/draw/shared/index.mjs +5 -0
  106. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +440 -0
  107. package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +57 -0
  108. package/esm2022/lib/feature/feature-details/feature-details.module.mjs +40 -0
  109. package/esm2022/lib/feature/feature-form/feature-form.component.mjs +120 -0
  110. package/esm2022/lib/feature/feature-form/feature-form.module.mjs +23 -0
  111. package/esm2022/lib/feature/feature.module.mjs +21 -0
  112. package/esm2022/lib/feature/index.mjs +4 -0
  113. package/esm2022/lib/feature/shared/feature-store.utils.mjs +27 -0
  114. package/esm2022/lib/feature/shared/feature.enums.mjs +9 -0
  115. package/esm2022/lib/feature/shared/feature.interfaces.mjs +2 -0
  116. package/esm2022/lib/feature/shared/feature.utils.mjs +333 -0
  117. package/esm2022/lib/feature/shared/index.mjs +8 -0
  118. package/esm2022/lib/feature/shared/store.mjs +143 -0
  119. package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +216 -0
  120. package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +115 -0
  121. package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +96 -0
  122. package/esm2022/lib/feature/shared/strategies/index.mjs +8 -0
  123. package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +104 -0
  124. package/esm2022/lib/feature/shared/strategies/loading.mjs +136 -0
  125. package/esm2022/lib/feature/shared/strategies/search.mjs +159 -0
  126. package/esm2022/lib/feature/shared/strategies/selection.mjs +384 -0
  127. package/esm2022/lib/feature/shared/strategies.utils.mjs +37 -0
  128. package/esm2022/lib/filter/filter.module.mjs +300 -0
  129. package/esm2022/lib/filter/index.mjs +16 -0
  130. package/esm2022/lib/filter/ogc-filter-button/index.mjs +2 -0
  131. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +153 -0
  132. package/esm2022/lib/filter/ogc-filter-form/index.mjs +2 -0
  133. package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +663 -0
  134. package/esm2022/lib/filter/ogc-filter-selection/index.mjs +2 -0
  135. package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +1344 -0
  136. package/esm2022/lib/filter/ogc-filter-time/index.mjs +3 -0
  137. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +226 -0
  138. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +936 -0
  139. package/esm2022/lib/filter/ogc-filterable-form/index.mjs +2 -0
  140. package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +63 -0
  141. package/esm2022/lib/filter/ogc-filterable-item/index.mjs +2 -0
  142. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +320 -0
  143. package/esm2022/lib/filter/ogc-filterable-list/index.mjs +3 -0
  144. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +36 -0
  145. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +47 -0
  146. package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +55 -0
  147. package/esm2022/lib/filter/shared/index.mjs +12 -0
  148. package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +73 -0
  149. package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +30 -0
  150. package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +2 -0
  151. package/esm2022/lib/filter/shared/ogc-filter.mjs +699 -0
  152. package/esm2022/lib/filter/shared/ogc-filter.service.mjs +48 -0
  153. package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +23 -0
  154. package/esm2022/lib/filter/shared/spatial-filter.interface.mjs +2 -0
  155. package/esm2022/lib/filter/shared/spatial-filter.service.mjs +280 -0
  156. package/esm2022/lib/filter/shared/time-filter.enum.mjs +13 -0
  157. package/esm2022/lib/filter/shared/time-filter.interface.mjs +2 -0
  158. package/esm2022/lib/filter/shared/time-filter.service.mjs +108 -0
  159. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/index.mjs +2 -0
  160. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1150 -0
  161. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/index.mjs +2 -0
  162. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +244 -0
  163. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/index.mjs +2 -0
  164. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +157 -0
  165. package/esm2022/lib/filter/time-filter-button/index.mjs +2 -0
  166. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +82 -0
  167. package/esm2022/lib/filter/time-filter-form/index.mjs +2 -0
  168. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +755 -0
  169. package/esm2022/lib/filter/time-filter-item/index.mjs +2 -0
  170. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +124 -0
  171. package/esm2022/lib/filter/time-filter-list/index.mjs +3 -0
  172. package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +36 -0
  173. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +40 -0
  174. package/esm2022/lib/geo.module.mjs +106 -0
  175. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +563 -0
  176. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +218 -0
  177. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +56 -0
  178. package/esm2022/lib/geometry/geometry.module.mjs +20 -0
  179. package/esm2022/lib/geometry/index.mjs +4 -0
  180. package/esm2022/lib/geometry/shared/controls/draw.mjs +340 -0
  181. package/esm2022/lib/geometry/shared/controls/index.mjs +4 -0
  182. package/esm2022/lib/geometry/shared/controls/modify.mjs +541 -0
  183. package/esm2022/lib/geometry/shared/controls/slice.mjs +190 -0
  184. package/esm2022/lib/geometry/shared/geometry.errors.mjs +26 -0
  185. package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +2 -0
  186. package/esm2022/lib/geometry/shared/geometry.utils.mjs +122 -0
  187. package/esm2022/lib/geometry/shared/index.mjs +5 -0
  188. package/esm2022/lib/import-export/export-button/export-button.component.mjs +66 -0
  189. package/esm2022/lib/import-export/export-button/index.mjs +2 -0
  190. package/esm2022/lib/import-export/import-export/import-export.component.mjs +1350 -0
  191. package/esm2022/lib/import-export/import-export/index.mjs +2 -0
  192. package/esm2022/lib/import-export/import-export.module.mjs +98 -0
  193. package/esm2022/lib/import-export/index.mjs +4 -0
  194. package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +174 -0
  195. package/esm2022/lib/import-export/shared/export.errors.mjs +15 -0
  196. package/esm2022/lib/import-export/shared/export.interface.mjs +2 -0
  197. package/esm2022/lib/import-export/shared/export.service.mjs +205 -0
  198. package/esm2022/lib/import-export/shared/export.type.mjs +13 -0
  199. package/esm2022/lib/import-export/shared/export.utils.mjs +47 -0
  200. package/esm2022/lib/import-export/shared/import.errors.mjs +39 -0
  201. package/esm2022/lib/import-export/shared/import.interface.mjs +2 -0
  202. package/esm2022/lib/import-export/shared/import.service.mjs +221 -0
  203. package/esm2022/lib/import-export/shared/import.utils.mjs +203 -0
  204. package/esm2022/lib/import-export/shared/index.mjs +11 -0
  205. package/esm2022/lib/layer/index.mjs +10 -0
  206. package/esm2022/lib/layer/layer-item/index.mjs +2 -0
  207. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +324 -0
  208. package/esm2022/lib/layer/layer-legend/index.mjs +2 -0
  209. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +429 -0
  210. package/esm2022/lib/layer/layer-legend-item/index.mjs +2 -0
  211. package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +93 -0
  212. package/esm2022/lib/layer/layer-legend-list/index.mjs +3 -0
  213. package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +54 -0
  214. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +201 -0
  215. package/esm2022/lib/layer/layer-list/index.mjs +4 -0
  216. package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +69 -0
  217. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +1022 -0
  218. package/esm2022/lib/layer/layer-list/layer-list.enum.mjs +19 -0
  219. package/esm2022/lib/layer/layer-list-tool/index.mjs +5 -0
  220. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +157 -0
  221. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +7 -0
  222. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +2 -0
  223. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +22 -0
  224. package/esm2022/lib/layer/layer.module.mjs +175 -0
  225. package/esm2022/lib/layer/shared/clusterParam.mjs +2 -0
  226. package/esm2022/lib/layer/shared/index.mjs +5 -0
  227. package/esm2022/lib/layer/shared/layer.enums.mjs +2 -0
  228. package/esm2022/lib/layer/shared/layer.service.mjs +268 -0
  229. package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +2 -0
  230. package/esm2022/lib/layer/shared/layers/any-layer.mjs +2 -0
  231. package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +2 -0
  232. package/esm2022/lib/layer/shared/layers/image-layer.mjs +70 -0
  233. package/esm2022/lib/layer/shared/layers/index.mjs +13 -0
  234. package/esm2022/lib/layer/shared/layers/layer.interface.mjs +17 -0
  235. package/esm2022/lib/layer/shared/layers/layer.mjs +184 -0
  236. package/esm2022/lib/layer/shared/layers/legend.interface.mjs +2 -0
  237. package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +2 -0
  238. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +50 -0
  239. package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +2 -0
  240. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +562 -0
  241. package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +2 -0
  242. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +107 -0
  243. package/esm2022/lib/layer/track-feature-button/index.mjs +2 -0
  244. package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +60 -0
  245. package/esm2022/lib/layer/utils/image-watcher.mjs +62 -0
  246. package/esm2022/lib/layer/utils/index.mjs +6 -0
  247. package/esm2022/lib/layer/utils/layer.utils.mjs +11 -0
  248. package/esm2022/lib/layer/utils/outputLegend.mjs +28 -0
  249. package/esm2022/lib/layer/utils/tile-watcher.mjs +52 -0
  250. package/esm2022/lib/layer/utils/vector-watcher.mjs +50 -0
  251. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +16 -0
  252. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +120 -0
  253. package/esm2022/lib/map/baselayers-switcher/index.mjs +3 -0
  254. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +155 -0
  255. package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +87 -0
  256. package/esm2022/lib/map/geolocate-button/index.mjs +2 -0
  257. package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +80 -0
  258. package/esm2022/lib/map/home-extent-button/index.mjs +2 -0
  259. package/esm2022/lib/map/index.mjs +14 -0
  260. package/esm2022/lib/map/info-section/index.mjs +2 -0
  261. package/esm2022/lib/map/info-section/info-section.component.mjs +29 -0
  262. package/esm2022/lib/map/map-browser/index.mjs +2 -0
  263. package/esm2022/lib/map/map-browser/map-browser.component.mjs +74 -0
  264. package/esm2022/lib/map/map-center/index.mjs +2 -0
  265. package/esm2022/lib/map/map-center/map-center.component.mjs +61 -0
  266. package/esm2022/lib/map/map.module.mjs +120 -0
  267. package/esm2022/lib/map/menu-button/index.mjs +2 -0
  268. package/esm2022/lib/map/menu-button/menu-button.component.mjs +66 -0
  269. package/esm2022/lib/map/offline-button/index.mjs +2 -0
  270. package/esm2022/lib/map/offline-button/offline-button.component.mjs +55 -0
  271. package/esm2022/lib/map/rotation-button/index.mjs +2 -0
  272. package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +73 -0
  273. package/esm2022/lib/map/shared/controllers/controller.mjs +44 -0
  274. package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +8 -0
  275. package/esm2022/lib/map/shared/controllers/geolocation.mjs +431 -0
  276. package/esm2022/lib/map/shared/controllers/index.mjs +5 -0
  277. package/esm2022/lib/map/shared/controllers/view.mjs +360 -0
  278. package/esm2022/lib/map/shared/hover-feature.directive.mjs +493 -0
  279. package/esm2022/lib/map/shared/index.mjs +15 -0
  280. package/esm2022/lib/map/shared/linkedLayers.utils.mjs +248 -0
  281. package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +121 -0
  282. package/esm2022/lib/map/shared/map.abstract.mjs +23 -0
  283. package/esm2022/lib/map/shared/map.enums.mjs +6 -0
  284. package/esm2022/lib/map/shared/map.interface.mjs +2 -0
  285. package/esm2022/lib/map/shared/map.mjs +434 -0
  286. package/esm2022/lib/map/shared/map.service.mjs +30 -0
  287. package/esm2022/lib/map/shared/map.utils.mjs +456 -0
  288. package/esm2022/lib/map/shared/mapOffline.directive.mjs +107 -0
  289. package/esm2022/lib/map/shared/projection.interfaces.mjs +2 -0
  290. package/esm2022/lib/map/shared/projection.service.mjs +67 -0
  291. package/esm2022/lib/map/shared/projection.utils.mjs +64 -0
  292. package/esm2022/lib/map/swipe-control/index.mjs +2 -0
  293. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +219 -0
  294. package/esm2022/lib/map/utils/layer-watcher.mjs +78 -0
  295. package/esm2022/lib/map/wake-lock-button/index.mjs +2 -0
  296. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +106 -0
  297. package/esm2022/lib/map/zoom-button/index.mjs +2 -0
  298. package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +49 -0
  299. package/esm2022/lib/measure/index.mjs +4 -0
  300. package/esm2022/lib/measure/measure.module.mjs +18 -0
  301. package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +39 -0
  302. package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +184 -0
  303. package/esm2022/lib/measure/measurer/measurer-item.component.mjs +162 -0
  304. package/esm2022/lib/measure/measurer/measurer.component.mjs +1121 -0
  305. package/esm2022/lib/measure/measurer/measurer.module.mjs +95 -0
  306. package/esm2022/lib/measure/shared/index.mjs +4 -0
  307. package/esm2022/lib/measure/shared/measure.enum.mjs +37 -0
  308. package/esm2022/lib/measure/shared/measure.interfaces.mjs +2 -0
  309. package/esm2022/lib/measure/shared/measure.utils.mjs +497 -0
  310. package/esm2022/lib/metadata/index.mjs +3 -0
  311. package/esm2022/lib/metadata/metadata-button/index.mjs +2 -0
  312. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +140 -0
  313. package/esm2022/lib/metadata/metadata.module.mjs +47 -0
  314. package/esm2022/lib/metadata/shared/index.mjs +3 -0
  315. package/esm2022/lib/metadata/shared/metadata.interface.mjs +2 -0
  316. package/esm2022/lib/metadata/shared/metadata.service.mjs +19 -0
  317. package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +128 -0
  318. package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +6 -0
  319. package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +2 -0
  320. package/esm2022/lib/offline/geoDB/geoDB.service.mjs +175 -0
  321. package/esm2022/lib/offline/geoDB/index.mjs +5 -0
  322. package/esm2022/lib/offline/index.mjs +4 -0
  323. package/esm2022/lib/offline/layerDB/index.mjs +3 -0
  324. package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +2 -0
  325. package/esm2022/lib/offline/layerDB/layerDB.service.mjs +84 -0
  326. package/esm2022/lib/offline/shared/geo-network.service.mjs +87 -0
  327. package/esm2022/lib/offline/shared/index.mjs +2 -0
  328. package/esm2022/lib/overlay/index.mjs +2 -0
  329. package/esm2022/lib/overlay/overlay.module.mjs +23 -0
  330. package/esm2022/lib/overlay/shared/index.mjs +6 -0
  331. package/esm2022/lib/overlay/shared/overlay.directive.mjs +38 -0
  332. package/esm2022/lib/overlay/shared/overlay.enum.mjs +8 -0
  333. package/esm2022/lib/overlay/shared/overlay.mjs +138 -0
  334. package/esm2022/lib/overlay/shared/overlay.service.mjs +26 -0
  335. package/esm2022/lib/overlay/shared/overlay.utils.mjs +17 -0
  336. package/esm2022/lib/print/index.mjs +4 -0
  337. package/esm2022/lib/print/print/print.component.mjs +122 -0
  338. package/esm2022/lib/print/print-form/index.mjs +2 -0
  339. package/esm2022/lib/print/print-form/print-form.component.mjs +580 -0
  340. package/esm2022/lib/print/print.module.mjs +65 -0
  341. package/esm2022/lib/print/shared/geopdf.mjs +68 -0
  342. package/esm2022/lib/print/shared/index.mjs +5 -0
  343. package/esm2022/lib/print/shared/print.interface.mjs +2 -0
  344. package/esm2022/lib/print/shared/print.service.mjs +1093 -0
  345. package/esm2022/lib/print/shared/print.type.mjs +30 -0
  346. package/esm2022/lib/query/index.mjs +2 -0
  347. package/esm2022/lib/query/query.module.mjs +29 -0
  348. package/esm2022/lib/query/shared/index.mjs +7 -0
  349. package/esm2022/lib/query/shared/query-search-source.mjs +35 -0
  350. package/esm2022/lib/query/shared/query-search-source.providers.mjs +22 -0
  351. package/esm2022/lib/query/shared/query.directive.mjs +285 -0
  352. package/esm2022/lib/query/shared/query.enums.mjs +30 -0
  353. package/esm2022/lib/query/shared/query.interfaces.mjs +2 -0
  354. package/esm2022/lib/query/shared/query.service.mjs +753 -0
  355. package/esm2022/lib/query/shared/query.utils.mjs +41 -0
  356. package/esm2022/lib/search/index.mjs +12 -0
  357. package/esm2022/lib/search/search-bar/search-bar.component.mjs +559 -0
  358. package/esm2022/lib/search/search-bar/search-bar.module.mjs +73 -0
  359. package/esm2022/lib/search/search-bar/search-url-param.directive.mjs +40 -0
  360. package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +132 -0
  361. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +456 -0
  362. package/esm2022/lib/search/search-results/search-results-item.component.mjs +166 -0
  363. package/esm2022/lib/search/search-results/search-results.component.mjs +480 -0
  364. package/esm2022/lib/search/search-results/search-results.module.mjs +104 -0
  365. package/esm2022/lib/search/search-selector/search-selector.component.mjs +133 -0
  366. package/esm2022/lib/search/search-selector/search-selector.module.mjs +56 -0
  367. package/esm2022/lib/search/search-settings/search-settings.component.mjs +448 -0
  368. package/esm2022/lib/search/search-settings/search-settings.module.mjs +60 -0
  369. package/esm2022/lib/search/search.module.mjs +67 -0
  370. package/esm2022/lib/search/shared/index.mjs +9 -0
  371. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +337 -0
  372. package/esm2022/lib/search/shared/search-source-service.providers.mjs +20 -0
  373. package/esm2022/lib/search/shared/search-source.service.mjs +56 -0
  374. package/esm2022/lib/search/shared/search.enums.mjs +4 -0
  375. package/esm2022/lib/search/shared/search.interfaces.mjs +2 -0
  376. package/esm2022/lib/search/shared/search.service.mjs +130 -0
  377. package/esm2022/lib/search/shared/search.utils.mjs +92 -0
  378. package/esm2022/lib/search/shared/sources/cadastre.mjs +139 -0
  379. package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +23 -0
  380. package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +2 -0
  381. package/esm2022/lib/search/shared/sources/coordinates.mjs +166 -0
  382. package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +40 -0
  383. package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +2 -0
  384. package/esm2022/lib/search/shared/sources/icherche.mjs +796 -0
  385. package/esm2022/lib/search/shared/sources/icherche.providers.mjs +66 -0
  386. package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +2 -0
  387. package/esm2022/lib/search/shared/sources/ilayer.mjs +335 -0
  388. package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +46 -0
  389. package/esm2022/lib/search/shared/sources/index.mjs +23 -0
  390. package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +2 -0
  391. package/esm2022/lib/search/shared/sources/nominatim.mjs +263 -0
  392. package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +23 -0
  393. package/esm2022/lib/search/shared/sources/source.interfaces.mjs +2 -0
  394. package/esm2022/lib/search/shared/sources/source.mjs +220 -0
  395. package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +2 -0
  396. package/esm2022/lib/search/shared/sources/storedqueries.mjs +455 -0
  397. package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +41 -0
  398. package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +2 -0
  399. package/esm2022/lib/search/shared/sources/workspace.mjs +191 -0
  400. package/esm2022/lib/search/shared/sources/workspace.providers.mjs +22 -0
  401. package/esm2022/lib/style/index.mjs +5 -0
  402. package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +359 -0
  403. package/esm2022/lib/style/shared/datasource/index.mjs +2 -0
  404. package/esm2022/lib/style/shared/feature/feature-style.mjs +161 -0
  405. package/esm2022/lib/style/shared/feature/index.mjs +2 -0
  406. package/esm2022/lib/style/shared/font.enum.mjs +17 -0
  407. package/esm2022/lib/style/shared/index.mjs +5 -0
  408. package/esm2022/lib/style/shared/overlay/index.mjs +3 -0
  409. package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +45 -0
  410. package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +88 -0
  411. package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +78 -0
  412. package/esm2022/lib/style/shared/vector/conversion.utils.mjs +27 -0
  413. package/esm2022/lib/style/shared/vector/index.mjs +4 -0
  414. package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +2 -0
  415. package/esm2022/lib/style/style-list/index.mjs +5 -0
  416. package/esm2022/lib/style/style-list/style-list.interface.mjs +2 -0
  417. package/esm2022/lib/style/style-list/style-list.module.mjs +23 -0
  418. package/esm2022/lib/style/style-list/style-list.provider.mjs +21 -0
  419. package/esm2022/lib/style/style-list/style-list.service.mjs +52 -0
  420. package/esm2022/lib/style/style-modal/drawing/index.mjs +2 -0
  421. package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +288 -0
  422. package/esm2022/lib/style/style-modal/index.mjs +5 -0
  423. package/esm2022/lib/style/style-modal/layer/index.mjs +2 -0
  424. package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +182 -0
  425. package/esm2022/lib/style/style-modal/layer-button/index.mjs +2 -0
  426. package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +48 -0
  427. package/esm2022/lib/style/style-modal/shared/index.mjs +2 -0
  428. package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +2 -0
  429. package/esm2022/lib/style/style-service/draw-style.service.mjs +256 -0
  430. package/esm2022/lib/style/style-service/index.mjs +3 -0
  431. package/esm2022/lib/style/style-service/style.service.mjs +393 -0
  432. package/esm2022/lib/style/style.module.mjs +92 -0
  433. package/esm2022/lib/toast/index.mjs +2 -0
  434. package/esm2022/lib/toast/toast.component.mjs +119 -0
  435. package/esm2022/lib/toast/toast.module.mjs +45 -0
  436. package/esm2022/lib/utils/googleLinks.mjs +13 -0
  437. package/esm2022/lib/utils/id-generator.mjs +110 -0
  438. package/esm2022/lib/utils/index.mjs +5 -0
  439. package/esm2022/lib/utils/osmLinks.mjs +9 -0
  440. package/esm2022/lib/utils/propertyTypeDetector/index.mjs +3 -0
  441. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +2 -0
  442. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +64 -0
  443. package/esm2022/lib/wkt/index.mjs +2 -0
  444. package/esm2022/lib/wkt/shared/index.mjs +2 -0
  445. package/esm2022/lib/wkt/shared/wkt.service.mjs +236 -0
  446. package/esm2022/lib/wkt/wkt.module.mjs +22 -0
  447. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +52 -0
  448. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +36 -0
  449. package/esm2022/lib/workspace/confirmation-popup/index.mjs +3 -0
  450. package/esm2022/lib/workspace/index.mjs +8 -0
  451. package/esm2022/lib/workspace/shared/edition-workspace.mjs +304 -0
  452. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +711 -0
  453. package/esm2022/lib/workspace/shared/feature-workspace.mjs +41 -0
  454. package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +109 -0
  455. package/esm2022/lib/workspace/shared/index.mjs +8 -0
  456. package/esm2022/lib/workspace/shared/wfs-workspace.mjs +41 -0
  457. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +102 -0
  458. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +225 -0
  459. package/esm2022/lib/workspace/shared/workspace.utils.mjs +185 -0
  460. package/esm2022/lib/workspace/widgets/index.mjs +4 -0
  461. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +52 -0
  462. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +25 -0
  463. package/esm2022/lib/workspace/widgets/widgets.mjs +15 -0
  464. package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +167 -0
  465. package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +22 -0
  466. package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +135 -0
  467. package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +22 -0
  468. package/esm2022/lib/workspace/workspace.module.mjs +58 -0
  469. package/esm2022/public_api.mjs +57 -0
  470. package/fesm2022/igo2-geo.mjs +48131 -0
  471. package/fesm2022/igo2-geo.mjs.map +1 -0
  472. package/geo-theme.scss +21 -0
  473. package/index.d.ts +5 -5
  474. package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +117 -117
  475. package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +77 -77
  476. package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +99 -99
  477. package/lib/catalog/catalog-browser/catalog-browser.module.d.ts +22 -22
  478. package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +45 -45
  479. package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +25 -25
  480. package/lib/catalog/catalog-library/catalog-library.component.d.ts +64 -64
  481. package/lib/catalog/catalog-library/catalog-library.module.d.ts +26 -26
  482. package/lib/catalog/catalog.module.d.ts +14 -14
  483. package/lib/catalog/index.d.ts +4 -4
  484. package/lib/catalog/shared/catalog.abstract.d.ts +41 -50
  485. package/lib/catalog/shared/catalog.enum.d.ts +14 -14
  486. package/lib/catalog/shared/catalog.interface.d.ts +76 -76
  487. package/lib/catalog/shared/catalog.service.d.ts +36 -36
  488. package/lib/catalog/shared/catalogs.d.ts +35 -0
  489. package/lib/catalog/shared/index.d.ts +4 -4
  490. package/lib/datasource/datasource.module.d.ts +8 -8
  491. package/lib/datasource/index.d.ts +2 -2
  492. package/lib/datasource/shared/capabilities.service.d.ts +37 -37
  493. package/lib/datasource/shared/datasource.service.d.ts +37 -37
  494. package/lib/datasource/shared/datasources/any-datasource.d.ts +16 -16
  495. package/lib/datasource/shared/datasources/any-datasource.interface.d.ts +15 -15
  496. package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +14 -14
  497. package/lib/datasource/shared/datasources/arcgisrest-datasource.interface.d.ts +14 -14
  498. package/lib/datasource/shared/datasources/carto-datasource.d.ts +15 -15
  499. package/lib/datasource/shared/datasources/carto-datasource.interface.d.ts +13 -13
  500. package/lib/datasource/shared/datasources/cluster-datasource.d.ts +10 -10
  501. package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +11 -11
  502. package/lib/datasource/shared/datasources/data.service.d.ts +3 -3
  503. package/lib/datasource/shared/datasources/datasource.d.ts +20 -20
  504. package/lib/datasource/shared/datasources/datasource.interface.d.ts +113 -113
  505. package/lib/datasource/shared/datasources/feature-datasource.d.ts +12 -12
  506. package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +23 -23
  507. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.d.ts +15 -15
  508. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.d.ts +15 -15
  509. package/lib/datasource/shared/datasources/index.d.ts +35 -35
  510. package/lib/datasource/shared/datasources/mvt-datasource.d.ts +10 -10
  511. package/lib/datasource/shared/datasources/mvt-datasource.interface.d.ts +13 -13
  512. package/lib/datasource/shared/datasources/osm-datasource.d.ts +9 -9
  513. package/lib/datasource/shared/datasources/osm-datasource.interface.d.ts +7 -7
  514. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.d.ts +15 -15
  515. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.d.ts +14 -14
  516. package/lib/datasource/shared/datasources/tiledebug-datasource.d.ts +9 -9
  517. package/lib/datasource/shared/datasources/tiledebug-datasource.interface.d.ts +9 -9
  518. package/lib/datasource/shared/datasources/websocket-datasource.d.ts +15 -15
  519. package/lib/datasource/shared/datasources/websocket-datasource.interface.d.ts +7 -7
  520. package/lib/datasource/shared/datasources/wfs-datasource.d.ts +20 -20
  521. package/lib/datasource/shared/datasources/wfs-datasource.interface.d.ts +20 -20
  522. package/lib/datasource/shared/datasources/wfs.service.d.ts +17 -17
  523. package/lib/datasource/shared/datasources/wms-datasource.d.ts +45 -31
  524. package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +37 -32
  525. package/lib/datasource/shared/datasources/wms-wfs.utils.d.ts +41 -41
  526. package/lib/datasource/shared/datasources/wmts-datasource.d.ts +10 -10
  527. package/lib/datasource/shared/datasources/wmts-datasource.interface.d.ts +13 -13
  528. package/lib/datasource/shared/datasources/xyz-datasource.d.ts +9 -9
  529. package/lib/datasource/shared/datasources/xyz-datasource.interface.d.ts +11 -11
  530. package/lib/datasource/shared/index.d.ts +4 -4
  531. package/lib/datasource/shared/options/index.d.ts +4 -4
  532. package/lib/datasource/shared/options/options-api.interface.d.ts +4 -4
  533. package/lib/datasource/shared/options/options-api.providers.d.ts +10 -10
  534. package/lib/datasource/shared/options/options-api.service.d.ts +16 -16
  535. package/lib/datasource/shared/options/options.service.d.ts +6 -6
  536. package/lib/datasource/utils/index.d.ts +1 -1
  537. package/lib/datasource/utils/tilegrid.d.ts +2 -2
  538. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +35 -30
  539. package/lib/directions/directions-buttons/index.d.ts +1 -1
  540. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +45 -45
  541. package/lib/directions/directions-inputs/index.d.ts +1 -1
  542. package/lib/directions/directions-results/directions-results.component.d.ts +30 -30
  543. package/lib/directions/directions-results/directions-results.theming.scss +10 -0
  544. package/lib/directions/directions-results/index.d.ts +1 -1
  545. package/lib/directions/directions-sources/directions-source.d.ts +7 -7
  546. package/lib/directions/directions-sources/directions-source.interface.d.ts +11 -11
  547. package/lib/directions/directions-sources/directions-source.provider.d.ts +11 -11
  548. package/lib/directions/directions-sources/index.d.ts +4 -4
  549. package/lib/directions/directions-sources/osrm-directions-source.d.ts +24 -23
  550. package/lib/directions/directions.component.d.ts +56 -56
  551. package/lib/directions/directions.module.d.ts +26 -26
  552. package/lib/directions/directions.theming.scss +6 -0
  553. package/lib/directions/index.d.ts +6 -6
  554. package/lib/directions/shared/directions-source.service.d.ts +11 -11
  555. package/lib/directions/shared/directions.enum.d.ts +22 -22
  556. package/lib/directions/shared/directions.interface.d.ts +126 -126
  557. package/lib/directions/shared/directions.service.d.ts +28 -13
  558. package/lib/directions/shared/directions.utils.d.ts +42 -42
  559. package/lib/directions/shared/index.d.ts +5 -5
  560. package/lib/directions/shared/store.d.ts +18 -18
  561. package/lib/download/download-button/download-button.component.d.ts +18 -18
  562. package/lib/download/download-button/index.d.ts +1 -1
  563. package/lib/download/download.module.d.ts +14 -14
  564. package/lib/download/index.d.ts +2 -2
  565. package/lib/download/shared/download.interface.d.ts +10 -10
  566. package/lib/download/shared/download.service.d.ts +10 -10
  567. package/lib/download/shared/index.d.ts +2 -2
  568. package/lib/draw/draw/draw-layer-popup.component.d.ts +14 -14
  569. package/lib/draw/draw/draw-popup.component.d.ts +63 -63
  570. package/lib/draw/draw/draw-shorcuts.component.d.ts +5 -5
  571. package/lib/draw/draw/draw.component.d.ts +240 -240
  572. package/lib/draw/draw/draw.module.d.ts +33 -34
  573. package/lib/draw/draw.theming.scss +32 -0
  574. package/lib/draw/drawingTool.module.d.ts +7 -7
  575. package/lib/draw/index.d.ts +2 -2
  576. package/lib/draw/shared/draw-icon.service.d.ts +12 -12
  577. package/lib/draw/shared/draw.enum.d.ts +17 -17
  578. package/lib/draw/shared/draw.interface.d.ts +40 -40
  579. package/lib/draw/shared/draw.utils.d.ts +35 -35
  580. package/lib/draw/shared/index.d.ts +4 -4
  581. package/lib/feature/feature-details/feature-details.component.d.ts +60 -60
  582. package/lib/feature/feature-details/feature-details.directive.d.ts +19 -19
  583. package/lib/feature/feature-details/feature-details.module.d.ts +15 -15
  584. package/lib/feature/feature-details/feature-details.theming.scss +16 -0
  585. package/lib/feature/feature-form/feature-form.component.d.ts +50 -50
  586. package/lib/feature/feature-form/feature-form.module.d.ts +12 -12
  587. package/lib/feature/feature.module.d.ts +9 -9
  588. package/lib/feature/feature.theming.scss +4 -0
  589. package/lib/feature/index.d.ts +3 -3
  590. package/lib/feature/shared/feature-store.utils.d.ts +10 -0
  591. package/lib/feature/shared/feature.enums.d.ts +7 -7
  592. package/lib/feature/shared/feature.interfaces.d.ts +82 -79
  593. package/lib/feature/shared/feature.utils.d.ts +97 -106
  594. package/lib/feature/shared/index.d.ts +7 -6
  595. package/lib/feature/shared/store.d.ts +78 -78
  596. package/lib/feature/shared/strategies/geo-properties.d.ts +61 -0
  597. package/lib/feature/shared/strategies/in-map-extent.d.ts +52 -52
  598. package/lib/feature/shared/strategies/in-map-resolution.d.ts +52 -52
  599. package/lib/feature/shared/strategies/index.d.ts +7 -6
  600. package/lib/feature/shared/strategies/loading-layer.d.ts +59 -59
  601. package/lib/feature/shared/strategies/loading.d.ts +75 -75
  602. package/lib/feature/shared/strategies/search.d.ts +55 -55
  603. package/lib/feature/shared/strategies/selection.d.ts +176 -176
  604. package/lib/feature/shared/strategies.utils.d.ts +17 -17
  605. package/lib/filter/filter.module.d.ts +53 -53
  606. package/lib/filter/filter.theming.scss +16 -0
  607. package/lib/filter/index.d.ts +15 -15
  608. package/lib/filter/ogc-filter-button/index.d.ts +1 -1
  609. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +20 -20
  610. package/lib/filter/ogc-filter-form/index.d.ts +1 -1
  611. package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +65 -65
  612. package/lib/filter/ogc-filter-selection/index.d.ts +1 -1
  613. package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +93 -93
  614. package/lib/filter/ogc-filter-selection/ogc-filter-selection.theming.scss +18 -0
  615. package/lib/filter/ogc-filter-time/index.d.ts +2 -2
  616. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +39 -39
  617. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.theming.scss +15 -0
  618. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +86 -86
  619. package/lib/filter/ogc-filterable-form/index.d.ts +1 -1
  620. package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +15 -15
  621. package/lib/filter/ogc-filterable-item/index.d.ts +1 -1
  622. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +41 -41
  623. package/lib/filter/ogc-filterable-list/index.d.ts +2 -2
  624. package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +14 -14
  625. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +10 -10
  626. package/lib/filter/shared/filterable-datasource.pipe.d.ts +10 -10
  627. package/lib/filter/shared/index.d.ts +11 -11
  628. package/lib/filter/shared/ogc-filter-time.service.d.ts +19 -19
  629. package/lib/filter/shared/ogc-filter.d.ts +29 -29
  630. package/lib/filter/shared/ogc-filter.enum.d.ts +27 -27
  631. package/lib/filter/shared/ogc-filter.interface.d.ts +200 -200
  632. package/lib/filter/shared/ogc-filter.service.d.ts +11 -11
  633. package/lib/filter/shared/spatial-filter.enum.d.ts +19 -19
  634. package/lib/filter/shared/spatial-filter.interface.d.ts +10 -10
  635. package/lib/filter/shared/spatial-filter.service.d.ts +37 -37
  636. package/lib/filter/shared/time-filter.enum.d.ts +10 -10
  637. package/lib/filter/shared/time-filter.interface.d.ts +15 -29
  638. package/lib/filter/shared/time-filter.service.d.ts +11 -11
  639. package/lib/filter/spatial-filter/spatial-filter-item/index.d.ts +1 -1
  640. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +166 -166
  641. package/lib/filter/spatial-filter/spatial-filter-list/index.d.ts +1 -1
  642. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +57 -57
  643. package/lib/filter/spatial-filter/spatial-filter-type/index.d.ts +1 -1
  644. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +45 -45
  645. package/lib/filter/time-filter-button/index.d.ts +1 -1
  646. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +20 -20
  647. package/lib/filter/time-filter-form/index.d.ts +1 -1
  648. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +77 -77
  649. package/lib/filter/time-filter-form/time-filter-form.theming.scss +5 -0
  650. package/lib/filter/time-filter-item/index.d.ts +1 -1
  651. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +28 -28
  652. package/lib/filter/time-filter-list/index.d.ts +2 -2
  653. package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +14 -14
  654. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +12 -12
  655. package/lib/geo.module.d.ts +29 -29
  656. package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +202 -202
  657. package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +88 -88
  658. package/lib/geometry/geometry-form-field/geometry-form-field.module.d.ts +19 -19
  659. package/lib/geometry/geometry.module.d.ts +8 -8
  660. package/lib/geometry/index.d.ts +3 -3
  661. package/lib/geometry/shared/controls/draw.d.ts +150 -150
  662. package/lib/geometry/shared/controls/index.d.ts +3 -3
  663. package/lib/geometry/shared/controls/modify.d.ts +228 -228
  664. package/lib/geometry/shared/controls/slice.d.ts +99 -99
  665. package/lib/geometry/shared/geometry.errors.d.ts +11 -11
  666. package/lib/geometry/shared/geometry.interfaces.d.ts +13 -13
  667. package/lib/geometry/shared/geometry.utils.d.ts +45 -45
  668. package/lib/geometry/shared/index.d.ts +4 -4
  669. package/lib/import-export/export-button/export-button.component.d.ts +16 -16
  670. package/lib/import-export/export-button/index.d.ts +1 -1
  671. package/lib/import-export/import-export/import-export.component.d.ts +109 -109
  672. package/lib/import-export/import-export/index.d.ts +1 -1
  673. package/lib/import-export/import-export.module.d.ts +25 -25
  674. package/lib/import-export/index.d.ts +3 -3
  675. package/lib/import-export/shared/drop-geo-file.directive.d.ts +39 -39
  676. package/lib/import-export/shared/export.errors.d.ts +8 -8
  677. package/lib/import-export/shared/export.interface.d.ts +11 -11
  678. package/lib/import-export/shared/export.service.d.ts +30 -30
  679. package/lib/import-export/shared/export.type.d.ts +16 -16
  680. package/lib/import-export/shared/export.utils.d.ts +19 -19
  681. package/lib/import-export/shared/import.errors.d.ts +20 -20
  682. package/lib/import-export/shared/import.interface.d.ts +10 -10
  683. package/lib/import-export/shared/import.service.d.ts +31 -31
  684. package/lib/import-export/shared/import.utils.d.ts +20 -20
  685. package/lib/import-export/shared/index.d.ts +10 -10
  686. package/lib/layer/index.d.ts +9 -9
  687. package/lib/layer/layer-item/index.d.ts +1 -1
  688. package/lib/layer/layer-item/layer-item.component.d.ts +62 -62
  689. package/lib/layer/layer-legend/index.d.ts +1 -1
  690. package/lib/layer/layer-legend/layer-legend.component.d.ts +90 -90
  691. package/lib/layer/layer-legend/layer-legend.theming.scss +10 -0
  692. package/lib/layer/layer-legend-item/index.d.ts +1 -1
  693. package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +22 -22
  694. package/lib/layer/layer-legend-list/index.d.ts +2 -2
  695. package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +16 -16
  696. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +31 -31
  697. package/lib/layer/layer-list/index.d.ts +3 -3
  698. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +19 -19
  699. package/lib/layer/layer-list/layer-list.component.d.ts +127 -127
  700. package/lib/layer/layer-list/layer-list.enum.d.ts +15 -15
  701. package/lib/layer/layer-list-tool/index.d.ts +4 -4
  702. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +32 -32
  703. package/lib/layer/layer-list-tool/layer-list-tool.enum.d.ts +5 -5
  704. package/lib/layer/layer-list-tool/layer-list-tool.interface.d.ts +8 -8
  705. package/lib/layer/layer-list-tool/layer-list-tool.service.d.ts +14 -14
  706. package/lib/layer/layer-list-tool/layer-list-tool.theming.scss +22 -0
  707. package/lib/layer/layer.module.d.ts +34 -35
  708. package/lib/layer/layer.theming.scss +24 -0
  709. package/lib/layer/shared/clusterParam.d.ts +13 -13
  710. package/lib/layer/shared/index.d.ts +4 -4
  711. package/lib/layer/shared/layer.enums.d.ts +1 -1
  712. package/lib/layer/shared/layer.service.d.ts +33 -33
  713. package/lib/layer/shared/layers/any-layer.d.ts +6 -6
  714. package/lib/layer/shared/layers/any-layer.interface.d.ts +6 -6
  715. package/lib/layer/shared/layers/image-layer.d.ts +21 -21
  716. package/lib/layer/shared/layers/image-layer.interface.d.ts +19 -19
  717. package/lib/layer/shared/layers/index.d.ts +12 -12
  718. package/lib/layer/shared/layers/layer.d.ts +66 -66
  719. package/lib/layer/shared/layers/layer.interface.d.ts +90 -109
  720. package/lib/layer/shared/layers/legend.interface.d.ts +22 -0
  721. package/lib/layer/shared/layers/tile-layer.d.ts +31 -31
  722. package/lib/layer/shared/layers/tile-layer.interface.d.ts +20 -20
  723. package/lib/layer/shared/layers/vector-layer.d.ts +94 -94
  724. package/lib/layer/shared/layers/vector-layer.interface.d.ts +42 -42
  725. package/lib/layer/shared/layers/vectortile-layer.d.ts +28 -28
  726. package/lib/layer/shared/layers/vectortile-layer.interface.d.ts +16 -16
  727. package/lib/layer/track-feature-button/index.d.ts +1 -1
  728. package/lib/layer/track-feature-button/track-feature-button.component.d.ts +15 -15
  729. package/lib/layer/utils/image-watcher.d.ts +16 -16
  730. package/lib/layer/utils/index.d.ts +5 -5
  731. package/lib/layer/utils/layer.utils.d.ts +2 -2
  732. package/lib/layer/utils/outputLegend.d.ts +7 -7
  733. package/lib/layer/utils/tile-watcher.d.ts +14 -14
  734. package/lib/layer/utils/vector-watcher.d.ts +13 -13
  735. package/lib/map/baselayers-switcher/baselayers-switcher.animation.d.ts +2 -2
  736. package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +22 -21
  737. package/lib/map/baselayers-switcher/index.d.ts +2 -2
  738. package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +29 -29
  739. package/lib/map/geolocate-button/geolocate-button.component.d.ts +22 -22
  740. package/lib/map/geolocate-button/index.d.ts +1 -1
  741. package/lib/map/home-extent-button/home-extent-button.component.d.ts +20 -20
  742. package/lib/map/home-extent-button/index.d.ts +1 -1
  743. package/lib/map/index.d.ts +13 -13
  744. package/lib/map/info-section/index.d.ts +1 -1
  745. package/lib/map/info-section/info-section.component.d.ts +7 -7
  746. package/lib/map/map-browser/index.d.ts +1 -1
  747. package/lib/map/map-browser/map-browser.component.d.ts +25 -25
  748. package/lib/map/map-browser/map-browser.theming.scss +46 -0
  749. package/lib/map/map-center/index.d.ts +1 -1
  750. package/lib/map/map-center/map-center.component.d.ts +31 -31
  751. package/lib/map/map.module.d.ts +28 -28
  752. package/lib/map/map.theming.scss +9 -0
  753. package/lib/map/menu-button/index.d.ts +1 -1
  754. package/lib/map/menu-button/menu-button.component.d.ts +17 -17
  755. package/lib/map/menu-button/menu-button.theming.scss +24 -0
  756. package/lib/map/offline-button/index.d.ts +1 -1
  757. package/lib/map/offline-button/offline-button.component.d.ts +15 -15
  758. package/lib/map/rotation-button/index.d.ts +1 -1
  759. package/lib/map/rotation-button/rotation-button.component.d.ts +17 -17
  760. package/lib/map/shared/controllers/controller.d.ts +29 -29
  761. package/lib/map/shared/controllers/geolocation.d.ts +95 -127
  762. package/lib/map/shared/controllers/geolocation.interface.d.ts +30 -0
  763. package/lib/map/shared/controllers/index.d.ts +4 -3
  764. package/lib/map/shared/controllers/view.d.ts +200 -200
  765. package/lib/map/shared/hover-feature.directive.d.ts +124 -124
  766. package/lib/map/shared/index.d.ts +14 -13
  767. package/lib/map/shared/linkedLayers.utils.d.ts +17 -17
  768. package/lib/map/shared/map-pointer-position.directive.d.ts +71 -71
  769. package/lib/map/shared/map.abstract.d.ts +59 -0
  770. package/lib/map/shared/map.d.ts +140 -135
  771. package/lib/map/shared/map.enums.d.ts +4 -4
  772. package/lib/map/shared/map.interface.d.ts +57 -57
  773. package/lib/map/shared/map.service.d.ts +19 -19
  774. package/lib/map/shared/map.utils.d.ts +90 -90
  775. package/lib/map/shared/mapOffline.directive.d.ts +18 -18
  776. package/lib/map/shared/projection.interfaces.d.ts +29 -29
  777. package/lib/map/shared/projection.service.d.ts +19 -19
  778. package/lib/map/shared/projection.utils.d.ts +19 -19
  779. package/lib/map/swipe-control/index.d.ts +1 -1
  780. package/lib/map/swipe-control/swipe-control.component.d.ts +97 -97
  781. package/lib/map/utils/layer-watcher.d.ts +20 -20
  782. package/lib/map/wake-lock-button/index.d.ts +1 -1
  783. package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +27 -27
  784. package/lib/map/zoom-button/index.d.ts +1 -1
  785. package/lib/map/zoom-button/zoom-button.component.d.ts +12 -12
  786. package/lib/map/zoom-button/zoom-button.theming.scss +32 -0
  787. package/lib/measure/index.d.ts +3 -3
  788. package/lib/measure/measure.module.d.ts +7 -7
  789. package/lib/measure/measure.theming.scss +5 -0
  790. package/lib/measure/measurer/measure-format.pipe.d.ts +15 -15
  791. package/lib/measure/measurer/measurer-dialog.component.d.ts +14 -14
  792. package/lib/measure/measurer/measurer-item.component.d.ts +66 -66
  793. package/lib/measure/measurer/measurer.component.d.ts +405 -405
  794. package/lib/measure/measurer/measurer.module.d.ts +26 -25
  795. package/lib/measure/measurer/measurer.theming.scss +26 -0
  796. package/lib/measure/shared/index.d.ts +3 -3
  797. package/lib/measure/shared/measure.enum.d.ts +33 -33
  798. package/lib/measure/shared/measure.interfaces.d.ts +21 -21
  799. package/lib/measure/shared/measure.utils.d.ts +180 -180
  800. package/lib/metadata/index.d.ts +2 -2
  801. package/lib/metadata/metadata-button/index.d.ts +1 -1
  802. package/lib/metadata/metadata-button/metadata-button.component.d.ts +26 -26
  803. package/lib/metadata/metadata.module.d.ts +15 -15
  804. package/lib/metadata/shared/index.d.ts +2 -2
  805. package/lib/metadata/shared/metadata.interface.d.ts +13 -13
  806. package/lib/metadata/shared/metadata.service.d.ts +8 -8
  807. package/lib/offline/geoDB/configFileToGeoDB.service.d.ts +14 -14
  808. package/lib/offline/geoDB/geoDB.enums.d.ts +4 -4
  809. package/lib/offline/geoDB/geoDB.interface.d.ts +19 -19
  810. package/lib/offline/geoDB/geoDB.service.d.ts +37 -37
  811. package/lib/offline/geoDB/index.d.ts +4 -4
  812. package/lib/offline/index.d.ts +3 -3
  813. package/lib/offline/layerDB/index.d.ts +2 -2
  814. package/lib/offline/layerDB/layerDB.interface.d.ts +7 -7
  815. package/lib/offline/layerDB/layerDB.service.d.ts +36 -36
  816. package/lib/offline/shared/geo-network.service.d.ts +28 -28
  817. package/lib/offline/shared/index.d.ts +1 -1
  818. package/lib/overlay/index.d.ts +1 -1
  819. package/lib/overlay/overlay.module.d.ts +9 -9
  820. package/lib/overlay/shared/index.d.ts +5 -5
  821. package/lib/overlay/shared/overlay.d.ts +81 -81
  822. package/lib/overlay/shared/overlay.directive.d.ts +18 -18
  823. package/lib/overlay/shared/overlay.enum.d.ts +6 -6
  824. package/lib/overlay/shared/overlay.service.d.ts +14 -14
  825. package/lib/overlay/shared/overlay.utils.d.ts +6 -6
  826. package/lib/print/index.d.ts +3 -3
  827. package/lib/print/print/print.component.d.ts +35 -35
  828. package/lib/print/print-form/index.d.ts +1 -1
  829. package/lib/print/print-form/print-form.component.d.ts +99 -99
  830. package/lib/print/print.module.d.ts +19 -19
  831. package/lib/print/shared/geopdf.d.ts +1 -1
  832. package/lib/print/shared/index.d.ts +4 -4
  833. package/lib/print/shared/print.interface.d.ts +22 -22
  834. package/lib/print/shared/print.service.d.ts +171 -174
  835. package/lib/print/shared/print.type.d.ts +45 -45
  836. package/lib/query/index.d.ts +1 -1
  837. package/lib/query/query.module.d.ts +11 -11
  838. package/lib/query/shared/index.d.ts +6 -6
  839. package/lib/query/shared/query-search-source.d.ts +17 -17
  840. package/lib/query/shared/query-search-source.providers.d.ts +17 -17
  841. package/lib/query/shared/query.directive.d.ts +105 -105
  842. package/lib/query/shared/query.enums.d.ts +26 -26
  843. package/lib/query/shared/query.interfaces.d.ts +35 -35
  844. package/lib/query/shared/query.service.d.ts +56 -56
  845. package/lib/query/shared/query.utils.d.ts +27 -27
  846. package/lib/search/index.d.ts +11 -11
  847. package/lib/search/search-bar/search-bar.component.d.ts +231 -230
  848. package/lib/search/search-bar/search-bar.module.d.ts +24 -23
  849. package/lib/search/search-bar/search-bar.theming.scss +36 -0
  850. package/lib/search/search-bar/search-url-param.directive.d.ts +13 -13
  851. package/lib/search/search-results/save-feature-dialog.component.d.ts +32 -32
  852. package/lib/search/search-results/search-results-add-button.component.d.ts +84 -84
  853. package/lib/search/search-results/search-results-item.component.d.ts +52 -52
  854. package/lib/search/search-results/search-results.component.d.ts +165 -165
  855. package/lib/search/search-results/search-results.module.d.ts +29 -29
  856. package/lib/search/search-selector/search-selector.component.d.ts +58 -58
  857. package/lib/search/search-selector/search-selector.module.d.ts +19 -19
  858. package/lib/search/search-settings/search-settings.component.d.ts +102 -102
  859. package/lib/search/search-settings/search-settings.module.d.ts +20 -20
  860. package/lib/search/search.module.d.ts +14 -14
  861. package/lib/search/search.theming.scss +5 -0
  862. package/lib/search/shared/index.d.ts +8 -8
  863. package/lib/search/shared/search-pointer-summary.directive.d.ts +125 -124
  864. package/lib/search/shared/search-source-service.providers.d.ts +15 -15
  865. package/lib/search/shared/search-source.service.d.ts +39 -39
  866. package/lib/search/shared/search.enums.d.ts +1 -1
  867. package/lib/search/shared/search.interfaces.d.ts +54 -29
  868. package/lib/search/shared/search.service.d.ts +53 -53
  869. package/lib/search/shared/search.utils.d.ts +39 -39
  870. package/lib/search/shared/sources/cadastre.d.ts +34 -33
  871. package/lib/search/shared/sources/cadastre.providers.d.ts +18 -18
  872. package/lib/search/shared/sources/coordinates.d.ts +40 -40
  873. package/lib/search/shared/sources/coordinates.interfaces.d.ts +12 -12
  874. package/lib/search/shared/sources/coordinates.providers.d.ts +31 -31
  875. package/lib/search/shared/sources/icherche.d.ts +98 -96
  876. package/lib/search/shared/sources/icherche.interfaces.d.ts +30 -30
  877. package/lib/search/shared/sources/icherche.providers.d.ts +46 -46
  878. package/lib/search/shared/sources/ilayer.d.ts +56 -55
  879. package/lib/search/shared/sources/ilayer.interfaces.d.ts +47 -47
  880. package/lib/search/shared/sources/ilayer.providers.d.ts +31 -31
  881. package/lib/search/shared/sources/index.d.ts +22 -22
  882. package/lib/search/shared/sources/nominatim.d.ts +46 -45
  883. package/lib/search/shared/sources/nominatim.interfaces.d.ts +10 -10
  884. package/lib/search/shared/sources/nominatim.providers.d.ts +18 -18
  885. package/lib/search/shared/sources/source.d.ts +86 -114
  886. package/lib/search/shared/sources/source.interfaces.d.ts +54 -47
  887. package/lib/search/shared/sources/storedqueries.d.ts +75 -73
  888. package/lib/search/shared/sources/storedqueries.interfaces.d.ts +42 -42
  889. package/lib/search/shared/sources/storedqueries.providers.d.ts +32 -32
  890. package/lib/search/shared/sources/workspace.d.ts +33 -33
  891. package/lib/search/shared/sources/workspace.interfaces.d.ts +9 -9
  892. package/lib/search/shared/sources/workspace.providers.d.ts +17 -17
  893. package/lib/style/index.d.ts +4 -4
  894. package/lib/style/shared/datasource/esri-style-generator.d.ts +21 -21
  895. package/lib/style/shared/datasource/index.d.ts +1 -1
  896. package/lib/style/shared/feature/feature-style.d.ts +18 -18
  897. package/lib/style/shared/feature/index.d.ts +1 -1
  898. package/lib/style/shared/font.enum.d.ts +15 -15
  899. package/lib/style/shared/index.d.ts +4 -4
  900. package/lib/style/shared/overlay/index.d.ts +2 -2
  901. package/lib/style/shared/overlay/overlay-marker-style.utils.d.ts +11 -11
  902. package/lib/style/shared/overlay/overlay-style.utils.d.ts +19 -19
  903. package/lib/style/shared/vector/commonVectorStyle.d.ts +14 -14
  904. package/lib/style/shared/vector/conversion.utils.d.ts +22 -22
  905. package/lib/style/shared/vector/index.d.ts +3 -3
  906. package/lib/style/shared/vector/vector-style.interface.d.ts +69 -69
  907. package/lib/style/style-list/index.d.ts +4 -4
  908. package/lib/style/style-list/style-list.interface.d.ts +6 -6
  909. package/lib/style/style-list/style-list.module.d.ts +8 -8
  910. package/lib/style/style-list/style-list.provider.d.ts +15 -15
  911. package/lib/style/style-list/style-list.service.d.ts +18 -18
  912. package/lib/style/style-modal/drawing/index.d.ts +1 -1
  913. package/lib/style/style-modal/drawing/style-modal-drawing.component.d.ts +33 -31
  914. package/lib/style/style-modal/index.d.ts +4 -4
  915. package/lib/style/style-modal/layer/index.d.ts +1 -1
  916. package/lib/style/style-modal/layer/style-modal-layer.component.d.ts +32 -30
  917. package/lib/style/style-modal/layer-button/index.d.ts +1 -1
  918. package/lib/style/style-modal/layer-button/style-modal-layer-button.component.d.ts +14 -14
  919. package/lib/style/style-modal/shared/index.d.ts +1 -1
  920. package/lib/style/style-modal/shared/style-modal.interface.d.ts +17 -17
  921. package/lib/style/style-service/draw-style.service.d.ts +35 -35
  922. package/lib/style/style-service/index.d.ts +2 -2
  923. package/lib/style/style-service/style.service.d.ts +57 -57
  924. package/lib/style/style.module.d.ts +23 -22
  925. package/lib/toast/index.d.ts +1 -1
  926. package/lib/toast/toast.component.d.ts +33 -33
  927. package/lib/toast/toast.module.d.ts +14 -14
  928. package/lib/utils/googleLinks.d.ts +5 -5
  929. package/lib/utils/id-generator.d.ts +54 -54
  930. package/lib/utils/index.d.ts +4 -3
  931. package/lib/utils/osmLinks.d.ts +4 -4
  932. package/lib/utils/propertyTypeDetector/index.d.ts +2 -0
  933. package/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.d.ts +5 -0
  934. package/lib/utils/propertyTypeDetector/propertyTypeDetector.service.d.ts +15 -0
  935. package/lib/wkt/index.d.ts +1 -1
  936. package/lib/wkt/shared/index.d.ts +1 -1
  937. package/lib/wkt/shared/wkt.service.d.ts +19 -19
  938. package/lib/wkt/wkt.module.d.ts +8 -8
  939. package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +23 -23
  940. package/lib/workspace/confirmation-popup/confirmation-popup.module.d.ts +14 -14
  941. package/lib/workspace/confirmation-popup/confirmation-popup.theming.scss +14 -0
  942. package/lib/workspace/confirmation-popup/index.d.ts +2 -2
  943. package/lib/workspace/index.d.ts +7 -7
  944. package/lib/workspace/shared/edition-workspace.d.ts +84 -82
  945. package/lib/workspace/shared/edition-workspace.service.d.ts +50 -51
  946. package/lib/workspace/shared/feature-workspace.d.ts +18 -18
  947. package/lib/workspace/shared/feature-workspace.service.d.ts +22 -19
  948. package/lib/workspace/shared/index.d.ts +7 -7
  949. package/lib/workspace/shared/wfs-workspace.d.ts +18 -18
  950. package/lib/workspace/shared/wfs-workspace.service.d.ts +22 -19
  951. package/lib/workspace/shared/wms-workspace.service.d.ts +24 -22
  952. package/lib/workspace/shared/workspace.utils.d.ts +23 -10
  953. package/lib/workspace/widgets/index.d.ts +3 -3
  954. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +29 -29
  955. package/lib/workspace/widgets/ogc-filter/ogc-filter.module.d.ts +14 -14
  956. package/lib/workspace/widgets/widgets.d.ts +9 -9
  957. package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +32 -32
  958. package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +11 -11
  959. package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +26 -26
  960. package/lib/workspace/workspace-updator/workspace-updator.module.d.ts +11 -11
  961. package/lib/workspace/workspace.module.d.ts +14 -14
  962. package/lib/workspace/workspace.theming.scss +6 -0
  963. package/locale/en.geo.json +807 -0
  964. package/locale/fr.geo.json +808 -0
  965. package/package.json +38 -38
  966. package/public_api.d.ts +53 -53
  967. package/style/style.css +350 -0
  968. package/esm2020/igo2-geo.mjs +0 -5
  969. package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +0 -303
  970. package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +0 -306
  971. package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +0 -250
  972. package/esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs +0 -80
  973. package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +0 -209
  974. package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +0 -79
  975. package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +0 -212
  976. package/esm2020/lib/catalog/catalog-library/catalog-library.module.mjs +0 -95
  977. package/esm2020/lib/catalog/catalog.module.mjs +0 -53
  978. package/esm2020/lib/catalog/index.mjs +0 -5
  979. package/esm2020/lib/catalog/shared/catalog.abstract.mjs +0 -95
  980. package/esm2020/lib/catalog/shared/catalog.enum.mjs +0 -16
  981. package/esm2020/lib/catalog/shared/catalog.interface.mjs +0 -2
  982. package/esm2020/lib/catalog/shared/catalog.service.mjs +0 -604
  983. package/esm2020/lib/catalog/shared/index.mjs +0 -5
  984. package/esm2020/lib/datasource/datasource.module.mjs +0 -22
  985. package/esm2020/lib/datasource/index.mjs +0 -3
  986. package/esm2020/lib/datasource/shared/capabilities.service.mjs +0 -431
  987. package/esm2020/lib/datasource/shared/datasource.service.mjs +0 -232
  988. package/esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs +0 -2
  989. package/esm2020/lib/datasource/shared/datasources/any-datasource.mjs +0 -2
  990. package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +0 -2
  991. package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +0 -145
  992. package/esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs +0 -2
  993. package/esm2020/lib/datasource/shared/datasources/carto-datasource.mjs +0 -109
  994. package/esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +0 -2
  995. package/esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs +0 -15
  996. package/esm2020/lib/datasource/shared/datasources/data.service.mjs +0 -3
  997. package/esm2020/lib/datasource/shared/datasources/datasource.interface.mjs +0 -2
  998. package/esm2020/lib/datasource/shared/datasources/datasource.mjs +0 -29
  999. package/esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs +0 -2
  1000. package/esm2020/lib/datasource/shared/datasources/feature-datasource.mjs +0 -43
  1001. package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +0 -2
  1002. package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +0 -57
  1003. package/esm2020/lib/datasource/shared/datasources/index.mjs +0 -36
  1004. package/esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +0 -2
  1005. package/esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs +0 -28
  1006. package/esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs +0 -2
  1007. package/esm2020/lib/datasource/shared/datasources/osm-datasource.mjs +0 -12
  1008. package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +0 -2
  1009. package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +0 -49
  1010. package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +0 -2
  1011. package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs +0 -15
  1012. package/esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +0 -2
  1013. package/esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs +0 -54
  1014. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +0 -2
  1015. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +0 -72
  1016. package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +0 -152
  1017. package/esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs +0 -2
  1018. package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +0 -206
  1019. package/esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs +0 -207
  1020. package/esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +0 -2
  1021. package/esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs +0 -16
  1022. package/esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +0 -2
  1023. package/esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs +0 -9
  1024. package/esm2020/lib/datasource/shared/index.mjs +0 -5
  1025. package/esm2020/lib/datasource/shared/options/index.mjs +0 -5
  1026. package/esm2020/lib/datasource/shared/options/options-api.interface.mjs +0 -2
  1027. package/esm2020/lib/datasource/shared/options/options-api.providers.mjs +0 -15
  1028. package/esm2020/lib/datasource/shared/options/options-api.service.mjs +0 -81
  1029. package/esm2020/lib/datasource/shared/options/options.service.mjs +0 -3
  1030. package/esm2020/lib/datasource/utils/index.mjs +0 -2
  1031. package/esm2020/lib/datasource/utils/tilegrid.mjs +0 -20
  1032. package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +0 -218
  1033. package/esm2020/lib/directions/directions-buttons/index.mjs +0 -2
  1034. package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +0 -290
  1035. package/esm2020/lib/directions/directions-inputs/index.mjs +0 -2
  1036. package/esm2020/lib/directions/directions-results/directions-results.component.mjs +0 -196
  1037. package/esm2020/lib/directions/directions-results/index.mjs +0 -2
  1038. package/esm2020/lib/directions/directions-sources/directions-source.interface.mjs +0 -2
  1039. package/esm2020/lib/directions/directions-sources/directions-source.mjs +0 -3
  1040. package/esm2020/lib/directions/directions-sources/directions-source.provider.mjs +0 -16
  1041. package/esm2020/lib/directions/directions-sources/index.mjs +0 -5
  1042. package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +0 -99
  1043. package/esm2020/lib/directions/directions.component.mjs +0 -311
  1044. package/esm2020/lib/directions/directions.module.mjs +0 -102
  1045. package/esm2020/lib/directions/index.mjs +0 -7
  1046. package/esm2020/lib/directions/shared/directions-source.service.mjs +0 -17
  1047. package/esm2020/lib/directions/shared/directions.enum.mjs +0 -28
  1048. package/esm2020/lib/directions/shared/directions.interface.mjs +0 -2
  1049. package/esm2020/lib/directions/shared/directions.service.mjs +0 -29
  1050. package/esm2020/lib/directions/shared/directions.utils.mjs +0 -509
  1051. package/esm2020/lib/directions/shared/index.mjs +0 -6
  1052. package/esm2020/lib/directions/shared/store.mjs +0 -24
  1053. package/esm2020/lib/download/download-button/download-button.component.mjs +0 -61
  1054. package/esm2020/lib/download/download-button/index.mjs +0 -2
  1055. package/esm2020/lib/download/download.module.mjs +0 -42
  1056. package/esm2020/lib/download/index.mjs +0 -3
  1057. package/esm2020/lib/download/shared/download.interface.mjs +0 -2
  1058. package/esm2020/lib/download/shared/download.service.mjs +0 -62
  1059. package/esm2020/lib/download/shared/index.mjs +0 -3
  1060. package/esm2020/lib/draw/draw/draw-layer-popup.component.mjs +0 -55
  1061. package/esm2020/lib/draw/draw/draw-popup.component.mjs +0 -591
  1062. package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +0 -48
  1063. package/esm2020/lib/draw/draw/draw.component.mjs +0 -1300
  1064. package/esm2020/lib/draw/draw/draw.module.mjs +0 -113
  1065. package/esm2020/lib/draw/drawingTool.module.mjs +0 -20
  1066. package/esm2020/lib/draw/index.mjs +0 -3
  1067. package/esm2020/lib/draw/shared/draw-icon.service.mjs +0 -27
  1068. package/esm2020/lib/draw/shared/draw.enum.mjs +0 -21
  1069. package/esm2020/lib/draw/shared/draw.interface.mjs +0 -2
  1070. package/esm2020/lib/draw/shared/draw.utils.mjs +0 -122
  1071. package/esm2020/lib/draw/shared/index.mjs +0 -5
  1072. package/esm2020/lib/feature/feature-details/feature-details.component.mjs +0 -404
  1073. package/esm2020/lib/feature/feature-details/feature-details.directive.mjs +0 -54
  1074. package/esm2020/lib/feature/feature-details/feature-details.module.mjs +0 -48
  1075. package/esm2020/lib/feature/feature-form/feature-form.component.mjs +0 -112
  1076. package/esm2020/lib/feature/feature-form/feature-form.module.mjs +0 -34
  1077. package/esm2020/lib/feature/feature.module.mjs +0 -28
  1078. package/esm2020/lib/feature/index.mjs +0 -4
  1079. package/esm2020/lib/feature/shared/feature.enums.mjs +0 -9
  1080. package/esm2020/lib/feature/shared/feature.interfaces.mjs +0 -2
  1081. package/esm2020/lib/feature/shared/feature.utils.mjs +0 -349
  1082. package/esm2020/lib/feature/shared/index.mjs +0 -7
  1083. package/esm2020/lib/feature/shared/store.mjs +0 -133
  1084. package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +0 -113
  1085. package/esm2020/lib/feature/shared/strategies/in-map-resolution.mjs +0 -94
  1086. package/esm2020/lib/feature/shared/strategies/index.mjs +0 -7
  1087. package/esm2020/lib/feature/shared/strategies/loading-layer.mjs +0 -104
  1088. package/esm2020/lib/feature/shared/strategies/loading.mjs +0 -133
  1089. package/esm2020/lib/feature/shared/strategies/search.mjs +0 -150
  1090. package/esm2020/lib/feature/shared/strategies/selection.mjs +0 -370
  1091. package/esm2020/lib/feature/shared/strategies.utils.mjs +0 -37
  1092. package/esm2020/lib/filter/filter.module.mjs +0 -289
  1093. package/esm2020/lib/filter/index.mjs +0 -16
  1094. package/esm2020/lib/filter/ogc-filter-button/index.mjs +0 -2
  1095. package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +0 -140
  1096. package/esm2020/lib/filter/ogc-filter-form/index.mjs +0 -2
  1097. package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +0 -645
  1098. package/esm2020/lib/filter/ogc-filter-selection/index.mjs +0 -2
  1099. package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +0 -1302
  1100. package/esm2020/lib/filter/ogc-filter-time/index.mjs +0 -3
  1101. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +0 -177
  1102. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +0 -898
  1103. package/esm2020/lib/filter/ogc-filterable-form/index.mjs +0 -2
  1104. package/esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +0 -59
  1105. package/esm2020/lib/filter/ogc-filterable-item/index.mjs +0 -2
  1106. package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +0 -307
  1107. package/esm2020/lib/filter/ogc-filterable-list/index.mjs +0 -3
  1108. package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +0 -31
  1109. package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +0 -44
  1110. package/esm2020/lib/filter/shared/filterable-datasource.pipe.mjs +0 -55
  1111. package/esm2020/lib/filter/shared/index.mjs +0 -12
  1112. package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +0 -72
  1113. package/esm2020/lib/filter/shared/ogc-filter.enum.mjs +0 -30
  1114. package/esm2020/lib/filter/shared/ogc-filter.interface.mjs +0 -2
  1115. package/esm2020/lib/filter/shared/ogc-filter.mjs +0 -692
  1116. package/esm2020/lib/filter/shared/ogc-filter.service.mjs +0 -46
  1117. package/esm2020/lib/filter/shared/spatial-filter.enum.mjs +0 -23
  1118. package/esm2020/lib/filter/shared/spatial-filter.interface.mjs +0 -2
  1119. package/esm2020/lib/filter/shared/spatial-filter.service.mjs +0 -269
  1120. package/esm2020/lib/filter/shared/time-filter.enum.mjs +0 -13
  1121. package/esm2020/lib/filter/shared/time-filter.interface.mjs +0 -2
  1122. package/esm2020/lib/filter/shared/time-filter.service.mjs +0 -107
  1123. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs +0 -2
  1124. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +0 -1089
  1125. package/esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs +0 -2
  1126. package/esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +0 -207
  1127. package/esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs +0 -2
  1128. package/esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +0 -144
  1129. package/esm2020/lib/filter/time-filter-button/index.mjs +0 -2
  1130. package/esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs +0 -78
  1131. package/esm2020/lib/filter/time-filter-form/index.mjs +0 -2
  1132. package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +0 -734
  1133. package/esm2020/lib/filter/time-filter-item/index.mjs +0 -2
  1134. package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +0 -119
  1135. package/esm2020/lib/filter/time-filter-list/index.mjs +0 -3
  1136. package/esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +0 -31
  1137. package/esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs +0 -39
  1138. package/esm2020/lib/geo.module.mjs +0 -106
  1139. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +0 -522
  1140. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +0 -189
  1141. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +0 -64
  1142. package/esm2020/lib/geometry/geometry.module.mjs +0 -27
  1143. package/esm2020/lib/geometry/index.mjs +0 -4
  1144. package/esm2020/lib/geometry/shared/controls/draw.mjs +0 -314
  1145. package/esm2020/lib/geometry/shared/controls/index.mjs +0 -4
  1146. package/esm2020/lib/geometry/shared/controls/modify.mjs +0 -521
  1147. package/esm2020/lib/geometry/shared/controls/slice.mjs +0 -177
  1148. package/esm2020/lib/geometry/shared/geometry.errors.mjs +0 -26
  1149. package/esm2020/lib/geometry/shared/geometry.interfaces.mjs +0 -2
  1150. package/esm2020/lib/geometry/shared/geometry.utils.mjs +0 -122
  1151. package/esm2020/lib/geometry/shared/index.mjs +0 -5
  1152. package/esm2020/lib/import-export/export-button/export-button.component.mjs +0 -64
  1153. package/esm2020/lib/import-export/export-button/index.mjs +0 -2
  1154. package/esm2020/lib/import-export/import-export/import-export.component.mjs +0 -1228
  1155. package/esm2020/lib/import-export/import-export/index.mjs +0 -2
  1156. package/esm2020/lib/import-export/import-export.module.mjs +0 -92
  1157. package/esm2020/lib/import-export/index.mjs +0 -4
  1158. package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +0 -152
  1159. package/esm2020/lib/import-export/shared/export.errors.mjs +0 -15
  1160. package/esm2020/lib/import-export/shared/export.interface.mjs +0 -2
  1161. package/esm2020/lib/import-export/shared/export.service.mjs +0 -195
  1162. package/esm2020/lib/import-export/shared/export.type.mjs +0 -4
  1163. package/esm2020/lib/import-export/shared/export.utils.mjs +0 -46
  1164. package/esm2020/lib/import-export/shared/import.errors.mjs +0 -39
  1165. package/esm2020/lib/import-export/shared/import.interface.mjs +0 -2
  1166. package/esm2020/lib/import-export/shared/import.service.mjs +0 -215
  1167. package/esm2020/lib/import-export/shared/import.utils.mjs +0 -202
  1168. package/esm2020/lib/import-export/shared/index.mjs +0 -11
  1169. package/esm2020/lib/layer/index.mjs +0 -10
  1170. package/esm2020/lib/layer/layer-item/index.mjs +0 -2
  1171. package/esm2020/lib/layer/layer-item/layer-item.component.mjs +0 -300
  1172. package/esm2020/lib/layer/layer-legend/index.mjs +0 -2
  1173. package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +0 -388
  1174. package/esm2020/lib/layer/layer-legend-item/index.mjs +0 -2
  1175. package/esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs +0 -84
  1176. package/esm2020/lib/layer/layer-legend-list/index.mjs +0 -3
  1177. package/esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +0 -48
  1178. package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +0 -195
  1179. package/esm2020/lib/layer/layer-list/index.mjs +0 -4
  1180. package/esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs +0 -59
  1181. package/esm2020/lib/layer/layer-list/layer-list.component.mjs +0 -1009
  1182. package/esm2020/lib/layer/layer-list/layer-list.enum.mjs +0 -19
  1183. package/esm2020/lib/layer/layer-list-tool/index.mjs +0 -5
  1184. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +0 -165
  1185. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +0 -7
  1186. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +0 -2
  1187. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs +0 -22
  1188. package/esm2020/lib/layer/layer.module.mjs +0 -180
  1189. package/esm2020/lib/layer/shared/clusterParam.mjs +0 -2
  1190. package/esm2020/lib/layer/shared/index.mjs +0 -5
  1191. package/esm2020/lib/layer/shared/layer.enums.mjs +0 -2
  1192. package/esm2020/lib/layer/shared/layer.service.mjs +0 -237
  1193. package/esm2020/lib/layer/shared/layers/any-layer.interface.mjs +0 -2
  1194. package/esm2020/lib/layer/shared/layers/any-layer.mjs +0 -2
  1195. package/esm2020/lib/layer/shared/layers/image-layer.interface.mjs +0 -2
  1196. package/esm2020/lib/layer/shared/layers/image-layer.mjs +0 -67
  1197. package/esm2020/lib/layer/shared/layers/index.mjs +0 -13
  1198. package/esm2020/lib/layer/shared/layers/layer.interface.mjs +0 -17
  1199. package/esm2020/lib/layer/shared/layers/layer.mjs +0 -166
  1200. package/esm2020/lib/layer/shared/layers/tile-layer.interface.mjs +0 -2
  1201. package/esm2020/lib/layer/shared/layers/tile-layer.mjs +0 -47
  1202. package/esm2020/lib/layer/shared/layers/vector-layer.interface.mjs +0 -2
  1203. package/esm2020/lib/layer/shared/layers/vector-layer.mjs +0 -527
  1204. package/esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs +0 -2
  1205. package/esm2020/lib/layer/shared/layers/vectortile-layer.mjs +0 -104
  1206. package/esm2020/lib/layer/track-feature-button/index.mjs +0 -2
  1207. package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +0 -59
  1208. package/esm2020/lib/layer/utils/image-watcher.mjs +0 -59
  1209. package/esm2020/lib/layer/utils/index.mjs +0 -6
  1210. package/esm2020/lib/layer/utils/layer.utils.mjs +0 -10
  1211. package/esm2020/lib/layer/utils/outputLegend.mjs +0 -28
  1212. package/esm2020/lib/layer/utils/tile-watcher.mjs +0 -50
  1213. package/esm2020/lib/layer/utils/vector-watcher.mjs +0 -48
  1214. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +0 -20
  1215. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +0 -97
  1216. package/esm2020/lib/map/baselayers-switcher/index.mjs +0 -3
  1217. package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +0 -142
  1218. package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +0 -79
  1219. package/esm2020/lib/map/geolocate-button/index.mjs +0 -2
  1220. package/esm2020/lib/map/home-extent-button/home-extent-button.component.mjs +0 -63
  1221. package/esm2020/lib/map/home-extent-button/index.mjs +0 -2
  1222. package/esm2020/lib/map/index.mjs +0 -14
  1223. package/esm2020/lib/map/info-section/index.mjs +0 -2
  1224. package/esm2020/lib/map/info-section/info-section.component.mjs +0 -30
  1225. package/esm2020/lib/map/map-browser/index.mjs +0 -2
  1226. package/esm2020/lib/map/map-browser/map-browser.component.mjs +0 -66
  1227. package/esm2020/lib/map/map-center/index.mjs +0 -2
  1228. package/esm2020/lib/map/map-center/map-center.component.mjs +0 -50
  1229. package/esm2020/lib/map/map.module.mjs +0 -127
  1230. package/esm2020/lib/map/menu-button/index.mjs +0 -2
  1231. package/esm2020/lib/map/menu-button/menu-button.component.mjs +0 -62
  1232. package/esm2020/lib/map/offline-button/index.mjs +0 -2
  1233. package/esm2020/lib/map/offline-button/offline-button.component.mjs +0 -53
  1234. package/esm2020/lib/map/rotation-button/index.mjs +0 -2
  1235. package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +0 -70
  1236. package/esm2020/lib/map/shared/controllers/controller.mjs +0 -42
  1237. package/esm2020/lib/map/shared/controllers/geolocation.mjs +0 -423
  1238. package/esm2020/lib/map/shared/controllers/index.mjs +0 -4
  1239. package/esm2020/lib/map/shared/controllers/view.mjs +0 -351
  1240. package/esm2020/lib/map/shared/hover-feature.directive.mjs +0 -454
  1241. package/esm2020/lib/map/shared/index.mjs +0 -14
  1242. package/esm2020/lib/map/shared/linkedLayers.utils.mjs +0 -240
  1243. package/esm2020/lib/map/shared/map-pointer-position.directive.mjs +0 -107
  1244. package/esm2020/lib/map/shared/map.enums.mjs +0 -6
  1245. package/esm2020/lib/map/shared/map.interface.mjs +0 -2
  1246. package/esm2020/lib/map/shared/map.mjs +0 -409
  1247. package/esm2020/lib/map/shared/map.service.mjs +0 -29
  1248. package/esm2020/lib/map/shared/map.utils.mjs +0 -463
  1249. package/esm2020/lib/map/shared/mapOffline.directive.mjs +0 -98
  1250. package/esm2020/lib/map/shared/projection.interfaces.mjs +0 -2
  1251. package/esm2020/lib/map/shared/projection.service.mjs +0 -65
  1252. package/esm2020/lib/map/shared/projection.utils.mjs +0 -64
  1253. package/esm2020/lib/map/swipe-control/index.mjs +0 -2
  1254. package/esm2020/lib/map/swipe-control/swipe-control.component.mjs +0 -193
  1255. package/esm2020/lib/map/utils/layer-watcher.mjs +0 -79
  1256. package/esm2020/lib/map/wake-lock-button/index.mjs +0 -2
  1257. package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +0 -103
  1258. package/esm2020/lib/map/zoom-button/index.mjs +0 -2
  1259. package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +0 -40
  1260. package/esm2020/lib/measure/index.mjs +0 -4
  1261. package/esm2020/lib/measure/measure.module.mjs +0 -20
  1262. package/esm2020/lib/measure/measurer/measure-format.pipe.mjs +0 -37
  1263. package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +0 -180
  1264. package/esm2020/lib/measure/measurer/measurer-item.component.mjs +0 -140
  1265. package/esm2020/lib/measure/measurer/measurer.component.mjs +0 -1042
  1266. package/esm2020/lib/measure/measurer/measurer.module.mjs +0 -94
  1267. package/esm2020/lib/measure/shared/index.mjs +0 -4
  1268. package/esm2020/lib/measure/shared/measure.enum.mjs +0 -37
  1269. package/esm2020/lib/measure/shared/measure.interfaces.mjs +0 -2
  1270. package/esm2020/lib/measure/shared/measure.utils.mjs +0 -489
  1271. package/esm2020/lib/metadata/index.mjs +0 -3
  1272. package/esm2020/lib/metadata/metadata-button/index.mjs +0 -2
  1273. package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +0 -134
  1274. package/esm2020/lib/metadata/metadata.module.mjs +0 -55
  1275. package/esm2020/lib/metadata/shared/index.mjs +0 -3
  1276. package/esm2020/lib/metadata/shared/metadata.interface.mjs +0 -2
  1277. package/esm2020/lib/metadata/shared/metadata.service.mjs +0 -19
  1278. package/esm2020/lib/offline/geoDB/configFileToGeoDB.service.mjs +0 -105
  1279. package/esm2020/lib/offline/geoDB/geoDB.enums.mjs +0 -6
  1280. package/esm2020/lib/offline/geoDB/geoDB.interface.mjs +0 -2
  1281. package/esm2020/lib/offline/geoDB/geoDB.service.mjs +0 -167
  1282. package/esm2020/lib/offline/geoDB/index.mjs +0 -5
  1283. package/esm2020/lib/offline/index.mjs +0 -4
  1284. package/esm2020/lib/offline/layerDB/index.mjs +0 -3
  1285. package/esm2020/lib/offline/layerDB/layerDB.interface.mjs +0 -2
  1286. package/esm2020/lib/offline/layerDB/layerDB.service.mjs +0 -76
  1287. package/esm2020/lib/offline/shared/geo-network.service.mjs +0 -66
  1288. package/esm2020/lib/offline/shared/index.mjs +0 -2
  1289. package/esm2020/lib/overlay/index.mjs +0 -2
  1290. package/esm2020/lib/overlay/overlay.module.mjs +0 -23
  1291. package/esm2020/lib/overlay/shared/index.mjs +0 -6
  1292. package/esm2020/lib/overlay/shared/overlay.directive.mjs +0 -33
  1293. package/esm2020/lib/overlay/shared/overlay.enum.mjs +0 -8
  1294. package/esm2020/lib/overlay/shared/overlay.mjs +0 -130
  1295. package/esm2020/lib/overlay/shared/overlay.service.mjs +0 -27
  1296. package/esm2020/lib/overlay/shared/overlay.utils.mjs +0 -17
  1297. package/esm2020/lib/print/index.mjs +0 -4
  1298. package/esm2020/lib/print/print/print.component.mjs +0 -112
  1299. package/esm2020/lib/print/print-form/index.mjs +0 -2
  1300. package/esm2020/lib/print/print-form/print-form.component.mjs +0 -514
  1301. package/esm2020/lib/print/print.module.mjs +0 -65
  1302. package/esm2020/lib/print/shared/geopdf.mjs +0 -58
  1303. package/esm2020/lib/print/shared/index.mjs +0 -5
  1304. package/esm2020/lib/print/shared/print.interface.mjs +0 -2
  1305. package/esm2020/lib/print/shared/print.service.mjs +0 -984
  1306. package/esm2020/lib/print/shared/print.type.mjs +0 -30
  1307. package/esm2020/lib/query/index.mjs +0 -2
  1308. package/esm2020/lib/query/query.module.mjs +0 -29
  1309. package/esm2020/lib/query/shared/index.mjs +0 -7
  1310. package/esm2020/lib/query/shared/query-search-source.mjs +0 -35
  1311. package/esm2020/lib/query/shared/query-search-source.providers.mjs +0 -22
  1312. package/esm2020/lib/query/shared/query.directive.mjs +0 -261
  1313. package/esm2020/lib/query/shared/query.enums.mjs +0 -30
  1314. package/esm2020/lib/query/shared/query.interfaces.mjs +0 -2
  1315. package/esm2020/lib/query/shared/query.service.mjs +0 -731
  1316. package/esm2020/lib/query/shared/query.utils.mjs +0 -37
  1317. package/esm2020/lib/search/index.mjs +0 -12
  1318. package/esm2020/lib/search/search-bar/search-bar.component.mjs +0 -512
  1319. package/esm2020/lib/search/search-bar/search-bar.module.mjs +0 -75
  1320. package/esm2020/lib/search/search-bar/search-url-param.directive.mjs +0 -35
  1321. package/esm2020/lib/search/search-results/save-feature-dialog.component.mjs +0 -118
  1322. package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +0 -429
  1323. package/esm2020/lib/search/search-results/search-results-item.component.mjs +0 -147
  1324. package/esm2020/lib/search/search-results/search-results.component.mjs +0 -454
  1325. package/esm2020/lib/search/search-results/search-results.module.mjs +0 -108
  1326. package/esm2020/lib/search/search-selector/search-selector.component.mjs +0 -123
  1327. package/esm2020/lib/search/search-selector/search-selector.module.mjs +0 -56
  1328. package/esm2020/lib/search/search-settings/search-settings.component.mjs +0 -440
  1329. package/esm2020/lib/search/search-settings/search-settings.module.mjs +0 -60
  1330. package/esm2020/lib/search/search.module.mjs +0 -67
  1331. package/esm2020/lib/search/shared/index.mjs +0 -9
  1332. package/esm2020/lib/search/shared/search-pointer-summary.directive.mjs +0 -295
  1333. package/esm2020/lib/search/shared/search-source-service.providers.mjs +0 -20
  1334. package/esm2020/lib/search/shared/search-source.service.mjs +0 -55
  1335. package/esm2020/lib/search/shared/search.enums.mjs +0 -4
  1336. package/esm2020/lib/search/shared/search.interfaces.mjs +0 -2
  1337. package/esm2020/lib/search/shared/search.service.mjs +0 -121
  1338. package/esm2020/lib/search/shared/search.utils.mjs +0 -91
  1339. package/esm2020/lib/search/shared/sources/cadastre.mjs +0 -126
  1340. package/esm2020/lib/search/shared/sources/cadastre.providers.mjs +0 -23
  1341. package/esm2020/lib/search/shared/sources/coordinates.interfaces.mjs +0 -2
  1342. package/esm2020/lib/search/shared/sources/coordinates.mjs +0 -153
  1343. package/esm2020/lib/search/shared/sources/coordinates.providers.mjs +0 -40
  1344. package/esm2020/lib/search/shared/sources/icherche.interfaces.mjs +0 -2
  1345. package/esm2020/lib/search/shared/sources/icherche.mjs +0 -767
  1346. package/esm2020/lib/search/shared/sources/icherche.providers.mjs +0 -66
  1347. package/esm2020/lib/search/shared/sources/ilayer.interfaces.mjs +0 -2
  1348. package/esm2020/lib/search/shared/sources/ilayer.mjs +0 -320
  1349. package/esm2020/lib/search/shared/sources/ilayer.providers.mjs +0 -40
  1350. package/esm2020/lib/search/shared/sources/index.mjs +0 -23
  1351. package/esm2020/lib/search/shared/sources/nominatim.interfaces.mjs +0 -2
  1352. package/esm2020/lib/search/shared/sources/nominatim.mjs +0 -253
  1353. package/esm2020/lib/search/shared/sources/nominatim.providers.mjs +0 -23
  1354. package/esm2020/lib/search/shared/sources/source.interfaces.mjs +0 -2
  1355. package/esm2020/lib/search/shared/sources/source.mjs +0 -209
  1356. package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +0 -2
  1357. package/esm2020/lib/search/shared/sources/storedqueries.mjs +0 -425
  1358. package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +0 -41
  1359. package/esm2020/lib/search/shared/sources/workspace.interfaces.mjs +0 -2
  1360. package/esm2020/lib/search/shared/sources/workspace.mjs +0 -186
  1361. package/esm2020/lib/search/shared/sources/workspace.providers.mjs +0 -26
  1362. package/esm2020/lib/style/index.mjs +0 -5
  1363. package/esm2020/lib/style/shared/datasource/esri-style-generator.mjs +0 -357
  1364. package/esm2020/lib/style/shared/datasource/index.mjs +0 -2
  1365. package/esm2020/lib/style/shared/feature/feature-style.mjs +0 -141
  1366. package/esm2020/lib/style/shared/feature/index.mjs +0 -2
  1367. package/esm2020/lib/style/shared/font.enum.mjs +0 -17
  1368. package/esm2020/lib/style/shared/index.mjs +0 -5
  1369. package/esm2020/lib/style/shared/overlay/index.mjs +0 -3
  1370. package/esm2020/lib/style/shared/overlay/overlay-marker-style.utils.mjs +0 -43
  1371. package/esm2020/lib/style/shared/overlay/overlay-style.utils.mjs +0 -88
  1372. package/esm2020/lib/style/shared/vector/commonVectorStyle.mjs +0 -75
  1373. package/esm2020/lib/style/shared/vector/conversion.utils.mjs +0 -27
  1374. package/esm2020/lib/style/shared/vector/index.mjs +0 -4
  1375. package/esm2020/lib/style/shared/vector/vector-style.interface.mjs +0 -2
  1376. package/esm2020/lib/style/style-list/index.mjs +0 -5
  1377. package/esm2020/lib/style/style-list/style-list.interface.mjs +0 -2
  1378. package/esm2020/lib/style/style-list/style-list.module.mjs +0 -23
  1379. package/esm2020/lib/style/style-list/style-list.provider.mjs +0 -21
  1380. package/esm2020/lib/style/style-list/style-list.service.mjs +0 -51
  1381. package/esm2020/lib/style/style-modal/drawing/index.mjs +0 -2
  1382. package/esm2020/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +0 -288
  1383. package/esm2020/lib/style/style-modal/index.mjs +0 -5
  1384. package/esm2020/lib/style/style-modal/layer/index.mjs +0 -2
  1385. package/esm2020/lib/style/style-modal/layer/style-modal-layer.component.mjs +0 -187
  1386. package/esm2020/lib/style/style-modal/layer-button/index.mjs +0 -2
  1387. package/esm2020/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +0 -44
  1388. package/esm2020/lib/style/style-modal/shared/index.mjs +0 -2
  1389. package/esm2020/lib/style/style-modal/shared/style-modal.interface.mjs +0 -2
  1390. package/esm2020/lib/style/style-service/draw-style.service.mjs +0 -187
  1391. package/esm2020/lib/style/style-service/index.mjs +0 -3
  1392. package/esm2020/lib/style/style-service/style.service.mjs +0 -356
  1393. package/esm2020/lib/style/style.module.mjs +0 -74
  1394. package/esm2020/lib/toast/index.mjs +0 -2
  1395. package/esm2020/lib/toast/toast.component.mjs +0 -113
  1396. package/esm2020/lib/toast/toast.module.mjs +0 -45
  1397. package/esm2020/lib/utils/googleLinks.mjs +0 -13
  1398. package/esm2020/lib/utils/id-generator.mjs +0 -110
  1399. package/esm2020/lib/utils/index.mjs +0 -4
  1400. package/esm2020/lib/utils/osmLinks.mjs +0 -10
  1401. package/esm2020/lib/wkt/index.mjs +0 -2
  1402. package/esm2020/lib/wkt/shared/index.mjs +0 -2
  1403. package/esm2020/lib/wkt/shared/wkt.service.mjs +0 -239
  1404. package/esm2020/lib/wkt/wkt.module.mjs +0 -22
  1405. package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +0 -48
  1406. package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +0 -36
  1407. package/esm2020/lib/workspace/confirmation-popup/index.mjs +0 -3
  1408. package/esm2020/lib/workspace/index.mjs +0 -8
  1409. package/esm2020/lib/workspace/shared/edition-workspace.mjs +0 -280
  1410. package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +0 -642
  1411. package/esm2020/lib/workspace/shared/feature-workspace.mjs +0 -35
  1412. package/esm2020/lib/workspace/shared/feature-workspace.service.mjs +0 -157
  1413. package/esm2020/lib/workspace/shared/index.mjs +0 -8
  1414. package/esm2020/lib/workspace/shared/wfs-workspace.mjs +0 -35
  1415. package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +0 -150
  1416. package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +0 -260
  1417. package/esm2020/lib/workspace/shared/workspace.utils.mjs +0 -24
  1418. package/esm2020/lib/workspace/widgets/index.mjs +0 -4
  1419. package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +0 -47
  1420. package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +0 -36
  1421. package/esm2020/lib/workspace/widgets/widgets.mjs +0 -15
  1422. package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +0 -133
  1423. package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +0 -28
  1424. package/esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs +0 -113
  1425. package/esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs +0 -28
  1426. package/esm2020/lib/workspace/workspace.module.mjs +0 -62
  1427. package/esm2020/public_api.mjs +0 -57
  1428. package/fesm2015/igo2-geo.mjs +0 -46894
  1429. package/fesm2015/igo2-geo.mjs.map +0 -1
  1430. package/fesm2020/igo2-geo.mjs +0 -44993
  1431. package/fesm2020/igo2-geo.mjs.map +0 -1
  1432. package/ngcc.config.js +0 -3
  1433. package/style/geo.theming.scss +0 -12
@@ -0,0 +1,16 @@
1
+ import { HttpClient } from '@angular/common/http';
2
+ import { ConfigService } from '@igo2/core';
3
+ import { DirectionsSource } from './directions-source';
4
+ import { OsrmDirectionsSource } from './osrm-directions-source';
5
+ export function osrmDirectionsSourcesFactory(http, config) {
6
+ return new OsrmDirectionsSource(http, config);
7
+ }
8
+ export function provideOsrmDirectionsSource() {
9
+ return {
10
+ provide: DirectionsSource,
11
+ useFactory: osrmDirectionsSourcesFactory,
12
+ multi: true,
13
+ deps: [HttpClient, ConfigService]
14
+ };
15
+ }
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9ucy1zb3VyY2UucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9kaXJlY3Rpb25zL2RpcmVjdGlvbnMtc291cmNlcy9kaXJlY3Rpb25zLXNvdXJjZS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRSxNQUFNLFVBQVUsNEJBQTRCLENBQzFDLElBQWdCLEVBQ2hCLE1BQXFCO0lBRXJCLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDaEQsQ0FBQztBQUVELE1BQU0sVUFBVSwyQkFBMkI7SUFDekMsT0FBTztRQUNMLE9BQU8sRUFBRSxnQkFBZ0I7UUFDekIsVUFBVSxFQUFFLDRCQUE0QjtRQUN4QyxLQUFLLEVBQUUsSUFBSTtRQUNYLElBQUksRUFBRSxDQUFDLFVBQVUsRUFBRSxhQUFhLENBQUM7S0FDbEMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5cbmltcG9ydCB7IERpcmVjdGlvbnNTb3VyY2UgfSBmcm9tICcuL2RpcmVjdGlvbnMtc291cmNlJztcbmltcG9ydCB7IE9zcm1EaXJlY3Rpb25zU291cmNlIH0gZnJvbSAnLi9vc3JtLWRpcmVjdGlvbnMtc291cmNlJztcblxuZXhwb3J0IGZ1bmN0aW9uIG9zcm1EaXJlY3Rpb25zU291cmNlc0ZhY3RvcnkoXG4gIGh0dHA6IEh0dHBDbGllbnQsXG4gIGNvbmZpZzogQ29uZmlnU2VydmljZVxuKSB7XG4gIHJldHVybiBuZXcgT3NybURpcmVjdGlvbnNTb3VyY2UoaHR0cCwgY29uZmlnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVPc3JtRGlyZWN0aW9uc1NvdXJjZSgpIHtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBEaXJlY3Rpb25zU291cmNlLFxuICAgIHVzZUZhY3Rvcnk6IG9zcm1EaXJlY3Rpb25zU291cmNlc0ZhY3RvcnksXG4gICAgbXVsdGk6IHRydWUsXG4gICAgZGVwczogW0h0dHBDbGllbnQsIENvbmZpZ1NlcnZpY2VdXG4gIH07XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ export * from './directions-source';
2
+ export * from './directions-source.interface';
3
+ export * from './osrm-directions-source';
4
+ export * from './directions-source.provider';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9kaXJlY3Rpb25zL2RpcmVjdGlvbnMtc291cmNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDhCQUE4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kaXJlY3Rpb25zLXNvdXJjZSc7XG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGlvbnMtc291cmNlLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL29zcm0tZGlyZWN0aW9ucy1zb3VyY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3Rpb25zLXNvdXJjZS5wcm92aWRlcic7XG4iXX0=
@@ -0,0 +1,128 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import { Injectable } from '@angular/core';
3
+ import { HttpClient, HttpParams } from '@angular/common/http';
4
+ import { Observable } from 'rxjs';
5
+ import { map } from 'rxjs/operators';
6
+ import { Cacheable } from 'ts-cacheable';
7
+ import { customCacheHasher, uuid } from '@igo2/utils';
8
+ import { ConfigService } from '@igo2/core';
9
+ import { DirectionsFormat, SourceDirectionsType } from '../shared/directions.enum';
10
+ import { DirectionsSource } from './directions-source';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@angular/common/http";
13
+ import * as i2 from "@igo2/core";
14
+ export class OsrmDirectionsSource extends DirectionsSource {
15
+ http;
16
+ config;
17
+ get enabled() {
18
+ return this.options.enabled !== false;
19
+ }
20
+ set enabled(value) {
21
+ this.options.enabled = value;
22
+ }
23
+ static _name = 'OSRM Québec';
24
+ directionsUrl = 'https://geoegl.msp.gouv.qc.ca/services/itineraire/route/v1/driving/';
25
+ options;
26
+ constructor(http, config) {
27
+ super();
28
+ this.http = http;
29
+ this.config = config;
30
+ this.options = this.config.getConfig('directionsSources.osrm') || {};
31
+ this.directionsUrl = this.options.url || this.directionsUrl;
32
+ }
33
+ getName() {
34
+ return OsrmDirectionsSource._name;
35
+ }
36
+ route(coordinates, directionsOptions = {}) {
37
+ const directionsParams = this.getRouteParams(directionsOptions);
38
+ return this.getRoute(coordinates, directionsParams);
39
+ }
40
+ getRoute(coordinates, params) {
41
+ return this.http
42
+ .get(this.directionsUrl + coordinates.join(';'), {
43
+ params
44
+ })
45
+ .pipe(map((res) => this.extractRoutesData(res)));
46
+ }
47
+ extractRoutesData(response) {
48
+ const routeResponse = [];
49
+ response.routes.forEach((route) => {
50
+ routeResponse.push(this.formatRoute(route, response.waypoints));
51
+ });
52
+ return routeResponse;
53
+ }
54
+ getRouteParams(directionsOptions = {}) {
55
+ directionsOptions.alternatives =
56
+ directionsOptions.alternatives !== undefined
57
+ ? directionsOptions.alternatives
58
+ : true;
59
+ directionsOptions.steps =
60
+ directionsOptions.steps !== undefined ? directionsOptions.steps : true;
61
+ directionsOptions.geometries =
62
+ directionsOptions.geometries !== undefined
63
+ ? directionsOptions.geometries
64
+ : 'geojson';
65
+ directionsOptions.overview =
66
+ directionsOptions.overview !== undefined
67
+ ? directionsOptions.overview
68
+ : false;
69
+ directionsOptions.continue_straight =
70
+ directionsOptions.continue_straight !== undefined
71
+ ? directionsOptions.continue_straight
72
+ : false;
73
+ return new HttpParams({
74
+ fromObject: {
75
+ alternatives: directionsOptions.alternatives ? 'true' : 'false',
76
+ overview: directionsOptions.overview ? 'simplified' : 'full',
77
+ steps: directionsOptions.steps ? 'true' : 'false',
78
+ geometries: directionsOptions.geometries
79
+ ? directionsOptions.geometries
80
+ : 'geojson',
81
+ continue_straight: directionsOptions.continue_straight
82
+ ? 'true'
83
+ : 'false'
84
+ }
85
+ });
86
+ }
87
+ formatRoute(roadNetworkRoute, waypoints) {
88
+ const stepsUI = [];
89
+ roadNetworkRoute.legs.forEach((leg) => {
90
+ leg.steps.forEach((step) => {
91
+ stepsUI.push(step);
92
+ });
93
+ });
94
+ return {
95
+ id: uuid(),
96
+ title: roadNetworkRoute.legs[0].summary,
97
+ source: OsrmDirectionsSource._name,
98
+ sourceType: SourceDirectionsType.Route,
99
+ order: 1,
100
+ format: DirectionsFormat.GeoJSON,
101
+ icon: 'directions',
102
+ projection: 'EPSG:4326',
103
+ waypoints,
104
+ distance: roadNetworkRoute.distance,
105
+ duration: roadNetworkRoute.duration,
106
+ geometry: roadNetworkRoute.geometry,
107
+ legs: roadNetworkRoute.legs,
108
+ steps: stepsUI,
109
+ weight: roadNetworkRoute.weight,
110
+ weight_name: roadNetworkRoute.weight_name
111
+ };
112
+ }
113
+ static ɵfac = function OsrmDirectionsSource_Factory(t) { return new (t || OsrmDirectionsSource)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.ConfigService)); };
114
+ static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: OsrmDirectionsSource, factory: OsrmDirectionsSource.ɵfac });
115
+ }
116
+ __decorate([
117
+ Cacheable({
118
+ maxCacheCount: 20,
119
+ cacheHasher: customCacheHasher
120
+ }),
121
+ __metadata("design:type", Function),
122
+ __metadata("design:paramtypes", [Array, HttpParams]),
123
+ __metadata("design:returntype", Observable)
124
+ ], OsrmDirectionsSource.prototype, "getRoute", null);
125
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OsrmDirectionsSource, [{
126
+ type: Injectable
127
+ }], function () { return [{ type: i1.HttpClient }, { type: i2.ConfigService }]; }, { getRoute: [] }); })();
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3NybS1kaXJlY3Rpb25zLXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2RpcmVjdGlvbnMvZGlyZWN0aW9ucy1zb3VyY2VzL29zcm0tZGlyZWN0aW9ucy1zb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUczQyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLG9CQUFvQixFQUNyQixNQUFNLDJCQUEyQixDQUFDO0FBRW5DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBSXZELE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxnQkFBZ0I7SUFhOUM7SUFDQTtJQWJWLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFjO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUM7SUFDckIsYUFBYSxHQUNuQixxRUFBcUUsQ0FBQztJQUNoRSxPQUFPLENBQTBC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SUFBSSxFQUFFLGdCQUFnQixDQUFDLElBQUk7WUFDM0IsS0FBSyxFQUFFLE9BQU87WUFDZCxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtZQUMvQixXQUFXLEVBQUUsZ0JBQWdCLENBQUMsV0FBVztTQUMxQyxDQUFDO0lBQ0osQ0FBQzs4RUFwSFUsb0JBQW9CO2dFQUFwQixvQkFBb0IsV0FBcEIsb0JBQW9COztBQXFDdkI7SUFKUCxTQUFTLENBQUM7UUFDVCxhQUFhLEVBQUUsRUFBRTtRQUNqQixXQUFXLEVBQUUsaUJBQWlCO0tBQy9CLENBQUM7OzRDQUdRLFVBQVU7b0NBQ2pCLFVBQVU7b0RBTVo7dUZBOUNVLG9CQUFvQjtjQURoQyxVQUFVO3lGQXNDRCxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IENhY2hlYWJsZSB9IGZyb20gJ3RzLWNhY2hlYWJsZSc7XHJcblxyXG5pbXBvcnQgeyBjdXN0b21DYWNoZUhhc2hlciwgdXVpZCB9IGZyb20gJ0BpZ28yL3V0aWxzJztcclxuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgRGlyZWN0aW9uLCBEaXJlY3Rpb25PcHRpb25zIH0gZnJvbSAnLi4vc2hhcmVkL2RpcmVjdGlvbnMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtcclxuICBEaXJlY3Rpb25zRm9ybWF0LFxyXG4gIFNvdXJjZURpcmVjdGlvbnNUeXBlXHJcbn0gZnJvbSAnLi4vc2hhcmVkL2RpcmVjdGlvbnMuZW51bSc7XHJcblxyXG5pbXBvcnQgeyBEaXJlY3Rpb25zU291cmNlIH0gZnJvbSAnLi9kaXJlY3Rpb25zLXNvdXJjZSc7XHJcbmltcG9ydCB7IERpcmVjdGlvbnNTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi9kaXJlY3Rpb25zLXNvdXJjZS5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgT3NybURpcmVjdGlvbnNTb3VyY2UgZXh0ZW5kcyBEaXJlY3Rpb25zU291cmNlIHtcclxuICBnZXQgZW5hYmxlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZW5hYmxlZCAhPT0gZmFsc2U7XHJcbiAgfVxyXG4gIHNldCBlbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMuZW5hYmxlZCA9IHZhbHVlO1xyXG4gIH1cclxuICBzdGF0aWMgX25hbWUgPSAnT1NSTSBRdcOpYmVjJztcclxuICBwcml2YXRlIGRpcmVjdGlvbnNVcmwgPVxyXG4gICAgJ2h0dHBzOi8vZ2VvZWdsLm1zcC5nb3V2LnFjLmNhL3NlcnZpY2VzL2l0aW5lcmFpcmUvcm91dGUvdjEvZHJpdmluZy8nO1xyXG4gIHByaXZhdGUgb3B0aW9uczogRGlyZWN0aW9uc1NvdXJjZU9wdGlvbnM7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZ1NlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2RpcmVjdGlvbnNTb3VyY2VzLm9zcm0nKSB8fCB7fTtcclxuICAgIHRoaXMuZGlyZWN0aW9uc1VybCA9IHRoaXMub3B0aW9ucy51cmwgfHwgdGhpcy5kaXJlY3Rpb25zVXJsO1xyXG4gIH1cclxuXHJcbiAgZ2V0TmFtZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE9zcm1EaXJlY3Rpb25zU291cmNlLl9uYW1lO1xyXG4gIH1cclxuXHJcbiAgcm91dGUoXHJcbiAgICBjb29yZGluYXRlczogW251bWJlciwgbnVtYmVyXVtdLFxyXG4gICAgZGlyZWN0aW9uc09wdGlvbnM6IERpcmVjdGlvbk9wdGlvbnMgPSB7fVxyXG4gICk6IE9ic2VydmFibGU8RGlyZWN0aW9uW10+IHtcclxuICAgIGNvbnN0IGRpcmVjdGlvbnNQYXJhbXMgPSB0aGlzLmdldFJvdXRlUGFyYW1zKGRpcmVjdGlvbnNPcHRpb25zKTtcclxuICAgIHJldHVybiB0aGlzLmdldFJvdXRlKGNvb3JkaW5hdGVzLCBkaXJlY3Rpb25zUGFyYW1zKTtcclxuICB9XHJcblxyXG4gIEBDYWNoZWFibGUoe1xyXG4gICAgbWF4Q2FjaGVDb3VudDogMjAsXHJcbiAgICBjYWNoZUhhc2hlcjogY3VzdG9tQ2FjaGVIYXNoZXJcclxuICB9KVxyXG4gIHByaXZhdGUgZ2V0Um91dGUoXHJcbiAgICBjb29yZGluYXRlczogW251bWJlciwgbnVtYmVyXVtdLFxyXG4gICAgcGFyYW1zOiBIdHRwUGFyYW1zXHJcbiAgKTogT2JzZXJ2YWJsZTxEaXJlY3Rpb25bXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PEpTT05bXT4odGhpcy5kaXJlY3Rpb25zVXJsICsgY29vcmRpbmF0ZXMuam9pbignOycpLCB7XHJcbiAgICAgICAgcGFyYW1zXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKG1hcCgocmVzKSA9PiB0aGlzLmV4dHJhY3RSb3V0ZXNEYXRhKHJlcykpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZXh0cmFjdFJvdXRlc0RhdGEocmVzcG9uc2UpOiBEaXJlY3Rpb25bXSB7XHJcbiAgICBjb25zdCByb3V0ZVJlc3BvbnNlID0gW107XHJcbiAgICByZXNwb25zZS5yb3V0ZXMuZm9yRWFjaCgocm91dGUpID0+IHtcclxuICAgICAgcm91dGVSZXNwb25zZS5wdXNoKHRoaXMuZm9ybWF0Um91dGUocm91dGUsIHJlc3BvbnNlLndheXBvaW50cykpO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gcm91dGVSZXNwb25zZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Um91dGVQYXJhbXMoZGlyZWN0aW9uc09wdGlvbnM6IERpcmVjdGlvbk9wdGlvbnMgPSB7fSk6IEh0dHBQYXJhbXMge1xyXG4gICAgZGlyZWN0aW9uc09wdGlvbnMuYWx0ZXJuYXRpdmVzID1cclxuICAgICAgZGlyZWN0aW9uc09wdGlvbnMuYWx0ZXJuYXRpdmVzICE9PSB1bmRlZmluZWRcclxuICAgICAgICA/IGRpcmVjdGlvbnNPcHRpb25zLmFsdGVybmF0aXZlc1xyXG4gICAgICAgIDogdHJ1ZTtcclxuICAgIGRpcmVjdGlvbnNPcHRpb25zLnN0ZXBzID1cclxuICAgICAgZGlyZWN0aW9uc09wdGlvbnMuc3RlcHMgIT09IHVuZGVmaW5lZCA/IGRpcmVjdGlvbnNPcHRpb25zLnN0ZXBzIDogdHJ1ZTtcclxuICAgIGRpcmVjdGlvbnNPcHRpb25zLmdlb21ldHJpZXMgPVxyXG4gICAgICBkaXJlY3Rpb25zT3B0aW9ucy5nZW9tZXRyaWVzICE9PSB1bmRlZmluZWRcclxuICAgICAgICA/IGRpcmVjdGlvbnNPcHRpb25zLmdlb21ldHJpZXNcclxuICAgICAgICA6ICdnZW9qc29uJztcclxuICAgIGRpcmVjdGlvbnNPcHRpb25zLm92ZXJ2aWV3ID1cclxuICAgICAgZGlyZWN0aW9uc09wdGlvbnMub3ZlcnZpZXcgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgID8gZGlyZWN0aW9uc09wdGlvbnMub3ZlcnZpZXdcclxuICAgICAgICA6IGZhbHNlO1xyXG4gICAgZGlyZWN0aW9uc09wdGlvbnMuY29udGludWVfc3RyYWlnaHQgPVxyXG4gICAgICBkaXJlY3Rpb25zT3B0aW9ucy5jb250aW51ZV9zdHJhaWdodCAhPT0gdW5kZWZpbmVkXHJcbiAgICAgICAgPyBkaXJlY3Rpb25zT3B0aW9ucy5jb250aW51ZV9zdHJhaWdodFxyXG4gICAgICAgIDogZmFsc2U7XHJcblxyXG4gICAgcmV0dXJuIG5ldyBIdHRwUGFyYW1zKHtcclxuICAgICAgZnJvbU9iamVjdDoge1xyXG4gICAgICAgIGFsdGVybmF0aXZlczogZGlyZWN0aW9uc09wdGlvbnMuYWx0ZXJuYXRpdmVzID8gJ3RydWUnIDogJ2ZhbHNlJyxcclxuICAgICAgICBvdmVydmlldzogZGlyZWN0aW9uc09wdGlvbnMub3ZlcnZpZXcgPyAnc2ltcGxpZmllZCcgOiAnZnVsbCcsXHJcbiAgICAgICAgc3RlcHM6IGRpcmVjdGlvbnNPcHRpb25zLnN0ZXBzID8gJ3RydWUnIDogJ2ZhbHNlJyxcclxuICAgICAgICBnZW9tZXRyaWVzOiBkaXJlY3Rpb25zT3B0aW9ucy5nZW9tZXRyaWVzXHJcbiAgICAgICAgICA/IGRpcmVjdGlvbnNPcHRpb25zLmdlb21ldHJpZXNcclxuICAgICAgICAgIDogJ2dlb2pzb24nLFxyXG4gICAgICAgIGNvbnRpbnVlX3N0cmFpZ2h0OiBkaXJlY3Rpb25zT3B0aW9ucy5jb250aW51ZV9zdHJhaWdodFxyXG4gICAgICAgICAgPyAndHJ1ZSdcclxuICAgICAgICAgIDogJ2ZhbHNlJ1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZm9ybWF0Um91dGUocm9hZE5ldHdvcmtSb3V0ZTogYW55LCB3YXlwb2ludHM6IGFueSk6IERpcmVjdGlvbiB7XHJcbiAgICBjb25zdCBzdGVwc1VJID0gW107XHJcbiAgICByb2FkTmV0d29ya1JvdXRlLmxlZ3MuZm9yRWFjaCgobGVnKSA9PiB7XHJcbiAgICAgIGxlZy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XHJcbiAgICAgICAgc3RlcHNVSS5wdXNoKHN0ZXApO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaWQ6IHV1aWQoKSxcclxuICAgICAgdGl0bGU6IHJvYWROZXR3b3JrUm91dGUubGVnc1swXS5zdW1tYXJ5LFxyXG4gICAgICBzb3VyY2U6IE9zcm1EaXJlY3Rpb25zU291cmNlLl9uYW1lLFxyXG4gICAgICBzb3VyY2VUeXBlOiBTb3VyY2VEaXJlY3Rpb25zVHlwZS5Sb3V0ZSxcclxuICAgICAgb3JkZXI6IDEsXHJcbiAgICAgIGZvcm1hdDogRGlyZWN0aW9uc0Zvcm1hdC5HZW9KU09OLFxyXG4gICAgICBpY29uOiAnZGlyZWN0aW9ucycsXHJcbiAgICAgIHByb2plY3Rpb246ICdFUFNHOjQzMjYnLFxyXG4gICAgICB3YXlwb2ludHMsXHJcbiAgICAgIGRpc3RhbmNlOiByb2FkTmV0d29ya1JvdXRlLmRpc3RhbmNlLFxyXG4gICAgICBkdXJhdGlvbjogcm9hZE5ldHdvcmtSb3V0ZS5kdXJhdGlvbixcclxuICAgICAgZ2VvbWV0cnk6IHJvYWROZXR3b3JrUm91dGUuZ2VvbWV0cnksXHJcbiAgICAgIGxlZ3M6IHJvYWROZXR3b3JrUm91dGUubGVncyxcclxuICAgICAgc3RlcHM6IHN0ZXBzVUksXHJcbiAgICAgIHdlaWdodDogcm9hZE5ldHdvcmtSb3V0ZS53ZWlnaHQsXHJcbiAgICAgIHdlaWdodF9uYW1lOiByb2FkTmV0d29ya1JvdXRlLndlaWdodF9uYW1lXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,349 @@
1
+ import { ChangeDetectorRef, Component, Input } from '@angular/core';
2
+ import { debounceTime, distinctUntilChanged, map } from 'rxjs/operators';
3
+ import { LanguageService } from '@igo2/core';
4
+ import { EntityStoreWatcher } from '@igo2/common';
5
+ import * as olCondition from 'ol/events/condition';
6
+ import * as olInteraction from 'ol/interaction';
7
+ import * as olProj from 'ol/proj';
8
+ import { Subject } from 'rxjs';
9
+ import { addDirectionToRoutesFeatureStore, addStopToStopsFeatureStore, addStopToStore, initRoutesFeatureStore, initStepFeatureStore, initStopsFeatureStore, updateStoreSorting } from './shared/directions.utils';
10
+ import { DirectionsService } from './shared/directions.service';
11
+ import { DirectionType, ProposalType } from './shared/directions.enum';
12
+ import { roundCoordTo, stringToLonLat } from '../map';
13
+ import { SearchService } from '../search/shared/search.service';
14
+ import { ChangeUtils, ObjectUtils } from '@igo2/utils';
15
+ import { RoutesFeatureStore, StepFeatureStore, StopsFeatureStore, StopsStore } from './shared/store';
16
+ import { FeatureStoreLoadingStrategy } from '../feature/shared/strategies/loading';
17
+ import { QueryService } from '../query/shared/query.service';
18
+ import * as i0 from "@angular/core";
19
+ import * as i1 from "@igo2/core";
20
+ import * as i2 from "./shared/directions.service";
21
+ import * as i3 from "../search/shared/search.service";
22
+ import * as i4 from "../query/shared/query.service";
23
+ import * as i5 from "./directions-inputs/directions-inputs.component";
24
+ import * as i6 from "./directions-buttons/directions-buttons.component";
25
+ import * as i7 from "./directions-results/directions-results.component";
26
+ export class DirectionsComponent {
27
+ cdRef;
28
+ languageService;
29
+ directionsService;
30
+ searchService;
31
+ queryService;
32
+ watcher;
33
+ projection = 'EPSG:4326';
34
+ zoomRoute$$;
35
+ storeEmpty$$;
36
+ storeChange$$;
37
+ routesQueries$$ = [];
38
+ selectStopInteraction;
39
+ translateStop;
40
+ selectedRoute;
41
+ focusOnStop = false;
42
+ isTranslating = false;
43
+ previousStops = [];
44
+ searchs$$ = [];
45
+ contextUri;
46
+ stopsStore;
47
+ stopsFeatureStore;
48
+ routesFeatureStore;
49
+ stepFeatureStore;
50
+ debounce = 200;
51
+ length = 2;
52
+ coordRoundedDecimals = 6;
53
+ zoomToActiveRoute$ = new Subject();
54
+ constructor(cdRef, languageService, directionsService, searchService, queryService) {
55
+ this.cdRef = cdRef;
56
+ this.languageService = languageService;
57
+ this.directionsService = directionsService;
58
+ this.searchService = searchService;
59
+ this.queryService = queryService;
60
+ }
61
+ ngOnInit() {
62
+ this.queryService.queryEnabled = false;
63
+ this.initEntityStores();
64
+ setTimeout(() => {
65
+ initStopsFeatureStore(this.stopsFeatureStore, this.languageService);
66
+ initRoutesFeatureStore(this.routesFeatureStore, this.languageService);
67
+ initStepFeatureStore(this.stepFeatureStore);
68
+ this.initOlInteraction();
69
+ }, 1);
70
+ }
71
+ ngOnDestroy() {
72
+ this.queryService.queryEnabled = true;
73
+ this.storeEmpty$$.unsubscribe();
74
+ this.storeChange$$.unsubscribe();
75
+ this.routesQueries$$.map((u) => u.unsubscribe());
76
+ this.zoomRoute$$.unsubscribe();
77
+ this.freezeStores();
78
+ }
79
+ freezeStores() {
80
+ this.stopsFeatureStore.layer.map.ol.removeInteraction(this.selectStopInteraction);
81
+ this.stopsFeatureStore.layer.map.ol.removeInteraction(this.translateStop);
82
+ this.routesFeatureStore.layer.map.ol.removeInteraction(this.selectedRoute);
83
+ this.stopsFeatureStore.deactivateStrategyOfType(FeatureStoreLoadingStrategy);
84
+ this.routesFeatureStore.deactivateStrategyOfType(FeatureStoreLoadingStrategy);
85
+ this.stepFeatureStore.deactivateStrategyOfType(FeatureStoreLoadingStrategy);
86
+ }
87
+ initEntityStores() {
88
+ this.watcher = new EntityStoreWatcher(this.stopsStore, this.cdRef);
89
+ this.monitorEmptyEntityStore();
90
+ this.monitorEntityStoreChange();
91
+ this.monitorActiveRouteZoom();
92
+ }
93
+ monitorActiveRouteZoom() {
94
+ this.zoomRoute$$ = this.zoomToActiveRoute$.subscribe(() => {
95
+ if (this.routesFeatureStore.count >= 1) {
96
+ const activeRoute = this.routesFeatureStore
97
+ .all()
98
+ .find((route) => route.properties.active);
99
+ if (activeRoute) {
100
+ activeRoute.ol.getGeometry();
101
+ const routeExtent = activeRoute.ol.getGeometry().getExtent();
102
+ this.routesFeatureStore.layer.map.viewController.zoomToExtent(routeExtent);
103
+ }
104
+ }
105
+ });
106
+ }
107
+ initOlInteraction() {
108
+ this.selectStopInteraction = new olInteraction.Select({
109
+ layers: [this.stopsFeatureStore.layer.ol],
110
+ hitTolerance: 7,
111
+ condition: (event) => {
112
+ return event.type === 'pointermove' && !event.dragging;
113
+ }
114
+ });
115
+ this.translateStop = new olInteraction.Translate({
116
+ features: this.selectStopInteraction.getFeatures()
117
+ });
118
+ this.translateStop.on('translating', (evt) => {
119
+ this.isTranslating = true;
120
+ this.executeStopTranslation(evt.features);
121
+ });
122
+ this.translateStop.on('translateend', (evt) => {
123
+ this.isTranslating = false;
124
+ this.executeStopTranslation(evt.features);
125
+ });
126
+ this.selectedRoute = new olInteraction.Select({
127
+ layers: [this.routesFeatureStore.layer.ol],
128
+ condition: olCondition.click,
129
+ hitTolerance: 7,
130
+ filter: (feature) => {
131
+ return (feature.get('type') === DirectionType.Route &&
132
+ feature.get('active') &&
133
+ !this.isTranslating);
134
+ }
135
+ });
136
+ this.selectedRoute.on('select', (evt) => {
137
+ if (this.focusOnStop === false) {
138
+ const selectCoordinates = roundCoordTo(olProj.transform(evt.mapBrowserEvent.coordinate, this.routesFeatureStore.layer.map.projection, this.projection), this.coordRoundedDecimals);
139
+ const addedStop = addStopToStore(this.stopsStore);
140
+ addedStop.text = selectCoordinates.join(',');
141
+ addedStop.coordinates = [selectCoordinates[0], selectCoordinates[1]];
142
+ }
143
+ });
144
+ this.stopsFeatureStore.layer.map.ol.addInteraction(this.selectStopInteraction);
145
+ this.stopsFeatureStore.layer.map.ol.addInteraction(this.translateStop);
146
+ this.routesFeatureStore.layer.map.ol.addInteraction(this.selectedRoute);
147
+ }
148
+ onStopInputHasFocusChange(stopInputHasFocus) {
149
+ stopInputHasFocus
150
+ ? this.routesFeatureStore.layer.map.ol.removeInteraction(this.selectedRoute)
151
+ : this.routesFeatureStore.layer.map.ol.addInteraction(this.selectedRoute);
152
+ }
153
+ executeStopTranslation(features) {
154
+ if (features.getLength() === 0) {
155
+ return;
156
+ }
157
+ const firstFeature = features.getArray()[0];
158
+ const translatedStopId = firstFeature.getId();
159
+ const translationCoordinates = olProj.transform(firstFeature.getGeometry().getCoordinates(), this.stopsFeatureStore.layer.map.projection, this.projection);
160
+ const translatedStop = this.stopsStore.get(translatedStopId);
161
+ const roundedCoord = roundCoordTo(translationCoordinates, this.coordRoundedDecimals);
162
+ translatedStop.coordinates = roundedCoord;
163
+ translatedStop.text = roundedCoord.join(',');
164
+ this.stopsStore.update(translatedStop);
165
+ }
166
+ monitorEmptyEntityStore() {
167
+ // Watch if the store is empty to reset it
168
+ this.storeEmpty$$ = this.stopsStore.count$
169
+ .pipe(distinctUntilChanged())
170
+ .subscribe((count) => {
171
+ if (count < 2) {
172
+ addStopToStore(this.stopsStore);
173
+ if (this.stopsStore.count === 2) {
174
+ this.stopsStore.storeInitialized$.next(true);
175
+ return;
176
+ }
177
+ this.stopsStore.storeInitialized$.next(false);
178
+ }
179
+ this.routesQueries$$.map((u) => u.unsubscribe());
180
+ });
181
+ }
182
+ monitorEntityStoreChange() {
183
+ this.storeChange$$ = this.stopsStore.entities$
184
+ .pipe(debounceTime(this.debounce))
185
+ .subscribe((stops) => {
186
+ this.handleStopDiff(stops);
187
+ updateStoreSorting(this.stopsStore);
188
+ this.handleStopsFeature();
189
+ this.getRoutes(this.isTranslating);
190
+ });
191
+ }
192
+ cancelSearch() {
193
+ this.searchs$$.map((s) => s.unsubscribe());
194
+ }
195
+ handleStopDiff(stops) {
196
+ const simplifiedStops = stops.map((stop) => {
197
+ return ObjectUtils.removeUndefined({
198
+ ...{ id: stop.id, text: stop.text, coordinates: stop.coordinates }
199
+ });
200
+ });
201
+ const diff = ChangeUtils.findChanges(this.previousStops, simplifiedStops, [
202
+ 'coordinates'
203
+ ]);
204
+ const stopIdToProcess = diff.added.concat(diff.modified);
205
+ if (stopIdToProcess) {
206
+ stopIdToProcess.map((change) => {
207
+ const changedStop = change.newValue;
208
+ if (changedStop) {
209
+ const stop = this.stopsStore.get(changedStop.id);
210
+ const term = stop.text;
211
+ if (!term || term.length === 0) {
212
+ return;
213
+ }
214
+ const response = stringToLonLat(term, this.stopsFeatureStore.layer.map.projection);
215
+ let researches;
216
+ let isCoord = false;
217
+ if (response.lonLat) {
218
+ isCoord = true;
219
+ }
220
+ researches = this.searchService.search(term, {
221
+ searchType: 'Feature'
222
+ });
223
+ this.cancelSearch();
224
+ const requests$ = researches.map((res) => res.request.pipe(map((results) => results.filter((r) => isCoord
225
+ ? r.data.geometry.type === 'Point' && r.data.geometry
226
+ : r.data.geometry))));
227
+ this.searchs$$ = requests$.map((request) => {
228
+ return request
229
+ .pipe(map((results) => results.filter((r) => isCoord
230
+ ? r.data.geometry.type === 'Point' && r.data.geometry
231
+ : r.data.geometry)))
232
+ .subscribe((res) => {
233
+ if (res.length > 0) {
234
+ const source = res[0].source;
235
+ const meta = res[0].meta;
236
+ const results = res.map((r) => r.data);
237
+ if (!stop.searchProposals) {
238
+ stop.searchProposals = [];
239
+ }
240
+ stop.searchProposals = stop.searchProposals.filter((sp) => sp.type ===
241
+ (isCoord ? ProposalType.Coord : ProposalType.Text));
242
+ let storedSource = stop.searchProposals.find((sp) => sp.source === source);
243
+ if (storedSource) {
244
+ storedSource.results = results;
245
+ }
246
+ else {
247
+ stop.searchProposals.push({
248
+ type: isCoord ? ProposalType.Coord : ProposalType.Text,
249
+ source,
250
+ meta,
251
+ results
252
+ });
253
+ }
254
+ }
255
+ this.cdRef.detectChanges();
256
+ });
257
+ });
258
+ }
259
+ });
260
+ }
261
+ this.previousStops = simplifiedStops;
262
+ }
263
+ handleStopsFeature() {
264
+ const stops = this.stopsStore.all();
265
+ const stopsWithCoordinates = stops.filter((stop) => stop.coordinates);
266
+ stopsWithCoordinates.map((stop) => this.addStopOverlay(stop));
267
+ this.stopsFeatureStore
268
+ .all()
269
+ .map((stopFeature) => {
270
+ if (!this.stopsStore.get(stopFeature.properties.id)) {
271
+ this.stopsFeatureStore.delete(stopFeature);
272
+ }
273
+ });
274
+ const stopsWithoutCoordinates = stops.filter((stop) => !stop.coordinates);
275
+ stopsWithoutCoordinates.map((stop) => {
276
+ const stopFeature = this.stopsFeatureStore.get(stop.id);
277
+ if (stopFeature) {
278
+ this.stopsFeatureStore.delete(stopFeature);
279
+ }
280
+ });
281
+ }
282
+ getRoutes(isOverview = false) {
283
+ const stopsWithCoordinates = this.stopsStore.view
284
+ .all()
285
+ .filter((stop) => stop.coordinates);
286
+ if (stopsWithCoordinates.length < 2) {
287
+ this.routesFeatureStore.deleteMany(this.routesFeatureStore.all());
288
+ return;
289
+ }
290
+ const roundedCoordinates = stopsWithCoordinates.map((stop) => {
291
+ const roundedCoord = roundCoordTo(stop.coordinates, this.coordRoundedDecimals);
292
+ return roundedCoord;
293
+ });
294
+ const overviewDirectionsOptions = {
295
+ overview: true,
296
+ steps: false,
297
+ alternatives: false,
298
+ continue_straight: false
299
+ };
300
+ this.routesQueries$$.map((u) => u.unsubscribe());
301
+ const routeResponse = this.directionsService.route(roundedCoordinates, isOverview ? overviewDirectionsOptions : undefined);
302
+ if (routeResponse) {
303
+ routeResponse.map((res) => this.routesQueries$$.push(res.subscribe((directions) => {
304
+ this.routesFeatureStore.deleteMany(this.routesFeatureStore.all());
305
+ directions.map((direction) => addDirectionToRoutesFeatureStore(this.routesFeatureStore, direction, this.projection, direction === directions[0] ? true : false));
306
+ })));
307
+ }
308
+ }
309
+ addStopOverlay(stop) {
310
+ addStopToStopsFeatureStore(stop, this.stopsStore, this.stopsFeatureStore, this.projection, this.languageService);
311
+ }
312
+ static ɵfac = function DirectionsComponent_Factory(t) { return new (t || DirectionsComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.LanguageService), i0.ɵɵdirectiveInject(i2.DirectionsService), i0.ɵɵdirectiveInject(i3.SearchService), i0.ɵɵdirectiveInject(i4.QueryService)); };
313
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: DirectionsComponent, selectors: [["igo-directions"]], inputs: { contextUri: "contextUri", stopsStore: "stopsStore", stopsFeatureStore: "stopsFeatureStore", routesFeatureStore: "routesFeatureStore", stepFeatureStore: "stepFeatureStore", debounce: "debounce", length: "length", coordRoundedDecimals: "coordRoundedDecimals", zoomToActiveRoute$: "zoomToActiveRoute$" }, decls: 3, vars: 13, consts: [[3, "stepFeatureStore", "contextUri", "zoomToActiveRoute$", "routesFeatureStore", "stopsStore"], [3, "coordRoundedDecimals", "projection", "stopsFeatureStore", "stopsStore", "debounce", "length", "stopInputHasFocus"], [3, "stepFeatureStore", "routesFeatureStore"]], template: function DirectionsComponent_Template(rf, ctx) { if (rf & 1) {
314
+ i0.ɵɵelement(0, "igo-directions-buttons", 0);
315
+ i0.ɵɵelementStart(1, "igo-directions-inputs", 1);
316
+ i0.ɵɵlistener("stopInputHasFocus", function DirectionsComponent_Template_igo_directions_inputs_stopInputHasFocus_1_listener($event) { return ctx.onStopInputHasFocusChange($event); });
317
+ i0.ɵɵelementEnd();
318
+ i0.ɵɵelement(2, "igo-directions-results", 2);
319
+ } if (rf & 2) {
320
+ i0.ɵɵproperty("stepFeatureStore", ctx.stepFeatureStore)("contextUri", ctx.contextUri)("zoomToActiveRoute$", ctx.zoomToActiveRoute$)("routesFeatureStore", ctx.routesFeatureStore)("stopsStore", ctx.stopsStore);
321
+ i0.ɵɵadvance(1);
322
+ i0.ɵɵproperty("coordRoundedDecimals", ctx.coordRoundedDecimals)("projection", ctx.projection)("stopsFeatureStore", ctx.stopsFeatureStore)("stopsStore", ctx.stopsStore)("debounce", ctx.debounce)("length", ctx.length);
323
+ i0.ɵɵadvance(1);
324
+ i0.ɵɵproperty("stepFeatureStore", ctx.stepFeatureStore)("routesFeatureStore", ctx.routesFeatureStore);
325
+ } }, dependencies: [i5.DirectionsInputsComponent, i6.DirectionsButtonsComponent, i7.DirectionsResultsComponent] });
326
+ }
327
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DirectionsComponent, [{
328
+ type: Component,
329
+ args: [{ selector: 'igo-directions', template: "<igo-directions-buttons\r\n [stepFeatureStore]=\"stepFeatureStore\"\r\n [contextUri]=\"contextUri\"\r\n [zoomToActiveRoute$]=\"zoomToActiveRoute$\"\r\n [routesFeatureStore]=\"routesFeatureStore\"\r\n [stopsStore]=\"stopsStore\"\r\n></igo-directions-buttons>\r\n\r\n<igo-directions-inputs\r\n (stopInputHasFocus)=\"onStopInputHasFocusChange($event)\"\r\n [coordRoundedDecimals]=\"coordRoundedDecimals\"\r\n [projection]=\"projection\"\r\n [stopsFeatureStore]=\"stopsFeatureStore\"\r\n [stopsStore]=\"stopsStore\"\r\n [debounce]=\"debounce\"\r\n [length]=\"length\"\r\n></igo-directions-inputs>\r\n\r\n<igo-directions-results\r\n [stepFeatureStore]=\"stepFeatureStore\"\r\n [routesFeatureStore]=\"routesFeatureStore\"\r\n></igo-directions-results>\r\n" }]
330
+ }], function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.LanguageService }, { type: i2.DirectionsService }, { type: i3.SearchService }, { type: i4.QueryService }]; }, { contextUri: [{
331
+ type: Input
332
+ }], stopsStore: [{
333
+ type: Input
334
+ }], stopsFeatureStore: [{
335
+ type: Input
336
+ }], routesFeatureStore: [{
337
+ type: Input
338
+ }], stepFeatureStore: [{
339
+ type: Input
340
+ }], debounce: [{
341
+ type: Input
342
+ }], length: [{
343
+ type: Input
344
+ }], coordRoundedDecimals: [{
345
+ type: Input
346
+ }], zoomToActiveRoute$: [{
347
+ type: Input
348
+ }] }); })();
349
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9kaXJlY3Rpb25zL2RpcmVjdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZGlyZWN0aW9ucy9kaXJlY3Rpb25zLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRWxELE9BQU8sS0FBSyxXQUFXLE1BQU0scUJBQXFCLENBQUM7QUFDbkQsT0FBTyxLQUFLLGFBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssTUFBTSxNQUFNLFNBQVMsQ0FBQztBQVVsQyxPQUFPLEVBQUUsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQ0wsZ0NBQWdDLEVBQ2hDLDBCQUEwQixFQUMxQixjQUFjLEVBQ2Qsc0JBQXNCLEVBQ3RCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ25CLE1BQU0sMkJBQTJCLENBQUM7QUFFbkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFB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SUFDSCxDQUFDO0lBRU0sY0FBYyxDQUFDLElBQVU7UUFDOUIsMEJBQTBCLENBQ3hCLElBQUksRUFDSixJQUFJLENBQUMsVUFBVSxFQUNmLElBQUksQ0FBQyxpQkFBaUIsRUFDdEIsSUFBSSxDQUFDLFVBQVUsRUFDZixJQUFJLENBQUMsZUFBZSxDQUNyQixDQUFDO0lBQ0osQ0FBQzs2RUE1WFUsbUJBQW1COzZEQUFuQixtQkFBbUI7WUN4RGhDLDRDQU0wQjtZQUUxQixnREFRQztZQVBDLDZJQUFxQixxQ0FBaUMsSUFBQztZQU94RCxpQkFBd0I7WUFFekIsNENBRzBCOztZQXBCeEIsdURBQXFDLDhCQUFBLDhDQUFBLDhDQUFBLDhCQUFBO1lBU3JDLGVBQTZDO1lBQTdDLCtEQUE2Qyw4QkFBQSw0Q0FBQSw4QkFBQSwwQkFBQSxzQkFBQTtZQVM3QyxlQUFxQztZQUFyQyx1REFBcUMsOENBQUE7Ozt1RkRxQzFCLG1CQUFtQjtjQUwvQixTQUFTOzJCQUNFLGdCQUFnQjt5TEF3QmpCLFVBQVU7a0JBQWxCLEtBQUs7WUFDRyxVQUFVO2tCQUFsQixLQUFLO1lBQ0csaUJBQWlCO2tCQUF6QixLQUFLO1lBQ0csa0JBQWtCO2tCQUExQixLQUFLO1lBQ0csZ0JBQWdCO2tCQUF4QixLQUFLO1lBQ0csUUFBUTtrQkFBaEIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNHLG9CQUFvQjtrQkFBNUIsS0FBSztZQUNHLGtCQUFrQjtrQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IExhbmd1YWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5pbXBvcnQgeyBFbnRpdHlTdG9yZVdhdGNoZXIgfSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0ICogYXMgb2xDb25kaXRpb24gZnJvbSAnb2wvZXZlbnRzL2NvbmRpdGlvbic7XHJcbmltcG9ydCAqIGFzIG9sSW50ZXJhY3Rpb24gZnJvbSAnb2wvaW50ZXJhY3Rpb24nO1xyXG5pbXBvcnQgKiBhcyBvbFByb2ogZnJvbSAnb2wvcHJvaic7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZUV2ZW50IH0gZnJvbSAnb2wvaW50ZXJhY3Rpb24vVHJhbnNsYXRlJztcclxuaW1wb3J0IENvbGxlY3Rpb24gZnJvbSAnb2wvQ29sbGVjdGlvbic7XHJcbmltcG9ydCB7IFNlbGVjdEV2ZW50IH0gZnJvbSAnb2wvaW50ZXJhY3Rpb24vU2VsZWN0JztcclxuXHJcbmltcG9ydCB7XHJcbiAgRGlyZWN0aW9uT3B0aW9ucyxcclxuICBGZWF0dXJlV2l0aFN0b3BQcm9wZXJ0aWVzLFxyXG4gIFN0b3BcclxufSBmcm9tICcuL3NoYXJlZC9kaXJlY3Rpb25zLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQge1xyXG4gIGFkZERpcmVjdGlvblRvUm91dGVzRmVhdHVyZVN0b3JlLFxyXG4gIGFkZFN0b3BUb1N0b3BzRmVhdHVyZVN0b3JlLFxyXG4gIGFkZFN0b3BUb1N0b3JlLFxyXG4gIGluaXRSb3V0ZXNGZWF0dXJlU3RvcmUsXHJcbiAgaW5pdFN0ZXBGZWF0dXJlU3RvcmUsXHJcbiAgaW5pdFN0b3BzRmVhdHVyZVN0b3JlLFxyXG4gIHVwZGF0ZVN0b3JlU29ydGluZ1xyXG59IGZyb20gJy4vc2hhcmVkL2RpcmVjdGlvbnMudXRpbHMnO1xyXG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnLi4vZmVhdHVyZS9zaGFyZWQvZmVhdHVyZS5pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgRGlyZWN0aW9uc1NlcnZpY2UgfSBmcm9tICcuL3NoYXJlZC9kaXJlY3Rpb25zLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEaXJlY3Rpb25UeXBlLCBQcm9wb3NhbFR5cGUgfSBmcm9tICcuL3NoYXJlZC9kaXJlY3Rpb25zLmVudW0nO1xyXG5pbXBvcnQgeyByb3VuZENvb3JkVG8sIHN0cmluZ1RvTG9uTGF0IH0gZnJvbSAnLi4vbWFwJztcclxuaW1wb3J0IHsgU2VhcmNoU2VydmljZSB9IGZyb20gJy4uL3NlYXJjaC9zaGFyZWQvc2VhcmNoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaGFuZ2VVdGlscywgT2JqZWN0VXRpbHMgfSBmcm9tICdAaWdvMi91dGlscyc7XHJcbmltcG9ydCB7XHJcbiAgUm91dGVzRmVhdHVyZVN0b3JlLFxyXG4gIFN0ZXBGZWF0dXJlU3RvcmUsXHJcbiAgU3RvcHNGZWF0dXJlU3RvcmUsXHJcbiAgU3RvcHNTdG9yZVxyXG59IGZyb20gJy4vc2hhcmVkL3N0b3JlJztcclxuaW1wb3J0IHsgRmVhdHVyZVN0b3JlTG9hZGluZ1N0cmF0ZWd5IH0gZnJvbSAnLi4vZmVhdHVyZS9zaGFyZWQvc3RyYXRlZ2llcy9sb2FkaW5nJztcclxuaW1wb3J0IHsgUmVzZWFyY2gsIFNlYXJjaFJlc3VsdCB9IGZyb20gJy4uL3NlYXJjaC9zaGFyZWQvc2VhcmNoLmludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBRdWVyeVNlcnZpY2UgfSBmcm9tICcuLi9xdWVyeS9zaGFyZWQvcXVlcnkuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1kaXJlY3Rpb25zJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGlyZWN0aW9ucy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZGlyZWN0aW9ucy5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaXJlY3Rpb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHByaXZhdGUgd2F0Y2hlcjogRW50aXR5U3RvcmVXYXRjaGVyPFN0b3A+O1xyXG5cclxuICBwdWJsaWMgcHJvamVjdGlvbjogc3RyaW5nID0gJ0VQU0c6NDMyNic7XHJcblxyXG4gIHByaXZhdGUgem9vbVJvdXRlJCQ6IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIHN0b3JlRW1wdHkkJDogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgc3RvcmVDaGFuZ2UkJDogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgcm91dGVzUXVlcmllcyQkOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBwcml2YXRlIHNlbGVjdFN0b3BJbnRlcmFjdGlvbjogb2xJbnRlcmFjdGlvbi5TZWxlY3Q7XHJcbiAgcHJpdmF0ZSB0cmFuc2xhdGVTdG9wOiBvbEludGVyYWN0aW9uLlRyYW5zbGF0ZTtcclxuICBwcml2YXRlIHNlbGVjdGVkUm91dGU7XHJcbiAgcHJpdmF0ZSBmb2N1c09uU3RvcDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgaXNUcmFuc2xhdGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgcHJldmlvdXNTdG9wczogU3RvcFtdID0gW107XHJcblxyXG4gIHByaXZhdGUgc2VhcmNocyQkOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKSBjb250ZXh0VXJpOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc3RvcHNTdG9yZTogU3RvcHNTdG9yZTtcclxuICBASW5wdXQoKSBzdG9wc0ZlYXR1cmVTdG9yZTogU3RvcHNGZWF0dXJlU3RvcmU7XHJcbiAgQElucHV0KCkgcm91dGVzRmVhdHVyZVN0b3JlOiBSb3V0ZXNGZWF0dXJlU3RvcmU7XHJcbiAgQElucHV0KCkgc3RlcEZlYXR1cmVTdG9yZTogU3RlcEZlYXR1cmVTdG9yZTtcclxuICBASW5wdXQoKSBkZWJvdW5jZTogbnVtYmVyID0gMjAwO1xyXG4gIEBJbnB1dCgpIGxlbmd0aDogbnVtYmVyID0gMjtcclxuICBASW5wdXQoKSBjb29yZFJvdW5kZWREZWNpbWFsczogbnVtYmVyID0gNjtcclxuICBASW5wdXQoKSB6b29tVG9BY3RpdmVSb3V0ZSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlyZWN0aW9uc1NlcnZpY2U6IERpcmVjdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBzZWFyY2hTZXJ2aWNlOiBTZWFyY2hTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBxdWVyeVNlcnZpY2U6IFF1ZXJ5U2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnF1ZXJ5U2VydmljZS5xdWVyeUVuYWJsZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuaW5pdEVudGl0eVN0b3JlcygpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGluaXRTdG9wc0ZlYXR1cmVTdG9yZSh0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLCB0aGlzLmxhbmd1YWdlU2VydmljZSk7XHJcbiAgICAgIGluaXRSb3V0ZXNGZWF0dXJlU3RvcmUodGhpcy5yb3V0ZXNGZWF0dXJlU3RvcmUsIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlKTtcclxuICAgICAgaW5pdFN0ZXBGZWF0dXJlU3RvcmUodGhpcy5zdGVwRmVhdHVyZVN0b3JlKTtcclxuICAgICAgdGhpcy5pbml0T2xJbnRlcmFjdGlvbigpO1xyXG4gICAgfSwgMSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMucXVlcnlTZXJ2aWNlLnF1ZXJ5RW5hYmxlZCA9IHRydWU7XHJcbiAgICB0aGlzLnN0b3JlRW1wdHkkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5zdG9yZUNoYW5nZSQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLnJvdXRlc1F1ZXJpZXMkJC5tYXAoKHUpID0+IHUudW5zdWJzY3JpYmUoKSk7XHJcbiAgICB0aGlzLnpvb21Sb3V0ZSQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLmZyZWV6ZVN0b3JlcygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmcmVlemVTdG9yZXMoKSB7XHJcbiAgICB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5vbC5yZW1vdmVJbnRlcmFjdGlvbihcclxuICAgICAgdGhpcy5zZWxlY3RTdG9wSW50ZXJhY3Rpb25cclxuICAgICk7XHJcbiAgICB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5vbC5yZW1vdmVJbnRlcmFjdGlvbih0aGlzLnRyYW5zbGF0ZVN0b3ApO1xyXG4gICAgdGhpcy5yb3V0ZXNGZWF0dXJlU3RvcmUubGF5ZXIubWFwLm9sLnJlbW92ZUludGVyYWN0aW9uKHRoaXMuc2VsZWN0ZWRSb3V0ZSk7XHJcbiAgICB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmRlYWN0aXZhdGVTdHJhdGVneU9mVHlwZShcclxuICAgICAgRmVhdHVyZVN0b3JlTG9hZGluZ1N0cmF0ZWd5XHJcbiAgICApO1xyXG4gICAgdGhpcy5yb3V0ZXNGZWF0dXJlU3RvcmUuZGVhY3RpdmF0ZVN0cmF0ZWd5T2ZUeXBlKFxyXG4gICAgICBGZWF0dXJlU3RvcmVMb2FkaW5nU3RyYXRlZ3lcclxuICAgICk7XHJcbiAgICB0aGlzLnN0ZXBGZWF0dXJlU3RvcmUuZGVhY3RpdmF0ZVN0cmF0ZWd5T2ZUeXBlKEZlYXR1cmVTdG9yZUxvYWRpbmdTdHJhdGVneSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRFbnRpdHlTdG9yZXMoKSB7XHJcbiAgICB0aGlzLndhdGNoZXIgPSBuZXcgRW50aXR5U3RvcmVXYXRjaGVyKHRoaXMuc3RvcHNTdG9yZSwgdGhpcy5jZFJlZik7XHJcbiAgICB0aGlzLm1vbml0b3JFbXB0eUVudGl0eVN0b3JlKCk7XHJcbiAgICB0aGlzLm1vbml0b3JFbnRpdHlTdG9yZUNoYW5nZSgpO1xyXG4gICAgdGhpcy5tb25pdG9yQWN0aXZlUm91dGVab29tKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG1vbml0b3JBY3RpdmVSb3V0ZVpvb20oKSB7XHJcbiAgICB0aGlzLnpvb21Sb3V0ZSQkID0gdGhpcy56b29tVG9BY3RpdmVSb3V0ZSQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgaWYgKHRoaXMucm91dGVzRmVhdHVyZVN0b3JlLmNvdW50ID49IDEpIHtcclxuICAgICAgICBjb25zdCBhY3RpdmVSb3V0ZSA9IHRoaXMucm91dGVzRmVhdHVyZVN0b3JlXHJcbiAgICAgICAgICAuYWxsKClcclxuICAgICAgICAgIC5maW5kKChyb3V0ZSkgPT4gcm91dGUucHJvcGVydGllcy5hY3RpdmUpO1xyXG5cclxuICAgICAgICBpZiAoYWN0aXZlUm91dGUpIHtcclxuICAgICAgICAgIGFjdGl2ZVJvdXRlLm9sLmdldEdlb21ldHJ5KCk7XHJcbiAgICAgICAgICBjb25zdCByb3V0ZUV4dGVudCA9IGFjdGl2ZVJvdXRlLm9sLmdldEdlb21ldHJ5KCkuZ2V0RXh0ZW50KCk7XHJcbiAgICAgICAgICB0aGlzLnJvdXRlc0ZlYXR1cmVTdG9yZS5sYXllci5tYXAudmlld0NvbnRyb2xsZXIuem9vbVRvRXh0ZW50KFxyXG4gICAgICAgICAgICByb3V0ZUV4dGVudCBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0T2xJbnRlcmFjdGlvbigpIHtcclxuICAgIHRoaXMuc2VsZWN0U3RvcEludGVyYWN0aW9uID0gbmV3IG9sSW50ZXJhY3Rpb24uU2VsZWN0KHtcclxuICAgICAgbGF5ZXJzOiBbdGhpcy5zdG9wc0ZlYXR1cmVTdG9yZS5sYXllci5vbF0sXHJcbiAgICAgIGhpdFRvbGVyYW5jZTogNyxcclxuICAgICAgY29uZGl0aW9uOiAoZXZlbnQpID0+IHtcclxuICAgICAgICByZXR1cm4gZXZlbnQudHlwZSA9PT0gJ3BvaW50ZXJtb3ZlJyAmJiAhZXZlbnQuZHJhZ2dpbmc7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMudHJhbnNsYXRlU3RvcCA9IG5ldyBvbEludGVyYWN0aW9uLlRyYW5zbGF0ZSh7XHJcbiAgICAgIGZlYXR1cmVzOiB0aGlzLnNlbGVjdFN0b3BJbnRlcmFjdGlvbi5nZXRGZWF0dXJlcygpXHJcbiAgICB9KTtcclxuICAgIHRoaXMudHJhbnNsYXRlU3RvcC5vbigndHJhbnNsYXRpbmcnLCAoZXZ0OiBUcmFuc2xhdGVFdmVudCkgPT4ge1xyXG4gICAgICB0aGlzLmlzVHJhbnNsYXRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLmV4ZWN1dGVTdG9wVHJhbnNsYXRpb24oZXZ0LmZlYXR1cmVzKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy50cmFuc2xhdGVTdG9wLm9uKCd0cmFuc2xhdGVlbmQnLCAoZXZ0OiBUcmFuc2xhdGVFdmVudCkgPT4ge1xyXG4gICAgICB0aGlzLmlzVHJhbnNsYXRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5leGVjdXRlU3RvcFRyYW5zbGF0aW9uKGV2dC5mZWF0dXJlcyk7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkUm91dGUgPSBuZXcgb2xJbnRlcmFjdGlvbi5TZWxlY3Qoe1xyXG4gICAgICBsYXllcnM6IFt0aGlzLnJvdXRlc0ZlYXR1cmVTdG9yZS5sYXllci5vbF0sXHJcbiAgICAgIGNvbmRpdGlvbjogb2xDb25kaXRpb24uY2xpY2ssXHJcbiAgICAgIGhpdFRvbGVyYW5jZTogNyxcclxuICAgICAgZmlsdGVyOiAoZmVhdHVyZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICBmZWF0dXJlLmdldCgndHlwZScpID09PSBEaXJlY3Rpb25UeXBlLlJvdXRlICYmXHJcbiAgICAgICAgICBmZWF0dXJlLmdldCgnYWN0aXZlJykgJiZcclxuICAgICAgICAgICF0aGlzLmlzVHJhbnNsYXRpbmdcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMuc2VsZWN0ZWRSb3V0ZS5vbignc2VsZWN0JywgKGV2dDogU2VsZWN0RXZlbnQpID0+IHtcclxuICAgICAgaWYgKHRoaXMuZm9jdXNPblN0b3AgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0Q29vcmRpbmF0ZXMgPSByb3VuZENvb3JkVG8oXHJcbiAgICAgICAgICBvbFByb2oudHJhbnNmb3JtKFxyXG4gICAgICAgICAgICAoZXZ0IGFzIGFueSkubWFwQnJvd3NlckV2ZW50LmNvb3JkaW5hdGUsXHJcbiAgICAgICAgICAgIHRoaXMucm91dGVzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5wcm9qZWN0aW9uLFxyXG4gICAgICAgICAgICB0aGlzLnByb2plY3Rpb25cclxuICAgICAgICAgICkgYXMgW251bWJlciwgbnVtYmVyXSxcclxuICAgICAgICAgIHRoaXMuY29vcmRSb3VuZGVkRGVjaW1hbHNcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IGFkZGVkU3RvcCA9IGFkZFN0b3BUb1N0b3JlKHRoaXMuc3RvcHNTdG9yZSk7XHJcbiAgICAgICAgYWRkZWRTdG9wLnRleHQgPSBzZWxlY3RDb29yZGluYXRlcy5qb2luKCcsJyk7XHJcbiAgICAgICAgYWRkZWRTdG9wLmNvb3JkaW5hdGVzID0gW3NlbGVjdENvb3JkaW5hdGVzWzBdLCBzZWxlY3RDb29yZGluYXRlc1sxXV07XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuc3RvcHNGZWF0dXJlU3RvcmUubGF5ZXIubWFwLm9sLmFkZEludGVyYWN0aW9uKFxyXG4gICAgICB0aGlzLnNlbGVjdFN0b3BJbnRlcmFjdGlvblxyXG4gICAgKTtcclxuICAgIHRoaXMuc3RvcHNGZWF0dXJlU3RvcmUubGF5ZXIubWFwLm9sLmFkZEludGVyYWN0aW9uKHRoaXMudHJhbnNsYXRlU3RvcCk7XHJcbiAgICB0aGlzLnJvdXRlc0ZlYXR1cmVTdG9yZS5sYXllci5tYXAub2wuYWRkSW50ZXJhY3Rpb24odGhpcy5zZWxlY3RlZFJvdXRlKTtcclxuICB9XHJcblxyXG4gIG9uU3RvcElucHV0SGFzRm9jdXNDaGFuZ2Uoc3RvcElucHV0SGFzRm9jdXM6IGJvb2xlYW4pIHtcclxuICAgIHN0b3BJbnB1dEhhc0ZvY3VzXHJcbiAgICAgID8gdGhpcy5yb3V0ZXNGZWF0dXJlU3RvcmUubGF5ZXIubWFwLm9sLnJlbW92ZUludGVyYWN0aW9uKFxyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZFJvdXRlXHJcbiAgICAgICAgKVxyXG4gICAgICA6IHRoaXMucm91dGVzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5vbC5hZGRJbnRlcmFjdGlvbih0aGlzLnNlbGVjdGVkUm91dGUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBleGVjdXRlU3RvcFRyYW5zbGF0aW9uKGZlYXR1cmVzOiBDb2xsZWN0aW9uPGFueT4pIHtcclxuICAgIGlmIChmZWF0dXJlcy5nZXRMZW5ndGgoKSA9PT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBmaXJzdEZlYXR1cmUgPSBmZWF0dXJlcy5nZXRBcnJheSgpWzBdO1xyXG4gICAgY29uc3QgdHJhbnNsYXRlZFN0b3BJZCA9IGZpcnN0RmVhdHVyZS5nZXRJZCgpO1xyXG5cclxuICAgIGNvbnN0IHRyYW5zbGF0aW9uQ29vcmRpbmF0ZXMgPSBvbFByb2oudHJhbnNmb3JtKFxyXG4gICAgICBmaXJzdEZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5nZXRDb29yZGluYXRlcygpLFxyXG4gICAgICB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmxheWVyLm1hcC5wcm9qZWN0aW9uLFxyXG4gICAgICB0aGlzLnByb2plY3Rpb25cclxuICAgICk7XHJcbiAgICBjb25zdCB0cmFuc2xhdGVkU3RvcCA9IHRoaXMuc3RvcHNTdG9yZS5nZXQodHJhbnNsYXRlZFN0b3BJZCk7XHJcbiAgICBjb25zdCByb3VuZGVkQ29vcmQgPSByb3VuZENvb3JkVG8oXHJcbiAgICAgIHRyYW5zbGF0aW9uQ29vcmRpbmF0ZXMgYXMgW251bWJlciwgbnVtYmVyXSxcclxuICAgICAgdGhpcy5jb29yZFJvdW5kZWREZWNpbWFsc1xyXG4gICAgKTtcclxuICAgIHRyYW5zbGF0ZWRTdG9wLmNvb3JkaW5hdGVzID0gcm91bmRlZENvb3JkO1xyXG4gICAgdHJhbnNsYXRlZFN0b3AudGV4dCA9IHJvdW5kZWRDb29yZC5qb2luKCcsJyk7XHJcbiAgICB0aGlzLnN0b3BzU3RvcmUudXBkYXRlKHRyYW5zbGF0ZWRTdG9wKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbW9uaXRvckVtcHR5RW50aXR5U3RvcmUoKSB7XHJcbiAgICAvLyBXYXRjaCBpZiB0aGUgc3RvcmUgaXMgZW1wdHkgdG8gcmVzZXQgaXRcclxuICAgIHRoaXMuc3RvcmVFbXB0eSQkID0gdGhpcy5zdG9wc1N0b3JlLmNvdW50JFxyXG4gICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxyXG4gICAgICAuc3Vic2NyaWJlKChjb3VudCkgPT4ge1xyXG4gICAgICAgIGlmIChjb3VudCA8IDIpIHtcclxuICAgICAgICAgIGFkZFN0b3BUb1N0b3JlKHRoaXMuc3RvcHNTdG9yZSk7XHJcbiAgICAgICAgICBpZiAodGhpcy5zdG9wc1N0b3JlLmNvdW50ID09PSAyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcHNTdG9yZS5zdG9yZUluaXRpYWxpemVkJC5uZXh0KHRydWUpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnN0b3BzU3RvcmUuc3RvcmVJbml0aWFsaXplZCQubmV4dChmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucm91dGVzUXVlcmllcyQkLm1hcCgodSkgPT4gdS51bnN1YnNjcmliZSgpKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG1vbml0b3JFbnRpdHlTdG9yZUNoYW5nZSgpIHtcclxuICAgIHRoaXMuc3RvcmVDaGFuZ2UkJCA9IHRoaXMuc3RvcHNTdG9yZS5lbnRpdGllcyRcclxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKHRoaXMuZGVib3VuY2UpKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdG9wczogU3RvcFtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVTdG9wRGlmZihzdG9wcyk7XHJcbiAgICAgICAgdXBkYXRlU3RvcmVTb3J0aW5nKHRoaXMuc3RvcHNTdG9yZSk7XHJcbiAgICAgICAgdGhpcy5oYW5kbGVTdG9wc0ZlYXR1cmUoKTtcclxuICAgICAgICB0aGlzLmdldFJvdXRlcyh0aGlzLmlzVHJhbnNsYXRpbmcpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGNhbmNlbFNlYXJjaCgpIHtcclxuICAgIHRoaXMuc2VhcmNocyQkLm1hcCgocykgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlU3RvcERpZmYoc3RvcHM6IFN0b3BbXSkge1xyXG4gICAgY29uc3Qgc2ltcGxpZmllZFN0b3BzID0gc3RvcHMubWFwKChzdG9wOiBTdG9wKSA9PiB7XHJcbiAgICAgIHJldHVybiBPYmplY3RVdGlscy5yZW1vdmVVbmRlZmluZWQoe1xyXG4gICAgICAgIC4uLnsgaWQ6IHN0b3AuaWQsIHRleHQ6IHN0b3AudGV4dCwgY29vcmRpbmF0ZXM6IHN0b3AuY29vcmRpbmF0ZXMgfVxyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgY29uc3QgZGlmZiA9IENoYW5nZVV0aWxzLmZpbmRDaGFuZ2VzKHRoaXMucHJldmlvdXNTdG9wcywgc2ltcGxpZmllZFN0b3BzLCBbXHJcbiAgICAgICdjb29yZGluYXRlcydcclxuICAgIF0pO1xyXG4gICAgY29uc3Qgc3RvcElkVG9Qcm9jZXNzID0gZGlmZi5hZGRlZC5jb25jYXQoZGlmZi5tb2RpZmllZCk7XHJcbiAgICBpZiAoc3RvcElkVG9Qcm9jZXNzKSB7XHJcbiAgICAgIHN0b3BJZFRvUHJvY2Vzcy5tYXAoKGNoYW5nZSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNoYW5nZWRTdG9wID0gY2hhbmdlLm5ld1ZhbHVlIGFzIFN0b3A7XHJcbiAgICAgICAgaWYgKGNoYW5nZWRTdG9wKSB7XHJcbiAgICAgICAgICBjb25zdCBzdG9wOiBTdG9wID0gdGhpcy5zdG9wc1N0b3JlLmdldChjaGFuZ2VkU3RvcC5pZCk7XHJcbiAgICAgICAgICBjb25zdCB0ZXJtID0gc3RvcC50ZXh0O1xyXG4gICAgICAgICAgaWYgKCF0ZXJtIHx8IHRlcm0ubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gc3RyaW5nVG9Mb25MYXQoXHJcbiAgICAgICAgICAgIHRlcm0sXHJcbiAgICAgICAgICAgIHRoaXMuc3RvcHNGZWF0dXJlU3RvcmUubGF5ZXIubWFwLnByb2plY3Rpb25cclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBsZXQgcmVzZWFyY2hlczogUmVzZWFyY2hbXTtcclxuICAgICAgICAgIGxldCBpc0Nvb3JkID0gZmFsc2U7XHJcbiAgICAgICAgICBpZiAocmVzcG9uc2UubG9uTGF0KSB7XHJcbiAgICAgICAgICAgIGlzQ29vcmQgPSB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmVzZWFyY2hlcyA9IHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2godGVybSwge1xyXG4gICAgICAgICAgICBzZWFyY2hUeXBlOiAnRmVhdHVyZSdcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgdGhpcy5jYW5jZWxTZWFyY2goKTtcclxuICAgICAgICAgIGNvbnN0IHJlcXVlc3RzJCA9IHJlc2VhcmNoZXMubWFwKChyZXMpID0+XHJcbiAgICAgICAgICAgIHJlcy5yZXF1ZXN0LnBpcGUoXHJcbiAgICAgICAgICAgICAgbWFwKChyZXN1bHRzOiBTZWFyY2hSZXN1bHRbXSkgPT5cclxuICAgICAgICAgICAgICAgIHJlc3VsdHMuZmlsdGVyKChyKSA9PlxyXG4gICAgICAgICAgICAgICAgICBpc0Nvb3JkXHJcbiAgICAgICAgICAgICAgICAgICAgPyByLmRhdGEuZ2VvbWV0cnkudHlwZSA9PT0gJ1BvaW50JyAmJiByLmRhdGEuZ2VvbWV0cnlcclxuICAgICAgICAgICAgICAgICAgICA6IHIuZGF0YS5nZW9tZXRyeVxyXG4gICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIHRoaXMuc2VhcmNocyQkID0gcmVxdWVzdHMkLm1hcCgocmVxdWVzdCkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gcmVxdWVzdFxyXG4gICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKChyZXN1bHRzOiBTZWFyY2hSZXN1bHRbXSkgPT5cclxuICAgICAgICAgICAgICAgICAgcmVzdWx0cy5maWx0ZXIoKHIpID0+XHJcbiAgICAgICAgICAgICAgICAgICAgaXNDb29yZFxyXG4gICAgICAgICAgICAgICAgICAgICAgPyByLmRhdGEuZ2VvbWV0cnkudHlwZSA9PT0gJ1BvaW50JyAmJiByLmRhdGEuZ2VvbWV0cnlcclxuICAgICAgICAgICAgICAgICAgICAgIDogci5kYXRhLmdlb21ldHJ5XHJcbiAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzOiBTZWFyY2hSZXN1bHRbXSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHNvdXJjZSA9IHJlc1swXS5zb3VyY2U7XHJcbiAgICAgICAgICAgICAgICAgIGNvbnN0IG1ldGEgPSByZXNbMF0ubWV0YTtcclxuICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0cyA9IHJlcy5tYXAoKHIpID0+IHIuZGF0YSk7XHJcbiAgICAgICAgICAgICAgICAgIGlmICghc3RvcC5zZWFyY2hQcm9wb3NhbHMpIHtcclxuICAgICAgICAgICAgICAgICAgICBzdG9wLnNlYXJjaFByb3Bvc2FscyA9IFtdO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIHN0b3Auc2VhcmNoUHJvcG9zYWxzID0gc3RvcC5zZWFyY2hQcm9wb3NhbHMuZmlsdGVyKFxyXG4gICAgICAgICAgICAgICAgICAgIChzcCkgPT5cclxuICAgICAgICAgICAgICAgICAgICAgIHNwLnR5cGUgPT09XHJcbiAgICAgICAgICAgICAgICAgICAgICAoaXNDb29yZCA/IFByb3Bvc2FsVHlwZS5Db29yZCA6IFByb3Bvc2FsVHlwZS5UZXh0KVxyXG4gICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICBsZXQgc3RvcmVkU291cmNlID0gc3RvcC5zZWFyY2hQcm9wb3NhbHMuZmluZChcclxuICAgICAgICAgICAgICAgICAgICAoc3ApID0+IHNwLnNvdXJjZSA9PT0gc291cmNlXHJcbiAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgIGlmIChzdG9yZWRTb3VyY2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBzdG9yZWRTb3VyY2UucmVzdWx0cyA9IHJlc3VsdHM7XHJcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgc3RvcC5zZWFyY2hQcm9wb3NhbHMucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlOiBpc0Nvb3JkID8gUHJvcG9zYWxUeXBlLkNvb3JkIDogUHJvcG9zYWxUeXBlLlRleHQsXHJcbiAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICBtZXRhLFxyXG4gICAgICAgICAgICAgICAgICAgICAgcmVzdWx0c1xyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnByZXZpb3VzU3RvcHMgPSBzaW1wbGlmaWVkU3RvcHM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZVN0b3BzRmVhdHVyZSgpIHtcclxuICAgIGNvbnN0IHN0b3BzID0gdGhpcy5zdG9wc1N0b3JlLmFsbCgpO1xyXG4gICAgY29uc3Qgc3RvcHNXaXRoQ29vcmRpbmF0ZXMgPSBzdG9wcy5maWx0ZXIoKHN0b3ApID0+IHN0b3AuY29vcmRpbmF0ZXMpO1xyXG4gICAgc3RvcHNXaXRoQ29vcmRpbmF0ZXMubWFwKChzdG9wKSA9PiB0aGlzLmFkZFN0b3BPdmVybGF5KHN0b3ApKTtcclxuICAgIHRoaXMuc3RvcHNGZWF0dXJlU3RvcmVcclxuICAgICAgLmFsbCgpXHJcbiAgICAgIC5tYXAoKHN0b3BGZWF0dXJlOiBGZWF0dXJlPEZlYXR1cmVXaXRoU3RvcFByb3BlcnRpZXM+KSA9PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnN0b3BzU3RvcmUuZ2V0KHN0b3BGZWF0dXJlLnByb3BlcnRpZXMuaWQpKSB7XHJcbiAgICAgICAgICB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmRlbGV0ZShzdG9wRmVhdHVyZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIGNvbnN0IHN0b3BzV2l0aG91dENvb3JkaW5hdGVzID0gc3RvcHMuZmlsdGVyKChzdG9wKSA9PiAhc3RvcC5jb29yZGluYXRlcyk7XHJcbiAgICBzdG9wc1dpdGhvdXRDb29yZGluYXRlcy5tYXAoKHN0b3ApID0+IHtcclxuICAgICAgY29uc3Qgc3RvcEZlYXR1cmUgPSB0aGlzLnN0b3BzRmVhdHVyZVN0b3JlLmdldChzdG9wLmlkKTtcclxuICAgICAgaWYgKHN0b3BGZWF0dXJlKSB7XHJcbiAgICAgICAgdGhpcy5zdG9wc0ZlYXR1cmVTdG9yZS5kZWxldGUoc3RvcEZlYXR1cmUpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Um91dGVzKGlzT3ZlcnZpZXc6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG4gICAgY29uc3Qgc3RvcHNXaXRoQ29vcmRpbmF0ZXMgPSB0aGlzLnN0b3BzU3RvcmUudmlld1xyXG4gICAgICAuYWxsKClcclxuICAgICAgLmZpbHRlcigoc3RvcCkgPT4gc3RvcC5jb29yZGluYXRlcyk7XHJcbiAgICBpZiAoc3RvcHNXaXRoQ29vcmRpbmF0ZXMubGVuZ3RoIDwgMikge1xyXG4gICAgICB0aGlzLnJvdXRlc0ZlYXR1cmVTdG9yZS5kZWxldGVNYW55KHRoaXMucm91dGVzRmVhdHVyZVN0b3JlLmFsbCgpKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHJvdW5kZWRDb29yZGluYXRlcyA9IHN0b3BzV2l0aENvb3JkaW5hdGVzLm1hcCgoc3RvcCkgPT4ge1xyXG4gICAgICBjb25zdCByb3VuZGVkQ29vcmQgPSByb3VuZENvb3JkVG8oXHJcbiAgICAgICAgc3RvcC5jb29yZGluYXRlcyxcclxuICAgICAgICB0aGlzLmNvb3JkUm91bmRlZERlY2ltYWxzXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiByb3VuZGVkQ29vcmQ7XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IG92ZXJ2aWV3RGlyZWN0aW9uc09wdGlvbnM6IERpcmVjdGlvbk9wdGlvbnMgPSB7XHJcbiAgICAgIG92ZXJ2aWV3OiB0cnVlLFxyXG4gICAgICBzdGVwczogZmFsc2UsXHJcbiAgICAgIGFsdGVybmF0aXZlczogZmFsc2UsXHJcbiAgICAgIGNvbnRpbnVlX3N0cmFpZ2h0OiBmYWxzZVxyXG4gICAgfTtcclxuICAgIHRoaXMucm91dGVzUXVlcmllcyQkLm1hcCgodSkgPT4gdS51bnN1YnNjcmliZSgpKTtcclxuICAgIGNvbnN0IHJvdXRlUmVzcG9uc2UgPSB0aGlzLmRpcmVjdGlvbnNTZXJ2aWNlLnJvdXRlKFxyXG4gICAgICByb3VuZGVkQ29vcmRpbmF0ZXMsXHJcbiAgICAgIGlzT3ZlcnZpZXcgPyBvdmVydmlld0RpcmVjdGlvbnNPcHRpb25zIDogdW5kZWZpbmVkXHJcbiAgICApO1xyXG4gICAgaWYgKHJvdXRlUmVzcG9uc2UpIHtcclxuICAgICAgcm91dGVSZXNwb25zZS5tYXAoKHJlcykgPT5cclxuICAgICAgICB0aGlzLnJvdXRlc1F1ZXJpZXMkJC5wdXNoKFxyXG4gICAgICAgICAgcmVzLnN1YnNjcmliZSgoZGlyZWN0aW9ucykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnJvdXRlc0ZlYXR1cmVTdG9yZS5kZWxldGVNYW55KHRoaXMucm91dGVzRmVhdHVyZVN0b3JlLmFsbCgpKTtcclxuICAgICAgICAgICAgZGlyZWN0aW9ucy5tYXAoKGRpcmVjdGlvbikgPT5cclxuICAgICAgICAgICAgICBhZGREaXJlY3Rpb25Ub1JvdXRlc0ZlYXR1cmVTdG9yZShcclxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVzRmVhdHVyZVN0b3JlLFxyXG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uLFxyXG4gICAgICAgICAgICAgICAgdGhpcy5wcm9qZWN0aW9uLFxyXG4gICAgICAgICAgICAgICAgZGlyZWN0aW9uID09PSBkaXJlY3Rpb25zWzBdID8gdHJ1ZSA6IGZhbHNlXHJcbiAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkU3RvcE92ZXJsYXkoc3RvcDogU3RvcCkge1xyXG4gICAgYWRkU3RvcFRvU3RvcHNGZWF0dXJlU3RvcmUoXHJcbiAgICAgIHN0b3AsXHJcbiAgICAgIHRoaXMuc3RvcHNTdG9yZSxcclxuICAgICAgdGhpcy5zdG9wc0ZlYXR1cmVTdG9yZSxcclxuICAgICAgdGhpcy5wcm9qZWN0aW9uLFxyXG4gICAgICB0aGlzLmxhbmd1YWdlU2VydmljZVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIiwiPGlnby1kaXJlY3Rpb25zLWJ1dHRvbnNcclxuICBbc3RlcEZlYXR1cmVTdG9yZV09XCJzdGVwRmVhdHVyZVN0b3JlXCJcclxuICBbY29udGV4dFVyaV09XCJjb250ZXh0VXJpXCJcclxuICBbem9vbVRvQWN0aXZlUm91dGUkXT1cInpvb21Ub0FjdGl2ZVJvdXRlJFwiXHJcbiAgW3JvdXRlc0ZlYXR1cmVTdG9yZV09XCJyb3V0ZXNGZWF0dXJlU3RvcmVcIlxyXG4gIFtzdG9wc1N0b3JlXT1cInN0b3BzU3RvcmVcIlxyXG4+PC9pZ28tZGlyZWN0aW9ucy1idXR0b25zPlxyXG5cclxuPGlnby1kaXJlY3Rpb25zLWlucHV0c1xyXG4gIChzdG9wSW5wdXRIYXNGb2N1cyk9XCJvblN0b3BJbnB1dEhhc0ZvY3VzQ2hhbmdlKCRldmVudClcIlxyXG4gIFtjb29yZFJvdW5kZWREZWNpbWFsc109XCJjb29yZFJvdW5kZWREZWNpbWFsc1wiXHJcbiAgW3Byb2plY3Rpb25dPVwicHJvamVjdGlvblwiXHJcbiAgW3N0b3BzRmVhdHVyZVN0b3JlXT1cInN0b3BzRmVhdHVyZVN0b3JlXCJcclxuICBbc3RvcHNTdG9yZV09XCJzdG9wc1N0b3JlXCJcclxuICBbZGVib3VuY2VdPVwiZGVib3VuY2VcIlxyXG4gIFtsZW5ndGhdPVwibGVuZ3RoXCJcclxuPjwvaWdvLWRpcmVjdGlvbnMtaW5wdXRzPlxyXG5cclxuPGlnby1kaXJlY3Rpb25zLXJlc3VsdHNcclxuICBbc3RlcEZlYXR1cmVTdG9yZV09XCJzdGVwRmVhdHVyZVN0b3JlXCJcclxuICBbcm91dGVzRmVhdHVyZVN0b3JlXT1cInJvdXRlc0ZlYXR1cmVTdG9yZVwiXHJcbj48L2lnby1kaXJlY3Rpb25zLXJlc3VsdHM+XHJcbiJdfQ==