@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
@@ -1,249 +0,0 @@
1
- import { Watcher } from '@igo2/utils';
2
- import { LinkedProperties } from '../shared/layers/layer.interface';
3
- import { WMSDataSource } from '../../datasource/shared/datasources/wms-datasource';
4
- import { OgcFilterWriter } from '../../filter/shared/ogc-filter';
5
- import { first } from 'rxjs/operators';
6
- export class LayerSyncWatcher extends Watcher {
7
- constructor(layer, map) {
8
- super();
9
- this.ol = layer.ol;
10
- this.layer = layer;
11
- this.dataSource = layer.options.source;
12
- this.map = map;
13
- this.ogcFilterWriter = new OgcFilterWriter();
14
- }
15
- watch() {
16
- this.ol.on('propertychange', evt => this.transferCommonProperties(evt));
17
- if (this.dataSource.ogcFilters$) {
18
- this.ogcFilters$$ = this.dataSource.ogcFilters$
19
- .subscribe(ogcFilters => this.transferOgcFiltersProperties(ogcFilters));
20
- }
21
- if (this.dataSource.timeFilter$) {
22
- this.timeFilter$$ = this.dataSource.timeFilter$
23
- .subscribe(timeFilter => this.transferTimeFilterProperties(timeFilter));
24
- }
25
- this.syncChildLayers();
26
- }
27
- unwatch() {
28
- this.ol.un('propertychange', evt => this.transferCommonProperties(evt));
29
- if (this.ogcFilters$$) {
30
- this.ogcFilters$$.unsubscribe();
31
- }
32
- if (this.timeFilter$$) {
33
- this.timeFilter$$.unsubscribe();
34
- }
35
- }
36
- syncChildLayers() {
37
- // Force the sync the child layers with parent on the first load.
38
- if (!this.map) {
39
- return;
40
- }
41
- this.map.status$
42
- .pipe(first())
43
- .subscribe(() => {
44
- this.map.layers
45
- .filter(layer => { var _a; return (_a = layer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.links; })
46
- .map(layer => {
47
- layer.options.linkedLayers.links.map(link => {
48
- var _a, _b, _c, _d, _e, _f;
49
- if (((_a = link.properties) === null || _a === void 0 ? void 0 : _a.indexOf(LinkedProperties.VISIBLE)) !== -1) {
50
- layer.ol.set('visible', !(layer.visible), false);
51
- layer.ol.set('visible', !(layer.visible), false);
52
- layer.visible = layer.visible;
53
- }
54
- if (((_b = link.properties) === null || _b === void 0 ? void 0 : _b.indexOf(LinkedProperties.OPACITY)) !== -1) {
55
- const baseOpacity = layer.ol.get('opacity');
56
- layer.ol.set('opacity', 0, false);
57
- layer.ol.set('opacity', baseOpacity, false);
58
- layer.opacity = layer.opacity;
59
- }
60
- if (((_c = link.properties) === null || _c === void 0 ? void 0 : _c.indexOf(LinkedProperties.MINRESOLUTION)) !== -1) {
61
- const baseMinResolution = layer.ol.get('minResolution');
62
- layer.ol.set('minResolution', 0, false);
63
- layer.ol.set('minResolution', baseMinResolution, false);
64
- layer.minResolution = layer.minResolution;
65
- }
66
- if (((_d = link.properties) === null || _d === void 0 ? void 0 : _d.indexOf(LinkedProperties.MAXRESOLUTION)) !== -1) {
67
- const baseMaxResolution = layer.ol.get('maxResolution');
68
- layer.ol.set('maxResolution', 0, false);
69
- layer.ol.set('maxResolution', baseMaxResolution, false);
70
- layer.minResolution = layer.minResolution;
71
- }
72
- if (((_e = link.properties) === null || _e === void 0 ? void 0 : _e.indexOf(LinkedProperties.OGCFILTERS)) !== -1) {
73
- const ogcFilters$ = layer.dataSource.ogcFilters$;
74
- ogcFilters$.next(ogcFilters$.value);
75
- }
76
- if (((_f = link.properties) === null || _f === void 0 ? void 0 : _f.indexOf(LinkedProperties.TIMEFILTER)) !== -1) {
77
- const timeFilter$ = layer.dataSource.timeFilter$;
78
- timeFilter$.next(timeFilter$.value);
79
- }
80
- });
81
- });
82
- });
83
- }
84
- transferCommonProperties(layerChange) {
85
- const key = layerChange.key;
86
- const layerChangeProperties = layerChange.target.getProperties();
87
- const newValue = layerChangeProperties[key];
88
- if (['visible', 'opacity', 'minResolution', 'maxResolution'].indexOf(key) === -1) {
89
- return;
90
- }
91
- const linkedLayers = layerChangeProperties.linkedLayers;
92
- if (!linkedLayers) {
93
- return;
94
- }
95
- const currentLinkedId = linkedLayers.linkId;
96
- const currentLinks = linkedLayers.links;
97
- const isParentLayer = currentLinks ? true : false;
98
- if (isParentLayer) {
99
- // search for child layers
100
- const silent = true;
101
- currentLinks.map(link => {
102
- if (!link.properties || link.properties.indexOf(key) === -1) {
103
- return;
104
- }
105
- link.linkedIds.map(linkedId => {
106
- const layerToApply = this.map.layers.find(layer => { var _a; return ((_a = layer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.linkId) === linkedId; });
107
- if (layerToApply) {
108
- layerToApply.ol.set(key, newValue, silent);
109
- if (key === 'visible') {
110
- layerToApply.visible$.next(newValue);
111
- }
112
- }
113
- });
114
- });
115
- }
116
- else {
117
- // search for parent layer
118
- const silent = false;
119
- this.map.layers.map(layer => {
120
- var _a;
121
- if ((_a = layer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.links) {
122
- layer.options.linkedLayers.links.map(l => {
123
- if (l.properties && l.properties.indexOf(key) !== -1 &&
124
- l.bidirectionnal !== false && l.linkedIds.indexOf(currentLinkedId) !== -1) {
125
- layer.ol.set(key, newValue, silent);
126
- if (key === 'visible') {
127
- layer.visible$.next(newValue);
128
- }
129
- }
130
- });
131
- }
132
- });
133
- }
134
- }
135
- transferOgcFiltersProperties(ogcFilters) {
136
- const linkedLayers = this.ol.getProperties().linkedLayers;
137
- if (!linkedLayers) {
138
- return;
139
- }
140
- const currentLinkedId = linkedLayers.linkId;
141
- const currentLinks = linkedLayers.links;
142
- const isParentLayer = currentLinks ? true : false;
143
- if (isParentLayer) {
144
- // search for child layers
145
- currentLinks.map(link => {
146
- if (!link.properties || link.properties.indexOf(LinkedProperties.OGCFILTERS) === -1) {
147
- return;
148
- }
149
- link.linkedIds.map(linkedId => {
150
- const layerToApply = this.map.layers.find(layer => { var _a; return ((_a = layer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.linkId) === linkedId; });
151
- if (layerToApply) {
152
- const layerType = layerToApply.ol.getProperties().sourceOptions.type;
153
- layerToApply.dataSource.setOgcFilters(ogcFilters, false);
154
- if (layerType === 'wfs') {
155
- layerToApply.ol.getSource().refresh();
156
- }
157
- if (layerType === 'wms') {
158
- let appliedOgcFilter;
159
- if (this.ol.getProperties().sourceOptions.type === 'wfs') {
160
- appliedOgcFilter = this.ogcFilterWriter.handleOgcFiltersAppliedValue(this.layer.dataSource.options, this.dataSource.options.fieldNameGeometry, undefined, this.map.viewController.getOlProjection());
161
- }
162
- else if (this.ol.getProperties().sourceOptions.type === 'wms') {
163
- appliedOgcFilter = this.dataSource.ol.getParams().FILTER;
164
- }
165
- layerToApply.dataSource.ol.updateParams({ FILTER: appliedOgcFilter });
166
- }
167
- }
168
- });
169
- });
170
- }
171
- else {
172
- // search for parent layer
173
- this.map.layers.map(layer => {
174
- var _a;
175
- if ((_a = layer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.links) {
176
- layer.options.linkedLayers.links.map(l => {
177
- if (l.properties && l.properties.indexOf(LinkedProperties.OGCFILTERS) !== -1 &&
178
- l.bidirectionnal !== false && l.linkedIds.indexOf(currentLinkedId) !== -1) {
179
- const layerType = layer.ol.getProperties().sourceOptions.type;
180
- if (layerType === 'wfs') {
181
- layer.dataSource.setOgcFilters(ogcFilters, true);
182
- layer.ol.getSource().refresh();
183
- }
184
- if (layerType === 'wms') {
185
- let appliedOgcFilter;
186
- if (this.ol.getProperties().sourceOptions.type === 'wfs') {
187
- appliedOgcFilter = this.ogcFilterWriter.handleOgcFiltersAppliedValue(layer.dataSource.options, this.dataSource.options.fieldNameGeometry, undefined, this.map.viewController.getOlProjection());
188
- }
189
- else if (this.ol.getProperties().sourceOptions.type === 'wms') {
190
- appliedOgcFilter = this.dataSource.ol.getParams().FILTER;
191
- }
192
- layer.dataSource.ol.updateParams({ FILTER: appliedOgcFilter });
193
- layer.dataSource.setOgcFilters(ogcFilters, true);
194
- }
195
- }
196
- });
197
- }
198
- });
199
- }
200
- }
201
- transferTimeFilterProperties(timeFilter) {
202
- const linkedLayers = this.ol.getProperties().linkedLayers;
203
- if (!linkedLayers) {
204
- return;
205
- }
206
- const currentLinkedId = linkedLayers.linkId;
207
- const currentLinks = linkedLayers.links;
208
- const isParentLayer = currentLinks ? true : false;
209
- if (isParentLayer) {
210
- // search for child layers
211
- currentLinks.map(link => {
212
- if (!link.properties || link.properties.indexOf(LinkedProperties.TIMEFILTER) === -1) {
213
- return;
214
- }
215
- link.linkedIds.map(linkedId => {
216
- const childLayer = this.map.layers.find(layer => {
217
- var _a;
218
- return layer.dataSource instanceof WMSDataSource &&
219
- ((_a = layer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.linkId) === linkedId;
220
- });
221
- if (childLayer) {
222
- childLayer.dataSource.setTimeFilter(timeFilter, false);
223
- const appliedTimeFilter = this.ol.getSource().getParams().TIME;
224
- childLayer.dataSource.ol.updateParams({ TIME: appliedTimeFilter });
225
- }
226
- });
227
- });
228
- }
229
- else {
230
- // search for parent layer
231
- this.map.layers
232
- .filter(layer => layer.dataSource instanceof WMSDataSource)
233
- .map(parentLayer => {
234
- var _a;
235
- if ((_a = parentLayer.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.links) {
236
- parentLayer.options.linkedLayers.links.map(l => {
237
- if (l.properties && l.properties.indexOf(LinkedProperties.TIMEFILTER) !== -1 &&
238
- l.bidirectionnal !== false && l.linkedIds.indexOf(currentLinkedId) !== -1) {
239
- const appliedTimeFilter = this.ol.getSource().getParams().TIME;
240
- parentLayer.dataSource.ol.updateParams({ TIME: appliedTimeFilter });
241
- parentLayer.dataSource.setTimeFilter(timeFilter, true);
242
- }
243
- });
244
- }
245
- });
246
- }
247
- }
248
- }
249
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJTeW5jLXdhdGNoZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci91dGlscy9sYXllclN5bmMtd2F0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBTXRDLE9BQU8sRUFBYyxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRWhGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFHakUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3ZDLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxPQUFPO0lBVXpDLFlBQVksS0FBWSxFQUFFLEdBQVc7UUFDakMsS0FBSyxFQUFFLENBQUM7UUFDUixJQUFJLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUN2QyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNmLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztJQUNqRCxDQUFDO0lBRVMsS0FBSztRQUVYLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSyxJQUFJLENBQUMsVUFBc0MsQ0FBQyxXQUFXLEVBQUU7WUFDMUQsSUFBSSxDQUFDLFlBQVksR0FBSSxJQUFJLENBQUMsVUFBc0MsQ0FBQyxX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QUFJLENBQUMsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDOzRCQUN4RSxDQUFDLENBQUMsY0FBYyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTs0QkFDM0UsTUFBTSxpQkFBaUIsR0FBSSxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBdUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUM7NEJBQ3BGLFdBQVcsQ0FBQyxVQUE0QixDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDOzRCQUN0RixXQUFXLENBQUMsVUFBdUMsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO3lCQUN4RjtvQkFDTCxDQUFDLENBQUMsQ0FBQztpQkFDTjtZQUNMLENBQUMsQ0FBQyxDQUFDO1NBQ1Y7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBXYXRjaGVyIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xyXG5pbXBvcnQgeyBMYXllciB9IGZyb20gJy4uL3NoYXJlZC9sYXllcnMvbGF5ZXInO1xyXG5pbXBvcnQgb2xMYXllciBmcm9tICdvbC9sYXllci9MYXllcic7XHJcbmltcG9ydCBvbFNvdXJjZSBmcm9tICdvbC9zb3VyY2UvU291cmNlJztcclxuaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2RhdGFzb3VyY2UnO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcCc7XHJcbmltcG9ydCB7IExheWVyc0xpbmssIExpbmtlZFByb3BlcnRpZXMgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzL2xheWVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IE9nY0ZpbHRlcmFibGVEYXRhU291cmNlLCBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9maWx0ZXIvc2hhcmVkL29nYy1maWx0ZXIuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgV01TRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3dtcy1kYXRhc291cmNlJztcclxuaW1wb3J0IHsgT2djRmlsdGVyV3JpdGVyIH0gZnJvbSAnLi4vLi4vZmlsdGVyL3NoYXJlZC9vZ2MtZmlsdGVyJztcclxuaW1wb3J0IHsgVGltZUZpbHRlcmFibGVEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vZmlsdGVyL3NoYXJlZC90aW1lLWZpbHRlci5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlyc3QgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCBvbFNvdXJjZUltYWdlV01TIGZyb20gJ29sL3NvdXJjZS9JbWFnZVdNUyc7XHJcblxyXG5leHBvcnQgY2xhc3MgTGF5ZXJTeW5jV2F0Y2hlciBleHRlbmRzIFdhdGNoZXIge1xyXG4gICAgcHJpdmF0ZSBvZ2NGaWx0ZXJzJCQ6IFN1YnNjcmlwdGlvbjtcclxuICAgIHByaXZhdGUgdGltZUZpbHRlciQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgcHJpdmF0ZSBvbDogb2xMYXllcjxvbFNvdXJjZT47XHJcbiAgICBwcml2YXRlIGxheWVyOiBMYXllcjtcclxuICAgIHByaXZhdGUgZGF0YVNvdXJjZTogRGF0YVNvdXJjZTtcclxuICAgIHByaXZhdGUgbWFwOiBJZ29NYXA7XHJcbiAgICBwcml2YXRlIG9nY0ZpbHRlcldyaXRlcjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihsYXllcjogTGF5ZXIsIG1hcDogSWdvTWFwKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICB0aGlzLm9sID0gbGF5ZXIub2w7XHJcbiAgICAgICAgdGhpcy5sYXllciA9IGxheWVyO1xyXG4gICAgICAgIHRoaXMuZGF0YVNvdXJjZSA9IGxheWVyLm9wdGlvbnMuc291cmNlO1xyXG4gICAgICAgIHRoaXMubWFwID0gbWFwO1xyXG4gICAgICAgIHRoaXMub2djRmlsdGVyV3JpdGVyID0gbmV3IE9nY0ZpbHRlcldyaXRlcigpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCB3YXRjaCgpIHtcclxuXHJcbiAgICAgICAgdGhpcy5vbC5vbigncHJvcGVydHljaGFuZ2UnLCBldnQgPT4gdGhpcy50cmFuc2ZlckNvbW1vblByb3BlcnRpZXMoZXZ0KSk7XHJcbiAgICAgICAgaWYgKCh0aGlzLmRhdGFTb3VyY2UgYXMgT2djRmlsdGVyYWJsZURhdGFTb3VyY2UpLm9nY0ZpbHRlcnMkKSB7XHJcbiAgICAgICAgICAgIHRoaXMub2djRmlsdGVycyQkID0gKHRoaXMuZGF0YVNvdXJjZSBhcyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZSkub2djRmlsdGVycyRcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUob2djRmlsdGVycyA9PiB0aGlzLnRyYW5zZmVyT2djRmlsdGVyc1Byb3BlcnRpZXMob2djRmlsdGVycykpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoKHRoaXMuZGF0YVNvdXJjZSBhcyBUaW1lRmlsdGVyYWJsZURhdGFTb3VyY2UpLnRpbWVGaWx0ZXIkKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGltZUZpbHRlciQkID0gKHRoaXMuZGF0YVNvdXJjZSBhcyBUaW1lRmlsdGVyYWJsZURhdGFTb3VyY2UpLnRpbWVGaWx0ZXIkXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKHRpbWVGaWx0ZXIgPT4gdGhpcy50cmFuc2ZlclRpbWVGaWx0ZXJQcm9wZXJ0aWVzKHRpbWVGaWx0ZXIpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zeW5jQ2hpbGRMYXllcnMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgdW53YXRjaCgpIHtcclxuICAgICAgICB0aGlzLm9sLnVuKCdwcm9wZXJ0eWNoYW5nZScsIGV2dCA9PiB0aGlzLnRyYW5zZmVyQ29tbW9uUHJvcGVydGllcyhldnQpKTtcclxuICAgICAgICBpZiAodGhpcy5vZ2NGaWx0ZXJzJCQpIHsgdGhpcy5vZ2NGaWx0ZXJzJCQudW5zdWJzY3JpYmUoKTsgfVxyXG4gICAgICAgIGlmICh0aGlzLnRpbWVGaWx0ZXIkJCkgeyB0aGlzLnRpbWVGaWx0ZXIkJC51bnN1YnNjcmliZSgpOyB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgc3luY0NoaWxkTGF5ZXJzKCkge1xyXG4gICAgICAgIC8vIEZvcmNlIHRoZSBzeW5jIHRoZSBjaGlsZCBsYXllcnMgd2l0aCBwYXJlbnQgb24gdGhlIGZpcnN0IGxvYWQuXHJcbiAgICAgICAgaWYgKCF0aGlzLm1hcCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMubWFwLnN0YXR1cyRcclxuICAgICAgICAgICAgLnBpcGUoZmlyc3QoKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm1hcC5sYXllcnNcclxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGxheWVyID0+IGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzPy5saW5rcylcclxuICAgICAgICAgICAgICAgICAgICAubWFwKGxheWVyID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua3MubWFwKGxpbmsgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpbmsucHJvcGVydGllcz8uaW5kZXhPZihMaW5rZWRQcm9wZXJ0aWVzLlZJU0lCTEUpICE9PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyLm9sLnNldCgndmlzaWJsZScsICEobGF5ZXIudmlzaWJsZSksIGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vbC5zZXQoJ3Zpc2libGUnLCAhKGxheWVyLnZpc2libGUpLCBmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIudmlzaWJsZSA9IGxheWVyLnZpc2libGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobGluay5wcm9wZXJ0aWVzPy5pbmRleE9mKExpbmtlZFByb3BlcnRpZXMuT1BBQ0lUWSkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYmFzZU9wYWNpdHkgPSBsYXllci5vbC5nZXQoJ29wYWNpdHknKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vbC5zZXQoJ29wYWNpdHknLCAwLCBmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIub2wuc2V0KCdvcGFjaXR5JywgYmFzZU9wYWNpdHksIGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vcGFjaXR5ID0gbGF5ZXIub3BhY2l0eTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaW5rLnByb3BlcnRpZXM/LmluZGV4T2YoTGlua2VkUHJvcGVydGllcy5NSU5SRVNPTFVUSU9OKSAhPT0gLTEpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBiYXNlTWluUmVzb2x1dGlvbiA9IGxheWVyLm9sLmdldCgnbWluUmVzb2x1dGlvbicpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyLm9sLnNldCgnbWluUmVzb2x1dGlvbicsIDAsIGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vbC5zZXQoJ21pblJlc29sdXRpb24nLCBiYXNlTWluUmVzb2x1dGlvbiwgZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyLm1pblJlc29sdXRpb24gPSBsYXllci5taW5SZXNvbHV0aW9uO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpbmsucHJvcGVydGllcz8uaW5kZXhPZihMaW5rZWRQcm9wZXJ0aWVzLk1BWFJFU09MVVRJT04pICE9PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJhc2VNYXhSZXNvbHV0aW9uID0gbGF5ZXIub2wuZ2V0KCdtYXhSZXNvbHV0aW9uJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIub2wuc2V0KCdtYXhSZXNvbHV0aW9uJywgMCwgZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyLm9sLnNldCgnbWF4UmVzb2x1dGlvbicsIGJhc2VNYXhSZXNvbHV0aW9uLCBmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIubWluUmVzb2x1dGlvbiA9IGxheWVyLm1pblJlc29sdXRpb247XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobGluay5wcm9wZXJ0aWVzPy5pbmRleE9mKExpbmtlZFByb3BlcnRpZXMuT0dDRklMVEVSUykgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb2djRmlsdGVycyQgPSAobGF5ZXIuZGF0YVNvdXJjZSBhcyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZSkub2djRmlsdGVycyQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2djRmlsdGVycyQubmV4dChvZ2NGaWx0ZXJzJC52YWx1ZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobGluay5wcm9wZXJ0aWVzPy5pbmRleE9mKExpbmtlZFByb3BlcnRpZXMuVElNRUZJTFRFUikgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGltZUZpbHRlciQgPSAobGF5ZXIuZGF0YVNvdXJjZSBhcyBUaW1lRmlsdGVyYWJsZURhdGFTb3VyY2UpLnRpbWVGaWx0ZXIkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVGaWx0ZXIkLm5leHQodGltZUZpbHRlciQudmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB0cmFuc2ZlckNvbW1vblByb3BlcnRpZXMobGF5ZXJDaGFuZ2UpIHtcclxuICAgICAgICBjb25zdCBrZXkgPSBsYXllckNoYW5nZS5rZXk7XHJcbiAgICAgICAgY29uc3QgbGF5ZXJDaGFuZ2VQcm9wZXJ0aWVzID0gbGF5ZXJDaGFuZ2UudGFyZ2V0LmdldFByb3BlcnRpZXMoKTtcclxuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IGxheWVyQ2hhbmdlUHJvcGVydGllc1trZXldO1xyXG5cclxuICAgICAgICBpZiAoWyd2aXNpYmxlJywgJ29wYWNpdHknLCAnbWluUmVzb2x1dGlvbicsICdtYXhSZXNvbHV0aW9uJ10uaW5kZXhPZihrZXkpID09PSAtMSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGxpbmtlZExheWVycyA9IGxheWVyQ2hhbmdlUHJvcGVydGllcy5saW5rZWRMYXllcnMgYXMgTGF5ZXJzTGluaztcclxuICAgICAgICBpZiAoIWxpbmtlZExheWVycykge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGN1cnJlbnRMaW5rZWRJZCA9IGxpbmtlZExheWVycy5saW5rSWQ7XHJcbiAgICAgICAgY29uc3QgY3VycmVudExpbmtzID0gbGlua2VkTGF5ZXJzLmxpbmtzO1xyXG4gICAgICAgIGNvbnN0IGlzUGFyZW50TGF5ZXIgPSBjdXJyZW50TGlua3MgPyB0cnVlIDogZmFsc2U7XHJcblxyXG4gICAgICAgIGlmIChpc1BhcmVudExheWVyKSB7XHJcbiAgICAgICAgICAgIC8vIHNlYXJjaCBmb3IgY2hpbGQgbGF5ZXJzXHJcbiAgICAgICAgICAgIGNvbnN0IHNpbGVudCA9IHRydWU7XHJcbiAgICAgICAgICAgIGN1cnJlbnRMaW5rcy5tYXAobGluayA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWxpbmsucHJvcGVydGllcyB8fCBsaW5rLnByb3BlcnRpZXMuaW5kZXhPZihrZXkpID09PSAtMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGxpbmsubGlua2VkSWRzLm1hcChsaW5rZWRJZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgbGF5ZXJUb0FwcGx5ID0gdGhpcy5tYXAubGF5ZXJzLmZpbmQobGF5ZXIgPT4gbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnM/LmxpbmtJZCA9PT0gbGlua2VkSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChsYXllclRvQXBwbHkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXJUb0FwcGx5Lm9sLnNldChrZXksIG5ld1ZhbHVlLCBzaWxlbnQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoa2V5ID09PSAndmlzaWJsZScpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyVG9BcHBseS52aXNpYmxlJC5uZXh0KG5ld1ZhbHVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyBzZWFyY2ggZm9yIHBhcmVudCBsYXllclxyXG4gICAgICAgICAgICBjb25zdCBzaWxlbnQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5tYXAubGF5ZXJzLm1hcChsYXllciA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAobGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnM/LmxpbmtzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua3MubWFwKGwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobC5wcm9wZXJ0aWVzICYmIGwucHJvcGVydGllcy5pbmRleE9mKGtleSkgIT09IC0xICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsLmJpZGlyZWN0aW9ubmFsICE9PSBmYWxzZSAmJiBsLmxpbmtlZElkcy5pbmRleE9mKGN1cnJlbnRMaW5rZWRJZCkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vbC5zZXQoa2V5LCBuZXdWYWx1ZSwgc2lsZW50KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChrZXkgPT09ICd2aXNpYmxlJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxheWVyLnZpc2libGUkLm5leHQobmV3VmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHRyYW5zZmVyT2djRmlsdGVyc1Byb3BlcnRpZXMob2djRmlsdGVycykge1xyXG4gICAgICAgIGNvbnN0IGxpbmtlZExheWVycyA9IHRoaXMub2wuZ2V0UHJvcGVydGllcygpLmxpbmtlZExheWVycyBhcyBMYXllcnNMaW5rO1xyXG4gICAgICAgIGlmICghbGlua2VkTGF5ZXJzKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgY3VycmVudExpbmtlZElkID0gbGlua2VkTGF5ZXJzLmxpbmtJZDtcclxuICAgICAgICBjb25zdCBjdXJyZW50TGlua3MgPSBsaW5rZWRMYXllcnMubGlua3M7XHJcbiAgICAgICAgY29uc3QgaXNQYXJlbnRMYXllciA9IGN1cnJlbnRMaW5rcyA/IHRydWUgOiBmYWxzZTtcclxuICAgICAgICBpZiAoaXNQYXJlbnRMYXllcikge1xyXG4gICAgICAgICAgICAvLyBzZWFyY2ggZm9yIGNoaWxkIGxheWVyc1xyXG4gICAgICAgICAgICBjdXJyZW50TGlua3MubWFwKGxpbmsgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFsaW5rLnByb3BlcnRpZXMgfHwgbGluay5wcm9wZXJ0aWVzLmluZGV4T2YoTGlua2VkUHJvcGVydGllcy5PR0NGSUxURVJTKSA9PT0gLTEpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsaW5rLmxpbmtlZElkcy5tYXAobGlua2VkSWQgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGxheWVyVG9BcHBseSA9IHRoaXMubWFwLmxheWVycy5maW5kKGxheWVyID0+IGxheWVyLm9wdGlvbnMubGlua2VkTGF5ZXJzPy5saW5rSWQgPT09IGxpbmtlZElkKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAobGF5ZXJUb0FwcGx5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGxheWVyVHlwZSA9IGxheWVyVG9BcHBseS5vbC5nZXRQcm9wZXJ0aWVzKCkuc291cmNlT3B0aW9ucy50eXBlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAobGF5ZXJUb0FwcGx5LmRhdGFTb3VyY2UgYXMgT2djRmlsdGVyYWJsZURhdGFTb3VyY2UpLnNldE9nY0ZpbHRlcnMob2djRmlsdGVycywgZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobGF5ZXJUeXBlID09PSAnd2ZzJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXJUb0FwcGx5Lm9sLmdldFNvdXJjZSgpLnJlZnJlc2goKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobGF5ZXJUeXBlID09PSAnd21zJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGFwcGxpZWRPZ2NGaWx0ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5vbC5nZXRQcm9wZXJ0aWVzKCkuc291cmNlT3B0aW9ucy50eXBlID09PSAnd2ZzJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpZWRPZ2NGaWx0ZXIgPSB0aGlzLm9nY0ZpbHRlcldyaXRlci5oYW5kbGVPZ2NGaWx0ZXJzQXBwbGllZFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZU9wdGlvbnMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0aGlzLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBhbnkpLmZpZWxkTmFtZUdlb21ldHJ5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWFwLnZpZXdDb250cm9sbGVyLmdldE9sUHJvamVjdGlvbigpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5vbC5nZXRQcm9wZXJ0aWVzKCkuc291cmNlT3B0aW9ucy50eXBlID09PSAnd21zJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpZWRPZ2NGaWx0ZXIgPSAodGhpcy5kYXRhU291cmNlIGFzIFdNU0RhdGFTb3VyY2UpLm9sLmdldFBhcmFtcygpLkZJTFRFUjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsYXllclRvQXBwbHkuZGF0YVNvdXJjZSBhcyBXTVNEYXRhU291cmNlKS5vbC51cGRhdGVQYXJhbXMoeyBGSUxURVI6IGFwcGxpZWRPZ2NGaWx0ZXIgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgLy8gc2VhcmNoIGZvciBwYXJlbnQgbGF5ZXJcclxuICAgICAgICAgICAgdGhpcy5tYXAubGF5ZXJzLm1hcChsYXllciA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAobGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnM/LmxpbmtzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua3MubWFwKGwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAobC5wcm9wZXJ0aWVzICYmIGwucHJvcGVydGllcy5pbmRleE9mKExpbmtlZFByb3BlcnRpZXMuT0dDRklMVEVSUykgIT09IC0xICYmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsLmJpZGlyZWN0aW9ubmFsICE9PSBmYWxzZSAmJiBsLmxpbmtlZElkcy5pbmRleE9mKGN1cnJlbnRMaW5rZWRJZCkgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBsYXllclR5cGUgPSBsYXllci5vbC5nZXRQcm9wZXJ0aWVzKCkuc291cmNlT3B0aW9ucy50eXBlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxheWVyVHlwZSA9PT0gJ3dmcycpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobGF5ZXIuZGF0YVNvdXJjZSBhcyBPZ2NGaWx0ZXJhYmxlRGF0YVNvdXJjZSkuc2V0T2djRmlsdGVycyhvZ2NGaWx0ZXJzLCB0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vbC5nZXRTb3VyY2UoKS5yZWZyZXNoKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobGF5ZXJUeXBlID09PSAnd21zJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBhcHBsaWVkT2djRmlsdGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm9sLmdldFByb3BlcnRpZXMoKS5zb3VyY2VPcHRpb25zLnR5cGUgPT09ICd3ZnMnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpZWRPZ2NGaWx0ZXIgPSB0aGlzLm9nY0ZpbHRlcldyaXRlci5oYW5kbGVPZ2NGaWx0ZXJzQXBwbGllZFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zIGFzIE9nY0ZpbHRlcmFibGVEYXRhU291cmNlT3B0aW9ucyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0aGlzLmRhdGFTb3VyY2Uub3B0aW9ucyBhcyBhbnkpLmZpZWxkTmFtZUdlb21ldHJ5LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tYXAudmlld0NvbnRyb2xsZXIuZ2V0T2xQcm9qZWN0aW9uKClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLm9sLmdldFByb3BlcnRpZXMoKS5zb3VyY2VPcHRpb25zLnR5cGUgPT09ICd3bXMnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGxpZWRPZ2NGaWx0ZXIgPSAodGhpcy5kYXRhU291cmNlIGFzIFdNU0RhdGFTb3VyY2UpLm9sLmdldFBhcmFtcygpLkZJTFRFUjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGxheWVyLmRhdGFTb3VyY2UgYXMgV01TRGF0YVNvdXJjZSkub2wudXBkYXRlUGFyYW1zKHsgRklMVEVSOiBhcHBsaWVkT2djRmlsdGVyIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChsYXllci5kYXRhU291cmNlIGFzIE9nY0ZpbHRlcmFibGVEYXRhU291cmNlKS5zZXRPZ2NGaWx0ZXJzKG9nY0ZpbHRlcnMsIHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHRyYW5zZmVyVGltZUZpbHRlclByb3BlcnRpZXModGltZUZpbHRlcikge1xyXG4gICAgICAgIGNvbnN0IGxpbmtlZExheWVycyA9IHRoaXMub2wuZ2V0UHJvcGVydGllcygpLmxpbmtlZExheWVycyBhcyBMYXllcnNMaW5rO1xyXG4gICAgICAgIGlmICghbGlua2VkTGF5ZXJzKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgY3VycmVudExpbmtlZElkID0gbGlua2VkTGF5ZXJzLmxpbmtJZDtcclxuICAgICAgICBjb25zdCBjdXJyZW50TGlua3MgPSBsaW5rZWRMYXllcnMubGlua3M7XHJcbiAgICAgICAgY29uc3QgaXNQYXJlbnRMYXllciA9IGN1cnJlbnRMaW5rcyA/IHRydWUgOiBmYWxzZTtcclxuICAgICAgICBpZiAoaXNQYXJlbnRMYXllcikge1xyXG4gICAgICAgICAgICAvLyBzZWFyY2ggZm9yIGNoaWxkIGxheWVyc1xyXG4gICAgICAgICAgICBjdXJyZW50TGlua3MubWFwKGxpbmsgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKCFsaW5rLnByb3BlcnRpZXMgfHwgbGluay5wcm9wZXJ0aWVzLmluZGV4T2YoTGlua2VkUHJvcGVydGllcy5USU1FRklMVEVSKSA9PT0gLTEpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsaW5rLmxpbmtlZElkcy5tYXAobGlua2VkSWQgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoaWxkTGF5ZXIgPSB0aGlzLm1hcC5sYXllcnMuZmluZChsYXllciA9PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYXllci5kYXRhU291cmNlIGluc3RhbmNlb2YgV01TRGF0YVNvdXJjZSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsYXllci5vcHRpb25zLmxpbmtlZExheWVycz8ubGlua0lkID09PSBsaW5rZWRJZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNoaWxkTGF5ZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNoaWxkTGF5ZXIuZGF0YVNvdXJjZSBhcyBUaW1lRmlsdGVyYWJsZURhdGFTb3VyY2UpLnNldFRpbWVGaWx0ZXIodGltZUZpbHRlciwgZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhcHBsaWVkVGltZUZpbHRlciA9ICh0aGlzLm9sLmdldFNvdXJjZSgpIGFzIG9sU291cmNlSW1hZ2VXTVMpLmdldFBhcmFtcygpLlRJTUU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjaGlsZExheWVyLmRhdGFTb3VyY2UgYXMgV01TRGF0YVNvdXJjZSkub2wudXBkYXRlUGFyYW1zKHsgVElNRTogYXBwbGllZFRpbWVGaWx0ZXIgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIHNlYXJjaCBmb3IgcGFyZW50IGxheWVyXHJcbiAgICAgICAgICAgIHRoaXMubWFwLmxheWVyc1xyXG4gICAgICAgICAgICAgICAgLmZpbHRlcihsYXllciA9PiBsYXllci5kYXRhU291cmNlIGluc3RhbmNlb2YgV01TRGF0YVNvdXJjZSlcclxuICAgICAgICAgICAgICAgIC5tYXAocGFyZW50TGF5ZXIgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChwYXJlbnRMYXllci5vcHRpb25zLmxpbmtlZExheWVycz8ubGlua3MpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50TGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua3MubWFwKGwgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGwucHJvcGVydGllcyAmJiBsLnByb3BlcnRpZXMuaW5kZXhPZihMaW5rZWRQcm9wZXJ0aWVzLlRJTUVGSUxURVIpICE9PSAtMSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGwuYmlkaXJlY3Rpb25uYWwgIT09IGZhbHNlICYmIGwubGlua2VkSWRzLmluZGV4T2YoY3VycmVudExpbmtlZElkKSAhPT0gLTEpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhcHBsaWVkVGltZUZpbHRlciA9ICh0aGlzLm9sLmdldFNvdXJjZSgpIGFzIG9sU291cmNlSW1hZ2VXTVMpLmdldFBhcmFtcygpLlRJTUU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhcmVudExheWVyLmRhdGFTb3VyY2UgYXMgV01TRGF0YVNvdXJjZSkub2wudXBkYXRlUGFyYW1zKHsgVElNRTogYXBwbGllZFRpbWVGaWx0ZXIgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBhcmVudExheWVyLmRhdGFTb3VyY2UgYXMgVGltZUZpbHRlcmFibGVEYXRhU291cmNlKS5zZXRUaW1lRmlsdGVyKHRpbWVGaWx0ZXIsIHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,27 +0,0 @@
1
- /**
2
- * Get all the layers legend
3
- * @return Array of legend
4
- */
5
- export function getLayersLegends(layers, view) {
6
- const legends = [];
7
- for (const layer of layers) {
8
- const legendOptions = layer.options.legendOptions;
9
- if (layer.visible === false) {
10
- continue;
11
- }
12
- const legendUrls = layer.dataSource.getLegend(undefined, view) || [];
13
- for (const legendUrl of legendUrls) {
14
- if (legendUrl.url === undefined) {
15
- continue;
16
- }
17
- // Add legend info to the list
18
- legends.push({
19
- title: layer.title || '',
20
- url: legendUrl.url,
21
- display: (legendOptions === null || legendOptions === void 0 ? void 0 : legendOptions.display) === undefined ? true : legendOptions.display
22
- });
23
- }
24
- }
25
- return legends;
26
- }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0cHV0TGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbGF5ZXIvdXRpbHMvb3V0cHV0TGVnZW5kLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxNQUFlLEVBQUUsSUFBMkI7SUFDM0UsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBRW5CLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFO1FBQzFCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDO1FBQ2xELElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxLQUFLLEVBQUU7WUFBRSxTQUFTO1NBQUU7UUFFMUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyRSxLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRTtZQUNsQyxJQUFJLFNBQVMsQ0FBQyxHQUFHLEtBQUssU0FBUyxFQUFFO2dCQUFFLFNBQVM7YUFBRTtZQUU5Qyw4QkFBOEI7WUFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDWCxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFO2dCQUN4QixHQUFHLEVBQUUsU0FBUyxDQUFDLEdBQUc7Z0JBQ2xCLE9BQU8sRUFBRSxDQUFBLGFBQWEsYUFBYixhQUFhLHVCQUFiLGFBQWEsQ0FBRSxPQUFPLE1BQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPO2FBQzdFLENBQUMsQ0FBQztTQUNKO0tBQ0Y7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGF5ZXIgfSBmcm9tICcuLi9zaGFyZWQvbGF5ZXJzL2xheWVyJztcclxuaW1wb3J0IHsgTGVnZW5kTWFwVmlld09wdGlvbnMsIE91dHB1dExheWVyTGVnZW5kIH0gZnJvbSAnLi4vc2hhcmVkL2xheWVycy9sYXllci5pbnRlcmZhY2UnO1xyXG5cclxuLyoqXHJcbiAqIEdldCBhbGwgdGhlIGxheWVycyBsZWdlbmRcclxuICogQHJldHVybiBBcnJheSBvZiBsZWdlbmRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMYXllcnNMZWdlbmRzKGxheWVyczogTGF5ZXJbXSwgdmlldz86IExlZ2VuZE1hcFZpZXdPcHRpb25zKTogT3V0cHV0TGF5ZXJMZWdlbmRbXSB7XHJcbiAgY29uc3QgbGVnZW5kcyA9IFtdO1xyXG5cclxuICBmb3IgKGNvbnN0IGxheWVyIG9mIGxheWVycykge1xyXG4gICAgY29uc3QgbGVnZW5kT3B0aW9ucyA9IGxheWVyLm9wdGlvbnMubGVnZW5kT3B0aW9ucztcclxuICAgIGlmIChsYXllci52aXNpYmxlID09PSBmYWxzZSkgeyBjb250aW51ZTsgfVxyXG5cclxuICAgIGNvbnN0IGxlZ2VuZFVybHMgPSBsYXllci5kYXRhU291cmNlLmdldExlZ2VuZCh1bmRlZmluZWQsIHZpZXcpIHx8IFtdO1xyXG4gICAgZm9yIChjb25zdCBsZWdlbmRVcmwgb2YgbGVnZW5kVXJscykge1xyXG4gICAgICBpZiAobGVnZW5kVXJsLnVybCA9PT0gdW5kZWZpbmVkKSB7IGNvbnRpbnVlOyB9XHJcblxyXG4gICAgICAvLyBBZGQgbGVnZW5kIGluZm8gdG8gdGhlIGxpc3RcclxuICAgICAgbGVnZW5kcy5wdXNoKHtcclxuICAgICAgICB0aXRsZTogbGF5ZXIudGl0bGUgfHwgJycsXHJcbiAgICAgICAgdXJsOiBsZWdlbmRVcmwudXJsLFxyXG4gICAgICAgIGRpc3BsYXk6IGxlZ2VuZE9wdGlvbnM/LmRpc3BsYXkgPT09IHVuZGVmaW5lZCA/IHRydWUgOiBsZWdlbmRPcHRpb25zLmRpc3BsYXlcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gbGVnZW5kcztcclxufVxyXG4iXX0=
@@ -1,105 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { Media } from '@igo2/core';
3
- import { baseLayersSwitcherSlideInOut } from './baselayers-switcher.animation';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@igo2/core";
6
- function BaseLayersSwitcherComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
7
- i0.ɵɵelementStart(0, "div", 6);
8
- i0.ɵɵelementStart(1, "button", 7);
9
- i0.ɵɵpipe(2, "translate");
10
- i0.ɵɵelement(3, "mat-icon", 8);
11
- i0.ɵɵelementEnd();
12
- i0.ɵɵelementEnd();
13
- } if (rf & 2) {
14
- i0.ɵɵadvance(1);
15
- i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 1, "igo.geo.mapButtons.baselayerSwitcher"));
16
- } }
17
- function BaseLayersSwitcherComponent_div_0_igo_mini_basemap_2_Template(rf, ctx) { if (rf & 1) {
18
- i0.ɵɵelement(0, "igo-mini-basemap", 9);
19
- i0.ɵɵpipe(1, "translate");
20
- } if (rf & 2) {
21
- const baseLayer_r3 = ctx.$implicit;
22
- const i_r4 = ctx.index;
23
- const ctx_r2 = i0.ɵɵnextContext(2);
24
- i0.ɵɵproperty("map", ctx_r2.map)("baseLayer", baseLayer_r3)("title", ctx_r2.baseLayers.length > 2 && !ctx_r2.expand ? i0.ɵɵpipeBind1(1, 5, "igo.geo.baselayersSwitcher.title") : baseLayer_r3.title)("display", ctx_r2.expand || i_r4 === 0 && !ctx_r2.useStaticIcon)("disabled", !ctx_r2.expand && ctx_r2.baseLayers.length > 1);
25
- } }
26
- const _c0 = function (a0) { return { "container-expand": a0 }; };
27
- function BaseLayersSwitcherComponent_div_0_Template(rf, ctx) { if (rf & 1) {
28
- const _r6 = i0.ɵɵgetCurrentView();
29
- i0.ɵɵelementStart(0, "div", 1);
30
- i0.ɵɵlistener("@baseLayerSwitcherState.start", function BaseLayersSwitcherComponent_div_0_Template_div_animation_baseLayerSwitcherState_start_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return ctx_r5.showButton = false; })("@baseLayerSwitcherState.done", function BaseLayersSwitcherComponent_div_0_Template_div_animation_baseLayerSwitcherState_done_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r7 = i0.ɵɵnextContext(); return ctx_r7.showButton = true; })("click", function BaseLayersSwitcherComponent_div_0_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r8 = i0.ɵɵnextContext(); return ctx_r8.collapseOrExpand(); });
31
- i0.ɵɵtemplate(1, BaseLayersSwitcherComponent_div_0_div_1_Template, 4, 3, "div", 2);
32
- i0.ɵɵtemplate(2, BaseLayersSwitcherComponent_div_0_igo_mini_basemap_2_Template, 2, 7, "igo-mini-basemap", 3);
33
- i0.ɵɵelementStart(3, "div", 4);
34
- i0.ɵɵelement(4, "mat-icon", 5);
35
- i0.ɵɵelementEnd();
36
- i0.ɵɵelementEnd();
37
- } if (rf & 2) {
38
- const ctx_r0 = i0.ɵɵnextContext();
39
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(4, _c0, ctx_r0.expand))("@baseLayerSwitcherState", ctx_r0.expand ? "expand" : ctx_r0.useStaticIcon ? "collapseIcon" : "collapseMap");
40
- i0.ɵɵadvance(1);
41
- i0.ɵɵproperty("ngIf", ctx_r0.useStaticIcon && !ctx_r0.expand && ctx_r0.showButton);
42
- i0.ɵɵadvance(1);
43
- i0.ɵɵproperty("ngForOf", ctx_r0.baseLayers);
44
- } }
45
- export class BaseLayersSwitcherComponent {
46
- constructor(mediaService) {
47
- this.mediaService = mediaService;
48
- this._baseLayers = [];
49
- this.expand = false;
50
- this.showButton = true;
51
- const media = this.mediaService.media$.value;
52
- if (media === Media.Mobile && this.useStaticIcon === undefined) {
53
- this.useStaticIcon = true;
54
- }
55
- }
56
- ngAfterViewInit() {
57
- this.layers$$ = this.map.layers$.subscribe(arrayLayers => {
58
- this._baseLayers = arrayLayers.filter(l => l.baseLayer);
59
- });
60
- }
61
- ngOnDestroy() {
62
- this.layers$$.unsubscribe();
63
- }
64
- collapseOrExpand() {
65
- if (this.baseLayers.length > 1 || this.useStaticIcon) {
66
- this.expand = !this.expand;
67
- }
68
- else {
69
- this.expand = false;
70
- }
71
- }
72
- get baseLayers() {
73
- const mapResolution = this.map.viewController.getResolution();
74
- const mapZoom = this.map.viewController.getZoom();
75
- const bl = this._baseLayers.filter(l => {
76
- return ((!l.options.maxResolution ||
77
- mapResolution <= l.options.maxResolution) &&
78
- (!l.options.minResolution || mapResolution >= l.options.minResolution) &&
79
- (!l.options.source.options.maxZoom || mapZoom <= l.options.source.options.maxZoom) &&
80
- (!l.options.source.options.minZoom || mapZoom >= l.options.source.options.minZoom));
81
- });
82
- const blHidden = bl.filter(l => !l.visible);
83
- return blHidden.length + 1 === bl.length ? blHidden : bl;
84
- }
85
- }
86
- BaseLayersSwitcherComponent.ɵfac = function BaseLayersSwitcherComponent_Factory(t) { return new (t || BaseLayersSwitcherComponent)(i0.ɵɵdirectiveInject(i1.MediaService)); };
87
- BaseLayersSwitcherComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseLayersSwitcherComponent, selectors: [["igo-baselayers-switcher"]], inputs: { map: "map", useStaticIcon: "useStaticIcon" }, decls: 1, vars: 1, consts: [["class", "igo-baselayers-switcher-container", 3, "ngClass", "click", 4, "ngIf"], [1, "igo-baselayers-switcher-container", 3, "ngClass", "click"], ["class", "igo-baselayers-switcher-button-container", 4, "ngIf"], ["class", "mat-typography", 3, "map", "baseLayer", "title", "display", "disabled", 4, "ngFor", "ngForOf"], [1, "more-baselayers"], ["color", "primary", "svgIcon", "menu-down", 1, "material-icons", "mat-icon", "mat-list-avatar"], [1, "igo-baselayers-switcher-button-container"], ["mat-icon-button", "", "matTooltipPosition", "right", "color", "primary", 3, "matTooltip"], ["svgIcon", "image-multiple"], [1, "mat-typography", 3, "map", "baseLayer", "title", "display", "disabled"]], template: function BaseLayersSwitcherComponent_Template(rf, ctx) { if (rf & 1) {
88
- i0.ɵɵtemplate(0, BaseLayersSwitcherComponent_div_0_Template, 5, 6, "div", 0);
89
- } if (rf & 2) {
90
- i0.ɵɵproperty("ngIf", ctx.baseLayers.length > 0);
91
- } }, styles: [".igo-baselayers-switcher-container[_ngcontent-%COMP%]{height:auto;position:relative}.container-expand[_ngcontent-%COMP%]{overflow:hidden;border-width:0}.more-baselayers[_ngcontent-%COMP%]{width:80px;height:20px;background-color:#fff;text-align:center;cursor:pointer}.more-baselayers[_ngcontent-%COMP%]:hover{background-color:#efefef}.igo-baselayers-switcher-button-container[_ngcontent-%COMP%]{width:40px;background-color:#fff}.igo-baselayers-switcher-button-container[_ngcontent-%COMP%]:hover{background-color:#efefef}button[_ngcontent-%COMP%], [_nghost-%COMP%] button .mat-button-ripple-round{border-radius:0}"], data: { animation: [baseLayersSwitcherSlideInOut()] } });
92
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseLayersSwitcherComponent, [{
93
- type: Component,
94
- args: [{
95
- selector: 'igo-baselayers-switcher',
96
- templateUrl: './baselayers-switcher.component.html',
97
- styleUrls: ['./baselayers-switcher.component.scss'],
98
- animations: [baseLayersSwitcherSlideInOut()]
99
- }]
100
- }], function () { return [{ type: i1.MediaService }]; }, { map: [{
101
- type: Input
102
- }], useStaticIcon: [{
103
- type: Input
104
- }] }); })();
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZWxheWVycy1zd2l0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tYXAvYmFzZWxheWVycy1zd2l0Y2hlci9iYXNlbGF5ZXJzLXN3aXRjaGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21hcC9iYXNlbGF5ZXJzLXN3aXRjaGVyL2Jhc2VsYXllcnMtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBRzNFLE9BQU8sRUFBZ0IsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBR2pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0lDRTFFLDhCQUFxRztJQUNuRyxpQ0FJa0I7O0lBQ2hCLDhCQUE4QztJQUNoRCxpQkFBUztJQUNYLGlCQUFNOztJQUxGLGVBQWlFO0lBQWpFLHlGQUFpRTs7O0lBT3JFLHNDQU1tQjs7Ozs7O0lBTGpCLGdDQUFXLDJCQUFBLHlJQUFBLGlFQUFBLDREQUFBOzs7OztJQW5CbEIsOEJBTWtDO0lBRjdCLGtQQUE0QyxLQUFLLElBQUMsbU9BQ1AsSUFBSSxJQURHLHFMQUFBO0lBSWxELGtGQVFNO0lBRU4sNEdBTW1CO0lBRXBCLDhCQUE2QjtJQUMzQiw4QkFBeUc7SUFDM0csaUJBQU07SUFFVixpQkFBTTs7O0lBNUJELG1FQUF3Qyw2R0FBQTtJQU1sQyxlQUE0QztJQUE1QyxrRkFBNEM7SUFVYSxlQUFlO0lBQWYsMkNBQWU7O0FESm5GLE1BQU0sT0FBTywyQkFBMkI7SUFVdEMsWUFBb0IsWUFBMEI7UUFBMUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFOdkMsZ0JBQVcsR0FBWSxFQUFFLENBQUM7UUFDMUIsV0FBTSxH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LEVBQUUsQ0FBQzthQUM3QzsrREFFVSxHQUFHO2tCQUFYLEtBQUs7WUFDRyxhQUFhO2tCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgTWVkaWFTZXJ2aWNlLCBNZWRpYSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5pbXBvcnQgeyBMYXllciB9IGZyb20gJy4uLy4uL2xheWVyJztcclxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vc2hhcmVkJztcclxuaW1wb3J0IHsgYmFzZUxheWVyc1N3aXRjaGVyU2xpZGVJbk91dCB9IGZyb20gJy4vYmFzZWxheWVycy1zd2l0Y2hlci5hbmltYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYmFzZWxheWVycy1zd2l0Y2hlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Jhc2VsYXllcnMtc3dpdGNoZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Jhc2VsYXllcnMtc3dpdGNoZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbYmFzZUxheWVyc1N3aXRjaGVyU2xpZGVJbk91dCgpXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFzZUxheWVyc1N3aXRjaGVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcclxuICBASW5wdXQoKSB1c2VTdGF0aWNJY29uOiBib29sZWFuO1xyXG5cclxuICBwdWJsaWMgX2Jhc2VMYXllcnM6IExheWVyW10gPSBbXTtcclxuICBwdWJsaWMgZXhwYW5kID0gZmFsc2U7XHJcbiAgcHVibGljIHNob3dCdXR0b24gPSB0cnVlO1xyXG5cclxuICBwcml2YXRlIGxheWVycyQkOiBTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbWVkaWFTZXJ2aWNlOiBNZWRpYVNlcnZpY2UpIHtcclxuICAgIGNvbnN0IG1lZGlhID0gdGhpcy5tZWRpYVNlcnZpY2UubWVkaWEkLnZhbHVlO1xyXG4gICAgaWYgKG1lZGlhID09PSBNZWRpYS5Nb2JpbGUgJiYgdGhpcy51c2VTdGF0aWNJY29uID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy51c2VTdGF0aWNJY29uID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMubGF5ZXJzJCQgPSB0aGlzLm1hcC5sYXllcnMkLnN1YnNjcmliZShhcnJheUxheWVycyA9PiB7XHJcbiAgICAgIHRoaXMuX2Jhc2VMYXllcnMgPSBhcnJheUxheWVycy5maWx0ZXIobCA9PiBsLmJhc2VMYXllcik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5sYXllcnMkJC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgY29sbGFwc2VPckV4cGFuZCgpIHtcclxuICAgIGlmICh0aGlzLmJhc2VMYXllcnMubGVuZ3RoID4gMSB8fCB0aGlzLnVzZVN0YXRpY0ljb24pIHtcclxuICAgICAgdGhpcy5leHBhbmQgPSAhdGhpcy5leHBhbmQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmV4cGFuZCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGJhc2VMYXllcnMoKTogTGF5ZXJbXSB7XHJcbiAgICBjb25zdCBtYXBSZXNvbHV0aW9uID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXIuZ2V0UmVzb2x1dGlvbigpO1xyXG4gICAgY29uc3QgbWFwWm9vbSA9IHRoaXMubWFwLnZpZXdDb250cm9sbGVyLmdldFpvb20oKTtcclxuXHJcbiAgICBjb25zdCBibCA9IHRoaXMuX2Jhc2VMYXllcnMuZmlsdGVyKGwgPT4ge1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgICghbC5vcHRpb25zLm1heFJlc29sdXRpb24gfHxcclxuICAgICAgICAgIG1hcFJlc29sdXRpb24gPD0gbC5vcHRpb25zLm1heFJlc29sdXRpb24pICYmXHJcbiAgICAgICAgKCFsLm9wdGlvbnMubWluUmVzb2x1dGlvbiB8fCBtYXBSZXNvbHV0aW9uID49IGwub3B0aW9ucy5taW5SZXNvbHV0aW9uKSAmJlxyXG4gICAgICAgICghbC5vcHRpb25zLnNvdXJjZS5vcHRpb25zLm1heFpvb20gfHwgbWFwWm9vbSA8PSBsLm9wdGlvbnMuc291cmNlLm9wdGlvbnMubWF4Wm9vbSkgJiZcclxuICAgICAgICAoIWwub3B0aW9ucy5zb3VyY2Uub3B0aW9ucy5taW5ab29tIHx8IG1hcFpvb20gPj0gbC5vcHRpb25zLnNvdXJjZS5vcHRpb25zLm1pblpvb20pXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBibEhpZGRlbiA9IGJsLmZpbHRlcihsID0+ICFsLnZpc2libGUpO1xyXG4gICAgcmV0dXJuIGJsSGlkZGVuLmxlbmd0aCArIDEgPT09IGJsLmxlbmd0aCA/IGJsSGlkZGVuIDogYmw7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKm5nSWY9XCJiYXNlTGF5ZXJzLmxlbmd0aCA+IDBcIlxyXG4gICAgIGNsYXNzPVwiaWdvLWJhc2VsYXllcnMtc3dpdGNoZXItY29udGFpbmVyXCJcclxuICAgICBbbmdDbGFzc109XCJ7J2NvbnRhaW5lci1leHBhbmQnOiBleHBhbmR9XCJcclxuICAgICBbQGJhc2VMYXllclN3aXRjaGVyU3RhdGVdPVwiZXhwYW5kID8gJ2V4cGFuZCcgOiB1c2VTdGF0aWNJY29uID8gJ2NvbGxhcHNlSWNvbicgOiAnY29sbGFwc2VNYXAnXCJcclxuICAgICAoQGJhc2VMYXllclN3aXRjaGVyU3RhdGUuc3RhcnQpPVwic2hvd0J1dHRvbj1mYWxzZVwiXHJcbiAgICAgKEBiYXNlTGF5ZXJTd2l0Y2hlclN0YXRlLmRvbmUpPVwic2hvd0J1dHRvbj10cnVlXCJcclxuICAgICAoY2xpY2spPVwiY29sbGFwc2VPckV4cGFuZCgpXCI+XHJcblxyXG4gICAgIDxkaXYgKm5nSWY9XCJ1c2VTdGF0aWNJY29uICYmICFleHBhbmQgJiYgc2hvd0J1dHRvblwiIGNsYXNzPVwiaWdvLWJhc2VsYXllcnMtc3dpdGNoZXItYnV0dG9uLWNvbnRhaW5lclwiPlxyXG4gICAgICAgPGJ1dHRvblxyXG4gICAgICAgICBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8ubWFwQnV0dG9ucy5iYXNlbGF5ZXJTd2l0Y2hlcicgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICBtYXRUb29sdGlwUG9zaXRpb249XCJyaWdodFwiXHJcbiAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiPlxyXG4gICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImltYWdlLW11bHRpcGxlXCI+PC9tYXQtaWNvbj5cclxuICAgICAgIDwvYnV0dG9uPlxyXG4gICAgIDwvZGl2PlxyXG5cclxuICAgICA8aWdvLW1pbmktYmFzZW1hcCBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCIgKm5nRm9yPVwibGV0IGJhc2VMYXllciBvZiBiYXNlTGF5ZXJzOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgIFttYXBdPVwibWFwXCJcclxuICAgICAgIFtiYXNlTGF5ZXJdPVwiYmFzZUxheWVyXCJcclxuICAgICAgIFt0aXRsZV09XCIoYmFzZUxheWVycy5sZW5ndGggPiAyICYmICFleHBhbmQpID8gKCdpZ28uZ2VvLmJhc2VsYXllcnNTd2l0Y2hlci50aXRsZScgfCB0cmFuc2xhdGUpIDogYmFzZUxheWVyLnRpdGxlXCJcclxuICAgICAgIFtkaXNwbGF5XT1cImV4cGFuZCB8fCAoaSA9PT0gMCAmJiAhdXNlU3RhdGljSWNvbilcIlxyXG4gICAgICAgW2Rpc2FibGVkXT1cIiFleHBhbmQgJiYgYmFzZUxheWVycy5sZW5ndGggPiAxXCI+XHJcbiAgICAgPC9pZ28tbWluaS1iYXNlbWFwPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJtb3JlLWJhc2VsYXllcnNcIj5cclxuICAgICAgPG1hdC1pY29uIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgbWF0LWljb24gbWF0LWxpc3QtYXZhdGFyXCIgY29sb3I9XCJwcmltYXJ5XCIgc3ZnSWNvbj1cIm1lbnUtZG93blwiPjwvbWF0LWljb24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,137 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { IgoMap } from '../shared';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../layer/shared/layer.service";
5
- function MiniBaseMapComponent_div_1_div_2_Template(rf, ctx) { if (rf & 1) {
6
- i0.ɵɵelementStart(0, "div", 5);
7
- i0.ɵɵtext(1);
8
- i0.ɵɵelementEnd();
9
- } if (rf & 2) {
10
- const ctx_r1 = i0.ɵɵnextContext(2);
11
- i0.ɵɵadvance(1);
12
- i0.ɵɵtextInterpolate1(" ", ctx_r1.title, " ");
13
- } }
14
- function MiniBaseMapComponent_div_1_Template(rf, ctx) { if (rf & 1) {
15
- const _r3 = i0.ɵɵgetCurrentView();
16
- i0.ɵɵelementStart(0, "div", 2);
17
- i0.ɵɵlistener("click", function MiniBaseMapComponent_div_1_Template_div_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r2 = i0.ɵɵnextContext(); return ctx_r2.changeBaseLayer(ctx_r2.baseLayer); });
18
- i0.ɵɵelement(1, "igo-map-browser", 3);
19
- i0.ɵɵtemplate(2, MiniBaseMapComponent_div_1_div_2_Template, 2, 1, "div", 4);
20
- i0.ɵɵelementEnd();
21
- } if (rf & 2) {
22
- const ctx_r0 = i0.ɵɵnextContext();
23
- i0.ɵɵadvance(1);
24
- i0.ɵɵproperty("map", ctx_r0.basemap);
25
- i0.ɵɵadvance(1);
26
- i0.ɵɵproperty("ngIf", ctx_r0.title);
27
- } }
28
- export class MiniBaseMapComponent {
29
- constructor(layerService, appRef) {
30
- this.layerService = layerService;
31
- this.appRef = appRef;
32
- this.basemap = new IgoMap({
33
- controls: {},
34
- interactions: false
35
- });
36
- }
37
- get baseLayer() {
38
- return this._baseLayer;
39
- }
40
- set baseLayer(value) {
41
- this._baseLayer = value;
42
- this.handleBaseLayerChanged(value);
43
- }
44
- ngAfterViewInit() {
45
- this.handleMainMapViewChange(this.map.ol.getView());
46
- this.map.viewController.olView.on('change', change => {
47
- this.handleMainMapViewChange(change.target);
48
- });
49
- this.map.ol.on('pointerdrag', change => {
50
- this.handleMainMapViewChange(change.target.getView());
51
- });
52
- }
53
- ngOnDestroy() {
54
- this.map.viewController.olView.un('change', change => {
55
- this.handleMainMapViewChange(change.target);
56
- });
57
- this.map.ol.un('pointerdrag', change => {
58
- this.handleMainMapViewChange(change.target.getView());
59
- });
60
- }
61
- changeBaseLayer(baseLayer) {
62
- if (this.disabled) {
63
- return;
64
- }
65
- this.map.changeBaseLayer(baseLayer);
66
- this.appRef.tick();
67
- }
68
- handleMainMapViewChange(mainMapView) {
69
- const mainMapViewProperties = mainMapView.getProperties();
70
- this.basemap.viewController.olView.setResolution(mainMapViewProperties.resolution);
71
- this.basemap.viewController.olView.setRotation(mainMapViewProperties.rotation);
72
- this.basemap.viewController.olView.setCenter(this.map.viewController.getCenter());
73
- }
74
- handleBaseLayerChanged(baselayer) {
75
- this.basemap.removeAllLayers();
76
- const options = Object.assign(Object.create(baselayer.options), baselayer.options, {
77
- visible: true,
78
- baseLayer: false
79
- });
80
- const layer = this.layerService.createLayer(options);
81
- this.basemap.addLayer(layer);
82
- this.handleLinkedBaseLayer(layer);
83
- }
84
- handleLinkedBaseLayer(baselayer) {
85
- const linkedLayers = baselayer.options.linkedLayers;
86
- if (!linkedLayers) {
87
- return;
88
- }
89
- const currentLinkedId = linkedLayers.linkId;
90
- const currentLinks = linkedLayers.links;
91
- const isParentLayer = currentLinks ? true : false;
92
- if (isParentLayer && currentLinkedId === baselayer.options.linkedLayers.linkId) {
93
- // search for child layers
94
- currentLinks.map(link => {
95
- link.linkedIds.map(linkedId => {
96
- const layerToApply = this.map.layers.find(l => { var _a; return ((_a = l.options.linkedLayers) === null || _a === void 0 ? void 0 : _a.linkId) === linkedId; });
97
- if (layerToApply) {
98
- const linkedLayerOptions = Object.assign(Object.create(layerToApply.options), layerToApply.options, {
99
- zIndex: 9000,
100
- visible: true,
101
- baseLayer: false,
102
- });
103
- this.basemap.addLayer(this.layerService.createLayer(linkedLayerOptions));
104
- }
105
- });
106
- });
107
- }
108
- }
109
- }
110
- MiniBaseMapComponent.ɵfac = function MiniBaseMapComponent_Factory(t) { return new (t || MiniBaseMapComponent)(i0.ɵɵdirectiveInject(i1.LayerService), i0.ɵɵdirectiveInject(i0.ApplicationRef)); };
111
- MiniBaseMapComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MiniBaseMapComponent, selectors: [["igo-mini-basemap"]], inputs: { map: "map", disabled: "disabled", display: "display", title: "title", baseLayer: "baseLayer" }, decls: 2, vars: 1, consts: [[1, "igo-mini-basemap-container"], [3, "click", 4, "ngIf"], [3, "click"], [3, "map"], ["class", "igo-mini-basemap-title", 4, "ngIf"], [1, "igo-mini-basemap-title"]], template: function MiniBaseMapComponent_Template(rf, ctx) { if (rf & 1) {
112
- i0.ɵɵelementStart(0, "div", 0);
113
- i0.ɵɵtemplate(1, MiniBaseMapComponent_div_1_Template, 3, 2, "div", 1);
114
- i0.ɵɵelementEnd();
115
- } if (rf & 2) {
116
- i0.ɵɵadvance(1);
117
- i0.ɵɵproperty("ngIf", ctx.display);
118
- } }, styles: [".igo-mini-basemap-container[_ngcontent-%COMP%]{width:calc(40px * 2);height:calc(40px * 2);background-color:#ffffff03;border:2px solid white;box-shadow:0 1px 4px #0000004d;cursor:pointer;margin-top:5px}.igo-mini-basemap-container[_ngcontent-%COMP%]:hover .igo-mini-basemap-title[_ngcontent-%COMP%]{color:#000;text-shadow:0 0 5px white}.igo-mini-basemap-container[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:100%;height:100%}.igo-mini-basemap-title[_ngcontent-%COMP%]{position:relative;top:-76px;height:76px;width:76px;text-align:center;vertical-align:bottom;color:#fff;text-shadow:0 0 5px black;white-space:normal;display:flex;align-items:flex-end;justify-content:center}"] });
119
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MiniBaseMapComponent, [{
120
- type: Component,
121
- args: [{
122
- selector: 'igo-mini-basemap',
123
- templateUrl: './mini-basemap.component.html',
124
- styleUrls: ['./mini-basemap.component.scss']
125
- }]
126
- }], function () { return [{ type: i1.LayerService }, { type: i0.ApplicationRef }]; }, { map: [{
127
- type: Input
128
- }], disabled: [{
129
- type: Input
130
- }], display: [{
131
- type: Input
132
- }], title: [{
133
- type: Input
134
- }], baseLayer: [{
135
- type: Input
136
- }] }); })();
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1iYXNlbWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21hcC9iYXNlbGF5ZXJzLXN3aXRjaGVyL21pbmktYmFzZW1hcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tYXAvYmFzZWxheWVycy1zd2l0Y2hlci9taW5pLWJhc2VtYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBSU4sTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFdBQVcsQ0FBQzs7OztJQ04vQiw4QkFBa0Q7SUFBQyxZQUFVO0lBQUEsaUJBQU07OztJQUFoQixlQUFVO0lBQVYsNkNBQVU7Ozs7SUFGL0QsOEJBQTBEO0lBQXJDLDBNQUFvQztJQUN2RCxxQ0FBbUQ7SUFDbkQsMkVBQW1FO0lBQ3JFLGlCQUFNOzs7SUFGYSxlQUFlO0lBQWYsb0NBQWU7SUFDMUIsZUFBVztJQUFYLG1DQUFXOztBRGdCckIsTUFBTSxPQUFPLG9CQUFvQjtJQXNCL0IsWUFDVSxZQUEwQixFQUMxQixNQUFzQjtRQUR0QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQVB6QixZQUFPLEdBQUcsSUFBSSxNQUFNLENBQUM7WUFDMUIsUUFBUSxFQUFFLEVBQUU7WUFDWixZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFDLENBQUM7SUFLQyxDQUFDO0lBbEJMLElBQ0ksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxTQUFTLENBQUMsS0FBWTtRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsc0JBQXNCLENBQUMs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cEJqQyw4QkFBd0M7UUFFdEMscUVBR007UUFFUixpQkFBTTs7UUFMRSxlQUFhO1FBQWIsa0NBQWE7O3VGRGtCUixvQkFBb0I7Y0FMaEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLFdBQVcsRUFBRSwrQkFBK0I7Z0JBQzVDLFNBQVMsRUFBRSxDQUFDLCtCQUErQixDQUFDO2FBQzdDOzRGQUdVLEdBQUc7a0JBQVgsS0FBSztZQUNHLFFBQVE7a0JBQWhCLEtBQUs7WUFDRyxPQUFPO2tCQUFmLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFHRixTQUFTO2tCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIE9uRGVzdHJveSxcclxuICBBcHBsaWNhdGlvblJlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTGF5ZXIsIExheWVyT3B0aW9ucyB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZCc7XHJcbmltcG9ydCB7IExheWVyU2VydmljZSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSWdvTWFwIH0gZnJvbSAnLi4vc2hhcmVkJztcclxuXHJcbmltcG9ydCBPbE1hcCBmcm9tICdvbC9NYXAnO1xyXG5pbXBvcnQgT2xWaWV3IGZyb20gJ29sL1ZpZXcnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tbWluaS1iYXNlbWFwJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWluaS1iYXNlbWFwLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9taW5pLWJhc2VtYXAuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWluaUJhc2VNYXBDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcclxuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICBASW5wdXQoKSBkaXNwbGF5OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGJhc2VMYXllcigpOiBMYXllciB7XHJcbiAgICByZXR1cm4gdGhpcy5fYmFzZUxheWVyO1xyXG4gIH1cclxuICBzZXQgYmFzZUxheWVyKHZhbHVlOiBMYXllcikge1xyXG4gICAgdGhpcy5fYmFzZUxheWVyID0gdmFsdWU7XHJcbiAgICB0aGlzLmhhbmRsZUJhc2VMYXllckNoYW5nZWQodmFsdWUpO1xyXG4gIH1cclxuICBwcml2YXRlIF9iYXNlTGF5ZXI6IExheWVyO1xyXG5cclxuICBwdWJsaWMgYmFzZW1hcCA9IG5ldyBJZ29NYXAoe1xyXG4gICAgY29udHJvbHM6IHt9LFxyXG4gICAgaW50ZXJhY3Rpb25zOiBmYWxzZVxyXG4gIH0pO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgbGF5ZXJTZXJ2aWNlOiBMYXllclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGFwcFJlZjogQXBwbGljYXRpb25SZWZcclxuICApIHsgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLmhhbmRsZU1haW5NYXBWaWV3Q2hhbmdlKHRoaXMubWFwLm9sLmdldFZpZXcoKSk7XHJcbiAgICB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5vbFZpZXcub24oJ2NoYW5nZScsIGNoYW5nZSA9PiB7XHJcbiAgICAgIHRoaXMuaGFuZGxlTWFpbk1hcFZpZXdDaGFuZ2UoKGNoYW5nZS50YXJnZXQgYXMgT2xWaWV3KSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMubWFwLm9sLm9uKCdwb2ludGVyZHJhZycsIGNoYW5nZSA9PiB7XHJcbiAgICAgIHRoaXMuaGFuZGxlTWFpbk1hcFZpZXdDaGFuZ2UoKGNoYW5nZS50YXJnZXQgYXMgT2xNYXApLmdldFZpZXcoKSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5tYXAudmlld0NvbnRyb2xsZXIub2xWaWV3LnVuKCdjaGFuZ2UnLCBjaGFuZ2UgPT4ge1xyXG4gICAgICB0aGlzLmhhbmRsZU1haW5NYXBWaWV3Q2hhbmdlKChjaGFuZ2UudGFyZ2V0IGFzIE9sVmlldykpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLm1hcC5vbC51bigncG9pbnRlcmRyYWcnLCBjaGFuZ2UgPT4ge1xyXG4gICAgICB0aGlzLmhhbmRsZU1haW5NYXBWaWV3Q2hhbmdlKChjaGFuZ2UudGFyZ2V0IGFzIE9sTWFwKS5nZXRWaWV3KCkpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VCYXNlTGF5ZXIoYmFzZUxheWVyOiBMYXllcikge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5tYXAuY2hhbmdlQmFzZUxheWVyKGJhc2VMYXllcik7XHJcbiAgICB0aGlzLmFwcFJlZi50aWNrKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGhhbmRsZU1haW5NYXBWaWV3Q2hhbmdlKG1haW5NYXBWaWV3KSB7XHJcbiAgICBjb25zdCBtYWluTWFwVmlld1Byb3BlcnRpZXMgPSBtYWluTWFwVmlldy5nZXRQcm9wZXJ0aWVzKCk7XHJcbiAgICB0aGlzLmJhc2VtYXAudmlld0NvbnRyb2xsZXIub2xWaWV3LnNldFJlc29sdXRpb24obWFpbk1hcFZpZXdQcm9wZXJ0aWVzLnJlc29sdXRpb24pO1xyXG4gICAgdGhpcy5iYXNlbWFwLnZpZXdDb250cm9sbGVyLm9sVmlldy5zZXRSb3RhdGlvbihtYWluTWFwVmlld1Byb3BlcnRpZXMucm90YXRpb24pO1xyXG4gICAgdGhpcy5iYXNlbWFwLnZpZXdDb250cm9sbGVyLm9sVmlldy5zZXRDZW50ZXIodGhpcy5tYXAudmlld0NvbnRyb2xsZXIuZ2V0Q2VudGVyKCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVCYXNlTGF5ZXJDaGFuZ2VkKGJhc2VsYXllcjogTGF5ZXIpIHtcclxuICAgIHRoaXMuYmFzZW1hcC5yZW1vdmVBbGxMYXllcnMoKTtcclxuXHJcbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSBPYmplY3QuYXNzaWduKFxyXG4gICAgICBPYmplY3QuY3JlYXRlKGJhc2VsYXllci5vcHRpb25zKSxcclxuICAgICAgYmFzZWxheWVyLm9wdGlvbnMsXHJcbiAgICAgIHtcclxuICAgICAgICB2aXNpYmxlOiB0cnVlLFxyXG4gICAgICAgIGJhc2VMYXllcjogZmFsc2VcclxuICAgICAgfVxyXG4gICAgKTtcclxuXHJcbiAgICBjb25zdCBsYXllciA9IHRoaXMubGF5ZXJTZXJ2aWNlLmNyZWF0ZUxheWVyKG9wdGlvbnMpO1xyXG4gICAgdGhpcy5iYXNlbWFwLmFkZExheWVyKGxheWVyKTtcclxuICAgIHRoaXMuaGFuZGxlTGlua2VkQmFzZUxheWVyKGxheWVyKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlTGlua2VkQmFzZUxheWVyKGJhc2VsYXllcjogTGF5ZXIpIHtcclxuICAgIGNvbnN0IGxpbmtlZExheWVycyA9IGJhc2VsYXllci5vcHRpb25zLmxpbmtlZExheWVycztcclxuICAgIGlmICghbGlua2VkTGF5ZXJzKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGN1cnJlbnRMaW5rZWRJZCA9IGxpbmtlZExheWVycy5saW5rSWQ7XHJcbiAgICBjb25zdCBjdXJyZW50TGlua3MgPSBsaW5rZWRMYXllcnMubGlua3M7XHJcbiAgICBjb25zdCBpc1BhcmVudExheWVyID0gY3VycmVudExpbmtzID8gdHJ1ZSA6IGZhbHNlO1xyXG4gICAgaWYgKGlzUGFyZW50TGF5ZXIgJiYgY3VycmVudExpbmtlZElkID09PSBiYXNlbGF5ZXIub3B0aW9ucy5saW5rZWRMYXllcnMubGlua0lkKSB7XHJcbiAgICAgIC8vIHNlYXJjaCBmb3IgY2hpbGQgbGF5ZXJzXHJcbiAgICAgIGN1cnJlbnRMaW5rcy5tYXAobGluayA9PiB7XHJcbiAgICAgICAgbGluay5saW5rZWRJZHMubWFwKGxpbmtlZElkID0+IHtcclxuICAgICAgICAgIGNvbnN0IGxheWVyVG9BcHBseSA9IHRoaXMubWFwLmxheWVycy5maW5kKGwgPT4gbC5vcHRpb25zLmxpbmtlZExheWVycz8ubGlua0lkID09PSBsaW5rZWRJZCk7XHJcbiAgICAgICAgICBpZiAobGF5ZXJUb0FwcGx5KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxpbmtlZExheWVyT3B0aW9uczogYW55ID0gT2JqZWN0LmFzc2lnbihcclxuICAgICAgICAgICAgICBPYmplY3QuY3JlYXRlKGxheWVyVG9BcHBseS5vcHRpb25zKSxcclxuICAgICAgICAgICAgICBsYXllclRvQXBwbHkub3B0aW9ucyxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB6SW5kZXg6IDkwMDAsXHJcbiAgICAgICAgICAgICAgICB2aXNpYmxlOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgYmFzZUxheWVyOiBmYWxzZSxcclxuICAgICAgICAgICAgICB9IGFzIExheWVyT3B0aW9uc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB0aGlzLmJhc2VtYXAuYWRkTGF5ZXIodGhpcy5sYXllclNlcnZpY2UuY3JlYXRlTGF5ZXIobGlua2VkTGF5ZXJPcHRpb25zKSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiaWdvLW1pbmktYmFzZW1hcC1jb250YWluZXJcIj5cclxuXHJcbiAgPGRpdiAqbmdJZj1cImRpc3BsYXlcIiAoY2xpY2spPVwiY2hhbmdlQmFzZUxheWVyKGJhc2VMYXllcilcIj5cclxuICAgIDxpZ28tbWFwLWJyb3dzZXIgW21hcF09XCJiYXNlbWFwXCI+PC9pZ28tbWFwLWJyb3dzZXI+XHJcbiAgICA8ZGl2ICpuZ0lmPSd0aXRsZScgY2xhc3M9J2lnby1taW5pLWJhc2VtYXAtdGl0bGUnPiB7e3RpdGxlfX0gPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuIl19