@tekus/kiosks-design-system 1.7.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,19 +2,22 @@ import { NgStyle } from '@angular/common';
2
2
  import { Component, EventEmitter, Input, Output } from '@angular/core';
3
3
  import { TkKioskBtnComponent } from '../tk-kiosk-btn';
4
4
  import { NzIconDirective } from 'ng-zorro-antd/icon';
5
+ import { TkKioskTypographyComponent } from '../tk-kiosk-typography';
5
6
  import * as i0 from "@angular/core";
6
7
  export class TkKioskFooterNavigationComponent {
7
8
  constructor() {
8
9
  this.height = '170px';
9
10
  this.actionEmitter = new EventEmitter();
10
11
  this.actions = [];
12
+ this.topActions = [];
13
+ this.justifyContent = 'center';
11
14
  }
12
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TkKioskFooterNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: TkKioskFooterNavigationComponent, isStandalone: true, selector: "tk-kiosk-footer-navigation", inputs: { height: "height", actions: "actions" }, outputs: { actionEmitter: "action" }, ngImport: i0, template: "<section\n class=\"bar\"\n [ngStyle]=\"{ height: height, color: 'var(--tk-color-primary-700)' }\"\n>\n @for (action of actions; track action.label) {\n\n <tk-kiosk-btn\n (click)=\"actionEmitter.next(action.action)\"\n [variant]=\"action.variantColor\"\n [textSize]=\"action.textSize || 'h5-heading'\"\n [outline]=\"action.outline || false\"\n [textColor]=\"action.textColor || 'tk-color-white'\"\n [text]=\"action.label\"\n [size]=\"action.size || 'large'\"\n [disabled]=\"action.disabled || false\"\n >\n @if(action.icon && action.iconPosition === 'left'){\n\n <div left-section>\n <span\n nz-icon\n [nzType]=\"action.icon\"\n class=\"icon\"\n [style.color]=\"'var(--' + action.textColor + ')'\"\n ></span>\n </div>\n } @if(action.icon && action.iconPosition === 'right'){\n\n <div>\n <span\n nz-icon\n [nzType]=\"action.icon\"\n class=\"icon\"\n [style.color]=\"'var(--' + action.textColor + ')'\"\n ></span>\n </div>\n }\n </tk-kiosk-btn>\n }\n</section>\n", styles: [".bar{display:flex;width:100%;padding:10px;justify-content:center;align-items:center;gap:10px;background:var(--tk-color-neutral-200, #CDCDCD)}.bar .icon{font-size:40px;color:inherit}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: TkKioskBtnComponent, selector: "tk-kiosk-btn", inputs: ["text", "disabled", "outline", "stroked", "rounded", "variant", "size", "textColor", "textSize"], outputs: ["onClick"] }] }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: TkKioskFooterNavigationComponent, isStandalone: true, selector: "tk-kiosk-footer-navigation", inputs: { height: "height", actions: "actions", topActions: "topActions", justifyContent: "justifyContent" }, outputs: { actionEmitter: "action" }, ngImport: i0, template: "<section class=\"bar\" [ngStyle]=\"{ height: height }\">\n @if (topActions.length) {\n <section class=\"actions-tob\" >\n @for (action of topActions; track action.label) {\n @if (action.typeAction == 'none') {\n <tk-kiosk-typography type=\"subtitle1\" [color]=\"action.textColor || ''\">\n <div [innerHTML]=\"action.label\"></div>\n </tk-kiosk-typography>\n }\n }\n </section>\n }\n\n <section class=\"actions-b\" [ngStyle]=\"{'justify-content': justifyContent, }\">\n @for (action of actions; track action.label) {\n @if (action.typeAction == 'none') {\n <tk-kiosk-typography type=\"subtitle1\" [color]=\"action.textColor || ''\">\n <div [innerHTML]=\"action.label\"></div>\n </tk-kiosk-typography>\n }\n @if (action.typeAction != 'none') {\n\n <tk-kiosk-btn (click)=\"actionEmitter.next(action.action)\" [variant]=\"action.variantColor || 'primary'\"\n [textSize]=\"action.textSize || 'h5-heading'\" [outline]=\"action.outline || false\"\n [textColor]=\"action.textColor || 'tk-color-white'\" [text]=\"action.label\" [size]=\"action.size || 'large'\"\n [disabled]=\"action.disabled || false\">\n @if(action.icon && action.iconPosition === 'left'){\n\n <div left-section>\n <span nz-icon [nzType]=\"action.icon\" class=\"icon\" [style.color]=\"'var(--' + action.textColor + ')'\"></span>\n </div>\n } @if(action.icon && action.iconPosition === 'right'){\n\n <div>\n <span nz-icon [nzType]=\"action.icon\" class=\"icon\" [style.color]=\"'var(--' + action.textColor + ')'\"></span>\n </div>\n }\n </tk-kiosk-btn>\n }\n\n }\n </section>\n\n</section>", styles: [".bar{display:flex;flex-direction:column;width:100%;padding:40px;justify-content:center;background:var(--tk-color-neutral-200, #CDCDCD)}.bar .icon{font-size:40px;color:inherit}.bar .actions-tob{display:flex;justify-content:center;margin-bottom:32px}.bar .actions-b{display:flex;gap:10px;align-items:center;width:100%}.bar .actions-b .icon{font-size:40px;color:inherit}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "component", type: TkKioskBtnComponent, selector: "tk-kiosk-btn", inputs: ["text", "disabled", "outline", "stroked", "rounded", "variant", "size", "textColor", "textSize"], outputs: ["onClick"] }, { kind: "component", type: TkKioskTypographyComponent, selector: "tk-kiosk-typography", inputs: ["type", "color", "size", "weight", "lineBreak"] }] }); }
14
17
  }
15
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TkKioskFooterNavigationComponent, decorators: [{
16
19
  type: Component,
17
- args: [{ selector: 'tk-kiosk-footer-navigation', standalone: true, imports: [NgStyle, NzIconDirective, TkKioskBtnComponent], template: "<section\n class=\"bar\"\n [ngStyle]=\"{ height: height, color: 'var(--tk-color-primary-700)' }\"\n>\n @for (action of actions; track action.label) {\n\n <tk-kiosk-btn\n (click)=\"actionEmitter.next(action.action)\"\n [variant]=\"action.variantColor\"\n [textSize]=\"action.textSize || 'h5-heading'\"\n [outline]=\"action.outline || false\"\n [textColor]=\"action.textColor || 'tk-color-white'\"\n [text]=\"action.label\"\n [size]=\"action.size || 'large'\"\n [disabled]=\"action.disabled || false\"\n >\n @if(action.icon && action.iconPosition === 'left'){\n\n <div left-section>\n <span\n nz-icon\n [nzType]=\"action.icon\"\n class=\"icon\"\n [style.color]=\"'var(--' + action.textColor + ')'\"\n ></span>\n </div>\n } @if(action.icon && action.iconPosition === 'right'){\n\n <div>\n <span\n nz-icon\n [nzType]=\"action.icon\"\n class=\"icon\"\n [style.color]=\"'var(--' + action.textColor + ')'\"\n ></span>\n </div>\n }\n </tk-kiosk-btn>\n }\n</section>\n", styles: [".bar{display:flex;width:100%;padding:10px;justify-content:center;align-items:center;gap:10px;background:var(--tk-color-neutral-200, #CDCDCD)}.bar .icon{font-size:40px;color:inherit}\n"] }]
20
+ args: [{ selector: 'tk-kiosk-footer-navigation', standalone: true, imports: [NgStyle, NzIconDirective, TkKioskBtnComponent, TkKioskTypographyComponent], template: "<section class=\"bar\" [ngStyle]=\"{ height: height }\">\n @if (topActions.length) {\n <section class=\"actions-tob\" >\n @for (action of topActions; track action.label) {\n @if (action.typeAction == 'none') {\n <tk-kiosk-typography type=\"subtitle1\" [color]=\"action.textColor || ''\">\n <div [innerHTML]=\"action.label\"></div>\n </tk-kiosk-typography>\n }\n }\n </section>\n }\n\n <section class=\"actions-b\" [ngStyle]=\"{'justify-content': justifyContent, }\">\n @for (action of actions; track action.label) {\n @if (action.typeAction == 'none') {\n <tk-kiosk-typography type=\"subtitle1\" [color]=\"action.textColor || ''\">\n <div [innerHTML]=\"action.label\"></div>\n </tk-kiosk-typography>\n }\n @if (action.typeAction != 'none') {\n\n <tk-kiosk-btn (click)=\"actionEmitter.next(action.action)\" [variant]=\"action.variantColor || 'primary'\"\n [textSize]=\"action.textSize || 'h5-heading'\" [outline]=\"action.outline || false\"\n [textColor]=\"action.textColor || 'tk-color-white'\" [text]=\"action.label\" [size]=\"action.size || 'large'\"\n [disabled]=\"action.disabled || false\">\n @if(action.icon && action.iconPosition === 'left'){\n\n <div left-section>\n <span nz-icon [nzType]=\"action.icon\" class=\"icon\" [style.color]=\"'var(--' + action.textColor + ')'\"></span>\n </div>\n } @if(action.icon && action.iconPosition === 'right'){\n\n <div>\n <span nz-icon [nzType]=\"action.icon\" class=\"icon\" [style.color]=\"'var(--' + action.textColor + ')'\"></span>\n </div>\n }\n </tk-kiosk-btn>\n }\n\n }\n </section>\n\n</section>", styles: [".bar{display:flex;flex-direction:column;width:100%;padding:40px;justify-content:center;background:var(--tk-color-neutral-200, #CDCDCD)}.bar .icon{font-size:40px;color:inherit}.bar .actions-tob{display:flex;justify-content:center;margin-bottom:32px}.bar .actions-b{display:flex;gap:10px;align-items:center;width:100%}.bar .actions-b .icon{font-size:40px;color:inherit}\n"] }]
18
21
  }], propDecorators: { height: [{
19
22
  type: Input,
20
23
  args: ['height']
@@ -24,5 +27,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
24
27
  }], actions: [{
25
28
  type: Input,
26
29
  args: ['actions']
30
+ }], topActions: [{
31
+ type: Input,
32
+ args: ['topActions']
33
+ }], justifyContent: [{
34
+ type: Input,
35
+ args: ['justifyContent']
27
36
  }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGsta2lvc2stZm9vdGVyLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGsta2lvc2stZHMvc3JjL2xpYi9jb21wb25lbnRzL3RrLWtpb3NrLWZvb3Rlci1uYXZpZ2F0aW9uL3RrLWtpb3NrLWZvb3Rlci1uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RrLWtpb3NrLWRzL3NyYy9saWIvY29tcG9uZW50cy90ay1raW9zay1mb290ZXItbmF2aWdhdGlvbi90ay1raW9zay1mb290ZXItbmF2aWdhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBVXJELE1BQU0sT0FBTyxnQ0FBZ0M7SUFQN0M7UUFRbUIsV0FBTSxHQUFXLE9BQU8sQ0FBQztRQUN4QixrQkFBYSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2pFLFlBQU8sR0FBb0IsRUFBRSxDQUFBO0tBRWhEOzhHQUxZLGdDQUFnQztrR0FBaEMsZ0NBQWdDLDhLQ2I3Qyxpa0NBd0NBLGlQRC9CWSxPQUFPLDJFQUFFLGVBQWUsaUtBQUUsbUJBQW1COzsyRkFJNUMsZ0NBQWdDO2tCQVA1QyxTQUFTOytCQUNFLDRCQUE0QixjQUMxQixJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixDQUFDOzhCQUt2QyxNQUFNO3NCQUF0QixLQUFLO3VCQUFDLFFBQVE7Z0JBQ0csYUFBYTtzQkFBOUIsTUFBTTt1QkFBQyxRQUFRO2dCQUNFLE9BQU87c0JBQXhCLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nU3R5bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRrS2lvc2tCdG5Db21wb25lbnQgfSBmcm9tICcuLi90ay1raW9zay1idG4nO1xuaW1wb3J0IHsgTnpJY29uRGlyZWN0aXZlIH0gZnJvbSAnbmctem9ycm8tYW50ZC9pY29uJztcbmltcG9ydCB7IEZvb3RlckFjdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ay1raW9zay1mb290ZXItbmF2aWdhdGlvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ1N0eWxlLCBOekljb25EaXJlY3RpdmUsIFRrS2lvc2tCdG5Db21wb25lbnRdLFxuICB0ZW1wbGF0ZVVybDogJy4vdGsta2lvc2stZm9vdGVyLW5hdmlnYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdGsta2lvc2stZm9vdGVyLW5hdmlnYXRpb24uY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIFRrS2lvc2tGb290ZXJOYXZpZ2F0aW9uQ29tcG9uZW50IHtcbiAgQElucHV0KCdoZWlnaHQnKSBoZWlnaHQ6IHN0cmluZyA9ICcxNzBweCc7XG4gIEBPdXRwdXQoJ2FjdGlvbicpIGFjdGlvbkVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBJbnB1dCgnYWN0aW9ucycpIGFjdGlvbnM6IEZvb3RlckFjdGlvbnNbXSA9IFtdXG5cbn1cbiIsIjxzZWN0aW9uXG4gIGNsYXNzPVwiYmFyXCJcbiAgW25nU3R5bGVdPVwieyBoZWlnaHQ6IGhlaWdodCwgY29sb3I6ICd2YXIoLS10ay1jb2xvci1wcmltYXJ5LTcwMCknIH1cIlxuPlxuICBAZm9yIChhY3Rpb24gb2YgYWN0aW9uczsgdHJhY2sgYWN0aW9uLmxhYmVsKSB7XG5cbiAgPHRrLWtpb3NrLWJ0blxuICAgIChjbGljayk9XCJhY3Rpb25FbWl0dGVyLm5leHQoYWN0aW9uLmFjdGlvbilcIlxuICAgIFt2YXJpYW50XT1cImFjdGlvbi52YXJpYW50Q29sb3JcIlxuICAgIFt0ZXh0U2l6ZV09XCJhY3Rpb24udGV4dFNpemUgfHwgJ2g1LWhlYWRpbmcnXCJcbiAgICBbb3V0bGluZV09XCJhY3Rpb24ub3V0bGluZSB8fCBmYWxzZVwiXG4gICAgW3RleHRDb2xvcl09XCJhY3Rpb24udGV4dENvbG9yIHx8ICd0ay1jb2xvci13aGl0ZSdcIlxuICAgIFt0ZXh0XT1cImFjdGlvbi5sYWJlbFwiXG4gICAgW3NpemVdPVwiYWN0aW9uLnNpemUgfHwgJ2xhcmdlJ1wiXG4gICAgW2Rpc2FibGVkXT1cImFjdGlvbi5kaXNhYmxlZCB8fCBmYWxzZVwiXG4gID5cbiAgICBAaWYoYWN0aW9uLmljb24gJiYgYWN0aW9uLmljb25Qb3NpdGlvbiA9PT0gJ2xlZnQnKXtcblxuICAgIDxkaXYgbGVmdC1zZWN0aW9uPlxuICAgICAgPHNwYW5cbiAgICAgICAgbnotaWNvblxuICAgICAgICBbbnpUeXBlXT1cImFjdGlvbi5pY29uXCJcbiAgICAgICAgY2xhc3M9XCJpY29uXCJcbiAgICAgICAgW3N0eWxlLmNvbG9yXT1cIid2YXIoLS0nICsgYWN0aW9uLnRleHRDb2xvciArICcpJ1wiXG4gICAgICA+PC9zcGFuPlxuICAgIDwvZGl2PlxuICAgIH0gQGlmKGFjdGlvbi5pY29uICYmIGFjdGlvbi5pY29uUG9zaXRpb24gPT09ICdyaWdodCcpe1xuXG4gICAgPGRpdj5cbiAgICAgIDxzcGFuXG4gICAgICAgIG56LWljb25cbiAgICAgICAgW256VHlwZV09XCJhY3Rpb24uaWNvblwiXG4gICAgICAgIGNsYXNzPVwiaWNvblwiXG4gICAgICAgIFtzdHlsZS5jb2xvcl09XCIndmFyKC0tJyArIGFjdGlvbi50ZXh0Q29sb3IgKyAnKSdcIlxuICAgICAgPjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICB9XG4gIDwvdGsta2lvc2stYnRuPlxuICB9XG48L3NlY3Rpb24+XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGsta2lvc2stZm9vdGVyLW5hdmlnYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGsta2lvc2stZHMvc3JjL2xpYi9jb21wb25lbnRzL3RrLWtpb3NrLWZvb3Rlci1uYXZpZ2F0aW9uL3RrLWtpb3NrLWZvb3Rlci1uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RrLWtpb3NrLWRzL3NyYy9saWIvY29tcG9uZW50cy90ay1raW9zay1mb290ZXItbmF2aWdhdGlvbi90ay1raW9zay1mb290ZXItbmF2aWdhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBU3BFLE1BQU0sT0FBTyxnQ0FBZ0M7SUFQN0M7UUFRbUIsV0FBTSxHQUFXLE9BQU8sQ0FBQztRQUN4QixrQkFBYSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ2pFLFlBQU8sR0FBb0IsRUFBRSxDQUFBO1FBQzFCLGVBQVUsR0FBb0IsRUFBRSxDQUFBO1FBQzVCLG1CQUFjLEdBQWdDLFFBQVEsQ0FBQTtLQUNoRjs4R0FOWSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQywwT0NkN0MsNnFEQTJDVSwyYURqQ0UsT0FBTywyRUFBRSxlQUFlLGlLQUFFLG1CQUFtQiwwTEFBRSwwQkFBMEI7OzJGQUl4RSxnQ0FBZ0M7a0JBUDVDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBQzFCLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsMEJBQTBCLENBQUM7OEJBS25FLE1BQU07c0JBQXRCLEtBQUs7dUJBQUMsUUFBUTtnQkFDRyxhQUFhO3NCQUE5QixNQUFNO3VCQUFDLFFBQVE7Z0JBQ0UsT0FBTztzQkFBeEIsS0FBSzt1QkFBQyxTQUFTO2dCQUNLLFVBQVU7c0JBQTlCLEtBQUs7dUJBQUMsWUFBWTtnQkFDTSxjQUFjO3NCQUF0QyxLQUFLO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nU3R5bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRrS2lvc2tCdG5Db21wb25lbnQgfSBmcm9tICcuLi90ay1raW9zay1idG4nO1xuaW1wb3J0IHsgTnpJY29uRGlyZWN0aXZlIH0gZnJvbSAnbmctem9ycm8tYW50ZC9pY29uJztcbmltcG9ydCB7IEZvb3RlckFjdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGtLaW9za1R5cG9ncmFwaHlDb21wb25lbnQgfSBmcm9tICcuLi90ay1raW9zay10eXBvZ3JhcGh5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGsta2lvc2stZm9vdGVyLW5hdmlnYXRpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdTdHlsZSwgTnpJY29uRGlyZWN0aXZlLCBUa0tpb3NrQnRuQ29tcG9uZW50LCBUa0tpb3NrVHlwb2dyYXBoeUNvbXBvbmVudF0sXG4gIHRlbXBsYXRlVXJsOiAnLi90ay1raW9zay1mb290ZXItbmF2aWdhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi90ay1raW9zay1mb290ZXItbmF2aWdhdGlvbi5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgVGtLaW9za0Zvb3Rlck5hdmlnYXRpb25Db21wb25lbnQge1xuICBASW5wdXQoJ2hlaWdodCcpIGhlaWdodDogc3RyaW5nID0gJzE3MHB4JztcbiAgQE91dHB1dCgnYWN0aW9uJykgYWN0aW9uRW1pdHRlcjogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQElucHV0KCdhY3Rpb25zJykgYWN0aW9uczogRm9vdGVyQWN0aW9uc1tdID0gW11cbiAgQElucHV0KCd0b3BBY3Rpb25zJykgdG9wQWN0aW9uczogRm9vdGVyQWN0aW9uc1tdID0gW11cbiAgQElucHV0KCdqdXN0aWZ5Q29udGVudCcpIGp1c3RpZnlDb250ZW50IDogJ2NlbnRlcicgfCAnc3BhY2UtYmV0d2VlbicgPSAnY2VudGVyJ1xufVxuIiwiPHNlY3Rpb24gY2xhc3M9XCJiYXJcIiBbbmdTdHlsZV09XCJ7IGhlaWdodDogaGVpZ2h0ICB9XCI+XG4gIEBpZiAodG9wQWN0aW9ucy5sZW5ndGgpIHtcbiAgICA8c2VjdGlvbiBjbGFzcz1cImFjdGlvbnMtdG9iXCIgID5cbiAgICAgIEBmb3IgKGFjdGlvbiBvZiB0b3BBY3Rpb25zOyB0cmFjayBhY3Rpb24ubGFiZWwpIHtcbiAgICAgICAgQGlmIChhY3Rpb24udHlwZUFjdGlvbiA9PSAnbm9uZScpIHtcbiAgICAgICAgPHRrLWtpb3NrLXR5cG9ncmFwaHkgdHlwZT1cInN1YnRpdGxlMVwiIFtjb2xvcl09XCJhY3Rpb24udGV4dENvbG9yIHx8ICcnXCI+XG4gICAgICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cImFjdGlvbi5sYWJlbFwiPjwvZGl2PlxuICAgICAgICA8L3RrLWtpb3NrLXR5cG9ncmFwaHk+XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICA8L3NlY3Rpb24+XG4gIH1cblxuICA8c2VjdGlvbiBjbGFzcz1cImFjdGlvbnMtYlwiIFtuZ1N0eWxlXT1cInsnanVzdGlmeS1jb250ZW50JzoganVzdGlmeUNvbnRlbnQsICB9XCI+XG4gICAgQGZvciAoYWN0aW9uIG9mIGFjdGlvbnM7IHRyYWNrIGFjdGlvbi5sYWJlbCkge1xuICAgIEBpZiAoYWN0aW9uLnR5cGVBY3Rpb24gPT0gJ25vbmUnKSB7XG4gICAgPHRrLWtpb3NrLXR5cG9ncmFwaHkgdHlwZT1cInN1YnRpdGxlMVwiIFtjb2xvcl09XCJhY3Rpb24udGV4dENvbG9yIHx8ICcnXCI+XG4gICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiYWN0aW9uLmxhYmVsXCI+PC9kaXY+XG4gICAgPC90ay1raW9zay10eXBvZ3JhcGh5PlxuICAgIH1cbiAgICBAaWYgKGFjdGlvbi50eXBlQWN0aW9uICE9ICdub25lJykge1xuXG4gICAgPHRrLWtpb3NrLWJ0biAoY2xpY2spPVwiYWN0aW9uRW1pdHRlci5uZXh0KGFjdGlvbi5hY3Rpb24pXCIgW3ZhcmlhbnRdPVwiYWN0aW9uLnZhcmlhbnRDb2xvciB8fCAncHJpbWFyeSdcIlxuICAgICAgW3RleHRTaXplXT1cImFjdGlvbi50ZXh0U2l6ZSB8fCAnaDUtaGVhZGluZydcIiBbb3V0bGluZV09XCJhY3Rpb24ub3V0bGluZSB8fCBmYWxzZVwiXG4gICAgICBbdGV4dENvbG9yXT1cImFjdGlvbi50ZXh0Q29sb3IgfHwgJ3RrLWNvbG9yLXdoaXRlJ1wiIFt0ZXh0XT1cImFjdGlvbi5sYWJlbFwiIFtzaXplXT1cImFjdGlvbi5zaXplIHx8ICdsYXJnZSdcIlxuICAgICAgW2Rpc2FibGVkXT1cImFjdGlvbi5kaXNhYmxlZCB8fCBmYWxzZVwiPlxuICAgICAgQGlmKGFjdGlvbi5pY29uICYmIGFjdGlvbi5pY29uUG9zaXRpb24gPT09ICdsZWZ0Jyl7XG5cbiAgICAgIDxkaXYgbGVmdC1zZWN0aW9uPlxuICAgICAgICA8c3BhbiBuei1pY29uIFtuelR5cGVdPVwiYWN0aW9uLmljb25cIiBjbGFzcz1cImljb25cIiBbc3R5bGUuY29sb3JdPVwiJ3ZhcigtLScgKyBhY3Rpb24udGV4dENvbG9yICsgJyknXCI+PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICB9IEBpZihhY3Rpb24uaWNvbiAmJiBhY3Rpb24uaWNvblBvc2l0aW9uID09PSAncmlnaHQnKXtcblxuICAgICAgPGRpdj5cbiAgICAgICAgPHNwYW4gbnotaWNvbiBbbnpUeXBlXT1cImFjdGlvbi5pY29uXCIgY2xhc3M9XCJpY29uXCIgW3N0eWxlLmNvbG9yXT1cIid2YXIoLS0nICsgYWN0aW9uLnRleHRDb2xvciArICcpJ1wiPjwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvdGsta2lvc2stYnRuPlxuICAgIH1cblxuICAgIH1cbiAgPC9zZWN0aW9uPlxuXG48L3NlY3Rpb24+Il19