@theseam/ui-common 1.0.0-beta.0 → 1.0.0-beta.10
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/breadcrumbs/index.d.ts +1 -2
- package/buttons/index.d.ts +20 -13
- package/datatable/index.d.ts +77 -39
- package/dynamic/index.d.ts +5 -5
- package/fesm2022/theseam-ui-common-asset-reader.mjs +28 -29
- package/fesm2022/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-breadcrumbs.mjs +25 -31
- package/fesm2022/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-buttons.mjs +108 -66
- package/fesm2022/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-card.mjs +21 -21
- package/fesm2022/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-carousel.mjs +28 -30
- package/fesm2022/theseam-ui-common-carousel.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-checkbox.mjs +27 -27
- package/fesm2022/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-confirm-dialog.mjs +23 -27
- package/fesm2022/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-core.mjs +31 -11
- package/fesm2022/theseam-ui-common-core.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-data-exporter.mjs +18 -19
- package/fesm2022/theseam-ui-common-data-exporter.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-data-filters.mjs +80 -64
- package/fesm2022/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-datatable-alterations-display.mjs +51 -49
- package/fesm2022/theseam-ui-common-datatable-alterations-display.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-datatable-dynamic.mjs +145 -112
- package/fesm2022/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-datatable.mjs +727 -420
- package/fesm2022/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-dynamic-component-loader.mjs +12 -14
- package/fesm2022/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-dynamic.mjs +60 -48
- package/fesm2022/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-footer-bar.mjs +9 -15
- package/fesm2022/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-form-field-error.mjs +60 -43
- package/fesm2022/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-form-field.mjs +129 -76
- package/fesm2022/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-framework.mjs +669 -543
- package/fesm2022/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-google-maps.mjs +206 -149
- package/fesm2022/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-graphql.mjs +311 -254
- package/fesm2022/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-icon.mjs +125 -89
- package/fesm2022/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-layout.mjs +18 -26
- package/fesm2022/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-loading.mjs +19 -28
- package/fesm2022/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-menu.mjs +124 -95
- package/fesm2022/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-modal.mjs +178 -129
- package/fesm2022/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-models.mjs +3 -3
- package/fesm2022/theseam-ui-common-models.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-navigation-reload.mjs +13 -11
- package/fesm2022/theseam-ui-common-navigation-reload.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-popover.mjs +81 -88
- package/fesm2022/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-progress.mjs +15 -19
- package/fesm2022/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-rich-text.mjs +65 -52
- package/fesm2022/theseam-ui-common-rich-text.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-scrollbar.mjs +12 -9
- package/fesm2022/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-services.mjs +41 -26
- package/fesm2022/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-shared.mjs +149 -159
- package/fesm2022/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-storage.mjs +9 -6
- package/fesm2022/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-story-helpers.mjs +148 -86
- package/fesm2022/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tabbed.mjs +43 -39
- package/fesm2022/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-table-cell-type.mjs +63 -39
- package/fesm2022/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-table-cell-types.mjs +182 -144
- package/fesm2022/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-table.mjs +62 -41
- package/fesm2022/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tel-input.mjs +98 -63
- package/fesm2022/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-testing.mjs +13 -10
- package/fesm2022/theseam-ui-common-testing.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tiled-select.mjs +54 -50
- package/fesm2022/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-toggle-edit.mjs +41 -37
- package/fesm2022/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-toggle-group.mjs +30 -31
- package/fesm2022/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-tooltip.mjs +225 -66
- package/fesm2022/theseam-ui-common-tooltip.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-unsaved-changes-dialog.mjs +14 -12
- package/fesm2022/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-utils.mjs +113 -77
- package/fesm2022/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-validators.mjs +10 -9
- package/fesm2022/theseam-ui-common-validators.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-vertical-list-filter.mjs +39 -17
- package/fesm2022/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-viewers.mjs +80 -53
- package/fesm2022/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2022/theseam-ui-common-widget.mjs +288 -314
- package/fesm2022/theseam-ui-common-widget.mjs.map +1 -1
- package/form-field/index.d.ts +1 -1
- package/framework/base-layout/base-layout.component.scss +9 -4
- package/framework/base-layout/styles/_variables.scss +4 -9
- package/framework/dashboard/dashboard-widgets/dashboard-widgets.component.scss +6 -4
- package/framework/index.d.ts +6 -6
- package/framework/nav/nav-item/nav-item.component.scss +7 -6
- package/framework/nav/styles/_themes/light/_variables.scss +21 -5
- package/framework/nav/styles/_themes/primary/_variables.scss +21 -5
- package/framework/side-nav/side-nav-item/side-nav-item.component.scss +5 -2
- package/framework/side-nav/styles/_themes/light/_variables.scss +5 -1
- package/framework/side-nav/styles/_themes/primary/_variables.scss +25 -5
- package/graphql/index.d.ts +49 -7
- package/modal/README.md +5 -5
- package/modal/index.d.ts +1 -1
- package/models/index.d.ts +1 -1
- package/package.json +59 -60
- package/popover/index.d.ts +0 -2
- package/progress/progress-circle/styles/_variables.scss +15 -3
- package/shared/index.d.ts +0 -13
- package/story-helpers/index.d.ts +11 -1
- package/styles/bootstrap/_bootstrap.scss +34 -34
- package/styles/bootstrap/_bs-styles.scss +4 -8
- package/styles/bootstrap/_bs-utilities.scss +4 -4
- package/styles/bootstrap/_bs-variables.scss +65 -70
- package/styles/common/_forms.scss +9 -10
- package/styles/common/_global.scss +0 -1
- package/styles/common/_hacks.scss +1 -1
- package/styles/common/_table.scss +0 -1
- package/styles/common/_text.scss +3 -1
- package/styles/theme.scss +1 -1
- package/styles/vendor/ng-select/_ng-select-bs4.scss +292 -294
- package/styles/vendor/ngx-datatable/_ngx-datatable.scss +63 -32
- package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +37 -10
- package/styles/vendor/ngx-datatable/_themes/material/_variables.scss +3 -1
- package/styles/vendor/quill/_quill.scss +15 -9
- package/table/index.d.ts +4 -1
- package/table-cell-type/index.d.ts +27 -2
- package/tel-input/README.md +27 -27
- package/utils/index.d.ts +3 -3
- package/viewers/index.d.ts +9 -2
- package/widget/_widget-theme.scss +1 -1
- package/widget/styles/_variables.scss +2 -2
- package/widget/widget/widget.component.scss +0 -2
- package/widget/widget-content-components/widget-tile/widget-tile.component.scss +1 -3
- package/widget/widget-footer/widget-footer.component.scss +0 -1
|
@@ -30,10 +30,10 @@ class TheSeamFormFieldHarness extends ComponentHarness {
|
|
|
30
30
|
// private readonly _input = this.locatorFor('input')
|
|
31
31
|
/** Creates a `HarnessPredicate` used to locate a particular `TheSeamFormFieldHarness`. */
|
|
32
32
|
static with(options) {
|
|
33
|
-
return new HarnessPredicate(TheSeamFormFieldHarness, options)
|
|
33
|
+
return (new HarnessPredicate(TheSeamFormFieldHarness, options)
|
|
34
34
|
// .addOption('field name', options.name,
|
|
35
35
|
// (harness, name) => HarnessPredicate.stringMatches(harness.getName(), name))
|
|
36
|
-
.addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
|
|
36
|
+
.addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label)));
|
|
37
37
|
}
|
|
38
38
|
async getLabel() {
|
|
39
39
|
return (await this._label()).text();
|
|
@@ -46,25 +46,29 @@ class TheSeamFormFieldHarness extends ComponentHarness {
|
|
|
46
46
|
class FormFieldErrorDirective {
|
|
47
47
|
template;
|
|
48
48
|
static ngAcceptInputType_external;
|
|
49
|
-
get validatorName() {
|
|
50
|
-
|
|
49
|
+
get validatorName() {
|
|
50
|
+
return this._validatorName || this.seamFormFieldError;
|
|
51
|
+
}
|
|
52
|
+
set validatorName(value) {
|
|
53
|
+
this._validatorName = value;
|
|
54
|
+
}
|
|
51
55
|
_validatorName;
|
|
52
56
|
seamFormFieldError;
|
|
53
57
|
external = false;
|
|
54
58
|
constructor(template) {
|
|
55
59
|
this.template = template;
|
|
56
60
|
}
|
|
57
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
58
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
61
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldErrorDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
62
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.7", type: FormFieldErrorDirective, isStandalone: false, selector: "[seamFormFieldError]", inputs: { validatorName: "validatorName", seamFormFieldError: "seamFormFieldError", external: "external" }, ngImport: i0 });
|
|
59
63
|
}
|
|
60
64
|
__decorate([
|
|
61
65
|
InputBoolean()
|
|
62
66
|
], FormFieldErrorDirective.prototype, "external", void 0);
|
|
63
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
67
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldErrorDirective, decorators: [{
|
|
64
68
|
type: Directive,
|
|
65
69
|
args: [{
|
|
66
70
|
selector: '[seamFormFieldError]',
|
|
67
|
-
standalone: false
|
|
71
|
+
standalone: false,
|
|
68
72
|
}]
|
|
69
73
|
}], ctorParameters: () => [{ type: i0.TemplateRef }], propDecorators: { validatorName: [{
|
|
70
74
|
type: Input
|
|
@@ -79,14 +83,14 @@ class FormFieldHelpTextDirective {
|
|
|
79
83
|
constructor(template) {
|
|
80
84
|
this.template = template;
|
|
81
85
|
}
|
|
82
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
83
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
86
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldHelpTextDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
87
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.7", type: FormFieldHelpTextDirective, isStandalone: false, selector: "[seamFormFieldHelpText]", ngImport: i0 });
|
|
84
88
|
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
89
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldHelpTextDirective, decorators: [{
|
|
86
90
|
type: Directive,
|
|
87
91
|
args: [{
|
|
88
92
|
selector: '[seamFormFieldHelpText]',
|
|
89
|
-
standalone: false
|
|
93
|
+
standalone: false,
|
|
90
94
|
}]
|
|
91
95
|
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
92
96
|
|
|
@@ -95,14 +99,14 @@ class FormFieldLabelTplDirective {
|
|
|
95
99
|
constructor(template) {
|
|
96
100
|
this.template = template;
|
|
97
101
|
}
|
|
98
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
99
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
102
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldLabelTplDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
103
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.7", type: FormFieldLabelTplDirective, isStandalone: false, selector: "[seamFormFieldLabelTpl]", ngImport: i0 });
|
|
100
104
|
}
|
|
101
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldLabelTplDirective, decorators: [{
|
|
102
106
|
type: Directive,
|
|
103
107
|
args: [{
|
|
104
108
|
selector: '[seamFormFieldLabelTpl]',
|
|
105
|
-
standalone: false
|
|
109
|
+
standalone: false,
|
|
106
110
|
}]
|
|
107
111
|
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
108
112
|
|
|
@@ -131,8 +135,8 @@ class FormFieldRequiredIndicatorComponent {
|
|
|
131
135
|
this._requiredChange.next(this.required);
|
|
132
136
|
}
|
|
133
137
|
}
|
|
134
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
135
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
138
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldRequiredIndicatorComponent, deps: [{ token: FORM_FIELD_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
139
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.7", type: FormFieldRequiredIndicatorComponent, isStandalone: false, selector: "seam-form-field-required-indicator", inputs: { required: "required" }, host: { classAttribute: "text-danger" }, usesOnChanges: true, ngImport: i0, template: `
|
|
136
140
|
<ng-container *ngIf="_controlRequired$; else noControl">
|
|
137
141
|
<ng-container *ngIf="_controlRequired$ | async">*</ng-container>
|
|
138
142
|
</ng-container>
|
|
@@ -144,7 +148,7 @@ class FormFieldRequiredIndicatorComponent {
|
|
|
144
148
|
__decorate([
|
|
145
149
|
InputBoolean()
|
|
146
150
|
], FormFieldRequiredIndicatorComponent.prototype, "required", void 0);
|
|
147
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
151
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: FormFieldRequiredIndicatorComponent, decorators: [{
|
|
148
152
|
type: Component,
|
|
149
153
|
args: [{ selector: 'seam-form-field-required-indicator', template: `
|
|
150
154
|
<ng-container *ngIf="_controlRequired$; else noControl">
|
|
@@ -154,7 +158,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
154
158
|
<ng-container *ngIf="required">*</ng-container>
|
|
155
159
|
</ng-template>
|
|
156
160
|
`, host: {
|
|
157
|
-
|
|
161
|
+
class: 'text-danger',
|
|
158
162
|
}, changeDetection: ChangeDetectionStrategy.OnPush, standalone: false }]
|
|
159
163
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
160
164
|
type: Optional
|
|
@@ -185,24 +189,38 @@ class InputDirective {
|
|
|
185
189
|
return this._isFormControl && this.seamInputSize === 'sm';
|
|
186
190
|
}
|
|
187
191
|
get _isInvalid() {
|
|
188
|
-
return this.ngControl &&
|
|
192
|
+
return (this.ngControl &&
|
|
193
|
+
this.ngControl.invalid &&
|
|
194
|
+
(this.ngControl.dirty || this.ngControl.touched));
|
|
195
|
+
}
|
|
196
|
+
get _attrId() {
|
|
197
|
+
return this._isNgSelect() ? undefined : this.id;
|
|
198
|
+
}
|
|
199
|
+
get _attrPlaceholder() {
|
|
200
|
+
return this.placeholder;
|
|
189
201
|
}
|
|
190
|
-
get _attrId() { return this._isNgSelect() ? undefined : this.id; }
|
|
191
|
-
get _attrPlaceholder() { return this.placeholder; }
|
|
192
202
|
ariaDescribedBy;
|
|
193
203
|
seamInputSize = 'normal';
|
|
194
|
-
get id() {
|
|
195
|
-
|
|
204
|
+
get id() {
|
|
205
|
+
return this._id;
|
|
206
|
+
}
|
|
207
|
+
set id(value) {
|
|
208
|
+
this._id = value || this._uid;
|
|
209
|
+
}
|
|
196
210
|
_id;
|
|
197
211
|
/** Input type of the element. */
|
|
198
|
-
get type() {
|
|
212
|
+
get type() {
|
|
213
|
+
return this._type;
|
|
214
|
+
}
|
|
199
215
|
set type(value) {
|
|
200
216
|
this._type = value || 'text';
|
|
201
217
|
// this._validateType()
|
|
202
218
|
// When using Angular inputs, developers are no longer able to set the properties on the native
|
|
203
219
|
// input element. To ensure that bindings for `type` work, we need to sync the setter
|
|
204
220
|
// with the native property. Textarea elements don't support the type property or attribute.
|
|
205
|
-
if (
|
|
221
|
+
if (!this._isTextarea() &&
|
|
222
|
+
!this._isNgSelect() /* && getSupportedInputTypes().has(this._type) */) {
|
|
223
|
+
;
|
|
206
224
|
this._elementRef.nativeElement.type = this._type;
|
|
207
225
|
}
|
|
208
226
|
}
|
|
@@ -242,7 +260,7 @@ class InputDirective {
|
|
|
242
260
|
_readonlyChange = new Subject();
|
|
243
261
|
requiredChange = this._requiredChange.asObservable();
|
|
244
262
|
disabledChange = this._disabledChange.asObservable();
|
|
245
|
-
readonlyChange = this._readonlyChange.asObservable;
|
|
263
|
+
readonlyChange = this._readonlyChange.asObservable();
|
|
246
264
|
constructor(_elementRef, ngControl, _parentForm, _parentFormGroup,
|
|
247
265
|
// 3rd party support
|
|
248
266
|
_ngSelect) {
|
|
@@ -271,7 +289,14 @@ class InputDirective {
|
|
|
271
289
|
}
|
|
272
290
|
ngDoCheck() {
|
|
273
291
|
if (this._isNgSelect()) {
|
|
274
|
-
this._ngSelect.labelForId = this.id
|
|
292
|
+
// this._ngSelect.labelForId = this.id // No longer possible, do to inputs being signals.
|
|
293
|
+
// More flaky and less performant than old way of just using the input, but should still work.
|
|
294
|
+
if (this._ngSelect.labelForId() === null) {
|
|
295
|
+
const inputElement = this._elementRef.nativeElement.querySelector('.ng-input > input');
|
|
296
|
+
if (inputElement) {
|
|
297
|
+
inputElement.id = this.id || '';
|
|
298
|
+
}
|
|
299
|
+
}
|
|
275
300
|
this._ngSelect.setDisabledState(this.disabled);
|
|
276
301
|
}
|
|
277
302
|
else {
|
|
@@ -281,11 +306,11 @@ class InputDirective {
|
|
|
281
306
|
}
|
|
282
307
|
/** Should only be textual inputs, but initially our app added to all form controls. */
|
|
283
308
|
_shouldHaveFormControlCssClass() {
|
|
284
|
-
return !this._isSeamCheckbox() &&
|
|
309
|
+
return (!this._isSeamCheckbox() &&
|
|
285
310
|
!this._isRadioInput() &&
|
|
286
311
|
!this._isTelInput() &&
|
|
287
312
|
!this._isQuillEditor() &&
|
|
288
|
-
!this._isRichTextEditor();
|
|
313
|
+
!this._isRichTextEditor());
|
|
289
314
|
}
|
|
290
315
|
/** Determines if the component host is a textarea. */
|
|
291
316
|
_isTextarea() {
|
|
@@ -297,21 +322,21 @@ class InputDirective {
|
|
|
297
322
|
}
|
|
298
323
|
/** Determines if the component host is a seam-checkbox. */
|
|
299
324
|
_isSeamCheckbox() {
|
|
300
|
-
return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-checkbox';
|
|
325
|
+
return (this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-checkbox');
|
|
301
326
|
}
|
|
302
327
|
/** Determines if the component host is a radio input. */
|
|
303
328
|
_isRadioInput() {
|
|
304
|
-
return this._elementRef.nativeElement.nodeName.toLowerCase() === 'input' &&
|
|
305
|
-
this._elementRef.nativeElement.type.toLowerCase() === 'radio';
|
|
329
|
+
return (this._elementRef.nativeElement.nodeName.toLowerCase() === 'input' &&
|
|
330
|
+
this._elementRef.nativeElement.type.toLowerCase() === 'radio');
|
|
306
331
|
}
|
|
307
332
|
_isTelInput() {
|
|
308
|
-
return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-tel-input';
|
|
333
|
+
return (this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-tel-input');
|
|
309
334
|
}
|
|
310
335
|
_isQuillEditor() {
|
|
311
|
-
return this._elementRef.nativeElement.nodeName.toLowerCase() === 'quill-editor';
|
|
336
|
+
return (this._elementRef.nativeElement.nodeName.toLowerCase() === 'quill-editor');
|
|
312
337
|
}
|
|
313
338
|
_isRichTextEditor() {
|
|
314
|
-
return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-rich-text';
|
|
339
|
+
return (this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-rich-text');
|
|
315
340
|
}
|
|
316
341
|
/** Focuses the input. */
|
|
317
342
|
focus() {
|
|
@@ -329,8 +354,8 @@ class InputDirective {
|
|
|
329
354
|
}
|
|
330
355
|
}
|
|
331
356
|
}
|
|
332
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
333
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
|
357
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: InputDirective, deps: [{ token: i0.ElementRef }, { token: i1$1.NgControl, optional: true, self: true }, { token: i1$1.NgForm, optional: true }, { token: i1$1.FormGroupDirective, optional: true }, { token: i2.NgSelectComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
358
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.7", type: InputDirective, isStandalone: false, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput], seam-rich-text[seamInput]", inputs: { seamInputSize: "seamInputSize", id: "id", type: "type", placeholder: "placeholder", required: "required", disabled: "disabled", readonly: "readonly" }, host: { properties: { "class.form-control": "this._isFormControl", "class.form-control-sm": "this._isFormControlSmall", "class.is-invalid": "this._isInvalid", "attr.id": "this._attrId", "attr.placeholder": "this._attrPlaceholder", "attr.aria-describedby": "this.ariaDescribedBy" } }, exportAs: ["seamInput"], usesOnChanges: true, ngImport: i0 });
|
|
334
359
|
}
|
|
335
360
|
__decorate([
|
|
336
361
|
InputBoolean()
|
|
@@ -338,14 +363,14 @@ __decorate([
|
|
|
338
363
|
__decorate([
|
|
339
364
|
InputBoolean()
|
|
340
365
|
], InputDirective.prototype, "readonly", void 0);
|
|
341
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
366
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: InputDirective, decorators: [{
|
|
342
367
|
type: Directive,
|
|
343
368
|
args: [{
|
|
344
369
|
// TODO: Consider removing restriction and instead adding a dev warning. A few
|
|
345
370
|
// inputs in the app need to be changed for this first.
|
|
346
371
|
selector: 'input[seamInput], textarea[seamInput], ng-select[seamInput], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput], seam-rich-text[seamInput]',
|
|
347
372
|
exportAs: 'seamInput',
|
|
348
|
-
standalone: false
|
|
373
|
+
standalone: false,
|
|
349
374
|
}]
|
|
350
375
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1$1.NgControl, decorators: [{
|
|
351
376
|
type: Optional
|
|
@@ -408,7 +433,9 @@ class TheSeamFormFieldComponent {
|
|
|
408
433
|
/** @ignore */
|
|
409
434
|
_errorPadding = '0px';
|
|
410
435
|
/** @ignore */
|
|
411
|
-
get _displayStyle() {
|
|
436
|
+
get _displayStyle() {
|
|
437
|
+
return this.inline ? 'inline-block' : 'block';
|
|
438
|
+
}
|
|
412
439
|
/**
|
|
413
440
|
* Used to declare an inline element.
|
|
414
441
|
*
|
|
@@ -443,14 +470,20 @@ class TheSeamFormFieldComponent {
|
|
|
443
470
|
* `id` attribute to add to the label element. This should not be needed in
|
|
444
471
|
* most situations, because a unique id will be generated if not provided.
|
|
445
472
|
*/
|
|
446
|
-
get labelId() {
|
|
447
|
-
|
|
473
|
+
get labelId() {
|
|
474
|
+
return this._labelId;
|
|
475
|
+
}
|
|
476
|
+
set labelId(value) {
|
|
477
|
+
this._labelId = value || this._labelUid;
|
|
478
|
+
}
|
|
448
479
|
/** @ignore */
|
|
449
480
|
_labelId;
|
|
450
481
|
/**
|
|
451
482
|
* Help text added below the control.
|
|
452
483
|
*/
|
|
453
|
-
get helpText() {
|
|
484
|
+
get helpText() {
|
|
485
|
+
return this._helpTextStrSubject.value;
|
|
486
|
+
}
|
|
454
487
|
set helpText(value) {
|
|
455
488
|
this._helpTextStrSubject.next(value || undefined);
|
|
456
489
|
}
|
|
@@ -458,22 +491,34 @@ class TheSeamFormFieldComponent {
|
|
|
458
491
|
* `id` attribute to add to the label element. This should not be needed in
|
|
459
492
|
* most situations, because a unique id will be generated if not provided.
|
|
460
493
|
*/
|
|
461
|
-
get helpTextId() {
|
|
462
|
-
|
|
494
|
+
get helpTextId() {
|
|
495
|
+
return this._helpTextId;
|
|
496
|
+
}
|
|
497
|
+
set helpTextId(value) {
|
|
498
|
+
this._helpTextId = value || this._helpTextUid;
|
|
499
|
+
}
|
|
463
500
|
/** @ignore */
|
|
464
501
|
_helpTextId;
|
|
465
502
|
/** @ignore */
|
|
466
|
-
get helpTextTpl() {
|
|
503
|
+
get helpTextTpl() {
|
|
504
|
+
return this._helpTextTplSubject.value;
|
|
505
|
+
}
|
|
467
506
|
set helpTextTpl(value) {
|
|
468
507
|
this._helpTextTplSubject.next(value || undefined);
|
|
469
508
|
}
|
|
470
509
|
/** @ignore */
|
|
471
510
|
labelTpl;
|
|
472
511
|
/** @ignore */
|
|
473
|
-
get contentInput() {
|
|
474
|
-
|
|
512
|
+
get contentInput() {
|
|
513
|
+
return this._contentInputSubject.value;
|
|
514
|
+
}
|
|
515
|
+
set contentInput(value) {
|
|
516
|
+
this._contentInputSubject.next(value || undefined);
|
|
517
|
+
}
|
|
475
518
|
/** @ignore */
|
|
476
|
-
get fieldErrors() {
|
|
519
|
+
get fieldErrors() {
|
|
520
|
+
return this._fieldErrors;
|
|
521
|
+
}
|
|
477
522
|
set fieldErrors(value) {
|
|
478
523
|
this._fieldErrors = value;
|
|
479
524
|
if (this._sub) {
|
|
@@ -482,8 +527,8 @@ class TheSeamFormFieldComponent {
|
|
|
482
527
|
if (this.fieldErrors) {
|
|
483
528
|
this._sub = this.fieldErrors.changes
|
|
484
529
|
.pipe(startWith$1(this.fieldErrors))
|
|
485
|
-
.pipe(map(v => v.toArray()))
|
|
486
|
-
.pipe(tap(v => {
|
|
530
|
+
.pipe(map((v) => v.toArray()))
|
|
531
|
+
.pipe(tap((v) => {
|
|
487
532
|
const records = [];
|
|
488
533
|
for (const item of v) {
|
|
489
534
|
if (item.validatorName) {
|
|
@@ -491,13 +536,13 @@ class TheSeamFormFieldComponent {
|
|
|
491
536
|
validatorName: item.validatorName,
|
|
492
537
|
error: null,
|
|
493
538
|
template: item.template,
|
|
494
|
-
external: item.external
|
|
539
|
+
external: item.external,
|
|
495
540
|
});
|
|
496
541
|
}
|
|
497
542
|
}
|
|
498
543
|
this._fieldErrorsSubject2.next(records);
|
|
499
544
|
}))
|
|
500
|
-
.subscribe(v => this._fieldErrorsSubject.next(v));
|
|
545
|
+
.subscribe((v) => this._fieldErrorsSubject.next(v));
|
|
501
546
|
}
|
|
502
547
|
}
|
|
503
548
|
/** @ignore */
|
|
@@ -513,12 +558,18 @@ class TheSeamFormFieldComponent {
|
|
|
513
558
|
/** @ignore */
|
|
514
559
|
fieldErrors2$ = this._fieldErrorsSubject2.asObservable();
|
|
515
560
|
get isPasswordInput() {
|
|
516
|
-
return this.contentInput &&
|
|
561
|
+
return (this.contentInput &&
|
|
562
|
+
this.contentInput.type &&
|
|
563
|
+
this.contentInput.type === 'password');
|
|
517
564
|
}
|
|
518
565
|
get passwordInputElement() {
|
|
519
|
-
return this.contentInput &&
|
|
566
|
+
return (this.contentInput &&
|
|
567
|
+
this.contentInput._elementRef &&
|
|
568
|
+
this.contentInput._elementRef.nativeElement);
|
|
569
|
+
}
|
|
570
|
+
get hasHelpText() {
|
|
571
|
+
return !!this._helpTextStrSubject.value || !!this._helpTextTplSubject.value;
|
|
520
572
|
}
|
|
521
|
-
get hasHelpText() { return !!this._helpTextStrSubject.value || !!this._helpTextTplSubject.value; }
|
|
522
573
|
// get hasHelpText() { return !!this.helpText || !!this._helpTextTpl }
|
|
523
574
|
_helpTextSub = Subscription.EMPTY;
|
|
524
575
|
/** @ignore */
|
|
@@ -527,14 +578,16 @@ class TheSeamFormFieldComponent {
|
|
|
527
578
|
}
|
|
528
579
|
/** @ignore */
|
|
529
580
|
ngOnInit() {
|
|
530
|
-
this._helpTextSub = this._contentInputSubject
|
|
581
|
+
this._helpTextSub = this._contentInputSubject
|
|
582
|
+
.pipe(filter((contentInput) => !!contentInput), switchMap$1((contentInput) => combineLatest([
|
|
531
583
|
this._helpTextStrSubject,
|
|
532
|
-
this._helpTextTplSubject
|
|
584
|
+
this._helpTextTplSubject,
|
|
533
585
|
]).pipe(map(() => this.hasHelpText), distinctUntilChanged(), tap(() => {
|
|
534
586
|
if (contentInput) {
|
|
535
587
|
contentInput.ariaDescribedBy = this._helpTextId || undefined;
|
|
536
588
|
}
|
|
537
|
-
}))))
|
|
589
|
+
}))))
|
|
590
|
+
.subscribe();
|
|
538
591
|
}
|
|
539
592
|
/** @ignore */
|
|
540
593
|
ngOnDestroy() {
|
|
@@ -564,25 +617,25 @@ class TheSeamFormFieldComponent {
|
|
|
564
617
|
getElement() {
|
|
565
618
|
return this._elementRef.nativeElement;
|
|
566
619
|
}
|
|
567
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
568
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
|
620
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: TheSeamFormFieldComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
621
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.7", type: TheSeamFormFieldComponent, isStandalone: false, selector: "seam-form-field", inputs: { inline: "inline", label: "label", labelPosition: "labelPosition", labelClass: "labelClass", maxErrors: "maxErrors", numPaddingErrors: "numPaddingErrors", labelId: "labelId", helpText: "helpText", helpTextId: "helpTextId" }, host: { properties: { "style.display": "this._displayStyle" } }, providers: [
|
|
569
622
|
{
|
|
570
623
|
provide: FORM_FIELD_COMPONENT,
|
|
571
624
|
useExisting: TheSeamFormFieldComponent,
|
|
572
|
-
}
|
|
573
|
-
], queries: [{ propertyName: "helpTextTpl", first: true, predicate: FormFieldHelpTextDirective, descendants: true, static: true }, { propertyName: "labelTpl", first: true, predicate: FormFieldLabelTplDirective, descendants: true, static: true }, { propertyName: "contentInput", first: true, predicate: InputDirective, descendants: true, static: true }, { propertyName: "fieldErrors", predicate: FormFieldErrorDirective }], ngImport: i0, template: "<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label
|
|
625
|
+
},
|
|
626
|
+
], queries: [{ propertyName: "helpTextTpl", first: true, predicate: FormFieldHelpTextDirective, descendants: true, static: true }, { propertyName: "labelTpl", first: true, predicate: FormFieldLabelTplDirective, descendants: true, static: true }, { propertyName: "contentInput", first: true, predicate: InputDirective, descendants: true, static: true }, { propertyName: "fieldErrors", predicate: FormFieldErrorDirective }], ngImport: i0, template: "<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label\n *ngIf=\"label || labelTpl\"\n #labelElem\n [attr.id]=\"labelId\"\n [attr.for]=\"contentInput?.id\"\n class=\"control-label {{ labelClass }}\"\n (seamElemResized)=\"_labelElemResized(labelElem)\"\n >\n <ng-container *ngIf=\"labelTpl; else noLabelTpl\">\n <ng-template\n [ngTemplateOutlet]=\"labelTpl.template\"\n [ngTemplateOutletContext]=\"{\n $implicit: label,\n label: label,\n required: contentInput?.required || false,\n }\"\n ></ng-template>\n </ng-container>\n <ng-template #noLabelTpl>\n {{ label\n }}<seam-form-field-required-indicator\n class=\"pl-1\"\n ></seam-form-field-required-indicator>\n </ng-template>\n </label>\n <ng-container *ngIf=\"!isPasswordInput\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isPasswordInput\">\n <div class=\"position-relative\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n <seam-password-input-reveal\n [inputRef]=\"$any(passwordInputElement)\"\n ></seam-password-input-reveal>\n </div>\n </ng-container>\n </div>\n <!-- Need `.d-block` to make errors show without input sibling selector -->\n <ng-container *ngIf=\"contentInput\">\n <seam-form-field-error-list\n *ngIf=\"fieldErrors$ | async as fieldErrors\"\n [style.paddingLeft]=\"\n (label || labelTpl) && inline ? _errorPadding : undefined\n \"\n [control]=\"contentInput.ngControl\"\n [errors]=\"fieldErrors2$ | async\"\n [maxErrors]=\"maxErrors\"\n [numPaddingErrors]=\"numPaddingErrors\"\n class=\"invalid-feedback\"\n >\n </seam-form-field-error-list>\n </ng-container>\n</div>\n\n<ng-template #content><ng-content></ng-content></ng-template>\n", styles: [".seam-form-field-inline{display:flex;flex-direction:row}.seam-form-field-inline .control-label{margin-bottom:0;display:flex;flex-direction:column;justify-content:center}\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: "component", type: i2$1.FormFieldErrorListComponent, selector: "seam-form-field-error-list", inputs: ["errors", "showValidatorName", "numPaddingErrors", "listItemTpls", "maxErrors", "control", "showErrors"] }, { kind: "directive", type: i3.TheSeamElemResizedDirective, selector: "[seamElemResized]", outputs: ["seamElemResized"], exportAs: ["seamElemResized"] }, { kind: "component", type: i3.TheSeamPasswordInputRevealComponent, selector: "seam-password-input-reveal", inputs: ["inputRef", "passwordVisible"] }, { kind: "component", type: FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
|
|
574
627
|
}
|
|
575
628
|
__decorate([
|
|
576
629
|
InputBoolean()
|
|
577
630
|
], TheSeamFormFieldComponent.prototype, "inline", void 0);
|
|
578
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
631
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: TheSeamFormFieldComponent, decorators: [{
|
|
579
632
|
type: Component,
|
|
580
633
|
args: [{ selector: 'seam-form-field', providers: [
|
|
581
634
|
{
|
|
582
635
|
provide: FORM_FIELD_COMPONENT,
|
|
583
636
|
useExisting: TheSeamFormFieldComponent,
|
|
584
|
-
}
|
|
585
|
-
], standalone: false, template: "<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label
|
|
637
|
+
},
|
|
638
|
+
], standalone: false, template: "<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label\n *ngIf=\"label || labelTpl\"\n #labelElem\n [attr.id]=\"labelId\"\n [attr.for]=\"contentInput?.id\"\n class=\"control-label {{ labelClass }}\"\n (seamElemResized)=\"_labelElemResized(labelElem)\"\n >\n <ng-container *ngIf=\"labelTpl; else noLabelTpl\">\n <ng-template\n [ngTemplateOutlet]=\"labelTpl.template\"\n [ngTemplateOutletContext]=\"{\n $implicit: label,\n label: label,\n required: contentInput?.required || false,\n }\"\n ></ng-template>\n </ng-container>\n <ng-template #noLabelTpl>\n {{ label\n }}<seam-form-field-required-indicator\n class=\"pl-1\"\n ></seam-form-field-required-indicator>\n </ng-template>\n </label>\n <ng-container *ngIf=\"!isPasswordInput\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"isPasswordInput\">\n <div class=\"position-relative\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n <seam-password-input-reveal\n [inputRef]=\"$any(passwordInputElement)\"\n ></seam-password-input-reveal>\n </div>\n </ng-container>\n </div>\n <!-- Need `.d-block` to make errors show without input sibling selector -->\n <ng-container *ngIf=\"contentInput\">\n <seam-form-field-error-list\n *ngIf=\"fieldErrors$ | async as fieldErrors\"\n [style.paddingLeft]=\"\n (label || labelTpl) && inline ? _errorPadding : undefined\n \"\n [control]=\"contentInput.ngControl\"\n [errors]=\"fieldErrors2$ | async\"\n [maxErrors]=\"maxErrors\"\n [numPaddingErrors]=\"numPaddingErrors\"\n class=\"invalid-feedback\"\n >\n </seam-form-field-error-list>\n </ng-container>\n</div>\n\n<ng-template #content><ng-content></ng-content></ng-template>\n", styles: [".seam-form-field-inline{display:flex;flex-direction:row}.seam-form-field-inline .control-label{margin-bottom:0;display:flex;flex-direction:column;justify-content:center}\n"] }]
|
|
586
639
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { _displayStyle: [{
|
|
587
640
|
type: HostBinding,
|
|
588
641
|
args: ['style.display']
|
|
@@ -619,8 +672,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
619
672
|
}] } });
|
|
620
673
|
|
|
621
674
|
class TheSeamFormFieldModule {
|
|
622
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
|
623
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
|
675
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: TheSeamFormFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
676
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.7", ngImport: i0, type: TheSeamFormFieldModule, declarations: [TheSeamFormFieldComponent,
|
|
624
677
|
InputDirective,
|
|
625
678
|
FormFieldErrorDirective,
|
|
626
679
|
FormFieldLabelTplDirective,
|
|
@@ -634,12 +687,12 @@ class TheSeamFormFieldModule {
|
|
|
634
687
|
FormFieldLabelTplDirective,
|
|
635
688
|
FormFieldRequiredIndicatorComponent,
|
|
636
689
|
FormFieldHelpTextDirective] });
|
|
637
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
|
690
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: TheSeamFormFieldModule, imports: [CommonModule,
|
|
638
691
|
ReactiveFormsModule,
|
|
639
692
|
TheSeamFormFieldErrorModule,
|
|
640
693
|
TheSeamSharedModule] });
|
|
641
694
|
}
|
|
642
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
|
695
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.7", ngImport: i0, type: TheSeamFormFieldModule, decorators: [{
|
|
643
696
|
type: NgModule,
|
|
644
697
|
args: [{
|
|
645
698
|
declarations: [
|
|
@@ -648,13 +701,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
648
701
|
FormFieldErrorDirective,
|
|
649
702
|
FormFieldLabelTplDirective,
|
|
650
703
|
FormFieldRequiredIndicatorComponent,
|
|
651
|
-
FormFieldHelpTextDirective
|
|
704
|
+
FormFieldHelpTextDirective,
|
|
652
705
|
],
|
|
653
706
|
imports: [
|
|
654
707
|
CommonModule,
|
|
655
708
|
ReactiveFormsModule,
|
|
656
709
|
TheSeamFormFieldErrorModule,
|
|
657
|
-
TheSeamSharedModule
|
|
710
|
+
TheSeamSharedModule,
|
|
658
711
|
],
|
|
659
712
|
exports: [
|
|
660
713
|
TheSeamFormFieldComponent,
|
|
@@ -662,8 +715,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
662
715
|
FormFieldErrorDirective,
|
|
663
716
|
FormFieldLabelTplDirective,
|
|
664
717
|
FormFieldRequiredIndicatorComponent,
|
|
665
|
-
FormFieldHelpTextDirective
|
|
666
|
-
]
|
|
718
|
+
FormFieldHelpTextDirective,
|
|
719
|
+
],
|
|
667
720
|
}]
|
|
668
721
|
}] });
|
|
669
722
|
|