@muraai/mnl-form 0.0.1-alpha-32ca3fa → 0.0.1-alpha-11e96eb
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/fesm2022/muraai-mnl-form.mjs +152 -145
- package/fesm2022/muraai-mnl-form.mjs.map +1 -1
- package/lib/{formly-lib/formly-lib.component.d.ts → mnl-form/mnl-form.component.d.ts} +3 -3
- package/lib/types/upload-file.d.ts +1 -1
- package/lib/workflow-status/ workflow-status.module.d.ts +8 -8
- package/lib/workflow-status/workflow-status.component.d.ts +1 -1
- package/package.json +4 -5
- package/public-api.d.ts +2 -2
- package/esm2022/lib/confirmation-dialog/confirmation-dialog.component.mjs +0 -34
- package/esm2022/lib/formly-lib/formly-lib.component.mjs +0 -199
- package/esm2022/lib/formly-lib/formly-standalone.module.mjs +0 -155
- package/esm2022/lib/models/custom-form-field.model.mjs +0 -2
- package/esm2022/lib/models/workflow-status.model.mjs +0 -2
- package/esm2022/lib/services/graphql.service.mjs +0 -30
- package/esm2022/lib/services/scoring.service.mjs +0 -103
- package/esm2022/lib/types/action-button-renderer.component.mjs +0 -59
- package/esm2022/lib/types/autocomplete-type.component.mjs +0 -68
- package/esm2022/lib/types/button.type.mjs +0 -72
- package/esm2022/lib/types/comments.type.mjs +0 -102
- package/esm2022/lib/types/country-code-input.type.mjs +0 -181
- package/esm2022/lib/types/custom-date.type.mjs +0 -20
- package/esm2022/lib/types/custom-input.component.mjs +0 -62
- package/esm2022/lib/types/date-format.type.mjs +0 -196
- package/esm2022/lib/types/expansion-panel.types.mjs +0 -85
- package/esm2022/lib/types/formly-field-panel.type.mjs +0 -70
- package/esm2022/lib/types/grid-actionable.type.mjs +0 -197
- package/esm2022/lib/types/grid-formly-cell.component.mjs +0 -42
- package/esm2022/lib/types/grid.type.mjs +0 -125
- package/esm2022/lib/types/input.type.mjs +0 -43
- package/esm2022/lib/types/mu-helper-text.type.mjs +0 -331
- package/esm2022/lib/types/multi-select-autocomplete.mjs +0 -139
- package/esm2022/lib/types/multi-select-checkbox.component.mjs +0 -247
- package/esm2022/lib/types/radio.type.mjs +0 -71
- package/esm2022/lib/types/scrollable-tabs.types.mjs +0 -220
- package/esm2022/lib/types/select-api-auto-complete.component.mjs +0 -111
- package/esm2022/lib/types/select-autocomplete-redefined.component.mjs +0 -142
- package/esm2022/lib/types/select-autocomplete.type.mjs +0 -254
- package/esm2022/lib/types/stepper.type.mjs +0 -268
- package/esm2022/lib/types/table.types.mjs +0 -79
- package/esm2022/lib/types/tabs.types.mjs +0 -293
- package/esm2022/lib/types/tabular-form-dialog.component.mjs +0 -331
- package/esm2022/lib/types/tabular-form.type.mjs +0 -641
- package/esm2022/lib/types/upload-file.mjs +0 -524
- package/esm2022/lib/types/view-file-dialog.component.mjs +0 -90
- package/esm2022/lib/utils/formly.utils.mjs +0 -105
- package/esm2022/lib/validators/custom-email-validator.mjs +0 -18
- package/esm2022/lib/validators/ein-validators.mjs +0 -11
- package/esm2022/lib/validators/gst-validator.mjs +0 -11
- package/esm2022/lib/validators/normal-email-validator.mjs +0 -17
- package/esm2022/lib/validators/npi-validator.mjs +0 -11
- package/esm2022/lib/validators/pan-validator.mjs +0 -11
- package/esm2022/lib/validators/phone-number-validator.mjs +0 -22
- package/esm2022/lib/validators/select-validator.mjs +0 -7
- package/esm2022/lib/validators/tinSsn-validator.mjs +0 -12
- package/esm2022/lib/workflow-status/ workflow-status.module.mjs +0 -52
- package/esm2022/lib/workflow-status/workflow-status.component.mjs +0 -70
- package/esm2022/lib/wrappers/form-field-description-wrapper.component.mjs +0 -44
- package/esm2022/lib/wrappers/form-field-wrapper.component.mjs +0 -34
- package/esm2022/lib/wrappers/formly-wrapper-with-old-value.component.mjs +0 -140
- package/esm2022/lib/wrappers/prefix-suffix-wrapper.component.mjs +0 -95
- package/esm2022/lib/wrappers/prefix-sufix-extension.component.mjs +0 -9
- package/esm2022/muraai-mnl-form.mjs +0 -5
- package/esm2022/public-api.mjs +0 -12
- /package/lib/{formly-lib/formly-standalone.module.d.ts → mnl-form/mnl-form-standalone.module.d.ts} +0 -0
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component, ViewEncapsulation } from '@angular/core';
|
|
3
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
4
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
-
import { FieldType } from '@ngx-formly/core';
|
|
6
|
-
import { FormlyMaterialModule } from '@ngx-formly/material';
|
|
7
|
-
import { FormlyModule } from '@ngx-formly/core';
|
|
8
|
-
import { MatCardModule } from '@angular/material/card';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@ngx-formly/core";
|
|
11
|
-
import * as i2 from "@angular/common";
|
|
12
|
-
import * as i3 from "@angular/material/card";
|
|
13
|
-
export class FormlyFieldPanelComponent extends FieldType {
|
|
14
|
-
constructor() {
|
|
15
|
-
super(...arguments);
|
|
16
|
-
this.field = {};
|
|
17
|
-
}
|
|
18
|
-
isValid(field) {
|
|
19
|
-
if (field.key) {
|
|
20
|
-
return field?.formControl?.valid || true;
|
|
21
|
-
}
|
|
22
|
-
return field.fieldGroup ? field.fieldGroup.every((fieldItem) => this.isValid(fieldItem)) : true;
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormlyFieldPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: FormlyFieldPanelComponent, isStandalone: true, selector: "mu-formly-field-panel", usesInheritance: true, ngImport: i0, template: `
|
|
26
|
-
<mat-card>
|
|
27
|
-
<mat-card-header [ngClass]="[field?.props?.backgroundColor, 'flex', 'flex-col', 'pb-1']">
|
|
28
|
-
<div>{{field?.props?.label}}</div>
|
|
29
|
-
<div class="text-xs">{{field?.props?.description ?? ''}}</div>
|
|
30
|
-
</mat-card-header>
|
|
31
|
-
|
|
32
|
-
<mat-card-content>
|
|
33
|
-
@for(fieldItem of field?.fieldGroup; track fieldItem) {
|
|
34
|
-
<formly-field [field]="fieldItem"></formly-field>
|
|
35
|
-
}
|
|
36
|
-
</mat-card-content>
|
|
37
|
-
</mat-card>
|
|
38
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: FormlyMaterialModule }, { kind: "ngmodule", type: FormlyModule }, { kind: "component", type: i1.FormlyField, selector: "formly-field", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i3.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i3.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i3.MatCardHeader, selector: "mat-card-header" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
39
|
-
}
|
|
40
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormlyFieldPanelComponent, decorators: [{
|
|
41
|
-
type: Component,
|
|
42
|
-
args: [{
|
|
43
|
-
selector: 'mu-formly-field-panel',
|
|
44
|
-
standalone: true,
|
|
45
|
-
encapsulation: ViewEncapsulation.None,
|
|
46
|
-
imports: [
|
|
47
|
-
MatFormFieldModule,
|
|
48
|
-
MatIconModule,
|
|
49
|
-
FormlyMaterialModule,
|
|
50
|
-
FormlyModule,
|
|
51
|
-
CommonModule,
|
|
52
|
-
MatCardModule
|
|
53
|
-
],
|
|
54
|
-
template: `
|
|
55
|
-
<mat-card>
|
|
56
|
-
<mat-card-header [ngClass]="[field?.props?.backgroundColor, 'flex', 'flex-col', 'pb-1']">
|
|
57
|
-
<div>{{field?.props?.label}}</div>
|
|
58
|
-
<div class="text-xs">{{field?.props?.description ?? ''}}</div>
|
|
59
|
-
</mat-card-header>
|
|
60
|
-
|
|
61
|
-
<mat-card-content>
|
|
62
|
-
@for(fieldItem of field?.fieldGroup; track fieldItem) {
|
|
63
|
-
<formly-field [field]="fieldItem"></formly-field>
|
|
64
|
-
}
|
|
65
|
-
</mat-card-content>
|
|
66
|
-
</mat-card>
|
|
67
|
-
`
|
|
68
|
-
}]
|
|
69
|
-
}] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LWZpZWxkLXBhbmVsLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLWxpYi9zcmMvbGliL3R5cGVzL2Zvcm1seS1maWVsZC1wYW5lbC50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGtCQUFrQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBOEJ2RCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsU0FBUztJQTVCeEQ7O1FBNkJXLFVBQUssR0FBUSxFQUFFLENBQUM7S0FTMUI7SUFQQyxPQUFPLENBQUMsS0FBd0I7UUFDOUIsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDZCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQztRQUMzQyxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDbEcsQ0FBQzsrR0FUVSx5QkFBeUI7bUdBQXpCLHlCQUF5Qix3R0FoQjFCOzs7Ozs7Ozs7Ozs7O09BYUwsMkRBcEJILGtCQUFrQiw4QkFDbEIsYUFBYSw4QkFDYixvQkFBb0IsOEJBQ3BCLFlBQVksd0hBQ1osWUFBWSw0SEFDWixhQUFhOzs0RkFrQkoseUJBQXlCO2tCQTVCckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7b0JBQ3JDLE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2Isb0JBQW9CO3dCQUNwQixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osYUFBYTtxQkFDZDtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7T0FhTDtpQkFDTiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IEZvcm1seU1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwnO1xuaW1wb3J0IHsgRm9ybWx5TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBNYXRDYXJkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2FyZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ211LWZvcm1seS1maWVsZC1wYW5lbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBGb3JtbHlNYXRlcmlhbE1vZHVsZSxcbiAgICBGb3JtbHlNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdENhcmRNb2R1bGVcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bWF0LWNhcmQ+XG4gICAgICAgIDxtYXQtY2FyZC1oZWFkZXIgW25nQ2xhc3NdPVwiW2ZpZWxkPy5wcm9wcz8uYmFja2dyb3VuZENvbG9yLCAnZmxleCcsICdmbGV4LWNvbCcsICdwYi0xJ11cIj5cbiAgICAgICAgICA8ZGl2Pnt7ZmllbGQ/LnByb3BzPy5sYWJlbH19PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQteHNcIj57e2ZpZWxkPy5wcm9wcz8uZGVzY3JpcHRpb24gPz8gJyd9fTwvZGl2PlxuICAgICAgICA8L21hdC1jYXJkLWhlYWRlcj5cblxuICAgICAgICA8bWF0LWNhcmQtY29udGVudD5cbiAgICAgICAgICBAZm9yKGZpZWxkSXRlbSBvZiBmaWVsZD8uZmllbGRHcm91cDsgdHJhY2sgZmllbGRJdGVtKSB7XG4gICAgICAgICAgICA8Zm9ybWx5LWZpZWxkIFtmaWVsZF09XCJmaWVsZEl0ZW1cIj48L2Zvcm1seS1maWVsZD5cbiAgICAgICAgICB9XG4gICAgICAgIDwvbWF0LWNhcmQtY29udGVudD5cbiAgICAgIDwvbWF0LWNhcmQ+XG4gICAgICBgXG59KVxuXG5leHBvcnQgY2xhc3MgRm9ybWx5RmllbGRQYW5lbENvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZSB7XG4gIG92ZXJyaWRlIGZpZWxkOiBhbnkgPSB7fTtcblxuICBpc1ZhbGlkKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZyk6IGJvb2xlYW4ge1xuICAgIGlmIChmaWVsZC5rZXkpIHtcbiAgICAgIHJldHVybiBmaWVsZD8uZm9ybUNvbnRyb2w/LnZhbGlkIHx8IHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpZWxkLmZpZWxkR3JvdXAgPyBmaWVsZC5maWVsZEdyb3VwLmV2ZXJ5KChmaWVsZEl0ZW0pID0+IHRoaXMuaXNWYWxpZChmaWVsZEl0ZW0pKSA6IHRydWU7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { FieldArrayType } from '@ngx-formly/core';
|
|
3
|
-
import { GridFormlyCellComponent } from './grid-formly-cell.component';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { AgGridModule } from 'ag-grid-angular';
|
|
6
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
7
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
8
|
-
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
9
|
-
import { ActionButtonRendererComponent } from './action-button-renderer.component';
|
|
10
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
11
|
-
import { MatDialogModule } from '@angular/material/dialog';
|
|
12
|
-
import { ConfirmationDialogComponent } from '../confirmation-dialog/confirmation-dialog.component';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@ngx-translate/core";
|
|
15
|
-
import * as i2 from "@angular/material/dialog";
|
|
16
|
-
import * as i3 from "@angular/common";
|
|
17
|
-
import * as i4 from "ag-grid-angular";
|
|
18
|
-
import * as i5 from "@angular/material/icon";
|
|
19
|
-
import * as i6 from "@angular/material/tooltip";
|
|
20
|
-
import * as i7 from "@angular/material/button";
|
|
21
|
-
` `;
|
|
22
|
-
export class ActionableFormlyFieldGridComponent extends FieldArrayType {
|
|
23
|
-
constructor(translateService, dialog) {
|
|
24
|
-
super();
|
|
25
|
-
this.translateService = translateService;
|
|
26
|
-
this.dialog = dialog;
|
|
27
|
-
this.style = {};
|
|
28
|
-
this.selectedRow = null;
|
|
29
|
-
this.hideButton = false;
|
|
30
|
-
this.gridHeight = 'auto';
|
|
31
|
-
this.maxVisibleRows = 5;
|
|
32
|
-
this.onRowDataUpdated = () => {
|
|
33
|
-
if (this.gridApi) {
|
|
34
|
-
this.adjustGridHeight();
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
ngOnInit() {
|
|
39
|
-
this.maxVisibleRows = this.field?.props?.['maxVisibleRows'] || 5;
|
|
40
|
-
if (this.field?.props?.['enabledForRoles']) {
|
|
41
|
-
this.hideButton = !this.options.formState?.userRoles?.some((role) => this.field?.props?.['enabledForRoles']?.includes(role));
|
|
42
|
-
}
|
|
43
|
-
this.style = {
|
|
44
|
-
width: this.props?.['width'],
|
|
45
|
-
height: this.props?.['height'],
|
|
46
|
-
};
|
|
47
|
-
this.props['gridOptions'].columnDefs.forEach((column) => {
|
|
48
|
-
column.minWidth = column.minWidth ?? 240;
|
|
49
|
-
column.cellRenderer = GridFormlyCellComponent;
|
|
50
|
-
column.headerName = this.translateService.instant(column.headerName || '');
|
|
51
|
-
});
|
|
52
|
-
let columnDefs = this.props['gridOptions'].columnDefs;
|
|
53
|
-
columnDefs = [
|
|
54
|
-
{
|
|
55
|
-
headerName: this.translateService.instant('Actions'),
|
|
56
|
-
field: 'delete',
|
|
57
|
-
minWidth: 100,
|
|
58
|
-
maxWidth: 120,
|
|
59
|
-
cellRenderer: ActionButtonRendererComponent,
|
|
60
|
-
cellRendererParams: {
|
|
61
|
-
onDelete: (rowNode) => this.deleteRow(rowNode),
|
|
62
|
-
disableButton: this.hideButton
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
...columnDefs
|
|
66
|
-
];
|
|
67
|
-
this.gridOptions = {
|
|
68
|
-
...this.props['gridOptions'],
|
|
69
|
-
domLayout: 'normal',
|
|
70
|
-
columnDefs: columnDefs,
|
|
71
|
-
onRowDataUpdated: this.onRowDataUpdated,
|
|
72
|
-
context: {
|
|
73
|
-
parentField: this.field,
|
|
74
|
-
onDelete: this.deleteRow.bind(this)
|
|
75
|
-
},
|
|
76
|
-
suppressMovableColumns: true
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
onGridReady(params) {
|
|
80
|
-
this.gridApi = params.api;
|
|
81
|
-
this.adjustGridHeight();
|
|
82
|
-
}
|
|
83
|
-
onFirstDataRendered(params) {
|
|
84
|
-
params.api.sizeColumnsToFit();
|
|
85
|
-
this.options.formState.gridActionableData = this.model;
|
|
86
|
-
}
|
|
87
|
-
onRowClicked(event) {
|
|
88
|
-
this.selectedRow = event.node;
|
|
89
|
-
}
|
|
90
|
-
addRow() {
|
|
91
|
-
const newRow = { id: this.generateRandomNumber() };
|
|
92
|
-
this.add();
|
|
93
|
-
this.gridApi.applyTransaction({ add: [newRow] });
|
|
94
|
-
this.adjustGridHeight();
|
|
95
|
-
}
|
|
96
|
-
adjustGridHeight() {
|
|
97
|
-
const rowCount = this.gridApi.getDisplayedRowCount();
|
|
98
|
-
const rowHeight = this.gridOptions?.rowHeight || 60;
|
|
99
|
-
if (rowCount === 0) {
|
|
100
|
-
this.gridHeight = '70px';
|
|
101
|
-
}
|
|
102
|
-
else if (rowCount <= this.maxVisibleRows) {
|
|
103
|
-
this.gridHeight = `${rowCount * rowHeight + 40}px`;
|
|
104
|
-
}
|
|
105
|
-
else {
|
|
106
|
-
this.gridHeight = `${this.maxVisibleRows * rowHeight + 40}px`;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
deleteRow(rowNode) {
|
|
110
|
-
const dialog = this.dialog.open(ConfirmationDialogComponent, {
|
|
111
|
-
width: '50%',
|
|
112
|
-
height: '28%',
|
|
113
|
-
data: { title: 'Are you sure to delete?' }
|
|
114
|
-
});
|
|
115
|
-
dialog.afterClosed().subscribe((res) => {
|
|
116
|
-
if (res) {
|
|
117
|
-
if (rowNode && rowNode.id !== null) {
|
|
118
|
-
const rowIndex = rowNode.rowIndex;
|
|
119
|
-
if (rowIndex !== null && rowIndex >= 0) {
|
|
120
|
-
this.remove(rowIndex);
|
|
121
|
-
}
|
|
122
|
-
this.gridApi.applyTransaction({ remove: [rowNode.data] });
|
|
123
|
-
this.adjustGridHeight();
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
console.error('Row not found or invalid:', rowNode);
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
generateRandomNumber() {
|
|
132
|
-
return Math.floor(1000 + Math.random() * 9000);
|
|
133
|
-
}
|
|
134
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ActionableFormlyFieldGridComponent, deps: [{ token: i1.TranslateService }, { token: i2.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
135
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ActionableFormlyFieldGridComponent, isStandalone: true, selector: "mu-editable-formly-field-grid", usesInheritance: true, ngImport: i0, template: `
|
|
136
|
-
<div [ngStyle]="style" >
|
|
137
|
-
@if (!hideButton) {
|
|
138
|
-
<div class="mb-2 flex justify-start items-center">
|
|
139
|
-
<button
|
|
140
|
-
type="button"
|
|
141
|
-
(click)="addRow()"
|
|
142
|
-
matTooltip="{{ (field['props']['addButtonTooltip'] || 'ADD_ROW') | translate}}"
|
|
143
|
-
mat-button
|
|
144
|
-
>
|
|
145
|
-
<mat-icon>add</mat-icon>
|
|
146
|
-
<span>{{field.props['addBtnLabel'] | translate}}</span>
|
|
147
|
-
</button>
|
|
148
|
-
</div>
|
|
149
|
-
}
|
|
150
|
-
<ag-grid-angular
|
|
151
|
-
style="width: 100%;"
|
|
152
|
-
class="className"
|
|
153
|
-
[gridOptions]="gridOptions"
|
|
154
|
-
[rowData]="model"
|
|
155
|
-
[style.height]="gridHeight"
|
|
156
|
-
domLayout="normal"
|
|
157
|
-
(firstDataRendered)="onFirstDataRendered($event)"
|
|
158
|
-
(gridReady)="onGridReady($event)"
|
|
159
|
-
(rowClicked)="onRowClicked($event)"
|
|
160
|
-
>
|
|
161
|
-
</ag-grid-angular>
|
|
162
|
-
</div>
|
|
163
|
-
`, isInline: true, styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i4.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipShowMode", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "enableStrictPivotColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressMoveWhenColumnDragging", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "applyQuickFilterBeforePivotOrAgg", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "suppressAdvancedFilterEval", "suppressSetFilterByDefault", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "chartToolPanelsDef", "chartMenuItems", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "dragAndDropImageComponent", "dragAndDropImageComponentParams", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "loading", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotMaxGeneratedColumns", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupTotalRow", "grandTotalRow", "suppressStickyTotalRow", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "suppressServerSideFullWidthLoadingRow", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "cellSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "selectionColumnDef", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "enableGroupEdit", "initialState", "theme", "loadThemeGoogleFonts", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "focusGridInnerElement", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "contextMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "cellSelectionDeleteStart", "cellSelectionDeleteEnd", "rangeDeleteStart", "rangeDeleteEnd", "fillStart", "fillEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "dragCancelled", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "rowDragCancel", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pivotMaxColumnsExceeded", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "headerFocused", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "cellSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatDialogModule }] }); }
|
|
164
|
-
}
|
|
165
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ActionableFormlyFieldGridComponent, decorators: [{
|
|
166
|
-
type: Component,
|
|
167
|
-
args: [{ selector: 'mu-editable-formly-field-grid', standalone: true, imports: [CommonModule, AgGridModule, TranslateModule, MatIconModule, MatTooltipModule, MatButtonModule, MatDialogModule], template: `
|
|
168
|
-
<div [ngStyle]="style" >
|
|
169
|
-
@if (!hideButton) {
|
|
170
|
-
<div class="mb-2 flex justify-start items-center">
|
|
171
|
-
<button
|
|
172
|
-
type="button"
|
|
173
|
-
(click)="addRow()"
|
|
174
|
-
matTooltip="{{ (field['props']['addButtonTooltip'] || 'ADD_ROW') | translate}}"
|
|
175
|
-
mat-button
|
|
176
|
-
>
|
|
177
|
-
<mat-icon>add</mat-icon>
|
|
178
|
-
<span>{{field.props['addBtnLabel'] | translate}}</span>
|
|
179
|
-
</button>
|
|
180
|
-
</div>
|
|
181
|
-
}
|
|
182
|
-
<ag-grid-angular
|
|
183
|
-
style="width: 100%;"
|
|
184
|
-
class="className"
|
|
185
|
-
[gridOptions]="gridOptions"
|
|
186
|
-
[rowData]="model"
|
|
187
|
-
[style.height]="gridHeight"
|
|
188
|
-
domLayout="normal"
|
|
189
|
-
(firstDataRendered)="onFirstDataRendered($event)"
|
|
190
|
-
(gridReady)="onGridReady($event)"
|
|
191
|
-
(rowClicked)="onRowClicked($event)"
|
|
192
|
-
>
|
|
193
|
-
</ag-grid-angular>
|
|
194
|
-
</div>
|
|
195
|
-
` }]
|
|
196
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }, { type: i2.MatDialog }] });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1hY3Rpb25hYmxlLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLWxpYi9zcmMvbGliL3R5cGVzL2dyaWQtYWN0aW9uYWJsZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWxELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBb0IsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwSCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNuRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7Ozs7Ozs7QUFDbkcsS0FBSyxDQUFBO0FBcUNMLE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSxjQUFjO0lBU3BFLFlBQW9CLGdCQUFrQyxFQUFVLE1BQWlCO1FBQy9FLEtBQUssRUFBRSxDQUFDO1FBRFUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVc7UUFQakYsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixnQkFBVyxHQUFtQixJQUFJLENBQUM7UUFFbkMsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixlQUFVLEdBQUcsTUFBTSxDQUFDO1FBQ3BCLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBaURuQixxQkFBZ0IsR0FBRyxHQUFHLEVBQUU7WUFDdEIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDLENBQUM7SUFqREYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakUsSUFBRyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BJLENBQUM7UUFDRCxJQUFJLENBQUMsS0FBSyxHQUFHO1lBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDNUIsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLENBQUM7U0FDL0IsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFO1lBQzlELE1BQU0sQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxHQUFHLENBQUM7WUFDekMsTUFBTSxDQUFDLFlBQVksR0FBRyx1QkFBdUIsQ0FBQztZQUM5QyxNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUM1RSxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksVUFBVSxHQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDO1FBQ2hFLFVBQVUsR0FBRztZQUNYO2dCQUNFLFVBQVUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztnQkFDcEQsS0FBSyxFQUFFLFFBQVE7Z0JBQ2YsUUFBUSxFQUFFLEdBQUc7Z0JBQ2IsUUFBUSxFQUFFLEdBQUc7Z0JBQ2IsWUFBWSxFQUFFLDZCQUE2QjtnQkFDM0Msa0JBQWtCLEVBQUU7b0JBQ2xCLFFBQVEsRUFBRSxDQUFDLE9BQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDO29CQUN2RCxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVU7aUJBQy9CO2FBQ0Y7WUFDRCxHQUFHLFVBQVU7U0FDZCxDQUFDO1FBQ0YsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNqQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQzVCLFNBQVMsRUFBRSxRQUFRO1lBQ25CLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdkMsT0FBTyxFQUFFO2dCQUNQLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSztnQkFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzthQUNwQztZQUNELHNCQUFzQixFQUFFLElBQUk7U0FDN0IsQ0FBQztJQUNKLENBQUM7SUFRRCxXQUFXLENBQUMsTUFBVztRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELG1CQUFtQixDQUFDLE1BQThCO1FBQ2hELE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3pELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBVTtRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLE1BQU0sR0FBRyxFQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUNyRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLFNBQVMsSUFBSSxFQUFFLENBQUM7UUFDdEQsSUFBSSxRQUFRLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7UUFDM0IsQ0FBQzthQUFNLElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsUUFBUSxHQUFHLFNBQVMsR0FBRyxFQUFFLElBQUksQ0FBQztRQUNyRCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxHQUFHLFNBQVMsR0FBRyxFQUFFLElBQUksQ0FBQztRQUNoRSxDQUFDO0lBQ0QsQ0FBQztJQUNELFNBQVMsQ0FBQyxPQUFnQjtRQUN4QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQywyQkFBMkIsRUFBRTtZQUMzRCxLQUFLLEVBQUUsS0FBSztZQUNaLE1BQU0sRUFBRSxLQUFLO1lBQ2IsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLHlCQUF5QixFQUFDO1NBQzFDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNyQyxJQUFHLEdBQUcsRUFBRSxDQUFDO2dCQUNQLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7b0JBQ25DLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7b0JBQ2xDLElBQUksUUFBUSxLQUFLLElBQUksSUFBSSxRQUFRLElBQUksQ0FBQyxFQUFFLENBQUM7d0JBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQ3hCLENBQUM7b0JBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQzFELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUMxQixDQUFDO3FCQUFNLENBQUM7b0JBQ04sT0FBTyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxPQUFPLENBQUMsQ0FBQztnQkFDdEQsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQzsrR0F0SFUsa0NBQWtDO21HQUFsQyxrQ0FBa0MsZ0hBL0JuQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCVCx5RUE3QlMsWUFBWSxtSEFBRSxZQUFZLHduU0FBRSxlQUFlLDJGQUFFLGFBQWEsbUxBQUUsZ0JBQWdCLDRUQUFFLGVBQWUsMk5BQUUsZUFBZTs7NEZBZ0M3RyxrQ0FBa0M7a0JBbkM5QyxTQUFTOytCQUNFLCtCQUErQixjQUM3QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLGVBQWUsQ0FBQyxZQUMvRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZEFycmF5VHlwZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgRmlyc3REYXRhUmVuZGVyZWRFdmVudCwgR3JpZE9wdGlvbnMsIENvbERlZiwgUm93Tm9kZSwgR3JpZEFwaSB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IEdyaWRGb3JtbHlDZWxsQ29tcG9uZW50IH0gZnJvbSAnLi9ncmlkLWZvcm1seS1jZWxsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWdHcmlkTW9kdWxlIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO2ltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEFjdGlvbkJ1dHRvblJlbmRlcmVyQ29tcG9uZW50IH0gZnJvbSAnLi9hY3Rpb24tYnV0dG9uLXJlbmRlcmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5gICAgYFxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdS1lZGl0YWJsZS1mb3JtbHktZmllbGQtZ3JpZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFnR3JpZE1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdERpYWxvZ01vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBbbmdTdHlsZV09XCJzdHlsZVwiID5cbiAgICAgIEBpZiAoIWhpZGVCdXR0b24pIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTIgZmxleCBqdXN0aWZ5LXN0YXJ0IGl0ZW1zLWNlbnRlclwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgKGNsaWNrKT1cImFkZFJvdygpXCJcbiAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eyAoZmllbGRbJ3Byb3BzJ11bJ2FkZEJ1dHRvblRvb2x0aXAnXSB8fCAnQUREX1JPVycpIHwgdHJhbnNsYXRlfX1cIlxuICAgICAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPlxuICAgICAgICAgICAgPHNwYW4+e3tmaWVsZC5wcm9wc1snYWRkQnRuTGFiZWwnXSB8IHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICAgIDxhZy1ncmlkLWFuZ3VsYXJcbiAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIlxuICAgICAgICBjbGFzcz1cImNsYXNzTmFtZVwiXG4gICAgICAgIFtncmlkT3B0aW9uc109XCJncmlkT3B0aW9uc1wiXG4gICAgICAgIFtyb3dEYXRhXT1cIm1vZGVsXCJcbiAgICAgICAgW3N0eWxlLmhlaWdodF09XCJncmlkSGVpZ2h0XCJcbiAgICAgICAgZG9tTGF5b3V0PVwibm9ybWFsXCJcbiAgICAgICAgKGZpcnN0RGF0YVJlbmRlcmVkKT1cIm9uRmlyc3REYXRhUmVuZGVyZWQoJGV2ZW50KVwiXG4gICAgICAgIChncmlkUmVhZHkpPVwib25HcmlkUmVhZHkoJGV2ZW50KVwiXG4gICAgICAgIChyb3dDbGlja2VkKT1cIm9uUm93Q2xpY2tlZCgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgIDwvYWctZ3JpZC1hbmd1bGFyPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IGBgXG59KVxuZXhwb3J0IGNsYXNzIEFjdGlvbmFibGVGb3JtbHlGaWVsZEdyaWRDb21wb25lbnQgZXh0ZW5kcyBGaWVsZEFycmF5VHlwZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGdyaWRPcHRpb25zITogR3JpZE9wdGlvbnM7XG4gIHN0eWxlOiBhbnkgPSB7fTtcbiAgc2VsZWN0ZWRSb3c6IFJvd05vZGUgfCBudWxsID0gbnVsbDtcbiAgZ3JpZEFwaSE6IEdyaWRBcGk7XG4gIGhpZGVCdXR0b24gPSBmYWxzZTtcbiAgZ3JpZEhlaWdodCA9ICdhdXRvJztcbiAgbWF4VmlzaWJsZVJvd3MgPSA1O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSwgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm1heFZpc2libGVSb3dzID0gdGhpcy5maWVsZD8ucHJvcHM/LlsnbWF4VmlzaWJsZVJvd3MnXSB8fCA1O1xuICAgIGlmKHRoaXMuZmllbGQ/LnByb3BzPy5bJ2VuYWJsZWRGb3JSb2xlcyddKSB7XG4gICAgICB0aGlzLmhpZGVCdXR0b24gPSAhdGhpcy5vcHRpb25zLmZvcm1TdGF0ZT8udXNlclJvbGVzPy5zb21lKChyb2xlOiBhbnkpID0+IHRoaXMuZmllbGQ/LnByb3BzPy5bJ2VuYWJsZWRGb3JSb2xlcyddPy5pbmNsdWRlcyhyb2xlKSk7XG4gICAgfVxuICAgIHRoaXMuc3R5bGUgPSB7XG4gICAgICB3aWR0aDogdGhpcy5wcm9wcz8uWyd3aWR0aCddLFxuICAgICAgaGVpZ2h0OiB0aGlzLnByb3BzPy5bJ2hlaWdodCddLFxuICAgIH07XG4gICAgdGhpcy5wcm9wc1snZ3JpZE9wdGlvbnMnXS5jb2x1bW5EZWZzLmZvckVhY2goKGNvbHVtbjogQ29sRGVmKSA9PiB7XG4gICAgICBjb2x1bW4ubWluV2lkdGggPSBjb2x1bW4ubWluV2lkdGggPz8gMjQwO1xuICAgICAgY29sdW1uLmNlbGxSZW5kZXJlciA9IEdyaWRGb3JtbHlDZWxsQ29tcG9uZW50O1xuICAgICAgY29sdW1uLmhlYWRlck5hbWUgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChjb2x1bW4uaGVhZGVyTmFtZSB8fCAnJylcbiAgICB9KTtcblxuICAgIGxldCBjb2x1bW5EZWZzOiBDb2xEZWZbXSA9IHRoaXMucHJvcHNbJ2dyaWRPcHRpb25zJ10uY29sdW1uRGVmcztcbiAgICBjb2x1bW5EZWZzID0gW1xuICAgICAge1xuICAgICAgICBoZWFkZXJOYW1lOiB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnQWN0aW9ucycpLFxuICAgICAgICBmaWVsZDogJ2RlbGV0ZScsXG4gICAgICAgIG1pbldpZHRoOiAxMDAsXG4gICAgICAgIG1heFdpZHRoOiAxMjAsXG4gICAgICAgIGNlbGxSZW5kZXJlcjogQWN0aW9uQnV0dG9uUmVuZGVyZXJDb21wb25lbnQsXG4gICAgICAgIGNlbGxSZW5kZXJlclBhcmFtczoge1xuICAgICAgICAgIG9uRGVsZXRlOiAocm93Tm9kZTogUm93Tm9kZSkgPT4gdGhpcy5kZWxldGVSb3cocm93Tm9kZSksXG4gICAgICAgICAgZGlzYWJsZUJ1dHRvbjogdGhpcy5oaWRlQnV0dG9uXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICAuLi5jb2x1bW5EZWZzXG4gICAgXTtcbiAgICB0aGlzLmdyaWRPcHRpb25zID0ge1xuICAgICAgLi4udGhpcy5wcm9wc1snZ3JpZE9wdGlvbnMnXSxcbiAgICAgIGRvbUxheW91dDogJ25vcm1hbCcsXG4gICAgICBjb2x1bW5EZWZzOiBjb2x1bW5EZWZzLFxuICAgICAgb25Sb3dEYXRhVXBkYXRlZDogdGhpcy5vblJvd0RhdGFVcGRhdGVkLFxuICAgICAgY29udGV4dDoge1xuICAgICAgICBwYXJlbnRGaWVsZDogdGhpcy5maWVsZCxcbiAgICAgICAgb25EZWxldGU6IHRoaXMuZGVsZXRlUm93LmJpbmQodGhpcylcbiAgICAgIH0sXG4gICAgICBzdXBwcmVzc01vdmFibGVDb2x1bW5zOiB0cnVlXG4gICAgfTtcbiAgfVxuXG4gIG9uUm93RGF0YVVwZGF0ZWQgPSAoKSA9PiB7XG4gICAgaWYgKHRoaXMuZ3JpZEFwaSkge1xuICAgICAgdGhpcy5hZGp1c3RHcmlkSGVpZ2h0KCk7XG4gICAgfVxuICB9O1xuXG4gIG9uR3JpZFJlYWR5KHBhcmFtczogYW55KSB7XG4gICAgdGhpcy5ncmlkQXBpID0gcGFyYW1zLmFwaTtcbiAgICB0aGlzLmFkanVzdEdyaWRIZWlnaHQoKTtcbiAgfVxuXG4gIG9uRmlyc3REYXRhUmVuZGVyZWQocGFyYW1zOiBGaXJzdERhdGFSZW5kZXJlZEV2ZW50KSB7XG4gICAgcGFyYW1zLmFwaS5zaXplQ29sdW1uc1RvRml0KCk7XG4gICAgdGhpcy5vcHRpb25zLmZvcm1TdGF0ZS5ncmlkQWN0aW9uYWJsZURhdGEgPSB0aGlzLm1vZGVsO1xuICB9XG5cbiAgb25Sb3dDbGlja2VkKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkUm93ID0gZXZlbnQubm9kZTtcbiAgfVxuXG4gIGFkZFJvdygpIHtcbiAgICBjb25zdCBuZXdSb3cgPSB7aWQ6IHRoaXMuZ2VuZXJhdGVSYW5kb21OdW1iZXIoKX07XG4gICAgdGhpcy5hZGQoKTtcbiAgICB0aGlzLmdyaWRBcGkuYXBwbHlUcmFuc2FjdGlvbih7IGFkZDogW25ld1Jvd10gfSk7XG4gICAgdGhpcy5hZGp1c3RHcmlkSGVpZ2h0KCk7XG4gIH1cblxuICBhZGp1c3RHcmlkSGVpZ2h0KCkge1xuICAgIGNvbnN0IHJvd0NvdW50ID0gdGhpcy5ncmlkQXBpLmdldERpc3BsYXllZFJvd0NvdW50KCk7XG4gICAgY29uc3Qgcm93SGVpZ2h0ID0gdGhpcy5ncmlkT3B0aW9ucz8ucm93SGVpZ2h0IHx8IDYwO1xuICBpZiAocm93Q291bnQgPT09IDApIHtcbiAgICB0aGlzLmdyaWRIZWlnaHQgPSAnNzBweCc7XG4gIH0gZWxzZSBpZiAocm93Q291bnQgPD0gdGhpcy5tYXhWaXNpYmxlUm93cykge1xuICAgIHRoaXMuZ3JpZEhlaWdodCA9IGAke3Jvd0NvdW50ICogcm93SGVpZ2h0ICsgNDB9cHhgO1xuICB9IGVsc2Uge1xuICAgIHRoaXMuZ3JpZEhlaWdodCA9IGAke3RoaXMubWF4VmlzaWJsZVJvd3MgKiByb3dIZWlnaHQgKyA0MH1weGA7XG4gIH1cbiAgfVxuICBkZWxldGVSb3cocm93Tm9kZTogUm93Tm9kZSkge1xuICAgIGNvbnN0IGRpYWxvZyA9IHRoaXMuZGlhbG9nLm9wZW4oQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogJzUwJScsXG4gICAgICBoZWlnaHQ6ICcyOCUnLFxuICAgICAgZGF0YTogeyB0aXRsZTogJ0FyZSB5b3Ugc3VyZSB0byBkZWxldGU/J31cbiAgICB9KTtcbiAgICBkaWFsb2cuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgaWYocmVzKSB7XG4gICAgICAgIGlmIChyb3dOb2RlICYmIHJvd05vZGUuaWQgIT09IG51bGwpIHtcbiAgICAgICAgICBjb25zdCByb3dJbmRleCA9IHJvd05vZGUucm93SW5kZXg7XG4gICAgICAgICAgaWYgKHJvd0luZGV4ICE9PSBudWxsICYmIHJvd0luZGV4ID49IDApIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlKHJvd0luZGV4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5ncmlkQXBpLmFwcGx5VHJhbnNhY3Rpb24oeyByZW1vdmU6IFtyb3dOb2RlLmRhdGFdIH0pO1xuICAgICAgICAgIHRoaXMuYWRqdXN0R3JpZEhlaWdodCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1JvdyBub3QgZm91bmQgb3IgaW52YWxpZDonLCByb3dOb2RlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBnZW5lcmF0ZVJhbmRvbU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmZsb29yKDEwMDAgKyBNYXRoLnJhbmRvbSgpICogOTAwMCk7XG4gIH1cbn0iXX0=
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { FormlyModule } from '@ngx-formly/core';
|
|
3
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@ngx-translate/core";
|
|
6
|
-
import * as i2 from "@ngx-formly/core";
|
|
7
|
-
export class GridFormlyCellComponent {
|
|
8
|
-
constructor(translateService) {
|
|
9
|
-
this.translateService = translateService;
|
|
10
|
-
}
|
|
11
|
-
agInit(params) {
|
|
12
|
-
this.params = params;
|
|
13
|
-
}
|
|
14
|
-
refresh() {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
getField() {
|
|
18
|
-
const rowIndex = this.params.node.rowIndex;
|
|
19
|
-
const prop = this.params.colDef.field;
|
|
20
|
-
const parentField = this.params.context.parentField;
|
|
21
|
-
const field = parentField.get([rowIndex, prop]);
|
|
22
|
-
if (field && field.props.label) {
|
|
23
|
-
field.props.label = this.translateService.instant(field.props?.label);
|
|
24
|
-
}
|
|
25
|
-
if (field && field.props.placeholder) {
|
|
26
|
-
field.props.placeholder = this.translateService.instant(field.props?.placeholder);
|
|
27
|
-
}
|
|
28
|
-
return field;
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridFormlyCellComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GridFormlyCellComponent, isStandalone: true, selector: "mu-formly-ag-grid-cell", ngImport: i0, template: ` <formly-field [field]="getField()"></formly-field> `, isInline: true, dependencies: [{ kind: "ngmodule", type: FormlyModule }, { kind: "component", type: i2.FormlyField, selector: "formly-field", inputs: ["field"] }, { kind: "ngmodule", type: TranslateModule }] }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridFormlyCellComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{
|
|
36
|
-
selector: 'mu-formly-ag-grid-cell',
|
|
37
|
-
standalone: true,
|
|
38
|
-
imports: [FormlyModule, TranslateModule],
|
|
39
|
-
template: ` <formly-field [field]="getField()"></formly-field> `,
|
|
40
|
-
}]
|
|
41
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1mb3JtbHktY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLWxpYi9zcmMvbGliL3R5cGVzL2dyaWQtZm9ybWx5LWNlbGwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFxQixZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLHFCQUFxQixDQUFDOzs7O0FBU3hFLE1BQU0sT0FBTyx1QkFBdUI7SUFHbEMsWUFBb0IsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFBRyxDQUFDO0lBRTFELE1BQU0sQ0FBQyxNQUFXO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxPQUFPO1FBQ0wsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUMzQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDdEMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3BELE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUVoRCxJQUFHLEtBQUssSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlCLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4RSxDQUFDO1FBQ0QsSUFBRyxLQUFLLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQyxLQUFLLENBQUMsS0FBSyxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzsrR0EzQlUsdUJBQXVCO21HQUF2Qix1QkFBdUIsa0ZBRnhCLHNEQUFzRCwyREFEdEQsWUFBWSx3SEFBRSxlQUFlOzs0RkFHNUIsdUJBQXVCO2tCQU5uQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDO29CQUN4QyxRQUFRLEVBQUUsc0RBQXNEO2lCQUNqRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcsIEZvcm1seU1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBJQ2VsbFJlbmRlcmVyQW5ndWxhckNvbXAgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdS1mb3JtbHktYWctZ3JpZC1jZWxsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0Zvcm1seU1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlXSxcbiAgdGVtcGxhdGU6IGAgPGZvcm1seS1maWVsZCBbZmllbGRdPVwiZ2V0RmllbGQoKVwiPjwvZm9ybWx5LWZpZWxkPiBgLFxufSlcbmV4cG9ydCBjbGFzcyBHcmlkRm9ybWx5Q2VsbENvbXBvbmVudCBpbXBsZW1lbnRzIElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCB7XG4gIHByaXZhdGUgcGFyYW1zOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7fVxuXG4gIGFnSW5pdChwYXJhbXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xuICB9XG5cbiAgcmVmcmVzaCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBnZXRGaWVsZCgpOiBGb3JtbHlGaWVsZENvbmZpZyB7XG4gICAgY29uc3Qgcm93SW5kZXggPSB0aGlzLnBhcmFtcy5ub2RlLnJvd0luZGV4O1xuICAgIGNvbnN0IHByb3AgPSB0aGlzLnBhcmFtcy5jb2xEZWYuZmllbGQ7XG4gICAgY29uc3QgcGFyZW50RmllbGQgPSB0aGlzLnBhcmFtcy5jb250ZXh0LnBhcmVudEZpZWxkO1xuICAgIGNvbnN0IGZpZWxkID0gcGFyZW50RmllbGQuZ2V0KFtyb3dJbmRleCwgcHJvcF0pO1xuICAgIFxuICAgIGlmKGZpZWxkICYmIGZpZWxkLnByb3BzLmxhYmVsKSB7XG4gICAgICBmaWVsZC5wcm9wcy5sYWJlbCA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGZpZWxkLnByb3BzPy5sYWJlbCk7XG4gICAgfVxuICAgIGlmKGZpZWxkICYmIGZpZWxkLnByb3BzLnBsYWNlaG9sZGVyKSB7XG4gICAgICBmaWVsZC5wcm9wcy5wbGFjZWhvbGRlciA9IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGZpZWxkLnByb3BzPy5wbGFjZWhvbGRlcik7XG4gICAgfVxuICAgIFxuICAgIHJldHVybiBmaWVsZDtcbiAgfVxufSJdfQ==
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
-
import { FieldType, FormlyModule } from '@ngx-formly/core';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { AgGridModule } from 'ag-grid-angular';
|
|
5
|
-
import { isObservable } from 'rxjs';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@ngx-translate/core";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
import * as i3 from "ag-grid-angular";
|
|
10
|
-
export class FormlyFieldGridComponent extends FieldType {
|
|
11
|
-
constructor(translateService) {
|
|
12
|
-
super();
|
|
13
|
-
this.translateService = translateService;
|
|
14
|
-
this.style = {};
|
|
15
|
-
this.rowData = [];
|
|
16
|
-
this.columnDefs = [];
|
|
17
|
-
this.defaultColDef = {
|
|
18
|
-
sortable: true,
|
|
19
|
-
filter: true,
|
|
20
|
-
resizable: true,
|
|
21
|
-
flex: 1,
|
|
22
|
-
minWidth: 150,
|
|
23
|
-
wrapHeaderText: true,
|
|
24
|
-
autoHeaderHeight: true
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
onGridReady(params) {
|
|
28
|
-
this.gridApi = params.api;
|
|
29
|
-
}
|
|
30
|
-
ngOnInit() {
|
|
31
|
-
this.style = {
|
|
32
|
-
width: this.props?.['width'],
|
|
33
|
-
height: this.props?.['height'],
|
|
34
|
-
};
|
|
35
|
-
const gridOptions = this.props['gridOptions'] || {};
|
|
36
|
-
gridOptions.context = {
|
|
37
|
-
parentField: this.field,
|
|
38
|
-
};
|
|
39
|
-
gridOptions.suppressMovableColumns = true;
|
|
40
|
-
this.gridOptions = gridOptions;
|
|
41
|
-
this.columnDefs = [
|
|
42
|
-
...this.translateLabels(this.gridOptions?.['columnDefs'])
|
|
43
|
-
];
|
|
44
|
-
const gridData = findNestedKey(this.field.parent?.model, this.field.key);
|
|
45
|
-
this.rowData = Array.isArray(gridData) ? gridData : [];
|
|
46
|
-
if (this.field.props?.['rowData']) {
|
|
47
|
-
const rowData = this.field.props?.['rowData'];
|
|
48
|
-
if (isObservable(rowData)) {
|
|
49
|
-
rowData.pipe().subscribe((data = []) => {
|
|
50
|
-
if (!data.length) {
|
|
51
|
-
this.rowData = [];
|
|
52
|
-
this.gridApi?.deselectAll();
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
this.rowData = [...data];
|
|
56
|
-
this.gridApi?.deselectAll();
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
else if (Array.isArray(rowData)) {
|
|
61
|
-
this.rowData = [...rowData];
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
onFirstDataRendered(params) {
|
|
66
|
-
params.api.sizeColumnsToFit();
|
|
67
|
-
}
|
|
68
|
-
translateLabels(columnDefs) {
|
|
69
|
-
return columnDefs.map((column) => {
|
|
70
|
-
return {
|
|
71
|
-
...column,
|
|
72
|
-
headerName: this.translateService.instant(column.headerName)
|
|
73
|
-
};
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormlyFieldGridComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
77
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FormlyFieldGridComponent, isStandalone: true, selector: "mu-formly-field-grid", usesInheritance: true, ngImport: i0, template: `
|
|
78
|
-
<div [ngStyle]="style" >
|
|
79
|
-
<ag-grid-angular
|
|
80
|
-
style="width: 100%; height: 100%;"
|
|
81
|
-
class="ag-theme-alpine"
|
|
82
|
-
[rowData]="rowData || []"
|
|
83
|
-
[columnDefs]="columnDefs"
|
|
84
|
-
[defaultColDef]="defaultColDef"
|
|
85
|
-
[pagination]="true"
|
|
86
|
-
[gridOptions]="gridOptions">
|
|
87
|
-
</ag-grid-angular>
|
|
88
|
-
</div>
|
|
89
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i3.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipShowMode", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "enableStrictPivotColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressMoveWhenColumnDragging", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "applyQuickFilterBeforePivotOrAgg", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "suppressAdvancedFilterEval", "suppressSetFilterByDefault", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "chartToolPanelsDef", "chartMenuItems", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "dragAndDropImageComponent", "dragAndDropImageComponentParams", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "loading", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotMaxGeneratedColumns", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupTotalRow", "grandTotalRow", "suppressStickyTotalRow", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "suppressServerSideFullWidthLoadingRow", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "cellSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "selectionColumnDef", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "enableGroupEdit", "initialState", "theme", "loadThemeGoogleFonts", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "focusGridInnerElement", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "contextMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "cellSelectionDeleteStart", "cellSelectionDeleteEnd", "rangeDeleteStart", "rangeDeleteEnd", "fillStart", "fillEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "dragCancelled", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "rowDragCancel", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pivotMaxColumnsExceeded", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "headerFocused", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "cellSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged"] }, { kind: "ngmodule", type: FormlyModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
90
|
-
}
|
|
91
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormlyFieldGridComponent, decorators: [{
|
|
92
|
-
type: Component,
|
|
93
|
-
args: [{
|
|
94
|
-
selector: 'mu-formly-field-grid',
|
|
95
|
-
standalone: true,
|
|
96
|
-
imports: [CommonModule, AgGridModule, FormlyModule],
|
|
97
|
-
template: `
|
|
98
|
-
<div [ngStyle]="style" >
|
|
99
|
-
<ag-grid-angular
|
|
100
|
-
style="width: 100%; height: 100%;"
|
|
101
|
-
class="ag-theme-alpine"
|
|
102
|
-
[rowData]="rowData || []"
|
|
103
|
-
[columnDefs]="columnDefs"
|
|
104
|
-
[defaultColDef]="defaultColDef"
|
|
105
|
-
[pagination]="true"
|
|
106
|
-
[gridOptions]="gridOptions">
|
|
107
|
-
</ag-grid-angular>
|
|
108
|
-
</div>
|
|
109
|
-
`,
|
|
110
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
111
|
-
}]
|
|
112
|
-
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
113
|
-
function findNestedKey(obj, targetKey) {
|
|
114
|
-
for (const key in obj) {
|
|
115
|
-
if (key === targetKey)
|
|
116
|
-
return obj[key];
|
|
117
|
-
if (typeof obj[key] === 'object') {
|
|
118
|
-
const result = findNestedKey(obj[key], targetKey);
|
|
119
|
-
if (result)
|
|
120
|
-
return result;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
return undefined;
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm9ybS1saWIvc3JjL2xpYi90eXBlcy9ncmlkLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQWtCLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUUzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBc0JwQyxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsU0FBUztJQWVyRCxZQUFvQixnQkFBa0M7UUFDcEQsS0FBSyxFQUFFLENBQUM7UUFEVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBYnRELFVBQUssR0FBUSxFQUFFLENBQUM7UUFDaEIsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQUNwQixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLGtCQUFhLEdBQUc7WUFDZCxRQUFRLEVBQUUsSUFBSTtZQUNkLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLElBQUk7WUFDZixJQUFJLEVBQUUsQ0FBQztZQUNQLFFBQVEsRUFBRSxHQUFHO1lBQ2IsY0FBYyxFQUFFLElBQUk7WUFDcEIsZ0JBQWdCLEVBQUUsSUFBSTtTQUN2QixDQUFDO0lBSUYsQ0FBQztJQUNELFdBQVcsQ0FBQyxNQUFXO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLEdBQUc7WUFDWCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxD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ZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2hEOztBQTJFRCxTQUFTLGFBQWEsQ0FBQyxHQUFRLEVBQUUsU0FBYztJQUM3QyxLQUFLLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksR0FBRyxLQUFLLFNBQVM7WUFBRSxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QyxJQUFJLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sTUFBTSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDbEQsSUFBSSxNQUFNO2dCQUFFLE9BQU8sTUFBTSxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRBcnJheVR5cGUsIEZpZWxkVHlwZSwgRm9ybWx5TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBGaXJzdERhdGFSZW5kZXJlZEV2ZW50LCBHcmlkT3B0aW9ucywgQ29sRGVmLCBHcmlkQXBpIH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBpc09ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdS1mb3JtbHktZmllbGQtZ3JpZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEFnR3JpZE1vZHVsZSwgRm9ybWx5TW9kdWxlXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IFtuZ1N0eWxlXT1cInN0eWxlXCIgPlxuICAgICAgPGFnLWdyaWQtYW5ndWxhclxuICAgICAgICBzdHlsZT1cIndpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7XCJcbiAgICAgICAgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmVcIlxuICAgICAgICBbcm93RGF0YV09XCJyb3dEYXRhIHx8IFtdXCJcbiAgICAgICAgW2NvbHVtbkRlZnNdPVwiY29sdW1uRGVmc1wiXG4gICAgICAgIFtkZWZhdWx0Q29sRGVmXT1cImRlZmF1bHRDb2xEZWZcIlxuICAgICAgICBbcGFnaW5hdGlvbl09XCJ0cnVlXCJcbiAgICAgICAgW2dyaWRPcHRpb25zXT1cImdyaWRPcHRpb25zXCI+XG4gICAgICA8L2FnLWdyaWQtYW5ndWxhcj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1seUZpZWxkR3JpZENvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGdyaWRPcHRpb25zITogR3JpZE9wdGlvbnM7XG4gIHN0eWxlOiBhbnkgPSB7fTtcbiAgcm93RGF0YTogYW55W10gPSBbXTtcbiAgY29sdW1uRGVmczogQ29sRGVmW10gPSBbXTtcbiAgZGVmYXVsdENvbERlZiA9IHtcbiAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICBmaWx0ZXI6IHRydWUsXG4gICAgcmVzaXphYmxlOiB0cnVlLFxuICAgIGZsZXg6IDEsXG4gICAgbWluV2lkdGg6IDE1MCxcbiAgICB3cmFwSGVhZGVyVGV4dDogdHJ1ZSxcbiAgICBhdXRvSGVhZGVySGVpZ2h0OiB0cnVlXG4gIH07XG4gIGdyaWRBcGkhOiBHcmlkQXBpO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIG9uR3JpZFJlYWR5KHBhcmFtczogYW55KTogdm9pZCB7XG4gICAgdGhpcy5ncmlkQXBpID0gcGFyYW1zLmFwaTtcbiAgfVxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnN0eWxlID0ge1xuICAgICAgd2lkdGg6IHRoaXMucHJvcHM/Llsnd2lkdGgnXSxcbiAgICAgIGhlaWdodDogdGhpcy5wcm9wcz8uWydoZWlnaHQnXSxcbiAgICB9O1xuICAgIGNvbnN0IGdyaWRPcHRpb25zOiBHcmlkT3B0aW9ucyA9IHRoaXMucHJvcHNbJ2dyaWRPcHRpb25zJ10gfHwge307XG4gICAgZ3JpZE9wdGlvbnMuY29udGV4dCA9IHtcbiAgICAgIHBhcmVudEZpZWxkOiB0aGlzLmZpZWxkLFxuICAgIH07XG4gICAgZ3JpZE9wdGlvbnMuc3VwcHJlc3NNb3ZhYmxlQ29sdW1ucyA9IHRydWU7XG4gICAgdGhpcy5ncmlkT3B0aW9ucyA9IGdyaWRPcHRpb25zO1xuICAgIHRoaXMuY29sdW1uRGVmcyA9IFtcbiAgICAgIC4uLnRoaXMudHJhbnNsYXRlTGFiZWxzKHRoaXMuZ3JpZE9wdGlvbnM/LlsnY29sdW1uRGVmcyddIGFzIGFueVtdKVxuICAgIF07XG5cbiAgICBjb25zdCBncmlkRGF0YSA9IGZpbmROZXN0ZWRLZXkodGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsLCB0aGlzLmZpZWxkLmtleSk7XG4gICAgdGhpcy5yb3dEYXRhID0gQXJyYXkuaXNBcnJheShncmlkRGF0YSkgPyBncmlkRGF0YSA6IFtdO1xuXG4gICAgaWYodGhpcy5maWVsZC5wcm9wcz8uWydyb3dEYXRhJ10pIHtcbiAgICAgIGNvbnN0IHJvd0RhdGEgPSB0aGlzLmZpZWxkLnByb3BzPy5bJ3Jvd0RhdGEnXTtcblxuICBpZiAoaXNPYnNlcnZhYmxlKHJvd0RhdGEpKSB7XG4gICAgcm93RGF0YS5waXBlKCkuc3Vic2NyaWJlKChkYXRhOiBhbnlbXSA9IFtdKSA9PiB7XG4gICAgICBpZiAoIWRhdGEubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMucm93RGF0YSA9IFtdO1xuICAgICAgICB0aGlzLmdyaWRBcGk/LmRlc2VsZWN0QWxsKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJvd0RhdGEgPSBbLi4uZGF0YV07XG4gICAgICAgIHRoaXMuZ3JpZEFwaT8uZGVzZWxlY3RBbGwoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHJvd0RhdGEpKSB7XG4gICAgdGhpcy5yb3dEYXRhID0gWy4uLnJvd0RhdGFdO1xuICB9XG4gICAgfVxuICB9XG5cbiAgb25GaXJzdERhdGFSZW5kZXJlZChwYXJhbXM6IEZpcnN0RGF0YVJlbmRlcmVkRXZlbnQpIHtcbiAgICBwYXJhbXMuYXBpLnNpemVDb2x1bW5zVG9GaXQoKTtcbiAgfVxuXG4gIHRyYW5zbGF0ZUxhYmVscyhcbiAgICBjb2x1bW5EZWZzOiBhbnlbXVxuICApOiBhbnlbXSB7XG4gICAgcmV0dXJuIGNvbHVtbkRlZnMubWFwKChjb2x1bW4pID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNvbHVtbixcbiAgICAgICAgaGVhZGVyTmFtZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoY29sdW1uLmhlYWRlck5hbWUpXG4gICAgICB9XG4gICAgfSlcbiAgfVxufVxuXG5mdW5jdGlvbiBmaW5kTmVzdGVkS2V5KG9iajogYW55LCB0YXJnZXRLZXk6IGFueSk6IGFueSB7XG4gIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xuICAgIGlmIChrZXkgPT09IHRhcmdldEtleSkgcmV0dXJuIG9ialtrZXldO1xuICAgIGlmICh0eXBlb2Ygb2JqW2tleV0gPT09ICdvYmplY3QnKSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBmaW5kTmVzdGVkS2V5KG9ialtrZXldLCB0YXJnZXRLZXkpO1xuICAgICAgaWYgKHJlc3VsdCkgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn0iXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { Component } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
5
|
-
import { MatInputModule } from '@angular/material/input';
|
|
6
|
-
import { FormlyModule } from '@ngx-formly/core';
|
|
7
|
-
import { FieldType } from '@ngx-formly/material';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/common";
|
|
10
|
-
import * as i2 from "@angular/material/input";
|
|
11
|
-
import * as i3 from "@angular/material/form-field";
|
|
12
|
-
import * as i4 from "@ngx-formly/core";
|
|
13
|
-
import * as i5 from "@angular/forms";
|
|
14
|
-
export class CustomFormlyMatInputComponent extends FieldType {
|
|
15
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CustomFormlyMatInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: CustomFormlyMatInputComponent, isStandalone: true, selector: "mu-formly-field-mat-input", usesInheritance: true, ngImport: i0, template: `
|
|
17
|
-
<mat-form-field class="w-full" appearance="outline">
|
|
18
|
-
<mat-label>{{ to.label }}</mat-label>
|
|
19
|
-
<input matInput [formControl]="formControl" [formlyAttributes]="field" />
|
|
20
|
-
</mat-form-field>
|
|
21
|
-
<mat-error *ngIf="formControl.invalid && formControl.touched">
|
|
22
|
-
{{ field.validation?.messages?.['required'] || field.validation?.messages?.['pattern']}}
|
|
23
|
-
</mat-error>
|
|
24
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: FormlyModule }, { kind: "directive", type: i4.ɵFormlyAttributes, selector: "[formlyAttributes]", inputs: ["formlyAttributes", "id"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: MatFormFieldModule }] }); }
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CustomFormlyMatInputComponent, decorators: [{
|
|
27
|
-
type: Component,
|
|
28
|
-
args: [{
|
|
29
|
-
selector: 'mu-formly-field-mat-input',
|
|
30
|
-
standalone: true,
|
|
31
|
-
imports: [CommonModule, MatInputModule, FormlyModule, ReactiveFormsModule, FormsModule, MatFormFieldModule],
|
|
32
|
-
template: `
|
|
33
|
-
<mat-form-field class="w-full" appearance="outline">
|
|
34
|
-
<mat-label>{{ to.label }}</mat-label>
|
|
35
|
-
<input matInput [formControl]="formControl" [formlyAttributes]="field" />
|
|
36
|
-
</mat-form-field>
|
|
37
|
-
<mat-error *ngIf="formControl.invalid && formControl.touched">
|
|
38
|
-
{{ field.validation?.messages?.['required'] || field.validation?.messages?.['pattern']}}
|
|
39
|
-
</mat-error>
|
|
40
|
-
`,
|
|
41
|
-
}]
|
|
42
|
-
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Zvcm0tbGliL3NyYy9saWIvdHlwZXMvaW5wdXQudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBbUIsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7O0FBZ0JqRCxNQUFNLE9BQU8sNkJBQThCLFNBQVEsU0FBMEI7K0dBQWhFLDZCQUE2QjttR0FBN0IsNkJBQTZCLDRHQVY5Qjs7Ozs7Ozs7R0FRVCwyREFUUyxZQUFZLGtJQUFFLGNBQWMsbXRCQUFFLFlBQVkscUpBQUUsbUJBQW1CLHlrQkFBRSxXQUFXLDhCQUFFLGtCQUFrQjs7NEZBVy9GLDZCQUE2QjtrQkFkekMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixDQUFDO29CQUMzRyxRQUFRLEVBQUU7Ozs7Ozs7O0dBUVQ7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBGaWVsZFR5cGVDb25maWcsIEZvcm1seU1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdS1mb3JtbHktZmllbGQtbWF0LWlucHV0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0SW5wdXRNb2R1bGUsIEZvcm1seU1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybXNNb2R1bGUsIE1hdEZvcm1GaWVsZE1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwidy1mdWxsXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cbiAgICA8bWF0LWxhYmVsPnt7IHRvLmxhYmVsIH19PC9tYXQtbGFiZWw+XG4gICAgICA8aW5wdXQgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCIgW2Zvcm1seUF0dHJpYnV0ZXNdPVwiZmllbGRcIiAvPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm1Db250cm9sLmludmFsaWQgJiYgZm9ybUNvbnRyb2wudG91Y2hlZFwiPlxuICAgICAge3sgZmllbGQudmFsaWRhdGlvbj8ubWVzc2FnZXM/LlsncmVxdWlyZWQnXSB8fCBmaWVsZC52YWxpZGF0aW9uPy5tZXNzYWdlcz8uWydwYXR0ZXJuJ119fVxuICAgIDwvbWF0LWVycm9yPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21Gb3JtbHlNYXRJbnB1dENvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZTxGaWVsZFR5cGVDb25maWc+IHt9XG4iXX0=
|