@paperless/angular 1.26.3 → 1.26.4

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.
@@ -185,10 +185,10 @@ export class TableCell {
185
185
  }
186
186
  }
187
187
  TableCell.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, deps: [], target: i0.ɵɵFactoryTarget.Component });
188
- TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", template: "template" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n <p-loader\n *ngSwitchCase=\"'loading'\"\n variant=\"ghost\"\n class=\"h-6 w-full flex-1 rounded\"\n ></p-loader>\n\n <div\n *ngSwitchCase=\"'header'\"\n class=\"flex w-full overflow-hidden\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n\n <div\n *ngSwitchCase=\"'default'\"\n class=\"flex w-full\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngIf=\"template; else valueTemplate\">\n <ng-container\n *ngTemplateOutlet=\"template; context: data\"\n ></ng-container>\n </ng-container>\n </div>\n</ng-container>\n\n<ng-template #valueTemplate>\n {{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
188
+ TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", template: "template" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<div\n\t\t*ngSwitchCase=\"'header'\"\n\t\tclass=\"flex w-full overflow-hidden\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\tclass=\"flex min-w-0 flex-1\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container\n\t\t\t\t*ngTemplateOutlet=\"template; context: data\"\n\t\t\t></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t{{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
189
189
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, decorators: [{
190
190
  type: Component,
191
- args: [{ selector: 'p-table-cell-ngx', template: "<ng-container *ngIf=\"checkbox\">\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n <p-loader\n *ngSwitchCase=\"'loading'\"\n variant=\"ghost\"\n class=\"h-6 w-full flex-1 rounded\"\n ></p-loader>\n\n <div\n *ngSwitchCase=\"'header'\"\n class=\"flex w-full overflow-hidden\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n\n <div\n *ngSwitchCase=\"'default'\"\n class=\"flex w-full\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngIf=\"template; else valueTemplate\">\n <ng-container\n *ngTemplateOutlet=\"template; context: data\"\n ></ng-container>\n </ng-container>\n </div>\n</ng-container>\n\n<ng-template #valueTemplate>\n {{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"] }]
191
+ args: [{ selector: 'p-table-cell-ngx', template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<div\n\t\t*ngSwitchCase=\"'header'\"\n\t\tclass=\"flex w-full overflow-hidden\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\tclass=\"flex min-w-0 flex-1\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container\n\t\t\t\t*ngTemplateOutlet=\"template; context: data\"\n\t\t\t></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t{{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"] }]
192
192
  }], propDecorators: { variant: [{
193
193
  type: Input
194
194
  }], index: [{
@@ -209,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
209
209
  type: HostBinding,
210
210
  args: ['class']
211
211
  }] } });
