@igo2/geo 1.11.1 → 1.13.0-alpha.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 (989) hide show
  1. package/assets/icons/cross_black_18px.svg +88 -88
  2. package/assets/icons/place_blue_36px.svg +55 -55
  3. package/assets/icons/place_green_36px.svg +55 -55
  4. package/assets/icons/place_red_36px.svg +55 -55
  5. package/assets/icons/place_yellow_36px.svg +55 -55
  6. package/{esm2015/igo2-geo.js → esm2020/igo2-geo.mjs} +0 -0
  7. package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +299 -0
  8. package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +268 -0
  9. package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +244 -0
  10. package/esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs +80 -0
  11. package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +209 -0
  12. package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +79 -0
  13. package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +217 -0
  14. package/esm2020/lib/catalog/catalog-library/catalog-library.module.mjs +95 -0
  15. package/esm2020/lib/catalog/catalog.module.mjs +53 -0
  16. package/esm2020/lib/catalog/index.mjs +5 -0
  17. package/esm2020/lib/catalog/shared/catalog.abstract.mjs +95 -0
  18. package/esm2020/lib/catalog/shared/catalog.enum.mjs +16 -0
  19. package/esm2020/lib/catalog/shared/catalog.interface.mjs +2 -0
  20. package/esm2020/lib/catalog/shared/catalog.service.mjs +606 -0
  21. package/esm2020/lib/catalog/shared/index.mjs +5 -0
  22. package/esm2020/lib/datasource/datasource.module.mjs +22 -0
  23. package/esm2020/lib/datasource/index.mjs +3 -0
  24. package/esm2020/lib/datasource/shared/capabilities.service.mjs +426 -0
  25. package/esm2020/lib/datasource/shared/datasource.service.mjs +236 -0
  26. package/esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs +2 -0
  27. package/esm2020/lib/datasource/shared/datasources/any-datasource.mjs +2 -0
  28. package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +2 -0
  29. package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +145 -0
  30. package/esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs +2 -0
  31. package/esm2020/lib/datasource/shared/datasources/carto-datasource.mjs +109 -0
  32. package/esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +2 -0
  33. package/esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs +15 -0
  34. package/esm2020/lib/datasource/shared/datasources/data.service.mjs +3 -0
  35. package/esm2020/lib/datasource/shared/datasources/datasource.interface.mjs +2 -0
  36. package/esm2020/lib/datasource/shared/datasources/datasource.mjs +29 -0
  37. package/esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs +2 -0
  38. package/esm2020/lib/datasource/shared/datasources/feature-datasource.mjs +43 -0
  39. package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +2 -0
  40. package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +57 -0
  41. package/esm2020/lib/datasource/shared/datasources/index.mjs +36 -0
  42. package/esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +2 -0
  43. package/esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs +28 -0
  44. package/esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs +2 -0
  45. package/esm2020/lib/datasource/shared/datasources/osm-datasource.mjs +12 -0
  46. package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +2 -0
  47. package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +49 -0
  48. package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +2 -0
  49. package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs +15 -0
  50. package/esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +2 -0
  51. package/esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs +54 -0
  52. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +2 -0
  53. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +74 -0
  54. package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +152 -0
  55. package/esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs +2 -0
  56. package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +205 -0
  57. package/esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs +207 -0
  58. package/esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +2 -0
  59. package/esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs +16 -0
  60. package/esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +2 -0
  61. package/esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs +9 -0
  62. package/esm2020/lib/datasource/shared/index.mjs +5 -0
  63. package/esm2020/lib/datasource/shared/options/index.mjs +5 -0
  64. package/esm2020/lib/datasource/shared/options/options-api.interface.mjs +2 -0
  65. package/esm2020/lib/datasource/shared/options/options-api.providers.mjs +15 -0
  66. package/esm2020/lib/datasource/shared/options/options-api.service.mjs +81 -0
  67. package/esm2020/lib/datasource/shared/options/options.service.mjs +3 -0
  68. package/esm2020/lib/datasource/utils/esri-style-generator.mjs +357 -0
  69. package/esm2020/lib/datasource/utils/index.mjs +3 -0
  70. package/esm2020/lib/datasource/utils/tilegrid.mjs +20 -0
  71. package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +224 -0
  72. package/esm2020/lib/directions/directions-buttons/index.mjs +2 -0
  73. package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +290 -0
  74. package/esm2020/lib/directions/directions-inputs/index.mjs +2 -0
  75. package/esm2020/lib/directions/directions-results/directions-results.component.mjs +196 -0
  76. package/esm2020/lib/directions/directions-results/index.mjs +2 -0
  77. package/esm2020/lib/directions/directions-sources/directions-source.interface.mjs +2 -0
  78. package/esm2020/lib/directions/directions-sources/directions-source.mjs +3 -0
  79. package/esm2020/lib/directions/directions-sources/directions-source.provider.mjs +16 -0
  80. package/esm2020/lib/directions/directions-sources/index.mjs +5 -0
  81. package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +99 -0
  82. package/esm2020/lib/directions/directions.component.mjs +311 -0
  83. package/esm2020/lib/directions/directions.module.mjs +102 -0
  84. package/esm2020/lib/directions/index.mjs +7 -0
  85. package/esm2020/lib/directions/shared/directions-source.service.mjs +17 -0
  86. package/esm2020/lib/directions/shared/directions.enum.mjs +28 -0
  87. package/esm2020/lib/directions/shared/directions.interface.mjs +2 -0
  88. package/esm2020/lib/directions/shared/directions.service.mjs +29 -0
  89. package/esm2020/lib/directions/shared/directions.utils.mjs +510 -0
  90. package/esm2020/lib/directions/shared/index.mjs +6 -0
  91. package/esm2020/lib/directions/shared/store.mjs +24 -0
  92. package/esm2020/lib/download/download-button/download-button.component.mjs +61 -0
  93. package/esm2020/lib/download/download-button/index.mjs +2 -0
  94. package/esm2020/lib/download/download.module.mjs +42 -0
  95. package/esm2020/lib/download/index.mjs +3 -0
  96. package/esm2020/lib/download/shared/download.interface.mjs +2 -0
  97. package/esm2020/lib/download/shared/download.service.mjs +65 -0
  98. package/esm2020/lib/download/shared/index.mjs +3 -0
  99. package/esm2020/lib/draw/draw/draw-popup.component.mjs +61 -0
  100. package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +48 -0
  101. package/esm2020/lib/draw/draw/draw.component.mjs +714 -0
  102. package/esm2020/lib/draw/draw/draw.module.mjs +100 -0
  103. package/esm2020/lib/draw/drawingTool.module.mjs +20 -0
  104. package/esm2020/lib/draw/index.mjs +3 -0
  105. package/esm2020/lib/draw/shared/draw-icon.service.mjs +27 -0
  106. package/esm2020/lib/draw/shared/draw-style.service.mjs +173 -0
  107. package/esm2020/lib/draw/shared/draw.enum.mjs +24 -0
  108. package/esm2020/lib/draw/shared/draw.interface.mjs +2 -0
  109. package/esm2020/lib/draw/shared/draw.utils.mjs +104 -0
  110. package/esm2020/lib/draw/shared/index.mjs +6 -0
  111. package/esm2020/lib/feature/feature-details/feature-details.component.mjs +377 -0
  112. package/esm2020/lib/feature/feature-details/feature-details.directive.mjs +54 -0
  113. package/esm2020/lib/feature/feature-details/feature-details.module.mjs +48 -0
  114. package/esm2020/lib/feature/feature-form/feature-form.component.mjs +112 -0
  115. package/esm2020/lib/feature/feature-form/feature-form.module.mjs +34 -0
  116. package/esm2020/lib/feature/feature.module.mjs +28 -0
  117. package/esm2020/lib/feature/index.mjs +4 -0
  118. package/esm2020/lib/feature/shared/feature.enums.mjs +9 -0
  119. package/esm2020/lib/feature/shared/feature.interfaces.mjs +2 -0
  120. package/esm2020/lib/feature/shared/feature.utils.mjs +348 -0
  121. package/esm2020/lib/feature/shared/index.mjs +7 -0
  122. package/esm2020/lib/feature/shared/store.mjs +112 -0
  123. package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +113 -0
  124. package/esm2020/lib/feature/shared/strategies/in-map-resolution.mjs +94 -0
  125. package/esm2020/lib/feature/shared/strategies/index.mjs +6 -0
  126. package/esm2020/lib/feature/shared/strategies/loading-layer.mjs +104 -0
  127. package/esm2020/lib/feature/shared/strategies/loading.mjs +133 -0
  128. package/esm2020/lib/feature/shared/strategies/selection.mjs +370 -0
  129. package/esm2020/lib/feature/shared/strategies.utils.mjs +37 -0
  130. package/esm2020/lib/filter/filter.module.mjs +289 -0
  131. package/esm2020/lib/filter/index.mjs +16 -0
  132. package/esm2020/lib/filter/ogc-filter-button/index.mjs +2 -0
  133. package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +140 -0
  134. package/esm2020/lib/filter/ogc-filter-form/index.mjs +2 -0
  135. package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +645 -0
  136. package/esm2020/lib/filter/ogc-filter-selection/index.mjs +2 -0
  137. package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +1302 -0
  138. package/esm2020/lib/filter/ogc-filter-time/index.mjs +3 -0
  139. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +177 -0
  140. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +871 -0
  141. package/esm2020/lib/filter/ogc-filterable-form/index.mjs +2 -0
  142. package/esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +59 -0
  143. package/esm2020/lib/filter/ogc-filterable-item/index.mjs +2 -0
  144. package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +302 -0
  145. package/esm2020/lib/filter/ogc-filterable-list/index.mjs +3 -0
  146. package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +31 -0
  147. package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +31 -0
  148. package/esm2020/lib/filter/shared/filterable-datasource.pipe.mjs +55 -0
  149. package/esm2020/lib/filter/shared/index.mjs +12 -0
  150. package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +72 -0
  151. package/esm2020/lib/filter/shared/ogc-filter.enum.mjs +30 -0
  152. package/esm2020/lib/filter/shared/ogc-filter.interface.mjs +2 -0
  153. package/esm2020/lib/filter/shared/ogc-filter.mjs +692 -0
  154. package/esm2020/lib/filter/shared/ogc-filter.service.mjs +46 -0
  155. package/esm2020/lib/filter/shared/spatial-filter.enum.mjs +23 -0
  156. package/esm2020/lib/filter/shared/spatial-filter.interface.mjs +2 -0
  157. package/esm2020/lib/filter/shared/spatial-filter.service.mjs +269 -0
  158. package/esm2020/lib/filter/shared/time-filter.enum.mjs +13 -0
  159. package/esm2020/lib/filter/shared/time-filter.interface.mjs +2 -0
  160. package/esm2020/lib/filter/shared/time-filter.service.mjs +107 -0
  161. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs +2 -0
  162. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1076 -0
  163. package/esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs +2 -0
  164. package/esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +208 -0
  165. package/esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs +2 -0
  166. package/esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +144 -0
  167. package/esm2020/lib/filter/time-filter-button/index.mjs +2 -0
  168. package/esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs +78 -0
  169. package/esm2020/lib/filter/time-filter-form/index.mjs +2 -0
  170. package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +734 -0
  171. package/esm2020/lib/filter/time-filter-item/index.mjs +2 -0
  172. package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +119 -0
  173. package/esm2020/lib/filter/time-filter-list/index.mjs +3 -0
  174. package/esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +31 -0
  175. package/esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs +39 -0
  176. package/esm2020/lib/geo.module.mjs +102 -0
  177. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +511 -0
  178. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +189 -0
  179. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +64 -0
  180. package/esm2020/lib/geometry/geometry.module.mjs +27 -0
  181. package/esm2020/lib/geometry/index.mjs +4 -0
  182. package/esm2020/lib/geometry/shared/controls/draw.mjs +271 -0
  183. package/esm2020/lib/geometry/shared/controls/index.mjs +4 -0
  184. package/esm2020/lib/geometry/shared/controls/modify.mjs +521 -0
  185. package/esm2020/lib/geometry/shared/controls/slice.mjs +177 -0
  186. package/esm2020/lib/geometry/shared/geometry.errors.mjs +26 -0
  187. package/esm2020/lib/geometry/shared/geometry.interfaces.mjs +2 -0
  188. package/esm2020/lib/geometry/shared/geometry.utils.mjs +122 -0
  189. package/esm2020/lib/geometry/shared/index.mjs +5 -0
  190. package/esm2020/lib/import-export/export-button/export-button.component.mjs +64 -0
  191. package/esm2020/lib/import-export/export-button/index.mjs +2 -0
  192. package/esm2020/lib/import-export/import-export/import-export.component.mjs +1190 -0
  193. package/esm2020/lib/import-export/import-export/index.mjs +2 -0
  194. package/esm2020/lib/import-export/import-export.module.mjs +93 -0
  195. package/esm2020/lib/import-export/index.mjs +5 -0
  196. package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +135 -0
  197. package/esm2020/lib/import-export/shared/export.errors.mjs +15 -0
  198. package/esm2020/lib/import-export/shared/export.interface.mjs +2 -0
  199. package/esm2020/lib/import-export/shared/export.service.mjs +195 -0
  200. package/esm2020/lib/import-export/shared/export.type.mjs +4 -0
  201. package/esm2020/lib/import-export/shared/export.utils.mjs +55 -0
  202. package/esm2020/lib/import-export/shared/import.errors.mjs +39 -0
  203. package/esm2020/lib/import-export/shared/import.interface.mjs +2 -0
  204. package/esm2020/lib/import-export/shared/import.service.mjs +195 -0
  205. package/esm2020/lib/import-export/shared/import.utils.mjs +234 -0
  206. package/esm2020/lib/import-export/shared/index.mjs +11 -0
  207. package/esm2020/lib/import-export/style-list/index.mjs +5 -0
  208. package/esm2020/lib/import-export/style-list/style-list.interface.mjs +2 -0
  209. package/esm2020/lib/import-export/style-list/style-list.module.mjs +23 -0
  210. package/esm2020/lib/import-export/style-list/style-list.provider.mjs +21 -0
  211. package/esm2020/lib/import-export/style-list/style-list.service.mjs +51 -0
  212. package/esm2020/lib/layer/index.mjs +10 -0
  213. package/esm2020/lib/layer/layer-item/index.mjs +2 -0
  214. package/esm2020/lib/layer/layer-item/layer-item.component.mjs +300 -0
  215. package/esm2020/lib/layer/layer-legend/index.mjs +2 -0
  216. package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +382 -0
  217. package/esm2020/lib/layer/layer-legend-item/index.mjs +2 -0
  218. package/esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs +84 -0
  219. package/esm2020/lib/layer/layer-legend-list/index.mjs +3 -0
  220. package/esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +48 -0
  221. package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +195 -0
  222. package/esm2020/lib/layer/layer-list/index.mjs +4 -0
  223. package/esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs +59 -0
  224. package/esm2020/lib/layer/layer-list/layer-list.component.mjs +1024 -0
  225. package/esm2020/lib/layer/layer-list/layer-list.enum.mjs +19 -0
  226. package/esm2020/lib/layer/layer-list-tool/index.mjs +5 -0
  227. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +165 -0
  228. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +7 -0
  229. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +2 -0
  230. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs +22 -0
  231. package/esm2020/lib/layer/layer.module.mjs +173 -0
  232. package/esm2020/lib/layer/shared/clusterParam.mjs +2 -0
  233. package/esm2020/lib/layer/shared/index.mjs +7 -0
  234. package/esm2020/lib/layer/shared/layer.enums.mjs +2 -0
  235. package/esm2020/lib/layer/shared/layer.service.mjs +186 -0
  236. package/esm2020/lib/layer/shared/layers/any-layer.interface.mjs +2 -0
  237. package/esm2020/lib/layer/shared/layers/any-layer.mjs +2 -0
  238. package/esm2020/lib/layer/shared/layers/image-layer.interface.mjs +2 -0
  239. package/esm2020/lib/layer/shared/layers/image-layer.mjs +68 -0
  240. package/esm2020/lib/layer/shared/layers/index.mjs +13 -0
  241. package/esm2020/lib/layer/shared/layers/layer.interface.mjs +17 -0
  242. package/esm2020/lib/layer/shared/layers/layer.mjs +170 -0
  243. package/esm2020/lib/layer/shared/layers/tile-layer.interface.mjs +2 -0
  244. package/esm2020/lib/layer/shared/layers/tile-layer.mjs +47 -0
  245. package/esm2020/lib/layer/shared/layers/vector-layer.interface.mjs +2 -0
  246. package/esm2020/lib/layer/shared/layers/vector-layer.mjs +376 -0
  247. package/esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs +2 -0
  248. package/esm2020/lib/layer/shared/layers/vectortile-layer.mjs +104 -0
  249. package/esm2020/lib/layer/shared/style.service.mjs +356 -0
  250. package/esm2020/lib/layer/shared/vector-style.interface.mjs +2 -0
  251. package/esm2020/lib/layer/track-feature-button/index.mjs +2 -0
  252. package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +59 -0
  253. package/esm2020/lib/layer/utils/image-watcher.mjs +62 -0
  254. package/esm2020/lib/layer/utils/index.mjs +7 -0
  255. package/esm2020/lib/layer/utils/layer.utils.mjs +10 -0
  256. package/esm2020/lib/layer/utils/layerSync-watcher.mjs +242 -0
  257. package/esm2020/lib/layer/utils/outputLegend.mjs +27 -0
  258. package/esm2020/lib/layer/utils/tile-watcher.mjs +50 -0
  259. package/esm2020/lib/layer/utils/vector-watcher.mjs +48 -0
  260. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +20 -0
  261. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +97 -0
  262. package/esm2020/lib/map/baselayers-switcher/index.mjs +3 -0
  263. package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +133 -0
  264. package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +76 -0
  265. package/esm2020/lib/map/geolocate-button/index.mjs +2 -0
  266. package/esm2020/lib/map/home-extent-button/home-extent-button.component.mjs +63 -0
  267. package/{esm2015/lib/map/home-extent-button/index.js → esm2020/lib/map/home-extent-button/index.mjs} +0 -0
  268. package/esm2020/lib/map/index.mjs +14 -0
  269. package/esm2020/lib/map/info-section/index.mjs +2 -0
  270. package/esm2020/lib/map/info-section/info-section.component.mjs +30 -0
  271. package/esm2020/lib/map/map-browser/index.mjs +2 -0
  272. package/esm2020/lib/map/map-browser/map-browser.component.mjs +66 -0
  273. package/esm2020/lib/map/map-center/index.mjs +2 -0
  274. package/esm2020/lib/map/map-center/map-center.component.mjs +50 -0
  275. package/esm2020/lib/map/map.module.mjs +127 -0
  276. package/esm2020/lib/map/menu-button/index.mjs +2 -0
  277. package/esm2020/lib/map/menu-button/menu-button.component.mjs +62 -0
  278. package/esm2020/lib/map/offline-button/index.mjs +2 -0
  279. package/esm2020/lib/map/offline-button/offline-button.component.mjs +76 -0
  280. package/esm2020/lib/map/rotation-button/index.mjs +2 -0
  281. package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +91 -0
  282. package/esm2020/lib/map/shared/controllers/controller.mjs +42 -0
  283. package/esm2020/lib/map/shared/controllers/geolocation.mjs +308 -0
  284. package/esm2020/lib/map/shared/controllers/index.mjs +4 -0
  285. package/esm2020/lib/map/shared/controllers/view.mjs +342 -0
  286. package/esm2020/lib/map/shared/hover-feature.directive.mjs +506 -0
  287. package/esm2020/lib/map/shared/index.mjs +13 -0
  288. package/esm2020/lib/map/shared/map-pointer-position.directive.mjs +107 -0
  289. package/esm2020/lib/map/shared/map.enums.mjs +6 -0
  290. package/esm2020/lib/map/shared/map.interface.mjs +2 -0
  291. package/esm2020/lib/map/shared/map.mjs +417 -0
  292. package/esm2020/lib/map/shared/map.service.mjs +29 -0
  293. package/esm2020/lib/map/shared/map.utils.mjs +459 -0
  294. package/esm2020/lib/map/shared/mapOffline.directive.mjs +163 -0
  295. package/esm2020/lib/map/shared/projection.interfaces.mjs +2 -0
  296. package/esm2020/lib/map/shared/projection.service.mjs +65 -0
  297. package/esm2020/lib/map/shared/projection.utils.mjs +64 -0
  298. package/esm2020/lib/map/swipe-control/index.mjs +2 -0
  299. package/esm2020/lib/map/swipe-control/swipe-control.component.mjs +193 -0
  300. package/esm2020/lib/map/utils/layer-watcher.mjs +58 -0
  301. package/esm2020/lib/map/wake-lock-button/index.mjs +2 -0
  302. package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +114 -0
  303. package/esm2020/lib/map/zoom-button/index.mjs +2 -0
  304. package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +40 -0
  305. package/esm2020/lib/measure/index.mjs +4 -0
  306. package/esm2020/lib/measure/measure.module.mjs +20 -0
  307. package/esm2020/lib/measure/measurer/measure-format.pipe.mjs +37 -0
  308. package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +180 -0
  309. package/esm2020/lib/measure/measurer/measurer-item.component.mjs +140 -0
  310. package/esm2020/lib/measure/measurer/measurer.component.mjs +1042 -0
  311. package/esm2020/lib/measure/measurer/measurer.module.mjs +94 -0
  312. package/esm2020/lib/measure/shared/index.mjs +4 -0
  313. package/esm2020/lib/measure/shared/measure.enum.mjs +37 -0
  314. package/esm2020/lib/measure/shared/measure.interfaces.mjs +2 -0
  315. package/esm2020/lib/measure/shared/measure.utils.mjs +489 -0
  316. package/esm2020/lib/metadata/index.mjs +3 -0
  317. package/esm2020/lib/metadata/metadata-button/index.mjs +2 -0
  318. package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +134 -0
  319. package/esm2020/lib/metadata/metadata.module.mjs +55 -0
  320. package/esm2020/lib/metadata/shared/index.mjs +3 -0
  321. package/esm2020/lib/metadata/shared/metadata.interface.mjs +2 -0
  322. package/esm2020/lib/metadata/shared/metadata.service.mjs +19 -0
  323. package/esm2020/lib/offline/geoDB/geoDB.enums.mjs +6 -0
  324. package/esm2020/lib/offline/geoDB/geoDB.interface.mjs +2 -0
  325. package/esm2020/lib/offline/geoDB/geoDB.service.mjs +161 -0
  326. package/esm2020/lib/offline/geoDB/index.mjs +4 -0
  327. package/esm2020/lib/offline/index.mjs +3 -0
  328. package/esm2020/lib/offline/shared/geo-network.service.mjs +66 -0
  329. package/esm2020/lib/offline/shared/index.mjs +2 -0
  330. package/esm2020/lib/overlay/index.mjs +2 -0
  331. package/esm2020/lib/overlay/overlay.module.mjs +23 -0
  332. package/esm2020/lib/overlay/shared/index.mjs +7 -0
  333. package/esm2020/lib/overlay/shared/overlay-marker-style.utils.mjs +69 -0
  334. package/esm2020/lib/overlay/shared/overlay.directive.mjs +33 -0
  335. package/esm2020/lib/overlay/shared/overlay.enum.mjs +8 -0
  336. package/esm2020/lib/overlay/shared/overlay.mjs +130 -0
  337. package/esm2020/lib/overlay/shared/overlay.service.mjs +27 -0
  338. package/esm2020/lib/overlay/shared/overlay.utils.mjs +103 -0
  339. package/esm2020/lib/print/index.mjs +4 -0
  340. package/esm2020/lib/print/print/print.component.mjs +123 -0
  341. package/esm2020/lib/print/print-form/index.mjs +2 -0
  342. package/esm2020/lib/print/print-form/print-form.component.mjs +405 -0
  343. package/esm2020/lib/print/print.module.mjs +65 -0
  344. package/esm2020/lib/print/shared/index.mjs +4 -0
  345. package/esm2020/lib/print/shared/print.interface.mjs +2 -0
  346. package/esm2020/lib/print/shared/print.service.mjs +807 -0
  347. package/esm2020/lib/print/shared/print.type.mjs +30 -0
  348. package/esm2020/lib/query/index.mjs +2 -0
  349. package/esm2020/lib/query/query.module.mjs +29 -0
  350. package/esm2020/lib/query/shared/index.mjs +7 -0
  351. package/esm2020/lib/query/shared/query-search-source.mjs +35 -0
  352. package/esm2020/lib/query/shared/query-search-source.providers.mjs +22 -0
  353. package/esm2020/lib/query/shared/query.directive.mjs +261 -0
  354. package/esm2020/lib/query/shared/query.enums.mjs +30 -0
  355. package/esm2020/lib/query/shared/query.interfaces.mjs +2 -0
  356. package/esm2020/lib/query/shared/query.service.mjs +613 -0
  357. package/esm2020/lib/query/shared/query.utils.mjs +37 -0
  358. package/esm2020/lib/search/index.mjs +12 -0
  359. package/esm2020/lib/search/search-bar/search-bar.component.mjs +489 -0
  360. package/esm2020/lib/search/search-bar/search-bar.module.mjs +75 -0
  361. package/esm2020/lib/search/search-bar/search-url-param.directive.mjs +35 -0
  362. package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +193 -0
  363. package/esm2020/lib/search/search-results/search-results-item.component.mjs +124 -0
  364. package/esm2020/lib/search/search-results/search-results.component.mjs +331 -0
  365. package/esm2020/lib/search/search-results/search-results.module.mjs +77 -0
  366. package/esm2020/lib/search/search-selector/search-selector.component.mjs +123 -0
  367. package/esm2020/lib/search/search-selector/search-selector.module.mjs +56 -0
  368. package/esm2020/lib/search/search-settings/search-settings.component.mjs +418 -0
  369. package/esm2020/lib/search/search-settings/search-settings.module.mjs +60 -0
  370. package/esm2020/lib/search/search.module.mjs +67 -0
  371. package/esm2020/lib/search/shared/index.mjs +9 -0
  372. package/esm2020/lib/search/shared/search-pointer-summary.directive.mjs +322 -0
  373. package/esm2020/lib/search/shared/search-source-service.providers.mjs +20 -0
  374. package/esm2020/lib/search/shared/search-source.service.mjs +47 -0
  375. package/esm2020/lib/search/shared/search.enums.mjs +4 -0
  376. package/esm2020/lib/search/shared/search.interfaces.mjs +2 -0
  377. package/esm2020/lib/search/shared/search.service.mjs +118 -0
  378. package/esm2020/lib/search/shared/search.utils.mjs +78 -0
  379. package/esm2020/lib/search/shared/sources/cadastre.mjs +126 -0
  380. package/esm2020/lib/search/shared/sources/cadastre.providers.mjs +23 -0
  381. package/esm2020/lib/search/shared/sources/coordinates.interfaces.mjs +2 -0
  382. package/esm2020/lib/search/shared/sources/coordinates.mjs +147 -0
  383. package/esm2020/lib/search/shared/sources/coordinates.providers.mjs +40 -0
  384. package/esm2020/lib/search/shared/sources/icherche.interfaces.mjs +2 -0
  385. package/esm2020/lib/search/shared/sources/icherche.mjs +755 -0
  386. package/esm2020/lib/search/shared/sources/icherche.providers.mjs +66 -0
  387. package/esm2020/lib/search/shared/sources/ilayer.interfaces.mjs +2 -0
  388. package/esm2020/lib/search/shared/sources/ilayer.mjs +320 -0
  389. package/esm2020/lib/search/shared/sources/ilayer.providers.mjs +40 -0
  390. package/esm2020/lib/search/shared/sources/index.mjs +20 -0
  391. package/esm2020/lib/search/shared/sources/nominatim.interfaces.mjs +2 -0
  392. package/esm2020/lib/search/shared/sources/nominatim.mjs +253 -0
  393. package/esm2020/lib/search/shared/sources/nominatim.providers.mjs +23 -0
  394. package/esm2020/lib/search/shared/sources/source.interfaces.mjs +2 -0
  395. package/esm2020/lib/search/shared/sources/source.mjs +179 -0
  396. package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +2 -0
  397. package/esm2020/lib/search/shared/sources/storedqueries.mjs +425 -0
  398. package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +41 -0
  399. package/esm2020/lib/toast/index.mjs +2 -0
  400. package/esm2020/lib/toast/toast.component.mjs +113 -0
  401. package/esm2020/lib/toast/toast.module.mjs +45 -0
  402. package/esm2020/lib/utils/commonVectorStyle.interface.mjs +2 -0
  403. package/esm2020/lib/utils/commonVectorStyle.mjs +75 -0
  404. package/esm2020/lib/utils/googleLinks.mjs +13 -0
  405. package/esm2020/lib/utils/id-generator.mjs +110 -0
  406. package/esm2020/lib/utils/index.mjs +6 -0
  407. package/esm2020/lib/utils/osmLinks.mjs +10 -0
  408. package/esm2020/lib/wkt/index.mjs +2 -0
  409. package/esm2020/lib/wkt/shared/index.mjs +2 -0
  410. package/esm2020/lib/wkt/shared/wkt.service.mjs +239 -0
  411. package/esm2020/lib/wkt/wkt.module.mjs +22 -0
  412. package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +48 -0
  413. package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +36 -0
  414. package/esm2020/lib/workspace/confirmation-popup/index.mjs +3 -0
  415. package/esm2020/lib/workspace/index.mjs +8 -0
  416. package/esm2020/lib/workspace/shared/edition-workspace.mjs +278 -0
  417. package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +642 -0
  418. package/esm2020/lib/workspace/shared/feature-workspace.mjs +35 -0
  419. package/esm2020/lib/workspace/shared/feature-workspace.service.mjs +150 -0
  420. package/esm2020/lib/workspace/shared/index.mjs +8 -0
  421. package/esm2020/lib/workspace/shared/wfs-workspace.mjs +35 -0
  422. package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +150 -0
  423. package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +261 -0
  424. package/esm2020/lib/workspace/shared/workspace.utils.mjs +24 -0
  425. package/esm2020/lib/workspace/widgets/index.mjs +4 -0
  426. package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +47 -0
  427. package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +36 -0
  428. package/esm2020/lib/workspace/widgets/widgets.mjs +15 -0
  429. package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +133 -0
  430. package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +28 -0
  431. package/esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs +113 -0
  432. package/esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs +28 -0
  433. package/esm2020/lib/workspace/workspace.module.mjs +62 -0
  434. package/esm2020/public_api.mjs +55 -0
  435. package/fesm2015/igo2-geo.mjs +42904 -0
  436. package/fesm2015/igo2-geo.mjs.map +1 -0
  437. package/fesm2020/igo2-geo.mjs +41183 -0
  438. package/fesm2020/igo2-geo.mjs.map +1 -0
  439. package/{igo2-geo.d.ts → index.d.ts} +0 -0
  440. package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +1 -1
  441. package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +1 -1
  442. package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +1 -1
  443. package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +4 -4
  444. package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +1 -1
  445. package/lib/catalog/catalog-library/catalog-library.component.d.ts +1 -1
  446. package/lib/catalog/shared/catalog.interface.d.ts +9 -1
  447. package/lib/catalog/shared/catalog.service.d.ts +1 -0
  448. package/lib/datasource/shared/datasources/datasource.interface.d.ts +7 -1
  449. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +1 -1
  450. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +1 -1
  451. package/lib/directions/directions-results/directions-results.component.d.ts +1 -1
  452. package/lib/directions/directions.component.d.ts +1 -1
  453. package/lib/download/download-button/download-button.component.d.ts +1 -1
  454. package/lib/draw/draw/draw-popup.component.d.ts +4 -2
  455. package/lib/draw/draw/draw-shorcuts.component.d.ts +1 -1
  456. package/lib/draw/draw/draw.component.d.ts +22 -5
  457. package/lib/draw/shared/draw-style.service.d.ts +6 -0
  458. package/lib/draw/shared/draw.enum.d.ts +15 -0
  459. package/lib/feature/feature-details/feature-details.component.d.ts +13 -3
  460. package/lib/feature/feature-details/feature-details.directive.d.ts +3 -14
  461. package/lib/feature/feature-form/feature-form.component.d.ts +1 -1
  462. package/lib/feature/shared/feature.interfaces.d.ts +2 -2
  463. package/lib/filter/filter.module.d.ts +1 -1
  464. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +1 -1
  465. package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +1 -1
  466. package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +33 -15
  467. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +1 -1
  468. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +6 -6
  469. package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +1 -1
  470. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +1 -1
  471. package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +1 -1
  472. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +1 -1
  473. package/lib/filter/shared/filterable-datasource.pipe.d.ts +1 -1
  474. package/lib/filter/shared/ogc-filter.interface.d.ts +19 -2
  475. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +5 -5
  476. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +4 -4
  477. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +3 -3
  478. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +1 -1
  479. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +1 -1
  480. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +1 -1
  481. package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +1 -1
  482. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +1 -1
  483. package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +1 -1
  484. package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +3 -3
  485. package/lib/import-export/export-button/export-button.component.d.ts +1 -1
  486. package/lib/import-export/import-export/import-export.component.d.ts +5 -5
  487. package/lib/import-export/shared/drop-geo-file.directive.d.ts +1 -1
  488. package/lib/import-export/shared/import.utils.d.ts +1 -1
  489. package/lib/layer/layer-item/layer-item.component.d.ts +2 -1
  490. package/lib/layer/layer-legend/layer-legend.component.d.ts +4 -3
  491. package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +1 -1
  492. package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +1 -1
  493. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +1 -1
  494. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +1 -1
  495. package/lib/layer/layer-list/layer-list.component.d.ts +1 -1
  496. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +1 -1
  497. package/lib/layer/shared/layer.service.d.ts +6 -3
  498. package/lib/layer/shared/layers/layer.interface.d.ts +1 -0
  499. package/lib/layer/shared/layers/vector-layer.d.ts +5 -1
  500. package/lib/layer/shared/style.service.d.ts +38 -3
  501. package/lib/layer/shared/vector-style.interface.d.ts +11 -0
  502. package/lib/layer/track-feature-button/track-feature-button.component.d.ts +1 -1
  503. package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +1 -1
  504. package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +1 -1
  505. package/lib/map/geolocate-button/geolocate-button.component.d.ts +9 -2
  506. package/lib/map/home-extent-button/home-extent-button.component.d.ts +1 -1
  507. package/lib/map/index.d.ts +1 -0
  508. package/lib/map/info-section/info-section.component.d.ts +1 -1
  509. package/lib/map/map-browser/map-browser.component.d.ts +1 -1
  510. package/lib/map/map-center/map-center.component.d.ts +1 -1
  511. package/lib/map/map.module.d.ts +13 -12
  512. package/lib/map/menu-button/menu-button.component.d.ts +1 -1
  513. package/lib/map/offline-button/offline-button.component.d.ts +1 -1
  514. package/lib/map/rotation-button/rotation-button.component.d.ts +1 -1
  515. package/lib/map/shared/controllers/geolocation.d.ts +112 -0
  516. package/lib/map/shared/controllers/index.d.ts +1 -0
  517. package/lib/map/shared/controllers/view.d.ts +7 -0
  518. package/lib/map/shared/hover-feature.directive.d.ts +2 -2
  519. package/lib/map/shared/map-pointer-position.directive.d.ts +1 -1
  520. package/lib/map/shared/map.d.ts +7 -19
  521. package/lib/map/shared/map.interface.d.ts +0 -1
  522. package/lib/map/shared/mapOffline.directive.d.ts +1 -1
  523. package/lib/map/swipe-control/swipe-control.component.d.ts +1 -1
  524. package/lib/map/wake-lock-button/index.d.ts +1 -0
  525. package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +30 -0
  526. package/lib/map/zoom-button/zoom-button.component.d.ts +1 -1
  527. package/lib/measure/measurer/measure-format.pipe.d.ts +1 -1
  528. package/lib/measure/measurer/measurer-dialog.component.d.ts +1 -1
  529. package/lib/measure/measurer/measurer-item.component.d.ts +1 -1
  530. package/lib/measure/measurer/measurer.component.d.ts +1 -1
  531. package/lib/metadata/metadata-button/metadata-button.component.d.ts +2 -2
  532. package/lib/offline/geoDB/geoDB.enums.d.ts +4 -0
  533. package/lib/offline/geoDB/geoDB.interface.d.ts +9 -0
  534. package/lib/offline/geoDB/geoDB.service.d.ts +35 -0
  535. package/lib/offline/geoDB/index.d.ts +3 -0
  536. package/lib/offline/index.d.ts +2 -0
  537. package/lib/offline/shared/geo-network.service.d.ts +28 -0
  538. package/lib/offline/shared/index.d.ts +1 -0
  539. package/lib/overlay/shared/overlay.directive.d.ts +1 -1
  540. package/lib/print/print/print.component.d.ts +1 -1
  541. package/lib/print/print-form/print-form.component.d.ts +17 -17
  542. package/lib/print/shared/print.service.d.ts +9 -3
  543. package/lib/query/query.module.d.ts +2 -1
  544. package/lib/query/shared/query.directive.d.ts +1 -1
  545. package/lib/query/shared/query.service.d.ts +7 -1
  546. package/lib/search/search-bar/search-bar.component.d.ts +1 -1
  547. package/lib/search/search-bar/search-url-param.directive.d.ts +1 -1
  548. package/lib/search/search-results/search-results-add-button.component.d.ts +1 -1
  549. package/lib/search/search-results/search-results-item.component.d.ts +1 -1
  550. package/lib/search/search-results/search-results.component.d.ts +1 -1
  551. package/lib/search/search-selector/search-selector.component.d.ts +1 -1
  552. package/lib/search/search-settings/search-settings.component.d.ts +1 -1
  553. package/lib/search/shared/search-pointer-summary.directive.d.ts +1 -1
  554. package/lib/toast/toast.component.d.ts +1 -1
  555. package/lib/wkt/shared/wkt.service.d.ts +1 -1
  556. package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +1 -1
  557. package/lib/workspace/shared/edition-workspace.d.ts +2 -1
  558. package/lib/workspace/shared/edition-workspace.service.d.ts +5 -2
  559. package/lib/workspace/shared/feature-workspace.service.d.ts +3 -2
  560. package/lib/workspace/shared/wfs-workspace.service.d.ts +3 -2
  561. package/lib/workspace/shared/wms-workspace.service.d.ts +5 -2
  562. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +1 -1
  563. package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +1 -1
  564. package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +1 -1
  565. package/ngcc.config.js +3 -3
  566. package/package.json +35 -20
  567. package/public_api.d.ts +1 -0
  568. package/style/geo.theming.scss +12 -12
  569. package/bundles/igo2-geo.umd.js +0 -45805
  570. package/bundles/igo2-geo.umd.js.map +0 -1
  571. package/esm2015/lib/catalog/catalog-browser/catalog-browser-group.component.js +0 -305
  572. package/esm2015/lib/catalog/catalog-browser/catalog-browser-layer.component.js +0 -274
  573. package/esm2015/lib/catalog/catalog-browser/catalog-browser.component.js +0 -248
  574. package/esm2015/lib/catalog/catalog-browser/catalog-browser.module.js +0 -82
  575. package/esm2015/lib/catalog/catalog-library/add-catalog-dialog.component.js +0 -235
  576. package/esm2015/lib/catalog/catalog-library/catalog-library-item.component.js +0 -85
  577. package/esm2015/lib/catalog/catalog-library/catalog-library.component.js +0 -224
  578. package/esm2015/lib/catalog/catalog-library/catalog-library.module.js +0 -97
  579. package/esm2015/lib/catalog/catalog.module.js +0 -55
  580. package/esm2015/lib/catalog/index.js +0 -5
  581. package/esm2015/lib/catalog/shared/catalog.abstract.js +0 -95
  582. package/esm2015/lib/catalog/shared/catalog.enum.js +0 -16
  583. package/esm2015/lib/catalog/shared/catalog.interface.js +0 -2
  584. package/esm2015/lib/catalog/shared/catalog.service.js +0 -535
  585. package/esm2015/lib/catalog/shared/index.js +0 -5
  586. package/esm2015/lib/datasource/datasource.module.js +0 -22
  587. package/esm2015/lib/datasource/index.js +0 -3
  588. package/esm2015/lib/datasource/shared/capabilities.service.js +0 -427
  589. package/esm2015/lib/datasource/shared/datasource.service.js +0 -236
  590. package/esm2015/lib/datasource/shared/datasources/any-datasource.interface.js +0 -2
  591. package/esm2015/lib/datasource/shared/datasources/any-datasource.js +0 -2
  592. package/esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.interface.js +0 -2
  593. package/esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.js +0 -145
  594. package/esm2015/lib/datasource/shared/datasources/carto-datasource.interface.js +0 -2
  595. package/esm2015/lib/datasource/shared/datasources/carto-datasource.js +0 -109
  596. package/esm2015/lib/datasource/shared/datasources/cluster-datasource.interface.js +0 -2
  597. package/esm2015/lib/datasource/shared/datasources/cluster-datasource.js +0 -15
  598. package/esm2015/lib/datasource/shared/datasources/data.service.js +0 -3
  599. package/esm2015/lib/datasource/shared/datasources/datasource.interface.js +0 -2
  600. package/esm2015/lib/datasource/shared/datasources/datasource.js +0 -29
  601. package/esm2015/lib/datasource/shared/datasources/feature-datasource.interface.js +0 -2
  602. package/esm2015/lib/datasource/shared/datasources/feature-datasource.js +0 -43
  603. package/esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.js +0 -2
  604. package/esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.js +0 -57
  605. package/esm2015/lib/datasource/shared/datasources/index.js +0 -36
  606. package/esm2015/lib/datasource/shared/datasources/mvt-datasource.interface.js +0 -2
  607. package/esm2015/lib/datasource/shared/datasources/mvt-datasource.js +0 -28
  608. package/esm2015/lib/datasource/shared/datasources/osm-datasource.interface.js +0 -2
  609. package/esm2015/lib/datasource/shared/datasources/osm-datasource.js +0 -12
  610. package/esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.js +0 -2
  611. package/esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.js +0 -49
  612. package/esm2015/lib/datasource/shared/datasources/tiledebug-datasource.interface.js +0 -2
  613. package/esm2015/lib/datasource/shared/datasources/tiledebug-datasource.js +0 -15
  614. package/esm2015/lib/datasource/shared/datasources/websocket-datasource.interface.js +0 -2
  615. package/esm2015/lib/datasource/shared/datasources/websocket-datasource.js +0 -54
  616. package/esm2015/lib/datasource/shared/datasources/wfs-datasource.interface.js +0 -2
  617. package/esm2015/lib/datasource/shared/datasources/wfs-datasource.js +0 -71
  618. package/esm2015/lib/datasource/shared/datasources/wfs.service.js +0 -153
  619. package/esm2015/lib/datasource/shared/datasources/wms-datasource.interface.js +0 -2
  620. package/esm2015/lib/datasource/shared/datasources/wms-datasource.js +0 -202
  621. package/esm2015/lib/datasource/shared/datasources/wms-wfs.utils.js +0 -207
  622. package/esm2015/lib/datasource/shared/datasources/wmts-datasource.interface.js +0 -2
  623. package/esm2015/lib/datasource/shared/datasources/wmts-datasource.js +0 -16
  624. package/esm2015/lib/datasource/shared/datasources/xyz-datasource.interface.js +0 -2
  625. package/esm2015/lib/datasource/shared/datasources/xyz-datasource.js +0 -9
  626. package/esm2015/lib/datasource/shared/index.js +0 -5
  627. package/esm2015/lib/datasource/shared/options/index.js +0 -5
  628. package/esm2015/lib/datasource/shared/options/options-api.interface.js +0 -2
  629. package/esm2015/lib/datasource/shared/options/options-api.providers.js +0 -15
  630. package/esm2015/lib/datasource/shared/options/options-api.service.js +0 -81
  631. package/esm2015/lib/datasource/shared/options/options.service.js +0 -3
  632. package/esm2015/lib/datasource/utils/esri-style-generator.js +0 -357
  633. package/esm2015/lib/datasource/utils/index.js +0 -3
  634. package/esm2015/lib/datasource/utils/tilegrid.js +0 -20
  635. package/esm2015/lib/directions/directions-buttons/directions-buttons.component.js +0 -229
  636. package/esm2015/lib/directions/directions-buttons/index.js +0 -2
  637. package/esm2015/lib/directions/directions-inputs/directions-inputs.component.js +0 -300
  638. package/esm2015/lib/directions/directions-inputs/index.js +0 -2
  639. package/esm2015/lib/directions/directions-results/directions-results.component.js +0 -204
  640. package/esm2015/lib/directions/directions-results/index.js +0 -2
  641. package/esm2015/lib/directions/directions-sources/directions-source.interface.js +0 -2
  642. package/esm2015/lib/directions/directions-sources/directions-source.js +0 -3
  643. package/esm2015/lib/directions/directions-sources/directions-source.provider.js +0 -16
  644. package/esm2015/lib/directions/directions-sources/index.js +0 -5
  645. package/esm2015/lib/directions/directions-sources/osrm-directions-source.js +0 -99
  646. package/esm2015/lib/directions/directions.component.js +0 -316
  647. package/esm2015/lib/directions/directions.module.js +0 -104
  648. package/esm2015/lib/directions/index.js +0 -7
  649. package/esm2015/lib/directions/shared/directions-source.service.js +0 -17
  650. package/esm2015/lib/directions/shared/directions.enum.js +0 -28
  651. package/esm2015/lib/directions/shared/directions.interface.js +0 -2
  652. package/esm2015/lib/directions/shared/directions.service.js +0 -29
  653. package/esm2015/lib/directions/shared/directions.utils.js +0 -510
  654. package/esm2015/lib/directions/shared/index.js +0 -6
  655. package/esm2015/lib/directions/shared/store.js +0 -24
  656. package/esm2015/lib/download/download-button/download-button.component.js +0 -66
  657. package/esm2015/lib/download/download-button/index.js +0 -2
  658. package/esm2015/lib/download/download.module.js +0 -44
  659. package/esm2015/lib/download/index.js +0 -3
  660. package/esm2015/lib/download/shared/download.interface.js +0 -2
  661. package/esm2015/lib/download/shared/download.service.js +0 -65
  662. package/esm2015/lib/download/shared/index.js +0 -3
  663. package/esm2015/lib/draw/draw/draw-popup.component.js +0 -63
  664. package/esm2015/lib/draw/draw/draw-shorcuts.component.js +0 -64
  665. package/esm2015/lib/draw/draw/draw.component.js +0 -637
  666. package/esm2015/lib/draw/draw/draw.module.js +0 -102
  667. package/esm2015/lib/draw/drawingTool.module.js +0 -20
  668. package/esm2015/lib/draw/index.js +0 -3
  669. package/esm2015/lib/draw/shared/draw-icon.service.js +0 -27
  670. package/esm2015/lib/draw/shared/draw-style.service.js +0 -154
  671. package/esm2015/lib/draw/shared/draw.enum.js +0 -8
  672. package/esm2015/lib/draw/shared/draw.interface.js +0 -2
  673. package/esm2015/lib/draw/shared/draw.utils.js +0 -104
  674. package/esm2015/lib/draw/shared/index.js +0 -6
  675. package/esm2015/lib/feature/feature-details/feature-details.component.js +0 -317
  676. package/esm2015/lib/feature/feature-details/feature-details.directive.js +0 -109
  677. package/esm2015/lib/feature/feature-details/feature-details.module.js +0 -50
  678. package/esm2015/lib/feature/feature-form/feature-form.component.js +0 -117
  679. package/esm2015/lib/feature/feature-form/feature-form.module.js +0 -36
  680. package/esm2015/lib/feature/feature.module.js +0 -30
  681. package/esm2015/lib/feature/index.js +0 -4
  682. package/esm2015/lib/feature/shared/feature.enums.js +0 -9
  683. package/esm2015/lib/feature/shared/feature.interfaces.js +0 -2
  684. package/esm2015/lib/feature/shared/feature.utils.js +0 -348
  685. package/esm2015/lib/feature/shared/index.js +0 -7
  686. package/esm2015/lib/feature/shared/store.js +0 -112
  687. package/esm2015/lib/feature/shared/strategies/in-map-extent.js +0 -114
  688. package/esm2015/lib/feature/shared/strategies/in-map-resolution.js +0 -94
  689. package/esm2015/lib/feature/shared/strategies/index.js +0 -6
  690. package/esm2015/lib/feature/shared/strategies/loading-layer.js +0 -104
  691. package/esm2015/lib/feature/shared/strategies/loading.js +0 -133
  692. package/esm2015/lib/feature/shared/strategies/selection.js +0 -370
  693. package/esm2015/lib/feature/shared/strategies.utils.js +0 -37
  694. package/esm2015/lib/filter/filter.module.js +0 -287
  695. package/esm2015/lib/filter/index.js +0 -16
  696. package/esm2015/lib/filter/ogc-filter-button/index.js +0 -2
  697. package/esm2015/lib/filter/ogc-filter-button/ogc-filter-button.component.js +0 -136
  698. package/esm2015/lib/filter/ogc-filter-form/index.js +0 -2
  699. package/esm2015/lib/filter/ogc-filter-form/ogc-filter-form.component.js +0 -657
  700. package/esm2015/lib/filter/ogc-filter-selection/index.js +0 -2
  701. package/esm2015/lib/filter/ogc-filter-selection/ogc-filter-selection.component.js +0 -993
  702. package/esm2015/lib/filter/ogc-filter-time/index.js +0 -3
  703. package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.js +0 -185
  704. package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time.component.js +0 -898
  705. package/esm2015/lib/filter/ogc-filterable-form/index.js +0 -2
  706. package/esm2015/lib/filter/ogc-filterable-form/ogc-filterable-form.component.js +0 -62
  707. package/esm2015/lib/filter/ogc-filterable-item/index.js +0 -2
  708. package/esm2015/lib/filter/ogc-filterable-item/ogc-filterable-item.component.js +0 -306
  709. package/esm2015/lib/filter/ogc-filterable-list/index.js +0 -3
  710. package/esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.js +0 -31
  711. package/esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list.component.js +0 -35
  712. package/esm2015/lib/filter/shared/filterable-datasource.pipe.js +0 -54
  713. package/esm2015/lib/filter/shared/index.js +0 -12
  714. package/esm2015/lib/filter/shared/ogc-filter-time.service.js +0 -73
  715. package/esm2015/lib/filter/shared/ogc-filter.enum.js +0 -30
  716. package/esm2015/lib/filter/shared/ogc-filter.interface.js +0 -2
  717. package/esm2015/lib/filter/shared/ogc-filter.js +0 -682
  718. package/esm2015/lib/filter/shared/ogc-filter.service.js +0 -46
  719. package/esm2015/lib/filter/shared/spatial-filter.enum.js +0 -23
  720. package/esm2015/lib/filter/shared/spatial-filter.interface.js +0 -2
  721. package/esm2015/lib/filter/shared/spatial-filter.service.js +0 -269
  722. package/esm2015/lib/filter/shared/time-filter.enum.js +0 -13
  723. package/esm2015/lib/filter/shared/time-filter.interface.js +0 -2
  724. package/esm2015/lib/filter/shared/time-filter.service.js +0 -107
  725. package/esm2015/lib/filter/spatial-filter/spatial-filter-item/index.js +0 -2
  726. package/esm2015/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.js +0 -1108
  727. package/esm2015/lib/filter/spatial-filter/spatial-filter-list/index.js +0 -2
  728. package/esm2015/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.js +0 -224
  729. package/esm2015/lib/filter/spatial-filter/spatial-filter-type/index.js +0 -2
  730. package/esm2015/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.js +0 -157
  731. package/esm2015/lib/filter/time-filter-button/index.js +0 -2
  732. package/esm2015/lib/filter/time-filter-button/time-filter-button.component.js +0 -83
  733. package/esm2015/lib/filter/time-filter-form/index.js +0 -2
  734. package/esm2015/lib/filter/time-filter-form/time-filter-form.component.js +0 -772
  735. package/esm2015/lib/filter/time-filter-item/index.js +0 -2
  736. package/esm2015/lib/filter/time-filter-item/time-filter-item.component.js +0 -126
  737. package/esm2015/lib/filter/time-filter-list/index.js +0 -3
  738. package/esm2015/lib/filter/time-filter-list/time-filter-list-binding.directive.js +0 -31
  739. package/esm2015/lib/filter/time-filter-list/time-filter-list.component.js +0 -43
  740. package/esm2015/lib/geo.module.js +0 -102
  741. package/esm2015/lib/geometry/geometry-form-field/geometry-form-field-input.component.js +0 -515
  742. package/esm2015/lib/geometry/geometry-form-field/geometry-form-field.component.js +0 -199
  743. package/esm2015/lib/geometry/geometry-form-field/geometry-form-field.module.js +0 -66
  744. package/esm2015/lib/geometry/geometry.module.js +0 -29
  745. package/esm2015/lib/geometry/index.js +0 -4
  746. package/esm2015/lib/geometry/shared/controls/draw.js +0 -271
  747. package/esm2015/lib/geometry/shared/controls/index.js +0 -4
  748. package/esm2015/lib/geometry/shared/controls/modify.js +0 -521
  749. package/esm2015/lib/geometry/shared/controls/slice.js +0 -177
  750. package/esm2015/lib/geometry/shared/geometry.errors.js +0 -26
  751. package/esm2015/lib/geometry/shared/geometry.interfaces.js +0 -2
  752. package/esm2015/lib/geometry/shared/geometry.utils.js +0 -122
  753. package/esm2015/lib/geometry/shared/index.js +0 -5
  754. package/esm2015/lib/import-export/export-button/export-button.component.js +0 -70
  755. package/esm2015/lib/import-export/export-button/index.js +0 -2
  756. package/esm2015/lib/import-export/import-export/import-export.component.js +0 -1238
  757. package/esm2015/lib/import-export/import-export/index.js +0 -2
  758. package/esm2015/lib/import-export/import-export.module.js +0 -95
  759. package/esm2015/lib/import-export/index.js +0 -5
  760. package/esm2015/lib/import-export/shared/drop-geo-file.directive.js +0 -136
  761. package/esm2015/lib/import-export/shared/export.errors.js +0 -15
  762. package/esm2015/lib/import-export/shared/export.interface.js +0 -2
  763. package/esm2015/lib/import-export/shared/export.service.js +0 -187
  764. package/esm2015/lib/import-export/shared/export.type.js +0 -4
  765. package/esm2015/lib/import-export/shared/export.utils.js +0 -55
  766. package/esm2015/lib/import-export/shared/import.errors.js +0 -39
  767. package/esm2015/lib/import-export/shared/import.interface.js +0 -2
  768. package/esm2015/lib/import-export/shared/import.service.js +0 -195
  769. package/esm2015/lib/import-export/shared/import.utils.js +0 -207
  770. package/esm2015/lib/import-export/shared/index.js +0 -11
  771. package/esm2015/lib/import-export/style-list/index.js +0 -5
  772. package/esm2015/lib/import-export/style-list/style-list.interface.js +0 -2
  773. package/esm2015/lib/import-export/style-list/style-list.module.js +0 -23
  774. package/esm2015/lib/import-export/style-list/style-list.provider.js +0 -21
  775. package/esm2015/lib/import-export/style-list/style-list.service.js +0 -51
  776. package/esm2015/lib/layer/index.js +0 -10
  777. package/esm2015/lib/layer/layer-item/index.js +0 -2
  778. package/esm2015/lib/layer/layer-item/layer-item.component.js +0 -298
  779. package/esm2015/lib/layer/layer-legend/index.js +0 -2
  780. package/esm2015/lib/layer/layer-legend/layer-legend.component.js +0 -394
  781. package/esm2015/lib/layer/layer-legend-item/index.js +0 -2
  782. package/esm2015/lib/layer/layer-legend-item/layer-legend-item.component.js +0 -91
  783. package/esm2015/lib/layer/layer-legend-list/index.js +0 -3
  784. package/esm2015/lib/layer/layer-legend-list/layer-legend-list-binding.directive.js +0 -48
  785. package/esm2015/lib/layer/layer-legend-list/layer-legend-list.component.js +0 -200
  786. package/esm2015/lib/layer/layer-list/index.js +0 -4
  787. package/esm2015/lib/layer/layer-list/layer-list-binding.directive.js +0 -59
  788. package/esm2015/lib/layer/layer-list/layer-list.component.js +0 -1043
  789. package/esm2015/lib/layer/layer-list/layer-list.enum.js +0 -19
  790. package/esm2015/lib/layer/layer-list-tool/index.js +0 -5
  791. package/esm2015/lib/layer/layer-list-tool/layer-list-tool.component.js +0 -176
  792. package/esm2015/lib/layer/layer-list-tool/layer-list-tool.enum.js +0 -7
  793. package/esm2015/lib/layer/layer-list-tool/layer-list-tool.interface.js +0 -2
  794. package/esm2015/lib/layer/layer-list-tool/layer-list-tool.service.js +0 -22
  795. package/esm2015/lib/layer/layer.module.js +0 -174
  796. package/esm2015/lib/layer/shared/clusterParam.js +0 -2
  797. package/esm2015/lib/layer/shared/index.js +0 -7
  798. package/esm2015/lib/layer/shared/layer.enums.js +0 -2
  799. package/esm2015/lib/layer/shared/layer.service.js +0 -162
  800. package/esm2015/lib/layer/shared/layers/any-layer.interface.js +0 -2
  801. package/esm2015/lib/layer/shared/layers/any-layer.js +0 -2
  802. package/esm2015/lib/layer/shared/layers/image-layer.interface.js +0 -2
  803. package/esm2015/lib/layer/shared/layers/image-layer.js +0 -68
  804. package/esm2015/lib/layer/shared/layers/index.js +0 -13
  805. package/esm2015/lib/layer/shared/layers/layer.interface.js +0 -17
  806. package/esm2015/lib/layer/shared/layers/layer.js +0 -169
  807. package/esm2015/lib/layer/shared/layers/tile-layer.interface.js +0 -2
  808. package/esm2015/lib/layer/shared/layers/tile-layer.js +0 -47
  809. package/esm2015/lib/layer/shared/layers/vector-layer.interface.js +0 -2
  810. package/esm2015/lib/layer/shared/layers/vector-layer.js +0 -325
  811. package/esm2015/lib/layer/shared/layers/vectortile-layer.interface.js +0 -2
  812. package/esm2015/lib/layer/shared/layers/vectortile-layer.js +0 -104
  813. package/esm2015/lib/layer/shared/style.service.js +0 -289
  814. package/esm2015/lib/layer/shared/vector-style.interface.js +0 -2
  815. package/esm2015/lib/layer/track-feature-button/index.js +0 -2
  816. package/esm2015/lib/layer/track-feature-button/track-feature-button.component.js +0 -64
  817. package/esm2015/lib/layer/utils/image-watcher.js +0 -62
  818. package/esm2015/lib/layer/utils/index.js +0 -7
  819. package/esm2015/lib/layer/utils/layer.utils.js +0 -11
  820. package/esm2015/lib/layer/utils/layerSync-watcher.js +0 -249
  821. package/esm2015/lib/layer/utils/outputLegend.js +0 -25
  822. package/esm2015/lib/layer/utils/tile-watcher.js +0 -50
  823. package/esm2015/lib/layer/utils/vector-watcher.js +0 -48
  824. package/esm2015/lib/map/baselayers-switcher/baselayers-switcher.animation.js +0 -20
  825. package/esm2015/lib/map/baselayers-switcher/baselayers-switcher.component.js +0 -105
  826. package/esm2015/lib/map/baselayers-switcher/index.js +0 -3
  827. package/esm2015/lib/map/baselayers-switcher/mini-basemap.component.js +0 -137
  828. package/esm2015/lib/map/geolocate-button/geolocate-button.component.js +0 -47
  829. package/esm2015/lib/map/geolocate-button/index.js +0 -2
  830. package/esm2015/lib/map/home-extent-button/home-extent-button.component.js +0 -69
  831. package/esm2015/lib/map/index.js +0 -13
  832. package/esm2015/lib/map/info-section/index.js +0 -2
  833. package/esm2015/lib/map/info-section/info-section.component.js +0 -36
  834. package/esm2015/lib/map/map-browser/index.js +0 -2
  835. package/esm2015/lib/map/map-browser/map-browser.component.js +0 -70
  836. package/esm2015/lib/map/map-center/index.js +0 -2
  837. package/esm2015/lib/map/map-center/map-center.component.js +0 -55
  838. package/esm2015/lib/map/map.module.js +0 -124
  839. package/esm2015/lib/map/menu-button/index.js +0 -2
  840. package/esm2015/lib/map/menu-button/menu-button.component.js +0 -66
  841. package/esm2015/lib/map/offline-button/index.js +0 -2
  842. package/esm2015/lib/map/offline-button/offline-button.component.js +0 -84
  843. package/esm2015/lib/map/rotation-button/index.js +0 -2
  844. package/esm2015/lib/map/rotation-button/rotation-button.component.js +0 -97
  845. package/esm2015/lib/map/shared/controllers/controller.js +0 -42
  846. package/esm2015/lib/map/shared/controllers/index.js +0 -3
  847. package/esm2015/lib/map/shared/controllers/view.js +0 -326
  848. package/esm2015/lib/map/shared/hover-feature.directive.js +0 -508
  849. package/esm2015/lib/map/shared/index.js +0 -13
  850. package/esm2015/lib/map/shared/map-pointer-position.directive.js +0 -107
  851. package/esm2015/lib/map/shared/map.enums.js +0 -6
  852. package/esm2015/lib/map/shared/map.interface.js +0 -2
  853. package/esm2015/lib/map/shared/map.js +0 -538
  854. package/esm2015/lib/map/shared/map.service.js +0 -29
  855. package/esm2015/lib/map/shared/map.utils.js +0 -459
  856. package/esm2015/lib/map/shared/mapOffline.directive.js +0 -163
  857. package/esm2015/lib/map/shared/projection.interfaces.js +0 -2
  858. package/esm2015/lib/map/shared/projection.service.js +0 -65
  859. package/esm2015/lib/map/shared/projection.utils.js +0 -64
  860. package/esm2015/lib/map/swipe-control/index.js +0 -2
  861. package/esm2015/lib/map/swipe-control/swipe-control.component.js +0 -199
  862. package/esm2015/lib/map/utils/layer-watcher.js +0 -58
  863. package/esm2015/lib/map/zoom-button/index.js +0 -2
  864. package/esm2015/lib/map/zoom-button/zoom-button.component.js +0 -46
  865. package/esm2015/lib/measure/index.js +0 -4
  866. package/esm2015/lib/measure/measure.module.js +0 -20
  867. package/esm2015/lib/measure/measurer/measure-format.pipe.js +0 -37
  868. package/esm2015/lib/measure/measurer/measurer-dialog.component.js +0 -220
  869. package/esm2015/lib/measure/measurer/measurer-item.component.js +0 -148
  870. package/esm2015/lib/measure/measurer/measurer.component.js +0 -1053
  871. package/esm2015/lib/measure/measurer/measurer.module.js +0 -96
  872. package/esm2015/lib/measure/shared/index.js +0 -4
  873. package/esm2015/lib/measure/shared/measure.enum.js +0 -37
  874. package/esm2015/lib/measure/shared/measure.interfaces.js +0 -2
  875. package/esm2015/lib/measure/shared/measure.utils.js +0 -489
  876. package/esm2015/lib/metadata/index.js +0 -3
  877. package/esm2015/lib/metadata/metadata-button/index.js +0 -2
  878. package/esm2015/lib/metadata/metadata-button/metadata-button.component.js +0 -135
  879. package/esm2015/lib/metadata/metadata.module.js +0 -57
  880. package/esm2015/lib/metadata/shared/index.js +0 -3
  881. package/esm2015/lib/metadata/shared/metadata.interface.js +0 -2
  882. package/esm2015/lib/metadata/shared/metadata.service.js +0 -19
  883. package/esm2015/lib/overlay/index.js +0 -2
  884. package/esm2015/lib/overlay/overlay.module.js +0 -23
  885. package/esm2015/lib/overlay/shared/index.js +0 -7
  886. package/esm2015/lib/overlay/shared/overlay-marker-style.utils.js +0 -69
  887. package/esm2015/lib/overlay/shared/overlay.directive.js +0 -33
  888. package/esm2015/lib/overlay/shared/overlay.enum.js +0 -8
  889. package/esm2015/lib/overlay/shared/overlay.js +0 -130
  890. package/esm2015/lib/overlay/shared/overlay.service.js +0 -27
  891. package/esm2015/lib/overlay/shared/overlay.utils.js +0 -103
  892. package/esm2015/lib/print/index.js +0 -4
  893. package/esm2015/lib/print/print/print.component.js +0 -126
  894. package/esm2015/lib/print/print-form/index.js +0 -2
  895. package/esm2015/lib/print/print-form/print-form.component.js +0 -447
  896. package/esm2015/lib/print/print.module.js +0 -67
  897. package/esm2015/lib/print/shared/index.js +0 -4
  898. package/esm2015/lib/print/shared/print.interface.js +0 -2
  899. package/esm2015/lib/print/shared/print.service.js +0 -814
  900. package/esm2015/lib/print/shared/print.type.js +0 -30
  901. package/esm2015/lib/query/index.js +0 -2
  902. package/esm2015/lib/query/query.module.js +0 -28
  903. package/esm2015/lib/query/shared/index.js +0 -7
  904. package/esm2015/lib/query/shared/query-search-source.js +0 -35
  905. package/esm2015/lib/query/shared/query-search-source.providers.js +0 -22
  906. package/esm2015/lib/query/shared/query.directive.js +0 -261
  907. package/esm2015/lib/query/shared/query.enums.js +0 -30
  908. package/esm2015/lib/query/shared/query.interfaces.js +0 -2
  909. package/esm2015/lib/query/shared/query.service.js +0 -592
  910. package/esm2015/lib/query/shared/query.utils.js +0 -37
  911. package/esm2015/lib/search/index.js +0 -12
  912. package/esm2015/lib/search/search-bar/search-bar.component.js +0 -496
  913. package/esm2015/lib/search/search-bar/search-bar.module.js +0 -77
  914. package/esm2015/lib/search/search-bar/search-url-param.directive.js +0 -35
  915. package/esm2015/lib/search/search-results/search-results-add-button.component.js +0 -198
  916. package/esm2015/lib/search/search-results/search-results-item.component.js +0 -129
  917. package/esm2015/lib/search/search-results/search-results.component.js +0 -337
  918. package/esm2015/lib/search/search-results/search-results.module.js +0 -79
  919. package/esm2015/lib/search/search-selector/search-selector.component.js +0 -132
  920. package/esm2015/lib/search/search-selector/search-selector.module.js +0 -58
  921. package/esm2015/lib/search/search-settings/search-settings.component.js +0 -435
  922. package/esm2015/lib/search/search-settings/search-settings.module.js +0 -62
  923. package/esm2015/lib/search/search.module.js +0 -69
  924. package/esm2015/lib/search/shared/index.js +0 -9
  925. package/esm2015/lib/search/shared/search-pointer-summary.directive.js +0 -322
  926. package/esm2015/lib/search/shared/search-source-service.providers.js +0 -20
  927. package/esm2015/lib/search/shared/search-source.service.js +0 -47
  928. package/esm2015/lib/search/shared/search.enums.js +0 -4
  929. package/esm2015/lib/search/shared/search.interfaces.js +0 -2
  930. package/esm2015/lib/search/shared/search.service.js +0 -118
  931. package/esm2015/lib/search/shared/search.utils.js +0 -78
  932. package/esm2015/lib/search/shared/sources/cadastre.js +0 -126
  933. package/esm2015/lib/search/shared/sources/cadastre.providers.js +0 -23
  934. package/esm2015/lib/search/shared/sources/coordinates.interfaces.js +0 -2
  935. package/esm2015/lib/search/shared/sources/coordinates.js +0 -147
  936. package/esm2015/lib/search/shared/sources/coordinates.providers.js +0 -40
  937. package/esm2015/lib/search/shared/sources/icherche.interfaces.js +0 -2
  938. package/esm2015/lib/search/shared/sources/icherche.js +0 -756
  939. package/esm2015/lib/search/shared/sources/icherche.providers.js +0 -66
  940. package/esm2015/lib/search/shared/sources/ilayer.interfaces.js +0 -2
  941. package/esm2015/lib/search/shared/sources/ilayer.js +0 -320
  942. package/esm2015/lib/search/shared/sources/ilayer.providers.js +0 -40
  943. package/esm2015/lib/search/shared/sources/index.js +0 -20
  944. package/esm2015/lib/search/shared/sources/nominatim.interfaces.js +0 -2
  945. package/esm2015/lib/search/shared/sources/nominatim.js +0 -253
  946. package/esm2015/lib/search/shared/sources/nominatim.providers.js +0 -23
  947. package/esm2015/lib/search/shared/sources/source.interfaces.js +0 -2
  948. package/esm2015/lib/search/shared/sources/source.js +0 -179
  949. package/esm2015/lib/search/shared/sources/storedqueries.interfaces.js +0 -2
  950. package/esm2015/lib/search/shared/sources/storedqueries.js +0 -425
  951. package/esm2015/lib/search/shared/sources/storedqueries.providers.js +0 -41
  952. package/esm2015/lib/toast/index.js +0 -2
  953. package/esm2015/lib/toast/toast.component.js +0 -119
  954. package/esm2015/lib/toast/toast.module.js +0 -47
  955. package/esm2015/lib/utils/commonVectorStyle.interface.js +0 -2
  956. package/esm2015/lib/utils/commonVectorStyle.js +0 -75
  957. package/esm2015/lib/utils/googleLinks.js +0 -13
  958. package/esm2015/lib/utils/id-generator.js +0 -110
  959. package/esm2015/lib/utils/index.js +0 -6
  960. package/esm2015/lib/utils/osmLinks.js +0 -10
  961. package/esm2015/lib/wkt/index.js +0 -2
  962. package/esm2015/lib/wkt/shared/index.js +0 -2
  963. package/esm2015/lib/wkt/shared/wkt.service.js +0 -239
  964. package/esm2015/lib/wkt/wkt.module.js +0 -22
  965. package/esm2015/lib/workspace/confirmation-popup/confirmation-popup.component.js +0 -56
  966. package/esm2015/lib/workspace/confirmation-popup/confirmation-popup.module.js +0 -38
  967. package/esm2015/lib/workspace/confirmation-popup/index.js +0 -3
  968. package/esm2015/lib/workspace/index.js +0 -8
  969. package/esm2015/lib/workspace/shared/edition-workspace.js +0 -271
  970. package/esm2015/lib/workspace/shared/edition-workspace.service.js +0 -619
  971. package/esm2015/lib/workspace/shared/feature-workspace.js +0 -37
  972. package/esm2015/lib/workspace/shared/feature-workspace.service.js +0 -146
  973. package/esm2015/lib/workspace/shared/index.js +0 -8
  974. package/esm2015/lib/workspace/shared/wfs-workspace.js +0 -37
  975. package/esm2015/lib/workspace/shared/wfs-workspace.service.js +0 -146
  976. package/esm2015/lib/workspace/shared/wms-workspace.service.js +0 -239
  977. package/esm2015/lib/workspace/shared/workspace.utils.js +0 -24
  978. package/esm2015/lib/workspace/widgets/index.js +0 -4
  979. package/esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.component.js +0 -52
  980. package/esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.module.js +0 -38
  981. package/esm2015/lib/workspace/widgets/widgets.js +0 -15
  982. package/esm2015/lib/workspace/workspace-selector/workspace-selector.directive.js +0 -135
  983. package/esm2015/lib/workspace/workspace-selector/workspace-selector.module.js +0 -30
  984. package/esm2015/lib/workspace/workspace-updator/workspace-updator.directive.js +0 -116
  985. package/esm2015/lib/workspace/workspace-updator/workspace-updator.module.js +0 -30
  986. package/esm2015/lib/workspace/workspace.module.js +0 -64
  987. package/esm2015/public_api.js +0 -54
  988. package/fesm2015/igo2-geo.js +0 -40591
  989. package/fesm2015/igo2-geo.js.map +0 -1
