@igo2/geo 1.12.0 → 1.13.0-alpha.1

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 (613) hide show
  1. package/{esm2015/igo2-geo.js → esm2020/igo2-geo.mjs} +0 -0
  2. package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +299 -0
  3. package/{esm2015/lib/catalog/catalog-browser/catalog-browser-layer.component.js → esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs} +13 -19
  4. package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +244 -0
  5. package/{esm2015/lib/catalog/catalog-browser/catalog-browser.module.js → esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs} +17 -19
  6. package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +209 -0
  7. package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +79 -0
  8. package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +217 -0
  9. package/{esm2015/lib/catalog/catalog-library/catalog-library.module.js → esm2020/lib/catalog/catalog-library/catalog-library.module.mjs} +21 -23
  10. package/{esm2015/lib/catalog/catalog.module.js → esm2020/lib/catalog/catalog.module.mjs} +9 -11
  11. package/{esm2015/lib/catalog/index.js → esm2020/lib/catalog/index.mjs} +0 -0
  12. package/{esm2015/lib/catalog/shared/catalog.abstract.js → esm2020/lib/catalog/shared/catalog.abstract.mjs} +0 -0
  13. package/{esm2015/lib/catalog/shared/catalog.enum.js → esm2020/lib/catalog/shared/catalog.enum.mjs} +0 -0
  14. package/{esm2015/lib/catalog/shared/catalog.interface.js → esm2020/lib/catalog/shared/catalog.interface.mjs} +0 -0
  15. package/esm2020/lib/catalog/shared/catalog.service.mjs +606 -0
  16. package/{esm2015/lib/catalog/shared/index.js → esm2020/lib/catalog/shared/index.mjs} +0 -0
  17. package/{esm2015/lib/datasource/datasource.module.js → esm2020/lib/datasource/datasource.module.mjs} +2 -2
  18. package/{esm2015/lib/datasource/index.js → esm2020/lib/datasource/index.mjs} +0 -0
  19. package/esm2020/lib/datasource/shared/capabilities.service.mjs +426 -0
  20. package/{esm2015/lib/datasource/shared/datasource.service.js → esm2020/lib/datasource/shared/datasource.service.mjs} +0 -0
  21. package/{esm2015/lib/datasource/shared/datasources/any-datasource.interface.js → esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs} +0 -0
  22. package/{esm2015/lib/datasource/shared/datasources/any-datasource.js → esm2020/lib/datasource/shared/datasources/any-datasource.mjs} +0 -0
  23. package/{esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.interface.js → esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs} +0 -0
  24. package/{esm2015/lib/datasource/shared/datasources/arcgisrest-datasource.js → esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs} +0 -0
  25. package/{esm2015/lib/datasource/shared/datasources/carto-datasource.interface.js → esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs} +0 -0
  26. package/{esm2015/lib/datasource/shared/datasources/carto-datasource.js → esm2020/lib/datasource/shared/datasources/carto-datasource.mjs} +0 -0
  27. package/{esm2015/lib/datasource/shared/datasources/cluster-datasource.interface.js → esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs} +0 -0
  28. package/{esm2015/lib/datasource/shared/datasources/cluster-datasource.js → esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs} +0 -0
  29. package/{esm2015/lib/datasource/shared/datasources/data.service.js → esm2020/lib/datasource/shared/datasources/data.service.mjs} +0 -0
  30. package/{esm2015/lib/datasource/shared/datasources/datasource.interface.js → esm2020/lib/datasource/shared/datasources/datasource.interface.mjs} +0 -0
  31. package/{esm2015/lib/datasource/shared/datasources/datasource.js → esm2020/lib/datasource/shared/datasources/datasource.mjs} +0 -0
  32. package/{esm2015/lib/datasource/shared/datasources/feature-datasource.interface.js → esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs} +0 -0
  33. package/{esm2015/lib/datasource/shared/datasources/feature-datasource.js → esm2020/lib/datasource/shared/datasources/feature-datasource.mjs} +0 -0
  34. package/{esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.js → esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs} +0 -0
  35. package/{esm2015/lib/datasource/shared/datasources/imagearcgisrest-datasource.js → esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs} +0 -0
  36. package/{esm2015/lib/datasource/shared/datasources/index.js → esm2020/lib/datasource/shared/datasources/index.mjs} +0 -0
  37. package/{esm2015/lib/datasource/shared/datasources/mvt-datasource.interface.js → esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs} +0 -0
  38. package/{esm2015/lib/datasource/shared/datasources/mvt-datasource.js → esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs} +0 -0
  39. package/{esm2015/lib/datasource/shared/datasources/osm-datasource.interface.js → esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs} +0 -0
  40. package/{esm2015/lib/datasource/shared/datasources/osm-datasource.js → esm2020/lib/datasource/shared/datasources/osm-datasource.mjs} +0 -0
  41. package/{esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.js → esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs} +0 -0
  42. package/{esm2015/lib/datasource/shared/datasources/tilearcgisrest-datasource.js → esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs} +0 -0
  43. package/{esm2015/lib/datasource/shared/datasources/tiledebug-datasource.interface.js → esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs} +0 -0
  44. package/{esm2015/lib/datasource/shared/datasources/tiledebug-datasource.js → esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs} +0 -0
  45. package/{esm2015/lib/datasource/shared/datasources/websocket-datasource.interface.js → esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs} +0 -0
  46. package/{esm2015/lib/datasource/shared/datasources/websocket-datasource.js → esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs} +0 -0
  47. package/{esm2015/lib/datasource/shared/datasources/wfs-datasource.interface.js → esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs} +0 -0
  48. package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +74 -0
  49. package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +152 -0
  50. package/{esm2015/lib/datasource/shared/datasources/wms-datasource.interface.js → esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs} +0 -0
  51. package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +205 -0
  52. package/{esm2015/lib/datasource/shared/datasources/wms-wfs.utils.js → esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs} +4 -4
  53. package/{esm2015/lib/datasource/shared/datasources/wmts-datasource.interface.js → esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs} +0 -0
  54. package/{esm2015/lib/datasource/shared/datasources/wmts-datasource.js → esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs} +0 -0
  55. package/{esm2015/lib/datasource/shared/datasources/xyz-datasource.interface.js → esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs} +0 -0
  56. package/{esm2015/lib/datasource/shared/datasources/xyz-datasource.js → esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs} +0 -0
  57. package/{esm2015/lib/datasource/shared/index.js → esm2020/lib/datasource/shared/index.mjs} +0 -0
  58. package/{esm2015/lib/datasource/shared/options/index.js → esm2020/lib/datasource/shared/options/index.mjs} +0 -0
  59. package/{esm2015/lib/datasource/shared/options/options-api.interface.js → esm2020/lib/datasource/shared/options/options-api.interface.mjs} +0 -0
  60. package/{esm2015/lib/datasource/shared/options/options-api.providers.js → esm2020/lib/datasource/shared/options/options-api.providers.mjs} +0 -0
  61. package/{esm2015/lib/datasource/shared/options/options-api.service.js → esm2020/lib/datasource/shared/options/options-api.service.mjs} +0 -0
  62. package/{esm2015/lib/datasource/shared/options/options.service.js → esm2020/lib/datasource/shared/options/options.service.mjs} +0 -0
  63. package/{esm2015/lib/datasource/utils/esri-style-generator.js → esm2020/lib/datasource/utils/esri-style-generator.mjs} +0 -0
  64. package/{esm2015/lib/datasource/utils/index.js → esm2020/lib/datasource/utils/index.mjs} +0 -0
  65. package/{esm2015/lib/datasource/utils/tilegrid.js → esm2020/lib/datasource/utils/tilegrid.mjs} +0 -0
  66. package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +224 -0
  67. package/{esm2015/lib/directions/directions-buttons/index.js → esm2020/lib/directions/directions-buttons/index.mjs} +0 -0
  68. package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +290 -0
  69. package/{esm2015/lib/directions/directions-inputs/index.js → esm2020/lib/directions/directions-inputs/index.mjs} +0 -0
  70. package/esm2020/lib/directions/directions-results/directions-results.component.mjs +196 -0
  71. package/{esm2015/lib/directions/directions-results/index.js → esm2020/lib/directions/directions-results/index.mjs} +0 -0
  72. package/{esm2015/lib/directions/directions-sources/directions-source.interface.js → esm2020/lib/directions/directions-sources/directions-source.interface.mjs} +0 -0
  73. package/{esm2015/lib/directions/directions-sources/directions-source.js → esm2020/lib/directions/directions-sources/directions-source.mjs} +0 -0
  74. package/{esm2015/lib/directions/directions-sources/directions-source.provider.js → esm2020/lib/directions/directions-sources/directions-source.provider.mjs} +0 -0
  75. package/{esm2015/lib/directions/directions-sources/index.js → esm2020/lib/directions/directions-sources/index.mjs} +0 -0
  76. package/{esm2015/lib/directions/directions-sources/osrm-directions-source.js → esm2020/lib/directions/directions-sources/osrm-directions-source.mjs} +0 -0
  77. package/esm2020/lib/directions/directions.component.mjs +311 -0
  78. package/{esm2015/lib/directions/directions.module.js → esm2020/lib/directions/directions.module.mjs} +16 -18
  79. package/{esm2015/lib/directions/index.js → esm2020/lib/directions/index.mjs} +0 -0
  80. package/{esm2015/lib/directions/shared/directions-source.service.js → esm2020/lib/directions/shared/directions-source.service.mjs} +0 -0
  81. package/{esm2015/lib/directions/shared/directions.enum.js → esm2020/lib/directions/shared/directions.enum.mjs} +0 -0
  82. package/{esm2015/lib/directions/shared/directions.interface.js → esm2020/lib/directions/shared/directions.interface.mjs} +0 -0
  83. package/{esm2015/lib/directions/shared/directions.service.js → esm2020/lib/directions/shared/directions.service.mjs} +0 -0
  84. package/esm2020/lib/directions/shared/directions.utils.mjs +510 -0
  85. package/{esm2015/lib/directions/shared/index.js → esm2020/lib/directions/shared/index.mjs} +0 -0
  86. package/{esm2015/lib/directions/shared/store.js → esm2020/lib/directions/shared/store.mjs} +0 -0
  87. package/esm2020/lib/download/download-button/download-button.component.mjs +61 -0
  88. package/{esm2015/lib/download/download-button/index.js → esm2020/lib/download/download-button/index.mjs} +0 -0
  89. package/{esm2015/lib/download/download.module.js → esm2020/lib/download/download.module.mjs} +6 -8
  90. package/{esm2015/lib/download/index.js → esm2020/lib/download/index.mjs} +0 -0
  91. package/{esm2015/lib/download/shared/download.interface.js → esm2020/lib/download/shared/download.interface.mjs} +0 -0
  92. package/{esm2015/lib/download/shared/download.service.js → esm2020/lib/download/shared/download.service.mjs} +0 -0
  93. package/{esm2015/lib/download/shared/index.js → esm2020/lib/download/shared/index.mjs} +0 -0
  94. package/{esm2015/lib/draw/draw/draw-popup.component.js → esm2020/lib/draw/draw/draw-popup.component.mjs} +11 -19
  95. package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +48 -0
  96. package/esm2020/lib/draw/draw/draw.component.mjs +714 -0
  97. package/{esm2015/lib/draw/draw/draw.module.js → esm2020/lib/draw/draw/draw.module.mjs} +19 -21
  98. package/{esm2015/lib/draw/drawingTool.module.js → esm2020/lib/draw/drawingTool.module.mjs} +2 -2
  99. package/{esm2015/lib/draw/index.js → esm2020/lib/draw/index.mjs} +0 -0
  100. package/{esm2015/lib/draw/shared/draw-icon.service.js → esm2020/lib/draw/shared/draw-icon.service.mjs} +0 -0
  101. package/{esm2015/lib/draw/shared/draw-style.service.js → esm2020/lib/draw/shared/draw-style.service.mjs} +0 -0
  102. package/{esm2015/lib/draw/shared/draw.enum.js → esm2020/lib/draw/shared/draw.enum.mjs} +0 -0
  103. package/{esm2015/lib/draw/shared/draw.interface.js → esm2020/lib/draw/shared/draw.interface.mjs} +0 -0
  104. package/{esm2015/lib/draw/shared/draw.utils.js → esm2020/lib/draw/shared/draw.utils.mjs} +0 -0
  105. package/{esm2015/lib/draw/shared/index.js → esm2020/lib/draw/shared/index.mjs} +0 -0
  106. package/esm2020/lib/feature/feature-details/feature-details.component.mjs +377 -0
  107. package/{esm2015/lib/feature/feature-details/feature-details.directive.js → esm2020/lib/feature/feature-details/feature-details.directive.mjs} +0 -0
  108. package/{esm2015/lib/feature/feature-details/feature-details.module.js → esm2020/lib/feature/feature-details/feature-details.module.mjs} +6 -8
  109. package/{esm2015/lib/feature/feature-form/feature-form.component.js → esm2020/lib/feature/feature-form/feature-form.component.mjs} +3 -8
  110. package/{esm2015/lib/feature/feature-form/feature-form.module.js → esm2020/lib/feature/feature-form/feature-form.module.mjs} +3 -5
  111. package/{esm2015/lib/feature/feature.module.js → esm2020/lib/feature/feature.module.mjs} +2 -4
  112. package/{esm2015/lib/feature/index.js → esm2020/lib/feature/index.mjs} +0 -0
  113. package/{esm2015/lib/feature/shared/feature.enums.js → esm2020/lib/feature/shared/feature.enums.mjs} +0 -0
  114. package/{esm2015/lib/feature/shared/feature.interfaces.js → esm2020/lib/feature/shared/feature.interfaces.mjs} +0 -0
  115. package/{esm2015/lib/feature/shared/feature.utils.js → esm2020/lib/feature/shared/feature.utils.mjs} +0 -0
  116. package/{esm2015/lib/feature/shared/index.js → esm2020/lib/feature/shared/index.mjs} +0 -0
  117. package/{esm2015/lib/feature/shared/store.js → esm2020/lib/feature/shared/store.mjs} +0 -0
  118. package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +113 -0
  119. package/{esm2015/lib/feature/shared/strategies/in-map-resolution.js → esm2020/lib/feature/shared/strategies/in-map-resolution.mjs} +0 -0
  120. package/{esm2015/lib/feature/shared/strategies/index.js → esm2020/lib/feature/shared/strategies/index.mjs} +0 -0
  121. package/{esm2015/lib/feature/shared/strategies/loading-layer.js → esm2020/lib/feature/shared/strategies/loading-layer.mjs} +0 -0
  122. package/{esm2015/lib/feature/shared/strategies/loading.js → esm2020/lib/feature/shared/strategies/loading.mjs} +0 -0
  123. package/{esm2015/lib/feature/shared/strategies/selection.js → esm2020/lib/feature/shared/strategies/selection.mjs} +0 -0
  124. package/{esm2015/lib/feature/shared/strategies.utils.js → esm2020/lib/feature/shared/strategies.utils.mjs} +0 -0
  125. package/esm2020/lib/filter/filter.module.mjs +289 -0
  126. package/{esm2015/lib/filter/index.js → esm2020/lib/filter/index.mjs} +0 -0
  127. package/{esm2015/lib/filter/ogc-filter-button/index.js → esm2020/lib/filter/ogc-filter-button/index.mjs} +0 -0
  128. package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +140 -0
  129. package/{esm2015/lib/filter/ogc-filter-form/index.js → esm2020/lib/filter/ogc-filter-form/index.mjs} +0 -0
  130. package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +645 -0
  131. package/{esm2015/lib/filter/ogc-filter-selection/index.js → esm2020/lib/filter/ogc-filter-selection/index.mjs} +0 -0
  132. package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +1302 -0
  133. package/{esm2015/lib/filter/ogc-filter-time/index.js → esm2020/lib/filter/ogc-filter-time/index.mjs} +0 -0
  134. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +177 -0
  135. package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +871 -0
  136. package/{esm2015/lib/filter/ogc-filterable-form/index.js → esm2020/lib/filter/ogc-filterable-form/index.mjs} +0 -0
  137. package/{esm2015/lib/filter/ogc-filterable-form/ogc-filterable-form.component.js → esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs} +3 -6
  138. package/{esm2015/lib/filter/ogc-filterable-item/index.js → esm2020/lib/filter/ogc-filterable-item/index.mjs} +0 -0
  139. package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +302 -0
  140. package/{esm2015/lib/filter/ogc-filterable-list/index.js → esm2020/lib/filter/ogc-filterable-list/index.mjs} +0 -0
  141. package/{esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.js → esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs} +0 -0
  142. package/{esm2015/lib/filter/ogc-filterable-list/ogc-filterable-list.component.js → esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs} +2 -6
  143. package/{esm2015/lib/filter/shared/filterable-datasource.pipe.js → esm2020/lib/filter/shared/filterable-datasource.pipe.mjs} +0 -0
  144. package/{esm2015/lib/filter/shared/index.js → esm2020/lib/filter/shared/index.mjs} +0 -0
  145. package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +72 -0
  146. package/{esm2015/lib/filter/shared/ogc-filter.enum.js → esm2020/lib/filter/shared/ogc-filter.enum.mjs} +0 -0
  147. package/{esm2015/lib/filter/shared/ogc-filter.interface.js → esm2020/lib/filter/shared/ogc-filter.interface.mjs} +0 -0
  148. package/esm2020/lib/filter/shared/ogc-filter.mjs +692 -0
  149. package/{esm2015/lib/filter/shared/ogc-filter.service.js → esm2020/lib/filter/shared/ogc-filter.service.mjs} +0 -0
  150. package/{esm2015/lib/filter/shared/spatial-filter.enum.js → esm2020/lib/filter/shared/spatial-filter.enum.mjs} +0 -0
  151. package/{esm2015/lib/filter/shared/spatial-filter.interface.js → esm2020/lib/filter/shared/spatial-filter.interface.mjs} +0 -0
  152. package/{esm2015/lib/filter/shared/spatial-filter.service.js → esm2020/lib/filter/shared/spatial-filter.service.mjs} +0 -0
  153. package/{esm2015/lib/filter/shared/time-filter.enum.js → esm2020/lib/filter/shared/time-filter.enum.mjs} +0 -0
  154. package/{esm2015/lib/filter/shared/time-filter.interface.js → esm2020/lib/filter/shared/time-filter.interface.mjs} +0 -0
  155. package/{esm2015/lib/filter/shared/time-filter.service.js → esm2020/lib/filter/shared/time-filter.service.mjs} +0 -0
  156. package/{esm2015/lib/filter/spatial-filter/spatial-filter-item/index.js → esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs} +0 -0
  157. package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +1076 -0
  158. package/{esm2015/lib/filter/spatial-filter/spatial-filter-list/index.js → esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs} +0 -0
  159. package/{esm2015/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.js → esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs} +16 -32
  160. package/{esm2015/lib/filter/spatial-filter/spatial-filter-type/index.js → esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs} +0 -0
  161. package/{esm2015/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.js → esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs} +7 -20
  162. package/{esm2015/lib/filter/time-filter-button/index.js → esm2020/lib/filter/time-filter-button/index.mjs} +0 -0
  163. package/{esm2015/lib/filter/time-filter-button/time-filter-button.component.js → esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs} +3 -8
  164. package/{esm2015/lib/filter/time-filter-form/index.js → esm2020/lib/filter/time-filter-form/index.mjs} +0 -0
  165. package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +734 -0
  166. package/{esm2015/lib/filter/time-filter-item/index.js → esm2020/lib/filter/time-filter-item/index.mjs} +0 -0
  167. package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +119 -0
  168. package/{esm2015/lib/filter/time-filter-list/index.js → esm2020/lib/filter/time-filter-list/index.mjs} +0 -0
  169. package/{esm2015/lib/filter/time-filter-list/time-filter-list-binding.directive.js → esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs} +0 -0
  170. package/{esm2015/lib/filter/time-filter-list/time-filter-list.component.js → esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs} +2 -6
  171. package/{esm2015/lib/geo.module.js → esm2020/lib/geo.module.mjs} +2 -2
  172. package/{esm2015/lib/geometry/geometry-form-field/geometry-form-field-input.component.js → esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs} +2 -6
  173. package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +189 -0
  174. package/{esm2015/lib/geometry/geometry-form-field/geometry-form-field.module.js → esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs} +10 -12
  175. package/{esm2015/lib/geometry/geometry.module.js → esm2020/lib/geometry/geometry.module.mjs} +3 -5
  176. package/{esm2015/lib/geometry/index.js → esm2020/lib/geometry/index.mjs} +0 -0
  177. package/{esm2015/lib/geometry/shared/controls/draw.js → esm2020/lib/geometry/shared/controls/draw.mjs} +0 -0
  178. package/{esm2015/lib/geometry/shared/controls/index.js → esm2020/lib/geometry/shared/controls/index.mjs} +0 -0
  179. package/{esm2015/lib/geometry/shared/controls/modify.js → esm2020/lib/geometry/shared/controls/modify.mjs} +1 -1
  180. package/{esm2015/lib/geometry/shared/controls/slice.js → esm2020/lib/geometry/shared/controls/slice.mjs} +0 -0
  181. package/{esm2015/lib/geometry/shared/geometry.errors.js → esm2020/lib/geometry/shared/geometry.errors.mjs} +0 -0
  182. package/{esm2015/lib/geometry/shared/geometry.interfaces.js → esm2020/lib/geometry/shared/geometry.interfaces.mjs} +0 -0
  183. package/{esm2015/lib/geometry/shared/geometry.utils.js → esm2020/lib/geometry/shared/geometry.utils.mjs} +0 -0
  184. package/{esm2015/lib/geometry/shared/index.js → esm2020/lib/geometry/shared/index.mjs} +0 -0
  185. package/esm2020/lib/import-export/export-button/export-button.component.mjs +64 -0
  186. package/{esm2015/lib/import-export/export-button/index.js → esm2020/lib/import-export/export-button/index.mjs} +0 -0
  187. package/esm2020/lib/import-export/import-export/import-export.component.mjs +1190 -0
  188. package/{esm2015/lib/import-export/import-export/index.js → esm2020/lib/import-export/import-export/index.mjs} +0 -0
  189. package/{esm2015/lib/import-export/import-export.module.js → esm2020/lib/import-export/import-export.module.mjs} +19 -21
  190. package/{esm2015/lib/import-export/index.js → esm2020/lib/import-export/index.mjs} +0 -0
  191. package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +135 -0
  192. package/{esm2015/lib/import-export/shared/export.errors.js → esm2020/lib/import-export/shared/export.errors.mjs} +0 -0
  193. package/{esm2015/lib/import-export/shared/export.interface.js → esm2020/lib/import-export/shared/export.interface.mjs} +0 -0
  194. package/{esm2015/lib/import-export/shared/export.service.js → esm2020/lib/import-export/shared/export.service.mjs} +0 -0
  195. package/{esm2015/lib/import-export/shared/export.type.js → esm2020/lib/import-export/shared/export.type.mjs} +0 -0
  196. package/{esm2015/lib/import-export/shared/export.utils.js → esm2020/lib/import-export/shared/export.utils.mjs} +0 -0
  197. package/{esm2015/lib/import-export/shared/import.errors.js → esm2020/lib/import-export/shared/import.errors.mjs} +0 -0
  198. package/{esm2015/lib/import-export/shared/import.interface.js → esm2020/lib/import-export/shared/import.interface.mjs} +0 -0
  199. package/{esm2015/lib/import-export/shared/import.service.js → esm2020/lib/import-export/shared/import.service.mjs} +0 -0
  200. package/{esm2015/lib/import-export/shared/import.utils.js → esm2020/lib/import-export/shared/import.utils.mjs} +0 -0
  201. package/{esm2015/lib/import-export/shared/index.js → esm2020/lib/import-export/shared/index.mjs} +0 -0
  202. package/{esm2015/lib/import-export/style-list/index.js → esm2020/lib/import-export/style-list/index.mjs} +0 -0
  203. package/{esm2015/lib/import-export/style-list/style-list.interface.js → esm2020/lib/import-export/style-list/style-list.interface.mjs} +0 -0
  204. package/{esm2015/lib/import-export/style-list/style-list.module.js → esm2020/lib/import-export/style-list/style-list.module.mjs} +2 -2
  205. package/{esm2015/lib/import-export/style-list/style-list.provider.js → esm2020/lib/import-export/style-list/style-list.provider.mjs} +0 -0
  206. package/{esm2015/lib/import-export/style-list/style-list.service.js → esm2020/lib/import-export/style-list/style-list.service.mjs} +0 -0
  207. package/{esm2015/lib/layer/index.js → esm2020/lib/layer/index.mjs} +0 -0
  208. package/{esm2015/lib/layer/layer-item/index.js → esm2020/lib/layer/layer-item/index.mjs} +0 -0
  209. package/esm2020/lib/layer/layer-item/layer-item.component.mjs +300 -0
  210. package/{esm2015/lib/layer/layer-legend/index.js → esm2020/lib/layer/layer-legend/index.mjs} +0 -0
  211. package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +382 -0
  212. package/{esm2015/lib/layer/layer-legend-item/index.js → esm2020/lib/layer/layer-legend-item/index.mjs} +0 -0
  213. package/{esm2015/lib/layer/layer-legend-item/layer-legend-item.component.js → esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs} +4 -11
  214. package/{esm2015/lib/layer/layer-legend-list/index.js → esm2020/lib/layer/layer-legend-list/index.mjs} +0 -0
  215. package/{esm2015/lib/layer/layer-legend-list/layer-legend-list-binding.directive.js → esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs} +0 -0
  216. package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +195 -0
  217. package/{esm2015/lib/layer/layer-list/index.js → esm2020/lib/layer/layer-list/index.mjs} +0 -0
  218. package/{esm2015/lib/layer/layer-list/layer-list-binding.directive.js → esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs} +0 -0
  219. package/esm2020/lib/layer/layer-list/layer-list.component.mjs +1024 -0
  220. package/{esm2015/lib/layer/layer-list/layer-list.enum.js → esm2020/lib/layer/layer-list/layer-list.enum.mjs} +0 -0
  221. package/{esm2015/lib/layer/layer-list-tool/index.js → esm2020/lib/layer/layer-list-tool/index.mjs} +0 -0
  222. package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +165 -0
  223. package/{esm2015/lib/layer/layer-list-tool/layer-list-tool.enum.js → esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs} +0 -0
  224. package/{esm2015/lib/layer/layer-list-tool/layer-list-tool.interface.js → esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs} +0 -0
  225. package/{esm2015/lib/layer/layer-list-tool/layer-list-tool.service.js → esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs} +0 -0
  226. package/esm2020/lib/layer/layer.module.mjs +173 -0
  227. package/{esm2015/lib/layer/shared/clusterParam.js → esm2020/lib/layer/shared/clusterParam.mjs} +0 -0
  228. package/{esm2015/lib/layer/shared/index.js → esm2020/lib/layer/shared/index.mjs} +0 -0
  229. package/{esm2015/lib/layer/shared/layer.enums.js → esm2020/lib/layer/shared/layer.enums.mjs} +0 -0
  230. package/esm2020/lib/layer/shared/layer.service.mjs +186 -0
  231. package/{esm2015/lib/layer/shared/layers/any-layer.interface.js → esm2020/lib/layer/shared/layers/any-layer.interface.mjs} +0 -0
  232. package/{esm2015/lib/layer/shared/layers/any-layer.js → esm2020/lib/layer/shared/layers/any-layer.mjs} +0 -0
  233. package/{esm2015/lib/layer/shared/layers/image-layer.interface.js → esm2020/lib/layer/shared/layers/image-layer.interface.mjs} +0 -0
  234. package/{esm2015/lib/layer/shared/layers/image-layer.js → esm2020/lib/layer/shared/layers/image-layer.mjs} +0 -0
  235. package/{esm2015/lib/layer/shared/layers/index.js → esm2020/lib/layer/shared/layers/index.mjs} +0 -0
  236. package/{esm2015/lib/layer/shared/layers/layer.interface.js → esm2020/lib/layer/shared/layers/layer.interface.mjs} +0 -0
  237. package/esm2020/lib/layer/shared/layers/layer.mjs +170 -0
  238. package/{esm2015/lib/layer/shared/layers/tile-layer.interface.js → esm2020/lib/layer/shared/layers/tile-layer.interface.mjs} +0 -0
  239. package/{esm2015/lib/layer/shared/layers/tile-layer.js → esm2020/lib/layer/shared/layers/tile-layer.mjs} +0 -0
  240. package/{esm2015/lib/layer/shared/layers/vector-layer.interface.js → esm2020/lib/layer/shared/layers/vector-layer.interface.mjs} +0 -0
  241. package/esm2020/lib/layer/shared/layers/vector-layer.mjs +376 -0
  242. package/{esm2015/lib/layer/shared/layers/vectortile-layer.interface.js → esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs} +0 -0
  243. package/{esm2015/lib/layer/shared/layers/vectortile-layer.js → esm2020/lib/layer/shared/layers/vectortile-layer.mjs} +0 -0
  244. package/esm2020/lib/layer/shared/style.service.mjs +356 -0
  245. package/{esm2015/lib/layer/shared/vector-style.interface.js → esm2020/lib/layer/shared/vector-style.interface.mjs} +0 -0
  246. package/{esm2015/lib/layer/track-feature-button/index.js → esm2020/lib/layer/track-feature-button/index.mjs} +0 -0
  247. package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +59 -0
  248. package/{esm2015/lib/layer/utils/image-watcher.js → esm2020/lib/layer/utils/image-watcher.mjs} +0 -0
  249. package/{esm2015/lib/layer/utils/index.js → esm2020/lib/layer/utils/index.mjs} +0 -0
  250. package/esm2020/lib/layer/utils/layer.utils.mjs +10 -0
  251. package/esm2020/lib/layer/utils/layerSync-watcher.mjs +242 -0
  252. package/esm2020/lib/layer/utils/outputLegend.mjs +27 -0
  253. package/{esm2015/lib/layer/utils/tile-watcher.js → esm2020/lib/layer/utils/tile-watcher.mjs} +0 -0
  254. package/{esm2015/lib/layer/utils/vector-watcher.js → esm2020/lib/layer/utils/vector-watcher.mjs} +0 -0
  255. package/{esm2015/lib/map/baselayers-switcher/baselayers-switcher.animation.js → esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs} +0 -0
  256. package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +97 -0
  257. package/{esm2015/lib/map/baselayers-switcher/index.js → esm2020/lib/map/baselayers-switcher/index.mjs} +0 -0
  258. package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +133 -0
  259. package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +76 -0
  260. package/{esm2015/lib/map/geolocate-button/index.js → esm2020/lib/map/geolocate-button/index.mjs} +0 -0
  261. package/{esm2015/lib/map/home-extent-button/home-extent-button.component.js → esm2020/lib/map/home-extent-button/home-extent-button.component.mjs} +8 -14
  262. package/{esm2015/lib/map/home-extent-button/index.js → esm2020/lib/map/home-extent-button/index.mjs} +0 -0
  263. package/{esm2015/lib/map/index.js → esm2020/lib/map/index.mjs} +0 -0
  264. package/{esm2015/lib/map/info-section/index.js → esm2020/lib/map/info-section/index.mjs} +0 -0
  265. package/esm2020/lib/map/info-section/info-section.component.mjs +30 -0
  266. package/{esm2015/lib/map/map-browser/index.js → esm2020/lib/map/map-browser/index.mjs} +0 -0
  267. package/esm2020/lib/map/map-browser/map-browser.component.mjs +66 -0
  268. package/{esm2015/lib/map/map-center/index.js → esm2020/lib/map/map-center/index.mjs} +0 -0
  269. package/{esm2015/lib/map/map-center/map-center.component.js → esm2020/lib/map/map-center/map-center.component.mjs} +3 -8
  270. package/{esm2015/lib/map/map.module.js → esm2020/lib/map/map.module.mjs} +11 -13
  271. package/{esm2015/lib/map/menu-button/index.js → esm2020/lib/map/menu-button/index.mjs} +0 -0
  272. package/{esm2015/lib/map/menu-button/menu-button.component.js → esm2020/lib/map/menu-button/menu-button.component.mjs} +7 -11
  273. package/{esm2015/lib/map/offline-button/index.js → esm2020/lib/map/offline-button/index.mjs} +0 -0
  274. package/esm2020/lib/map/offline-button/offline-button.component.mjs +76 -0
  275. package/{esm2015/lib/map/rotation-button/index.js → esm2020/lib/map/rotation-button/index.mjs} +0 -0
  276. package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +91 -0
  277. package/{esm2015/lib/map/shared/controllers/controller.js → esm2020/lib/map/shared/controllers/controller.mjs} +0 -0
  278. package/esm2020/lib/map/shared/controllers/geolocation.mjs +308 -0
  279. package/{esm2015/lib/map/shared/controllers/index.js → esm2020/lib/map/shared/controllers/index.mjs} +0 -0
  280. package/{esm2015/lib/map/shared/controllers/view.js → esm2020/lib/map/shared/controllers/view.mjs} +0 -0
  281. package/esm2020/lib/map/shared/hover-feature.directive.mjs +506 -0
  282. package/{esm2015/lib/map/shared/index.js → esm2020/lib/map/shared/index.mjs} +0 -0
  283. package/{esm2015/lib/map/shared/map-pointer-position.directive.js → esm2020/lib/map/shared/map-pointer-position.directive.mjs} +0 -0
  284. package/{esm2015/lib/map/shared/map.enums.js → esm2020/lib/map/shared/map.enums.mjs} +0 -0
  285. package/{esm2015/lib/map/shared/map.interface.js → esm2020/lib/map/shared/map.interface.mjs} +0 -0
  286. package/esm2020/lib/map/shared/map.mjs +417 -0
  287. package/{esm2015/lib/map/shared/map.service.js → esm2020/lib/map/shared/map.service.mjs} +0 -0
  288. package/{esm2015/lib/map/shared/map.utils.js → esm2020/lib/map/shared/map.utils.mjs} +0 -0
  289. package/{esm2015/lib/map/shared/mapOffline.directive.js → esm2020/lib/map/shared/mapOffline.directive.mjs} +0 -0
  290. package/{esm2015/lib/map/shared/projection.interfaces.js → esm2020/lib/map/shared/projection.interfaces.mjs} +0 -0
  291. package/{esm2015/lib/map/shared/projection.service.js → esm2020/lib/map/shared/projection.service.mjs} +0 -0
  292. package/{esm2015/lib/map/shared/projection.utils.js → esm2020/lib/map/shared/projection.utils.mjs} +0 -0
  293. package/{esm2015/lib/map/swipe-control/index.js → esm2020/lib/map/swipe-control/index.mjs} +0 -0
  294. package/{esm2015/lib/map/swipe-control/swipe-control.component.js → esm2020/lib/map/swipe-control/swipe-control.component.mjs} +4 -10
  295. package/{esm2015/lib/map/utils/layer-watcher.js → esm2020/lib/map/utils/layer-watcher.mjs} +0 -0
  296. package/{esm2015/lib/map/wake-lock-button/index.js → esm2020/lib/map/wake-lock-button/index.mjs} +0 -0
  297. package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +114 -0
  298. package/{esm2015/lib/map/zoom-button/index.js → esm2020/lib/map/zoom-button/index.mjs} +0 -0
  299. package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +40 -0
  300. package/{esm2015/lib/measure/index.js → esm2020/lib/measure/index.mjs} +0 -0
  301. package/{esm2015/lib/measure/measure.module.js → esm2020/lib/measure/measure.module.mjs} +2 -2
  302. package/{esm2015/lib/measure/measurer/measure-format.pipe.js → esm2020/lib/measure/measurer/measure-format.pipe.mjs} +0 -0
  303. package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +180 -0
  304. package/{esm2015/lib/measure/measurer/measurer-item.component.js → esm2020/lib/measure/measurer/measurer-item.component.mjs} +12 -20
  305. package/esm2020/lib/measure/measurer/measurer.component.mjs +1042 -0
  306. package/esm2020/lib/measure/measurer/measurer.module.mjs +94 -0
  307. package/{esm2015/lib/measure/shared/index.js → esm2020/lib/measure/shared/index.mjs} +0 -0
  308. package/{esm2015/lib/measure/shared/measure.enum.js → esm2020/lib/measure/shared/measure.enum.mjs} +0 -0
  309. package/{esm2015/lib/measure/shared/measure.interfaces.js → esm2020/lib/measure/shared/measure.interfaces.mjs} +0 -0
  310. package/{esm2015/lib/measure/shared/measure.utils.js → esm2020/lib/measure/shared/measure.utils.mjs} +0 -0
  311. package/{esm2015/lib/metadata/index.js → esm2020/lib/metadata/index.mjs} +0 -0
  312. package/{esm2015/lib/metadata/metadata-button/index.js → esm2020/lib/metadata/metadata-button/index.mjs} +0 -0
  313. package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +134 -0
  314. package/{esm2015/lib/metadata/metadata.module.js → esm2020/lib/metadata/metadata.module.mjs} +7 -9
  315. package/{esm2015/lib/metadata/shared/index.js → esm2020/lib/metadata/shared/index.mjs} +0 -0
  316. package/{esm2015/lib/metadata/shared/metadata.interface.js → esm2020/lib/metadata/shared/metadata.interface.mjs} +0 -0
  317. package/{esm2015/lib/metadata/shared/metadata.service.js → esm2020/lib/metadata/shared/metadata.service.mjs} +0 -0
  318. package/{esm2015/lib/offline/geoDB/geoDB.enums.js → esm2020/lib/offline/geoDB/geoDB.enums.mjs} +0 -0
  319. package/{esm2015/lib/offline/geoDB/geoDB.interface.js → esm2020/lib/offline/geoDB/geoDB.interface.mjs} +0 -0
  320. package/{esm2015/lib/offline/geoDB/geoDB.service.js → esm2020/lib/offline/geoDB/geoDB.service.mjs} +0 -0
  321. package/{esm2015/lib/offline/geoDB/index.js → esm2020/lib/offline/geoDB/index.mjs} +0 -0
  322. package/{esm2015/lib/offline/index.js → esm2020/lib/offline/index.mjs} +0 -0
  323. package/{esm2015/lib/offline/shared/geo-network.service.js → esm2020/lib/offline/shared/geo-network.service.mjs} +0 -0
  324. package/{esm2015/lib/offline/shared/index.js → esm2020/lib/offline/shared/index.mjs} +0 -0
  325. package/{esm2015/lib/overlay/index.js → esm2020/lib/overlay/index.mjs} +0 -0
  326. package/{esm2015/lib/overlay/overlay.module.js → esm2020/lib/overlay/overlay.module.mjs} +2 -2
  327. package/{esm2015/lib/overlay/shared/index.js → esm2020/lib/overlay/shared/index.mjs} +0 -0
  328. package/{esm2015/lib/overlay/shared/overlay-marker-style.utils.js → esm2020/lib/overlay/shared/overlay-marker-style.utils.mjs} +0 -0
  329. package/{esm2015/lib/overlay/shared/overlay.directive.js → esm2020/lib/overlay/shared/overlay.directive.mjs} +0 -0
  330. package/{esm2015/lib/overlay/shared/overlay.enum.js → esm2020/lib/overlay/shared/overlay.enum.mjs} +0 -0
  331. package/{esm2015/lib/overlay/shared/overlay.js → esm2020/lib/overlay/shared/overlay.mjs} +0 -0
  332. package/{esm2015/lib/overlay/shared/overlay.service.js → esm2020/lib/overlay/shared/overlay.service.mjs} +0 -0
  333. package/{esm2015/lib/overlay/shared/overlay.utils.js → esm2020/lib/overlay/shared/overlay.utils.mjs} +0 -0
  334. package/{esm2015/lib/print/index.js → esm2020/lib/print/index.mjs} +0 -0
  335. package/{esm2015/lib/print/print/print.component.js → esm2020/lib/print/print/print.component.mjs} +3 -6
  336. package/{esm2015/lib/print/print-form/index.js → esm2020/lib/print/print-form/index.mjs} +0 -0
  337. package/esm2020/lib/print/print-form/print-form.component.mjs +405 -0
  338. package/{esm2015/lib/print/print.module.js → esm2020/lib/print/print.module.mjs} +13 -15
  339. package/{esm2015/lib/print/shared/index.js → esm2020/lib/print/shared/index.mjs} +0 -0
  340. package/{esm2015/lib/print/shared/print.interface.js → esm2020/lib/print/shared/print.interface.mjs} +0 -0
  341. package/esm2020/lib/print/shared/print.service.mjs +807 -0
  342. package/{esm2015/lib/print/shared/print.type.js → esm2020/lib/print/shared/print.type.mjs} +0 -0
  343. package/{esm2015/lib/query/index.js → esm2020/lib/query/index.mjs} +0 -0
  344. package/{esm2015/lib/query/query.module.js → esm2020/lib/query/query.module.mjs} +2 -2
  345. package/{esm2015/lib/query/shared/index.js → esm2020/lib/query/shared/index.mjs} +0 -0
  346. package/{esm2015/lib/query/shared/query-search-source.js → esm2020/lib/query/shared/query-search-source.mjs} +0 -0
  347. package/{esm2015/lib/query/shared/query-search-source.providers.js → esm2020/lib/query/shared/query-search-source.providers.mjs} +0 -0
  348. package/{esm2015/lib/query/shared/query.directive.js → esm2020/lib/query/shared/query.directive.mjs} +0 -0
  349. package/{esm2015/lib/query/shared/query.enums.js → esm2020/lib/query/shared/query.enums.mjs} +0 -0
  350. package/{esm2015/lib/query/shared/query.interfaces.js → esm2020/lib/query/shared/query.interfaces.mjs} +0 -0
  351. package/esm2020/lib/query/shared/query.service.mjs +613 -0
  352. package/{esm2015/lib/query/shared/query.utils.js → esm2020/lib/query/shared/query.utils.mjs} +0 -0
  353. package/{esm2015/lib/search/index.js → esm2020/lib/search/index.mjs} +0 -0
  354. package/esm2020/lib/search/search-bar/search-bar.component.mjs +489 -0
  355. package/{esm2015/lib/search/search-bar/search-bar.module.js → esm2020/lib/search/search-bar/search-bar.module.mjs} +13 -15
  356. package/{esm2015/lib/search/search-bar/search-url-param.directive.js → esm2020/lib/search/search-bar/search-url-param.directive.mjs} +0 -0
  357. package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +193 -0
  358. package/esm2020/lib/search/search-results/search-results-item.component.mjs +124 -0
  359. package/esm2020/lib/search/search-results/search-results.component.mjs +331 -0
  360. package/{esm2015/lib/search/search-results/search-results.module.js → esm2020/lib/search/search-results/search-results.module.mjs} +13 -15
  361. package/esm2020/lib/search/search-selector/search-selector.component.mjs +123 -0
  362. package/{esm2015/lib/search/search-selector/search-selector.module.js → esm2020/lib/search/search-selector/search-selector.module.mjs} +10 -12
  363. package/esm2020/lib/search/search-settings/search-settings.component.mjs +418 -0
  364. package/{esm2015/lib/search/search-settings/search-settings.module.js → esm2020/lib/search/search-settings/search-settings.module.mjs} +11 -13
  365. package/{esm2015/lib/search/search.module.js → esm2020/lib/search/search.module.mjs} +6 -8
  366. package/{esm2015/lib/search/shared/index.js → esm2020/lib/search/shared/index.mjs} +0 -0
  367. package/{esm2015/lib/search/shared/search-pointer-summary.directive.js → esm2020/lib/search/shared/search-pointer-summary.directive.mjs} +0 -0
  368. package/{esm2015/lib/search/shared/search-source-service.providers.js → esm2020/lib/search/shared/search-source-service.providers.mjs} +0 -0
  369. package/{esm2015/lib/search/shared/search-source.service.js → esm2020/lib/search/shared/search-source.service.mjs} +0 -0
  370. package/{esm2015/lib/search/shared/search.enums.js → esm2020/lib/search/shared/search.enums.mjs} +0 -0
  371. package/{esm2015/lib/search/shared/search.interfaces.js → esm2020/lib/search/shared/search.interfaces.mjs} +0 -0
  372. package/esm2020/lib/search/shared/search.service.mjs +118 -0
  373. package/{esm2015/lib/search/shared/search.utils.js → esm2020/lib/search/shared/search.utils.mjs} +0 -0
  374. package/{esm2015/lib/search/shared/sources/cadastre.js → esm2020/lib/search/shared/sources/cadastre.mjs} +1 -1
  375. package/{esm2015/lib/search/shared/sources/cadastre.providers.js → esm2020/lib/search/shared/sources/cadastre.providers.mjs} +0 -0
  376. package/{esm2015/lib/search/shared/sources/coordinates.interfaces.js → esm2020/lib/search/shared/sources/coordinates.interfaces.mjs} +0 -0
  377. package/{esm2015/lib/search/shared/sources/coordinates.js → esm2020/lib/search/shared/sources/coordinates.mjs} +0 -0
  378. package/{esm2015/lib/search/shared/sources/coordinates.providers.js → esm2020/lib/search/shared/sources/coordinates.providers.mjs} +0 -0
  379. package/{esm2015/lib/search/shared/sources/icherche.interfaces.js → esm2020/lib/search/shared/sources/icherche.interfaces.mjs} +0 -0
  380. package/esm2020/lib/search/shared/sources/icherche.mjs +755 -0
  381. package/{esm2015/lib/search/shared/sources/icherche.providers.js → esm2020/lib/search/shared/sources/icherche.providers.mjs} +0 -0
  382. package/{esm2015/lib/search/shared/sources/ilayer.interfaces.js → esm2020/lib/search/shared/sources/ilayer.interfaces.mjs} +0 -0
  383. package/{esm2015/lib/search/shared/sources/ilayer.js → esm2020/lib/search/shared/sources/ilayer.mjs} +0 -0
  384. package/{esm2015/lib/search/shared/sources/ilayer.providers.js → esm2020/lib/search/shared/sources/ilayer.providers.mjs} +0 -0
  385. package/{esm2015/lib/search/shared/sources/index.js → esm2020/lib/search/shared/sources/index.mjs} +0 -0
  386. package/{esm2015/lib/search/shared/sources/nominatim.interfaces.js → esm2020/lib/search/shared/sources/nominatim.interfaces.mjs} +0 -0
  387. package/{esm2015/lib/search/shared/sources/nominatim.js → esm2020/lib/search/shared/sources/nominatim.mjs} +0 -0
  388. package/{esm2015/lib/search/shared/sources/nominatim.providers.js → esm2020/lib/search/shared/sources/nominatim.providers.mjs} +0 -0
  389. package/{esm2015/lib/search/shared/sources/source.interfaces.js → esm2020/lib/search/shared/sources/source.interfaces.mjs} +0 -0
  390. package/{esm2015/lib/search/shared/sources/source.js → esm2020/lib/search/shared/sources/source.mjs} +0 -0
  391. package/{esm2015/lib/search/shared/sources/storedqueries.interfaces.js → esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs} +0 -0
  392. package/{esm2015/lib/search/shared/sources/storedqueries.js → esm2020/lib/search/shared/sources/storedqueries.mjs} +1 -1
  393. package/{esm2015/lib/search/shared/sources/storedqueries.providers.js → esm2020/lib/search/shared/sources/storedqueries.providers.mjs} +0 -0
  394. package/{esm2015/lib/toast/index.js → esm2020/lib/toast/index.mjs} +0 -0
  395. package/esm2020/lib/toast/toast.component.mjs +113 -0
  396. package/{esm2015/lib/toast/toast.module.js → esm2020/lib/toast/toast.module.mjs} +7 -9
  397. package/{esm2015/lib/utils/commonVectorStyle.interface.js → esm2020/lib/utils/commonVectorStyle.interface.mjs} +0 -0
  398. package/{esm2015/lib/utils/commonVectorStyle.js → esm2020/lib/utils/commonVectorStyle.mjs} +0 -0
  399. package/{esm2015/lib/utils/googleLinks.js → esm2020/lib/utils/googleLinks.mjs} +0 -0
  400. package/{esm2015/lib/utils/id-generator.js → esm2020/lib/utils/id-generator.mjs} +0 -0
  401. package/{esm2015/lib/utils/index.js → esm2020/lib/utils/index.mjs} +0 -0
  402. package/{esm2015/lib/utils/osmLinks.js → esm2020/lib/utils/osmLinks.mjs} +0 -0
  403. package/{esm2015/lib/wkt/index.js → esm2020/lib/wkt/index.mjs} +0 -0
  404. package/{esm2015/lib/wkt/shared/index.js → esm2020/lib/wkt/shared/index.mjs} +0 -0
  405. package/{esm2015/lib/wkt/shared/wkt.service.js → esm2020/lib/wkt/shared/wkt.service.mjs} +0 -0
  406. package/{esm2015/lib/wkt/wkt.module.js → esm2020/lib/wkt/wkt.module.mjs} +2 -2
  407. package/{esm2015/lib/workspace/confirmation-popup/confirmation-popup.component.js → esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs} +7 -15
  408. package/{esm2015/lib/workspace/confirmation-popup/confirmation-popup.module.js → esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs} +5 -7
  409. package/{esm2015/lib/workspace/confirmation-popup/index.js → esm2020/lib/workspace/confirmation-popup/index.mjs} +0 -0
  410. package/{esm2015/lib/workspace/index.js → esm2020/lib/workspace/index.mjs} +0 -0
  411. package/{esm2015/lib/workspace/shared/edition-workspace.js → esm2020/lib/workspace/shared/edition-workspace.mjs} +2 -3
  412. package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +642 -0
  413. package/esm2020/lib/workspace/shared/feature-workspace.mjs +35 -0
  414. package/{esm2015/lib/workspace/shared/wfs-workspace.service.js → esm2020/lib/workspace/shared/feature-workspace.service.mjs} +8 -9
  415. package/{esm2015/lib/workspace/shared/index.js → esm2020/lib/workspace/shared/index.mjs} +0 -0
  416. package/esm2020/lib/workspace/shared/wfs-workspace.mjs +35 -0
  417. package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +150 -0
  418. package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +261 -0
  419. package/{esm2015/lib/workspace/shared/workspace.utils.js → esm2020/lib/workspace/shared/workspace.utils.mjs} +0 -0
  420. package/{esm2015/lib/workspace/widgets/index.js → esm2020/lib/workspace/widgets/index.mjs} +0 -0
  421. package/{esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.component.js → esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs} +3 -8
  422. package/{esm2015/lib/workspace/widgets/ogc-filter/ogc-filter.module.js → esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs} +5 -7
  423. package/{esm2015/lib/workspace/widgets/widgets.js → esm2020/lib/workspace/widgets/widgets.mjs} +0 -0
  424. package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +133 -0
  425. package/{esm2015/lib/workspace/workspace-selector/workspace-selector.module.js → esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs} +2 -4
  426. package/{esm2015/lib/workspace/workspace-updator/workspace-updator.directive.js → esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs} +8 -11
  427. package/{esm2015/lib/workspace/workspace-updator/workspace-updator.module.js → esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs} +2 -4
  428. package/{esm2015/lib/workspace/workspace.module.js → esm2020/lib/workspace/workspace.module.mjs} +8 -10
  429. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  430. package/fesm2015/igo2-geo.mjs +42904 -0
  431. package/fesm2015/igo2-geo.mjs.map +1 -0
  432. package/{fesm2015/igo2-geo.js → fesm2020/igo2-geo.mjs} +1635 -2527
  433. package/fesm2020/igo2-geo.mjs.map +1 -0
  434. package/{igo2-geo.d.ts → index.d.ts} +0 -0
  435. package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +1 -1
  436. package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +1 -1
  437. package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +1 -1
  438. package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +1 -1
  439. package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +1 -1
  440. package/lib/catalog/catalog-library/catalog-library.component.d.ts +1 -1
  441. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +1 -1
  442. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +1 -1
  443. package/lib/directions/directions-results/directions-results.component.d.ts +1 -1
  444. package/lib/directions/directions.component.d.ts +1 -1
  445. package/lib/download/download-button/download-button.component.d.ts +1 -1
  446. package/lib/draw/draw/draw-popup.component.d.ts +1 -1
  447. package/lib/draw/draw/draw-shorcuts.component.d.ts +1 -1
  448. package/lib/draw/draw/draw.component.d.ts +1 -1
  449. package/lib/feature/feature-details/feature-details.component.d.ts +1 -1
  450. package/lib/feature/feature-details/feature-details.directive.d.ts +1 -1
  451. package/lib/feature/feature-form/feature-form.component.d.ts +1 -1
  452. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +1 -1
  453. package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +1 -1
  454. package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +1 -1
  455. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +1 -1
  456. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +5 -5
  457. package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +1 -1
  458. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +1 -1
  459. package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +1 -1
  460. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +1 -1
  461. package/lib/filter/shared/filterable-datasource.pipe.d.ts +1 -1
  462. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +4 -4
  463. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +3 -3
  464. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +2 -2
  465. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +1 -1
  466. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +1 -1
  467. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +1 -1
  468. package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +1 -1
  469. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +1 -1
  470. package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +1 -1
  471. package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +1 -1
  472. package/lib/import-export/export-button/export-button.component.d.ts +1 -1
  473. package/lib/import-export/import-export/import-export.component.d.ts +1 -1
  474. package/lib/import-export/shared/drop-geo-file.directive.d.ts +1 -1
  475. package/lib/layer/layer-item/layer-item.component.d.ts +1 -1
  476. package/lib/layer/layer-legend/layer-legend.component.d.ts +1 -1
  477. package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +1 -1
  478. package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +1 -1
  479. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +1 -1
  480. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +1 -1
  481. package/lib/layer/layer-list/layer-list.component.d.ts +1 -1
  482. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +1 -1
  483. package/lib/layer/track-feature-button/track-feature-button.component.d.ts +1 -1
  484. package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +1 -1
  485. package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +1 -1
  486. package/lib/map/geolocate-button/geolocate-button.component.d.ts +1 -1
  487. package/lib/map/home-extent-button/home-extent-button.component.d.ts +1 -1
  488. package/lib/map/info-section/info-section.component.d.ts +1 -1
  489. package/lib/map/map-browser/map-browser.component.d.ts +1 -1
  490. package/lib/map/map-center/map-center.component.d.ts +1 -1
  491. package/lib/map/menu-button/menu-button.component.d.ts +1 -1
  492. package/lib/map/offline-button/offline-button.component.d.ts +1 -1
  493. package/lib/map/rotation-button/rotation-button.component.d.ts +1 -1
  494. package/lib/map/shared/controllers/geolocation.d.ts +3 -2
  495. package/lib/map/shared/hover-feature.directive.d.ts +1 -1
  496. package/lib/map/shared/map-pointer-position.directive.d.ts +1 -1
  497. package/lib/map/shared/map.d.ts +3 -2
  498. package/lib/map/shared/mapOffline.directive.d.ts +1 -1
  499. package/lib/map/swipe-control/swipe-control.component.d.ts +1 -1
  500. package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +1 -1
  501. package/lib/map/zoom-button/zoom-button.component.d.ts +1 -1
  502. package/lib/measure/measurer/measure-format.pipe.d.ts +1 -1
  503. package/lib/measure/measurer/measurer-dialog.component.d.ts +1 -1
  504. package/lib/measure/measurer/measurer-item.component.d.ts +1 -1
  505. package/lib/measure/measurer/measurer.component.d.ts +1 -1
  506. package/lib/metadata/metadata-button/metadata-button.component.d.ts +2 -2
  507. package/lib/overlay/shared/overlay.directive.d.ts +1 -1
  508. package/lib/print/print/print.component.d.ts +1 -1
  509. package/lib/print/print-form/print-form.component.d.ts +14 -14
  510. package/lib/print/shared/print.service.d.ts +6 -1
  511. package/lib/query/shared/query.directive.d.ts +1 -1
  512. package/lib/search/search-bar/search-bar.component.d.ts +1 -1
  513. package/lib/search/search-bar/search-url-param.directive.d.ts +1 -1
  514. package/lib/search/search-results/search-results-add-button.component.d.ts +1 -1
  515. package/lib/search/search-results/search-results-item.component.d.ts +1 -1
  516. package/lib/search/search-results/search-results.component.d.ts +1 -1
  517. package/lib/search/search-selector/search-selector.component.d.ts +1 -1
  518. package/lib/search/search-settings/search-settings.component.d.ts +1 -1
  519. package/lib/search/shared/search-pointer-summary.directive.d.ts +1 -1
  520. package/lib/toast/toast.component.d.ts +1 -1
  521. package/lib/wkt/shared/wkt.service.d.ts +1 -1
  522. package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +1 -1
  523. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +1 -1
  524. package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +1 -1
  525. package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +1 -1
  526. package/package.json +31 -18
  527. package/bundles/igo2-geo.umd.js +0 -47612
  528. package/bundles/igo2-geo.umd.js.map +0 -1
  529. package/esm2015/lib/catalog/catalog-browser/catalog-browser-group.component.js +0 -305
  530. package/esm2015/lib/catalog/catalog-browser/catalog-browser.component.js +0 -248
  531. package/esm2015/lib/catalog/catalog-library/add-catalog-dialog.component.js +0 -235
  532. package/esm2015/lib/catalog/catalog-library/catalog-library-item.component.js +0 -85
  533. package/esm2015/lib/catalog/catalog-library/catalog-library.component.js +0 -224
  534. package/esm2015/lib/catalog/shared/catalog.service.js +0 -606
  535. package/esm2015/lib/datasource/shared/capabilities.service.js +0 -427
  536. package/esm2015/lib/datasource/shared/datasources/wfs-datasource.js +0 -74
  537. package/esm2015/lib/datasource/shared/datasources/wfs.service.js +0 -153
  538. package/esm2015/lib/datasource/shared/datasources/wms-datasource.js +0 -205
  539. package/esm2015/lib/directions/directions-buttons/directions-buttons.component.js +0 -229
  540. package/esm2015/lib/directions/directions-inputs/directions-inputs.component.js +0 -300
  541. package/esm2015/lib/directions/directions-results/directions-results.component.js +0 -204
  542. package/esm2015/lib/directions/directions.component.js +0 -316
  543. package/esm2015/lib/directions/shared/directions.utils.js +0 -510
  544. package/esm2015/lib/download/download-button/download-button.component.js +0 -66
  545. package/esm2015/lib/draw/draw/draw-shorcuts.component.js +0 -64
  546. package/esm2015/lib/draw/draw/draw.component.js +0 -745
  547. package/esm2015/lib/feature/feature-details/feature-details.component.js +0 -393
  548. package/esm2015/lib/feature/shared/strategies/in-map-extent.js +0 -114
  549. package/esm2015/lib/filter/filter.module.js +0 -290
  550. package/esm2015/lib/filter/ogc-filter-button/ogc-filter-button.component.js +0 -161
  551. package/esm2015/lib/filter/ogc-filter-form/ogc-filter-form.component.js +0 -657
  552. package/esm2015/lib/filter/ogc-filter-selection/ogc-filter-selection.component.js +0 -1355
  553. package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.js +0 -185
  554. package/esm2015/lib/filter/ogc-filter-time/ogc-filter-time.component.js +0 -898
  555. package/esm2015/lib/filter/ogc-filterable-item/ogc-filterable-item.component.js +0 -307
  556. package/esm2015/lib/filter/shared/ogc-filter-time.service.js +0 -73
  557. package/esm2015/lib/filter/shared/ogc-filter.js +0 -693
  558. package/esm2015/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.js +0 -1108
  559. package/esm2015/lib/filter/time-filter-form/time-filter-form.component.js +0 -772
  560. package/esm2015/lib/filter/time-filter-item/time-filter-item.component.js +0 -126
  561. package/esm2015/lib/geometry/geometry-form-field/geometry-form-field.component.js +0 -199
  562. package/esm2015/lib/import-export/export-button/export-button.component.js +0 -70
  563. package/esm2015/lib/import-export/import-export/import-export.component.js +0 -1238
  564. package/esm2015/lib/import-export/shared/drop-geo-file.directive.js +0 -136
  565. package/esm2015/lib/layer/layer-item/layer-item.component.js +0 -305
  566. package/esm2015/lib/layer/layer-legend/layer-legend.component.js +0 -395
  567. package/esm2015/lib/layer/layer-legend-list/layer-legend-list.component.js +0 -200
  568. package/esm2015/lib/layer/layer-list/layer-list.component.js +0 -1043
  569. package/esm2015/lib/layer/layer-list-tool/layer-list-tool.component.js +0 -176
  570. package/esm2015/lib/layer/layer.module.js +0 -174
  571. package/esm2015/lib/layer/shared/layer.service.js +0 -186
  572. package/esm2015/lib/layer/shared/layers/layer.js +0 -169
  573. package/esm2015/lib/layer/shared/layers/vector-layer.js +0 -376
  574. package/esm2015/lib/layer/shared/style.service.js +0 -358
  575. package/esm2015/lib/layer/track-feature-button/track-feature-button.component.js +0 -64
  576. package/esm2015/lib/layer/utils/layer.utils.js +0 -11
  577. package/esm2015/lib/layer/utils/layerSync-watcher.js +0 -249
  578. package/esm2015/lib/layer/utils/outputLegend.js +0 -27
  579. package/esm2015/lib/map/baselayers-switcher/baselayers-switcher.component.js +0 -105
  580. package/esm2015/lib/map/baselayers-switcher/mini-basemap.component.js +0 -137
  581. package/esm2015/lib/map/geolocate-button/geolocate-button.component.js +0 -82
  582. package/esm2015/lib/map/info-section/info-section.component.js +0 -36
  583. package/esm2015/lib/map/map-browser/map-browser.component.js +0 -70
  584. package/esm2015/lib/map/offline-button/offline-button.component.js +0 -84
  585. package/esm2015/lib/map/rotation-button/rotation-button.component.js +0 -97
  586. package/esm2015/lib/map/shared/controllers/geolocation.js +0 -295
  587. package/esm2015/lib/map/shared/hover-feature.directive.js +0 -509
  588. package/esm2015/lib/map/shared/map.js +0 -417
  589. package/esm2015/lib/map/wake-lock-button/wake-lock-button.component.js +0 -122
  590. package/esm2015/lib/map/zoom-button/zoom-button.component.js +0 -46
  591. package/esm2015/lib/measure/measurer/measurer-dialog.component.js +0 -220
  592. package/esm2015/lib/measure/measurer/measurer.component.js +0 -1053
  593. package/esm2015/lib/measure/measurer/measurer.module.js +0 -96
  594. package/esm2015/lib/metadata/metadata-button/metadata-button.component.js +0 -135
  595. package/esm2015/lib/print/print-form/print-form.component.js +0 -447
  596. package/esm2015/lib/print/shared/print.service.js +0 -820
  597. package/esm2015/lib/query/shared/query.service.js +0 -619
  598. package/esm2015/lib/search/search-bar/search-bar.component.js +0 -496
  599. package/esm2015/lib/search/search-results/search-results-add-button.component.js +0 -198
  600. package/esm2015/lib/search/search-results/search-results-item.component.js +0 -129
  601. package/esm2015/lib/search/search-results/search-results.component.js +0 -337
  602. package/esm2015/lib/search/search-selector/search-selector.component.js +0 -132
  603. package/esm2015/lib/search/search-settings/search-settings.component.js +0 -435
  604. package/esm2015/lib/search/shared/search.service.js +0 -118
  605. package/esm2015/lib/search/shared/sources/icherche.js +0 -756
  606. package/esm2015/lib/toast/toast.component.js +0 -119
  607. package/esm2015/lib/workspace/shared/edition-workspace.service.js +0 -646
  608. package/esm2015/lib/workspace/shared/feature-workspace.js +0 -37
  609. package/esm2015/lib/workspace/shared/feature-workspace.service.js +0 -151
  610. package/esm2015/lib/workspace/shared/wfs-workspace.js +0 -37
  611. package/esm2015/lib/workspace/shared/wms-workspace.service.js +0 -263
  612. package/esm2015/lib/workspace/workspace-selector/workspace-selector.directive.js +0 -135
  613. package/fesm2015/igo2-geo.js.map +0 -1