212
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtY2VsbC90YWJsZS1jZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL21vZHVsZXMvdGFibGUvY29tcG9uZW50cy90YWJsZS1jZWxsL3RhYmxlLWNlbGwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLGVBQWUsR0FJbEIsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQU16QixNQUFNLE9BQU8sU0FBUztJQUx0QjtRQU1JOztXQUVHO1FBQ00sWUFBTyxHQUFxQyxTQUFTLENBQUM7UUFFL0Q7O1dBRUc7UUFDTSxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBRTNCOztXQUVHO1FBQ00sYUFBUSxHQUFXLENBQUMsQ0FBQztLQThOakM7SUFuTUcsSUFDSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFFBQVEsRUFBRTtZQUMzQixPQUFPO2dCQUNILEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSzthQUNwQixDQUFDO1NBQ0w7UUFFRCxPQUFPO1lBQ0gsS0FBSyxFQUNELElBQUksQ0FBQyxLQUFLLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDbEUsSUFBSSxFQUFFLElBQUks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Z0JBS0csVUFBVTtzQkFBbEIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBS0csS0FBSztzQkFBYixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRixLQUFLO3NCQURSLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBpc1RhYmxlQ29sdW1uU2l6ZXNLZXksXG4gICAgb2JqZWN0R2V0QnlQYXRoLFxuICAgIFRhYmxlQ29sdW1uU2l6ZXMsXG4gICAgVGFibGVDb2x1bW5TaXplc0tleSxcbiAgICBUYWJsZURlZmluaXRpb25EYXRhLFxufSBmcm9tICdAcGFwZXJsZXNzL2NvcmUnO1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwLXRhYmxlLWNlbGwtbmd4JyxcbiAgICBzdHlsZVVybHM6IFsndGFibGUtY2VsbC5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1jZWxsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDZWxsIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdmFyaWFudCBvZiB0aGUgY29sdW1uXG4gICAgICovXG4gICAgQElucHV0KCkgdmFyaWFudDogJ2RlZmF1bHQnIHwgJ2xvYWRpbmcnIHwgJ2hlYWRlcicgPSAnZGVmYXVsdCc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaW5kZXggb2YgdGhlIGNvbHVtblxuICAgICAqL1xuICAgIEBJbnB1dCgpIGluZGV4OiBudW1iZXIgPSAwO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGluZGV4IG9mIHRoZSByb3dcbiAgICAgKi9cbiAgICBASW5wdXQoKSByb3dJbmRleDogbnVtYmVyID0gMDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkZWZpbml0aW9uIG9mIHRoZSB0YWJsZSBjb2x1bW5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBkZWZpbml0aW9uPzogYW55OyAvLyBUYWJsZURlZmluaXRpb25cblxuICAgIC8qKlxuICAgICAqIFRoZSBpdGVtIGluIHF1ZXN0aW9uXG4gICAgICovXG4gICAgQElucHV0KCkgaXRlbTogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZhbHVlIG9mIHRoZSBjb2x1bW5cbiAgICAgKi9cbiAgICBASW5wdXQoKSB2YWx1ZTogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoZWNrYm94IHRlbXBsYXRlUmVmXG4gICAgICovXG4gICAgQElucHV0KCkgY2hlY2tib3g6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdGVtcGxhdGUgcmVmIGZvciB0aGUgY29udGVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNsYXNzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb2x1bW5DbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0IGRhdGEoKTogVGFibGVEZWZpbml0aW9uRGF0YSB8IHsgdmFsdWU6IHN0cmluZyB9IHtcbiAgICAgICAgaWYgKHRoaXMudmFyaWFudCA9PT0gJ2hlYWRlcicpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHZhbHVlOlxuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPz8gb2JqZWN0R2V0QnlQYXRoKHRoaXMuaXRlbSwgdGhpcy5kZWZpbml0aW9uLnBhdGgpLFxuICAgICAgICAgICAgaXRlbTogdGhpcy5pdGVtLFxuICAgICAgICAgICAgaW5kZXg6IHRoaXMuaW5kZXgsXG4gICAgICAgICAgICByb3dJbmRleDogdGhpcy5yb3dJbmRleCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvLyByZW5kZXIoKSB7XG4gICAgLy8gXHRyZXR1cm4gKFxuICAgIC8vIFx0XHQ8SG9zdFxuICAgIC8vIFx0XHRcdGNsYXNzPXt7XG4gICAgLy8gXHRcdFx0XHQncC10YWJsZS1jb2x1bW4nOiB0cnVlLFxuICAgIC8vIFx0XHRcdFx0W2B2YXJpYW50LSR7dGhpcy52YXJpYW50fWBdOiB0cnVlLFxuICAgIC8vIFx0XHRcdFx0Li4udGhpcy5fZ2V0Q29sdW1uQ2xhc3NlcygpLFxuICAgIC8vIFx0XHRcdH19XG4gICAgLy8gXHRcdD5cbiAgICAvLyBcdFx0XHR7dGhpcy5jaGVja2JveH1cblxuICAgIC8vIFx0XHRcdHt0aGlzLnZhcmlhbnQgPT09ICdsb2FkaW5nJyA/IChcbiAgICAvLyBcdFx0XHRcdDxwLWxvYWRlclxuICAgIC8vIFx0XHRcdFx0XHR2YXJpYW50PVwiZ2hvc3RcIlxuICAgIC8vIFx0XHRcdFx0XHRjbGFzcz1cInJvdW5kZWQgZmxleC0xIHctZnVsbCBoLTZcIlxuICAgIC8vIFx0XHRcdFx0Lz5cbiAgICAvLyBcdFx0XHQpIDogKFxuICAgIC8vIFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAvLyBcdFx0XHRcdFx0e3RoaXMudmFyaWFudCA9PT0gJ2hlYWRlcicgPyAoXG4gICAgLy8gXHRcdFx0XHRcdFx0dGhpcy5kYXRhLnZhbHVlXG4gICAgLy8gXHRcdFx0XHRcdCkgOiB0aGlzLmRlZmluaXRpb24udXNlU2xvdCA/IChcbiAgICAvLyBcdFx0XHRcdFx0XHQ8c2xvdCAvPlxuICAgIC8vIFx0XHRcdFx0XHQpIDogKFxuICAgIC8vIFx0XHRcdFx0XHRcdHRoaXMudGVtcGxhdGUodGhpcy5kYXRhIGFzIFRhYmxlRGVmaW5pdGlvbkRhdGEpXG4gICAgLy8gXHRcdFx0XHRcdCl9XG4gICAgLy8gXHRcdFx0XHQ8L2Rpdj5cbiAgICAvLyBcdFx0XHQpfVxuICAgIC8vIFx0XHQ8L0hvc3Q+XG4gICAgLy8gXHQpO1xuICAgIC8vIH1cblxuICAgIHB1YmxpYyBnZXRDb2x1bW5DbGFzc2VzKCkge1xuICAgICAgICBjb25zdCBzaXplcyA9IHRoaXMuZGVmaW5pdGlvbiA/IHRoaXMuX2dldFNpemVzKHRoaXMuZGVmaW5pdGlvbikgOiB7fTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdqdXN0aWZ5LXN0YXJ0JzpcbiAgICAgICAgICAgICAgICAhdGhpcy5kZWZpbml0aW9uPy5hbGlnbiB8fCB0aGlzLmRlZmluaXRpb24/LmFsaWduID09PSAnc3RhcnQnLFxuICAgICAgICAgICAgJ2p1c3RpZnktY2VudGVyJzogdGhpcy5kZWZpbml0aW9uPy5hbGlnbiA9PT0gJ2NlbnRlcicsXG4gICAgICAgICAgICAnanVzdGlmeS1lbmQnOiB0aGlzLmRlZmluaXRpb24/LmFsaWduID09PSAnZW5kJyxcbiAgICAgICAgICAgICdmb250LXNlbWlib2xkJzpcbiAgICAgICAgICAgICAgICB0aGlzLnZhcmlhbnQgIT09ICdoZWFkZXInICYmIHRoaXMuZGVmaW5pdGlvbj8udHlwZSA9PT0gJ3RoJyxcbiAgICAgICAgICAgICd0ZXh0LXN0b3JtLWRhcmsnOlxuICAgICAgICAgICAgICAgIHRoaXMudmFyaWFudCAhPT0gJ2hlYWRlcicgJiYgdGhpcy5kZWZpbml0aW9uPy50eXBlID09PSAndGgnLFxuICAgICAgICAgICAgJ3ByLTQnOiB0aGlzLmRlZmluaXRpb24/LmlzTGFzdCA9PT0gZmFsc2UsXG4gICAgICAgICAgICAuLi5zaXplcyxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKlxuICAgICBXaXRoIHRoaXMsIHdlIHNoYWxsIGhhY2sgdGhlIHN5c3RlbSBpbiB3YXlzIG5vIG9uZSB3b3VsZCBldmVyIGhhdmUgdGhvdWdodC5cblxuICAgICB3LTEvMTIgdy0yLzEyIHctMy8xMiB3LTQvMTIgdy01LzEyIHctNi8xMiB3LTcvMTIgdy04LzEyIHctOS8xMiB3LTEwLzEyIHctMTEvMTIgdy0xMi8xMlxuICAgICB0YWJsZXQ6dy0xLzEyIHRhYmxldDp3LTIvMTIgdGFibGV0OnctMy8xMiB0YWJsZXQ6dy00LzEyIHRhYmxldDp3LTUvMTIgdGFibGV0OnctNi8xMiB0YWJsZXQ6dy03LzEyIHRhYmxldDp3LTgvMTIgdGFibGV0OnctOS8xMiB0YWJsZXQ6dy0xMC8xMiB0YWJsZXQ6dy0xMS8xMiB0YWJsZXQ6dy0xMi8xMlxuICAgICBkZXNrdG9wLXhzOnctMS8xMiBkZXNrdG9wLXhzOnctMi8xMiBkZXNrdG9wLXhzOnctMy8xMiBkZXNrdG9wLXhzOnctNC8xMiBkZXNrdG9wLXhzOnctNS8xMiBkZXNrdG9wLXhzOnctNi8xMiBkZXNrdG9wLXhzOnctNy8xMiBkZXNrdG9wLXhzOnctOC8xMiBkZXNrdG9wLXhzOnctOS8xMiBkZXNrdG9wLXhzOnctMTAvMTIgZGVza3RvcC14czp3LTExLzEyIGRlc2t0b3AteHM6dy0xMi8xMlxuICAgICBkZXNrdG9wLXhzOnctMS8xMiBkZXNrdG9wLXhzOnctMi8xMiBkZXNrdG9wLXhzOnctMy8xMiBkZXNrdG9wLXhzOnctNC8xMiBkZXNrdG9wLXhzOnctNS8xMiBkZXNrdG9wLXhzOnctNi8xMiBkZXNrdG9wLXhzOnctNy8xMiBkZXNrdG9wLXhzOnctOC8xMiBkZXNrdG9wLXhzOnctOS8xMiBkZXNrdG9wLXhzOnctMTAvMTIgZGVza3RvcC14czp3LTExLzEyIGRlc2t0b3AteHM6dy0xMi8xMlxuICAgICBkZXNrdG9wLXNtOnctMS8xMiBkZXNrdG9wLXNtOnctMi8xMiBkZXNrdG9wLXNtOnctMy8xMiBkZXNrdG9wLXNtOnctNC8xMiBkZXNrdG9wLXNtOnctNS8xMiBkZXNrdG9wLXNtOnctNi8xMiBkZXNrdG9wLXNtOnctNy8xMiBkZXNrdG9wLXNtOnctOC8xMiBkZXNrdG9wLXNtOnctOS8xMiBkZXNrdG9wLXNtOnctMTAvMTIgZGVza3RvcC1zbTp3LTExLzEyIGRlc2t0b3Atc206dy0xMi8xMlxuICAgICBkZXNrdG9wOnctMS8xMiBkZXNrdG9wOnctMi8xMiBkZXNrdG9wOnctMy8xMiBkZXNrdG9wOnctNC8xMiBkZXNrdG9wOnctNS8xMiBkZXNrdG9wOnctNi8xMiBkZXNrdG9wOnctNy8xMiBkZXNrdG9wOnctOC8xMiBkZXNrdG9wOnctOS8xMiBkZXNrdG9wOnctMTAvMTIgZGVza3RvcDp3LTExLzEyIGRlc2t0b3A6dy0xMi8xMlxuICAgICBkZXNrdG9wLWxnOnctMS8xMiBkZXNrdG9wLWxnOnctMi8xMiBkZXNrdG9wLWxnOnctMy8xMiBkZXNrdG9wLWxnOnctNC8xMiBkZXNrdG9wLWxnOnctNS8xMiBkZXNrdG9wLWxnOnctNi8xMiBkZXNrdG9wLWxnOnctNy8xMiBkZXNrdG9wLWxnOnctOC8xMiBkZXNrdG9wLWxnOnctOS8xMiBkZXNrdG9wLWxnOnctMTAvMTIgZGVza3RvcC1sZzp3LTExLzEyIGRlc2t0b3AtbGc6dy0xMi8xMlxuICAgICBkZXNrdG9wLXhsOnctMS8xMiBkZXNrdG9wLXhsOnctMi8xMiBkZXNrdG9wLXhsOnctMy8xMiBkZXNrdG9wLXhsOnctNC8xMiBkZXNrdG9wLXhsOnctNS8xMiBkZXNrdG9wLXhsOnctNi8xMiBkZXNrdG9wLXhsOnctNy8xMiBkZXNrdG9wLXhsOnctOC8xMiBkZXNrdG9wLXhsOnctOS8xMiBkZXNrdG9wLXhsOnctMTAvMTIgZGVza3RvcC14bDp3LTExLzEyIGRlc2t0b3AteGw6dy0xMi8xMlxuICAgICBoaWRkZW4gZmxleFxuICAgICB0YWJsZXQ6aGlkZGVuIHRhYmxldDpmbGV4XG4gICAgIGRlc2t0b3AteHM6aGlkZGVuIGRlc2t0b3AteHM6ZmxleFxuICAgICBkZXNrdG9wLXNtOmhpZGRlbiBkZXNrdG9wLXNtOmZsZXhcbiAgICAgZGVza3RvcDpoaWRkZW4gZGVza3RvcDpmbGV4XG4gICAgIGRlc2t0b3AtbGc6aGlkZGVuIGRlc2t0b3AtbGc6ZmxleFxuICAgICBkZXNrdG9wLXhsOmhpZGRlbiBkZXNrdG9wLXhsOmZsZXhcblxuXG4gICAgICAgIOKggOKggOKggOKggOKggOKjoOKjtOKjtuKjv+Kjv+Kgv+Kjt+KjtuKjpOKjhOKhgOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjoOKjtOKjtuKjt+Kgv+Kjv+Kjv+KjtuKjpuKjgOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDiooDio77io7/io7/io7/io7/io7/io7/io7/io7bio6bio6zioYnioJLioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJrioonio6Xio7Tio77io7/io7/io7/io7/io7/io7/io7/io6fioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qG+4qC/4qCb4qCb4qCb4qCb4qC/4qK/4qO/4qO/4qO/4qO/4qO/4qO34qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qOg4qO+4qO/4qO/4qO/4qO/4qO/4qC/4qC/4qCb4qCb4qCb4qCb4qC/4qKn4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmeKgu+Kjv+Kjv+Kjv+Kjv+Kjv+KhhOKggOKggOKggOKggOKggOKggOKjoOKjv+Kjv+Kjv+Kjv+Khv+Kgn+KgieKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJnior/io7/ioYTioIDioIDioIDioIDioIDioIDioIDioIDiorDio7/iob/ioIvioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qOk4qC24qC24qC24qCw4qCm4qOk4qOA4qCA4qCZ4qO34qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKg4qG/4qCL4qKA4qOA4qOk4qK04qCG4qCy4qC24qC24qOk4qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKgmOKjhuKggOKggOKioOKjvuKjq+KjtuKjvuKjv+Kjv+Kjv+Kjv+Kjt+Kjr+Kjv+KjpuKgiOKgg+Khh+KggOKggOKggOKggOKiuOKgmOKigeKjtuKjv+KjteKjvuKjv+Kjv+Kjv+Kjv+Kjt+KjpuKjneKjt+KhhOKggOKggOKhsOKgguKggFxuICAgICAgICDioIDioIDio6jio7fio7bio7/io6fio5vio5vioL/ioL/io7/ior/io7/io7/io5vio7/iob/ioIDioIDioYfioIDioIDioIDioIDiorjioIDioIjior/io5/io5vioL/ior/iob/ior/ior/ior/io5vio6vio7ziob/io7bio77io4XioYDioIBcbiAgICAgICAg4qKA4qG84qCL4qCB4qCA4qCA4qCI4qCJ4qCb4qCb4qC74qCf4qC44qCb4qCL4qCJ4qCB4qCA4qCA4qK44qGH4qCA4qCA4qCE4qCA4qK44qGE4qCA4qCA4qCI4qCJ4qCZ4qCb4qCD4qC74qCb4qCb4qCb4qCJ4qCB4qCA4qCA4qCI4qCZ4qKn4qGAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjv+Khh+KioOKggOKggOKggOKiuOKjt+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDiooDio77io7/ioYfioIDioIDioIDioIDiorjio7/io7fioYDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOw4qCf4qCB4qO/4qCH4qCA4qCA4qCA4qCA4qK44qGH4qCZ4qK/4qOG4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKgsOKjhOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjoOKjvuKgluKhvuKggeKggOKggOKjv+KggOKggOKggOKggOKggOKgmOKjv+KggOKggOKgmeKhh+KiuOKjt+KjhOKhgOKggOKggOKggOKggOKggOKggOKggOKggOKjsOKghOKggFxuICAgICAgICDioIDioIDiorvio7fioabio6Tio6Tio6TiobTioLbioL/ioJvioInioIHioIDiorPioIDioqDioYDior/io4DioIDioIDioIDioIDio6DioZ/iooDio4DioqDioIfioIDioIjioJnioJvioLfioLbioqbio6Tio6Tio6TiorTio77ioY/ioIDioIBcbiAgICAgICAg4qCA4qCA4qCI4qO/4qOn4qCZ4qO/4qO34qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCY4qCb4qKK4qOZ4qCb4qCS4qCS4qKb4qOL4qGa4qCb4qCJ4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qO/4qG/4qCB4qO+4qG/4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKgmOKjv+Kjh+KgiOKiv+Kjv+KjpuKggOKggOKggOKggOKggOKggOKggOKggOKjsOKjv+Kjv+Kjv+Khv+Kiv+Kjv+Kjv+Kjv+KjhuKggOKggOKggOKggOKggOKggOKggOKigOKjvOKjv+Khn+KggeKjvOKhv+KggeKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioJjio7/io6bioIDioLvio7/io7fio6bio6Tio6Tio7bio7bio7bio7/io7/io7/io7/ioI/ioIDioIDioLvio7/io7/io7/io7/io7bio7bio7bio6bio6Tio7Tio7/io7/ioI/iooDio7ziob/ioIHioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCY4qK/4qO34qOE4qCZ4qC74qC/4qC/4qC/4qC/4qC/4qK/4qO/4qO/4qO/4qOB4qOA4qOA4qOA4qOA4qOZ4qO/4qO/4qO/4qC/4qC/4qC/4qC/4qC/4qC/4qCf4qCB4qOg4qO/4qG/4qCB4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKgiOKgu+Kjr+KgmeKipuKjgOKggOKggOKggOKggOKggOKgieKgieKgieKgieKgieKgieKgieKgieKgieKgieKgieKgieKggOKggOKggOKggOKggOKjoOKgtOKii+KjvuKgn+KggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioJnioqfioYDioIjioInioJLioIDioIDioIDioIDioIDioIDio4DioIDioIDioIDioIDiooDioIDioIDioIDioIDioIDioJDioJLioInioIHiooDiob7ioIPioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCI4qCz4qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qC74qO/4qO/4qO/4qO/4qCL4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qCf4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmOKipuKhgOKggOKggOKggOKggOKggOKggOKggOKjuOKjv+Kjv+Khh+KggOKggOKggOKggOKggOKggOKggOKigOKhtOKggeKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDio7/io7/io7/io7/ioIDioIDioIDioIDioIDioIDioIDioIvioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCQ4qO/4qO/4qO/4qO/4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKjv+Kjv+Kjv+Khv+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDiorvio7/io7/ioYfioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qC44qO/4qO/4qCD4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgKi9cbiAgICBwcml2YXRlIF9nZXRTaXplcyhcbiAgICAgICAge1xuICAgICAgICAgICAgc2l6ZXMsXG4gICAgICAgIH06IHtcbiAgICAgICAgICAgIHNpemVzOiAnYXV0bycgfCAnaGlkZGVuJyB8ICdmdWxsJyB8IG51bWJlciB8IFRhYmxlQ29sdW1uU2l6ZXM7XG4gICAgICAgIH0gLyogVGFibGUgRGVmaW5pdGlvbiAqL1xuICAgICkge1xuICAgICAgICBpZiAoc2l6ZXMgPT09ICdhdXRvJyB8fCAhc2l6ZXMpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgJ3ctYXV0byc6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNpemVzID09PSAnaGlkZGVuJykge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBoaWRkZW46IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBzaXplcyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIHNpemVzID0gc2l6ZXMgYXMgVGFibGVDb2x1bW5TaXplcztcbiAgICAgICAgICAgIGNvbnN0IGNsYXNzZXM6IGFueSA9IHt9O1xuICAgICAgICAgICAgbGV0IHByZXZpb3VzU2l6ZTogVGFibGVDb2x1bW5TaXplc0tleSB8IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgZm9yIChsZXQgc2l6ZSBpbiBzaXplcykge1xuICAgICAgICAgICAgICAgIGlmICghaXNUYWJsZUNvbHVtblNpemVzS2V5KHNpemVzLCBzaXplKSkge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc2l6ZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzaXplcy5kZWZhdWx0ID09PSAnaGlkZGVuJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snaGlkZGVuJ10gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNTaXplID0gc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1tgdy0ke3NpemVzLmRlZmF1bHR9LzEyYF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBwcmV2aW91c1NpemUgPSBzaXplO1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSBzaXplc1tzaXplXTtcbiAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c1ZhbHVlID0gcHJldmlvdXNTaXplID8gc2l6ZXNbcHJldmlvdXNTaXplXSA6IG51bGw7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBjdXJyZW50VmFsdWUgIT09ICdoaWRkZW4nICYmXG4gICAgICAgICAgICAgICAgICAgIHByZXZpb3VzVmFsdWUgJiZcbiAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNWYWx1ZSA9PT0gJ2hpZGRlbidcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1tgJHtzaXplfTpmbGV4YF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50VmFsdWUgPT09ICdoaWRkZW4nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbYCR7c2l6ZX06aGlkZGVuYF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBwcmV2aW91c1NpemUgPSBzaXplO1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudFZhbHVlID09PSAxMiB8fCBjdXJyZW50VmFsdWUgPT09ICdmdWxsJykge1xuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzW2Ake3NpemV9OnctZnVsbGBdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjbGFzc2VzW2Ake3NpemV9OnctJHtjdXJyZW50VmFsdWV9LzEyYF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIHByZXZpb3VzU2l6ZSA9IHNpemU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNpemVzID09PSAxMiB8fCBzaXplcyA9PT0gJ2Z1bGwnKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICd3LWZ1bGwnOiB0cnVlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGlzIGEgbnVtYmVyLlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgW2B3LSR7c2l6ZXN9LzEyYF06IHRydWUsXG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNoZWNrYm94XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNoZWNrYm94XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwidmFyaWFudFwiPlxuICAgIDxwLWxvYWRlclxuICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2xvYWRpbmcnXCJcbiAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgY2xhc3M9XCJoLTYgdy1mdWxsIGZsZXgtMSByb3VuZGVkXCJcbiAgICA+PC9wLWxvYWRlcj5cblxuICAgIDxkaXZcbiAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidoZWFkZXInXCJcbiAgICAgICAgY2xhc3M9XCJmbGV4IHctZnVsbCBvdmVyZmxvdy1oaWRkZW5cIlxuICAgICAgICBbY2xhc3MuanVzdGlmeS1zdGFydF09XCJkZWZpbml0aW9uLmFsaWduID09PSAnc3RhcnQnXCJcbiAgICAgICAgW2NsYXNzLmp1c3RpZnktY2VudGVyXT1cImRlZmluaXRpb24uYWxpZ24gPT09ICdjZW50ZXInXCJcbiAgICAgICAgW2NsYXNzLmp1c3RpZnktZW5kXT1cImRlZmluaXRpb24uYWxpZ24gPT09ICdlbmQnXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ2YWx1ZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2XG4gICAgICAgICpuZ1N3aXRjaENhc2U9XCInZGVmYXVsdCdcIlxuICAgICAgICBjbGFzcz1cImZsZXggdy1mdWxsXCJcbiAgICAgICAgW2NsYXNzLmp1c3RpZnktc3RhcnRdPVwiZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ3N0YXJ0J1wiXG4gICAgICAgIFtjbGFzcy5qdXN0aWZ5LWNlbnRlcl09XCJkZWZpbml0aW9uLmFsaWduID09PSAnY2VudGVyJ1wiXG4gICAgICAgIFtjbGFzcy5qdXN0aWZ5LWVuZF09XCJkZWZpbml0aW9uLmFsaWduID09PSAnZW5kJ1wiXG4gICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGVtcGxhdGU7IGVsc2UgdmFsdWVUZW1wbGF0ZVwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidGVtcGxhdGU7IGNvbnRleHQ6IGRhdGFcIlxuICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI3ZhbHVlVGVtcGxhdGU+XG4gICAge3sgZGF0YS52YWx1ZSB9fVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wYXBlcmxlc3Mvc3JjL2xpYi9tb2R1bGVzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtY2VsbC90YWJsZS1jZWxsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3BhcGVybGVzcy9zcmMvbGliL21vZHVsZXMvdGFibGUvY29tcG9uZW50cy90YWJsZS1jZWxsL3RhYmxlLWNlbGwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEJBQTRCO0FBQzVCLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLGVBQWUsR0FJbEIsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQU16QixNQUFNLE9BQU8sU0FBUztJQUx0QjtRQU1JOztXQUVHO1FBQ00sWUFBTyxHQUFxQyxTQUFTLENBQUM7UUFFL0Q7O1dBRUc7UUFDTSxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBRTNCOztXQUVHO1FBQ00sYUFBUSxHQUFXLENBQUMsQ0FBQztLQThOakM7SUFuTUcsSUFDSSxLQUFLO1FBQ0wsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFFBQVEsRUFBRTtZQUMzQixPQUFPO2dCQUNILEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSzthQUNwQixDQUFDO1NBQ0w7UUFFRCxPQUFPO1lBQ0gsS0FBSyxFQUNELElBQUksQ0FBQyxLQUFLLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDbEUsSUFBSSxFQUFFLElBQUks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Z0JBS0csVUFBVTtzQkFBbEIsS0FBSztnQkFLRyxJQUFJO3NCQUFaLEtBQUs7Z0JBS0csS0FBSztzQkFBYixLQUFLO2dCQUtHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRixLQUFLO3NCQURSLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbmltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBpc1RhYmxlQ29sdW1uU2l6ZXNLZXksXG4gICAgb2JqZWN0R2V0QnlQYXRoLFxuICAgIFRhYmxlQ29sdW1uU2l6ZXMsXG4gICAgVGFibGVDb2x1bW5TaXplc0tleSxcbiAgICBUYWJsZURlZmluaXRpb25EYXRhLFxufSBmcm9tICdAcGFwZXJsZXNzL2NvcmUnO1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwLXRhYmxlLWNlbGwtbmd4JyxcbiAgICBzdHlsZVVybHM6IFsndGFibGUtY2VsbC5jb21wb25lbnQuc2NzcyddLFxuICAgIHRlbXBsYXRlVXJsOiAnLi90YWJsZS1jZWxsLmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVGFibGVDZWxsIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdmFyaWFudCBvZiB0aGUgY29sdW1uXG4gICAgICovXG4gICAgQElucHV0KCkgdmFyaWFudDogJ2RlZmF1bHQnIHwgJ2xvYWRpbmcnIHwgJ2hlYWRlcicgPSAnZGVmYXVsdCc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaW5kZXggb2YgdGhlIGNvbHVtblxuICAgICAqL1xuICAgIEBJbnB1dCgpIGluZGV4OiBudW1iZXIgPSAwO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGluZGV4IG9mIHRoZSByb3dcbiAgICAgKi9cbiAgICBASW5wdXQoKSByb3dJbmRleDogbnVtYmVyID0gMDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkZWZpbml0aW9uIG9mIHRoZSB0YWJsZSBjb2x1bW5cbiAgICAgKi9cbiAgICBASW5wdXQoKSBkZWZpbml0aW9uPzogYW55OyAvLyBUYWJsZURlZmluaXRpb25cblxuICAgIC8qKlxuICAgICAqIFRoZSBpdGVtIGluIHF1ZXN0aW9uXG4gICAgICovXG4gICAgQElucHV0KCkgaXRlbTogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZhbHVlIG9mIHRoZSBjb2x1bW5cbiAgICAgKi9cbiAgICBASW5wdXQoKSB2YWx1ZTogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoZWNrYm94IHRlbXBsYXRlUmVmXG4gICAgICovXG4gICAgQElucHV0KCkgY2hlY2tib3g6IFRlbXBsYXRlUmVmPGFueT4gfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdGVtcGxhdGUgcmVmIGZvciB0aGUgY29udGVudFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGNsYXNzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRDb2x1bW5DbGFzc2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0IGRhdGEoKTogVGFibGVEZWZpbml0aW9uRGF0YSB8IHsgdmFsdWU6IHN0cmluZyB9IHtcbiAgICAgICAgaWYgKHRoaXMudmFyaWFudCA9PT0gJ2hlYWRlcicpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHZhbHVlOlxuICAgICAgICAgICAgICAgIHRoaXMudmFsdWUgPz8gb2JqZWN0R2V0QnlQYXRoKHRoaXMuaXRlbSwgdGhpcy5kZWZpbml0aW9uLnBhdGgpLFxuICAgICAgICAgICAgaXRlbTogdGhpcy5pdGVtLFxuICAgICAgICAgICAgaW5kZXg6IHRoaXMuaW5kZXgsXG4gICAgICAgICAgICByb3dJbmRleDogdGhpcy5yb3dJbmRleCxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvLyByZW5kZXIoKSB7XG4gICAgLy8gXHRyZXR1cm4gKFxuICAgIC8vIFx0XHQ8SG9zdFxuICAgIC8vIFx0XHRcdGNsYXNzPXt7XG4gICAgLy8gXHRcdFx0XHQncC10YWJsZS1jb2x1bW4nOiB0cnVlLFxuICAgIC8vIFx0XHRcdFx0W2B2YXJpYW50LSR7dGhpcy52YXJpYW50fWBdOiB0cnVlLFxuICAgIC8vIFx0XHRcdFx0Li4udGhpcy5fZ2V0Q29sdW1uQ2xhc3NlcygpLFxuICAgIC8vIFx0XHRcdH19XG4gICAgLy8gXHRcdD5cbiAgICAvLyBcdFx0XHR7dGhpcy5jaGVja2JveH1cblxuICAgIC8vIFx0XHRcdHt0aGlzLnZhcmlhbnQgPT09ICdsb2FkaW5nJyA/IChcbiAgICAvLyBcdFx0XHRcdDxwLWxvYWRlclxuICAgIC8vIFx0XHRcdFx0XHR2YXJpYW50PVwiZ2hvc3RcIlxuICAgIC8vIFx0XHRcdFx0XHRjbGFzcz1cInJvdW5kZWQgZmxleC0xIHctZnVsbCBoLTZcIlxuICAgIC8vIFx0XHRcdFx0Lz5cbiAgICAvLyBcdFx0XHQpIDogKFxuICAgIC8vIFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXhcIj5cbiAgICAvLyBcdFx0XHRcdFx0e3RoaXMudmFyaWFudCA9PT0gJ2hlYWRlcicgPyAoXG4gICAgLy8gXHRcdFx0XHRcdFx0dGhpcy5kYXRhLnZhbHVlXG4gICAgLy8gXHRcdFx0XHRcdCkgOiB0aGlzLmRlZmluaXRpb24udXNlU2xvdCA/IChcbiAgICAvLyBcdFx0XHRcdFx0XHQ8c2xvdCAvPlxuICAgIC8vIFx0XHRcdFx0XHQpIDogKFxuICAgIC8vIFx0XHRcdFx0XHRcdHRoaXMudGVtcGxhdGUodGhpcy5kYXRhIGFzIFRhYmxlRGVmaW5pdGlvbkRhdGEpXG4gICAgLy8gXHRcdFx0XHRcdCl9XG4gICAgLy8gXHRcdFx0XHQ8L2Rpdj5cbiAgICAvLyBcdFx0XHQpfVxuICAgIC8vIFx0XHQ8L0hvc3Q+XG4gICAgLy8gXHQpO1xuICAgIC8vIH1cblxuICAgIHB1YmxpYyBnZXRDb2x1bW5DbGFzc2VzKCkge1xuICAgICAgICBjb25zdCBzaXplcyA9IHRoaXMuZGVmaW5pdGlvbiA/IHRoaXMuX2dldFNpemVzKHRoaXMuZGVmaW5pdGlvbikgOiB7fTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICdqdXN0aWZ5LXN0YXJ0JzpcbiAgICAgICAgICAgICAgICAhdGhpcy5kZWZpbml0aW9uPy5hbGlnbiB8fCB0aGlzLmRlZmluaXRpb24/LmFsaWduID09PSAnc3RhcnQnLFxuICAgICAgICAgICAgJ2p1c3RpZnktY2VudGVyJzogdGhpcy5kZWZpbml0aW9uPy5hbGlnbiA9PT0gJ2NlbnRlcicsXG4gICAgICAgICAgICAnanVzdGlmeS1lbmQnOiB0aGlzLmRlZmluaXRpb24/LmFsaWduID09PSAnZW5kJyxcbiAgICAgICAgICAgICdmb250LXNlbWlib2xkJzpcbiAgICAgICAgICAgICAgICB0aGlzLnZhcmlhbnQgIT09ICdoZWFkZXInICYmIHRoaXMuZGVmaW5pdGlvbj8udHlwZSA9PT0gJ3RoJyxcbiAgICAgICAgICAgICd0ZXh0LXN0b3JtLWRhcmsnOlxuICAgICAgICAgICAgICAgIHRoaXMudmFyaWFudCAhPT0gJ2hlYWRlcicgJiYgdGhpcy5kZWZpbml0aW9uPy50eXBlID09PSAndGgnLFxuICAgICAgICAgICAgJ3ByLTQnOiB0aGlzLmRlZmluaXRpb24/LmlzTGFzdCA9PT0gZmFsc2UsXG4gICAgICAgICAgICAuLi5zaXplcyxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKlxuICAgICBXaXRoIHRoaXMsIHdlIHNoYWxsIGhhY2sgdGhlIHN5c3RlbSBpbiB3YXlzIG5vIG9uZSB3b3VsZCBldmVyIGhhdmUgdGhvdWdodC5cblxuICAgICB3LTEvMTIgdy0yLzEyIHctMy8xMiB3LTQvMTIgdy01LzEyIHctNi8xMiB3LTcvMTIgdy04LzEyIHctOS8xMiB3LTEwLzEyIHctMTEvMTIgdy0xMi8xMlxuICAgICB0YWJsZXQ6dy0xLzEyIHRhYmxldDp3LTIvMTIgdGFibGV0OnctMy8xMiB0YWJsZXQ6dy00LzEyIHRhYmxldDp3LTUvMTIgdGFibGV0OnctNi8xMiB0YWJsZXQ6dy03LzEyIHRhYmxldDp3LTgvMTIgdGFibGV0OnctOS8xMiB0YWJsZXQ6dy0xMC8xMiB0YWJsZXQ6dy0xMS8xMiB0YWJsZXQ6dy0xMi8xMlxuICAgICBkZXNrdG9wLXhzOnctMS8xMiBkZXNrdG9wLXhzOnctMi8xMiBkZXNrdG9wLXhzOnctMy8xMiBkZXNrdG9wLXhzOnctNC8xMiBkZXNrdG9wLXhzOnctNS8xMiBkZXNrdG9wLXhzOnctNi8xMiBkZXNrdG9wLXhzOnctNy8xMiBkZXNrdG9wLXhzOnctOC8xMiBkZXNrdG9wLXhzOnctOS8xMiBkZXNrdG9wLXhzOnctMTAvMTIgZGVza3RvcC14czp3LTExLzEyIGRlc2t0b3AteHM6dy0xMi8xMlxuICAgICBkZXNrdG9wLXhzOnctMS8xMiBkZXNrdG9wLXhzOnctMi8xMiBkZXNrdG9wLXhzOnctMy8xMiBkZXNrdG9wLXhzOnctNC8xMiBkZXNrdG9wLXhzOnctNS8xMiBkZXNrdG9wLXhzOnctNi8xMiBkZXNrdG9wLXhzOnctNy8xMiBkZXNrdG9wLXhzOnctOC8xMiBkZXNrdG9wLXhzOnctOS8xMiBkZXNrdG9wLXhzOnctMTAvMTIgZGVza3RvcC14czp3LTExLzEyIGRlc2t0b3AteHM6dy0xMi8xMlxuICAgICBkZXNrdG9wLXNtOnctMS8xMiBkZXNrdG9wLXNtOnctMi8xMiBkZXNrdG9wLXNtOnctMy8xMiBkZXNrdG9wLXNtOnctNC8xMiBkZXNrdG9wLXNtOnctNS8xMiBkZXNrdG9wLXNtOnctNi8xMiBkZXNrdG9wLXNtOnctNy8xMiBkZXNrdG9wLXNtOnctOC8xMiBkZXNrdG9wLXNtOnctOS8xMiBkZXNrdG9wLXNtOnctMTAvMTIgZGVza3RvcC1zbTp3LTExLzEyIGRlc2t0b3Atc206dy0xMi8xMlxuICAgICBkZXNrdG9wOnctMS8xMiBkZXNrdG9wOnctMi8xMiBkZXNrdG9wOnctMy8xMiBkZXNrdG9wOnctNC8xMiBkZXNrdG9wOnctNS8xMiBkZXNrdG9wOnctNi8xMiBkZXNrdG9wOnctNy8xMiBkZXNrdG9wOnctOC8xMiBkZXNrdG9wOnctOS8xMiBkZXNrdG9wOnctMTAvMTIgZGVza3RvcDp3LTExLzEyIGRlc2t0b3A6dy0xMi8xMlxuICAgICBkZXNrdG9wLWxnOnctMS8xMiBkZXNrdG9wLWxnOnctMi8xMiBkZXNrdG9wLWxnOnctMy8xMiBkZXNrdG9wLWxnOnctNC8xMiBkZXNrdG9wLWxnOnctNS8xMiBkZXNrdG9wLWxnOnctNi8xMiBkZXNrdG9wLWxnOnctNy8xMiBkZXNrdG9wLWxnOnctOC8xMiBkZXNrdG9wLWxnOnctOS8xMiBkZXNrdG9wLWxnOnctMTAvMTIgZGVza3RvcC1sZzp3LTExLzEyIGRlc2t0b3AtbGc6dy0xMi8xMlxuICAgICBkZXNrdG9wLXhsOnctMS8xMiBkZXNrdG9wLXhsOnctMi8xMiBkZXNrdG9wLXhsOnctMy8xMiBkZXNrdG9wLXhsOnctNC8xMiBkZXNrdG9wLXhsOnctNS8xMiBkZXNrdG9wLXhsOnctNi8xMiBkZXNrdG9wLXhsOnctNy8xMiBkZXNrdG9wLXhsOnctOC8xMiBkZXNrdG9wLXhsOnctOS8xMiBkZXNrdG9wLXhsOnctMTAvMTIgZGVza3RvcC14bDp3LTExLzEyIGRlc2t0b3AteGw6dy0xMi8xMlxuICAgICBoaWRkZW4gZmxleFxuICAgICB0YWJsZXQ6aGlkZGVuIHRhYmxldDpmbGV4XG4gICAgIGRlc2t0b3AteHM6aGlkZGVuIGRlc2t0b3AteHM6ZmxleFxuICAgICBkZXNrdG9wLXNtOmhpZGRlbiBkZXNrdG9wLXNtOmZsZXhcbiAgICAgZGVza3RvcDpoaWRkZW4gZGVza3RvcDpmbGV4XG4gICAgIGRlc2t0b3AtbGc6aGlkZGVuIGRlc2t0b3AtbGc6ZmxleFxuICAgICBkZXNrdG9wLXhsOmhpZGRlbiBkZXNrdG9wLXhsOmZsZXhcblxuXG4gICAgICAgIOKggOKggOKggOKggOKggOKjoOKjtOKjtuKjv+Kjv+Kgv+Kjt+KjtuKjpOKjhOKhgOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjoOKjtOKjtuKjt+Kgv+Kjv+Kjv+KjtuKjpuKjgOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDiooDio77io7/io7/io7/io7/io7/io7/io7/io7bio6bio6zioYnioJLioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJrioonio6Xio7Tio77io7/io7/io7/io7/io7/io7/io7/io6fioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qG+4qC/4qCb4qCb4qCb4qCb4qC/4qK/4qO/4qO/4qO/4qO/4qO/4qO34qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKA4qOg4qO+4qO/4qO/4qO/4qO/4qO/4qC/4qC/4qCb4qCb4qCb4qCb4qC/4qKn4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmeKgu+Kjv+Kjv+Kjv+Kjv+Kjv+KhhOKggOKggOKggOKggOKggOKggOKjoOKjv+Kjv+Kjv+Kjv+Khv+Kgn+KgieKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioJnior/io7/ioYTioIDioIDioIDioIDioIDioIDioIDioIDiorDio7/iob/ioIvioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qOk4qC24qC24qC24qCw4qCm4qOk4qOA4qCA4qCZ4qO34qCA4qCA4qCA4qCA4qCA4qCA4qCA4qKg4qG/4qCL4qKA4qOA4qOk4qK04qCG4qCy4qC24qC24qOk4qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKgmOKjhuKggOKggOKioOKjvuKjq+KjtuKjvuKjv+Kjv+Kjv+Kjv+Kjt+Kjr+Kjv+KjpuKgiOKgg+Khh+KggOKggOKggOKggOKiuOKgmOKigeKjtuKjv+KjteKjvuKjv+Kjv+Kjv+Kjv+Kjt+KjpuKjneKjt+KhhOKggOKggOKhsOKgguKggFxuICAgICAgICDioIDioIDio6jio7fio7bio7/io6fio5vio5vioL/ioL/io7/ior/io7/io7/io5vio7/iob/ioIDioIDioYfioIDioIDioIDioIDiorjioIDioIjior/io5/io5vioL/ior/iob/ior/ior/ior/io5vio6vio7ziob/io7bio77io4XioYDioIBcbiAgICAgICAg4qKA4qG84qCL4qCB4qCA4qCA4qCI4qCJ4qCb4qCb4qC74qCf4qC44qCb4qCL4qCJ4qCB4qCA4qCA4qK44qGH4qCA4qCA4qCE4qCA4qK44qGE4qCA4qCA4qCI4qCJ4qCZ4qCb4qCD4qC74qCb4qCb4qCb4qCJ4qCB4qCA4qCA4qCI4qCZ4qKn4qGAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjv+Khh+KioOKggOKggOKggOKiuOKjt+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDiooDio77io7/ioYfioIDioIDioIDioIDiorjio7/io7fioYDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOw4qCf4qCB4qO/4qCH4qCA4qCA4qCA4qCA4qK44qGH4qCZ4qK/4qOG4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKgsOKjhOKggOKggOKggOKggOKggOKggOKggOKggOKigOKjoOKjvuKgluKhvuKggeKggOKggOKjv+KggOKggOKggOKggOKggOKgmOKjv+KggOKggOKgmeKhh+KiuOKjt+KjhOKhgOKggOKggOKggOKggOKggOKggOKggOKggOKjsOKghOKggFxuICAgICAgICDioIDioIDiorvio7fioabio6Tio6Tio6TiobTioLbioL/ioJvioInioIHioIDiorPioIDioqDioYDior/io4DioIDioIDioIDioIDio6DioZ/iooDio4DioqDioIfioIDioIjioJnioJvioLfioLbioqbio6Tio6Tio6TiorTio77ioY/ioIDioIBcbiAgICAgICAg4qCA4qCA4qCI4qO/4qOn4qCZ4qO/4qO34qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCY4qCb4qKK4qOZ4qCb4qCS4qCS4qKb4qOL4qGa4qCb4qCJ4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qO/4qG/4qCB4qO+4qG/4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKgmOKjv+Kjh+KgiOKiv+Kjv+KjpuKggOKggOKggOKggOKggOKggOKggOKggOKjsOKjv+Kjv+Kjv+Khv+Kiv+Kjv+Kjv+Kjv+KjhuKggOKggOKggOKggOKggOKggOKggOKigOKjvOKjv+Khn+KggeKjvOKhv+KggeKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioJjio7/io6bioIDioLvio7/io7fio6bio6Tio6Tio7bio7bio7bio7/io7/io7/io7/ioI/ioIDioIDioLvio7/io7/io7/io7/io7bio7bio7bio6bio6Tio7Tio7/io7/ioI/iooDio7ziob/ioIHioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCY4qK/4qO34qOE4qCZ4qC74qC/4qC/4qC/4qC/4qC/4qK/4qO/4qO/4qO/4qOB4qOA4qOA4qOA4qOA4qOZ4qO/4qO/4qO/4qC/4qC/4qC/4qC/4qC/4qC/4qCf4qCB4qOg4qO/4qG/4qCB4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKgiOKgu+Kjr+KgmeKipuKjgOKggOKggOKggOKggOKggOKgieKgieKgieKgieKgieKgieKgieKgieKgieKgieKgieKgieKggOKggOKggOKggOKggOKjoOKgtOKii+KjvuKgn+KggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioJnioqfioYDioIjioInioJLioIDioIDioIDioIDioIDioIDio4DioIDioIDioIDioIDiooDioIDioIDioIDioIDioIDioJDioJLioInioIHiooDiob7ioIPioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCI4qCz4qOE4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qC74qO/4qO/4qO/4qO/4qCL4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qOg4qCf4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKgmOKipuKhgOKggOKggOKggOKggOKggOKggOKggOKjuOKjv+Kjv+Khh+KggOKggOKggOKggOKggOKggOKggOKigOKhtOKggeKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDio7/io7/io7/io7/ioIDioIDioIDioIDioIDioIDioIDioIvioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCQ4qO/4qO/4qO/4qO/4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgICAgIOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKjv+Kjv+Kjv+Khv+KggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggOKggFxuICAgICAgICDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDiorvio7/io7/ioYfioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIDioIBcbiAgICAgICAg4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qC44qO/4qO/4qCD4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCA4qCAXG4gICAgKi9cbiAgICBwcml2YXRlIF9nZXRTaXplcyhcbiAgICAgICAge1xuICAgICAgICAgICAgc2l6ZXMsXG4gICAgICAgIH06IHtcbiAgICAgICAgICAgIHNpemVzOiAnYXV0bycgfCAnaGlkZGVuJyB8ICdmdWxsJyB8IG51bWJlciB8IFRhYmxlQ29sdW1uU2l6ZXM7XG4gICAgICAgIH0gLyogVGFibGUgRGVmaW5pdGlvbiAqL1xuICAgICkge1xuICAgICAgICBpZiAoc2l6ZXMgPT09ICdhdXRvJyB8fCAhc2l6ZXMpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgJ3ctYXV0byc6IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNpemVzID09PSAnaGlkZGVuJykge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBoaWRkZW46IHRydWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBzaXplcyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIHNpemVzID0gc2l6ZXMgYXMgVGFibGVDb2x1bW5TaXplcztcbiAgICAgICAgICAgIGNvbnN0IGNsYXNzZXM6IGFueSA9IHt9O1xuICAgICAgICAgICAgbGV0IHByZXZpb3VzU2l6ZTogVGFibGVDb2x1bW5TaXplc0tleSB8IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgZm9yIChsZXQgc2l6ZSBpbiBzaXplcykge1xuICAgICAgICAgICAgICAgIGlmICghaXNUYWJsZUNvbHVtblNpemVzS2V5KHNpemVzLCBzaXplKSkge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoc2l6ZSA9PT0gJ2RlZmF1bHQnKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChzaXplcy5kZWZhdWx0ID09PSAnaGlkZGVuJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1snaGlkZGVuJ10gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNTaXplID0gc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1tgdy0ke3NpemVzLmRlZmF1bHR9LzEyYF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBwcmV2aW91c1NpemUgPSBzaXplO1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSBzaXplc1tzaXplXTtcbiAgICAgICAgICAgICAgICBjb25zdCBwcmV2aW91c1ZhbHVlID0gcHJldmlvdXNTaXplID8gc2l6ZXNbcHJldmlvdXNTaXplXSA6IG51bGw7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBjdXJyZW50VmFsdWUgIT09ICdoaWRkZW4nICYmXG4gICAgICAgICAgICAgICAgICAgIHByZXZpb3VzVmFsdWUgJiZcbiAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNWYWx1ZSA9PT0gJ2hpZGRlbidcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgY2xhc3Nlc1tgJHtzaXplfTpmbGV4YF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50VmFsdWUgPT09ICdoaWRkZW4nKSB7XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzZXNbYCR7c2l6ZX06aGlkZGVuYF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBwcmV2aW91c1NpemUgPSBzaXplO1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudFZhbHVlID09PSAxMiB8fCBjdXJyZW50VmFsdWUgPT09ICdmdWxsJykge1xuICAgICAgICAgICAgICAgICAgICBjbGFzc2VzW2Ake3NpemV9OnctZnVsbGBdID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjbGFzc2VzW2Ake3NpemV9OnctJHtjdXJyZW50VmFsdWV9LzEyYF0gPSB0cnVlO1xuICAgICAgICAgICAgICAgIHByZXZpb3VzU2l6ZSA9IHNpemU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBjbGFzc2VzO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNpemVzID09PSAxMiB8fCBzaXplcyA9PT0gJ2Z1bGwnKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICd3LWZ1bGwnOiB0cnVlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGlzIGEgbnVtYmVyLlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgW2B3LSR7c2l6ZXN9LzEyYF06IHRydWUsXG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImNoZWNrYm94XCI+XG5cdDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjaGVja2JveFwiPjwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInZhcmlhbnRcIj5cblx0PHAtbG9hZGVyXG5cdFx0Km5nU3dpdGNoQ2FzZT1cIidsb2FkaW5nJ1wiXG5cdFx0dmFyaWFudD1cImdob3N0XCJcblx0XHRjbGFzcz1cImgtNiB3LWZ1bGwgZmxleC0xIHJvdW5kZWRcIlxuXHQ+PC9wLWxvYWRlcj5cblxuXHQ8ZGl2XG5cdFx0Km5nU3dpdGNoQ2FzZT1cIidoZWFkZXInXCJcblx0XHRjbGFzcz1cImZsZXggdy1mdWxsIG92ZXJmbG93LWhpZGRlblwiXG5cdFx0W2NsYXNzLmp1c3RpZnktc3RhcnRdPVwiZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ3N0YXJ0J1wiXG5cdFx0W2NsYXNzLmp1c3RpZnktY2VudGVyXT1cImRlZmluaXRpb24uYWxpZ24gPT09ICdjZW50ZXInXCJcblx0XHRbY2xhc3MuanVzdGlmeS1lbmRdPVwiZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ2VuZCdcIlxuXHQ+XG5cdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInZhbHVlVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblx0PC9kaXY+XG5cblx0PGRpdlxuXHRcdCpuZ1N3aXRjaENhc2U9XCInZGVmYXVsdCdcIlxuXHRcdGNsYXNzPVwiZmxleCBtaW4tdy0wIGZsZXgtMVwiXG5cdFx0W2NsYXNzLmp1c3RpZnktc3RhcnRdPVwiZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ3N0YXJ0J1wiXG5cdFx0W2NsYXNzLmp1c3RpZnktY2VudGVyXT1cImRlZmluaXRpb24uYWxpZ24gPT09ICdjZW50ZXInXCJcblx0XHRbY2xhc3MuanVzdGlmeS1lbmRdPVwiZGVmaW5pdGlvbi5hbGlnbiA9PT0gJ2VuZCdcIlxuXHQ+XG5cdFx0PG5nLWNvbnRhaW5lciAqbmdJZj1cInRlbXBsYXRlOyBlbHNlIHZhbHVlVGVtcGxhdGVcIj5cblx0XHRcdDxuZy1jb250YWluZXJcblx0XHRcdFx0Km5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZTsgY29udGV4dDogZGF0YVwiXG5cdFx0XHQ+PC9uZy1jb250YWluZXI+XG5cdFx0PC9uZy1jb250YWluZXI+XG5cdDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy10ZW1wbGF0ZSAjdmFsdWVUZW1wbGF0ZT5cblx0e3sgZGF0YS52YWx1ZSB9fVxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -2529,10 +2529,10 @@ class TableCell {
2529
2529
  }
