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