@eui/ecl 18.2.5 → 18.2.6

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 (181) hide show
  1. package/docs/components/EclAccordionComponent.html +2 -2
  2. package/docs/components/EclAccordionItemComponent.html +2 -2
  3. package/docs/components/EclAppComponent.html +2 -2
  4. package/docs/components/EclBannerComponent.html +2 -2
  5. package/docs/components/EclBlockquoteComponent.html +2 -2
  6. package/docs/components/EclBreadcrumbComponent.html +66 -6
  7. package/docs/components/EclBreadcrumbSegmentComponent.html +3 -3
  8. package/docs/components/EclButtonComponent.html +2 -2
  9. package/docs/components/EclCardBodyComponent.html +2 -2
  10. package/docs/components/EclCardComponent.html +2 -2
  11. package/docs/components/EclCarouselComponent.html +2 -2
  12. package/docs/components/EclCarouselItemComponent.html +2 -2
  13. package/docs/components/EclCategoryFilterComponent.html +2 -2
  14. package/docs/components/EclCategoryFilterItemComponent.html +2 -2
  15. package/docs/components/EclCategoryFilterListComponent.html +2 -2
  16. package/docs/components/EclCheckboxHelpComponent.html +2 -2
  17. package/docs/components/EclCheckboxLabelComponent.html +2 -2
  18. package/docs/components/EclContentBlockComponent.html +2 -2
  19. package/docs/components/EclContentItemComponent.html +2 -2
  20. package/docs/components/EclDateBlockComponent.html +2 -2
  21. package/docs/components/EclDescriptionListDefinitionComponent.html +2 -2
  22. package/docs/components/EclExpandableComponent.html +2 -2
  23. package/docs/components/EclFactFiguresComponent.html +2 -2
  24. package/docs/components/EclFactFiguresDescriptionComponent.html +2 -2
  25. package/docs/components/EclFactFiguresItemComponent.html +2 -2
  26. package/docs/components/EclFactFiguresTitleComponent.html +2 -2
  27. package/docs/components/EclFactFiguresValueComponent.html +2 -2
  28. package/docs/components/EclFactFiguresViewAllComponent.html +2 -2
  29. package/docs/components/EclFeaturedComponent.html +2 -2
  30. package/docs/components/EclFeaturedItemComponent.html +2 -2
  31. package/docs/components/EclFeaturedItemDescriptionComponent.html +2 -2
  32. package/docs/components/EclFeaturedItemFooterComponent.html +2 -2
  33. package/docs/components/EclFileComponent.html +2 -2
  34. package/docs/components/EclFileItemComponent.html +2 -2
  35. package/docs/components/EclFileItemsComponent.html +2 -2
  36. package/docs/components/EclFileTaxonomyComponent.html +2 -2
  37. package/docs/components/EclFormGroupComponent.html +2 -2
  38. package/docs/components/EclFormLabelComponent.html +2 -2
  39. package/docs/components/EclGalleryComponent.html +2 -2
  40. package/docs/components/EclGalleryFooterComponent.html +2 -2
  41. package/docs/components/EclGalleryItemComponent.html +2 -2
  42. package/docs/components/EclIconComponent.html +2 -2
  43. package/docs/components/EclInpageNavigationComponent.html +72 -17
  44. package/docs/components/EclInpageNavigationItemComponent.html +46 -3
  45. package/docs/components/EclListIllustrationComponent.html +2 -2
  46. package/docs/components/EclListIllustrationItemComponent.html +2 -2
  47. package/docs/components/EclLoadingIndicatorComponent.html +2 -2
  48. package/docs/components/EclMediaContainerComponent.html +2 -2
  49. package/docs/components/EclMegaMenuComponent.html +2 -2
  50. package/docs/components/EclMegaMenuFeaturedComponent.html +2 -2
  51. package/docs/components/EclMegaMenuInfoComponent.html +2 -2
  52. package/docs/components/EclMegaMenuItemComponent.html +2 -2
  53. package/docs/components/EclMegaMenuSubitemComponent.html +2 -2
  54. package/docs/components/EclMenuComponent.html +2 -2
  55. package/docs/components/EclMenuItemComponent.html +2 -2
  56. package/docs/components/EclMenuMegaComponent.html +2 -2
  57. package/docs/components/EclMenuMegaItemComponent.html +2 -2
  58. package/docs/components/EclModalBodyComponent.html +2 -2
  59. package/docs/components/EclModalComponent.html +2 -2
  60. package/docs/components/EclModalFooterComponent.html +2 -2
  61. package/docs/components/EclModalHeaderComponent.html +3 -3
  62. package/docs/components/EclMultiselectComponent.html +2 -2
  63. package/docs/components/EclMultiselectDropdownComponent.html +2 -2
  64. package/docs/components/EclMultiselectInputComponent.html +2 -2
  65. package/docs/components/EclMultiselectOptgroupComponent.html +2 -2
  66. package/docs/components/EclMultiselectOptionComponent.html +2 -2
  67. package/docs/components/EclNavigationListComponent.html +2 -2
  68. package/docs/components/EclNavigationListImageComponent.html +2 -2
  69. package/docs/components/EclNavigationListItemComponent.html +2 -2
  70. package/docs/components/EclNewsTickerComponent.html +2 -2
  71. package/docs/components/EclNewsTickerItemComponent.html +2 -2
  72. package/docs/components/EclNotificationComponent.html +2 -2
  73. package/docs/components/EclPageHeaderComponent.html +2 -2
  74. package/docs/components/EclPaginationComponent.html +74 -3
  75. package/docs/components/EclPaginationItemComponent.html +72 -3
  76. package/docs/components/EclPopoverComponent.html +2 -2
  77. package/docs/components/EclRadioHelpComponent.html +2 -2
  78. package/docs/components/EclRadioLabelComponent.html +2 -2
  79. package/docs/components/EclRangeBubbleComponent.html +2 -2
  80. package/docs/components/EclRangeValueComponent.html +2 -2
  81. package/docs/components/EclRatingFieldComponent.html +2 -2
  82. package/docs/components/EclSearchFormComponent.html +2 -2
  83. package/docs/components/EclSelectContainerComponent.html +2 -2
  84. package/docs/components/EclSiteFooterComponent.html +2 -2
  85. package/docs/components/EclSiteFooterFixedContentECComponent.html +2 -2
  86. package/docs/components/EclSiteFooterFixedContentEUComponent.html +2 -2
  87. package/docs/components/EclSiteHeaderActionComponent.html +2 -2
  88. package/docs/components/EclSiteHeaderBannerTopComponent.html +2 -2
  89. package/docs/components/EclSiteHeaderComponent.html +2 -2
  90. package/docs/components/EclSiteHeaderEnvironmentComponent.html +2 -2
  91. package/docs/components/EclSiteHeaderLanguageComponent.html +3 -3
  92. package/docs/components/EclSiteHeaderLanguagePopoverComponent.html +2 -2
  93. package/docs/components/EclSiteHeaderLoginComponent.html +2 -2
  94. package/docs/components/EclSiteHeaderNotificationComponent.html +2 -2
  95. package/docs/components/EclSiteHeaderSearchComponent.html +2 -2
  96. package/docs/components/EclSocialMediaFollowComponent.html +2 -2
  97. package/docs/components/EclSocialMediaFollowItemComponent.html +2 -2
  98. package/docs/components/EclSocialMediaShareComponent.html +2 -2
  99. package/docs/components/EclSocialMediaShareItemComponent.html +2 -2
  100. package/docs/components/EclSplashPageComponent.html +2 -2
  101. package/docs/components/EclSplashPageLanguageCategoryComponent.html +2 -2
  102. package/docs/components/EclSplashPageLanguageContainerComponent.html +2 -2
  103. package/docs/components/EclSplashPageLanguageLinkComponent.html +2 -2
  104. package/docs/components/EclStickyContainerComponent.html +2 -2
  105. package/docs/components/EclTabComponent.html +2 -2
  106. package/docs/components/EclTabLabelComponent.html +2 -2
  107. package/docs/components/EclTabMoreComponent.html +2 -2
  108. package/docs/components/EclTableSortButtonComponent.html +2 -2
  109. package/docs/components/EclTabsComponent.html +2 -2
  110. package/docs/components/EclTagComponent.html +2 -2
  111. package/docs/components/EclTimelineComponent.html +2 -2
  112. package/docs/components/EclTimelineItemComponent.html +2 -2
  113. package/docs/components/EclTimelineItemTogglerComponent.html +2 -2
  114. package/docs/dependencies.html +2 -2
  115. package/docs/directives/EclBreadcrumbContainerDirective.html +565 -0
  116. package/docs/directives/EclInpageNavigationListDirective.html +609 -0
  117. package/docs/directives/EclPaginationListDirective.html +496 -0
  118. package/docs/index.html +2 -2
  119. package/docs/injectables/EclInpageNavigationService.html +360 -0
  120. package/docs/js/menu-wc.js +63 -18
  121. package/docs/js/menu-wc_es5.js +2 -2
  122. package/docs/js/search/search_index.js +2 -2
  123. package/docs/miscellaneous/variables.html +1 -1
  124. package/docs/modules/EclInpageNavigationComponentModule.html +15 -0
  125. package/docs/modules/EclPaginationComponentModule.html +6 -0
  126. package/esm2022/lib/components/ecl-breadcrumb/ecl-breadcrumb-container.directive.mjs +22 -0
  127. package/esm2022/lib/components/ecl-breadcrumb/ecl-breadcrumb-segment.component.mjs +7 -3
  128. package/esm2022/lib/components/ecl-breadcrumb/ecl-breadcrumb.component.mjs +21 -8
  129. package/esm2022/lib/components/ecl-breadcrumb/ecl-breadcrumb.module.mjs +4 -3
  130. package/esm2022/lib/components/ecl-breadcrumb/index.mjs +2 -1
  131. package/esm2022/lib/components/ecl-inpage-navigation/ecl-inpage-navigation-item.component.mjs +11 -7
  132. package/esm2022/lib/components/ecl-inpage-navigation/ecl-inpage-navigation-list.directive.mjs +38 -0
  133. package/esm2022/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.component.mjs +22 -12
  134. package/esm2022/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.module.mjs +8 -5
  135. package/esm2022/lib/components/ecl-inpage-navigation/index.mjs +3 -1
  136. package/esm2022/lib/components/ecl-inpage-navigation/services/ecl-inpage-navigation.service.mjs +18 -0
  137. package/esm2022/lib/components/ecl-modal/ecl-modal-header.component.mjs +4 -3
  138. package/esm2022/lib/components/ecl-modal/ecl-modal.module.mjs +5 -4
  139. package/esm2022/lib/components/ecl-pagination/ecl-pagination-item.component.mjs +20 -15
  140. package/esm2022/lib/components/ecl-pagination/ecl-pagination-list.directive.mjs +21 -0
  141. package/esm2022/lib/components/ecl-pagination/ecl-pagination.component.mjs +13 -5
  142. package/esm2022/lib/components/ecl-pagination/ecl-pagination.module.mjs +5 -4
  143. package/esm2022/lib/components/ecl-pagination/index.mjs +2 -1
  144. package/esm2022/lib/components/ecl-site-header/language/ecl-site-header-language.component.mjs +3 -3
  145. package/fesm2022/eui-ecl.mjs +175 -52
  146. package/fesm2022/eui-ecl.mjs.map +1 -1
  147. package/lib/components/ecl-breadcrumb/ecl-breadcrumb-container.directive.d.ts +11 -0
  148. package/lib/components/ecl-breadcrumb/ecl-breadcrumb-container.directive.d.ts.map +1 -0
  149. package/lib/components/ecl-breadcrumb/ecl-breadcrumb-segment.component.d.ts +1 -1
  150. package/lib/components/ecl-breadcrumb/ecl-breadcrumb-segment.component.d.ts.map +1 -1
  151. package/lib/components/ecl-breadcrumb/ecl-breadcrumb.component.d.ts +7 -1
  152. package/lib/components/ecl-breadcrumb/ecl-breadcrumb.component.d.ts.map +1 -1
  153. package/lib/components/ecl-breadcrumb/ecl-breadcrumb.module.d.ts +8 -7
  154. package/lib/components/ecl-breadcrumb/ecl-breadcrumb.module.d.ts.map +1 -1
  155. package/lib/components/ecl-breadcrumb/index.d.ts +1 -0
  156. package/lib/components/ecl-breadcrumb/index.d.ts.map +1 -1
  157. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation-item.component.d.ts +3 -2
  158. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation-item.component.d.ts.map +1 -1
  159. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation-list.directive.d.ts +16 -0
  160. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation-list.directive.d.ts.map +1 -0
  161. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.component.d.ts +7 -3
  162. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.component.d.ts.map +1 -1
  163. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.module.d.ts +7 -6
  164. package/lib/components/ecl-inpage-navigation/ecl-inpage-navigation.module.d.ts.map +1 -1
  165. package/lib/components/ecl-inpage-navigation/index.d.ts +2 -0
  166. package/lib/components/ecl-inpage-navigation/index.d.ts.map +1 -1
  167. package/lib/components/ecl-inpage-navigation/services/ecl-inpage-navigation.service.d.ts +11 -0
  168. package/lib/components/ecl-inpage-navigation/services/ecl-inpage-navigation.service.d.ts.map +1 -0
  169. package/lib/components/ecl-modal/ecl-modal.module.d.ts +4 -3
  170. package/lib/components/ecl-modal/ecl-modal.module.d.ts.map +1 -1
  171. package/lib/components/ecl-pagination/ecl-pagination-item.component.d.ts +4 -2
  172. package/lib/components/ecl-pagination/ecl-pagination-item.component.d.ts.map +1 -1
  173. package/lib/components/ecl-pagination/ecl-pagination-list.directive.d.ts +8 -0
  174. package/lib/components/ecl-pagination/ecl-pagination-list.directive.d.ts.map +1 -0
  175. package/lib/components/ecl-pagination/ecl-pagination.component.d.ts +4 -1
  176. package/lib/components/ecl-pagination/ecl-pagination.component.d.ts.map +1 -1
  177. package/lib/components/ecl-pagination/ecl-pagination.module.d.ts +7 -6
  178. package/lib/components/ecl-pagination/ecl-pagination.module.d.ts.map +1 -1
  179. package/lib/components/ecl-pagination/index.d.ts +1 -0
  180. package/lib/components/ecl-pagination/index.d.ts.map +1 -1
  181. package/package.json +1 -1
@@ -1,17 +1,20 @@
1
- import { Component, ContentChildren, EventEmitter, Input, Output, ViewChild, afterNextRender, } from '@angular/core';
1
+ import { Component, ContentChild, ContentChildren, EventEmitter, Input, Output, ViewChild, afterNextRender, } from '@angular/core';
2
2
  import { Breakpoints } from '@angular/cdk/layout';
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { EclBaseEvent } from '../../model';
6
6
  import { ECLBaseDirective } from '../ecl-base.directive';
7
7
  import { EclInpageNavigationItemComponent } from './ecl-inpage-navigation-item.component';
8
+ import { EclInpageNavigationListDirective } from './ecl-inpage-navigation-list.directive';
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "../../services";
10
11
  import * as i2 from "@angular/cdk/scrolling";
11
12
  import * as i3 from "@angular/cdk/layout";
