@kato-lee/components 1.1.0 → 1.1.2
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.
- package/dialogs/module.d.ts +0 -1
- package/esm2022/dialogs/module.mjs +1 -2
- package/esm2022/fields/index.mjs +9 -9
- package/esm2022/tables/module.mjs +1 -2
- package/fesm2022/kato-lee-components-dialogs.mjs +0 -1
- package/fesm2022/kato-lee-components-dialogs.mjs.map +1 -1
- package/fesm2022/kato-lee-components-fields.mjs.map +1 -1
- package/fesm2022/kato-lee-components-tables.mjs +0 -1
- package/fesm2022/kato-lee-components-tables.mjs.map +1 -1
- package/fields/index.d.ts +8 -8
- package/package.json +7 -7
- package/tables/module.d.ts +0 -1
- package/esm2022/fields/autocomplete/index.mjs +0 -2
- package/esm2022/fields/date/index.mjs +0 -2
- package/esm2022/fields/date-range/index.mjs +0 -2
- package/esm2022/fields/general/index.mjs +0 -2
- package/esm2022/fields/money/index.mjs +0 -2
- package/esm2022/fields/number/index.mjs +0 -2
- package/esm2022/fields/remote-autocomplete/index.mjs +0 -2
- package/esm2022/fields/select/index.mjs +0 -2
- package/fields/autocomplete/index.d.ts +0 -1
- package/fields/date/index.d.ts +0 -1
- package/fields/date-range/index.d.ts +0 -1
- package/fields/general/index.d.ts +0 -1
- package/fields/money/index.d.ts +0 -1
- package/fields/number/index.d.ts +0 -1
- package/fields/remote-autocomplete/index.d.ts +0 -1
- package/fields/select/index.d.ts +0 -1
package/dialogs/module.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
import * as i1 from "./dismiss-dialog-button.component";
|
|
3
3
|
import * as i2 from "@kato-lee/material/dialog";
|
|
4
|
-
/** @deprecated Use standalone */
|
|
5
4
|
export declare class TakDialogModule {
|
|
6
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<TakDialogModule, never>;
|
|
7
6
|
static ɵmod: i0.ɵɵNgModuleDeclaration<TakDialogModule, never, [typeof i1.TakDismissDialogButtonComponent], [typeof i1.TakDismissDialogButtonComponent, typeof i2.MatDialogModule]>;
|
|
@@ -3,7 +3,6 @@ import { TakDismissDialogButtonComponent } from './dismiss-dialog-button.compone
|
|
|
3
3
|
import { MatDialogModule } from '@kato-lee/material/dialog';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
const components = [TakDismissDialogButtonComponent];
|
|
6
|
-
/** @deprecated Use standalone */
|
|
7
6
|
export class TakDialogModule {
|
|
8
7
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
8
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: TakDialogModule, imports: [TakDismissDialogButtonComponent], exports: [TakDismissDialogButtonComponent, MatDialogModule] }); }
|
|
@@ -16,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
16
15
|
exports: [...components, MatDialogModule],
|
|
17
16
|
}]
|
|
18
17
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvbXBvbmVudHMvZGlhbG9ncy9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBRTVELE1BQU0sVUFBVSxHQUFHLENBQUMsK0JBQStCLENBQUMsQ0FBQztBQU1yRCxNQUFNLE9BQU8sZUFBZTs4R0FBZixlQUFlOytHQUFmLGVBQWUsWUFOUiwrQkFBK0IsYUFBL0IsK0JBQStCLEVBSXhCLGVBQWU7K0dBRTdCLGVBQWUsWUFIYixVQUFVLEVBQ0UsZUFBZTs7MkZBRTdCLGVBQWU7a0JBSjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQ3hCLE9BQU8sRUFBRSxDQUFDLEdBQUcsVUFBVSxFQUFFLGVBQWUsQ0FBQztpQkFDMUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUYWtEaXNtaXNzRGlhbG9nQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9kaXNtaXNzLWRpYWxvZy1idXR0b24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL2RpYWxvZyc7XHJcblxyXG5jb25zdCBjb21wb25lbnRzID0gW1Rha0Rpc21pc3NEaWFsb2dCdXR0b25Db21wb25lbnRdO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbLi4uY29tcG9uZW50c10sXHJcbiAgZXhwb3J0czogWy4uLmNvbXBvbmVudHMsIE1hdERpYWxvZ01vZHVsZV0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUYWtEaWFsb2dNb2R1bGUge31cclxuIl19
|
package/esm2022/fields/index.mjs
CHANGED
|
@@ -7,13 +7,13 @@ export * from './error/error.msg.pipe';
|
|
|
7
7
|
export * from './common';
|
|
8
8
|
export * from './module';
|
|
9
9
|
export * from './validators';
|
|
10
|
-
export * from './select';
|
|
11
|
-
export * from './date';
|
|
12
|
-
export * from './autocomplete';
|
|
13
|
-
export * from './general';
|
|
14
|
-
export * from './money';
|
|
10
|
+
export * from './select/component';
|
|
11
|
+
export * from './date/component';
|
|
12
|
+
export * from './autocomplete/component';
|
|
13
|
+
export * from './general/component';
|
|
14
|
+
export * from './money/component';
|
|
15
15
|
export * from './text-area/component';
|
|
16
|
-
export * from './date-range';
|
|
17
|
-
export * from './number';
|
|
18
|
-
export * from './remote-autocomplete';
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
export * from './date-range/component';
|
|
17
|
+
export * from './number/component';
|
|
18
|
+
export * from './remote-autocomplete/component';
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBAa2F0by1sZWUvY29tcG9uZW50cy9maWVsZHNcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2Vycm9yL2Vycm9yLWVxdWFscy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9lcnJvci9jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Vycm9yL2Vycm9yLm1zZy5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb21tb24nO1xyXG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdmFsaWRhdG9ycyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VsZWN0L2NvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZGF0ZS9jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2F1dG9jb21wbGV0ZS9jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2dlbmVyYWwvY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9tb25leS9jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3RleHQtYXJlYS9jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RhdGUtcmFuZ2UvY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9udW1iZXIvY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9yZW1vdGUtYXV0b2NvbXBsZXRlL2NvbXBvbmVudCc7XHJcbiJdfQ==
|
|
@@ -6,7 +6,6 @@ import { getSpanishMatPaginatorIntl } from './mat-paginator.translation';
|
|
|
6
6
|
import { TakTableNoRecordsComponent } from './no-records.component';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
const modules = [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent];
|
|
9
|
-
/** @deprecated Use standalone */
|
|
10
9
|
export class TakTablesModule {
|
|
11
10
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakTablesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
11
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: TakTablesModule, imports: [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent], exports: [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent] }); }
|
|
@@ -20,4 +19,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
20
19
|
providers: [{ provide: MatPaginatorIntl, useValue: getSpanishMatPaginatorIntl() }],
|
|
21
20
|
}]
|
|
22
21
|
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvbXBvbmVudHMvdGFibGVzL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRXBFLE1BQU0sT0FBTyxHQUFHLENBQUMsY0FBYyxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSwwQkFBMEIsQ0FBQyxDQUFDO0FBT2hHLE1BQU0sT0FBTyxlQUFlOzhHQUFmLGVBQWU7K0dBQWYsZUFBZSxZQVBYLGNBQWMsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsMEJBQTBCLGFBQTdFLGNBQWMsRUFBRSxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsMEJBQTBCOytHQU9qRixlQUFlLGFBRmYsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsRUFBRSxDQUFDLFlBRnpFLE9BQU8sRUFIRCxjQUFjLEVBQUUsYUFBYSxFQUFFLGtCQUFrQjs7MkZBT3JELGVBQWU7a0JBTDNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLE9BQU87b0JBQ2hCLE9BQU8sRUFBRSxPQUFPO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsRUFBRSxDQUFDO2lCQUNuRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFBhZ2luYXRvckludGwsIE1hdFBhZ2luYXRvck1vZHVsZSB9IGZyb20gJ0BrYXRvLWxlZS9tYXRlcmlhbC9wYWdpbmF0b3InO1xyXG5pbXBvcnQgeyBNYXRTb3J0TW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL3NvcnQnO1xyXG5pbXBvcnQgeyBNYXRUYWJsZU1vZHVsZSB9IGZyb20gJ0BrYXRvLWxlZS9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7IGdldFNwYW5pc2hNYXRQYWdpbmF0b3JJbnRsIH0gZnJvbSAnLi9tYXQtcGFnaW5hdG9yLnRyYW5zbGF0aW9uJztcclxuaW1wb3J0IHsgVGFrVGFibGVOb1JlY29yZHNDb21wb25lbnQgfSBmcm9tICcuL25vLXJlY29yZHMuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IG1vZHVsZXMgPSBbTWF0VGFibGVNb2R1bGUsIE1hdFNvcnRNb2R1bGUsIE1hdFBhZ2luYXRvck1vZHVsZSwgVGFrVGFibGVOb1JlY29yZHNDb21wb25lbnRdO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBtb2R1bGVzLFxyXG4gIGV4cG9ydHM6IG1vZHVsZXMsXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBNYXRQYWdpbmF0b3JJbnRsLCB1c2VWYWx1ZTogZ2V0U3BhbmlzaE1hdFBhZ2luYXRvckludGwoKSB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRha1RhYmxlc01vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -46,7 +46,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
46
46
|
}], ctorParameters: () => [{ type: i1.MatDialogRef }] });
|
|
47
47
|
|
|
48
48
|
const components = [TakDismissDialogButtonComponent];
|
|
49
|
-
/** @deprecated Use standalone */
|
|
50
49
|
class TakDialogModule {
|
|
51
50
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
52
51
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: TakDialogModule, imports: [TakDismissDialogButtonComponent], exports: [TakDismissDialogButtonComponent, MatDialogModule] }); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kato-lee-components-dialogs.mjs","sources":["../../../libraries/components/dialogs/dismiss-dialog-button.component.ts","../../../libraries/components/dialogs/module.ts","../../../libraries/components/dialogs/index.ts","../../../libraries/components/dialogs/kato-lee-components-dialogs.ts"],"sourcesContent":["import { ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';\r\nimport { MatDialogRef } from '@kato-lee/material/dialog';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { MatDividerModule } from '@kato-lee/material/divider';\r\nimport { MatDialogModule } from '@kato-lee/material/dialog';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [MatIconModule, MatButtonModule, MatDividerModule, MatDialogModule],\r\n selector: 'tak-dismiss-dialog-button',\r\n host: {\r\n directive: 'tak-dialog-title',\r\n },\r\n template: `\r\n <div class=\"tak-modal__top-container--custom\">\r\n <h1 class=\"tak-modal__top-container--custom--title\"><ng-content /></h1>\r\n <button mat-icon-button (click)=\"dialogRef.close()\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <mat-divider />\r\n <input style=\"display: none !important;\" cdkFocusInitial />\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TakDismissDialogButtonComponent {\r\n constructor(public dialogRef: MatDialogRef<TakDismissDialogButtonComponent>) {}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { TakDismissDialogButtonComponent } from './dismiss-dialog-button.component';\r\nimport { MatDialogModule } from '@kato-lee/material/dialog';\r\n\r\nconst components = [TakDismissDialogButtonComponent];\r\n\r\n
|
|
1
|
+
{"version":3,"file":"kato-lee-components-dialogs.mjs","sources":["../../../libraries/components/dialogs/dismiss-dialog-button.component.ts","../../../libraries/components/dialogs/module.ts","../../../libraries/components/dialogs/index.ts","../../../libraries/components/dialogs/kato-lee-components-dialogs.ts"],"sourcesContent":["import { ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';\r\nimport { MatDialogRef } from '@kato-lee/material/dialog';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { MatDividerModule } from '@kato-lee/material/divider';\r\nimport { MatDialogModule } from '@kato-lee/material/dialog';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [MatIconModule, MatButtonModule, MatDividerModule, MatDialogModule],\r\n selector: 'tak-dismiss-dialog-button',\r\n host: {\r\n directive: 'tak-dialog-title',\r\n },\r\n template: `\r\n <div class=\"tak-modal__top-container--custom\">\r\n <h1 class=\"tak-modal__top-container--custom--title\"><ng-content /></h1>\r\n <button mat-icon-button (click)=\"dialogRef.close()\"><mat-icon>close</mat-icon></button>\r\n </div>\r\n <mat-divider />\r\n <input style=\"display: none !important;\" cdkFocusInitial />\r\n `,\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TakDismissDialogButtonComponent {\r\n constructor(public dialogRef: MatDialogRef<TakDismissDialogButtonComponent>) {}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { TakDismissDialogButtonComponent } from './dismiss-dialog-button.component';\r\nimport { MatDialogModule } from '@kato-lee/material/dialog';\r\n\r\nconst components = [TakDismissDialogButtonComponent];\r\n\r\n@NgModule({\r\n imports: [...components],\r\n exports: [...components, MatDialogModule],\r\n})\r\nexport class TakDialogModule {}\r\n","/*\r\n * Public API Surface of @kato-lee/components/dialogs\r\n */\r\n\r\nexport * from './module';\r\nexport * from './dismiss-dialog-button.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kato-lee-components-fields.mjs","sources":["../../../libraries/components/fields/error/error-equals.pipe.ts","../../../libraries/components/fields/error/lang/_en.ts","../../../libraries/components/fields/error/lang/_es.ts","../../../libraries/components/fields/error/error.msg.pipe.ts","../../../libraries/components/fields/error/component.ts","../../../libraries/components/fields/error/component.html","../../../libraries/components/fields/common.ts","../../../libraries/components/fields/select/component.ts","../../../libraries/components/fields/select/component.html","../../../libraries/components/fields/date/component.ts","../../../libraries/components/fields/date/component.html","../../../libraries/components/fields/autocomplete/component.ts","../../../libraries/components/fields/autocomplete/component.html","../../../libraries/components/fields/date-range/component.ts","../../../libraries/components/fields/date-range/component.html","../../../libraries/components/fields/money/component.ts","../../../libraries/components/fields/money/component.html","../../../libraries/components/fields/general/component.ts","../../../libraries/components/fields/general/component.html","../../../libraries/components/fields/number/component.ts","../../../libraries/components/fields/number/component.html","../../../libraries/components/fields/text-area/component.ts","../../../libraries/components/fields/text-area/component.html","../../../libraries/components/fields/remote-autocomplete/component.ts","../../../libraries/components/fields/remote-autocomplete/component.html","../../../libraries/components/fields/module.ts","../../../libraries/components/fields/validators.ts","../../../libraries/components/fields/index.ts","../../../libraries/components/fields/kato-lee-components-fields.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ standalone: true, name: 'errorEquals' })\r\nexport class TakErrorEqualsPipe implements PipeTransform {\r\n transform(errors: any, error: any, args?: any): any {\r\n if (!errors) return false;\r\n const array = Object.keys(errors);\r\n if (array && array.length > 0) return errors[array[0]] === error;\r\n return false;\r\n }\r\n}\r\n","export const en: any = {\r\n minLengthMsg: (length: number) => `The field contains fewer than ${length} characters`,\r\n maxLengthMsg: (length: number) => `The field contains more than ${length} characters`,\r\n minMsg: (min: number) => `The number must be bigger than ${min}`,\r\n maxMsg: (max: number) => `The number must be lower than ${max}`,\r\n patternMsg: 'One or more characters not allowed',\r\n requiredMsg: 'This field is required',\r\n EmailMsg: 'This field must be an email',\r\n badDateMsg: 'Insert a valid date',\r\n DateRangeMsg: 'The range is not valid',\r\n};\r\n","export const es: any = {\r\n minLengthMsg: (length: number) => `El campo contiene menos de ${length} caracteres`,\r\n maxLengthMsg: (length: number) => `El campo contiene mas de ${length} caracteres`,\r\n minMsg: (min: number) => `El numero debe ser mayor a ${min}`,\r\n maxMsg: (max: number) => `El numero debe ser menor a ${max}`,\r\n patternMsg: 'Uno o mas caracteres no permitidos',\r\n requiredMsg: 'Este campo es requerido',\r\n EmailMsg: 'Este campo debe ser un email',\r\n badDateMsg: 'Inserte una fecha valida',\r\n DateRangeMsg: 'El rango no es valido',\r\n};\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as lang from './lang';\r\n\r\n@Pipe({ standalone: true, name: 'errorMsg' })\r\nexport class TakErrorMsgPipe implements PipeTransform {\r\n transform(parameter: string, aditionalValue?: any): string {\r\n let resources = lang.es;\r\n if (aditionalValue) return resources[parameter](aditionalValue);\r\n else return resources[parameter];\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ElementRef, Component, ViewChild, Input } from '@angular/core';\r\nimport { FormControl, ValidationErrors } from '@angular/forms';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { TakErrorEqualsPipe } from './error-equals.pipe';\r\nimport { TakErrorMsgPipe } from './error.msg.pipe';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [FormsModule, CommonModule, TakErrorEqualsPipe, TakErrorMsgPipe, ReactiveFormsModule],\r\n selector: 'tak-error',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakErrorComponent {\r\n @ViewChild('error') error: ElementRef | undefined;\r\n\r\n @Input() control!: FormControl;\r\n\r\n @Input() start!: FormControl;\r\n\r\n @Input() end!: FormControl;\r\n\r\n @Input() isDateField: boolean = false;\r\n\r\n @Input() isNumberField: boolean = false;\r\n\r\n @Input() marginTop = -20;\r\n\r\n public hasPatternError: boolean = false;\r\n\r\n get required(): ValidationErrors {\r\n return this.control?.errors?.['required'];\r\n }\r\n\r\n get pattern(): ValidationErrors {\r\n return this.control?.errors?.['pattern'];\r\n }\r\n\r\n get max() {\r\n return this.control?.errors?.['max'];\r\n }\r\n\r\n get min() {\r\n return this.control?.errors?.['min'];\r\n }\r\n\r\n get maxlength() {\r\n return this.control?.errors?.['maxlength'];\r\n }\r\n\r\n get minlength() {\r\n return this.control?.errors?.['minlength'];\r\n }\r\n\r\n get email(): ValidationErrors {\r\n return this.control?.errors?.['email'];\r\n }\r\n}\r\n","<div class=\"tak-custom-error tak-fade-in--800ms\" #error [style.marginTop.px]=\"marginTop\">\r\n @if (control !== undefined && isDateField && control.valid) {\r\n <div>\r\n {{ 'badDateMsg' | errorMsg }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: required) {\r\n <div>\r\n {{ 'requiredMsg' | errorMsg }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: pattern) {\r\n <div>\r\n {{\r\n isNumberField\r\n ? 'El campo solo debe contener caracteres numericos'\r\n : ('patternMsg' | errorMsg)\r\n }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: max) {\r\n <div>\r\n {{ 'maxMsg' | errorMsg: max.max }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: min) {\r\n <div>\r\n {{ 'minMsg' | errorMsg: min.min }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: maxlength) {\r\n <div>\r\n {{ 'maxLengthMsg' | errorMsg: maxlength.requiredLength }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: minlength) {\r\n <div>\r\n {{ 'minLengthMsg' | errorMsg: minlength.requiredLength }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: email) {\r\n <div>\r\n {{ 'EmailMsg' | errorMsg }}\r\n </div>\r\n }\r\n @if (control === undefined) {\r\n <div>\r\n {{\r\n start.hasError('required') && end.hasError('required')\r\n ? ('requiredMsg' | errorMsg)\r\n : ('DateRangeMsg' | errorMsg)\r\n }}\r\n </div>\r\n }\r\n</div>\r\n","import { ESCAPE } from '@kato-lee/cdk/keycodes';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\n\r\nexport const TAK_DEFAULT_APPEARANCE_FORM: MatFormFieldAppearance = 'standard';\r\n\r\nexport type TakGeneralFieldType = 'text' | 'password' | 'filter';\r\nexport type TakAutocompleteFieldType = 'off' | 'on';\r\n\r\nexport const TAK_PRESS_ESC_KEY = new KeyboardEvent('keydown', {\r\n bubbles: true,\r\n cancelable: true,\r\n keyCode: ESCAPE,\r\n});\r\n\r\nexport const TAK_PTRN_EMAIL = '^[^@]+@[^@]+.[a-zA-Z]{2,}$';\r\nexport const TAK_PTRN_NUMRC = /^[0-9.]+$/;\r\nexport const TAK_PTRN_NONSP = /^[^\\s]+$/;\r\n","import {\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n Component,\r\n Optional,\r\n Input,\r\n Self,\r\n OnInit,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n FormGroupDirective,\r\n FormsModule,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { MatOptionSelectionChange, ThemePalette } from '@kato-lee/material/core';\r\nimport { TakAutocompleteFieldType, TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { MatTooltipModule } from '@kato-lee/material/tooltip';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatSelectModule } from '@kato-lee/material/select';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatOptionModule } from '@kato-lee/material/core';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { MatMenuModule } from '@kato-lee/material/menu';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatSelectModule,\r\n MatOptionModule,\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-select-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakSelectFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() suggestions: any[] = [];\r\n @Input() disabled = false;\r\n\r\n @Input() type: 'menu' | 'select' = 'select';\r\n @Input() tooltip = '';\r\n @Input() icon = 'filter_list';\r\n\r\n @Input() option = 'option';\r\n @Input() extraInfo = '';\r\n\r\n @Input() hasDefaultValue = false;\r\n\r\n @Output() onSelect = new EventEmitter<any>();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n public isInvalid = false;\r\n public isSubmitted = false;\r\n private _unsubscribe$ = new Subject<void>();\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n if (_formGroupDirective) {\r\n _formGroupDirective.ngSubmit.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\r\n this.isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n if (this.suggestions.length && this.hasDefaultValue) {\r\n this._ngControl.control?.setValue(this.suggestions[0]);\r\n }\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {}\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this.onChangeFn(event.target.value);\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public emit(el: MatOptionSelectionChange) {\r\n if (el.isUserInput) {\r\n this.onSelect.emit(el.source.value);\r\n this.isInvalid = false;\r\n }\r\n }\r\n\r\n public justEmit(el: any) {\r\n this.control.setValue(el);\r\n this.onSelect.emit(el);\r\n this.isInvalid = false;\r\n }\r\n\r\n public onFocusOut() {\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this.isInvalid = true;\r\n else this.isInvalid = false;\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl?.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n}\r\n","@if (type === 'select') {\r\n <div class=\"tak-form-container\">\r\n <mat-form-field [appearance]=\"appearance\" [color]=\"color\">\r\n <mat-label><ng-content /></mat-label>\r\n <mat-select [formControl]=\"control\" (focusout)=\"onFocusOut()\">\r\n @for (suggestion of suggestions; track suggestion) {\r\n <mat-option\r\n [value]=\"suggestion\"\r\n (onSelectionChange)=\"emit($event)\"\r\n title=\"{{ suggestion[option] }} {{\r\n extraInfo ? '(' + suggestion[extraInfo] + ')' : ''\r\n }}\"\r\n >\r\n {{ suggestion[option] }}\r\n @if (extraInfo) {\r\n <span class=\"tak-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n} @else {\r\n <div [matTooltip]=\"tooltip\">\r\n @if (type === 'menu') {\r\n <span>\r\n <button mat-icon-button type=\"button\" [matMenuTriggerFor]=\"menu\" [disabled]=\"isDisabled\">\r\n <mat-icon>{{ icon }}</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n @for (item of suggestions; track item) {\r\n <a tak-menu-item (click)=\"justEmit(item)\">\r\n {{ item[option] }}\r\n </a>\r\n }\r\n </mat-menu>\r\n </span>\r\n }\r\n </div>\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n AfterViewInit,\r\n OnDestroy,\r\n Component,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n} from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, ThemePalette } from '@kato-lee/material/core';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n FormGroupDirective,\r\n FormsModule,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakAutocompleteFieldType } from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatDatepickerModule } from '@kato-lee/material/datepicker';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n MatNativeDateModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatDatepickerModule,\r\n MatInputModule,\r\n ],\r\n providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],\r\n selector: 'tak-date-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakDateFieldComponent\r\n implements OnInit, AfterViewInit, OnDestroy, ControlValueAccessor\r\n{\r\n private _unsubscribe$ = new Subject<void>();\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() placeholder = '';\r\n @Input() notInput = false;\r\n\r\n @Input() minDate!: Date | string;\r\n @Input() maxDate!: Date | string;\r\n\r\n @Input() disabled = false;\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n if (_formGroupDirective) {\r\n _formGroupDirective.ngSubmit.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n if (form?._rawValidators) {\r\n form._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) {\r\n this._required = true;\r\n }\r\n });\r\n }\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n const isValidDate = Date.parse(this.control.value);\r\n if (isNaN(isValidDate)) this.control.setValue(null);\r\n else this.control.setValue(new Date(this.control.value));\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value;\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public onFocusout(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n public onCloseDatePicker(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n const isValidDate = Date.parse(this.control.value);\r\n if (\r\n this.control.invalid ||\r\n ([undefined, null, ''].indexOf(this.control.value) < 0 &&\r\n this.control.valid &&\r\n isNaN(isValidDate))\r\n ) {\r\n this._isInvalid = true;\r\n } else {\r\n this._isInvalid = false;\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl?.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","@if (!notInput) {\r\n <div class=\"tak-form-container\">\r\n <mat-form-field\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n matInput\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n [autocomplete]=\"autocomplete\"\r\n [matDatepicker]=\"picker\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (dateChange)=\"onChange($event)\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"isDisabled\"\r\n (focusout)=\"onFocusout()\"\r\n />\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker (closed)=\"onCloseDatePicker()\" #picker></mat-datepicker>\r\n </mat-form-field>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\" [isDateField]=\"true\"> </tak-error>\r\n }\r\n </div>\r\n}\r\n@if (notInput) {\r\n <div>\r\n <div\r\n class=\"tak__date-not-input__picker-container\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n >\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker (closed)=\"onCloseDatePicker()\" #picker></mat-datepicker>\r\n </div>\r\n <div class=\"tak__date-not-input__field-container\">\r\n <mat-form-field [color]=\"color\">\r\n <input\r\n matInput\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n autocomplete=\"off\"\r\n [matDatepicker]=\"picker\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (dateChange)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n (focusout)=\"onFocusout()\"\r\n />\r\n </mat-form-field>\r\n </div>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\" [isDateField]=\"true\" [marginTop]=\"-60\"> </tak-error>\r\n }\r\n </div>\r\n}\r\n","import {\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n Input,\r\n Self,\r\n OnInit,\r\n ChangeDetectorRef,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { debounceTime, map, Observable, Subject, takeUntil } from 'rxjs';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { MatOptionSelectionChange, ThemePalette } from '@kato-lee/material/core';\r\nimport {\r\n TakAutocompleteFieldType,\r\n TAK_DEFAULT_APPEARANCE_FORM,\r\n TAK_PRESS_ESC_KEY,\r\n} from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n TakErrorComponent,\r\n ReactiveFormsModule,\r\n MatProgressSpinnerModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatAutocompleteModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-autocomplete-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakAutocompleteFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n private _unsubscribe$ = new Subject<void>();\r\n\r\n @Input() option = 'option';\r\n @Input() extraInfo = '';\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() hasClearButton = true;\r\n @Input() suggestions: any[] = [];\r\n @Input() disabled = false;\r\n @Input() hasTitle = false;\r\n\r\n @Input() isLoading = false;\r\n @Input() isRemoteSearch = false;\r\n @Input() debounceTimeForRemoteSearch = 500;\r\n\r\n @Output() onSelect = new EventEmitter<any>();\r\n @Output() onSearch = new EventEmitter<any>();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n private _filteredOptions!: Observable<any[]>;\r\n private _notSuggestions = false;\r\n private _lastValue = '';\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n if (_formGroupDirective) {\r\n _formGroupDirective.ngSubmit.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n this._filteredOptions = this.control.valueChanges.pipe(\r\n takeUntil(this._unsubscribe$),\r\n map(() => this._filter())\r\n );\r\n\r\n if (this.isRemoteSearch) {\r\n this.control.valueChanges\r\n .pipe(takeUntil(this._unsubscribe$), debounceTime(this.debounceTimeForRemoteSearch))\r\n .subscribe(() => {\r\n if (this._lastValue !== `${this._value}` && `${this._value}` && !this.control.value) {\r\n this.onSearch.emit(`${this._value}`);\r\n this._setValue(`${this._value}`);\r\n }\r\n\r\n this._lastValue = `${this._value}`;\r\n });\r\n }\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n private _filter(): any[] {\r\n const value =\r\n typeof `${this._value}` === 'string'\r\n ? `${this._value}`.toLowerCase()\r\n : `${this.control.value[this.option]}`.toLowerCase();\r\n const option = this.suggestions.filter(res =>\r\n `${res[this.option]}`.toLowerCase().includes(value)\r\n );\r\n if (!option.length) this._notSuggestions = true;\r\n else this._notSuggestions = false;\r\n return option;\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value || '';\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n if (event.target.value !== `${this._value}`) {\r\n this._value = event.target.value;\r\n\r\n if (!this.isRemoteSearch) this._setValue(`${this._value}`);\r\n\r\n this.onChangeFn(\r\n this.suggestions.filter(\r\n sug => `${sug[this.option]}`.toLowerCase() === `${`${this._value}`}`.toLowerCase()\r\n )[0] || null\r\n );\r\n\r\n if (this.control.touched) {\r\n this._onValidate();\r\n }\r\n }\r\n }\r\n\r\n private _setValue(value: string) {\r\n if (!this.isRemoteSearch) {\r\n const suggestionsFiltered = value\r\n ? this.suggestions.filter(\r\n el =>\r\n `${el[this.option]}`.toLowerCase().trim() === (value as string).toLowerCase().trim()\r\n )\r\n : [];\r\n\r\n if (suggestionsFiltered.length) {\r\n document.body.dispatchEvent(TAK_PRESS_ESC_KEY);\r\n }\r\n\r\n try {\r\n this.control.setValue(suggestionsFiltered[0][this.option], {\r\n emitEvent: false,\r\n });\r\n this.onSelect.emit(suggestionsFiltered[0]);\r\n } catch (error) {}\r\n }\r\n }\r\n\r\n public emit(el: MatOptionSelectionChange) {\r\n if (el && el.isUserInput) this._isInvalid = false;\r\n }\r\n\r\n public emitWithClick(suggestionOption: any) {\r\n this.control.setValue(suggestionOption);\r\n this._value = `${suggestionOption[this.option]}`;\r\n this._isInvalid = false;\r\n }\r\n\r\n public onFocusout(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n public setValue(value: any) {\r\n this.control.setValue(value);\r\n this._value = `${value[this.option]}`;\r\n }\r\n\r\n public onUpdateSuggestions(suggestions: any[]) {\r\n this.suggestions = suggestions;\r\n this._cd.markForCheck();\r\n\r\n this.onChangeFn(\r\n this.suggestions.filter(\r\n sug => `${sug[this.option]}`.toLowerCase() === `${this._value}`.toLowerCase()\r\n )[0] || null\r\n );\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onFocus() {\r\n if (!`${this._value}`) {\r\n this.control.setValue('');\r\n this._value = '';\r\n }\r\n }\r\n\r\n public onClearControl(): void {\r\n this.control.setValue('', { emitEvent: false });\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl?.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return `${this._value}`;\r\n }\r\n\r\n get filteredOptions() {\r\n return this._filteredOptions;\r\n }\r\n\r\n get notSuggestions() {\r\n return this._notSuggestions;\r\n }\r\n\r\n get lastValue() {\r\n return this._lastValue;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [matAutocomplete]=\"auto\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n (focus)=\"onFocus()\"\r\n (focusout)=\"onFocusout()\"\r\n />\r\n @if (isRemoteSearch && isLoading) {\r\n <button matSuffix mat-icon-button type=\"button\">\r\n <mat-spinner [diameter]=\"15\" mode=\"indeterminate\"></mat-spinner>\r\n </button>\r\n }\r\n @if ((control.value || value) && hasClearButton && !disabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n }\r\n <mat-autocomplete #auto=\"matAutocomplete\">\r\n @for (suggestion of filteredOptions | async; track suggestion) {\r\n <mat-option\r\n [value]=\"suggestion[option]\"\r\n [class.tak-option-extra]=\"extraInfo\"\r\n (onSelectionChange)=\"emit($event)\"\r\n (click)=\"emitWithClick(suggestion)\"\r\n title=\"{{ suggestion[option] }} {{ extraInfo ? '(' + suggestion[extraInfo] + ')' : '' }}\"\r\n >\r\n <span>{{ suggestion[option] }}</span>\r\n @if (extraInfo) {\r\n <span class=\"tak-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n @if (notSuggestions && control.invalid) {\r\n <mat-option>\r\n <span class=\"tak-autocomplete-not-records\"> No se encuentran resultados </span>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, ThemePalette } from '@kato-lee/material/core';\r\nimport { TakAutocompleteFieldType, TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatDatepickerModule } from '@kato-lee/material/datepicker';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n MatNativeDateModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatDatepickerModule,\r\n MatInputModule,\r\n ],\r\n providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],\r\n selector: 'tak-date-range-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakDateRangeFieldComponent implements OnInit {\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() startPlaceholder: string = 'Inicio';\r\n @Input() endPlaceholder: string = 'Fin';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() color: ThemePalette = 'primary';\r\n\r\n @Input() start!: FormControl;\r\n @Input() end!: FormControl;\r\n @Input() notInput = false;\r\n\r\n @Input() disabled = false;\r\n\r\n private _required = false;\r\n\r\n public ngOnInit(): void {\r\n const start: any = this.start;\r\n const end: any = this.end;\r\n if (start?._rawValidators) {\r\n start._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n if (end?._rawValidators) {\r\n end._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n if (this.disabled) {\r\n this.start.disable();\r\n this.end.disable();\r\n }\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get isDisabled() {\r\n return this.start.disabled || this.end.disabled;\r\n }\r\n}\r\n","@if (!notInput) {\r\n <div class=\"tak-form-container\">\r\n <mat-form-field [appearance]=\"appearance\" [color]=\"color\">\r\n <mat-label>\r\n <ng-content />\r\n </mat-label>\r\n <mat-date-range-input [rangePicker]=\"picker\">\r\n <input\r\n matStartDate\r\n [placeholder]=\"startPlaceholder\"\r\n [formControl]=\"start\"\r\n [autocomplete]=\"autocomplete\"\r\n />\r\n <input matEndDate [placeholder]=\"endPlaceholder\" [formControl]=\"end\" />\r\n </mat-date-range-input>\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-date-range-picker #picker></mat-date-range-picker>\r\n </mat-form-field>\r\n @if ((start.invalid || end.invalid) && (start.touched || end.touched)) {\r\n <tak-error [start]=\"start\" [end]=\"end\"> </tak-error>\r\n }\r\n </div>\r\n}\r\n@if (notInput) {\r\n <div>\r\n <div\r\n class=\"tak__date-not-input__picker-container\"\r\n [class.mat-form-field-invalid]=\"\r\n (start.invalid || end.invalid) && (start.touched || end.touched)\r\n \"\r\n >\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-date-range-picker #picker [disabled]=\"isDisabled\"></mat-date-range-picker>\r\n </div>\r\n <div class=\"tak__date-not-input__field-container\">\r\n <mat-form-field [color]=\"color\">\r\n <mat-date-range-input [rangePicker]=\"picker\">\r\n <input matStartDate [formControl]=\"start\" />\r\n <input matEndDate [formControl]=\"end\" />\r\n </mat-date-range-input>\r\n </mat-form-field>\r\n </div>\r\n @if ((start.invalid || end.invalid) && (start.touched || end.touched)) {\r\n <tak-error [start]=\"start\" [end]=\"end\" [marginTop]=\"-60\"></tak-error>\r\n }\r\n </div>\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n Validators,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-money-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakMoneyFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() floatLabel: FloatLabelType = 'auto';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() defaultFilterStyle = true;\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = true;\r\n @Input() countCaracters = false;\r\n @Input() placeholder = '';\r\n\r\n @Input() maxLength!: number;\r\n @Input() minLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n private _subscription!: Subscription;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n this.control.addValidators(Validators.pattern(/^[0-9.,-]+$/));\r\n\r\n if (['', null, undefined, '-'].indexOf(this.control.value) < 0) this._addCurrencyMask();\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) {\r\n this._isInvalid = false;\r\n }\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n this._addCurrencyMask();\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n private _addCurrencyMask() {\r\n const valueFormatted = this.control.value\r\n .toString()\r\n .replace(/,/g, '')\r\n .replace(/ /g, '')\r\n .replace('$', '');\r\n\r\n if (['', null, undefined, '-'].indexOf(valueFormatted) < 0 && !isNaN(Number(valueFormatted))) {\r\n const value = '$ ' + Intl.NumberFormat('en-US').format(Number(valueFormatted));\r\n this.control.setValue(+valueFormatted);\r\n this._value = value;\r\n } else if (['-'].indexOf(valueFormatted) >= 0) this.control.setValue('-');\r\n else this.control.setValue(null);\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n //this._executeIfIsMoneyField();\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onKeyDown(event: any) {\r\n const pattern = /[0-9.-]/i.test(event.key);\r\n const validKeyCodes = [8, 46, 37, 39, 9, 17, 16, 67, 86, 109, 189];\r\n return pattern || validKeyCodes.indexOf(event.keyCode) >= 0;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else {\r\n this.control.setValue('');\r\n }\r\n\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n class=\"money-input\"\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [placeholder]=\"placeholder\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n (keydown)=\"onKeyDown($event)\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n />\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n Validators,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakGeneralFieldType } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-general-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakGeneralFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() type: TakGeneralFieldType = 'text';\r\n @Input() floatLabel: FloatLabelType = 'never';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() defaultFilterStyle = true;\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = false;\r\n @Input() countCaracters = false;\r\n @Input() placeholder = '';\r\n\r\n @Input() maxLength!: number;\r\n @Input() minLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n private _subscription!: Subscription;\r\n private _decrypted = false;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (this.type === 'filter' && this.defaultFilterStyle) {\r\n this.control.removeValidators(Validators.required);\r\n this.appearance = 'legacy';\r\n this.floatLabel = 'never';\r\n if (!this.placeholder) this.placeholder = 'Buscar';\r\n this.hasClearButton = true;\r\n this._cd.markForCheck();\r\n }\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n if (!this.control.value && this.type === 'password') this._decrypted = false;\r\n if (this.control.touched) this._onValidate();\r\n if (this.type === 'filter') this.onKeyUp.emit(this.control.value);\r\n }\r\n\r\n public showPassword(): void {\r\n if (this.type === 'password') {\r\n if (this._decrypted) this._decrypted = false;\r\n else this._decrypted = true;\r\n }\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else this.control.setValue('');\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get decrypted() {\r\n return this._decrypted;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n [type]=\"type === 'password' && !decrypted ? 'password' : 'text'\"\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n />\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && type === 'password' && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"showPassword()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{\r\n decrypted ? 'visibility_off' : 'visibility'\r\n }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n Validators,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-number-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakNumberFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() floatLabel: FloatLabelType = 'auto';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = false;\r\n @Input() countCaracters = false;\r\n @Input() placeholder = '';\r\n\r\n @Input() min!: number;\r\n @Input() max!: number;\r\n\r\n @Input() minLength!: number;\r\n @Input() maxLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n private _subscription!: Subscription;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n if (this.min) this.control.addValidators(Validators.min(this.min));\r\n if (this.max) this.control.addValidators(Validators.max(this.max));\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(\r\n ['', null, undefined].indexOf(event.target.value) < 0 ? +event.target.value : null\r\n );\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else this.control.setValue('');\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n type=\"number\"\r\n matInput\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [autocomplete]=\"autocomplete\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n [placeholder]=\"placeholder\"\r\n (change)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n />\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-textarea',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakTextareaComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() floatLabel: FloatLabelType = 'auto';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() defaultFilterStyle = true;\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = false;\r\n @Input() countCaracters = false;\r\n @Input() isTextArea = false;\r\n @Input() placeholder = '';\r\n @Input() heightInPx = 60;\r\n\r\n @Input() minLength!: number;\r\n @Input() maxLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n public _isSubmitted = false;\r\n public _isInvalid = false;\r\n public _required = false;\r\n public _value = '';\r\n\r\n private _subscription!: Subscription;\r\n private _decrypted = false;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) {\r\n this._isInvalid = false;\r\n }\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else {\r\n this.control.setValue('');\r\n }\r\n\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get decrypted() {\r\n return this._decrypted;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <textarea\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [value]=\"value\"\r\n [style.height.px]=\"heightInPx\"\r\n [placeholder]=\"placeholder\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n ></textarea>\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button mat-icon-button type=\"button\" matSuffix (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton) {\r\n <button mat-icon-button type=\"button\" matSuffix (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ChangeDetectorRef,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n OnDestroy,\r\n ViewEncapsulation,\r\n Input,\r\n} from '@angular/core';\r\nimport { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TakToast } from '@kato-lee/components/toast';\r\nimport {\r\n Observable,\r\n Subject,\r\n debounceTime,\r\n distinctUntilChanged,\r\n firstValueFrom,\r\n map,\r\n takeUntil,\r\n} from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { TAK_PRESS_ESC_KEY } from '../common';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n FormsModule,\r\n MatProgressSpinnerModule,\r\n MatFormFieldModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n MatIconModule,\r\n MatButtonModule,\r\n CommonModule,\r\n ],\r\n selector: 'tak-remote-autocomplete-field',\r\n templateUrl: './component.html',\r\n styles: [\r\n `\r\n mat-spinner.spinner-loading {\r\n display: inline;\r\n margin-left: -10px;\r\n & > svg {\r\n margin-top: -5px;\r\n }\r\n }\r\n `,\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TakRemoteAutocompleteFieldComponent implements OnInit, OnDestroy {\r\n @Input() remoteUrl = '';\r\n @Input() params: any = {};\r\n @Input() option = 'option';\r\n @Input() extraInfo = '';\r\n @Input() justOneLoad = false;\r\n\r\n @Output() onSelect = new EventEmitter<any>();\r\n\r\n public suggestions: any[] = [];\r\n public autocomplete = new FormControl();\r\n\r\n private _isLoading = false;\r\n public isValueSelected = false;\r\n\r\n private _unsubscribe$ = new Subject<void>();\r\n private _isLoadingItem = false;\r\n private _isRequired = true;\r\n\r\n private _filteredOptions!: Observable<any[]>;\r\n private _value = '';\r\n private _notSuggestions = false;\r\n\r\n public wasLoaded = false;\r\n\r\n constructor(\r\n private _http: HttpClient,\r\n private _cd: ChangeDetectorRef,\r\n private _toast: TakToast\r\n ) {}\r\n\r\n public async ngOnInit(): Promise<void> {\r\n if (!this.justOneLoad) {\r\n this.autocomplete.valueChanges\r\n .pipe(takeUntil(this._unsubscribe$), debounceTime(500), distinctUntilChanged())\r\n .subscribe(async value => {\r\n if (\r\n value &&\r\n !this.suggestions.filter(suggestion => suggestion.getNombre() === value).length\r\n ) {\r\n this._isLoading = true;\r\n this._cd.markForCheck();\r\n\r\n try {\r\n const result = await firstValueFrom(\r\n this._http.get<any[]>(this.remoteUrl, {\r\n params: this.params,\r\n })\r\n );\r\n\r\n if (result.length !== 0) {\r\n this.suggestions = result;\r\n if (\r\n `${value}`.toLocaleLowerCase() ===\r\n `${this.suggestions[0][this.option]}`.toLocaleLowerCase()\r\n ) {\r\n this.autocomplete.setValue(`${this.suggestions[0][this.option]}`, {\r\n emitEvent: false,\r\n });\r\n this.onSelect.emit(this.suggestions[0]);\r\n document.body.dispatchEvent(TAK_PRESS_ESC_KEY);\r\n }\r\n } else {\r\n this._toast.notification('No existen items que contengan esta palabra clave');\r\n }\r\n } catch (error: any) {\r\n this._toast.danger(error.error.message);\r\n }\r\n\r\n this._isLoading = false;\r\n this._cd.markForCheck();\r\n }\r\n });\r\n } else {\r\n try {\r\n const result = await firstValueFrom(\r\n this._http.get<any[]>(this.remoteUrl, {\r\n params: this.params,\r\n })\r\n );\r\n\r\n this.suggestions = result;\r\n this.wasLoaded = true;\r\n this._cd.markForCheck();\r\n\r\n this._filteredOptions = this.autocomplete.valueChanges.pipe(\r\n takeUntil(this._unsubscribe$),\r\n map(() => this._filter())\r\n );\r\n } catch (error: any) {\r\n this._toast.danger(error.error.message);\r\n }\r\n }\r\n }\r\n\r\n private _filter(): any[] {\r\n const value =\r\n typeof `${this.autocomplete.value}` === 'string'\r\n ? `${this.autocomplete.value}`.toLowerCase()\r\n : `${this.autocomplete.value[this.option]}`.toLowerCase();\r\n const option = this.suggestions.filter(res =>\r\n `${res[this.option]}`.toLowerCase().includes(value)\r\n );\r\n if (!option.length) this._notSuggestions = true;\r\n else this._notSuggestions = false;\r\n return option;\r\n }\r\n\r\n async refresh() {\r\n try {\r\n const result = await firstValueFrom(\r\n this._http.get<any[]>(this.remoteUrl, {\r\n params: this.params,\r\n })\r\n );\r\n\r\n this.suggestions = result;\r\n this.autocomplete.setValue('');\r\n this._toast.notification('Data actualizada correctamente');\r\n this._cd.markForCheck();\r\n } catch (error: any) {\r\n this._toast.danger(error.error.message);\r\n }\r\n }\r\n\r\n public reset() {\r\n if (!this.justOneLoad) {\r\n this.autocomplete.reset();\r\n } else {\r\n this.autocomplete.setValue('');\r\n }\r\n this.onSelect.emit(null as any);\r\n }\r\n\r\n emit(el: any, option: any) {\r\n if (el.isUserInput) {\r\n this.onSelect.emit(option);\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get isLoading() {\r\n return this._isLoading;\r\n }\r\n\r\n get isRequired() {\r\n return this._isRequired;\r\n }\r\n\r\n get isLoadingItem() {\r\n return this._isLoadingItem;\r\n }\r\n\r\n get filteredOptions() {\r\n return this._filteredOptions;\r\n }\r\n\r\n get value() {\r\n return `${this._value}`;\r\n }\r\n\r\n get notSuggestions() {\r\n return this._notSuggestions;\r\n }\r\n}\r\n","@if (!justOneLoad || (justOneLoad && wasLoaded)) {\r\n <mat-form-field appearance=\"standard\">\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (isRequired) {\r\n <span class=\"gcm-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input matInput [formControl]=\"autocomplete\" [matAutocomplete]=\"auto\" />\r\n\r\n @if (isLoading || (autocomplete.value === null && isLoadingItem)) {\r\n <mat-spinner\r\n mat-icon-button\r\n [diameter]=\"15\"\r\n mode=\"indeterminate\"\r\n class=\"spinner-loading\"\r\n ></mat-spinner>\r\n }\r\n <!---->\r\n\r\n @if (autocomplete.value) {\r\n <button mat-icon-button matSuffix (click)=\"reset()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n }\r\n @if (justOneLoad && !autocomplete.value) {\r\n <button mat-icon-button matSuffix (click)=\"refresh()\">\r\n <mat-icon>refresh</mat-icon>\r\n </button>\r\n }\r\n\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\r\n @if (!justOneLoad) {\r\n @for (suggestion of suggestions; track $index) {\r\n <mat-option\r\n [value]=\"suggestion[option]\"\r\n title=\"{{ suggestion[option] }} {{\r\n extraInfo ? '(' + suggestion[extraInfo] + ')' : ''\r\n }}\"\r\n (onSelectionChange)=\"emit($event, suggestion)\"\r\n >\r\n <span>{{ suggestion[option] }}</span>\r\n @if (extraInfo) {\r\n <span class=\"mat-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n @if (notSuggestions) {\r\n <mat-option>\r\n <span class=\"tak-autocomplete-not-records\"> No se encuentran resultados </span>\r\n </mat-option>\r\n }\r\n } @else {\r\n @for (suggestion of filteredOptions | async; track $index) {\r\n <mat-option\r\n [value]=\"suggestion[option]\"\r\n title=\"{{ suggestion[option] }} {{\r\n extraInfo ? '(' + suggestion[extraInfo] + ')' : ''\r\n }}\"\r\n (onSelectionChange)=\"emit($event, suggestion)\"\r\n >\r\n <span>{{ suggestion[option] }}</span>\r\n @if (extraInfo) {\r\n <span class=\"mat-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n @if (notSuggestions) {\r\n <mat-option>\r\n <span class=\"tak-autocomplete-not-records\"> No se encuentran resultados </span>\r\n </mat-option>\r\n }\r\n }\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule } from '@kato-lee/material/core';\r\nimport { TakSelectFieldComponent } from './select/component';\r\nimport { TakDateFieldComponent } from './date/component';\r\nimport { TakAutocompleteFieldComponent } from './autocomplete/component';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { TakDateRangeFieldComponent } from './date-range/component';\r\nimport { TakMoneyFieldComponent } from './money/component';\r\nimport { TakGeneralFieldComponent } from './general/component';\r\nimport { TakNumberFieldComponent } from './number/component';\r\nimport { TakTextareaComponent } from './text-area/component';\r\nimport { TakRemoteAutocompleteFieldComponent } from './remote-autocomplete/component';\r\n\r\nconst components = [\r\n TakSelectFieldComponent,\r\n TakDateFieldComponent,\r\n TakAutocompleteFieldComponent,\r\n TakDateRangeFieldComponent,\r\n TakGeneralFieldComponent,\r\n TakMoneyFieldComponent,\r\n TakTextareaComponent,\r\n TakNumberFieldComponent,\r\n];\r\n\r\n/** @deprecated Use standalone */\r\n@NgModule({\r\n imports: [\r\n ...components,\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n FormsModule,\r\n MatNativeDateModule,\r\n TakRemoteAutocompleteFieldComponent,\r\n ],\r\n exports: [\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n FormsModule,\r\n MatNativeDateModule,\r\n TakRemoteAutocompleteFieldComponent,\r\n ...components,\r\n ],\r\n providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],\r\n})\r\nexport class TakFieldsModule {}\r\n","import { Validators } from '@angular/forms';\r\nimport { TAK_PTRN_EMAIL, TAK_PTRN_NONSP, TAK_PTRN_NUMRC } from './common';\r\n\r\nexport const required = Validators.required;\r\n\r\nexport const max = (max: number) => Validators.max(max);\r\nexport const min = (min: number) => Validators.min(min);\r\n\r\nexport const maxLength = (maxLength: number) => Validators.maxLength(maxLength);\r\nexport const minLength = (minLength: number) => Validators.minLength(minLength);\r\n\r\nexport const withOutSpaces = Validators.pattern(TAK_PTRN_NONSP);\r\nexport const onlyNumber = Validators.pattern(TAK_PTRN_NUMRC);\r\nexport const email = Validators.pattern(TAK_PTRN_EMAIL);\r\n","/*\r\n * Public API Surface of @kato-lee/components/fields\r\n */\r\n\r\nexport * from './error/error-equals.pipe';\r\nexport * from './error/component';\r\nexport * from './error/error.msg.pipe';\r\nexport * from './common';\r\nexport * from './module';\r\nexport * from './validators';\r\nexport * from './select';\r\nexport * from './date';\r\nexport * from './autocomplete';\r\nexport * from './general';\r\nexport * from './money';\r\nexport * from './text-area/component';\r\nexport * from './date-range';\r\nexport * from './number';\r\nexport * from './remote-autocomplete';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["lang.es","i4","i7","i8","i2","takeUntil","i3","i6","i9","i5","i1","i11"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAGa,kBAAkB,CAAA;AAC7B,IAAA,SAAS,CAAC,MAAW,EAAE,KAAU,EAAE,IAAU,EAAA;AAC3C,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,KAAK,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAClC,QAAA,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;AACjE,QAAA,OAAO,KAAK,CAAC;KACd;8GANU,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,aAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;;;ACFxC,MAAM,EAAE,GAAQ;IACrB,YAAY,EAAE,CAAC,MAAc,KAAK,CAAA,8BAAA,EAAiC,MAAM,CAAa,WAAA,CAAA;IACtF,YAAY,EAAE,CAAC,MAAc,KAAK,CAAA,6BAAA,EAAgC,MAAM,CAAa,WAAA,CAAA;IACrF,MAAM,EAAE,CAAC,GAAW,KAAK,CAAA,+BAAA,EAAkC,GAAG,CAAE,CAAA;IAChE,MAAM,EAAE,CAAC,GAAW,KAAK,CAAA,8BAAA,EAAiC,GAAG,CAAE,CAAA;AAC/D,IAAA,UAAU,EAAE,oCAAoC;AAChD,IAAA,WAAW,EAAE,wBAAwB;AACrC,IAAA,QAAQ,EAAE,6BAA6B;AACvC,IAAA,UAAU,EAAE,qBAAqB;AACjC,IAAA,YAAY,EAAE,wBAAwB;CACvC;;ACVM,MAAM,EAAE,GAAQ;IACrB,YAAY,EAAE,CAAC,MAAc,KAAK,CAAA,2BAAA,EAA8B,MAAM,CAAa,WAAA,CAAA;IACnF,YAAY,EAAE,CAAC,MAAc,KAAK,CAAA,yBAAA,EAA4B,MAAM,CAAa,WAAA,CAAA;IACjF,MAAM,EAAE,CAAC,GAAW,KAAK,CAAA,2BAAA,EAA8B,GAAG,CAAE,CAAA;IAC5D,MAAM,EAAE,CAAC,GAAW,KAAK,CAAA,2BAAA,EAA8B,GAAG,CAAE,CAAA;AAC5D,IAAA,UAAU,EAAE,oCAAoC;AAChD,IAAA,WAAW,EAAE,yBAAyB;AACtC,IAAA,QAAQ,EAAE,8BAA8B;AACxC,IAAA,UAAU,EAAE,0BAA0B;AACtC,IAAA,YAAY,EAAE,uBAAuB;CACtC;;MCNY,eAAe,CAAA;IAC1B,SAAS,CAAC,SAAiB,EAAE,cAAoB,EAAA;AAC/C,QAAA,IAAI,SAAS,GAAGA,EAAO,CAAC;AACxB,QAAA,IAAI,cAAc;AAAE,YAAA,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;;AAC3D,YAAA,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;KAClC;8GALU,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;4GAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;;;MCU/B,iBAAiB,CAAA;AAN9B,IAAA,WAAA,GAAA;QAeW,IAAW,CAAA,WAAA,GAAY,KAAK,CAAC;QAE7B,IAAa,CAAA,aAAA,GAAY,KAAK,CAAC;QAE/B,IAAS,CAAA,SAAA,GAAG,CAAC,EAAE,CAAC;QAElB,IAAe,CAAA,eAAA,GAAY,KAAK,CAAC;AA6BzC,KAAA;AA3BC,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;KAC3C;AAED,IAAA,IAAI,OAAO,GAAA;QACT,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;KAC1C;AAED,IAAA,IAAI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;KACtC;AAED,IAAA,IAAI,GAAG,GAAA;QACL,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;KACtC;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC;KAC5C;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC;KAC5C;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;KACxC;8GA3CU,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,KAAA,EAAA,WAAA,EAAA,aAAA,EAAA,aAAA,EAAA,eAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,OAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECb9B,irDAuDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED9CY,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,kBAAkB,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,eAAe,EAAA,IAAA,EAAA,UAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,mBAAmB,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIlF,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,CAAC,YACpF,WAAW,EAAA,QAAA,EAAA,irDAAA,EAAA,CAAA;8BAID,KAAK,EAAA,CAAA;sBAAxB,SAAS;uBAAC,OAAO,CAAA;gBAET,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAEG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;;;AEvBD,MAAM,2BAA2B,GAA2B,WAAW;MAKjE,iBAAiB,GAAG,IAAI,aAAa,CAAC,SAAS,EAAE;AAC5D,IAAA,OAAO,EAAE,IAAI;AACb,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,OAAO,EAAE,MAAM;AAChB,CAAA,EAAE;AAEI,MAAM,cAAc,GAAG,6BAA6B;AACpD,MAAM,cAAc,GAAG,YAAY;AACnC,MAAM,cAAc,GAAG;;MCsCjB,uBAAuB,CAAA;AAyBlC,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QA3BvB,IAAY,CAAA,YAAA,GAA6B,KAAK,CAAC;QAC/C,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAW,CAAA,WAAA,GAAU,EAAE,CAAC;QACxB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAEjB,IAAI,CAAA,IAAA,GAAsB,QAAQ,CAAC;QACnC,IAAO,CAAA,OAAA,GAAG,EAAE,CAAC;QACb,IAAI,CAAA,IAAA,GAAG,aAAa,CAAC;QAErB,IAAM,CAAA,MAAA,GAAG,QAAQ,CAAC;QAClB,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;QAEf,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;AAEvB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE3B,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AACnB,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;AAO1C,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AACrD,QAAA,IAAI,mBAAmB,EAAE;AACvB,YAAA,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAC9E,gBAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;QACb,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE;AACnD,YAAA,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AACxD,SAAA;QAED,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;IAEM,UAAU,CAAC,KAAa,EAAA,GAAU;AAElC,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpC,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;KAC9C;AAEM,IAAA,IAAI,CAAC,EAA4B,EAAA;QACtC,IAAI,EAAE,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpC,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;AACxB,SAAA;KACF;AAEM,IAAA,QAAQ,CAAC,EAAO,EAAA;AACrB,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC1B,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAEM,UAAU,GAAA;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;;AAC3C,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KAC7B;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;KAC/B;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE,OAAsB,CAAC;KAChD;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;8GAnGU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECtDpC,0hDA2CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDLI,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAChB,aAAa,EACb,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,6CAAA,EAAA,QAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,iBAAiB,uIACjB,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACX,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACZ,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACnB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,cAAc,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKL,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAnBnC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,gBAAgB;wBAChB,aAAa;wBACb,eAAe;wBACf,eAAe;wBACf,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,cAAc;AACf,qBAAA,EAAA,QAAA,EACS,kBAAkB,EAAA,QAAA,EAAA,0hDAAA,EAAA,CAAA;;0BA6BzB,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEA1BF,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBAEG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBAEI,QAAQ,EAAA,CAAA;sBAAjB,MAAM;;;MEzBI,qBAAqB,CAAA;AAwBhC,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AAxBxB,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEnC,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAY,CAAA,YAAA,GAA6B,KAAK,CAAC;QAC/C,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QACjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAKjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEnB,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE1B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;AAOlB,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AACrD,QAAA,IAAI,mBAAmB,EAAE;AACvB,YAAA,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAC9E,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,IAAI,GAAQ,IAAI,CAAC,OAAO,CAAC;QAC/B,IAAI,IAAI,EAAE,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAM,KAAI;gBACjC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;AAC/B,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACvB,iBAAA;AACH,aAAC,CAAC,CAAC;AACJ,SAAA;QACD,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;IAEM,eAAe,GAAA;AACpB,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,KAAK,CAAC,WAAW,CAAC;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;;AAC/C,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;KAC1D;AAEM,IAAA,UAAU,CAAC,KAAa,EAAA;QAC7B,IAAI,KAAK,KAAK,IAAI;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC5C,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACrB;AAEM,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpC,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;KAC9C;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEM,iBAAiB,GAAA;AACtB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;AACjB,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACnD,QAAA,IACE,IAAI,CAAC,OAAO,CAAC,OAAO;AACpB,aAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;gBACpD,IAAI,CAAC,OAAO,CAAC,KAAK;AAClB,gBAAA,KAAK,CAAC,WAAW,CAAC,CAAC,EACrB;AACA,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACxB,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACzB,SAAA;KACF;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;KAC/B;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE,OAAsB,CAAC;KAChD;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;8GAlIU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,qBAAqB,EAJrB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,ECzC9D,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,iwEAgEA,EDhCI,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,iBAAiB,EACjB,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,EACnB,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,EACnB,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,kBAAkB,EAClB,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,ugBACnB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAH,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAML,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAhBjC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,mBAAmB;wBACnB,kBAAkB;wBAClB,mBAAmB;wBACnB,cAAc;AACf,qBAAA,EAAA,SAAA,EACU,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAA,QAAA,EAClD,gBAAgB,EAAA,QAAA,EAAA,iwEAAA,EAAA,CAAA;;0BA4BvB,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEArBF,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBACG,OAAO,EAAA,CAAA;sBAAf,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;;;MENK,6BAA6B,CAAA;AA+BxC,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AAjCxB,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;QAEnC,IAAM,CAAA,MAAA,GAAG,QAAQ,CAAC;QAClB,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;QACf,IAAY,CAAA,YAAA,GAA6B,KAAK,CAAC;QAC/C,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAc,CAAA,cAAA,GAAG,IAAI,CAAC;QACtB,IAAW,CAAA,WAAA,GAAU,EAAE,CAAC;QACxB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QACjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAEjB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAA2B,CAAA,2BAAA,GAAG,GAAG,CAAC;AAEjC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;AACnC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;AAEtC,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE1B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;QAEZ,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACxB,IAAU,CAAA,UAAA,GAAG,EAAE,CAAC;AAOtB,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AACrD,QAAA,IAAI,mBAAmB,EAAE;AACvB,YAAA,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAACI,WAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;AAC9E,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,IAAI,GAAQ,IAAI,CAAC,OAAO,CAAC;QAE/B,IAAI,IAAI,EAAE,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAM,KAAI;AACjC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;AAED,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CACpDA,WAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAC1B,CAAC;QAEF,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,OAAO,CAAC,YAAY;AACtB,iBAAA,IAAI,CAACA,WAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;iBACnF,SAAS,CAAC,MAAK;gBACd,IAAI,IAAI,CAAC,UAAU,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA,CAAE,IAAI,CAAA,EAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;oBACnF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAG,EAAA,IAAI,CAAC,MAAM,CAAE,CAAA,CAAC,CAAC;oBACrC,IAAI,CAAC,SAAS,CAAC,CAAA,EAAG,IAAI,CAAC,MAAM,CAAE,CAAA,CAAC,CAAC;AAClC,iBAAA;gBAED,IAAI,CAAC,UAAU,GAAG,CAAA,EAAG,IAAI,CAAC,MAAM,EAAE,CAAC;AACrC,aAAC,CAAC,CAAC;AACN,SAAA;QACD,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;IAEO,OAAO,GAAA;QACb,MAAM,KAAK,GACT,OAAO,CAAA,EAAG,IAAI,CAAC,MAAM,CAAE,CAAA,KAAK,QAAQ;cAChC,GAAG,IAAI,CAAC,MAAM,CAAE,CAAA,CAAC,WAAW,EAAE;AAChC,cAAE,CAAG,EAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC;AACzD,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,IACxC,CAAG,EAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CACpD,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,MAAM;AAAE,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;;AAC3C,YAAA,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;AAClC,QAAA,OAAO,MAAM,CAAC;KACf;AAEM,IAAA,UAAU,CAAC,KAAa,EAAA;QAC7B,IAAI,KAAK,KAAK,IAAI;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC5C,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAEM,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAA,EAAG,IAAI,CAAC,MAAM,CAAA,CAAE,EAAE;YAC3C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YAEjC,IAAI,CAAC,IAAI,CAAC,cAAc;gBAAE,IAAI,CAAC,SAAS,CAAC,CAAA,EAAG,IAAI,CAAC,MAAM,CAAE,CAAA,CAAC,CAAC;AAE3D,YAAA,IAAI,CAAC,UAAU,CACb,IAAI,CAAC,WAAW,CAAC,MAAM,CACrB,GAAG,IAAI,CAAG,EAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC,WAAW,EAAE,KAAK,CAAA,EAAG,GAAG,IAAI,CAAC,MAAM,CAAE,CAAA,CAAA,CAAE,CAAC,WAAW,EAAE,CACnF,CAAC,CAAC,CAAC,IAAI,IAAI,CACb,CAAC;AAEF,YAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;gBACxB,IAAI,CAAC,WAAW,EAAE,CAAC;AACpB,aAAA;AACF,SAAA;KACF;AAEO,IAAA,SAAS,CAAC,KAAa,EAAA;AAC7B,QAAA,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,MAAM,mBAAmB,GAAG,KAAK;AAC/B,kBAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CACrB,EAAE,IACA,CAAG,EAAA,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAE,CAAA,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,KAAM,KAAgB,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CACvF;kBACD,EAAE,CAAC;YAEP,IAAI,mBAAmB,CAAC,MAAM,EAAE;AAC9B,gBAAA,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;AAChD,aAAA;YAED,IAAI;AACF,gBAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;AACzD,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,aAAA;YAAC,OAAO,KAAK,EAAE,GAAE;AACnB,SAAA;KACF;AAEM,IAAA,IAAI,CAAC,EAA4B,EAAA;AACtC,QAAA,IAAI,EAAE,IAAI,EAAE,CAAC,WAAW;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KACnD;AAEM,IAAA,aAAa,CAAC,gBAAqB,EAAA;AACxC,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,CAAG,EAAA,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC;AACjD,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KACzB;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;AACxB,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,CAAG,EAAA,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC;KACvC;AAEM,IAAA,mBAAmB,CAAC,WAAkB,EAAA;AAC3C,QAAA,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;AAC/B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAExB,QAAA,IAAI,CAAC,UAAU,CACb,IAAI,CAAC,WAAW,CAAC,MAAM,CACrB,GAAG,IAAI,CAAA,EAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAE,CAAA,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,CAAE,CAAA,CAAC,WAAW,EAAE,CAC9E,CAAC,CAAC,CAAC,IAAI,IAAI,CACb,CAAC;KACH;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;AAC5C,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KAC9B;IAEM,OAAO,GAAA;AACZ,QAAA,IAAI,CAAC,CAAG,EAAA,IAAI,CAAC,MAAM,EAAE,EAAE;AACrB,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC1B,YAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;AAClB,SAAA;KACF;IAEM,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AAChD,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;KAC/B;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,EAAE,OAAsB,CAAC;KAChD;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,CAAG,EAAA,IAAI,CAAC,MAAM,EAAE,CAAC;KACzB;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAC9B;AAED,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC7B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;8GAzOU,6BAA6B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAA7B,6BAA6B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrD1C,sqEA2DA,EDpBI,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,8BACX,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,iBAAiB,EACjB,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BACnB,wBAAwB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,EAAA,aAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACxB,kBAAkB,EAClB,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,4VACf,qBAAqB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,mDAAA,EAAA,QAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACrB,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAK,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKL,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAjBzC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,WAAW;wBACX,YAAY;wBACZ,iBAAiB;wBACjB,mBAAmB;wBACnB,wBAAwB;wBACxB,kBAAkB;wBAClB,eAAe;wBACf,qBAAqB;wBACrB,aAAa;wBACb,cAAc;AACf,qBAAA,EAAA,QAAA,EACS,wBAAwB,EAAA,QAAA,EAAA,sqEAAA,EAAA,CAAA;;0BAmC/B,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEA9BF,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,2BAA2B,EAAA,CAAA;sBAAnC,KAAK;gBAEI,QAAQ,EAAA,CAAA;sBAAjB,MAAM;gBACG,QAAQ,EAAA,CAAA;sBAAjB,MAAM;;;ME5CI,0BAA0B,CAAA;AAhBvC,IAAA,WAAA,GAAA;QAiBW,IAAY,CAAA,YAAA,GAA6B,KAAK,CAAC;QAC/C,IAAgB,CAAA,gBAAA,GAAW,QAAQ,CAAC;QACpC,IAAc,CAAA,cAAA,GAAW,KAAK,CAAC;QAE/B,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAIhC,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAEjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;QAElB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;AA4B3B,KAAA;IA1BQ,QAAQ,GAAA;AACb,QAAA,MAAM,KAAK,GAAQ,IAAI,CAAC,KAAK,CAAC;AAC9B,QAAA,MAAM,GAAG,GAAQ,IAAI,CAAC,GAAG,CAAC;QAC1B,IAAI,KAAK,EAAE,cAAc,EAAE;YACzB,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAM,KAAI;AAClC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;QACD,IAAI,GAAG,EAAE,cAAc,EAAE;YACvB,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAM,KAAI;AAChC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,YAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;AACrB,YAAA,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;AACpB,SAAA;KACF;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;KACjD;8GAzCU,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAJ1B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,GAAA,EAAA,KAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAAA,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,ECvB9D,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,g2DA+CA,EDjCI,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,iBAAiB,EACjB,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,EACnB,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,EACnB,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,kBAAkB,EAClB,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAJ,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,43BACnB,cAAc,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAML,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAhBtC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,mBAAmB;wBACnB,kBAAkB;wBAClB,mBAAmB;wBACnB,cAAc;AACf,qBAAA,EAAA,SAAA,EACU,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAA,QAAA,EAClD,sBAAsB,EAAA,QAAA,EAAA,g2DAAA,EAAA,CAAA;8BAIvB,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAEG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBACG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;;;MEOK,sBAAsB,CAAA;AAgCjC,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QAlCvB,IAAY,CAAA,YAAA,GAAiB,KAAK,CAAC;QAEnC,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAU,CAAA,UAAA,GAAmB,MAAM,CAAC;QACpC,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAU,CAAA,UAAA,GAAG,QAAQ,CAAC;QAEtB,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;QAC1B,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACxB,IAAc,CAAA,cAAA,GAAG,IAAI,CAAC;QACtB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAKjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEhB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAE,CAAC;AACrC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AAEhC,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE1B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;AASlB,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAErD,QAAA,IAAI,mBAAmB,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAK;AAC/D,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,IAAI,GAAQ,IAAI,CAAC,OAAO,CAAC;QAE/B,IAAI,IAAI,EAAE,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAM,KAAI;AACrC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;AAE9D,QAAA,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExF,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;AAEM,IAAA,UAAU,CAAC,KAAa,EAAA;QAC7B,IAAI,KAAK,KAAK,IAAI,EAAE;AAClB,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACzB,SAAA;AACD,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAEM,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACxB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;KAC9C;IAEO,gBAAgB,GAAA;AACtB,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK;AACtC,aAAA,QAAQ,EAAE;AACV,aAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AACjB,aAAA,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AACjB,aAAA,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEpB,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE;AAC5F,YAAA,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,cAAc,CAAC,CAAC;AACvC,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACrB,SAAA;aAAM,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;;AACrE,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAClC;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;;QAErB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;AAC5C,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KAC9B;AAEM,IAAA,SAAS,CAAC,KAAU,EAAA;QACzB,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACnE,QAAA,OAAO,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC7D;IAEM,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC1D,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AACjD,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC3B,SAAA;AAED,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;IAEM,WAAW,GAAA;QAChB,IAAI,IAAI,CAAC,aAAa;AAAE,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAC1D;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAsB,CAAC;KAC/C;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;8GA/JU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,4gBC9CnC,4wDAiDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDfI,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BACnB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,aAAa,mLACb,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKL,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAflC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,cAAc;AACf,qBAAA,EAAA,QAAA,EACS,iBAAiB,EAAA,QAAA,EAAA,4wDAAA,EAAA,CAAA;;0BAoCxB,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEAjCF,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEI,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBACG,OAAO,EAAA,CAAA;sBAAhB,MAAM;;;MEpBI,wBAAwB,CAAA;AAkCnC,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QApCvB,IAAY,CAAA,YAAA,GAAiB,KAAK,CAAC;QAEnC,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAI,CAAA,IAAA,GAAwB,MAAM,CAAC;QACnC,IAAU,CAAA,UAAA,GAAmB,OAAO,CAAC;QACrC,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAU,CAAA,UAAA,GAAG,QAAQ,CAAC;QAEtB,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;QAC1B,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACxB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAKjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEhB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAE,CAAC;AACrC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AAEhC,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE1B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;QAGZ,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;AAOzB,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAErD,QAAA,IAAI,mBAAmB,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAK;AAC/D,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,IAAI,GAAQ,IAAI,CAAC,OAAO,CAAC;QAE/B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,kBAAkB,EAAE;YACrD,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACnD,YAAA,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;AAC3B,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,WAAW;AAAE,gBAAA,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;AACnD,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AAC3B,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACzB,SAAA;QAED,IAAI,IAAI,EAAE,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAM,KAAI;AACrC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;QAED,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;AAEM,IAAA,UAAU,CAAC,KAAa,EAAA;QAC7B,IAAI,KAAK,KAAK,IAAI;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC5C,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAEM,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC7E,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;AAC7C,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KACnE;IAEM,YAAY,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE;YAC5B,IAAI,IAAI,CAAC,UAAU;AAAE,gBAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;;AACxC,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AAC7B,SAAA;KACF;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;AAC5C,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KAC9B;IAEM,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC1D,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AACjD,SAAA;;AAAM,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACjC,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;IAEM,WAAW,GAAA;QAChB,IAAI,IAAI,CAAC,aAAa;AAAE,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAC1D;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAsB,CAAC;KAC/C;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;8GAvJU,wBAAwB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,4hBC9CrC,ilEAuDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDrBI,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BACnB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,aAAa,mLACb,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKL,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAfpC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,cAAc;AACf,qBAAA,EAAA,QAAA,EACS,mBAAmB,EAAA,QAAA,EAAA,ilEAAA,EAAA,CAAA;;0BAsC1B,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEAnCF,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,IAAI,EAAA,CAAA;sBAAZ,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEI,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBACG,OAAO,EAAA,CAAA;sBAAhB,MAAM;;;MErBI,uBAAuB,CAAA;AAkClC,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QApCvB,IAAY,CAAA,YAAA,GAAiB,KAAK,CAAC;QAEnC,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAU,CAAA,UAAA,GAAmB,MAAM,CAAC;QACpC,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAU,CAAA,UAAA,GAAG,QAAQ,CAAC;QAEtB,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACxB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QAQjB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEhB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAE,CAAC;AACrC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AAEhC,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE1B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;AASlB,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAErD,QAAA,IAAI,mBAAmB,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAK;AAC/D,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,IAAI,GAAQ,IAAI,CAAC,OAAO,CAAC;QAE/B,IAAI,IAAI,EAAE,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAM,KAAI;AACrC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;QAED,IAAI,IAAI,CAAC,GAAG;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,IAAI,IAAI,CAAC,GAAG;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAEnE,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;AAEM,IAAA,UAAU,CAAC,KAAa,EAAA;QAC7B,IAAI,KAAK,KAAK,IAAI;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC5C,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAEM,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;AACjC,QAAA,IAAI,CAAC,UAAU,CACb,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CACnF,CAAC;AACF,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;KAC9C;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;AAC5C,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KAC9B;IAEM,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC1D,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AACjD,SAAA;;AAAM,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACjC,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;IAEM,WAAW,GAAA;QAChB,IAAI,IAAI,CAAC,aAAa;AAAE,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAC1D;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAsB,CAAC;KAC/C;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;8GAtIU,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,2fC9CpC,2wDAkDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDhBI,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BACnB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,aAAa,mLACb,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKL,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAfnC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,cAAc;AACf,qBAAA,EAAA,QAAA,EACS,kBAAkB,EAAA,QAAA,EAAA,2wDAAA,EAAA,CAAA;;0BAsCzB,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEAnCF,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBACG,GAAG,EAAA,CAAA;sBAAX,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEI,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBACG,OAAO,EAAA,CAAA;sBAAhB,MAAM;;;MEvBI,oBAAoB,CAAA;AAmC/B,IAAA,WAAA,CAC8B,UAAqB,EAC7B,mBAAuC,EACnD,GAAsB,EAAA;QAFF,IAAU,CAAA,UAAA,GAAV,UAAU,CAAW;QAC7B,IAAmB,CAAA,mBAAA,GAAnB,mBAAmB,CAAoB;QACnD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QArCvB,IAAY,CAAA,YAAA,GAAiB,KAAK,CAAC;QAEnC,IAAU,CAAA,UAAA,GAA2B,2BAA2B,CAAC;QACjE,IAAU,CAAA,UAAA,GAAmB,MAAM,CAAC;QACpC,IAAK,CAAA,KAAA,GAAiB,SAAS,CAAC;QAChC,IAAU,CAAA,UAAA,GAAG,QAAQ,CAAC;QAEtB,IAAkB,CAAA,kBAAA,GAAG,IAAI,CAAC;QAC1B,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QACxB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAW,CAAA,WAAA,GAAG,EAAE,CAAC;QACjB,IAAU,CAAA,UAAA,GAAG,EAAE,CAAC;QAKhB,IAAQ,CAAA,QAAA,GAAG,KAAK,CAAC;AAEhB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAE,CAAC;AACrC,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AAEhC,QAAA,IAAA,CAAA,UAAU,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,CAAC,CAAM,KAAI,GAAG,CAAC;QAE3B,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;QACrB,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACnB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;QAClB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;QAGX,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;AAOzB,QAAA,IAAI,UAAU;AAAE,YAAA,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC;AAErD,QAAA,IAAI,mBAAmB,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAK;AAC/D,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,GAAG,CAAC,YAAY,EAAE,CAAC;AACrB,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;IAEM,QAAQ,GAAA;AACb,QAAA,MAAM,IAAI,GAAQ,IAAI,CAAC,OAAO,CAAC;QAE/B,IAAI,IAAI,EAAE,cAAc,EAAE;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAM,KAAI;AACrC,gBAAA,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;AAAE,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzD,aAAC,CAAC,CAAC;AACJ,SAAA;QAED,IAAI,IAAI,CAAC,QAAQ;AAAE,YAAA,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KAC3C;AAEM,IAAA,UAAU,CAAC,KAAa,EAAA;QAC7B,IAAI,KAAK,KAAK,IAAI,EAAE;AAClB,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACzB,SAAA;AACD,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;KACzB;AAEM,IAAA,gBAAgB,CAAC,EAAO,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;KACtB;AAEM,IAAA,iBAAiB,CAAC,EAAO,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACrB;AAEM,IAAA,QAAQ,CAAC,KAAU,EAAA;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpC,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;KAC9C;IAEM,UAAU,GAAA;AACf,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO;AAAE,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;;AAC5C,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;KAC9B;IAEM,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC1D,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AACjD,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC3B,SAAA;AAED,QAAA,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;IAEM,WAAW,GAAA;QAChB,IAAI,IAAI,CAAC,aAAa;AAAE,YAAA,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;KAC1D;AAED,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAsB,CAAC;KAC/C;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,mBAAyC,CAAC;KACvD;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;KACjC;AAED,IAAA,IAAI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;KAC1B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;AAED,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;KACpB;8GA3IU,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,6jBC7CjC,4uDAgDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDfI,iBAAiB,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACjB,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,EACZ,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BACnB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAClB,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,aAAa,mLACb,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKL,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAfhC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,iBAAiB;wBACjB,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,kBAAkB;wBAClB,eAAe;wBACf,aAAa;wBACb,cAAc;AACf,qBAAA,EAAA,QAAA,EACS,cAAc,EAAA,QAAA,EAAA,4uDAAA,EAAA,CAAA;;0BAuCrB,IAAI;;0BAAI,QAAQ;;0BAChB,QAAQ;yEApCF,YAAY,EAAA,CAAA;sBAApB,KAAK;gBAEG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,kBAAkB,EAAA,CAAA;sBAA1B,KAAK;gBACG,eAAe,EAAA,CAAA;sBAAvB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBACG,UAAU,EAAA,CAAA;sBAAlB,KAAK;gBAEG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBAEG,QAAQ,EAAA,CAAA;sBAAhB,KAAK;gBAEI,eAAe,EAAA,CAAA;sBAAxB,MAAM;gBACG,OAAO,EAAA,CAAA;sBAAhB,MAAM;;;MELI,mCAAmC,CAAA;AAyB9C,IAAA,WAAA,CACU,KAAiB,EACjB,GAAsB,EACtB,MAAgB,EAAA;QAFhB,IAAK,CAAA,KAAA,GAAL,KAAK,CAAY;QACjB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QACtB,IAAM,CAAA,MAAA,GAAN,MAAM,CAAU;QA3BjB,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;QACf,IAAM,CAAA,MAAA,GAAQ,EAAE,CAAC;QACjB,IAAM,CAAA,MAAA,GAAG,QAAQ,CAAC;QAClB,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;QACf,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAEnB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAEtC,IAAW,CAAA,WAAA,GAAU,EAAE,CAAC;AACxB,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,WAAW,EAAE,CAAC;QAEhC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QACpB,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;AAEvB,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,OAAO,EAAQ,CAAC;QACpC,IAAc,CAAA,cAAA,GAAG,KAAK,CAAC;QACvB,IAAW,CAAA,WAAA,GAAG,IAAI,CAAC;QAGnB,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;QACZ,IAAe,CAAA,eAAA,GAAG,KAAK,CAAC;QAEzB,IAAS,CAAA,SAAA,GAAG,KAAK,CAAC;KAMrB;AAEG,IAAA,MAAM,QAAQ,GAAA;AACnB,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,YAAY,CAAC,YAAY;AAC3B,iBAAA,IAAI,CAACJ,WAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,oBAAoB,EAAE,CAAC;AAC9E,iBAAA,SAAS,CAAC,OAAM,KAAK,KAAG;AACvB,gBAAA,IACE,KAAK;AACL,oBAAA,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,EAAE,KAAK,KAAK,CAAC,CAAC,MAAM,EAC/E;AACA,oBAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACvB,oBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;oBAExB,IAAI;AACF,wBAAA,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAQ,IAAI,CAAC,SAAS,EAAE;4BACpC,MAAM,EAAE,IAAI,CAAC,MAAM;AACpB,yBAAA,CAAC,CACH,CAAC;AAEF,wBAAA,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;AACvB,4BAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAC1B,4BAAA,IACE,CAAG,EAAA,KAAK,CAAE,CAAA,CAAC,iBAAiB,EAAE;AAC9B,gCAAA,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC,iBAAiB,EAAE,EACzD;AACA,gCAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;AAChE,oCAAA,SAAS,EAAE,KAAK;AACjB,iCAAA,CAAC,CAAC;AACH,gCAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,gCAAA,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;AAChD,6BAAA;AACF,yBAAA;AAAM,6BAAA;AACL,4BAAA,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,mDAAmD,CAAC,CAAC;AAC/E,yBAAA;AACF,qBAAA;AAAC,oBAAA,OAAO,KAAU,EAAE;wBACnB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACzC,qBAAA;AAED,oBAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACxB,oBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACzB,iBAAA;AACH,aAAC,CAAC,CAAC;AACN,SAAA;AAAM,aAAA;YACL,IAAI;AACF,gBAAA,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAQ,IAAI,CAAC,SAAS,EAAE;oBACpC,MAAM,EAAE,IAAI,CAAC,MAAM;AACpB,iBAAA,CAAC,CACH,CAAC;AAEF,gBAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAC1B,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACtB,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAExB,gBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CACzDA,WAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAC1B,CAAC;AACH,aAAA;AAAC,YAAA,OAAO,KAAU,EAAE;gBACnB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACzC,aAAA;AACF,SAAA;KACF;IAEO,OAAO,GAAA;QACb,MAAM,KAAK,GACT,OAAO,CAAG,EAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAE,CAAA,KAAK,QAAQ;cAC5C,CAAG,EAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAA,CAAE,CAAC,WAAW,EAAE;AAC5C,cAAE,CAAG,EAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC;AAC9D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,IACxC,CAAG,EAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CACpD,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,MAAM;AAAE,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;;AAC3C,YAAA,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;AAClC,QAAA,OAAO,MAAM,CAAC;KACf;AAED,IAAA,MAAM,OAAO,GAAA;QACX,IAAI;AACF,YAAA,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAQ,IAAI,CAAC,SAAS,EAAE;gBACpC,MAAM,EAAE,IAAI,CAAC,MAAM;AACpB,aAAA,CAAC,CACH,CAAC;AAEF,YAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAC1B,YAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAC/B,YAAA,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;AAC3D,YAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AACzB,SAAA;AAAC,QAAA,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACzC,SAAA;KACF;IAEM,KAAK,GAAA;AACV,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;AAC3B,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AAChC,SAAA;AACD,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAW,CAAC,CAAC;KACjC;IAED,IAAI,CAAC,EAAO,EAAE,MAAW,EAAA;QACvB,IAAI,EAAE,CAAC,WAAW,EAAE;AAClB,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,SAAA;KACF;IAEM,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AAC1B,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;KAC/B;AAED,IAAA,IAAI,SAAS,GAAA;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;KACxB;AAED,IAAA,IAAI,UAAU,GAAA;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC;KACzB;AAED,IAAA,IAAI,aAAa,GAAA;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;KAC5B;AAED,IAAA,IAAI,eAAe,GAAA;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAC9B;AAED,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,CAAG,EAAA,IAAI,CAAC,MAAM,EAAE,CAAC;KACzB;AAED,IAAA,IAAI,cAAc,GAAA;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC7B;8GAvKU,mCAAmC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAK,IAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAN,IAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mCAAmC,wPC9DhD,yrFA4EA,EAAA,MAAA,EAAA,CAAA,iHAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDzCI,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,wBAAwB,oOACxB,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAElB,cAAc,EACd,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,OAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,iNACnB,qBAAqB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,mDAAA,EAAA,QAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACrB,aAAa,EACb,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAK,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,4VACf,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FAkBH,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBA9B/C,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA;wBACP,WAAW;wBACX,wBAAwB;wBACxB,kBAAkB;wBAClB,kBAAkB;wBAClB,cAAc;wBACd,mBAAmB;wBACnB,qBAAqB;wBACrB,aAAa;wBACb,eAAe;wBACf,YAAY;qBACb,EACS,QAAA,EAAA,+BAA+B,iBAa1B,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,yrFAAA,EAAA,MAAA,EAAA,CAAA,iHAAA,CAAA,EAAA,CAAA;0IAGtC,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACG,WAAW,EAAA,CAAA;sBAAnB,KAAK;gBAEI,QAAQ,EAAA,CAAA;sBAAjB,MAAM;;;AEvDT,MAAM,UAAU,GAAG;IACjB,uBAAuB;IACvB,qBAAqB;IACrB,6BAA6B;IAC7B,0BAA0B;IAC1B,wBAAwB;IACxB,sBAAsB;IACtB,oBAAoB;IACpB,uBAAuB;CACxB,CAAC;AAEF;MAoBa,eAAe,CAAA;8GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,YA9B1B,uBAAuB;YACvB,qBAAqB;YACrB,6BAA6B;YAC7B,0BAA0B;YAC1B,wBAAwB;YACxB,sBAAsB;YACtB,oBAAoB;AACpB,YAAA,uBAAuB,EAOrB,mBAAmB;YACnB,qBAAqB;YACrB,WAAW;YACX,mBAAmB;AACnB,YAAA,mCAAmC,aAGnC,mBAAmB;YACnB,qBAAqB;YACrB,WAAW;YACX,mBAAmB;AACnB,YAAA,mCAAmC,EAzBrC,uBAAuB;YACvB,qBAAqB;YACrB,6BAA6B;YAC7B,0BAA0B;YAC1B,wBAAwB;YACxB,sBAAsB;YACtB,oBAAoB;YACpB,uBAAuB,CAAA,EAAA,CAAA,CAAA,EAAA;AAuBZ,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,EAFf,SAAA,EAAA,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAfvD,OAAA,EAAA,CAAA,UAAU,EACb,mBAAmB;YACnB,qBAAqB;YACrB,WAAW;YACX,mBAAmB;AACnB,YAAA,mCAAmC,EAGnC,mBAAmB;YACnB,qBAAqB;YACrB,WAAW;YACX,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAMV,eAAe,EAAA,UAAA,EAAA,CAAA;kBAnB3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;AACP,wBAAA,GAAG,UAAU;wBACb,mBAAmB;wBACnB,qBAAqB;wBACrB,WAAW;wBACX,mBAAmB;wBACnB,mCAAmC;AACpC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,mBAAmB;wBACnB,qBAAqB;wBACrB,WAAW;wBACX,mBAAmB;wBACnB,mCAAmC;AACnC,wBAAA,GAAG,UAAU;AACd,qBAAA;oBACD,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC7D,iBAAA,CAAA;;;ACzCY,MAAA,QAAQ,GAAG,UAAU,CAAC,SAAS;AAErC,MAAM,GAAG,GAAG,CAAC,GAAW,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE;AACjD,MAAM,GAAG,GAAG,CAAC,GAAW,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE;AAEjD,MAAM,SAAS,GAAG,CAAC,SAAiB,KAAK,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE;AACzE,MAAM,SAAS,GAAG,CAAC,SAAiB,KAAK,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE;AAEnE,MAAA,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE;AACnD,MAAA,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE;AAChD,MAAA,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc;;ACbtD;;AAEG;;ACFH;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"kato-lee-components-fields.mjs","sources":["../../../libraries/components/fields/error/error-equals.pipe.ts","../../../libraries/components/fields/error/lang/_en.ts","../../../libraries/components/fields/error/lang/_es.ts","../../../libraries/components/fields/error/error.msg.pipe.ts","../../../libraries/components/fields/error/component.ts","../../../libraries/components/fields/error/component.html","../../../libraries/components/fields/common.ts","../../../libraries/components/fields/select/component.ts","../../../libraries/components/fields/select/component.html","../../../libraries/components/fields/date/component.ts","../../../libraries/components/fields/date/component.html","../../../libraries/components/fields/autocomplete/component.ts","../../../libraries/components/fields/autocomplete/component.html","../../../libraries/components/fields/date-range/component.ts","../../../libraries/components/fields/date-range/component.html","../../../libraries/components/fields/money/component.ts","../../../libraries/components/fields/money/component.html","../../../libraries/components/fields/general/component.ts","../../../libraries/components/fields/general/component.html","../../../libraries/components/fields/number/component.ts","../../../libraries/components/fields/number/component.html","../../../libraries/components/fields/text-area/component.ts","../../../libraries/components/fields/text-area/component.html","../../../libraries/components/fields/remote-autocomplete/component.ts","../../../libraries/components/fields/remote-autocomplete/component.html","../../../libraries/components/fields/module.ts","../../../libraries/components/fields/validators.ts","../../../libraries/components/fields/index.ts","../../../libraries/components/fields/kato-lee-components-fields.ts"],"sourcesContent":["import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ standalone: true, name: 'errorEquals' })\r\nexport class TakErrorEqualsPipe implements PipeTransform {\r\n transform(errors: any, error: any, args?: any): any {\r\n if (!errors) return false;\r\n const array = Object.keys(errors);\r\n if (array && array.length > 0) return errors[array[0]] === error;\r\n return false;\r\n }\r\n}\r\n","export const en: any = {\r\n minLengthMsg: (length: number) => `The field contains fewer than ${length} characters`,\r\n maxLengthMsg: (length: number) => `The field contains more than ${length} characters`,\r\n minMsg: (min: number) => `The number must be bigger than ${min}`,\r\n maxMsg: (max: number) => `The number must be lower than ${max}`,\r\n patternMsg: 'One or more characters not allowed',\r\n requiredMsg: 'This field is required',\r\n EmailMsg: 'This field must be an email',\r\n badDateMsg: 'Insert a valid date',\r\n DateRangeMsg: 'The range is not valid',\r\n};\r\n","export const es: any = {\r\n minLengthMsg: (length: number) => `El campo contiene menos de ${length} caracteres`,\r\n maxLengthMsg: (length: number) => `El campo contiene mas de ${length} caracteres`,\r\n minMsg: (min: number) => `El numero debe ser mayor a ${min}`,\r\n maxMsg: (max: number) => `El numero debe ser menor a ${max}`,\r\n patternMsg: 'Uno o mas caracteres no permitidos',\r\n requiredMsg: 'Este campo es requerido',\r\n EmailMsg: 'Este campo debe ser un email',\r\n badDateMsg: 'Inserte una fecha valida',\r\n DateRangeMsg: 'El rango no es valido',\r\n};\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport * as lang from './lang';\r\n\r\n@Pipe({ standalone: true, name: 'errorMsg' })\r\nexport class TakErrorMsgPipe implements PipeTransform {\r\n transform(parameter: string, aditionalValue?: any): string {\r\n let resources = lang.es;\r\n if (aditionalValue) return resources[parameter](aditionalValue);\r\n else return resources[parameter];\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { ElementRef, Component, ViewChild, Input } from '@angular/core';\r\nimport { FormControl, ValidationErrors } from '@angular/forms';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { TakErrorEqualsPipe } from './error-equals.pipe';\r\nimport { TakErrorMsgPipe } from './error.msg.pipe';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [FormsModule, CommonModule, TakErrorEqualsPipe, TakErrorMsgPipe, ReactiveFormsModule],\r\n selector: 'tak-error',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakErrorComponent {\r\n @ViewChild('error') error: ElementRef | undefined;\r\n\r\n @Input() control!: FormControl;\r\n\r\n @Input() start!: FormControl;\r\n\r\n @Input() end!: FormControl;\r\n\r\n @Input() isDateField: boolean = false;\r\n\r\n @Input() isNumberField: boolean = false;\r\n\r\n @Input() marginTop = -20;\r\n\r\n public hasPatternError: boolean = false;\r\n\r\n get required(): ValidationErrors {\r\n return this.control?.errors?.['required'];\r\n }\r\n\r\n get pattern(): ValidationErrors {\r\n return this.control?.errors?.['pattern'];\r\n }\r\n\r\n get max() {\r\n return this.control?.errors?.['max'];\r\n }\r\n\r\n get min() {\r\n return this.control?.errors?.['min'];\r\n }\r\n\r\n get maxlength() {\r\n return this.control?.errors?.['maxlength'];\r\n }\r\n\r\n get minlength() {\r\n return this.control?.errors?.['minlength'];\r\n }\r\n\r\n get email(): ValidationErrors {\r\n return this.control?.errors?.['email'];\r\n }\r\n}\r\n","<div class=\"tak-custom-error tak-fade-in--800ms\" #error [style.marginTop.px]=\"marginTop\">\r\n @if (control !== undefined && isDateField && control.valid) {\r\n <div>\r\n {{ 'badDateMsg' | errorMsg }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: required) {\r\n <div>\r\n {{ 'requiredMsg' | errorMsg }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: pattern) {\r\n <div>\r\n {{\r\n isNumberField\r\n ? 'El campo solo debe contener caracteres numericos'\r\n : ('patternMsg' | errorMsg)\r\n }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: max) {\r\n <div>\r\n {{ 'maxMsg' | errorMsg: max.max }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: min) {\r\n <div>\r\n {{ 'minMsg' | errorMsg: min.min }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: maxlength) {\r\n <div>\r\n {{ 'maxLengthMsg' | errorMsg: maxlength.requiredLength }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: minlength) {\r\n <div>\r\n {{ 'minLengthMsg' | errorMsg: minlength.requiredLength }}\r\n </div>\r\n }\r\n @if (control !== undefined && control.errors | errorEquals: email) {\r\n <div>\r\n {{ 'EmailMsg' | errorMsg }}\r\n </div>\r\n }\r\n @if (control === undefined) {\r\n <div>\r\n {{\r\n start.hasError('required') && end.hasError('required')\r\n ? ('requiredMsg' | errorMsg)\r\n : ('DateRangeMsg' | errorMsg)\r\n }}\r\n </div>\r\n }\r\n</div>\r\n","import { ESCAPE } from '@kato-lee/cdk/keycodes';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\n\r\nexport const TAK_DEFAULT_APPEARANCE_FORM: MatFormFieldAppearance = 'standard';\r\n\r\nexport type TakGeneralFieldType = 'text' | 'password' | 'filter';\r\nexport type TakAutocompleteFieldType = 'off' | 'on';\r\n\r\nexport const TAK_PRESS_ESC_KEY = new KeyboardEvent('keydown', {\r\n bubbles: true,\r\n cancelable: true,\r\n keyCode: ESCAPE,\r\n});\r\n\r\nexport const TAK_PTRN_EMAIL = '^[^@]+@[^@]+.[a-zA-Z]{2,}$';\r\nexport const TAK_PTRN_NUMRC = /^[0-9.]+$/;\r\nexport const TAK_PTRN_NONSP = /^[^\\s]+$/;\r\n","import {\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n Component,\r\n Optional,\r\n Input,\r\n Self,\r\n OnInit,\r\n EventEmitter,\r\n Output,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n FormGroupDirective,\r\n FormsModule,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { Subject } from 'rxjs';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { MatOptionSelectionChange, ThemePalette } from '@kato-lee/material/core';\r\nimport { TakAutocompleteFieldType, TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { MatTooltipModule } from '@kato-lee/material/tooltip';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatSelectModule } from '@kato-lee/material/select';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatOptionModule } from '@kato-lee/material/core';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { MatMenuModule } from '@kato-lee/material/menu';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n MatTooltipModule,\r\n MatMenuModule,\r\n MatSelectModule,\r\n MatOptionModule,\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-select-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakSelectFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() suggestions: any[] = [];\r\n @Input() disabled = false;\r\n\r\n @Input() type: 'menu' | 'select' = 'select';\r\n @Input() tooltip = '';\r\n @Input() icon = 'filter_list';\r\n\r\n @Input() option = 'option';\r\n @Input() extraInfo = '';\r\n\r\n @Input() hasDefaultValue = false;\r\n\r\n @Output() onSelect = new EventEmitter<any>();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n public isInvalid = false;\r\n public isSubmitted = false;\r\n private _unsubscribe$ = new Subject<void>();\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n if (_formGroupDirective) {\r\n _formGroupDirective.ngSubmit.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\r\n this.isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n if (this.suggestions.length && this.hasDefaultValue) {\r\n this._ngControl.control?.setValue(this.suggestions[0]);\r\n }\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {}\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this.onChangeFn(event.target.value);\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public emit(el: MatOptionSelectionChange) {\r\n if (el.isUserInput) {\r\n this.onSelect.emit(el.source.value);\r\n this.isInvalid = false;\r\n }\r\n }\r\n\r\n public justEmit(el: any) {\r\n this.control.setValue(el);\r\n this.onSelect.emit(el);\r\n this.isInvalid = false;\r\n }\r\n\r\n public onFocusOut() {\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this.isInvalid = true;\r\n else this.isInvalid = false;\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl?.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n}\r\n","@if (type === 'select') {\r\n <div class=\"tak-form-container\">\r\n <mat-form-field [appearance]=\"appearance\" [color]=\"color\">\r\n <mat-label><ng-content /></mat-label>\r\n <mat-select [formControl]=\"control\" (focusout)=\"onFocusOut()\">\r\n @for (suggestion of suggestions; track suggestion) {\r\n <mat-option\r\n [value]=\"suggestion\"\r\n (onSelectionChange)=\"emit($event)\"\r\n title=\"{{ suggestion[option] }} {{\r\n extraInfo ? '(' + suggestion[extraInfo] + ')' : ''\r\n }}\"\r\n >\r\n {{ suggestion[option] }}\r\n @if (extraInfo) {\r\n <span class=\"tak-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n} @else {\r\n <div [matTooltip]=\"tooltip\">\r\n @if (type === 'menu') {\r\n <span>\r\n <button mat-icon-button type=\"button\" [matMenuTriggerFor]=\"menu\" [disabled]=\"isDisabled\">\r\n <mat-icon>{{ icon }}</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n @for (item of suggestions; track item) {\r\n <a tak-menu-item (click)=\"justEmit(item)\">\r\n {{ item[option] }}\r\n </a>\r\n }\r\n </mat-menu>\r\n </span>\r\n }\r\n </div>\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n AfterViewInit,\r\n OnDestroy,\r\n Component,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n} from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, ThemePalette } from '@kato-lee/material/core';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport {\r\n ControlValueAccessor,\r\n FormControl,\r\n FormGroupDirective,\r\n FormsModule,\r\n NgControl,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakAutocompleteFieldType } from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatDatepickerModule } from '@kato-lee/material/datepicker';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n MatNativeDateModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatDatepickerModule,\r\n MatInputModule,\r\n ],\r\n providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],\r\n selector: 'tak-date-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakDateFieldComponent\r\n implements OnInit, AfterViewInit, OnDestroy, ControlValueAccessor\r\n{\r\n private _unsubscribe$ = new Subject<void>();\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() placeholder = '';\r\n @Input() notInput = false;\r\n\r\n @Input() minDate!: Date | string;\r\n @Input() maxDate!: Date | string;\r\n\r\n @Input() disabled = false;\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n if (_formGroupDirective) {\r\n _formGroupDirective.ngSubmit.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n if (form?._rawValidators) {\r\n form._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) {\r\n this._required = true;\r\n }\r\n });\r\n }\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public ngAfterViewInit(): void {\r\n const isValidDate = Date.parse(this.control.value);\r\n if (isNaN(isValidDate)) this.control.setValue(null);\r\n else this.control.setValue(new Date(this.control.value));\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value;\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public onFocusout(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n public onCloseDatePicker(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n const isValidDate = Date.parse(this.control.value);\r\n if (\r\n this.control.invalid ||\r\n ([undefined, null, ''].indexOf(this.control.value) < 0 &&\r\n this.control.valid &&\r\n isNaN(isValidDate))\r\n ) {\r\n this._isInvalid = true;\r\n } else {\r\n this._isInvalid = false;\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl?.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","@if (!notInput) {\r\n <div class=\"tak-form-container\">\r\n <mat-form-field\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n matInput\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n [autocomplete]=\"autocomplete\"\r\n [matDatepicker]=\"picker\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (dateChange)=\"onChange($event)\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"isDisabled\"\r\n (focusout)=\"onFocusout()\"\r\n />\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker (closed)=\"onCloseDatePicker()\" #picker></mat-datepicker>\r\n </mat-form-field>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\" [isDateField]=\"true\"> </tak-error>\r\n }\r\n </div>\r\n}\r\n@if (notInput) {\r\n <div>\r\n <div\r\n class=\"tak__date-not-input__picker-container\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n >\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker (closed)=\"onCloseDatePicker()\" #picker></mat-datepicker>\r\n </div>\r\n <div class=\"tak__date-not-input__field-container\">\r\n <mat-form-field [color]=\"color\">\r\n <input\r\n matInput\r\n [min]=\"minDate\"\r\n [max]=\"maxDate\"\r\n autocomplete=\"off\"\r\n [matDatepicker]=\"picker\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (dateChange)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n (focusout)=\"onFocusout()\"\r\n />\r\n </mat-form-field>\r\n </div>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\" [isDateField]=\"true\" [marginTop]=\"-60\"> </tak-error>\r\n }\r\n </div>\r\n}\r\n","import {\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n Input,\r\n Self,\r\n OnInit,\r\n ChangeDetectorRef,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { debounceTime, map, Observable, Subject, takeUntil } from 'rxjs';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { MatOptionSelectionChange, ThemePalette } from '@kato-lee/material/core';\r\nimport {\r\n TakAutocompleteFieldType,\r\n TAK_DEFAULT_APPEARANCE_FORM,\r\n TAK_PRESS_ESC_KEY,\r\n} from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n TakErrorComponent,\r\n ReactiveFormsModule,\r\n MatProgressSpinnerModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatAutocompleteModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-autocomplete-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakAutocompleteFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n private _unsubscribe$ = new Subject<void>();\r\n\r\n @Input() option = 'option';\r\n @Input() extraInfo = '';\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() hasClearButton = true;\r\n @Input() suggestions: any[] = [];\r\n @Input() disabled = false;\r\n @Input() hasTitle = false;\r\n\r\n @Input() isLoading = false;\r\n @Input() isRemoteSearch = false;\r\n @Input() debounceTimeForRemoteSearch = 500;\r\n\r\n @Output() onSelect = new EventEmitter<any>();\r\n @Output() onSearch = new EventEmitter<any>();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n private _filteredOptions!: Observable<any[]>;\r\n private _notSuggestions = false;\r\n private _lastValue = '';\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n if (_formGroupDirective) {\r\n _formGroupDirective.ngSubmit.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n this._filteredOptions = this.control.valueChanges.pipe(\r\n takeUntil(this._unsubscribe$),\r\n map(() => this._filter())\r\n );\r\n\r\n if (this.isRemoteSearch) {\r\n this.control.valueChanges\r\n .pipe(takeUntil(this._unsubscribe$), debounceTime(this.debounceTimeForRemoteSearch))\r\n .subscribe(() => {\r\n if (this._lastValue !== `${this._value}` && `${this._value}` && !this.control.value) {\r\n this.onSearch.emit(`${this._value}`);\r\n this._setValue(`${this._value}`);\r\n }\r\n\r\n this._lastValue = `${this._value}`;\r\n });\r\n }\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n private _filter(): any[] {\r\n const value =\r\n typeof `${this._value}` === 'string'\r\n ? `${this._value}`.toLowerCase()\r\n : `${this.control.value[this.option]}`.toLowerCase();\r\n const option = this.suggestions.filter(res =>\r\n `${res[this.option]}`.toLowerCase().includes(value)\r\n );\r\n if (!option.length) this._notSuggestions = true;\r\n else this._notSuggestions = false;\r\n return option;\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value || '';\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n if (event.target.value !== `${this._value}`) {\r\n this._value = event.target.value;\r\n\r\n if (!this.isRemoteSearch) this._setValue(`${this._value}`);\r\n\r\n this.onChangeFn(\r\n this.suggestions.filter(\r\n sug => `${sug[this.option]}`.toLowerCase() === `${`${this._value}`}`.toLowerCase()\r\n )[0] || null\r\n );\r\n\r\n if (this.control.touched) {\r\n this._onValidate();\r\n }\r\n }\r\n }\r\n\r\n private _setValue(value: string) {\r\n if (!this.isRemoteSearch) {\r\n const suggestionsFiltered = value\r\n ? this.suggestions.filter(\r\n el =>\r\n `${el[this.option]}`.toLowerCase().trim() === (value as string).toLowerCase().trim()\r\n )\r\n : [];\r\n\r\n if (suggestionsFiltered.length) {\r\n document.body.dispatchEvent(TAK_PRESS_ESC_KEY);\r\n }\r\n\r\n try {\r\n this.control.setValue(suggestionsFiltered[0][this.option], {\r\n emitEvent: false,\r\n });\r\n this.onSelect.emit(suggestionsFiltered[0]);\r\n } catch (error) {}\r\n }\r\n }\r\n\r\n public emit(el: MatOptionSelectionChange) {\r\n if (el && el.isUserInput) this._isInvalid = false;\r\n }\r\n\r\n public emitWithClick(suggestionOption: any) {\r\n this.control.setValue(suggestionOption);\r\n this._value = `${suggestionOption[this.option]}`;\r\n this._isInvalid = false;\r\n }\r\n\r\n public onFocusout(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n public setValue(value: any) {\r\n this.control.setValue(value);\r\n this._value = `${value[this.option]}`;\r\n }\r\n\r\n public onUpdateSuggestions(suggestions: any[]) {\r\n this.suggestions = suggestions;\r\n this._cd.markForCheck();\r\n\r\n this.onChangeFn(\r\n this.suggestions.filter(\r\n sug => `${sug[this.option]}`.toLowerCase() === `${this._value}`.toLowerCase()\r\n )[0] || null\r\n );\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onFocus() {\r\n if (!`${this._value}`) {\r\n this.control.setValue('');\r\n this._value = '';\r\n }\r\n }\r\n\r\n public onClearControl(): void {\r\n this.control.setValue('', { emitEvent: false });\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl?.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return `${this._value}`;\r\n }\r\n\r\n get filteredOptions() {\r\n return this._filteredOptions;\r\n }\r\n\r\n get notSuggestions() {\r\n return this._notSuggestions;\r\n }\r\n\r\n get lastValue() {\r\n return this._lastValue;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [matAutocomplete]=\"auto\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n (focus)=\"onFocus()\"\r\n (focusout)=\"onFocusout()\"\r\n />\r\n @if (isRemoteSearch && isLoading) {\r\n <button matSuffix mat-icon-button type=\"button\">\r\n <mat-spinner [diameter]=\"15\" mode=\"indeterminate\"></mat-spinner>\r\n </button>\r\n }\r\n @if ((control.value || value) && hasClearButton && !disabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n }\r\n <mat-autocomplete #auto=\"matAutocomplete\">\r\n @for (suggestion of filteredOptions | async; track suggestion) {\r\n <mat-option\r\n [value]=\"suggestion[option]\"\r\n [class.tak-option-extra]=\"extraInfo\"\r\n (onSelectionChange)=\"emit($event)\"\r\n (click)=\"emitWithClick(suggestion)\"\r\n title=\"{{ suggestion[option] }} {{ extraInfo ? '(' + suggestion[extraInfo] + ')' : '' }}\"\r\n >\r\n <span>{{ suggestion[option] }}</span>\r\n @if (extraInfo) {\r\n <span class=\"tak-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n @if (notSuggestions && control.invalid) {\r\n <mat-option>\r\n <span class=\"tak-autocomplete-not-records\"> No se encuentran resultados </span>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, ThemePalette } from '@kato-lee/material/core';\r\nimport { TakAutocompleteFieldType, TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatDatepickerModule } from '@kato-lee/material/datepicker';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n MatNativeDateModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatDatepickerModule,\r\n MatInputModule,\r\n ],\r\n providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],\r\n selector: 'tak-date-range-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakDateRangeFieldComponent implements OnInit {\r\n @Input() autocomplete: TakAutocompleteFieldType = 'off';\r\n @Input() startPlaceholder: string = 'Inicio';\r\n @Input() endPlaceholder: string = 'Fin';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() color: ThemePalette = 'primary';\r\n\r\n @Input() start!: FormControl;\r\n @Input() end!: FormControl;\r\n @Input() notInput = false;\r\n\r\n @Input() disabled = false;\r\n\r\n private _required = false;\r\n\r\n public ngOnInit(): void {\r\n const start: any = this.start;\r\n const end: any = this.end;\r\n if (start?._rawValidators) {\r\n start._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n if (end?._rawValidators) {\r\n end._rawValidators.map((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n if (this.disabled) {\r\n this.start.disable();\r\n this.end.disable();\r\n }\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get isDisabled() {\r\n return this.start.disabled || this.end.disabled;\r\n }\r\n}\r\n","@if (!notInput) {\r\n <div class=\"tak-form-container\">\r\n <mat-form-field [appearance]=\"appearance\" [color]=\"color\">\r\n <mat-label>\r\n <ng-content />\r\n </mat-label>\r\n <mat-date-range-input [rangePicker]=\"picker\">\r\n <input\r\n matStartDate\r\n [placeholder]=\"startPlaceholder\"\r\n [formControl]=\"start\"\r\n [autocomplete]=\"autocomplete\"\r\n />\r\n <input matEndDate [placeholder]=\"endPlaceholder\" [formControl]=\"end\" />\r\n </mat-date-range-input>\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-date-range-picker #picker></mat-date-range-picker>\r\n </mat-form-field>\r\n @if ((start.invalid || end.invalid) && (start.touched || end.touched)) {\r\n <tak-error [start]=\"start\" [end]=\"end\"> </tak-error>\r\n }\r\n </div>\r\n}\r\n@if (notInput) {\r\n <div>\r\n <div\r\n class=\"tak__date-not-input__picker-container\"\r\n [class.mat-form-field-invalid]=\"\r\n (start.invalid || end.invalid) && (start.touched || end.touched)\r\n \"\r\n >\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-date-range-picker #picker [disabled]=\"isDisabled\"></mat-date-range-picker>\r\n </div>\r\n <div class=\"tak__date-not-input__field-container\">\r\n <mat-form-field [color]=\"color\">\r\n <mat-date-range-input [rangePicker]=\"picker\">\r\n <input matStartDate [formControl]=\"start\" />\r\n <input matEndDate [formControl]=\"end\" />\r\n </mat-date-range-input>\r\n </mat-form-field>\r\n </div>\r\n @if ((start.invalid || end.invalid) && (start.touched || end.touched)) {\r\n <tak-error [start]=\"start\" [end]=\"end\" [marginTop]=\"-60\"></tak-error>\r\n }\r\n </div>\r\n}\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n Validators,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-money-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakMoneyFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() floatLabel: FloatLabelType = 'auto';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() defaultFilterStyle = true;\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = true;\r\n @Input() countCaracters = false;\r\n @Input() placeholder = '';\r\n\r\n @Input() maxLength!: number;\r\n @Input() minLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n private _subscription!: Subscription;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n this.control.addValidators(Validators.pattern(/^[0-9.,-]+$/));\r\n\r\n if (['', null, undefined, '-'].indexOf(this.control.value) < 0) this._addCurrencyMask();\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) {\r\n this._isInvalid = false;\r\n }\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n this._addCurrencyMask();\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n private _addCurrencyMask() {\r\n const valueFormatted = this.control.value\r\n .toString()\r\n .replace(/,/g, '')\r\n .replace(/ /g, '')\r\n .replace('$', '');\r\n\r\n if (['', null, undefined, '-'].indexOf(valueFormatted) < 0 && !isNaN(Number(valueFormatted))) {\r\n const value = '$ ' + Intl.NumberFormat('en-US').format(Number(valueFormatted));\r\n this.control.setValue(+valueFormatted);\r\n this._value = value;\r\n } else if (['-'].indexOf(valueFormatted) >= 0) this.control.setValue('-');\r\n else this.control.setValue(null);\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n //this._executeIfIsMoneyField();\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onKeyDown(event: any) {\r\n const pattern = /[0-9.-]/i.test(event.key);\r\n const validKeyCodes = [8, 46, 37, 39, 9, 17, 16, 67, 86, 109, 189];\r\n return pattern || validKeyCodes.indexOf(event.keyCode) >= 0;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else {\r\n this.control.setValue('');\r\n }\r\n\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n class=\"money-input\"\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [placeholder]=\"placeholder\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n (keydown)=\"onKeyDown($event)\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n />\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n Validators,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakGeneralFieldType } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-general-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakGeneralFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() type: TakGeneralFieldType = 'text';\r\n @Input() floatLabel: FloatLabelType = 'never';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() defaultFilterStyle = true;\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = false;\r\n @Input() countCaracters = false;\r\n @Input() placeholder = '';\r\n\r\n @Input() maxLength!: number;\r\n @Input() minLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n private _subscription!: Subscription;\r\n private _decrypted = false;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (this.type === 'filter' && this.defaultFilterStyle) {\r\n this.control.removeValidators(Validators.required);\r\n this.appearance = 'legacy';\r\n this.floatLabel = 'never';\r\n if (!this.placeholder) this.placeholder = 'Buscar';\r\n this.hasClearButton = true;\r\n this._cd.markForCheck();\r\n }\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n if (!this.control.value && this.type === 'password') this._decrypted = false;\r\n if (this.control.touched) this._onValidate();\r\n if (this.type === 'filter') this.onKeyUp.emit(this.control.value);\r\n }\r\n\r\n public showPassword(): void {\r\n if (this.type === 'password') {\r\n if (this._decrypted) this._decrypted = false;\r\n else this._decrypted = true;\r\n }\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else this.control.setValue('');\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get decrypted() {\r\n return this._decrypted;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n [type]=\"type === 'password' && !decrypted ? 'password' : 'text'\"\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n [placeholder]=\"placeholder\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n />\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && type === 'password' && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"showPassword()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{\r\n decrypted ? 'visibility_off' : 'visibility'\r\n }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n Validators,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-number-field',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakNumberFieldComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() floatLabel: FloatLabelType = 'auto';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = false;\r\n @Input() countCaracters = false;\r\n @Input() placeholder = '';\r\n\r\n @Input() min!: number;\r\n @Input() max!: number;\r\n\r\n @Input() minLength!: number;\r\n @Input() maxLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n private _isSubmitted = false;\r\n private _isInvalid = false;\r\n private _required = false;\r\n private _value = '';\r\n\r\n private _subscription!: Subscription;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n if (this.min) this.control.addValidators(Validators.min(this.min));\r\n if (this.max) this.control.addValidators(Validators.max(this.max));\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) this._isInvalid = false;\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(\r\n ['', null, undefined].indexOf(event.target.value) < 0 ? +event.target.value : null\r\n );\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else this.control.setValue('');\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input\r\n type=\"number\"\r\n matInput\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [autocomplete]=\"autocomplete\"\r\n [value]=\"value\"\r\n (keyup)=\"onChange($event)\"\r\n [placeholder]=\"placeholder\"\r\n (change)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n />\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton && !isDisabled) {\r\n <button matSuffix mat-icon-button type=\"button\" (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectorRef,\r\n Component,\r\n OnDestroy,\r\n Optional,\r\n OnInit,\r\n Input,\r\n Self,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport {\r\n ControlValueAccessor,\r\n FormGroupDirective,\r\n FormControl,\r\n NgControl,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { TakErrorComponent } from '../error/component';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n TakErrorComponent,\r\n FormsModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatInputModule,\r\n ],\r\n selector: 'tak-textarea',\r\n templateUrl: './component.html',\r\n})\r\nexport class TakTextareaComponent implements OnInit, OnDestroy, ControlValueAccessor {\r\n @Input() autocomplete: 'off' | 'on' = 'off';\r\n\r\n @Input() appearance: MatFormFieldAppearance = TAK_DEFAULT_APPEARANCE_FORM;\r\n @Input() floatLabel: FloatLabelType = 'auto';\r\n @Input() color: ThemePalette = 'primary';\r\n @Input() actionIcon = 'search';\r\n\r\n @Input() defaultFilterStyle = true;\r\n @Input() hasActionButton = false;\r\n @Input() hasClearButton = false;\r\n @Input() countCaracters = false;\r\n @Input() isTextArea = false;\r\n @Input() placeholder = '';\r\n @Input() heightInPx = 60;\r\n\r\n @Input() minLength!: number;\r\n @Input() maxLength!: number;\r\n\r\n @Input() disabled = false;\r\n\r\n @Output() onExecuteAction = new EventEmitter();\r\n @Output() onKeyUp = new EventEmitter();\r\n\r\n public onChangeFn = (_: any) => {};\r\n public onTouchFn = (_: any) => {};\r\n\r\n public _isSubmitted = false;\r\n public _isInvalid = false;\r\n public _required = false;\r\n public _value = '';\r\n\r\n private _subscription!: Subscription;\r\n private _decrypted = false;\r\n\r\n constructor(\r\n @Self() @Optional() private _ngControl: NgControl,\r\n @Optional() private _formGroupDirective: FormGroupDirective,\r\n private _cd: ChangeDetectorRef\r\n ) {\r\n if (_ngControl) this._ngControl.valueAccessor = this;\r\n\r\n if (_formGroupDirective) {\r\n this._subscription = _formGroupDirective.ngSubmit.subscribe(() => {\r\n this._isSubmitted = true;\r\n _cd.markForCheck();\r\n });\r\n }\r\n }\r\n\r\n public ngOnInit(): void {\r\n const form: any = this.control;\r\n\r\n if (form?._rawValidators) {\r\n form._rawValidators.forEach((r: any) => {\r\n if (r.name.includes('required')) this._required = true;\r\n });\r\n }\r\n\r\n if (this.disabled) this.control.disable();\r\n }\r\n\r\n public writeValue(value: string): void {\r\n if (value === null) {\r\n this._isInvalid = false;\r\n }\r\n this._value = value;\r\n this._isSubmitted = false;\r\n this._cd.markForCheck();\r\n }\r\n\r\n public registerOnChange(fn: any): void {\r\n this.onChangeFn = fn;\r\n }\r\n\r\n public registerOnTouched(fn: any): void {\r\n this.onTouchFn = fn;\r\n }\r\n\r\n public onChange(event: any): void {\r\n this._value = event.target.value;\r\n this.onChangeFn(event.target.value);\r\n if (this.control.touched) this._onValidate();\r\n }\r\n\r\n public onFocusOut(): void {\r\n this.onTouchFn(true);\r\n this._onValidate();\r\n }\r\n\r\n private _onValidate(): void {\r\n if (this.control.invalid) this._isInvalid = true;\r\n else this._isInvalid = false;\r\n }\r\n\r\n public onClearControl(): void {\r\n if (['', null, undefined].indexOf(this.control.value) >= 0) {\r\n this.control.setValue('', { emitEvent: false });\r\n } else {\r\n this.control.setValue('');\r\n }\r\n\r\n this._value = '';\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n if (this._subscription) this._subscription.unsubscribe();\r\n }\r\n\r\n get control(): FormControl {\r\n return this._ngControl.control as FormControl;\r\n }\r\n\r\n get directive(): FormGroupDirective {\r\n return this._formGroupDirective as FormGroupDirective;\r\n }\r\n\r\n get decrypted() {\r\n return this._decrypted;\r\n }\r\n\r\n get isDisabled() {\r\n return this._ngControl.disabled;\r\n }\r\n\r\n get isSubmitted() {\r\n return this._isSubmitted;\r\n }\r\n\r\n get isInvalid() {\r\n return this._isInvalid;\r\n }\r\n\r\n get required() {\r\n return this._required;\r\n }\r\n\r\n get value() {\r\n return this._value;\r\n }\r\n}\r\n","<div class=\"tak-form-container\">\r\n <mat-form-field\r\n [floatLabel]=\"floatLabel\"\r\n [class.mat-form-field-invalid]=\"isInvalid || (isSubmitted && control.invalid)\"\r\n [appearance]=\"appearance\"\r\n [color]=\"color\"\r\n >\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (required) {\r\n <span class=\"tak-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <textarea\r\n matInput\r\n [autocomplete]=\"autocomplete\"\r\n [value]=\"value\"\r\n [style.height.px]=\"heightInPx\"\r\n [placeholder]=\"placeholder\"\r\n (keyup)=\"onChange($event)\"\r\n (change)=\"onChange($event)\"\r\n [disabled]=\"isDisabled\"\r\n [attr.minLength]=\"minLength\"\r\n [attr.maxLength]=\"maxLength\"\r\n (focusout)=\"onFocusOut()\"\r\n ></textarea>\r\n @if (control.value && hasClearButton && !isDisabled) {\r\n <button mat-icon-button type=\"button\" matSuffix (click)=\"onClearControl()\">\r\n <mat-icon class=\"tak-suffix-icon-button\">close</mat-icon>\r\n </button>\r\n }\r\n @if (control.value && hasActionButton) {\r\n <button mat-icon-button type=\"button\" matSuffix (click)=\"onExecuteAction.emit(control.value)\">\r\n <mat-icon class=\"tak-suffix-icon-button\">{{ actionIcon }}</mat-icon>\r\n </button>\r\n }\r\n @if (countCaracters) {\r\n <mat-hint align=\"end\" class=\"tak-hint\">\r\n {{ control.value?.length || 0 }}/{{ maxLength }}\r\n </mat-hint>\r\n }\r\n </mat-form-field>\r\n <div [style.maxWidth]=\"countCaracters ? '80%' : '100%'\">\r\n @if (isInvalid || (isSubmitted && control.invalid)) {\r\n <tak-error [control]=\"control\"></tak-error>\r\n }\r\n </div>\r\n</div>\r\n","import {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ChangeDetectorRef,\r\n Output,\r\n EventEmitter,\r\n OnInit,\r\n OnDestroy,\r\n ViewEncapsulation,\r\n Input,\r\n} from '@angular/core';\r\nimport { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TakToast } from '@kato-lee/components/toast';\r\nimport {\r\n Observable,\r\n Subject,\r\n debounceTime,\r\n distinctUntilChanged,\r\n firstValueFrom,\r\n map,\r\n takeUntil,\r\n} from 'rxjs';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { TAK_PRESS_ESC_KEY } from '../common';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [\r\n FormsModule,\r\n MatProgressSpinnerModule,\r\n MatFormFieldModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n MatIconModule,\r\n MatButtonModule,\r\n CommonModule,\r\n ],\r\n selector: 'tak-remote-autocomplete-field',\r\n templateUrl: './component.html',\r\n styles: [\r\n `\r\n mat-spinner.spinner-loading {\r\n display: inline;\r\n margin-left: -10px;\r\n & > svg {\r\n margin-top: -5px;\r\n }\r\n }\r\n `,\r\n ],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TakRemoteAutocompleteFieldComponent implements OnInit, OnDestroy {\r\n @Input() remoteUrl = '';\r\n @Input() params: any = {};\r\n @Input() option = 'option';\r\n @Input() extraInfo = '';\r\n @Input() justOneLoad = false;\r\n\r\n @Output() onSelect = new EventEmitter<any>();\r\n\r\n public suggestions: any[] = [];\r\n public autocomplete = new FormControl();\r\n\r\n private _isLoading = false;\r\n public isValueSelected = false;\r\n\r\n private _unsubscribe$ = new Subject<void>();\r\n private _isLoadingItem = false;\r\n private _isRequired = true;\r\n\r\n private _filteredOptions!: Observable<any[]>;\r\n private _value = '';\r\n private _notSuggestions = false;\r\n\r\n public wasLoaded = false;\r\n\r\n constructor(\r\n private _http: HttpClient,\r\n private _cd: ChangeDetectorRef,\r\n private _toast: TakToast\r\n ) {}\r\n\r\n public async ngOnInit(): Promise<void> {\r\n if (!this.justOneLoad) {\r\n this.autocomplete.valueChanges\r\n .pipe(takeUntil(this._unsubscribe$), debounceTime(500), distinctUntilChanged())\r\n .subscribe(async value => {\r\n if (\r\n value &&\r\n !this.suggestions.filter(suggestion => suggestion.getNombre() === value).length\r\n ) {\r\n this._isLoading = true;\r\n this._cd.markForCheck();\r\n\r\n try {\r\n const result = await firstValueFrom(\r\n this._http.get<any[]>(this.remoteUrl, {\r\n params: this.params,\r\n })\r\n );\r\n\r\n if (result.length !== 0) {\r\n this.suggestions = result;\r\n if (\r\n `${value}`.toLocaleLowerCase() ===\r\n `${this.suggestions[0][this.option]}`.toLocaleLowerCase()\r\n ) {\r\n this.autocomplete.setValue(`${this.suggestions[0][this.option]}`, {\r\n emitEvent: false,\r\n });\r\n this.onSelect.emit(this.suggestions[0]);\r\n document.body.dispatchEvent(TAK_PRESS_ESC_KEY);\r\n }\r\n } else {\r\n this._toast.notification('No existen items que contengan esta palabra clave');\r\n }\r\n } catch (error: any) {\r\n this._toast.danger(error.error.message);\r\n }\r\n\r\n this._isLoading = false;\r\n this._cd.markForCheck();\r\n }\r\n });\r\n } else {\r\n try {\r\n const result = await firstValueFrom(\r\n this._http.get<any[]>(this.remoteUrl, {\r\n params: this.params,\r\n })\r\n );\r\n\r\n this.suggestions = result;\r\n this.wasLoaded = true;\r\n this._cd.markForCheck();\r\n\r\n this._filteredOptions = this.autocomplete.valueChanges.pipe(\r\n takeUntil(this._unsubscribe$),\r\n map(() => this._filter())\r\n );\r\n } catch (error: any) {\r\n this._toast.danger(error.error.message);\r\n }\r\n }\r\n }\r\n\r\n private _filter(): any[] {\r\n const value =\r\n typeof `${this.autocomplete.value}` === 'string'\r\n ? `${this.autocomplete.value}`.toLowerCase()\r\n : `${this.autocomplete.value[this.option]}`.toLowerCase();\r\n const option = this.suggestions.filter(res =>\r\n `${res[this.option]}`.toLowerCase().includes(value)\r\n );\r\n if (!option.length) this._notSuggestions = true;\r\n else this._notSuggestions = false;\r\n return option;\r\n }\r\n\r\n async refresh() {\r\n try {\r\n const result = await firstValueFrom(\r\n this._http.get<any[]>(this.remoteUrl, {\r\n params: this.params,\r\n })\r\n );\r\n\r\n this.suggestions = result;\r\n this.autocomplete.setValue('');\r\n this._toast.notification('Data actualizada correctamente');\r\n this._cd.markForCheck();\r\n } catch (error: any) {\r\n this._toast.danger(error.error.message);\r\n }\r\n }\r\n\r\n public reset() {\r\n if (!this.justOneLoad) {\r\n this.autocomplete.reset();\r\n } else {\r\n this.autocomplete.setValue('');\r\n }\r\n this.onSelect.emit(null as any);\r\n }\r\n\r\n emit(el: any, option: any) {\r\n if (el.isUserInput) {\r\n this.onSelect.emit(option);\r\n }\r\n }\r\n\r\n public ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n\r\n get isLoading() {\r\n return this._isLoading;\r\n }\r\n\r\n get isRequired() {\r\n return this._isRequired;\r\n }\r\n\r\n get isLoadingItem() {\r\n return this._isLoadingItem;\r\n }\r\n\r\n get filteredOptions() {\r\n return this._filteredOptions;\r\n }\r\n\r\n get value() {\r\n return `${this._value}`;\r\n }\r\n\r\n get notSuggestions() {\r\n return this._notSuggestions;\r\n }\r\n}\r\n","@if (!justOneLoad || (justOneLoad && wasLoaded)) {\r\n <mat-form-field appearance=\"standard\">\r\n <mat-label>\r\n <ng-content />{{ ' ' }}\r\n @if (isRequired) {\r\n <span class=\"gcm-field__danger-x\">*</span>\r\n }\r\n </mat-label>\r\n <input matInput [formControl]=\"autocomplete\" [matAutocomplete]=\"auto\" />\r\n\r\n @if (isLoading || (autocomplete.value === null && isLoadingItem)) {\r\n <mat-spinner\r\n mat-icon-button\r\n [diameter]=\"15\"\r\n mode=\"indeterminate\"\r\n class=\"spinner-loading\"\r\n ></mat-spinner>\r\n }\r\n <!---->\r\n\r\n @if (autocomplete.value) {\r\n <button mat-icon-button matSuffix (click)=\"reset()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n }\r\n @if (justOneLoad && !autocomplete.value) {\r\n <button mat-icon-button matSuffix (click)=\"refresh()\">\r\n <mat-icon>refresh</mat-icon>\r\n </button>\r\n }\r\n\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\">\r\n @if (!justOneLoad) {\r\n @for (suggestion of suggestions; track $index) {\r\n <mat-option\r\n [value]=\"suggestion[option]\"\r\n title=\"{{ suggestion[option] }} {{\r\n extraInfo ? '(' + suggestion[extraInfo] + ')' : ''\r\n }}\"\r\n (onSelectionChange)=\"emit($event, suggestion)\"\r\n >\r\n <span>{{ suggestion[option] }}</span>\r\n @if (extraInfo) {\r\n <span class=\"mat-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n @if (notSuggestions) {\r\n <mat-option>\r\n <span class=\"tak-autocomplete-not-records\"> No se encuentran resultados </span>\r\n </mat-option>\r\n }\r\n } @else {\r\n @for (suggestion of filteredOptions | async; track $index) {\r\n <mat-option\r\n [value]=\"suggestion[option]\"\r\n title=\"{{ suggestion[option] }} {{\r\n extraInfo ? '(' + suggestion[extraInfo] + ')' : ''\r\n }}\"\r\n (onSelectionChange)=\"emit($event, suggestion)\"\r\n >\r\n <span>{{ suggestion[option] }}</span>\r\n @if (extraInfo) {\r\n <span class=\"mat-option-span-extra\">{{ suggestion[extraInfo] }}</span>\r\n }\r\n </mat-option>\r\n }\r\n @if (notSuggestions) {\r\n <mat-option>\r\n <span class=\"tak-autocomplete-not-records\"> No se encuentran resultados </span>\r\n </mat-option>\r\n }\r\n }\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule } from '@kato-lee/material/core';\r\nimport { TakSelectFieldComponent } from './select/component';\r\nimport { TakDateFieldComponent } from './date/component';\r\nimport { TakAutocompleteFieldComponent } from './autocomplete/component';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { TakDateRangeFieldComponent } from './date-range/component';\r\nimport { TakMoneyFieldComponent } from './money/component';\r\nimport { TakGeneralFieldComponent } from './general/component';\r\nimport { TakNumberFieldComponent } from './number/component';\r\nimport { TakTextareaComponent } from './text-area/component';\r\nimport { TakRemoteAutocompleteFieldComponent } from './remote-autocomplete/component';\r\n\r\nconst components = [\r\n TakSelectFieldComponent,\r\n TakDateFieldComponent,\r\n TakAutocompleteFieldComponent,\r\n TakDateRangeFieldComponent,\r\n TakGeneralFieldComponent,\r\n TakMoneyFieldComponent,\r\n TakTextareaComponent,\r\n TakNumberFieldComponent,\r\n];\r\n\r\n/** @deprecated Use standalone */\r\n@NgModule({\r\n imports: [\r\n ...components,\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n FormsModule,\r\n MatNativeDateModule,\r\n TakRemoteAutocompleteFieldComponent,\r\n ],\r\n exports: [\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n FormsModule,\r\n MatNativeDateModule,\r\n TakRemoteAutocompleteFieldComponent,\r\n ...components,\r\n ],\r\n providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],\r\n})\r\nexport class TakFieldsModule {}\r\n","import { Validators } from '@angular/forms';\r\nimport { TAK_PTRN_EMAIL, TAK_PTRN_NONSP, TAK_PTRN_NUMRC } from './common';\r\n\r\nexport const required = Validators.required;\r\n\r\nexport const max = (max: number) => Validators.max(max);\r\nexport const min = (min: number) => Validators.min(min);\r\n\r\nexport const maxLength = (maxLength: number) => Validators.maxLength(maxLength);\r\nexport const minLength = (minLength: number) => Validators.minLength(minLength);\r\n\r\nexport const withOutSpaces = Validators.pattern(TAK_PTRN_NONSP);\r\nexport const onlyNumber = Validators.pattern(TAK_PTRN_NUMRC);\r\nexport const email = Validators.pattern(TAK_PTRN_EMAIL);\r\n","/*\r\n * Public API Surface of @kato-lee/components/fields\r\n */\r\n\r\nexport * from './error/error-equals.pipe';\r\nexport * from './error/component';\r\nexport * from './error/error.msg.pipe';\r\nexport * from './common';\r\nexport * from './module';\r\nexport * from './validators';\r\nexport * from './select/component';\r\nexport * from './date/component';\r\nexport * from './autocomplete/component';\r\nexport * from './general/component';\r\nexport * from './money/component';\r\nexport * from './text-area/component';\r\nexport * from './date-range/component';\r\nexport * from './number/component';\r\nexport * from './remote-autocomplete/component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["lang.es","i4","i7","i8","i2","takeUntil","i3","i6","i9","i5","i1","i11"],"mappings":"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"}
|
|
@@ -82,7 +82,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
82
82
|
}] } });
|
|
83
83
|
|
|
84
84
|
const modules = [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent];
|
|
85
|
-
/** @deprecated Use standalone */
|
|
86
85
|
class TakTablesModule {
|
|
87
86
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakTablesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
88
87
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: TakTablesModule, imports: [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent], exports: [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent] }); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kato-lee-components-tables.mjs","sources":["../../../libraries/components/tables/mat-paginator.translation.ts","../../../libraries/components/tables/no-records.component.ts","../../../libraries/components/tables/module.ts","../../../libraries/components/tables/index.ts","../../../libraries/components/tables/kato-lee-components-tables.ts"],"sourcesContent":["import { MatPaginatorIntl } from '@kato-lee/material/paginator';\r\n\r\nconst typeEntity = 'item(s)';\r\n\r\nconst SpanishRangeLabel = (page: number, pageSize: number, length: number) => {\r\n if (length == 0 || pageSize == 0) {\r\n return `0 de ${length} ${typeEntity}`;\r\n }\r\n length = Math.max(length, 0);\r\n const startIndex = page * pageSize;\r\n const endIndex =\r\n startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize;\r\n return `${startIndex + 1} - ${endIndex} de ${length} ${typeEntity}`;\r\n};\r\n\r\nexport function getSpanishMatPaginatorIntl() {\r\n const paginatorIntl = new MatPaginatorIntl();\r\n\r\n paginatorIntl.itemsPerPageLabel = 'Items por página:';\r\n paginatorIntl.firstPageLabel = 'Primer página';\r\n paginatorIntl.nextPageLabel = 'Siguiente';\r\n paginatorIntl.previousPageLabel = 'Anterior';\r\n paginatorIntl.lastPageLabel = 'Ultima página';\r\n paginatorIntl.getRangeLabel = SpanishRangeLabel;\r\n\r\n return paginatorIntl;\r\n}\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { MatTableDataSource } from '@kato-lee/material/table';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [MatProgressSpinnerModule],\r\n selector: 'tak-table-no-records',\r\n template: `\r\n @if (isLoading) {\r\n <div class=\"tak-progress-circle__container\">\r\n <mat-progress-spinner mode=\"indeterminate\" />\r\n </div>\r\n } @else {\r\n <div class=\"tak-progress-circle__container\">\r\n @if (secondImage) {\r\n No hay resultados que contengan esta palabra clave\r\n } @else {\r\n No se encontraron resultados\r\n }\r\n </div>\r\n }\r\n `,\r\n styles: `\r\n .tak-progress-circle__container {\r\n min-height: calc(100vh - 315px);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n @media only screen and (min-width: 640px) {\r\n .tak-progress-circle__container {\r\n min-height: calc(100vh - 230px);\r\n }\r\n }\r\n .tak-progress-circle__container {\r\n min-height: calc(100vh - 230px);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n .tak-progress-circle__container-image {\r\n min-height: calc(100vh - 230px);\r\n }\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TakTableNoRecordsComponent implements OnInit {\r\n @Input() dataSource!: MatTableDataSource<any>;\r\n\r\n @Input() isLoading = false;\r\n\r\n private _secondImage = true;\r\n\r\n public ngOnInit(): void {\r\n if (this.dataSource) {\r\n if (this.dataSource.data.length && !this.dataSource.filteredData.length)\r\n this._secondImage = false;\r\n }\r\n }\r\n\r\n get secondImage(): boolean {\r\n return this._secondImage;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MatPaginatorIntl, MatPaginatorModule } from '@kato-lee/material/paginator';\r\nimport { MatSortModule } from '@kato-lee/material/sort';\r\nimport { MatTableModule } from '@kato-lee/material/table';\r\nimport { getSpanishMatPaginatorIntl } from './mat-paginator.translation';\r\nimport { TakTableNoRecordsComponent } from './no-records.component';\r\n\r\nconst modules = [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent];\r\n\r\n
|
|
1
|
+
{"version":3,"file":"kato-lee-components-tables.mjs","sources":["../../../libraries/components/tables/mat-paginator.translation.ts","../../../libraries/components/tables/no-records.component.ts","../../../libraries/components/tables/module.ts","../../../libraries/components/tables/index.ts","../../../libraries/components/tables/kato-lee-components-tables.ts"],"sourcesContent":["import { MatPaginatorIntl } from '@kato-lee/material/paginator';\r\n\r\nconst typeEntity = 'item(s)';\r\n\r\nconst SpanishRangeLabel = (page: number, pageSize: number, length: number) => {\r\n if (length == 0 || pageSize == 0) {\r\n return `0 de ${length} ${typeEntity}`;\r\n }\r\n length = Math.max(length, 0);\r\n const startIndex = page * pageSize;\r\n const endIndex =\r\n startIndex < length ? Math.min(startIndex + pageSize, length) : startIndex + pageSize;\r\n return `${startIndex + 1} - ${endIndex} de ${length} ${typeEntity}`;\r\n};\r\n\r\nexport function getSpanishMatPaginatorIntl() {\r\n const paginatorIntl = new MatPaginatorIntl();\r\n\r\n paginatorIntl.itemsPerPageLabel = 'Items por página:';\r\n paginatorIntl.firstPageLabel = 'Primer página';\r\n paginatorIntl.nextPageLabel = 'Siguiente';\r\n paginatorIntl.previousPageLabel = 'Anterior';\r\n paginatorIntl.lastPageLabel = 'Ultima página';\r\n paginatorIntl.getRangeLabel = SpanishRangeLabel;\r\n\r\n return paginatorIntl;\r\n}\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { MatTableDataSource } from '@kato-lee/material/table';\r\n\r\n@Component({\r\n standalone: true,\r\n imports: [MatProgressSpinnerModule],\r\n selector: 'tak-table-no-records',\r\n template: `\r\n @if (isLoading) {\r\n <div class=\"tak-progress-circle__container\">\r\n <mat-progress-spinner mode=\"indeterminate\" />\r\n </div>\r\n } @else {\r\n <div class=\"tak-progress-circle__container\">\r\n @if (secondImage) {\r\n No hay resultados que contengan esta palabra clave\r\n } @else {\r\n No se encontraron resultados\r\n }\r\n </div>\r\n }\r\n `,\r\n styles: `\r\n .tak-progress-circle__container {\r\n min-height: calc(100vh - 315px);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n @media only screen and (min-width: 640px) {\r\n .tak-progress-circle__container {\r\n min-height: calc(100vh - 230px);\r\n }\r\n }\r\n .tak-progress-circle__container {\r\n min-height: calc(100vh - 230px);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n .tak-progress-circle__container-image {\r\n min-height: calc(100vh - 230px);\r\n }\r\n `,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TakTableNoRecordsComponent implements OnInit {\r\n @Input() dataSource!: MatTableDataSource<any>;\r\n\r\n @Input() isLoading = false;\r\n\r\n private _secondImage = true;\r\n\r\n public ngOnInit(): void {\r\n if (this.dataSource) {\r\n if (this.dataSource.data.length && !this.dataSource.filteredData.length)\r\n this._secondImage = false;\r\n }\r\n }\r\n\r\n get secondImage(): boolean {\r\n return this._secondImage;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MatPaginatorIntl, MatPaginatorModule } from '@kato-lee/material/paginator';\r\nimport { MatSortModule } from '@kato-lee/material/sort';\r\nimport { MatTableModule } from '@kato-lee/material/table';\r\nimport { getSpanishMatPaginatorIntl } from './mat-paginator.translation';\r\nimport { TakTableNoRecordsComponent } from './no-records.component';\r\n\r\nconst modules = [MatTableModule, MatSortModule, MatPaginatorModule, TakTableNoRecordsComponent];\r\n\r\n@NgModule({\r\n imports: modules,\r\n exports: modules,\r\n providers: [{ provide: MatPaginatorIntl, useValue: getSpanishMatPaginatorIntl() }],\r\n})\r\nexport class TakTablesModule {}\r\n","/*\r\n * Public API Surface of @kato-lee/components/tables\r\n */\r\nexport * from './mat-paginator.translation';\r\nexport * from './no-records.component';\r\nexport * from './module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/fields/index.d.ts
CHANGED
|
@@ -4,12 +4,12 @@ export * from './error/error.msg.pipe';
|
|
|
4
4
|
export * from './common';
|
|
5
5
|
export * from './module';
|
|
6
6
|
export * from './validators';
|
|
7
|
-
export * from './select';
|
|
8
|
-
export * from './date';
|
|
9
|
-
export * from './autocomplete';
|
|
10
|
-
export * from './general';
|
|
11
|
-
export * from './money';
|
|
7
|
+
export * from './select/component';
|
|
8
|
+
export * from './date/component';
|
|
9
|
+
export * from './autocomplete/component';
|
|
10
|
+
export * from './general/component';
|
|
11
|
+
export * from './money/component';
|
|
12
12
|
export * from './text-area/component';
|
|
13
|
-
export * from './date-range';
|
|
14
|
-
export * from './number';
|
|
15
|
-
export * from './remote-autocomplete';
|
|
13
|
+
export * from './date-range/component';
|
|
14
|
+
export * from './number/component';
|
|
15
|
+
export * from './remote-autocomplete/component';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kato-lee/components",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"@kato-lee/cdk": "^14.2.7",
|
|
6
6
|
"@kato-lee/material": "^14.2.7"
|
|
@@ -30,18 +30,18 @@
|
|
|
30
30
|
"esm": "./esm2022/capsule/kato-lee-components-capsule.mjs",
|
|
31
31
|
"default": "./fesm2022/kato-lee-components-capsule.mjs"
|
|
32
32
|
},
|
|
33
|
-
"./cards": {
|
|
34
|
-
"types": "./cards/index.d.ts",
|
|
35
|
-
"esm2022": "./esm2022/cards/kato-lee-components-cards.mjs",
|
|
36
|
-
"esm": "./esm2022/cards/kato-lee-components-cards.mjs",
|
|
37
|
-
"default": "./fesm2022/kato-lee-components-cards.mjs"
|
|
38
|
-
},
|
|
39
33
|
"./dialogs": {
|
|
40
34
|
"types": "./dialogs/index.d.ts",
|
|
41
35
|
"esm2022": "./esm2022/dialogs/kato-lee-components-dialogs.mjs",
|
|
42
36
|
"esm": "./esm2022/dialogs/kato-lee-components-dialogs.mjs",
|
|
43
37
|
"default": "./fesm2022/kato-lee-components-dialogs.mjs"
|
|
44
38
|
},
|
|
39
|
+
"./cards": {
|
|
40
|
+
"types": "./cards/index.d.ts",
|
|
41
|
+
"esm2022": "./esm2022/cards/kato-lee-components-cards.mjs",
|
|
42
|
+
"esm": "./esm2022/cards/kato-lee-components-cards.mjs",
|
|
43
|
+
"default": "./fesm2022/kato-lee-components-cards.mjs"
|
|
44
|
+
},
|
|
45
45
|
"./fields": {
|
|
46
46
|
"types": "./fields/index.d.ts",
|
|
47
47
|
"esm2022": "./esm2022/fields/kato-lee-components-fields.mjs",
|
package/tables/module.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ import * as i1 from "@kato-lee/material/table";
|
|
|
3
3
|
import * as i2 from "@kato-lee/material/sort";
|
|
4
4
|
import * as i3 from "@kato-lee/material/paginator";
|
|
5
5
|
import * as i4 from "./no-records.component";
|
|
6
|
-
/** @deprecated Use standalone */
|
|
7
6
|
export declare class TakTablesModule {
|
|
8
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<TakTablesModule, never>;
|
|
9
8
|
static ɵmod: i0.ɵɵNgModuleDeclaration<TakTablesModule, never, [typeof i1.MatTableModule, typeof i2.MatSortModule, typeof i3.MatPaginatorModule, typeof i4.TakTableNoRecordsComponent], [typeof i1.MatTableModule, typeof i2.MatSortModule, typeof i3.MatPaginatorModule, typeof i4.TakTableNoRecordsComponent]>;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvYXV0b2NvbXBsZXRlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQnO1xyXG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvZGF0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvZGF0ZS1yYW5nZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvZ2VuZXJhbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvbW9uZXkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudCc7XHJcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvbnVtYmVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQnO1xyXG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvcmVtb3RlLWF1dG9jb21wbGV0ZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50JztcclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29tcG9uZW50cy9maWVsZHMvc2VsZWN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnQnO1xyXG4iXX0=
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
package/fields/date/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
package/fields/money/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
package/fields/number/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|
package/fields/select/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './component';
|