@theseam/ui-common 0.4.22 → 0.4.24-beta.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.
- package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
- package/datatable/datatable/datatable.component.d.ts +10 -1
- package/datatable/models/action-item-column-position.d.ts +13 -0
- package/datatable/services/columns-manager.service.d.ts +7 -0
- package/datatable/utils/create-action-menu-column.d.ts +1 -1
- package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +2 -2
- package/esm2020/datatable/datatable/datatable.component.mjs +20 -4
- package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +2 -2
- package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +1 -1
- package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +1 -1
- package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
- package/esm2020/datatable/services/columns-manager.service.mjs +27 -2
- package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
- package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +1 -1
- package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +1 -1
- package/esm2020/form-field/form-field-required-indicator.component.mjs +22 -7
- package/esm2020/form-field/input.directive.mjs +19 -16
- package/esm2020/form-field/testing/form-field.harness.mjs +45 -0
- package/esm2020/form-field/testing/index.mjs +2 -1
- package/esm2020/framework/base-layout/base-layout.component.mjs +14 -4
- package/esm2020/framework/base-layout/base-layout.module.mjs +6 -1
- package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +21 -5
- package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
- package/esm2020/framework/base-layout/index.mjs +2 -1
- package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
- package/esm2020/framework/nav/index.mjs +6 -0
- package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
- package/esm2020/framework/nav/nav-utils.mjs +107 -0
- package/esm2020/framework/nav/nav.models.mjs +2 -0
- package/esm2020/framework/nav/nav.module.mjs +67 -0
- package/esm2020/framework/nav/nav.service.mjs +204 -0
- package/esm2020/framework/public-api.mjs +2 -1
- package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +2 -2
- package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +28 -67
- package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +12 -5
- package/esm2020/framework/side-nav/side-nav.component.mjs +116 -38
- package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
- package/esm2020/framework/side-nav/side-nav.module.mjs +9 -39
- package/esm2020/framework/side-nav/side-nav.service.mjs +1 -1
- package/esm2020/framework/top-bar/index.mjs +3 -1
- package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
- package/esm2020/framework/top-bar/top-bar-item.directive.mjs +10 -4
- package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +6 -4
- package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
- package/esm2020/framework/top-bar/top-bar.component.mjs +55 -11
- package/esm2020/framework/top-bar/top-bar.module.mjs +15 -5
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +3 -3
- package/esm2020/layout/layout.service.mjs +12 -2
- package/esm2020/menu/menu-toggle.directive.mjs +7 -2
- package/esm2020/story-helpers/story-modal-container.component.mjs +3 -3
- package/esm2020/tabbed/tabbed.component.mjs +25 -18
- package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +4 -2
- package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
- package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
- package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
- package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
- package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
- package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs +2 -2
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +2 -2
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable.mjs +56 -10
- package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field.mjs +92 -27
- package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-framework.mjs +905 -156
- package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-google-maps.mjs +2 -2
- package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-layout.mjs +11 -2
- package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-menu.mjs +6 -1
- package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-story-helpers.mjs +2 -2
- package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tabbed.mjs +26 -19
- package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-types.mjs +3 -1
- package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs +2 -2
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +2 -2
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable.mjs +56 -10
- package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field.mjs +88 -27
- package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-framework.mjs +907 -156
- package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-google-maps.mjs +2 -2
- package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-layout.mjs +11 -2
- package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-menu.mjs +6 -1
- package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-story-helpers.mjs +2 -2
- package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tabbed.mjs +24 -17
- package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-types.mjs +3 -1
- package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
- package/form-field/form-field-required-indicator.component.d.ts +6 -1
- package/form-field/input.directive.d.ts +9 -15
- package/form-field/testing/form-field.harness.d.ts +14 -0
- package/form-field/testing/index.d.ts +1 -0
- package/framework/base-layout/base-layout.component.d.ts +4 -2
- package/framework/base-layout/base-layout.component.scss +18 -10
- package/framework/base-layout/base-layout.module.d.ts +11 -10
- package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
- package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
- package/framework/base-layout/index.d.ts +1 -0
- package/framework/base-layout/styles/_variables.scss +21 -0
- package/framework/nav/_nav-theme.scss +4 -0
- package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
- package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
- package/framework/nav/index.d.ts +5 -0
- package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
- package/framework/nav/nav-item/nav-item.component.scss +203 -0
- package/framework/nav/nav-utils.d.ts +20 -0
- package/framework/nav/nav.models.d.ts +77 -0
- package/framework/nav/nav.module.d.ts +17 -0
- package/framework/nav/nav.service.d.ts +27 -0
- package/framework/nav/styles/_themes/light/_variables.scss +56 -0
- package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
- package/framework/nav/styles/_utilities.scss +3 -0
- package/framework/nav/styles/_variables.scss +2 -0
- package/framework/public-api.d.ts +1 -0
- package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
- package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
- package/framework/side-nav/side-nav.component.d.ts +13 -1
- package/framework/side-nav/side-nav.component.scss +0 -1
- package/framework/side-nav/side-nav.models.d.ts +7 -1
- package/framework/side-nav/side-nav.module.d.ts +1 -9
- package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
- package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
- package/framework/top-bar/index.d.ts +2 -0
- package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
- package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
- package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
- package/framework/top-bar/top-bar.component.d.ts +25 -3
- package/framework/top-bar/top-bar.component.scss +7 -2
- package/framework/top-bar/top-bar.module.d.ts +10 -8
- package/layout/layout.service.d.ts +9 -1
- package/menu/menu-toggle.directive.d.ts +2 -1
- package/package.json +2 -2
- package/styles/vendor/ngx-datatable/_ngx-datatable.scss +57 -14
- package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +33 -5
- package/tabbed/tabbed.component.d.ts +9 -4
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
|
|
2
|
+
export class TheSeamFormFieldHarness extends ComponentHarness {
|
|
3
|
+
constructor() {
|
|
4
|
+
super(...arguments);
|
|
5
|
+
this._label = this.locatorFor('label');
|
|
6
|
+
// public async getName(): Promise<string | null> {
|
|
7
|
+
// return (await this._input()).getAttribute('name')
|
|
8
|
+
// }
|
|
9
|
+
// public async getValue(): Promise<any> {
|
|
10
|
+
// return (await this._input()).getProperty('value')
|
|
11
|
+
// }
|
|
12
|
+
// public async isDisabled(): Promise<boolean> {
|
|
13
|
+
// return (await this._input()).getProperty('disabled')
|
|
14
|
+
// }
|
|
15
|
+
// public async isRequired(): Promise<boolean> {
|
|
16
|
+
// return (await this._input()).getProperty('required')
|
|
17
|
+
// }
|
|
18
|
+
// public async click(): Promise<void> {
|
|
19
|
+
// return (await this._input()).click()
|
|
20
|
+
// }
|
|
21
|
+
// public async setValue(value: any): Promise<void> {
|
|
22
|
+
// // TODO: Find out why setInputValue() doesn't update the FormControl.
|
|
23
|
+
// // return (await this._input()).setInputValue(value)
|
|
24
|
+
// await (await this._input()).click()
|
|
25
|
+
// await this._input().then(x => x.setInputValue(''))
|
|
26
|
+
// return (await this._input()).sendKeys(value)
|
|
27
|
+
// }
|
|
28
|
+
}
|
|
29
|
+
// private readonly _input = this.locatorFor('input')
|
|
30
|
+
/** Creates a `HarnessPredicate` used to locate a particular `TheSeamFormFieldHarness`. */
|
|
31
|
+
static with(options) {
|
|
32
|
+
return new HarnessPredicate(TheSeamFormFieldHarness, options)
|
|
33
|
+
// .addOption('field name', options.name,
|
|
34
|
+
// (harness, name) => HarnessPredicate.stringMatches(harness.getName(), name))
|
|
35
|
+
.addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
|
|
36
|
+
}
|
|
37
|
+
async getLabel() {
|
|
38
|
+
return (await this._label()).text();
|
|
39
|
+
}
|
|
40
|
+
async clickLabel() {
|
|
41
|
+
await (await this._label()).click();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
TheSeamFormFieldHarness.hostSelector = 'seam-form-field';
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2Zvcm0tZmllbGQvdGVzdGluZy9mb3JtLWZpZWxkLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBUzdGLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxnQkFBZ0I7SUFBN0Q7O1FBR21CLFdBQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBb0JsRCxtREFBbUQ7UUFDbkQsc0RBQXNEO1FBQ3RELElBQUk7UUFFSiwwQ0FBMEM7UUFDMUMsc0RBQXNEO1FBQ3RELElBQUk7UUFFSixnREFBZ0Q7UUFDaEQseURBQXlEO1FBQ3pELElBQUk7UUFFSixnREFBZ0Q7UUFDaEQseURBQXlEO1FBQ3pELElBQUk7UUFFSix3Q0FBd0M7UUFDeEMseUNBQXlDO1FBQ3pDLElBQUk7UUFFSixxREFBcUQ7UUFDckQsMEVBQTBFO1FBQzFFLHlEQUF5RDtRQUN6RCx3Q0FBd0M7UUFDeEMsdURBQXVEO1FBQ3ZELGlEQUFpRDtRQUNqRCxJQUFJO0lBQ04sQ0FBQztJQTlDQyxxREFBcUQ7SUFFckQsMEZBQTBGO0lBQzFGLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBdUM7UUFDakQsT0FBTyxJQUFJLGdCQUFnQixDQUFDLHVCQUF1QixFQUFFLE9BQU8sQ0FBQztZQUN6RCx5Q0FBeUM7WUFDekMsa0ZBQWtGO2FBQ2pGLFNBQVMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFDN0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7SUFDeEYsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRO1FBQ25CLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ3JDLENBQUM7SUFFTSxLQUFLLENBQUMsVUFBVTtRQUNyQixNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUNyQyxDQUFDOztBQXBCTSxvQ0FBWSxHQUFHLGlCQUFpQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUhhcm5lc3NGaWx0ZXJzLCBDb21wb25lbnRIYXJuZXNzLCBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnXG5cbmludGVyZmFjZSBUaGVTZWFtRm9ybUZpZWxkSGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICAvKiogRmlsdGVycyBiYXNlZCBvbiB0aGUgbmFtZSBvZiB0aGUgZmllbGQuICovXG4gIC8vIG5hbWU/OiBzdHJpbmcgfCBSZWdFeHBcblxuICBsYWJlbD86IHN0cmluZ1xufVxuXG5leHBvcnQgY2xhc3MgVGhlU2VhbUZvcm1GaWVsZEhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdzZWFtLWZvcm0tZmllbGQnXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbGFiZWwgPSB0aGlzLmxvY2F0b3JGb3IoJ2xhYmVsJylcbiAgLy8gcHJpdmF0ZSByZWFkb25seSBfaW5wdXQgPSB0aGlzLmxvY2F0b3JGb3IoJ2lucHV0JylcblxuICAvKiogQ3JlYXRlcyBhIGBIYXJuZXNzUHJlZGljYXRlYCB1c2VkIHRvIGxvY2F0ZSBhIHBhcnRpY3VsYXIgYFRoZVNlYW1Gb3JtRmllbGRIYXJuZXNzYC4gKi9cbiAgc3RhdGljIHdpdGgob3B0aW9uczogVGhlU2VhbUZvcm1GaWVsZEhhcm5lc3NGaWx0ZXJzKTogSGFybmVzc1ByZWRpY2F0ZTxUaGVTZWFtRm9ybUZpZWxkSGFybmVzcz4ge1xuICAgIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZShUaGVTZWFtRm9ybUZpZWxkSGFybmVzcywgb3B0aW9ucylcbiAgICAgICAgLy8gLmFkZE9wdGlvbignZmllbGQgbmFtZScsIG9wdGlvbnMubmFtZSxcbiAgICAgICAgLy8gICAgIChoYXJuZXNzLCBuYW1lKSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXROYW1lKCksIG5hbWUpKVxuICAgICAgICAuYWRkT3B0aW9uKCdsYWJlbCcsIG9wdGlvbnMubGFiZWwsXG4gICAgICAgICAgICAoaGFybmVzcywgbGFiZWwpID0+IEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhoYXJuZXNzLmdldExhYmVsKCksIGxhYmVsKSlcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRMYWJlbCgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuX2xhYmVsKCkpLnRleHQoKVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGNsaWNrTGFiZWwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuX2xhYmVsKCkpLmNsaWNrKClcbiAgfVxuXG4gIC8vIHB1YmxpYyBhc3luYyBnZXROYW1lKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAvLyAgIHJldHVybiAoYXdhaXQgdGhpcy5faW5wdXQoKSkuZ2V0QXR0cmlidXRlKCduYW1lJylcbiAgLy8gfVxuXG4gIC8vIHB1YmxpYyBhc3luYyBnZXRWYWx1ZSgpOiBQcm9taXNlPGFueT4ge1xuICAvLyAgIHJldHVybiAoYXdhaXQgdGhpcy5faW5wdXQoKSkuZ2V0UHJvcGVydHkoJ3ZhbHVlJylcbiAgLy8gfVxuXG4gIC8vIHB1YmxpYyBhc3luYyBpc0Rpc2FibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAvLyAgIHJldHVybiAoYXdhaXQgdGhpcy5faW5wdXQoKSkuZ2V0UHJvcGVydHkoJ2Rpc2FibGVkJylcbiAgLy8gfVxuXG4gIC8vIHB1YmxpYyBhc3luYyBpc1JlcXVpcmVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAvLyAgIHJldHVybiAoYXdhaXQgdGhpcy5faW5wdXQoKSkuZ2V0UHJvcGVydHkoJ3JlcXVpcmVkJylcbiAgLy8gfVxuXG4gIC8vIHB1YmxpYyBhc3luYyBjbGljaygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgLy8gICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLmNsaWNrKClcbiAgLy8gfVxuXG4gIC8vIHB1YmxpYyBhc3luYyBzZXRWYWx1ZSh2YWx1ZTogYW55KTogUHJvbWlzZTx2b2lkPiB7XG4gIC8vICAgLy8gVE9ETzogRmluZCBvdXQgd2h5IHNldElucHV0VmFsdWUoKSBkb2Vzbid0IHVwZGF0ZSB0aGUgRm9ybUNvbnRyb2wuXG4gIC8vICAgLy8gcmV0dXJuIChhd2FpdCB0aGlzLl9pbnB1dCgpKS5zZXRJbnB1dFZhbHVlKHZhbHVlKVxuICAvLyAgIGF3YWl0IChhd2FpdCB0aGlzLl9pbnB1dCgpKS5jbGljaygpXG4gIC8vICAgYXdhaXQgdGhpcy5faW5wdXQoKS50aGVuKHggPT4geC5zZXRJbnB1dFZhbHVlKCcnKSlcbiAgLy8gICByZXR1cm4gKGF3YWl0IHRoaXMuX2lucHV0KCkpLnNlbmRLZXlzKHZhbHVlKVxuICAvLyB9XG59XG4iXX0=
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './form-field-required-indicator.harness';
|
|
2
|
-
|
|
2
|
+
export * from './form-field.harness';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZm9ybS1maWVsZC90ZXN0aW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMseUNBQXlDLENBQUE7QUFDdkQsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZm9ybS1maWVsZC1yZXF1aXJlZC1pbmRpY2F0b3IuaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1maWVsZC5oYXJuZXNzJ1xuIl19
|
|
@@ -28,6 +28,7 @@ export class TheSeamBaseLayoutComponent {
|
|
|
28
28
|
this.faAngleDoubleRight = faAngleDoubleRight;
|
|
29
29
|
this.faAngleDoubleLeft = faAngleDoubleLeft;
|
|
30
30
|
this.overlayNav = false;
|
|
31
|
+
this.showSidebar = true;
|
|
31
32
|
this._hasSideBar = new BehaviorSubject(false);
|
|
32
33
|
this._registeredNav = new BehaviorSubject(undefined);
|
|
33
34
|
this.registeredNav$ = this._registeredNav.asObservable();
|
|
@@ -37,12 +38,17 @@ export class TheSeamBaseLayoutComponent {
|
|
|
37
38
|
this.hasSideBar$ = this._hasSideBar.asObservable();
|
|
38
39
|
}
|
|
39
40
|
ngOnInit() {
|
|
41
|
+
if (this.mobileBreakpoint) {
|
|
42
|
+
this._layout.setMobileBreakpoint(this.mobileBreakpoint);
|
|
43
|
+
}
|
|
40
44
|
if (this._topBarTpl) {
|
|
41
45
|
this._topBarPortal = new TemplatePortal(this._topBarTpl, this._viewContainerRef);
|
|
42
46
|
}
|
|
43
47
|
if (this._sideBarTpl) {
|
|
44
48
|
this._sideBarPortal = new TemplatePortal(this._sideBarTpl, this._viewContainerRef);
|
|
45
|
-
this.
|
|
49
|
+
if (this.showSidebar) {
|
|
50
|
+
this._hasSideBar.next(true);
|
|
51
|
+
}
|
|
46
52
|
}
|
|
47
53
|
if (this._contentTpl) {
|
|
48
54
|
this._contentPortal = new TemplatePortal(this._contentTpl, this._viewContainerRef);
|
|
@@ -98,12 +104,16 @@ export class TheSeamBaseLayoutComponent {
|
|
|
98
104
|
}
|
|
99
105
|
}
|
|
100
106
|
TheSeamBaseLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamBaseLayoutComponent, deps: [{ token: i0.ViewContainerRef }, { token: i1.TheSeamLayoutService }], target: i0.ɵɵFactoryTarget.Component });
|
|
101
|
-
TheSeamBaseLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamBaseLayoutComponent, selector: "seam-base-layout", inputs: { overlayNav: "overlayNav" }, providers: [THE_SEAM_BASE_LAYOUT], queries: [{ propertyName: "_topBarTpl", first: true, predicate: BaseLayoutTopBarDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_sideBarTpl", first: true, predicate: BaseLayoutSideBarDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_contentTpl", first: true, predicate: BaseLayoutContentDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_contentHeaderTpl", first: true, predicate: BaseLayoutContentHeaderDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_contentFooterTpl", first: true, predicate: BaseLayoutContentFooterDirective, descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<div class=\"base-layout-side-bar-nav-content-mobile\" *ngIf=\"isMobile$ | async\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n</div>\n\n<div class=\"base-layout-top-bar-container\">\n <ng-template [cdkPortalOutlet]=\"_topBarPortal\"></ng-template>\n</div>\n<div class=\"base-layout-main-container\">\n <div *ngIf=\"hasSideBar$ | async\"\n class=\"base-layout-side-bar-container\">\n <div class=\"base-layout-side-bar-nav-content\" *ngIf=\"!(isMobile$ | async)\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n </div>\n </div>\n <div class=\"base-layout-content-container\">\n <div class=\"base-layout-content-container-header
|
|
107
|
+
TheSeamBaseLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamBaseLayoutComponent, selector: "seam-base-layout", inputs: { overlayNav: "overlayNav", mobileBreakpoint: "mobileBreakpoint", showSidebar: "showSidebar" }, providers: [THE_SEAM_BASE_LAYOUT], queries: [{ propertyName: "_topBarTpl", first: true, predicate: BaseLayoutTopBarDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_sideBarTpl", first: true, predicate: BaseLayoutSideBarDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_contentTpl", first: true, predicate: BaseLayoutContentDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_contentHeaderTpl", first: true, predicate: BaseLayoutContentHeaderDirective, descendants: true, read: TemplateRef, static: true }, { propertyName: "_contentFooterTpl", first: true, predicate: BaseLayoutContentFooterDirective, descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<div class=\"base-layout-side-bar-nav-content-mobile\" *ngIf=\"isMobile$ | async\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n</div>\n\n<div class=\"base-layout-top-bar-container\">\n <ng-template [cdkPortalOutlet]=\"_topBarPortal\"></ng-template>\n</div>\n<div class=\"base-layout-main-container\">\n <div *ngIf=\"hasSideBar$ | async\"\n class=\"base-layout-side-bar-container\">\n <div class=\"base-layout-side-bar-nav-content\" *ngIf=\"!(isMobile$ | async)\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n </div>\n </div>\n <div class=\"base-layout-content-container\">\n <div class=\"base-layout-content-container-header d-flex flex-row\">\n <div class=\"base-layout-content-container-header-left flex-grow-1\">\n <ng-template [cdkPortalOutlet]=\"_contentHeaderPortal\"></ng-template>\n </div>\n <div class=\"base-layout-content-container-header-right d-flex\">\n <ng-container *ngFor=\"let action of registeredActions$ | async; first as isFirst\">\n <div class=\"base-layout-registered-action\">\n <ng-container [ngTemplateOutlet]=\"$any(action)?.template\"></ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n <div class=\"base-layout-content-container-inner\" seamOverlayScrollbar>\n <ng-template [cdkPortalOutlet]=\"_contentPortal\"></ng-template>\n </div>\n <div class=\"base-layout-content-container-footer\">\n <ng-template [cdkPortalOutlet]=\"_contentFooterPortal\"></ng-template>\n </div>\n </div>\n</div>\n", styles: ["seam-base-layout{display:flex;flex-direction:column;height:100%;width:100%}seam-base-layout .base-layout-side-bar-nav-content-mobile{position:absolute;top:0;bottom:0;left:0;z-index:999}seam-base-layout .base-layout-side-bar-container{flex:0 0 auto;display:flex;flex-direction:column;border-top:none;border-right:1px solid #dee2e6;border-bottom:none;border-left:none}seam-base-layout .base-layout-side-bar-container .base-layout-side-bar-nav-content{flex:1 1 0}seam-base-layout .base-layout-main-container{flex:1 1 100%;display:flex;flex-direction:row;transform:translateZ(0)}seam-base-layout .base-layout-top-bar-container{flex:0 0 auto;border-top:none;border-right:none;border-bottom:1px solid #dee2e6;border-left:none}seam-base-layout .base-layout-content-container{flex:1 1 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-content-container .base-layout-content-container-header{flex:0 0 auto;background:none;margin:.25rem;padding:0;border-radius:0;overflow:hidden}seam-base-layout .base-layout-content-container .base-layout-content-container-header-left{background:none;padding:0rem;margin:0;border-radius:0}seam-base-layout .base-layout-content-container .base-layout-content-container-header-right{background:none;padding:0rem;margin:0;border-radius:0}seam-base-layout .base-layout-content-container .base-layout-content-container-inner{flex:1 1 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-footer{flex:0 0 auto}seam-base-layout .btn-baselayout-action{margin:0 0 0 .25rem;color:#212529;background-color:#e9ecef;border-color:#e9ecef;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;border:none;color:#6c757d}seam-base-layout .btn-baselayout-action:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#212529;background-color:#d3d9df;border-color:#cbd3da;box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action.disabled,seam-base-layout .btn-baselayout-action:disabled{color:#212529;background-color:#e9ecef;border-color:#e9ecef}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle{color:#212529;background-color:#d3d9df;border-color:#c4ccd4}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active:focus,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active:focus,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle:focus{box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action:hover{color:#6c757d}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#6c757d}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i4.OverlayScrollbarDirective, selector: "[seamOverlayScrollbar]", inputs: ["seamOverlayScrollbar", "overlayScrollbarEnabled"], exportAs: ["seamOverlayScrollbar"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
102
108
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamBaseLayoutComponent, decorators: [{
|
|
103
109
|
type: Component,
|
|
104
|
-
args: [{ selector: 'seam-base-layout', providers: [THE_SEAM_BASE_LAYOUT], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"base-layout-side-bar-nav-content-mobile\" *ngIf=\"isMobile$ | async\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n</div>\n\n<div class=\"base-layout-top-bar-container\">\n <ng-template [cdkPortalOutlet]=\"_topBarPortal\"></ng-template>\n</div>\n<div class=\"base-layout-main-container\">\n <div *ngIf=\"hasSideBar$ | async\"\n class=\"base-layout-side-bar-container\">\n <div class=\"base-layout-side-bar-nav-content\" *ngIf=\"!(isMobile$ | async)\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n </div>\n </div>\n <div class=\"base-layout-content-container\">\n <div class=\"base-layout-content-container-header
|
|
110
|
+
args: [{ selector: 'seam-base-layout', providers: [THE_SEAM_BASE_LAYOUT], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"base-layout-side-bar-nav-content-mobile\" *ngIf=\"isMobile$ | async\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n</div>\n\n<div class=\"base-layout-top-bar-container\">\n <ng-template [cdkPortalOutlet]=\"_topBarPortal\"></ng-template>\n</div>\n<div class=\"base-layout-main-container\">\n <div *ngIf=\"hasSideBar$ | async\"\n class=\"base-layout-side-bar-container\">\n <div class=\"base-layout-side-bar-nav-content\" *ngIf=\"!(isMobile$ | async)\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n </div>\n </div>\n <div class=\"base-layout-content-container\">\n <div class=\"base-layout-content-container-header d-flex flex-row\">\n <div class=\"base-layout-content-container-header-left flex-grow-1\">\n <ng-template [cdkPortalOutlet]=\"_contentHeaderPortal\"></ng-template>\n </div>\n <div class=\"base-layout-content-container-header-right d-flex\">\n <ng-container *ngFor=\"let action of registeredActions$ | async; first as isFirst\">\n <div class=\"base-layout-registered-action\">\n <ng-container [ngTemplateOutlet]=\"$any(action)?.template\"></ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n <div class=\"base-layout-content-container-inner\" seamOverlayScrollbar>\n <ng-template [cdkPortalOutlet]=\"_contentPortal\"></ng-template>\n </div>\n <div class=\"base-layout-content-container-footer\">\n <ng-template [cdkPortalOutlet]=\"_contentFooterPortal\"></ng-template>\n </div>\n </div>\n</div>\n", styles: ["seam-base-layout{display:flex;flex-direction:column;height:100%;width:100%}seam-base-layout .base-layout-side-bar-nav-content-mobile{position:absolute;top:0;bottom:0;left:0;z-index:999}seam-base-layout .base-layout-side-bar-container{flex:0 0 auto;display:flex;flex-direction:column;border-top:none;border-right:1px solid #dee2e6;border-bottom:none;border-left:none}seam-base-layout .base-layout-side-bar-container .base-layout-side-bar-nav-content{flex:1 1 0}seam-base-layout .base-layout-main-container{flex:1 1 100%;display:flex;flex-direction:row;transform:translateZ(0)}seam-base-layout .base-layout-top-bar-container{flex:0 0 auto;border-top:none;border-right:none;border-bottom:1px solid #dee2e6;border-left:none}seam-base-layout .base-layout-content-container{flex:1 1 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-content-container .base-layout-content-container-header{flex:0 0 auto;background:none;margin:.25rem;padding:0;border-radius:0;overflow:hidden}seam-base-layout .base-layout-content-container .base-layout-content-container-header-left{background:none;padding:0rem;margin:0;border-radius:0}seam-base-layout .base-layout-content-container .base-layout-content-container-header-right{background:none;padding:0rem;margin:0;border-radius:0}seam-base-layout .base-layout-content-container .base-layout-content-container-inner{flex:1 1 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-footer{flex:0 0 auto}seam-base-layout .btn-baselayout-action{margin:0 0 0 .25rem;color:#212529;background-color:#e9ecef;border-color:#e9ecef;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;border:none;color:#6c757d}seam-base-layout .btn-baselayout-action:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#212529;background-color:#d3d9df;border-color:#cbd3da;box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action.disabled,seam-base-layout .btn-baselayout-action:disabled{color:#212529;background-color:#e9ecef;border-color:#e9ecef}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle{color:#212529;background-color:#d3d9df;border-color:#c4ccd4}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active:focus,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active:focus,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle:focus{box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action:hover{color:#6c757d}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#6c757d}\n"] }]
|
|
105
111
|
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i1.TheSeamLayoutService }]; }, propDecorators: { overlayNav: [{
|
|
106
112
|
type: Input
|
|
113
|
+
}], mobileBreakpoint: [{
|
|
114
|
+
type: Input
|
|
115
|
+
}], showSidebar: [{
|
|
116
|
+
type: Input
|
|
107
117
|
}], _topBarTpl: [{
|
|
108
118
|
type: ContentChild,
|
|
109
119
|
args: [BaseLayoutTopBarDirective, { static: true, read: TemplateRef }]
|
|
@@ -120,4 +130,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
120
130
|
type: ContentChild,
|
|
121
131
|
args: [BaseLayoutContentFooterDirective, { static: true, read: TemplateRef }]
|
|
122
132
|
}] } });
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9iYXNlLWxheW91dC9iYXNlLWxheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2Jhc2UtbGF5b3V0L2Jhc2UtbGF5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNwRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxTQUFTLEVBRVQsV0FBVyxFQUVYLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFFdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFPekYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDOUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbURBQW1ELENBQUE7QUFDcEcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbURBQW1ELENBQUE7QUFDcEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNENBQTRDLENBQUE7QUFDdkYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkNBQTZDLENBQUE7QUFDeEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUE7Ozs7OztBQUV0RixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBUTtJQUN2QyxPQUFPLEVBQUUsdUJBQXVCO0lBQ2hDLGlEQUFpRDtJQUNqRCxXQUFXLEVB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QUFJLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFDRSxpQkFBaUI7c0JBQXJHLFlBQVk7dUJBQUMsZ0NBQWdDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGQsXG4gIGZvcndhcmRSZWYsXG4gIElucHV0LFxuICBpc0Rldk1vZGUsXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGZyb20sIGlzT2JzZXJ2YWJsZSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXG5cbmltcG9ydCB7IGZhQW5nbGVEb3VibGVMZWZ0LCBmYUFuZ2xlRG91YmxlUmlnaHQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnXG5cbmltcG9ydCB7IFRoZVNlYW1MYXlvdXRTZXJ2aWNlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2xheW91dCdcblxuaW1wb3J0IHsgQmFzZUxheW91dEFjdGlvbiwgSUJhc2VMYXlvdXRBY3Rpb25CdXR0b24gfSBmcm9tICcuL2Jhc2UtbGF5b3V0LWFjdGlvbidcbmltcG9ydCB7IElUaGVTZWFtQmFzZUxheW91dE5hdiB9IGZyb20gJy4vYmFzZS1sYXlvdXQtbmF2J1xuaW1wb3J0IHsgSVRoZVNlYW1CYXNlTGF5b3V0UmVmIH0gZnJvbSAnLi9iYXNlLWxheW91dC1yZWYnXG5pbXBvcnQgeyBUSEVTRUFNX0JBU0VfTEFZT1VUX1JFRiB9IGZyb20gJy4vYmFzZS1sYXlvdXQtdG9rZW5zJ1xuaW1wb3J0IHsgQmFzZUxheW91dENvbnRlbnRGb290ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC1mb290ZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dENvbnRlbnRIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC1oZWFkZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0U2lkZUJhckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0VG9wQmFyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXRvcC1iYXIuZGlyZWN0aXZlJ1xuXG5leHBvcnQgY29uc3QgVEhFX1NFQU1fQkFTRV9MQVlPVVQ6IGFueSA9IHtcbiAgcHJvdmlkZTogVEhFU0VBTV9CQVNFX0xBWU9VVF9SRUYsXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby11c2UtYmVmb3JlLWRlY2xhcmVcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnQpLFxuICBtdWx0aTogZmFsc2UsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tYmFzZS1sYXlvdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYmFzZS1sYXlvdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9iYXNlLWxheW91dC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFsgVEhFX1NFQU1fQkFTRV9MQVlPVVQgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIElUaGVTZWFtQmFzZUxheW91dFJlZiB7XG5cbiAgZmFBbmdsZURvdWJsZVJpZ2h0ID0gZmFBbmdsZURvdWJsZVJpZ2h0XG4gIGZhQW5nbGVEb3VibGVMZWZ0ID0gZmFBbmdsZURvdWJsZUxlZnRcblxuICBASW5wdXQoKSBvdmVybGF5TmF2ID0gZmFsc2VcblxuICAvLyBUT0RPOiBDb25zaWRlciBtYWtpbmcgdGhlIHRlbXBsYXRlIHF1ZXJpZXMgbm90IGJlIGR5bmFtaWMuIEkgY2FuIHNlZSB0aGlzXG4gIC8vIHBvdGVudGlhbGx5IGNhdXNpbmcgY29uZnVzaW9uIG9yIGlzc3VlcyB3aXRoIHBvdGVudGlhbCBsYXlvdXRzIGJ1aWx0IHdpdGhcbiAgLy8gdGhpcyBjb21wb25lbnQuXG4gIEBDb250ZW50Q2hpbGQoQmFzZUxheW91dFRvcEJhckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIF90b3BCYXJUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbFxuICBAQ29udGVudENoaWxkKEJhc2VMYXlvdXRTaWRlQmFyRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVGVtcGxhdGVSZWYgfSkgX3NpZGVCYXJUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbFxuICBAQ29udGVudENoaWxkKEJhc2VMYXlvdXRDb250ZW50RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVGVtcGxhdGVSZWYgfSkgX2NvbnRlbnRUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbFxuICBAQ29udGVudENoaWxkKEJhc2VMYXlvdXRDb250ZW50SGVhZGVyRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVGVtcGxhdGVSZWYgfSkgX2NvbnRlbnRIZWFkZXJUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbFxuICBAQ29udGVudENoaWxkKEJhc2VMYXlvdXRDb250ZW50Rm9vdGVyRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVGVtcGxhdGVSZWYgfSkgX2NvbnRlbnRGb290ZXJUcGw/OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbFxuXG4gIF90b3BCYXJQb3J0YWw/OiBUZW1wbGF0ZVBvcnRhbFxuICBfc2lkZUJhclBvcnRhbD86IFRlbXBsYXRlUG9ydGFsXG4gIF9jb250ZW50UG9ydGFsPzogVGVtcGxhdGVQb3J0YWxcbiAgX2NvbnRlbnRIZWFkZXJQb3J0YWw/OiBUZW1wbGF0ZVBvcnRhbFxuICBfY29udGVudEZvb3RlclBvcnRhbD86IFRlbXBsYXRlUG9ydGFsXG5cbiAgcHJpdmF0ZSBfaGFzU2lkZUJhciA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpXG5cbiAgcHVibGljIGhhc1NpZGVCYXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG4gIHB1YmxpYyBpc01vYmlsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICBnZXQgcmVnaXN0ZXJlZE5hdigpIHsgcmV0dXJuIHRoaXMuX3JlZ2lzdGVyZWROYXYudmFsdWUgfVxuICBwcml2YXRlIF9yZWdpc3RlcmVkTmF2ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJVGhlU2VhbUJhc2VMYXlvdXROYXYgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZClcbiAgcHVibGljIHJlZ2lzdGVyZWROYXYkID0gdGhpcy5fcmVnaXN0ZXJlZE5hdi5hc09ic2VydmFibGUoKVxuXG4gIGdldCByZWdpc3RlcmVkQWN0aW9ucygpIHsgcmV0dXJuIHRoaXMuX3JlZ2lzdGVyZWRBY3Rpb25zLnZhbHVlIH1cbiAgcHJpdmF0ZSBfcmVnaXN0ZXJlZEFjdGlvbnMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJhc2VMYXlvdXRBY3Rpb25bXT4oW10pXG4gIHB1YmxpYyByZWdpc3RlcmVkQWN0aW9ucyQ6IE9ic2VydmFibGU8QmFzZUxheW91dEFjdGlvbltdPlxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBfbGF5b3V0OiBUaGVTZWFtTGF5b3V0U2VydmljZVxuICApIHtcbiAgICB0aGlzLnJlZ2lzdGVyZWRBY3Rpb25zJCA9IHRoaXMuX3JlZ2lzdGVyZWRBY3Rpb25zLmFzT2JzZXJ2YWJsZSgpXG5cbiAgICB0aGlzLmlzTW9iaWxlJCA9IHRoaXMuX2xheW91dC5pc01vYmlsZSRcbiAgICB0aGlzLmhhc1NpZGVCYXIkID0gdGhpcy5faGFzU2lkZUJhci5hc09ic2VydmFibGUoKVxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuX3RvcEJhclRwbCkge1xuICAgICAgdGhpcy5fdG9wQmFyUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX3RvcEJhclRwbCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZilcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fc2lkZUJhclRwbCkge1xuICAgICAgdGhpcy5fc2lkZUJhclBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl9zaWRlQmFyVHBsLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKVxuICAgICAgdGhpcy5faGFzU2lkZUJhci5uZXh0KHRydWUpXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2NvbnRlbnRUcGwpIHtcbiAgICAgIHRoaXMuX2NvbnRlbnRQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5fY29udGVudFRwbCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZilcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29udGVudEhlYWRlclRwbCkge1xuICAgICAgdGhpcy5fY29udGVudEhlYWRlclBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl9jb250ZW50SGVhZGVyVHBsLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKVxuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb250ZW50Rm9vdGVyVHBsKSB7XG4gICAgICB0aGlzLl9jb250ZW50Rm9vdGVyUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX2NvbnRlbnRGb290ZXJUcGwsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyTmF2KG5hdjogSVRoZVNlYW1CYXNlTGF5b3V0TmF2KTogdm9pZCB7XG4gICAgLy8gVE9ETzogQWxsb3cgbXVsdGlwbGUgcmVnaXN0ZXJlZCBuYXZzXG4gICAgLy8gaWYgKHRoaXMucmVnaXN0ZXJlZE5hdikge1xuICAgIC8vICAgdGhyb3cgbmV3IEVycm9yKCdbVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnRdIEEgbmF2IGlzIGFscmVhZHkgcmVnaXN0ZXJlZC4nKVxuICAgIC8vIH1cbiAgICAvLyBjb25zb2xlLmxvZygncmVnaXN0ZXIgbmF2JywgbmF2KVxuICAgIHRoaXMuX3JlZ2lzdGVyZWROYXYubmV4dChuYXYpXG4gIH1cblxuICBwdWJsaWMgdW5yZWdpc3Rlck5hdihuYXY6IElUaGVTZWFtQmFzZUxheW91dE5hdik6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZ2lzdGVyZWROYXYgPT09IG5hdikge1xuICAgICAgdGhpcy5fcmVnaXN0ZXJlZE5hdi5uZXh0KHVuZGVmaW5lZClcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJBY3Rpb24oYWN0aW9uOiBCYXNlTGF5b3V0QWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aW9ucyA9IHRoaXMuX3JlZ2lzdGVyZWRBY3Rpb25zLnZhbHVlXG4gICAgaWYgKGFjdGlvbnMuZmluZEluZGV4KGEgPT4gYS5uYW1lID09PSBhY3Rpb24ubmFtZSkgIT09IC0xKSB7XG4gICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWNvbnNvbGVcbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgIGBbVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnRdIHJlZ2lzdGVyQWN0aW9uKCk6IEFjdGlvbiAke2FjdGlvbi5uYW1lfSBub3QgYCArXG4gICAgICAgICAgJ3JlZ2lzdGVyZWQsIGJlY2F1c2UgYW5vdGhlciBhY3Rpb24gYnkgdGhhdCBuYW1lIGlzIGFscmVhZHkgcmVnaXN0ZXJlZC4nXG4gICAgICAgIClcbiAgICAgIH1cbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBhY3Rpb25zLnB1c2goYWN0aW9uKVxuICB9XG5cbiAgcHVibGljIHVucmVnaXN0ZXJBY3Rpb24oYWN0aW9uOiBCYXNlTGF5b3V0QWN0aW9uIHwgc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aW9uTmFtZSA9IHR5cGVvZiBhY3Rpb24gPT09ICdzdHJpbmcnID8gYWN0aW9uIDogYWN0aW9uLm5hbWVcbiAgICBjb25zdCBhY3Rpb25zID0gdGhpcy5fcmVnaXN0ZXJlZEFjdGlvbnMudmFsdWVcbiAgICB0aGlzLl9yZWdpc3RlcmVkQWN0aW9ucy5uZXh0KGFjdGlvbnMuZmlsdGVyKGYgPT4gZi5uYW1lICE9PSBhY3Rpb25OYW1lKSlcbiAgfVxuXG4gIHB1YmxpYyBpc0FjdGlvblJlZ2lzdGVyZWQoYWN0aW9uTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgYWN0aW9ucyA9IHRoaXMuX3JlZ2lzdGVyZWRBY3Rpb25zLnZhbHVlXG4gICAgY29uc3QgYWN0aW9uID0gYWN0aW9ucy5maW5kKGYgPT4gZi5uYW1lID09PSBhY3Rpb25OYW1lKVxuICAgIHJldHVybiAhIWFjdGlvblxuICB9XG5cbiAgX2hhbmRsZUJ1dHRvbkFjdGlvbihhY3Rpb246IElCYXNlTGF5b3V0QWN0aW9uQnV0dG9uKTogdm9pZCB7XG4gICAgdGhpcy5fZXhlY0J1dHRvbkFjdGlvbihhY3Rpb24pLnN1YnNjcmliZSgpXG4gIH1cblxuICBfZXhlY0J1dHRvbkFjdGlvbihhY3Rpb246IElCYXNlTGF5b3V0QWN0aW9uQnV0dG9uKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgY29uc3QgZm5SZXMgPSBhY3Rpb24uZXhlYygpXG4gICAgcmV0dXJuIGlzT2JzZXJ2YWJsZShmblJlcykgPyBmblJlcyA6IGZyb20oUHJvbWlzZS5yZXNvbHZlKGZuUmVzKSlcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtc2lkZS1iYXItbmF2LWNvbnRlbnQtbW9iaWxlXCIgKm5nSWY9XCJpc01vYmlsZSQgfCBhc3luY1wiPlxuICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfc2lkZUJhclBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LXRvcC1iYXItY29udGFpbmVyXCI+XG4gIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl90b3BCYXJQb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtbWFpbi1jb250YWluZXJcIj5cbiAgPGRpdiAqbmdJZj1cImhhc1NpZGVCYXIkIHwgYXN5bmNcIlxuICAgIGNsYXNzPVwiYmFzZS1sYXlvdXQtc2lkZS1iYXItY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LXNpZGUtYmFyLW5hdi1jb250ZW50XCIgKm5nSWY9XCIhKGlzTW9iaWxlJCB8IGFzeW5jKVwiPlxuICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX3NpZGVCYXJQb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyLWhlYWRlclwiPlxuICAgICAgPCEtLSA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfY29udGVudEhlYWRlclBvcnRhbFwiPjwvbmctdGVtcGxhdGU+IC0tPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX2NvbnRlbnRIZWFkZXJQb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiByZWdpc3RlcmVkQWN0aW9ucyQgfCBhc3luYzsgZmlyc3QgYXMgaXNGaXJzdFwiPlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KGFjdGlvbik/LnRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuXG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyLWlubmVyXCIgc2VhbU92ZXJsYXlTY3JvbGxiYXI+XG4gICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfY29udGVudFBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyLWZvb3RlclwiPlxuICAgICAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX2NvbnRlbnRGb290ZXJQb3J0YWxcIj48L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
133
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9iYXNlLWxheW91dC9iYXNlLWxheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2Jhc2UtbGF5b3V0L2Jhc2UtbGF5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNwRCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxTQUFTLEVBRVQsV0FBVyxFQUVYLGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFFdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUE7QUFPekYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDOUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbURBQW1ELENBQUE7QUFDcEcsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sbURBQW1ELENBQUE7QUFDcEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNENBQTRDLENBQUE7QUFDdkYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkNBQTZDLENBQUE7QUFDeEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNENBQTRDLENBQUE7Ozs7OztBQUV0RixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBUTtJQUN2QyxPQUFPLEVBQUUsdUJBQXVCO0lBQ2hDLGlEQUFpRDtJQUNqRCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO0lBQ3pELEtBQUssRUFBRSxLQUFLO0NBQ2IsQ0FBQTtBQVVELE1BQU0sT0FBTywwQkFBMEI7SUErQnJDLElBQUksYUFBYSxLQUFLLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUEsQ0FBQyxDQUFDO0lBSXhELElBQUksaUJBQWlCLEtBQUssT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUloRSxZQUNVLGlCQUFtQyxFQUNuQyxPQUE2QjtRQUQ3QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBdkN2Qyx1QkFBa0IsR0FBRyxrQkFBa0IsQ0FBQTtRQUN2QyxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQTtRQUU1QixlQUFVLEdBQUcsS0FBSyxDQUFBO1FBSWxCLGdCQUFXLEdBQXdCLElBQUksQ0FBQTtRQWlCeEMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQTtRQU1qRCxtQkFBYyxHQUFHLElBQUksZUFBZSxDQUFvQyxTQUFTLENBQUMsQ0FBQTtRQUNuRixtQkFBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUE7UUFHbEQsdUJBQWtCLEdBQUcsSUFBSSxlQUFlLENBQXFCLEVBQUUsQ0FBQyxDQUFBO1FBT3RFLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUE7UUFFaEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQTtRQUN2QyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLENBQUE7SUFDcEQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QixJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1NBQ3hEO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtTQUNqRjtRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7WUFDbEYsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO2dCQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTthQUM1QjtTQUNGO1FBRUQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtTQUNuRjtRQUVELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7U0FDL0Y7UUFFRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1NBQy9GO0lBQ0gsQ0FBQztJQUVNLFdBQVcsQ0FBQyxHQUEwQjtRQUMzQyx1Q0FBdUM7UUFDdkMsNEJBQTRCO1FBQzVCLGlGQUFpRjtRQUNqRixJQUFJO1FBQ0osbUNBQW1DO1FBQ25DLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFFTSxhQUFhLENBQUMsR0FBMEI7UUFDN0MsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLEdBQUcsRUFBRTtZQUM5QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtTQUNwQztJQUNILENBQUM7SUFFTSxjQUFjLENBQUMsTUFBd0I7UUFDNUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQTtRQUM3QyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6RCxJQUFJLFNBQVMsRUFBRSxFQUFFO2dCQUNmLHNDQUFzQztnQkFDdEMsT0FBTyxDQUFDLElBQUksQ0FDVix5REFBeUQsTUFBTSxDQUFDLElBQUksT0FBTztvQkFDM0Usd0VBQXdFLENBQ3pFLENBQUE7YUFDRjtZQUNELE9BQU07U0FDUDtRQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDdEIsQ0FBQztJQUVNLGdCQUFnQixDQUFDLE1BQWlDO1FBQ3ZELE1BQU0sVUFBVSxHQUFHLE9BQU8sTUFBTSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFBO1FBQ3BFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUE7UUFDN0MsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFBO0lBQzFFLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxVQUFrQjtRQUMxQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFBO1FBQzdDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFBO1FBQ3ZELE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQTtJQUNqQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBK0I7UUFDakQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBQzVDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUErQjtRQUMvQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDM0IsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUNuRSxDQUFDOzt1SEEvSFUsMEJBQTBCOzJHQUExQiwwQkFBMEIsbUpBSjFCLENBQUUsb0JBQW9CLENBQUUsa0VBa0JyQix5QkFBeUIsMkJBQXdCLFdBQVcseUVBQzVELDBCQUEwQiwyQkFBd0IsV0FBVyx5RUFDN0QsMEJBQTBCLDJCQUF3QixXQUFXLCtFQUM3RCxnQ0FBZ0MsMkJBQXdCLFdBQVcsK0VBQ25FLGdDQUFnQywyQkFBd0IsV0FBVywyQ0M5RG5GLCtqREFtQ0E7MkZEU2EsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNFLGtCQUFrQixhQUdqQixDQUFFLG9CQUFvQixDQUFFLG1CQUNsQix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzBJQU81QixVQUFVO3NCQUFsQixLQUFLO2dCQUVHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUt3RSxVQUFVO3NCQUF2RixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUNHLFdBQVc7c0JBQXpGLFlBQVk7dUJBQUMsMEJBQTBCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBQ0UsV0FBVztzQkFBekYsWUFBWTt1QkFBQywwQkFBMEIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFDUSxpQkFBaUI7c0JBQXJHLFlBQVk7dUJBQUMsZ0NBQWdDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBQ0UsaUJBQWlCO3NCQUFyRyxZQUFZO3VCQUFDLGdDQUFnQyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJ1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgaXNEZXZNb2RlLFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3Q29udGFpbmVyUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmcm9tLCBpc09ic2VydmFibGUsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuXG5pbXBvcnQgeyBmYUFuZ2xlRG91YmxlTGVmdCwgZmFBbmdsZURvdWJsZVJpZ2h0IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJ1xuXG5pbXBvcnQgeyBNZWRpYVF1ZXJ5QWxpYXNlcywgVGhlU2VhbUxheW91dFNlcnZpY2UgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vbGF5b3V0J1xuXG5pbXBvcnQgeyBCYXNlTGF5b3V0QWN0aW9uLCBJQmFzZUxheW91dEFjdGlvbkJ1dHRvbiB9IGZyb20gJy4vYmFzZS1sYXlvdXQtYWN0aW9uJ1xuaW1wb3J0IHsgSVRoZVNlYW1CYXNlTGF5b3V0TmF2IH0gZnJvbSAnLi9iYXNlLWxheW91dC1uYXYnXG5pbXBvcnQgeyBJVGhlU2VhbUJhc2VMYXlvdXRSZWYgfSBmcm9tICcuL2Jhc2UtbGF5b3V0LXJlZidcbmltcG9ydCB7IFRIRVNFQU1fQkFTRV9MQVlPVVRfUkVGIH0gZnJvbSAnLi9iYXNlLWxheW91dC10b2tlbnMnXG5pbXBvcnQgeyBCYXNlTGF5b3V0Q29udGVudEZvb3RlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1jb250ZW50LWZvb3Rlci5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0Q29udGVudEhlYWRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1jb250ZW50LWhlYWRlci5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0Q29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1jb250ZW50LmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRTaWRlQmFyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXNpZGUtYmFyLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRUb3BCYXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtdG9wLWJhci5kaXJlY3RpdmUnXG5cbmV4cG9ydCBjb25zdCBUSEVfU0VBTV9CQVNFX0xBWU9VVDogYW55ID0ge1xuICBwcm92aWRlOiBUSEVTRUFNX0JBU0VfTEFZT1VUX1JFRixcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLXVzZS1iZWZvcmUtZGVjbGFyZVxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaGVTZWFtQmFzZUxheW91dENvbXBvbmVudCksXG4gIG11bHRpOiBmYWxzZSxcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VhbS1iYXNlLWxheW91dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9iYXNlLWxheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Jhc2UtbGF5b3V0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogWyBUSEVfU0VBTV9CQVNFX0xBWU9VVCBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtQmFzZUxheW91dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgSVRoZVNlYW1CYXNlTGF5b3V0UmVmIHtcblxuICBmYUFuZ2xlRG91YmxlUmlnaHQgPSBmYUFuZ2xlRG91YmxlUmlnaHRcbiAgZmFBbmdsZURvdWJsZUxlZnQgPSBmYUFuZ2xlRG91YmxlTGVmdFxuXG4gIEBJbnB1dCgpIG92ZXJsYXlOYXYgPSBmYWxzZVxuXG4gIEBJbnB1dCgpIG1vYmlsZUJyZWFrcG9pbnQ6IE1lZGlhUXVlcnlBbGlhc2VzIHwgdW5kZWZpbmVkXG5cbiAgQElucHV0KCkgc2hvd1NpZGViYXI6IGJvb2xlYW4gfCB1bmRlZmluZWQgPSB0cnVlXG5cbiAgLy8gVE9ETzogQ29uc2lkZXIgbWFraW5nIHRoZSB0ZW1wbGF0ZSBxdWVyaWVzIG5vdCBiZSBkeW5hbWljLiBJIGNhbiBzZWUgdGhpc1xuICAvLyBwb3RlbnRpYWxseSBjYXVzaW5nIGNvbmZ1c2lvbiBvciBpc3N1ZXMgd2l0aCBwb3RlbnRpYWwgbGF5b3V0cyBidWlsdCB3aXRoXG4gIC8vIHRoaXMgY29tcG9uZW50LlxuICBAQ29udGVudENoaWxkKEJhc2VMYXlvdXRUb3BCYXJEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KSBfdG9wQmFyVHBsPzogVGVtcGxhdGVSZWY8YW55PiB8IG51bGxcbiAgQENvbnRlbnRDaGlsZChCYXNlTGF5b3V0U2lkZUJhckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIF9zaWRlQmFyVHBsPzogVGVtcGxhdGVSZWY8YW55PiB8IG51bGxcbiAgQENvbnRlbnRDaGlsZChCYXNlTGF5b3V0Q29udGVudERpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIF9jb250ZW50VHBsPzogVGVtcGxhdGVSZWY8YW55PiB8IG51bGxcbiAgQENvbnRlbnRDaGlsZChCYXNlTGF5b3V0Q29udGVudEhlYWRlckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIF9jb250ZW50SGVhZGVyVHBsPzogVGVtcGxhdGVSZWY8YW55PiB8IG51bGxcbiAgQENvbnRlbnRDaGlsZChCYXNlTGF5b3V0Q29udGVudEZvb3RlckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFRlbXBsYXRlUmVmIH0pIF9jb250ZW50Rm9vdGVyVHBsPzogVGVtcGxhdGVSZWY8YW55PiB8IG51bGxcblxuICBfdG9wQmFyUG9ydGFsPzogVGVtcGxhdGVQb3J0YWxcbiAgX3NpZGVCYXJQb3J0YWw/OiBUZW1wbGF0ZVBvcnRhbFxuICBfY29udGVudFBvcnRhbD86IFRlbXBsYXRlUG9ydGFsXG4gIF9jb250ZW50SGVhZGVyUG9ydGFsPzogVGVtcGxhdGVQb3J0YWxcbiAgX2NvbnRlbnRGb290ZXJQb3J0YWw/OiBUZW1wbGF0ZVBvcnRhbFxuXG4gIHByaXZhdGUgX2hhc1NpZGVCYXIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuXG4gIHB1YmxpYyBoYXNTaWRlQmFyJDogT2JzZXJ2YWJsZTxib29sZWFuPlxuICBwdWJsaWMgaXNNb2JpbGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+XG5cbiAgZ2V0IHJlZ2lzdGVyZWROYXYoKSB7IHJldHVybiB0aGlzLl9yZWdpc3RlcmVkTmF2LnZhbHVlIH1cbiAgcHJpdmF0ZSBfcmVnaXN0ZXJlZE5hdiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SVRoZVNlYW1CYXNlTGF5b3V0TmF2IHwgdW5kZWZpbmVkPih1bmRlZmluZWQpXG4gIHB1YmxpYyByZWdpc3RlcmVkTmF2JCA9IHRoaXMuX3JlZ2lzdGVyZWROYXYuYXNPYnNlcnZhYmxlKClcblxuICBnZXQgcmVnaXN0ZXJlZEFjdGlvbnMoKSB7IHJldHVybiB0aGlzLl9yZWdpc3RlcmVkQWN0aW9ucy52YWx1ZSB9XG4gIHByaXZhdGUgX3JlZ2lzdGVyZWRBY3Rpb25zID0gbmV3IEJlaGF2aW9yU3ViamVjdDxCYXNlTGF5b3V0QWN0aW9uW10+KFtdKVxuICBwdWJsaWMgcmVnaXN0ZXJlZEFjdGlvbnMkOiBPYnNlcnZhYmxlPEJhc2VMYXlvdXRBY3Rpb25bXT5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgX2xheW91dDogVGhlU2VhbUxheW91dFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5yZWdpc3RlcmVkQWN0aW9ucyQgPSB0aGlzLl9yZWdpc3RlcmVkQWN0aW9ucy5hc09ic2VydmFibGUoKVxuXG4gICAgdGhpcy5pc01vYmlsZSQgPSB0aGlzLl9sYXlvdXQuaXNNb2JpbGUkXG4gICAgdGhpcy5oYXNTaWRlQmFyJCA9IHRoaXMuX2hhc1NpZGVCYXIuYXNPYnNlcnZhYmxlKClcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLm1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIHRoaXMuX2xheW91dC5zZXRNb2JpbGVCcmVha3BvaW50KHRoaXMubW9iaWxlQnJlYWtwb2ludClcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fdG9wQmFyVHBsKSB7XG4gICAgICB0aGlzLl90b3BCYXJQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5fdG9wQmFyVHBsLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKVxuICAgIH1cblxuICAgIGlmICh0aGlzLl9zaWRlQmFyVHBsKSB7XG4gICAgICB0aGlzLl9zaWRlQmFyUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX3NpZGVCYXJUcGwsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpXG4gICAgICBpZiAodGhpcy5zaG93U2lkZWJhcikge1xuICAgICAgICB0aGlzLl9oYXNTaWRlQmFyLm5leHQodHJ1ZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29udGVudFRwbCkge1xuICAgICAgdGhpcy5fY29udGVudFBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl9jb250ZW50VHBsLCB0aGlzLl92aWV3Q29udGFpbmVyUmVmKVxuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb250ZW50SGVhZGVyVHBsKSB7XG4gICAgICB0aGlzLl9jb250ZW50SGVhZGVyUG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKHRoaXMuX2NvbnRlbnRIZWFkZXJUcGwsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2NvbnRlbnRGb290ZXJUcGwpIHtcbiAgICAgIHRoaXMuX2NvbnRlbnRGb290ZXJQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5fY29udGVudEZvb3RlclRwbCwgdGhpcy5fdmlld0NvbnRhaW5lclJlZilcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJOYXYobmF2OiBJVGhlU2VhbUJhc2VMYXlvdXROYXYpOiB2b2lkIHtcbiAgICAvLyBUT0RPOiBBbGxvdyBtdWx0aXBsZSByZWdpc3RlcmVkIG5hdnNcbiAgICAvLyBpZiAodGhpcy5yZWdpc3RlcmVkTmF2KSB7XG4gICAgLy8gICB0aHJvdyBuZXcgRXJyb3IoJ1tUaGVTZWFtQmFzZUxheW91dENvbXBvbmVudF0gQSBuYXYgaXMgYWxyZWFkeSByZWdpc3RlcmVkLicpXG4gICAgLy8gfVxuICAgIC8vIGNvbnNvbGUubG9nKCdyZWdpc3RlciBuYXYnLCBuYXYpXG4gICAgdGhpcy5fcmVnaXN0ZXJlZE5hdi5uZXh0KG5hdilcbiAgfVxuXG4gIHB1YmxpYyB1bnJlZ2lzdGVyTmF2KG5hdjogSVRoZVNlYW1CYXNlTGF5b3V0TmF2KTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVnaXN0ZXJlZE5hdiA9PT0gbmF2KSB7XG4gICAgICB0aGlzLl9yZWdpc3RlcmVkTmF2Lm5leHQodW5kZWZpbmVkKVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZWdpc3RlckFjdGlvbihhY3Rpb246IEJhc2VMYXlvdXRBY3Rpb24pOiB2b2lkIHtcbiAgICBjb25zdCBhY3Rpb25zID0gdGhpcy5fcmVnaXN0ZXJlZEFjdGlvbnMudmFsdWVcbiAgICBpZiAoYWN0aW9ucy5maW5kSW5kZXgoYSA9PiBhLm5hbWUgPT09IGFjdGlvbi5uYW1lKSAhPT0gLTEpIHtcbiAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgYFtUaGVTZWFtQmFzZUxheW91dENvbXBvbmVudF0gcmVnaXN0ZXJBY3Rpb24oKTogQWN0aW9uICR7YWN0aW9uLm5hbWV9IG5vdCBgICtcbiAgICAgICAgICAncmVnaXN0ZXJlZCwgYmVjYXVzZSBhbm90aGVyIGFjdGlvbiBieSB0aGF0IG5hbWUgaXMgYWxyZWFkeSByZWdpc3RlcmVkLidcbiAgICAgICAgKVxuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGFjdGlvbnMucHVzaChhY3Rpb24pXG4gIH1cblxuICBwdWJsaWMgdW5yZWdpc3RlckFjdGlvbihhY3Rpb246IEJhc2VMYXlvdXRBY3Rpb24gfCBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBhY3Rpb25OYW1lID0gdHlwZW9mIGFjdGlvbiA9PT0gJ3N0cmluZycgPyBhY3Rpb24gOiBhY3Rpb24ubmFtZVxuICAgIGNvbnN0IGFjdGlvbnMgPSB0aGlzLl9yZWdpc3RlcmVkQWN0aW9ucy52YWx1ZVxuICAgIHRoaXMuX3JlZ2lzdGVyZWRBY3Rpb25zLm5leHQoYWN0aW9ucy5maWx0ZXIoZiA9PiBmLm5hbWUgIT09IGFjdGlvbk5hbWUpKVxuICB9XG5cbiAgcHVibGljIGlzQWN0aW9uUmVnaXN0ZXJlZChhY3Rpb25OYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBjb25zdCBhY3Rpb25zID0gdGhpcy5fcmVnaXN0ZXJlZEFjdGlvbnMudmFsdWVcbiAgICBjb25zdCBhY3Rpb24gPSBhY3Rpb25zLmZpbmQoZiA9PiBmLm5hbWUgPT09IGFjdGlvbk5hbWUpXG4gICAgcmV0dXJuICEhYWN0aW9uXG4gIH1cblxuICBfaGFuZGxlQnV0dG9uQWN0aW9uKGFjdGlvbjogSUJhc2VMYXlvdXRBY3Rpb25CdXR0b24pOiB2b2lkIHtcbiAgICB0aGlzLl9leGVjQnV0dG9uQWN0aW9uKGFjdGlvbikuc3Vic2NyaWJlKClcbiAgfVxuXG4gIF9leGVjQnV0dG9uQWN0aW9uKGFjdGlvbjogSUJhc2VMYXlvdXRBY3Rpb25CdXR0b24pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICBjb25zdCBmblJlcyA9IGFjdGlvbi5leGVjKClcbiAgICByZXR1cm4gaXNPYnNlcnZhYmxlKGZuUmVzKSA/IGZuUmVzIDogZnJvbShQcm9taXNlLnJlc29sdmUoZm5SZXMpKVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJiYXNlLWxheW91dC1zaWRlLWJhci1uYXYtY29udGVudC1tb2JpbGVcIiAqbmdJZj1cImlzTW9iaWxlJCB8IGFzeW5jXCI+XG4gIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl9zaWRlQmFyUG9ydGFsXCI+PC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuXG48ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtdG9wLWJhci1jb250YWluZXJcIj5cbiAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX3RvcEJhclBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJiYXNlLWxheW91dC1tYWluLWNvbnRhaW5lclwiPlxuICA8ZGl2ICpuZ0lmPVwiaGFzU2lkZUJhciQgfCBhc3luY1wiXG4gICAgY2xhc3M9XCJiYXNlLWxheW91dC1zaWRlLWJhci1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtc2lkZS1iYXItbmF2LWNvbnRlbnRcIiAqbmdJZj1cIiEoaXNNb2JpbGUkIHwgYXN5bmMpXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfc2lkZUJhclBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtY29udGVudC1jb250YWluZXJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtY29udGVudC1jb250YWluZXItaGVhZGVyIGQtZmxleCBmbGV4LXJvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyLWhlYWRlci1sZWZ0IGZsZXgtZ3Jvdy0xXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl9jb250ZW50SGVhZGVyUG9ydGFsXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyLWhlYWRlci1yaWdodCBkLWZsZXhcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIHJlZ2lzdGVyZWRBY3Rpb25zJCB8IGFzeW5jOyBmaXJzdCBhcyBpc0ZpcnN0XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImJhc2UtbGF5b3V0LXJlZ2lzdGVyZWQtYWN0aW9uXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIiRhbnkoYWN0aW9uKT8udGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtY29udGVudC1jb250YWluZXItaW5uZXJcIiBzZWFtT3ZlcmxheVNjcm9sbGJhcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl9jb250ZW50UG9ydGFsXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYmFzZS1sYXlvdXQtY29udGVudC1jb250YWluZXItZm9vdGVyXCI+XG4gICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfY29udGVudEZvb3RlclBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -10,6 +10,7 @@ import { BaseLayoutContentHeaderDirective } from './directives/base-layout-conte
|
|
|
10
10
|
import { BaseLayoutContentDirective } from './directives/base-layout-content.directive';
|
|
11
11
|
import { BaseLayoutNavToggleDirective } from './directives/base-layout-nav-toggle.directive';
|
|
12
12
|
import { BaseLayoutSideBarFooterDirective } from './directives/base-layout-side-bar-footer.directive';
|
|
13
|
+
import { BaseLayoutSideBarHeaderDirective } from './directives/base-layout-side-bar-header.directive';
|
|
13
14
|
import { BaseLayoutSideBarDirective } from './directives/base-layout-side-bar.directive';
|
|
14
15
|
import { BaseLayoutTopBarDirective } from './directives/base-layout-top-bar.directive';
|
|
15
16
|
import * as i0 from "@angular/core";
|
|
@@ -20,6 +21,7 @@ TheSeamBaseLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
|
|
|
20
21
|
BaseLayoutContentDirective,
|
|
21
22
|
BaseLayoutSideBarDirective,
|
|
22
23
|
BaseLayoutSideBarFooterDirective,
|
|
24
|
+
BaseLayoutSideBarHeaderDirective,
|
|
23
25
|
BaseLayoutTopBarDirective,
|
|
24
26
|
BaseLayoutNavToggleDirective,
|
|
25
27
|
BaseLayoutContentHeaderDirective,
|
|
@@ -31,6 +33,7 @@ TheSeamBaseLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
|
|
|
31
33
|
BaseLayoutContentDirective,
|
|
32
34
|
BaseLayoutSideBarDirective,
|
|
33
35
|
BaseLayoutSideBarFooterDirective,
|
|
36
|
+
BaseLayoutSideBarHeaderDirective,
|
|
34
37
|
BaseLayoutTopBarDirective,
|
|
35
38
|
BaseLayoutNavToggleDirective,
|
|
36
39
|
BaseLayoutContentHeaderDirective,
|
|
@@ -48,6 +51,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
48
51
|
BaseLayoutContentDirective,
|
|
49
52
|
BaseLayoutSideBarDirective,
|
|
50
53
|
BaseLayoutSideBarFooterDirective,
|
|
54
|
+
BaseLayoutSideBarHeaderDirective,
|
|
51
55
|
BaseLayoutTopBarDirective,
|
|
52
56
|
BaseLayoutNavToggleDirective,
|
|
53
57
|
BaseLayoutContentHeaderDirective,
|
|
@@ -65,6 +69,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
65
69
|
BaseLayoutContentDirective,
|
|
66
70
|
BaseLayoutSideBarDirective,
|
|
67
71
|
BaseLayoutSideBarFooterDirective,
|
|
72
|
+
BaseLayoutSideBarHeaderDirective,
|
|
68
73
|
BaseLayoutTopBarDirective,
|
|
69
74
|
BaseLayoutNavToggleDirective,
|
|
70
75
|
BaseLayoutContentHeaderDirective,
|
|
@@ -72,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
72
77
|
]
|
|
73
78
|
}]
|
|
74
79
|
}] });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9iYXNlLWxheW91dC9iYXNlLWxheW91dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXhDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFBO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQzNELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBRXJFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQ3BFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFBO0FBQ3BHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFBO0FBQ3ZGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFBO0FBQzVGLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG9EQUFvRCxDQUFBO0FBQ3JHLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLG9EQUFvRCxDQUFBO0FBQ3JHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFBO0FBQ3hGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFBOztBQWlDdEYsTUFBTSxPQUFPLHVCQUF1Qjs7b0hBQXZCLHVCQUF1QjtxSEFBdkIsdUJBQXVCLGlCQTdCaEMsMEJBQTBCO1FBQzFCLDBCQUEwQjtRQUMxQiwwQkFBMEI7UUFDMUIsZ0NBQWdDO1FBQ2hDLGdDQUFnQztRQUNoQyx5QkFBeUI7UUFDekIsNEJBQTRCO1FBQzVCLGdDQUFnQztRQUNoQyxnQ0FBZ0MsYUFHaEMsWUFBWTtRQUNaLFlBQVk7UUFDWixzQkFBc0I7UUFDdEIsaUJBQWlCO1FBQ2pCLG9CQUFvQixhQUdwQiwwQkFBMEI7UUFDMUIsMEJBQTBCO1FBQzFCLDBCQUEwQjtRQUMxQixnQ0FBZ0M7UUFDaEMsZ0NBQWdDO1FBQ2hDLHlCQUF5QjtRQUN6Qiw0QkFBNEI7UUFDNUIsZ0NBQWdDO1FBQ2hDLGdDQUFnQztxSEFHdkIsdUJBQXVCLFlBbEJoQyxZQUFZO1FBQ1osWUFBWTtRQUNaLHNCQUFzQjtRQUN0QixpQkFBaUI7UUFDakIsb0JBQW9COzJGQWNYLHVCQUF1QjtrQkEvQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDBCQUEwQjt3QkFDMUIsMEJBQTBCO3dCQUMxQiwwQkFBMEI7d0JBQzFCLGdDQUFnQzt3QkFDaEMsZ0NBQWdDO3dCQUNoQyx5QkFBeUI7d0JBQ3pCLDRCQUE0Qjt3QkFDNUIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7cUJBQ2pDO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osc0JBQXNCO3dCQUN0QixpQkFBaUI7d0JBQ2pCLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDBCQUEwQjt3QkFDMUIsMEJBQTBCO3dCQUMxQiwwQkFBMEI7d0JBQzFCLGdDQUFnQzt3QkFDaEMsZ0NBQWdDO3dCQUNoQyx5QkFBeUI7d0JBQ3pCLDRCQUE0Qjt3QkFDNUIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7cUJBQ2pDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUG9ydGFsTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCdcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgVGhlU2VhbUJ1dHRvbnNNb2R1bGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vYnV0dG9ucydcbmltcG9ydCB7IFRoZVNlYW1JY29uTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2ljb24nXG5pbXBvcnQgeyBUaGVTZWFtU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL3Njcm9sbGJhcidcblxuaW1wb3J0IHsgVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UtbGF5b3V0LmNvbXBvbmVudCdcbmltcG9ydCB7IEJhc2VMYXlvdXRDb250ZW50Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQtZm9vdGVyLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRDb250ZW50SGVhZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQtaGVhZGVyLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dE5hdlRvZ2dsZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1uYXYtdG9nZ2xlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IEJhc2VMYXlvdXRTaWRlQmFyRm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXNpZGUtYmFyLWZvb3Rlci5kaXJlY3RpdmUnXG5pbXBvcnQgeyBCYXNlTGF5b3V0U2lkZUJhckhlYWRlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci1oZWFkZXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dFNpZGVCYXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtc2lkZS1iYXIuZGlyZWN0aXZlJ1xuaW1wb3J0IHsgQmFzZUxheW91dFRvcEJhckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC10b3AtYmFyLmRpcmVjdGl2ZSdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVGhlU2VhbUJhc2VMYXlvdXRDb21wb25lbnQsXG4gICAgQmFzZUxheW91dENvbnRlbnREaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFNpZGVCYXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFNpZGVCYXJGb290ZXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFNpZGVCYXJIZWFkZXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dFRvcEJhckRpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0TmF2VG9nZ2xlRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRDb250ZW50SGVhZGVyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRDb250ZW50Rm9vdGVyRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUG9ydGFsTW9kdWxlLFxuICAgIFRoZVNlYW1TY3JvbGxiYXJNb2R1bGUsXG4gICAgVGhlU2VhbUljb25Nb2R1bGUsXG4gICAgVGhlU2VhbUJ1dHRvbnNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFRoZVNlYW1CYXNlTGF5b3V0Q29tcG9uZW50LFxuICAgIEJhc2VMYXlvdXRDb250ZW50RGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRTaWRlQmFyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRTaWRlQmFyRm9vdGVyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRTaWRlQmFySGVhZGVyRGlyZWN0aXZlLFxuICAgIEJhc2VMYXlvdXRUb3BCYXJEaXJlY3RpdmUsXG4gICAgQmFzZUxheW91dE5hdlRvZ2dsZURpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0Q29udGVudEhlYWRlckRpcmVjdGl2ZSxcbiAgICBCYXNlTGF5b3V0Q29udGVudEZvb3RlckRpcmVjdGl2ZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1CYXNlTGF5b3V0TW9kdWxlIHsgfVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Directive, HostBinding, HostListener, Inject, Input, Optional } from '@angular/core';
|
|
2
|
+
import { tap } from 'rxjs/operators';
|
|
2
3
|
import { THESEAM_BASE_LAYOUT_REF } from '../base-layout-tokens';
|
|
3
4
|
import * as i0 from "@angular/core";
|
|
4
5
|
/**
|
|
@@ -12,22 +13,31 @@ export class BaseLayoutNavToggleDirective {
|
|
|
12
13
|
this.baseLayout.registeredNav.toggle();
|
|
13
14
|
}
|
|
14
15
|
}
|
|
15
|
-
constructor(_baseLayout) {
|
|
16
|
+
constructor(_cdr, _baseLayout) {
|
|
17
|
+
this._cdr = _cdr;
|
|
16
18
|
this.type = 'button';
|
|
17
19
|
/** Screenreader label for the button. */
|
|
18
20
|
this.ariaLabel = 'Navigation toggle';
|
|
21
|
+
this._toggleClass = true;
|
|
22
|
+
this._expandedClass = false;
|
|
19
23
|
this.baseLayout = _baseLayout;
|
|
20
24
|
}
|
|
25
|
+
ngOnInit() {
|
|
26
|
+
this.baseLayout?.registeredNav?.expanded$.pipe(tap(exp => {
|
|
27
|
+
this._expandedClass = exp;
|
|
28
|
+
this._cdr.markForCheck();
|
|
29
|
+
})).subscribe();
|
|
30
|
+
}
|
|
21
31
|
}
|
|
22
|
-
BaseLayoutNavToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BaseLayoutNavToggleDirective, deps: [{ token: THESEAM_BASE_LAYOUT_REF, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
-
BaseLayoutNavToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: BaseLayoutNavToggleDirective, selector: "button[seamBaseLayoutNavToggle]", inputs: { type: "type", ariaLabel: ["aria-label", "ariaLabel"] }, host: { listeners: { "click": "_onClick()" }, properties: { "attr.type": "this._attrType", "attr.aria-label": "this._attrAriaLabel" } }, exportAs: ["seamBaseLayoutNavToggle"], ngImport: i0 });
|
|
32
|
+
BaseLayoutNavToggleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BaseLayoutNavToggleDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: THESEAM_BASE_LAYOUT_REF, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
33
|
+
BaseLayoutNavToggleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: BaseLayoutNavToggleDirective, selector: "button[seamBaseLayoutNavToggle]", inputs: { type: "type", ariaLabel: ["aria-label", "ariaLabel"] }, host: { listeners: { "click": "_onClick()" }, properties: { "attr.type": "this._attrType", "attr.aria-label": "this._attrAriaLabel", "class.base-layout-nav-toggle": "this._toggleClass", "class.base-layout-nav-toggle--expanded": "this._expandedClass" } }, exportAs: ["seamBaseLayoutNavToggle"], ngImport: i0 });
|
|
24
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BaseLayoutNavToggleDirective, decorators: [{
|
|
25
35
|
type: Directive,
|
|
26
36
|
args: [{
|
|
27
37
|
selector: 'button[seamBaseLayoutNavToggle]',
|
|
28
38
|
exportAs: 'seamBaseLayoutNavToggle'
|
|
29
39
|
}]
|
|
30
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
31
41
|
type: Optional
|
|
32
42
|
}, {
|
|
33
43
|
type: Inject,
|
|
@@ -43,8 +53,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
43
53
|
}], ariaLabel: [{
|
|
44
54
|
type: Input,
|
|
45
55
|
args: ['aria-label']
|
|
56
|
+
}], _toggleClass: [{
|
|
57
|
+
type: HostBinding,
|
|
58
|
+
args: ['class.base-layout-nav-toggle']
|
|
59
|
+
}], _expandedClass: [{
|
|
60
|
+
type: HostBinding,
|
|
61
|
+
args: ['class.base-layout-nav-toggle--expanded']
|
|
46
62
|
}], _onClick: [{
|
|
47
63
|
type: HostListener,
|
|
48
64
|
args: ['click']
|
|
49
65
|
}] } });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQtbmF2LXRvZ2dsZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2Jhc2UtbGF5b3V0L2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtbmF2LXRvZ2dsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4SCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHcEMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUJBQXVCLENBQUE7O0FBRS9EOztHQUVHO0FBS0gsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QyxJQUNJLFNBQVMsS0FBSyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUEsQ0FBQyxDQUFDO0lBSXBDLElBQ0ksY0FBYyxLQUFLLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUEsQ0FBQyxDQUFDO0lBU3RELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUU7WUFDcEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUE7U0FDdkM7SUFDSCxDQUFDO0lBRUQsWUFDbUIsSUFBdUIsRUFDSyxXQUFrQztRQUQ5RCxTQUFJLEdBQUosSUFBSSxDQUFtQjtRQW5CakMsU0FBSSxHQUE4QixRQUFRLENBQUE7UUFLbkQseUNBQXlDO1FBQ3BCLGNBQVMsR0FBOEIsbUJBQW1CLENBQUE7UUFFbEMsaUJBQVksR0FBRyxJQUFJLENBQUE7UUFDVCxtQkFBYyxHQUFHLEtBQUssQ0FBQTtRQWEzRSxJQUFJLENBQUMsVUFBVSxHQUFHLFdBQVcsQ0FBQTtJQUMvQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsYUFBYSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQzVDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNSLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFBO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUE7UUFDMUIsQ0FBQyxDQUFDLENBQ0gsQ0FBQyxTQUFTLEVBQUUsQ0FBQTtJQUNmLENBQUM7O3lIQXZDVSw0QkFBNEIsbURBMkJqQix1QkFBdUI7NkdBM0JsQyw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFKeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUNBQWlDO29CQUMzQyxRQUFRLEVBQUUseUJBQXlCO2lCQUNwQzs7MEJBNEJJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsdUJBQXVCOzRDQXRCekMsU0FBUztzQkFEWixXQUFXO3VCQUFDLFdBQVc7Z0JBR2YsSUFBSTtzQkFBWixLQUFLO2dCQUdGLGNBQWM7c0JBRGpCLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUlULFNBQVM7c0JBQTdCLEtBQUs7dUJBQUMsWUFBWTtnQkFFMEIsWUFBWTtzQkFBeEQsV0FBVzt1QkFBQyw4QkFBOEI7Z0JBQ1ksY0FBYztzQkFBcEUsV0FBVzt1QkFBQyx3Q0FBd0M7Z0JBR3JELFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcblxuaW1wb3J0IHR5cGUgeyBJVGhlU2VhbUJhc2VMYXlvdXRSZWYgfSBmcm9tICcuLi9iYXNlLWxheW91dC1yZWYnXG5pbXBvcnQgeyBUSEVTRUFNX0JBU0VfTEFZT1VUX1JFRiB9IGZyb20gJy4uL2Jhc2UtbGF5b3V0LXRva2VucydcblxuLyoqXG4gKiBDYW4gYmUgdXNlZCB0byB0b2dnbGUgdGhlIGV4cGFuZCBzdGF0ZSBvZiB0aGUgcmVnaXN0ZXJlZCBuYXYuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2J1dHRvbltzZWFtQmFzZUxheW91dE5hdlRvZ2dsZV0nLFxuICBleHBvcnRBczogJ3NlYW1CYXNlTGF5b3V0TmF2VG9nZ2xlJ1xufSlcbmV4cG9ydCBjbGFzcyBCYXNlTGF5b3V0TmF2VG9nZ2xlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgYmFzZUxheW91dDogSVRoZVNlYW1CYXNlTGF5b3V0UmVmIHwgdW5kZWZpbmVkXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnR5cGUnKVxuICBnZXQgX2F0dHJUeXBlKCkgeyByZXR1cm4gdGhpcy50eXBlIH1cblxuICBASW5wdXQoKSB0eXBlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsID0gJ2J1dHRvbidcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbCcpXG4gIGdldCBfYXR0ckFyaWFMYWJlbCgpIHsgcmV0dXJuIHRoaXMuYXJpYUxhYmVsIHx8IG51bGwgfVxuXG4gIC8qKiBTY3JlZW5yZWFkZXIgbGFiZWwgZm9yIHRoZSBidXR0b24uICovXG4gIEBJbnB1dCgnYXJpYS1sYWJlbCcpIGFyaWFMYWJlbDogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCA9ICdOYXZpZ2F0aW9uIHRvZ2dsZSdcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJhc2UtbGF5b3V0LW5hdi10b2dnbGUnKSBfdG9nZ2xlQ2xhc3MgPSB0cnVlXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYmFzZS1sYXlvdXQtbmF2LXRvZ2dsZS0tZXhwYW5kZWQnKSBfZXhwYW5kZWRDbGFzcyA9IGZhbHNlXG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBfb25DbGljaygpIHtcbiAgICBpZiAodGhpcy5iYXNlTGF5b3V0ICYmIHRoaXMuYmFzZUxheW91dC5yZWdpc3RlcmVkTmF2KSB7XG4gICAgICB0aGlzLmJhc2VMYXlvdXQucmVnaXN0ZXJlZE5hdi50b2dnbGUoKVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUSEVTRUFNX0JBU0VfTEFZT1VUX1JFRikgX2Jhc2VMYXlvdXQ6IElUaGVTZWFtQmFzZUxheW91dFJlZlxuICApIHtcbiAgICB0aGlzLmJhc2VMYXlvdXQgPSBfYmFzZUxheW91dFxuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5iYXNlTGF5b3V0Py5yZWdpc3RlcmVkTmF2Py5leHBhbmRlZCQucGlwZShcbiAgICAgIHRhcChleHAgPT4ge1xuICAgICAgICB0aGlzLl9leHBhbmRlZENsYXNzID0gZXhwXG4gICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgICAgfSlcbiAgICApLnN1YnNjcmliZSgpXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class BaseLayoutSideBarHeaderDirective {
|
|
4
|
+
constructor(_elementRef) {
|
|
5
|
+
this._elementRef = _elementRef;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
BaseLayoutSideBarHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BaseLayoutSideBarHeaderDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9
|
+
BaseLayoutSideBarHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: BaseLayoutSideBarHeaderDirective, selector: "[seamBaseLayoutSideBarHeader]", ngImport: i0 });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: BaseLayoutSideBarHeaderDirective, decorators: [{
|
|
11
|
+
type: Directive,
|
|
12
|
+
args: [{
|
|
13
|
+
selector: '[seamBaseLayoutSideBarHeader]'
|
|
14
|
+
}]
|
|
15
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1sYXlvdXQtc2lkZS1iYXItaGVhZGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9mcmFtZXdvcmsvYmFzZS1sYXlvdXQvZGlyZWN0aXZlcy9iYXNlLWxheW91dC1zaWRlLWJhci1oZWFkZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUE7O0FBT3JELE1BQU0sT0FBTyxnQ0FBZ0M7SUFFM0MsWUFDUyxXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtJQUM1QixDQUFDOzs2SEFKTSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQzsyRkFBaEMsZ0NBQWdDO2tCQUg1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwrQkFBK0I7aUJBQzFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgSGFzRWxlbWVudFJlZiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2VhbUJhc2VMYXlvdXRTaWRlQmFySGVhZGVyXSdcbn0pXG5leHBvcnQgY2xhc3MgQmFzZUxheW91dFNpZGVCYXJIZWFkZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBIYXNFbGVtZW50UmVmIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7IH1cblxufVxuIl19
|
|
@@ -5,10 +5,11 @@ export * from './directives/base-layout-nav-toggle.directive';
|
|
|
5
5
|
export * from './directives/base-layout-side-bar-footer.directive';
|
|
6
6
|
export * from './directives/base-layout-side-bar.directive';
|
|
7
7
|
export * from './directives/base-layout-top-bar.directive';
|
|
8
|
+
export * from './directives/base-layout-side-bar-header.directive';
|
|
8
9
|
export * from './base-layout.component';
|
|
9
10
|
export * from './base-layout.module';
|
|
10
11
|
export * from './base-layout-nav';
|
|
11
12
|
export * from './base-layout-ref';
|
|
12
13
|
export * from './base-layout-tokens';
|
|
13
14
|
export * from './base-layout-action';
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL2Jhc2UtbGF5b3V0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbURBQW1ELENBQUE7QUFDakUsY0FBYyxtREFBbUQsQ0FBQTtBQUNqRSxjQUFjLDRDQUE0QyxDQUFBO0FBQzFELGNBQWMsK0NBQStDLENBQUE7QUFDN0QsY0FBYyxvREFBb0QsQ0FBQTtBQUNsRSxjQUFjLDZDQUE2QyxDQUFBO0FBQzNELGNBQWMsNENBQTRDLENBQUE7QUFDMUQsY0FBYyxvREFBb0QsQ0FBQTtBQUVsRSxjQUFjLHlCQUF5QixDQUFBO0FBQ3ZDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcy9iYXNlLWxheW91dC1jb250ZW50LWZvb3Rlci5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtY29udGVudC1oZWFkZXIuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LWNvbnRlbnQuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LW5hdi10b2dnbGUuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXNpZGUtYmFyLWZvb3Rlci5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2RpcmVjdGl2ZXMvYmFzZS1sYXlvdXQtc2lkZS1iYXIuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXRvcC1iYXIuZGlyZWN0aXZlJ1xuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzL2Jhc2UtbGF5b3V0LXNpZGUtYmFyLWhlYWRlci5kaXJlY3RpdmUnXG5cbmV4cG9ydCAqIGZyb20gJy4vYmFzZS1sYXlvdXQuY29tcG9uZW50J1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlLWxheW91dC5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL2Jhc2UtbGF5b3V0LW5hdidcbmV4cG9ydCAqIGZyb20gJy4vYmFzZS1sYXlvdXQtcmVmJ1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlLWxheW91dC10b2tlbnMnXG5leHBvcnQgKiBmcm9tICcuL2Jhc2UtbGF5b3V0LWFjdGlvbidcbiJdfQ==
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject, Subject } from 'rxjs';
|
|
3
|
+
import { shareReplay, switchMap } from 'rxjs/operators';
|
|
4
|
+
import { TheSeamNavService } from '../nav.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../nav.service";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
import * as i3 from "../nav-item/nav-item.component";
|
|
9
|
+
export class HorizontalNavComponent {
|
|
10
|
+
get items() { return this._items.value; }
|
|
11
|
+
set items(value) {
|
|
12
|
+
this._items.next(value);
|
|
13
|
+
}
|
|
14
|
+
constructor(_nav) {
|
|
15
|
+
this._nav = _nav;
|
|
16
|
+
this._ngUnsubscribe = new Subject();
|
|
17
|
+
this._items = new BehaviorSubject([]);
|
|
18
|
+
this.hideEmptyIcon = true;
|
|
19
|
+
this.hierLevel = 0;
|
|
20
|
+
this.childAction = 'menu';
|
|
21
|
+
this.expandAction = 'toggle';
|
|
22
|
+
this.navItemExpanded = new EventEmitter();
|
|
23
|
+
this.items$ = this._items.asObservable().pipe(switchMap(items => items ? this._nav.createItemsObservable(items) : []), shareReplay({ bufferSize: 1, refCount: true }));
|
|
24
|
+
}
|
|
25
|
+
ngOnDestroy() {
|
|
26
|
+
this._ngUnsubscribe.next();
|
|
27
|
+
this._ngUnsubscribe.complete();
|
|
28
|
+
}
|
|
29
|
+
_navItemExpanded(item, expanded) {
|
|
30
|
+
this.navItemExpanded.emit({ navItem: item, expanded });
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
HorizontalNavComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: HorizontalNavComponent, deps: [{ token: i1.TheSeamNavService }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
HorizontalNavComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: HorizontalNavComponent, selector: "seam-horizontal-nav", inputs: { items: "items", hideEmptyIcon: "hideEmptyIcon", hierLevel: "hierLevel", childAction: "childAction", expandAction: "expandAction" }, outputs: { navItemExpanded: "navItemExpanded" }, providers: [
|
|
35
|
+
TheSeamNavService
|
|
36
|
+
], ngImport: i0, template: "<div class=\"nav-inner-wrapper\" class=\"nav-inner-wrapper-{{hierLevel}}\">\n <div class=\"nav-items-row\">\n <seam-nav-item *ngFor=\"let item of items$ | async\"\n class=\"flex-shrink-0\"\n [item]=\"item\"\n [itemType]=\"$any(item)?.itemType\"\n [icon]=\"$any(item)?.icon\"\n [label]=\"$any(item)?.label\"\n [link]=\"$any(item)?.link\"\n [badgeText]=\"$any(item)?.badge?.text\"\n [badgeTheme]=\"$any(item)?.badge?.theme || 'danger'\"\n [badgeSrContent]=\"$any(item)?.badge?.srContent\"\n [badgeTooltip]=\"$any(item)?.badge?.tooltip\"\n [queryParams]=\"$any(item)?.queryParams\"\n [children]=\"$any(item)?.children\"\n [active]=\"$any(item).__state?.active\"\n [expanded]=\"$any(item).__state?.expanded\"\n [focused]=\"$any(item).__state?.focused\"\n [hierLevel]=\"hierLevel\"\n [childAction]=\"childAction\"\n [expandAction]=\"expandAction\"\n (navItemExpanded)=\"_navItemExpanded(item, $event)\"\n [hideEmptyIcon]=\"hideEmptyIcon\">\n </seam-nav-item>\n </div>\n</div>\n", styles: ["seam-horizontal-nav,.seam-horizontal-nav{display:block;height:100%;position:relative;z-index:2}seam-horizontal-nav .nav-inner-wrapper,.seam-horizontal-nav .nav-inner-wrapper{background:none;height:100%}seam-horizontal-nav .nav-backdrop,.seam-horizontal-nav .nav-backdrop{background:rgba(52,58,64,.6);width:100vw;height:100vh}seam-horizontal-nav .nav-backdrop.nav-backdrop-hidden,.seam-horizontal-nav .nav-backdrop.nav-backdrop-hidden{display:none;width:0;height:0;padding:0;margin:0}seam-horizontal-nav .nav-content,.seam-horizontal-nav .nav-content{display:flex;flex-direction:column;height:100%;flex-wrap:nowrap}seam-horizontal-nav .nav-items-container,.seam-horizontal-nav .nav-items-container{display:flex;flex-direction:column;width:100%;flex:1 1 100%}seam-horizontal-nav .nav-items-row,.seam-horizontal-nav .nav-items-row{height:100%;display:flex;padding:.25rem .5rem}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.NavItemComponent, selector: "seam-nav-item", inputs: ["item", "itemType", "icon", "hideEmptyIcon", "label", "active", "link", "queryParams", "children", "hierLevel", "indentSize", "expanded", "compact", "focused", "badgeText", "badgeTheme", "badgeSrContent", "badgeTooltip", "childAction", "expandAction"], outputs: ["navItemExpanded"], exportAs: ["seamNavItem"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: HorizontalNavComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'seam-horizontal-nav', providers: [
|
|
40
|
+
TheSeamNavService
|
|
41
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"nav-inner-wrapper\" class=\"nav-inner-wrapper-{{hierLevel}}\">\n <div class=\"nav-items-row\">\n <seam-nav-item *ngFor=\"let item of items$ | async\"\n class=\"flex-shrink-0\"\n [item]=\"item\"\n [itemType]=\"$any(item)?.itemType\"\n [icon]=\"$any(item)?.icon\"\n [label]=\"$any(item)?.label\"\n [link]=\"$any(item)?.link\"\n [badgeText]=\"$any(item)?.badge?.text\"\n [badgeTheme]=\"$any(item)?.badge?.theme || 'danger'\"\n [badgeSrContent]=\"$any(item)?.badge?.srContent\"\n [badgeTooltip]=\"$any(item)?.badge?.tooltip\"\n [queryParams]=\"$any(item)?.queryParams\"\n [children]=\"$any(item)?.children\"\n [active]=\"$any(item).__state?.active\"\n [expanded]=\"$any(item).__state?.expanded\"\n [focused]=\"$any(item).__state?.focused\"\n [hierLevel]=\"hierLevel\"\n [childAction]=\"childAction\"\n [expandAction]=\"expandAction\"\n (navItemExpanded)=\"_navItemExpanded(item, $event)\"\n [hideEmptyIcon]=\"hideEmptyIcon\">\n </seam-nav-item>\n </div>\n</div>\n", styles: ["seam-horizontal-nav,.seam-horizontal-nav{display:block;height:100%;position:relative;z-index:2}seam-horizontal-nav .nav-inner-wrapper,.seam-horizontal-nav .nav-inner-wrapper{background:none;height:100%}seam-horizontal-nav .nav-backdrop,.seam-horizontal-nav .nav-backdrop{background:rgba(52,58,64,.6);width:100vw;height:100vh}seam-horizontal-nav .nav-backdrop.nav-backdrop-hidden,.seam-horizontal-nav .nav-backdrop.nav-backdrop-hidden{display:none;width:0;height:0;padding:0;margin:0}seam-horizontal-nav .nav-content,.seam-horizontal-nav .nav-content{display:flex;flex-direction:column;height:100%;flex-wrap:nowrap}seam-horizontal-nav .nav-items-container,.seam-horizontal-nav .nav-items-container{display:flex;flex-direction:column;width:100%;flex:1 1 100%}seam-horizontal-nav .nav-items-row,.seam-horizontal-nav .nav-items-row{height:100%;display:flex;padding:.25rem .5rem}\n"] }]
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.TheSeamNavService }]; }, propDecorators: { items: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], hideEmptyIcon: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], hierLevel: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], childAction: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], expandAction: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], navItemExpanded: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9yaXpvbnRhbC1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9uYXYvaG9yaXpvbnRhbC1uYXYvaG9yaXpvbnRhbC1uYXYuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9uYXYvaG9yaXpvbnRhbC1uYXYvaG9yaXpvbnRhbC1uYXYuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM3SCxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBR3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBOzs7OztBQVlsRCxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLElBQ0ksS0FBSyxLQUFpQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFBLENBQUMsQ0FBQztJQUNwRCxJQUFJLEtBQUssQ0FBQyxLQUFpQjtRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN6QixDQUFDO0lBY0QsWUFDbUIsSUFBdUI7UUFBdkIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFyQnpCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQTtRQU83QyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQWEsRUFBRSxDQUFDLENBQUE7UUFHM0Msa0JBQWEsR0FBK0IsSUFBSSxDQUFBO1FBRWhELGNBQVMsR0FBRyxDQUFDLENBQUE7UUFFYixnQkFBVyxHQUF1QixNQUFNLENBQUE7UUFFeEMsaUJBQVksR0FBd0IsUUFBUSxDQUFBO1FBRTNDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQXdCLENBQUE7UUFLbEUsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDM0MsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDdkUsV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FDL0MsQ0FBQTtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUFjLEVBQUUsUUFBaUI7UUFDaEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUE7SUFDeEQsQ0FBQzs7bUhBdkNVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDZPQU50QjtRQUNULGlCQUFpQjtLQUNsQiwwQkNkSCwwakNBMEJBOzJGRFJhLHNCQUFzQjtrQkFWbEMsU0FBUzsrQkFDRSxxQkFBcUIsYUFHcEI7d0JBQ1QsaUJBQWlCO3FCQUNsQixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTt3R0FRakMsS0FBSztzQkFEUixLQUFLO2dCQVFHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBJTmF2SXRlbSwgTmF2SXRlbUNoaWxkQWN0aW9uLCBOYXZJdGVtRXhwYW5kQWN0aW9uLCBOYXZJdGVtRXhwYW5kZWRFdmVudCB9IGZyb20gJy4uL25hdi5tb2RlbHMnXG5pbXBvcnQgeyBUaGVTZWFtTmF2U2VydmljZSB9IGZyb20gJy4uL25hdi5zZXJ2aWNlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLWhvcml6b250YWwtbmF2JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2hvcml6b250YWwtbmF2LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaG9yaXpvbnRhbC1uYXYuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgVGhlU2VhbU5hdlNlcnZpY2VcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgSG9yaXpvbnRhbE5hdkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9oYXNIZWFkZXJUb2dnbGU6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgQElucHV0KClcbiAgZ2V0IGl0ZW1zKCk6IElOYXZJdGVtW10geyByZXR1cm4gdGhpcy5faXRlbXMudmFsdWUgfVxuICBzZXQgaXRlbXModmFsdWU6IElOYXZJdGVtW10pIHtcbiAgICB0aGlzLl9pdGVtcy5uZXh0KHZhbHVlKVxuICB9XG4gIHByaXZhdGUgX2l0ZW1zID0gbmV3IEJlaGF2aW9yU3ViamVjdDxJTmF2SXRlbVtdPihbXSlcbiAgcHVibGljIHJlYWRvbmx5IGl0ZW1zJDogT2JzZXJ2YWJsZTxJTmF2SXRlbVtdPlxuXG4gIEBJbnB1dCgpIGhpZGVFbXB0eUljb246IGJvb2xlYW4gfCB1bmRlZmluZWQgfCBudWxsID0gdHJ1ZVxuXG4gIEBJbnB1dCgpIGhpZXJMZXZlbCA9IDBcblxuICBASW5wdXQoKSBjaGlsZEFjdGlvbjogTmF2SXRlbUNoaWxkQWN0aW9uID0gJ21lbnUnXG5cbiAgQElucHV0KCkgZXhwYW5kQWN0aW9uOiBOYXZJdGVtRXhwYW5kQWN0aW9uID0gJ3RvZ2dsZSdcblxuICBAT3V0cHV0KCkgbmF2SXRlbUV4cGFuZGVkID0gbmV3IEV2ZW50RW1pdHRlcjxOYXZJdGVtRXhwYW5kZWRFdmVudD4oKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX25hdjogVGhlU2VhbU5hdlNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5pdGVtcyQgPSB0aGlzLl9pdGVtcy5hc09ic2VydmFibGUoKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKGl0ZW1zID0+IGl0ZW1zID8gdGhpcy5fbmF2LmNyZWF0ZUl0ZW1zT2JzZXJ2YWJsZShpdGVtcykgOiBbXSksXG4gICAgICBzaGFyZVJlcGxheSh7IGJ1ZmZlclNpemU6IDEsIHJlZkNvdW50OiB0cnVlIH0pLFxuICAgIClcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICBfbmF2SXRlbUV4cGFuZGVkKGl0ZW06IElOYXZJdGVtLCBleHBhbmRlZDogYm9vbGVhbikge1xuICAgIHRoaXMubmF2SXRlbUV4cGFuZGVkLmVtaXQoeyBuYXZJdGVtOiBpdGVtLCBleHBhbmRlZCB9KVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJuYXYtaW5uZXItd3JhcHBlclwiIGNsYXNzPVwibmF2LWlubmVyLXdyYXBwZXIte3toaWVyTGV2ZWx9fVwiPlxuICA8ZGl2IGNsYXNzPVwibmF2LWl0ZW1zLXJvd1wiPlxuICAgIDxzZWFtLW5hdi1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zJCB8IGFzeW5jXCJcbiAgICAgIGNsYXNzPVwiZmxleC1zaHJpbmstMFwiXG4gICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgIFtpdGVtVHlwZV09XCIkYW55KGl0ZW0pPy5pdGVtVHlwZVwiXG4gICAgICBbaWNvbl09XCIkYW55KGl0ZW0pPy5pY29uXCJcbiAgICAgIFtsYWJlbF09XCIkYW55KGl0ZW0pPy5sYWJlbFwiXG4gICAgICBbbGlua109XCIkYW55KGl0ZW0pPy5saW5rXCJcbiAgICAgIFtiYWRnZVRleHRdPVwiJGFueShpdGVtKT8uYmFkZ2U/LnRleHRcIlxuICAgICAgW2JhZGdlVGhlbWVdPVwiJGFueShpdGVtKT8uYmFkZ2U/LnRoZW1lIHx8ICdkYW5nZXInXCJcbiAgICAgIFtiYWRnZVNyQ29udGVudF09XCIkYW55KGl0ZW0pPy5iYWRnZT8uc3JDb250ZW50XCJcbiAgICAgIFtiYWRnZVRvb2x0aXBdPVwiJGFueShpdGVtKT8uYmFkZ2U/LnRvb2x0aXBcIlxuICAgICAgW3F1ZXJ5UGFyYW1zXT1cIiRhbnkoaXRlbSk/LnF1ZXJ5UGFyYW1zXCJcbiAgICAgIFtjaGlsZHJlbl09XCIkYW55KGl0ZW0pPy5jaGlsZHJlblwiXG4gICAgICBbYWN0aXZlXT1cIiRhbnkoaXRlbSkuX19zdGF0ZT8uYWN0aXZlXCJcbiAgICAgIFtleHBhbmRlZF09XCIkYW55KGl0ZW0pLl9fc3RhdGU/LmV4cGFuZGVkXCJcbiAgICAgIFtmb2N1c2VkXT1cIiRhbnkoaXRlbSkuX19zdGF0ZT8uZm9jdXNlZFwiXG4gICAgICBbaGllckxldmVsXT1cImhpZXJMZXZlbFwiXG4gICAgICBbY2hpbGRBY3Rpb25dPVwiY2hpbGRBY3Rpb25cIlxuICAgICAgW2V4cGFuZEFjdGlvbl09XCJleHBhbmRBY3Rpb25cIlxuICAgICAgKG5hdkl0ZW1FeHBhbmRlZCk9XCJfbmF2SXRlbUV4cGFuZGVkKGl0ZW0sICRldmVudClcIlxuICAgICAgW2hpZGVFbXB0eUljb25dPVwiaGlkZUVtcHR5SWNvblwiPlxuICAgIDwvc2VhbS1uYXYtaXRlbT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './nav-item/nav-item.component';
|
|
2
|
+
export * from './horizontal-nav/horizontal-nav.component';
|
|
3
|
+
export * from './nav.models';
|
|
4
|
+
export * from './nav.module';
|
|
5
|
+
export * from './nav-utils';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL25hdi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFBO0FBRTdDLGNBQWMsMkNBQTJDLENBQUE7QUFDekQsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxjQUFjLENBQUE7QUFDNUIsY0FBYyxhQUFhLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25hdi1pdGVtL25hdi1pdGVtLmNvbXBvbmVudCdcblxuZXhwb3J0ICogZnJvbSAnLi9ob3Jpem9udGFsLW5hdi9ob3Jpem9udGFsLW5hdi5jb21wb25lbnQnXG5leHBvcnQgKiBmcm9tICcuL25hdi5tb2RlbHMnXG5leHBvcnQgKiBmcm9tICcuL25hdi5tb2R1bGUnXG5leHBvcnQgKiBmcm9tICcuL25hdi11dGlscydcbiJdfQ==
|