@igo2/geo 17.0.1-next.2 → 18.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 (206) hide show
  1. package/esm2022/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +4 -4
  2. package/esm2022/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +4 -4
  3. package/esm2022/lib/catalog/catalog-browser/catalog-browser.component.mjs +4 -4
  4. package/esm2022/lib/catalog/catalog-browser/catalog-browser.module.mjs +5 -5
  5. package/esm2022/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +4 -4
  6. package/esm2022/lib/catalog/catalog-library/catalog-library-item.component.mjs +4 -4
  7. package/esm2022/lib/catalog/catalog-library/catalog-library.component.mjs +4 -4
  8. package/esm2022/lib/catalog/catalog-library/catalog-library.module.mjs +5 -5
  9. package/esm2022/lib/catalog/catalog.module.mjs +5 -5
  10. package/esm2022/lib/catalog/shared/catalog.enum.mjs +1 -1
  11. package/esm2022/lib/catalog/shared/catalog.service.mjs +4 -4
  12. package/esm2022/lib/datasource/shared/capabilities.service.mjs +4 -4
  13. package/esm2022/lib/datasource/shared/datasource.service.mjs +4 -4
  14. package/esm2022/lib/datasource/shared/datasources/wfs.service.mjs +4 -4
  15. package/esm2022/lib/datasource/shared/options/options-api.service.mjs +4 -4
  16. package/esm2022/lib/directions/directions-buttons/directions-buttons.component.mjs +4 -4
  17. package/esm2022/lib/directions/directions-inputs/directions-inputs.component.mjs +4 -4
  18. package/esm2022/lib/directions/directions-results/directions-results.component.mjs +4 -4
  19. package/esm2022/lib/directions/directions-sources/osrm-directions-source.mjs +4 -4
  20. package/esm2022/lib/directions/directions.component.mjs +4 -4
  21. package/esm2022/lib/directions/directions.module.mjs +5 -5
  22. package/esm2022/lib/directions/shared/directions.service.mjs +4 -4
  23. package/esm2022/lib/download/download-button/download-button.component.mjs +4 -4
  24. package/esm2022/lib/download/download.module.mjs +5 -5
  25. package/esm2022/lib/download/shared/download.service.mjs +4 -4
  26. package/esm2022/lib/draw/draw/draw-layer-popup.component.mjs +4 -4
  27. package/esm2022/lib/draw/draw/draw-popup.component.mjs +4 -4
  28. package/esm2022/lib/draw/draw/draw-shorcuts.component.mjs +4 -4
  29. package/esm2022/lib/draw/draw/draw.component.mjs +4 -4
  30. package/esm2022/lib/draw/draw/draw.module.mjs +5 -5
  31. package/esm2022/lib/draw/drawingTool.module.mjs +5 -5
  32. package/esm2022/lib/draw/shared/draw-icon.service.mjs +4 -4
  33. package/esm2022/lib/feature/feature-details/feature-details.component.mjs +4 -4
  34. package/esm2022/lib/feature/feature-details/feature-details.directive.mjs +4 -4
  35. package/esm2022/lib/feature/feature-details/feature-details.module.mjs +5 -5
  36. package/esm2022/lib/feature/feature-form/feature-form.component.mjs +4 -4
  37. package/esm2022/lib/feature/feature-form/feature-form.module.mjs +5 -5
  38. package/esm2022/lib/feature/feature.module.mjs +5 -5
  39. package/esm2022/lib/feature/shared/feature-store.utils.mjs +1 -1
  40. package/esm2022/lib/feature/shared/store.mjs +1 -1
  41. package/esm2022/lib/filter/filter.module.mjs +5 -5
  42. package/esm2022/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +4 -4
  43. package/esm2022/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +4 -4
  44. package/esm2022/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +4 -4
  45. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +4 -4
  46. package/esm2022/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +4 -4
  47. package/esm2022/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +4 -4
  48. package/esm2022/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +4 -4
  49. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +4 -4
  50. package/esm2022/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +4 -4
  51. package/esm2022/lib/filter/shared/filterable-datasource.pipe.mjs +4 -4
  52. package/esm2022/lib/filter/shared/ogc-filter-time.service.mjs +4 -4
  53. package/esm2022/lib/filter/shared/ogc-filter.service.mjs +4 -4
  54. package/esm2022/lib/filter/shared/spatial-filter.service.mjs +4 -4
  55. package/esm2022/lib/filter/shared/time-filter.service.mjs +4 -4
  56. package/esm2022/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +4 -4
  57. package/esm2022/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +4 -4
  58. package/esm2022/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +4 -4
  59. package/esm2022/lib/filter/time-filter-button/time-filter-button.component.mjs +4 -4
  60. package/esm2022/lib/filter/time-filter-form/time-filter-form.component.mjs +4 -4
  61. package/esm2022/lib/filter/time-filter-item/time-filter-item.component.mjs +4 -4
  62. package/esm2022/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +4 -4
  63. package/esm2022/lib/filter/time-filter-list/time-filter-list.component.mjs +4 -4
  64. package/esm2022/lib/geo.module.mjs +5 -5
  65. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +4 -4
  66. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +4 -4
  67. package/esm2022/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +5 -5
  68. package/esm2022/lib/geometry/geometry.module.mjs +5 -5
  69. package/esm2022/lib/import-export/export-button/export-button.component.mjs +4 -4
  70. package/esm2022/lib/import-export/import-export/import-export.component.mjs +4 -4
  71. package/esm2022/lib/import-export/import-export.module.mjs +5 -5
  72. package/esm2022/lib/import-export/shared/drop-geo-file.directive.mjs +4 -4
  73. package/esm2022/lib/import-export/shared/export.service.mjs +4 -4
  74. package/esm2022/lib/import-export/shared/import.service.mjs +4 -4
  75. package/esm2022/lib/layer/layer-item/layer-item.component.mjs +4 -4
  76. package/esm2022/lib/layer/layer-legend/layer-legend.component.mjs +4 -4
  77. package/esm2022/lib/layer/layer-legend-item/layer-legend-item.component.mjs +4 -4
  78. package/esm2022/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +4 -4
  79. package/esm2022/lib/layer/layer-legend-list/layer-legend-list.component.mjs +4 -4
  80. package/esm2022/lib/layer/layer-list/layer-list-binding.directive.mjs +4 -4
  81. package/esm2022/lib/layer/layer-list/layer-list.component.mjs +4 -4
  82. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.component.mjs +4 -4
  83. package/esm2022/lib/layer/layer-list-tool/layer-list-tool.service.mjs +4 -4
  84. package/esm2022/lib/layer/layer.module.mjs +5 -5
  85. package/esm2022/lib/layer/shared/layer.service.mjs +18 -14
  86. package/esm2022/lib/layer/shared/layers/image-layer.mjs +1 -1
  87. package/esm2022/lib/layer/shared/layers/layer.mjs +2 -6
  88. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +1 -1
  89. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +3 -3
  90. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
  91. package/esm2022/lib/layer/track-feature-button/track-feature-button.component.mjs +4 -4
  92. package/esm2022/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +4 -4
  93. package/esm2022/lib/map/baselayers-switcher/mini-basemap.component.mjs +4 -4
  94. package/esm2022/lib/map/geolocate-button/geolocate-button.component.mjs +4 -4
  95. package/esm2022/lib/map/home-extent-button/home-extent-button.component.mjs +4 -4
  96. package/esm2022/lib/map/info-section/info-section.component.mjs +4 -4
  97. package/esm2022/lib/map/map-browser/map-browser.component.mjs +4 -4
  98. package/esm2022/lib/map/map-center/map-center.component.mjs +4 -4
  99. package/esm2022/lib/map/map.module.mjs +5 -5
  100. package/esm2022/lib/map/menu-button/menu-button.component.mjs +4 -4
  101. package/esm2022/lib/map/offline-button/offline-button.component.mjs +4 -4
  102. package/esm2022/lib/map/rotation-button/rotation-button.component.mjs +4 -4
  103. package/esm2022/lib/map/shared/hover-feature.directive.mjs +6 -6
  104. package/esm2022/lib/map/shared/map-pointer-position.directive.mjs +4 -4
  105. package/esm2022/lib/map/shared/map.mjs +2 -2
  106. package/esm2022/lib/map/shared/map.service.mjs +4 -4
  107. package/esm2022/lib/map/shared/mapOffline.directive.mjs +4 -4
  108. package/esm2022/lib/map/shared/projection.service.mjs +4 -4
  109. package/esm2022/lib/map/swipe-control/swipe-control.component.mjs +4 -4
  110. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +4 -4
  111. package/esm2022/lib/map/zoom-button/zoom-button.component.mjs +4 -4
  112. package/esm2022/lib/measure/measure.module.mjs +5 -5
  113. package/esm2022/lib/measure/measurer/measure-format.pipe.mjs +4 -4
  114. package/esm2022/lib/measure/measurer/measurer-dialog.component.mjs +4 -4
  115. package/esm2022/lib/measure/measurer/measurer-item.component.mjs +4 -4
  116. package/esm2022/lib/measure/measurer/measurer.component.mjs +4 -4
  117. package/esm2022/lib/measure/measurer/measurer.module.mjs +5 -5
  118. package/esm2022/lib/metadata/metadata-button/metadata-button.component.mjs +7 -7
  119. package/esm2022/lib/metadata/metadata.module.mjs +5 -5
  120. package/esm2022/lib/metadata/shared/metadata.service.mjs +4 -4
  121. package/esm2022/lib/offline/geoDB/configFileToGeoDB.service.mjs +5 -8
  122. package/esm2022/lib/offline/geoDB/geoDB.service.mjs +21 -22
  123. package/esm2022/lib/offline/index.mjs +3 -1
  124. package/esm2022/lib/offline/layerDB/layerDB.service.mjs +16 -17
  125. package/esm2022/lib/offline/offline.interface.mjs +2 -0
  126. package/esm2022/lib/offline/offline.provider.mjs +51 -0
  127. package/esm2022/lib/offline/shared/geo-network.service.mjs +15 -16
  128. package/esm2022/lib/overlay/shared/overlay.mjs +3 -2
  129. package/esm2022/lib/print/print/print.component.mjs +4 -4
  130. package/esm2022/lib/print/print-form/print-form.component.mjs +4 -4
  131. package/esm2022/lib/print/print.module.mjs +5 -5
  132. package/esm2022/lib/print/shared/print.service.mjs +4 -4
  133. package/esm2022/lib/query/query.module.mjs +5 -5
  134. package/esm2022/lib/query/shared/query-search-source.mjs +4 -4
  135. package/esm2022/lib/query/shared/query.directive.mjs +4 -4
  136. package/esm2022/lib/query/shared/query.service.mjs +4 -4
  137. package/esm2022/lib/search/search-bar/search-bar.component.mjs +4 -4
  138. package/esm2022/lib/search/search-bar/search-bar.module.mjs +5 -5
  139. package/esm2022/lib/search/search-results/save-feature-dialog.component.mjs +4 -4
  140. package/esm2022/lib/search/search-results/search-results-add-button.component.mjs +4 -4
  141. package/esm2022/lib/search/search-results/search-results-item.component.mjs +4 -4
  142. package/esm2022/lib/search/search-results/search-results.component.mjs +4 -4
  143. package/esm2022/lib/search/search-results/search-results.module.mjs +5 -5
  144. package/esm2022/lib/search/search-selector/search-selector.component.mjs +4 -4
  145. package/esm2022/lib/search/search-selector/search-selector.module.mjs +5 -5
  146. package/esm2022/lib/search/search-settings/search-settings.component.mjs +4 -4
  147. package/esm2022/lib/search/search-settings/search-settings.module.mjs +5 -5
  148. package/esm2022/lib/search/search.module.mjs +5 -5
  149. package/esm2022/lib/search/shared/search-pointer-summary.directive.mjs +6 -6
  150. package/esm2022/lib/search/shared/search.service.mjs +4 -4
  151. package/esm2022/lib/search/shared/sources/cadastre.mjs +4 -4
  152. package/esm2022/lib/search/shared/sources/coordinates.mjs +7 -7
  153. package/esm2022/lib/search/shared/sources/icherche.mjs +10 -10
  154. package/esm2022/lib/search/shared/sources/ilayer.mjs +7 -7
  155. package/esm2022/lib/search/shared/sources/nominatim.mjs +4 -4
  156. package/esm2022/lib/search/shared/sources/storedqueries.mjs +7 -7
  157. package/esm2022/lib/search/shared/sources/workspace.mjs +4 -4
  158. package/esm2022/lib/style/style-list/style-list.module.mjs +5 -5
  159. package/esm2022/lib/style/style-list/style-list.service.mjs +4 -4
  160. package/esm2022/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +4 -4
  161. package/esm2022/lib/style/style-modal/layer/style-modal-layer.component.mjs +4 -4
  162. package/esm2022/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +4 -4
  163. package/esm2022/lib/style/style-service/draw-style.service.mjs +4 -4
  164. package/esm2022/lib/style/style-service/style.service.mjs +4 -4
  165. package/esm2022/lib/style/style.module.mjs +5 -5
  166. package/esm2022/lib/toast/toast.component.mjs +4 -4
  167. package/esm2022/lib/toast/toast.module.mjs +5 -5
  168. package/esm2022/lib/utils/id-generator.mjs +1 -1
  169. package/esm2022/lib/utils/propertyTypeDetector/propertyTypeDetector.service.mjs +4 -4
  170. package/esm2022/lib/wkt/shared/wkt.service.mjs +4 -4
  171. package/esm2022/lib/wkt/wkt.module.mjs +5 -5
  172. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +4 -4
  173. package/esm2022/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +5 -5
  174. package/esm2022/lib/workspace/shared/edition-workspace.service.mjs +4 -4
  175. package/esm2022/lib/workspace/shared/feature-workspace.service.mjs +4 -4
  176. package/esm2022/lib/workspace/shared/wfs-workspace.service.mjs +4 -4
  177. package/esm2022/lib/workspace/shared/wms-workspace.service.mjs +4 -4
  178. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +4 -4
  179. package/esm2022/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +5 -5
  180. package/esm2022/lib/workspace/workspace-selector/workspace-selector.directive.mjs +4 -4
  181. package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +5 -5
  182. package/esm2022/lib/workspace/workspace-updator/workspace-updator.directive.mjs +4 -4
  183. package/esm2022/lib/workspace/workspace-updator/workspace-updator.module.mjs +5 -5
  184. package/esm2022/lib/workspace/workspace.module.mjs +5 -5
  185. package/fesm2022/igo2-geo.mjs +6095 -6054
  186. package/fesm2022/igo2-geo.mjs.map +1 -1
  187. package/lib/catalog/shared/catalog.enum.d.ts +1 -3
  188. package/lib/feature/shared/feature-store.utils.d.ts +1 -1
  189. package/lib/feature/shared/store.d.ts +1 -1
  190. package/lib/filter/ogc-filter-time/ogc-filter-time.component.d.ts +1 -1
  191. package/lib/layer/shared/layer.service.d.ts +5 -5
  192. package/lib/layer/shared/layers/image-layer.d.ts +1 -1
  193. package/lib/layer/shared/layers/layer.d.ts +1 -5
  194. package/lib/layer/shared/layers/tile-layer.d.ts +1 -1
  195. package/lib/layer/shared/layers/vector-layer.d.ts +2 -2
  196. package/lib/layer/shared/layers/vectortile-layer.d.ts +1 -1
  197. package/lib/map/shared/map.d.ts +1 -1
  198. package/lib/offline/geoDB/geoDB.service.d.ts +1 -1
  199. package/lib/offline/index.d.ts +2 -0
  200. package/lib/offline/layerDB/layerDB.service.d.ts +1 -1
  201. package/lib/offline/offline.interface.d.ts +3 -0
  202. package/lib/offline/offline.provider.d.ts +3 -0
  203. package/lib/offline/shared/geo-network.service.d.ts +3 -3
  204. package/lib/overlay/shared/overlay.d.ts +2 -1
  205. package/lib/utils/id-generator.d.ts +5 -5
  206. package/package.json +5 -5
