@kato-lee/components 1.0.6 → 1.0.7
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.
|
@@ -21,6 +21,7 @@ import { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';
|
|
|
21
21
|
import { TakNumberFieldComponent } from './number-field/number-field.component';
|
|
22
22
|
import { TakTextareaComponent } from './text-area/textarea.component';
|
|
23
23
|
import { MatMenuModule } from '@kato-lee/material/menu';
|
|
24
|
+
import { TakRemoteAutocompleteFieldComponent } from './remote-autocomplete-field/remote-autocomplete-field.component';
|
|
24
25
|
import * as i0 from "@angular/core";
|
|
25
26
|
const components = [
|
|
26
27
|
TakSelectFieldComponent,
|
|
@@ -56,10 +57,12 @@ export class TakFieldsModule {
|
|
|
56
57
|
MatOptionModule,
|
|
57
58
|
MatSelectModule,
|
|
58
59
|
MatTooltipModule,
|
|
59
|
-
MatMenuModule
|
|
60
|
+
MatMenuModule,
|
|
61
|
+
TakRemoteAutocompleteFieldComponent], exports: [ReactiveFormsModule,
|
|
60
62
|
MatAutocompleteModule,
|
|
61
63
|
FormsModule,
|
|
62
|
-
MatNativeDateModule,
|
|
64
|
+
MatNativeDateModule,
|
|
65
|
+
TakRemoteAutocompleteFieldComponent, TakSelectFieldComponent,
|
|
63
66
|
TakDateFieldComponent,
|
|
64
67
|
TakAutocompleteFieldComponent,
|
|
65
68
|
TakDateRangeFieldComponent,
|
|
@@ -82,7 +85,8 @@ export class TakFieldsModule {
|
|
|
82
85
|
MatOptionModule,
|
|
83
86
|
MatSelectModule,
|
|
84
87
|
MatTooltipModule,
|
|
85
|
-
MatMenuModule,
|
|
88
|
+
MatMenuModule,
|
|
89
|
+
TakRemoteAutocompleteFieldComponent, ReactiveFormsModule,
|
|
86
90
|
MatAutocompleteModule,
|
|
87
91
|
FormsModule,
|
|
88
92
|
MatNativeDateModule] }); }
|
|
@@ -108,15 +112,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
108
112
|
MatSelectModule,
|
|
109
113
|
MatTooltipModule,
|
|
110
114
|
MatMenuModule,
|
|
115
|
+
TakRemoteAutocompleteFieldComponent,
|
|
111
116
|
],
|
|
112
117
|
exports: [
|
|
113
118
|
ReactiveFormsModule,
|
|
114
119
|
MatAutocompleteModule,
|
|
115
120
|
FormsModule,
|
|
116
121
|
MatNativeDateModule,
|
|
122
|
+
TakRemoteAutocompleteFieldComponent,
|
|
117
123
|
...components,
|
|
118
124
|
],
|
|
119
125
|
providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],
|
|
120
126
|
}]
|
|
121
127
|
}] });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb21wb25lbnRzL2ZpZWxkcy9maWVsZHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUUxRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLDBC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IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAa2F0by1sZWUvbWF0ZXJpYWwvc2VsZWN0JztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1BVF9EQVRFX0xPQ0FMRSwgTWF0TmF0aXZlRGF0ZU1vZHVsZSwgTWF0T3B0aW9uTW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0BrYXRvLWxlZS9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAa2F0by1sZWUvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAa2F0by1sZWUvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAa2F0by1sZWUvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcblxyXG5pbXBvcnQgeyBUYWtTZWxlY3RGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LWZpZWxkL3NlbGVjdC1maWVsZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWtEYXRlRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2RhdGUtZmllbGQvZGF0ZS1maWVsZC5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgVGFrQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfSBmcm9tICcuL2F1dG9jb21wbGV0ZS1maWVsZC9hdXRvY29tcGxldGUtZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL2F1dG9jb21wbGV0ZSc7XHJcbmltcG9ydCB7IFRha0Vycm9yTW9kdWxlIH0gZnJvbSAnLi9lcnJvci9lcnJvci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBUYWtEYXRlUmFuZ2VGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZGF0ZS1yYW5nZS1maWVsZC9kYXRlLXJhbmdlLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRha01vbmV5RmllbGRDb21wb25lbnQgfSBmcm9tICcuL21vbmV5LWZpZWxkL21vbmV5LWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRha0dlbmVyYWxGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC1maWVsZC9nZW5lcmFsLWZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0BrYXRvLWxlZS9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcclxuaW1wb3J0IHsgVGFrTnVtYmVyRmllbGRDb21wb25lbnQgfSBmcm9tICcuL251bWJlci1maWVsZC9udW1iZXItZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFrVGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYXJlYS90ZXh0YXJlYS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGthdG8tbGVlL21hdGVyaWFsL21lbnUnO1xyXG5pbXBvcnQgeyBUYWtSZW1vdGVBdXRvY29tcGxldGVGaWVsZENvbXBvbmVudCB9IGZyb20gJy4vcmVtb3RlLWF1dG9jb21wbGV0ZS1maWVsZC9yZW1vdGUtYXV0b2NvbXBsZXRlLWZpZWxkLmNvbXBvbmVudCc7XHJcblxyXG5jb25zdCBjb21wb25lbnRzID0gW1xyXG4gIFRha1NlbGVjdEZpZWxkQ29tcG9uZW50LFxyXG4gIFRha0RhdGVGaWVsZENvbXBvbmVudCxcclxuICBUYWtBdXRvY29tcGxldGVGaWVsZENvbXBvbmVudCxcclxuICBUYWtEYXRlUmFuZ2VGaWVsZENvbXBvbmVudCxcclxuICBUYWtHZW5lcmFsRmllbGRDb21wb25lbnQsXHJcbiAgVGFrTW9uZXlGaWVsZENvbXBvbmVudCxcclxuICBUYWtUZXh0YXJlYUNvbXBvbmVudCxcclxuICBUYWtOdW1iZXJGaWVsZENvbXBvbmVudCxcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBjb21wb25lbnRzLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXHJcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxyXG4gICAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxyXG4gICAgVGFrRXJyb3JNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBNYXRPcHRpb25Nb2R1bGUsXHJcbiAgICBNYXRTZWxlY3RNb2R1bGUsXHJcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxyXG4gICAgTWF0TWVudU1vZHVsZSxcclxuICAgIFRha1JlbW90ZUF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50LFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdEF1dG9jb21wbGV0ZU1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgTWF0TmF0aXZlRGF0ZU1vZHVsZSxcclxuICAgIFRha1JlbW90ZUF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50LFxyXG4gICAgLi4uY29tcG9uZW50cyxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLCB1c2VWYWx1ZTogJ2VzLUVTJyB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRha0ZpZWxkc01vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -1385,113 +1385,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
1385
1385
|
type: Output
|
|
1386
1386
|
}] } });
|
|
1387
1387
|
|
|
1388
|
-
const components = [
|
|
1389
|
-
TakSelectFieldComponent,
|
|
1390
|
-
TakDateFieldComponent,
|
|
1391
|
-
TakAutocompleteFieldComponent,
|
|
1392
|
-
TakDateRangeFieldComponent,
|
|
1393
|
-
TakGeneralFieldComponent,
|
|
1394
|
-
TakMoneyFieldComponent,
|
|
1395
|
-
TakTextareaComponent,
|
|
1396
|
-
TakNumberFieldComponent,
|
|
1397
|
-
];
|
|
1398
|
-
class TakFieldsModule {
|
|
1399
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1400
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, declarations: [TakSelectFieldComponent,
|
|
1401
|
-
TakDateFieldComponent,
|
|
1402
|
-
TakAutocompleteFieldComponent,
|
|
1403
|
-
TakDateRangeFieldComponent,
|
|
1404
|
-
TakGeneralFieldComponent,
|
|
1405
|
-
TakMoneyFieldComponent,
|
|
1406
|
-
TakTextareaComponent,
|
|
1407
|
-
TakNumberFieldComponent], imports: [FormsModule,
|
|
1408
|
-
CommonModule,
|
|
1409
|
-
MatNativeDateModule,
|
|
1410
|
-
ReactiveFormsModule,
|
|
1411
|
-
MatProgressSpinnerModule,
|
|
1412
|
-
MatFormFieldModule,
|
|
1413
|
-
MatButtonModule,
|
|
1414
|
-
MatDatepickerModule,
|
|
1415
|
-
MatAutocompleteModule,
|
|
1416
|
-
TakErrorModule,
|
|
1417
|
-
MatIconModule,
|
|
1418
|
-
MatInputModule,
|
|
1419
|
-
MatOptionModule,
|
|
1420
|
-
MatSelectModule,
|
|
1421
|
-
MatTooltipModule,
|
|
1422
|
-
MatMenuModule], exports: [ReactiveFormsModule,
|
|
1423
|
-
MatAutocompleteModule,
|
|
1424
|
-
FormsModule,
|
|
1425
|
-
MatNativeDateModule, TakSelectFieldComponent,
|
|
1426
|
-
TakDateFieldComponent,
|
|
1427
|
-
TakAutocompleteFieldComponent,
|
|
1428
|
-
TakDateRangeFieldComponent,
|
|
1429
|
-
TakGeneralFieldComponent,
|
|
1430
|
-
TakMoneyFieldComponent,
|
|
1431
|
-
TakTextareaComponent,
|
|
1432
|
-
TakNumberFieldComponent] }); }
|
|
1433
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }], imports: [FormsModule,
|
|
1434
|
-
CommonModule,
|
|
1435
|
-
MatNativeDateModule,
|
|
1436
|
-
ReactiveFormsModule,
|
|
1437
|
-
MatProgressSpinnerModule,
|
|
1438
|
-
MatFormFieldModule,
|
|
1439
|
-
MatButtonModule,
|
|
1440
|
-
MatDatepickerModule,
|
|
1441
|
-
MatAutocompleteModule,
|
|
1442
|
-
TakErrorModule,
|
|
1443
|
-
MatIconModule,
|
|
1444
|
-
MatInputModule,
|
|
1445
|
-
MatOptionModule,
|
|
1446
|
-
MatSelectModule,
|
|
1447
|
-
MatTooltipModule,
|
|
1448
|
-
MatMenuModule, ReactiveFormsModule,
|
|
1449
|
-
MatAutocompleteModule,
|
|
1450
|
-
FormsModule,
|
|
1451
|
-
MatNativeDateModule] }); }
|
|
1452
|
-
}
|
|
1453
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, decorators: [{
|
|
1454
|
-
type: NgModule,
|
|
1455
|
-
args: [{
|
|
1456
|
-
declarations: components,
|
|
1457
|
-
imports: [
|
|
1458
|
-
FormsModule,
|
|
1459
|
-
CommonModule,
|
|
1460
|
-
MatNativeDateModule,
|
|
1461
|
-
ReactiveFormsModule,
|
|
1462
|
-
MatProgressSpinnerModule,
|
|
1463
|
-
MatFormFieldModule,
|
|
1464
|
-
MatButtonModule,
|
|
1465
|
-
MatDatepickerModule,
|
|
1466
|
-
MatAutocompleteModule,
|
|
1467
|
-
TakErrorModule,
|
|
1468
|
-
MatIconModule,
|
|
1469
|
-
MatInputModule,
|
|
1470
|
-
MatOptionModule,
|
|
1471
|
-
MatSelectModule,
|
|
1472
|
-
MatTooltipModule,
|
|
1473
|
-
MatMenuModule,
|
|
1474
|
-
],
|
|
1475
|
-
exports: [
|
|
1476
|
-
ReactiveFormsModule,
|
|
1477
|
-
MatAutocompleteModule,
|
|
1478
|
-
FormsModule,
|
|
1479
|
-
MatNativeDateModule,
|
|
1480
|
-
...components,
|
|
1481
|
-
],
|
|
1482
|
-
providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],
|
|
1483
|
-
}]
|
|
1484
|
-
}] });
|
|
1485
|
-
|
|
1486
|
-
const required = Validators.required;
|
|
1487
|
-
const max = (max) => Validators.max(max);
|
|
1488
|
-
const min = (min) => Validators.min(min);
|
|
1489
|
-
const maxLength = (maxLength) => Validators.maxLength(maxLength);
|
|
1490
|
-
const minLength = (minLength) => Validators.minLength(minLength);
|
|
1491
|
-
const withOutSpaces = Validators.pattern(TAK_PTRN_NONSP);
|
|
1492
|
-
const onlyNumber = Validators.pattern(TAK_PTRN_NUMRC);
|
|
1493
|
-
const email = Validators.pattern(TAK_PTRN_EMAIL);
|
|
1494
|
-
|
|
1495
1388
|
class TakRemoteAutocompleteFieldComponent {
|
|
1496
1389
|
constructor(_http, _cd, _toast) {
|
|
1497
1390
|
this._http = _http;
|
|
@@ -1657,6 +1550,118 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
1657
1550
|
type: Output
|
|
1658
1551
|
}] } });
|
|
1659
1552
|
|
|
1553
|
+
const components = [
|
|
1554
|
+
TakSelectFieldComponent,
|
|
1555
|
+
TakDateFieldComponent,
|
|
1556
|
+
TakAutocompleteFieldComponent,
|
|
1557
|
+
TakDateRangeFieldComponent,
|
|
1558
|
+
TakGeneralFieldComponent,
|
|
1559
|
+
TakMoneyFieldComponent,
|
|
1560
|
+
TakTextareaComponent,
|
|
1561
|
+
TakNumberFieldComponent,
|
|
1562
|
+
];
|
|
1563
|
+
class TakFieldsModule {
|
|
1564
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1565
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, declarations: [TakSelectFieldComponent,
|
|
1566
|
+
TakDateFieldComponent,
|
|
1567
|
+
TakAutocompleteFieldComponent,
|
|
1568
|
+
TakDateRangeFieldComponent,
|
|
1569
|
+
TakGeneralFieldComponent,
|
|
1570
|
+
TakMoneyFieldComponent,
|
|
1571
|
+
TakTextareaComponent,
|
|
1572
|
+
TakNumberFieldComponent], imports: [FormsModule,
|
|
1573
|
+
CommonModule,
|
|
1574
|
+
MatNativeDateModule,
|
|
1575
|
+
ReactiveFormsModule,
|
|
1576
|
+
MatProgressSpinnerModule,
|
|
1577
|
+
MatFormFieldModule,
|
|
1578
|
+
MatButtonModule,
|
|
1579
|
+
MatDatepickerModule,
|
|
1580
|
+
MatAutocompleteModule,
|
|
1581
|
+
TakErrorModule,
|
|
1582
|
+
MatIconModule,
|
|
1583
|
+
MatInputModule,
|
|
1584
|
+
MatOptionModule,
|
|
1585
|
+
MatSelectModule,
|
|
1586
|
+
MatTooltipModule,
|
|
1587
|
+
MatMenuModule,
|
|
1588
|
+
TakRemoteAutocompleteFieldComponent], exports: [ReactiveFormsModule,
|
|
1589
|
+
MatAutocompleteModule,
|
|
1590
|
+
FormsModule,
|
|
1591
|
+
MatNativeDateModule,
|
|
1592
|
+
TakRemoteAutocompleteFieldComponent, TakSelectFieldComponent,
|
|
1593
|
+
TakDateFieldComponent,
|
|
1594
|
+
TakAutocompleteFieldComponent,
|
|
1595
|
+
TakDateRangeFieldComponent,
|
|
1596
|
+
TakGeneralFieldComponent,
|
|
1597
|
+
TakMoneyFieldComponent,
|
|
1598
|
+
TakTextareaComponent,
|
|
1599
|
+
TakNumberFieldComponent] }); }
|
|
1600
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }], imports: [FormsModule,
|
|
1601
|
+
CommonModule,
|
|
1602
|
+
MatNativeDateModule,
|
|
1603
|
+
ReactiveFormsModule,
|
|
1604
|
+
MatProgressSpinnerModule,
|
|
1605
|
+
MatFormFieldModule,
|
|
1606
|
+
MatButtonModule,
|
|
1607
|
+
MatDatepickerModule,
|
|
1608
|
+
MatAutocompleteModule,
|
|
1609
|
+
TakErrorModule,
|
|
1610
|
+
MatIconModule,
|
|
1611
|
+
MatInputModule,
|
|
1612
|
+
MatOptionModule,
|
|
1613
|
+
MatSelectModule,
|
|
1614
|
+
MatTooltipModule,
|
|
1615
|
+
MatMenuModule,
|
|
1616
|
+
TakRemoteAutocompleteFieldComponent, ReactiveFormsModule,
|
|
1617
|
+
MatAutocompleteModule,
|
|
1618
|
+
FormsModule,
|
|
1619
|
+
MatNativeDateModule] }); }
|
|
1620
|
+
}
|
|
1621
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: TakFieldsModule, decorators: [{
|
|
1622
|
+
type: NgModule,
|
|
1623
|
+
args: [{
|
|
1624
|
+
declarations: components,
|
|
1625
|
+
imports: [
|
|
1626
|
+
FormsModule,
|
|
1627
|
+
CommonModule,
|
|
1628
|
+
MatNativeDateModule,
|
|
1629
|
+
ReactiveFormsModule,
|
|
1630
|
+
MatProgressSpinnerModule,
|
|
1631
|
+
MatFormFieldModule,
|
|
1632
|
+
MatButtonModule,
|
|
1633
|
+
MatDatepickerModule,
|
|
1634
|
+
MatAutocompleteModule,
|
|
1635
|
+
TakErrorModule,
|
|
1636
|
+
MatIconModule,
|
|
1637
|
+
MatInputModule,
|
|
1638
|
+
MatOptionModule,
|
|
1639
|
+
MatSelectModule,
|
|
1640
|
+
MatTooltipModule,
|
|
1641
|
+
MatMenuModule,
|
|
1642
|
+
TakRemoteAutocompleteFieldComponent,
|
|
1643
|
+
],
|
|
1644
|
+
exports: [
|
|
1645
|
+
ReactiveFormsModule,
|
|
1646
|
+
MatAutocompleteModule,
|
|
1647
|
+
FormsModule,
|
|
1648
|
+
MatNativeDateModule,
|
|
1649
|
+
TakRemoteAutocompleteFieldComponent,
|
|
1650
|
+
...components,
|
|
1651
|
+
],
|
|
1652
|
+
providers: [{ provide: MAT_DATE_LOCALE, useValue: 'es-ES' }],
|
|
1653
|
+
}]
|
|
1654
|
+
}] });
|
|
1655
|
+
|
|
1656
|
+
const required = Validators.required;
|
|
1657
|
+
const max = (max) => Validators.max(max);
|
|
1658
|
+
const min = (min) => Validators.min(min);
|
|
1659
|
+
const maxLength = (maxLength) => Validators.maxLength(maxLength);
|
|
1660
|
+
const minLength = (minLength) => Validators.minLength(minLength);
|
|
1661
|
+
const withOutSpaces = Validators.pattern(TAK_PTRN_NONSP);
|
|
1662
|
+
const onlyNumber = Validators.pattern(TAK_PTRN_NUMRC);
|
|
1663
|
+
const email = Validators.pattern(TAK_PTRN_EMAIL);
|
|
1664
|
+
|
|
1660
1665
|
/*
|
|
1661
1666
|
* Public API Surface of @kato-lee/components/fields
|
|
1662
1667
|
*/
|
|
@@ -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/error.component.ts","../../../libraries/components/fields/error/error.component.html","../../../libraries/components/fields/fields.common.ts","../../../libraries/components/fields/select-field/select-field.component.ts","../../../libraries/components/fields/select-field/select-field.component.html","../../../libraries/components/fields/date-field/date-field.component.ts","../../../libraries/components/fields/date-field/date-field.component.html","../../../libraries/components/fields/autocomplete-field/autocomplete-field.component.ts","../../../libraries/components/fields/autocomplete-field/autocomplete-field.component.html","../../../libraries/components/fields/error/error.module.ts","../../../libraries/components/fields/date-range-field/date-range-field.component.ts","../../../libraries/components/fields/date-range-field/date-range-field.component.html","../../../libraries/components/fields/money-field/money-field.component.ts","../../../libraries/components/fields/money-field/money-field.component.html","../../../libraries/components/fields/general-field/general-field.component.ts","../../../libraries/components/fields/general-field/general-field.component.html","../../../libraries/components/fields/number-field/number-field.component.ts","../../../libraries/components/fields/number-field/number-field.component.html","../../../libraries/components/fields/text-area/textarea.component.ts","../../../libraries/components/fields/text-area/textarea.component.html","../../../libraries/components/fields/fields.module.ts","../../../libraries/components/fields/fields.validators.ts","../../../libraries/components/fields/remote-autocomplete-field/remote-autocomplete-field.component.ts","../../../libraries/components/fields/remote-autocomplete-field/remote-autocomplete-field.component.html","../../../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({ 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({ 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 { ElementRef, Component, ViewChild, Input } from '@angular/core';\r\nimport { FormControl, ValidationErrors } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'tak-error',\r\n templateUrl: './error.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 { ControlValueAccessor, FormControl, FormGroupDirective, NgControl } 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 '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-select-field',\r\n templateUrl: './select-field.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></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 { ThemePalette } from '@kato-lee/material/core';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ControlValueAccessor, FormControl, FormGroupDirective, NgControl } from '@angular/forms';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakAutocompleteFieldType } from '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-date-field',\r\n templateUrl: './date-field.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></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 { ControlValueAccessor, FormGroupDirective, FormControl, NgControl } 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 '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-autocomplete-field',\r\n templateUrl: './autocomplete-field.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></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 { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { TakErrorEqualsPipe } from './error-equals.pipe';\r\nimport { TakErrorMsgPipe } from './error.msg.pipe';\r\nimport { TakErrorComponent } from './error.component';\r\n\r\n@NgModule({\r\n declarations: [TakErrorEqualsPipe, TakErrorMsgPipe, TakErrorComponent],\r\n imports: [FormsModule, CommonModule, ReactiveFormsModule],\r\n exports: [TakErrorComponent],\r\n})\r\nexport class TakErrorModule {}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { TakAutocompleteFieldType, TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-date-range-field',\r\n templateUrl: './date-range-field.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></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} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-money-field',\r\n templateUrl: './money-field.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></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} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakGeneralFieldType } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-general-field',\r\n templateUrl: './general-field.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></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} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-number-field',\r\n templateUrl: './number-field.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></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 { ControlValueAccessor, FormGroupDirective, FormControl, NgControl } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-textarea',\r\n templateUrl: './textarea.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></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 { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { MatSelectModule } from '@kato-lee/material/select';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, MatOptionModule } from '@kato-lee/material/core';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { MatDatepickerModule } from '@kato-lee/material/datepicker';\r\nimport { MatTooltipModule } from '@kato-lee/material/tooltip';\r\n\r\nimport { TakSelectFieldComponent } from './select-field/select-field.component';\r\nimport { TakDateFieldComponent } from './date-field/date-field.component';\r\n\r\nimport { TakAutocompleteFieldComponent } from './autocomplete-field/autocomplete-field.component';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { TakErrorModule } from './error/error.module';\r\nimport { TakDateRangeFieldComponent } from './date-range-field/date-range-field.component';\r\nimport { TakMoneyFieldComponent } from './money-field/money-field.component';\r\nimport { TakGeneralFieldComponent } from './general-field/general-field.component';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { TakNumberFieldComponent } from './number-field/number-field.component';\r\nimport { TakTextareaComponent } from './text-area/textarea.component';\r\nimport { MatMenuModule } from '@kato-lee/material/menu';\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@NgModule({\r\n declarations: components,\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n MatNativeDateModule,\r\n ReactiveFormsModule,\r\n MatProgressSpinnerModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatDatepickerModule,\r\n MatAutocompleteModule,\r\n TakErrorModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatOptionModule,\r\n MatSelectModule,\r\n MatTooltipModule,\r\n MatMenuModule,\r\n ],\r\n exports: [\r\n ReactiveFormsModule,\r\n MatAutocompleteModule,\r\n FormsModule,\r\n MatNativeDateModule,\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 './fields.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","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 '../fields.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: './remote-autocomplete-field.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></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","/*\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/error.component';\r\nexport * from './error/error.msg.pipe';\r\nexport * from './fields.common';\r\nexport * from './fields.module';\r\nexport * from './fields.validators';\r\nexport * from './select-field/select-field.component';\r\nexport * from './date-field/date-field.component';\r\nexport * from './autocomplete-field/autocomplete-field.component';\r\nexport * from './general-field/general-field.component';\r\nexport * from './money-field/money-field.component';\r\nexport * from './text-area/textarea.component';\r\nexport * from './date-range-field/date-range-field.component';\r\nexport * from './number-field/number-field.component';\r\nexport * from './remote-autocomplete-field/remote-autocomplete-field.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["lang.es","i1.TakErrorEqualsPipe","i2.TakErrorMsgPipe","i5.TakErrorComponent","i6","i3","i4.TakErrorComponent","i5","takeUntil","i2","i4","i7.TakErrorComponent","i8","i9","i1","i7","i11"],"mappings":"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"}
|
|
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/error.component.ts","../../../libraries/components/fields/error/error.component.html","../../../libraries/components/fields/fields.common.ts","../../../libraries/components/fields/select-field/select-field.component.ts","../../../libraries/components/fields/select-field/select-field.component.html","../../../libraries/components/fields/date-field/date-field.component.ts","../../../libraries/components/fields/date-field/date-field.component.html","../../../libraries/components/fields/autocomplete-field/autocomplete-field.component.ts","../../../libraries/components/fields/autocomplete-field/autocomplete-field.component.html","../../../libraries/components/fields/error/error.module.ts","../../../libraries/components/fields/date-range-field/date-range-field.component.ts","../../../libraries/components/fields/date-range-field/date-range-field.component.html","../../../libraries/components/fields/money-field/money-field.component.ts","../../../libraries/components/fields/money-field/money-field.component.html","../../../libraries/components/fields/general-field/general-field.component.ts","../../../libraries/components/fields/general-field/general-field.component.html","../../../libraries/components/fields/number-field/number-field.component.ts","../../../libraries/components/fields/number-field/number-field.component.html","../../../libraries/components/fields/text-area/textarea.component.ts","../../../libraries/components/fields/text-area/textarea.component.html","../../../libraries/components/fields/remote-autocomplete-field/remote-autocomplete-field.component.ts","../../../libraries/components/fields/remote-autocomplete-field/remote-autocomplete-field.component.html","../../../libraries/components/fields/fields.module.ts","../../../libraries/components/fields/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({ 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({ 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 { ElementRef, Component, ViewChild, Input } from '@angular/core';\r\nimport { FormControl, ValidationErrors } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'tak-error',\r\n templateUrl: './error.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 { ControlValueAccessor, FormControl, FormGroupDirective, NgControl } 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 '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-select-field',\r\n templateUrl: './select-field.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></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 { ThemePalette } from '@kato-lee/material/core';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ControlValueAccessor, FormControl, FormGroupDirective, NgControl } from '@angular/forms';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakAutocompleteFieldType } from '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-date-field',\r\n templateUrl: './date-field.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></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 { ControlValueAccessor, FormGroupDirective, FormControl, NgControl } 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 '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-autocomplete-field',\r\n templateUrl: './autocomplete-field.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></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 { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { TakErrorEqualsPipe } from './error-equals.pipe';\r\nimport { TakErrorMsgPipe } from './error.msg.pipe';\r\nimport { TakErrorComponent } from './error.component';\r\n\r\n@NgModule({\r\n declarations: [TakErrorEqualsPipe, TakErrorMsgPipe, TakErrorComponent],\r\n imports: [FormsModule, CommonModule, ReactiveFormsModule],\r\n exports: [TakErrorComponent],\r\n})\r\nexport class TakErrorModule {}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\nimport { TakAutocompleteFieldType, TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\n\r\n@Component({\r\n selector: 'tak-date-range-field',\r\n templateUrl: './date-range-field.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></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} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-money-field',\r\n templateUrl: './money-field.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></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} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM, TakGeneralFieldType } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-general-field',\r\n templateUrl: './general-field.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></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} from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-number-field',\r\n templateUrl: './number-field.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></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 { ControlValueAccessor, FormGroupDirective, FormControl, NgControl } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { TAK_DEFAULT_APPEARANCE_FORM } from '../fields.common';\r\nimport { FloatLabelType, MatFormFieldAppearance } from '@kato-lee/material/form-field';\r\nimport { ThemePalette } from '@kato-lee/material/core';\r\n\r\n@Component({\r\n selector: 'tak-textarea',\r\n templateUrl: './textarea.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></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 '../fields.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: './remote-autocomplete-field.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></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 { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\nimport { MatFormFieldModule } from '@kato-lee/material/form-field';\r\nimport { MatSelectModule } from '@kato-lee/material/select';\r\nimport { MatButtonModule } from '@kato-lee/material/button';\r\nimport { MAT_DATE_LOCALE, MatNativeDateModule, MatOptionModule } from '@kato-lee/material/core';\r\nimport { MatInputModule } from '@kato-lee/material/input';\r\nimport { MatIconModule } from '@kato-lee/material/icon';\r\nimport { MatDatepickerModule } from '@kato-lee/material/datepicker';\r\nimport { MatTooltipModule } from '@kato-lee/material/tooltip';\r\n\r\nimport { TakSelectFieldComponent } from './select-field/select-field.component';\r\nimport { TakDateFieldComponent } from './date-field/date-field.component';\r\n\r\nimport { TakAutocompleteFieldComponent } from './autocomplete-field/autocomplete-field.component';\r\nimport { MatAutocompleteModule } from '@kato-lee/material/autocomplete';\r\nimport { TakErrorModule } from './error/error.module';\r\nimport { TakDateRangeFieldComponent } from './date-range-field/date-range-field.component';\r\nimport { TakMoneyFieldComponent } from './money-field/money-field.component';\r\nimport { TakGeneralFieldComponent } from './general-field/general-field.component';\r\nimport { MatProgressSpinnerModule } from '@kato-lee/material/progress-spinner';\r\nimport { TakNumberFieldComponent } from './number-field/number-field.component';\r\nimport { TakTextareaComponent } from './text-area/textarea.component';\r\nimport { MatMenuModule } from '@kato-lee/material/menu';\r\nimport { TakRemoteAutocompleteFieldComponent } from './remote-autocomplete-field/remote-autocomplete-field.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@NgModule({\r\n declarations: components,\r\n imports: [\r\n FormsModule,\r\n CommonModule,\r\n MatNativeDateModule,\r\n ReactiveFormsModule,\r\n MatProgressSpinnerModule,\r\n MatFormFieldModule,\r\n MatButtonModule,\r\n MatDatepickerModule,\r\n MatAutocompleteModule,\r\n TakErrorModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatOptionModule,\r\n MatSelectModule,\r\n MatTooltipModule,\r\n MatMenuModule,\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 './fields.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/error.component';\r\nexport * from './error/error.msg.pipe';\r\nexport * from './fields.common';\r\nexport * from './fields.module';\r\nexport * from './fields.validators';\r\nexport * from './select-field/select-field.component';\r\nexport * from './date-field/date-field.component';\r\nexport * from './autocomplete-field/autocomplete-field.component';\r\nexport * from './general-field/general-field.component';\r\nexport * from './money-field/money-field.component';\r\nexport * from './text-area/textarea.component';\r\nexport * from './date-range-field/date-range-field.component';\r\nexport * from './number-field/number-field.component';\r\nexport * from './remote-autocomplete-field/remote-autocomplete-field.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["lang.es","i1.TakErrorEqualsPipe","i2.TakErrorMsgPipe","i5.TakErrorComponent","i6","i3","i4.TakErrorComponent","i5","takeUntil","i2","i4","i7.TakErrorComponent","i8","i9","i1","i7","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,IAAA,EAAA,aAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAD9B,IAAI;mBAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAA;;;ACFtB,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,IAAA,EAAA,UAAA,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,IAAI;mBAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAA;;;MCIb,iBAAiB,CAAA;AAJ9B,IAAA,WAAA,GAAA;QAaW,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;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,iSCP9B,irDAuDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,IAAA,EAAA,UAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDhDa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;+BACE,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;;;AEjBD,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;;MCMjB,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;AAAvB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,uBAAuB,+VCtBpC,qiDA2CA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,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,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,iBAAA,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,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,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,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,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,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDrBa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,qiDAAA,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;;;MEjBI,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,0PCrBlC,4wEAgEA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,aAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,KAAA,EAAA,KAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,iBAAA,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,WAAA,EAAA,IAAA,EAAAC,EAAA,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;;2FD3Ca,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAJjC,SAAS;+BACE,gBAAgB,EAAA,QAAA,EAAA,4wEAAA,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;;;MEVK,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,CAACC,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;AAA7B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,qdCzB1C,irEA2DA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,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,WAAA,EAAA,IAAA,EAAAJ,EAAA,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,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAK,EAAA,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,WAAA,EAAA,IAAA,EAAAH,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,EAAAH,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,YAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAO,iBAAA,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,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,WAAA,EAAA,IAAA,EAAAC,EAAA,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,MAAA,EAAA,IAAA,EAAA,GAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDlCa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBAJzC,SAAS;+BACE,wBAAwB,EAAA,QAAA,EAAA,irEAAA,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;;;ME/BI,cAAc,CAAA;8GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAd,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,cAAc,EAJV,YAAA,EAAA,CAAA,kBAAkB,EAAE,eAAe,EAAE,iBAAiB,CAC3D,EAAA,OAAA,EAAA,CAAA,WAAW,EAAE,YAAY,EAAE,mBAAmB,aAC9C,iBAAiB,CAAA,EAAA,CAAA,CAAA,EAAA;AAEhB,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,cAAc,EAHf,OAAA,EAAA,CAAA,WAAW,EAAE,YAAY,EAAE,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAG7C,cAAc,EAAA,UAAA,EAAA,CAAA;kBAL1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,CAAC,kBAAkB,EAAE,eAAe,EAAE,iBAAiB,CAAC;AACtE,oBAAA,OAAO,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,mBAAmB,CAAC;oBACzD,OAAO,EAAE,CAAC,iBAAiB,CAAC;AAC7B,iBAAA,CAAA;;;MCDY,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;QAKW,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,gSCVvC,22DA+CA,EAAA,YAAA,EAAA,CAAA,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,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,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAR,IAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,KAAA,EAAA,UAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,UAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,iBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FDrCa,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;+BACE,sBAAsB,EAAA,QAAA,EAAA,22DAAA,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;;;MEKK,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,wfC3BnC,uxDAiDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,WAAA,EAAA,IAAA,EAAAA,iBAAA,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,WAAA,EAAA,IAAA,EAAA,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,WAAA,EAAA,IAAA,EAAA,EAAA,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;;2FDtBa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAJlC,SAAS;+BACE,iBAAiB,EAAA,QAAA,EAAA,uxDAAA,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,wgBC3BrC,4lEAuDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,WAAA,EAAA,IAAA,EAAAA,iBAAA,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,WAAA,EAAA,IAAA,EAAA,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,WAAA,EAAA,IAAA,EAAA,EAAA,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;;2FD5Ba,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,SAAS;+BACE,mBAAmB,EAAA,QAAA,EAAA,4lEAAA,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,ueC3BpC,sxDAkDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,WAAA,EAAA,IAAA,EAAAA,iBAAA,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,WAAA,EAAA,IAAA,EAAA,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,WAAA,EAAA,IAAA,EAAA,EAAA,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;;2FDvBa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,sxDAAA,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;;;ME5BI,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,yiBCrBjC,uvDAgDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,WAAA,EAAA,IAAA,EAAAA,iBAAA,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,WAAA,EAAA,IAAA,EAAA,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,WAAA,EAAA,IAAA,EAAA,EAAA,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;;2FD3Ba,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;+BACE,cAAc,EAAA,QAAA,EAAA,uvDAAA,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;;;MEmBI,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,CAACE,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,EAAAM,IAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAL,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,osFA4EA,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,EAAAJ,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,EAAAE,EAAA,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,EAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAElB,cAAc,EACd,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,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,EAAAQ,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,EAAAH,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,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,EAAA,eAAe,0VACf,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAG,GAAA,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,osFAAA,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;;;AEzCT,MAAM,UAAU,GAAG;IACjB,uBAAuB;IACvB,qBAAqB;IACrB,6BAA6B;IAC7B,0BAA0B;IAC1B,wBAAwB;IACxB,sBAAsB;IACtB,oBAAoB;IACpB,uBAAuB;CACxB,CAAC;MAiCW,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,iBAzC1B,uBAAuB;YACvB,qBAAqB;YACrB,6BAA6B;YAC7B,0BAA0B;YAC1B,wBAAwB;YACxB,sBAAsB;YACtB,oBAAoB;AACpB,YAAA,uBAAuB,aAMrB,WAAW;YACX,YAAY;YACZ,mBAAmB;YACnB,mBAAmB;YACnB,wBAAwB;YACxB,kBAAkB;YAClB,eAAe;YACf,mBAAmB;YACnB,qBAAqB;YACrB,cAAc;YACd,aAAa;YACb,cAAc;YACd,eAAe;YACf,eAAe;YACf,gBAAgB;YAChB,aAAa;AACb,YAAA,mCAAmC,aAGnC,mBAAmB;YACnB,qBAAqB;YACrB,WAAW;YACX,mBAAmB;AACnB,YAAA,mCAAmC,EApCrC,uBAAuB;YACvB,qBAAqB;YACrB,6BAA6B;YAC7B,0BAA0B;YAC1B,wBAAwB;YACxB,sBAAsB;YACtB,oBAAoB;YACpB,uBAAuB,CAAA,EAAA,CAAA,CAAA,EAAA;AAkCZ,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,YA1B1D,WAAW;YACX,YAAY;YACZ,mBAAmB;YACnB,mBAAmB;YACnB,wBAAwB;YACxB,kBAAkB;YAClB,eAAe;YACf,mBAAmB;YACnB,qBAAqB;YACrB,cAAc;YACd,aAAa;YACb,cAAc;YACd,eAAe;YACf,eAAe;YACf,gBAAgB;YAChB,aAAa;AACb,YAAA,mCAAmC,EAGnC,mBAAmB;YACnB,qBAAqB;YACrB,WAAW;YACX,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAMV,eAAe,EAAA,UAAA,EAAA,CAAA;kBA/B3B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,UAAU;AACxB,oBAAA,OAAO,EAAE;wBACP,WAAW;wBACX,YAAY;wBACZ,mBAAmB;wBACnB,mBAAmB;wBACnB,wBAAwB;wBACxB,kBAAkB;wBAClB,eAAe;wBACf,mBAAmB;wBACnB,qBAAqB;wBACrB,cAAc;wBACd,aAAa;wBACb,cAAc;wBACd,eAAe;wBACf,eAAe;wBACf,gBAAgB;wBAChB,aAAa;wBACb,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;;;AClEY,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;;;;"}
|
|
@@ -21,8 +21,9 @@ import * as i19 from "@kato-lee/material/input";
|
|
|
21
21
|
import * as i20 from "@kato-lee/material/select";
|
|
22
22
|
import * as i21 from "@kato-lee/material/tooltip";
|
|
23
23
|
import * as i22 from "@kato-lee/material/menu";
|
|
24
|
+
import * as i23 from "./remote-autocomplete-field/remote-autocomplete-field.component";
|
|
24
25
|
export declare class TakFieldsModule {
|
|
25
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<TakFieldsModule, never>;
|
|
26
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<TakFieldsModule, [typeof i1.TakSelectFieldComponent, typeof i2.TakDateFieldComponent, typeof i3.TakAutocompleteFieldComponent, typeof i4.TakDateRangeFieldComponent, typeof i5.TakGeneralFieldComponent, typeof i6.TakMoneyFieldComponent, typeof i7.TakTextareaComponent, typeof i8.TakNumberFieldComponent], [typeof i9.FormsModule, typeof i10.CommonModule, typeof i11.MatNativeDateModule, typeof i9.ReactiveFormsModule, typeof i12.MatProgressSpinnerModule, typeof i13.MatFormFieldModule, typeof i14.MatButtonModule, typeof i15.MatDatepickerModule, typeof i16.MatAutocompleteModule, typeof i17.TakErrorModule, typeof i18.MatIconModule, typeof i19.MatInputModule, typeof i11.MatOptionModule, typeof i20.MatSelectModule, typeof i21.MatTooltipModule, typeof i22.MatMenuModule], [typeof i9.ReactiveFormsModule, typeof i16.MatAutocompleteModule, typeof i9.FormsModule, typeof i11.MatNativeDateModule, typeof i1.TakSelectFieldComponent, typeof i2.TakDateFieldComponent, typeof i3.TakAutocompleteFieldComponent, typeof i4.TakDateRangeFieldComponent, typeof i5.TakGeneralFieldComponent, typeof i6.TakMoneyFieldComponent, typeof i7.TakTextareaComponent, typeof i8.TakNumberFieldComponent]>;
|
|
27
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<TakFieldsModule, [typeof i1.TakSelectFieldComponent, typeof i2.TakDateFieldComponent, typeof i3.TakAutocompleteFieldComponent, typeof i4.TakDateRangeFieldComponent, typeof i5.TakGeneralFieldComponent, typeof i6.TakMoneyFieldComponent, typeof i7.TakTextareaComponent, typeof i8.TakNumberFieldComponent], [typeof i9.FormsModule, typeof i10.CommonModule, typeof i11.MatNativeDateModule, typeof i9.ReactiveFormsModule, typeof i12.MatProgressSpinnerModule, typeof i13.MatFormFieldModule, typeof i14.MatButtonModule, typeof i15.MatDatepickerModule, typeof i16.MatAutocompleteModule, typeof i17.TakErrorModule, typeof i18.MatIconModule, typeof i19.MatInputModule, typeof i11.MatOptionModule, typeof i20.MatSelectModule, typeof i21.MatTooltipModule, typeof i22.MatMenuModule, typeof i23.TakRemoteAutocompleteFieldComponent], [typeof i9.ReactiveFormsModule, typeof i16.MatAutocompleteModule, typeof i9.FormsModule, typeof i11.MatNativeDateModule, typeof i23.TakRemoteAutocompleteFieldComponent, typeof i1.TakSelectFieldComponent, typeof i2.TakDateFieldComponent, typeof i3.TakAutocompleteFieldComponent, typeof i4.TakDateRangeFieldComponent, typeof i5.TakGeneralFieldComponent, typeof i6.TakMoneyFieldComponent, typeof i7.TakTextareaComponent, typeof i8.TakNumberFieldComponent]>;
|
|
27
28
|
static ɵinj: i0.ɵɵInjectorDeclaration<TakFieldsModule>;
|
|
28
29
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kato-lee/components",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"@kato-lee/cdk": "^14.2.7",
|
|
6
6
|
"@kato-lee/material": "^14.2.7"
|
|
@@ -18,23 +18,17 @@
|
|
|
18
18
|
"esm": "./esm2022/kato-lee-components.mjs",
|
|
19
19
|
"default": "./fesm2022/kato-lee-components.mjs"
|
|
20
20
|
},
|
|
21
|
-
"./capsule": {
|
|
22
|
-
"types": "./capsule/index.d.ts",
|
|
23
|
-
"esm2022": "./esm2022/capsule/kato-lee-components-capsule.mjs",
|
|
24
|
-
"esm": "./esm2022/capsule/kato-lee-components-capsule.mjs",
|
|
25
|
-
"default": "./fesm2022/kato-lee-components-capsule.mjs"
|
|
26
|
-
},
|
|
27
21
|
"./box-form": {
|
|
28
22
|
"types": "./box-form/index.d.ts",
|
|
29
23
|
"esm2022": "./esm2022/box-form/kato-lee-components-box-form.mjs",
|
|
30
24
|
"esm": "./esm2022/box-form/kato-lee-components-box-form.mjs",
|
|
31
25
|
"default": "./fesm2022/kato-lee-components-box-form.mjs"
|
|
32
26
|
},
|
|
33
|
-
"./
|
|
34
|
-
"types": "./
|
|
35
|
-
"esm2022": "./esm2022/
|
|
36
|
-
"esm": "./esm2022/
|
|
37
|
-
"default": "./fesm2022/kato-lee-components-
|
|
27
|
+
"./capsule": {
|
|
28
|
+
"types": "./capsule/index.d.ts",
|
|
29
|
+
"esm2022": "./esm2022/capsule/kato-lee-components-capsule.mjs",
|
|
30
|
+
"esm": "./esm2022/capsule/kato-lee-components-capsule.mjs",
|
|
31
|
+
"default": "./fesm2022/kato-lee-components-capsule.mjs"
|
|
38
32
|
},
|
|
39
33
|
"./cards": {
|
|
40
34
|
"types": "./cards/index.d.ts",
|
|
@@ -42,6 +36,12 @@
|
|
|
42
36
|
"esm": "./esm2022/cards/kato-lee-components-cards.mjs",
|
|
43
37
|
"default": "./fesm2022/kato-lee-components-cards.mjs"
|
|
44
38
|
},
|
|
39
|
+
"./dialogs": {
|
|
40
|
+
"types": "./dialogs/index.d.ts",
|
|
41
|
+
"esm2022": "./esm2022/dialogs/kato-lee-components-dialogs.mjs",
|
|
42
|
+
"esm": "./esm2022/dialogs/kato-lee-components-dialogs.mjs",
|
|
43
|
+
"default": "./fesm2022/kato-lee-components-dialogs.mjs"
|
|
44
|
+
},
|
|
45
45
|
"./fields": {
|
|
46
46
|
"types": "./fields/index.d.ts",
|
|
47
47
|
"esm2022": "./esm2022/fields/kato-lee-components-fields.mjs",
|
|
@@ -54,18 +54,18 @@
|
|
|
54
54
|
"esm": "./esm2022/modal/kato-lee-components-modal.mjs",
|
|
55
55
|
"default": "./fesm2022/kato-lee-components-modal.mjs"
|
|
56
56
|
},
|
|
57
|
-
"./tables": {
|
|
58
|
-
"types": "./tables/index.d.ts",
|
|
59
|
-
"esm2022": "./esm2022/tables/kato-lee-components-tables.mjs",
|
|
60
|
-
"esm": "./esm2022/tables/kato-lee-components-tables.mjs",
|
|
61
|
-
"default": "./fesm2022/kato-lee-components-tables.mjs"
|
|
62
|
-
},
|
|
63
57
|
"./pretty-box": {
|
|
64
58
|
"types": "./pretty-box/index.d.ts",
|
|
65
59
|
"esm2022": "./esm2022/pretty-box/kato-lee-components-pretty-box.mjs",
|
|
66
60
|
"esm": "./esm2022/pretty-box/kato-lee-components-pretty-box.mjs",
|
|
67
61
|
"default": "./fesm2022/kato-lee-components-pretty-box.mjs"
|
|
68
62
|
},
|
|
63
|
+
"./tables": {
|
|
64
|
+
"types": "./tables/index.d.ts",
|
|
65
|
+
"esm2022": "./esm2022/tables/kato-lee-components-tables.mjs",
|
|
66
|
+
"esm": "./esm2022/tables/kato-lee-components-tables.mjs",
|
|
67
|
+
"default": "./fesm2022/kato-lee-components-tables.mjs"
|
|
68
|
+
},
|
|
69
69
|
"./toast": {
|
|
70
70
|
"types": "./toast/index.d.ts",
|
|
71
71
|
"esm2022": "./esm2022/toast/kato-lee-components-toast.mjs",
|
|
@@ -78,5 +78,5 @@
|
|
|
78
78
|
"esm": "./esm2022/layouts/origin/kato-lee-components-layouts-origin.mjs",
|
|
79
79
|
"default": "./fesm2022/kato-lee-components-layouts-origin.mjs"
|
|
80
80
|
}
|
|
81
|
-
}
|
|
81
|
+
}
|
|
82
82
|
}
|