@@ -0,0 +1,261 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { ActionStore, EntityStoreFilterCustomFuncStrategy, EntityStoreFilterSelectionStrategy, EntityTableColumnRenderer } from '@igo2/common';
4
+ import { skipWhile, take } from 'rxjs/operators';
5
+ import { FeatureDataSource } from '../../datasource/shared/datasources/feature-datasource';
6
+ import { FeatureMotion, FeatureStore, FeatureStoreInMapExtentStrategy, FeatureStoreInMapResolutionStrategy, FeatureStoreLoadingLayerStrategy, FeatureStoreSelectionStrategy } from '../../feature';
7
+ import { LinkedProperties, VectorLayer } from '../../layer';
8
+ import { WfsWorkspace } from './wfs-workspace';
9
+ import { getCommonVectorSelectedStyle } from '../../utils';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "../../layer";
12
+ import * as i2 from "@igo2/core";
13
+ import * as i3 from "../../layer/shared/style.service";
14
+ export class WmsWorkspaceService {
15
+ constructor(layerService, storageService, styleService, configService) {
16
+ this.layerService = layerService;
17
+ this.storageService = storageService;
18
+ this.styleService = styleService;
19
+ this.configService = configService;
20
+ this.ws$ = new BehaviorSubject(undefined);
21
+ }
22
+ get zoomAuto() {
23
+ return this.storageService.get('zoomAuto');
24
+ }
25
+ createWorkspace(layer, map) {
26
+ if (!layer.options.workspace ||
27
+ map.layers.find(lay => lay.id === layer.id + '.WfsWorkspaceTableDest') ||
28
+ layer.dataSource.options.edition) {
29
+ return;
30
+ }
31
+ const dataSource = layer.dataSource;
32
+ const wmsLinkId = layer.id + '.WmsWorkspaceTableSrc';
33
+ const wfsLinkId = layer.id + '.WfsWorkspaceTableDest';
34
+ if (!layer.options.linkedLayers) {
35
+ layer.options.linkedLayers = { linkId: wmsLinkId, links: [] };
36
+ }
37
+ const linkProperties = {
38
+ bidirectionnal: true,
39
+ syncedDelete: true,
40
+ linkedIds: [wfsLinkId],
41
+ properties: [
42
+ LinkedProperties.ZINDEX,
43
+ LinkedProperties.VISIBLE
44
+ ]
45
+ };
46
+ if (!layer.options.workspace?.minResolution) {
47
+ linkProperties.properties.push(LinkedProperties.MINRESOLUTION);
48
+ }
49
+ let hasOgcFilters = false;
50
+ if (dataSource.options.ogcFilters?.enabled) {
51
+ linkProperties.properties.push(LinkedProperties.OGCFILTERS);
52
+ hasOgcFilters = true;
53
+ }
54
+ if (!layer.options.workspace?.maxResolution) {
55
+ linkProperties.properties.push(LinkedProperties.MAXRESOLUTION);
56
+ }
57
+ let clonedLinks = [];
58
+ if (layer.options.linkedLayers.links) {
59
+ clonedLinks = JSON.parse(JSON.stringify(layer.options.linkedLayers.links));
60
+ }
61
+ clonedLinks.push(linkProperties);
62
+ layer.options.linkedLayers.linkId = layer.options.linkedLayers.linkId ? layer.options.linkedLayers.linkId : wmsLinkId,
63
+ layer.options.linkedLayers.links = clonedLinks;
64
+ let wks;
65
+ let wksLayerOption = {
66
+ srcId: layer.id,
67
+ workspaceId: undefined,
68
+ enabled: false,
69
+ queryOptions: {
70
+ mapQueryOnOpenTab: layer.options.workspace?.queryOptions?.mapQueryOnOpenTab,
71
+ tabQuery: layer.options.workspace?.queryOptions?.tabQuery
72
+ },
73
+ pageSize: layer.options.workspace?.pageSize,
74
+ pageSizeOptions: layer.options.workspace?.pageSizeOptions
75
+ };
76
+ this.layerService
77
+ .createAsyncLayer({
78
+ isIgoInternalLayer: true,
79
+ id: wfsLinkId,
80
+ linkedLayers: {
81
+ linkId: wfsLinkId
82
+ },
83
+ workspace: wksLayerOption,
84
+ showInLayerList: false,
85
+ opacity: 0,
86
+ title: layer.title,
87
+ minResolution: layer.options.workspace?.minResolution || layer.minResolution || 0,
88
+ maxResolution: layer.options.workspace?.maxResolution || layer.maxResolution || Infinity,
89
+ style: this.styleService.createStyle({
90
+ fill: {
91
+ "color": "rgba(255, 255, 255, 0.01)"
92
+ },
93
+ stroke: {
94
+ "color": "rgba(255, 255, 255, 0.01)"
95
+ },
96
+ circle: {
97
+ fill: {
98
+ color: "rgba(255, 255, 255, 0.01)"
99
+ },
100
+ stroke: {
101
+ color: "rgba(255, 255, 255, 0.01)"
102
+ },
103
+ radius: 5
104
+ }
105
+ }),
106
+ sourceOptions: {
107
+ download: dataSource.options.download,
108
+ type: 'wfs',
109
+ url: dataSource.options.urlWfs || dataSource.options.url,
110
+ queryable: true,
111
+ relations: dataSource.options.relations,
112
+ queryTitle: dataSource.options.queryTitle,
113
+ queryFormatAsWms: layer.options.workspace?.enabled ? dataSource.options.queryFormatAsWms : true,
114
+ params: dataSource.options.paramsWFS,
115
+ ogcFilters: Object.assign({}, dataSource.ogcFilters$.value, { enabled: hasOgcFilters }),
116
+ sourceFields: dataSource.options.sourceFields || undefined
117
+ }
118
+ })
119
+ .subscribe((workspaceLayer) => {
120
+ map.addLayer(workspaceLayer);
121
+ layer.ol.setProperties({ linkedLayers: { linkId: layer.options.linkedLayers.linkId, links: clonedLinks } }, false);
122
+ workspaceLayer.dataSource.ol.refresh();
123
+ if (!layer.options.workspace?.enabled) {
124
+ return;
125
+ }
126
+ wks = new WfsWorkspace({
127
+ id: layer.id,
128
+ title: layer.title,
129
+ layer: workspaceLayer,
130
+ map,
131
+ entityStore: this.createFeatureStore(workspaceLayer, map),
132
+ actionStore: new ActionStore([]),
133
+ meta: {
134
+ tableTemplate: undefined
135
+ }
136
+ });
137
+ this.createTableTemplate(wks, workspaceLayer);
138
+ workspaceLayer.options.workspace.workspaceId = workspaceLayer.id;
139
+ layer.options.workspace = Object.assign({}, layer.options.workspace, {
140
+ enabled: true,
141
+ srcId: layer.id,
142
+ workspaceId: workspaceLayer.id,
143
+ queryOptions: {
144
+ mapQueryOnOpenTab: layer.options.workspace?.queryOptions?.mapQueryOnOpenTab,
145
+ tabQuery: layer.options.workspace?.queryOptions?.tabQuery
146
+ },
147
+ pageSize: layer.options.workspace?.pageSize,
148
+ pageSizeOptions: layer.options.workspace?.pageSizeOptions
149
+ });
150
+ delete dataSource.options.download;
151
+ return wks;
152
+ });
153
+ return wks;
154
+ }
155
+ createFeatureStore(layer, map) {
156
+ const store = new FeatureStore([], { map });
157
+ store.bindLayer(layer);
158
+ const loadingStrategy = new FeatureStoreLoadingLayerStrategy({});
159
+ const inMapExtentStrategy = new FeatureStoreInMapExtentStrategy({});
160
+ const inMapResolutionStrategy = new FeatureStoreInMapResolutionStrategy({});
161
+ const selectedRecordStrategy = new EntityStoreFilterSelectionStrategy({});
162
+ const confQueryOverlayStyle = this.configService.getConfig('queryOverlayStyle');
163
+ const selectionStrategy = new FeatureStoreSelectionStrategy({
164
+ layer: new VectorLayer({
165
+ zIndex: 300,
166
+ source: new FeatureDataSource(),
167
+ style: (feature) => {
168
+ return getCommonVectorSelectedStyle(Object.assign({}, { feature }, confQueryOverlayStyle.selection || {}));
169
+ },
170
+ showInLayerList: false,
171
+ exportable: false,
172
+ browsable: false
173
+ }),
174
+ map,
175
+ hitTolerance: 15,
176
+ motion: this.zoomAuto ? FeatureMotion.Default : FeatureMotion.None,
177
+ many: true,
178
+ dragBox: true
179
+ });
180
+ store.addStrategy(loadingStrategy, true);
181
+ store.addStrategy(inMapExtentStrategy, true);
182
+ store.addStrategy(inMapResolutionStrategy, true);
183
+ store.addStrategy(selectionStrategy, true);
184
+ store.addStrategy(selectedRecordStrategy, false);
185
+ store.addStrategy(this.createFilterInMapExtentOrResolutionStrategy(), true);
186
+ return store;
187
+ }
188
+ createTableTemplate(workspace, layer) {
189
+ const fields = layer.dataSource.options.sourceFields || [];
190
+ const relations = layer.dataSource.options.relations || [];
191
+ if (fields.length === 0) {
192
+ workspace.entityStore.entities$.pipe(skipWhile(val => val.length === 0), take(1)).subscribe(entities => {
193
+ const ol = entities[0].ol;
194
+ const columnsFromFeatures = ol.getKeys()
195
+ .filter(col => !col.startsWith('_') &&
196
+ col !== 'geometry' &&
197
+ col !== ol.getGeometryName() &&
198
+ !col.match(/boundedby/gi))
199
+ .map(key => {
200
+ return {
201
+ name: `properties.${key}`,
202
+ title: key,
203
+ renderer: EntityTableColumnRenderer.UnsanitizedHTML
204
+ };
205
+ });
206
+ workspace.meta.tableTemplate = {
207
+ selection: true,
208
+ sort: true,
209
+ columns: columnsFromFeatures
210
+ };
211
+ });
212
+ return;
213
+ }
214
+ const columns = fields.map((field) => {
215
+ return {
216
+ name: `properties.${field.name}`,
217
+ title: field.alias ? field.alias : field.name,
218
+ renderer: EntityTableColumnRenderer.UnsanitizedHTML,
219
+ tooltip: field.tooltip
220
+ };
221
+ });
222
+ const relationsColumn = relations.map((relation) => {
223
+ return {
224
+ name: `properties.${relation.name}`,
225
+ title: relation.alias ? relation.alias : relation.name,
226
+ renderer: EntityTableColumnRenderer.Icon,
227
+ icon: relation.icon,
228
+ parent: relation.parent,
229
+ type: 'relation',
230
+ tooltip: relation.tooltip,
231
+ onClick: () => {
232
+ this.ws$.next(relation.title);
233
+ },
234
+ cellClassFunc: () => {
235
+ return { 'class_icon': true };
236
+ }
237
+ };
238
+ });
239
+ columns.push(...relationsColumn);
240
+ workspace.meta.tableTemplate = {
241
+ selection: true,
242
+ sort: true,
243
+ columns
244
+ };
245
+ }
246
+ createFilterInMapExtentOrResolutionStrategy() {
247
+ const filterClauseFunc = (record) => {
248
+ return record.state.inMapExtent === true && record.state.inMapResolution === true;
249
+ };
250
+ return new EntityStoreFilterCustomFuncStrategy({ filterClauseFunc });
251
+ }
252
+ }
253
+ WmsWorkspaceService.ɵfac = function WmsWorkspaceService_Factory(t) { return new (t || WmsWorkspaceService)(i0.ɵɵinject(i1.LayerService), i0.ɵɵinject(i2.StorageService), i0.ɵɵinject(i3.StyleService), i0.ɵɵinject(i2.ConfigService)); };
254
+ WmsWorkspaceService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: WmsWorkspaceService, factory: WmsWorkspaceService.ɵfac, providedIn: 'root' });
255
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WmsWorkspaceService, [{
256
+ type: Injectable,
257
+ args: [{
258
+ providedIn: 'root'
259
+ }]
260
+ }], function () { return [{ type: i1.LayerService }, { type: i2.StorageService }, { type: i3.StyleService }, { type: i2.ConfigService }]; }, null); })();
261
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid21zLXdvcmtzcGFjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvd29ya3NwYWNlL3NoYXJlZC93bXMtd29ya3NwYWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFDTCxXQUFXLEVBRVgsbUNBQW1DLEVBQ25DLGtDQUFrQyxFQUVsQyx5QkFBeUIsRUFDSixNQUFNLGNBQWMsQ0FBQztBQUU1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRTNGLE9BQU8sRUFFTCxhQUFhLEVBQ2IsWUFBWSxFQUNaLCtCQUErQixFQUMvQixtQ0FBbUMsRUFDbkMsZ0NBQWdDLEVBQ2hDLDZCQUE2QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3ZELE9BQU8sRUFBa0QsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSzVHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUMsTUFBTSxhQUFhLENBQUM7Ozs7O0FBUTFELE1BQU0sT0FBTyxtQkFBbUI7SUFROUIsWUFDVSxZQUEwQixFQUMxQixjQUE4QixFQUM5QixZQUEwQixFQUMxQixhQUE0QjtRQUg1QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFOL0IsUUFBRyxHQUFHLElBQUksZUFBZSxDQUFT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QUNwRixDQUFDLENBQUM7UUFDRixPQUFPLElBQUksbUNBQW1DLENBQUMsRUFBQyxnQkFBZ0IsRUFBbUMsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7O3NGQTFRVSxtQkFBbUI7eUVBQW5CLG1CQUFtQixXQUFuQixtQkFBbUIsbUJBRmxCLE1BQU07dUZBRVAsbUJBQW1CO2NBSC9CLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgQWN0aW9uU3RvcmUsXHJcbiAgRW50aXR5UmVjb3JkLFxyXG4gIEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5LFxyXG4gIEVudGl0eVN0b3JlRmlsdGVyU2VsZWN0aW9uU3RyYXRlZ3ksXHJcbiAgRW50aXR5U3RvcmVTdHJhdGVneUZ1bmNPcHRpb25zLFxyXG4gIEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIsXHJcbiAgRW50aXR5VGFibGVUZW1wbGF0ZSB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlLCBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7IHNraXBXaGlsZSwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUmVsYXRpb25PcHRpb25zLCBTb3VyY2VGaWVsZHNPcHRpb25zUGFyYW1zLCBXTVNEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZSc7XHJcbmltcG9ydCB7IEZlYXR1cmVEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvZmVhdHVyZS1kYXRhc291cmNlJztcclxuaW1wb3J0IHsgV0ZTRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy93ZnMtZGF0YXNvdXJjZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1xyXG4gIEZlYXR1cmUsXHJcbiAgRmVhdHVyZU1vdGlvbixcclxuICBGZWF0dXJlU3RvcmUsXHJcbiAgRmVhdHVyZVN0b3JlSW5NYXBFeHRlbnRTdHJhdGVneSxcclxuICBGZWF0dXJlU3RvcmVJbk1hcFJlc29sdXRpb25TdHJhdGVneSxcclxuICBGZWF0dXJlU3RvcmVMb2FkaW5nTGF5ZXJTdHJhdGVneSxcclxuICBGZWF0dXJlU3RvcmVTZWxlY3Rpb25TdHJhdGVneSB9IGZyb20gJy4uLy4uL2ZlYXR1cmUnO1xyXG5cclxuaW1wb3J0IHsgT2djRmlsdGVyYWJsZURhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vZmlsdGVyL3NoYXJlZC9vZ2MtZmlsdGVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEltYWdlTGF5ZXIsIExheWVyU2VydmljZSwgTGF5ZXJzTGlua1Byb3BlcnRpZXMsIExpbmtlZFByb3BlcnRpZXMsIFZlY3RvckxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXInO1xyXG5pbXBvcnQgeyBTdHlsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvc3R5bGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEdlb1dvcmtzcGFjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvbGF5ZXJzL2xheWVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcCc7XHJcbmltcG9ydCB7IFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vcXVlcnkvc2hhcmVkL3F1ZXJ5LmludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBXZnNXb3Jrc3BhY2UgfSBmcm9tICcuL3dmcy13b3Jrc3BhY2UnO1xyXG5pbXBvcnQgeyBnZXRDb21tb25WZWN0b3JTZWxlY3RlZFN0eWxlfSBmcm9tICcuLi8uLi91dGlscyc7XHJcblxyXG5pbXBvcnQgb2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xyXG5pbXBvcnQgdHlwZSB7IGRlZmF1bHQgYXMgT2xHZW9tZXRyeSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgV21zV29ya3NwYWNlU2VydmljZSB7XHJcblxyXG4gIGdldCB6b29tQXV0bygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldCgnem9vbUF1dG8nKSBhcyBib29sZWFuO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHdzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih1bmRlZmluZWQpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbGF5ZXJTZXJ2aWNlOiBMYXllclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgc3R5bGVTZXJ2aWNlOiBTdHlsZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UpIHsgfVxyXG5cclxuICBjcmVhdGVXb3Jrc3BhY2UobGF5ZXI6IEltYWdlTGF5ZXIsIG1hcDogSWdvTWFwKTogV2ZzV29ya3NwYWNlIHtcclxuICAgIGlmIChcclxuICAgICAgIWxheWVyLm9wdGlvbnMud29ya3NwYWNlIHx8XHJcbiAgICAgIG1hcC5sYXllcnMuZmluZChsYXkgPT4gbGF5LmlkID09PSBsYXllci5pZCArICcuV2ZzV29ya3NwYWNlVGFibGVEZXN0JykgfHxcclxuICAgICAgbGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLmVkaXRpb24pIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZGF0YVNvdXJjZTogV01TRGF0YVNvdXJjZSA9IGxheWVyLmRhdGFTb3VyY2UgYXMgV01TRGF0YVNvdXJjZSA7XHJcbiAgICBjb25zdCB3bXNMaW5rSWQgPSBsYXllci5pZCArICcuV21zV29ya3NwYWNlVGFibGVTcmMnO1xyXG4gICAgY29uc3Qgd2ZzTGlua0lkID0gbGF5ZXIuaWQgKyAnLldmc1dvcmtzcGFjZVRhYmxlRGVzdCc7XHJcbiAgICBpZiAoIWxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzKSB7XHJcbiAgICAgIGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzID0geyBsaW5rSWQ6IHdtc0xpbmtJZCwgbGlua3M6IFtdIH07XHJcbiAgICB9XHJcbiAgICBjb25zdCBsaW5rUHJvcGVydGllcyA9IHtcclxuICAgICAgYmlkaXJlY3Rpb25uYWw6IHRydWUsXHJcbiAgICAgIHN5bmNlZERlbGV0ZTogdHJ1ZSxcclxuICAgICAgbGlua2VkSWRzOiBbd2ZzTGlua0lkXSxcclxuICAgICAgcHJvcGVydGllczogW1xyXG4gICAgICAgIExpbmtlZFByb3BlcnRpZXMuWklOREVYLFxyXG4gICAgICAgIExpbmtlZFByb3BlcnRpZXMuVklTSUJMRV1cclxuICAgIH0gYXMgTGF5ZXJzTGlua1Byb3BlcnRpZXM7XHJcblxyXG4gICAgaWYgKCFsYXllci5vcHRpb25zLndvcmtzcGFjZT8ubWluUmVzb2x1dGlvbikge1xyXG4gICAgICAgbGlua1Byb3BlcnRpZXMucHJvcGVydGllcy5wdXNoKExpbmtlZFByb3BlcnRpZXMuTUlOUkVTT0xVVElPTik7XHJcbiAgICB9XHJcbiAgICBsZXQgaGFzT2djRmlsdGVycyA9IGZhbHNlO1xyXG4gICAgaWYgKChkYXRhU291cmNlLm9wdGlvbnMgYXMgT2djRmlsdGVyYWJsZURhdGFTb3VyY2VPcHRpb25zKS5vZ2NGaWx0ZXJzPy5lbmFibGVkKSB7XHJcbiAgICAgIGxpbmtQcm9wZXJ0aWVzLnByb3BlcnRpZXMucHVzaChMaW5rZWRQcm9wZXJ0aWVzLk9HQ0ZJTFRFUlMpO1xyXG4gICAgICBoYXNPZ2NGaWx0ZXJzID0gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmICghbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/Lm1heFJlc29sdXRpb24pIHtcclxuICAgICAgbGlua1Byb3BlcnRpZXMucHJvcGVydGllcy5wdXNoKExpbmtlZFByb3BlcnRpZXMuTUFYUkVTT0xVVElPTik7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGNsb25lZExpbmtzOiBMYXllcnNMaW5rUHJvcGVydGllc1tdID0gW107XHJcbiAgICBpZiAobGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua3MpIHtcclxuICAgICAgY2xvbmVkTGlua3MgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzLmxpbmtzKSk7XHJcbiAgICB9XHJcbiAgICBjbG9uZWRMaW5rcy5wdXNoKGxpbmtQcm9wZXJ0aWVzKTtcclxuXHJcbiAgICBsYXllci5vcHRpb25zLmxpbmtlZExheWVycy5saW5rSWQgPSBsYXllci5vcHRpb25zLmxpbmtlZExheWVycy5saW5rSWQgPyBsYXllci5vcHRpb25zLmxpbmtlZExheWVycy5saW5rSWQgOiB3bXNMaW5rSWQsXHJcbiAgICAgIGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzLmxpbmtzID0gY2xvbmVkTGlua3M7XHJcbiAgICBpbnRlcmZhY2UgV0ZTb3B0aW9ucyBleHRlbmRzIFdGU0RhdGFTb3VyY2VPcHRpb25zLCBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnMgeyB9XHJcblxyXG4gICAgbGV0IHdrcztcclxuICAgIGxldCB3a3NMYXllck9wdGlvbiA9IHtcclxuICAgICAgc3JjSWQ6IGxheWVyLmlkLFxyXG4gICAgICB3b3Jrc3BhY2VJZDogdW5kZWZpbmVkLFxyXG4gICAgICBlbmFibGVkOiBmYWxzZSxcclxuICAgICAgcXVlcnlPcHRpb25zOiB7XHJcbiAgICAgICAgbWFwUXVlcnlPbk9wZW5UYWI6IGxheWVyLm9wdGlvbnMud29ya3NwYWNlPy5xdWVyeU9wdGlvbnM/Lm1hcFF1ZXJ5T25PcGVuVGFiLFxyXG4gICAgICAgIHRhYlF1ZXJ5OiBsYXllci5vcHRpb25zLndvcmtzcGFjZT8ucXVlcnlPcHRpb25zPy50YWJRdWVyeVxyXG4gICAgICB9LFxyXG4gICAgICBwYWdlU2l6ZTogbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/LnBhZ2VTaXplLFxyXG4gICAgICBwYWdlU2l6ZU9wdGlvbnM6IGxheWVyLm9wdGlvbnMud29ya3NwYWNlPy5wYWdlU2l6ZU9wdGlvbnNcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5sYXllclNlcnZpY2VcclxuICAgICAgLmNyZWF0ZUFzeW5jTGF5ZXIoe1xyXG4gICAgICAgIGlzSWdvSW50ZXJuYWxMYXllcjogdHJ1ZSxcclxuICAgICAgICBpZDogd2ZzTGlua0lkLFxyXG4gICAgICAgIGxpbmtlZExheWVyczoge1xyXG4gICAgICAgICAgbGlua0lkOiB3ZnNMaW5rSWRcclxuICAgICAgICB9LFxyXG4gICAgICAgIHdvcmtzcGFjZTogd2tzTGF5ZXJPcHRpb24sXHJcbiAgICAgICAgc2hvd0luTGF5ZXJMaXN0OiBmYWxzZSxcclxuICAgICAgICBvcGFjaXR5OiAwLFxyXG4gICAgICAgIHRpdGxlOiBsYXllci50aXRsZSxcclxuICAgICAgICBtaW5SZXNvbHV0aW9uOiBsYXllci5vcHRpb25zLndvcmtzcGFjZT8ubWluUmVzb2x1dGlvbiB8fCBsYXllci5taW5SZXNvbHV0aW9uIHx8IDAsXHJcbiAgICAgICAgbWF4UmVzb2x1dGlvbjogbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/Lm1heFJlc29sdXRpb24gfHwgbGF5ZXIubWF4UmVzb2x1dGlvbiB8fCBJbmZpbml0eSxcclxuICAgICAgICBzdHlsZTogdGhpcy5zdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGZpbGw6IHtcclxuICAgICAgICAgICAgICBcImNvbG9yXCI6IFwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKVwiXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHN0cm9rZToge1xyXG4gICAgICAgICAgICAgIFwiY29sb3JcIjogXCJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDEpXCJcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgY2lyY2xlOiB7XHJcbiAgICAgICAgICAgICAgZmlsbDoge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IFwicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKVwiXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBzdHJva2U6IHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBcInJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMSlcIlxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgcmFkaXVzOiA1XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgIHNvdXJjZU9wdGlvbnM6IHtcclxuICAgICAgICAgIGRvd25sb2FkOiBkYXRhU291cmNlLm9wdGlvbnMuZG93bmxvYWQsXHJcbiAgICAgICAgICB0eXBlOiAnd2ZzJyxcclxuICAgICAgICAgIHVybDogZGF0YVNvdXJjZS5vcHRpb25zLnVybFdmcyB8fCBkYXRhU291cmNlLm9wdGlvbnMudXJsLFxyXG4gICAgICAgICAgcXVlcnlhYmxlOiB0cnVlLFxyXG4gICAgICAgICAgcmVsYXRpb25zOiBkYXRhU291cmNlLm9wdGlvbnMucmVsYXRpb25zLFxyXG4gICAgICAgICAgcXVlcnlUaXRsZTogKGRhdGFTb3VyY2Uub3B0aW9ucyBhcyBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucykucXVlcnlUaXRsZSxcclxuICAgICAgICAgIHF1ZXJ5Rm9ybWF0QXNXbXM6IGxheWVyLm9wdGlvbnMud29ya3NwYWNlPy5lbmFibGVkID8gKGRhdGFTb3VyY2Uub3B0aW9ucyBhcyBRdWVyeWFibGVEYXRhU291cmNlT3B0aW9ucykucXVlcnlGb3JtYXRBc1dtcyA6IHRydWUsXHJcbiAgICAgICAgICBwYXJhbXM6IGRhdGFTb3VyY2Uub3B0aW9ucy5wYXJhbXNXRlMsXHJcbiAgICAgICAgICBvZ2NGaWx0ZXJzOiBPYmplY3QuYXNzaWduKHt9LCBkYXRhU291cmNlLm9nY0ZpbHRlcnMkLnZhbHVlLCB7ZW5hYmxlZDogaGFzT2djRmlsdGVyc30pLFxyXG4gICAgICAgICAgc291cmNlRmllbGRzOiBkYXRhU291cmNlLm9wdGlvbnMuc291cmNlRmllbGRzIHx8IHVuZGVmaW5lZFxyXG4gICAgICAgIH0gYXMgV0ZTb3B0aW9uc1xyXG4gICAgICB9KVxyXG4gICAgICAuc3Vic2NyaWJlKCh3b3Jrc3BhY2VMYXllcjogVmVjdG9yTGF5ZXIpID0+IHtcclxuICAgICAgICBtYXAuYWRkTGF5ZXIod29ya3NwYWNlTGF5ZXIpO1xyXG4gICAgICAgIGxheWVyLm9sLnNldFByb3BlcnRpZXMoeyBsaW5rZWRMYXllcnM6IHsgbGlua0lkOiBsYXllci5vcHRpb25zLmxpbmtlZExheWVycy5saW5rSWQsIGxpbmtzOiBjbG9uZWRMaW5rcyB9IH0sIGZhbHNlKTtcclxuICAgICAgICB3b3Jrc3BhY2VMYXllci5kYXRhU291cmNlLm9sLnJlZnJlc2goKTtcclxuXHJcbiAgICAgICAgaWYgKCFsYXllci5vcHRpb25zLndvcmtzcGFjZT8uZW5hYmxlZCkge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB3a3MgPSBuZXcgV2ZzV29ya3NwYWNlKHtcclxuICAgICAgICAgIGlkOiBsYXllci5pZCxcclxuICAgICAgICAgIHRpdGxlOiBsYXllci50aXRsZSxcclxuICAgICAgICAgIGxheWVyOiB3b3Jrc3BhY2VMYXllcixcclxuICAgICAgICAgIG1hcCxcclxuICAgICAgICAgIGVudGl0eVN0b3JlOiB0aGlzLmNyZWF0ZUZlYXR1cmVTdG9yZSh3b3Jrc3BhY2VMYXllciwgbWFwKSxcclxuICAgICAgICAgIGFjdGlvblN0b3JlOiBuZXcgQWN0aW9uU3RvcmUoW10pLFxyXG4gICAgICAgICAgbWV0YToge1xyXG4gICAgICAgICAgICB0YWJsZVRlbXBsYXRlOiB1bmRlZmluZWRcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmNyZWF0ZVRhYmxlVGVtcGxhdGUod2tzLCB3b3Jrc3BhY2VMYXllcik7XHJcblxyXG4gICAgICAgIHdvcmtzcGFjZUxheWVyLm9wdGlvbnMud29ya3NwYWNlLndvcmtzcGFjZUlkID0gd29ya3NwYWNlTGF5ZXIuaWQ7XHJcbiAgICAgICAgbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2UgPSBPYmplY3QuYXNzaWduKHt9LCBsYXllci5vcHRpb25zLndvcmtzcGFjZSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgZW5hYmxlZDogdHJ1ZSxcclxuICAgICAgICAgICAgc3JjSWQ6IGxheWVyLmlkLFxyXG4gICAgICAgICAgICB3b3Jrc3BhY2VJZDogd29ya3NwYWNlTGF5ZXIuaWQsXHJcbiAgICAgICAgICAgIHF1ZXJ5T3B0aW9uczoge1xyXG4gICAgICAgICAgICAgIG1hcFF1ZXJ5T25PcGVuVGFiOiBsYXllci5vcHRpb25zLndvcmtzcGFjZT8ucXVlcnlPcHRpb25zPy5tYXBRdWVyeU9uT3BlblRhYixcclxuICAgICAgICAgICAgICB0YWJRdWVyeTogbGF5ZXIub3B0aW9ucy53b3Jrc3BhY2U/LnF1ZXJ5T3B0aW9ucz8udGFiUXVlcnlcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgcGFnZVNpemU6IGxheWVyLm9wdGlvbnMud29ya3NwYWNlPy5wYWdlU2l6ZSxcclxuICAgICAgICAgICAgcGFnZVNpemVPcHRpb25zOiBsYXllci5vcHRpb25zLndvcmtzcGFjZT8ucGFnZVNpemVPcHRpb25zXHJcbiAgICAgICAgICB9IGFzIEdlb1dvcmtzcGFjZU9wdGlvbnMpO1xyXG5cclxuICAgICAgICBkZWxldGUgZGF0YVNvdXJjZS5vcHRpb25zLmRvd25sb2FkO1xyXG4gICAgICAgIHJldHVybiB3a3M7XHJcblxyXG4gICAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gd2tzO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjcmVhdGVGZWF0dXJlU3RvcmUobGF5ZXI6IFZlY3RvckxheWVyLCBtYXA6IElnb01hcCk6IEZlYXR1cmVTdG9yZSB7XHJcbiAgICBjb25zdCBzdG9yZSA9IG5ldyBGZWF0dXJlU3RvcmUoW10sIHsgbWFwIH0pO1xyXG4gICAgc3RvcmUuYmluZExheWVyKGxheWVyKTtcclxuXHJcbiAgICBjb25zdCBsb2FkaW5nU3RyYXRlZ3kgPSBuZXcgRmVhdHVyZVN0b3JlTG9hZGluZ0xheWVyU3RyYXRlZ3koe30pO1xyXG4gICAgY29uc3QgaW5NYXBFeHRlbnRTdHJhdGVneSA9IG5ldyBGZWF0dXJlU3RvcmVJbk1hcEV4dGVudFN0cmF0ZWd5KHt9KTtcclxuICAgIGNvbnN0IGluTWFwUmVzb2x1dGlvblN0cmF0ZWd5ID0gbmV3IEZlYXR1cmVTdG9yZUluTWFwUmVzb2x1dGlvblN0cmF0ZWd5KHt9KTtcclxuICAgIGNvbnN0IHNlbGVjdGVkUmVjb3JkU3RyYXRlZ3kgPSBuZXcgRW50aXR5U3RvcmVGaWx0ZXJTZWxlY3Rpb25TdHJhdGVneSh7fSk7XHJcbiAgICBjb25zdCBjb25mUXVlcnlPdmVybGF5U3R5bGU9IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ3F1ZXJ5T3ZlcmxheVN0eWxlJyk7XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0aW9uU3RyYXRlZ3kgPSBuZXcgRmVhdHVyZVN0b3JlU2VsZWN0aW9uU3RyYXRlZ3koe1xyXG4gICAgICBsYXllcjogbmV3IFZlY3RvckxheWVyKHtcclxuICAgICAgICB6SW5kZXg6IDMwMCxcclxuICAgICAgICBzb3VyY2U6IG5ldyBGZWF0dXJlRGF0YVNvdXJjZSgpLFxyXG4gICAgICAgIHN0eWxlOiAoZmVhdHVyZSkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGdldENvbW1vblZlY3RvclNlbGVjdGVkU3R5bGUoT2JqZWN0LmFzc2lnbih7fSwge2ZlYXR1cmV9LCBjb25mUXVlcnlPdmVybGF5U3R5bGUuc2VsZWN0aW9uIHx8IHt9KSk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBzaG93SW5MYXllckxpc3Q6IGZhbHNlLFxyXG4gICAgICAgIGV4cG9ydGFibGU6IGZhbHNlLFxyXG4gICAgICAgIGJyb3dzYWJsZTogZmFsc2VcclxuICAgICAgfSksXHJcbiAgICAgIG1hcCxcclxuICAgICAgaGl0VG9sZXJhbmNlOiAxNSxcclxuICAgICAgbW90aW9uOiB0aGlzLnpvb21BdXRvID8gRmVhdHVyZU1vdGlvbi5EZWZhdWx0IDogRmVhdHVyZU1vdGlvbi5Ob25lLFxyXG4gICAgICBtYW55OiB0cnVlLFxyXG4gICAgICBkcmFnQm94OiB0cnVlXHJcbiAgICB9KTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KGxvYWRpbmdTdHJhdGVneSwgdHJ1ZSk7XHJcbiAgICBzdG9yZS5hZGRTdHJhdGVneShpbk1hcEV4dGVudFN0cmF0ZWd5LCB0cnVlKTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KGluTWFwUmVzb2x1dGlvblN0cmF0ZWd5LCB0cnVlKTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KHNlbGVjdGlvblN0cmF0ZWd5LCB0cnVlKTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KHNlbGVjdGVkUmVjb3JkU3RyYXRlZ3ksIGZhbHNlKTtcclxuICAgIHN0b3JlLmFkZFN0cmF0ZWd5KHRoaXMuY3JlYXRlRmlsdGVySW5NYXBFeHRlbnRPclJlc29sdXRpb25TdHJhdGVneSgpLCB0cnVlKTtcclxuICAgIHJldHVybiBzdG9yZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlVGFibGVUZW1wbGF0ZSh3b3Jrc3BhY2U6IFdmc1dvcmtzcGFjZSwgbGF5ZXI6IFZlY3RvckxheWVyKTogRW50aXR5VGFibGVUZW1wbGF0ZSB7XHJcbiAgICBjb25zdCBmaWVsZHMgPSBsYXllci5kYXRhU291cmNlLm9wdGlvbnMuc291cmNlRmllbGRzIHx8IFtdO1xyXG5cclxuICAgIGNvbnN0IHJlbGF0aW9ucyA9IGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5yZWxhdGlvbnMgfHwgW107XHJcblxyXG4gICAgaWYgKGZpZWxkcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLmVudGl0aWVzJC5waXBlKFxyXG4gICAgICAgIHNraXBXaGlsZSh2YWwgPT4gdmFsLmxlbmd0aCA9PT0gMCksXHJcbiAgICAgICAgdGFrZSgxKVxyXG4gICAgICApLnN1YnNjcmliZShlbnRpdGllcyA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2wgPSAoZW50aXRpZXNbMF0gYXMgRmVhdHVyZSkub2wgYXMgb2xGZWF0dXJlPE9sR2VvbWV0cnk+O1xyXG4gICAgICAgIGNvbnN0IGNvbHVtbnNGcm9tRmVhdHVyZXMgPSBvbC5nZXRLZXlzKClcclxuICAgICAgICAgIC5maWx0ZXIoXHJcbiAgICAgICAgICAgIGNvbCA9PiAhY29sLnN0YXJ0c1dpdGgoJ18nKSAmJlxyXG4gICAgICAgICAgICAgIGNvbCAhPT0gJ2dlb21ldHJ5JyAmJlxyXG4gICAgICAgICAgICAgIGNvbCAhPT0gb2wuZ2V0R2VvbWV0cnlOYW1lKCkgJiZcclxuICAgICAgICAgICAgICAhY29sLm1hdGNoKC9ib3VuZGVkYnkvZ2kpKVxyXG4gICAgICAgICAgLm1hcChrZXkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgIG5hbWU6IGBwcm9wZXJ0aWVzLiR7a2V5fWAsXHJcbiAgICAgICAgICAgICAgdGl0bGU6IGtleSxcclxuICAgICAgICAgICAgICByZW5kZXJlcjogRW50aXR5VGFibGVDb2x1bW5SZW5kZXJlci5VbnNhbml0aXplZEhUTUxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIHdvcmtzcGFjZS5tZXRhLnRhYmxlVGVtcGxhdGUgPSB7XHJcbiAgICAgICAgICBzZWxlY3Rpb246IHRydWUsXHJcbiAgICAgICAgICBzb3J0OiB0cnVlLFxyXG4gICAgICAgICAgY29sdW1uczogY29sdW1uc0Zyb21GZWF0dXJlc1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb2x1bW5zID0gZmllbGRzLm1hcCgoZmllbGQ6IFNvdXJjZUZpZWxkc09wdGlvbnNQYXJhbXMpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke2ZpZWxkLm5hbWV9YCxcclxuICAgICAgICB0aXRsZTogZmllbGQuYWxpYXMgPyBmaWVsZC5hbGlhcyA6IGZpZWxkLm5hbWUsXHJcbiAgICAgICAgcmVuZGVyZXI6IEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIuVW5zYW5pdGl6ZWRIVE1MLFxyXG4gICAgICAgIHRvb2x0aXA6IGZpZWxkLnRvb2x0aXBcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IHJlbGF0aW9uc0NvbHVtbiA9IHJlbGF0aW9ucy5tYXAoKHJlbGF0aW9uOiBSZWxhdGlvbk9wdGlvbnMpID0+IHtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBuYW1lOiBgcHJvcGVydGllcy4ke3JlbGF0aW9uLm5hbWV9YCxcclxuICAgICAgICB0aXRsZTogcmVsYXRpb24uYWxpYXMgPyByZWxhdGlvbi5hbGlhcyA6IHJlbGF0aW9uLm5hbWUsXHJcbiAgICAgICAgcmVuZGVyZXI6IEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIuSWNvbixcclxuICAgICAgICBpY29uOiByZWxhdGlvbi5pY29uLFxyXG4gICAgICAgIHBhcmVudDogcmVsYXRpb24ucGFyZW50LFxyXG4gICAgICAgIHR5cGU6ICdyZWxhdGlvbicsXHJcbiAgICAgICAgdG9vbHRpcDogcmVsYXRpb24udG9vbHRpcCxcclxuICAgICAgICBvbkNsaWNrOiAoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMud3MkLm5leHQocmVsYXRpb24udGl0bGUpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY2VsbENsYXNzRnVuYzogKCkgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHsgJ2NsYXNzX2ljb24nOiB0cnVlIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcblxyXG4gICAgY29sdW1ucy5wdXNoKC4uLnJlbGF0aW9uc0NvbHVtbik7XHJcbiAgICB3b3Jrc3BhY2UubWV0YS50YWJsZVRlbXBsYXRlID0ge1xyXG4gICAgICBzZWxlY3Rpb246IHRydWUsXHJcbiAgICAgIHNvcnQ6IHRydWUsXHJcbiAgICAgIGNvbHVtbnNcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUZpbHRlckluTWFwRXh0ZW50T3JSZXNvbHV0aW9uU3RyYXRlZ3koKTogRW50aXR5U3RvcmVGaWx0ZXJDdXN0b21GdW5jU3RyYXRlZ3kge1xyXG4gICAgY29uc3QgZmlsdGVyQ2xhdXNlRnVuYyA9IChyZWNvcmQ6IEVudGl0eVJlY29yZDxvYmplY3Q+KSA9PiB7XHJcbiAgICAgIHJldHVybiByZWNvcmQuc3RhdGUuaW5NYXBFeHRlbnQgPT09IHRydWUgJiYgcmVjb3JkLnN0YXRlLmluTWFwUmVzb2x1dGlvbiA9PT0gdHJ1ZTtcclxuICAgIH07XHJcbiAgICByZXR1cm4gbmV3IEVudGl0eVN0b3JlRmlsdGVyQ3VzdG9tRnVuY1N0cmF0ZWd5KHtmaWx0ZXJDbGF1c2VGdW5jfSBhcyBFbnRpdHlTdG9yZVN0cmF0ZWd5RnVuY09wdGlvbnMpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -31,15 +31,10 @@ OgcFilterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OgcFilte
31
31
  i0.ɵɵelement(0, "igo-ogc-filterable-item", 0);