@@ -192,10 +192,10 @@ export class CatalogBrowserGroupComponent {
192
192
  onTitleClick() {
193
193
  this.collapsed = !this.collapsed;
194
194
  }
195
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CatalogBrowserGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
196
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: CatalogBrowserGroupComponent, isStandalone: true, selector: "igo-catalog-browser-group", inputs: { catalog: "catalog", group: "group", map: "map", collapsed: "collapsed", resolution: "resolution", catalogAllowLegend: "catalogAllowLegend", toggleCollapsed: "toggleCollapsed", state: "state" }, outputs: { addedChange: "addedChange", layerAddedChange: "layerAddedChange" }, ngImport: i0, template: "<mat-list-item>\n <mat-icon\n matListItemIcon\n igoCollapse\n class=\"igo-chevron catalog-browser-group-carret\"\n [target]=\"items\"\n [collapsed]=\"collapsed\"\n (toggle)=\"onToggleCollapsed($event)\"\n >\n expand_less\n </mat-icon>\n\n <span\n class=\"igo-catalog-group-title\"\n matListItemTitle\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"title\"\n (click)=\"onTitleClick()\"\n >{{ title }}</span\n >\n\n <div matListItemMeta>\n <button *ngIf=\"group.externalProvider\" disabled=\"true\" mat-icon-button>\n <mat-icon\n class=\"igo-cataloggroup-external-icon\"\n *ngIf=\"group.externalProvider\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.externalProvider.group' | translate\"\n color=\"primary\"\n (click)=\"$event.stopPropagation()\"\n >\n public\n </mat-icon>\n </button>\n\n <ng-container\n *ngIf=\"(added$ | async) && (preview$ | async) === false; else notadded\"\n >\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.group.removeFromMap' | translate\"\n color=\"warn\"\n [disabled]=\"disabled$ | async\"\n (click)=\"onToggleClick($event)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n </ng-container>\n\n <ng-template #notadded>\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.group.addToMap' | translate\"\n [disabled]=\"disabled$ | async\"\n (click)=\"onToggleClick($event)\"\n >\n <mat-icon>add</mat-icon>\n </button>\n </ng-template>\n </div>\n</mat-list-item>\n\n<div #items>\n <ng-template ngFor let-item [ngForOf]=\"store.view.all$() | async\">\n <ng-container *ngIf=\"isGroup(item)\">\n <!-- todo: add display ans manage CatalogItemGroup -->\n </ng-container>\n <ng-container *ngIf=\"isLayer(item)\">\n <igo-catalog-browser-layer\n igoListItem\n [layer]=\"$any(item)\"\n [resolution]=\"resolution\"\n [map]=\"map\"\n [catalogAllowLegend]=\"catalogAllowLegend\"\n [added]=\"state.get(item).added\"\n (addedLayerIsPreview)=\"onLayerPreview($event)\"\n (addedChange)=\"onLayerAddedChange($event)\"\n >\n </igo-catalog-browser-layer>\n </ng-container>\n </ng-template>\n</div>\n", styles: [".igo-catalog-group-title{cursor:pointer}.igo-cataloggroup-external-icon{cursor:help}.catalog-browser-group-carret{margin-right:16px}.igo-catalog-group-title{font-weight:500}:host .mdc-list-item__end,:host .mdc-list-item__start{color:#000}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i1.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: CollapseDirective, selector: "[igoCollapse]", inputs: ["target", "collapsed"], outputs: ["toggle"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: CatalogBrowserLayerComponent, selector: "igo-catalog-browser-layer", inputs: ["resolution", "catalogAllowLegend", "layer", "map", "added"], outputs: ["addedChange", "addedLayerIsPreview"] }, { kind: "directive", type: ListItemDirective, selector: "[igoListItem]", inputs: ["color", "focused", "selected", "disabled"], outputs: ["beforeSelect", "beforeFocus", "beforeUnselect", "beforeUnfocus", "beforeDisable", "beforeEnable", "focus", "unfocus", "select", "unselect", "disable", "enable"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
195
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CatalogBrowserGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
196
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: CatalogBrowserGroupComponent, isStandalone: true, selector: "igo-catalog-browser-group", inputs: { catalog: "catalog", group: "group", map: "map", collapsed: "collapsed", resolution: "resolution", catalogAllowLegend: "catalogAllowLegend", toggleCollapsed: "toggleCollapsed", state: "state" }, outputs: { addedChange: "addedChange", layerAddedChange: "layerAddedChange" }, ngImport: i0, template: "<mat-list-item>\n <mat-icon\n matListItemIcon\n igoCollapse\n class=\"igo-chevron catalog-browser-group-carret\"\n [target]=\"items\"\n [collapsed]=\"collapsed\"\n (toggle)=\"onToggleCollapsed($event)\"\n >\n expand_less\n </mat-icon>\n\n <span\n class=\"igo-catalog-group-title\"\n matListItemTitle\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"title\"\n (click)=\"onTitleClick()\"\n >{{ title }}</span\n >\n\n <div matListItemMeta>\n <button *ngIf=\"group.externalProvider\" disabled=\"true\" mat-icon-button>\n <mat-icon\n class=\"igo-cataloggroup-external-icon\"\n *ngIf=\"group.externalProvider\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.externalProvider.group' | translate\"\n color=\"primary\"\n (click)=\"$event.stopPropagation()\"\n >\n public\n </mat-icon>\n </button>\n\n <ng-container\n *ngIf=\"(added$ | async) && (preview$ | async) === false; else notadded\"\n >\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.group.removeFromMap' | translate\"\n color=\"warn\"\n [disabled]=\"disabled$ | async\"\n (click)=\"onToggleClick($event)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n </ng-container>\n\n <ng-template #notadded>\n <button\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.group.addToMap' | translate\"\n [disabled]=\"disabled$ | async\"\n (click)=\"onToggleClick($event)\"\n >\n <mat-icon>add</mat-icon>\n </button>\n </ng-template>\n </div>\n</mat-list-item>\n\n<div #items>\n <ng-template ngFor let-item [ngForOf]=\"store.view.all$() | async\">\n <ng-container *ngIf=\"isGroup(item)\">\n <!-- todo: add display ans manage CatalogItemGroup -->\n </ng-container>\n <ng-container *ngIf=\"isLayer(item)\">\n <igo-catalog-browser-layer\n igoListItem\n [layer]=\"$any(item)\"\n [resolution]=\"resolution\"\n [map]=\"map\"\n [catalogAllowLegend]=\"catalogAllowLegend\"\n [added]=\"state.get(item).added\"\n (addedLayerIsPreview)=\"onLayerPreview($event)\"\n (addedChange)=\"onLayerAddedChange($event)\"\n >\n </igo-catalog-browser-layer>\n </ng-container>\n </ng-template>\n</div>\n", styles: [".igo-catalog-group-title{cursor:pointer}.igo-cataloggroup-external-icon{cursor:help}.catalog-browser-group-carret{margin-right:16px}.igo-catalog-group-title{font-weight:500}:host .mdc-list-item__end,:host .mdc-list-item__start{color:#000}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i1.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i1.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i1.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i1.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: CollapseDirective, selector: "[igoCollapse]", inputs: ["target", "collapsed"], outputs: ["toggle"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: CatalogBrowserLayerComponent, selector: "igo-catalog-browser-layer", inputs: ["resolution", "catalogAllowLegend", "layer", "map", "added"], outputs: ["addedChange", "addedLayerIsPreview"] }, { kind: "directive", type: ListItemDirective, selector: "[igoListItem]", inputs: ["color", "focused", "selected", "disabled"], outputs: ["beforeSelect", "beforeFocus", "beforeUnselect", "beforeUnfocus", "beforeDisable", "beforeEnable", "focus", "unfocus", "select", "unselect", "disable", "enable"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
197
197
  }
198
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CatalogBrowserGroupComponent, decorators: [{
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CatalogBrowserGroupComponent, decorators: [{
199
199
  type: Component,
200
200
  args: [{ selector: 'igo-catalog-browser-group', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
201
201
  MatListModule,
@@ -231,4 +231,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
231
231
  }], layerAddedChange: [{
232
232
  type: Output
233
233
  }] } });
234
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlDLE9B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ekMsa2dGQXVGQSx5U0QxQ0ksYUFBYSxtYkFDYixhQUFhLG9MQUNiLGlCQUFpQiwrR0FDakIsZ0JBQWdCLDZUQUNoQixJQUFJLDRGQUNKLGVBQWUsNElBQ2YsS0FBSyxtSEFDTCw0QkFBNEIsOExBQzVCLGlCQUFpQix3UkFDakIsU0FBUyw2Q0FDVCxpQkFBaUI7OzJGQUdSLDRCQUE0QjtrQkFwQnhDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLElBQUk7d0JBQ0osZUFBZTt3QkFDZixLQUFLO3dCQUNMLDRCQUE0Qjt3QkFDNUIsaUJBQWlCO3dCQUNqQixTQUFTO3dCQUNULGlCQUFpQjtxQkFDbEI7OEJBd0JRLE9BQU87c0JBQWYsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBS0csZUFBZTtzQkFBdkIsS0FBSztnQkFTRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0ksV0FBVztzQkFBcEIsTUFBTTtnQkFLRyxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBDb2xsYXBzZURpcmVjdGl2ZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9jb2xsYXBzaWJsZSc7XG5pbXBvcnQgdHlwZSB7IEVudGl0eVN0YXRlTWFuYWdlciB9IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgRW50aXR5U3RvcmUgfSBmcm9tICdAaWdvMi9jb21tb24vZW50aXR5JztcbmltcG9ydCB7IExpc3RJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQGlnbzIvY29tbW9uL2xpc3QnO1xuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7XG4gIEFkZGVkQ2hhbmdlRW1pdHRlcixcbiAgQWRkZWRDaGFuZ2VHcm91cEVtaXR0ZXIsXG4gIENhdGFsb2csXG4gIENhdGFsb2dJdGVtLFxuICBDYXRhbG9nSXRlbUdyb3VwLFxuICBDYXRhbG9nSXRlbVN0YXRlLFxuICBDYXRhbG9nSXRlbVR5cGVcbn0gZnJvbSAnLi4vc2hhcmVkJztcbmltcG9ydCB7IENhdGFsb2dCcm93c2VyTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctYnJvd3Nlci1sYXllci5jb21wb25lbnQnO1xuXG4vKipcbiAqIENhdGFsb2cgYnJvd3NlciBncm91cCBpdGVtXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1jYXRhbG9nLWJyb3dzZXItZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIENvbGxhcHNlRGlyZWN0aXZlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTmdJZixcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTmdGb3IsXG4gICAgQ2F0YWxvZ0Jyb3dzZXJMYXllckNvbXBvbmVudCxcbiAgICBMaXN0SXRlbURpcmVjdGl2ZSxcbiAgICBBc3luY1BpcGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDYXRhbG9nQnJvd3Nlckdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogR3JvdXAncyBpdGVtcyBzdG9yZVxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0b3JlID0gbmV3IEVudGl0eVN0b3JlPENhdGFsb2dJdGVtLCBDYXRhbG9nSXRlbVN0YXRlPihbXSk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYWxsIHRoZSBsYXllcnMgb2YgdGhlIGdyb3VwIGFyZSBhZGRlZFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGFkZGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcmV2aWV3JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgdG9nZ2xlIGJ1dHRvbiBpcyBkaXNhYmxlZFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGRpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBDYXRhbG9nXG4gICAqL1xuICBASW5wdXQoKSBjYXRhbG9nOiBDYXRhbG9nO1xuXG4gIC8qKlxuICAgKiBDYXRhbG9nIGdyb3VwXG4gICAqL1xuICBASW5wdXQoKSBncm91cDogQ2F0YWxvZ0l0ZW1Hcm91cDtcblxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ3JvdXAgaXMgY29sbGFwc2VkXG4gICAqL1xuICBASW5wdXQoKSBjb2xsYXBzZWQgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIHJlc29sdXRpb246IG51bWJlcjtcblxuICBASW5wdXQoKSBjYXRhbG9nQWxsb3dMZWdlbmQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ3JvdXAgY2FuIGJlIHRvZ2dsZWQgd2hlbiBpdCdzIGNvbGxhcHNlZFxuICAgKi9cbiAgQElucHV0KCkgdG9nZ2xlQ29sbGFwc2VkID0gdHJ1ZTtcblxuICAvKipcbiAgICogUGFyZW50IGNhdGFsb2cncyBpdGVtcyBzdG9yZSBzdGF0ZS4gR3JvdXBzIHNoYXJlIGEgdW5pcXVlXG4gICAqIEVudGl0eVN0YXRlIHRoYXQgdHJhY2tzIHRoZSBncm91cCBhbmQgaXQncyBsYXllcnMgc3RhdGUgKHdoZXRoZXIgdGhleSBhcmUgYWRkZWQgb3Igbm90KS5cbiAgICogU2hhcmluZyBhIHVuaXF1ZSBzdGF0ZSB3b3VsZCBhbHNvIGFsbG93IHVzIHRvIGV4cGFuZCB0aGlzIGNvbXBvbmVudCB0byBhbGxvd1xuICAgKiB0aGUgc2VsZWN0aW9uIG9mIGEgbGF5ZXIgd2hpbGUgdW5zZWxlY3RpbmcgYW55IGxheWVyIGFscmVhZHkgc2VsZWN0ZWQgaW4gYW5vdGhlciBncm91cC5cbiAgICogVGhpcyBjb3VsZCBiZSB1c2VmdWwgdG8gZGlzcGxheSBzb21lIGxheWVyIGluZm8gYmVmb3JlIGFkZGluZyBpdCwgZm9yIGV4YW1wbGUuXG4gICAqL1xuICBASW5wdXQoKSBzdGF0ZTogRW50aXR5U3RhdGVNYW5hZ2VyPENhdGFsb2dJdGVtLCBDYXRhbG9nSXRlbVN0YXRlPjtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhZGQvcmVtb3ZlIGJ1dHRvbiBvZiB0aGUgZ3JvdXAgaXMgY2xpY2tlZFxuICAgKi9cbiAgQE91dHB1dCgpIGFkZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBZGRlZENoYW5nZUdyb3VwRW1pdHRlcj4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhZGQvcmVtb3ZlIGJ1dHRvbiBvZiBhIGxheWVyIGlzIGNsaWNrZWRcbiAgICovXG4gIEBPdXRwdXQoKSBsYXllckFkZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBZGRlZENoYW5nZUVtaXR0ZXI+KCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ3JvdXAudGl0bGU7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnN0b3JlLmxvYWQodGhpcy5ncm91cC5pdGVtcyk7XG4gICAgdGhpcy5ldmFsdWF0ZUFkZGVkKCk7XG4gICAgdGhpcy5ldmFsdWF0ZURpc2FibGVkKHRoaXMuY29sbGFwc2VkKTtcbiAgICBpZiAodGhpcy5ncm91cC5zb3J0RGlyZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuc3RvcmUudmlldy5zb3J0KHtcbiAgICAgICAgZGlyZWN0aW9uOiB0aGlzLmdyb3VwLnNvcnREaXJlY3Rpb24sXG4gICAgICAgIHZhbHVlQWNjZXNzb3I6IChpdGVtOiBDYXRhbG9nSXRlbSkgPT4gaXRlbS50aXRsZVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdG9yZS5kZXN0cm95KCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBpc0dyb3VwKGl0ZW06IENhdGFsb2dJdGVtKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGl0ZW0udHlwZSA9PT0gQ2F0YWxvZ0l0ZW1UeXBlLkdyb3VwO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgaXNMYXllcihpdGVtOiBDYXRhbG9nSXRlbSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpdGVtLnR5cGUgPT09IENhdGFsb2dJdGVtVHlwZS5MYXllcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbiB0b2dnbGUgYnV0dG9uIGNsaWNrLCBlbWl0IHRoZSBhZGRlZCBjaGFuZ2UgZXZlbnRcbiAgICogQGludGVybmFsXG4gICAqL1xuICBvblRvZ2dsZUNsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuYWRkZWQkLnZhbHVlID8gdGhpcy5yZW1vdmUoZXZlbnQpIDogdGhpcy5hZGQoZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9uIHRvZ2dsZSBidXR0b24gY2xpY2ssIGVtaXQgdGhlIGFkZGVkIGNoYW5nZSBldmVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG9uVG9nZ2xlQ29sbGFwc2VkKGNvbGxhcHNlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZXZhbHVhdGVEaXNhYmxlZChjb2xsYXBzZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gYSBsYXllciBpcyBhZGRlZCBvciByZW1vdmVkLCBldmFsdWF0ZSBpZiBhbGwgdGhlIGxheWVycyBvZiB0aGUgZ3JvdXBcbiAgICogYXJlIG5vdyBhZGRlZCBvciByZW1vdmVkLiBJZiBzbywgY29uc2lkZXIgdGhhdCB0aGUgZ3JvdXAgaXRzZWxmIGlzIGFkZGVkXG4gICAqIG9yIHJlbW92ZWQuXG4gICAqIEBpbnRlcm5hbFxuICAgKiBAcGFyYW0gZXZlbnQgTGF5ZXIgYWRkZWQgY2hhbmdlIGV2ZW50XG4gICAqL1xuICBvbkxheWVyQWRkZWRDaGFuZ2UoZXZlbnQ6IEFkZGVkQ2hhbmdlRW1pdHRlcikge1xuICAgIHRoaXMubGF5ZXJBZGRlZENoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB0aGlzLnRyeVRvZ2dsZUdyb3VwKGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IGFkZGVkIGNoYW5nZSBldmVudCB3aXRoIGFkZGVkID0gdHJ1ZVxuICAgKi9cbiAgcHJpdmF0ZSBhZGQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5hZGRlZCQubmV4dCh0cnVlKTtcbiAgICB0aGlzLmFkZGVkQ2hhbmdlLmVtaXQoe1xuICAgICAgYWRkZWQ6IHRydWUsXG4gICAgICBncm91cDogdGhpcy5ncm91cCxcbiAgICAgIGV2ZW50XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdCBhZGRlZCBjaGFuZ2UgZXZlbnQgd2l0aCBhZGRlZCA9IHRydWVcbiAgICovXG4gIHByaXZhdGUgcmVtb3ZlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuYWRkZWQkLm5leHQoZmFsc2UpO1xuICAgIHRoaXMuYWRkZWRDaGFuZ2UuZW1pdCh7XG4gICAgICBhZGRlZDogZmFsc2UsXG4gICAgICBncm91cDogdGhpcy5ncm91cCxcbiAgICAgIGV2ZW50XG4gICAgfSk7XG4gIH1cblxuICBvbkxheWVyUHJldmlldyhldmVudCkge1xuICAgIHRoaXMucHJldmlldyQubmV4dChldmVudCk7XG4gIH1cblxuICAvKipcbiAgICogSWYgYWxsIHRoZSBsYXllcnMgb2YgdGhlIGdyb3VwIGFkZGVkIG9yIHJlbW92ZWQsIGFkZCBvciByZW1vdmUgdGhlIGdyb3VwIGl0c2VsZi5cbiAgICogQHBhcmFtIGV2ZW50IFRoZSBsYXN0IGxheWVyIGFkZGVkIGNoYW5nZSBldmVudCB0byBvY2N1clxuICAgKi9cbiAgcHJpdmF0ZSB0cnlUb2dnbGVHcm91cChldmVudDogQWRkZWRDaGFuZ2VFbWl0dGVyKSB7XG4gICAgY29uc3QgYWRkZWQgPSBldmVudC5hZGRlZDtcbiAgICBjb25zdCBsYXllciA9IGV2ZW50LmxheWVyO1xuXG4gICAgY29uc3QgbGF5ZXJzQWRkZWQgPSB0aGlzLnN0b3JlLnZpZXdcbiAgICAgIC5hbGwoKVxuICAgICAgLmZpbHRlcigoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IGl0ZW0uaWQgIT09IGxheWVyLmlkKVxuICAgICAgLm1hcCgoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IHRoaXMuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkIHx8IGZhbHNlKTtcblxuICAgIGlmIChsYXllcnNBZGRlZC5ldmVyeSgodmFsdWUpID0+IHZhbHVlID09PSBhZGRlZCkpIHtcbiAgICAgIGFkZGVkID8gdGhpcy5hZGQoZXZlbnQuZXZlbnQpIDogdGhpcy5yZW1vdmUoZXZlbnQuZXZlbnQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5hZGRlZCQudmFsdWUgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuYWRkZWQkLm5leHQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZXZhbHVhdGVBZGRlZCgpIHtcbiAgICBjb25zdCBhZGRlZCA9IHRoaXMuc3RvcmUuYWxsKCkuZXZlcnkoKGl0ZW06IENhdGFsb2dJdGVtKSA9PiB7XG4gICAgICByZXR1cm4gKHRoaXMuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkIHx8IGZhbHNlKSA9PT0gdHJ1ZTtcbiAgICB9KTtcbiAgICB0aGlzLmFkZGVkJC5uZXh0KGFkZGVkKTtcbiAgfVxuXG4gIHByaXZhdGUgZXZhbHVhdGVEaXNhYmxlZChjb2xsYXBzZWQ6IGJvb2xlYW4pIHtcbiAgICBsZXQgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBpZiAodGhpcy50b2dnbGVDb2xsYXBzZWQgPT09IGZhbHNlKSB7XG4gICAgICBkaXNhYmxlZCA9IGNvbGxhcHNlZDtcbiAgICB9XG4gICAgdGhpcy5kaXNhYmxlZCQubmV4dChkaXNhYmxlZCk7XG4gIH1cblxuICBvblRpdGxlQ2xpY2soKSB7XG4gICAgdGhpcy5jb2xsYXBzZWQgPSAhdGhpcy5jb2xsYXBzZWQ7XG4gIH1cbn1cbiIsIjxtYXQtbGlzdC1pdGVtPlxuICA8bWF0LWljb25cbiAgICBtYXRMaXN0SXRlbUljb25cbiAgICBpZ29Db2xsYXBzZVxuICAgIGNsYXNzPVwiaWdvLWNoZXZyb24gY2F0YWxvZy1icm93c2VyLWdyb3VwLWNhcnJldFwiXG4gICAgW3RhcmdldF09XCJpdGVtc1wiXG4gICAgW2NvbGxhcHNlZF09XCJjb2xsYXBzZWRcIlxuICAgICh0b2dnbGUpPVwib25Ub2dnbGVDb2xsYXBzZWQoJGV2ZW50KVwiXG4gID5cbiAgICBleHBhbmRfbGVzc1xuICA8L21hdC1pY29uPlxuXG4gIDxzcGFuXG4gICAgY2xhc3M9XCJpZ28tY2F0YWxvZy1ncm91cC10aXRsZVwiXG4gICAgbWF0TGlzdEl0ZW1UaXRsZVxuICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgIFttYXRUb29sdGlwXT1cInRpdGxlXCJcbiAgICAoY2xpY2spPVwib25UaXRsZUNsaWNrKClcIlxuICAgID57eyB0aXRsZSB9fTwvc3BhblxuICA+XG5cbiAgPGRpdiBtYXRMaXN0SXRlbU1ldGE+XG4gICAgPGJ1dHRvbiAqbmdJZj1cImdyb3VwLmV4dGVybmFsUHJvdmlkZXJcIiBkaXNhYmxlZD1cInRydWVcIiBtYXQtaWNvbi1idXR0b24+XG4gICAgICA8bWF0LWljb25cbiAgICAgICAgY2xhc3M9XCJpZ28tY2F0YWxvZ2dyb3VwLWV4dGVybmFsLWljb25cIlxuICAgICAgICAqbmdJZj1cImdyb3VwLmV4dGVybmFsUHJvdmlkZXJcIlxuICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uY2F0YWxvZy5leHRlcm5hbFByb3ZpZGVyLmdyb3VwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgPlxuICAgICAgICBwdWJsaWNcbiAgICAgIDwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIihhZGRlZCQgfCBhc3luYykgJiYgKHByZXZpZXckIHwgYXN5bmMpID09PSBmYWxzZTsgZWxzZSBub3RhZGRlZFwiXG4gICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmNhdGFsb2cuZ3JvdXAucmVtb3ZlRnJvbU1hcCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICBjb2xvcj1cIndhcm5cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVDbGljaygkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjbm90YWRkZWQ+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uY2F0YWxvZy5ncm91cC5hZGRUb01hcCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVDbGljaygkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvbWF0LWxpc3QtaXRlbT5cblxuPGRpdiAjaXRlbXM+XG4gIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtaXRlbSBbbmdGb3JPZl09XCJzdG9yZS52aWV3LmFsbCQoKSB8IGFzeW5jXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzR3JvdXAoaXRlbSlcIj5cbiAgICAgIDwhLS0gdG9kbzogYWRkIGRpc3BsYXkgYW5zIG1hbmFnZSBDYXRhbG9nSXRlbUdyb3VwIC0tPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0xheWVyKGl0ZW0pXCI+XG4gICAgICA8aWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllclxuICAgICAgICBpZ29MaXN0SXRlbVxuICAgICAgICBbbGF5ZXJdPVwiJGFueShpdGVtKVwiXG4gICAgICAgIFtyZXNvbHV0aW9uXT1cInJlc29sdXRpb25cIlxuICAgICAgICBbbWFwXT1cIm1hcFwiXG4gICAgICAgIFtjYXRhbG9nQWxsb3dMZWdlbmRdPVwiY2F0YWxvZ0FsbG93TGVnZW5kXCJcbiAgICAgICAgW2FkZGVkXT1cInN0YXRlLmdldChpdGVtKS5hZGRlZFwiXG4gICAgICAgIChhZGRlZExheWVySXNQcmV2aWV3KT1cIm9uTGF5ZXJQcmV2aWV3KCRldmVudClcIlxuICAgICAgICAoYWRkZWRDaGFuZ2UpPVwib25MYXllckFkZGVkQ2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgICAgPC9pZ28tY2F0YWxvZy1icm93c2VyLWxheWVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXItZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlDLE9B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ekMsa2dGQXVGQSx5U0QxQ0ksYUFBYSxtYkFDYixhQUFhLG9MQUNiLGlCQUFpQiwrR0FDakIsZ0JBQWdCLDZUQUNoQixJQUFJLDRGQUNKLGVBQWUsNElBQ2YsS0FBSyxtSEFDTCw0QkFBNEIsOExBQzVCLGlCQUFpQix3UkFDakIsU0FBUyw2Q0FDVCxpQkFBaUI7OzRGQUdSLDRCQUE0QjtrQkFwQnhDLFNBQVM7K0JBQ0UsMkJBQTJCLG1CQUdwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLElBQUk7d0JBQ0osZUFBZTt3QkFDZixLQUFLO3dCQUNMLDRCQUE0Qjt3QkFDNUIsaUJBQWlCO3dCQUNqQixTQUFTO3dCQUNULGlCQUFpQjtxQkFDbEI7OEJBd0JRLE9BQU87c0JBQWYsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBS0csZUFBZTtzQkFBdkIsS0FBSztnQkFTRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0ksV0FBVztzQkFBcEIsTUFBTTtnQkFLRyxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBDb2xsYXBzZURpcmVjdGl2ZSB9IGZyb20gJ0BpZ28yL2NvbW1vbi9jb2xsYXBzaWJsZSc7XG5pbXBvcnQgdHlwZSB7IEVudGl0eVN0YXRlTWFuYWdlciB9IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgRW50aXR5U3RvcmUgfSBmcm9tICdAaWdvMi9jb21tb24vZW50aXR5JztcbmltcG9ydCB7IExpc3RJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQGlnbzIvY29tbW9uL2xpc3QnO1xuaW1wb3J0IHsgSWdvTGFuZ3VhZ2VNb2R1bGUgfSBmcm9tICdAaWdvMi9jb3JlL2xhbmd1YWdlJztcblxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7XG4gIEFkZGVkQ2hhbmdlRW1pdHRlcixcbiAgQWRkZWRDaGFuZ2VHcm91cEVtaXR0ZXIsXG4gIENhdGFsb2csXG4gIENhdGFsb2dJdGVtLFxuICBDYXRhbG9nSXRlbUdyb3VwLFxuICBDYXRhbG9nSXRlbVN0YXRlLFxuICBDYXRhbG9nSXRlbVR5cGVcbn0gZnJvbSAnLi4vc2hhcmVkJztcbmltcG9ydCB7IENhdGFsb2dCcm93c2VyTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctYnJvd3Nlci1sYXllci5jb21wb25lbnQnO1xuXG4vKipcbiAqIENhdGFsb2cgYnJvd3NlciBncm91cCBpdGVtXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1jYXRhbG9nLWJyb3dzZXItZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2F0YWxvZy1icm93c2VyLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIENvbGxhcHNlRGlyZWN0aXZlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTmdJZixcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTmdGb3IsXG4gICAgQ2F0YWxvZ0Jyb3dzZXJMYXllckNvbXBvbmVudCxcbiAgICBMaXN0SXRlbURpcmVjdGl2ZSxcbiAgICBBc3luY1BpcGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDYXRhbG9nQnJvd3Nlckdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogR3JvdXAncyBpdGVtcyBzdG9yZVxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHN0b3JlID0gbmV3IEVudGl0eVN0b3JlPENhdGFsb2dJdGVtLCBDYXRhbG9nSXRlbVN0YXRlPihbXSk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYWxsIHRoZSBsYXllcnMgb2YgdGhlIGdyb3VwIGFyZSBhZGRlZFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGFkZGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcmV2aWV3JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgdG9nZ2xlIGJ1dHRvbiBpcyBkaXNhYmxlZFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGRpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIC8qKlxuICAgKiBDYXRhbG9nXG4gICAqL1xuICBASW5wdXQoKSBjYXRhbG9nOiBDYXRhbG9nO1xuXG4gIC8qKlxuICAgKiBDYXRhbG9nIGdyb3VwXG4gICAqL1xuICBASW5wdXQoKSBncm91cDogQ2F0YWxvZ0l0ZW1Hcm91cDtcblxuICBASW5wdXQoKSBtYXA6IElnb01hcDtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ3JvdXAgaXMgY29sbGFwc2VkXG4gICAqL1xuICBASW5wdXQoKSBjb2xsYXBzZWQgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIHJlc29sdXRpb246IG51bWJlcjtcblxuICBASW5wdXQoKSBjYXRhbG9nQWxsb3dMZWdlbmQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ3JvdXAgY2FuIGJlIHRvZ2dsZWQgd2hlbiBpdCdzIGNvbGxhcHNlZFxuICAgKi9cbiAgQElucHV0KCkgdG9nZ2xlQ29sbGFwc2VkID0gdHJ1ZTtcblxuICAvKipcbiAgICogUGFyZW50IGNhdGFsb2cncyBpdGVtcyBzdG9yZSBzdGF0ZS4gR3JvdXBzIHNoYXJlIGEgdW5pcXVlXG4gICAqIEVudGl0eVN0YXRlIHRoYXQgdHJhY2tzIHRoZSBncm91cCBhbmQgaXQncyBsYXllcnMgc3RhdGUgKHdoZXRoZXIgdGhleSBhcmUgYWRkZWQgb3Igbm90KS5cbiAgICogU2hhcmluZyBhIHVuaXF1ZSBzdGF0ZSB3b3VsZCBhbHNvIGFsbG93IHVzIHRvIGV4cGFuZCB0aGlzIGNvbXBvbmVudCB0byBhbGxvd1xuICAgKiB0aGUgc2VsZWN0aW9uIG9mIGEgbGF5ZXIgd2hpbGUgdW5zZWxlY3RpbmcgYW55IGxheWVyIGFscmVhZHkgc2VsZWN0ZWQgaW4gYW5vdGhlciBncm91cC5cbiAgICogVGhpcyBjb3VsZCBiZSB1c2VmdWwgdG8gZGlzcGxheSBzb21lIGxheWVyIGluZm8gYmVmb3JlIGFkZGluZyBpdCwgZm9yIGV4YW1wbGUuXG4gICAqL1xuICBASW5wdXQoKSBzdGF0ZTogRW50aXR5U3RhdGVNYW5hZ2VyPENhdGFsb2dJdGVtLCBDYXRhbG9nSXRlbVN0YXRlPjtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhZGQvcmVtb3ZlIGJ1dHRvbiBvZiB0aGUgZ3JvdXAgaXMgY2xpY2tlZFxuICAgKi9cbiAgQE91dHB1dCgpIGFkZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBZGRlZENoYW5nZUdyb3VwRW1pdHRlcj4oKTtcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBhZGQvcmVtb3ZlIGJ1dHRvbiBvZiBhIGxheWVyIGlzIGNsaWNrZWRcbiAgICovXG4gIEBPdXRwdXQoKSBsYXllckFkZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBZGRlZENoYW5nZUVtaXR0ZXI+KCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ3JvdXAudGl0bGU7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnN0b3JlLmxvYWQodGhpcy5ncm91cC5pdGVtcyk7XG4gICAgdGhpcy5ldmFsdWF0ZUFkZGVkKCk7XG4gICAgdGhpcy5ldmFsdWF0ZURpc2FibGVkKHRoaXMuY29sbGFwc2VkKTtcbiAgICBpZiAodGhpcy5ncm91cC5zb3J0RGlyZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuc3RvcmUudmlldy5zb3J0KHtcbiAgICAgICAgZGlyZWN0aW9uOiB0aGlzLmdyb3VwLnNvcnREaXJlY3Rpb24sXG4gICAgICAgIHZhbHVlQWNjZXNzb3I6IChpdGVtOiBDYXRhbG9nSXRlbSkgPT4gaXRlbS50aXRsZVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdG9yZS5kZXN0cm95KCk7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBpc0dyb3VwKGl0ZW06IENhdGFsb2dJdGVtKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGl0ZW0udHlwZSA9PT0gQ2F0YWxvZ0l0ZW1UeXBlLkdyb3VwO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgaXNMYXllcihpdGVtOiBDYXRhbG9nSXRlbSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpdGVtLnR5cGUgPT09IENhdGFsb2dJdGVtVHlwZS5MYXllcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBPbiB0b2dnbGUgYnV0dG9uIGNsaWNrLCBlbWl0IHRoZSBhZGRlZCBjaGFuZ2UgZXZlbnRcbiAgICogQGludGVybmFsXG4gICAqL1xuICBvblRvZ2dsZUNsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuYWRkZWQkLnZhbHVlID8gdGhpcy5yZW1vdmUoZXZlbnQpIDogdGhpcy5hZGQoZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9uIHRvZ2dsZSBidXR0b24gY2xpY2ssIGVtaXQgdGhlIGFkZGVkIGNoYW5nZSBldmVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG9uVG9nZ2xlQ29sbGFwc2VkKGNvbGxhcHNlZDogYm9vbGVhbikge1xuICAgIHRoaXMuZXZhbHVhdGVEaXNhYmxlZChjb2xsYXBzZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gYSBsYXllciBpcyBhZGRlZCBvciByZW1vdmVkLCBldmFsdWF0ZSBpZiBhbGwgdGhlIGxheWVycyBvZiB0aGUgZ3JvdXBcbiAgICogYXJlIG5vdyBhZGRlZCBvciByZW1vdmVkLiBJZiBzbywgY29uc2lkZXIgdGhhdCB0aGUgZ3JvdXAgaXRzZWxmIGlzIGFkZGVkXG4gICAqIG9yIHJlbW92ZWQuXG4gICAqIEBpbnRlcm5hbFxuICAgKiBAcGFyYW0gZXZlbnQgTGF5ZXIgYWRkZWQgY2hhbmdlIGV2ZW50XG4gICAqL1xuICBvbkxheWVyQWRkZWRDaGFuZ2UoZXZlbnQ6IEFkZGVkQ2hhbmdlRW1pdHRlcikge1xuICAgIHRoaXMubGF5ZXJBZGRlZENoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB0aGlzLnRyeVRvZ2dsZUdyb3VwKGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IGFkZGVkIGNoYW5nZSBldmVudCB3aXRoIGFkZGVkID0gdHJ1ZVxuICAgKi9cbiAgcHJpdmF0ZSBhZGQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5hZGRlZCQubmV4dCh0cnVlKTtcbiAgICB0aGlzLmFkZGVkQ2hhbmdlLmVtaXQoe1xuICAgICAgYWRkZWQ6IHRydWUsXG4gICAgICBncm91cDogdGhpcy5ncm91cCxcbiAgICAgIGV2ZW50XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdCBhZGRlZCBjaGFuZ2UgZXZlbnQgd2l0aCBhZGRlZCA9IHRydWVcbiAgICovXG4gIHByaXZhdGUgcmVtb3ZlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuYWRkZWQkLm5leHQoZmFsc2UpO1xuICAgIHRoaXMuYWRkZWRDaGFuZ2UuZW1pdCh7XG4gICAgICBhZGRlZDogZmFsc2UsXG4gICAgICBncm91cDogdGhpcy5ncm91cCxcbiAgICAgIGV2ZW50XG4gICAgfSk7XG4gIH1cblxuICBvbkxheWVyUHJldmlldyhldmVudCkge1xuICAgIHRoaXMucHJldmlldyQubmV4dChldmVudCk7XG4gIH1cblxuICAvKipcbiAgICogSWYgYWxsIHRoZSBsYXllcnMgb2YgdGhlIGdyb3VwIGFkZGVkIG9yIHJlbW92ZWQsIGFkZCBvciByZW1vdmUgdGhlIGdyb3VwIGl0c2VsZi5cbiAgICogQHBhcmFtIGV2ZW50IFRoZSBsYXN0IGxheWVyIGFkZGVkIGNoYW5nZSBldmVudCB0byBvY2N1clxuICAgKi9cbiAgcHJpdmF0ZSB0cnlUb2dnbGVHcm91cChldmVudDogQWRkZWRDaGFuZ2VFbWl0dGVyKSB7XG4gICAgY29uc3QgYWRkZWQgPSBldmVudC5hZGRlZDtcbiAgICBjb25zdCBsYXllciA9IGV2ZW50LmxheWVyO1xuXG4gICAgY29uc3QgbGF5ZXJzQWRkZWQgPSB0aGlzLnN0b3JlLnZpZXdcbiAgICAgIC5hbGwoKVxuICAgICAgLmZpbHRlcigoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IGl0ZW0uaWQgIT09IGxheWVyLmlkKVxuICAgICAgLm1hcCgoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IHRoaXMuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkIHx8IGZhbHNlKTtcblxuICAgIGlmIChsYXllcnNBZGRlZC5ldmVyeSgodmFsdWUpID0+IHZhbHVlID09PSBhZGRlZCkpIHtcbiAgICAgIGFkZGVkID8gdGhpcy5hZGQoZXZlbnQuZXZlbnQpIDogdGhpcy5yZW1vdmUoZXZlbnQuZXZlbnQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5hZGRlZCQudmFsdWUgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuYWRkZWQkLm5leHQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZXZhbHVhdGVBZGRlZCgpIHtcbiAgICBjb25zdCBhZGRlZCA9IHRoaXMuc3RvcmUuYWxsKCkuZXZlcnkoKGl0ZW06IENhdGFsb2dJdGVtKSA9PiB7XG4gICAgICByZXR1cm4gKHRoaXMuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkIHx8IGZhbHNlKSA9PT0gdHJ1ZTtcbiAgICB9KTtcbiAgICB0aGlzLmFkZGVkJC5uZXh0KGFkZGVkKTtcbiAgfVxuXG4gIHByaXZhdGUgZXZhbHVhdGVEaXNhYmxlZChjb2xsYXBzZWQ6IGJvb2xlYW4pIHtcbiAgICBsZXQgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBpZiAodGhpcy50b2dnbGVDb2xsYXBzZWQgPT09IGZhbHNlKSB7XG4gICAgICBkaXNhYmxlZCA9IGNvbGxhcHNlZDtcbiAgICB9XG4gICAgdGhpcy5kaXNhYmxlZCQubmV4dChkaXNhYmxlZCk7XG4gIH1cblxuICBvblRpdGxlQ2xpY2soKSB7XG4gICAgdGhpcy5jb2xsYXBzZWQgPSAhdGhpcy5jb2xsYXBzZWQ7XG4gIH1cbn1cbiIsIjxtYXQtbGlzdC1pdGVtPlxuICA8bWF0LWljb25cbiAgICBtYXRMaXN0SXRlbUljb25cbiAgICBpZ29Db2xsYXBzZVxuICAgIGNsYXNzPVwiaWdvLWNoZXZyb24gY2F0YWxvZy1icm93c2VyLWdyb3VwLWNhcnJldFwiXG4gICAgW3RhcmdldF09XCJpdGVtc1wiXG4gICAgW2NvbGxhcHNlZF09XCJjb2xsYXBzZWRcIlxuICAgICh0b2dnbGUpPVwib25Ub2dnbGVDb2xsYXBzZWQoJGV2ZW50KVwiXG4gID5cbiAgICBleHBhbmRfbGVzc1xuICA8L21hdC1pY29uPlxuXG4gIDxzcGFuXG4gICAgY2xhc3M9XCJpZ28tY2F0YWxvZy1ncm91cC10aXRsZVwiXG4gICAgbWF0TGlzdEl0ZW1UaXRsZVxuICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgIFttYXRUb29sdGlwXT1cInRpdGxlXCJcbiAgICAoY2xpY2spPVwib25UaXRsZUNsaWNrKClcIlxuICAgID57eyB0aXRsZSB9fTwvc3BhblxuICA+XG5cbiAgPGRpdiBtYXRMaXN0SXRlbU1ldGE+XG4gICAgPGJ1dHRvbiAqbmdJZj1cImdyb3VwLmV4dGVybmFsUHJvdmlkZXJcIiBkaXNhYmxlZD1cInRydWVcIiBtYXQtaWNvbi1idXR0b24+XG4gICAgICA8bWF0LWljb25cbiAgICAgICAgY2xhc3M9XCJpZ28tY2F0YWxvZ2dyb3VwLWV4dGVybmFsLWljb25cIlxuICAgICAgICAqbmdJZj1cImdyb3VwLmV4dGVybmFsUHJvdmlkZXJcIlxuICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uY2F0YWxvZy5leHRlcm5hbFByb3ZpZGVyLmdyb3VwJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxuICAgICAgPlxuICAgICAgICBwdWJsaWNcbiAgICAgIDwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIihhZGRlZCQgfCBhc3luYykgJiYgKHByZXZpZXckIHwgYXN5bmMpID09PSBmYWxzZTsgZWxzZSBub3RhZGRlZFwiXG4gICAgPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLmNhdGFsb2cuZ3JvdXAucmVtb3ZlRnJvbU1hcCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICBjb2xvcj1cIndhcm5cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVDbGljaygkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjbm90YWRkZWQ+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uY2F0YWxvZy5ncm91cC5hZGRUb01hcCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQkIHwgYXN5bmNcIlxuICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVDbGljaygkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uPmFkZDwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvbWF0LWxpc3QtaXRlbT5cblxuPGRpdiAjaXRlbXM+XG4gIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtaXRlbSBbbmdGb3JPZl09XCJzdG9yZS52aWV3LmFsbCQoKSB8IGFzeW5jXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzR3JvdXAoaXRlbSlcIj5cbiAgICAgIDwhLS0gdG9kbzogYWRkIGRpc3BsYXkgYW5zIG1hbmFnZSBDYXRhbG9nSXRlbUdyb3VwIC0tPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0xheWVyKGl0ZW0pXCI+XG4gICAgICA8aWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllclxuICAgICAgICBpZ29MaXN0SXRlbVxuICAgICAgICBbbGF5ZXJdPVwiJGFueShpdGVtKVwiXG4gICAgICAgIFtyZXNvbHV0aW9uXT1cInJlc29sdXRpb25cIlxuICAgICAgICBbbWFwXT1cIm1hcFwiXG4gICAgICAgIFtjYXRhbG9nQWxsb3dMZWdlbmRdPVwiY2F0YWxvZ0FsbG93TGVnZW5kXCJcbiAgICAgICAgW2FkZGVkXT1cInN0YXRlLmdldChpdGVtKS5hZGRlZFwiXG4gICAgICAgIChhZGRlZExheWVySXNQcmV2aWV3KT1cIm9uTGF5ZXJQcmV2aWV3KCRldmVudClcIlxuICAgICAgICAoYWRkZWRDaGFuZ2UpPVwib25MYXllckFkZGVkQ2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgICAgPC9pZ28tY2F0YWxvZy1icm93c2VyLWxheWVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuPC9kaXY+XG4iXX0=
@@ -237,10 +237,10 @@ export class CatalogBrowserLayerComponent {
237
237
  : 'igo.geo.catalog.layer.addToMapOutRange';
238
238
  }
239
239
  }
240
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CatalogBrowserLayerComponent, deps: [{ token: i1.LayerService }], target: i0.ɵɵFactoryTarget.Component });
241
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: CatalogBrowserLayerComponent, isStandalone: true, selector: "igo-catalog-browser-layer", inputs: { resolution: "resolution", catalogAllowLegend: "catalogAllowLegend", layer: "layer", map: "map", added: "added" }, outputs: { addedChange: "addedChange", addedLayerIsPreview: "addedLayerIsPreview" }, ngImport: i0, template: "<mat-list-item>\n <mat-icon\n *ngIf=\"haveGroup()\"\n class=\"catalog-browser-layer-carret\"\n matListItemIcon\n ></mat-icon>\n <span\n matListItemTitle\n matTooltipShowDelay=\"500\"\n [ngClass]=\"catalogAllowLegend ? 'igo-cataloglayer-title' : ''\"\n (click)=\"askForLegend()\"\n [matTooltip]=\"computeTitleTooltip()\"\n >\n {{ title }}\n </span>\n\n <div matListItemMeta>\n <button *ngIf=\"layer.externalProvider\" disabled=\"true\" mat-icon-button>\n <mat-icon\n class=\"igo-cataloglayer-external-icon\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.externalProvider.layer' | translate\"\n color=\"primary\"\n (click)=\"$event.stopPropagation()\"\n >\n public\n </mat-icon>\n </button>\n <igo-metadata-button [layer]=\"$any(layer)\"></igo-metadata-button>\n\n <button\n (mouseenter)=\"onMouseEvent($event)\"\n (mouseleave)=\"onMouseEvent($event)\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"computeTooltip() | translate\"\n [color]=\"(isPreview$ | async) ? '' : added ? 'warn' : ''\"\n (click)=\"onToggleClick($event)\"\n >\n <mat-icon\n aria-hidden=\"false\"\n matBadge=\"icon\"\n [igoMatBadgeIcon]=\"getBadgeIcon()\"\n igoMatBadgeColor=\"rgba(0,0,0,0.87)\"\n igoMatBadgeBackgroundColor=\"none\"\n [igoMatBadgeInverseColor]=\"true\"\n [matBadgeHidden]=\"\n ((inRange$ | async) && (isVisible$ | async) === true) ||\n ((inRange$ | async) && !added) ||\n ((inRange$ | async) && (isPreview$ | async))\n \"\n [matBadgeDisabled]=\"(inRange$ | async) === false\"\n matBadgeSize=\"small\"\n matBadgePosition=\"after\"\n >\n {{ (isPreview$ | async) ? 'plus' : added ? 'delete' : 'add' }}\n </mat-icon>\n </button>\n </div>\n</mat-list-item>\n\n<div #legend class=\"igo-cataloglayer-legend-container\">\n <igo-layer-legend\n *ngIf=\"\n (layerLegendShown$ | async) && (igoLayer$ | async) && catalogAllowLegend\n \"\n [layer]=\"igoLayer$ | async\"\n >\n </igo-layer-legend>\n</div>\n", styles: [".igo-cataloglayer-title{cursor:pointer}.catalog-browser-layer-carret{margin-right:16px}.igo-cataloglayer-legend-container{padding-left:18px;width:calc(100% - 18px);margin-left:40px}.igo-cataloglayer-external-icon{cursor:help}:host .mdc-list-item__end,:host .mdc-list-item__start{color:#000}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i2.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "directive", type: i6.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "directive", type: IgoBadgeIconDirective, selector: "[igoMatBadgeIcon]", inputs: ["igoMatBadgeIcon", "matBadgeHidden", "matBadgeDisabled", "igoMatBadgeInverseColor", "igoMatBadgeInheritColor", "igoMatBadgeColor", "igoMatBadgeBackgroundColor"] }, { kind: "component", type: LayerLegendComponent, selector: "igo-layer-legend", inputs: ["updateLegendOnResolutionChange", "layer"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
240
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CatalogBrowserLayerComponent, deps: [{ token: i1.LayerService }], target: i0.ɵɵFactoryTarget.Component });
241
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: CatalogBrowserLayerComponent, isStandalone: true, selector: "igo-catalog-browser-layer", inputs: { resolution: "resolution", catalogAllowLegend: "catalogAllowLegend", layer: "layer", map: "map", added: "added" }, outputs: { addedChange: "addedChange", addedLayerIsPreview: "addedLayerIsPreview" }, ngImport: i0, template: "<mat-list-item>\n <mat-icon\n *ngIf=\"haveGroup()\"\n class=\"catalog-browser-layer-carret\"\n matListItemIcon\n ></mat-icon>\n <span\n matListItemTitle\n matTooltipShowDelay=\"500\"\n [ngClass]=\"catalogAllowLegend ? 'igo-cataloglayer-title' : ''\"\n (click)=\"askForLegend()\"\n [matTooltip]=\"computeTitleTooltip()\"\n >\n {{ title }}\n </span>\n\n <div matListItemMeta>\n <button *ngIf=\"layer.externalProvider\" disabled=\"true\" mat-icon-button>\n <mat-icon\n class=\"igo-cataloglayer-external-icon\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.catalog.externalProvider.layer' | translate\"\n color=\"primary\"\n (click)=\"$event.stopPropagation()\"\n >\n public\n </mat-icon>\n </button>\n <igo-metadata-button [layer]=\"$any(layer)\"></igo-metadata-button>\n\n <button\n (mouseenter)=\"onMouseEvent($event)\"\n (mouseleave)=\"onMouseEvent($event)\"\n mat-icon-button\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"computeTooltip() | translate\"\n [color]=\"(isPreview$ | async) ? '' : added ? 'warn' : ''\"\n (click)=\"onToggleClick($event)\"\n >\n <mat-icon\n aria-hidden=\"false\"\n matBadge=\"icon\"\n [igoMatBadgeIcon]=\"getBadgeIcon()\"\n igoMatBadgeColor=\"rgba(0,0,0,0.87)\"\n igoMatBadgeBackgroundColor=\"none\"\n [igoMatBadgeInverseColor]=\"true\"\n [matBadgeHidden]=\"\n ((inRange$ | async) && (isVisible$ | async) === true) ||\n ((inRange$ | async) && !added) ||\n ((inRange$ | async) && (isPreview$ | async))\n \"\n [matBadgeDisabled]=\"(inRange$ | async) === false\"\n matBadgeSize=\"small\"\n matBadgePosition=\"after\"\n >\n {{ (isPreview$ | async) ? 'plus' : added ? 'delete' : 'add' }}\n </mat-icon>\n </button>\n </div>\n</mat-list-item>\n\n<div #legend class=\"igo-cataloglayer-legend-container\">\n <igo-layer-legend\n *ngIf=\"\n (layerLegendShown$ | async) && (igoLayer$ | async) && catalogAllowLegend\n \"\n [layer]=\"igoLayer$ | async\"\n >\n </igo-layer-legend>\n</div>\n", styles: [".igo-cataloglayer-title{cursor:pointer}.catalog-browser-layer-carret{margin-right:16px}.igo-cataloglayer-legend-container{padding-left:18px;width:calc(100% - 18px);margin-left:40px}.igo-cataloglayer-external-icon{cursor:help}:host .mdc-list-item__end,:host .mdc-list-item__start{color:#000}\n"], dependencies: [{ kind: "ngmodule", type: MatListModule }, { kind: "component", type: i2.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i2.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i2.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i2.MatListItemMeta, selector: "[matListItemMeta]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: MetadataButtonComponent, selector: "igo-metadata-button", inputs: ["layer", "color"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "directive", type: i6.MatBadge, selector: "[matBadge]", inputs: ["matBadgeColor", "matBadgeOverlap", "matBadgeDisabled", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "directive", type: IgoBadgeIconDirective, selector: "[igoMatBadgeIcon]", inputs: ["igoMatBadgeIcon", "matBadgeHidden", "matBadgeDisabled", "igoMatBadgeInverseColor", "igoMatBadgeInheritColor", "igoMatBadgeColor", "igoMatBadgeBackgroundColor"] }, { kind: "component", type: LayerLegendComponent, selector: "igo-layer-legend", inputs: ["updateLegendOnResolutionChange", "layer"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: IgoLanguageModule }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
242
242
  }
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CatalogBrowserLayerComponent, decorators: [{
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CatalogBrowserLayerComponent, decorators: [{
244
244
  type: Component,
245
245
  args: [{ selector: 'igo-catalog-browser-layer', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
246
246
  MatListModule,
@@ -271,4 +271,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
271
271
  }], addedLayerIsPreview: [{
272
272
  type: Output
273
273
  }] } });
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLWxheWVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci1sYXllci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0QsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFD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LE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGFBQWE7d0JBQ2IsSUFBSTt3QkFDSixhQUFhO3dCQUNiLE9BQU87d0JBQ1AsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHVCQUF1Qjt3QkFDdkIsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsU0FBUzt3QkFDVCxpQkFBaUI7cUJBQ2xCO2lGQWdCUSxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLSSxXQUFXO3NCQUFwQixNQUFNO2dCQUVHLG1CQUFtQjtzQkFBNUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBJZ29CYWRnZUljb25EaXJlY3RpdmUgfSBmcm9tICdAaWdvMi9jb21tb24vYmFkZ2UnO1xuaW1wb3J0IHsgZ2V0RW50aXR5SWNvbiwgZ2V0RW50aXR5VGl0bGUgfSBmcm9tICdAaWdvMi9jb21tb24vZW50aXR5JztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTGF5ZXJMZWdlbmRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9sYXllci9sYXllci1sZWdlbmQvbGF5ZXItbGVnZW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXllclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvbGF5ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBMYXllciwgVG9vbHRpcFR5cGUgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvbGF5ZXJzJztcbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7IE1ldGFkYXRhQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbWV0YWRhdGEvbWV0YWRhdGEtYnV0dG9uL21ldGFkYXRhLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWV0YWRhdGFMYXllck9wdGlvbnMgfSBmcm9tICcuLi8uLi9tZXRhZGF0YS9zaGFyZWQvbWV0YWRhdGEuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFkZGVkQ2hhbmdlRW1pdHRlciwgQ2F0YWxvZ0l0ZW1MYXllciB9IGZyb20gJy4uL3NoYXJlZCc7XG5cbi8qKlxuICogQ2F0YWxvZyBicm93c2VyIGxheWVyIGl0ZW1cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE5nSWYsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBOZ0NsYXNzLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1ldGFkYXRhQnV0dG9uQ29tcG9uZW50LFxuICAgIE1hdEJhZGdlTW9kdWxlLFxuICAgIElnb0JhZGdlSWNvbkRpcmVjdGl2ZSxcbiAgICBMYXllckxlZ2VuZENvbXBvbmVudCxcbiAgICBBc3luY1BpcGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDYXRhbG9nQnJvd3NlckxheWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgaW5SYW5nZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwdWJsaWMgaXNQcmV2aWV3JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNWaXNpYmxlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIGlzUHJldmlldyQkOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgcmVzb2x1dGlvbiQkOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgbGF5ZXJzJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBsYXN0VGltZW91dFJlcXVlc3Q7XG5cbiAgcHVibGljIGxheWVyTGVnZW5kU2hvd24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpZ29MYXllciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExheWVyPih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgbW91c2VJbnNpZGVBZGQgPSBmYWxzZTtcblxuICBASW5wdXQoKSByZXNvbHV0aW9uOiBudW1iZXI7XG5cbiAgQElucHV0KCkgY2F0YWxvZ0FsbG93TGVnZW5kID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIENhdGFsb2cgbGF5ZXJcbiAgICovXG4gIEBJbnB1dCgpIGxheWVyOiBDYXRhbG9nSXRlbUxheWVyO1xuXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBsYXllciBpcyBhbHJlYWR5IGFkZGVkIHRvIHRoZSBtYXBcbiAgICovXG4gIEBJbnB1dCgpIGFkZGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgYWRkL3JlbW92ZSBidXR0b24gaXMgY2xpY2tlZFxuICAgKi9cbiAgQE91dHB1dCgpIGFkZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBZGRlZENoYW5nZUVtaXR0ZXI+KCk7XG5cbiAgQE91dHB1dCgpIGFkZGVkTGF5ZXJJc1ByZXZpZXcgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldEVudGl0eVRpdGxlKHRoaXMubGF5ZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IGljb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0RW50aXR5SWNvbih0aGlzLmxheWVyKSB8fCAnbGF5ZXJzJztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbGF5ZXJTZXJ2aWNlOiBMYXllclNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1ByZXZpZXckJCA9IHRoaXMuaXNQcmV2aWV3JC5zdWJzY3JpYmUoKHZhbHVlKSA9PlxuICAgICAgdGhpcy5hZGRlZExheWVySXNQcmV2aWV3LmVtaXQodmFsdWUpXG4gICAgKTtcblxuICAgIHRoaXMubGF5ZXJzJCQgPSB0aGlzLm1hcC5sYXllcnMkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmlzVmlzaWJsZSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZXNvbHV0aW9uJCQgPSB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5yZXNvbHV0aW9uJC5zdWJzY3JpYmUoXG4gICAgICAocmVzb2x1dGlvbikgPT4ge1xuICAgICAgICB0aGlzLmlzSW5SZXNvbHV0aW9uc1JhbmdlKHJlc29sdXRpb24pO1xuICAgICAgICB0aGlzLmlzVmlzaWJsZSgpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmlzUHJldmlldyQkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5yZXNvbHV0aW9uJCQudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxheWVycyQkLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBjb21wdXRlVGl0bGVUb29sdGlwKCk6IHN0cmluZyB7XG4gICAgY29uc3QgbGF5ZXJPcHRpb25zID0gdGhpcy5sYXllci5vcHRpb25zO1xuICAgIGlmICghbGF5ZXJPcHRpb25zLnRvb2x0aXApIHtcbiAgICAgIHJldHVybiBnZXRFbnRpdHlUaXRsZSh0aGlzLmxheWVyKTtcbiAgICB9XG4gICAgY29uc3QgbGF5ZXJUb29sdGlwID0gbGF5ZXJPcHRpb25zLnRvb2x0aXA7XG4gICAgY29uc3QgbGF5ZXJNZXRhZGF0YSA9IChsYXllck9wdGlvbnMgYXMgTWV0YWRhdGFMYXllck9wdGlvbnMpLm1ldGFkYXRhO1xuICAgIHN3aXRjaCAobGF5ZXJPcHRpb25zLnRvb2x0aXAudHlwZSkge1xuICAgICAgY2FzZSBUb29sdGlwVHlwZS5USVRMRTpcbiAgICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XG4gICAgICBjYXNlIFRvb2x0aXBUeXBlLkFCU1RSQUNUOlxuICAgICAgICBpZiAobGF5ZXJNZXRhZGF0YSAmJiBsYXllck1ldGFkYXRhLmFic3RyYWN0KSB7XG4gICAgICAgICAgcmV0dXJuIGxheWVyTWV0YWRhdGEuYWJzdHJhY3Q7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XG4gICAgICAgIH1cbiAgICAgIGNhc2UgVG9vbHRpcFR5cGUuQ1VTVE9NOlxuICAgICAgICBpZiAobGF5ZXJUb29sdGlwICYmIGxheWVyVG9vbHRpcC50ZXh0KSB7XG4gICAgICAgICAgcmV0dXJuIGxheWVyVG9vbHRpcC50ZXh0O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0aGlzLmxheWVyLnRpdGxlO1xuICAgICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5sYXllci50aXRsZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT24gbW91c2UgZXZlbnQsIG1vdXNlZW50ZXIgL21vdXNlbGVhdmVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBvbk1vdXNlRXZlbnQoZXZlbnQpIHtcbiAgICB0aGlzLm9uVG9nZ2xlQ2xpY2soZXZlbnQpO1xuICB9XG5cbiAgYXNrRm9yTGVnZW5kKCkge1xuICAgIHRoaXMubGF5ZXJMZWdlbmRTaG93biQubmV4dCghdGhpcy5sYXllckxlZ2VuZFNob3duJC52YWx1ZSk7XG4gICAgdGhpcy5sYXllclNlcnZpY2VcbiAgICAgIC5jcmVhdGVBc3luY0xheWVyKHRoaXMubGF5ZXIub3B0aW9ucylcbiAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAuc3Vic2NyaWJlKChsYXllcikgPT4gdGhpcy5pZ29MYXllciQubmV4dChsYXllcikpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9uIHRvZ2dsZSBidXR0b24gY2xpY2ssIGVtaXQgdGhlIGFkZGVkIGNoYW5nZSBldmVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG9uVG9nZ2xlQ2xpY2soZXZlbnQpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0KTtcbiAgICB9XG4gICAgaWYgKGV2ZW50LnR5cGUgPT09ICdtb3VzZWVudGVyJyAmJiB0aGlzLm1vdXNlSW5zaWRlQWRkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgY2FzZSAnY2xpY2snOlxuICAgICAgICBpZiAoIXRoaXMuaXNQcmV2aWV3JC52YWx1ZSkge1xuICAgICAgICAgIGlmICh0aGlzLmFkZGVkKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZShldmVudCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYWRkKGV2ZW50KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pc1ByZXZpZXckLm5leHQoZmFsc2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ21vdXNlZW50ZXInOlxuICAgICAgICBpZiAoIXRoaXMuaXNQcmV2aWV3JC52YWx1ZSAmJiAhdGhpcy5hZGRlZCkge1xuICAgICAgICAgIHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZChldmVudCk7XG4gICAgICAgICAgICB0aGlzLmlzUHJldmlldyQubmV4dCh0cnVlKTtcbiAgICAgICAgICB9LCA1MDApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubW91c2VJbnNpZGVBZGQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ21vdXNlbGVhdmUnOlxuICAgICAgICBpZiAodGhpcy5pc1ByZXZpZXckLnZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5yZW1vdmUoZXZlbnQpO1xuICAgICAgICAgIHRoaXMuaXNQcmV2aWV3JC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1vdXNlSW5zaWRlQWRkID0gZmFsc2U7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgYWRkZWQgY2hhbmdlIGV2ZW50IHdpdGggYWRkZWQgPSB0cnVlXG4gICAqL1xuICBwcml2YXRlIGFkZChldmVudDogRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuYWRkZWQpIHtcbiAgICAgIHRoaXMuYWRkZWQgPSB0cnVlO1xuICAgICAgdGhpcy5hZGRlZENoYW5nZS5lbWl0KHsgYWRkZWQ6IHRydWUsIGxheWVyOiB0aGlzLmxheWVyLCBldmVudCB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRW1pdCBhZGRlZCBjaGFuZ2UgZXZlbnQgd2l0aCBhZGRlZCA9IGZhbHNlXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZShldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy5hZGRlZCkge1xuICAgICAgdGhpcy5hZGRlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5hZGRlZENoYW5nZS5lbWl0KHsgYWRkZWQ6IGZhbHNlLCBsYXllcjogdGhpcy5sYXllciwgZXZlbnQgfSk7XG4gICAgfVxuICB9XG5cbiAgaGF2ZUdyb3VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhKCF0aGlzLmxheWVyLmFkZHJlc3MgfHwgdGhpcy5sYXllci5hZGRyZXNzLnNwbGl0KCcuJykubGVuZ3RoID09PSAxKTtcbiAgfVxuXG4gIGlzSW5SZXNvbHV0aW9uc1JhbmdlKHJlc29sdXRpb246IG51bWJlcikge1xuICAgIGNvbnN0IG1pblJlc29sdXRpb24gPVxuICAgICAgIXRoaXMubGF5ZXIub3B0aW9ucy5taW5SZXNvbHV0aW9uIHx8XG4gICAgICBOdW1iZXIuaXNOYU4odGhpcy5sYXllci5vcHRpb25zLm1pblJlc29sdXRpb24pXG4gICAgICAgID8gMFxuICAgICAgICA6IHRoaXMubGF5ZXIub3B0aW9ucy5taW5SZXNvbHV0aW9uO1xuICAgIGNvbnN0IG1heFJlc29sdXRpb24gPVxuICAgICAgIXRoaXMubGF5ZXIub3B0aW9ucy5tYXhSZXNvbHV0aW9uIHx8XG4gICAgICBOdW1iZXIuaXNOYU4odGhpcy5sYXllci5vcHRpb25zLm1heFJlc29sdXRpb24pXG4gICAgICAgID8gSW5maW5pdHlcbiAgICAgICAgOiB0aGlzLmxheWVyLm9wdGlvbnMubWF4UmVzb2x1dGlvbjtcbiAgICB0aGlzLmluUmFuZ2UkLm5leHQoXG4gICAgICByZXNvbHV0aW9uID49IG1pblJlc29sdXRpb24gJiYgcmVzb2x1dGlvbiA8PSBtYXhSZXNvbHV0aW9uXG4gICAgKTtcbiAgfVxuXG4gIGlzVmlzaWJsZSgpIHtcbiAgICBpZiAodGhpcy5sYXllcj8uaWQpIHtcbiAgICAgIGNvbnN0IG9MYXllciA9IHRoaXMubWFwLmdldExheWVyQnlJZCh0aGlzLmxheWVyPy5pZCk7XG4gICAgICBvTGF5ZXJcbiAgICAgICAgPyB0aGlzLmlzVmlzaWJsZSQubmV4dChvTGF5ZXIudmlzaWJsZSlcbiAgICAgICAgOiB0aGlzLmlzVmlzaWJsZSQubmV4dChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0QmFkZ2VJY29uKCkge1xuICAgIGlmICh0aGlzLmluUmFuZ2UkLmdldFZhbHVlKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZSQuZ2V0VmFsdWUoKSA/ICcnIDogJ3Zpc2liaWxpdHlfb2ZmJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICd2aXNpYmlsaXR5X29mZic7XG4gICAgfVxuICB9XG5cbiAgY29tcHV0ZVRvb2x0aXAoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5hZGRlZCkge1xuICAgICAgaWYgKHRoaXMuaXNQcmV2aWV3JC52YWx1ZSkge1xuICAgICAgICByZXR1cm4gJ2lnby5nZW8uY2F0YWxvZy5sYXllci5hZGRUb01hcCc7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaW5SYW5nZSQudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNWaXNpYmxlJC52YWx1ZVxuICAgICAgICAgID8gJ2lnby5nZW8uY2F0YWxvZy5sYXllci5yZW1vdmVGcm9tTWFwJ1xuICAgICAgICAgIDogJ2lnby5nZW8uY2F0YWxvZy5sYXllci5yZW1vdmVGcm9tTWFwTm90VmlzaWJsZSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gJ2lnby5nZW8uY2F0YWxvZy5sYXllci5yZW1vdmVGcm9tTWFwT3V0UmFuZ2UnO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5pblJhbmdlJC52YWx1ZVxuICAgICAgICA/ICdpZ28uZ2VvLmNhdGFsb2cubGF5ZXIuYWRkVG9NYXAnXG4gICAgICAgIDogJ2lnby5nZW8uY2F0YWxvZy5sYXllci5hZGRUb01hcE91dFJhbmdlJztcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtbGlzdC1pdGVtPlxuICA8bWF0LWljb25cbiAgICAqbmdJZj1cImhhdmVHcm91cCgpXCJcbiAgICBjbGFzcz1cImNhdGFsb2ctYnJvd3Nlci1sYXllci1jYXJyZXRcIlxuICAgIG1hdExpc3RJdGVtSWNvblxuICA+PC9tYXQtaWNvbj5cbiAgPHNwYW5cbiAgICBtYXRMaXN0SXRlbVRpdGxlXG4gICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgW25nQ2xhc3NdPVwiY2F0YWxvZ0FsbG93TGVnZW5kID8gJ2lnby1jYXRhbG9nbGF5ZXItdGl0bGUnIDogJydcIlxuICAgIChjbGljayk9XCJhc2tGb3JMZWdlbmQoKVwiXG4gICAgW21hdFRvb2x0aXBdPVwiY29tcHV0ZVRpdGxlVG9vbHRpcCgpXCJcbiAgPlxuICAgIHt7IHRpdGxlIH19XG4gIDwvc3Bhbj5cblxuICA8ZGl2IG1hdExpc3RJdGVtTWV0YT5cbiAgICA8YnV0dG9uICpuZ0lmPVwibGF5ZXIuZXh0ZXJuYWxQcm92aWRlclwiIGRpc2FibGVkPVwidHJ1ZVwiIG1hdC1pY29uLWJ1dHRvbj5cbiAgICAgIDxtYXQtaWNvblxuICAgICAgICBjbGFzcz1cImlnby1jYXRhbG9nbGF5ZXItZXh0ZXJuYWwtaWNvblwiXG4gICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5jYXRhbG9nLmV4dGVybmFsUHJvdmlkZXIubGF5ZXInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICA+XG4gICAgICAgIHB1YmxpY1xuICAgICAgPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8aWdvLW1ldGFkYXRhLWJ1dHRvbiBbbGF5ZXJdPVwiJGFueShsYXllcilcIj48L2lnby1tZXRhZGF0YS1idXR0b24+XG5cbiAgICA8YnV0dG9uXG4gICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRXZlbnQoJGV2ZW50KVwiXG4gICAgICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlRXZlbnQoJGV2ZW50KVwiXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgIFttYXRUb29sdGlwXT1cImNvbXB1dGVUb29sdGlwKCkgfCB0cmFuc2xhdGVcIlxuICAgICAgW2NvbG9yXT1cIihpc1ByZXZpZXckIHwgYXN5bmMpID8gJycgOiBhZGRlZCA/ICd3YXJuJyA6ICcnXCJcbiAgICAgIChjbGljayk9XCJvblRvZ2dsZUNsaWNrKCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvblxuICAgICAgICBhcmlhLWhpZGRlbj1cImZhbHNlXCJcbiAgICAgICAgbWF0QmFkZ2U9XCJpY29uXCJcbiAgICAgICAgW2lnb01hdEJhZGdlSWNvbl09XCJnZXRCYWRnZUljb24oKVwiXG4gICAgICAgIGlnb01hdEJhZGdlQ29sb3I9XCJyZ2JhKDAsMCwwLDAuODcpXCJcbiAgICAgICAgaWdvTWF0QmFkZ2VCYWNrZ3JvdW5kQ29sb3I9XCJub25lXCJcbiAgICAgICAgW2lnb01hdEJhZGdlSW52ZXJzZUNvbG9yXT1cInRydWVcIlxuICAgICAgICBbbWF0QmFkZ2VIaWRkZW5dPVwiXG4gICAgICAgICAgKChpblJhbmdlJCB8IGFzeW5jKSAmJiAoaXNWaXNpYmxlJCB8IGFzeW5jKSA9PT0gdHJ1ZSkgfHxcbiAgICAgICAgICAoKGluUmFuZ2UkIHwgYXN5bmMpICYmICFhZGRlZCkgfHxcbiAgICAgICAgICAoKGluUmFuZ2UkIHwgYXN5bmMpICYmIChpc1ByZXZpZXckIHwgYXN5bmMpKVxuICAgICAgICBcIlxuICAgICAgICBbbWF0QmFkZ2VEaXNhYmxlZF09XCIoaW5SYW5nZSQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgICAgICBtYXRCYWRnZVBvc2l0aW9uPVwiYWZ0ZXJcIlxuICAgICAgPlxuICAgICAgICB7eyAoaXNQcmV2aWV3JCB8IGFzeW5jKSA/ICdwbHVzJyA6IGFkZGVkID8gJ2RlbGV0ZScgOiAnYWRkJyB9fVxuICAgICAgPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L21hdC1saXN0LWl0ZW0+XG5cbjxkaXYgI2xlZ2VuZCBjbGFzcz1cImlnby1jYXRhbG9nbGF5ZXItbGVnZW5kLWNvbnRhaW5lclwiPlxuICA8aWdvLWxheWVyLWxlZ2VuZFxuICAgICpuZ0lmPVwiXG4gICAgICAobGF5ZXJMZWdlbmRTaG93biQgfCBhc3luYykgJiYgKGlnb0xheWVyJCB8IGFzeW5jKSAmJiBjYXRhbG9nQWxsb3dMZWdlbmRcbiAgICBcIlxuICAgIFtsYXllcl09XCJpZ29MYXllciQgfCBhc3luY1wiXG4gID5cbiAgPC9pZ28tbGF5ZXItbGVnZW5kPlxuPC9kaXY+XG4iXX0=
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLWxheWVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci1sYXllci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0QsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTdELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFD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LE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGFBQWE7d0JBQ2IsSUFBSTt3QkFDSixhQUFhO3dCQUNiLE9BQU87d0JBQ1AsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHVCQUF1Qjt3QkFDdkIsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsU0FBUzt3QkFDVCxpQkFBaUI7cUJBQ2xCO2lGQWdCUSxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsR0FBRztzQkFBWCxLQUFLO2dCQUtHLEtBQUs7c0JBQWIsS0FBSztnQkFLSSxXQUFXO3NCQUFwQixNQUFNO2dCQUVHLG1CQUFtQjtzQkFBNUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdDbGFzcywgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuXG5pbXBvcnQgeyBJZ29CYWRnZUljb25EaXJlY3RpdmUgfSBmcm9tICdAaWdvMi9jb21tb24vYmFkZ2UnO1xuaW1wb3J0IHsgZ2V0RW50aXR5SWNvbiwgZ2V0RW50aXR5VGl0bGUgfSBmcm9tICdAaWdvMi9jb21tb24vZW50aXR5JztcbmltcG9ydCB7IElnb0xhbmd1YWdlTW9kdWxlIH0gZnJvbSAnQGlnbzIvY29yZS9sYW5ndWFnZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaXJzdCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTGF5ZXJMZWdlbmRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9sYXllci9sYXllci1sZWdlbmQvbGF5ZXItbGVnZW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXllclNlcnZpY2UgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvbGF5ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBMYXllciwgVG9vbHRpcFR5cGUgfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvbGF5ZXJzJztcbmltcG9ydCB7IElnb01hcCB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7IE1ldGFkYXRhQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbWV0YWRhdGEvbWV0YWRhdGEtYnV0dG9uL21ldGFkYXRhLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWV0YWRhdGFMYXllck9wdGlvbnMgfSBmcm9tICcuLi8uLi9tZXRhZGF0YS9zaGFyZWQvbWV0YWRhdGEuaW50ZXJmYWNlJztcbmltcG9ydCB7IEFkZGVkQ2hhbmdlRW1pdHRlciwgQ2F0YWxvZ0l0ZW1MYXllciB9IGZyb20gJy4uL3NoYXJlZCc7XG5cbi8qKlxuICogQ2F0YWxvZyBicm93c2VyIGxheWVyIGl0ZW1cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXRhbG9nLWJyb3dzZXItbGF5ZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE5nSWYsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBOZ0NsYXNzLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1ldGFkYXRhQnV0dG9uQ29tcG9uZW50LFxuICAgIE1hdEJhZGdlTW9kdWxlLFxuICAgIElnb0JhZGdlSWNvbkRpcmVjdGl2ZSxcbiAgICBMYXllckxlZ2VuZENvbXBvbmVudCxcbiAgICBBc3luY1BpcGUsXG4gICAgSWdvTGFuZ3VhZ2VNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDYXRhbG9nQnJvd3NlckxheWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgaW5SYW5nZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICBwdWJsaWMgaXNQcmV2aWV3JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNWaXNpYmxlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIGlzUHJldmlldyQkOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgcmVzb2x1dGlvbiQkOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgbGF5ZXJzJCQ6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBsYXN0VGltZW91dFJlcXVlc3Q7XG5cbiAgcHVibGljIGxheWVyTGVnZW5kU2hvd24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpZ29MYXllciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PExheWVyPih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgbW91c2VJbnNpZGVBZGQgPSBmYWxzZTtcblxuICBASW5wdXQoKSByZXNvbHV0aW9uOiBudW1iZXI7XG5cbiAgQElucHV0KCkgY2F0YWxvZ0FsbG93TGVnZW5kID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIENhdGFsb2cgbGF5ZXJcbiAgICovXG4gIEBJbnB1dCgpIGxheWVyOiBDYXRhbG9nSXRlbUxheWVyO1xuXG4gIEBJbnB1dCgpIG1hcDogSWdvTWFwO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBsYXllciBpcyBhbHJlYWR5IGFkZGVkIHRvIHRoZSBtYXBcbiAgICovXG4gIEBJbnB1dCgpIGFkZGVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgYWRkL3JlbW92ZSBidXR0b24gaXMgY2xpY2tlZFxuICAgKi9cbiAgQE91dHB1dCgpIGFkZGVkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBZGRlZENoYW5nZUVtaXR0ZXI+KCk7XG5cbiAgQE91dHB1dCgpIGFkZGVkTGF5ZXJJc1ByZXZpZXcgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdldEVudGl0eVRpdGxlKHRoaXMubGF5ZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgZ2V0IGljb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0RW50aXR5SWNvbih0aGlzLmxheWVyKSB8fCAnbGF5ZXJzJztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbGF5ZXJTZXJ2aWNlOiBMYXllclNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc1ByZXZpZXckJCA9IHRoaXMuaXNQcmV2aWV3JC5zdWJzY3JpYmUoKHZhbHVlKSA9PlxuICAgICAgdGhpcy5hZGRlZExheWVySXNQcmV2aWV3LmVtaXQodmFsdWUpXG4gICAgKTtcblxuICAgIHRoaXMubGF5ZXJzJCQgPSB0aGlzLm1hcC5sYXllcnMkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmlzVmlzaWJsZSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZXNvbHV0aW9uJCQgPSB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5yZXNvbHV0aW9uJC5zdWJzY3JpYmUoXG4gICAgICAocmVzb2x1dGlvbikgPT4ge1xuICAgICAgICB0aGlzLmlzSW5SZXNvbHV0aW9uc1JhbmdlKHJlc29sdXRpb24pO1xuICAgICAgICB0aGlzLmlzVmlzaWJsZSgpO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmlzUHJldmlldyQkLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5yZXNvbHV0aW9uJCQudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmxheWVycyQkLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBjb21wdXRlVGl0bGVUb29sdGlwKCk6IHN0cmluZyB7XG4gICAgY29uc3QgbGF5ZXJPcHRpb25zID0gdGhpcy5sYXllci5vcHRpb25zO1xuICAgIGlmICghbGF5ZXJPcHRpb25zLnRvb2x0aXApIHtcbiAgICAgIHJldHVybiBnZXRFbnRpdHlUaXRsZSh0aGlzLmxheWVyKTtcbiAgICB9XG4gICAgY29uc3QgbGF5ZXJUb29sdGlwID0gbGF5ZXJPcHRpb25zLnRvb2x0aXA7XG4gICAgY29uc3QgbGF5ZXJNZXRhZGF0YSA9IChsYXllck9wdGlvbnMgYXMgTWV0YWRhdGFMYXllck9wdGlvbnMpLm1ldGFkYXRhO1xuICAgIHN3aXRjaCAobGF5ZXJPcHRpb25zLnRvb2x0aXAudHlwZSkge1xuICAgICAgY2FzZSBUb29sdGlwVHlwZS5USVRMRTpcbiAgICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XG4gICAgICBjYXNlIFRvb2x0aXBUeXBlLkFCU1RSQUNUOlxuICAgICAgICBpZiAobGF5ZXJNZXRhZGF0YSAmJiBsYXllck1ldGFkYXRhLmFic3RyYWN0KSB7XG4gICAgICAgICAgcmV0dXJuIGxheWVyTWV0YWRhdGEuYWJzdHJhY3Q7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubGF5ZXIudGl0bGU7XG4gICAgICAgIH1cbiAgICAgIGNhc2UgVG9vbHRpcFR5cGUuQ1VTVE9NOlxuICAgICAgICBpZiAobGF5ZXJUb29sdGlwICYmIGxheWVyVG9vbHRpcC50ZXh0KSB7XG4gICAgICAgICAgcmV0dXJuIGxheWVyVG9vbHRpcC50ZXh0O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0aGlzLmxheWVyLnRpdGxlO1xuICAgICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5sYXllci50aXRsZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT24gbW91c2UgZXZlbnQsIG1vdXNlZW50ZXIgL21vdXNlbGVhdmVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBvbk1vdXNlRXZlbnQoZXZlbnQpIHtcbiAgICB0aGlzLm9uVG9nZ2xlQ2xpY2soZXZlbnQpO1xuICB9XG5cbiAgYXNrRm9yTGVnZW5kKCkge1xuICAgIHRoaXMubGF5ZXJMZWdlbmRTaG93biQubmV4dCghdGhpcy5sYXllckxlZ2VuZFNob3duJC52YWx1ZSk7XG4gICAgdGhpcy5sYXllclNlcnZpY2VcbiAgICAgIC5jcmVhdGVBc3luY0xheWVyKHRoaXMubGF5ZXIub3B0aW9ucylcbiAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAuc3Vic2NyaWJlKChsYXllcikgPT4gdGhpcy5pZ29MYXllciQubmV4dChsYXllcikpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9uIHRvZ2dsZSBidXR0b24gY2xpY2ssIGVtaXQgdGhlIGFkZGVkIGNoYW5nZSBldmVudFxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG9uVG9nZ2xlQ2xpY2soZXZlbnQpIHtcbiAgICBpZiAodHlwZW9mIHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0KTtcbiAgICB9XG4gICAgaWYgKGV2ZW50LnR5cGUgPT09ICdtb3VzZWVudGVyJyAmJiB0aGlzLm1vdXNlSW5zaWRlQWRkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHN3aXRjaCAoZXZlbnQudHlwZSkge1xuICAgICAgY2FzZSAnY2xpY2snOlxuICAgICAgICBpZiAoIXRoaXMuaXNQcmV2aWV3JC52YWx1ZSkge1xuICAgICAgICAgIGlmICh0aGlzLmFkZGVkKSB7XG4gICAgICAgICAgICB0aGlzLnJlbW92ZShldmVudCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYWRkKGV2ZW50KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pc1ByZXZpZXckLm5leHQoZmFsc2UpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ21vdXNlZW50ZXInOlxuICAgICAgICBpZiAoIXRoaXMuaXNQcmV2aWV3JC52YWx1ZSAmJiAhdGhpcy5hZGRlZCkge1xuICAgICAgICAgIHRoaXMubGFzdFRpbWVvdXRSZXF1ZXN0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFkZChldmVudCk7XG4gICAgICAgICAgICB0aGlzLmlzUHJldmlldyQubmV4dCh0cnVlKTtcbiAgICAgICAgICB9LCA1MDApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubW91c2VJbnNpZGVBZGQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ21vdXNlbGVhdmUnOlxuICAgICAgICBpZiAodGhpcy5pc1ByZXZpZXckLnZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5yZW1vdmUoZXZlbnQpO1xuICAgICAgICAgIHRoaXMuaXNQcmV2aWV3JC5uZXh0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1vdXNlSW5zaWRlQWRkID0gZmFsc2U7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEVtaXQgYWRkZWQgY2hhbmdlIGV2ZW50IHdpdGggYWRkZWQgPSB0cnVlXG4gICAqL1xuICBwcml2YXRlIGFkZChldmVudDogRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuYWRkZWQpIHtcbiAgICAgIHRoaXMuYWRkZWQgPSB0cnVlO1xuICAgICAgdGhpcy5hZGRlZENoYW5nZS5lbWl0KHsgYWRkZWQ6IHRydWUsIGxheWVyOiB0aGlzLmxheWVyLCBldmVudCB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRW1pdCBhZGRlZCBjaGFuZ2UgZXZlbnQgd2l0aCBhZGRlZCA9IGZhbHNlXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZShldmVudDogRXZlbnQpIHtcbiAgICBpZiAodGhpcy5hZGRlZCkge1xuICAgICAgdGhpcy5hZGRlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5hZGRlZENoYW5nZS5lbWl0KHsgYWRkZWQ6IGZhbHNlLCBsYXllcjogdGhpcy5sYXllciwgZXZlbnQgfSk7XG4gICAgfVxuICB9XG5cbiAgaGF2ZUdyb3VwKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhKCF0aGlzLmxheWVyLmFkZHJlc3MgfHwgdGhpcy5sYXllci5hZGRyZXNzLnNwbGl0KCcuJykubGVuZ3RoID09PSAxKTtcbiAgfVxuXG4gIGlzSW5SZXNvbHV0aW9uc1JhbmdlKHJlc29sdXRpb246IG51bWJlcikge1xuICAgIGNvbnN0IG1pblJlc29sdXRpb24gPVxuICAgICAgIXRoaXMubGF5ZXIub3B0aW9ucy5taW5SZXNvbHV0aW9uIHx8XG4gICAgICBOdW1iZXIuaXNOYU4odGhpcy5sYXllci5vcHRpb25zLm1pblJlc29sdXRpb24pXG4gICAgICAgID8gMFxuICAgICAgICA6IHRoaXMubGF5ZXIub3B0aW9ucy5taW5SZXNvbHV0aW9uO1xuICAgIGNvbnN0IG1heFJlc29sdXRpb24gPVxuICAgICAgIXRoaXMubGF5ZXIub3B0aW9ucy5tYXhSZXNvbHV0aW9uIHx8XG4gICAgICBOdW1iZXIuaXNOYU4odGhpcy5sYXllci5vcHRpb25zLm1heFJlc29sdXRpb24pXG4gICAgICAgID8gSW5maW5pdHlcbiAgICAgICAgOiB0aGlzLmxheWVyLm9wdGlvbnMubWF4UmVzb2x1dGlvbjtcbiAgICB0aGlzLmluUmFuZ2UkLm5leHQoXG4gICAgICByZXNvbHV0aW9uID49IG1pblJlc29sdXRpb24gJiYgcmVzb2x1dGlvbiA8PSBtYXhSZXNvbHV0aW9uXG4gICAgKTtcbiAgfVxuXG4gIGlzVmlzaWJsZSgpIHtcbiAgICBpZiAodGhpcy5sYXllcj8uaWQpIHtcbiAgICAgIGNvbnN0IG9MYXllciA9IHRoaXMubWFwLmdldExheWVyQnlJZCh0aGlzLmxheWVyPy5pZCk7XG4gICAgICBvTGF5ZXJcbiAgICAgICAgPyB0aGlzLmlzVmlzaWJsZSQubmV4dChvTGF5ZXIudmlzaWJsZSlcbiAgICAgICAgOiB0aGlzLmlzVmlzaWJsZSQubmV4dChmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0QmFkZ2VJY29uKCkge1xuICAgIGlmICh0aGlzLmluUmFuZ2UkLmdldFZhbHVlKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZSQuZ2V0VmFsdWUoKSA/ICcnIDogJ3Zpc2liaWxpdHlfb2ZmJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICd2aXNpYmlsaXR5X29mZic7XG4gICAgfVxuICB9XG5cbiAgY29tcHV0ZVRvb2x0aXAoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5hZGRlZCkge1xuICAgICAgaWYgKHRoaXMuaXNQcmV2aWV3JC52YWx1ZSkge1xuICAgICAgICByZXR1cm4gJ2lnby5nZW8uY2F0YWxvZy5sYXllci5hZGRUb01hcCc7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuaW5SYW5nZSQudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNWaXNpYmxlJC52YWx1ZVxuICAgICAgICAgID8gJ2lnby5nZW8uY2F0YWxvZy5sYXllci5yZW1vdmVGcm9tTWFwJ1xuICAgICAgICAgIDogJ2lnby5nZW8uY2F0YWxvZy5sYXllci5yZW1vdmVGcm9tTWFwTm90VmlzaWJsZSc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gJ2lnby5nZW8uY2F0YWxvZy5sYXllci5yZW1vdmVGcm9tTWFwT3V0UmFuZ2UnO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5pblJhbmdlJC52YWx1ZVxuICAgICAgICA/ICdpZ28uZ2VvLmNhdGFsb2cubGF5ZXIuYWRkVG9NYXAnXG4gICAgICAgIDogJ2lnby5nZW8uY2F0YWxvZy5sYXllci5hZGRUb01hcE91dFJhbmdlJztcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtbGlzdC1pdGVtPlxuICA8bWF0LWljb25cbiAgICAqbmdJZj1cImhhdmVHcm91cCgpXCJcbiAgICBjbGFzcz1cImNhdGFsb2ctYnJvd3Nlci1sYXllci1jYXJyZXRcIlxuICAgIG1hdExpc3RJdGVtSWNvblxuICA+PC9tYXQtaWNvbj5cbiAgPHNwYW5cbiAgICBtYXRMaXN0SXRlbVRpdGxlXG4gICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgW25nQ2xhc3NdPVwiY2F0YWxvZ0FsbG93TGVnZW5kID8gJ2lnby1jYXRhbG9nbGF5ZXItdGl0bGUnIDogJydcIlxuICAgIChjbGljayk9XCJhc2tGb3JMZWdlbmQoKVwiXG4gICAgW21hdFRvb2x0aXBdPVwiY29tcHV0ZVRpdGxlVG9vbHRpcCgpXCJcbiAgPlxuICAgIHt7IHRpdGxlIH19XG4gIDwvc3Bhbj5cblxuICA8ZGl2IG1hdExpc3RJdGVtTWV0YT5cbiAgICA8YnV0dG9uICpuZ0lmPVwibGF5ZXIuZXh0ZXJuYWxQcm92aWRlclwiIGRpc2FibGVkPVwidHJ1ZVwiIG1hdC1pY29uLWJ1dHRvbj5cbiAgICAgIDxtYXQtaWNvblxuICAgICAgICBjbGFzcz1cImlnby1jYXRhbG9nbGF5ZXItZXh0ZXJuYWwtaWNvblwiXG4gICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxuICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5jYXRhbG9nLmV4dGVybmFsUHJvdmlkZXIubGF5ZXInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgICA+XG4gICAgICAgIHB1YmxpY1xuICAgICAgPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8aWdvLW1ldGFkYXRhLWJ1dHRvbiBbbGF5ZXJdPVwiJGFueShsYXllcilcIj48L2lnby1tZXRhZGF0YS1idXR0b24+XG5cbiAgICA8YnV0dG9uXG4gICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRXZlbnQoJGV2ZW50KVwiXG4gICAgICAobW91c2VsZWF2ZSk9XCJvbk1vdXNlRXZlbnQoJGV2ZW50KVwiXG4gICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgIFttYXRUb29sdGlwXT1cImNvbXB1dGVUb29sdGlwKCkgfCB0cmFuc2xhdGVcIlxuICAgICAgW2NvbG9yXT1cIihpc1ByZXZpZXckIHwgYXN5bmMpID8gJycgOiBhZGRlZCA/ICd3YXJuJyA6ICcnXCJcbiAgICAgIChjbGljayk9XCJvblRvZ2dsZUNsaWNrKCRldmVudClcIlxuICAgID5cbiAgICAgIDxtYXQtaWNvblxuICAgICAgICBhcmlhLWhpZGRlbj1cImZhbHNlXCJcbiAgICAgICAgbWF0QmFkZ2U9XCJpY29uXCJcbiAgICAgICAgW2lnb01hdEJhZGdlSWNvbl09XCJnZXRCYWRnZUljb24oKVwiXG4gICAgICAgIGlnb01hdEJhZGdlQ29sb3I9XCJyZ2JhKDAsMCwwLDAuODcpXCJcbiAgICAgICAgaWdvTWF0QmFkZ2VCYWNrZ3JvdW5kQ29sb3I9XCJub25lXCJcbiAgICAgICAgW2lnb01hdEJhZGdlSW52ZXJzZUNvbG9yXT1cInRydWVcIlxuICAgICAgICBbbWF0QmFkZ2VIaWRkZW5dPVwiXG4gICAgICAgICAgKChpblJhbmdlJCB8IGFzeW5jKSAmJiAoaXNWaXNpYmxlJCB8IGFzeW5jKSA9PT0gdHJ1ZSkgfHxcbiAgICAgICAgICAoKGluUmFuZ2UkIHwgYXN5bmMpICYmICFhZGRlZCkgfHxcbiAgICAgICAgICAoKGluUmFuZ2UkIHwgYXN5bmMpICYmIChpc1ByZXZpZXckIHwgYXN5bmMpKVxuICAgICAgICBcIlxuICAgICAgICBbbWF0QmFkZ2VEaXNhYmxlZF09XCIoaW5SYW5nZSQgfCBhc3luYykgPT09IGZhbHNlXCJcbiAgICAgICAgbWF0QmFkZ2VTaXplPVwic21hbGxcIlxuICAgICAgICBtYXRCYWRnZVBvc2l0aW9uPVwiYWZ0ZXJcIlxuICAgICAgPlxuICAgICAgICB7eyAoaXNQcmV2aWV3JCB8IGFzeW5jKSA/ICdwbHVzJyA6IGFkZGVkID8gJ2RlbGV0ZScgOiAnYWRkJyB9fVxuICAgICAgPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L21hdC1saXN0LWl0ZW0+XG5cbjxkaXYgI2xlZ2VuZCBjbGFzcz1cImlnby1jYXRhbG9nbGF5ZXItbGVnZW5kLWNvbnRhaW5lclwiPlxuICA8aWdvLWxheWVyLWxlZ2VuZFxuICAgICpuZ0lmPVwiXG4gICAgICAobGF5ZXJMZWdlbmRTaG93biQgfCBhc3luYykgJiYgKGlnb0xheWVyJCB8IGFzeW5jKSAmJiBjYXRhbG9nQWxsb3dMZWdlbmRcbiAgICBcIlxuICAgIFtsYXllcl09XCJpZ29MYXllciQgfCBhc3luY1wiXG4gID5cbiAgPC9pZ28tbGF5ZXItbGVnZW5kPlxuPC9kaXY+XG4iXX0=
@@ -215,10 +215,10 @@ export class CatalogBrowserComponent {
215
215
  });
216
216
  this.removeLayersFromMap(layers);
217
217
  }
