@igo2/geo 16.1.0 → 16.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +3 -3
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +3 -3
  3. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +3 -3
  4. package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +3 -3
  5. package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +3 -3
  6. package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +3 -3
  7. package/esm2022/lib/catalog/index.mjs +1 -1
  8. package/esm2022/lib/catalog/shared/catalog.abstract.mjs +1 -1
  9. package/esm2022/lib/catalog/shared/catalog.enum.mjs +1 -1
  10. package/esm2022/lib/catalog/shared/catalog.interface.mjs +1 -1
  11. package/esm2022/lib/catalog/shared/catalogs.mjs +1 -1
  12. package/esm2022/lib/datasource/shared/capabilities.interface.mjs +1 -1
  13. package/esm2022/lib/datasource/shared/capabilities.service.mjs +1 -1
  14. package/esm2022/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
  15. package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +1 -1
  16. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +1 -1
  17. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +1 -1
  18. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
  19. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +1 -1
  20. package/esm2022/lib/datasource/shared/datasources/data.service.mjs +1 -1
  21. package/esm2022/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
  22. package/esm2022/lib/datasource/shared/datasources/datasource.mjs +1 -1
  23. package/esm2022/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
  24. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +1 -1
  25. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
  26. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +1 -1
  27. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +1 -1
  28. package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +1 -1
  29. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +1 -1
  30. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
  31. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +1 -1
  32. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +1 -1
  33. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
  34. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
  35. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +1 -1
  36. package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +1 -1
  37. package/esm2022/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
  38. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +1 -1
  39. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
  40. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +1 -1
  41. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
  42. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +1 -1
  43. package/esm2022/lib/datasource/shared/index.mjs +1 -1
  44. package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +1 -1
  45. package/esm2022/lib/datasource/shared/options/options-api.service.mjs +1 -1
  46. package/esm2022/lib/datasource/shared/options/options.service.mjs +1 -1
  47. package/esm2022/lib/datasource/utils/tilegrid.mjs +1 -1
  48. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +3 -3
  49. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +3 -3
  50. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +3 -3
  51. package/esm2022/lib/directions/directions-sources/directions-source.interface.mjs +1 -1
  52. package/esm2022/lib/directions/directions-sources/directions-source.mjs +1 -1
  53. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +1 -1
  54. package/esm2022/lib/directions/directions.component.mjs +3 -3
  55. package/esm2022/lib/directions/shared/directions.interface.mjs +1 -1
  56. package/esm2022/lib/directions/shared/directions.service.mjs +1 -1
  57. package/esm2022/lib/directions/shared/directions.utils.mjs +1 -1
  58. package/esm2022/lib/directions/shared/store.mjs +1 -1
  59. package/esm2022/lib/download/download-button/download-button.component.mjs +3 -3
  60. package/esm2022/lib/download/shared/download.service.mjs +1 -1
  61. package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +3 -3
  62. package/esm2022/lib/draw/draw/draw-popup.component.mjs +3 -3
  63. package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +3 -3
  64. package/esm2022/lib/draw/draw/draw.component.mjs +3 -3
  65. package/esm2022/lib/draw/shared/draw-icon.service.mjs +1 -1
  66. package/esm2022/lib/draw/shared/draw.enum.mjs +1 -1
  67. package/esm2022/lib/draw/shared/draw.interface.mjs +1 -1
  68. package/esm2022/lib/draw/shared/draw.utils.mjs +1 -1
  69. package/esm2022/lib/environment/environment.interface.mjs +1 -1
  70. package/esm2022/lib/environment/index.mjs +1 -1
  71. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +3 -3
  72. package/esm2022/lib/feature/feature-form/feature-form.component.mjs +3 -3
  73. package/esm2022/lib/feature/index.mjs +1 -1
  74. package/esm2022/lib/feature/shared/feature-store.utils.mjs +1 -1
  75. package/esm2022/lib/feature/shared/feature.interfaces.mjs +1 -1
  76. package/esm2022/lib/feature/shared/index.mjs +1 -1
  77. package/esm2022/lib/feature/shared/store.mjs +3 -3
  78. package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +1 -1
  79. package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +1 -1
  80. package/esm2022/lib/feature/shared/strategies/index.mjs +1 -1
  81. package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +1 -1
  82. package/esm2022/lib/feature/shared/strategies/loading.mjs +1 -1
  83. package/esm2022/lib/feature/shared/strategies/selection.mjs +1 -1
  84. package/esm2022/lib/feature/shared/strategies.utils.mjs +1 -1
  85. package/esm2022/lib/filter/index.mjs +1 -1
  86. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +3 -3
  87. package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +3 -3
  88. package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +3 -3
  89. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +3 -3
  90. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +3 -3
  91. package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +3 -3
  92. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +3 -3
  93. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +3 -3
  94. package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +1 -1
  95. package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +1 -1
  96. package/esm2022/lib/filter/shared/ogc-filter.interface.mjs +1 -1
  97. package/esm2022/lib/filter/shared/ogc-filter.service.mjs +1 -1
  98. package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +1 -1
  99. package/esm2022/lib/filter/shared/spatial-filter.service.mjs +1 -1
  100. package/esm2022/lib/filter/shared/time-filter.enum.mjs +1 -1
  101. package/esm2022/lib/filter/shared/time-filter.interface.mjs +1 -1
  102. package/esm2022/lib/filter/shared/time-filter.service.mjs +1 -1
  103. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +4 -4
  104. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +3 -3
  105. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +3 -3
  106. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +3 -3
  107. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +3 -3
  108. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +3 -3
  109. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +3 -3
  110. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +3 -3
  111. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +3 -3
  112. package/esm2022/lib/geometry/index.mjs +1 -1
  113. package/esm2022/lib/geometry/shared/controls/draw.mjs +1 -1
  114. package/esm2022/lib/geometry/shared/controls/modify.mjs +1 -1
  115. package/esm2022/lib/geometry/shared/controls/slice.mjs +1 -1
  116. package/esm2022/lib/geometry/shared/geometry.errors.mjs +1 -1
  117. package/esm2022/lib/geometry/shared/geometry.interfaces.mjs +1 -1
  118. package/esm2022/lib/geometry/shared/geometry.utils.mjs +1 -1
  119. package/esm2022/lib/import-export/export-button/export-button.component.mjs +3 -3
  120. package/esm2022/lib/import-export/index.mjs +1 -1
  121. package/esm2022/lib/import-export/shared/export.interface.mjs +1 -1
  122. package/esm2022/lib/import-export/shared/export.service.mjs +1 -1
  123. package/esm2022/lib/import-export/shared/export.type.mjs +1 -1
  124. package/esm2022/lib/import-export/shared/export.utils.mjs +1 -1
  125. package/esm2022/lib/import-export/shared/import.errors.mjs +1 -1
  126. package/esm2022/lib/import-export/shared/import.interface.mjs +1 -1
  127. package/esm2022/lib/import-export/shared/import.service.mjs +1 -1
  128. package/esm2022/lib/import-export/shared/import.utils.mjs +1 -1
  129. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +3 -3
  130. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +3 -3
  131. package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +3 -3
  132. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +3 -3
  133. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +3 -3
  134. package/esm2022/lib/layer/layer-list/layer-list.enum.mjs +1 -1
  135. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +3 -3
  136. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +1 -1
  137. package/esm2022/lib/layer/shared/clusterParam.mjs +1 -1
  138. package/esm2022/lib/layer/shared/layer.service.mjs +6 -6
  139. package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
  140. package/esm2022/lib/layer/shared/layers/any-layer.mjs +1 -1
  141. package/esm2022/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
  142. package/esm2022/lib/layer/shared/layers/image-layer.mjs +1 -1
  143. package/esm2022/lib/layer/shared/layers/layer.interface.mjs +1 -1
  144. package/esm2022/lib/layer/shared/layers/layer.mjs +1 -1
  145. package/esm2022/lib/layer/shared/layers/legend.interface.mjs +1 -1
  146. package/esm2022/lib/layer/shared/layers/tile-layer.interface.mjs +1 -1
  147. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +1 -1
  148. package/esm2022/lib/layer/shared/layers/vector-layer.interface.mjs +1 -1
  149. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +1 -1
  150. package/esm2022/lib/layer/shared/layers/vectortile-layer.interface.mjs +1 -1
  151. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
  152. package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +3 -3
  153. package/esm2022/lib/layer/utils/image-watcher.mjs +1 -1
  154. package/esm2022/lib/layer/utils/layer.utils.mjs +1 -1
  155. package/esm2022/lib/layer/utils/outputLegend.mjs +1 -1
  156. package/esm2022/lib/layer/utils/tile-watcher.mjs +1 -1
  157. package/esm2022/lib/layer/utils/vector-watcher.mjs +1 -1
  158. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +5 -1
  159. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +3 -3
  160. package/esm2022/lib/map/baselayers-switcher/index.mjs +1 -1
  161. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +9 -11
  162. package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +3 -3
  163. package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +3 -3
  164. package/esm2022/lib/map/home-extent-button/home-extent-button.interface.mjs +1 -1
  165. package/esm2022/lib/map/home-extent-button/index.mjs +1 -1
  166. package/esm2022/lib/map/info-section/info-section.component.mjs +3 -3
  167. package/esm2022/lib/map/map-browser/index.mjs +1 -1
  168. package/esm2022/lib/map/map-center/map-center.component.mjs +3 -3
  169. package/esm2022/lib/map/menu-button/menu-button.component.mjs +3 -3
  170. package/esm2022/lib/map/offline-button/offline-button.component.mjs +3 -3
  171. package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +3 -3
  172. package/esm2022/lib/map/shared/controllers/controller.mjs +1 -1
  173. package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +1 -1
  174. package/esm2022/lib/map/shared/controllers/geolocation.mjs +1 -1
  175. package/esm2022/lib/map/shared/controllers/index.mjs +1 -1
  176. package/esm2022/lib/map/shared/controllers/view.mjs +2 -1
  177. package/esm2022/lib/map/shared/hover-feature.directive.mjs +4 -4
  178. package/esm2022/lib/map/shared/index.mjs +1 -1
  179. package/esm2022/lib/map/shared/linkedLayers.utils.mjs +1 -1
  180. package/esm2022/lib/map/shared/map.abstract.mjs +1 -1
  181. package/esm2022/lib/map/shared/map.interface.mjs +1 -1
  182. package/esm2022/lib/map/shared/map.mjs +1 -1
  183. package/esm2022/lib/map/shared/map.utils.mjs +1 -1
  184. package/esm2022/lib/map/shared/projection.interfaces.mjs +1 -1
  185. package/esm2022/lib/map/shared/projection.service.mjs +1 -1
  186. package/esm2022/lib/map/shared/projection.utils.mjs +1 -1
  187. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +3 -3
  188. package/esm2022/lib/map/utils/layer-watcher.mjs +1 -1
  189. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +3 -3
  190. package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +3 -3
  191. package/esm2022/lib/measure/index.mjs +1 -1
  192. package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +3 -3
  193. package/esm2022/lib/measure/measurer/measurer-item.component.mjs +3 -3
  194. package/esm2022/lib/measure/measurer/measurer.component.mjs +3 -3
  195. package/esm2022/lib/measure/shared/measure.enum.mjs +1 -1
  196. package/esm2022/lib/measure/shared/measure.interfaces.mjs +1 -1
  197. package/esm2022/lib/measure/shared/measure.utils.mjs +1 -1
  198. package/esm2022/lib/metadata/index.mjs +1 -1
  199. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +5 -5
  200. package/esm2022/lib/metadata/shared/metadata.interface.mjs +1 -1
  201. package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +1 -1
  202. package/esm2022/lib/offline/geoDB/geoDB.enums.mjs +1 -1
  203. package/esm2022/lib/offline/geoDB/geoDB.interface.mjs +1 -1
  204. package/esm2022/lib/offline/geoDB/geoDB.service.mjs +1 -1
  205. package/esm2022/lib/offline/layerDB/index.mjs +1 -1
  206. package/esm2022/lib/offline/layerDB/layerDB.interface.mjs +1 -1
  207. package/esm2022/lib/offline/layerDB/layerDB.service.mjs +1 -1
  208. package/esm2022/lib/offline/shared/geo-network.service.mjs +1 -1
  209. package/esm2022/lib/overlay/shared/overlay.enum.mjs +1 -1
  210. package/esm2022/lib/overlay/shared/overlay.mjs +1 -1
  211. package/esm2022/lib/overlay/shared/overlay.service.mjs +1 -1
  212. package/esm2022/lib/overlay/shared/overlay.utils.mjs +1 -1
  213. package/esm2022/lib/print/print/print.component.mjs +3 -3
  214. package/esm2022/lib/print/print-form/print-form.component.mjs +3 -3
  215. package/esm2022/lib/print/shared/geopdf.mjs +1 -1
  216. package/esm2022/lib/print/shared/print.interface.mjs +1 -1
  217. package/esm2022/lib/print/shared/print.service.mjs +1 -1
  218. package/esm2022/lib/print/shared/print.type.mjs +1 -1
  219. package/esm2022/lib/query/shared/query-search-source.mjs +1 -1
  220. package/esm2022/lib/query/shared/query-search-source.providers.mjs +1 -1
  221. package/esm2022/lib/query/shared/query.interfaces.mjs +1 -1
  222. package/esm2022/lib/query/shared/query.utils.mjs +1 -1
  223. package/esm2022/lib/search/index.mjs +1 -1
  224. package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +3 -3
  225. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +3 -3
  226. package/esm2022/lib/search/search-results/search-results-item.component.mjs +3 -3
  227. package/esm2022/lib/search/search-results/search-results.component.mjs +4 -4
  228. package/esm2022/lib/search/search-selector/search-selector.component.mjs +3 -3
  229. package/esm2022/lib/search/search-settings/search-settings.component.mjs +3 -3
  230. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +2 -2
  231. package/esm2022/lib/search/shared/search-source-service.providers.mjs +1 -1
  232. package/esm2022/lib/search/shared/search-source.service.mjs +1 -1
  233. package/esm2022/lib/search/shared/search.enums.mjs +1 -1
  234. package/esm2022/lib/search/shared/search.interfaces.mjs +1 -1
  235. package/esm2022/lib/search/shared/search.service.mjs +1 -1
  236. package/esm2022/lib/search/shared/search.utils.mjs +1 -1
  237. package/esm2022/lib/search/shared/sources/cadastre.mjs +1 -1
  238. package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +1 -1
  239. package/esm2022/lib/search/shared/sources/coordinates.interfaces.mjs +1 -1
  240. package/esm2022/lib/search/shared/sources/coordinates.mjs +1 -1
  241. package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +1 -1
  242. package/esm2022/lib/search/shared/sources/icherche.interfaces.mjs +1 -1
  243. package/esm2022/lib/search/shared/sources/icherche.mjs +1 -1
  244. package/esm2022/lib/search/shared/sources/icherche.providers.mjs +1 -1
  245. package/esm2022/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
  246. package/esm2022/lib/search/shared/sources/ilayer.mjs +1 -1
  247. package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +1 -1
  248. package/esm2022/lib/search/shared/sources/nominatim.mjs +2 -2
  249. package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +1 -1
  250. package/esm2022/lib/search/shared/sources/source.interfaces.mjs +1 -1
  251. package/esm2022/lib/search/shared/sources/source.mjs +1 -1
  252. package/esm2022/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
  253. package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +1 -1
  254. package/esm2022/lib/search/shared/sources/workspace.interfaces.mjs +1 -1
  255. package/esm2022/lib/search/shared/sources/workspace.providers.mjs +1 -1
  256. package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +1 -1
  257. package/esm2022/lib/style/shared/feature/feature-style.mjs +1 -1
  258. package/esm2022/lib/style/shared/font.enum.mjs +1 -1
  259. package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +1 -1
  260. package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +1 -1
  261. package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +1 -1
  262. package/esm2022/lib/style/shared/vector/conversion.utils.mjs +1 -1
  263. package/esm2022/lib/style/shared/vector/vector-style.interface.mjs +1 -1
  264. package/esm2022/lib/style/style-list/style-list.module.mjs +1 -1
  265. package/esm2022/lib/style/style-list/style-list.provider.mjs +1 -1
  266. package/esm2022/lib/style/style-list/style-list.service.mjs +1 -1
  267. package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +3 -3
  268. package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +3 -3
  269. package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +3 -3
  270. package/esm2022/lib/style/style-modal/shared/style-modal.interface.mjs +1 -1
  271. package/esm2022/lib/style/style-service/draw-style.service.mjs +1 -1
  272. package/esm2022/lib/style/style-service/style.service.mjs +1 -1
  273. package/esm2022/lib/toast/toast.component.mjs +3 -3
  274. package/esm2022/lib/utils/googleLinks.mjs +1 -1
  275. package/esm2022/lib/utils/id-generator.mjs +1 -1
  276. package/esm2022/lib/utils/index.mjs +1 -1
  277. package/esm2022/lib/utils/osmLinks.mjs +1 -1
  278. package/esm2022/lib/utils/propertyTypeDetector/index.mjs +1 -1
  279. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.interface.mjs +1 -1
  280. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +1 -1
  281. package/esm2022/lib/wkt/shared/wkt.service.mjs +15 -15
  282. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +3 -3
  283. package/esm2022/lib/workspace/confirmation-popup/index.mjs +1 -1
  284. package/esm2022/lib/workspace/shared/edition-workspace.mjs +1 -1
  285. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +1 -1
  286. package/esm2022/lib/workspace/shared/feature-workspace.mjs +1 -1
  287. package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +1 -1
  288. package/esm2022/lib/workspace/shared/wfs-workspace.mjs +1 -1
  289. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +1 -1
  290. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +1 -1
  291. package/esm2022/lib/workspace/shared/workspace.utils.mjs +1 -1
  292. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +3 -3
  293. package/fesm2022/igo2-geo.mjs +183 -180
  294. package/fesm2022/igo2-geo.mjs.map +1 -1
  295. package/lib/feature/shared/feature.interfaces.d.ts +1 -1
  296. package/lib/feature/shared/store.d.ts +2 -2
  297. package/lib/filter/shared/ogc-filter.interface.d.ts +2 -2
  298. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +3 -3
  299. package/lib/layer/shared/layers/layer.d.ts +1 -1
  300. package/lib/layer/shared/layers/layer.interface.d.ts +2 -0
  301. package/lib/layer/utils/image-watcher.d.ts +1 -1
  302. package/lib/layer/utils/tile-watcher.d.ts +2 -2
  303. package/lib/layer/utils/vector-watcher.d.ts +1 -1
  304. package/lib/map/shared/controllers/geolocation.d.ts +1 -1
  305. package/lib/map/shared/linkedLayers.utils.d.ts +1 -1
  306. package/lib/map/shared/map.d.ts +1 -1
  307. package/lib/overlay/shared/overlay.d.ts +1 -1
  308. package/lib/search/search-results/search-results.component.d.ts +2 -2
  309. package/lib/style/shared/vector/vector-style.interface.d.ts +1 -1
  310. package/package.json +5 -4
  311. package/src/_index.scss +2 -0
  312. package/src/geo-theme.scss +23 -23
  313. package/src/lib/catalog/catalog-browser/catalog-browser.theming.scss +22 -22
  314. package/src/lib/catalog/catalog.theming.scss +5 -5
  315. package/src/lib/directions/directions-results/directions-results.theming.scss +10 -10
  316. package/src/lib/directions/directions.theming.scss +6 -6
  317. package/src/lib/draw/draw.theming.scss +32 -32
  318. package/src/lib/feature/feature-details/feature-details.theming.scss +16 -16
  319. package/src/lib/feature/feature.theming.scss +4 -4
  320. package/src/lib/filter/filter.theming.scss +13 -13
  321. package/src/lib/filter/ogc-filter-selection/ogc-filter-selection.theming.scss +18 -18
  322. package/src/lib/filter/time-filter-form/time-filter-form.theming.scss +5 -5
  323. package/src/lib/layer/layer-item/layer-item.theme.scss +33 -33
  324. package/src/lib/layer/layer-legend/layer-legend.theming.scss +10 -10
  325. package/src/lib/layer/layer-list-tool/layer-list-tool.theming.scss +34 -34
  326. package/src/lib/layer/layer.theming.scss +10 -10
  327. package/src/lib/map/map-browser/map-browser.theming.scss +46 -46
  328. package/src/lib/map/map.theming.scss +9 -9
  329. package/src/lib/map/menu-button/menu-button.theming.scss +20 -20
  330. package/src/lib/map/zoom-button/zoom-button.theming.scss +32 -32
  331. package/src/lib/measure/measure.theming.scss +5 -5
  332. package/src/lib/measure/measurer/measurer.theming.scss +26 -26
  333. package/src/lib/search/search-bar/search-bar.theming.scss +0 -9
  334. package/src/lib/search/search-results/search-results-item.theme.scss +20 -20
  335. package/src/lib/search/search.theming.scss +7 -7
  336. package/src/lib/workspace/confirmation-popup/confirmation-popup.theming.scss +14 -14
  337. package/src/lib/workspace/workspace.theming.scss +6 -6
  338. package/src/style/style.scss +1 -1
@@ -494,4 +494,4 @@ export function createOlTooltipAtPoint(olPoint, center = false, srcGeomType = ''
494
494
  olPoint.set('_tooltip', olTooltip);
495
495
  return olTooltip;
496
496
  }