32
32
  } if (rf & 2) {
33
33
  i0.ɵɵproperty("layer", ctx.layer)("header", false)("map", ctx.map);
34
- } }, directives: [i1.OgcFilterableItemComponent], styles: [""], changeDetection: 0 });
34
+ } }, dependencies: [i1.OgcFilterableItemComponent], changeDetection: 0 });
35
35
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OgcFilterComponent, [{
36
36
  type: Component,
37
- args: [{
38
- selector: 'igo-ogc-filter',
39
- templateUrl: './ogc-filter.component.html',
40
- styleUrls: ['./ogc-filter.component.scss'],
41
- changeDetection: ChangeDetectionStrategy.OnPush
42
- }]
37
+ args: [{ selector: 'igo-ogc-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<igo-ogc-filterable-item\r\n igoListItem\r\n [layer]=\"layer\"\r\n [header]=\"false\" \r\n [map]=\"map\" >\r\n</igo-ogc-filterable-item>" }]
43
38
  }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { layer: [{
44
39
  type: Input
45
40
  }], map: [{
@@ -49,4 +44,4 @@ OgcFilterComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: OgcFilte
49
44
  }], cancel: [{
50
45
  type: Output
51
46
  }] }); })();
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2djLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvd2lkZ2V0cy9vZ2MtZmlsdGVyL29nYy1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvd29ya3NwYWNlL3dpZGdldHMvb2djLWZpbHRlci9vZ2MtZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osdUJBQXVCLEVBRXhCLE1BQU0sZUFBZSxDQUFDOzs7QUFhdkIsTUFBTSxPQUFPLGtCQUFrQjtJQWdCN0IsWUFBb0IsS0FBd0I7UUFBeEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFWNUM7O1dBRUc7UUFDTyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUU5Qzs7V0FFRztRQUNPLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRUcsQ0FBQztJQUVoRDs7T0FFRztJQUNILGNBQWM7UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7O29GQTlCVSxrQkFBa0I7cUVBQWxCLGtCQUFrQjtRQ3BCL0IsNkNBSzBCOztRQUh4QixpQ0FBZSxpQkFBQSxnQkFBQTs7dUZEa0JKLGtCQUFrQjtjQU45QixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsV0FBVyxFQUFFLDZCQUE2QjtnQkFDMUMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLENBQUM7Z0JBQzFDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEO29FQUdVLEtBQUs7a0JBQWIsS0FBSztZQUVHLEdBQUc7a0JBQVgsS0FBSztZQUtJLFFBQVE7a0JBQWpCLE1BQU07WUFLRyxNQUFNO2tCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBPblVwZGF0ZUlucHV0cywgV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi4vLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllcic7XHJcbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uLy4uL21hcC9zaGFyZWQvbWFwJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLW9nYy1maWx0ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9vZ2MtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9vZ2MtZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIE9nY0ZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uVXBkYXRlSW5wdXRzLCBXaWRnZXRDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBsYXllcjogTGF5ZXI7XHJcblxyXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudCBlbWl0dGVkIG9uIGNvbXBsZXRlXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIGNvbXBsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudCBlbWl0dGVkIG9uIGNhbmNlbFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIE9uVXBkYXRlSW5wdXRzXHJcbiAgICovXHJcbiAgb25VcGRhdGVJbnB1dHMoKSB7XHJcbiAgICB0aGlzLmNkUmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9uIGNsb3NlLCBlbWl0IHRoZSBjYW5jZWwgZXZlbnRcclxuICAgKi9cclxuICBvbkNsb3NlKCkge1xyXG4gICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGlnby1vZ2MtZmlsdGVyYWJsZS1pdGVtXHJcbiAgaWdvTGlzdEl0ZW1cclxuICBbbGF5ZXJdPVwibGF5ZXJcIlxyXG4gIFtoZWFkZXJdPVwiZmFsc2VcIiBcclxuICBbbWFwXT1cIm1hcFwiID5cclxuPC9pZ28tb2djLWZpbHRlcmFibGUtaXRlbT4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2djLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvd2lkZ2V0cy9vZ2MtZmlsdGVyL29nYy1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvd29ya3NwYWNlL3dpZGdldHMvb2djLWZpbHRlci9vZ2MtZmlsdGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osdUJBQXVCLEVBRXhCLE1BQU0sZUFBZSxDQUFDOzs7QUFhdkIsTUFBTSxPQUFPLGtCQUFrQjtJQWdCN0IsWUFBb0IsS0FBd0I7UUFBeEIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFWNUM7O1dBRUc7UUFDTyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUU5Qzs7V0FFRztRQUNPLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0lBRUcsQ0FBQztJQUVoRDs7T0FFRztJQUNILGNBQWM7UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7O29GQTlCVSxrQkFBa0I7cUVBQWxCLGtCQUFrQjtRQ3BCL0IsNkNBSzBCOztRQUh4QixpQ0FBZSxpQkFBQSxnQkFBQTs7dUZEa0JKLGtCQUFrQjtjQU45QixTQUFTOzJCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNO29FQUl0QyxLQUFLO2tCQUFiLEtBQUs7WUFFRyxHQUFHO2tCQUFYLEtBQUs7WUFLSSxRQUFRO2tCQUFqQixNQUFNO1lBS0csTUFBTTtrQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgT25VcGRhdGVJbnB1dHMsIFdpZGdldENvbXBvbmVudCB9IGZyb20gJ0BpZ28yL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBMYXllciB9IGZyb20gJy4uLy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvbGF5ZXInO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi8uLi9tYXAvc2hhcmVkL21hcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1vZ2MtZmlsdGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vb2djLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vb2djLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPZ2NGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPblVwZGF0ZUlucHV0cywgV2lkZ2V0Q29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KCkgbGF5ZXI6IExheWVyO1xyXG5cclxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZW1pdHRlZCBvbiBjb21wbGV0ZVxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBjb21wbGV0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnQgZW1pdHRlZCBvbiBjYW5jZWxcclxuICAgKi9cclxuICBAT3V0cHV0KCkgY2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cclxuXHJcbiAgLyoqXHJcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBPblVwZGF0ZUlucHV0c1xyXG4gICAqL1xyXG4gIG9uVXBkYXRlSW5wdXRzKCkge1xyXG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPbiBjbG9zZSwgZW1pdCB0aGUgY2FuY2VsIGV2ZW50XHJcbiAgICovXHJcbiAgb25DbG9zZSgpIHtcclxuICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxpZ28tb2djLWZpbHRlcmFibGUtaXRlbVxyXG4gIGlnb0xpc3RJdGVtXHJcbiAgW2xheWVyXT1cImxheWVyXCJcclxuICBbaGVhZGVyXT1cImZhbHNlXCIgXHJcbiAgW21hcF09XCJtYXBcIiA+XHJcbjwvaWdvLW9nYy1maWx0ZXJhYmxlLWl0ZW0+Il19
@@ -12,12 +12,10 @@ export class IgoOgcFilterModule {
12
12
  }
