@tekus/kiosks-design-system 2.25.0 → 2.27.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.
@@ -3,6 +3,7 @@ import { TkKioskTypographyComponent } from '../tk-kiosk-typography';
3
3
  import { TkKioskIconBtnComponent } from '../tk-kiosk-icon-btn';
4
4
  import { TkKioskBtnCountComponent } from '../tk-kiosk-btn-count';
5
5
  import { CustomCurrencyPipe } from '../../pipes/custom-currency.pipe';
6
+ import { TkKioskCheckCardComponent } from '../tk-kiosk-check-card/tk-kiosk-check-card.component';
6
7
  import * as i0 from "@angular/core";
7
8
  export class TkKioskCustomeComponent {
8
9
  constructor() {
@@ -12,21 +13,35 @@ export class TkKioskCustomeComponent {
12
13
  this.price = 0;
13
14
  this.selected = false;
14
15
  // Inputs for counter functionality
15
- this.typeCounter = 'idle';
16
+ this.typeCounter = '';
16
17
  this.quantity = 0;
17
18
  this.totalMax = 0;
18
19
  this.totalMin = 0;
19
20
  // Input for selection behavior
20
21
  this.isSelectable = true;
22
+ // New input for disabling the component
23
+ this.isDisabled = false;
24
+ // New input for check card type
25
+ this.typeCheck = 'simple';
26
+ // New input for image border radius
27
+ this.imageBorderRadius = 'circle';
21
28
  // Output event emitter for counter changes
22
29
  this.onChange = new EventEmitter();
30
+ this.onClick = new EventEmitter();
23
31
  }
24
32
  // Emit changes for counter actions
25
33
  onChangeCounter(value) {
26
34
  this.onChange.emit(value);
27
35
  }
36
+ handleClick() {
37
+ if (this.isSelectable && !this.isDisabled) {
38
+ this.selected = !this.selected;
39
+ console.log('Card clicked:', this.selected);
40
+ this.onClick.emit();
41
+ }
42
+ }
28
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TkKioskCustomeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: TkKioskCustomeComponent, isStandalone: true, selector: "tk-kiosk-custome", inputs: { title: "title", image: "image", price: "price", selected: "selected", typeCounter: "typeCounter", quantity: "quantity", totalMax: "totalMax", totalMin: "totalMin", isSelectable: "isSelectable" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<section class=\"custome\" [class.custome_selected]=\"selected\">\n @if (isSelectable) {\n\n <div class=\"radio\">\n @if(selected){\n <div class=\"radio-selected\"></div>\n }\n </div>\n\n } @if (image) {\n <div class=\"custome__image\">\n <img [src]=\"image\" [alt]=\"title\" />\n </div>\n }\n <tk-kiosk-typography\n style=\"text-align: center\"\n type=\"body1\"\n align\n [weight]=\"selected ? '700' : '500'\"\n >\n {{ title }}</tk-kiosk-typography\n >\n <tk-kiosk-typography\n style=\"text-align: center\"\n type=\"h6-heading\"\n weight=\"600\"\n >\n {{ price | customCurrency }}\n </tk-kiosk-typography>\n\n @if (typeCounter === 'add') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'minus') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n icon=\"tk-kiosk:minus\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(-1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'counter') {\n <tk-kiosk-btn-count\n [count]=\"quantity\"\n [stroked]=\"false\"\n [totalMax]=\"totalMax\"\n [totalMin]=\"totalMin\"\n size=\"small\"\n color=\"primary\"\n (onAdd)=\"onChangeCounter(1)\"\n (onRemove)=\"onChangeCounter(-1)\"\n ></tk-kiosk-btn-count>\n }\n</section>\n", styles: [".custome{display:flex;padding:24px 10px 20px;flex-direction:column;justify-content:flex-start;align-items:center;width:224px;height:100%;box-sizing:border-box;border-radius:12px;background:var(--tk-color-white-900);gap:12px;box-shadow:var(--tk-color-shadow-large)}.custome .marginImg{margin-bottom:12px}.custome .radio{width:52px;height:52px;margin-bottom:12px;border-radius:100%;background:#fff;display:flex;justify-content:center;align-items:center;box-shadow:var(--tk-color-shadow-large)}.custome .radio .radio-selected{width:35px;height:35px;border-radius:100%;background:var(--tk-color-primary-900)}.custome__image{border-radius:100%;width:100px;height:100px;object-fit:cover;padding:0 12px}.custome__image img{border-radius:100%;width:100%;object-fit:cover}.custome_selected{background:var(--tk-color-primary-100)}\n"], dependencies: [{ kind: "component", type: TkKioskTypographyComponent, selector: "tk-kiosk-typography", inputs: ["type", "color", "size", "weight", "lineBreak"] }, { kind: "component", type: TkKioskIconBtnComponent, selector: "tk-kiosk-icon-btn", inputs: ["isDisabled", "size", "type", "color", "icon", "iconSrc", "bgColor"], outputs: ["btnClick"] }, { kind: "component", type: TkKioskBtnCountComponent, selector: "tk-kiosk-btn-count", inputs: ["count", "totalMax", "totalMin", "measure", "type", "rounded", "color", "size", "stroked"], outputs: ["onAdd", "onRemove"] }, { kind: "pipe", type: CustomCurrencyPipe, name: "customCurrency" }] }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.3", type: TkKioskCustomeComponent, isStandalone: true, selector: "tk-kiosk-custome", inputs: { title: "title", image: "image", price: "price", selected: "selected", typeCounter: "typeCounter", quantity: "quantity", totalMax: "totalMax", totalMin: "totalMin", isSelectable: "isSelectable", isDisabled: "isDisabled", typeCheck: "typeCheck", imageBorderRadius: "imageBorderRadius" }, outputs: { onChange: "onChange", onClick: "onClick" }, ngImport: i0, template: "<tk-kiosk-check-card\n [option]=\"{\n image: image,\n name: title,\n checked: selected\n }\"\n [isDisabled]=\"isDisabled\"\n [hideCheck]=\"!isSelectable\"\n [type]=\"typeCheck\"\n [imageBorderRadius]=\"imageBorderRadius\"\n (onClick)=\"handleClick()\"\n [width]=\"!typeCounter ? '' : '240px'\"\n>\n <div class=\"tk-kiosk-custome__content\">\n <tk-kiosk-typography\n style=\"text-align: center\"\n type=\"h6-heading\"\n weight=\"600\"\n >\n {{ price | customCurrency }}\n </tk-kiosk-typography>\n\n @if (typeCounter === 'add') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'minus') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n icon=\"tk-kiosk:minus\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(-1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'counter') {\n <tk-kiosk-btn-count\n [count]=\"quantity\"\n [stroked]=\"false\"\n [totalMax]=\"totalMax\"\n [totalMin]=\"totalMin\"\n size=\"small\"\n color=\"primary\"\n (onAdd)=\"onChangeCounter(1)\"\n (onRemove)=\"onChangeCounter(-1)\"\n ></tk-kiosk-btn-count>\n }\n </div>\n</tk-kiosk-check-card>\n", styles: [".tk-kiosk-custome__content{display:flex;flex-direction:column;gap:12px}\n"], dependencies: [{ kind: "component", type: TkKioskTypographyComponent, selector: "tk-kiosk-typography", inputs: ["type", "color", "size", "weight", "lineBreak"] }, { kind: "component", type: TkKioskIconBtnComponent, selector: "tk-kiosk-icon-btn", inputs: ["isDisabled", "size", "type", "color", "icon", "iconSrc", "bgColor"], outputs: ["btnClick"] }, { kind: "component", type: TkKioskBtnCountComponent, selector: "tk-kiosk-btn-count", inputs: ["count", "totalMax", "totalMin", "measure", "type", "rounded", "color", "size", "stroked"], outputs: ["onAdd", "onRemove"] }, { kind: "component", type: TkKioskCheckCardComponent, selector: "tk-kiosk-check-card", inputs: ["width", "minHeight", "isDisabled", "hideCheck", "imageBorderRadius", "option", "type"], outputs: ["onClick"] }, { kind: "pipe", type: CustomCurrencyPipe, name: "customCurrency" }] }); }
30
45
  }