497
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVhc3VyZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21lYXN1cmUvc2hhcmVkL21lYXN1cmUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxTQUFTLElBQUksV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JELE9BQU8sUUFBUSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sWUFBWSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sT0FBTyxNQUFNLGVBQWUsQ0FBQztBQUNwQyxPQUFPLFNBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUUsT0FBTyxJQUFJLFNBQVMsRUFBRSxTQUFTLElBQUksV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNFLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBRXBDLE9BQU8sRUFDTCxlQUFlLEVBQ2YsMkJBQTJCLEVBQzNCLGlCQUFpQixFQUNqQiw2QkFBNkIsRUFDOUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4Qjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEtBQWE7SUFDOUMsT0FBTyxLQUFLLEdBQUcsS0FBSyxDQUFDO0FBQ3ZCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFhO0lBQ3hDLE9BQU8sS0FBSyxHQUFHLE1BQU0sQ0FBQztBQUN4QixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBYTtJQUN6QyxPQUFPLEtBQUssR0FBRyxRQUFRLENBQUM7QUFDMUIsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsOEJBQThCLENBQUMsS0FBYTtJQUMxRCxPQUFPLEtBQUssR0FBRyxRQUFRLENBQUM7QUFD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bnQiOlsiaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5pbXBvcnQgT2xPdmVybGF5IGZyb20gJ29sL092ZXJsYXknO1xyXG5pbXBvcnQgeyBnZXRDZW50ZXIgYXMgb2xHZXRDZW50ZXIgfSBmcm9tICdvbC9leHRlbnQnO1xyXG5pbXBvcnQgT2xDaXJjbGUgZnJvbSAnb2wvZ2VvbS9DaXJjbGUnO1xyXG5pbXBvcnQgT2xMaW5lU3RyaW5nIGZyb20gJ29sL2dlb20vTGluZVN0cmluZyc7XHJcbmltcG9ydCBPbFBvaW50IGZyb20gJ29sL2dlb20vUG9pbnQnO1xyXG5pbXBvcnQgT2xQb2x5Z29uIGZyb20gJ29sL2dlb20vUG9seWdvbic7XHJcbmltcG9ydCB7IGdldEFyZWEgYXMgb2xHZXRBcmVhLCBnZXRMZW5ndGggYXMgb2xHZXRMZW5ndGggfSBmcm9tICdvbC9zcGhlcmUnO1xyXG5pbXBvcnQgKiBhcyBvbHN0eWxlIGZyb20gJ29sL3N0eWxlJztcclxuXHJcbmltcG9ydCB7XHJcbiAgTWVhc3VyZUFyZWFVbml0LFxyXG4gIE1lYXN1cmVBcmVhVW5pdEFiYnJldmlhdGlvbixcclxuICBNZWFzdXJlTGVuZ3RoVW5pdCxcclxuICBNZWFzdXJlTGVuZ3RoVW5pdEFiYnJldmlhdGlvblxyXG59IGZyb20gJy4vbWVhc3VyZS5lbnVtJztcclxuaW1wb3J0IHsgTWVhc3VyZSB9IGZyb20gJy4vbWVhc3VyZS5pbnRlcmZhY2VzJztcclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gbWV0ZXJzIHRvIGtpbG9tZXRlcnNcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xyXG4gKiBAcmV0dXJucyBWYWx1ZSBpbiBraWxvbWV0ZXJzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWV0ZXJzVG9LaWxvbWV0ZXJzKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xyXG4gIHJldHVybiB2YWx1ZSAqIDAuMDAxO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udmVydCB2YWx1ZSBmcm9tIG1ldGVycyB0byBmZWV0XHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcclxuICogQHJldHVybnMgVmFsdWUgaW4gZmVldFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIG1ldGVyc1RvRmVldCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICByZXR1cm4gdmFsdWUgKiAzLjI4MDg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gbWV0ZXJzIHRvIG1pbGVzXHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcclxuICogQHJldHVybnMgVmFsdWUgaW4gbWlsZXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBtZXRlcnNUb01pbGVzKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xyXG4gIHJldHVybiB2YWx1ZSAqIDAuMDAwNjIxO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udmVydCB2YWx1ZSBmcm9tIHNxdWFyZSBtZXRlcnMgdG8gc3F1YXJlIGtpbG9tZXRlcnNcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIHNxdWFyZSBtZXRlcnNcclxuICogQHJldHVybnMgVmFsdWUgaW4gc3F1YXJlIGtpbG9tZXRlcnNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcXVhcmVNZXRlcnNUb1NxdWFyZUtpbG9tZXRlcnModmFsdWU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgcmV0dXJuIHZhbHVlICogMC4wMDAwMDE7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gc3F1YXJlIG1ldGVycyB0byBzcXVhcmUgbWlsZXNcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIHNxdWFyZSBtZXRlcnNcclxuICogQHJldHVybnMgVmFsdWUgaW4gc3F1YXJlIG1pbGVzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc3F1YXJlTWV0ZXJzVG9TcXVhcmVNaWxlcyh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICByZXR1cm4gdmFsdWUgKiAwLjAwMDAwMDM4NjE7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gc3F1YXJlIG1ldGVycyB0byBzcXVhcmUgZmVldFxyXG4gKiBAcGFyYW0gdmFsdWUgVmFsdWUgaW4gc3F1YXJlIG1ldGVyc1xyXG4gKiBAcmV0dXJucyBWYWx1ZSBpbiBzcXVhcmUgZmVldFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNxdWFyZU1ldGVyc1RvU3F1YXJlRmVldCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICByZXR1cm4gdmFsdWUgKiAxMC43NjQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gc3F1YXJlIG1ldGVycyB0byBoZWN0YXJlc1xyXG4gKiBAcGFyYW0gdmFsdWUgVmFsdWUgaW4gc3F1YXJlIG1ldGVyc1xyXG4gKiBAcmV0dXJucyBWYWx1ZSBpbiBoZWN0YXJlc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNxdWFyZU1ldGVyc1RvSGVjdGFyZXModmFsdWU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgcmV0dXJuIHZhbHVlICogMC4wMDAxO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udmVydCB2YWx1ZSBmcm9tIHNxdWFyZSBtZXRlcnMgdG8gYWNyZXNcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIHNxdWFyZSBtZXRlcnNcclxuICogQHJldHVybnMgVmFsdWUgaW4gYWNyZXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcXVhcmVNZXRlcnNUb0FjcmVzKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xyXG4gIHJldHVybiB2YWx1ZSAqIDAuMDAwMjQ3MTE7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gbWV0ZXJzIHRvIHRoZSBzcGVjaWZpZWQgbGVuZ3RoIHVuaXRcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xyXG4gKiBAcGFyYW0gdW5pdCBMZW5ndGggdW5pdFxyXG4gKiBAcmV0dXJucyBWYWx1ZSBpbiB1bml0XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWV0ZXJzVG9Vbml0KFxyXG4gIHZhbHVlOiBudW1iZXIsXHJcbiAgdW5pdDogTWVhc3VyZUxlbmd0aFVuaXRcclxuKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcclxuICBjb25zdCBjb252ZXJzaW9uTWFwcGVyID0gbmV3IE1hcChbXHJcbiAgICBbTWVhc3VyZUxlbmd0aFVuaXQuTWV0ZXJzLCAodmFsOiBudW1iZXIpID0+IHZhbF0sXHJcbiAgICBbTWVhc3VyZUxlbmd0aFVuaXQuS2lsb21ldGVycywgbWV0ZXJzVG9LaWxvbWV0ZXJzXSxcclxuICAgIFtNZWFzdXJlTGVuZ3RoVW5pdC5NaWxlcywgbWV0ZXJzVG9NaWxlc10sXHJcbiAgICBbTWVhc3VyZUxlbmd0aFVuaXQuRmVldCwgbWV0ZXJzVG9GZWV0XVxyXG4gIF0pO1xyXG4gIGNvbnN0IGNvbnZlcnNpb24gPSBjb252ZXJzaW9uTWFwcGVyLmdldCh1bml0KTtcclxuXHJcbiAgcmV0dXJuIGNvbnZlcnNpb24gPyBjb252ZXJzaW9uKHZhbHVlKSA6IHVuZGVmaW5lZDtcclxufVxyXG5cclxuLyoqXHJcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBzcXVhcmUgbWV0ZXJzIHRvIHRoZSBzcGVjaWZpZWQgYXJlYSB1bml0XHJcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcclxuICogQHBhcmFtIHVuaXQgQXJlYSB1bml0XHJcbiAqIEByZXR1cm5zIFZhbHVlIGluIHVuaXRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcXVhcmVNZXRlcnNUb1VuaXQoXHJcbiAgdmFsdWU6IG51bWJlcixcclxuICB1bml0OiBNZWFzdXJlQXJlYVVuaXRcclxuKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcclxuICBjb25zdCBjb252ZXJzaW9uTWFwcGVyID0gbmV3IE1hcChbXHJcbiAgICBbTWVhc3VyZUFyZWFVbml0LlNxdWFyZU1ldGVycywgKHZhbDogbnVtYmVyKSA9PiB2YWxdLFxyXG4gICAgW01lYXN1cmVBcmVhVW5pdC5TcXVhcmVLaWxvbWV0ZXJzLCBzcXVhcmVNZXRlcnNUb1NxdWFyZUtpbG9tZXRlcnNdLFxyXG4gICAgW01lYXN1cmVBcmVhVW5pdC5TcXVhcmVNaWxlcywgc3F1YXJlTWV0ZXJzVG9TcXVhcmVNaWxlc10sXHJcbiAgICBbTWVhc3VyZUFyZWFVbml0LlNxdWFyZUZlZXQsIHNxdWFyZU1ldGVyc1RvU3F1YXJlRmVldF0sXHJcbiAgICBbTWVhc3VyZUFyZWFVbml0LkhlY3RhcmVzLCBzcXVhcmVNZXRlcnNUb0hlY3RhcmVzXSxcclxuICAgIFtNZWFzdXJlQXJlYVVuaXQuQWNyZXMsIHNxdWFyZU1ldGVyc1RvQWNyZXNdXHJcbiAgXSk7XHJcbiAgY29uc3QgY29udmVyc2lvbiA9IGNvbnZlcnNpb25NYXBwZXIuZ2V0KHVuaXQpO1xyXG5cclxuICByZXR1cm4gY29udmVyc2lvbiA/IGNvbnZlcnNpb24odmFsdWUpIDogdW5kZWZpbmVkO1xyXG59XHJcblxyXG4vKipcclxuICogVGhpcyBtZXRob2QgZm9ybWF0IGEgbWVhc3VyZSB0byBhIHJlYWRhYmxlIGZvcm1hdFxyXG4gKiBAcGFyYW0gbWVhc3VyZSBNZWFzdXJlXHJcbiAqIEBwYXJhbSBvcHRpb25zIEZvcm1hdHRpbmcgb3B0aW9uc1xyXG4gKiBAcmV0dXJucyBGb3JtYXR0ZWQgbWVhc3VyZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdE1lYXN1cmUoXHJcbiAgbWVhc3VyZTogbnVtYmVyLFxyXG4gIG9wdGlvbnM/OiB7XHJcbiAgICBkZWNpbWFsPzogbnVtYmVyO1xyXG4gICAgdW5pdD86IE1lYXN1cmVBcmVhVW5pdCB8IE1lYXN1cmVMZW5ndGhVbml0O1xyXG4gICAgdW5pdEFiYnI/OiBib29sZWFuO1xyXG4gICAgbG9jYWxlPzogc3RyaW5nO1xyXG4gIH0sXHJcbiAgbGFuZ3VhZ2VTZXJ2aWNlPzogTGFuZ3VhZ2VTZXJ2aWNlXHJcbikge1xyXG4gIGxldCBkZWNpbWFsID0gb3B0aW9ucy5kZWNpbWFsO1xyXG4gIGlmIChkZWNpbWFsID09PSB1bmRlZmluZWQgfHwgZGVjaW1hbCA8IDApIHtcclxuICAgIGRlY2ltYWwgPSAxO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgcGFydHMgPSBbXTtcclxuICBpZiAob3B0aW9ucy5sb2NhbGUgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgcGFydHMucHVzaChcclxuICAgICAgbWVhc3VyZS50b0xvY2FsZVN0cmluZyhvcHRpb25zLmxvY2FsZSwge1xyXG4gICAgICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogZGVjaW1hbCxcclxuICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGRlY2ltYWxcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfSBlbHNlIHtcclxuICAgIHBhcnRzLnB1c2gobWVhc3VyZS50b0ZpeGVkKGRlY2ltYWwpLnRvU3RyaW5nKCkpO1xyXG4gIH1cclxuXHJcbiAgaWYgKG9wdGlvbnMudW5pdCAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbnMudW5pdEFiYnIgPT09IHRydWUpIHtcclxuICAgIGlmIChsYW5ndWFnZVNlcnZpY2UpIHtcclxuICAgICAgcGFydHMucHVzaChcclxuICAgICAgICBNZWFzdXJlTGVuZ3RoVW5pdEFiYnJldmlhdGlvbltvcHRpb25zLnVuaXRdXHJcbiAgICAgICAgICA/IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcclxuICAgICAgICAgICAgICAnaWdvLmdlby5tZWFzdXJlLicgKyBNZWFzdXJlTGVuZ3RoVW5pdEFiYnJldmlhdGlvbltvcHRpb25zLnVuaXRdXHJcbiAgICAgICAgICAgIClcclxuICAgICAgICAgIDogbGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgICAgICdpZ28uZ2VvLm1lYXN1cmUuJyArIE1lYXN1cmVBcmVhVW5pdEFiYnJldmlhdGlvbltvcHRpb25zLnVuaXRdXHJcbiAgICAgICAgICAgIClcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHBhcnRzLnB1c2goXHJcbiAgICAgICAgTWVhc3VyZUxlbmd0aFVuaXRBYmJyZXZpYXRpb25bb3B0aW9ucy51bml0XSB8fFxyXG4gICAgICAgICAgTWVhc3VyZUFyZWFVbml0QWJicmV2aWF0aW9uW29wdGlvbnMudW5pdF1cclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBwYXJ0cy5maWx0ZXIoKHApID0+IHAgIT09IHVuZGVmaW5lZCkuam9pbignICcpO1xyXG59XHJcblxyXG4vKipcclxuICogQ29tcHV0ZSBiZXN0IGxlbmd0aCBtZWFzdXJlIHVuaXQgZm9yIGEgZ2l2ZW4gbWVhc3VyZSBpbiBtZXRlcnNcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xyXG4gKiBAcmV0dXJucyBNZWFzdXJlIHVuaXRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlQmVzdExlbmd0aFVuaXQodmFsdWU6IG51bWJlcik6IE1lYXN1cmVMZW5ndGhVbml0IHtcclxuICBsZXQgdW5pdCA9IE1lYXN1cmVMZW5ndGhVbml0Lk1ldGVycztcclxuICBsZXQgY29udmVydGVkID0gdmFsdWU7XHJcbiAgY29uc3QgcG9zc2libGVVbml0cyA9IFtNZWFzdXJlTGVuZ3RoVW5pdC5LaWxvbWV0ZXJzXTtcclxuICB3aGlsZSAoY29udmVydGVkID4gMTAwMCAmJiBwb3NzaWJsZVVuaXRzLmxlbmd0aCA+IDApIHtcclxuICAgIHVuaXQgPSBwb3NzaWJsZVVuaXRzLnBvcCgpO1xyXG4gICAgY29udmVydGVkID0gbWV0ZXJzVG9Vbml0KHZhbHVlLCB1bml0KTtcclxuICB9XHJcbiAgcmV0dXJuIHVuaXQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb21wdXRlIGJlc3QgbGVuZ3RoIG1lYXN1cmUgdW5pdCBmb3IgYSBnaXZlbiBtZWFzdXJlIGluIHNxdWFyZSBtZXRlcnNcclxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xyXG4gKiBAcmV0dXJucyBNZWFzdXJlIHVuaXRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlQmVzdEFyZWFVbml0KHZhbHVlOiBudW1iZXIpOiBNZWFzdXJlQXJlYVVuaXQge1xyXG4gIGxldCB1bml0ID0gTWVhc3VyZUFyZWFVbml0LlNxdWFyZU1ldGVycztcclxuICBsZXQgY29udmVydGVkID0gdmFsdWU7XHJcbiAgY29uc3QgcG9zc2libGVVbml0cyA9IFtNZWFzdXJlQXJlYVVuaXQuU3F1YXJlS2lsb21ldGVyc107XHJcbiAgd2hpbGUgKGNvbnZlcnRlZCA+IDEwMDAwMDAgJiYgcG9zc2libGVVbml0cy5sZW5ndGggPiAwKSB7XHJcbiAgICB1bml0ID0gcG9zc2libGVVbml0cy5wb3AoKTtcclxuICAgIGNvbnZlcnRlZCA9IHNxdWFyZU1ldGVyc1RvVW5pdCh2YWx1ZSwgdW5pdCk7XHJcbiAgfVxyXG4gIHJldHVybiB1bml0O1xyXG59XHJcblxyXG4vKipcclxuICogQ3JlYXRlIGEgZGVmYXVsdCBzdHlsZSBmb3IgYSBtZWFzdXJlIGludGVyYWN0aW9uXHJcbiAqIEByZXR1cm5zIE9MIHN0eWxlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTWVhc3VyZUludGVyYWN0aW9uU3R5bGUoKTogb2xzdHlsZS5TdHlsZSB7XHJcbiAgcmV0dXJuIG5ldyBvbHN0eWxlLlN0eWxlKHtcclxuICAgIHN0cm9rZTogbmV3IG9sc3R5bGUuU3Ryb2tlKHtcclxuICAgICAgY29sb3I6ICcjZmZjYzMzJyxcclxuICAgICAgbGluZURhc2g6IFsxMCwgMTBdLFxyXG4gICAgICB3aWR0aDogMlxyXG4gICAgfSksXHJcbiAgICBmaWxsOiBuZXcgb2xzdHlsZS5GaWxsKHtcclxuICAgICAgY29sb3I6ICdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMiknXHJcbiAgICB9KSxcclxuICAgIGltYWdlOiBuZXcgb2xzdHlsZS5DaXJjbGUoe1xyXG4gICAgICByYWRpdXM6IDUsXHJcbiAgICAgIHN0cm9rZTogbmV3IG9sc3R5bGUuU3Ryb2tlKHtcclxuICAgICAgICBjb2xvcjogJyNmZmNjMzMnXHJcbiAgICAgIH0pLFxyXG4gICAgICBmaWxsOiBuZXcgb2xzdHlsZS5GaWxsKHtcclxuICAgICAgICBjb2xvcjogJ3JnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKSdcclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDcmVhdGUgYSBkZWZhdWx0IHN0eWxlIGZvciBhIG1lYXN1cmUgbGF5ZXJcclxuICogQHJldHVybnMgT0wgc3R5bGVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNZWFzdXJlTGF5ZXJTdHlsZSgpOiBvbHN0eWxlLlN0eWxlIHtcclxuICByZXR1cm4gbmV3IG9sc3R5bGUuU3R5bGUoe1xyXG4gICAgc3Ryb2tlOiBuZXcgb2xzdHlsZS5TdHJva2Uoe1xyXG4gICAgICBjb2xvcjogJyNmZmNjMzMnLFxyXG4gICAgICB3aWR0aDogMlxyXG4gICAgfSksXHJcbiAgICBmaWxsOiBuZXcgb2xzdHlsZS5GaWxsKHtcclxuICAgICAgY29sb3I6ICdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMiknXHJcbiAgICB9KVxyXG4gIH0pO1xyXG59XHJcblxyXG4vKipcclxuICogQ29tcHV0ZSB0aGUgbGVuZ3RoIGluIG1ldGVycyBvZiBhbiBPTCBnZW9tZXRyeSB3aXRoIGEgZ2l2ZW4gcHJvamVjdGlvblxyXG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPbCBnZW9tZXRyeVxyXG4gKiBAcGFyYW0gcHJvamVjdGlvbiBvbEdlb21ldHJ5J3MgcHJvamVjdGlvblxyXG4gKiBAcmV0dXJucyBMZW5ndGggaW4gbWV0ZXJzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWVhc3VyZU9sR2VvbWV0cnlMZW5ndGgoXHJcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlLFxyXG4gIHByb2plY3Rpb246IHN0cmluZ1xyXG4pOiBudW1iZXIgfCB1bmRlZmluZWQge1xyXG4gIGlmIChvbEdlb21ldHJ5IGluc3RhbmNlb2YgT2xQb2ludCkge1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcbiAgaWYgKG9sR2VvbWV0cnkuZ2V0RmxhdENvb3JkaW5hdGVzKCkubGVuZ3RoID09PSAwKSB7XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIH1cclxuICByZXR1cm4gb2xHZXRMZW5ndGgob2xHZW9tZXRyeSwgeyBwcm9qZWN0aW9uIH0pO1xyXG59XHJcblxyXG4vKipcclxuICogQ29tcHV0ZSB0aGUgYXJlYSBpbiBzcXVhcmUgbWV0ZXJzIG9mIGFuIE9MIGdlb21ldHJ5IHdpdGggYSBnaXZlbiBwcm9qZWN0aW9uXHJcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9sIGdlb21ldHJ5XHJcbiAqIEBwYXJhbSBwcm9qZWN0aW9uIG9sR2VvbWV0cnkncyBwcm9qZWN0aW9uXHJcbiAqIEByZXR1cm5zIEFyZWEgaW4gc3F1YXJlIG1ldGVyc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIG1lYXN1cmVPbEdlb21ldHJ5QXJlYShcclxuICBvbEdlb21ldHJ5OiBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xQb2x5Z29uIHwgT2xDaXJjbGUsXHJcbiAgcHJvamVjdGlvbjogc3RyaW5nXHJcbik6IG51bWJlciB8IHVuZGVmaW5lZCB7XHJcbiAgaWYgKG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbFBvaW50IHx8IG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbExpbmVTdHJpbmcpIHtcclxuICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgfVxyXG4gIGlmIChvbEdlb21ldHJ5LmdldEZsYXRDb29yZGluYXRlcygpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICB9XHJcbiAgcmV0dXJuIG9sR2V0QXJlYShvbEdlb21ldHJ5LCB7IHByb2plY3Rpb24gfSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb21wdXRlIHRoZSBhcmVhIChzcXVhcmUgbWV0ZXJzKSwgbGVuZ3RoIChtZXRlcnMpIGFuZCBsYXN0IGxlbmd0aCAobWV0ZXJzKVxyXG4gKiBvZiBhbiBPTCBnZW9tZXRyeSB3aXRoIGEgZ2l2ZW4gcHJvamVjdGlvbi5cclxuICogQHBhcmFtIG9sR2VvbWV0cnkgT2wgZ2VvbWV0cnlcclxuICogQHBhcmFtIHByb2plY3Rpb24gb2xHZW9tZXRyeSdzIHByb2plY3Rpb25cclxuICogQHJldHVybnMgQ29tcHV0ZWQgbWVhc3VyZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIG1lYXN1cmVPbEdlb21ldHJ5KFxyXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZSxcclxuICBwcm9qZWN0aW9uOiBzdHJpbmdcclxuKTogTWVhc3VyZSB7XHJcbiAgY29uc3QgbGVuZ3RoID0gbWVhc3VyZU9sR2VvbWV0cnlMZW5ndGgob2xHZW9tZXRyeSwgcHJvamVjdGlvbik7XHJcbiAgY29uc3QgYXJlYSA9IG1lYXN1cmVPbEdlb21ldHJ5QXJlYShvbEdlb21ldHJ5LCBwcm9qZWN0aW9uKTtcclxuXHJcbiAgY29uc3QgbGVuZ3RocyA9IFtdO1xyXG4gIGNvbnN0IGNvb3JkaW5hdGVzID0gb2xHZW9tZXRyeS5nZXRGbGF0Q29vcmRpbmF0ZXMoKTtcclxuICBjb25zdCBjb29yZGluYXRlc0xlbmd0aCA9IGNvb3JkaW5hdGVzLmxlbmd0aDtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8PSBjb29yZGluYXRlc0xlbmd0aCAtIDQ7IGkgKz0gMikge1xyXG4gICAgY29uc3Qgb2xTZWdtZW50ID0gbmV3IE9sTGluZVN0cmluZyhbXHJcbiAgICAgIFtjb29yZGluYXRlc1tpXSwgY29vcmRpbmF0ZXNbaSArIDFdXSxcclxuICAgICAgW2Nvb3JkaW5hdGVzW2kgKyAyXSwgY29vcmRpbmF0ZXNbaSArIDNdXVxyXG4gICAgXSk7XHJcblxyXG4gICAgbGVuZ3Rocy5wdXNoKG1lYXN1cmVPbEdlb21ldHJ5TGVuZ3RoKG9sU2VnbWVudCwgcHJvamVjdGlvbikpO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHtcclxuICAgIGFyZWEsXHJcbiAgICBsZW5ndGgsXHJcbiAgICBsZW5ndGhzXHJcbiAgfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFVwZGF0ZSBhbiBPTCBnZW9tZXRyeSBtaWRwb2ludHMgYW5kIHJldHVybiBhbiBhcnJheSBvZiB0aG9zZSBwb2ludHNcclxuICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgR2VvbWV0cnlcclxuICogQHJldHVybnMgT0wgcG9pbnRzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlT2xHZW9tZXRyeU1pZHBvaW50cyhcclxuICBvbEdlb21ldHJ5OiBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xQb2x5Z29uIHwgT2xDaXJjbGVcclxuKTogT2xQb2ludFtdIHtcclxuICBsZXQgb2xNaWRwb2ludHM7XHJcbiAgaWYgKG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbFBvaW50KSB7XHJcbiAgICBjb25zdCBvbE1pZHBvaW50UG9pbnQgPSBuZXcgT2xQb2ludChvbEdlb21ldHJ5LmdldEZsYXRDb29yZGluYXRlcygpKTtcclxuICAgIG9sTWlkcG9pbnRzID0gbmV3IEFycmF5KDEpO1xyXG4gICAgb2xNaWRwb2ludHNbMF0gPSBvbE1pZHBvaW50UG9pbnQ7XHJcbiAgfSBlbHNlIHtcclxuICAgIG9sTWlkcG9pbnRzID0gZ2V0T2xHZW9tZXRyeU1pZHBvaW50cyhvbEdlb21ldHJ5KTtcclxuICAgIC8vIFRPRE86IGhhbmRsZSBtdWx0aSBnZW9tZXRyaWVzXHJcbiAgICBjb25zdCBjb29yZGluYXRlcyA9IG9sR2VvbWV0cnkuZ2V0RmxhdENvb3JkaW5hdGVzKCk7XHJcbiAgICBjb25zdCBtaWRwb2ludHNMZW5ndGggPSBvbE1pZHBvaW50cy5sZW5ndGg7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1pZHBvaW50c0xlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGNvbnN0IGogPSBpICogMjtcclxuICAgICAgY29uc3Qgb2xTZWdtZW50ID0gbmV3IE9sTGluZVN0cmluZyhbXHJcbiAgICAgICAgW2Nvb3JkaW5hdGVzW2pdLCBjb29yZGluYXRlc1tqICsgMV1dLFxyXG4gICAgICAgIFtjb29yZGluYXRlc1tqICsgMl0sIGNvb3JkaW5hdGVzW2ogKyAzXV1cclxuICAgICAgXSk7XHJcblxyXG4gICAgICBjb25zdCBtaWRwb2ludENvb3JkaW5hdGUgPSBvbFNlZ21lbnQuZ2V0Q29vcmRpbmF0ZUF0KDAuNSk7XHJcbiAgICAgIGNvbnN0IG9sTWlkcG9pbnQgPSBvbE1pZHBvaW50c1tpXTtcclxuICAgICAgaWYgKG9sTWlkcG9pbnQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIG9sTWlkcG9pbnQuc2V0Q29vcmRpbmF0ZXMobWlkcG9pbnRDb29yZGluYXRlKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBvbE1pZHBvaW50c1tpXSA9IG5ldyBPbFBvaW50KG1pZHBvaW50Q29vcmRpbmF0ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIG9sTWlkcG9pbnRzO1xyXG59XHJcblxyXG4vKipcclxuICogQ2xlYXIgYW4gT0wgZ2VvbWV0cnkgbWlkcG9pbnRzIGFuZCByZXR1cm4gYW4gYXJyYXkgb2YgdGhvc2UgcG9pbnRzXHJcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY2xlYXJPbEdlb21ldHJ5TWlkcG9pbnRzKFxyXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxyXG4pIHtcclxuICBjb25zdCBvbE1pZHBvaW50cyA9IG9sR2VvbWV0cnkuZ2V0KCdfbWlkcG9pbnRzJykgfHwgW107XHJcbiAgY29uc3QgbWlkcG9pbnRzTGVuZ3RoID0gb2xNaWRwb2ludHMubGVuZ3RoO1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbWlkcG9pbnRzTGVuZ3RoOyBpKyspIHtcclxuICAgIGNvbnN0IG9sTWlkcG9pbnQgPSBvbE1pZHBvaW50c1tpXTtcclxuICAgIGlmIChvbE1pZHBvaW50ICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgaWYgKG9sTWlkcG9pbnQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIGNsZWFyT2xNaWRwb2ludFRvb2x0aXAob2xNaWRwb2ludCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9sR2VvbWV0cnkuc2V0KCdfbWlkcG9pbnRzJywgdW5kZWZpbmVkLCB0cnVlKTtcclxuXHJcbiAgcmV0dXJuIG9sTWlkcG9pbnRzO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGFuIGFycmF5IG9mICBPTCBnZW9tZXRyeSBtaWRwb2ludHMsIGlmIGFueVxyXG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBHZW9tZXRyeVxyXG4gKiBAcmV0dXJucyBPTCBwb2ludHNcclxuICovXHJcbmZ1bmN0aW9uIGdldE9sR2VvbWV0cnlNaWRwb2ludHMoXHJcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlXHJcbik6IE9sUG9pbnRbXSB7XHJcbiAgbGV0IGV4cGVjdGVkTnVtYmVyO1xyXG4gIGlmIChvbEdlb21ldHJ5IGluc3RhbmNlb2YgT2xDaXJjbGUpIHtcclxuICAgIGV4cGVjdGVkTnVtYmVyID0gMDtcclxuICB9IGVsc2Uge1xyXG4gICAgZXhwZWN0ZWROdW1iZXIgPSBNYXRoLm1heChcclxuICAgICAgb2xHZW9tZXRyeS5nZXRGbGF0Q29vcmRpbmF0ZXMoKS5sZW5ndGggLyAyIC0gMSxcclxuICAgICAgMFxyXG4gICAgKTtcclxuICB9XHJcbiAgLy8gVE9ETzogVGhpcyB3b3JrcyBidXQgaXQncyBxdWl0ZSBtZXNzeS4gSWYgdGltZSBwZXJtaXRzLFxyXG4gIC8vIGNsZWFuIHRoaXMuIE1heWJlIGEgVG9vbHRpcCBjbGFzcyBjb3VsZCBoYW5kbGUgdGhhdFxyXG4gIGxldCBvbE1pZHBvaW50cyA9IG9sR2VvbWV0cnkuZ2V0KCdfbWlkcG9pbnRzJyk7XHJcblxyXG4gIGlmIChvbE1pZHBvaW50cyA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICBpZiAob2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sUG9pbnQpIHtcclxuICAgICAgb2xNaWRwb2ludHMgPSBuZXcgQXJyYXkoMSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBvbE1pZHBvaW50cyA9IG5ldyBBcnJheShleHBlY3RlZE51bWJlcik7XHJcbiAgICB9XHJcbiAgICBvbEdlb21ldHJ5LnNldCgnX21pZHBvaW50cycsIG9sTWlkcG9pbnRzLCB0cnVlKTtcclxuICAgIHJldHVybiBvbE1pZHBvaW50cztcclxuICB9XHJcblxyXG4gIGlmIChleHBlY3RlZE51bWJlciA9PT0gMCkge1xyXG4gICAgcmV0dXJuIG9sTWlkcG9pbnRzO1xyXG4gIH1cclxuXHJcbiAgaWYgKGV4cGVjdGVkTnVtYmVyID09PSBvbE1pZHBvaW50cy5sZW5ndGgpIHtcclxuICAgIHJldHVybiBvbE1pZHBvaW50cztcclxuICB9XHJcblxyXG4gIGlmIChleHBlY3RlZE51bWJlciA+IG9sTWlkcG9pbnRzLmxlbmd0aCkge1xyXG4gICAgb2xNaWRwb2ludHMucHVzaCguLi5uZXcgQXJyYXkoZXhwZWN0ZWROdW1iZXIgLSBvbE1pZHBvaW50cy5sZW5ndGgpKTtcclxuICAgIHJldHVybiBvbE1pZHBvaW50cztcclxuICB9XHJcblxyXG4gIGZvciAobGV0IGkgPSBleHBlY3RlZE51bWJlcjsgaSA8IG9sTWlkcG9pbnRzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBjb25zdCBvbE1pZHBvaW50ID0gb2xNaWRwb2ludHNbZXhwZWN0ZWROdW1iZXJdO1xyXG4gICAgaWYgKG9sTWlkcG9pbnQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICBjbGVhck9sTWlkcG9pbnRUb29sdGlwKG9sTWlkcG9pbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbE1pZHBvaW50cy5zcGxpY2UoZXhwZWN0ZWROdW1iZXIpO1xyXG5cclxuICByZXR1cm4gb2xNaWRwb2ludHM7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgYW4gT0wgbWlkcG9pbnQncyB0b29sdGlwIGZyb20gdGhlIG1hcFxyXG4gKiBAcGFyYW0gb2xNaWRwb2ludCBPTCBQb2ludFxyXG4gKi9cclxuZnVuY3Rpb24gY2xlYXJPbE1pZHBvaW50VG9vbHRpcChvbE1pZHBvaW50OiBPbFBvaW50KSB7XHJcbiAgY29uc3Qgb2xUb29sdGlwID0gb2xNaWRwb2ludC5nZXQoJ190b29sdGlwJyk7XHJcbiAgaWYgKG9sVG9vbHRpcCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICBjb25zdCBvbE1hcCA9IG9sVG9vbHRpcC5nZXRNYXAoKTtcclxuICAgIGlmIChvbE1hcCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIG9sTWFwLnJlbW92ZU92ZXJsYXkob2xUb29sdGlwKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGQgYW4gT0wgb3ZlcmxheSBhdCBlYWNoIG1pZHBvaW50IGFuZCByZXR1cm4gYW4gYXJyYXkgb2YgdGhvc2Ugb3ZlcmxheXNcclxuICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgR2VvbWV0cnlcclxuICogQHJldHVybnMgT0wgb3ZlcmxheXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVPbFRvb2x0aXBzQXRNaWRwb2ludHMoXHJcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlXHJcbik6IE9sT3ZlcmxheVtdIHtcclxuICBjb25zdCBvbE1pZHBvaW50cyA9IHVwZGF0ZU9sR2VvbWV0cnlNaWRwb2ludHMob2xHZW9tZXRyeSk7XHJcbiAgbGV0IHR5cGVHZW9tID0gJyc7XHJcbiAgaWYgKG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbExpbmVTdHJpbmcpIHtcclxuICAgIHR5cGVHZW9tID0gJ2xpbmUtJztcclxuICB9IGVsc2UgaWYgKG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbFBvbHlnb24pIHtcclxuICAgIHR5cGVHZW9tID0gJ3BvbHlnb25lLSc7XHJcbiAgfVxyXG4gIGNvbnN0IG9sVG9vbHRpcHMgPSBvbE1pZHBvaW50cy5tYXAoKG9sTWlkcG9pbnQ6IE9sUG9pbnQpID0+IHtcclxuICAgIGxldCBvbFRvb2x0aXAgPSBvbE1pZHBvaW50LmdldCgnX3Rvb2x0aXAnKTtcclxuICAgIGlmIChvbFRvb2x0aXAgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICBvbFRvb2x0aXAgPSBjcmVhdGVPbFRvb2x0aXBBdFBvaW50KG9sTWlkcG9pbnQsIGZhbHNlLCB0eXBlR2VvbSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBvbFRvb2x0aXAuc2V0UG9zaXRpb24ob2xNaWRwb2ludC5nZXRGbGF0Q29vcmRpbmF0ZXMoKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gb2xUb29sdGlwO1xyXG4gIH0pO1xyXG4gIHJldHVybiBvbFRvb2x0aXBzO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGFuIGFycmF5IG9mIE9MIG92ZXJsYXkgYXQgbWlkc3BvaW50cywgaWYgYW55XHJcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XHJcbiAqIEByZXR1cm5zIE9MIG92ZXJsYXlzXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0T2xUb29sdGlwc0F0TWlkcG9pbnRzKFxyXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxyXG4pOiBPbE92ZXJsYXlbXSB7XHJcbiAgY29uc3Qgb2xNaWRwb2ludHMgPSBnZXRPbEdlb21ldHJ5TWlkcG9pbnRzKG9sR2VvbWV0cnkpO1xyXG4gIHJldHVybiBvbE1pZHBvaW50cy5tYXAoKG9sTWlkcG9pbnQ6IE9sUG9pbnQpID0+IHtcclxuICAgIHJldHVybiBvbE1pZHBvaW50ID8gb2xNaWRwb2ludC5nZXQoJ190b29sdGlwJykgOiB1bmRlZmluZWQ7XHJcbiAgfSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBVcGRhdGUgYW4gT0wgZ2VvbWV0cnkgY2VudGVyIGFuZCByZXR1cm4gaXRcclxuICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgR2VvbWV0cnlcclxuICogQHJldHVybnMgT0wgcG9pbnRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVPbEdlb21ldHJ5Q2VudGVyKFxyXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxyXG4pOiBPbFBvaW50IHtcclxuICBsZXQgb2xDZW50ZXIgPSBvbEdlb21ldHJ5LmdldCgnX2NlbnRlcicpO1xyXG4gIGNvbnN0IGNlbnRlckNvb3JkaW5hdGUgPSBvbEdldENlbnRlcihvbEdlb21ldHJ5LmdldEV4dGVudCgpKTtcclxuICBpZiAob2xDZW50ZXIgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgb2xDZW50ZXIuc2V0Q29vcmRpbmF0ZXMoY2VudGVyQ29vcmRpbmF0ZSk7XHJcbiAgfSBlbHNlIHtcclxuICAgIG9sQ2VudGVyID0gbmV3IE9sUG9pbnQoY2VudGVyQ29vcmRpbmF0ZSk7XHJcbiAgICBvbEdlb21ldHJ5LnNldCgnX2NlbnRlcicsIG9sQ2VudGVyKTtcclxuICB9XHJcblxyXG4gIHJldHVybiBvbENlbnRlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZCBhbiBPTCBvdmVybGF5IGF0IHRoZSBjZW50ZXIgb2YgYSBnZW9tZXRyeSBhbmQgcmV0dXJuIHRoYXQgb3ZlcmxheVxyXG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBHZW9tZXRyeVxyXG4gKiBAcmV0dXJucyBPTCBvdmVybGF5XHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlT2xUb29sdGlwQXRDZW50ZXIoXHJcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlXHJcbik6IE9sT3ZlcmxheSB7XHJcbiAgY29uc3Qgb2xDZW50ZXIgPSB1cGRhdGVPbEdlb21ldHJ5Q2VudGVyKG9sR2VvbWV0cnkpO1xyXG4gIGxldCBvbFRvb2x0aXAgPSBvbENlbnRlci5nZXQoJ190b29sdGlwJyk7XHJcbiAgaWYgKG9sVG9vbHRpcCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICBvbFRvb2x0aXAgPSBjcmVhdGVPbFRvb2x0aXBBdFBvaW50KG9sQ2VudGVyLCB0cnVlKTtcclxuICB9IGVsc2Uge1xyXG4gICAgb2xUb29sdGlwLnNldFBvc2l0aW9uKG9sQ2VudGVyLmdldEZsYXRDb29yZGluYXRlcygpKTtcclxuICB9XHJcbiAgcmV0dXJuIG9sVG9vbHRpcDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBhbiBhcnJheSBvZiBPTCBvdmVybGF5IGF0IG1pZHNwb2ludHMsIGlmIGFueVxyXG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBHZW9tZXRyeVxyXG4gKiBAcmV0dXJucyBPTCBvdmVybGF5c1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldE9sVG9vbHRpcEF0Q2VudGVyKFxyXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxyXG4pOiBPbE92ZXJsYXkge1xyXG4gIGNvbnN0IG9sQ2VudGVyID0gb2xHZW9tZXRyeS5nZXQoJ19jZW50ZXInKTtcclxuICByZXR1cm4gb2xDZW50ZXIgPyBvbENlbnRlci5nZXQoJ190b29sdGlwJykgOiB1bmRlZmluZWQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZXQgYWxsIHRoZSB0b29sdGlwcyBvZiBhbiBPTCBnZW9tZXRyeVxyXG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBHZW9tZXRyeVxyXG4gKiBAcmV0dXJucyBPTCBvdmVybGF5c1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFRvb2x0aXBzT2ZPbEdlb21ldHJ5KFxyXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxyXG4pOiBPbE92ZXJsYXlbXSB7XHJcbiAgY29uc3Qgb2xUb29sdGlwcyA9IFtdLmNvbmNhdChnZXRPbFRvb2x0aXBzQXRNaWRwb2ludHMob2xHZW9tZXRyeSkgfHwgW10pO1xyXG4gIGNvbnN0IG9sQ2VudGVyVG9vbHRpcCA9IGdldE9sVG9vbHRpcEF0Q2VudGVyKG9sR2VvbWV0cnkpO1xyXG4gIGlmIChvbENlbnRlclRvb2x0aXAgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgb2xUb29sdGlwcy5wdXNoKG9sQ2VudGVyVG9vbHRpcCk7XHJcbiAgfVxyXG4gIHJldHVybiBvbFRvb2x0aXBzO1xyXG59XHJcblxyXG4vKipcclxuICogQ3JlYXRlIGFuIE9MIG92ZXJsYXkgYXQgYSBwb2ludCBhbmQgYmluZCB0aGUgb3ZlcmxheSB0byB0aGUgcG9pbnRcclxuICogQHBhcmFtIG9sUG9pbnQgT0wgUG9pbnRcclxuICogQHJldHVybnMgT0wgb3ZlcmxheVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU9sVG9vbHRpcEF0UG9pbnQoXHJcbiAgb2xQb2ludDogT2xQb2ludCxcclxuICBjZW50ZXI6IGJvb2xlYW4gPSBmYWxzZSxcclxuICBzcmNHZW9tVHlwZTogc3RyaW5nID0gJydcclxuKTogT2xPdmVybGF5IHtcclxuICBjb25zdCBvbFRvb2x0aXAgPSBuZXcgT2xPdmVybGF5KHtcclxuICAgIGVsZW1lbnQ6IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLFxyXG4gICAgb2Zmc2V0OiBbLTMwLCAtMTBdLFxyXG4gICAgY2xhc3NOYW1lOiAoY2VudGVyXHJcbiAgICAgID8gW1xyXG4gICAgICAgICAgJ2lnby1tYXAtdG9vbHRpcCcsXHJcbiAgICAgICAgICAnaWdvLW1hcC10b29sdGlwLW1lYXN1cmUnLFxyXG4gICAgICAgICAgJ2lnby1tYXAtdG9vbHRpcC1tZWFzdXJlLWFyZWEnXHJcbiAgICAgICAgXVxyXG4gICAgICA6IFtcclxuICAgICAgICAgICdpZ28tbWFwLXRvb2x0aXAnLFxyXG4gICAgICAgICAgJ2lnby1tYXAtdG9vbHRpcC1tZWFzdXJlJyxcclxuICAgICAgICAgIGBpZ28tbWFwLXRvb2x0aXAtbWVhc3VyZS0ke3NyY0dlb21UeXBlfXNlZ21lbnRzYFxyXG4gICAgICAgIF1cclxuICAgICkuam9pbignICcpLFxyXG4gICAgc3RvcEV2ZW50OiBmYWxzZVxyXG4gIH0pO1xyXG4gIG9sVG9vbHRpcC5zZXRQb3NpdGlvbihvbFBvaW50LmdldEZsYXRDb29yZGluYXRlcygpKTtcclxuICBvbFBvaW50LnNldCgnX3Rvb2x0aXAnLCBvbFRvb2x0aXApO1xyXG5cclxuICByZXR1cm4gb2xUb29sdGlwO1xyXG59XHJcbiJdfQ==
497
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVhc3VyZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21lYXN1cmUvc2hhcmVkL21lYXN1cmUudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxTQUFTLE1BQU0sWUFBWSxDQUFDO0FBQ25DLE9BQU8sRUFBRSxTQUFTLElBQUksV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JELE9BQU8sUUFBUSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sWUFBWSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sT0FBTyxNQUFNLGVBQWUsQ0FBQztBQUNwQyxPQUFPLFNBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUUsT0FBTyxJQUFJLFNBQVMsRUFBRSxTQUFTLElBQUksV0FBVyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNFLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBRXBDLE9BQU8sRUFDTCxlQUFlLEVBQ2YsMkJBQTJCLEVBQzNCLGlCQUFpQixFQUNqQiw2QkFBNkIsRUFDOUIsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4Qjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEtBQWE7SUFDOUMsT0FBTyxLQUFLLEdBQUcsS0FBSyxDQUFDO0FBQ3ZCLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxLQUFhO0lBQ3hDLE9BQU8sS0FBSyxHQUFHLE1BQU0sQ0FBQztBQUN4QixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxhQUFhLENBQUMsS0FBYTtJQUN6QyxPQUFPLEtBQUssR0FBRyxRQUFRLENBQUM7QUFDMUIsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsOEJBQThCLENBQUMsS0FBYTtJQUMxRCxPQUFPLEtBQUssR0FBRyxRQUFRLENBQUM7QUFD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bnQiOlsiaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5cbmltcG9ydCBPbE92ZXJsYXkgZnJvbSAnb2wvT3ZlcmxheSc7XG5pbXBvcnQgeyBnZXRDZW50ZXIgYXMgb2xHZXRDZW50ZXIgfSBmcm9tICdvbC9leHRlbnQnO1xuaW1wb3J0IE9sQ2lyY2xlIGZyb20gJ29sL2dlb20vQ2lyY2xlJztcbmltcG9ydCBPbExpbmVTdHJpbmcgZnJvbSAnb2wvZ2VvbS9MaW5lU3RyaW5nJztcbmltcG9ydCBPbFBvaW50IGZyb20gJ29sL2dlb20vUG9pbnQnO1xuaW1wb3J0IE9sUG9seWdvbiBmcm9tICdvbC9nZW9tL1BvbHlnb24nO1xuaW1wb3J0IHsgZ2V0QXJlYSBhcyBvbEdldEFyZWEsIGdldExlbmd0aCBhcyBvbEdldExlbmd0aCB9IGZyb20gJ29sL3NwaGVyZSc7XG5pbXBvcnQgKiBhcyBvbHN0eWxlIGZyb20gJ29sL3N0eWxlJztcblxuaW1wb3J0IHtcbiAgTWVhc3VyZUFyZWFVbml0LFxuICBNZWFzdXJlQXJlYVVuaXRBYmJyZXZpYXRpb24sXG4gIE1lYXN1cmVMZW5ndGhVbml0LFxuICBNZWFzdXJlTGVuZ3RoVW5pdEFiYnJldmlhdGlvblxufSBmcm9tICcuL21lYXN1cmUuZW51bSc7XG5pbXBvcnQgeyBNZWFzdXJlIH0gZnJvbSAnLi9tZWFzdXJlLmludGVyZmFjZXMnO1xuXG4vKipcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBtZXRlcnMgdG8ga2lsb21ldGVyc1xuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xuICogQHJldHVybnMgVmFsdWUgaW4ga2lsb21ldGVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbWV0ZXJzVG9LaWxvbWV0ZXJzKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gdmFsdWUgKiAwLjAwMTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gbWV0ZXJzIHRvIGZlZXRcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcbiAqIEByZXR1cm5zIFZhbHVlIGluIGZlZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1ldGVyc1RvRmVldCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIHZhbHVlICogMy4yODA4O1xufVxuXG4vKipcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBtZXRlcnMgdG8gbWlsZXNcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcbiAqIEByZXR1cm5zIFZhbHVlIGluIG1pbGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtZXRlcnNUb01pbGVzKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gdmFsdWUgKiAwLjAwMDYyMTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gc3F1YXJlIG1ldGVycyB0byBzcXVhcmUga2lsb21ldGVyc1xuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIHNxdWFyZSBtZXRlcnNcbiAqIEByZXR1cm5zIFZhbHVlIGluIHNxdWFyZSBraWxvbWV0ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzcXVhcmVNZXRlcnNUb1NxdWFyZUtpbG9tZXRlcnModmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiB2YWx1ZSAqIDAuMDAwMDAxO1xufVxuXG4vKipcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBzcXVhcmUgbWV0ZXJzIHRvIHNxdWFyZSBtaWxlc1xuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIHNxdWFyZSBtZXRlcnNcbiAqIEByZXR1cm5zIFZhbHVlIGluIHNxdWFyZSBtaWxlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gc3F1YXJlTWV0ZXJzVG9TcXVhcmVNaWxlcyh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIHZhbHVlICogMC4wMDAwMDAzODYxO1xufVxuXG4vKipcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBzcXVhcmUgbWV0ZXJzIHRvIHNxdWFyZSBmZWV0XG4gKiBAcGFyYW0gdmFsdWUgVmFsdWUgaW4gc3F1YXJlIG1ldGVyc1xuICogQHJldHVybnMgVmFsdWUgaW4gc3F1YXJlIGZlZXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNxdWFyZU1ldGVyc1RvU3F1YXJlRmVldCh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIHZhbHVlICogMTAuNzY0O1xufVxuXG4vKipcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBzcXVhcmUgbWV0ZXJzIHRvIGhlY3RhcmVzXG4gKiBAcGFyYW0gdmFsdWUgVmFsdWUgaW4gc3F1YXJlIG1ldGVyc1xuICogQHJldHVybnMgVmFsdWUgaW4gaGVjdGFyZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNxdWFyZU1ldGVyc1RvSGVjdGFyZXModmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiB2YWx1ZSAqIDAuMDAwMTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IHZhbHVlIGZyb20gc3F1YXJlIG1ldGVycyB0byBhY3Jlc1xuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIHNxdWFyZSBtZXRlcnNcbiAqIEByZXR1cm5zIFZhbHVlIGluIGFjcmVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzcXVhcmVNZXRlcnNUb0FjcmVzKHZhbHVlOiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gdmFsdWUgKiAwLjAwMDI0NzExO1xufVxuXG4vKipcbiAqIENvbnZlcnQgdmFsdWUgZnJvbSBtZXRlcnMgdG8gdGhlIHNwZWNpZmllZCBsZW5ndGggdW5pdFxuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xuICogQHBhcmFtIHVuaXQgTGVuZ3RoIHVuaXRcbiAqIEByZXR1cm5zIFZhbHVlIGluIHVuaXRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1ldGVyc1RvVW5pdChcbiAgdmFsdWU6IG51bWJlcixcbiAgdW5pdDogTWVhc3VyZUxlbmd0aFVuaXRcbik6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGNvbnZlcnNpb25NYXBwZXIgPSBuZXcgTWFwKFtcbiAgICBbTWVhc3VyZUxlbmd0aFVuaXQuTWV0ZXJzLCAodmFsOiBudW1iZXIpID0+IHZhbF0sXG4gICAgW01lYXN1cmVMZW5ndGhVbml0LktpbG9tZXRlcnMsIG1ldGVyc1RvS2lsb21ldGVyc10sXG4gICAgW01lYXN1cmVMZW5ndGhVbml0Lk1pbGVzLCBtZXRlcnNUb01pbGVzXSxcbiAgICBbTWVhc3VyZUxlbmd0aFVuaXQuRmVldCwgbWV0ZXJzVG9GZWV0XVxuICBdKTtcbiAgY29uc3QgY29udmVyc2lvbiA9IGNvbnZlcnNpb25NYXBwZXIuZ2V0KHVuaXQpO1xuXG4gIHJldHVybiBjb252ZXJzaW9uID8gY29udmVyc2lvbih2YWx1ZSkgOiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQ29udmVydCB2YWx1ZSBmcm9tIHNxdWFyZSBtZXRlcnMgdG8gdGhlIHNwZWNpZmllZCBhcmVhIHVuaXRcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcbiAqIEBwYXJhbSB1bml0IEFyZWEgdW5pdFxuICogQHJldHVybnMgVmFsdWUgaW4gdW5pdFxuICovXG5leHBvcnQgZnVuY3Rpb24gc3F1YXJlTWV0ZXJzVG9Vbml0KFxuICB2YWx1ZTogbnVtYmVyLFxuICB1bml0OiBNZWFzdXJlQXJlYVVuaXRcbik6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IGNvbnZlcnNpb25NYXBwZXIgPSBuZXcgTWFwKFtcbiAgICBbTWVhc3VyZUFyZWFVbml0LlNxdWFyZU1ldGVycywgKHZhbDogbnVtYmVyKSA9PiB2YWxdLFxuICAgIFtNZWFzdXJlQXJlYVVuaXQuU3F1YXJlS2lsb21ldGVycywgc3F1YXJlTWV0ZXJzVG9TcXVhcmVLaWxvbWV0ZXJzXSxcbiAgICBbTWVhc3VyZUFyZWFVbml0LlNxdWFyZU1pbGVzLCBzcXVhcmVNZXRlcnNUb1NxdWFyZU1pbGVzXSxcbiAgICBbTWVhc3VyZUFyZWFVbml0LlNxdWFyZUZlZXQsIHNxdWFyZU1ldGVyc1RvU3F1YXJlRmVldF0sXG4gICAgW01lYXN1cmVBcmVhVW5pdC5IZWN0YXJlcywgc3F1YXJlTWV0ZXJzVG9IZWN0YXJlc10sXG4gICAgW01lYXN1cmVBcmVhVW5pdC5BY3Jlcywgc3F1YXJlTWV0ZXJzVG9BY3Jlc11cbiAgXSk7XG4gIGNvbnN0IGNvbnZlcnNpb24gPSBjb252ZXJzaW9uTWFwcGVyLmdldCh1bml0KTtcblxuICByZXR1cm4gY29udmVyc2lvbiA/IGNvbnZlcnNpb24odmFsdWUpIDogdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFRoaXMgbWV0aG9kIGZvcm1hdCBhIG1lYXN1cmUgdG8gYSByZWFkYWJsZSBmb3JtYXRcbiAqIEBwYXJhbSBtZWFzdXJlIE1lYXN1cmVcbiAqIEBwYXJhbSBvcHRpb25zIEZvcm1hdHRpbmcgb3B0aW9uc1xuICogQHJldHVybnMgRm9ybWF0dGVkIG1lYXN1cmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdE1lYXN1cmUoXG4gIG1lYXN1cmU6IG51bWJlcixcbiAgb3B0aW9ucz86IHtcbiAgICBkZWNpbWFsPzogbnVtYmVyO1xuICAgIHVuaXQ/OiBNZWFzdXJlQXJlYVVuaXQgfCBNZWFzdXJlTGVuZ3RoVW5pdDtcbiAgICB1bml0QWJicj86IGJvb2xlYW47XG4gICAgbG9jYWxlPzogc3RyaW5nO1xuICB9LFxuICBsYW5ndWFnZVNlcnZpY2U/OiBMYW5ndWFnZVNlcnZpY2Vcbikge1xuICBsZXQgZGVjaW1hbCA9IG9wdGlvbnMuZGVjaW1hbDtcbiAgaWYgKGRlY2ltYWwgPT09IHVuZGVmaW5lZCB8fCBkZWNpbWFsIDwgMCkge1xuICAgIGRlY2ltYWwgPSAxO1xuICB9XG5cbiAgY29uc3QgcGFydHMgPSBbXTtcbiAgaWYgKG9wdGlvbnMubG9jYWxlICE9PSB1bmRlZmluZWQpIHtcbiAgICBwYXJ0cy5wdXNoKFxuICAgICAgbWVhc3VyZS50b0xvY2FsZVN0cmluZyhvcHRpb25zLmxvY2FsZSwge1xuICAgICAgICBtaW5pbXVtRnJhY3Rpb25EaWdpdHM6IGRlY2ltYWwsXG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZGVjaW1hbFxuICAgICAgfSlcbiAgICApO1xuICB9IGVsc2Uge1xuICAgIHBhcnRzLnB1c2gobWVhc3VyZS50b0ZpeGVkKGRlY2ltYWwpLnRvU3RyaW5nKCkpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMudW5pdCAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbnMudW5pdEFiYnIgPT09IHRydWUpIHtcbiAgICBpZiAobGFuZ3VhZ2VTZXJ2aWNlKSB7XG4gICAgICBwYXJ0cy5wdXNoKFxuICAgICAgICBNZWFzdXJlTGVuZ3RoVW5pdEFiYnJldmlhdGlvbltvcHRpb25zLnVuaXRdXG4gICAgICAgICAgPyBsYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAgICdpZ28uZ2VvLm1lYXN1cmUuJyArIE1lYXN1cmVMZW5ndGhVbml0QWJicmV2aWF0aW9uW29wdGlvbnMudW5pdF1cbiAgICAgICAgICAgIClcbiAgICAgICAgICA6IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICAgJ2lnby5nZW8ubWVhc3VyZS4nICsgTWVhc3VyZUFyZWFVbml0QWJicmV2aWF0aW9uW29wdGlvbnMudW5pdF1cbiAgICAgICAgICAgIClcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnRzLnB1c2goXG4gICAgICAgIE1lYXN1cmVMZW5ndGhVbml0QWJicmV2aWF0aW9uW29wdGlvbnMudW5pdF0gfHxcbiAgICAgICAgICBNZWFzdXJlQXJlYVVuaXRBYmJyZXZpYXRpb25bb3B0aW9ucy51bml0XVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcGFydHMuZmlsdGVyKChwKSA9PiBwICE9PSB1bmRlZmluZWQpLmpvaW4oJyAnKTtcbn1cblxuLyoqXG4gKiBDb21wdXRlIGJlc3QgbGVuZ3RoIG1lYXN1cmUgdW5pdCBmb3IgYSBnaXZlbiBtZWFzdXJlIGluIG1ldGVyc1xuICogQHBhcmFtIHZhbHVlIFZhbHVlIGluIG1ldGVyc1xuICogQHJldHVybnMgTWVhc3VyZSB1bml0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21wdXRlQmVzdExlbmd0aFVuaXQodmFsdWU6IG51bWJlcik6IE1lYXN1cmVMZW5ndGhVbml0IHtcbiAgbGV0IHVuaXQgPSBNZWFzdXJlTGVuZ3RoVW5pdC5NZXRlcnM7XG4gIGxldCBjb252ZXJ0ZWQgPSB2YWx1ZTtcbiAgY29uc3QgcG9zc2libGVVbml0cyA9IFtNZWFzdXJlTGVuZ3RoVW5pdC5LaWxvbWV0ZXJzXTtcbiAgd2hpbGUgKGNvbnZlcnRlZCA+IDEwMDAgJiYgcG9zc2libGVVbml0cy5sZW5ndGggPiAwKSB7XG4gICAgdW5pdCA9IHBvc3NpYmxlVW5pdHMucG9wKCk7XG4gICAgY29udmVydGVkID0gbWV0ZXJzVG9Vbml0KHZhbHVlLCB1bml0KTtcbiAgfVxuICByZXR1cm4gdW5pdDtcbn1cblxuLyoqXG4gKiBDb21wdXRlIGJlc3QgbGVuZ3RoIG1lYXN1cmUgdW5pdCBmb3IgYSBnaXZlbiBtZWFzdXJlIGluIHNxdWFyZSBtZXRlcnNcbiAqIEBwYXJhbSB2YWx1ZSBWYWx1ZSBpbiBtZXRlcnNcbiAqIEByZXR1cm5zIE1lYXN1cmUgdW5pdFxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcHV0ZUJlc3RBcmVhVW5pdCh2YWx1ZTogbnVtYmVyKTogTWVhc3VyZUFyZWFVbml0IHtcbiAgbGV0IHVuaXQgPSBNZWFzdXJlQXJlYVVuaXQuU3F1YXJlTWV0ZXJzO1xuICBsZXQgY29udmVydGVkID0gdmFsdWU7XG4gIGNvbnN0IHBvc3NpYmxlVW5pdHMgPSBbTWVhc3VyZUFyZWFVbml0LlNxdWFyZUtpbG9tZXRlcnNdO1xuICB3aGlsZSAoY29udmVydGVkID4gMTAwMDAwMCAmJiBwb3NzaWJsZVVuaXRzLmxlbmd0aCA+IDApIHtcbiAgICB1bml0ID0gcG9zc2libGVVbml0cy5wb3AoKTtcbiAgICBjb252ZXJ0ZWQgPSBzcXVhcmVNZXRlcnNUb1VuaXQodmFsdWUsIHVuaXQpO1xuICB9XG4gIHJldHVybiB1bml0O1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIGRlZmF1bHQgc3R5bGUgZm9yIGEgbWVhc3VyZSBpbnRlcmFjdGlvblxuICogQHJldHVybnMgT0wgc3R5bGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU1lYXN1cmVJbnRlcmFjdGlvblN0eWxlKCk6IG9sc3R5bGUuU3R5bGUge1xuICByZXR1cm4gbmV3IG9sc3R5bGUuU3R5bGUoe1xuICAgIHN0cm9rZTogbmV3IG9sc3R5bGUuU3Ryb2tlKHtcbiAgICAgIGNvbG9yOiAnI2ZmY2MzMycsXG4gICAgICBsaW5lRGFzaDogWzEwLCAxMF0sXG4gICAgICB3aWR0aDogMlxuICAgIH0pLFxuICAgIGZpbGw6IG5ldyBvbHN0eWxlLkZpbGwoe1xuICAgICAgY29sb3I6ICdyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMiknXG4gICAgfSksXG4gICAgaW1hZ2U6IG5ldyBvbHN0eWxlLkNpcmNsZSh7XG4gICAgICByYWRpdXM6IDUsXG4gICAgICBzdHJva2U6IG5ldyBvbHN0eWxlLlN0cm9rZSh7XG4gICAgICAgIGNvbG9yOiAnI2ZmY2MzMydcbiAgICAgIH0pLFxuICAgICAgZmlsbDogbmV3IG9sc3R5bGUuRmlsbCh7XG4gICAgICAgIGNvbG9yOiAncmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpJ1xuICAgICAgfSlcbiAgICB9KVxuICB9KTtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBkZWZhdWx0IHN0eWxlIGZvciBhIG1lYXN1cmUgbGF5ZXJcbiAqIEByZXR1cm5zIE9MIHN0eWxlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNZWFzdXJlTGF5ZXJTdHlsZSgpOiBvbHN0eWxlLlN0eWxlIHtcbiAgcmV0dXJuIG5ldyBvbHN0eWxlLlN0eWxlKHtcbiAgICBzdHJva2U6IG5ldyBvbHN0eWxlLlN0cm9rZSh7XG4gICAgICBjb2xvcjogJyNmZmNjMzMnLFxuICAgICAgd2lkdGg6IDJcbiAgICB9KSxcbiAgICBmaWxsOiBuZXcgb2xzdHlsZS5GaWxsKHtcbiAgICAgIGNvbG9yOiAncmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpJ1xuICAgIH0pXG4gIH0pO1xufVxuXG4vKipcbiAqIENvbXB1dGUgdGhlIGxlbmd0aCBpbiBtZXRlcnMgb2YgYW4gT0wgZ2VvbWV0cnkgd2l0aCBhIGdpdmVuIHByb2plY3Rpb25cbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9sIGdlb21ldHJ5XG4gKiBAcGFyYW0gcHJvamVjdGlvbiBvbEdlb21ldHJ5J3MgcHJvamVjdGlvblxuICogQHJldHVybnMgTGVuZ3RoIGluIG1ldGVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbWVhc3VyZU9sR2VvbWV0cnlMZW5ndGgoXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZSxcbiAgcHJvamVjdGlvbjogc3RyaW5nXG4pOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICBpZiAob2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sUG9pbnQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGlmIChvbEdlb21ldHJ5LmdldEZsYXRDb29yZGluYXRlcygpLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcmV0dXJuIG9sR2V0TGVuZ3RoKG9sR2VvbWV0cnksIHsgcHJvamVjdGlvbiB9KTtcbn1cblxuLyoqXG4gKiBDb21wdXRlIHRoZSBhcmVhIGluIHNxdWFyZSBtZXRlcnMgb2YgYW4gT0wgZ2VvbWV0cnkgd2l0aCBhIGdpdmVuIHByb2plY3Rpb25cbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9sIGdlb21ldHJ5XG4gKiBAcGFyYW0gcHJvamVjdGlvbiBvbEdlb21ldHJ5J3MgcHJvamVjdGlvblxuICogQHJldHVybnMgQXJlYSBpbiBzcXVhcmUgbWV0ZXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtZWFzdXJlT2xHZW9tZXRyeUFyZWEoXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZSxcbiAgcHJvamVjdGlvbjogc3RyaW5nXG4pOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICBpZiAob2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sUG9pbnQgfHwgb2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sTGluZVN0cmluZykge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgaWYgKG9sR2VvbWV0cnkuZ2V0RmxhdENvb3JkaW5hdGVzKCkubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICByZXR1cm4gb2xHZXRBcmVhKG9sR2VvbWV0cnksIHsgcHJvamVjdGlvbiB9KTtcbn1cblxuLyoqXG4gKiBDb21wdXRlIHRoZSBhcmVhIChzcXVhcmUgbWV0ZXJzKSwgbGVuZ3RoIChtZXRlcnMpIGFuZCBsYXN0IGxlbmd0aCAobWV0ZXJzKVxuICogb2YgYW4gT0wgZ2VvbWV0cnkgd2l0aCBhIGdpdmVuIHByb2plY3Rpb24uXG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPbCBnZW9tZXRyeVxuICogQHBhcmFtIHByb2plY3Rpb24gb2xHZW9tZXRyeSdzIHByb2plY3Rpb25cbiAqIEByZXR1cm5zIENvbXB1dGVkIG1lYXN1cmVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1lYXN1cmVPbEdlb21ldHJ5KFxuICBvbEdlb21ldHJ5OiBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xQb2x5Z29uIHwgT2xDaXJjbGUsXG4gIHByb2plY3Rpb246IHN0cmluZ1xuKTogTWVhc3VyZSB7XG4gIGNvbnN0IGxlbmd0aCA9IG1lYXN1cmVPbEdlb21ldHJ5TGVuZ3RoKG9sR2VvbWV0cnksIHByb2plY3Rpb24pO1xuICBjb25zdCBhcmVhID0gbWVhc3VyZU9sR2VvbWV0cnlBcmVhKG9sR2VvbWV0cnksIHByb2plY3Rpb24pO1xuXG4gIGNvbnN0IGxlbmd0aHMgPSBbXTtcbiAgY29uc3QgY29vcmRpbmF0ZXMgPSBvbEdlb21ldHJ5LmdldEZsYXRDb29yZGluYXRlcygpO1xuICBjb25zdCBjb29yZGluYXRlc0xlbmd0aCA9IGNvb3JkaW5hdGVzLmxlbmd0aDtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPD0gY29vcmRpbmF0ZXNMZW5ndGggLSA0OyBpICs9IDIpIHtcbiAgICBjb25zdCBvbFNlZ21lbnQgPSBuZXcgT2xMaW5lU3RyaW5nKFtcbiAgICAgIFtjb29yZGluYXRlc1tpXSwgY29vcmRpbmF0ZXNbaSArIDFdXSxcbiAgICAgIFtjb29yZGluYXRlc1tpICsgMl0sIGNvb3JkaW5hdGVzW2kgKyAzXV1cbiAgICBdKTtcblxuICAgIGxlbmd0aHMucHVzaChtZWFzdXJlT2xHZW9tZXRyeUxlbmd0aChvbFNlZ21lbnQsIHByb2plY3Rpb24pKTtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgYXJlYSxcbiAgICBsZW5ndGgsXG4gICAgbGVuZ3Roc1xuICB9O1xufVxuXG4vKipcbiAqIFVwZGF0ZSBhbiBPTCBnZW9tZXRyeSBtaWRwb2ludHMgYW5kIHJldHVybiBhbiBhcnJheSBvZiB0aG9zZSBwb2ludHNcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XG4gKiBAcmV0dXJucyBPTCBwb2ludHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZU9sR2VvbWV0cnlNaWRwb2ludHMoXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxuKTogT2xQb2ludFtdIHtcbiAgbGV0IG9sTWlkcG9pbnRzO1xuICBpZiAob2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sUG9pbnQpIHtcbiAgICBjb25zdCBvbE1pZHBvaW50UG9pbnQgPSBuZXcgT2xQb2ludChvbEdlb21ldHJ5LmdldEZsYXRDb29yZGluYXRlcygpKTtcbiAgICBvbE1pZHBvaW50cyA9IG5ldyBBcnJheSgxKTtcbiAgICBvbE1pZHBvaW50c1swXSA9IG9sTWlkcG9pbnRQb2ludDtcbiAgfSBlbHNlIHtcbiAgICBvbE1pZHBvaW50cyA9IGdldE9sR2VvbWV0cnlNaWRwb2ludHMob2xHZW9tZXRyeSk7XG4gICAgLy8gVE9ETzogaGFuZGxlIG11bHRpIGdlb21ldHJpZXNcbiAgICBjb25zdCBjb29yZGluYXRlcyA9IG9sR2VvbWV0cnkuZ2V0RmxhdENvb3JkaW5hdGVzKCk7XG4gICAgY29uc3QgbWlkcG9pbnRzTGVuZ3RoID0gb2xNaWRwb2ludHMubGVuZ3RoO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWlkcG9pbnRzTGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGogPSBpICogMjtcbiAgICAgIGNvbnN0IG9sU2VnbWVudCA9IG5ldyBPbExpbmVTdHJpbmcoW1xuICAgICAgICBbY29vcmRpbmF0ZXNbal0sIGNvb3JkaW5hdGVzW2ogKyAxXV0sXG4gICAgICAgIFtjb29yZGluYXRlc1tqICsgMl0sIGNvb3JkaW5hdGVzW2ogKyAzXV1cbiAgICAgIF0pO1xuXG4gICAgICBjb25zdCBtaWRwb2ludENvb3JkaW5hdGUgPSBvbFNlZ21lbnQuZ2V0Q29vcmRpbmF0ZUF0KDAuNSk7XG4gICAgICBjb25zdCBvbE1pZHBvaW50ID0gb2xNaWRwb2ludHNbaV07XG4gICAgICBpZiAob2xNaWRwb2ludCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIG9sTWlkcG9pbnQuc2V0Q29vcmRpbmF0ZXMobWlkcG9pbnRDb29yZGluYXRlKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG9sTWlkcG9pbnRzW2ldID0gbmV3IE9sUG9pbnQobWlkcG9pbnRDb29yZGluYXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIG9sTWlkcG9pbnRzO1xufVxuXG4vKipcbiAqIENsZWFyIGFuIE9MIGdlb21ldHJ5IG1pZHBvaW50cyBhbmQgcmV0dXJuIGFuIGFycmF5IG9mIHRob3NlIHBvaW50c1xuICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgR2VvbWV0cnlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyT2xHZW9tZXRyeU1pZHBvaW50cyhcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlXG4pIHtcbiAgY29uc3Qgb2xNaWRwb2ludHMgPSBvbEdlb21ldHJ5LmdldCgnX21pZHBvaW50cycpIHx8IFtdO1xuICBjb25zdCBtaWRwb2ludHNMZW5ndGggPSBvbE1pZHBvaW50cy5sZW5ndGg7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbWlkcG9pbnRzTGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBvbE1pZHBvaW50ID0gb2xNaWRwb2ludHNbaV07XG4gICAgaWYgKG9sTWlkcG9pbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKG9sTWlkcG9pbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjbGVhck9sTWlkcG9pbnRUb29sdGlwKG9sTWlkcG9pbnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9sR2VvbWV0cnkuc2V0KCdfbWlkcG9pbnRzJywgdW5kZWZpbmVkLCB0cnVlKTtcblxuICByZXR1cm4gb2xNaWRwb2ludHM7XG59XG5cbi8qKlxuICogUmV0dXJuIGFuIGFycmF5IG9mICBPTCBnZW9tZXRyeSBtaWRwb2ludHMsIGlmIGFueVxuICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgR2VvbWV0cnlcbiAqIEByZXR1cm5zIE9MIHBvaW50c1xuICovXG5mdW5jdGlvbiBnZXRPbEdlb21ldHJ5TWlkcG9pbnRzKFxuICBvbEdlb21ldHJ5OiBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xQb2x5Z29uIHwgT2xDaXJjbGVcbik6IE9sUG9pbnRbXSB7XG4gIGxldCBleHBlY3RlZE51bWJlcjtcbiAgaWYgKG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbENpcmNsZSkge1xuICAgIGV4cGVjdGVkTnVtYmVyID0gMDtcbiAgfSBlbHNlIHtcbiAgICBleHBlY3RlZE51bWJlciA9IE1hdGgubWF4KFxuICAgICAgb2xHZW9tZXRyeS5nZXRGbGF0Q29vcmRpbmF0ZXMoKS5sZW5ndGggLyAyIC0gMSxcbiAgICAgIDBcbiAgICApO1xuICB9XG4gIC8vIFRPRE86IFRoaXMgd29ya3MgYnV0IGl0J3MgcXVpdGUgbWVzc3kuIElmIHRpbWUgcGVybWl0cyxcbiAgLy8gY2xlYW4gdGhpcy4gTWF5YmUgYSBUb29sdGlwIGNsYXNzIGNvdWxkIGhhbmRsZSB0aGF0XG4gIGxldCBvbE1pZHBvaW50cyA9IG9sR2VvbWV0cnkuZ2V0KCdfbWlkcG9pbnRzJyk7XG5cbiAgaWYgKG9sTWlkcG9pbnRzID09PSB1bmRlZmluZWQpIHtcbiAgICBpZiAob2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sUG9pbnQpIHtcbiAgICAgIG9sTWlkcG9pbnRzID0gbmV3IEFycmF5KDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICBvbE1pZHBvaW50cyA9IG5ldyBBcnJheShleHBlY3RlZE51bWJlcik7XG4gICAgfVxuICAgIG9sR2VvbWV0cnkuc2V0KCdfbWlkcG9pbnRzJywgb2xNaWRwb2ludHMsIHRydWUpO1xuICAgIHJldHVybiBvbE1pZHBvaW50cztcbiAgfVxuXG4gIGlmIChleHBlY3RlZE51bWJlciA9PT0gMCkge1xuICAgIHJldHVybiBvbE1pZHBvaW50cztcbiAgfVxuXG4gIGlmIChleHBlY3RlZE51bWJlciA9PT0gb2xNaWRwb2ludHMubGVuZ3RoKSB7XG4gICAgcmV0dXJuIG9sTWlkcG9pbnRzO1xuICB9XG5cbiAgaWYgKGV4cGVjdGVkTnVtYmVyID4gb2xNaWRwb2ludHMubGVuZ3RoKSB7XG4gICAgb2xNaWRwb2ludHMucHVzaCguLi5uZXcgQXJyYXkoZXhwZWN0ZWROdW1iZXIgLSBvbE1pZHBvaW50cy5sZW5ndGgpKTtcbiAgICByZXR1cm4gb2xNaWRwb2ludHM7XG4gIH1cblxuICBmb3IgKGxldCBpID0gZXhwZWN0ZWROdW1iZXI7IGkgPCBvbE1pZHBvaW50cy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IG9sTWlkcG9pbnQgPSBvbE1pZHBvaW50c1tleHBlY3RlZE51bWJlcl07XG4gICAgaWYgKG9sTWlkcG9pbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY2xlYXJPbE1pZHBvaW50VG9vbHRpcChvbE1pZHBvaW50KTtcbiAgICB9XG4gIH1cbiAgb2xNaWRwb2ludHMuc3BsaWNlKGV4cGVjdGVkTnVtYmVyKTtcblxuICByZXR1cm4gb2xNaWRwb2ludHM7XG59XG5cbi8qKlxuICogUmVtb3ZlIGFuIE9MIG1pZHBvaW50J3MgdG9vbHRpcCBmcm9tIHRoZSBtYXBcbiAqIEBwYXJhbSBvbE1pZHBvaW50IE9MIFBvaW50XG4gKi9cbmZ1bmN0aW9uIGNsZWFyT2xNaWRwb2ludFRvb2x0aXAob2xNaWRwb2ludDogT2xQb2ludCkge1xuICBjb25zdCBvbFRvb2x0aXAgPSBvbE1pZHBvaW50LmdldCgnX3Rvb2x0aXAnKTtcbiAgaWYgKG9sVG9vbHRpcCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgY29uc3Qgb2xNYXAgPSBvbFRvb2x0aXAuZ2V0TWFwKCk7XG4gICAgaWYgKG9sTWFwICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG9sTWFwLnJlbW92ZU92ZXJsYXkob2xUb29sdGlwKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBBZGQgYW4gT0wgb3ZlcmxheSBhdCBlYWNoIG1pZHBvaW50IGFuZCByZXR1cm4gYW4gYXJyYXkgb2YgdGhvc2Ugb3ZlcmxheXNcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XG4gKiBAcmV0dXJucyBPTCBvdmVybGF5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlT2xUb29sdGlwc0F0TWlkcG9pbnRzKFxuICBvbEdlb21ldHJ5OiBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xQb2x5Z29uIHwgT2xDaXJjbGVcbik6IE9sT3ZlcmxheVtdIHtcbiAgY29uc3Qgb2xNaWRwb2ludHMgPSB1cGRhdGVPbEdlb21ldHJ5TWlkcG9pbnRzKG9sR2VvbWV0cnkpO1xuICBsZXQgdHlwZUdlb20gPSAnJztcbiAgaWYgKG9sR2VvbWV0cnkgaW5zdGFuY2VvZiBPbExpbmVTdHJpbmcpIHtcbiAgICB0eXBlR2VvbSA9ICdsaW5lLSc7XG4gIH0gZWxzZSBpZiAob2xHZW9tZXRyeSBpbnN0YW5jZW9mIE9sUG9seWdvbikge1xuICAgIHR5cGVHZW9tID0gJ3BvbHlnb25lLSc7XG4gIH1cbiAgY29uc3Qgb2xUb29sdGlwcyA9IG9sTWlkcG9pbnRzLm1hcCgob2xNaWRwb2ludDogT2xQb2ludCkgPT4ge1xuICAgIGxldCBvbFRvb2x0aXAgPSBvbE1pZHBvaW50LmdldCgnX3Rvb2x0aXAnKTtcbiAgICBpZiAob2xUb29sdGlwID09PSB1bmRlZmluZWQpIHtcbiAgICAgIG9sVG9vbHRpcCA9IGNyZWF0ZU9sVG9vbHRpcEF0UG9pbnQob2xNaWRwb2ludCwgZmFsc2UsIHR5cGVHZW9tKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb2xUb29sdGlwLnNldFBvc2l0aW9uKG9sTWlkcG9pbnQuZ2V0RmxhdENvb3JkaW5hdGVzKCkpO1xuICAgIH1cbiAgICByZXR1cm4gb2xUb29sdGlwO1xuICB9KTtcbiAgcmV0dXJuIG9sVG9vbHRpcHM7XG59XG5cbi8qKlxuICogUmV0dXJuIGFuIGFycmF5IG9mIE9MIG92ZXJsYXkgYXQgbWlkc3BvaW50cywgaWYgYW55XG4gKiBAcGFyYW0gb2xHZW9tZXRyeSBPTCBHZW9tZXRyeVxuICogQHJldHVybnMgT0wgb3ZlcmxheXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE9sVG9vbHRpcHNBdE1pZHBvaW50cyhcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlXG4pOiBPbE92ZXJsYXlbXSB7XG4gIGNvbnN0IG9sTWlkcG9pbnRzID0gZ2V0T2xHZW9tZXRyeU1pZHBvaW50cyhvbEdlb21ldHJ5KTtcbiAgcmV0dXJuIG9sTWlkcG9pbnRzLm1hcCgob2xNaWRwb2ludDogT2xQb2ludCkgPT4ge1xuICAgIHJldHVybiBvbE1pZHBvaW50ID8gb2xNaWRwb2ludC5nZXQoJ190b29sdGlwJykgOiB1bmRlZmluZWQ7XG4gIH0pO1xufVxuXG4vKipcbiAqIFVwZGF0ZSBhbiBPTCBnZW9tZXRyeSBjZW50ZXIgYW5kIHJldHVybiBpdFxuICogQHBhcmFtIG9sR2VvbWV0cnkgT0wgR2VvbWV0cnlcbiAqIEByZXR1cm5zIE9MIHBvaW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVPbEdlb21ldHJ5Q2VudGVyKFxuICBvbEdlb21ldHJ5OiBPbFBvaW50IHwgT2xMaW5lU3RyaW5nIHwgT2xQb2x5Z29uIHwgT2xDaXJjbGVcbik6IE9sUG9pbnQge1xuICBsZXQgb2xDZW50ZXIgPSBvbEdlb21ldHJ5LmdldCgnX2NlbnRlcicpO1xuICBjb25zdCBjZW50ZXJDb29yZGluYXRlID0gb2xHZXRDZW50ZXIob2xHZW9tZXRyeS5nZXRFeHRlbnQoKSk7XG4gIGlmIChvbENlbnRlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgb2xDZW50ZXIuc2V0Q29vcmRpbmF0ZXMoY2VudGVyQ29vcmRpbmF0ZSk7XG4gIH0gZWxzZSB7XG4gICAgb2xDZW50ZXIgPSBuZXcgT2xQb2ludChjZW50ZXJDb29yZGluYXRlKTtcbiAgICBvbEdlb21ldHJ5LnNldCgnX2NlbnRlcicsIG9sQ2VudGVyKTtcbiAgfVxuXG4gIHJldHVybiBvbENlbnRlcjtcbn1cblxuLyoqXG4gKiBBZGQgYW4gT0wgb3ZlcmxheSBhdCB0aGUgY2VudGVyIG9mIGEgZ2VvbWV0cnkgYW5kIHJldHVybiB0aGF0IG92ZXJsYXlcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XG4gKiBAcmV0dXJucyBPTCBvdmVybGF5XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVPbFRvb2x0aXBBdENlbnRlcihcbiAgb2xHZW9tZXRyeTogT2xQb2ludCB8IE9sTGluZVN0cmluZyB8IE9sUG9seWdvbiB8IE9sQ2lyY2xlXG4pOiBPbE92ZXJsYXkge1xuICBjb25zdCBvbENlbnRlciA9IHVwZGF0ZU9sR2VvbWV0cnlDZW50ZXIob2xHZW9tZXRyeSk7XG4gIGxldCBvbFRvb2x0aXAgPSBvbENlbnRlci5nZXQoJ190b29sdGlwJyk7XG4gIGlmIChvbFRvb2x0aXAgPT09IHVuZGVmaW5lZCkge1xuICAgIG9sVG9vbHRpcCA9IGNyZWF0ZU9sVG9vbHRpcEF0UG9pbnQob2xDZW50ZXIsIHRydWUpO1xuICB9IGVsc2Uge1xuICAgIG9sVG9vbHRpcC5zZXRQb3NpdGlvbihvbENlbnRlci5nZXRGbGF0Q29vcmRpbmF0ZXMoKSk7XG4gIH1cbiAgcmV0dXJuIG9sVG9vbHRpcDtcbn1cblxuLyoqXG4gKiBSZXR1cm4gYW4gYXJyYXkgb2YgT0wgb3ZlcmxheSBhdCBtaWRzcG9pbnRzLCBpZiBhbnlcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XG4gKiBAcmV0dXJucyBPTCBvdmVybGF5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0T2xUb29sdGlwQXRDZW50ZXIoXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxuKTogT2xPdmVybGF5IHtcbiAgY29uc3Qgb2xDZW50ZXIgPSBvbEdlb21ldHJ5LmdldCgnX2NlbnRlcicpO1xuICByZXR1cm4gb2xDZW50ZXIgPyBvbENlbnRlci5nZXQoJ190b29sdGlwJykgOiB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogR2V0IGFsbCB0aGUgdG9vbHRpcHMgb2YgYW4gT0wgZ2VvbWV0cnlcbiAqIEBwYXJhbSBvbEdlb21ldHJ5IE9MIEdlb21ldHJ5XG4gKiBAcmV0dXJucyBPTCBvdmVybGF5c1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VG9vbHRpcHNPZk9sR2VvbWV0cnkoXG4gIG9sR2VvbWV0cnk6IE9sUG9pbnQgfCBPbExpbmVTdHJpbmcgfCBPbFBvbHlnb24gfCBPbENpcmNsZVxuKTogT2xPdmVybGF5W10ge1xuICBjb25zdCBvbFRvb2x0aXBzID0gW10uY29uY2F0KGdldE9sVG9vbHRpcHNBdE1pZHBvaW50cyhvbEdlb21ldHJ5KSB8fCBbXSk7XG4gIGNvbnN0IG9sQ2VudGVyVG9vbHRpcCA9IGdldE9sVG9vbHRpcEF0Q2VudGVyKG9sR2VvbWV0cnkpO1xuICBpZiAob2xDZW50ZXJUb29sdGlwICE9PSB1bmRlZmluZWQpIHtcbiAgICBvbFRvb2x0aXBzLnB1c2gob2xDZW50ZXJUb29sdGlwKTtcbiAgfVxuICByZXR1cm4gb2xUb29sdGlwcztcbn1cblxuLyoqXG4gKiBDcmVhdGUgYW4gT0wgb3ZlcmxheSBhdCBhIHBvaW50IGFuZCBiaW5kIHRoZSBvdmVybGF5IHRvIHRoZSBwb2ludFxuICogQHBhcmFtIG9sUG9pbnQgT0wgUG9pbnRcbiAqIEByZXR1cm5zIE9MIG92ZXJsYXlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU9sVG9vbHRpcEF0UG9pbnQoXG4gIG9sUG9pbnQ6IE9sUG9pbnQsXG4gIGNlbnRlcjogYm9vbGVhbiA9IGZhbHNlLFxuICBzcmNHZW9tVHlwZTogc3RyaW5nID0gJydcbik6IE9sT3ZlcmxheSB7XG4gIGNvbnN0IG9sVG9vbHRpcCA9IG5ldyBPbE92ZXJsYXkoe1xuICAgIGVsZW1lbnQ6IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpLFxuICAgIG9mZnNldDogWy0zMCwgLTEwXSxcbiAgICBjbGFzc05hbWU6IChjZW50ZXJcbiAgICAgID8gW1xuICAgICAgICAgICdpZ28tbWFwLXRvb2x0aXAnLFxuICAgICAgICAgICdpZ28tbWFwLXRvb2x0aXAtbWVhc3VyZScsXG4gICAgICAgICAgJ2lnby1tYXAtdG9vbHRpcC1tZWFzdXJlLWFyZWEnXG4gICAgICAgIF1cbiAgICAgIDogW1xuICAgICAgICAgICdpZ28tbWFwLXRvb2x0aXAnLFxuICAgICAgICAgICdpZ28tbWFwLXRvb2x0aXAtbWVhc3VyZScsXG4gICAgICAgICAgYGlnby1tYXAtdG9vbHRpcC1tZWFzdXJlLSR7c3JjR2VvbVR5cGV9c2VnbWVudHNgXG4gICAgICAgIF1cbiAgICApLmpvaW4oJyAnKSxcbiAgICBzdG9wRXZlbnQ6IGZhbHNlXG4gIH0pO1xuICBvbFRvb2x0aXAuc2V0UG9zaXRpb24ob2xQb2ludC5nZXRGbGF0Q29vcmRpbmF0ZXMoKSk7XG4gIG9sUG9pbnQuc2V0KCdfdG9vbHRpcCcsIG9sVG9vbHRpcCk7XG5cbiAgcmV0dXJuIG9sVG9vbHRpcDtcbn1cbiJdfQ==
@@ -1,3 +1,3 @@
1
1
  export * from './shared';
