chrv-components 1.0.2 → 1.0.3

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 (92) hide show
  1. package/esm2020/chrv-components.mjs +5 -0
  2. package/esm2020/lib/chr-breadcrumb/chr-breadcrumb.component.mjs +22 -0
  3. package/esm2020/lib/chr-button/chr-button.component.mjs +51 -0
  4. package/esm2020/lib/chr-checkbox/chr-checkbox.component.mjs +37 -0
  5. package/esm2020/lib/chr-components.module.mjs +117 -0
  6. package/esm2020/lib/chr-delete-modal/chr-delete-modal.component.mjs +22 -0
  7. package/esm2020/lib/chr-form/chr-form.component.mjs +132 -0
  8. package/esm2020/lib/chr-form/chr-validators/decimal-validator.mjs +58 -0
  9. package/esm2020/lib/chr-form/chr-validators/max-date-validator.mjs +54 -0
  10. package/esm2020/lib/chr-form/chr-validators/type-validator.mjs +52 -0
  11. package/esm2020/lib/chr-search-select/chr-search-select.component.mjs +136 -0
  12. package/esm2020/lib/chr-searchbar/chr-searchbar.component.mjs +29 -0
  13. package/esm2020/lib/chr-separator/chr-separator.component.mjs +11 -0
  14. package/esm2020/lib/chr-table/chr-table.component.mjs +58 -0
  15. package/esm2020/lib/chr-table-header-cell/chr-table-header-cell.component.mjs +49 -0
  16. package/esm2020/lib/services/dialog.service.mjs +29 -0
  17. package/esm2020/public-api.mjs +19 -0
  18. package/fesm2015/chrv-components.mjs +803 -0
  19. package/fesm2015/chrv-components.mjs.map +1 -0
  20. package/fesm2020/chrv-components.mjs +797 -0
  21. package/fesm2020/chrv-components.mjs.map +1 -0
  22. package/index.d.ts +5 -0
  23. package/lib/chr-breadcrumb/chr-breadcrumb.component.d.ts +15 -0
  24. package/lib/chr-button/chr-button.component.d.ts +19 -0
  25. package/lib/chr-checkbox/chr-checkbox.component.d.ts +13 -0
  26. package/lib/chr-components.module.d.ts +28 -0
  27. package/lib/chr-delete-modal/chr-delete-modal.component.d.ts +11 -0
  28. package/lib/chr-form/chr-form.component.d.ts +57 -0
  29. package/lib/chr-form/chr-validators/decimal-validator.d.ts +10 -0
  30. package/lib/chr-form/chr-validators/max-date-validator.d.ts +10 -0
  31. package/lib/chr-form/chr-validators/type-validator.d.ts +10 -0
  32. package/lib/chr-search-select/chr-search-select.component.d.ts +44 -0
  33. package/lib/chr-searchbar/chr-searchbar.component.d.ts +14 -0
  34. package/lib/chr-separator/chr-separator.component.d.ts +5 -0
  35. package/lib/chr-table/chr-table.component.d.ts +38 -0
  36. package/lib/chr-table-header-cell/chr-table-header-cell.component.d.ts +16 -0
  37. package/lib/services/dialog.service.d.ts +10 -0
  38. package/package.json +22 -3
  39. package/{src/public-api.ts → public-api.d.ts} +15 -21
  40. package/chr-theme.scss +0 -97
  41. package/ng-package.json +0 -7
  42. package/src/lib/chr-breadcrumb/chr-breadcrumb.component.html +0 -9
  43. package/src/lib/chr-breadcrumb/chr-breadcrumb.component.scss +0 -0
  44. package/src/lib/chr-breadcrumb/chr-breadcrumb.component.spec.ts +0 -22
  45. package/src/lib/chr-breadcrumb/chr-breadcrumb.component.ts +0 -23
  46. package/src/lib/chr-button/chr-button.component.html +0 -20
  47. package/src/lib/chr-button/chr-button.component.scss +0 -0
  48. package/src/lib/chr-button/chr-button.component.spec.ts +0 -23
  49. package/src/lib/chr-button/chr-button.component.ts +0 -36
  50. package/src/lib/chr-checkbox/chr-checkbox.component.html +0 -4
  51. package/src/lib/chr-checkbox/chr-checkbox.component.scss +0 -15
  52. package/src/lib/chr-checkbox/chr-checkbox.component.spec.ts +0 -23
  53. package/src/lib/chr-checkbox/chr-checkbox.component.ts +0 -30
  54. package/src/lib/chr-components.module.ts +0 -69
  55. package/src/lib/chr-delete-modal/chr-delete-modal.component.html +0 -26
  56. package/src/lib/chr-delete-modal/chr-delete-modal.component.scss +0 -0
  57. package/src/lib/chr-delete-modal/chr-delete-modal.component.spec.ts +0 -23
  58. package/src/lib/chr-delete-modal/chr-delete-modal.component.ts +0 -19
  59. package/src/lib/chr-form/chr-form.component.html +0 -98
  60. package/src/lib/chr-form/chr-form.component.scss +0 -37
  61. package/src/lib/chr-form/chr-form.component.spec.ts +0 -23
  62. package/src/lib/chr-form/chr-form.component.ts +0 -173
  63. package/src/lib/chr-form/chr-validators/decimal-validator.ts +0 -54
  64. package/src/lib/chr-form/chr-validators/max-date-validator.ts +0 -48
  65. package/src/lib/chr-form/chr-validators/type-validator.ts +0 -47
  66. package/src/lib/chr-search-select/chr-search-select.component.html +0 -19
  67. package/src/lib/chr-search-select/chr-search-select.component.scss +0 -3
  68. package/src/lib/chr-search-select/chr-search-select.component.spec.ts +0 -23
  69. package/src/lib/chr-search-select/chr-search-select.component.ts +0 -164
  70. package/src/lib/chr-searchbar/chr-searchbar.component.html +0 -10
  71. package/src/lib/chr-searchbar/chr-searchbar.component.scss +0 -0
  72. package/src/lib/chr-searchbar/chr-searchbar.component.spec.ts +0 -23
  73. package/src/lib/chr-searchbar/chr-searchbar.component.ts +0 -23
  74. package/src/lib/chr-separator/chr-separator.component.html +0 -3
  75. package/src/lib/chr-separator/chr-separator.component.scss +0 -24
  76. package/src/lib/chr-separator/chr-separator.component.spec.ts +0 -23
  77. package/src/lib/chr-separator/chr-separator.component.ts +0 -10
  78. package/src/lib/chr-table/chr-table.component.html +0 -88
  79. package/src/lib/chr-table/chr-table.component.scss +0 -53
  80. package/src/lib/chr-table/chr-table.component.spec.ts +0 -23
  81. package/src/lib/chr-table/chr-table.component.ts +0 -72
  82. package/src/lib/chr-table-header-cell/chr-table-header-cell.component.html +0 -9
  83. package/src/lib/chr-table-header-cell/chr-table-header-cell.component.scss +0 -31
  84. package/src/lib/chr-table-header-cell/chr-table-header-cell.component.spec.ts +0 -23
  85. package/src/lib/chr-table-header-cell/chr-table-header-cell.component.ts +0 -39
  86. package/src/lib/services/dialog.service.ts +0 -23
  87. package/styles.scss +0 -93
  88. package/tailwind.config.js +0 -30
  89. package/theme.scss +0 -59
  90. package/tsconfig.lib.json +0 -14
  91. package/tsconfig.lib.prod.json +0 -10
  92. package/tsconfig.spec.json +0 -14
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hydi1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvY2hydi1jb21wb25lbnRzL3NyYy9jaHJ2LWNvbXBvbmVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,22 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/router";
4
+ import * as i2 from "@angular/common";
5
+ import * as i3 from "@angular/material/button";
6
+ export class BreadcrumbComponent {
7
+ constructor(router) {
8
+ this.router = router;
9
+ this.navigateTo = (uri, data) => {
10
+ this.router.navigate([uri], { state: data });
11
+ };
12
+ }
13
+ }
14
+ BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component });
15
+ BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: BreadcrumbComponent, selector: "app-chr-breadcrumb", inputs: { crumbs: "crumbs" }, ngImport: i0, template: "<div class=\"w-full flex flex-row flex-wrap dark:!text-gray-400\">\n <div *ngFor=\"let crumb of crumbs\" class=\"w-fit min-w-fit\">\n <button class=\"dark:!text-gray-400\" [disabled]=\"!crumb.link && !crumb.callback\" mat-button\n (click)=\"crumb.callback?.() || crumb.link && navigateTo(crumb.link)\">\n {{ crumb.display }}\n </button>\n {{ (crumb.link || crumb.callback) && \">\" }}\n </div>\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: BreadcrumbComponent, decorators: [{
17
+ type: Component,
18
+ args: [{ selector: 'app-chr-breadcrumb', template: "<div class=\"w-full flex flex-row flex-wrap dark:!text-gray-400\">\n <div *ngFor=\"let crumb of crumbs\" class=\"w-fit min-w-fit\">\n <button class=\"dark:!text-gray-400\" [disabled]=\"!crumb.link && !crumb.callback\" mat-button\n (click)=\"crumb.callback?.() || crumb.link && navigateTo(crumb.link)\">\n {{ crumb.display }}\n </button>\n {{ (crumb.link || crumb.callback) && \">\" }}\n </div>\n</div>" }]
19
+ }], ctorParameters: function () { return [{ type: i1.Router }]; }, propDecorators: { crumbs: [{
20
+ type: Input
21
+ }] } });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyLWJyZWFkY3J1bWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hydi1jb21wb25lbnRzL3NyYy9saWIvY2hyLWJyZWFkY3J1bWIvY2hyLWJyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hydi1jb21wb25lbnRzL3NyYy9saWIvY2hyLWJyZWFkY3J1bWIvY2hyLWJyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBY2pELE1BQU0sT0FBTyxtQkFBbUI7SUFHOUIsWUFBbUIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFFakMsZUFBVSxHQUFHLENBQUMsR0FBVyxFQUFFLElBQVUsRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUM7SUFKa0MsQ0FBQzs7aUhBSDFCLG1CQUFtQjtxR0FBbkIsbUJBQW1CLHdGQ2RoQyx3YUFRTTs0RkRNTyxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0Usb0JBQW9COzZGQUtyQixNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBzdHJpbmc7XG4gIGxpbms/OiBzdHJpbmc7XG4gIGNhbGxiYWNrPzogRnVuY3Rpb247XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1jaHItYnJlYWRjcnVtYicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaHItYnJlYWRjcnVtYi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Noci1icmVhZGNydW1iLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJDb21wb25lbnQge1xuICBASW5wdXQoKSBjcnVtYnM6IEJyZWFkY3J1bWJbXTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcm91dGVyOiBSb3V0ZXIpIHt9XG5cbiAgbmF2aWdhdGVUbyA9ICh1cmk6IHN0cmluZywgZGF0YT86IGFueSkgPT4ge1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt1cmldLCB7IHN0YXRlOiBkYXRhIH0pO1xuICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBkYXJrOiF0ZXh0LWdyYXktNDAwXCI+XG4gIDxkaXYgKm5nRm9yPVwibGV0IGNydW1iIG9mIGNydW1ic1wiIGNsYXNzPVwidy1maXQgbWluLXctZml0XCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cImRhcms6IXRleHQtZ3JheS00MDBcIiBbZGlzYWJsZWRdPVwiIWNydW1iLmxpbmsgJiYgIWNydW1iLmNhbGxiYWNrXCIgbWF0LWJ1dHRvblxuICAgICAgKGNsaWNrKT1cImNydW1iLmNhbGxiYWNrPy4oKSB8fCBjcnVtYi5saW5rICYmIG5hdmlnYXRlVG8oY3J1bWIubGluaylcIj5cbiAgICAgIHt7IGNydW1iLmRpc3BsYXkgfX1cbiAgICA8L2J1dHRvbj5cbiAgICB7eyAoY3J1bWIubGluayB8fCBjcnVtYi5jYWxsYmFjaykgJiYgXCI+XCIgfX1cbiAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -0,0 +1,51 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/material/icon";
5
+ import * as i3 from "@angular/material/button";
6
+ import * as i4 from "@angular/material/tooltip";
7
+ export class ChrButtonComponent {
8
+ constructor() {
9
+ this.display = '';
10
+ this.icon = '';
11
+ this.color = 'none';
12
+ this.predicate = true;
13
+ this.type = 'none';
14
+ this.disabled = false;
15
+ this.setDisabled = (is) => {
16
+ this.disabled = is;
17
+ };
18
+ this.doClick = () => {
19
+ this.click?.();
20
+ };
21
+ }
22
+ }
23
+ ChrButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChrButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
+ ChrButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChrButtonComponent, selector: "app-chr-button", inputs: { display: "display", icon: "icon", click: "click", color: "color", predicate: "predicate", type: "type", href: "href", target: "target", disabled: "disabled", tooltip: "tooltip", tooltipPosition: "tooltipPosition" }, ngImport: i0, template: "<div class=\"grid\">\n <a mat-button mat-flat-button *ngIf=\"predicate\" [disabled]=\"disabled\" [ngClass]=\"\n type == 'full'\n ? 'grid grid-cols-1 flex-1 self-end content-end items-center justify-center !w-full'\n : ' '\n \" [ngClass]=\"type == 'table' ? 'h-14 grid grid-cols-1' : ''\"\n [ngClass]=\"type == 'fixed' ? 'h-14 grid grid-cols-1 w-36' : ''\" color=\"{{ color }}\" (click)=\"click?.()\"\n [attr.href]=\"href && href\" [attr.target]=\"target && target\" [matTooltip]=\"tooltip||''\"\n [matTooltipPosition]=\"tooltipPosition||'above'\">\n {{ display }}\n <mat-icon *ngIf=\"icon\">{{ icon }}</mat-icon>\n </a>\n</div>\n<!--\n IF\n Click\n color\n type: table : full \n icon\n-->", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matButton", "matAnchor"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChrButtonComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'app-chr-button', template: "<div class=\"grid\">\n <a mat-button mat-flat-button *ngIf=\"predicate\" [disabled]=\"disabled\" [ngClass]=\"\n type == 'full'\n ? 'grid grid-cols-1 flex-1 self-end content-end items-center justify-center !w-full'\n : ' '\n \" [ngClass]=\"type == 'table' ? 'h-14 grid grid-cols-1' : ''\"\n [ngClass]=\"type == 'fixed' ? 'h-14 grid grid-cols-1 w-36' : ''\" color=\"{{ color }}\" (click)=\"click?.()\"\n [attr.href]=\"href && href\" [attr.target]=\"target && target\" [matTooltip]=\"tooltip||''\"\n [matTooltipPosition]=\"tooltipPosition||'above'\">\n {{ display }}\n <mat-icon *ngIf=\"icon\">{{ icon }}</mat-icon>\n </a>\n</div>\n<!--\n IF\n Click\n color\n type: table : full \n icon\n-->" }]
28
+ }], ctorParameters: function () { return []; }, propDecorators: { display: [{
29
+ type: Input
30
+ }], icon: [{
31
+ type: Input
32
+ }], click: [{
33
+ type: Input
34
+ }], color: [{
35
+ type: Input
36
+ }], predicate: [{
37
+ type: Input
38
+ }], type: [{
39
+ type: Input
40
+ }], href: [{
41
+ type: Input
42
+ }], target: [{
43
+ type: Input
44
+ }], disabled: [{
45
+ type: Input
46
+ }], tooltip: [{
47
+ type: Input
48
+ }], tooltipPosition: [{
49
+ type: Input
50
+ }] } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaHJ2LWNvbXBvbmVudHMvc3JjL2xpYi9jaHItYnV0dG9uL2Noci1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hydi1jb21wb25lbnRzL3NyYy9saWIvY2hyLWJ1dHRvbi9jaHItYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFPakQsTUFBTSxPQUFPLGtCQUFrQjtJQW1CN0I7UUFsQlMsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQUNyQixTQUFJLEdBQVcsRUFBRSxDQUFDO1FBRWxCLFVBQUssR0FBMkMsTUFBTSxDQUFDO1FBQ3ZELGNBQVMsR0FBYSxJQUFJLENBQUM7UUFDM0IsU0FBSSxHQUF3QyxNQUFNLENBQUM7UUFHbkQsYUFBUSxHQUFZLEtBQUssQ0FBQztRQVluQyxnQkFBVyxHQUFHLENBQUMsRUFBVyxFQUFFLEVBQUU7WUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDO1FBRUYsWUFBTyxHQUFHLEdBQUcsRUFBRTtZQUNiLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQztJQVJhLENBQUM7O2dIQW5CTCxrQkFBa0I7b0dBQWxCLGtCQUFrQix3UkNQL0IseXVCQW1CRzs0RkRaVSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZ0JBQWdCOzBFQUtqQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtY2hyLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jaHItYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hyLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDaHJCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBkaXNwbGF5OiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgaWNvbjogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGNsaWNrPzogRnVuY3Rpb247XG4gIEBJbnB1dCgpIGNvbG9yOiAncHJpbWFyeScgfCAnYWNjZW50JyB8ICd3YXJuJyB8ICdub25lJyA9ICdub25lJztcbiAgQElucHV0KCkgcHJlZGljYXRlPzogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHR5cGU6ICd0YWJsZScgfCAnZnVsbCcgfCAnZml4ZWQnIHwgJ25vbmUnID0gJ25vbmUnO1xuICBASW5wdXQoKSBocmVmPzogc3RyaW5nO1xuICBASW5wdXQoKSB0YXJnZXQ6ICdfYmxhbmsnIHwgJ19wYXJlbnQnIHwgJ19zZWxmJyB8ICdfdG9wJztcbiAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgdG9vbHRpcD86IHN0cmluZztcbiAgQElucHV0KCkgdG9vbHRpcFBvc2l0aW9uPzpcbiAgICB8ICdhYm92ZSdcbiAgICB8ICdiZWxvdydcbiAgICB8ICdsZWZ0J1xuICAgIHwgJ3JpZ2h0J1xuICAgIHwgJ2JlZm9yZSdcbiAgICB8ICdhZnRlcic7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIHNldERpc2FibGVkID0gKGlzOiBib29sZWFuKSA9PiB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzO1xuICB9O1xuXG4gIGRvQ2xpY2sgPSAoKSA9PiB7XG4gICAgdGhpcy5jbGljaz8uKCk7XG4gIH07XG59XG4iLCI8ZGl2IGNsYXNzPVwiZ3JpZFwiPlxuICA8YSBtYXQtYnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiAqbmdJZj1cInByZWRpY2F0ZVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFtuZ0NsYXNzXT1cIlxuICAgICAgdHlwZSA9PSAnZnVsbCdcbiAgICAgICAgPyAnZ3JpZCBncmlkLWNvbHMtMSBmbGV4LTEgc2VsZi1lbmQgY29udGVudC1lbmQgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyICF3LWZ1bGwnXG4gICAgICAgIDogJyAnXG4gICAgXCIgW25nQ2xhc3NdPVwidHlwZSA9PSAndGFibGUnID8gJ2gtMTQgZ3JpZCBncmlkLWNvbHMtMScgOiAnJ1wiXG4gICAgW25nQ2xhc3NdPVwidHlwZSA9PSAnZml4ZWQnID8gJ2gtMTQgZ3JpZCBncmlkLWNvbHMtMSB3LTM2JyA6ICcnXCIgY29sb3I9XCJ7eyBjb2xvciB9fVwiIChjbGljayk9XCJjbGljaz8uKClcIlxuICAgIFthdHRyLmhyZWZdPVwiaHJlZiAmJiBocmVmXCIgW2F0dHIudGFyZ2V0XT1cInRhcmdldCAmJiB0YXJnZXRcIiBbbWF0VG9vbHRpcF09XCJ0b29sdGlwfHwnJ1wiXG4gICAgW21hdFRvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb258fCdhYm92ZSdcIj5cbiAgICB7eyBkaXNwbGF5IH19XG4gICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiPnt7IGljb24gfX08L21hdC1pY29uPlxuICA8L2E+XG48L2Rpdj5cbjwhLS1cbiAgICBJRlxuICAgIENsaWNrXG4gICAgY29sb3JcbiAgICB0eXBlOiB0YWJsZSA6IGZ1bGwgIFxuICAgIGljb25cbi0tPiJdfQ==