31
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: TkKioskCustomeComponent, decorators: [{
32
47
  type: Component,
@@ -34,8 +49,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
34
49
  TkKioskTypographyComponent,
35
50
  TkKioskIconBtnComponent,
36
51
  TkKioskBtnCountComponent,
52
+ TkKioskCheckCardComponent,
37
53
  CustomCurrencyPipe,
38
- ], template: "<section class=\"custome\" [class.custome_selected]=\"selected\">\n @if (isSelectable) {\n\n <div class=\"radio\">\n @if(selected){\n <div class=\"radio-selected\"></div>\n }\n </div>\n\n } @if (image) {\n <div class=\"custome__image\">\n <img [src]=\"image\" [alt]=\"title\" />\n </div>\n }\n <tk-kiosk-typography\n style=\"text-align: center\"\n type=\"body1\"\n align\n [weight]=\"selected ? '700' : '500'\"\n >\n {{ title }}</tk-kiosk-typography\n >\n <tk-kiosk-typography\n style=\"text-align: center\"\n type=\"h6-heading\"\n weight=\"600\"\n >\n {{ price | customCurrency }}\n </tk-kiosk-typography>\n\n @if (typeCounter === 'add') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'minus') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n icon=\"tk-kiosk:minus\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(-1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'counter') {\n <tk-kiosk-btn-count\n [count]=\"quantity\"\n [stroked]=\"false\"\n [totalMax]=\"totalMax\"\n [totalMin]=\"totalMin\"\n size=\"small\"\n color=\"primary\"\n (onAdd)=\"onChangeCounter(1)\"\n (onRemove)=\"onChangeCounter(-1)\"\n ></tk-kiosk-btn-count>\n }\n</section>\n", styles: [".custome{display:flex;padding:24px 10px 20px;flex-direction:column;justify-content:flex-start;align-items:center;width:224px;height:100%;box-sizing:border-box;border-radius:12px;background:var(--tk-color-white-900);gap:12px;box-shadow:var(--tk-color-shadow-large)}.custome .marginImg{margin-bottom:12px}.custome .radio{width:52px;height:52px;margin-bottom:12px;border-radius:100%;background:#fff;display:flex;justify-content:center;align-items:center;box-shadow:var(--tk-color-shadow-large)}.custome .radio .radio-selected{width:35px;height:35px;border-radius:100%;background:var(--tk-color-primary-900)}.custome__image{border-radius:100%;width:100px;height:100px;object-fit:cover;padding:0 12px}.custome__image img{border-radius:100%;width:100%;object-fit:cover}.custome_selected{background:var(--tk-color-primary-100)}\n"] }]
54
+ ], template: "<tk-kiosk-check-card\n [option]=\"{\n image: image,\n name: title,\n checked: selected\n }\"\n [isDisabled]=\"isDisabled\"\n [hideCheck]=\"!isSelectable\"\n [type]=\"typeCheck\"\n [imageBorderRadius]=\"imageBorderRadius\"\n (onClick)=\"handleClick()\"\n [width]=\"!typeCounter ? '' : '240px'\"\n>\n <div class=\"tk-kiosk-custome__content\">\n <tk-kiosk-typography\n style=\"text-align: center\"\n type=\"h6-heading\"\n weight=\"600\"\n >\n {{ price | customCurrency }}\n </tk-kiosk-typography>\n\n @if (typeCounter === 'add') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'minus') {\n <tk-kiosk-icon-btn\n [size]=\"'small'\"\n icon=\"tk-kiosk:minus\"\n color=\"primary\"\n (btnClick)=\"onChangeCounter(-1)\"\n ></tk-kiosk-icon-btn>\n } @if (typeCounter === 'counter') {\n <tk-kiosk-btn-count\n [count]=\"quantity\"\n [stroked]=\"false\"\n [totalMax]=\"totalMax\"\n [totalMin]=\"totalMin\"\n size=\"small\"\n color=\"primary\"\n (onAdd)=\"onChangeCounter(1)\"\n (onRemove)=\"onChangeCounter(-1)\"\n ></tk-kiosk-btn-count>\n }\n </div>\n</tk-kiosk-check-card>\n", styles: [".tk-kiosk-custome__content{display:flex;flex-direction:column;gap:12px}\n"] }]
39
55
  }], propDecorators: { title: [{
40
56
  type: Input
41
57
  }], image: [{
@@ -54,7 +70,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
54
70
  type: Input
55
71
  }], isSelectable: [{
56
72
  type: Input
73
+ }], isDisabled: [{
74
+ type: Input
75
+ }], typeCheck: [{
76
+ type: Input
77
+ }], imageBorderRadius: [{
78
+ type: Input
57
79
  }], onChange: [{
58
80
  type: Output
81
+ }], onClick: [{
82
+ type: Output
59
83
  }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGsta2lvc2stY3VzdG9tZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ay1raW9zay1kcy9zcmMvbGliL2NvbXBvbmVudHMvdGsta2lvc2stY3VzdG9tZS90ay1raW9zay1jdXN0b21lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RrLWtpb3NrLWRzL3NyYy9saWIvY29tcG9uZW50cy90ay1raW9zay1jdXN0b21lL3RrLWtpb3NrLWN1c3RvbWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFjdEUsTUFBTSxPQUFPLHVCQUF1QjtJQVpwQztRQWFFLDhCQUE4QjtRQUNyQixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCLG1DQUFtQztRQUMxQixnQkFBVyxHQUF5QyxNQUFNLENBQUM7UUFDM0QsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRXRCLCtCQUErQjtRQUN0QixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUU3QiwyQ0FBMkM7UUFDakMsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0FNakQ7SUFKQyxtQ0FBbUM7SUFDbkMsZUFBZSxDQUFDLEtBQWE7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQzs4R0F0QlUsdUJBQXVCO2tHQUF2Qix1QkFBdUIsNlRDbEJwQyxtMUNBd0RBLGczQkQ5Q0ksMEJBQTBCLDBIQUMxQix1QkFBdUIsb0tBQ3ZCLHdCQUF3QiwrTEFDeEIsa0JBQWtCOzsyRkFLVCx1QkFBdUI7a0JBWm5DLFNBQVM7K0JBQ0Usa0JBQWtCLGNBQ2hCLElBQUksV0FDUDt3QkFDUCwwQkFBMEI7d0JBQzFCLHVCQUF1Qjt3QkFDdkIsd0JBQXdCO3dCQUN4QixrQkFBa0I7cUJBQ25COzhCQU1RLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGtLaW9za1R5cG9ncmFwaHlDb21wb25lbnQgfSBmcm9tICcuLi90ay1raW9zay10eXBvZ3JhcGh5JztcbmltcG9ydCB7IFRrS2lvc2tJY29uQnRuQ29tcG9uZW50IH0gZnJvbSAnLi4vdGsta2lvc2staWNvbi1idG4nO1xuaW1wb3J0IHsgVGtLaW9za0J0bkNvdW50Q29tcG9uZW50IH0gZnJvbSAnLi4vdGsta2lvc2stYnRuLWNvdW50JztcbmltcG9ydCB7IEN1c3RvbUN1cnJlbmN5UGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL2N1c3RvbS1jdXJyZW5jeS5waXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGsta2lvc2stY3VzdG9tZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBUa0tpb3NrVHlwb2dyYXBoeUNvbXBvbmVudCxcbiAgICBUa0tpb3NrSWNvbkJ0bkNvbXBvbmVudCxcbiAgICBUa0tpb3NrQnRuQ291bnRDb21wb25lbnQsXG4gICAgQ3VzdG9tQ3VycmVuY3lQaXBlLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vdGsta2lvc2stY3VzdG9tZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi90ay1raW9zay1jdXN0b21lLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgVGtLaW9za0N1c3RvbWVDb21wb25lbnQge1xuICAvLyBJbnB1dHMgZm9yIGJhc2ljIHByb3BlcnRpZXNcbiAgQElucHV0KCkgdGl0bGUgPSAnJztcbiAgQElucHV0KCkgaW1hZ2UgPSAnJztcbiAgQElucHV0KCkgcHJpY2UgPSAwO1xuICBASW5wdXQoKSBzZWxlY3RlZCA9IGZhbHNlO1xuXG4gIC8vIElucHV0cyBmb3IgY291bnRlciBmdW5jdGlvbmFsaXR5XG4gIEBJbnB1dCgpIHR5cGVDb3VudGVyOiAnYWRkJyB8ICdtaW51cycgfCAnY291bnRlcicgfCAnaWRsZScgPSAnaWRsZSc7XG4gIEBJbnB1dCgpIHF1YW50aXR5ID0gMDtcbiAgQElucHV0KCkgdG90YWxNYXggPSAwO1xuICBASW5wdXQoKSB0b3RhbE1pbiA9IDA7XG5cbiAgLy8gSW5wdXQgZm9yIHNlbGVjdGlvbiBiZWhhdmlvclxuICBASW5wdXQoKSBpc1NlbGVjdGFibGUgPSB0cnVlO1xuXG4gIC8vIE91dHB1dCBldmVudCBlbWl0dGVyIGZvciBjb3VudGVyIGNoYW5nZXNcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgLy8gRW1pdCBjaGFuZ2VzIGZvciBjb3VudGVyIGFjdGlvbnNcbiAgb25DaGFuZ2VDb3VudGVyKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImN1c3RvbWVcIiBbY2xhc3MuY3VzdG9tZV9zZWxlY3RlZF09XCJzZWxlY3RlZFwiPlxuICBAaWYgKGlzU2VsZWN0YWJsZSkge1xuXG4gIDxkaXYgY2xhc3M9XCJyYWRpb1wiPlxuICAgIEBpZihzZWxlY3RlZCl7XG4gICAgPGRpdiBjbGFzcz1cInJhZGlvLXNlbGVjdGVkXCI+PC9kaXY+XG4gICAgfVxuICA8L2Rpdj5cblxuICB9IEBpZiAoaW1hZ2UpIHtcbiAgPGRpdiBjbGFzcz1cImN1c3RvbWVfX2ltYWdlXCI+XG4gICAgPGltZyBbc3JjXT1cImltYWdlXCIgW2FsdF09XCJ0aXRsZVwiIC8+XG4gIDwvZGl2PlxuICB9XG4gIDx0ay1raW9zay10eXBvZ3JhcGh5XG4gICAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXJcIlxuICAgIHR5cGU9XCJib2R5MVwiXG4gICAgYWxpZ25cbiAgICBbd2VpZ2h0XT1cInNlbGVjdGVkID8gJzcwMCcgOiAnNTAwJ1wiXG4gID5cbiAgICB7eyB0aXRsZSB9fTwvdGsta2lvc2stdHlwb2dyYXBoeVxuICA+XG4gIDx0ay1raW9zay10eXBvZ3JhcGh5XG4gICAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXJcIlxuICAgIHR5cGU9XCJoNi1oZWFkaW5nXCJcbiAgICB3ZWlnaHQ9XCI2MDBcIlxuICA+XG4gICAge3sgcHJpY2UgfCBjdXN0b21DdXJyZW5jeSB9fVxuICA8L3RrLWtpb3NrLXR5cG9ncmFwaHk+XG5cbiAgQGlmICh0eXBlQ291bnRlciA9PT0gJ2FkZCcpIHtcbiAgPHRrLWtpb3NrLWljb24tYnRuXG4gICAgW3NpemVdPVwiJ3NtYWxsJ1wiXG4gICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAoYnRuQ2xpY2spPVwib25DaGFuZ2VDb3VudGVyKDEpXCJcbiAgPjwvdGsta2lvc2staWNvbi1idG4+XG4gIH0gQGlmICh0eXBlQ291bnRlciA9PT0gJ21pbnVzJykge1xuICA8dGsta2lvc2staWNvbi1idG5cbiAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICBpY29uPVwidGsta2lvc2s6bWludXNcIlxuICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgKGJ0bkNsaWNrKT1cIm9uQ2hhbmdlQ291bnRlcigtMSlcIlxuICA+PC90ay1raW9zay1pY29uLWJ0bj5cbiAgfSBAaWYgKHR5cGVDb3VudGVyID09PSAnY291bnRlcicpIHtcbiAgPHRrLWtpb3NrLWJ0bi1jb3VudFxuICAgIFtjb3VudF09XCJxdWFudGl0eVwiXG4gICAgW3N0cm9rZWRdPVwiZmFsc2VcIlxuICAgIFt0b3RhbE1heF09XCJ0b3RhbE1heFwiXG4gICAgW3RvdGFsTWluXT1cInRvdGFsTWluXCJcbiAgICBzaXplPVwic21hbGxcIlxuICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgKG9uQWRkKT1cIm9uQ2hhbmdlQ291bnRlcigxKVwiXG4gICAgKG9uUmVtb3ZlKT1cIm9uQ2hhbmdlQ291bnRlcigtMSlcIlxuICA+PC90ay1raW9zay1idG4tY291bnQ+XG4gIH1cbjwvc2VjdGlvbj5cbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGsta2lvc2stY3VzdG9tZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90ay1raW9zay1kcy9zcmMvbGliL2NvbXBvbmVudHMvdGsta2lvc2stY3VzdG9tZS90ay1raW9zay1jdXN0b21lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RrLWtpb3NrLWRzL3NyYy9saWIvY29tcG9uZW50cy90ay1raW9zay1jdXN0b21lL3RrLWtpb3NrLWN1c3RvbWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7QUFlakcsTUFBTSxPQUFPLHVCQUF1QjtJQWJwQztRQWNFLDhCQUE4QjtRQUNyQixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCLG1DQUFtQztRQUMxQixnQkFBVyxHQUFxQyxFQUFFLENBQUM7UUFDbkQsYUFBUSxHQUFHLENBQUMsQ0FBQztRQUNiLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRXRCLCtCQUErQjtRQUN0QixpQkFBWSxHQUFHLElBQUksQ0FBQztRQUU3Qix3Q0FBd0M7UUFDL0IsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUU1QixnQ0FBZ0M7UUFDdkIsY0FBUyxHQUEwQixRQUFRLENBQUM7UUFFckQsb0NBQW9DO1FBQzNCLHNCQUFpQixHQUFzQixRQUFRLENBQUM7UUFFekQsMkNBQTJDO1FBQ2pDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3RDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBYzlDO0lBWkMsbUNBQW1DO0lBQ25DLGVBQWUsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUN6QyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUMvQixPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDNUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7OEdBeENVLHVCQUF1QjtrR0FBdkIsdUJBQXVCLDJhQ3BCcEMscXlDQWlEQSxtSUR0Q0ksMEJBQTBCLDBIQUMxQix1QkFBdUIsb0tBQ3ZCLHdCQUF3QixvTUFDeEIseUJBQXlCLG1MQUN6QixrQkFBa0I7OzJGQUtULHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDRSxrQkFBa0IsY0FDaEIsSUFBSSxXQUNQO3dCQUNQLDBCQUEwQjt3QkFDMUIsdUJBQXVCO3dCQUN2Qix3QkFBd0I7d0JBQ3hCLHlCQUF5Qjt3QkFDekIsa0JBQWtCO3FCQUNuQjs4QkFNUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0csWUFBWTtzQkFBcEIsS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdJLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUa0tpb3NrVHlwb2dyYXBoeUNvbXBvbmVudCB9IGZyb20gJy4uL3RrLWtpb3NrLXR5cG9ncmFwaHknO1xuaW1wb3J0IHsgVGtLaW9za0ljb25CdG5Db21wb25lbnQgfSBmcm9tICcuLi90ay1raW9zay1pY29uLWJ0bic7XG5pbXBvcnQgeyBUa0tpb3NrQnRuQ291bnRDb21wb25lbnQgfSBmcm9tICcuLi90ay1raW9zay1idG4tY291bnQnO1xuaW1wb3J0IHsgQ3VzdG9tQ3VycmVuY3lQaXBlIH0gZnJvbSAnLi4vLi4vcGlwZXMvY3VzdG9tLWN1cnJlbmN5LnBpcGUnO1xuaW1wb3J0IHsgVGtLaW9za0NoZWNrQ2FyZENvbXBvbmVudCB9IGZyb20gJy4uL3RrLWtpb3NrLWNoZWNrLWNhcmQvdGsta2lvc2stY2hlY2stY2FyZC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ay1raW9zay1jdXN0b21lJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFRrS2lvc2tUeXBvZ3JhcGh5Q29tcG9uZW50LFxuICAgIFRrS2lvc2tJY29uQnRuQ29tcG9uZW50LFxuICAgIFRrS2lvc2tCdG5Db3VudENvbXBvbmVudCxcbiAgICBUa0tpb3NrQ2hlY2tDYXJkQ29tcG9uZW50LFxuICAgIEN1c3RvbUN1cnJlbmN5UGlwZSxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL3RrLWtpb3NrLWN1c3RvbWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdGsta2lvc2stY3VzdG9tZS5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIFRrS2lvc2tDdXN0b21lQ29tcG9uZW50IHtcbiAgLy8gSW5wdXRzIGZvciBiYXNpYyBwcm9wZXJ0aWVzXG4gIEBJbnB1dCgpIHRpdGxlID0gJyc7XG4gIEBJbnB1dCgpIGltYWdlID0gJyc7XG4gIEBJbnB1dCgpIHByaWNlID0gMDtcbiAgQElucHV0KCkgc2VsZWN0ZWQgPSBmYWxzZTtcblxuICAvLyBJbnB1dHMgZm9yIGNvdW50ZXIgZnVuY3Rpb25hbGl0eVxuICBASW5wdXQoKSB0eXBlQ291bnRlcjogJ2FkZCcgfCAnbWludXMnIHwgJ2NvdW50ZXInIHwgJycgPSAnJztcbiAgQElucHV0KCkgcXVhbnRpdHkgPSAwO1xuICBASW5wdXQoKSB0b3RhbE1heCA9IDA7XG4gIEBJbnB1dCgpIHRvdGFsTWluID0gMDtcblxuICAvLyBJbnB1dCBmb3Igc2VsZWN0aW9uIGJlaGF2aW9yXG4gIEBJbnB1dCgpIGlzU2VsZWN0YWJsZSA9IHRydWU7XG5cbiAgLy8gTmV3IGlucHV0IGZvciBkaXNhYmxpbmcgdGhlIGNvbXBvbmVudFxuICBASW5wdXQoKSBpc0Rpc2FibGVkID0gZmFsc2U7XG5cbiAgLy8gTmV3IGlucHV0IGZvciBjaGVjayBjYXJkIHR5cGVcbiAgQElucHV0KCkgdHlwZUNoZWNrOiAnc2ltcGxlJyB8ICdtdWx0aXBsZScgPSAnc2ltcGxlJztcblxuICAvLyBOZXcgaW5wdXQgZm9yIGltYWdlIGJvcmRlciByYWRpdXNcbiAgQElucHV0KCkgaW1hZ2VCb3JkZXJSYWRpdXM6ICdjaXJjbGUnIHwgJ25vbmUnID0gJ2NpcmNsZSc7XG5cbiAgLy8gT3V0cHV0IGV2ZW50IGVtaXR0ZXIgZm9yIGNvdW50ZXIgY2hhbmdlc1xuICBAT3V0cHV0KCkgb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgQE91dHB1dCgpIG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLy8gRW1pdCBjaGFuZ2VzIGZvciBjb3VudGVyIGFjdGlvbnNcbiAgb25DaGFuZ2VDb3VudGVyKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodmFsdWUpO1xuICB9XG5cbiAgaGFuZGxlQ2xpY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNTZWxlY3RhYmxlICYmICF0aGlzLmlzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQgPSAhdGhpcy5zZWxlY3RlZDtcbiAgICAgIGNvbnNvbGUubG9nKCdDYXJkIGNsaWNrZWQ6JywgdGhpcy5zZWxlY3RlZCk7XG4gICAgICB0aGlzLm9uQ2xpY2suZW1pdCgpO1xuICAgIH1cbiAgfVxufVxuIiwiPHRrLWtpb3NrLWNoZWNrLWNhcmRcbiAgW29wdGlvbl09XCJ7XG4gICAgaW1hZ2U6IGltYWdlLFxuICAgIG5hbWU6IHRpdGxlLFxuICAgIGNoZWNrZWQ6IHNlbGVjdGVkXG4gIH1cIlxuICBbaXNEaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcbiAgW2hpZGVDaGVja109XCIhaXNTZWxlY3RhYmxlXCJcbiAgW3R5cGVdPVwidHlwZUNoZWNrXCJcbiAgW2ltYWdlQm9yZGVyUmFkaXVzXT1cImltYWdlQm9yZGVyUmFkaXVzXCJcbiAgKG9uQ2xpY2spPVwiaGFuZGxlQ2xpY2soKVwiXG4gIFt3aWR0aF09XCIhdHlwZUNvdW50ZXIgPyAnJyA6ICcyNDBweCdcIlxuPlxuICA8ZGl2IGNsYXNzPVwidGsta2lvc2stY3VzdG9tZV9fY29udGVudFwiPlxuICAgIDx0ay1raW9zay10eXBvZ3JhcGh5XG4gICAgICBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlclwiXG4gICAgICB0eXBlPVwiaDYtaGVhZGluZ1wiXG4gICAgICB3ZWlnaHQ9XCI2MDBcIlxuICAgID5cbiAgICAgIHt7IHByaWNlIHwgY3VzdG9tQ3VycmVuY3kgfX1cbiAgICA8L3RrLWtpb3NrLXR5cG9ncmFwaHk+XG5cbiAgICBAaWYgKHR5cGVDb3VudGVyID09PSAnYWRkJykge1xuICAgIDx0ay1raW9zay1pY29uLWJ0blxuICAgICAgW3NpemVdPVwiJ3NtYWxsJ1wiXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgKGJ0bkNsaWNrKT1cIm9uQ2hhbmdlQ291bnRlcigxKVwiXG4gICAgPjwvdGsta2lvc2staWNvbi1idG4+XG4gICAgfSBAaWYgKHR5cGVDb3VudGVyID09PSAnbWludXMnKSB7XG4gICAgPHRrLWtpb3NrLWljb24tYnRuXG4gICAgICBbc2l6ZV09XCInc21hbGwnXCJcbiAgICAgIGljb249XCJ0ay1raW9zazptaW51c1wiXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgKGJ0bkNsaWNrKT1cIm9uQ2hhbmdlQ291bnRlcigtMSlcIlxuICAgID48L3RrLWtpb3NrLWljb24tYnRuPlxuICAgIH0gQGlmICh0eXBlQ291bnRlciA9PT0gJ2NvdW50ZXInKSB7XG4gICAgPHRrLWtpb3NrLWJ0bi1jb3VudFxuICAgICAgW2NvdW50XT1cInF1YW50aXR5XCJcbiAgICAgIFtzdHJva2VkXT1cImZhbHNlXCJcbiAgICAgIFt0b3RhbE1heF09XCJ0b3RhbE1heFwiXG4gICAgICBbdG90YWxNaW5dPVwidG90YWxNaW5cIlxuICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgIGNvbG9yPVwicHJpbWFyeVwiXG4gICAgICAob25BZGQpPVwib25DaGFuZ2VDb3VudGVyKDEpXCJcbiAgICAgIChvblJlbW92ZSk9XCJvbkNoYW5nZUNvdW50ZXIoLTEpXCJcbiAgICA+PC90ay1raW9zay1idG4tY291bnQ+XG4gICAgfVxuICA8L2Rpdj5cbjwvdGsta2lvc2stY2hlY2stY2FyZD5cbiJdfQ==