barsa-develop-components 2.2.69 → 2.2.71

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.
@@ -40,11 +40,11 @@ export class LoginFormComponent extends FormBaseComponent {
40
40
  }));
41
41
  }
42
42
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LoginFormComponent, selector: "bdc-login-form", host: { listeners: { "keydown.enter": "onKeyEnter($event)" }, properties: { "class.desktopmode": "this._desktopmode" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBackgroundColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"], dependencies: [{ kind: "component", type: i1.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i1.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i2.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i2.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i2.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i3.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i3.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i5.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LoginFormComponent, selector: "bdc-login-form", host: { listeners: { "keydown.enter": "onKeyEnter($event)" }, properties: { "class.desktopmode": "this._desktopmode" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBaseColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"], dependencies: [{ kind: "component", type: i1.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i1.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i2.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i2.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i2.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i3.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i3.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i5.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
44
44
  }
45
45
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginFormComponent, decorators: [{
46
46
  type: Component,
47
- args: [{ selector: 'bdc-login-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], standalone: false, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBackgroundColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"] }]
47
+ args: [{ selector: 'bdc-login-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], standalone: false, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBaseColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"] }]
48
48
  }], propDecorators: { _desktopmode: [{
49
49
  type: HostBinding,
50
50
  args: ['class.desktopmode']
@@ -91,7 +91,10 @@ export class ServiceDeskHeaderComponent extends TilesViewerContainerComponent {
91
91
  if (event === null) {
92
92
  return;
93
93
  }
94
- if (event?.url !== '/servicedesk' && event?.url !== '/' && !this._disableIntersection) {
94
+ if (event?.url !== '/servicedesk' &&
95
+ event?.url !== '/' &&
96
+ event?.url.split('appgroupdialog').length < 2 &&
97
+ !this._disableIntersection) {
95
98
  this.prepareForm();
96
99
  }
97
100
  });
@@ -236,4 +239,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
236
239
  }], settings: [{
237
240
  type: Input
238
241
  }] } });
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlLWRlc2staGVhZGVyL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZS1kZXNrLWhlYWRlci9zZXJ2aWNlLWRlc2staGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUVqQixVQUFVLEVBQ1YsU0FBUyxFQUVULFlBQVksRUFHWixtQkFBbUIsRUFDbkIsS0FBSyxFQUNSLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFZLE1BQU0sdUJBQXVCLENBQUM7QUFFcEUsT0FBTyxFQUNILDZCQUE2QixFQUM3QixrQkFBa0IsRUFFbEIseUJBQXlCLEVBQzVCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7O0FBV3JCLE1BQU0sT0FBTywwQkFBMkIsU0FBUSw2QkFBNkI7SUE0QnpFLFlBQ2MsY0FBNkIsRUFDN0IsYUFBMkIsRUFDM0IsbUJBQXVDLEVBQ3ZDLFNBQW9CLEVBQ3RCLGlCQUFtQyxFQUNuQyxJQUF1QjtRQUUvQixLQUFLLENBQUMsY0FBYyxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBUGhELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBQzNCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUFDdkMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUN0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b25lbnQsXHJcbiAgICBPbkluaXQsXHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gICAgQWZ0ZXJWaWV3SW5pdCxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBSZW5kZXJlcjIsXHJcbiAgICBWaWV3Q2hpbGRyZW4sXHJcbiAgICBRdWVyeUxpc3QsXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIFJlbmRlcmVyU3R5bGVGbGFnczIsXHJcbiAgICBJbnB1dFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWaWV3cG9ydFNjcm9sbGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRhYlBhbmVsQ29tcG9uZW50LCBUYWJTaXplcyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XHJcbmltcG9ydCB7IE1ldGFvYmplY3REYXRhTW9kZWwsIFBvcnRhbFNlcnZpY2UsIEFiYnJldmF0aW9uRGV2aWNlU2l6ZSB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIFRpbGVzVmlld2VyQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVGlsZXNWaWV3ZXJTZXJ2aWNlLFxyXG4gICAgVGlsZXNTZXJ2aWNlLFxyXG4gICAgVGlsZXNWaWV3ZXJHcm91cENvbXBvbmVudFxyXG59IGZyb20gJ2JhcnNhLXRpbGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdiZGMtc2VydmljZS1kZXNrLWhlYWRlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zZXJ2aWNlLWRlc2staGVhZGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBwcm92aWRlcnM6IFtUaWxlc1ZpZXdlclNlcnZpY2VdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlcnZpY2VEZXNrSGVhZGVyQ29tcG9uZW50IGV4dGVuZHMgVGlsZXNWaWV3ZXJDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG4gICAgQFZpZXdDaGlsZCgnaGVhZGVyU3BhY2VIb2xkZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBoZWFkZXJTcGFjZUhvbGRlcjogRWxlbWVudFJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZCgnaGVhZGVyR3JpZCcsIHsgc3RhdGljOiB0cnVlIH0pIGhlYWRlckdyaWQ6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoJ2Fib3ZlU2VhcmNoJywgeyBzdGF0aWM6IHRydWUgfSkgYWJvdmVTZWFyY2g6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoJ3NlYXJjaEhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pIHNlYXJjaEhvbGRlcjogRWxlbWVudFJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZCgnbmF2SG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgbmF2SG9sZGVyOiBFbGVtZW50UmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCdhYm92ZUNvbnRlbnQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBhYm92ZUNvbnRlbnQ6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoJ2JnT3V0ZXJIb2xkZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBiZ091dGVySG9sZGVyOiBFbGVtZW50UmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCdjb250ZW50QW5kTmF2JywgeyBzdGF0aWM6IHRydWUgfSkgY29udGVudEFuZE5hdjogRWxlbWVudFJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZHJlbihUaWxlc1ZpZXdlckdyb3VwQ29tcG9uZW50LCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgdGlsZXNWaWV3ZXJHcm91cEVsTGlzdDogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xyXG4gICAgLy8gQEhvc3RCaW5kaW5nKCdjbGFzcy5wYWdlLWNvbnRlbnQnKSBwYWdlQ29udGVudENsYXNzID0gdHJ1ZTtcclxuXHJcbiAgICBAVmlld0NoaWxkcmVuKFRhYlBhbmVsQ29tcG9uZW50KSB0YWJQYW5lbENvbXBvbmVudHM6IFF1ZXJ5TGlzdDxUYWJQYW5lbENvbXBvbmVudD47XHJcbiAgICBASW5wdXQoKSBzZXR0aW5nczogU2VydmljZURlc2tIZWFkZXJTZXR0aW5nO1xyXG4gICAgc2VsZWN0ZWRUYWJJbmRleCA9IDA7XHJcbiAgICBoZWlnaHRPZlNwYWNlSG9sZGVyID0gODg7XHJcbiAgICB0YWJTaXplOiBUYWJTaXplcztcclxuICAgIHNlYXJjaFRlcm0kOiBPYnNlcnZhYmxlPHN0cmluZz47XHJcbiAgICBzZWFyY2hUZXJtID0gJyc7XHJcbiAgICBkZXZpY2VTaXplJDogT2JzZXJ2YWJsZTxBYmJyZXZhdGlvbkRldmljZVNpemU+O1xyXG4gICAgcHJpdmF0ZSBfZW5hYmxlU2Nyb2xsID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIF9kaXNhYmxlSW50ZXJzZWN0aW9uOiBib29sZWFuO1xyXG4gICAgcHJpdmF0ZSBfaXNGb3JtT3BlbmVkOiBib29sZWFuO1xyXG4gICAgcHJpdmF0ZSBfc3RpY2t5VG9wUG9zaXRpb24gPSA2NjtcclxuICAgIHByaXZhdGUgb2JzZXJ2ZXJMaXN0OiB7IGVsOiBhbnk7IG9ic2VydmVyOiBJbnRlcnNlY3Rpb25PYnNlcnZlciB9W10gPSBbXTtcclxuICAgIHByaXZhdGUgX2xhc3RTY3JvbGxQb3M6IG51bWJlcjtcclxuICAgIGFwcEdyb3VwczogYW55W10gPSBbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF90aWxlc1NlcnZpY2U6IFRpbGVzU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX3RpbGVzVmlld2VyU2VydmljZTogVGlsZXNWaWV3ZXJTZXJ2aWNlLFxyXG4gICAgICAgIHByb3RlY3RlZCBfcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgICAgICBwcml2YXRlIF92aWV3cG9ydFNjcm9sbGVyOiBWaWV3cG9ydFNjcm9sbGVyLFxyXG4gICAgICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcclxuICAgICkge1xyXG4gICAgICAgIHN1cGVyKF9wb3J0YWxTZXJ2aWNlLCBfdGlsZXNTZXJ2aWNlLCBfdGlsZXNWaWV3ZXJTZXJ2aWNlKTtcclxuICAgICAgICBjb25zdCByb290ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xyXG4gICAgICAgIHJvb3Quc3R5bGUuc2V0UHJvcGVydHkoJy0tYWJzb2x1dGUtcGFnZS10b3AnLCB0aGlzLl9zdGlja3lUb3BQb3NpdGlvbiArICdweCcpO1xyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnNlYXJjaFRlcm0kLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKHRlcm0pID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zZWFyY2hUZXJtID0gdGVybTtcclxuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmFwcFRpbGVHcm91cHMkLnN1YnNjcmliZSgoYXBwVGlsZUdyb3VwcykgPT4ge1xyXG4gICAgICAgICAgICBhcHBUaWxlR3JvdXBzLmZvckVhY2goKGMpID0+IHRoaXMuX3RpbGVzVmlld2VyU2VydmljZS5sb2FkQXBwR3JvdXAoYykpO1xyXG4gICAgICAgICAgICB0aGlzLmFwcEdyb3VwcyA9IGFwcFRpbGVHcm91cHM7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5uYXZIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3RvcCcsIHRoaXMuX3N0aWNreVRvcFBvc2l0aW9uICsgJ3B4Jyk7XHJcblxyXG4gICAgICAgIHRoaXMuc2V0R3JpZFRlbXBsYXRlUm93cyh0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIpO1xyXG4gICAgICAgIHRoaXMuZGV2aWNlU2l6ZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemUkO1xyXG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSQuc3Vic2NyaWJlKChjKSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBuZXdIZWlnaHQgPSB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXI7XHJcbiAgICAgICAgICAgIHRoaXMudGFiU2l6ZSA9IGM7XHJcbiAgICAgICAgICAgIGlmIChjID09PSAncycpIHtcclxuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDg4O1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICdtJykge1xyXG4gICAgICAgICAgICAgICAgbmV3SGVpZ2h0ID0gMjIwO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKGMgPT09ICdsJykge1xyXG4gICAgICAgICAgICAgICAgbmV3SGVpZ2h0ID0gMjUwO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbmV3SGVpZ2h0ID0gMzI1O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG5ld0hlaWdodCA9IDg4O1xyXG4gICAgICAgICAgICBpZiAodGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyICE9PSBuZXdIZWlnaHQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGVpZ2h0T2ZTcGFjZUhvbGRlciA9IG5ld0hlaWdodDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0R3JpZFRlbXBsYXRlUm93cyhuZXdIZWlnaHQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZGV2aWNlU2l6ZSA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZTtcclxuICAgICAgICBsZXQgc3RpY2t5VG9wUG9zaXRpb24gPSAyMDtcclxuICAgICAgICBpZiAoZGV2aWNlU2l6ZSA9PT0gJ3MnKSB7XHJcbiAgICAgICAgICAgIHN0aWNreVRvcFBvc2l0aW9uID0gNjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX3N0aWNreURvbSh0aGlzLmFib3ZlU2VhcmNoLm5hdGl2ZUVsZW1lbnQsIHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsIC1zdGlja3lUb3BQb3NpdGlvbiwgJ3N0aWNreScpO1xyXG4gICAgICAgIHRoaXMuX3N0aWNreURvbShcclxuICAgICAgICAgICAgdGhpcy5hYm92ZUNvbnRlbnQubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgdGhpcy5uYXZIb2xkZXIubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgLXRoaXMuX3N0aWNreVRvcFBvc2l0aW9uLFxyXG4gICAgICAgICAgICAnc3RpY2t5J1xyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5fc3RpY2t5RG9tKFxyXG4gICAgICAgICAgICB0aGlzLmFib3ZlQ29udGVudC5uYXRpdmVFbGVtZW50LFxyXG4gICAgICAgICAgICB0aGlzLmJnT3V0ZXJIb2xkZXIubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgLXRoaXMuX3N0aWNreVRvcFBvc2l0aW9uLFxyXG4gICAgICAgICAgICAnc3RpY2t5JyxcclxuICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5iZ091dGVySG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCB0aGlzLl9zdGlja3lUb3BQb3NpdGlvbiArICdweCcpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmJnT3V0ZXJIb2xkZXIubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsICcxMDAlJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuX3N0aWNreURvbShcclxuICAgICAgICAgICAgdGhpcy5hYm92ZVNlYXJjaC5uYXRpdmVFbGVtZW50LFxyXG4gICAgICAgICAgICB0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgLXN0aWNreVRvcFBvc2l0aW9uLFxyXG4gICAgICAgICAgICAnbmF2QW5kQ29udGVudF90YicsXHJcbiAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCwgJ2ZpcnN0Jyk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCwgJ2ZpcnN0JywgJ3RydWUnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2VuYWJsZVNjcm9sbCA9IHRydWU7XHJcbiAgICAgICAgfSwgMTAwMCk7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5uYXZpZ2F0aW9uU3RhcnQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2xhc3RTY3JvbGxQb3MgPSB3aW5kb3cuc2Nyb2xsWTtcclxuICAgICAgICAgICAgaWYgKGV2ZW50ID09PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKGV2ZW50Py51cmwgIT09ICcvc2VydmljZWRlc2snICYmIGV2ZW50Py51cmwgIT09ICcvJyAmJiAhdGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wcmVwYXJlRm9ybSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5uYXZpZ2F0aW9uRW5kJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICBldmVudCAhPT0gbnVsbCAmJlxyXG4gICAgICAgICAgICAgICAgKGV2ZW50Py51cmwgPT09ICcvc2VydmljZWRlc2snIHx8IGV2ZW50Py51cmwgPT09ICcvJyB8fCBldmVudC51cmxBZnRlclJlZGlyZWN0cyA9PT0gJy9zZXJ2aWNlZGVzaycpXHJcbiAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy51blByZXBhcmVGb3JtKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIG9uU2VhcmNoU3VibWl0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZUJ5VXJsKCdzZXJ2aWNlZGVzay9zZWFyY2g/dGVybT0nICsgdGhpcy5zZWFyY2hUZXJtKTtcclxuICAgICAgICAvLyB2YXIgc2VhcmNoTW8gPSBCYXJzYUFwaS5Cdy5SdW5CbE1ldGhvZCgnR2V0U2VhcmNoTW8nLCB0aGlzLnNlYXJjaFRlcm0pO1xyXG4gICAgICAgIC8vIEJhcnNhQXBpLkJ3LkZvcm0uU2hvdyh7IE1vOiBzZWFyY2hNbyB9KTtcclxuICAgIH1cclxuICAgIHByZXBhcmVGb3JtKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2Rpc2FibGVJbnRlcnNlY3Rpb24gPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuX2Nkci5kZXRhY2goKTtcclxuICAgICAgICB0aGlzLmRpc2Nvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpO1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdzdGlja3knKTtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCwgJ2hpZGUnKTtcclxuICAgICAgICB0aGlzLnZpc2libGVDb250ZW50KGZhbHNlKTtcclxuICAgICAgICBjb25zdCBmbGFncyA9IFJlbmRlcmVyU3R5bGVGbGFnczIuSW1wb3J0YW50O1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKGRvY3VtZW50LmJvZHksICdvdmVyZmxvdycsICdoaWRkZW4nLCBmbGFncyk7XHJcbiAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xyXG4gICAgfVxyXG4gICAgdW5QcmVwYXJlRm9ybSgpOiB2b2lkIHtcclxuICAgICAgICAvLyB0aGlzLnNldEhlaWdodFNlYXJjaEhvbGRlcih0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIpO1xyXG4gICAgICAgIHRoaXMudmlzaWJsZUNvbnRlbnQodHJ1ZSk7XHJcbiAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5zZWFyY2hIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3N0aWNreScpO1xyXG5cclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLnNlYXJjaEhvbGRlci5uYXRpdmVFbGVtZW50LCAnaGlkZScpO1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnaGlkZScpO1xyXG4gICAgICAgIGNvbnN0IGZsYWdzID0gUmVuZGVyZXJTdHlsZUZsYWdzMi5JbXBvcnRhbnQ7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUoZG9jdW1lbnQuYm9keSwgJ292ZXJmbG93JywgJ2F1dG8nLCBmbGFncyk7XHJcbiAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xyXG4gICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB0aGlzLl9jZHIucmVhdHRhY2goKTtcclxuICAgICAgICB0aGlzLl9kaXNhYmxlSW50ZXJzZWN0aW9uID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jb25uZWN0SW50ZXJzY3Rpb25PYnNlcnZlckxpc3QoKTtcclxuICAgIH1cclxuICAgIHNldEhlaWdodFNlYXJjaEhvbGRlcihoZWlnaHQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhlYWRlclNwYWNlSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBgJHtoZWlnaHR9cHhgKTtcclxuICAgIH1cclxuICAgIHZpc2libGVDb250ZW50KHZpc2libGU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmNvbnRlbnRBbmROYXYubmF0aXZlRWxlbWVudCwgJ2Rpc3BsYXknLCB2aXNpYmxlID8gJ2ZsZXgnIDogJ25vbmUnKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRHcmlkVGVtcGxhdGVSb3dzKGhlaWdodDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUoXHJcbiAgICAgICAgICAgIHRoaXMuaGVhZGVyR3JpZC5uYXRpdmVFbGVtZW50LFxyXG4gICAgICAgICAgICAnZ3JpZC10ZW1wbGF0ZS1yb3dzJyxcclxuICAgICAgICAgICAgYG1pbm1heCg3OHB4LCAxNSUpIDQ2cHggMzJweCAxZnIgYXV0byAxMiU7IGhlaWdodDoke2hlaWdodH1weGBcclxuICAgICAgICApO1xyXG4gICAgICAgIC8vIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuaGVhZGVyR3JpZC5uYXRpdmVFbGVtZW50LCAnYmFja2dyb3VuZC1jb2xvcicsIGByZWRgKTtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmhlYWRlclNwYWNlSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBgJHtoZWlnaHR9cHhgKTtcclxuICAgIH1cclxuICAgIG9uU2VsZWN0ZWRUYWJDaGFuZ2UzKHNlbGVjdGVkVGFiOiBUYWJQYW5lbENvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHRhYmxpc3RDbXAgPSAoc2VsZWN0ZWRUYWIgYXMgYW55KS5fdGFic0NvbXBvbmVudDtcclxuICAgICAgICBpZiAodGFibGlzdENtcCkge1xyXG4gICAgICAgICAgICB0YWJsaXN0Q21wLl9kaXNhYmxlU2Nyb2xsU3B5ID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zY3JvbGxUb1RvcCgpO1xyXG4gICAgICAgIGlmIChzZWxlY3RlZFRhYi5pZCA9PT0gJzAnKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgZWxlbWVudFJlZk9mc2VsZWN0ZWRUaWxlR3JvdXA6IEhUTUxFbGVtZW50ID0gdGhpcy50aWxlc1ZpZXdlckdyb3VwRWxMaXN0LmdldChcclxuICAgICAgICAgICAgTnVtYmVyKHNlbGVjdGVkVGFiLmlkKVxyXG4gICAgICAgICk/Lm5hdGl2ZUVsZW1lbnQ7XHJcblxyXG4gICAgICAgIGVsZW1lbnRSZWZPZnNlbGVjdGVkVGlsZUdyb3VwLnNjcm9sbEludG9WaWV3KHtcclxuICAgICAgICAgICAgYmxvY2s6ICdzdGFydCdcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgc2Nyb2xsVG9MYXN0UG9zKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3ZpZXdwb3J0U2Nyb2xsZXIuc2Nyb2xsVG9Qb3NpdGlvbihbMCwgdGhpcy5fbGFzdFNjcm9sbFBvc10pO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBzY3JvbGxUb1RvcCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fZW5hYmxlU2Nyb2xsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdwb3J0U2Nyb2xsZXIuc2Nyb2xsVG9Qb3NpdGlvbihbMCwgdGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyIC0gdGhpcy5fc3RpY2t5VG9wUG9zaXRpb25dKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIGRpc2Nvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9ic2VydmVyTGlzdC5mb3JFYWNoKChjKSA9PiBjLm9ic2VydmVyLmRpc2Nvbm5lY3QoKSk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIGNvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9ic2VydmVyTGlzdC5mb3JFYWNoKChjKSA9PiBjLm9ic2VydmVyLm9ic2VydmUoYy5lbCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3N0aWNreURvbShcclxuICAgICAgICBhYm92ZSxcclxuICAgICAgICBob2xkZXIsXHJcbiAgICAgICAgbWFyZ2luVG9wLFxyXG4gICAgICAgIGNsYXNzTmFtZSxcclxuICAgICAgICB2aXNpYmxlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkLFxyXG4gICAgICAgIGhpZGRlbkNhbGxCYWNrPzogKCkgPT4gdm9pZFxyXG4gICAgKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IChlbnRyaWVzKTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9kaXNhYmxlSW50ZXJzZWN0aW9uKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaWYgKCFlbnRyaWVzWzBdLmlzSW50ZXJzZWN0aW5nKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5hZGRDbGFzcyhob2xkZXIsIGNsYXNzTmFtZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHZpc2libGVDYWxsYmFjayA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICAgICAgICAgIHZpc2libGVDYWxsYmFjaygpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlQ2xhc3MoaG9sZGVyLCBjbGFzc05hbWUpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBoaWRkZW5DYWxsQmFjayA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICAgICAgICAgIGhpZGRlbkNhbGxCYWNrKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9O1xyXG4gICAgICAgIGNvbnN0IG9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgIHJvb3RNYXJnaW46IGAke21hcmdpblRvcH1weCAwcHggMHB4IDBweGAsXHJcbiAgICAgICAgICAgIHRocmVzaG9sZDogMC4xXHJcbiAgICAgICAgfTtcclxuICAgICAgICBjb25zdCBvYnNlcnZlciA9IG5ldyB3aW5kb3cuSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoaGFuZGxlciwgb3B0aW9ucyk7XHJcblxyXG4gICAgICAgIG9ic2VydmVyLm9ic2VydmUoYWJvdmUpO1xyXG4gICAgICAgIHRoaXMub2JzZXJ2ZXJMaXN0LnB1c2goeyBlbDogYWJvdmUsIG9ic2VydmVyIH0pO1xyXG4gICAgfVxyXG59XHJcblxyXG5pbnRlcmZhY2UgU2VydmljZURlc2tIZWFkZXJTZXR0aW5nIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XHJcbiAgICBIaWRlU2VhcmNoOiBib29sZWFuO1xyXG4gICAgSGlkZVRhYnM6IGJvb2xlYW47XHJcbn1cclxuIiwiPGRpdiBpZD1cImhlYWRlckdyaWRcIiBzdHlsZT1cImdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KDFweCwgMTUlKSA0OHB4IDMycHggMWZyIGF1dG8gMTIlOyBoZWlnaHQ6IDE0OHB4XCIgI2hlYWRlckdyaWQ+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29tcGFueUxvZ29Ib2xkZXJfYWJvdmVTZWFyY2hcIiAjYWJvdmVTZWFyY2g+PC9kaXY+XHJcbiAgICA8ZGl2IGlkPVwic2VhcmNoSG9sZGVyXCIgc3R5bGU9XCJncmlkLXJvdzogMlwiICNzZWFyY2hIb2xkZXI+XHJcbiAgICAgICAgPGZkLWlucHV0LWdyb3VwXHJcbiAgICAgICAgICAgIFtzdHlsZS5kaXNwbGF5XT1cInNldHRpbmdzPy5IaWRlU2VhcmNoID8gJ25vbmUnIDogbnVsbFwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiaW5wdXQtc2VhcmNoXCJcclxuICAgICAgICAgICAgY29udGVudERlbnNpdHk9XCJjb3p5XCJcclxuICAgICAgICAgICAgZmQtdG9vbGJhci1pdGVtXHJcbiAgICAgICAgICAgIHR5cGU9XCJzZWFyY2hcIlxyXG4gICAgICAgICAgICBnbHlwaD1cInNlYXJjaFwiXHJcbiAgICAgICAgICAgIFtnbHlwaEFyaWFMYWJlbF09XCInU2VhcmNoJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInU2VhcmNoJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIFtidXR0b25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmYWxzZVwiXHJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGVybVwiXHJcbiAgICAgICAgICAgIChhZGRPbkJ1dHRvbkNsaWNrZWQpPVwib25TZWFyY2hTdWJtaXQoKVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgIDwvZmQtaW5wdXQtZ3JvdXA+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgaWQ9XCJoZWFkZXJTcGFjZUhvbGRlclwiICNoZWFkZXJTcGFjZUhvbGRlcj5cclxuICAgIDxkaXYgaWQ9XCJiZ091dGVySG9sZGVyXCIgI2JnT3V0ZXJIb2xkZXI+XHJcbiAgICAgICAgPGRpdiBpZD1cImJnSW5uZXJIb2xkZXJcIiBzdHlsZT1cImhlaWdodDogMTAwdmhcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhY2tncm91bmRJbWFnZVwiIGlkPVwiYmFja2dyb3VuZEltYWdlXCI+XHJcbiAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwicGljdHVyZVwiIHNyYz1cIi9hc3NldHMvYmFjay5qcGdcIiBsb2FkaW5nPVwibGF6eVwiIC8+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cImJhY2tncm91bmRJbWFnZU92ZXJsYXlcIiBjbGFzcz1cIm92ZXJsYXlcIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IGlkPVwiY29udGVudEhvbGRlckFuZE5hdlwiIGZpcnN0PVwidHJ1ZVwiICNjb250ZW50QW5kTmF2IGZpbGxFbXB0eVNwYWNlIFtzZXRNaW5IZWlnaHRdPVwidHJ1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFib3ZlQ29udGVudFwiICNhYm92ZUNvbnRlbnQ+PC9kaXY+XHJcbiAgICA8ZGl2IGlkPVwiY29udGVudEhvbGRlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYXZcIiAjbmF2SG9sZGVyPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2LWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxyXG4gICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVuZGVyVGFiczsgY29udGV4dDogeyAkaW1wbGljaXQ6IChhcHBUaWxlR3JvdXBzJCB8IGFzeW5jKSEhIH1cIlxyXG4gICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibmF2X3N1cnJvZ2F0ZVwiIHN0eWxlPVwiaGVpZ2h0OiAxMHB4XCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtZmVlZFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInJlbmRlckdyb3VwczsgY29udGV4dDogeyAkaW1wbGljaXQ6IChhcHBUaWxlR3JvdXBzJCB8IGFzeW5jKSEhIH1cIlxyXG4gICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxuZy10ZW1wbGF0ZSAjcmVuZGVyVGFicyBsZXQtYXBwVGlsZUdyb3Vwcz5cclxuICAgIDxmZC10YWItbGlzdFxyXG4gICAgICAgIFtzaXplXT1cInRhYlNpemVcIlxyXG4gICAgICAgIFtjb2xsYXBzZU92ZXJmbG93XT1cInRhYlNpemUgPT09ICdzJyB8fCBhcHBUaWxlR3JvdXBzLmxlbmd0aCA+IDVcIlxyXG4gICAgICAgIFtleHBhbmRPdmVyZmxvd1RleHRdPVwiJ01vcmUnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAoc2VsZWN0ZWRUYWJDaGFuZ2UpPVwib25TZWxlY3RlZFRhYkNoYW5nZTMoJGV2ZW50KVwiXHJcbiAgICA+XHJcbiAgICAgICAgQGZvciAoYXBwVGlsZUdyb3VwIG9mIGFwcFRpbGVHcm91cHM7IHRyYWNrIGFwcFRpbGVHcm91cDsgbGV0IGkgPSAkaW5kZXgpIHtcclxuICAgICAgICA8ZmQtdGFiIFtpZF09XCInJyArIGlcIiBbdGl0bGVdPVwiYXBwVGlsZUdyb3VwLm5hdmlnYXRvclRpdGxlXCI+IDwvZmQtdGFiPlxyXG4gICAgICAgIH1cclxuICAgIDwvZmQtdGFiLWxpc3Q+XHJcbjwvbmctdGVtcGxhdGU+XHJcbjxuZy10ZW1wbGF0ZSAjcmVuZGVyR3JvdXBzIGxldC1hcHBUaWxlR3JvdXBzPlxyXG4gICAgQGZvciAoYXBwVGlsZUdyb3VwIG9mIGFwcFRpbGVHcm91cHM7IHRyYWNrIGFwcFRpbGVHcm91cDsgbGV0IGkgPSAkaW5kZXgpIHtcclxuICAgIDxidC10aWxlcy12aWV3ZXItZ3JvdXBcclxuICAgICAgICBbY2xhc3NdPVwiZGV2aWNlU2l6ZSQgfCBhc3luY1wiXHJcbiAgICAgICAgW2F0dHIuaW5kZXhdPVwiaVwiXHJcbiAgICAgICAgW2FwcFRpbGVHcm91cF09XCJhcHBUaWxlR3JvdXBcIlxyXG4gICAgICAgIFtlZGl0XT1cImZhbHNlXCJcclxuICAgICAgICBbc3RhY2tDb250ZW50XT1cInRydWVcIlxyXG4gICAgICAgIFtpc0FwcFRpbGVTdWJHcm91cF09XCJmYWxzZVwiXHJcbiAgICAgICAgW2RldmljZVNpemVdPVwiKGRldmljZVNpemUkIHwgYXN5bmMpISFcIlxyXG4gICAgPjwvYnQtdGlsZXMtdmlld2VyLWdyb3VwPlxyXG4gICAgfVxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
242
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1kZXZlbG9wLWNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlLWRlc2staGVhZGVyL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2EtZGV2ZWxvcC1jb21wb25lbnRzL3NyYy9saWIvc2VydmljZS1kZXNrLWhlYWRlci9zZXJ2aWNlLWRlc2staGVhZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUVqQixVQUFVLEVBQ1YsU0FBUyxFQUVULFlBQVksRUFHWixtQkFBbUIsRUFDbkIsS0FBSyxFQUNSLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLGlCQUFpQixFQUFZLE1BQU0sdUJBQXVCLENBQUM7QUFFcEUsT0FBTyxFQUNILDZCQUE2QixFQUM3QixrQkFBa0IsRUFFbEIseUJBQXlCLEVBQzVCLE1BQU0sYUFBYSxDQUFDOzs7Ozs7Ozs7O0FBV3JCLE1BQU0sT0FBTywwQkFBMkIsU0FBUSw2QkFBNkI7SUE0QnpFLFlBQ2MsY0FBNkIsRUFDN0IsYUFBMkIsRUFDM0IsbUJBQXVDLEVBQ3ZDLFNBQW9CLEVBQ3RCLGlCQUFtQyxFQUNuQyxJQUF1QjtRQUUvQixLQUFLLENBQUMsY0FBYyxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBUGhELG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBQzNCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBb0I7UUFDdkMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUN0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QyxpQkFBaUI7Z0JBQ3RCLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgT25Jbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgUmVuZGVyZXIyLFxyXG4gICAgVmlld0NoaWxkcmVuLFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBSZW5kZXJlclN0eWxlRmxhZ3MyLFxyXG4gICAgSW5wdXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVmlld3BvcnRTY3JvbGxlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBUYWJQYW5lbENvbXBvbmVudCwgVGFiU2l6ZXMgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5pbXBvcnQgeyBNZXRhb2JqZWN0RGF0YU1vZGVsLCBQb3J0YWxTZXJ2aWNlLCBBYmJyZXZhdGlvbkRldmljZVNpemUgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgICBUaWxlc1ZpZXdlckNvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFRpbGVzVmlld2VyU2VydmljZSxcclxuICAgIFRpbGVzU2VydmljZSxcclxuICAgIFRpbGVzVmlld2VyR3JvdXBDb21wb25lbnRcclxufSBmcm9tICdiYXJzYS10aWxlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYmRjLXNlcnZpY2UtZGVzay1oZWFkZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NlcnZpY2UtZGVzay1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VydmljZS1kZXNrLWhlYWRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgcHJvdmlkZXJzOiBbVGlsZXNWaWV3ZXJTZXJ2aWNlXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZXJ2aWNlRGVza0hlYWRlckNvbXBvbmVudCBleHRlbmRzIFRpbGVzVmlld2VyQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoJ2hlYWRlclNwYWNlSG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgaGVhZGVyU3BhY2VIb2xkZXI6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoJ2hlYWRlckdyaWQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBoZWFkZXJHcmlkOiBFbGVtZW50UmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCdhYm92ZVNlYXJjaCcsIHsgc3RhdGljOiB0cnVlIH0pIGFib3ZlU2VhcmNoOiBFbGVtZW50UmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCdzZWFyY2hIb2xkZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBzZWFyY2hIb2xkZXI6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGQoJ25hdkhvbGRlcicsIHsgc3RhdGljOiB0cnVlIH0pIG5hdkhvbGRlcjogRWxlbWVudFJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZCgnYWJvdmVDb250ZW50JywgeyBzdGF0aWM6IHRydWUgfSkgYWJvdmVDb250ZW50OiBFbGVtZW50UmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCdiZ091dGVySG9sZGVyJywgeyBzdGF0aWM6IHRydWUgfSkgYmdPdXRlckhvbGRlcjogRWxlbWVudFJlZjxhbnk+O1xyXG4gICAgQFZpZXdDaGlsZCgnY29udGVudEFuZE5hdicsIHsgc3RhdGljOiB0cnVlIH0pIGNvbnRlbnRBbmROYXY6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBWaWV3Q2hpbGRyZW4oVGlsZXNWaWV3ZXJHcm91cENvbXBvbmVudCwgeyByZWFkOiBFbGVtZW50UmVmIH0pIHRpbGVzVmlld2VyR3JvdXBFbExpc3Q6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcclxuICAgIC8vIEBIb3N0QmluZGluZygnY2xhc3MucGFnZS1jb250ZW50JykgcGFnZUNvbnRlbnRDbGFzcyA9IHRydWU7XHJcblxyXG4gICAgQFZpZXdDaGlsZHJlbihUYWJQYW5lbENvbXBvbmVudCkgdGFiUGFuZWxDb21wb25lbnRzOiBRdWVyeUxpc3Q8VGFiUGFuZWxDb21wb25lbnQ+O1xyXG4gICAgQElucHV0KCkgc2V0dGluZ3M6IFNlcnZpY2VEZXNrSGVhZGVyU2V0dGluZztcclxuICAgIHNlbGVjdGVkVGFiSW5kZXggPSAwO1xyXG4gICAgaGVpZ2h0T2ZTcGFjZUhvbGRlciA9IDg4O1xyXG4gICAgdGFiU2l6ZTogVGFiU2l6ZXM7XHJcbiAgICBzZWFyY2hUZXJtJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gICAgc2VhcmNoVGVybSA9ICcnO1xyXG4gICAgZGV2aWNlU2l6ZSQ6IE9ic2VydmFibGU8QWJicmV2YXRpb25EZXZpY2VTaXplPjtcclxuICAgIHByaXZhdGUgX2VuYWJsZVNjcm9sbCA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfZGlzYWJsZUludGVyc2VjdGlvbjogYm9vbGVhbjtcclxuICAgIHByaXZhdGUgX2lzRm9ybU9wZW5lZDogYm9vbGVhbjtcclxuICAgIHByaXZhdGUgX3N0aWNreVRvcFBvc2l0aW9uID0gNjY7XHJcbiAgICBwcml2YXRlIG9ic2VydmVyTGlzdDogeyBlbDogYW55OyBvYnNlcnZlcjogSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgfVtdID0gW107XHJcbiAgICBwcml2YXRlIF9sYXN0U2Nyb2xsUG9zOiBudW1iZXI7XHJcbiAgICBhcHBHcm91cHM6IGFueVtdID0gW107XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxyXG4gICAgICAgIHByb3RlY3RlZCBfdGlsZXNTZXJ2aWNlOiBUaWxlc1NlcnZpY2UsXHJcbiAgICAgICAgcHJvdGVjdGVkIF90aWxlc1ZpZXdlclNlcnZpY2U6IFRpbGVzVmlld2VyU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICAgICAgcHJpdmF0ZSBfdmlld3BvcnRTY3JvbGxlcjogVmlld3BvcnRTY3JvbGxlcixcclxuICAgICAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcihfcG9ydGFsU2VydmljZSwgX3RpbGVzU2VydmljZSwgX3RpbGVzVmlld2VyU2VydmljZSk7XHJcbiAgICAgICAgY29uc3Qgcm9vdCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcclxuICAgICAgICByb290LnN0eWxlLnNldFByb3BlcnR5KCctLWFic29sdXRlLXBhZ2UtdG9wJywgdGhpcy5fc3RpY2t5VG9wUG9zaXRpb24gKyAncHgnKTtcclxuICAgIH1cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS5zZWFyY2hUZXJtJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCh0ZXJtKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VhcmNoVGVybSA9IHRlcm07XHJcbiAgICAgICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5hcHBUaWxlR3JvdXBzJC5zdWJzY3JpYmUoKGFwcFRpbGVHcm91cHMpID0+IHtcclxuICAgICAgICAgICAgYXBwVGlsZUdyb3Vwcy5mb3JFYWNoKChjKSA9PiB0aGlzLl90aWxlc1ZpZXdlclNlcnZpY2UubG9hZEFwcEdyb3VwKGMpKTtcclxuICAgICAgICAgICAgdGhpcy5hcHBHcm91cHMgPSBhcHBUaWxlR3JvdXBzO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMubmF2SG9sZGVyLm5hdGl2ZUVsZW1lbnQsICd0b3AnLCB0aGlzLl9zdGlja3lUb3BQb3NpdGlvbiArICdweCcpO1xyXG5cclxuICAgICAgICB0aGlzLnNldEdyaWRUZW1wbGF0ZVJvd3ModGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyKTtcclxuICAgICAgICB0aGlzLmRldmljZVNpemUkID0gdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJDtcclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemUkLnN1YnNjcmliZSgoYykgPT4ge1xyXG4gICAgICAgICAgICBsZXQgbmV3SGVpZ2h0ID0gdGhpcy5oZWlnaHRPZlNwYWNlSG9sZGVyO1xyXG4gICAgICAgICAgICB0aGlzLnRhYlNpemUgPSBjO1xyXG4gICAgICAgICAgICBpZiAoYyA9PT0gJ3MnKSB7XHJcbiAgICAgICAgICAgICAgICBuZXdIZWlnaHQgPSA4ODtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnbScpIHtcclxuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDIyMDtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChjID09PSAnbCcpIHtcclxuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDI1MDtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIG5ld0hlaWdodCA9IDMyNTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBuZXdIZWlnaHQgPSA4ODtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaGVpZ2h0T2ZTcGFjZUhvbGRlciAhPT0gbmV3SGVpZ2h0KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIgPSBuZXdIZWlnaHQ7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldEdyaWRUZW1wbGF0ZVJvd3MobmV3SGVpZ2h0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGRldmljZVNpemUgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmRldmljZVNpemU7XHJcbiAgICAgICAgbGV0IHN0aWNreVRvcFBvc2l0aW9uID0gMjA7XHJcbiAgICAgICAgaWYgKGRldmljZVNpemUgPT09ICdzJykge1xyXG4gICAgICAgICAgICBzdGlja3lUb3BQb3NpdGlvbiA9IDYwO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9zdGlja3lEb20odGhpcy5hYm92ZVNlYXJjaC5uYXRpdmVFbGVtZW50LCB0aGlzLnNlYXJjaEhvbGRlci5uYXRpdmVFbGVtZW50LCAtc3RpY2t5VG9wUG9zaXRpb24sICdzdGlja3knKTtcclxuICAgICAgICB0aGlzLl9zdGlja3lEb20oXHJcbiAgICAgICAgICAgIHRoaXMuYWJvdmVDb250ZW50Lm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgIHRoaXMubmF2SG9sZGVyLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgIC10aGlzLl9zdGlja3lUb3BQb3NpdGlvbixcclxuICAgICAgICAgICAgJ3N0aWNreSdcclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuX3N0aWNreURvbShcclxuICAgICAgICAgICAgdGhpcy5hYm92ZUNvbnRlbnQubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgdGhpcy5iZ091dGVySG9sZGVyLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgIC10aGlzLl9zdGlja3lUb3BQb3NpdGlvbixcclxuICAgICAgICAgICAgJ3N0aWNreScsXHJcbiAgICAgICAgICAgICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuYmdPdXRlckhvbGRlci5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgdGhpcy5fc3RpY2t5VG9wUG9zaXRpb24gKyAncHgnKTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5iZ091dGVySG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCAnMTAwJScpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLl9zdGlja3lEb20oXHJcbiAgICAgICAgICAgIHRoaXMuYWJvdmVTZWFyY2gubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgdGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgIC1zdGlja3lUb3BQb3NpdGlvbixcclxuICAgICAgICAgICAgJ25hdkFuZENvbnRlbnRfdGInLFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdmaXJzdCcpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdmaXJzdCcsICd0cnVlJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9lbmFibGVTY3JvbGwgPSB0cnVlO1xyXG4gICAgICAgIH0sIDEwMDApO1xyXG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UubmF2aWdhdGlvblN0YXJ0JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChldmVudCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9sYXN0U2Nyb2xsUG9zID0gd2luZG93LnNjcm9sbFk7XHJcbiAgICAgICAgICAgIGlmIChldmVudCA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgIGV2ZW50Py51cmwgIT09ICcvc2VydmljZWRlc2snICYmXHJcbiAgICAgICAgICAgICAgICBldmVudD8udXJsICE9PSAnLycgJiZcclxuICAgICAgICAgICAgICAgIGV2ZW50Py51cmwuc3BsaXQoJ2FwcGdyb3VwZGlhbG9nJykubGVuZ3RoIDwgMiAmJlxyXG4gICAgICAgICAgICAgICAgIXRoaXMuX2Rpc2FibGVJbnRlcnNlY3Rpb25cclxuICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnByZXBhcmVGb3JtKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLm5hdmlnYXRpb25FbmQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgIGV2ZW50ICE9PSBudWxsICYmXHJcbiAgICAgICAgICAgICAgICAoZXZlbnQ/LnVybCA9PT0gJy9zZXJ2aWNlZGVzaycgfHwgZXZlbnQ/LnVybCA9PT0gJy8nIHx8IGV2ZW50LnVybEFmdGVyUmVkaXJlY3RzID09PSAnL3NlcnZpY2VkZXNrJylcclxuICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnVuUHJlcGFyZUZvcm0oKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgb25TZWFyY2hTdWJtaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlQnlVcmwoJ3NlcnZpY2VkZXNrL3NlYXJjaD90ZXJtPScgKyB0aGlzLnNlYXJjaFRlcm0pO1xyXG4gICAgICAgIC8vIHZhciBzZWFyY2hNbyA9IEJhcnNhQXBpLkJ3LlJ1bkJsTWV0aG9kKCdHZXRTZWFyY2hNbycsIHRoaXMuc2VhcmNoVGVybSk7XHJcbiAgICAgICAgLy8gQmFyc2FBcGkuQncuRm9ybS5TaG93KHsgTW86IHNlYXJjaE1vIH0pO1xyXG4gICAgfVxyXG4gICAgcHJlcGFyZUZvcm0oKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZGlzYWJsZUludGVyc2VjdGlvbiA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5fY2RyLmRldGFjaCgpO1xyXG4gICAgICAgIHRoaXMuZGlzY29ubmVjdEludGVyc2N0aW9uT2JzZXJ2ZXJMaXN0KCk7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5zZWFyY2hIb2xkZXIubmF0aXZlRWxlbWVudCwgJ3N0aWNreScpO1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnaGlkZScpO1xyXG4gICAgICAgIHRoaXMudmlzaWJsZUNvbnRlbnQoZmFsc2UpO1xyXG4gICAgICAgIGNvbnN0IGZsYWdzID0gUmVuZGVyZXJTdHlsZUZsYWdzMi5JbXBvcnRhbnQ7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUoZG9jdW1lbnQuYm9keSwgJ292ZXJmbG93JywgJ2hpZGRlbicsIGZsYWdzKTtcclxuICAgICAgICB0aGlzLnNjcm9sbFRvVG9wKCk7XHJcbiAgICB9XHJcbiAgICB1blByZXBhcmVGb3JtKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIHRoaXMuc2V0SGVpZ2h0U2VhcmNoSG9sZGVyKHRoaXMuaGVpZ2h0T2ZTcGFjZUhvbGRlcik7XHJcbiAgICAgICAgdGhpcy52aXNpYmxlQ29udGVudCh0cnVlKTtcclxuICAgICAgICAvLyB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLnNlYXJjaEhvbGRlci5uYXRpdmVFbGVtZW50LCAnc3RpY2t5Jyk7XHJcblxyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuc2VhcmNoSG9sZGVyLm5hdGl2ZUVsZW1lbnQsICdoaWRlJyk7XHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5jb250ZW50QW5kTmF2Lm5hdGl2ZUVsZW1lbnQsICdoaWRlJyk7XHJcbiAgICAgICAgY29uc3QgZmxhZ3MgPSBSZW5kZXJlclN0eWxlRmxhZ3MyLkltcG9ydGFudDtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5ib2R5LCAnb3ZlcmZsb3cnLCAnYXV0bycsIGZsYWdzKTtcclxuICAgICAgICB0aGlzLnNjcm9sbFRvVG9wKCk7XHJcbiAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIHRoaXMuX2Nkci5yZWF0dGFjaCgpO1xyXG4gICAgICAgIHRoaXMuX2Rpc2FibGVJbnRlcnNlY3Rpb24gPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmNvbm5lY3RJbnRlcnNjdGlvbk9ic2VydmVyTGlzdCgpO1xyXG4gICAgfVxyXG4gICAgc2V0SGVpZ2h0U2VhcmNoSG9sZGVyKGhlaWdodCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuaGVhZGVyU3BhY2VIb2xkZXIubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2hlaWdodH1weGApO1xyXG4gICAgfVxyXG4gICAgdmlzaWJsZUNvbnRlbnQodmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuY29udGVudEFuZE5hdi5uYXRpdmVFbGVtZW50LCAnZGlzcGxheScsIHZpc2libGUgPyAnZmxleCcgOiAnbm9uZScpO1xyXG4gICAgfVxyXG5cclxuICAgIHNldEdyaWRUZW1wbGF0ZVJvd3MoaGVpZ2h0OiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShcclxuICAgICAgICAgICAgdGhpcy5oZWFkZXJHcmlkLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgICdncmlkLXRlbXBsYXRlLXJvd3MnLFxyXG4gICAgICAgICAgICBgbWlubWF4KDc4cHgsIDE1JSkgNDZweCAzMnB4IDFmciBhdXRvIDEyJTsgaGVpZ2h0OiR7aGVpZ2h0fXB4YFxyXG4gICAgICAgICk7XHJcbiAgICAgICAgLy8gdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5oZWFkZXJHcmlkLm5hdGl2ZUVsZW1lbnQsICdiYWNrZ3JvdW5kLWNvbG9yJywgYHJlZGApO1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHRoaXMuaGVhZGVyU3BhY2VIb2xkZXIubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGAke2hlaWdodH1weGApO1xyXG4gICAgfVxyXG4gICAgb25TZWxlY3RlZFRhYkNoYW5nZTMoc2VsZWN0ZWRUYWI6IFRhYlBhbmVsQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdGFibGlzdENtcCA9IChzZWxlY3RlZFRhYiBhcyBhbnkpLl90YWJzQ29tcG9uZW50O1xyXG4gICAgICAgIGlmICh0YWJsaXN0Q21wKSB7XHJcbiAgICAgICAgICAgIHRhYmxpc3RDbXAuX2Rpc2FibGVTY3JvbGxTcHkgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnNjcm9sbFRvVG9wKCk7XHJcbiAgICAgICAgaWYgKHNlbGVjdGVkVGFiLmlkID09PSAnMCcpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjb25zdCBlbGVtZW50UmVmT2ZzZWxlY3RlZFRpbGVHcm91cDogSFRNTEVsZW1lbnQgPSB0aGlzLnRpbGVzVmlld2VyR3JvdXBFbExpc3QuZ2V0KFxyXG4gICAgICAgICAgICBOdW1iZXIoc2VsZWN0ZWRUYWIuaWQpXHJcbiAgICAgICAgKT8ubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICAgICAgZWxlbWVudFJlZk9mc2VsZWN0ZWRUaWxlR3JvdXAuc2Nyb2xsSW50b1ZpZXcoe1xyXG4gICAgICAgICAgICBibG9jazogJ3N0YXJ0J1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBzY3JvbGxUb0xhc3RQb3MoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdmlld3BvcnRTY3JvbGxlci5zY3JvbGxUb1Bvc2l0aW9uKFswLCB0aGlzLl9sYXN0U2Nyb2xsUG9zXSk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHNjcm9sbFRvVG9wKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLl9lbmFibGVTY3JvbGwpIHtcclxuICAgICAgICAgICAgdGhpcy5fdmlld3BvcnRTY3JvbGxlci5zY3JvbGxUb1Bvc2l0aW9uKFswLCB0aGlzLmhlaWdodE9mU3BhY2VIb2xkZXIgLSB0aGlzLl9zdGlja3lUb3BQb3NpdGlvbl0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHByaXZhdGUgZGlzY29ubmVjdEludGVyc2N0aW9uT2JzZXJ2ZXJMaXN0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub2JzZXJ2ZXJMaXN0LmZvckVhY2goKGMpID0+IGMub2JzZXJ2ZXIuZGlzY29ubmVjdCgpKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgY29ubmVjdEludGVyc2N0aW9uT2JzZXJ2ZXJMaXN0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub2JzZXJ2ZXJMaXN0LmZvckVhY2goKGMpID0+IGMub2JzZXJ2ZXIub2JzZXJ2ZShjLmVsKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc3RpY2t5RG9tKFxyXG4gICAgICAgIGFib3ZlLFxyXG4gICAgICAgIGhvbGRlcixcclxuICAgICAgICBtYXJnaW5Ub3AsXHJcbiAgICAgICAgY2xhc3NOYW1lLFxyXG4gICAgICAgIHZpc2libGVDYWxsYmFjaz86ICgpID0+IHZvaWQsXHJcbiAgICAgICAgaGlkZGVuQ2FsbEJhY2s/OiAoKSA9PiB2b2lkXHJcbiAgICApOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBoYW5kbGVyID0gKGVudHJpZXMpOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuX2Rpc2FibGVJbnRlcnNlY3Rpb24pIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoIWVudHJpZXNbMF0uaXNJbnRlcnNlY3RpbmcpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKGhvbGRlciwgY2xhc3NOYW1lKTtcclxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgdmlzaWJsZUNhbGxiYWNrID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJsZUNhbGxiYWNrKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyhob2xkZXIsIGNsYXNzTmFtZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGhpZGRlbkNhbGxCYWNrID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGlkZGVuQ2FsbEJhY2soKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHtcclxuICAgICAgICAgICAgcm9vdE1hcmdpbjogYCR7bWFyZ2luVG9wfXB4IDBweCAwcHggMHB4YCxcclxuICAgICAgICAgICAgdGhyZXNob2xkOiAwLjFcclxuICAgICAgICB9O1xyXG4gICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IHdpbmRvdy5JbnRlcnNlY3Rpb25PYnNlcnZlcihoYW5kbGVyLCBvcHRpb25zKTtcclxuXHJcbiAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShhYm92ZSk7XHJcbiAgICAgICAgdGhpcy5vYnNlcnZlckxpc3QucHVzaCh7IGVsOiBhYm92ZSwgb2JzZXJ2ZXIgfSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmludGVyZmFjZSBTZXJ2aWNlRGVza0hlYWRlclNldHRpbmcgZXh0ZW5kcyBNZXRhb2JqZWN0RGF0YU1vZGVsIHtcclxuICAgIEhpZGVTZWFyY2g6IGJvb2xlYW47XHJcbiAgICBIaWRlVGFiczogYm9vbGVhbjtcclxufVxyXG4iLCI8ZGl2IGlkPVwiaGVhZGVyR3JpZFwiIHN0eWxlPVwiZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtaW5tYXgoMXB4LCAxNSUpIDQ4cHggMzJweCAxZnIgYXV0byAxMiU7IGhlaWdodDogMTQ4cHhcIiAjaGVhZGVyR3JpZD5cclxuICAgIDxkaXYgY2xhc3M9XCJjb21wYW55TG9nb0hvbGRlcl9hYm92ZVNlYXJjaFwiICNhYm92ZVNlYXJjaD48L2Rpdj5cclxuICAgIDxkaXYgaWQ9XCJzZWFyY2hIb2xkZXJcIiBzdHlsZT1cImdyaWQtcm93OiAyXCIgI3NlYXJjaEhvbGRlcj5cclxuICAgICAgICA8ZmQtaW5wdXQtZ3JvdXBcclxuICAgICAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwic2V0dGluZ3M/LkhpZGVTZWFyY2ggPyAnbm9uZScgOiBudWxsXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJpbnB1dC1zZWFyY2hcIlxyXG4gICAgICAgICAgICBjb250ZW50RGVuc2l0eT1cImNvenlcIlxyXG4gICAgICAgICAgICBmZC10b29sYmFyLWl0ZW1cclxuICAgICAgICAgICAgdHlwZT1cInNlYXJjaFwiXHJcbiAgICAgICAgICAgIGdseXBoPVwic2VhcmNoXCJcclxuICAgICAgICAgICAgW2dseXBoQXJpYUxhYmVsXT1cIidTZWFyY2gnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTZWFyY2gnIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgW2J1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZhbHNlXCJcclxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXJtXCJcclxuICAgICAgICAgICAgKGFkZE9uQnV0dG9uQ2xpY2tlZCk9XCJvblNlYXJjaFN1Ym1pdCgpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgPC9mZC1pbnB1dC1ncm91cD5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuPGRpdiBpZD1cImhlYWRlclNwYWNlSG9sZGVyXCIgI2hlYWRlclNwYWNlSG9sZGVyPlxyXG4gICAgPGRpdiBpZD1cImJnT3V0ZXJIb2xkZXJcIiAjYmdPdXRlckhvbGRlcj5cclxuICAgICAgICA8ZGl2IGlkPVwiYmdJbm5lckhvbGRlclwiIHN0eWxlPVwiaGVpZ2h0OiAxMDB2aFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFja2dyb3VuZEltYWdlXCIgaWQ9XCJiYWNrZ3JvdW5kSW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJwaWN0dXJlXCIgc3JjPVwiL2Fzc2V0cy9iYWNrLmpwZ1wiIGxvYWRpbmc9XCJsYXp5XCIgLz5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGlkPVwiYmFja2dyb3VuZEltYWdlT3ZlcmxheVwiIGNsYXNzPVwib3ZlcmxheVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgaWQ9XCJjb250ZW50SG9sZGVyQW5kTmF2XCIgZmlyc3Q9XCJ0cnVlXCIgI2NvbnRlbnRBbmROYXYgZmlsbEVtcHR5U3BhY2UgW3NldE1pbkhlaWdodF09XCJ0cnVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYWJvdmVDb250ZW50XCIgI2Fib3ZlQ29udGVudD48L2Rpdj5cclxuICAgIDxkaXYgaWQ9XCJjb250ZW50SG9sZGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdlwiICNuYXZIb2xkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYXYtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZW5kZXJUYWJzOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogKGFwcFRpbGVHcm91cHMkIHwgYXN5bmMpISEgfVwiXHJcbiAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYXZfc3Vycm9nYXRlXCIgc3R5bGU9XCJoZWlnaHQ6IDEwcHhcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1mZWVkXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXJcclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVuZGVyR3JvdXBzOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogKGFwcFRpbGVHcm91cHMkIHwgYXN5bmMpISEgfVwiXHJcbiAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuPG5nLXRlbXBsYXRlICNyZW5kZXJUYWJzIGxldC1hcHBUaWxlR3JvdXBzPlxyXG4gICAgPGZkLXRhYi1saXN0XHJcbiAgICAgICAgW3NpemVdPVwidGFiU2l6ZVwiXHJcbiAgICAgICAgW2NvbGxhcHNlT3ZlcmZsb3ddPVwidGFiU2l6ZSA9PT0gJ3MnIHx8IGFwcFRpbGVHcm91cHMubGVuZ3RoID4gNVwiXHJcbiAgICAgICAgW2V4cGFuZE92ZXJmbG93VGV4dF09XCInTW9yZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgIChzZWxlY3RlZFRhYkNoYW5nZSk9XCJvblNlbGVjdGVkVGFiQ2hhbmdlMygkZXZlbnQpXCJcclxuICAgID5cclxuICAgICAgICBAZm9yIChhcHBUaWxlR3JvdXAgb2YgYXBwVGlsZUdyb3VwczsgdHJhY2sgYXBwVGlsZUdyb3VwOyBsZXQgaSA9ICRpbmRleCkge1xyXG4gICAgICAgIDxmZC10YWIgW2lkXT1cIicnICsgaVwiIFt0aXRsZV09XCJhcHBUaWxlR3JvdXAubmF2aWdhdG9yVGl0bGVcIj4gPC9mZC10YWI+XHJcbiAgICAgICAgfVxyXG4gICAgPC9mZC10YWItbGlzdD5cclxuPC9uZy10ZW1wbGF0ZT5cclxuPG5nLXRlbXBsYXRlICNyZW5kZXJHcm91cHMgbGV0LWFwcFRpbGVHcm91cHM+XHJcbiAgICBAZm9yIChhcHBUaWxlR3JvdXAgb2YgYXBwVGlsZUdyb3VwczsgdHJhY2sgYXBwVGlsZUdyb3VwOyBsZXQgaSA9ICRpbmRleCkge1xyXG4gICAgPGJ0LXRpbGVzLXZpZXdlci1ncm91cFxyXG4gICAgICAgIFtjbGFzc109XCJkZXZpY2VTaXplJCB8IGFzeW5jXCJcclxuICAgICAgICBbYXR0ci5pbmRleF09XCJpXCJcclxuICAgICAgICBbYXBwVGlsZUdyb3VwXT1cImFwcFRpbGVHcm91cFwiXHJcbiAgICAgICAgW2VkaXRdPVwiZmFsc2VcIlxyXG4gICAgICAgIFtzdGFja0NvbnRlbnRdPVwidHJ1ZVwiXHJcbiAgICAgICAgW2lzQXBwVGlsZVN1Ykdyb3VwXT1cImZhbHNlXCJcclxuICAgICAgICBbZGV2aWNlU2l6ZV09XCIoZGV2aWNlU2l6ZSQgfCBhc3luYykhIVwiXHJcbiAgICA+PC9idC10aWxlcy12aWV3ZXItZ3JvdXA+XHJcbiAgICB9XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -959,11 +959,11 @@ class LoginFormComponent extends FormBaseComponent {
959
959
  }));
960
960
  }
961
961
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
962
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LoginFormComponent, selector: "bdc-login-form", host: { listeners: { "keydown.enter": "onKeyEnter($event)" }, properties: { "class.desktopmode": "this._desktopmode" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBackgroundColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"], dependencies: [{ kind: "component", type: i2$1.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i2$1.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i4$1.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i4$1.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i4$1.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i3$6.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i3$6.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i1$1.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
962
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LoginFormComponent, selector: "bdc-login-form", host: { listeners: { "keydown.enter": "onKeyEnter($event)" }, properties: { "class.desktopmode": "this._desktopmode" } }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBaseColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"], dependencies: [{ kind: "component", type: i2$1.LyLayoutContainerOfRootComponent, selector: "bsu-ly-layout-container-of-root" }, { kind: "component", type: i2$1.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "component", type: i4$1.DynamicSideContentComponent, selector: "fd-dynamic-side-content", inputs: ["position", "size", "id"] }, { kind: "component", type: i4$1.DynamicSideContentSideComponent, selector: "fd-dynamic-side-content-side", inputs: ["id"] }, { kind: "component", type: i4$1.DynamicSideContentMainComponent, selector: "fd-dynamic-side-content-main", inputs: ["id"] }, { kind: "component", type: i3$6.LayoutGridComponent, selector: "fd-layout-grid, [fdLayoutGrid]", inputs: ["class", "noGap", "noHorizontalGap", "noVerticalGap"] }, { kind: "directive", type: i3$6.LayoutGridColDirective, selector: "[fd-layout-grid-col], [fdLayoutGridCol]", inputs: ["fdLayoutGridCol", "colGrow", "colMd", "colLg", "colXl", "colOffset", "colOffsetMd", "colOffsetLg", "colOffsetXl", "class"] }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$1.PictureFieldSourcePipe, name: "picFieldSrc" }, { kind: "pipe", type: i1$1.ControlUiPipe, name: "controlUi" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
963
963
  }
964
964
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginFormComponent, decorators: [{
965
965
  type: Component,
966
- args: [{ selector: 'bdc-login-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], standalone: false, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBackgroundColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"] }]
966
+ args: [{ selector: 'bdc-login-form', changeDetection: ChangeDetectionStrategy.OnPush, providers: [FormPanelService], standalone: false, template: "@if (mo$ | async; as mo) { @if (mo.IsLogging) {\r\n<bsu-mask></bsu-mask>\r\n} @if ((size$ | async) === 'sm') {\r\n<fd-layout-grid [class.mobile]=\"isMobile\">\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n <div [fdLayoutGridCol]=\"10\">\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n [class.desktopMode]=\"!(isMobile === true)\"\r\n ></bsu-ly-layout-container-of-root>\r\n </div>\r\n <div [fdLayoutGridCol]=\"1\"></div>\r\n</fd-layout-grid>\r\n} @else {\r\n<fd-dynamic-side-content [size]=\"(size$ | async)!!\">\r\n <fd-dynamic-side-content-side>\r\n <bsu-ly-layout-container-of-root\r\n [config]=\"layout94$ | async\"\r\n [isPanel]=\"false\"\r\n [isRoot]=\"true\"\r\n ></bsu-ly-layout-container-of-root>\r\n </fd-dynamic-side-content-side>\r\n <fd-dynamic-side-content-main>\r\n <!-- <ng-container *ngIf=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94 as layoutConfig\">\r\n <bsu-layout-control\r\n [caption]=\"'\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647'\"\r\n [config]=\"layoutConfig\"\r\n [showLabel]=\"false\"\r\n [inlineEdit]=\"true\"\r\n ></bsu-layout-control>\r\n </ng-container> -->\r\n @if ('\u0639\u06A9\u0633 \u067E\u0633 \u0632\u0645\u06CC\u0646\u0647' | controlUi: layout94; as layoutConfig) {\r\n <div\r\n id=\"bgLogin\"\r\n [style.backgroundImage]=\"\r\n 'url(' +\r\n (mo.Background?.FileId | picFieldSrc: 'PictureFileInfo':null:layoutConfig.FieldUi.Setting.FieldDefId) +\r\n ')'\r\n \"\r\n ></div>\r\n }\r\n </fd-dynamic-side-content-main>\r\n</fd-dynamic-side-content>\r\n} }\r\n", styles: ["@charset \"UTF-8\";:host{display:block;background-color:var(--sapBaseColor)}:host ::ng-deep bsu-ly-simple-label{text-align:center}:host ::ng-deep bsu-ly-simple-label:nth-of-type(1){margin-top:15px}:host ::ng-deep bsu-ui-picture-file{text-align:center}:host ::ng-deep .wrap-content>.container-field{max-width:100%!important}fd-dynamic-side-content{min-height:100vh}fd-dynamic-side-content-side{box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f}bsu-ly-layout-container-of-root{padding:0 1rem;box-sizing:border-box;display:flex;align-items:center;height:100%}#bgLogin{width:100%;height:100%;background-position:center;background-size:cover;background-repeat:no-repeat}@media (max-width: 599px){:host ::ng-deep bsu-layout-control{min-width:auto!important}:host ::ng-deep bsu-ly-layout-container-of-root{padding:0}}@media (max-height: 670px){:host.desktopmode bsu-ly-layout-container-of-root{padding:0}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-ly-empty-space{display:none}:host.desktopmode bsu-ly-layout-container-of-root ::ng-deep bsu-layout-control[caption=\\644\\648\\6af\\648]{display:none}}fd-layout-grid.mobile{overflow:auto;height:100vh}\n"] }]
967
967
  }], propDecorators: { _desktopmode: [{
968
968
  type: HostBinding,
969
969
  args: ['class.desktopmode']
@@ -1052,7 +1052,10 @@ class ServiceDeskHeaderComponent extends TilesViewerContainerComponent {
1052
1052
  if (event === null) {
1053
1053
  return;
1054
1054
  }
1055
- if (event?.url !== '/servicedesk' && event?.url !== '/' && !this._disableIntersection) {
1055
+ if (event?.url !== '/servicedesk' &&
1056
+ event?.url !== '/' &&
1057
+ event?.url.split('appgroupdialog').length < 2 &&
1058
+ !this._disableIntersection) {
1056
1059
  this.prepareForm();
1057
1060
  }
1058
1061
  });