@igo2/geo 16.3.0 → 17.0.0-next.2

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 (576) hide show
  1. package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +30 -14
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +35 -17
  3. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +18 -11
  4. package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +8 -62
  5. package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +49 -20
  6. package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +22 -10
  7. package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +32 -16
  8. package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +8 -71
  9. package/esm2022/lib/catalog/catalog-library/index.mjs +9 -0
  10. package/esm2022/lib/catalog/catalog.module.mjs +9 -37
  11. package/esm2022/lib/catalog/index.mjs +7 -1
  12. package/esm2022/lib/catalog/shared/catalog.service.mjs +16 -9
  13. package/esm2022/lib/catalog/shared/index.mjs +1 -1
  14. package/esm2022/lib/datasource/index.mjs +1 -1
  15. package/esm2022/lib/datasource/shared/capabilities.service.mjs +5 -5
  16. package/esm2022/lib/datasource/shared/datasource.service.mjs +11 -13
  17. package/esm2022/lib/datasource/shared/datasources/any-datasource.mjs +1 -1
  18. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +1 -1
  19. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +1 -1
  20. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +1 -1
  21. package/esm2022/lib/datasource/shared/datasources/data.service.mjs +1 -1
  22. package/esm2022/lib/datasource/shared/datasources/datasource.mjs +1 -1
  23. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +1 -1
  24. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
  25. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +1 -1
  26. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +1 -1
  27. package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +1 -1
  28. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +1 -1
  29. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
  30. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +1 -1
  31. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +1 -1
  32. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
  33. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +1 -1
  34. package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +5 -5
  35. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +1 -1
  36. package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +1 -1
  37. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
  38. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +1 -1
  39. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
  40. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +1 -1
  41. package/esm2022/lib/datasource/shared/index.mjs +1 -1
  42. package/esm2022/lib/datasource/shared/options/options-api.providers.mjs +2 -2
  43. package/esm2022/lib/datasource/shared/options/options-api.service.mjs +6 -6
  44. package/esm2022/lib/datasource/shared/options/options.service.mjs +1 -1
  45. package/esm2022/lib/datasource/utils/tilegrid.mjs +1 -1
  46. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +28 -13
  47. package/esm2022/lib/directions/directions-buttons/index.mjs +1 -1
  48. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +44 -19
  49. package/esm2022/lib/directions/directions-inputs/index.mjs +1 -1
  50. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +36 -16
  51. package/esm2022/lib/directions/directions-results/index.mjs +1 -1
  52. package/esm2022/lib/directions/directions-sources/directions-source.provider.mjs +2 -2
  53. package/esm2022/lib/directions/directions-sources/index.mjs +1 -1
  54. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +7 -7
  55. package/esm2022/lib/directions/directions.component.mjs +20 -12
  56. package/esm2022/lib/directions/directions.module.mjs +17 -70
  57. package/esm2022/lib/directions/index.mjs +1 -1
  58. package/esm2022/lib/directions/shared/directions-source.service.mjs +1 -1
  59. package/esm2022/lib/directions/shared/directions.enum.mjs +1 -1
  60. package/esm2022/lib/directions/shared/directions.service.mjs +13 -9
  61. package/esm2022/lib/directions/shared/directions.utils.mjs +1 -1
  62. package/esm2022/lib/directions/shared/index.mjs +1 -1
  63. package/esm2022/lib/download/download-button/download-button.component.mjs +21 -11
  64. package/esm2022/lib/download/download-button/index.mjs +1 -1
  65. package/esm2022/lib/download/download.module.mjs +10 -27
  66. package/esm2022/lib/download/index.mjs +1 -1
  67. package/esm2022/lib/download/shared/download.interface.mjs +1 -1
  68. package/esm2022/lib/download/shared/download.service.mjs +7 -7
  69. package/esm2022/lib/download/shared/index.mjs +1 -1
  70. package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +21 -10
  71. package/esm2022/lib/draw/draw/draw-popup.component.mjs +41 -18
  72. package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +19 -9
  73. package/esm2022/lib/draw/draw/draw.component.mjs +54 -24
  74. package/esm2022/lib/draw/draw/draw.module.mjs +7 -104
  75. package/esm2022/lib/draw/drawingTool.module.mjs +8 -7
  76. package/esm2022/lib/draw/index.mjs +1 -1
  77. package/esm2022/lib/draw/shared/draw-icon.service.mjs +7 -7
  78. package/esm2022/lib/draw/shared/draw.utils.mjs +1 -1
  79. package/esm2022/lib/draw/shared/index.mjs +1 -1
  80. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +28 -13
  81. package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +8 -7
  82. package/esm2022/lib/feature/feature-details/feature-details.module.mjs +8 -27
  83. package/esm2022/lib/feature/feature-details/index.mjs +9 -0
  84. package/esm2022/lib/feature/feature-form/feature-form.component.mjs +8 -8
  85. package/esm2022/lib/feature/feature-form/feature-form.module.mjs +8 -11
  86. package/esm2022/lib/feature/feature.module.mjs +9 -10
  87. package/esm2022/lib/feature/index.mjs +8 -2
  88. package/esm2022/lib/feature/shared/feature-store.utils.mjs +1 -1
  89. package/esm2022/lib/feature/shared/feature.enums.mjs +1 -1
  90. package/esm2022/lib/feature/shared/feature.utils.mjs +1 -1
  91. package/esm2022/lib/feature/shared/store.mjs +1 -1
  92. package/esm2022/lib/feature/shared/strategies/geo-properties.mjs +1 -1
  93. package/esm2022/lib/feature/shared/strategies/in-map-extent.mjs +1 -1
  94. package/esm2022/lib/feature/shared/strategies/in-map-resolution.mjs +1 -1
  95. package/esm2022/lib/feature/shared/strategies/index.mjs +1 -1
  96. package/esm2022/lib/feature/shared/strategies/loading-layer.mjs +1 -1
  97. package/esm2022/lib/feature/shared/strategies/loading.mjs +1 -1
  98. package/esm2022/lib/feature/shared/strategies/search.mjs +4 -4
  99. package/esm2022/lib/feature/shared/strategies/selection.mjs +1 -1
  100. package/esm2022/lib/feature/shared/strategies.utils.mjs +1 -1
  101. package/esm2022/lib/filter/filter.module.mjs +47 -177
  102. package/esm2022/lib/filter/index.mjs +36 -1
  103. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +29 -15
  104. package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +46 -20
  105. package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +54 -23
  106. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +13 -10
  107. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +45 -18
  108. package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +18 -12
  109. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +42 -18
  110. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +8 -7
  111. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +21 -12
  112. package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +6 -5
  113. package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +5 -5
  114. package/esm2022/lib/filter/shared/ogc-filter.enum.mjs +1 -1
  115. package/esm2022/lib/filter/shared/ogc-filter.mjs +1 -1
  116. package/esm2022/lib/filter/shared/ogc-filter.service.mjs +5 -5
  117. package/esm2022/lib/filter/shared/spatial-filter.enum.mjs +1 -1
  118. package/esm2022/lib/filter/shared/spatial-filter.service.mjs +9 -7
  119. package/esm2022/lib/filter/shared/time-filter.enum.mjs +1 -1
  120. package/esm2022/lib/filter/shared/time-filter.interface.mjs +1 -1
  121. package/esm2022/lib/filter/shared/time-filter.service.mjs +5 -5
  122. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +66 -28
  123. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +34 -17
  124. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +34 -15
  125. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +28 -14
  126. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +47 -20
  127. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +31 -13
  128. package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +8 -7
  129. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +16 -10
  130. package/esm2022/lib/geo.module.mjs +5 -43
  131. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +7 -7
  132. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +33 -16
  133. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +8 -43
  134. package/esm2022/lib/geometry/geometry-form-field/index.mjs +9 -0
  135. package/esm2022/lib/geometry/geometry.module.mjs +9 -10
  136. package/esm2022/lib/geometry/index.mjs +2 -3
  137. package/esm2022/lib/geometry/shared/controls/draw.mjs +1 -1
  138. package/esm2022/lib/geometry/shared/controls/index.mjs +1 -1
  139. package/esm2022/lib/geometry/shared/controls/modify.mjs +1 -1
  140. package/esm2022/lib/geometry/shared/controls/slice.mjs +1 -1
  141. package/esm2022/lib/geometry/shared/geometry.utils.mjs +1 -1
  142. package/esm2022/lib/geometry/shared/index.mjs +1 -1
  143. package/esm2022/lib/import-export/export-button/export-button.component.mjs +20 -10
  144. package/esm2022/lib/import-export/export-button/index.mjs +1 -1
  145. package/esm2022/lib/import-export/import-export/import-export.component.mjs +56 -22
  146. package/esm2022/lib/import-export/import-export/index.mjs +1 -1
  147. package/esm2022/lib/import-export/import-export.module.mjs +10 -81
  148. package/esm2022/lib/import-export/index.mjs +9 -1
  149. package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +13 -10
  150. package/esm2022/lib/import-export/shared/export.errors.mjs +1 -1
  151. package/esm2022/lib/import-export/shared/export.service.mjs +7 -7
  152. package/esm2022/lib/import-export/shared/export.utils.mjs +1 -1
  153. package/esm2022/lib/import-export/shared/import.service.mjs +7 -7
  154. package/esm2022/lib/import-export/shared/import.utils.mjs +1 -1
  155. package/esm2022/lib/import-export/shared/index.mjs +1 -1
  156. package/esm2022/lib/layer/index.mjs +19 -1
  157. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +35 -16
  158. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +43 -17
  159. package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +13 -11
  160. package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +8 -7
  161. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +28 -13
  162. package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +10 -9
  163. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +48 -18
  164. package/esm2022/lib/layer/layer-list/layer-list.enum.mjs +1 -1
  165. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +33 -14
  166. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +5 -5
  167. package/esm2022/lib/layer/layer.module.mjs +16 -93
  168. package/esm2022/lib/layer/shared/clusterParam.mjs +1 -1
  169. package/esm2022/lib/layer/shared/layer.service.mjs +8 -8
  170. package/esm2022/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
  171. package/esm2022/lib/layer/shared/layers/any-layer.mjs +1 -1
  172. package/esm2022/lib/layer/shared/layers/image-layer.mjs +1 -1
  173. package/esm2022/lib/layer/shared/layers/index.mjs +1 -1
  174. package/esm2022/lib/layer/shared/layers/layer.interface.mjs +1 -1
  175. package/esm2022/lib/layer/shared/layers/layer.mjs +1 -1
  176. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +1 -1
  177. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +1 -1
  178. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
  179. package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +21 -11
  180. package/esm2022/lib/layer/utils/image-watcher.mjs +1 -1
  181. package/esm2022/lib/layer/utils/layer.utils.mjs +1 -1
  182. package/esm2022/lib/layer/utils/outputLegend.mjs +1 -1
  183. package/esm2022/lib/layer/utils/tile-watcher.mjs +1 -1
  184. package/esm2022/lib/layer/utils/vector-watcher.mjs +1 -1
  185. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +27 -14
  186. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +8 -8
  187. package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +24 -13
  188. package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +15 -11
  189. package/esm2022/lib/map/home-extent-button/home-extent-button.interface.mjs +1 -1
  190. package/esm2022/lib/map/home-extent-button/index.mjs +1 -1
  191. package/esm2022/lib/map/index.mjs +32 -1
  192. package/esm2022/lib/map/info-section/info-section.component.mjs +7 -7
  193. package/esm2022/lib/map/map-browser/map-browser.component.mjs +8 -8
  194. package/esm2022/lib/map/map-center/map-center.component.mjs +6 -6
  195. package/esm2022/lib/map/map.module.mjs +36 -66
  196. package/esm2022/lib/map/menu-button/menu-button.component.mjs +23 -13
  197. package/esm2022/lib/map/offline-button/offline-button.component.mjs +21 -11
  198. package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +23 -11
  199. package/esm2022/lib/map/shared/controllers/controller.mjs +1 -1
  200. package/esm2022/lib/map/shared/controllers/geolocation.interface.mjs +1 -1
  201. package/esm2022/lib/map/shared/controllers/geolocation.mjs +1 -1
  202. package/esm2022/lib/map/shared/controllers/index.mjs +1 -1
  203. package/esm2022/lib/map/shared/controllers/view.mjs +1 -1
  204. package/esm2022/lib/map/shared/hover-feature.directive.mjs +10 -9
  205. package/esm2022/lib/map/shared/index.mjs +1 -1
  206. package/esm2022/lib/map/shared/linkedLayers.utils.mjs +1 -1
  207. package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +10 -9
  208. package/esm2022/lib/map/shared/map.interface.mjs +1 -1
  209. package/esm2022/lib/map/shared/map.mjs +1 -1
  210. package/esm2022/lib/map/shared/map.service.mjs +5 -5
  211. package/esm2022/lib/map/shared/map.utils.mjs +1 -1
  212. package/esm2022/lib/map/shared/mapOffline.directive.mjs +11 -8
  213. package/esm2022/lib/map/shared/projection.interfaces.mjs +1 -1
  214. package/esm2022/lib/map/shared/projection.service.mjs +7 -7
  215. package/esm2022/lib/map/shared/projection.utils.mjs +1 -1
  216. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +6 -6
  217. package/esm2022/lib/map/utils/layer-watcher.mjs +1 -1
  218. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +23 -13
  219. package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +13 -9
  220. package/esm2022/lib/measure/index.mjs +2 -3
  221. package/esm2022/lib/measure/measure.module.mjs +8 -5
  222. package/esm2022/lib/measure/measurer/index.mjs +6 -0
  223. package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +6 -5
  224. package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +18 -11
  225. package/esm2022/lib/measure/measurer/measurer-item.component.mjs +27 -13
  226. package/esm2022/lib/measure/measurer/measurer.component.mjs +40 -20
  227. package/esm2022/lib/measure/measurer/measurer.module.mjs +7 -69
  228. package/esm2022/lib/measure/shared/index.mjs +1 -1
  229. package/esm2022/lib/measure/shared/measure.utils.mjs +1 -1
  230. package/esm2022/lib/metadata/index.mjs +6 -1
  231. package/esm2022/lib/metadata/metadata-button/index.mjs +1 -1
  232. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +35 -18
  233. package/esm2022/lib/metadata/metadata.module.mjs +10 -31
  234. package/esm2022/lib/metadata/shared/index.mjs +1 -1
  235. package/esm2022/lib/metadata/shared/metadata.service.mjs +5 -5
  236. package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +7 -7
  237. package/esm2022/lib/offline/geoDB/geoDB.service.mjs +8 -10
  238. package/esm2022/lib/offline/geoDB/index.mjs +1 -1
  239. package/esm2022/lib/offline/index.mjs +1 -1
  240. package/esm2022/lib/offline/layerDB/layerDB.service.mjs +5 -5
  241. package/esm2022/lib/offline/shared/geo-network.service.mjs +7 -7
  242. package/esm2022/lib/offline/shared/index.mjs +1 -1
  243. package/esm2022/lib/overlay/index.mjs +1 -1
  244. package/esm2022/lib/overlay/overlay.module.mjs +10 -8
  245. package/esm2022/lib/overlay/shared/index.mjs +1 -1
  246. package/esm2022/lib/overlay/shared/overlay.directive.mjs +8 -7
  247. package/esm2022/lib/overlay/shared/overlay.mjs +1 -1
  248. package/esm2022/lib/overlay/shared/overlay.service.mjs +5 -5
  249. package/esm2022/lib/print/index.mjs +1 -1
  250. package/esm2022/lib/print/print/print.component.mjs +7 -7
  251. package/esm2022/lib/print/print-form/index.mjs +1 -1
  252. package/esm2022/lib/print/print-form/print-form.component.mjs +36 -16
  253. package/esm2022/lib/print/print.module.mjs +10 -54
  254. package/esm2022/lib/print/shared/index.mjs +1 -1
  255. package/esm2022/lib/print/shared/print.service.mjs +18 -12
  256. package/esm2022/lib/query/index.mjs +1 -1
  257. package/esm2022/lib/query/query.module.mjs +7 -8
  258. package/esm2022/lib/query/shared/index.mjs +1 -1
  259. package/esm2022/lib/query/shared/query-search-source.mjs +6 -6
  260. package/esm2022/lib/query/shared/query-search-source.providers.mjs +2 -2
  261. package/esm2022/lib/query/shared/query.directive.mjs +8 -7
  262. package/esm2022/lib/query/shared/query.enums.mjs +1 -1
  263. package/esm2022/lib/query/shared/query.service.mjs +8 -10
  264. package/esm2022/lib/search/index.mjs +14 -5
  265. package/esm2022/lib/search/search-bar/search-bar.component.mjs +38 -18
  266. package/esm2022/lib/search/search-bar/search-bar.module.mjs +8 -61
  267. package/esm2022/lib/search/search-results/index.mjs +10 -0
  268. package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +44 -19
  269. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +30 -16
  270. package/esm2022/lib/search/search-results/search-results-item.component.mjs +22 -12
  271. package/esm2022/lib/search/search-results/search-results.component.mjs +26 -14
  272. package/esm2022/lib/search/search-results/search-results.module.mjs +8 -91
  273. package/esm2022/lib/search/search-selector/search-selector.component.mjs +27 -12
  274. package/esm2022/lib/search/search-selector/search-selector.module.mjs +8 -44
  275. package/esm2022/lib/search/search-settings/search-settings.component.mjs +40 -15
  276. package/esm2022/lib/search/search-settings/search-settings.module.mjs +7 -47
  277. package/esm2022/lib/search/search.module.mjs +10 -13
  278. package/esm2022/lib/search/shared/index.mjs +1 -1
  279. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +10 -9
  280. package/esm2022/lib/search/shared/search-source.service.mjs +1 -1
  281. package/esm2022/lib/search/shared/search.service.mjs +7 -7
  282. package/esm2022/lib/search/shared/search.utils.mjs +1 -1
  283. package/esm2022/lib/search/shared/sources/cadastre.mjs +12 -9
  284. package/esm2022/lib/search/shared/sources/cadastre.providers.mjs +4 -2
  285. package/esm2022/lib/search/shared/sources/coordinates.mjs +15 -13
  286. package/esm2022/lib/search/shared/sources/coordinates.providers.mjs +4 -2
  287. package/esm2022/lib/search/shared/sources/icherche.mjs +20 -18
  288. package/esm2022/lib/search/shared/sources/icherche.providers.mjs +4 -2
  289. package/esm2022/lib/search/shared/sources/ilayer.mjs +14 -12
  290. package/esm2022/lib/search/shared/sources/ilayer.providers.mjs +4 -2
  291. package/esm2022/lib/search/shared/sources/nominatim.interfaces.mjs +1 -1
  292. package/esm2022/lib/search/shared/sources/nominatim.mjs +8 -8
  293. package/esm2022/lib/search/shared/sources/nominatim.providers.mjs +3 -2
  294. package/esm2022/lib/search/shared/sources/source.mjs +1 -1
  295. package/esm2022/lib/search/shared/sources/storedqueries.mjs +15 -13
  296. package/esm2022/lib/search/shared/sources/storedqueries.providers.mjs +4 -2
  297. package/esm2022/lib/search/shared/sources/workspace.mjs +11 -10
  298. package/esm2022/lib/search/shared/sources/workspace.providers.mjs +4 -2
  299. package/esm2022/lib/style/shared/datasource/esri-style-generator.mjs +1 -1
  300. package/esm2022/lib/style/shared/datasource/index.mjs +1 -1
  301. package/esm2022/lib/style/shared/feature/feature-style.mjs +1 -1
  302. package/esm2022/lib/style/shared/feature/index.mjs +1 -1
  303. package/esm2022/lib/style/shared/overlay/index.mjs +1 -1
  304. package/esm2022/lib/style/shared/overlay/overlay-marker-style.utils.mjs +1 -1
  305. package/esm2022/lib/style/shared/overlay/overlay-style.utils.mjs +1 -1
  306. package/esm2022/lib/style/shared/vector/commonVectorStyle.mjs +1 -1
  307. package/esm2022/lib/style/shared/vector/conversion.utils.mjs +1 -1
  308. package/esm2022/lib/style/shared/vector/index.mjs +1 -1
  309. package/esm2022/lib/style/style-list/index.mjs +1 -1
  310. package/esm2022/lib/style/style-list/style-list.interface.mjs +1 -1
  311. package/esm2022/lib/style/style-list/style-list.module.mjs +5 -5
  312. package/esm2022/lib/style/style-list/style-list.service.mjs +5 -5
  313. package/esm2022/lib/style/style-modal/drawing/index.mjs +1 -1
  314. package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +40 -17
  315. package/esm2022/lib/style/style-modal/index.mjs +1 -1
  316. package/esm2022/lib/style/style-modal/layer/index.mjs +1 -1
  317. package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +28 -14
  318. package/esm2022/lib/style/style-modal/layer-button/index.mjs +1 -1
  319. package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +13 -9
  320. package/esm2022/lib/style/style-modal/shared/index.mjs +1 -1
  321. package/esm2022/lib/style/style-service/draw-style.service.mjs +5 -5
  322. package/esm2022/lib/style/style-service/index.mjs +1 -1
  323. package/esm2022/lib/style/style-service/style.service.mjs +4 -4
  324. package/esm2022/lib/style/style.module.mjs +12 -57
  325. package/esm2022/lib/toast/index.mjs +1 -1
  326. package/esm2022/lib/toast/toast.component.mjs +19 -11
  327. package/esm2022/lib/toast/toast.module.mjs +10 -30
  328. package/esm2022/lib/utils/id-generator.mjs +1 -1
  329. package/esm2022/lib/utils/index.mjs +1 -1
  330. package/esm2022/lib/utils/propertyTypeDetector/index.mjs +1 -1
  331. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +7 -7
  332. package/esm2022/lib/wkt/index.mjs +1 -1
  333. package/esm2022/lib/wkt/shared/index.mjs +1 -1
  334. package/esm2022/lib/wkt/shared/wkt.service.mjs +5 -5
  335. package/esm2022/lib/wkt/wkt.module.mjs +8 -5
  336. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +11 -10
  337. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +8 -24
  338. package/esm2022/lib/workspace/index.mjs +1 -1
  339. package/esm2022/lib/workspace/shared/edition-workspace.mjs +1 -1
  340. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +15 -11
  341. package/esm2022/lib/workspace/shared/feature-workspace.mjs +1 -1
  342. package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +12 -10
  343. package/esm2022/lib/workspace/shared/index.mjs +1 -1
  344. package/esm2022/lib/workspace/shared/wfs-workspace.mjs +1 -1
  345. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +12 -10
  346. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +10 -8
  347. package/esm2022/lib/workspace/shared/workspace.utils.mjs +2 -2
  348. package/esm2022/lib/workspace/widgets/index.mjs +1 -1
  349. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +7 -7
  350. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +8 -13
  351. package/esm2022/lib/workspace/widgets/widgets.mjs +1 -1
  352. package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +7 -6
  353. package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +8 -10
  354. package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +7 -6
  355. package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +8 -10
  356. package/esm2022/lib/workspace/workspace.module.mjs +10 -35
  357. package/esm2022/public_api.mjs +11 -12
  358. package/fesm2022/igo2-geo.mjs +34474 -34608
  359. package/fesm2022/igo2-geo.mjs.map +1 -1
  360. package/lib/catalog/catalog-browser/catalog-browser-group.component.d.ts +1 -1
  361. package/lib/catalog/catalog-browser/catalog-browser-layer.component.d.ts +1 -1
  362. package/lib/catalog/catalog-browser/catalog-browser.component.d.ts +1 -1
  363. package/lib/catalog/catalog-browser/catalog-browser.module.d.ts +2 -14
  364. package/lib/catalog/catalog-library/add-catalog-dialog.component.d.ts +3 -2
  365. package/lib/catalog/catalog-library/catalog-library-item.component.d.ts +1 -1
  366. package/lib/catalog/catalog-library/catalog-library.component.d.ts +3 -2
  367. package/lib/catalog/catalog-library/catalog-library.module.d.ts +3 -18
  368. package/lib/catalog/catalog-library/index.d.ts +5 -0
  369. package/lib/catalog/catalog.module.d.ts +6 -9
  370. package/lib/catalog/index.d.ts +2 -0
  371. package/lib/catalog/shared/catalog.service.d.ts +3 -1
  372. package/lib/datasource/shared/datasource.service.d.ts +4 -5
  373. package/lib/datasource/shared/options/options-api.providers.d.ts +1 -1
  374. package/lib/directions/directions-buttons/directions-buttons.component.d.ts +4 -2
  375. package/lib/directions/directions-inputs/directions-inputs.component.d.ts +2 -2
  376. package/lib/directions/directions-results/directions-results.component.d.ts +2 -2
  377. package/lib/directions/directions-sources/directions-source.provider.d.ts +1 -1
  378. package/lib/directions/directions-sources/osrm-directions-source.d.ts +1 -1
  379. package/lib/directions/directions.component.d.ts +2 -2
  380. package/lib/directions/directions.module.d.ts +9 -20
  381. package/lib/directions/shared/directions.service.d.ts +3 -1
  382. package/lib/directions/shared/directions.utils.d.ts +1 -1
  383. package/lib/download/download-button/download-button.component.d.ts +1 -1
  384. package/lib/download/download.module.d.ts +4 -6
  385. package/lib/download/shared/download.service.d.ts +1 -1
  386. package/lib/draw/draw/draw-layer-popup.component.d.ts +1 -1
  387. package/lib/draw/draw/draw-popup.component.d.ts +5 -5
  388. package/lib/draw/draw/draw-shorcuts.component.d.ts +1 -1
  389. package/lib/draw/draw/draw.component.d.ts +2 -2
  390. package/lib/draw/draw/draw.module.d.ts +2 -25
  391. package/lib/draw/drawingTool.module.d.ts +3 -0
  392. package/lib/draw/shared/draw-icon.service.d.ts +1 -1
  393. package/lib/feature/feature-details/feature-details.component.d.ts +7 -4
  394. package/lib/feature/feature-details/feature-details.directive.d.ts +1 -1
  395. package/lib/feature/feature-details/feature-details.module.d.ts +2 -6
  396. package/lib/feature/feature-details/index.d.ts +5 -0
  397. package/lib/feature/feature-form/feature-form.component.d.ts +2 -2
  398. package/lib/feature/feature-form/feature-form.module.d.ts +2 -4
  399. package/lib/feature/feature.module.d.ts +6 -4
  400. package/lib/feature/index.d.ts +3 -1
  401. package/lib/filter/filter.module.d.ts +4 -28
  402. package/lib/filter/index.d.ts +16 -0
  403. package/lib/filter/ogc-filter-button/ogc-filter-button.component.d.ts +3 -3
  404. package/lib/filter/ogc-filter-form/ogc-filter-form.component.d.ts +3 -3
  405. package/lib/filter/ogc-filter-selection/ogc-filter-selection.component.d.ts +4 -4
  406. package/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.d.ts +1 -1
  407. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +2 -2
  408. package/lib/filter/ogc-filterable-form/ogc-filterable-form.component.d.ts +3 -3
  409. package/lib/filter/ogc-filterable-item/ogc-filterable-item.component.d.ts +3 -3
  410. package/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.d.ts +1 -1
  411. package/lib/filter/ogc-filterable-list/ogc-filterable-list.component.d.ts +3 -3
  412. package/lib/filter/shared/filterable-datasource.pipe.d.ts +1 -1
  413. package/lib/filter/shared/spatial-filter.service.d.ts +2 -1
  414. package/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.d.ts +6 -5
  415. package/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.d.ts +2 -2
  416. package/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.d.ts +1 -1
  417. package/lib/filter/time-filter-button/time-filter-button.component.d.ts +1 -1
  418. package/lib/filter/time-filter-form/time-filter-form.component.d.ts +3 -3
  419. package/lib/filter/time-filter-item/time-filter-item.component.d.ts +1 -1
  420. package/lib/filter/time-filter-list/time-filter-list-binding.directive.d.ts +1 -1
  421. package/lib/filter/time-filter-list/time-filter-list.component.d.ts +1 -1
  422. package/lib/geo.module.d.ts +14 -24
  423. package/lib/geometry/geometry-form-field/geometry-form-field-input.component.d.ts +1 -1
  424. package/lib/geometry/geometry-form-field/geometry-form-field.component.d.ts +1 -1
  425. package/lib/geometry/geometry-form-field/geometry-form-field.module.d.ts +2 -10
  426. package/lib/geometry/geometry-form-field/index.d.ts +5 -0
  427. package/lib/geometry/geometry.module.d.ts +5 -3
  428. package/lib/geometry/index.d.ts +1 -2
  429. package/lib/import-export/export-button/export-button.component.d.ts +1 -1
  430. package/lib/import-export/import-export/import-export.component.d.ts +5 -2
  431. package/lib/import-export/import-export.module.d.ts +4 -15
  432. package/lib/import-export/index.d.ts +4 -0
  433. package/lib/import-export/shared/drop-geo-file.directive.d.ts +3 -2
  434. package/lib/import-export/shared/export.service.d.ts +1 -1
  435. package/lib/import-export/shared/export.utils.d.ts +1 -1
  436. package/lib/import-export/shared/import.service.d.ts +1 -1
  437. package/lib/import-export/shared/import.utils.d.ts +1 -1
  438. package/lib/layer/index.d.ts +8 -0
  439. package/lib/layer/layer-item/layer-item.component.d.ts +2 -2
  440. package/lib/layer/layer-legend/layer-legend.component.d.ts +3 -2
  441. package/lib/layer/layer-legend-item/layer-legend-item.component.d.ts +2 -2
  442. package/lib/layer/layer-legend-list/layer-legend-list-binding.directive.d.ts +1 -1
  443. package/lib/layer/layer-legend-list/layer-legend-list.component.d.ts +1 -1
  444. package/lib/layer/layer-list/layer-list-binding.directive.d.ts +2 -2
  445. package/lib/layer/layer-list/layer-list.component.d.ts +1 -1
  446. package/lib/layer/layer-list-tool/layer-list-tool.component.d.ts +1 -1
  447. package/lib/layer/layer.module.d.ts +4 -18
  448. package/lib/layer/shared/layer.service.d.ts +1 -1
  449. package/lib/layer/shared/layers/image-layer.d.ts +1 -1
  450. package/lib/layer/shared/layers/layer.d.ts +1 -1
  451. package/lib/layer/shared/layers/layer.interface.d.ts +1 -1
  452. package/lib/layer/shared/layers/tile-layer.d.ts +1 -1
  453. package/lib/layer/shared/layers/vector-layer.d.ts +1 -1
  454. package/lib/layer/shared/layers/vectortile-layer.d.ts +1 -1
  455. package/lib/layer/track-feature-button/track-feature-button.component.d.ts +1 -1
  456. package/lib/layer/utils/image-watcher.d.ts +1 -1
  457. package/lib/map/baselayers-switcher/baselayers-switcher.component.d.ts +2 -2
  458. package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +1 -1
  459. package/lib/map/geolocate-button/geolocate-button.component.d.ts +2 -2
  460. package/lib/map/home-extent-button/home-extent-button.component.d.ts +2 -2
  461. package/lib/map/index.d.ts +14 -0
  462. package/lib/map/info-section/info-section.component.d.ts +1 -1
  463. package/lib/map/map-browser/map-browser.component.d.ts +2 -2
  464. package/lib/map/map-center/map-center.component.d.ts +1 -1
  465. package/lib/map/map.module.d.ts +4 -7
  466. package/lib/map/menu-button/menu-button.component.d.ts +2 -2
  467. package/lib/map/offline-button/offline-button.component.d.ts +2 -2
  468. package/lib/map/rotation-button/rotation-button.component.d.ts +1 -1
  469. package/lib/map/shared/controllers/geolocation.d.ts +2 -1
  470. package/lib/map/shared/hover-feature.directive.d.ts +2 -2
  471. package/lib/map/shared/map-pointer-position.directive.d.ts +2 -2
  472. package/lib/map/shared/map.d.ts +2 -1
  473. package/lib/map/shared/mapOffline.directive.d.ts +3 -2
  474. package/lib/map/shared/projection.service.d.ts +1 -1
  475. package/lib/map/swipe-control/swipe-control.component.d.ts +1 -1
  476. package/lib/map/wake-lock-button/wake-lock-button.component.d.ts +2 -2
  477. package/lib/map/zoom-button/zoom-button.component.d.ts +1 -1
  478. package/lib/measure/index.d.ts +1 -2
  479. package/lib/measure/measure.module.d.ts +3 -0
  480. package/lib/measure/measurer/index.d.ts +5 -0
  481. package/lib/measure/measurer/measure-format.pipe.d.ts +1 -1
  482. package/lib/measure/measurer/measurer-dialog.component.d.ts +1 -1
  483. package/lib/measure/measurer/measurer-item.component.d.ts +1 -1
  484. package/lib/measure/measurer/measurer.component.d.ts +4 -4
  485. package/lib/measure/measurer/measurer.module.d.ts +3 -18
  486. package/lib/measure/shared/measure.utils.d.ts +1 -1
  487. package/lib/metadata/index.d.ts +2 -0
  488. package/lib/metadata/metadata-button/metadata-button.component.d.ts +2 -2
  489. package/lib/metadata/metadata.module.d.ts +4 -7
  490. package/lib/offline/geoDB/configFileToGeoDB.service.d.ts +1 -1
  491. package/lib/offline/geoDB/geoDB.service.d.ts +2 -3
  492. package/lib/offline/shared/geo-network.service.d.ts +1 -1
  493. package/lib/overlay/overlay.module.d.ts +4 -1
  494. package/lib/overlay/shared/overlay.directive.d.ts +1 -1
  495. package/lib/print/print/print.component.d.ts +1 -1
  496. package/lib/print/print-form/print-form.component.d.ts +2 -2
  497. package/lib/print/print.module.d.ts +4 -12
  498. package/lib/print/shared/print.service.d.ts +4 -1
  499. package/lib/query/query.module.d.ts +4 -4
  500. package/lib/query/shared/query-search-source.providers.d.ts +1 -1
  501. package/lib/query/shared/query.directive.d.ts +1 -1
  502. package/lib/query/shared/query.service.d.ts +2 -3
  503. package/lib/search/index.d.ts +6 -4
  504. package/lib/search/search-bar/search-bar.component.d.ts +2 -2
  505. package/lib/search/search-bar/search-bar.module.d.ts +2 -16
  506. package/lib/search/search-results/index.d.ts +6 -0
  507. package/lib/search/search-results/save-feature-dialog.component.d.ts +2 -2
  508. package/lib/search/search-results/search-results-add-button.component.d.ts +2 -2
  509. package/lib/search/search-results/search-results-item.component.d.ts +1 -1
  510. package/lib/search/search-results/search-results.component.d.ts +2 -2
  511. package/lib/search/search-results/search-results.module.d.ts +3 -21
  512. package/lib/search/search-selector/search-selector.component.d.ts +1 -1
  513. package/lib/search/search-selector/search-selector.module.d.ts +2 -11
  514. package/lib/search/search-settings/search-settings.component.d.ts +3 -2
  515. package/lib/search/search-settings/search-settings.module.d.ts +2 -12
  516. package/lib/search/search.module.d.ts +6 -7
  517. package/lib/search/shared/search-pointer-summary.directive.d.ts +2 -2
  518. package/lib/search/shared/search.service.d.ts +1 -1
  519. package/lib/search/shared/sources/cadastre.d.ts +2 -1
  520. package/lib/search/shared/sources/cadastre.providers.d.ts +4 -2
  521. package/lib/search/shared/sources/coordinates.d.ts +2 -1
  522. package/lib/search/shared/sources/coordinates.providers.d.ts +4 -2
  523. package/lib/search/shared/sources/icherche.d.ts +2 -1
  524. package/lib/search/shared/sources/icherche.providers.d.ts +5 -3
  525. package/lib/search/shared/sources/ilayer.d.ts +2 -1
  526. package/lib/search/shared/sources/ilayer.providers.d.ts +4 -2
  527. package/lib/search/shared/sources/nominatim.d.ts +1 -1
  528. package/lib/search/shared/sources/nominatim.providers.d.ts +3 -2
  529. package/lib/search/shared/sources/source.d.ts +1 -1
  530. package/lib/search/shared/sources/storedqueries.d.ts +2 -1
  531. package/lib/search/shared/sources/storedqueries.providers.d.ts +5 -3
  532. package/lib/search/shared/sources/workspace.d.ts +2 -1
  533. package/lib/search/shared/sources/workspace.providers.d.ts +4 -2
  534. package/lib/style/style-modal/drawing/style-modal-drawing.component.d.ts +1 -1
  535. package/lib/style/style-modal/layer/style-modal-layer.component.d.ts +1 -1
  536. package/lib/style/style-modal/layer-button/style-modal-layer-button.component.d.ts +1 -1
  537. package/lib/style/style.module.d.ts +5 -16
  538. package/lib/toast/toast.component.d.ts +1 -1
  539. package/lib/toast/toast.module.d.ts +4 -6
  540. package/lib/utils/propertyTypeDetector/propertyTypeDetector.service.d.ts +1 -1
  541. package/lib/wkt/wkt.module.d.ts +3 -0
  542. package/lib/workspace/confirmation-popup/confirmation-popup.component.d.ts +2 -2
  543. package/lib/workspace/confirmation-popup/confirmation-popup.module.d.ts +2 -6
  544. package/lib/workspace/shared/edition-workspace.d.ts +1 -1
  545. package/lib/workspace/shared/edition-workspace.service.d.ts +3 -1
  546. package/lib/workspace/shared/feature-workspace.service.d.ts +2 -1
  547. package/lib/workspace/shared/wfs-workspace.service.d.ts +2 -1
  548. package/lib/workspace/shared/wms-workspace.service.d.ts +2 -1
  549. package/lib/workspace/widgets/ogc-filter/ogc-filter.component.d.ts +1 -1
  550. package/lib/workspace/widgets/ogc-filter/ogc-filter.module.d.ts +2 -6
  551. package/lib/workspace/workspace-selector/workspace-selector.directive.d.ts +1 -1
  552. package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +2 -3
  553. package/lib/workspace/workspace-updator/workspace-updator.directive.d.ts +1 -1
  554. package/lib/workspace/workspace-updator/workspace-updator.module.d.ts +2 -3
  555. package/lib/workspace/workspace.module.d.ts +5 -9
  556. package/locale/en.geo.json +3 -3
  557. package/locale/fr.geo.json +3 -3
  558. package/package.json +14 -12
  559. package/public_api.d.ts +10 -11
  560. package/src/geo-theme.scss +23 -23
  561. package/src/lib/filter/filter.theming.scss +13 -13
  562. package/src/lib/filter/ogc-filter-selection/ogc-filter-selection.theming.scss +18 -18
  563. package/src/lib/filter/time-filter-form/time-filter-form.theming.scss +5 -5
  564. package/src/lib/layer/layer-item/layer-item.theme.scss +33 -33
  565. package/src/lib/layer/layer-legend/layer-legend.theming.scss +10 -10
  566. package/src/lib/layer/layer-list-tool/layer-list-tool.theming.scss +34 -34
  567. package/src/lib/layer/layer.theming.scss +10 -10
  568. package/src/lib/map/map-browser/map-browser.theming.scss +46 -46
  569. package/src/lib/map/map.theming.scss +9 -9
  570. package/src/lib/map/menu-button/menu-button.theming.scss +20 -20
  571. package/src/lib/map/zoom-button/zoom-button.theming.scss +32 -32
  572. package/src/style/style.scss +1 -1
  573. package/esm2022/lib/datasource/datasource.module.mjs +0 -22
  574. package/esm2022/lib/search/search-bar/search-url-param.directive.mjs +0 -40
  575. package/lib/datasource/datasource.module.d.ts +0 -8
  576. package/lib/search/search-bar/search-url-param.directive.d.ts +0 -13