2
2
  export * from './metadata-button';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tZXRhZGF0YS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXRhZGF0YS1idXR0b24nO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9tZXRhZGF0YS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQnO1xyXG5leHBvcnQgKiBmcm9tICcuL21ldGFkYXRhLWJ1dHRvbic7XHJcbiJdfQ==
@@ -63,11 +63,11 @@ export class MetadataButtonComponent {
63
63
  return this.layer.options;
64
64
  }
65
65
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataButtonComponent, deps: [{ token: i1.MetadataService }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
66
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: { layer: "layer", color: "color" }, ngImport: i0, template: "<button\r\n *ngIf=\"\r\n (options && options.metadata && options.metadata.url) ||\r\n (options && options.metadata && options.metadata.abstract)\r\n \"\r\n mat-icon-button\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"'igo.geo.metadata.show' | translate\"\r\n [color]=\"color\"\r\n (click)=\"openMetadata(options.metadata)\"\r\n>\r\n <mat-icon svgIcon=\"information-outline\"></mat-icon>\r\n</button>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
66
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: { layer: "layer", color: "color" }, ngImport: i0, template: "<button\n *ngIf=\"\n (options && options.metadata && options.metadata.url) ||\n (options && options.metadata && options.metadata.abstract)\n \"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.metadata.show' | translate\"\n [color]=\"color\"\n (click)=\"openMetadata(options.metadata)\"\n>\n <mat-icon svgIcon=\"information-outline\"></mat-icon>\n</button>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
67
67
  }
