@skyux/tabs 9.22.0 → 9.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/documentation.json +881 -815
  2. package/esm2022/lib/modules/sectioned-form/sectioned-form-section.component.mjs +2 -2
  3. package/esm2022/lib/modules/shared/sky-tabs-resources.module.mjs +1 -2
  4. package/esm2022/lib/modules/tabs/tab-button.component.mjs +5 -4
  5. package/esm2022/lib/modules/tabs/tabs.module.mjs +5 -1
  6. package/esm2022/lib/modules/vertical-tabset/vertical-tab.component.mjs +24 -25
  7. package/esm2022/lib/modules/vertical-tabset/vertical-tabset-adapter.service.mjs +56 -2
  8. package/esm2022/lib/modules/vertical-tabset/vertical-tabset-group-message.mjs +2 -0
  9. package/esm2022/lib/modules/vertical-tabset/vertical-tabset-group.component.mjs +66 -22
  10. package/esm2022/lib/modules/vertical-tabset/vertical-tabset-group.service.mjs +17 -0
  11. package/esm2022/lib/modules/vertical-tabset/vertical-tabset.component.mjs +24 -9
  12. package/esm2022/lib/modules/vertical-tabset/vertical-tabset.service.mjs +33 -2
  13. package/esm2022/testing/tabs/tabset-fixture.mjs +2 -2
  14. package/fesm2022/skyux-tabs-testing.mjs +1 -1
  15. package/fesm2022/skyux-tabs-testing.mjs.map +1 -1
  16. package/fesm2022/skyux-tabs.mjs +212 -60
  17. package/fesm2022/skyux-tabs.mjs.map +1 -1
  18. package/lib/modules/tabs/tabs.module.d.ts +4 -3
  19. package/lib/modules/vertical-tabset/vertical-tab.component.d.ts +6 -2
  20. package/lib/modules/vertical-tabset/vertical-tabset-adapter.service.d.ts +4 -0
  21. package/lib/modules/vertical-tabset/vertical-tabset-group-message.d.ts +3 -0
  22. package/lib/modules/vertical-tabset/vertical-tabset-group.component.d.ts +6 -5
  23. package/lib/modules/vertical-tabset/vertical-tabset-group.service.d.ts +11 -0
  24. package/lib/modules/vertical-tabset/vertical-tabset.component.d.ts +7 -0
  25. package/lib/modules/vertical-tabset/vertical-tabset.service.d.ts +4 -0
  26. package/package.json +9 -9
@@ -47,11 +47,11 @@ export class SkySectionedFormSectionComponent {
47
47
  this.#ngUnsubscribe.complete();
48
48
  }
