@fundamental-ngx/core 0.43.39 → 0.43.41

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.
@@ -1,12 +1,15 @@
1
- import { ElementRef, EventEmitter, ChangeDetectorRef } from '@angular/core';
1
+ import { ElementRef, EventEmitter, ChangeDetectorRef, AfterContentInit } from '@angular/core';
2
2
  import { Nullable } from '@fundamental-ngx/cdk/utils';
3
3
  import { DynamicPageConfig } from '../../dynamic-page.config';
4
4
  import { DynamicPageService } from '../../dynamic-page.service';
5
+ import { FdLanguage } from '@fundamental-ngx/i18n';
6
+ import { Observable } from 'rxjs';
5
7
  import * as i0 from "@angular/core";
6
- export declare class DynamicPageSubheaderComponent {
8
+ export declare class DynamicPageSubheaderComponent implements AfterContentInit {
7
9
  private _cd;
8
10
  protected _dynamicPageConfig: DynamicPageConfig;
9
11
  private _dynamicPageService;
12
+ private readonly _language$;
10
13
  /**
11
14
  * whether the header can be collapsed. True by default. If set to false, both pin/collapse buttons disappear
12
15
  * and the header stays visible
@@ -66,7 +69,15 @@ export declare class DynamicPageSubheaderComponent {
66
69
  */
67
70
  private _collapsed;
68
71
  /** @hidden */
69
- constructor(_cd: ChangeDetectorRef, _dynamicPageConfig: DynamicPageConfig, _dynamicPageService: DynamicPageService);
72
+ private _translationResolver;
73
+ /** @hidden */
74
+ private _language;
75
+ /** @hidden */
76
+ constructor(_cd: ChangeDetectorRef, _dynamicPageConfig: DynamicPageConfig, _dynamicPageService: DynamicPageService, _language$: Observable<FdLanguage>);
77
+ /** @hidden */
78
+ ngAfterContentInit(): void;
79
+ /** @hidden */
80
+ private _init;
70
81
  /**
71
82
  * toggles the state of the header and
72
83
  * handles expanded/collapsed event
@@ -18,8 +18,9 @@ import * as i16 from "@fundamental-ngx/core/content-density";
18
18
  import * as i17 from "@fundamental-ngx/core/scrollbar";
19
19
  import * as i18 from "./directives/dynamic-page-header-subtitle.directive";
20
20
  import * as i19 from "./directives/dynamic-page-header-title.directive";
21
+ import * as i20 from "@fundamental-ngx/i18n";
21
22
  export declare class DynamicPageModule {
22
23
  static ɵfac: i0.ɵɵFactoryDeclaration<DynamicPageModule, never>;
23
- static ɵmod: i0.ɵɵNgModuleDeclaration<DynamicPageModule, [typeof i1.DynamicPageComponent, typeof i2.DynamicPageHeaderComponent, typeof i3.DynamicPageGlobalActionsComponent, typeof i4.DynamicPageLayoutActionsComponent, typeof i5.DynamicPageSubheaderComponent, typeof i6.DynamicPageContentComponent, typeof i7.DynamicPageFooterComponent, typeof i8.DynamicPageTitleContentComponent, typeof i9.DynamicPageWrapperDirective, typeof i10.DeprecatedDynamicPageCompactDirective], [typeof i11.CommonModule, typeof i12.ButtonModule, typeof i13.ToolbarModule, typeof i14.PopoverModule, typeof i15.IgnoreClickOnSelectionModule, typeof i16.ContentDensityModule, typeof i17.ScrollbarModule, typeof i18.DynamicPageHeaderSubtitleDirective, typeof i19.DynamicPageHeaderTitleDirective], [typeof i1.DynamicPageComponent, typeof i2.DynamicPageHeaderComponent, typeof i3.DynamicPageGlobalActionsComponent, typeof i4.DynamicPageLayoutActionsComponent, typeof i5.DynamicPageSubheaderComponent, typeof i6.DynamicPageContentComponent, typeof i7.DynamicPageFooterComponent, typeof i8.DynamicPageTitleContentComponent, typeof i9.DynamicPageWrapperDirective, typeof i10.DeprecatedDynamicPageCompactDirective, typeof i18.DynamicPageHeaderSubtitleDirective, typeof i19.DynamicPageHeaderTitleDirective]>;
24
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DynamicPageModule, [typeof i1.DynamicPageComponent, typeof i2.DynamicPageHeaderComponent, typeof i3.DynamicPageGlobalActionsComponent, typeof i4.DynamicPageLayoutActionsComponent, typeof i5.DynamicPageSubheaderComponent, typeof i6.DynamicPageContentComponent, typeof i7.DynamicPageFooterComponent, typeof i8.DynamicPageTitleContentComponent, typeof i9.DynamicPageWrapperDirective, typeof i10.DeprecatedDynamicPageCompactDirective], [typeof i11.CommonModule, typeof i12.ButtonModule, typeof i13.ToolbarModule, typeof i14.PopoverModule, typeof i15.IgnoreClickOnSelectionModule, typeof i16.ContentDensityModule, typeof i17.ScrollbarModule, typeof i18.DynamicPageHeaderSubtitleDirective, typeof i19.DynamicPageHeaderTitleDirective, typeof i20.I18nModule], [typeof i1.DynamicPageComponent, typeof i2.DynamicPageHeaderComponent, typeof i3.DynamicPageGlobalActionsComponent, typeof i4.DynamicPageLayoutActionsComponent, typeof i5.DynamicPageSubheaderComponent, typeof i6.DynamicPageContentComponent, typeof i7.DynamicPageFooterComponent, typeof i8.DynamicPageTitleContentComponent, typeof i9.DynamicPageWrapperDirective, typeof i10.DeprecatedDynamicPageCompactDirective, typeof i18.DynamicPageHeaderSubtitleDirective, typeof i19.DynamicPageHeaderTitleDirective]>;
24
25
  static ɵinj: i0.ɵɵInjectorDeclaration<DynamicPageModule>;
25
26
  }
@@ -1,12 +1,15 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, HostBinding, ChangeDetectorRef } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, HostBinding, ChangeDetectorRef, Inject } from '@angular/core';
2
2
  import { distinctUntilChanged } from 'rxjs/operators';
3
3
  import { DynamicPageConfig } from '../../dynamic-page.config';
4
4
  import { DynamicPageService } from '../../dynamic-page.service';
5
+ import { TranslationResolver, FD_LANGUAGE } from '@fundamental-ngx/i18n';
6
+ import { firstValueFrom, Observable } from 'rxjs';
5
7
  import * as i0 from "@angular/core";
6
8
  import * as i1 from "../../dynamic-page.config";
7
9
  import * as i2 from "../../dynamic-page.service";
8
10
  import * as i3 from "@angular/common";
9
11
  import * as i4 from "@fundamental-ngx/core/button";
12
+ import * as i5 from "rxjs";
10
13
  let dynamicPageSubHeaderId = 0;
11
14
  export class DynamicPageSubheaderComponent {
12
15
  /**
@@ -19,10 +22,11 @@ export class DynamicPageSubheaderComponent {
19
22
  return this._collapsed;
20
23
  }
21
24
  /** @hidden */
22
- constructor(_cd, _dynamicPageConfig, _dynamicPageService) {
25
+ constructor(_cd, _dynamicPageConfig, _dynamicPageService, _language$) {
23
26
  this._cd = _cd;
24
27
  this._dynamicPageConfig = _dynamicPageConfig;
25
28
  this._dynamicPageService = _dynamicPageService;
29
+ this._language$ = _language$;
26
30
  /**
27
31
  * whether the header can be collapsed. True by default. If set to false, both pin/collapse buttons disappear
28
32
  * and the header stays visible
@@ -33,14 +37,6 @@ export class DynamicPageSubheaderComponent {
33
37
  * Pinning the header will make the header stay visible and the collapse button(if present) will disappear until unpinned.
34
38
  */
35
39
  this.pinnable = false;
36
- /**
37
- * ARIA label for button when the header is collapsed
38
- */
39
- this.expandLabel = this._dynamicPageConfig.expandLabel;
40
- /**
41
- * ARIA label for button when the header is expanded
42
- */
43
- this.collapseLabel = this._dynamicPageConfig.collapseLabel;
44
40
  /** Header role */
45
41
  this.role = 'region';
46
42
  /**
@@ -70,10 +66,53 @@ export class DynamicPageSubheaderComponent {
70
66
  * tracking expand/collapse button
71
67
  */
72
68
  this._collapsed = false;
69
+ /** @hidden */
70
+ this._translationResolver = new TranslationResolver();
73
71
  this._dynamicPageService.collapsed
74
72
  .pipe(distinctUntilChanged())
75
73
  .subscribe((collapsed) => this._handleCollapsedChange(collapsed));
76
74
  }
75
+ /** @hidden */
76
+ ngAfterContentInit() {
77
+ this._init();
78
+ }
79
+ /** @hidden */
80
+ async _init() {
81
+ this._language = await firstValueFrom(this._language$);
82
+ if (!this.expandLabel) {
83
+ if (this._dynamicPageConfig && this._dynamicPageConfig.expandLabel) {
84
+ this.expandLabel = this._dynamicPageConfig.expandLabel;
85
+ }
86
+ else {
87
+ this.expandLabel = this._translationResolver.resolve(this._language, `coreDynamicPage.expandLabel`);
88
+ }
89
+ }
90
+ if (!this.collapseLabel) {
91
+ if (this._dynamicPageConfig && this._dynamicPageConfig.collapseLabel) {
92
+ this.collapseLabel = this._dynamicPageConfig.collapseLabel;
93
+ }
94
+ else {
95
+ this.collapseLabel = this._translationResolver.resolve(this._language, `coreDynamicPage.collapseLabel`);
96
+ }
97
+ }
98
+ if (!this.pinAriaLabel) {
99
+ if (this._dynamicPageConfig && this._dynamicPageConfig.pinLabel) {
100
+ this.pinAriaLabel = this._dynamicPageConfig.pinLabel;
101
+ }
102
+ else {
103
+ this.pinAriaLabel = this._translationResolver.resolve(this._language, `coreDynamicPage.pinLabel`);
104
+ }
105
+ }
106
+ if (!this.unpinAriaLabel) {
107
+ if (this._dynamicPageConfig && this._dynamicPageConfig.unpinLabel) {
108
+ this.unpinAriaLabel = this._dynamicPageConfig.unpinLabel;
109
+ }
110
+ else {
111
+ this.unpinAriaLabel = this._translationResolver.resolve(this._language, `coreDynamicPage.unpinLabel`);
112
+ }
113
+ }
114
+ this._cd.detectChanges();
115
+ }
77
116
  /**
78
117
  * toggles the state of the header and
79
118
  * handles expanded/collapsed event
@@ -102,12 +141,15 @@ export class DynamicPageSubheaderComponent {
102
141
  this._dynamicPageService.subheaderVisibilityChange.next();
103
142
  }
104
143
  }
105
- DynamicPageSubheaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicPageSubheaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DynamicPageConfig }, { token: i2.DynamicPageService }], target: i0.ɵɵFactoryTarget.Component });
144
+ DynamicPageSubheaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicPageSubheaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DynamicPageConfig }, { token: i2.DynamicPageService }, { token: FD_LANGUAGE }], target: i0.ɵɵFactoryTarget.Component });
106
145
  DynamicPageSubheaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DynamicPageSubheaderComponent, selector: "fd-dynamic-page-subheader", inputs: { collapsible: "collapsible", pinnable: "pinnable", collapsed: "collapsed", expandLabel: "expandLabel", collapseLabel: "collapseLabel", role: "role", id: "id", headerAriaLabel: "headerAriaLabel", pinAriaLabel: "pinAriaLabel", unpinAriaLabel: "unpinAriaLabel" }, outputs: { collapsedChange: "collapsedChange" }, host: { properties: { "attr.role": "this.role", "attr.id": "this.id" } }, viewQueries: [{ propertyName: "pinCollapseContainer", first: true, predicate: ["pincollapseContainer"], descendants: true }], ngImport: i0, template: "<div class=\"fd-dynamic-page__collapsible-header-container\">\n <div\n class=\"fd-dynamic-page__collapsible-header\"\n [attr.aria-label]=\"headerAriaLabel\"\n [attr.aria-hidden]=\"collapsed\"\n [attr.id]=\"collapsibleHeaderId\"\n role=\"region\"\n #headerContent\n >\n <ng-content></ng-content>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container\" #pincollapseContainer>\n <ng-container *ngIf=\"collapsible\">\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--left-gradient\"></div>\n <div role=\"toolbar\" class=\"fd-dynamic-page__collapsible-header-visibility-container--button-group\">\n <button\n fd-button\n class=\"fd-dynamic-page__collapse-button\"\n aria-haspopup=\"true\"\n [ariaLabel]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.title]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.aria-expanded]=\"!collapsed\"\n [attr.aria-controls]=\"id\"\n (click)=\"toggleCollapse()\"\n >\n <i [style.transform]=\"collapsed ? '' : 'rotate(180deg)'\" class=\"sap-icon--slim-arrow-down\"></i>\n </button>\n <button\n fd-button\n class=\"fd-dynamic-page__pin-button\"\n [ariaLabel]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [attr.title]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [toggled]=\"_pinned\"\n (click)=\"togglePinned()\"\n *ngIf=\"pinnable && !collapsed\"\n >\n <i class=\"sap-icon--pushpin-off\"></i>\n </button>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--right-gradient\"></div>\n </ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
107
146
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicPageSubheaderComponent, decorators: [{
108
147
  type: Component,
109
148
  args: [{ selector: 'fd-dynamic-page-subheader', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"fd-dynamic-page__collapsible-header-container\">\n <div\n class=\"fd-dynamic-page__collapsible-header\"\n [attr.aria-label]=\"headerAriaLabel\"\n [attr.aria-hidden]=\"collapsed\"\n [attr.id]=\"collapsibleHeaderId\"\n role=\"region\"\n #headerContent\n >\n <ng-content></ng-content>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container\" #pincollapseContainer>\n <ng-container *ngIf=\"collapsible\">\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--left-gradient\"></div>\n <div role=\"toolbar\" class=\"fd-dynamic-page__collapsible-header-visibility-container--button-group\">\n <button\n fd-button\n class=\"fd-dynamic-page__collapse-button\"\n aria-haspopup=\"true\"\n [ariaLabel]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.title]=\"collapsed ? expandLabel : collapseLabel\"\n [attr.aria-expanded]=\"!collapsed\"\n [attr.aria-controls]=\"id\"\n (click)=\"toggleCollapse()\"\n >\n <i [style.transform]=\"collapsed ? '' : 'rotate(180deg)'\" class=\"sap-icon--slim-arrow-down\"></i>\n </button>\n <button\n fd-button\n class=\"fd-dynamic-page__pin-button\"\n [ariaLabel]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [attr.title]=\"_pinned ? unpinAriaLabel : pinAriaLabel\"\n [toggled]=\"_pinned\"\n (click)=\"togglePinned()\"\n *ngIf=\"pinnable && !collapsed\"\n >\n <i class=\"sap-icon--pushpin-off\"></i>\n </button>\n </div>\n <div class=\"fd-dynamic-page__collapsible-header-visibility-container--right-gradient\"></div>\n </ng-container>\n </div>\n</div>\n" }]
110
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.DynamicPageConfig }, { type: i2.DynamicPageService }]; }, propDecorators: { collapsible: [{
149
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.DynamicPageConfig }, { type: i2.DynamicPageService }, { type: i5.Observable, decorators: [{
150
+ type: Inject,
151
+ args: [FD_LANGUAGE]
152
+ }] }]; }, propDecorators: { collapsible: [{
111
153
  type: Input
112
154
  }], pinnable: [{
113
155
  type: Input
@@ -139,4 +181,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
139
181
  type: ViewChild,
140
182
  args: ['pincollapseContainer']
141
183
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9keW5hbWljLXBhZ2UvZHluYW1pYy1wYWdlLWhlYWRlci9zdWJoZWFkZXIvZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9keW5hbWljLXBhZ2UvZHluYW1pYy1wYWdlLWhlYWRlci9zdWJoZWFkZXIvZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNqQixXQUFXLEVBQ1gsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFFaEUsSUFBSSxzQkFBc0IsR0FBRyxDQUFDLENBQUM7QUFPL0IsTUFBTSxPQUFPLDZCQUE2QjtJQWV0Qzs7T0FFRztJQUNILElBQ0ksU0FBUyxDQUFDLFNBQWtCO1FBQzVCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUFtRUQsY0FBYztJQUNkLFlBQ1ksR0FBc0IsRUFDcEIsa0JBQXFDLEVBQ3ZDLG1CQUF1QztRQUZ2QyxRQUFHLEdB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QUMsU0FBUztnQkFXdEIsZUFBZTtzQkFEZCxLQUFLO2dCQU9OLFlBQVk7c0JBRFgsS0FBSztnQkFPTixjQUFjO3NCQURiLEtBQUs7Z0JBS04sZUFBZTtzQkFEZCxNQUFNO2dCQUtQLG9CQUFvQjtzQkFEbkIsU0FBUzt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIENoYW5nZURldGVjdG9yUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcblxuaW1wb3J0IHsgRHluYW1pY1BhZ2VDb25maWcgfSBmcm9tICcuLi8uLi9keW5hbWljLXBhZ2UuY29uZmlnJztcbmltcG9ydCB7IER5bmFtaWNQYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL2R5bmFtaWMtcGFnZS5zZXJ2aWNlJztcblxubGV0IGR5bmFtaWNQYWdlU3ViSGVhZGVySWQgPSAwO1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC1keW5hbWljLXBhZ2Utc3ViaGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljUGFnZVN1YmhlYWRlckNvbXBvbmVudCB7XG4gICAgLyoqXG4gICAgICogd2hldGhlciB0aGUgaGVhZGVyIGNhbiBiZSBjb2xsYXBzZWQuIFRydWUgYnkgZGVmYXVsdC4gSWYgc2V0IHRvIGZhbHNlLCBib3RoIHBpbi9jb2xsYXBzZSBidXR0b25zIGRpc2FwcGVhclxuICAgICAqIGFuZCB0aGUgaGVhZGVyIHN0YXlzIHZpc2libGVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbGxhcHNpYmxlID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIHdoZXRoZXIgdGhlIGhlYWRlciBzaG91bGQgYmUgYWxsb3dlZCB0byBiZSBwaW5uZWQgb3IgdW5waW5uZWQuIFdoZW4gc2V0LCB0aGUgcGluIGJ1dHRvbiBzaG93cyB1cC5cbiAgICAgKiBQaW5uaW5nIHRoZSBoZWFkZXIgd2lsbCBtYWtlIHRoZSBoZWFkZXIgc3RheSB2aXNpYmxlIGFuZCB0aGUgY29sbGFwc2UgYnV0dG9uKGlmIHByZXNlbnQpIHdpbGwgZGlzYXBwZWFyIHVudGlsIHVucGlubmVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcGlubmFibGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIHRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSBoZWFkZXIuIFNldCB0byB0cnVlIGlmIGhlYWRlciBzaG91bGQgYmUgY29sbGFwc2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNvbGxhcHNlZChjb2xsYXBzZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5faGFuZGxlQ29sbGFwc2VkQ2hhbmdlKGNvbGxhcHNlZCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbGxhcHNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbGxhcHNlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBUklBIGxhYmVsIGZvciBidXR0b24gd2hlbiB0aGUgaGVhZGVyIGlzIGNvbGxhcHNlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZXhwYW5kTGFiZWw6IHN0cmluZyA9IHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnLmV4cGFuZExhYmVsO1xuXG4gICAgLyoqXG4gICAgICogQVJJQSBsYWJlbCBmb3IgYnV0dG9uIHdoZW4gdGhlIGhlYWRlciBpcyBleHBhbmRlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgY29sbGFwc2VMYWJlbDogc3RyaW5nID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcuY29sbGFwc2VMYWJlbDtcblxuICAgIC8qKiBIZWFkZXIgcm9sZSAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJylcbiAgICByb2xlID0gJ3JlZ2lvbic7XG5cbiAgICAvKipcbiAgICAgKiBpZCBmb3IgaGVhZGVyXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIGlkID0gYGZkLWR5bmFtaWMtcGFnZS1oZWFkZXItaWQtJHtkeW5hbWljUGFnZVN1YkhlYWRlcklkKyt9YDtcblxuICAgIC8qKlxuICAgICAqIGlkIGZvciBjb2xsYXBzaWJsZSBoZWFkZXJcbiAgICAgKi9cbiAgICBjb2xsYXBzaWJsZUhlYWRlcklkID0gYCR7dGhpcy5pZH0tY29sbGFwc2libGVgO1xuICAgIC8qKlxuICAgICAqIGFyaWEgbGFiZWwgZm9yIGhlYWRlclxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgaGVhZGVyQXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogYXJpYSBsYWJlbCBmb3IgcGluIHN0YXRlIG9mIHBpbiBidXR0b25cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHBpbkFyaWFMYWJlbDogc3RyaW5nID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcucGluTGFiZWw7XG5cbiAgICAvKipcbiAgICAgKiBhcmlhIGxhYmVsIGZvciB1bnBpbiBzdGF0ZSBvZiBwaW4gYnV0dG9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB1bnBpbkFyaWFMYWJlbDogc3RyaW5nID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcudW5waW5MYWJlbDtcblxuICAgIC8qKiBDb2xsYXBzZS9FeHBhbmQgY2hhbmdlIGV2ZW50IHJhaXNlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNvbGxhcHNlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBSZWZlcmVuY2UgdG8gcGFnZSBoZWFkZXIgY29udGVudCAqL1xuICAgIEBWaWV3Q2hpbGQoJ3BpbmNvbGxhcHNlQ29udGFpbmVyJylcbiAgICBwaW5Db2xsYXBzZUNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKipcbiAgICAgKiB0cmFja2luZyBpZiBwaW4gYnV0dG9uIGlzIHBpbm5lZFxuICAgICAqL1xuICAgIF9waW5uZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiB0cmFja2luZyBleHBhbmQvY29sbGFwc2UgYnV0dG9uXG4gICAgICovXG4gICAgcHJpdmF0ZSBfY29sbGFwc2VkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByb3RlY3RlZCBfZHluYW1pY1BhZ2VDb25maWc6IER5bmFtaWNQYWdlQ29uZmlnLFxuICAgICAgICBwcml2YXRlIF9keW5hbWljUGFnZVNlcnZpY2U6IER5bmFtaWNQYWdlU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLl9keW5hbWljUGFnZVNlcnZpY2UuY29sbGFwc2VkXG4gICAgICAgICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoY29sbGFwc2VkKSA9PiB0aGlzLl9oYW5kbGVDb2xsYXBzZWRDaGFuZ2UoY29sbGFwc2VkKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogdG9nZ2xlcyB0aGUgc3RhdGUgb2YgdGhlIGhlYWRlciBhbmRcbiAgICAgKiBoYW5kbGVzIGV4cGFuZGVkL2NvbGxhcHNlZCBldmVudFxuICAgICAqL1xuICAgIHRvZ2dsZUNvbGxhcHNlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9waW5uZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5faGFuZGxlQ29sbGFwc2VkQ2hhbmdlKCF0aGlzLl9jb2xsYXBzZWQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBjbGljayBhY3Rpb24gb24gcGluIGJ1dHRvblxuICAgICAqL1xuICAgIHRvZ2dsZVBpbm5lZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcGlubmVkID0gIXRoaXMuX3Bpbm5lZDtcbiAgICAgICAgdGhpcy5fZHluYW1pY1BhZ2VTZXJ2aWNlLnBpbm5lZC5uZXh0KHRoaXMuX3Bpbm5lZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oYW5kbGVDb2xsYXBzZWRDaGFuZ2UoY29sbGFwc2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChjb2xsYXBzZWQgPT09IHRoaXMuX2NvbGxhcHNlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY29sbGFwc2VkID0gY29sbGFwc2VkO1xuICAgICAgICB0aGlzLl9keW5hbWljUGFnZVNlcnZpY2UuY29sbGFwc2VkLm5leHQoY29sbGFwc2VkKTtcbiAgICAgICAgdGhpcy5jb2xsYXBzZWRDaGFuZ2UuZW1pdCh0aGlzLl9jb2xsYXBzZWQpO1xuICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuX2R5bmFtaWNQYWdlU2VydmljZS5zdWJoZWFkZXJWaXNpYmlsaXR5Q2hhbmdlLm5leHQoKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmQtZHluYW1pYy1wYWdlX19jb2xsYXBzaWJsZS1oZWFkZXItY29udGFpbmVyXCI+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fY29sbGFwc2libGUtaGVhZGVyXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJoZWFkZXJBcmlhTGFiZWxcIlxuICAgICAgICBbYXR0ci5hcmlhLWhpZGRlbl09XCJjb2xsYXBzZWRcIlxuICAgICAgICBbYXR0ci5pZF09XCJjb2xsYXBzaWJsZUhlYWRlcklkXCJcbiAgICAgICAgcm9sZT1cInJlZ2lvblwiXG4gICAgICAgICNoZWFkZXJDb250ZW50XG4gICAgPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fY29sbGFwc2libGUtaGVhZGVyLXZpc2liaWxpdHktY29udGFpbmVyXCIgI3BpbmNvbGxhcHNlQ29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sbGFwc2libGVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC1keW5hbWljLXBhZ2VfX2NvbGxhcHNpYmxlLWhlYWRlci12aXNpYmlsaXR5LWNvbnRhaW5lci0tbGVmdC1ncmFkaWVudFwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiByb2xlPVwidG9vbGJhclwiIGNsYXNzPVwiZmQtZHluYW1pYy1wYWdlX19jb2xsYXBzaWJsZS1oZWFkZXItdmlzaWJpbGl0eS1jb250YWluZXItLWJ1dHRvbi1ncm91cFwiPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtZHluYW1pYy1wYWdlX19jb2xsYXBzZS1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBhcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiY29sbGFwc2VkID8gZXhwYW5kTGFiZWwgOiBjb2xsYXBzZUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiY29sbGFwc2VkID8gZXhwYW5kTGFiZWwgOiBjb2xsYXBzZUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCIhY29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCJpZFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVDb2xsYXBzZSgpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxpIFtzdHlsZS50cmFuc2Zvcm1dPVwiY29sbGFwc2VkID8gJycgOiAncm90YXRlKDE4MGRlZyknXCIgY2xhc3M9XCJzYXAtaWNvbi0tc2xpbS1hcnJvdy1kb3duXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtZHluYW1pYy1wYWdlX19waW4tYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2FyaWFMYWJlbF09XCJfcGlubmVkID8gdW5waW5BcmlhTGFiZWwgOiBwaW5BcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJfcGlubmVkID8gdW5waW5BcmlhTGFiZWwgOiBwaW5BcmlhTGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICBbdG9nZ2xlZF09XCJfcGlubmVkXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVBpbm5lZCgpXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJwaW5uYWJsZSAmJiAhY29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwic2FwLWljb24tLXB1c2hwaW4tb2ZmXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtZHluYW1pYy1wYWdlX19jb2xsYXBzaWJsZS1oZWFkZXItdmlzaWJpbGl0eS1jb250YWluZXItLXJpZ2h0LWdyYWRpZW50XCI+PC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
184
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9keW5hbWljLXBhZ2UvZHluYW1pYy1wYWdlLWhlYWRlci9zdWJoZWFkZXIvZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9keW5hbWljLXBhZ2UvZHluYW1pYy1wYWdlLWhlYWRlci9zdWJoZWFkZXIvZHluYW1pYy1wYWdlLXN1YmhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNqQixXQUFXLEVBQ1gsaUJBQWlCLEVBRWpCLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQWMsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckYsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7QUFFbEQsSUFBSSxzQkFBc0IsR0FBRyxDQUFDLENBQUM7QUFPL0IsTUFBTSxPQUFPLDZCQUE2QjtJQWV0Qzs7T0FFRztJQUNILElBQ0ksU0FBUyxDQUFDLFNBQWtCO1FBQzVCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQs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QUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsbUJBQW1CLENBQUMseUJBQXlCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUQsQ0FBQzs7MEhBbExRLDZCQUE2QixzSEF1RzFCLFdBQVc7OEdBdkdkLDZCQUE2Qix3a0JDN0IxQyx3aEVBMkNBOzJGRGRhLDZCQUE2QjtrQkFOekMsU0FBUzsrQkFDSSwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OzBCQXlHaEMsTUFBTTsyQkFBQyxXQUFXOzRDQWpHdkIsV0FBVztzQkFEVixLQUFLO2dCQVFOLFFBQVE7c0JBRFAsS0FBSztnQkFPRixTQUFTO3NCQURaLEtBQUs7Z0JBYU4sV0FBVztzQkFEVixLQUFLO2dCQU9OLGFBQWE7c0JBRFosS0FBSztnQkFNTixJQUFJO3NCQUZILEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsV0FBVztnQkFReEIsRUFBRTtzQkFGRCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLFNBQVM7Z0JBV3RCLGVBQWU7c0JBRGQsS0FBSztnQkFPTixZQUFZO3NCQURYLEtBQUs7Z0JBT04sY0FBYztzQkFEYixLQUFLO2dCQUtOLGVBQWU7c0JBRGQsTUFBTTtnQkFLUCxvQkFBb0I7c0JBRG5CLFNBQVM7dUJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBIb3N0QmluZGluZyxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5cbmltcG9ydCB7IER5bmFtaWNQYWdlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZHluYW1pYy1wYWdlLmNvbmZpZyc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9keW5hbWljLXBhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGlvblJlc29sdmVyLCBGZExhbmd1YWdlLCBGRF9MQU5HVUFHRSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5sZXQgZHluYW1pY1BhZ2VTdWJIZWFkZXJJZCA9IDA7XG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWR5bmFtaWMtcGFnZS1zdWJoZWFkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLXBhZ2Utc3ViaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNQYWdlU3ViaGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgLyoqXG4gICAgICogd2hldGhlciB0aGUgaGVhZGVyIGNhbiBiZSBjb2xsYXBzZWQuIFRydWUgYnkgZGVmYXVsdC4gSWYgc2V0IHRvIGZhbHNlLCBib3RoIHBpbi9jb2xsYXBzZSBidXR0b25zIGRpc2FwcGVhclxuICAgICAqIGFuZCB0aGUgaGVhZGVyIHN0YXlzIHZpc2libGVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbGxhcHNpYmxlID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIHdoZXRoZXIgdGhlIGhlYWRlciBzaG91bGQgYmUgYWxsb3dlZCB0byBiZSBwaW5uZWQgb3IgdW5waW5uZWQuIFdoZW4gc2V0LCB0aGUgcGluIGJ1dHRvbiBzaG93cyB1cC5cbiAgICAgKiBQaW5uaW5nIHRoZSBoZWFkZXIgd2lsbCBtYWtlIHRoZSBoZWFkZXIgc3RheSB2aXNpYmxlIGFuZCB0aGUgY29sbGFwc2UgYnV0dG9uKGlmIHByZXNlbnQpIHdpbGwgZGlzYXBwZWFyIHVudGlsIHVucGlubmVkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcGlubmFibGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIHRoZSBpbml0aWFsIHN0YXRlIG9mIHRoZSBoZWFkZXIuIFNldCB0byB0cnVlIGlmIGhlYWRlciBzaG91bGQgYmUgY29sbGFwc2VkLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGNvbGxhcHNlZChjb2xsYXBzZWQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5faGFuZGxlQ29sbGFwc2VkQ2hhbmdlKGNvbGxhcHNlZCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbGxhcHNlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbGxhcHNlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBUklBIGxhYmVsIGZvciBidXR0b24gd2hlbiB0aGUgaGVhZGVyIGlzIGNvbGxhcHNlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZXhwYW5kTGFiZWw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEFSSUEgbGFiZWwgZm9yIGJ1dHRvbiB3aGVuIHRoZSBoZWFkZXIgaXMgZXhwYW5kZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbGxhcHNlTGFiZWw6IHN0cmluZztcblxuICAgIC8qKiBIZWFkZXIgcm9sZSAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJylcbiAgICByb2xlID0gJ3JlZ2lvbic7XG5cbiAgICAvKipcbiAgICAgKiBpZCBmb3IgaGVhZGVyXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKVxuICAgIGlkID0gYGZkLWR5bmFtaWMtcGFnZS1oZWFkZXItaWQtJHtkeW5hbWljUGFnZVN1YkhlYWRlcklkKyt9YDtcblxuICAgIC8qKlxuICAgICAqIGlkIGZvciBjb2xsYXBzaWJsZSBoZWFkZXJcbiAgICAgKi9cbiAgICBjb2xsYXBzaWJsZUhlYWRlcklkID0gYCR7dGhpcy5pZH0tY29sbGFwc2libGVgO1xuICAgIC8qKlxuICAgICAqIGFyaWEgbGFiZWwgZm9yIGhlYWRlclxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgaGVhZGVyQXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogYXJpYSBsYWJlbCBmb3IgcGluIHN0YXRlIG9mIHBpbiBidXR0b25cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHBpbkFyaWFMYWJlbDogc3RyaW5nID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcucGluTGFiZWw7XG5cbiAgICAvKipcbiAgICAgKiBhcmlhIGxhYmVsIGZvciB1bnBpbiBzdGF0ZSBvZiBwaW4gYnV0dG9uXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB1bnBpbkFyaWFMYWJlbDogc3RyaW5nID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcudW5waW5MYWJlbDtcblxuICAgIC8qKiBDb2xsYXBzZS9FeHBhbmQgY2hhbmdlIGV2ZW50IHJhaXNlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNvbGxhcHNlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBSZWZlcmVuY2UgdG8gcGFnZSBoZWFkZXIgY29udGVudCAqL1xuICAgIEBWaWV3Q2hpbGQoJ3BpbmNvbGxhcHNlQ29udGFpbmVyJylcbiAgICBwaW5Db2xsYXBzZUNvbnRhaW5lcjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICAvKipcbiAgICAgKiB0cmFja2luZyBpZiBwaW4gYnV0dG9uIGlzIHBpbm5lZFxuICAgICAqL1xuICAgIF9waW5uZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiB0cmFja2luZyBleHBhbmQvY29sbGFwc2UgYnV0dG9uXG4gICAgICovXG4gICAgcHJpdmF0ZSBfY29sbGFwc2VkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RyYW5zbGF0aW9uUmVzb2x2ZXIgPSBuZXcgVHJhbnNsYXRpb25SZXNvbHZlcigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9sYW5ndWFnZTogRmRMYW5ndWFnZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJvdGVjdGVkIF9keW5hbWljUGFnZUNvbmZpZzogRHluYW1pY1BhZ2VDb25maWcsXG4gICAgICAgIHByaXZhdGUgX2R5bmFtaWNQYWdlU2VydmljZTogRHluYW1pY1BhZ2VTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KEZEX0xBTkdVQUdFKSBwcml2YXRlIHJlYWRvbmx5IF9sYW5ndWFnZSQ6IE9ic2VydmFibGU8RmRMYW5ndWFnZT5cbiAgICApIHtcbiAgICAgICAgdGhpcy5fZHluYW1pY1BhZ2VTZXJ2aWNlLmNvbGxhcHNlZFxuICAgICAgICAgICAgLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGNvbGxhcHNlZCkgPT4gdGhpcy5faGFuZGxlQ29sbGFwc2VkQ2hhbmdlKGNvbGxhcHNlZCkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9pbml0KCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGFzeW5jIF9pbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLl9sYW5ndWFnZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuX2xhbmd1YWdlJCk7XG4gICAgICAgIGlmICghdGhpcy5leHBhbmRMYWJlbCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnICYmIHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnLmV4cGFuZExhYmVsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5leHBhbmRMYWJlbCA9IHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnLmV4cGFuZExhYmVsO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmV4cGFuZExhYmVsID0gdGhpcy5fdHJhbnNsYXRpb25SZXNvbHZlci5yZXNvbHZlKHRoaXMuX2xhbmd1YWdlLCBgY29yZUR5bmFtaWNQYWdlLmV4cGFuZExhYmVsYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCF0aGlzLmNvbGxhcHNlTGFiZWwpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLl9keW5hbWljUGFnZUNvbmZpZyAmJiB0aGlzLl9keW5hbWljUGFnZUNvbmZpZy5jb2xsYXBzZUxhYmVsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb2xsYXBzZUxhYmVsID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcuY29sbGFwc2VMYWJlbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb2xsYXBzZUxhYmVsID0gdGhpcy5fdHJhbnNsYXRpb25SZXNvbHZlci5yZXNvbHZlKHRoaXMuX2xhbmd1YWdlLCBgY29yZUR5bmFtaWNQYWdlLmNvbGxhcHNlTGFiZWxgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMucGluQXJpYUxhYmVsKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5fZHluYW1pY1BhZ2VDb25maWcgJiYgdGhpcy5fZHluYW1pY1BhZ2VDb25maWcucGluTGFiZWwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBpbkFyaWFMYWJlbCA9IHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnLnBpbkxhYmVsO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnBpbkFyaWFMYWJlbCA9IHRoaXMuX3RyYW5zbGF0aW9uUmVzb2x2ZXIucmVzb2x2ZSh0aGlzLl9sYW5ndWFnZSwgYGNvcmVEeW5hbWljUGFnZS5waW5MYWJlbGApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy51bnBpbkFyaWFMYWJlbCkge1xuICAgICAgICAgICAgaWYgKHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnICYmIHRoaXMuX2R5bmFtaWNQYWdlQ29uZmlnLnVucGluTGFiZWwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVucGluQXJpYUxhYmVsID0gdGhpcy5fZHluYW1pY1BhZ2VDb25maWcudW5waW5MYWJlbDtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy51bnBpbkFyaWFMYWJlbCA9IHRoaXMuX3RyYW5zbGF0aW9uUmVzb2x2ZXIucmVzb2x2ZSh0aGlzLl9sYW5ndWFnZSwgYGNvcmVEeW5hbWljUGFnZS51bnBpbkxhYmVsYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIHRvZ2dsZXMgdGhlIHN0YXRlIG9mIHRoZSBoZWFkZXIgYW5kXG4gICAgICogaGFuZGxlcyBleHBhbmRlZC9jb2xsYXBzZWQgZXZlbnRcbiAgICAgKi9cbiAgICB0b2dnbGVDb2xsYXBzZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcGlubmVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX2hhbmRsZUNvbGxhcHNlZENoYW5nZSghdGhpcy5fY29sbGFwc2VkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogY2xpY2sgYWN0aW9uIG9uIHBpbiBidXR0b25cbiAgICAgKi9cbiAgICB0b2dnbGVQaW5uZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Bpbm5lZCA9ICF0aGlzLl9waW5uZWQ7XG4gICAgICAgIHRoaXMuX2R5bmFtaWNQYWdlU2VydmljZS5waW5uZWQubmV4dCh0aGlzLl9waW5uZWQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlQ29sbGFwc2VkQ2hhbmdlKGNvbGxhcHNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoY29sbGFwc2VkID09PSB0aGlzLl9jb2xsYXBzZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2NvbGxhcHNlZCA9IGNvbGxhcHNlZDtcbiAgICAgICAgdGhpcy5fZHluYW1pY1BhZ2VTZXJ2aWNlLmNvbGxhcHNlZC5uZXh0KGNvbGxhcHNlZCk7XG4gICAgICAgIHRoaXMuY29sbGFwc2VkQ2hhbmdlLmVtaXQodGhpcy5fY29sbGFwc2VkKTtcbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0aGlzLl9keW5hbWljUGFnZVNlcnZpY2Uuc3ViaGVhZGVyVmlzaWJpbGl0eUNoYW5nZS5uZXh0KCk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fY29sbGFwc2libGUtaGVhZGVyLWNvbnRhaW5lclwiPlxuICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJmZC1keW5hbWljLXBhZ2VfX2NvbGxhcHNpYmxlLWhlYWRlclwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiaGVhZGVyQXJpYUxhYmVsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1oaWRkZW5dPVwiY29sbGFwc2VkXCJcbiAgICAgICAgW2F0dHIuaWRdPVwiY29sbGFwc2libGVIZWFkZXJJZFwiXG4gICAgICAgIHJvbGU9XCJyZWdpb25cIlxuICAgICAgICAjaGVhZGVyQ29udGVudFxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmZC1keW5hbWljLXBhZ2VfX2NvbGxhcHNpYmxlLWhlYWRlci12aXNpYmlsaXR5LWNvbnRhaW5lclwiICNwaW5jb2xsYXBzZUNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbGxhcHNpYmxlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtZHluYW1pYy1wYWdlX19jb2xsYXBzaWJsZS1oZWFkZXItdmlzaWJpbGl0eS1jb250YWluZXItLWxlZnQtZ3JhZGllbnRcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgcm9sZT1cInRvb2xiYXJcIiBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fY29sbGFwc2libGUtaGVhZGVyLXZpc2liaWxpdHktY29udGFpbmVyLS1idXR0b24tZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fY29sbGFwc2UtYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1oYXNwb3B1cD1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cImNvbGxhcHNlZCA/IGV4cGFuZExhYmVsIDogY29sbGFwc2VMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImNvbGxhcHNlZCA/IGV4cGFuZExhYmVsIDogY29sbGFwc2VMYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiIWNvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtY29udHJvbHNdPVwiaWRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlQ29sbGFwc2UoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8aSBbc3R5bGUudHJhbnNmb3JtXT1cImNvbGxhcHNlZCA/ICcnIDogJ3JvdGF0ZSgxODBkZWcpJ1wiIGNsYXNzPVwic2FwLWljb24tLXNsaW0tYXJyb3ctZG93blwiPjwvaT5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fcGluLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiX3Bpbm5lZCA/IHVucGluQXJpYUxhYmVsIDogcGluQXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiX3Bpbm5lZCA/IHVucGluQXJpYUxhYmVsIDogcGluQXJpYUxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgW3RvZ2dsZWRdPVwiX3Bpbm5lZFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVQaW5uZWQoKVwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwicGlubmFibGUgJiYgIWNvbGxhcHNlZFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cInNhcC1pY29uLS1wdXNocGluLW9mZlwiPjwvaT5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZkLWR5bmFtaWMtcGFnZV9fY29sbGFwc2libGUtaGVhZGVyLXZpc2liaWxpdHktY29udGFpbmVyLS1yaWdodC1ncmFkaWVudFwiPjwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -4,24 +4,6 @@ import * as i0 from "@angular/core";
4
4
  * Default options for core dynamic-page
5
5
  */
6
6
  export class DynamicPageConfig {
7
- constructor() {
8
- /**
9
- * aria label for expand/collapse button when the Dynamic Page is collapsed
10
- */
11
- this.expandLabel = 'Expand Header';
12
- /**
13
- * aria label for expand/collapse button when the Dynamic Page is expanded
14
- */
15
- this.collapseLabel = 'Collapse Header';
16
- /**
17
- * aria label for pin button when the Dynamic Page should be pinned
18
- */
19
- this.pinLabel = 'Pin Header';
20
- /**
21
- * aria label for pin button when the Panel should be unpinned
22
- */
23
- this.unpinLabel = 'Unpin Header';
24
- }
25
7
  }
26
8
  DynamicPageConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicPageConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
27
9
  DynamicPageConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicPageConfig, providedIn: 'root' });
@@ -29,4 +11,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
29
11
  type: Injectable,
30
12
  args: [{ providedIn: 'root' }]
31
13
  }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1wYWdlLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2R5bmFtaWMtcGFnZS9keW5hbWljLXBhZ2UuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDOztHQUVHO0FBRUgsTUFBTSxPQUFPLGlCQUFpQjtJQUQ5QjtRQUVJOztXQUVHO1FBQ0gsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFFOUI7O1dBRUc7UUFDSCxrQkFBYSxHQUFHLGlCQUFpQixDQUFDO1FBRWxDOztXQUVHO1FBQ0gsYUFBUSxHQUFHLFlBQVksQ0FBQztRQUV4Qjs7V0FFRztRQUNILGVBQVUsR0FBRyxjQUFjLENBQUM7S0FDL0I7OzhHQXBCWSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQURKLE1BQU07MkZBQ25CLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogRGVmYXVsdCBvcHRpb25zIGZvciBjb3JlIGR5bmFtaWMtcGFnZVxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNQYWdlQ29uZmlnIHtcbiAgICAvKipcbiAgICAgKiBhcmlhIGxhYmVsIGZvciBleHBhbmQvY29sbGFwc2UgYnV0dG9uIHdoZW4gdGhlIER5bmFtaWMgUGFnZSBpcyBjb2xsYXBzZWRcbiAgICAgKi9cbiAgICBleHBhbmRMYWJlbCA9ICdFeHBhbmQgSGVhZGVyJztcblxuICAgIC8qKlxuICAgICAqIGFyaWEgbGFiZWwgZm9yIGV4cGFuZC9jb2xsYXBzZSBidXR0b24gd2hlbiB0aGUgRHluYW1pYyBQYWdlIGlzIGV4cGFuZGVkXG4gICAgICovXG4gICAgY29sbGFwc2VMYWJlbCA9ICdDb2xsYXBzZSBIZWFkZXInO1xuXG4gICAgLyoqXG4gICAgICogYXJpYSBsYWJlbCBmb3IgcGluIGJ1dHRvbiB3aGVuIHRoZSBEeW5hbWljIFBhZ2Ugc2hvdWxkIGJlIHBpbm5lZFxuICAgICAqL1xuICAgIHBpbkxhYmVsID0gJ1BpbiBIZWFkZXInO1xuXG4gICAgLyoqXG4gICAgICogYXJpYSBsYWJlbCBmb3IgcGluIGJ1dHRvbiB3aGVuIHRoZSBQYW5lbCBzaG91bGQgYmUgdW5waW5uZWRcbiAgICAgKi9cbiAgICB1bnBpbkxhYmVsID0gJ1VucGluIEhlYWRlcic7XG59XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1wYWdlLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2R5bmFtaWMtcGFnZS9keW5hbWljLXBhZ2UuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTNDOztHQUVHO0FBRUgsTUFBTSxPQUFPLGlCQUFpQjs7OEdBQWpCLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREosTUFBTTsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBEZWZhdWx0IG9wdGlvbnMgZm9yIGNvcmUgZHluYW1pYy1wYWdlXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgRHluYW1pY1BhZ2VDb25maWcge1xuICAgIC8qKlxuICAgICAqIGFyaWEgbGFiZWwgZm9yIGV4cGFuZC9jb2xsYXBzZSBidXR0b24gd2hlbiB0aGUgRHluYW1pYyBQYWdlIGlzIGNvbGxhcHNlZFxuICAgICAqL1xuICAgIGV4cGFuZExhYmVsOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBhcmlhIGxhYmVsIGZvciBleHBhbmQvY29sbGFwc2UgYnV0dG9uIHdoZW4gdGhlIER5bmFtaWMgUGFnZSBpcyBleHBhbmRlZFxuICAgICAqL1xuICAgIGNvbGxhcHNlTGFiZWw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIGFyaWEgbGFiZWwgZm9yIHBpbiBidXR0b24gd2hlbiB0aGUgRHluYW1pYyBQYWdlIHNob3VsZCBiZSBwaW5uZWRcbiAgICAgKi9cbiAgICBwaW5MYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogYXJpYSBsYWJlbCBmb3IgcGluIGJ1dHRvbiB3aGVuIHRoZSBQYW5lbCBzaG91bGQgYmUgdW5waW5uZWRcbiAgICAgKi9cbiAgICB1bnBpbkxhYmVsOiBzdHJpbmc7XG59XG4iXX0=