12
- import * as i4 from "../ecl-sticky-container/ecl-sticky-container.component";
13
- import * as i5 from "../ecl-icon/ecl-icon.component";
14
- import * as i6 from "@ngx-translate/core";
13
+ import * as i4 from "./services/ecl-inpage-navigation.service";
14
+ import * as i5 from "@angular/common";
15
+ import * as i6 from "../ecl-sticky-container/ecl-sticky-container.component";
16
+ import * as i7 from "../ecl-icon/ecl-icon.component";
17
+ import * as i8 from "@ngx-translate/core";
15
18
  export class EclInpageNavigationSectionEnterEvent extends EclBaseEvent {
16
19
  constructor(sectionId) {
17
20
  super();
@@ -19,9 +22,8 @@ export class EclInpageNavigationSectionEnterEvent extends EclBaseEvent {
19
22
  }
20
23
  }
21
24
  export class EclInpageNavigationComponent extends ECLBaseDirective {
22
- constructor(el, eclRtlService, eclThemeService, differs, scrollDispatcher, zone, cdkBreakpointObserver, viewportRuler) {
25
+ constructor(eclRtlService, eclThemeService, differs, scrollDispatcher, zone, cdkBreakpointObserver, viewportRuler, eclInpageNavigationService) {
23
26
  super();
24
- this.el = el;
25
27
  this.eclRtlService = eclRtlService;
26
28
  this.eclThemeService = eclThemeService;
27
29
  this.differs = differs;
@@ -29,6 +31,7 @@ export class EclInpageNavigationComponent extends ECLBaseDirective {
29
31
  this.zone = zone;
30
32
  this.cdkBreakpointObserver = cdkBreakpointObserver;
31
33
  this.viewportRuler = viewportRuler;
34
+ this.eclInpageNavigationService = eclInpageNavigationService;
32
35
  this.sectionEnter = new EventEmitter();
33
36
  this.isButtonExpanded = false;
34
37
  this.isRtl = false;
@@ -56,6 +59,9 @@ export class EclInpageNavigationComponent extends ECLBaseDirective {
56
59
  ngOnInit() {
57
60
  this.handleRtlChangeState();
58
61
  }
62
+ get hasNavigationList() {
63
+ return !!this.eclNavigationList;
64
+ }
59
65
  get currentNavigationLinkItem() {
60
66
  return this.eclNavigationLinkItems.find((item) => item.sectionElement === this.currentSectionElement);
61
67
  }
@@ -85,6 +91,7 @@ export class EclInpageNavigationComponent extends ECLBaseDirective {
85
91
  }
86
92
  onExpandButtonClick() {
87
93
  this.isButtonExpanded = !this.isButtonExpanded;
94
+ this.eclInpageNavigationService.eclInpageNavigationToggle(this.isButtonExpanded);
88
95
  }
89
96
  onExpandButtonKeydown(evt) {
90
97
  switch (evt.key) {
@@ -231,13 +238,13 @@ export class EclInpageNavigationComponent extends ECLBaseDirective {
231
238
  this.isMobileBreakpoint = result.matches;
232
239
  });
233
240
  }
234
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponent, deps: [{ token: i0.ElementRef }, { token: i1.EclRtlService }, { token: i1.EclThemeService }, { token: i0.IterableDiffers }, { token: i2.ScrollDispatcher }, { token: i0.NgZone }, { token: i3.BreakpointObserver }, { token: i2.ViewportRuler }], target: i0.ɵɵFactoryTarget.Component }); }
235
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EclInpageNavigationComponent, selector: "ecl-inpage-navigation", inputs: { eclTitle: "eclTitle", marginTop: "marginTop", marginBottom: "marginBottom" }, outputs: { sectionEnter: "sectionEnter" }, queries: [{ propertyName: "eclNavigationLinkItems", predicate: EclInpageNavigationItemComponent }], viewQueries: [{ propertyName: "togglerButton", first: true, predicate: ["togglerButton"], descendants: true }, { propertyName: "toggleWrapper", first: true, predicate: ["toggleWrapper"], descendants: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true }, { propertyName: "navTittle", first: true, predicate: ["navTittle"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div #toggleWrapper class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n <ul\n #listContainer\n id=\"ecl-inpage-navigation-default-list\"\n class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\"\n [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-content></ng-content>\n </ul>\n </div>\n </nav>\n</ecl-sticky-container>\n", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"], dependencies: [{ kind: "component", type: i4.EclStickyContainerComponent, selector: "ecl-sticky-container", inputs: ["isEnabled", "marginTop", "marginBottom"] }, { kind: "component", type: i5.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] }); }
241
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponent, deps: [{ token: i1.EclRtlService }, { token: i1.EclThemeService }, { token: i0.IterableDiffers }, { token: i2.ScrollDispatcher }, { token: i0.NgZone }, { token: i3.BreakpointObserver }, { token: i2.ViewportRuler }, { token: i4.EclInpageNavigationService }], target: i0.ɵɵFactoryTarget.Component }); }
242
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EclInpageNavigationComponent, selector: "ecl-inpage-navigation", inputs: { eclTitle: "eclTitle", marginTop: "marginTop", marginBottom: "marginBottom" }, outputs: { sectionEnter: "sectionEnter" }, queries: [{ propertyName: "eclNavigationList", first: true, predicate: EclInpageNavigationListDirective, descendants: true }, { propertyName: "eclNavigationLinkItems", predicate: EclInpageNavigationItemComponent, descendants: true }], viewQueries: [{ propertyName: "togglerButton", first: true, predicate: ["togglerButton"], descendants: true }, { propertyName: "toggleWrapper", first: true, predicate: ["toggleWrapper"], descendants: true }, { propertyName: "listContainer", first: true, predicate: ["listContainer"], descendants: true }, { propertyName: "navTittle", first: true, predicate: ["navTittle"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div #toggleWrapper class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n @if (!hasNavigationList) {\n <ul #listContainer id=\"ecl-inpage-navigation-default-list\" class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\" [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-container>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n </ul>\n } @else {\n <ng-container>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n }\n </div>\n </nav>\n</ecl-sticky-container>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"], dependencies: [{ kind: "directive", type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i6.EclStickyContainerComponent, selector: "ecl-sticky-container", inputs: ["isEnabled", "marginTop", "marginBottom"] }, { kind: "component", type: i7.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] }); }
236
243
  }
237
244
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponent, decorators: [{
238
245
  type: Component,
239
- args: [{ selector: 'ecl-inpage-navigation', template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div #toggleWrapper class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n <ul\n #listContainer\n id=\"ecl-inpage-navigation-default-list\"\n class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\"\n [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-content></ng-content>\n </ul>\n </div>\n </nav>\n</ecl-sticky-container>\n", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"] }]
240
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.EclRtlService }, { type: i1.EclThemeService }, { type: i0.IterableDiffers }, { type: i2.ScrollDispatcher }, { type: i0.NgZone }, { type: i3.BreakpointObserver }, { type: i2.ViewportRuler }], propDecorators: { eclTitle: [{
246
+ args: [{ selector: 'ecl-inpage-navigation', template: "<ecl-sticky-container [marginTop]=\"marginTop\" [marginBottom]=\"marginBottom\">\n <nav\n aria-labelledby=\"ecl-inpage-navigation-default\"\n class=\"ecl-inpage-navigation\"\n [class.ecl-inpage-navigation--visible]=\"hasActiveSection\"\n [class.ecl-inpage-navigation--rtl]=\"isRtl\">\n <div #navTittle id=\"ecl-inpage-navigation-default\" class=\"ecl-inpage-navigation__title\">\n {{ eclTitle || 'ecl.inpage-navigation.PAGE-CONTENTS' | translate }}\n </div>\n <div class=\"ecl-inpage-navigation__body\">\n <div #toggleWrapper class=\"ecl-inpage-navigation__trigger-wrapper\">\n <button\n #togglerButton\n id=\"ecl-inpage-navigation-default-trigger\"\n type=\"button\"\n class=\"ecl-inpage-navigation__trigger\"\n aria-controls=\"ecl-inpage-navigation-list\"\n [attr.aria-expanded]=\"isButtonExpanded\"\n (click)=\"onExpandButtonClick()\"\n (keydown)=\"onExpandButtonKeydown($event)\">\n <span class=\"ecl-inpage-navigation__trigger-current\">\n {{ currentNavigationLinkItem?.label }}\n </span>\n <ecl-icon icon=\"corner-arrow\" [size]=\"sizeIcon\" transform=\"rotate-180\"\n class=\"ecl-inpage-navigation__trigger-icon\" title=\"Show full page table of contents\"> </ecl-icon>\n </button>\n </div>\n @if (!hasNavigationList) {\n <ul #listContainer id=\"ecl-inpage-navigation-default-list\" class=\"ecl-inpage-navigation__list\"\n [class.ecl-inpage-navigation__list--visible]=\"isButtonExpanded\" [style.max-height.px]=\"listMaxHeight\"\n [attr.aria-expanded]=\"isButtonExpanded\">\n <ng-container>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n </ul>\n } @else {\n <ng-container>\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n }\n </div>\n </nav>\n</ecl-sticky-container>\n\n<ng-template #content>\n <ng-content></ng-content>\n</ng-template>", styles: ["@media (min-width: 996px){.ecl-inpage-navigation__list{display:block!important}}\n"] }]
247
+ }], ctorParameters: () => [{ type: i1.EclRtlService }, { type: i1.EclThemeService }, { type: i0.IterableDiffers }, { type: i2.ScrollDispatcher }, { type: i0.NgZone }, { type: i3.BreakpointObserver }, { type: i2.ViewportRuler }, { type: i4.EclInpageNavigationService }], propDecorators: { eclTitle: [{
241
248
  type: Input
242
249
  }], marginTop: [{
243
250
  type: Input
@@ -259,6 +266,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
259
266
  type: Output
260
267
  }], eclNavigationLinkItems: [{
261
268
  type: ContentChildren,
262
- args: [EclInpageNavigationItemComponent]
269
+ args: [EclInpageNavigationItemComponent, { descendants: true }]
270
+ }], eclNavigationList: [{
271
+ type: ContentChild,
272
+ args: [EclInpageNavigationListDirective]
263
273
  }] } });
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtaW5wYWdlLW5hdmlnYXRpb24vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtaW5wYWdlLW5hdmlnYXRpb24vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsZUFBZSxFQUdmLFlBQVksRUFDWixLQUFLLEVBS0wsTUFBTSxFQUVOLFNBQVMsRUFDVCxlQUFlLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBc0IsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7Ozs7Ozs7QUFFMUYsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLFlBQVk7SUFDbEUsWUFBbUIsU0FBaUI7UUFDaEMsS0FBSyxFQUFFLENBQUM7UUFETyxjQUFTLEdBQVQsU0FBUyxDQUFRO0lBRXBDLENBQUM7Q0FDSjtBQWVELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxnQkFBZ0I7SUF5QjlELFlBQ1ksRUFBYyxFQUNkLGFBQTRCLEVBQzdCLGVBQWdDLEVBQy9CLE9BQXdCLEVBQ3hCLGdCQUFrQyxFQUNsQyxJQUFZLEVBQ1oscUJBQXlDLEVB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QUFDO2FBQ3JFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQzsrR0E5UFEsNEJBQTRCO21HQUE1Qiw0QkFBNEIsdU9BVXBCLGdDQUFnQywrYkN4RHJELGtnRUF1Q0E7OzRGRE9hLDRCQUE0QjtrQkFieEMsU0FBUzsrQkFDSSx1QkFBdUI7d1JBYXhCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNzQixhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ0UsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUNFLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZTtnQkFDRixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBQ1osWUFBWTtzQkFBckIsTUFBTTtnQkFFNEMsc0JBQXNCO3NCQUF4RSxlQUFlO3VCQUFDLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERvQ2hlY2ssXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgSXRlcmFibGVEaWZmZXIsIEl0ZXJhYmxlRGlmZmVycyxcbiAgICBOZ1pvbmUsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBhZnRlck5leHRSZW5kZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSwgU2Nyb2xsRGlzcGF0Y2hlciwgVmlld3BvcnRSdWxlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyLCBCcmVha3BvaW50cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWNsQmFzZUV2ZW50IH0gZnJvbSAnLi4vLi4vbW9kZWwnO1xuaW1wb3J0IHsgRWNsVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgRUNMQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uL2VjbC1iYXNlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFY2xSdGxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBFY2xJbnBhZ2VOYXZpZ2F0aW9uU2VjdGlvbkVudGVyRXZlbnQgZXh0ZW5kcyBFY2xCYXNlRXZlbnQge1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBzZWN0aW9uSWQ6IHN0cmluZykge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlY2wtaW5wYWdlLW5hdmlnYXRpb24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlczogW1xuICAgICAgICBgXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTk2cHgpIHtcbiAgICAgICAgICAgICAgICAuZWNsLWlucGFnZS1uYXZpZ2F0aW9uX19saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIGAsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRWNsSW5wYWdlTmF2aWdhdGlvbkNvbXBvbmVudCBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgRG9DaGVjayB7XG4gICAgQElucHV0KCkgZWNsVGl0bGU6IHN0cmluZztcbiAgICBASW5wdXQoKSBtYXJnaW5Ub3A6IG51bWJlcjtcbiAgICBASW5wdXQoKSBtYXJnaW5Cb3R0b206IG51bWJlcjtcbiAgICBAVmlld0NoaWxkKCd0b2dnbGVyQnV0dG9uJykgdG9nZ2xlckJ1dHRvbjogRWxlbWVudFJlZjxIVE1MQnV0dG9uRWxlbWVudD47XG4gICAgQFZpZXdDaGlsZCgndG9nZ2xlV3JhcHBlcicpIHRvZ2dsZVdyYXBwZXI6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoJ2xpc3RDb250YWluZXInKSBsaXN0Q29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxVTGlzdEVsZW1lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoJ25hdlRpdHRsZScpIG5hdlRpdHRsZTogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gICAgQE91dHB1dCgpIHNlY3Rpb25FbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsSW5wYWdlTmF2aWdhdGlvblNlY3Rpb25FbnRlckV2ZW50PigpO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCkgZWNsTmF2aWdhdGlvbkxpbmtJdGVtczogUXVlcnlMaXN0PEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50PjtcblxuICAgIGlzQnV0dG9uRXhwYW5kZWQgPSBmYWxzZTtcbiAgICBjdXJyZW50U2VjdGlvbkVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuICAgIHB1YmxpYyBpc1J0bCA9IGZhbHNlO1xuICAgIHB1YmxpYyBsaXN0TWF4SGVpZ2h0OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgcHJpdmF0ZSBkaWZmZXI6IEl0ZXJhYmxlRGlmZmVyPEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50PjtcbiAgICBwcml2YXRlIGlzTW9iaWxlQnJlYWtwb2ludCA9IGZhbHNlO1xuICAgIHByaXZhdGUgTUlOX0RJU1RBTkNFX1RPUCA9IDEwO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgSUNPTl9TSVpFX0VDX1RIRU1FID0gJ3hzJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IElDT05fU0laRV9FVV9USEVNRSA9ICdzJztcbiAgICBwcml2YXRlIHJlYWRvbmx5IFRBQkxFVF9CUkVBS1BPSU5UID0gOTk2O1xuICAgIHByaXZhdGUgaW50ZXJzZWN0aW9uT2JzZXJ2ZXI6IEludGVyc2VjdGlvbk9ic2VydmVyO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgZWNsUnRsU2VydmljZTogRWNsUnRsU2VydmljZSxcbiAgICAgICAgcHVibGljIGVjbFRoZW1lU2VydmljZTogRWNsVGhlbWVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpZmZlcnM6IEl0ZXJhYmxlRGlmZmVycyxcbiAgICAgICAgcHJpdmF0ZSBzY3JvbGxEaXNwYXRjaGVyOiBTY3JvbGxEaXNwYXRjaGVyLFxuICAgICAgICBwcml2YXRlIHpvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSBjZGtCcmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgICAgICAgcHJpdmF0ZSB2aWV3cG9ydFJ1bGVyOiBWaWV3cG9ydFJ1bGVyLFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLmRpZmZlciA9IHRoaXMuZGlmZmVycy5maW5kKFtdKS5jcmVhdGUoKTtcbiAgICAgICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc3Vic2NyaWJlVG9DREtTY3JvbGxFdmVudCgpO1xuICAgICAgICAgICAgdGhpcy5vYnNlcnZlQnJlYWtwb2ludENoYW5nZXMoKTtcblxuICAgICAgICAgICAgdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigoKT0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExpc3RIZWlnaHQoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlci5vYnNlcnZlKHRoaXMudG9nZ2xlckJ1dHRvbi5uYXRpdmVFbGVtZW50KTtcblxuICAgICAgICAgICAgdGhpcy52aWV3cG9ydFJ1bGVyLmNoYW5nZSgzMDApLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMaXN0SGVpZ2h0KCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5oYW5kbGVSdGxDaGFuZ2VTdGF0ZSgpO1xuICAgIH1cblxuICAgIGdldCBjdXJyZW50TmF2aWdhdGlvbkxpbmtJdGVtKCk6IEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLnNlY3Rpb25FbGVtZW50ID09PSB0aGlzLmN1cnJlbnRTZWN0aW9uRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZ2V0IHNpemVJY29uKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmVjbFRoZW1lU2VydmljZS5pc0VDVGhlbWUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuSUNPTl9TSVpFX0VDX1RIRU1FO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuSUNPTl9TSVpFX0VVX1RIRU1FO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGhhc0FjdGl2ZVNlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY3VycmVudFNlY3Rpb25FbGVtZW50O1xuICAgIH1cblxuICAgIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGlmZiA9IHRoaXMuZGlmZmVyLmRpZmYodGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zKTtcbiAgICAgICAgaWYgKGRpZmYpIHtcbiAgICAgICAgICAgIGRpZmYuZm9yRWFjaEl0ZW0oKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3RJdGVtRXZlbnRzKGl0ZW0uaXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlci51bm9ic2VydmUodGhpcy50b2dnbGVyQnV0dG9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIG9uRXhwYW5kQnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNCdXR0b25FeHBhbmRlZCA9ICF0aGlzLmlzQnV0dG9uRXhwYW5kZWQ7XG4gICAgfVxuXG4gICAgb25FeHBhbmRCdXR0b25LZXlkb3duKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICgoZXZ0IGFzIEtleWJvYXJkRXZlbnQpLmtleSkge1xuICAgICAgICAgICAgY2FzZSAnVGFiJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uRXhwYW5kQnV0dG9uVGFiKGV2dCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdBcnJvd0Rvd24nOlxuICAgICAgICAgICAgICAgIHRoaXMub25FeHBhbmRCdXR0b25BcnJvd0Rvd24oZXZ0KTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZVJ0bENoYW5nZVN0YXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVjbFJ0bFNlcnZpY2UuY3VycmVudFJ0bFN0YXRlJC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChydGxTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc1J0bCA9IHJ0bFN0YXRlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldExpc3RIZWlnaHQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5saXN0Q29udGFpbmVyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgdmlld3BvcnRIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0V2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICAgICAgbGV0IHRvcFBvc2l0aW9uID0gMDtcbiAgICAgICAgaWYgKHZpZXdwb3J0V2lkdGggPCB0aGlzLlRBQkxFVF9CUkVBS1BPSU5UKSB7XG4gICAgICAgICAgICBjb25zdCB0b2dnbGVXcmFwcGVyID0gdGhpcy50b2dnbGVXcmFwcGVyLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICBpZiAodG9nZ2xlV3JhcHBlcikge1xuICAgICAgICAgICAgICAgIHRvcFBvc2l0aW9uID0gdG9nZ2xlV3JhcHBlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5ib3R0b20gK1xuICAgICAgICAgICAgICAgICAgcGFyc2VGbG9hdCh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSh0b2dnbGVXcmFwcGVyKS5tYXJnaW5Cb3R0b20pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZWNsVGl0bGUpIHtcbiAgICAgICAgICAgIHRvcFBvc2l0aW9uID0gdGhpcy5uYXZUaXR0bGUubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5ib3R0b207XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0b3BQb3NpdGlvbiA9IHRoaXMubGlzdENvbnRhaW5lci5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGF2YWlsYWJsZVNwYWNlID0gdmlld3BvcnRIZWlnaHQgLSB0b3BQb3NpdGlvbjtcbiAgICAgICAgaWYgKGF2YWlsYWJsZVNwYWNlID4gMCkge1xuICAgICAgICAgICAgdGhpcy5saXN0TWF4SGVpZ2h0ID0gYXZhaWxhYmxlU3BhY2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uRXhwYW5kQnV0dG9uQXJyb3dEb3duKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIHRoaXMuaXNCdXR0b25FeHBhbmRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5nZXQoMCkub25Gb2N1cygpO1xuICAgIH1cbiAgICBcbiAgICBwcml2YXRlIG9uRXhwYW5kQnV0dG9uVGFiKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKChldnQgYXMgS2V5Ym9hcmRFdmVudCkuc2hpZnRLZXkpIHtcbiAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLmdldCh0aGlzLmVjbE5hdmlnYXRpb25MaW5rSXRlbXMubGVuZ3RoIC0gMSkub25Gb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb25uZWN0SXRlbUV2ZW50cyhpdGVtOiBFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBpdGVtLml0ZW1BcnJvd0Rvd24ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uSXRlbUFycm93RG93bihpdGVtKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXRlbS5pdGVtQXJyb3dVcC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25JdGVtQXJyb3dVcChpdGVtKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXRlbS5pdGVtVGFiLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGV2dCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkl0ZW1UYWIoaXRlbSwgZXZ0KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaXRlbS5pdGVtQ2xpY2sucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZXZ0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdE5hdmlnYXRpb25JdGVtKGl0ZW0uc2VjdGlvbkVsZW1lbnQpO1xuXG4gICAgICAgICAgICBpZiAoaXRlbS5zZWN0aW9uRWxlbWVudCkge1xuICAgICAgICAgICAgICAgIGl0ZW0uc2VjdGlvbkVsZW1lbnQuc2Nyb2xsSW50b1ZpZXcoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5pc0J1dHRvbkV4cGFuZGVkID0gZmFsc2U7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgb25JdGVtQXJyb3dEb3duKGl0ZW06IEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmVjbE5hdmlnYXRpb25MaW5rSXRlbXMudG9BcnJheSgpLmluZGV4T2YoaXRlbSk7XG4gICAgICAgICAgICBpZiAoaW5kZXggIT09IHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLmdldChpbmRleCArIDEpLm9uRm9jdXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25JdGVtQXJyb3dVcChpdGVtOiBFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLnRvQXJyYXkoKS5pbmRleE9mKGl0ZW0pO1xuICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLmdldChpbmRleCAtIDEpLm9uRm9jdXMoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudG9nZ2xlckJ1dHRvbikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmlzQnV0dG9uRXhwYW5kZWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50b2dnbGVyQnV0dG9uLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uSXRlbVRhYihpdGVtOiBFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCwgZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIGlmICghKGV2dCBhcyBLZXlib2FyZEV2ZW50KS5zaGlmdEtleSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLnRvQXJyYXkoKS5pbmRleE9mKGl0ZW0pO1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAgICAgICAgICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlckJ1dHRvbi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdWJzY3JpYmVUb0NES1Njcm9sbEV2ZW50KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNjcm9sbERpc3BhdGNoZXIuc2Nyb2xsZWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChzY3JvbGxhYmxlOiBDZGtTY3JvbGxhYmxlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzZWN0aW9uRWxlbWVudElkcyA9IHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0uc2VjdGlvbklkKTtcbiAgICAgICAgICAgICAgICBjb25zdCBzZWN0aW9uRWxlbWVudHM6IEFycmF5PEhUTUxFbGVtZW50PiA9IHNlY3Rpb25FbGVtZW50SWRzLm1hcCgoaWQpID0+IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke2lkfWApKTtcbiAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZU5hdmlnYXRpb25MaW5rc0hpZ2hsaWdodChzZWN0aW9uRWxlbWVudHMpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TGlzdEhlaWdodCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0TmF2aWdhdGlvbkl0ZW0oaXRlbUVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5mb3JFYWNoKChpdCkgPT4ge1xuICAgICAgICAgICAgaXQuaXNBY3RpdmUgPSBpdC5zZWN0aW9uRWxlbWVudCA9PT0gaXRlbUVsZW1lbnQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlTmF2aWdhdGlvbkxpbmtzSGlnaGxpZ2h0KHNlY3Rpb25FbGVtZW50czogQXJyYXk8SFRNTEVsZW1lbnQ+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRTZWN0aW9uRWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmZpbmRBY3RpdmVTZWN0aW9uRWxlbWVudChzZWN0aW9uRWxlbWVudHMpO1xuICAgICAgICBpZiAoY3VycmVudFNlY3Rpb25FbGVtZW50ICE9PSB0aGlzLmN1cnJlbnRTZWN0aW9uRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2VjdGlvbkVsZW1lbnQgPSBjdXJyZW50U2VjdGlvbkVsZW1lbnQ7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdE5hdmlnYXRpb25JdGVtKGN1cnJlbnRTZWN0aW9uRWxlbWVudCk7XG4gICAgICAgICAgICBjb25zdCBzZWN0aW9uSWQgPSB0aGlzLmN1cnJlbnROYXZpZ2F0aW9uTGlua0l0ZW0gPyB0aGlzLmN1cnJlbnROYXZpZ2F0aW9uTGlua0l0ZW0uc2VjdGlvbklkIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgdGhpcy5zZWN0aW9uRW50ZXIubmV4dChuZXcgRWNsSW5wYWdlTmF2aWdhdGlvblNlY3Rpb25FbnRlckV2ZW50KHNlY3Rpb25JZCkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaW5kQWN0aXZlU2VjdGlvbkVsZW1lbnQoc2VjdGlvbkVsZW1lbnRzOiBBcnJheTxIVE1MRWxlbWVudD4pOiBIVE1MRWxlbWVudCB7XG4gICAgICAgIGxldCBjdXJyZW50U2VjdGlvbjogSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgc2VjdGlvbkVsZW1lbnRzLmZvckVhY2goKHNlY3Rpb25FbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoc2VjdGlvbkVsZW1lbnQgJiYgc2VjdGlvbkVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wIDw9IHRoaXMuTUlOX0RJU1RBTkNFX1RPUCkge1xuICAgICAgICAgICAgICAgIGN1cnJlbnRTZWN0aW9uID0gc2VjdGlvbkVsZW1lbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gY3VycmVudFNlY3Rpb247XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvYnNlcnZlQnJlYWtwb2ludENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2RrQnJlYWtwb2ludE9ic2VydmVyXG4gICAgICAgICAgICAub2JzZXJ2ZShbQnJlYWtwb2ludHMuSGFuZHNldCwgQnJlYWtwb2ludHMuVGFibGV0LCBCcmVha3BvaW50cy5TbWFsbF0pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzTW9iaWxlQnJlYWtwb2ludCA9IHJlc3VsdC5tYXRjaGVzO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGVjbC1zdGlja3ktY29udGFpbmVyIFttYXJnaW5Ub3BdPVwibWFyZ2luVG9wXCIgW21hcmdpbkJvdHRvbV09XCJtYXJnaW5Cb3R0b21cIj5cbiAgICA8bmF2XG4gICAgICAgIGFyaWEtbGFiZWxsZWRieT1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbi1kZWZhdWx0XCJcbiAgICAgICAgY2xhc3M9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb25cIlxuICAgICAgICBbY2xhc3MuZWNsLWlucGFnZS1uYXZpZ2F0aW9uLS12aXNpYmxlXT1cImhhc0FjdGl2ZVNlY3Rpb25cIlxuICAgICAgICBbY2xhc3MuZWNsLWlucGFnZS1uYXZpZ2F0aW9uLS1ydGxdPVwiaXNSdGxcIj5cbiAgICAgICAgPGRpdiAjbmF2VGl0dGxlIGlkPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLWRlZmF1bHRcIiBjbGFzcz1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbl9fdGl0bGVcIj5cbiAgICAgICAgICAgIHt7IGVjbFRpdGxlIHx8ICdlY2wuaW5wYWdlLW5hdmlnYXRpb24uUEFHRS1DT05URU5UUycgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb25fX2JvZHlcIj5cbiAgICAgICAgICAgIDxkaXYgI3RvZ2dsZVdyYXBwZXIgY2xhc3M9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb25fX3RyaWdnZXItd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgI3RvZ2dsZXJCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgaWQ9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb24tZGVmYXVsdC10cmlnZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uX190cmlnZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1jb250cm9scz1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbi1saXN0XCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc0J1dHRvbkV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRXhwYW5kQnV0dG9uQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAgICAgIChrZXlkb3duKT1cIm9uRXhwYW5kQnV0dG9uS2V5ZG93bigkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uX190cmlnZ2VyLWN1cnJlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGN1cnJlbnROYXZpZ2F0aW9uTGlua0l0ZW0/LmxhYmVsIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBbc2l6ZV09XCJzaXplSWNvblwiIHRyYW5zZm9ybT1cInJvdGF0ZS0xODBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb25fX3RyaWdnZXItaWNvblwiIHRpdGxlPVwiU2hvdyBmdWxsIHBhZ2UgdGFibGUgb2YgY29udGVudHNcIj4gPC9lY2wtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDx1bFxuICAgICAgICAgICAgICAgICNsaXN0Q29udGFpbmVyXG4gICAgICAgICAgICAgICAgaWQ9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb24tZGVmYXVsdC1saXN0XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbl9fbGlzdFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmVjbC1pbnBhZ2UtbmF2aWdhdGlvbl9fbGlzdC0tdmlzaWJsZV09XCJpc0J1dHRvbkV4cGFuZGVkXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUubWF4LWhlaWdodC5weF09XCJsaXN0TWF4SGVpZ2h0XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzQnV0dG9uRXhwYW5kZWRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25hdj5cbjwvZWNsLXN0aWNreS1jb250YWluZXI+XG4iXX0=
274
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtaW5wYWdlLW5hdmlnYXRpb24vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtaW5wYWdlLW5hdmlnYXRpb24vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFHZixZQUFZLEVBQ1osS0FBSyxFQUtMLE1BQU0sRUFFTixTQUFTLEVBQ1QsZUFBZSxHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQXNCLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFekQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUYsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7QUFHMUYsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLFlBQVk7SUFDbEUsWUFBbUIsU0FBaUI7UUFDaEMsS0FBSyxFQUFFLENBQUM7UUFETyxjQUFTLEdBQVQsU0FBUyxDQUFRO0lBRXBDLENBQUM7Q0FDSjtBQWVELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxnQkFBZ0I7SUEwQjlELFlBQ1ksYUFBNEIsRUFDN0IsZUFBZ0MsRUFD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QkFDeEYsY0FBYyxHQUFHLGNBQWMsQ0FBQztZQUNwQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLGNBQWMsQ0FBQztJQUMxQixDQUFDO0lBRU8sd0JBQXdCO1FBQzVCLElBQUksQ0FBQyxxQkFBcUI7YUFDckIsT0FBTyxDQUFDLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNyRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNsQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM3QyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7K0dBcFFRLDRCQUE0QjttR0FBNUIsNEJBQTRCLCtPQVd2QixnQ0FBZ0MsNEVBRDdCLGdDQUFnQyxrZEMzRHJELDQwRUE4Q2M7OzRGREdELDRCQUE0QjtrQkFieEMsU0FBUzsrQkFDSSx1QkFBdUI7d1NBYXhCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNzQixhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWU7Z0JBQ0UsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlO2dCQUNFLGFBQWE7c0JBQXhDLFNBQVM7dUJBQUMsZUFBZTtnQkFDRixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBQ1osWUFBWTtzQkFBckIsTUFBTTtnQkFFbUUsc0JBQXNCO3NCQUEvRixlQUFlO3VCQUFDLGdDQUFnQyxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRTtnQkFDeEIsaUJBQWlCO3NCQUFoRSxZQUFZO3VCQUFDLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEb0NoZWNrLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIEl0ZXJhYmxlRGlmZmVyLCBJdGVyYWJsZURpZmZlcnMsXG4gICAgTmdab25lLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgYWZ0ZXJOZXh0UmVuZGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENka1Njcm9sbGFibGUsIFNjcm9sbERpc3BhdGNoZXIsIFZpZXdwb3J0UnVsZXIgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IEJyZWFrcG9pbnRPYnNlcnZlciwgQnJlYWtwb2ludHMgfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IEVjbFRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsUnRsU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsSW5wYWdlTmF2aWdhdGlvbkxpc3REaXJlY3RpdmUgfSBmcm9tICcuL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi1saXN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBFY2xJbnBhZ2VOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvZWNsLWlucGFnZS1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuXG5leHBvcnQgY2xhc3MgRWNsSW5wYWdlTmF2aWdhdGlvblNlY3Rpb25FbnRlckV2ZW50IGV4dGVuZHMgRWNsQmFzZUV2ZW50IHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VjdGlvbklkOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLWlucGFnZS1uYXZpZ2F0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZXM6IFtcbiAgICAgICAgYFxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5NnB4KSB7XG4gICAgICAgICAgICAgICAgLmVjbC1pbnBhZ2UtbmF2aWdhdGlvbl9fbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBgLFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIEVjbElucGFnZU5hdmlnYXRpb25Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIERvQ2hlY2sge1xuICAgIEBJbnB1dCgpIGVjbFRpdGxlOiBzdHJpbmc7XG4gICAgQElucHV0KCkgbWFyZ2luVG9wOiBudW1iZXI7XG4gICAgQElucHV0KCkgbWFyZ2luQm90dG9tOiBudW1iZXI7XG4gICAgQFZpZXdDaGlsZCgndG9nZ2xlckJ1dHRvbicpIHRvZ2dsZXJCdXR0b246IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoJ3RvZ2dsZVdyYXBwZXInKSB0b2dnbGVXcmFwcGVyOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcbiAgICBAVmlld0NoaWxkKCdsaXN0Q29udGFpbmVyJykgbGlzdENvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MVUxpc3RFbGVtZW50PjtcbiAgICBAVmlld0NoaWxkKCduYXZUaXR0bGUnKSBuYXZUaXR0bGU6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICAgIEBPdXRwdXQoKSBzZWN0aW9uRW50ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbElucGFnZU5hdmlnYXRpb25TZWN0aW9uRW50ZXJFdmVudD4oKTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgZWNsTmF2aWdhdGlvbkxpbmtJdGVtczogUXVlcnlMaXN0PEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50PjtcbiAgICBAQ29udGVudENoaWxkKEVjbElucGFnZU5hdmlnYXRpb25MaXN0RGlyZWN0aXZlKSBlY2xOYXZpZ2F0aW9uTGlzdDogRWNsSW5wYWdlTmF2aWdhdGlvbkxpc3REaXJlY3RpdmU7XG5cbiAgICBpc0J1dHRvbkV4cGFuZGVkID0gZmFsc2U7XG4gICAgY3VycmVudFNlY3Rpb25FbGVtZW50OiBIVE1MRWxlbWVudDtcbiAgICBwdWJsaWMgaXNSdGwgPSBmYWxzZTtcbiAgICBwdWJsaWMgbGlzdE1heEhlaWdodDogbnVtYmVyO1xuICAgIHByaXZhdGUgZGVzdHJveSQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgIHByaXZhdGUgZGlmZmVyOiBJdGVyYWJsZURpZmZlcjxFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudD47XG4gICAgcHJpdmF0ZSBpc01vYmlsZUJyZWFrcG9pbnQgPSBmYWxzZTtcbiAgICBwcml2YXRlIE1JTl9ESVNUQU5DRV9UT1AgPSAxMDtcbiAgICBwcml2YXRlIHJlYWRvbmx5IElDT05fU0laRV9FQ19USEVNRSA9ICd4cyc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBJQ09OX1NJWkVfRVVfVEhFTUUgPSAncyc7XG4gICAgcHJpdmF0ZSByZWFkb25seSBUQUJMRVRfQlJFQUtQT0lOVCA9IDk5NjtcbiAgICBwcml2YXRlIGludGVyc2VjdGlvbk9ic2VydmVyOiBJbnRlcnNlY3Rpb25PYnNlcnZlcjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGVjbFJ0bFNlcnZpY2U6IEVjbFJ0bFNlcnZpY2UsXG4gICAgICAgIHB1YmxpYyBlY2xUaGVtZVNlcnZpY2U6IEVjbFRoZW1lU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWZmZXJzOiBJdGVyYWJsZURpZmZlcnMsXG4gICAgICAgIHByaXZhdGUgc2Nyb2xsRGlzcGF0Y2hlcjogU2Nyb2xsRGlzcGF0Y2hlcixcbiAgICAgICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmUsXG4gICAgICAgIHByaXZhdGUgY2RrQnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgICAgIHByaXZhdGUgdmlld3BvcnRSdWxlcjogVmlld3BvcnRSdWxlcixcbiAgICAgICAgcHJpdmF0ZSBlY2xJbnBhZ2VOYXZpZ2F0aW9uU2VydmljZTogRWNsSW5wYWdlTmF2aWdhdGlvblNlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuZGlmZmVyID0gdGhpcy5kaWZmZXJzLmZpbmQoW10pLmNyZWF0ZSgpO1xuICAgICAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zdWJzY3JpYmVUb0NES1Njcm9sbEV2ZW50KCk7XG4gICAgICAgICAgICB0aGlzLm9ic2VydmVCcmVha3BvaW50Q2hhbmdlcygpO1xuXG4gICAgICAgICAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKCgpPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TGlzdEhlaWdodCgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmludGVyc2VjdGlvbk9ic2VydmVyLm9ic2VydmUodGhpcy50b2dnbGVyQnV0dG9uLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgICAgICB0aGlzLnZpZXdwb3J0UnVsZXIuY2hhbmdlKDMwMCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuem9uZS5ydW4oKCk9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNldExpc3RIZWlnaHQoKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmhhbmRsZVJ0bENoYW5nZVN0YXRlKCk7XG4gICAgfVxuXG4gICAgZ2V0IGhhc05hdmlnYXRpb25MaXN0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmVjbE5hdmlnYXRpb25MaXN0O1xuICAgIH1cblxuICAgIGdldCBjdXJyZW50TmF2aWdhdGlvbkxpbmtJdGVtKCk6IEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5maW5kKChpdGVtKSA9PiBpdGVtLnNlY3Rpb25FbGVtZW50ID09PSB0aGlzLmN1cnJlbnRTZWN0aW9uRWxlbWVudCk7XG4gICAgfVxuXG4gICAgZ2V0IHNpemVJY29uKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmVjbFRoZW1lU2VydmljZS5pc0VDVGhlbWUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuSUNPTl9TSVpFX0VDX1RIRU1FO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuSUNPTl9TSVpFX0VVX1RIRU1FO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGhhc0FjdGl2ZVNlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY3VycmVudFNlY3Rpb25FbGVtZW50O1xuICAgIH1cblxuICAgIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGlmZiA9IHRoaXMuZGlmZmVyLmRpZmYodGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zKTtcbiAgICAgICAgaWYgKGRpZmYpIHtcbiAgICAgICAgICAgIGRpZmYuZm9yRWFjaEl0ZW0oKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3RJdGVtRXZlbnRzKGl0ZW0uaXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5pbnRlcnNlY3Rpb25PYnNlcnZlci51bm9ic2VydmUodGhpcy50b2dnbGVyQnV0dG9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIG9uRXhwYW5kQnV0dG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNCdXR0b25FeHBhbmRlZCA9ICF0aGlzLmlzQnV0dG9uRXhwYW5kZWQ7XG4gICAgICAgIHRoaXMuZWNsSW5wYWdlTmF2aWdhdGlvblNlcnZpY2UuZWNsSW5wYWdlTmF2aWdhdGlvblRvZ2dsZSh0aGlzLmlzQnV0dG9uRXhwYW5kZWQpO1xuICAgIH1cblxuICAgIG9uRXhwYW5kQnV0dG9uS2V5ZG93bihldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHN3aXRjaCAoKGV2dCBhcyBLZXlib2FyZEV2ZW50KS5rZXkpIHtcbiAgICAgICAgICAgIGNhc2UgJ1RhYic6XG4gICAgICAgICAgICAgICAgdGhpcy5vbkV4cGFuZEJ1dHRvblRhYihldnQpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgICAgICAgICAgICB0aGlzLm9uRXhwYW5kQnV0dG9uQXJyb3dEb3duKGV2dCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVSdGxDaGFuZ2VTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lY2xSdGxTZXJ2aWNlLmN1cnJlbnRSdGxTdGF0ZSQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocnRsU3RhdGUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNSdGwgPSBydGxTdGF0ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRMaXN0SGVpZ2h0KCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMubGlzdENvbnRhaW5lcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHZpZXdwb3J0SGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zdCB2aWV3cG9ydFdpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XG4gICAgICAgIGxldCB0b3BQb3NpdGlvbiA9IDA7XG4gICAgICAgIGlmICh2aWV3cG9ydFdpZHRoIDwgdGhpcy5UQUJMRVRfQlJFQUtQT0lOVCkge1xuICAgICAgICAgICAgY29uc3QgdG9nZ2xlV3JhcHBlciA9IHRoaXMudG9nZ2xlV3JhcHBlci5uYXRpdmVFbGVtZW50O1xuICAgICAgICAgICAgaWYgKHRvZ2dsZVdyYXBwZXIpIHtcbiAgICAgICAgICAgICAgICB0b3BQb3NpdGlvbiA9IHRvZ2dsZVdyYXBwZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tICtcbiAgICAgICAgICAgICAgICAgIHBhcnNlRmxvYXQod2luZG93LmdldENvbXB1dGVkU3R5bGUodG9nZ2xlV3JhcHBlcikubWFyZ2luQm90dG9tKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmVjbFRpdGxlKSB7XG4gICAgICAgICAgICB0b3BQb3NpdGlvbiA9IHRoaXMubmF2VGl0dGxlLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdG9wUG9zaXRpb24gPSB0aGlzLmxpc3RDb250YWluZXIubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3A7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhdmFpbGFibGVTcGFjZSA9IHZpZXdwb3J0SGVpZ2h0IC0gdG9wUG9zaXRpb247XG4gICAgICAgIGlmIChhdmFpbGFibGVTcGFjZSA+IDApIHtcbiAgICAgICAgICAgIHRoaXMubGlzdE1heEhlaWdodCA9IGF2YWlsYWJsZVNwYWNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkV4cGFuZEJ1dHRvbkFycm93RG93bihldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB0aGlzLmlzQnV0dG9uRXhwYW5kZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmVjbE5hdmlnYXRpb25MaW5rSXRlbXMuZ2V0KDApLm9uRm9jdXMoKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBvbkV4cGFuZEJ1dHRvblRhYihldnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICgoZXZ0IGFzIEtleWJvYXJkRXZlbnQpLnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICBldnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5nZXQodGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLmxlbmd0aCAtIDEpLm9uRm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29ubmVjdEl0ZW1FdmVudHMoaXRlbTogRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaXRlbS5pdGVtQXJyb3dEb3duLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkl0ZW1BcnJvd0Rvd24oaXRlbSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGl0ZW0uaXRlbUFycm93VXAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uSXRlbUFycm93VXAoaXRlbSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGl0ZW0uaXRlbVRhYi5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldnQpID0+IHtcbiAgICAgICAgICAgIHRoaXMub25JdGVtVGFiKGl0ZW0sIGV2dCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGl0ZW0uaXRlbUNsaWNrLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGV2dCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3ROYXZpZ2F0aW9uSXRlbShpdGVtLnNlY3Rpb25FbGVtZW50KTtcblxuICAgICAgICAgICAgaWYgKGl0ZW0uc2VjdGlvbkVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICBpdGVtLnNlY3Rpb25FbGVtZW50LnNjcm9sbEludG9WaWV3KCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuaXNCdXR0b25FeHBhbmRlZCA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9uSXRlbUFycm93RG93bihpdGVtOiBFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5lY2xOYXZpZ2F0aW9uTGlua0l0ZW1zLnRvQXJyYXkoKS5pbmRleE9mKGl0ZW0pO1xuICAgICAgICAgICAgaWYgKGluZGV4ICE9PSB0aGlzLmVjbE5hdmlnYXRpb25MaW5rSXRlbXMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5nZXQoaW5kZXggKyAxKS5vbkZvY3VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIG9uSXRlbUFycm93VXAoaXRlbTogRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy50b0FycmF5KCkuaW5kZXhPZihpdGVtKTtcbiAgICAgICAgICAgIGlmIChpbmRleCAhPT0gMCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5nZXQoaW5kZXggLSAxKS5vbkZvY3VzKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnRvZ2dsZXJCdXR0b24pIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5pc0J1dHRvbkV4cGFuZGVkID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlckJ1dHRvbi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbkl0ZW1UYWIoaXRlbTogRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsIGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICBpZiAoIShldnQgYXMgS2V5Ym9hcmRFdmVudCkuc2hpZnRLZXkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy50b0FycmF5KCkuaW5kZXhPZihpdGVtKTtcbiAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IHRoaXMuZWNsTmF2aWdhdGlvbkxpbmtJdGVtcy5sZW5ndGggLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvZ2dsZXJCdXR0b24ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc3Vic2NyaWJlVG9DREtTY3JvbGxFdmVudCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zY3JvbGxEaXNwYXRjaGVyLnNjcm9sbGVkKCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoc2Nyb2xsYWJsZTogQ2RrU2Nyb2xsYWJsZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VjdGlvbkVsZW1lbnRJZHMgPSB0aGlzLmVjbE5hdmlnYXRpb25MaW5rSXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLnNlY3Rpb25JZCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VjdGlvbkVsZW1lbnRzOiBBcnJheTxIVE1MRWxlbWVudD4gPSBzZWN0aW9uRWxlbWVudElkcy5tYXAoKGlkKSA9PiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHtpZH1gKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5oYW5kbGVOYXZpZ2F0aW9uTGlua3NIaWdobGlnaHQoc2VjdGlvbkVsZW1lbnRzKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExpc3RIZWlnaHQoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdE5hdmlnYXRpb25JdGVtKGl0ZW1FbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVjbE5hdmlnYXRpb25MaW5rSXRlbXMuZm9yRWFjaCgoaXQpID0+IHtcbiAgICAgICAgICAgIGl0LmlzQWN0aXZlID0gaXQuc2VjdGlvbkVsZW1lbnQgPT09IGl0ZW1FbGVtZW50O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhbmRsZU5hdmlnYXRpb25MaW5rc0hpZ2hsaWdodChzZWN0aW9uRWxlbWVudHM6IEFycmF5PEhUTUxFbGVtZW50Pik6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50U2VjdGlvbkVsZW1lbnQ6IEhUTUxFbGVtZW50ID0gdGhpcy5maW5kQWN0aXZlU2VjdGlvbkVsZW1lbnQoc2VjdGlvbkVsZW1lbnRzKTtcbiAgICAgICAgaWYgKGN1cnJlbnRTZWN0aW9uRWxlbWVudCAhPT0gdGhpcy5jdXJyZW50U2VjdGlvbkVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFNlY3Rpb25FbGVtZW50ID0gY3VycmVudFNlY3Rpb25FbGVtZW50O1xuICAgICAgICAgICAgdGhpcy5zZWxlY3ROYXZpZ2F0aW9uSXRlbShjdXJyZW50U2VjdGlvbkVsZW1lbnQpO1xuICAgICAgICAgICAgY29uc3Qgc2VjdGlvbklkID0gdGhpcy5jdXJyZW50TmF2aWdhdGlvbkxpbmtJdGVtID8gdGhpcy5jdXJyZW50TmF2aWdhdGlvbkxpbmtJdGVtLnNlY3Rpb25JZCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIHRoaXMuc2VjdGlvbkVudGVyLm5leHQobmV3IEVjbElucGFnZU5hdmlnYXRpb25TZWN0aW9uRW50ZXJFdmVudChzZWN0aW9uSWQpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZmluZEFjdGl2ZVNlY3Rpb25FbGVtZW50KHNlY3Rpb25FbGVtZW50czogQXJyYXk8SFRNTEVsZW1lbnQ+KTogSFRNTEVsZW1lbnQge1xuICAgICAgICBsZXQgY3VycmVudFNlY3Rpb246IEhUTUxFbGVtZW50O1xuXG4gICAgICAgIHNlY3Rpb25FbGVtZW50cy5mb3JFYWNoKChzZWN0aW9uRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKHNlY3Rpb25FbGVtZW50ICYmIHNlY3Rpb25FbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCA8PSB0aGlzLk1JTl9ESVNUQU5DRV9UT1ApIHtcbiAgICAgICAgICAgICAgICBjdXJyZW50U2VjdGlvbiA9IHNlY3Rpb25FbGVtZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRTZWN0aW9uO1xuICAgIH1cblxuICAgIHByaXZhdGUgb2JzZXJ2ZUJyZWFrcG9pbnRDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNka0JyZWFrcG9pbnRPYnNlcnZlclxuICAgICAgICAgICAgLm9ic2VydmUoW0JyZWFrcG9pbnRzLkhhbmRzZXQsIEJyZWFrcG9pbnRzLlRhYmxldCwgQnJlYWtwb2ludHMuU21hbGxdKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc01vYmlsZUJyZWFrcG9pbnQgPSByZXN1bHQubWF0Y2hlcztcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxlY2wtc3RpY2t5LWNvbnRhaW5lciBbbWFyZ2luVG9wXT1cIm1hcmdpblRvcFwiIFttYXJnaW5Cb3R0b21dPVwibWFyZ2luQm90dG9tXCI+XG4gICAgPG5hdlxuICAgICAgICBhcmlhLWxhYmVsbGVkYnk9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb24tZGVmYXVsdFwiXG4gICAgICAgIGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uXCJcbiAgICAgICAgW2NsYXNzLmVjbC1pbnBhZ2UtbmF2aWdhdGlvbi0tdmlzaWJsZV09XCJoYXNBY3RpdmVTZWN0aW9uXCJcbiAgICAgICAgW2NsYXNzLmVjbC1pbnBhZ2UtbmF2aWdhdGlvbi0tcnRsXT1cImlzUnRsXCI+XG4gICAgICAgIDxkaXYgI25hdlRpdHRsZSBpZD1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbi1kZWZhdWx0XCIgY2xhc3M9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb25fX3RpdGxlXCI+XG4gICAgICAgICAgICB7eyBlY2xUaXRsZSB8fCAnZWNsLmlucGFnZS1uYXZpZ2F0aW9uLlBBR0UtQ09OVEVOVFMnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uX19ib2R5XCI+XG4gICAgICAgICAgICA8ZGl2ICN0b2dnbGVXcmFwcGVyIGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uX190cmlnZ2VyLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICN0b2dnbGVyQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLWRlZmF1bHQtdHJpZ2dlclwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbl9fdHJpZ2dlclwiXG4gICAgICAgICAgICAgICAgICAgIGFyaWEtY29udHJvbHM9XCJlY2wtaW5wYWdlLW5hdmlnYXRpb24tbGlzdFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNCdXR0b25FeHBhbmRlZFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkV4cGFuZEJ1dHRvbkNsaWNrKClcIlxuICAgICAgICAgICAgICAgICAgICAoa2V5ZG93bik9XCJvbkV4cGFuZEJ1dHRvbktleWRvd24oJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVjbC1pbnBhZ2UtbmF2aWdhdGlvbl9fdHJpZ2dlci1jdXJyZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBjdXJyZW50TmF2aWdhdGlvbkxpbmtJdGVtPy5sYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxlY2wtaWNvbiBpY29uPVwiY29ybmVyLWFycm93XCIgW3NpemVdPVwic2l6ZUljb25cIiB0cmFuc2Zvcm09XCJyb3RhdGUtMTgwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uX190cmlnZ2VyLWljb25cIiB0aXRsZT1cIlNob3cgZnVsbCBwYWdlIHRhYmxlIG9mIGNvbnRlbnRzXCI+IDwvZWNsLWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBAaWYgKCFoYXNOYXZpZ2F0aW9uTGlzdCkge1xuICAgICAgICAgICAgPHVsICNsaXN0Q29udGFpbmVyIGlkPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLWRlZmF1bHQtbGlzdFwiIGNsYXNzPVwiZWNsLWlucGFnZS1uYXZpZ2F0aW9uX19saXN0XCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZWNsLWlucGFnZS1uYXZpZ2F0aW9uX19saXN0LS12aXNpYmxlXT1cImlzQnV0dG9uRXhwYW5kZWRcIiBbc3R5bGUubWF4LWhlaWdodC5weF09XCJsaXN0TWF4SGVpZ2h0XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzQnV0dG9uRXhwYW5kZWRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmF2PlxuPC9lY2wtc3RpY2t5LWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+Il19
@@ -6,18 +6,21 @@ import { EclIconComponentModule } from '../ecl-icon';
6
6
  import { EclInpageNavigationItemComponent } from './ecl-inpage-navigation-item.component';
7
7
  import { EclStickyContainerComponentModule } from '../ecl-sticky-container';
8
8
  import { EclInpageNavigationComponent } from './ecl-inpage-navigation.component';
9
+ import { EclInpageNavigationService } from './services/ecl-inpage-navigation.service';
10
+ import { EclInpageNavigationListDirective } from './ecl-inpage-navigation-list.directive';
9
11
  import * as i0 from "@angular/core";
10
12
  export class EclInpageNavigationComponentModule {
11
13
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponentModule, declarations: [EclInpageNavigationComponent, EclInpageNavigationItemComponent], imports: [CommonModule, TranslateModule, EclStickyContainerComponentModule, EclLinkDirectiveModule, EclIconComponentModule], exports: [EclInpageNavigationComponent, EclInpageNavigationItemComponent] }); }
13
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponentModule, imports: [CommonModule, TranslateModule, EclStickyContainerComponentModule, EclLinkDirectiveModule, EclIconComponentModule] }); }
14
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponentModule, declarations: [EclInpageNavigationComponent, EclInpageNavigationItemComponent, EclInpageNavigationListDirective], imports: [CommonModule, TranslateModule, EclStickyContainerComponentModule, EclLinkDirectiveModule, EclIconComponentModule], exports: [EclInpageNavigationComponent, EclInpageNavigationItemComponent, EclInpageNavigationListDirective] }); }
15
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponentModule, providers: [EclInpageNavigationService], imports: [CommonModule, TranslateModule, EclStickyContainerComponentModule, EclLinkDirectiveModule, EclIconComponentModule] }); }
14
16
  }