@@ -107,4 +107,4 @@ export function standardizeUrl(url) {
107
107
  }
108
108
  return urlStandardized;
109
109
  }
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvdXRpbHMvaWQtZ2VuZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQVM3Qjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLDJCQUEyQixDQUN6QyxPQUEwQjtJQUUxQixNQUFNLFVBQVUsR0FBRztRQUNqQixHQUFHLEVBQUUsOEJBQThCO1FBQ25DLElBQUksRUFBRSwrQkFBK0I7UUFDckMsR0FBRyxFQUFFLDhCQUE4QjtRQUNuQyxPQUFPLEVBQUUsa0NBQWtDO1FBQzNDLEdBQUcsRUFBRSw4QkFBOEI7UUFDbkMsVUFBVSxFQUFFLHFDQUFxQztRQUNqRCxlQUFlLEVBQUUscUNBQXFDO1FBQ3RELGNBQWMsRUFBRSxxQ0FBcUM7UUFDckQsR0FBRyxFQUFFLENBQUMsUUFBOEIsRUFBRSxFQUFFLENBQUMsS0FBSztRQUM5QyxTQUFTLEVBQUUsQ0FBQyxRQUE4QixFQUFFLEVBQUUsQ0FBQyxXQUFXO0tBQzNELENBQUM7SUFDRixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQztJQUN6RCxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM1QixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSw4QkFBOEIsQ0FBQyxPQUE2QjtJQUMxRSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUNyQyxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLEdBQUcsTUFBTSxD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Q0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FDN0MsQ0FBQztJQUNGLElBQUksWUFBWSxDQUFDLE1BQU0sRUFBRTtRQUN2QixlQUFlLElBQUksR0FBRyxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDakQ7SUFDRCxPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXVpZCB9IGZyb20gJ0BpZ28yL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IE1kNSB9IGZyb20gJ3RzLW1kNSc7XHJcblxyXG5pbXBvcnQgeyBXRlNEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzJztcclxuaW1wb3J0IHsgQW55RGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9hbnktZGF0YXNvdXJjZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2RhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgV01TRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy93bXMtZGF0YXNvdXJjZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBXTVRTRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy93bXRzLWRhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQXJjR0lTUmVzdERhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9hcmNnaXNyZXN0LWRhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSBhIGlkIGZyb20gaXQncyBkYXRhc291cmNlIG9wdGlvbnMuXHJcbiAqIEBwYXJhbSBvcHRpb25zIERhdGEgc291cmNlIG9wdGlvbnNcclxuICogQHJldHVybnMgQSBpZFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlSWRGcm9tU291cmNlT3B0aW9ucyhcclxuICBvcHRpb25zOiBEYXRhU291cmNlT3B0aW9uc1xyXG4pOiBzdHJpbmcge1xyXG4gIGNvbnN0IGdlbmVyYXRvcnMgPSB7XHJcbiAgICB3bXM6IGdlbmVyYXRlV01TSWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIHdtdHM6IGdlbmVyYXRlV01UU0lkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICB4eXo6IGdlbmVyYXRlWFlaSWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIGZlYXR1cmU6IGdlbmVyYXRlRmVhdHVyZUlkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICB3ZnM6IGdlbmVyYXRlV2ZzSWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIGFyY2dpc3Jlc3Q6IGdlbmVyYXRlQXJjZ2lzUmVzdElkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICBpbWFnZWFyY2dpc3Jlc3Q6IGdlbmVyYXRlQXJjZ2lzUmVzdElkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICB0aWxlYXJjZ2lzcmVzdDogZ2VuZXJhdGVBcmNnaXNSZXN0SWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIG9zbTogKF9vcHRpb25zOiBBbnlEYXRhU291cmNlT3B0aW9ucykgPT4gJ09TTScsXHJcbiAgICB0aWxlZGVidWc6IChfb3B0aW9uczogQW55RGF0YVNvdXJjZU9wdGlvbnMpID0+ICd0aWxlZGVidWcnXHJcbiAgfTtcclxuICBjb25zdCBnZW5lcmF0b3IgPSBnZW5lcmF0b3JzW29wdGlvbnMudHlwZV0gfHwgZ2VuZXJhdGVJZDtcclxuICByZXR1cm4gZ2VuZXJhdG9yKG9wdGlvbnMpO1xyXG59XHJcblxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIFdNUyBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEBwYXJhbSBvcHRpb25zIFdNUyBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlV01TSWRGcm9tU291cmNlT3B0aW9ucyhvcHRpb25zOiBXTVNEYXRhU291cmNlT3B0aW9ucykge1xyXG4gIGNvbnN0IGxheWVycyA9IG9wdGlvbnMucGFyYW1zLkxBWUVSUztcclxuICBjb25zdCB1cmwgPSBzdGFuZGFyZGl6ZVVybChvcHRpb25zLnVybCk7XHJcbiAgY29uc3QgY2hhaW4gPSAnd21zJyArIHVybCArIGxheWVycztcclxuICByZXR1cm4gTWQ1Lmhhc2hTdHIoY2hhaW4pIGFzIHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEdlbmVyYXRlIGEgaWQgZnJvbSBXTVRTIGRhdGEgc291cmNlIG9wdGlvbnNcclxuICogQHBhcmFtIG9wdGlvbnMgV01UUyBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVXTVRTSWRGcm9tU291cmNlT3B0aW9ucyhcclxuICBvcHRpb25zOiBXTVRTRGF0YVNvdXJjZU9wdGlvbnNcclxuKSB7XHJcbiAgY29uc3QgbGF5ZXIgPSBvcHRpb25zLmxheWVyO1xyXG4gIGNvbnN0IHVybCA9IHN0YW5kYXJkaXplVXJsKG9wdGlvbnMudXJsKTtcclxuICBjb25zdCBjaGFpbiA9ICd3bXRzJyArIHVybCArIGxheWVyO1xyXG4gIHJldHVybiBNZDUuaGFzaFN0cihjaGFpbikgYXMgc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIFhZWiBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEBwYXJhbSBvcHRpb25zIFhZWiBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVYWVpJZEZyb21Tb3VyY2VPcHRpb25zKG9wdGlvbnM6IFdNVFNEYXRhU291cmNlT3B0aW9ucykge1xyXG4gIGNvbnN0IHVybCA9IHN0YW5kYXJkaXplVXJsKG9wdGlvbnMudXJsKTtcclxuICBjb25zdCBjaGFpbiA9ICd4eXonICsgdXJsO1xyXG4gIHJldHVybiBNZDUuaGFzaFN0cihjaGFpbikgYXMgc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIGZlYXR1cmUgZGF0YSBzb3VyY2Ugb3B0aW9uc1xyXG4gKiBAcGFyYW0gb3B0aW9ucyBYWVogZGF0YSBzb3VyY2Ugb3B0aW9uc1xyXG4gKiBAcmV0dXJucyBBIG1kNSBoYXNoIG9mIHRoZSB0aGUgdXJsIGFuZCBsYXllclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlRmVhdHVyZUlkRnJvbVNvdXJjZU9wdGlvbnMoXHJcbiAgb3B0aW9uczogV01UU0RhdGFTb3VyY2VPcHRpb25zXHJcbikge1xyXG4gIGlmICghb3B0aW9ucy51cmwpIHtcclxuICAgIHJldHVybiBnZW5lcmF0ZUlkKG9wdGlvbnMpO1xyXG4gIH1cclxuICBjb25zdCB1cmwgPSBzdGFuZGFyZGl6ZVVybChvcHRpb25zLnVybCk7XHJcbiAgY29uc3QgY2hhaW4gPSAnZmVhdHVyZScgKyB1cmw7XHJcbiAgcmV0dXJuIE1kNS5oYXNoU3RyKGNoYWluKSBhcyBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSBhIGlkIGZyb20gZmVhdHVyZSBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEBwYXJhbSBvcHRpb25zIFhZWiBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVXZnNJZEZyb21Tb3VyY2VPcHRpb25zKG9wdGlvbnM6IFdGU0RhdGFTb3VyY2VPcHRpb25zKSB7XHJcbiAgaWYgKCFvcHRpb25zLnVybCB8fCAhb3B0aW9ucy5wYXJhbXMpIHtcclxuICAgIHJldHVybiBnZW5lcmF0ZUlkKG9wdGlvbnMpO1xyXG4gIH1cclxuICBjb25zdCB1cmwgPSBzdGFuZGFyZGl6ZVVybChvcHRpb25zLnVybCk7XHJcbiAgY29uc3QgY2hhaW4gPSAnd2ZzJyArIHVybCArIG9wdGlvbnMucGFyYW1zLmZlYXR1cmVUeXBlcztcclxuICByZXR1cm4gTWQ1Lmhhc2hTdHIoY2hhaW4pIGFzIHN0cmluZztcclxufVxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIEFyY0dJUyBSZXN0IGRhdGEgc291cmNlIG9wdGlvbnNcclxuICogQHBhcmFtIG9wdGlvbnMgQXJjR0lTIFJlc3QgZGF0YSBzb3VyY2Ugb3B0aW9uc1xyXG4gKiBAcmV0dXJucyBBIG1kNSBoYXNoIG9mIHRoZSB1cmwgYW5kIGxheWVyc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlQXJjZ2lzUmVzdElkRnJvbVNvdXJjZU9wdGlvbnMoXHJcbiAgb3B0aW9uczogQXJjR0lTUmVzdERhdGFTb3VyY2VPcHRpb25zXHJcbikge1xyXG4gIGNvbnN0IGxheWVycyA9IG9wdGlvbnMubGF5ZXI7XHJcbiAgY29uc3QgdXJsID0gc3RhbmRhcmRpemVVcmwob3B0aW9ucy51cmwpO1xyXG4gIGNvbnN0IGNoYWluID0gKG9wdGlvbnMudHlwZSB8fCAnYXJjZ2lzJykgKyB1cmwgKyBsYXllcnM7XHJcbiAgcmV0dXJuIE1kNS5oYXNoU3RyKGNoYWluKSBhcyBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSBhIHVuaXF1ZSBpZFxyXG4gKiBAcmV0dXJucyBBIHV1aWRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUlkKF9vcHRpb25zOiBBbnlEYXRhU291cmNlT3B0aW9ucykge1xyXG4gIHJldHVybiB1dWlkKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzdGFuZGFyZGl6ZVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgY29uc3QgYWJzVXJsID0gdXJsLmNoYXJBdCgwKSA9PT0gJy8nID8gd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHVybCA6IHVybDtcclxuICBjb25zdCB1cmxEZWNvbXBvc2VkID0gYWJzVXJsLnNwbGl0KC9bPyZdLyk7XHJcbiAgbGV0IHVybFN0YW5kYXJkaXplZCA9IHVybERlY29tcG9zZWQuc2hpZnQoKTtcclxuICBjb25zdCBwYXJhbXNUb0tlZXAgPSB1cmxEZWNvbXBvc2VkLmZpbHRlcihcclxuICAgIChwKSA9PiBwLmxlbmd0aCAhPT0gMCAmJiBwLmNoYXJBdCgwKSAhPT0gJ18nXHJcbiAgKTtcclxuICBpZiAocGFyYW1zVG9LZWVwLmxlbmd0aCkge1xyXG4gICAgdXJsU3RhbmRhcmRpemVkICs9ICc/JyArIHBhcmFtc1RvS2VlcC5qb2luKCcmJyk7XHJcbiAgfVxyXG4gIHJldHVybiB1cmxTdGFuZGFyZGl6ZWQ7XHJcbn1cclxuIl19
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvdXRpbHMvaWQtZ2VuZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQVM3Qjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLDJCQUEyQixDQUN6QyxPQUEwQjtJQUUxQixNQUFNLFVBQVUsR0FBRztRQUNqQixHQUFHLEVBQUUsOEJBQThCO1FBQ25DLElBQUksRUFBRSwrQkFBK0I7UUFDckMsR0FBRyxFQUFFLDhCQUE4QjtRQUNuQyxPQUFPLEVBQUUsa0NBQWtDO1FBQzNDLEdBQUcsRUFBRSw4QkFBOEI7UUFDbkMsVUFBVSxFQUFFLHFDQUFxQztRQUNqRCxlQUFlLEVBQUUscUNBQXFDO1FBQ3RELGNBQWMsRUFBRSxxQ0FBcUM7UUFDckQsR0FBRyxFQUFFLENBQUMsUUFBOEIsRUFBRSxFQUFFLENBQUMsS0FBSztRQUM5QyxTQUFTLEVBQUUsQ0FBQyxRQUE4QixFQUFFLEVBQUUsQ0FBQyxXQUFXO0tBQzNELENBQUM7SUFDRixNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQztJQUN6RCxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUM1QixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSw4QkFBOEIsQ0FBQyxPQUE2QjtJQUMxRSxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUNyQyxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLEdBQUcsTUFBTSxDQUFDO0lBQ25DLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQVcsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSwrQkFBK0IsQ0FDN0MsT0FBOEI7SUFFOUIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLE1BQU0sR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDO0lBQ25DLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQVcsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSw4QkFBOEIsQ0FBQyxPQUE4QjtJQUMzRSxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUM7SUFDMUIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBVyxDQUFDO0FBQ3RDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGtDQUFrQyxDQUNoRCxPQUE4QjtJQUU5QixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFDRCxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLFNBQVMsR0FBRyxHQUFHLENBQUM7SUFDOUIsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBVyxDQUFDO0FBQ3RDLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLDhCQUE4QixDQUFDLE9BQTZCO0lBQzFFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3BDLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFDRCxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLEtBQUssR0FBRyxHQUFHLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7SUFDeEQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBVyxDQUFDO0FBQ3RDLENBQUM7QUFDRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHFDQUFxQyxDQUNuRCxPQUFvQztJQUVwQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQzdCLE1BQU0sR0FBRyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDeEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxHQUFHLEdBQUcsR0FBRyxNQUFNLENBQUM7SUFDeEQsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBVyxDQUFDO0FBQ3RDLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsVUFBVSxDQUFDLFFBQThCO0lBQ3ZELE9BQU8sSUFBSSxFQUFFLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxjQUFjLENBQUMsR0FBVztJQUN4QyxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDMUUsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzQyxJQUFJLGVBQWUsR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDNUMsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FDdkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUM3QyxDQUFDO0lBQ0YsSUFBSSxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDeEIsZUFBZSxJQUFJLEdBQUcsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFDRCxPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXVpZCB9IGZyb20gJ0BpZ28yL3V0aWxzJztcclxuXHJcbmltcG9ydCB7IE1kNSB9IGZyb20gJ3RzLW1kNSc7XHJcblxyXG5pbXBvcnQgeyBXRlNEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzJztcclxuaW1wb3J0IHsgQW55RGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9hbnktZGF0YXNvdXJjZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBEYXRhU291cmNlT3B0aW9ucyB9IGZyb20gJy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2RhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgV01TRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy93bXMtZGF0YXNvdXJjZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBXTVRTRGF0YVNvdXJjZU9wdGlvbnMgfSBmcm9tICcuLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy93bXRzLWRhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQXJjR0lTUmVzdERhdGFTb3VyY2VPcHRpb25zIH0gZnJvbSAnLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy9hcmNnaXNyZXN0LWRhdGFzb3VyY2UuaW50ZXJmYWNlJztcclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSBhIGlkIGZyb20gaXQncyBkYXRhc291cmNlIG9wdGlvbnMuXHJcbiAqIEBwYXJhbSBvcHRpb25zIERhdGEgc291cmNlIG9wdGlvbnNcclxuICogQHJldHVybnMgQSBpZFxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlSWRGcm9tU291cmNlT3B0aW9ucyhcclxuICBvcHRpb25zOiBEYXRhU291cmNlT3B0aW9uc1xyXG4pOiBzdHJpbmcge1xyXG4gIGNvbnN0IGdlbmVyYXRvcnMgPSB7XHJcbiAgICB3bXM6IGdlbmVyYXRlV01TSWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIHdtdHM6IGdlbmVyYXRlV01UU0lkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICB4eXo6IGdlbmVyYXRlWFlaSWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIGZlYXR1cmU6IGdlbmVyYXRlRmVhdHVyZUlkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICB3ZnM6IGdlbmVyYXRlV2ZzSWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIGFyY2dpc3Jlc3Q6IGdlbmVyYXRlQXJjZ2lzUmVzdElkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICBpbWFnZWFyY2dpc3Jlc3Q6IGdlbmVyYXRlQXJjZ2lzUmVzdElkRnJvbVNvdXJjZU9wdGlvbnMsXHJcbiAgICB0aWxlYXJjZ2lzcmVzdDogZ2VuZXJhdGVBcmNnaXNSZXN0SWRGcm9tU291cmNlT3B0aW9ucyxcclxuICAgIG9zbTogKF9vcHRpb25zOiBBbnlEYXRhU291cmNlT3B0aW9ucykgPT4gJ09TTScsXHJcbiAgICB0aWxlZGVidWc6IChfb3B0aW9uczogQW55RGF0YVNvdXJjZU9wdGlvbnMpID0+ICd0aWxlZGVidWcnXHJcbiAgfTtcclxuICBjb25zdCBnZW5lcmF0b3IgPSBnZW5lcmF0b3JzW29wdGlvbnMudHlwZV0gfHwgZ2VuZXJhdGVJZDtcclxuICByZXR1cm4gZ2VuZXJhdG9yKG9wdGlvbnMpO1xyXG59XHJcblxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIFdNUyBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEBwYXJhbSBvcHRpb25zIFdNUyBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlV01TSWRGcm9tU291cmNlT3B0aW9ucyhvcHRpb25zOiBXTVNEYXRhU291cmNlT3B0aW9ucykge1xyXG4gIGNvbnN0IGxheWVycyA9IG9wdGlvbnMucGFyYW1zLkxBWUVSUztcclxuICBjb25zdCB1cmwgPSBzdGFuZGFyZGl6ZVVybChvcHRpb25zLnVybCk7XHJcbiAgY29uc3QgY2hhaW4gPSAnd21zJyArIHVybCArIGxheWVycztcclxuICByZXR1cm4gTWQ1Lmhhc2hTdHIoY2hhaW4pIGFzIHN0cmluZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEdlbmVyYXRlIGEgaWQgZnJvbSBXTVRTIGRhdGEgc291cmNlIG9wdGlvbnNcclxuICogQHBhcmFtIG9wdGlvbnMgV01UUyBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVXTVRTSWRGcm9tU291cmNlT3B0aW9ucyhcclxuICBvcHRpb25zOiBXTVRTRGF0YVNvdXJjZU9wdGlvbnNcclxuKSB7XHJcbiAgY29uc3QgbGF5ZXIgPSBvcHRpb25zLmxheWVyO1xyXG4gIGNvbnN0IHVybCA9IHN0YW5kYXJkaXplVXJsKG9wdGlvbnMudXJsKTtcclxuICBjb25zdCBjaGFpbiA9ICd3bXRzJyArIHVybCArIGxheWVyO1xyXG4gIHJldHVybiBNZDUuaGFzaFN0cihjaGFpbikgYXMgc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIFhZWiBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEBwYXJhbSBvcHRpb25zIFhZWiBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVYWVpJZEZyb21Tb3VyY2VPcHRpb25zKG9wdGlvbnM6IFdNVFNEYXRhU291cmNlT3B0aW9ucykge1xyXG4gIGNvbnN0IHVybCA9IHN0YW5kYXJkaXplVXJsKG9wdGlvbnMudXJsKTtcclxuICBjb25zdCBjaGFpbiA9ICd4eXonICsgdXJsO1xyXG4gIHJldHVybiBNZDUuaGFzaFN0cihjaGFpbikgYXMgc3RyaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIGZlYXR1cmUgZGF0YSBzb3VyY2Ugb3B0aW9uc1xyXG4gKiBAcGFyYW0gb3B0aW9ucyBYWVogZGF0YSBzb3VyY2Ugb3B0aW9uc1xyXG4gKiBAcmV0dXJucyBBIG1kNSBoYXNoIG9mIHRoZSB0aGUgdXJsIGFuZCBsYXllclxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlRmVhdHVyZUlkRnJvbVNvdXJjZU9wdGlvbnMoXHJcbiAgb3B0aW9uczogV01UU0RhdGFTb3VyY2VPcHRpb25zXHJcbikge1xyXG4gIGlmICghb3B0aW9ucy51cmwpIHtcclxuICAgIHJldHVybiBnZW5lcmF0ZUlkKG9wdGlvbnMpO1xyXG4gIH1cclxuICBjb25zdCB1cmwgPSBzdGFuZGFyZGl6ZVVybChvcHRpb25zLnVybCk7XHJcbiAgY29uc3QgY2hhaW4gPSAnZmVhdHVyZScgKyB1cmw7XHJcbiAgcmV0dXJuIE1kNS5oYXNoU3RyKGNoYWluKSBhcyBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSBhIGlkIGZyb20gZmVhdHVyZSBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEBwYXJhbSBvcHRpb25zIFhZWiBkYXRhIHNvdXJjZSBvcHRpb25zXHJcbiAqIEByZXR1cm5zIEEgbWQ1IGhhc2ggb2YgdGhlIHRoZSB1cmwgYW5kIGxheWVyXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVXZnNJZEZyb21Tb3VyY2VPcHRpb25zKG9wdGlvbnM6IFdGU0RhdGFTb3VyY2VPcHRpb25zKSB7XHJcbiAgaWYgKCFvcHRpb25zLnVybCB8fCAhb3B0aW9ucy5wYXJhbXMpIHtcclxuICAgIHJldHVybiBnZW5lcmF0ZUlkKG9wdGlvbnMpO1xyXG4gIH1cclxuICBjb25zdCB1cmwgPSBzdGFuZGFyZGl6ZVVybChvcHRpb25zLnVybCk7XHJcbiAgY29uc3QgY2hhaW4gPSAnd2ZzJyArIHVybCArIG9wdGlvbnMucGFyYW1zLmZlYXR1cmVUeXBlcztcclxuICByZXR1cm4gTWQ1Lmhhc2hTdHIoY2hhaW4pIGFzIHN0cmluZztcclxufVxyXG4vKipcclxuICogR2VuZXJhdGUgYSBpZCBmcm9tIEFyY0dJUyBSZXN0IGRhdGEgc291cmNlIG9wdGlvbnNcclxuICogQHBhcmFtIG9wdGlvbnMgQXJjR0lTIFJlc3QgZGF0YSBzb3VyY2Ugb3B0aW9uc1xyXG4gKiBAcmV0dXJucyBBIG1kNSBoYXNoIG9mIHRoZSB1cmwgYW5kIGxheWVyc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdlbmVyYXRlQXJjZ2lzUmVzdElkRnJvbVNvdXJjZU9wdGlvbnMoXHJcbiAgb3B0aW9uczogQXJjR0lTUmVzdERhdGFTb3VyY2VPcHRpb25zXHJcbikge1xyXG4gIGNvbnN0IGxheWVycyA9IG9wdGlvbnMubGF5ZXI7XHJcbiAgY29uc3QgdXJsID0gc3RhbmRhcmRpemVVcmwob3B0aW9ucy51cmwpO1xyXG4gIGNvbnN0IGNoYWluID0gKG9wdGlvbnMudHlwZSB8fCAnYXJjZ2lzJykgKyB1cmwgKyBsYXllcnM7XHJcbiAgcmV0dXJuIE1kNS5oYXNoU3RyKGNoYWluKSBhcyBzdHJpbmc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHZW5lcmF0ZSBhIHVuaXF1ZSBpZFxyXG4gKiBAcmV0dXJucyBBIHV1aWRcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUlkKF9vcHRpb25zOiBBbnlEYXRhU291cmNlT3B0aW9ucykge1xyXG4gIHJldHVybiB1dWlkKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzdGFuZGFyZGl6ZVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgY29uc3QgYWJzVXJsID0gdXJsLmNoYXJBdCgwKSA9PT0gJy8nID8gd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHVybCA6IHVybDtcclxuICBjb25zdCB1cmxEZWNvbXBvc2VkID0gYWJzVXJsLnNwbGl0KC9bPyZdLyk7XHJcbiAgbGV0IHVybFN0YW5kYXJkaXplZCA9IHVybERlY29tcG9zZWQuc2hpZnQoKTtcclxuICBjb25zdCBwYXJhbXNUb0tlZXAgPSB1cmxEZWNvbXBvc2VkLmZpbHRlcihcclxuICAgIChwKSA9PiBwLmxlbmd0aCAhPT0gMCAmJiBwLmNoYXJBdCgwKSAhPT0gJ18nXHJcbiAgKTtcclxuICBpZiAocGFyYW1zVG9LZWVwLmxlbmd0aCkge1xyXG4gICAgdXJsU3RhbmRhcmRpemVkICs9ICc/JyArIHBhcmFtc1RvS2VlcC5qb2luKCcmJyk7XHJcbiAgfVxyXG4gIHJldHVybiB1cmxTdGFuZGFyZGl6ZWQ7XHJcbn1cclxuIl19
@@ -2,4 +2,4 @@ export * from './googleLinks';
2
2
  export * from './id-generator';
