barsa-sap-ui 2.0.105 → 2.0.107

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/esm2022/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +1 -1
  2. package/esm2022/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +2 -2
  3. package/esm2022/lib/barsa-sap-ui.module.mjs +216 -215
  4. package/esm2022/lib/barsa-search-form/barsa-search-form.component.mjs +1 -1
  5. package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +1 -1
  6. package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +2 -2
  7. package/esm2022/lib/card-item/card-item.component.mjs +1 -1
  8. package/esm2022/lib/card-view-content/card-view-content.component.mjs +1 -1
  9. package/esm2022/lib/constants.mjs +2 -2
  10. package/esm2022/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +8 -6
  11. package/esm2022/lib/index.mjs +3 -1
  12. package/esm2022/lib/layout-actions/layout-actions.component.mjs +3 -3
  13. package/esm2022/lib/layout-control/layout-control.component.mjs +4 -4
  14. package/esm2022/lib/list-item/list-item.component.mjs +1 -1
  15. package/esm2022/lib/ly-simple-label/ly-simple-label.component.mjs +2 -2
  16. package/esm2022/lib/ui-button/ui-button.component.mjs +3 -3
  17. package/esm2022/lib/ui-check-box/ui-check-box.component.mjs +8 -3
  18. package/esm2022/lib/ui-date-time/ui-date-time.component.mjs +6 -5
  19. package/esm2022/lib/ui-form-panel/ui-form-panel.component.mjs +3 -3
  20. package/esm2022/lib/ui-map/ui-map.component.mjs +52 -0
  21. package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +2 -2
  22. package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +3 -3
  23. package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +3 -3
  24. package/esm2022/lib/ui-tinymce/ui-tinymce.component.mjs +3 -3
  25. package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +32 -5
  26. package/esm2022/lib/ulv-toolbar/ulv-toolbar.component.mjs +29 -6
  27. package/esm2022/public-api.mjs +2 -1
  28. package/fesm2022/barsa-sap-ui.mjs +306 -205
  29. package/fesm2022/barsa-sap-ui.mjs.map +1 -1
  30. package/lib/barsa-sap-ui.module.d.ts +228 -227
  31. package/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.d.ts +1 -1
  32. package/lib/index.d.ts +1 -1
  33. package/lib/ui-check-box/ui-check-box.component.d.ts +1 -0
  34. package/lib/ui-map/ui-map.component.d.ts +18 -0
  35. package/lib/ulv-context-menu/ulv-context-menu.component.d.ts +8 -1
  36. package/lib/ulv-toolbar/ulv-toolbar.component.d.ts +6 -2
  37. package/package.json +1 -1
  38. package/public-api.d.ts +1 -0
@@ -21,7 +21,7 @@ export class BarsaCardRowPayamComponent extends BaseViewItemPropsComponent {
21
21
  this.content = this._domSanitizer.bypassSecurityTrustHtml(`<div style="color:black;font-size:12pt;font-family:Calibri,Helvetica,sans-serif;">okkkk</div>`);
22
22
  }