13
13
  IgoOgcFilterModule.ɵfac = function IgoOgcFilterModule_Factory(t) { return new (t || IgoOgcFilterModule)(); };
14
14
  IgoOgcFilterModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoOgcFilterModule });
15
- IgoOgcFilterModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
16
- CommonModule,
17
- MatButtonModule,
18
- IgoLanguageModule,
19
- IgoFilterModule
20
- ]] });
15
+ IgoOgcFilterModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
16
+ MatButtonModule,
17
+ IgoLanguageModule,
18
+ IgoFilterModule] });
21
19
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoOgcFilterModule, [{
22
20
  type: NgModule,
23
21
  args: [{
@@ -35,4 +33,4 @@ IgoOgcFilterModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
35
33
  MatButtonModule,
36
34
  IgoLanguageModule,
37
35
  IgoFilterModule], exports: [OgcFilterComponent] }); })();
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2djLWZpbHRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvd2lkZ2V0cy9vZ2MtZmlsdGVyL29nYy1maWx0ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUU1RDs7R0FFRztBQVdILE1BQU0sT0FBTyxrQkFBa0I7O29GQUFsQixrQkFBa0I7b0VBQWxCLGtCQUFrQjt3RUFUcEI7WUFDUCxZQUFZO1lBQ1osZUFBZTtZQUNmLGlCQUFpQjtZQUNqQixlQUFlO1NBQ2hCO3VGQUlVLGtCQUFrQjtjQVY5QixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osZUFBZTtvQkFDZixpQkFBaUI7b0JBQ2pCLGVBQWU7aUJBQ2hCO2dCQUNELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUM3QixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzthQUNuQzs7d0ZBQ1ksa0JBQWtCLG1CQUZkLGtCQUFrQixhQU4vQixZQUFZO1FBQ1osZUFBZTtRQUNmLGlCQUFpQjtRQUNqQixlQUFlLGFBRVAsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuXHJcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBJZ29GaWx0ZXJNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9maWx0ZXIvZmlsdGVyLm1vZHVsZSc7XHJcbmltcG9ydCB7IE9nY0ZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vb2djLWZpbHRlci5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGUsXHJcbiAgICBJZ29GaWx0ZXJNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtPZ2NGaWx0ZXJDb21wb25lbnRdLFxyXG4gIGRlY2xhcmF0aW9uczogW09nY0ZpbHRlckNvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb09nY0ZpbHRlck1vZHVsZSB7fVxyXG4iXX0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2djLWZpbHRlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvd2lkZ2V0cy9vZ2MtZmlsdGVyL29nYy1maWx0ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUU1RDs7R0FFRztBQVdILE1BQU0sT0FBTyxrQkFBa0I7O29GQUFsQixrQkFBa0I7b0VBQWxCLGtCQUFrQjt3RUFSM0IsWUFBWTtRQUNaLGVBQWU7UUFDZixpQkFBaUI7UUFDakIsZUFBZTt1RkFLTixrQkFBa0I7Y0FWOUIsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLGVBQWU7b0JBQ2YsaUJBQWlCO29CQUNqQixlQUFlO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQkFDN0IsWUFBWSxFQUFFLENBQUMsa0JBQWtCLENBQUM7YUFDbkM7O3dGQUNZLGtCQUFrQixtQkFGZCxrQkFBa0IsYUFOL0IsWUFBWTtRQUNaLGVBQWU7UUFDZixpQkFBaUI7UUFDakIsZUFBZSxhQUVQLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcblxyXG5pbXBvcnQgeyBJZ29MYW5ndWFnZU1vZHVsZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSWdvRmlsdGVyTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vZmlsdGVyL2ZpbHRlci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBPZ2NGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL29nYy1maWx0ZXIuY29tcG9uZW50JztcclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIElnb0xhbmd1YWdlTW9kdWxlLFxyXG4gICAgSWdvRmlsdGVyTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbT2djRmlsdGVyQ29tcG9uZW50XSxcclxuICBkZWNsYXJhdGlvbnM6IFtPZ2NGaWx0ZXJDb21wb25lbnRdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJZ29PZ2NGaWx0ZXJNb2R1bGUge31cclxuIl19
@@ -0,0 +1,133 @@
1
+ import { Directive, Input, Output, EventEmitter } from '@angular/core';
2
+ import { debounceTime } from 'rxjs/operators';
3
+ import { WFSDataSource, WMSDataSource, FeatureDataSource } from '../../datasource';
4
+ import { FeatureStoreInMapExtentStrategy } from '../../feature/shared/strategies/in-map-extent';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@igo2/common";
7
+ import * as i2 from "../shared/wfs-workspace.service";
8
+ import * as i3 from "../shared/wms-workspace.service";
9
+ import * as i4 from "../shared/edition-workspace.service";
10
+ import * as i5 from "../shared/feature-workspace.service";
11
+ export class WorkspaceSelectorDirective {
12
+ constructor(component, wfsWorkspaceService, wmsWorkspaceService, editionWorkspaceService, featureWorkspaceService) {
13
+ this.component = component;
14
+ this.wfsWorkspaceService = wfsWorkspaceService;
15
+ this.wmsWorkspaceService = wmsWorkspaceService;
16
+ this.editionWorkspaceService = editionWorkspaceService;
17
+ this.featureWorkspaceService = featureWorkspaceService;
18
+ this.entities$$ = [];
19
+ this.changeWorkspace = new EventEmitter();
20
+ this.disableSwitch = new EventEmitter();
21
+ this.relationLayers = new EventEmitter();
22
+ this.rowsInMapExtentCheckCondition = new EventEmitter();
23
+ }
24
+ get workspaceStore() {
25
+ return this.component.store;
26
+ }
27
+ ngOnInit() {
28
+ this.layers$$ = this.map.layers$
29
+ .pipe(debounceTime(50))
30
+ .subscribe((layers) => this.onLayersChange(layers));
31
+ this.featureWorkspaceService.ws$.subscribe((ws) => { this.changeWorkspace.emit(ws); });
32
+ this.wmsWorkspaceService.ws$.subscribe((ws) => { this.changeWorkspace.emit(ws); });
33
+ this.wfsWorkspaceService.ws$.subscribe((ws) => { this.changeWorkspace.emit(ws); });
34
+ this.editionWorkspaceService.ws$.subscribe((ws) => { this.changeWorkspace.emit(ws); });
35
+ this.editionWorkspaceService.adding$.subscribe((adding) => { this.disableSwitch.emit(adding); });
36
+ this.editionWorkspaceService.relationLayers$.subscribe((layers) => { this.relationLayers.emit(layers); });
37
+ this.editionWorkspaceService.rowsInMapExtentCheckCondition$.subscribe((condition) => {
38
+ this.rowsInMapExtentCheckCondition.emit(condition);
39
+ });
40
+ }
41
+ ngOnDestroy() {
42
+ this.layers$$.unsubscribe();
43
+ this.entities$$.map(entities => entities.unsubscribe());
44
+ }
45
+ onLayersChange(layers) {
46
+ const editableLayers = layers.filter((layer) => this.layerIsEditable(layer));
47
+ const editableLayersIds = editableLayers.map((layer) => layer.id);
48
+ const workspacesToAdd = editableLayers
49
+ .map((layer) => this.getOrCreateWorkspace(layer))
50
+ .filter((workspace) => workspace !== undefined);
51
+ const workspacesToRemove = this.workspaceStore.all()
52
+ .filter((workspace) => {
53
+ return editableLayersIds.indexOf(workspace.id) < 0;
54
+ });
55
+ if (workspacesToRemove.length > 0) {
56
+ workspacesToRemove.forEach((workspace) => {
57
+ workspace.entityStore.deactivateStrategyOfType(FeatureStoreInMapExtentStrategy);
58
+ workspace.deactivate();
59
+ });
60
+ this.workspaceStore.state.updateMany(workspacesToRemove, { active: false, selected: false });
61
+ this.workspaceStore.deleteMany(workspacesToRemove);
62
+ }
63
+ if (workspacesToAdd.length > 0) {
64
+ this.workspaceStore.insertMany(workspacesToAdd);
65
+ }
66
+ }
67
+ getOrCreateWorkspace(layer) {
68
+ const workspace = this.workspaceStore.get(layer.id);
69
+ if (workspace !== undefined) {
70
+ return;
71
+ }
72
+ if (layer.dataSource instanceof WFSDataSource && layer.dataSource.options.edition?.enabled !== true) {
73
+ const wfsWks = this.wfsWorkspaceService.createWorkspace(layer, this.map);
74
+ return wfsWks;
75
+ }
76
+ else if (layer.dataSource instanceof WMSDataSource && layer.dataSource.options.edition?.enabled !== true) {
77
+ if (!layer.dataSource.options.paramsWFS) {
78
+ return;
79
+ }
80
+ const wmsWks = this.wmsWorkspaceService.createWorkspace(layer, this.map);
81
+ wmsWks?.inResolutionRange$.subscribe((inResolutionRange) => {
82
+ layer.dataSource.options.queryable = !inResolutionRange;
83
+ wmsWks.layer.dataSource.options.queryable = inResolutionRange;
84
+ });
85
+ return wmsWks;
86
+ }
87
+ else if (layer.dataSource instanceof FeatureDataSource &&
88
+ layer.exportable === true &&
89
+ layer.dataSource.options.edition?.enabled !== true) {
90
+ const featureWks = this.featureWorkspaceService.createWorkspace(layer, this.map);
91
+ return featureWks;
92
+ }
93
+ else if (layer.dataSource instanceof WMSDataSource && layer.dataSource.options.edition?.enabled === true) {
94
+ const editionWks = this.editionWorkspaceService.createWorkspace(layer, this.map);
95
+ return editionWks;
96
+ }
97
+ return;
98
+ }
99
+ layerIsEditable(layer) {
100
+ const dataSource = layer.dataSource;
101
+ if (dataSource instanceof WFSDataSource) {
102
+ return true;
103
+ }
104
+ if (dataSource instanceof FeatureDataSource) {
105
+ return true;
106
+ }
107
+ if (dataSource instanceof WMSDataSource) {
108
+ const dataSourceOptions = (dataSource.options ||
109
+ {});
110
+ return (dataSourceOptions.ogcFilters?.enabled || dataSource.options.paramsWFS?.featureTypes !== undefined);
111
+ }
112
+ return false;
113
+ }
114
+ }
115
+ WorkspaceSelectorDirective.ɵfac = function WorkspaceSelectorDirective_Factory(t) { return new (t || WorkspaceSelectorDirective)(i0.ɵɵdirectiveInject(i1.WorkspaceSelectorComponent), i0.ɵɵdirectiveInject(i2.WfsWorkspaceService), i0.ɵɵdirectiveInject(i3.WmsWorkspaceService), i0.ɵɵdirectiveInject(i4.EditionWorkspaceService), i0.ɵɵdirectiveInject(i5.FeatureWorkspaceService)); };
116
+ WorkspaceSelectorDirective.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: WorkspaceSelectorDirective, selectors: [["", "igoWorkspaceSelector", ""]], inputs: { map: "map" }, outputs: { changeWorkspace: "changeWorkspace", disableSwitch: "disableSwitch", relationLayers: "relationLayers", rowsInMapExtentCheckCondition: "rowsInMapExtentCheckCondition" } });
117
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WorkspaceSelectorDirective, [{
118
+ type: Directive,
119
+ args: [{
120
+ selector: '[igoWorkspaceSelector]'
121
+ }]
122
+ }], function () { return [{ type: i1.WorkspaceSelectorComponent }, { type: i2.WfsWorkspaceService }, { type: i3.WmsWorkspaceService }, { type: i4.EditionWorkspaceService }, { type: i5.FeatureWorkspaceService }]; }, { map: [{
123
+ type: Input
124
+ }], changeWorkspace: [{
125
+ type: Output
126
+ }], disableSwitch: [{
127
+ type: Output
128
+ }], relationLayers: [{
129
+ type: Output
130
+ }], rowsInMapExtentCheckCondition: [{
131
+ type: Output
132
+ }] }); })();
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLXNlbGVjdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2Utc2VsZWN0b3Ivd29ya3NwYWNlLXNlbGVjdG9yLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFNOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQU9uRixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQzs7Ozs7OztBQU1oRyxNQUFNLE9BQU8sMEJBQTBCO0lBZ0JyQyxZQUNVLFNBQXFDLEVBQ3JDLG1CQUF3QyxFQUN4QyxtQkFBd0MsRUFDeEMsdUJBQWdELEVBQ2hELHVCQUFnRDtRQUpoRCxjQUFTLEdBQVQsU0FBUyxDQUE0QjtRQUNyQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCw0QkFBdUIsR0FBdkIsdUJBQXVCLENBQXlCO1FBbEJsRCxlQUFVLEdBQW1CLEVBQUUsQ0FBQztRQUk5QixvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDN0Msa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQzVDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQWdDLENBQUM7UUFDbEUsa0NBQTZCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQVluRSxDQUFDO0lBVkosSUFBSSxjQUFjO1FBQ2hCLE9BQU8s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LEtBQUssSUFBSSxFQUFFO1lBQzFHLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsS0FBbUIsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDL0YsT0FBTyxVQUFVLENBQUM7U0FDbkI7UUFFRCxPQUFPO0lBQ1QsQ0FBQztJQUVPLGVBQWUsQ0FBQyxLQUFZO1FBQ2xDLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7UUFDcEMsSUFBSSxVQUFVLFlBQVksYUFBYSxFQUFFO1lBQ3ZDLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxJQUFJLFVBQVUsWUFBWSxpQkFBaUIsRUFBRTtZQUMzQyxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsSUFBSSxVQUFVLFlBQVksYUFBYSxFQUFFO1lBQ3ZDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxVQUFVLENBQUMsT0FBTztnQkFDM0MsRUFBRSxDQUFtQyxDQUFDO1lBQ3hDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLFlBQVksS0FBSyxTQUFTLENBQUMsQ0FBQztTQUM1RztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7b0dBekhVLDBCQUEwQjs2RUFBMUIsMEJBQTBCO3VGQUExQiwwQkFBMEI7Y0FIdEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSx3QkFBd0I7YUFDbkM7Nk5BTVUsR0FBRztrQkFBWCxLQUFLO1lBRUksZUFBZTtrQkFBeEIsTUFBTTtZQUNHLGFBQWE7a0JBQXRCLE1BQU07WUFDRyxjQUFjO2tCQUF2QixNQUFNO1lBQ0csNkJBQTZCO2tCQUF0QyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25Jbml0LCBPbkRlc3Ryb3ksIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgV29ya3NwYWNlLCBXb3Jrc3BhY2VTdG9yZSwgV29ya3NwYWNlU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgTGF5ZXIsIEltYWdlTGF5ZXIsIFZlY3RvckxheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXInO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAnO1xyXG5pbXBvcnQgeyBXRlNEYXRhU291cmNlLCBXTVNEYXRhU291cmNlLCBGZWF0dXJlRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2UnO1xyXG5pbXBvcnQgeyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9maWx0ZXInO1xyXG5cclxuaW1wb3J0IHsgV2ZzV29ya3NwYWNlU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC93ZnMtd29ya3NwYWNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXbXNXb3Jrc3BhY2VTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL3dtcy13b3Jrc3BhY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEVkaXRpb25Xb3Jrc3BhY2VTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2VkaXRpb24td29ya3NwYWNlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBGZWF0dXJlV29ya3NwYWNlU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9mZWF0dXJlLXdvcmtzcGFjZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRmVhdHVyZVN0b3JlSW5NYXBFeHRlbnRTdHJhdGVneSB9IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkL3N0cmF0ZWdpZXMvaW4tbWFwLWV4dGVudCc7XHJcbmltcG9ydCB7IFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vcXVlcnkvc2hhcmVkL3F1ZXJ5LmludGVyZmFjZXMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbaWdvV29ya3NwYWNlU2VsZWN0b3JdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgV29ya3NwYWNlU2VsZWN0b3JEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIHByaXZhdGUgbGF5ZXJzJCQ6IFN1YnNjcmlwdGlvbjtcclxuICBwcml2YXRlIGVudGl0aWVzJCQ6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xyXG5cclxuICBAT3V0cHV0KCkgY2hhbmdlV29ya3NwYWNlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIGRpc2FibGVTd2l0Y2ggPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgQE91dHB1dCgpIHJlbGF0aW9uTGF5ZXJzID0gbmV3IEV2ZW50RW1pdHRlcjxJbWFnZUxheWVyW10gfCBWZWN0b3JMYXllcltdPigpO1xyXG4gIEBPdXRwdXQoKSByb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgZ2V0IHdvcmtzcGFjZVN0b3JlKCk6IFdvcmtzcGFjZVN0b3JlIHtcclxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudC5zdG9yZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjb21wb25lbnQ6IFdvcmtzcGFjZVNlbGVjdG9yQ29tcG9uZW50LFxyXG4gICAgcHJpdmF0ZSB3ZnNXb3Jrc3BhY2VTZXJ2aWNlOiBXZnNXb3Jrc3BhY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB3bXNXb3Jrc3BhY2VTZXJ2aWNlOiBXbXNXb3Jrc3BhY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBlZGl0aW9uV29ya3NwYWNlU2VydmljZTogRWRpdGlvbldvcmtzcGFjZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGZlYXR1cmVXb3Jrc3BhY2VTZXJ2aWNlOiBGZWF0dXJlV29ya3NwYWNlU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmxheWVycyQkID0gdGhpcy5tYXAubGF5ZXJzJFxyXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoNTApKVxyXG4gICAgICAuc3Vic2NyaWJlKChsYXllcnM6IExheWVyW10pID0+XHJcbiAgICAgICAgdGhpcy5vbkxheWVyc0NoYW5nZShsYXllcnMpXHJcbiAgICAgICk7XHJcblxyXG4gICAgdGhpcy5mZWF0dXJlV29ya3NwYWNlU2VydmljZS53cyQuc3Vic2NyaWJlKCh3cykgPT4geyB0aGlzLmNoYW5nZVdvcmtzcGFjZS5lbWl0KHdzKTsgfSk7XHJcbiAgICB0aGlzLndtc1dvcmtzcGFjZVNlcnZpY2Uud3MkLnN1YnNjcmliZSgod3MpID0+IHsgdGhpcy5jaGFuZ2VXb3Jrc3BhY2UuZW1pdCh3cyk7IH0pO1xyXG4gICAgdGhpcy53ZnNXb3Jrc3BhY2VTZXJ2aWNlLndzJC5zdWJzY3JpYmUoKHdzKSA9PiB7IHRoaXMuY2hhbmdlV29ya3NwYWNlLmVtaXQod3MpOyB9KTtcclxuICAgIHRoaXMuZWRpdGlvbldvcmtzcGFjZVNlcnZpY2Uud3MkLnN1YnNjcmliZSgod3MpID0+IHsgdGhpcy5jaGFuZ2VXb3Jrc3BhY2UuZW1pdCh3cyk7IH0pO1xyXG4gICAgdGhpcy5lZGl0aW9uV29ya3NwYWNlU2VydmljZS5hZGRpbmckLnN1YnNjcmliZSgoYWRkaW5nKSA9PiB7IHRoaXMuZGlzYWJsZVN3aXRjaC5lbWl0KGFkZGluZyk7IH0pO1xyXG4gICAgdGhpcy5lZGl0aW9uV29ya3NwYWNlU2VydmljZS5yZWxhdGlvbkxheWVycyQuc3Vic2NyaWJlKChsYXllcnMpID0+IHsgdGhpcy5yZWxhdGlvbkxheWVycy5lbWl0KGxheWVycyk7IH0pO1xyXG4gICAgdGhpcy5lZGl0aW9uV29ya3NwYWNlU2VydmljZS5yb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbiQuc3Vic2NyaWJlKChjb25kaXRpb24pID0+IHtcclxuICAgICAgdGhpcy5yb3dzSW5NYXBFeHRlbnRDaGVja0NvbmRpdGlvbi5lbWl0KGNvbmRpdGlvbik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5sYXllcnMkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5lbnRpdGllcyQkLm1hcChlbnRpdGllcyA9PiBlbnRpdGllcy51bnN1YnNjcmliZSgpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25MYXllcnNDaGFuZ2UobGF5ZXJzOiBMYXllcltdKSB7XHJcbiAgICBjb25zdCBlZGl0YWJsZUxheWVycyA9IGxheWVycy5maWx0ZXIoKGxheWVyOiBMYXllcikgPT5cclxuICAgICAgdGhpcy5sYXllcklzRWRpdGFibGUobGF5ZXIpXHJcbiAgICApO1xyXG4gICAgY29uc3QgZWRpdGFibGVMYXllcnNJZHMgPSBlZGl0YWJsZUxheWVycy5tYXAoKGxheWVyOiBMYXllcikgPT4gbGF5ZXIuaWQpO1xyXG5cclxuICAgIGNvbnN0IHdvcmtzcGFjZXNUb0FkZCA9IGVkaXRhYmxlTGF5ZXJzXHJcbiAgICAgIC5tYXAoKGxheWVyOiBWZWN0b3JMYXllcikgPT4gdGhpcy5nZXRPckNyZWF0ZVdvcmtzcGFjZShsYXllcikpXHJcbiAgICAgIC5maWx0ZXIoKHdvcmtzcGFjZTogV29ya3NwYWNlIHwgdW5kZWZpbmVkKSA9PiB3b3Jrc3BhY2UgIT09IHVuZGVmaW5lZCk7XHJcblxyXG4gICAgY29uc3Qgd29ya3NwYWNlc1RvUmVtb3ZlID0gdGhpcy53b3Jrc3BhY2VTdG9yZS5hbGwoKVxyXG4gICAgICAuZmlsdGVyKCh3b3Jrc3BhY2U6IFdvcmtzcGFjZSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBlZGl0YWJsZUxheWVyc0lkcy5pbmRleE9mKHdvcmtzcGFjZS5pZCkgPCAwO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICBpZiAod29ya3NwYWNlc1RvUmVtb3ZlLmxlbmd0aCA+IDApIHtcclxuICAgICAgd29ya3NwYWNlc1RvUmVtb3ZlLmZvckVhY2goKHdvcmtzcGFjZTogV29ya3NwYWNlKSA9PiB7XHJcbiAgICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLmRlYWN0aXZhdGVTdHJhdGVneU9mVHlwZShGZWF0dXJlU3RvcmVJbk1hcEV4dGVudFN0cmF0ZWd5KTtcclxuICAgICAgICB3b3Jrc3BhY2UuZGVhY3RpdmF0ZSgpO1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy53b3Jrc3BhY2VTdG9yZS5zdGF0ZS51cGRhdGVNYW55KHdvcmtzcGFjZXNUb1JlbW92ZSwge2FjdGl2ZTogZmFsc2UsIHNlbGVjdGVkOiBmYWxzZX0pO1xyXG4gICAgICB0aGlzLndvcmtzcGFjZVN0b3JlLmRlbGV0ZU1hbnkod29ya3NwYWNlc1RvUmVtb3ZlKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAod29ya3NwYWNlc1RvQWRkLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy53b3Jrc3BhY2VTdG9yZS5pbnNlcnRNYW55KHdvcmtzcGFjZXNUb0FkZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE9yQ3JlYXRlV29ya3NwYWNlKGxheWVyOiBWZWN0b3JMYXllciB8IEltYWdlTGF5ZXIpOiBXb3Jrc3BhY2UgfCB1bmRlZmluZWQge1xyXG4gICAgY29uc3Qgd29ya3NwYWNlID0gdGhpcy53b3Jrc3BhY2VTdG9yZS5nZXQobGF5ZXIuaWQpO1xyXG4gICAgaWYgKHdvcmtzcGFjZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChsYXllci5kYXRhU291cmNlIGluc3RhbmNlb2YgV0ZTRGF0YVNvdXJjZSAmJiBsYXllci5kYXRhU291cmNlLm9wdGlvbnMuZWRpdGlvbj8uZW5hYmxlZCAhPT0gdHJ1ZSkge1xyXG4gICAgICBjb25zdCB3ZnNXa3MgPSB0aGlzLndmc1dvcmtzcGFjZVNlcnZpY2UuY3JlYXRlV29ya3NwYWNlKGxheWVyIGFzIFZlY3RvckxheWVyLCB0aGlzLm1hcCk7XHJcbiAgICAgIHJldHVybiB3ZnNXa3M7XHJcbiAgICB9IGVsc2UgaWYgKGxheWVyLmRhdGFTb3VyY2UgaW5zdGFuY2VvZiBXTVNEYXRhU291cmNlICYmIGxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5lZGl0aW9uPy5lbmFibGVkICE9PSB0cnVlKSB7XHJcbiAgICAgIGlmICghbGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLnBhcmFtc1dGUykgeyByZXR1cm47IH1cclxuICAgICAgY29uc3Qgd21zV2tzID0gdGhpcy53bXNXb3Jrc3BhY2VTZXJ2aWNlLmNyZWF0ZVdvcmtzcGFjZShsYXllciBhcyBJbWFnZUxheWVyLCB0aGlzLm1hcCk7XHJcbiAgICAgIHdtc1drcz8uaW5SZXNvbHV0aW9uUmFuZ2UkLnN1YnNjcmliZSgoaW5SZXNvbHV0aW9uUmFuZ2UpID0+IHtcclxuICAgICAgICAobGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIFF1ZXJ5YWJsZURhdGFTb3VyY2VPcHRpb25zKS5xdWVyeWFibGUgPSAhaW5SZXNvbHV0aW9uUmFuZ2U7XHJcbiAgICAgICAgKHdtc1drcy5sYXllci5kYXRhU291cmNlLm9wdGlvbnMgYXMgUXVlcnlhYmxlRGF0YVNvdXJjZU9wdGlvbnMpLnF1ZXJ5YWJsZSA9IGluUmVzb2x1dGlvblJhbmdlO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHdtc1drcztcclxuICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgbGF5ZXIuZGF0YVNvdXJjZSBpbnN0YW5jZW9mIEZlYXR1cmVEYXRhU291cmNlICYmXHJcbiAgICAgICAgKGxheWVyIGFzIFZlY3RvckxheWVyKS5leHBvcnRhYmxlID09PSB0cnVlICYmXHJcbiAgICAgICAgbGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLmVkaXRpb24/LmVuYWJsZWQgIT09IHRydWUpIHtcclxuICAgICAgY29uc3QgZmVhdHVyZVdrcyA9IHRoaXMuZmVhdHVyZVdvcmtzcGFjZVNlcnZpY2UuY3JlYXRlV29ya3NwYWNlKGxheWVyIGFzIFZlY3RvckxheWVyLCB0aGlzLm1hcCk7XHJcbiAgICAgIHJldHVybiBmZWF0dXJlV2tzO1xyXG4gICAgfSBlbHNlIGlmIChsYXllci5kYXRhU291cmNlIGluc3RhbmNlb2YgV01TRGF0YVNvdXJjZSAmJiBsYXllci5kYXRhU291cmNlLm9wdGlvbnMuZWRpdGlvbj8uZW5hYmxlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICBjb25zdCBlZGl0aW9uV2tzID0gdGhpcy5lZGl0aW9uV29ya3NwYWNlU2VydmljZS5jcmVhdGVXb3Jrc3BhY2UobGF5ZXIgYXMgSW1hZ2VMYXllciwgdGhpcy5tYXApO1xyXG4gICAgICByZXR1cm4gZWRpdGlvbldrcztcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxheWVySXNFZGl0YWJsZShsYXllcjogTGF5ZXIpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGRhdGFTb3VyY2UgPSBsYXllci5kYXRhU291cmNlO1xyXG4gICAgaWYgKGRhdGFTb3VyY2UgaW5zdGFuY2VvZiBXRlNEYXRhU291cmNlKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgaWYgKGRhdGFTb3VyY2UgaW5zdGFuY2VvZiBGZWF0dXJlRGF0YVNvdXJjZSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICAgIGlmIChkYXRhU291cmNlIGluc3RhbmNlb2YgV01TRGF0YVNvdXJjZSkge1xyXG4gICAgICBjb25zdCBkYXRhU291cmNlT3B0aW9ucyA9IChkYXRhU291cmNlLm9wdGlvbnMgfHxcclxuICAgICAgICB7fSkgYXMgT2djRmlsdGVyYWJsZURhdGFTb3VyY2VPcHRpb25zO1xyXG4gICAgICByZXR1cm4gKGRhdGFTb3VyY2VPcHRpb25zLm9nY0ZpbHRlcnM/LmVuYWJsZWQgfHwgZGF0YVNvdXJjZS5vcHRpb25zLnBhcmFtc1dGUz8uZmVhdHVyZVR5cGVzICE9PSB1bmRlZmluZWQpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbn1cclxuIl19
@@ -9,9 +9,7 @@ export class IgoWorkspaceSelectorModule {
9
9
  }