3
3
  export * from './osmLinks';
4
4
  export * from './propertyTypeDetector';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dvb2dsZUxpbmtzJztcbmV4cG9ydCAqIGZyb20gJy4vaWQtZ2VuZXJhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vb3NtTGlua3MnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eVR5cGVEZXRlY3Rvcic7XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi91dGlscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2dvb2dsZUxpbmtzJztcclxuZXhwb3J0ICogZnJvbSAnLi9pZC1nZW5lcmF0b3InO1xyXG5leHBvcnQgKiBmcm9tICcuL29zbUxpbmtzJztcclxuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eVR5cGVEZXRlY3Rvcic7XHJcbiJdfQ==
@@ -1,3 +1,3 @@
1
1
  export * from './propertyTypeDetector.service';
2
2
  export * from './propertyTypeDetector.interface';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi91dGlscy9wcm9wZXJ0eVR5cGVEZXRlY3Rvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsa0NBQWtDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5VHlwZURldGVjdG9yLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eVR5cGVEZXRlY3Rvci5pbnRlcmZhY2UnO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi91dGlscy9wcm9wZXJ0eVR5cGVEZXRlY3Rvci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsa0NBQWtDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5VHlwZURldGVjdG9yLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5VHlwZURldGVjdG9yLmludGVyZmFjZSc7XHJcbiJdfQ==
@@ -1,7 +1,7 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { RegexService } from '@igo2/core';
2
+ import { RegexService } from '@igo2/core/regex';
3
3
  import * as i0 from "@angular/core";
4
- import * as i1 from "@igo2/core";
4
+ import * as i1 from "@igo2/core/regex";
5
5
  export class PropertyTypeDetectorService {
6
6
  regexService;
7
7
  geoServiceRegexes = [];
@@ -52,13 +52,13 @@ export class PropertyTypeDetectorService {
52
52
  return (this.regexService.get('geoservice') ||
53
53
  []);
54
54
  }
55
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PropertyTypeDetectorService, deps: [{ token: i1.RegexService }], target: i0.ɵɵFactoryTarget.Injectable });
56
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PropertyTypeDetectorService, providedIn: 'root' });
55
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PropertyTypeDetectorService, deps: [{ token: i1.RegexService }], target: i0.ɵɵFactoryTarget.Injectable });
56
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PropertyTypeDetectorService, providedIn: 'root' });
57
57
  }
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PropertyTypeDetectorService, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PropertyTypeDetectorService, decorators: [{
59
59
  type: Injectable,
60
60
  args: [{
61
61
  providedIn: 'root'
62
62
  }]
63
- }], ctorParameters: function () { return [{ type: i1.RegexService }]; } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHlUeXBlRGV0ZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3V0aWxzL3Byb3BlcnR5VHlwZURldGVjdG9yL3Byb3BlcnR5VHlwZURldGVjdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFPMUMsTUFBTSxPQUFPLDJCQUEyQjtJQUdsQjtJQUZiLGlCQUFpQixHQUEyQixFQUFFLENBQUM7SUFFdEQsWUFBb0IsWUFBMEI7UUFBMUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDNUMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxlQUFlLENBQUMsS0FBSztRQUNuQixPQUFPLE9BQU8sS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFTyxLQUFLLENBQUMsS0FBSztRQUNqQixNQUFNLEtBQUssR0FBRyxjQUFjLENBQUM7UUFDN0IsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBSztRQUNoQixJQUFJLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixPQUFPO1NBQ1I7UUFDRCxLQUFLLE1BQU0sZUFBZSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUNwRCxNQUFNLFdBQVcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEQsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMzQixZQUFZLEdBQUcsSUFBSSxDQUFDO2dCQUNwQixNQUFNO2FBQ1A7U0FDRjtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxhQUFhLENBQ1gsR0FBVyxFQUNYLG1CQUE2QjtRQUU3QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUMzQixPQUFPO1NBQ1I7UUFDRCxJQUFJLGtCQUF3QyxDQUFDO1FBQzdDLEtBQUssTUFBTSxlQUFlLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3BELE1BQU0sV0FBVyxHQUFHLElBQUksTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3pCLDBDQUEwQztnQkFDMUMsTUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUMxRCxlQUFlLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUNuRCxDQUFDO2dCQUNGLGtCQUFrQixHQUFHLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDdEUsSUFBSSxrQkFBa0IsRUFBRTtvQkFDdEIsTUFBTTtpQkFDUDthQUNGO1NBQ0Y7UUFDRCxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQztZQUN6QyxFQUFFLENBQTJCLENBQUM7SUFDbEMsQ0FBQzt3R0ExRFUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsY0FGMUIsTUFBTTs7NEZBRVAsMkJBQTJCO2tCQUh2QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFJlZ2V4U2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgR2VvU2VydmljZURlZmluaXRpb24gfSBmcm9tICcuL3Byb3BlcnR5VHlwZURldGVjdG9yLmludGVyZmFjZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVR5cGVEZXRlY3RvclNlcnZpY2Uge1xyXG4gIHB1YmxpYyBnZW9TZXJ2aWNlUmVnZXhlczogR2VvU2VydmljZURlZmluaXRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlZ2V4U2VydmljZTogUmVnZXhTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmdlb1NlcnZpY2VSZWdleGVzID0gdGhpcy5nZXRHZW9TZXJ2aWNlUmVnZXhlcygpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UHJvcGVydHlUeXBlKHZhbHVlKSB7XHJcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpc1VybCh2YWx1ZSk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcmVnZXggPSAvXmh0dHBzPzpcXC9cXC8vO1xyXG4gICAgcmV0dXJuIHJlZ2V4LnRlc3QodmFsdWUudG9TdHJpbmcoKSk7XHJcbiAgfVxyXG5cclxuICBpc0dlb1NlcnZpY2UodmFsdWUpOiBib29sZWFuIHtcclxuICAgIGxldCBpc0dlb1NlcnZpY2UgPSBmYWxzZTtcclxuICAgIGlmICghdGhpcy5pc1VybCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGdlb1NlcnZpY2VSZWdleCBvZiB0aGlzLmdlb1NlcnZpY2VSZWdleGVzKSB7XHJcbiAgICAgIGNvbnN0IGRvbWFpblJlZ2V4ID0gbmV3IFJlZ0V4cChnZW9TZXJ2aWNlUmVnZXgudXJsKTtcclxuICAgICAgaWYgKGRvbWFpblJlZ2V4LnRlc3QodmFsdWUpKSB7XHJcbiAgICAgICAgaXNHZW9TZXJ2aWNlID0gdHJ1ZTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlzR2VvU2VydmljZTtcclxuICB9XHJcblxyXG4gIGdldEdlb1NlcnZpY2UoXHJcbiAgICB1cmw6IHN0cmluZyxcclxuICAgIGF2YWlsYWJsZVByb3BlcnRpZXM6IHN0cmluZ1tdXHJcbiAgKTogR2VvU2VydmljZURlZmluaXRpb24ge1xyXG4gICAgaWYgKCF0aGlzLmlzR2VvU2VydmljZSh1cmwpKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGxldCBtYXRjaGluZ0dlb3NlcnZpY2U6IEdlb1NlcnZpY2VEZWZpbml0aW9uO1xyXG4gICAgZm9yIChjb25zdCBnZW9TZXJ2aWNlUmVnZXggb2YgdGhpcy5nZW9TZXJ2aWNlUmVnZXhlcykge1xyXG4gICAgICBjb25zdCBkb21haW5SZWdleCA9IG5ldyBSZWdFeHAoZ2VvU2VydmljZVJlZ2V4LnVybCk7XHJcbiAgICAgIGlmIChkb21haW5SZWdleC50ZXN0KHVybCkpIHtcclxuICAgICAgICAvLyBwcm92aWRpbmcgdGhlIHRoZSBmaXJzdCBtYXRjaGluZyByZWdleDtcclxuICAgICAgICBjb25zdCBtYXRjaGluZ1Byb3BlcnRpZXMgPSBhdmFpbGFibGVQcm9wZXJ0aWVzLmZpbHRlcigocCkgPT5cclxuICAgICAgICAgIGdlb1NlcnZpY2VSZWdleC5wcm9wZXJ0aWVzRm9yTGF5ZXJOYW1lLmluY2x1ZGVzKHApXHJcbiAgICAgICAgKTtcclxuICAgICAgICBtYXRjaGluZ0dlb3NlcnZpY2UgPSBtYXRjaGluZ1Byb3BlcnRpZXMgPyBnZW9TZXJ2aWNlUmVnZXggOiB1bmRlZmluZWQ7XHJcbiAgICAgICAgaWYgKG1hdGNoaW5nR2Vvc2VydmljZSkge1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbWF0Y2hpbmdHZW9zZXJ2aWNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRHZW9TZXJ2aWNlUmVnZXhlcygpOiBHZW9TZXJ2aWNlRGVmaW5pdGlvbltdIHtcclxuICAgIHJldHVybiAodGhpcy5yZWdleFNlcnZpY2UuZ2V0KCdnZW9zZXJ2aWNlJykgfHxcclxuICAgICAgW10pIGFzIEdlb1NlcnZpY2VEZWZpbml0aW9uW107XHJcbiAgfVxyXG59XHJcbiJdfQ==
63
+ }], ctorParameters: () => [{ type: i1.RegexService }] });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHlUeXBlRGV0ZWN0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3V0aWxzL3Byb3BlcnR5VHlwZURldGVjdG9yL3Byb3BlcnR5VHlwZURldGVjdG9yLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7OztBQU9oRCxNQUFNLE9BQU8sMkJBQTJCO0lBR2xCO0lBRmIsaUJBQWlCLEdBQTJCLEVBQUUsQ0FBQztJQUV0RCxZQUFvQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUM1QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7SUFDdkQsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFLO1FBQ25CLE9BQU8sT0FBTyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVPLEtBQUssQ0FBQyxLQUFLO1FBQ2pCLE1BQU0sS0FBSyxHQUFHLGNBQWMsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFLO1FBQ2hCLElBQUksWUFBWSxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLE9BQU87UUFDVCxDQUFDO1FBQ0QsS0FBSyxNQUFNLGVBQWUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNyRCxNQUFNLFdBQVcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEQsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQzVCLFlBQVksR0FBRyxJQUFJLENBQUM7Z0JBQ3BCLE1BQU07WUFDUixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxhQUFhLENBQ1gsR0FBVyxFQUNYLG1CQUE2QjtRQUU3QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzVCLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxrQkFBd0MsQ0FBQztRQUM3QyxLQUFLLE1BQU0sZUFBZSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3JELE1BQU0sV0FBVyxHQUFHLElBQUksTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDMUIsMENBQTBDO2dCQUMxQyxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQzFELGVBQWUsQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQ25ELENBQUM7Z0JBQ0Ysa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUN0RSxJQUFJLGtCQUFrQixFQUFFLENBQUM7b0JBQ3ZCLE1BQU07Z0JBQ1IsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxrQkFBa0IsQ0FBQztJQUM1QixDQUFDO0lBRU8sb0JBQW9CO1FBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7WUFDekMsRUFBRSxDQUEyQixDQUFDO0lBQ2xDLENBQUM7dUdBMURVLDJCQUEyQjsyR0FBM0IsMkJBQTJCLGNBRjFCLE1BQU07OzJGQUVQLDJCQUEyQjtrQkFIdkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBSZWdleFNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL3JlZ2V4JztcclxuXHJcbmltcG9ydCB7IEdlb1NlcnZpY2VEZWZpbml0aW9uIH0gZnJvbSAnLi9wcm9wZXJ0eVR5cGVEZXRlY3Rvci5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUHJvcGVydHlUeXBlRGV0ZWN0b3JTZXJ2aWNlIHtcclxuICBwdWJsaWMgZ2VvU2VydmljZVJlZ2V4ZXM6IEdlb1NlcnZpY2VEZWZpbml0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWdleFNlcnZpY2U6IFJlZ2V4U2VydmljZSkge1xyXG4gICAgdGhpcy5nZW9TZXJ2aWNlUmVnZXhlcyA9IHRoaXMuZ2V0R2VvU2VydmljZVJlZ2V4ZXMoKTtcclxuICB9XHJcblxyXG4gIGdldFByb3BlcnR5VHlwZSh2YWx1ZSkge1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNVcmwodmFsdWUpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHJlZ2V4ID0gL15odHRwcz86XFwvXFwvLztcclxuICAgIHJldHVybiByZWdleC50ZXN0KHZhbHVlLnRvU3RyaW5nKCkpO1xyXG4gIH1cclxuXHJcbiAgaXNHZW9TZXJ2aWNlKHZhbHVlKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgaXNHZW9TZXJ2aWNlID0gZmFsc2U7XHJcbiAgICBpZiAoIXRoaXMuaXNVcmwpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgZm9yIChjb25zdCBnZW9TZXJ2aWNlUmVnZXggb2YgdGhpcy5nZW9TZXJ2aWNlUmVnZXhlcykge1xyXG4gICAgICBjb25zdCBkb21haW5SZWdleCA9IG5ldyBSZWdFeHAoZ2VvU2VydmljZVJlZ2V4LnVybCk7XHJcbiAgICAgIGlmIChkb21haW5SZWdleC50ZXN0KHZhbHVlKSkge1xyXG4gICAgICAgIGlzR2VvU2VydmljZSA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBpc0dlb1NlcnZpY2U7XHJcbiAgfVxyXG5cclxuICBnZXRHZW9TZXJ2aWNlKFxyXG4gICAgdXJsOiBzdHJpbmcsXHJcbiAgICBhdmFpbGFibGVQcm9wZXJ0aWVzOiBzdHJpbmdbXVxyXG4gICk6IEdlb1NlcnZpY2VEZWZpbml0aW9uIHtcclxuICAgIGlmICghdGhpcy5pc0dlb1NlcnZpY2UodXJsKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBsZXQgbWF0Y2hpbmdHZW9zZXJ2aWNlOiBHZW9TZXJ2aWNlRGVmaW5pdGlvbjtcclxuICAgIGZvciAoY29uc3QgZ2VvU2VydmljZVJlZ2V4IG9mIHRoaXMuZ2VvU2VydmljZVJlZ2V4ZXMpIHtcclxuICAgICAgY29uc3QgZG9tYWluUmVnZXggPSBuZXcgUmVnRXhwKGdlb1NlcnZpY2VSZWdleC51cmwpO1xyXG4gICAgICBpZiAoZG9tYWluUmVnZXgudGVzdCh1cmwpKSB7XHJcbiAgICAgICAgLy8gcHJvdmlkaW5nIHRoZSB0aGUgZmlyc3QgbWF0Y2hpbmcgcmVnZXg7XHJcbiAgICAgICAgY29uc3QgbWF0Y2hpbmdQcm9wZXJ0aWVzID0gYXZhaWxhYmxlUHJvcGVydGllcy5maWx0ZXIoKHApID0+XHJcbiAgICAgICAgICBnZW9TZXJ2aWNlUmVnZXgucHJvcGVydGllc0ZvckxheWVyTmFtZS5pbmNsdWRlcyhwKVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgbWF0Y2hpbmdHZW9zZXJ2aWNlID0gbWF0Y2hpbmdQcm9wZXJ0aWVzID8gZ2VvU2VydmljZVJlZ2V4IDogdW5kZWZpbmVkO1xyXG4gICAgICAgIGlmIChtYXRjaGluZ0dlb3NlcnZpY2UpIHtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG1hdGNoaW5nR2Vvc2VydmljZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0R2VvU2VydmljZVJlZ2V4ZXMoKTogR2VvU2VydmljZURlZmluaXRpb25bXSB7XHJcbiAgICByZXR1cm4gKHRoaXMucmVnZXhTZXJ2aWNlLmdldCgnZ2Vvc2VydmljZScpIHx8XHJcbiAgICAgIFtdKSBhcyBHZW9TZXJ2aWNlRGVmaW5pdGlvbltdO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export * from './shared';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93a3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93a3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export * from './wkt.service';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93a3Qvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi93a3Quc2VydmljZSc7XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93a3Qvc2hhcmVkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi93a3Quc2VydmljZSc7XHJcbiJdfQ==
@@ -224,13 +224,13 @@ export class WktService {
224
224
  };