49
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkySectionedFormSectionComponent, deps: [{ token: i1.SkySectionedFormService }, { token: i2.SkyVerticalTabsetService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
50
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkySectionedFormSectionComponent, selector: "sky-sectioned-form-section", inputs: { heading: "heading", itemCount: "itemCount", active: "active" }, providers: [SkySectionedFormService], viewQueries: [{ propertyName: "tab", first: true, predicate: SkyVerticalTabComponent, descendants: true }], ngImport: i0, template: "<sky-vertical-tab\n [active]=\"active\"\n [errorIndicator]=\"fieldInvalid\"\n [ngClass]=\"{\n 'sky-tab-field-required': fieldRequired\n }\"\n [showTabRightArrow]=\"true\"\n [tabHeaderCount]=\"itemCount\"\n [tabHeading]=\"heading\"\n [tabId]=\"sectionTabId\"\n>\n <ng-content />\n</sky-vertical-tab>\n", styles: [":host .sky-tab-field-required ::ng-deep .sky-vertical-tab-heading:after{content:\"*\";color:var(--sky-highlight-color-danger);padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.SkyVerticalTabComponent, selector: "sky-vertical-tab", inputs: ["active", "ariaControls", "ariaRole", "disabled", "errorIndicator", "tabHeaderCount", "tabHeading", "showTabRightArrow", "tabId"] }] }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkySectionedFormSectionComponent, selector: "sky-sectioned-form-section", inputs: { heading: "heading", itemCount: "itemCount", active: "active" }, providers: [SkySectionedFormService], viewQueries: [{ propertyName: "tab", first: true, predicate: SkyVerticalTabComponent, descendants: true }], ngImport: i0, template: "<sky-vertical-tab\n [active]=\"active\"\n [errorIndicator]=\"fieldInvalid\"\n [ngClass]=\"{\n 'sky-tab-field-required': fieldRequired\n }\"\n [showTabRightArrow]=\"true\"\n [tabHeaderCount]=\"itemCount\"\n [tabHeading]=\"heading\"\n [tabId]=\"sectionTabId\"\n>\n <ng-content />\n</sky-vertical-tab>\n", styles: [":host .sky-tab-field-required ::ng-deep .sky-vertical-tab-heading:after{content:\"*\";content:\"*\"/\"\";color:var(--sky-highlight-color-danger);padding-left:5px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.SkyVerticalTabComponent, selector: "sky-vertical-tab", inputs: ["active", "ariaControls", "ariaRole", "disabled", "errorIndicator", "tabHeaderCount", "tabHeading", "showTabRightArrow", "tabId"] }] }); }
51
51
  }
52
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkySectionedFormSectionComponent, decorators: [{
53
53
  type: Component,
54
- args: [{ selector: 'sky-sectioned-form-section', providers: [SkySectionedFormService], template: "<sky-vertical-tab\n [active]=\"active\"\n [errorIndicator]=\"fieldInvalid\"\n [ngClass]=\"{\n 'sky-tab-field-required': fieldRequired\n }\"\n [showTabRightArrow]=\"true\"\n [tabHeaderCount]=\"itemCount\"\n [tabHeading]=\"heading\"\n [tabId]=\"sectionTabId\"\n>\n <ng-content />\n</sky-vertical-tab>\n", styles: [":host .sky-tab-field-required ::ng-deep .sky-vertical-tab-heading:after{content:\"*\";color:var(--sky-highlight-color-danger);padding-left:5px}\n"] }]
54
+ args: [{ selector: 'sky-sectioned-form-section', providers: [SkySectionedFormService], template: "<sky-vertical-tab\n [active]=\"active\"\n [errorIndicator]=\"fieldInvalid\"\n [ngClass]=\"{\n 'sky-tab-field-required': fieldRequired\n }\"\n [showTabRightArrow]=\"true\"\n [tabHeaderCount]=\"itemCount\"\n [tabHeading]=\"heading\"\n [tabId]=\"sectionTabId\"\n>\n <ng-content />\n</sky-vertical-tab>\n", styles: [":host .sky-tab-field-required ::ng-deep .sky-vertical-tab-heading:after{content:\"*\";content:\"*\"/\"\";color:var(--sky-highlight-color-danger);padding-left:5px}\n"] }]
55
55
  }], ctorParameters: function () { return [{ type: i1.SkySectionedFormService }, { type: i2.SkyVerticalTabsetService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { heading: [{
56
56
  type: Input
57
57
  }], itemCount: [{
@@ -16,7 +16,6 @@ const RESOURCES = {
16
16
  skyux_tabs_navigator_next: { message: 'Next' },
17
17
  skyux_tabs_navigator_previous: { message: 'Previous' },
18
18
  skyux_tab_open: { message: 'Open tab' },
19
- skyux_tabs_sr_tab_order: { message: 'Tab {0} of {1}: {2}' },
20
19
  skyux_vertical_tabs_show_tabs_text: { message: 'Tab list' },
21
20
  skyux_wizard_sr_step_current: { message: 'Step {0} of {1}, current: {2}' },
22
21
  skyux_wizard_sr_step_completed: {
@@ -60,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
60
59
  ],
61
60
  }]
62
61
  }] });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LXRhYnMtcmVzb3VyY2VzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy9zaGFyZWQvc2t5LXRhYnMtcmVzb3VyY2VzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwQkFBMEI7QUFFMUI7Ozs7O0dBS0c7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCwyQkFBMkIsRUFFM0IsYUFBYSxFQUdiLHNCQUFzQixFQUN0QixxQkFBcUIsR0FDdEIsTUFBTSxhQUFhLENBQUM7O0FBRXJCLE1BQU0sU0FBUyxHQUEwQztJQUN2RCxPQUFPLEVBQUU7UUFDUCxhQUFhLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFO1FBQ3JDLGVBQWUsRUFBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUU7UUFDN0MsMkJBQTJCLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO1FBQ2xELHlCQUF5QixFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRTtRQUM5Qyw2QkFBNkIsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUU7UUFDdEQsY0FBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRTtRQUN2Qyx1QkFBdUIsRUFBRSxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRTtRQUMzRCxrQ0FBa0MsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUU7UUFDM0QsNEJBQTRCLEVBQUUsRUFBRSxPQUFPLEVBQUUsK0JBQStCLEVBQUU7UUFDMUUsOEJBQThCLEVBQUU7WUFDOUIsT0FBTyxFQUFFLGlDQUFpQztTQUMzQztRQUNELGdDQUFnQyxFQUFFO1lBQ2hDLE9BQU8sRUFBRSxtQ0FBbUM7U0FDN0M7S0FDRjtDQUNGLENBQUM7QUFFRixzQkFBc0IsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFL0MsTUFBTSxPQUFPLHdCQUF3QjtJQUM1QixTQUFTLENBQ2QsVUFBNEIsRUFDNUIsSUFBWTtRQUVaLE9BQU8scUJBQXFCLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFXSCxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixZQVR2QixhQUFhOytHQVNaLHNCQUFzQixhQVJ0QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixZQVBTLGFBQWE7OzJGQVNaLHNCQUFzQjtrQkFWbEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7b0JBQ3hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxRQUFRLEVBQUUsd0JBQXdCOzRCQUNsQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG5cbi8qKlxuICogTk9USUNFOiBETyBOT1QgTU9ESUZZIFRISVMgRklMRSFcbiAqIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2VyZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieVxuICogdGhlICduZyBnZW5lcmF0ZSBAc2t5dXgvaTE4bjpsaWItcmVzb3VyY2VzLW1vZHVsZSBsaWIvbW9kdWxlcy9zaGFyZWQvc2t5LXRhYnMnIHNjaGVtYXRpYy5cbiAqIFRvIHVwZGF0ZSB0aGlzIGZpbGUsIHNpbXBseSByZXJ1biB0aGUgY29tbWFuZC5cbiAqL1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbiAgU2t5QXBwTG9jYWxlSW5mbyxcbiAgU2t5STE4bk1vZHVsZSxcbiAgU2t5TGliUmVzb3VyY2VzLFxuICBTa3lMaWJSZXNvdXJjZXNQcm92aWRlcixcbiAgU2t5TGliUmVzb3VyY2VzU2VydmljZSxcbiAgZ2V0TGliU3RyaW5nRm9yTG9jYWxlLFxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmNvbnN0IFJFU09VUkNFUzogeyBbbG9jYWxlOiBzdHJpbmddOiBTa3lMaWJSZXNvdXJjZXMgfSA9IHtcbiAgJ0VOLVVTJzoge1xuICAgIHNreXV4X3RhYl9hZGQ6IHsgbWVzc2FnZTogJ0FkZCB0YWInIH0sXG4gICAgc2t5dXhfdGFiX2Nsb3NlOiB7IG1lc3NhZ2U6ICdDbG9zZSB7MH0gdGFiJyB9LFxuICAgIHNreXV4X3RhYnNfbmF2aWdhdG9yX2ZpbmlzaDogeyBtZXNzYWdlOiAnRmluaXNoJyB9LFxuICAgIHNreXV4X3RhYnNfbmF2aWdhdG9yX25leHQ6IHsgbWVzc2FnZTogJ05leHQnIH0sXG4gICAgc2t5dXhfdGFic19uYXZpZ2F0b3JfcHJldmlvdXM6IHsgbWVzc2FnZTogJ1ByZXZpb3VzJyB9LFxuICAgIHNreXV4X3RhYl9vcGVuOiB7IG1lc3NhZ2U6ICdPcGVuIHRhYicgfSxcbiAgICBza3l1eF90YWJzX3NyX3RhYl9vcmRlcjogeyBtZXNzYWdlOiAnVGFiIHswfSBvZiB7MX06IHsyfScgfSxcbiAgICBza3l1eF92ZXJ0aWNhbF90YWJzX3Nob3dfdGFic190ZXh0OiB7IG1lc3NhZ2U6ICdUYWIgbGlzdCcgfSxcbiAgICBza3l1eF93aXphcmRfc3Jfc3RlcF9jdXJyZW50OiB7IG1lc3NhZ2U6ICdTdGVwIHswfSBvZiB7MX0sIGN1cnJlbnQ6IHsyfScgfSxcbiAgICBza3l1eF93aXphcmRfc3Jfc3RlcF9jb21wbGV0ZWQ6IHtcbiAgICAgIG1lc3NhZ2U6ICdTdGVwIHswfSBvZiB7MX0sIGNvbXBsZXRlZDogezJ9JyxcbiAgICB9LFxuICAgIHNreXV4X3dpemFyZF9zcl9zdGVwX3VuYXZhaWxhYmxlOiB7XG4gICAgICBtZXNzYWdlOiAnU3RlcCB7MH0gb2YgezF9LCB1bmF2YWlsYWJsZTogezJ9JyxcbiAgICB9LFxuICB9LFxufTtcblxuU2t5TGliUmVzb3VyY2VzU2VydmljZS5hZGRSZXNvdXJjZXMoUkVTT1VSQ0VTKTtcblxuZXhwb3J0IGNsYXNzIFNreVRhYnNSZXNvdXJjZXNQcm92aWRlciBpbXBsZW1lbnRzIFNreUxpYlJlc291cmNlc1Byb3ZpZGVyIHtcbiAgcHVibGljIGdldFN0cmluZyhcbiAgICBsb2NhbGVJbmZvOiBTa3lBcHBMb2NhbGVJbmZvLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gZ2V0TGliU3RyaW5nRm9yTG9jYWxlKFJFU09VUkNFUywgbG9jYWxlSW5mby5sb2NhbGUsIG5hbWUpO1xuICB9XG59XG5cbi8qKlxuICogSW1wb3J0IGludG8gYW55IGNvbXBvbmVudCBsaWJyYXJ5IG1vZHVsZSB0aGF0IG5lZWRzIHRvIHVzZSByZXNvdXJjZSBzdHJpbmdzLlxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbU2t5STE4bk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbiAgICAgIHVzZUNsYXNzOiBTa3lUYWJzUmVzb3VyY2VzUHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUYWJzUmVzb3VyY2VzTW9kdWxlIHt9XG4iXX0=
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LXRhYnMtcmVzb3VyY2VzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy9zaGFyZWQvc2t5LXRhYnMtcmVzb3VyY2VzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwQkFBMEI7QUFFMUI7Ozs7O0dBS0c7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDTCwyQkFBMkIsRUFFM0IsYUFBYSxFQUdiLHNCQUFzQixFQUN0QixxQkFBcUIsR0FDdEIsTUFBTSxhQUFhLENBQUM7O0FBRXJCLE1BQU0sU0FBUyxHQUEwQztJQUN2RCxPQUFPLEVBQUU7UUFDUCxhQUFhLEVBQUUsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFO1FBQ3JDLGVBQWUsRUFBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUU7UUFDN0MsMkJBQTJCLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFO1FBQ2xELHlCQUF5QixFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRTtRQUM5Qyw2QkFBNkIsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUU7UUFDdEQsY0FBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRTtRQUN2QyxrQ0FBa0MsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUU7UUFDM0QsNEJBQTRCLEVBQUUsRUFBRSxPQUFPLEVBQUUsK0JBQStCLEVBQUU7UUFDMUUsOEJBQThCLEVBQUU7WUFDOUIsT0FBTyxFQUFFLGlDQUFpQztTQUMzQztRQUNELGdDQUFnQyxFQUFFO1lBQ2hDLE9BQU8sRUFBRSxtQ0FBbUM7U0FDN0M7S0FDRjtDQUNGLENBQUM7QUFFRixzQkFBc0IsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFL0MsTUFBTSxPQUFPLHdCQUF3QjtJQUM1QixTQUFTLENBQ2QsVUFBNEIsRUFDNUIsSUFBWTtRQUVaLE9BQU8scUJBQXFCLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUFXSCxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7K0dBQXRCLHNCQUFzQixZQVR2QixhQUFhOytHQVNaLHNCQUFzQixhQVJ0QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSwyQkFBMkI7Z0JBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7Z0JBQ2xDLEtBQUssRUFBRSxJQUFJO2FBQ1o7U0FDRixZQVBTLGFBQWE7OzJGQVNaLHNCQUFzQjtrQkFWbEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7b0JBQ3hCLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsMkJBQTJCOzRCQUNwQyxRQUFRLEVBQUUsd0JBQXdCOzRCQUNsQyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGlzdGFuYnVsIGlnbm9yZSBmaWxlICovXG5cbi8qKlxuICogTk9USUNFOiBETyBOT1QgTU9ESUZZIFRISVMgRklMRSFcbiAqIFRoZSBjb250ZW50cyBvZiB0aGlzIGZpbGUgd2VyZSBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieVxuICogdGhlICduZyBnZW5lcmF0ZSBAc2t5dXgvaTE4bjpsaWItcmVzb3VyY2VzLW1vZHVsZSBsaWIvbW9kdWxlcy9zaGFyZWQvc2t5LXRhYnMnIHNjaGVtYXRpYy5cbiAqIFRvIHVwZGF0ZSB0aGlzIGZpbGUsIHNpbXBseSByZXJ1biB0aGUgY29tbWFuZC5cbiAqL1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbiAgU2t5QXBwTG9jYWxlSW5mbyxcbiAgU2t5STE4bk1vZHVsZSxcbiAgU2t5TGliUmVzb3VyY2VzLFxuICBTa3lMaWJSZXNvdXJjZXNQcm92aWRlcixcbiAgU2t5TGliUmVzb3VyY2VzU2VydmljZSxcbiAgZ2V0TGliU3RyaW5nRm9yTG9jYWxlLFxufSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmNvbnN0IFJFU09VUkNFUzogeyBbbG9jYWxlOiBzdHJpbmddOiBTa3lMaWJSZXNvdXJjZXMgfSA9IHtcbiAgJ0VOLVVTJzoge1xuICAgIHNreXV4X3RhYl9hZGQ6IHsgbWVzc2FnZTogJ0FkZCB0YWInIH0sXG4gICAgc2t5dXhfdGFiX2Nsb3NlOiB7IG1lc3NhZ2U6ICdDbG9zZSB7MH0gdGFiJyB9LFxuICAgIHNreXV4X3RhYnNfbmF2aWdhdG9yX2ZpbmlzaDogeyBtZXNzYWdlOiAnRmluaXNoJyB9LFxuICAgIHNreXV4X3RhYnNfbmF2aWdhdG9yX25leHQ6IHsgbWVzc2FnZTogJ05leHQnIH0sXG4gICAgc2t5dXhfdGFic19uYXZpZ2F0b3JfcHJldmlvdXM6IHsgbWVzc2FnZTogJ1ByZXZpb3VzJyB9LFxuICAgIHNreXV4X3RhYl9vcGVuOiB7IG1lc3NhZ2U6ICdPcGVuIHRhYicgfSxcbiAgICBza3l1eF92ZXJ0aWNhbF90YWJzX3Nob3dfdGFic190ZXh0OiB7IG1lc3NhZ2U6ICdUYWIgbGlzdCcgfSxcbiAgICBza3l1eF93aXphcmRfc3Jfc3RlcF9jdXJyZW50OiB7IG1lc3NhZ2U6ICdTdGVwIHswfSBvZiB7MX0sIGN1cnJlbnQ6IHsyfScgfSxcbiAgICBza3l1eF93aXphcmRfc3Jfc3RlcF9jb21wbGV0ZWQ6IHtcbiAgICAgIG1lc3NhZ2U6ICdTdGVwIHswfSBvZiB7MX0sIGNvbXBsZXRlZDogezJ9JyxcbiAgICB9LFxuICAgIHNreXV4X3dpemFyZF9zcl9zdGVwX3VuYXZhaWxhYmxlOiB7XG4gICAgICBtZXNzYWdlOiAnU3RlcCB7MH0gb2YgezF9LCB1bmF2YWlsYWJsZTogezJ9JyxcbiAgICB9LFxuICB9LFxufTtcblxuU2t5TGliUmVzb3VyY2VzU2VydmljZS5hZGRSZXNvdXJjZXMoUkVTT1VSQ0VTKTtcblxuZXhwb3J0IGNsYXNzIFNreVRhYnNSZXNvdXJjZXNQcm92aWRlciBpbXBsZW1lbnRzIFNreUxpYlJlc291cmNlc1Byb3ZpZGVyIHtcbiAgcHVibGljIGdldFN0cmluZyhcbiAgICBsb2NhbGVJbmZvOiBTa3lBcHBMb2NhbGVJbmZvLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gZ2V0TGliU3RyaW5nRm9yTG9jYWxlKFJFU09VUkNFUywgbG9jYWxlSW5mby5sb2NhbGUsIG5hbWUpO1xuICB9XG59XG5cbi8qKlxuICogSW1wb3J0IGludG8gYW55IGNvbXBvbmVudCBsaWJyYXJ5IG1vZHVsZSB0aGF0IG5lZWRzIHRvIHVzZSByZXNvdXJjZSBzdHJpbmdzLlxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbU2t5STE4bk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNLWV9MSUJfUkVTT1VSQ0VTX1BST1ZJREVSUyxcbiAgICAgIHVzZUNsYXNzOiBTa3lUYWJzUmVzb3VyY2VzUHJvdmlkZXIsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUYWJzUmVzb3VyY2VzTW9kdWxlIHt9XG4iXX0=
@@ -7,7 +7,8 @@ import * as i1 from "./tab-button-adapter.service";
7
7
  import * as i2 from "./tabset.service";
8
8
  import * as i3 from "@angular/common";
9
9
  import * as i4 from "@skyux/indicators";
10
- import * as i5 from "@skyux/i18n";
10
+ import * as i5 from "@skyux/core";
11
+ import * as i6 from "@skyux/i18n";
11
12
  const DEFAULT_DISABLED = false;
12
13
  /**
13
14
  * @internal
@@ -125,11 +126,11 @@ export class SkyTabButtonComponent {
125
126
  this.#changeDetectorRef.markForCheck();
126
127
  }
127
128
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTabButtonComponent, deps: [{ token: i0.ElementRef }, { token: i1.SkyTabButtonAdapterService }, { token: i0.ChangeDetectorRef }, { token: i2.SkyTabsetService }], target: i0.ɵɵFactoryTarget.Component }); }
128
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkyTabButtonComponent, selector: "sky-tab-button", inputs: { active: "active", ariaControls: "ariaControls", buttonHref: "buttonHref", buttonId: "buttonId", buttonText: "buttonText", buttonTextCount: "buttonTextCount", closeable: "closeable", disabled: "disabled", tabIndex: "tabIndex", tabNumber: "tabNumber", totalTabsCount: "totalTabsCount", tabStyle: "tabStyle" }, outputs: { buttonClick: "buttonClick", closeClick: "closeClick" }, providers: [SkyTabButtonAdapterService], ngImport: i0, template: "<div\n class=\"sky-btn-tab-wrapper\"\n [ngClass]=\"{\n 'sky-btn-tab-wrapper-selected': active,\n 'sky-btn-tab-wrapper-disabled': disabled\n }\"\n>\n <a\n #tabButtonEl\n class=\"sky-btn-tab\"\n role=\"tab\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-selected]=\"active\"\n [attr.href]=\"buttonHref\"\n [attr.aria-label]=\"\n (tabStyle === 'wizard'\n ? 'skyux_wizard_sr_step_' + wizardStepState\n : 'skyux_tabs_sr_tab_order'\n ) | skyLibResources : tabNumber : totalTabsCount : buttonText\n \"\n [id]=\"buttonId\"\n [ngClass]=\"{\n 'sky-btn-tab-wizard': tabStyle === 'wizard',\n 'sky-btn-tab-selected': active,\n 'sky-btn-tab-disabled': disabled,\n 'sky-tab-btn-closeable': closeable\n }\"\n [tabindex]=\"active ? '0' : '-1'\"\n (click)=\"onButtonClick($event)\"\n (keydown)=\"onTabButtonKeyDown($event)\"\n (focus)=\"onFocus()\"\n >\n <span class=\"sky-tab-heading\" [attr.aria-hidden]=\"true\">\n {{ buttonText }}\n <span *ngIf=\"buttonTextCount !== undefined\" class=\"sky-tab-header-count\">\n {{ buttonTextCount }}\n </span>\n <span\n *ngIf=\"closeable\"\n class=\"sky-btn-tab-close\"\n [tabindex]=\"closeBtnTabIndex\"\n [attr.aria-label]=\"'skyux_tab_close' | skyLibResources : buttonText\"\n [ngClass]=\"{\n 'sky-btn-tab-close-disabled': disabled\n }\"\n (click)=\"onCloseClick($event)\"\n (keydown.enter)=\"onCloseClick($event)\"\n >\n <sky-icon icon=\"remove\" />\n </span>\n </span>\n </a>\n</div>\n", styles: [".sky-btn-tab-wrapper{display:inline-block;position:relative;margin-right:5px}.sky-btn-tab-wrapper .sky-btn-tab-close{position:absolute;top:10px;right:10px;color:#686c73;padding:1px 6px}.sky-btn-tab-wrapper .sky-btn-tab-close:hover{color:#212327;transition:color .15s}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#fff}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-disabled{cursor:not-allowed}.sky-tab-btn-closeable{padding-right:43px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper{margin-right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}:host-context(.sky-theme-modern) .sky-tab-btn-closeable{padding-right:44px}.sky-theme-modern .sky-btn-tab-wrapper{margin-right:10px}.sky-theme-modern .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}.sky-theme-modern .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}.sky-theme-modern .sky-tab-btn-closeable{padding-right:44px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "pipe", type: i5.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
129
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SkyTabButtonComponent, selector: "sky-tab-button", inputs: { active: "active", ariaControls: "ariaControls", buttonHref: "buttonHref", buttonId: "buttonId", buttonText: "buttonText", buttonTextCount: "buttonTextCount", closeable: "closeable", disabled: "disabled", tabIndex: "tabIndex", tabNumber: "tabNumber", totalTabsCount: "totalTabsCount", tabStyle: "tabStyle" }, outputs: { buttonClick: "buttonClick", closeClick: "closeClick" }, providers: [SkyTabButtonAdapterService], ngImport: i0, template: "<div\n class=\"sky-btn-tab-wrapper\"\n [ngClass]=\"{\n 'sky-btn-tab-wrapper-selected': active,\n 'sky-btn-tab-wrapper-disabled': disabled\n }\"\n>\n <a\n #tabButtonEl\n class=\"sky-btn-tab\"\n role=\"tab\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-selected]=\"active\"\n [attr.href]=\"buttonHref\"\n [attr.aria-label]=\"\n tabStyle === 'wizard'\n ? ('skyux_wizard_sr_step_' + wizardStepState\n | skyLibResources : tabNumber : totalTabsCount : buttonText)\n : null\n \"\n [attr.aria-labelledby]=\"tabStyle === 'wizard' ? null : tabHeading.id\"\n [id]=\"buttonId\"\n [ngClass]=\"{\n 'sky-btn-tab-wizard': tabStyle === 'wizard',\n 'sky-btn-tab-selected': active,\n 'sky-btn-tab-disabled': disabled,\n 'sky-tab-btn-closeable': closeable\n }\"\n [tabindex]=\"active ? '0' : '-1'\"\n (click)=\"onButtonClick($event)\"\n (keydown)=\"onTabButtonKeyDown($event)\"\n (focus)=\"onFocus()\"\n >\n <span class=\"sky-tab-heading\" [attr.aria-hidden]=\"true\">\n <span skyId #tabHeading=\"skyId\">\n {{ buttonText }}\n <span\n *ngIf=\"buttonTextCount !== undefined\"\n class=\"sky-tab-header-count\"\n >\n {{ buttonTextCount }}\n </span>\n </span>\n <span\n *ngIf=\"closeable\"\n class=\"sky-btn-tab-close\"\n [tabindex]=\"closeBtnTabIndex\"\n [attr.aria-label]=\"'skyux_tab_close' | skyLibResources : buttonText\"\n [ngClass]=\"{\n 'sky-btn-tab-close-disabled': disabled\n }\"\n (click)=\"onCloseClick($event)\"\n (keydown.enter)=\"onCloseClick($event)\"\n >\n <sky-icon icon=\"remove\" />\n </span>\n </span>\n </a>\n</div>\n", styles: [".sky-btn-tab-wrapper{display:inline-block;position:relative;margin-right:5px}.sky-btn-tab-wrapper .sky-btn-tab-close{position:absolute;top:10px;right:10px;color:#686c73;padding:1px 6px}.sky-btn-tab-wrapper .sky-btn-tab-close:hover{color:#212327;transition:color .15s}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#fff}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-disabled{cursor:not-allowed}.sky-tab-btn-closeable{padding-right:43px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper{margin-right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}:host-context(.sky-theme-modern) .sky-tab-btn-closeable{padding-right:44px}.sky-theme-modern .sky-btn-tab-wrapper{margin-right:10px}.sky-theme-modern .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}.sky-theme-modern .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}.sky-theme-modern .sky-tab-btn-closeable{padding-right:44px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i5.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "pipe", type: i6.SkyLibResourcesPipe, name: "skyLibResources" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
129
130
  }
130
131
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTabButtonComponent, decorators: [{
131
132
  type: Component,
132
- args: [{ selector: 'sky-tab-button', providers: [SkyTabButtonAdapterService], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"sky-btn-tab-wrapper\"\n [ngClass]=\"{\n 'sky-btn-tab-wrapper-selected': active,\n 'sky-btn-tab-wrapper-disabled': disabled\n }\"\n>\n <a\n #tabButtonEl\n class=\"sky-btn-tab\"\n role=\"tab\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-selected]=\"active\"\n [attr.href]=\"buttonHref\"\n [attr.aria-label]=\"\n (tabStyle === 'wizard'\n ? 'skyux_wizard_sr_step_' + wizardStepState\n : 'skyux_tabs_sr_tab_order'\n ) | skyLibResources : tabNumber : totalTabsCount : buttonText\n \"\n [id]=\"buttonId\"\n [ngClass]=\"{\n 'sky-btn-tab-wizard': tabStyle === 'wizard',\n 'sky-btn-tab-selected': active,\n 'sky-btn-tab-disabled': disabled,\n 'sky-tab-btn-closeable': closeable\n }\"\n [tabindex]=\"active ? '0' : '-1'\"\n (click)=\"onButtonClick($event)\"\n (keydown)=\"onTabButtonKeyDown($event)\"\n (focus)=\"onFocus()\"\n >\n <span class=\"sky-tab-heading\" [attr.aria-hidden]=\"true\">\n {{ buttonText }}\n <span *ngIf=\"buttonTextCount !== undefined\" class=\"sky-tab-header-count\">\n {{ buttonTextCount }}\n </span>\n <span\n *ngIf=\"closeable\"\n class=\"sky-btn-tab-close\"\n [tabindex]=\"closeBtnTabIndex\"\n [attr.aria-label]=\"'skyux_tab_close' | skyLibResources : buttonText\"\n [ngClass]=\"{\n 'sky-btn-tab-close-disabled': disabled\n }\"\n (click)=\"onCloseClick($event)\"\n (keydown.enter)=\"onCloseClick($event)\"\n >\n <sky-icon icon=\"remove\" />\n </span>\n </span>\n </a>\n</div>\n", styles: [".sky-btn-tab-wrapper{display:inline-block;position:relative;margin-right:5px}.sky-btn-tab-wrapper .sky-btn-tab-close{position:absolute;top:10px;right:10px;color:#686c73;padding:1px 6px}.sky-btn-tab-wrapper .sky-btn-tab-close:hover{color:#212327;transition:color .15s}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#fff}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-disabled{cursor:not-allowed}.sky-tab-btn-closeable{padding-right:43px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper{margin-right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}:host-context(.sky-theme-modern) .sky-tab-btn-closeable{padding-right:44px}.sky-theme-modern .sky-btn-tab-wrapper{margin-right:10px}.sky-theme-modern .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}.sky-theme-modern .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}.sky-theme-modern .sky-tab-btn-closeable{padding-right:44px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}\n"] }]
133
+ args: [{ selector: 'sky-tab-button', providers: [SkyTabButtonAdapterService], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n class=\"sky-btn-tab-wrapper\"\n [ngClass]=\"{\n 'sky-btn-tab-wrapper-selected': active,\n 'sky-btn-tab-wrapper-disabled': disabled\n }\"\n>\n <a\n #tabButtonEl\n class=\"sky-btn-tab\"\n role=\"tab\"\n [attr.aria-controls]=\"ariaControls\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-selected]=\"active\"\n [attr.href]=\"buttonHref\"\n [attr.aria-label]=\"\n tabStyle === 'wizard'\n ? ('skyux_wizard_sr_step_' + wizardStepState\n | skyLibResources : tabNumber : totalTabsCount : buttonText)\n : null\n \"\n [attr.aria-labelledby]=\"tabStyle === 'wizard' ? null : tabHeading.id\"\n [id]=\"buttonId\"\n [ngClass]=\"{\n 'sky-btn-tab-wizard': tabStyle === 'wizard',\n 'sky-btn-tab-selected': active,\n 'sky-btn-tab-disabled': disabled,\n 'sky-tab-btn-closeable': closeable\n }\"\n [tabindex]=\"active ? '0' : '-1'\"\n (click)=\"onButtonClick($event)\"\n (keydown)=\"onTabButtonKeyDown($event)\"\n (focus)=\"onFocus()\"\n >\n <span class=\"sky-tab-heading\" [attr.aria-hidden]=\"true\">\n <span skyId #tabHeading=\"skyId\">\n {{ buttonText }}\n <span\n *ngIf=\"buttonTextCount !== undefined\"\n class=\"sky-tab-header-count\"\n >\n {{ buttonTextCount }}\n </span>\n </span>\n <span\n *ngIf=\"closeable\"\n class=\"sky-btn-tab-close\"\n [tabindex]=\"closeBtnTabIndex\"\n [attr.aria-label]=\"'skyux_tab_close' | skyLibResources : buttonText\"\n [ngClass]=\"{\n 'sky-btn-tab-close-disabled': disabled\n }\"\n (click)=\"onCloseClick($event)\"\n (keydown.enter)=\"onCloseClick($event)\"\n >\n <sky-icon icon=\"remove\" />\n </span>\n </span>\n </a>\n</div>\n", styles: [".sky-btn-tab-wrapper{display:inline-block;position:relative;margin-right:5px}.sky-btn-tab-wrapper .sky-btn-tab-close{position:absolute;top:10px;right:10px;color:#686c73;padding:1px 6px}.sky-btn-tab-wrapper .sky-btn-tab-close:hover{color:#212327;transition:color .15s}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#fff}.sky-btn-tab-wrapper.sky-btn-tab-wrapper-disabled{cursor:not-allowed}.sky-tab-btn-closeable{padding-right:43px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper{margin-right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}:host-context(.sky-theme-modern) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}:host-context(.sky-theme-modern) .sky-tab-btn-closeable{padding-right:44px}.sky-theme-modern .sky-btn-tab-wrapper{margin-right:10px}.sky-theme-modern .sky-btn-tab-wrapper .sky-btn-tab-close{top:12px;right:10px}.sky-theme-modern .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#686c73}.sky-theme-modern .sky-tab-btn-closeable{padding-right:44px}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper .sky-btn-tab-close{color:#eeeeef}.sky-theme-modern.sky-theme-mode-dark .sky-btn-tab-wrapper.sky-btn-tab-wrapper-selected:not(.sky-btn-tab-wrapper-disabled) .sky-btn-tab-close{color:#eeeeef}\n"] }]
133
134
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SkyTabButtonAdapterService }, { type: i0.ChangeDetectorRef }, { type: i2.SkyTabsetService }]; }, propDecorators: { active: [{
134
135
  type: Input
135
136
  }], ariaControls: [{
@@ -159,4 +160,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
159
160
  }], closeClick: [{
160
161
  type: Output
161
162
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGFicy9zcmMvbGliL21vZHVsZXMvdGFicy90YWItYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy90YWJzL3RhYi1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7O0FBSzFFLE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0FBSS9COztHQUVHO0FBU0gsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxJQUNXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUNELElBQVcsTUFBTSxDQUFDLEtBQTBCO1FBQzFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFvQkQsSUFDVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBVyxRQUFRLENBQUMsS0FBMEI7UUFDNUMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLElBQUksZ0JBQWdCLENBQUM7UUFDOUMsSUFBSSxD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Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUlLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBV0MsUUFBUTtzQkFEZCxLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJQyxjQUFjO3NCQURwQixLQUFLO2dCQUlLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBV0MsV0FBVztzQkFEakIsTUFBTTtnQkFJQSxVQUFVO3NCQURoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVRhYkJ1dHRvbkFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi90YWItYnV0dG9uLWFkYXB0ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lUYWJJbmRleCB9IGZyb20gJy4vdGFiLWluZGV4JztcbmltcG9ydCB7IFNreVRhYnNldFN0eWxlIH0gZnJvbSAnLi90YWJzZXQtc3R5bGUnO1xuaW1wb3J0IHsgU2t5VGFic2V0U2VydmljZSB9IGZyb20gJy4vdGFic2V0LnNlcnZpY2UnO1xuXG5jb25zdCBERUZBVUxUX0RJU0FCTEVEID0gZmFsc2U7XG5cbnR5cGUgU2t5V2l6YXJkU3RlcFN0YXRlID0gJ2NvbXBsZXRlZCcgfCAnY3VycmVudCcgfCAndW5hdmFpbGFibGUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktdGFiLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGFiLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtTa3lUYWJCdXR0b25BZGFwdGVyU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUYWJCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGFjdGl2ZSgpOiBib29sZWFuIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX2lzQWN0aXZlO1xuICB9XG4gIHB1YmxpYyBzZXQgYWN0aXZlKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2lzQWN0aXZlID0gdmFsdWU7XG4gICAgdGhpcy4jdXBkYXRlV2l6YXJkU3RlcFN0YXRlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgYXJpYUNvbnRyb2xzOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGJ1dHRvbkhyZWY6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYnV0dG9uSWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYnV0dG9uVGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBidXR0b25UZXh0Q291bnQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgY2xvc2VhYmxlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI19pc0Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19pc0Rpc2FibGVkID0gdmFsdWUgPz8gREVGQVVMVF9ESVNBQkxFRDtcbiAgICB0aGlzLiN1cGRhdGVXaXphcmRTdGVwU3RhdGUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0YWJJbmRleDogU2t5VGFiSW5kZXggfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHRhYk51bWJlcjogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0b3RhbFRhYnNDb3VudDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgdGFiU3R5bGUoKTogU2t5VGFic2V0U3R5bGUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLiNfdGFiU3R5bGU7XG4gIH1cblxuICBwdWJsaWMgc2V0IHRhYlN0eWxlKHN0eWxlOiBTa3lUYWJzZXRTdHlsZSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI190YWJTdHlsZSA9IHN0eWxlO1xuICAgIHRoaXMuI3VwZGF0ZVdpemFyZFN0ZXBTdGF0ZSgpO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBidXR0b25DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsb3NlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBhZGFwdGVyU2VydmljZTogU2t5VGFiQnV0dG9uQWRhcHRlclNlcnZpY2UsXG4gICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHRhYnNldFNlcnZpY2U6IFNreVRhYnNldFNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlID0gYWRhcHRlclNlcnZpY2U7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3JSZWYgPSBjaGFuZ2VEZXRlY3RvclJlZjtcbiAgICB0aGlzLiNlbGVtZW50UmVmID0gZWxlbWVudFJlZjtcbiAgICB0aGlzLiN0YWJzZXRTZXJ2aWNlID0gdGFic2V0U2VydmljZTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZUJ0blRhYkluZGV4ID0gJy0xJztcbiAgcHVibGljIHdpemFyZFN0ZXBTdGF0ZTogU2t5V2l6YXJkU3RlcFN0YXRlIHwgdW5kZWZpbmVkO1xuICAjX2lzQWN0aXZlOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG4gICNfaXNEaXNhYmxlZCA9IERFRkFVTFRfRElTQUJMRUQ7XG4gICNfdGFiU3R5bGU6IFNreVRhYnNldFN0eWxlIHwgdW5kZWZpbmVkO1xuICAjYWRhcHRlclNlcnZpY2U6IFNreVRhYkJ1dHRvbkFkYXB0ZXJTZXJ2aWNlO1xuICAjY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmO1xuICAjZWxlbWVudFJlZjogRWxlbWVudFJlZjtcbiAgI3RhYnNldFNlcnZpY2U6IFNreVRhYnNldFNlcnZpY2U7XG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuZm9jdXNlZFRhYkJ0bkluZGV4XG4gICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChmb2N1c2VkSW5kZXgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudGFiSW5kZXggIT09IHVuZGVmaW5lZCAmJiBmb2N1c2VkSW5kZXggPT09IHRoaXMudGFiSW5kZXgpIHtcbiAgICAgICAgICB0aGlzLmNsb3NlQnRuVGFiSW5kZXggPSAnMCc7XG4gICAgICAgICAgdGhpcy5mb2N1c0J0bigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY2xvc2VCdG5UYWJJbmRleCA9ICctMSc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLiNuZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgb25CdXR0b25DbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmJ1dHRvbkNsaWNrLmVtaXQoKTtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uVGFiQnV0dG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIC8qaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoZXZlbnQua2V5KSB7XG4gICAgICBzd2l0Y2ggKGV2ZW50LmtleS50b1VwcGVyQ2FzZSgpKSB7XG4gICAgICAgIGNhc2UgJyAnOlxuICAgICAgICBjYXNlICdFTlRFUic6XG4gICAgICAgICAgdGhpcy5vbkJ1dHRvbkNsaWNrKGV2ZW50KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25DbG9zZUNsaWNrKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlQ2xpY2suZW1pdCgpO1xuXG4gICAgLy8gUHJldmVudCB0aGUgY2xpY2sgZXZlbnQgZnJvbSBidWJibGluZyB1cCB0byB0aGUgYW5jaG9yIHRhZztcbiAgICAvLyBvdGhlcndpc2UgaXQgd2lsbCB0cmlnZ2VyIGEgcGFnZSByZWZyZXNoLlxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXNCdG4oKTogdm9pZCB7XG4gICAgdGhpcy4jYWRhcHRlclNlcnZpY2UuZm9jdXNCdXR0b25MaW5rKHRoaXMuI2VsZW1lbnRSZWYpO1xuICB9XG5cbiAgcHVibGljIG9uRm9jdXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFiSW5kZXggIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy4jdGFic2V0U2VydmljZS5zZXRGb2N1c2VkVGFiQnRuSW5kZXgodGhpcy50YWJJbmRleCk7XG4gICAgfVxuICB9XG5cbiAgI3VwZGF0ZVdpemFyZFN0ZXBTdGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50YWJTdHlsZSA9PT0gJ3RhYnMnKSB7XG4gICAgICB0aGlzLndpemFyZFN0ZXBTdGF0ZSA9IHVuZGVmaW5lZDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYWN0aXZlKSB7XG4gICAgICAgIHRoaXMud2l6YXJkU3RlcFN0YXRlID0gJ2N1cnJlbnQnO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgICB0aGlzLndpemFyZFN0ZXBTdGF0ZSA9ICdjb21wbGV0ZWQnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy53aXphcmRTdGVwU3RhdGUgPSAndW5hdmFpbGFibGUnO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwic2t5LWJ0bi10YWItd3JhcHBlclwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnc2t5LWJ0bi10YWItd3JhcHBlci1zZWxlY3RlZCc6IGFjdGl2ZSxcbiAgICAnc2t5LWJ0bi10YWItd3JhcHBlci1kaXNhYmxlZCc6IGRpc2FibGVkXG4gIH1cIlxuPlxuICA8YVxuICAgICN0YWJCdXR0b25FbFxuICAgIGNsYXNzPVwic2t5LWJ0bi10YWJcIlxuICAgIHJvbGU9XCJ0YWJcIlxuICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiYXJpYUNvbnRyb2xzXCJcbiAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cImFjdGl2ZVwiXG4gICAgW2F0dHIuaHJlZl09XCJidXR0b25IcmVmXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgKHRhYlN0eWxlID09PSAnd2l6YXJkJ1xuICAgICAgICA/ICdza3l1eF93aXphcmRfc3Jfc3RlcF8nICsgd2l6YXJkU3RlcFN0YXRlXG4gICAgICAgIDogJ3NreXV4X3RhYnNfc3JfdGFiX29yZGVyJ1xuICAgICAgKSB8IHNreUxpYlJlc291cmNlcyA6IHRhYk51bWJlciA6IHRvdGFsVGFic0NvdW50IDogYnV0dG9uVGV4dFxuICAgIFwiXG4gICAgW2lkXT1cImJ1dHRvbklkXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2t5LWJ0bi10YWItd2l6YXJkJzogdGFiU3R5bGUgPT09ICd3aXphcmQnLFxuICAgICAgJ3NreS1idG4tdGFiLXNlbGVjdGVkJzogYWN0aXZlLFxuICAgICAgJ3NreS1idG4tdGFiLWRpc2FibGVkJzogZGlzYWJsZWQsXG4gICAgICAnc2t5LXRhYi1idG4tY2xvc2VhYmxlJzogY2xvc2VhYmxlXG4gICAgfVwiXG4gICAgW3RhYmluZGV4XT1cImFjdGl2ZSA/ICcwJyA6ICctMSdcIlxuICAgIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrKCRldmVudClcIlxuICAgIChrZXlkb3duKT1cIm9uVGFiQnV0dG9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAoZm9jdXMpPVwib25Gb2N1cygpXCJcbiAgPlxuICAgIDxzcGFuIGNsYXNzPVwic2t5LXRhYi1oZWFkaW5nXCIgW2F0dHIuYXJpYS1oaWRkZW5dPVwidHJ1ZVwiPlxuICAgICAge3sgYnV0dG9uVGV4dCB9fVxuICAgICAgPHNwYW4gKm5nSWY9XCJidXR0b25UZXh0Q291bnQgIT09IHVuZGVmaW5lZFwiIGNsYXNzPVwic2t5LXRhYi1oZWFkZXItY291bnRcIj5cbiAgICAgICAge3sgYnV0dG9uVGV4dENvdW50IH19XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3BhblxuICAgICAgICAqbmdJZj1cImNsb3NlYWJsZVwiXG4gICAgICAgIGNsYXNzPVwic2t5LWJ0bi10YWItY2xvc2VcIlxuICAgICAgICBbdGFiaW5kZXhdPVwiY2xvc2VCdG5UYWJJbmRleFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ3NreXV4X3RhYl9jbG9zZScgfCBza3lMaWJSZXNvdXJjZXMgOiBidXR0b25UZXh0XCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICdza3ktYnRuLXRhYi1jbG9zZS1kaXNhYmxlZCc6IGRpc2FibGVkXG4gICAgICAgIH1cIlxuICAgICAgICAoY2xpY2spPVwib25DbG9zZUNsaWNrKCRldmVudClcIlxuICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvbkNsb3NlQ2xpY2soJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICAgIDxza3ktaWNvbiBpY29uPVwicmVtb3ZlXCIgLz5cbiAgICAgIDwvc3Bhbj5cbiAgICA8L3NwYW4+XG4gIDwvYT5cbjwvZGl2PlxuIl19
163
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGFicy9zcmMvbGliL21vZHVsZXMvdGFicy90YWItYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy90YWJzL3RhYi1idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQUsxRSxNQUFNLGdCQUFnQixHQUFHLEtBQUssQ0FBQztBQUkvQjs7R0FFRztBQVNILE1BQU0sT0FBTyxxQkFBcUI7SUFDaEMsSUFDVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFXLE1BQU0sQ0FBQyxLQUEwQjtRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBb0JELElBQ1csUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQVcsUUFBUSxDQUFDLEtBQTBCO1FBQzVDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxJQUFJLGdCQUFnQixDQUFDO1FBQzlDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFXRCxJQUNXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFXLFFBQVEsQ0FBQyxLQUFpQztRQUNuRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBUUQsWUFDRSxVQUFzQixFQUN0QixjQUEwQyxFQUMxQyxpQkFBb0MsRUFDcEMsYUFBK0I7UUFUMUIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBR3ZDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBY3RDLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUUvQixlQUFVLEdBQXdCLEtBQUssQ0FBQztRQUN4QyxpQkFBWSxHQUFHLGdCQUFnQixDQUFDO1FBTWhDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQWZuQyxJQUFJLENBQUMsZUFBZSxHQUFHLGNBQWMsQ0FBQztRQUN0QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsaUJBQWlCLENBQUM7UUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDOUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxhQUFhLENBQUM7SUFDdEMsQ0FBQztJQUlELFVBQVUsQ0FBOEI7SUFDeEMsWUFBWSxDQUFvQjtJQUNoQyxVQUFVLENBQTZCO0lBQ3ZDLGVBQWUsQ0FBNkI7SUFDNUMsa0JBQWtCLENBQW9CO0lBQ3RDLFdBQVcsQ0FBYTtJQUN4QixjQUFjLENBQW1CO0lBQ2pDLGNBQWMsQ0FBdUI7SUFFOUIsZUFBZTtRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQjthQUNuQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQzVELFNBQVMsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQzFCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLElBQUksWUFBWSxLQUFLLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUNqQjtpQkFBTTtnQkFDTCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2FBQzlCO1lBQ0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3pDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBVTtRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxLQUFvQjtRQUM1Qyx5QkFBeUI7UUFDekIsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ2IsUUFBUSxLQUFLLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxFQUFFO2dCQUMvQixLQUFLLEdBQUcsQ0FBQztnQkFDVCxLQUFLLE9BQU87b0JBQ1YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDMUIsTUFBTTtnQkFDUiwwQkFBMEI7Z0JBQzFCO29CQUNFLE1BQU07YUFDVDtTQUNGO0lBQ0gsQ0FBQztJQUVNLFlBQVksQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdkIsOERBQThEO1FBQzlELDRDQUE0QztRQUM1QyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTSxPQUFPO1FBQ1osSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLFNBQVMsRUFBRTtZQUMvQixJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMxRDtJQUNILENBQUM7SUFFRCxzQkFBc0I7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLE1BQU0sRUFBRTtZQUM1QixJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQztTQUNsQzthQUFNO1lBQ0wsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNmLElBQUksQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO2FBQ2xDO2lCQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLFdBQVcsQ0FBQzthQUNwQztpQkFBTTtnQkFDTCxJQUFJLENBQUMsZUFBZSxHQUFHLGFBQWEsQ0FBQzthQUN0QztTQUNGO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7OEdBaEtVLHFCQUFxQjtrR0FBckIscUJBQXFCLDBhQUpyQixDQUFDLDBCQUEwQixDQUFDLDBCQ2hDekMsc3lEQTREQTs7MkZEeEJhLHFCQUFxQjtrQkFSakMsU0FBUzsrQkFDRSxnQkFBZ0IsYUFHZixDQUFDLDBCQUEwQixDQUFDLG1CQUN0Qix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJO3lNQUkxQixNQUFNO3NCQURoQixLQUFLO2dCQVVDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxlQUFlO3NCQURyQixLQUFLO2dCQUlDLFNBQVM7c0JBRGYsS0FBSztnQkFJSyxRQUFRO3NCQURsQixLQUFLO2dCQVdDLFFBQVE7c0JBRGQsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsY0FBYztzQkFEcEIsS0FBSztnQkFJSyxRQUFRO3NCQURsQixLQUFLO2dCQVdDLFdBQVc7c0JBRGpCLE1BQU07Z0JBSUEsVUFBVTtzQkFEaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lUYWJCdXR0b25BZGFwdGVyU2VydmljZSB9IGZyb20gJy4vdGFiLWJ1dHRvbi1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5VGFiSW5kZXggfSBmcm9tICcuL3RhYi1pbmRleCc7XG5pbXBvcnQgeyBTa3lUYWJzZXRTdHlsZSB9IGZyb20gJy4vdGFic2V0LXN0eWxlJztcbmltcG9ydCB7IFNreVRhYnNldFNlcnZpY2UgfSBmcm9tICcuL3RhYnNldC5zZXJ2aWNlJztcblxuY29uc3QgREVGQVVMVF9ESVNBQkxFRCA9IGZhbHNlO1xuXG50eXBlIFNreVdpemFyZFN0ZXBTdGF0ZSA9ICdjb21wbGV0ZWQnIHwgJ2N1cnJlbnQnIHwgJ3VuYXZhaWxhYmxlJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LXRhYi1idXR0b24nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYi1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbU2t5VGFiQnV0dG9uQWRhcHRlclNlcnZpY2VdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGFiQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KClcbiAgcHVibGljIGdldCBhY3RpdmUoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19pc0FjdGl2ZTtcbiAgfVxuICBwdWJsaWMgc2V0IGFjdGl2ZSh2YWx1ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19pc0FjdGl2ZSA9IHZhbHVlO1xuICAgIHRoaXMuI3VwZGF0ZVdpemFyZFN0ZXBTdGF0ZSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFyaWFDb250cm9sczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBidXR0b25IcmVmOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGJ1dHRvbklkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGJ1dHRvblRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgYnV0dG9uVGV4dENvdW50OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGNsb3NlYWJsZTogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfaXNEaXNhYmxlZCA9IHZhbHVlID8/IERFRkFVTFRfRElTQUJMRUQ7XG4gICAgdGhpcy4jdXBkYXRlV2l6YXJkU3RlcFN0YXRlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgdGFiSW5kZXg6IFNreVRhYkluZGV4IHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0YWJOdW1iZXI6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdG90YWxUYWJzQ291bnQ6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IHRhYlN0eWxlKCk6IFNreVRhYnNldFN0eWxlIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX3RhYlN0eWxlO1xuICB9XG5cbiAgcHVibGljIHNldCB0YWJTdHlsZShzdHlsZTogU2t5VGFic2V0U3R5bGUgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLiNfdGFiU3R5bGUgPSBzdHlsZTtcbiAgICB0aGlzLiN1cGRhdGVXaXphcmRTdGVwU3RhdGUoKTtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgYnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjbG9zZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgYWRhcHRlclNlcnZpY2U6IFNreVRhYkJ1dHRvbkFkYXB0ZXJTZXJ2aWNlLFxuICAgIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICB0YWJzZXRTZXJ2aWNlOiBTa3lUYWJzZXRTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLiNhZGFwdGVyU2VydmljZSA9IGFkYXB0ZXJTZXJ2aWNlO1xuICAgIHRoaXMuI2NoYW5nZURldGVjdG9yUmVmID0gY2hhbmdlRGV0ZWN0b3JSZWY7XG4gICAgdGhpcy4jZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy4jdGFic2V0U2VydmljZSA9IHRhYnNldFNlcnZpY2U7XG4gIH1cblxuICBwdWJsaWMgY2xvc2VCdG5UYWJJbmRleCA9ICctMSc7XG4gIHB1YmxpYyB3aXphcmRTdGVwU3RhdGU6IFNreVdpemFyZFN0ZXBTdGF0ZSB8IHVuZGVmaW5lZDtcbiAgI19pc0FjdGl2ZTogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IGZhbHNlO1xuICAjX2lzRGlzYWJsZWQgPSBERUZBVUxUX0RJU0FCTEVEO1xuICAjX3RhYlN0eWxlOiBTa3lUYWJzZXRTdHlsZSB8IHVuZGVmaW5lZDtcbiAgI2FkYXB0ZXJTZXJ2aWNlOiBTa3lUYWJCdXR0b25BZGFwdGVyU2VydmljZTtcbiAgI2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZjtcbiAgI2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gICN0YWJzZXRTZXJ2aWNlOiBTa3lUYWJzZXRTZXJ2aWNlO1xuICAjbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLiN0YWJzZXRTZXJ2aWNlLmZvY3VzZWRUYWJCdG5JbmRleFxuICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdGFrZVVudGlsKHRoaXMuI25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoZm9jdXNlZEluZGV4KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnRhYkluZGV4ICE9PSB1bmRlZmluZWQgJiYgZm9jdXNlZEluZGV4ID09PSB0aGlzLnRhYkluZGV4KSB7XG4gICAgICAgICAgdGhpcy5jbG9zZUJ0blRhYkluZGV4ID0gJzAnO1xuICAgICAgICAgIHRoaXMuZm9jdXNCdG4oKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmNsb3NlQnRuVGFiSW5kZXggPSAnLTEnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuI2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIG9uQnV0dG9uQ2xpY2soZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5idXR0b25DbGljay5lbWl0KCk7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvblRhYkJ1dHRvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGV2ZW50LmtleSkge1xuICAgICAgc3dpdGNoIChldmVudC5rZXkudG9VcHBlckNhc2UoKSkge1xuICAgICAgICBjYXNlICcgJzpcbiAgICAgICAgY2FzZSAnRU5URVInOlxuICAgICAgICAgIHRoaXMub25CdXR0b25DbGljayhldmVudCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uQ2xvc2VDbGljayhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZUNsaWNrLmVtaXQoKTtcblxuICAgIC8vIFByZXZlbnQgdGhlIGNsaWNrIGV2ZW50IGZyb20gYnViYmxpbmcgdXAgdG8gdGhlIGFuY2hvciB0YWc7XG4gICAgLy8gb3RoZXJ3aXNlIGl0IHdpbGwgdHJpZ2dlciBhIHBhZ2UgcmVmcmVzaC5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzQnRuKCk6IHZvaWQge1xuICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLmZvY3VzQnV0dG9uTGluayh0aGlzLiNlbGVtZW50UmVmKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZvY3VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRhYkluZGV4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuI3RhYnNldFNlcnZpY2Uuc2V0Rm9jdXNlZFRhYkJ0bkluZGV4KHRoaXMudGFiSW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gICN1cGRhdGVXaXphcmRTdGVwU3RhdGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFiU3R5bGUgPT09ICd0YWJzJykge1xuICAgICAgdGhpcy53aXphcmRTdGVwU3RhdGUgPSB1bmRlZmluZWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmFjdGl2ZSkge1xuICAgICAgICB0aGlzLndpemFyZFN0ZXBTdGF0ZSA9ICdjdXJyZW50JztcbiAgICAgIH0gZWxzZSBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgdGhpcy53aXphcmRTdGVwU3RhdGUgPSAnY29tcGxldGVkJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMud2l6YXJkU3RlcFN0YXRlID0gJ3VuYXZhaWxhYmxlJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLiNjaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInNreS1idG4tdGFiLXdyYXBwZXJcIlxuICBbbmdDbGFzc109XCJ7XG4gICAgJ3NreS1idG4tdGFiLXdyYXBwZXItc2VsZWN0ZWQnOiBhY3RpdmUsXG4gICAgJ3NreS1idG4tdGFiLXdyYXBwZXItZGlzYWJsZWQnOiBkaXNhYmxlZFxuICB9XCJcbj5cbiAgPGFcbiAgICAjdGFiQnV0dG9uRWxcbiAgICBjbGFzcz1cInNreS1idG4tdGFiXCJcbiAgICByb2xlPVwidGFiXCJcbiAgICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImFyaWFDb250cm9sc1wiXG4gICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJhY3RpdmVcIlxuICAgIFthdHRyLmhyZWZdPVwiYnV0dG9uSHJlZlwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgIHRhYlN0eWxlID09PSAnd2l6YXJkJ1xuICAgICAgICA/ICgnc2t5dXhfd2l6YXJkX3NyX3N0ZXBfJyArIHdpemFyZFN0ZXBTdGF0ZVxuICAgICAgICAgIHwgc2t5TGliUmVzb3VyY2VzIDogdGFiTnVtYmVyIDogdG90YWxUYWJzQ291bnQgOiBidXR0b25UZXh0KVxuICAgICAgICA6IG51bGxcbiAgICBcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJ0YWJTdHlsZSA9PT0gJ3dpemFyZCcgPyBudWxsIDogdGFiSGVhZGluZy5pZFwiXG4gICAgW2lkXT1cImJ1dHRvbklkXCJcbiAgICBbbmdDbGFzc109XCJ7XG4gICAgICAnc2t5LWJ0bi10YWItd2l6YXJkJzogdGFiU3R5bGUgPT09ICd3aXphcmQnLFxuICAgICAgJ3NreS1idG4tdGFiLXNlbGVjdGVkJzogYWN0aXZlLFxuICAgICAgJ3NreS1idG4tdGFiLWRpc2FibGVkJzogZGlzYWJsZWQsXG4gICAgICAnc2t5LXRhYi1idG4tY2xvc2VhYmxlJzogY2xvc2VhYmxlXG4gICAgfVwiXG4gICAgW3RhYmluZGV4XT1cImFjdGl2ZSA/ICcwJyA6ICctMSdcIlxuICAgIChjbGljayk9XCJvbkJ1dHRvbkNsaWNrKCRldmVudClcIlxuICAgIChrZXlkb3duKT1cIm9uVGFiQnV0dG9uS2V5RG93bigkZXZlbnQpXCJcbiAgICAoZm9jdXMpPVwib25Gb2N1cygpXCJcbiAgPlxuICAgIDxzcGFuIGNsYXNzPVwic2t5LXRhYi1oZWFkaW5nXCIgW2F0dHIuYXJpYS1oaWRkZW5dPVwidHJ1ZVwiPlxuICAgICAgPHNwYW4gc2t5SWQgI3RhYkhlYWRpbmc9XCJza3lJZFwiPlxuICAgICAgICB7eyBidXR0b25UZXh0IH19XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgKm5nSWY9XCJidXR0b25UZXh0Q291bnQgIT09IHVuZGVmaW5lZFwiXG4gICAgICAgICAgY2xhc3M9XCJza3ktdGFiLWhlYWRlci1jb3VudFwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBidXR0b25UZXh0Q291bnQgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW5cbiAgICAgICAgKm5nSWY9XCJjbG9zZWFibGVcIlxuICAgICAgICBjbGFzcz1cInNreS1idG4tdGFiLWNsb3NlXCJcbiAgICAgICAgW3RhYmluZGV4XT1cImNsb3NlQnRuVGFiSW5kZXhcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidza3l1eF90YWJfY2xvc2UnIHwgc2t5TGliUmVzb3VyY2VzIDogYnV0dG9uVGV4dFwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAnc2t5LWJ0bi10YWItY2xvc2UtZGlzYWJsZWQnOiBkaXNhYmxlZFxuICAgICAgICB9XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2xvc2VDbGljaygkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uZW50ZXIpPVwib25DbG9zZUNsaWNrKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8c2t5LWljb24gaWNvbj1cInJlbW92ZVwiIC8+XG4gICAgICA8L3NwYW4+XG4gICAgPC9zcGFuPlxuICA8L2E+XG48L2Rpdj5cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
+ import { SkyIdModule } from '@skyux/core';
3
4
  import { SkyIconModule } from '@skyux/indicators';
4
5
  import { SkyDropdownModule } from '@skyux/popovers';
5
6
  import { SkyThemeModule } from '@skyux/theme';
@@ -19,11 +20,13 @@ export class SkyTabsModule {
19
20
  SkyTabsetNavButtonDisabledPipe], imports: [CommonModule,
20
21
  SkyDropdownModule,
21
22
  SkyIconModule,
23
+ SkyIdModule,
22
24
  SkyTabsResourcesModule,
23
25
  SkyThemeModule], exports: [SkyTabComponent, SkyTabsetComponent, SkyTabsetNavButtonComponent] }); }
24
26
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyTabsModule, imports: [CommonModule,
25
27
  SkyDropdownModule,
26
28
  SkyIconModule,
29
+ SkyIdModule,
27
30
  SkyTabsResourcesModule,
28
31
  SkyThemeModule] }); }
29
32
  }
@@ -41,10 +44,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
41
44
  CommonModule,
42
45
  SkyDropdownModule,
43
46
  SkyIconModule,
47
+ SkyIdModule,
44
48
  SkyTabsResourcesModule,
45
49
  SkyThemeModule,
46
50
  ],
47
51
  exports: [SkyTabComponent, SkyTabsetComponent, SkyTabsetNavButtonComponent],
48
52
  }]
49
53
  }] });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGFicy9zcmMvbGliL21vZHVsZXMvdGFicy90YWJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU3RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBbUJ4RCxNQUFNLE9BQU8sYUFBYTs4R0FBYixhQUFhOytHQUFiLGFBQWEsaUJBZnRCLHFCQUFxQjtZQUNyQixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLDJCQUEyQjtZQUMzQiw4QkFBOEIsYUFHOUIsWUFBWTtZQUNaLGlCQUFpQjtZQUNqQixhQUFhO1lBQ2Isc0JBQXNCO1lBQ3RCLGNBQWMsYUFFTixlQUFlLEVBQUUsa0JBQWtCLEVBQUUsMkJBQTJCOytHQUUvRCxhQUFhLFlBUnRCLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsYUFBYTtZQUNiLHNCQUFzQjtZQUN0QixjQUFjOzsyRkFJTCxhQUFhO2tCQWpCekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1oscUJBQXFCO3dCQUNyQixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsMkJBQTJCO3dCQUMzQiw4QkFBOEI7cUJBQy9CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsYUFBYTt3QkFDYixzQkFBc0I7d0JBQ3RCLGNBQWM7cUJBQ2Y7b0JBQ0QsT0FBTyxFQUFFLENBQUMsZUFBZSxFQUFFLGtCQUFrQixFQUFFLDJCQUEyQixDQUFDO2lCQUM1RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5SWNvbk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzJztcbmltcG9ydCB7IFNreURyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQHNreXV4L3BvcG92ZXJzJztcbmltcG9ydCB7IFNreVRoZW1lTW9kdWxlIH0gZnJvbSAnQHNreXV4L3RoZW1lJztcblxuaW1wb3J0IHsgU2t5VGFic1Jlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktdGFicy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5VGFiQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi90YWItYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lUYWJDb21wb25lbnQgfSBmcm9tICcuL3RhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5VGFic2V0TmF2QnV0dG9uRGlzYWJsZWRQaXBlIH0gZnJvbSAnLi90YWJzZXQtbmF2LWJ1dHRvbi1kaXNhYmxlZC5waXBlJztcbmltcG9ydCB7IFNreVRhYnNldE5hdkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdGFic2V0LW5hdi1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFNreVRhYnNldENvbXBvbmVudCB9IGZyb20gJy4vdGFic2V0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreVRhYkJ1dHRvbkNvbXBvbmVudCxcbiAgICBTa3lUYWJDb21wb25lbnQsXG4gICAgU2t5VGFic2V0Q29tcG9uZW50LFxuICAgIFNreVRhYnNldE5hdkJ1dHRvbkNvbXBvbmVudCxcbiAgICBTa3lUYWJzZXROYXZCdXR0b25EaXNhYmxlZFBpcGUsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5RHJvcGRvd25Nb2R1bGUsXG4gICAgU2t5SWNvbk1vZHVsZSxcbiAgICBTa3lUYWJzUmVzb3VyY2VzTW9kdWxlLFxuICAgIFNreVRoZW1lTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbU2t5VGFiQ29tcG9uZW50LCBTa3lUYWJzZXRDb21wb25lbnQsIFNreVRhYnNldE5hdkJ1dHRvbkNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVRhYnNNb2R1bGUge31cbiJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGFicy9zcmMvbGliL21vZHVsZXMvdGFicy90YWJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTlDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM1RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFvQnhELE1BQU0sT0FBTyxhQUFhOzhHQUFiLGFBQWE7K0dBQWIsYUFBYSxpQkFoQnRCLHFCQUFxQjtZQUNyQixlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLDJCQUEyQjtZQUMzQiw4QkFBOEIsYUFHOUIsWUFBWTtZQUNaLGlCQUFpQjtZQUNqQixhQUFhO1lBQ2IsV0FBVztZQUNYLHNCQUFzQjtZQUN0QixjQUFjLGFBRU4sZUFBZSxFQUFFLGtCQUFrQixFQUFFLDJCQUEyQjsrR0FFL0QsYUFBYSxZQVR0QixZQUFZO1lBQ1osaUJBQWlCO1lBQ2pCLGFBQWE7WUFDYixXQUFXO1lBQ1gsc0JBQXNCO1lBQ3RCLGNBQWM7OzJGQUlMLGFBQWE7a0JBbEJ6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixxQkFBcUI7d0JBQ3JCLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQiwyQkFBMkI7d0JBQzNCLDhCQUE4QjtxQkFDL0I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixhQUFhO3dCQUNiLFdBQVc7d0JBQ1gsc0JBQXNCO3dCQUN0QixjQUFjO3FCQUNmO29CQUNELE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSwyQkFBMkIsQ0FBQztpQkFDNUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUlkTW9kdWxlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuaW1wb3J0IHsgU2t5SWNvbk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzJztcbmltcG9ydCB7IFNreURyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQHNreXV4L3BvcG92ZXJzJztcbmltcG9ydCB7IFNreVRoZW1lTW9kdWxlIH0gZnJvbSAnQHNreXV4L3RoZW1lJztcblxuaW1wb3J0IHsgU2t5VGFic1Jlc291cmNlc01vZHVsZSB9IGZyb20gJy4uL3NoYXJlZC9za3ktdGFicy1yZXNvdXJjZXMubW9kdWxlJztcblxuaW1wb3J0IHsgU2t5VGFiQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi90YWItYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lUYWJDb21wb25lbnQgfSBmcm9tICcuL3RhYi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5VGFic2V0TmF2QnV0dG9uRGlzYWJsZWRQaXBlIH0gZnJvbSAnLi90YWJzZXQtbmF2LWJ1dHRvbi1kaXNhYmxlZC5waXBlJztcbmltcG9ydCB7IFNreVRhYnNldE5hdkJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdGFic2V0LW5hdi1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IFNreVRhYnNldENvbXBvbmVudCB9IGZyb20gJy4vdGFic2V0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreVRhYkJ1dHRvbkNvbXBvbmVudCxcbiAgICBTa3lUYWJDb21wb25lbnQsXG4gICAgU2t5VGFic2V0Q29tcG9uZW50LFxuICAgIFNreVRhYnNldE5hdkJ1dHRvbkNvbXBvbmVudCxcbiAgICBTa3lUYWJzZXROYXZCdXR0b25EaXNhYmxlZFBpcGUsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgU2t5RHJvcGRvd25Nb2R1bGUsXG4gICAgU2t5SWNvbk1vZHVsZSxcbiAgICBTa3lJZE1vZHVsZSxcbiAgICBTa3lUYWJzUmVzb3VyY2VzTW9kdWxlLFxuICAgIFNreVRoZW1lTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbU2t5VGFiQ29tcG9uZW50LCBTa3lUYWJzZXRDb21wb25lbnQsIFNreVRhYnNldE5hdkJ1dHRvbkNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreVRhYnNNb2R1bGUge31cbiJdfQ==
@@ -1,8 +1,9 @@
1
- import { ChangeDetectionStrategy, Component, HostListener, Input, Optional, ViewChild, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, HostListener, Input, Optional, ViewChild, inject, } from '@angular/core';
2
2
  import { SkyMediaQueryService } from '@skyux/core';
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
5
  import { SkyVerticalTabMediaQueryService } from './vertical-tab-media-query.service';
6
+ import { SkyVerticalTabsetGroupService } from './vertical-tabset-group.service';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "./vertical-tabset-adapter.service";
8
9
  import * as i2 from "./vertical-tabset.service";
@@ -81,6 +82,9 @@ export class SkyVerticalTabComponent {
81
82
  */
82
83
  this.errorIndicator = false;
83
84
  this.isMobile = false;
85
+ this.groupService = inject(SkyVerticalTabsetGroupService, {
86
+ optional: true,
87
+ });
84
88
  this.#_ariaRole = 'tab';
85
89
  this.#_contentRendered = false;
86
90
  this.#mobileSubscription = new Subject();
@@ -120,14 +124,6 @@ export class SkyVerticalTabComponent {
120
124
  this.#ngUnsubscribe.complete();
121
125
  this.#tabsetService.destroyTab(this);
122
126
  }
123
- tabIndex() {
124
- if (!this.disabled) {
125
- return 0;
126
- }
127
- else {
128
- return -1;
129
- }
130
- }
131
127
  activateTab() {
132
128
  if (!this.disabled) {
133
129
  this.active = true;
@@ -135,19 +131,19 @@ export class SkyVerticalTabComponent {
135
131
  this.#changeRef.markForCheck();
136
132
  }
137
133
  }
138
- onTabButtonKeyUp(event) {
139
- /*istanbul ignore else */
140
- if (event.key) {
141
- switch (event.key.toUpperCase()) {
142
- case ' ':
143
- case 'ENTER':
144
- this.activateTab();
145
- event.stopPropagation();
146
- break;
147
- /* istanbul ignore next */
148
- default:
149
- break;
150
- }
134
+ focusButton() {
135
+ this.#adapterService.focusButton(this.tabButton);
136
+ }
137
+ tabButtonActivate(event) {
138
+ this.activateTab();
139
+ event.stopPropagation();
140
+ }
141
+ tabButtonArrowLeft(event) {
142
+ if (this.groupService) {
143
+ this.groupService.messageStream.next({
144
+ messageType: 'focus',
145
+ });
146
+ event.preventDefault();
151
147
  }
152
148
  }
153
149
  onWindowResize() {
@@ -176,7 +172,7 @@ export class SkyVerticalTabComponent {
176
172
  provide: SkyMediaQueryService,
177
173
  useExisting: SkyVerticalTabMediaQueryService,
178
174
  },
179
- ], viewQueries: [{ propertyName: "tabContent", first: true, predicate: ["tabContentWrapper"], descendants: true }], ngImport: i0, template: "<a\n class=\"sky-vertical-tab\"\n [attr.aria-controls]=\"isMobile ? null : ariaControls || tabContentPane.id\"\n [attr.aria-selected]=\"active\"\n [attr.id]=\"tabId\"\n [attr.role]=\"isMobile ? undefined : ariaRole\"\n [ngClass]=\"{\n 'sky-vertical-tab-active': active,\n 'sky-vertical-tab-disabled': disabled,\n 'sky-font-deemphasized': disabled,\n 'sky-deemphasized': disabled\n }\"\n [tabIndex]=\"tabIndex()\"\n (click)=\"activateTab()\"\n (keyup)=\"onTabButtonKeyUp($event)\"\n>\n <div class=\"sky-vertical-tab-display\">\n <div class=\"sky-vertical-tab-heading\">\n <span class=\"sky-vertical-tab-heading-value\">{{ tabHeading }}</span>\n <span\n class=\"sky-vertical-tab-count\"\n *ngIf=\"tabHeaderCount || tabHeaderCount === 0\"\n >\n ({{ tabHeaderCount }})\n </span>\n </div>\n <sky-status-indicator\n *ngIf=\"errorIndicator\"\n class=\"sky-vertical-tab-heading-error\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n ></sky-status-indicator>\n <sky-icon\n *ngIf=\"isMobile && showTabRightArrow\"\n class=\"sky-vertical-tab-right-arrow\"\n icon=\"chevron-right\"\n />\n </div>\n</a>\n\n<div #tabContentWrapper>\n <div\n class=\"sky-vertical-tab-content-pane\"\n role=\"tabpanel\"\n tabindex=\"0\"\n skyId\n [attr.aria-labelledby]=\"tabId\"\n [ngClass]=\"{ 'sky-vertical-tab-hidden': !active }\"\n #tabContentPane\n >\n <ng-content />\n\n <div></div>\n </div>\n</div>\n", styles: [".sky-vertical-tab{cursor:pointer;padding:7px 0 7px 10px;margin:5px 0 5px 10px;display:flex;text-decoration:none}.sky-vertical-tab:not(.sky-deemphasized){color:#212327}.sky-vertical-tab:hover{background-color:#eeeeef}.sky-vertical-tab:focus-visible{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}.sky-vertical-tab:hover .sky-vertical-tab-right-arrow{color:#979ba2}.sky-vertical-tab-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}.sky-vertical-tab-hidden{display:none}.sky-vertical-tab-display{display:flex;justify-content:space-between;flex-grow:1}.sky-vertical-tab-heading-error{padding-left:5px}.sky-vertical-tab-count{margin-left:5px}.sky-vertical-tab-disabled{cursor:not-allowed;pointer-events:none}.sky-vertical-tab-right-arrow{padding:3px 10px 0 0;color:#cdcfd2}:host-context(.sky-theme-modern) .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}:host-context(.sky-theme-modern) .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}:host-context(.sky-theme-modern) .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}:host-context(.sky-theme-modern) .sky-vertical-tab:focus:active:hover{outline:none;background:none}:host-context(.sky-theme-modern) .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}:host-context(.sky-theme-modern) .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}:host-context(.sky-theme-modern) .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}.sky-theme-modern .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}.sky-theme-modern .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}.sky-theme-modern .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}.sky-theme-modern .sky-vertical-tab:focus:active:hover{outline:none;background:none}.sky-theme-modern .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}.sky-theme-modern .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}.sky-theme-modern .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}:host-context(.sky-sectioned-form-tabs-only) .sky-vertical-tab{margin-left:0}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i7.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "component", type: i6.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
175
+ ], viewQueries: [{ propertyName: "tabButton", first: true, predicate: ["tabButton"], descendants: true }, { propertyName: "tabContent", first: true, predicate: ["tabContentWrapper"], descendants: true }], ngImport: i0, template: "<a\n class=\"sky-vertical-tab sky-vertical-tabset-button\"\n [attr.aria-controls]=\"isMobile ? null : ariaControls || tabContentPane.id\"\n [attr.aria-disabled]=\"disabled || undefined\"\n [attr.aria-selected]=\"active\"\n [attr.id]=\"tabId\"\n [attr.role]=\"isMobile ? undefined : ariaRole\"\n [ngClass]=\"{\n 'sky-vertical-tab-active': active,\n 'sky-vertical-tabset-button-disabled': disabled,\n 'sky-font-deemphasized': disabled,\n 'sky-deemphasized': disabled\n }\"\n [tabIndex]=\"-1\"\n (click)=\"activateTab()\"\n (keyup.arrowleft)=\"tabButtonArrowLeft($event)\"\n (keyup.enter)=\"tabButtonActivate($event)\"\n (keyup.space)=\"tabButtonActivate($event)\"\n #tabButton\n>\n <div class=\"sky-vertical-tab-display\">\n <div class=\"sky-vertical-tab-heading\">\n <span class=\"sky-vertical-tab-heading-value\">{{ tabHeading }}</span>\n <span\n class=\"sky-vertical-tab-count\"\n *ngIf=\"tabHeaderCount || tabHeaderCount === 0\"\n >\n ({{ tabHeaderCount }})\n </span>\n </div>\n <sky-status-indicator\n *ngIf=\"errorIndicator\"\n class=\"sky-vertical-tab-heading-error\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n ></sky-status-indicator>\n <sky-icon\n *ngIf=\"isMobile && showTabRightArrow\"\n class=\"sky-vertical-tab-right-arrow\"\n icon=\"chevron-right\"\n />\n </div>\n</a>\n\n<div #tabContentWrapper>\n <div\n class=\"sky-vertical-tab-content-pane\"\n role=\"tabpanel\"\n tabindex=\"0\"\n skyId\n [attr.aria-labelledby]=\"tabId\"\n [ngClass]=\"{ 'sky-vertical-tab-hidden': !active }\"\n #tabContentPane\n >\n <ng-content />\n\n <div></div>\n </div>\n</div>\n", styles: [".sky-vertical-tab{cursor:pointer;padding:7px 0 7px 10px;margin:5px 0 5px 10px;display:flex;text-decoration:none}.sky-vertical-tab:not(.sky-deemphasized){color:#212327}.sky-vertical-tab:hover{background-color:#eeeeef}.sky-vertical-tab:focus-visible{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}.sky-vertical-tab:hover .sky-vertical-tab-right-arrow{color:#979ba2}.sky-vertical-tab-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}.sky-vertical-tab-hidden{display:none}.sky-vertical-tab-display{display:flex;justify-content:space-between;flex-grow:1}.sky-vertical-tab-heading-error{padding-left:5px}.sky-vertical-tab-count{margin-left:5px}.sky-vertical-tabset-button-disabled{cursor:not-allowed;pointer-events:none}.sky-vertical-tab-right-arrow{padding:3px 10px 0 0;color:#cdcfd2}.sky-vertical-tab-content-pane:focus-visible{outline:none;border:none}:host-context(.sky-theme-modern) .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}:host-context(.sky-theme-modern) .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}:host-context(.sky-theme-modern) .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}:host-context(.sky-theme-modern) .sky-vertical-tab:focus:active:hover{outline:none;background:none}:host-context(.sky-theme-modern) .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}:host-context(.sky-theme-modern) .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}:host-context(.sky-theme-modern) .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}.sky-theme-modern .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}.sky-theme-modern .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}.sky-theme-modern .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}.sky-theme-modern .sky-vertical-tab:focus:active:hover{outline:none;background:none}.sky-theme-modern .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}.sky-theme-modern .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}.sky-theme-modern .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}:host-context(.sky-sectioned-form-tabs-only) .sky-vertical-tab{margin-left:0}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { kind: "directive", type: i7.λ2, selector: "[skyId]", exportAs: ["skyId"] }, { kind: "component", type: i6.λ10, selector: "sky-status-indicator", inputs: ["indicatorType", "descriptionType", "customDescription"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
180
176
  }
181
177
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyVerticalTabComponent, decorators: [{
182
178
  type: Component,
@@ -186,7 +182,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
186
182
  provide: SkyMediaQueryService,
187
183
  useExisting: SkyVerticalTabMediaQueryService,
188
184
  },
189
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n class=\"sky-vertical-tab\"\n [attr.aria-controls]=\"isMobile ? null : ariaControls || tabContentPane.id\"\n [attr.aria-selected]=\"active\"\n [attr.id]=\"tabId\"\n [attr.role]=\"isMobile ? undefined : ariaRole\"\n [ngClass]=\"{\n 'sky-vertical-tab-active': active,\n 'sky-vertical-tab-disabled': disabled,\n 'sky-font-deemphasized': disabled,\n 'sky-deemphasized': disabled\n }\"\n [tabIndex]=\"tabIndex()\"\n (click)=\"activateTab()\"\n (keyup)=\"onTabButtonKeyUp($event)\"\n>\n <div class=\"sky-vertical-tab-display\">\n <div class=\"sky-vertical-tab-heading\">\n <span class=\"sky-vertical-tab-heading-value\">{{ tabHeading }}</span>\n <span\n class=\"sky-vertical-tab-count\"\n *ngIf=\"tabHeaderCount || tabHeaderCount === 0\"\n >\n ({{ tabHeaderCount }})\n </span>\n </div>\n <sky-status-indicator\n *ngIf=\"errorIndicator\"\n class=\"sky-vertical-tab-heading-error\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n ></sky-status-indicator>\n <sky-icon\n *ngIf=\"isMobile && showTabRightArrow\"\n class=\"sky-vertical-tab-right-arrow\"\n icon=\"chevron-right\"\n />\n </div>\n</a>\n\n<div #tabContentWrapper>\n <div\n class=\"sky-vertical-tab-content-pane\"\n role=\"tabpanel\"\n tabindex=\"0\"\n skyId\n [attr.aria-labelledby]=\"tabId\"\n [ngClass]=\"{ 'sky-vertical-tab-hidden': !active }\"\n #tabContentPane\n >\n <ng-content />\n\n <div></div>\n </div>\n</div>\n", styles: [".sky-vertical-tab{cursor:pointer;padding:7px 0 7px 10px;margin:5px 0 5px 10px;display:flex;text-decoration:none}.sky-vertical-tab:not(.sky-deemphasized){color:#212327}.sky-vertical-tab:hover{background-color:#eeeeef}.sky-vertical-tab:focus-visible{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}.sky-vertical-tab:hover .sky-vertical-tab-right-arrow{color:#979ba2}.sky-vertical-tab-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}.sky-vertical-tab-hidden{display:none}.sky-vertical-tab-display{display:flex;justify-content:space-between;flex-grow:1}.sky-vertical-tab-heading-error{padding-left:5px}.sky-vertical-tab-count{margin-left:5px}.sky-vertical-tab-disabled{cursor:not-allowed;pointer-events:none}.sky-vertical-tab-right-arrow{padding:3px 10px 0 0;color:#cdcfd2}:host-context(.sky-theme-modern) .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}:host-context(.sky-theme-modern) .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}:host-context(.sky-theme-modern) .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}:host-context(.sky-theme-modern) .sky-vertical-tab:focus:active:hover{outline:none;background:none}:host-context(.sky-theme-modern) .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}:host-context(.sky-theme-modern) .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}:host-context(.sky-theme-modern) .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}.sky-theme-modern .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}.sky-theme-modern .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}.sky-theme-modern .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}.sky-theme-modern .sky-vertical-tab:focus:active:hover{outline:none;background:none}.sky-theme-modern .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}.sky-theme-modern .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}.sky-theme-modern .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}:host-context(.sky-sectioned-form-tabs-only) .sky-vertical-tab{margin-left:0}\n"] }]
185
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n class=\"sky-vertical-tab sky-vertical-tabset-button\"\n [attr.aria-controls]=\"isMobile ? null : ariaControls || tabContentPane.id\"\n [attr.aria-disabled]=\"disabled || undefined\"\n [attr.aria-selected]=\"active\"\n [attr.id]=\"tabId\"\n [attr.role]=\"isMobile ? undefined : ariaRole\"\n [ngClass]=\"{\n 'sky-vertical-tab-active': active,\n 'sky-vertical-tabset-button-disabled': disabled,\n 'sky-font-deemphasized': disabled,\n 'sky-deemphasized': disabled\n }\"\n [tabIndex]=\"-1\"\n (click)=\"activateTab()\"\n (keyup.arrowleft)=\"tabButtonArrowLeft($event)\"\n (keyup.enter)=\"tabButtonActivate($event)\"\n (keyup.space)=\"tabButtonActivate($event)\"\n #tabButton\n>\n <div class=\"sky-vertical-tab-display\">\n <div class=\"sky-vertical-tab-heading\">\n <span class=\"sky-vertical-tab-heading-value\">{{ tabHeading }}</span>\n <span\n class=\"sky-vertical-tab-count\"\n *ngIf=\"tabHeaderCount || tabHeaderCount === 0\"\n >\n ({{ tabHeaderCount }})\n </span>\n </div>\n <sky-status-indicator\n *ngIf=\"errorIndicator\"\n class=\"sky-vertical-tab-heading-error\"\n descriptionType=\"error\"\n indicatorType=\"danger\"\n ></sky-status-indicator>\n <sky-icon\n *ngIf=\"isMobile && showTabRightArrow\"\n class=\"sky-vertical-tab-right-arrow\"\n icon=\"chevron-right\"\n />\n </div>\n</a>\n\n<div #tabContentWrapper>\n <div\n class=\"sky-vertical-tab-content-pane\"\n role=\"tabpanel\"\n tabindex=\"0\"\n skyId\n [attr.aria-labelledby]=\"tabId\"\n [ngClass]=\"{ 'sky-vertical-tab-hidden': !active }\"\n #tabContentPane\n >\n <ng-content />\n\n <div></div>\n </div>\n</div>\n", styles: [".sky-vertical-tab{cursor:pointer;padding:7px 0 7px 10px;margin:5px 0 5px 10px;display:flex;text-decoration:none}.sky-vertical-tab:not(.sky-deemphasized){color:#212327}.sky-vertical-tab:hover{background-color:#eeeeef}.sky-vertical-tab:focus-visible{outline:thin dotted;outline:-webkit-focus-ring-color auto 5px}.sky-vertical-tab:hover .sky-vertical-tab-right-arrow{color:#979ba2}.sky-vertical-tab-active{background-color:#eeeeef;color:#212327;padding-left:6px;border-left:4px solid #00b4f1}.sky-vertical-tab-hidden{display:none}.sky-vertical-tab-display{display:flex;justify-content:space-between;flex-grow:1}.sky-vertical-tab-heading-error{padding-left:5px}.sky-vertical-tab-count{margin-left:5px}.sky-vertical-tabset-button-disabled{cursor:not-allowed;pointer-events:none}.sky-vertical-tab-right-arrow{padding:3px 10px 0 0;color:#cdcfd2}.sky-vertical-tab-content-pane:focus-visible{outline:none;border:none}:host-context(.sky-theme-modern) .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}:host-context(.sky-theme-modern) .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}:host-context(.sky-theme-modern) .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}:host-context(.sky-theme-modern) .sky-vertical-tab:focus:active:hover{outline:none;background:none}:host-context(.sky-theme-modern) .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}:host-context(.sky-theme-modern) .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}:host-context(.sky-theme-modern) .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}.sky-theme-modern .sky-vertical-tab{color:#686c73;cursor:pointer;padding:10px 0 10px 15px;margin:15px 0 15px 10px}.sky-theme-modern .sky-vertical-tab:not(.sky-vertical-tab-active):not(:active):hover{color:#212327;background-color:transparent;padding-left:14px;border-left:1px solid #00b4f1}.sky-theme-modern .sky-vertical-tab:not(:active):focus-visible{outline:solid 2px #1870B8;outline-offset:-2px;box-shadow:0 1px 8px #0000004d}.sky-theme-modern .sky-vertical-tab:focus:active:hover{outline:none;background:none}.sky-theme-modern .sky-vertical-tab:active{border-left:4px solid #00b4f1;color:#212327;padding-left:11px}.sky-theme-modern .sky-vertical-tab .sky-vertical-tab-heading-error{padding-left:10px;position:relative;top:-2px}.sky-theme-modern .sky-vertical-tab-active{background:none;color:#212327;padding-left:11px;border-left:4px solid #1870B8}:host-context(.sky-sectioned-form-tabs-only) .sky-vertical-tab{margin-left:0}\n"] }]
190
186
  }], ctorParameters: function () { return [{ type: i1.SkyVerticalTabsetAdapterService }, { type: i0.ChangeDetectorRef }, { type: i2.SkyVerticalTabsetService }, { type: i3.SkyVerticalTabMediaQueryService }, { type: i4.SkyTabIdService, decorators: [{
191
187
  type: Optional
192
188
  }] }]; }, propDecorators: { active: [{
@@ -207,6 +203,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
207
203
  type: Input
208
204
  }], tabId: [{
209
205
  type: Input
206
+ }], tabButton: [{
207
+ type: ViewChild,
208
+ args: ['tabButton']
210
209
  }], tabContent: [{
211
210
  type: ViewChild,
212
211
  args: ['tabContentWrapper']
@@ -214,4 +213,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
214
213
  type: HostListener,
215
214
  args: ['window:resize']
216
215
  }] } });
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGljYWwtdGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy92ZXJ0aWNhbC10YWJzZXQvdmVydGljYWwtdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy92ZXJ0aWNhbC10YWJzZXQvdmVydGljYWwtdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJM0MsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7OztBQUlyRixJQUFJLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFlZixNQUFNLE9BQU8sdUJBQXVCO0lBaUJsQzs7Ozs7Ozs7O09BU0c7SUFDSCxJQUNXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFXLFFBQVEsQ0FBQyxLQUF5QjtRQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssSUFBSSxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQW1DRDs7O09BR0c7SUFDSCxJQUNXLEtBQUssQ0FBQyxLQUF5QjtRQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ25ELElB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NENBN0hKLE1BQU07c0JBRFosS0FBSztnQkFXQyxZQUFZO3NCQURsQixLQUFLO2dCQWNLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBWUMsUUFBUTtzQkFEZCxLQUFLO2dCQVFDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBT0MsY0FBYztzQkFEcEIsS0FBSztnQkFRQyxVQUFVO3NCQURoQixLQUFLO2dCQVFDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFRSyxLQUFLO3NCQURmLEtBQUs7Z0JBaUNDLFVBQVU7c0JBRGhCLFNBQVM7dUJBQUMsbUJBQW1CO2dCQXdHdkIsY0FBYztzQkFEcEIsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU1lZGlhUXVlcnlTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2NvcmUnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreVRhYklkU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC90YWItaWQuc2VydmljZSc7XG5cbmltcG9ydCB7IFNreVZlcnRpY2FsVGFiTWVkaWFRdWVyeVNlcnZpY2UgfSBmcm9tICcuL3ZlcnRpY2FsLXRhYi1tZWRpYS1xdWVyeS5zZXJ2aWNlJztcbmltcG9ydCB7IFNreVZlcnRpY2FsVGFic2V0QWRhcHRlclNlcnZpY2UgfSBmcm9tICcuL3ZlcnRpY2FsLXRhYnNldC1hZGFwdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2t5VmVydGljYWxUYWJzZXRTZXJ2aWNlIH0gZnJvbSAnLi92ZXJ0aWNhbC10YWJzZXQuc2VydmljZSc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktdmVydGljYWwtdGFiJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3ZlcnRpY2FsLXRhYi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3ZlcnRpY2FsLXRhYi5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICBTa3lWZXJ0aWNhbFRhYk1lZGlhUXVlcnlTZXJ2aWNlLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNreU1lZGlhUXVlcnlTZXJ2aWNlLFxuICAgICAgdXNlRXhpc3Rpbmc6IFNreVZlcnRpY2FsVGFiTWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreVZlcnRpY2FsVGFiQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogV2hldGhlciB0aGUgdGFiIGlzIGFjdGl2ZSB3aGVuIHRoZSB0YWJzZXQgbG9hZHMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWN0aXZlOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSBIVE1MIGVsZW1lbnQgSUQgb2YgdGhlIGVsZW1lbnQgdGhhdCBjb250YWluc1xuICAgKiB0aGUgY29udGVudCB0aGF0IHRoZSB2ZXJ0aWNhbCB0YWIgZGlzcGxheXMsIHdoaWNoIGNvcnJlc3BvbmRzIHRvIHRoZSBgdGFiSWRgLiBUaGlzIHByb3BlcnR5XG4gICAqIFtzdXBwb3J0cyBhY2Nlc3NpYmlsaXR5IHJ1bGVzIGZvciBkaXNjbG9zdXJlc10oaHR0cHM6Ly93d3cudzMub3JnL1RSL3dhaS1hcmlhLXByYWN0aWNlcy0xLjEvI2Rpc2Nsb3N1cmUpLlxuICAgKiBGb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgYGFyaWEtY29udHJvbHNgIGF0dHJpYnV0ZSwgc2VlIHRoZSBbV0FJLUFSSUEgZGVmaW5pdGlvbl0oaHR0cHM6Ly93d3cudzMub3JnL1RSL3dhaS1hcmlhLyNhcmlhLWNvbnRyb2xzKS5cbiAgICogQGRlcHJlY2F0ZWQgTm93IHRoYXQgdGhlIHZlcnRpY2FsIHRhYnMgcHJvdmlkZSBhcmlhIGxhYmVscyBhdXRvbWF0aWNhbGx5LCB0aGlzIGlucHV0IGlzIG5vIGxvbmdlciBuZWNlc3NhcnkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXJpYUNvbnRyb2xzOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBBUklBIHJvbGUgZm9yIHRoZSB2ZXJ0aWNhbCB0YWJcbiAgICogW3RvIHN1cHBvcnQgYWNjZXNzaWJpbGl0eV0oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC9sZWFybi9hY2Nlc3NpYmlsaXR5KVxuICAgKiBieSBpbmRpY2F0aW5nIGhvdyB0aGUgdGFiIGZ1bmN0aW9ucyBhbmQgd2hhdCBpdCBjb250cm9scy4gRm9yIGluZm9ybWF0aW9uIGFib3V0IGhvd1xuICAgKiBhbiBBUklBIHJvbGUgaW5kaWNhdGVzIHdoYXQgYW4gaXRlbSByZXByZXNlbnRzIG9uIGEgd2ViIHBhZ2UsIHNlZSB0aGVcbiAgICogW1dBSS1BUklBIHJvbGVzIG1vZGVsXShodHRwczovL3d3dy53My5vcmcvV0FJL1BGL2FyaWEvI3JvbGVzKS5cbiAgICogQGRlZmF1bHQgXCJ0YWJcIlxuICAgKiBAZGVwcmVjYXRlZCBBbnkgb3RoZXIgdmFsdWUgdGhhbiBgdGFiYCBjb3VsZCBsZWFkIHRvIGEgcG9vciB1c2VyIGV4cGVyaWVuY2UgZm9yIHVzZXJzIHdpdGggYXNzaXN0aXZlIHRlY2hub2xvZ3kuXG4gICAqIEluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24sIHRoaXMgcHJvcGVydHkgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHNldCB0byBgdGFiYC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgYXJpYVJvbGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jX2FyaWFSb2xlO1xuICB9XG4gIHB1YmxpYyBzZXQgYXJpYVJvbGUodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI19hcmlhUm9sZSA9IHZhbHVlID8/ICd0YWInO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZGlzYWJsZSB0aGUgdGFiLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gaW5kaWNhdGUgdGhhdCB0aGUgdGFiIGhhcyBhbiBlcnJvci5cbiAgICogQGludGVybmFsIFRoaXMgaXMgdXNlZCBmb3Igc2VjdGlvbmVkIGZvcm1zIGFuZCBpcyBub3QgY3VycmVudGx5IGEgc3VwcG9ydGVkIGRlc2lnbiBmb3IgcHVyZSB2ZXJ0aWNhbCB0YWJzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVycm9ySW5kaWNhdG9yOiBib29sZWFuIHwgdW5kZWZpbmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIERpc3BsYXlzIGFuIGl0ZW0gY291bnQgYWxvbmdzaWRlIHRoZSB0YWIgaGVhZGVyIHRvIGluZGljYXRlIGhvdyBtYW55IGxpc3QgaXRlbXMgdGhlIHRhYiBjb250YWlucy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0YWJIZWFkZXJDb3VudDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgdGFiIGhlYWRlci5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgdGFiSGVhZGluZzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGRpc3BsYXkgYSBjaGV2cm9uLXJpZ2h0IGljb24gb24gdGhlIHJpZ2h0IGhhbmQgc2lkZSBvZiB0aGUgdGFiLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93VGFiUmlnaHRBcnJvdzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIElEIGZvciB0aGUgdGFiLlxuICAgKiBAZGVwcmVjYXRlZCBOb3cgdGhhdCB0aGUgdmVydGljYWwgdGFicyBwcm92aWRlIGFyaWEgbGFiZWxzIGF1dG9tYXRpY2FsbHksIHRoaXMgaW5wdXQgaXMgbm8gbG9uZ2VyIG5lY2Vzc2FyeS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGFiSWQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuI3RhYklkT3JEZWZhdWx0ID0gdmFsdWUgfHwgdGhpcy4jZGVmYXVsdFRhYklkO1xuICAgIHRoaXMuI3RhYklkU3ZjPy5yZWdpc3Rlcih0aGlzLiNkZWZhdWx0VGFiSWQsIHRoaXMuI3RhYklkT3JEZWZhdWx0KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGFiSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy4jdGFiSWRPckRlZmF1bHQ7XG4gIH1cblxuICBwdWJsaWMgc2V0IGNvbnRlbnRSZW5kZXJlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuI19jb250ZW50UmVuZGVyZWQgPSB2YWx1ZTtcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuI19jb250ZW50UmVuZGVyZWQpIHtcbiAgICAgIC8vIE5PVEU6IFdyYXBwZWQgaW4gYSBzZXRUaW1lb3V0IGhlcmUgdG8gZW5zdXJlIHRoYXQgZXZlcnl0aGluZyBoYXMgY29tcGxldGVkIHJlbmRlcmluZy5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy50YWJDb250ZW50KSB7XG4gICAgICAgICAgdGhpcy4jdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcygpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNvbnRlbnRSZW5kZXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy4jX2NvbnRlbnRSZW5kZXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBpbmRleDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBpc01vYmlsZSA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYkNvbnRlbnRXcmFwcGVyJylcbiAgcHVibGljIHRhYkNvbnRlbnQ6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgI19hcmlhUm9sZSA9ICd0YWInO1xuXG4gICNfY29udGVudFJlbmRlcmVkID0gZmFsc2U7XG5cbiAgI3RhYklkT3JEZWZhdWx0OiBzdHJpbmc7XG5cbiAgI2RlZmF1bHRUYWJJZDogc3RyaW5nO1xuXG4gICNtb2JpbGVTdWJzY3JpcHRpb24gPSBuZXcgU3ViamVjdCgpO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjYWRhcHRlclNlcnZpY2U6IFNreVZlcnRpY2FsVGFic2V0QWRhcHRlclNlcnZpY2U7XG4gICNjaGFuZ2VSZWY6IENoYW5nZURldGVjdG9yUmVmO1xuICAjdGFic2V0U2VydmljZTogU2t5VmVydGljYWxUYWJzZXRTZXJ2aWNlO1xuICAjdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZTogU2t5VmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZTtcbiAgI3RhYklkU3ZjOiBTa3lUYWJJZFNlcnZpY2UgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgYWRhcHRlclNlcnZpY2U6IFNreVZlcnRpY2FsVGFic2V0QWRhcHRlclNlcnZpY2UsXG4gICAgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICB0YWJzZXRTZXJ2aWNlOiBTa3lWZXJ0aWNhbFRhYnNldFNlcnZpY2UsXG4gICAgdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZTogU2t5VmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSB0YWJJZFN2Yz86IFNreVRhYklkU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy4jYWRhcHRlclNlcnZpY2UgPSBhZGFwdGVyU2VydmljZTtcbiAgICB0aGlzLiNjaGFuZ2VSZWYgPSBjaGFuZ2VSZWY7XG4gICAgdGhpcy4jdGFic2V0U2VydmljZSA9IHRhYnNldFNlcnZpY2U7XG4gICAgdGhpcy4jdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZSA9IHZlcnRpY2FsVGFiTWVkaWFRdWVyeVNlcnZpY2U7XG4gICAgdGhpcy4jdGFiSWRTdmMgPSB0YWJJZFN2YztcblxuICAgIHRoaXMuI3RhYklkT3JEZWZhdWx0ID0gdGhpcy4jZGVmYXVsdFRhYklkID0gYHNreS12ZXJ0aWNhbC10YWItJHsrK25leHRJZH1gO1xuICAgIHRoaXMudGFiSWQgPSB0aGlzLiNkZWZhdWx0VGFiSWQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc01vYmlsZSA9IHRoaXMuI3RhYnNldFNlcnZpY2UuaXNNb2JpbGUoKTtcbiAgICB0aGlzLiNjaGFuZ2VSZWYubWFya0ZvckNoZWNrKCk7XG5cbiAgICB0aGlzLiN0YWJzZXRTZXJ2aWNlLnN3aXRjaGluZ01vYmlsZS5zdWJzY3JpYmUoKG1vYmlsZTogYm9vbGVhbikgPT4ge1xuICAgICAgdGhpcy5pc01vYmlsZSA9IG1vYmlsZTtcbiAgICAgIHRoaXMuI2NoYW5nZVJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcblxuICAgIC8vIFVwZGF0ZSB0aGUgYnJlYWtwb2ludCBhbmQgcmVzcG9uc2l2ZSBjbGFzcyBoZXJlIGp1c3QgYXMgYSBzYW5pdHkgY2hlY2sgc2luY2Ugd2UgY2FuIG5vdFxuICAgIC8vIHdhdGNoIGZvciBlbGVtZW50IHJlc2l6aW5nLlxuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuaW5kZXhDaGFuZ2VkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChpbmRleCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5pbmRleCA9PT0gaW5kZXggJiYgdGhpcy5jb250ZW50UmVuZGVyZWQpIHtcbiAgICAgICAgICBpZiAodGhpcy50YWJDb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLiN1cGRhdGVCcmVha3BvaW50QW5kUmVzcG9uc2l2ZUNsYXNzKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuYWRkVGFiKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI3RhYklkU3ZjPy51bnJlZ2lzdGVyKHRoaXMuI2RlZmF1bHRUYWJJZCk7XG4gICAgdGhpcy4jbW9iaWxlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuZGVzdHJveVRhYih0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyB0YWJJbmRleCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYWN0aXZhdGVUYWIoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XG4gICAgICB0aGlzLiN0YWJzZXRTZXJ2aWNlLmFjdGl2YXRlVGFiKHRoaXMpO1xuXG4gICAgICB0aGlzLiNjaGFuZ2VSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uVGFiQnV0dG9uS2V5VXAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAvKmlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGV2ZW50LmtleSkge1xuICAgICAgc3dpdGNoIChldmVudC5rZXkudG9VcHBlckNhc2UoKSkge1xuICAgICAgICBjYXNlICcgJzpcbiAgICAgICAgY2FzZSAnRU5URVInOlxuICAgICAgICAgIHRoaXMuYWN0aXZhdGVUYWIoKTtcbiAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJylcbiAgcHVibGljIG9uV2luZG93UmVzaXplKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRhYkNvbnRlbnQpIHtcbiAgICAgIHRoaXMuI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3MoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdGFiRGVhY3RpdmF0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy4jY2hhbmdlUmVmLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgI3VwZGF0ZUJyZWFrcG9pbnRBbmRSZXNwb25zaXZlQ2xhc3MoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFiQ29udGVudCkge1xuICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLiNhZGFwdGVyU2VydmljZS5nZXRXaWR0aCh0aGlzLnRhYkNvbnRlbnQpO1xuICAgICAgdGhpcy4jdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZS5zZXRCcmVha3BvaW50Rm9yV2lkdGgod2lkdGgpO1xuXG4gICAgICBjb25zdCBuZXdCcmVha3BvaW50ID0gdGhpcy4jdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZS5jdXJyZW50O1xuXG4gICAgICBpZiAobmV3QnJlYWtwb2ludCkge1xuICAgICAgICB0aGlzLiNhZGFwdGVyU2VydmljZS5zZXRSZXNwb25zaXZlQ2xhc3ModGhpcy50YWJDb250ZW50LCBuZXdCcmVha3BvaW50KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy4jY2hhbmdlUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgfVxufVxuIiwiPGFcbiAgY2xhc3M9XCJza3ktdmVydGljYWwtdGFiXCJcbiAgW2F0dHIuYXJpYS1jb250cm9sc109XCJpc01vYmlsZSA/IG51bGwgOiBhcmlhQ29udHJvbHMgfHwgdGFiQ29udGVudFBhbmUuaWRcIlxuICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cImFjdGl2ZVwiXG4gIFthdHRyLmlkXT1cInRhYklkXCJcbiAgW2F0dHIucm9sZV09XCJpc01vYmlsZSA/IHVuZGVmaW5lZCA6IGFyaWFSb2xlXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICdza3ktdmVydGljYWwtdGFiLWFjdGl2ZSc6IGFjdGl2ZSxcbiAgICAnc2t5LXZlcnRpY2FsLXRhYi1kaXNhYmxlZCc6IGRpc2FibGVkLFxuICAgICdza3ktZm9udC1kZWVtcGhhc2l6ZWQnOiBkaXNhYmxlZCxcbiAgICAnc2t5LWRlZW1waGFzaXplZCc6IGRpc2FibGVkXG4gIH1cIlxuICBbdGFiSW5kZXhdPVwidGFiSW5kZXgoKVwiXG4gIChjbGljayk9XCJhY3RpdmF0ZVRhYigpXCJcbiAgKGtleXVwKT1cIm9uVGFiQnV0dG9uS2V5VXAoJGV2ZW50KVwiXG4+XG4gIDxkaXYgY2xhc3M9XCJza3ktdmVydGljYWwtdGFiLWRpc3BsYXlcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2t5LXZlcnRpY2FsLXRhYi1oZWFkaW5nXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItaGVhZGluZy12YWx1ZVwiPnt7IHRhYkhlYWRpbmcgfX08L3NwYW4+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItY291bnRcIlxuICAgICAgICAqbmdJZj1cInRhYkhlYWRlckNvdW50IHx8IHRhYkhlYWRlckNvdW50ID09PSAwXCJcbiAgICAgID5cbiAgICAgICAgKHt7IHRhYkhlYWRlckNvdW50IH19KVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxza3ktc3RhdHVzLWluZGljYXRvclxuICAgICAgKm5nSWY9XCJlcnJvckluZGljYXRvclwiXG4gICAgICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItaGVhZGluZy1lcnJvclwiXG4gICAgICBkZXNjcmlwdGlvblR5cGU9XCJlcnJvclwiXG4gICAgICBpbmRpY2F0b3JUeXBlPVwiZGFuZ2VyXCJcbiAgICA+PC9za3ktc3RhdHVzLWluZGljYXRvcj5cbiAgICA8c2t5LWljb25cbiAgICAgICpuZ0lmPVwiaXNNb2JpbGUgJiYgc2hvd1RhYlJpZ2h0QXJyb3dcIlxuICAgICAgY2xhc3M9XCJza3ktdmVydGljYWwtdGFiLXJpZ2h0LWFycm93XCJcbiAgICAgIGljb249XCJjaGV2cm9uLXJpZ2h0XCJcbiAgICAvPlxuICA8L2Rpdj5cbjwvYT5cblxuPGRpdiAjdGFiQ29udGVudFdyYXBwZXI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItY29udGVudC1wYW5lXCJcbiAgICByb2xlPVwidGFicGFuZWxcIlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgc2t5SWRcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwidGFiSWRcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3NreS12ZXJ0aWNhbC10YWItaGlkZGVuJzogIWFjdGl2ZSB9XCJcbiAgICAjdGFiQ29udGVudFBhbmVcbiAgPlxuICAgIDxuZy1jb250ZW50IC8+XG5cbiAgICA8ZGl2PjwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
216
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGljYWwtdGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy92ZXJ0aWNhbC10YWJzZXQvdmVydGljYWwtdGFiLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy92ZXJ0aWNhbC10YWJzZXQvdmVydGljYWwtdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSTNDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRXJGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7Ozs7QUFHaEYsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBZWYsTUFBTSxPQUFPLHVCQUF1QjtJQWlCbEM7Ozs7Ozs7OztPQVNHO0lBQ0gsSUFDVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBVyxRQUFRLENBQUMsS0FBeUI7UUFDM0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLElBQUksS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFtQ0Q7OztPQUdHO0lBQ0gsSUFDVyxLQUFLLENBQUMsS0FBeUI7UUFDeEMsSUFB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NEJBQ0UsT0FBTyxFQUFFLG9CQUFvQjs0QkFDN0IsV0FBVyxFQUFFLCtCQUErQjt5QkFDN0M7cUJBQ0YsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU07OzBCQTJJNUMsUUFBUTs0Q0FwSUosTUFBTTtzQkFEWixLQUFLO2dCQVdDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBY0ssUUFBUTtzQkFEbEIsS0FBSztnQkFZQyxRQUFRO3NCQURkLEtBQUs7Z0JBUUMsY0FBYztzQkFEcEIsS0FBSztnQkFPQyxjQUFjO3NCQURwQixLQUFLO2dCQVFDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBUUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQVFLLEtBQUs7c0JBRGYsS0FBSztnQkFpQ0MsU0FBUztzQkFEZixTQUFTO3VCQUFDLFdBQVc7Z0JBSWYsVUFBVTtzQkFEaEIsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBdUd2QixjQUFjO3NCQURwQixZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBWaWV3Q2hpbGQsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lNZWRpYVF1ZXJ5U2VydmljZSB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lUYWJJZFNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvdGFiLWlkLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBTa3lWZXJ0aWNhbFRhYk1lZGlhUXVlcnlTZXJ2aWNlIH0gZnJvbSAnLi92ZXJ0aWNhbC10YWItbWVkaWEtcXVlcnkuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lWZXJ0aWNhbFRhYnNldEFkYXB0ZXJTZXJ2aWNlIH0gZnJvbSAnLi92ZXJ0aWNhbC10YWJzZXQtYWRhcHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreVZlcnRpY2FsVGFic2V0R3JvdXBTZXJ2aWNlIH0gZnJvbSAnLi92ZXJ0aWNhbC10YWJzZXQtZ3JvdXAuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lWZXJ0aWNhbFRhYnNldFNlcnZpY2UgfSBmcm9tICcuL3ZlcnRpY2FsLXRhYnNldC5zZXJ2aWNlJztcblxubGV0IG5leHRJZCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS12ZXJ0aWNhbC10YWInLFxuICB0ZW1wbGF0ZVVybDogJy4vdmVydGljYWwtdGFiLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdmVydGljYWwtdGFiLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIFNreVZlcnRpY2FsVGFiTWVkaWFRdWVyeVNlcnZpY2UsXG4gICAge1xuICAgICAgcHJvdmlkZTogU2t5TWVkaWFRdWVyeVNlcnZpY2UsXG4gICAgICB1c2VFeGlzdGluZzogU2t5VmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VmVydGljYWxUYWJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSB0YWIgaXMgYWN0aXZlIHdoZW4gdGhlIHRhYnNldCBsb2Fkcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhY3RpdmU6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogVGhlIEhUTUwgZWxlbWVudCBJRCBvZiB0aGUgZWxlbWVudCB0aGF0IGNvbnRhaW5zXG4gICAqIHRoZSBjb250ZW50IHRoYXQgdGhlIHZlcnRpY2FsIHRhYiBkaXNwbGF5cywgd2hpY2ggY29ycmVzcG9uZHMgdG8gdGhlIGB0YWJJZGAuIFRoaXMgcHJvcGVydHlcbiAgICogW3N1cHBvcnRzIGFjY2Vzc2liaWxpdHkgcnVsZXMgZm9yIGRpc2Nsb3N1cmVzXShodHRwczovL3d3dy53My5vcmcvVFIvd2FpLWFyaWEtcHJhY3RpY2VzLTEuMS8jZGlzY2xvc3VyZSkuXG4gICAqIEZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBgYXJpYS1jb250cm9sc2AgYXR0cmlidXRlLCBzZWUgdGhlIFtXQUktQVJJQSBkZWZpbml0aW9uXShodHRwczovL3d3dy53My5vcmcvVFIvd2FpLWFyaWEvI2FyaWEtY29udHJvbHMpLlxuICAgKiBAZGVwcmVjYXRlZCBOb3cgdGhhdCB0aGUgdmVydGljYWwgdGFicyBwcm92aWRlIGFyaWEgbGFiZWxzIGF1dG9tYXRpY2FsbHksIHRoaXMgaW5wdXQgaXMgbm8gbG9uZ2VyIG5lY2Vzc2FyeS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcmlhQ29udHJvbHM6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIEFSSUEgcm9sZSBmb3IgdGhlIHZlcnRpY2FsIHRhYlxuICAgKiBbdG8gc3VwcG9ydCBhY2Nlc3NpYmlsaXR5XShodHRwczovL2RldmVsb3Blci5ibGFja2JhdWQuY29tL3NreXV4L2xlYXJuL2FjY2Vzc2liaWxpdHkpXG4gICAqIGJ5IGluZGljYXRpbmcgaG93IHRoZSB0YWIgZnVuY3Rpb25zIGFuZCB3aGF0IGl0IGNvbnRyb2xzLiBGb3IgaW5mb3JtYXRpb24gYWJvdXQgaG93XG4gICAqIGFuIEFSSUEgcm9sZSBpbmRpY2F0ZXMgd2hhdCBhbiBpdGVtIHJlcHJlc2VudHMgb24gYSB3ZWIgcGFnZSwgc2VlIHRoZVxuICAgKiBbV0FJLUFSSUEgcm9sZXMgbW9kZWxdKGh0dHBzOi8vd3d3LnczLm9yZy9XQUkvUEYvYXJpYS8jcm9sZXMpLlxuICAgKiBAZGVmYXVsdCBcInRhYlwiXG4gICAqIEBkZXByZWNhdGVkIEFueSBvdGhlciB2YWx1ZSB0aGFuIGB0YWJgIGNvdWxkIGxlYWQgdG8gYSBwb29yIHVzZXIgZXhwZXJpZW5jZSBmb3IgdXNlcnMgd2l0aCBhc3Npc3RpdmUgdGVjaG5vbG9neS5cbiAgICogSW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiwgdGhpcyBwcm9wZXJ0eSB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIGB0YWJgLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGdldCBhcmlhUm9sZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNfYXJpYVJvbGU7XG4gIH1cbiAgcHVibGljIHNldCBhcmlhUm9sZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2FyaWFSb2xlID0gdmFsdWUgPz8gJ3RhYic7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0byBkaXNhYmxlIHRoZSB0YWIuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogV2hldGhlciB0byBpbmRpY2F0ZSB0aGF0IHRoZSB0YWIgaGFzIGFuIGVycm9yLlxuICAgKiBAaW50ZXJuYWwgVGhpcyBpcyB1c2VkIGZvciBzZWN0aW9uZWQgZm9ybXMgYW5kIGlzIG5vdCBjdXJyZW50bHkgYSBzdXBwb3J0ZWQgZGVzaWduIGZvciBwdXJlIHZlcnRpY2FsIHRhYnMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZXJyb3JJbmRpY2F0b3I6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRGlzcGxheXMgYW4gaXRlbSBjb3VudCBhbG9uZ3NpZGUgdGhlIHRhYiBoZWFkZXIgdG8gaW5kaWNhdGUgaG93IG1hbnkgbGlzdCBpdGVtcyB0aGUgdGFiIGNvbnRhaW5zLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHRhYkhlYWRlckNvdW50OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWIgaGVhZGVyLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0YWJIZWFkaW5nOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZGlzcGxheSBhIGNoZXZyb24tcmlnaHQgaWNvbiBvbiB0aGUgcmlnaHQgaGFuZCBzaWRlIG9mIHRoZSB0YWIuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dUYWJSaWdodEFycm93OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgZm9yIHRoZSB0YWIuXG4gICAqIEBkZXByZWNhdGVkIE5vdyB0aGF0IHRoZSB2ZXJ0aWNhbCB0YWJzIHByb3ZpZGUgYXJpYSBsYWJlbHMgYXV0b21hdGljYWxseSwgdGhpcyBpbnB1dCBpcyBubyBsb25nZXIgbmVjZXNzYXJ5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCB0YWJJZCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jdGFiSWRPckRlZmF1bHQgPSB2YWx1ZSB8fCB0aGlzLiNkZWZhdWx0VGFiSWQ7XG4gICAgdGhpcy4jdGFiSWRTdmM/LnJlZ2lzdGVyKHRoaXMuI2RlZmF1bHRUYWJJZCwgdGhpcy4jdGFiSWRPckRlZmF1bHQpO1xuICB9XG5cbiAgcHVibGljIGdldCB0YWJJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiN0YWJJZE9yRGVmYXVsdDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgY29udGVudFJlbmRlcmVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy4jX2NvbnRlbnRSZW5kZXJlZCA9IHZhbHVlO1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy4jX2NvbnRlbnRSZW5kZXJlZCkge1xuICAgICAgLy8gTk9URTogV3JhcHBlZCBpbiBhIHNldFRpbWVvdXQgaGVyZSB0byBlbnN1cmUgdGhhdCBldmVyeXRoaW5nIGhhcyBjb21wbGV0ZWQgcmVuZGVyaW5nLlxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnRhYkNvbnRlbnQpIHtcbiAgICAgICAgICB0aGlzLiN1cGRhdGVCcmVha3BvaW50QW5kUmVzcG9uc2l2ZUNsYXNzKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29udGVudFJlbmRlcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfY29udGVudFJlbmRlcmVkO1xuICB9XG5cbiAgcHVibGljIGluZGV4OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGlzTW9iaWxlID0gZmFsc2U7XG5cbiAgQFZpZXdDaGlsZCgndGFiQnV0dG9uJylcbiAgcHVibGljIHRhYkJ1dHRvbjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBAVmlld0NoaWxkKCd0YWJDb250ZW50V3JhcHBlcicpXG4gIHB1YmxpYyB0YWJDb250ZW50OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIHB1YmxpYyBncm91cFNlcnZpY2UgPSBpbmplY3QoU2t5VmVydGljYWxUYWJzZXRHcm91cFNlcnZpY2UsIHtcbiAgICBvcHRpb25hbDogdHJ1ZSxcbiAgfSk7XG5cbiAgI19hcmlhUm9sZSA9ICd0YWInO1xuXG4gICNfY29udGVudFJlbmRlcmVkID0gZmFsc2U7XG5cbiAgI3RhYklkT3JEZWZhdWx0OiBzdHJpbmc7XG5cbiAgI2RlZmF1bHRUYWJJZDogc3RyaW5nO1xuXG4gICNtb2JpbGVTdWJzY3JpcHRpb24gPSBuZXcgU3ViamVjdCgpO1xuXG4gICNuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAjYWRhcHRlclNlcnZpY2U6IFNreVZlcnRpY2FsVGFic2V0QWRhcHRlclNlcnZpY2U7XG4gICNjaGFuZ2VSZWY6IENoYW5nZURldGVjdG9yUmVmO1xuICAjdGFic2V0U2VydmljZTogU2t5VmVydGljYWxUYWJzZXRTZXJ2aWNlO1xuICAjdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZTogU2t5VmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZTtcbiAgI3RhYklkU3ZjOiBTa3lUYWJJZFNlcnZpY2UgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgYWRhcHRlclNlcnZpY2U6IFNreVZlcnRpY2FsVGFic2V0QWRhcHRlclNlcnZpY2UsXG4gICAgY2hhbmdlUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICB0YWJzZXRTZXJ2aWNlOiBTa3lWZXJ0aWNhbFRhYnNldFNlcnZpY2UsXG4gICAgdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZTogU2t5VmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSB0YWJJZFN2Yz86IFNreVRhYklkU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy4jYWRhcHRlclNlcnZpY2UgPSBhZGFwdGVyU2VydmljZTtcbiAgICB0aGlzLiNjaGFuZ2VSZWYgPSBjaGFuZ2VSZWY7XG4gICAgdGhpcy4jdGFic2V0U2VydmljZSA9IHRhYnNldFNlcnZpY2U7XG4gICAgdGhpcy4jdmVydGljYWxUYWJNZWRpYVF1ZXJ5U2VydmljZSA9IHZlcnRpY2FsVGFiTWVkaWFRdWVyeVNlcnZpY2U7XG4gICAgdGhpcy4jdGFiSWRTdmMgPSB0YWJJZFN2YztcblxuICAgIHRoaXMuI3RhYklkT3JEZWZhdWx0ID0gdGhpcy4jZGVmYXVsdFRhYklkID0gYHNreS12ZXJ0aWNhbC10YWItJHsrK25leHRJZH1gO1xuICAgIHRoaXMudGFiSWQgPSB0aGlzLiNkZWZhdWx0VGFiSWQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc01vYmlsZSA9IHRoaXMuI3RhYnNldFNlcnZpY2UuaXNNb2JpbGUoKTtcbiAgICB0aGlzLiNjaGFuZ2VSZWYubWFya0ZvckNoZWNrKCk7XG5cbiAgICB0aGlzLiN0YWJzZXRTZXJ2aWNlLnN3aXRjaGluZ01vYmlsZS5zdWJzY3JpYmUoKG1vYmlsZTogYm9vbGVhbikgPT4ge1xuICAgICAgdGhpcy5pc01vYmlsZSA9IG1vYmlsZTtcbiAgICAgIHRoaXMuI2NoYW5nZVJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9KTtcblxuICAgIC8vIFVwZGF0ZSB0aGUgYnJlYWtwb2ludCBhbmQgcmVzcG9uc2l2ZSBjbGFzcyBoZXJlIGp1c3QgYXMgYSBzYW5pdHkgY2hlY2sgc2luY2Ugd2UgY2FuIG5vdFxuICAgIC8vIHdhdGNoIGZvciBlbGVtZW50IHJlc2l6aW5nLlxuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuaW5kZXhDaGFuZ2VkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy4jbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChpbmRleCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5pbmRleCA9PT0gaW5kZXggJiYgdGhpcy5jb250ZW50UmVuZGVyZWQpIHtcbiAgICAgICAgICBpZiAodGhpcy50YWJDb250ZW50KSB7XG4gICAgICAgICAgICB0aGlzLiN1cGRhdGVCcmVha3BvaW50QW5kUmVzcG9uc2l2ZUNsYXNzKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuYWRkVGFiKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuI3RhYklkU3ZjPy51bnJlZ2lzdGVyKHRoaXMuI2RlZmF1bHRUYWJJZCk7XG4gICAgdGhpcy4jbW9iaWxlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy4jbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuZGVzdHJveVRhYih0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBhY3RpdmF0ZVRhYigpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuYWN0aXZlID0gdHJ1ZTtcbiAgICAgIHRoaXMuI3RhYnNldFNlcnZpY2UuYWN0aXZhdGVUYWIodGhpcyk7XG5cbiAgICAgIHRoaXMuI2NoYW5nZVJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZm9jdXNCdXR0b24oKTogdm9pZCB7XG4gICAgdGhpcy4jYWRhcHRlclNlcnZpY2UuZm9jdXNCdXR0b24odGhpcy50YWJCdXR0b24pO1xuICB9XG5cbiAgcHVibGljIHRhYkJ1dHRvbkFjdGl2YXRlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZhdGVUYWIoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyB0YWJCdXR0b25BcnJvd0xlZnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZ3JvdXBTZXJ2aWNlKSB7XG4gICAgICB0aGlzLmdyb3VwU2VydmljZS5tZXNzYWdlU3RyZWFtLm5leHQoe1xuICAgICAgICBtZXNzYWdlVHlwZTogJ2ZvY3VzJyxcbiAgICAgIH0pO1xuXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuICBwdWJsaWMgb25XaW5kb3dSZXNpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudGFiQ29udGVudCkge1xuICAgICAgdGhpcy4jdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0YWJEZWFjdGl2YXRlZCgpOiB2b2lkIHtcbiAgICB0aGlzLiNjaGFuZ2VSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAjdXBkYXRlQnJlYWtwb2ludEFuZFJlc3BvbnNpdmVDbGFzcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50YWJDb250ZW50KSB7XG4gICAgICBjb25zdCB3aWR0aCA9IHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLmdldFdpZHRoKHRoaXMudGFiQ29udGVudCk7XG4gICAgICB0aGlzLiN2ZXJ0aWNhbFRhYk1lZGlhUXVlcnlTZXJ2aWNlLnNldEJyZWFrcG9pbnRGb3JXaWR0aCh3aWR0aCk7XG5cbiAgICAgIGNvbnN0IG5ld0JyZWFrcG9pbnQgPSB0aGlzLiN2ZXJ0aWNhbFRhYk1lZGlhUXVlcnlTZXJ2aWNlLmN1cnJlbnQ7XG5cbiAgICAgIGlmIChuZXdCcmVha3BvaW50KSB7XG4gICAgICAgIHRoaXMuI2FkYXB0ZXJTZXJ2aWNlLnNldFJlc3BvbnNpdmVDbGFzcyh0aGlzLnRhYkNvbnRlbnQsIG5ld0JyZWFrcG9pbnQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLiNjaGFuZ2VSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG59XG4iLCI8YVxuICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWIgc2t5LXZlcnRpY2FsLXRhYnNldC1idXR0b25cIlxuICBbYXR0ci5hcmlhLWNvbnRyb2xzXT1cImlzTW9iaWxlID8gbnVsbCA6IGFyaWFDb250cm9scyB8fCB0YWJDb250ZW50UGFuZS5pZFwiXG4gIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgdW5kZWZpbmVkXCJcbiAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJhY3RpdmVcIlxuICBbYXR0ci5pZF09XCJ0YWJJZFwiXG4gIFthdHRyLnJvbGVdPVwiaXNNb2JpbGUgPyB1bmRlZmluZWQgOiBhcmlhUm9sZVwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnc2t5LXZlcnRpY2FsLXRhYi1hY3RpdmUnOiBhY3RpdmUsXG4gICAgJ3NreS12ZXJ0aWNhbC10YWJzZXQtYnV0dG9uLWRpc2FibGVkJzogZGlzYWJsZWQsXG4gICAgJ3NreS1mb250LWRlZW1waGFzaXplZCc6IGRpc2FibGVkLFxuICAgICdza3ktZGVlbXBoYXNpemVkJzogZGlzYWJsZWRcbiAgfVwiXG4gIFt0YWJJbmRleF09XCItMVwiXG4gIChjbGljayk9XCJhY3RpdmF0ZVRhYigpXCJcbiAgKGtleXVwLmFycm93bGVmdCk9XCJ0YWJCdXR0b25BcnJvd0xlZnQoJGV2ZW50KVwiXG4gIChrZXl1cC5lbnRlcik9XCJ0YWJCdXR0b25BY3RpdmF0ZSgkZXZlbnQpXCJcbiAgKGtleXVwLnNwYWNlKT1cInRhYkJ1dHRvbkFjdGl2YXRlKCRldmVudClcIlxuICAjdGFiQnV0dG9uXG4+XG4gIDxkaXYgY2xhc3M9XCJza3ktdmVydGljYWwtdGFiLWRpc3BsYXlcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2t5LXZlcnRpY2FsLXRhYi1oZWFkaW5nXCI+XG4gICAgICA8c3BhbiBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItaGVhZGluZy12YWx1ZVwiPnt7IHRhYkhlYWRpbmcgfX08L3NwYW4+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItY291bnRcIlxuICAgICAgICAqbmdJZj1cInRhYkhlYWRlckNvdW50IHx8IHRhYkhlYWRlckNvdW50ID09PSAwXCJcbiAgICAgID5cbiAgICAgICAgKHt7IHRhYkhlYWRlckNvdW50IH19KVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIDxza3ktc3RhdHVzLWluZGljYXRvclxuICAgICAgKm5nSWY9XCJlcnJvckluZGljYXRvclwiXG4gICAgICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItaGVhZGluZy1lcnJvclwiXG4gICAgICBkZXNjcmlwdGlvblR5cGU9XCJlcnJvclwiXG4gICAgICBpbmRpY2F0b3JUeXBlPVwiZGFuZ2VyXCJcbiAgICA+PC9za3ktc3RhdHVzLWluZGljYXRvcj5cbiAgICA8c2t5LWljb25cbiAgICAgICpuZ0lmPVwiaXNNb2JpbGUgJiYgc2hvd1RhYlJpZ2h0QXJyb3dcIlxuICAgICAgY2xhc3M9XCJza3ktdmVydGljYWwtdGFiLXJpZ2h0LWFycm93XCJcbiAgICAgIGljb249XCJjaGV2cm9uLXJpZ2h0XCJcbiAgICAvPlxuICA8L2Rpdj5cbjwvYT5cblxuPGRpdiAjdGFiQ29udGVudFdyYXBwZXI+XG4gIDxkaXZcbiAgICBjbGFzcz1cInNreS12ZXJ0aWNhbC10YWItY29udGVudC1wYW5lXCJcbiAgICByb2xlPVwidGFicGFuZWxcIlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgc2t5SWRcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwidGFiSWRcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3NreS12ZXJ0aWNhbC10YWItaGlkZGVuJzogIWFjdGl2ZSB9XCJcbiAgICAjdGFiQ29udGVudFBhbmVcbiAgPlxuICAgIDxuZy1jb250ZW50IC8+XG5cbiAgICA8ZGl2PjwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,8 +1,12 @@
1
- import { Injectable, } from '@angular/core';
1
+ import { DOCUMENT } from '@angular/common';
2
+ import { Injectable, inject, } from '@angular/core';
2
3
  import { SkyMediaBreakpoints } from '@skyux/core';
