@theseam/ui-common 0.4.23 → 0.4.24
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/esm2020/form-field/form-field-required-indicator.component.mjs +22 -7
- package/esm2020/form-field/input.directive.mjs +19 -16
- package/esm2020/form-field/testing/form-field.harness.mjs +45 -0
- package/esm2020/form-field/testing/index.mjs +2 -1
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +3 -3
- package/esm2020/story-helpers/story-modal-container.component.mjs +3 -3
- package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
- package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
- package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
- package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
- package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
- package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
- package/fesm2015/theseam-ui-common-form-field.mjs +92 -27
- package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-google-maps.mjs +2 -2
- package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-story-helpers.mjs +2 -2
- package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field.mjs +88 -27
- package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-google-maps.mjs +2 -2
- package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-story-helpers.mjs +2 -2
- package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
- package/form-field/form-field-required-indicator.component.d.ts +6 -1
- package/form-field/input.directive.d.ts +9 -15
- package/form-field/testing/form-field.harness.d.ts +14 -0
- package/form-field/testing/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -26,4 +26,4 @@ function splitMultPolygon(multiPolygon) {
|
|
|
26
26
|
coordinates: c,
|
|
27
27
|
}));
|
|
28
28
|
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXQtbXVsdGktcG9seWdvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdXRpbHMvZ2VvLWpzb24vc3BsaXQtbXVsdGktcG9seWdvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0E7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsaUJBQW9DO0lBQ3JFLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQzFELElBQUksaUJBQWlCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pDLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUE7WUFDdkQsSUFBSSxRQUFRLENBQUMsSUFBSSxLQUFLLGNBQWMsRUFBRTtnQkFDcEMsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDcEQsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsUUFBUSxFQUFFLENBQUM7b0JBQ1gsVUFBVSxFQUFFLEVBQUc7aUJBQ0osQ0FBQSxDQUFDLENBQUE7Z0JBQ2QsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUE7Z0JBQ3BELENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO2FBQ3RDO1NBQ0Y7S0FDRjtBQUNILENBQUM7QUFFRCxTQUFTLGdCQUFnQixDQUFDLFlBQTBCO0lBQ2xELE9BQU8sWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksRUFBRSxTQUFTO1FBQ2YsV0FBVyxFQUFFLENBQUM7S0FDZixDQUFDLENBQUMsQ0FBQTtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb2x5Z29uIH0gZnJvbSAnQHR1cmYvaGVscGVycydcclxuaW1wb3J0IHtcclxuICBGZWF0dXJlLFxyXG4gIEZlYXR1cmVDb2xsZWN0aW9uLFxyXG4gIE11bHRpUG9seWdvbixcclxufSBmcm9tICdnZW9qc29uJ1xyXG5cclxuLyoqXHJcbiAqIFNwbGl0IGFsbCBNdWx0aVBvbHlnb24gaW50byBQb2x5Z29uLiBBbnkgcHJvcGVydGllcywgb3RoZXIgdGhhblxyXG4gKiAnY29vcmRpbmF0ZXMnLCBvZiB0aGUgTXVsdGlQb2x5Z29ucyB3aWxsIGJlIGxvc3QuXHJcbiAqXHJcbiAqIE5PVEU6IE11bHRpUG9seWdvbnMgaW4gYSBHZW9tZXRyeUNvbGxlY3Rpb24gd2lsbCBub3QgYmUgc3BsaXQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc3BsaXRNdWx0aVBvbHlnb25zKGZlYXR1cmVDb2xsZWN0aW9uOiBGZWF0dXJlQ29sbGVjdGlvbik6IHZvaWQge1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMubGVuZ3RoOyBpKyspIHtcclxuICAgIGlmIChmZWF0dXJlQ29sbGVjdGlvbi5mZWF0dXJlc1tpXSkge1xyXG4gICAgICBjb25zdCBnZW9tZXRyeSA9IGZlYXR1cmVDb2xsZWN0aW9uLmZlYXR1cmVzW2ldLmdlb21ldHJ5XHJcbiAgICAgIGlmIChnZW9tZXRyeS50eXBlID09PSAnTXVsdGlQb2x5Z29uJykge1xyXG4gICAgICAgIGNvbnN0IGZlYXR1cmVzID0gc3BsaXRNdWx0UG9seWdvbihnZW9tZXRyeSkubWFwKHAgPT4gKHtcclxuICAgICAgICAgIHR5cGU6ICdGZWF0dXJlJyxcclxuICAgICAgICAgIGdlb21ldHJ5OiBwLFxyXG4gICAgICAgICAgcHJvcGVydGllczogeyB9LFxyXG4gICAgICAgIH0gYXMgRmVhdHVyZSkpXHJcbiAgICAgICAgZmVhdHVyZUNvbGxlY3Rpb24uZmVhdHVyZXMuc3BsaWNlKGksIDEsIC4uLmZlYXR1cmVzKVxyXG4gICAgICAgIGkgKz0gTWF0aC5tYXgoZmVhdHVyZXMubGVuZ3RoIC0gMSwgMClcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gc3BsaXRNdWx0UG9seWdvbihtdWx0aVBvbHlnb246IE11bHRpUG9seWdvbik6IFBvbHlnb25bXSB7XHJcbiAgcmV0dXJuIG11bHRpUG9seWdvbi5jb29yZGluYXRlcy5tYXAoYyA9PiAoe1xyXG4gICAgdHlwZTogJ1BvbHlnb24nLFxyXG4gICAgY29vcmRpbmF0ZXM6IGMsXHJcbiAgfSkpXHJcbn1cclxuIl19
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { __awaiter, __decorate } from 'tslib';
|
|
2
|
-
import { ComponentHarness } from '@angular/cdk/testing';
|
|
2
|
+
import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { Directive, Input, InjectionToken, Component, ChangeDetectionStrategy, Optional, Inject, Self, HostBinding, ContentChild, ContentChildren, NgModule } from '@angular/core';
|
|
5
5
|
import { InputBoolean } from '@theseam/ui-common/core';
|
|
6
|
+
import { Subject, switchMap, startWith, shareReplay, BehaviorSubject, ReplaySubject, Subscription, combineLatest } from 'rxjs';
|
|
6
7
|
import * as i1 from '@angular/common';
|
|
7
8
|
import { CommonModule } from '@angular/common';
|
|
8
|
-
import {
|
|
9
|
-
import { startWith, map, tap, filter, switchMap, distinctUntilChanged } from 'rxjs/operators';
|
|
9
|
+
import { startWith as startWith$1, map, tap, filter, switchMap as switchMap$1, distinctUntilChanged } from 'rxjs/operators';
|
|
10
10
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
11
11
|
import { toggleAttribute } from '@theseam/ui-common/utils';
|
|
12
12
|
import * as i1$1 from '@angular/forms';
|
|
@@ -26,6 +26,54 @@ class TheSeamFormFieldRequiredIndicatorHarness extends ComponentHarness {
|
|
|
26
26
|
}
|
|
27
27
|
TheSeamFormFieldRequiredIndicatorHarness.hostSelector = 'seam-form-field-required-indicator';
|
|
28
28
|
|
|
29
|
+
class TheSeamFormFieldHarness extends ComponentHarness {
|
|
30
|
+
constructor() {
|
|
31
|
+
super(...arguments);
|
|
32
|
+
this._label = this.locatorFor('label');
|
|
33
|
+
// public async getName(): Promise<string | null> {
|
|
34
|
+
// return (await this._input()).getAttribute('name')
|
|
35
|
+
// }
|
|
36
|
+
// public async getValue(): Promise<any> {
|
|
37
|
+
// return (await this._input()).getProperty('value')
|
|
38
|
+
// }
|
|
39
|
+
// public async isDisabled(): Promise<boolean> {
|
|
40
|
+
// return (await this._input()).getProperty('disabled')
|
|
41
|
+
// }
|
|
42
|
+
// public async isRequired(): Promise<boolean> {
|
|
43
|
+
// return (await this._input()).getProperty('required')
|
|
44
|
+
// }
|
|
45
|
+
// public async click(): Promise<void> {
|
|
46
|
+
// return (await this._input()).click()
|
|
47
|
+
// }
|
|
48
|
+
// public async setValue(value: any): Promise<void> {
|
|
49
|
+
// // TODO: Find out why setInputValue() doesn't update the FormControl.
|
|
50
|
+
// // return (await this._input()).setInputValue(value)
|
|
51
|
+
// await (await this._input()).click()
|
|
52
|
+
// await this._input().then(x => x.setInputValue(''))
|
|
53
|
+
// return (await this._input()).sendKeys(value)
|
|
54
|
+
// }
|
|
55
|
+
}
|
|
56
|
+
// private readonly _input = this.locatorFor('input')
|
|
57
|
+
/** Creates a `HarnessPredicate` used to locate a particular `TheSeamFormFieldHarness`. */
|
|
58
|
+
static with(options) {
|
|
59
|
+
return new HarnessPredicate(TheSeamFormFieldHarness, options)
|
|
60
|
+
// .addOption('field name', options.name,
|
|
61
|
+
// (harness, name) => HarnessPredicate.stringMatches(harness.getName(), name))
|
|
62
|
+
.addOption('label', options.label, (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
|
|
63
|
+
}
|
|
64
|
+
getLabel() {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
return (yield this._label()).text();
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
clickLabel() {
|
|
70
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
yield (yield this._label()).click();
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
TheSeamFormFieldHarness.hostSelector = 'seam-form-field';
|
|
76
|
+
|
|
29
77
|
class FormFieldErrorDirective {
|
|
30
78
|
get validatorName() { return this._validatorName || this.seamFormFieldError; }
|
|
31
79
|
set validatorName(value) { this._validatorName = value; }
|
|
@@ -85,27 +133,41 @@ const FORM_FIELD_COMPONENT = new InjectionToken('FORM_FIELD_COMPONENT');
|
|
|
85
133
|
class FormFieldRequiredIndicatorComponent {
|
|
86
134
|
constructor(_formField) {
|
|
87
135
|
this._formField = _formField;
|
|
136
|
+
this._requiredChange = new Subject();
|
|
88
137
|
/** Used if a form control is not found. */
|
|
89
138
|
this.required = false;
|
|
139
|
+
if (_formField) {
|
|
140
|
+
this._controlRequired$ = _formField._contentInputSubject.pipe(switchMap((contentInput) => {
|
|
141
|
+
if (!contentInput) {
|
|
142
|
+
return this._requiredChange.pipe(startWith(this.required));
|
|
143
|
+
}
|
|
144
|
+
return contentInput.requiredChange.pipe(startWith(contentInput.required));
|
|
145
|
+
}), shareReplay({ bufferSize: 1, refCount: true }));
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
ngOnChanges(changes) {
|
|
149
|
+
if (changes.required) {
|
|
150
|
+
this._requiredChange.next(this.required);
|
|
151
|
+
}
|
|
90
152
|
}
|
|
91
153
|
}
|
|
92
154
|
FormFieldRequiredIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldRequiredIndicatorComponent, deps: [{ token: FORM_FIELD_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
93
|
-
FormFieldRequiredIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: { required: "required" }, host: { classAttribute: "text-danger" }, ngImport: i0, template: `
|
|
94
|
-
<ng-container *ngIf="
|
|
95
|
-
<ng-container *ngIf="
|
|
155
|
+
FormFieldRequiredIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: { required: "required" }, host: { classAttribute: "text-danger" }, usesOnChanges: true, ngImport: i0, template: `
|
|
156
|
+
<ng-container *ngIf="_controlRequired$; else noControl">
|
|
157
|
+
<ng-container *ngIf="_controlRequired$ | async">*</ng-container>
|
|
96
158
|
</ng-container>
|
|
97
159
|
<ng-template #noControl>
|
|
98
160
|
<ng-container *ngIf="required">*</ng-container>
|
|
99
161
|
</ng-template>
|
|
100
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
162
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
101
163
|
__decorate([
|
|
102
164
|
InputBoolean()
|
|
103
165
|
], FormFieldRequiredIndicatorComponent.prototype, "required", void 0);
|
|
104
166
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: FormFieldRequiredIndicatorComponent, decorators: [{
|
|
105
167
|
type: Component,
|
|
106
168
|
args: [{ selector: 'seam-form-field-required-indicator', template: `
|
|
107
|
-
<ng-container *ngIf="
|
|
108
|
-
<ng-container *ngIf="
|
|
169
|
+
<ng-container *ngIf="_controlRequired$; else noControl">
|
|
170
|
+
<ng-container *ngIf="_controlRequired$ | async">*</ng-container>
|
|
109
171
|
</ng-container>
|
|
110
172
|
<ng-template #noControl>
|
|
111
173
|
<ng-container *ngIf="required">*</ng-container>
|
|
@@ -149,10 +211,6 @@ class InputDirective {
|
|
|
149
211
|
this._elementRef.nativeElement.type = this._type;
|
|
150
212
|
}
|
|
151
213
|
}
|
|
152
|
-
/**
|
|
153
|
-
* Implemented as part of MatFormFieldControl.
|
|
154
|
-
* @docs-private
|
|
155
|
-
*/
|
|
156
214
|
get disabled() {
|
|
157
215
|
if (this.ngControl && this.ngControl.disabled !== null) {
|
|
158
216
|
return this.ngControl.disabled;
|
|
@@ -183,10 +241,6 @@ class InputDirective {
|
|
|
183
241
|
this._isFormControl = true;
|
|
184
242
|
this.seamInputSize = 'normal';
|
|
185
243
|
this._type = 'text';
|
|
186
|
-
/**
|
|
187
|
-
* Implemented as part of MatFormFieldControl.
|
|
188
|
-
* @docs-private
|
|
189
|
-
*/
|
|
190
244
|
this.required = false;
|
|
191
245
|
this._disabled = false;
|
|
192
246
|
this.focused = false;
|
|
@@ -201,6 +255,12 @@ class InputDirective {
|
|
|
201
255
|
// }
|
|
202
256
|
/** Whether the element is readonly. */
|
|
203
257
|
this.readonly = false;
|
|
258
|
+
this._requiredChange = new Subject();
|
|
259
|
+
this._disabledChange = new Subject();
|
|
260
|
+
this._readonlyChange = new Subject();
|
|
261
|
+
this.requiredChange = this._requiredChange.asObservable();
|
|
262
|
+
this.disabledChange = this._disabledChange.asObservable();
|
|
263
|
+
this.readonlyChange = this._readonlyChange.asObservable;
|
|
204
264
|
// Force setter to be called in case id was not specified.
|
|
205
265
|
// eslint-disable-next-line no-self-assign
|
|
206
266
|
this.id = this.id;
|
|
@@ -208,6 +268,17 @@ class InputDirective {
|
|
|
208
268
|
this._isFormControl = false;
|
|
209
269
|
}
|
|
210
270
|
}
|
|
271
|
+
ngOnChanges(changes) {
|
|
272
|
+
if (changes.required) {
|
|
273
|
+
this._requiredChange.next(this.required);
|
|
274
|
+
}
|
|
275
|
+
if (changes.disabled) {
|
|
276
|
+
this._disabledChange.next(this.disabled);
|
|
277
|
+
}
|
|
278
|
+
if (changes.readonly) {
|
|
279
|
+
this._readonlyChange.next(this.readonly);
|
|
280
|
+
}
|
|
281
|
+
}
|
|
211
282
|
ngDoCheck() {
|
|
212
283
|
if (this._isNgSelect()) {
|
|
213
284
|
this._ngSelect.labelForId = this.id;
|
|
@@ -252,12 +323,6 @@ class InputDirective {
|
|
|
252
323
|
_isQuillEditor() {
|
|
253
324
|
return this._elementRef.nativeElement.nodeName.toLowerCase() === 'quill-editor';
|
|
254
325
|
}
|
|
255
|
-
/** Make sure the input is a supported type. */
|
|
256
|
-
// protected _validateType() {
|
|
257
|
-
// if (MAT_INPUT_INVALID_TYPES.indexOf(this._type) > -1) {
|
|
258
|
-
// throw getMatInputUnsupportedTypeError(this._type)
|
|
259
|
-
// }
|
|
260
|
-
// }
|
|
261
326
|
/** Focuses the input. */
|
|
262
327
|
focus() {
|
|
263
328
|
this._elementRef.nativeElement.focus();
|
|
@@ -276,7 +341,7 @@ class InputDirective {
|
|
|
276
341
|
}
|
|
277
342
|
}
|
|
278
343
|
InputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.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 });
|
|
279
|
-
InputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[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"], ngImport: i0 });
|
|
344
|
+
InputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[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 });
|
|
280
345
|
__decorate([
|
|
281
346
|
InputBoolean()
|
|
282
347
|
], InputDirective.prototype, "required", void 0);
|
|
@@ -380,7 +445,7 @@ class TheSeamFormFieldComponent {
|
|
|
380
445
|
}
|
|
381
446
|
if (this.fieldErrors) {
|
|
382
447
|
this._sub = this.fieldErrors.changes
|
|
383
|
-
.pipe(startWith(this.fieldErrors))
|
|
448
|
+
.pipe(startWith$1(this.fieldErrors))
|
|
384
449
|
.pipe(map(v => v.toArray()))
|
|
385
450
|
.pipe(tap(v => {
|
|
386
451
|
const records = [];
|
|
@@ -452,7 +517,7 @@ class TheSeamFormFieldComponent {
|
|
|
452
517
|
}
|
|
453
518
|
/** @ignore */
|
|
454
519
|
ngOnInit() {
|
|
455
|
-
this._helpTextSub = this._contentInputSubject.pipe(filter(contentInput => !!contentInput), switchMap(contentInput => combineLatest([
|
|
520
|
+
this._helpTextSub = this._contentInputSubject.pipe(filter(contentInput => !!contentInput), switchMap$1(contentInput => combineLatest([
|
|
456
521
|
this._helpTextStrSubject,
|
|
457
522
|
this._helpTextTplSubject
|
|
458
523
|
]).pipe(map(() => this.hasHelpText), distinctUntilChanged(), tap(() => {
|
|
@@ -597,5 +662,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
597
662
|
* Generated bundle index. Do not edit.
|
|
598
663
|
*/
|
|
599
664
|
|
|
600
|
-
export { FORM_FIELD_COMPONENT, FormFieldErrorDirective, FormFieldHelpTextDirective, FormFieldLabelTplDirective, FormFieldRequiredIndicatorComponent, InputDirective, TheSeamFormFieldComponent, TheSeamFormFieldModule, TheSeamFormFieldRequiredIndicatorHarness };
|
|
665
|
+
export { FORM_FIELD_COMPONENT, FormFieldErrorDirective, FormFieldHelpTextDirective, FormFieldLabelTplDirective, FormFieldRequiredIndicatorComponent, InputDirective, TheSeamFormFieldComponent, TheSeamFormFieldHarness, TheSeamFormFieldModule, TheSeamFormFieldRequiredIndicatorHarness };
|
|
601
666
|
//# sourceMappingURL=theseam-ui-common-form-field.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theseam-ui-common-form-field.mjs","sources":["../../../projects/ui-common/form-field/testing/form-field-required-indicator.harness.ts","../../../projects/ui-common/form-field/form-field-error.directive.ts","../../../projects/ui-common/form-field/form-field-help-text.directive.ts","../../../projects/ui-common/form-field/form-field-label-tpl.directive.ts","../../../projects/ui-common/form-field/form-field-tokens.ts","../../../projects/ui-common/form-field/form-field-required-indicator.component.ts","../../../projects/ui-common/form-field/input.directive.ts","../../../projects/ui-common/form-field/form-field.component.ts","../../../projects/ui-common/form-field/form-field.component.html","../../../projects/ui-common/form-field/form-field.module.ts","../../../projects/ui-common/form-field/theseam-ui-common-form-field.ts"],"sourcesContent":["import { ComponentHarness } from '@angular/cdk/testing'\n\nexport class TheSeamFormFieldRequiredIndicatorHarness extends ComponentHarness {\n static hostSelector = 'seam-form-field-required-indicator'\n\n public async isIndicatorVisible() {\n return (await (await this.host()).text()) === '*'\n }\n}\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport { Directive, Input, TemplateRef } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\n@Directive({\n selector: '[seamFormFieldError]'\n})\nexport class FormFieldErrorDirective {\n static ngAcceptInputType_external: BooleanInput\n\n @Input()\n get validatorName(): string | undefined | null { return this._validatorName || this.seamFormFieldError }\n set validatorName(value: string | undefined | null) { this._validatorName = value }\n private _validatorName: string | undefined | null\n\n @Input() seamFormFieldError: string | undefined | null\n\n @Input() @InputBoolean() external = false\n\n constructor(public template: TemplateRef<any>) {}\n\n}\n","import { Directive, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamFormFieldHelpText]'\n})\nexport class FormFieldHelpTextDirective {\n\n constructor(public template: TemplateRef<any>) { }\n\n}\n","import { Directive, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamFormFieldLabelTpl]'\n})\nexport class FormFieldLabelTplDirective {\n\n constructor(public template: TemplateRef<any>) { }\n\n}\n","import { InjectionToken } from '@angular/core'\n\nexport const FORM_FIELD_COMPONENT = new InjectionToken<any>('FORM_FIELD_COMPONENT')\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport { ChangeDetectionStrategy, Component, Inject, Input, Optional } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { FORM_FIELD_COMPONENT } from './form-field-tokens'\n\n@Component({\n selector: 'seam-form-field-required-indicator',\n template: `\n <ng-container *ngIf=\"_formField?.contentInput; else noControl\">\n <ng-container *ngIf=\"_formField?.contentInput?.required\">*</ng-container>\n </ng-container>\n <ng-template #noControl>\n <ng-container *ngIf=\"required\">*</ng-container>\n </ng-template>\n `,\n styles: [],\n host: {\n 'class': 'text-danger'\n },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FormFieldRequiredIndicatorComponent {\n static ngAcceptInputType_required: BooleanInput\n\n /** Used if a form control is not found. */\n @Input() @InputBoolean() required = false\n\n constructor(\n @Optional() @Inject(FORM_FIELD_COMPONENT) public readonly _formField: any\n ) { }\n\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { Directive, DoCheck, ElementRef, HostBinding, Input, Optional, Self } from '@angular/core'\nimport { FormGroupDirective, NgControl, NgForm } from '@angular/forms'\nimport { Subject } from 'rxjs'\n\nimport { NgSelectComponent } from '@ng-select/ng-select'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { toggleAttribute } from '@theseam/ui-common/utils'\n\n// NOTE: Partially based on mat-input: https://github.com/angular/material2/blob/master/src/lib/input/input.ts\n\nlet nextUniqueId = 0\n\n@Directive({\n // TODO: Consider removing restriction and instead adding a dev warning. A few\n // inputs in the app need to be changed for this first.\n selector: 'input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]',\n exportAs: 'seamInput',\n})\nexport class InputDirective implements DoCheck {\n static ngAcceptInputType_required: BooleanInput\n static ngAcceptInputType_disabled: BooleanInput\n static ngAcceptInputType_readonly: BooleanInput\n\n protected _uid = `lib-input-${nextUniqueId++}`\n\n // TODO: Remove this being added to all seamInput elements or break this\n // directive up. Some elements in our app already have worked around this\n // class being there, so some refactoring will be required before removal.\n @HostBinding('class.form-control') _isFormControl = true\n @HostBinding('class.form-control-sm') get _isFormControlSmall() {\n return this._isFormControl && this.seamInputSize === 'sm'\n }\n @HostBinding('class.is-invalid') get _isInvalid() {\n return this.ngControl && this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched)\n }\n\n @HostBinding('attr.id') get _attrId() { return this._isNgSelect() ? undefined : this.id }\n @HostBinding('attr.placeholder') get _attrPlaceholder() { return this.placeholder }\n @HostBinding('attr.aria-describedby') ariaDescribedBy: string | undefined\n\n @Input() seamInputSize: 'sm' | 'normal' = 'normal'\n\n @Input()\n get id(): string | undefined | null { return this._id }\n set id(value: string | undefined | null) { this._id = value || this._uid }\n protected _id: string | undefined | null\n\n /** Input type of the element. */\n @Input()\n get type(): string | undefined | null { return this._type }\n set type(value: string | undefined | null) {\n this._type = value || 'text'\n // this._validateType()\n\n // When using Angular inputs, developers are no longer able to set the properties on the native\n // input element. To ensure that bindings for `type` work, we need to sync the setter\n // with the native property. Textarea elements don't support the type property or attribute.\n if ((!this._isTextarea() && !this._isNgSelect()) /* && getSupportedInputTypes().has(this._type) */) {\n (this._elementRef.nativeElement as HTMLInputElement).type = this._type\n }\n }\n protected _type: string | undefined | null = 'text'\n\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n @Input() placeholder: string | undefined | null\n\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n @Input() @InputBoolean() required = false\n\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n @Input()\n get disabled(): boolean {\n if (this.ngControl && this.ngControl.disabled !== null) {\n return this.ngControl.disabled\n }\n return this._disabled\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value)\n\n // Browsers may not fire the blur event if the input is disabled too quickly.\n // Reset from here to ensure that the element doesn't become stuck.\n if (this.focused) {\n this.focused = false\n this.stateChanges.next()\n }\n }\n protected _disabled = false\n\n focused = false\n\n readonly stateChanges: Subject<void> = new Subject<void>()\n\n // @Input()\n // get value(): string { return this._inputValueAccessor.value; }\n // set value(value: string) {\n // if (value !== this.value) {\n // this._inputValueAccessor.value = value;\n // this.stateChanges.next();\n // }\n // }\n\n /** Whether the element is readonly. */\n @Input() @InputBoolean() readonly = false\n\n constructor(\n public _elementRef: ElementRef<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>,\n @Optional() @Self() public ngControl: NgControl,\n @Optional() private _parentForm: NgForm,\n @Optional() private _parentFormGroup: FormGroupDirective,\n // 3rd party support\n @Optional() private _ngSelect: NgSelectComponent\n ) {\n // Force setter to be called in case id was not specified.\n // eslint-disable-next-line no-self-assign\n this.id = this.id\n\n if (!this._shouldHaveFormControlCssClass()) {\n this._isFormControl = false\n }\n }\n\n ngDoCheck() {\n if (this._isNgSelect()) {\n this._ngSelect.labelForId = this.id\n this._ngSelect.setDisabledState(this.disabled)\n } else {\n toggleAttribute(this._elementRef.nativeElement, 'required', this.required)\n toggleAttribute(this._elementRef.nativeElement, 'disabled', this.disabled)\n }\n }\n\n /** Should only be textual inputs, but initially our app added to all form controls. */\n protected _shouldHaveFormControlCssClass() {\n return !this._isSeamCheckbox() &&\n !this._isRadioInput() &&\n !this._isNgbRadioGroup() &&\n !this._isTelInput() &&\n !this._isQuillEditor()\n }\n\n /** Determines if the component host is a textarea. */\n protected _isTextarea() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'textarea'\n }\n\n /** Determines if the component host is a ng-select. */\n protected _isNgSelect() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'ng-select'\n }\n\n /** Determines if the component host is a seam-checkbox. */\n protected _isSeamCheckbox() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-checkbox'\n }\n\n /** Determines if the component host is a radio input. */\n protected _isRadioInput() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'input' &&\n this._elementRef.nativeElement.type.toLowerCase() === 'radio'\n }\n\n protected _isNgbRadioGroup() {\n return this._elementRef.nativeElement.getAttribute('ngbRadioGroup') !== null\n }\n\n protected _isTelInput() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-tel-input'\n }\n\n protected _isQuillEditor() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'quill-editor'\n }\n\n /** Make sure the input is a supported type. */\n // protected _validateType() {\n // if (MAT_INPUT_INVALID_TYPES.indexOf(this._type) > -1) {\n // throw getMatInputUnsupportedTypeError(this._type)\n // }\n // }\n\n /** Focuses the input. */\n focus(): void {\n this._elementRef.nativeElement.focus()\n }\n\n /** Unfocuses the input. */\n blur(): void {\n this._elementRef.nativeElement.blur()\n }\n\n setValue(value: any) {\n if (this.ngControl) {\n const control = this.ngControl.control\n if (control) {\n control.setValue(value)\n }\n }\n }\n\n}\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport {\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n QueryList\n} from '@angular/core'\nimport { BehaviorSubject, combineLatest, Observable, ReplaySubject, Subscription } from 'rxjs'\nimport { distinctUntilChanged, filter, map, startWith, switchMap, tap } from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { IErrorRecord } from '@theseam/ui-common/form-field-error'\n\nimport { FormFieldErrorDirective } from './form-field-error.directive'\nimport { FormFieldHelpTextDirective } from './form-field-help-text.directive'\nimport { FormFieldLabelTplDirective } from './form-field-label-tpl.directive'\nimport { FORM_FIELD_COMPONENT } from './form-field-tokens'\nimport { InputDirective } from './input.directive'\n\nlet nextLabelUniqueId = 0\n\n/**\n * Should wrap all form controls.\n */\n@Component({\n selector: 'seam-form-field',\n templateUrl: './form-field.component.html',\n styleUrls: ['./form-field.component.scss'],\n providers: [\n {\n provide: FORM_FIELD_COMPONENT,\n useExisting: TheSeamFormFieldComponent,\n }\n ],\n})\nexport class TheSeamFormFieldComponent implements OnInit, OnDestroy {\n static ngAcceptInputType_inline: BooleanInput\n\n private readonly _helpTextStrSubject = new BehaviorSubject<string | undefined>(undefined)\n private readonly _helpTextTplSubject = new BehaviorSubject<FormFieldHelpTextDirective | undefined>(undefined)\n private readonly _contentInputSubject = new BehaviorSubject<InputDirective | undefined>(undefined)\n\n /** @ignore */\n protected _labelUid = `seam-label-${nextLabelUniqueId++}`\n\n /** @ignore */\n protected _helpTextUid = `seam-help-text-${nextLabelUniqueId++}`\n\n /** @ignore */\n public _errorPadding = '0px'\n\n /** @ignore */\n @HostBinding('style.display') get _displayStyle() { return this.inline ? 'inline-block' : 'block' }\n\n /**\n * Used to declare an inline element.\n *\n * NOTE: Not well tested or supported, so it may have some issues currently\n * and could change.\n */\n @Input() @InputBoolean() inline = false\n\n /** Add a text label for the form control. */\n @Input() label: string | undefined | null\n\n /**\n * The label can be on top or inline.\n *\n * > Only supports `ltr` direction, so inline will only place the label on the\n * > left.\n */\n @Input() labelPosition: 'top' | 'inline' = 'top'\n\n /**\n * CSS class to add to the label element.\n *\n * Accepts a single space separated string of classes, like the html class\n * attribute.\n */\n @Input() labelClass: string | undefined | null\n\n /** Max errors to display. */\n @Input() maxErrors = -1\n\n /**\n * A padding error is an always allocated space equivalent to a single line\n * error string.\n */\n @Input() numPaddingErrors = 1\n\n /**\n * `id` attribute to add to the label element. This should not be needed in\n * most situations, because a unique id will be generated if not provided.\n */\n @Input()\n get labelId(): string | undefined | null { return this._labelId }\n set labelId(value: string | undefined | null) { this._labelId = value || this._labelUid }\n /** @ignore */\n protected _labelId: string | undefined | null\n\n /**\n * Help text added below the control.\n */\n @Input()\n get helpText(): string | undefined | null { return this._helpTextStrSubject.value }\n set helpText(value: string | undefined | null) {\n this._helpTextStrSubject.next(value || undefined)\n }\n\n /**\n * `id` attribute to add to the label element. This should not be needed in\n * most situations, because a unique id will be generated if not provided.\n */\n @Input()\n get helpTextId(): string | undefined | null { return this._helpTextId }\n set helpTextId(value: string | undefined | null) { this._helpTextId = value || this._helpTextUid }\n /** @ignore */\n protected _helpTextId: string | undefined | null\n\n /** @ignore */\n @ContentChild(FormFieldHelpTextDirective, { static: true })\n get helpTextTpl(): FormFieldLabelTplDirective | undefined { return this._helpTextTplSubject.value }\n set helpTextTpl(value: FormFieldLabelTplDirective | undefined) {\n this._helpTextTplSubject.next(value || undefined)\n }\n\n /** @ignore */\n @ContentChild(FormFieldLabelTplDirective, { static: true }) labelTpl?: FormFieldLabelTplDirective\n\n /** @ignore */\n @ContentChild(InputDirective, { static: true })\n get contentInput(): InputDirective | undefined { return this._contentInputSubject.value }\n set contentInput(value: InputDirective | undefined) { this._contentInputSubject.next(value || undefined) }\n\n /** @ignore */\n @ContentChildren(FormFieldErrorDirective)\n get fieldErrors() { return this._fieldErrors }\n set fieldErrors(value: QueryList<FormFieldErrorDirective[]> | undefined | null) {\n this._fieldErrors = value\n\n if (this._sub) { this._sub.unsubscribe() }\n if (this.fieldErrors) {\n this._sub = this.fieldErrors.changes\n .pipe(startWith(this.fieldErrors))\n .pipe(map(v => v.toArray() as FormFieldErrorDirective[]))\n .pipe(tap(v => {\n const records: IErrorRecord[] = []\n for (const item of v) {\n if (item.validatorName) {\n records.push({\n validatorName: item.validatorName,\n error: null,\n template: item.template,\n external: item.external\n })\n }\n }\n this._fieldErrorsSubject2.next(records)\n }))\n .subscribe(v => this._fieldErrorsSubject.next(v))\n }\n }\n /** @ignore */\n private _fieldErrors: QueryList<FormFieldErrorDirective[]> | undefined | null\n /** @ignore */\n private _sub?: Subscription\n\n /** @ignore */\n private readonly _fieldErrorsSubject = new ReplaySubject<FormFieldErrorDirective[]>(1)\n /** @ignore */\n public readonly fieldErrors$: Observable<FormFieldErrorDirective[]> = this._fieldErrorsSubject.asObservable()\n\n /** @ignore */\n private readonly _fieldErrorsSubject2 = new ReplaySubject<IErrorRecord[]>(1)\n /** @ignore */\n public readonly fieldErrors2$: Observable<IErrorRecord[]> = this._fieldErrorsSubject2.asObservable()\n\n get isPasswordInput() {\n return this.contentInput && this.contentInput.type && this.contentInput.type === 'password'\n }\n get passwordInputElement() {\n return this.contentInput && this.contentInput._elementRef && this.contentInput._elementRef.nativeElement\n }\n\n get hasHelpText() { return !!this._helpTextStrSubject.value || !!this._helpTextTplSubject.value }\n // get hasHelpText() { return !!this.helpText || !!this._helpTextTpl }\n\n private _helpTextSub = Subscription.EMPTY\n\n /** @ignore */\n constructor(\n private readonly _elementRef: ElementRef\n ) { }\n\n /** @ignore */\n ngOnInit() {\n this._helpTextSub = this._contentInputSubject.pipe(\n filter(contentInput => !!contentInput),\n switchMap(contentInput => combineLatest([\n this._helpTextStrSubject,\n this._helpTextTplSubject\n ]).pipe(\n map(() => this.hasHelpText),\n distinctUntilChanged(),\n tap(() => {\n if (contentInput) {\n contentInput.ariaDescribedBy = this._helpTextId || undefined\n }\n })\n ))\n ).subscribe()\n }\n\n /** @ignore */\n ngOnDestroy() {\n this._sub?.unsubscribe()\n this._helpTextSub?.unsubscribe()\n }\n\n /** @ignore */\n public isValidatorMatch(validatorName: string, tplValidatorName: string, errors: any): boolean {\n const tplValidatorNames = tplValidatorName.split(' ')\n\n for (let i = 0; i < tplValidatorNames.length; i++) {\n const name = tplValidatorNames[i]\n if (name === validatorName && i === 0) {\n return true\n }\n }\n\n return false\n }\n\n /** @ignore */\n public _labelElemResized(labelElem: HTMLLabelElement) {\n if (labelElem) {\n this._errorPadding = `${labelElem.getBoundingClientRect().width}px`\n } else {\n this._errorPadding = '0px'\n }\n }\n\n public getElement(): HTMLElement {\n return this._elementRef.nativeElement\n }\n\n}\n","<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label *ngIf=\"label || labelTpl\"\n #labelElem\n [attr.id]=\"labelId\"\n [attr.for]=\"contentInput?.id\"\n class=\"control-label {{ labelClass }}\"\n (seamElemResized)=\"_labelElemResized(labelElem)\">\n <ng-container *ngIf=\"labelTpl; else noLabelTpl\">\n <ng-template [ngTemplateOutlet]=\"labelTpl.template\" [ngTemplateOutletContext]=\"{ $implicit: label, label: label, required: contentInput?.required || false }\"></ng-template>\n </ng-container>\n <ng-template #noLabelTpl>\n {{ label }}<seam-form-field-required-indicator class=\"pl-1\"></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 [inputRef]=\"$any(passwordInputElement)\"></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 *ngIf=\"fieldErrors$ | async as fieldErrors\"\n [style.paddingLeft]=\"(label || labelTpl) && inline ? _errorPadding : undefined\"\n [control]=\"contentInput.ngControl\"\n [errors]=\"fieldErrors2$ | async\"\n [maxErrors]=\"maxErrors\"\n [numPaddingErrors]=\"numPaddingErrors\"\n class=\"invalid-feedback\">\n </seam-form-field-error-list>\n </ng-container>\n</div>\n\n<ng-template #content><ng-content></ng-content></ng-template>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { ReactiveFormsModule } from '@angular/forms'\n\nimport { TheSeamFormFieldErrorModule } from '@theseam/ui-common/form-field-error'\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\n\nimport { FormFieldErrorDirective } from './form-field-error.directive'\nimport { FormFieldHelpTextDirective } from './form-field-help-text.directive'\nimport { FormFieldLabelTplDirective } from './form-field-label-tpl.directive'\nimport { FormFieldRequiredIndicatorComponent } from './form-field-required-indicator.component'\nimport { TheSeamFormFieldComponent } from './form-field.component'\nimport { InputDirective } from './input.directive'\n\n@NgModule({\n declarations: [\n TheSeamFormFieldComponent,\n InputDirective,\n FormFieldErrorDirective,\n FormFieldLabelTplDirective,\n FormFieldRequiredIndicatorComponent,\n FormFieldHelpTextDirective\n ],\n imports: [\n CommonModule,\n ReactiveFormsModule,\n TheSeamFormFieldErrorModule,\n TheSeamSharedModule\n ],\n exports: [\n TheSeamFormFieldComponent,\n InputDirective,\n FormFieldErrorDirective,\n FormFieldLabelTplDirective,\n FormFieldRequiredIndicatorComponent,\n FormFieldHelpTextDirective\n ]\n})\nexport class TheSeamFormFieldModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i4.FormFieldRequiredIndicatorComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-form-field.mjs","sources":["../../../projects/ui-common/form-field/testing/form-field-required-indicator.harness.ts","../../../projects/ui-common/form-field/testing/form-field.harness.ts","../../../projects/ui-common/form-field/form-field-error.directive.ts","../../../projects/ui-common/form-field/form-field-help-text.directive.ts","../../../projects/ui-common/form-field/form-field-label-tpl.directive.ts","../../../projects/ui-common/form-field/form-field-tokens.ts","../../../projects/ui-common/form-field/form-field-required-indicator.component.ts","../../../projects/ui-common/form-field/input.directive.ts","../../../projects/ui-common/form-field/form-field.component.ts","../../../projects/ui-common/form-field/form-field.component.html","../../../projects/ui-common/form-field/form-field.module.ts","../../../projects/ui-common/form-field/theseam-ui-common-form-field.ts"],"sourcesContent":["import { ComponentHarness } from '@angular/cdk/testing'\n\nexport class TheSeamFormFieldRequiredIndicatorHarness extends ComponentHarness {\n static hostSelector = 'seam-form-field-required-indicator'\n\n public async isIndicatorVisible() {\n return (await (await this.host()).text()) === '*'\n }\n}\n","import { BaseHarnessFilters, ComponentHarness, HarnessPredicate } from '@angular/cdk/testing'\n\ninterface TheSeamFormFieldHarnessFilters extends BaseHarnessFilters {\n /** Filters based on the name of the field. */\n // name?: string | RegExp\n\n label?: string\n}\n\nexport class TheSeamFormFieldHarness extends ComponentHarness {\n static hostSelector = 'seam-form-field'\n\n private readonly _label = this.locatorFor('label')\n // private readonly _input = this.locatorFor('input')\n\n /** Creates a `HarnessPredicate` used to locate a particular `TheSeamFormFieldHarness`. */\n static with(options: TheSeamFormFieldHarnessFilters): HarnessPredicate<TheSeamFormFieldHarness> {\n return new HarnessPredicate(TheSeamFormFieldHarness, options)\n // .addOption('field name', options.name,\n // (harness, name) => HarnessPredicate.stringMatches(harness.getName(), name))\n .addOption('label', options.label,\n (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label))\n }\n\n public async getLabel(): Promise<string | null> {\n return (await this._label()).text()\n }\n\n public async clickLabel(): Promise<void> {\n await (await this._label()).click()\n }\n\n // public async getName(): Promise<string | null> {\n // return (await this._input()).getAttribute('name')\n // }\n\n // public async getValue(): Promise<any> {\n // return (await this._input()).getProperty('value')\n // }\n\n // public async isDisabled(): Promise<boolean> {\n // return (await this._input()).getProperty('disabled')\n // }\n\n // public async isRequired(): Promise<boolean> {\n // return (await this._input()).getProperty('required')\n // }\n\n // public async click(): Promise<void> {\n // return (await this._input()).click()\n // }\n\n // public async setValue(value: any): Promise<void> {\n // // TODO: Find out why setInputValue() doesn't update the FormControl.\n // // return (await this._input()).setInputValue(value)\n // await (await this._input()).click()\n // await this._input().then(x => x.setInputValue(''))\n // return (await this._input()).sendKeys(value)\n // }\n}\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport { Directive, Input, TemplateRef } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\n@Directive({\n selector: '[seamFormFieldError]'\n})\nexport class FormFieldErrorDirective {\n static ngAcceptInputType_external: BooleanInput\n\n @Input()\n get validatorName(): string | undefined | null { return this._validatorName || this.seamFormFieldError }\n set validatorName(value: string | undefined | null) { this._validatorName = value }\n private _validatorName: string | undefined | null\n\n @Input() seamFormFieldError: string | undefined | null\n\n @Input() @InputBoolean() external = false\n\n constructor(public template: TemplateRef<any>) {}\n\n}\n","import { Directive, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamFormFieldHelpText]'\n})\nexport class FormFieldHelpTextDirective {\n\n constructor(public template: TemplateRef<any>) { }\n\n}\n","import { Directive, TemplateRef } from '@angular/core'\n\n@Directive({\n selector: '[seamFormFieldLabelTpl]'\n})\nexport class FormFieldLabelTplDirective {\n\n constructor(public template: TemplateRef<any>) { }\n\n}\n","import { InjectionToken } from '@angular/core'\n\nexport const FORM_FIELD_COMPONENT = new InjectionToken<any>('FORM_FIELD_COMPONENT')\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport { ChangeDetectionStrategy, Component, Inject, Input, OnChanges, Optional, SimpleChanges } from '@angular/core'\nimport { Observable, shareReplay, startWith, Subject, switchMap } from 'rxjs'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\nimport { FORM_FIELD_COMPONENT } from './form-field-tokens'\n\n@Component({\n selector: 'seam-form-field-required-indicator',\n template: `\n <ng-container *ngIf=\"_controlRequired$; else noControl\">\n <ng-container *ngIf=\"_controlRequired$ | async\">*</ng-container>\n </ng-container>\n <ng-template #noControl>\n <ng-container *ngIf=\"required\">*</ng-container>\n </ng-template>\n `,\n styles: [],\n host: {\n 'class': 'text-danger'\n },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FormFieldRequiredIndicatorComponent implements OnChanges {\n static ngAcceptInputType_required: BooleanInput\n\n private readonly _requiredChange = new Subject<boolean>()\n\n /** Used if a form control is not found. */\n @Input() @InputBoolean() required = false\n\n readonly _controlRequired$: Observable<boolean> | undefined\n\n constructor(\n @Optional() @Inject(FORM_FIELD_COMPONENT) public readonly _formField: any\n ) {\n if (_formField) {\n this._controlRequired$ = _formField._contentInputSubject.pipe(\n switchMap((contentInput: any) => {\n if (!contentInput) {\n return this._requiredChange.pipe(\n startWith(this.required),\n )\n }\n\n return contentInput.requiredChange.pipe(\n startWith(contentInput.required),\n )\n }),\n shareReplay({ bufferSize: 1, refCount: true }),\n )\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.required) {\n this._requiredChange.next(this.required)\n }\n }\n\n}\n","import { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { Directive, DoCheck, ElementRef, HostBinding, Input, OnChanges, Optional, Self, SimpleChanges } from '@angular/core'\nimport { FormGroupDirective, NgControl, NgForm } from '@angular/forms'\nimport { Subject } from 'rxjs'\n\nimport { NgSelectComponent } from '@ng-select/ng-select'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { toggleAttribute } from '@theseam/ui-common/utils'\n\n// NOTE: Partially based on mat-input: https://github.com/angular/material2/blob/master/src/lib/input/input.ts\n\nlet nextUniqueId = 0\n\n@Directive({\n // TODO: Consider removing restriction and instead adding a dev warning. A few\n // inputs in the app need to be changed for this first.\n selector: 'input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]',\n exportAs: 'seamInput',\n})\nexport class InputDirective implements DoCheck, OnChanges {\n static ngAcceptInputType_required: BooleanInput\n static ngAcceptInputType_disabled: BooleanInput\n static ngAcceptInputType_readonly: BooleanInput\n\n protected _uid = `lib-input-${nextUniqueId++}`\n\n // TODO: Remove this being added to all seamInput elements or break this\n // directive up. Some elements in our app already have worked around this\n // class being there, so some refactoring will be required before removal.\n @HostBinding('class.form-control') _isFormControl = true\n @HostBinding('class.form-control-sm') get _isFormControlSmall() {\n return this._isFormControl && this.seamInputSize === 'sm'\n }\n @HostBinding('class.is-invalid') get _isInvalid() {\n return this.ngControl && this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched)\n }\n\n @HostBinding('attr.id') get _attrId() { return this._isNgSelect() ? undefined : this.id }\n @HostBinding('attr.placeholder') get _attrPlaceholder() { return this.placeholder }\n @HostBinding('attr.aria-describedby') ariaDescribedBy: string | undefined\n\n @Input() seamInputSize: 'sm' | 'normal' = 'normal'\n\n @Input()\n get id(): string | undefined | null { return this._id }\n set id(value: string | undefined | null) { this._id = value || this._uid }\n protected _id: string | undefined | null\n\n /** Input type of the element. */\n @Input()\n get type(): string | undefined | null { return this._type }\n set type(value: string | undefined | null) {\n this._type = value || 'text'\n // this._validateType()\n\n // When using Angular inputs, developers are no longer able to set the properties on the native\n // input element. To ensure that bindings for `type` work, we need to sync the setter\n // with the native property. Textarea elements don't support the type property or attribute.\n if ((!this._isTextarea() && !this._isNgSelect()) /* && getSupportedInputTypes().has(this._type) */) {\n (this._elementRef.nativeElement as HTMLInputElement).type = this._type\n }\n }\n protected _type: string | undefined | null = 'text'\n\n @Input() placeholder: string | undefined | null\n\n @Input() @InputBoolean() required = false\n\n @Input()\n get disabled(): boolean {\n if (this.ngControl && this.ngControl.disabled !== null) {\n return this.ngControl.disabled\n }\n return this._disabled\n }\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value)\n\n // Browsers may not fire the blur event if the input is disabled too quickly.\n // Reset from here to ensure that the element doesn't become stuck.\n if (this.focused) {\n this.focused = false\n this.stateChanges.next()\n }\n }\n protected _disabled = false\n\n focused = false\n\n readonly stateChanges: Subject<void> = new Subject<void>()\n\n // @Input()\n // get value(): string { return this._inputValueAccessor.value; }\n // set value(value: string) {\n // if (value !== this.value) {\n // this._inputValueAccessor.value = value;\n // this.stateChanges.next();\n // }\n // }\n\n /** Whether the element is readonly. */\n @Input() @InputBoolean() readonly = false\n\n private readonly _requiredChange = new Subject<boolean>()\n private readonly _disabledChange = new Subject<boolean>()\n private readonly _readonlyChange = new Subject<boolean>()\n\n public readonly requiredChange = this._requiredChange.asObservable()\n public readonly disabledChange = this._disabledChange.asObservable()\n public readonly readonlyChange = this._readonlyChange.asObservable\n\n constructor(\n public _elementRef: ElementRef<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>,\n @Optional() @Self() public ngControl: NgControl,\n @Optional() private _parentForm: NgForm,\n @Optional() private _parentFormGroup: FormGroupDirective,\n // 3rd party support\n @Optional() private _ngSelect: NgSelectComponent\n ) {\n // Force setter to be called in case id was not specified.\n // eslint-disable-next-line no-self-assign\n this.id = this.id\n\n if (!this._shouldHaveFormControlCssClass()) {\n this._isFormControl = false\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.required) {\n this._requiredChange.next(this.required)\n }\n if (changes.disabled) {\n this._disabledChange.next(this.disabled)\n }\n if (changes.readonly) {\n this._readonlyChange.next(this.readonly)\n }\n }\n\n ngDoCheck() {\n if (this._isNgSelect()) {\n this._ngSelect.labelForId = this.id\n this._ngSelect.setDisabledState(this.disabled)\n } else {\n toggleAttribute(this._elementRef.nativeElement, 'required', this.required)\n toggleAttribute(this._elementRef.nativeElement, 'disabled', this.disabled)\n }\n }\n\n /** Should only be textual inputs, but initially our app added to all form controls. */\n protected _shouldHaveFormControlCssClass() {\n return !this._isSeamCheckbox() &&\n !this._isRadioInput() &&\n !this._isNgbRadioGroup() &&\n !this._isTelInput() &&\n !this._isQuillEditor()\n }\n\n /** Determines if the component host is a textarea. */\n protected _isTextarea() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'textarea'\n }\n\n /** Determines if the component host is a ng-select. */\n protected _isNgSelect() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'ng-select'\n }\n\n /** Determines if the component host is a seam-checkbox. */\n protected _isSeamCheckbox() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-checkbox'\n }\n\n /** Determines if the component host is a radio input. */\n protected _isRadioInput() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'input' &&\n this._elementRef.nativeElement.type.toLowerCase() === 'radio'\n }\n\n protected _isNgbRadioGroup() {\n return this._elementRef.nativeElement.getAttribute('ngbRadioGroup') !== null\n }\n\n protected _isTelInput() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'seam-tel-input'\n }\n\n protected _isQuillEditor() {\n return this._elementRef.nativeElement.nodeName.toLowerCase() === 'quill-editor'\n }\n\n /** Focuses the input. */\n focus(): void {\n this._elementRef.nativeElement.focus()\n }\n\n /** Unfocuses the input. */\n blur(): void {\n this._elementRef.nativeElement.blur()\n }\n\n setValue(value: any) {\n if (this.ngControl) {\n const control = this.ngControl.control\n if (control) {\n control.setValue(value)\n }\n }\n }\n\n}\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport {\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n forwardRef,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n QueryList\n} from '@angular/core'\nimport { BehaviorSubject, combineLatest, Observable, ReplaySubject, Subscription } from 'rxjs'\nimport { distinctUntilChanged, filter, map, startWith, switchMap, tap } from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { IErrorRecord } from '@theseam/ui-common/form-field-error'\n\nimport { FormFieldErrorDirective } from './form-field-error.directive'\nimport { FormFieldHelpTextDirective } from './form-field-help-text.directive'\nimport { FormFieldLabelTplDirective } from './form-field-label-tpl.directive'\nimport { FORM_FIELD_COMPONENT } from './form-field-tokens'\nimport { InputDirective } from './input.directive'\n\nlet nextLabelUniqueId = 0\n\n/**\n * Should wrap all form controls.\n */\n@Component({\n selector: 'seam-form-field',\n templateUrl: './form-field.component.html',\n styleUrls: ['./form-field.component.scss'],\n providers: [\n {\n provide: FORM_FIELD_COMPONENT,\n useExisting: TheSeamFormFieldComponent,\n }\n ],\n})\nexport class TheSeamFormFieldComponent implements OnInit, OnDestroy {\n static ngAcceptInputType_inline: BooleanInput\n\n private readonly _helpTextStrSubject = new BehaviorSubject<string | undefined>(undefined)\n private readonly _helpTextTplSubject = new BehaviorSubject<FormFieldHelpTextDirective | undefined>(undefined)\n private readonly _contentInputSubject = new BehaviorSubject<InputDirective | undefined>(undefined)\n\n /** @ignore */\n protected _labelUid = `seam-label-${nextLabelUniqueId++}`\n\n /** @ignore */\n protected _helpTextUid = `seam-help-text-${nextLabelUniqueId++}`\n\n /** @ignore */\n public _errorPadding = '0px'\n\n /** @ignore */\n @HostBinding('style.display') get _displayStyle() { return this.inline ? 'inline-block' : 'block' }\n\n /**\n * Used to declare an inline element.\n *\n * NOTE: Not well tested or supported, so it may have some issues currently\n * and could change.\n */\n @Input() @InputBoolean() inline = false\n\n /** Add a text label for the form control. */\n @Input() label: string | undefined | null\n\n /**\n * The label can be on top or inline.\n *\n * > Only supports `ltr` direction, so inline will only place the label on the\n * > left.\n */\n @Input() labelPosition: 'top' | 'inline' = 'top'\n\n /**\n * CSS class to add to the label element.\n *\n * Accepts a single space separated string of classes, like the html class\n * attribute.\n */\n @Input() labelClass: string | undefined | null\n\n /** Max errors to display. */\n @Input() maxErrors = -1\n\n /**\n * A padding error is an always allocated space equivalent to a single line\n * error string.\n */\n @Input() numPaddingErrors = 1\n\n /**\n * `id` attribute to add to the label element. This should not be needed in\n * most situations, because a unique id will be generated if not provided.\n */\n @Input()\n get labelId(): string | undefined | null { return this._labelId }\n set labelId(value: string | undefined | null) { this._labelId = value || this._labelUid }\n /** @ignore */\n protected _labelId: string | undefined | null\n\n /**\n * Help text added below the control.\n */\n @Input()\n get helpText(): string | undefined | null { return this._helpTextStrSubject.value }\n set helpText(value: string | undefined | null) {\n this._helpTextStrSubject.next(value || undefined)\n }\n\n /**\n * `id` attribute to add to the label element. This should not be needed in\n * most situations, because a unique id will be generated if not provided.\n */\n @Input()\n get helpTextId(): string | undefined | null { return this._helpTextId }\n set helpTextId(value: string | undefined | null) { this._helpTextId = value || this._helpTextUid }\n /** @ignore */\n protected _helpTextId: string | undefined | null\n\n /** @ignore */\n @ContentChild(FormFieldHelpTextDirective, { static: true })\n get helpTextTpl(): FormFieldLabelTplDirective | undefined { return this._helpTextTplSubject.value }\n set helpTextTpl(value: FormFieldLabelTplDirective | undefined) {\n this._helpTextTplSubject.next(value || undefined)\n }\n\n /** @ignore */\n @ContentChild(FormFieldLabelTplDirective, { static: true }) labelTpl?: FormFieldLabelTplDirective\n\n /** @ignore */\n @ContentChild(InputDirective, { static: true })\n get contentInput(): InputDirective | undefined { return this._contentInputSubject.value }\n set contentInput(value: InputDirective | undefined) { this._contentInputSubject.next(value || undefined) }\n\n /** @ignore */\n @ContentChildren(FormFieldErrorDirective)\n get fieldErrors() { return this._fieldErrors }\n set fieldErrors(value: QueryList<FormFieldErrorDirective[]> | undefined | null) {\n this._fieldErrors = value\n\n if (this._sub) { this._sub.unsubscribe() }\n if (this.fieldErrors) {\n this._sub = this.fieldErrors.changes\n .pipe(startWith(this.fieldErrors))\n .pipe(map(v => v.toArray() as FormFieldErrorDirective[]))\n .pipe(tap(v => {\n const records: IErrorRecord[] = []\n for (const item of v) {\n if (item.validatorName) {\n records.push({\n validatorName: item.validatorName,\n error: null,\n template: item.template,\n external: item.external\n })\n }\n }\n this._fieldErrorsSubject2.next(records)\n }))\n .subscribe(v => this._fieldErrorsSubject.next(v))\n }\n }\n /** @ignore */\n private _fieldErrors: QueryList<FormFieldErrorDirective[]> | undefined | null\n /** @ignore */\n private _sub?: Subscription\n\n /** @ignore */\n private readonly _fieldErrorsSubject = new ReplaySubject<FormFieldErrorDirective[]>(1)\n /** @ignore */\n public readonly fieldErrors$: Observable<FormFieldErrorDirective[]> = this._fieldErrorsSubject.asObservable()\n\n /** @ignore */\n private readonly _fieldErrorsSubject2 = new ReplaySubject<IErrorRecord[]>(1)\n /** @ignore */\n public readonly fieldErrors2$: Observable<IErrorRecord[]> = this._fieldErrorsSubject2.asObservable()\n\n get isPasswordInput() {\n return this.contentInput && this.contentInput.type && this.contentInput.type === 'password'\n }\n get passwordInputElement() {\n return this.contentInput && this.contentInput._elementRef && this.contentInput._elementRef.nativeElement\n }\n\n get hasHelpText() { return !!this._helpTextStrSubject.value || !!this._helpTextTplSubject.value }\n // get hasHelpText() { return !!this.helpText || !!this._helpTextTpl }\n\n private _helpTextSub = Subscription.EMPTY\n\n /** @ignore */\n constructor(\n private readonly _elementRef: ElementRef\n ) { }\n\n /** @ignore */\n ngOnInit() {\n this._helpTextSub = this._contentInputSubject.pipe(\n filter(contentInput => !!contentInput),\n switchMap(contentInput => combineLatest([\n this._helpTextStrSubject,\n this._helpTextTplSubject\n ]).pipe(\n map(() => this.hasHelpText),\n distinctUntilChanged(),\n tap(() => {\n if (contentInput) {\n contentInput.ariaDescribedBy = this._helpTextId || undefined\n }\n })\n ))\n ).subscribe()\n }\n\n /** @ignore */\n ngOnDestroy() {\n this._sub?.unsubscribe()\n this._helpTextSub?.unsubscribe()\n }\n\n /** @ignore */\n public isValidatorMatch(validatorName: string, tplValidatorName: string, errors: any): boolean {\n const tplValidatorNames = tplValidatorName.split(' ')\n\n for (let i = 0; i < tplValidatorNames.length; i++) {\n const name = tplValidatorNames[i]\n if (name === validatorName && i === 0) {\n return true\n }\n }\n\n return false\n }\n\n /** @ignore */\n public _labelElemResized(labelElem: HTMLLabelElement) {\n if (labelElem) {\n this._errorPadding = `${labelElem.getBoundingClientRect().width}px`\n } else {\n this._errorPadding = '0px'\n }\n }\n\n public getElement(): HTMLElement {\n return this._elementRef.nativeElement\n }\n\n}\n","<div>\n <div [class.seam-form-field-inline]=\"inline\">\n <label *ngIf=\"label || labelTpl\"\n #labelElem\n [attr.id]=\"labelId\"\n [attr.for]=\"contentInput?.id\"\n class=\"control-label {{ labelClass }}\"\n (seamElemResized)=\"_labelElemResized(labelElem)\">\n <ng-container *ngIf=\"labelTpl; else noLabelTpl\">\n <ng-template [ngTemplateOutlet]=\"labelTpl.template\" [ngTemplateOutletContext]=\"{ $implicit: label, label: label, required: contentInput?.required || false }\"></ng-template>\n </ng-container>\n <ng-template #noLabelTpl>\n {{ label }}<seam-form-field-required-indicator class=\"pl-1\"></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 [inputRef]=\"$any(passwordInputElement)\"></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 *ngIf=\"fieldErrors$ | async as fieldErrors\"\n [style.paddingLeft]=\"(label || labelTpl) && inline ? _errorPadding : undefined\"\n [control]=\"contentInput.ngControl\"\n [errors]=\"fieldErrors2$ | async\"\n [maxErrors]=\"maxErrors\"\n [numPaddingErrors]=\"numPaddingErrors\"\n class=\"invalid-feedback\">\n </seam-form-field-error-list>\n </ng-container>\n</div>\n\n<ng-template #content><ng-content></ng-content></ng-template>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { ReactiveFormsModule } from '@angular/forms'\n\nimport { TheSeamFormFieldErrorModule } from '@theseam/ui-common/form-field-error'\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\n\nimport { FormFieldErrorDirective } from './form-field-error.directive'\nimport { FormFieldHelpTextDirective } from './form-field-help-text.directive'\nimport { FormFieldLabelTplDirective } from './form-field-label-tpl.directive'\nimport { FormFieldRequiredIndicatorComponent } from './form-field-required-indicator.component'\nimport { TheSeamFormFieldComponent } from './form-field.component'\nimport { InputDirective } from './input.directive'\n\n@NgModule({\n declarations: [\n TheSeamFormFieldComponent,\n InputDirective,\n FormFieldErrorDirective,\n FormFieldLabelTplDirective,\n FormFieldRequiredIndicatorComponent,\n FormFieldHelpTextDirective\n ],\n imports: [\n CommonModule,\n ReactiveFormsModule,\n TheSeamFormFieldErrorModule,\n TheSeamSharedModule\n ],\n exports: [\n TheSeamFormFieldComponent,\n InputDirective,\n FormFieldErrorDirective,\n FormFieldLabelTplDirective,\n FormFieldRequiredIndicatorComponent,\n FormFieldHelpTextDirective\n ]\n})\nexport class TheSeamFormFieldModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","startWith","switchMap","i2","i4.FormFieldRequiredIndicatorComponent"],"mappings":"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"}
|
|
@@ -1854,13 +1854,13 @@ class TheSeamGoogleMapsPlacesAutoCompleteComponent {
|
|
|
1854
1854
|
}
|
|
1855
1855
|
}
|
|
1856
1856
|
TheSeamGoogleMapsPlacesAutoCompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamGoogleMapsPlacesAutoCompleteComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1857
|
-
TheSeamGoogleMapsPlacesAutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamGoogleMapsPlacesAutoCompleteComponent, selector: "seam-google-maps-places-autocomplete", inputs: { label: "label", icon: "icon", disabled: "disabled", placeholder: "placeholder", autocorrect: "autocorrect", autocapitalize: "autocapitalize", tabIndex: "tabIndex", options: "options" }, outputs: { placeChanged: "placeChanged" }, host: { listeners: { "click": "_onClick(event)", "focus": "_onFocus($event)" }, properties: { "attr.tabindex": "this._attrTabIndex" } }, viewQueries: [{ propertyName: "_inputDirective", first: true, predicate: ["inp"], descendants: true, read: InputDirective, static: true }, { propertyName: "__autocompleteDirective", first: true, predicate: TheSeamGoogleMapsPlacesAutocompleteDirective, descendants: true, static: true }], exportAs: ["seamGoogleMapsPlacesAutoComplete"], ngImport: i0, template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\n</div>\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\n<input #inp=\"seamInput\"\n seamInput\n seamGoogleMapsPlacesAutocomplete\n [disabled]=\"disabled\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocorrect]=\"autocorrect\"\n [attr.autocapitalize]=\"autocapitalize\"\n [options]=\"_options\"\n/>\n", styles: [":host{position:relative;width:100%}:host>input{padding-left:40px}:host .search-container--icon-wrapper{position:absolute;top:6px;left:10px;bottom:0}:host .search-container--icon-wrapper ::ng-deep .svg-inline--fa{vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "seam-icon", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "defaultIcon", "iconType"] }, { kind: "directive", type: i3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: TheSeamGoogleMapsPlacesAutocompleteDirective, selector: "input[seamGoogleMapsPlacesAutocomplete]", inputs: ["options"], outputs: ["placeChanged"], exportAs: ["seamGoogleMapsPlacesAutocomplete"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1857
|
+
TheSeamGoogleMapsPlacesAutoCompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamGoogleMapsPlacesAutoCompleteComponent, selector: "seam-google-maps-places-autocomplete", inputs: { label: "label", icon: "icon", disabled: "disabled", placeholder: "placeholder", autocorrect: "autocorrect", autocapitalize: "autocapitalize", tabIndex: "tabIndex", options: "options" }, outputs: { placeChanged: "placeChanged" }, host: { listeners: { "click": "_onClick(event)", "focus": "_onFocus($event)" }, properties: { "attr.tabindex": "this._attrTabIndex" } }, viewQueries: [{ propertyName: "_inputDirective", first: true, predicate: ["inp"], descendants: true, read: InputDirective, static: true }, { propertyName: "__autocompleteDirective", first: true, predicate: TheSeamGoogleMapsPlacesAutocompleteDirective, descendants: true, static: true }], exportAs: ["seamGoogleMapsPlacesAutoComplete"], ngImport: i0, template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\r\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\r\n</div>\r\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\r\n<input #inp=\"seamInput\"\r\n seamInput\r\n seamGoogleMapsPlacesAutocomplete\r\n [disabled]=\"disabled\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.autocorrect]=\"autocorrect\"\r\n [attr.autocapitalize]=\"autocapitalize\"\r\n [options]=\"_options\"\r\n/>\r\n", styles: [":host{position:relative;width:100%}:host>input{padding-left:40px}:host .search-container--icon-wrapper{position:absolute;top:6px;left:10px;bottom:0}:host .search-container--icon-wrapper ::ng-deep .svg-inline--fa{vertical-align:middle}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "seam-icon", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "defaultIcon", "iconType"] }, { kind: "directive", type: i3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: TheSeamGoogleMapsPlacesAutocompleteDirective, selector: "input[seamGoogleMapsPlacesAutocomplete]", inputs: ["options"], outputs: ["placeChanged"], exportAs: ["seamGoogleMapsPlacesAutocomplete"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1858
1858
|
__decorate([
|
|
1859
1859
|
InputBoolean()
|
|
1860
1860
|
], TheSeamGoogleMapsPlacesAutoCompleteComponent.prototype, "disabled", void 0);
|
|
1861
1861
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamGoogleMapsPlacesAutoCompleteComponent, decorators: [{
|
|
1862
1862
|
type: Component,
|
|
1863
|
-
args: [{ selector: 'seam-google-maps-places-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'seamGoogleMapsPlacesAutoComplete', template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\n</div>\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\n<input #inp=\"seamInput\"\n seamInput\n seamGoogleMapsPlacesAutocomplete\n [disabled]=\"disabled\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocorrect]=\"autocorrect\"\n [attr.autocapitalize]=\"autocapitalize\"\n [options]=\"_options\"\n/>\n", styles: [":host{position:relative;width:100%}:host>input{padding-left:40px}:host .search-container--icon-wrapper{position:absolute;top:6px;left:10px;bottom:0}:host .search-container--icon-wrapper ::ng-deep .svg-inline--fa{vertical-align:middle}\n"] }]
|
|
1863
|
+
args: [{ selector: 'seam-google-maps-places-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'seamGoogleMapsPlacesAutoComplete', template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\r\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\r\n</div>\r\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\r\n<input #inp=\"seamInput\"\r\n seamInput\r\n seamGoogleMapsPlacesAutocomplete\r\n [disabled]=\"disabled\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.autocorrect]=\"autocorrect\"\r\n [attr.autocapitalize]=\"autocapitalize\"\r\n [options]=\"_options\"\r\n/>\r\n", styles: [":host{position:relative;width:100%}:host>input{padding-left:40px}:host .search-container--icon-wrapper{position:absolute;top:6px;left:10px;bottom:0}:host .search-container--icon-wrapper ::ng-deep .svg-inline--fa{vertical-align:middle}\n"] }]
|
|
1864
1864
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { label: [{
|
|
1865
1865
|
type: Input
|
|
1866
1866
|
}], icon: [{
|