@@ -1,508 +0,0 @@
1
- import { Directive, Input, Self, HostListener } from '@angular/core';
2
- import olLayerVectorTile from 'ol/layer/VectorTile';
3
- import olLayerVector from 'ol/layer/Vector';
4
- import olVectorTileSource from 'ol/source/VectorTile';
5
- import OlFeature from 'ol/Feature';
6
- import * as OlStyle from 'ol/style';
7
- import * as OlGeom from 'ol/geom';
8
- import { EntityStore } from '@igo2/common';
9
- import { FeatureDataSource } from '../../datasource/shared/datasources/feature-datasource';
10
- import { VectorLayer } from '../../layer/shared/layers';
11
- import { take } from 'rxjs/operators';
12
- import { tryBindStoreLayer } from '../../feature/shared/feature.utils';
13
- import { FeatureStore } from '../../feature/shared/store';
14
- import { FeatureMotion } from '../../feature/shared/feature.enums';
15
- import { unByKey } from 'ol/Observable';
16
- import RenderFeature from 'ol/render/Feature';
17
- import * as i0 from "@angular/core";
18
- import * as i1 from "../../map/map-browser/map-browser.component";
19
- import * as i2 from "@igo2/core";
20
- import * as i3 from "../../layer/shared/style.service";
21
- /**
22
- * This directive makes the mouse coordinate trigger a reverse search on available search sources.
23
- * The search results are placed into a label, on a cross icon, representing the mouse coordinate.
24
- * By default, no search sources. Config in config file must be defined.
25
- * the layer level.
26
- */
27
- export class HoverFeatureDirective {
28
- constructor(component, mediaService, styleService) {
29
- this.component = component;
30
- this.mediaService = mediaService;
31
- this.styleService = styleService;
32
- this.pointerHoverFeatureStore = new EntityStore([]);
33
- this.selectionMVT = {};
34
- this.hoverFeatureId = 'hoverFeatureId';
35
- /**
36
- * The delay where the mouse must be motionless before trigger the reverse search
37
- */
38
- this.igoHoverFeatureDelay = 1000;
39
- /**
40
- * If the user has enabled or not the directive
41
- */
42
- this.igoHoverFeatureEnabled = false;
43
- }
44
- mouseout() {
45
- clearTimeout(this.lastTimeoutRequest);
46
- this.clearLayer();
47
- }
48
- /**
49
- * IGO map
50
- * @internal
51
- */
52
- get map() {
53
- return this.component.map;
54
- }
55
- get mapProjection() {
56
- return this.component.map.projection;
57
- }
58
- /**
59
- * Start listening to pointermove and reverse search results.
60
- * @internal
61
- */
62
- ngOnInit() {
63
- this.listenToMapPointerMove();
64
- this.subscribeToPointerStore();
65
- this.listenToMapClick();
66
- this.map.status$.pipe(take(1)).subscribe(() => {
67
- this.store = new FeatureStore([], { map: this.map });
68
- this.initStore();
69
- });
70
- // To handle context change without using the contextService.
71
- this.layers$$ = this.map.layers$.subscribe((layers) => {
72
- if (this.store && !layers.find(l => l.id === 'hoverFeatureId')) {
73
- this.initStore();
74
- }
75
- });
76
- }
77
- /**
78
- * Initialize the pointer position store
79
- * @internal
80
- */
81
- initStore() {
82
- const store = this.store;
83
- const layer = new VectorLayer({
84
- isIgoInternalLayer: true,
85
- id: 'hoverFeatureId',
86
- title: 'hoverFeature',
87
- zIndex: 900,
88
- source: new FeatureDataSource(),
89
- showInLayerList: false,
90
- exportable: false,
91
- browsable: false,
92
- style: hoverFeatureMarker
93
- });
94
- tryBindStoreLayer(store, layer);
95
- this.selectionLayer = new olLayerVectorTile({
96
- map: this.map.ol,
97
- zIndex: 901,
98
- renderMode: "vector",
99
- declutter: true,
100
- source: new olVectorTileSource({}),
101
- style: (feature) => {
102
- if (this.mvtStyleOptions && feature.getId() in this.selectionMVT) {
103
- return this.createHoverStyle(feature, this.mvtStyleOptions);
104
- }
105
- }
106
- });
107
- }
108
- createHoverStyle(feature, hoverStyle) {
109
- var _a;
110
- const localHoverStyle = Object.assign({}, hoverStyle);
111
- let label = hoverStyle.label ? hoverStyle.label.attribute : undefined;
112
- let hasLabelStyle = ((_a = hoverStyle.label) === null || _a === void 0 ? void 0 : _a.style) ? true : false;
113
- if (!feature.get('_isLabel')) {
114
- localHoverStyle.label = undefined;
115
- hasLabelStyle = false;
116
- label = undefined;
117
- }
118
- else {
119
- // clear the style for label....
120
- const size = localHoverStyle.data ? localHoverStyle.data.length : 0;
121
- const radius = [];
122
- const stroke = [];
123
- const width = [];
124
- const fill = [];
125
- for (let i = 0; i < size; i++) {
126
- radius.push(0);
127
- stroke.push('rgba(255, 255, 255, 0)');
128
- width.push(0);
129
- fill.push('rgba(255, 255, 255, 0)');
130
- }
131
- localHoverStyle.radius = radius;
132
- localHoverStyle.stroke = stroke;
133
- localHoverStyle.width = width;
134
- localHoverStyle.fill = fill;
135
- }
136
- if (!hasLabelStyle && label) {
137
- localHoverStyle.label.style =
138
- {
139
- textAlign: 'left',
140
- textBaseline: 'top',
141
- font: '12px Calibri,sans-serif',
142
- fill: { color: '#000' },
143
- backgroundFill: { color: 'rgba(255, 255, 255, 0.5)' },
144
- backgroundStroke: { color: 'rgba(200, 200, 200, 0.75)', width: 2 },
145
- stroke: { color: '#fff', width: 3 },
146
- overflow: true,
147
- offsetX: 10,
148
- offsetY: 20,
149
- padding: [2.5, 2.5, 2.5, 2.5]
150
- };
151
- }
152
- return this.styleService.createStyleByAttribute(feature, localHoverStyle);
153
- }
154
- /**
155
- * Stop listening to pointermove and reverse search results.
156
- * @internal
157
- */
158
- ngOnDestroy() {
159
- this.unlistenToMapPointerMove();
160
- this.unsubscribeToPointerStore();
161
- this.unlistenToMapSingleClick();
162
- this.layers$$.unsubscribe();
163
- }
164
- /**
165
- * Subscribe to pointermove result store
166
- * @internal
167
- */
168
- subscribeToPointerStore() {
169
- this.store$$ = this.pointerHoverFeatureStore.entities$.subscribe(resultsUnderPointerPosition => {
170
- this.entitiesToPointerOverlay(resultsUnderPointerPosition);
171
- });
172
- }
173
- /**
174
- * convert store entities to a pointer position overlay with label summary on.
175
- * @param event OL map browser pointer event
176
- */
177
- entitiesToPointerOverlay(resultsUnderPointerPosition) {
178
- this.addFeatureOverlay(resultsUnderPointerPosition);
179
- }
180
- /**
181
- * On map pointermove
182
- */
183
- listenToMapPointerMove() {
184
- this.pointerMoveListener = this.map.ol.on('pointermove', (event) => this.onMapEvent(event));
185
- }
186
- /**
187
- * On map singleclick
188
- */
189
- listenToMapClick() {
190
- this.singleClickMapListener = this.map.ol.on('singleclick', (event) => this.onMapSingleClickEvent(event));
191
- }
192
- /**
193
- * Unsubscribe to pointer store.
194
- * @internal
195
- */
196
- unsubscribeToPointerStore() {
197
- this.store$$.unsubscribe();
198
- }
199
- /**
200
- * Stop listening for map pointermove
201
- * @internal
202
- */
203
- unlistenToMapPointerMove() {
204
- unByKey(this.pointerMoveListener);
205
- this.pointerMoveListener = undefined;
206
- }
207
- /**
208
- * Stop listening for map singleclick
209
- * @internal
210
- */
211
- unlistenToMapSingleClick() {
212
- unByKey(this.singleClickMapListener);
213
- this.singleClickMapListener = undefined;
214
- }
215
- /**
216
- * Trigger clear layer on singleclick.
217
- * @param event OL map browser singleclick event
218
- */
219
- onMapSingleClickEvent(event) {
220
- this.clearLayer();
221
- }
222
- /**
223
- * Trigger hover when the mouse is motionless during the defined delay (pointerMoveDelay).
224
- * @param event OL map browser pointer event
225
- */
226
- onMapEvent(event) {
227
- if (event.dragging || !this.igoHoverFeatureEnabled ||
228
- this.mediaService.isTouchScreen()) {
229
- this.clearLayer();
230
- return;
231
- }
232
- if (typeof this.lastTimeoutRequest !== 'undefined') { // cancel timeout when the mouse moves
233
- clearTimeout(this.lastTimeoutRequest);
234
- }
235
- this.clearLayer();
236
- let maximumZindex = -Infinity;
237
- let topMostOlLayer;
238
- const pixel = this.map.ol.getPixelFromCoordinate(event.coordinate);
239
- this.lastTimeoutRequest = setTimeout(() => {
240
- // retrieve the topmost layer with feature to only apply the hover on this layer.
241
- this.map.ol.forEachFeatureAtPixel(pixel, (mapFeature, layerOL) => {
242
- if (!layerOL) {
243
- return;
244
- }
245
- const igoLayer = this.map.getLayerByOlUId(layerOL.ol_uid);
246
- if (!this.canProcessHover(igoLayer)) {
247
- return;
248
- }
249
- if (igoLayer.zIndex <= maximumZindex) {
250
- return;
251
- }
252
- maximumZindex = igoLayer.zIndex;
253
- topMostOlLayer = layerOL;
254
- }, {
255
- hitTolerance: 10, layerFilter: olLayer => olLayer instanceof olLayerVector || olLayer instanceof olLayerVectorTile
256
- });
257
- if (!topMostOlLayer) {
258
- return;
259
- }
260
- this.clearLayer();
261
- this.map.ol.forEachFeatureAtPixel(pixel, (mapFeature, layerOL) => {
262
- var _a, _b, _c;
263
- if (mapFeature.get('hoverSummary') === undefined) {
264
- let igoLayer;
265
- if (layerOL instanceof olLayerVector) {
266
- igoLayer = this.map.getLayerByOlUId(layerOL.ol_uid);
267
- if (!this.canProcessHover(igoLayer)) {
268
- return;
269
- }
270
- let localOlFeature = this.handleRenderFeature(mapFeature);
271
- this.setLayerStyleFromOptions(igoLayer, localOlFeature);
272
- const featuresToLoad = [localOlFeature];
273
- localOlFeature.set("_isLabel", false);
274
- const myLabelOlFeature = new OlFeature();
275
- myLabelOlFeature.setProperties(localOlFeature.getProperties());
276
- const labelGeom = localOlFeature.getGeometry().getType() === 'Point' ? localOlFeature.getGeometry() : new OlGeom.Point(event.coordinate);
277
- myLabelOlFeature.setGeometry(labelGeom);
278
- myLabelOlFeature.setId(localOlFeature.getId());
279
- myLabelOlFeature.set("_isLabel", true);
280
- this.setLayerStyleFromOptions(igoLayer, myLabelOlFeature);
281
- featuresToLoad.push(myLabelOlFeature);
282
- this.pointerHoverFeatureStore.load(featuresToLoad);
283
- return true;
284
- }
285
- if (layerOL instanceof olLayerVectorTile) {
286
- igoLayer = this.map.getLayerByOlUId(layerOL.ol_uid);
287
- if (!this.canProcessHover(igoLayer)) {
288
- return;
289
- }
290
- if ((_b = (_a = igoLayer === null || igoLayer === void 0 ? void 0 : igoLayer.options) === null || _a === void 0 ? void 0 : _a.styleByAttribute) === null || _b === void 0 ? void 0 : _b.hoverStyle) {
291
- this.mvtStyleOptions = igoLayer.options.styleByAttribute.hoverStyle;
292
- }
293
- else if ((_c = igoLayer === null || igoLayer === void 0 ? void 0 : igoLayer.options) === null || _c === void 0 ? void 0 : _c.hoverStyle) {
294
- this.mvtStyleOptions = igoLayer.options.hoverStyle;
295
- }
296
- this.selectionLayer.setSource(layerOL.getSource());
297
- layerOL.getFeatures(event.pixel).then((mvtFeatures) => {
298
- if (!mvtFeatures.length) {
299
- this.selectionMVT = {};
300
- this.selectionLayer.changed();
301
- this.clearLayer();
302
- return;
303
- }
304
- const feature = mvtFeatures[0];
305
- if (!feature) {
306
- this.clearLayer();
307
- return;
308
- }
309
- let localOlFeature = this.handleRenderFeature(feature);
310
- localOlFeature.set("_isLabel", false);
311
- const myLabelOlFeature = new OlFeature();
312
- myLabelOlFeature.setProperties(localOlFeature.getProperties());
313
- const labelGeom = localOlFeature.getGeometry().getType() === 'Point' ? localOlFeature.getGeometry() : new OlGeom.Point(event.coordinate);
314
- myLabelOlFeature.setGeometry(labelGeom);
315
- myLabelOlFeature.setId(localOlFeature.getId());
316
- myLabelOlFeature.set("_isLabel", true);
317
- this.setLayerStyleFromOptions(igoLayer, myLabelOlFeature);
318
- this.pointerHoverFeatureStore.load([myLabelOlFeature]);
319
- this.selectionMVT[feature.getId()] = localOlFeature;
320
- this.selectionLayer.changed();
321
- });
322
- }
323
- }
324
- return true;
325
- }, {
326
- hitTolerance: 10, layerFilter: olLayer => olLayer === topMostOlLayer
327
- });
328
- }, this.igoHoverFeatureDelay);
329
- }
330
- canProcessHover(igoLayer) {
331
- if (!igoLayer) {
332
- return false;
333
- }
334
- if (!igoLayer.visible) {
335
- return false;
336
- }
337
- if (!igoLayer.options) {
338
- return false;
339
- }
340
- if (!igoLayer.options.styleByAttribute && !igoLayer.options.hoverStyle) {
341
- return false;
342
- }
343
- if ((igoLayer.options.styleByAttribute && !igoLayer.options.styleByAttribute.hoverStyle) &&
344
- !igoLayer.options.hoverStyle) {
345
- return false;
346
- }
347
- return true;
348
- }
349
- handleRenderFeature(feature) {
350
- let localFeature;
351
- if (feature instanceof RenderFeature) {
352
- localFeature = new OlFeature({
353
- geometry: this.getGeometry(feature)
354
- });
355
- localFeature.setId(feature.getId());
356
- }
357
- else if (feature instanceof OlFeature) {
358
- localFeature = feature;
359
- }
360
- return localFeature;
361
- }
362
- /**
363
- * Add a feature to the pointer store
364
- * @param text string
365
- */
366
- addFeatureOverlay(hoverEntity) {
367
- if (hoverEntity.length > 0) {
368
- const result = hoverEntity[0];
369
- this.clearLayer();
370
- const feature = new OlFeature({
371
- geometry: result.getGeometry(),
372
- meta: { id: this.hoverFeatureId },
373
- hoverSummary: this.getHoverSummary(result.getProperties())
374
- });
375
- this.store.setLayerOlFeatures([feature], FeatureMotion.None);
376
- }
377
- }
378
- setLayerStyleFromOptions(igoLayer, feature) {
379
- var _a, _b, _c;
380
- if ((_b = (_a = igoLayer === null || igoLayer === void 0 ? void 0 : igoLayer.options) === null || _a === void 0 ? void 0 : _a.styleByAttribute) === null || _b === void 0 ? void 0 : _b.hoverStyle) {
381
- this.store.layer.ol.setStyle(this.createHoverStyle(feature, igoLayer.options.styleByAttribute.hoverStyle));
382
- return;
383
- }
384
- if ((_c = igoLayer === null || igoLayer === void 0 ? void 0 : igoLayer.options) === null || _c === void 0 ? void 0 : _c.hoverStyle) {
385
- this.store.layer.ol.setStyle(this.createHoverStyle(feature, igoLayer.options.hoverStyle));
386
- }
387
- }
388
- getHoverSummary(properties) {
389
- let summary = '';
390
- for (const [key, value] of Object.entries(properties)) {
391
- if (!key.startsWith('_') && key !== 'geometry') {
392
- summary += `${key}: ${value}` + '\n';
393
- }
394
- }
395
- return summary.length >= 2 ? summary.slice(0, -2) : summary;
396
- }
397
- getGeometry(feature) {
398
- let geom;
399
- if (!feature.getOrientedFlatCoordinates) {
400
- geom = feature.getGeometry();
401
- }
402
- else {
403
- const coords = feature.getOrientedFlatCoordinates();
404
- const flatCoords = [];
405
- coords.forEach((c, idx) => {
406
- if (idx % 2 === 0) {
407
- flatCoords.push([parseFloat(coords[idx]), parseFloat(coords[idx + 1])]);
408
- }
409
- });
410
- // TODO: test MultiX
411
- switch (feature.getType()) {
412
- case 'Point':
413
- geom = new OlGeom.Point(flatCoords);
414
- break;
415
- case 'Polygon':
416
- geom = new OlGeom.Polygon([flatCoords]);
417
- break;
418
- case 'LineString':
419
- geom = new OlGeom.LineString([flatCoords]);
420
- break;
421
- }
422
- }
423
- return geom;
424
- }
425
- /**
426
- * Clear the pointer store features
427
- */
428
- clearLayer() {
429
- this.selectionMVT = {};
430
- if (this.selectionLayer) {
431
- this.selectionLayer.changed();
432
- }
433
- if (this.store) {
434
- this.store.clearLayer();
435
- }
436
- }
437
- }
438
- HoverFeatureDirective.ɵfac = function HoverFeatureDirective_Factory(t) { return new (t || HoverFeatureDirective)(i0.ɵɵdirectiveInject(i1.MapBrowserComponent, 2), i0.ɵɵdirectiveInject(i2.MediaService), i0.ɵɵdirectiveInject(i3.StyleService)); };
439
- HoverFeatureDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: HoverFeatureDirective, selectors: [["", "igoHoverFeature", ""]], hostBindings: function HoverFeatureDirective_HostBindings(rf, ctx) { if (rf & 1) {
440
- i0.ɵɵlistener("mouseout", function HoverFeatureDirective_mouseout_HostBindingHandler() { return ctx.mouseout(); });
441
- } }, inputs: { igoHoverFeatureDelay: "igoHoverFeatureDelay", igoHoverFeatureEnabled: "igoHoverFeatureEnabled" } });
442
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HoverFeatureDirective, [{
443
- type: Directive,
444
- args: [{
445
- selector: '[igoHoverFeature]'
446
- }]
447
- }], function () { return [{ type: i1.MapBrowserComponent, decorators: [{
448
- type: Self
449
- }] }, { type: i2.MediaService }, { type: i3.StyleService }]; }, { igoHoverFeatureDelay: [{
450
- type: Input
451
- }], igoHoverFeatureEnabled: [{
452
- type: Input
453
- }], mouseout: [{
454
- type: HostListener,
455
- args: ['mouseout']
456
- }] }); })();
457
- /**
458
- * Create a default style for the pointer position and it's label summary.
459
- * @param feature OlFeature
460
- * @returns OL style function
461
- */
462
- export function hoverFeatureMarker(feature, resolution) {
463
- const olStyleText = new OlStyle.Style({
464
- text: new OlStyle.Text({
465
- text: feature.get('hoverSummary'),
466
- textAlign: 'left',
467
- textBaseline: 'top',
468
- font: '12px Calibri,sans-serif',
469
- fill: new OlStyle.Fill({ color: '#000' }),
470
- backgroundFill: new OlStyle.Fill({ color: 'rgba(255, 255, 255, 0.5)' }),
471
- backgroundStroke: new OlStyle.Stroke({ color: 'rgba(200, 200, 200, 0.75)', width: 2 }),
472
- stroke: new OlStyle.Stroke({ color: '#fff', width: 3 }),
473
- overflow: true,
474
- offsetX: 10,
475
- offsetY: 20,
476
- padding: [2.5, 2.5, 2.5, 2.5]
477
- })
478
- });
479
- const olStyle = [olStyleText];
480
- switch (feature.getGeometry().getType()) {
481
- case 'Point':
482
- olStyle.push(new OlStyle.Style({
483
- image: new OlStyle.Circle({
484
- radius: 10,
485
- stroke: new OlStyle.Stroke({
486
- color: 'blue',
487
- width: 3
488
- })
489
- })
490
- }));
491
- break;
492
- default:
493
- olStyle.push(new OlStyle.Style({
494
- stroke: new OlStyle.Stroke({
495
- color: 'white',
496
- width: 5
497
- })
498
- }));
499
- olStyle.push(new OlStyle.Style({
500
- stroke: new OlStyle.Stroke({
501
- color: 'blue',
502
- width: 3
503
- })
504
- }));
505
- }
506
- return olStyle;
507
- }
508
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItZmVhdHVyZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tYXAvc2hhcmVkL2hvdmVyLWZlYXR1cmUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUVMLElBQUksRUFFSixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQ25CO0FBQ0gsT0FBTyxpQkFBaUIsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLGFBQWEsTUFBTSxpQkFBaUIsQ0FBQztBQUc1QyxPQUFPLGtCQUFrQixNQUFNLHNCQUFzQixDQUFDO0FBU3RELE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEtBQUssT0FBTyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLEtBQUssTUFBTSxNQUFNLFNBQVMsQ0FBQztBQUVsQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxXQUFXLEVBQTBCLE1BQU0sMkJBQTJCLENBQUM7QUFDaEYsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFHbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLGFBQWEsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7QUFHOUM7Ozs7O0dBS0c7QUFJSCxNQUFNLE9BQU8scUJBQXFCO0lBZ0RoQyxZQUNrQixTQUE4QixFQUN0QyxZ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N0IsTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQztvQkFDekIsS0FBSyxFQUFFLE9BQU87b0JBQ2QsS0FBSyxFQUFFLENBQUM7aUJBQ1QsQ0FBQzthQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQzdCLE1BQU0sRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7b0JBQ3pCLEtBQUssRUFBRSxNQUFNO29CQUNiLEtBQUssRUFBRSxDQUFDO2lCQUNULENBQUM7YUFDSCxDQUFDLENBQUMsQ0FBQztLQUNQO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFFakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgU2VsZixcbiAgT25Jbml0LFxuICBIb3N0TGlzdGVuZXJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbiAgO1xuaW1wb3J0IG9sTGF5ZXJWZWN0b3JUaWxlIGZyb20gJ29sL2xheWVyL1ZlY3RvclRpbGUnO1xuaW1wb3J0IG9sTGF5ZXJWZWN0b3IgZnJvbSAnb2wvbGF5ZXIvVmVjdG9yJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgb2xWZWN0b3JUaWxlU291cmNlIGZyb20gJ29sL3NvdXJjZS9WZWN0b3JUaWxlJztcblxuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sTWFwQnJvd3NlckV2ZW50IH0gZnJvbSAnb2wvTWFwQnJvd3NlckV2ZW50JztcblxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgTWFwQnJvd3NlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL21hcC9tYXAtYnJvd3Nlci9tYXAtYnJvd3Nlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUuaW50ZXJmYWNlcyc7XG5cbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xuaW1wb3J0ICogYXMgT2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XG5pbXBvcnQgKiBhcyBPbEdlb20gZnJvbSAnb2wvZ2VvbSc7XG5cbmltcG9ydCB7IEVudGl0eVN0b3JlIH0gZnJvbSAnQGlnbzIvY29tbW9uJztcbmltcG9ydCB7IEZlYXR1cmVEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvZmVhdHVyZS1kYXRhc291cmNlJztcbmltcG9ydCB7IFZlY3RvckxheWVyLCBMYXllciwgVmVjdG9yVGlsZUxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycyc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgdHJ5QmluZFN0b3JlTGF5ZXIgfSBmcm9tICcuLi8uLi9mZWF0dXJlL3NoYXJlZC9mZWF0dXJlLnV0aWxzJztcbmltcG9ydCB7IEZlYXR1cmVTdG9yZSB9IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkL3N0b3JlJztcbmltcG9ydCB7IEZlYXR1cmVNb3Rpb24gfSBmcm9tICcuLi8uLi9mZWF0dXJlL3NoYXJlZC9mZWF0dXJlLmVudW1zJztcbmltcG9ydCB7IE1lZGlhU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xuaW1wb3J0IHsgU3R5bGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL3N0eWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgdW5CeUtleSB9IGZyb20gJ29sL09ic2VydmFibGUnO1xuaW1wb3J0IFJlbmRlckZlYXR1cmUgZnJvbSAnb2wvcmVuZGVyL0ZlYXR1cmUnO1xuaW1wb3J0IHsgU3R5bGVCeUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC92ZWN0b3Itc3R5bGUuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBUaGlzIGRpcmVjdGl2ZSBtYWtlcyB0aGUgbW91c2UgY29vcmRpbmF0ZSB0cmlnZ2VyIGEgcmV2ZXJzZSBzZWFyY2ggb24gYXZhaWxhYmxlIHNlYXJjaCBzb3VyY2VzLlxuICogVGhlIHNlYXJjaCByZXN1bHRzIGFyZSBwbGFjZWQgaW50byBhIGxhYmVsLCBvbiBhIGNyb3NzIGljb24sIHJlcHJlc2VudGluZyB0aGUgbW91c2UgY29vcmRpbmF0ZS5cbiAqIEJ5IGRlZmF1bHQsIG5vIHNlYXJjaCBzb3VyY2VzLiBDb25maWcgaW4gY29uZmlnIGZpbGUgbXVzdCBiZSBkZWZpbmVkLlxuICogdGhlIGxheWVyIGxldmVsLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbaWdvSG92ZXJGZWF0dXJlXSdcbn0pXG5leHBvcnQgY2xhc3MgSG92ZXJGZWF0dXJlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHB1YmxpYyBzdG9yZTogRmVhdHVyZVN0b3JlPEZlYXR1cmU+O1xuICBwcml2YXRlIHBvaW50ZXJIb3ZlckZlYXR1cmVTdG9yZTogRW50aXR5U3RvcmU8T2xGZWF0dXJlPE9sR2VvbWV0cnk+PiA9IG5ldyBFbnRpdHlTdG9yZTxPbEZlYXR1cmU8T2xHZW9tZXRyeT4+KFtdKTtcbiAgcHJpdmF0ZSBsYXN0VGltZW91dFJlcXVlc3Q7XG4gIHByaXZhdGUgc3RvcmUkJDogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIGxheWVycyQkOiBTdWJzY3JpcHRpb247XG5cbiAgcHJpdmF0ZSBzZWxlY3Rpb25MYXllcjogb2xMYXllclZlY3RvclRpbGU7XG4gIHByaXZhdGUgc2VsZWN0aW9uTVZUID0ge307XG4gIHByaXZhdGUgbXZ0U3R5bGVPcHRpb25zOiBTdHlsZUJ5QXR0cmlidXRlO1xuXG4gIC8qKlxuICAgKiBMaXN0ZW5lciB0byB0aGUgcG9pbnRlciBtb3ZlIGV2ZW50XG4gICAqL1xuICBwcml2YXRlIHBvaW50ZXJNb3ZlTGlzdGVuZXI7XG5cbiAgcHJpdmF0ZSBzaW5nbGVDbGlja01hcExpc3RlbmVyO1xuXG4gIHByaXZhdGUgaG92ZXJGZWF0dXJlSWQ6IHN0cmluZyA9ICdob3ZlckZlYXR1cmVJZCc7XG4gIC8qKlxuICAgKiBUaGUgZGVsYXkgd2hlcmUgdGhlIG1vdXNlIG11c3QgYmUgbW90aW9ubGVzcyBiZWZvcmUgdHJpZ2dlciB0aGUgcmV2ZXJzZSBzZWFyY2hcbiAgICovXG4gIEBJbnB1dCgpIGlnb0hvdmVyRmVhdHVyZURlbGF5OiBudW1iZXIgPSAxMDAwO1xuXG4gIC8qKlxuICAgKiBJZiB0aGUgdXNlciBoYXMgZW5hYmxlZCBvciBub3QgdGhlIGRpcmVjdGl2ZVxuICAgKi9cbiAgQElucHV0KCkgaWdvSG92ZXJGZWF0dXJlRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlb3V0JylcbiAgbW91c2VvdXQoKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0KTtcbiAgICB0aGlzLmNsZWFyTGF5ZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJR08gbWFwXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IG1hcCgpOiBJZ29NYXAge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudC5tYXA7XG4gIH1cblxuICBnZXQgbWFwUHJvamVjdGlvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiAodGhpcy5jb21wb25lbnQubWFwIGFzIElnb01hcCkucHJvamVjdGlvbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgcHJpdmF0ZSBjb21wb25lbnQ6IE1hcEJyb3dzZXJDb21wb25lbnQsXG4gICAgcHJpdmF0ZSBtZWRpYVNlcnZpY2U6IE1lZGlhU2VydmljZSxcbiAgICBwcml2YXRlIHN0eWxlU2VydmljZTogU3R5bGVTZXJ2aWNlLFxuICApIHsgfVxuXG4gIC8qKlxuICAgKiBTdGFydCBsaXN0ZW5pbmcgdG8gcG9pbnRlcm1vdmUgYW5kIHJldmVyc2Ugc2VhcmNoIHJlc3VsdHMuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5saXN0ZW5Ub01hcFBvaW50ZXJNb3ZlKCk7XG4gICAgdGhpcy5zdWJzY3JpYmVUb1BvaW50ZXJTdG9yZSgpO1xuICAgIHRoaXMubGlzdGVuVG9NYXBDbGljaygpO1xuXG4gICAgdGhpcy5tYXAuc3RhdHVzJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnN0b3JlID0gbmV3IEZlYXR1cmVTdG9yZTxGZWF0dXJlPihbXSwgeyBtYXA6IHRoaXMubWFwIH0pO1xuICAgICAgdGhpcy5pbml0U3RvcmUoKTtcbiAgICB9KTtcblxuICAgIC8vIFRvIGhhbmRsZSBjb250ZXh0IGNoYW5nZSB3aXRob3V0IHVzaW5nIHRoZSBjb250ZXh0U2VydmljZS5cbiAgICB0aGlzLmxheWVycyQkID0gdGhpcy5tYXAubGF5ZXJzJC5zdWJzY3JpYmUoKGxheWVyczogTGF5ZXJbXSkgPT4ge1xuICAgICAgaWYgKHRoaXMuc3RvcmUgJiYgIWxheWVycy5maW5kKGwgPT4gbC5pZCA9PT0gJ2hvdmVyRmVhdHVyZUlkJykpIHtcbiAgICAgICAgdGhpcy5pbml0U3RvcmUoKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIHBvaW50ZXIgcG9zaXRpb24gc3RvcmVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIGluaXRTdG9yZSgpIHtcbiAgICBjb25zdCBzdG9yZSA9IHRoaXMuc3RvcmU7XG5cbiAgICBjb25zdCBsYXllciA9IG5ldyBWZWN0b3JMYXllcih7XG4gICAgICBpc0lnb0ludGVybmFsTGF5ZXI6IHRydWUsXG4gICAgICBpZDogJ2hvdmVyRmVhdHVyZUlkJyxcbiAgICAgIHRpdGxlOiAnaG92ZXJGZWF0dXJlJyxcbiAgICAgIHpJbmRleDogOTAwLFxuICAgICAgc291cmNlOiBuZXcgRmVhdHVyZURhdGFTb3VyY2UoKSxcbiAgICAgIHNob3dJbkxheWVyTGlzdDogZmFsc2UsXG4gICAgICBleHBvcnRhYmxlOiBmYWxzZSxcbiAgICAgIGJyb3dzYWJsZTogZmFsc2UsXG4gICAgICBzdHlsZTogaG92ZXJGZWF0dXJlTWFya2VyXG4gICAgfSk7XG4gICAgdHJ5QmluZFN0b3JlTGF5ZXIoc3RvcmUsIGxheWVyKTtcblxuICAgIHRoaXMuc2VsZWN0aW9uTGF5ZXIgPSBuZXcgb2xMYXllclZlY3RvclRpbGUoe1xuICAgICAgbWFwOiB0aGlzLm1hcC5vbCxcbiAgICAgIHpJbmRleDogOTAxLFxuICAgICAgcmVuZGVyTW9kZTogXCJ2ZWN0b3JcIixcbiAgICAgIGRlY2x1dHRlcjogdHJ1ZSxcbiAgICAgIHNvdXJjZTogbmV3IG9sVmVjdG9yVGlsZVNvdXJjZSh7fSksXG4gICAgICBzdHlsZTogKGZlYXR1cmUpID0+IHtcbiAgICAgICAgaWYgKHRoaXMubXZ0U3R5bGVPcHRpb25zICYmIGZlYXR1cmUuZ2V0SWQoKSBpbiB0aGlzLnNlbGVjdGlvbk1WVCkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUhvdmVyU3R5bGUoZmVhdHVyZSwgdGhpcy5tdnRTdHlsZU9wdGlvbnMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBjcmVhdGVIb3ZlclN0eWxlKGZlYXR1cmU6IFJlbmRlckZlYXR1cmUgfCBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sIGhvdmVyU3R5bGU6IFN0eWxlQnlBdHRyaWJ1dGUpIHtcbiAgICBjb25zdCBsb2NhbEhvdmVyU3R5bGUgPSB7IC4uLmhvdmVyU3R5bGUgfTtcbiAgICBsZXQgbGFiZWwgPSBob3ZlclN0eWxlLmxhYmVsID8gaG92ZXJTdHlsZS5sYWJlbC5hdHRyaWJ1dGUgOiB1bmRlZmluZWQ7XG4gICAgbGV0IGhhc0xhYmVsU3R5bGUgPSBob3ZlclN0eWxlLmxhYmVsPy5zdHlsZSA/IHRydWUgOiBmYWxzZTtcblxuICAgIGlmICghZmVhdHVyZS5nZXQoJ19pc0xhYmVsJykpIHtcbiAgICAgIGxvY2FsSG92ZXJTdHlsZS5sYWJlbCA9IHVuZGVmaW5lZDtcbiAgICAgIGhhc0xhYmVsU3R5bGUgPSBmYWxzZTtcbiAgICAgIGxhYmVsID0gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBjbGVhciB0aGUgc3R5bGUgZm9yIGxhYmVsLi4uLlxuICAgICAgY29uc3Qgc2l6ZSA9IGxvY2FsSG92ZXJTdHlsZS5kYXRhID8gbG9jYWxIb3ZlclN0eWxlLmRhdGEubGVuZ3RoIDogMDtcbiAgICAgIGNvbnN0IHJhZGl1cyA9IFtdO1xuICAgICAgY29uc3Qgc3Ryb2tlID0gW107XG4gICAgICBjb25zdCB3aWR0aCA9IFtdO1xuICAgICAgY29uc3QgZmlsbCA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHtcbiAgICAgICAgcmFkaXVzLnB1c2goMCk7XG4gICAgICAgIHN0cm9rZS5wdXNoKCdyZ2JhKDI1NSwgMjU1LCAyNTUsIDApJyk7XG4gICAgICAgIHdpZHRoLnB1c2goMCk7XG4gICAgICAgIGZpbGwucHVzaCgncmdiYSgyNTUsIDI1NSwgMjU1LCAwKScpO1xuICAgICAgfVxuICAgICAgbG9jYWxIb3ZlclN0eWxlLnJhZGl1cyA9IHJhZGl1cztcbiAgICAgIGxvY2FsSG92ZXJTdHlsZS5zdHJva2UgPSBzdHJva2U7XG4gICAgICBsb2NhbEhvdmVyU3R5bGUud2lkdGggPSB3aWR0aDtcbiAgICAgIGxvY2FsSG92ZXJTdHlsZS5maWxsID0gZmlsbDtcbiAgICB9XG4gICAgaWYgKCFoYXNMYWJlbFN0eWxlICYmIGxhYmVsKSB7XG4gICAgICBsb2NhbEhvdmVyU3R5bGUubGFiZWwuc3R5bGUgPVxuICAgICAge1xuICAgICAgICB0ZXh0QWxpZ246ICdsZWZ0JyxcbiAgICAgICAgdGV4dEJhc2VsaW5lOiAndG9wJyxcbiAgICAgICAgZm9udDogJzEycHggQ2FsaWJyaSxzYW5zLXNlcmlmJyxcbiAgICAgICAgZmlsbDogeyBjb2xvcjogJyMwMDAnIH0sXG4gICAgICAgIGJhY2tncm91bmRGaWxsOiB7IGNvbG9yOiAncmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpJyB9LFxuICAgICAgICBiYWNrZ3JvdW5kU3Ryb2tlOiB7IGNvbG9yOiAncmdiYSgyMDAsIDIwMCwgMjAwLCAwLjc1KScsIHdpZHRoOiAyIH0sXG4gICAgICAgIHN0cm9rZTogeyBjb2xvcjogJyNmZmYnLCB3aWR0aDogMyB9LFxuICAgICAgICBvdmVyZmxvdzogdHJ1ZSxcbiAgICAgICAgb2Zmc2V0WDogMTAsXG4gICAgICAgIG9mZnNldFk6IDIwLFxuICAgICAgICBwYWRkaW5nOiBbMi41LCAyLjUsIDIuNSwgMi41XVxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlQnlBdHRyaWJ1dGUoZmVhdHVyZSwgbG9jYWxIb3ZlclN0eWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdG9wIGxpc3RlbmluZyB0byBwb2ludGVybW92ZSBhbmQgcmV2ZXJzZSBzZWFyY2ggcmVzdWx0cy5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnVubGlzdGVuVG9NYXBQb2ludGVyTW92ZSgpO1xuICAgIHRoaXMudW5zdWJzY3JpYmVUb1BvaW50ZXJTdG9yZSgpO1xuICAgIHRoaXMudW5saXN0ZW5Ub01hcFNpbmdsZUNsaWNrKCk7XG4gICAgdGhpcy5sYXllcnMkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1YnNjcmliZSB0byBwb2ludGVybW92ZSByZXN1bHQgc3RvcmVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBzdWJzY3JpYmVUb1BvaW50ZXJTdG9yZSgpIHtcbiAgICB0aGlzLnN0b3JlJCQgPSB0aGlzLnBvaW50ZXJIb3ZlckZlYXR1cmVTdG9yZS5lbnRpdGllcyQuc3Vic2NyaWJlKHJlc3VsdHNVbmRlclBvaW50ZXJQb3NpdGlvbiA9PiB7XG4gICAgICB0aGlzLmVudGl0aWVzVG9Qb2ludGVyT3ZlcmxheShyZXN1bHRzVW5kZXJQb2ludGVyUG9zaXRpb24pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIGNvbnZlcnQgc3RvcmUgZW50aXRpZXMgdG8gYSBwb2ludGVyIHBvc2l0aW9uIG92ZXJsYXkgd2l0aCBsYWJlbCBzdW1tYXJ5IG9uLlxuICAgKiBAcGFyYW0gZXZlbnQgT0wgbWFwIGJyb3dzZXIgcG9pbnRlciBldmVudFxuICAgKi9cbiAgcHJpdmF0ZSBlbnRpdGllc1RvUG9pbnRlck92ZXJsYXkocmVzdWx0c1VuZGVyUG9pbnRlclBvc2l0aW9uOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT5bXSkge1xuXG4gICAgdGhpcy5hZGRGZWF0dXJlT3ZlcmxheShyZXN1bHRzVW5kZXJQb2ludGVyUG9zaXRpb24pO1xuXG4gIH1cblxuICAvKipcbiAgICogT24gbWFwIHBvaW50ZXJtb3ZlXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblRvTWFwUG9pbnRlck1vdmUoKSB7XG4gICAgdGhpcy5wb2ludGVyTW92ZUxpc3RlbmVyID0gdGhpcy5tYXAub2wub24oXG4gICAgICAncG9pbnRlcm1vdmUnLFxuICAgICAgKGV2ZW50OiBPbE1hcEJyb3dzZXJFdmVudDxhbnk+KSA9PiB0aGlzLm9uTWFwRXZlbnQoZXZlbnQpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbiBtYXAgc2luZ2xlY2xpY2tcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVG9NYXBDbGljaygpIHtcbiAgICB0aGlzLnNpbmdsZUNsaWNrTWFwTGlzdGVuZXIgPSB0aGlzLm1hcC5vbC5vbihcbiAgICAgICdzaW5nbGVjbGljaycsXG4gICAgICAoZXZlbnQ6IE9sTWFwQnJvd3NlckV2ZW50PGFueT4pID0+IHRoaXMub25NYXBTaW5nbGVDbGlja0V2ZW50KGV2ZW50KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVW5zdWJzY3JpYmUgdG8gcG9pbnRlciBzdG9yZS5cbiAgICogQGludGVybmFsXG4gICAqL1xuICB1bnN1YnNjcmliZVRvUG9pbnRlclN0b3JlKCkge1xuICAgIHRoaXMuc3RvcmUkJC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0b3AgbGlzdGVuaW5nIGZvciBtYXAgcG9pbnRlcm1vdmVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHVubGlzdGVuVG9NYXBQb2ludGVyTW92ZSgpIHtcbiAgICB1bkJ5S2V5KHRoaXMucG9pbnRlck1vdmVMaXN0ZW5lcik7XG4gICAgdGhpcy5wb2ludGVyTW92ZUxpc3RlbmVyID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0b3AgbGlzdGVuaW5nIGZvciBtYXAgc2luZ2xlY2xpY2tcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHVubGlzdGVuVG9NYXBTaW5nbGVDbGljaygpIHtcbiAgICB1bkJ5S2V5KHRoaXMuc2luZ2xlQ2xpY2tNYXBMaXN0ZW5lcik7XG4gICAgdGhpcy5zaW5nbGVDbGlja01hcExpc3RlbmVyID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyaWdnZXIgY2xlYXIgbGF5ZXIgb24gc2luZ2xlY2xpY2suXG4gICAqIEBwYXJhbSBldmVudCBPTCBtYXAgYnJvd3NlciBzaW5nbGVjbGljayBldmVudFxuICAgKi9cbiAgcHJpdmF0ZSBvbk1hcFNpbmdsZUNsaWNrRXZlbnQoZXZlbnQ6IE9sTWFwQnJvd3NlckV2ZW50PGFueT4pIHtcbiAgICB0aGlzLmNsZWFyTGF5ZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmlnZ2VyIGhvdmVyIHdoZW4gdGhlIG1vdXNlIGlzIG1vdGlvbmxlc3MgZHVyaW5nIHRoZSBkZWZpbmVkIGRlbGF5IChwb2ludGVyTW92ZURlbGF5KS5cbiAgICogQHBhcmFtIGV2ZW50IE9MIG1hcCBicm93c2VyIHBvaW50ZXIgZXZlbnRcbiAgICovXG4gIHByaXZhdGUgb25NYXBFdmVudChldmVudDogT2xNYXBCcm93c2VyRXZlbnQ8YW55Pikge1xuICAgIGlmIChcbiAgICAgIGV2ZW50LmRyYWdnaW5nIHx8ICF0aGlzLmlnb0hvdmVyRmVhdHVyZUVuYWJsZWQgfHxcbiAgICAgIHRoaXMubWVkaWFTZXJ2aWNlLmlzVG91Y2hTY3JlZW4oKSkge1xuICAgICAgdGhpcy5jbGVhckxheWVyKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdGhpcy5sYXN0VGltZW91dFJlcXVlc3QgIT09ICd1bmRlZmluZWQnKSB7IC8vIGNhbmNlbCB0aW1lb3V0IHdoZW4gdGhlIG1vdXNlIG1vdmVzXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5sYXN0VGltZW91dFJlcXVlc3QpO1xuICAgIH1cbiAgICB0aGlzLmNsZWFyTGF5ZXIoKTtcbiAgICBsZXQgbWF4aW11bVppbmRleCA9IC1JbmZpbml0eTtcbiAgICBsZXQgdG9wTW9zdE9sTGF5ZXI7XG4gICAgY29uc3QgcGl4ZWwgPSB0aGlzLm1hcC5vbC5nZXRQaXhlbEZyb21Db29yZGluYXRlKGV2ZW50LmNvb3JkaW5hdGUpO1xuICAgIHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0ID0gc2V0VGltZW91dCgoKSA9PiB7XG5cbiAgICAgIC8vIHJldHJpZXZlIHRoZSB0b3Btb3N0IGxheWVyIHdpdGggZmVhdHVyZSB0byBvbmx5IGFwcGx5IHRoZSBob3ZlciBvbiB0aGlzIGxheWVyLlxuICAgICAgdGhpcy5tYXAub2wuZm9yRWFjaEZlYXR1cmVBdFBpeGVsKHBpeGVsLCAobWFwRmVhdHVyZTogUmVuZGVyRmVhdHVyZSB8IE9sRmVhdHVyZTxPbEdlb21ldHJ5PiwgbGF5ZXJPTDogYW55KSA9PiB7XG4gICAgICAgIGlmICghbGF5ZXJPTCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpZ29MYXllciA9IHRoaXMubWFwLmdldExheWVyQnlPbFVJZCgobGF5ZXJPTCBhcyBhbnkpLm9sX3VpZCk7XG4gICAgICAgIGlmICghdGhpcy5jYW5Qcm9jZXNzSG92ZXIoaWdvTGF5ZXIgYXMgYW55KSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaWdvTGF5ZXIuekluZGV4IDw9IG1heGltdW1aaW5kZXgpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbWF4aW11bVppbmRleCA9IGlnb0xheWVyLnpJbmRleDtcbiAgICAgICAgdG9wTW9zdE9sTGF5ZXIgPSBsYXllck9MO1xuXG4gICAgICB9LCB7XG4gICAgICAgIGhpdFRvbGVyYW5jZTogMTAsIGxheWVyRmlsdGVyOiBvbExheWVyID0+IG9sTGF5ZXIgaW5zdGFuY2VvZiBvbExheWVyVmVjdG9yIHx8IG9sTGF5ZXIgaW5zdGFuY2VvZiBvbExheWVyVmVjdG9yVGlsZVxuICAgICAgfSk7XG4gICAgICBpZiAoIXRvcE1vc3RPbExheWVyKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jbGVhckxheWVyKCk7XG4gICAgICB0aGlzLm1hcC5vbC5mb3JFYWNoRmVhdHVyZUF0UGl4ZWwocGl4ZWwsIChtYXBGZWF0dXJlOiBSZW5kZXJGZWF0dXJlIHwgT2xGZWF0dXJlPE9sR2VvbWV0cnk+LCBsYXllck9MOiBhbnkpID0+IHtcbiAgICAgICAgaWYgKG1hcEZlYXR1cmUuZ2V0KCdob3ZlclN1bW1hcnknKSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgbGV0IGlnb0xheWVyO1xuICAgICAgICAgIGlmIChsYXllck9MIGluc3RhbmNlb2Ygb2xMYXllclZlY3Rvcikge1xuICAgICAgICAgICAgaWdvTGF5ZXIgPSB0aGlzLm1hcC5nZXRMYXllckJ5T2xVSWQoKGxheWVyT0wgYXMgYW55KS5vbF91aWQpIGFzIFZlY3RvckxheWVyO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmNhblByb2Nlc3NIb3ZlcihpZ29MYXllcikpIHtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IGxvY2FsT2xGZWF0dXJlID0gdGhpcy5oYW5kbGVSZW5kZXJGZWF0dXJlKG1hcEZlYXR1cmUpO1xuICAgICAgICAgICAgdGhpcy5zZXRMYXllclN0eWxlRnJvbU9wdGlvbnMoaWdvTGF5ZXIsIGxvY2FsT2xGZWF0dXJlKTtcbiAgICAgICAgICAgIGNvbnN0IGZlYXR1cmVzVG9Mb2FkID0gW2xvY2FsT2xGZWF0dXJlXTtcbiAgICAgICAgICAgIGxvY2FsT2xGZWF0dXJlLnNldChcIl9pc0xhYmVsXCIsIGZhbHNlKTtcbiAgICAgICAgICAgIGNvbnN0IG15TGFiZWxPbEZlYXR1cmUgPSBuZXcgT2xGZWF0dXJlKCk7XG4gICAgICAgICAgICBteUxhYmVsT2xGZWF0dXJlLnNldFByb3BlcnRpZXMobG9jYWxPbEZlYXR1cmUuZ2V0UHJvcGVydGllcygpKTtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsR2VvbSA9XG4gICAgICAgICAgICAgIGxvY2FsT2xGZWF0dXJlLmdldEdlb21ldHJ5KCkuZ2V0VHlwZSgpID09PSAnUG9pbnQnID8gbG9jYWxPbEZlYXR1cmUuZ2V0R2VvbWV0cnkoKSA6IG5ldyBPbEdlb20uUG9pbnQoZXZlbnQuY29vcmRpbmF0ZSk7XG4gICAgICAgICAgICBteUxhYmVsT2xGZWF0dXJlLnNldEdlb21ldHJ5KGxhYmVsR2VvbSk7XG4gICAgICAgICAgICBteUxhYmVsT2xGZWF0dXJlLnNldElkKGxvY2FsT2xGZWF0dXJlLmdldElkKCkpO1xuICAgICAgICAgICAgbXlMYWJlbE9sRmVhdHVyZS5zZXQoXCJfaXNMYWJlbFwiLCB0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuc2V0TGF5ZXJTdHlsZUZyb21PcHRpb25zKGlnb0xheWVyLCBteUxhYmVsT2xGZWF0dXJlKTtcbiAgICAgICAgICAgIGZlYXR1cmVzVG9Mb2FkLnB1c2gobXlMYWJlbE9sRmVhdHVyZSk7XG4gICAgICAgICAgICB0aGlzLnBvaW50ZXJIb3ZlckZlYXR1cmVTdG9yZS5sb2FkKGZlYXR1cmVzVG9Mb2FkKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAobGF5ZXJPTCBpbnN0YW5jZW9mIG9sTGF5ZXJWZWN0b3JUaWxlKSB7XG4gICAgICAgICAgICBpZ29MYXllciA9IHRoaXMubWFwLmdldExheWVyQnlPbFVJZCgobGF5ZXJPTCBhcyBhbnkpLm9sX3VpZCkgYXMgVmVjdG9yVGlsZUxheWVyO1xuICAgICAgICAgICAgaWYgKCF0aGlzLmNhblByb2Nlc3NIb3ZlcihpZ29MYXllcikpIHtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlnb0xheWVyPy5vcHRpb25zPy5zdHlsZUJ5QXR0cmlidXRlPy5ob3ZlclN0eWxlKSB7XG4gICAgICAgICAgICAgIHRoaXMubXZ0U3R5bGVPcHRpb25zID0gaWdvTGF5ZXIub3B0aW9ucy5zdHlsZUJ5QXR0cmlidXRlLmhvdmVyU3R5bGU7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKGlnb0xheWVyPy5vcHRpb25zPy5ob3ZlclN0eWxlKSB7XG4gICAgICAgICAgICAgIHRoaXMubXZ0U3R5bGVPcHRpb25zID0gaWdvTGF5ZXIub3B0aW9ucy5ob3ZlclN0eWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25MYXllci5zZXRTb3VyY2UobGF5ZXJPTC5nZXRTb3VyY2UoKSk7XG4gICAgICAgICAgICBsYXllck9MLmdldEZlYXR1cmVzKGV2ZW50LnBpeGVsKS50aGVuKChtdnRGZWF0dXJlczogKFJlbmRlckZlYXR1cmUgfCBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pW10pID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFtdnRGZWF0dXJlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1WVCA9IHt9O1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTGF5ZXIuY2hhbmdlZCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJMYXllcigpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb25zdCBmZWF0dXJlID0gbXZ0RmVhdHVyZXNbMF07XG4gICAgICAgICAgICAgIGlmICghZmVhdHVyZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXJMYXllcigpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBsZXQgbG9jYWxPbEZlYXR1cmUgPSB0aGlzLmhhbmRsZVJlbmRlckZlYXR1cmUoZmVhdHVyZSk7XG4gICAgICAgICAgICAgIGxvY2FsT2xGZWF0dXJlLnNldChcIl9pc0xhYmVsXCIsIGZhbHNlKTtcbiAgICAgICAgICAgICAgY29uc3QgbXlMYWJlbE9sRmVhdHVyZSA9IG5ldyBPbEZlYXR1cmUoKTtcbiAgICAgICAgICAgICAgbXlMYWJlbE9sRmVhdHVyZS5zZXRQcm9wZXJ0aWVzKGxvY2FsT2xGZWF0dXJlLmdldFByb3BlcnRpZXMoKSk7XG4gICAgICAgICAgICAgIGNvbnN0IGxhYmVsR2VvbSA9XG4gICAgICAgICAgICAgIGxvY2FsT2xGZWF0dXJlLmdldEdlb21ldHJ5KCkuZ2V0VHlwZSgpID09PSAnUG9pbnQnID8gbG9jYWxPbEZlYXR1cmUuZ2V0R2VvbWV0cnkoKSA6IG5ldyBPbEdlb20uUG9pbnQoZXZlbnQuY29vcmRpbmF0ZSk7XG4gICAgICAgICAgICAgIG15TGFiZWxPbEZlYXR1cmUuc2V0R2VvbWV0cnkobGFiZWxHZW9tKTtcbiAgICAgICAgICAgICAgbXlMYWJlbE9sRmVhdHVyZS5zZXRJZChsb2NhbE9sRmVhdHVyZS5nZXRJZCgpKTtcbiAgICAgICAgICAgICAgbXlMYWJlbE9sRmVhdHVyZS5zZXQoXCJfaXNMYWJlbFwiLCB0cnVlKTtcbiAgICAgICAgICAgICAgdGhpcy5zZXRMYXllclN0eWxlRnJvbU9wdGlvbnMoaWdvTGF5ZXIsIG15TGFiZWxPbEZlYXR1cmUpO1xuICAgICAgICAgICAgICB0aGlzLnBvaW50ZXJIb3ZlckZlYXR1cmVTdG9yZS5sb2FkKFtteUxhYmVsT2xGZWF0dXJlXSk7XG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTVZUW2ZlYXR1cmUuZ2V0SWQoKV0gPSBsb2NhbE9sRmVhdHVyZTtcbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25MYXllci5jaGFuZ2VkKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9LCB7XG4gICAgICAgIGhpdFRvbGVyYW5jZTogMTAsIGxheWVyRmlsdGVyOiBvbExheWVyID0+IG9sTGF5ZXIgPT09IHRvcE1vc3RPbExheWVyXG4gICAgICB9KTtcbiAgICB9LCB0aGlzLmlnb0hvdmVyRmVhdHVyZURlbGF5KTtcbiAgfVxuXG4gIGNhblByb2Nlc3NIb3ZlcihpZ29MYXllcjogVmVjdG9yTGF5ZXIgfCBWZWN0b3JUaWxlTGF5ZXIpOiBib29sZWFuIHtcbiAgICBpZiAoIWlnb0xheWVyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmICghaWdvTGF5ZXIudmlzaWJsZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAoIWlnb0xheWVyLm9wdGlvbnMpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAoIWlnb0xheWVyLm9wdGlvbnMuc3R5bGVCeUF0dHJpYnV0ZSAmJiAhaWdvTGF5ZXIub3B0aW9ucy5ob3ZlclN0eWxlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgKGlnb0xheWVyLm9wdGlvbnMuc3R5bGVCeUF0dHJpYnV0ZSAmJiAhaWdvTGF5ZXIub3B0aW9ucy5zdHlsZUJ5QXR0cmlidXRlLmhvdmVyU3R5bGUpICYmXG4gICAgICAhaWdvTGF5ZXIub3B0aW9ucy5ob3ZlclN0eWxlKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaGFuZGxlUmVuZGVyRmVhdHVyZShmZWF0dXJlOiBSZW5kZXJGZWF0dXJlIHwgT2xGZWF0dXJlPE9sR2VvbWV0cnk+KTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+IHtcbiAgICBsZXQgbG9jYWxGZWF0dXJlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT47XG4gICAgaWYgKGZlYXR1cmUgaW5zdGFuY2VvZiBSZW5kZXJGZWF0dXJlKSB7XG4gICAgICBsb2NhbEZlYXR1cmUgPSBuZXcgT2xGZWF0dXJlKHtcbiAgICAgICAgZ2VvbWV0cnk6IHRoaXMuZ2V0R2VvbWV0cnkoZmVhdHVyZSlcbiAgICAgIH0pO1xuICAgICAgbG9jYWxGZWF0dXJlLnNldElkKGZlYXR1cmUuZ2V0SWQoKSk7XG4gICAgfSBlbHNlIGlmIChmZWF0dXJlIGluc3RhbmNlb2YgT2xGZWF0dXJlKSB7XG4gICAgICBsb2NhbEZlYXR1cmUgPSBmZWF0dXJlO1xuICAgIH1cbiAgICByZXR1cm4gbG9jYWxGZWF0dXJlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIGZlYXR1cmUgdG8gdGhlIHBvaW50ZXIgc3RvcmVcbiAgICogQHBhcmFtIHRleHQgc3RyaW5nXG4gICAqL1xuICBwcml2YXRlIGFkZEZlYXR1cmVPdmVybGF5KGhvdmVyRW50aXR5OiBPbEZlYXR1cmU8T2xHZW9tZXRyeT5bXSkge1xuXG4gICAgaWYgKGhvdmVyRW50aXR5Lmxlbmd0aCA+IDApIHtcblxuICAgICAgY29uc3QgcmVzdWx0ID0gaG92ZXJFbnRpdHlbMF07XG4gICAgICB0aGlzLmNsZWFyTGF5ZXIoKTtcbiAgICAgIGNvbnN0IGZlYXR1cmUgPSBuZXcgT2xGZWF0dXJlKHtcbiAgICAgICAgZ2VvbWV0cnk6IHJlc3VsdC5nZXRHZW9tZXRyeSgpLFxuICAgICAgICBtZXRhOiB7IGlkOiB0aGlzLmhvdmVyRmVhdHVyZUlkIH0sXG4gICAgICAgIGhvdmVyU3VtbWFyeTogdGhpcy5nZXRIb3ZlclN1bW1hcnkocmVzdWx0LmdldFByb3BlcnRpZXMoKSlcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnN0b3JlLnNldExheWVyT2xGZWF0dXJlcyhbZmVhdHVyZV0sIEZlYXR1cmVNb3Rpb24uTm9uZSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRMYXllclN0eWxlRnJvbU9wdGlvbnMoaWdvTGF5ZXI6IFZlY3RvckxheWVyIHwgVmVjdG9yVGlsZUxheWVyLCBmZWF0dXJlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pIHtcbiAgICBpZiAoaWdvTGF5ZXI/Lm9wdGlvbnM/LnN0eWxlQnlBdHRyaWJ1dGU/LmhvdmVyU3R5bGUpIHtcbiAgICAgIHRoaXMuc3RvcmUubGF5ZXIub2wuc2V0U3R5bGUodGhpcy5jcmVhdGVIb3ZlclN0eWxlKGZlYXR1cmUsIGlnb0xheWVyLm9wdGlvbnMuc3R5bGVCeUF0dHJpYnV0ZS5ob3ZlclN0eWxlKSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChpZ29MYXllcj8ub3B0aW9ucz8uaG92ZXJTdHlsZSkge1xuICAgICAgdGhpcy5zdG9yZS5sYXllci5vbC5zZXRTdHlsZSh0aGlzLmNyZWF0ZUhvdmVyU3R5bGUoZmVhdHVyZSwgaWdvTGF5ZXIub3B0aW9ucy5ob3ZlclN0eWxlKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRIb3ZlclN1bW1hcnkocHJvcGVydGllcyk6IHN0cmluZyB7XG4gICAgbGV0IHN1bW1hcnkgPSAnJztcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhwcm9wZXJ0aWVzKSkge1xuICAgICAgaWYgKCFrZXkuc3RhcnRzV2l0aCgnXycpICYmIGtleSAhPT0gJ2dlb21ldHJ5Jykge1xuICAgICAgICBzdW1tYXJ5ICs9IGAke2tleX06ICR7dmFsdWV9YCArICdcXG4nO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gc3VtbWFyeS5sZW5ndGggPj0gMiA/IHN1bW1hcnkuc2xpY2UoMCwgLTIpIDogc3VtbWFyeTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0R2VvbWV0cnkoZmVhdHVyZSk6IE9sR2VvbS5HZW9tZXRyeSB7XG4gICAgbGV0IGdlb207XG4gICAgaWYgKCFmZWF0dXJlLmdldE9yaWVudGVkRmxhdENvb3JkaW5hdGVzKSB7XG4gICAgICBnZW9tID0gZmVhdHVyZS5nZXRHZW9tZXRyeSgpO1xuICAgIH0gZWxzZSB7XG5cbiAgICAgIGNvbnN0IGNvb3JkcyA9IGZlYXR1cmUuZ2V0T3JpZW50ZWRGbGF0Q29vcmRpbmF0ZXMoKTtcbiAgICAgIGNvbnN0IGZsYXRDb29yZHMgPSBbXTtcblxuICAgICAgY29vcmRzLmZvckVhY2goKGMsIGlkeCkgPT4ge1xuICAgICAgICBpZiAoaWR4ICUgMiA9PT0gMCkge1xuICAgICAgICAgIGZsYXRDb29yZHMucHVzaChbcGFyc2VGbG9hdChjb29yZHNbaWR4XSksIHBhcnNlRmxvYXQoY29vcmRzW2lkeCArIDFdKV0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgLy8gVE9ETzogdGVzdCBNdWx0aVhcbiAgICAgIHN3aXRjaCAoZmVhdHVyZS5nZXRUeXBlKCkpIHtcbiAgICAgICAgY2FzZSAnUG9pbnQnOlxuICAgICAgICAgIGdlb20gPSBuZXcgT2xHZW9tLlBvaW50KGZsYXRDb29yZHMpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdQb2x5Z29uJzpcbiAgICAgICAgICBnZW9tID0gbmV3IE9sR2VvbS5Qb2x5Z29uKFtmbGF0Q29vcmRzXSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ0xpbmVTdHJpbmcnOlxuICAgICAgICAgIGdlb20gPSBuZXcgT2xHZW9tLkxpbmVTdHJpbmcoW2ZsYXRDb29yZHNdKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZ2VvbTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIENsZWFyIHRoZSBwb2ludGVyIHN0b3JlIGZlYXR1cmVzXG4gICAqL1xuICBwcml2YXRlIGNsZWFyTGF5ZXIoKSB7XG4gICAgdGhpcy5zZWxlY3Rpb25NVlQgPSB7fTtcbiAgICBpZiAodGhpcy5zZWxlY3Rpb25MYXllcikge1xuICAgICAgdGhpcy5zZWxlY3Rpb25MYXllci5jaGFuZ2VkKCk7XG4gICAgfVxuICAgIGlmICh0aGlzLnN0b3JlKSB7XG4gICAgICB0aGlzLnN0b3JlLmNsZWFyTGF5ZXIoKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBkZWZhdWx0IHN0eWxlIGZvciB0aGUgcG9pbnRlciBwb3NpdGlvbiBhbmQgaXQncyBsYWJlbCBzdW1tYXJ5LlxuICogQHBhcmFtIGZlYXR1cmUgT2xGZWF0dXJlXG4gKiBAcmV0dXJucyBPTCBzdHlsZSBmdW5jdGlvblxuICovXG5leHBvcnQgZnVuY3Rpb24gaG92ZXJGZWF0dXJlTWFya2VyKGZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb20uR2VvbWV0cnk+LCByZXNvbHV0aW9uOiBudW1iZXIpOiBPbFN0eWxlLlN0eWxlW10ge1xuXG4gIGNvbnN0IG9sU3R5bGVUZXh0ID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgIHRleHQ6IG5ldyBPbFN0eWxlLlRleHQoe1xuICAgICAgdGV4dDogZmVhdHVyZS5nZXQoJ2hvdmVyU3VtbWFyeScpLFxuICAgICAgdGV4dEFsaWduOiAnbGVmdCcsXG4gICAgICB0ZXh0QmFzZWxpbmU6ICd0b3AnLFxuICAgICAgZm9udDogJzEycHggQ2FsaWJyaSxzYW5zLXNlcmlmJyxcbiAgICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoeyBjb2xvcjogJyMwMDAnIH0pLFxuICAgICAgYmFja2dyb3VuZEZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoeyBjb2xvcjogJ3JnYmEoMjU1LCAyNTUsIDI1NSwgMC41KScgfSksXG4gICAgICBiYWNrZ3JvdW5kU3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2UoeyBjb2xvcjogJ3JnYmEoMjAwLCAyMDAsIDIwMCwgMC43NSknLCB3aWR0aDogMiB9KSxcbiAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHsgY29sb3I6ICcjZmZmJywgd2lkdGg6IDMgfSksXG4gICAgICBvdmVyZmxvdzogdHJ1ZSxcbiAgICAgIG9mZnNldFg6IDEwLFxuICAgICAgb2Zmc2V0WTogMjAsXG4gICAgICBwYWRkaW5nOiBbMi41LCAyLjUsIDIuNSwgMi41XVxuICAgIH0pXG4gIH0pO1xuXG4gIGNvbnN0IG9sU3R5bGUgPSBbb2xTdHlsZVRleHRdO1xuICBzd2l0Y2ggKGZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5nZXRUeXBlKCkpIHtcbiAgICBjYXNlICdQb2ludCc6XG4gICAgICBvbFN0eWxlLnB1c2gobmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICByYWRpdXM6IDEwLFxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgIGNvbG9yOiAnYmx1ZScsXG4gICAgICAgICAgICB3aWR0aDogM1xuICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgICB9KSk7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgb2xTdHlsZS5wdXNoKG5ldyBPbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxuICAgICAgICAgIHdpZHRoOiA1XG4gICAgICAgIH0pXG4gICAgICB9KSk7XG4gICAgICBvbFN0eWxlLnB1c2gobmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgY29sb3I6ICdibHVlJyxcbiAgICAgICAgICB3aWR0aDogM1xuICAgICAgICB9KVxuICAgICAgfSkpO1xuICB9XG5cbiAgcmV0dXJuIG9sU3R5bGU7XG5cbn1cbiJdfQ==
@@ -1,13 +0,0 @@
1
- export * from './map';
2
- export * from './map.enums';
3
- export * from './map.interface';
4
- export * from './map.service';
5
- export * from './map.utils';
6
- export * from './mapOffline.directive';
7
- export * from './map-pointer-position.directive';
8
- export * from './hover-feature.directive';
9
- export * from './projection.interfaces';
10
- export * from './projection.service';
11
- export * from './controllers';
12
- export * from './projection.utils';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tYXAvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL21hcCc7XG5leHBvcnQgKiBmcm9tICcuL21hcC5lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL21hcC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tYXAuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL21hcC51dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL21hcE9mZmxpbmUuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbWFwLXBvaW50ZXItcG9zaXRpb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaG92ZXItZmVhdHVyZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9qZWN0aW9uLmludGVyZmFjZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9qZWN0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250cm9sbGVycyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb2plY3Rpb24udXRpbHMnO1xuIl19