3
4
  import * as i0 from "@angular/core";
5
+ const VERTICAL_TABSET_BUTTON_SELECTOR = '.sky-vertical-tabset-button';
6
+ const VERTICAL_TABSET_BUTTON_DISABLED_SELECTOR = `${VERTICAL_TABSET_BUTTON_SELECTOR}-disabled`;
4
7
  export class SkyVerticalTabsetAdapterService {
5
8
  #renderer;
9
+ #document = inject(DOCUMENT);
6
10
  constructor(rendererFactory) {
7
11
  this.#renderer = rendererFactory.createRenderer(undefined, null);
8
12
  }
@@ -39,10 +43,60 @@ export class SkyVerticalTabsetAdapterService {
39
43
  }
40
44
  this.#renderer.addClass(nativeEl, newClass);
41
45
  }
46
+ focusButton(elRef) {
47
+ return this.#focusButtonEl(elRef?.nativeElement);
48
+ }
49
+ focusFirstButton(tabGroups) {
50
+ const tabGroupsEl = tabGroups?.nativeElement;
51
+ if (tabGroupsEl) {
52
+ const firstButtonEl = tabGroupsEl.querySelector(VERTICAL_TABSET_BUTTON_SELECTOR);
53
+ if (firstButtonEl) {
54
+ firstButtonEl.focus();
55
+ }
56
+ }
57
+ }
58
+ focusNextButton(tabGroups) {
59
+ this.#focusSiblingButton(tabGroups);
60
+ }
61
+ focusPreviousButton(tabGroups) {
62
+ this.#focusSiblingButton(tabGroups, true);
63
+ }
64
+ #focusSiblingButton(tabGroups, previous) {
65
+ if (tabGroups) {
66
+ const focusedEl = this.#document.activeElement;
67
+ if (focusedEl?.matches(VERTICAL_TABSET_BUTTON_SELECTOR)) {
68
+ const tabGroupsEl = tabGroups.nativeElement;
69
+ const buttonEls = Array.from(tabGroupsEl.querySelectorAll(VERTICAL_TABSET_BUTTON_SELECTOR));
70
+ if (previous) {
71
+ buttonEls.reverse();
72
+ }
73
+ const focusedIndex = buttonEls.indexOf(focusedEl);
74
+ for (let i = 1, n = buttonEls.length; i < n; i++) {
75
+ // Offset the index of the next button from the index of the
76
+ // currently focused button, circling back to the first button
77
+ // when the end of the list is reached.
78
+ const offset = (i + focusedIndex) % n;
79
+ if (this.#focusButtonEl(buttonEls[offset])) {
80
+ break;
81
+ }
82
+ }
83
+ }
84
+ }
85
+ }
86
+ #focusButtonEl(el) {
87
+ if (el && !el.matches(VERTICAL_TABSET_BUTTON_DISABLED_SELECTOR)) {
88
+ el.focus();
89
+ return this.#elHasFocus(el);
90
+ }
91
+ return false;
92
+ }
93
+ #elHasFocus(el) {
94
+ return !!el && el === this.#document.activeElement;
95
+ }
42
96
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyVerticalTabsetAdapterService, deps: [{ token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
43
97
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyVerticalTabsetAdapterService }); }
44
98
  }