15
17
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationComponentModule, decorators: [{
16
18
  type: NgModule,
17
19
  args: [{
18
20
  imports: [CommonModule, TranslateModule, EclStickyContainerComponentModule, EclLinkDirectiveModule, EclIconComponentModule],
19
- exports: [EclInpageNavigationComponent, EclInpageNavigationItemComponent],
20
- declarations: [EclInpageNavigationComponent, EclInpageNavigationItemComponent],
21
+ exports: [EclInpageNavigationComponent, EclInpageNavigationItemComponent, EclInpageNavigationListDirective],
22
+ declarations: [EclInpageNavigationComponent, EclInpageNavigationItemComponent, EclInpageNavigationListDirective],
23
+ providers: [EclInpageNavigationService],
21
24
  }]
22
25
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtaW5wYWdlLW5hdmlnYXRpb24vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFPakYsTUFBTSxPQUFPLGtDQUFrQzsrR0FBbEMsa0NBQWtDO2dIQUFsQyxrQ0FBa0MsaUJBRjVCLDRCQUE0QixFQUFFLGdDQUFnQyxhQUZuRSxZQUFZLEVBQUUsZUFBZSxFQUFFLGlDQUFpQyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixhQUNoSCw0QkFBNEIsRUFBRSxnQ0FBZ0M7Z0hBRy9ELGtDQUFrQyxZQUpqQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGlDQUFpQyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQjs7NEZBSWpILGtDQUFrQztrQkFMOUMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGlDQUFpQyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixDQUFDO29CQUMzSCxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxnQ0FBZ0MsQ0FBQztvQkFDekUsWUFBWSxFQUFFLENBQUMsNEJBQTRCLEVBQUUsZ0NBQWdDLENBQUM7aUJBQ2pGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEVjbExpbmtEaXJlY3RpdmVNb2R1bGUgfSBmcm9tICcuLi9lY2wtbGluayc7XG5pbXBvcnQgeyBFY2xJY29uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vZWNsLWljb24nO1xuaW1wb3J0IHsgRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xTdGlja3lDb250YWluZXJDb21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9lY2wtc3RpY2t5LWNvbnRhaW5lcic7XG5pbXBvcnQgeyBFY2xJbnBhZ2VOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIEVjbFN0aWNreUNvbnRhaW5lckNvbXBvbmVudE1vZHVsZSwgRWNsTGlua0RpcmVjdGl2ZU1vZHVsZSwgRWNsSWNvbkNvbXBvbmVudE1vZHVsZV0sXG4gICAgZXhwb3J0czogW0VjbElucGFnZU5hdmlnYXRpb25Db21wb25lbnQsIEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50XSxcbiAgICBkZWNsYXJhdGlvbnM6IFtFY2xJbnBhZ2VOYXZpZ2F0aW9uQ29tcG9uZW50LCBFY2xJbnBhZ2VOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIEVjbElucGFnZU5hdmlnYXRpb25Db21wb25lbnRNb2R1bGUge31cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtaW5wYWdlLW5hdmlnYXRpb24vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7QUFRMUYsTUFBTSxPQUFPLGtDQUFrQzsrR0FBbEMsa0NBQWtDO2dIQUFsQyxrQ0FBa0MsaUJBSDVCLDRCQUE0QixFQUFFLGdDQUFnQyxFQUFFLGdDQUFnQyxhQUZyRyxZQUFZLEVBQUUsZUFBZSxFQUFFLGlDQUFpQyxFQUFFLHNCQUFzQixFQUFFLHNCQUFzQixhQUNoSCw0QkFBNEIsRUFBRSxnQ0FBZ0MsRUFBRSxnQ0FBZ0M7Z0hBSWpHLGtDQUFrQyxhQUYvQixDQUFDLDBCQUEwQixDQUFDLFlBSDlCLFlBQVksRUFBRSxlQUFlLEVBQUUsaUNBQWlDLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCOzs0RkFLakgsa0NBQWtDO2tCQU45QyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsaUNBQWlDLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLENBQUM7b0JBQzNILE9BQU8sRUFBRSxDQUFDLDRCQUE0QixFQUFFLGdDQUFnQyxFQUFFLGdDQUFnQyxDQUFDO29CQUMzRyxZQUFZLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxnQ0FBZ0MsRUFBRSxnQ0FBZ0MsQ0FBQztvQkFDaEgsU0FBUyxFQUFHLENBQUMsMEJBQTBCLENBQUM7aUJBQzNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEVjbExpbmtEaXJlY3RpdmVNb2R1bGUgfSBmcm9tICcuLi9lY2wtbGluayc7XG5pbXBvcnQgeyBFY2xJY29uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vZWNsLWljb24nO1xuaW1wb3J0IHsgRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xTdGlja3lDb250YWluZXJDb21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9lY2wtc3RpY2t5LWNvbnRhaW5lcic7XG5pbXBvcnQgeyBFY2xJbnBhZ2VOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEVjbElucGFnZU5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9lY2wtaW5wYWdlLW5hdmlnYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBFY2xJbnBhZ2VOYXZpZ2F0aW9uTGlzdERpcmVjdGl2ZSB9IGZyb20gJy4vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLWxpc3QuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIEVjbFN0aWNreUNvbnRhaW5lckNvbXBvbmVudE1vZHVsZSwgRWNsTGlua0RpcmVjdGl2ZU1vZHVsZSwgRWNsSWNvbkNvbXBvbmVudE1vZHVsZV0sXG4gICAgZXhwb3J0czogW0VjbElucGFnZU5hdmlnYXRpb25Db21wb25lbnQsIEVjbElucGFnZU5hdmlnYXRpb25JdGVtQ29tcG9uZW50LCBFY2xJbnBhZ2VOYXZpZ2F0aW9uTGlzdERpcmVjdGl2ZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbRWNsSW5wYWdlTmF2aWdhdGlvbkNvbXBvbmVudCwgRWNsSW5wYWdlTmF2aWdhdGlvbkl0ZW1Db21wb25lbnQsIEVjbElucGFnZU5hdmlnYXRpb25MaXN0RGlyZWN0aXZlXSxcbiAgICBwcm92aWRlcnM6ICBbRWNsSW5wYWdlTmF2aWdhdGlvblNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xJbnBhZ2VOYXZpZ2F0aW9uQ29tcG9uZW50TW9kdWxlIHt9XG4iXX0=
@@ -1,4 +1,6 @@
1
1
  export * from './ecl-inpage-navigation.module';
2
2
  export * from './ecl-inpage-navigation.component';
3
3
  export * from './ecl-inpage-navigation-item.component';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLWlucGFnZS1uYXZpZ2F0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHdDQUF3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG4iXX0=
4
+ export * from './ecl-inpage-navigation-list.directive';
5
+ export * from './services/ecl-inpage-navigation.service';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLWlucGFnZS1uYXZpZ2F0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZWNsLWlucGFnZS1uYXZpZ2F0aW9uLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24taXRlbS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9lY2wtaW5wYWdlLW5hdmlnYXRpb24tbGlzdC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlcy9lY2wtaW5wYWdlLW5hdmlnYXRpb24uc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class EclInpageNavigationService {
5
+ constructor() {
6
+ this.eclInpageNavigationExpanded = new Subject();
7
+ this.eclInpageNavigationExpanded$ = this.eclInpageNavigationExpanded.asObservable();
8
+ }
9
+ eclInpageNavigationToggle(isExpanded) {
10
+ this.eclInpageNavigationExpanded.next(isExpanded);
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
13
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationService }); }
14
+ }
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclInpageNavigationService, decorators: [{
16
+ type: Injectable
17
+ }], ctorParameters: () => [] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLWlucGFnZS1uYXZpZ2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLWlucGFnZS1uYXZpZ2F0aW9uL3NlcnZpY2VzL2VjbC1pbnBhZ2UtbmF2aWdhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLDBCQUEwQjtJQUt0QztRQUZRLGdDQUEyQixHQUFxQixJQUFJLE9BQU8sRUFBVyxDQUFDO1FBR3hFLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxJQUFJLENBQUMsMkJBQTJCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDM0YsQ0FBQztJQUVFLHlCQUF5QixDQUFDLFVBQW1CO1FBQy9DLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkQsQ0FBQzsrR0FYVywwQkFBMEI7bUhBQTFCLDBCQUEwQjs7NEZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVjbElucGFnZU5hdmlnYXRpb25TZXJ2aWNlIHtcblxuXHRwdWJsaWMgZWNsSW5wYWdlTmF2aWdhdGlvbkV4cGFuZGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcblx0cHJpdmF0ZSBlY2xJbnBhZ2VOYXZpZ2F0aW9uRXhwYW5kZWQ6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmVjbElucGFnZU5hdmlnYXRpb25FeHBhbmRlZCQgPSB0aGlzLmVjbElucGFnZU5hdmlnYXRpb25FeHBhbmRlZC5hc09ic2VydmFibGUoKTtcblx0fVxuXG4gICAgZWNsSW5wYWdlTmF2aWdhdGlvblRvZ2dsZShpc0V4cGFuZGVkOiBib29sZWFuKTogdm9pZCB7XG5cdFx0dGhpcy5lY2xJbnBhZ2VOYXZpZ2F0aW9uRXhwYW5kZWQubmV4dChpc0V4cGFuZGVkKTtcblx0fVxufVxuIl19
@@ -6,6 +6,7 @@ import * as i1 from "../../services";
6
6
  import * as i2 from "../ecl-icon/ecl-icon.component";
