@igo2/geo 1.15.4 → 16.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1433) hide show
  1. package/esm2022/igo2-geo.mjs +5 -0
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +320 -0
  3. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +319 -0
  4. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +278 -0
  5. package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +78 -0
  6. package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +223 -0
  7. package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +89 -0
  8. package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +230 -0
  9. package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +91 -0
  10. package/esm2022/lib/catalog/catalog.module.mjs +48 -0
  11. package/esm2022/lib/catalog/index.mjs +5 -0
  12. package/esm2022/lib/catalog/shared/catalog.abstract.mjs +32 -0
  13. package/esm2022/lib/catalog/shared/catalog.enum.mjs +16 -0
  14. package/esm2022/lib/catalog/shared/catalog.interface.mjs +2 -0
  15. package/esm2022/lib/catalog/shared/catalog.service.mjs +666 -0
  16. package/esm2022/lib/catalog/shared/catalogs.mjs +75 -0
  17. package/esm2022/lib/catalog/shared/index.mjs +5 -0
  18. package/esm2022/lib/datasource/datasource.module.mjs +22 -0
  19. package/esm2022/lib/datasource/index.mjs +3 -0
  20. package/esm2022/lib/datasource/shared/capabilities.service.mjs +448 -0
  21. package/esm2022/lib/datasource/shared/datasource.service.mjs +259 -0
  22. package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +2 -0
  23. package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +2 -0
  24. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +2 -0
  25. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +212 -0
  26. package/esm2022/lib/datasource/shared/datasources/carto-datasource.interface.mjs +2 -0
  27. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +109 -0
  28. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +2 -0
  29. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +15 -0
  30. package/esm2022/lib/datasource/shared/datasources/data.service.mjs +3 -0
  31. package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +2 -0
  32. package/esm2022/lib/datasource/shared/datasources/datasource.mjs +34 -0
  33. package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +2 -0
  34. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +43 -0
  35. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +2 -0
  36. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +61 -0
  37. package/esm2022/lib/datasource/shared/datasources/index.mjs +36 -0
  38. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +2 -0
  39. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +28 -0
  40. package/esm2022/lib/datasource/shared/datasources/osm-datasource.interface.mjs +2 -0
  41. package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +12 -0
  42. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +2 -0
  43. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +51 -0
  44. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +2 -0
  45. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +15 -0
  46. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +2 -0
  47. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +55 -0
  48. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +2 -0
  49. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +79 -0
  50. package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +169 -0
  51. package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +2 -0
  52. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +218 -0
  53. package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +222 -0
  54. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +2 -0
  55. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +16 -0
  56. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +2 -0
  57. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +9 -0
  58. package/esm2022/lib/datasource/shared/index.mjs +5 -0
  59. package/esm2022/lib/datasource/shared/options/index.mjs +5 -0
  60. package/esm2022/lib/datasource/shared/options/options-api.interface.mjs +2 -0
  61. package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +15 -0
  62. package/esm2022/lib/datasource/shared/options/options-api.service.mjs +85 -0
  63. package/esm2022/lib/datasource/shared/options/options.service.mjs +3 -0
  64. package/esm2022/lib/datasource/utils/index.mjs +2 -0
  65. package/esm2022/lib/datasource/utils/tilegrid.mjs +20 -0
  66. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +265 -0
  67. package/esm2022/lib/directions/directions-buttons/index.mjs +2 -0
  68. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +294 -0
  69. package/esm2022/lib/directions/directions-inputs/index.mjs +2 -0
  70. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +215 -0
  71. package/esm2022/lib/directions/directions-results/index.mjs +2 -0
  72. package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +2 -0
  73. package/esm2022/lib/directions/directions-sources/directions-source.mjs +3 -0
  74. package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +16 -0
  75. package/esm2022/lib/directions/directions-sources/index.mjs +5 -0
  76. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +128 -0
  77. package/esm2022/lib/directions/directions.component.mjs +349 -0
  78. package/esm2022/lib/directions/directions.module.mjs +102 -0
  79. package/esm2022/lib/directions/index.mjs +7 -0
  80. package/esm2022/lib/directions/shared/directions-source.service.mjs +18 -0
  81. package/esm2022/lib/directions/shared/directions.enum.mjs +28 -0
  82. package/esm2022/lib/directions/shared/directions.interface.mjs +2 -0
  83. package/esm2022/lib/directions/shared/directions.service.mjs +202 -0
  84. package/esm2022/lib/directions/shared/directions.utils.mjs +559 -0
  85. package/esm2022/lib/directions/shared/index.mjs +6 -0
  86. package/esm2022/lib/directions/shared/store.mjs +21 -0
  87. package/esm2022/lib/download/download-button/download-button.component.mjs +65 -0
  88. package/esm2022/lib/download/download-button/index.mjs +2 -0
  89. package/esm2022/lib/download/download.module.mjs +42 -0
  90. package/esm2022/lib/download/index.mjs +3 -0
  91. package/esm2022/lib/download/shared/download.interface.mjs +2 -0
  92. package/esm2022/lib/download/shared/download.service.mjs +67 -0
  93. package/esm2022/lib/download/shared/index.mjs +3 -0
  94. package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +57 -0
  95. package/esm2022/lib/draw/draw/draw-popup.component.mjs +677 -0
  96. package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +48 -0
  97. package/esm2022/lib/draw/draw/draw.component.mjs +1369 -0
  98. package/esm2022/lib/draw/draw/draw.module.mjs +117 -0
  99. package/esm2022/lib/draw/drawingTool.module.mjs +18 -0
  100. package/esm2022/lib/draw/index.mjs +3 -0
  101. package/esm2022/lib/draw/shared/draw-icon.service.mjs +30 -0
  102. package/esm2022/lib/draw/shared/draw.enum.mjs +21 -0
  103. package/esm2022/lib/draw/shared/draw.interface.mjs +2 -0
  104. package/esm2022/lib/draw/shared/draw.utils.mjs +125 -0
  105. package/esm2022/lib/draw/shared/index.mjs +5 -0
  106. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +440 -0
  107. package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +57 -0
  108. package/esm2022/lib/feature/feature-details/feature-details.module.mjs +40 -0
  109. package/esm2022/lib/feature/feature-form/feature-form.component.mjs +120 -0
  110. package/esm2022/lib/feature/feature-form/feature-form.module.mjs +23 -0
  111. package/esm2022/lib/feature/feature.module.mjs +21 -0
  112. package/esm2022/lib/feature/index.mjs +4 -0
  113. package/esm2022/lib/feature/shared/feature-store.utils.mjs +27 -0
  114. package/esm2022/lib/feature/shared/feature.enums.mjs +9 -0
  115. package/esm2022/lib/feature/shared/feature.interfaces.mjs +2 -0
  116. package/esm2022/lib/feature/shared/feature.utils.mjs +333 -0
  117. package/esm2022/lib/feature/shared/index.mjs +8 -0
  118. package/esm2022/lib/feature/shared/store.mjs +143 -0
  119. package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +216 -0
  120. package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +115 -0
  121. package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +96 -0
  122. package/esm2022/lib/feature/shared/strategies/index.mjs +8 -0
  123. package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +104 -0
  124. package/esm2022/lib/feature/shared/strategies/loading.mjs +136 -0
  125. package/esm2022/lib/feature/shared/strategies/search.mjs +159 -0
  126. package/esm2022/lib/feature/shared/strategies/selection.mjs +384 -0
  127. package/esm2022/lib/feature/shared/strategies.utils.mjs +37 -0
  128. package/esm2022/lib/filter/filter.module.mjs +300 -0
  129. package/esm2022/lib/filter/index.mjs +16 -0
  130. package/esm2022/lib/filter/ogc-filter-button/index.mjs +2 -0
  131. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +153 -0
  132. package/esm2022/lib/filter/ogc-filter-form/index.mjs +2 -0
  133. package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +663 -0
  134. package/esm2022/lib/filter/ogc-filter-selection/index.mjs +2 -0
  135. package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +1344 -0
  136. package/esm2022/lib/filter/ogc-filter-time/index.mjs +3 -0
  137. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +226 -0
  138. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +936 -0
  139. package/esm2022/lib/filter/ogc-filterable-form/index.mjs +2 -0
  140. package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +63 -0
  141. package/esm2022/lib/filter/ogc-filterable-item/index.mjs +2 -0
  142. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +320 -0
  143. package/esm2022/lib/filter/ogc-filterable-list/index.mjs +3 -0
  144. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +36 -0
  145. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +47 -0
  146. package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +55 -0
  147. package/esm2022/lib/filter/shared/index.mjs +12 -0
  148. package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +73 -0
  149. package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +30 -0
  150. package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +2 -0
  151. package/esm2022/lib/filter/shared/ogc-filter.mjs +699 -0
  152. package/esm2022/lib/filter/shared/ogc-filter.service.mjs +48 -0
  153. package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +23 -0
  154. package/esm2022/lib/filter/shared/spatial-filter.interface.mjs +2 -0
  155. package/esm2022/lib/filter/shared/spatial-filter.service.mjs +280 -0
  156. package/esm2022/lib/filter/shared/time-filter.enum.mjs +13 -0
  157. package/esm2022/lib/filter/shared/time-filter.interface.mjs +2 -0
  158. package/esm2022/lib/filter/shared/time-filter.service.mjs +108 -0
  159. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/index.mjs +2 -0
  160. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1150 -0
  161. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/index.mjs +2 -0
  162. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +244 -0
  163. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/index.mjs +2 -0
  164. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +157 -0
  165. package/esm2022/lib/filter/time-filter-button/index.mjs +2 -0
  166. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +82 -0
  167. package/esm2022/lib/filter/time-filter-form/index.mjs +2 -0
  168. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +755 -0
  169. package/esm2022/lib/filter/time-filter-item/index.mjs +2 -0
  170. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +124 -0
  171. package/esm2022/lib/filter/time-filter-list/index.mjs +3 -0
  172. package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +36 -0
  173. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +40 -0
  174. package/esm2022/lib/geo.module.mjs +106 -0
  175. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +563 -0
  176. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +218 -0
  177. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +56 -0
  178. package/esm2022/lib/geometry/geometry.module.mjs +20 -0
  179. package/esm2022/lib/geometry/index.mjs +4 -0
  180. package/esm2022/lib/geometry/shared/controls/draw.mjs +340 -0
  181. package/esm2022/lib/geometry/shared/controls/index.mjs +4 -0
  182. package/esm2022/lib/geometry/shared/controls/modify.mjs +541 -0
  183. package/esm2022/lib/geometry/shared/controls/slice.mjs +190 -0
  184. package/esm2022/lib/geometry/shared/geometry.errors.mjs +26 -0
  185. package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +2 -0
  186. package/esm2022/lib/geometry/shared/geometry.utils.mjs +122 -0
  187. package/esm2022/lib/geometry/shared/index.mjs +5 -0
  188. package/esm2022/lib/import-export/export-button/export-button.component.mjs +66 -0
  189. package/esm2022/lib/import-export/export-button/index.mjs +2 -0
  190. package/esm2022/lib/import-export/import-export/import-export.component.mjs +1350 -0
  191. package/esm2022/lib/import-export/import-export/index.mjs +2 -0
  192. package/esm2022/lib/import-export/import-export.module.mjs +98 -0
  193. package/esm2022/lib/import-export/index.mjs +4 -0
  194. package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +174 -0
  195. package/esm2022/lib/import-export/shared/export.errors.mjs +15 -0
  196. package/esm2022/lib/import-export/shared/export.interface.mjs +2 -0
  197. package/esm2022/lib/import-export/shared/export.service.mjs +205 -0
  198. package/esm2022/lib/import-export/shared/export.type.mjs +13 -0
  199. package/esm2022/lib/import-export/shared/export.utils.mjs +47 -0
  200. package/esm2022/lib/import-export/shared/import.errors.mjs +39 -0
  201. package/esm2022/lib/import-export/shared/import.interface.mjs +2 -0
  202. package/esm2022/lib/import-export/shared/import.service.mjs +221 -0
  203. package/esm2022/lib/import-export/shared/import.utils.mjs +203 -0
  204. package/esm2022/lib/import-export/shared/index.mjs +11 -0
  205. package/esm2022/lib/layer/index.mjs +10 -0
  206. package/esm2022/lib/layer/layer-item/index.mjs +2 -0
  207. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +324 -0
  208. package/esm2022/lib/layer/layer-legend/index.mjs +2 -0
  209. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +429 -0
  210. package/esm2022/lib/layer/layer-legend-item/index.mjs +2 -0
  211. package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +93 -0
  212. package/esm2022/lib/layer/layer-legend-list/index.mjs +3 -0
  213. package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +54 -0
  214. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +201 -0
  215. package/esm2022/lib/layer/layer-list/index.mjs +4 -0
  216. package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +69 -0
  217. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +1022 -0
  218. package/esm2022/lib/layer/layer-list/layer-list.enum.mjs +19 -0
  219. package/esm2022/lib/layer/layer-list-tool/index.mjs +5 -0
  220. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +157 -0
  221. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +7 -0
  222. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +2 -0
  223. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +22 -0
  224. package/esm2022/lib/layer/layer.module.mjs +175 -0
  225. package/esm2022/lib/layer/shared/clusterParam.mjs +2 -0
  226. package/esm2022/lib/layer/shared/index.mjs +5 -0
  227. package/esm2022/lib/layer/shared/layer.enums.mjs +2 -0
  228. package/esm2022/lib/layer/shared/layer.service.mjs +268 -0
  229. package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +2 -0
  230. package/esm2022/lib/layer/shared/layers/any-layer.mjs +2 -0
  231. package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +2 -0
  232. package/esm2022/lib/layer/shared/layers/image-layer.mjs +70 -0
  233. package/esm2022/lib/layer/shared/layers/index.mjs +13 -0
  234. package/esm2022/lib/layer/shared/layers/layer.interface.mjs +17 -0
  235. package/esm2022/lib/layer/shared/layers/layer.mjs +184 -0
  236. package/esm2022/lib/layer/shared/layers/legend.interface.mjs +2 -0
  237. package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +2 -0
  238. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +50 -0
  239. package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +2 -0
  240. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +562 -0
  241. package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +2 -0
  242. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +107 -0
  243. package/esm2022/lib/layer/track-feature-button/index.mjs +2 -0
  244. package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +60 -0
  245. package/esm2022/lib/layer/utils/image-watcher.mjs +62 -0
  246. package/esm2022/lib/layer/utils/index.mjs +6 -0
  247. package/esm2022/lib/layer/utils/layer.utils.mjs +11 -0
  248. package/esm2022/lib/layer/utils/outputLegend.mjs +28 -0
  249. package/esm2022/lib/layer/utils/tile-watcher.mjs +52 -0
  250. package/esm2022/lib/layer/utils/vector-watcher.mjs +50 -0
  251. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +16 -0
  252. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +120 -0
  253. package/esm2022/lib/map/baselayers-switcher/index.mjs +3 -0
  254. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +155 -0
  255. package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +87 -0
  256. package/esm2022/lib/map/geolocate-button/index.mjs +2 -0
  257. package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +80 -0
  258. package/esm2022/lib/map/home-extent-button/index.mjs +2 -0
  259. package/esm2022/lib/map/index.mjs +14 -0
  260. package/esm2022/lib/map/info-section/index.mjs +2 -0
  261. package/esm2022/lib/map/info-section/info-section.component.mjs +29 -0
  262. package/esm2022/lib/map/map-browser/index.mjs +2 -0
  263. package/esm2022/lib/map/map-browser/map-browser.component.mjs +74 -0
  264. package/esm2022/lib/map/map-center/index.mjs +2 -0
  265. package/esm2022/lib/map/map-center/map-center.component.mjs +61 -0
  266. package/esm2022/lib/map/map.module.mjs +120 -0
  267. package/esm2022/lib/map/menu-button/index.mjs +2 -0
  268. package/esm2022/lib/map/menu-button/menu-button.component.mjs +66 -0
  269. package/esm2022/lib/map/offline-button/index.mjs +2 -0
  270. package/esm2022/lib/map/offline-button/offline-button.component.mjs +55 -0
  271. package/esm2022/lib/map/rotation-button/index.mjs +2 -0
  272. package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +73 -0
  273. package/esm2022/lib/map/shared/controllers/controller.mjs +44 -0
  274. package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +8 -0
  275. package/esm2022/lib/map/shared/controllers/geolocation.mjs +431 -0
  276. package/esm2022/lib/map/shared/controllers/index.mjs +5 -0
  277. package/esm2022/lib/map/shared/controllers/view.mjs +360 -0
  278. package/esm2022/lib/map/shared/hover-feature.directive.mjs +493 -0
  279. package/esm2022/lib/map/shared/index.mjs +15 -0
  280. package/esm2022/lib/map/shared/linkedLayers.utils.mjs +248 -0
  281. package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +121 -0
  282. package/esm2022/lib/map/shared/map.abstract.mjs +23 -0
  283. package/esm2022/lib/map/shared/map.enums.mjs +6 -0
  284. package/esm2022/lib/map/shared/map.interface.mjs +2 -0
  285. package/esm2022/lib/map/shared/map.mjs +434 -0
  286. package/esm2022/lib/map/shared/map.service.mjs +30 -0
  287. package/esm2022/lib/map/shared/map.utils.mjs +456 -0
  288. package/esm2022/lib/map/shared/mapOffline.directive.mjs +107 -0
  289. package/esm2022/lib/map/shared/projection.interfaces.mjs +2 -0
  290. package/esm2022/lib/map/shared/projection.service.mjs +67 -0
  291. package/esm2022/lib/map/shared/projection.utils.mjs +64 -0
  292. package/esm2022/lib/map/swipe-control/index.mjs +2 -0
  293. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +219 -0
  294. package/esm2022/lib/map/utils/layer-watcher.mjs +78 -0
  295. package/esm2022/lib/map/wake-lock-button/index.mjs +2 -0
  296. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +106 -0
  297. package/esm2022/lib/map/zoom-button/index.mjs +2 -0
  298. package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +49 -0
  299. package/esm2022/lib/measure/index.mjs +4 -0
  300. package/esm2022/lib/measure/measure.module.mjs +18 -0
  301. package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +39 -0
  302. package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +184 -0
  303. package/esm2022/lib/measure/measurer/measurer-item.component.mjs +162 -0
  304. package/esm2022/lib/measure/measurer/measurer.component.mjs +1121 -0
  305. package/esm2022/lib/measure/measurer/measurer.module.mjs +95 -0
  306. package/esm2022/lib/measure/shared/index.mjs +4 -0
  307. package/esm2022/lib/measure/shared/measure.enum.mjs +37 -0
  308. package/esm2022/lib/measure/shared/measure.interfaces.mjs +2 -0
  309. package/esm2022/lib/measure/shared/measure.utils.mjs +497 -0
  310. package/esm2022/lib/metadata/index.mjs +3 -0
  311. package/esm2022/lib/metadata/metadata-button/index.mjs +2 -0
  312. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +140 -0
  313. package/esm2022/lib/metadata/metadata.module.mjs +47 -0
  314. package/esm2022/lib/metadata/shared/index.mjs +3 -0
  315. package/esm2022/lib/metadata/shared/metadata.interface.mjs +2 -0
  316. package/esm2022/lib/metadata/shared/metadata.service.mjs +19 -0
  317. package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +128 -0
  318. package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +6 -0
  319. package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +2 -0
  320. package/esm2022/lib/offline/geoDB/geoDB.service.mjs +175 -0
  321. package/esm2022/lib/offline/geoDB/index.mjs +5 -0
  322. package/esm2022/lib/offline/index.mjs +4 -0
  323. package/esm2022/lib/offline/layerDB/index.mjs +3 -0
  324. package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +2 -0
  325. package/esm2022/lib/offline/layerDB/layerDB.service.mjs +84 -0
  326. package/esm2022/lib/offline/shared/geo-network.service.mjs +87 -0
  327. package/esm2022/lib/offline/shared/index.mjs +2 -0
  328. package/esm2022/lib/overlay/index.mjs +2 -0
  329. package/esm2022/lib/overlay/overlay.module.mjs +23 -0
  330. package/esm2022/lib/overlay/shared/index.mjs +6 -0
  331. package/esm2022/lib/overlay/shared/overlay.directive.mjs +38 -0
  332. package/esm2022/lib/overlay/shared/overlay.enum.mjs +8 -0
  333. package/esm2022/lib/overlay/shared/overlay.mjs +138 -0
  334. package/esm2022/lib/overlay/shared/overlay.service.mjs +26 -0
  335. package/esm2022/lib/overlay/shared/overlay.utils.mjs +17 -0
  336. package/esm2022/lib/print/index.mjs +4 -0
  337. package/esm2022/lib/print/print/print.component.mjs +122 -0
  338. package/esm2022/lib/print/print-form/index.mjs +2 -0
  339. package/esm2022/lib/print/print-form/print-form.component.mjs +580 -0
  340. package/esm2022/lib/print/print.module.mjs +65 -0
  341. package/esm2022/lib/print/shared/geopdf.mjs +68 -0
  342. package/esm2022/lib/print/shared/index.mjs +5 -0
  343. package/esm2022/lib/print/shared/print.interface.mjs +2 -0
  344. package/esm2022/lib/print/shared/print.service.mjs +1093 -0
  345. package/esm2022/lib/print/shared/print.type.mjs +30 -0
  346. package/esm2022/lib/query/index.mjs +2 -0
  347. package/esm2022/lib/query/query.module.mjs +29 -0
  348. package/esm2022/lib/query/shared/index.mjs +7 -0
  349. package/esm2022/lib/query/shared/query-search-source.mjs +35 -0
  350. package/esm2022/lib/query/shared/query-search-source.providers.mjs +22 -0
  351. package/esm2022/lib/query/shared/query.directive.mjs +285 -0
  352. package/esm2022/lib/query/shared/query.enums.mjs +30 -0
  353. package/esm2022/lib/query/shared/query.interfaces.mjs +2 -0
  354. package/esm2022/lib/query/shared/query.service.mjs +753 -0
  355. package/esm2022/lib/query/shared/query.utils.mjs +41 -0
  356. package/esm2022/lib/search/index.mjs +12 -0
  357. package/esm2022/lib/search/search-bar/search-bar.component.mjs +559 -0
  358. package/esm2022/lib/search/search-bar/search-bar.module.mjs +73 -0
  359. package/esm2022/lib/search/search-bar/search-url-param.directive.mjs +40 -0
  360. package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +132 -0
  361. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +456 -0
  362. package/esm2022/lib/search/search-results/search-results-item.component.mjs +166 -0
  363. package/esm2022/lib/search/search-results/search-results.component.mjs +480 -0
  364. package/esm2022/lib/search/search-results/search-results.module.mjs +104 -0
  365. package/esm2022/lib/search/search-selector/search-selector.component.mjs +133 -0
  366. package/esm2022/lib/search/search-selector/search-selector.module.mjs +56 -0
  367. package/esm2022/lib/search/search-settings/search-settings.component.mjs +448 -0
  368. package/esm2022/lib/search/search-settings/search-settings.module.mjs +60 -0
  369. package/esm2022/lib/search/search.module.mjs +67 -0
  370. package/esm2022/lib/search/shared/index.mjs +9 -0
  371. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +337 -0
  372. package/esm2022/lib/search/shared/search-source-service.providers.mjs +20 -0
  373. package/esm2022/lib/search/shared/search-source.service.mjs +56 -0
  374. package/esm2022/lib/search/shared/search.enums.mjs +4 -0
  375. package/esm2022/lib/search/shared/search.interfaces.mjs +2 -0
  376. package/esm2022/lib/search/shared/search.service.mjs +130 -0
  377. package/esm2022/lib/search/shared/search.utils.mjs +92 -0
  378. package/esm2022/lib/search/shared/sources/cadastre.mjs +139 -0
  379. package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +23 -0
  380. package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +2 -0
  381. package/esm2022/lib/search/shared/sources/coordinates.mjs +166 -0
  382. package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +40 -0
  383. package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +2 -0
  384. package/esm2022/lib/search/shared/sources/icherche.mjs +796 -0
  385. package/esm2022/lib/search/shared/sources/icherche.providers.mjs +66 -0
  386. package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +2 -0
  387. package/esm2022/lib/search/shared/sources/ilayer.mjs +335 -0
  388. package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +46 -0
  389. package/esm2022/lib/search/shared/sources/index.mjs +23 -0
  390. package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +2 -0
  391. package/esm2022/lib/search/shared/sources/nominatim.mjs +263 -0
  392. package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +23 -0
  393. package/esm2022/lib/search/shared/sources/source.interfaces.mjs +2 -0
  394. package/esm2022/lib/search/shared/sources/source.mjs +220 -0
  395. package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +2 -0
  396. package/esm2022/lib/search/shared/sources/storedqueries.mjs +455 -0
  397. package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +41 -0
  398. package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +2 -0
  399. package/esm2022/lib/search/shared/sources/workspace.mjs +191 -0
  400. package/esm2022/lib/search/shared/sources/workspace.providers.mjs +22 -0
  401. package/esm2022/lib/style/index.mjs +5 -0
  402. package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +359 -0
  403. package/esm2022/lib/style/shared/datasource/index.mjs +2 -0
  404. package/esm2022/lib/style/shared/feature/feature-style.mjs +161 -0
  405. package/esm2022/lib/style/shared/feature/index.mjs +2 -0
  406. package/esm2022/lib/style/shared/font.enum.mjs +17 -0
  407. package/esm2022/lib/style/shared/index.mjs +5 -0
  408. package/esm2022/lib/style/shared/overlay/index.mjs +3 -0
  409. package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +45 -0
  410. package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +88 -0
  411. package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +78 -0
  412. package/esm2022/lib/style/shared/vector/conversion.utils.mjs +27 -0
  413. package/esm2022/lib/style/shared/vector/index.mjs +4 -0
  414. package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +2 -0
  415. package/esm2022/lib/style/style-list/index.mjs +5 -0
  416. package/esm2022/lib/style/style-list/style-list.interface.mjs +2 -0
  417. package/esm2022/lib/style/style-list/style-list.module.mjs +23 -0
  418. package/esm2022/lib/style/style-list/style-list.provider.mjs +21 -0
  419. package/esm2022/lib/style/style-list/style-list.service.mjs +52 -0
  420. package/esm2022/lib/style/style-modal/drawing/index.mjs +2 -0
  421. package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +288 -0
  422. package/esm2022/lib/style/style-modal/index.mjs +5 -0
  423. package/esm2022/lib/style/style-modal/layer/index.mjs +2 -0
  424. package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +182 -0
  425. package/esm2022/lib/style/style-modal/layer-button/index.mjs +2 -0
  426. package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +48 -0
  427. package/esm2022/lib/style/style-modal/shared/index.mjs +2 -0
  428. package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +2 -0
  429. package/esm2022/lib/style/style-service/draw-style.service.mjs +256 -0
  430. package/esm2022/lib/style/style-service/index.mjs +3 -0
  431. package/esm2022/lib/style/style-service/style.service.mjs +393 -0
  432. package/esm2022/lib/style/style.module.mjs +92 -0
  433. package/esm2022/lib/toast/index.mjs +2 -0
  434. package/esm2022/lib/toast/toast.component.mjs +119 -0
  435. package/esm2022/lib/toast/toast.module.mjs +45 -0
  436. package/esm2022/lib/utils/googleLinks.mjs +13 -0
  437. package/esm2022/lib/utils/id-generator.mjs +110 -0
  438. package/esm2022/lib/utils/index.mjs +5 -0
  439. package/esm2022/lib/utils/osmLinks.mjs +9 -0
  440. package/esm2022/lib/utils/propertyTypeDetector/index.mjs +3 -0
  441. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +2 -0
  442. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +64 -0
  443. package/esm2022/lib/wkt/index.mjs +2 -0
  444. package/esm2022/lib/wkt/shared/index.mjs +2 -0
  445. package/esm2022/lib/wkt/shared/wkt.service.mjs +236 -0
  446. package/esm2022/lib/wkt/wkt.module.mjs +22 -0
  447. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +52 -0
  448. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +36 -0
  449. package/esm2022/lib/workspace/confirmation-popup/index.mjs +3 -0
  450. package/esm2022/lib/workspace/index.mjs +8 -0
  451. package/esm2022/lib/workspace/shared/edition-workspace.mjs +304 -0
  452. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +711 -0
  453. package/esm2022/lib/workspace/shared/feature-workspace.mjs +41 -0
  454. package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +109 -0
  455. package/esm2022/lib/workspace/shared/index.mjs +8 -0
  456. package/esm2022/lib/workspace/shared/wfs-workspace.mjs +41 -0
  457. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +102 -0
  458. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +225 -0
  459. package/esm2022/lib/workspace/shared/workspace.utils.mjs +185 -0
  460. package/esm2022/lib/workspace/widgets/index.mjs +4 -0
  461. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +52 -0
  462. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +25 -0
  463. package/esm2022/lib/workspace/widgets/widgets.mjs +15 -0
  464. package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +167 -0
  465. package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +22 -0
  466. package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +135 -0
  467. package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +22 -0
  468. package/esm2022/lib/workspace/workspace.module.mjs +58 -0
  469. package/esm2022/public_api.mjs +57 -0
  470. package/fesm2022/igo2-geo.mjs +48131 -0
  471. package/fesm2022/igo2-geo.mjs.map +1 -0
  472. package/geo-theme.scss +21 -0
  473. package/index.d.ts +5 -5
  474. package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +117 -117
  475. package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +77 -77
  476. package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +99 -99
  477. package/lib/catalog/catalog-browser/catalog-browser.module.d.ts +22 -22
  478. package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +45 -45
  479. package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +25 -25
  480. package/lib/catalog/catalog-library/catalog-library.component.d.ts +64 -64
  481. package/lib/catalog/catalog-library/catalog-library.module.d.ts +26 -26
  482. package/lib/catalog/catalog.module.d.ts +14 -14
  483. package/lib/catalog/index.d.ts +4 -4
  484. package/lib/catalog/shared/catalog.abstract.d.ts +41 -50
  485. package/lib/catalog/shared/catalog.enum.d.ts +14 -14
  486. package/lib/catalog/shared/catalog.interface.d.ts +76 -76
  487. package/lib/catalog/shared/catalog.service.d.ts +36 -36
  488. package/lib/catalog/shared/catalogs.d.ts +35 -0
  489. package/lib/catalog/shared/index.d.ts +4 -4
  490. package/lib/datasource/datasource.module.d.ts +8 -8
  491. package/lib/datasource/index.d.ts +2 -2
  492. package/lib/datasource/shared/capabilities.service.d.ts +37 -37
  493. package/lib/datasource/shared/datasource.service.d.ts +37 -37
  494. package/lib/datasource/shared/datasources/any-datasource.d.ts +16 -16
  495. package/lib/datasource/shared/datasources/any-datasource.interface.d.ts +15 -15
  496. package/lib/datasource/shared/datasources/arcgisrest-datasource.d.ts +14 -14
  497. package/lib/datasource/shared/datasources/arcgisrest-datasource.interface.d.ts +14 -14
  498. package/lib/datasource/shared/datasources/carto-datasource.d.ts +15 -15
  499. package/lib/datasource/shared/datasources/carto-datasource.interface.d.ts +13 -13
  500. package/lib/datasource/shared/datasources/cluster-datasource.d.ts +10 -10
  501. package/lib/datasource/shared/datasources/cluster-datasource.interface.d.ts +11 -11
  502. package/lib/datasource/shared/datasources/data.service.d.ts +3 -3
  503. package/lib/datasource/shared/datasources/datasource.d.ts +20 -20
  504. package/lib/datasource/shared/datasources/datasource.interface.d.ts +113 -113
  505. package/lib/datasource/shared/datasources/feature-datasource.d.ts +12 -12
  506. package/lib/datasource/shared/datasources/feature-datasource.interface.d.ts +23 -23
  507. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.d.ts +15 -15
  508. package/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.d.ts +15 -15
  509. package/lib/datasource/shared/datasources/index.d.ts +35 -35
  510. package/lib/datasource/shared/datasources/mvt-datasource.d.ts +10 -10
  511. package/lib/datasource/shared/datasources/mvt-datasource.interface.d.ts +13 -13
  512. package/lib/datasource/shared/datasources/osm-datasource.d.ts +9 -9
  513. package/lib/datasource/shared/datasources/osm-datasource.interface.d.ts +7 -7
  514. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.d.ts +15 -15
  515. package/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.d.ts +14 -14
  516. package/lib/datasource/shared/datasources/tiledebug-datasource.d.ts +9 -9
  517. package/lib/datasource/shared/datasources/tiledebug-datasource.interface.d.ts +9 -9
  518. package/lib/datasource/shared/datasources/websocket-datasource.d.ts +15 -15
  519. package/lib/datasource/shared/datasources/websocket-datasource.interface.d.ts +7 -7
  520. package/lib/datasource/shared/datasources/wfs-datasource.d.ts +20 -20
  521. package/lib/datasource/shared/datasources/wfs-datasource.interface.d.ts +20 -20
  522. package/lib/datasource/shared/datasources/wfs.service.d.ts +17 -17
  523. package/lib/datasource/shared/datasources/wms-datasource.d.ts +45 -31
  524. package/lib/datasource/shared/datasources/wms-datasource.interface.d.ts +37 -32
  525. package/lib/datasource/shared/datasources/wms-wfs.utils.d.ts +41 -41
  526. package/lib/datasource/shared/datasources/wmts-datasource.d.ts +10 -10
  527. package/lib/datasource/shared/datasources/wmts-datasource.interface.d.ts +13 -13
  528. package/lib/datasource/shared/datasources/xyz-datasource.d.ts +9 -9
  529. package/lib/datasource/shared/datasources/xyz-datasource.interface.d.ts +11 -11
  530. package/lib/datasource/shared/index.d.ts +4 -4
  531. package/lib/datasource/shared/options/index.d.ts +4 -4
  532. package/lib/datasource/shared/options/options-api.interface.d.ts +4 -4
  533. package/lib/datasource/shared/options/options-api.providers.d.ts +10 -10
  534. package/lib/datasource/shared/options/options-api.service.d.ts +16 -16
  535. package/lib/datasource/shared/options/options.service.d.ts +6 -6
  536. package/lib/datasource/utils/index.d.ts +1 -1
  537. package/lib/datasource/utils/tilegrid.d.ts +2 -2
  538. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +35 -30
  539. package/lib/directions/directions-buttons/index.d.ts +1 -1
  540. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +45 -45
  541. package/lib/directions/directions-inputs/index.d.ts +1 -1
  542. package/lib/directions/directions-results/directions-results.component.d.ts +30 -30
  543. package/lib/directions/directions-results/directions-results.theming.scss +10 -0
  544. package/lib/directions/directions-results/index.d.ts +1 -1
  545. package/lib/directions/directions-sources/directions-source.d.ts +7 -7
  546. package/lib/directions/directions-sources/directions-source.interface.d.ts +11 -11
  547. package/lib/directions/directions-sources/directions-source.provider.d.ts +11 -11
  548. package/lib/directions/directions-sources/index.d.ts +4 -4
  549. package/lib/directions/directions-sources/osrm-directions-source.d.ts +24 -23
  550. package/lib/directions/directions.component.d.ts +56 -56
  551. package/lib/directions/directions.module.d.ts +26 -26
  552. package/lib/directions/directions.theming.scss +6 -0
  553. package/lib/directions/index.d.ts +6 -6
  554. package/lib/directions/shared/directions-source.service.d.ts +11 -11
  555. package/lib/directions/shared/directions.enum.d.ts +22 -22
  556. package/lib/directions/shared/directions.interface.d.ts +126 -126
  557. package/lib/directions/shared/directions.service.d.ts +28 -13
  558. package/lib/directions/shared/directions.utils.d.ts +42 -42
  559. package/lib/directions/shared/index.d.ts +5 -5
  560. package/lib/directions/shared/store.d.ts +18 -18
  561. package/lib/download/download-button/download-button.component.d.ts +18 -18
  562. package/lib/download/download-button/index.d.ts +1 -1
  563. package/lib/download/download.module.d.ts +14 -14
  564. package/lib/download/index.d.ts +2 -2
  565. package/lib/download/shared/download.interface.d.ts +10 -10
  566. package/lib/download/shared/download.service.d.ts +10 -10
  567. package/lib/download/shared/index.d.ts +2 -2
  568. package/lib/draw/draw/draw-layer-popup.component.d.ts +14 -14
  569. package/lib/draw/draw/draw-popup.component.d.ts +63 -63
  570. package/lib/draw/draw/draw-shorcuts.component.d.ts +5 -5
  571. package/lib/draw/draw/draw.component.d.ts +240 -240
  572. package/lib/draw/draw/draw.module.d.ts +33 -34
  573. package/lib/draw/draw.theming.scss +32 -0
  574. package/lib/draw/drawingTool.module.d.ts +7 -7
  575. package/lib/draw/index.d.ts +2 -2
  576. package/lib/draw/shared/draw-icon.service.d.ts +12 -12
  577. package/lib/draw/shared/draw.enum.d.ts +17 -17
  578. package/lib/draw/shared/draw.interface.d.ts +40 -40
  579. package/lib/draw/shared/draw.utils.d.ts +35 -35
  580. package/lib/draw/shared/index.d.ts +4 -4
  581. package/lib/feature/feature-details/feature-details.component.d.ts +60 -60
  582. package/lib/feature/feature-details/feature-details.directive.d.ts +19 -19
  583. package/lib/feature/feature-details/feature-details.module.d.ts +15 -15
  584. package/lib/feature/feature-details/feature-details.theming.scss +16 -0
  585. package/lib/feature/feature-form/feature-form.component.d.ts +50 -50
  586. package/lib/feature/feature-form/feature-form.module.d.ts +12 -12
  587. package/lib/feature/feature.module.d.ts +9 -9
  588. package/lib/feature/feature.theming.scss +4 -0
  589. package/lib/feature/index.d.ts +3 -3
  590. package/lib/feature/shared/feature-store.utils.d.ts +10 -0
  591. package/lib/feature/shared/feature.enums.d.ts +7 -7
  592. package/lib/feature/shared/feature.interfaces.d.ts +82 -79
  593. package/lib/feature/shared/feature.utils.d.ts +97 -106
  594. package/lib/feature/shared/index.d.ts +7 -6
  595. package/lib/feature/shared/store.d.ts +78 -78
  596. package/lib/feature/shared/strategies/geo-properties.d.ts +61 -0
  597. package/lib/feature/shared/strategies/in-map-extent.d.ts +52 -52
  598. package/lib/feature/shared/strategies/in-map-resolution.d.ts +52 -52
  599. package/lib/feature/shared/strategies/index.d.ts +7 -6
  600. package/lib/feature/shared/strategies/loading-layer.d.ts +59 -59
  601. package/lib/feature/shared/strategies/loading.d.ts +75 -75
  602. package/lib/feature/shared/strategies/search.d.ts +55 -55
  603. package/lib/feature/shared/strategies/selection.d.ts +176 -176
  604. package/lib/feature/shared/strategies.utils.d.ts +17 -17
  605. package/lib/filter/filter.module.d.ts +53 -53
  606. package/lib/filter/filter.theming.scss +16 -0
  607. package/lib/filter/index.d.ts +15 -15
  608. package/lib/filter/ogc-filter-button/index.d.ts +1 -1
  609. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +20 -20
  610. package/lib/filter/ogc-filter-form/index.d.ts +1 -1
  611. package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +65 -65
  612. package/lib/filter/ogc-filter-selection/index.d.ts +1 -1
  613. package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +93 -93
  614. package/lib/filter/ogc-filter-selection/ogc-filter-selection.theming.scss +18 -0
  615. package/lib/filter/ogc-filter-time/index.d.ts +2 -2
  616. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +39 -39
  617. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.theming.scss +15 -0
  618. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +86 -86
  619. package/lib/filter/ogc-filterable-form/index.d.ts +1 -1
  620. package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +15 -15
  621. package/lib/filter/ogc-filterable-item/index.d.ts +1 -1
  622. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +41 -41
  623. package/lib/filter/ogc-filterable-list/index.d.ts +2 -2
  624. package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +14 -14
  625. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +10 -10
  626. package/lib/filter/shared/filterable-datasource.pipe.d.ts +10 -10
  627. package/lib/filter/shared/index.d.ts +11 -11
  628. package/lib/filter/shared/ogc-filter-time.service.d.ts +19 -19
  629. package/lib/filter/shared/ogc-filter.d.ts +29 -29
  630. package/lib/filter/shared/ogc-filter.enum.d.ts +27 -27
  631. package/lib/filter/shared/ogc-filter.interface.d.ts +200 -200
  632. package/lib/filter/shared/ogc-filter.service.d.ts +11 -11
  633. package/lib/filter/shared/spatial-filter.enum.d.ts +19 -19
  634. package/lib/filter/shared/spatial-filter.interface.d.ts +10 -10
  635. package/lib/filter/shared/spatial-filter.service.d.ts +37 -37
  636. package/lib/filter/shared/time-filter.enum.d.ts +10 -10
  637. package/lib/filter/shared/time-filter.interface.d.ts +15 -29
  638. package/lib/filter/shared/time-filter.service.d.ts +11 -11
  639. package/lib/filter/spatial-filter/spatial-filter-item/index.d.ts +1 -1
  640. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +166 -166
  641. package/lib/filter/spatial-filter/spatial-filter-list/index.d.ts +1 -1
  642. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +57 -57
  643. package/lib/filter/spatial-filter/spatial-filter-type/index.d.ts +1 -1
  644. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +45 -45
  645. package/lib/filter/time-filter-button/index.d.ts +1 -1
  646. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +20 -20
  647. package/lib/filter/time-filter-form/index.d.ts +1 -1
  648. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +77 -77
  649. package/lib/filter/time-filter-form/time-filter-form.theming.scss +5 -0
  650. package/lib/filter/time-filter-item/index.d.ts +1 -1
  651. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +28 -28
  652. package/lib/filter/time-filter-list/index.d.ts +2 -2
  653. package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +14 -14
  654. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +12 -12
  655. package/lib/geo.module.d.ts +29 -29
  656. package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +202 -202
  657. package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +88 -88
  658. package/lib/geometry/geometry-form-field/geometry-form-field.module.d.ts +19 -19
  659. package/lib/geometry/geometry.module.d.ts +8 -8
  660. package/lib/geometry/index.d.ts +3 -3
  661. package/lib/geometry/shared/controls/draw.d.ts +150 -150
  662. package/lib/geometry/shared/controls/index.d.ts +3 -3
  663. package/lib/geometry/shared/controls/modify.d.ts +228 -228
  664. package/lib/geometry/shared/controls/slice.d.ts +99 -99
  665. package/lib/geometry/shared/geometry.errors.d.ts +11 -11
  666. package/lib/geometry/shared/geometry.interfaces.d.ts +13 -13
  667. package/lib/geometry/shared/geometry.utils.d.ts +45 -45
  668. package/lib/geometry/shared/index.d.ts +4 -4
  669. package/lib/import-export/export-button/export-button.component.d.ts +16 -16
  670. package/lib/import-export/export-button/index.d.ts +1 -1
  671. package/lib/import-export/import-export/import-export.component.d.ts +109 -109
  672. package/lib/import-export/import-export/index.d.ts +1 -1
  673. package/lib/import-export/import-export.module.d.ts +25 -25
  674. package/lib/import-export/index.d.ts +3 -3
  675. package/lib/import-export/shared/drop-geo-file.directive.d.ts +39 -39
  676. package/lib/import-export/shared/export.errors.d.ts +8 -8
  677. package/lib/import-export/shared/export.interface.d.ts +11 -11
  678. package/lib/import-export/shared/export.service.d.ts +30 -30
  679. package/lib/import-export/shared/export.type.d.ts +16 -16
  680. package/lib/import-export/shared/export.utils.d.ts +19 -19
  681. package/lib/import-export/shared/import.errors.d.ts +20 -20
  682. package/lib/import-export/shared/import.interface.d.ts +10 -10
  683. package/lib/import-export/shared/import.service.d.ts +31 -31
  684. package/lib/import-export/shared/import.utils.d.ts +20 -20
  685. package/lib/import-export/shared/index.d.ts +10 -10
  686. package/lib/layer/index.d.ts +9 -9
  687. package/lib/layer/layer-item/index.d.ts +1 -1
  688. package/lib/layer/layer-item/layer-item.component.d.ts +62 -62
  689. package/lib/layer/layer-legend/index.d.ts +1 -1
  690. package/lib/layer/layer-legend/layer-legend.component.d.ts +90 -90
  691. package/lib/layer/layer-legend/layer-legend.theming.scss +10 -0
  692. package/lib/layer/layer-legend-item/index.d.ts +1 -1
  693. package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +22 -22
  694. package/lib/layer/layer-legend-list/index.d.ts +2 -2
  695. package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +16 -16
  696. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +31 -31
  697. package/lib/layer/layer-list/index.d.ts +3 -3
  698. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +19 -19
  699. package/lib/layer/layer-list/layer-list.component.d.ts +127 -127
  700. package/lib/layer/layer-list/layer-list.enum.d.ts +15 -15
  701. package/lib/layer/layer-list-tool/index.d.ts +4 -4
  702. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +32 -32
  703. package/lib/layer/layer-list-tool/layer-list-tool.enum.d.ts +5 -5
  704. package/lib/layer/layer-list-tool/layer-list-tool.interface.d.ts +8 -8
  705. package/lib/layer/layer-list-tool/layer-list-tool.service.d.ts +14 -14
  706. package/lib/layer/layer-list-tool/layer-list-tool.theming.scss +22 -0
  707. package/lib/layer/layer.module.d.ts +34 -35
  708. package/lib/layer/layer.theming.scss +24 -0
  709. package/lib/layer/shared/clusterParam.d.ts +13 -13
  710. package/lib/layer/shared/index.d.ts +4 -4
  711. package/lib/layer/shared/layer.enums.d.ts +1 -1
  712. package/lib/layer/shared/layer.service.d.ts +33 -33
  713. package/lib/layer/shared/layers/any-layer.d.ts +6 -6
  714. package/lib/layer/shared/layers/any-layer.interface.d.ts +6 -6
  715. package/lib/layer/shared/layers/image-layer.d.ts +21 -21
  716. package/lib/layer/shared/layers/image-layer.interface.d.ts +19 -19
  717. package/lib/layer/shared/layers/index.d.ts +12 -12
  718. package/lib/layer/shared/layers/layer.d.ts +66 -66
  719. package/lib/layer/shared/layers/layer.interface.d.ts +90 -109
  720. package/lib/layer/shared/layers/legend.interface.d.ts +22 -0
  721. package/lib/layer/shared/layers/tile-layer.d.ts +31 -31
  722. package/lib/layer/shared/layers/tile-layer.interface.d.ts +20 -20
  723. package/lib/layer/shared/layers/vector-layer.d.ts +94 -94
  724. package/lib/layer/shared/layers/vector-layer.interface.d.ts +42 -42
  725. package/lib/layer/shared/layers/vectortile-layer.d.ts +28 -28
  726. package/lib/layer/shared/layers/vectortile-layer.interface.d.ts +16 -16
  727. package/lib/layer/track-feature-button/index.d.ts +1 -1
  728. package/lib/layer/track-feature-button/track-feature-button.component.d.ts +15 -15
  729. package/lib/layer/utils/image-watcher.d.ts +16 -16
  730. package/lib/layer/utils/index.d.ts +5 -5
  731. package/lib/layer/utils/layer.utils.d.ts +2 -2
  732. package/lib/layer/utils/outputLegend.d.ts +7 -7
  733. package/lib/layer/utils/tile-watcher.d.ts +14 -14
  734. package/lib/layer/utils/vector-watcher.d.ts +13 -13
  735. package/lib/map/baselayers-switcher/baselayers-switcher.animation.d.ts +2 -2
  736. package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +22 -21
  737. package/lib/map/baselayers-switcher/index.d.ts +2 -2
  738. package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +29 -29
  739. package/lib/map/geolocate-button/geolocate-button.component.d.ts +22 -22
  740. package/lib/map/geolocate-button/index.d.ts +1 -1
  741. package/lib/map/home-extent-button/home-extent-button.component.d.ts +20 -20
  742. package/lib/map/home-extent-button/index.d.ts +1 -1
  743. package/lib/map/index.d.ts +13 -13
  744. package/lib/map/info-section/index.d.ts +1 -1
  745. package/lib/map/info-section/info-section.component.d.ts +7 -7
  746. package/lib/map/map-browser/index.d.ts +1 -1
  747. package/lib/map/map-browser/map-browser.component.d.ts +25 -25
  748. package/lib/map/map-browser/map-browser.theming.scss +46 -0
  749. package/lib/map/map-center/index.d.ts +1 -1
  750. package/lib/map/map-center/map-center.component.d.ts +31 -31
  751. package/lib/map/map.module.d.ts +28 -28
  752. package/lib/map/map.theming.scss +9 -0
  753. package/lib/map/menu-button/index.d.ts +1 -1
  754. package/lib/map/menu-button/menu-button.component.d.ts +17 -17
  755. package/lib/map/menu-button/menu-button.theming.scss +24 -0
  756. package/lib/map/offline-button/index.d.ts +1 -1
  757. package/lib/map/offline-button/offline-button.component.d.ts +15 -15
  758. package/lib/map/rotation-button/index.d.ts +1 -1
  759. package/lib/map/rotation-button/rotation-button.component.d.ts +17 -17
  760. package/lib/map/shared/controllers/controller.d.ts +29 -29
  761. package/lib/map/shared/controllers/geolocation.d.ts +95 -127
  762. package/lib/map/shared/controllers/geolocation.interface.d.ts +30 -0
  763. package/lib/map/shared/controllers/index.d.ts +4 -3
  764. package/lib/map/shared/controllers/view.d.ts +200 -200
  765. package/lib/map/shared/hover-feature.directive.d.ts +124 -124
  766. package/lib/map/shared/index.d.ts +14 -13
  767. package/lib/map/shared/linkedLayers.utils.d.ts +17 -17
  768. package/lib/map/shared/map-pointer-position.directive.d.ts +71 -71
  769. package/lib/map/shared/map.abstract.d.ts +59 -0
  770. package/lib/map/shared/map.d.ts +140 -135
  771. package/lib/map/shared/map.enums.d.ts +4 -4
  772. package/lib/map/shared/map.interface.d.ts +57 -57
  773. package/lib/map/shared/map.service.d.ts +19 -19
  774. package/lib/map/shared/map.utils.d.ts +90 -90
  775. package/lib/map/shared/mapOffline.directive.d.ts +18 -18
  776. package/lib/map/shared/projection.interfaces.d.ts +29 -29
  777. package/lib/map/shared/projection.service.d.ts +19 -19
  778. package/lib/map/shared/projection.utils.d.ts +19 -19
  779. package/lib/map/swipe-control/index.d.ts +1 -1
  780. package/lib/map/swipe-control/swipe-control.component.d.ts +97 -97
  781. package/lib/map/utils/layer-watcher.d.ts +20 -20
  782. package/lib/map/wake-lock-button/index.d.ts +1 -1
  783. package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +27 -27
  784. package/lib/map/zoom-button/index.d.ts +1 -1
  785. package/lib/map/zoom-button/zoom-button.component.d.ts +12 -12
  786. package/lib/map/zoom-button/zoom-button.theming.scss +32 -0
  787. package/lib/measure/index.d.ts +3 -3
  788. package/lib/measure/measure.module.d.ts +7 -7
  789. package/lib/measure/measure.theming.scss +5 -0
  790. package/lib/measure/measurer/measure-format.pipe.d.ts +15 -15
  791. package/lib/measure/measurer/measurer-dialog.component.d.ts +14 -14
  792. package/lib/measure/measurer/measurer-item.component.d.ts +66 -66
  793. package/lib/measure/measurer/measurer.component.d.ts +405 -405
  794. package/lib/measure/measurer/measurer.module.d.ts +26 -25
  795. package/lib/measure/measurer/measurer.theming.scss +26 -0
  796. package/lib/measure/shared/index.d.ts +3 -3
  797. package/lib/measure/shared/measure.enum.d.ts +33 -33
  798. package/lib/measure/shared/measure.interfaces.d.ts +21 -21
  799. package/lib/measure/shared/measure.utils.d.ts +180 -180
  800. package/lib/metadata/index.d.ts +2 -2
  801. package/lib/metadata/metadata-button/index.d.ts +1 -1
  802. package/lib/metadata/metadata-button/metadata-button.component.d.ts +26 -26
  803. package/lib/metadata/metadata.module.d.ts +15 -15
  804. package/lib/metadata/shared/index.d.ts +2 -2
  805. package/lib/metadata/shared/metadata.interface.d.ts +13 -13
  806. package/lib/metadata/shared/metadata.service.d.ts +8 -8
  807. package/lib/offline/geoDB/configFileToGeoDB.service.d.ts +14 -14
  808. package/lib/offline/geoDB/geoDB.enums.d.ts +4 -4
  809. package/lib/offline/geoDB/geoDB.interface.d.ts +19 -19
  810. package/lib/offline/geoDB/geoDB.service.d.ts +37 -37
  811. package/lib/offline/geoDB/index.d.ts +4 -4
  812. package/lib/offline/index.d.ts +3 -3
  813. package/lib/offline/layerDB/index.d.ts +2 -2
  814. package/lib/offline/layerDB/layerDB.interface.d.ts +7 -7
  815. package/lib/offline/layerDB/layerDB.service.d.ts +36 -36
  816. package/lib/offline/shared/geo-network.service.d.ts +28 -28
  817. package/lib/offline/shared/index.d.ts +1 -1
  818. package/lib/overlay/index.d.ts +1 -1
  819. package/lib/overlay/overlay.module.d.ts +9 -9
  820. package/lib/overlay/shared/index.d.ts +5 -5
  821. package/lib/overlay/shared/overlay.d.ts +81 -81
  822. package/lib/overlay/shared/overlay.directive.d.ts +18 -18
  823. package/lib/overlay/shared/overlay.enum.d.ts +6 -6
  824. package/lib/overlay/shared/overlay.service.d.ts +14 -14
  825. package/lib/overlay/shared/overlay.utils.d.ts +6 -6
  826. package/lib/print/index.d.ts +3 -3
  827. package/lib/print/print/print.component.d.ts +35 -35
  828. package/lib/print/print-form/index.d.ts +1 -1
  829. package/lib/print/print-form/print-form.component.d.ts +99 -99
  830. package/lib/print/print.module.d.ts +19 -19
  831. package/lib/print/shared/geopdf.d.ts +1 -1
  832. package/lib/print/shared/index.d.ts +4 -4
  833. package/lib/print/shared/print.interface.d.ts +22 -22
  834. package/lib/print/shared/print.service.d.ts +171 -174
  835. package/lib/print/shared/print.type.d.ts +45 -45
  836. package/lib/query/index.d.ts +1 -1
  837. package/lib/query/query.module.d.ts +11 -11
  838. package/lib/query/shared/index.d.ts +6 -6
  839. package/lib/query/shared/query-search-source.d.ts +17 -17
  840. package/lib/query/shared/query-search-source.providers.d.ts +17 -17
  841. package/lib/query/shared/query.directive.d.ts +105 -105
  842. package/lib/query/shared/query.enums.d.ts +26 -26
  843. package/lib/query/shared/query.interfaces.d.ts +35 -35
  844. package/lib/query/shared/query.service.d.ts +56 -56
  845. package/lib/query/shared/query.utils.d.ts +27 -27
  846. package/lib/search/index.d.ts +11 -11
  847. package/lib/search/search-bar/search-bar.component.d.ts +231 -230
  848. package/lib/search/search-bar/search-bar.module.d.ts +24 -23
  849. package/lib/search/search-bar/search-bar.theming.scss +36 -0
  850. package/lib/search/search-bar/search-url-param.directive.d.ts +13 -13
  851. package/lib/search/search-results/save-feature-dialog.component.d.ts +32 -32
  852. package/lib/search/search-results/search-results-add-button.component.d.ts +84 -84
  853. package/lib/search/search-results/search-results-item.component.d.ts +52 -52
  854. package/lib/search/search-results/search-results.component.d.ts +165 -165
  855. package/lib/search/search-results/search-results.module.d.ts +29 -29
  856. package/lib/search/search-selector/search-selector.component.d.ts +58 -58
  857. package/lib/search/search-selector/search-selector.module.d.ts +19 -19
  858. package/lib/search/search-settings/search-settings.component.d.ts +102 -102
  859. package/lib/search/search-settings/search-settings.module.d.ts +20 -20
  860. package/lib/search/search.module.d.ts +14 -14
  861. package/lib/search/search.theming.scss +5 -0
  862. package/lib/search/shared/index.d.ts +8 -8
  863. package/lib/search/shared/search-pointer-summary.directive.d.ts +125 -124
  864. package/lib/search/shared/search-source-service.providers.d.ts +15 -15
  865. package/lib/search/shared/search-source.service.d.ts +39 -39
  866. package/lib/search/shared/search.enums.d.ts +1 -1
  867. package/lib/search/shared/search.interfaces.d.ts +54 -29
  868. package/lib/search/shared/search.service.d.ts +53 -53
  869. package/lib/search/shared/search.utils.d.ts +39 -39
  870. package/lib/search/shared/sources/cadastre.d.ts +34 -33
  871. package/lib/search/shared/sources/cadastre.providers.d.ts +18 -18
  872. package/lib/search/shared/sources/coordinates.d.ts +40 -40
  873. package/lib/search/shared/sources/coordinates.interfaces.d.ts +12 -12
  874. package/lib/search/shared/sources/coordinates.providers.d.ts +31 -31
  875. package/lib/search/shared/sources/icherche.d.ts +98 -96
  876. package/lib/search/shared/sources/icherche.interfaces.d.ts +30 -30
  877. package/lib/search/shared/sources/icherche.providers.d.ts +46 -46
  878. package/lib/search/shared/sources/ilayer.d.ts +56 -55
  879. package/lib/search/shared/sources/ilayer.interfaces.d.ts +47 -47
  880. package/lib/search/shared/sources/ilayer.providers.d.ts +31 -31
  881. package/lib/search/shared/sources/index.d.ts +22 -22
  882. package/lib/search/shared/sources/nominatim.d.ts +46 -45
  883. package/lib/search/shared/sources/nominatim.interfaces.d.ts +10 -10
  884. package/lib/search/shared/sources/nominatim.providers.d.ts +18 -18
  885. package/lib/search/shared/sources/source.d.ts +86 -114
  886. package/lib/search/shared/sources/source.interfaces.d.ts +54 -47
  887. package/lib/search/shared/sources/storedqueries.d.ts +75 -73
  888. package/lib/search/shared/sources/storedqueries.interfaces.d.ts +42 -42
  889. package/lib/search/shared/sources/storedqueries.providers.d.ts +32 -32
  890. package/lib/search/shared/sources/workspace.d.ts +33 -33
  891. package/lib/search/shared/sources/workspace.interfaces.d.ts +9 -9
  892. package/lib/search/shared/sources/workspace.providers.d.ts +17 -17
  893. package/lib/style/index.d.ts +4 -4
  894. package/lib/style/shared/datasource/esri-style-generator.d.ts +21 -21
  895. package/lib/style/shared/datasource/index.d.ts +1 -1
  896. package/lib/style/shared/feature/feature-style.d.ts +18 -18
  897. package/lib/style/shared/feature/index.d.ts +1 -1
  898. package/lib/style/shared/font.enum.d.ts +15 -15
  899. package/lib/style/shared/index.d.ts +4 -4
  900. package/lib/style/shared/overlay/index.d.ts +2 -2
  901. package/lib/style/shared/overlay/overlay-marker-style.utils.d.ts +11 -11
  902. package/lib/style/shared/overlay/overlay-style.utils.d.ts +19 -19
  903. package/lib/style/shared/vector/commonVectorStyle.d.ts +14 -14
  904. package/lib/style/shared/vector/conversion.utils.d.ts +22 -22
  905. package/lib/style/shared/vector/index.d.ts +3 -3
  906. package/lib/style/shared/vector/vector-style.interface.d.ts +69 -69
  907. package/lib/style/style-list/index.d.ts +4 -4
  908. package/lib/style/style-list/style-list.interface.d.ts +6 -6
  909. package/lib/style/style-list/style-list.module.d.ts +8 -8
  910. package/lib/style/style-list/style-list.provider.d.ts +15 -15
  911. package/lib/style/style-list/style-list.service.d.ts +18 -18
  912. package/lib/style/style-modal/drawing/index.d.ts +1 -1
  913. package/lib/style/style-modal/drawing/style-modal-drawing.component.d.ts +33 -31
  914. package/lib/style/style-modal/index.d.ts +4 -4
  915. package/lib/style/style-modal/layer/index.d.ts +1 -1
  916. package/lib/style/style-modal/layer/style-modal-layer.component.d.ts +32 -30
  917. package/lib/style/style-modal/layer-button/index.d.ts +1 -1
  918. package/lib/style/style-modal/layer-button/style-modal-layer-button.component.d.ts +14 -14
  919. package/lib/style/style-modal/shared/index.d.ts +1 -1
  920. package/lib/style/style-modal/shared/style-modal.interface.d.ts +17 -17
  921. package/lib/style/style-service/draw-style.service.d.ts +35 -35
  922. package/lib/style/style-service/index.d.ts +2 -2
  923. package/lib/style/style-service/style.service.d.ts +57 -57
  924. package/lib/style/style.module.d.ts +23 -22
  925. package/lib/toast/index.d.ts +1 -1
  926. package/lib/toast/toast.component.d.ts +33 -33
  927. package/lib/toast/toast.module.d.ts +14 -14
  928. package/lib/utils/googleLinks.d.ts +5 -5
  929. package/lib/utils/id-generator.d.ts +54 -54
  930. package/lib/utils/index.d.ts +4 -3
  931. package/lib/utils/osmLinks.d.ts +4 -4
  932. package/lib/utils/propertyTypeDetector/index.d.ts +2 -0
  933. package/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.d.ts +5 -0
  934. package/lib/utils/propertyTypeDetector/propertyTypeDetector.service.d.ts +15 -0
  935. package/lib/wkt/index.d.ts +1 -1
  936. package/lib/wkt/shared/index.d.ts +1 -1
  937. package/lib/wkt/shared/wkt.service.d.ts +19 -19
  938. package/lib/wkt/wkt.module.d.ts +8 -8
  939. package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +23 -23
  940. package/lib/workspace/confirmation-popup/confirmation-popup.module.d.ts +14 -14
  941. package/lib/workspace/confirmation-popup/confirmation-popup.theming.scss +14 -0
  942. package/lib/workspace/confirmation-popup/index.d.ts +2 -2
  943. package/lib/workspace/index.d.ts +7 -7
  944. package/lib/workspace/shared/edition-workspace.d.ts +84 -82
  945. package/lib/workspace/shared/edition-workspace.service.d.ts +50 -51
  946. package/lib/workspace/shared/feature-workspace.d.ts +18 -18
  947. package/lib/workspace/shared/feature-workspace.service.d.ts +22 -19
  948. package/lib/workspace/shared/index.d.ts +7 -7
  949. package/lib/workspace/shared/wfs-workspace.d.ts +18 -18
  950. package/lib/workspace/shared/wfs-workspace.service.d.ts +22 -19
  951. package/lib/workspace/shared/wms-workspace.service.d.ts +24 -22
  952. package/lib/workspace/shared/workspace.utils.d.ts +23 -10
  953. package/lib/workspace/widgets/index.d.ts +3 -3
  954. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +29 -29
  955. package/lib/workspace/widgets/ogc-filter/ogc-filter.module.d.ts +14 -14
  956. package/lib/workspace/widgets/widgets.d.ts +9 -9
  957. package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +32 -32
  958. package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +11 -11
  959. package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +26 -26
  960. package/lib/workspace/workspace-updator/workspace-updator.module.d.ts +11 -11
  961. package/lib/workspace/workspace.module.d.ts +14 -14
  962. package/lib/workspace/workspace.theming.scss +6 -0
  963. package/locale/en.geo.json +807 -0
  964. package/locale/fr.geo.json +808 -0
  965. package/package.json +38 -38
  966. package/public_api.d.ts +53 -53
  967. package/style/style.css +350 -0
  968. package/esm2020/igo2-geo.mjs +0 -5
  969. package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +0 -303
  970. package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +0 -306
  971. package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +0 -250
  972. package/esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs +0 -80
  973. package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +0 -209
  974. package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +0 -79
  975. package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +0 -212
  976. package/esm2020/lib/catalog/catalog-library/catalog-library.module.mjs +0 -95
  977. package/esm2020/lib/catalog/catalog.module.mjs +0 -53
  978. package/esm2020/lib/catalog/index.mjs +0 -5
  979. package/esm2020/lib/catalog/shared/catalog.abstract.mjs +0 -95
  980. package/esm2020/lib/catalog/shared/catalog.enum.mjs +0 -16
  981. package/esm2020/lib/catalog/shared/catalog.interface.mjs +0 -2
  982. package/esm2020/lib/catalog/shared/catalog.service.mjs +0 -604
  983. package/esm2020/lib/catalog/shared/index.mjs +0 -5
  984. package/esm2020/lib/datasource/datasource.module.mjs +0 -22
  985. package/esm2020/lib/datasource/index.mjs +0 -3
  986. package/esm2020/lib/datasource/shared/capabilities.service.mjs +0 -431
  987. package/esm2020/lib/datasource/shared/datasource.service.mjs +0 -232
  988. package/esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs +0 -2
  989. package/esm2020/lib/datasource/shared/datasources/any-datasource.mjs +0 -2
  990. package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +0 -2
  991. package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +0 -145
  992. package/esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs +0 -2
  993. package/esm2020/lib/datasource/shared/datasources/carto-datasource.mjs +0 -109
  994. package/esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +0 -2
  995. package/esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs +0 -15
  996. package/esm2020/lib/datasource/shared/datasources/data.service.mjs +0 -3
  997. package/esm2020/lib/datasource/shared/datasources/datasource.interface.mjs +0 -2
  998. package/esm2020/lib/datasource/shared/datasources/datasource.mjs +0 -29
  999. package/esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs +0 -2
  1000. package/esm2020/lib/datasource/shared/datasources/feature-datasource.mjs +0 -43
  1001. package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +0 -2
  1002. package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +0 -57
  1003. package/esm2020/lib/datasource/shared/datasources/index.mjs +0 -36
  1004. package/esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +0 -2
  1005. package/esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs +0 -28
  1006. package/esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs +0 -2
  1007. package/esm2020/lib/datasource/shared/datasources/osm-datasource.mjs +0 -12
  1008. package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +0 -2
  1009. package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +0 -49
  1010. package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +0 -2
  1011. package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs +0 -15
  1012. package/esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +0 -2
  1013. package/esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs +0 -54
  1014. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +0 -2
  1015. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +0 -72
  1016. package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +0 -152
  1017. package/esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs +0 -2
  1018. package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +0 -206
  1019. package/esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs +0 -207
  1020. package/esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +0 -2
  1021. package/esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs +0 -16
  1022. package/esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +0 -2
  1023. package/esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs +0 -9
  1024. package/esm2020/lib/datasource/shared/index.mjs +0 -5
  1025. package/esm2020/lib/datasource/shared/options/index.mjs +0 -5
  1026. package/esm2020/lib/datasource/shared/options/options-api.interface.mjs +0 -2
  1027. package/esm2020/lib/datasource/shared/options/options-api.providers.mjs +0 -15
  1028. package/esm2020/lib/datasource/shared/options/options-api.service.mjs +0 -81
  1029. package/esm2020/lib/datasource/shared/options/options.service.mjs +0 -3
  1030. package/esm2020/lib/datasource/utils/index.mjs +0 -2
  1031. package/esm2020/lib/datasource/utils/tilegrid.mjs +0 -20
  1032. package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +0 -218
  1033. package/esm2020/lib/directions/directions-buttons/index.mjs +0 -2
  1034. package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +0 -290
  1035. package/esm2020/lib/directions/directions-inputs/index.mjs +0 -2
  1036. package/esm2020/lib/directions/directions-results/directions-results.component.mjs +0 -196
  1037. package/esm2020/lib/directions/directions-results/index.mjs +0 -2
  1038. package/esm2020/lib/directions/directions-sources/directions-source.interface.mjs +0 -2
  1039. package/esm2020/lib/directions/directions-sources/directions-source.mjs +0 -3
  1040. package/esm2020/lib/directions/directions-sources/directions-source.provider.mjs +0 -16
  1041. package/esm2020/lib/directions/directions-sources/index.mjs +0 -5
  1042. package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +0 -99
  1043. package/esm2020/lib/directions/directions.component.mjs +0 -311
  1044. package/esm2020/lib/directions/directions.module.mjs +0 -102
  1045. package/esm2020/lib/directions/index.mjs +0 -7
  1046. package/esm2020/lib/directions/shared/directions-source.service.mjs +0 -17
  1047. package/esm2020/lib/directions/shared/directions.enum.mjs +0 -28
  1048. package/esm2020/lib/directions/shared/directions.interface.mjs +0 -2
  1049. package/esm2020/lib/directions/shared/directions.service.mjs +0 -29
  1050. package/esm2020/lib/directions/shared/directions.utils.mjs +0 -509
  1051. package/esm2020/lib/directions/shared/index.mjs +0 -6
  1052. package/esm2020/lib/directions/shared/store.mjs +0 -24
  1053. package/esm2020/lib/download/download-button/download-button.component.mjs +0 -61
  1054. package/esm2020/lib/download/download-button/index.mjs +0 -2
  1055. package/esm2020/lib/download/download.module.mjs +0 -42
  1056. package/esm2020/lib/download/index.mjs +0 -3
  1057. package/esm2020/lib/download/shared/download.interface.mjs +0 -2
  1058. package/esm2020/lib/download/shared/download.service.mjs +0 -62
  1059. package/esm2020/lib/download/shared/index.mjs +0 -3
  1060. package/esm2020/lib/draw/draw/draw-layer-popup.component.mjs +0 -55
  1061. package/esm2020/lib/draw/draw/draw-popup.component.mjs +0 -591
  1062. package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +0 -48
  1063. package/esm2020/lib/draw/draw/draw.component.mjs +0 -1300
  1064. package/esm2020/lib/draw/draw/draw.module.mjs +0 -113
  1065. package/esm2020/lib/draw/drawingTool.module.mjs +0 -20
  1066. package/esm2020/lib/draw/index.mjs +0 -3
  1067. package/esm2020/lib/draw/shared/draw-icon.service.mjs +0 -27
  1068. package/esm2020/lib/draw/shared/draw.enum.mjs +0 -21
  1069. package/esm2020/lib/draw/shared/draw.interface.mjs +0 -2
  1070. package/esm2020/lib/draw/shared/draw.utils.mjs +0 -122
  1071. package/esm2020/lib/draw/shared/index.mjs +0 -5
  1072. package/esm2020/lib/feature/feature-details/feature-details.component.mjs +0 -404
  1073. package/esm2020/lib/feature/feature-details/feature-details.directive.mjs +0 -54
  1074. package/esm2020/lib/feature/feature-details/feature-details.module.mjs +0 -48
  1075. package/esm2020/lib/feature/feature-form/feature-form.component.mjs +0 -112
  1076. package/esm2020/lib/feature/feature-form/feature-form.module.mjs +0 -34
  1077. package/esm2020/lib/feature/feature.module.mjs +0 -28
  1078. package/esm2020/lib/feature/index.mjs +0 -4
  1079. package/esm2020/lib/feature/shared/feature.enums.mjs +0 -9
  1080. package/esm2020/lib/feature/shared/feature.interfaces.mjs +0 -2
  1081. package/esm2020/lib/feature/shared/feature.utils.mjs +0 -349
  1082. package/esm2020/lib/feature/shared/index.mjs +0 -7
  1083. package/esm2020/lib/feature/shared/store.mjs +0 -133
  1084. package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +0 -113
  1085. package/esm2020/lib/feature/shared/strategies/in-map-resolution.mjs +0 -94
  1086. package/esm2020/lib/feature/shared/strategies/index.mjs +0 -7
  1087. package/esm2020/lib/feature/shared/strategies/loading-layer.mjs +0 -104
  1088. package/esm2020/lib/feature/shared/strategies/loading.mjs +0 -133
  1089. package/esm2020/lib/feature/shared/strategies/search.mjs +0 -150
  1090. package/esm2020/lib/feature/shared/strategies/selection.mjs +0 -370
  1091. package/esm2020/lib/feature/shared/strategies.utils.mjs +0 -37
  1092. package/esm2020/lib/filter/filter.module.mjs +0 -289
  1093. package/esm2020/lib/filter/index.mjs +0 -16
  1094. package/esm2020/lib/filter/ogc-filter-button/index.mjs +0 -2
  1095. package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +0 -140
  1096. package/esm2020/lib/filter/ogc-filter-form/index.mjs +0 -2
  1097. package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +0 -645
  1098. package/esm2020/lib/filter/ogc-filter-selection/index.mjs +0 -2
  1099. package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +0 -1302
  1100. package/esm2020/lib/filter/ogc-filter-time/index.mjs +0 -3
  1101. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +0 -177
  1102. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +0 -898
  1103. package/esm2020/lib/filter/ogc-filterable-form/index.mjs +0 -2
  1104. package/esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +0 -59
  1105. package/esm2020/lib/filter/ogc-filterable-item/index.mjs +0 -2
  1106. package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +0 -307
  1107. package/esm2020/lib/filter/ogc-filterable-list/index.mjs +0 -3
  1108. package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +0 -31
  1109. package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +0 -44
  1110. package/esm2020/lib/filter/shared/filterable-datasource.pipe.mjs +0 -55
  1111. package/esm2020/lib/filter/shared/index.mjs +0 -12
  1112. package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +0 -72
  1113. package/esm2020/lib/filter/shared/ogc-filter.enum.mjs +0 -30
  1114. package/esm2020/lib/filter/shared/ogc-filter.interface.mjs +0 -2
  1115. package/esm2020/lib/filter/shared/ogc-filter.mjs +0 -692
  1116. package/esm2020/lib/filter/shared/ogc-filter.service.mjs +0 -46
  1117. package/esm2020/lib/filter/shared/spatial-filter.enum.mjs +0 -23
  1118. package/esm2020/lib/filter/shared/spatial-filter.interface.mjs +0 -2
  1119. package/esm2020/lib/filter/shared/spatial-filter.service.mjs +0 -269
  1120. package/esm2020/lib/filter/shared/time-filter.enum.mjs +0 -13
  1121. package/esm2020/lib/filter/shared/time-filter.interface.mjs +0 -2
  1122. package/esm2020/lib/filter/shared/time-filter.service.mjs +0 -107
  1123. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs +0 -2
  1124. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +0 -1089
  1125. package/esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs +0 -2
  1126. package/esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +0 -207
  1127. package/esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs +0 -2
  1128. package/esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +0 -144
  1129. package/esm2020/lib/filter/time-filter-button/index.mjs +0 -2
  1130. package/esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs +0 -78
  1131. package/esm2020/lib/filter/time-filter-form/index.mjs +0 -2
  1132. package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +0 -734
  1133. package/esm2020/lib/filter/time-filter-item/index.mjs +0 -2
  1134. package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +0 -119
  1135. package/esm2020/lib/filter/time-filter-list/index.mjs +0 -3
  1136. package/esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +0 -31
  1137. package/esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs +0 -39
  1138. package/esm2020/lib/geo.module.mjs +0 -106
  1139. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +0 -522
  1140. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +0 -189
  1141. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +0 -64
  1142. package/esm2020/lib/geometry/geometry.module.mjs +0 -27
  1143. package/esm2020/lib/geometry/index.mjs +0 -4
  1144. package/esm2020/lib/geometry/shared/controls/draw.mjs +0 -314
  1145. package/esm2020/lib/geometry/shared/controls/index.mjs +0 -4
  1146. package/esm2020/lib/geometry/shared/controls/modify.mjs +0 -521
  1147. package/esm2020/lib/geometry/shared/controls/slice.mjs +0 -177
  1148. package/esm2020/lib/geometry/shared/geometry.errors.mjs +0 -26
  1149. package/esm2020/lib/geometry/shared/geometry.interfaces.mjs +0 -2
  1150. package/esm2020/lib/geometry/shared/geometry.utils.mjs +0 -122
  1151. package/esm2020/lib/geometry/shared/index.mjs +0 -5
  1152. package/esm2020/lib/import-export/export-button/export-button.component.mjs +0 -64
  1153. package/esm2020/lib/import-export/export-button/index.mjs +0 -2
  1154. package/esm2020/lib/import-export/import-export/import-export.component.mjs +0 -1228
  1155. package/esm2020/lib/import-export/import-export/index.mjs +0 -2
  1156. package/esm2020/lib/import-export/import-export.module.mjs +0 -92
  1157. package/esm2020/lib/import-export/index.mjs +0 -4
  1158. package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +0 -152
  1159. package/esm2020/lib/import-export/shared/export.errors.mjs +0 -15
  1160. package/esm2020/lib/import-export/shared/export.interface.mjs +0 -2
  1161. package/esm2020/lib/import-export/shared/export.service.mjs +0 -195
  1162. package/esm2020/lib/import-export/shared/export.type.mjs +0 -4
  1163. package/esm2020/lib/import-export/shared/export.utils.mjs +0 -46
  1164. package/esm2020/lib/import-export/shared/import.errors.mjs +0 -39
  1165. package/esm2020/lib/import-export/shared/import.interface.mjs +0 -2
  1166. package/esm2020/lib/import-export/shared/import.service.mjs +0 -215
  1167. package/esm2020/lib/import-export/shared/import.utils.mjs +0 -202
  1168. package/esm2020/lib/import-export/shared/index.mjs +0 -11
  1169. package/esm2020/lib/layer/index.mjs +0 -10
  1170. package/esm2020/lib/layer/layer-item/index.mjs +0 -2
  1171. package/esm2020/lib/layer/layer-item/layer-item.component.mjs +0 -300
  1172. package/esm2020/lib/layer/layer-legend/index.mjs +0 -2
  1173. package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +0 -388
  1174. package/esm2020/lib/layer/layer-legend-item/index.mjs +0 -2
  1175. package/esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs +0 -84
  1176. package/esm2020/lib/layer/layer-legend-list/index.mjs +0 -3
  1177. package/esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +0 -48
  1178. package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +0 -195
  1179. package/esm2020/lib/layer/layer-list/index.mjs +0 -4
  1180. package/esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs +0 -59
  1181. package/esm2020/lib/layer/layer-list/layer-list.component.mjs +0 -1009
  1182. package/esm2020/lib/layer/layer-list/layer-list.enum.mjs +0 -19
  1183. package/esm2020/lib/layer/layer-list-tool/index.mjs +0 -5
  1184. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +0 -165
  1185. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +0 -7
  1186. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +0 -2
  1187. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs +0 -22
  1188. package/esm2020/lib/layer/layer.module.mjs +0 -180
  1189. package/esm2020/lib/layer/shared/clusterParam.mjs +0 -2
  1190. package/esm2020/lib/layer/shared/index.mjs +0 -5
  1191. package/esm2020/lib/layer/shared/layer.enums.mjs +0 -2
  1192. package/esm2020/lib/layer/shared/layer.service.mjs +0 -237
  1193. package/esm2020/lib/layer/shared/layers/any-layer.interface.mjs +0 -2
  1194. package/esm2020/lib/layer/shared/layers/any-layer.mjs +0 -2
  1195. package/esm2020/lib/layer/shared/layers/image-layer.interface.mjs +0 -2
  1196. package/esm2020/lib/layer/shared/layers/image-layer.mjs +0 -67
  1197. package/esm2020/lib/layer/shared/layers/index.mjs +0 -13
  1198. package/esm2020/lib/layer/shared/layers/layer.interface.mjs +0 -17
  1199. package/esm2020/lib/layer/shared/layers/layer.mjs +0 -166
  1200. package/esm2020/lib/layer/shared/layers/tile-layer.interface.mjs +0 -2
  1201. package/esm2020/lib/layer/shared/layers/tile-layer.mjs +0 -47
  1202. package/esm2020/lib/layer/shared/layers/vector-layer.interface.mjs +0 -2
  1203. package/esm2020/lib/layer/shared/layers/vector-layer.mjs +0 -527
  1204. package/esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs +0 -2
  1205. package/esm2020/lib/layer/shared/layers/vectortile-layer.mjs +0 -104
  1206. package/esm2020/lib/layer/track-feature-button/index.mjs +0 -2
  1207. package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +0 -59
  1208. package/esm2020/lib/layer/utils/image-watcher.mjs +0 -59
  1209. package/esm2020/lib/layer/utils/index.mjs +0 -6
  1210. package/esm2020/lib/layer/utils/layer.utils.mjs +0 -10
  1211. package/esm2020/lib/layer/utils/outputLegend.mjs +0 -28
  1212. package/esm2020/lib/layer/utils/tile-watcher.mjs +0 -50
  1213. package/esm2020/lib/layer/utils/vector-watcher.mjs +0 -48
  1214. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +0 -20
  1215. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +0 -97
  1216. package/esm2020/lib/map/baselayers-switcher/index.mjs +0 -3
  1217. package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +0 -142
  1218. package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +0 -79
  1219. package/esm2020/lib/map/geolocate-button/index.mjs +0 -2
  1220. package/esm2020/lib/map/home-extent-button/home-extent-button.component.mjs +0 -63
  1221. package/esm2020/lib/map/home-extent-button/index.mjs +0 -2
  1222. package/esm2020/lib/map/index.mjs +0 -14
  1223. package/esm2020/lib/map/info-section/index.mjs +0 -2
  1224. package/esm2020/lib/map/info-section/info-section.component.mjs +0 -30
  1225. package/esm2020/lib/map/map-browser/index.mjs +0 -2
  1226. package/esm2020/lib/map/map-browser/map-browser.component.mjs +0 -66
  1227. package/esm2020/lib/map/map-center/index.mjs +0 -2
  1228. package/esm2020/lib/map/map-center/map-center.component.mjs +0 -50
  1229. package/esm2020/lib/map/map.module.mjs +0 -127
  1230. package/esm2020/lib/map/menu-button/index.mjs +0 -2
  1231. package/esm2020/lib/map/menu-button/menu-button.component.mjs +0 -62
  1232. package/esm2020/lib/map/offline-button/index.mjs +0 -2
  1233. package/esm2020/lib/map/offline-button/offline-button.component.mjs +0 -53
  1234. package/esm2020/lib/map/rotation-button/index.mjs +0 -2
  1235. package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +0 -70
  1236. package/esm2020/lib/map/shared/controllers/controller.mjs +0 -42
  1237. package/esm2020/lib/map/shared/controllers/geolocation.mjs +0 -423
  1238. package/esm2020/lib/map/shared/controllers/index.mjs +0 -4
  1239. package/esm2020/lib/map/shared/controllers/view.mjs +0 -351
  1240. package/esm2020/lib/map/shared/hover-feature.directive.mjs +0 -454
  1241. package/esm2020/lib/map/shared/index.mjs +0 -14
  1242. package/esm2020/lib/map/shared/linkedLayers.utils.mjs +0 -240
  1243. package/esm2020/lib/map/shared/map-pointer-position.directive.mjs +0 -107
  1244. package/esm2020/lib/map/shared/map.enums.mjs +0 -6
  1245. package/esm2020/lib/map/shared/map.interface.mjs +0 -2
  1246. package/esm2020/lib/map/shared/map.mjs +0 -409
  1247. package/esm2020/lib/map/shared/map.service.mjs +0 -29
  1248. package/esm2020/lib/map/shared/map.utils.mjs +0 -463
  1249. package/esm2020/lib/map/shared/mapOffline.directive.mjs +0 -98
  1250. package/esm2020/lib/map/shared/projection.interfaces.mjs +0 -2
  1251. package/esm2020/lib/map/shared/projection.service.mjs +0 -65
  1252. package/esm2020/lib/map/shared/projection.utils.mjs +0 -64
  1253. package/esm2020/lib/map/swipe-control/index.mjs +0 -2
  1254. package/esm2020/lib/map/swipe-control/swipe-control.component.mjs +0 -193
  1255. package/esm2020/lib/map/utils/layer-watcher.mjs +0 -79
  1256. package/esm2020/lib/map/wake-lock-button/index.mjs +0 -2
  1257. package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +0 -103
  1258. package/esm2020/lib/map/zoom-button/index.mjs +0 -2
  1259. package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +0 -40
  1260. package/esm2020/lib/measure/index.mjs +0 -4
  1261. package/esm2020/lib/measure/measure.module.mjs +0 -20
  1262. package/esm2020/lib/measure/measurer/measure-format.pipe.mjs +0 -37
  1263. package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +0 -180
  1264. package/esm2020/lib/measure/measurer/measurer-item.component.mjs +0 -140
  1265. package/esm2020/lib/measure/measurer/measurer.component.mjs +0 -1042
  1266. package/esm2020/lib/measure/measurer/measurer.module.mjs +0 -94
  1267. package/esm2020/lib/measure/shared/index.mjs +0 -4
  1268. package/esm2020/lib/measure/shared/measure.enum.mjs +0 -37
  1269. package/esm2020/lib/measure/shared/measure.interfaces.mjs +0 -2
  1270. package/esm2020/lib/measure/shared/measure.utils.mjs +0 -489
  1271. package/esm2020/lib/metadata/index.mjs +0 -3
  1272. package/esm2020/lib/metadata/metadata-button/index.mjs +0 -2
  1273. package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +0 -134
  1274. package/esm2020/lib/metadata/metadata.module.mjs +0 -55
  1275. package/esm2020/lib/metadata/shared/index.mjs +0 -3
  1276. package/esm2020/lib/metadata/shared/metadata.interface.mjs +0 -2
  1277. package/esm2020/lib/metadata/shared/metadata.service.mjs +0 -19
  1278. package/esm2020/lib/offline/geoDB/configFileToGeoDB.service.mjs +0 -105
  1279. package/esm2020/lib/offline/geoDB/geoDB.enums.mjs +0 -6
  1280. package/esm2020/lib/offline/geoDB/geoDB.interface.mjs +0 -2
  1281. package/esm2020/lib/offline/geoDB/geoDB.service.mjs +0 -167
  1282. package/esm2020/lib/offline/geoDB/index.mjs +0 -5
  1283. package/esm2020/lib/offline/index.mjs +0 -4
  1284. package/esm2020/lib/offline/layerDB/index.mjs +0 -3
  1285. package/esm2020/lib/offline/layerDB/layerDB.interface.mjs +0 -2
  1286. package/esm2020/lib/offline/layerDB/layerDB.service.mjs +0 -76
  1287. package/esm2020/lib/offline/shared/geo-network.service.mjs +0 -66
  1288. package/esm2020/lib/offline/shared/index.mjs +0 -2
  1289. package/esm2020/lib/overlay/index.mjs +0 -2
  1290. package/esm2020/lib/overlay/overlay.module.mjs +0 -23
  1291. package/esm2020/lib/overlay/shared/index.mjs +0 -6
  1292. package/esm2020/lib/overlay/shared/overlay.directive.mjs +0 -33
  1293. package/esm2020/lib/overlay/shared/overlay.enum.mjs +0 -8
  1294. package/esm2020/lib/overlay/shared/overlay.mjs +0 -130
  1295. package/esm2020/lib/overlay/shared/overlay.service.mjs +0 -27
  1296. package/esm2020/lib/overlay/shared/overlay.utils.mjs +0 -17
  1297. package/esm2020/lib/print/index.mjs +0 -4
  1298. package/esm2020/lib/print/print/print.component.mjs +0 -112
  1299. package/esm2020/lib/print/print-form/index.mjs +0 -2
  1300. package/esm2020/lib/print/print-form/print-form.component.mjs +0 -514
  1301. package/esm2020/lib/print/print.module.mjs +0 -65
  1302. package/esm2020/lib/print/shared/geopdf.mjs +0 -58
  1303. package/esm2020/lib/print/shared/index.mjs +0 -5
  1304. package/esm2020/lib/print/shared/print.interface.mjs +0 -2
  1305. package/esm2020/lib/print/shared/print.service.mjs +0 -984
  1306. package/esm2020/lib/print/shared/print.type.mjs +0 -30
  1307. package/esm2020/lib/query/index.mjs +0 -2
  1308. package/esm2020/lib/query/query.module.mjs +0 -29
  1309. package/esm2020/lib/query/shared/index.mjs +0 -7
  1310. package/esm2020/lib/query/shared/query-search-source.mjs +0 -35
  1311. package/esm2020/lib/query/shared/query-search-source.providers.mjs +0 -22
  1312. package/esm2020/lib/query/shared/query.directive.mjs +0 -261
  1313. package/esm2020/lib/query/shared/query.enums.mjs +0 -30
  1314. package/esm2020/lib/query/shared/query.interfaces.mjs +0 -2
  1315. package/esm2020/lib/query/shared/query.service.mjs +0 -731
  1316. package/esm2020/lib/query/shared/query.utils.mjs +0 -37
  1317. package/esm2020/lib/search/index.mjs +0 -12
  1318. package/esm2020/lib/search/search-bar/search-bar.component.mjs +0 -512
  1319. package/esm2020/lib/search/search-bar/search-bar.module.mjs +0 -75
  1320. package/esm2020/lib/search/search-bar/search-url-param.directive.mjs +0 -35
  1321. package/esm2020/lib/search/search-results/save-feature-dialog.component.mjs +0 -118
  1322. package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +0 -429
  1323. package/esm2020/lib/search/search-results/search-results-item.component.mjs +0 -147
  1324. package/esm2020/lib/search/search-results/search-results.component.mjs +0 -454
  1325. package/esm2020/lib/search/search-results/search-results.module.mjs +0 -108
  1326. package/esm2020/lib/search/search-selector/search-selector.component.mjs +0 -123
  1327. package/esm2020/lib/search/search-selector/search-selector.module.mjs +0 -56
  1328. package/esm2020/lib/search/search-settings/search-settings.component.mjs +0 -440
  1329. package/esm2020/lib/search/search-settings/search-settings.module.mjs +0 -60
  1330. package/esm2020/lib/search/search.module.mjs +0 -67
  1331. package/esm2020/lib/search/shared/index.mjs +0 -9
  1332. package/esm2020/lib/search/shared/search-pointer-summary.directive.mjs +0 -295
  1333. package/esm2020/lib/search/shared/search-source-service.providers.mjs +0 -20
  1334. package/esm2020/lib/search/shared/search-source.service.mjs +0 -55
  1335. package/esm2020/lib/search/shared/search.enums.mjs +0 -4
  1336. package/esm2020/lib/search/shared/search.interfaces.mjs +0 -2
  1337. package/esm2020/lib/search/shared/search.service.mjs +0 -121
  1338. package/esm2020/lib/search/shared/search.utils.mjs +0 -91
  1339. package/esm2020/lib/search/shared/sources/cadastre.mjs +0 -126
  1340. package/esm2020/lib/search/shared/sources/cadastre.providers.mjs +0 -23
  1341. package/esm2020/lib/search/shared/sources/coordinates.interfaces.mjs +0 -2
  1342. package/esm2020/lib/search/shared/sources/coordinates.mjs +0 -153
  1343. package/esm2020/lib/search/shared/sources/coordinates.providers.mjs +0 -40
  1344. package/esm2020/lib/search/shared/sources/icherche.interfaces.mjs +0 -2
  1345. package/esm2020/lib/search/shared/sources/icherche.mjs +0 -767
  1346. package/esm2020/lib/search/shared/sources/icherche.providers.mjs +0 -66
  1347. package/esm2020/lib/search/shared/sources/ilayer.interfaces.mjs +0 -2
  1348. package/esm2020/lib/search/shared/sources/ilayer.mjs +0 -320
  1349. package/esm2020/lib/search/shared/sources/ilayer.providers.mjs +0 -40
  1350. package/esm2020/lib/search/shared/sources/index.mjs +0 -23
  1351. package/esm2020/lib/search/shared/sources/nominatim.interfaces.mjs +0 -2
  1352. package/esm2020/lib/search/shared/sources/nominatim.mjs +0 -253
  1353. package/esm2020/lib/search/shared/sources/nominatim.providers.mjs +0 -23
  1354. package/esm2020/lib/search/shared/sources/source.interfaces.mjs +0 -2
  1355. package/esm2020/lib/search/shared/sources/source.mjs +0 -209
  1356. package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +0 -2
  1357. package/esm2020/lib/search/shared/sources/storedqueries.mjs +0 -425
  1358. package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +0 -41
  1359. package/esm2020/lib/search/shared/sources/workspace.interfaces.mjs +0 -2
  1360. package/esm2020/lib/search/shared/sources/workspace.mjs +0 -186
  1361. package/esm2020/lib/search/shared/sources/workspace.providers.mjs +0 -26
  1362. package/esm2020/lib/style/index.mjs +0 -5
  1363. package/esm2020/lib/style/shared/datasource/esri-style-generator.mjs +0 -357
  1364. package/esm2020/lib/style/shared/datasource/index.mjs +0 -2
  1365. package/esm2020/lib/style/shared/feature/feature-style.mjs +0 -141
  1366. package/esm2020/lib/style/shared/feature/index.mjs +0 -2
  1367. package/esm2020/lib/style/shared/font.enum.mjs +0 -17
  1368. package/esm2020/lib/style/shared/index.mjs +0 -5
  1369. package/esm2020/lib/style/shared/overlay/index.mjs +0 -3
  1370. package/esm2020/lib/style/shared/overlay/overlay-marker-style.utils.mjs +0 -43
  1371. package/esm2020/lib/style/shared/overlay/overlay-style.utils.mjs +0 -88
  1372. package/esm2020/lib/style/shared/vector/commonVectorStyle.mjs +0 -75
  1373. package/esm2020/lib/style/shared/vector/conversion.utils.mjs +0 -27
  1374. package/esm2020/lib/style/shared/vector/index.mjs +0 -4
  1375. package/esm2020/lib/style/shared/vector/vector-style.interface.mjs +0 -2
  1376. package/esm2020/lib/style/style-list/index.mjs +0 -5
  1377. package/esm2020/lib/style/style-list/style-list.interface.mjs +0 -2
  1378. package/esm2020/lib/style/style-list/style-list.module.mjs +0 -23
  1379. package/esm2020/lib/style/style-list/style-list.provider.mjs +0 -21
  1380. package/esm2020/lib/style/style-list/style-list.service.mjs +0 -51
  1381. package/esm2020/lib/style/style-modal/drawing/index.mjs +0 -2
  1382. package/esm2020/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +0 -288
  1383. package/esm2020/lib/style/style-modal/index.mjs +0 -5
  1384. package/esm2020/lib/style/style-modal/layer/index.mjs +0 -2
  1385. package/esm2020/lib/style/style-modal/layer/style-modal-layer.component.mjs +0 -187
  1386. package/esm2020/lib/style/style-modal/layer-button/index.mjs +0 -2
  1387. package/esm2020/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +0 -44
  1388. package/esm2020/lib/style/style-modal/shared/index.mjs +0 -2
  1389. package/esm2020/lib/style/style-modal/shared/style-modal.interface.mjs +0 -2
  1390. package/esm2020/lib/style/style-service/draw-style.service.mjs +0 -187
  1391. package/esm2020/lib/style/style-service/index.mjs +0 -3
  1392. package/esm2020/lib/style/style-service/style.service.mjs +0 -356
  1393. package/esm2020/lib/style/style.module.mjs +0 -74
  1394. package/esm2020/lib/toast/index.mjs +0 -2
  1395. package/esm2020/lib/toast/toast.component.mjs +0 -113
  1396. package/esm2020/lib/toast/toast.module.mjs +0 -45
  1397. package/esm2020/lib/utils/googleLinks.mjs +0 -13
  1398. package/esm2020/lib/utils/id-generator.mjs +0 -110
  1399. package/esm2020/lib/utils/index.mjs +0 -4
  1400. package/esm2020/lib/utils/osmLinks.mjs +0 -10
  1401. package/esm2020/lib/wkt/index.mjs +0 -2
  1402. package/esm2020/lib/wkt/shared/index.mjs +0 -2
  1403. package/esm2020/lib/wkt/shared/wkt.service.mjs +0 -239
  1404. package/esm2020/lib/wkt/wkt.module.mjs +0 -22
  1405. package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +0 -48
  1406. package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +0 -36
  1407. package/esm2020/lib/workspace/confirmation-popup/index.mjs +0 -3
  1408. package/esm2020/lib/workspace/index.mjs +0 -8
  1409. package/esm2020/lib/workspace/shared/edition-workspace.mjs +0 -280
  1410. package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +0 -642
  1411. package/esm2020/lib/workspace/shared/feature-workspace.mjs +0 -35
  1412. package/esm2020/lib/workspace/shared/feature-workspace.service.mjs +0 -157
  1413. package/esm2020/lib/workspace/shared/index.mjs +0 -8
  1414. package/esm2020/lib/workspace/shared/wfs-workspace.mjs +0 -35
  1415. package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +0 -150
  1416. package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +0 -260
  1417. package/esm2020/lib/workspace/shared/workspace.utils.mjs +0 -24
  1418. package/esm2020/lib/workspace/widgets/index.mjs +0 -4
  1419. package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +0 -47
  1420. package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +0 -36
  1421. package/esm2020/lib/workspace/widgets/widgets.mjs +0 -15
  1422. package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +0 -133
  1423. package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +0 -28
  1424. package/esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs +0 -113
  1425. package/esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs +0 -28
  1426. package/esm2020/lib/workspace/workspace.module.mjs +0 -62
  1427. package/esm2020/public_api.mjs +0 -57
  1428. package/fesm2015/igo2-geo.mjs +0 -46894
  1429. package/fesm2015/igo2-geo.mjs.map +0 -1
  1430. package/fesm2020/igo2-geo.mjs +0 -44993
  1431. package/fesm2020/igo2-geo.mjs.map +0 -1
  1432. package/ngcc.config.js +0 -3
  1433. package/style/geo.theming.scss +0 -12