225
225
  }
226
226
  }
227
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WktService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
228
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WktService, providedIn: 'root' });
227
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: WktService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
228
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: WktService, providedIn: 'root' });
229
229
  }
230
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WktService, decorators: [{
230
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: WktService, decorators: [{
231
231
  type: Injectable,
232
232
  args: [{
233
233
  providedIn: 'root'
234
234
  }]
235
- }], ctorParameters: function () { return []; } });
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2t0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93a3Qvc2hhcmVkL3drdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxLQUFLLE1BQU0sZUFBZSxDQUFDO0FBQ2xDLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDOztBQUtsQyxNQUFNLE9BQU8sVUFBVTtJQUNyQixnQkFBZSxDQUFDO0lBRVQsWUFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsV0FBVztRQUMzQyxPQUFPLElBQUksS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUNsQyxjQUFjLEVBQUUsT0FBTztZQUN2QixpQkFBaUIsRUFBRSxXQUFXO1NBQy9CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDTSxXQUFXLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVO1FBQzNDLElBQUksYUFBYSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN2RSxhQUFhLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEUsTUFBTSxPQUFPLEdBQUc7UUFDWixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFD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SSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRTtZQUMzQixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1lBQzNCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDM0IsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRTtTQUM3QixDQUFDO1FBQ0YsTUFBTSxFQUFFLEdBQUc7WUFDVCxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUN2QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUN2QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1NBQzFCLENBQUM7UUFDRixNQUFNLGFBQWEsR0FBRztZQUNwQixDQUFDLEdBQUcsRUFBRSxHQUFH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Q0gsQ0FBQzt3R0ExUFUsVUFBVTs0R0FBVixVQUFVLGNBRlQsTUFBTTs7NEZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgb2xXS1QgZnJvbSAnb2wvZm9ybWF0L1dLVCc7XHJcbmltcG9ydCAqIGFzIG9scHJvaiBmcm9tICdvbC9wcm9qJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFdrdFNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgcHVibGljIHdrdFRvRmVhdHVyZSh3a3QsIHdrdFByb2osIGZlYXR1cmVQcm9qKSB7XHJcbiAgICByZXR1cm4gbmV3IG9sV0tUKCkucmVhZEZlYXR1cmUod2t0LCB7XHJcbiAgICAgIGRhdGFQcm9qZWN0aW9uOiB3a3RQcm9qLFxyXG4gICAgICBmZWF0dXJlUHJvamVjdGlvbjogZmVhdHVyZVByb2pcclxuICAgIH0pO1xyXG4gIH1cclxuICBwdWJsaWMgZXh0ZW50VG9Xa3QoZXBzZ1RPLCBleHRlbnQsIGV4dGVudFByb2opIHtcclxuICAgIGxldCBjdXJyZW50RXh0ZW50ID0gb2xwcm9qLnRyYW5zZm9ybUV4dGVudChleHRlbnQsIGV4dGVudFByb2osIGVwc2dUTyk7XHJcbiAgICBjdXJyZW50RXh0ZW50ID0gdGhpcy5yb3VuZENvb3JkaW5hdGVBcnJheShjdXJyZW50RXh0ZW50LCBlcHNnVE8sIDApO1xyXG4gICAgY29uc3Qgd2t0UG9seSA9IGBQT0xZR09OKChcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSkpYDtcclxuICAgIGNvbnN0IHdrdExpbmUgPSBgTElORVNUUklORyhcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSlgO1xyXG4gICAgY29uc3Qgd2t0TXVsdGlQb2ludHMgPSBgTVVMVElQT0lOVChcclxuICAgICAgICAke2V4dGVudFswXX0gJHtleHRlbnRbMV19LFxyXG4gICAgICAgICR7ZXh0ZW50WzBdfSAke2V4dGVudFszXX0sXHJcbiAgICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgICAke2V4dGVudFsyXX0gJHtleHRlbnRbMV19KWA7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB3a3RQb2x5LFxyXG4gICAgICB3a3RMaW5lLFxyXG4gICAgICB3a3RNdWx0aVBvaW50c1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcm91bmRDb29yZGluYXRlQXJyYXkoY29vcmRpbmF0ZUFycmF5LCBwcm9qZWN0aW9uLCBkZWNpbWFsID0gMCkge1xyXG4gICAgY29uc3QgbHByb2ogPSBvbHByb2ouZ2V0KHByb2plY3Rpb24pO1xyXG4gICAgY29uc3QgdW5pdHMgPSBscHJvai5nZXRVbml0cygpO1xyXG4gICAgY29uc3Qgb2xVbml0cyA9IFsnZnQnLCAnbScsICd1cy1mdCddO1xyXG4gICAgaWYgKG9sVW5pdHMuaW5kZXhPZih1bml0cykgIT09IC0xKSB7XHJcbiAgICAgIGNvb3JkaW5hdGVBcnJheSA9IHRoaXMucm91bmRBcnJheShjb29yZGluYXRlQXJyYXksIGRlY2ltYWwpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvb3JkaW5hdGVBcnJheTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcm91bmRBcnJheShhcnJheSwgZGVjaW1hbCA9IDApIHtcclxuICAgIGxldCB4ID0gMDtcclxuICAgIHdoaWxlICh4IDwgYXJyYXkubGVuZ3RoKSB7XHJcbiAgICAgIGFycmF5W3hdID0gYXJyYXlbeF0udG9GaXhlZChkZWNpbWFsKTtcclxuICAgICAgeCsrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGFycmF5O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNucmNUb1drdChzbnJjLCBlcHNnVE8pIHtcclxuICAgIHNucmMgPSBzbnJjLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBsZXQgd2t0UG9seTtcclxuICAgIGNvbnN0IGV3ID0ge1xyXG4gICAgICAxOiB7IGZyb206IC01NiwgdG86IC02NCB9LFxyXG4gICAgICAyOiB7IGZyb206IC02NCwgdG86IC03MiB9LFxyXG4gICAgICAzOiB7IGZyb206IC03MiwgdG86IC04MCB9LFxyXG4gICAgICA0OiB7IGZyb206IC04MCwgdG86IC04OCB9LFxyXG4gICAgICA1OiB7IGZyb206IC04OCwgdG86IC05NiB9LFxyXG4gICAgICA2OiB7IGZyb206IC05NiwgdG86IC0xMDQgfSxcclxuICAgICAgNzogeyBmcm9tOiAtMTA0LCB0bzogLTExMiB9LFxyXG4gICAgICA4OiB7IGZyb206IC0xMTIsIHRvOiAtMTIwIH0sXHJcbiAgICAgIDk6IHsgZnJvbTogLTEyMCwgdG86IC0xMjggfSxcclxuICAgICAgMTA6IHsgZnJvbTogLTEyOCwgdG86IC0xMzYgfVxyXG4gICAgfTtcclxuICAgIGNvbnN0IHNuID0ge1xyXG4gICAgICAxOiB7IGZyb206IDQ0LCB0bzogNDggfSxcclxuICAgICAgMjogeyBmcm9tOiA0OCwgdG86IDUyIH0sXHJcbiAgICAgIDM6IHsgZnJvbTogNTIsIHRvOiA1NiB9LFxyXG4gICAgICA0OiB7IGZyb206IDU2LCB0bzogNjAgfSxcclxuICAgICAgNTogeyBmcm9tOiA2MCwgdG86IDY0IH0sXHJcbiAgICAgIDY6IHsgZnJvbTogNjQsIHRvOiA2OCB9LFxyXG4gICAgICA3OiB7IGZyb206IDY4LCB0bzogNzIgfSxcclxuICAgICAgODogeyBmcm9tOiA3MiwgdG86IDc2IH0sXHJcbiAgICAgIDk6IHsgZnJvbTogNzYsIHRvOiAtMTI4IH1cclxuICAgIH07XHJcbiAgICBjb25zdCBzbnJjMjUwa0luZGV4ID0gW1xyXG4gICAgICBbJ20nLCAnbicsICdvJywgJ3AnXSxcclxuICAgICAgWydsJywgJ2snLCAnaicsICdpJ10sXHJcbiAgICAgIFsnZScsICdmJywgJ2cnLCAnaCddLFxyXG4gICAgICBbJ2QnLCAnYycsICdiJywgJ2EnXVxyXG4gICAgXTtcclxuXHJcbiAgICBjb25zdCBzbnJjNTBrSW5kZXggPSBbXHJcbiAgICAgIFsnMTMnLCAnMTQnLCAnMTUnLCAnMTYnXSxcclxuICAgICAgWycxMicsICcxMScsICcxMCcsICcwOSddLFxyXG4gICAgICBbJzA1JywgJzA2JywgJzA3JywgJzA4J10sXHJcbiAgICAgIFsnMDQnLCAnMDMnLCAnMDInLCAnMDEnXVxyXG4gICAgXTtcclxuICAgIGNvbnN0IGNoZWNrU05SQzUwayA9IC9cXGR7MiwzfVthLXBdWzAsMV1bMC05XS9naTtcclxuICAgIGNvbnN0IGNoZWNrU05SQzI1MGsgPSAvXFxkezIsM31bYS1wXS9naTtcclxuICAgIGNvbnN0IGNoZWNrU05SQzFtID0gL1xcZHsyLDN9L2dpO1xyXG5cclxuICAgIGxldCBzbnJjMW0gPSBmYWxzZTtcclxuICAgIGxldCBzbnJjMjUwayA9IGZhbHNlO1xyXG4gICAgbGV0IHNucmM1MGsgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoY2hlY2tTTlJDNTBrLnRlc3Qoc25yYykpIHtcclxuICAgICAgc25yYzUwayA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoY2hlY2tTTlJDMjUway50ZXN0KHNucmMpKSB7XHJcbiAgICAgICAgc25yYzI1MGsgPSB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmIChjaGVja1NOUkMxbS50ZXN0KHNucmMpKSB7XHJcbiAgICAgICAgICBzbnJjMW0gPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChzbnJjMW0pIHtcclxuICAgICAgc25yYyArPSAnYTAxJztcclxuICAgIH0gZWxzZSBpZiAoc25yYzI1MGspIHtcclxuICAgICAgc25yYyArPSAnMDEnO1xyXG4gICAgfVxyXG4gICAgaWYgKC9cXGR7MiwzfVthLXBdWzAsMV1bMC05XS9naS50ZXN0KHNucmMpKSB7XHJcbiAgICAgIGNvbnN0IHJlZ2V4MW0gPSAvKD89W2EtcF0pL2dpO1xyXG4gICAgICBjb25zdCBhcjFtID0gc25yYy5zcGxpdChyZWdleDFtKTtcclxuICAgICAgY29uc3QgcGFydDFtID0gYXIxbVswXTtcclxuICAgICAgY29uc3QgcGFydDI1MGsgPSBhcjFtWzFdWzBdO1xyXG4gICAgICBjb25zdCBwYXJ0NTBrID0gYXIxbVsxXS5zcGxpdChwYXJ0MjUwaylbMV07XHJcbiAgICAgIGxldCBzZXBhcmF0b3IgPSAxO1xyXG4gICAgICBpZiAocGFydDFtLmxlbmd0aCA9PT0gMykge1xyXG4gICAgICAgIHNlcGFyYXRvciA9IDI7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcGFydEVXID0gcGFydDFtLnN1YnN0cmluZygwLCBzZXBhcmF0b3IpO1xyXG4gICAgICBjb25zdCBwYXJ0U04gPSBwYXJ0MW0uc3Vic3RyaW5nKHNlcGFyYXRvcik7XHJcbiAgICAgIGNvbnN0IHVuaXQxbUVXID0gODtcclxuICAgICAgY29uc3QgdW5pdDFtU04gPSA0O1xyXG4gICAgICBjb25zdCB1bml0MjUwa0VXID0gMjtcclxuICAgICAgY29uc3QgdW5pdDI1MGtTTiA9IDE7XHJcbiAgICAgIGNvbnN0IHVuaXQ1MGtFVyA9IDAuNTtcclxuICAgICAgY29uc3QgdW5pdDUwa1NOID0gMC4yNTtcclxuICAgICAgbGV0IGluZGV4MjUwa0VXID0gMDtcclxuICAgICAgbGV0IGluZGV4MjUwa1NOID0gMDtcclxuICAgICAgbGV0IGluZGV4NTBrRVcgPSAwO1xyXG4gICAgICBsZXQgaW5kZXg1MGtTTiA9IDA7XHJcbiAgICAgIHNucmMyNTBrSW5kZXguZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG4gICAgICAgIGlmIChlbGVtZW50LmluZGV4T2YocGFydDI1MGspICE9PSAtMSkge1xyXG4gICAgICAgICAgaW5kZXgyNTBrU04gPSBzbnJjMjUwa0luZGV4LmluZGV4T2YoZWxlbWVudCk7XHJcbiAgICAgICAgICBpbmRleDI1MGtFVyA9IGVsZW1lbnQuaW5kZXhPZihwYXJ0MjUwayk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgc25yYzUwa0luZGV4LmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuICAgICAgICBpZiAoZWxlbWVudC5pbmRleE9mKHBhcnQ1MGspICE9PSAtMSkge1xyXG4gICAgICAgICAgaW5kZXg1MGtTTiA9IHNucmM1MGtJbmRleC5pbmRleE9mKGVsZW1lbnQpO1xyXG4gICAgICAgICAgaW5kZXg1MGtFVyA9IGVsZW1lbnQuaW5kZXhPZihwYXJ0NTBrKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgbGV0IGluY3JlbWVudDI1MGtFVyA9IDA7XHJcbiAgICAgIGxldCBpbmNyZW1lbnQyNTBrU04gPSAwO1xyXG4gICAgICBsZXQgaW5jcmVtZW50NTBrRVcgPSAwO1xyXG4gICAgICBsZXQgaW5jcmVtZW50NTBrU04gPSAwO1xyXG4gICAgICBsZXQgdW5pdFBlclR5cGVFVyA9IHVuaXQxbUVXO1xyXG4gICAgICBsZXQgdW5pdFBlclR5cGVTTiA9IHVuaXQxbVNOO1xyXG4gICAgICBpZiAoc25yYzI1MGspIHtcclxuICAgICAgICBpbmNyZW1lbnQyNTBrRVcgPSBpbmRleDI1MGtFVyAqIHVuaXQyNTBrRVc7XHJcbiAgICAgICAgaW5jcmVtZW50MjUwa1NOID0gaW5kZXgyNTBrU04gKiB1bml0MjUwa1NOO1xyXG4gICAgICAgIGluY3JlbWVudDUwa0VXID0gMDtcclxuICAgICAgICBpbmNyZW1lbnQ1MGtTTiA9IDA7XHJcbiAgICAgICAgdW5pdFBlclR5cGVFVyA9IHVuaXQyNTBrRVc7XHJcbiAgICAgICAgdW5pdFBlclR5cGVTTiA9IHVuaXQyNTBrU047XHJcbiAgICAgIH0gZWxzZSBpZiAoc25yYzUwaykge1xyXG4gICAgICAgIGluY3JlbWVudDI1MGtFVyA9IGluZGV4MjUwa0VXICogdW5pdDI1MGtFVztcclxuICAgICAgICBpbmNyZW1lbnQyNTBrU04gPSBpbmRleDI1MGtTTiAqIHVuaXQyNTBrU047XHJcbiAgICAgICAgaW5jcmVtZW50NTBrRVcgPSBpbmRleDUwa0VXICogdW5pdDUwa0VXO1xyXG4gICAgICAgIGluY3JlbWVudDUwa1NOID0gaW5kZXg1MGtTTiAqIHVuaXQ1MGtTTjtcclxuICAgICAgICB1bml0UGVyVHlwZUVXID0gdW5pdDUwa0VXO1xyXG4gICAgICAgIHVuaXRQZXJUeXBlU04gPSB1bml0NTBrU047XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGNvb3JkOiB7IHVsPzogYW55OyBscj86IGFueTsgdXI/OiBhbnk7IGxsPzogYW55IH0gPSB7XHJcbiAgICAgICAgdWw6IFtcclxuICAgICAgICAgIGV3W3BhcnRFV10udG8gKyBpbmNyZW1lbnQyNTBrRVcgKyBpbmNyZW1lbnQ1MGtFVyxcclxuICAgICAgICAgIHNuW3BhcnRTTl0udG8gLSBpbmNyZW1lbnQyNTBrU04gLSBpbmNyZW1lbnQ1MGtTTlxyXG4gICAgICAgIF1cclxuICAgICAgfTtcclxuXHJcbiAgICAgIGNvb3JkLmxyID0gW2Nvb3JkLnVsWzBdICsgdW5pdFBlclR5cGVFVywgY29vcmQudWxbMV0gLSB1bml0UGVyVHlwZVNOXTtcclxuICAgICAgY29vcmQudXIgPSBbY29vcmQudWxbMF0sIGNvb3JkLnVsWzFdIC0gdW5pdFBlclR5cGVTTl07XHJcbiAgICAgIGNvb3JkLmxsID0gW2Nvb3JkLnVsWzBdICsgdW5pdFBlclR5cGVFVywgY29vcmQudWxbMV1dO1xyXG5cclxuICAgICAgY29vcmQudWwgPSBvbHByb2oudHJhbnNmb3JtKFxyXG4gICAgICAgIFtjb29yZC51bFswXSwgY29vcmQudWxbMV1dLFxyXG4gICAgICAgICdFUFNHOjQzMjYnLFxyXG4gICAgICAgIGVwc2dUT1xyXG4gICAgICApO1xyXG4gICAgICBjb29yZC5sciA9IG9scHJvai50cmFuc2Zvcm0oXHJcbiAgICAgICAgW2Nvb3JkLmxyWzBdLCBjb29yZC5sclsxXV0sXHJcbiAgICAgICAgJ0VQU0c6NDMyNicsXHJcbiAgICAgICAgZXBzZ1RPXHJcbiAgICAgICk7XHJcbiAgICAgIGNvb3JkLnVyID0gb2xwcm9qLnRyYW5zZm9ybShcclxuICAgICAgICBbY29vcmQudXJbMF0sIGNvb3JkLnVyWzFdXSxcclxuICAgICAgICAnRVBTRzo0MzI2JyxcclxuICAgICAgICBlcHNnVE9cclxuICAgICAgKTtcclxuICAgICAgY29vcmQubGwgPSBvbHByb2oudHJhbnNmb3JtKFxyXG4gICAgICAgIFtjb29yZC5sbFswXSwgY29vcmQubGxbMV1dLFxyXG4gICAgICAgICdFUFNHOjQzMjYnLFxyXG4gICAgICAgIGVwc2dUT1xyXG4gICAgICApO1xyXG5cclxuICAgICAgLy8gUm91bmRlZCBjb29yZGluYXRlIHRvIHNob3J0ZW4gdXJsIGluIGdldFxyXG4gICAgICBjb29yZC51bCA9IHRoaXMucm91bmRDb29yZGluYXRlQXJyYXkoY29vcmQudWwsIGVwc2dUTywgMCk7XHJcbiAgICAgIGNvb3JkLmxyID0gdGhpcy5yb3VuZENvb3JkaW5hdGVBcnJheShjb29yZC5sciwgZXBzZ1RPLCAwKTtcclxuICAgICAgY29vcmQudXIgPSB0aGlzLnJvdW5kQ29vcmRpbmF0ZUFycmF5KGNvb3JkLnVyLCBlcHNnVE8sIDApO1xyXG4gICAgICBjb29yZC5sbCA9IHRoaXMucm91bmRDb29yZGluYXRlQXJyYXkoY29vcmQubGwsIGVwc2dUTywgMCk7XHJcblxyXG4gICAgICB3a3RQb2x5ID1cclxuICAgICAgICAnUE9MWUdPTigoJyArXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgY29vcmQudWwuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQudXIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubHIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubGwuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQudWwuam9pbignICcpXHJcbiAgICAgICAgXS5qb2luKCcsJykgK1xyXG4gICAgICAgICcpKSc7XHJcbiAgICAgIGNvbnN0IHdrdExpbmUgPVxyXG4gICAgICAgICdMSU5FU1RSSU5HKCcgK1xyXG4gICAgICAgIFtcclxuICAgICAgICAgIGNvb3JkLnVsLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLnVyLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLmxyLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLmxsLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLnVsLmpvaW4oJyAnKVxyXG4gICAgICAgIF0uam9pbignLCcpICtcclxuICAgICAgICAnKSc7XHJcblxyXG4gICAgICBjb25zdCB3a3RNdWx0aVBvaW50cyA9XHJcbiAgICAgICAgJ01VTFRJUE9JTlQoJyArXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgY29vcmQudWwuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQudXIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubHIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubGwuam9pbignICcpXHJcbiAgICAgICAgXS5qb2luKCcsJykgK1xyXG4gICAgICAgICcpJztcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICB3a3RQb2x5LFxyXG4gICAgICAgIHdrdExpbmUsXHJcbiAgICAgICAgd2t0TXVsdGlQb2ludHNcclxuICAgICAgfTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
235
+ }], ctorParameters: () => [] });
236
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2t0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93a3Qvc2hhcmVkL3drdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxLQUFLLE1BQU0sZUFBZSxDQUFDO0FBQ2xDLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDOztBQUtsQyxNQUFNLE9BQU8sVUFBVTtJQUNyQixnQkFBZSxDQUFDO0lBRVQsWUFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsV0FBVztRQUMzQyxPQUFPLElBQUksS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRTtZQUNsQyxjQUFjLEVBQUUsT0FBTztZQUN2QixpQkFBaUIsRUFBRSxXQUFXO1NBQy9CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDTSxXQUFXLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxVQUFVO1FBQzNDLElBQUksYUFBYSxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN2RSxhQUFhLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEUsTUFBTSxPQUFPLEdBQUc7UUFDWixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFD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QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1lBQzNCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDM0IsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDLEdBQUcsRUFBRTtZQUMzQixFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFO1NBQzdCLENBQUM7UUFDRixNQUFNLEVBQUUsR0FBRztZQUNULENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUN2QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUN2QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3ZCLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUN2QixDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUU7WUFDdkIsQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUU7U0FDMUIsQ0FBQztRQUNGLE1BQU0sYUFBYSxHQUFHO1lBQ3BC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S0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2lCQUNuQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7Z0JBQ1gsR0FBRyxDQUFDO1lBQ04sT0FBTztnQkFDTCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsY0FBYzthQUNmLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQzt1R0ExUFUsVUFBVTsyR0FBVixVQUFVLGNBRlQsTUFBTTs7MkZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgb2xXS1QgZnJvbSAnb2wvZm9ybWF0L1dLVCc7XHJcbmltcG9ydCAqIGFzIG9scHJvaiBmcm9tICdvbC9wcm9qJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFdrdFNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgcHVibGljIHdrdFRvRmVhdHVyZSh3a3QsIHdrdFByb2osIGZlYXR1cmVQcm9qKSB7XHJcbiAgICByZXR1cm4gbmV3IG9sV0tUKCkucmVhZEZlYXR1cmUod2t0LCB7XHJcbiAgICAgIGRhdGFQcm9qZWN0aW9uOiB3a3RQcm9qLFxyXG4gICAgICBmZWF0dXJlUHJvamVjdGlvbjogZmVhdHVyZVByb2pcclxuICAgIH0pO1xyXG4gIH1cclxuICBwdWJsaWMgZXh0ZW50VG9Xa3QoZXBzZ1RPLCBleHRlbnQsIGV4dGVudFByb2opIHtcclxuICAgIGxldCBjdXJyZW50RXh0ZW50ID0gb2xwcm9qLnRyYW5zZm9ybUV4dGVudChleHRlbnQsIGV4dGVudFByb2osIGVwc2dUTyk7XHJcbiAgICBjdXJyZW50RXh0ZW50ID0gdGhpcy5yb3VuZENvb3JkaW5hdGVBcnJheShjdXJyZW50RXh0ZW50LCBlcHNnVE8sIDApO1xyXG4gICAgY29uc3Qgd2t0UG9seSA9IGBQT0xZR09OKChcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSkpYDtcclxuICAgIGNvbnN0IHdrdExpbmUgPSBgTElORVNUUklORyhcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzFdfSxcclxuICAgICAgJHtleHRlbnRbMF19ICR7ZXh0ZW50WzFdfSlgO1xyXG4gICAgY29uc3Qgd2t0TXVsdGlQb2ludHMgPSBgTVVMVElQT0lOVChcclxuICAgICAgICAke2V4dGVudFswXX0gJHtleHRlbnRbMV19LFxyXG4gICAgICAgICR7ZXh0ZW50WzBdfSAke2V4dGVudFszXX0sXHJcbiAgICAgICAgJHtleHRlbnRbMl19ICR7ZXh0ZW50WzNdfSxcclxuICAgICAgICAke2V4dGVudFsyXX0gJHtleHRlbnRbMV19KWA7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB3a3RQb2x5LFxyXG4gICAgICB3a3RMaW5lLFxyXG4gICAgICB3a3RNdWx0aVBvaW50c1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcm91bmRDb29yZGluYXRlQXJyYXkoY29vcmRpbmF0ZUFycmF5LCBwcm9qZWN0aW9uLCBkZWNpbWFsID0gMCkge1xyXG4gICAgY29uc3QgbHByb2ogPSBvbHByb2ouZ2V0KHByb2plY3Rpb24pO1xyXG4gICAgY29uc3QgdW5pdHMgPSBscHJvai5nZXRVbml0cygpO1xyXG4gICAgY29uc3Qgb2xVbml0cyA9IFsnZnQnLCAnbScsICd1cy1mdCddO1xyXG4gICAgaWYgKG9sVW5pdHMuaW5kZXhPZih1bml0cykgIT09IC0xKSB7XHJcbiAgICAgIGNvb3JkaW5hdGVBcnJheSA9IHRoaXMucm91bmRBcnJheShjb29yZGluYXRlQXJyYXksIGRlY2ltYWwpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvb3JkaW5hdGVBcnJheTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcm91bmRBcnJheShhcnJheSwgZGVjaW1hbCA9IDApIHtcclxuICAgIGxldCB4ID0gMDtcclxuICAgIHdoaWxlICh4IDwgYXJyYXkubGVuZ3RoKSB7XHJcbiAgICAgIGFycmF5W3hdID0gYXJyYXlbeF0udG9GaXhlZChkZWNpbWFsKTtcclxuICAgICAgeCsrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGFycmF5O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNucmNUb1drdChzbnJjLCBlcHNnVE8pIHtcclxuICAgIHNucmMgPSBzbnJjLnRvTG93ZXJDYXNlKCk7XHJcbiAgICBsZXQgd2t0UG9seTtcclxuICAgIGNvbnN0IGV3ID0ge1xyXG4gICAgICAxOiB7IGZyb206IC01NiwgdG86IC02NCB9LFxyXG4gICAgICAyOiB7IGZyb206IC02NCwgdG86IC03MiB9LFxyXG4gICAgICAzOiB7IGZyb206IC03MiwgdG86IC04MCB9LFxyXG4gICAgICA0OiB7IGZyb206IC04MCwgdG86IC04OCB9LFxyXG4gICAgICA1OiB7IGZyb206IC04OCwgdG86IC05NiB9LFxyXG4gICAgICA2OiB7IGZyb206IC05NiwgdG86IC0xMDQgfSxcclxuICAgICAgNzogeyBmcm9tOiAtMTA0LCB0bzogLTExMiB9LFxyXG4gICAgICA4OiB7IGZyb206IC0xMTIsIHRvOiAtMTIwIH0sXHJcbiAgICAgIDk6IHsgZnJvbTogLTEyMCwgdG86IC0xMjggfSxcclxuICAgICAgMTA6IHsgZnJvbTogLTEyOCwgdG86IC0xMzYgfVxyXG4gICAgfTtcclxuICAgIGNvbnN0IHNuID0ge1xyXG4gICAgICAxOiB7IGZyb206IDQ0LCB0bzogNDggfSxcclxuICAgICAgMjogeyBmcm9tOiA0OCwgdG86IDUyIH0sXHJcbiAgICAgIDM6IHsgZnJvbTogNTIsIHRvOiA1NiB9LFxyXG4gICAgICA0OiB7IGZyb206IDU2LCB0bzogNjAgfSxcclxuICAgICAgNTogeyBmcm9tOiA2MCwgdG86IDY0IH0sXHJcbiAgICAgIDY6IHsgZnJvbTogNjQsIHRvOiA2OCB9LFxyXG4gICAgICA3OiB7IGZyb206IDY4LCB0bzogNzIgfSxcclxuICAgICAgODogeyBmcm9tOiA3MiwgdG86IDc2IH0sXHJcbiAgICAgIDk6IHsgZnJvbTogNzYsIHRvOiAtMTI4IH1cclxuICAgIH07XHJcbiAgICBjb25zdCBzbnJjMjUwa0luZGV4ID0gW1xyXG4gICAgICBbJ20nLCAnbicsICdvJywgJ3AnXSxcclxuICAgICAgWydsJywgJ2snLCAnaicsICdpJ10sXHJcbiAgICAgIFsnZScsICdmJywgJ2cnLCAnaCddLFxyXG4gICAgICBbJ2QnLCAnYycsICdiJywgJ2EnXVxyXG4gICAgXTtcclxuXHJcbiAgICBjb25zdCBzbnJjNTBrSW5kZXggPSBbXHJcbiAgICAgIFsnMTMnLCAnMTQnLCAnMTUnLCAnMTYnXSxcclxuICAgICAgWycxMicsICcxMScsICcxMCcsICcwOSddLFxyXG4gICAgICBbJzA1JywgJzA2JywgJzA3JywgJzA4J10sXHJcbiAgICAgIFsnMDQnLCAnMDMnLCAnMDInLCAnMDEnXVxyXG4gICAgXTtcclxuICAgIGNvbnN0IGNoZWNrU05SQzUwayA9IC9cXGR7MiwzfVthLXBdWzAsMV1bMC05XS9naTtcclxuICAgIGNvbnN0IGNoZWNrU05SQzI1MGsgPSAvXFxkezIsM31bYS1wXS9naTtcclxuICAgIGNvbnN0IGNoZWNrU05SQzFtID0gL1xcZHsyLDN9L2dpO1xyXG5cclxuICAgIGxldCBzbnJjMW0gPSBmYWxzZTtcclxuICAgIGxldCBzbnJjMjUwayA9IGZhbHNlO1xyXG4gICAgbGV0IHNucmM1MGsgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoY2hlY2tTTlJDNTBrLnRlc3Qoc25yYykpIHtcclxuICAgICAgc25yYzUwayA9IHRydWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoY2hlY2tTTlJDMjUway50ZXN0KHNucmMpKSB7XHJcbiAgICAgICAgc25yYzI1MGsgPSB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmIChjaGVja1NOUkMxbS50ZXN0KHNucmMpKSB7XHJcbiAgICAgICAgICBzbnJjMW0gPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChzbnJjMW0pIHtcclxuICAgICAgc25yYyArPSAnYTAxJztcclxuICAgIH0gZWxzZSBpZiAoc25yYzI1MGspIHtcclxuICAgICAgc25yYyArPSAnMDEnO1xyXG4gICAgfVxyXG4gICAgaWYgKC9cXGR7MiwzfVthLXBdWzAsMV1bMC05XS9naS50ZXN0KHNucmMpKSB7XHJcbiAgICAgIGNvbnN0IHJlZ2V4MW0gPSAvKD89W2EtcF0pL2dpO1xyXG4gICAgICBjb25zdCBhcjFtID0gc25yYy5zcGxpdChyZWdleDFtKTtcclxuICAgICAgY29uc3QgcGFydDFtID0gYXIxbVswXTtcclxuICAgICAgY29uc3QgcGFydDI1MGsgPSBhcjFtWzFdWzBdO1xyXG4gICAgICBjb25zdCBwYXJ0NTBrID0gYXIxbVsxXS5zcGxpdChwYXJ0MjUwaylbMV07XHJcbiAgICAgIGxldCBzZXBhcmF0b3IgPSAxO1xyXG4gICAgICBpZiAocGFydDFtLmxlbmd0aCA9PT0gMykge1xyXG4gICAgICAgIHNlcGFyYXRvciA9IDI7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcGFydEVXID0gcGFydDFtLnN1YnN0cmluZygwLCBzZXBhcmF0b3IpO1xyXG4gICAgICBjb25zdCBwYXJ0U04gPSBwYXJ0MW0uc3Vic3RyaW5nKHNlcGFyYXRvcik7XHJcbiAgICAgIGNvbnN0IHVuaXQxbUVXID0gODtcclxuICAgICAgY29uc3QgdW5pdDFtU04gPSA0O1xyXG4gICAgICBjb25zdCB1bml0MjUwa0VXID0gMjtcclxuICAgICAgY29uc3QgdW5pdDI1MGtTTiA9IDE7XHJcbiAgICAgIGNvbnN0IHVuaXQ1MGtFVyA9IDAuNTtcclxuICAgICAgY29uc3QgdW5pdDUwa1NOID0gMC4yNTtcclxuICAgICAgbGV0IGluZGV4MjUwa0VXID0gMDtcclxuICAgICAgbGV0IGluZGV4MjUwa1NOID0gMDtcclxuICAgICAgbGV0IGluZGV4NTBrRVcgPSAwO1xyXG4gICAgICBsZXQgaW5kZXg1MGtTTiA9IDA7XHJcbiAgICAgIHNucmMyNTBrSW5kZXguZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG4gICAgICAgIGlmIChlbGVtZW50LmluZGV4T2YocGFydDI1MGspICE9PSAtMSkge1xyXG4gICAgICAgICAgaW5kZXgyNTBrU04gPSBzbnJjMjUwa0luZGV4LmluZGV4T2YoZWxlbWVudCk7XHJcbiAgICAgICAgICBpbmRleDI1MGtFVyA9IGVsZW1lbnQuaW5kZXhPZihwYXJ0MjUwayk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgc25yYzUwa0luZGV4LmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuICAgICAgICBpZiAoZWxlbWVudC5pbmRleE9mKHBhcnQ1MGspICE9PSAtMSkge1xyXG4gICAgICAgICAgaW5kZXg1MGtTTiA9IHNucmM1MGtJbmRleC5pbmRleE9mKGVsZW1lbnQpO1xyXG4gICAgICAgICAgaW5kZXg1MGtFVyA9IGVsZW1lbnQuaW5kZXhPZihwYXJ0NTBrKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgbGV0IGluY3JlbWVudDI1MGtFVyA9IDA7XHJcbiAgICAgIGxldCBpbmNyZW1lbnQyNTBrU04gPSAwO1xyXG4gICAgICBsZXQgaW5jcmVtZW50NTBrRVcgPSAwO1xyXG4gICAgICBsZXQgaW5jcmVtZW50NTBrU04gPSAwO1xyXG4gICAgICBsZXQgdW5pdFBlclR5cGVFVyA9IHVuaXQxbUVXO1xyXG4gICAgICBsZXQgdW5pdFBlclR5cGVTTiA9IHVuaXQxbVNOO1xyXG4gICAgICBpZiAoc25yYzI1MGspIHtcclxuICAgICAgICBpbmNyZW1lbnQyNTBrRVcgPSBpbmRleDI1MGtFVyAqIHVuaXQyNTBrRVc7XHJcbiAgICAgICAgaW5jcmVtZW50MjUwa1NOID0gaW5kZXgyNTBrU04gKiB1bml0MjUwa1NOO1xyXG4gICAgICAgIGluY3JlbWVudDUwa0VXID0gMDtcclxuICAgICAgICBpbmNyZW1lbnQ1MGtTTiA9IDA7XHJcbiAgICAgICAgdW5pdFBlclR5cGVFVyA9IHVuaXQyNTBrRVc7XHJcbiAgICAgICAgdW5pdFBlclR5cGVTTiA9IHVuaXQyNTBrU047XHJcbiAgICAgIH0gZWxzZSBpZiAoc25yYzUwaykge1xyXG4gICAgICAgIGluY3JlbWVudDI1MGtFVyA9IGluZGV4MjUwa0VXICogdW5pdDI1MGtFVztcclxuICAgICAgICBpbmNyZW1lbnQyNTBrU04gPSBpbmRleDI1MGtTTiAqIHVuaXQyNTBrU047XHJcbiAgICAgICAgaW5jcmVtZW50NTBrRVcgPSBpbmRleDUwa0VXICogdW5pdDUwa0VXO1xyXG4gICAgICAgIGluY3JlbWVudDUwa1NOID0gaW5kZXg1MGtTTiAqIHVuaXQ1MGtTTjtcclxuICAgICAgICB1bml0UGVyVHlwZUVXID0gdW5pdDUwa0VXO1xyXG4gICAgICAgIHVuaXRQZXJUeXBlU04gPSB1bml0NTBrU047XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbnN0IGNvb3JkOiB7IHVsPzogYW55OyBscj86IGFueTsgdXI/OiBhbnk7IGxsPzogYW55IH0gPSB7XHJcbiAgICAgICAgdWw6IFtcclxuICAgICAgICAgIGV3W3BhcnRFV10udG8gKyBpbmNyZW1lbnQyNTBrRVcgKyBpbmNyZW1lbnQ1MGtFVyxcclxuICAgICAgICAgIHNuW3BhcnRTTl0udG8gLSBpbmNyZW1lbnQyNTBrU04gLSBpbmNyZW1lbnQ1MGtTTlxyXG4gICAgICAgIF1cclxuICAgICAgfTtcclxuXHJcbiAgICAgIGNvb3JkLmxyID0gW2Nvb3JkLnVsWzBdICsgdW5pdFBlclR5cGVFVywgY29vcmQudWxbMV0gLSB1bml0UGVyVHlwZVNOXTtcclxuICAgICAgY29vcmQudXIgPSBbY29vcmQudWxbMF0sIGNvb3JkLnVsWzFdIC0gdW5pdFBlclR5cGVTTl07XHJcbiAgICAgIGNvb3JkLmxsID0gW2Nvb3JkLnVsWzBdICsgdW5pdFBlclR5cGVFVywgY29vcmQudWxbMV1dO1xyXG5cclxuICAgICAgY29vcmQudWwgPSBvbHByb2oudHJhbnNmb3JtKFxyXG4gICAgICAgIFtjb29yZC51bFswXSwgY29vcmQudWxbMV1dLFxyXG4gICAgICAgICdFUFNHOjQzMjYnLFxyXG4gICAgICAgIGVwc2dUT1xyXG4gICAgICApO1xyXG4gICAgICBjb29yZC5sciA9IG9scHJvai50cmFuc2Zvcm0oXHJcbiAgICAgICAgW2Nvb3JkLmxyWzBdLCBjb29yZC5sclsxXV0sXHJcbiAgICAgICAgJ0VQU0c6NDMyNicsXHJcbiAgICAgICAgZXBzZ1RPXHJcbiAgICAgICk7XHJcbiAgICAgIGNvb3JkLnVyID0gb2xwcm9qLnRyYW5zZm9ybShcclxuICAgICAgICBbY29vcmQudXJbMF0sIGNvb3JkLnVyWzFdXSxcclxuICAgICAgICAnRVBTRzo0MzI2JyxcclxuICAgICAgICBlcHNnVE9cclxuICAgICAgKTtcclxuICAgICAgY29vcmQubGwgPSBvbHByb2oudHJhbnNmb3JtKFxyXG4gICAgICAgIFtjb29yZC5sbFswXSwgY29vcmQubGxbMV1dLFxyXG4gICAgICAgICdFUFNHOjQzMjYnLFxyXG4gICAgICAgIGVwc2dUT1xyXG4gICAgICApO1xyXG5cclxuICAgICAgLy8gUm91bmRlZCBjb29yZGluYXRlIHRvIHNob3J0ZW4gdXJsIGluIGdldFxyXG4gICAgICBjb29yZC51bCA9IHRoaXMucm91bmRDb29yZGluYXRlQXJyYXkoY29vcmQudWwsIGVwc2dUTywgMCk7XHJcbiAgICAgIGNvb3JkLmxyID0gdGhpcy5yb3VuZENvb3JkaW5hdGVBcnJheShjb29yZC5sciwgZXBzZ1RPLCAwKTtcclxuICAgICAgY29vcmQudXIgPSB0aGlzLnJvdW5kQ29vcmRpbmF0ZUFycmF5KGNvb3JkLnVyLCBlcHNnVE8sIDApO1xyXG4gICAgICBjb29yZC5sbCA9IHRoaXMucm91bmRDb29yZGluYXRlQXJyYXkoY29vcmQubGwsIGVwc2dUTywgMCk7XHJcblxyXG4gICAgICB3a3RQb2x5ID1cclxuICAgICAgICAnUE9MWUdPTigoJyArXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgY29vcmQudWwuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQudXIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubHIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubGwuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQudWwuam9pbignICcpXHJcbiAgICAgICAgXS5qb2luKCcsJykgK1xyXG4gICAgICAgICcpKSc7XHJcbiAgICAgIGNvbnN0IHdrdExpbmUgPVxyXG4gICAgICAgICdMSU5FU1RSSU5HKCcgK1xyXG4gICAgICAgIFtcclxuICAgICAgICAgIGNvb3JkLnVsLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLnVyLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLmxyLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLmxsLmpvaW4oJyAnKSxcclxuICAgICAgICAgIGNvb3JkLnVsLmpvaW4oJyAnKVxyXG4gICAgICAgIF0uam9pbignLCcpICtcclxuICAgICAgICAnKSc7XHJcblxyXG4gICAgICBjb25zdCB3a3RNdWx0aVBvaW50cyA9XHJcbiAgICAgICAgJ01VTFRJUE9JTlQoJyArXHJcbiAgICAgICAgW1xyXG4gICAgICAgICAgY29vcmQudWwuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQudXIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubHIuam9pbignICcpLFxyXG4gICAgICAgICAgY29vcmQubGwuam9pbignICcpXHJcbiAgICAgICAgXS5qb2luKCcsJykgK1xyXG4gICAgICAgICcpJztcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICB3a3RQb2x5LFxyXG4gICAgICAgIHdrdExpbmUsXHJcbiAgICAgICAgd2t0TXVsdGlQb2ludHNcclxuICAgICAgfTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -1,5 +1,8 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
+ /**
4
+ * @deprecated UNUSED
5
+ */
3
6
  export class IgoWktModule {
4
7
  static forRoot() {
5
8
  return {
@@ -7,11 +10,11 @@ export class IgoWktModule {
7
10
  providers: []
8
11
  };
9
12
  }
10
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoWktModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: IgoWktModule });
12
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoWktModule });
13
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: IgoWktModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.4", ngImport: i0, type: IgoWktModule });
15
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: IgoWktModule });
13
16
  }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoWktModule, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: IgoWktModule, decorators: [{
15
18
  type: NgModule,
16
19
  args: [{
17
20
  imports: [],
@@ -19,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
19
22
  declarations: []
20
23
  }]
21
24
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2t0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3drdC93a3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU85RCxNQUFNLE9BQU8sWUFBWTtJQUN2QixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsWUFBWTtZQUN0QixTQUFTLEVBQUUsRUFBRTtTQUNkLENBQUM7SUFDSixDQUFDO3dHQU5VLFlBQVk7eUdBQVosWUFBWTt5R0FBWixZQUFZOzs0RkFBWixZQUFZO2tCQUx4QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxFQUFFO29CQUNYLE9BQU8sRUFBRSxFQUFFO29CQUNYLFlBQVksRUFBRSxFQUFFO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtdLFxyXG4gIGV4cG9ydHM6IFtdLFxyXG4gIGRlY2xhcmF0aW9uczogW11cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb1drdE1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxJZ29Xa3RNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBJZ29Xa3RNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW11cclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2t0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3drdC93a3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUU5RDs7R0FFRztBQU1ILE1BQU0sT0FBTyxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQztJQUNKLENBQUM7dUdBTlUsWUFBWTt3R0FBWixZQUFZO3dHQUFaLFlBQVk7OzJGQUFaLFlBQVk7a0JBTHhCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLEVBQUU7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8qKlxyXG4gKiBAZGVwcmVjYXRlZCBVTlVTRURcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW10sXHJcbiAgZXhwb3J0czogW10sXHJcbiAgZGVjbGFyYXRpb25zOiBbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWdvV2t0TW9kdWxlIHtcclxuICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPElnb1drdE1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IElnb1drdE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXVxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,9 +1,10 @@
1
1
  import { Component, Inject } from '@angular/core';
2
- import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
3
- import { LanguageService } from '@igo2/core';
2
+ import { MatButtonModule } from '@angular/material/button';
3
+ import { MAT_DIALOG_DATA, MatDialogActions, MatDialogContent, MatDialogRef } from '@angular/material/dialog';
4
+ import { LanguageService } from '@igo2/core/language';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/material/dialog";
6
- import * as i2 from "@igo2/core";
7
+ import * as i2 from "@igo2/core/language";
7
8
  import * as i3 from "@angular/material/button";
8
9
  export class ConfirmationPopupComponent {
9
10
  dialogRef;
@@ -22,14 +23,14 @@ export class ConfirmationPopupComponent {
22
23
  this.data.cancel = false;
23
24
  this.dialogRef.close(this.data.cancel);
24
25
  }
25
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfirmationPopupComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.LanguageService }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
26
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ConfirmationPopupComponent, selector: "igo-confirmation-popup-component", ngImport: i0, template: "<div mat-dialog-content>\r\n <p class=\"mat-typography\">\r\n {{\r\n data.type === 'add'\r\n ? languageService.translate.instant('igo.geo.workspace.addConfirmation')\r\n : languageService.translate.instant(\r\n 'igo.geo.workspace.deleteConfirmation'\r\n )\r\n }}\r\n </p>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-raised-button color=\"primary\" (click)=\"confirmedAction()\">\r\n Ok\r\n </button>\r\n <button mat-raised-button (click)=\"cancelAction()\">\r\n {{ languageService.translate.instant('igo.geo.workspace.cancel') }}\r\n </button>\r\n</div>\r\n", styles: ["div.mat-mdc-dialog-actions{justify-content:center}\n"], dependencies: [{ kind: "component", type: i3.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: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }] });
26
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: ConfirmationPopupComponent, deps: [{ token: i1.MatDialogRef }, { token: i2.LanguageService }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
27
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: ConfirmationPopupComponent, isStandalone: true, selector: "igo-confirmation-popup-component", ngImport: i0, template: "<div mat-dialog-content>\r\n <p class=\"mat-typography\">\r\n {{\r\n data.type === 'add'\r\n ? languageService.translate.instant('igo.geo.workspace.addConfirmation')\r\n : languageService.translate.instant(\r\n 'igo.geo.workspace.deleteConfirmation'\r\n )\r\n }}\r\n </p>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-raised-button color=\"primary\" (click)=\"confirmedAction()\">\r\n Ok\r\n </button>\r\n <button mat-raised-button (click)=\"cancelAction()\">\r\n {{ languageService.translate.instant('igo.geo.workspace.cancel') }}\r\n </button>\r\n</div>\r\n", styles: ["div.mat-mdc-dialog-actions{justify-content:center}\n"], dependencies: [{ kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
27
28
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfirmationPopupComponent, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: ConfirmationPopupComponent, decorators: [{
29
30
  type: Component,
30
- args: [{ selector: 'igo-confirmation-popup-component', template: "<div mat-dialog-content>\r\n <p class=\"mat-typography\">\r\n {{\r\n data.type === 'add'\r\n ? languageService.translate.instant('igo.geo.workspace.addConfirmation')\r\n : languageService.translate.instant(\r\n 'igo.geo.workspace.deleteConfirmation'\r\n )\r\n }}\r\n </p>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-raised-button color=\"primary\" (click)=\"confirmedAction()\">\r\n Ok\r\n </button>\r\n <button mat-raised-button (click)=\"cancelAction()\">\r\n {{ languageService.translate.instant('igo.geo.workspace.cancel') }}\r\n </button>\r\n</div>\r\n", styles: ["div.mat-mdc-dialog-actions{justify-content:center}\n"] }]
31
- }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: i2.LanguageService }, { type: undefined, decorators: [{
31
+ args: [{ selector: 'igo-confirmation-popup-component', standalone: true, imports: [MatDialogContent, MatDialogActions, MatButtonModule], template: "<div mat-dialog-content>\r\n <p class=\"mat-typography\">\r\n {{\r\n data.type === 'add'\r\n ? languageService.translate.instant('igo.geo.workspace.addConfirmation')\r\n : languageService.translate.instant(\r\n 'igo.geo.workspace.deleteConfirmation'\r\n )\r\n }}\r\n </p>\r\n</div>\r\n<div mat-dialog-actions>\r\n <button mat-raised-button color=\"primary\" (click)=\"confirmedAction()\">\r\n Ok\r\n </button>\r\n <button mat-raised-button (click)=\"cancelAction()\">\r\n {{ languageService.translate.instant('igo.geo.workspace.cancel') }}\r\n </button>\r\n</div>\r\n", styles: ["div.mat-mdc-dialog-actions{justify-content:center}\n"] }]
32
+ }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: i2.LanguageService }, { type: undefined, decorators: [{
32
33
  type: Inject,
33
34
  args: [MAT_DIALOG_DATA]
34
- }] }]; } });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFlBQVksQ0FBQzs7Ozs7QUFZN0MsTUFBTSxPQUFPLDBCQUEwQjtJQUU1QjtJQUNBO0lBQ3lCO0lBSGxDLFlBQ1MsU0FBbUQsRUFDbkQsZUFBZ0MsRUFDUCxJQUF1QztRQUZoRSxjQUFTLEdBQVQsU0FBUyxDQUEwQztRQUNuRCxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDUCxTQUFJLEdBQUosSUFBSSxDQUFtQztJQUN0RSxDQUFDO0lBRUosWUFBWTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQzt3R0FmVSwwQkFBMEIsNkVBSTNCLGVBQWU7NEZBSmQsMEJBQTBCLHdFQ2Z2QyxrbkJBbUJBOzs0RkRKYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0Usa0NBQWtDOzswQkFRekMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpYWxvZ0RhdGEge1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBjYW5jZWw6IGJvb2xlYW47XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWNvbmZpcm1hdGlvbi1wb3B1cC1jb21wb25lbnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtYXRpb24tcG9wdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbmZpcm1hdGlvbi1wb3B1cC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtYXRpb25Qb3B1cENvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29uZmlybWF0aW9uUG9wdXBDb21wb25lbnQ+LFxyXG4gICAgcHVibGljIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiB7IHR5cGU6IHN0cmluZzsgY2FuY2VsOiBib29sZWFuIH1cclxuICApIHt9XHJcblxyXG4gIGNhbmNlbEFjdGlvbigpIHtcclxuICAgIHRoaXMuZGF0YS5jYW5jZWwgPSB0cnVlO1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5kYXRhLmNhbmNlbCk7XHJcbiAgfVxyXG5cclxuICBjb25maXJtZWRBY3Rpb24oKSB7XHJcbiAgICB0aGlzLmRhdGEuY2FuY2VsID0gZmFsc2U7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLmRhdGEuY2FuY2VsKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgPHAgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxyXG4gICAge3tcclxuICAgICAgZGF0YS50eXBlID09PSAnYWRkJ1xyXG4gICAgICAgID8gbGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLndvcmtzcGFjZS5hZGRDb25maXJtYXRpb24nKVxyXG4gICAgICAgIDogbGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgICAnaWdvLmdlby53b3Jrc3BhY2UuZGVsZXRlQ29uZmlybWF0aW9uJ1xyXG4gICAgICAgICAgKVxyXG4gICAgfX1cclxuICA8L3A+XHJcbjwvZGl2PlxyXG48ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucz5cclxuICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJjb25maXJtZWRBY3Rpb24oKVwiPlxyXG4gICAgT2tcclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJjYW5jZWxBY3Rpb24oKVwiPlxyXG4gICAge3sgbGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uZ2VvLndvcmtzcGFjZS5jYW5jZWwnKSB9fVxyXG4gIDwvYnV0dG9uPlxyXG48L2Rpdj5cclxuIl19
35
+ }] }] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQ0wsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNiLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQWN0RCxNQUFNLE9BQU8sMEJBQTBCO0lBRTVCO0lBQ0E7SUFDeUI7SUFIbEMsWUFDUyxTQUFtRCxFQUNuRCxlQUFnQyxFQUNQLElBQXVDO1FBRmhFLGNBQVMsR0FBVCxTQUFTLENBQTBDO1FBQ25ELG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNQLFNBQUksR0FBSixJQUFJLENBQW1DO0lBQ3RFLENBQUM7SUFFSixZQUFZO1FBQ1YsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO3VHQWZVLDBCQUEwQiw2RUFJM0IsZUFBZTsyRkFKZCwwQkFBMEIsNEZDdkJ2QyxrbkJBbUJBLDhHREVZLGdCQUFnQix5R0FBRSxnQkFBZ0IsMkhBQUUsZUFBZTs7MkZBRWxELDBCQUEwQjtrQkFQdEMsU0FBUzsrQkFDRSxrQ0FBa0MsY0FHaEMsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDOzswQkFNM0QsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHtcclxuICBNQVRfRElBTE9HX0RBVEEsXHJcbiAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICBNYXREaWFsb2dDb250ZW50LFxyXG4gIE1hdERpYWxvZ1JlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGlhbG9nRGF0YSB7XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIGNhbmNlbDogYm9vbGVhbjtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tY29uZmlybWF0aW9uLXBvcHVwLWNvbXBvbmVudCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpcm1hdGlvbi1wb3B1cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbTWF0RGlhbG9nQ29udGVudCwgTWF0RGlhbG9nQWN0aW9ucywgTWF0QnV0dG9uTW9kdWxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlybWF0aW9uUG9wdXBDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPENvbmZpcm1hdGlvblBvcHVwQ29tcG9uZW50PixcclxuICAgIHB1YmxpYyBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogeyB0eXBlOiBzdHJpbmc7IGNhbmNlbDogYm9vbGVhbiB9XHJcbiAgKSB7fVxyXG5cclxuICBjYW5jZWxBY3Rpb24oKSB7XHJcbiAgICB0aGlzLmRhdGEuY2FuY2VsID0gdHJ1ZTtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuZGF0YS5jYW5jZWwpO1xyXG4gIH1cclxuXHJcbiAgY29uZmlybWVkQWN0aW9uKCkge1xyXG4gICAgdGhpcy5kYXRhLmNhbmNlbCA9IGZhbHNlO1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5kYXRhLmNhbmNlbCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxwIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj5cclxuICAgIHt7XHJcbiAgICAgIGRhdGEudHlwZSA9PT0gJ2FkZCdcclxuICAgICAgICA/IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby53b3Jrc3BhY2UuYWRkQ29uZmlybWF0aW9uJylcclxuICAgICAgICA6IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcclxuICAgICAgICAgICAgJ2lnby5nZW8ud29ya3NwYWNlLmRlbGV0ZUNvbmZpcm1hdGlvbidcclxuICAgICAgICAgIClcclxuICAgIH19XHJcbiAgPC9wPlxyXG48L2Rpdj5cclxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwiY29uZmlybWVkQWN0aW9uKClcIj5cclxuICAgIE9rXHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiAoY2xpY2spPVwiY2FuY2VsQWN0aW9uKClcIj5cclxuICAgIHt7IGxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudCgnaWdvLmdlby53b3Jrc3BhY2UuY2FuY2VsJykgfX1cclxuICA8L2J1dHRvbj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,35 +1,19 @@
1
- import { CommonModule } from '@angular/common';
2
1
  import { NgModule } from '@angular/core';