218
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CatalogBrowserComponent, deps: [{ token: i1.LayerService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
219
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: CatalogBrowserComponent, isStandalone: true, selector: "igo-catalog-browser", inputs: { catalogAllowLegend: "catalogAllowLegend", catalog: "catalog", store: "store", map: "map", toggleCollapsedGroup: "toggleCollapsedGroup" }, ngImport: i0, template: "<igo-list [navigation]=\"false\" [selection]=\"false\">\n <ng-template ngFor let-item [ngForOf]=\"store.view.all$() | async\">\n <ng-container *ngIf=\"isGroup(item)\">\n <igo-catalog-browser-group\n [catalog]=\"catalog\"\n [group]=\"item\"\n [map]=\"map\"\n [state]=\"store.state\"\n [resolution]=\"resolution$ | async\"\n [catalogAllowLegend]=\"catalogAllowLegend\"\n [collapsed]=\"store.count === 1 ? false : true\"\n [toggleCollapsed]=\"toggleCollapsedGroup\"\n (addedChange)=\"onGroupAddedChange($event)\"\n (layerAddedChange)=\"onLayerAddedChange($event)\"\n >\n </igo-catalog-browser-group>\n </ng-container>\n\n <ng-container *ngIf=\"isLayer(item)\">\n <igo-catalog-browser-layer\n igoListItem\n [layer]=\"$any(item)\"\n [map]=\"map\"\n [resolution]=\"resolution$ | async\"\n [catalogAllowLegend]=\"catalogAllowLegend\"\n [added]=\"store.state.get(item).added\"\n (addedChange)=\"onLayerAddedChange($event)\"\n >\n </igo-catalog-browser-layer>\n </ng-container>\n </ng-template>\n</igo-list>\n", dependencies: [{ kind: "component", type: ListComponent, selector: "igo-list", inputs: ["navigation", "selection"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CatalogBrowserGroupComponent, selector: "igo-catalog-browser-group", inputs: ["catalog", "group", "map", "collapsed", "resolution", "catalogAllowLegend", "toggleCollapsed", "state"], outputs: ["addedChange", "layerAddedChange"] }, { kind: "component", type: CatalogBrowserLayerComponent, selector: "igo-catalog-browser-layer", inputs: ["resolution", "catalogAllowLegend", "layer", "map", "added"], outputs: ["addedChange", "addedLayerIsPreview"] }, { kind: "directive", type: ListItemDirective, selector: "[igoListItem]", inputs: ["color", "focused", "selected", "disabled"], outputs: ["beforeSelect", "beforeFocus", "beforeUnselect", "beforeUnfocus", "beforeDisable", "beforeEnable", "focus", "unfocus", "select", "unselect", "disable", "enable"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
218
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CatalogBrowserComponent, deps: [{ token: i1.LayerService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
219
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.11", type: CatalogBrowserComponent, isStandalone: true, selector: "igo-catalog-browser", inputs: { catalogAllowLegend: "catalogAllowLegend", catalog: "catalog", store: "store", map: "map", toggleCollapsedGroup: "toggleCollapsedGroup" }, ngImport: i0, template: "<igo-list [navigation]=\"false\" [selection]=\"false\">\n <ng-template ngFor let-item [ngForOf]=\"store.view.all$() | async\">\n <ng-container *ngIf=\"isGroup(item)\">\n <igo-catalog-browser-group\n [catalog]=\"catalog\"\n [group]=\"item\"\n [map]=\"map\"\n [state]=\"store.state\"\n [resolution]=\"resolution$ | async\"\n [catalogAllowLegend]=\"catalogAllowLegend\"\n [collapsed]=\"store.count === 1 ? false : true\"\n [toggleCollapsed]=\"toggleCollapsedGroup\"\n (addedChange)=\"onGroupAddedChange($event)\"\n (layerAddedChange)=\"onLayerAddedChange($event)\"\n >\n </igo-catalog-browser-group>\n </ng-container>\n\n <ng-container *ngIf=\"isLayer(item)\">\n <igo-catalog-browser-layer\n igoListItem\n [layer]=\"$any(item)\"\n [map]=\"map\"\n [resolution]=\"resolution$ | async\"\n [catalogAllowLegend]=\"catalogAllowLegend\"\n [added]=\"store.state.get(item).added\"\n (addedChange)=\"onLayerAddedChange($event)\"\n >\n </igo-catalog-browser-layer>\n </ng-container>\n </ng-template>\n</igo-list>\n", dependencies: [{ kind: "component", type: ListComponent, selector: "igo-list", inputs: ["navigation", "selection"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CatalogBrowserGroupComponent, selector: "igo-catalog-browser-group", inputs: ["catalog", "group", "map", "collapsed", "resolution", "catalogAllowLegend", "toggleCollapsed", "state"], outputs: ["addedChange", "layerAddedChange"] }, { kind: "component", type: CatalogBrowserLayerComponent, selector: "igo-catalog-browser-layer", inputs: ["resolution", "catalogAllowLegend", "layer", "map", "added"], outputs: ["addedChange", "addedLayerIsPreview"] }, { kind: "directive", type: ListItemDirective, selector: "[igoListItem]", inputs: ["color", "focused", "selected", "disabled"], outputs: ["beforeSelect", "beforeFocus", "beforeUnselect", "beforeUnfocus", "beforeDisable", "beforeEnable", "focus", "unfocus", "select", "unselect", "disable", "enable"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
220
220
  }
221
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CatalogBrowserComponent, decorators: [{
221
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: CatalogBrowserComponent, decorators: [{
222
222
  type: Component,
223
223
  args: [{ selector: 'igo-catalog-browser', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
224
224
  ListComponent,
@@ -240,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImpor
240
240
  }], toggleCollapsedGroup: [{
241
241
  type: Input
242
242
  }] } });
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXJFLE9BQU8sRUFBbUIsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUMsT0FBTyxFQUdMLE9BQU8sRUFLUCxlQUFlLEVBQ2hCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFFakY7O0dBRUc7QUFnQkgsTUFBTSxPQUFPLHVCQUF1QjtJQW1DeEI7SUFDQTtJQW5DVjs7T0FFRztJQUNLLE9BQU8sQ0FBa0M7SUFFakQsc0NBQXNDO0lBRXRDLElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDO0lBQzdDLENBQUM7SUFFUSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7SUFFcEM7O09BRUc7SUFDTSxPQUFPLENBQVU7SUFFMUI7O09BRUc7SUFDTSxLQUFLLENBQTZDO0lBRTNEOztPQUVHO0lBQ00sR0FBRyxDQUFTO0lBRXJCOztPQUVHO0lBQ00sb0JBQW9CLEdBQUcsSUFBSSxDQUFDO0lBRXJDLFlBQ1UsWUFBMEIsRUFDMUIsS0FBd0I7UUFEeEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7SUFDL0IsQ0FBQztJQUVKOztPQUVHO0lBQ0gsUUFBUTtRQUNOLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3hELE9BQU87Z0JBQ0wsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQzNCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztnQkFDbEIsSUFBSSxFQUFFLGVBQWUsQ0FBQyxLQUFLO2FBQzVCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDakUsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzdELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztnQkFDbkIsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYTtnQkFDckMsYUFBYSxFQUFFLENBQUMsSUFBaUIsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUs7YUFDakQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUN6RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsaUJBQWlCO1lBQ3pDLENBQUMsQ0FBQyxpQkFBaUI7WUFDbkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUU1QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU8sQ0FBQyxJQUFpQjtRQUN2QixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLEtBQUssQ0FBQztJQUM3QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPLENBQUMsSUFBaUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxrQkFBa0IsQ0FBQyxLQUF5QjtRQUMxQyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlELEtBQUssQ0FBQyxLQUFLO1lBQ1QsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztZQUNsQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsa0JBQWtCLENBQUMsS0FBOEI7UUFDL0MsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5RCxLQUFLLENBQUMsS0FBSztZQUNULENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUM7WUFDbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssYUFBYSxDQUFDLEtBQXVCLEVBQUUsS0FBMEI7UUFDdkUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7O09BR0c7SUFDSyxrQkFBa0IsQ0FBQyxLQUF1QjtRQUNoRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7O09BR0c7SUFDSyxjQUFjLENBQ3BCLE1BQTBCLEVBQzFCLEtBQW1EO1FBRW5ELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUF1QixFQUFFLEVBQUU7WUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUNoRCxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1lBQ3BELENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDO2dCQUNqQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdELENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO1FBQ0gsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDNUMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxDQUFDO1lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNLLG1CQUFtQixDQUFDLE1BQTBCO1FBQ3BELE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUF1QixFQUFFLEVBQUU7WUFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ2pELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ3JDLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzFELElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO29CQUM1QixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDbEMsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2xELElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO29CQUM1QixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDbEMsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSyx1QkFBdUIsQ0FBQyxLQUFvQixFQUFFLFNBQVM7UUFDN0QsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNyQyxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEUsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRXhFLElBQUksTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO2dCQUNwQixPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ1osQ0FBQztZQUNELElBQUksTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDO2dCQUNwQixPQUFPLENBQUMsQ0FBQztZQUNYLENBQUM7WUFDRCxPQUFPLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQyxDQUFDO1FBQ0gsUUFBUSxTQUFTLEVBQUUsQ0FBQztZQUNsQixLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxVQUFVLENBQUM7WUFDcEIsS0FBSyxNQUFNO2dCQUNULE9BQU8sVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzlCO2dCQUNFLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssYUFBYSxDQUNuQixLQUF1QixFQUN2QixLQUE4QjtRQUU5QixJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQWlCLEVBQUUsRUFBRTtZQUNwRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQztZQUN4RCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEtBQUssQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksS0FBSyxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QyxNQUFNLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBd0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssa0JBQWtCLENBQUMsS0FBdUI7UUFDaEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFpQixFQUFFLEVBQUU7WUFDdEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUM7WUFDeEQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBNEIsQ0FBQyxDQUFDO0lBQ3pELENBQUM7dUdBcE9VLHVCQUF1QjsyRkFBdkIsdUJBQXVCLG1PQ2pEcEMsNm9DQWdDQSw0Q0RRSSxhQUFhLDBGQUNiLEtBQUssbUhBQ0wsSUFBSSw2RkFDSiw0QkFBNEIsc09BQzVCLDRCQUE0Qiw4TEFDNUIsaUJBQWlCLHdSQUNqQixTQUFTOzsyRkFHQSx1QkFBdUI7a0JBZm5DLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUVkLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGFBQWE7d0JBQ2IsS0FBSzt3QkFDTCxJQUFJO3dCQUNKLDRCQUE0Qjt3QkFDNUIsNEJBQTRCO3dCQUM1QixpQkFBaUI7d0JBQ2pCLFNBQVM7cUJBQ1Y7aUhBY1Esa0JBQWtCO3NCQUExQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csR0FBRztzQkFBWCxLQUFLO2dCQUtHLG9CQUFvQjtzQkFBNUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW50aXR5U3RvcmUsIEVudGl0eVN0b3JlV2F0Y2hlciB9IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgTGlzdENvbXBvbmVudCwgTGlzdEl0ZW1EaXJlY3RpdmUgfSBmcm9tICdAaWdvMi9jb21tb24vbGlzdCc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgemlwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IExheWVyU2VydmljZSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllci5zZXJ2aWNlJztcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllcic7XG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcCc7XG5pbXBvcnQge1xuICBBZGRlZENoYW5nZUVtaXR0ZXIsXG4gIEFkZGVkQ2hhbmdlR3JvdXBFbWl0dGVyLFxuICBDYXRhbG9nLFxuICBDYXRhbG9nSXRlbSxcbiAgQ2F0YWxvZ0l0ZW1Hcm91cCxcbiAgQ2F0YWxvZ0l0ZW1MYXllcixcbiAgQ2F0YWxvZ0l0ZW1TdGF0ZSxcbiAgQ2F0YWxvZ0l0ZW1UeXBlXG59IGZyb20gJy4uL3NoYXJlZCc7XG5pbXBvcnQgeyBDYXRhbG9nQnJvd3Nlckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jYXRhbG9nLWJyb3dzZXItZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IENhdGFsb2dCcm93c2VyTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctYnJvd3Nlci1sYXllci5jb21wb25lbnQnO1xuXG4vKipcbiAqIENvbXBvbmVudCB0byBicm93c2UgYSBjYXRhbG9nJ3MgZ3JvdXBzIGFuZCBsYXllcnMgYW5kIGRpc3BsYXkgdGhlbSBvbiBhIG1hcC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWNhdGFsb2ctYnJvd3NlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXRhbG9nLWJyb3dzZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIExpc3RDb21wb25lbnQsXG4gICAgTmdGb3IsXG4gICAgTmdJZixcbiAgICBDYXRhbG9nQnJvd3Nlckdyb3VwQ29tcG9uZW50LFxuICAgIENhdGFsb2dCcm93c2VyTGF5ZXJDb21wb25lbnQsXG4gICAgTGlzdEl0ZW1EaXJlY3RpdmUsXG4gICAgQXN5bmNQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBDYXRhbG9nIGl0ZW1zIHN0b3JlIHdhdGNoZXJcbiAgICovXG4gIHByaXZhdGUgd2F0Y2hlcjogRW50aXR5U3RvcmVXYXRjaGVyPENhdGFsb2dJdGVtPjtcblxuICAvLyBwcml2YXRlIHJlc29sdXRpb24kJDogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCByZXNvbHV0aW9uJCgpOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMubWFwLnZpZXdDb250cm9sbGVyLnJlc29sdXRpb24kO1xuICB9XG5cbiAgQElucHV0KCkgY2F0YWxvZ0FsbG93TGVnZW5kID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIENhdGFsb2dcbiAgICovXG4gIEBJbnB1dCgpIGNhdGFsb2c6IENhdGFsb2c7XG5cbiAgLyoqXG4gICAqIFN0b3JlIGhvbGRpbmcgdGhlIGNhdGFsb2cncyBpdGVtc1xuICAgKi9cbiAgQElucHV0KCkgc3RvcmU6IEVudGl0eVN0b3JlPENhdGFsb2dJdGVtLCBDYXRhbG9nSXRlbVN0YXRlPjtcblxuICAvKipcbiAgICogTWFwIHRvIGFkZCB0aGUgY2F0YWxvZyBpdGVtcyB0b1xuICAgKi9cbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSBncm91cCBjYW4gYmUgdG9nZ2xlZCB3aGVuIGl0J3MgY29sbGFwc2VkXG4gICAqL1xuICBASW5wdXQoKSB0b2dnbGVDb2xsYXBzZWRHcm91cCA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsYXllclNlcnZpY2U6IExheWVyU2VydmljZSxcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgY3VycmVudEl0ZW1zID0gdGhpcy5tYXAubGF5ZXJzLm1hcCgobGF5ZXI6IExheWVyKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogbGF5ZXIub3B0aW9ucy5zb3VyY2UuaWQsXG4gICAgICAgIHRpdGxlOiBsYXllci50aXRsZSxcbiAgICAgICAgdHlwZTogQ2F0YWxvZ0l0ZW1UeXBlLkxheWVyXG4gICAgICB9O1xuICAgIH0pO1xuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlTWFueShjdXJyZW50SXRlbXMsIHsgYWRkZWQ6IHRydWUgfSwgdHJ1ZSk7XG4gICAgaWYgKHRoaXMuY2F0YWxvZyAmJiB0aGlzLmNhdGFsb2cuc29ydERpcmVjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnN0b3JlLnZpZXcuc29ydCh7XG4gICAgICAgIGRpcmVjdGlvbjogdGhpcy5jYXRhbG9nLnNvcnREaXJlY3Rpb24sXG4gICAgICAgIHZhbHVlQWNjZXNzb3I6IChpdGVtOiBDYXRhbG9nSXRlbSkgPT4gaXRlbS50aXRsZVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2F0YWxvZ1Nob3dMZWdlbmQgPSB0aGlzLmNhdGFsb2cgPyB0aGlzLmNhdGFsb2cuc2hvd0xlZ2VuZCA6IGZhbHNlO1xuICAgIHRoaXMuY2F0YWxvZ0FsbG93TGVnZW5kID0gY2F0YWxvZ1Nob3dMZWdlbmRcbiAgICAgID8gY2F0YWxvZ1Nob3dMZWdlbmRcbiAgICAgIDogdGhpcy5jYXRhbG9nQWxsb3dMZWdlbmQ7XG5cbiAgICB0aGlzLndhdGNoZXIgPSBuZXcgRW50aXR5U3RvcmVXYXRjaGVyKHRoaXMuc3RvcmUsIHRoaXMuY2RSZWYpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy53YXRjaGVyLmRlc3Ryb3koKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGlzR3JvdXAoaXRlbTogQ2F0YWxvZ0l0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXRlbS50eXBlID09PSBDYXRhbG9nSXRlbVR5cGUuR3JvdXA7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBpc0xheWVyKGl0ZW06IENhdGFsb2dJdGVtKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGl0ZW0udHlwZSA9PT0gQ2F0YWxvZ0l0ZW1UeXBlLkxheWVyO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gYSBsYXllciBpcyBhZGRlZCBvciByZW1vdmVkLCBhZGQgb3IgcmVtb3ZlIGl0IGZyb20gdGhlIG1hcFxuICAgKiBAaW50ZXJuYWxcbiAgICogQHBhcmFtIGV2ZW50IExheWVyIGFkZGVkIGV2ZW50XG4gICAqL1xuICBvbkxheWVyQWRkZWRDaGFuZ2UoZXZlbnQ6IEFkZGVkQ2hhbmdlRW1pdHRlcikge1xuICAgIGNvbnN0IGxheWVyID0gZXZlbnQubGF5ZXI7XG4gICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGUobGF5ZXIsIHsgYWRkZWQ6IGV2ZW50LmFkZGVkIH0sIGZhbHNlKTtcbiAgICBldmVudC5hZGRlZFxuICAgICAgPyB0aGlzLmFkZExheWVyVG9NYXAobGF5ZXIsIGV2ZW50KVxuICAgICAgOiB0aGlzLnJlbW92ZUxheWVyRnJvbU1hcChsYXllcik7XG4gIH1cblxuICAvKipcbiAgICogV2hlbiBhIGZyb3VwIGlzIGFkZGVkIG9yIHJlbW92ZWQsIGFkZCBvciByZW1vdmUgaXQgZnJvbSB0aGUgbWFwXG4gICAqIEBpbnRlcm5hbFxuICAgKiBAcGFyYW0gZXZlbnQgR3JvdXAgYWRkZWQgZXZlbnRcbiAgICovXG4gIG9uR3JvdXBBZGRlZENoYW5nZShldmVudDogQWRkZWRDaGFuZ2VHcm91cEVtaXR0ZXIpIHtcbiAgICBjb25zdCBncm91cCA9IGV2ZW50Lmdyb3VwO1xuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlKGdyb3VwLCB7IGFkZGVkOiBldmVudC5hZGRlZCB9LCBmYWxzZSk7XG4gICAgZXZlbnQuYWRkZWRcbiAgICAgID8gdGhpcy5hZGRHcm91cFRvTWFwKGdyb3VwLCBldmVudClcbiAgICAgIDogdGhpcy5yZW1vdmVHcm91cEZyb21NYXAoZ3JvdXApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBsYXllciB0byBtYXBcbiAgICogQHBhcmFtIGxheWVyIENhdGFsb2cgbGF5ZXJcbiAgICovXG4gIHByaXZhdGUgYWRkTGF5ZXJUb01hcChsYXllcjogQ2F0YWxvZ0l0ZW1MYXllciwgZXZlbnQ/OiBBZGRlZENoYW5nZUVtaXR0ZXIpIHtcbiAgICB0aGlzLmFkZExheWVyc1RvTWFwKFtsYXllcl0sIGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgbGF5ZXIgZnJvbSBtYXBcbiAgICogQHBhcmFtIGxheWVyIENhdGFsb2cgbGF5ZXJcbiAgICovXG4gIHByaXZhdGUgcmVtb3ZlTGF5ZXJGcm9tTWFwKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSB7XG4gICAgdGhpcy5yZW1vdmVMYXllcnNGcm9tTWFwKFtsYXllcl0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBtdWx0aXBsZSBsYXllcnMgdG8gbWFwXG4gICAqIEBwYXJhbSBsYXllcnMgQ2F0YWxvZyBsYXllcnNcbiAgICovXG4gIHByaXZhdGUgYWRkTGF5ZXJzVG9NYXAoXG4gICAgbGF5ZXJzOiBDYXRhbG9nSXRlbUxheWVyW10sXG4gICAgZXZlbnQ6IEFkZGVkQ2hhbmdlRW1pdHRlciB8IEFkZGVkQ2hhbmdlR3JvdXBFbWl0dGVyXG4gICkge1xuICAgIGNvbnN0IGxheWVycyQgPSBsYXllcnMubWFwKChsYXllcjogQ2F0YWxvZ0l0ZW1MYXllcikgPT4ge1xuICAgICAgaWYgKCFsYXllci5vcHRpb25zLnNvdXJjZU9wdGlvbnMub3B0aW9uc0Zyb21BcGkpIHtcbiAgICAgICAgbGF5ZXIub3B0aW9ucy5zb3VyY2VPcHRpb25zLm9wdGlvbnNGcm9tQXBpID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNhdGFsb2cucHJvZmlscz8ubGVuZ3RoKSB7XG4gICAgICAgIGxheWVyLm9wdGlvbnMuc2VjdXJpdHkgPSB7IHByb2ZpbHM6IHRoaXMuY2F0YWxvZy5wcm9maWxzIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5sYXllclNlcnZpY2UuY3JlYXRlQXN5bmNMYXllcihsYXllci5vcHRpb25zKTtcbiAgICB9KTtcbiAgICB6aXAoLi4ubGF5ZXJzJCkuc3Vic2NyaWJlKChsYXllcnM6IExheWVyW10pID0+IHtcbiAgICAgIGlmIChldmVudC5ldmVudC50eXBlID09PSAnY2xpY2snICYmIGV2ZW50LmFkZGVkKSB7XG4gICAgICAgIHRoaXMubWFwLmxheWVyc0FkZGVkQnlDbGljayQubmV4dChsYXllcnMpO1xuICAgICAgfVxuICAgICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGVNYW55KGxheWVycywgeyBhZGRlZDogdHJ1ZSB9KTtcbiAgICAgIHRoaXMubWFwLmFkZExheWVycyhsYXllcnMpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBtdWx0aXBsZSBsYXllcnMgZnJvbSBtYXBcbiAgICogQHBhcmFtIGxheWVycyBDYXRhbG9nIGxheWVyc1xuICAgKi9cbiAgcHJpdmF0ZSByZW1vdmVMYXllcnNGcm9tTWFwKGxheWVyczogQ2F0YWxvZ0l0ZW1MYXllcltdKSB7XG4gICAgbGF5ZXJzLmZvckVhY2goKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSA9PiB7XG4gICAgICB0aGlzLnN0b3JlLnN0YXRlLnVwZGF0ZShsYXllciwgeyBhZGRlZDogZmFsc2UgfSk7XG4gICAgICBpZiAobGF5ZXIub3B0aW9ucy5iYXNlTGF5ZXIgPT09IHRydWUpIHtcbiAgICAgICAgY29uc3QgY3VyckxheWVyID0gdGhpcy5tYXAuZ2V0TGF5ZXJCeUlkKGxheWVyLm9wdGlvbnMuaWQpO1xuICAgICAgICBpZiAoY3VyckxheWVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjdXJyTGF5ZXIpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBjdXJyTGF5ZXIgPSB0aGlzLm1hcC5nZXRMYXllckJ5SWQobGF5ZXIuaWQpO1xuICAgICAgICBpZiAoY3VyckxheWVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjdXJyTGF5ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU29ydCB0aGUgbGF5ZXJzIGJ5IHRpdGxlLiBhc2Mgb3IgZGVzYy5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHNvcnRDYXRhbG9nSXRlbXNCeVRpdGxlKGl0ZW1zOiBDYXRhbG9nSXRlbVtdLCBkaXJlY3Rpb24pIHtcbiAgICBjb25zdCByZXR1cm5JdGVtID0gaXRlbXMuc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3QgdGl0bGVBID0gYS50aXRsZS5ub3JtYWxpemUoJ05GRCcpLnJlcGxhY2UoL1tcXHUwMzAwLVxcdTAzNmZdL2csICcnKTtcbiAgICAgIGNvbnN0IHRpdGxlQiA9IGIudGl0bGUubm9ybWFsaXplKCdORkQnKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCAnJyk7XG5cbiAgICAgIGlmICh0aXRsZUEgPCB0aXRsZUIpIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgfVxuICAgICAgaWYgKHRpdGxlQSA+IHRpdGxlQikge1xuICAgICAgICByZXR1cm4gMTtcbiAgICAgIH1cbiAgICAgIHJldHVybiAwO1xuICAgIH0pO1xuICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7XG4gICAgICBjYXNlICdhc2MnOlxuICAgICAgICByZXR1cm4gcmV0dXJuSXRlbTtcbiAgICAgIGNhc2UgJ2Rlc2MnOlxuICAgICAgICByZXR1cm4gcmV0dXJuSXRlbS5yZXZlcnNlKCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhbGwgdGhlIGxheWVycyBvZiBhIGdyb3VwIHRvIG1hcFxuICAgKiBAcGFyYW0gZ3JvdXAgQ2F0YWxvZyBncm91cFxuICAgKi9cbiAgcHJpdmF0ZSBhZGRHcm91cFRvTWFwKFxuICAgIGdyb3VwOiBDYXRhbG9nSXRlbUdyb3VwLFxuICAgIGV2ZW50OiBBZGRlZENoYW5nZUdyb3VwRW1pdHRlclxuICApIHtcbiAgICBsZXQgbGF5ZXJzID0gZ3JvdXAuaXRlbXMuZmlsdGVyKChpdGVtOiBDYXRhbG9nSXRlbSkgPT4ge1xuICAgICAgY29uc3QgYWRkZWQgPSB0aGlzLnN0b3JlLnN0YXRlLmdldChpdGVtKS5hZGRlZCB8fCBmYWxzZTtcbiAgICAgIHJldHVybiB0aGlzLmlzTGF5ZXIoaXRlbSkgJiYgYWRkZWQgPT09IGZhbHNlO1xuICAgIH0pO1xuICAgIGlmIChncm91cC5zb3J0RGlyZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGxheWVycyA9IHRoaXMuc29ydENhdGFsb2dJdGVtc0J5VGl0bGUobGF5ZXJzLCBncm91cC5zb3J0RGlyZWN0aW9uKTtcbiAgICB9XG4gICAgdGhpcy5hZGRMYXllcnNUb01hcChsYXllcnMucmV2ZXJzZSgpIGFzIENhdGFsb2dJdGVtTGF5ZXJbXSwgZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhbGwgdGhlIGxheWVycyBvZiBhIGdyb3VwIGZyb20gbWFwXG4gICAqIEBwYXJhbSBncm91cCBDYXRhbG9nIGdyb3VwXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZUdyb3VwRnJvbU1hcChncm91cDogQ2F0YWxvZ0l0ZW1Hcm91cCkge1xuICAgIGNvbnN0IGxheWVycyA9IGdyb3VwLml0ZW1zLmZpbHRlcigoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IHtcbiAgICAgIGNvbnN0IGFkZGVkID0gdGhpcy5zdG9yZS5zdGF0ZS5nZXQoaXRlbSkuYWRkZWQgfHwgZmFsc2U7XG4gICAgICByZXR1cm4gdGhpcy5pc0xheWVyKGl0ZW0pICYmIGFkZGVkID09PSB0cnVlO1xuICAgIH0pO1xuICAgIHRoaXMucmVtb3ZlTGF5ZXJzRnJvbU1hcChsYXllcnMgYXMgQ2F0YWxvZ0l0ZW1MYXllcltdKTtcbiAgfVxufVxuIiwiPGlnby1saXN0IFtuYXZpZ2F0aW9uXT1cImZhbHNlXCIgW3NlbGVjdGlvbl09XCJmYWxzZVwiPlxuICA8bmctdGVtcGxhdGUgbmdGb3IgbGV0LWl0ZW0gW25nRm9yT2ZdPVwic3RvcmUudmlldy5hbGwkKCkgfCBhc3luY1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0dyb3VwKGl0ZW0pXCI+XG4gICAgICA8aWdvLWNhdGFsb2ctYnJvd3Nlci1ncm91cFxuICAgICAgICBbY2F0YWxvZ109XCJjYXRhbG9nXCJcbiAgICAgICAgW2dyb3VwXT1cIml0ZW1cIlxuICAgICAgICBbbWFwXT1cIm1hcFwiXG4gICAgICAgIFtzdGF0ZV09XCJzdG9yZS5zdGF0ZVwiXG4gICAgICAgIFtyZXNvbHV0aW9uXT1cInJlc29sdXRpb24kIHwgYXN5bmNcIlxuICAgICAgICBbY2F0YWxvZ0FsbG93TGVnZW5kXT1cImNhdGFsb2dBbGxvd0xlZ2VuZFwiXG4gICAgICAgIFtjb2xsYXBzZWRdPVwic3RvcmUuY291bnQgPT09IDEgPyBmYWxzZSA6IHRydWVcIlxuICAgICAgICBbdG9nZ2xlQ29sbGFwc2VkXT1cInRvZ2dsZUNvbGxhcHNlZEdyb3VwXCJcbiAgICAgICAgKGFkZGVkQ2hhbmdlKT1cIm9uR3JvdXBBZGRlZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGxheWVyQWRkZWRDaGFuZ2UpPVwib25MYXllckFkZGVkQ2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgICAgPC9pZ28tY2F0YWxvZy1icm93c2VyLWdyb3VwPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTGF5ZXIoaXRlbSlcIj5cbiAgICAgIDxpZ28tY2F0YWxvZy1icm93c2VyLWxheWVyXG4gICAgICAgIGlnb0xpc3RJdGVtXG4gICAgICAgIFtsYXllcl09XCIkYW55KGl0ZW0pXCJcbiAgICAgICAgW21hcF09XCJtYXBcIlxuICAgICAgICBbcmVzb2x1dGlvbl09XCJyZXNvbHV0aW9uJCB8IGFzeW5jXCJcbiAgICAgICAgW2NhdGFsb2dBbGxvd0xlZ2VuZF09XCJjYXRhbG9nQWxsb3dMZWdlbmRcIlxuICAgICAgICBbYWRkZWRdPVwic3RvcmUuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkXCJcbiAgICAgICAgKGFkZGVkQ2hhbmdlKT1cIm9uTGF5ZXJBZGRlZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgIDwvaWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvaWdvLWxpc3Q+XG4iXX0=
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9jYXRhbG9nL2NhdGFsb2ctYnJvd3Nlci9jYXRhbG9nLWJyb3dzZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULEtBQUssRUFHTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXJFLE9BQU8sRUFBbUIsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUMsT0FBTyxFQUdMLE9BQU8sRUFLUCxlQUFlLEVBQ2hCLE1BQU0sV0FBVyxDQUFDO0FBQ25CLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFFakY7O0dBRUc7QUFnQkgsTUFBTSxPQUFPLHVCQUF1QjtJQW1DeEI7SUFDQTtJQW5DVjs7T0FFRztJQUNLLE9BQU8sQ0FBa0M7SUFFakQsc0NBQXND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dUJBQXVCLG1PQ2pEcEMsNm9DQWdDQSw0Q0RRSSxhQUFhLDBGQUNiLEtBQUssbUhBQ0wsSUFBSSw2RkFDSiw0QkFBNEIsc09BQzVCLDRCQUE0Qiw4TEFDNUIsaUJBQWlCLHdSQUNqQixTQUFTOzs0RkFHQSx1QkFBdUI7a0JBZm5DLFNBQVM7K0JBQ0UscUJBQXFCLG1CQUVkLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGFBQWE7d0JBQ2IsS0FBSzt3QkFDTCxJQUFJO3dCQUNKLDRCQUE0Qjt3QkFDNUIsNEJBQTRCO3dCQUM1QixpQkFBaUI7d0JBQ2pCLFNBQVM7cUJBQ1Y7aUhBY1Esa0JBQWtCO3NCQUExQixLQUFLO2dCQUtHLE9BQU87c0JBQWYsS0FBSztnQkFLRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS0csR0FBRztzQkFBWCxLQUFLO2dCQUtHLG9CQUFvQjtzQkFBNUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzeW5jUGlwZSwgTmdGb3IsIE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW50aXR5U3RvcmUsIEVudGl0eVN0b3JlV2F0Y2hlciB9IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgTGlzdENvbXBvbmVudCwgTGlzdEl0ZW1EaXJlY3RpdmUgfSBmcm9tICdAaWdvMi9jb21tb24vbGlzdCc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgemlwIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IExheWVyU2VydmljZSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9sYXllci5zZXJ2aWNlJztcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi4vLi4vbGF5ZXIvc2hhcmVkL2xheWVycy9sYXllcic7XG5pbXBvcnQgeyBJZ29NYXAgfSBmcm9tICcuLi8uLi9tYXAvc2hhcmVkL21hcCc7XG5pbXBvcnQge1xuICBBZGRlZENoYW5nZUVtaXR0ZXIsXG4gIEFkZGVkQ2hhbmdlR3JvdXBFbWl0dGVyLFxuICBDYXRhbG9nLFxuICBDYXRhbG9nSXRlbSxcbiAgQ2F0YWxvZ0l0ZW1Hcm91cCxcbiAgQ2F0YWxvZ0l0ZW1MYXllcixcbiAgQ2F0YWxvZ0l0ZW1TdGF0ZSxcbiAgQ2F0YWxvZ0l0ZW1UeXBlXG59IGZyb20gJy4uL3NoYXJlZCc7XG5pbXBvcnQgeyBDYXRhbG9nQnJvd3Nlckdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9jYXRhbG9nLWJyb3dzZXItZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IENhdGFsb2dCcm93c2VyTGF5ZXJDb21wb25lbnQgfSBmcm9tICcuL2NhdGFsb2ctYnJvd3Nlci1sYXllci5jb21wb25lbnQnO1xuXG4vKipcbiAqIENvbXBvbmVudCB0byBicm93c2UgYSBjYXRhbG9nJ3MgZ3JvdXBzIGFuZCBsYXllcnMgYW5kIGRpc3BsYXkgdGhlbSBvbiBhIG1hcC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWNhdGFsb2ctYnJvd3NlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYXRhbG9nLWJyb3dzZXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIExpc3RDb21wb25lbnQsXG4gICAgTmdGb3IsXG4gICAgTmdJZixcbiAgICBDYXRhbG9nQnJvd3Nlckdyb3VwQ29tcG9uZW50LFxuICAgIENhdGFsb2dCcm93c2VyTGF5ZXJDb21wb25lbnQsXG4gICAgTGlzdEl0ZW1EaXJlY3RpdmUsXG4gICAgQXN5bmNQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBDYXRhbG9nIGl0ZW1zIHN0b3JlIHdhdGNoZXJcbiAgICovXG4gIHByaXZhdGUgd2F0Y2hlcjogRW50aXR5U3RvcmVXYXRjaGVyPENhdGFsb2dJdGVtPjtcblxuICAvLyBwcml2YXRlIHJlc29sdXRpb24kJDogU3Vic2NyaXB0aW9uO1xuXG4gIGdldCByZXNvbHV0aW9uJCgpOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMubWFwLnZpZXdDb250cm9sbGVyLnJlc29sdXRpb24kO1xuICB9XG5cbiAgQElucHV0KCkgY2F0YWxvZ0FsbG93TGVnZW5kID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIENhdGFsb2dcbiAgICovXG4gIEBJbnB1dCgpIGNhdGFsb2c6IENhdGFsb2c7XG5cbiAgLyoqXG4gICAqIFN0b3JlIGhvbGRpbmcgdGhlIGNhdGFsb2cncyBpdGVtc1xuICAgKi9cbiAgQElucHV0KCkgc3RvcmU6IEVudGl0eVN0b3JlPENhdGFsb2dJdGVtLCBDYXRhbG9nSXRlbVN0YXRlPjtcblxuICAvKipcbiAgICogTWFwIHRvIGFkZCB0aGUgY2F0YWxvZyBpdGVtcyB0b1xuICAgKi9cbiAgQElucHV0KCkgbWFwOiBJZ29NYXA7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSBncm91cCBjYW4gYmUgdG9nZ2xlZCB3aGVuIGl0J3MgY29sbGFwc2VkXG4gICAqL1xuICBASW5wdXQoKSB0b2dnbGVDb2xsYXBzZWRHcm91cCA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBsYXllclNlcnZpY2U6IExheWVyU2VydmljZSxcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHt9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc3QgY3VycmVudEl0ZW1zID0gdGhpcy5tYXAubGF5ZXJzLm1hcCgobGF5ZXI6IExheWVyKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpZDogbGF5ZXIub3B0aW9ucy5zb3VyY2UuaWQsXG4gICAgICAgIHRpdGxlOiBsYXllci50aXRsZSxcbiAgICAgICAgdHlwZTogQ2F0YWxvZ0l0ZW1UeXBlLkxheWVyXG4gICAgICB9O1xuICAgIH0pO1xuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlTWFueShjdXJyZW50SXRlbXMsIHsgYWRkZWQ6IHRydWUgfSwgdHJ1ZSk7XG4gICAgaWYgKHRoaXMuY2F0YWxvZyAmJiB0aGlzLmNhdGFsb2cuc29ydERpcmVjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnN0b3JlLnZpZXcuc29ydCh7XG4gICAgICAgIGRpcmVjdGlvbjogdGhpcy5jYXRhbG9nLnNvcnREaXJlY3Rpb24sXG4gICAgICAgIHZhbHVlQWNjZXNzb3I6IChpdGVtOiBDYXRhbG9nSXRlbSkgPT4gaXRlbS50aXRsZVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgY2F0YWxvZ1Nob3dMZWdlbmQgPSB0aGlzLmNhdGFsb2cgPyB0aGlzLmNhdGFsb2cuc2hvd0xlZ2VuZCA6IGZhbHNlO1xuICAgIHRoaXMuY2F0YWxvZ0FsbG93TGVnZW5kID0gY2F0YWxvZ1Nob3dMZWdlbmRcbiAgICAgID8gY2F0YWxvZ1Nob3dMZWdlbmRcbiAgICAgIDogdGhpcy5jYXRhbG9nQWxsb3dMZWdlbmQ7XG5cbiAgICB0aGlzLndhdGNoZXIgPSBuZXcgRW50aXR5U3RvcmVXYXRjaGVyKHRoaXMuc3RvcmUsIHRoaXMuY2RSZWYpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy53YXRjaGVyLmRlc3Ryb3koKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGlzR3JvdXAoaXRlbTogQ2F0YWxvZ0l0ZW0pOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXRlbS50eXBlID09PSBDYXRhbG9nSXRlbVR5cGUuR3JvdXA7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBpc0xheWVyKGl0ZW06IENhdGFsb2dJdGVtKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGl0ZW0udHlwZSA9PT0gQ2F0YWxvZ0l0ZW1UeXBlLkxheWVyO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZW4gYSBsYXllciBpcyBhZGRlZCBvciByZW1vdmVkLCBhZGQgb3IgcmVtb3ZlIGl0IGZyb20gdGhlIG1hcFxuICAgKiBAaW50ZXJuYWxcbiAgICogQHBhcmFtIGV2ZW50IExheWVyIGFkZGVkIGV2ZW50XG4gICAqL1xuICBvbkxheWVyQWRkZWRDaGFuZ2UoZXZlbnQ6IEFkZGVkQ2hhbmdlRW1pdHRlcikge1xuICAgIGNvbnN0IGxheWVyID0gZXZlbnQubGF5ZXI7XG4gICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGUobGF5ZXIsIHsgYWRkZWQ6IGV2ZW50LmFkZGVkIH0sIGZhbHNlKTtcbiAgICBldmVudC5hZGRlZFxuICAgICAgPyB0aGlzLmFkZExheWVyVG9NYXAobGF5ZXIsIGV2ZW50KVxuICAgICAgOiB0aGlzLnJlbW92ZUxheWVyRnJvbU1hcChsYXllcik7XG4gIH1cblxuICAvKipcbiAgICogV2hlbiBhIGZyb3VwIGlzIGFkZGVkIG9yIHJlbW92ZWQsIGFkZCBvciByZW1vdmUgaXQgZnJvbSB0aGUgbWFwXG4gICAqIEBpbnRlcm5hbFxuICAgKiBAcGFyYW0gZXZlbnQgR3JvdXAgYWRkZWQgZXZlbnRcbiAgICovXG4gIG9uR3JvdXBBZGRlZENoYW5nZShldmVudDogQWRkZWRDaGFuZ2VHcm91cEVtaXR0ZXIpIHtcbiAgICBjb25zdCBncm91cCA9IGV2ZW50Lmdyb3VwO1xuICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlKGdyb3VwLCB7IGFkZGVkOiBldmVudC5hZGRlZCB9LCBmYWxzZSk7XG4gICAgZXZlbnQuYWRkZWRcbiAgICAgID8gdGhpcy5hZGRHcm91cFRvTWFwKGdyb3VwLCBldmVudClcbiAgICAgIDogdGhpcy5yZW1vdmVHcm91cEZyb21NYXAoZ3JvdXApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBsYXllciB0byBtYXBcbiAgICogQHBhcmFtIGxheWVyIENhdGFsb2cgbGF5ZXJcbiAgICovXG4gIHByaXZhdGUgYWRkTGF5ZXJUb01hcChsYXllcjogQ2F0YWxvZ0l0ZW1MYXllciwgZXZlbnQ/OiBBZGRlZENoYW5nZUVtaXR0ZXIpIHtcbiAgICB0aGlzLmFkZExheWVyc1RvTWFwKFtsYXllcl0sIGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgbGF5ZXIgZnJvbSBtYXBcbiAgICogQHBhcmFtIGxheWVyIENhdGFsb2cgbGF5ZXJcbiAgICovXG4gIHByaXZhdGUgcmVtb3ZlTGF5ZXJGcm9tTWFwKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSB7XG4gICAgdGhpcy5yZW1vdmVMYXllcnNGcm9tTWFwKFtsYXllcl0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBtdWx0aXBsZSBsYXllcnMgdG8gbWFwXG4gICAqIEBwYXJhbSBsYXllcnMgQ2F0YWxvZyBsYXllcnNcbiAgICovXG4gIHByaXZhdGUgYWRkTGF5ZXJzVG9NYXAoXG4gICAgbGF5ZXJzOiBDYXRhbG9nSXRlbUxheWVyW10sXG4gICAgZXZlbnQ6IEFkZGVkQ2hhbmdlRW1pdHRlciB8IEFkZGVkQ2hhbmdlR3JvdXBFbWl0dGVyXG4gICkge1xuICAgIGNvbnN0IGxheWVycyQgPSBsYXllcnMubWFwKChsYXllcjogQ2F0YWxvZ0l0ZW1MYXllcikgPT4ge1xuICAgICAgaWYgKCFsYXllci5vcHRpb25zLnNvdXJjZU9wdGlvbnMub3B0aW9uc0Zyb21BcGkpIHtcbiAgICAgICAgbGF5ZXIub3B0aW9ucy5zb3VyY2VPcHRpb25zLm9wdGlvbnNGcm9tQXBpID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmNhdGFsb2cucHJvZmlscz8ubGVuZ3RoKSB7XG4gICAgICAgIGxheWVyLm9wdGlvbnMuc2VjdXJpdHkgPSB7IHByb2ZpbHM6IHRoaXMuY2F0YWxvZy5wcm9maWxzIH07XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5sYXllclNlcnZpY2UuY3JlYXRlQXN5bmNMYXllcihsYXllci5vcHRpb25zKTtcbiAgICB9KTtcbiAgICB6aXAoLi4ubGF5ZXJzJCkuc3Vic2NyaWJlKChsYXllcnM6IExheWVyW10pID0+IHtcbiAgICAgIGlmIChldmVudC5ldmVudC50eXBlID09PSAnY2xpY2snICYmIGV2ZW50LmFkZGVkKSB7XG4gICAgICAgIHRoaXMubWFwLmxheWVyc0FkZGVkQnlDbGljayQubmV4dChsYXllcnMpO1xuICAgICAgfVxuICAgICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGVNYW55KGxheWVycywgeyBhZGRlZDogdHJ1ZSB9KTtcbiAgICAgIHRoaXMubWFwLmFkZExheWVycyhsYXllcnMpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBtdWx0aXBsZSBsYXllcnMgZnJvbSBtYXBcbiAgICogQHBhcmFtIGxheWVycyBDYXRhbG9nIGxheWVyc1xuICAgKi9cbiAgcHJpdmF0ZSByZW1vdmVMYXllcnNGcm9tTWFwKGxheWVyczogQ2F0YWxvZ0l0ZW1MYXllcltdKSB7XG4gICAgbGF5ZXJzLmZvckVhY2goKGxheWVyOiBDYXRhbG9nSXRlbUxheWVyKSA9PiB7XG4gICAgICB0aGlzLnN0b3JlLnN0YXRlLnVwZGF0ZShsYXllciwgeyBhZGRlZDogZmFsc2UgfSk7XG4gICAgICBpZiAobGF5ZXIub3B0aW9ucy5iYXNlTGF5ZXIgPT09IHRydWUpIHtcbiAgICAgICAgY29uc3QgY3VyckxheWVyID0gdGhpcy5tYXAuZ2V0TGF5ZXJCeUlkKGxheWVyLm9wdGlvbnMuaWQpO1xuICAgICAgICBpZiAoY3VyckxheWVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjdXJyTGF5ZXIpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBjdXJyTGF5ZXIgPSB0aGlzLm1hcC5nZXRMYXllckJ5SWQobGF5ZXIuaWQpO1xuICAgICAgICBpZiAoY3VyckxheWVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmVMYXllcihjdXJyTGF5ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU29ydCB0aGUgbGF5ZXJzIGJ5IHRpdGxlLiBhc2Mgb3IgZGVzYy5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHNvcnRDYXRhbG9nSXRlbXNCeVRpdGxlKGl0ZW1zOiBDYXRhbG9nSXRlbVtdLCBkaXJlY3Rpb24pIHtcbiAgICBjb25zdCByZXR1cm5JdGVtID0gaXRlbXMuc29ydCgoYSwgYikgPT4ge1xuICAgICAgY29uc3QgdGl0bGVBID0gYS50aXRsZS5ub3JtYWxpemUoJ05GRCcpLnJlcGxhY2UoL1tcXHUwMzAwLVxcdTAzNmZdL2csICcnKTtcbiAgICAgIGNvbnN0IHRpdGxlQiA9IGIudGl0bGUubm9ybWFsaXplKCdORkQnKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCAnJyk7XG5cbiAgICAgIGlmICh0aXRsZUEgPCB0aXRsZUIpIHtcbiAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgfVxuICAgICAgaWYgKHRpdGxlQSA+IHRpdGxlQikge1xuICAgICAgICByZXR1cm4gMTtcbiAgICAgIH1cbiAgICAgIHJldHVybiAwO1xuICAgIH0pO1xuICAgIHN3aXRjaCAoZGlyZWN0aW9uKSB7XG4gICAgICBjYXNlICdhc2MnOlxuICAgICAgICByZXR1cm4gcmV0dXJuSXRlbTtcbiAgICAgIGNhc2UgJ2Rlc2MnOlxuICAgICAgICByZXR1cm4gcmV0dXJuSXRlbS5yZXZlcnNlKCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhbGwgdGhlIGxheWVycyBvZiBhIGdyb3VwIHRvIG1hcFxuICAgKiBAcGFyYW0gZ3JvdXAgQ2F0YWxvZyBncm91cFxuICAgKi9cbiAgcHJpdmF0ZSBhZGRHcm91cFRvTWFwKFxuICAgIGdyb3VwOiBDYXRhbG9nSXRlbUdyb3VwLFxuICAgIGV2ZW50OiBBZGRlZENoYW5nZUdyb3VwRW1pdHRlclxuICApIHtcbiAgICBsZXQgbGF5ZXJzID0gZ3JvdXAuaXRlbXMuZmlsdGVyKChpdGVtOiBDYXRhbG9nSXRlbSkgPT4ge1xuICAgICAgY29uc3QgYWRkZWQgPSB0aGlzLnN0b3JlLnN0YXRlLmdldChpdGVtKS5hZGRlZCB8fCBmYWxzZTtcbiAgICAgIHJldHVybiB0aGlzLmlzTGF5ZXIoaXRlbSkgJiYgYWRkZWQgPT09IGZhbHNlO1xuICAgIH0pO1xuICAgIGlmIChncm91cC5zb3J0RGlyZWN0aW9uICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGxheWVycyA9IHRoaXMuc29ydENhdGFsb2dJdGVtc0J5VGl0bGUobGF5ZXJzLCBncm91cC5zb3J0RGlyZWN0aW9uKTtcbiAgICB9XG4gICAgdGhpcy5hZGRMYXllcnNUb01hcChsYXllcnMucmV2ZXJzZSgpIGFzIENhdGFsb2dJdGVtTGF5ZXJbXSwgZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhbGwgdGhlIGxheWVycyBvZiBhIGdyb3VwIGZyb20gbWFwXG4gICAqIEBwYXJhbSBncm91cCBDYXRhbG9nIGdyb3VwXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZUdyb3VwRnJvbU1hcChncm91cDogQ2F0YWxvZ0l0ZW1Hcm91cCkge1xuICAgIGNvbnN0IGxheWVycyA9IGdyb3VwLml0ZW1zLmZpbHRlcigoaXRlbTogQ2F0YWxvZ0l0ZW0pID0+IHtcbiAgICAgIGNvbnN0IGFkZGVkID0gdGhpcy5zdG9yZS5zdGF0ZS5nZXQoaXRlbSkuYWRkZWQgfHwgZmFsc2U7XG4gICAgICByZXR1cm4gdGhpcy5pc0xheWVyKGl0ZW0pICYmIGFkZGVkID09PSB0cnVlO1xuICAgIH0pO1xuICAgIHRoaXMucmVtb3ZlTGF5ZXJzRnJvbU1hcChsYXllcnMgYXMgQ2F0YWxvZ0l0ZW1MYXllcltdKTtcbiAgfVxufVxuIiwiPGlnby1saXN0IFtuYXZpZ2F0aW9uXT1cImZhbHNlXCIgW3NlbGVjdGlvbl09XCJmYWxzZVwiPlxuICA8bmctdGVtcGxhdGUgbmdGb3IgbGV0LWl0ZW0gW25nRm9yT2ZdPVwic3RvcmUudmlldy5hbGwkKCkgfCBhc3luY1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc0dyb3VwKGl0ZW0pXCI+XG4gICAgICA8aWdvLWNhdGFsb2ctYnJvd3Nlci1ncm91cFxuICAgICAgICBbY2F0YWxvZ109XCJjYXRhbG9nXCJcbiAgICAgICAgW2dyb3VwXT1cIml0ZW1cIlxuICAgICAgICBbbWFwXT1cIm1hcFwiXG4gICAgICAgIFtzdGF0ZV09XCJzdG9yZS5zdGF0ZVwiXG4gICAgICAgIFtyZXNvbHV0aW9uXT1cInJlc29sdXRpb24kIHwgYXN5bmNcIlxuICAgICAgICBbY2F0YWxvZ0FsbG93TGVnZW5kXT1cImNhdGFsb2dBbGxvd0xlZ2VuZFwiXG4gICAgICAgIFtjb2xsYXBzZWRdPVwic3RvcmUuY291bnQgPT09IDEgPyBmYWxzZSA6IHRydWVcIlxuICAgICAgICBbdG9nZ2xlQ29sbGFwc2VkXT1cInRvZ2dsZUNvbGxhcHNlZEdyb3VwXCJcbiAgICAgICAgKGFkZGVkQ2hhbmdlKT1cIm9uR3JvdXBBZGRlZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGxheWVyQWRkZWRDaGFuZ2UpPVwib25MYXllckFkZGVkQ2hhbmdlKCRldmVudClcIlxuICAgICAgPlxuICAgICAgPC9pZ28tY2F0YWxvZy1icm93c2VyLWdyb3VwPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzTGF5ZXIoaXRlbSlcIj5cbiAgICAgIDxpZ28tY2F0YWxvZy1icm93c2VyLWxheWVyXG4gICAgICAgIGlnb0xpc3RJdGVtXG4gICAgICAgIFtsYXllcl09XCIkYW55KGl0ZW0pXCJcbiAgICAgICAgW21hcF09XCJtYXBcIlxuICAgICAgICBbcmVzb2x1dGlvbl09XCJyZXNvbHV0aW9uJCB8IGFzeW5jXCJcbiAgICAgICAgW2NhdGFsb2dBbGxvd0xlZ2VuZF09XCJjYXRhbG9nQWxsb3dMZWdlbmRcIlxuICAgICAgICBbYWRkZWRdPVwic3RvcmUuc3RhdGUuZ2V0KGl0ZW0pLmFkZGVkXCJcbiAgICAgICAgKGFkZGVkQ2hhbmdlKT1cIm9uTGF5ZXJBZGRlZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgIDwvaWdvLWNhdGFsb2ctYnJvd3Nlci1sYXllcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvaWdvLWxpc3Q+XG4iXX0=
@@ -5,15 +5,15 @@ import * as i0 from "@angular/core";
5
5
  * @deprecated import the CatalogBrowserComponent directly
6
6
  */
7
7
  export class IgoCatalogBrowserModule {
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoCatalogBrowserModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: IgoCatalogBrowserModule, imports: [CatalogBrowserComponent], exports: [CatalogBrowserComponent] });
10
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoCatalogBrowserModule, imports: [CatalogBrowserComponent] });
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: IgoCatalogBrowserModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.11", ngImport: i0, type: IgoCatalogBrowserModule, imports: [CatalogBrowserComponent], exports: [CatalogBrowserComponent] });
10
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: IgoCatalogBrowserModule, imports: [CatalogBrowserComponent] });
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: IgoCatalogBrowserModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.11", ngImport: i0, type: IgoCatalogBrowserModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CatalogBrowserComponent],
16
16
  exports: [CatalogBrowserComponent]
17
17
  }]
18
18
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFdEU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO3VHQUF2Qix1QkFBdUI7d0dBQXZCLHVCQUF1QixZQUh4Qix1QkFBdUIsYUFDdkIsdUJBQXVCO3dHQUV0Qix1QkFBdUIsWUFIeEIsdUJBQXVCOzsyRkFHdEIsdUJBQXVCO2tCQUpuQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUNsQyxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDYXRhbG9nQnJvd3NlckNvbXBvbmVudCB9IGZyb20gJy4vY2F0YWxvZy1icm93c2VyLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBDYXRhbG9nQnJvd3NlckNvbXBvbmVudCBkaXJlY3RseVxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb0NhdGFsb2dCcm93c2VyTW9kdWxlIHt9XG4iXX0=
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0YWxvZy1icm93c2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2NhdGFsb2cvY2F0YWxvZy1icm93c2VyL2NhdGFsb2ctYnJvd3Nlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFdEU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sdUJBQXVCO3dHQUF2Qix1QkFBdUI7eUdBQXZCLHVCQUF1QixZQUh4Qix1QkFBdUIsYUFDdkIsdUJBQXVCO3lHQUV0Qix1QkFBdUIsWUFIeEIsdUJBQXVCOzs0RkFHdEIsdUJBQXVCO2tCQUpuQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLHVCQUF1QixDQUFDO29CQUNsQyxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztpQkFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDYXRhbG9nQnJvd3NlckNvbXBvbmVudCB9IGZyb20gJy4vY2F0YWxvZy1icm93c2VyLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgaW1wb3J0IHRoZSBDYXRhbG9nQnJvd3NlckNvbXBvbmVudCBkaXJlY3RseVxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbQ2F0YWxvZ0Jyb3dzZXJDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb0NhdGFsb2dCcm93c2VyTW9kdWxlIHt9XG4iXX0=