68
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataButtonComponent, decorators: [{
69
69
  type: Component,
70
- args: [{ selector: 'igo-metadata-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\r\n *ngIf=\"\r\n (options && options.metadata && options.metadata.url) ||\r\n (options && options.metadata && options.metadata.abstract)\r\n \"\r\n mat-icon-button\r\n tooltip-position=\"below\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"'igo.geo.metadata.show' | translate\"\r\n [color]=\"color\"\r\n (click)=\"openMetadata(options.metadata)\"\r\n>\r\n <mat-icon svgIcon=\"information-outline\"></mat-icon>\r\n</button>\r\n" }]
70
+ args: [{ selector: 'igo-metadata-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\n *ngIf=\"\n (options && options.metadata && options.metadata.url) ||\n (options && options.metadata && options.metadata.abstract)\n \"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.metadata.show' | translate\"\n [color]=\"color\"\n (click)=\"openMetadata(options.metadata)\"\n>\n <mat-icon svgIcon=\"information-outline\"></mat-icon>\n</button>\n" }]
71
71
  }], ctorParameters: function () { return [{ type: i1.MetadataService }, { type: i2.MatDialog }]; }, propDecorators: { layer: [{
72
72
  type: Input
73
73
  }], color: [{
@@ -79,13 +79,13 @@ export class MetadataAbstractComponent {
79
79
  this.data = data;
80
80
  }
81
81
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataAbstractComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
82
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataAbstractComponent, selector: "igo-metadata-abstract", ngImport: i0, template: "<h2 mat-dialog-title>{{ data.layerTitle }}</h2>\r\n<button class=\"close-button\" mat-button mat-dialog-close>X</button>\r\n<mat-dialog-content *ngIf=\"data.type !== 'arcgisrest'\" class=\"mat-typography\">\r\n <h3>{{ data.abstract }}</h3>\r\n</mat-dialog-content>\r\n<mat-dialog-content *ngIf=\"data.type === 'arcgisrest'\" class=\"mat-typography\">\r\n <h3 [innerHTML]=\"data.abstract\"></h3>\r\n</mat-dialog-content>\r\n", styles: [":host{position:relative;display:block}:host .close-button{top:5px;right:5px;padding:7px;line-height:10px;position:absolute!important;min-width:auto}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }], encapsulation: i0.ViewEncapsulation.None });
82
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MetadataAbstractComponent, selector: "igo-metadata-abstract", ngImport: i0, template: "<h2 mat-dialog-title>{{ data.layerTitle }}</h2>\n<button class=\"close-button\" mat-button mat-dialog-close>X</button>\n<mat-dialog-content *ngIf=\"data.type !== 'arcgisrest'\" class=\"mat-typography\">\n <h3>{{ data.abstract }}</h3>\n</mat-dialog-content>\n<mat-dialog-content *ngIf=\"data.type === 'arcgisrest'\" class=\"mat-typography\">\n <h3 [innerHTML]=\"data.abstract\"></h3>\n</mat-dialog-content>\n", styles: [":host{position:relative;display:block}:host .close-button{top:5px;right:5px;padding:7px;line-height:10px;position:absolute!important;min-width:auto}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }], encapsulation: i0.ViewEncapsulation.None });
83
83
  }
84
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MetadataAbstractComponent, decorators: [{
85
85
  type: Component,
86
- args: [{ selector: 'igo-metadata-abstract', encapsulation: ViewEncapsulation.None, template: "<h2 mat-dialog-title>{{ data.layerTitle }}</h2>\r\n<button class=\"close-button\" mat-button mat-dialog-close>X</button>\r\n<mat-dialog-content *ngIf=\"data.type !== 'arcgisrest'\" class=\"mat-typography\">\r\n <h3>{{ data.abstract }}</h3>\r\n</mat-dialog-content>\r\n<mat-dialog-content *ngIf=\"data.type === 'arcgisrest'\" class=\"mat-typography\">\r\n <h3 [innerHTML]=\"data.abstract\"></h3>\r\n</mat-dialog-content>\r\n", styles: [":host{position:relative;display:block}:host .close-button{top:5px;right:5px;padding:7px;line-height:10px;position:absolute!important;min-width:auto}\n"] }]
86
+ args: [{ selector: 'igo-metadata-abstract', encapsulation: ViewEncapsulation.None, template: "<h2 mat-dialog-title>{{ data.layerTitle }}</h2>\n<button class=\"close-button\" mat-button mat-dialog-close>X</button>\n<mat-dialog-content *ngIf=\"data.type !== 'arcgisrest'\" class=\"mat-typography\">\n <h3>{{ data.abstract }}</h3>\n</mat-dialog-content>\n<mat-dialog-content *ngIf=\"data.type === 'arcgisrest'\" class=\"mat-typography\">\n <h3 [innerHTML]=\"data.abstract\"></h3>\n</mat-dialog-content>\n", styles: [":host{position:relative;display:block}:host .close-button{top:5px;right:5px;padding:7px;line-height:10px;position:absolute!important;min-width:auto}\n"] }]
87
87
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
88
88
  type: Inject,
89
89
  args: [MAT_DIALOG_DATA]
90
90
  }] }]; } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21ldGFkYXRhL21ldGFkYXRhLWJ1dHRvbi9tZXRhZGF0YS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbWV0YWRhdGEvbWV0YWRhdGEtYnV0dG9uL21ldGFkYXRhLWJ1dHRvbi5jb21wb25lbnQuaHRtbCIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21ldGFkYXRhL21ldGFkYXRhLWJ1dHRvbi9tZXRhZGF0YS1hYnN0cmFjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUNMLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUt4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7OztBQVE3RCxNQUFNLE9BQU8sdUJBQXVCO0lBb0J4QjtJQUNBO0lBcEJWLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBWTtRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBQ08sTUFBTSxDQUFRO0lBRXRCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBQ08sTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUUzQixZQUNVLGVBQWdDLEVBQ2hDLE1BQWlCO1FBRGpCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUFXO0lBQ3hCLENBQUM7SUFFSixZQUFZLENBQUMsUUFBeUI7UUFDcEMsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFO29CQUMxQyxJQUFJLEVBQUU7d0JBQ0osVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSzt3QkFDNUIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRO3dCQUMzQixJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUk7cUJBQ3BCO2lCQUNGLENBQUMsQ0FBQzthQUNKO2lCQUFNLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDckM7U0FDRjthQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7Z0JBQzFDLElBQUksRUFBRTtvQkFDSixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO29CQUM1QixRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7b0JBQzNCLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtpQkFDcEI7YUFDRixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLE9BQU87U0FDUjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7SUFDNUIsQ0FBQzt3R0FyRFUsdUJBQXVCOzRGQUF2Qix1QkFBdUIsdUdDdEJwQyx5Y0FjQTs7NEZEUWEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNOzhIQUkzQyxLQUFLO3NCQURSLEtBQUs7Z0JBVUYsS0FBSztzQkFEUixLQUFLOztBQW9EUixNQUFNLE9BQU8seUJBQXlCO0lBQ1E7SUFBNUMsWUFBNEMsSUFBcUI7UUFBckIsU0FBSSxHQUFKLElBQUksQ0FBaUI7SUFBRyxDQUFDO3dHQUQxRCx5QkFBeUIsa0JBQ2hCLGVBQWU7NEZBRHhCLHlCQUF5Qiw2REVwRnRDLDJhQVFBOzs0RkY0RWEseUJBQXlCO2tCQU5yQyxTQUFTOytCQUNFLHVCQUF1QixpQkFHbEIsaUJBQWlCLENBQUMsSUFBSTs7MEJBR3hCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5pbXBvcnQgeyBMYXllciB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvbGF5ZXInO1xyXG5pbXBvcnQge1xyXG4gIE1ldGFkYXRhTGF5ZXJPcHRpb25zLFxyXG4gIE1ldGFkYXRhT3B0aW9uc1xyXG59IGZyb20gJy4uL3NoYXJlZC9tZXRhZGF0YS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBNZXRhZGF0YVNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvbWV0YWRhdGEuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1tZXRhZGF0YS1idXR0b24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRhZGF0YS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21ldGFkYXRhLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZXRhZGF0YUJ1dHRvbkNvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBnZXQgbGF5ZXIoKTogTGF5ZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xheWVyO1xyXG4gIH1cclxuICBzZXQgbGF5ZXIodmFsdWU6IExheWVyKSB7XHJcbiAgICB0aGlzLl9sYXllciA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9sYXllcjogTGF5ZXI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGNvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbG9yO1xyXG4gIH1cclxuICBzZXQgY29sb3IodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fY29sb3IgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY29sb3IgPSAncHJpbWFyeSc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBtZXRhZGF0YVNlcnZpY2U6IE1ldGFkYXRhU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2dcclxuICApIHt9XHJcblxyXG4gIG9wZW5NZXRhZGF0YShtZXRhZGF0YTogTWV0YWRhdGFPcHRpb25zKSB7XHJcbiAgICBpZiAobWV0YWRhdGEuZXh0ZXJuKSB7XHJcbiAgICAgIGlmICghbWV0YWRhdGEudXJsICYmIG1ldGFkYXRhLmFic3RyYWN0KSB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2cub3BlbihNZXRhZGF0YUFic3RyYWN0Q29tcG9uZW50LCB7XHJcbiAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGxheWVyVGl0bGU6IHRoaXMubGF5ZXIudGl0bGUsXHJcbiAgICAgICAgICAgIGFic3RyYWN0OiBtZXRhZGF0YS5hYnN0cmFjdCxcclxuICAgICAgICAgICAgdHlwZTogbWV0YWRhdGEudHlwZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKG1ldGFkYXRhLnVybCkge1xyXG4gICAgICAgIHRoaXMubWV0YWRhdGFTZXJ2aWNlLm9wZW4obWV0YWRhdGEpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKCFtZXRhZGF0YS5leHRlcm4gJiYgbWV0YWRhdGEuYWJzdHJhY3QpIHtcclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihNZXRhZGF0YUFic3RyYWN0Q29tcG9uZW50LCB7XHJcbiAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgbGF5ZXJUaXRsZTogdGhpcy5sYXllci50aXRsZSxcclxuICAgICAgICAgIGFic3RyYWN0OiBtZXRhZGF0YS5hYnN0cmFjdCxcclxuICAgICAgICAgIHR5cGU6IG1ldGFkYXRhLnR5cGVcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IG9wdGlvbnMoKTogTWV0YWRhdGFMYXllck9wdGlvbnMge1xyXG4gICAgaWYgKCF0aGlzLmxheWVyKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmxheWVyLm9wdGlvbnM7XHJcbiAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1tZXRhZGF0YS1hYnN0cmFjdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21ldGFkYXRhLWFic3RyYWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tZXRhZGF0YS1hYnN0cmFjdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhQWJzdHJhY3RDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogTWV0YWRhdGFPcHRpb25zKSB7fVxyXG59XHJcbiIsIjxidXR0b25cclxuICAqbmdJZj1cIlxyXG4gICAgKG9wdGlvbnMgJiYgb3B0aW9ucy5tZXRhZGF0YSAmJiBvcHRpb25zLm1ldGFkYXRhLnVybCkgfHxcclxuICAgIChvcHRpb25zICYmIG9wdGlvbnMubWV0YWRhdGEgJiYgb3B0aW9ucy5tZXRhZGF0YS5hYnN0cmFjdClcclxuICBcIlxyXG4gIG1hdC1pY29uLWJ1dHRvblxyXG4gIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXHJcbiAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8ubWV0YWRhdGEuc2hvdycgfCB0cmFuc2xhdGVcIlxyXG4gIFtjb2xvcl09XCJjb2xvclwiXHJcbiAgKGNsaWNrKT1cIm9wZW5NZXRhZGF0YShvcHRpb25zLm1ldGFkYXRhKVwiXHJcbj5cclxuICA8bWF0LWljb24gc3ZnSWNvbj1cImluZm9ybWF0aW9uLW91dGxpbmVcIj48L21hdC1pY29uPlxyXG48L2J1dHRvbj5cclxuIiwiPGgyIG1hdC1kaWFsb2ctdGl0bGU+e3sgZGF0YS5sYXllclRpdGxlIH19PC9oMj5cclxuPGJ1dHRvbiBjbGFzcz1cImNsb3NlLWJ1dHRvblwiIG1hdC1idXR0b24gbWF0LWRpYWxvZy1jbG9zZT5YPC9idXR0b24+XHJcbjxtYXQtZGlhbG9nLWNvbnRlbnQgKm5nSWY9XCJkYXRhLnR5cGUgIT09ICdhcmNnaXNyZXN0J1wiIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cclxuICA8aDM+e3sgZGF0YS5hYnN0cmFjdCB9fTwvaDM+XHJcbjwvbWF0LWRpYWxvZy1jb250ZW50PlxyXG48bWF0LWRpYWxvZy1jb250ZW50ICpuZ0lmPVwiZGF0YS50eXBlID09PSAnYXJjZ2lzcmVzdCdcIiBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+XHJcbiAgPGgzIFtpbm5lckhUTUxdPVwiZGF0YS5hYnN0cmFjdFwiPjwvaDM+XHJcbjwvbWF0LWRpYWxvZy1jb250ZW50PlxyXG4iXX0=
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21ldGFkYXRhL21ldGFkYXRhLWJ1dHRvbi9tZXRhZGF0YS1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbWV0YWRhdGEvbWV0YWRhdGEtYnV0dG9uL21ldGFkYXRhLWJ1dHRvbi5jb21wb25lbnQuaHRtbCIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL21ldGFkYXRhL21ldGFkYXRhLWJ1dHRvbi9tZXRhZGF0YS1hYnN0cmFjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUNMLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUt4RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7OztBQVE3RCxNQUFNLE9BQU8sdUJBQXVCO0lBb0J4QjtJQUNBO0lBcEJWLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBWTtRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBQ08sTUFBTSxDQUFRO0lBRXRCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBQ08sTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUUzQixZQUNVLGVBQWdDLEVBQ2hDLE1BQWlCO1FBRGpCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUFXO0lBQ3hCLENBQUM7SUFFSixZQUFZLENBQUMsUUFBeUI7UUFDcEMsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFO29CQUMxQyxJQUFJLEVBQUU7d0JBQ0osVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSzt3QkFDNUIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxRQUFRO3dCQUMzQixJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUk7cUJBQ3BCO2lCQUNGLENBQUMsQ0FBQzthQUNKO2lCQUFNLElBQUksUUFBUSxDQUFDLEdBQUcsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDckM7U0FDRjthQUFNLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUU7WUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7Z0JBQzFDLElBQUksRUFBRTtvQkFDSixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO29CQUM1QixRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7b0JBQzNCLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTtpQkFDcEI7YUFDRixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLE9BQU87U0FDUjtRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7SUFDNUIsQ0FBQzt3R0FyRFUsdUJBQXVCOzRGQUF2Qix1QkFBdUIsdUdDdEJwQyw2YUFjQTs7NEZEUWEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNOzhIQUkzQyxLQUFLO3NCQURSLEtBQUs7Z0JBVUYsS0FBSztzQkFEUixLQUFLOztBQW9EUixNQUFNLE9BQU8seUJBQXlCO0lBQ1E7SUFBNUMsWUFBNEMsSUFBcUI7UUFBckIsU0FBSSxHQUFKLElBQUksQ0FBaUI7SUFBRyxDQUFDO3dHQUQxRCx5QkFBeUIsa0JBQ2hCLGVBQWU7NEZBRHhCLHlCQUF5Qiw2REVwRnRDLDJaQVFBOzs0RkY0RWEseUJBQXlCO2tCQU5yQyxTQUFTOytCQUNFLHVCQUF1QixpQkFHbEIsaUJBQWlCLENBQUMsSUFBSTs7MEJBR3hCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEluamVjdCxcclxuICBJbnB1dCxcclxuICBWaWV3RW5jYXBzdWxhdGlvblxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5pbXBvcnQgeyBMYXllciB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvbGF5ZXInO1xyXG5pbXBvcnQge1xyXG4gIE1ldGFkYXRhTGF5ZXJPcHRpb25zLFxyXG4gIE1ldGFkYXRhT3B0aW9uc1xyXG59IGZyb20gJy4uL3NoYXJlZC9tZXRhZGF0YS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBNZXRhZGF0YVNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvbWV0YWRhdGEuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1tZXRhZGF0YS1idXR0b24nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZXRhZGF0YS1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21ldGFkYXRhLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZXRhZGF0YUJ1dHRvbkNvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBnZXQgbGF5ZXIoKTogTGF5ZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xheWVyO1xyXG4gIH1cclxuICBzZXQgbGF5ZXIodmFsdWU6IExheWVyKSB7XHJcbiAgICB0aGlzLl9sYXllciA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9sYXllcjogTGF5ZXI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGNvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbG9yO1xyXG4gIH1cclxuICBzZXQgY29sb3IodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fY29sb3IgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY29sb3IgPSAncHJpbWFyeSc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBtZXRhZGF0YVNlcnZpY2U6IE1ldGFkYXRhU2VydmljZSxcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2dcclxuICApIHt9XHJcblxyXG4gIG9wZW5NZXRhZGF0YShtZXRhZGF0YTogTWV0YWRhdGFPcHRpb25zKSB7XHJcbiAgICBpZiAobWV0YWRhdGEuZXh0ZXJuKSB7XHJcbiAgICAgIGlmICghbWV0YWRhdGEudXJsICYmIG1ldGFkYXRhLmFic3RyYWN0KSB7XHJcbiAgICAgICAgdGhpcy5kaWFsb2cub3BlbihNZXRhZGF0YUFic3RyYWN0Q29tcG9uZW50LCB7XHJcbiAgICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGxheWVyVGl0bGU6IHRoaXMubGF5ZXIudGl0bGUsXHJcbiAgICAgICAgICAgIGFic3RyYWN0OiBtZXRhZGF0YS5hYnN0cmFjdCxcclxuICAgICAgICAgICAgdHlwZTogbWV0YWRhdGEudHlwZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9IGVsc2UgaWYgKG1ldGFkYXRhLnVybCkge1xyXG4gICAgICAgIHRoaXMubWV0YWRhdGFTZXJ2aWNlLm9wZW4obWV0YWRhdGEpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKCFtZXRhZGF0YS5leHRlcm4gJiYgbWV0YWRhdGEuYWJzdHJhY3QpIHtcclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihNZXRhZGF0YUFic3RyYWN0Q29tcG9uZW50LCB7XHJcbiAgICAgICAgZGF0YToge1xyXG4gICAgICAgICAgbGF5ZXJUaXRsZTogdGhpcy5sYXllci50aXRsZSxcclxuICAgICAgICAgIGFic3RyYWN0OiBtZXRhZGF0YS5hYnN0cmFjdCxcclxuICAgICAgICAgIHR5cGU6IG1ldGFkYXRhLnR5cGVcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IG9wdGlvbnMoKTogTWV0YWRhdGFMYXllck9wdGlvbnMge1xyXG4gICAgaWYgKCF0aGlzLmxheWVyKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmxheWVyLm9wdGlvbnM7XHJcbiAgfVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1tZXRhZGF0YS1hYnN0cmFjdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21ldGFkYXRhLWFic3RyYWN0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9tZXRhZGF0YS1hYnN0cmFjdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIE1ldGFkYXRhQWJzdHJhY3RDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogTWV0YWRhdGFPcHRpb25zKSB7fVxyXG59XHJcbiIsIjxidXR0b25cbiAgKm5nSWY9XCJcbiAgICAob3B0aW9ucyAmJiBvcHRpb25zLm1ldGFkYXRhICYmIG9wdGlvbnMubWV0YWRhdGEudXJsKSB8fFxuICAgIChvcHRpb25zICYmIG9wdGlvbnMubWV0YWRhdGEgJiYgb3B0aW9ucy5tZXRhZGF0YS5hYnN0cmFjdClcbiAgXCJcbiAgbWF0LWljb24tYnV0dG9uXG4gIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5tZXRhZGF0YS5zaG93JyB8IHRyYW5zbGF0ZVwiXG4gIFtjb2xvcl09XCJjb2xvclwiXG4gIChjbGljayk9XCJvcGVuTWV0YWRhdGEob3B0aW9ucy5tZXRhZGF0YSlcIlxuPlxuICA8bWF0LWljb24gc3ZnSWNvbj1cImluZm9ybWF0aW9uLW91dGxpbmVcIj48L21hdC1pY29uPlxuPC9idXR0b24+XG4iLCI8aDIgbWF0LWRpYWxvZy10aXRsZT57eyBkYXRhLmxheWVyVGl0bGUgfX08L2gyPlxuPGJ1dHRvbiBjbGFzcz1cImNsb3NlLWJ1dHRvblwiIG1hdC1idXR0b24gbWF0LWRpYWxvZy1jbG9zZT5YPC9idXR0b24+XG48bWF0LWRpYWxvZy1jb250ZW50ICpuZ0lmPVwiZGF0YS50eXBlICE9PSAnYXJjZ2lzcmVzdCdcIiBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+XG4gIDxoMz57eyBkYXRhLmFic3RyYWN0IH19PC9oMz5cbjwvbWF0LWRpYWxvZy1jb250ZW50PlxuPG1hdC1kaWFsb2ctY29udGVudCAqbmdJZj1cImRhdGEudHlwZSA9PT0gJ2FyY2dpc3Jlc3QnXCIgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxuICA8aDMgW2lubmVySFRNTF09XCJkYXRhLmFic3RyYWN0XCI+PC9oMz5cbjwvbWF0LWRpYWxvZy1jb250ZW50PlxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbWV0YWRhdGEvc2hhcmVkL21ldGFkYXRhLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZUNhdGFsb2dTdHJpbmdzIH0gZnJvbSAnLi4vLi4vY2F0YWxvZy9zaGFyZWQvY2F0YWxvZy5lbnVtJztcclxuaW1wb3J0IHsgTGF5ZXJPcHRpb25zIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllci5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YU9wdGlvbnMge1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIGV4dGVybj86IGJvb2xlYW47XHJcbiAgYWJzdHJhY3Q/OiBzdHJpbmc7XHJcbiAga2V5d29yZExpc3Q/OiBzdHJpbmdbXTtcclxuICBsYXllclRpdGxlPzogc3RyaW5nO1xyXG4gIHR5cGU/OiBUeXBlQ2F0YWxvZ1N0cmluZ3M7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWRhdGFMYXllck9wdGlvbnMgZXh0ZW5kcyBMYXllck9wdGlvbnMge1xyXG4gIG1ldGFkYXRhPzogTWV0YWRhdGFPcHRpb25zO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvbWV0YWRhdGEvc2hhcmVkL21ldGFkYXRhLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZUNhdGFsb2dTdHJpbmdzIH0gZnJvbSAnLi4vLi4vY2F0YWxvZy9zaGFyZWQvY2F0YWxvZy5lbnVtJztcbmltcG9ydCB7IExheWVyT3B0aW9ucyB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvbGF5ZXIuaW50ZXJmYWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBNZXRhZGF0YU9wdGlvbnMge1xuICB1cmw6IHN0cmluZztcbiAgZXh0ZXJuPzogYm9vbGVhbjtcbiAgYWJzdHJhY3Q/OiBzdHJpbmc7XG4gIGtleXdvcmRMaXN0Pzogc3RyaW5nW107XG4gIGxheWVyVGl0bGU/OiBzdHJpbmc7XG4gIHR5cGU/OiBUeXBlQ2F0YWxvZ1N0cmluZ3M7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWV0YWRhdGFMYXllck9wdGlvbnMgZXh0ZW5kcyBMYXllck9wdGlvbnMge1xuICBtZXRhZGF0YT86IE1ldGFkYXRhT3B0aW9ucztcbn1cbiJdfQ==
@@ -130,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
130
130
  providedIn: 'root'
131
131
  }]
132
132
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.GeoDBService }, { type: i3.MessageService }]; } });
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnRmlsZVRvR2VvREIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL29mZmxpbmUvZ2VvREIvY29uZmlnRmlsZVRvR2VvREIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFxQixNQUFNLHNCQUFzQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU1QyxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUV6QyxPQUFPLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBSy9DLE1BQU0sT0FBTyx3QkFBd0I7SUFFekI7SUFDQTtJQUNBO0lBSFYsWUFDVSxJQUFnQixFQUNoQixZQUEwQixFQUMxQixjQUE4QjtRQUY5QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUNyQyxDQUFDO0lBRUosSUFBSSxDQUFDLEdBQVc7UUFDZCxJQUFJLGVBQWlDLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUk7YUFDTixHQUFHLENBQUMsR0FBRyxDQUFDO2FBQ1IsSUFBSSxDQUNILFVBQVUsQ0FBQyxDQUFDLEtBQXdCLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxnQkFB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QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBkZWZhdWx0IGFzIEpTWmlwIH0gZnJvbSAnanN6aXAnO1xyXG5pbXBvcnQgeyBBY3RpdmVUb2FzdCB9IGZyb20gJ25neC10b2FzdHInO1xyXG5pbXBvcnQgeyBvZiwgemlwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGNvbmNhdE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEluc2VydFNvdXJjZUluc2VydERCRW51bSB9IGZyb20gJy4vZ2VvREIuZW51bXMnO1xyXG5pbXBvcnQgeyBEYXRhc1RvSURCLCBHZW9EQkRhdGEgfSBmcm9tICcuL2dlb0RCLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEdlb0RCU2VydmljZSB9IGZyb20gJy4vZ2VvREIuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maWdGaWxlVG9HZW9EQlNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBnZW9EQlNlcnZpY2U6IEdlb0RCU2VydmljZSxcclxuICAgIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBsb2FkKHVybDogc3RyaW5nKSB7XHJcbiAgICBsZXQgZG93bmxvYWRNZXNzYWdlOiBBY3RpdmVUb2FzdDxhbnk+O1xyXG4gICAgdGhpcy5odHRwXHJcbiAgICAgIC5nZXQodXJsKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuZXJyb3IoYEdlb0RhdGEgZmlsZSAke3VybH0gY291bGQgbm90IGJlIHJlYWRgKTtcclxuICAgICAgICAgIGVycm9yLmVycm9yLmNhdWdodCA9IHRydWU7XHJcbiAgICAgICAgICB0aHJvdyBlcnJvcjtcclxuICAgICAgICB9KSxcclxuICAgICAgICBjb25jYXRNYXAoKGRhdGFzVG9JREI6IERhdGFzVG9JREIpID0+IHtcclxuICAgICAgICAgIGNvbnN0IGRhdGFzJCA9IFtdO1xyXG4gICAgICAgICAgbGV0IGZpcnN0RG93bmxvYWQgPSB0cnVlO1xyXG4gICAgICAgICAgaWYgKGRhdGFzVG9JREI/Lmdlb0RhdGFzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICAgICAgZGF0YXNUb0lEQj8uZ2VvRGF0YXMubWFwKChnZW9EYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKHR5cGVvZiBnZW9EYXRhLnRyaWdnZXJEYXRlID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICAgICAgZ2VvRGF0YS50cmlnZ2VyRGF0ZSA9IG5ldyBEYXRlKERhdGUucGFyc2UoZ2VvRGF0YS50cmlnZ2VyRGF0ZSkpO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoY3VycmVudERhdGUgPj0gZ2VvRGF0YS50cmlnZ2VyRGF0ZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKGdlb0RhdGEuYWN0aW9uID09PSAndXBkYXRlJykge1xyXG4gICAgICAgICAgICAgICAgICBjb25zdCBpbnNlcnRFdmVudCA9IGAke1xyXG4gICAgICAgICAgICAgICAgICAgIGdlb0RhdGEuc291cmNlIHx8IEluc2VydFNvdXJjZUluc2VydERCRW51bS5TeXN0ZW1cclxuICAgICAgICAgICAgICAgICAgfSAoJHtnZW9EYXRhLnRyaWdnZXJEYXRlfSlgO1xyXG4gICAgICAgICAgICAgICAgICBnZW9EYXRhLnVybHMubWFwKCh1cmwpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBkYXRhcyQucHVzaChcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2VvREJTZXJ2aWNlLmdldEJ5SUQodXJsKS5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25jYXRNYXAoKHJlczogR2VvREJEYXRhKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlcz8uaW5zZXJ0RXZlbnQgIT09IGluc2VydEV2ZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmlyc3REb3dubG9hZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3dubG9hZE1lc3NhZ2UgPSB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmluZm8oXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lnby5nZW8uaW5kZXhlZERiLmRhdGEtZG93bmxvYWQtc3RhcnQnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlVGltZU91dDogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb2dyZXNzQmFyOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFwVG9EaXNtaXNzOiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3REb3dubG9hZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3BvbnNlVHlwZTogYW55ID0gJ2pzb24nO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNaaXAgPSB0aGlzLmlzWmlwKHVybCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNaaXApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlID0gJ2FycmF5YnVmZmVyJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCwgeyByZXNwb25zZVR5cGUgfSkucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5yZW1vdmUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3dubG9hZE1lc3NhZ2UudG9hc3RJZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpZ28uZ2VvLmluZGV4ZWREYi5kYXRhLWRvd25sb2FkLWZhaWxlZCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IHRpbWVPdXQ6IDQwMDAwIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvci5lcnJvci5jYXVnaHQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uY2F0TWFwKChyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzWmlwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvYnNlcnZhYmxlcyQgPSBbXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2VvREJTZXJ2aWNlLnVwZGF0ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluc2VydFNvdXJjZUluc2VydERCRW51bS5TeXN0ZW0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXJ0RXZlbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEpTWmlwLmxvYWRBc3luYyhyKS50aGVuKCh6aXBwZWQpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgemlwcGVkLmZvckVhY2goKHJlbGF0aXZlUGF0aCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlUGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG9Mb2NhbGVMb3dlckNhc2UoKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZW5kc1dpdGgoJy5nZW9qc29uJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHppcHBlZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmlsZShyZWxhdGl2ZVBhdGgpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hc3luYygndGV4dCcpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2VvanNvbiA9IEpTT04ucGFyc2Uocik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3ViVXJsID1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdlb0RhdGEuemlwcGVkQmFzZVVybCB8fCAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB6aXBwZWRVcmwgPVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ViVXJsICtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdWJVcmwuZW5kc1dpdGgoJy8nKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICcnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy8nKSArXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVBhdGg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2YWJsZXMkLnB1c2goXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdlb0RCU2VydmljZS51cGRhdGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHppcHBlZFVybCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW9qc29uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0uU3lzdGVtLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnNlcnRFdmVudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB6aXAob2JzZXJ2YWJsZXMkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2VvREJTZXJ2aWNlLnVwZGF0ZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0uU3lzdGVtLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXJ0RXZlbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGdlb0RhdGEuYWN0aW9uID09PSAnZGVsZXRlJykge1xyXG4gICAgICAgICAgICAgICAgICBnZW9EYXRhLnVybHMubWFwKCh1cmwpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBkYXRhcyQucHVzaCh0aGlzLmdlb0RCU2VydmljZS5kZWxldGVCeUtleSh1cmwpKTtcclxuICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiB6aXAoLi4uZGF0YXMkKTtcclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIGlmIChkb3dubG9hZE1lc3NhZ2UpIHtcclxuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnJlbW92ZShkb3dubG9hZE1lc3NhZ2UudG9hc3RJZCk7XHJcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2Uuc3VjY2VzcyhcclxuICAgICAgICAgICAgICAnaWdvLmdlby5pbmRleGVkRGIuZGF0YS1kb3dubG9hZC1jb21wbGV0ZWQnLFxyXG4gICAgICAgICAgICAgIHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICB7IHRpbWVPdXQ6IDQwMDAwIH1cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgIH0sIDI1MDApO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzWmlwKHZhbHVlKSB7XHJcbiAgICBjb25zdCByZWdleCA9IC8oemlwKSQvO1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgcmVnZXgudGVzdCh2YWx1ZS50b0xvd2VyQ2FzZSgpKTtcclxuICB9XHJcbn1cclxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnRmlsZVRvR2VvREIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL29mZmxpbmUvZ2VvREIvY29uZmlnRmlsZVRvR2VvREIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFxQixNQUFNLHNCQUFzQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU1QyxPQUFPLEVBQUUsT0FBTyxJQUFJLEtBQUssRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUV6QyxPQUFPLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBSy9DLE1BQU0sT0FBTyx3QkFBd0I7SUFFekI7SUFDQTtJQUNBO0lBSFYsWUFDVSxJQUFnQixFQUNoQixZQUEwQixFQUMxQixjQUE4QjtRQUY5QixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUNyQyxDQUFDO0lBRUosSUFBSSxDQUFDLEdBQVc7UUFDZCxJQUFJLGVBQWlDLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUk7YUFDTixHQUFHLENBQUMsR0FBRyxDQUFDO2FBQ1IsSUFBSSxDQUNILFVBQVUsQ0FBQyxDQUFDLEtBQXdCLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxnQkFB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QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5cbmltcG9ydCB7IGRlZmF1bHQgYXMgSlNaaXAgfSBmcm9tICdqc3ppcCc7XG5pbXBvcnQgeyBBY3RpdmVUb2FzdCB9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHsgb2YsIHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgY29uY2F0TWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0gfSBmcm9tICcuL2dlb0RCLmVudW1zJztcbmltcG9ydCB7IERhdGFzVG9JREIsIEdlb0RCRGF0YSB9IGZyb20gJy4vZ2VvREIuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdlb0RCU2VydmljZSB9IGZyb20gJy4vZ2VvREIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENvbmZpZ0ZpbGVUb0dlb0RCU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGdlb0RCU2VydmljZTogR2VvREJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlXG4gICkge31cblxuICBsb2FkKHVybDogc3RyaW5nKSB7XG4gICAgbGV0IGRvd25sb2FkTWVzc2FnZTogQWN0aXZlVG9hc3Q8YW55PjtcbiAgICB0aGlzLmh0dHBcbiAgICAgIC5nZXQodXJsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoKGVycm9yOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuZXJyb3IoYEdlb0RhdGEgZmlsZSAke3VybH0gY291bGQgbm90IGJlIHJlYWRgKTtcbiAgICAgICAgICBlcnJvci5lcnJvci5jYXVnaHQgPSB0cnVlO1xuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9KSxcbiAgICAgICAgY29uY2F0TWFwKChkYXRhc1RvSURCOiBEYXRhc1RvSURCKSA9PiB7XG4gICAgICAgICAgY29uc3QgZGF0YXMkID0gW107XG4gICAgICAgICAgbGV0IGZpcnN0RG93bmxvYWQgPSB0cnVlO1xuICAgICAgICAgIGlmIChkYXRhc1RvSURCPy5nZW9EYXRhcykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICAgICAgZGF0YXNUb0lEQj8uZ2VvRGF0YXMubWFwKChnZW9EYXRhKSA9PiB7XG4gICAgICAgICAgICAgIGlmICh0eXBlb2YgZ2VvRGF0YS50cmlnZ2VyRGF0ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICBnZW9EYXRhLnRyaWdnZXJEYXRlID0gbmV3IERhdGUoRGF0ZS5wYXJzZShnZW9EYXRhLnRyaWdnZXJEYXRlKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKGN1cnJlbnREYXRlID49IGdlb0RhdGEudHJpZ2dlckRhdGUpIHtcbiAgICAgICAgICAgICAgICBpZiAoZ2VvRGF0YS5hY3Rpb24gPT09ICd1cGRhdGUnKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBpbnNlcnRFdmVudCA9IGAke1xuICAgICAgICAgICAgICAgICAgICBnZW9EYXRhLnNvdXJjZSB8fCBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0uU3lzdGVtXG4gICAgICAgICAgICAgICAgICB9ICgke2dlb0RhdGEudHJpZ2dlckRhdGV9KWA7XG4gICAgICAgICAgICAgICAgICBnZW9EYXRhLnVybHMubWFwKCh1cmwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZGF0YXMkLnB1c2goXG4gICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZW9EQlNlcnZpY2UuZ2V0QnlJRCh1cmwpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25jYXRNYXAoKHJlczogR2VvREJEYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXM/Lmluc2VydEV2ZW50ICE9PSBpbnNlcnRFdmVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaXJzdERvd25sb2FkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3dubG9hZE1lc3NhZ2UgPSB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmluZm8oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdpZ28uZ2VvLmluZGV4ZWREYi5kYXRhLWRvd25sb2FkLXN0YXJ0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZVRpbWVPdXQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvZ3Jlc3NCYXI6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcFRvRGlzbWlzczogZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0RG93bmxvYWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3BvbnNlVHlwZTogYW55ID0gJ2pzb24nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlzWmlwID0gdGhpcy5pc1ppcCh1cmwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc1ppcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlID0gJ2FycmF5YnVmZmVyJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsLCB7IHJlc3BvbnNlVHlwZSB9KS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UucmVtb3ZlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvd25sb2FkTWVzc2FnZS50b2FzdElkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuZXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lnby5nZW8uaW5kZXhlZERiLmRhdGEtZG93bmxvYWQtZmFpbGVkJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyB0aW1lT3V0OiA0MDAwMCB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IuZXJyb3IuY2F1Z2h0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmNhdE1hcCgocikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNaaXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvYnNlcnZhYmxlcyQgPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdlb0RCU2VydmljZS51cGRhdGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7fSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5zZXJ0U291cmNlSW5zZXJ0REJFbnVtLlN5c3RlbSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXJ0RXZlbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEpTWmlwLmxvYWRBc3luYyhyKS50aGVuKCh6aXBwZWQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHppcHBlZC5mb3JFYWNoKChyZWxhdGl2ZVBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlUGF0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRvTG9jYWxlTG93ZXJDYXNlKClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5lbmRzV2l0aCgnLmdlb2pzb24nKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6aXBwZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5maWxlKHJlbGF0aXZlUGF0aClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5hc3luYygndGV4dCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnZW9qc29uID0gSlNPTi5wYXJzZShyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3ViVXJsID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW9EYXRhLnppcHBlZEJhc2VVcmwgfHwgJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHppcHBlZFVybCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ViVXJsICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc3ViVXJsLmVuZHNXaXRoKCcvJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogJy8nKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpdmVQYXRoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYnNlcnZhYmxlcyQucHVzaChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdlb0RCU2VydmljZS51cGRhdGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB6aXBwZWRVcmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZW9qc29uLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW5zZXJ0U291cmNlSW5zZXJ0REJFbnVtLlN5c3RlbSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc2VydEV2ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB6aXAob2JzZXJ2YWJsZXMkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZW9EQlNlcnZpY2UudXBkYXRlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0uU3lzdGVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc2VydEV2ZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGdlb0RhdGEuYWN0aW9uID09PSAnZGVsZXRlJykge1xuICAgICAgICAgICAgICAgICAgZ2VvRGF0YS51cmxzLm1hcCgodXJsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGRhdGFzJC5wdXNoKHRoaXMuZ2VvREJTZXJ2aWNlLmRlbGV0ZUJ5S2V5KHVybCkpO1xuICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHppcCguLi5kYXRhcyQpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmIChkb3dubG9hZE1lc3NhZ2UpIHtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UucmVtb3ZlKGRvd25sb2FkTWVzc2FnZS50b2FzdElkKTtcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2Uuc3VjY2VzcyhcbiAgICAgICAgICAgICAgJ2lnby5nZW8uaW5kZXhlZERiLmRhdGEtZG93bmxvYWQtY29tcGxldGVkJyxcbiAgICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgICB7IHRpbWVPdXQ6IDQwMDAwIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSwgMjUwMCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1ppcCh2YWx1ZSkge1xuICAgIGNvbnN0IHJlZ2V4ID0gLyh6aXApJC87XG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgJiYgcmVnZXgudGVzdCh2YWx1ZS50b0xvd2VyQ2FzZSgpKTtcbiAgfVxufVxuIl19
@@ -3,4 +3,4 @@ export var InsertSourceInsertDBEnum;
3
3
  InsertSourceInsertDBEnum["System"] = "system";