3
- import { MatButtonModule } from '@angular/material/button';
4
- import { MatButtonToggleModule } from '@angular/material/button-toggle';
5
- import { MatDialogModule } from '@angular/material/dialog';
6
2
  import { ConfirmationPopupComponent } from './confirmation-popup.component';
7
3
  import * as i0 from "@angular/core";
8
4
  /**
9
- * @ignore
5
+ * @deprecated import the ConfirmationPopupComponent directly
10
6
  */
11
7
  export class IgoConfirmationPopupModule {
12
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoConfirmationPopupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
13
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: IgoConfirmationPopupModule, declarations: [ConfirmationPopupComponent], imports: [CommonModule,
14
- MatButtonModule,
15
- MatDialogModule,
16
- MatButtonToggleModule], exports: [ConfirmationPopupComponent] });
17
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoConfirmationPopupModule, imports: [CommonModule,
18
- MatButtonModule,
19
- MatDialogModule,
20
- MatButtonToggleModule] });
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: IgoConfirmationPopupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.4", ngImport: i0, type: IgoConfirmationPopupModule, imports: [ConfirmationPopupComponent], exports: [ConfirmationPopupComponent] });
10
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: IgoConfirmationPopupModule, imports: [ConfirmationPopupComponent] });
21
11
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IgoConfirmationPopupModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: IgoConfirmationPopupModule, decorators: [{
23
13
  type: NgModule,
24
14
  args: [{
25
- imports: [
26
- CommonModule,
27
- MatButtonModule,
28
- MatDialogModule,
29
- MatButtonToggleModule
30
- ],
31
- exports: [ConfirmationPopupComponent],
32
- declarations: [ConfirmationPopupComponent]
15
+ imports: [ConfirmationPopupComponent],
16
+ exports: [ConfirmationPopupComponent]
33
17
  }]
34
18
  }] });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLXBvcHVwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUU1RTs7R0FFRztBQVdILE1BQU0sT0FBTywwQkFBMEI7d0dBQTFCLDBCQUEwQjt5R0FBMUIsMEJBQTBCLGlCQUZ0QiwwQkFBMEIsYUFOdkMsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YscUJBQXFCLGFBRWIsMEJBQTBCO3lHQUd6QiwwQkFBMEIsWUFSbkMsWUFBWTtZQUNaLGVBQWU7WUFDZixlQUFlO1lBQ2YscUJBQXFCOzs0RkFLWiwwQkFBMEI7a0JBVnRDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixlQUFlO3dCQUNmLHFCQUFxQjtxQkFDdEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3JDLFlBQVksRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUMzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdEJ1dHRvblRvZ2dsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbi10b2dnbGUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uUG9wdXBDb21wb25lbnQgfSBmcm9tICcuL2NvbmZpcm1hdGlvbi1wb3B1cC5jb21wb25lbnQnO1xyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxyXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxyXG4gICAgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbQ29uZmlybWF0aW9uUG9wdXBDb21wb25lbnRdLFxyXG4gIGRlY2xhcmF0aW9uczogW0NvbmZpcm1hdGlvblBvcHVwQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWdvQ29uZmlybWF0aW9uUG9wdXBNb2R1bGUge31cclxuIl19
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLXBvcHVwLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3dvcmtzcGFjZS9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUU1RTs7R0FFRztBQUtILE1BQU0sT0FBTywwQkFBMEI7dUdBQTFCLDBCQUEwQjt3R0FBMUIsMEJBQTBCLFlBSDNCLDBCQUEwQixhQUMxQiwwQkFBMEI7d0dBRXpCLDBCQUEwQixZQUgzQiwwQkFBMEI7OzJGQUd6QiwwQkFBMEI7a0JBSnRDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsMEJBQTBCLENBQUM7b0JBQ3JDLE9BQU8sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBDb25maXJtYXRpb25Qb3B1cENvbXBvbmVudCB9IGZyb20gJy4vY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudCc7XHJcblxyXG4vKipcclxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBDb25maXJtYXRpb25Qb3B1cENvbXBvbmVudCBkaXJlY3RseVxyXG4gKi9cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbQ29uZmlybWF0aW9uUG9wdXBDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtDb25maXJtYXRpb25Qb3B1cENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElnb0NvbmZpcm1hdGlvblBvcHVwTW9kdWxlIHt9XHJcbiJdfQ==
@@ -5,4 +5,4 @@ export * from './workspace-selector/workspace-selector.module';
5
5
  export * from './workspace-updator/workspace-updator.directive';