@@ -0,0 +1,120 @@
1
+ import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy, ViewChild } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { getEntityRevision } from '@igo2/common';
4
+ import { uuid } from '@igo2/utils';
5
+ import { FEATURE } from '../shared/feature.enums';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@igo2/common";
8
+ import * as i2 from "@angular/common";
9
+ const _c0 = ["igoForm"];
10
+ const _c1 = ["*", [["", "formButtons", ""]]];
11
+ const _c2 = ["*", "[formButtons]"];
12
+ /**
13
+ * A configurable form, optionnally bound to a feature.
14
+ * This component creates an entity form and, on submit,
15
+ * returns a feature made out of the submitted data. It also
16
+ * does things like managing the feature visibility while it's being updated
17
+ * as well as disabling the selection of another feature.
18
+ */
19
+ export class FeatureFormComponent {
20
+ /**
21
+ * Form
22
+ */
23
+ form;
24
+ /**
25
+ * Feature to update
26
+ */
27
+ set feature(value) {
28
+ this.feature$.next(value);
29
+ }
30
+ get feature() {
31
+ return this.feature$.value;
32
+ }
33
+ feature$ = new BehaviorSubject(undefined);
34
+ /**
35
+ * Event emitted when the form is submitted
36
+ */
37
+ submitForm = new EventEmitter();
38
+ igoForm;
39
+ constructor() { }
40
+ /**
41
+ * Transform the form data to a feature and emit an event
42
+ * @param event Form submit event
43
+ * @internal
44
+ */
45
+ onSubmit(data) {
46
+ const feature = this.formDataToFeature(data);
47
+ this.submitForm.emit(feature);
48
+ }
49
+ getData() {
50
+ return this.formDataToFeature(this.igoForm.getData());
51
+ }
52
+ /**
53
+ * Transform the form data to a feature
54
+ * @param data Form data
55
+ * @returns A feature
56
+ */
57
+ formDataToFeature(data) {
58
+ const properties = {};
59
+ const meta = {};
60
+ if (this.feature === undefined) {
61
+ meta.id = uuid();
62
+ }
63
+ else {
64
+ Object.assign(properties, this.feature.properties);
65
+ Object.assign(meta, this.feature.meta, {
66
+ revision: getEntityRevision(this.feature) + 1
67
+ });
68
+ }
69
+ const propertyPrefix = 'properties.';
70
+ Object.entries(data).forEach((entry) => {
71
+ const [key, value] = entry;
72
+ if (key.startsWith(propertyPrefix)) {
73
+ const property = key.substr(propertyPrefix.length);
74
+ properties[property] = value;
75
+ }
76
+ });
77
+ let geometry = data.geometry;
78
+ if (geometry === undefined && this.feature !== undefined) {
79
+ geometry = this.feature.geometry;
80
+ }
81
+ return {
82
+ meta: meta,
83
+ type: FEATURE,
84
+ geometry,
85
+ projection: 'EPSG:4326',
86
+ properties
87
+ };
88
+ }
89
+ static ɵfac = function FeatureFormComponent_Factory(t) { return new (t || FeatureFormComponent)(); };
90
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FeatureFormComponent, selectors: [["igo-feature-form"]], viewQuery: function FeatureFormComponent_Query(rf, ctx) { if (rf & 1) {
91
+ i0.ɵɵviewQuery(_c0, 7);
92
+ } if (rf & 2) {
93
+ let _t;
94
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.igoForm = _t.first);
95
+ } }, inputs: { form: "form", feature: "feature" }, outputs: { submitForm: "submitForm" }, ngContentSelectors: _c2, decls: 5, vars: 4, consts: [[3, "form", "formData", "submitForm"], ["igoForm", ""]], template: function FeatureFormComponent_Template(rf, ctx) { if (rf & 1) {
96
+ i0.ɵɵprojectionDef(_c1);
97
+ i0.ɵɵelementStart(0, "igo-form", 0, 1);
98
+ i0.ɵɵlistener("submitForm", function FeatureFormComponent_Template_igo_form_submitForm_0_listener($event) { return ctx.onSubmit($event); });
99
+ i0.ɵɵpipe(2, "async");
100
+ i0.ɵɵprojection(3);
101
+ i0.ɵɵprojection(4, 1, ["formButtons", ""]);
102
+ i0.ɵɵelementEnd();
103
+ } if (rf & 2) {
104
+ i0.ɵɵproperty("form", ctx.form)("formData", i0.ɵɵpipeBind1(2, 2, ctx.feature$));
105
+ } }, dependencies: [i1.FormComponent, i2.AsyncPipe], styles: ["[_nghost-%COMP%]{display:block}igo-form[_ngcontent-%COMP%]{height:100%}"], changeDetection: 0 });
106
+ }
107
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FeatureFormComponent, [{
108
+ type: Component,
109
+ args: [{ selector: 'igo-feature-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-form\r\n #igoForm\r\n [form]=\"form\"\r\n [formData]=\"feature$ | async\"\r\n (submitForm)=\"onSubmit($event)\"\r\n>\r\n <ng-content></ng-content>\r\n\r\n <ng-content select=\"[formButtons]\" formButtons></ng-content>\r\n</igo-form>\r\n", styles: [":host{display:block}igo-form{height:100%}\n"] }]
110
+ }], function () { return []; }, { form: [{
111
+ type: Input
112
+ }], feature: [{
113
+ type: Input
114
+ }], submitForm: [{
115
+ type: Output
116
+ }], igoForm: [{
117
+ type: ViewChild,
118
+ args: ['igoForm', { static: true }]
119
+ }] }); })();
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2ZlYXR1cmUvZmVhdHVyZS1mb3JtL2ZlYXR1cmUtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9mZWF0dXJlL2ZlYXR1cmUtZm9ybS9mZWF0dXJlLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWix1QkFBdUIsRUFDdkIsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFRLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7O0FBR2xEOzs7Ozs7R0FNRztBQU9ILE1BQU0sT0FBTyxvQkFBb0I7SUFDL0I7O09BRUc7SUFDTSxJQUFJLENBQU87SUFFcEI7O09BRUc7SUFDSCxJQUNJLE9BQU8sQ0FBQyxLQUEwQjtRQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBQ1EsUUFBUSxHQUE2QixJQUFJLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU3RTs7T0FFRztJQUNPLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBRVgsT0FBTyxDQUFnQjtJQUUvRCxnQkFBZSxDQUFDO0lBRWhCOzs7O09BSUc7SUFDSCxRQUFRLENBQUMsSUFBNEI7UUFDbkMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssaUJBQWlCLENBQUMsSUFBNEI7UUFDcEQsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO1lBQzdCLElBQVksQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7U0FDM0I7YUFBTTtZQUNMLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDbkQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7Z0JBQ3JDLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQzthQUM5QyxDQUFDLENBQUM7U0FDSjtRQUVELE1BQU0sY0FBYyxHQUFHLGFBQWEsQ0FBQztRQUNyQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtZQUNwRCxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUMzQixJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQUU7Z0JBQ2xDLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNuRCxVQUFVLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDO2FBQzlCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzdCLElBQUksUUFBUSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtZQUN4RCxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7U0FDbEM7UUFFRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQW1CO1lBQ3pCLElBQUksRUFBRSxPQUFPO1lBQ2IsUUFBUTtZQUNSLFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLFVBQVU7U0FDWCxDQUFDO0lBQ0osQ0FBQzs4RUEvRVUsb0JBQW9COzZEQUFwQixvQkFBb0I7Ozs7Ozs7WUMvQmpDLHNDQUtDO1lBREMsbUhBQWMsb0JBQWdCLElBQUM7O1lBRS9CLGtCQUF5QjtZQUV6QiwwQ0FBNEQ7WUFDOUQsaUJBQVc7O1lBUFQsK0JBQWEsZ0RBQUE7Ozt1RkQ2QkYsb0JBQW9CO2NBTmhDLFNBQVM7MkJBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU07c0NBTXRDLElBQUk7a0JBQVosS0FBSztZQU1GLE9BQU87a0JBRFYsS0FBSztZQVlJLFVBQVU7a0JBQW5CLE1BQU07WUFFaUMsT0FBTztrQkFBOUMsU0FBUzttQkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBWaWV3Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgRm9ybSwgZ2V0RW50aXR5UmV2aXNpb24gfSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5pbXBvcnQgdHlwZSB7IEZvcm1Db21wb25lbnQgfSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5pbXBvcnQgeyB1dWlkIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xyXG5cclxuaW1wb3J0IHsgRkVBVFVSRSB9IGZyb20gJy4uL3NoYXJlZC9mZWF0dXJlLmVudW1zJztcclxuaW1wb3J0IHsgRmVhdHVyZSwgRmVhdHVyZU1ldGEgfSBmcm9tICcuLi9zaGFyZWQvZmVhdHVyZS5pbnRlcmZhY2VzJztcclxuXHJcbi8qKlxyXG4gKiBBIGNvbmZpZ3VyYWJsZSBmb3JtLCBvcHRpb25uYWxseSBib3VuZCB0byBhIGZlYXR1cmUuXHJcbiAqIFRoaXMgY29tcG9uZW50IGNyZWF0ZXMgYW4gZW50aXR5IGZvcm0gYW5kLCBvbiBzdWJtaXQsXHJcbiAqIHJldHVybnMgYSBmZWF0dXJlIG1hZGUgb3V0IG9mIHRoZSBzdWJtaXR0ZWQgZGF0YS4gSXQgYWxzb1xyXG4gKiBkb2VzIHRoaW5ncyBsaWtlIG1hbmFnaW5nIHRoZSBmZWF0dXJlIHZpc2liaWxpdHkgd2hpbGUgaXQncyBiZWluZyB1cGRhdGVkXHJcbiAqIGFzIHdlbGwgYXMgZGlzYWJsaW5nIHRoZSBzZWxlY3Rpb24gb2YgYW5vdGhlciBmZWF0dXJlLlxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tZmVhdHVyZS1mb3JtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZmVhdHVyZS1mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mZWF0dXJlLWZvcm0uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRmVhdHVyZUZvcm1Db21wb25lbnQge1xyXG4gIC8qKlxyXG4gICAqIEZvcm1cclxuICAgKi9cclxuICBASW5wdXQoKSBmb3JtOiBGb3JtO1xyXG5cclxuICAvKipcclxuICAgKiBGZWF0dXJlIHRvIHVwZGF0ZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGZlYXR1cmUodmFsdWU6IEZlYXR1cmUgfCB1bmRlZmluZWQpIHtcclxuICAgIHRoaXMuZmVhdHVyZSQubmV4dCh2YWx1ZSk7XHJcbiAgfVxyXG4gIGdldCBmZWF0dXJlKCk6IEZlYXR1cmUgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMuZmVhdHVyZSQudmFsdWU7XHJcbiAgfVxyXG4gIHJlYWRvbmx5IGZlYXR1cmUkOiBCZWhhdmlvclN1YmplY3Q8RmVhdHVyZT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWRcclxuICAgKi9cclxuICBAT3V0cHV0KCkgc3VibWl0Rm9ybSA9IG5ldyBFdmVudEVtaXR0ZXI8RmVhdHVyZT4oKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnaWdvRm9ybScsIHsgc3RhdGljOiB0cnVlIH0pIGlnb0Zvcm06IEZvcm1Db21wb25lbnQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhbnNmb3JtIHRoZSBmb3JtIGRhdGEgdG8gYSBmZWF0dXJlIGFuZCBlbWl0IGFuIGV2ZW50XHJcbiAgICogQHBhcmFtIGV2ZW50IEZvcm0gc3VibWl0IGV2ZW50XHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgb25TdWJtaXQoZGF0YTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xyXG4gICAgY29uc3QgZmVhdHVyZSA9IHRoaXMuZm9ybURhdGFUb0ZlYXR1cmUoZGF0YSk7XHJcbiAgICB0aGlzLnN1Ym1pdEZvcm0uZW1pdChmZWF0dXJlKTtcclxuICB9XHJcblxyXG4gIGdldERhdGEoKTogRmVhdHVyZSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtRGF0YVRvRmVhdHVyZSh0aGlzLmlnb0Zvcm0uZ2V0RGF0YSgpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRyYW5zZm9ybSB0aGUgZm9ybSBkYXRhIHRvIGEgZmVhdHVyZVxyXG4gICAqIEBwYXJhbSBkYXRhIEZvcm0gZGF0YVxyXG4gICAqIEByZXR1cm5zIEEgZmVhdHVyZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgZm9ybURhdGFUb0ZlYXR1cmUoZGF0YTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSk6IEZlYXR1cmUge1xyXG4gICAgY29uc3QgcHJvcGVydGllcyA9IHt9O1xyXG4gICAgY29uc3QgbWV0YSA9IHt9O1xyXG4gICAgaWYgKHRoaXMuZmVhdHVyZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIChtZXRhIGFzIGFueSkuaWQgPSB1dWlkKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBPYmplY3QuYXNzaWduKHByb3BlcnRpZXMsIHRoaXMuZmVhdHVyZS5wcm9wZXJ0aWVzKTtcclxuICAgICAgT2JqZWN0LmFzc2lnbihtZXRhLCB0aGlzLmZlYXR1cmUubWV0YSwge1xyXG4gICAgICAgIHJldmlzaW9uOiBnZXRFbnRpdHlSZXZpc2lvbih0aGlzLmZlYXR1cmUpICsgMVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBwcm9wZXJ0eVByZWZpeCA9ICdwcm9wZXJ0aWVzLic7XHJcbiAgICBPYmplY3QuZW50cmllcyhkYXRhKS5mb3JFYWNoKChlbnRyeTogW3N0cmluZywgYW55XSkgPT4ge1xyXG4gICAgICBjb25zdCBba2V5LCB2YWx1ZV0gPSBlbnRyeTtcclxuICAgICAgaWYgKGtleS5zdGFydHNXaXRoKHByb3BlcnR5UHJlZml4KSkge1xyXG4gICAgICAgIGNvbnN0IHByb3BlcnR5ID0ga2V5LnN1YnN0cihwcm9wZXJ0eVByZWZpeC5sZW5ndGgpO1xyXG4gICAgICAgIHByb3BlcnRpZXNbcHJvcGVydHldID0gdmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGxldCBnZW9tZXRyeSA9IGRhdGEuZ2VvbWV0cnk7XHJcbiAgICBpZiAoZ2VvbWV0cnkgPT09IHVuZGVmaW5lZCAmJiB0aGlzLmZlYXR1cmUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICBnZW9tZXRyeSA9IHRoaXMuZmVhdHVyZS5nZW9tZXRyeTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBtZXRhOiBtZXRhIGFzIEZlYXR1cmVNZXRhLFxyXG4gICAgICB0eXBlOiBGRUFUVVJFLFxyXG4gICAgICBnZW9tZXRyeSxcclxuICAgICAgcHJvamVjdGlvbjogJ0VQU0c6NDMyNicsXHJcbiAgICAgIHByb3BlcnRpZXNcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiIsIjxpZ28tZm9ybVxyXG4gICNpZ29Gb3JtXHJcbiAgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgW2Zvcm1EYXRhXT1cImZlYXR1cmUkIHwgYXN5bmNcIlxyXG4gIChzdWJtaXRGb3JtKT1cIm9uU3VibWl0KCRldmVudClcIlxyXG4+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuICA8bmctY29udGVudCBzZWxlY3Q9XCJbZm9ybUJ1dHRvbnNdXCIgZm9ybUJ1dHRvbnM+PC9uZy1jb250ZW50PlxyXG48L2lnby1mb3JtPlxyXG4iXX0=
@@ -0,0 +1,23 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { IgoFormModule } from '@igo2/common';
4
+ import { FeatureFormComponent } from './feature-form.component';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * @ignore
8
+ */
9
+ export class IgoFeatureFormModule {
10
+ static ɵfac = function IgoFeatureFormModule_Factory(t) { return new (t || IgoFeatureFormModule)(); };
11
+ static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoFeatureFormModule });
12
+ static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, IgoFormModule, IgoFormModule] });
13
+ }
14
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoFeatureFormModule, [{
15
+ type: NgModule,
16
+ args: [{
17
+ imports: [CommonModule, IgoFormModule],
18
+ exports: [IgoFormModule, FeatureFormComponent],
19
+ declarations: [FeatureFormComponent]
20
+ }]
21
+ }], null, null); })();
22
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoFeatureFormModule, { declarations: [FeatureFormComponent], imports: [CommonModule, IgoFormModule], exports: [IgoFormModule, FeatureFormComponent] }); })();
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1mb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2ZlYXR1cmUvZmVhdHVyZS1mb3JtL2ZlYXR1cmUtZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFaEU7O0dBRUc7QUFNSCxNQUFNLE9BQU8sb0JBQW9COzhFQUFwQixvQkFBb0I7NERBQXBCLG9CQUFvQjtnRUFKckIsWUFBWSxFQUFFLGFBQWEsRUFDM0IsYUFBYTs7dUZBR1osb0JBQW9CO2NBTGhDLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDO2dCQUN0QyxPQUFPLEVBQUUsQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLENBQUM7Z0JBQzlDLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO2FBQ3JDOzt3RkFDWSxvQkFBb0IsbUJBRmhCLG9CQUFvQixhQUZ6QixZQUFZLEVBQUUsYUFBYSxhQUMzQixhQUFhLEVBQUUsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IElnb0Zvcm1Nb2R1bGUgfSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgRmVhdHVyZUZvcm1Db21wb25lbnQgfSBmcm9tICcuL2ZlYXR1cmUtZm9ybS5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSWdvRm9ybU1vZHVsZV0sXHJcbiAgZXhwb3J0czogW0lnb0Zvcm1Nb2R1bGUsIEZlYXR1cmVGb3JtQ29tcG9uZW50XSxcclxuICBkZWNsYXJhdGlvbnM6IFtGZWF0dXJlRm9ybUNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb0ZlYXR1cmVGb3JtTW9kdWxlIHt9XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { IgoFeatureDetailsModule } from './feature-details/feature-details.module';
4
+ import { IgoFeatureFormModule } from './feature-form/feature-form.module';
5
+ import * as i0 from "@angular/core";
6
+ export class IgoFeatureModule {
7
+ static ɵfac = function IgoFeatureModule_Factory(t) { return new (t || IgoFeatureModule)(); };
8
+ static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoFeatureModule });
9
+ static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, IgoFeatureDetailsModule, IgoFeatureFormModule] });
10
+ }
11
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoFeatureModule, [{
12
+ type: NgModule,
13
+ args: [{
14
+ imports: [CommonModule],
15
+ exports: [IgoFeatureDetailsModule, IgoFeatureFormModule],
16
+ declarations: [],
17
+ providers: []
18
+ }]
19
+ }], null, null); })();
20
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoFeatureModule, { imports: [CommonModule], exports: [IgoFeatureDetailsModule, IgoFeatureFormModule] }); })();
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9mZWF0dXJlL2ZlYXR1cmUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQVExRSxNQUFNLE9BQU8sZ0JBQWdCOzBFQUFoQixnQkFBZ0I7NERBQWhCLGdCQUFnQjtnRUFMakIsWUFBWSxFQUNaLHVCQUF1QixFQUFFLG9CQUFvQjs7dUZBSTVDLGdCQUFnQjtjQU41QixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2dCQUN2QixPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxvQkFBb0IsQ0FBQztnQkFDeEQsWUFBWSxFQUFFLEVBQUU7Z0JBQ2hCLFNBQVMsRUFBRSxFQUFFO2FBQ2Q7O3dGQUNZLGdCQUFnQixjQUxqQixZQUFZLGFBQ1osdUJBQXVCLEVBQUUsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IElnb0ZlYXR1cmVEZXRhaWxzTW9kdWxlIH0gZnJvbSAnLi9mZWF0dXJlLWRldGFpbHMvZmVhdHVyZS1kZXRhaWxzLm1vZHVsZSc7XHJcbmltcG9ydCB7IElnb0ZlYXR1cmVGb3JtTW9kdWxlIH0gZnJvbSAnLi9mZWF0dXJlLWZvcm0vZmVhdHVyZS1mb3JtLm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFtJZ29GZWF0dXJlRGV0YWlsc01vZHVsZSwgSWdvRmVhdHVyZUZvcm1Nb2R1bGVdLFxyXG4gIGRlY2xhcmF0aW9uczogW10sXHJcbiAgcHJvdmlkZXJzOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWdvRmVhdHVyZU1vZHVsZSB7fVxyXG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './shared';
2
+ export * from './feature-details/feature-details.component';
3
+ export * from './feature-form/feature-form.component';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9mZWF0dXJlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2hhcmVkJztcbmV4cG9ydCAqIGZyb20gJy4vZmVhdHVyZS1kZXRhaWxzL2ZlYXR1cmUtZGV0YWlscy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mZWF0dXJlLWZvcm0vZmVhdHVyZS1mb3JtLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,27 @@
1
+ import { FeatureDataSource } from '../../datasource';
2
+ import { VectorLayer } from '../../layer/shared/layers/vector-layer';
3
+ /**
4
+ * Try to bind a layer to a store if none is bound already.
5
+ * The layer will also be added to the store's map.
6
+ * If no layer is given to that function, a basic one will be created.
7
+ * @param store The store to bind the layer
8
+ * @param layer An optional VectorLayer
9
+ */
10
+ export function tryBindStoreLayer(store, layer) {
11
+ if (store.layer !== undefined) {
12
+ if (store.layer.map === undefined) {
13
+ store.map.addLayer(store.layer);
14
+ }
15
+ return;
16
+ }
17
+ layer = layer
18
+ ? layer
19
+ : new VectorLayer({
20
+ source: new FeatureDataSource()
21
+ });
22
+ store.bindLayer(layer);
23
+ if (store.layer.map === undefined) {
24
+ store.map.addLayer(store.layer);
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS1zdG9yZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUtc3RvcmUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBR3JFOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxLQUFtQixFQUFFLEtBQW1CO0lBQ3hFLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7UUFDN0IsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxTQUFTLEVBQUU7WUFDakMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ2pDO1FBQ0QsT0FBTztLQUNSO0lBRUQsS0FBSyxHQUFHLEtBQUs7UUFDWCxDQUFDLENBQUMsS0FBSztRQUNQLENBQUMsQ0FBQyxJQUFJLFdBQVcsQ0FBQztZQUNkLE1BQU0sRUFBRSxJQUFJLGlCQUFpQixFQUFFO1NBQ2hDLENBQUMsQ0FBQztJQUNQLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkIsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDakMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ2pDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZlYXR1cmVEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XG5pbXBvcnQgeyBWZWN0b3JMYXllciB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvdmVjdG9yLWxheWVyJztcbmltcG9ydCB7IEZlYXR1cmVTdG9yZSB9IGZyb20gJy4vc3RvcmUnO1xuXG4vKipcbiAqIFRyeSB0byBiaW5kIGEgbGF5ZXIgdG8gYSBzdG9yZSBpZiBub25lIGlzIGJvdW5kIGFscmVhZHkuXG4gKiBUaGUgbGF5ZXIgd2lsbCBhbHNvIGJlIGFkZGVkIHRvIHRoZSBzdG9yZSdzIG1hcC5cbiAqIElmIG5vIGxheWVyIGlzIGdpdmVuIHRvIHRoYXQgZnVuY3Rpb24sIGEgYmFzaWMgb25lIHdpbGwgYmUgY3JlYXRlZC5cbiAqIEBwYXJhbSBzdG9yZSBUaGUgc3RvcmUgdG8gYmluZCB0aGUgbGF5ZXJcbiAqIEBwYXJhbSBsYXllciBBbiBvcHRpb25hbCBWZWN0b3JMYXllclxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJ5QmluZFN0b3JlTGF5ZXIoc3RvcmU6IEZlYXR1cmVTdG9yZSwgbGF5ZXI/OiBWZWN0b3JMYXllcikge1xuICBpZiAoc3RvcmUubGF5ZXIgIT09IHVuZGVmaW5lZCkge1xuICAgIGlmIChzdG9yZS5sYXllci5tYXAgPT09IHVuZGVmaW5lZCkge1xuICAgICAgc3RvcmUubWFwLmFkZExheWVyKHN0b3JlLmxheWVyKTtcbiAgICB9XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgbGF5ZXIgPSBsYXllclxuICAgID8gbGF5ZXJcbiAgICA6IG5ldyBWZWN0b3JMYXllcih7XG4gICAgICAgIHNvdXJjZTogbmV3IEZlYXR1cmVEYXRhU291cmNlKClcbiAgICAgIH0pO1xuICBzdG9yZS5iaW5kTGF5ZXIobGF5ZXIpO1xuICBpZiAoc3RvcmUubGF5ZXIubWFwID09PSB1bmRlZmluZWQpIHtcbiAgICBzdG9yZS5tYXAuYWRkTGF5ZXIoc3RvcmUubGF5ZXIpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ export const FEATURE = 'Feature';
2
+ export var FeatureMotion;
3
+ (function (FeatureMotion) {
4
+ FeatureMotion[FeatureMotion["None"] = 0] = "None";
5
+ FeatureMotion[FeatureMotion["Move"] = 1] = "Move";
6
+ FeatureMotion[FeatureMotion["Zoom"] = 2] = "Zoom";
7
+ FeatureMotion[FeatureMotion["Default"] = 3] = "Default";
8
+ })(FeatureMotion || (FeatureMotion = {}));
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5lbnVtcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUuZW51bXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztBQUVqQyxNQUFNLENBQU4sSUFBWSxhQUtYO0FBTEQsV0FBWSxhQUFhO0lBQ3ZCLGlEQUFJLENBQUE7SUFDSixpREFBSSxDQUFBO0lBQ0osaURBQUksQ0FBQTtJQUNKLHVEQUFPLENBQUE7QUFDVCxDQUFDLEVBTFcsYUFBYSxLQUFiLGFBQWEsUUFLeEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgRkVBVFVSRSA9ICdGZWF0dXJlJztcblxuZXhwb3J0IGVudW0gRmVhdHVyZU1vdGlvbiB7XG4gIE5vbmUsXG4gIE1vdmUsXG4gIFpvb20sXG4gIERlZmF1bHRcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS5pbnRlcmZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvZmVhdHVyZS9zaGFyZWQvZmVhdHVyZS5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgT2xSZW5kZXJGZWF0dXJlIGZyb20gJ29sL3JlbmRlci9GZWF0dXJlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IEdlb0pzb25HZW9tZXRyeVR5cGVzIH0gZnJvbSAnZ2VvanNvbic7XHJcblxyXG5pbXBvcnQge1xyXG4gIEVudGl0eUtleSxcclxuICBFbnRpdHlTdG9yZU9wdGlvbnMsXHJcbiAgRW50aXR5U3RvcmVTdHJhdGVneU9wdGlvbnNcclxufSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgVmVjdG9yTGF5ZXIgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQnO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkJztcclxuaW1wb3J0IHsgRmVhdHVyZU1vdGlvbiB9IGZyb20gJy4vZmVhdHVyZS5lbnVtcyc7XHJcbmltcG9ydCBPbEZlYXR1cmUgZnJvbSAnb2wvRmVhdHVyZSc7XHJcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XHJcbmltcG9ydCB7IFNvdXJjZUZpZWxkc09wdGlvbnNQYXJhbXMgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZTxQID0geyBba2V5OiBzdHJpbmddOiBhbnkgfT4ge1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBwcm9qZWN0aW9uPzogc3RyaW5nO1xyXG4gIGdlb21ldHJ5PzogRmVhdHVyZUdlb21ldHJ5O1xyXG4gIHByb3BlcnRpZXM6IFA7XHJcbiAgZXh0ZW50PzogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XHJcbiAgbWV0YT86IEZlYXR1cmVNZXRhO1xyXG4gIG9sPzogT2xGZWF0dXJlPE9sR2VvbWV0cnk+IHwgT2xSZW5kZXJGZWF0dXJlO1xyXG4gIHNvdXJjZUlkPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVNZXRhIHtcclxuICBpZDogRW50aXR5S2V5O1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIG1hcFRpdGxlPzogc3RyaW5nO1xyXG4gIHNvdXJjZVRpdGxlPzogc3RyaW5nO1xyXG4gIG9yZGVyPzogbnVtYmVyO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgc3R5bGU/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xyXG4gIGFsaWFzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcclxuICByZXZpc2lvbj86IG51bWJlcjtcclxuICBleGNsdWRlQXR0cmlidXRlPzogQXJyYXk8c3RyaW5nPjtcclxuICBleGNsdWRlQXR0cmlidXRlT2ZmbGluZT86IEFycmF5PHN0cmluZz47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZUdlb21ldHJ5IHtcclxuICB0eXBlOiBHZW9Kc29uR2VvbWV0cnlUeXBlcztcclxuICBjb29yZGluYXRlczogYW55O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVTdG9yZU9wdGlvbnMgZXh0ZW5kcyBFbnRpdHlTdG9yZU9wdGlvbnMge1xyXG4gIG1hcDogSWdvTWFwO1xyXG4gIGxheWVyPzogVmVjdG9yTGF5ZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZVN0b3JlU3RyYXRlZ3lPcHRpb25zXHJcbiAgZXh0ZW5kcyBFbnRpdHlTdG9yZVN0cmF0ZWd5T3B0aW9ucyB7XHJcbiAgLy8gV2hlbiB0aGUgc3RvcmUgbW92ZXMgZmVhdHVyZXMgaW50byB2aWV3LCB0aGUgdmlldyBleHRlbnQsIHdoaWNoIGlzIGFsc28gdGhlIGZlYXR1cmVzIGV4dGVudCxcclxuICAvLyBpcyBzY2FsZWQgYnkgdGhvc2UgZmFjdG9ycywgZWZmZWN0aXZlbHkgcmVzdWx0aW5nIGluIGEgZGVjZW50ZXJlZCB2aWV3IG9yIGEgbW9yZSB6b29tZWQgaW4vb3V0IHZpZXcuXHJcbiAgLy8gVGhlc2UgZmFjdG9ycyBhcmUgYXBwbGllZCB0byB0aGUgdG9wLCByaWdodCwgYm90dG9tIGFuZCBsZWZ0IGRpcmVjdGlvbnMsIGluIHRoYXQgb3JkZXIuXHJcbiAgLy8gQSBmYWN0b3Igb2YgMSBtZWFucyB0aGUgZGlzdGFuY2UgZnJvbSB0aGUgY2VudGVyLCBpbiB0aGF0IGRpcmVjdGlvbiwgaXMgZG91YmxlZC5cclxuICB2aWV3U2NhbGU/OiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXTtcclxuICAvLyBGZWF0dXJlcyBleHRlbnQgdG8gdmlldyBleHRlbnQgcmF0aW8gdXNlZCB0byBkZXRlcm1pbmUgaWYgdGhlIHN0b3JlIHNob3VsZCB0cmlnZ2VyXHJcbiAgLy8gYSBtYXAgem9vbSB3aGVuIGZlYXR1cmVzIGFyZSBhZGRlZCB0byBpdC5cclxuICBhcmVhUmF0aW8/OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZVN0b3JlTG9hZGluZ1N0cmF0ZWd5T3B0aW9uc1xyXG4gIGV4dGVuZHMgRmVhdHVyZVN0b3JlU3RyYXRlZ3lPcHRpb25zIHtcclxuICBnZXRGZWF0dXJlSWQ/OiAoRmVhdHVyZSkgPT4gRW50aXR5S2V5O1xyXG4gIG1vdGlvbj86IEZlYXR1cmVNb3Rpb247XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZVN0b3JlUHJvcGVydHlUeXBlU3RyYXRlZ3lPcHRpb25zXHJcbiAgZXh0ZW5kcyBGZWF0dXJlU3RvcmVTdHJhdGVneU9wdGlvbnMge1xyXG4gIG1hcDogSWdvTWFwO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZVN0b3JlSW5NYXBFeHRlbnRTdHJhdGVneU9wdGlvbnNcclxuICBleHRlbmRzIEZlYXR1cmVTdG9yZVN0cmF0ZWd5T3B0aW9ucyB7fVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlU3RvcmVJbk1hcFJlc29sdXRpb25TdHJhdGVneU9wdGlvbnNcclxuICBleHRlbmRzIEZlYXR1cmVTdG9yZVN0cmF0ZWd5T3B0aW9ucyB7fVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlU3RvcmVMb2FkaW5nTGF5ZXJTdHJhdGVneU9wdGlvbnNcclxuICBleHRlbmRzIEZlYXR1cmVTdG9yZVN0cmF0ZWd5T3B0aW9ucyB7fVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBGZWF0dXJlU3RvcmVTZWFyY2hJbmRleFN0cmF0ZWd5T3B0aW9uc1xyXG4gIGV4dGVuZHMgRW50aXR5U3RvcmVTdHJhdGVneU9wdGlvbnMge1xyXG4gIHNvdXJjZUZpZWxkcz86IFNvdXJjZUZpZWxkc09wdGlvbnNQYXJhbXNbXTtcclxuICBwZXJjZW50RGlzdGluY3RWYWx1ZVJhdGlvPzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEZlYXR1cmVTdG9yZVNlbGVjdGlvblN0cmF0ZWd5T3B0aW9uc1xyXG4gIGV4dGVuZHMgRmVhdHVyZVN0b3JlU3RyYXRlZ3lPcHRpb25zIHtcclxuICBtYXA6IElnb01hcDtcclxuICBnZXRGZWF0dXJlSWQ/OiAoRmVhdHVyZSkgPT4gRW50aXR5S2V5O1xyXG4gIG1vdGlvbj86IEZlYXR1cmVNb3Rpb247XHJcbiAgbGF5ZXI/OiBWZWN0b3JMYXllcjtcclxuICBtYW55PzogYm9vbGVhbjtcclxuICBoaXRUb2xlcmFuY2U/OiBudW1iZXI7XHJcbiAgZHJhZ0JveD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmVhdHVyZUZvcm1TdWJtaXRFdmVudCB7XHJcbiAgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuICBmZWF0dXJlOiBGZWF0dXJlIHwgdW5kZWZpbmVkO1xyXG4gIGRhdGE6IEZlYXR1cmU7XHJcbn1cclxuIl19
@@ -0,0 +1,333 @@
1
+ import * as olextent from 'ol/extent';
2
+ import * as olproj from 'ol/proj';
3
+ import * as olstyle from 'ol/style';
4
+ import OlPolygon from 'ol/geom/Polygon';
5
+ import OlPoint from 'ol/geom/Point';
6
+ import OlLineString from 'ol/geom/LineString';
7
+ import OlFormatGeoJSON from 'ol/format/GeoJSON';
8
+ import { uuid } from '@igo2/utils';
9
+ import { getEntityId, getEntityTitle, getEntityRevision, getEntityIcon, getEntityProperty } from '@igo2/common';
10
+ import { FEATURE, FeatureMotion } from './feature.enums';
11
+ /**
12
+ * Create an Openlayers feature object out of a feature definition.
13
+ * The output object has a reference to the feature id.
14
+ * @param feature Feature definition
15
+ * @param projectionOut Feature object projection
16
+ * @returns OpenLayers feature object
17
+ */
18
+ export function featureToOl(feature, projectionOut, getId) {
19
+ getId = getId ? getId : getEntityId;
20
+ const olFormat = new OlFormatGeoJSON();
21
+ const olFeature = olFormat.readFeature(feature, {
22
+ dataProjection: feature.projection,
23
+ featureProjection: projectionOut
24
+ });
25
+ olFeature.setId(getId(feature));
26
+ const title = getEntityTitle(feature);
27
+ if (title !== undefined) {
28
+ olFeature.set('_title', title, true);
29
+ }
30
+ if (feature.extent !== undefined) {
31
+ olFeature.set('_extent', feature.extent, true);
32
+ }
33
+ if (feature.projection !== undefined) {
34
+ olFeature.set('_projection', feature.projection, true);
35
+ }
36
+ const mapTitle = getEntityProperty(feature, 'meta.mapTitle');
37
+ if (mapTitle !== undefined) {
38
+ olFeature.set('_mapTitle', mapTitle, true);
39
+ }
40
+ olFeature.set('_entityRevision', getEntityRevision(feature), true);
41
+ const icon = getEntityIcon(feature);
42
+ if (icon !== undefined) {
43
+ olFeature.set('_icon', icon, true);
44
+ }
45
+ if (feature.meta && feature.meta.style) {
46
+ olFeature.set('_style', feature.meta.style, true);
47
+ }
48
+ if (feature.sourceId) {
49
+ olFeature.set('_sourceId', feature.sourceId, true);
50
+ }
51
+ return olFeature;
52
+ }
53
+ export function renderFeatureFromOl(olRenderFeature, projectionIn, olLayer, projectionOut = 'EPSG:4326') {
54
+ let geom;
55
+ let title;
56
+ let exclude;
57
+ let excludeOffline;
58
+ if (olLayer) {
59
+ title = olLayer.get('title');
60
+ if (olLayer.get('sourceOptions')) {
61
+ exclude = olLayer.get('sourceOptions').excludeAttribute;
62
+ excludeOffline = olLayer.get('sourceOptions').excludeAttributeOffline;
63
+ }
64
+ }
65
+ else {
66
+ title = olRenderFeature.get('_title');
67
+ }
68
+ const olFormat = new OlFormatGeoJSON();
69
+ const properties = olRenderFeature.getProperties();
70
+ const geometryType = olRenderFeature.getType();
71
+ if (geometryType === 'Polygon') {
72
+ const ends = olRenderFeature.getEnds();
73
+ geom = new OlPolygon(olRenderFeature.getFlatCoordinates(), 'XY', ends);
74
+ }
75
+ else if (geometryType === 'Point') {
76
+ geom = new OlPoint(olRenderFeature.getFlatCoordinates(), 'XY');
77
+ }
78
+ else if (geometryType === 'LineString') {
79
+ geom = new OlLineString(olRenderFeature.getFlatCoordinates(), 'XY');
80
+ }
81
+ const geometry = olFormat.writeGeometryObject(geom, {
82
+ dataProjection: projectionOut,
83
+ featureProjection: projectionIn
84
+ });
85
+ const id = olRenderFeature.getId() ? olRenderFeature.getId() : uuid();
86
+ const mapTitle = olRenderFeature.get('_mapTitle');
87
+ const extent = olproj.transformExtent(olRenderFeature.getExtent(), projectionIn, projectionOut);
88
+ return {
89
+ type: FEATURE,
90
+ projection: projectionOut,
91
+ extent,
92
+ meta: {
93
+ id,
94
+ title: title ? title : mapTitle ? mapTitle : id,
95
+ mapTitle,
96
+ excludeAttribute: exclude,
97
+ excludeAttributeOffline: excludeOffline
98
+ },
99
+ properties,
100
+ geometry,
101
+ ol: olRenderFeature
102
+ };
103
+ }
104
+ /**
105
+ * Create a feature object out of an OL feature
106
+ * The output object has a reference to the feature id.
107
+ * @param olFeature OL Feature
108
+ * @param projectionIn OL feature projection
109
+ * @param olLayer OL Layer
110
+ * @param projectionOut Feature projection
111
+ * @returns Feature
112
+ */
113
+ export function featureFromOl(olFeature, projectionIn, olLayer, projectionOut = 'EPSG:4326') {
114
+ let title;
115
+ let exclude;
116
+ let excludeOffline;
117
+ let idColumn; // for arcgisrest and tilearcgisrest source
118
+ const olFormat = new OlFormatGeoJSON();
119
+ const keys = olFeature.getKeys().filter((key) => {
120
+ return !key.startsWith('_') && key !== 'geometry';
121
+ });
122
+ const properties = keys.reduce((acc, key) => {
123
+ acc[key] = olFeature.get(key);
124
+ return acc;
125
+ }, {});
126
+ const geometry = olFormat.writeGeometryObject(olFeature.getGeometry(), {
127
+ dataProjection: projectionOut,
128
+ featureProjection: projectionIn
129
+ });
130
+ if (olLayer) {
131
+ title = olLayer.get('title');
132
+ const sourceOptions = olLayer.get('sourceOptions');
133
+ if (sourceOptions) {
134
+ exclude = sourceOptions.excludeAttribute;
135
+ excludeOffline = sourceOptions.excludeAttributeOffline;
136
+ idColumn =
137
+ sourceOptions.idColumn ||
138
+ (sourceOptions.type === 'arcgisrest' ||
139
+ sourceOptions.type === 'tilearcgisrest'
140
+ ? 'OBJECTID'
141
+ : undefined);
142
+ }
143
+ }
144
+ else {
145
+ title = olFeature.get('_title');
146
+ }
147
+ const mapTitle = olFeature.get('_mapTitle');
148
+ const id = olFeature.getId()
149
+ ? olFeature.getId()
150
+ : olFeature.get(idColumn)
151
+ ? olFeature.get(idColumn)
152
+ : uuid();
153
+ const newFeature = olFeature.get('_newFeature');
154
+ return {
155
+ type: FEATURE,
156
+ projection: projectionOut,
157
+ extent: olFeature.get('_extent'),
158
+ meta: {
159
+ id,
160
+ title: title ? title : mapTitle ? mapTitle : id,
161
+ mapTitle,
162
+ revision: olFeature.getRevision(),
163
+ style: olFeature.get('_style'),
164
+ excludeAttribute: exclude,
165
+ excludeAttributeOffline: excludeOffline
166
+ },
167
+ properties,
168
+ geometry,
169
+ ol: olFeature
170
+ };
171
+ }
172
+ /**
173
+ * Compute an OL feature extent in it's map projection
174
+ * @param map Map
175
+ * @param olFeature OL feature
176
+ * @returns Extent in the map projection
177
+ */
178
+ export function computeOlFeatureExtent(olFeature, projection) {
179
+ let olExtent = olextent.createEmpty();
180
+ const olFeatureExtent = olFeature.get('_extent');
181
+ const olFeatureProjection = olFeature.get('_projection');
182
+ if (olFeatureExtent !== undefined && olFeatureProjection !== undefined) {
183
+ olExtent = olproj.transformExtent(olFeatureExtent, olFeatureProjection, projection);
184
+ }
185
+ else {
186
+ const olGeometry = olFeature.getGeometry();
187
+ if (olGeometry !== null) {
188
+ olExtent = olGeometry.getExtent();
189
+ }
190
+ }
191
+ return olExtent;
192
+ }
193
+ /**
194
+ * Compute a multiple OL features extent in their map projection
195
+ * @param map Map
196
+ * @param olFeatures OL features
197
+ * @returns Extent in the map projection
198
+ */
199
+ export function computeOlFeaturesExtent(olFeatures, projection) {
200
+ const extent = olextent.createEmpty();
201
+ olFeatures.forEach((olFeature) => {
202
+ const featureExtent = computeOlFeatureExtent(olFeature, projection);
203
+ olextent.extend(extent, featureExtent);
204
+ });
205
+ return extent;
206
+ }
207
+ /**
208
+ * Scale an extent.
209
+ * @param extent Extent
210
+ * @param Scaling factors for top, right, bottom and left directions, in that order
211
+ * @returns Scaled extent
212
+ */
213
+ export function scaleExtent(extent, scale) {
214
+ const [width, height] = olextent.getSize(extent);
215
+ return [
216
+ scale[3] ? extent[0] - width * scale[3] : extent[0],
217
+ scale[2] ? extent[1] - height * scale[2] : extent[1],
218
+ scale[1] ? extent[2] + width * scale[1] : extent[2],
219
+ scale[0] ? extent[3] + height * scale[0] : extent[3]
220
+ ];
221
+ }
222
+ /**
223
+ * Return true if features are out of view.
224
+ * If features are too close to the edge, they are considered out of view.
225
+ * By default, we define the edge as 5% (0.05) of the extent size.
226
+ * @param map Map
227
+ * @param featuresExtent The features's extent
228
+ * @param edgeRatio Number or Number[] Single value OR an array =>
229
+ * [top,right,bottom,left] directions, in that order
230
+ * @returns Return true if features are out of view
231
+ */
232
+ export function featuresAreOutOfView(extent, featuresExtent, edgeRatio = 0.05) {
233
+ const edgesRatio = Array.isArray(edgeRatio)
234
+ ? edgeRatio
235
+ : [edgeRatio, edgeRatio, edgeRatio, edgeRatio];
236
+ const scale = [-1, -1, -1, -1].map((x, i) => x * edgesRatio[i]);
237
+ const viewExtent = scaleExtent(extent, scale);
238
+ return !olextent.containsExtent(viewExtent, featuresExtent);
239
+ }
240
+ /**
241
+ * Return true if features are too deep into the view. This results
242
+ * in features being too small.
243
+ * Features are considered too small if their extent occupies less than
244
+ * 1% of the map extent.
245
+ * @param map Map
246
+ * @param featuresExtent The features's extent
247
+ * @param areaRatio The features extent to view extent acceptable ratio
248
+ * @returns Return true if features are too deep in the view
249
+ */
250
+ export function featuresAreTooDeepInView(viewController, featuresExtent, areaRatio) {
251
+ // An area ratio of 0.004 means that the feature extent's width and height
252
+ // should be about 1/16 of the map extent's width and height
253
+ areaRatio = areaRatio ? areaRatio : 0.004;
254
+ const mapExtent = viewController.getExtent();
255
+ const mapExtentArea = olextent.getArea(mapExtent);
256
+ const featuresExtentArea = olextent.getArea(featuresExtent);
257
+ if (featuresExtentArea === 0 && viewController.getZoom() > 13) {
258
+ // In case it's a point
259
+ return false;
260
+ }
261
+ return featuresExtentArea / mapExtentArea < areaRatio;
262
+ }
263
+ /**
264
+ * Fit view to include the features extent.
265
+ * By default, this method will let the features occupy about 50% of the viewport.
266
+ * @param map Map
267
+ * @param olFeatures OL features
268
+ * @param motion To motion to the new map view
269
+ * @param scale If this is defined, the original view will be scaled
270
+ * by that factor before any logic is applied.
271
+ */
272
+ export function moveToOlFeatures(viewController, olFeatures, motion = FeatureMotion.Default, scale, areaRatio) {
273
+ const extent = viewController.getExtent();
274
+ const projection = viewController.getOlProjection();
275
+ const featuresExtent = computeOlFeaturesExtent(olFeatures, projection);
276
+ let viewExtent = featuresExtent;
277
+ if (scale !== undefined) {
278
+ viewExtent = scaleExtent(viewExtent, scale);
279
+ }
280
+ if (motion === FeatureMotion.Zoom) {
281
+ viewController.zoomToExtent(viewExtent);
282
+ }
283
+ else if (motion === FeatureMotion.Move) {
284
+ viewController.moveToExtent(viewExtent);
285
+ }
286
+ else if (motion === FeatureMotion.Default) {
287
+ if (featuresAreOutOfView(extent, featuresExtent) ||
288
+ featuresAreTooDeepInView(viewController, featuresExtent, areaRatio)) {
289
+ viewController.zoomToExtent(viewExtent);
290
+ }
291
+ }
292
+ }
293
+ /**
294
+ * Hide an OL feature
295
+ * @param olFeature OL feature
296
+ */
297
+ export function hideOlFeature(olFeature) {
298
+ olFeature.setStyle(new olstyle.Style({}));
299
+ }
300
+ /**
301
+ * Compute a diff between a source array of Ol features and a target array
302
+ * @param source Source array of OL features
303
+ * @param starget Target array of OL features
304
+ * @returns Features to add and remove
305
+ */
306
+ export function computeOlFeaturesDiff(source, target) {
307
+ const olFeaturesMap = new Map();
308
+ target.forEach((olFeature) => {
309
+ olFeaturesMap.set(olFeature.getId(), olFeature);
310
+ });
311
+ const olFeaturesToRemove = [];
312
+ source.forEach((olFeature) => {
313
+ const newOlFeature = olFeaturesMap.get(olFeature.getId());
314
+ if (newOlFeature === undefined) {
315
+ olFeaturesToRemove.push(olFeature);
316
+ }
317
+ else if (newOlFeature.get('_entityRevision') !== olFeature.get('_entityRevision')) {
318
+ olFeaturesToRemove.push(olFeature);
319
+ }
320
+ else {
321
+ olFeaturesMap.delete(newOlFeature.getId());
322
+ }
323
+ });
324
+ const olFeaturesToAddIds = Array.from(olFeaturesMap.keys());
325
+ const olFeaturesToAdd = target.filter((olFeature) => {
326
+ return olFeaturesToAddIds.indexOf(olFeature.getId()) >= 0;
327
+ });
328
+ return {
329
+ add: olFeaturesToAdd,
330
+ remove: olFeaturesToRemove
331
+ };
332
+ }
333
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVhdHVyZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2ZlYXR1cmUvc2hhcmVkL2ZlYXR1cmUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLFFBQVEsTUFBTSxXQUFXLENBQUM7QUFDdEMsT0FBTyxLQUFLLE1BQU0sTUFBTSxTQUFTLENBQUM7QUFDbEMsT0FBTyxLQUFLLE9BQU8sTUFBTSxVQUFVLENBQUM7QUFHcEMsT0FBTyxTQUFTLE1BQU0saUJBQWlCLENBQUM7QUFDeEMsT0FBTyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBQ3BDLE9BQU8sWUFBWSxNQUFNLG9CQUFvQixDQUFDO0FBRTlDLE9BQU8sZUFBZSxNQUFNLG1CQUFtQixDQUFDO0FBSWhELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUVMLFdBQVcsRUFDWCxjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixpQkFBaUIsRUFDbEIsTUFBTSxjQUFjLENBQUM7QUFHdEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd6RDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUN6QixPQUFnQixFQUNoQixhQUFxQixFQUNyQixLQUE4QjtJQUU5QixLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUVwQyxNQUFNLFFBQVEsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO0lBQ3ZDLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFO1FBQzlDLGNBQWMsRUFBRSxPQUFPLENBQUMsVUFBVTtRQUNsQyxpQkFBaUIsRUFBRSxhQUFhO0tBQ2pDLENBQUMsQ0FBQztJQUVILFNBQVMsQ0FBQyxLQUFL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QUcsRUFBRSxlQUFlO1FBQ3BCLE1BQU0sRUFBRSxrQkFBa0I7S0FDM0IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBvbGV4dGVudCBmcm9tICdvbC9leHRlbnQnO1xyXG5pbXBvcnQgKiBhcyBvbHByb2ogZnJvbSAnb2wvcHJvaic7XHJcbmltcG9ydCAqIGFzIG9sc3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xyXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xyXG5pbXBvcnQgdHlwZSB7IEdlb21ldHJ5TGF5b3V0IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XHJcbmltcG9ydCBPbFBvbHlnb24gZnJvbSAnb2wvZ2VvbS9Qb2x5Z29uJztcclxuaW1wb3J0IE9sUG9pbnQgZnJvbSAnb2wvZ2VvbS9Qb2ludCc7XHJcbmltcG9ydCBPbExpbmVTdHJpbmcgZnJvbSAnb2wvZ2VvbS9MaW5lU3RyaW5nJztcclxuaW1wb3J0IE9sUmVuZGVyRmVhdHVyZSBmcm9tICdvbC9yZW5kZXIvRmVhdHVyZSc7XHJcbmltcG9ydCBPbEZvcm1hdEdlb0pTT04gZnJvbSAnb2wvZm9ybWF0L0dlb0pTT04nO1xyXG5pbXBvcnQgT2xMYXllciBmcm9tICdvbC9sYXllci9MYXllcic7XHJcbmltcG9ydCBPbFNvdXJjZSBmcm9tICdvbC9zb3VyY2UvU291cmNlJztcclxuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuaW1wb3J0IHsgdXVpZCB9IGZyb20gJ0BpZ28yL3V0aWxzJztcclxuXHJcbmltcG9ydCB7XHJcbiAgRW50aXR5S2V5LFxyXG4gIGdldEVudGl0eUlkLFxyXG4gIGdldEVudGl0eVRpdGxlLFxyXG4gIGdldEVudGl0eVJldmlzaW9uLFxyXG4gIGdldEVudGl0eUljb24sXHJcbiAgZ2V0RW50aXR5UHJvcGVydHlcclxufSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgTWFwRXh0ZW50LCBNYXBWaWV3Q29udHJvbGxlciB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQnO1xyXG5pbXBvcnQgeyBGRUFUVVJFLCBGZWF0dXJlTW90aW9uIH0gZnJvbSAnLi9mZWF0dXJlLmVudW1zJztcclxuaW1wb3J0IHsgRmVhdHVyZSwgRmVhdHVyZUdlb21ldHJ5IH0gZnJvbSAnLi9mZWF0dXJlLmludGVyZmFjZXMnO1xyXG5cclxuLyoqXHJcbiAqIENyZWF0ZSBhbiBPcGVubGF5ZXJzIGZlYXR1cmUgb2JqZWN0IG91dCBvZiBhIGZlYXR1cmUgZGVmaW5pdGlvbi5cclxuICogVGhlIG91dHB1dCBvYmplY3QgaGFzIGEgcmVmZXJlbmNlIHRvIHRoZSBmZWF0dXJlIGlkLlxyXG4gKiBAcGFyYW0gZmVhdHVyZSBGZWF0dXJlIGRlZmluaXRpb25cclxuICogQHBhcmFtIHByb2plY3Rpb25PdXQgRmVhdHVyZSBvYmplY3QgcHJvamVjdGlvblxyXG4gKiBAcmV0dXJucyBPcGVuTGF5ZXJzIGZlYXR1cmUgb2JqZWN0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZmVhdHVyZVRvT2woXHJcbiAgZmVhdHVyZTogRmVhdHVyZSxcclxuICBwcm9qZWN0aW9uT3V0OiBzdHJpbmcsXHJcbiAgZ2V0SWQ/OiAoRmVhdHVyZSkgPT4gRW50aXR5S2V5XHJcbik6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PiB7XHJcbiAgZ2V0SWQgPSBnZXRJZCA/IGdldElkIDogZ2V0RW50aXR5SWQ7XHJcblxyXG4gIGNvbnN0IG9sRm9ybWF0ID0gbmV3IE9sRm9ybWF0R2VvSlNPTigpO1xyXG4gIGNvbnN0IG9sRmVhdHVyZSA9IG9sRm9ybWF0LnJlYWRGZWF0dXJlKGZlYXR1cmUsIHtcclxuICAgIGRhdGFQcm9qZWN0aW9uOiBmZWF0dXJlLnByb2plY3Rpb24sXHJcbiAgICBmZWF0dXJlUHJvamVjdGlvbjogcHJvamVjdGlvbk91dFxyXG4gIH0pO1xyXG5cclxuICBvbEZlYXR1cmUuc2V0SWQoZ2V0SWQoZmVhdHVyZSkpO1xyXG5cclxuICBjb25zdCB0aXRsZSA9IGdldEVudGl0eVRpdGxlKGZlYXR1cmUpO1xyXG4gIGlmICh0aXRsZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICBvbEZlYXR1cmUuc2V0KCdfdGl0bGUnLCB0aXRsZSwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBpZiAoZmVhdHVyZS5leHRlbnQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgb2xGZWF0dXJlLnNldCgnX2V4dGVudCcsIGZlYXR1cmUuZXh0ZW50LCB0cnVlKTtcclxuICB9XHJcblxyXG4gIGlmIChmZWF0dXJlLnByb2plY3Rpb24gIT09IHVuZGVmaW5lZCkge1xyXG4gICAgb2xGZWF0dXJlLnNldCgnX3Byb2plY3Rpb24nLCBmZWF0dXJlLnByb2plY3Rpb24sIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgbWFwVGl0bGUgPSBnZXRFbnRpdHlQcm9wZXJ0eShmZWF0dXJlLCAnbWV0YS5tYXBUaXRsZScpO1xyXG4gIGlmIChtYXBUaXRsZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICBvbEZlYXR1cmUuc2V0KCdfbWFwVGl0bGUnLCBtYXBUaXRsZSwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBvbEZlYXR1cmUuc2V0KCdfZW50aXR5UmV2aXNpb24nLCBnZXRFbnRpdHlSZXZpc2lvbihmZWF0dXJlKSwgdHJ1ZSk7XHJcblxyXG4gIGNvbnN0IGljb24gPSBnZXRFbnRpdHlJY29uKGZlYXR1cmUpO1xyXG4gIGlmIChpY29uICE9PSB1bmRlZmluZWQpIHtcclxuICAgIG9sRmVhdHVyZS5zZXQoJ19pY29uJywgaWNvbiwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBpZiAoZmVhdHVyZS5tZXRhICYmIGZlYXR1cmUubWV0YS5zdHlsZSkge1xyXG4gICAgb2xGZWF0dXJlLnNldCgnX3N0eWxlJywgZmVhdHVyZS5tZXRhLnN0eWxlLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIGlmIChmZWF0dXJlLnNvdXJjZUlkKSB7XHJcbiAgICBvbEZlYXR1cmUuc2V0KCdfc291cmNlSWQnLCBmZWF0dXJlLnNvdXJjZUlkLCB0cnVlKTtcclxuICB9XHJcblxyXG4gIHJldHVybiBvbEZlYXR1cmU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZW5kZXJGZWF0dXJlRnJvbU9sKFxyXG4gIG9sUmVuZGVyRmVhdHVyZTogT2xSZW5kZXJGZWF0dXJlLFxyXG4gIHByb2plY3Rpb25Jbjogc3RyaW5nLFxyXG4gIG9sTGF5ZXI/OiBPbExheWVyPE9sU291cmNlPixcclxuICBwcm9qZWN0aW9uT3V0ID0gJ0VQU0c6NDMyNidcclxuKTogRmVhdHVyZSB7XHJcbiAgbGV0IGdlb207XHJcbiAgbGV0IHRpdGxlO1xyXG4gIGxldCBleGNsdWRlO1xyXG4gIGxldCBleGNsdWRlT2ZmbGluZTtcclxuXHJcbiAgaWYgKG9sTGF5ZXIpIHtcclxuICAgIHRpdGxlID0gb2xMYXllci5nZXQoJ3RpdGxlJyk7XHJcbiAgICBpZiAob2xMYXllci5nZXQoJ3NvdXJjZU9wdGlvbnMnKSkge1xyXG4gICAgICBleGNsdWRlID0gb2xMYXllci5nZXQoJ3NvdXJjZU9wdGlvbnMnKS5leGNsdWRlQXR0cmlidXRlO1xyXG4gICAgICBleGNsdWRlT2ZmbGluZSA9IG9sTGF5ZXIuZ2V0KCdzb3VyY2VPcHRpb25zJykuZXhjbHVkZUF0dHJpYnV0ZU9mZmxpbmU7XHJcbiAgICB9XHJcbiAgfSBlbHNlIHtcclxuICAgIHRpdGxlID0gb2xSZW5kZXJGZWF0dXJlLmdldCgnX3RpdGxlJyk7XHJcbiAgfVxyXG5cclxuICBjb25zdCBvbEZvcm1hdCA9IG5ldyBPbEZvcm1hdEdlb0pTT04oKTtcclxuICBjb25zdCBwcm9wZXJ0aWVzID0gb2xSZW5kZXJGZWF0dXJlLmdldFByb3BlcnRpZXMoKTtcclxuICBjb25zdCBnZW9tZXRyeVR5cGUgPSBvbFJlbmRlckZlYXR1cmUuZ2V0VHlwZSgpO1xyXG5cclxuICBpZiAoZ2VvbWV0cnlUeXBlID09PSAnUG9seWdvbicpIHtcclxuICAgIGNvbnN0IGVuZHMgPSBvbFJlbmRlckZlYXR1cmUuZ2V0RW5kcygpIGFzIG51bWJlcltdO1xyXG4gICAgZ2VvbSA9IG5ldyBPbFBvbHlnb24oXHJcbiAgICAgIG9sUmVuZGVyRmVhdHVyZS5nZXRGbGF0Q29vcmRpbmF0ZXMoKSxcclxuICAgICAgJ1hZJyBhcyBHZW9tZXRyeUxheW91dCxcclxuICAgICAgZW5kc1xyXG4gICAgKTtcclxuICB9IGVsc2UgaWYgKGdlb21ldHJ5VHlwZSA9PT0gJ1BvaW50Jykge1xyXG4gICAgZ2VvbSA9IG5ldyBPbFBvaW50KFxyXG4gICAgICBvbFJlbmRlckZlYXR1cmUuZ2V0RmxhdENvb3JkaW5hdGVzKCksXHJcbiAgICAgICdYWScgYXMgR2VvbWV0cnlMYXlvdXRcclxuICAgICk7XHJcbiAgfSBlbHNlIGlmIChnZW9tZXRyeVR5cGUgPT09ICdMaW5lU3RyaW5nJykge1xyXG4gICAgZ2VvbSA9IG5ldyBPbExpbmVTdHJpbmcoXHJcbiAgICAgIG9sUmVuZGVyRmVhdHVyZS5nZXRGbGF0Q29vcmRpbmF0ZXMoKSxcclxuICAgICAgJ1hZJyBhcyBHZW9tZXRyeUxheW91dFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IGdlb21ldHJ5ID0gb2xGb3JtYXQud3JpdGVHZW9tZXRyeU9iamVjdChnZW9tLCB7XHJcbiAgICBkYXRhUHJvamVjdGlvbjogcHJvamVjdGlvbk91dCxcclxuICAgIGZlYXR1cmVQcm9qZWN0aW9uOiBwcm9qZWN0aW9uSW5cclxuICB9KSBhcyBGZWF0dXJlR2VvbWV0cnk7XHJcblxyXG4gIGNvbnN0IGlkID0gb2xSZW5kZXJGZWF0dXJlLmdldElkKCkgPyBvbFJlbmRlckZlYXR1cmUuZ2V0SWQoKSA6IHV1aWQoKTtcclxuICBjb25zdCBtYXBUaXRsZSA9IG9sUmVuZGVyRmVhdHVyZS5nZXQoJ19tYXBUaXRsZScpO1xyXG4gIGNvbnN0IGV4dGVudCA9IG9scHJvai50cmFuc2Zvcm1FeHRlbnQoXHJcbiAgICBvbFJlbmRlckZlYXR1cmUuZ2V0RXh0ZW50KCksXHJcbiAgICBwcm9qZWN0aW9uSW4sXHJcbiAgICBwcm9qZWN0aW9uT3V0XHJcbiAgKSBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXTtcclxuICByZXR1cm4ge1xyXG4gICAgdHlwZTogRkVBVFVSRSxcclxuICAgIHByb2plY3Rpb246IHByb2plY3Rpb25PdXQsXHJcbiAgICBleHRlbnQsXHJcbiAgICBtZXRhOiB7XHJcbiAgICAgIGlkLFxyXG4gICAgICB0aXRsZTogdGl0bGUgPyB0aXRsZSA6IG1hcFRpdGxlID8gbWFwVGl0bGUgOiBpZCxcclxuICAgICAgbWFwVGl0bGUsXHJcbiAgICAgIGV4Y2x1ZGVBdHRyaWJ1dGU6IGV4Y2x1ZGUsXHJcbiAgICAgIGV4Y2x1ZGVBdHRyaWJ1dGVPZmZsaW5lOiBleGNsdWRlT2ZmbGluZVxyXG4gICAgfSxcclxuICAgIHByb3BlcnRpZXMsXHJcbiAgICBnZW9tZXRyeSxcclxuICAgIG9sOiBvbFJlbmRlckZlYXR1cmVcclxuICB9O1xyXG59XHJcbi8qKlxyXG4gKiBDcmVhdGUgYSBmZWF0dXJlIG9iamVjdCBvdXQgb2YgYW4gT0wgZmVhdHVyZVxyXG4gKiBUaGUgb3V0cHV0IG9iamVjdCBoYXMgYSByZWZlcmVuY2UgdG8gdGhlIGZlYXR1cmUgaWQuXHJcbiAqIEBwYXJhbSBvbEZlYXR1cmUgT0wgRmVhdHVyZVxyXG4gKiBAcGFyYW0gcHJvamVjdGlvbkluIE9MIGZlYXR1cmUgcHJvamVjdGlvblxyXG4gKiBAcGFyYW0gb2xMYXllciBPTCBMYXllclxyXG4gKiBAcGFyYW0gcHJvamVjdGlvbk91dCBGZWF0dXJlIHByb2plY3Rpb25cclxuICogQHJldHVybnMgRmVhdHVyZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGZlYXR1cmVGcm9tT2woXHJcbiAgb2xGZWF0dXJlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sXHJcbiAgcHJvamVjdGlvbkluOiBzdHJpbmcsXHJcbiAgb2xMYXllcj86IE9sTGF5ZXI8T2xTb3VyY2U+LFxyXG4gIHByb2plY3Rpb25PdXQgPSAnRVBTRzo0MzI2J1xyXG4pOiBGZWF0dXJlIHtcclxuICBsZXQgdGl0bGU7XHJcbiAgbGV0IGV4Y2x1ZGU7XHJcbiAgbGV0IGV4Y2x1ZGVPZmZsaW5lO1xyXG4gIGxldCBpZENvbHVtbjsgLy8gZm9yIGFyY2dpc3Jlc3QgYW5kIHRpbGVhcmNnaXNyZXN0IHNvdXJjZVxyXG4gIGNvbnN0IG9sRm9ybWF0ID0gbmV3IE9sRm9ybWF0R2VvSlNPTigpO1xyXG5cclxuICBjb25zdCBrZXlzID0gb2xGZWF0dXJlLmdldEtleXMoKS5maWx0ZXIoKGtleTogc3RyaW5nKSA9PiB7XHJcbiAgICByZXR1cm4gIWtleS5zdGFydHNXaXRoKCdfJykgJiYga2V5ICE9PSAnZ2VvbWV0cnknO1xyXG4gIH0pO1xyXG4gIGNvbnN0IHByb3BlcnRpZXMgPSBrZXlzLnJlZHVjZSgoYWNjOiBvYmplY3QsIGtleTogc3RyaW5nKSA9PiB7XHJcbiAgICBhY2Nba2V5XSA9IG9sRmVhdHVyZS5nZXQoa2V5KTtcclxuICAgIHJldHVybiBhY2M7XHJcbiAgfSwge30pO1xyXG5cclxuICBjb25zdCBnZW9tZXRyeSA9IG9sRm9ybWF0LndyaXRlR2VvbWV0cnlPYmplY3Qob2xGZWF0dXJlLmdldEdlb21ldHJ5KCksIHtcclxuICAgIGRhdGFQcm9qZWN0aW9uOiBwcm9qZWN0aW9uT3V0LFxyXG4gICAgZmVhdHVyZVByb2plY3Rpb246IHByb2plY3Rpb25JblxyXG4gIH0pIGFzIEZlYXR1cmVHZW9tZXRyeTtcclxuXHJcbiAgaWYgKG9sTGF5ZXIpIHtcclxuICAgIHRpdGxlID0gb2xMYXllci5nZXQoJ3RpdGxlJyk7XHJcbiAgICBjb25zdCBzb3VyY2VPcHRpb25zID0gb2xMYXllci5nZXQoJ3NvdXJjZU9wdGlvbnMnKTtcclxuICAgIGlmIChzb3VyY2VPcHRpb25zKSB7XHJcbiAgICAgIGV4Y2x1ZGUgPSBzb3VyY2VPcHRpb25zLmV4Y2x1ZGVBdHRyaWJ1dGU7XHJcbiAgICAgIGV4Y2x1ZGVPZmZsaW5lID0gc291cmNlT3B0aW9ucy5leGNsdWRlQXR0cmlidXRlT2ZmbGluZTtcclxuICAgICAgaWRDb2x1bW4gPVxyXG4gICAgICAgIHNvdXJjZU9wdGlvbnMuaWRDb2x1bW4gfHxcclxuICAgICAgICAoc291cmNlT3B0aW9ucy50eXBlID09PSAnYXJjZ2lzcmVzdCcgfHxcclxuICAgICAgICBzb3VyY2VPcHRpb25zLnR5cGUgPT09ICd0aWxlYXJjZ2lzcmVzdCdcclxuICAgICAgICAgID8gJ09CSkVDVElEJ1xyXG4gICAgICAgICAgOiB1bmRlZmluZWQpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICB0aXRsZSA9IG9sRmVhdHVyZS5nZXQoJ190aXRsZScpO1xyXG4gIH1cclxuICBjb25zdCBtYXBUaXRsZSA9IG9sRmVhdHVyZS5nZXQoJ19tYXBUaXRsZScpO1xyXG4gIGNvbnN0IGlkID0gb2xGZWF0dXJlLmdldElkKClcclxuICAgID8gb2xGZWF0dXJlLmdldElkKClcclxuICAgIDogb2xGZWF0dXJlLmdldChpZENvbHVtbilcclxuICAgID8gb2xGZWF0dXJlLmdldChpZENvbHVtbilcclxuICAgIDogdXVpZCgpO1xyXG4gIGNvbnN0IG5ld0ZlYXR1cmUgPSBvbEZlYXR1cmUuZ2V0KCdfbmV3RmVhdHVyZScpO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgdHlwZTogRkVBVFVSRSxcclxuICAgIHByb2plY3Rpb246IHByb2plY3Rpb25PdXQsXHJcbiAgICBleHRlbnQ6IG9sRmVhdHVyZS5nZXQoJ19leHRlbnQnKSxcclxuICAgIG1ldGE6IHtcclxuICAgICAgaWQsXHJcbiAgICAgIHRpdGxlOiB0aXRsZSA/IHRpdGxlIDogbWFwVGl0bGUgPyBtYXBUaXRsZSA6IGlkLFxyXG4gICAgICBtYXBUaXRsZSxcclxuICAgICAgcmV2aXNpb246IG9sRmVhdHVyZS5nZXRSZXZpc2lvbigpLFxyXG4gICAgICBzdHlsZTogb2xGZWF0dXJlLmdldCgnX3N0eWxlJyksXHJcbiAgICAgIGV4Y2x1ZGVBdHRyaWJ1dGU6IGV4Y2x1ZGUsXHJcbiAgICAgIGV4Y2x1ZGVBdHRyaWJ1dGVPZmZsaW5lOiBleGNsdWRlT2ZmbGluZVxyXG4gICAgfSxcclxuICAgIHByb3BlcnRpZXMsXHJcbiAgICBnZW9tZXRyeSxcclxuICAgIG9sOiBvbEZlYXR1cmVcclxuICB9O1xyXG59XHJcblxyXG4vKipcclxuICogQ29tcHV0ZSBhbiBPTCBmZWF0dXJlIGV4dGVudCBpbiBpdCdzIG1hcCBwcm9qZWN0aW9uXHJcbiAqIEBwYXJhbSBtYXAgTWFwXHJcbiAqIEBwYXJhbSBvbEZlYXR1cmUgT0wgZmVhdHVyZVxyXG4gKiBAcmV0dXJucyBFeHRlbnQgaW4gdGhlIG1hcCBwcm9qZWN0aW9uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZU9sRmVhdHVyZUV4dGVudChcclxuICBvbEZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PixcclxuICBwcm9qZWN0aW9uOiBvbHByb2ouUHJvamVjdGlvblxyXG4pOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XHJcbiAgbGV0IG9sRXh0ZW50ID0gb2xleHRlbnQuY3JlYXRlRW1wdHkoKTtcclxuXHJcbiAgY29uc3Qgb2xGZWF0dXJlRXh0ZW50ID0gb2xGZWF0dXJlLmdldCgnX2V4dGVudCcpO1xyXG4gIGNvbnN0IG9sRmVhdHVyZVByb2plY3Rpb24gPSBvbEZlYXR1cmUuZ2V0KCdfcHJvamVjdGlvbicpO1xyXG4gIGlmIChvbEZlYXR1cmVFeHRlbnQgIT09IHVuZGVmaW5lZCAmJiBvbEZlYXR1cmVQcm9qZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcclxuICAgIG9sRXh0ZW50ID0gb2xwcm9qLnRyYW5zZm9ybUV4dGVudChcclxuICAgICAgb2xGZWF0dXJlRXh0ZW50LFxyXG4gICAgICBvbEZlYXR1cmVQcm9qZWN0aW9uLFxyXG4gICAgICBwcm9qZWN0aW9uXHJcbiAgICApO1xyXG4gIH0gZWxzZSB7XHJcbiAgICBjb25zdCBvbEdlb21ldHJ5ID0gb2xGZWF0dXJlLmdldEdlb21ldHJ5KCk7XHJcbiAgICBpZiAob2xHZW9tZXRyeSAhPT0gbnVsbCkge1xyXG4gICAgICBvbEV4dGVudCA9IG9sR2VvbWV0cnkuZ2V0RXh0ZW50KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gb2xFeHRlbnQgYXMgW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb21wdXRlIGEgbXVsdGlwbGUgT0wgZmVhdHVyZXMgZXh0ZW50IGluIHRoZWlyIG1hcCBwcm9qZWN0aW9uXHJcbiAqIEBwYXJhbSBtYXAgTWFwXHJcbiAqIEBwYXJhbSBvbEZlYXR1cmVzIE9MIGZlYXR1cmVzXHJcbiAqIEByZXR1cm5zIEV4dGVudCBpbiB0aGUgbWFwIHByb2plY3Rpb25cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlT2xGZWF0dXJlc0V4dGVudChcclxuICBvbEZlYXR1cmVzOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT5bXSxcclxuICBwcm9qZWN0aW9uOiBvbHByb2ouUHJvamVjdGlvblxyXG4pOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XHJcbiAgY29uc3QgZXh0ZW50ID0gb2xleHRlbnQuY3JlYXRlRW1wdHkoKTtcclxuXHJcbiAgb2xGZWF0dXJlcy5mb3JFYWNoKChvbEZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PikgPT4ge1xyXG4gICAgY29uc3QgZmVhdHVyZUV4dGVudCA9IGNvbXB1dGVPbEZlYXR1cmVFeHRlbnQob2xGZWF0dXJlLCBwcm9qZWN0aW9uKTtcclxuICAgIG9sZXh0ZW50LmV4dGVuZChleHRlbnQsIGZlYXR1cmVFeHRlbnQpO1xyXG4gIH0pO1xyXG5cclxuICByZXR1cm4gZXh0ZW50IGFzIFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdO1xyXG59XHJcblxyXG4vKipcclxuICogU2NhbGUgYW4gZXh0ZW50LlxyXG4gKiBAcGFyYW0gZXh0ZW50IEV4dGVudFxyXG4gKiBAcGFyYW0gU2NhbGluZyBmYWN0b3JzIGZvciB0b3AsIHJpZ2h0LCBib3R0b20gYW5kIGxlZnQgZGlyZWN0aW9ucywgaW4gdGhhdCBvcmRlclxyXG4gKiBAcmV0dXJucyBTY2FsZWQgZXh0ZW50XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2NhbGVFeHRlbnQoXHJcbiAgZXh0ZW50OiBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXSxcclxuICBzY2FsZTogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl1cclxuKTogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0ge1xyXG4gIGNvbnN0IFt3aWR0aCwgaGVpZ2h0XSA9IG9sZXh0ZW50LmdldFNpemUoZXh0ZW50KTtcclxuICByZXR1cm4gW1xyXG4gICAgc2NhbGVbM10gPyBleHRlbnRbMF0gLSB3aWR0aCAqIHNjYWxlWzNdIDogZXh0ZW50WzBdLFxyXG4gICAgc2NhbGVbMl0gPyBleHRlbnRbMV0gLSBoZWlnaHQgKiBzY2FsZVsyXSA6IGV4dGVudFsxXSxcclxuICAgIHNjYWxlWzFdID8gZXh0ZW50WzJdICsgd2lkdGggKiBzY2FsZVsxXSA6IGV4dGVudFsyXSxcclxuICAgIHNjYWxlWzBdID8gZXh0ZW50WzNdICsgaGVpZ2h0ICogc2NhbGVbMF0gOiBleHRlbnRbM11cclxuICBdO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgZmVhdHVyZXMgYXJlIG91dCBvZiB2aWV3LlxyXG4gKiBJZiBmZWF0dXJlcyBhcmUgdG9vIGNsb3NlIHRvIHRoZSBlZGdlLCB0aGV5IGFyZSBjb25zaWRlcmVkIG91dCBvZiB2aWV3LlxyXG4gKiBCeSBkZWZhdWx0LCB3ZSBkZWZpbmUgdGhlIGVkZ2UgYXMgNSUgKDAuMDUpIG9mIHRoZSBleHRlbnQgc2l6ZS5cclxuICogQHBhcmFtIG1hcCBNYXBcclxuICogQHBhcmFtIGZlYXR1cmVzRXh0ZW50IFRoZSBmZWF0dXJlcydzIGV4dGVudFxyXG4gKiBAcGFyYW0gZWRnZVJhdGlvIE51bWJlciBvciBOdW1iZXJbXSBTaW5nbGUgdmFsdWUgT1IgYW4gYXJyYXkgPT5cclxuICogIFt0b3AscmlnaHQsYm90dG9tLGxlZnRdIGRpcmVjdGlvbnMsIGluIHRoYXQgb3JkZXJcclxuICogQHJldHVybnMgUmV0dXJuIHRydWUgaWYgZmVhdHVyZXMgYXJlIG91dCBvZiB2aWV3XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZmVhdHVyZXNBcmVPdXRPZlZpZXcoXHJcbiAgZXh0ZW50OiBNYXBFeHRlbnQsXHJcbiAgZmVhdHVyZXNFeHRlbnQ6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdLFxyXG4gIGVkZ2VSYXRpbzogbnVtYmVyIHwgbnVtYmVyW10gPSAwLjA1XHJcbikge1xyXG4gIGNvbnN0IGVkZ2VzUmF0aW8gPSBBcnJheS5pc0FycmF5KGVkZ2VSYXRpbylcclxuICAgID8gZWRnZVJhdGlvXHJcbiAgICA6IFtlZGdlUmF0aW8sIGVkZ2VSYXRpbywgZWRnZVJhdGlvLCBlZGdlUmF0aW9dO1xyXG4gIGNvbnN0IHNjYWxlID0gWy0xLCAtMSwgLTEsIC0xXS5tYXAoKHgsIGkpID0+IHggKiBlZGdlc1JhdGlvW2ldKTtcclxuICBjb25zdCB2aWV3RXh0ZW50ID0gc2NhbGVFeHRlbnQoXHJcbiAgICBleHRlbnQsXHJcbiAgICBzY2FsZSBhcyBbbnVtYmVyLCBudW1iZXIsIG51bWJlciwgbnVtYmVyXVxyXG4gICk7XHJcblxyXG4gIHJldHVybiAhb2xleHRlbnQuY29udGFpbnNFeHRlbnQodmlld0V4dGVudCwgZmVhdHVyZXNFeHRlbnQpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIHRydWUgaWYgZmVhdHVyZXMgYXJlIHRvbyBkZWVwIGludG8gdGhlIHZpZXcuIFRoaXMgcmVzdWx0c1xyXG4gKiBpbiBmZWF0dXJlcyBiZWluZyB0b28gc21hbGwuXHJcbiAqIEZlYXR1cmVzIGFyZSBjb25zaWRlcmVkIHRvbyBzbWFsbCBpZiB0aGVpciBleHRlbnQgb2NjdXBpZXMgbGVzcyB0aGFuXHJcbiAqIDElIG9mIHRoZSBtYXAgZXh0ZW50LlxyXG4gKiBAcGFyYW0gbWFwIE1hcFxyXG4gKiBAcGFyYW0gZmVhdHVyZXNFeHRlbnQgVGhlIGZlYXR1cmVzJ3MgZXh0ZW50XHJcbiAqIEBwYXJhbSBhcmVhUmF0aW8gVGhlIGZlYXR1cmVzIGV4dGVudCB0byB2aWV3IGV4dGVudCBhY2NlcHRhYmxlIHJhdGlvXHJcbiAqIEByZXR1cm5zIFJldHVybiB0cnVlIGlmIGZlYXR1cmVzIGFyZSB0b28gZGVlcCBpbiB0aGUgdmlld1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGZlYXR1cmVzQXJlVG9vRGVlcEluVmlldyhcclxuICB2aWV3Q29udHJvbGxlcjogTWFwVmlld0NvbnRyb2xsZXIsXHJcbiAgZmVhdHVyZXNFeHRlbnQ6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdLFxyXG4gIGFyZWFSYXRpbz86IG51bWJlclxyXG4pIHtcclxuICAvLyBBbiBhcmVhIHJhdGlvIG9mIDAuMDA0IG1lYW5zIHRoYXQgdGhlIGZlYXR1cmUgZXh0ZW50J3Mgd2lkdGggYW5kIGhlaWdodFxyXG4gIC8vIHNob3VsZCBiZSBhYm91dCAxLzE2IG9mIHRoZSBtYXAgZXh0ZW50J3Mgd2lkdGggYW5kIGhlaWdodFxyXG4gIGFyZWFSYXRpbyA9IGFyZWFSYXRpbyA/IGFyZWFSYXRpbyA6IDAuMDA0O1xyXG4gIGNvbnN0IG1hcEV4dGVudCA9IHZpZXdDb250cm9sbGVyLmdldEV4dGVudCgpO1xyXG4gIGNvbnN0IG1hcEV4dGVudEFyZWEgPSBvbGV4dGVudC5nZXRBcmVhKG1hcEV4dGVudCk7XHJcbiAgY29uc3QgZmVhdHVyZXNFeHRlbnRBcmVhID0gb2xleHRlbnQuZ2V0QXJlYShmZWF0dXJlc0V4dGVudCk7XHJcblxyXG4gIGlmIChmZWF0dXJlc0V4dGVudEFyZWEgPT09IDAgJiYgdmlld0NvbnRyb2xsZXIuZ2V0Wm9vbSgpID4gMTMpIHtcclxuICAgIC8vIEluIGNhc2UgaXQncyBhIHBvaW50XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gZmVhdHVyZXNFeHRlbnRBcmVhIC8gbWFwRXh0ZW50QXJlYSA8IGFyZWFSYXRpbztcclxufVxyXG5cclxuLyoqXHJcbiAqIEZpdCB2aWV3IHRvIGluY2x1ZGUgdGhlIGZlYXR1cmVzIGV4dGVudC5cclxuICogQnkgZGVmYXVsdCwgdGhpcyBtZXRob2Qgd2lsbCBsZXQgdGhlIGZlYXR1cmVzIG9jY3VweSBhYm91dCA1MCUgb2YgdGhlIHZpZXdwb3J0LlxyXG4gKiBAcGFyYW0gbWFwIE1hcFxyXG4gKiBAcGFyYW0gb2xGZWF0dXJlcyBPTCBmZWF0dXJlc1xyXG4gKiBAcGFyYW0gbW90aW9uIFRvIG1vdGlvbiB0byB0aGUgbmV3IG1hcCB2aWV3XHJcbiAqIEBwYXJhbSBzY2FsZSBJZiB0aGlzIGlzIGRlZmluZWQsIHRoZSBvcmlnaW5hbCB2aWV3IHdpbGwgYmUgc2NhbGVkXHJcbiAqICBieSB0aGF0IGZhY3RvciBiZWZvcmUgYW55IGxvZ2ljIGlzIGFwcGxpZWQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbW92ZVRvT2xGZWF0dXJlcyhcclxuICB2aWV3Q29udHJvbGxlcjogTWFwVmlld0NvbnRyb2xsZXIsXHJcbiAgb2xGZWF0dXJlczogT2xGZWF0dXJlPE9sR2VvbWV0cnk+W10sXHJcbiAgbW90aW9uOiBGZWF0dXJlTW90aW9uID0gRmVhdHVyZU1vdGlvbi5EZWZhdWx0LFxyXG4gIHNjYWxlPzogW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0sXHJcbiAgYXJlYVJhdGlvPzogbnVtYmVyXHJcbikge1xyXG4gIGNvbnN0IGV4dGVudCA9IHZpZXdDb250cm9sbGVyLmdldEV4dGVudCgpO1xyXG4gIGNvbnN0IHByb2plY3Rpb24gPSB2aWV3Q29udHJvbGxlci5nZXRPbFByb2plY3Rpb24oKTtcclxuICBjb25zdCBmZWF0dXJlc0V4dGVudCA9IGNvbXB1dGVPbEZlYXR1cmVzRXh0ZW50KG9sRmVhdHVyZXMsIHByb2plY3Rpb24pO1xyXG4gIGxldCB2aWV3RXh0ZW50ID0gZmVhdHVyZXNFeHRlbnQ7XHJcbiAgaWYgKHNjYWxlICE9PSB1bmRlZmluZWQpIHtcclxuICAgIHZpZXdFeHRlbnQgPSBzY2FsZUV4dGVudCh2aWV3RXh0ZW50LCBzY2FsZSk7XHJcbiAgfVxyXG5cclxuICBpZiAobW90aW9uID09PSBGZWF0dXJlTW90aW9uLlpvb20pIHtcclxuICAgIHZpZXdDb250cm9sbGVyLnpvb21Ub0V4dGVudCh2aWV3RXh0ZW50KTtcclxuICB9IGVsc2UgaWYgKG1vdGlvbiA9PT0gRmVhdHVyZU1vdGlvbi5Nb3ZlKSB7XHJcbiAgICB2aWV3Q29udHJvbGxlci5tb3ZlVG9FeHRlbnQodmlld0V4dGVudCk7XHJcbiAgfSBlbHNlIGlmIChtb3Rpb24gPT09IEZlYXR1cmVNb3Rpb24uRGVmYXVsdCkge1xyXG4gICAgaWYgKFxyXG4gICAgICBmZWF0dXJlc0FyZU91dE9mVmlldyhleHRlbnQsIGZlYXR1cmVzRXh0ZW50KSB8fFxyXG4gICAgICBmZWF0dXJlc0FyZVRvb0RlZXBJblZpZXcodmlld0NvbnRyb2xsZXIsIGZlYXR1cmVzRXh0ZW50LCBhcmVhUmF0aW8pXHJcbiAgICApIHtcclxuICAgICAgdmlld0NvbnRyb2xsZXIuem9vbVRvRXh0ZW50KHZpZXdFeHRlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEhpZGUgYW4gT0wgZmVhdHVyZVxyXG4gKiBAcGFyYW0gb2xGZWF0dXJlIE9MIGZlYXR1cmVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBoaWRlT2xGZWF0dXJlKG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+KSB7XHJcbiAgb2xGZWF0dXJlLnNldFN0eWxlKG5ldyBvbHN0eWxlLlN0eWxlKHt9KSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb21wdXRlIGEgZGlmZiBiZXR3ZWVuIGEgc291cmNlIGFycmF5IG9mIE9sIGZlYXR1cmVzIGFuZCBhIHRhcmdldCBhcnJheVxyXG4gKiBAcGFyYW0gc291cmNlIFNvdXJjZSBhcnJheSBvZiBPTCBmZWF0dXJlc1xyXG4gKiBAcGFyYW0gc3RhcmdldCBUYXJnZXQgYXJyYXkgb2YgT0wgZmVhdHVyZXNcclxuICogQHJldHVybnMgRmVhdHVyZXMgdG8gYWRkIGFuZCByZW1vdmVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlT2xGZWF0dXJlc0RpZmYoXHJcbiAgc291cmNlOiBPbEZlYXR1cmU8T2xHZW9tZXRyeT5bXSxcclxuICB0YXJnZXQ6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PltdXHJcbik6IHtcclxuICBhZGQ6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PltdO1xyXG4gIHJlbW92ZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+W107XHJcbn0ge1xyXG4gIGNvbnN0IG9sRmVhdHVyZXNNYXAgPSBuZXcgTWFwKCk7XHJcbiAgdGFyZ2V0LmZvckVhY2goKG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+KSA9PiB7XHJcbiAgICBvbEZlYXR1cmVzTWFwLnNldChvbEZlYXR1cmUuZ2V0SWQoKSwgb2xGZWF0dXJlKTtcclxuICB9KTtcclxuXHJcbiAgY29uc3Qgb2xGZWF0dXJlc1RvUmVtb3ZlID0gW107XHJcbiAgc291cmNlLmZvckVhY2goKG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+KSA9PiB7XHJcbiAgICBjb25zdCBuZXdPbEZlYXR1cmUgPSBvbEZlYXR1cmVzTWFwLmdldChvbEZlYXR1cmUuZ2V0SWQoKSk7XHJcbiAgICBpZiAobmV3T2xGZWF0dXJlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgb2xGZWF0dXJlc1RvUmVtb3ZlLnB1c2gob2xGZWF0dXJlKTtcclxuICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgIG5ld09sRmVhdHVyZS5nZXQoJ19lbnRpdHlSZXZpc2lvbicpICE9PSBvbEZlYXR1cmUuZ2V0KCdfZW50aXR5UmV2aXNpb24nKVxyXG4gICAgKSB7XHJcbiAgICAgIG9sRmVhdHVyZXNUb1JlbW92ZS5wdXNoKG9sRmVhdHVyZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBvbEZlYXR1cmVzTWFwLmRlbGV0ZShuZXdPbEZlYXR1cmUuZ2V0SWQoKSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIGNvbnN0IG9sRmVhdHVyZXNUb0FkZElkcyA9IEFycmF5LmZyb20ob2xGZWF0dXJlc01hcC5rZXlzKCkpO1xyXG4gIGNvbnN0IG9sRmVhdHVyZXNUb0FkZCA9IHRhcmdldC5maWx0ZXIoKG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+KSA9PiB7XHJcbiAgICByZXR1cm4gb2xGZWF0dXJlc1RvQWRkSWRzLmluZGV4T2Yob2xGZWF0dXJlLmdldElkKCkpID49IDA7XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBhZGQ6IG9sRmVhdHVyZXNUb0FkZCxcclxuICAgIHJlbW92ZTogb2xGZWF0dXJlc1RvUmVtb3ZlXHJcbiAgfTtcclxufVxyXG4iXX0=