@eui/components 15.3.4 → 15.3.5-snapshot-1685477682444

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 (29) hide show
  1. package/docs/components/EuiTabsComponent.html +1 -1
  2. package/docs/dependencies.html +2 -2
  3. package/docs/js/menu-wc.js +3 -3
  4. package/docs/js/menu-wc_es5.js +1 -1
  5. package/docs/js/search/search_index.js +2 -2
  6. package/docs/miscellaneous/variables.html +17 -17
  7. package/esm2020/eui-badge/eui-badge.component.mjs +2 -2
  8. package/esm2020/eui-table/eui-table.component.mjs +2 -2
  9. package/esm2020/eui-tabs/eui-tab/eui-tab.component.mjs +2 -2
  10. package/esm2020/eui-tabs/eui-tabs.component.mjs +3 -3
  11. package/esm2020/legacy/ux-tree/ux-tree.component.mjs +1 -4
  12. package/fesm2015/eui-components-eui-badge.mjs +2 -2
  13. package/fesm2015/eui-components-eui-badge.mjs.map +1 -1
  14. package/fesm2015/eui-components-eui-table.mjs +2 -1
  15. package/fesm2015/eui-components-eui-table.mjs.map +1 -1
  16. package/fesm2015/eui-components-eui-tabs.mjs +4 -4
  17. package/fesm2015/eui-components-eui-tabs.mjs.map +1 -1
  18. package/fesm2015/eui-components-legacy-ux-tree.mjs +0 -3
  19. package/fesm2015/eui-components-legacy-ux-tree.mjs.map +1 -1
  20. package/fesm2020/eui-components-eui-badge.mjs +2 -2
  21. package/fesm2020/eui-components-eui-badge.mjs.map +1 -1
  22. package/fesm2020/eui-components-eui-table.mjs +1 -1
  23. package/fesm2020/eui-components-eui-table.mjs.map +1 -1
  24. package/fesm2020/eui-components-eui-tabs.mjs +4 -4
  25. package/fesm2020/eui-components-eui-tabs.mjs.map +1 -1
  26. package/fesm2020/eui-components-legacy-ux-tree.mjs +0 -3
  27. package/fesm2020/eui-components-legacy-ux-tree.mjs.map +1 -1
  28. package/legacy/ux-tree/ux-tree.component.d.ts.map +1 -1
  29. package/package.json +2 -2
@@ -86,10 +86,10 @@
86
86
  <a href="#COMPONENTS" title="packages/eui/packages/components/layout/eui-header/header.module.ts" ><b>COMPONENTS</b>&nbsp;&nbsp;&nbsp;(packages/.../header.module.ts)</a>
87
87
  </li>
88
88
  <li>
89
- <a href="#COMPONENTS" title="packages/eui/packages/components/layout/eui-toolbar/toolbar.module.ts" ><b>COMPONENTS</b>&nbsp;&nbsp;&nbsp;(packages/.../toolbar.module.ts)</a>
89
+ <a href="#COMPONENTS" title="packages/eui/packages/components/layout/eui-user-profile/user-profile.module.ts" ><b>COMPONENTS</b>&nbsp;&nbsp;&nbsp;(packages/.../user-profile.module.ts)</a>
90
90
  </li>
91
91
  <li>
92
- <a href="#COMPONENTS" title="packages/eui/packages/components/layout/eui-user-profile/user-profile.module.ts" ><b>COMPONENTS</b>&nbsp;&nbsp;&nbsp;(packages/.../user-profile.module.ts)</a>
92
+ <a href="#COMPONENTS" title="packages/eui/packages/components/layout/eui-toolbar/toolbar.module.ts" ><b>COMPONENTS</b>&nbsp;&nbsp;&nbsp;(packages/.../toolbar.module.ts)</a>
93
93
  </li>
94
94
  <li>
95
95
  <a href="#COMPONENTS" title="packages/eui/packages/components/layout/eui-app/eui-app-sidebar/sidebar.module.ts" ><b>COMPONENTS</b>&nbsp;&nbsp;&nbsp;(packages/.../sidebar.module.ts)</a>
@@ -863,7 +863,7 @@
863
863
  </tbody>
864
864
  </table>
865
865
  </section>
866
- <h3>packages/eui/packages/components/layout/eui-toolbar/toolbar.module.ts</h3>
866
+ <h3>packages/eui/packages/components/layout/eui-user-profile/user-profile.module.ts</h3>
867
867
  <section>
868
868
  <h3></h3> <table class="table table-sm table-bordered">
869
869
  <tbody>
@@ -884,18 +884,7 @@
884
884
  </tr>
885
885
  <tr>
886
886
  <td class="col-md-4">
887
- <i>Default value : </i><code>[
888
- EuiToolbarComponent,
889
- EuiToolbarItemComponent,
890
- EuiToolbarItemsComponent,
891
- EuiToolbarItemUserProfileComponent,
892
- EuiToolbarItemSearchComponent,
893
- EuiToolbarItemNotificationsComponent,
894
- EuiToolbarLogoComponent,
895
- EuiToolbarAppComponent,
896
- EuiToolbarEnvironmentComponent,
897
- EuiToolbarMenuComponent,
898
- ]</code>
887
+ <i>Default value : </i><code>[EuiUserProfileComponent, EuiUserProfileMenuComponent, EuiUserProfileMenuItemComponent]</code>
899
888
  </td>
900
889
  </tr>
901
890
 
@@ -903,7 +892,7 @@
903
892
  </tbody>
904
893
  </table>
905
894
  </section>
906
- <h3>packages/eui/packages/components/layout/eui-user-profile/user-profile.module.ts</h3>
895
+ <h3>packages/eui/packages/components/layout/eui-toolbar/toolbar.module.ts</h3>
907
896
  <section>
908
897
  <h3></h3> <table class="table table-sm table-bordered">
909
898
  <tbody>
@@ -924,7 +913,18 @@
924
913
  </tr>
925
914
  <tr>
926
915
  <td class="col-md-4">
927
- <i>Default value : </i><code>[EuiUserProfileComponent, EuiUserProfileMenuComponent, EuiUserProfileMenuItemComponent]</code>
916
+ <i>Default value : </i><code>[
917
+ EuiToolbarComponent,
918
+ EuiToolbarItemComponent,
919
+ EuiToolbarItemsComponent,
920
+ EuiToolbarItemUserProfileComponent,
921
+ EuiToolbarItemSearchComponent,
922
+ EuiToolbarItemNotificationsComponent,
923
+ EuiToolbarLogoComponent,
924
+ EuiToolbarAppComponent,
925
+ EuiToolbarEnvironmentComponent,
926
+ EuiToolbarMenuComponent,
927
+ ]</code>
928
928
  </td>
929
929
  </tr>
930
930
 
@@ -22,10 +22,10 @@ export class EuiBadgeComponent extends BaseDirective {
22
22
  }
23
23
  }
24
24
  /** @nocollapse */ EuiBadgeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: EuiBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
25
- /** @nocollapse */ EuiBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: { ariaLabel: ["aria-label", "ariaLabel"] }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "attr.aria-label": "this.ariaLabel" } }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".eui-badge{align-items:center;background-color:var(--eui-base-color-primary-100);border:1px solid rgba(255,255,255,.8);border-radius:var(--eui-base-spacing-2xl);color:var(--eui-base-color-white);display:inline-flex;font-size:var(--eui-base-font-size-s);justify-content:center;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:0 var(--eui-base-spacing-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-icon .eui-badge,.eui-icon-svg .eui-badge{position:absolute;right:-30%;top:-10%;transition:all .3s ease}.eui-button .eui-badge{height:inherit;position:relative;transition:all .3s ease}.eui-badge--rounded{border-radius:var(--eui-base-spacing-m)}.eui-badge--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-badge--secondary{background-color:var(--eui-base-color-grey-75);color:var(--eui-base-color-white)}.eui-badge--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-badge--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-badge--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-badge--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-badge--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}.eui-badge--size-s{font-size:var(--eui-base-font-size-xs);height:var(--eui-base-spacing-m);min-width:var(--eui-base-spacing-m)}.eui-badge--size-m{font-size:var(--eui-base-font-size-s);height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs))}.eui-badge--size-l{font-size:var(--eui-base-font-size-l);height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:0 var(--eui-base-spacing-2xs)}.eui-badge--size-xl{font-size:var(--eui-base-font-size-xl);height:var(--eui-base-spacing-xl);min-width:var(--eui-base-spacing-xl);padding:0 var(--eui-base-spacing-xs)}.eui-badge--size-2xl{font-size:var(--eui-base-font-size-2xl);height:var(--eui-base-spacing-2xl);min-width:var(--eui-base-spacing-2xl);padding:0 var(--eui-base-spacing-s)}.eui-icon--size-s .eui-badge{right:-50%;top:-30%}.eui-icon--size-s .eui-badge--size-s{right:-25%;top:-25%}.eui-icon--size-s .eui-badge--size-m{right:-40%;top:-35%}.eui-icon--size-s .eui-badge--size-l,.eui-icon--size-s .eui-badge--size-xl{right:0%;top:0%}.eui-icon--size-m .eui-badge,.eui-icon--size-m .eui-badge--size-s{right:-20%;top:-10%}.eui-icon--size-m .eui-badge--size-m{right:-35%;top:-20%}.eui-icon--size-m .eui-badge--size-l,.eui-icon--size-m .eui-badge--size-xl,.eui-icon--size-l .eui-badge,.eui-icon--size-l .eui-badge--size-s{right:0%;top:0%}.eui-icon--size-l .eui-badge--size-m{right:-15%;top:-10%}.eui-icon--size-l .eui-badge--size-l{right:-25%;top:-15%}.eui-icon--size-l .eui-badge--size-xl{right:-50%;top:-35%}.eui-icon--size-xl .eui-badge{right:5%;top:10%}.eui-icon--size-xl .eui-badge--size-s{right:10%;top:5%}.eui-icon--size-xl .eui-badge--size-m{right:0%;top:0%}.eui-icon--size-xl .eui-badge--size-l{right:-10%;top:-5%}.eui-icon--size-xl .eui-badge--size-xl{right:-30%;top:-15%}.eui-icon--size-2xl .eui-badge{right:10%;top:10%}.eui-icon--size-2xl .eui-badge--size-s{right:15%;top:5%}.eui-icon--size-2xl .eui-badge--size-m{right:5%;top:0%}.eui-icon--size-2xl .eui-badge--size-l{right:0%;top:0%}.eui-icon--size-2xl .eui-badge--size-xl{right:-20%;top:-5%}.eui-icon--size-2xl .eui-badge--size-2xl{right:-40%;top:-15%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
25
+ /** @nocollapse */ EuiBadgeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: { ariaLabel: ["aria-label", "ariaLabel"] }, host: { properties: { "class": "this.cssClasses", "attr.role": "this.role", "attr.aria-label": "this.ariaLabel" } }, usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".eui-badge{align-items:center;background-color:var(--eui-base-color-primary-100);border:1px solid rgba(255,255,255,.8);border-radius:var(--eui-base-spacing-2xl);color:var(--eui-base-color-white);display:inline-flex;font-size:var(--eui-base-font-size-s);justify-content:center;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:0 var(--eui-base-spacing-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-icon .eui-badge,.eui-icon-svg .eui-badge{position:absolute;right:-30%;top:-10%;transition:all .3s ease}.eui-button .eui-badge{height:inherit;position:relative;transition:all .3s ease}.eui-badge--rounded{border-radius:var(--eui-base-spacing-m)}.eui-badge--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-badge--secondary{background-color:var(--eui-base-color-grey-75);color:var(--eui-base-color-white)}.eui-badge--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-badge--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-badge--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-badge--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-badge--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}.eui-badge--outline.eui-badge--primary{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-primary-100)}.eui-badge--outline.eui-badge--secondary{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-100);color:var(--eui-base-color-grey-100)}.eui-badge--outline.eui-badge--info{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-info-100);color:var(--eui-base-color-info-100)}.eui-badge--outline.eui-badge--success{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-success-100);color:var(--eui-base-color-success-100)}.eui-badge--outline.eui-badge--warning{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-warning-100);color:var(--eui-base-color-warning-140)}.eui-badge--outline.eui-badge--danger{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-danger-100);color:var(--eui-base-color-danger-100)}.eui-badge--outline.eui-badge--accent{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-accent-100);color:var(--eui-base-color-grey-100)}.eui-badge--size-s{font-size:var(--eui-base-font-size-xs);height:var(--eui-base-spacing-m);min-width:var(--eui-base-spacing-m)}.eui-badge--size-m{font-size:var(--eui-base-font-size-s);height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs))}.eui-badge--size-l{font-size:var(--eui-base-font-size-l);height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:0 var(--eui-base-spacing-2xs)}.eui-badge--size-xl{font-size:var(--eui-base-font-size-xl);height:var(--eui-base-spacing-xl);min-width:var(--eui-base-spacing-xl);padding:0 var(--eui-base-spacing-xs)}.eui-badge--size-2xl{font-size:var(--eui-base-font-size-2xl);height:var(--eui-base-spacing-2xl);min-width:var(--eui-base-spacing-2xl);padding:0 var(--eui-base-spacing-s)}.eui-icon--size-s .eui-badge{right:-50%;top:-30%}.eui-icon--size-s .eui-badge--size-s{right:-25%;top:-25%}.eui-icon--size-s .eui-badge--size-m{right:-40%;top:-35%}.eui-icon--size-s .eui-badge--size-l,.eui-icon--size-s .eui-badge--size-xl{right:0%;top:0%}.eui-icon--size-m .eui-badge,.eui-icon--size-m .eui-badge--size-s{right:-20%;top:-10%}.eui-icon--size-m .eui-badge--size-m{right:-35%;top:-20%}.eui-icon--size-m .eui-badge--size-l,.eui-icon--size-m .eui-badge--size-xl,.eui-icon--size-l .eui-badge,.eui-icon--size-l .eui-badge--size-s{right:0%;top:0%}.eui-icon--size-l .eui-badge--size-m{right:-15%;top:-10%}.eui-icon--size-l .eui-badge--size-l{right:-25%;top:-15%}.eui-icon--size-l .eui-badge--size-xl{right:-50%;top:-35%}.eui-icon--size-xl .eui-badge{right:5%;top:10%}.eui-icon--size-xl .eui-badge--size-s{right:10%;top:5%}.eui-icon--size-xl .eui-badge--size-m{right:0%;top:0%}.eui-icon--size-xl .eui-badge--size-l{right:-10%;top:-5%}.eui-icon--size-xl .eui-badge--size-xl{right:-30%;top:-15%}.eui-icon--size-2xl .eui-badge{right:10%;top:10%}.eui-icon--size-2xl .eui-badge--size-s{right:15%;top:5%}.eui-icon--size-2xl .eui-badge--size-m{right:5%;top:0%}.eui-icon--size-2xl .eui-badge--size-l{right:0%;top:0%}.eui-icon--size-2xl .eui-badge--size-xl{right:-20%;top:-5%}.eui-icon--size-2xl .eui-badge--size-2xl{right:-40%;top:-15%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: EuiBadgeComponent, decorators: [{
27
27
  type: Component,