6
6
  export * from './workspace-updator/workspace-updator.module';
7
7
  export * from './widgets/index';
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpcm1hdGlvbi1wb3B1cC9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtzcGFjZS1zZWxlY3Rvci93b3Jrc3BhY2Utc2VsZWN0b3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vd29ya3NwYWNlLXNlbGVjdG9yL3dvcmtzcGFjZS1zZWxlY3Rvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2UtdXBkYXRvci93b3Jrc3BhY2UtdXBkYXRvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2UtdXBkYXRvci93b3Jrc3BhY2UtdXBkYXRvci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi93aWRnZXRzL2luZGV4JztcbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlybWF0aW9uLXBvcHVwL2luZGV4JztcclxuZXhwb3J0ICogZnJvbSAnLi93b3Jrc3BhY2Utc2VsZWN0b3Ivd29ya3NwYWNlLXNlbGVjdG9yLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vd29ya3NwYWNlLXNlbGVjdG9yL3dvcmtzcGFjZS1zZWxlY3Rvci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dvcmtzcGFjZS11cGRhdG9yL3dvcmtzcGFjZS11cGRhdG9yLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vd29ya3NwYWNlLXVwZGF0b3Ivd29ya3NwYWNlLXVwZGF0b3IubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi93aWRnZXRzL2luZGV4JztcclxuIl19
@@ -296,4 +296,4 @@ export class EditionWorkspace extends Workspace {
296
296
  });
297
297
  }
298
298
  }