4
4
  InsertSourceInsertDBEnum["User"] = "user";
5
5
  })(InsertSourceInsertDBEnum || (InsertSourceInsertDBEnum = {}));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvREIuZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9vZmZsaW5lL2dlb0RCL2dlb0RCLmVudW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHdCQUdYO0FBSEQsV0FBWSx3QkFBd0I7SUFDbEMsNkNBQWlCLENBQUE7SUFDakIseUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBR25DIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gSW5zZXJ0U291cmNlSW5zZXJ0REJFbnVtIHtcclxuICBTeXN0ZW0gPSAnc3lzdGVtJyxcclxuICBVc2VyID0gJ3VzZXInXHJcbn1cclxuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvREIuZW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9vZmZsaW5lL2dlb0RCL2dlb0RCLmVudW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLHdCQUdYO0FBSEQsV0FBWSx3QkFBd0I7SUFDbEMsNkNBQWlCLENBQUE7SUFDakIseUNBQWEsQ0FBQTtBQUNmLENBQUMsRUFIVyx3QkFBd0IsS0FBeEIsd0JBQXdCLFFBR25DIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gSW5zZXJ0U291cmNlSW5zZXJ0REJFbnVtIHtcbiAgU3lzdGVtID0gJ3N5c3RlbScsXG4gIFVzZXIgPSAndXNlcidcbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvREIuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvb2ZmbGluZS9nZW9EQi9nZW9EQi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluc2VydFNvdXJjZUluc2VydERCRW51bSB9IGZyb20gJy4vZ2VvREIuZW51bXMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBHZW9EQkRhdGEge1xyXG4gIHVybDogc3RyaW5nO1xyXG4gIHJlZ2lvbklEOiBhbnk7XHJcbiAgb2JqZWN0OiBhbnk7XHJcbiAgY29tcHJlc3NlZDogYm9vbGVhbjtcclxuICBpbnNlcnRTb3VyY2U6IEluc2VydFNvdXJjZUluc2VydERCRW51bTtcclxuICBpbnNlcnRFdmVudDogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEdlb0RhdGFUb0lEQiB7XHJcbiAgdHJpZ2dlckRhdGU6IERhdGUgfCBzdHJpbmc7XHJcbiAgYWN0aW9uOiAnZGVsZXRlJyB8ICd1cGRhdGUnO1xyXG4gIHVybHM6IHN0cmluZ1tdO1xyXG4gIHNvdXJjZT86IHN0cmluZztcclxuICB6aXBwZWRCYXNlVXJsPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERhdGFzVG9JREIge1xyXG4gIGdlb0RhdGFzOiBHZW9EYXRhVG9JREJbXTtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvREIuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvb2ZmbGluZS9nZW9EQi9nZW9EQi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluc2VydFNvdXJjZUluc2VydERCRW51bSB9IGZyb20gJy4vZ2VvREIuZW51bXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdlb0RCRGF0YSB7XG4gIHVybDogc3RyaW5nO1xuICByZWdpb25JRDogYW55O1xuICBvYmplY3Q6IGFueTtcbiAgY29tcHJlc3NlZDogYm9vbGVhbjtcbiAgaW5zZXJ0U291cmNlOiBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW07XG4gIGluc2VydEV2ZW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2VvRGF0YVRvSURCIHtcbiAgdHJpZ2dlckRhdGU6IERhdGUgfCBzdHJpbmc7XG4gIGFjdGlvbjogJ2RlbGV0ZScgfCAndXBkYXRlJztcbiAgdXJsczogc3RyaW5nW107XG4gIHNvdXJjZT86IHN0cmluZztcbiAgemlwcGVkQmFzZVVybD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYXRhc1RvSURCIHtcbiAgZ2VvRGF0YXM6IEdlb0RhdGFUb0lEQltdO1xufVxuIl19