28
- args: [{ selector: 'div[euiBadge], span[euiBadge], eui-badge', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".eui-badge{align-items:center;background-color:var(--eui-base-color-primary-100);border:1px solid rgba(255,255,255,.8);border-radius:var(--eui-base-spacing-2xl);color:var(--eui-base-color-white);display:inline-flex;font-size:var(--eui-base-font-size-s);justify-content:center;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:0 var(--eui-base-spacing-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-icon .eui-badge,.eui-icon-svg .eui-badge{position:absolute;right:-30%;top:-10%;transition:all .3s ease}.eui-button .eui-badge{height:inherit;position:relative;transition:all .3s ease}.eui-badge--rounded{border-radius:var(--eui-base-spacing-m)}.eui-badge--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-badge--secondary{background-color:var(--eui-base-color-grey-75);color:var(--eui-base-color-white)}.eui-badge--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-badge--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-badge--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-badge--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-badge--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}.eui-badge--size-s{font-size:var(--eui-base-font-size-xs);height:var(--eui-base-spacing-m);min-width:var(--eui-base-spacing-m)}.eui-badge--size-m{font-size:var(--eui-base-font-size-s);height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs))}.eui-badge--size-l{font-size:var(--eui-base-font-size-l);height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:0 var(--eui-base-spacing-2xs)}.eui-badge--size-xl{font-size:var(--eui-base-font-size-xl);height:var(--eui-base-spacing-xl);min-width:var(--eui-base-spacing-xl);padding:0 var(--eui-base-spacing-xs)}.eui-badge--size-2xl{font-size:var(--eui-base-font-size-2xl);height:var(--eui-base-spacing-2xl);min-width:var(--eui-base-spacing-2xl);padding:0 var(--eui-base-spacing-s)}.eui-icon--size-s .eui-badge{right:-50%;top:-30%}.eui-icon--size-s .eui-badge--size-s{right:-25%;top:-25%}.eui-icon--size-s .eui-badge--size-m{right:-40%;top:-35%}.eui-icon--size-s .eui-badge--size-l,.eui-icon--size-s .eui-badge--size-xl{right:0%;top:0%}.eui-icon--size-m .eui-badge,.eui-icon--size-m .eui-badge--size-s{right:-20%;top:-10%}.eui-icon--size-m .eui-badge--size-m{right:-35%;top:-20%}.eui-icon--size-m .eui-badge--size-l,.eui-icon--size-m .eui-badge--size-xl,.eui-icon--size-l .eui-badge,.eui-icon--size-l .eui-badge--size-s{right:0%;top:0%}.eui-icon--size-l .eui-badge--size-m{right:-15%;top:-10%}.eui-icon--size-l .eui-badge--size-l{right:-25%;top:-15%}.eui-icon--size-l .eui-badge--size-xl{right:-50%;top:-35%}.eui-icon--size-xl .eui-badge{right:5%;top:10%}.eui-icon--size-xl .eui-badge--size-s{right:10%;top:5%}.eui-icon--size-xl .eui-badge--size-m{right:0%;top:0%}.eui-icon--size-xl .eui-badge--size-l{right:-10%;top:-5%}.eui-icon--size-xl .eui-badge--size-xl{right:-30%;top:-15%}.eui-icon--size-2xl .eui-badge{right:10%;top:10%}.eui-icon--size-2xl .eui-badge--size-s{right:15%;top:5%}.eui-icon--size-2xl .eui-badge--size-m{right:5%;top:0%}.eui-icon--size-2xl .eui-badge--size-l{right:0%;top:0%}.eui-icon--size-2xl .eui-badge--size-xl{right:-20%;top:-5%}.eui-icon--size-2xl .eui-badge--size-2xl{right:-40%;top:-15%}\n"] }]
28
+ args: [{ selector: 'div[euiBadge], span[euiBadge], eui-badge', template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".eui-badge{align-items:center;background-color:var(--eui-base-color-primary-100);border:1px solid rgba(255,255,255,.8);border-radius:var(--eui-base-spacing-2xl);color:var(--eui-base-color-white);display:inline-flex;font-size:var(--eui-base-font-size-s);justify-content:center;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));padding:0 var(--eui-base-spacing-2xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-icon .eui-badge,.eui-icon-svg .eui-badge{position:absolute;right:-30%;top:-10%;transition:all .3s ease}.eui-button .eui-badge{height:inherit;position:relative;transition:all .3s ease}.eui-badge--rounded{border-radius:var(--eui-base-spacing-m)}.eui-badge--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-badge--secondary{background-color:var(--eui-base-color-grey-75);color:var(--eui-base-color-white)}.eui-badge--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-badge--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-badge--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-badge--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-badge--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}.eui-badge--outline.eui-badge--primary{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-primary-100)}.eui-badge--outline.eui-badge--secondary{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-100);color:var(--eui-base-color-grey-100)}.eui-badge--outline.eui-badge--info{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-info-100);color:var(--eui-base-color-info-100)}.eui-badge--outline.eui-badge--success{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-success-100);color:var(--eui-base-color-success-100)}.eui-badge--outline.eui-badge--warning{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-warning-100);color:var(--eui-base-color-warning-140)}.eui-badge--outline.eui-badge--danger{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-danger-100);color:var(--eui-base-color-danger-100)}.eui-badge--outline.eui-badge--accent{background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-accent-100);color:var(--eui-base-color-grey-100)}.eui-badge--size-s{font-size:var(--eui-base-font-size-xs);height:var(--eui-base-spacing-m);min-width:var(--eui-base-spacing-m)}.eui-badge--size-m{font-size:var(--eui-base-font-size-s);height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));min-width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs))}.eui-badge--size-l{font-size:var(--eui-base-font-size-l);height:var(--eui-base-spacing-l);min-width:var(--eui-base-spacing-l);padding:0 var(--eui-base-spacing-2xs)}.eui-badge--size-xl{font-size:var(--eui-base-font-size-xl);height:var(--eui-base-spacing-xl);min-width:var(--eui-base-spacing-xl);padding:0 var(--eui-base-spacing-xs)}.eui-badge--size-2xl{font-size:var(--eui-base-font-size-2xl);height:var(--eui-base-spacing-2xl);min-width:var(--eui-base-spacing-2xl);padding:0 var(--eui-base-spacing-s)}.eui-icon--size-s .eui-badge{right:-50%;top:-30%}.eui-icon--size-s .eui-badge--size-s{right:-25%;top:-25%}.eui-icon--size-s .eui-badge--size-m{right:-40%;top:-35%}.eui-icon--size-s .eui-badge--size-l,.eui-icon--size-s .eui-badge--size-xl{right:0%;top:0%}.eui-icon--size-m .eui-badge,.eui-icon--size-m .eui-badge--size-s{right:-20%;top:-10%}.eui-icon--size-m .eui-badge--size-m{right:-35%;top:-20%}.eui-icon--size-m .eui-badge--size-l,.eui-icon--size-m .eui-badge--size-xl,.eui-icon--size-l .eui-badge,.eui-icon--size-l .eui-badge--size-s{right:0%;top:0%}.eui-icon--size-l .eui-badge--size-m{right:-15%;top:-10%}.eui-icon--size-l .eui-badge--size-l{right:-25%;top:-15%}.eui-icon--size-l .eui-badge--size-xl{right:-50%;top:-35%}.eui-icon--size-xl .eui-badge{right:5%;top:10%}.eui-icon--size-xl .eui-badge--size-s{right:10%;top:5%}.eui-icon--size-xl .eui-badge--size-m{right:0%;top:0%}.eui-icon--size-xl .eui-badge--size-l{right:-10%;top:-5%}.eui-icon--size-xl .eui-badge--size-xl{right:-30%;top:-15%}.eui-icon--size-2xl .eui-badge{right:10%;top:10%}.eui-icon--size-2xl .eui-badge--size-s{right:15%;top:5%}.eui-icon--size-2xl .eui-badge--size-m{right:5%;top:0%}.eui-icon--size-2xl .eui-badge--size-l{right:0%;top:0%}.eui-icon--size-2xl .eui-badge--size-xl{right:-20%;top:-5%}.eui-icon--size-2xl .eui-badge--size-2xl{right:-40%;top:-15%}\n"] }]
29
29
  }], ctorParameters: function () { return []; }, propDecorators: { cssClasses: [{
30
30
  type: HostBinding,
31
31
  args: ['class']
@@ -197,7 +197,7 @@ export class EuiTableComponent extends BaseDirective {
197
197
  const timeout = this.stickyFeatureHandlerIndex === 0 ? 250 : 0;
198
198
  setTimeout(() => {
199
199
  const trItems = Array.from(this.tbodyRef.nativeElement.querySelectorAll('tr'));
200
- const containerWidth = this.elementRef.nativeElement.parentElement.clientWidth;
200
+ const containerWidth = this.elementRef.nativeElement?.parentElement.clientWidth || 0;
201
201
  if (this.theadRef) {
202
202
  const thItems = Array.from(this.theadRef.nativeElement.querySelectorAll('.eui-table__col--sticky'));
203
203
  // Reset left & right position
@@ -416,4 +416,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImpor
416
416
  type: HostBinding,
417
417
  args: ['class']
418
418
  }] } });
419
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2V1aS10YWJsZS9ldWktdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLXRhYmxlL2V1aS10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBSUwsTUFBTSxFQUlOLFNBQVMsRUFDVCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBRTVFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUd4RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7QUFXM0YsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWE7SUF3R2hELFlBQ1ksbUJBQXdDLEVBQ3hDLEVBQXFCLEVBQ3JCLDRCQUEwRCxFQUMxRCxVQUFzQjtRQUU5QixLQUFLLEVBQUUsQ0FBQztRQUxBLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtRQUMxRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBMUd6QixXQUFNLEdBQUcsSUFB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LGFBQWE7c0JBRGhCLEtBQUs7Z0JBS0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQUtGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBS0YsZUFBZTtzQkFEbEIsS0FBSztnQkFLRixnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBYUYsVUFBVTtzQkFEYixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcblxuaW1wb3J0IHsgRXVpVGVtcGxhdGVEaXJlY3RpdmUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZGlyZWN0aXZlcyc7XG5pbXBvcnQgeyBCYXNlRGlyZWN0aXZlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL3NoYXJlZCc7XG5pbXBvcnQgeyBFdWlQYWdpbmF0b3JDb21wb25lbnQgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLXBhZ2luYXRvcic7XG5cbmltcG9ydCB7IEV1aVRhYmxlU29ydFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2V1aS10YWJsZS1zb3J0LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGFnaW5hdGlvbkV2ZW50IH0gZnJvbSAnLi9tb2RlbHMvcGFnaW5hdGlvbi1ldmVudC5tb2RlbCc7XG5pbXBvcnQgeyBFdWlUYWJsZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZmlsdGVyL2V1aS10YWJsZS1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2V1aS10YWJsZS1zZWxlY3RhYmxlLXJvdy5zZXJ2aWNlJztcbmltcG9ydCB7IFNvcnRFdmVudCB9IGZyb20gJy4vbW9kZWxzL3NvcnQtZXZlbnQubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V1aS10YWJsZSwgdGFibGVbZXVpVGFibGVdJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXVpLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0V1aVRhYmxlU29ydFNlcnZpY2UsIEV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlUYWJsZUNvbXBvbmVudCBleHRlbmRzIEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSByb3dzOiBhbnlbXTtcbiAgICBASW5wdXQoKSBwcm9wSWQgPSAnaWQnO1xuICAgIEBJbnB1dCgpIHBhZ2luYXRvcjogRXVpUGFnaW5hdG9yQ29tcG9uZW50O1xuICAgIEBJbnB1dCgpIGZpbHRlcjogRXVpVGFibGVGaWx0ZXJDb21wb25lbnQ7XG4gICAgQElucHV0KCkgcHJlc2VsZWN0ZWRSb3dzOiBhbnlbXSA9IFtdO1xuICAgIC8qKiBAZGVwcmVjYXRlZCBTaW5jZSBldWktdGFibGUgdXNlcyBuYXRpdmUgQ1NTIHBvc2l0aW9uIHN0aWNreSwgcGFzc2luZyB0aGUgcmVmZXJlbmNlIG9mIGNvbnRhaW5lciBpcyBubyBsb25nZXIgbmVlZGVkLlxuICAgICAqIEl0IHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgZnV0dXJlIHZlcnNpb24gb2YgZVVJXG4gICAgICogKi9cbiAgICBASW5wdXQoKSBzY3JvbGxhYmxlQ29udGFpbmVyUmVmOiBFbGVtZW50O1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIHN0cmluZyA9ICdldWktdGFibGUnO1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZXVpLXRhYmxlX19sb2FkaW5nJykgZ2V0IGhhc0xvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRpbmc7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpIHNlbGVjdGVkUm93cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XG4gICAgQE91dHB1dCgpIHNvcnRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNvcnRFdmVudD4oKTtcblxuICAgIHB1YmxpYyBoZWFkZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwdWJsaWMgYm9keVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIHB1YmxpYyBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwdWJsaWMgZW1wdHlNZXNzYWdlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcHVibGljIHJvd3NSZW5kZXJlZDogYW55W10gPSBbXTtcblxuICAgIHB1YmxpYyBwYWdlID0gMDtcbiAgICBwdWJsaWMgcGFnZVNpemUgPSAwO1xuICAgIHB1YmxpYyBzaG93U3RpY2t5SGVhZGVyID0gZmFsc2U7XG4gICAgcHVibGljIGZpbHRlcmVkUm93cyA9IFtdO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihFdWlUZW1wbGF0ZURpcmVjdGl2ZSkgdGVtcGxhdGVzOiBRdWVyeUxpc3Q8RXVpVGVtcGxhdGVEaXJlY3RpdmU+O1xuXG4gICAgQFZpZXdDaGlsZCgndGhlYWRSZWYnKSB0aGVhZFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gICAgQFZpZXdDaGlsZCgndGJvZHlSZWYnKSB0Ym9keVJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBwcmV0dGllci9wcmV0dGllciAqL1xuICAgIEBJbnB1dCgpIGdldCBsb2FkaW5nKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fbG9hZGluZzsgfVxuICAgIHNldCBsb2FkaW5nKHZhbHVlOiBCb29sZWFuSW5wdXQpIHsgdGhpcy5fbG9hZGluZyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgICBwcml2YXRlIF9sb2FkaW5nID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgYXN5bmNUYWJsZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2FzeW5jVGFibGU7IH1cbiAgICBzZXQgYXN5bmNUYWJsZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2FzeW5jVGFibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfYXN5bmNUYWJsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHBhZ2luYWJsZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX3BhZ2luYWJsZTsgfVxuICAgIHNldCBwYWdpbmFibGUodmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9wYWdpbmFibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfcGFnaW5hYmxlID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVGFibGVSZXNwb25zaXZlKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZXVpVGFibGVSZXNwb25zaXZlOyB9XG4gICAgc2V0IGV1aVRhYmxlUmVzcG9uc2l2ZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2V1aVRhYmxlUmVzcG9uc2l2ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgICBwcml2YXRlIF9ldWlUYWJsZVJlc3BvbnNpdmUgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBldWlUYWJsZUZpeGVkTGF5b3V0KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZXVpVGFibGVGaXhlZExheW91dDsgfVxuICAgIHNldCBldWlUYWJsZUZpeGVkTGF5b3V0KHZhbHVlOiBCb29sZWFuSW5wdXQpIHsgdGhpcy5fZXVpVGFibGVGaXhlZExheW91dCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgICBwcml2YXRlIF9ldWlUYWJsZUZpeGVkTGF5b3V0ID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVGFibGVEcmFnZ2FibGUoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9ldWlUYWJsZURyYWdnYWJsZTsgfVxuICAgIHNldCBldWlUYWJsZURyYWdnYWJsZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2V1aVRhYmxlRHJhZ2dhYmxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2V1aVRhYmxlRHJhZ2dhYmxlID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVGFibGVDYXJkcygpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2V1aVRhYmxlQ2FyZHM7IH1cbiAgICBzZXQgZXVpVGFibGVDYXJkcyh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2V1aVRhYmxlQ2FyZHMgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfZXVpVGFibGVDYXJkcyA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGV1aVRhYmxlQm9yZGVyZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9ldWlUYWJsZUJvcmRlcmVkOyB9XG4gICAgc2V0IGV1aVRhYmxlQm9yZGVyZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9ldWlUYWJsZUJvcmRlcmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2V1aVRhYmxlQm9yZGVyZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBldWlUYWJsZUNvbXBhY3QoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9ldWlUYWJsZUNvbXBhY3Q7IH1cbiAgICBzZXQgZXVpVGFibGVDb21wYWN0KHZhbHVlOiBCb29sZWFuSW5wdXQpIHsgdGhpcy5fZXVpVGFibGVDb21wYWN0ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2V1aVRhYmxlQ29tcGFjdCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1N0aWNreUhlYWRlcigpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2hhc1N0aWNreUhlYWRlcjsgfVxuICAgIHNldCBoYXNTdGlja3lIZWFkZXIodmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9oYXNTdGlja3lIZWFkZXIgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfaGFzU3RpY2t5SGVhZGVyID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzU3RpY2t5Q29sdW1ucygpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2hhc1N0aWNreUNvbHVtbnM7IH1cbiAgICBzZXQgaGFzU3RpY2t5Q29sdW1ucyh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2hhc1N0aWNreUNvbHVtbnMgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfaGFzU3RpY2t5Q29sdW1ucyA9IGZhbHNlO1xuICAgIC8qIGVzbGludC1lbmFibGUgcHJldHRpZXIvcHJldHRpZXIgKi9cblxuICAgIHByaXZhdGUgcm93c1NyYzogYW55ID0gbnVsbDtcbiAgICBwcml2YXRlIGRlc3Ryb3kkOiBTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICBwcml2YXRlIHRhYmxlRmVhdHVyZXNIYW5kbGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICAgIHByaXZhdGUgc2VsZWN0Um93c0ZlYXR1cmVIYW5kbGVyU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuICAgIHByaXZhdGUgc3RpY2t5RmVhdHVyZUhhbmRsZXJJbmRleCA9IDA7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgICBnZXQgY3NzQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVJlc3BvbnNpdmUgPyBgZXVpLXRhYmxlLS1yZXNwb25zaXZlYCA6IGBgLFxuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZUZpeGVkTGF5b3V0ID8gYGV1aS10YWJsZS0tZml4ZWQtbGF5b3V0YCA6IGBgLFxuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZUJvcmRlcmVkID8gYGV1aS10YWJsZS0tYm9yZGVyZWRgIDogYGAsXG4gICAgICAgICAgICB0aGlzLmV1aVRhYmxlQ29tcGFjdCA/IGBldWktdGFibGUtLWNvbXBhY3RgIDogYGAsXG4gICAgICAgICAgICB0aGlzLmV1aVRhYmxlRHJhZ2dhYmxlID8gYGV1aS10YWJsZS0tZHJhZ2dhYmxlYCA6IGBgLFxuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZUNhcmRzID8gYGV1aS10YWJsZS1jYXJkc2AgOiBgYCxcbiAgICAgICAgICAgIHRoaXMuaGFzU3RpY2t5SGVhZGVyID8gYGV1aS10YWJsZS0tc3RpY2t5LWhlYWRlcmAgOiBgYCxcbiAgICAgICAgICAgIHRoaXMuaGFzU3RpY2t5Q29sdW1ucyA/IGBldWktdGFibGUtLXN0aWNreS1jb2x1bW5zYCA6IGBgLFxuICAgICAgICAgICAgc3VwZXIuZ2V0Q3NzQ2xhc3NlcygnZXVpLXRhYmxlJyksXG4gICAgICAgIF1cbiAgICAgICAgICAgIC5qb2luKCcgJylcbiAgICAgICAgICAgIC50cmltKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZXVpVGFibGVTb3J0U2VydmljZTogRXVpVGFibGVTb3J0U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgZXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZTogRXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoYzogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2Uuc2V0UHJvcElkKHRoaXMucHJvcElkKTtcbiAgICAgICAgaWYgKGMgJiYgYy5yb3dzICYmIGMucm93cy5maXJzdENoYW5nZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHRoaXMudGFibGVGZWF0dXJlc0hhbmRsZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcblxuICAgICAgICAgICAgLy8gR28gdG8gZmlyc3QgcGFnZSBvbmx5IGlmIGxlbmd0aCBvZiBkYXRhIGhhcyBjaGFuZ2VkLiBUbyBhdm9pZCB1c2VyIHRvIGJlIG9uIGEgcGFnZSB0aGF0IG5vIGxvbmdlciBleGlzdCBpbiBjYXNlIG9mIGZpbHRlcmluZy5cbiAgICAgICAgICAgIGNvbnN0IGxlbmd0aENoYW5nZWQgPSB0aGlzLnJvd3NTcmMubGVuZ3RoICE9PSBjLnJvd3MuY3VycmVudFZhbHVlLmxlbmd0aDtcblxuICAgICAgICAgICAgdGhpcy5yb3dzU3JjID0gWy4uLmMucm93cy5jdXJyZW50VmFsdWVdO1xuICAgICAgICAgICAgaWYgKHRoaXMucGFnaW5hdG9yICYmIGxlbmd0aENoYW5nZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2luYXRvci5nb0ZpcnN0UGFnZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLmFzeW5jVGFibGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UucmVzZXRSb3dzKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLmFkZFJvd3MoYy5yb3dzLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZUZlYXR1cmVzSGFuZGxlcigpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UuYWRkUm93cyhjLnJvd3MuY3VycmVudFZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjICYmIGMucHJlc2VsZWN0ZWRSb3dzICYmIGMucHJlc2VsZWN0ZWRSb3dzLmZpcnN0Q2hhbmdlID09PSBmYWxzZSkge1xuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnNlbGVjdFJvd3ModGhpcy5wcmVzZWxlY3RlZFJvd3MpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGMgJiYgYy5wYWdpbmF0b3I/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5wYWdpbmF0b3Iuc2V0TGVuZ3RoKHRoaXMucm93cy5sZW5ndGgpO1xuICAgICAgICAgICAgaWYgKCFjLnBhZ2luYXRvcj8uaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYWdpbmF0b3IuZ29GaXJzdFBhZ2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHRoaXMucm93cyBjYW4gYmUgY2hhbmdlZCBhbnl0aW1lLCB0aGVuIHRoaXMgZWxzZSBjYW4gYmUgZXhlY3V0ZWQgYXQgdGhhdCB0aW1lLCB0ZXN0aW5nIHRoaXMucGFnaW5hdG9yIGFsbG93cyB0byBtYWtlIHN1cmVcbiAgICAgICAgICAgIC8vIHRoZSB1c2VyIHdoYW50cyB0byBkaXNhYmxlIHBhZ2luYXRpb24gb3IgY2hhbmdlIHRoZSBkYXRhc291cmNlXG4gICAgICAgICAgICBpZiAoIXRoaXMucGFnaW5hdG9yKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yb3dzUmVuZGVyZWQgPSB0aGlzLnJvd3NTcmMgPyB0aGlzLnJvd3NTcmMgOiBbLi4udGhpcy5yb3dzXTtcbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2UgPSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucm93c1NyYyA9IFsuLi50aGlzLnJvd3NdO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmUyZUF0dHIpIHtcbiAgICAgICAgICAgIHRoaXMuZTJlQXR0ciA9ICdldWktdGFibGUnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudGVtcGxhdGVzLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtLmdldFR5cGUoKSA9PT0gJ2hlYWRlcicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhlYWRlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpdGVtLmdldFR5cGUoKSA9PT0gJ2JvZHknKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ib2R5VGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGl0ZW0uZ2V0VHlwZSgpID09PSAnZm9vdGVyJykge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9vdGVyVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGl0ZW0uZ2V0VHlwZSgpID09PSAnZW1wdHlNZXNzYWdlJykge1xuICAgICAgICAgICAgICAgIHRoaXMuZW1wdHlNZXNzYWdlVGVtcGxhdGUgPSBpdGVtLnRlbXBsYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5hc3luY1RhYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlRmVhdHVyZXNIYW5kbGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB0aGlzLnRhYmxlRmVhdHVyZXNIYW5kbGVyKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmV1aVRhYmxlU29ydFNlcnZpY2Uuc29ydGluZ1BhcmFtcyRcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHNvcnRpbmdQYXJhbXM6IHsgc29ydDogc3RyaW5nIHwgbnVsbDsgb3JkZXI6IHN0cmluZyB9KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc29ydENoYW5nZS5lbWl0KHsgc29ydDogc29ydGluZ1BhcmFtcy5zb3J0LCBvcmRlcjogc29ydGluZ1BhcmFtcy5vcmRlciB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2VsZWN0Um93c0ZlYXR1cmVIYW5kbGVyKCk7XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2Uuc2VsZWN0Um93cyh0aGlzLnByZXNlbGVjdGVkUm93cyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IGFueSk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBpbmRleDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2VsZWN0QWxsUm93cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnNlbGVjdEFsbFJvd3MoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdW5zZWxlY3RBbGxSb3dzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UudW5zZWxlY3RBbGxSb3dzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdFJvd3Mocm93czogYW55W10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnNlbGVjdFJvd3Mocm93cyk7XG4gICAgfVxuXG4gICAgcHVibGljIGZpbHRlclJvd3MoZmlsdGVyOiBzdHJpbmcsIHI6IGFueVtdKTogYW55W10ge1xuICAgICAgICBjb25zdCByb3dzID0gZmlsdGVyXG4gICAgICAgICAgICA/IHIuZmlsdGVyKChyb3cpID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IG1hdGNoaW5nID0gdGhpcy5nZXRQcm9wcyhyb3csIGZpbHRlcikuZmlsdGVyKChwKSA9PiBwLm1hdGNoID09PSB0cnVlKTtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBtYXRjaGluZz8ubGVuZ3RoID4gMDtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIDogcjtcblxuICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UucmVzZXRSb3dzKCk7XG4gICAgICAgIHRoaXMuZXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZS5hZGRSb3dzKHJvd3MpO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRSb3dzID0gcm93cztcblxuICAgICAgICByZXR1cm4gcm93cztcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0U29ydChzb3J0OiBzdHJpbmcgfCBudWxsLCBvcmRlcjogJ2FzYycgfCAnZGVzYycgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5zZXRTb3J0KHNvcnQsIG9yZGVyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0aWNreUZlYXR1cmVIYW5kbGVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCB0aW1lb3V0ID0gdGhpcy5zdGlja3lGZWF0dXJlSGFuZGxlckluZGV4ID09PSAwID8gMjUwIDogMDtcblxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHRySXRlbXMgPSBBcnJheS5mcm9tKHRoaXMudGJvZHlSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCd0cicpKTtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5jbGllbnRXaWR0aDtcblxuICAgICAgICAgICAgaWYgKHRoaXMudGhlYWRSZWYpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB0aEl0ZW1zOiBIVE1MVGFibGVDZWxsRWxlbWVudFtdID0gQXJyYXkuZnJvbSh0aGlzLnRoZWFkUmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmV1aS10YWJsZV9fY29sLS1zdGlja3knKSk7XG5cbiAgICAgICAgICAgICAgICAvLyBSZXNldCBsZWZ0ICYgcmlnaHQgcG9zaXRpb25cbiAgICAgICAgICAgICAgICB0aEl0ZW1zLmZvckVhY2goKHRoOiBIVE1MVGFibGVDZWxsRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aC5zdHlsZS5sZWZ0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgdGguc3R5bGUucmlnaHQgPSBudWxsO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgLy8gU3RpY2t5IEZpcnN0IENvbHMgJiBMYXN0IENvbHNcbiAgICAgICAgICAgICAgICBjb25zdCB0aEl0ZW1zU3RpY2t5Rmlyc3RDb2wgPSB0aEl0ZW1zLmZpbHRlcigodGgpID0+IHRoLm9mZnNldExlZnQgKyB0aC5jbGllbnRXaWR0aCA8IGNvbnRhaW5lcldpZHRoKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0aEl0ZW1zU3RpY2t5TGFzdENvbCA9IHRoSXRlbXMuZmlsdGVyKCh0aCkgPT4gdGgub2Zmc2V0TGVmdCArIHRoLmNsaWVudFdpZHRoID4gY29udGFpbmVyV2lkdGgpO1xuXG4gICAgICAgICAgICAgICAgdGhJdGVtc1N0aWNreUZpcnN0Q29sLmZvckVhY2goKHRoLCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoLnN0eWxlLmxlZnQgPSAoaSA9PT0gMCA/IDAgOiB0aEl0ZW1zU3RpY2t5Rmlyc3RDb2xbaSAtIDFdLmNsaWVudFdpZHRoKSArICdweCc7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgKyAxID09PSB0aEl0ZW1zU3RpY2t5Rmlyc3RDb2wubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aC5jbGFzc0xpc3QuYWRkKCdldWktdGFibGVfX2NvbC0tc3RpY2t5LXNoYWRvd2VkLWZpcnN0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHRoSXRlbXNTdGlja3lMYXN0Q29sLnJldmVyc2UoKS5mb3JFYWNoKCh0aCwgaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aC5zdHlsZS5yaWdodCA9IChpID09PSAwID8gMCA6IHRoSXRlbXNTdGlja3lMYXN0Q29sW2kgLSAxXS5jbGllbnRXaWR0aCkgKyAncHgnO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpICsgMSA9PT0gdGhJdGVtc1N0aWNreUxhc3RDb2wubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aC5jbGFzc0xpc3QuYWRkKCdldWktdGFibGVfX2NvbC0tc3RpY2t5LXNoYWRvd2VkLWxhc3QnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ckl0ZW1zLmZvckVhY2goKHRyKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGRJdGVtczogSFRNTFRhYmxlQ2VsbEVsZW1lbnRbXSA9IEFycmF5LmZyb20odHIucXVlcnlTZWxlY3RvckFsbCgnLmV1aS10YWJsZV9fY29sLS1zdGlja3knKSk7XG4gICAgICAgICAgICAgICAgdGRJdGVtcy5mb3JFYWNoKCh0ZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0ZC5zdHlsZS5sZWZ0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgdGQuc3R5bGUucmlnaHQgPSBudWxsO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRySXRlbXMuZm9yRWFjaCgodHIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0ZEl0ZW1zOiBIVE1MVGFibGVDZWxsRWxlbWVudFtdID0gQXJyYXkuZnJvbSh0ci5xdWVyeVNlbGVjdG9yQWxsKCcuZXVpLXRhYmxlX19jb2wtLXN0aWNreScpKTtcblxuICAgICAgICAgICAgICAgIC8vIFN0aWNreSBGaXJzdCBDb2xzXG4gICAgICAgICAgICAgICAgY29uc3QgdGRJdGVtc1N0aWNreUZpcnN0Q29sID0gdGRJdGVtcy5maWx0ZXIoKHRkKSA9PiB0ZC5vZmZzZXRMZWZ0ICsgdGQuY2xpZW50V2lkdGggPCBjb250YWluZXJXaWR0aCk7XG4gICAgICAgICAgICAgICAgdGRJdGVtc1N0aWNreUZpcnN0Q29sLmZvckVhY2goKHRkLCBpKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRkLnN0eWxlLmxlZnQgPSAoaSA9PT0gMCA/IDAgOiB0ZEl0ZW1zU3RpY2t5Rmlyc3RDb2xbaSAtIDFdLmNsaWVudFdpZHRoKSArICdweCc7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGkgKyAxID09PSB0ZEl0ZW1zU3RpY2t5Rmlyc3RDb2wubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZC5jbGFzc0xpc3QuYWRkKCdldWktdGFibGVfX2NvbC0tc3RpY2t5LXNoYWRvd2VkLWZpcnN0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFN0aWNreSBMYXN0IENvbHNcbiAgICAgICAgICAgICAgICBjb25zdCB0ZEl0ZW1zU3RpY2t5TGFzdENvbCA9IHRkSXRlbXMuZmlsdGVyKCh0ZCkgPT4gdGQub2Zmc2V0TGVmdCArIHRkLmNsaWVudFdpZHRoID4gY29udGFpbmVyV2lkdGgpO1xuICAgICAgICAgICAgICAgIHRkSXRlbXNTdGlja3lMYXN0Q29sLnJldmVyc2UoKS5mb3JFYWNoKCh0ZCwgaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0ZC5zdHlsZS5yaWdodCA9IChpID09PSAwID8gMCA6IHRkSXRlbXNTdGlja3lMYXN0Q29sW2kgLSAxXS5jbGllbnRXaWR0aCkgKyAncHgnO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpICsgMSA9PT0gdGRJdGVtc1N0aWNreUxhc3RDb2wubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZC5jbGFzc0xpc3QuYWRkKCdldWktdGFibGVfX2NvbC0tc3RpY2t5LXNoYWRvd2VkLWxhc3QnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0sIHRpbWVvdXQpO1xuXG4gICAgICAgIHRoaXMuc3RpY2t5RmVhdHVyZUhhbmRsZXJJbmRleCsrO1xuICAgIH1cblxuICAgIHByaXZhdGUgdGFibGVGZWF0dXJlc0hhbmRsZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFibGVGZWF0dXJlc0hhbmRsZXJTdWJzY3JpcHRpb24gPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTb3J0U2VydmljZS5zb3J0aW5nUGFyYW1zJCxcbiAgICAgICAgICAgIHRoaXMucGFnaW5hdG9yID8gdGhpcy5wYWdpbmF0b3IucGFnZSQgOiBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpLFxuICAgICAgICAgICAgdGhpcy5maWx0ZXIgPyB0aGlzLmZpbHRlci5maWx0ZXIkIDogbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKSxcbiAgICAgICAgXSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKFtzb3J0aW5nUGFyYW1zLCBwYWdpbmF0aW9uLCBmaWx0ZXJdKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHIgPSBbLi4udGhpcy5yb3dzU3JjXTtcbiAgICAgICAgICAgICAgICByID0gdGhpcy5vcmRlclJvd3Moc29ydGluZ1BhcmFtcy5zb3J0LCBzb3J0aW5nUGFyYW1zLm9yZGVyLCByKTtcbiAgICAgICAgICAgICAgICByID0gdGhpcy5maWx0ZXJSb3dzKGZpbHRlciwgcik7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMucGFnaW5hdG9yKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnaW5hdG9yLnNldExlbmd0aChyLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgICAgIHIgPSB0aGlzLnBhZ2luYXRlUm93cyhwYWdpbmF0aW9uLCByKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLnJvd3NSZW5kZXJlZCA9IHI7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGlja3lGZWF0dXJlSGFuZGxlcigpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbGVjdFJvd3NGZWF0dXJlSGFuZGxlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RSb3dzRmVhdHVyZUhhbmRsZXJTdWJzY3JpcHRpb24gPSB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2Uuc2VsZWN0ZWRSb3dzJFxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc2VsZWN0ZWQ6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFJvd3MuZW1pdChzZWxlY3RlZCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFByb3BzKG9iajogYW55W10sIGZpbHRlcjogc3RyaW5nKTogeyBrZXk6IHN0cmluZzsgbWF0Y2g6IGJvb2xlYW47IHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfVtdIHtcbiAgICAgICAgY29uc3QgaXNPYmplY3QgPSAodmFsOiBhbnkpOiBib29sZWFuID0+IHZhbCAmJiB0eXBlb2YgdmFsID09PSAnb2JqZWN0JztcbiAgICAgICAgY29uc3QgYWRkRGVsaW1pdGVyID0gKGE6IHN0cmluZywgYjogc3RyaW5nKTogc3RyaW5nID0+IChhICYmIGEgIT09ICcwJyA/IGAke2F9LiR7Yn1gIDogYik7XG4gICAgICAgIGNvbnN0IHByb3BzID0gW107XG4gICAgICAgIGNvbnN0IHBhdGhzID0gKHBhdGhPYmogPSB7fSwgaGVhZCA9ICcnKTogYW55W10gPT5cbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKHBhdGhPYmopLnJlZHVjZSgocHJvZHVjdCwgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgZnVsbFBhdGggPSBhZGREZWxpbWl0ZXIoaGVhZCwga2V5KTtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXRjaCA9ICh2OiBhbnkpOiBib29sZWFuID0+XG4gICAgICAgICAgICAgICAgICAgIHR5cGVvZiB2ICE9PSAnb2JqZWN0JyAmJiB2Py50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXI/LnRyaW0oKS50b0xvd2VyQ2FzZSgpKSAhPT0gLTE7XG5cbiAgICAgICAgICAgICAgICBpZiAoa2V5ICE9PSAnMCcgJiYgdHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgICAgICBwcm9wcy5wdXNoKHsga2V5OiBhZGREZWxpbWl0ZXIoaGVhZCwga2V5KSwgbWF0Y2g6IG1hdGNoKHZhbHVlKSwgdmFsdWUgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGlzT2JqZWN0KHZhbHVlKSA/IHByb2R1Y3QuY29uY2F0KHBhdGhzKHZhbHVlLCBmdWxsUGF0aCkpIDogcHJvZHVjdC5jb25jYXQoZnVsbFBhdGgpO1xuICAgICAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIHBhdGhzKG9iaik7XG5cbiAgICAgICAgcmV0dXJuIHByb3BzO1xuICAgIH1cblxuICAgIHByaXZhdGUgcGFnaW5hdGVSb3dzKHBhZ2luYXRpb246IFBhZ2luYXRpb25FdmVudCwgcjogYW55W10pOiBhbnlbXSB7XG4gICAgICAgIHRoaXMucGFnZSA9IHBhZ2luYXRpb24ucGFnZTtcbiAgICAgICAgdGhpcy5wYWdlU2l6ZSA9IHBhZ2luYXRpb24ucGFnZVNpemU7XG5cbiAgICAgICAgcmV0dXJuIHIuc2xpY2UodGhpcy5wYWdlICogdGhpcy5wYWdlU2l6ZSwgdGhpcy5wYWdlICogdGhpcy5wYWdlU2l6ZSArIHRoaXMucGFnZVNpemUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgb3JkZXJSb3dzKHByb3A6IHN0cmluZywgb3JkZXI6IHN0cmluZywgcjogYW55W10pOiBhbnlbXSB7XG4gICAgICAgIGxldCByb3dzOiBhbnlbXSA9IG51bGw7XG4gICAgICAgIGlmICghb3JkZXIpIHtcbiAgICAgICAgICAgIHJvd3MgPSByO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKG9yZGVyID09PSAnZGVzYycpIHtcbiAgICAgICAgICAgICAgICByb3dzID0gci5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhU29ydE9uID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZiB0aGlzLmdldE9ialByb3AoYSwgcHJvcCkgPT09ICdzdHJpbmcnID8gdGhpcy5nZXRPYmpQcm9wKGEsIHByb3ApLnRvTG93ZXJDYXNlKCkgOiB0aGlzLmdldE9ialByb3AoYSwgcHJvcCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJTb3J0T24gPVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIHRoaXMuZ2V0T2JqUHJvcChiLCBwcm9wKSA9PT0gJ3N0cmluZycgPyB0aGlzLmdldE9ialByb3AoYiwgcHJvcCkudG9Mb3dlckNhc2UoKSA6IHRoaXMuZ2V0T2JqUHJvcChiLCBwcm9wKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoIWFTb3J0T24gJiYgYlNvcnRPbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFTb3J0T24gJiYgIWJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoIWFTb3J0T24gJiYgIWJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChhU29ydE9uIDwgYlNvcnRPbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFTb3J0T24gPiBiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJvd3MgPSByLnNvcnQoKGE6IGFueSwgYjogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGFTb3J0T24gPVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIHRoaXMuZ2V0T2JqUHJvcChhLCBwcm9wKSA9PT0gJ3N0cmluZycgPyB0aGlzLmdldE9ialByb3AoYSwgcHJvcCkudG9Mb3dlckNhc2UoKSA6IHRoaXMuZ2V0T2JqUHJvcChhLCBwcm9wKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYlNvcnRPbiA9XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgdGhpcy5nZXRPYmpQcm9wKGIsIHByb3ApID09PSAnc3RyaW5nJyA/IHRoaXMuZ2V0T2JqUHJvcChiLCBwcm9wKS50b0xvd2VyQ2FzZSgpIDogdGhpcy5nZXRPYmpQcm9wKGIsIHByb3ApO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmICghYVNvcnRPbiAmJiBiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFTb3J0T24gJiYgIWJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmICghYVNvcnRPbiAmJiAhYlNvcnRPbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFTb3J0T24gPiBiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoYVNvcnRPbiA8IGJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiByb3dzO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T2JqUHJvcChvYmo6IGFueSwgcHJvcDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHByb3AgPyBwcm9wLnNwbGl0KCcuJykucmVkdWNlKChwcmV2LCBjdXJyKSA9PiAocHJldiA/IHByZXZbY3Vycl0gOiBudWxsKSwgb2JqIHx8IHNlbGYpIDogbnVsbDtcbiAgICB9XG59XG4iLCI8dGhlYWQgI3RoZWFkUmVmICpuZ0lmPVwiaGVhZGVyVGVtcGxhdGVcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiaGVhZGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuPC90aGVhZD5cbjx0Ym9keSAjdGJvZHlSZWYgKm5nSWY9XCJib2R5VGVtcGxhdGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCByb3cgb2Ygcm93c1JlbmRlcmVkOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJib2R5VGVtcGxhdGVcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiByb3csIGluZGV4OiBpICsgcGFnZSAqIHBhZ2VTaXplIH1cIj48L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJlbXB0eU1lc3NhZ2VUZW1wbGF0ZSAmJiByb3dzUmVuZGVyZWQubGVuZ3RoID09PSAwXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJlbXB0eU1lc3NhZ2VUZW1wbGF0ZVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG48L3Rib2R5PlxuPHRmb290ICpuZ0lmPVwiZm9vdGVyVGVtcGxhdGVcIj5cbiAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuPC90Zm9vdD5cbiJdfQ==
419
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLXRhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2V1aS10YWJsZS9ldWktdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLXRhYmxlL2V1aS10YWJsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBRWYsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBSUwsTUFBTSxFQUlOLFNBQVMsRUFDVCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBRTVFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUd4RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7QUFXM0YsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWE7SUF3R2hELFlBQ1ksbUJBQXdDLEVBQ3hDLEVBQXFCLEVBQ3JCLDRCQUEwRCxFQUMxRCxVQUFzQjtRQUU5QixLQUFLLEVBQUUsQ0FBQztRQUxBLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFDckIsaUNBQTRCLEdBQTVCLDRCQUE0QixDQUE4QjtRQUMxRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBMUd6QixXQUFNLEdBQUcsSUFB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S0FBSztnQkFLRixhQUFhO3NCQURoQixLQUFLO2dCQUtGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFLRixlQUFlO3NCQURsQixLQUFLO2dCQUtGLGVBQWU7c0JBRGxCLEtBQUs7Z0JBS0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQWFGLFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbmltcG9ydCB7IEV1aVRlbXBsYXRlRGlyZWN0aXZlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgQmFzZURpcmVjdGl2ZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9zaGFyZWQnO1xuaW1wb3J0IHsgRXVpUGFnaW5hdG9yQ29tcG9uZW50IH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1wYWdpbmF0b3InO1xuXG5pbXBvcnQgeyBFdWlUYWJsZVNvcnRTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9ldWktdGFibGUtc29ydC5zZXJ2aWNlJztcbmltcG9ydCB7IFBhZ2luYXRpb25FdmVudCB9IGZyb20gJy4vbW9kZWxzL3BhZ2luYXRpb24tZXZlbnQubW9kZWwnO1xuaW1wb3J0IHsgRXVpVGFibGVGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2ZpbHRlci9ldWktdGFibGUtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9ldWktdGFibGUtc2VsZWN0YWJsZS1yb3cuc2VydmljZSc7XG5pbXBvcnQgeyBTb3J0RXZlbnQgfSBmcm9tICcuL21vZGVscy9zb3J0LWV2ZW50Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktdGFibGUsIHRhYmxlW2V1aVRhYmxlXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2V1aS10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtFdWlUYWJsZVNvcnRTZXJ2aWNlLCBFdWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpVGFibGVDb21wb25lbnQgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgcm93czogYW55W107XG4gICAgQElucHV0KCkgcHJvcElkID0gJ2lkJztcbiAgICBASW5wdXQoKSBwYWdpbmF0b3I6IEV1aVBhZ2luYXRvckNvbXBvbmVudDtcbiAgICBASW5wdXQoKSBmaWx0ZXI6IEV1aVRhYmxlRmlsdGVyQ29tcG9uZW50O1xuICAgIEBJbnB1dCgpIHByZXNlbGVjdGVkUm93czogYW55W10gPSBbXTtcbiAgICAvKiogQGRlcHJlY2F0ZWQgU2luY2UgZXVpLXRhYmxlIHVzZXMgbmF0aXZlIENTUyBwb3NpdGlvbiBzdGlja3ksIHBhc3NpbmcgdGhlIHJlZmVyZW5jZSBvZiBjb250YWluZXIgaXMgbm8gbG9uZ2VyIG5lZWRlZC5cbiAgICAgKiBJdCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIGZ1dHVyZSB2ZXJzaW9uIG9mIGVVSVxuICAgICAqICovXG4gICAgQElucHV0KCkgc2Nyb2xsYWJsZUNvbnRhaW5lclJlZjogRWxlbWVudDtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKSBzdHJpbmcgPSAnZXVpLXRhYmxlJztcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmV1aS10YWJsZV9fbG9hZGluZycpIGdldCBoYXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkaW5nO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKSBzZWxlY3RlZFJvd3MgPSBuZXcgRXZlbnRFbWl0dGVyPGFueVtdPigpO1xuICAgIEBPdXRwdXQoKSBzb3J0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTb3J0RXZlbnQ+KCk7XG5cbiAgICBwdWJsaWMgaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcHVibGljIGJvZHlUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBwdWJsaWMgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgcHVibGljIGVtcHR5TWVzc2FnZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIHB1YmxpYyByb3dzUmVuZGVyZWQ6IGFueVtdID0gW107XG5cbiAgICBwdWJsaWMgcGFnZSA9IDA7XG4gICAgcHVibGljIHBhZ2VTaXplID0gMDtcbiAgICBwdWJsaWMgc2hvd1N0aWNreUhlYWRlciA9IGZhbHNlO1xuICAgIHB1YmxpYyBmaWx0ZXJlZFJvd3MgPSBbXTtcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oRXVpVGVtcGxhdGVEaXJlY3RpdmUpIHRlbXBsYXRlczogUXVlcnlMaXN0PEV1aVRlbXBsYXRlRGlyZWN0aXZlPjtcblxuICAgIEBWaWV3Q2hpbGQoJ3RoZWFkUmVmJykgdGhlYWRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuICAgIEBWaWV3Q2hpbGQoJ3Rib2R5UmVmJykgdGJvZHlSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgcHJldHRpZXIvcHJldHRpZXIgKi9cbiAgICBASW5wdXQoKSBnZXQgbG9hZGluZygpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2xvYWRpbmc7IH1cbiAgICBzZXQgbG9hZGluZyh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2xvYWRpbmcgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfbG9hZGluZyA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGFzeW5jVGFibGUoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9hc3luY1RhYmxlOyB9XG4gICAgc2V0IGFzeW5jVGFibGUodmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9hc3luY1RhYmxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2FzeW5jVGFibGUgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBwYWdpbmFibGUoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9wYWdpbmFibGU7IH1cbiAgICBzZXQgcGFnaW5hYmxlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHsgdGhpcy5fcGFnaW5hYmxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX3BhZ2luYWJsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGV1aVRhYmxlUmVzcG9uc2l2ZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2V1aVRhYmxlUmVzcG9uc2l2ZTsgfVxuICAgIHNldCBldWlUYWJsZVJlc3BvbnNpdmUodmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9ldWlUYWJsZVJlc3BvbnNpdmUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfZXVpVGFibGVSZXNwb25zaXZlID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVGFibGVGaXhlZExheW91dCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2V1aVRhYmxlRml4ZWRMYXlvdXQ7IH1cbiAgICBzZXQgZXVpVGFibGVGaXhlZExheW91dCh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2V1aVRhYmxlRml4ZWRMYXlvdXQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpOyB9XG4gICAgcHJpdmF0ZSBfZXVpVGFibGVGaXhlZExheW91dCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGV1aVRhYmxlRHJhZ2dhYmxlKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZXVpVGFibGVEcmFnZ2FibGU7IH1cbiAgICBzZXQgZXVpVGFibGVEcmFnZ2FibGUodmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9ldWlUYWJsZURyYWdnYWJsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgICBwcml2YXRlIF9ldWlUYWJsZURyYWdnYWJsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGV1aVRhYmxlQ2FyZHMoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9ldWlUYWJsZUNhcmRzOyB9XG4gICAgc2V0IGV1aVRhYmxlQ2FyZHModmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9ldWlUYWJsZUNhcmRzID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2V1aVRhYmxlQ2FyZHMgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBldWlUYWJsZUJvcmRlcmVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZXVpVGFibGVCb3JkZXJlZDsgfVxuICAgIHNldCBldWlUYWJsZUJvcmRlcmVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHsgdGhpcy5fZXVpVGFibGVCb3JkZXJlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgICBwcml2YXRlIF9ldWlUYWJsZUJvcmRlcmVkID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgZXVpVGFibGVDb21wYWN0KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZXVpVGFibGVDb21wYWN0OyB9XG4gICAgc2V0IGV1aVRhYmxlQ29tcGFjdCh2YWx1ZTogQm9vbGVhbklucHV0KSB7IHRoaXMuX2V1aVRhYmxlQ29tcGFjdCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7IH1cbiAgICBwcml2YXRlIF9ldWlUYWJsZUNvbXBhY3QgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNTdGlja3lIZWFkZXIoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9oYXNTdGlja3lIZWFkZXI7IH1cbiAgICBzZXQgaGFzU3RpY2t5SGVhZGVyKHZhbHVlOiBCb29sZWFuSW5wdXQpIHsgdGhpcy5faGFzU3RpY2t5SGVhZGVyID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2hhc1N0aWNreUhlYWRlciA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1N0aWNreUNvbHVtbnMoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9oYXNTdGlja3lDb2x1bW5zOyB9XG4gICAgc2V0IGhhc1N0aWNreUNvbHVtbnModmFsdWU6IEJvb2xlYW5JbnB1dCkgeyB0aGlzLl9oYXNTdGlja3lDb2x1bW5zID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTsgfVxuICAgIHByaXZhdGUgX2hhc1N0aWNreUNvbHVtbnMgPSBmYWxzZTtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIHByZXR0aWVyL3ByZXR0aWVyICovXG5cbiAgICBwcml2YXRlIHJvd3NTcmM6IGFueSA9IG51bGw7XG4gICAgcHJpdmF0ZSBkZXN0cm95JDogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgcHJpdmF0ZSB0YWJsZUZlYXR1cmVzSGFuZGxlclN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICBwcml2YXRlIHNlbGVjdFJvd3NGZWF0dXJlSGFuZGxlclN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcbiAgICBwcml2YXRlIHN0aWNreUZlYXR1cmVIYW5kbGVySW5kZXggPSAwO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNzc0NsYXNzZXMoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVSZXNwb25zaXZlID8gYGV1aS10YWJsZS0tcmVzcG9uc2l2ZWAgOiBgYCxcbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVGaXhlZExheW91dCA/IGBldWktdGFibGUtLWZpeGVkLWxheW91dGAgOiBgYCxcbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVCb3JkZXJlZCA/IGBldWktdGFibGUtLWJvcmRlcmVkYCA6IGBgLFxuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZUNvbXBhY3QgPyBgZXVpLXRhYmxlLS1jb21wYWN0YCA6IGBgLFxuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZURyYWdnYWJsZSA/IGBldWktdGFibGUtLWRyYWdnYWJsZWAgOiBgYCxcbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVDYXJkcyA/IGBldWktdGFibGUtY2FyZHNgIDogYGAsXG4gICAgICAgICAgICB0aGlzLmhhc1N0aWNreUhlYWRlciA/IGBldWktdGFibGUtLXN0aWNreS1oZWFkZXJgIDogYGAsXG4gICAgICAgICAgICB0aGlzLmhhc1N0aWNreUNvbHVtbnMgPyBgZXVpLXRhYmxlLS1zdGlja3ktY29sdW1uc2AgOiBgYCxcbiAgICAgICAgICAgIHN1cGVyLmdldENzc0NsYXNzZXMoJ2V1aS10YWJsZScpLFxuICAgICAgICBdXG4gICAgICAgICAgICAuam9pbignICcpXG4gICAgICAgICAgICAudHJpbSgpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGV1aVRhYmxlU29ydFNlcnZpY2U6IEV1aVRhYmxlU29ydFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwcml2YXRlIGV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2U6IEV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnNldFByb3BJZCh0aGlzLnByb3BJZCk7XG4gICAgICAgIGlmIChjICYmIGMucm93cyAmJiBjLnJvd3MuZmlyc3RDaGFuZ2UgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlRmVhdHVyZXNIYW5kbGVyU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG5cbiAgICAgICAgICAgIC8vIEdvIHRvIGZpcnN0IHBhZ2Ugb25seSBpZiBsZW5ndGggb2YgZGF0YSBoYXMgY2hhbmdlZC4gVG8gYXZvaWQgdXNlciB0byBiZSBvbiBhIHBhZ2UgdGhhdCBubyBsb25nZXIgZXhpc3QgaW4gY2FzZSBvZiBmaWx0ZXJpbmcuXG4gICAgICAgICAgICBjb25zdCBsZW5ndGhDaGFuZ2VkID0gdGhpcy5yb3dzU3JjLmxlbmd0aCAhPT0gYy5yb3dzLmN1cnJlbnRWYWx1ZS5sZW5ndGg7XG5cbiAgICAgICAgICAgIHRoaXMucm93c1NyYyA9IFsuLi5jLnJvd3MuY3VycmVudFZhbHVlXTtcbiAgICAgICAgICAgIGlmICh0aGlzLnBhZ2luYXRvciAmJiBsZW5ndGhDaGFuZ2VkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wYWdpbmF0b3IuZ29GaXJzdFBhZ2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5hc3luY1RhYmxlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnJlc2V0Um93cygpO1xuICAgICAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZS5hZGRSb3dzKGMucm93cy5jdXJyZW50VmFsdWUpO1xuICAgICAgICAgICAgICAgIHRoaXMudGFibGVGZWF0dXJlc0hhbmRsZXIoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLmFkZFJvd3MoYy5yb3dzLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYyAmJiBjLnByZXNlbGVjdGVkUm93cyAmJiBjLnByZXNlbGVjdGVkUm93cy5maXJzdENoYW5nZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIHRoaXMuZXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZS5zZWxlY3RSb3dzKHRoaXMucHJlc2VsZWN0ZWRSb3dzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjICYmIGMucGFnaW5hdG9yPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMucGFnaW5hdG9yLnNldExlbmd0aCh0aGlzLnJvd3MubGVuZ3RoKTtcbiAgICAgICAgICAgIGlmICghYy5wYWdpbmF0b3I/LmlzRmlyc3RDaGFuZ2UoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMucGFnaW5hdG9yLmdvRmlyc3RQYWdlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyB0aGlzLnJvd3MgY2FuIGJlIGNoYW5nZWQgYW55dGltZSwgdGhlbiB0aGlzIGVsc2UgY2FuIGJlIGV4ZWN1dGVkIGF0IHRoYXQgdGltZSwgdGVzdGluZyB0aGlzLnBhZ2luYXRvciBhbGxvd3MgdG8gbWFrZSBzdXJlXG4gICAgICAgICAgICAvLyB0aGUgdXNlciB3aGFudHMgdG8gZGlzYWJsZSBwYWdpbmF0aW9uIG9yIGNoYW5nZSB0aGUgZGF0YXNvdXJjZVxuICAgICAgICAgICAgaWYgKCF0aGlzLnBhZ2luYXRvcikge1xuICAgICAgICAgICAgICAgIHRoaXMucm93c1JlbmRlcmVkID0gdGhpcy5yb3dzU3JjID8gdGhpcy5yb3dzU3JjIDogWy4uLnRoaXMucm93c107XG4gICAgICAgICAgICAgICAgdGhpcy5wYWdlID0gMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvd3NTcmMgPSBbLi4udGhpcy5yb3dzXTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5lMmVBdHRyKSB7XG4gICAgICAgICAgICB0aGlzLmUyZUF0dHIgPSAnZXVpLXRhYmxlJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRlbXBsYXRlcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXRlbS5nZXRUeXBlKCkgPT09ICdoZWFkZXInKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oZWFkZXJUZW1wbGF0ZSA9IGl0ZW0udGVtcGxhdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoaXRlbS5nZXRUeXBlKCkgPT09ICdib2R5Jykge1xuICAgICAgICAgICAgICAgIHRoaXMuYm9keVRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpdGVtLmdldFR5cGUoKSA9PT0gJ2Zvb3RlcicpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvb3RlclRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChpdGVtLmdldFR5cGUoKSA9PT0gJ2VtcHR5TWVzc2FnZScpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmVtcHR5TWVzc2FnZVRlbXBsYXRlID0gaXRlbS50ZW1wbGF0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuYXN5bmNUYWJsZSkge1xuICAgICAgICAgICAgdGhpcy50YWJsZUZlYXR1cmVzSGFuZGxlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy50YWJsZUZlYXR1cmVzSGFuZGxlcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ldWlUYWJsZVNvcnRTZXJ2aWNlLnNvcnRpbmdQYXJhbXMkXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzb3J0aW5nUGFyYW1zOiB7IHNvcnQ6IHN0cmluZyB8IG51bGw7IG9yZGVyOiBzdHJpbmcgfSkgPT4ge1xuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UuZW1pdCh7IHNvcnQ6IHNvcnRpbmdQYXJhbXMuc29ydCwgb3JkZXI6IHNvcnRpbmdQYXJhbXMub3JkZXIgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnNlbGVjdFJvd3NGZWF0dXJlSGFuZGxlcigpO1xuXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnNlbGVjdFJvd3ModGhpcy5wcmVzZWxlY3RlZFJvd3MpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtOiBhbnkpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gaW5kZXg7XG4gICAgfVxuXG4gICAgcHVibGljIHNlbGVjdEFsbFJvd3MoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZS5zZWxlY3RBbGxSb3dzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHVuc2VsZWN0QWxsUm93cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnVuc2VsZWN0QWxsUm93cygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZWxlY3RSb3dzKHJvd3M6IGFueVtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZXVpVGFibGVTZWxlY3RhYmxlUm93U2VydmljZS5zZWxlY3RSb3dzKHJvd3MpO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaWx0ZXJSb3dzKGZpbHRlcjogc3RyaW5nLCByOiBhbnlbXSk6IGFueVtdIHtcbiAgICAgICAgY29uc3Qgcm93cyA9IGZpbHRlclxuICAgICAgICAgICAgPyByLmZpbHRlcigocm93KSA9PiB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBtYXRjaGluZyA9IHRoaXMuZ2V0UHJvcHMocm93LCBmaWx0ZXIpLmZpbHRlcigocCkgPT4gcC5tYXRjaCA9PT0gdHJ1ZSk7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gbWF0Y2hpbmc/Lmxlbmd0aCA+IDA7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICA6IHI7XG5cbiAgICAgICAgdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnJlc2V0Um93cygpO1xuICAgICAgICB0aGlzLmV1aVRhYmxlU2VsZWN0YWJsZVJvd1NlcnZpY2UuYWRkUm93cyhyb3dzKTtcblxuICAgICAgICB0aGlzLmZpbHRlcmVkUm93cyA9IHJvd3M7XG5cbiAgICAgICAgcmV0dXJuIHJvd3M7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFNvcnQoc29ydDogc3RyaW5nIHwgbnVsbCwgb3JkZXI6ICdhc2MnIHwgJ2Rlc2MnIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLmV1aVRhYmxlU29ydFNlcnZpY2Uuc2V0U29ydChzb3J0LCBvcmRlcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGlja3lGZWF0dXJlSGFuZGxlcigpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGltZW91dCA9IHRoaXMuc3RpY2t5RmVhdHVyZUhhbmRsZXJJbmRleCA9PT0gMCA/IDI1MCA6IDA7XG5cbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB0ckl0ZW1zID0gQXJyYXkuZnJvbSh0aGlzLnRib2R5UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbCgndHInKSk7XG4gICAgICAgICAgICBjb25zdCBjb250YWluZXJXaWR0aCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Py5wYXJlbnRFbGVtZW50LmNsaWVudFdpZHRoIHx8IDA7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLnRoZWFkUmVmKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhJdGVtczogSFRNTFRhYmxlQ2VsbEVsZW1lbnRbXSA9IEFycmF5LmZyb20odGhpcy50aGVhZFJlZi5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5ldWktdGFibGVfX2NvbC0tc3RpY2t5JykpO1xuXG4gICAgICAgICAgICAgICAgLy8gUmVzZXQgbGVmdCAmIHJpZ2h0IHBvc2l0aW9uXG4gICAgICAgICAgICAgICAgdGhJdGVtcy5mb3JFYWNoKCh0aDogSFRNTFRhYmxlQ2VsbEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGguc3R5bGUubGVmdCA9IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIHRoLnN0eWxlLnJpZ2h0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIC8vIFN0aWNreSBGaXJzdCBDb2xzICYgTGFzdCBDb2xzXG4gICAgICAgICAgICAgICAgY29uc3QgdGhJdGVtc1N0aWNreUZpcnN0Q29sID0gdGhJdGVtcy5maWx0ZXIoKHRoKSA9PiB0aC5vZmZzZXRMZWZ0ICsgdGguY2xpZW50V2lkdGggPCBjb250YWluZXJXaWR0aCk7XG4gICAgICAgICAgICAgICAgY29uc3QgdGhJdGVtc1N0aWNreUxhc3RDb2wgPSB0aEl0ZW1zLmZpbHRlcigodGgpID0+IHRoLm9mZnNldExlZnQgKyB0aC5jbGllbnRXaWR0aCA+IGNvbnRhaW5lcldpZHRoKTtcblxuICAgICAgICAgICAgICAgIHRoSXRlbXNTdGlja3lGaXJzdENvbC5mb3JFYWNoKCh0aCwgaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aC5zdHlsZS5sZWZ0ID0gKGkgPT09IDAgPyAwIDogdGhJdGVtc1N0aWNreUZpcnN0Q29sW2kgLSAxXS5jbGllbnRXaWR0aCkgKyAncHgnO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpICsgMSA9PT0gdGhJdGVtc1N0aWNreUZpcnN0Q29sLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGguY2xhc3NMaXN0LmFkZCgnZXVpLXRhYmxlX19jb2wtLXN0aWNreS1zaGFkb3dlZC1maXJzdCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICB0aEl0ZW1zU3RpY2t5TGFzdENvbC5yZXZlcnNlKCkuZm9yRWFjaCgodGgsIGkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGguc3R5bGUucmlnaHQgPSAoaSA9PT0gMCA/IDAgOiB0aEl0ZW1zU3RpY2t5TGFzdENvbFtpIC0gMV0uY2xpZW50V2lkdGgpICsgJ3B4JztcblxuICAgICAgICAgICAgICAgICAgICBpZiAoaSArIDEgPT09IHRoSXRlbXNTdGlja3lMYXN0Q29sLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGguY2xhc3NMaXN0LmFkZCgnZXVpLXRhYmxlX19jb2wtLXN0aWNreS1zaGFkb3dlZC1sYXN0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdHJJdGVtcy5mb3JFYWNoKCh0cikgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHRkSXRlbXM6IEhUTUxUYWJsZUNlbGxFbGVtZW50W10gPSBBcnJheS5mcm9tKHRyLnF1ZXJ5U2VsZWN0b3JBbGwoJy5ldWktdGFibGVfX2NvbC0tc3RpY2t5JykpO1xuICAgICAgICAgICAgICAgIHRkSXRlbXMuZm9yRWFjaCgodGQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGQuc3R5bGUubGVmdCA9IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIHRkLnN0eWxlLnJpZ2h0ID0gbnVsbDtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0ckl0ZW1zLmZvckVhY2goKHRyKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdGRJdGVtczogSFRNTFRhYmxlQ2VsbEVsZW1lbnRbXSA9IEFycmF5LmZyb20odHIucXVlcnlTZWxlY3RvckFsbCgnLmV1aS10YWJsZV9fY29sLS1zdGlja3knKSk7XG5cbiAgICAgICAgICAgICAgICAvLyBTdGlja3kgRmlyc3QgQ29sc1xuICAgICAgICAgICAgICAgIGNvbnN0IHRkSXRlbXNTdGlja3lGaXJzdENvbCA9IHRkSXRlbXMuZmlsdGVyKCh0ZCkgPT4gdGQub2Zmc2V0TGVmdCArIHRkLmNsaWVudFdpZHRoIDwgY29udGFpbmVyV2lkdGgpO1xuICAgICAgICAgICAgICAgIHRkSXRlbXNTdGlja3lGaXJzdENvbC5mb3JFYWNoKCh0ZCwgaSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0ZC5zdHlsZS5sZWZ0ID0gKGkgPT09IDAgPyAwIDogdGRJdGVtc1N0aWNreUZpcnN0Q29sW2kgLSAxXS5jbGllbnRXaWR0aCkgKyAncHgnO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChpICsgMSA9PT0gdGRJdGVtc1N0aWNreUZpcnN0Q29sLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGQuY2xhc3NMaXN0LmFkZCgnZXVpLXRhYmxlX19jb2wtLXN0aWNreS1zaGFkb3dlZC1maXJzdCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAvLyBTdGlja3kgTGFzdCBDb2xzXG4gICAgICAgICAgICAgICAgY29uc3QgdGRJdGVtc1N0aWNreUxhc3RDb2wgPSB0ZEl0ZW1zLmZpbHRlcigodGQpID0+IHRkLm9mZnNldExlZnQgKyB0ZC5jbGllbnRXaWR0aCA+IGNvbnRhaW5lcldpZHRoKTtcbiAgICAgICAgICAgICAgICB0ZEl0ZW1zU3RpY2t5TGFzdENvbC5yZXZlcnNlKCkuZm9yRWFjaCgodGQsIGkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGQuc3R5bGUucmlnaHQgPSAoaSA9PT0gMCA/IDAgOiB0ZEl0ZW1zU3RpY2t5TGFzdENvbFtpIC0gMV0uY2xpZW50V2lkdGgpICsgJ3B4JztcblxuICAgICAgICAgICAgICAgICAgICBpZiAoaSArIDEgPT09IHRkSXRlbXNTdGlja3lMYXN0Q29sLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGQuY2xhc3NMaXN0LmFkZCgnZXVpLXRhYmxlX19jb2wtLXN0aWNreS1zaGFkb3dlZC1sYXN0Jyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9LCB0aW1lb3V0KTtcblxuICAgICAgICB0aGlzLnN0aWNreUZlYXR1cmVIYW5kbGVySW5kZXgrKztcbiAgICB9XG5cbiAgICBwcml2YXRlIHRhYmxlRmVhdHVyZXNIYW5kbGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYmxlRmVhdHVyZXNIYW5kbGVyU3Vic2NyaXB0aW9uID0gY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICB0aGlzLmV1aVRhYmxlU29ydFNlcnZpY2Uuc29ydGluZ1BhcmFtcyQsXG4gICAgICAgICAgICB0aGlzLnBhZ2luYXRvciA/IHRoaXMucGFnaW5hdG9yLnBhZ2UkIDogbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKSxcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyID8gdGhpcy5maWx0ZXIuZmlsdGVyJCA6IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCksXG4gICAgICAgIF0pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbc29ydGluZ1BhcmFtcywgcGFnaW5hdGlvbiwgZmlsdGVyXSkgPT4ge1xuICAgICAgICAgICAgICAgIGxldCByID0gWy4uLnRoaXMucm93c1NyY107XG4gICAgICAgICAgICAgICAgciA9IHRoaXMub3JkZXJSb3dzKHNvcnRpbmdQYXJhbXMuc29ydCwgc29ydGluZ1BhcmFtcy5vcmRlciwgcik7XG4gICAgICAgICAgICAgICAgciA9IHRoaXMuZmlsdGVyUm93cyhmaWx0ZXIsIHIpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnBhZ2luYXRvcikge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhZ2luYXRvci5zZXRMZW5ndGgoci5sZW5ndGgpO1xuICAgICAgICAgICAgICAgICAgICByID0gdGhpcy5wYWdpbmF0ZVJvd3MocGFnaW5hdGlvbiwgcik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5yb3dzUmVuZGVyZWQgPSByO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RpY2t5RmVhdHVyZUhhbmRsZXIoKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZWxlY3RSb3dzRmVhdHVyZUhhbmRsZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0Um93c0ZlYXR1cmVIYW5kbGVyU3Vic2NyaXB0aW9uID0gdGhpcy5ldWlUYWJsZVNlbGVjdGFibGVSb3dTZXJ2aWNlLnNlbGVjdGVkUm93cyRcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHNlbGVjdGVkOiBhbnlbXSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRSb3dzLmVtaXQoc2VsZWN0ZWQpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQcm9wcyhvYmo6IGFueVtdLCBmaWx0ZXI6IHN0cmluZyk6IHsga2V5OiBzdHJpbmc7IG1hdGNoOiBib29sZWFuOyB2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIH1bXSB7XG4gICAgICAgIGNvbnN0IGlzT2JqZWN0ID0gKHZhbDogYW55KTogYm9vbGVhbiA9PiB2YWwgJiYgdHlwZW9mIHZhbCA9PT0gJ29iamVjdCc7XG4gICAgICAgIGNvbnN0IGFkZERlbGltaXRlciA9IChhOiBzdHJpbmcsIGI6IHN0cmluZyk6IHN0cmluZyA9PiAoYSAmJiBhICE9PSAnMCcgPyBgJHthfS4ke2J9YCA6IGIpO1xuICAgICAgICBjb25zdCBwcm9wcyA9IFtdO1xuICAgICAgICBjb25zdCBwYXRocyA9IChwYXRoT2JqID0ge30sIGhlYWQgPSAnJyk6IGFueVtdID0+XG4gICAgICAgICAgICBPYmplY3QuZW50cmllcyhwYXRoT2JqKS5yZWR1Y2UoKHByb2R1Y3QsIFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZ1bGxQYXRoID0gYWRkRGVsaW1pdGVyKGhlYWQsIGtleSk7XG4gICAgICAgICAgICAgICAgY29uc3QgbWF0Y2ggPSAodjogYW55KTogYm9vbGVhbiA9PlxuICAgICAgICAgICAgICAgICAgICB0eXBlb2YgdiAhPT0gJ29iamVjdCcgJiYgdj8udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyPy50cmltKCkudG9Mb3dlckNhc2UoKSkgIT09IC0xO1xuXG4gICAgICAgICAgICAgICAgaWYgKGtleSAhPT0gJzAnICYmIHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvcHMucHVzaCh7IGtleTogYWRkRGVsaW1pdGVyKGhlYWQsIGtleSksIG1hdGNoOiBtYXRjaCh2YWx1ZSksIHZhbHVlIH0pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiBpc09iamVjdCh2YWx1ZSkgPyBwcm9kdWN0LmNvbmNhdChwYXRocyh2YWx1ZSwgZnVsbFBhdGgpKSA6IHByb2R1Y3QuY29uY2F0KGZ1bGxQYXRoKTtcbiAgICAgICAgICAgIH0sIFtdKTtcblxuICAgICAgICBwYXRocyhvYmopO1xuXG4gICAgICAgIHJldHVybiBwcm9wcztcbiAgICB9XG5cbiAgICBwcml2YXRlIHBhZ2luYXRlUm93cyhwYWdpbmF0aW9uOiBQYWdpbmF0aW9uRXZlbnQsIHI6IGFueVtdKTogYW55W10ge1xuICAgICAgICB0aGlzLnBhZ2UgPSBwYWdpbmF0aW9uLnBhZ2U7XG4gICAgICAgIHRoaXMucGFnZVNpemUgPSBwYWdpbmF0aW9uLnBhZ2VTaXplO1xuXG4gICAgICAgIHJldHVybiByLnNsaWNlKHRoaXMucGFnZSAqIHRoaXMucGFnZVNpemUsIHRoaXMucGFnZSAqIHRoaXMucGFnZVNpemUgKyB0aGlzLnBhZ2VTaXplKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9yZGVyUm93cyhwcm9wOiBzdHJpbmcsIG9yZGVyOiBzdHJpbmcsIHI6IGFueVtdKTogYW55W10ge1xuICAgICAgICBsZXQgcm93czogYW55W10gPSBudWxsO1xuICAgICAgICBpZiAoIW9yZGVyKSB7XG4gICAgICAgICAgICByb3dzID0gcjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChvcmRlciA9PT0gJ2Rlc2MnKSB7XG4gICAgICAgICAgICAgICAgcm93cyA9IHIuc29ydCgoYTogYW55LCBiOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgYVNvcnRPbiA9XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlb2YgdGhpcy5nZXRPYmpQcm9wKGEsIHByb3ApID09PSAnc3RyaW5nJyA/IHRoaXMuZ2V0T2JqUHJvcChhLCBwcm9wKS50b0xvd2VyQ2FzZSgpIDogdGhpcy5nZXRPYmpQcm9wKGEsIHByb3ApO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBiU29ydE9uID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZiB0aGlzLmdldE9ialByb3AoYiwgcHJvcCkgPT09ICdzdHJpbmcnID8gdGhpcy5nZXRPYmpQcm9wKGIsIHByb3ApLnRvTG93ZXJDYXNlKCkgOiB0aGlzLmdldE9ialByb3AoYiwgcHJvcCk7XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhU29ydE9uICYmIGJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChhU29ydE9uICYmICFiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCFhU29ydE9uICYmICFiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoYVNvcnRPbiA8IGJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChhU29ydE9uID4gYlNvcnRPbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByb3dzID0gci5zb3J0KChhOiBhbnksIGI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBhU29ydE9uID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZiB0aGlzLmdldE9ialByb3AoYSwgcHJvcCkgPT09ICdzdHJpbmcnID8gdGhpcy5nZXRPYmpQcm9wKGEsIHByb3ApLnRvTG93ZXJDYXNlKCkgOiB0aGlzLmdldE9ialByb3AoYSwgcHJvcCk7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGJTb3J0T24gPVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZW9mIHRoaXMuZ2V0T2JqUHJvcChiLCBwcm9wKSA9PT0gJ3N0cmluZycgPyB0aGlzLmdldE9ialByb3AoYiwgcHJvcCkudG9Mb3dlckNhc2UoKSA6IHRoaXMuZ2V0T2JqUHJvcChiLCBwcm9wKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoIWFTb3J0T24gJiYgYlNvcnRPbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChhU29ydE9uICYmICFiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBpZiAoIWFTb3J0T24gJiYgIWJTb3J0T24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChhU29ydE9uID4gYlNvcnRPbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKGFTb3J0T24gPCBiU29ydE9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcm93cztcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9ialByb3Aob2JqOiBhbnksIHByb3A6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBwcm9wID8gcHJvcC5zcGxpdCgnLicpLnJlZHVjZSgocHJldiwgY3VycikgPT4gKHByZXYgPyBwcmV2W2N1cnJdIDogbnVsbCksIG9iaiB8fCBzZWxmKSA6IG51bGw7XG4gICAgfVxufVxuIiwiPHRoZWFkICN0aGVhZFJlZiAqbmdJZj1cImhlYWRlclRlbXBsYXRlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbjwvdGhlYWQ+XG48dGJvZHkgI3Rib2R5UmVmICpuZ0lmPVwiYm9keVRlbXBsYXRlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcm93IG9mIHJvd3NSZW5kZXJlZDsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiYm9keVRlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcm93LCBpbmRleDogaSArIHBhZ2UgKiBwYWdlU2l6ZSB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZW1wdHlNZXNzYWdlVGVtcGxhdGUgJiYgcm93c1JlbmRlcmVkLmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiZW1wdHlNZXNzYWdlVGVtcGxhdGVcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC90Ym9keT5cbjx0Zm9vdCAqbmdJZj1cImZvb3RlclRlbXBsYXRlXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cbjwvdGZvb3Q+XG4iXX0=
@@ -75,10 +75,10 @@ export class EuiTabComponent extends BaseDirective {
75
75
  }
76
76
  }
77
77
  /** @nocollapse */ EuiTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: EuiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
78
- /** @nocollapse */ EuiTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: EuiTabComponent, selector: "eui-tab", inputs: { url: "url", e2eAttr: "e2eAttr", tooltip: "tooltip", isClosable: "isClosable", isVisible: "isVisible", isActive: "isActive", isDisabled: "isDisabled", hasBackgroundFilled: "hasBackgroundFilled", isHandleCloseOnClose: "isHandleCloseOnClose" }, queries: [{ propertyName: "templateLabel", first: true, predicate: EuiTabLabelComponent, descendants: true }, { propertyName: "templateContent", first: true, predicate: EuiTabContentComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".eui-tabs__items{display:flex!important;position:relative;width:100%}.eui-tabs .eui-tabs__wrapper--vertical{flex:1 1 25%}.eui-tabs .eui-tabs__items-wrapper{display:flex;flex-shrink:0}.eui-tabs .eui-tabs__items{justify-content:space-between;overflow:hidden}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item{background-color:var(--eui-base-color-grey-5);box-shadow:3px 0 6px 1px #00000040;display:none;height:100%;left:0;position:absolute;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item{background-color:var(--eui-base-color-grey-5);box-shadow:-3px 0 6px 1px #00000040;display:none;height:100%;position:absolute;right:0;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__items-wrapper{padding-left:var(--eui-base-spacing-3xl);padding-right:var(--eui-base-spacing-m)}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__left-item,.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__right-item{display:block!important;padding:0 2px 2px}.eui-tabs__right-content{align-items:center;display:flex;margin-left:var(--eui-base-spacing-s)}.eui-tabs__right-content .eui-tabs__right-content-wrapper{display:flex;align-items:center}.eui-tabs .eui-tabs__wrapper--vertical .eui-tab-item__label{align-items:flex-end;display:flex}.eui-tabs .eui-tab-item{align-items:center;background-color:inherit;border:none;border-bottom:3px solid transparent;box-shadow:0 2px 1px #00000080,inset 0 1px 0 var(--eui-base-color-white);color:var(--eui-base-color-grey-90);cursor:pointer;display:flex;font-weight:600;padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m) var(--eui-base-spacing-xs) var(--eui-base-spacing-m);position:relative;text-align:center;transition:.5s cubic-bezier(.35,0,.25,1)}.eui-tabs .eui-tab-item__label{font-weight:600}.eui-tabs .eui-tab-item__label .eui-tab-item__sublabel{align-items:center;display:flex;font-size:var(--eui-base-font-size-s);font-weight:500}.eui-tabs .eui-tab-item:focus{border-bottom:3px solid var(--eui-base-color-accent-100);background:var(--eui-base-color-grey-10);outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--active{background-color:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-text)}.eui-tabs .eui-tab-item--hidden{display:none}.eui-tabs .eui-tab-item .eui-tab__close-icon{cursor:pointer;font-size:var(--eui-base-icon-size-m);opacity:.7;padding-left:var(--eui-base-spacing-s)}.eui-tabs .eui-tab-item .eui-tab__close-icon:hover{opacity:1}.eui-tabs .eui-tab-item.eui-tab-item--disabled{color:var(--eui-base-color-grey-25);cursor:not-allowed;pointer-events:none}.eui-tabs .eui-tab-item.eui-tab-item--disabled:hover{border-bottom:3px solid transparent;color:var(--eui-base-color-grey-20)}.eui-tabs .eui-tab-content-wrapper{border-top:1px solid var(--eui-base-color-grey-15)}subtabs .eui-tabs .eui-tab-content-wrapper{padding:0}subtabs .eui-tabs .eui-tab-content-wrapper .eui-tab-content-wrapper{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs.eui-tabs--vertical{display:flex;flex-direction:row}.eui-tabs.eui-tabs--vertical .eui-tabs__items .eui-tabs__items-wrapper{display:flex;flex-direction:column;height:100%}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal){border-bottom:0;flex:1 1 25%;flex-direction:column;position:relative}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item{border-bottom:0;border-left:3px solid transparent;box-shadow:0 0 1px #000000a6,inset 0 1px 0 var(--eui-base-color-white)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item--active,.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:active{border-left:3px solid var(--eui-base-color-primary-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-5);border-left:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-grey-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:focus{border-left:3px solid transparent;outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper{border-top:none;flex:1 1 75%;flex-direction:column}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s);position:relative}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs--main-navigation .eui-tabs__items,.eui-tabs--main-navigation .eui-tabs__items-wrapper{width:100%}.eui-tabs--main-navigation .eui-tab-item{flex-grow:1;justify-content:center}.eui-tabs--main-navigation .eui-tab-item--active,.eui-tabs--main-navigation .eui-tab-item :active{background-color:var(--eui-base-color-primary-10)}.eui-tabs .eui-tab-item--primary{color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--primary.eui-tab-item--active,.eui-tabs .eui-tab-item--primary:hover{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--secondary{color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item--secondary.eui-tab-item--active,.eui-tabs .eui-tab-item--secondary:hover{border-bottom-color:var(--eui-base-color-grey-80)}.eui-tabs .eui-tab-item--info{color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--info.eui-tab-item--active,.eui-tabs .eui-tab-item--info:hover{border-bottom-color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--success{color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--success.eui-tab-item--active,.eui-tabs .eui-tab-item--success:hover{border-bottom-color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--warning{color:var(--eui-base-color-warning-140)}.eui-tabs .eui-tab-item--warning.eui-tab-item--active,.eui-tabs .eui-tab-item--warning:hover{border-bottom-color:var(--eui-base-color-warning-100)}.eui-tabs .eui-tab-item--danger{color:var(--eui-base-color-danger-110)}.eui-tabs .eui-tab-item--danger.eui-tab-item--active,.eui-tabs .eui-tab-item--danger:hover{border-bottom-color:var(--eui-base-color-danger-100)}.eui-tabs .eui-tab-item--accent{color:var(--eui-base-color-grey-100)}.eui-tabs .eui-tab-item--accent.eui-tab-item--active,.eui-tabs .eui-tab-item--accent:hover{border-bottom-color:var(--eui-base-color-accent-110)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled{background:none}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--secondary{background-color:var(--eui-base-color-grey-5);color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}\n"] });
78
+ /** @nocollapse */ EuiTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: EuiTabComponent, selector: "eui-tab", inputs: { url: "url", e2eAttr: "e2eAttr", tooltip: "tooltip", isClosable: "isClosable", isVisible: "isVisible", isActive: "isActive", isDisabled: "isDisabled", hasBackgroundFilled: "hasBackgroundFilled", isHandleCloseOnClose: "isHandleCloseOnClose" }, queries: [{ propertyName: "templateLabel", first: true, predicate: EuiTabLabelComponent, descendants: true }, { propertyName: "templateContent", first: true, predicate: EuiTabContentComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".eui-tabs__items{display:flex!important;flex-direction:row;position:relative;width:100%}.eui-tabs .eui-tabs__wrapper--vertical{flex:1 1 25%;flex-direction:column}.eui-tabs .eui-tabs__items-wrapper{display:flex;flex-shrink:0}.eui-tabs .eui-tabs__items{justify-content:space-between;overflow:hidden}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item{background-color:var(--eui-base-color-grey-5);box-shadow:3px 0 6px 1px #00000040;display:none;height:100%;left:0;position:absolute;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item{background-color:var(--eui-base-color-grey-5);box-shadow:-3px 0 6px 1px #00000040;display:none;height:100%;position:absolute;right:0;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__items-wrapper{padding-left:var(--eui-base-spacing-3xl);padding-right:var(--eui-base-spacing-m)}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__left-item,.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__right-item{display:block!important;padding:0 2px 2px}.eui-tabs__right-content{align-items:center;display:flex;margin-left:var(--eui-base-spacing-s)}.eui-tabs__right-content .eui-tabs__right-content-wrapper{display:flex;align-items:center}.eui-tabs .eui-tabs__wrapper--vertical .eui-tab-item__label{align-items:center;display:flex}.eui-tabs .eui-tab-item{align-items:center;background-color:inherit;border:none;border-bottom:3px solid transparent;box-shadow:0 2px 1px #00000080,inset 0 1px 0 var(--eui-base-color-white);color:var(--eui-base-color-grey-90);cursor:pointer;display:flex;font-weight:600;padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m) var(--eui-base-spacing-xs) var(--eui-base-spacing-m);position:relative;text-align:center;transition:.5s cubic-bezier(.35,0,.25,1)}.eui-tabs .eui-tab-item__label{font-weight:600}.eui-tabs .eui-tab-item__label .eui-tab-item__sublabel{align-items:center;display:flex;font-size:var(--eui-base-font-size-s);font-weight:500}.eui-tabs .eui-tab-item:focus{border-bottom:3px solid var(--eui-base-color-accent-100);background:var(--eui-base-color-grey-10);outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--active{background-color:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-text)}.eui-tabs .eui-tab-item--hidden{display:none}.eui-tabs .eui-tab-item .eui-tab__close-icon{cursor:pointer;color:var(--eui-base-color-grey-75);fill:var(--eui-base-color-grey-75);opacity:.7}.eui-tabs .eui-tab-item .eui-tab__close-icon:hover>svg{color:var(--eui-base-color-primary-100);fill:var(--eui-base-color-primary-100);opacity:1}.eui-tabs .eui-tab-item.eui-tab-item--disabled{color:var(--eui-base-color-grey-25);cursor:not-allowed;pointer-events:none}.eui-tabs .eui-tab-item.eui-tab-item--disabled:hover{border-bottom:3px solid transparent;color:var(--eui-base-color-grey-20)}.eui-tabs .eui-tab-content-wrapper{border-top:1px solid var(--eui-base-color-grey-15)}subtabs .eui-tabs .eui-tab-content-wrapper{padding:0}subtabs .eui-tabs .eui-tab-content-wrapper .eui-tab-content-wrapper{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs.eui-tabs--vertical{display:flex;flex-direction:row}.eui-tabs.eui-tabs--vertical .eui-tabs__items .eui-tabs__items-wrapper{display:flex;flex-direction:column;height:100%}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal){border-bottom:0;flex:1 1 25%;flex-direction:column;position:relative}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item{border-bottom-color:transparent;border-left:3px solid transparent;box-shadow:0 0 1px #000000a6,inset 0 1px 0 var(--eui-base-color-white)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item--active,.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:active{border-left:3px solid var(--eui-base-color-primary-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-5);border-left:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-grey-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:focus{border-left:3px solid transparent;outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper{border-top:none;flex:1 1 75%;flex-direction:column}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s);position:relative}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs--main-navigation .eui-tabs__items,.eui-tabs--main-navigation .eui-tabs__items-wrapper{width:100%}.eui-tabs--main-navigation .eui-tab-item{flex-grow:1;justify-content:center}.eui-tabs--main-navigation .eui-tab-item--active,.eui-tabs--main-navigation .eui-tab-item :active{background-color:var(--eui-base-color-primary-10)}.eui-tabs .eui-tab-item:hover,.eui-tabs .eui-tab-item.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--primary{color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--primary.eui-tab-item--active,.eui-tabs .eui-tab-item--primary:hover{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--secondary{color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item--secondary.eui-tab-item--active,.eui-tabs .eui-tab-item--secondary:hover{border-bottom-color:var(--eui-base-color-grey-80)}.eui-tabs .eui-tab-item--info{color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--info.eui-tab-item--active,.eui-tabs .eui-tab-item--info:hover{border-bottom-color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--success{color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--success.eui-tab-item--active,.eui-tabs .eui-tab-item--success:hover{border-bottom-color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--warning{color:var(--eui-base-color-warning-140)}.eui-tabs .eui-tab-item--warning.eui-tab-item--active,.eui-tabs .eui-tab-item--warning:hover{border-bottom-color:var(--eui-base-color-warning-100)}.eui-tabs .eui-tab-item--danger{color:var(--eui-base-color-danger-110)}.eui-tabs .eui-tab-item--danger.eui-tab-item--active,.eui-tabs .eui-tab-item--danger:hover{border-bottom-color:var(--eui-base-color-danger-100)}.eui-tabs .eui-tab-item--accent{color:var(--eui-base-color-grey-100)}.eui-tabs .eui-tab-item--accent.eui-tab-item--active,.eui-tabs .eui-tab-item--accent:hover{border-bottom-color:var(--eui-base-color-accent-110)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled{background:none}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--primary.eui-tab-item--active{border-bottom-color:var(--eui-base-color-accent-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--secondary{background-color:var(--eui-base-color-grey-5);color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--secondary.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--info.eui-tab-item--active{border-bottom-color:var(--eui-base-color-accent-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--success.eui-tab-item--active{border-bottom-color:var(--eui-base-color-accent-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--warning.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--danger.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--accent.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}\n"] });
79
79
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: EuiTabComponent, decorators: [{
80
80
  type: Component,
81
- args: [{ selector: 'eui-tab', template: "<ng-content></ng-content>\n", styles: [".eui-tabs__items{display:flex!important;position:relative;width:100%}.eui-tabs .eui-tabs__wrapper--vertical{flex:1 1 25%}.eui-tabs .eui-tabs__items-wrapper{display:flex;flex-shrink:0}.eui-tabs .eui-tabs__items{justify-content:space-between;overflow:hidden}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item{background-color:var(--eui-base-color-grey-5);box-shadow:3px 0 6px 1px #00000040;display:none;height:100%;left:0;position:absolute;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item{background-color:var(--eui-base-color-grey-5);box-shadow:-3px 0 6px 1px #00000040;display:none;height:100%;position:absolute;right:0;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__items-wrapper{padding-left:var(--eui-base-spacing-3xl);padding-right:var(--eui-base-spacing-m)}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__left-item,.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__right-item{display:block!important;padding:0 2px 2px}.eui-tabs__right-content{align-items:center;display:flex;margin-left:var(--eui-base-spacing-s)}.eui-tabs__right-content .eui-tabs__right-content-wrapper{display:flex;align-items:center}.eui-tabs .eui-tabs__wrapper--vertical .eui-tab-item__label{align-items:flex-end;display:flex}.eui-tabs .eui-tab-item{align-items:center;background-color:inherit;border:none;border-bottom:3px solid transparent;box-shadow:0 2px 1px #00000080,inset 0 1px 0 var(--eui-base-color-white);color:var(--eui-base-color-grey-90);cursor:pointer;display:flex;font-weight:600;padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m) var(--eui-base-spacing-xs) var(--eui-base-spacing-m);position:relative;text-align:center;transition:.5s cubic-bezier(.35,0,.25,1)}.eui-tabs .eui-tab-item__label{font-weight:600}.eui-tabs .eui-tab-item__label .eui-tab-item__sublabel{align-items:center;display:flex;font-size:var(--eui-base-font-size-s);font-weight:500}.eui-tabs .eui-tab-item:focus{border-bottom:3px solid var(--eui-base-color-accent-100);background:var(--eui-base-color-grey-10);outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--active{background-color:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-text)}.eui-tabs .eui-tab-item--hidden{display:none}.eui-tabs .eui-tab-item .eui-tab__close-icon{cursor:pointer;font-size:var(--eui-base-icon-size-m);opacity:.7;padding-left:var(--eui-base-spacing-s)}.eui-tabs .eui-tab-item .eui-tab__close-icon:hover{opacity:1}.eui-tabs .eui-tab-item.eui-tab-item--disabled{color:var(--eui-base-color-grey-25);cursor:not-allowed;pointer-events:none}.eui-tabs .eui-tab-item.eui-tab-item--disabled:hover{border-bottom:3px solid transparent;color:var(--eui-base-color-grey-20)}.eui-tabs .eui-tab-content-wrapper{border-top:1px solid var(--eui-base-color-grey-15)}subtabs .eui-tabs .eui-tab-content-wrapper{padding:0}subtabs .eui-tabs .eui-tab-content-wrapper .eui-tab-content-wrapper{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs.eui-tabs--vertical{display:flex;flex-direction:row}.eui-tabs.eui-tabs--vertical .eui-tabs__items .eui-tabs__items-wrapper{display:flex;flex-direction:column;height:100%}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal){border-bottom:0;flex:1 1 25%;flex-direction:column;position:relative}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item{border-bottom:0;border-left:3px solid transparent;box-shadow:0 0 1px #000000a6,inset 0 1px 0 var(--eui-base-color-white)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item--active,.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:active{border-left:3px solid var(--eui-base-color-primary-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-5);border-left:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-grey-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:focus{border-left:3px solid transparent;outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper{border-top:none;flex:1 1 75%;flex-direction:column}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s);position:relative}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs--main-navigation .eui-tabs__items,.eui-tabs--main-navigation .eui-tabs__items-wrapper{width:100%}.eui-tabs--main-navigation .eui-tab-item{flex-grow:1;justify-content:center}.eui-tabs--main-navigation .eui-tab-item--active,.eui-tabs--main-navigation .eui-tab-item :active{background-color:var(--eui-base-color-primary-10)}.eui-tabs .eui-tab-item--primary{color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--primary.eui-tab-item--active,.eui-tabs .eui-tab-item--primary:hover{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--secondary{color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item--secondary.eui-tab-item--active,.eui-tabs .eui-tab-item--secondary:hover{border-bottom-color:var(--eui-base-color-grey-80)}.eui-tabs .eui-tab-item--info{color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--info.eui-tab-item--active,.eui-tabs .eui-tab-item--info:hover{border-bottom-color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--success{color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--success.eui-tab-item--active,.eui-tabs .eui-tab-item--success:hover{border-bottom-color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--warning{color:var(--eui-base-color-warning-140)}.eui-tabs .eui-tab-item--warning.eui-tab-item--active,.eui-tabs .eui-tab-item--warning:hover{border-bottom-color:var(--eui-base-color-warning-100)}.eui-tabs .eui-tab-item--danger{color:var(--eui-base-color-danger-110)}.eui-tabs .eui-tab-item--danger.eui-tab-item--active,.eui-tabs .eui-tab-item--danger:hover{border-bottom-color:var(--eui-base-color-danger-100)}.eui-tabs .eui-tab-item--accent{color:var(--eui-base-color-grey-100)}.eui-tabs .eui-tab-item--accent.eui-tab-item--active,.eui-tabs .eui-tab-item--accent:hover{border-bottom-color:var(--eui-base-color-accent-110)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled{background:none}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--secondary{background-color:var(--eui-base-color-grey-5);color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}\n"] }]
81
+ args: [{ selector: 'eui-tab', template: "<ng-content></ng-content>\n", styles: [".eui-tabs__items{display:flex!important;flex-direction:row;position:relative;width:100%}.eui-tabs .eui-tabs__wrapper--vertical{flex:1 1 25%;flex-direction:column}.eui-tabs .eui-tabs__items-wrapper{display:flex;flex-shrink:0}.eui-tabs .eui-tabs__items{justify-content:space-between;overflow:hidden}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item{background-color:var(--eui-base-color-grey-5);box-shadow:3px 0 6px 1px #00000040;display:none;height:100%;left:0;position:absolute;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__left-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item{background-color:var(--eui-base-color-grey-5);box-shadow:-3px 0 6px 1px #00000040;display:none;height:100%;position:absolute;right:0;top:0}.eui-tabs .eui-tabs__items .eui-tabs__navigation .eui-tabs__navigation__right-item .eui-button.eui-button--icon-only{height:100%}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__items-wrapper{padding-left:var(--eui-base-spacing-3xl);padding-right:var(--eui-base-spacing-m)}.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__left-item,.eui-tabs .eui-tabs__items--scrolling .eui-tabs__navigation__right-item{display:block!important;padding:0 2px 2px}.eui-tabs__right-content{align-items:center;display:flex;margin-left:var(--eui-base-spacing-s)}.eui-tabs__right-content .eui-tabs__right-content-wrapper{display:flex;align-items:center}.eui-tabs .eui-tabs__wrapper--vertical .eui-tab-item__label{align-items:center;display:flex}.eui-tabs .eui-tab-item{align-items:center;background-color:inherit;border:none;border-bottom:3px solid transparent;box-shadow:0 2px 1px #00000080,inset 0 1px 0 var(--eui-base-color-white);color:var(--eui-base-color-grey-90);cursor:pointer;display:flex;font-weight:600;padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m) var(--eui-base-spacing-xs) var(--eui-base-spacing-m);position:relative;text-align:center;transition:.5s cubic-bezier(.35,0,.25,1)}.eui-tabs .eui-tab-item__label{font-weight:600}.eui-tabs .eui-tab-item__label .eui-tab-item__sublabel{align-items:center;display:flex;font-size:var(--eui-base-font-size-s);font-weight:500}.eui-tabs .eui-tab-item:focus{border-bottom:3px solid var(--eui-base-color-accent-100);background:var(--eui-base-color-grey-10);outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--active{background-color:var(--eui-base-color-grey-10);border-bottom:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-text)}.eui-tabs .eui-tab-item--hidden{display:none}.eui-tabs .eui-tab-item .eui-tab__close-icon{cursor:pointer;color:var(--eui-base-color-grey-75);fill:var(--eui-base-color-grey-75);opacity:.7}.eui-tabs .eui-tab-item .eui-tab__close-icon:hover>svg{color:var(--eui-base-color-primary-100);fill:var(--eui-base-color-primary-100);opacity:1}.eui-tabs .eui-tab-item.eui-tab-item--disabled{color:var(--eui-base-color-grey-25);cursor:not-allowed;pointer-events:none}.eui-tabs .eui-tab-item.eui-tab-item--disabled:hover{border-bottom:3px solid transparent;color:var(--eui-base-color-grey-20)}.eui-tabs .eui-tab-content-wrapper{border-top:1px solid var(--eui-base-color-grey-15)}subtabs .eui-tabs .eui-tab-content-wrapper{padding:0}subtabs .eui-tabs .eui-tab-content-wrapper .eui-tab-content-wrapper{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s) 0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs.eui-tabs--vertical{display:flex;flex-direction:row}.eui-tabs.eui-tabs--vertical .eui-tabs__items .eui-tabs__items-wrapper{display:flex;flex-direction:column;height:100%}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal){border-bottom:0;flex:1 1 25%;flex-direction:column;position:relative}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item{border-bottom-color:transparent;border-left:3px solid transparent;box-shadow:0 0 1px #000000a6,inset 0 1px 0 var(--eui-base-color-white)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item--active,.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:active{border-left:3px solid var(--eui-base-color-primary-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:hover:not(.eui-tab-item--active){background:var(--eui-base-color-grey-5);border-left:3px solid var(--eui-base-color-primary-100);color:var(--eui-base-color-grey-100)}.eui-tabs.eui-tabs--vertical .eui-tabs__items:not(.eui-tabs__items--horizontal) .eui-tab-item:focus{border-left:3px solid transparent;outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper{border-top:none;flex:1 1 75%;flex-direction:column}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content{padding:var(--eui-base-spacing-s);position:relative}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-base-color-grey-10)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb{background-color:var(--eui-base-color-grey-20);border-radius:5rem}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-thumb:hover{background-color:var(--eui-base-color-grey-25)}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content::-webkit-scrollbar-track{background-color:var(--eui-base-color-grey-10);border-radius:0}.eui-tabs.eui-tabs--vertical .eui-tab-content-wrapper .eui-tab-content.eui-tab-content--no-padding{padding:0}.eui-tabs--main-navigation .eui-tabs__items,.eui-tabs--main-navigation .eui-tabs__items-wrapper{width:100%}.eui-tabs--main-navigation .eui-tab-item{flex-grow:1;justify-content:center}.eui-tabs--main-navigation .eui-tab-item--active,.eui-tabs--main-navigation .eui-tab-item :active{background-color:var(--eui-base-color-primary-10)}.eui-tabs .eui-tab-item:hover,.eui-tabs .eui-tab-item.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--primary{color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--primary.eui-tab-item--active,.eui-tabs .eui-tab-item--primary:hover{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item--secondary{color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item--secondary.eui-tab-item--active,.eui-tabs .eui-tab-item--secondary:hover{border-bottom-color:var(--eui-base-color-grey-80)}.eui-tabs .eui-tab-item--info{color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--info.eui-tab-item--active,.eui-tabs .eui-tab-item--info:hover{border-bottom-color:var(--eui-base-color-info-100)}.eui-tabs .eui-tab-item--success{color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--success.eui-tab-item--active,.eui-tabs .eui-tab-item--success:hover{border-bottom-color:var(--eui-base-color-success-100)}.eui-tabs .eui-tab-item--warning{color:var(--eui-base-color-warning-140)}.eui-tabs .eui-tab-item--warning.eui-tab-item--active,.eui-tabs .eui-tab-item--warning:hover{border-bottom-color:var(--eui-base-color-warning-100)}.eui-tabs .eui-tab-item--danger{color:var(--eui-base-color-danger-110)}.eui-tabs .eui-tab-item--danger.eui-tab-item--active,.eui-tabs .eui-tab-item--danger:hover{border-bottom-color:var(--eui-base-color-danger-100)}.eui-tabs .eui-tab-item--accent{color:var(--eui-base-color-grey-100)}.eui-tabs .eui-tab-item--accent.eui-tab-item--active,.eui-tabs .eui-tab-item--accent:hover{border-bottom-color:var(--eui-base-color-accent-110)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled{background:none}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--primary{background-color:var(--eui-base-color-primary-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--primary.eui-tab-item--active{border-bottom-color:var(--eui-base-color-accent-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--secondary{background-color:var(--eui-base-color-grey-5);color:var(--eui-base-color-grey-90)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--secondary.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--info{background-color:var(--eui-base-color-info-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--info.eui-tab-item--active{border-bottom-color:var(--eui-base-color-accent-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--success{background-color:var(--eui-base-color-success-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--success.eui-tab-item--active{border-bottom-color:var(--eui-base-color-accent-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--warning{background-color:var(--eui-base-color-warning-100);color:var(--eui-base-color-black)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--warning.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--danger{background-color:var(--eui-base-color-danger-100);color:var(--eui-base-color-white)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--danger.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--accent{background-color:var(--eui-base-color-accent-100);color:var(--eui-base-color-black)}.eui-tabs .eui-tab-item.eui-tab-item--background-filled.eui-tab-item--accent.eui-tab-item--active{border-bottom-color:var(--eui-base-color-primary-100)}\n"] }]
82
82
  }], ctorParameters: function () { return []; }, propDecorators: { url: [{
83
83
  type: Input
84
84
  }], e2eAttr: [{