7
7
  import * as i3 from "../ecl-button/ecl-button.component";
8
8
  import * as i4 from "../ecl-button/ecl-button-label.directive";
9
+ import * as i5 from "@ngx-translate/core";
9
10
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
11
  export class EclModalHeaderComponent extends ECLBaseDirective {
11
12
  get cssClasses() {
@@ -37,11 +38,11 @@ export class EclModalHeaderComponent extends ECLBaseDirective {
37
38
  }
38
39
  }
39
40
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclModalHeaderComponent, deps: [{ token: i1.EclThemeService }], target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EclModalHeaderComponent, selector: "[eclModalHeader]", inputs: { variant: "variant" }, outputs: { modalClose: "modalClose" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if(getIcon()) {\n @if(variant === 'warning') {\n <span class=\"ecl-modal__icon-background\"></span>\n }\n <ecl-icon [icon]=\"getIcon()\" size=\"l\" class=\"ecl-modal__icon\" [title]=\"variant\"></ecl-icon>\n}\n<div class=\"ecl-modal__header-content\">\n <ng-content></ng-content>\n</div>\n<button eclButton variant=\"tertiary\" isIconOnly class=\"ecl-modal__close\" type=\"button\" (click)=\"onCloseClick()\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n</button>\n", dependencies: [{ kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: i3.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "directive", type: i4.EclButtonLabelDirective, selector: "[eclButtonLabel]" }] }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EclModalHeaderComponent, selector: "[eclModalHeader]", inputs: { variant: "variant" }, outputs: { modalClose: "modalClose" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "@if(getIcon()) {\n @if(variant === 'warning') {\n <span class=\"ecl-modal__icon-background\"></span>\n }\n <ecl-icon [icon]=\"getIcon()\" size=\"l\" class=\"ecl-modal__icon\" [title]=\"variant\"></ecl-icon>\n}\n<div class=\"ecl-modal__header-content\">\n <ng-content></ng-content>\n</div>\n<button eclButton variant=\"tertiary\" isIconOnly class=\"ecl-modal__close\" type=\"button\" (click)=\"onCloseClick()\">\n <span eclButtonLabel>{{ 'ecl.common.CLOSE' | translate }}</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n</button>\n", dependencies: [{ kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "component", type: i3.EclButtonComponent, selector: "button[eclButton], button[ecl-button], a[eclButton]", inputs: ["isIconOnly", "variant", "containerStyleClass"] }, { kind: "directive", type: i4.EclButtonLabelDirective, selector: "[eclButtonLabel]" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
41
42
  }
42
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclModalHeaderComponent, decorators: [{
43
44
  type: Component,
44
- args: [{ selector: '[eclModalHeader]', template: "@if(getIcon()) {\n @if(variant === 'warning') {\n <span class=\"ecl-modal__icon-background\"></span>\n }\n <ecl-icon [icon]=\"getIcon()\" size=\"l\" class=\"ecl-modal__icon\" [title]=\"variant\"></ecl-icon>\n}\n<div class=\"ecl-modal__header-content\">\n <ng-content></ng-content>\n</div>\n<button eclButton variant=\"tertiary\" isIconOnly class=\"ecl-modal__close\" type=\"button\" (click)=\"onCloseClick()\">\n <span eclButtonLabel>Close</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n</button>\n" }]
45
+ args: [{ selector: '[eclModalHeader]', template: "@if(getIcon()) {\n @if(variant === 'warning') {\n <span class=\"ecl-modal__icon-background\"></span>\n }\n <ecl-icon [icon]=\"getIcon()\" size=\"l\" class=\"ecl-modal__icon\" [title]=\"variant\"></ecl-icon>\n}\n<div class=\"ecl-modal__header-content\">\n <ng-content></ng-content>\n</div>\n<button eclButton variant=\"tertiary\" isIconOnly class=\"ecl-modal__close\" type=\"button\" (click)=\"onCloseClick()\">\n <span eclButtonLabel>{{ 'ecl.common.CLOSE' | translate }}</span>\n <ecl-icon icon=\"close\" size=\"m\"></ecl-icon>\n</button>\n" }]
45
46
  }], ctorParameters: () => [{ type: i1.EclThemeService }], propDecorators: { variant: [{
46
47
  type: Input
47
48
  }], modalClose: [{
@@ -50,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
50
51
  type: HostBinding,
51
52
  args: ['class']
52
53
  }] } });
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW1vZGFsLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW1vZGFsL2VjbC1tb2RhbC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1tb2RhbC9lY2wtbW9kYWwtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7QUFRM0QsOERBQThEO0FBQzlELE1BQU0sT0FBTyx1QkFBaUMsU0FBUSxnQkFBZ0I7SUFJbEUsSUFDSSxVQUFVO1FBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN2RSxDQUFDO0lBRUQsWUFBbUIsZUFBZ0M7UUFDL0MsS0FBSyxFQUFFLENBQUM7UUFETyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFQekMsZUFBVSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO0lBU2pFLENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssYUFBYSxFQUFFLENBQUM7WUFDakMsT0FBTyxhQUFhLENBQUM7UUFDekIsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNwQyxPQUFPLGNBQWMsQ0FBQztRQUMxQixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BDLE9BQU8sU0FBUyxDQUFDO1FBQ3JCLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDbEMsT0FBTyxPQUFPLENBQUM7UUFDbkIsQ0FBQzthQUFNLENBQUM7WUFDSixPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQzsrR0E3QlEsdUJBQXVCO21HQUF2Qix1QkFBdUIsNE1DWHBDLHdoQkFhQTs7NEZERmEsdUJBQXVCO2tCQU5uQyxTQUFTOytCQUVJLGtCQUFrQjtvRkFLbkIsT0FBTztzQkFBZixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBR0gsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTW9kYWxDbG9zZUV2ZW50IH0gZnJvbSAnLi9lY2wtbW9kYWwuY29tcG9uZW50JztcbmltcG9ydCB7IEVjbFRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcblxuQENvbXBvbmVudCh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tlY2xNb2RhbEhlYWRlcl0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9lY2wtbW9kYWwtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbn0pXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuZXhwb3J0IGNsYXNzIEVjbE1vZGFsSGVhZGVyQ29tcG9uZW50PFQgPSBhbnk+IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG4gICAgQElucHV0KCkgdmFyaWFudDogJ2luZm9ybWF0aW9uJyB8ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCBzdHJpbmc7XG4gICAgQE91dHB1dCgpIG1vZGFsQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbE1vZGFsQ2xvc2VFdmVudDxUPj4oKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIGdldCBjc3NDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBbc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLW1vZGFsX19oZWFkZXInKV0uam9pbignICcpLnRyaW0oKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWNsVGhlbWVTZXJ2aWNlOiBFY2xUaGVtZVNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBvbkNsb3NlQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kYWxDbG9zZS5uZXh0KG5ldyBFY2xNb2RhbENsb3NlRXZlbnQoKSk7XG4gICAgfVxuXG4gICAgZ2V0SWNvbigpOiAnaW5mb3JtYXRpb24nIHwgJ2NoZWNrLWZpbGxlZCcgfCAnd2FybmluZycgfCAnZXJyb3InIHwgbnVsbCB7XG4gICAgICAgIGlmICh0aGlzLnZhcmlhbnQgPT09ICdpbmZvcm1hdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiAnaW5mb3JtYXRpb24nO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFudCA9PT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2NoZWNrLWZpbGxlZCc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYW50ID09PSAnd2FybmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiAnd2FybmluZyc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYW50ID09PSAnZXJyb3InKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2Vycm9yJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGlmKGdldEljb24oKSkge1xuICAgIEBpZih2YXJpYW50ID09PSAnd2FybmluZycpIHtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJlY2wtbW9kYWxfX2ljb24tYmFja2dyb3VuZFwiPjwvc3Bhbj5cbiAgICB9XG4gICAgPGVjbC1pY29uIFtpY29uXT1cImdldEljb24oKVwiIHNpemU9XCJsXCIgY2xhc3M9XCJlY2wtbW9kYWxfX2ljb25cIiBbdGl0bGVdPVwidmFyaWFudFwiPjwvZWNsLWljb24+XG59XG48ZGl2IGNsYXNzPVwiZWNsLW1vZGFsX19oZWFkZXItY29udGVudFwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuPGJ1dHRvbiBlY2xCdXR0b24gdmFyaWFudD1cInRlcnRpYXJ5XCIgaXNJY29uT25seSBjbGFzcz1cImVjbC1tb2RhbF9fY2xvc2VcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uQ2xvc2VDbGljaygpXCI+XG4gICAgPHNwYW4gZWNsQnV0dG9uTGFiZWw+Q2xvc2U8L3NwYW4+XG4gICAgPGVjbC1pY29uIGljb249XCJjbG9zZVwiIHNpemU9XCJtXCI+PC9lY2wtaWNvbj5cbjwvYnV0dG9uPlxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW1vZGFsLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLW1vZGFsL2VjbC1tb2RhbC1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VjbC1tb2RhbC9lY2wtbW9kYWwtaGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBUTNELDhEQUE4RDtBQUM5RCxNQUFNLE9BQU8sdUJBQWlDLFNBQVEsZ0JBQWdCO0lBSWxFLElBQ0ksVUFBVTtRQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkUsQ0FBQztJQUVELFlBQW1CLGVBQWdDO1FBQy9DLEtBQUssRUFBRSxDQUFDO1FBRE8sb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBUHpDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBeUIsQ0FBQztJQVNqRSxDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksa0JBQWtCLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLGFBQWEsRUFBRSxDQUFDO1lBQ2pDLE9BQU8sYUFBYSxDQUFDO1FBQ3pCLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDcEMsT0FBTyxjQUFjLENBQUM7UUFDMUIsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNwQyxPQUFPLFNBQVMsQ0FBQztRQUNyQixDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ2xDLE9BQU8sT0FBTyxDQUFDO1FBQ25CLENBQUM7YUFBTSxDQUFDO1lBQ0osT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztJQUNMLENBQUM7K0dBN0JRLHVCQUF1QjttR0FBdkIsdUJBQXVCLDRNQ1hwQyx1akJBYUE7OzRGREZhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFFSSxrQkFBa0I7b0ZBS25CLE9BQU87c0JBQWYsS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNO2dCQUdILFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFQ0xCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi4vZWNsLWJhc2UuZGlyZWN0aXZlJztcbmltcG9ydCB7IEVjbE1vZGFsQ2xvc2VFdmVudCB9IGZyb20gJy4vZWNsLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gICAgc2VsZWN0b3I6ICdbZWNsTW9kYWxIZWFkZXJdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLW1vZGFsLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXG59KVxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmV4cG9ydCBjbGFzcyBFY2xNb2RhbEhlYWRlckNvbXBvbmVudDxUID0gYW55PiBleHRlbmRzIEVDTEJhc2VEaXJlY3RpdmUge1xuICAgIEBJbnB1dCgpIHZhcmlhbnQ6ICdpbmZvcm1hdGlvbicgfCAnc3VjY2VzcycgfCAnd2FybmluZycgfCAnZXJyb3InIHwgc3RyaW5nO1xuICAgIEBPdXRwdXQoKSBtb2RhbENsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxFY2xNb2RhbENsb3NlRXZlbnQ8VD4+KCk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW3N1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1tb2RhbF9faGVhZGVyJyldLmpvaW4oJyAnKS50cmltKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVjbFRoZW1lU2VydmljZTogRWNsVGhlbWVTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgb25DbG9zZUNsaWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm1vZGFsQ2xvc2UubmV4dChuZXcgRWNsTW9kYWxDbG9zZUV2ZW50KCkpO1xuICAgIH1cblxuICAgIGdldEljb24oKTogJ2luZm9ybWF0aW9uJyB8ICdjaGVjay1maWxsZWQnIHwgJ3dhcm5pbmcnIHwgJ2Vycm9yJyB8IG51bGwge1xuICAgICAgICBpZiAodGhpcy52YXJpYW50ID09PSAnaW5mb3JtYXRpb24nKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2luZm9ybWF0aW9uJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnZhcmlhbnQgPT09ICdzdWNjZXNzJykge1xuICAgICAgICAgICAgcmV0dXJuICdjaGVjay1maWxsZWQnO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFudCA9PT0gJ3dhcm5pbmcnKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3dhcm5pbmcnO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudmFyaWFudCA9PT0gJ2Vycm9yJykge1xuICAgICAgICAgICAgcmV0dXJuICdlcnJvcic7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpZihnZXRJY29uKCkpIHtcbiAgICBAaWYodmFyaWFudCA9PT0gJ3dhcm5pbmcnKSB7XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZWNsLW1vZGFsX19pY29uLWJhY2tncm91bmRcIj48L3NwYW4+XG4gICAgfVxuICAgIDxlY2wtaWNvbiBbaWNvbl09XCJnZXRJY29uKClcIiBzaXplPVwibFwiIGNsYXNzPVwiZWNsLW1vZGFsX19pY29uXCIgW3RpdGxlXT1cInZhcmlhbnRcIj48L2VjbC1pY29uPlxufVxuPGRpdiBjbGFzcz1cImVjbC1tb2RhbF9faGVhZGVyLWNvbnRlbnRcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbjxidXR0b24gZWNsQnV0dG9uIHZhcmlhbnQ9XCJ0ZXJ0aWFyeVwiIGlzSWNvbk9ubHkgY2xhc3M9XCJlY2wtbW9kYWxfX2Nsb3NlXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvbkNsb3NlQ2xpY2soKVwiPlxuICAgIDxzcGFuIGVjbEJ1dHRvbkxhYmVsPnt7ICdlY2wuY29tbW9uLkNMT1NFJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICA8ZWNsLWljb24gaWNvbj1cImNsb3NlXCIgc2l6ZT1cIm1cIj48L2VjbC1pY29uPlxuPC9idXR0b24+XG4iXX0=
@@ -1,5 +1,6 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
+ import { TranslateModule } from '@ngx-translate/core';
3
4
  import { EclIconComponentModule } from '../ecl-icon/ecl-icon.module';
4
5
  import { EclButtonComponentModule } from '../ecl-button/ecl-button.module';
5
6
  import { EclModalComponent } from './ecl-modal.component';
@@ -27,21 +28,21 @@ export class EclModalComponentModule {
27
28
  EclModalBodyFixedContentDirective,
28
29
  EclModalFooterComponent,
29
30
  EclModalCloseDirective,
30
- EclModalTriggerDirective], imports: [CommonModule, EclIconComponentModule, EclButtonComponentModule], exports: [EclModalComponent,
31
+ EclModalTriggerDirective], imports: [CommonModule, TranslateModule, EclIconComponentModule, EclButtonComponentModule], exports: [EclModalComponent,
31
32
  EclModalHeaderComponent,
32
33
  EclModalBodyComponent,
33
34
  EclModalBodyFixedContentDirective,
34
35
  EclModalFooterComponent,
35
36
  EclModalCloseDirective,
36
37
  EclModalTriggerDirective] }); }