@@ -18,6 +18,7 @@ import { ContentDensityModule } from '@fundamental-ngx/core/content-density';
18
18
  import { ScrollbarModule } from '@fundamental-ngx/core/scrollbar';
19
19
  import { DynamicPageHeaderSubtitleDirective } from './directives/dynamic-page-header-subtitle.directive';
20
20
  import { DynamicPageHeaderTitleDirective } from './directives/dynamic-page-header-title.directive';
21
+ import { I18nModule } from '@fundamental-ngx/i18n';
21
22
  import * as i0 from "@angular/core";
22
23
  export class DynamicPageModule {
23
24
  }
@@ -39,7 +40,8 @@ DynamicPageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
39
40
  ContentDensityModule,
40
41
  ScrollbarModule,
41
42
  DynamicPageHeaderSubtitleDirective,
42
- DynamicPageHeaderTitleDirective], exports: [DynamicPageComponent,
43
+ DynamicPageHeaderTitleDirective,
44
+ I18nModule], exports: [DynamicPageComponent,
43
45
  DynamicPageHeaderComponent,
44
46
  DynamicPageGlobalActionsComponent,
45
47
  DynamicPageLayoutActionsComponent,
@@ -57,7 +59,8 @@ DynamicPageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versi
57
59
  PopoverModule,
58
60
  IgnoreClickOnSelectionModule,
59
61
  ContentDensityModule,
60
- ScrollbarModule] });
62
+ ScrollbarModule,
63
+ I18nModule] });
61
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DynamicPageModule, decorators: [{
62
65
  type: NgModule,
63
66
  args: [{
@@ -82,7 +85,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
82
85
  ContentDensityModule,
83
86
  ScrollbarModule,
84
87
  DynamicPageHeaderSubtitleDirective,
85
- DynamicPageHeaderTitleDirective
88
+ DynamicPageHeaderTitleDirective,
89
+ I18nModule
86
90
  ],
87
91
  exports: [
88
92
  DynamicPageComponent,
@@ -100,4 +104,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
100
104
  ]
101
105
  }]
102
106
  }] });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1wYWdlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2R5bmFtaWMtcGFnZS9keW5hbWljLXBhZ2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ2pILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUN0SCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7QUF5Q25HLE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixpQkFyQ3RCLG9CQUFvQjtRQUNwQiwwQkFBMEI7UUFDMUIsaUNBQWlDO1FBQ2pDLGlDQUFpQztRQUNqQyw2QkFBNkI7UUFDN0IsMkJBQTJCO1FBQzNCLDBCQUEwQjtRQUMxQixnQ0FBZ0M7UUFDaEMsMkJBQTJCO1FBQzNCLHFDQUFxQyxhQUdyQyxZQUFZO1FBQ1osWUFBWTtRQUNaLGFBQWE7UUFDYixhQUFhO1FBQ2IsNEJBQTRCO1FBQzVCLG9CQUFvQjtRQUNwQixlQUFlO1FBQ2Ysa0NBQWtDO1FBQ2xDLCtCQUErQixhQUcvQixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLGlDQUFpQztRQUNqQyxpQ0FBaUM7UUFDakMsNkJBQTZCO1FBQzdCLDJCQUEyQjtRQUMzQiwwQkFBMEI7UUFDMUIsZ0NBQWdDO1FBQ2hDLDJCQUEyQjtRQUMzQixxQ0FBcUM7UUFDckMsa0NBQWtDO1FBQ2xDLCtCQUErQjsrR0FHMUIsaUJBQWlCLFlBekJ0QixZQUFZO1FBQ1osWUFBWTtRQUNaLGFBQWE7UUFDYixhQUFhO1FBQ2IsNEJBQTRCO1FBQzVCLG9CQUFvQjtRQUNwQixlQUFlOzJGQW1CVixpQkFBaUI7a0JBdkM3QixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRTt3QkFDVixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyxpQ0FBaUM7d0JBQ2pDLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3dCQUMzQiwwQkFBMEI7d0JBQzFCLGdDQUFnQzt3QkFDaEMsMkJBQTJCO3dCQUMzQixxQ0FBcUM7cUJBQ3hDO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLDRCQUE0Qjt3QkFDNUIsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGtDQUFrQzt3QkFDbEMsK0JBQStCO3FCQUNsQztvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsb0JBQW9CO3dCQUNwQiwwQkFBMEI7d0JBQzFCLGlDQUFpQzt3QkFDakMsaUNBQWlDO3dCQUNqQyw2QkFBNkI7d0JBQzdCLDJCQUEyQjt3QkFDM0IsMEJBQTBCO3dCQUMxQixnQ0FBZ0M7d0JBQ2hDLDJCQUEyQjt3QkFDM0IscUNBQXFDO3dCQUNyQyxrQ0FBa0M7d0JBQ2xDLCtCQUErQjtxQkFDbEM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRHluYW1pY1BhZ2VDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLXBhZ2UtY29udGVudC9keW5hbWljLXBhZ2UtY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VGb290ZXJDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1mb290ZXIvZHluYW1pYy1wYWdlLWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VHbG9iYWxBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLXBhZ2UtaGVhZGVyL2FjdGlvbnMvZHluYW1pYy1wYWdlLWdsb2JhbC1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZUxheW91dEFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1oZWFkZXIvYWN0aW9ucy9keW5hbWljLXBhZ2UtbGF5b3V0LWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNQYWdlU3ViaGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLXBhZ2UtaGVhZGVyL3N1YmhlYWRlci9keW5hbWljLXBhZ2Utc3ViaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZUhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1wYWdlLWhlYWRlci9oZWFkZXIvZHluYW1pYy1wYWdlLWhlYWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQgeyBEeW5hbWljUGFnZVRpdGxlQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1wYWdlLWhlYWRlci9hY3Rpb25zL2R5bmFtaWMtcGFnZS10aXRsZS1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sYmFyTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3Rvb2xiYXInO1xuaW1wb3J0IHsgUG9wb3Zlck1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9wb3BvdmVyJztcbmltcG9ydCB7IER5bmFtaWNQYWdlV3JhcHBlckRpcmVjdGl2ZSB9IGZyb20gJy4vZHluYW1pYy1wYWdlLXdyYXBwZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IElnbm9yZUNsaWNrT25TZWxlY3Rpb25Nb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBEZXByZWNhdGVkRHluYW1pY1BhZ2VDb21wYWN0RGlyZWN0aXZlIH0gZnJvbSAnLi9kZXByZWNhdGVkLWR5bmFtaWMtcGFnZS1jb21wYWN0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eU1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9jb250ZW50LWRlbnNpdHknO1xuaW1wb3J0IHsgU2Nyb2xsYmFyTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3Njcm9sbGJhcic7XG5pbXBvcnQgeyBEeW5hbWljUGFnZUhlYWRlclN1YnRpdGxlRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2R5bmFtaWMtcGFnZS1oZWFkZXItc3VidGl0bGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IER5bmFtaWNQYWdlSGVhZGVyVGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHluYW1pYy1wYWdlLWhlYWRlci10aXRsZS5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBEeW5hbWljUGFnZUNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VIZWFkZXJDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlR2xvYmFsQWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VMYXlvdXRBY3Rpb25zQ29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZVN1YmhlYWRlckNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VDb250ZW50Q29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZUZvb3RlckNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VUaXRsZUNvbnRlbnRDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlV3JhcHBlckRpcmVjdGl2ZSxcbiAgICAgICAgRGVwcmVjYXRlZER5bmFtaWNQYWdlQ29tcGFjdERpcmVjdGl2ZVxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgVG9vbGJhck1vZHVsZSxcbiAgICAgICAgUG9wb3Zlck1vZHVsZSxcbiAgICAgICAgSWdub3JlQ2xpY2tPblNlbGVjdGlvbk1vZHVsZSxcbiAgICAgICAgQ29udGVudERlbnNpdHlNb2R1bGUsXG4gICAgICAgIFNjcm9sbGJhck1vZHVsZSxcbiAgICAgICAgRHluYW1pY1BhZ2VIZWFkZXJTdWJ0aXRsZURpcmVjdGl2ZSxcbiAgICAgICAgRHluYW1pY1BhZ2VIZWFkZXJUaXRsZURpcmVjdGl2ZVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBEeW5hbWljUGFnZUNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VIZWFkZXJDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlR2xvYmFsQWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VMYXlvdXRBY3Rpb25zQ29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZVN1YmhlYWRlckNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VDb250ZW50Q29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZUZvb3RlckNvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VUaXRsZUNvbnRlbnRDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlV3JhcHBlckRpcmVjdGl2ZSxcbiAgICAgICAgRGVwcmVjYXRlZER5bmFtaWNQYWdlQ29tcGFjdERpcmVjdGl2ZSxcbiAgICAgICAgRHluYW1pY1BhZ2VIZWFkZXJTdWJ0aXRsZURpcmVjdGl2ZSxcbiAgICAgICAgRHluYW1pY1BhZ2VIZWFkZXJUaXRsZURpcmVjdGl2ZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY1BhZ2VNb2R1bGUge31cbiJdfQ==
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1wYWdlLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2R5bmFtaWMtcGFnZS9keW5hbWljLXBhZ2UubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQ2pILE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUN0SCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNuRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7O0FBMENuRCxNQUFNLE9BQU8saUJBQWlCOzs4R0FBakIsaUJBQWlCOytHQUFqQixpQkFBaUIsaUJBdEN0QixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLGlDQUFpQztRQUNqQyxpQ0FBaUM7UUFDakMsNkJBQTZCO1FBQzdCLDJCQUEyQjtRQUMzQiwwQkFBMEI7UUFDMUIsZ0NBQWdDO1FBQ2hDLDJCQUEyQjtRQUMzQixxQ0FBcUMsYUFHckMsWUFBWTtRQUNaLFlBQVk7UUFDWixhQUFhO1FBQ2IsYUFBYTtRQUNiLDRCQUE0QjtRQUM1QixvQkFBb0I7UUFDcEIsZUFBZTtRQUNmLGtDQUFrQztRQUNsQywrQkFBK0I7UUFDL0IsVUFBVSxhQUdWLG9CQUFvQjtRQUNwQiwwQkFBMEI7UUFDMUIsaUNBQWlDO1FBQ2pDLGlDQUFpQztRQUNqQyw2QkFBNkI7UUFDN0IsMkJBQTJCO1FBQzNCLDBCQUEwQjtRQUMxQixnQ0FBZ0M7UUFDaEMsMkJBQTJCO1FBQzNCLHFDQUFxQztRQUNyQyxrQ0FBa0M7UUFDbEMsK0JBQStCOytHQUcxQixpQkFBaUIsWUExQnRCLFlBQVk7UUFDWixZQUFZO1FBQ1osYUFBYTtRQUNiLGFBQWE7UUFDYiw0QkFBNEI7UUFDNUIsb0JBQW9CO1FBQ3BCLGVBQWU7UUFHZixVQUFVOzJGQWlCTCxpQkFBaUI7a0JBeEM3QixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRTt3QkFDVixvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyxpQ0FBaUM7d0JBQ2pDLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3dCQUMzQiwwQkFBMEI7d0JBQzFCLGdDQUFnQzt3QkFDaEMsMkJBQTJCO3dCQUMzQixxQ0FBcUM7cUJBQ3hDO29CQUNELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixhQUFhO3dCQUNiLDRCQUE0Qjt3QkFDNUIsb0JBQW9CO3dCQUNwQixlQUFlO3dCQUNmLGtDQUFrQzt3QkFDbEMsK0JBQStCO3dCQUMvQixVQUFVO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDTCxvQkFBb0I7d0JBQ3BCLDBCQUEwQjt3QkFDMUIsaUNBQWlDO3dCQUNqQyxpQ0FBaUM7d0JBQ2pDLDZCQUE2Qjt3QkFDN0IsMkJBQTJCO3dCQUMzQiwwQkFBMEI7d0JBQzFCLGdDQUFnQzt3QkFDaEMsMkJBQTJCO3dCQUMzQixxQ0FBcUM7d0JBQ3JDLGtDQUFrQzt3QkFDbEMsK0JBQStCO3FCQUNsQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEeW5hbWljUGFnZUNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1jb250ZW50L2R5bmFtaWMtcGFnZS1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZUZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1wYWdlLWZvb3Rlci9keW5hbWljLXBhZ2UtZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZUdsb2JhbEFjdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1oZWFkZXIvYWN0aW9ucy9keW5hbWljLXBhZ2UtZ2xvYmFsLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNQYWdlTGF5b3V0QWN0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1wYWdlLWhlYWRlci9hY3Rpb25zL2R5bmFtaWMtcGFnZS1sYXlvdXQtYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VTdWJoZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2R5bmFtaWMtcGFnZS1oZWFkZXIvc3ViaGVhZGVyL2R5bmFtaWMtcGFnZS1zdWJoZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IER5bmFtaWNQYWdlSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLXBhZ2UtaGVhZGVyL2hlYWRlci9keW5hbWljLXBhZ2UtaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEeW5hbWljUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1wYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYnV0dG9uJztcbmltcG9ydCB7IER5bmFtaWNQYWdlVGl0bGVDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9keW5hbWljLXBhZ2UtaGVhZGVyL2FjdGlvbnMvZHluYW1pYy1wYWdlLXRpdGxlLWNvbnRlbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFRvb2xiYXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdG9vbGJhcic7XG5pbXBvcnQgeyBQb3BvdmVyTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3BvcG92ZXInO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VXcmFwcGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9keW5hbWljLXBhZ2Utd3JhcHBlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSWdub3JlQ2xpY2tPblNlbGVjdGlvbk1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IERlcHJlY2F0ZWREeW5hbWljUGFnZUNvbXBhY3REaXJlY3RpdmUgfSBmcm9tICcuL2RlcHJlY2F0ZWQtZHluYW1pYy1wYWdlLWNvbXBhY3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5TW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NvbnRlbnQtZGVuc2l0eSc7XG5pbXBvcnQgeyBTY3JvbGxiYXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2Nyb2xsYmFyJztcbmltcG9ydCB7IER5bmFtaWNQYWdlSGVhZGVyU3VidGl0bGVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZHluYW1pYy1wYWdlLWhlYWRlci1zdWJ0aXRsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRHluYW1pY1BhZ2VIZWFkZXJUaXRsZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9keW5hbWljLXBhZ2UtaGVhZGVyLXRpdGxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJMThuTW9kdWxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgRHluYW1pY1BhZ2VDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlSGVhZGVyQ29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZUdsb2JhbEFjdGlvbnNDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlTGF5b3V0QWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VTdWJoZWFkZXJDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlQ29udGVudENvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VGb290ZXJDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlVGl0bGVDb250ZW50Q29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgICAgIERlcHJlY2F0ZWREeW5hbWljUGFnZUNvbXBhY3REaXJlY3RpdmVcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBCdXR0b25Nb2R1bGUsXG4gICAgICAgIFRvb2xiYXJNb2R1bGUsXG4gICAgICAgIFBvcG92ZXJNb2R1bGUsXG4gICAgICAgIElnbm9yZUNsaWNrT25TZWxlY3Rpb25Nb2R1bGUsXG4gICAgICAgIENvbnRlbnREZW5zaXR5TW9kdWxlLFxuICAgICAgICBTY3JvbGxiYXJNb2R1bGUsXG4gICAgICAgIER5bmFtaWNQYWdlSGVhZGVyU3VidGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIER5bmFtaWNQYWdlSGVhZGVyVGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIEkxOG5Nb2R1bGVcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRHluYW1pY1BhZ2VDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlSGVhZGVyQ29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZUdsb2JhbEFjdGlvbnNDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlTGF5b3V0QWN0aW9uc0NvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VTdWJoZWFkZXJDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlQ29udGVudENvbXBvbmVudCxcbiAgICAgICAgRHluYW1pY1BhZ2VGb290ZXJDb21wb25lbnQsXG4gICAgICAgIER5bmFtaWNQYWdlVGl0bGVDb250ZW50Q29tcG9uZW50LFxuICAgICAgICBEeW5hbWljUGFnZVdyYXBwZXJEaXJlY3RpdmUsXG4gICAgICAgIERlcHJlY2F0ZWREeW5hbWljUGFnZUNvbXBhY3REaXJlY3RpdmUsXG4gICAgICAgIER5bmFtaWNQYWdlSGVhZGVyU3VidGl0bGVEaXJlY3RpdmUsXG4gICAgICAgIER5bmFtaWNQYWdlSGVhZGVyVGl0bGVEaXJlY3RpdmVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNQYWdlTW9kdWxlIHt9XG4iXX0=