@@ -172,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
172
172
  providedIn: 'root'
173
173
  }]
174
174
  }], ctorParameters: function () { return [{ type: i1.NgxIndexedDBService }, { type: i2.CompressionService }]; } });
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvREIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL29mZmxpbmUvZ2VvREIvZ2VvREIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVoRCxPQUFPLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFjLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBUTdELE1BQU0sT0FBTyxZQUFZO0lBTWI7SUFDQTtJQU5ELE1BQU0sR0FBVyxTQUFTLENBQUM7SUFDN0IsYUFBYSxHQUEwQixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2pELFFBQVEsR0FBVyxDQUFDLENBQUM7SUFFNUIsWUFDVSxtQkFBd0MsRUFDeEMsV0FBK0I7UUFEL0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7SUFDdEMsQ0FBQztJQUVKOzs7Ozs7OztPQVFHO0lBQ0gsTUFBTSxDQUNKLEdBQVcsRUFDWCxRQUFhLEVBQ2IsTUFBVyxFQUNYLFlBQXNDLEVBQ3RDLFdBQW1CO1FBRW5CLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFDRCxJQUFJLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFFckIsTUFBTSxPQUFPLEdBQXVCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDbEQsSUFBSSxPQUFPLEdBQW9CLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxJQUFJLE1B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QUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2RCxLQUFLLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRTtnQkFDNUIsSUFBSSxDQUFDLG1CQUFtQjtxQkFDckIsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDO3FCQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUNiLFNBQVMsQ0FBQyxDQUFDLFFBQW1CLEVBQUUsRUFBRTtvQkFDakMsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDO29CQUMvQixhQUFhLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztvQkFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLENBQUM7YUFDTjtTQUNGO0lBQ0gsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO3dHQTVNVSxZQUFZOzRHQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IENvbXByZXNzaW9uU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgREJNb2RlLCBOZ3hJbmRleGVkREJTZXJ2aWNlIH0gZnJvbSAnbmd4LWluZGV4ZWQtZGInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjb25jYXRNYXAsIGZpcnN0LCBtYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0gfSBmcm9tICcuL2dlb0RCLmVudW1zJztcclxuaW1wb3J0IHsgR2VvREJEYXRhIH0gZnJvbSAnLi9nZW9EQi5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgR2VvREJTZXJ2aWNlIHtcclxuICByZWFkb25seSBkYk5hbWU6IHN0cmluZyA9ICdnZW9EYXRhJztcclxuICBwdWJsaWMgY29sbGlzaW9uc01hcDogTWFwPG51bWJlciwgc3RyaW5nW10+ID0gbmV3IE1hcCgpO1xyXG4gIHB1YmxpYyBfbmV3RGF0YTogbnVtYmVyID0gMDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIG5neEluZGV4ZWREQlNlcnZpY2U6IE5neEluZGV4ZWREQlNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbXByZXNzaW9uOiBDb21wcmVzc2lvblNlcnZpY2VcclxuICApIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIE9ubHkgYmxvYiBjYW4gYmUgY29tcHJlc3NlZFxyXG4gICAqIEBwYXJhbSB1cmxcclxuICAgKiBAcGFyYW0gcmVnaW9uSURcclxuICAgKiBAcGFyYW0gb2JqZWN0IG9iamVjdCB0byBoYW5kbGVcclxuICAgKiBAcGFyYW0gaW5zZXJ0U291cmNlIHR5cGUgb2YgZXZlbnQgdXNlciBvciBzeXN0ZW1cclxuICAgKiBAcGFyYW0gaW5zZXJ0RXZlbnQgTmFtZSBvZiB0aGUgZXZlbnQgd2hlcmUgdGhlIGluc2VydCBoYXMgYmVlbiB0cmlnZ2VyZWRcclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIHVwZGF0ZShcclxuICAgIHVybDogc3RyaW5nLFxyXG4gICAgcmVnaW9uSUQ6IGFueSxcclxuICAgIG9iamVjdDogYW55LFxyXG4gICAgaW5zZXJ0U291cmNlOiBJbnNlcnRTb3VyY2VJbnNlcnREQkVudW0sXHJcbiAgICBpbnNlcnRFdmVudDogc3RyaW5nXHJcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGlmICghb2JqZWN0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGxldCBjb21wcmVzcyA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0IHN1YmplY3Q6IFN1YmplY3Q8R2VvREJEYXRhPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICBsZXQgb2JqZWN0JDogT2JzZXJ2YWJsZTxhbnk+ID0gb2Yob2JqZWN0KTtcclxuICAgIGlmIChvYmplY3QgaW5zdGFuY2VvZiBCbG9iKSB7XHJcbiAgICAgIG9iamVjdCQgPSB0aGlzLmNvbXByZXNzaW9uLmNvbXByZXNzQmxvYihvYmplY3QpO1xyXG4gICAgICBjb21wcmVzcyA9IHRydWU7XHJcbiAgICB9XHJcbiAgICBsZXQgZ2VvREJEYXRhOiBHZW9EQkRhdGE7XHJcbiAgICBvYmplY3QkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpcnN0KCksXHJcbiAgICAgICAgY29uY2F0TWFwKChvYmplY3QpID0+IHtcclxuICAgICAgICAgIGdlb0RCRGF0YSA9IHtcclxuICAgICAgICAgICAgdXJsLFxyXG4gICAgICAgICAgICByZWdpb25JRCxcclxuICAgICAgICAgICAgb2JqZWN0OiBvYmplY3QsXHJcbiAgICAgICAgICAgIGNvbXByZXNzZWQ6IGNvbXByZXNzLFxyXG4gICAgICAgICAgICBpbnNlcnRTb3VyY2UsXHJcbiAgICAgICAgICAgIGluc2VydEV2ZW50XHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5nZXRCeUlEKHRoaXMuZGJOYW1lLCB1cmwpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGNvbmNhdE1hcCgoZGJPYmplY3Q6IEdlb0RCRGF0YSkgPT4ge1xyXG4gICAgICAgICAgaWYgKCFkYk9iamVjdCkge1xyXG4gICAgICAgICAgICB0aGlzLl9uZXdEYXRhKys7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuYWRkKHRoaXMuZGJOYW1lLCBnZW9EQkRhdGEpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgY3VycmVudFJlZ2lvbklEID0gZGJPYmplY3QucmVnaW9uSUQ7XHJcbiAgICAgICAgICAgIGlmIChjdXJyZW50UmVnaW9uSUQgIT09IHJlZ2lvbklEKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgY29sbGlzaW9ucyA9IHRoaXMuY29sbGlzaW9uc01hcC5nZXQoY3VycmVudFJlZ2lvbklEKTtcclxuICAgICAgICAgICAgICBpZiAoY29sbGlzaW9ucyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgICAgICBjb2xsaXNpb25zLnB1c2goZGJPYmplY3QudXJsKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29sbGlzaW9uc01hcC5zZXQoY3VycmVudFJlZ2lvbklELCBjb2xsaXNpb25zKTtcclxuICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb2xsaXNpb25zTWFwLnNldChjdXJyZW50UmVnaW9uSUQsIFtkYk9iamVjdC51cmxdKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3VzdG9tVXBkYXRlKGdlb0RCRGF0YSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHN1YmplY3QubmV4dChyZXNwb25zZSk7XHJcbiAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICAgIHJldHVybiBzdWJqZWN0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjdXN0b21VcGRhdGUoZ2VvREJEYXRhOiBHZW9EQkRhdGEpOiBPYnNlcnZhYmxlPEdlb0RCRGF0YT4ge1xyXG4gICAgY29uc3Qgc3ViamVjdDogU3ViamVjdDxHZW9EQkRhdGE+ID0gbmV3IFN1YmplY3QoKTtcclxuICAgIGNvbnN0IGRlbGV0ZVJlcXVlc3QgPSB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuZGVsZXRlQnlLZXkoXHJcbiAgICAgIHRoaXMuZGJOYW1lLFxyXG4gICAgICBnZW9EQkRhdGEudXJsXHJcbiAgICApO1xyXG4gICAgZGVsZXRlUmVxdWVzdFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBjb25jYXRNYXAoKGlzRGVsZXRlZCkgPT5cclxuICAgICAgICAgIGlzRGVsZXRlZFxyXG4gICAgICAgICAgICA/IHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5hZGQodGhpcy5kYk5hbWUsIGdlb0RCRGF0YSlcclxuICAgICAgICAgICAgOiBvZih1bmRlZmluZWQpXHJcbiAgICAgICAgKVxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKG9iamVjdCkgPT4ge1xyXG4gICAgICAgIGlmIChvYmplY3QpIHtcclxuICAgICAgICAgIHN1YmplY3QubmV4dChvYmplY3QpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgcmV0dXJuIHN1YmplY3Q7XHJcbiAgfVxyXG5cclxuICBnZXQodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5nZXRCeUlEKHRoaXMuZGJOYW1lLCB1cmwpLnBpcGUoXHJcbiAgICAgIG1hcCgoZGF0YTogR2VvREJEYXRhKSA9PiB7XHJcbiAgICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICAgIGNvbnN0IG9iamVjdCA9IGRhdGEub2JqZWN0O1xyXG4gICAgICAgICAgaWYgKCFkYXRhLmNvbXByZXNzZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG9iamVjdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiB0aGlzLmNvbXByZXNzaW9uLmRlY29tcHJlc3NCbG9iKG9iamVjdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldEJ5SUQodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5nZXRCeUlEKHRoaXMuZGJOYW1lLCB1cmwpO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlQnlLZXkodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5kZWxldGVCeUtleSh0aGlzLmRiTmFtZSwgdXJsKTtcclxuICB9XHJcblxyXG4gIGdldFJlZ2lvbkNvdW50QnlJRChpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcclxuICAgIGNvbnN0IHN1YmplY3Q6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICBjb25zdCBkYlJlcXVlc3QgPSB0aGlzLmdldFJlZ2lvbkJ5SUQoaWQpLnN1YnNjcmliZSgoZGF0YXMpID0+IHtcclxuICAgICAgc3ViamVjdC5uZXh0KGRhdGFzLmxlbmd0aCk7XHJcbiAgICAgIHN1YmplY3QuY29tcGxldGUoKTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHN1YmplY3Q7XHJcbiAgfVxyXG5cclxuICBnZXRSZWdpb25CeUlEKGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueVtdPiB7XHJcbiAgICBpZiAoIWlkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBJREJLZXk6IElEQktleVJhbmdlID0gSURCS2V5UmFuZ2Uub25seShpZCk7XHJcbiAgICBjb25zdCBkYlJlcXVlc3QgPSB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuZ2V0QWxsQnlJbmRleChcclxuICAgICAgdGhpcy5kYk5hbWUsXHJcbiAgICAgICdyZWdpb25JRCcsXHJcbiAgICAgIElEQktleVxyXG4gICAgKTtcclxuICAgIHJldHVybiBkYlJlcXVlc3Q7XHJcbiAgfVxyXG5cclxuICBkZWxldGVCeVJlZ2lvbklEKGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgaWYgKCFpZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgSURCS2V5OiBJREJLZXlSYW5nZSA9IElEQktleVJhbmdlLm9ubHkoaWQpO1xyXG4gICAgY29uc3QgZGJSZXF1ZXN0ID0gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmdldEFsbEJ5SW5kZXgoXHJcbiAgICAgIHRoaXMuZGJOYW1lLFxyXG4gICAgICAncmVnaW9uSUQnLFxyXG4gICAgICBJREJLZXlcclxuICAgICk7XHJcbiAgICBkYlJlcXVlc3Quc3Vic2NyaWJlKChkYXRhczogR2VvREJEYXRhW10pID0+IHtcclxuICAgICAgZGF0YXMuZm9yRWFjaCgoZGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5kZWxldGVCeUtleSh0aGlzLmRiTmFtZSwgZGF0YS51cmwpO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGRiUmVxdWVzdDtcclxuICB9XHJcblxyXG4gIG9wZW5DdXJzb3IoXHJcbiAgICBrZXlSYW5nZTogSURCS2V5UmFuZ2UgPSBJREJLZXlSYW5nZS5sb3dlckJvdW5kKDApLFxyXG4gICAgbW9kZTogREJNb2RlID0gREJNb2RlLnJlYWRvbmx5XHJcbiAgKSB7XHJcbiAgICBjb25zdCByZXF1ZXN0ID0gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLm9wZW5DdXJzb3JCeUluZGV4KFxyXG4gICAgICB0aGlzLmRiTmFtZSxcclxuICAgICAgJ3JlZ2lvbklEJyxcclxuICAgICAga2V5UmFuZ2UsXHJcbiAgICAgIG1vZGVcclxuICAgICk7XHJcbiAgICByZXR1cm4gcmVxdWVzdDtcclxuICB9XHJcblxyXG4gIHJlc2V0Q291bnRlcnMoKSB7XHJcbiAgICB0aGlzLnJlc2V0Q29sbGlzaW9uc01hcCgpO1xyXG4gICAgdGhpcy5fbmV3RGF0YSA9IDA7XHJcbiAgfVxyXG5cclxuICByZXNldENvbGxpc2lvbnNNYXAoKSB7XHJcbiAgICB0aGlzLmNvbGxpc2lvbnNNYXAgPSBuZXcgTWFwKCk7XHJcbiAgfVxyXG5cclxuICByZXZlcnRDb2xsaXNpb25zKCkge1xyXG4gICAgZm9yIChjb25zdCBbcmVnaW9uSUQsIGNvbGxpc2lvbnNdIG9mIHRoaXMuY29sbGlzaW9uc01hcCkge1xyXG4gICAgICBmb3IgKGNvbnN0IHVybCBvZiBjb2xsaXNpb25zKSB7XHJcbiAgICAgICAgdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlXHJcbiAgICAgICAgICAuZ2V0QnlLZXkodGhpcy5kYk5hbWUsIHVybClcclxuICAgICAgICAgIC5waXBlKHRha2UoMSkpXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChkYk9iamVjdDogR2VvREJEYXRhKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IHVwZGF0ZWRPYmplY3QgPSBkYk9iamVjdDtcclxuICAgICAgICAgICAgdXBkYXRlZE9iamVjdC5yZWdpb25JRCA9IHJlZ2lvbklEO1xyXG4gICAgICAgICAgICB0aGlzLmN1c3RvbVVwZGF0ZShkYk9iamVjdCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IG5ld0RhdGEoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9uZXdEYXRhO1xyXG4gIH1cclxufVxyXG4iXX0=
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvREIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL29mZmxpbmUvZ2VvREIvZ2VvREIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVoRCxPQUFPLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFjLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBUTdELE1BQU0sT0FBTyxZQUFZO0lBTWI7SUFDQTtJQU5ELE1BQU0sR0FBVyxTQUFTLENBQUM7SUFDN0IsYUFBYSxHQUEwQixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2pELFFBQVEsR0FBVyxDQUFDLENBQUM7SUFFNUIsWUFDVSxtQkFBd0MsRUFDeEMsV0FBK0I7UUFEL0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7SUFDdEMsQ0FBQztJQUVKOzs7Ozs7OztPQVFHO0lBQ0gsTUFBTSxDQUNKLEdBQVcsRUFDWCxRQUFhLEVBQ2IsTUFBVyxFQUNYLFlBQXNDLEVBQ3RDLFdBQW1CO1FBRW5CLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDWCxPQUFPO1NBQ1I7UUFDRCxJQUFJLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFFckIsTUFBTSxPQUFPLEdBQXVCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDbEQsSUFBSSxPQUFPLEdBQW9CLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQyxJQUFJLE1B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QUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxLQUFLLE1BQU0sQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN2RCxLQUFLLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRTtnQkFDNUIsSUFBSSxDQUFDLG1CQUFtQjtxQkFDckIsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDO3FCQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUNiLFNBQVMsQ0FBQyxDQUFDLFFBQW1CLEVBQUUsRUFBRTtvQkFDakMsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDO29CQUMvQixhQUFhLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztvQkFDbEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDOUIsQ0FBQyxDQUFDLENBQUM7YUFDTjtTQUNGO0lBQ0gsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO3dHQTVNVSxZQUFZOzRHQUFaLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29tcHJlc3Npb25TZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5cbmltcG9ydCB7IERCTW9kZSwgTmd4SW5kZXhlZERCU2VydmljZSB9IGZyb20gJ25neC1pbmRleGVkLWRiJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb25jYXRNYXAsIGZpcnN0LCBtYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEluc2VydFNvdXJjZUluc2VydERCRW51bSB9IGZyb20gJy4vZ2VvREIuZW51bXMnO1xuaW1wb3J0IHsgR2VvREJEYXRhIH0gZnJvbSAnLi9nZW9EQi5pbnRlcmZhY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBHZW9EQlNlcnZpY2Uge1xuICByZWFkb25seSBkYk5hbWU6IHN0cmluZyA9ICdnZW9EYXRhJztcbiAgcHVibGljIGNvbGxpc2lvbnNNYXA6IE1hcDxudW1iZXIsIHN0cmluZ1tdPiA9IG5ldyBNYXAoKTtcbiAgcHVibGljIF9uZXdEYXRhOiBudW1iZXIgPSAwO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbmd4SW5kZXhlZERCU2VydmljZTogTmd4SW5kZXhlZERCU2VydmljZSxcbiAgICBwcml2YXRlIGNvbXByZXNzaW9uOiBDb21wcmVzc2lvblNlcnZpY2VcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBPbmx5IGJsb2IgY2FuIGJlIGNvbXByZXNzZWRcbiAgICogQHBhcmFtIHVybFxuICAgKiBAcGFyYW0gcmVnaW9uSURcbiAgICogQHBhcmFtIG9iamVjdCBvYmplY3QgdG8gaGFuZGxlXG4gICAqIEBwYXJhbSBpbnNlcnRTb3VyY2UgdHlwZSBvZiBldmVudCB1c2VyIG9yIHN5c3RlbVxuICAgKiBAcGFyYW0gaW5zZXJ0RXZlbnQgTmFtZSBvZiB0aGUgZXZlbnQgd2hlcmUgdGhlIGluc2VydCBoYXMgYmVlbiB0cmlnZ2VyZWRcbiAgICogQHJldHVybnNcbiAgICovXG4gIHVwZGF0ZShcbiAgICB1cmw6IHN0cmluZyxcbiAgICByZWdpb25JRDogYW55LFxuICAgIG9iamVjdDogYW55LFxuICAgIGluc2VydFNvdXJjZTogSW5zZXJ0U291cmNlSW5zZXJ0REJFbnVtLFxuICAgIGluc2VydEV2ZW50OiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAoIW9iamVjdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgY29tcHJlc3MgPSBmYWxzZTtcblxuICAgIGNvbnN0IHN1YmplY3Q6IFN1YmplY3Q8R2VvREJEYXRhPiA9IG5ldyBTdWJqZWN0KCk7XG4gICAgbGV0IG9iamVjdCQ6IE9ic2VydmFibGU8YW55PiA9IG9mKG9iamVjdCk7XG4gICAgaWYgKG9iamVjdCBpbnN0YW5jZW9mIEJsb2IpIHtcbiAgICAgIG9iamVjdCQgPSB0aGlzLmNvbXByZXNzaW9uLmNvbXByZXNzQmxvYihvYmplY3QpO1xuICAgICAgY29tcHJlc3MgPSB0cnVlO1xuICAgIH1cbiAgICBsZXQgZ2VvREJEYXRhOiBHZW9EQkRhdGE7XG4gICAgb2JqZWN0JFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpcnN0KCksXG4gICAgICAgIGNvbmNhdE1hcCgob2JqZWN0KSA9PiB7XG4gICAgICAgICAgZ2VvREJEYXRhID0ge1xuICAgICAgICAgICAgdXJsLFxuICAgICAgICAgICAgcmVnaW9uSUQsXG4gICAgICAgICAgICBvYmplY3Q6IG9iamVjdCxcbiAgICAgICAgICAgIGNvbXByZXNzZWQ6IGNvbXByZXNzLFxuICAgICAgICAgICAgaW5zZXJ0U291cmNlLFxuICAgICAgICAgICAgaW5zZXJ0RXZlbnRcbiAgICAgICAgICB9O1xuICAgICAgICAgIHJldHVybiB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuZ2V0QnlJRCh0aGlzLmRiTmFtZSwgdXJsKTtcbiAgICAgICAgfSksXG4gICAgICAgIGNvbmNhdE1hcCgoZGJPYmplY3Q6IEdlb0RCRGF0YSkgPT4ge1xuICAgICAgICAgIGlmICghZGJPYmplY3QpIHtcbiAgICAgICAgICAgIHRoaXMuX25ld0RhdGErKztcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuYWRkKHRoaXMuZGJOYW1lLCBnZW9EQkRhdGEpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50UmVnaW9uSUQgPSBkYk9iamVjdC5yZWdpb25JRDtcbiAgICAgICAgICAgIGlmIChjdXJyZW50UmVnaW9uSUQgIT09IHJlZ2lvbklEKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvbGxpc2lvbnMgPSB0aGlzLmNvbGxpc2lvbnNNYXAuZ2V0KGN1cnJlbnRSZWdpb25JRCk7XG4gICAgICAgICAgICAgIGlmIChjb2xsaXNpb25zICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBjb2xsaXNpb25zLnB1c2goZGJPYmplY3QudXJsKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbGxpc2lvbnNNYXAuc2V0KGN1cnJlbnRSZWdpb25JRCwgY29sbGlzaW9ucyk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb2xsaXNpb25zTWFwLnNldChjdXJyZW50UmVnaW9uSUQsIFtkYk9iamVjdC51cmxdKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3VzdG9tVXBkYXRlKGdlb0RCRGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgc3ViamVjdC5uZXh0KHJlc3BvbnNlKTtcbiAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIHN1YmplY3Q7XG4gIH1cblxuICBwcml2YXRlIGN1c3RvbVVwZGF0ZShnZW9EQkRhdGE6IEdlb0RCRGF0YSk6IE9ic2VydmFibGU8R2VvREJEYXRhPiB7XG4gICAgY29uc3Qgc3ViamVjdDogU3ViamVjdDxHZW9EQkRhdGE+ID0gbmV3IFN1YmplY3QoKTtcbiAgICBjb25zdCBkZWxldGVSZXF1ZXN0ID0gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmRlbGV0ZUJ5S2V5KFxuICAgICAgdGhpcy5kYk5hbWUsXG4gICAgICBnZW9EQkRhdGEudXJsXG4gICAgKTtcbiAgICBkZWxldGVSZXF1ZXN0XG4gICAgICAucGlwZShcbiAgICAgICAgY29uY2F0TWFwKChpc0RlbGV0ZWQpID0+XG4gICAgICAgICAgaXNEZWxldGVkXG4gICAgICAgICAgICA/IHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5hZGQodGhpcy5kYk5hbWUsIGdlb0RCRGF0YSlcbiAgICAgICAgICAgIDogb2YodW5kZWZpbmVkKVxuICAgICAgICApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChvYmplY3QpID0+IHtcbiAgICAgICAgaWYgKG9iamVjdCkge1xuICAgICAgICAgIHN1YmplY3QubmV4dChvYmplY3QpO1xuICAgICAgICB9XG4gICAgICAgIHN1YmplY3QuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBzdWJqZWN0O1xuICB9XG5cbiAgZ2V0KHVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmdldEJ5SUQodGhpcy5kYk5hbWUsIHVybCkucGlwZShcbiAgICAgIG1hcCgoZGF0YTogR2VvREJEYXRhKSA9PiB7XG4gICAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgICAgY29uc3Qgb2JqZWN0ID0gZGF0YS5vYmplY3Q7XG4gICAgICAgICAgaWYgKCFkYXRhLmNvbXByZXNzZWQpIHtcbiAgICAgICAgICAgIHJldHVybiBvYmplY3Q7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0aGlzLmNvbXByZXNzaW9uLmRlY29tcHJlc3NCbG9iKG9iamVjdCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEJ5SUQodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuZ2V0QnlJRCh0aGlzLmRiTmFtZSwgdXJsKTtcbiAgfVxuXG4gIGRlbGV0ZUJ5S2V5KHVybDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmRlbGV0ZUJ5S2V5KHRoaXMuZGJOYW1lLCB1cmwpO1xuICB9XG5cbiAgZ2V0UmVnaW9uQ291bnRCeUlEKGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIGNvbnN0IHN1YmplY3Q6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0KCk7XG4gICAgY29uc3QgZGJSZXF1ZXN0ID0gdGhpcy5nZXRSZWdpb25CeUlEKGlkKS5zdWJzY3JpYmUoKGRhdGFzKSA9PiB7XG4gICAgICBzdWJqZWN0Lm5leHQoZGF0YXMubGVuZ3RoKTtcbiAgICAgIHN1YmplY3QuY29tcGxldGUoKTtcbiAgICB9KTtcbiAgICByZXR1cm4gc3ViamVjdDtcbiAgfVxuXG4gIGdldFJlZ2lvbkJ5SUQoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8YW55W10+IHtcbiAgICBpZiAoIWlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgSURCS2V5OiBJREJLZXlSYW5nZSA9IElEQktleVJhbmdlLm9ubHkoaWQpO1xuICAgIGNvbnN0IGRiUmVxdWVzdCA9IHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5nZXRBbGxCeUluZGV4KFxuICAgICAgdGhpcy5kYk5hbWUsXG4gICAgICAncmVnaW9uSUQnLFxuICAgICAgSURCS2V5XG4gICAgKTtcbiAgICByZXR1cm4gZGJSZXF1ZXN0O1xuICB9XG5cbiAgZGVsZXRlQnlSZWdpb25JRChpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBpZiAoIWlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgSURCS2V5OiBJREJLZXlSYW5nZSA9IElEQktleVJhbmdlLm9ubHkoaWQpO1xuICAgIGNvbnN0IGRiUmVxdWVzdCA9IHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5nZXRBbGxCeUluZGV4KFxuICAgICAgdGhpcy5kYk5hbWUsXG4gICAgICAncmVnaW9uSUQnLFxuICAgICAgSURCS2V5XG4gICAgKTtcbiAgICBkYlJlcXVlc3Quc3Vic2NyaWJlKChkYXRhczogR2VvREJEYXRhW10pID0+IHtcbiAgICAgIGRhdGFzLmZvckVhY2goKGRhdGEpID0+IHtcbiAgICAgICAgdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmRlbGV0ZUJ5S2V5KHRoaXMuZGJOYW1lLCBkYXRhLnVybCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgICByZXR1cm4gZGJSZXF1ZXN0O1xuICB9XG5cbiAgb3BlbkN1cnNvcihcbiAgICBrZXlSYW5nZTogSURCS2V5UmFuZ2UgPSBJREJLZXlSYW5nZS5sb3dlckJvdW5kKDApLFxuICAgIG1vZGU6IERCTW9kZSA9IERCTW9kZS5yZWFkb25seVxuICApIHtcbiAgICBjb25zdCByZXF1ZXN0ID0gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLm9wZW5DdXJzb3JCeUluZGV4KFxuICAgICAgdGhpcy5kYk5hbWUsXG4gICAgICAncmVnaW9uSUQnLFxuICAgICAga2V5UmFuZ2UsXG4gICAgICBtb2RlXG4gICAgKTtcbiAgICByZXR1cm4gcmVxdWVzdDtcbiAgfVxuXG4gIHJlc2V0Q291bnRlcnMoKSB7XG4gICAgdGhpcy5yZXNldENvbGxpc2lvbnNNYXAoKTtcbiAgICB0aGlzLl9uZXdEYXRhID0gMDtcbiAgfVxuXG4gIHJlc2V0Q29sbGlzaW9uc01hcCgpIHtcbiAgICB0aGlzLmNvbGxpc2lvbnNNYXAgPSBuZXcgTWFwKCk7XG4gIH1cblxuICByZXZlcnRDb2xsaXNpb25zKCkge1xuICAgIGZvciAoY29uc3QgW3JlZ2lvbklELCBjb2xsaXNpb25zXSBvZiB0aGlzLmNvbGxpc2lvbnNNYXApIHtcbiAgICAgIGZvciAoY29uc3QgdXJsIG9mIGNvbGxpc2lvbnMpIHtcbiAgICAgICAgdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlXG4gICAgICAgICAgLmdldEJ5S2V5KHRoaXMuZGJOYW1lLCB1cmwpXG4gICAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKChkYk9iamVjdDogR2VvREJEYXRhKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB1cGRhdGVkT2JqZWN0ID0gZGJPYmplY3Q7XG4gICAgICAgICAgICB1cGRhdGVkT2JqZWN0LnJlZ2lvbklEID0gcmVnaW9uSUQ7XG4gICAgICAgICAgICB0aGlzLmN1c3RvbVVwZGF0ZShkYk9iamVjdCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0IG5ld0RhdGEoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fbmV3RGF0YTtcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
1
  export * from './layerDB.interface';