37
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclModalComponentModule, imports: [CommonModule, EclIconComponentModule, EclButtonComponentModule] }); }
38
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclModalComponentModule, imports: [CommonModule, TranslateModule, EclIconComponentModule, EclButtonComponentModule] }); }
38
39
  }
39
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclModalComponentModule, decorators: [{
40
41
  type: NgModule,
41
42
  args: [{
42
- imports: [CommonModule, EclIconComponentModule, EclButtonComponentModule],
43
+ imports: [CommonModule, TranslateModule, EclIconComponentModule, EclButtonComponentModule],
43
44
  exports: [...COMPONENTS],
44
45
  declarations: [...COMPONENTS],
45
46
  }]
46
47
  }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW1vZGFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbW9kYWwvZWNsLW1vZGFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFFckYsTUFBTSxVQUFVLEdBQUc7SUFDZixpQkFBaUI7SUFDakIsdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixpQ0FBaUM7SUFDakMsdUJBQXVCO0lBQ3ZCLHNCQUFzQjtJQUN0Qix3QkFBd0I7Q0FDM0IsQ0FBQztBQU9GLE1BQU0sT0FBTyx1QkFBdUI7K0dBQXZCLHVCQUF1QjtnSEFBdkIsdUJBQXVCLGlCQWRoQyxpQkFBaUI7WUFDakIsdUJBQXVCO1lBQ3ZCLHFCQUFxQjtZQUNyQixpQ0FBaUM7WUFDakMsdUJBQXVCO1lBQ3ZCLHNCQUFzQjtZQUN0Qix3QkFBd0IsYUFJZCxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLGFBVnhFLGlCQUFpQjtZQUNqQix1QkFBdUI7WUFDdkIscUJBQXFCO1lBQ3JCLGlDQUFpQztZQUNqQyx1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLHdCQUF3QjtnSEFRZix1QkFBdUIsWUFKdEIsWUFBWSxFQUFFLHNCQUFzQixFQUFFLHdCQUF3Qjs7NEZBSS9ELHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsd0JBQXdCLENBQUM7b0JBQ3pFLE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDO29CQUN4QixZQUFZLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEVjbEljb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9lY2wtaWNvbi9lY2wtaWNvbi5tb2R1bGUnO1xuaW1wb3J0IHsgRWNsQnV0dG9uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vZWNsLWJ1dHRvbi9lY2wtYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBFY2xNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vZWNsLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xNb2RhbEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vZWNsLW1vZGFsLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTW9kYWxCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi9lY2wtbW9kYWwtYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTW9kYWxGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL2VjbC1tb2RhbC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEVjbE1vZGFsQ2xvc2VEaXJlY3RpdmUgfSBmcm9tICcuL2VjbC1tb2RhbC1jbG9zZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTW9kYWxUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9lY2wtbW9kYWwtdHJpZ2dlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTW9kYWxCb2R5Rml4ZWRDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9lY2wtbW9kYWwtYm9keS1maXhlZC5kaXJlY3RpdmUnO1xuXG5jb25zdCBDT01QT05FTlRTID0gW1xuICAgIEVjbE1vZGFsQ29tcG9uZW50LFxuICAgIEVjbE1vZGFsSGVhZGVyQ29tcG9uZW50LFxuICAgIEVjbE1vZGFsQm9keUNvbXBvbmVudCxcbiAgICBFY2xNb2RhbEJvZHlGaXhlZENvbnRlbnREaXJlY3RpdmUsXG4gICAgRWNsTW9kYWxGb290ZXJDb21wb25lbnQsXG4gICAgRWNsTW9kYWxDbG9zZURpcmVjdGl2ZSxcbiAgICBFY2xNb2RhbFRyaWdnZXJEaXJlY3RpdmUsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEVjbEljb25Db21wb25lbnRNb2R1bGUsIEVjbEJ1dHRvbkNvbXBvbmVudE1vZHVsZV0sXG4gICAgZXhwb3J0czogWy4uLkNPTVBPTkVOVFNdLFxuICAgIGRlY2xhcmF0aW9uczogWy4uLkNPTVBPTkVOVFNdLFxufSlcbmV4cG9ydCBjbGFzcyBFY2xNb2RhbENvbXBvbmVudE1vZHVsZSB7fVxuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLW1vZGFsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29tcG9uZW50cy9lY2wtbW9kYWwvZWNsLW1vZGFsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBRXJGLE1BQU0sVUFBVSxHQUFHO0lBQ2YsaUJBQWlCO0lBQ2pCLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsaUNBQWlDO0lBQ2pDLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIsd0JBQXdCO0NBQzNCLENBQUM7QUFPRixNQUFNLE9BQU8sdUJBQXVCOytHQUF2Qix1QkFBdUI7Z0hBQXZCLHVCQUF1QixpQkFkaEMsaUJBQWlCO1lBQ2pCLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFDckIsaUNBQWlDO1lBQ2pDLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsd0JBQXdCLGFBSWQsWUFBWSxFQUFFLGVBQWUsRUFBRSxzQkFBc0IsRUFBRSx3QkFBd0IsYUFWekYsaUJBQWlCO1lBQ2pCLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFDckIsaUNBQWlDO1lBQ2pDLHVCQUF1QjtZQUN2QixzQkFBc0I7WUFDdEIsd0JBQXdCO2dIQVFmLHVCQUF1QixZQUp0QixZQUFZLEVBQUUsZUFBZSxFQUFFLHNCQUFzQixFQUFFLHdCQUF3Qjs7NEZBSWhGLHVCQUF1QjtrQkFMbkMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLHNCQUFzQixFQUFFLHdCQUF3QixDQUFDO29CQUMxRixPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztvQkFDeEIsWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7aUJBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEVjbEljb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9lY2wtaWNvbi9lY2wtaWNvbi5tb2R1bGUnO1xuaW1wb3J0IHsgRWNsQnV0dG9uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vZWNsLWJ1dHRvbi9lY2wtYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBFY2xNb2RhbENvbXBvbmVudCB9IGZyb20gJy4vZWNsLW1vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFY2xNb2RhbEhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vZWNsLW1vZGFsLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTW9kYWxCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi9lY2wtbW9kYWwtYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWNsTW9kYWxGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL2VjbC1tb2RhbC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEVjbE1vZGFsQ2xvc2VEaXJlY3RpdmUgfSBmcm9tICcuL2VjbC1tb2RhbC1jbG9zZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTW9kYWxUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9lY2wtbW9kYWwtdHJpZ2dlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRWNsTW9kYWxCb2R5Rml4ZWRDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9lY2wtbW9kYWwtYm9keS1maXhlZC5kaXJlY3RpdmUnO1xuXG5jb25zdCBDT01QT05FTlRTID0gW1xuICAgIEVjbE1vZGFsQ29tcG9uZW50LFxuICAgIEVjbE1vZGFsSGVhZGVyQ29tcG9uZW50LFxuICAgIEVjbE1vZGFsQm9keUNvbXBvbmVudCxcbiAgICBFY2xNb2RhbEJvZHlGaXhlZENvbnRlbnREaXJlY3RpdmUsXG4gICAgRWNsTW9kYWxGb290ZXJDb21wb25lbnQsXG4gICAgRWNsTW9kYWxDbG9zZURpcmVjdGl2ZSxcbiAgICBFY2xNb2RhbFRyaWdnZXJEaXJlY3RpdmUsXG5dO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgRWNsSWNvbkNvbXBvbmVudE1vZHVsZSwgRWNsQnV0dG9uQ29tcG9uZW50TW9kdWxlXSxcbiAgICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UU10sXG4gICAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UU10sXG59KVxuZXhwb3J0IGNsYXNzIEVjbE1vZGFsQ29tcG9uZW50TW9kdWxlIHt9XG4iXX0=
@@ -9,17 +9,8 @@ import * as i4 from "../ecl-link/ecl-link-label.directive";
9
9
  import * as i5 from "@ngx-translate/core";
10
10
  export class EclPaginationItemClickEvent extends EclBaseEvent {
11
11
  }
12
+ // TODO: ecl-pagination-item selector is deprecated and should be removed in v20
12
13
  export class EclPaginationItemComponent extends ECLBaseDirective {
13
- constructor() {
14
- super(...arguments);
15
- this.role = 'listitem';
16
- this.isTruncated = false;
17
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
18
- this.routerLink = null;
19
- this.queryParams = null;
20
- this.queryParamsHandling = null;
21
- this.pageClick = new EventEmitter();
22
- }
23
14
  get cssClasses() {
24
15
  return [
25
16
  super.getCssClasses('ecl-pagination__item'),
@@ -30,6 +21,20 @@ export class EclPaginationItemComponent extends ECLBaseDirective {
30
21
  .join(' ')
31
22
  .trim();
32
23
  }
24
+ constructor(el) {
25
+ super();
26
+ this.el = el;
27
+ this.role = 'listitem';
28
+ this.isTruncated = false;
29
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
+ this.routerLink = null;
31
+ this.queryParams = null;
32
+ this.queryParamsHandling = null;
33
+ this.pageClick = new EventEmitter();
34
+ if (el.nativeElement.tagName.toLowerCase() === 'ecl-pagination-item') {
35
+ console.warn('"ecl-pagination-item" selector is deprecated; use "li[eclPaginationItem]" instead.');
36
+ }
37
+ }
33
38
  get isIconOnly() {
34
39
  return this.isPrevOrNextVisible();
35
40
  }
@@ -65,13 +70,13 @@ export class EclPaginationItemComponent extends ECLBaseDirective {
65
70
  isPrevOrNextVisible() {
66
71
  return this.isPrevious || this.isNext;
67
72
  }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclPaginationItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
69
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EclPaginationItemComponent, selector: "ecl-pagination-item", inputs: { label: "label", ariaLabel: "ariaLabel", pagesCount: "pagesCount", isCurrent: ["isCurrent", "isCurrent", booleanAttribute], isNext: ["isNext", "isNext", booleanAttribute], isPrevious: ["isPrevious", "isPrevious", booleanAttribute], isTruncated: ["isTruncated", "isTruncated", booleanAttribute], routerLink: "routerLink", queryParams: "queryParams", queryParamsHandling: "queryParamsHandling", href: "href" }, outputs: { pageClick: "pageClick" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "class.ecl-pagination__item--truncation": "this.isTruncated" } }, usesInheritance: true, ngImport: i0, template: "@if (!isCurrent && !isTruncated) {\n@if(routerLink){\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\"\n [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n\n@if (!routerLink) {\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\" [attr.href]=\"href\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n}\n\n@else if (isTruncated) {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n}\n@else {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n\n<span class=\"ecl-pagination__text ecl-pagination__text--full\" aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate: { pageNumber: label } }}\n @if(pagesCount) {\n {{ 'ecl.common.OF' | translate}} {{pagesCount}}\n }\n</span>\n}", dependencies: [{ kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: i3.EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }, { kind: "directive", type: i4.EclLinkLabelDirective, selector: "[eclLinkLabel]" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclPaginationItemComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
74
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EclPaginationItemComponent, selector: "ecl-pagination-item, li[eclPaginationItem]", inputs: { label: "label", ariaLabel: "ariaLabel", pagesCount: "pagesCount", isCurrent: ["isCurrent", "isCurrent", booleanAttribute], isNext: ["isNext", "isNext", booleanAttribute], isPrevious: ["isPrevious", "isPrevious", booleanAttribute], isTruncated: ["isTruncated", "isTruncated", booleanAttribute], routerLink: "routerLink", queryParams: "queryParams", queryParamsHandling: "queryParamsHandling", href: "href" }, outputs: { pageClick: "pageClick" }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "class.ecl-pagination__item--truncation": "this.isTruncated" } }, usesInheritance: true, ngImport: i0, template: "@if (!isCurrent && !isTruncated) {\n@if(routerLink){\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\"\n [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n\n@if (!routerLink) {\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\" [attr.href]=\"href\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n}\n\n@else if (isTruncated) {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n}\n@else {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n\n<span class=\"ecl-pagination__text ecl-pagination__text--full\" aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate: { pageNumber: label } }}\n @if(pagesCount) {\n {{ 'ecl.common.OF' | translate}} {{pagesCount}}\n }\n</span>\n}", dependencies: [{ kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i2.EclIconComponent, selector: "ecl-icon", inputs: ["iconSet", "icon", "size", "color", "transform", "ariaLabelledby", "role", "title", "ariaHidden", "focusable", "isFlipHorizontal"] }, { kind: "directive", type: i3.EclLinkDirective, selector: "[eclLink]", inputs: ["isInverted", "isIconOnly", "isNoVisited", "variant"] }, { kind: "directive", type: i4.EclLinkLabelDirective, selector: "[eclLinkLabel]" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
70
75
  }
71
76
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EclPaginationItemComponent, decorators: [{
72
77
  type: Component,
73
- args: [{ selector: 'ecl-pagination-item', encapsulation: ViewEncapsulation.None, template: "@if (!isCurrent && !isTruncated) {\n@if(routerLink){\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\"\n [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n\n@if (!routerLink) {\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\" [attr.href]=\"href\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n}\n\n@else if (isTruncated) {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n}\n@else {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n\n<span class=\"ecl-pagination__text ecl-pagination__text--full\" aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate: { pageNumber: label } }}\n @if(pagesCount) {\n {{ 'ecl.common.OF' | translate}} {{pagesCount}}\n }\n</span>\n}" }]
74
- }], propDecorators: { cssClasses: [{
78
+ args: [{ selector: 'ecl-pagination-item, li[eclPaginationItem]', encapsulation: ViewEncapsulation.None, template: "@if (!isCurrent && !isTruncated) {\n@if(routerLink){\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\"\n [routerLink]=\"routerLink\" [queryParams]=\"queryParams\" [queryParamsHandling]=\"queryParamsHandling\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n\n@if (!routerLink) {\n<a eclLink [isIconOnly]=\"isIconOnly\" (keydown.enter)=\"onPageClick($event)\" (click)=\"onPageClick($event)\" variant=\"standalone\"\n attr.aria-label=\"{{ ariaLabel || geti18nPageAriaLabelKey() | translate: { pageNumber: label } }}\" [attr.href]=\"href\"\n class=\"ecl-pagination__link eui-ecl-u-cursor-pointer\" tabindex=\"{{tabindex ? tabindex : 0}}\">\n @if (isPrevious) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-270\"></ecl-icon>\n }\n <span eclLinkLabel>{{ label || geti18nPageLabelKey() | translate }}</span>\n @if (isNext) {\n <ecl-icon icon=\"corner-arrow\" size=\"xs\" transform=\"rotate-90\"></ecl-icon>\n }\n</a>\n}\n}\n\n@else if (isTruncated) {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n}\n@else {\n<span class=\"ecl-pagination__text ecl-pagination__text--summary\" aria-current=\"true\">\n {{ label }}\n</span>\n\n<span class=\"ecl-pagination__text ecl-pagination__text--full\" aria-current=\"true\">\n {{ 'ecl.pagination.PAGE' | translate: { pageNumber: label } }}\n @if(pagesCount) {\n {{ 'ecl.common.OF' | translate}} {{pagesCount}}\n }\n</span>\n}" }]
79
+ }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { cssClasses: [{
75
80
  type: HostBinding,
76
81
  args: ['class']
77
82
  }], role: [{
@@ -109,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
109
114
  }], pageClick: [{
110
115
  type: Output
111
116
  }] } });
112
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6SCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFFekQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLFlBQVk7Q0FBRztBQU9oRSxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsZ0JBQWdCO0lBTGhFOztRQWlCOEIsU0FBSSxHQUFHLFVBQVUsQ0FBQztRQVFtRCxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUNuSCw4REFBOEQ7UUFDckQsZUFBVSxHQUFtQixJQUFJLENBQUM7UUFDbEMsZ0JBQVcsR0FBa0IsSUFBSSxDQUFDO1FBQ2xDLHdCQUFtQixHQUF3QixJQUFJLENBQUM7UUFHL0MsY0FBUyxHQUFHLElBQUksWUFBWSxFQUErQixDQUFDO0tBd0N6RTtJQWxFRyxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQztZQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMvQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUMxRDthQUNJLElBQUksQ0FBQyxHQUFHLENBQUM7YUFDVCxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBa0JELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFVO1FBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksMkJBQTJCLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDYixHQUFHLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDMUIsQ0FBQztJQUNMLENBQUM7SUFFRCx1QkFBdUI7UUFDbkIsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBRWIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcsZ0NBQWdDLENBQUM7UUFDM0MsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3pCLEdBQUcsR0FBRyxnQ0FBZ0MsQ0FBQztRQUMzQyxDQUFDO2FBQU0sQ0FBQztZQUNKLEdBQUcsR0FBRywyQkFBMkIsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBRWIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZCxHQUFHLEdBQUcscUJBQXFCLENBQUM7UUFDaEMsQ0FBQzthQUFNLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3pCLEdBQUcsR0FBRyx5QkFBeUIsQ0FBQztRQUNwQyxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsbUJBQW1CO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDMUMsQ0FBQzsrR0FsRVEsMEJBQTBCO21HQUExQiwwQkFBMEIscUpBaUJmLGdCQUFnQixnQ0FDaEIsZ0JBQWdCLDRDQUNoQixnQkFBZ0IsK0NBQ2hCLGdCQUFnQix1VkNoQ3hDLDJnRUErQ0M7OzRGRG5DWSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0kscUJBQXFCLGlCQUVoQixpQkFBaUIsQ0FBQyxJQUFJOzhCQUlqQyxVQUFVO3NCQURiLFdBQVc7dUJBQUMsT0FBTztnQkFXTSxJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVc7Z0JBRWYsS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDa0MsU0FBUztzQkFBaEQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFDRSxNQUFNO3NCQUE3QyxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUNFLFVBQVU7c0JBQWpELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ3lELFdBQVc7c0JBQXpHLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7O3NCQUFHLFdBQVc7dUJBQUMsd0NBQXdDO2dCQUVwRixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgYm9vbGVhbkF0dHJpYnV0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFyYW1zLCBRdWVyeVBhcmFtc0hhbmRsaW5nIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEVjbEJhc2VFdmVudCB9IGZyb20gJy4uLy4uL21vZGVsL2VjbC1iYXNlLmV2ZW50JztcbmltcG9ydCB7IEVDTEJhc2VEaXJlY3RpdmUgfSBmcm9tICcuLi9lY2wtYmFzZS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgY2xhc3MgRWNsUGFnaW5hdGlvbkl0ZW1DbGlja0V2ZW50IGV4dGVuZHMgRWNsQmFzZUV2ZW50IHt9XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLXBhZ2luYXRpb24taXRlbScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2VjbC1wYWdpbmF0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEVjbFBhZ2luYXRpb25JdGVtQ29tcG9uZW50IGV4dGVuZHMgRUNMQmFzZURpcmVjdGl2ZSB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2VjbC1wYWdpbmF0aW9uX19pdGVtJyksXG4gICAgICAgICAgICB0aGlzLmlzQ3VycmVudCA/ICdlY2wtcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCcgOiAnJyxcbiAgICAgICAgICAgIHRoaXMuaXNOZXh0ID8gJ2VjbC1wYWdpbmF0aW9uX19pdGVtLS1uZXh0JyA6ICcnLFxuICAgICAgICAgICAgdGhpcy5pc1ByZXZpb3VzID8gJ2VjbC1wYWdpbmF0aW9uX19pdGVtLS1wcmV2aW91cycgOiAnJyxcbiAgICAgICAgXVxuICAgICAgICAgICAgLmpvaW4oJyAnKVxuICAgICAgICAgICAgLnRyaW0oKTtcbiAgICB9XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKSByb2xlID0gJ2xpc3RpdGVtJztcblxuICAgIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XG4gICAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG4gICAgQElucHV0KCkgcGFnZXNDb3VudDogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBpc0N1cnJlbnQ6IGJvb2xlYW47XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGlzTmV4dDogYm9vbGVhbjtcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgaXNQcmV2aW91czogYm9vbGVhbjtcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgQEhvc3RCaW5kaW5nKCdjbGFzcy5lY2wtcGFnaW5hdGlvbl9faXRlbS0tdHJ1bmNhdGlvbicpIGlzVHJ1bmNhdGVkID0gZmFsc2U7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBASW5wdXQoKSByb3V0ZXJMaW5rOiBzdHJpbmcgfCBhbnlbXSA9IG51bGw7XG4gICAgQElucHV0KCkgcXVlcnlQYXJhbXM6IFBhcmFtcyB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIHF1ZXJ5UGFyYW1zSGFuZGxpbmc6IFF1ZXJ5UGFyYW1zSGFuZGxpbmcgPSBudWxsO1xuICAgIEBJbnB1dCgpIGhyZWY6IHN0cmluZztcblxuICAgIEBPdXRwdXQoKSBwYWdlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEVjbFBhZ2luYXRpb25JdGVtQ2xpY2tFdmVudD4oKTtcblxuICAgIGdldCBpc0ljb25Pbmx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1ByZXZPck5leHRWaXNpYmxlKCk7XG4gICAgfVxuXG4gICAgb25QYWdlQ2xpY2soZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhZ2VDbGljay5uZXh0KG5ldyBFY2xQYWdpbmF0aW9uSXRlbUNsaWNrRXZlbnQoKSk7XG4gICAgICAgIGlmICghdGhpcy5ocmVmKSB7XG4gICAgICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRpMThuUGFnZUFyaWFMYWJlbEtleSgpOiBzdHJpbmcge1xuICAgICAgICBsZXQga2V5ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOZXh0KSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uR08tVE8tTkVYVC1QQUdFJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzUHJldmlvdXMpIHtcbiAgICAgICAgICAgIGtleSA9ICdlY2wucGFnaW5hdGlvbi5HTy1UTy1QUkVWLVBBR0UnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAga2V5ID0gJ2VjbC5wYWdpbmF0aW9uLkdPLVRPLVBBR0UnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgfVxuXG4gICAgZ2V0aTE4blBhZ2VMYWJlbEtleSgpOiBzdHJpbmcge1xuICAgICAgICBsZXQga2V5ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOZXh0KSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uTkVYVCc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1ByZXZpb3VzKSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uUFJFVklPVVMnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgfVxuXG4gICAgaXNQcmV2T3JOZXh0VmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNQcmV2aW91cyB8fCB0aGlzLmlzTmV4dDtcbiAgICB9XG59XG4iLCJAaWYgKCFpc0N1cnJlbnQgJiYgIWlzVHJ1bmNhdGVkKSB7XG5AaWYocm91dGVyTGluayl7XG48YSBlY2xMaW5rIFtpc0ljb25Pbmx5XT1cImlzSWNvbk9ubHlcIiAoa2V5ZG93bi5lbnRlcik9XCJvblBhZ2VDbGljaygkZXZlbnQpXCIgKGNsaWNrKT1cIm9uUGFnZUNsaWNrKCRldmVudClcIiB2YXJpYW50PVwic3RhbmRhbG9uZVwiXG4gICAgYXR0ci5hcmlhLWxhYmVsPVwie3sgYXJpYUxhYmVsIHx8IGdldGkxOG5QYWdlQXJpYUxhYmVsS2V5KCkgfCB0cmFuc2xhdGU6IHsgcGFnZU51bWJlcjogbGFiZWwgfSB9fVwiXG4gICAgW3JvdXRlckxpbmtdPVwicm91dGVyTGlua1wiIFtxdWVyeVBhcmFtc109XCJxdWVyeVBhcmFtc1wiIFtxdWVyeVBhcmFtc0hhbmRsaW5nXT1cInF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxuICAgIGNsYXNzPVwiZWNsLXBhZ2luYXRpb25fX2xpbmsgZXVpLWVjbC11LWN1cnNvci1wb2ludGVyXCIgdGFiaW5kZXg9XCJ7e3RhYmluZGV4ID8gdGFiaW5kZXggOiAwfX1cIj5cbiAgICBAaWYgKGlzUHJldmlvdXMpIHtcbiAgICA8ZWNsLWljb24gaWNvbj1cImNvcm5lci1hcnJvd1wiIHNpemU9XCJ4c1wiIHRyYW5zZm9ybT1cInJvdGF0ZS0yNzBcIj48L2VjbC1pY29uPlxuICAgIH1cbiAgICA8c3BhbiBlY2xMaW5rTGFiZWw+e3sgbGFiZWwgfHwgZ2V0aTE4blBhZ2VMYWJlbEtleSgpIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIEBpZiAoaXNOZXh0KSB7XG4gICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj48L2VjbC1pY29uPlxuICAgIH1cbjwvYT5cbn1cblxuQGlmICghcm91dGVyTGluaykge1xuPGEgZWNsTGluayBbaXNJY29uT25seV09XCJpc0ljb25Pbmx5XCIgKGtleWRvd24uZW50ZXIpPVwib25QYWdlQ2xpY2soJGV2ZW50KVwiIChjbGljayk9XCJvblBhZ2VDbGljaygkZXZlbnQpXCIgdmFyaWFudD1cInN0YW5kYWxvbmVcIlxuICAgIGF0dHIuYXJpYS1sYWJlbD1cInt7IGFyaWFMYWJlbCB8fCBnZXRpMThuUGFnZUFyaWFMYWJlbEtleSgpIHwgdHJhbnNsYXRlOiB7IHBhZ2VOdW1iZXI6IGxhYmVsIH0gfX1cIiBbYXR0ci5ocmVmXT1cImhyZWZcIlxuICAgIGNsYXNzPVwiZWNsLXBhZ2luYXRpb25fX2xpbmsgZXVpLWVjbC11LWN1cnNvci1wb2ludGVyXCIgdGFiaW5kZXg9XCJ7e3RhYmluZGV4ID8gdGFiaW5kZXggOiAwfX1cIj5cbiAgICBAaWYgKGlzUHJldmlvdXMpIHtcbiAgICA8ZWNsLWljb24gaWNvbj1cImNvcm5lci1hcnJvd1wiIHNpemU9XCJ4c1wiIHRyYW5zZm9ybT1cInJvdGF0ZS0yNzBcIj48L2VjbC1pY29uPlxuICAgIH1cbiAgICA8c3BhbiBlY2xMaW5rTGFiZWw+e3sgbGFiZWwgfHwgZ2V0aTE4blBhZ2VMYWJlbEtleSgpIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIEBpZiAoaXNOZXh0KSB7XG4gICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj48L2VjbC1pY29uPlxuICAgIH1cbjwvYT5cbn1cbn1cblxuQGVsc2UgaWYgKGlzVHJ1bmNhdGVkKSB7XG48c3BhbiBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX190ZXh0IGVjbC1wYWdpbmF0aW9uX190ZXh0LS1zdW1tYXJ5XCIgYXJpYS1jdXJyZW50PVwidHJ1ZVwiPlxuICAgIHt7IGxhYmVsIH19XG48L3NwYW4+XG59XG5AZWxzZSB7XG48c3BhbiBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX190ZXh0IGVjbC1wYWdpbmF0aW9uX190ZXh0LS1zdW1tYXJ5XCIgYXJpYS1jdXJyZW50PVwidHJ1ZVwiPlxuICAgIHt7IGxhYmVsIH19XG48L3NwYW4+XG5cbjxzcGFuIGNsYXNzPVwiZWNsLXBhZ2luYXRpb25fX3RleHQgZWNsLXBhZ2luYXRpb25fX3RleHQtLWZ1bGxcIiBhcmlhLWN1cnJlbnQ9XCJ0cnVlXCI+XG4gICAge3sgJ2VjbC5wYWdpbmF0aW9uLlBBR0UnIHwgdHJhbnNsYXRlOiB7IHBhZ2VOdW1iZXI6IGxhYmVsIH0gfX1cbiAgICBAaWYocGFnZXNDb3VudCkge1xuICAgIHt7ICdlY2wuY29tbW9uLk9GJyB8IHRyYW5zbGF0ZX19IHt7cGFnZXNDb3VudH19XG4gICAgfVxuPC9zcGFuPlxufSJdfQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvZWNsLXBhZ2luYXRpb24vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7QUFFekQsTUFBTSxPQUFPLDJCQUE0QixTQUFRLFlBQVk7Q0FBRztBQUVoRSxnRkFBZ0Y7QUFNaEYsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQUM1RCxJQUNJLFVBQVU7UUFDVixPQUFPO1lBQ0gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQztZQUMzQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMvQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUMxRDthQUNJLElBQUksQ0FBQyxHQUFHLENBQUM7YUFDVCxJQUFJLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBa0JELFlBQW1CLEVBQWM7UUFDN0IsS0FB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QUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBib29sZWFuQXR0cmlidXRlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQYXJhbXMsIFF1ZXJ5UGFyYW1zSGFuZGxpbmcgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRWNsQmFzZUV2ZW50IH0gZnJvbSAnLi4vLi4vbW9kZWwvZWNsLWJhc2UuZXZlbnQnO1xuaW1wb3J0IHsgRUNMQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4uL2VjbC1iYXNlLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjbGFzcyBFY2xQYWdpbmF0aW9uSXRlbUNsaWNrRXZlbnQgZXh0ZW5kcyBFY2xCYXNlRXZlbnQge31cblxuLy8gVE9ETzogZWNsLXBhZ2luYXRpb24taXRlbSBzZWxlY3RvciBpcyBkZXByZWNhdGVkIGFuZCBzaG91bGQgYmUgcmVtb3ZlZCBpbiB2MjBcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZWNsLXBhZ2luYXRpb24taXRlbSwgbGlbZWNsUGFnaW5hdGlvbkl0ZW1dJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZWNsLXBhZ2luYXRpb24taXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRWNsUGFnaW5hdGlvbkl0ZW1Db21wb25lbnQgZXh0ZW5kcyBFQ0xCYXNlRGlyZWN0aXZlIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZWNsLXBhZ2luYXRpb25fX2l0ZW0nKSxcbiAgICAgICAgICAgIHRoaXMuaXNDdXJyZW50ID8gJ2VjbC1wYWdpbmF0aW9uX19pdGVtLS1jdXJyZW50JyA6ICcnLFxuICAgICAgICAgICAgdGhpcy5pc05leHQgPyAnZWNsLXBhZ2luYXRpb25fX2l0ZW0tLW5leHQnIDogJycsXG4gICAgICAgICAgICB0aGlzLmlzUHJldmlvdXMgPyAnZWNsLXBhZ2luYXRpb25fX2l0ZW0tLXByZXZpb3VzJyA6ICcnLFxuICAgICAgICBdXG4gICAgICAgICAgICAuam9pbignICcpXG4gICAgICAgICAgICAudHJpbSgpO1xuICAgIH1cbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGUgPSAnbGlzdGl0ZW0nO1xuXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcbiAgICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcbiAgICBASW5wdXQoKSBwYWdlc0NvdW50OiBzdHJpbmc7XG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGlzQ3VycmVudDogYm9vbGVhbjtcbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgaXNOZXh0OiBib29sZWFuO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBpc1ByZXZpb3VzOiBib29sZWFuO1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBASG9zdEJpbmRpbmcoJ2NsYXNzLmVjbC1wYWdpbmF0aW9uX19pdGVtLS10cnVuY2F0aW9uJykgaXNUcnVuY2F0ZWQgPSBmYWxzZTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIEBJbnB1dCgpIHJvdXRlckxpbms6IHN0cmluZyB8IGFueVtdID0gbnVsbDtcbiAgICBASW5wdXQoKSBxdWVyeVBhcmFtczogUGFyYW1zIHwgbnVsbCA9IG51bGw7XG4gICAgQElucHV0KCkgcXVlcnlQYXJhbXNIYW5kbGluZzogUXVlcnlQYXJhbXNIYW5kbGluZyA9IG51bGw7XG4gICAgQElucHV0KCkgaHJlZjogc3RyaW5nO1xuXG4gICAgQE91dHB1dCgpIHBhZ2VDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8RWNsUGFnaW5hdGlvbkl0ZW1DbGlja0V2ZW50PigpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIGlmIChlbC5uYXRpdmVFbGVtZW50LnRhZ05hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ2VjbC1wYWdpbmF0aW9uLWl0ZW0nKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ1wiZWNsLXBhZ2luYXRpb24taXRlbVwiIHNlbGVjdG9yIGlzIGRlcHJlY2F0ZWQ7IHVzZSBcImxpW2VjbFBhZ2luYXRpb25JdGVtXVwiIGluc3RlYWQuJyk7XG4gICAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBpc0ljb25Pbmx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1ByZXZPck5leHRWaXNpYmxlKCk7XG4gICAgfVxuXG4gICAgb25QYWdlQ2xpY2soZXZ0OiBFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhZ2VDbGljay5uZXh0KG5ldyBFY2xQYWdpbmF0aW9uSXRlbUNsaWNrRXZlbnQoKSk7XG4gICAgICAgIGlmICghdGhpcy5ocmVmKSB7XG4gICAgICAgICAgICBldnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRpMThuUGFnZUFyaWFMYWJlbEtleSgpOiBzdHJpbmcge1xuICAgICAgICBsZXQga2V5ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOZXh0KSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uR08tVE8tTkVYVC1QQUdFJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzUHJldmlvdXMpIHtcbiAgICAgICAgICAgIGtleSA9ICdlY2wucGFnaW5hdGlvbi5HTy1UTy1QUkVWLVBBR0UnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAga2V5ID0gJ2VjbC5wYWdpbmF0aW9uLkdPLVRPLVBBR0UnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgfVxuXG4gICAgZ2V0aTE4blBhZ2VMYWJlbEtleSgpOiBzdHJpbmcge1xuICAgICAgICBsZXQga2V5ID0gJyc7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNOZXh0KSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uTkVYVCc7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc1ByZXZpb3VzKSB7XG4gICAgICAgICAgICBrZXkgPSAnZWNsLnBhZ2luYXRpb24uUFJFVklPVVMnO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXk7XG4gICAgfVxuXG4gICAgaXNQcmV2T3JOZXh0VmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNQcmV2aW91cyB8fCB0aGlzLmlzTmV4dDtcbiAgICB9XG59XG4iLCJAaWYgKCFpc0N1cnJlbnQgJiYgIWlzVHJ1bmNhdGVkKSB7XG5AaWYocm91dGVyTGluayl7XG48YSBlY2xMaW5rIFtpc0ljb25Pbmx5XT1cImlzSWNvbk9ubHlcIiAoa2V5ZG93bi5lbnRlcik9XCJvblBhZ2VDbGljaygkZXZlbnQpXCIgKGNsaWNrKT1cIm9uUGFnZUNsaWNrKCRldmVudClcIiB2YXJpYW50PVwic3RhbmRhbG9uZVwiXG4gICAgYXR0ci5hcmlhLWxhYmVsPVwie3sgYXJpYUxhYmVsIHx8IGdldGkxOG5QYWdlQXJpYUxhYmVsS2V5KCkgfCB0cmFuc2xhdGU6IHsgcGFnZU51bWJlcjogbGFiZWwgfSB9fVwiXG4gICAgW3JvdXRlckxpbmtdPVwicm91dGVyTGlua1wiIFtxdWVyeVBhcmFtc109XCJxdWVyeVBhcmFtc1wiIFtxdWVyeVBhcmFtc0hhbmRsaW5nXT1cInF1ZXJ5UGFyYW1zSGFuZGxpbmdcIlxuICAgIGNsYXNzPVwiZWNsLXBhZ2luYXRpb25fX2xpbmsgZXVpLWVjbC11LWN1cnNvci1wb2ludGVyXCIgdGFiaW5kZXg9XCJ7e3RhYmluZGV4ID8gdGFiaW5kZXggOiAwfX1cIj5cbiAgICBAaWYgKGlzUHJldmlvdXMpIHtcbiAgICA8ZWNsLWljb24gaWNvbj1cImNvcm5lci1hcnJvd1wiIHNpemU9XCJ4c1wiIHRyYW5zZm9ybT1cInJvdGF0ZS0yNzBcIj48L2VjbC1pY29uPlxuICAgIH1cbiAgICA8c3BhbiBlY2xMaW5rTGFiZWw+e3sgbGFiZWwgfHwgZ2V0aTE4blBhZ2VMYWJlbEtleSgpIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIEBpZiAoaXNOZXh0KSB7XG4gICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj48L2VjbC1pY29uPlxuICAgIH1cbjwvYT5cbn1cblxuQGlmICghcm91dGVyTGluaykge1xuPGEgZWNsTGluayBbaXNJY29uT25seV09XCJpc0ljb25Pbmx5XCIgKGtleWRvd24uZW50ZXIpPVwib25QYWdlQ2xpY2soJGV2ZW50KVwiIChjbGljayk9XCJvblBhZ2VDbGljaygkZXZlbnQpXCIgdmFyaWFudD1cInN0YW5kYWxvbmVcIlxuICAgIGF0dHIuYXJpYS1sYWJlbD1cInt7IGFyaWFMYWJlbCB8fCBnZXRpMThuUGFnZUFyaWFMYWJlbEtleSgpIHwgdHJhbnNsYXRlOiB7IHBhZ2VOdW1iZXI6IGxhYmVsIH0gfX1cIiBbYXR0ci5ocmVmXT1cImhyZWZcIlxuICAgIGNsYXNzPVwiZWNsLXBhZ2luYXRpb25fX2xpbmsgZXVpLWVjbC11LWN1cnNvci1wb2ludGVyXCIgdGFiaW5kZXg9XCJ7e3RhYmluZGV4ID8gdGFiaW5kZXggOiAwfX1cIj5cbiAgICBAaWYgKGlzUHJldmlvdXMpIHtcbiAgICA8ZWNsLWljb24gaWNvbj1cImNvcm5lci1hcnJvd1wiIHNpemU9XCJ4c1wiIHRyYW5zZm9ybT1cInJvdGF0ZS0yNzBcIj48L2VjbC1pY29uPlxuICAgIH1cbiAgICA8c3BhbiBlY2xMaW5rTGFiZWw+e3sgbGFiZWwgfHwgZ2V0aTE4blBhZ2VMYWJlbEtleSgpIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgIEBpZiAoaXNOZXh0KSB7XG4gICAgPGVjbC1pY29uIGljb249XCJjb3JuZXItYXJyb3dcIiBzaXplPVwieHNcIiB0cmFuc2Zvcm09XCJyb3RhdGUtOTBcIj48L2VjbC1pY29uPlxuICAgIH1cbjwvYT5cbn1cbn1cblxuQGVsc2UgaWYgKGlzVHJ1bmNhdGVkKSB7XG48c3BhbiBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX190ZXh0IGVjbC1wYWdpbmF0aW9uX190ZXh0LS1zdW1tYXJ5XCIgYXJpYS1jdXJyZW50PVwidHJ1ZVwiPlxuICAgIHt7IGxhYmVsIH19XG48L3NwYW4+XG59XG5AZWxzZSB7XG48c3BhbiBjbGFzcz1cImVjbC1wYWdpbmF0aW9uX190ZXh0IGVjbC1wYWdpbmF0aW9uX190ZXh0LS1zdW1tYXJ5XCIgYXJpYS1jdXJyZW50PVwidHJ1ZVwiPlxuICAgIHt7IGxhYmVsIH19XG48L3NwYW4+XG5cbjxzcGFuIGNsYXNzPVwiZWNsLXBhZ2luYXRpb25fX3RleHQgZWNsLXBhZ2luYXRpb25fX3RleHQtLWZ1bGxcIiBhcmlhLWN1cnJlbnQ9XCJ0cnVlXCI+XG4gICAge3sgJ2VjbC5wYWdpbmF0aW9uLlBBR0UnIHwgdHJhbnNsYXRlOiB7IHBhZ2VOdW1iZXI6IGxhYmVsIH0gfX1cbiAgICBAaWYocGFnZXNDb3VudCkge1xuICAgIHt7ICdlY2wuY29tbW9uLk9GJyB8IHRyYW5zbGF0ZX19IHt7cGFnZXNDb3VudH19XG4gICAgfVxuPC9zcGFuPlxufSJdfQ==