2530
2530
  }
2531
2531
  TableCell.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, deps: [], target: i0.ɵɵFactoryTarget.Component });
2532
- TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", template: "template" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n <p-loader\n *ngSwitchCase=\"'loading'\"\n variant=\"ghost\"\n class=\"h-6 w-full flex-1 rounded\"\n ></p-loader>\n\n <div\n *ngSwitchCase=\"'header'\"\n class=\"flex w-full overflow-hidden\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n\n <div\n *ngSwitchCase=\"'default'\"\n class=\"flex w-full\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngIf=\"template; else valueTemplate\">\n <ng-container\n *ngTemplateOutlet=\"template; context: data\"\n ></ng-container>\n </ng-container>\n </div>\n</ng-container>\n\n<ng-template #valueTemplate>\n {{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
2532
+ TableCell.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TableCell, selector: "p-table-cell-ngx", inputs: { variant: "variant", index: "index", rowIndex: "rowIndex", definition: "definition", item: "item", value: "value", checkbox: "checkbox", template: "template" }, host: { properties: { "class": "this.class" } }, ngImport: i0, template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<div\n\t\t*ngSwitchCase=\"'header'\"\n\t\tclass=\"flex w-full overflow-hidden\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\tclass=\"flex min-w-0 flex-1\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container\n\t\t\t\t*ngTemplateOutlet=\"template; context: data\"\n\t\t\t></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t{{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: PLoader, selector: "p-loader", inputs: ["color", "modalDescription", "modalTitle", "show", "variant"] }] });
2533
2533
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TableCell, decorators: [{
2534
2534
  type: Component,
2535
- args: [{ selector: 'p-table-cell-ngx', template: "<ng-container *ngIf=\"checkbox\">\n <ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n <p-loader\n *ngSwitchCase=\"'loading'\"\n variant=\"ghost\"\n class=\"h-6 w-full flex-1 rounded\"\n ></p-loader>\n\n <div\n *ngSwitchCase=\"'header'\"\n class=\"flex w-full overflow-hidden\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n\n <div\n *ngSwitchCase=\"'default'\"\n class=\"flex w-full\"\n [class.justify-start]=\"definition.align === 'start'\"\n [class.justify-center]=\"definition.align === 'center'\"\n [class.justify-end]=\"definition.align === 'end'\"\n >\n <ng-container *ngIf=\"template; else valueTemplate\">\n <ng-container\n *ngTemplateOutlet=\"template; context: data\"\n ></ng-container>\n </ng-container>\n </div>\n</ng-container>\n\n<ng-template #valueTemplate>\n {{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"] }]
2535
+ args: [{ selector: 'p-table-cell-ngx', template: "<ng-container *ngIf=\"checkbox\">\n\t<ng-container *ngTemplateOutlet=\"checkbox\"></ng-container>\n</ng-container>\n\n<ng-container [ngSwitch]=\"variant\">\n\t<p-loader\n\t\t*ngSwitchCase=\"'loading'\"\n\t\tvariant=\"ghost\"\n\t\tclass=\"h-6 w-full flex-1 rounded\"\n\t></p-loader>\n\n\t<div\n\t\t*ngSwitchCase=\"'header'\"\n\t\tclass=\"flex w-full overflow-hidden\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n\t</div>\n\n\t<div\n\t\t*ngSwitchCase=\"'default'\"\n\t\tclass=\"flex min-w-0 flex-1\"\n\t\t[class.justify-start]=\"definition.align === 'start'\"\n\t\t[class.justify-center]=\"definition.align === 'center'\"\n\t\t[class.justify-end]=\"definition.align === 'end'\"\n\t>\n\t\t<ng-container *ngIf=\"template; else valueTemplate\">\n\t\t\t<ng-container\n\t\t\t\t*ngTemplateOutlet=\"template; context: data\"\n\t\t\t></ng-container>\n\t\t</ng-container>\n\t</div>\n</ng-container>\n\n<ng-template #valueTemplate>\n\t{{ data.value }}\n</ng-template>\n", styles: [":host{display:flex;align-items:center;gap:1rem}\n"] }]
2536
2536
  }], propDecorators: { variant: [{
2537
2537
  type: Input
2538
2538
  }], index: [{