23
23
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaCardRowPayamComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
24
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaCardRowPayamComponent, selector: "bsu-barsa-card-row-payam", usesInheritance: true, ngImport: i0, template: "<fd-card cardType=\"object\" class=\"docs-flex-item-margin\">\n <fd-card-header (click)=\"hideContent = !hideContent\" bodyClick style=\"border-bottom: none\">\n <fd-card-main-header>\n <fd-avatar\n image=\"http://picsum.photos/id/1018/400\"\n [circle]=\"true\"\n size=\"s\"\n ariaLabel=\"avatar image\"\n title=\"avatar image\"\n ></fd-avatar>\n <h2 fd-card-title>\n <div style=\"display: flex; column-gap: 1.275rem\">\n <span>\u0631\u0627\u0647\u0628\u0631 \u0633\u06CC\u0633\u062A\u0645</span>\n <fd-object-attribute style=\"direction: ltr\">\u062E\u0648\u0627\u0646\u062F\u0647 \u062F\u0631: 1402/12/28 14:20 </fd-object-attribute>\n <span fd-object-status status=\"negative\" label=\"\u062E\u06CC\u0644\u06CC \u0645\u0647\u0645\" aria-label=\"\u062E\u06CC\u0644\u06CC \u0645\u0647\u0645\"></span>\n </div>\n <div style=\"position: absolute; left: 1.2rem; top: 50%\"><fd-icon [glyph]=\"'attachment'\"></fd-icon></div>\n </h2>\n\n <h3 fd-card-subtitle>\n @if (hideContent) {\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n } @if (!hideContent) {\n <ng-container *ngTemplateOutlet=\"toTpl\"></ng-container>\n }\n </h3>\n @if (hideContent) {\n <span fd-card-counter><div style=\"direction: ltr\">1402/12/28 14:20</div> </span>\n } @if (!hideContent) {\n <span\n fd-card-counter\n ulvContextMenu\n [menuItems]=\"contextMenuItems\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n ></span>\n }\n </fd-card-main-header>\n </fd-card-header>\n @if (!hideContent) {\n <fd-card-content>\n <ng-container *ngTemplateOutlet=\"attachmentsTpl\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n </fd-card-content>\n }\n</fd-card>\n\n<ng-template #contentTpl>\n <div style=\"padding-top: 0.5rem; margin-top: 1rem; border-top: 1px solid #ccc\" [innerHtml]=\"content\"></div>\n</ng-template>\n\n<ng-template #toTpl>\n <div>To: \u0645\u0646</div>\n <div>Cc: \u0645\u0646</div>\n</ng-template>\n<ng-template #attachmentsTpl>\n <div class=\"file-viewer-attachments\">\n @for (file of mo.F5.Files; track file) { @if (!file.IsDeleted) {\n <bsu-file-viewer-popover\n [file]=\"file\"\n [files]=\"mo.F5.Files\"\n [deviceSize]=\"deviceSize\"\n [canDownload]=\"true\"\n [disableRemove]=\"true\"\n [fdType]=\"'transparent'\"\n ></bsu-file-viewer-popover>\n } }\n </div>\n @if (mo.F5.Files.length > 1) {\n <button\n fd-button\n [fdType]=\"'transparent'\"\n [label]=\"'Download' | bbbTranslate: 'All'\"\n [glyph]=\"'download'\"\n downloadFiles\n [files]=\"mo.F5.Files\"\n ></button>\n }\n</ng-template>\n", styles: [":host{display:block;width:100%;height:100%;padding-bottom:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "component", type: i3.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.CardComponent, selector: "fd-card", inputs: ["badge", "badgeIcon", "badgeColor", "badgeColorSecondary", "badgeStatus", "badgeAriaLabel", "secondBadge", "secondBadgeIcon", "secondBadgeColor", "secondBadgeColorSecondary", "secondBadgeStatus", "secondBadgeAriaLabel", "isLoading", "cardType", "id", "ariaRoledescription", "ariaDescription", "ariaLabel", "role", "interactive", "selected", "ariaPosinset", "ariaSetsize"], outputs: ["ariaPosinsetChange", "ariaSetsizeChange"] }, { kind: "component", type: i5.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i5.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "component", type: i5.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i5.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i5.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "directive", type: i5.CardCounterDirective, selector: "[fd-card-counter]", inputs: ["status"] }, { kind: "component", type: i6.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i8.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode"], outputs: ["commandClick"] }, { kind: "component", type: i9.FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "deviceSize", "canDownload", "disableRemove", "fdType"], outputs: ["remove"] }, { kind: "directive", type: i10.DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
24
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: BarsaCardRowPayamComponent, selector: "bsu-barsa-card-row-payam", usesInheritance: true, ngImport: i0, template: "<fd-card cardType=\"object\" class=\"docs-flex-item-margin\">\n <fd-card-header (click)=\"hideContent = !hideContent\" bodyClick style=\"border-bottom: none\">\n <fd-card-main-header>\n <fd-avatar\n image=\"http://picsum.photos/id/1018/400\"\n [circle]=\"true\"\n size=\"s\"\n ariaLabel=\"avatar image\"\n title=\"avatar image\"\n ></fd-avatar>\n <h2 fd-card-title>\n <div style=\"display: flex; column-gap: 1.275rem\">\n <span>\u0631\u0627\u0647\u0628\u0631 \u0633\u06CC\u0633\u062A\u0645</span>\n <fd-object-attribute style=\"direction: ltr\">\u062E\u0648\u0627\u0646\u062F\u0647 \u062F\u0631: 1402/12/28 14:20 </fd-object-attribute>\n <span fd-object-status status=\"negative\" label=\"\u062E\u06CC\u0644\u06CC \u0645\u0647\u0645\" aria-label=\"\u062E\u06CC\u0644\u06CC \u0645\u0647\u0645\"></span>\n </div>\n <div style=\"position: absolute; left: 1.2rem; top: 50%\"><fd-icon [glyph]=\"'attachment'\"></fd-icon></div>\n </h2>\n\n <h3 fd-card-subtitle>\n @if (hideContent) {\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n } @if (!hideContent) {\n <ng-container *ngTemplateOutlet=\"toTpl\"></ng-container>\n }\n </h3>\n @if (hideContent) {\n <span fd-card-counter><div style=\"direction: ltr\">1402/12/28 14:20</div> </span>\n } @if (!hideContent) {\n <span\n fd-card-counter\n ulvContextMenu\n [menuItems]=\"contextMenuItems\"\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\n ></span>\n }\n </fd-card-main-header>\n </fd-card-header>\n @if (!hideContent) {\n <fd-card-content>\n <ng-container *ngTemplateOutlet=\"attachmentsTpl\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTpl\"></ng-container>\n </fd-card-content>\n }\n</fd-card>\n\n<ng-template #contentTpl>\n <div style=\"padding-top: 0.5rem; margin-top: 1rem; border-top: 1px solid #ccc\" [innerHtml]=\"content\"></div>\n</ng-template>\n\n<ng-template #toTpl>\n <div>To: \u0645\u0646</div>\n <div>Cc: \u0645\u0646</div>\n</ng-template>\n<ng-template #attachmentsTpl>\n <div class=\"file-viewer-attachments\">\n @for (file of mo.F5.Files; track file) { @if (!file.IsDeleted) {\n <bsu-file-viewer-popover\n [file]=\"file\"\n [files]=\"mo.F5.Files\"\n [deviceSize]=\"deviceSize\"\n [canDownload]=\"true\"\n [disableRemove]=\"true\"\n [fdType]=\"'transparent'\"\n ></bsu-file-viewer-popover>\n } }\n </div>\n @if (mo.F5.Files.length > 1) {\n <button\n fd-button\n [fdType]=\"'transparent'\"\n [label]=\"'Download' | bbbTranslate: 'All'\"\n [glyph]=\"'download'\"\n downloadFiles\n [files]=\"mo.F5.Files\"\n ></button>\n }\n</ng-template>\n", styles: [":host{display:block;width:100%;height:100%;padding-bottom:.5rem}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.BodyClickDirective, selector: "[bodyClick]", inputs: ["disableBodyClick"] }, { kind: "component", type: i3.AvatarComponent, selector: "fd-avatar", inputs: ["class", "id", "ariaLabel", "ariaLabelledby", "label", "size", "font", "glyph", "zoomGlyph", "circle", "transparent", "contain", "placeholder", "tile", "border", "colorAccent", "random", "clickable", "valueState", "image", "alterIcon", "backupImage"], outputs: ["avatarClicked", "zoomGlyphClicked"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.CardComponent, selector: "fd-card", inputs: ["badge", "badgeIcon", "badgeColor", "badgeColorSecondary", "badgeStatus", "badgeAriaLabel", "secondBadge", "secondBadgeIcon", "secondBadgeColor", "secondBadgeColorSecondary", "secondBadgeStatus", "secondBadgeAriaLabel", "isLoading", "cardType", "id", "ariaRoledescription", "ariaDescription", "ariaLabel", "role", "interactive", "selected", "ariaPosinset", "ariaSetsize"], outputs: ["ariaPosinsetChange", "ariaSetsizeChange"] }, { kind: "component", type: i5.CardHeaderComponent, selector: "fd-card-header", inputs: ["ariaRoleDescription"] }, { kind: "component", type: i5.CardMainHeaderComponent, selector: "fd-card-main-header", inputs: ["interactive", "title"] }, { kind: "component", type: i5.CardContentComponent, selector: "fd-card-content" }, { kind: "directive", type: i5.CardTitleDirective, selector: "[fd-card-title]", inputs: ["id"] }, { kind: "directive", type: i5.CardSubtitleDirective, selector: "[fd-card-subtitle]" }, { kind: "directive", type: i5.CardCounterDirective, selector: "[fd-card-counter]", inputs: ["status"] }, { kind: "component", type: i6.IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "class", "ariaLabel", "ariaHidden"] }, { kind: "component", type: i7.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "glyphFont", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large", "secondaryIndication", "textTemplate"] }, { kind: "component", type: i8.UlvContextMenuComponent, selector: "bsu-ulv-context-menu,[ulvContextMenu]", inputs: ["onlyOverflow", "rightClickEnable", "deviceName", "menuItems", "allColumns", "index", "mo", "styleIndex", "conditionalFormats", "disableOverflowContextMenu", "footerMode", "appendTo"], outputs: ["commandClick"] }, { kind: "component", type: i9.FileViewerPopoverComponent, selector: "bsu-file-viewer-popover", inputs: ["files", "file", "deviceSize", "canDownload", "disableRemove", "fdType"], outputs: ["remove"] }, { kind: "directive", type: i10.DownloadFilesDirective, selector: "[downloadFiles]", inputs: ["files"] }, { kind: "pipe", type: i2.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
25
  }
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaCardRowPayamComponent, decorators: [{
27
27
  type: Component,
@@ -13,10 +13,10 @@ export class BarsaHorizontalFlexPanelComponent extends LayoutPanelBaseComponent
13
13
  FillAllLayoutControls(this.config, this.layoutControls);
14
14
  }
15
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaHorizontalFlexPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: BarsaHorizontalFlexPanelComponent, selector: "bsu-barsa-horizontal-flex-panel", providers: [LayoutService], usesInheritance: true, ngImport: i0, template: "<bsu-barsa-base-layout-panel\n [layoutControls]=\"layoutControls\"\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\n [isSearchPanel]=\"isSearchPanel\"\n [config]=\"config\"\n [style.gap]=\"parameters?.Gap\"\n></bsu-barsa-base-layout-panel>\n", styles: [":host bsu-barsa-base-layout-panel{display:flex;flex-direction:row-reverse;justify-content:start}:host bsu-barsa-base-layout-panel ::ng-deep .grid-col{padding:0!important}:host bsu-barsa-base-layout-panel ::ng-deep bnrc-dynamic-layout{display:none}\n"], dependencies: [{ kind: "component", type: i1.BarsaBaseLayoutPanelComponent, selector: "bsu-barsa-base-layout-panel", inputs: ["layoutControls", "config", "maxLabelWidth", "isSearchPanel"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: BarsaHorizontalFlexPanelComponent, selector: "bsu-barsa-horizontal-flex-panel", providers: [LayoutService], usesInheritance: true, ngImport: i0, template: "<bsu-barsa-base-layout-panel\n [layoutControls]=\"layoutControls\"\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\n [isSearchPanel]=\"isSearchPanel\"\n [config]=\"config\"\n [style.gap]=\"parameters?.Gap\"\n></bsu-barsa-base-layout-panel>\n", styles: [":host bsu-barsa-base-layout-panel{display:flex;flex-direction:row-reverse;justify-content:start}:host bsu-barsa-base-layout-panel ::ng-deep bsu-layout-control{flex:unset!important;width:auto!important}:host bsu-barsa-base-layout-panel ::ng-deep .grid-col{padding:0!important}:host bsu-barsa-base-layout-panel ::ng-deep bnrc-dynamic-layout{display:none}\n"], dependencies: [{ kind: "component", type: i1.BarsaBaseLayoutPanelComponent, selector: "bsu-barsa-base-layout-panel", inputs: ["layoutControls", "config", "maxLabelWidth", "isSearchPanel"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
17
  }
18
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: BarsaHorizontalFlexPanelComponent, decorators: [{
19
19
  type: Component,
20
- args: [{ selector: 'bsu-barsa-horizontal-flex-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], template: "<bsu-barsa-base-layout-panel\n [layoutControls]=\"layoutControls\"\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\n [isSearchPanel]=\"isSearchPanel\"\n [config]=\"config\"\n [style.gap]=\"parameters?.Gap\"\n></bsu-barsa-base-layout-panel>\n", styles: [":host bsu-barsa-base-layout-panel{display:flex;flex-direction:row-reverse;justify-content:start}:host bsu-barsa-base-layout-panel ::ng-deep .grid-col{padding:0!important}:host bsu-barsa-base-layout-panel ::ng-deep bnrc-dynamic-layout{display:none}\n"] }]
20
+ args: [{ selector: 'bsu-barsa-horizontal-flex-panel', changeDetection: ChangeDetectionStrategy.OnPush, providers: [LayoutService], template: "<bsu-barsa-base-layout-panel\n [layoutControls]=\"layoutControls\"\n [maxLabelWidth]=\"(maxLabelWidth$ | async)!!\"\n [isSearchPanel]=\"isSearchPanel\"\n [config]=\"config\"\n [style.gap]=\"parameters?.Gap\"\n></bsu-barsa-base-layout-panel>\n", styles: [":host bsu-barsa-base-layout-panel{display:flex;flex-direction:row-reverse;justify-content:start}:host bsu-barsa-base-layout-panel ::ng-deep bsu-layout-control{flex:unset!important;width:auto!important}:host bsu-barsa-base-layout-panel ::ng-deep .grid-col{padding:0!important}:host bsu-barsa-base-layout-panel ::ng-deep bnrc-dynamic-layout{display:none}\n"] }]
21
21
  }] });
22
22
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtaG9yaXpvbnRhbC1mbGV4LXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLWhvcml6b250YWwtZmxleC1wYW5lbC9iYXJzYS1ob3Jpem9udGFsLWZsZXgtcGFuZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtaG9yaXpvbnRhbC1mbGV4LXBhbmVsL2JhcnNhLWhvcml6b250YWwtZmxleC1wYW5lbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFDSCxxQkFBcUIsRUFFckIsd0JBQXdCLEVBQ3hCLGFBQWEsRUFFaEIsTUFBTSxzQkFBc0IsQ0FBQzs7OztBQVM5QixNQUFNLE9BQU8saUNBQWtDLFNBQVEsd0JBQXdCO0lBUC9FOztRQVFJLG1CQUFjLEdBQW9CLEVBQUUsQ0FBQztLQU14QztJQUpHLFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIscUJBQXFCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs4R0FOUSxpQ0FBaUM7a0dBQWpDLGlDQUFpQywwREFGL0IsQ0FBQyxhQUFhLENBQUMsaURDZDlCLG1RQU9BOzsyRkRTYSxpQ0FBaUM7a0JBUDdDLFNBQVM7K0JBQ0ksaUNBQWlDLG1CQUcxQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEZpbGxBbGxMYXlvdXRDb250cm9scyxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIExheW91dFBhbmVsQmFzZUNvbXBvbmVudCxcbiAgICBMYXlvdXRTZXJ2aWNlLFxuICAgIExheW91dFNldHRpbmdcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS1ob3Jpem9udGFsLWZsZXgtcGFuZWwnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXJzYS1ob3Jpem9udGFsLWZsZXgtcGFuZWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2JhcnNhLWhvcml6b250YWwtZmxleC1wYW5lbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW0xheW91dFNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhSG9yaXpvbnRhbEZsZXhQYW5lbENvbXBvbmVudCBleHRlbmRzIExheW91dFBhbmVsQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgbGF5b3V0Q29udHJvbHM6IExheW91dFNldHRpbmdbXSA9IFtdO1xuICAgIHBhcmFtZXRlcnM6IEhvcml6b250YWxGbGV4UGFuZWxTZXR0aW5ncztcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgRmlsbEFsbExheW91dENvbnRyb2xzKHRoaXMuY29uZmlnLCB0aGlzLmxheW91dENvbnRyb2xzKTtcbiAgICB9XG59XG5pbnRlcmZhY2UgSG9yaXpvbnRhbEZsZXhQYW5lbFNldHRpbmdzIGV4dGVuZHMgTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgR2FwOiBzdHJpbmc7XG59XG4iLCI8YnN1LWJhcnNhLWJhc2UtbGF5b3V0LXBhbmVsXG4gICAgW2xheW91dENvbnRyb2xzXT1cImxheW91dENvbnRyb2xzXCJcbiAgICBbbWF4TGFiZWxXaWR0aF09XCIobWF4TGFiZWxXaWR0aCQgfCBhc3luYykhIVwiXG4gICAgW2lzU2VhcmNoUGFuZWxdPVwiaXNTZWFyY2hQYW5lbFwiXG4gICAgW2NvbmZpZ109XCJjb25maWdcIlxuICAgIFtzdHlsZS5nYXBdPVwicGFyYW1ldGVycz8uR2FwXCJcbj48L2JzdS1iYXJzYS1iYXNlLWxheW91dC1wYW5lbD5cbiJdfQ==