2
2
  export * from './layerDB.service';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9vZmZsaW5lL2xheWVyREIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXllckRCLmludGVyZmFjZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXJEQi5zZXJ2aWNlJztcclxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9vZmZsaW5lL2xheWVyREIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9sYXllckRCLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2xheWVyREIuc2VydmljZSc7XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJEQi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9vZmZsaW5lL2xheWVyREIvbGF5ZXJEQi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJEQkRhdGEge1xyXG4gIGxheWVySWQ6IHN0cmluZztcclxuICBsYXllck9wdGlvbnM6IGFueTtcclxuICBzb3VyY2VPcHRpb25zOiBhbnk7XHJcbiAgaW5zZXJ0RXZlbnQ6IHN0cmluZztcclxuICBkZXRhaWxlZENvbnRleHRVcmk6IHN0cmluZztcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJEQi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9vZmZsaW5lL2xheWVyREIvbGF5ZXJEQi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJEQkRhdGEge1xuICBsYXllcklkOiBzdHJpbmc7XG4gIGxheWVyT3B0aW9uczogYW55O1xuICBzb3VyY2VPcHRpb25zOiBhbnk7XG4gIGluc2VydEV2ZW50OiBzdHJpbmc7XG4gIGRldGFpbGVkQ29udGV4dFVyaTogc3RyaW5nO1xufVxuIl19
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
81
81
  providedIn: 'root'
82
82
  }]