10
10
  IgoWorkspaceSelectorModule.ɵfac = function IgoWorkspaceSelectorModule_Factory(t) { return new (t || IgoWorkspaceSelectorModule)(); };
11
11
  IgoWorkspaceSelectorModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoWorkspaceSelectorModule });
12
- IgoWorkspaceSelectorModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
13
- CommonModule
14
- ]] });
12
+ IgoWorkspaceSelectorModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule] });
15
13
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoWorkspaceSelectorModule, [{
16
14
  type: NgModule,
17
15
  args: [{
@@ -27,4 +25,4 @@ IgoWorkspaceSelectorModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports
27
25
  }]
28
26
  }], null, null); })();
29
27
  (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoWorkspaceSelectorModule, { declarations: [WorkspaceSelectorDirective], imports: [CommonModule], exports: [WorkspaceSelectorDirective] }); })();
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLXNlbGVjdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2Utc2VsZWN0b3Ivd29ya3NwYWNlLXNlbGVjdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFFNUU7O0dBRUc7QUFZSCxNQUFNLE9BQU8sMEJBQTBCOztvR0FBMUIsMEJBQTBCOzRFQUExQiwwQkFBMEI7Z0ZBVjVCO1lBQ1AsWUFBWTtTQUNiO3VGQVFVLDBCQUEwQjtjQVh0QyxRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNSLDBCQUEwQjtpQkFDMUI7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLDBCQUEwQjtpQkFDM0I7YUFDRjs7d0ZBQ1ksMEJBQTBCLG1CQUhuQywwQkFBMEIsYUFOMUIsWUFBWSxhQUdiLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcblxyXG5pbXBvcnQgeyBXb3Jrc3BhY2VTZWxlY3RvckRpcmVjdGl2ZSB9IGZyb20gJy4vd29ya3NwYWNlLXNlbGVjdG9yLmRpcmVjdGl2ZSc7XHJcblxyXG4vKipcclxuICogQGlnbm9yZVxyXG4gKi9cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgV29ya3NwYWNlU2VsZWN0b3JEaXJlY3RpdmVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgV29ya3NwYWNlU2VsZWN0b3JEaXJlY3RpdmVcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJZ29Xb3Jrc3BhY2VTZWxlY3Rvck1vZHVsZSB7fVxyXG4iXX0=
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya3NwYWNlLXNlbGVjdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS93b3Jrc3BhY2Utc2VsZWN0b3Ivd29ya3NwYWNlLXNlbGVjdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFFNUU7O0dBRUc7QUFZSCxNQUFNLE9BQU8sMEJBQTBCOztvR0FBMUIsMEJBQTBCOzRFQUExQiwwQkFBMEI7Z0ZBVG5DLFlBQVk7dUZBU0gsMEJBQTBCO2NBWHRDLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtpQkFDYjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1IsMEJBQTBCO2lCQUMxQjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osMEJBQTBCO2lCQUMzQjthQUNGOzt3RkFDWSwwQkFBMEIsbUJBSG5DLDBCQUEwQixhQU4xQixZQUFZLGFBR2IsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IFdvcmtzcGFjZVNlbGVjdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi93b3Jrc3BhY2Utc2VsZWN0b3IuZGlyZWN0aXZlJztcclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICBXb3Jrc3BhY2VTZWxlY3RvckRpcmVjdGl2ZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBXb3Jrc3BhY2VTZWxlY3RvckRpcmVjdGl2ZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb1dvcmtzcGFjZVNlbGVjdG9yTW9kdWxlIHt9XHJcbiJdfQ==