45
99
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SkyVerticalTabsetAdapterService, decorators: [{
46
100
  type: Injectable
47
101
  }], ctorParameters: function () { return [{ type: i0.RendererFactory2 }]; } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGljYWwtdGFic2V0LWFkYXB0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy92ZXJ0aWNhbC10YWJzZXQvdmVydGljYWwtdGFic2V0LWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsVUFBVSxHQUdYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFHbEQsTUFBTSxPQUFPLCtCQUErQjtJQUMxQyxTQUFTLENBQVk7SUFFckIsWUFBWSxlQUFpQztRQUMzQyxJQUFJLENBQUMsU0FBUyxHQUFHLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxRQUFRLENBQUMsVUFBc0I7UUFDcEMsT0FBTyxVQUFVLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUM5QyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsT0FBbUI7UUFDM0MsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxrQkFBa0IsQ0FDdkIsT0FBbUIsRUFDbkIsVUFBK0I7UUFFL0IsTUFBTSxRQUFRLEdBQWdCLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFFcEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFFcEUsSUFBSSxRQUFnQixDQUFDO1FBRXJCLFFBQVEsVUFBVSxFQUFFO1lBQ2xCLEtBQUssbUJBQW1CLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzNCLFFBQVEsR0FBRyw2QkFBNkIsQ0FBQztnQkFDekMsTUFBTTthQUNQO1lBQ0QsS0FBSyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDM0IsUUFBUSxHQUFHLDZCQUE2QixDQUFDO2dCQUN6QyxNQUFNO2FBQ1A7WUFDRCxLQUFLLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMzQixRQUFRLEdBQUcsNkJBQTZCLENBQUM7Z0JBQ3pDLE1BQU07YUFDUDtZQUNELE9BQU8sQ0FBQyxDQUFDO2dCQUNQLFFBQVEsR0FBRyw2QkFBNkIsQ0FBQztnQkFDekMsTUFBTTthQUNQO1NBQ0Y7UUFFRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs4R0FoRFUsK0JBQStCO2tIQUEvQiwrQkFBK0I7OzJGQUEvQiwrQkFBK0I7a0JBRDNDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBFbGVtZW50UmVmLFxuICBJbmplY3RhYmxlLFxuICBSZW5kZXJlcjIsXG4gIFJlbmRlcmVyRmFjdG9yeTIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5TWVkaWFCcmVha3BvaW50cyB9IGZyb20gJ0Bza3l1eC9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreVZlcnRpY2FsVGFic2V0QWRhcHRlclNlcnZpY2Uge1xuICAjcmVuZGVyZXI6IFJlbmRlcmVyMjtcblxuICBjb25zdHJ1Y3RvcihyZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIpIHtcbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyRmFjdG9yeS5jcmVhdGVSZW5kZXJlcih1bmRlZmluZWQsIG51bGwpO1xuICB9XG5cbiAgcHVibGljIGdldFdpZHRoKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpOiBudW1iZXIge1xuICAgIHJldHVybiBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGg7XG4gIH1cblxuICBwdWJsaWMgc2Nyb2xsVG9Db250ZW50VG9wKGVsZW1lbnQ6IEVsZW1lbnRSZWYpOiB2b2lkIHtcbiAgICBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID0gMDtcbiAgfVxuXG4gIHB1YmxpYyBzZXRSZXNwb25zaXZlQ2xhc3MoXG4gICAgZWxlbWVudDogRWxlbWVudFJlZixcbiAgICBicmVha3BvaW50OiBTa3lNZWRpYUJyZWFrcG9pbnRzLFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBuYXRpdmVFbDogSFRNTEVsZW1lbnQgPSBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICB0aGlzLiNyZW5kZXJlci5yZW1vdmVDbGFzcyhuYXRpdmVFbCwgJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci14cycpO1xuICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUNsYXNzKG5hdGl2ZUVsLCAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLXNtJyk7XG4gICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlQ2xhc3MobmF0aXZlRWwsICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItbWQnKTtcbiAgICB0aGlzLiNyZW5kZXJlci5yZW1vdmVDbGFzcyhuYXRpdmVFbCwgJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci1sZycpO1xuXG4gICAgbGV0IG5ld0NsYXNzOiBzdHJpbmc7XG5cbiAgICBzd2l0Y2ggKGJyZWFrcG9pbnQpIHtcbiAgICAgIGNhc2UgU2t5TWVkaWFCcmVha3BvaW50cy54czoge1xuICAgICAgICBuZXdDbGFzcyA9ICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXIteHMnO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2t5TWVkaWFCcmVha3BvaW50cy5zbToge1xuICAgICAgICBuZXdDbGFzcyA9ICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItc20nO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgU2t5TWVkaWFCcmVha3BvaW50cy5tZDoge1xuICAgICAgICBuZXdDbGFzcyA9ICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItbWQnO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLWxnJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy4jcmVuZGVyZXIuYWRkQ2xhc3MobmF0aXZlRWwsIG5ld0NsYXNzKTtcbiAgfVxufVxuIl19
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGljYWwtdGFic2V0LWFkYXB0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy90YWJzL3NyYy9saWIvbW9kdWxlcy92ZXJ0aWNhbC10YWJzZXQvdmVydGljYWwtdGFic2V0LWFkYXB0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUVMLFVBQVUsRUFHVixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUVsRCxNQUFNLCtCQUErQixHQUFHLDZCQUE2QixDQUFDO0FBQ3RFLE1BQU0sd0NBQXdDLEdBQUcsR0FBRywrQkFBK0IsV0FBVyxDQUFDO0FBRy9GLE1BQU0sT0FBTywrQkFBK0I7SUFDMUMsU0FBUyxDQUFZO0lBQ3JCLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFN0IsWUFBWSxlQUFpQztRQUMzQyxJQUFJLENBQUMsU0FBUyxHQUFHLGVBQWUsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFTSxRQUFRLENBQUMsVUFBc0I7UUFDcEMsT0FBTyxVQUFVLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUM5QyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsT0FBbUI7UUFDM0MsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxrQkFBa0IsQ0FDdkIsT0FBbUIsRUFDbkIsVUFBK0I7UUFFL0IsTUFBTSxRQUFRLEdBQWdCLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFFcEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLDZCQUE2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RjtTQUNGO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxFQUFrQztRQUMvQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsd0NBQXdDLENBQUMsRUFBRTtZQUMvRCxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDN0I7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBa0M7UUFDNUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQztJQUNyRCxDQUFDOzhHQTVIVSwrQkFBK0I7a0hBQS9CLCtCQUErQjs7MkZBQS9CLCtCQUErQjtrQkFEM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEVsZW1lbnRSZWYsXG4gIEluamVjdGFibGUsXG4gIFJlbmRlcmVyMixcbiAgUmVuZGVyZXJGYWN0b3J5MixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU1lZGlhQnJlYWtwb2ludHMgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmNvbnN0IFZFUlRJQ0FMX1RBQlNFVF9CVVRUT05fU0VMRUNUT1IgPSAnLnNreS12ZXJ0aWNhbC10YWJzZXQtYnV0dG9uJztcbmNvbnN0IFZFUlRJQ0FMX1RBQlNFVF9CVVRUT05fRElTQUJMRURfU0VMRUNUT1IgPSBgJHtWRVJUSUNBTF9UQUJTRVRfQlVUVE9OX1NFTEVDVE9SfS1kaXNhYmxlZGA7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lWZXJ0aWNhbFRhYnNldEFkYXB0ZXJTZXJ2aWNlIHtcbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG4gICNkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG5cbiAgY29uc3RydWN0b3IocmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyKSB7XG4gICAgdGhpcy4jcmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIodW5kZWZpbmVkLCBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRXaWR0aChlbGVtZW50UmVmOiBFbGVtZW50UmVmKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoO1xuICB9XG5cbiAgcHVibGljIHNjcm9sbFRvQ29udGVudFRvcChlbGVtZW50OiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgZWxlbWVudC5uYXRpdmVFbGVtZW50LnNjcm9sbFRvcCA9IDA7XG4gIH1cblxuICBwdWJsaWMgc2V0UmVzcG9uc2l2ZUNsYXNzKFxuICAgIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgYnJlYWtwb2ludDogU2t5TWVkaWFCcmVha3BvaW50cyxcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgbmF0aXZlRWw6IEhUTUxFbGVtZW50ID0gZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuXG4gICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlQ2xhc3MobmF0aXZlRWwsICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXIteHMnKTtcbiAgICB0aGlzLiNyZW5kZXJlci5yZW1vdmVDbGFzcyhuYXRpdmVFbCwgJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci1zbScpO1xuICAgIHRoaXMuI3JlbmRlcmVyLnJlbW92ZUNsYXNzKG5hdGl2ZUVsLCAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLW1kJyk7XG4gICAgdGhpcy4jcmVuZGVyZXIucmVtb3ZlQ2xhc3MobmF0aXZlRWwsICdza3ktcmVzcG9uc2l2ZS1jb250YWluZXItbGcnKTtcblxuICAgIGxldCBuZXdDbGFzczogc3RyaW5nO1xuXG4gICAgc3dpdGNoIChicmVha3BvaW50KSB7XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMueHM6IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLXhzJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMuc206IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLXNtJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIFNreU1lZGlhQnJlYWtwb2ludHMubWQ6IHtcbiAgICAgICAgbmV3Q2xhc3MgPSAnc2t5LXJlc3BvbnNpdmUtY29udGFpbmVyLW1kJztcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIG5ld0NsYXNzID0gJ3NreS1yZXNwb25zaXZlLWNvbnRhaW5lci1sZyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuI3JlbmRlcmVyLmFkZENsYXNzKG5hdGl2ZUVsLCBuZXdDbGFzcyk7XG4gIH1cblxuICBwdWJsaWMgZm9jdXNCdXR0b24oZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+IHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuI2ZvY3VzQnV0dG9uRWwoZWxSZWY/Lm5hdGl2ZUVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzRmlyc3RCdXR0b24oXG4gICAgdGFiR3JvdXBzOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiB8IHVuZGVmaW5lZCxcbiAgKTogdm9pZCB7XG4gICAgY29uc3QgdGFiR3JvdXBzRWwgPSB0YWJHcm91cHM/Lm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBpZiAodGFiR3JvdXBzRWwpIHtcbiAgICAgIGNvbnN0IGZpcnN0QnV0dG9uRWwgPSB0YWJHcm91cHNFbC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICBWRVJUSUNBTF9UQUJTRVRfQlVUVE9OX1NFTEVDVE9SLFxuICAgICAgKSBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG5cbiAgICAgIGlmIChmaXJzdEJ1dHRvbkVsKSB7XG4gICAgICAgIGZpcnN0QnV0dG9uRWwuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZm9jdXNOZXh0QnV0dG9uKHRhYkdyb3VwczogRWxlbWVudFJlZiB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICAgIHRoaXMuI2ZvY3VzU2libGluZ0J1dHRvbih0YWJHcm91cHMpO1xuICB9XG5cbiAgcHVibGljIGZvY3VzUHJldmlvdXNCdXR0b24odGFiR3JvdXBzOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gICAgdGhpcy4jZm9jdXNTaWJsaW5nQnV0dG9uKHRhYkdyb3VwcywgdHJ1ZSk7XG4gIH1cblxuICAjZm9jdXNTaWJsaW5nQnV0dG9uKFxuICAgIHRhYkdyb3VwczogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQsXG4gICAgcHJldmlvdXM/OiBib29sZWFuLFxuICApOiB2b2lkIHtcbiAgICBpZiAodGFiR3JvdXBzKSB7XG4gICAgICBjb25zdCBmb2N1c2VkRWwgPSB0aGlzLiNkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcblxuICAgICAgaWYgKGZvY3VzZWRFbD8ubWF0Y2hlcyhWRVJUSUNBTF9UQUJTRVRfQlVUVE9OX1NFTEVDVE9SKSkge1xuICAgICAgICBjb25zdCB0YWJHcm91cHNFbCA9IHRhYkdyb3Vwcy5uYXRpdmVFbGVtZW50O1xuXG4gICAgICAgIGNvbnN0IGJ1dHRvbkVscyA9IEFycmF5LmZyb20oXG4gICAgICAgICAgdGFiR3JvdXBzRWwucXVlcnlTZWxlY3RvckFsbChWRVJUSUNBTF9UQUJTRVRfQlVUVE9OX1NFTEVDVE9SKSxcbiAgICAgICAgKSBhcyBIVE1MRWxlbWVudFtdO1xuXG4gICAgICAgIGlmIChwcmV2aW91cykge1xuICAgICAgICAgIGJ1dHRvbkVscy5yZXZlcnNlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmb2N1c2VkSW5kZXggPSBidXR0b25FbHMuaW5kZXhPZihmb2N1c2VkRWwpO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAxLCBuID0gYnV0dG9uRWxzLmxlbmd0aDsgaSA8IG47IGkrKykge1xuICAgICAgICAgIC8vIE9mZnNldCB0aGUgaW5kZXggb2YgdGhlIG5leHQgYnV0dG9uIGZyb20gdGhlIGluZGV4IG9mIHRoZVxuICAgICAgICAgIC8vIGN1cnJlbnRseSBmb2N1c2VkIGJ1dHRvbiwgY2lyY2xpbmcgYmFjayB0byB0aGUgZmlyc3QgYnV0dG9uXG4gICAgICAgICAgLy8gd2hlbiB0aGUgZW5kIG9mIHRoZSBsaXN0IGlzIHJlYWNoZWQuXG4gICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gKGkgKyBmb2N1c2VkSW5kZXgpICUgbjtcblxuICAgICAgICAgIGlmICh0aGlzLiNmb2N1c0J1dHRvbkVsKGJ1dHRvbkVsc1tvZmZzZXRdKSkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2ZvY3VzQnV0dG9uRWwoZWw6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgIGlmIChlbCAmJiAhZWwubWF0Y2hlcyhWRVJUSUNBTF9UQUJTRVRfQlVUVE9OX0RJU0FCTEVEX1NFTEVDVE9SKSkge1xuICAgICAgZWwuZm9jdXMoKTtcbiAgICAgIHJldHVybiB0aGlzLiNlbEhhc0ZvY3VzKGVsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAjZWxIYXNGb2N1cyhlbDogSFRNTEVsZW1lbnQgfCBudWxsIHwgdW5kZWZpbmVkKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhZWwgJiYgZWwgPT09IHRoaXMuI2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVydGljYWwtdGFic2V0LWdyb3VwLW1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvdGFicy9zcmMvbGliL21vZHVsZXMvdmVydGljYWwtdGFic2V0L3ZlcnRpY2FsLXRhYnNldC1ncm91cC1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNreVZlcnRpY2FsVGFic2V0R3JvdXBNZXNzYWdlIHtcbiAgbWVzc2FnZVR5cGU6ICdmb2N1cyc7XG59XG4iXX0=