@covalent/dynamic-forms 6.3.0 → 6.4.0
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/esm2022/lib/dynamic-element.component.mjs +229 -0
- package/esm2022/lib/dynamic-elements/dynamic-checkbox/dynamic-checkbox.component.mjs +18 -0
- package/esm2022/lib/dynamic-elements/dynamic-datepicker/dynamic-datepicker.component.mjs +26 -0
- package/esm2022/lib/dynamic-elements/dynamic-file-input/dynamic-file-input.component.mjs +28 -0
- package/esm2022/lib/dynamic-elements/dynamic-input/dynamic-input.component.mjs +27 -0
- package/esm2022/lib/dynamic-elements/dynamic-select/dynamic-select.component.mjs +25 -0
- package/esm2022/lib/dynamic-elements/dynamic-slide-toggle/dynamic-slide-toggle.component.mjs +18 -0
- package/esm2022/lib/dynamic-elements/dynamic-slider/dynamic-slider.component.mjs +30 -0
- package/esm2022/lib/dynamic-elements/dynamic-textarea/dynamic-textarea.component.mjs +22 -0
- package/esm2022/lib/dynamic-forms.component.mjs +191 -0
- package/{esm2020 → esm2022}/lib/dynamic-forms.module.mjs +48 -48
- package/{esm2020 → esm2022}/lib/services/dynamic-forms.service.mjs +4 -4
- package/fesm2022/covalent-dynamic-forms.mjs +814 -0
- package/{fesm2015 → fesm2022}/covalent-dynamic-forms.mjs.map +1 -1
- package/lib/dynamic-element.component.d.ts +2 -2
- package/lib/dynamic-forms.component.d.ts +1 -1
- package/package.json +9 -17
- package/esm2020/lib/dynamic-element.component.mjs +0 -176
- package/esm2020/lib/dynamic-elements/dynamic-checkbox/dynamic-checkbox.component.mjs +0 -19
- package/esm2020/lib/dynamic-elements/dynamic-datepicker/dynamic-datepicker.component.mjs +0 -23
- package/esm2020/lib/dynamic-elements/dynamic-file-input/dynamic-file-input.component.mjs +0 -28
- package/esm2020/lib/dynamic-elements/dynamic-input/dynamic-input.component.mjs +0 -22
- package/esm2020/lib/dynamic-elements/dynamic-select/dynamic-select.component.mjs +0 -23
- package/esm2020/lib/dynamic-elements/dynamic-slide-toggle/dynamic-slide-toggle.component.mjs +0 -19
- package/esm2020/lib/dynamic-elements/dynamic-slider/dynamic-slider.component.mjs +0 -26
- package/esm2020/lib/dynamic-elements/dynamic-textarea/dynamic-textarea.component.mjs +0 -22
- package/esm2020/lib/dynamic-forms.component.mjs +0 -185
- package/fesm2015/covalent-dynamic-forms.mjs +0 -745
- package/fesm2020/covalent-dynamic-forms.mjs +0 -743
- package/fesm2020/covalent-dynamic-forms.mjs.map +0 -1
- /package/{esm2020 → esm2022}/covalent-dynamic-forms.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import { Component, Directive, Input, HostBinding, TemplateRef, ChangeDetectorRef, Type, Injector, } from '@angular/core';
|
|
2
|
+
import { ViewChild, ViewContainerRef } from '@angular/core';
|
|
3
|
+
import { NG_VALUE_ACCESSOR, AbstractControl } from '@angular/forms';
|
|
4
|
+
import { CdkPortal } from '@angular/cdk/portal';
|
|
5
|
+
import { mixinControlValueAccessor, } from '@covalent/core/common';
|
|
6
|
+
import { TdDynamicFormsService, } from './services/dynamic-forms.service';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "./services/dynamic-forms.service";
|
|
9
|
+
export class TdDynamicElementBase {
|
|
10
|
+
_changeDetectorRef;
|
|
11
|
+
constructor(_changeDetectorRef) {
|
|
12
|
+
this._changeDetectorRef = _changeDetectorRef;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
/* tslint:disable-next-line */
|
|
16
|
+
export const _TdDynamicElementMixinBase = mixinControlValueAccessor(TdDynamicElementBase);
|
|
17
|
+
export class TdDynamicFormsErrorTemplateDirective extends CdkPortal {
|
|
18
|
+
templateRef;
|
|
19
|
+
tdDynamicFormsError;
|
|
20
|
+
constructor(templateRef, viewContainerRef) {
|
|
21
|
+
super(templateRef, viewContainerRef);
|
|
22
|
+
this.templateRef = templateRef;
|
|
23
|
+
}
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicFormsErrorTemplateDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicFormsErrorTemplateDirective, selector: "[tdDynamicFormsError]ng-template", inputs: { tdDynamicFormsError: "tdDynamicFormsError" }, usesInheritance: true, ngImport: i0 });
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicFormsErrorTemplateDirective, decorators: [{
|
|
28
|
+
type: Directive,
|
|
29
|
+
args: [{ selector: '[tdDynamicFormsError]ng-template' }]
|
|
30
|
+
}], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; }, propDecorators: { tdDynamicFormsError: [{
|
|
31
|
+
type: Input
|
|
32
|
+
}] } });
|
|
33
|
+
export class TdDynamicElementDirective {
|
|
34
|
+
viewContainer;
|
|
35
|
+
constructor(viewContainer) {
|
|
36
|
+
this.viewContainer = viewContainer;
|
|
37
|
+
}
|
|
38
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicElementDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
39
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicElementDirective, selector: "[tdDynamicContainer]", ngImport: i0 });
|
|
40
|
+
}
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicElementDirective, decorators: [{
|
|
42
|
+
type: Directive,
|
|
43
|
+
args: [{
|
|
44
|
+
selector: '[tdDynamicContainer]',
|
|
45
|
+
}]
|
|
46
|
+
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; } });
|
|
47
|
+
export class TdDynamicElementComponent extends _TdDynamicElementMixinBase {
|
|
48
|
+
_injector;
|
|
49
|
+
_dynamicFormsService;
|
|
50
|
+
_instance;
|
|
51
|
+
/**
|
|
52
|
+
* Sets form control of the element.
|
|
53
|
+
*/
|
|
54
|
+
dynamicControl;
|
|
55
|
+
/**
|
|
56
|
+
* Sets label to be displayed.
|
|
57
|
+
*/
|
|
58
|
+
label = '';
|
|
59
|
+
/**
|
|
60
|
+
* Sets hint to be displayed.
|
|
61
|
+
*/
|
|
62
|
+
hint = '';
|
|
63
|
+
/**
|
|
64
|
+
* Sets name to be displayed as attribute.
|
|
65
|
+
*/
|
|
66
|
+
name = '';
|
|
67
|
+
/**
|
|
68
|
+
* Sets type or element of element to be rendered.
|
|
69
|
+
* Throws error if does not exist or no supported.
|
|
70
|
+
*/
|
|
71
|
+
type;
|
|
72
|
+
/**
|
|
73
|
+
* Sets required validation checkup (if supported by element).
|
|
74
|
+
*/
|
|
75
|
+
required;
|
|
76
|
+
/**
|
|
77
|
+
* Sets min validation checkup (if supported by element).
|
|
78
|
+
*/
|
|
79
|
+
min;
|
|
80
|
+
/**
|
|
81
|
+
* Sets max validation checkup (if supported by element).
|
|
82
|
+
*/
|
|
83
|
+
max;
|
|
84
|
+
/**
|
|
85
|
+
* Sets minLength validation checkup (if supported by element).
|
|
86
|
+
*/
|
|
87
|
+
minLength;
|
|
88
|
+
/**
|
|
89
|
+
* Sets maxLength validation checkup (if supported by element).
|
|
90
|
+
*/
|
|
91
|
+
maxLength;
|
|
92
|
+
/**
|
|
93
|
+
* Sets selections for array elements (if supported by element).
|
|
94
|
+
*/
|
|
95
|
+
selections;
|
|
96
|
+
/**
|
|
97
|
+
* Sets multiple property for array elements (if supported by element).
|
|
98
|
+
*/
|
|
99
|
+
multiple;
|
|
100
|
+
/**
|
|
101
|
+
* Sets any additional properties on custom component.
|
|
102
|
+
*/
|
|
103
|
+
customConfig;
|
|
104
|
+
/**
|
|
105
|
+
* Sets error message template so it can be injected into dynamic components.
|
|
106
|
+
*/
|
|
107
|
+
errorMessageTemplate;
|
|
108
|
+
/**
|
|
109
|
+
* Sets the placeholder message
|
|
110
|
+
*/
|
|
111
|
+
placeholder = '';
|
|
112
|
+
childElement;
|
|
113
|
+
get maxAttr() {
|
|
114
|
+
return this.max;
|
|
115
|
+
}
|
|
116
|
+
get minAttr() {
|
|
117
|
+
return this.min;
|
|
118
|
+
}
|
|
119
|
+
constructor(_injector, _dynamicFormsService, _changeDetectorRef) {
|
|
120
|
+
super(_changeDetectorRef);
|
|
121
|
+
this._injector = _injector;
|
|
122
|
+
this._dynamicFormsService = _dynamicFormsService;
|
|
123
|
+
}
|
|
124
|
+
ngOnInit() {
|
|
125
|
+
const component = this.type instanceof Type
|
|
126
|
+
? this.type
|
|
127
|
+
: this._dynamicFormsService.getDynamicElement(this.type);
|
|
128
|
+
const ref = this.childElement.viewContainer.createComponent(component, {
|
|
129
|
+
injector: this._injector,
|
|
130
|
+
});
|
|
131
|
+
this._instance = ref.instance;
|
|
132
|
+
this._instance.control = this.dynamicControl;
|
|
133
|
+
this._instance.label = this.label;
|
|
134
|
+
this._instance.hint = this.hint;
|
|
135
|
+
this._instance.name = this.name;
|
|
136
|
+
this._instance.type = this.type;
|
|
137
|
+
this._instance.value = this.value;
|
|
138
|
+
this._instance.required = this.required;
|
|
139
|
+
this._instance.min = this.min;
|
|
140
|
+
this._instance.max = this.max;
|
|
141
|
+
this._instance.minLength = this.minLength;
|
|
142
|
+
this._instance.maxLength = this.maxLength;
|
|
143
|
+
this._instance.selections = this.selections;
|
|
144
|
+
this._instance.multiple = this.multiple;
|
|
145
|
+
this._instance.errorMessageTemplate = this.errorMessageTemplate;
|
|
146
|
+
this._instance.placeholder = this.placeholder;
|
|
147
|
+
if (this.customConfig) {
|
|
148
|
+
Object.getOwnPropertyNames(this.customConfig).forEach((name) => {
|
|
149
|
+
if (this.customConfig) {
|
|
150
|
+
this._instance[name] = this.customConfig[name];
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Reassign any inputs that have changed
|
|
157
|
+
*/
|
|
158
|
+
ngOnChanges(changes) {
|
|
159
|
+
if (this._instance) {
|
|
160
|
+
for (const prop of Object.keys(changes)) {
|
|
161
|
+
this._instance[prop] = changes[prop].currentValue;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicElementComponent, deps: [{ token: i0.Injector }, { token: i1.TdDynamicFormsService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
166
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicElementComponent, selector: "td-dynamic-element", inputs: { dynamicControl: "dynamicControl", label: "label", hint: "hint", name: "name", type: "type", required: "required", min: "min", max: "max", minLength: "minLength", maxLength: "maxLength", selections: "selections", multiple: "multiple", customConfig: "customConfig", errorMessageTemplate: "errorMessageTemplate", placeholder: "placeholder" }, host: { properties: { "attr.max": "this.maxAttr", "attr.min": "this.minAttr" } }, providers: [
|
|
167
|
+
TdDynamicFormsService,
|
|
168
|
+
{
|
|
169
|
+
provide: NG_VALUE_ACCESSOR,
|
|
170
|
+
useExisting: TdDynamicElementComponent,
|
|
171
|
+
multi: true,
|
|
172
|
+
},
|
|
173
|
+
], viewQueries: [{ propertyName: "childElement", first: true, predicate: TdDynamicElementDirective, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '<div tdDynamicContainer></div>', isInline: true, dependencies: [{ kind: "directive", type: TdDynamicElementDirective, selector: "[tdDynamicContainer]" }] });
|
|
174
|
+
}
|
|
175
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicElementComponent, decorators: [{
|
|
176
|
+
type: Component,
|
|
177
|
+
args: [{
|
|
178
|
+
providers: [
|
|
179
|
+
TdDynamicFormsService,
|
|
180
|
+
{
|
|
181
|
+
provide: NG_VALUE_ACCESSOR,
|
|
182
|
+
useExisting: TdDynamicElementComponent,
|
|
183
|
+
multi: true,
|
|
184
|
+
},
|
|
185
|
+
],
|
|
186
|
+
selector: 'td-dynamic-element',
|
|
187
|
+
template: '<div tdDynamicContainer></div>',
|
|
188
|
+
}]
|
|
189
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.TdDynamicFormsService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { dynamicControl: [{
|
|
190
|
+
type: Input
|
|
191
|
+
}], label: [{
|
|
192
|
+
type: Input
|
|
193
|
+
}], hint: [{
|
|
194
|
+
type: Input
|
|
195
|
+
}], name: [{
|
|
196
|
+
type: Input
|
|
197
|
+
}], type: [{
|
|
198
|
+
type: Input
|
|
199
|
+
}], required: [{
|
|
200
|
+
type: Input
|
|
201
|
+
}], min: [{
|
|
202
|
+
type: Input
|
|
203
|
+
}], max: [{
|
|
204
|
+
type: Input
|
|
205
|
+
}], minLength: [{
|
|
206
|
+
type: Input
|
|
207
|
+
}], maxLength: [{
|
|
208
|
+
type: Input
|
|
209
|
+
}], selections: [{
|
|
210
|
+
type: Input
|
|
211
|
+
}], multiple: [{
|
|
212
|
+
type: Input
|
|
213
|
+
}], customConfig: [{
|
|
214
|
+
type: Input
|
|
215
|
+
}], errorMessageTemplate: [{
|
|
216
|
+
type: Input
|
|
217
|
+
}], placeholder: [{
|
|
218
|
+
type: Input
|
|
219
|
+
}], childElement: [{
|
|
220
|
+
type: ViewChild,
|
|
221
|
+
args: [TdDynamicElementDirective, { static: true }]
|
|
222
|
+
}], maxAttr: [{
|
|
223
|
+
type: HostBinding,
|
|
224
|
+
args: ['attr.max']
|
|
225
|
+
}], minAttr: [{
|
|
226
|
+
type: HostBinding,
|
|
227
|
+
args: ['attr.min']
|
|
228
|
+
}] } });
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1lbGVtZW50LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsV0FBVyxFQUlYLFdBQVcsRUFDWCxpQkFBaUIsRUFDakIsSUFBSSxFQUNKLFFBQVEsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFaEQsT0FBTyxFQUNMLHlCQUF5QixHQUUxQixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLE9BQU8sRUFHTCxxQkFBcUIsR0FFdEIsTUFBTSxrQ0FBa0MsQ0FBQzs7O0FBRTFDLE1BQU0sT0FBTyxvQkFBb0I7SUFDWjtJQUFuQixZQUFtQixrQkFBcUM7UUFBckMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtJQUFHLENBQUM7Q0FDN0Q7QUFFRCw4QkFBOEI7QUFDOUIsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQ3JDLHlCQUF5QixDQUFDLG9CQUFvQixDQUFDLENBQUM7QUFHbEQsTUFBTSxPQUFPLG9DQUFxQyxTQUFRLFNBQVM7SUFHL0M7SUFGVCxtQkFBbUIsQ0FBVTtJQUN0QyxZQUNrQixXQUE2QixFQUM3QyxnQkFBa0M7UUFFbEMsS0FBSyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBSHJCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtJQUkvQyxDQUFDO3VHQVBVLG9DQUFvQzsyRkFBcEMs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ZW50LFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBIb3N0QmluZGluZyxcbiAgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBPbkNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgVHlwZSxcbiAgSW5qZWN0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2RrUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5cbmltcG9ydCB7XG4gIG1peGluQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIElDb250cm9sVmFsdWVBY2Nlc3Nvcixcbn0gZnJvbSAnQGNvdmFsZW50L2NvcmUvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgVGREeW5hbWljRWxlbWVudCxcbiAgVGREeW5hbWljVHlwZSxcbiAgVGREeW5hbWljRm9ybXNTZXJ2aWNlLFxuICBJVGREeW5hbWljRWxlbWVudEN1c3RvbUNvbmZpZyxcbn0gZnJvbSAnLi9zZXJ2aWNlcy9keW5hbWljLWZvcm1zLnNlcnZpY2UnO1xuXG5leHBvcnQgY2xhc3MgVGREeW5hbWljRWxlbWVudEJhc2Uge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cbn1cblxuLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lICovXG5leHBvcnQgY29uc3QgX1RkRHluYW1pY0VsZW1lbnRNaXhpbkJhc2UgPVxuICBtaXhpbkNvbnRyb2xWYWx1ZUFjY2Vzc29yKFRkRHluYW1pY0VsZW1lbnRCYXNlKTtcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiAnW3RkRHluYW1pY0Zvcm1zRXJyb3JdbmctdGVtcGxhdGUnIH0pXG5leHBvcnQgY2xhc3MgVGREeW5hbWljRm9ybXNFcnJvclRlbXBsYXRlRGlyZWN0aXZlIGV4dGVuZHMgQ2RrUG9ydGFsIHtcbiAgQElucHV0KCkgdGREeW5hbWljRm9ybXNFcnJvcj86IHN0cmluZztcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG92ZXJyaWRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgKSB7XG4gICAgc3VwZXIodGVtcGxhdGVSZWYsIHZpZXdDb250YWluZXJSZWYpO1xuICB9XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0ZER5bmFtaWNDb250YWluZXJdJyxcbn0pXG5leHBvcnQgY2xhc3MgVGREeW5hbWljRWxlbWVudERpcmVjdGl2ZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7fVxufVxuXG5AQ29tcG9uZW50KHtcbiAgcHJvdmlkZXJzOiBbXG4gICAgVGREeW5hbWljRm9ybXNTZXJ2aWNlLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IFRkRHluYW1pY0VsZW1lbnRDb21wb25lbnQsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzZWxlY3RvcjogJ3RkLWR5bmFtaWMtZWxlbWVudCcsXG4gIHRlbXBsYXRlOiAnPGRpdiB0ZER5bmFtaWNDb250YWluZXI+PC9kaXY+Jyxcbn0pXG5leHBvcnQgY2xhc3MgVGREeW5hbWljRWxlbWVudENvbXBvbmVudFxuICBleHRlbmRzIF9UZER5bmFtaWNFbGVtZW50TWl4aW5CYXNlXG4gIGltcGxlbWVudHMgSUNvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIE9uQ2hhbmdlc1xue1xuICBwcml2YXRlIF9pbnN0YW5jZTogYW55O1xuXG4gIC8qKlxuICAgKiBTZXRzIGZvcm0gY29udHJvbCBvZiB0aGUgZWxlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpIGR5bmFtaWNDb250cm9sITogQWJzdHJhY3RDb250cm9sO1xuXG4gIC8qKlxuICAgKiBTZXRzIGxhYmVsIHRvIGJlIGRpc3BsYXllZC5cbiAgICovXG4gIEBJbnB1dCgpIGxhYmVsID0gJyc7XG5cbiAgLyoqXG4gICAqIFNldHMgaGludCB0byBiZSBkaXNwbGF5ZWQuXG4gICAqL1xuICBASW5wdXQoKSBoaW50PyA9ICcnO1xuXG4gIC8qKlxuICAgKiBTZXRzIG5hbWUgdG8gYmUgZGlzcGxheWVkIGFzIGF0dHJpYnV0ZS5cbiAgICovXG4gIEBJbnB1dCgpIG5hbWUgPSAnJztcblxuICAvKipcbiAgICogU2V0cyB0eXBlIG9yIGVsZW1lbnQgb2YgZWxlbWVudCB0byBiZSByZW5kZXJlZC5cbiAgICogVGhyb3dzIGVycm9yIGlmIGRvZXMgbm90IGV4aXN0IG9yIG5vIHN1cHBvcnRlZC5cbiAgICovXG4gIEBJbnB1dCgpIHR5cGU/OiBUZER5bmFtaWNFbGVtZW50IHwgVGREeW5hbWljVHlwZSB8IFR5cGU8YW55PjtcblxuICAvKipcbiAgICogU2V0cyByZXF1aXJlZCB2YWxpZGF0aW9uIGNoZWNrdXAgKGlmIHN1cHBvcnRlZCBieSBlbGVtZW50KS5cbiAgICovXG4gIEBJbnB1dCgpIHJlcXVpcmVkPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU2V0cyBtaW4gdmFsaWRhdGlvbiBjaGVja3VwIChpZiBzdXBwb3J0ZWQgYnkgZWxlbWVudCkuXG4gICAqL1xuICBASW5wdXQoKSBtaW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNldHMgbWF4IHZhbGlkYXRpb24gY2hlY2t1cCAoaWYgc3VwcG9ydGVkIGJ5IGVsZW1lbnQpLlxuICAgKi9cbiAgQElucHV0KCkgbWF4PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTZXRzIG1pbkxlbmd0aCB2YWxpZGF0aW9uIGNoZWNrdXAgKGlmIHN1cHBvcnRlZCBieSBlbGVtZW50KS5cbiAgICovXG4gIEBJbnB1dCgpIG1pbkxlbmd0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogU2V0cyBtYXhMZW5ndGggdmFsaWRhdGlvbiBjaGVja3VwIChpZiBzdXBwb3J0ZWQgYnkgZWxlbWVudCkuXG4gICAqL1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNldHMgc2VsZWN0aW9ucyBmb3IgYXJyYXkgZWxlbWVudHMgKGlmIHN1cHBvcnRlZCBieSBlbGVtZW50KS5cbiAgICovXG4gIEBJbnB1dCgpIHNlbGVjdGlvbnM/OiBhbnlbXTtcblxuICAvKipcbiAgICogU2V0cyBtdWx0aXBsZSBwcm9wZXJ0eSBmb3IgYXJyYXkgZWxlbWVudHMgKGlmIHN1cHBvcnRlZCBieSBlbGVtZW50KS5cbiAgICovXG4gIEBJbnB1dCgpIG11bHRpcGxlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0cyBhbnkgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIG9uIGN1c3RvbSBjb21wb25lbnQuXG4gICAqL1xuICBASW5wdXQoKSBjdXN0b21Db25maWc/OiBJVGREeW5hbWljRWxlbWVudEN1c3RvbUNvbmZpZztcblxuICAvKipcbiAgICogU2V0cyBlcnJvciBtZXNzYWdlIHRlbXBsYXRlIHNvIGl0IGNhbiBiZSBpbmplY3RlZCBpbnRvIGR5bmFtaWMgY29tcG9uZW50cy5cbiAgICovXG4gIEBJbnB1dCgpIGVycm9yTWVzc2FnZVRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgbWVzc2FnZVxuICAgKi9cbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/ID0gJyc7XG5cbiAgQFZpZXdDaGlsZChUZER5bmFtaWNFbGVtZW50RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBjaGlsZEVsZW1lbnQhOiBUZER5bmFtaWNFbGVtZW50RGlyZWN0aXZlO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5tYXgnKVxuICBnZXQgbWF4QXR0cigpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLm1heDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5taW4nKVxuICBnZXQgbWluQXR0cigpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLm1pbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICBwcml2YXRlIF9keW5hbWljRm9ybXNTZXJ2aWNlOiBUZER5bmFtaWNGb3Jtc1NlcnZpY2UsXG4gICAgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICBzdXBlcihfY2hhbmdlRGV0ZWN0b3JSZWYpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY29tcG9uZW50OiBhbnkgPVxuICAgICAgPGFueT50aGlzLnR5cGUgaW5zdGFuY2VvZiBUeXBlXG4gICAgICAgID8gdGhpcy50eXBlXG4gICAgICAgIDogdGhpcy5fZHluYW1pY0Zvcm1zU2VydmljZS5nZXREeW5hbWljRWxlbWVudCh0aGlzLnR5cGUpO1xuICAgIGNvbnN0IHJlZiA9IHRoaXMuY2hpbGRFbGVtZW50LnZpZXdDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGNvbXBvbmVudCwge1xuICAgICAgaW5qZWN0b3I6IHRoaXMuX2luamVjdG9yLFxuICAgIH0pO1xuICAgIHRoaXMuX2luc3RhbmNlID0gcmVmLmluc3RhbmNlO1xuICAgIHRoaXMuX2luc3RhbmNlLmNvbnRyb2wgPSB0aGlzLmR5bmFtaWNDb250cm9sO1xuICAgIHRoaXMuX2luc3RhbmNlLmxhYmVsID0gdGhpcy5sYWJlbDtcbiAgICB0aGlzLl9pbnN0YW5jZS5oaW50ID0gdGhpcy5oaW50O1xuICAgIHRoaXMuX2luc3RhbmNlLm5hbWUgPSB0aGlzLm5hbWU7XG4gICAgdGhpcy5faW5zdGFuY2UudHlwZSA9IHRoaXMudHlwZTtcbiAgICB0aGlzLl9pbnN0YW5jZS52YWx1ZSA9IHRoaXMudmFsdWU7XG4gICAgdGhpcy5faW5zdGFuY2UucmVxdWlyZWQgPSB0aGlzLnJlcXVpcmVkO1xuICAgIHRoaXMuX2luc3RhbmNlLm1pbiA9IHRoaXMubWluO1xuICAgIHRoaXMuX2luc3RhbmNlLm1heCA9IHRoaXMubWF4O1xuICAgIHRoaXMuX2luc3RhbmNlLm1pbkxlbmd0aCA9IHRoaXMubWluTGVuZ3RoO1xuICAgIHRoaXMuX2luc3RhbmNlLm1heExlbmd0aCA9IHRoaXMubWF4TGVuZ3RoO1xuICAgIHRoaXMuX2luc3RhbmNlLnNlbGVjdGlvbnMgPSB0aGlzLnNlbGVjdGlvbnM7XG4gICAgdGhpcy5faW5zdGFuY2UubXVsdGlwbGUgPSB0aGlzLm11bHRpcGxlO1xuICAgIHRoaXMuX2luc3RhbmNlLmVycm9yTWVzc2FnZVRlbXBsYXRlID0gdGhpcy5lcnJvck1lc3NhZ2VUZW1wbGF0ZTtcbiAgICB0aGlzLl9pbnN0YW5jZS5wbGFjZWhvbGRlciA9IHRoaXMucGxhY2Vob2xkZXI7XG4gICAgaWYgKHRoaXMuY3VzdG9tQ29uZmlnKSB7XG4gICAgICBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzLmN1c3RvbUNvbmZpZykuZm9yRWFjaCgobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmN1c3RvbUNvbmZpZykge1xuICAgICAgICAgIHRoaXMuX2luc3RhbmNlW25hbWVdID0gdGhpcy5jdXN0b21Db25maWdbbmFtZV07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZWFzc2lnbiBhbnkgaW5wdXRzIHRoYXQgaGF2ZSBjaGFuZ2VkXG4gICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2luc3RhbmNlKSB7XG4gICAgICBmb3IgKGNvbnN0IHByb3Agb2YgT2JqZWN0LmtleXMoY2hhbmdlcykpIHtcbiAgICAgICAgdGhpcy5faW5zdGFuY2VbcHJvcF0gPSBjaGFuZ2VzW3Byb3BdLmN1cnJlbnRWYWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
import * as i2 from "@angular/material/checkbox";
|
|
5
|
+
export class TdDynamicCheckboxComponent {
|
|
6
|
+
control;
|
|
7
|
+
label = '';
|
|
8
|
+
name = '';
|
|
9
|
+
hint = '';
|
|
10
|
+
required = false;
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicCheckboxComponent, selector: "td-dynamic-checkbox", ngImport: i0, template: "<div class=\"td-dynamic-checkbox-wrapper\">\n <mat-checkbox [formControl]=\"control\" [name]=\"name\" [required]=\"required\">\n {{ label }}\n </mat-checkbox>\n <span class=\"mat-hint td-dynamic-element-hint\">{{ hint }}</span>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i2.MatCheckboxRequiredValidator, selector: "mat-checkbox[required][formControlName], mat-checkbox[required][formControl], mat-checkbox[required][ngModel]" }] });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicCheckboxComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'td-dynamic-checkbox', template: "<div class=\"td-dynamic-checkbox-wrapper\">\n <mat-checkbox [formControl]=\"control\" [name]=\"name\" [required]=\"required\">\n {{ label }}\n </mat-checkbox>\n <span class=\"mat-hint td-dynamic-element-hint\">{{ hint }}</span>\n</div>\n" }]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItZHluYW1pYy1mb3Jtcy9zcmMvbGliL2R5bmFtaWMtZWxlbWVudHMvZHluYW1pYy1jaGVja2JveC9keW5hbWljLWNoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLWNoZWNrYm94L2R5bmFtaWMtY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVExQyxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLE9BQU8sQ0FBc0I7SUFFN0IsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUVYLElBQUksR0FBRyxFQUFFLENBQUM7SUFFVixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRVYsUUFBUSxHQUFHLEtBQUssQ0FBQzt1R0FUTiwwQkFBMEI7MkZBQTFCLDBCQUEwQiwyRENSdkMscVBBTUE7OzJGREVhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtZHluYW1pYy1jaGVja2JveCcsXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtY2hlY2tib3guY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUZER5bmFtaWNDaGVja2JveENvbXBvbmVudCB7XG4gIGNvbnRyb2whOiBVbnR5cGVkRm9ybUNvbnRyb2w7XG5cbiAgbGFiZWwgPSAnJztcblxuICBuYW1lID0gJyc7XG5cbiAgaGludCA9ICcnO1xuXG4gIHJlcXVpcmVkID0gZmFsc2U7XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtZHluYW1pYy1jaGVja2JveC13cmFwcGVyXCI+XG4gIDxtYXQtY2hlY2tib3ggW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIiBbbmFtZV09XCJuYW1lXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCI+XG4gICAge3sgbGFiZWwgfX1cbiAgPC9tYXQtY2hlY2tib3g+XG4gIDxzcGFuIGNsYXNzPVwibWF0LWhpbnQgdGQtZHluYW1pYy1lbGVtZW50LWhpbnRcIj57eyBoaW50IH19PC9zcGFuPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "@angular/material/form-field";
|
|
6
|
+
import * as i4 from "@angular/material/input";
|
|
7
|
+
import * as i5 from "@angular/material/datepicker";
|
|
8
|
+
export class TdDynamicDatepickerComponent {
|
|
9
|
+
control;
|
|
10
|
+
label = '';
|
|
11
|
+
hint = '';
|
|
12
|
+
name = '';
|
|
13
|
+
type;
|
|
14
|
+
required = false;
|
|
15
|
+
min;
|
|
16
|
+
max;
|
|
17
|
+
errorMessageTemplate;
|
|
18
|
+
placeholder = '';
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicDatepickerComponent, selector: "td-dynamic-datepicker", ngImport: i0, template: "<div class=\"td-dynamic-datepicker-wrapper\">\n <mat-form-field class=\"td-dynamic-datepicker-field\">\n <mat-label>{{ label }}</mat-label>\n <input\n #elementInput\n matInput\n [matDatepicker]=\"dynamicDatePicker\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [name]=\"name\"\n [min]=\"min\"\n [max]=\"max\"\n />\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n <mat-datepicker-toggle\n matSuffix\n [for]=\"dynamicDatePicker\"\n ></mat-datepicker-toggle>\n <mat-datepicker #dynamicDatePicker></mat-datepicker>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-datepicker-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-datepicker-wrapper .td-dynamic-datepicker-field{flex:1;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { 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.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.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: i5.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }] });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicDatepickerComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{ selector: 'td-dynamic-datepicker', template: "<div class=\"td-dynamic-datepicker-wrapper\">\n <mat-form-field class=\"td-dynamic-datepicker-field\">\n <mat-label>{{ label }}</mat-label>\n <input\n #elementInput\n matInput\n [matDatepicker]=\"dynamicDatePicker\"\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [name]=\"name\"\n [min]=\"min\"\n [max]=\"max\"\n />\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n <mat-datepicker-toggle\n matSuffix\n [for]=\"dynamicDatePicker\"\n ></mat-datepicker-toggle>\n <mat-datepicker #dynamicDatePicker></mat-datepicker>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-datepicker-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-datepicker-wrapper .td-dynamic-datepicker-field{flex:1;box-sizing:border-box}\n"] }]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1kYXRlcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLWRhdGVwaWNrZXIvZHluYW1pYy1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLWRhdGVwaWNrZXIvZHluYW1pYy1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFRdkQsTUFBTSxPQUFPLDRCQUE0QjtJQUN2QyxPQUFPLENBQXNCO0lBRTdCLEtBQUssR0FBRyxFQUFFLENBQUM7SUFFWCxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRVYsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLElBQUksQ0FBVTtJQUVkLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFFakIsR0FBRyxDQUFVO0lBRWIsR0FBRyxDQUFVO0lBRWIsb0JBQW9CLENBQW9CO0lBRXhDLFdBQVcsR0FBRyxFQUFFLENBQUM7dUdBbkJOLDRCQUE0QjsyRkFBNUIsNEJBQTRCLDZEQ1J6QyxnNEJBK0JBOzsyRkR2QmEsNEJBQTRCO2tCQUx4QyxTQUFTOytCQUNFLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtZHluYW1pYy1kYXRlcGlja2VyJyxcbiAgc3R5bGVVcmxzOiBbJy4vZHluYW1pYy1kYXRlcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLWRhdGVwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUZER5bmFtaWNEYXRlcGlja2VyQ29tcG9uZW50IHtcbiAgY29udHJvbCE6IFVudHlwZWRGb3JtQ29udHJvbDtcblxuICBsYWJlbCA9ICcnO1xuXG4gIGhpbnQgPSAnJztcblxuICBuYW1lID0gJyc7XG5cbiAgdHlwZT86IHN0cmluZztcblxuICByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIG1pbj86IG51bWJlcjtcblxuICBtYXg/OiBudW1iZXI7XG5cbiAgZXJyb3JNZXNzYWdlVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHBsYWNlaG9sZGVyID0gJyc7XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtZHluYW1pYy1kYXRlcGlja2VyLXdyYXBwZXJcIj5cbiAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwidGQtZHluYW1pYy1kYXRlcGlja2VyLWZpZWxkXCI+XG4gICAgPG1hdC1sYWJlbD57eyBsYWJlbCB9fTwvbWF0LWxhYmVsPlxuICAgIDxpbnB1dFxuICAgICAgI2VsZW1lbnRJbnB1dFxuICAgICAgbWF0SW5wdXRcbiAgICAgIFttYXREYXRlcGlja2VyXT1cImR5bmFtaWNEYXRlUGlja2VyXCJcbiAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICBbbWluXT1cIm1pblwiXG4gICAgICBbbWF4XT1cIm1heFwiXG4gICAgLz5cbiAgICA8bWF0LWhpbnQ+e3sgaGludCB9fTwvbWF0LWhpbnQ+XG4gICAgPG1hdC1lcnJvcj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJlcnJvck1lc3NhZ2VUZW1wbGF0ZVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgY29udHJvbDogY29udHJvbCxcbiAgICAgICAgICBlcnJvcnM6IGNvbnRyb2wuZXJyb3JzXG4gICAgICAgIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtZXJyb3I+XG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZVxuICAgICAgbWF0U3VmZml4XG4gICAgICBbZm9yXT1cImR5bmFtaWNEYXRlUGlja2VyXCJcbiAgICA+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgPG1hdC1kYXRlcGlja2VyICNkeW5hbWljRGF0ZVBpY2tlcj48L21hdC1kYXRlcGlja2VyPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "@angular/material/form-field";
|
|
6
|
+
import * as i4 from "@angular/material/input";
|
|
7
|
+
import * as i5 from "@angular/material/icon";
|
|
8
|
+
import * as i6 from "@angular/material/button";
|
|
9
|
+
import * as i7 from "@covalent/core/file";
|
|
10
|
+
export class TdDynamicFileInputComponent {
|
|
11
|
+
control;
|
|
12
|
+
required = false;
|
|
13
|
+
label = '';
|
|
14
|
+
name = '';
|
|
15
|
+
hint = '';
|
|
16
|
+
errorMessageTemplate;
|
|
17
|
+
placeholder = '';
|
|
18
|
+
_handlefileDrop(value) {
|
|
19
|
+
this.control?.setValue(value);
|
|
20
|
+
}
|
|
21
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicFileInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
22
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicFileInputComponent, selector: "td-dynamic-file-input", ngImport: i0, template: "<div class=\"td-dynamic-file-input-wrapper\">\n <mat-form-field\n tdFileDrop\n class=\"td-dynamic-file-input-field\"\n [disabled]=\"control.disabled\"\n (fileDrop)=\"_handlefileDrop($event)\"\n (click)=\"!control.disabled && fileInput.inputElement.click()\"\n (keyup.enter)=\"!control.disabled && fileInput.inputElement.click()\"\n (keyup.delete)=\"fileInput.clear()\"\n (keyup.backspace)=\"fileInput.clear()\"\n >\n <mat-label>{{ label }}</mat-label>\n <input\n matInput\n [value]=\"control.value?.name\"\n [placeholder]=\"placeholder\"\n [name]=\"name\"\n [disabled]=\"control.disabled\"\n readonly\n />\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n <button\n mat-icon-button\n *ngIf=\"control.value\"\n (click)=\"fileInput.clear()\"\n (keyup.enter)=\"fileInput.clear()\"\n >\n <mat-icon>cancel</mat-icon>\n </button>\n <td-file-input class=\"td-file-input\" #fileInput [formControl]=\"control\">\n <mat-icon>folder</mat-icon>\n <span>{{ label }}</span>\n </td-file-input>\n</div>\n", styles: [".td-dynamic-file-input-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-file-input-wrapper .td-dynamic-file-input-field{flex:1;box-sizing:border-box}.td-file-input{margin-left:10px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { 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.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.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: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i7.TdFileDropDirective, selector: "[tdFileDrop]", inputs: ["multiple", "disabled"], outputs: ["fileDrop"] }, { kind: "component", type: i7.TdFileInputComponent, selector: "td-file-input", inputs: ["disabled", "value", "color", "multiple", "accept"], outputs: ["selectFile"] }] });
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicFileInputComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{ selector: 'td-dynamic-file-input', template: "<div class=\"td-dynamic-file-input-wrapper\">\n <mat-form-field\n tdFileDrop\n class=\"td-dynamic-file-input-field\"\n [disabled]=\"control.disabled\"\n (fileDrop)=\"_handlefileDrop($event)\"\n (click)=\"!control.disabled && fileInput.inputElement.click()\"\n (keyup.enter)=\"!control.disabled && fileInput.inputElement.click()\"\n (keyup.delete)=\"fileInput.clear()\"\n (keyup.backspace)=\"fileInput.clear()\"\n >\n <mat-label>{{ label }}</mat-label>\n <input\n matInput\n [value]=\"control.value?.name\"\n [placeholder]=\"placeholder\"\n [name]=\"name\"\n [disabled]=\"control.disabled\"\n readonly\n />\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n <button\n mat-icon-button\n *ngIf=\"control.value\"\n (click)=\"fileInput.clear()\"\n (keyup.enter)=\"fileInput.clear()\"\n >\n <mat-icon>cancel</mat-icon>\n </button>\n <td-file-input class=\"td-file-input\" #fileInput [formControl]=\"control\">\n <mat-icon>folder</mat-icon>\n <span>{{ label }}</span>\n </td-file-input>\n</div>\n", styles: [".td-dynamic-file-input-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-file-input-wrapper .td-dynamic-file-input-field{flex:1;box-sizing:border-box}.td-file-input{margin-left:10px}\n"] }]
|
|
27
|
+
}] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWxlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLWZpbGUtaW5wdXQvZHluYW1pYy1maWxlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLWZpbGUtaW5wdXQvZHluYW1pYy1maWxlLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7OztBQVF2RCxNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLE9BQU8sQ0FBc0I7SUFFN0IsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUVqQixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRVgsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLElBQUksR0FBRyxFQUFFLENBQUM7SUFFVixvQkFBb0IsQ0FBb0I7SUFFeEMsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUVqQixlQUFlLENBQUMsS0FBVTtRQUN4QixJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO3VHQWpCVSwyQkFBMkI7MkZBQTNCLDJCQUEyQiw2RENSeEMseXpDQTRDQTs7MkZEcENhLDJCQUEyQjtrQkFMdkMsU0FBUzsrQkFDRSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RkLWR5bmFtaWMtZmlsZS1pbnB1dCcsXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtZmlsZS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vZHluYW1pYy1maWxlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgVGREeW5hbWljRmlsZUlucHV0Q29tcG9uZW50IHtcbiAgY29udHJvbCE6IFVudHlwZWRGb3JtQ29udHJvbDtcblxuICByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIGxhYmVsID0gJyc7XG5cbiAgbmFtZSA9ICcnO1xuXG4gIGhpbnQgPSAnJztcblxuICBlcnJvck1lc3NhZ2VUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcGxhY2Vob2xkZXIgPSAnJztcblxuICBfaGFuZGxlZmlsZURyb3AodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY29udHJvbD8uc2V0VmFsdWUodmFsdWUpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtZHluYW1pYy1maWxlLWlucHV0LXdyYXBwZXJcIj5cbiAgPG1hdC1mb3JtLWZpZWxkXG4gICAgdGRGaWxlRHJvcFxuICAgIGNsYXNzPVwidGQtZHluYW1pYy1maWxlLWlucHV0LWZpZWxkXCJcbiAgICBbZGlzYWJsZWRdPVwiY29udHJvbC5kaXNhYmxlZFwiXG4gICAgKGZpbGVEcm9wKT1cIl9oYW5kbGVmaWxlRHJvcCgkZXZlbnQpXCJcbiAgICAoY2xpY2spPVwiIWNvbnRyb2wuZGlzYWJsZWQgJiYgZmlsZUlucHV0LmlucHV0RWxlbWVudC5jbGljaygpXCJcbiAgICAoa2V5dXAuZW50ZXIpPVwiIWNvbnRyb2wuZGlzYWJsZWQgJiYgZmlsZUlucHV0LmlucHV0RWxlbWVudC5jbGljaygpXCJcbiAgICAoa2V5dXAuZGVsZXRlKT1cImZpbGVJbnB1dC5jbGVhcigpXCJcbiAgICAoa2V5dXAuYmFja3NwYWNlKT1cImZpbGVJbnB1dC5jbGVhcigpXCJcbiAgPlxuICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cbiAgICA8aW5wdXRcbiAgICAgIG1hdElucHV0XG4gICAgICBbdmFsdWVdPVwiY29udHJvbC52YWx1ZT8ubmFtZVwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiY29udHJvbC5kaXNhYmxlZFwiXG4gICAgICByZWFkb25seVxuICAgIC8+XG4gICAgPG1hdC1oaW50Pnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIDxtYXQtZXJyb3I+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZXJyb3JNZXNzYWdlVGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wsXG4gICAgICAgICAgZXJyb3JzOiBjb250cm9sLmVycm9yc1xuICAgICAgICB9XCJcbiAgICAgID48L25nLXRlbXBsYXRlPlxuICAgIDwvbWF0LWVycm9yPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuICA8YnV0dG9uXG4gICAgbWF0LWljb24tYnV0dG9uXG4gICAgKm5nSWY9XCJjb250cm9sLnZhbHVlXCJcbiAgICAoY2xpY2spPVwiZmlsZUlucHV0LmNsZWFyKClcIlxuICAgIChrZXl1cC5lbnRlcik9XCJmaWxlSW5wdXQuY2xlYXIoKVwiXG4gID5cbiAgICA8bWF0LWljb24+Y2FuY2VsPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG4gIDx0ZC1maWxlLWlucHV0IGNsYXNzPVwidGQtZmlsZS1pbnB1dFwiICNmaWxlSW5wdXQgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIj5cbiAgICA8bWF0LWljb24+Zm9sZGVyPC9tYXQtaWNvbj5cbiAgICA8c3Bhbj57eyBsYWJlbCB9fTwvc3Bhbj5cbiAgPC90ZC1maWxlLWlucHV0PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "@angular/material/form-field";
|
|
6
|
+
import * as i4 from "@angular/material/input";
|
|
7
|
+
export class TdDynamicInputComponent {
|
|
8
|
+
control;
|
|
9
|
+
label = '';
|
|
10
|
+
hint = '';
|
|
11
|
+
type;
|
|
12
|
+
required = false;
|
|
13
|
+
name = '';
|
|
14
|
+
min;
|
|
15
|
+
max;
|
|
16
|
+
minLength;
|
|
17
|
+
maxLength;
|
|
18
|
+
errorMessageTemplate;
|
|
19
|
+
placeholder = '';
|
|
20
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicInputComponent, selector: "td-dynamic-input", ngImport: i0, template: "<div class=\"td-dynamic-input-wrapper\">\n <mat-form-field class=\"td-dynamic-input-field\">\n <mat-label>{{ label }}</mat-label>\n <input\n #elementInput\n matInput\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [type]=\"type\"\n [required]=\"required\"\n [name]=\"name\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.minLength]=\"minLength\"\n [attr.maxLength]=\"maxLength\"\n />\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-input-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-input-wrapper .td-dynamic-input-field{flex:1;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { 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.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.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"] }] });
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicInputComponent, decorators: [{
|
|
24
|
+
type: Component,
|
|
25
|
+
args: [{ selector: 'td-dynamic-input', template: "<div class=\"td-dynamic-input-wrapper\">\n <mat-form-field class=\"td-dynamic-input-field\">\n <mat-label>{{ label }}</mat-label>\n <input\n #elementInput\n matInput\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [type]=\"type\"\n [required]=\"required\"\n [name]=\"name\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.minLength]=\"minLength\"\n [attr.maxLength]=\"maxLength\"\n />\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-input-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-input-wrapper .td-dynamic-input-field{flex:1;box-sizing:border-box}\n"] }]
|
|
26
|
+
}] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItZHluYW1pYy1mb3Jtcy9zcmMvbGliL2R5bmFtaWMtZWxlbWVudHMvZHluYW1pYy1pbnB1dC9keW5hbWljLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLWlucHV0L2R5bmFtaWMtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUXZELE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsT0FBTyxDQUFzQjtJQUU3QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRVgsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLElBQUksQ0FBVTtJQUVkLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFFakIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLEdBQUcsQ0FBVTtJQUViLEdBQUcsQ0FBVTtJQUViLFNBQVMsQ0FBVTtJQUVuQixTQUFTLENBQVU7SUFFbkIsb0JBQW9CLENBQW9CO0lBRXhDLFdBQVcsR0FBRyxFQUFFLENBQUM7dUdBdkJOLHVCQUF1QjsyRkFBdkIsdUJBQXVCLHdEQ1JwQyw2d0JBNEJBOzsyRkRwQmEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtZHluYW1pYy1pbnB1dCcsXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUZER5bmFtaWNJbnB1dENvbXBvbmVudCB7XG4gIGNvbnRyb2whOiBVbnR5cGVkRm9ybUNvbnRyb2w7XG5cbiAgbGFiZWwgPSAnJztcblxuICBoaW50ID0gJyc7XG5cbiAgdHlwZSE6IHN0cmluZztcblxuICByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIG5hbWUgPSAnJztcblxuICBtaW4/OiBudW1iZXI7XG5cbiAgbWF4PzogbnVtYmVyO1xuXG4gIG1pbkxlbmd0aD86IG51bWJlcjtcblxuICBtYXhMZW5ndGg/OiBudW1iZXI7XG5cbiAgZXJyb3JNZXNzYWdlVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHBsYWNlaG9sZGVyID0gJyc7XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtZHluYW1pYy1pbnB1dC13cmFwcGVyXCI+XG4gIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInRkLWR5bmFtaWMtaW5wdXQtZmllbGRcIj5cbiAgICA8bWF0LWxhYmVsPnt7IGxhYmVsIH19PC9tYXQtbGFiZWw+XG4gICAgPGlucHV0XG4gICAgICAjZWxlbWVudElucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIFt0eXBlXT1cInR5cGVcIlxuICAgICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgW2F0dHIubWluXT1cIm1pblwiXG4gICAgICBbYXR0ci5tYXhdPVwibWF4XCJcbiAgICAgIFthdHRyLm1pbkxlbmd0aF09XCJtaW5MZW5ndGhcIlxuICAgICAgW2F0dHIubWF4TGVuZ3RoXT1cIm1heExlbmd0aFwiXG4gICAgLz5cbiAgICA8bWF0LWhpbnQ+e3sgaGludCB9fTwvbWF0LWhpbnQ+XG4gICAgPG1hdC1lcnJvcj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJlcnJvck1lc3NhZ2VUZW1wbGF0ZVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgY29udHJvbDogY29udHJvbCxcbiAgICAgICAgICBlcnJvcnM6IGNvbnRyb2wuZXJyb3JzXG4gICAgICAgIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtZXJyb3I+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "@angular/material/form-field";
|
|
6
|
+
import * as i4 from "@angular/material/select";
|
|
7
|
+
import * as i5 from "@angular/material/core";
|
|
8
|
+
export class TdDynamicSelectComponent {
|
|
9
|
+
control;
|
|
10
|
+
label = '';
|
|
11
|
+
hint = '';
|
|
12
|
+
name = '';
|
|
13
|
+
required = false;
|
|
14
|
+
selections;
|
|
15
|
+
multiple;
|
|
16
|
+
errorMessageTemplate;
|
|
17
|
+
placeholder = '';
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicSelectComponent, selector: "td-dynamic-select", ngImport: i0, template: "<div class=\"td-dynamic-select-wrapper\">\n <mat-form-field class=\"td-dynamic-select-field\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [attr.name]=\"name\"\n [multiple]=\"multiple\"\n >\n <mat-option\n *ngFor=\"let selection of selections\"\n [value]=\"selection.value ?? selection\"\n >\n {{ selection.label || selection }}\n </mat-option>\n </mat-select>\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-select-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-select-wrapper .td-dynamic-select-field{flex:1;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { 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.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }] });
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicSelectComponent, decorators: [{
|
|
22
|
+
type: Component,
|
|
23
|
+
args: [{ selector: 'td-dynamic-select', template: "<div class=\"td-dynamic-select-wrapper\">\n <mat-form-field class=\"td-dynamic-select-field\">\n <mat-label>{{ label }}</mat-label>\n <mat-select\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [attr.name]=\"name\"\n [multiple]=\"multiple\"\n >\n <mat-option\n *ngFor=\"let selection of selections\"\n [value]=\"selection.value ?? selection\"\n >\n {{ selection.label || selection }}\n </mat-option>\n </mat-select>\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-select-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-select-wrapper .td-dynamic-select-field{flex:1;box-sizing:border-box}\n"] }]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWR5bmFtaWMtZm9ybXMvc3JjL2xpYi9keW5hbWljLWVsZW1lbnRzL2R5bmFtaWMtc2VsZWN0L2R5bmFtaWMtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLXNlbGVjdC9keW5hbWljLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFlLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBUXZELE1BQU0sT0FBTyx3QkFBd0I7SUFDbkMsT0FBTyxDQUFzQjtJQUU3QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRVgsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLElBQUksR0FBRyxFQUFFLENBQUM7SUFFVixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRWpCLFVBQVUsQ0FBUztJQUVuQixRQUFRLENBQVc7SUFFbkIsb0JBQW9CLENBQW9CO0lBRXhDLFdBQVcsR0FBRyxFQUFFLENBQUM7dUdBakJOLHdCQUF3QjsyRkFBeEIsd0JBQXdCLHlEQ1JyQyw2MEJBNkJBOzsyRkRyQmEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtZHluYW1pYy1zZWxlY3QnLFxuICBzdHlsZVVybHM6IFsnLi9keW5hbWljLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vZHluYW1pYy1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUZER5bmFtaWNTZWxlY3RDb21wb25lbnQge1xuICBjb250cm9sITogVW50eXBlZEZvcm1Db250cm9sO1xuXG4gIGxhYmVsID0gJyc7XG5cbiAgaGludCA9ICcnO1xuXG4gIG5hbWUgPSAnJztcblxuICByZXF1aXJlZCA9IGZhbHNlO1xuXG4gIHNlbGVjdGlvbnM/OiBhbnlbXTtcblxuICBtdWx0aXBsZT86IGJvb2xlYW47XG5cbiAgZXJyb3JNZXNzYWdlVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHBsYWNlaG9sZGVyID0gJyc7XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtZHluYW1pYy1zZWxlY3Qtd3JhcHBlclwiPlxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJ0ZC1keW5hbWljLXNlbGVjdC1maWVsZFwiPlxuICAgIDxtYXQtbGFiZWw+e3sgbGFiZWwgfX08L21hdC1sYWJlbD5cbiAgICA8bWF0LXNlbGVjdFxuICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICA+XG4gICAgICA8bWF0LW9wdGlvblxuICAgICAgICAqbmdGb3I9XCJsZXQgc2VsZWN0aW9uIG9mIHNlbGVjdGlvbnNcIlxuICAgICAgICBbdmFsdWVdPVwic2VsZWN0aW9uLnZhbHVlID8/IHNlbGVjdGlvblwiXG4gICAgICA+XG4gICAgICAgIHt7IHNlbGVjdGlvbi5sYWJlbCB8fCBzZWxlY3Rpb24gfX1cbiAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICA8L21hdC1zZWxlY3Q+XG4gICAgPG1hdC1oaW50Pnt7IGhpbnQgfX08L21hdC1oaW50PlxuICAgIDxtYXQtZXJyb3I+XG4gICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZXJyb3JNZXNzYWdlVGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2wsXG4gICAgICAgICAgZXJyb3JzOiBjb250cm9sLmVycm9yc1xuICAgICAgICB9XCJcbiAgICAgID48L25nLXRlbXBsYXRlPlxuICAgIDwvbWF0LWVycm9yPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
import * as i2 from "@angular/material/slide-toggle";
|
|
5
|
+
export class TdDynamicSlideToggleComponent {
|
|
6
|
+
control;
|
|
7
|
+
label = '';
|
|
8
|
+
name = '';
|
|
9
|
+
hint = '';
|
|
10
|
+
required = false;
|
|
11
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicSlideToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicSlideToggleComponent, selector: "td-dynamic-slide-toggle", ngImport: i0, template: "<div class=\"td-dynamic-slide-toggle-wrapper\">\n <mat-slide-toggle\n [formControl]=\"control\"\n [attr.name]=\"name\"\n [required]=\"required\"\n >\n {{ label }}\n </mat-slide-toggle>\n <span class=\"mat-hint td-dynamic-element-hint\">{{ hint }}</span>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.MatSlideToggleRequiredValidator, selector: "mat-slide-toggle[required][formControlName], mat-slide-toggle[required][formControl], mat-slide-toggle[required][ngModel]" }, { kind: "component", type: i2.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex"], exportAs: ["matSlideToggle"] }] });
|
|
13
|
+
}
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicSlideToggleComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'td-dynamic-slide-toggle', template: "<div class=\"td-dynamic-slide-toggle-wrapper\">\n <mat-slide-toggle\n [formControl]=\"control\"\n [attr.name]=\"name\"\n [required]=\"required\"\n >\n {{ label }}\n </mat-slide-toggle>\n <span class=\"mat-hint td-dynamic-element-hint\">{{ hint }}</span>\n</div>\n" }]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zbGlkZS10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWR5bmFtaWMtZm9ybXMvc3JjL2xpYi9keW5hbWljLWVsZW1lbnRzL2R5bmFtaWMtc2xpZGUtdG9nZ2xlL2R5bmFtaWMtc2xpZGUtdG9nZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLXNsaWRlLXRvZ2dsZS9keW5hbWljLXNsaWRlLXRvZ2dsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUTFDLE1BQU0sT0FBTyw2QkFBNkI7SUFDeEMsT0FBTyxDQUFzQjtJQUU3QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRVgsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLElBQUksR0FBRyxFQUFFLENBQUM7SUFFVixRQUFRLEdBQUcsS0FBSyxDQUFDO3VHQVROLDZCQUE2QjsyRkFBN0IsNkJBQTZCLCtEQ1IxQyx5UkFVQTs7MkZERmEsNkJBQTZCO2tCQUx6QyxTQUFTOytCQUNFLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZC1keW5hbWljLXNsaWRlLXRvZ2dsZScsXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtc2xpZGUtdG9nZ2xlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHRlbXBsYXRlVXJsOiAnLi9keW5hbWljLXNsaWRlLXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG59KVxuZXhwb3J0IGNsYXNzIFRkRHluYW1pY1NsaWRlVG9nZ2xlQ29tcG9uZW50IHtcbiAgY29udHJvbCE6IFVudHlwZWRGb3JtQ29udHJvbDtcblxuICBsYWJlbCA9ICcnO1xuXG4gIG5hbWUgPSAnJztcblxuICBoaW50ID0gJyc7XG5cbiAgcmVxdWlyZWQgPSBmYWxzZTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJ0ZC1keW5hbWljLXNsaWRlLXRvZ2dsZS13cmFwcGVyXCI+XG4gIDxtYXQtc2xpZGUtdG9nZ2xlXG4gICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgPlxuICAgIHt7IGxhYmVsIH19XG4gIDwvbWF0LXNsaWRlLXRvZ2dsZT5cbiAgPHNwYW4gY2xhc3M9XCJtYXQtaGludCB0ZC1keW5hbWljLWVsZW1lbnQtaGludFwiPnt7IGhpbnQgfX08L3NwYW4+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Component, ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "@angular/material/slider";
|
|
6
|
+
export class TdDynamicSliderComponent {
|
|
7
|
+
_changeDetectorRef;
|
|
8
|
+
control;
|
|
9
|
+
label = '';
|
|
10
|
+
required = false;
|
|
11
|
+
name = '';
|
|
12
|
+
hint = '';
|
|
13
|
+
min;
|
|
14
|
+
max;
|
|
15
|
+
constructor(_changeDetectorRef) {
|
|
16
|
+
this._changeDetectorRef = _changeDetectorRef;
|
|
17
|
+
}
|
|
18
|
+
_handleBlur() {
|
|
19
|
+
setTimeout(() => {
|
|
20
|
+
this._changeDetectorRef.markForCheck();
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicSliderComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicSliderComponent, selector: "td-dynamic-slider", ngImport: i0, template: "<div\n class=\"td-dynamic-slider-wrapper mat-form-field mat-form-field-can-float mat-form-field-should-float\"\n>\n <span class=\"mat-form-field-label-wrapper\">\n <label class=\"mat-form-field-label mat-primary td-slider-label\">\n {{ label }}\n <span\n *ngIf=\"required && !control?.disabled\"\n class=\"mat-form-field-required-marker\"\n >*</span\n >\n </label>\n </span>\n <div class=\"td-dynamic-slider-field\">\n <mat-slider\n #slider\n class=\"td-dynamic-slider\"\n thumbLabel\n tickInterval=\"auto\"\n (blur)=\"_handleBlur()\"\n >\n <input\n [attr.name]=\"name\"\n [min]=\"min\"\n [max]=\"max\"\n [formControl]=\"control\"\n [required]=\"required\"\n matSliderThumb\n />\n </mat-slider>\n </div>\n <span class=\"mat-hint td-dynamic-element-hint\">{{ hint }}</span>\n</div>\n", styles: [":host .td-dynamic-slider-wrapper{display:block}.td-dynamic-slider-field{position:relative;flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-slider-field .td-dynamic-slider{flex:1}\n"], 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatSlider, selector: "mat-slider", inputs: ["color", "disableRipple", "disabled", "discrete", "showTickMarks", "min", "max", "step", "displayWith"], exportAs: ["matSlider"] }, { kind: "directive", type: i3.MatSliderThumb, selector: "input[matSliderThumb]", inputs: ["value"], outputs: ["valueChange", "dragStart", "dragEnd"], exportAs: ["matSliderThumb"] }] });
|
|
25
|
+
}
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicSliderComponent, decorators: [{
|
|
27
|
+
type: Component,
|
|
28
|
+
args: [{ selector: 'td-dynamic-slider', template: "<div\n class=\"td-dynamic-slider-wrapper mat-form-field mat-form-field-can-float mat-form-field-should-float\"\n>\n <span class=\"mat-form-field-label-wrapper\">\n <label class=\"mat-form-field-label mat-primary td-slider-label\">\n {{ label }}\n <span\n *ngIf=\"required && !control?.disabled\"\n class=\"mat-form-field-required-marker\"\n >*</span\n >\n </label>\n </span>\n <div class=\"td-dynamic-slider-field\">\n <mat-slider\n #slider\n class=\"td-dynamic-slider\"\n thumbLabel\n tickInterval=\"auto\"\n (blur)=\"_handleBlur()\"\n >\n <input\n [attr.name]=\"name\"\n [min]=\"min\"\n [max]=\"max\"\n [formControl]=\"control\"\n [required]=\"required\"\n matSliderThumb\n />\n </mat-slider>\n </div>\n <span class=\"mat-hint td-dynamic-element-hint\">{{ hint }}</span>\n</div>\n", styles: [":host .td-dynamic-slider-wrapper{display:block}.td-dynamic-slider-field{position:relative;flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-slider-field .td-dynamic-slider{flex:1}\n"] }]
|
|
29
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zbGlkZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWR5bmFtaWMtZm9ybXMvc3JjL2xpYi9keW5hbWljLWVsZW1lbnRzL2R5bmFtaWMtc2xpZGVyL2R5bmFtaWMtc2xpZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLXNsaWRlci9keW5hbWljLXNsaWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQVE3RCxNQUFNLE9BQU8sd0JBQXdCO0lBZWY7SUFkcEIsT0FBTyxDQUFzQjtJQUU3QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRVgsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUVqQixJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRVYsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLEdBQUcsQ0FBVTtJQUViLEdBQUcsQ0FBVTtJQUViLFlBQW9CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO0lBQUcsQ0FBQztJQUU3RCxXQUFXO1FBQ1QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBckJVLHdCQUF3QjsyRkFBeEIsd0JBQXdCLHlEQ1JyQyxzNUJBaUNBOzsyRkR6QmEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtZHluYW1pYy1zbGlkZXInLFxuICBzdHlsZVVybHM6IFsnLi9keW5hbWljLXNsaWRlci5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vZHluYW1pYy1zbGlkZXIuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUZER5bmFtaWNTbGlkZXJDb21wb25lbnQge1xuICBjb250cm9sITogVW50eXBlZEZvcm1Db250cm9sO1xuXG4gIGxhYmVsID0gJyc7XG5cbiAgcmVxdWlyZWQgPSBmYWxzZTtcblxuICBuYW1lID0gJyc7XG5cbiAgaGludCA9ICcnO1xuXG4gIG1pbj86IG51bWJlcjtcblxuICBtYXg/OiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIF9oYW5kbGVCbHVyKCk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJ0ZC1keW5hbWljLXNsaWRlci13cmFwcGVyIG1hdC1mb3JtLWZpZWxkIG1hdC1mb3JtLWZpZWxkLWNhbi1mbG9hdCBtYXQtZm9ybS1maWVsZC1zaG91bGQtZmxvYXRcIlxuPlxuICA8c3BhbiBjbGFzcz1cIm1hdC1mb3JtLWZpZWxkLWxhYmVsLXdyYXBwZXJcIj5cbiAgICA8bGFiZWwgY2xhc3M9XCJtYXQtZm9ybS1maWVsZC1sYWJlbCBtYXQtcHJpbWFyeSB0ZC1zbGlkZXItbGFiZWxcIj5cbiAgICAgIHt7IGxhYmVsIH19XG4gICAgICA8c3BhblxuICAgICAgICAqbmdJZj1cInJlcXVpcmVkICYmICFjb250cm9sPy5kaXNhYmxlZFwiXG4gICAgICAgIGNsYXNzPVwibWF0LWZvcm0tZmllbGQtcmVxdWlyZWQtbWFya2VyXCJcbiAgICAgICAgPio8L3NwYW5cbiAgICAgID5cbiAgICA8L2xhYmVsPlxuICA8L3NwYW4+XG4gIDxkaXYgY2xhc3M9XCJ0ZC1keW5hbWljLXNsaWRlci1maWVsZFwiPlxuICAgIDxtYXQtc2xpZGVyXG4gICAgICAjc2xpZGVyXG4gICAgICBjbGFzcz1cInRkLWR5bmFtaWMtc2xpZGVyXCJcbiAgICAgIHRodW1iTGFiZWxcbiAgICAgIHRpY2tJbnRlcnZhbD1cImF1dG9cIlxuICAgICAgKGJsdXIpPVwiX2hhbmRsZUJsdXIoKVwiXG4gICAgPlxuICAgICAgPGlucHV0XG4gICAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gICAgICAgIFttaW5dPVwibWluXCJcbiAgICAgICAgW21heF09XCJtYXhcIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICAgIG1hdFNsaWRlclRodW1iXG4gICAgICAvPlxuICAgIDwvbWF0LXNsaWRlcj5cbiAgPC9kaXY+XG4gIDxzcGFuIGNsYXNzPVwibWF0LWhpbnQgdGQtZHluYW1pYy1lbGVtZW50LWhpbnRcIj57eyBoaW50IH19PC9zcGFuPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/forms";
|
|
5
|
+
import * as i3 from "@angular/material/form-field";
|
|
6
|
+
import * as i4 from "@angular/material/input";
|
|
7
|
+
export class TdDynamicTextareaComponent {
|
|
8
|
+
control;
|
|
9
|
+
label = '';
|
|
10
|
+
hint = '';
|
|
11
|
+
name = '';
|
|
12
|
+
required = false;
|
|
13
|
+
errorMessageTemplate;
|
|
14
|
+
placeholder = '';
|
|
15
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicTextareaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: TdDynamicTextareaComponent, selector: "td-dynamic-textarea", ngImport: i0, template: "<div class=\"td-dynamic-textarea-wrapper\">\n <mat-form-field class=\"td-dynamic-textarea-field\">\n <mat-label>{{ label }}</mat-label>\n <textarea\n #elementInput\n matInput\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [name]=\"name\"\n rows=\"4\"\n ></textarea>\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-textarea-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-textarea-wrapper .td-dynamic-textarea-field{flex:1;box-sizing:border-box}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { 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.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { 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.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.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"] }] });
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: TdDynamicTextareaComponent, decorators: [{
|
|
19
|
+
type: Component,
|
|
20
|
+
args: [{ selector: 'td-dynamic-textarea', template: "<div class=\"td-dynamic-textarea-wrapper\">\n <mat-form-field class=\"td-dynamic-textarea-field\">\n <mat-label>{{ label }}</mat-label>\n <textarea\n #elementInput\n matInput\n [formControl]=\"control\"\n [placeholder]=\"placeholder\"\n [required]=\"required\"\n [name]=\"name\"\n rows=\"4\"\n ></textarea>\n <mat-hint>{{ hint }}</mat-hint>\n <mat-error>\n <ng-template\n [ngTemplateOutlet]=\"errorMessageTemplate\"\n [ngTemplateOutletContext]=\"{\n control: control,\n errors: control.errors\n }\"\n ></ng-template>\n </mat-error>\n </mat-form-field>\n</div>\n", styles: [".td-dynamic-textarea-wrapper{flex-direction:row;display:flex;box-sizing:border-box}.td-dynamic-textarea-wrapper .td-dynamic-textarea-field{flex:1;box-sizing:border-box}\n"] }]
|
|
21
|
+
}] });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy10ZXh0YXJlYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItZHluYW1pYy1mb3Jtcy9zcmMvbGliL2R5bmFtaWMtZWxlbWVudHMvZHluYW1pYy10ZXh0YXJlYS9keW5hbWljLXRleHRhcmVhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci1keW5hbWljLWZvcm1zL3NyYy9saWIvZHluYW1pYy1lbGVtZW50cy9keW5hbWljLXRleHRhcmVhL2R5bmFtaWMtdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBZSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUXZELE1BQU0sT0FBTywwQkFBMEI7SUFDckMsT0FBTyxDQUFzQjtJQUU3QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBRVgsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUVWLElBQUksR0FBRyxFQUFFLENBQUM7SUFFVixRQUFRLEdBQUcsS0FBSyxDQUFDO0lBRWpCLG9CQUFvQixDQUFvQjtJQUV4QyxXQUFXLEdBQUcsRUFBRSxDQUFDO3VHQWJOLDBCQUEwQjsyRkFBMUIsMEJBQTBCLDJEQ1J2QywycEJBd0JBOzsyRkRoQmEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGQtZHluYW1pYy10ZXh0YXJlYScsXG4gIHN0eWxlVXJsczogWycuL2R5bmFtaWMtdGV4dGFyZWEuY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2R5bmFtaWMtdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUZER5bmFtaWNUZXh0YXJlYUNvbXBvbmVudCB7XG4gIGNvbnRyb2whOiBVbnR5cGVkRm9ybUNvbnRyb2w7XG5cbiAgbGFiZWwgPSAnJztcblxuICBoaW50ID0gJyc7XG5cbiAgbmFtZSA9ICcnO1xuXG4gIHJlcXVpcmVkID0gZmFsc2U7XG5cbiAgZXJyb3JNZXNzYWdlVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIHBsYWNlaG9sZGVyID0gJyc7XG59XG4iLCI8ZGl2IGNsYXNzPVwidGQtZHluYW1pYy10ZXh0YXJlYS13cmFwcGVyXCI+XG4gIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInRkLWR5bmFtaWMtdGV4dGFyZWEtZmllbGRcIj5cbiAgICA8bWF0LWxhYmVsPnt7IGxhYmVsIH19PC9tYXQtbGFiZWw+XG4gICAgPHRleHRhcmVhXG4gICAgICAjZWxlbWVudElucHV0XG4gICAgICBtYXRJbnB1dFxuICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgIHJvd3M9XCI0XCJcbiAgICA+PC90ZXh0YXJlYT5cbiAgICA8bWF0LWhpbnQ+e3sgaGludCB9fTwvbWF0LWhpbnQ+XG4gICAgPG1hdC1lcnJvcj5cbiAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJlcnJvck1lc3NhZ2VUZW1wbGF0ZVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7XG4gICAgICAgICAgY29udHJvbDogY29udHJvbCxcbiAgICAgICAgICBlcnJvcnM6IGNvbnRyb2wuZXJyb3JzXG4gICAgICAgIH1cIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9tYXQtZXJyb3I+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG48L2Rpdj5cbiJdfQ==
|