299
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGlvbi13b3Jrc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvc2hhcmVkL2VkaXRpb24td29ya3NwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBZ0IsU0FBUyxFQUFvQixNQUFNLGNBQWMsQ0FBQztBQUd6RSxPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxTQUFTLE1BQU0sbUJBQW1CLENBQUM7QUFHMUMsT0FBTyxRQUFRLE1BQU0sdUJBQXVCLENBQUM7QUFDN0MsT0FBTyxjQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxLQUFLLE9BQU8sTUFBTSxVQUFVLENBQUM7QUFFcEMsT0FBTyxFQUFFLGVBQWUsRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLHlCQUF5QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQU9oRyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztJQXFEbkM7SUFDQTtJQUNBO0lBQ0E7SUFDRTtJQXhESCxrQkFBa0IsR0FBNkIsSUFBSSxlQUFlLENBQ3pFLElBQUksQ0FDTCxDQUFDO0lBRUYsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJ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QUM7UUFDeEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQy9CLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUMvRCxJQUFJLFVBQVUsRUFBRTtnQkFDZCxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQzthQUN4RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbmltcG9ydCB7IEVudGl0eVJlY29yZCwgV29ya3NwYWNlLCBXb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5cclxuaW1wb3J0IENvbGxlY3Rpb24gZnJvbSAnb2wvQ29sbGVjdGlvbic7XHJcbmltcG9ydCBPbEZlYXR1cmUgZnJvbSAnb2wvRmVhdHVyZSc7XHJcbmltcG9ydCBPbEdlb0pTT04gZnJvbSAnb2wvZm9ybWF0L0dlb0pTT04nO1xyXG5pbXBvcnQgdHlwZSB7IFR5cGUgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuaW1wb3J0IE9sTW9kaWZ5IGZyb20gJ29sL2ludGVyYWN0aW9uL01vZGlmeSc7XHJcbmltcG9ydCBPbFZlY3RvclNvdXJjZSBmcm9tICdvbC9zb3VyY2UvVmVjdG9yJztcclxuaW1wb3J0ICogYXMgT2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XHJcblxyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgRmVhdHVyZURhdGFTb3VyY2UsIFJlbGF0aW9uT3B0aW9ucyB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkJztcclxuaW1wb3J0IHsgR2VvbWV0cnlUeXBlLCBjcmVhdGVJbnRlcmFjdGlvblN0eWxlIH0gZnJvbSAnLi4vLi4vZHJhdy9zaGFyZWQnO1xyXG5pbXBvcnQgeyBmZWF0dXJlVG9PbCB9IGZyb20gJy4uLy4uL2ZlYXR1cmUvc2hhcmVkJztcclxuaW1wb3J0IHsgRHJhd0NvbnRyb2wgfSBmcm9tICcuLi8uLi9nZW9tZXRyeS9zaGFyZWQnO1xyXG5pbXBvcnQgeyBJbWFnZUxheWVyLCBWZWN0b3JMYXllciB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZCc7XHJcbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uUG9wdXBDb21wb25lbnQgfSBmcm9tICcuLi9jb25maXJtYXRpb24tcG9wdXAvY29uZmlybWF0aW9uLXBvcHVwLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRpb25Xb3Jrc3BhY2VPcHRpb25zIGV4dGVuZHMgV29ya3NwYWNlT3B0aW9ucyB7XHJcbiAgbGF5ZXI6IEltYWdlTGF5ZXIgfCBWZWN0b3JMYXllcjtcclxuICBtYXA6IElnb01hcDtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEVkaXRpb25Xb3Jrc3BhY2UgZXh0ZW5kcyBXb3Jrc3BhY2Uge1xyXG4gIHJlYWRvbmx5IGluUmVzb2x1dGlvblJhbmdlJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChcclxuICAgIHRydWVcclxuICApO1xyXG5cclxuICBnZXQgbGF5ZXIoKTogSW1hZ2VMYXllciB8IFZlY3RvckxheWVyIHtcclxuICAgIHJldHVybiB0aGlzLm9wdGlvbnMubGF5ZXI7XHJcbiAgfVxyXG5cclxuICBnZXQgbWFwKCk6IElnb01hcCB7XHJcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLm1hcDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZHJhd0NvbnRyb2w6IERyYXdDb250cm9sO1xyXG4gIHByaXZhdGUgZHJhd0VuZCQkOiBTdWJzY3JpcHRpb247XHJcbiAgcHJpdmF0ZSBvbERyYXdpbmdMYXllclNvdXJjZSA9IG5ldyBPbFZlY3RvclNvdXJjZSgpO1xyXG4gIHByaXZhdGUgb2xEcmF3aW5nTGF5ZXI6IFZlY3RvckxheWVyO1xyXG4gIHB1YmxpYyBnZW9tZXRyeVR5cGUgPSBHZW9tZXRyeVR5cGU7IC8vIFJlZmVyZW5jZSB0byB0aGUgR2VvbWV0cnlUeXBlIGVudW1cclxuICBwdWJsaWMgbW9kaWZ5OyAvLyBSZWZlcmVuY2UgdG8gdGhlIG9sIGludGVyYWN0aW9uXHJcblxyXG4gIHB1YmxpYyBtb2RpZnlTdHlsZSA9IG5ldyBPbFN0eWxlLlN0eWxlKHtcclxuICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcclxuICAgICAgY29sb3I6ICdyZ2JhKDI1NSwyNTUsMjU1LDEpJyxcclxuICAgICAgd2lkdGg6IDFcclxuICAgIH0pLFxyXG4gICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XHJcbiAgICAgIGNvbG9yOiAncmdiYSgwLDE2MSwyMjIsMSknXHJcbiAgICB9KSxcclxuICAgIGltYWdlOiBuZXcgT2xTdHlsZS5DaXJjbGUoe1xyXG4gICAgICByYWRpdXM6IDcsXHJcbiAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcclxuICAgICAgICBjb2xvcjogJ3JnYmEoMjU1LDI1NSwyNTUsMSknLFxyXG4gICAgICAgIHdpZHRoOiAxXHJcbiAgICAgIH0pLFxyXG4gICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcclxuICAgICAgICBjb2xvcjogJ3JnYmEoMCwxNjEsMjIyLDEpJ1xyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICB9KTtcclxuXHJcbiAgcHJpdmF0ZSBuZXdGZWF0dXJlZmlsdGVyQ2xhdXNlRnVuYyA9IChyZWNvcmQ6IEVudGl0eVJlY29yZDxvYmplY3Q+KSA9PiB7XHJcbiAgICByZXR1cm4gcmVjb3JkLnN0YXRlLm5ld0ZlYXR1cmUgPT09IHRydWU7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBlZGl0RmVhdHVyZWZpbHRlckNsYXVzZUZ1bmMgPSAocmVjb3JkOiBFbnRpdHlSZWNvcmQ8b2JqZWN0PikgPT4ge1xyXG4gICAgcmV0dXJuIHJlY29yZC5zdGF0ZS5lZGl0ID09PSB0cnVlO1xyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBmaWxsQ29sb3I6IHN0cmluZztcclxuICBwdWJsaWMgc3Ryb2tlQ29sb3I6IHN0cmluZztcclxuICBwdWJsaWMgc3Ryb2tlV2lkdGg6IG51bWJlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSBjb25maWdTZXJ2aWNlOiBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhZGRpbmckOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4sXHJcbiAgICBwcml2YXRlIGdldERvbWFpblZhbHVlczogKHJlbGF0aW9uOiBSZWxhdGlvbk9wdGlvbnMpID0+IE9ic2VydmFibGU8YW55PixcclxuICAgIHByb3RlY3RlZCBvcHRpb25zOiBFZGl0aW9uV29ya3NwYWNlT3B0aW9uc1xyXG4gICkge1xyXG4gICAgc3VwZXIob3B0aW9ucyk7XHJcbiAgICB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5yZXNvbHV0aW9uJC5zdWJzY3JpYmUoKG1hcFJlc29sdXRpb24pID0+IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIG1hcFJlc29sdXRpb24gPiB0aGlzLmxheWVyLm1pblJlc29sdXRpb24gJiZcclxuICAgICAgICBtYXBSZXNvbHV0aW9uIDwgdGhpcy5sYXllci5tYXhSZXNvbHV0aW9uXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuaW5SZXNvbHV0aW9uUmFuZ2UkLm5leHQodHJ1ZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5pblJlc29sdXRpb25SYW5nZSQubmV4dChmYWxzZSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZHJhd0NvbnRyb2wgPSB0aGlzLmNyZWF0ZURyYXdDb250cm9sKCk7XHJcbiAgICB0aGlzLmRyYXdDb250cm9sLnNldEdlb21ldHJ5VHlwZSh0aGlzLmdlb21ldHJ5VHlwZS5Qb2ludCBhcyBhbnkpO1xyXG5cclxuICAgIHRoaXMubWFwLnJlbW92ZUxheWVyKHRoaXMub2xEcmF3aW5nTGF5ZXIpO1xyXG5cclxuICAgIHRoaXMub2xEcmF3aW5nTGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoe1xyXG4gICAgICBpZDogJ2lnby1kcmF3LWxheWVyJyxcclxuICAgICAgdGl0bGU6ICdlZGl0aW9uJyxcclxuICAgICAgekluZGV4OiAzMDAsXHJcbiAgICAgIHNvdXJjZTogbmV3IEZlYXR1cmVEYXRhU291cmNlKCksXHJcbiAgICAgIHNob3dJbkxheWVyTGlzdDogZmFsc2UsXHJcbiAgICAgIGV4cG9ydGFibGU6IGZhbHNlLFxyXG4gICAgICBicm93c2FibGU6IGZhbHNlLFxyXG4gICAgICB3b3Jrc3BhY2U6IHtcclxuICAgICAgICBlbmFibGVkOiBmYWxzZVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZUZlYXR1cmUoZmVhdHVyZSwgd29ya3NwYWNlKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtYXRpb25Qb3B1cENvbXBvbmVudCwge1xyXG4gICAgICAgIGRpc2FibGVDbG9zZTogZmFsc2UsXHJcbiAgICAgICAgZGF0YTogeyB0eXBlOiAnZGVsZXRlJyB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0ID09PSBmYWxzZSkge1xyXG4gICAgICAgICAgbGV0IGlkLCB1cmw7XHJcbiAgICAgICAgICBjb25zdCBiYXNlVXJsID0gd29ya3NwYWNlLmxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5lZGl0aW9uLmJhc2VVcmw7XHJcbiAgICAgICAgICBjb25zdCBkZWxldGVVcmwgPVxyXG4gICAgICAgICAgICB3b3Jrc3BhY2UubGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLmVkaXRpb24uZGVsZXRlVXJsO1xyXG4gICAgICAgICAgaWYgKGJhc2VVcmwubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIHVybCA9IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ2VkaXRpb24udXJsJylcclxuICAgICAgICAgICAgICA/IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ2VkaXRpb24udXJsJykgK1xyXG4gICAgICAgICAgICAgICAgYmFzZVVybCArXHJcbiAgICAgICAgICAgICAgICAnPycgK1xyXG4gICAgICAgICAgICAgICAgZGVsZXRlVXJsXHJcbiAgICAgICAgICAgICAgOiBiYXNlVXJsICsgJz8nICsgZGVsZXRlVXJsO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdXJsID0gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZygnZWRpdGlvbi51cmwnKVxyXG4gICAgICAgICAgICAgID8gdGhpcy5jb25maWdTZXJ2aWNlLmdldENvbmZpZygnZWRpdGlvbi51cmwnKSArIGRlbGV0ZVVybFxyXG4gICAgICAgICAgICAgIDogZGVsZXRlVXJsO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGZvciAoY29uc3QgY29sdW1uIG9mIHdvcmtzcGFjZS5tZXRhLnRhYmxlVGVtcGxhdGUuY29sdW1ucykge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGZlYXR1cmUucHJvcGVydGllcykge1xyXG4gICAgICAgICAgICAgIGxldCBjb2x1bW5OYW1lID0gY29sdW1uLm5hbWU7XHJcbiAgICAgICAgICAgICAgaWYgKGNvbHVtbk5hbWUuaW5jbHVkZXMoJ3Byb3BlcnRpZXMuJykpIHtcclxuICAgICAgICAgICAgICAgIGNvbHVtbk5hbWUgPSBjb2x1bW5OYW1lLnNwbGl0KCcuJylbMV07XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIGlmIChjb2x1bW5OYW1lID09PSBwcm9wZXJ0eSAmJiBjb2x1bW4ucHJpbWFyeSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgaWQgPSBmZWF0dXJlLnByb3BlcnRpZXNbcHJvcGVydHldO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKHVybCkge1xyXG4gICAgICAgICAgICB1cmwgKz0gaWQ7XHJcbiAgICAgICAgICAgIHRoaXMuZGVsZXRlRmVhdHVyZSh3b3Jrc3BhY2UsIHVybCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH0sIDI1MCk7XHJcbiAgfVxyXG5cclxuICBlZGl0RmVhdHVyZShmZWF0dXJlLCB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2UpIHtcclxuICAgIGZlYXR1cmUuZWRpdGlvbiA9IHRydWU7XHJcbiAgICBsZXQgaWQ7XHJcbiAgICBsZXQgZmluZCA9IGZhbHNlO1xyXG4gICAgY29uc3QgZWRpdGlvbk9wdCA9IHdvcmtzcGFjZS5sYXllci5kYXRhU291cmNlLm9wdGlvbnMuZWRpdGlvbjtcclxuICAgIGZvciAoY29uc3QgY29sdW1uIG9mIHdvcmtzcGFjZS5tZXRhLnRhYmxlVGVtcGxhdGUuY29sdW1ucykge1xyXG4gICAgICAvLyBVcGRhdGUgZG9tYWluIGxpc3RcclxuICAgICAgaWYgKGNvbHVtbi50eXBlID09PSAnbGlzdCcgfHwgY29sdW1uLnR5cGUgPT09ICdhdXRvY29tcGxldGUnKSB7XHJcbiAgICAgICAgdGhpcy5nZXREb21haW5WYWx1ZXMoY29sdW1uLnJlbGF0aW9uKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgY29sdW1uLmRvbWFpblZhbHVlcyA9IHJlc3VsdDtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoZmluZCA9PT0gZmFsc2UpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGZlYXR1cmUucHJvcGVydGllcykge1xyXG4gICAgICAgICAgbGV0IGNvbHVtbk5hbWUgPSBjb2x1bW4ubmFtZTtcclxuICAgICAgICAgIGlmIChjb2x1bW5OYW1lLmluY2x1ZGVzKCdwcm9wZXJ0aWVzLicpKSB7XHJcbiAgICAgICAgICAgIGNvbHVtbk5hbWUgPSBjb2x1bW5OYW1lLnNwbGl0KCcuJylbMV07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoY29sdW1uTmFtZSA9PT0gcHJvcGVydHkgJiYgY29sdW1uLnByaW1hcnkgPT09IHRydWUpIHtcclxuICAgICAgICAgICAgaWQgPSBmZWF0dXJlLnByb3BlcnRpZXNbcHJvcGVydHldO1xyXG4gICAgICAgICAgICBmaW5kID0gdHJ1ZTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgZmVhdHVyZS5vcmlnaW5hbF9wcm9wZXJ0aWVzID0gSlNPTi5wYXJzZShcclxuICAgICAgICBKU09OLnN0cmluZ2lmeShmZWF0dXJlLnByb3BlcnRpZXMpXHJcbiAgICAgICk7XHJcbiAgICAgIGZlYXR1cmUub3JpZ2luYWxfZ2VvbWV0cnkgPSBmZWF0dXJlLmdlb21ldHJ5O1xyXG4gICAgICBmZWF0dXJlLmlka2V5ID0gaWQ7XHJcbiAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5zdGF0ZS51cGRhdGVBbGwoeyBlZGl0OiBmYWxzZSB9KTtcclxuICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLnN0YXRlVmlldy5maWx0ZXIodGhpcy5lZGl0RmVhdHVyZWZpbHRlckNsYXVzZUZ1bmMpO1xyXG4gICAgICB0aGlzLmFkZEZlYXR1cmVUb1N0b3JlKGZlYXR1cmUsIHdvcmtzcGFjZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyBPbmx5IGZvciBlZGl0aW9uIHdpdGggaXQncyBvd24gZ2VvbWV0cnlcclxuICAgICAgaWYgKCFmZWF0dXJlLm5ld0ZlYXR1cmUgJiYgZWRpdGlvbk9wdC5nZW9tVHlwZSkge1xyXG4gICAgICAgIGZlYXR1cmUubmV3RmVhdHVyZSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5hZGRpbmckLm5leHQodHJ1ZSk7XHJcbiAgICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLnN0YXRlLnVwZGF0ZUFsbCh7IG5ld0ZlYXR1cmU6IGZhbHNlIH0pO1xyXG4gICAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5zdGF0ZVZpZXcuZmlsdGVyKHRoaXMubmV3RmVhdHVyZWZpbHRlckNsYXVzZUZ1bmMpO1xyXG4gICAgICAgIGlmIChlZGl0aW9uT3B0LmFkZFdpdGhEcmF3KSB7XHJcbiAgICAgICAgICBjb25zdCBnZW9tZXRyeVR5cGUgPSBlZGl0aW9uT3B0Lmdlb21UeXBlO1xyXG4gICAgICAgICAgdGhpcy5vbkdlb21ldHJ5VHlwZUNoYW5nZShnZW9tZXRyeVR5cGUsIGZlYXR1cmUsIHdvcmtzcGFjZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5pbnNlcnQoZmVhdHVyZSk7XHJcbiAgICAgICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuc3RhdGUudXBkYXRlKFxyXG4gICAgICAgICAgICBmZWF0dXJlLFxyXG4gICAgICAgICAgICB7IG5ld0ZlYXR1cmU6IHRydWUgfSxcclxuICAgICAgICAgICAgdHJ1ZVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSBhIERyYXcgQ29udHJvbFxyXG4gICAqIEBwYXJhbSBmaWxsQ29sb3IgdGhlIGZpbGwgY29sb3JcclxuICAgKiBAcGFyYW0gc3Ryb2tlQ29sb3IgdGhlIHN0cm9rZSBjb2xvclxyXG4gICAqIEBwYXJhbSBzdHJva2VXaWR0aCB0aGUgc3Ryb2tlIHdpZHRoXHJcbiAgICogQHJldHVybnMgYSBEcmF3IENvbnRyb2xcclxuICAgKi9cclxuICBjcmVhdGVEcmF3Q29udHJvbChcclxuICAgIGZpbGxDb2xvcj86IHN0cmluZyxcclxuICAgIHN0cm9rZUNvbG9yPzogc3RyaW5nLFxyXG4gICAgc3Ryb2tlV2lkdGg/OiBudW1iZXJcclxuICApIHtcclxuICAgIGNvbnN0IGRyYXdDb250cm9sID0gbmV3IERyYXdDb250cm9sKHtcclxuICAgICAgZ2VvbWV0cnlUeXBlOiB1bmRlZmluZWQsXHJcbiAgICAgIGRyYXdpbmdMYXllclNvdXJjZTogdGhpcy5vbERyYXdpbmdMYXllclNvdXJjZSxcclxuICAgICAgZHJhd2luZ0xheWVyU3R5bGU6IG5ldyBPbFN0eWxlLlN0eWxlKHt9KSxcclxuICAgICAgaW50ZXJhY3Rpb25TdHlsZTogY3JlYXRlSW50ZXJhY3Rpb25TdHlsZShcclxuICAgICAgICBmaWxsQ29sb3IsXHJcbiAgICAgICAgc3Ryb2tlQ29sb3IsXHJcbiAgICAgICAgc3Ryb2tlV2lkdGhcclxuICAgICAgKVxyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIGRyYXdDb250cm9sO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2FsbGVkIHdoZW4gdGhlIHVzZXIgc2VsZWN0cyBhIG5ldyBnZW9tZXRyeSB0eXBlXHJcbiAgICogQHBhcmFtIGdlb21ldHJ5VHlwZSB0aGUgZ2VvbWV0cnkgdHlwZSBzZWxlY3RlZCBieSB0aGUgdXNlclxyXG4gICAqL1xyXG4gIG9uR2VvbWV0cnlUeXBlQ2hhbmdlKFxyXG4gICAgZ2VvbWV0cnlUeXBlOiBUeXBlLFxyXG4gICAgZmVhdHVyZSxcclxuICAgIHdvcmtzcGFjZTogRWRpdGlvbldvcmtzcGFjZVxyXG4gICkge1xyXG4gICAgdGhpcy5kcmF3Q29udHJvbC5zZXRHZW9tZXRyeVR5cGUoZ2VvbWV0cnlUeXBlKTtcclxuICAgIHRoaXMudG9nZ2xlRHJhd0NvbnRyb2woZmVhdHVyZSwgd29ya3NwYWNlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2YXRlIHRoZSBjb3JyZWN0IGNvbnRyb2xcclxuICAgKi9cclxuICBwcml2YXRlIHRvZ2dsZURyYXdDb250cm9sKGZlYXR1cmUsIHdvcmtzcGFjZTogRWRpdGlvbldvcmtzcGFjZSkge1xyXG4gICAgdGhpcy5kZWFjdGl2YXRlRHJhd0NvbnRyb2woKTtcclxuICAgIHRoaXMuYWN0aXZhdGVEcmF3Q29udHJvbChmZWF0dXJlLCB3b3Jrc3BhY2UpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVhY3RpdmF0ZSB0aGUgYWN0aXZlIGRyYXcgY29udHJvbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBkZWFjdGl2YXRlRHJhd0NvbnRyb2woKSB7XHJcbiAgICBpZiAoIXRoaXMuZHJhd0NvbnRyb2wpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmRyYXdFbmQkJCkge1xyXG4gICAgICB0aGlzLmRyYXdFbmQkJC51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZHJhd0NvbnRyb2wuc2V0T2xNYXAodW5kZWZpbmVkKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2YXRlIGEgZ2l2ZW4gY29udHJvbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWN0aXZhdGVEcmF3Q29udHJvbChmZWF0dXJlLCB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2UpIHtcclxuICAgIHRoaXMuZHJhd0VuZCQkID0gdGhpcy5kcmF3Q29udHJvbC5lbmQkLnN1YnNjcmliZShcclxuICAgICAgKG9sR2VvbWV0cnk6IE9sR2VvbWV0cnkpID0+IHtcclxuICAgICAgICB0aGlzLmFkZEZlYXR1cmVUb1N0b3JlKGZlYXR1cmUsIHdvcmtzcGFjZSwgb2xHZW9tZXRyeSk7XHJcbiAgICAgIH1cclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5kcmF3Q29udHJvbC5zZXRPbE1hcCh0aGlzLm1hcC5vbCwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGQgYSBmZWF0dXJlIHRvIGxheWVyLiBUaGUgbG9hZGluZyBzdHJhdGVneSBvZiB0aGUgbGF5ZXJcclxuICAgKiB3aWxsIHRyaWdnZXIgYW5kIGFkZCB0aGUgZmVhdHVyZSB0byB0aGUgd29ya3NwYWNlIHN0b3JlLlxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRkRmVhdHVyZVRvU3RvcmUoXHJcbiAgICBmZWF0dXJlLFxyXG4gICAgd29ya3NwYWNlOiBFZGl0aW9uV29ya3NwYWNlLFxyXG4gICAgb2xHZW9tZXRyeT86IE9sR2VvbWV0cnlcclxuICApIHtcclxuICAgIGNvbnN0IHByb2plY3Rpb24gPSB0aGlzLm1hcC5vbC5nZXRWaWV3KCkuZ2V0UHJvamVjdGlvbigpO1xyXG4gICAgbGV0IGdlb21ldHJ5ID0gZmVhdHVyZS5nZW9tZXRyeTtcclxuXHJcbiAgICAvLyBJZiBhbiBvbEdlb21ldHJ5IGlzIHBhc3NlZCwgaXQgbWVhbnMgdGhhdCBpdCBpcyBhIG5ldyBmZWF0dXJlXHJcbiAgICBpZiAob2xHZW9tZXRyeSkge1xyXG4gICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuaW5zZXJ0KGZlYXR1cmUpO1xyXG4gICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuc3RhdGUudXBkYXRlKGZlYXR1cmUsIHsgbmV3RmVhdHVyZTogdHJ1ZSB9LCB0cnVlKTtcclxuICAgICAgZ2VvbWV0cnkgPSBuZXcgT2xHZW9KU09OKCkud3JpdGVHZW9tZXRyeU9iamVjdChvbEdlb21ldHJ5LCB7XHJcbiAgICAgICAgZmVhdHVyZVByb2plY3Rpb246IHByb2plY3Rpb24sXHJcbiAgICAgICAgZGF0YVByb2plY3Rpb246ICdFUFNHOjQzMjYnXHJcbiAgICAgIH0pIGFzIGFueTtcclxuXHJcbiAgICAgIGZlYXR1cmUuZ2VvbWV0cnkgPSBnZW9tZXRyeTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5zdGF0ZS51cGRhdGUoZmVhdHVyZSwgeyBlZGl0OiB0cnVlIH0sIHRydWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGZlYXR1cmUucHJvamVjdGlvbiA9ICdFUFNHOjQzMjYnO1xyXG5cclxuICAgIGNvbnN0IGZlYXR1cmVPbCA9IGZlYXR1cmVUb09sKGZlYXR1cmUsIHByb2plY3Rpb24uZ2V0Q29kZSgpKTtcclxuXHJcbiAgICB0aGlzLm9sRHJhd2luZ0xheWVyLmRhdGFTb3VyY2Uub2wuY2xlYXIoKTtcclxuICAgIHRoaXMub2xEcmF3aW5nTGF5ZXIuZGF0YVNvdXJjZS5vbC5hZGRGZWF0dXJlKGZlYXR1cmVPbCk7XHJcbiAgICB0aGlzLm1hcC5hZGRMYXllcih0aGlzLm9sRHJhd2luZ0xheWVyKTtcclxuXHJcbiAgICB0aGlzLmRlYWN0aXZhdGVEcmF3Q29udHJvbCgpO1xyXG4gICAgdGhpcy5jcmVhdGVNb2RpZnlJbnRlcmFjdGlvbihmZWF0dXJlT2wsIGZlYXR1cmUsIHdvcmtzcGFjZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWxldGUgZHJhd2luZ3MgbGF5ZXIgYW5kIHNvdXJjZSBmcm9tIHRoZSBtYXAgQU5EIGZlYXR1cmUgZnJvbSB0aGUgZW50aXR5IHN0b3JlLlxyXG4gICAqIExheWVyIHJlZnJlc2ggd2lsbCBhdXRvbWF0aWNhbGx5IGFkZCB0aGUgbmV3IGZlYXR1cmUgaW50byB0aGUgc3RvcmUuXHJcbiAgICovXHJcbiAgZGVsZXRlRHJhd2luZ3MoKSB7XHJcbiAgICB0aGlzLm1hcC5yZW1vdmVMYXllcih0aGlzLm9sRHJhd2luZ0xheWVyKTtcclxuICAgIHRoaXMub2xEcmF3aW5nTGF5ZXJTb3VyY2UuY2xlYXIoKTtcclxuICAgIHRoaXMubWFwLm9sLnJlbW92ZUludGVyYWN0aW9uKHRoaXMubW9kaWZ5KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSBhIG1vZGlmeSBpbnRlcmFjdGlvbiB0byBhbGxvdyBhIGdlb21ldHJ5IGNoYW5nZSBvbmUgZmVhdHVyZSBhdCB0aGUgdGltZSAoZHJhZyBhbmQgZHJvcClcclxuICAgKi9cclxuICBjcmVhdGVNb2RpZnlJbnRlcmFjdGlvbihcclxuICAgIG9sRmVhdHVyZTogT2xGZWF0dXJlPE9sR2VvbWV0cnk+LFxyXG4gICAgZmVhdHVyZSxcclxuICAgIHdvcmtzcGFjZTogRWRpdGlvbldvcmtzcGFjZVxyXG4gICkge1xyXG4gICAgdGhpcy5tYXAub2wucmVtb3ZlSW50ZXJhY3Rpb24odGhpcy5tb2RpZnkpO1xyXG4gICAgY29uc3Qgb2xDb2xsZWN0aW9uID0gbmV3IENvbGxlY3Rpb24oW29sRmVhdHVyZV0sIHsgdW5pcXVlOiB0cnVlIH0pO1xyXG4gICAgdGhpcy5tb2RpZnkgPSBuZXcgT2xNb2RpZnkoe1xyXG4gICAgICBmZWF0dXJlczogb2xDb2xsZWN0aW9uXHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLm1hcC5vbC5hZGRJbnRlcmFjdGlvbih0aGlzLm1vZGlmeSk7XHJcbiAgICBvbENvbGxlY3Rpb24uZm9yRWFjaCgoZmVhdHVyZSkgPT4ge1xyXG4gICAgICBmZWF0dXJlLnNldFN0eWxlKHRoaXMubW9kaWZ5U3R5bGUpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5tb2RpZnkub24oJ21vZGlmeWVuZCcsIChldmVudCkgPT4ge1xyXG4gICAgICBjb25zdCBvbEdlb21ldHJ5ID0gZXZlbnQuZmVhdHVyZXMuZ2V0QXJyYXkoKVswXT8uZ2V0R2VvbWV0cnkoKTtcclxuICAgICAgaWYgKG9sR2VvbWV0cnkpIHtcclxuICAgICAgICB0aGlzLmFkZEZlYXR1cmVUb1N0b3JlKGZlYXR1cmUsIHdvcmtzcGFjZSwgb2xHZW9tZXRyeSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
299
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGlvbi13b3Jrc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi93b3Jrc3BhY2Uvc2hhcmVkL2VkaXRpb24td29ya3NwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBZ0IsU0FBUyxFQUFvQixNQUFNLGNBQWMsQ0FBQztBQUd6RSxPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxTQUFTLE1BQU0sbUJBQW1CLENBQUM7QUFHMUMsT0FBTyxRQUFRLE1BQU0sdUJBQXVCLENBQUM7QUFDN0MsT0FBTyxjQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxLQUFLLE9BQU8sTUFBTSxVQUFVLENBQUM7QUFFcEMsT0FBTyxFQUFFLGVBQWUsRUFBNEIsTUFBTSxNQUFNLENBQUM7QUFFakUsT0FBTyxFQUFFLGlCQUFpQixFQUFtQixNQUFNLHlCQUF5QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQU9oRyxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsU0FBUztJQXFEbkM7SUFDQTtJQUNBO0lBQ0E7SUFDRTtJQXhESCxrQkFBa0IsR0FBNkIsSUFBSSxlQUFlLENBQ3pFLElBQUksQ0FDTCxDQUFDO0lBRUYsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxHQUFHO1FBQ0wsT0FBTyxJ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TUFBTSxDQUFDLENBQUM7UUFDM0MsTUFBTSxZQUFZLEdBQUcsSUFBSSxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxRQUFRLENBQUM7WUFDekIsUUFBUSxFQUFFLFlBQVk7U0FDdkIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN4QyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDL0IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNwQyxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQy9ELElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDekQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbmltcG9ydCB7IEVudGl0eVJlY29yZCwgV29ya3NwYWNlLCBXb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSAnQGlnbzIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29uZmlnU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvY29uZmlnJztcclxuXHJcbmltcG9ydCBDb2xsZWN0aW9uIGZyb20gJ29sL0NvbGxlY3Rpb24nO1xyXG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xyXG5pbXBvcnQgT2xHZW9KU09OIGZyb20gJ29sL2Zvcm1hdC9HZW9KU09OJztcclxuaW1wb3J0IHR5cGUgeyBUeXBlIH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XHJcbmltcG9ydCB0eXBlIHsgZGVmYXVsdCBhcyBPbEdlb21ldHJ5IH0gZnJvbSAnb2wvZ2VvbS9HZW9tZXRyeSc7XHJcbmltcG9ydCBPbE1vZGlmeSBmcm9tICdvbC9pbnRlcmFjdGlvbi9Nb2RpZnknO1xyXG5pbXBvcnQgT2xWZWN0b3JTb3VyY2UgZnJvbSAnb2wvc291cmNlL1ZlY3Rvcic7XHJcbmltcG9ydCAqIGFzIE9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xyXG5cclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEZlYXR1cmVEYXRhU291cmNlLCBSZWxhdGlvbk9wdGlvbnMgfSBmcm9tICcuLi8uLi9kYXRhc291cmNlL3NoYXJlZCc7XHJcbmltcG9ydCB7IEdlb21ldHJ5VHlwZSwgY3JlYXRlSW50ZXJhY3Rpb25TdHlsZSB9IGZyb20gJy4uLy4uL2RyYXcvc2hhcmVkJztcclxuaW1wb3J0IHsgZmVhdHVyZVRvT2wgfSBmcm9tICcuLi8uLi9mZWF0dXJlL3NoYXJlZCc7XHJcbmltcG9ydCB7IERyYXdDb250cm9sIH0gZnJvbSAnLi4vLi4vZ2VvbWV0cnkvc2hhcmVkJztcclxuaW1wb3J0IHsgSW1hZ2VMYXllciwgVmVjdG9yTGF5ZXIgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQnO1xyXG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcCc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvblBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi4vY29uZmlybWF0aW9uLXBvcHVwL2NvbmZpcm1hdGlvbi1wb3B1cC5jb21wb25lbnQnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFZGl0aW9uV29ya3NwYWNlT3B0aW9ucyBleHRlbmRzIFdvcmtzcGFjZU9wdGlvbnMge1xyXG4gIGxheWVyOiBJbWFnZUxheWVyIHwgVmVjdG9yTGF5ZXI7XHJcbiAgbWFwOiBJZ29NYXA7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBFZGl0aW9uV29ya3NwYWNlIGV4dGVuZHMgV29ya3NwYWNlIHtcclxuICByZWFkb25seSBpblJlc29sdXRpb25SYW5nZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoXHJcbiAgICB0cnVlXHJcbiAgKTtcclxuXHJcbiAgZ2V0IGxheWVyKCk6IEltYWdlTGF5ZXIgfCBWZWN0b3JMYXllciB7XHJcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLmxheWVyO1xyXG4gIH1cclxuXHJcbiAgZ2V0IG1hcCgpOiBJZ29NYXAge1xyXG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5tYXA7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGRyYXdDb250cm9sOiBEcmF3Q29udHJvbDtcclxuICBwcml2YXRlIGRyYXdFbmQkJDogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgb2xEcmF3aW5nTGF5ZXJTb3VyY2UgPSBuZXcgT2xWZWN0b3JTb3VyY2UoKTtcclxuICBwcml2YXRlIG9sRHJhd2luZ0xheWVyOiBWZWN0b3JMYXllcjtcclxuICBwdWJsaWMgZ2VvbWV0cnlUeXBlID0gR2VvbWV0cnlUeXBlOyAvLyBSZWZlcmVuY2UgdG8gdGhlIEdlb21ldHJ5VHlwZSBlbnVtXHJcbiAgcHVibGljIG1vZGlmeTsgLy8gUmVmZXJlbmNlIHRvIHRoZSBvbCBpbnRlcmFjdGlvblxyXG5cclxuICBwdWJsaWMgbW9kaWZ5U3R5bGUgPSBuZXcgT2xTdHlsZS5TdHlsZSh7XHJcbiAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XHJcbiAgICAgIGNvbG9yOiAncmdiYSgyNTUsMjU1LDI1NSwxKScsXHJcbiAgICAgIHdpZHRoOiAxXHJcbiAgICB9KSxcclxuICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoe1xyXG4gICAgICBjb2xvcjogJ3JnYmEoMCwxNjEsMjIyLDEpJ1xyXG4gICAgfSksXHJcbiAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcclxuICAgICAgcmFkaXVzOiA3LFxyXG4gICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XHJcbiAgICAgICAgY29sb3I6ICdyZ2JhKDI1NSwyNTUsMjU1LDEpJyxcclxuICAgICAgICB3aWR0aDogMVxyXG4gICAgICB9KSxcclxuICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XHJcbiAgICAgICAgY29sb3I6ICdyZ2JhKDAsMTYxLDIyMiwxKSdcclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfSk7XHJcblxyXG4gIHByaXZhdGUgbmV3RmVhdHVyZWZpbHRlckNsYXVzZUZ1bmMgPSAocmVjb3JkOiBFbnRpdHlSZWNvcmQ8b2JqZWN0PikgPT4ge1xyXG4gICAgcmV0dXJuIHJlY29yZC5zdGF0ZS5uZXdGZWF0dXJlID09PSB0cnVlO1xyXG4gIH07XHJcblxyXG4gIHByaXZhdGUgZWRpdEZlYXR1cmVmaWx0ZXJDbGF1c2VGdW5jID0gKHJlY29yZDogRW50aXR5UmVjb3JkPG9iamVjdD4pID0+IHtcclxuICAgIHJldHVybiByZWNvcmQuc3RhdGUuZWRpdCA9PT0gdHJ1ZTtcclxuICB9O1xyXG5cclxuICBwdWJsaWMgZmlsbENvbG9yOiBzdHJpbmc7XHJcbiAgcHVibGljIHN0cm9rZUNvbG9yOiBzdHJpbmc7XHJcbiAgcHVibGljIHN0cm9rZVdpZHRoOiBudW1iZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgYWRkaW5nJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+LFxyXG4gICAgcHJpdmF0ZSBnZXREb21haW5WYWx1ZXM6IChyZWxhdGlvbjogUmVsYXRpb25PcHRpb25zKSA9PiBPYnNlcnZhYmxlPGFueT4sXHJcbiAgICBwcm90ZWN0ZWQgb3B0aW9uczogRWRpdGlvbldvcmtzcGFjZU9wdGlvbnNcclxuICApIHtcclxuICAgIHN1cGVyKG9wdGlvbnMpO1xyXG4gICAgdGhpcy5tYXAudmlld0NvbnRyb2xsZXIucmVzb2x1dGlvbiQuc3Vic2NyaWJlKChtYXBSZXNvbHV0aW9uKSA9PiB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICBtYXBSZXNvbHV0aW9uID4gdGhpcy5sYXllci5taW5SZXNvbHV0aW9uICYmXHJcbiAgICAgICAgbWFwUmVzb2x1dGlvbiA8IHRoaXMubGF5ZXIubWF4UmVzb2x1dGlvblxyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLmluUmVzb2x1dGlvblJhbmdlJC5uZXh0KHRydWUpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaW5SZXNvbHV0aW9uUmFuZ2UkLm5leHQoZmFsc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmRyYXdDb250cm9sID0gdGhpcy5jcmVhdGVEcmF3Q29udHJvbCgpO1xyXG4gICAgdGhpcy5kcmF3Q29udHJvbC5zZXRHZW9tZXRyeVR5cGUodGhpcy5nZW9tZXRyeVR5cGUuUG9pbnQgYXMgYW55KTtcclxuXHJcbiAgICB0aGlzLm1hcC5yZW1vdmVMYXllcih0aGlzLm9sRHJhd2luZ0xheWVyKTtcclxuXHJcbiAgICB0aGlzLm9sRHJhd2luZ0xheWVyID0gbmV3IFZlY3RvckxheWVyKHtcclxuICAgICAgaWQ6ICdpZ28tZHJhdy1sYXllcicsXHJcbiAgICAgIHRpdGxlOiAnZWRpdGlvbicsXHJcbiAgICAgIHpJbmRleDogMzAwLFxyXG4gICAgICBzb3VyY2U6IG5ldyBGZWF0dXJlRGF0YVNvdXJjZSgpLFxyXG4gICAgICBzaG93SW5MYXllckxpc3Q6IGZhbHNlLFxyXG4gICAgICBleHBvcnRhYmxlOiBmYWxzZSxcclxuICAgICAgYnJvd3NhYmxlOiBmYWxzZSxcclxuICAgICAgd29ya3NwYWNlOiB7XHJcbiAgICAgICAgZW5hYmxlZDogZmFsc2VcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVGZWF0dXJlKGZlYXR1cmUsIHdvcmtzcGFjZSkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oQ29uZmlybWF0aW9uUG9wdXBDb21wb25lbnQsIHtcclxuICAgICAgICBkaXNhYmxlQ2xvc2U6IGZhbHNlLFxyXG4gICAgICAgIGRhdGE6IHsgdHlwZTogJ2RlbGV0ZScgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlc3VsdCA9PT0gZmFsc2UpIHtcclxuICAgICAgICAgIGxldCBpZCwgdXJsO1xyXG4gICAgICAgICAgY29uc3QgYmFzZVVybCA9IHdvcmtzcGFjZS5sYXllci5kYXRhU291cmNlLm9wdGlvbnMuZWRpdGlvbi5iYXNlVXJsO1xyXG4gICAgICAgICAgY29uc3QgZGVsZXRlVXJsID1cclxuICAgICAgICAgICAgd29ya3NwYWNlLmxheWVyLmRhdGFTb3VyY2Uub3B0aW9ucy5lZGl0aW9uLmRlbGV0ZVVybDtcclxuICAgICAgICAgIGlmIChiYXNlVXJsLmxlbmd0aCkge1xyXG4gICAgICAgICAgICB1cmwgPSB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCdlZGl0aW9uLnVybCcpXHJcbiAgICAgICAgICAgICAgPyB0aGlzLmNvbmZpZ1NlcnZpY2UuZ2V0Q29uZmlnKCdlZGl0aW9uLnVybCcpICtcclxuICAgICAgICAgICAgICAgIGJhc2VVcmwgK1xyXG4gICAgICAgICAgICAgICAgJz8nICtcclxuICAgICAgICAgICAgICAgIGRlbGV0ZVVybFxyXG4gICAgICAgICAgICAgIDogYmFzZVVybCArICc/JyArIGRlbGV0ZVVybDtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHVybCA9IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ2VkaXRpb24udXJsJylcclxuICAgICAgICAgICAgICA/IHRoaXMuY29uZmlnU2VydmljZS5nZXRDb25maWcoJ2VkaXRpb24udXJsJykgKyBkZWxldGVVcmxcclxuICAgICAgICAgICAgICA6IGRlbGV0ZVVybDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBmb3IgKGNvbnN0IGNvbHVtbiBvZiB3b3Jrc3BhY2UubWV0YS50YWJsZVRlbXBsYXRlLmNvbHVtbnMpIHtcclxuICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBmZWF0dXJlLnByb3BlcnRpZXMpIHtcclxuICAgICAgICAgICAgICBsZXQgY29sdW1uTmFtZSA9IGNvbHVtbi5uYW1lO1xyXG4gICAgICAgICAgICAgIGlmIChjb2x1bW5OYW1lLmluY2x1ZGVzKCdwcm9wZXJ0aWVzLicpKSB7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW5OYW1lID0gY29sdW1uTmFtZS5zcGxpdCgnLicpWzFdO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBpZiAoY29sdW1uTmFtZSA9PT0gcHJvcGVydHkgJiYgY29sdW1uLnByaW1hcnkgPT09IHRydWUpIHtcclxuICAgICAgICAgICAgICAgIGlkID0gZmVhdHVyZS5wcm9wZXJ0aWVzW3Byb3BlcnR5XTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmICh1cmwpIHtcclxuICAgICAgICAgICAgdXJsICs9IGlkO1xyXG4gICAgICAgICAgICB0aGlzLmRlbGV0ZUZlYXR1cmUod29ya3NwYWNlLCB1cmwpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9LCAyNTApO1xyXG4gIH1cclxuXHJcbiAgZWRpdEZlYXR1cmUoZmVhdHVyZSwgd29ya3NwYWNlOiBFZGl0aW9uV29ya3NwYWNlKSB7XHJcbiAgICBmZWF0dXJlLmVkaXRpb24gPSB0cnVlO1xyXG4gICAgbGV0IGlkO1xyXG4gICAgbGV0IGZpbmQgPSBmYWxzZTtcclxuICAgIGNvbnN0IGVkaXRpb25PcHQgPSB3b3Jrc3BhY2UubGF5ZXIuZGF0YVNvdXJjZS5vcHRpb25zLmVkaXRpb247XHJcbiAgICBmb3IgKGNvbnN0IGNvbHVtbiBvZiB3b3Jrc3BhY2UubWV0YS50YWJsZVRlbXBsYXRlLmNvbHVtbnMpIHtcclxuICAgICAgLy8gVXBkYXRlIGRvbWFpbiBsaXN0XHJcbiAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ2xpc3QnIHx8IGNvbHVtbi50eXBlID09PSAnYXV0b2NvbXBsZXRlJykge1xyXG4gICAgICAgIHRoaXMuZ2V0RG9tYWluVmFsdWVzKGNvbHVtbi5yZWxhdGlvbikuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcclxuICAgICAgICAgIGNvbHVtbi5kb21haW5WYWx1ZXMgPSByZXN1bHQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGZpbmQgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBmZWF0dXJlLnByb3BlcnRpZXMpIHtcclxuICAgICAgICAgIGxldCBjb2x1bW5OYW1lID0gY29sdW1uLm5hbWU7XHJcbiAgICAgICAgICBpZiAoY29sdW1uTmFtZS5pbmNsdWRlcygncHJvcGVydGllcy4nKSkge1xyXG4gICAgICAgICAgICBjb2x1bW5OYW1lID0gY29sdW1uTmFtZS5zcGxpdCgnLicpWzFdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGNvbHVtbk5hbWUgPT09IHByb3BlcnR5ICYmIGNvbHVtbi5wcmltYXJ5ID09PSB0cnVlKSB7XHJcbiAgICAgICAgICAgIGlkID0gZmVhdHVyZS5wcm9wZXJ0aWVzW3Byb3BlcnR5XTtcclxuICAgICAgICAgICAgZmluZCA9IHRydWU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgIGZlYXR1cmUub3JpZ2luYWxfcHJvcGVydGllcyA9IEpTT04ucGFyc2UoXHJcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoZmVhdHVyZS5wcm9wZXJ0aWVzKVxyXG4gICAgICApO1xyXG4gICAgICBmZWF0dXJlLm9yaWdpbmFsX2dlb21ldHJ5ID0gZmVhdHVyZS5nZW9tZXRyeTtcclxuICAgICAgZmVhdHVyZS5pZGtleSA9IGlkO1xyXG4gICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuc3RhdGUudXBkYXRlQWxsKHsgZWRpdDogZmFsc2UgfSk7XHJcbiAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5zdGF0ZVZpZXcuZmlsdGVyKHRoaXMuZWRpdEZlYXR1cmVmaWx0ZXJDbGF1c2VGdW5jKTtcclxuICAgICAgdGhpcy5hZGRGZWF0dXJlVG9TdG9yZShmZWF0dXJlLCB3b3Jrc3BhY2UpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gT25seSBmb3IgZWRpdGlvbiB3aXRoIGl0J3Mgb3duIGdlb21ldHJ5XHJcbiAgICAgIGlmICghZmVhdHVyZS5uZXdGZWF0dXJlICYmIGVkaXRpb25PcHQuZ2VvbVR5cGUpIHtcclxuICAgICAgICBmZWF0dXJlLm5ld0ZlYXR1cmUgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYWRkaW5nJC5uZXh0KHRydWUpO1xyXG4gICAgICAgIHdvcmtzcGFjZS5lbnRpdHlTdG9yZS5zdGF0ZS51cGRhdGVBbGwoeyBuZXdGZWF0dXJlOiBmYWxzZSB9KTtcclxuICAgICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuc3RhdGVWaWV3LmZpbHRlcih0aGlzLm5ld0ZlYXR1cmVmaWx0ZXJDbGF1c2VGdW5jKTtcclxuICAgICAgICBpZiAoZWRpdGlvbk9wdC5hZGRXaXRoRHJhdykge1xyXG4gICAgICAgICAgY29uc3QgZ2VvbWV0cnlUeXBlID0gZWRpdGlvbk9wdC5nZW9tVHlwZTtcclxuICAgICAgICAgIHRoaXMub25HZW9tZXRyeVR5cGVDaGFuZ2UoZ2VvbWV0cnlUeXBlLCBmZWF0dXJlLCB3b3Jrc3BhY2UpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuaW5zZXJ0KGZlYXR1cmUpO1xyXG4gICAgICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLnN0YXRlLnVwZGF0ZShcclxuICAgICAgICAgICAgZmVhdHVyZSxcclxuICAgICAgICAgICAgeyBuZXdGZWF0dXJlOiB0cnVlIH0sXHJcbiAgICAgICAgICAgIHRydWVcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGUgYSBEcmF3IENvbnRyb2xcclxuICAgKiBAcGFyYW0gZmlsbENvbG9yIHRoZSBmaWxsIGNvbG9yXHJcbiAgICogQHBhcmFtIHN0cm9rZUNvbG9yIHRoZSBzdHJva2UgY29sb3JcclxuICAgKiBAcGFyYW0gc3Ryb2tlV2lkdGggdGhlIHN0cm9rZSB3aWR0aFxyXG4gICAqIEByZXR1cm5zIGEgRHJhdyBDb250cm9sXHJcbiAgICovXHJcbiAgY3JlYXRlRHJhd0NvbnRyb2woXHJcbiAgICBmaWxsQ29sb3I/OiBzdHJpbmcsXHJcbiAgICBzdHJva2VDb2xvcj86IHN0cmluZyxcclxuICAgIHN0cm9rZVdpZHRoPzogbnVtYmVyXHJcbiAgKSB7XHJcbiAgICBjb25zdCBkcmF3Q29udHJvbCA9IG5ldyBEcmF3Q29udHJvbCh7XHJcbiAgICAgIGdlb21ldHJ5VHlwZTogdW5kZWZpbmVkLFxyXG4gICAgICBkcmF3aW5nTGF5ZXJTb3VyY2U6IHRoaXMub2xEcmF3aW5nTGF5ZXJTb3VyY2UsXHJcbiAgICAgIGRyYXdpbmdMYXllclN0eWxlOiBuZXcgT2xTdHlsZS5TdHlsZSh7fSksXHJcbiAgICAgIGludGVyYWN0aW9uU3R5bGU6IGNyZWF0ZUludGVyYWN0aW9uU3R5bGUoXHJcbiAgICAgICAgZmlsbENvbG9yLFxyXG4gICAgICAgIHN0cm9rZUNvbG9yLFxyXG4gICAgICAgIHN0cm9rZVdpZHRoXHJcbiAgICAgIClcclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiBkcmF3Q29udHJvbDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENhbGxlZCB3aGVuIHRoZSB1c2VyIHNlbGVjdHMgYSBuZXcgZ2VvbWV0cnkgdHlwZVxyXG4gICAqIEBwYXJhbSBnZW9tZXRyeVR5cGUgdGhlIGdlb21ldHJ5IHR5cGUgc2VsZWN0ZWQgYnkgdGhlIHVzZXJcclxuICAgKi9cclxuICBvbkdlb21ldHJ5VHlwZUNoYW5nZShcclxuICAgIGdlb21ldHJ5VHlwZTogVHlwZSxcclxuICAgIGZlYXR1cmUsXHJcbiAgICB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2VcclxuICApIHtcclxuICAgIHRoaXMuZHJhd0NvbnRyb2wuc2V0R2VvbWV0cnlUeXBlKGdlb21ldHJ5VHlwZSk7XHJcbiAgICB0aGlzLnRvZ2dsZURyYXdDb250cm9sKGZlYXR1cmUsIHdvcmtzcGFjZSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3RpdmF0ZSB0aGUgY29ycmVjdCBjb250cm9sXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB0b2dnbGVEcmF3Q29udHJvbChmZWF0dXJlLCB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2UpIHtcclxuICAgIHRoaXMuZGVhY3RpdmF0ZURyYXdDb250cm9sKCk7XHJcbiAgICB0aGlzLmFjdGl2YXRlRHJhd0NvbnRyb2woZmVhdHVyZSwgd29ya3NwYWNlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlYWN0aXZhdGUgdGhlIGFjdGl2ZSBkcmF3IGNvbnRyb2xcclxuICAgKi9cclxuICBwdWJsaWMgZGVhY3RpdmF0ZURyYXdDb250cm9sKCkge1xyXG4gICAgaWYgKCF0aGlzLmRyYXdDb250cm9sKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5kcmF3RW5kJCQpIHtcclxuICAgICAgdGhpcy5kcmF3RW5kJCQudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRyYXdDb250cm9sLnNldE9sTWFwKHVuZGVmaW5lZCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBY3RpdmF0ZSBhIGdpdmVuIGNvbnRyb2xcclxuICAgKi9cclxuICBwcml2YXRlIGFjdGl2YXRlRHJhd0NvbnRyb2woZmVhdHVyZSwgd29ya3NwYWNlOiBFZGl0aW9uV29ya3NwYWNlKSB7XHJcbiAgICB0aGlzLmRyYXdFbmQkJCA9IHRoaXMuZHJhd0NvbnRyb2wuZW5kJC5zdWJzY3JpYmUoXHJcbiAgICAgIChvbEdlb21ldHJ5OiBPbEdlb21ldHJ5KSA9PiB7XHJcbiAgICAgICAgdGhpcy5hZGRGZWF0dXJlVG9TdG9yZShmZWF0dXJlLCB3b3Jrc3BhY2UsIG9sR2VvbWV0cnkpO1xyXG4gICAgICB9XHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuZHJhd0NvbnRyb2wuc2V0T2xNYXAodGhpcy5tYXAub2wsIHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkIGEgZmVhdHVyZSB0byBsYXllci4gVGhlIGxvYWRpbmcgc3RyYXRlZ3kgb2YgdGhlIGxheWVyXHJcbiAgICogd2lsbCB0cmlnZ2VyIGFuZCBhZGQgdGhlIGZlYXR1cmUgdG8gdGhlIHdvcmtzcGFjZSBzdG9yZS5cclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBwcml2YXRlIGFkZEZlYXR1cmVUb1N0b3JlKFxyXG4gICAgZmVhdHVyZSxcclxuICAgIHdvcmtzcGFjZTogRWRpdGlvbldvcmtzcGFjZSxcclxuICAgIG9sR2VvbWV0cnk/OiBPbEdlb21ldHJ5XHJcbiAgKSB7XHJcbiAgICBjb25zdCBwcm9qZWN0aW9uID0gdGhpcy5tYXAub2wuZ2V0VmlldygpLmdldFByb2plY3Rpb24oKTtcclxuICAgIGxldCBnZW9tZXRyeSA9IGZlYXR1cmUuZ2VvbWV0cnk7XHJcblxyXG4gICAgLy8gSWYgYW4gb2xHZW9tZXRyeSBpcyBwYXNzZWQsIGl0IG1lYW5zIHRoYXQgaXQgaXMgYSBuZXcgZmVhdHVyZVxyXG4gICAgaWYgKG9sR2VvbWV0cnkpIHtcclxuICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLmluc2VydChmZWF0dXJlKTtcclxuICAgICAgd29ya3NwYWNlLmVudGl0eVN0b3JlLnN0YXRlLnVwZGF0ZShmZWF0dXJlLCB7IG5ld0ZlYXR1cmU6IHRydWUgfSwgdHJ1ZSk7XHJcbiAgICAgIGdlb21ldHJ5ID0gbmV3IE9sR2VvSlNPTigpLndyaXRlR2VvbWV0cnlPYmplY3Qob2xHZW9tZXRyeSwge1xyXG4gICAgICAgIGZlYXR1cmVQcm9qZWN0aW9uOiBwcm9qZWN0aW9uLFxyXG4gICAgICAgIGRhdGFQcm9qZWN0aW9uOiAnRVBTRzo0MzI2J1xyXG4gICAgICB9KSBhcyBhbnk7XHJcblxyXG4gICAgICBmZWF0dXJlLmdlb21ldHJ5ID0gZ2VvbWV0cnk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB3b3Jrc3BhY2UuZW50aXR5U3RvcmUuc3RhdGUudXBkYXRlKGZlYXR1cmUsIHsgZWRpdDogdHJ1ZSB9LCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICBmZWF0dXJlLnByb2plY3Rpb24gPSAnRVBTRzo0MzI2JztcclxuXHJcbiAgICBjb25zdCBmZWF0dXJlT2wgPSBmZWF0dXJlVG9PbChmZWF0dXJlLCBwcm9qZWN0aW9uLmdldENvZGUoKSk7XHJcblxyXG4gICAgdGhpcy5vbERyYXdpbmdMYXllci5kYXRhU291cmNlLm9sLmNsZWFyKCk7XHJcbiAgICB0aGlzLm9sRHJhd2luZ0xheWVyLmRhdGFTb3VyY2Uub2wuYWRkRmVhdHVyZShmZWF0dXJlT2wpO1xyXG4gICAgdGhpcy5tYXAuYWRkTGF5ZXIodGhpcy5vbERyYXdpbmdMYXllcik7XHJcblxyXG4gICAgdGhpcy5kZWFjdGl2YXRlRHJhd0NvbnRyb2woKTtcclxuICAgIHRoaXMuY3JlYXRlTW9kaWZ5SW50ZXJhY3Rpb24oZmVhdHVyZU9sLCBmZWF0dXJlLCB3b3Jrc3BhY2UpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRGVsZXRlIGRyYXdpbmdzIGxheWVyIGFuZCBzb3VyY2UgZnJvbSB0aGUgbWFwIEFORCBmZWF0dXJlIGZyb20gdGhlIGVudGl0eSBzdG9yZS5cclxuICAgKiBMYXllciByZWZyZXNoIHdpbGwgYXV0b21hdGljYWxseSBhZGQgdGhlIG5ldyBmZWF0dXJlIGludG8gdGhlIHN0b3JlLlxyXG4gICAqL1xyXG4gIGRlbGV0ZURyYXdpbmdzKCkge1xyXG4gICAgdGhpcy5tYXAucmVtb3ZlTGF5ZXIodGhpcy5vbERyYXdpbmdMYXllcik7XHJcbiAgICB0aGlzLm9sRHJhd2luZ0xheWVyU291cmNlLmNsZWFyKCk7XHJcbiAgICB0aGlzLm1hcC5vbC5yZW1vdmVJbnRlcmFjdGlvbih0aGlzLm1vZGlmeSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDcmVhdGUgYSBtb2RpZnkgaW50ZXJhY3Rpb24gdG8gYWxsb3cgYSBnZW9tZXRyeSBjaGFuZ2Ugb25lIGZlYXR1cmUgYXQgdGhlIHRpbWUgKGRyYWcgYW5kIGRyb3ApXHJcbiAgICovXHJcbiAgY3JlYXRlTW9kaWZ5SW50ZXJhY3Rpb24oXHJcbiAgICBvbEZlYXR1cmU6IE9sRmVhdHVyZTxPbEdlb21ldHJ5PixcclxuICAgIGZlYXR1cmUsXHJcbiAgICB3b3Jrc3BhY2U6IEVkaXRpb25Xb3Jrc3BhY2VcclxuICApIHtcclxuICAgIHRoaXMubWFwLm9sLnJlbW92ZUludGVyYWN0aW9uKHRoaXMubW9kaWZ5KTtcclxuICAgIGNvbnN0IG9sQ29sbGVjdGlvbiA9IG5ldyBDb2xsZWN0aW9uKFtvbEZlYXR1cmVdLCB7IHVuaXF1ZTogdHJ1ZSB9KTtcclxuICAgIHRoaXMubW9kaWZ5ID0gbmV3IE9sTW9kaWZ5KHtcclxuICAgICAgZmVhdHVyZXM6IG9sQ29sbGVjdGlvblxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5tYXAub2wuYWRkSW50ZXJhY3Rpb24odGhpcy5tb2RpZnkpO1xyXG4gICAgb2xDb2xsZWN0aW9uLmZvckVhY2goKGZlYXR1cmUpID0+IHtcclxuICAgICAgZmVhdHVyZS5zZXRTdHlsZSh0aGlzLm1vZGlmeVN0eWxlKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubW9kaWZ5Lm9uKCdtb2RpZnllbmQnLCAoZXZlbnQpID0+IHtcclxuICAgICAgY29uc3Qgb2xHZW9tZXRyeSA9IGV2ZW50LmZlYXR1cmVzLmdldEFycmF5KClbMF0/LmdldEdlb21ldHJ5KCk7XHJcbiAgICAgIGlmIChvbEdlb21ldHJ5KSB7XHJcbiAgICAgICAgdGhpcy5hZGRGZWF0dXJlVG9TdG9yZShmZWF0dXJlLCB3b3Jrc3BhY2UsIG9sR2VvbWV0cnkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19