83
83
  }], ctorParameters: function () { return [{ type: i1.NgxIndexedDBService }]; } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJEQi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvb2ZmbGluZS9sYXllckRCL2xheWVyREIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBYyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU9sRCxNQUFNLE9BQU8sY0FBYztJQUdMO0lBRlgsTUFBTSxHQUFXLFdBQVcsQ0FBQztJQUV0QyxZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUFHLENBQUM7SUFFaEU7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxXQUF3QjtRQUM3QixNQUFNLE9BQU8sR0FBeUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNwRCxJQUFJLENBQUMsbUJBQW1CO2FBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUM7YUFDekMsSUFBSSxDQUNILEtBQUssRUFBRSxFQUNQLFNBQVMsQ0FBQyxDQUFDLFFBQXFCLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNiLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQy9EO2lCQUFNO2dCQUNMLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2QixPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7UUFDTCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sWUFBWSxDQUFDLFdBQXdCO1FBQzNDLE1BQU0sT0FBTyxHQUF5QixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3BELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQ3hELElBQUksQ0FBQyxNQUFNLEVBQ1gsV0FBVyxDQUFDLE9BQU8sQ0FDcEIsQ0FBQztRQUNGLGFBQWE7YUFDVixJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FDdEIsU0FBUztZQUNQLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDO1lBQ3hELENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQ2xCLENBQ0Y7YUFDQSxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNwQixJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RCO1lBQ0QsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsT0FBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxPQUFlO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEQsQ0FBQzt3R0EvRVUsY0FBYzs0R0FBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBOZ3hJbmRleGVkREJTZXJ2aWNlIH0gZnJvbSAnbmd4LWluZGV4ZWQtZGInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjb25jYXRNYXAsIGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgTGF5ZXJEQkRhdGEgfSBmcm9tICcuL2xheWVyREIuaW50ZXJmYWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIExheWVyREJTZXJ2aWNlIHtcclxuICByZWFkb25seSBkYk5hbWU6IHN0cmluZyA9ICdsYXllckRhdGEnO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG5neEluZGV4ZWREQlNlcnZpY2U6IE5neEluZGV4ZWREQlNlcnZpY2UpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoaXMgbWV0aG9kIGFsbG93IHRvIHVwZGF0ZSB0aGUgc3RvcmVkIGxheWVyIGludG8gdGhlIGluZGV4ZWRkYiAobGF5ZXJEYXRhKVxyXG4gICAqIEBwYXJhbSBsYXllckRCRGF0YVxyXG4gICAqIEByZXR1cm5zXHJcbiAgICovXHJcbiAgdXBkYXRlKGxheWVyREJEYXRhOiBMYXllckRCRGF0YSk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBzdWJqZWN0OiBTdWJqZWN0PExheWVyREJEYXRhPiA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2VcclxuICAgICAgLmdldEJ5SUQodGhpcy5kYk5hbWUsIGxheWVyREJEYXRhLmxheWVySWQpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpcnN0KCksXHJcbiAgICAgICAgY29uY2F0TWFwKChkYk9iamVjdDogTGF5ZXJEQkRhdGEpID0+IHtcclxuICAgICAgICAgIGlmICghZGJPYmplY3QpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5hZGQodGhpcy5kYk5hbWUsIGxheWVyREJEYXRhKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmN1c3RvbVVwZGF0ZShsYXllckRCRGF0YSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHN1YmplY3QubmV4dChyZXNwb25zZSk7XHJcbiAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICAgIHJldHVybiBzdWJqZWN0O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjdXN0b21VcGRhdGUobGF5ZXJEQkRhdGE6IExheWVyREJEYXRhKTogT2JzZXJ2YWJsZTxMYXllckRCRGF0YT4ge1xyXG4gICAgY29uc3Qgc3ViamVjdDogU3ViamVjdDxMYXllckRCRGF0YT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gICAgY29uc3QgZGVsZXRlUmVxdWVzdCA9IHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5kZWxldGVCeUtleShcclxuICAgICAgdGhpcy5kYk5hbWUsXHJcbiAgICAgIGxheWVyREJEYXRhLmxheWVySWRcclxuICAgICk7XHJcbiAgICBkZWxldGVSZXF1ZXN0XHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGNvbmNhdE1hcCgoaXNEZWxldGVkKSA9PlxyXG4gICAgICAgICAgaXNEZWxldGVkXHJcbiAgICAgICAgICAgID8gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmFkZCh0aGlzLmRiTmFtZSwgbGF5ZXJEQkRhdGEpXHJcbiAgICAgICAgICAgIDogb2YodW5kZWZpbmVkKVxyXG4gICAgICAgIClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChvYmplY3QpID0+IHtcclxuICAgICAgICBpZiAob2JqZWN0KSB7XHJcbiAgICAgICAgICBzdWJqZWN0Lm5leHQob2JqZWN0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xyXG4gICAgICB9KTtcclxuICAgIHJldHVybiBzdWJqZWN0O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhpcyBtZXRob2QgcmV0cmlldmUgYW4gaWRiIGxheWVyIGRlZmluaXRpb25cclxuICAgKiBAcGFyYW0gbGF5ZXJJZFxyXG4gICAqIEByZXR1cm5zXHJcbiAgICovXHJcbiAgZ2V0QnlJRChsYXllcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPExheWVyREJEYXRhPiB7XHJcbiAgICByZXR1cm4gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmdldEJ5SUQodGhpcy5kYk5hbWUsIGxheWVySWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVGhpcyBtZXRob2QgZGVsZXRlIGFuIGlkYiBsYXllciBkZWZpbml0aW9uXHJcbiAgICogQHBhcmFtIGxheWVySWRcclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIGRlbGV0ZUJ5S2V5KGxheWVySWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5kZWxldGVCeUtleSh0aGlzLmRiTmFtZSwgbGF5ZXJJZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBUaGlzIG1ldGhvZCByZXRyaXZlIGFsbCBpZGIgbGF5ZXIgZGVmaW5pdGlvblxyXG4gICAqIEBwYXJhbSBsYXllcklkXHJcbiAgICogQHJldHVybnNcclxuICAgKi9cclxuICBnZXRBbGwoKTogT2JzZXJ2YWJsZTxMYXllckRCRGF0YVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmdldEFsbCh0aGlzLmRiTmFtZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXJEQi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvb2ZmbGluZS9sYXllckRCL2xheWVyREIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBYyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU9sRCxNQUFNLE9BQU8sY0FBYztJQUdMO0lBRlgsTUFBTSxHQUFXLFdBQVcsQ0FBQztJQUV0QyxZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtJQUFHLENBQUM7SUFFaEU7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxXQUF3QjtRQUM3QixNQUFNLE9BQU8sR0FBeUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNwRCxJQUFJLENBQUMsbUJBQW1CO2FBQ3JCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxPQUFPLENBQUM7YUFDekMsSUFBSSxDQUNILEtBQUssRUFBRSxFQUNQLFNBQVMsQ0FBQyxDQUFDLFFBQXFCLEVBQUUsRUFBRTtZQUNsQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNiLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO2FBQy9EO2lCQUFNO2dCQUNMLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUN2QztRQUNILENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN2QixPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7UUFDTCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sWUFBWSxDQUFDLFdBQXdCO1FBQzNDLE1BQU0sT0FBTyxHQUF5QixJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ3BELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQ3hELElBQUksQ0FBQyxNQUFNLEVBQ1gsV0FBVyxDQUFDLE9BQU8sQ0FDcEIsQ0FBQztRQUNGLGFBQWE7YUFDVixJQUFJLENBQ0gsU0FBUyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FDdEIsU0FBUztZQUNQLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDO1lBQ3hELENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQ2xCLENBQ0Y7YUFDQSxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNwQixJQUFJLE1BQU0sRUFBRTtnQkFDVixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RCO1lBQ0QsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxPQUFPLENBQUMsT0FBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxPQUFlO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEQsQ0FBQzt3R0EvRVUsY0FBYzs0R0FBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE5neEluZGV4ZWREQlNlcnZpY2UgfSBmcm9tICduZ3gtaW5kZXhlZC1kYic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY29uY2F0TWFwLCBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTGF5ZXJEQkRhdGEgfSBmcm9tICcuL2xheWVyREIuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTGF5ZXJEQlNlcnZpY2Uge1xuICByZWFkb25seSBkYk5hbWU6IHN0cmluZyA9ICdsYXllckRhdGEnO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbmd4SW5kZXhlZERCU2VydmljZTogTmd4SW5kZXhlZERCU2VydmljZSkge31cblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgYWxsb3cgdG8gdXBkYXRlIHRoZSBzdG9yZWQgbGF5ZXIgaW50byB0aGUgaW5kZXhlZGRiIChsYXllckRhdGEpXG4gICAqIEBwYXJhbSBsYXllckRCRGF0YVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgdXBkYXRlKGxheWVyREJEYXRhOiBMYXllckRCRGF0YSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3Qgc3ViamVjdDogU3ViamVjdDxMYXllckRCRGF0YT4gPSBuZXcgU3ViamVjdCgpO1xuICAgIHRoaXMubmd4SW5kZXhlZERCU2VydmljZVxuICAgICAgLmdldEJ5SUQodGhpcy5kYk5hbWUsIGxheWVyREJEYXRhLmxheWVySWQpXG4gICAgICAucGlwZShcbiAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgY29uY2F0TWFwKChkYk9iamVjdDogTGF5ZXJEQkRhdGEpID0+IHtcbiAgICAgICAgICBpZiAoIWRiT2JqZWN0KSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmFkZCh0aGlzLmRiTmFtZSwgbGF5ZXJEQkRhdGEpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jdXN0b21VcGRhdGUobGF5ZXJEQkRhdGEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHN1YmplY3QubmV4dChyZXNwb25zZSk7XG4gICAgICAgIHN1YmplY3QuY29tcGxldGUoKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBzdWJqZWN0O1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21VcGRhdGUobGF5ZXJEQkRhdGE6IExheWVyREJEYXRhKTogT2JzZXJ2YWJsZTxMYXllckRCRGF0YT4ge1xuICAgIGNvbnN0IHN1YmplY3Q6IFN1YmplY3Q8TGF5ZXJEQkRhdGE+ID0gbmV3IFN1YmplY3QoKTtcbiAgICBjb25zdCBkZWxldGVSZXF1ZXN0ID0gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmRlbGV0ZUJ5S2V5KFxuICAgICAgdGhpcy5kYk5hbWUsXG4gICAgICBsYXllckRCRGF0YS5sYXllcklkXG4gICAgKTtcbiAgICBkZWxldGVSZXF1ZXN0XG4gICAgICAucGlwZShcbiAgICAgICAgY29uY2F0TWFwKChpc0RlbGV0ZWQpID0+XG4gICAgICAgICAgaXNEZWxldGVkXG4gICAgICAgICAgICA/IHRoaXMubmd4SW5kZXhlZERCU2VydmljZS5hZGQodGhpcy5kYk5hbWUsIGxheWVyREJEYXRhKVxuICAgICAgICAgICAgOiBvZih1bmRlZmluZWQpXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKG9iamVjdCkgPT4ge1xuICAgICAgICBpZiAob2JqZWN0KSB7XG4gICAgICAgICAgc3ViamVjdC5uZXh0KG9iamVjdCk7XG4gICAgICAgIH1cbiAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIHN1YmplY3Q7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgcmV0cmlldmUgYW4gaWRiIGxheWVyIGRlZmluaXRpb25cbiAgICogQHBhcmFtIGxheWVySWRcbiAgICogQHJldHVybnNcbiAgICovXG4gIGdldEJ5SUQobGF5ZXJJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxMYXllckRCRGF0YT4ge1xuICAgIHJldHVybiB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuZ2V0QnlJRCh0aGlzLmRiTmFtZSwgbGF5ZXJJZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBtZXRob2QgZGVsZXRlIGFuIGlkYiBsYXllciBkZWZpbml0aW9uXG4gICAqIEBwYXJhbSBsYXllcklkXG4gICAqIEByZXR1cm5zXG4gICAqL1xuICBkZWxldGVCeUtleShsYXllcklkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5uZ3hJbmRleGVkREJTZXJ2aWNlLmRlbGV0ZUJ5S2V5KHRoaXMuZGJOYW1lLCBsYXllcklkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIG1ldGhvZCByZXRyaXZlIGFsbCBpZGIgbGF5ZXIgZGVmaW5pdGlvblxuICAgKiBAcGFyYW0gbGF5ZXJJZFxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgZ2V0QWxsKCk6IE9ic2VydmFibGU8TGF5ZXJEQkRhdGFbXT4ge1xuICAgIHJldHVybiB0aGlzLm5neEluZGV4ZWREQlNlcnZpY2UuZ2V0QWxsKHRoaXMuZGJOYW1lKTtcbiAgfVxufVxuIl19
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
77
77
  providedIn: 'root'
78
78
  }]
79
79
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.GeoDBService }, { type: i3.NetworkService }]; } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW5ldHdvcmsuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL29mZmxpbmUvc2hhcmVkL2dlby1uZXR3b3JrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFtQixjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFNN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQUV0RCxNQUFNLENBQU4sSUFBWSxZQUtYO0FBTEQsV0FBWSxZQUFZO0lBQ3RCLDJDQUEyQixDQUFBO0lBQzNCLDZCQUFhLENBQUE7SUFDYiw2QkFBYSxDQUFBO0lBQ2IsNkJBQWEsQ0FBQTtBQUNmLENBQUMsRUFMVyxZQUFZLEtBQVosWUFBWSxRQUt2QjtBQVFELE1BQU0sT0FBTyxpQkFBaUI7SUFHbEI7SUFDRDtJQUNDO0lBSkYsYUFBYSxHQUFZLElBQUksQ0FBQztJQUN0QyxZQUNVLElBQWdCLEVBQ2pCLFlBQTBCLEVBQ3pCLGNBQThCO1FBRjlCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDakIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDekIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRXRDLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxHQUFHLENBQUMsR0FBVyxFQUFFLGdCQUFrQztRQUNqRCxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDakQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQzlDO1FBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTyxTQUFTLENBQ2YsR0FBVyxFQUNYLGdCQUFrQztRQUVsQyxJQUFJLE9BQU8sQ0FBQztRQUNaLFFBQVEsZ0JBQWdCLENBQUMsWUFBWSxFQUFFO1lBQ3JDLEtBQUssYUFBYTtnQkFDaEIsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDM0IsWUFBWSxFQUFFLGFBQWE7b0JBQzNCLGVBQWUsRUFBRSxnQkFBZ0IsQ0FBQyxlQUFlO2lCQUNsRCxDQUFDLENBQUM7Z0JBQ0gsTUFBTTtZQUNSLEtBQUssTUFBTTtnQkFDVCxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUMzQixZQUFZLEVBQUUsTUFBTTtvQkFDcEIsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGVBQWU7aUJBQ2xELENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7b0JBQzNCLFlBQVksRUFBRSxNQUFNO29CQUNwQixlQUFlLEVBQUUsZ0JBQWdCLENBQUMsZUFBZTtpQkFDbEQsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUjtnQkFDRSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUMzQixZQUFZLEVBQUUsTUFBTTtvQkFDcEIsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGVBQWU7aUJBQ2xELENBQUMsQ0FBQztnQkFDSCxNQUFNO1NBQ1Q7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sVUFBVSxDQUFDLEdBQVc7UUFDNUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLGFBQWEsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUN2RCxDQUFDO3dHQTNEVSxpQkFBaUI7NEdBQWpCLGlCQUFpQixjQUZoQixNQUFNOzs0RkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQ29ubmVjdGlvblN0YXRlLCBOZXR3b3JrU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ29sL2Zvcm1hdC9GZWF0dXJlJztcclxuXHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEdlb0RCU2VydmljZSB9IGZyb20gJy4uL2dlb0RCL2dlb0RCLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGVudW0gUmVzcG9uc2VUeXBlIHtcclxuICBBcnJheWJ1ZmZlciA9ICdhcnJheWJ1ZmZlcicsXHJcbiAgQmxvYiA9ICdibG9iJyxcclxuICBUZXh0ID0gJ3RleHQnLFxyXG4gIEpzb24gPSAnanNvbidcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFNpbXBsZUdldE9wdGlvbnMge1xyXG4gIHJlc3BvbnNlVHlwZTogVHlwZTtcclxuICB3aXRoQ3JlZGVudGlhbHM/OiBib29sZWFuO1xyXG59XHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEdlb05ldHdvcmtTZXJ2aWNlIHtcclxuICBwcml2YXRlIG5ldHdvcmtPbmxpbmU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHVibGljIGdlb0RCU2VydmljZTogR2VvREJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBuZXR3b3JrU2VydmljZTogTmV0d29ya1NlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMubmV0d29ya1NlcnZpY2UuY3VycmVudFN0YXRlKCkuc3Vic2NyaWJlKChzdGF0ZTogQ29ubmVjdGlvblN0YXRlKSA9PiB7XHJcbiAgICAgIHRoaXMubmV0d29ya09ubGluZSA9IHN0YXRlLmNvbm5lY3Rpb247XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldCh1cmw6IHN0cmluZywgc2ltcGxlR2V0T3B0aW9uczogU2ltcGxlR2V0T3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBpZiAod2luZG93Lm5hdmlnYXRvci5vbkxpbmUgJiYgdGhpcy5uZXR3b3JrT25saW5lKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmdldE9ubGluZSh1cmwsIHNpbXBsZUdldE9wdGlvbnMpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuZ2V0T2ZmbGluZSh1cmwpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRPbmxpbmUoXHJcbiAgICB1cmw6IHN0cmluZyxcclxuICAgIHNpbXBsZUdldE9wdGlvbnM6IFNpbXBsZUdldE9wdGlvbnNcclxuICApOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IHJlcXVlc3Q7XHJcbiAgICBzd2l0Y2ggKHNpbXBsZUdldE9wdGlvbnMucmVzcG9uc2VUeXBlKSB7XHJcbiAgICAgIGNhc2UgJ2FycmF5YnVmZmVyJzpcclxuICAgICAgICByZXF1ZXN0ID0gdGhpcy5odHRwLmdldCh1cmwsIHtcclxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJyxcclxuICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogc2ltcGxlR2V0T3B0aW9ucy53aXRoQ3JlZGVudGlhbHNcclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAndGV4dCc6XHJcbiAgICAgICAgcmVxdWVzdCA9IHRoaXMuaHR0cC5nZXQodXJsLCB7XHJcbiAgICAgICAgICByZXNwb25zZVR5cGU6ICd0ZXh0JyxcclxuICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogc2ltcGxlR2V0T3B0aW9ucy53aXRoQ3JlZGVudGlhbHNcclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAnanNvbic6XHJcbiAgICAgICAgcmVxdWVzdCA9IHRoaXMuaHR0cC5nZXQodXJsLCB7XHJcbiAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcclxuICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogc2ltcGxlR2V0T3B0aW9ucy53aXRoQ3JlZGVudGlhbHNcclxuICAgICAgICB9KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXF1ZXN0ID0gdGhpcy5odHRwLmdldCh1cmwsIHtcclxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxyXG4gICAgICAgICAgd2l0aENyZWRlbnRpYWxzOiBzaW1wbGVHZXRPcHRpb25zLndpdGhDcmVkZW50aWFsc1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlcXVlc3Q7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE9mZmxpbmUodXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2VvREJTZXJ2aWNlLmdldCh1cmwpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzT25saW5lKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV0d29ya09ubGluZSAmJiB3aW5kb3cubmF2aWdhdG9yLm9uTGluZTtcclxuICB9XHJcbn1cclxuIl19
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW5ldHdvcmsuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL29mZmxpbmUvc2hhcmVkL2dlby1uZXR3b3JrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFtQixjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFNN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7OztBQUV0RCxNQUFNLENBQU4sSUFBWSxZQUtYO0FBTEQsV0FBWSxZQUFZO0lBQ3RCLDJDQUEyQixDQUFBO0lBQzNCLDZCQUFhLENBQUE7SUFDYiw2QkFBYSxDQUFBO0lBQ2IsNkJBQWEsQ0FBQTtBQUNmLENBQUMsRUFMVyxZQUFZLEtBQVosWUFBWSxRQUt2QjtBQVFELE1BQU0sT0FBTyxpQkFBaUI7SUFHbEI7SUFDRDtJQUNDO0lBSkYsYUFBYSxHQUFZLElBQUksQ0FBQztJQUN0QyxZQUNVLElBQWdCLEVBQ2pCLFlBQTBCLEVBQ3pCLGNBQThCO1FBRjlCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDakIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDekIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBRXRDLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBc0IsRUFBRSxFQUFFO1lBQ3RFLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxHQUFHLENBQUMsR0FBVyxFQUFFLGdCQUFrQztRQUNqRCxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDakQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1NBQzlDO1FBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTyxTQUFTLENBQ2YsR0FBVyxFQUNYLGdCQUFrQztRQUVsQyxJQUFJLE9BQU8sQ0FBQztRQUNaLFFBQVEsZ0JBQWdCLENBQUMsWUFBWSxFQUFFO1lBQ3JDLEtBQUssYUFBYTtnQkFDaEIsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDM0IsWUFBWSxFQUFFLGFBQWE7b0JBQzNCLGVBQWUsRUFBRSxnQkFBZ0IsQ0FBQyxlQUFlO2lCQUNsRCxDQUFDLENBQUM7Z0JBQ0gsTUFBTTtZQUNSLEtBQUssTUFBTTtnQkFDVCxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUMzQixZQUFZLEVBQUUsTUFBTTtvQkFDcEIsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGVBQWU7aUJBQ2xELENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7b0JBQzNCLFlBQVksRUFBRSxNQUFNO29CQUNwQixlQUFlLEVBQUUsZ0JBQWdCLENBQUMsZUFBZTtpQkFDbEQsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUjtnQkFDRSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUMzQixZQUFZLEVBQUUsTUFBTTtvQkFDcEIsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGVBQWU7aUJBQ2xELENBQUMsQ0FBQztnQkFDSCxNQUFNO1NBQ1Q7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sVUFBVSxDQUFDLEdBQVc7UUFDNUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLGFBQWEsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztJQUN2RCxDQUFDO3dHQTNEVSxpQkFBaUI7NEdBQWpCLGlCQUFpQixjQUZoQixNQUFNOzs0RkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29ubmVjdGlvblN0YXRlLCBOZXR3b3JrU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xuXG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnb2wvZm9ybWF0L0ZlYXR1cmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEdlb0RCU2VydmljZSB9IGZyb20gJy4uL2dlb0RCL2dlb0RCLnNlcnZpY2UnO1xuXG5leHBvcnQgZW51bSBSZXNwb25zZVR5cGUge1xuICBBcnJheWJ1ZmZlciA9ICdhcnJheWJ1ZmZlcicsXG4gIEJsb2IgPSAnYmxvYicsXG4gIFRleHQgPSAndGV4dCcsXG4gIEpzb24gPSAnanNvbidcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU2ltcGxlR2V0T3B0aW9ucyB7XG4gIHJlc3BvbnNlVHlwZTogVHlwZTtcbiAgd2l0aENyZWRlbnRpYWxzPzogYm9vbGVhbjtcbn1cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEdlb05ldHdvcmtTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBuZXR3b3JrT25saW5lOiBib29sZWFuID0gdHJ1ZTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHB1YmxpYyBnZW9EQlNlcnZpY2U6IEdlb0RCU2VydmljZSxcbiAgICBwcml2YXRlIG5ldHdvcmtTZXJ2aWNlOiBOZXR3b3JrU2VydmljZVxuICApIHtcbiAgICB0aGlzLm5ldHdvcmtTZXJ2aWNlLmN1cnJlbnRTdGF0ZSgpLnN1YnNjcmliZSgoc3RhdGU6IENvbm5lY3Rpb25TdGF0ZSkgPT4ge1xuICAgICAgdGhpcy5uZXR3b3JrT25saW5lID0gc3RhdGUuY29ubmVjdGlvbjtcbiAgICB9KTtcbiAgfVxuXG4gIGdldCh1cmw6IHN0cmluZywgc2ltcGxlR2V0T3B0aW9uczogU2ltcGxlR2V0T3B0aW9ucyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgaWYgKHdpbmRvdy5uYXZpZ2F0b3Iub25MaW5lICYmIHRoaXMubmV0d29ya09ubGluZSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0T25saW5lKHVybCwgc2ltcGxlR2V0T3B0aW9ucyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldE9mZmxpbmUodXJsKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T25saW5lKFxuICAgIHVybDogc3RyaW5nLFxuICAgIHNpbXBsZUdldE9wdGlvbnM6IFNpbXBsZUdldE9wdGlvbnNcbiAgKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgcmVxdWVzdDtcbiAgICBzd2l0Y2ggKHNpbXBsZUdldE9wdGlvbnMucmVzcG9uc2VUeXBlKSB7XG4gICAgICBjYXNlICdhcnJheWJ1ZmZlcic6XG4gICAgICAgIHJlcXVlc3QgPSB0aGlzLmh0dHAuZ2V0KHVybCwge1xuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJyxcbiAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHNpbXBsZUdldE9wdGlvbnMud2l0aENyZWRlbnRpYWxzXG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICByZXF1ZXN0ID0gdGhpcy5odHRwLmdldCh1cmwsIHtcbiAgICAgICAgICByZXNwb25zZVR5cGU6ICd0ZXh0JyxcbiAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHNpbXBsZUdldE9wdGlvbnMud2l0aENyZWRlbnRpYWxzXG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2pzb24nOlxuICAgICAgICByZXF1ZXN0ID0gdGhpcy5odHRwLmdldCh1cmwsIHtcbiAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcbiAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHNpbXBsZUdldE9wdGlvbnMud2l0aENyZWRlbnRpYWxzXG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJlcXVlc3QgPSB0aGlzLmh0dHAuZ2V0KHVybCwge1xuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogc2ltcGxlR2V0T3B0aW9ucy53aXRoQ3JlZGVudGlhbHNcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgICByZXR1cm4gcmVxdWVzdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T2ZmbGluZSh1cmw6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuZ2VvREJTZXJ2aWNlLmdldCh1cmwpO1xuICB9XG5cbiAgcHVibGljIGlzT25saW5lKCkge1xuICAgIHJldHVybiB0aGlzLm5ldHdvcmtPbmxpbmUgJiYgd2luZG93Lm5hdmlnYXRvci5vbkxpbmU7XG4gIH1cbn1cbiJdfQ==
@@ -5,4 +5,4 @@ export var OverlayAction;
5
5
  OverlayAction[OverlayAction["Zoom"] = 2] = "Zoom";
6
6
  OverlayAction[OverlayAction["ZoomIfOutMapExtent"] = 3] = "ZoomIfOutMapExtent";
7
7
  })(OverlayAction || (OverlayAction = {}));
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvb3ZlcmxheS9zaGFyZWQvb3ZlcmxheS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGFBS1g7QUFMRCxXQUFZLGFBQWE7SUFDdkIsaURBQUksQ0FBQTtJQUNKLGlEQUFJLENBQUE7SUFDSixpREFBSSxDQUFBO0lBQ0osNkVBQWtCLENBQUE7QUFDcEIsQ0FBQyxFQUxXLGFBQWEsS0FBYixhQUFhLFFBS3hCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gT3ZlcmxheUFjdGlvbiB7XHJcbiAgTm9uZSxcclxuICBNb3ZlLFxyXG4gIFpvb20sXHJcbiAgWm9vbUlmT3V0TWFwRXh0ZW50XHJcbn1cclxuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvb3ZlcmxheS9zaGFyZWQvb3ZlcmxheS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGFBS1g7QUFMRCxXQUFZLGFBQWE7SUFDdkIsaURBQUksQ0FBQTtJQUNKLGlEQUFJLENBQUE7SUFDSixpREFBSSxDQUFBO0lBQ0osNkVBQWtCLENBQUE7QUFDcEIsQ0FBQyxFQUxXLGFBQWEsS0FBYixhQUFhLFFBS3hCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gT3ZlcmxheUFjdGlvbiB7XG4gIE5vbmUsXG4gIE1vdmUsXG4gIFpvb20sXG4gIFpvb21JZk91dE1hcEV4dGVudFxufVxuIl19