@ng-formworks/core 18.5.1 → 19.5.1
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 +2 -1
- package/fesm2022/ng-formworks-core.mjs +130 -110
- package/fesm2022/ng-formworks-core.mjs.map +1 -1
- package/package.json +3 -3
- package/esm2022/lib/framework-library/framework-library.service.mjs +0 -172
- package/esm2022/lib/framework-library/framework.mjs +0 -15
- package/esm2022/lib/framework-library/no-framework.component.mjs +0 -17
- package/esm2022/lib/framework-library/no-framework.module.mjs +0 -27
- package/esm2022/lib/framework-library/no.framework.mjs +0 -19
- package/esm2022/lib/json-schema-form.component.mjs +0 -759
- package/esm2022/lib/json-schema-form.module.mjs +0 -26
- package/esm2022/lib/json-schema-form.service.mjs +0 -695
- package/esm2022/lib/locale/de-validation-messages.mjs +0 -60
- package/esm2022/lib/locale/en-validation-messages.mjs +0 -60
- package/esm2022/lib/locale/es-validation-messages.mjs +0 -57
- package/esm2022/lib/locale/fr-validation-messages.mjs +0 -60
- package/esm2022/lib/locale/index.mjs +0 -8
- package/esm2022/lib/locale/it-validation-messages.mjs +0 -60
- package/esm2022/lib/locale/pt-validation-messages.mjs +0 -60
- package/esm2022/lib/locale/zh-validation-messages.mjs +0 -60
- package/esm2022/lib/shared/convert-schema-to-draft6.function.mjs +0 -300
- package/esm2022/lib/shared/form-group.functions.mjs +0 -444
- package/esm2022/lib/shared/format-regex.constants.mjs +0 -54
- package/esm2022/lib/shared/index.mjs +0 -12
- package/esm2022/lib/shared/json-schema.functions.mjs +0 -784
- package/esm2022/lib/shared/json.validators.mjs +0 -884
- package/esm2022/lib/shared/jsonpointer.functions.mjs +0 -1026
- package/esm2022/lib/shared/layout.functions.mjs +0 -1158
- package/esm2022/lib/shared/merge-schemas.function.mjs +0 -345
- package/esm2022/lib/shared/utility.functions.mjs +0 -380
- package/esm2022/lib/shared/validator.functions.mjs +0 -584
- package/esm2022/lib/widget-library/add-reference.component.mjs +0 -58
- package/esm2022/lib/widget-library/button.component.mjs +0 -69
- package/esm2022/lib/widget-library/checkbox.component.mjs +0 -102
- package/esm2022/lib/widget-library/checkboxes.component.mjs +0 -145
- package/esm2022/lib/widget-library/file.component.mjs +0 -32
- package/esm2022/lib/widget-library/hidden.component.mjs +0 -51
- package/esm2022/lib/widget-library/index.mjs +0 -55
- package/esm2022/lib/widget-library/input.component.mjs +0 -116
- package/esm2022/lib/widget-library/message.component.mjs +0 -35
- package/esm2022/lib/widget-library/none.component.mjs +0 -20
- package/esm2022/lib/widget-library/number.component.mjs +0 -120
- package/esm2022/lib/widget-library/one-of.component.mjs +0 -32
- package/esm2022/lib/widget-library/orderable.directive.mjs +0 -120
- package/esm2022/lib/widget-library/radios.component.mjs +0 -151
- package/esm2022/lib/widget-library/root.component.mjs +0 -73
- package/esm2022/lib/widget-library/section.component.mjs +0 -196
- package/esm2022/lib/widget-library/select-framework.component.mjs +0 -44
- package/esm2022/lib/widget-library/select-widget.component.mjs +0 -42
- package/esm2022/lib/widget-library/select.component.mjs +0 -147
- package/esm2022/lib/widget-library/submit.component.mjs +0 -79
- package/esm2022/lib/widget-library/tab.component.mjs +0 -38
- package/esm2022/lib/widget-library/tabs.component.mjs +0 -106
- package/esm2022/lib/widget-library/template.component.mjs +0 -43
- package/esm2022/lib/widget-library/textarea.component.mjs +0 -101
- package/esm2022/lib/widget-library/widget-library.module.mjs +0 -42
- package/esm2022/lib/widget-library/widget-library.service.mjs +0 -226
- package/esm2022/ng-formworks-core.mjs +0 -5
- package/esm2022/public_api.mjs +0 -13
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
import { buildTitleMap, isArray } from '../shared';
|
|
2
|
-
import { Component, input, inject } from '@angular/core';
|
|
3
|
-
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common";
|
|
6
|
-
import * as i2 from "@angular/forms";
|
|
7
|
-
export class SelectComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.jsf = inject(JsonSchemaFormService);
|
|
10
|
-
this.controlDisabled = false;
|
|
11
|
-
this.boundControl = false;
|
|
12
|
-
this.selectList = [];
|
|
13
|
-
this.isArray = isArray;
|
|
14
|
-
this.layoutNode = input(undefined);
|
|
15
|
-
this.layoutIndex = input(undefined);
|
|
16
|
-
this.dataIndex = input(undefined);
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
this.options = this.layoutNode().options || {};
|
|
20
|
-
this.selectList = buildTitleMap(this.options.titleMap || this.options.enumNames, this.options.enum, !!this.options.required, !!this.options.flatList);
|
|
21
|
-
this.jsf.initializeControl(this);
|
|
22
|
-
}
|
|
23
|
-
updateValue(event) {
|
|
24
|
-
this.jsf.updateValue(this, event.target.value);
|
|
25
|
-
}
|
|
26
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: SelectComponent, selector: "select-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
28
|
-
<div
|
|
29
|
-
[class]="options?.htmlClass || ''">
|
|
30
|
-
<label *ngIf="options?.title"
|
|
31
|
-
[attr.for]="'control' + layoutNode()?._id"
|
|
32
|
-
[class]="options?.labelHtmlClass || ''"
|
|
33
|
-
[style.display]="options?.notitle ? 'none' : ''"
|
|
34
|
-
[innerHTML]="options?.title"></label>
|
|
35
|
-
<select *ngIf="boundControl"
|
|
36
|
-
[formControl]="formControl"
|
|
37
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
38
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
39
|
-
[attr.required]="options?.required"
|
|
40
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
41
|
-
[id]="'control' + layoutNode()?._id"
|
|
42
|
-
[name]="controlName">
|
|
43
|
-
<ng-template ngFor let-selectItem [ngForOf]="selectList">
|
|
44
|
-
<option *ngIf="!isArray(selectItem?.items)"
|
|
45
|
-
[value]="selectItem?.value">
|
|
46
|
-
<span [innerHTML]="selectItem?.name"></span>
|
|
47
|
-
</option>
|
|
48
|
-
<optgroup *ngIf="isArray(selectItem?.items)"
|
|
49
|
-
[label]="selectItem?.group">
|
|
50
|
-
<option *ngFor="let subItem of selectItem.items"
|
|
51
|
-
[value]="subItem?.value">
|
|
52
|
-
<span [innerHTML]="subItem?.name"></span>
|
|
53
|
-
</option>
|
|
54
|
-
</optgroup>
|
|
55
|
-
</ng-template>
|
|
56
|
-
</select>
|
|
57
|
-
<select *ngIf="!boundControl"
|
|
58
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
59
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
60
|
-
[attr.required]="options?.required"
|
|
61
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
62
|
-
[disabled]="controlDisabled"
|
|
63
|
-
[id]="'control' + layoutNode()?._id"
|
|
64
|
-
[name]="controlName"
|
|
65
|
-
(change)="updateValue($event)">
|
|
66
|
-
<ng-template ngFor let-selectItem [ngForOf]="selectList">
|
|
67
|
-
<option *ngIf="!isArray(selectItem?.items)"
|
|
68
|
-
[selected]="selectItem?.value === controlValue"
|
|
69
|
-
[value]="selectItem?.value">
|
|
70
|
-
<span [innerHTML]="selectItem?.name"></span>
|
|
71
|
-
</option>
|
|
72
|
-
<optgroup *ngIf="isArray(selectItem?.items)"
|
|
73
|
-
[label]="selectItem?.group">
|
|
74
|
-
<option *ngFor="let subItem of selectItem.items"
|
|
75
|
-
[attr.selected]="subItem?.value === controlValue"
|
|
76
|
-
[value]="subItem?.value">
|
|
77
|
-
<span [innerHTML]="subItem?.name"></span>
|
|
78
|
-
</option>
|
|
79
|
-
</optgroup>
|
|
80
|
-
</ng-template>
|
|
81
|
-
</select>
|
|
82
|
-
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
83
|
-
}
|
|
84
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SelectComponent, decorators: [{
|
|
85
|
-
type: Component,
|
|
86
|
-
args: [{
|
|
87
|
-
// tslint:disable-next-line:component-selector
|
|
88
|
-
selector: 'select-widget',
|
|
89
|
-
template: `
|
|
90
|
-
<div
|
|
91
|
-
[class]="options?.htmlClass || ''">
|
|
92
|
-
<label *ngIf="options?.title"
|
|
93
|
-
[attr.for]="'control' + layoutNode()?._id"
|
|
94
|
-
[class]="options?.labelHtmlClass || ''"
|
|
95
|
-
[style.display]="options?.notitle ? 'none' : ''"
|
|
96
|
-
[innerHTML]="options?.title"></label>
|
|
97
|
-
<select *ngIf="boundControl"
|
|
98
|
-
[formControl]="formControl"
|
|
99
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
100
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
101
|
-
[attr.required]="options?.required"
|
|
102
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
103
|
-
[id]="'control' + layoutNode()?._id"
|
|
104
|
-
[name]="controlName">
|
|
105
|
-
<ng-template ngFor let-selectItem [ngForOf]="selectList">
|
|
106
|
-
<option *ngIf="!isArray(selectItem?.items)"
|
|
107
|
-
[value]="selectItem?.value">
|
|
108
|
-
<span [innerHTML]="selectItem?.name"></span>
|
|
109
|
-
</option>
|
|
110
|
-
<optgroup *ngIf="isArray(selectItem?.items)"
|
|
111
|
-
[label]="selectItem?.group">
|
|
112
|
-
<option *ngFor="let subItem of selectItem.items"
|
|
113
|
-
[value]="subItem?.value">
|
|
114
|
-
<span [innerHTML]="subItem?.name"></span>
|
|
115
|
-
</option>
|
|
116
|
-
</optgroup>
|
|
117
|
-
</ng-template>
|
|
118
|
-
</select>
|
|
119
|
-
<select *ngIf="!boundControl"
|
|
120
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
121
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
122
|
-
[attr.required]="options?.required"
|
|
123
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
124
|
-
[disabled]="controlDisabled"
|
|
125
|
-
[id]="'control' + layoutNode()?._id"
|
|
126
|
-
[name]="controlName"
|
|
127
|
-
(change)="updateValue($event)">
|
|
128
|
-
<ng-template ngFor let-selectItem [ngForOf]="selectList">
|
|
129
|
-
<option *ngIf="!isArray(selectItem?.items)"
|
|
130
|
-
[selected]="selectItem?.value === controlValue"
|
|
131
|
-
[value]="selectItem?.value">
|
|
132
|
-
<span [innerHTML]="selectItem?.name"></span>
|
|
133
|
-
</option>
|
|
134
|
-
<optgroup *ngIf="isArray(selectItem?.items)"
|
|
135
|
-
[label]="selectItem?.group">
|
|
136
|
-
<option *ngFor="let subItem of selectItem.items"
|
|
137
|
-
[attr.selected]="subItem?.value === controlValue"
|
|
138
|
-
[value]="subItem?.value">
|
|
139
|
-
<span [innerHTML]="subItem?.name"></span>
|
|
140
|
-
</option>
|
|
141
|
-
</optgroup>
|
|
142
|
-
</ng-template>
|
|
143
|
-
</select>
|
|
144
|
-
</div>`,
|
|
145
|
-
}]
|
|
146
|
-
}] });
|
|
147
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvd2lkZ2V0LWxpYnJhcnkvc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUErRHBFLE1BQU0sT0FBTyxlQUFlO0lBNUQ1QjtRQTZEVSxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFLNUMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFckIsZUFBVSxHQUFVLEVBQUUsQ0FBQztRQUN2QixZQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ1QsZUFBVSxHQUFHLEtBQUssQ0FBTSxTQUFTLENBQUMsQ0FBQztRQUNuQyxnQkFBVyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztRQUN6QyxjQUFTLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO0tBY2pEO0lBWkMsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxhQUFhLENBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUMvQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUNwRSxDQUFDO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQUs7UUFDZixJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDOytHQTFCVSxlQUFlO21HQUFmLGVBQWUsc2RBekRoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQXVERDs7NEZBRUUsZUFBZTtrQkE1RDNCLFNBQVM7bUJBQUM7b0JBQ1QsOENBQThDO29CQUM5QyxRQUFRLEVBQUUsZUFBZTtvQkFDekIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBdUREO2lCQUNWIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBidWlsZFRpdGxlTWFwLCBpc0FycmF5IH0gZnJvbSAnLi4vc2hhcmVkJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGlucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSnNvblNjaGVtYUZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vanNvbi1zY2hlbWEtZm9ybS5zZXJ2aWNlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdzZWxlY3Qtd2lkZ2V0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdlxyXG4gICAgICBbY2xhc3NdPVwib3B0aW9ucz8uaHRtbENsYXNzIHx8ICcnXCI+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIm9wdGlvbnM/LnRpdGxlXCJcclxuICAgICAgICBbYXR0ci5mb3JdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZSgpPy5faWRcIlxyXG4gICAgICAgIFtjbGFzc109XCJvcHRpb25zPy5sYWJlbEh0bWxDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwib3B0aW9ucz8ubm90aXRsZSA/ICdub25lJyA6ICcnXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cIm9wdGlvbnM/LnRpdGxlXCI+PC9sYWJlbD5cclxuICAgICAgPHNlbGVjdCAqbmdJZj1cImJvdW5kQ29udHJvbFwiXHJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcclxuICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidjb250cm9sJyArIGxheW91dE5vZGUoKT8uX2lkICsgJ1N0YXR1cydcIlxyXG4gICAgICAgIFthdHRyLnJlYWRvbmx5XT1cIm9wdGlvbnM/LnJlYWRvbmx5ID8gJ3JlYWRvbmx5JyA6IG51bGxcIlxyXG4gICAgICAgIFthdHRyLnJlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCJcclxuICAgICAgICBbY2xhc3NdPVwib3B0aW9ucz8uZmllbGRIdG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlKCk/Ll9pZFwiXHJcbiAgICAgICAgW25hbWVdPVwiY29udHJvbE5hbWVcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgbmdGb3IgbGV0LXNlbGVjdEl0ZW0gW25nRm9yT2ZdPVwic2VsZWN0TGlzdFwiPlxyXG4gICAgICAgICAgPG9wdGlvbiAqbmdJZj1cIiFpc0FycmF5KHNlbGVjdEl0ZW0/Lml0ZW1zKVwiXHJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJzZWxlY3RJdGVtPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cInNlbGVjdEl0ZW0/Lm5hbWVcIj48L3NwYW4+XHJcbiAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDxvcHRncm91cCAqbmdJZj1cImlzQXJyYXkoc2VsZWN0SXRlbT8uaXRlbXMpXCJcclxuICAgICAgICAgICAgW2xhYmVsXT1cInNlbGVjdEl0ZW0/Lmdyb3VwXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHN1Ykl0ZW0gb2Ygc2VsZWN0SXRlbS5pdGVtc1wiXHJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cInN1Ykl0ZW0/LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJzdWJJdGVtPy5uYW1lXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvb3B0Z3JvdXA+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgIDxzZWxlY3QgKm5nSWY9XCIhYm91bmRDb250cm9sXCJcclxuICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidjb250cm9sJyArIGxheW91dE5vZGUoKT8uX2lkICsgJ1N0YXR1cydcIlxyXG4gICAgICAgIFthdHRyLnJlYWRvbmx5XT1cIm9wdGlvbnM/LnJlYWRvbmx5ID8gJ3JlYWRvbmx5JyA6IG51bGxcIlxyXG4gICAgICAgIFthdHRyLnJlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCJcclxuICAgICAgICBbY2xhc3NdPVwib3B0aW9ucz8uZmllbGRIdG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sRGlzYWJsZWRcIlxyXG4gICAgICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlKCk/Ll9pZFwiXHJcbiAgICAgICAgW25hbWVdPVwiY29udHJvbE5hbWVcIlxyXG4gICAgICAgIChjaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtc2VsZWN0SXRlbSBbbmdGb3JPZl09XCJzZWxlY3RMaXN0XCI+XHJcbiAgICAgICAgICA8b3B0aW9uICpuZ0lmPVwiIWlzQXJyYXkoc2VsZWN0SXRlbT8uaXRlbXMpXCJcclxuICAgICAgICAgICAgW3NlbGVjdGVkXT1cInNlbGVjdEl0ZW0/LnZhbHVlID09PSBjb250cm9sVmFsdWVcIlxyXG4gICAgICAgICAgICBbdmFsdWVdPVwic2VsZWN0SXRlbT8udmFsdWVcIj5cclxuICAgICAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJzZWxlY3RJdGVtPy5uYW1lXCI+PC9zcGFuPlxyXG4gICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICA8b3B0Z3JvdXAgKm5nSWY9XCJpc0FycmF5KHNlbGVjdEl0ZW0/Lml0ZW1zKVwiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCJzZWxlY3RJdGVtPy5ncm91cFwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBzdWJJdGVtIG9mIHNlbGVjdEl0ZW0uaXRlbXNcIlxyXG4gICAgICAgICAgICAgIFthdHRyLnNlbGVjdGVkXT1cInN1Ykl0ZW0/LnZhbHVlID09PSBjb250cm9sVmFsdWVcIlxyXG4gICAgICAgICAgICAgIFt2YWx1ZV09XCJzdWJJdGVtPy52YWx1ZVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwic3ViSXRlbT8ubmFtZVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgICAgICA8L29wdGdyb3VwPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvc2VsZWN0PlxyXG4gICAgPC9kaXY+YCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHJpdmF0ZSBqc2YgPSBpbmplY3QoSnNvblNjaGVtYUZvcm1TZXJ2aWNlKTtcclxuXHJcbiAgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuICBjb250cm9sTmFtZTogc3RyaW5nO1xyXG4gIGNvbnRyb2xWYWx1ZTogYW55O1xyXG4gIGNvbnRyb2xEaXNhYmxlZCA9IGZhbHNlO1xyXG4gIGJvdW5kQ29udHJvbCA9IGZhbHNlO1xyXG4gIG9wdGlvbnM6IGFueTtcclxuICBzZWxlY3RMaXN0OiBhbnlbXSA9IFtdO1xyXG4gIGlzQXJyYXkgPSBpc0FycmF5O1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGUoKS5vcHRpb25zIHx8IHt9O1xyXG4gICAgdGhpcy5zZWxlY3RMaXN0ID0gYnVpbGRUaXRsZU1hcChcclxuICAgICAgdGhpcy5vcHRpb25zLnRpdGxlTWFwIHx8IHRoaXMub3B0aW9ucy5lbnVtTmFtZXMsXHJcbiAgICAgIHRoaXMub3B0aW9ucy5lbnVtLCAhIXRoaXMub3B0aW9ucy5yZXF1aXJlZCwgISF0aGlzLm9wdGlvbnMuZmxhdExpc3RcclxuICAgICk7XHJcbiAgICB0aGlzLmpzZi5pbml0aWFsaXplQ29udHJvbCh0aGlzKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVZhbHVlKGV2ZW50KSB7XHJcbiAgICB0aGlzLmpzZi51cGRhdGVWYWx1ZSh0aGlzLCBldmVudC50YXJnZXQudmFsdWUpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { Component, input, inject } from '@angular/core';
|
|
2
|
-
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
|
-
import { hasOwn } from '../shared/utility.functions';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class SubmitComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.jsf = inject(JsonSchemaFormService);
|
|
8
|
-
this.controlDisabled = false;
|
|
9
|
-
this.boundControl = false;
|
|
10
|
-
this.layoutNode = input(undefined);
|
|
11
|
-
this.layoutIndex = input(undefined);
|
|
12
|
-
this.dataIndex = input(undefined);
|
|
13
|
-
}
|
|
14
|
-
ngOnDestroy() {
|
|
15
|
-
this.isValidChangesSubs?.unsubscribe();
|
|
16
|
-
this.isValidChangesSubs = null;
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
this.options = this.layoutNode().options || {};
|
|
20
|
-
this.jsf.initializeControl(this);
|
|
21
|
-
if (hasOwn(this.options, 'disabled')) {
|
|
22
|
-
this.controlDisabled = this.options.disabled;
|
|
23
|
-
}
|
|
24
|
-
else if (this.jsf.formOptions.disableInvalidSubmit) {
|
|
25
|
-
this.controlDisabled = !this.jsf.isValid;
|
|
26
|
-
this.isValidChangesSubs = this.jsf.isValidChanges.subscribe(isValid => this.controlDisabled = !isValid);
|
|
27
|
-
}
|
|
28
|
-
if (this.controlValue === null || this.controlValue === undefined) {
|
|
29
|
-
this.controlValue = this.options.title;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
updateValue(event) {
|
|
33
|
-
if (typeof this.options.onClick === 'function') {
|
|
34
|
-
this.options.onClick(event);
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
this.jsf.updateValue(this, event.target.value);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SubmitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: SubmitComponent, selector: "submit-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
42
|
-
<div
|
|
43
|
-
[class]="options?.htmlClass || ''">
|
|
44
|
-
<input
|
|
45
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
46
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
47
|
-
[attr.required]="options?.required"
|
|
48
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
49
|
-
[disabled]="controlDisabled"
|
|
50
|
-
[id]="'control' + layoutNode()?._id"
|
|
51
|
-
[name]="controlName"
|
|
52
|
-
[type]="layoutNode()?.type"
|
|
53
|
-
[value]="controlValue"
|
|
54
|
-
(click)="updateValue($event)">
|
|
55
|
-
</div>`, isInline: true }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SubmitComponent, decorators: [{
|
|
58
|
-
type: Component,
|
|
59
|
-
args: [{
|
|
60
|
-
// tslint:disable-next-line:component-selector
|
|
61
|
-
selector: 'submit-widget',
|
|
62
|
-
template: `
|
|
63
|
-
<div
|
|
64
|
-
[class]="options?.htmlClass || ''">
|
|
65
|
-
<input
|
|
66
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
67
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
68
|
-
[attr.required]="options?.required"
|
|
69
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
70
|
-
[disabled]="controlDisabled"
|
|
71
|
-
[id]="'control' + layoutNode()?._id"
|
|
72
|
-
[name]="controlName"
|
|
73
|
-
[type]="layoutNode()?.type"
|
|
74
|
-
[value]="controlValue"
|
|
75
|
-
(click)="updateValue($event)">
|
|
76
|
-
</div>`,
|
|
77
|
-
}]
|
|
78
|
-
}] });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VibWl0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvd2lkZ2V0LWxpYnJhcnkvc3VibWl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFzQnJELE1BQU0sT0FBTyxlQUFlO0lBbkI1QjtRQW9CVSxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFLNUMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFWixlQUFVLEdBQUcsS0FBSyxDQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7S0E2QmpEO0lBMUJDLFdBQVc7UUFDVCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixHQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztRQUMvQyxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQ3JELElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztZQUN6QyxJQUFJLENBQUMsa0JBQWtCLEdBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDbEUsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUN6QyxDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLO1FBQ2YsSUFBSSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakQsQ0FBQztJQUNILENBQUM7K0dBdkNVLGVBQWU7bUdBQWYsZUFBZSxzZEFoQmhCOzs7Ozs7Ozs7Ozs7OztXQWNEOzs0RkFFRSxlQUFlO2tCQW5CM0IsU0FBUzttQkFBQztvQkFDVCw4Q0FBOEM7b0JBQzlDLFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7O1dBY0Q7aUJBQ1YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0LCBpbnB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJy4uL2pzb24tc2NoZW1hLWZvcm0uc2VydmljZSc7XHJcbmltcG9ydCB7IGhhc093biB9IGZyb20gJy4uL3NoYXJlZC91dGlsaXR5LmZ1bmN0aW9ucyc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAnc3VibWl0LXdpZGdldCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXZcclxuICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/Lmh0bWxDbGFzcyB8fCAnJ1wiPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidjb250cm9sJyArIGxheW91dE5vZGUoKT8uX2lkICsgJ1N0YXR1cydcIlxyXG4gICAgICAgIFthdHRyLnJlYWRvbmx5XT1cIm9wdGlvbnM/LnJlYWRvbmx5ID8gJ3JlYWRvbmx5JyA6IG51bGxcIlxyXG4gICAgICAgIFthdHRyLnJlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCJcclxuICAgICAgICBbY2xhc3NdPVwib3B0aW9ucz8uZmllbGRIdG1sQ2xhc3MgfHwgJydcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sRGlzYWJsZWRcIlxyXG4gICAgICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlKCk/Ll9pZFwiXHJcbiAgICAgICAgW25hbWVdPVwiY29udHJvbE5hbWVcIlxyXG4gICAgICAgIFt0eXBlXT1cImxheW91dE5vZGUoKT8udHlwZVwiXHJcbiAgICAgICAgW3ZhbHVlXT1cImNvbnRyb2xWYWx1ZVwiXHJcbiAgICAgICAgKGNsaWNrKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIj5cclxuICAgIDwvZGl2PmAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdWJtaXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsT25EZXN0cm95IHtcclxuICBwcml2YXRlIGpzZiA9IGluamVjdChKc29uU2NoZW1hRm9ybVNlcnZpY2UpO1xyXG5cclxuICBmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sO1xyXG4gIGNvbnRyb2xOYW1lOiBzdHJpbmc7XHJcbiAgY29udHJvbFZhbHVlOiBhbnk7XHJcbiAgY29udHJvbERpc2FibGVkID0gZmFsc2U7XHJcbiAgYm91bmRDb250cm9sID0gZmFsc2U7XHJcbiAgb3B0aW9uczogYW55O1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuXHJcbiAgaXNWYWxpZENoYW5nZXNTdWJzOlN1YnNjcmlwdGlvbjtcclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNWYWxpZENoYW5nZXNTdWJzPy51bnN1YnNjcmliZSgpO1xyXG4gICAgdGhpcy5pc1ZhbGlkQ2hhbmdlc1N1YnM9bnVsbDtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5sYXlvdXROb2RlKCkub3B0aW9ucyB8fCB7fTtcclxuICAgIHRoaXMuanNmLmluaXRpYWxpemVDb250cm9sKHRoaXMpO1xyXG4gICAgaWYgKGhhc093bih0aGlzLm9wdGlvbnMsICdkaXNhYmxlZCcpKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbERpc2FibGVkID0gdGhpcy5vcHRpb25zLmRpc2FibGVkO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLmpzZi5mb3JtT3B0aW9ucy5kaXNhYmxlSW52YWxpZFN1Ym1pdCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2xEaXNhYmxlZCA9ICF0aGlzLmpzZi5pc1ZhbGlkO1xyXG4gICAgICB0aGlzLmlzVmFsaWRDaGFuZ2VzU3Vicz10aGlzLmpzZi5pc1ZhbGlkQ2hhbmdlcy5zdWJzY3JpYmUoaXNWYWxpZCA9PiB0aGlzLmNvbnRyb2xEaXNhYmxlZCA9ICFpc1ZhbGlkKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmNvbnRyb2xWYWx1ZSA9PT0gbnVsbCB8fCB0aGlzLmNvbnRyb2xWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbFZhbHVlID0gdGhpcy5vcHRpb25zLnRpdGxlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdXBkYXRlVmFsdWUoZXZlbnQpIHtcclxuICAgIGlmICh0eXBlb2YgdGhpcy5vcHRpb25zLm9uQ2xpY2sgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgdGhpcy5vcHRpb25zLm9uQ2xpY2soZXZlbnQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5qc2YudXBkYXRlVmFsdWUodGhpcywgZXZlbnQudGFyZ2V0LnZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { Component, input, inject } from '@angular/core';
|
|
2
|
-
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./root.component";
|
|
5
|
-
export class TabComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.jsf = inject(JsonSchemaFormService);
|
|
8
|
-
this.layoutNode = input(undefined);
|
|
9
|
-
this.layoutIndex = input(undefined);
|
|
10
|
-
this.dataIndex = input(undefined);
|
|
11
|
-
}
|
|
12
|
-
ngOnInit() {
|
|
13
|
-
this.options = this.layoutNode().options || {};
|
|
14
|
-
}
|
|
15
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TabComponent, selector: "tab-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
17
|
-
<div [class]="options?.htmlClass || ''">
|
|
18
|
-
<root-widget
|
|
19
|
-
[dataIndex]="dataIndex()"
|
|
20
|
-
[layoutIndex]="layoutIndex()"
|
|
21
|
-
[layout]="layoutNode().items"></root-widget>
|
|
22
|
-
</div>`, isInline: true, dependencies: [{ kind: "component", type: i1.RootComponent, selector: "root-widget", inputs: ["dataIndex", "layoutIndex", "layout", "isOrderable", "isFlexItem"] }] }); }
|
|
23
|
-
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{
|
|
27
|
-
// tslint:disable-next-line:component-selector
|
|
28
|
-
selector: 'tab-widget',
|
|
29
|
-
template: `
|
|
30
|
-
<div [class]="options?.htmlClass || ''">
|
|
31
|
-
<root-widget
|
|
32
|
-
[dataIndex]="dataIndex()"
|
|
33
|
-
[layoutIndex]="layoutIndex()"
|
|
34
|
-
[layout]="layoutNode().items"></root-widget>
|
|
35
|
-
</div>`,
|
|
36
|
-
}]
|
|
37
|
-
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvd2lkZ2V0LWxpYnJhcnkvdGFiLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7OztBQWNwRSxNQUFNLE9BQU8sWUFBWTtJQVh6QjtRQVlVLFFBQUcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUduQyxlQUFVLEdBQUcsS0FBSyxDQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7S0FLakQ7SUFIQyxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUNqRCxDQUFDOytHQVZVLFlBQVk7bUdBQVosWUFBWSxtZEFSYjs7Ozs7O1dBTUQ7OzRGQUVFLFlBQVk7a0JBWHhCLFNBQVM7bUJBQUM7b0JBQ1QsOENBQThDO29CQUM5QyxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsUUFBUSxFQUFFOzs7Ozs7V0FNRDtpQkFDViIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBpbnB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJy4uL2pzb24tc2NoZW1hLWZvcm0uc2VydmljZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAndGFiLXdpZGdldCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgW2NsYXNzXT1cIm9wdGlvbnM/Lmh0bWxDbGFzcyB8fCAnJ1wiPlxyXG4gICAgICA8cm9vdC13aWRnZXRcclxuICAgICAgICBbZGF0YUluZGV4XT1cImRhdGFJbmRleCgpXCJcclxuICAgICAgICBbbGF5b3V0SW5kZXhdPVwibGF5b3V0SW5kZXgoKVwiXHJcbiAgICAgICAgW2xheW91dF09XCJsYXlvdXROb2RlKCkuaXRlbXNcIj48L3Jvb3Qtd2lkZ2V0PlxyXG4gICAgPC9kaXY+YCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHJpdmF0ZSBqc2YgPSBpbmplY3QoSnNvblNjaGVtYUZvcm1TZXJ2aWNlKTtcclxuXHJcbiAgb3B0aW9uczogYW55O1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGUoKS5vcHRpb25zIHx8IHt9O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { Component, input, signal, inject } from '@angular/core';
|
|
2
|
-
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "./select-framework.component";
|
|
6
|
-
export class TabsComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.jsf = inject(JsonSchemaFormService);
|
|
9
|
-
this.selectedItem = 0;
|
|
10
|
-
this.showAddTab = true;
|
|
11
|
-
this.layoutNode = input(undefined);
|
|
12
|
-
this.layoutIndex = input(undefined);
|
|
13
|
-
this.dataIndex = input(undefined);
|
|
14
|
-
}
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.options = this.layoutNode().options || {};
|
|
17
|
-
this.itemCount = this.layoutNode().items.length - 1;
|
|
18
|
-
this.updateControl();
|
|
19
|
-
}
|
|
20
|
-
select(index) {
|
|
21
|
-
const layoutNode = this.layoutNode();
|
|
22
|
-
if (layoutNode.items[index].type === '$ref') {
|
|
23
|
-
this.itemCount = layoutNode.items.length;
|
|
24
|
-
this.jsf.addItem({
|
|
25
|
-
layoutNode: signal(layoutNode.items[index]),
|
|
26
|
-
layoutIndex: signal(this.layoutIndex().concat(index)),
|
|
27
|
-
dataIndex: signal(this.dataIndex().concat(index))
|
|
28
|
-
});
|
|
29
|
-
this.updateControl();
|
|
30
|
-
}
|
|
31
|
-
this.selectedItem = index;
|
|
32
|
-
}
|
|
33
|
-
updateControl() {
|
|
34
|
-
const lastItem = this.layoutNode().items[this.layoutNode().items.length - 1];
|
|
35
|
-
if (lastItem.type === '$ref' &&
|
|
36
|
-
this.itemCount >= (lastItem.options.maxItems || 1000)) {
|
|
37
|
-
this.showAddTab = false;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
setTabTitle(item, index) {
|
|
41
|
-
return this.jsf.setArrayItemTitle(this, item, index);
|
|
42
|
-
}
|
|
43
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TabsComponent, selector: "tabs-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
45
|
-
<ul
|
|
46
|
-
[class]="options?.labelHtmlClass || ''">
|
|
47
|
-
<li *ngFor="let item of layoutNode()?.items; let i = index"
|
|
48
|
-
[class]="(options?.itemLabelHtmlClass || '') + (selectedItem === i ?
|
|
49
|
-
(' ' + (options?.activeClass || '') + ' ' + (options?.style?.selected || '')) :
|
|
50
|
-
(' ' + options?.style?.unselected))"
|
|
51
|
-
role="presentation"
|
|
52
|
-
data-tabs>
|
|
53
|
-
<a *ngIf="showAddTab || item.type !== '$ref'"
|
|
54
|
-
[class]="'nav-link' + (selectedItem === i ? (' ' + options?.activeClass + ' ' + options?.style?.selected) :
|
|
55
|
-
(' ' + options?.style?.unselected))"
|
|
56
|
-
[innerHTML]="setTabTitle(item, i)"
|
|
57
|
-
(click)="select(i)"></a>
|
|
58
|
-
</li>
|
|
59
|
-
</ul>
|
|
60
|
-
|
|
61
|
-
<div *ngFor="let layoutItem of layoutNode()?.items; let i = index"
|
|
62
|
-
[class]="options?.htmlClass || ''">
|
|
63
|
-
|
|
64
|
-
<select-framework-widget *ngIf="selectedItem === i"
|
|
65
|
-
[class]="(options?.fieldHtmlClass || '') +
|
|
66
|
-
' ' + (options?.activeClass || '') +
|
|
67
|
-
' ' + (options?.style?.selected || '')"
|
|
68
|
-
[dataIndex]="layoutNode()?.dataType === 'array' ? (dataIndex() || []).concat(i) : dataIndex()"
|
|
69
|
-
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
70
|
-
[layoutNode]="layoutItem"></select-framework-widget>
|
|
71
|
-
|
|
72
|
-
</div>`, isInline: true, styles: ["a{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
|
|
73
|
-
}
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TabsComponent, decorators: [{
|
|
75
|
-
type: Component,
|
|
76
|
-
args: [{ selector: 'tabs-widget', template: `
|
|
77
|
-
<ul
|
|
78
|
-
[class]="options?.labelHtmlClass || ''">
|
|
79
|
-
<li *ngFor="let item of layoutNode()?.items; let i = index"
|
|
80
|
-
[class]="(options?.itemLabelHtmlClass || '') + (selectedItem === i ?
|
|
81
|
-
(' ' + (options?.activeClass || '') + ' ' + (options?.style?.selected || '')) :
|
|
82
|
-
(' ' + options?.style?.unselected))"
|
|
83
|
-
role="presentation"
|
|
84
|
-
data-tabs>
|
|
85
|
-
<a *ngIf="showAddTab || item.type !== '$ref'"
|
|
86
|
-
[class]="'nav-link' + (selectedItem === i ? (' ' + options?.activeClass + ' ' + options?.style?.selected) :
|
|
87
|
-
(' ' + options?.style?.unselected))"
|
|
88
|
-
[innerHTML]="setTabTitle(item, i)"
|
|
89
|
-
(click)="select(i)"></a>
|
|
90
|
-
</li>
|
|
91
|
-
</ul>
|
|
92
|
-
|
|
93
|
-
<div *ngFor="let layoutItem of layoutNode()?.items; let i = index"
|
|
94
|
-
[class]="options?.htmlClass || ''">
|
|
95
|
-
|
|
96
|
-
<select-framework-widget *ngIf="selectedItem === i"
|
|
97
|
-
[class]="(options?.fieldHtmlClass || '') +
|
|
98
|
-
' ' + (options?.activeClass || '') +
|
|
99
|
-
' ' + (options?.style?.selected || '')"
|
|
100
|
-
[dataIndex]="layoutNode()?.dataType === 'array' ? (dataIndex() || []).concat(i) : dataIndex()"
|
|
101
|
-
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
102
|
-
[layoutNode]="layoutItem"></select-framework-widget>
|
|
103
|
-
|
|
104
|
-
</div>`, styles: ["a{cursor:pointer}\n"] }]
|
|
105
|
-
}] });
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtY29yZS9zcmMvbGliL3dpZGdldC1saWJyYXJ5L3RhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFxQ3BFLE1BQU0sT0FBTyxhQUFhO0lBbEMxQjtRQW1DVSxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFJNUMsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNULGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztLQWtDakQ7SUFoQ0MsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSztRQUNWLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQzVDLElBQUksQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDekMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7Z0JBQ2YsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzQyxXQUFXLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JELFNBQVMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNsRCxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFFRCxhQUFhO1FBQ1gsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUM3RSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEtBQUssTUFBTTtZQUMxQixJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLEVBQ3JELENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFTLEVBQUUsS0FBYTtRQUNsQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RCxDQUFDOytHQTFDVSxhQUFhO21HQUFiLGFBQWEsb2RBL0JkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1dBNEJEOzs0RkFHRSxhQUFhO2tCQWxDekIsU0FBUzsrQkFFRSxhQUFhLFlBQ2I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0E0QkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgaW5wdXQsIHNpZ25hbCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJy4uL2pzb24tc2NoZW1hLWZvcm0uc2VydmljZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAndGFicy13aWRnZXQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8dWxcclxuICAgICAgW2NsYXNzXT1cIm9wdGlvbnM/LmxhYmVsSHRtbENsYXNzIHx8ICcnXCI+XHJcbiAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBsYXlvdXROb2RlKCk/Lml0ZW1zOyBsZXQgaSA9IGluZGV4XCJcclxuICAgICAgICBbY2xhc3NdPVwiKG9wdGlvbnM/Lml0ZW1MYWJlbEh0bWxDbGFzcyB8fCAnJykgKyAoc2VsZWN0ZWRJdGVtID09PSBpID9cclxuICAgICAgICAgICgnICcgKyAob3B0aW9ucz8uYWN0aXZlQ2xhc3MgfHwgJycpICsgJyAnICsgKG9wdGlvbnM/LnN0eWxlPy5zZWxlY3RlZCB8fCAnJykpIDpcclxuICAgICAgICAgICgnICcgKyBvcHRpb25zPy5zdHlsZT8udW5zZWxlY3RlZCkpXCJcclxuICAgICAgICByb2xlPVwicHJlc2VudGF0aW9uXCJcclxuICAgICAgICBkYXRhLXRhYnM+XHJcbiAgICAgICAgPGEgKm5nSWY9XCJzaG93QWRkVGFiIHx8IGl0ZW0udHlwZSAhPT0gJyRyZWYnXCJcclxuICAgICAgICAgICBbY2xhc3NdPVwiJ25hdi1saW5rJyArIChzZWxlY3RlZEl0ZW0gPT09IGkgPyAoJyAnICsgb3B0aW9ucz8uYWN0aXZlQ2xhc3MgKyAnICcgKyBvcHRpb25zPy5zdHlsZT8uc2VsZWN0ZWQpIDpcclxuICAgICAgICAgICAgKCcgJyArIG9wdGlvbnM/LnN0eWxlPy51bnNlbGVjdGVkKSlcIlxyXG4gICAgICAgICAgW2lubmVySFRNTF09XCJzZXRUYWJUaXRsZShpdGVtLCBpKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0KGkpXCI+PC9hPlxyXG4gICAgICA8L2xpPlxyXG4gICAgPC91bD5cclxuXHJcbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBsYXlvdXRJdGVtIG9mIGxheW91dE5vZGUoKT8uaXRlbXM7IGxldCBpID0gaW5kZXhcIlxyXG4gICAgICBbY2xhc3NdPVwib3B0aW9ucz8uaHRtbENsYXNzIHx8ICcnXCI+XHJcblxyXG4gICAgICA8c2VsZWN0LWZyYW1ld29yay13aWRnZXQgKm5nSWY9XCJzZWxlY3RlZEl0ZW0gPT09IGlcIlxyXG4gICAgICAgIFtjbGFzc109XCIob3B0aW9ucz8uZmllbGRIdG1sQ2xhc3MgfHwgJycpICtcclxuICAgICAgICAgICcgJyArIChvcHRpb25zPy5hY3RpdmVDbGFzcyB8fCAnJykgK1xyXG4gICAgICAgICAgJyAnICsgKG9wdGlvbnM/LnN0eWxlPy5zZWxlY3RlZCB8fCAnJylcIlxyXG4gICAgICAgIFtkYXRhSW5kZXhdPVwibGF5b3V0Tm9kZSgpPy5kYXRhVHlwZSA9PT0gJ2FycmF5JyA/IChkYXRhSW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpIDogZGF0YUluZGV4KClcIlxyXG4gICAgICAgIFtsYXlvdXRJbmRleF09XCIobGF5b3V0SW5kZXgoKSB8fCBbXSkuY29uY2F0KGkpXCJcclxuICAgICAgICBbbGF5b3V0Tm9kZV09XCJsYXlvdXRJdGVtXCI+PC9zZWxlY3QtZnJhbWV3b3JrLXdpZGdldD5cclxuXHJcbiAgICA8L2Rpdj5gLFxyXG4gIHN0eWxlczogW2AgYSB7IGN1cnNvcjogcG9pbnRlcjsgfSBgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRhYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHByaXZhdGUganNmID0gaW5qZWN0KEpzb25TY2hlbWFGb3JtU2VydmljZSk7XHJcblxyXG4gIG9wdGlvbnM6IGFueTtcclxuICBpdGVtQ291bnQ6IG51bWJlcjtcclxuICBzZWxlY3RlZEl0ZW0gPSAwO1xyXG4gIHNob3dBZGRUYWIgPSB0cnVlO1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGUoKS5vcHRpb25zIHx8IHt9O1xyXG4gICAgdGhpcy5pdGVtQ291bnQgPSB0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5sZW5ndGggLSAxO1xyXG4gICAgdGhpcy51cGRhdGVDb250cm9sKCk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3QoaW5kZXgpIHtcclxuICAgIGNvbnN0IGxheW91dE5vZGUgPSB0aGlzLmxheW91dE5vZGUoKTtcclxuICAgIGlmIChsYXlvdXROb2RlLml0ZW1zW2luZGV4XS50eXBlID09PSAnJHJlZicpIHtcclxuICAgICAgdGhpcy5pdGVtQ291bnQgPSBsYXlvdXROb2RlLml0ZW1zLmxlbmd0aDtcclxuICAgICAgdGhpcy5qc2YuYWRkSXRlbSh7XHJcbiAgICAgICAgbGF5b3V0Tm9kZTogc2lnbmFsKGxheW91dE5vZGUuaXRlbXNbaW5kZXhdKSxcclxuICAgICAgICBsYXlvdXRJbmRleDogc2lnbmFsKHRoaXMubGF5b3V0SW5kZXgoKS5jb25jYXQoaW5kZXgpKSxcclxuICAgICAgICBkYXRhSW5kZXg6IHNpZ25hbCh0aGlzLmRhdGFJbmRleCgpLmNvbmNhdChpbmRleCkpXHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVDb250cm9sKCkge1xyXG4gICAgY29uc3QgbGFzdEl0ZW0gPSB0aGlzLmxheW91dE5vZGUoKS5pdGVtc1t0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5sZW5ndGggLSAxXTtcclxuICAgIGlmIChsYXN0SXRlbS50eXBlID09PSAnJHJlZicgJiZcclxuICAgICAgdGhpcy5pdGVtQ291bnQgPj0gKGxhc3RJdGVtLm9wdGlvbnMubWF4SXRlbXMgfHwgMTAwMClcclxuICAgICkge1xyXG4gICAgICB0aGlzLnNob3dBZGRUYWIgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFRhYlRpdGxlKGl0ZW06IGFueSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5qc2Yuc2V0QXJyYXlJdGVtVGl0bGUodGhpcywgaXRlbSwgaW5kZXgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Component, ComponentFactoryResolver, ViewContainerRef, input, inject, viewChild } from '@angular/core';
|
|
2
|
-
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class TemplateComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.componentFactory = inject(ComponentFactoryResolver);
|
|
7
|
-
this.jsf = inject(JsonSchemaFormService);
|
|
8
|
-
this.newComponent = null;
|
|
9
|
-
this.layoutNode = input(undefined);
|
|
10
|
-
this.layoutIndex = input(undefined);
|
|
11
|
-
this.dataIndex = input(undefined);
|
|
12
|
-
this.widgetContainer = viewChild('widgetContainer', { read: ViewContainerRef });
|
|
13
|
-
}
|
|
14
|
-
ngOnInit() {
|
|
15
|
-
this.updateComponent();
|
|
16
|
-
}
|
|
17
|
-
ngOnChanges() {
|
|
18
|
-
this.updateComponent();
|
|
19
|
-
}
|
|
20
|
-
updateComponent() {
|
|
21
|
-
const layoutNode = this.layoutNode();
|
|
22
|
-
const widgetContainer = this.widgetContainer();
|
|
23
|
-
if (widgetContainer && !this.newComponent && layoutNode.options.template) {
|
|
24
|
-
this.newComponent = widgetContainer.createComponent(this.componentFactory.resolveComponentFactory(layoutNode.options.template));
|
|
25
|
-
}
|
|
26
|
-
if (this.newComponent) {
|
|
27
|
-
for (const input of ['layoutNode', 'layoutIndex', 'dataIndex']) {
|
|
28
|
-
this.newComponent.instance[input] = this[input];
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.13", type: TemplateComponent, selector: "template-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "widgetContainer", first: true, predicate: ["widgetContainer"], descendants: true, read: ViewContainerRef, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `<div #widgetContainer></div>`, isInline: true }); }
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TemplateComponent, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{
|
|
38
|
-
// tslint:disable-next-line:component-selector
|
|
39
|
-
selector: 'template-widget',
|
|
40
|
-
template: `<div #widgetContainer></div>`,
|
|
41
|
-
}]
|
|
42
|
-
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi93aWRnZXQtbGlicmFyeS90ZW1wbGF0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBbUMsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakosT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBUXBFLE1BQU0sT0FBTyxpQkFBaUI7SUFMOUI7UUFNVSxxQkFBZ0IsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUNwRCxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFNUMsaUJBQVksR0FBc0IsSUFBSSxDQUFDO1FBQzlCLGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztRQUN2QyxvQkFBZSxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7S0F3QnJGO0lBdEJDLFFBQVE7UUFDTixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQy9DLElBQUksZUFBZSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pFLElBQUksQ0FBQyxZQUFZLEdBQUcsZUFBZSxDQUFDLGVBQWUsQ0FDakQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQzNFLENBQUM7UUFDSixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsS0FBSyxNQUFNLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDL0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0EvQlUsaUJBQWlCO21HQUFqQixpQkFBaUIsdWpCQVFvQyxnQkFBZ0Isa0VBVnRFLDhCQUE4Qjs7NEZBRTdCLGlCQUFpQjtrQkFMN0IsU0FBUzttQkFBQztvQkFDVCw4Q0FBOEM7b0JBQzlDLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSw4QkFBOEI7aUJBQ3pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIENvbXBvbmVudFJlZiwgT25DaGFuZ2VzLCBPbkluaXQsIFZpZXdDb250YWluZXJSZWYsIGlucHV0LCBpbmplY3QsIHZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICcuLi9qc29uLXNjaGVtYS1mb3JtLnNlcnZpY2UnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ3RlbXBsYXRlLXdpZGdldCcsXHJcbiAgdGVtcGxhdGU6IGA8ZGl2ICN3aWRnZXRDb250YWluZXI+PC9kaXY+YCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG4gIHByaXZhdGUgY29tcG9uZW50RmFjdG9yeSA9IGluamVjdChDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpO1xyXG4gIHByaXZhdGUganNmID0gaW5qZWN0KEpzb25TY2hlbWFGb3JtU2VydmljZSk7XHJcblxyXG4gIG5ld0NvbXBvbmVudDogQ29tcG9uZW50UmVmPGFueT4gPSBudWxsO1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSB3aWRnZXRDb250YWluZXIgPSB2aWV3Q2hpbGQoJ3dpZGdldENvbnRhaW5lcicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnVwZGF0ZUNvbXBvbmVudCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKSB7XHJcbiAgICB0aGlzLnVwZGF0ZUNvbXBvbmVudCgpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ29tcG9uZW50KCkge1xyXG4gICAgY29uc3QgbGF5b3V0Tm9kZSA9IHRoaXMubGF5b3V0Tm9kZSgpO1xyXG4gICAgY29uc3Qgd2lkZ2V0Q29udGFpbmVyID0gdGhpcy53aWRnZXRDb250YWluZXIoKTtcclxuICAgIGlmICh3aWRnZXRDb250YWluZXIgJiYgIXRoaXMubmV3Q29tcG9uZW50ICYmIGxheW91dE5vZGUub3B0aW9ucy50ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLm5ld0NvbXBvbmVudCA9IHdpZGdldENvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoXHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRGYWN0b3J5LnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGxheW91dE5vZGUub3B0aW9ucy50ZW1wbGF0ZSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLm5ld0NvbXBvbmVudCkge1xyXG4gICAgICBmb3IgKGNvbnN0IGlucHV0IG9mIFsnbGF5b3V0Tm9kZScsICdsYXlvdXRJbmRleCcsICdkYXRhSW5kZXgnXSkge1xyXG4gICAgICAgIHRoaXMubmV3Q29tcG9uZW50Lmluc3RhbmNlW2lucHV0XSA9IHRoaXNbaW5wdXRdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { Component, input, inject } from '@angular/core';
|
|
2
|
-
import { JsonSchemaFormService } from '../json-schema-form.service';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/forms";
|
|
6
|
-
export class TextareaComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.jsf = inject(JsonSchemaFormService);
|
|
9
|
-
this.controlDisabled = false;
|
|
10
|
-
this.boundControl = false;
|
|
11
|
-
this.layoutNode = input(undefined);
|
|
12
|
-
this.layoutIndex = input(undefined);
|
|
13
|
-
this.dataIndex = input(undefined);
|
|
14
|
-
}
|
|
15
|
-
ngOnInit() {
|
|
16
|
-
this.options = this.layoutNode().options || {};
|
|
17
|
-
this.jsf.initializeControl(this);
|
|
18
|
-
}
|
|
19
|
-
updateValue(event) {
|
|
20
|
-
this.jsf.updateValue(this, event.target.value);
|
|
21
|
-
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: TextareaComponent, selector: "textarea-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
24
|
-
<div
|
|
25
|
-
[class]="options?.htmlClass || ''">
|
|
26
|
-
<label *ngIf="options?.title"
|
|
27
|
-
[attr.for]="'control' + layoutNode()?._id"
|
|
28
|
-
[class]="options?.labelHtmlClass || ''"
|
|
29
|
-
[style.display]="options?.notitle ? 'none' : ''"
|
|
30
|
-
[innerHTML]="options?.title"></label>
|
|
31
|
-
<textarea *ngIf="boundControl"
|
|
32
|
-
[formControl]="formControl"
|
|
33
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
34
|
-
[attr.maxlength]="options?.maxLength"
|
|
35
|
-
[attr.minlength]="options?.minLength"
|
|
36
|
-
[attr.pattern]="options?.pattern"
|
|
37
|
-
[attr.placeholder]="options?.placeholder"
|
|
38
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
39
|
-
[attr.required]="options?.required"
|
|
40
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
41
|
-
[id]="'control' + layoutNode()?._id"
|
|
42
|
-
[name]="controlName"></textarea>
|
|
43
|
-
<textarea *ngIf="!boundControl"
|
|
44
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
45
|
-
[attr.maxlength]="options?.maxLength"
|
|
46
|
-
[attr.minlength]="options?.minLength"
|
|
47
|
-
[attr.pattern]="options?.pattern"
|
|
48
|
-
[attr.placeholder]="options?.placeholder"
|
|
49
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
50
|
-
[attr.required]="options?.required"
|
|
51
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
52
|
-
[disabled]="controlDisabled"
|
|
53
|
-
[id]="'control' + layoutNode()?._id"
|
|
54
|
-
[name]="controlName"
|
|
55
|
-
[value]="controlValue"
|
|
56
|
-
(input)="updateValue($event)">{{controlValue}}</textarea>
|
|
57
|
-
</div>`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
|
|
58
|
-
}
|
|
59
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TextareaComponent, decorators: [{
|
|
60
|
-
type: Component,
|
|
61
|
-
args: [{
|
|
62
|
-
// tslint:disable-next-line:component-selector
|
|
63
|
-
selector: 'textarea-widget',
|
|
64
|
-
template: `
|
|
65
|
-
<div
|
|
66
|
-
[class]="options?.htmlClass || ''">
|
|
67
|
-
<label *ngIf="options?.title"
|
|
68
|
-
[attr.for]="'control' + layoutNode()?._id"
|
|
69
|
-
[class]="options?.labelHtmlClass || ''"
|
|
70
|
-
[style.display]="options?.notitle ? 'none' : ''"
|
|
71
|
-
[innerHTML]="options?.title"></label>
|
|
72
|
-
<textarea *ngIf="boundControl"
|
|
73
|
-
[formControl]="formControl"
|
|
74
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
75
|
-
[attr.maxlength]="options?.maxLength"
|
|
76
|
-
[attr.minlength]="options?.minLength"
|
|
77
|
-
[attr.pattern]="options?.pattern"
|
|
78
|
-
[attr.placeholder]="options?.placeholder"
|
|
79
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
80
|
-
[attr.required]="options?.required"
|
|
81
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
82
|
-
[id]="'control' + layoutNode()?._id"
|
|
83
|
-
[name]="controlName"></textarea>
|
|
84
|
-
<textarea *ngIf="!boundControl"
|
|
85
|
-
[attr.aria-describedby]="'control' + layoutNode()?._id + 'Status'"
|
|
86
|
-
[attr.maxlength]="options?.maxLength"
|
|
87
|
-
[attr.minlength]="options?.minLength"
|
|
88
|
-
[attr.pattern]="options?.pattern"
|
|
89
|
-
[attr.placeholder]="options?.placeholder"
|
|
90
|
-
[attr.readonly]="options?.readonly ? 'readonly' : null"
|
|
91
|
-
[attr.required]="options?.required"
|
|
92
|
-
[class]="options?.fieldHtmlClass || ''"
|
|
93
|
-
[disabled]="controlDisabled"
|
|
94
|
-
[id]="'control' + layoutNode()?._id"
|
|
95
|
-
[name]="controlName"
|
|
96
|
-
[value]="controlValue"
|
|
97
|
-
(input)="updateValue($event)">{{controlValue}}</textarea>
|
|
98
|
-
</div>`,
|
|
99
|
-
}]
|
|
100
|
-
}] });
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi93aWRnZXQtbGlicmFyeS90ZXh0YXJlYS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7O0FBMENwRSxNQUFNLE9BQU8saUJBQWlCO0lBdkM5QjtRQXdDVSxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFLNUMsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFWixlQUFVLEdBQUcsS0FBSyxDQUFNLFNBQVMsQ0FBQyxDQUFDO1FBQ25DLGdCQUFXLEdBQUcsS0FBSyxDQUFXLFNBQVMsQ0FBQyxDQUFDO1FBQ3pDLGNBQVMsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7S0FVakQ7SUFSQyxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBSztRQUNmLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7K0dBcEJVLGlCQUFpQjttR0FBakIsaUJBQWlCLHdkQXBDbEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FrQ0Q7OzRGQUVFLGlCQUFpQjtrQkF2QzdCLFNBQVM7bUJBQUM7b0JBQ1QsOENBQThDO29CQUM5QyxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FrQ0Q7aUJBQ1YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBpbnB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtU2VydmljZSB9IGZyb20gJy4uL2pzb24tc2NoZW1hLWZvcm0uc2VydmljZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmNvbXBvbmVudC1zZWxlY3RvclxyXG4gIHNlbGVjdG9yOiAndGV4dGFyZWEtd2lkZ2V0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdlxyXG4gICAgICBbY2xhc3NdPVwib3B0aW9ucz8uaHRtbENsYXNzIHx8ICcnXCI+XHJcbiAgICAgIDxsYWJlbCAqbmdJZj1cIm9wdGlvbnM/LnRpdGxlXCJcclxuICAgICAgICBbYXR0ci5mb3JdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZSgpPy5faWRcIlxyXG4gICAgICAgIFtjbGFzc109XCJvcHRpb25zPy5sYWJlbEh0bWxDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwib3B0aW9ucz8ubm90aXRsZSA/ICdub25lJyA6ICcnXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cIm9wdGlvbnM/LnRpdGxlXCI+PC9sYWJlbD5cclxuICAgICAgPHRleHRhcmVhICpuZ0lmPVwiYm91bmRDb250cm9sXCJcclxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIlxyXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZSgpPy5faWQgKyAnU3RhdHVzJ1wiXHJcbiAgICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm9wdGlvbnM/Lm1heExlbmd0aFwiXHJcbiAgICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm9wdGlvbnM/Lm1pbkxlbmd0aFwiXHJcbiAgICAgICAgW2F0dHIucGF0dGVybl09XCJvcHRpb25zPy5wYXR0ZXJuXCJcclxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJvcHRpb25zPy5wbGFjZWhvbGRlclwiXHJcbiAgICAgICAgW2F0dHIucmVhZG9ubHldPVwib3B0aW9ucz8ucmVhZG9ubHkgPyAncmVhZG9ubHknIDogbnVsbFwiXHJcbiAgICAgICAgW2F0dHIucmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxyXG4gICAgICAgIFtjbGFzc109XCJvcHRpb25zPy5maWVsZEh0bWxDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgW2lkXT1cIidjb250cm9sJyArIGxheW91dE5vZGUoKT8uX2lkXCJcclxuICAgICAgICBbbmFtZV09XCJjb250cm9sTmFtZVwiPjwvdGV4dGFyZWE+XHJcbiAgICAgIDx0ZXh0YXJlYSAqbmdJZj1cIiFib3VuZENvbnRyb2xcIlxyXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZSgpPy5faWQgKyAnU3RhdHVzJ1wiXHJcbiAgICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm9wdGlvbnM/Lm1heExlbmd0aFwiXHJcbiAgICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm9wdGlvbnM/Lm1pbkxlbmd0aFwiXHJcbiAgICAgICAgW2F0dHIucGF0dGVybl09XCJvcHRpb25zPy5wYXR0ZXJuXCJcclxuICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJvcHRpb25zPy5wbGFjZWhvbGRlclwiXHJcbiAgICAgICAgW2F0dHIucmVhZG9ubHldPVwib3B0aW9ucz8ucmVhZG9ubHkgPyAncmVhZG9ubHknIDogbnVsbFwiXHJcbiAgICAgICAgW2F0dHIucmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxyXG4gICAgICAgIFtjbGFzc109XCJvcHRpb25zPy5maWVsZEh0bWxDbGFzcyB8fCAnJ1wiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImNvbnRyb2xEaXNhYmxlZFwiXHJcbiAgICAgICAgW2lkXT1cIidjb250cm9sJyArIGxheW91dE5vZGUoKT8uX2lkXCJcclxuICAgICAgICBbbmFtZV09XCJjb250cm9sTmFtZVwiXHJcbiAgICAgICAgW3ZhbHVlXT1cImNvbnRyb2xWYWx1ZVwiXHJcbiAgICAgICAgKGlucHV0KT1cInVwZGF0ZVZhbHVlKCRldmVudClcIj57e2NvbnRyb2xWYWx1ZX19PC90ZXh0YXJlYT5cclxuICAgIDwvZGl2PmAsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXh0YXJlYUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgcHJpdmF0ZSBqc2YgPSBpbmplY3QoSnNvblNjaGVtYUZvcm1TZXJ2aWNlKTtcclxuXHJcbiAgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcclxuICBjb250cm9sTmFtZTogc3RyaW5nO1xyXG4gIGNvbnRyb2xWYWx1ZTogYW55O1xyXG4gIGNvbnRyb2xEaXNhYmxlZCA9IGZhbHNlO1xyXG4gIGJvdW5kQ29udHJvbCA9IGZhbHNlO1xyXG4gIG9wdGlvbnM6IGFueTtcclxuICByZWFkb25seSBsYXlvdXROb2RlID0gaW5wdXQ8YW55Pih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dEluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5sYXlvdXROb2RlKCkub3B0aW9ucyB8fCB7fTtcclxuICAgIHRoaXMuanNmLmluaXRpYWxpemVDb250cm9sKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlVmFsdWUoZXZlbnQpIHtcclxuICAgIHRoaXMuanNmLnVwZGF0ZVZhbHVlKHRoaXMsIGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { BASIC_WIDGETS } from './index';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { NgModule } from '@angular/core';
|
|
5
|
-
import { OrderableDirective } from './orderable.directive';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "./add-reference.component";
|
|
8
|
-
import * as i2 from "./one-of.component";
|
|
9
|
-
import * as i3 from "./button.component";
|
|
10
|
-
import * as i4 from "./checkbox.component";
|
|
11
|
-
import * as i5 from "./checkboxes.component";
|
|
12
|
-
import * as i6 from "./file.component";
|
|
13
|
-
import * as i7 from "./hidden.component";
|
|
14
|
-
import * as i8 from "./input.component";
|
|
15
|
-
import * as i9 from "./message.component";
|
|
16
|
-
import * as i10 from "./none.component";
|
|
17
|
-
import * as i11 from "./number.component";
|
|
18
|
-
import * as i12 from "./radios.component";
|
|
19
|
-
import * as i13 from "./root.component";
|
|
20
|
-
import * as i14 from "./section.component";
|
|
21
|
-
import * as i15 from "./select.component";
|
|
22
|
-
import * as i16 from "./select-framework.component";
|
|
23
|
-
import * as i17 from "./select-widget.component";
|
|
24
|
-
import * as i18 from "./submit.component";
|
|
25
|
-
import * as i19 from "./tab.component";
|
|
26
|
-
import * as i20 from "./tabs.component";
|
|
27
|
-
import * as i21 from "./template.component";
|
|
28
|
-
import * as i22 from "./textarea.component";
|
|
29
|
-
export class WidgetLibraryModule {
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WidgetLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
31
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: WidgetLibraryModule, declarations: [i1.AddReferenceComponent, i2.OneOfComponent, i3.ButtonComponent, i4.CheckboxComponent, i5.CheckboxesComponent, i6.FileComponent, i7.HiddenComponent, i8.InputComponent, i9.MessageComponent, i10.NoneComponent, i11.NumberComponent, i12.RadiosComponent, i13.RootComponent, i14.SectionComponent, i15.SelectComponent, i16.SelectFrameworkComponent, i17.SelectWidgetComponent, i18.SubmitComponent, i19.TabComponent, i20.TabsComponent, i21.TemplateComponent, i22.TextareaComponent, OrderableDirective], imports: [CommonModule, FormsModule, ReactiveFormsModule], exports: [i1.AddReferenceComponent, i2.OneOfComponent, i3.ButtonComponent, i4.CheckboxComponent, i5.CheckboxesComponent, i6.FileComponent, i7.HiddenComponent, i8.InputComponent, i9.MessageComponent, i10.NoneComponent, i11.NumberComponent, i12.RadiosComponent, i13.RootComponent, i14.SectionComponent, i15.SelectComponent, i16.SelectFrameworkComponent, i17.SelectWidgetComponent, i18.SubmitComponent, i19.TabComponent, i20.TabsComponent, i21.TemplateComponent, i22.TextareaComponent, OrderableDirective] }); }
|
|
32
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WidgetLibraryModule, imports: [CommonModule, FormsModule, ReactiveFormsModule] }); }
|
|
33
|
-
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WidgetLibraryModule, decorators: [{
|
|
35
|
-
type: NgModule,
|
|
36
|
-
args: [{
|
|
37
|
-
imports: [CommonModule, FormsModule, ReactiveFormsModule],
|
|
38
|
-
declarations: [...BASIC_WIDGETS, OrderableDirective],
|
|
39
|
-
exports: [...BASIC_WIDGETS, OrderableDirective]
|
|
40
|
-
}]
|
|
41
|
-
}] });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2lkZ2V0LWxpYnJhcnkubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi93aWRnZXQtbGlicmFyeS93aWRnZXQtbGlicmFyeS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU8zRCxNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7Z0hBQW5CLG1CQUFtQiwwZUFISyxrQkFBa0IsYUFEekMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsc2VBRTVCLGtCQUFrQjtnSEFFckMsbUJBQW1CLFlBSmxCLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1COzs0RkFJL0MsbUJBQW1CO2tCQUwvQixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsbUJBQW1CLENBQUM7b0JBQ3pELFlBQVksRUFBRSxDQUFDLEdBQUcsYUFBYSxFQUFFLGtCQUFrQixDQUFDO29CQUNwRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQztpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCQVNJQ19XSURHRVRTIH0gZnJvbSAnLi9pbmRleCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPcmRlcmFibGVEaXJlY3RpdmUgfSBmcm9tICcuL29yZGVyYWJsZS5kaXJlY3RpdmUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlXSxcclxuICAgIGRlY2xhcmF0aW9uczogWy4uLkJBU0lDX1dJREdFVFMsIE9yZGVyYWJsZURpcmVjdGl2ZV0sXHJcbiAgICBleHBvcnRzOiBbLi4uQkFTSUNfV0lER0VUUywgT3JkZXJhYmxlRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgV2lkZ2V0TGlicmFyeU1vZHVsZSB7XHJcbn1cclxuIl19
|