@dereekb/dbx-form 1.2.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/esm2020/lib/form/action/form.action.directive.mjs +34 -19
- package/esm2020/lib/form/action/form.action.module.mjs +4 -4
- package/esm2020/lib/form/action/transition/form.action.transition.module.mjs +4 -4
- package/esm2020/lib/form/action/transition/form.action.transition.safety.directive.mjs +9 -9
- package/esm2020/lib/form/form.mjs +11 -1
- package/esm2020/lib/form/form.module.mjs +4 -4
- package/esm2020/lib/form/io/form.changes.directive.mjs +18 -7
- package/esm2020/lib/form/io/form.input.directive.mjs +36 -18
- package/esm2020/lib/form/io/form.io.module.mjs +4 -4
- package/esm2020/lib/form/io/form.loading.directive.mjs +27 -17
- package/esm2020/lib/form.module.mjs +4 -4
- package/esm2020/lib/formly/config/validation.mjs +3 -3
- package/esm2020/lib/formly/field/checklist/checklist.item.field.component.mjs +8 -8
- package/esm2020/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +3 -3
- package/esm2020/lib/formly/field/checklist/checklist.item.field.module.mjs +13 -13
- package/esm2020/lib/formly/field/component/component.field.component.mjs +8 -21
- package/esm2020/lib/formly/field/component/component.field.mjs +3 -5
- package/esm2020/lib/formly/field/component/component.field.module.mjs +14 -14
- package/esm2020/lib/formly/field/form.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +7 -7
- package/esm2020/lib/formly/field/selection/pickable/pickable.field.directive.mjs +8 -6
- package/esm2020/lib/formly/field/selection/pickable/pickable.field.mjs +2 -2
- package/esm2020/lib/formly/field/selection/pickable/pickable.field.module.mjs +13 -13
- package/esm2020/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +28 -21
- package/esm2020/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +4 -4
- package/esm2020/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +16 -16
- package/esm2020/lib/formly/field/selection/searchable/searchable.field.directive.mjs +7 -8
- package/esm2020/lib/formly/field/selection/searchable/searchable.field.module.mjs +13 -13
- package/esm2020/lib/formly/field/selection/searchable/searchable.mjs +1 -1
- package/esm2020/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +3 -3
- package/esm2020/lib/formly/field/selection/selection.module.mjs +4 -4
- package/esm2020/lib/formly/field/texteditor/texteditor.field.component.mjs +4 -5
- package/esm2020/lib/formly/field/texteditor/texteditor.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/array/array.field.component.mjs +7 -7
- package/esm2020/lib/formly/field/value/array/array.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/date/date.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/date/datetime.field.component.mjs +51 -40
- package/esm2020/lib/formly/field/value/date/datetime.field.mjs +7 -7
- package/esm2020/lib/formly/field/value/enum/enum.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/phone/phone.field.component.mjs +3 -3
- package/esm2020/lib/formly/field/value/phone/phone.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/text/text.additional.field.mjs +15 -18
- package/esm2020/lib/formly/field/value/text/text.address.field.mjs +2 -2
- package/esm2020/lib/formly/field/value/text/text.field.mjs +3 -2
- package/esm2020/lib/formly/field/value/text/text.field.module.mjs +4 -4
- package/esm2020/lib/formly/field/value/value.module.mjs +4 -4
- package/esm2020/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/expandable.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/expandable.wrapper.delegate.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/flex.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/form.wrapper.module.mjs +18 -10
- package/esm2020/lib/formly/field/wrapper/index.mjs +2 -1
- package/esm2020/lib/formly/field/wrapper/info.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/section.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/style.wrapper.component.mjs +4 -4
- package/esm2020/lib/formly/field/wrapper/subsection.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/toggle.wrapper.component.mjs +3 -3
- package/esm2020/lib/formly/field/wrapper/working.wrapper.component.mjs +45 -0
- package/esm2020/lib/formly/field/wrapper/wrapper.mjs +7 -1
- package/esm2020/lib/formly/formly.context.directive.mjs +3 -3
- package/esm2020/lib/formly/formly.context.mjs +19 -8
- package/esm2020/lib/formly/formly.directive.mjs +17 -14
- package/esm2020/lib/formly/formly.form.component.mjs +63 -22
- package/esm2020/lib/formly/formly.module.mjs +9 -6
- package/esm2020/lib/formly/index.mjs +2 -1
- package/esm2020/lib/formly/template/available.mjs +16 -0
- package/esm2020/lib/formly/template/index.mjs +3 -0
- package/esm2020/lib/formly/template/login.mjs +90 -0
- package/esm2020/lib/layout/form.layout.module.mjs +4 -4
- package/esm2020/lib/layout/form.spacer.component.mjs +3 -3
- package/esm2020/lib/validator/available.mjs +32 -0
- package/esm2020/lib/validator/field.mjs +31 -0
- package/esm2020/lib/validator/index.mjs +3 -1
- package/fesm2015/dereekb-dbx-form.mjs +818 -505
- package/fesm2015/dereekb-dbx-form.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-form.mjs +834 -501
- package/fesm2020/dereekb-dbx-form.mjs.map +1 -1
- package/lib/form/action/form.action.directive.d.ts +13 -16
- package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +3 -3
- package/lib/form/form.d.ts +30 -3
- package/lib/form/io/form.changes.directive.d.ts +7 -3
- package/lib/form/io/form.input.directive.d.ts +19 -7
- package/lib/form/io/form.loading.directive.d.ts +8 -2
- package/lib/formly/field/checklist/checklist.item.field.component.d.ts +2 -2
- package/lib/formly/field/checklist/checklist.item.field.module.d.ts +1 -1
- package/lib/formly/field/component/component.field.component.d.ts +8 -21
- package/lib/formly/field/component/component.field.d.ts +3 -5
- package/lib/formly/field/component/component.field.module.d.ts +1 -1
- package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +8 -3
- package/lib/formly/field/selection/pickable/pickable.field.module.d.ts +1 -1
- package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +8 -6
- package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +2 -1
- package/lib/formly/field/selection/searchable/searchable.d.ts +3 -3
- package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +3 -3
- package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +4 -4
- package/lib/formly/field/selection/searchable/searchable.field.module.d.ts +1 -1
- package/lib/formly/field/texteditor/_texteditor.scss +0 -2
- package/lib/formly/field/value/array/array.field.component.d.ts +2 -2
- package/lib/formly/field/value/date/datetime.field.component.d.ts +8 -10
- package/lib/formly/field/value/date/datetime.field.d.ts +2 -2
- package/lib/formly/field/value/phone/_phone.scss +4 -0
- package/lib/formly/field/value/text/text.additional.field.d.ts +1 -1
- package/lib/formly/field/value/text/text.field.d.ts +2 -0
- package/lib/formly/field/wrapper/form.wrapper.module.d.ts +9 -8
- package/lib/formly/field/wrapper/index.d.ts +1 -0
- package/lib/formly/field/wrapper/style.wrapper.component.d.ts +3 -3
- package/lib/formly/field/wrapper/working.wrapper.component.d.ts +22 -0
- package/lib/formly/field/wrapper/wrapper.d.ts +3 -0
- package/lib/formly/formly.context.d.ts +9 -6
- package/lib/formly/formly.directive.d.ts +2 -0
- package/lib/formly/formly.form.component.d.ts +13 -3
- package/lib/formly/index.d.ts +1 -0
- package/lib/formly/template/available.d.ts +7 -0
- package/lib/formly/template/index.d.ts +2 -0
- package/lib/formly/template/login.d.ts +59 -0
- package/lib/validator/available.d.ts +30 -0
- package/lib/validator/field.d.ts +32 -0
- package/lib/validator/index.d.ts +2 -0
- package/package.json +17 -44
- package/lib/formly/field/fields_TODO.scss +0 -4
- package/lib/formly/form_TODO.scss +0 -153
|
@@ -3,16 +3,16 @@ import { forwardRef, Directive, Host, Input, NgModule, EventEmitter, Output, Com
|
|
|
3
3
|
import * as i5 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i1$1 from '@dereekb/dbx-web';
|
|
6
|
-
import { DbxActionTransitionSafetyDirective, DbxTextModule, DbxFlexLayoutModule, DbxSectionLayoutModule,
|
|
6
|
+
import { DbxActionTransitionSafetyDirective, DbxTextModule, DbxLoadingModule, DbxFlexLayoutModule, DbxSectionLayoutModule, DbxRouterAnchorModule, AbstractDbxSelectionListWrapperDirective, DEFAULT_LIST_WRAPPER_DIRECTIVE_TEMPLATE, AbstractDbxSelectionListViewDirective, addConfigToValueListItems, ProvideDbxListView, AbstractDbxValueListViewItemComponent, DbxButtonModule, DbxListLayoutModule, mapCompactModeObs, DbxBarLayoutModule } from '@dereekb/dbx-web';
|
|
7
7
|
import { isPast, addSeconds, isSameMinute, startOfDay, isSameDay, addMinutes } from 'date-fns';
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { LockSet, SubscriptionObject, switchMapMaybeObs, filterMaybe, switchMapMaybeDefault, asObservable, beginLoading, mapLoadingStateResults, successResult, ListLoadingStateContextInstance, isListLoadingStateEmpty, LoadingStateContextInstance, skipFirstMaybe, scanCount } from '@dereekb/rxjs';
|
|
8
|
+
import { BehaviorSubject, switchMap, first, exhaustMap, of, catchError, delay, filter, combineLatest, map, distinctUntilChanged, mergeMap, shareReplay as shareReplay$1, startWith, debounceTime, Subject, skipWhile, interval, merge, throttleTime as throttleTime$1, scan } from 'rxjs';
|
|
9
|
+
import { LockSet, SubscriptionObject, asObservable, loadingStateHasFinishedLoading, switchMapMaybeObs, filterMaybe, switchMapMaybeDefault, SimpleLoadingContext, beginLoading, mapLoadingStateResults, successResult, ListLoadingStateContextInstance, isListLoadingStateEmpty, LoadingStateContextInstance, skipFirstMaybe, asyncPusherCache, scanCount } from '@dereekb/rxjs';
|
|
11
10
|
import * as i2 from '@dereekb/dbx-core';
|
|
12
|
-
import { AbstractSubscriptionDirective, safeDetectChanges,
|
|
11
|
+
import { AbstractSubscriptionDirective, safeDetectChanges, DbxInjectionComponentModule, DbxDatePipeModule, mergeDbxInjectionComponentConfigs, tapDetectChanges } from '@dereekb/dbx-core';
|
|
13
12
|
import * as i3 from '@uirouter/core';
|
|
14
13
|
import * as i4 from '@angular/material/dialog';
|
|
15
14
|
import { MatDialogModule } from '@angular/material/dialog';
|
|
15
|
+
import { distinctUntilChanged as distinctUntilChanged$1, shareReplay, map as map$1, delay as delay$1, debounceTime as debounceTime$1, filter as filter$1, switchMap as switchMap$1, startWith as startWith$1, tap, throttleTime, first as first$1 } from 'rxjs/operators';
|
|
16
16
|
import * as i1$4 from '@ngx-formly/core';
|
|
17
17
|
import { FieldType, FieldWrapper, FormlyModule, FieldArrayType } from '@ngx-formly/core';
|
|
18
18
|
import * as i1 from '@angular/material/checkbox';
|
|
@@ -27,7 +27,7 @@ import * as i1$2 from '@angular/material/button';
|
|
|
27
27
|
import { MatButtonModule } from '@angular/material/button';
|
|
28
28
|
import * as i3$1 from '@angular/flex-layout/flex';
|
|
29
29
|
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
30
|
-
import { objectIsEmpty, mergeObjects, filterFromPOJO, addPlusPrefixToNumber, convertMaybeToArray, makeValuesGroupMap, findUnique, mergeIntoArray, lastValue, separateValues, arrayToMap,
|
|
30
|
+
import { objectIsEmpty, mergeObjects, filterFromPOJO, addPlusPrefixToNumber, convertMaybeToArray, makeValuesGroupMap, findUnique, mergeIntoArray, lastValue, separateValues, arrayToMap, getValueFromGetter, dateFromLogicalDate, KeyValueTypleValueFilter, valuesFromPOJO, allObjectsAreEqual, capitalizeFirstLetter, BooleanStringKeyArrayUtilityInstance } from '@dereekb/util';
|
|
31
31
|
import * as i1$3 from '@angular/material/slide-toggle';
|
|
32
32
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
33
33
|
import * as i2$2 from '@angular/flex-layout/extended';
|
|
@@ -38,14 +38,14 @@ import { MatChipsModule } from '@angular/material/chips';
|
|
|
38
38
|
import * as i4$2 from '@angular/material/divider';
|
|
39
39
|
import { MatDividerModule } from '@angular/material/divider';
|
|
40
40
|
import * as i6$1 from '@angular/material/input';
|
|
41
|
-
import { MatInputModule
|
|
41
|
+
import { MatInputModule } from '@angular/material/input';
|
|
42
42
|
import * as i4$3 from '@angular/material/autocomplete';
|
|
43
43
|
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
44
44
|
import { MatListModule } from '@angular/material/list';
|
|
45
45
|
import * as i3$2 from '@angular/material/form-field';
|
|
46
46
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
47
47
|
import { ENTER, COMMA } from '@angular/cdk/keycodes';
|
|
48
|
-
import { skipUntilTimeElapsedAfterLastEmission, guessCurrentTimezone, toReadableTimeString, utcDayForDate, readableTimeStringToDate, DateTimeMinuteInstance } from '@dereekb/date';
|
|
48
|
+
import { skipUntilTimeElapsedAfterLastEmission, guessCurrentTimezone, toReadableTimeString, utcDayForDate, readableTimeStringToDate, DateTimeMinuteInstance, toLocalReadableTimeString } from '@dereekb/date';
|
|
49
49
|
import * as i2$3 from 'ngx-editor';
|
|
50
50
|
import { Editor, NgxEditorModule } from 'ngx-editor';
|
|
51
51
|
import * as i5$1 from '@angular/cdk/drag-drop';
|
|
@@ -65,10 +65,20 @@ import { FormlyMatToggleModule } from '@ngx-formly/material/toggle';
|
|
|
65
65
|
*/
|
|
66
66
|
var DbxFormState;
|
|
67
67
|
(function (DbxFormState) {
|
|
68
|
+
/**
|
|
69
|
+
* Form is not finished initializing.
|
|
70
|
+
*/
|
|
68
71
|
DbxFormState[DbxFormState["INITIALIZING"] = -1] = "INITIALIZING";
|
|
72
|
+
/**
|
|
73
|
+
* Form is initialized but has not yet used.
|
|
74
|
+
*/
|
|
69
75
|
DbxFormState[DbxFormState["RESET"] = 0] = "RESET";
|
|
76
|
+
/**
|
|
77
|
+
* Form has been used.
|
|
78
|
+
*/
|
|
70
79
|
DbxFormState[DbxFormState["USED"] = 1] = "USED";
|
|
71
80
|
})(DbxFormState || (DbxFormState = {}));
|
|
81
|
+
const DEFAULT_FORM_DISABLED_KEY = 'dbx_form_disabled';
|
|
72
82
|
/**
|
|
73
83
|
* Form that has an event stream, value, and state items.
|
|
74
84
|
*/
|
|
@@ -86,7 +96,7 @@ function ProvideDbxMutableForm(sourceType) {
|
|
|
86
96
|
];
|
|
87
97
|
}
|
|
88
98
|
|
|
89
|
-
const APP_ACTION_FORM_DISABLED_KEY = '
|
|
99
|
+
const APP_ACTION_FORM_DISABLED_KEY = 'dbx_action_form';
|
|
90
100
|
/**
|
|
91
101
|
* Used with an action to bind a form to an action as it's value source.
|
|
92
102
|
*
|
|
@@ -99,16 +109,25 @@ class DbxActionFormDirective {
|
|
|
99
109
|
this.form = form;
|
|
100
110
|
this.source = source;
|
|
101
111
|
this.lockSet = new LockSet();
|
|
112
|
+
this._formDisabledWhileWorking = new BehaviorSubject(true);
|
|
102
113
|
this._triggeredSub = new SubscriptionObject();
|
|
103
114
|
this._isCompleteSub = new SubscriptionObject();
|
|
115
|
+
this._isWorkingSub = new SubscriptionObject();
|
|
104
116
|
if (form.lockSet) {
|
|
105
117
|
this.lockSet.addChildLockSet(form.lockSet, 'form');
|
|
106
118
|
}
|
|
107
119
|
this.lockSet.addChildLockSet(source.lockSet, 'source');
|
|
108
120
|
}
|
|
121
|
+
get formDisabledOnWorking() {
|
|
122
|
+
return this._formDisabledWhileWorking.value;
|
|
123
|
+
}
|
|
124
|
+
set formDisabledOnWorking(formDisabledOnWorking) {
|
|
125
|
+
this._formDisabledWhileWorking.next(Boolean(formDisabledOnWorking !== null && formDisabledOnWorking !== void 0 ? formDisabledOnWorking : true));
|
|
126
|
+
}
|
|
109
127
|
ngOnInit() {
|
|
110
128
|
// Pass data from the form to the source when triggered.
|
|
111
|
-
this._triggeredSub.subscription = this.source.triggered$.pipe(switchMap(() => this.form.stream$.pipe(first(), exhaustMap((
|
|
129
|
+
this._triggeredSub.subscription = this.source.triggered$.pipe(switchMap(() => this.form.stream$.pipe(first(), exhaustMap((stream) => {
|
|
130
|
+
const { isComplete } = stream;
|
|
112
131
|
const doNothing = {}; // nothing, form not complete
|
|
113
132
|
let obs;
|
|
114
133
|
if (isComplete) {
|
|
@@ -119,7 +138,7 @@ class DbxActionFormDirective {
|
|
|
119
138
|
else {
|
|
120
139
|
return of(doNothing);
|
|
121
140
|
}
|
|
122
|
-
}), catchError((error) => of({ error })))));
|
|
141
|
+
}), catchError((error) => of({ reject: error })))));
|
|
123
142
|
}
|
|
124
143
|
else {
|
|
125
144
|
obs = of(doNothing);
|
|
@@ -137,7 +156,7 @@ class DbxActionFormDirective {
|
|
|
137
156
|
}
|
|
138
157
|
});
|
|
139
158
|
// Update the enabled/disabled state
|
|
140
|
-
this._isCompleteSub.subscription = this.form.stream$.pipe(filter((x) => x.state !== DbxFormState.INITIALIZING), switchMap((event) => {
|
|
159
|
+
this._isCompleteSub.subscription = this.form.stream$.pipe(delay(0), filter((x) => x.state !== DbxFormState.INITIALIZING), switchMap((event) => {
|
|
141
160
|
return this.form.getValue().pipe(first(), exhaustMap((value) => {
|
|
142
161
|
var _a, _b;
|
|
143
162
|
// Use both changes count and whether or not something was in the past to guage whether or not the item has been touched.
|
|
@@ -148,7 +167,7 @@ class DbxActionFormDirective {
|
|
|
148
167
|
let validatorObs;
|
|
149
168
|
const initialIsValidCheck = event.isComplete;
|
|
150
169
|
if (initialIsValidCheck) {
|
|
151
|
-
validatorObs = (this.
|
|
170
|
+
validatorObs = (this.dbxActionFormValidator) ? this.dbxActionFormValidator(value) : of(true);
|
|
152
171
|
}
|
|
153
172
|
else {
|
|
154
173
|
validatorObs = of(false);
|
|
@@ -156,7 +175,7 @@ class DbxActionFormDirective {
|
|
|
156
175
|
let modifiedObs;
|
|
157
176
|
const isConsideredModified = (event.pristine === false && isProbablyTouched);
|
|
158
177
|
if (isConsideredModified) {
|
|
159
|
-
modifiedObs = (this.
|
|
178
|
+
modifiedObs = (this.dbxActionFormModified) ? this.dbxActionFormModified(value) : of(true);
|
|
160
179
|
}
|
|
161
180
|
else {
|
|
162
181
|
modifiedObs = of(false);
|
|
@@ -173,19 +192,24 @@ class DbxActionFormDirective {
|
|
|
173
192
|
// Disable if the form is not yet complete/valid.
|
|
174
193
|
this.source.enable(APP_ACTION_FORM_DISABLED_KEY, valid);
|
|
175
194
|
});
|
|
176
|
-
//
|
|
177
|
-
|
|
195
|
+
// Watch the working state and disable form while working
|
|
196
|
+
this._isWorkingSub.subscription = combineLatest([this.source.isWorking$, this._formDisabledWhileWorking]).pipe(map(([isWorking, lockOnWorking]) => lockOnWorking && isWorking), distinctUntilChanged()).subscribe((disable) => {
|
|
197
|
+
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, disable);
|
|
198
|
+
});
|
|
178
199
|
}
|
|
179
200
|
ngOnDestroy() {
|
|
180
201
|
this.source.enable(APP_ACTION_FORM_DISABLED_KEY);
|
|
181
202
|
this.lockSet.destroyOnNextUnlock(() => {
|
|
182
203
|
this._triggeredSub.destroy();
|
|
183
204
|
this._isCompleteSub.destroy();
|
|
205
|
+
this._isWorkingSub.destroy();
|
|
206
|
+
this._formDisabledWhileWorking.complete();
|
|
207
|
+
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, false);
|
|
184
208
|
});
|
|
185
209
|
}
|
|
186
210
|
preCheckReadyValue(value) {
|
|
187
|
-
let validatorObs = (this.
|
|
188
|
-
let modifiedObs = (this.
|
|
211
|
+
let validatorObs = (this.dbxActionFormValidator) ? this.dbxActionFormValidator(value) : of(true);
|
|
212
|
+
let modifiedObs = (this.dbxActionFormModified) ? this.dbxActionFormModified(value) : of(true);
|
|
189
213
|
return combineLatest([
|
|
190
214
|
validatorObs,
|
|
191
215
|
modifiedObs
|
|
@@ -195,9 +219,9 @@ class DbxActionFormDirective {
|
|
|
195
219
|
return of({ value });
|
|
196
220
|
}
|
|
197
221
|
}
|
|
198
|
-
DbxActionFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
199
|
-
DbxActionFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
200
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
222
|
+
DbxActionFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxActionFormDirective, deps: [{ token: DbxMutableForm, host: true }, { token: i2.DbxActionContextStoreSourceInstance }], target: i0.ɵɵFactoryTarget.Directive });
|
|
223
|
+
DbxActionFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxActionFormDirective, selector: "[dbxActionForm]", inputs: { dbxActionFormValidator: "dbxActionFormValidator", dbxActionFormModified: "dbxActionFormModified", formDisabledOnWorking: "formDisabledOnWorking" }, ngImport: i0 });
|
|
224
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxActionFormDirective, decorators: [{
|
|
201
225
|
type: Directive,
|
|
202
226
|
args: [{
|
|
203
227
|
selector: '[dbxActionForm]'
|
|
@@ -205,10 +229,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
205
229
|
}], ctorParameters: function () {
|
|
206
230
|
return [{ type: DbxMutableForm, decorators: [{
|
|
207
231
|
type: Host
|
|
208
|
-
}] }, { type: i2.
|
|
209
|
-
}, propDecorators: {
|
|
232
|
+
}] }, { type: i2.DbxActionContextStoreSourceInstance }];
|
|
233
|
+
}, propDecorators: { dbxActionFormValidator: [{
|
|
234
|
+
type: Input
|
|
235
|
+
}], dbxActionFormModified: [{
|
|
210
236
|
type: Input
|
|
211
|
-
}],
|
|
237
|
+
}], formDisabledOnWorking: [{
|
|
212
238
|
type: Input
|
|
213
239
|
}] } });
|
|
214
240
|
|
|
@@ -218,18 +244,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
218
244
|
* NOTE: Only works with UIRouter
|
|
219
245
|
*/
|
|
220
246
|
class DbxActionFormSafetyDirective extends DbxActionTransitionSafetyDirective {
|
|
221
|
-
constructor(
|
|
247
|
+
constructor(dbxActionForm, source, transitionService, viewContainerRef, dialog) {
|
|
222
248
|
super(source, transitionService, viewContainerRef, dialog);
|
|
223
|
-
this.
|
|
249
|
+
this.dbxActionForm = dbxActionForm;
|
|
224
250
|
}
|
|
225
251
|
_handleOnBeforeTransition(transition) {
|
|
226
|
-
this.
|
|
252
|
+
this.dbxActionForm.form.forceFormUpdate();
|
|
227
253
|
return super._handleOnBeforeTransition(transition);
|
|
228
254
|
}
|
|
229
255
|
}
|
|
230
|
-
DbxActionFormSafetyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
231
|
-
DbxActionFormSafetyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
232
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
256
|
+
DbxActionFormSafetyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxActionFormSafetyDirective, deps: [{ token: DbxActionFormDirective, host: true }, { token: i2.DbxActionContextStoreSourceInstance }, { token: i3.TransitionService }, { token: i0.ViewContainerRef }, { token: i4.MatDialog }], target: i0.ɵɵFactoryTarget.Directive });
|
|
257
|
+
DbxActionFormSafetyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxActionFormSafetyDirective, selector: "[dbxActionFormSafety]", inputs: { inputSafetyType: ["dbxActionFormSafety", "inputSafetyType"] }, usesInheritance: true, ngImport: i0 });
|
|
258
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxActionFormSafetyDirective, decorators: [{
|
|
233
259
|
type: Directive,
|
|
234
260
|
args: [{
|
|
235
261
|
selector: '[dbxActionFormSafety]',
|
|
@@ -237,7 +263,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
237
263
|
}], ctorParameters: function () {
|
|
238
264
|
return [{ type: DbxActionFormDirective, decorators: [{
|
|
239
265
|
type: Host
|
|
240
|
-
}] }, { type: i2.
|
|
266
|
+
}] }, { type: i2.DbxActionContextStoreSourceInstance }, { type: i3.TransitionService }, { type: i0.ViewContainerRef }, { type: i4.MatDialog }];
|
|
241
267
|
}, propDecorators: { inputSafetyType: [{
|
|
242
268
|
type: Input,
|
|
243
269
|
args: ['dbxActionFormSafety']
|
|
@@ -245,12 +271,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
245
271
|
|
|
246
272
|
class DbxFormActionTransitionModule {
|
|
247
273
|
}
|
|
248
|
-
DbxFormActionTransitionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
249
|
-
DbxFormActionTransitionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
250
|
-
DbxFormActionTransitionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
274
|
+
DbxFormActionTransitionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionTransitionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
275
|
+
DbxFormActionTransitionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionTransitionModule, declarations: [DbxActionFormSafetyDirective], imports: [CommonModule], exports: [DbxActionFormSafetyDirective] });
|
|
276
|
+
DbxFormActionTransitionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionTransitionModule, imports: [[
|
|
251
277
|
CommonModule
|
|
252
278
|
]] });
|
|
253
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
279
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionTransitionModule, decorators: [{
|
|
254
280
|
type: NgModule,
|
|
255
281
|
args: [{
|
|
256
282
|
imports: [
|
|
@@ -267,14 +293,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
267
293
|
|
|
268
294
|
class DbxFormActionModule {
|
|
269
295
|
}
|
|
270
|
-
DbxFormActionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
271
|
-
DbxFormActionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
296
|
+
DbxFormActionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
297
|
+
DbxFormActionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionModule, declarations: [DbxActionFormDirective], imports: [CommonModule,
|
|
272
298
|
MatDialogModule], exports: [DbxActionFormDirective] });
|
|
273
|
-
DbxFormActionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
299
|
+
DbxFormActionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionModule, imports: [[
|
|
274
300
|
CommonModule,
|
|
275
301
|
MatDialogModule
|
|
276
302
|
]] });
|
|
277
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
303
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormActionModule, decorators: [{
|
|
278
304
|
type: NgModule,
|
|
279
305
|
args: [{
|
|
280
306
|
imports: [
|
|
@@ -290,6 +316,68 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
290
316
|
}]
|
|
291
317
|
}] });
|
|
292
318
|
|
|
319
|
+
function dbxFormSourceObservable(form, inputObs, mode$) {
|
|
320
|
+
const observable = asObservable(inputObs);
|
|
321
|
+
return combineLatest([
|
|
322
|
+
observable.pipe(distinctUntilChanged()),
|
|
323
|
+
mode$.pipe(distinctUntilChanged())
|
|
324
|
+
]).pipe(switchMap(([value, mode]) => form.stream$.pipe(
|
|
325
|
+
// wait for the form to finish initializing.
|
|
326
|
+
filter((x) => x.state !== DbxFormState.INITIALIZING),
|
|
327
|
+
// if mode is reset, then filter out changes until the form is reset again.
|
|
328
|
+
filter((x) => ((mode === 'reset') ? (x.state === DbxFormState.RESET) : true)), first(), map((_) => value))));
|
|
329
|
+
}
|
|
330
|
+
/**
|
|
331
|
+
* Used with a FormComponent to set the value based on the input value.
|
|
332
|
+
*/
|
|
333
|
+
class DbxFormSourceDirective extends AbstractSubscriptionDirective {
|
|
334
|
+
constructor(form) {
|
|
335
|
+
super();
|
|
336
|
+
this.form = form;
|
|
337
|
+
this._mode = new BehaviorSubject('reset');
|
|
338
|
+
}
|
|
339
|
+
get mode() {
|
|
340
|
+
return this._mode.value;
|
|
341
|
+
}
|
|
342
|
+
set mode(mode) {
|
|
343
|
+
this._mode.next(mode);
|
|
344
|
+
}
|
|
345
|
+
set obs(obs) {
|
|
346
|
+
this.setObs(obs);
|
|
347
|
+
}
|
|
348
|
+
setObs(inputObs) {
|
|
349
|
+
let subscription;
|
|
350
|
+
if (inputObs) {
|
|
351
|
+
subscription = dbxFormSourceObservable(this.form, inputObs, this._mode).subscribe((x) => {
|
|
352
|
+
this.form.setValue(x);
|
|
353
|
+
});
|
|
354
|
+
}
|
|
355
|
+
this.sub = subscription;
|
|
356
|
+
}
|
|
357
|
+
ngOnDestroy() {
|
|
358
|
+
super.ngOnDestroy();
|
|
359
|
+
this._mode.complete();
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
DbxFormSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSourceDirective, deps: [{ token: DbxMutableForm, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
363
|
+
DbxFormSourceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: { mode: ["dbxFormSourceMode", "mode"], obs: ["dbxFormSource", "obs"] }, usesInheritance: true, ngImport: i0 });
|
|
364
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSourceDirective, decorators: [{
|
|
365
|
+
type: Directive,
|
|
366
|
+
args: [{
|
|
367
|
+
selector: '[dbxFormSource]'
|
|
368
|
+
}]
|
|
369
|
+
}], ctorParameters: function () {
|
|
370
|
+
return [{ type: DbxMutableForm, decorators: [{
|
|
371
|
+
type: Host
|
|
372
|
+
}] }];
|
|
373
|
+
}, propDecorators: { mode: [{
|
|
374
|
+
type: Input,
|
|
375
|
+
args: ['dbxFormSourceMode']
|
|
376
|
+
}], obs: [{
|
|
377
|
+
type: Input,
|
|
378
|
+
args: ['dbxFormSource']
|
|
379
|
+
}] } });
|
|
380
|
+
|
|
293
381
|
/**
|
|
294
382
|
* Used with a FormComponent to set the value from a LoadingState when the value is available.
|
|
295
383
|
*/
|
|
@@ -297,6 +385,13 @@ class DbxFormLoadingSourceDirective extends AbstractSubscriptionDirective {
|
|
|
297
385
|
constructor(form) {
|
|
298
386
|
super();
|
|
299
387
|
this.form = form;
|
|
388
|
+
this._mode = new BehaviorSubject('reset');
|
|
389
|
+
}
|
|
390
|
+
get mode() {
|
|
391
|
+
return this._mode.value;
|
|
392
|
+
}
|
|
393
|
+
set mode(mode) {
|
|
394
|
+
this._mode.next(mode);
|
|
300
395
|
}
|
|
301
396
|
/**
|
|
302
397
|
* Sets a LoadingContext that is watched for the loading state.
|
|
@@ -304,26 +399,25 @@ class DbxFormLoadingSourceDirective extends AbstractSubscriptionDirective {
|
|
|
304
399
|
set obs(obs) {
|
|
305
400
|
this._setObs(obs);
|
|
306
401
|
}
|
|
307
|
-
_setObs(
|
|
402
|
+
_setObs(inputObs) {
|
|
308
403
|
let subscription;
|
|
309
|
-
if (
|
|
310
|
-
subscription =
|
|
311
|
-
|
|
312
|
-
this.form.stream$.pipe(filter((x) => x.state !== DbxFormState.INITIALIZING), first()),
|
|
313
|
-
obs
|
|
314
|
-
]).pipe(map((x) => x[1]), filter((x) => Boolean(x)), distinctUntilChanged((x, y) => x.value === y.value)).subscribe((x) => {
|
|
315
|
-
if (!x.error && !x.loading) {
|
|
316
|
-
// console.log('Setting value: ', x.model);
|
|
404
|
+
if (inputObs) {
|
|
405
|
+
subscription = dbxFormSourceObservable(this.form, inputObs, this._mode).subscribe((x) => {
|
|
406
|
+
if (loadingStateHasFinishedLoading(x)) {
|
|
317
407
|
this.form.setValue(x.value);
|
|
318
408
|
}
|
|
319
409
|
});
|
|
320
410
|
}
|
|
321
411
|
this.sub = subscription;
|
|
322
412
|
}
|
|
413
|
+
ngOnDestroy() {
|
|
414
|
+
super.ngOnDestroy();
|
|
415
|
+
this._mode.complete();
|
|
416
|
+
}
|
|
323
417
|
}
|
|
324
|
-
DbxFormLoadingSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
325
|
-
DbxFormLoadingSourceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
326
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
418
|
+
DbxFormLoadingSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLoadingSourceDirective, deps: [{ token: DbxMutableForm, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
419
|
+
DbxFormLoadingSourceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormLoadingSourceDirective, selector: "[dbxFormLoadingSource]", inputs: { mode: ["dbxFormLoadingSourceMode", "mode"], obs: ["dbxFormLoadingSource", "obs"] }, usesInheritance: true, ngImport: i0 });
|
|
420
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLoadingSourceDirective, decorators: [{
|
|
327
421
|
type: Directive,
|
|
328
422
|
args: [{
|
|
329
423
|
selector: '[dbxFormLoadingSource]'
|
|
@@ -332,13 +426,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
332
426
|
return [{ type: DbxMutableForm, decorators: [{
|
|
333
427
|
type: Host
|
|
334
428
|
}] }];
|
|
335
|
-
}, propDecorators: {
|
|
429
|
+
}, propDecorators: { mode: [{
|
|
430
|
+
type: Input,
|
|
431
|
+
args: ['dbxFormLoadingSourceMode']
|
|
432
|
+
}], obs: [{
|
|
336
433
|
type: Input,
|
|
337
434
|
args: ['dbxFormLoadingSource']
|
|
338
435
|
}] } });
|
|
339
436
|
|
|
340
437
|
/**
|
|
341
438
|
* Used to see form value changes.
|
|
439
|
+
*
|
|
440
|
+
* Emits undefined when the form is incomplete, and the value when the form is complete.
|
|
342
441
|
*/
|
|
343
442
|
class DbxFormValueChangesDirective extends AbstractSubscriptionDirective {
|
|
344
443
|
constructor(form) {
|
|
@@ -347,14 +446,23 @@ class DbxFormValueChangesDirective extends AbstractSubscriptionDirective {
|
|
|
347
446
|
this.dbxFormValueChange = new EventEmitter();
|
|
348
447
|
}
|
|
349
448
|
ngOnInit() {
|
|
350
|
-
this.sub = this.form.stream$.pipe(
|
|
351
|
-
|
|
449
|
+
this.sub = this.form.stream$.pipe(mergeMap((x) => this.form.getValue().pipe(first(), map((value) => ({ isComplete: x.isComplete, value })))), delay(0)).subscribe(({ isComplete, value }) => {
|
|
450
|
+
if (isComplete) {
|
|
451
|
+
this.dbxFormValueChange.next(value);
|
|
452
|
+
}
|
|
453
|
+
else {
|
|
454
|
+
this.dbxFormValueChange.next(undefined);
|
|
455
|
+
}
|
|
352
456
|
});
|
|
353
457
|
}
|
|
458
|
+
ngOnDestroy() {
|
|
459
|
+
super.ngOnDestroy();
|
|
460
|
+
this.dbxFormValueChange.complete();
|
|
461
|
+
}
|
|
354
462
|
}
|
|
355
|
-
DbxFormValueChangesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
356
|
-
DbxFormValueChangesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
357
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
463
|
+
DbxFormValueChangesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormValueChangesDirective, deps: [{ token: DbxForm, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
464
|
+
DbxFormValueChangesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormValueChangesDirective, selector: "[dbxFormValueChange]", outputs: { dbxFormValueChange: "dbxFormValueChange" }, usesInheritance: true, ngImport: i0 });
|
|
465
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormValueChangesDirective, decorators: [{
|
|
358
466
|
type: Directive,
|
|
359
467
|
args: [{
|
|
360
468
|
selector: '[dbxFormValueChange]'
|
|
@@ -367,62 +475,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
367
475
|
type: Output
|
|
368
476
|
}] } });
|
|
369
477
|
|
|
370
|
-
/**
|
|
371
|
-
* Used with a FormComponent to set the value based on the input value.
|
|
372
|
-
*/
|
|
373
|
-
class DbxFormSourceDirective extends AbstractSubscriptionDirective {
|
|
374
|
-
constructor(form) {
|
|
375
|
-
super();
|
|
376
|
-
this.form = form;
|
|
377
|
-
}
|
|
378
|
-
/**
|
|
379
|
-
* Sets a LoadingContext that is watched for the loading state.
|
|
380
|
-
*/
|
|
381
|
-
set obs(obs) {
|
|
382
|
-
this._setObs(obs);
|
|
383
|
-
}
|
|
384
|
-
_setObs(obs) {
|
|
385
|
-
let subscription;
|
|
386
|
-
if (obs) {
|
|
387
|
-
subscription = combineLatest([
|
|
388
|
-
// Emit the first time initializing isn't there.
|
|
389
|
-
this.form.stream$.pipe(filter((x) => x.state !== DbxFormState.INITIALIZING), first()),
|
|
390
|
-
obs
|
|
391
|
-
]).pipe(map((x) => x[1]), distinctUntilChanged((x, y) => x === y)).subscribe((x) => {
|
|
392
|
-
this.form.setValue(x);
|
|
393
|
-
});
|
|
394
|
-
}
|
|
395
|
-
this.sub = subscription;
|
|
396
|
-
}
|
|
397
|
-
}
|
|
398
|
-
DbxFormSourceDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxFormSourceDirective, deps: [{ token: DbxMutableForm, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
399
|
-
DbxFormSourceDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: { obs: ["dbxFormSource", "obs"] }, usesInheritance: true, ngImport: i0 });
|
|
400
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxFormSourceDirective, decorators: [{
|
|
401
|
-
type: Directive,
|
|
402
|
-
args: [{
|
|
403
|
-
selector: '[dbxFormSource]'
|
|
404
|
-
}]
|
|
405
|
-
}], ctorParameters: function () {
|
|
406
|
-
return [{ type: DbxMutableForm, decorators: [{
|
|
407
|
-
type: Host
|
|
408
|
-
}] }];
|
|
409
|
-
}, propDecorators: { obs: [{
|
|
410
|
-
type: Input,
|
|
411
|
-
args: ['dbxFormSource']
|
|
412
|
-
}] } });
|
|
413
|
-
|
|
414
478
|
class DbxFormIoModule {
|
|
415
479
|
}
|
|
416
|
-
DbxFormIoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
417
|
-
DbxFormIoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
480
|
+
DbxFormIoModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormIoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
481
|
+
DbxFormIoModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormIoModule, declarations: [DbxFormSourceDirective,
|
|
418
482
|
DbxFormValueChangesDirective,
|
|
419
483
|
DbxFormLoadingSourceDirective], imports: [CommonModule], exports: [DbxFormSourceDirective,
|
|
420
484
|
DbxFormValueChangesDirective,
|
|
421
485
|
DbxFormLoadingSourceDirective] });
|
|
422
|
-
DbxFormIoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
486
|
+
DbxFormIoModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormIoModule, imports: [[
|
|
423
487
|
CommonModule
|
|
424
488
|
]] });
|
|
425
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
489
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormIoModule, decorators: [{
|
|
426
490
|
type: NgModule,
|
|
427
491
|
args: [{
|
|
428
492
|
imports: [
|
|
@@ -443,14 +507,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
443
507
|
|
|
444
508
|
class DbxFormModule {
|
|
445
509
|
}
|
|
446
|
-
DbxFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
447
|
-
DbxFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
510
|
+
DbxFormModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
511
|
+
DbxFormModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormModule, exports: [DbxFormActionTransitionModule,
|
|
448
512
|
DbxFormActionModule,
|
|
449
513
|
DbxFormIoModule] });
|
|
450
|
-
DbxFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
514
|
+
DbxFormModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormModule, imports: [DbxFormActionTransitionModule,
|
|
451
515
|
DbxFormActionModule,
|
|
452
516
|
DbxFormIoModule] });
|
|
453
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
517
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormModule, decorators: [{
|
|
454
518
|
type: NgModule,
|
|
455
519
|
args: [{
|
|
456
520
|
exports: [
|
|
@@ -474,8 +538,8 @@ function maxValidationMessage(err, field) {
|
|
|
474
538
|
return `This value should be less than ${field.templateOptions.max}`;
|
|
475
539
|
}
|
|
476
540
|
const REQUIRED_VALIDATION_MESSAGE = { name: 'required', message: 'This field is required' };
|
|
477
|
-
const MIN_LENGTH_VALIDATION_MESSAGE = { name: '
|
|
478
|
-
const MAX_LENGTH_VALIDATION_MESSAGE = { name: '
|
|
541
|
+
const MIN_LENGTH_VALIDATION_MESSAGE = { name: 'minLength', message: minLengthValidationMessage };
|
|
542
|
+
const MAX_LENGTH_VALIDATION_MESSAGE = { name: 'maxLength', message: maxLengthValidationMessage };
|
|
479
543
|
const MIN_VALIDATION_MESSAGE = { name: 'min', message: minValidationMessage };
|
|
480
544
|
const MAX_VALIDATION_MESSAGE = { name: 'max', message: maxValidationMessage };
|
|
481
545
|
const INVALID_PHONE_NUMBER_MESSAGE = { name: 'validatePhoneNumber', message: 'This is not a valid phone number.' };
|
|
@@ -498,15 +562,15 @@ class DbxDefaultChecklistItemFieldDisplayComponent {
|
|
|
498
562
|
return (_a = this.displayContent) === null || _a === void 0 ? void 0 : _a.description;
|
|
499
563
|
}
|
|
500
564
|
}
|
|
501
|
-
DbxDefaultChecklistItemFieldDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
502
|
-
DbxDefaultChecklistItemFieldDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
565
|
+
DbxDefaultChecklistItemFieldDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxDefaultChecklistItemFieldDisplayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
566
|
+
DbxDefaultChecklistItemFieldDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxDefaultChecklistItemFieldDisplayComponent, selector: "ng-component", inputs: { displayContent: "displayContent" }, ngImport: i0, template: `
|
|
503
567
|
<div *ngIf="displayContent" class="dbx-default-checklist-item-field">
|
|
504
568
|
<div *ngIf="label" class="item-label">{{ label }}</div>
|
|
505
569
|
<div *ngIf="sublabel" class="item-sublabel">{{ sublabel }}</div>
|
|
506
570
|
<div *ngIf="description" class="dbx-hint item-description">{{ description }}</div>
|
|
507
571
|
</div>
|
|
508
572
|
`, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
509
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
573
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxDefaultChecklistItemFieldDisplayComponent, decorators: [{
|
|
510
574
|
type: Component,
|
|
511
575
|
args: [{
|
|
512
576
|
template: `
|
|
@@ -525,9 +589,9 @@ class DbxChecklistItemFieldComponent extends FieldType {
|
|
|
525
589
|
constructor() {
|
|
526
590
|
super(...arguments);
|
|
527
591
|
this._displayContent = new BehaviorSubject(undefined);
|
|
528
|
-
this.displayContent$ = this._displayContent.pipe(switchMapMaybeObs(), distinctUntilChanged(), shareReplay(1));
|
|
529
|
-
this.anchor$ = this.displayContent$.pipe(map(x => x.anchor), shareReplay(1));
|
|
530
|
-
this.rippleDisabled$ = this.displayContent$.pipe(map(x => x.ripple === false || (x.ripple !== true && !x.anchor)), distinctUntilChanged(), shareReplay(1));
|
|
592
|
+
this.displayContent$ = this._displayContent.pipe(switchMapMaybeObs(), distinctUntilChanged$1(), shareReplay(1));
|
|
593
|
+
this.anchor$ = this.displayContent$.pipe(map$1(x => x.anchor), shareReplay(1));
|
|
594
|
+
this.rippleDisabled$ = this.displayContent$.pipe(map$1(x => x.ripple === false || (x.ripple !== true && !x.anchor)), distinctUntilChanged$1(), shareReplay(1));
|
|
531
595
|
}
|
|
532
596
|
get formGroup() {
|
|
533
597
|
return this.form;
|
|
@@ -565,9 +629,9 @@ class DbxChecklistItemFieldComponent extends FieldType {
|
|
|
565
629
|
this._displayContent.complete();
|
|
566
630
|
}
|
|
567
631
|
}
|
|
568
|
-
DbxChecklistItemFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
569
|
-
DbxChecklistItemFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
570
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
632
|
+
DbxChecklistItemFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxChecklistItemFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
633
|
+
DbxChecklistItemFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxChecklistItemFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-checklist-item-wrapper\" [formGroup]=\"formGroup\">\n <div *ngIf=\"label\" class=\"dbx-checklist-item-label\">{{ label }}</div>\n <div class=\"dbx-checklist-item\">\n <div class=\"dbx-checklist-item-check\">\n <mat-checkbox [formControlName]=\"formControlName\"></mat-checkbox>\n </div>\n <div class=\"dbx-checklist-item-content-wrapper\">\n <dbx-anchor [block]=\"true\" [anchor]=\"anchor$ | async\">\n <div class=\"dbx-checklist-item-content\" matRipple [matRippleDisabled]=\"(rippleDisabled$ | async) ?? false\">\n <dbx-checklist-item-content-component></dbx-checklist-item-content-component>\n <span class=\"spacer\"></span>\n <mat-icon *ngIf=\"!(rippleDisabled$ | async)\">navigate_next</mat-icon>\n </div>\n </dbx-anchor>\n </div>\n </div>\n <div *ngIf=\"description\" class=\"dbx-hint\">{{ description }}</div>\n</div>\n", components: [{ type: i0.forwardRef(function () { return i1.MatCheckbox; }), selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i0.forwardRef(function () { return i1$1.DbxAnchorComponent; }), selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { type: i0.forwardRef(function () { return DbxChecklistItemContentComponent; }), selector: "dbx-checklist-item-content-component" }, { type: i0.forwardRef(function () { return i2$1.MatIcon; }), selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i0.forwardRef(function () { return i4$1.NgControlStatusGroup; }), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i0.forwardRef(function () { return i4$1.FormGroupDirective; }), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i4$1.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { type: i0.forwardRef(function () { return i4$1.FormControlName; }), selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i0.forwardRef(function () { return i6.MatRipple; }), selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], pipes: { "async": i0.forwardRef(function () { return i5.AsyncPipe; }) } });
|
|
634
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxChecklistItemFieldComponent, decorators: [{
|
|
571
635
|
type: Component,
|
|
572
636
|
args: [{ template: "<div class=\"dbx-checklist-item-wrapper\" [formGroup]=\"formGroup\">\n <div *ngIf=\"label\" class=\"dbx-checklist-item-label\">{{ label }}</div>\n <div class=\"dbx-checklist-item\">\n <div class=\"dbx-checklist-item-check\">\n <mat-checkbox [formControlName]=\"formControlName\"></mat-checkbox>\n </div>\n <div class=\"dbx-checklist-item-content-wrapper\">\n <dbx-anchor [block]=\"true\" [anchor]=\"anchor$ | async\">\n <div class=\"dbx-checklist-item-content\" matRipple [matRippleDisabled]=\"(rippleDisabled$ | async) ?? false\">\n <dbx-checklist-item-content-component></dbx-checklist-item-content-component>\n <span class=\"spacer\"></span>\n <mat-icon *ngIf=\"!(rippleDisabled$ | async)\">navigate_next</mat-icon>\n </div>\n </dbx-anchor>\n </div>\n </div>\n <div *ngIf=\"description\" class=\"dbx-hint\">{{ description }}</div>\n</div>\n" }]
|
|
573
637
|
}] });
|
|
@@ -589,13 +653,13 @@ class DbxChecklistItemContentComponent extends AbstractSubscriptionDirective {
|
|
|
589
653
|
};
|
|
590
654
|
}
|
|
591
655
|
}
|
|
592
|
-
DbxChecklistItemContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
593
|
-
DbxChecklistItemContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
594
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
656
|
+
DbxChecklistItemContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxChecklistItemContentComponent, deps: [{ token: DbxChecklistItemFieldComponent }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
657
|
+
DbxChecklistItemContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxChecklistItemContentComponent, selector: "dbx-checklist-item-content-component", usesInheritance: true, ngImport: i0, template: `<dbx-injection [config]="config"></dbx-injection>`, isInline: true, components: [{ type: i2.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }] });
|
|
658
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxChecklistItemContentComponent, decorators: [{
|
|
595
659
|
type: Component,
|
|
596
660
|
args: [{
|
|
597
661
|
selector: 'dbx-checklist-item-content-component',
|
|
598
|
-
template: `<dbx-
|
|
662
|
+
template: `<dbx-injection [config]="config"></dbx-injection>`
|
|
599
663
|
}]
|
|
600
664
|
}], ctorParameters: function () { return [{ type: DbxChecklistItemFieldComponent }, { type: i0.ChangeDetectorRef }]; } });
|
|
601
665
|
|
|
@@ -607,8 +671,8 @@ class DbxFormInfoWrapperComponent extends FieldWrapper {
|
|
|
607
671
|
this.infoWrapper.onInfoClick();
|
|
608
672
|
}
|
|
609
673
|
}
|
|
610
|
-
DbxFormInfoWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
611
|
-
DbxFormInfoWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
674
|
+
DbxFormInfoWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormInfoWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
675
|
+
DbxFormInfoWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormInfoWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
612
676
|
<div class="dbx-form-info-wrapper" fxLayout="row">
|
|
613
677
|
<div class="dbx-form-info-wrapper-content" fxFlex="grow">
|
|
614
678
|
<ng-container #fieldComponent></ng-container>
|
|
@@ -621,7 +685,7 @@ DbxFormInfoWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.
|
|
|
621
685
|
</div>
|
|
622
686
|
</div>
|
|
623
687
|
`, isInline: true, components: [{ type: i1$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i3$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i3$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i3$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }] });
|
|
624
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
688
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormInfoWrapperComponent, decorators: [{
|
|
625
689
|
type: Component,
|
|
626
690
|
args: [{
|
|
627
691
|
template: `
|
|
@@ -650,13 +714,13 @@ class DbxFormSectionWrapperComponent extends FieldWrapper {
|
|
|
650
714
|
return (_a = this.to.sectionWrapper) === null || _a === void 0 ? void 0 : _a.hint;
|
|
651
715
|
}
|
|
652
716
|
}
|
|
653
|
-
DbxFormSectionWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
654
|
-
DbxFormSectionWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
717
|
+
DbxFormSectionWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSectionWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
718
|
+
DbxFormSectionWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormSectionWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
655
719
|
<dbx-section [header]="header" [hint]="hint">
|
|
656
720
|
<ng-container #fieldComponent></ng-container>
|
|
657
721
|
</dbx-section>
|
|
658
722
|
`, isInline: true, components: [{ type: i1$1.DbxSectionComponent, selector: "dbx-section", inputs: ["elevated"] }] });
|
|
659
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
723
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSectionWrapperComponent, decorators: [{
|
|
660
724
|
type: Component,
|
|
661
725
|
args: [{
|
|
662
726
|
template: `
|
|
@@ -680,13 +744,13 @@ class DbxFormFlexWrapperComponent extends FieldWrapper {
|
|
|
680
744
|
return (_b = (_a = this.flexWrapper) === null || _a === void 0 ? void 0 : _a.relative) !== null && _b !== void 0 ? _b : false;
|
|
681
745
|
}
|
|
682
746
|
}
|
|
683
|
-
DbxFormFlexWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
684
|
-
DbxFormFlexWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
747
|
+
DbxFormFlexWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFlexWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
748
|
+
DbxFormFlexWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormFlexWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
685
749
|
<div class="dbx-form-flex-section" dbxFlexGroup [content]="false" [relative]="relative" [breakpoint]="breakpoint">
|
|
686
750
|
<ng-container #fieldComponent></ng-container>
|
|
687
751
|
</div>
|
|
688
752
|
`, isInline: true, directives: [{ type: i1$1.DbxFlexGroupDirective, selector: "[dbxFlexGroup]", inputs: ["content", "relative", "breakpoint"] }] });
|
|
689
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
753
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFlexWrapperComponent, decorators: [{
|
|
690
754
|
type: Component,
|
|
691
755
|
args: [{
|
|
692
756
|
template: `
|
|
@@ -707,13 +771,13 @@ class DbxFormSubsectionWrapperComponent extends FieldWrapper {
|
|
|
707
771
|
return (_a = this.to.subsectionWrapper) === null || _a === void 0 ? void 0 : _a.hint;
|
|
708
772
|
}
|
|
709
773
|
}
|
|
710
|
-
DbxFormSubsectionWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
711
|
-
DbxFormSubsectionWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
774
|
+
DbxFormSubsectionWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSubsectionWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
775
|
+
DbxFormSubsectionWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormSubsectionWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
712
776
|
<dbx-subsection [header]="header" [hint]="hint">
|
|
713
777
|
<ng-container #fieldComponent></ng-container>
|
|
714
778
|
</dbx-subsection>
|
|
715
779
|
`, isInline: true, components: [{ type: i1$1.DbxSubSectionComponent, selector: "dbx-subsection" }] });
|
|
716
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
780
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSubsectionWrapperComponent, decorators: [{
|
|
717
781
|
type: Component,
|
|
718
782
|
args: [{
|
|
719
783
|
template: `
|
|
@@ -731,7 +795,7 @@ class AbstractFormExpandableSectionWrapperDirective extends FieldWrapper {
|
|
|
731
795
|
this._formControlObs = new BehaviorSubject(undefined);
|
|
732
796
|
this.formControl$ = this._formControlObs.pipe(filterMaybe());
|
|
733
797
|
this._toggleOpen = new BehaviorSubject(undefined);
|
|
734
|
-
this.show$ = this._toggleOpen.pipe(switchMap
|
|
798
|
+
this.show$ = this._toggleOpen.pipe(switchMap((toggleOpen) => {
|
|
735
799
|
if (toggleOpen != null) {
|
|
736
800
|
return of(toggleOpen);
|
|
737
801
|
}
|
|
@@ -739,7 +803,7 @@ class AbstractFormExpandableSectionWrapperDirective extends FieldWrapper {
|
|
|
739
803
|
return this.hasValue$;
|
|
740
804
|
}
|
|
741
805
|
}), shareReplay$1(1));
|
|
742
|
-
this.hasValue$ = this.formControl$.pipe(switchMap
|
|
806
|
+
this.hasValue$ = this.formControl$.pipe(switchMap((x) => x.valueChanges.pipe(startWith(x.value), map((value) => {
|
|
743
807
|
return this.hasValueFn(value);
|
|
744
808
|
}), shareReplay$1(1))));
|
|
745
809
|
}
|
|
@@ -772,9 +836,9 @@ class AbstractFormExpandableSectionWrapperDirective extends FieldWrapper {
|
|
|
772
836
|
this._formControlObs.complete();
|
|
773
837
|
}
|
|
774
838
|
}
|
|
775
|
-
AbstractFormExpandableSectionWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
776
|
-
AbstractFormExpandableSectionWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
777
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
839
|
+
AbstractFormExpandableSectionWrapperDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractFormExpandableSectionWrapperDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
840
|
+
AbstractFormExpandableSectionWrapperDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractFormExpandableSectionWrapperDirective, usesInheritance: true, ngImport: i0 });
|
|
841
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractFormExpandableSectionWrapperDirective, decorators: [{
|
|
778
842
|
type: Directive
|
|
779
843
|
}] });
|
|
780
844
|
|
|
@@ -787,8 +851,8 @@ class DbxFormExpandWrapperComponent extends AbstractFormExpandableSectionWrapper
|
|
|
787
851
|
return (_b = (_a = this.expandableSection) === null || _a === void 0 ? void 0 : _a.buttonType) !== null && _b !== void 0 ? _b : 'button';
|
|
788
852
|
}
|
|
789
853
|
}
|
|
790
|
-
DbxFormExpandWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
791
|
-
DbxFormExpandWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
854
|
+
DbxFormExpandWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormExpandWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
855
|
+
DbxFormExpandWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormExpandWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
792
856
|
<ng-container [ngSwitch]="show$ | async">
|
|
793
857
|
<ng-container *ngSwitchCase="true">
|
|
794
858
|
<ng-container #fieldComponent></ng-container>
|
|
@@ -798,7 +862,7 @@ DbxFormExpandWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
|
|
|
798
862
|
</ng-container>
|
|
799
863
|
</ng-container>
|
|
800
864
|
`, isInline: true, directives: [{ type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "async": i5.AsyncPipe } });
|
|
801
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
865
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormExpandWrapperComponent, decorators: [{
|
|
802
866
|
type: Component,
|
|
803
867
|
args: [{
|
|
804
868
|
template: `
|
|
@@ -827,9 +891,9 @@ class AutoTouchFieldWrapperComponent extends FieldWrapper {
|
|
|
827
891
|
});
|
|
828
892
|
}
|
|
829
893
|
}
|
|
830
|
-
AutoTouchFieldWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
831
|
-
AutoTouchFieldWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
832
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
894
|
+
AutoTouchFieldWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutoTouchFieldWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
895
|
+
AutoTouchFieldWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: AutoTouchFieldWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `<ng-container #fieldComponent></ng-container>`, isInline: true });
|
|
896
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AutoTouchFieldWrapperComponent, decorators: [{
|
|
833
897
|
type: Component,
|
|
834
898
|
args: [{
|
|
835
899
|
template: `<ng-container #fieldComponent></ng-container>`
|
|
@@ -842,7 +906,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
842
906
|
class DbxFormToggleWrapperComponent extends AbstractFormExpandableSectionWrapperDirective {
|
|
843
907
|
constructor() {
|
|
844
908
|
super(...arguments);
|
|
845
|
-
this.slideLabel$ = this._toggleOpen.pipe(switchMap
|
|
909
|
+
this.slideLabel$ = this._toggleOpen.pipe(switchMap(x => {
|
|
846
910
|
var _a, _b;
|
|
847
911
|
if ((_a = this.expandableSection) === null || _a === void 0 ? void 0 : _a.toggleLabelObs) {
|
|
848
912
|
return (_b = this.expandableSection) === null || _b === void 0 ? void 0 : _b.toggleLabelObs(x);
|
|
@@ -853,13 +917,13 @@ class DbxFormToggleWrapperComponent extends AbstractFormExpandableSectionWrapper
|
|
|
853
917
|
}), shareReplay$1(1));
|
|
854
918
|
}
|
|
855
919
|
onToggleChange() {
|
|
856
|
-
this.show$.pipe(first
|
|
920
|
+
this.show$.pipe(first()).subscribe((show) => {
|
|
857
921
|
this._toggleOpen.next(!show);
|
|
858
922
|
});
|
|
859
923
|
}
|
|
860
924
|
}
|
|
861
|
-
DbxFormToggleWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
862
|
-
DbxFormToggleWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
925
|
+
DbxFormToggleWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormToggleWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
926
|
+
DbxFormToggleWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormToggleWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
863
927
|
<div class="dbx-form-toggle-wrapper" [ngSwitch]="show$ | async">
|
|
864
928
|
<div class="dbx-form-toggle-wrapper-toggle">
|
|
865
929
|
<mat-slide-toggle [checked]="show$ | async" (toggleChange)="onToggleChange()">{{ slideLabel$ | async }}</mat-slide-toggle>
|
|
@@ -869,7 +933,7 @@ DbxFormToggleWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "1
|
|
|
869
933
|
</ng-container>
|
|
870
934
|
</div>
|
|
871
935
|
`, isInline: true, components: [{ type: i1$3.MatSlideToggle, selector: "mat-slide-toggle", inputs: ["disabled", "disableRipple", "color", "tabIndex", "name", "id", "labelPosition", "aria-label", "aria-labelledby", "aria-describedby", "required", "checked"], outputs: ["change", "toggleChange"], exportAs: ["matSlideToggle"] }], directives: [{ type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "async": i5.AsyncPipe } });
|
|
872
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
936
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormToggleWrapperComponent, decorators: [{
|
|
873
937
|
type: Component,
|
|
874
938
|
args: [{
|
|
875
939
|
template: `
|
|
@@ -904,13 +968,13 @@ class DbxFormStyleWrapperComponent extends FieldWrapper {
|
|
|
904
968
|
this._style.complete();
|
|
905
969
|
}
|
|
906
970
|
}
|
|
907
|
-
DbxFormStyleWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
908
|
-
DbxFormStyleWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
971
|
+
DbxFormStyleWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormStyleWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
972
|
+
DbxFormStyleWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormStyleWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
909
973
|
<div [ngClass]="(style$ | async) ?? ''">
|
|
910
974
|
<ng-container #fieldComponent></ng-container>
|
|
911
975
|
</div>
|
|
912
976
|
`, isInline: true, directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2$2.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }], pipes: { "async": i5.AsyncPipe } });
|
|
913
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
977
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormStyleWrapperComponent, decorators: [{
|
|
914
978
|
type: Component,
|
|
915
979
|
args: [{
|
|
916
980
|
template: `
|
|
@@ -921,27 +985,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
921
985
|
}]
|
|
922
986
|
}] });
|
|
923
987
|
|
|
988
|
+
/**
|
|
989
|
+
* Adds a loading bar to help signify asynchronos work is occuring.
|
|
990
|
+
*
|
|
991
|
+
* By default shows loading during asynchronous validation of a field (FormControl status is "PENDING")
|
|
992
|
+
*/
|
|
993
|
+
class DbxFormWorkingWrapperComponent extends FieldWrapper {
|
|
994
|
+
constructor() {
|
|
995
|
+
super(...arguments);
|
|
996
|
+
this.sub = new SubscriptionObject();
|
|
997
|
+
this.workingContext = new SimpleLoadingContext(false);
|
|
998
|
+
}
|
|
999
|
+
ngOnInit() {
|
|
1000
|
+
var _a;
|
|
1001
|
+
this.sub.subscription = (_a = this.formControl) === null || _a === void 0 ? void 0 : _a.statusChanges.subscribe({
|
|
1002
|
+
next: (x) => this.workingContext.setLoading(x === 'PENDING')
|
|
1003
|
+
});
|
|
1004
|
+
}
|
|
1005
|
+
ngOnDestroy() {
|
|
1006
|
+
this.workingContext.destroy();
|
|
1007
|
+
this.sub.destroy();
|
|
1008
|
+
}
|
|
1009
|
+
}
|
|
1010
|
+
DbxFormWorkingWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormWorkingWrapperComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1011
|
+
DbxFormWorkingWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormWorkingWrapperComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
1012
|
+
<div class="dbx-form-working-wrapper">
|
|
1013
|
+
<ng-container #fieldComponent></ng-container>
|
|
1014
|
+
<dbx-loading [linear]="true" [context]="workingContext"></dbx-loading>
|
|
1015
|
+
</div>
|
|
1016
|
+
`, isInline: true, components: [{ type: i1$1.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }] });
|
|
1017
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormWorkingWrapperComponent, decorators: [{
|
|
1018
|
+
type: Component,
|
|
1019
|
+
args: [{
|
|
1020
|
+
template: `
|
|
1021
|
+
<div class="dbx-form-working-wrapper">
|
|
1022
|
+
<ng-container #fieldComponent></ng-container>
|
|
1023
|
+
<dbx-loading [linear]="true" [context]="workingContext"></dbx-loading>
|
|
1024
|
+
</div>
|
|
1025
|
+
`
|
|
1026
|
+
}]
|
|
1027
|
+
}] });
|
|
1028
|
+
|
|
924
1029
|
class DbxFormFormlyWrapperModule {
|
|
925
1030
|
}
|
|
926
|
-
DbxFormFormlyWrapperModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
927
|
-
DbxFormFormlyWrapperModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
1031
|
+
DbxFormFormlyWrapperModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyWrapperModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1032
|
+
DbxFormFormlyWrapperModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyWrapperModule, declarations: [AutoTouchFieldWrapperComponent,
|
|
928
1033
|
DbxFormSectionWrapperComponent,
|
|
929
1034
|
DbxFormSubsectionWrapperComponent,
|
|
930
1035
|
DbxFormInfoWrapperComponent,
|
|
931
1036
|
DbxFormExpandWrapperComponent,
|
|
932
1037
|
DbxFormToggleWrapperComponent,
|
|
933
1038
|
DbxFormFlexWrapperComponent,
|
|
934
|
-
DbxFormStyleWrapperComponent
|
|
1039
|
+
DbxFormStyleWrapperComponent,
|
|
1040
|
+
DbxFormWorkingWrapperComponent], imports: [CommonModule,
|
|
935
1041
|
DbxTextModule,
|
|
1042
|
+
DbxLoadingModule,
|
|
936
1043
|
DbxFlexLayoutModule,
|
|
937
1044
|
DbxSectionLayoutModule,
|
|
938
1045
|
MatButtonModule,
|
|
939
1046
|
MatSlideToggleModule,
|
|
940
1047
|
MatIconModule,
|
|
941
1048
|
FlexLayoutModule, i1$4.FormlyModule] });
|
|
942
|
-
DbxFormFormlyWrapperModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
1049
|
+
DbxFormFormlyWrapperModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyWrapperModule, imports: [[
|
|
943
1050
|
CommonModule,
|
|
944
1051
|
DbxTextModule,
|
|
1052
|
+
DbxLoadingModule,
|
|
945
1053
|
DbxFlexLayoutModule,
|
|
946
1054
|
DbxSectionLayoutModule,
|
|
947
1055
|
MatButtonModule,
|
|
@@ -957,16 +1065,18 @@ DbxFormFormlyWrapperModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.
|
|
|
957
1065
|
{ name: 'subsection', component: DbxFormSubsectionWrapperComponent },
|
|
958
1066
|
{ name: 'info', component: DbxFormInfoWrapperComponent },
|
|
959
1067
|
{ name: 'flex', component: DbxFormFlexWrapperComponent },
|
|
960
|
-
{ name: 'style', component: DbxFormStyleWrapperComponent }
|
|
1068
|
+
{ name: 'style', component: DbxFormStyleWrapperComponent },
|
|
1069
|
+
{ name: 'working', component: DbxFormWorkingWrapperComponent }
|
|
961
1070
|
]
|
|
962
1071
|
})
|
|
963
1072
|
]] });
|
|
964
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1073
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyWrapperModule, decorators: [{
|
|
965
1074
|
type: NgModule,
|
|
966
1075
|
args: [{
|
|
967
1076
|
imports: [
|
|
968
1077
|
CommonModule,
|
|
969
1078
|
DbxTextModule,
|
|
1079
|
+
DbxLoadingModule,
|
|
970
1080
|
DbxFlexLayoutModule,
|
|
971
1081
|
DbxSectionLayoutModule,
|
|
972
1082
|
MatButtonModule,
|
|
@@ -982,7 +1092,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
982
1092
|
{ name: 'subsection', component: DbxFormSubsectionWrapperComponent },
|
|
983
1093
|
{ name: 'info', component: DbxFormInfoWrapperComponent },
|
|
984
1094
|
{ name: 'flex', component: DbxFormFlexWrapperComponent },
|
|
985
|
-
{ name: 'style', component: DbxFormStyleWrapperComponent }
|
|
1095
|
+
{ name: 'style', component: DbxFormStyleWrapperComponent },
|
|
1096
|
+
{ name: 'working', component: DbxFormWorkingWrapperComponent }
|
|
986
1097
|
]
|
|
987
1098
|
})
|
|
988
1099
|
],
|
|
@@ -994,7 +1105,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
994
1105
|
DbxFormExpandWrapperComponent,
|
|
995
1106
|
DbxFormToggleWrapperComponent,
|
|
996
1107
|
DbxFormFlexWrapperComponent,
|
|
997
|
-
DbxFormStyleWrapperComponent
|
|
1108
|
+
DbxFormStyleWrapperComponent,
|
|
1109
|
+
DbxFormWorkingWrapperComponent
|
|
998
1110
|
],
|
|
999
1111
|
exports: []
|
|
1000
1112
|
}]
|
|
@@ -1002,8 +1114,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
1002
1114
|
|
|
1003
1115
|
class DbxFormFormlyChecklistItemFieldModule {
|
|
1004
1116
|
}
|
|
1005
|
-
DbxFormFormlyChecklistItemFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1006
|
-
DbxFormFormlyChecklistItemFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
1117
|
+
DbxFormFormlyChecklistItemFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyChecklistItemFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1118
|
+
DbxFormFormlyChecklistItemFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyChecklistItemFieldModule, declarations: [DbxChecklistItemFieldComponent,
|
|
1007
1119
|
DbxChecklistItemContentComponent,
|
|
1008
1120
|
DbxDefaultChecklistItemFieldDisplayComponent], imports: [CommonModule,
|
|
1009
1121
|
DbxTextModule,
|
|
@@ -1013,10 +1125,10 @@ DbxFormFormlyChecklistItemFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVers
|
|
|
1013
1125
|
MatCheckboxModule,
|
|
1014
1126
|
MatButtonModule,
|
|
1015
1127
|
MatIconModule,
|
|
1016
|
-
|
|
1017
|
-
|
|
1128
|
+
DbxRouterAnchorModule,
|
|
1129
|
+
DbxInjectionComponentModule,
|
|
1018
1130
|
DbxFormFormlyWrapperModule, i1$4.FormlyModule], exports: [DbxFormFormlyWrapperModule] });
|
|
1019
|
-
DbxFormFormlyChecklistItemFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
1131
|
+
DbxFormFormlyChecklistItemFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyChecklistItemFieldModule, imports: [[
|
|
1020
1132
|
CommonModule,
|
|
1021
1133
|
DbxTextModule,
|
|
1022
1134
|
FormsModule,
|
|
@@ -1025,8 +1137,8 @@ DbxFormFormlyChecklistItemFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVers
|
|
|
1025
1137
|
MatCheckboxModule,
|
|
1026
1138
|
MatButtonModule,
|
|
1027
1139
|
MatIconModule,
|
|
1028
|
-
|
|
1029
|
-
|
|
1140
|
+
DbxRouterAnchorModule,
|
|
1141
|
+
DbxInjectionComponentModule,
|
|
1030
1142
|
DbxFormFormlyWrapperModule,
|
|
1031
1143
|
FormlyModule.forChild({
|
|
1032
1144
|
types: [
|
|
@@ -1034,7 +1146,7 @@ DbxFormFormlyChecklistItemFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVers
|
|
|
1034
1146
|
]
|
|
1035
1147
|
})
|
|
1036
1148
|
], DbxFormFormlyWrapperModule] });
|
|
1037
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyChecklistItemFieldModule, decorators: [{
|
|
1038
1150
|
type: NgModule,
|
|
1039
1151
|
args: [{
|
|
1040
1152
|
imports: [
|
|
@@ -1046,8 +1158,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
1046
1158
|
MatCheckboxModule,
|
|
1047
1159
|
MatButtonModule,
|
|
1048
1160
|
MatIconModule,
|
|
1049
|
-
|
|
1050
|
-
|
|
1161
|
+
DbxRouterAnchorModule,
|
|
1162
|
+
DbxInjectionComponentModule,
|
|
1051
1163
|
DbxFormFormlyWrapperModule,
|
|
1052
1164
|
FormlyModule.forChild({
|
|
1053
1165
|
types: [
|
|
@@ -1143,7 +1255,7 @@ class ChecklistItemFieldDataSetBuilder {
|
|
|
1143
1255
|
mergedConfig.displayContentObs = combineLatest([
|
|
1144
1256
|
currentField.displayContentObs,
|
|
1145
1257
|
config.displayContentObs
|
|
1146
|
-
]).pipe(map(([a, b]) => {
|
|
1258
|
+
]).pipe(map$1(([a, b]) => {
|
|
1147
1259
|
const result = Object.assign(Object.assign({}, a), b);
|
|
1148
1260
|
// console.log('A and b: ', a, b, result);
|
|
1149
1261
|
return result;
|
|
@@ -1184,7 +1296,7 @@ class ChecklistItemFieldDataSetBuilder {
|
|
|
1184
1296
|
}
|
|
1185
1297
|
// MARK: Utility
|
|
1186
1298
|
customContentFromData(mapFn) {
|
|
1187
|
-
return this.dataObs$.pipe(map(mapFn));
|
|
1299
|
+
return this.dataObs$.pipe(map$1(mapFn));
|
|
1188
1300
|
}
|
|
1189
1301
|
contentWithValueFromData(key, contentFn) {
|
|
1190
1302
|
return this.customContentFromData((data) => {
|
|
@@ -1201,78 +1313,63 @@ class ChecklistItemFieldDataSetBuilder {
|
|
|
1201
1313
|
}
|
|
1202
1314
|
}
|
|
1203
1315
|
|
|
1204
|
-
class
|
|
1205
|
-
}
|
|
1206
|
-
class FormComponentFieldComponent extends FieldType {
|
|
1316
|
+
class DbxFormComponentFieldComponent extends FieldType {
|
|
1207
1317
|
get config() {
|
|
1208
|
-
return this._config;
|
|
1209
|
-
}
|
|
1210
|
-
get componentField() {
|
|
1211
1318
|
return this.field.componentField;
|
|
1212
1319
|
}
|
|
1213
|
-
ngOnInit() {
|
|
1214
|
-
this._config = {
|
|
1215
|
-
componentClass: this.componentField.componentClass,
|
|
1216
|
-
init: (instance) => {
|
|
1217
|
-
instance.field = this;
|
|
1218
|
-
}
|
|
1219
|
-
};
|
|
1220
|
-
}
|
|
1221
1320
|
}
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
<div class="form-
|
|
1225
|
-
`, isInline: true, components: [{ type: i2.
|
|
1226
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1321
|
+
DbxFormComponentFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormComponentFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1322
|
+
DbxFormComponentFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormComponentFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
1323
|
+
<div class="dbx-form-component" dbx-injection [config]="config"></div>
|
|
1324
|
+
`, isInline: true, components: [{ type: i2.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }] });
|
|
1325
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormComponentFieldComponent, decorators: [{
|
|
1227
1326
|
type: Component,
|
|
1228
1327
|
args: [{
|
|
1229
1328
|
template: `
|
|
1230
|
-
<div class="form-
|
|
1329
|
+
<div class="dbx-form-component" dbx-injection [config]="config"></div>
|
|
1231
1330
|
`
|
|
1232
1331
|
}]
|
|
1233
1332
|
}] });
|
|
1234
1333
|
|
|
1235
1334
|
class DbxFormFormlyComponentFieldModule {
|
|
1236
1335
|
}
|
|
1237
|
-
DbxFormFormlyComponentFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1238
|
-
DbxFormFormlyComponentFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
1239
|
-
|
|
1240
|
-
DbxFormFormlyComponentFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
1336
|
+
DbxFormFormlyComponentFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyComponentFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1337
|
+
DbxFormFormlyComponentFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyComponentFieldModule, declarations: [DbxFormComponentFieldComponent], imports: [CommonModule,
|
|
1338
|
+
DbxInjectionComponentModule, i1$4.FormlyModule], exports: [DbxFormComponentFieldComponent] });
|
|
1339
|
+
DbxFormFormlyComponentFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyComponentFieldModule, imports: [[
|
|
1241
1340
|
CommonModule,
|
|
1242
|
-
|
|
1341
|
+
DbxInjectionComponentModule,
|
|
1243
1342
|
FormlyModule.forChild({
|
|
1244
1343
|
types: [
|
|
1245
|
-
{ name: 'component', component:
|
|
1344
|
+
{ name: 'component', component: DbxFormComponentFieldComponent }
|
|
1246
1345
|
]
|
|
1247
1346
|
})
|
|
1248
1347
|
]] });
|
|
1249
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1348
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyComponentFieldModule, decorators: [{
|
|
1250
1349
|
type: NgModule,
|
|
1251
1350
|
args: [{
|
|
1252
1351
|
imports: [
|
|
1253
1352
|
CommonModule,
|
|
1254
|
-
|
|
1353
|
+
DbxInjectionComponentModule,
|
|
1255
1354
|
FormlyModule.forChild({
|
|
1256
1355
|
types: [
|
|
1257
|
-
{ name: 'component', component:
|
|
1356
|
+
{ name: 'component', component: DbxFormComponentFieldComponent }
|
|
1258
1357
|
]
|
|
1259
1358
|
})
|
|
1260
1359
|
],
|
|
1261
1360
|
declarations: [
|
|
1262
|
-
|
|
1361
|
+
DbxFormComponentFieldComponent
|
|
1263
1362
|
],
|
|
1264
1363
|
exports: [
|
|
1265
|
-
|
|
1364
|
+
DbxFormComponentFieldComponent
|
|
1266
1365
|
]
|
|
1267
1366
|
}]
|
|
1268
1367
|
}] });
|
|
1269
1368
|
|
|
1270
|
-
function componentField(
|
|
1369
|
+
function componentField(config) {
|
|
1271
1370
|
return {
|
|
1272
1371
|
type: 'component',
|
|
1273
|
-
componentField:
|
|
1274
|
-
componentClass
|
|
1275
|
-
}
|
|
1372
|
+
componentField: config
|
|
1276
1373
|
};
|
|
1277
1374
|
}
|
|
1278
1375
|
|
|
@@ -1287,18 +1384,18 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1287
1384
|
this.formControl$ = this._formControlObs.pipe(filterMaybe());
|
|
1288
1385
|
this._displayHashMap = new BehaviorSubject(new Map());
|
|
1289
1386
|
this.filterInputValue$ = this.inputCtrl.valueChanges.pipe(startWith(undefined));
|
|
1290
|
-
this.filterInputValueString$ = this.filterInputValue$.pipe(debounceTime(200), distinctUntilChanged
|
|
1291
|
-
this.loadResultsDisplayValuesState$ = this.formControl$.pipe(first
|
|
1292
|
-
this._formControlValue = this.formControl$.pipe(switchMap
|
|
1293
|
-
this.loadResultsDisplayValues$ = this.loadResultsDisplayValuesState$.pipe(map
|
|
1387
|
+
this.filterInputValueString$ = this.filterInputValue$.pipe(debounceTime(200), distinctUntilChanged(), shareReplay$1(1));
|
|
1388
|
+
this.loadResultsDisplayValuesState$ = this.formControl$.pipe(first(), switchMap(() => this.loadValuesFn().pipe(switchMap((x) => this.loadDisplayValuesForFieldValues(x)), startWith(beginLoading()))), shareReplay$1(1));
|
|
1389
|
+
this._formControlValue = this.formControl$.pipe(switchMap(control => control.valueChanges.pipe(startWith(control.value), shareReplay$1(1))));
|
|
1390
|
+
this.loadResultsDisplayValues$ = this.loadResultsDisplayValuesState$.pipe(map(x => { var _a; return (_a = x === null || x === void 0 ? void 0 : x.value) !== null && _a !== void 0 ? _a : []; }));
|
|
1294
1391
|
/**
|
|
1295
1392
|
* Current values in the form control.
|
|
1296
1393
|
*/
|
|
1297
|
-
this.values$ = this._formControlValue.pipe(map
|
|
1394
|
+
this.values$ = this._formControlValue.pipe(map(convertMaybeToArray), shareReplay$1(1));
|
|
1298
1395
|
/**
|
|
1299
1396
|
* Current values with their display value.
|
|
1300
1397
|
*/
|
|
1301
|
-
this.displayValuesState$ = combineLatest([this.loadResultsDisplayValues$, this.values$]).pipe(switchMap
|
|
1398
|
+
this.displayValuesState$ = combineLatest([this.loadResultsDisplayValues$, this.values$]).pipe(switchMap(([displayValues, currentValues]) => {
|
|
1302
1399
|
const displayValuesMap = makeValuesGroupMap(displayValues, (x) => this.hashForValue(x.value));
|
|
1303
1400
|
const valuesNotInDisplayMap = [];
|
|
1304
1401
|
currentValues.forEach((x) => {
|
|
@@ -1310,7 +1407,7 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1310
1407
|
}
|
|
1311
1408
|
});
|
|
1312
1409
|
if (valuesNotInDisplayMap.length) {
|
|
1313
|
-
return this.loadDisplayValuesForValues(valuesNotInDisplayMap).pipe(map
|
|
1410
|
+
return this.loadDisplayValuesForValues(valuesNotInDisplayMap).pipe(map(x => mapLoadingStateResults(x, {
|
|
1314
1411
|
mapValue: (loadedValues) => {
|
|
1315
1412
|
loadedValues.forEach(x => { var _a; return x.isUnknown = (_a = x.isUnknown) !== null && _a !== void 0 ? _a : true; }); // Assign unknown flag.
|
|
1316
1413
|
return ([...displayValues, ...loadedValues]);
|
|
@@ -1324,32 +1421,32 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1324
1421
|
/**
|
|
1325
1422
|
* Results to be displayed if filtered.
|
|
1326
1423
|
*/
|
|
1327
|
-
this.filteredSearchResultsState$ = this.loadResultsDisplayValues$.pipe(switchMap
|
|
1424
|
+
this.filteredSearchResultsState$ = this.loadResultsDisplayValues$.pipe(switchMap((values) => this.filterInputValueString$.pipe(switchMap(text => combineLatest([this._filterValues(text, values), this.displayValuesState$]).pipe(map(([values, displayState]) => mapLoadingStateResults(displayState, {
|
|
1328
1425
|
mapValue: (displayValues) => {
|
|
1329
1426
|
const valueHashSet = new Set(values.map(x => this.hashForValue(x)));
|
|
1330
1427
|
return displayValues.filter(x => !x.isUnknown && valueHashSet.has(x._hash));
|
|
1331
1428
|
}
|
|
1332
1429
|
})), startWith(beginLoading()))))), shareReplay$1(1));
|
|
1333
|
-
this.filteredSearchResults$ = this.filteredSearchResultsState$.pipe(map
|
|
1334
|
-
this.items$ = combineLatest([this.filteredSearchResults$, this.values$]).pipe(map
|
|
1430
|
+
this.filteredSearchResults$ = this.filteredSearchResultsState$.pipe(map(x => x === null || x === void 0 ? void 0 : x.value), filterMaybe(), shareReplay$1(1));
|
|
1431
|
+
this.items$ = combineLatest([this.filteredSearchResults$, this.values$]).pipe(map(([displayValues, values]) => {
|
|
1335
1432
|
const selectedHashValuesSet = new Set(values.map(x => this.hashForValue(x)));
|
|
1336
|
-
let items = displayValues.map((x) => ({
|
|
1433
|
+
let items = displayValues.map((x) => ({ itemValue: x, selected: selectedHashValuesSet.has(x._hash) }));
|
|
1337
1434
|
if (this.sortItems) {
|
|
1338
1435
|
items = this.sortItems(items);
|
|
1339
1436
|
}
|
|
1340
1437
|
return items;
|
|
1341
1438
|
}), shareReplay$1(1));
|
|
1342
|
-
this.itemsLoadingState$ = this.loadResultsDisplayValues$.pipe(switchMap
|
|
1439
|
+
this.itemsLoadingState$ = this.loadResultsDisplayValues$.pipe(switchMap(x => this.items$.pipe(first(), map(x => successResult(x)), startWith(beginLoading()), shareReplay$1(1))));
|
|
1343
1440
|
/**
|
|
1344
1441
|
* Context used for managing the loading of items, or when the current results change.
|
|
1345
1442
|
*/
|
|
1346
1443
|
this.context = new ListLoadingStateContextInstance({ obs: this.itemsLoadingState$, showLoadingOnNoValue: false });
|
|
1347
|
-
this.filterItemsLoadingState$ = this.items$.pipe(map
|
|
1444
|
+
this.filterItemsLoadingState$ = this.items$.pipe(map(x => successResult(x)), startWith(beginLoading()), shareReplay$1(1));
|
|
1348
1445
|
/**
|
|
1349
1446
|
* Context used for searching/filtering.
|
|
1350
1447
|
*/
|
|
1351
1448
|
this.filterResultsContext = new ListLoadingStateContextInstance({ obs: this.filteredSearchResultsState$, showLoadingOnNoValue: true });
|
|
1352
|
-
this.noItemsAvailable$ = this.filterItemsLoadingState$.pipe(isListLoadingStateEmpty(), distinctUntilChanged
|
|
1449
|
+
this.noItemsAvailable$ = this.filterItemsLoadingState$.pipe(isListLoadingStateEmpty(), distinctUntilChanged());
|
|
1353
1450
|
}
|
|
1354
1451
|
get readonly() {
|
|
1355
1452
|
var _a;
|
|
@@ -1384,6 +1481,10 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1384
1481
|
var _a, _b, _c;
|
|
1385
1482
|
return (_c = (_b = (_a = this.field.templateOptions) === null || _a === void 0 ? void 0 : _a.attributes) === null || _b === void 0 ? void 0 : _b['autocomplete']) !== null && _c !== void 0 ? _c : this.key;
|
|
1386
1483
|
}
|
|
1484
|
+
get changeSelectionModeToViewOnDisabled() {
|
|
1485
|
+
var _a;
|
|
1486
|
+
return (_a = this.pickableField.changeSelectionModeToViewOnDisabled) !== null && _a !== void 0 ? _a : false;
|
|
1487
|
+
}
|
|
1387
1488
|
get sortItems() {
|
|
1388
1489
|
return this.pickableField.sortItems;
|
|
1389
1490
|
}
|
|
@@ -1442,7 +1543,7 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1442
1543
|
return this.loadDisplayValuesForFieldValues(values.map((value) => ({ value })));
|
|
1443
1544
|
}
|
|
1444
1545
|
loadDisplayValuesForFieldValues(values) {
|
|
1445
|
-
return this.getDisplayValuesForFieldValues(values).pipe(map
|
|
1546
|
+
return this.getDisplayValuesForFieldValues(values).pipe(map((displayValues) => successResult(displayValues)), startWith(beginLoading()), shareReplay$1(1));
|
|
1446
1547
|
}
|
|
1447
1548
|
getDisplayValuesForFieldValues(values) {
|
|
1448
1549
|
return this._displayHashMap.pipe(mergeMap((displayMap) => {
|
|
@@ -1454,7 +1555,7 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1454
1555
|
if (needsDisplay.length > 0) {
|
|
1455
1556
|
// Go get the display value.
|
|
1456
1557
|
const displayValuesObs = this.displayForValue(needsDisplay.map(x => x[2]));
|
|
1457
|
-
return displayValuesObs.pipe(first
|
|
1558
|
+
return displayValuesObs.pipe(first(), map((displayResults) => {
|
|
1458
1559
|
const displayResultsWithHash = displayResults.map((x) => {
|
|
1459
1560
|
x._hash = this.hashForValue(x.value);
|
|
1460
1561
|
return x;
|
|
@@ -1477,10 +1578,9 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1477
1578
|
}));
|
|
1478
1579
|
}
|
|
1479
1580
|
ngOnInit() {
|
|
1480
|
-
super.ngOnInit();
|
|
1481
1581
|
this._formControlObs.next(this.formControl);
|
|
1482
1582
|
// Focus after finished loading for the first time.
|
|
1483
|
-
this.context.loading$.pipe(delay(10), filter
|
|
1583
|
+
this.context.loading$.pipe(delay(10), filter(x => x), first()).subscribe(() => {
|
|
1484
1584
|
var _a;
|
|
1485
1585
|
(_a = this.filterMatInput) === null || _a === void 0 ? void 0 : _a.focus();
|
|
1486
1586
|
});
|
|
@@ -1524,9 +1624,9 @@ class AbstractDbxPickableItemFieldDirective extends FieldType$1 {
|
|
|
1524
1624
|
this.formControl.markAsDirty();
|
|
1525
1625
|
}
|
|
1526
1626
|
}
|
|
1527
|
-
AbstractDbxPickableItemFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1528
|
-
AbstractDbxPickableItemFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
1529
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1627
|
+
AbstractDbxPickableItemFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxPickableItemFieldDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
1628
|
+
AbstractDbxPickableItemFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractDbxPickableItemFieldDirective, viewQueries: [{ propertyName: "filterMatInput", first: true, predicate: ["filterMatInput"], descendants: true, static: true }], usesInheritance: true, ngImport: i0 });
|
|
1629
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxPickableItemFieldDirective, decorators: [{
|
|
1530
1630
|
type: Directive
|
|
1531
1631
|
}], propDecorators: { filterMatInput: [{
|
|
1532
1632
|
type: ViewChild,
|
|
@@ -1540,19 +1640,19 @@ class DbxPickableChipListFieldComponent extends AbstractDbxPickableItemFieldDire
|
|
|
1540
1640
|
itemClicked(item) {
|
|
1541
1641
|
if (!item.disabled && !this.isReadonlyOrDisabled) {
|
|
1542
1642
|
if (item.selected) {
|
|
1543
|
-
this.removeValue(item.
|
|
1643
|
+
this.removeValue(item.itemValue.value);
|
|
1544
1644
|
}
|
|
1545
1645
|
else {
|
|
1546
|
-
this.addValue(item.
|
|
1646
|
+
this.addValue(item.itemValue.value);
|
|
1547
1647
|
}
|
|
1548
1648
|
}
|
|
1549
1649
|
}
|
|
1550
1650
|
}
|
|
1551
|
-
DbxPickableChipListFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1552
|
-
DbxPickableChipListFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1553
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1651
|
+
DbxPickableChipListFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableChipListFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1652
|
+
DbxPickableChipListFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxPickableChipListFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-pickable-item-field\">\n <dbx-loading [context]=\"context\" [linear]=\"true\">\n <ng-container *ngIf=\"showFilterInput\">\n <ng-container *ngTemplateOutlet=\"filterTemplate\"></ng-container>\n </ng-container>\n <!-- Content -->\n <div class=\"dbx-pickable-item-field-chips\">\n <mat-chip-list [required]=\"required\" [selectable]=\"!isReadonlyOrDisabled\" #chipList>\n <mat-chip *ngFor=\"let item of items$ | async\" (click)=\"itemClicked(item)\" [selected]=\"item.selected\"\n [disabled]=\"isReadonlyOrDisabled || item.disabled\">\n <span class=\"dbx-chip-label\">{{ item.itemValue.label }}</span>\n <span class=\"dbx-chip-sublabel\" *ngIf=\"item.itemValue.sublabel\">{{ item.itemValue.sublabel }}</span>\n </mat-chip>\n </mat-chip-list>\n <dbx-injection [config]=\"footerConfig\"></dbx-injection>\n </div>\n </dbx-loading>\n</div>\n\n<!-- Filter Input -->\n<ng-template #filterTemplate>\n <div class=\"dbx-pickable-item-field-filter\">\n <div class=\"dbx-label\">{{ filterLabel }}</div>\n <input [name]=\"name\" autocomplete=\"{{ autocomplete }}\" #filterMatInput=\"matInput\" matInput\n [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\">\n <mat-divider></mat-divider>\n <dbx-loading [linear]=\"true\" [context]=\"filterResultsContext\"></dbx-loading>\n <!-- No items found. -->\n <p *ngIf=\"noItemsAvailable$ | async\" class=\"dbx-label\">No items match this filter.</p>\n </div>\n</ng-template>\n", components: [{ type: i1$1.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { type: i1$5.MatChipList, selector: "mat-chip-list", inputs: ["errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i2.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { type: i4$2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$5.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i6$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "async": i5.AsyncPipe } });
|
|
1653
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableChipListFieldComponent, decorators: [{
|
|
1554
1654
|
type: Component,
|
|
1555
|
-
args: [{ template: "<div class=\"dbx-pickable-item-field\">\n <dbx-loading [context]=\"context\" [linear]=\"true\">\n <ng-container *ngIf=\"showFilterInput\">\n <ng-container *ngTemplateOutlet=\"filterTemplate\"></ng-container>\n </ng-container>\n <!-- Content -->\n <div class=\"dbx-pickable-item-field-chips\">\n <mat-chip-list [required]=\"required\" [selectable]=\"!isReadonlyOrDisabled\" #chipList>\n <mat-chip *ngFor=\"let item of items$ | async\" (click)=\"itemClicked(item)\" [selected]=\"item.selected\"\n [disabled]=\"isReadonlyOrDisabled || item.disabled\">\n <span class=\"dbx-chip-label\">{{ item.
|
|
1655
|
+
args: [{ template: "<div class=\"dbx-pickable-item-field\">\n <dbx-loading [context]=\"context\" [linear]=\"true\">\n <ng-container *ngIf=\"showFilterInput\">\n <ng-container *ngTemplateOutlet=\"filterTemplate\"></ng-container>\n </ng-container>\n <!-- Content -->\n <div class=\"dbx-pickable-item-field-chips\">\n <mat-chip-list [required]=\"required\" [selectable]=\"!isReadonlyOrDisabled\" #chipList>\n <mat-chip *ngFor=\"let item of items$ | async\" (click)=\"itemClicked(item)\" [selected]=\"item.selected\"\n [disabled]=\"isReadonlyOrDisabled || item.disabled\">\n <span class=\"dbx-chip-label\">{{ item.itemValue.label }}</span>\n <span class=\"dbx-chip-sublabel\" *ngIf=\"item.itemValue.sublabel\">{{ item.itemValue.sublabel }}</span>\n </mat-chip>\n </mat-chip-list>\n <dbx-injection [config]=\"footerConfig\"></dbx-injection>\n </div>\n </dbx-loading>\n</div>\n\n<!-- Filter Input -->\n<ng-template #filterTemplate>\n <div class=\"dbx-pickable-item-field-filter\">\n <div class=\"dbx-label\">{{ filterLabel }}</div>\n <input [name]=\"name\" autocomplete=\"{{ autocomplete }}\" #filterMatInput=\"matInput\" matInput\n [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\">\n <mat-divider></mat-divider>\n <dbx-loading [linear]=\"true\" [context]=\"filterResultsContext\"></dbx-loading>\n <!-- No items found. -->\n <p *ngIf=\"noItemsAvailable$ | async\" class=\"dbx-label\">No items match this filter.</p>\n </div>\n</ng-template>\n" }]
|
|
1556
1656
|
}] });
|
|
1557
1657
|
|
|
1558
1658
|
/**
|
|
@@ -1561,15 +1661,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
1561
1661
|
class DbxPickableListFieldComponent extends AbstractDbxPickableItemFieldDirective {
|
|
1562
1662
|
onSelectionChange(event) {
|
|
1563
1663
|
const items = event.items;
|
|
1564
|
-
const values = items.map(x => x.
|
|
1664
|
+
const values = items.map(x => x.itemValue.value);
|
|
1565
1665
|
this.setValues(values);
|
|
1566
1666
|
}
|
|
1567
1667
|
}
|
|
1568
|
-
DbxPickableListFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1569
|
-
DbxPickableListFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1570
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1668
|
+
DbxPickableListFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1669
|
+
DbxPickableListFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxPickableListFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-pickable-item-field\">\n <dbx-loading [context]=\"context\">\n <ng-container *ngIf=\"showFilterInput\">\n <ng-container *ngTemplateOutlet=\"filterTemplate\"></ng-container>\n </ng-container>\n <!-- Content -->\n <div class=\"dbx-pickable-item-field-list\">\n <div class=\"dbx-pickable-item-field-list-content\">\n <dbx-form-pickable-item-field-item-list [disabled]=\"isReadonlyOrDisabled\" [state$]=\"filterItemsLoadingState$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </dbx-form-pickable-item-field-item-list>\n </div>\n <dbx-injection [config]=\"footerConfig\"></dbx-injection>\n </div>\n </dbx-loading>\n</div>\n\n<!-- Filter Input -->\n<ng-template #filterTemplate>\n <div class=\"dbx-pickable-item-field-filter\">\n <div class=\"dbx-label\">{{ filterLabel }}</div>\n <input [name]=\"name\" autocomplete=\"{{ autocomplete }}\" #filterMatInput=\"matInput\" matInput\n [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\">\n <mat-divider></mat-divider>\n <dbx-loading [linear]=\"true\" [context]=\"filterResultsContext\"></dbx-loading>\n <!-- No items found. -->\n <p *ngIf=\"noItemsAvailable$ | async\" class=\"dbx-label\">No items match this filter.</p>\n </div>\n</ng-template>\n", components: [{ type: i0.forwardRef(function () { return i1$1.DbxLoadingComponent; }), selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { type: i0.forwardRef(function () { return DbxPickableListFieldItemListComponent; }), selector: "dbx-form-pickable-item-field-item-list" }, { type: i0.forwardRef(function () { return i2.DbxInjectionComponent; }), selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }, { type: i0.forwardRef(function () { return i4$2.MatDivider; }), selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i0.forwardRef(function () { return i5.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i0.forwardRef(function () { return i5.NgTemplateOutlet; }), selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i0.forwardRef(function () { return i6$1.MatInput; }), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i0.forwardRef(function () { return i4$1.DefaultValueAccessor; }), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i0.forwardRef(function () { return i4$1.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { type: i0.forwardRef(function () { return i4$1.FormControlDirective; }), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "async": i0.forwardRef(function () { return i5.AsyncPipe; }) } });
|
|
1670
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldComponent, decorators: [{
|
|
1571
1671
|
type: Component,
|
|
1572
|
-
args: [{ template: "<div class=\"dbx-pickable-item-field\">\n <dbx-loading [context]=\"context\">\n <ng-container *ngIf=\"showFilterInput\">\n <ng-container *ngTemplateOutlet=\"filterTemplate\"></ng-container>\n </ng-container>\n <!-- Content -->\n <div class=\"dbx-pickable-item-field-list\">\n <div class=\"dbx-pickable-item-field-list-content\">\n <dbx-form-pickable-item-field-item-list [disabled]=\"isReadonlyOrDisabled\" [state$]=\"filterItemsLoadingState$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </dbx-form-pickable-item-field-item-list>\n </div>\n <dbx-
|
|
1672
|
+
args: [{ template: "<div class=\"dbx-pickable-item-field\">\n <dbx-loading [context]=\"context\">\n <ng-container *ngIf=\"showFilterInput\">\n <ng-container *ngTemplateOutlet=\"filterTemplate\"></ng-container>\n </ng-container>\n <!-- Content -->\n <div class=\"dbx-pickable-item-field-list\">\n <div class=\"dbx-pickable-item-field-list-content\">\n <dbx-form-pickable-item-field-item-list [disabled]=\"isReadonlyOrDisabled\" [state$]=\"filterItemsLoadingState$\"\n (selectionChange)=\"onSelectionChange($event)\">\n </dbx-form-pickable-item-field-item-list>\n </div>\n <dbx-injection [config]=\"footerConfig\"></dbx-injection>\n </div>\n </dbx-loading>\n</div>\n\n<!-- Filter Input -->\n<ng-template #filterTemplate>\n <div class=\"dbx-pickable-item-field-filter\">\n <div class=\"dbx-label\">{{ filterLabel }}</div>\n <input [name]=\"name\" autocomplete=\"{{ autocomplete }}\" #filterMatInput=\"matInput\" matInput\n [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\">\n <mat-divider></mat-divider>\n <dbx-loading [linear]=\"true\" [context]=\"filterResultsContext\"></dbx-loading>\n <!-- No items found. -->\n <p *ngIf=\"noItemsAvailable$ | async\" class=\"dbx-label\">No items match this filter.</p>\n </div>\n</ng-template>\n" }]
|
|
1573
1673
|
}] });
|
|
1574
1674
|
// MARK: Selection List
|
|
1575
1675
|
class DbxPickableListFieldItemListComponent extends AbstractDbxSelectionListWrapperDirective {
|
|
@@ -1579,9 +1679,9 @@ class DbxPickableListFieldItemListComponent extends AbstractDbxSelectionListWrap
|
|
|
1579
1679
|
});
|
|
1580
1680
|
}
|
|
1581
1681
|
}
|
|
1582
|
-
DbxPickableListFieldItemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1583
|
-
DbxPickableListFieldItemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1584
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1682
|
+
DbxPickableListFieldItemListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldItemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1683
|
+
DbxPickableListFieldItemListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxPickableListFieldItemListComponent, selector: "dbx-form-pickable-item-field-item-list", usesInheritance: true, ngImport: i0, template: "\n<dbx-list [state$]=\"state$\" [config]=\"config$ | async\" [disabled]=\"disabled\" [selectionMode]=\"selectionMode\">\n <ng-content top select=\"[top]\"></ng-content>\n <ng-content bottom select=\"[bottom]\"></ng-content>\n <ng-content empty select=\"[empty]\"></ng-content>\n</dbx-list>\n", isInline: true, components: [{ type: i1$1.DbxListComponent, selector: "dbx-list", inputs: ["padded", "state$", "config", "disabled", "selectionMode"], outputs: ["contentScrolled"] }], pipes: { "async": i5.AsyncPipe } });
|
|
1684
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldItemListComponent, decorators: [{
|
|
1585
1685
|
type: Component,
|
|
1586
1686
|
args: [{
|
|
1587
1687
|
selector: 'dbx-form-pickable-item-field-item-list',
|
|
@@ -1591,7 +1691,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
1591
1691
|
/**
|
|
1592
1692
|
* NOTE: Values input are PickableItemFieldItem<T>, but output values are PickableValueFieldDisplayValue<T>.
|
|
1593
1693
|
*/
|
|
1594
|
-
class DbxPickableListFieldItemListViewComponent extends
|
|
1694
|
+
class DbxPickableListFieldItemListViewComponent extends AbstractDbxSelectionListViewDirective {
|
|
1595
1695
|
constructor(dbxPickableListFieldComponent) {
|
|
1596
1696
|
super();
|
|
1597
1697
|
this.dbxPickableListFieldComponent = dbxPickableListFieldComponent;
|
|
@@ -1600,31 +1700,38 @@ class DbxPickableListFieldItemListViewComponent extends AbstractSelectionValueLi
|
|
|
1600
1700
|
};
|
|
1601
1701
|
this.items$ = this.values$.pipe(
|
|
1602
1702
|
// NOTE: This causes the "value" to be a PickableValueFieldDisplayValue<T>, which means we emit PickableValueFieldDisplayValue<T> to DbxPickableListFieldComponent.
|
|
1603
|
-
map
|
|
1703
|
+
map(x => addConfigToValueListItems(this.config, x)), shareReplay$1(1));
|
|
1604
1704
|
}
|
|
1605
1705
|
get multiple() {
|
|
1606
1706
|
return this.dbxPickableListFieldComponent.multiSelect;
|
|
1607
1707
|
}
|
|
1708
|
+
get selectionMode() {
|
|
1709
|
+
let selectionMode = 'select';
|
|
1710
|
+
if (this.dbxPickableListFieldComponent.disabled && this.dbxPickableListFieldComponent.changeSelectionModeToViewOnDisabled) {
|
|
1711
|
+
selectionMode = 'view';
|
|
1712
|
+
}
|
|
1713
|
+
return selectionMode;
|
|
1714
|
+
}
|
|
1608
1715
|
}
|
|
1609
|
-
DbxPickableListFieldItemListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1610
|
-
DbxPickableListFieldItemListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1611
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1716
|
+
DbxPickableListFieldItemListViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldItemListViewComponent, deps: [{ token: DbxPickableListFieldComponent }], target: i0.ɵɵFactoryTarget.Component });
|
|
1717
|
+
DbxPickableListFieldItemListViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxPickableListFieldItemListViewComponent, selector: "ng-component", providers: ProvideDbxListView(DbxPickableListFieldItemListViewComponent), usesInheritance: true, ngImport: i0, template: `<dbx-selection-list-view-content [multiple]="multiple" [selectionMode]="selectionMode" [items]="items$ | async"></dbx-selection-list-view-content>`, isInline: true, components: [{ type: i1$1.DbxSelectionValueListItemViewComponent, selector: "dbx-selection-list-view-content", inputs: ["multiple", "selectionMode"] }], pipes: { "async": i5.AsyncPipe } });
|
|
1718
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldItemListViewComponent, decorators: [{
|
|
1612
1719
|
type: Component,
|
|
1613
1720
|
args: [{
|
|
1614
|
-
template: `<dbx-selection-list-view-content [multiple]="multiple" [items]="items$ | async"></dbx-selection-list-view-content>`,
|
|
1721
|
+
template: `<dbx-selection-list-view-content [multiple]="multiple" [selectionMode]="selectionMode" [items]="items$ | async"></dbx-selection-list-view-content>`,
|
|
1615
1722
|
providers: ProvideDbxListView(DbxPickableListFieldItemListViewComponent)
|
|
1616
1723
|
}]
|
|
1617
1724
|
}], ctorParameters: function () { return [{ type: DbxPickableListFieldComponent }]; } });
|
|
1618
|
-
class DbxPickableListFieldItemListViewItemComponent extends
|
|
1725
|
+
class DbxPickableListFieldItemListViewItemComponent extends AbstractDbxValueListViewItemComponent {
|
|
1619
1726
|
get label() {
|
|
1620
|
-
return this.
|
|
1727
|
+
return this.itemValue.label;
|
|
1621
1728
|
}
|
|
1622
1729
|
}
|
|
1623
|
-
DbxPickableListFieldItemListViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1624
|
-
DbxPickableListFieldItemListViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1730
|
+
DbxPickableListFieldItemListViewItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldItemListViewItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1731
|
+
DbxPickableListFieldItemListViewItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxPickableListFieldItemListViewItemComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
1625
1732
|
<p>{{ label }}</p>
|
|
1626
1733
|
`, isInline: true });
|
|
1627
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1734
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPickableListFieldItemListViewItemComponent, decorators: [{
|
|
1628
1735
|
type: Component,
|
|
1629
1736
|
args: [{
|
|
1630
1737
|
template: `
|
|
@@ -1635,8 +1742,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
1635
1742
|
|
|
1636
1743
|
class DbxFormFormlyPickableFieldModule {
|
|
1637
1744
|
}
|
|
1638
|
-
DbxFormFormlyPickableFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1639
|
-
DbxFormFormlyPickableFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
1745
|
+
DbxFormFormlyPickableFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPickableFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1746
|
+
DbxFormFormlyPickableFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPickableFieldModule, declarations: [DbxPickableChipListFieldComponent,
|
|
1640
1747
|
DbxPickableListFieldComponent,
|
|
1641
1748
|
DbxPickableListFieldItemListComponent,
|
|
1642
1749
|
DbxPickableListFieldItemListViewComponent,
|
|
@@ -1652,12 +1759,12 @@ DbxFormFormlyPickableFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion:
|
|
|
1652
1759
|
MatAutocompleteModule,
|
|
1653
1760
|
MatListModule,
|
|
1654
1761
|
DbxDatePipeModule,
|
|
1655
|
-
|
|
1762
|
+
DbxRouterAnchorModule,
|
|
1656
1763
|
MatChipsModule,
|
|
1657
1764
|
MatIconModule,
|
|
1658
|
-
|
|
1765
|
+
DbxInjectionComponentModule,
|
|
1659
1766
|
DbxListLayoutModule, i1$4.FormlyModule] });
|
|
1660
|
-
DbxFormFormlyPickableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
1767
|
+
DbxFormFormlyPickableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPickableFieldModule, imports: [[
|
|
1661
1768
|
CommonModule,
|
|
1662
1769
|
DbxTextModule,
|
|
1663
1770
|
DbxLoadingModule,
|
|
@@ -1670,10 +1777,10 @@ DbxFormFormlyPickableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion:
|
|
|
1670
1777
|
MatAutocompleteModule,
|
|
1671
1778
|
MatListModule,
|
|
1672
1779
|
DbxDatePipeModule,
|
|
1673
|
-
|
|
1780
|
+
DbxRouterAnchorModule,
|
|
1674
1781
|
MatChipsModule,
|
|
1675
1782
|
MatIconModule,
|
|
1676
|
-
|
|
1783
|
+
DbxInjectionComponentModule,
|
|
1677
1784
|
DbxListLayoutModule,
|
|
1678
1785
|
FormlyModule.forChild({
|
|
1679
1786
|
types: [
|
|
@@ -1682,7 +1789,7 @@ DbxFormFormlyPickableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion:
|
|
|
1682
1789
|
]
|
|
1683
1790
|
})
|
|
1684
1791
|
]] });
|
|
1685
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1792
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPickableFieldModule, decorators: [{
|
|
1686
1793
|
type: NgModule,
|
|
1687
1794
|
args: [{
|
|
1688
1795
|
imports: [
|
|
@@ -1698,10 +1805,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
1698
1805
|
MatAutocompleteModule,
|
|
1699
1806
|
MatListModule,
|
|
1700
1807
|
DbxDatePipeModule,
|
|
1701
|
-
|
|
1808
|
+
DbxRouterAnchorModule,
|
|
1702
1809
|
MatChipsModule,
|
|
1703
1810
|
MatIconModule,
|
|
1704
|
-
|
|
1811
|
+
DbxInjectionComponentModule,
|
|
1705
1812
|
DbxListLayoutModule,
|
|
1706
1813
|
FormlyModule.forChild({
|
|
1707
1814
|
types: [
|
|
@@ -1733,7 +1840,7 @@ function filterPickableItemFieldValuesByLabel(filterText, values) {
|
|
|
1733
1840
|
return of(filteredValues.map(x => x.value));
|
|
1734
1841
|
}
|
|
1735
1842
|
function sortPickableItemsByLabel(chips) {
|
|
1736
|
-
return chips.sort((a, b) => a.
|
|
1843
|
+
return chips.sort((a, b) => a.itemValue.label.localeCompare(b.itemValue.label));
|
|
1737
1844
|
}
|
|
1738
1845
|
function pickableItemChipField(config) {
|
|
1739
1846
|
const { key } = config;
|
|
@@ -1748,19 +1855,19 @@ function pickableItemListField(config) {
|
|
|
1748
1855
|
})), { pickableField: config }));
|
|
1749
1856
|
}
|
|
1750
1857
|
|
|
1751
|
-
const
|
|
1858
|
+
const DBX_SEARCHABLE_FIELD_COMPONENT_DATA_TOKEN = new InjectionToken('DbxSearchableField');
|
|
1752
1859
|
class DbxSearchableFieldAutocompleteItemComponent {
|
|
1753
1860
|
constructor() {
|
|
1754
1861
|
this._displayValue = new BehaviorSubject(undefined);
|
|
1755
1862
|
this.displayValue$ = this._displayValue.pipe(filterMaybe(), shareReplay$1(1));
|
|
1756
|
-
this.config$ = this.displayValue$.pipe(map
|
|
1863
|
+
this.config$ = this.displayValue$.pipe(map(x => {
|
|
1757
1864
|
const config = Object.assign(Object.assign({}, x.display), { providers: mergeIntoArray([{
|
|
1758
|
-
provide:
|
|
1865
|
+
provide: DBX_SEARCHABLE_FIELD_COMPONENT_DATA_TOKEN,
|
|
1759
1866
|
useValue: x
|
|
1760
1867
|
}], x.display.providers) });
|
|
1761
1868
|
return config;
|
|
1762
1869
|
}));
|
|
1763
|
-
this.anchor$ = this.displayValue$.pipe(map
|
|
1870
|
+
this.anchor$ = this.displayValue$.pipe(map(x => x.anchor));
|
|
1764
1871
|
}
|
|
1765
1872
|
set displayValue(displayValue) {
|
|
1766
1873
|
this._displayValue.next(displayValue);
|
|
@@ -1769,19 +1876,19 @@ class DbxSearchableFieldAutocompleteItemComponent {
|
|
|
1769
1876
|
this._displayValue.complete();
|
|
1770
1877
|
}
|
|
1771
1878
|
}
|
|
1772
|
-
DbxSearchableFieldAutocompleteItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1773
|
-
DbxSearchableFieldAutocompleteItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1879
|
+
DbxSearchableFieldAutocompleteItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxSearchableFieldAutocompleteItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1880
|
+
DbxSearchableFieldAutocompleteItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxSearchableFieldAutocompleteItemComponent, selector: "dbx-searchable-field-autocomplete-item", inputs: { displayValue: "displayValue" }, ngImport: i0, template: `
|
|
1774
1881
|
<dbx-anchor [block]="true" [anchor]="anchor$ | async">
|
|
1775
|
-
<dbx-
|
|
1882
|
+
<dbx-injection [config]="config$ | async"></dbx-injection>
|
|
1776
1883
|
</dbx-anchor>
|
|
1777
|
-
`, isInline: true, components: [{ type: i1$1.DbxAnchorComponent, selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { type: i2.
|
|
1778
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1884
|
+
`, isInline: true, components: [{ type: i1$1.DbxAnchorComponent, selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { type: i2.DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }], pipes: { "async": i5.AsyncPipe } });
|
|
1885
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxSearchableFieldAutocompleteItemComponent, decorators: [{
|
|
1779
1886
|
type: Component,
|
|
1780
1887
|
args: [{
|
|
1781
1888
|
selector: 'dbx-searchable-field-autocomplete-item',
|
|
1782
1889
|
template: `
|
|
1783
1890
|
<dbx-anchor [block]="true" [anchor]="anchor$ | async">
|
|
1784
|
-
<dbx-
|
|
1891
|
+
<dbx-injection [config]="config$ | async"></dbx-injection>
|
|
1785
1892
|
</dbx-anchor>
|
|
1786
1893
|
`
|
|
1787
1894
|
}]
|
|
@@ -1794,26 +1901,26 @@ class AbstractDbxSearchableFieldDisplayDirective {
|
|
|
1794
1901
|
this.displayValue = displayValue;
|
|
1795
1902
|
}
|
|
1796
1903
|
}
|
|
1797
|
-
AbstractDbxSearchableFieldDisplayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1798
|
-
AbstractDbxSearchableFieldDisplayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
1799
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1904
|
+
AbstractDbxSearchableFieldDisplayDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxSearchableFieldDisplayDirective, deps: [{ token: DBX_SEARCHABLE_FIELD_COMPONENT_DATA_TOKEN }], target: i0.ɵɵFactoryTarget.Directive });
|
|
1905
|
+
AbstractDbxSearchableFieldDisplayDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractDbxSearchableFieldDisplayDirective, ngImport: i0 });
|
|
1906
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxSearchableFieldDisplayDirective, decorators: [{
|
|
1800
1907
|
type: Directive
|
|
1801
1908
|
}], ctorParameters: function () {
|
|
1802
1909
|
return [{ type: undefined, decorators: [{
|
|
1803
1910
|
type: Inject,
|
|
1804
|
-
args: [
|
|
1911
|
+
args: [DBX_SEARCHABLE_FIELD_COMPONENT_DATA_TOKEN]
|
|
1805
1912
|
}] }];
|
|
1806
1913
|
} });
|
|
1807
1914
|
class DbxDefaultSearchableFieldDisplayComponent extends AbstractDbxSearchableFieldDisplayDirective {
|
|
1808
1915
|
}
|
|
1809
|
-
DbxDefaultSearchableFieldDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
1810
|
-
DbxDefaultSearchableFieldDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
1916
|
+
DbxDefaultSearchableFieldDisplayComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxDefaultSearchableFieldDisplayComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
1917
|
+
DbxDefaultSearchableFieldDisplayComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxDefaultSearchableFieldDisplayComponent, selector: "dbx-default-searchable-field-display", usesInheritance: true, ngImport: i0, template: `
|
|
1811
1918
|
<div class="dbx-default-searchable-field-display">
|
|
1812
1919
|
<span class="dbx-chip-label">{{ displayValue.label }}</span>
|
|
1813
1920
|
<span class="dbx-chip-sublabel" *ngIf="displayValue.sublabel">({{ displayValue.sublabel }})</span>
|
|
1814
1921
|
</div>
|
|
1815
1922
|
`, isInline: true, directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
1816
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
1923
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxDefaultSearchableFieldDisplayComponent, decorators: [{
|
|
1817
1924
|
type: Component,
|
|
1818
1925
|
args: [{
|
|
1819
1926
|
selector: 'dbx-default-searchable-field-display',
|
|
@@ -1844,17 +1951,17 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
1844
1951
|
this.formControl$ = this._formControlObs.pipe(filterMaybe());
|
|
1845
1952
|
this._displayHashMap = new BehaviorSubject(new Map());
|
|
1846
1953
|
this.inputValue$ = this.inputCtrl.valueChanges.pipe(startWith(this.inputCtrl.value));
|
|
1847
|
-
this.inputValueString$ = this.inputValue$.pipe(debounceTime(200), distinctUntilChanged
|
|
1848
|
-
this.searchResultsState$ = this.inputValueString$.pipe(switchMap
|
|
1954
|
+
this.inputValueString$ = this.inputValue$.pipe(debounceTime(200), distinctUntilChanged());
|
|
1955
|
+
this.searchResultsState$ = this.inputValueString$.pipe(switchMap((text) => ((text || this.searchOnEmptyText) ? this.search(text !== null && text !== void 0 ? text : '') : of([])).pipe(switchMap((x) => this.loadDisplayValuesForFieldValues(x)),
|
|
1849
1956
|
// Return begin loading to setup the loading state.
|
|
1850
1957
|
startWith(beginLoading()))), shareReplay$1(1));
|
|
1851
1958
|
this.singleValueSyncSubscription = new SubscriptionObject();
|
|
1852
1959
|
this.searchContext = new LoadingStateContextInstance({ obs: this.searchResultsState$, showLoadingOnNoValue: false });
|
|
1853
|
-
this.searchResults$ = this.searchResultsState$.pipe(map
|
|
1854
|
-
this._formControlValue = this.formControl$.pipe(switchMap
|
|
1855
|
-
this.values$ = this._formControlValue.pipe(map
|
|
1856
|
-
this.displayValuesState$ = this.values$.pipe(distinctUntilChanged
|
|
1857
|
-
this.displayValues$ = this.displayValuesState$.pipe(map
|
|
1960
|
+
this.searchResults$ = this.searchResultsState$.pipe(map(x => { var _a; return (_a = x === null || x === void 0 ? void 0 : x.value) !== null && _a !== void 0 ? _a : []; }));
|
|
1961
|
+
this._formControlValue = this.formControl$.pipe(switchMap(control => control.valueChanges.pipe(startWith(control.value), shareReplay$1(1))));
|
|
1962
|
+
this.values$ = this._formControlValue.pipe(map(convertMaybeToArray), shareReplay$1(1));
|
|
1963
|
+
this.displayValuesState$ = this.values$.pipe(distinctUntilChanged(), switchMap((values) => this.loadDisplayValuesForValues(values)), shareReplay$1(1));
|
|
1964
|
+
this.displayValues$ = this.displayValuesState$.pipe(map(x => { var _a; return (_a = x === null || x === void 0 ? void 0 : x.value) !== null && _a !== void 0 ? _a : []; }));
|
|
1858
1965
|
}
|
|
1859
1966
|
get name() {
|
|
1860
1967
|
var _a, _b;
|
|
@@ -1917,7 +2024,7 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
1917
2024
|
return this.loadDisplayValuesForFieldValues(values.map((value) => ({ value })));
|
|
1918
2025
|
}
|
|
1919
2026
|
loadDisplayValuesForFieldValues(values) {
|
|
1920
|
-
return this.getDisplayValuesForFieldValues(values).pipe(map
|
|
2027
|
+
return this.getDisplayValuesForFieldValues(values).pipe(map((displayValues) => successResult(displayValues)), startWith(beginLoading()), shareReplay$1(1));
|
|
1921
2028
|
}
|
|
1922
2029
|
getDisplayValuesForFieldValues(values) {
|
|
1923
2030
|
return this._displayHashMap.pipe(mergeMap((displayMap) => {
|
|
@@ -1930,16 +2037,16 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
1930
2037
|
if (needsDisplay.length > 0) {
|
|
1931
2038
|
// Go get the display value.
|
|
1932
2039
|
const displayValuesObs = this.displayForValue(needsDisplay.map(x => x[2]));
|
|
1933
|
-
const defaultDisplay =
|
|
2040
|
+
const defaultDisplay = mergeDbxInjectionComponentConfigs([this.defaultDisplay, this.display]);
|
|
1934
2041
|
const anchorForValue = this.useAnchor && this.anchorForValue;
|
|
1935
|
-
obs = displayValuesObs.pipe(first
|
|
2042
|
+
obs = displayValuesObs.pipe(first(), map((displayResults) => {
|
|
1936
2043
|
// Assign the default component classes to complete configuration.
|
|
1937
2044
|
displayResults.forEach(x => {
|
|
1938
2045
|
if (!x.display) {
|
|
1939
2046
|
x.display = defaultDisplay;
|
|
1940
2047
|
}
|
|
1941
2048
|
else {
|
|
1942
|
-
x.display =
|
|
2049
|
+
x.display = mergeDbxInjectionComponentConfigs([defaultDisplay, x.display]);
|
|
1943
2050
|
}
|
|
1944
2051
|
if (!x.anchor && anchorForValue) {
|
|
1945
2052
|
x.anchor = anchorForValue(x);
|
|
@@ -1965,7 +2072,6 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
1965
2072
|
}
|
|
1966
2073
|
ngOnInit() {
|
|
1967
2074
|
var _a;
|
|
1968
|
-
super.ngOnInit();
|
|
1969
2075
|
this._formControlObs.next(this.formControl);
|
|
1970
2076
|
if (this.searchableField.textInputValidator) {
|
|
1971
2077
|
this.inputCtrl.setValidators(this.searchableField.textInputValidator);
|
|
@@ -2067,9 +2173,9 @@ class AbstractDbxSearchableValueFieldDirective extends FieldType$1 {
|
|
|
2067
2173
|
this.formControl.markAsTouched();
|
|
2068
2174
|
}
|
|
2069
2175
|
}
|
|
2070
|
-
AbstractDbxSearchableValueFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2071
|
-
AbstractDbxSearchableValueFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
2072
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2176
|
+
AbstractDbxSearchableValueFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxSearchableValueFieldDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
2177
|
+
AbstractDbxSearchableValueFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractDbxSearchableValueFieldDirective, viewQueries: [{ propertyName: "textInput", first: true, predicate: ["textInput"], descendants: true }], usesInheritance: true, ngImport: i0 });
|
|
2178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractDbxSearchableValueFieldDirective, decorators: [{
|
|
2073
2179
|
type: Directive
|
|
2074
2180
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { textInput: [{
|
|
2075
2181
|
type: ViewChild,
|
|
@@ -2118,9 +2224,9 @@ class DbxSearchableChipFieldComponent extends AbstractDbxSearchableValueFieldDir
|
|
|
2118
2224
|
this._blur.next();
|
|
2119
2225
|
}
|
|
2120
2226
|
}
|
|
2121
|
-
DbxSearchableChipFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2122
|
-
DbxSearchableChipFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
2123
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2227
|
+
DbxSearchableChipFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxSearchableChipFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
2228
|
+
DbxSearchableChipFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxSearchableChipFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-searchable-field\">\n <!-- View -->\n <mat-chip-list [selectable]=\"!readonly\" [required]=\"required\" [disabled]=\"readonly\" #chipList>\n <mat-chip *ngFor=\"let displayValue of displayValues$ | async\" [removable]=\"true\"\n (removed)=\"removeWithDisplayValue(displayValue)\">\n <span class=\"dbx-chip-label\">{{ displayValue.label }}</span>\n <span class=\"dbx-chip-sublabel\" *ngIf=\"displayValue.sublabel\">{{ displayValue.sublabel }}</span>\n <mat-icon *ngIf=\"!readonly\" matChipRemove>cancel</mat-icon>\n </mat-chip>\n <input #textInput [name]=\"name\" [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\" [matAutocomplete]=\"auto\"\n autocomplete=\"{{ autocomplete }}\" [matAutocompleteDisabled]=\"readonly\" [matChipInputFor]=\"chipList\" (keydown)=\"tabPressedOnInput($event)\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"addChip($event)\" (blur)=\"onBlur()\">\n </mat-chip-list>\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto=\"matAutocomplete\"\n (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n</mat-autocomplete>\n", components: [{ type: i1$5.MatChipList, selector: "mat-chip-list", inputs: ["errorStateMatcher", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "aria-orientation", "selectable", "tabIndex"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i1$1.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { type: i4$3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: DbxSearchableFieldAutocompleteItemComponent, selector: "dbx-searchable-field-autocomplete-item", inputs: ["displayValue"] }], directives: [{ type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1$5.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$5.MatChipRemove, selector: "[matChipRemove]" }, { type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4$3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i1$5.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], pipes: { "async": i5.AsyncPipe } });
|
|
2229
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxSearchableChipFieldComponent, decorators: [{
|
|
2124
2230
|
type: Component,
|
|
2125
2231
|
args: [{ template: "<div class=\"dbx-searchable-field\">\n <!-- View -->\n <mat-chip-list [selectable]=\"!readonly\" [required]=\"required\" [disabled]=\"readonly\" #chipList>\n <mat-chip *ngFor=\"let displayValue of displayValues$ | async\" [removable]=\"true\"\n (removed)=\"removeWithDisplayValue(displayValue)\">\n <span class=\"dbx-chip-label\">{{ displayValue.label }}</span>\n <span class=\"dbx-chip-sublabel\" *ngIf=\"displayValue.sublabel\">{{ displayValue.sublabel }}</span>\n <mat-icon *ngIf=\"!readonly\" matChipRemove>cancel</mat-icon>\n </mat-chip>\n <input #textInput [name]=\"name\" [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\" [matAutocomplete]=\"auto\"\n autocomplete=\"{{ autocomplete }}\" [matAutocompleteDisabled]=\"readonly\" [matChipInputFor]=\"chipList\" (keydown)=\"tabPressedOnInput($event)\"\n [matChipInputSeparatorKeyCodes]=\"separatorKeysCodes\" (matChipInputTokenEnd)=\"addChip($event)\" (blur)=\"onBlur()\">\n </mat-chip-list>\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto=\"matAutocomplete\"\n (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n</mat-autocomplete>\n" }]
|
|
2126
2232
|
}] });
|
|
@@ -2137,7 +2243,7 @@ function makeMetaFilterSearchableFieldValueDisplayFn({ loadMetaForValues, makeDi
|
|
|
2137
2243
|
let allValues;
|
|
2138
2244
|
if (needLoading.length > 0) {
|
|
2139
2245
|
const loadingResult = loadMetaForValues(needLoading);
|
|
2140
|
-
allValues = loadingResult.pipe(map((result) => {
|
|
2246
|
+
allValues = loadingResult.pipe(map$1((result) => {
|
|
2141
2247
|
const resultMap = arrayToMap(result, (x) => x.value);
|
|
2142
2248
|
const mergedWithLoad = needLoading.map((x) => {
|
|
2143
2249
|
var _a;
|
|
@@ -2149,12 +2255,12 @@ function makeMetaFilterSearchableFieldValueDisplayFn({ loadMetaForValues, makeDi
|
|
|
2149
2255
|
meta });
|
|
2150
2256
|
}).filter(x => !x.meta);
|
|
2151
2257
|
return mergedWithLoad;
|
|
2152
|
-
}), map((result) => [...loaded, ...result]));
|
|
2258
|
+
}), map$1((result) => [...loaded, ...result]));
|
|
2153
2259
|
}
|
|
2154
2260
|
else {
|
|
2155
2261
|
allValues = of(loaded);
|
|
2156
2262
|
}
|
|
2157
|
-
return allValues.pipe(switchMap
|
|
2263
|
+
return allValues.pipe(switchMap((x) => makeDisplayForValues(x)));
|
|
2158
2264
|
};
|
|
2159
2265
|
}
|
|
2160
2266
|
function searchableStringChipField(config) {
|
|
@@ -2180,9 +2286,9 @@ function searchableTextField(config) {
|
|
|
2180
2286
|
class DbxSearchableTextFieldComponent extends AbstractDbxSearchableValueFieldDirective {
|
|
2181
2287
|
constructor() {
|
|
2182
2288
|
super(...arguments);
|
|
2183
|
-
this.selectedDisplayValue$ = this.displayValues$.pipe(map
|
|
2184
|
-
this.hasValue$ = this.selectedDisplayValue$.pipe(map
|
|
2185
|
-
this.showSelectedDisplayValue$ = this.selectedDisplayValue$.pipe(map
|
|
2289
|
+
this.selectedDisplayValue$ = this.displayValues$.pipe(map(x => x[0]), shareReplay$1(1), tapDetectChanges(this.cdRef));
|
|
2290
|
+
this.hasValue$ = this.selectedDisplayValue$.pipe(map(x => Boolean(x)));
|
|
2291
|
+
this.showSelectedDisplayValue$ = this.selectedDisplayValue$.pipe(map(x => this.showSelectedValue && Boolean(x)), distinctUntilChanged(), shareReplay$1(1), tapDetectChanges(this.cdRef));
|
|
2186
2292
|
this.multiSelect = false;
|
|
2187
2293
|
this._clearInputSub = new SubscriptionObject();
|
|
2188
2294
|
}
|
|
@@ -2210,17 +2316,17 @@ class DbxSearchableTextFieldComponent extends AbstractDbxSearchableValueFieldDir
|
|
|
2210
2316
|
this.addWithDisplayValue(e.option.value);
|
|
2211
2317
|
}
|
|
2212
2318
|
}
|
|
2213
|
-
DbxSearchableTextFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2214
|
-
DbxSearchableTextFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
2215
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2319
|
+
DbxSearchableTextFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxSearchableTextFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
2320
|
+
DbxSearchableTextFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxSearchableTextFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-searchable-text-field\"\n [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\">\n </dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div class=\"dbx-label\">Search</div>\n <!-- View -->\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\"\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"readonly\" autocomplete=\"{{ autocomplete }}\">\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n <!-- Add/Pick String Value -->\n <mat-option *ngIf=\"allowStringValues && (inputValue$ | async)\" [value]=\"{ value: (inputValue$ | async) }\">\n <p class=\"dbx-clear-hint text-center\">\"{{ inputValue$ | async }}\"</p>\n </mat-option>\n <!-- Show clear value -->\n <mat-option *ngIf=\"showClearValue && (hasValue$ | async)\" value=\"\">\n <p class=\"dbx-clear-hint text-center\">Clear</p>\n </mat-option>\n</mat-autocomplete>\n", components: [{ type: DbxSearchableFieldAutocompleteItemComponent, selector: "dbx-searchable-field-autocomplete-item", inputs: ["displayValue"] }, { type: i1$1.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "context", "loading", "error"] }, { type: i4$3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4$3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i5.AsyncPipe } });
|
|
2321
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxSearchableTextFieldComponent, decorators: [{
|
|
2216
2322
|
type: Component,
|
|
2217
2323
|
args: [{ template: "<div class=\"dbx-searchable-text-field\"\n [ngClass]=\"{ 'dbx-searchable-text-field-has-value': (hasValue$ | async), 'dbx-searchable-text-field-show-value': showSelectedValue }\">\n <!-- Result View -->\n <div class=\"dbx-searchable-text-field-value mat-option mat-option-text\" *ngIf=\"showSelectedDisplayValue$ | async\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"(selectedDisplayValue$ | async)!\">\n </dbx-searchable-field-autocomplete-item>\n </div>\n <div class=\"dbx-searchable-text-field-input\">\n <div class=\"dbx-label\">Search</div>\n <!-- View -->\n <input type=\"search\" [name]=\"name\" matInput #textInput [placeholder]=\"placeholder\" [formControl]=\"inputCtrl\"\n [matAutocomplete]=\"auto\" [matAutocompleteDisabled]=\"readonly\" autocomplete=\"{{ autocomplete }}\">\n <div class=\"searchable-field-form-loading\">\n <dbx-loading [linear]=\"true\" [context]=\"searchContext\"></dbx-loading>\n </div>\n </div>\n</div>\n\n<!-- Autocomplete -->\n<mat-autocomplete class=\"dbx-searchable-text-field-autocomplete\" #auto (optionSelected)=\"selected($event)\">\n <mat-option *ngFor=\"let displayValue of (searchResults$ | async)\" [value]=\"displayValue\">\n <dbx-searchable-field-autocomplete-item [displayValue]=\"displayValue\">\n </dbx-searchable-field-autocomplete-item>\n </mat-option>\n <!-- Add/Pick String Value -->\n <mat-option *ngIf=\"allowStringValues && (inputValue$ | async)\" [value]=\"{ value: (inputValue$ | async) }\">\n <p class=\"dbx-clear-hint text-center\">\"{{ inputValue$ | async }}\"</p>\n </mat-option>\n <!-- Show clear value -->\n <mat-option *ngIf=\"showClearValue && (hasValue$ | async)\" value=\"\">\n <p class=\"dbx-clear-hint text-center\">Clear</p>\n </mat-option>\n</mat-autocomplete>\n" }]
|
|
2218
2324
|
}] });
|
|
2219
2325
|
|
|
2220
2326
|
class DbxFormFormlySearchableFieldModule {
|
|
2221
2327
|
}
|
|
2222
|
-
DbxFormFormlySearchableFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2223
|
-
DbxFormFormlySearchableFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
2328
|
+
DbxFormFormlySearchableFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySearchableFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2329
|
+
DbxFormFormlySearchableFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySearchableFieldModule, declarations: [DbxSearchableChipFieldComponent,
|
|
2224
2330
|
DbxSearchableTextFieldComponent,
|
|
2225
2331
|
DbxSearchableFieldAutocompleteItemComponent,
|
|
2226
2332
|
DbxDefaultSearchableFieldDisplayComponent], imports: [CommonModule,
|
|
@@ -2235,12 +2341,12 @@ DbxFormFormlySearchableFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion
|
|
|
2235
2341
|
MatAutocompleteModule,
|
|
2236
2342
|
MatListModule,
|
|
2237
2343
|
DbxDatePipeModule,
|
|
2238
|
-
|
|
2344
|
+
DbxRouterAnchorModule,
|
|
2239
2345
|
MatChipsModule,
|
|
2240
2346
|
MatIconModule,
|
|
2241
|
-
|
|
2347
|
+
DbxInjectionComponentModule, i1$4.FormlyModule], exports: [DbxSearchableChipFieldComponent,
|
|
2242
2348
|
DbxSearchableTextFieldComponent] });
|
|
2243
|
-
DbxFormFormlySearchableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
2349
|
+
DbxFormFormlySearchableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySearchableFieldModule, imports: [[
|
|
2244
2350
|
CommonModule,
|
|
2245
2351
|
DbxTextModule,
|
|
2246
2352
|
DbxLoadingModule,
|
|
@@ -2253,10 +2359,10 @@ DbxFormFormlySearchableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion
|
|
|
2253
2359
|
MatAutocompleteModule,
|
|
2254
2360
|
MatListModule,
|
|
2255
2361
|
DbxDatePipeModule,
|
|
2256
|
-
|
|
2362
|
+
DbxRouterAnchorModule,
|
|
2257
2363
|
MatChipsModule,
|
|
2258
2364
|
MatIconModule,
|
|
2259
|
-
|
|
2365
|
+
DbxInjectionComponentModule,
|
|
2260
2366
|
FormlyModule.forChild({
|
|
2261
2367
|
types: [
|
|
2262
2368
|
{ name: 'searchablechipfield', component: DbxSearchableChipFieldComponent, wrappers: ['form-field'] },
|
|
@@ -2264,7 +2370,7 @@ DbxFormFormlySearchableFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion
|
|
|
2264
2370
|
]
|
|
2265
2371
|
})
|
|
2266
2372
|
]] });
|
|
2267
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2373
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySearchableFieldModule, decorators: [{
|
|
2268
2374
|
type: NgModule,
|
|
2269
2375
|
args: [{
|
|
2270
2376
|
imports: [
|
|
@@ -2280,10 +2386,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
2280
2386
|
MatAutocompleteModule,
|
|
2281
2387
|
MatListModule,
|
|
2282
2388
|
DbxDatePipeModule,
|
|
2283
|
-
|
|
2389
|
+
DbxRouterAnchorModule,
|
|
2284
2390
|
MatChipsModule,
|
|
2285
2391
|
MatIconModule,
|
|
2286
|
-
|
|
2392
|
+
DbxInjectionComponentModule,
|
|
2287
2393
|
FormlyModule.forChild({
|
|
2288
2394
|
types: [
|
|
2289
2395
|
{ name: 'searchablechipfield', component: DbxSearchableChipFieldComponent, wrappers: ['form-field'] },
|
|
@@ -2313,14 +2419,14 @@ function chipTextField(config) {
|
|
|
2313
2419
|
|
|
2314
2420
|
class DbxFormFormlySelectionModule {
|
|
2315
2421
|
}
|
|
2316
|
-
DbxFormFormlySelectionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2317
|
-
DbxFormFormlySelectionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
2422
|
+
DbxFormFormlySelectionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySelectionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2423
|
+
DbxFormFormlySelectionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySelectionModule, imports: [CommonModule], exports: [DbxFormFormlyPickableFieldModule,
|
|
2318
2424
|
DbxFormFormlySearchableFieldModule] });
|
|
2319
|
-
DbxFormFormlySelectionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
2425
|
+
DbxFormFormlySelectionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySelectionModule, imports: [[
|
|
2320
2426
|
CommonModule
|
|
2321
2427
|
], DbxFormFormlyPickableFieldModule,
|
|
2322
2428
|
DbxFormFormlySearchableFieldModule] });
|
|
2323
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2429
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlySelectionModule, decorators: [{
|
|
2324
2430
|
type: NgModule,
|
|
2325
2431
|
args: [{
|
|
2326
2432
|
imports: [
|
|
@@ -2361,10 +2467,9 @@ class DbxTextEditorFieldComponent extends FieldType$1 {
|
|
|
2361
2467
|
return this.to.description;
|
|
2362
2468
|
}
|
|
2363
2469
|
ngOnInit() {
|
|
2364
|
-
super.ngOnInit();
|
|
2365
2470
|
this._editor = new Editor({});
|
|
2366
2471
|
// Watch for value changes every second and update the pristine level.
|
|
2367
|
-
this._sub.subscription = this.editor.valueChanges.pipe(debounceTime$1(100), filter(_ => this.editor.view.hasFocus())).subscribe(() => {
|
|
2472
|
+
this._sub.subscription = this.editor.valueChanges.pipe(debounceTime$1(100), filter$1(_ => this.editor.view.hasFocus())).subscribe(() => {
|
|
2368
2473
|
this.formControl.updateValueAndValidity();
|
|
2369
2474
|
this.formControl.markAsDirty();
|
|
2370
2475
|
});
|
|
@@ -2378,8 +2483,8 @@ class DbxTextEditorFieldComponent extends FieldType$1 {
|
|
|
2378
2483
|
this._sub.destroy();
|
|
2379
2484
|
}
|
|
2380
2485
|
}
|
|
2381
|
-
DbxTextEditorFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2382
|
-
DbxTextEditorFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
2486
|
+
DbxTextEditorFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxTextEditorFieldComponent, deps: [{ token: i1$1.CompactContextStore, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
2487
|
+
DbxTextEditorFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxTextEditorFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
2383
2488
|
<div class="dbx-texteditor-field" [ngClass]="(compactClass$ | async) ?? ''" [formGroup]="formGroup">
|
|
2384
2489
|
<dbx-label *ngIf="label">{{ label }}</dbx-label>
|
|
2385
2490
|
<div class="dbx-texteditor-field-input">
|
|
@@ -2393,7 +2498,7 @@ DbxTextEditorFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.
|
|
|
2393
2498
|
</div>
|
|
2394
2499
|
</div>
|
|
2395
2500
|
`, isInline: true, components: [{ type: i1$1.DbxLabelComponent, selector: "dbx-label" }, { type: i2$3.NgxEditorComponent, selector: "ngx-editor", inputs: ["editor", "outputFormat", "placeholder"], outputs: ["focusOut", "focusIn"] }, { type: i2$3.MenuComponent, selector: "ngx-editor-menu", inputs: ["toolbar", "colorPresets", "disabled", "editor", "customMenuRef", "dropdownPlacement"] }, { type: i1$1.DbxHintComponent, selector: "dbx-hint" }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "async": i5.AsyncPipe } });
|
|
2396
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2501
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxTextEditorFieldComponent, decorators: [{
|
|
2397
2502
|
type: Component,
|
|
2398
2503
|
args: [{
|
|
2399
2504
|
template: `
|
|
@@ -2419,15 +2524,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
2419
2524
|
|
|
2420
2525
|
class DbxFormFormlyTextEditorFieldModule {
|
|
2421
2526
|
}
|
|
2422
|
-
DbxFormFormlyTextEditorFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2423
|
-
DbxFormFormlyTextEditorFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
2527
|
+
DbxFormFormlyTextEditorFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2528
|
+
DbxFormFormlyTextEditorFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, declarations: [DbxTextEditorFieldComponent], imports: [CommonModule,
|
|
2424
2529
|
DbxTextModule,
|
|
2425
2530
|
FormsModule,
|
|
2426
2531
|
ReactiveFormsModule,
|
|
2427
2532
|
NgxEditorModule,
|
|
2428
2533
|
MatFormFieldModule,
|
|
2429
2534
|
MatInputModule, i1$4.FormlyModule] });
|
|
2430
|
-
DbxFormFormlyTextEditorFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
2535
|
+
DbxFormFormlyTextEditorFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, imports: [[
|
|
2431
2536
|
CommonModule,
|
|
2432
2537
|
DbxTextModule,
|
|
2433
2538
|
FormsModule,
|
|
@@ -2441,7 +2546,7 @@ DbxFormFormlyTextEditorFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion
|
|
|
2441
2546
|
]
|
|
2442
2547
|
})
|
|
2443
2548
|
]] });
|
|
2444
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2549
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextEditorFieldModule, decorators: [{
|
|
2445
2550
|
type: NgModule,
|
|
2446
2551
|
args: [{
|
|
2447
2552
|
imports: [
|
|
@@ -2539,11 +2644,11 @@ class DbxFormRepeatArrayTypeComponent extends FieldArrayType {
|
|
|
2539
2644
|
}
|
|
2540
2645
|
labelForItem(field) {
|
|
2541
2646
|
var _a;
|
|
2542
|
-
return
|
|
2647
|
+
return getValueFromGetter((_a = this.repeatArrayField.labelForField) !== null && _a !== void 0 ? _a : '', field);
|
|
2543
2648
|
}
|
|
2544
2649
|
}
|
|
2545
|
-
DbxFormRepeatArrayTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2546
|
-
DbxFormRepeatArrayTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
2650
|
+
DbxFormRepeatArrayTypeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormRepeatArrayTypeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
2651
|
+
DbxFormRepeatArrayTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormRepeatArrayTypeComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: `
|
|
2547
2652
|
<div class="dbx-form-repeat-array">
|
|
2548
2653
|
<dbx-subsection [header]="label">
|
|
2549
2654
|
<!-- Fields -->
|
|
@@ -2566,8 +2671,8 @@ DbxFormRepeatArrayTypeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion:
|
|
|
2566
2671
|
</div>
|
|
2567
2672
|
</dbx-subsection>
|
|
2568
2673
|
</div>
|
|
2569
|
-
`, isInline: true, components: [{ type: i1$1.DbxSubSectionComponent, selector: "dbx-subsection" }, { type: i1$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i1$
|
|
2570
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2674
|
+
`, isInline: true, components: [{ type: i1$1.DbxSubSectionComponent, selector: "dbx-subsection" }, { type: i1$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i1$4.FormlyField, selector: "formly-field", inputs: ["field"] }], directives: [{ type: i5$1.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5$1.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i5$1.CdkDragPlaceholder, selector: "ng-template[cdkDragPlaceholder]", inputs: ["data"] }, { type: i1$1.DbxBarDirective, selector: "dbx-bar", inputs: ["color"] }, { type: i5$1.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i1$1.DbxButtonSpacerDirective, selector: "dbx-button-spacer,dbxButtonSpacer" }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
2675
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormRepeatArrayTypeComponent, decorators: [{
|
|
2571
2676
|
type: Component,
|
|
2572
2677
|
args: [{
|
|
2573
2678
|
template: `
|
|
@@ -2599,8 +2704,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
2599
2704
|
|
|
2600
2705
|
class DbxFormFormlyArrayFieldModule {
|
|
2601
2706
|
}
|
|
2602
|
-
DbxFormFormlyArrayFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2603
|
-
DbxFormFormlyArrayFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
2707
|
+
DbxFormFormlyArrayFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyArrayFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2708
|
+
DbxFormFormlyArrayFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyArrayFieldModule, declarations: [DbxFormRepeatArrayTypeComponent], imports: [CommonModule,
|
|
2604
2709
|
MatFormFieldModule,
|
|
2605
2710
|
ReactiveFormsModule,
|
|
2606
2711
|
MatDividerModule,
|
|
@@ -2610,7 +2715,7 @@ DbxFormFormlyArrayFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12
|
|
|
2610
2715
|
DbxSectionLayoutModule,
|
|
2611
2716
|
DbxBarLayoutModule,
|
|
2612
2717
|
DbxButtonModule, i1$4.FormlyModule] });
|
|
2613
|
-
DbxFormFormlyArrayFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
2718
|
+
DbxFormFormlyArrayFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyArrayFieldModule, imports: [[
|
|
2614
2719
|
CommonModule,
|
|
2615
2720
|
MatFormFieldModule,
|
|
2616
2721
|
ReactiveFormsModule,
|
|
@@ -2627,7 +2732,7 @@ DbxFormFormlyArrayFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12
|
|
|
2627
2732
|
]
|
|
2628
2733
|
})
|
|
2629
2734
|
]] });
|
|
2630
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2735
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyArrayFieldModule, decorators: [{
|
|
2631
2736
|
type: NgModule,
|
|
2632
2737
|
args: [{
|
|
2633
2738
|
imports: [
|
|
@@ -2669,10 +2774,10 @@ function repeatArrayField(config) {
|
|
|
2669
2774
|
|
|
2670
2775
|
class DbxFormFormlyBooleanFieldModule {
|
|
2671
2776
|
}
|
|
2672
|
-
DbxFormFormlyBooleanFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2673
|
-
DbxFormFormlyBooleanFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
2674
|
-
DbxFormFormlyBooleanFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
2675
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
2777
|
+
DbxFormFormlyBooleanFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyBooleanFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2778
|
+
DbxFormFormlyBooleanFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyBooleanFieldModule });
|
|
2779
|
+
DbxFormFormlyBooleanFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyBooleanFieldModule, imports: [[]] });
|
|
2780
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyBooleanFieldModule, decorators: [{
|
|
2676
2781
|
type: NgModule,
|
|
2677
2782
|
args: [{
|
|
2678
2783
|
imports: [],
|
|
@@ -2710,21 +2815,21 @@ export function acceptTermsField({ key = 'accept', label = 'Accept Terms', descr
|
|
|
2710
2815
|
}
|
|
2711
2816
|
*/
|
|
2712
2817
|
|
|
2713
|
-
var
|
|
2714
|
-
(function (
|
|
2818
|
+
var DbxDateTimeFieldTimeMode;
|
|
2819
|
+
(function (DbxDateTimeFieldTimeMode) {
|
|
2715
2820
|
/**
|
|
2716
2821
|
* Time is required.
|
|
2717
2822
|
*/
|
|
2718
|
-
|
|
2823
|
+
DbxDateTimeFieldTimeMode["REQUIRED"] = "required";
|
|
2719
2824
|
/**
|
|
2720
2825
|
* Time is optional.
|
|
2721
2826
|
*/
|
|
2722
|
-
|
|
2827
|
+
DbxDateTimeFieldTimeMode["OPTIONAL"] = "optional";
|
|
2723
2828
|
/**
|
|
2724
2829
|
* Time is permenantly off.
|
|
2725
2830
|
*/
|
|
2726
|
-
|
|
2727
|
-
})(
|
|
2831
|
+
DbxDateTimeFieldTimeMode["NONE"] = "none";
|
|
2832
|
+
})(DbxDateTimeFieldTimeMode || (DbxDateTimeFieldTimeMode = {}));
|
|
2728
2833
|
class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
2729
2834
|
constructor(cdRef) {
|
|
2730
2835
|
super();
|
|
@@ -2737,35 +2842,37 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2737
2842
|
this._formControlObs = new BehaviorSubject(undefined);
|
|
2738
2843
|
this.formControl$ = this._formControlObs.pipe(filterMaybe());
|
|
2739
2844
|
this._updateTime = new Subject();
|
|
2740
|
-
this.value$ = this.formControl$.pipe(switchMap(control => control.valueChanges.pipe(startWith$1(control.value))), distinctUntilChanged((a, b) => isSameMinute(a, b)), shareReplay(1));
|
|
2845
|
+
this.value$ = this.formControl$.pipe(switchMap$1(control => control.valueChanges.pipe(startWith$1(control.value))), distinctUntilChanged$1((a, b) => isSameMinute(a, b)), shareReplay(1));
|
|
2741
2846
|
/**
|
|
2742
2847
|
* Used to trigger/display visual updates (specifically on timeDistance, etc.).
|
|
2743
2848
|
*/
|
|
2744
|
-
this.displayValue$ = interval(10 * 1000).pipe(startWith$1(0), map(_ => new Date().getMinutes()), distinctUntilChanged(), tap((_) => this.cdRef.markForCheck()), switchMap(_ => this.value$), shareReplay(1));
|
|
2745
|
-
this.timeString$ = this.value$.pipe(filterMaybe(), map((x) => {
|
|
2849
|
+
this.displayValue$ = interval(10 * 1000).pipe(startWith$1(0), map$1(_ => new Date().getMinutes()), distinctUntilChanged$1(), tap((_) => this.cdRef.markForCheck()), switchMap$1(_ => this.value$), shareReplay(1));
|
|
2850
|
+
this.timeString$ = this.value$.pipe(filterMaybe(), map$1((x) => {
|
|
2746
2851
|
const timezone = guessCurrentTimezone();
|
|
2747
2852
|
const timeString = toReadableTimeString(x, timezone);
|
|
2748
2853
|
return timeString;
|
|
2749
2854
|
}));
|
|
2855
|
+
this.dateInputCtrl = new FormControl(new Date(), {
|
|
2856
|
+
validators: []
|
|
2857
|
+
});
|
|
2750
2858
|
this.timeInputCtrl = new FormControl('', {
|
|
2751
2859
|
validators: [
|
|
2752
|
-
Validators.pattern(/^([0-9]|(0[0-9])|(1[0-9])|(2[0-3]))(:)?([0-5][0-9])?(\s)?([apAP][Mm])?(\\s)*$/)
|
|
2860
|
+
Validators.pattern(/^(now)$|^([0-9]|(0[0-9])|(1[0-9])|(2[0-3]))(:)?([0-5][0-9])?(\s)?([apAP][Mm])?(\\s)*$/)
|
|
2753
2861
|
]
|
|
2754
2862
|
});
|
|
2755
|
-
this._date = new BehaviorSubject(new Date());
|
|
2756
2863
|
this._config = new BehaviorSubject(undefined);
|
|
2757
|
-
this.fullDay$ = this.fullDayControl$.pipe(switchMap(control => control.valueChanges.pipe(startWith$1(control.value))));
|
|
2758
|
-
this.showTimeInput$ = this.fullDay$.pipe(map(x => !x && this.timeMode !==
|
|
2759
|
-
this.showAddTime$ = this.showTimeInput$.pipe(map(x => !x && this.timeMode ===
|
|
2760
|
-
this.date$ = this.
|
|
2761
|
-
this.dateValue$ = merge(this.value$.pipe(
|
|
2762
|
-
this.timeInput$ = this._updateTime.pipe(debounceTime$1(5), map(_ => this.timeInputCtrl.value), distinctUntilChanged());
|
|
2864
|
+
this.fullDay$ = this.fullDayControl$.pipe(switchMap$1(control => control.valueChanges.pipe(startWith$1(control.value))));
|
|
2865
|
+
this.showTimeInput$ = this.fullDay$.pipe(map$1(x => !x && this.timeMode !== DbxDateTimeFieldTimeMode.NONE));
|
|
2866
|
+
this.showAddTime$ = this.showTimeInput$.pipe(map$1(x => !x && this.timeMode === DbxDateTimeFieldTimeMode.OPTIONAL), shareReplay(1));
|
|
2867
|
+
this.date$ = this.dateInputCtrl.valueChanges.pipe(startWith$1(this.dateInputCtrl.value), filterMaybe(), shareReplay(1));
|
|
2868
|
+
this.dateValue$ = merge(this.date$, this.value$.pipe(skipFirstMaybe())).pipe(map$1((x) => (x) ? startOfDay(x) : x), distinctUntilChanged$1((a, b) => Boolean(a && b) && isSameDay(a, b)), shareReplay(1));
|
|
2869
|
+
this.timeInput$ = this._updateTime.pipe(debounceTime$1(5), map$1(_ => this.timeInputCtrl.value), distinctUntilChanged$1());
|
|
2763
2870
|
this.config$ = this._config.pipe(switchMapMaybeDefault(), shareReplay(1));
|
|
2764
2871
|
this.rawDateTime$ = combineLatest([
|
|
2765
2872
|
this.dateValue$,
|
|
2766
2873
|
this.timeInput$.pipe(startWith$1(null)),
|
|
2767
2874
|
this.fullDay$
|
|
2768
|
-
]).pipe(map(([date, timeString, fullDay]) => {
|
|
2875
|
+
]).pipe(map$1(([date, timeString, fullDay]) => {
|
|
2769
2876
|
var _a;
|
|
2770
2877
|
let result;
|
|
2771
2878
|
if (date) {
|
|
@@ -2788,12 +2895,12 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2788
2895
|
}
|
|
2789
2896
|
}
|
|
2790
2897
|
return result;
|
|
2791
|
-
}), distinctUntilChanged((a, b) => Boolean(a && b) && isSameMinute(a, b)), shareReplay(1));
|
|
2898
|
+
}), distinctUntilChanged$1((a, b) => Boolean(a && b) && isSameMinute(a, b)), shareReplay(1));
|
|
2792
2899
|
this.timeOutput$ = combineLatest([
|
|
2793
2900
|
this.rawDateTime$,
|
|
2794
2901
|
this._offset,
|
|
2795
|
-
this.config$.pipe(distinctUntilChanged()),
|
|
2796
|
-
]).pipe(throttleTime(40, undefined, { leading: false, trailing: true }), distinctUntilChanged((current, next) => current[0] === next[0] && next[1] === 0), tap(([_, stepsOffset]) => (stepsOffset) ? this._offset.next(0) : 0), map(([date, stepsOffset, config]) => {
|
|
2902
|
+
this.config$.pipe(distinctUntilChanged$1()),
|
|
2903
|
+
]).pipe(throttleTime(40, undefined, { leading: false, trailing: true }), distinctUntilChanged$1((current, next) => current[0] === next[0] && next[1] === 0), tap(([_, stepsOffset]) => (stepsOffset) ? this._offset.next(0) : 0), map$1(([date, stepsOffset, config]) => {
|
|
2797
2904
|
if (date != null) {
|
|
2798
2905
|
const instance = new DateTimeMinuteInstance(Object.assign(Object.assign({ date }, config), { roundDownToMinute: true }));
|
|
2799
2906
|
date = instance.limit(date);
|
|
@@ -2801,10 +2908,10 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2801
2908
|
date = addMinutes(date, minutes);
|
|
2802
2909
|
}
|
|
2803
2910
|
return date;
|
|
2804
|
-
}), distinctUntilChanged((a, b) => Boolean(a && b) && isSameMinute(a, b)), shareReplay(1));
|
|
2911
|
+
}), distinctUntilChanged$1((a, b) => Boolean(a && b) && isSameMinute(a, b)), shareReplay(1));
|
|
2805
2912
|
}
|
|
2806
2913
|
get dateOnly() {
|
|
2807
|
-
return this.timeMode ===
|
|
2914
|
+
return this.timeMode === DbxDateTimeFieldTimeMode.NONE;
|
|
2808
2915
|
}
|
|
2809
2916
|
get dateTimeField() {
|
|
2810
2917
|
return this.field.dateTimeField;
|
|
@@ -2817,7 +2924,7 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2817
2924
|
}
|
|
2818
2925
|
get timeMode() {
|
|
2819
2926
|
var _a;
|
|
2820
|
-
return (this.timeOnly) ?
|
|
2927
|
+
return (this.timeOnly) ? DbxDateTimeFieldTimeMode.REQUIRED : ((_a = this.dateTimeField.timeMode) !== null && _a !== void 0 ? _a : DbxDateTimeFieldTimeMode.REQUIRED);
|
|
2821
2928
|
}
|
|
2822
2929
|
get description() {
|
|
2823
2930
|
var _a;
|
|
@@ -2825,7 +2932,6 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2825
2932
|
}
|
|
2826
2933
|
ngOnInit() {
|
|
2827
2934
|
var _a, _b;
|
|
2828
|
-
super.ngOnInit();
|
|
2829
2935
|
this._formControlObs.next(this.formControl);
|
|
2830
2936
|
this._config.next((_b = (_a = this.dateTimeField).getConfigObs) === null || _b === void 0 ? void 0 : _b.call(_a));
|
|
2831
2937
|
this._sub.subscription = this.timeOutput$.pipe(skipFirstMaybe()).subscribe((value) => {
|
|
@@ -2838,7 +2944,18 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2838
2944
|
if (!this.timeInputCtrl.value && x === '12:00AM') {
|
|
2839
2945
|
return;
|
|
2840
2946
|
}
|
|
2841
|
-
this.
|
|
2947
|
+
this.setTime(x);
|
|
2948
|
+
});
|
|
2949
|
+
// Watch for disabled changes so we can propogate them properly.
|
|
2950
|
+
this.formControl.registerOnDisabledChange((disabled) => {
|
|
2951
|
+
if (disabled) {
|
|
2952
|
+
this.dateInputCtrl.disable({ emitEvent: false });
|
|
2953
|
+
this.timeInputCtrl.disable({ emitEvent: false });
|
|
2954
|
+
}
|
|
2955
|
+
else {
|
|
2956
|
+
this.dateInputCtrl.enable({ emitEvent: false });
|
|
2957
|
+
this.timeInputCtrl.enable({ emitEvent: false });
|
|
2958
|
+
}
|
|
2842
2959
|
});
|
|
2843
2960
|
const isFullDayField = this.dateTimeField.fullDayFieldName;
|
|
2844
2961
|
let fullDayFieldCtrl;
|
|
@@ -2855,38 +2972,40 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2855
2972
|
}
|
|
2856
2973
|
this._fullDayControlObs.next(fullDayFieldCtrl);
|
|
2857
2974
|
switch (this.dateTimeField.timeMode) {
|
|
2858
|
-
case
|
|
2975
|
+
case DbxDateTimeFieldTimeMode.OPTIONAL:
|
|
2859
2976
|
break;
|
|
2860
|
-
case
|
|
2977
|
+
case DbxDateTimeFieldTimeMode.NONE:
|
|
2861
2978
|
this.removeTime();
|
|
2862
2979
|
break;
|
|
2863
|
-
case
|
|
2980
|
+
case DbxDateTimeFieldTimeMode.REQUIRED:
|
|
2864
2981
|
this.addTime();
|
|
2865
2982
|
break;
|
|
2866
2983
|
}
|
|
2867
2984
|
}
|
|
2868
2985
|
ngOnDestroy() {
|
|
2869
2986
|
super.ngOnDestroy();
|
|
2987
|
+
this._fullDayControlObs.complete();
|
|
2988
|
+
this._offset.complete();
|
|
2870
2989
|
this._formControlObs.complete();
|
|
2871
|
-
this._date.complete();
|
|
2872
|
-
this._updateTime.complete();
|
|
2873
2990
|
this._config.complete();
|
|
2991
|
+
this._updateTime.complete();
|
|
2874
2992
|
this._sub.destroy();
|
|
2875
2993
|
this._valueSub.destroy();
|
|
2876
2994
|
}
|
|
2877
|
-
dateTextChanged(e) {
|
|
2878
|
-
const value = this.dateInput.value;
|
|
2879
|
-
if (value == null) {
|
|
2880
|
-
this._date.next(undefined);
|
|
2881
|
-
}
|
|
2882
|
-
}
|
|
2883
2995
|
datePicked(event) {
|
|
2884
2996
|
const date = event.value;
|
|
2885
2997
|
if (date) {
|
|
2886
|
-
this.
|
|
2998
|
+
this.dateInputCtrl.setValue(date);
|
|
2887
2999
|
this._updateTime.next();
|
|
2888
3000
|
}
|
|
2889
3001
|
}
|
|
3002
|
+
setLogicalTime(time) {
|
|
3003
|
+
const date = dateFromLogicalDate(time);
|
|
3004
|
+
if (date) {
|
|
3005
|
+
const timeString = toLocalReadableTimeString(date);
|
|
3006
|
+
this.setTime(timeString);
|
|
3007
|
+
}
|
|
3008
|
+
}
|
|
2890
3009
|
setTime(time) {
|
|
2891
3010
|
this.timeInputCtrl.setValue(time);
|
|
2892
3011
|
this._offset.next(0);
|
|
@@ -2930,25 +3049,22 @@ class DbxDateTimeFieldComponent extends FieldType$1 {
|
|
|
2930
3049
|
this.setFullDay(true);
|
|
2931
3050
|
}
|
|
2932
3051
|
setFullDay(fullDay) {
|
|
2933
|
-
this.fullDayControl$.pipe(first()).subscribe((x) => {
|
|
3052
|
+
this.fullDayControl$.pipe(first$1()).subscribe((x) => {
|
|
2934
3053
|
x.setValue(fullDay);
|
|
2935
3054
|
});
|
|
2936
3055
|
}
|
|
2937
3056
|
}
|
|
2938
|
-
DbxDateTimeFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2939
|
-
DbxDateTimeFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
2940
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3057
|
+
DbxDateTimeFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxDateTimeFieldComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
3058
|
+
DbxDateTimeFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxDateTimeFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-datetime-field\" fxLayout=\"row wrap\" fxLayout.xs=\"column wrap\" fxLayoutAlign=\"space-evenly stretch\">\n <!-- Date -->\n <div class=\"dbx-datetime-row\" fxFlex.lt-sm=\"100\" [fxFlex]=\"dateOnly ? '100' : '50'\" *ngIf=\"showDateInput\">\n <ng-container *ngTemplateOutlet=\"dateInputTemplate\"></ng-container>\n </div>\n <!-- Time -->\n <div class=\"dbx-datetime-row\" fxFlex.lt-sm=\"100\" [fxFlex]=\"showDateInput ? '50' : '100'\">\n <ng-container *ngIf=\"showTimeInput$ | async\">\n <ng-container *ngTemplateOutlet=\"timeMenuAndInputTemplate\"></ng-container>\n </ng-container>\n <div class=\"add-time-button-wrapper\" *ngIf=\"showAddTime$ | async\">\n <button mat-button class=\"add-time-button\" ngClass.lt-sm=\"add-time-button-full\" (click)=\"addTime()\">\n <mat-icon>timer</mat-icon> Add Time\n </button>\n </div>\n </div>\n <div class=\"dbx-datetime-row dbx-datetime-hint-row\" fxFlex=\"100\">\n <div class=\"dbx-hint\" [ngSwitch]=\"fullDay$ | async\">\n <small *ngSwitchCase=\"true\"><b class=\"dbx-ok\">All Day</b> {{ dateValue$ | async | date:'fullDate' }}\n ({{ dateValue$ | async | dateDistance }})</small>\n <small *ngSwitchCase=\"false\">\n <ng-container *ngIf=\"value$ | async\"><b class=\"dbx-ok\">At</b> {{ displayValue$ | async | date:'medium' }}\n ({{ displayValue$ | async | timeDistance }})</ng-container>\n </small>\n </div>\n </div>\n</div>\n\n<!-- Date Input Template -->\n<ng-template #dateInputTemplate>\n <button mat-icon-button (click)=\"picker.open()\" [disabled]=\"disabled\">\n <mat-icon>calendar_today</mat-icon>\n </button>\n <mat-form-field class=\"dbx-datetime-row-field\">\n <mat-label>Date</mat-label>\n <input #dateInput matInput [formControl]=\"dateInputCtrl\" [matDatepicker]=\"picker\" (dateChange)=\"datePicked($event)\"\n [value]=\"dateValue$ | async\">\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n</ng-template>\n\n<!-- Time Menu/Input Template -->\n<ng-template #timeMenuAndInputTemplate>\n <button mat-icon-button [matMenuTriggerFor]=\"timemenu\" aria-label=\"opens the time menu\" [disabled]=\"disabled\">\n <mat-icon>timer</mat-icon>\n </button>\n <mat-menu #timemenu=\"matMenu\">\n <ng-container *ngIf=\"timeMode === 'optional'\">\n <button mat-menu-item (click)=\"removeTime()\">\n <span>Remove Time</span>\n </button>\n <mat-divider></mat-divider>\n </ng-container>\n <button mat-menu-item (click)=\"setLogicalTime('now')\">\n <span>Now</span>\n </button>\n <button mat-menu-item (click)=\"setTime('12:00AM')\">\n <span>Midnight</span>\n </button>\n <button mat-menu-item (click)=\"setTime('6:00AM')\">\n <span>6:00AM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('8:00AM')\">\n <span>8:00AM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('10:00AM')\">\n <span>10:00AM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('12:00PM')\">\n <span>Noon</span>\n </button>\n <button mat-menu-item (click)=\"setTime('2:00PM')\">\n <span>2:00PM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('5:00PM')\">\n <span>5:00PM</span>\n </button>\n </mat-menu>\n <mat-form-field class=\"dbx-datetime-row-field\">\n <mat-label>Time</mat-label>\n <input #timeInput matInput [formControl]=\"timeInputCtrl\" (focus)=\"focusTime()\" (focusout)=\"focusOutTime()\"\n (keydown)=\"keydownOnInput($event)\">\n </mat-form-field>\n</ng-template>\n", components: [{ type: i1$2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i3$2.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { type: i4$4.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { type: i5$2.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i5$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i4$2.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }], directives: [{ type: i3$1.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i3$1.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2$2.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i3$2.MatLabel, selector: "mat-label" }, { type: i6$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { type: i4$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4$4.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i5$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }], pipes: { "async": i5.AsyncPipe, "date": i5.DatePipe, "dateDistance": i2.DateDistancePipe, "timeDistance": i2.TimeDistancePipe } });
|
|
3059
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxDateTimeFieldComponent, decorators: [{
|
|
2941
3060
|
type: Component,
|
|
2942
|
-
args: [{ template: "<div class=\"dbx-datetime-field\" fxLayout=\"row wrap\" fxLayout.xs=\"column wrap\" fxLayoutAlign=\"space-evenly stretch\">\n <!-- Date -->\n <div class=\"dbx-datetime-row\" fxFlex.lt-sm=\"100\" [fxFlex]=\"dateOnly ? '100' : '50'\" *ngIf=\"showDateInput\">\n <ng-container *ngTemplateOutlet=\"dateInputTemplate\"></ng-container>\n </div>\n <!-- Time -->\n <div class=\"dbx-datetime-row\" fxFlex.lt-sm=\"100\" [fxFlex]=\"showDateInput ? '50' : '100'\">\n <ng-container *ngIf=\"showTimeInput$ | async\">\n <ng-container *ngTemplateOutlet=\"timeMenuAndInputTemplate\"></ng-container>\n </ng-container>\n <div class=\"add-time-button-wrapper\" *ngIf=\"showAddTime$ | async\">\n <button mat-button class=\"add-time-button\" ngClass.lt-sm=\"add-time-button-full\" (click)=\"addTime()\">\n <mat-icon>timer</mat-icon> Add Time\n </button>\n </div>\n </div>\n <div class=\"dbx-datetime-row dbx-datetime-hint-row\" fxFlex=\"100\">\n <div class=\"dbx-hint\" [ngSwitch]=\"fullDay$ | async\">\n <small *ngSwitchCase=\"true\"><b class=\"dbx-ok\">All Day</b> {{ dateValue$ | async | date:'fullDate' }}\n ({{ dateValue$ | async | dateDistance }})</small>\n <small *ngSwitchCase=\"false\">\n <ng-container *ngIf=\"value$ | async\"><b class=\"dbx-ok\">At</b> {{ displayValue$ | async | date:'medium' }}\n ({{ displayValue$ | async | timeDistance }})</ng-container>\n </small>\n </div>\n </div>\n</div>\n\n<!-- Date Input Template -->\n<ng-template #dateInputTemplate>\n <button mat-icon-button (click)=\"picker.open()\">\n <mat-icon>calendar_today</mat-icon>\n </button>\n <mat-form-field class=\"dbx-datetime-row-field\">\n <mat-label>Date</mat-label>\n <input #dateInput matInput [
|
|
2943
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }
|
|
2944
|
-
type: ViewChild,
|
|
2945
|
-
args: ['dateInput', { read: MatInput }]
|
|
2946
|
-
}] } });
|
|
3061
|
+
args: [{ template: "<div class=\"dbx-datetime-field\" fxLayout=\"row wrap\" fxLayout.xs=\"column wrap\" fxLayoutAlign=\"space-evenly stretch\">\n <!-- Date -->\n <div class=\"dbx-datetime-row\" fxFlex.lt-sm=\"100\" [fxFlex]=\"dateOnly ? '100' : '50'\" *ngIf=\"showDateInput\">\n <ng-container *ngTemplateOutlet=\"dateInputTemplate\"></ng-container>\n </div>\n <!-- Time -->\n <div class=\"dbx-datetime-row\" fxFlex.lt-sm=\"100\" [fxFlex]=\"showDateInput ? '50' : '100'\">\n <ng-container *ngIf=\"showTimeInput$ | async\">\n <ng-container *ngTemplateOutlet=\"timeMenuAndInputTemplate\"></ng-container>\n </ng-container>\n <div class=\"add-time-button-wrapper\" *ngIf=\"showAddTime$ | async\">\n <button mat-button class=\"add-time-button\" ngClass.lt-sm=\"add-time-button-full\" (click)=\"addTime()\">\n <mat-icon>timer</mat-icon> Add Time\n </button>\n </div>\n </div>\n <div class=\"dbx-datetime-row dbx-datetime-hint-row\" fxFlex=\"100\">\n <div class=\"dbx-hint\" [ngSwitch]=\"fullDay$ | async\">\n <small *ngSwitchCase=\"true\"><b class=\"dbx-ok\">All Day</b> {{ dateValue$ | async | date:'fullDate' }}\n ({{ dateValue$ | async | dateDistance }})</small>\n <small *ngSwitchCase=\"false\">\n <ng-container *ngIf=\"value$ | async\"><b class=\"dbx-ok\">At</b> {{ displayValue$ | async | date:'medium' }}\n ({{ displayValue$ | async | timeDistance }})</ng-container>\n </small>\n </div>\n </div>\n</div>\n\n<!-- Date Input Template -->\n<ng-template #dateInputTemplate>\n <button mat-icon-button (click)=\"picker.open()\" [disabled]=\"disabled\">\n <mat-icon>calendar_today</mat-icon>\n </button>\n <mat-form-field class=\"dbx-datetime-row-field\">\n <mat-label>Date</mat-label>\n <input #dateInput matInput [formControl]=\"dateInputCtrl\" [matDatepicker]=\"picker\" (dateChange)=\"datePicked($event)\"\n [value]=\"dateValue$ | async\">\n <mat-datepicker #picker></mat-datepicker>\n </mat-form-field>\n</ng-template>\n\n<!-- Time Menu/Input Template -->\n<ng-template #timeMenuAndInputTemplate>\n <button mat-icon-button [matMenuTriggerFor]=\"timemenu\" aria-label=\"opens the time menu\" [disabled]=\"disabled\">\n <mat-icon>timer</mat-icon>\n </button>\n <mat-menu #timemenu=\"matMenu\">\n <ng-container *ngIf=\"timeMode === 'optional'\">\n <button mat-menu-item (click)=\"removeTime()\">\n <span>Remove Time</span>\n </button>\n <mat-divider></mat-divider>\n </ng-container>\n <button mat-menu-item (click)=\"setLogicalTime('now')\">\n <span>Now</span>\n </button>\n <button mat-menu-item (click)=\"setTime('12:00AM')\">\n <span>Midnight</span>\n </button>\n <button mat-menu-item (click)=\"setTime('6:00AM')\">\n <span>6:00AM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('8:00AM')\">\n <span>8:00AM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('10:00AM')\">\n <span>10:00AM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('12:00PM')\">\n <span>Noon</span>\n </button>\n <button mat-menu-item (click)=\"setTime('2:00PM')\">\n <span>2:00PM</span>\n </button>\n <button mat-menu-item (click)=\"setTime('5:00PM')\">\n <span>5:00PM</span>\n </button>\n </mat-menu>\n <mat-form-field class=\"dbx-datetime-row-field\">\n <mat-label>Time</mat-label>\n <input #timeInput matInput [formControl]=\"timeInputCtrl\" (focus)=\"focusTime()\" (focusout)=\"focusOutTime()\"\n (keydown)=\"keydownOnInput($event)\">\n </mat-form-field>\n</ng-template>\n" }]
|
|
3062
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
|
|
2947
3063
|
|
|
2948
3064
|
class DbxFormFormlyDateFieldModule {
|
|
2949
3065
|
}
|
|
2950
|
-
DbxFormFormlyDateFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
2951
|
-
DbxFormFormlyDateFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3066
|
+
DbxFormFormlyDateFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyDateFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3067
|
+
DbxFormFormlyDateFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyDateFieldModule, declarations: [DbxDateTimeFieldComponent], imports: [CommonModule,
|
|
2952
3068
|
FormsModule,
|
|
2953
3069
|
MatInputModule,
|
|
2954
3070
|
MatDividerModule,
|
|
@@ -2962,7 +3078,7 @@ DbxFormFormlyDateFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.
|
|
|
2962
3078
|
MatChipsModule,
|
|
2963
3079
|
MatIconModule,
|
|
2964
3080
|
FlexLayoutModule, i1$4.FormlyModule], exports: [DbxFormFormlyWrapperModule] });
|
|
2965
|
-
DbxFormFormlyDateFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
3081
|
+
DbxFormFormlyDateFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyDateFieldModule, imports: [[
|
|
2966
3082
|
CommonModule,
|
|
2967
3083
|
FormsModule,
|
|
2968
3084
|
MatInputModule,
|
|
@@ -2983,7 +3099,7 @@ DbxFormFormlyDateFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.
|
|
|
2983
3099
|
]
|
|
2984
3100
|
})
|
|
2985
3101
|
], DbxFormFormlyWrapperModule] });
|
|
2986
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyDateFieldModule, decorators: [{
|
|
2987
3103
|
type: NgModule,
|
|
2988
3104
|
args: [{
|
|
2989
3105
|
imports: [
|
|
@@ -3023,13 +3139,13 @@ const TAKE_NEXT_UPCOMING_TIME_CONFIG_OBS = () => of({
|
|
|
3023
3139
|
/**
|
|
3024
3140
|
* Same as DateTime field but with the Date input hidden by default.
|
|
3025
3141
|
*/
|
|
3026
|
-
function timeOnlyField(config) {
|
|
3027
|
-
return dateTimeField(Object.assign(Object.assign({}, config), { timeMode:
|
|
3142
|
+
function timeOnlyField(config = {}) {
|
|
3143
|
+
return dateTimeField(Object.assign(Object.assign({}, config), { timeMode: DbxDateTimeFieldTimeMode.REQUIRED, timeOnly: true }));
|
|
3028
3144
|
}
|
|
3029
|
-
function dateTimeField(config) {
|
|
3030
|
-
const { key = 'date', timeMode =
|
|
3145
|
+
function dateTimeField(config = {}) {
|
|
3146
|
+
const { key = 'date', timeMode = DbxDateTimeFieldTimeMode.REQUIRED, fullDayFieldName, getConfigObs, timeOnly = false } = config;
|
|
3031
3147
|
const fieldConfig = formlyField(Object.assign(Object.assign({ key, type: 'datetime', dateTimeField: {
|
|
3032
|
-
timeMode: (timeOnly) ?
|
|
3148
|
+
timeMode: (timeOnly) ? DbxDateTimeFieldTimeMode.REQUIRED : timeMode,
|
|
3033
3149
|
fullDayFieldName,
|
|
3034
3150
|
getConfigObs,
|
|
3035
3151
|
timeOnly,
|
|
@@ -3058,10 +3174,10 @@ function staticEnumField({ key, label = '', placeholder = '', description, multi
|
|
|
3058
3174
|
|
|
3059
3175
|
class DbxFormFormlyEnumFieldModule {
|
|
3060
3176
|
}
|
|
3061
|
-
DbxFormFormlyEnumFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3062
|
-
DbxFormFormlyEnumFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3063
|
-
DbxFormFormlyEnumFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
3064
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3177
|
+
DbxFormFormlyEnumFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyEnumFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3178
|
+
DbxFormFormlyEnumFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyEnumFieldModule });
|
|
3179
|
+
DbxFormFormlyEnumFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyEnumFieldModule, imports: [[]] });
|
|
3180
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyEnumFieldModule, decorators: [{
|
|
3065
3181
|
type: NgModule,
|
|
3066
3182
|
args: [{
|
|
3067
3183
|
imports: [],
|
|
@@ -3086,17 +3202,17 @@ class DbxPhoneFieldComponent extends FieldType$1 {
|
|
|
3086
3202
|
return (_a = this.phoneField.onlyCountries) !== null && _a !== void 0 ? _a : [];
|
|
3087
3203
|
}
|
|
3088
3204
|
}
|
|
3089
|
-
DbxPhoneFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3090
|
-
DbxPhoneFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
3091
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3205
|
+
DbxPhoneFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPhoneFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
3206
|
+
DbxPhoneFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxPhoneFieldComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ngx-mat-intl-tel-input class=\"dbx-form-phone-field\" [required]=\"required\" [preferredCountries]=\"preferredCountries\"\n [enablePlaceholder]=\"false\" name=\"phone\" [formControl]=\"formControl\">\n</ngx-mat-intl-tel-input>\n", components: [{ type: i1$6.NgxMatIntlTelInputComponent, selector: "ngx-mat-intl-tel-input", inputs: ["preferredCountries", "enablePlaceholder", "inputPlaceholder", "cssClass", "name", "onlyCountries", "errorStateMatcher", "enableSearch", "searchPlaceholder", "describedBy", "format", "placeholder", "required", "disabled"], outputs: ["countryChanged"] }], directives: [{ type: i4$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
3207
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxPhoneFieldComponent, decorators: [{
|
|
3092
3208
|
type: Component,
|
|
3093
3209
|
args: [{ template: "<ngx-mat-intl-tel-input class=\"dbx-form-phone-field\" [required]=\"required\" [preferredCountries]=\"preferredCountries\"\n [enablePlaceholder]=\"false\" name=\"phone\" [formControl]=\"formControl\">\n</ngx-mat-intl-tel-input>\n" }]
|
|
3094
3210
|
}] });
|
|
3095
3211
|
|
|
3096
3212
|
class DbxFormFormlyPhoneFieldModule {
|
|
3097
3213
|
}
|
|
3098
|
-
DbxFormFormlyPhoneFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3099
|
-
DbxFormFormlyPhoneFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3214
|
+
DbxFormFormlyPhoneFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPhoneFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3215
|
+
DbxFormFormlyPhoneFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPhoneFieldModule, declarations: [DbxPhoneFieldComponent], imports: [CommonModule,
|
|
3100
3216
|
MatInputModule,
|
|
3101
3217
|
MatFormFieldModule,
|
|
3102
3218
|
FormsModule,
|
|
@@ -3107,7 +3223,7 @@ DbxFormFormlyPhoneFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12
|
|
|
3107
3223
|
MatIconModule,
|
|
3108
3224
|
FlexLayoutModule,
|
|
3109
3225
|
FormlyMatFormFieldModule, i1$4.FormlyModule] });
|
|
3110
|
-
DbxFormFormlyPhoneFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
3226
|
+
DbxFormFormlyPhoneFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPhoneFieldModule, imports: [[
|
|
3111
3227
|
CommonModule,
|
|
3112
3228
|
MatInputModule,
|
|
3113
3229
|
MatFormFieldModule,
|
|
@@ -3125,7 +3241,7 @@ DbxFormFormlyPhoneFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12
|
|
|
3125
3241
|
]
|
|
3126
3242
|
})
|
|
3127
3243
|
]] });
|
|
3128
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3244
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyPhoneFieldModule, decorators: [{
|
|
3129
3245
|
type: NgModule,
|
|
3130
3246
|
args: [{
|
|
3131
3247
|
imports: [
|
|
@@ -3160,6 +3276,7 @@ const SUBSECTION_WRAPPER_KEY = 'subsection';
|
|
|
3160
3276
|
const INFO_WRAPPER_KEY = 'info';
|
|
3161
3277
|
const FLEX_WRAPPER_KEY = 'flex';
|
|
3162
3278
|
const STYLE_WRAPPER_KEY = 'style';
|
|
3279
|
+
const WORKING_WRAPPER_KEY = 'working';
|
|
3163
3280
|
function addWrapperToFormlyFieldConfig(fieldConfig, wrapperKey, wrapperTemplateOptionsConfig) {
|
|
3164
3281
|
fieldConfig.templateOptions = Object.assign(Object.assign({}, fieldConfig.templateOptions), wrapperTemplateOptionsConfig);
|
|
3165
3282
|
return {
|
|
@@ -3198,6 +3315,11 @@ function styleWrapper(fieldConfig, styleWrapper) {
|
|
|
3198
3315
|
styleWrapper
|
|
3199
3316
|
});
|
|
3200
3317
|
}
|
|
3318
|
+
function workingWrapper(fieldConfig, workingWrapper) {
|
|
3319
|
+
return addWrapperToFormlyFieldConfig(fieldConfig, WORKING_WRAPPER_KEY, {
|
|
3320
|
+
workingWrapper
|
|
3321
|
+
});
|
|
3322
|
+
}
|
|
3201
3323
|
function checkIsFieldFlexLayoutGroupFieldConfig(input) {
|
|
3202
3324
|
if (input.field != null) {
|
|
3203
3325
|
return true;
|
|
@@ -3229,8 +3351,9 @@ function flexLayoutWrapper(fieldConfigs, { relative, breakpoint, size: defaultSi
|
|
|
3229
3351
|
}
|
|
3230
3352
|
|
|
3231
3353
|
function textField(config) {
|
|
3232
|
-
const { key, pattern, minLength, maxLength = 1000 } = config;
|
|
3354
|
+
const { key, pattern, minLength, maxLength = 1000, inputType: type = 'text' } = config;
|
|
3233
3355
|
return formlyField(Object.assign({ key, type: 'input' }, templateOptionsForFieldConfig(config, {
|
|
3356
|
+
type,
|
|
3234
3357
|
minLength,
|
|
3235
3358
|
maxLength,
|
|
3236
3359
|
pattern
|
|
@@ -3306,24 +3429,18 @@ function nameField({ key = 'name', label = 'Name', placeholder = 'John Doe', req
|
|
|
3306
3429
|
attributes
|
|
3307
3430
|
});
|
|
3308
3431
|
}
|
|
3309
|
-
function emailField(
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
email: {
|
|
3322
|
-
expression: (c) => !Validators.email(c),
|
|
3323
|
-
message: () => `Not a valid email address.`
|
|
3324
|
-
}
|
|
3325
|
-
},
|
|
3326
|
-
});
|
|
3432
|
+
function emailField(config = {}) {
|
|
3433
|
+
const { key = 'email', label = 'Email Address', placeholder = 'you@example.com' } = config;
|
|
3434
|
+
const emailFieldConfig = textField(Object.assign(Object.assign({}, config), { key,
|
|
3435
|
+
label,
|
|
3436
|
+
placeholder, inputType: 'email' }));
|
|
3437
|
+
emailFieldConfig.validators = {
|
|
3438
|
+
email: {
|
|
3439
|
+
expression: (c) => !Validators.email(c),
|
|
3440
|
+
message: () => `Not a valid email address.`
|
|
3441
|
+
}
|
|
3442
|
+
};
|
|
3443
|
+
return emailFieldConfig;
|
|
3327
3444
|
}
|
|
3328
3445
|
function cityField({ key = 'city', required = false } = {}) {
|
|
3329
3446
|
return textField({
|
|
@@ -3422,12 +3539,12 @@ function addressListField({ key = 'addresses', required = false, maxAddresses =
|
|
|
3422
3539
|
|
|
3423
3540
|
class DbxFormFormlyTextFieldModule {
|
|
3424
3541
|
}
|
|
3425
|
-
DbxFormFormlyTextFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3426
|
-
DbxFormFormlyTextFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3427
|
-
DbxFormFormlyTextFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
3542
|
+
DbxFormFormlyTextFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3543
|
+
DbxFormFormlyTextFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextFieldModule, imports: [FormlyMaterialModule], exports: [DbxFormFormlyWrapperModule] });
|
|
3544
|
+
DbxFormFormlyTextFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextFieldModule, imports: [[
|
|
3428
3545
|
FormlyMaterialModule
|
|
3429
3546
|
], DbxFormFormlyWrapperModule] });
|
|
3430
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3547
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyTextFieldModule, decorators: [{
|
|
3431
3548
|
type: NgModule,
|
|
3432
3549
|
args: [{
|
|
3433
3550
|
imports: [
|
|
@@ -3449,14 +3566,14 @@ function hiddenField({ key, required = false }) {
|
|
|
3449
3566
|
|
|
3450
3567
|
class DbxFormFormlyValueModule {
|
|
3451
3568
|
}
|
|
3452
|
-
DbxFormFormlyValueModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3453
|
-
DbxFormFormlyValueModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3569
|
+
DbxFormFormlyValueModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyValueModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3570
|
+
DbxFormFormlyValueModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyValueModule, imports: [CommonModule], exports: [DbxFormFormlyArrayFieldModule,
|
|
3454
3571
|
DbxFormFormlyBooleanFieldModule,
|
|
3455
3572
|
DbxFormFormlyDateFieldModule,
|
|
3456
3573
|
DbxFormFormlyEnumFieldModule,
|
|
3457
3574
|
DbxFormFormlyPhoneFieldModule,
|
|
3458
3575
|
DbxFormFormlyTextFieldModule] });
|
|
3459
|
-
DbxFormFormlyValueModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
3576
|
+
DbxFormFormlyValueModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyValueModule, imports: [[
|
|
3460
3577
|
CommonModule
|
|
3461
3578
|
], DbxFormFormlyArrayFieldModule,
|
|
3462
3579
|
DbxFormFormlyBooleanFieldModule,
|
|
@@ -3464,7 +3581,7 @@ DbxFormFormlyValueModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0"
|
|
|
3464
3581
|
DbxFormFormlyEnumFieldModule,
|
|
3465
3582
|
DbxFormFormlyPhoneFieldModule,
|
|
3466
3583
|
DbxFormFormlyTextFieldModule] });
|
|
3467
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyValueModule, decorators: [{
|
|
3468
3585
|
type: NgModule,
|
|
3469
3586
|
args: [{
|
|
3470
3587
|
imports: [
|
|
@@ -3484,14 +3601,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3484
3601
|
|
|
3485
3602
|
class DbxFormFormlyFieldModule {
|
|
3486
3603
|
}
|
|
3487
|
-
DbxFormFormlyFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3488
|
-
DbxFormFormlyFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3604
|
+
DbxFormFormlyFieldModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3605
|
+
DbxFormFormlyFieldModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyFieldModule, imports: [CommonModule], exports: [DbxFormFormlyChecklistItemFieldModule,
|
|
3489
3606
|
DbxFormFormlyComponentFieldModule,
|
|
3490
3607
|
DbxFormFormlySelectionModule,
|
|
3491
3608
|
DbxFormFormlyTextEditorFieldModule,
|
|
3492
3609
|
DbxFormFormlyValueModule,
|
|
3493
3610
|
DbxFormFormlyWrapperModule] });
|
|
3494
|
-
DbxFormFormlyFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
3611
|
+
DbxFormFormlyFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyFieldModule, imports: [[
|
|
3495
3612
|
CommonModule
|
|
3496
3613
|
], DbxFormFormlyChecklistItemFieldModule,
|
|
3497
3614
|
DbxFormFormlyComponentFieldModule,
|
|
@@ -3499,7 +3616,7 @@ DbxFormFormlyFieldModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0"
|
|
|
3499
3616
|
DbxFormFormlyTextEditorFieldModule,
|
|
3500
3617
|
DbxFormFormlyValueModule,
|
|
3501
3618
|
DbxFormFormlyWrapperModule] });
|
|
3502
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3619
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormFormlyFieldModule, decorators: [{
|
|
3503
3620
|
type: NgModule,
|
|
3504
3621
|
args: [{
|
|
3505
3622
|
imports: [
|
|
@@ -3517,6 +3634,147 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3517
3634
|
}]
|
|
3518
3635
|
}] });
|
|
3519
3636
|
|
|
3637
|
+
const FIELD_VALUES_ARE_EQUAL_VALIDATION_KEY = 'fieldValuesAreEqual';
|
|
3638
|
+
/**
|
|
3639
|
+
* Validator for validating all values within an object.
|
|
3640
|
+
*
|
|
3641
|
+
* This is useful for validating a control group where two or more values are expected to be the same, such as a password and a password verification field.
|
|
3642
|
+
*
|
|
3643
|
+
* @param config
|
|
3644
|
+
* @returns
|
|
3645
|
+
*/
|
|
3646
|
+
function fieldValuesAreEqualValidator(config = {}) {
|
|
3647
|
+
const { keysFilter, valuesFilter: inputValuesFilter, isEqual = ((a, b) => a === b), message = 'Field values are not equal.' } = config;
|
|
3648
|
+
const valuesFilter = inputValuesFilter !== null && inputValuesFilter !== void 0 ? inputValuesFilter : {
|
|
3649
|
+
valueFilter: KeyValueTypleValueFilter.NONE,
|
|
3650
|
+
keysFilter
|
|
3651
|
+
};
|
|
3652
|
+
return (control) => {
|
|
3653
|
+
const object = control.value;
|
|
3654
|
+
const values = valuesFromPOJO(object, valuesFilter);
|
|
3655
|
+
const isValid = allObjectsAreEqual(values, isEqual);
|
|
3656
|
+
if (isValid) {
|
|
3657
|
+
return null;
|
|
3658
|
+
}
|
|
3659
|
+
else {
|
|
3660
|
+
return {
|
|
3661
|
+
[FIELD_VALUES_ARE_EQUAL_VALIDATION_KEY]: { message }
|
|
3662
|
+
};
|
|
3663
|
+
}
|
|
3664
|
+
};
|
|
3665
|
+
}
|
|
3666
|
+
|
|
3667
|
+
;
|
|
3668
|
+
/**
|
|
3669
|
+
* Configured simple text password field.
|
|
3670
|
+
*
|
|
3671
|
+
* @param config
|
|
3672
|
+
* @returns
|
|
3673
|
+
*/
|
|
3674
|
+
function textPasswordField(config) {
|
|
3675
|
+
var _a;
|
|
3676
|
+
return textField(Object.assign(Object.assign({ key: 'password' }, config), { label: (_a = config === null || config === void 0 ? void 0 : config.label) !== null && _a !== void 0 ? _a : 'Password', inputType: 'password', required: true }));
|
|
3677
|
+
}
|
|
3678
|
+
/**
|
|
3679
|
+
* Configured verify field for a password.
|
|
3680
|
+
* @param config
|
|
3681
|
+
* @returns
|
|
3682
|
+
*/
|
|
3683
|
+
function textVerifyPasswordField(config) {
|
|
3684
|
+
return textPasswordField(Object.assign(Object.assign({ key: 'verifyPassword', label: 'Verify Password' }, config), { required: true }));
|
|
3685
|
+
}
|
|
3686
|
+
function textPasswordWithVerifyFieldGroup(config) {
|
|
3687
|
+
var _a, _b, _c, _d, _e;
|
|
3688
|
+
const passwordFieldConfig = textPasswordField(config.password);
|
|
3689
|
+
const verifyPasswordFieldKey = (_b = (_a = config.verifyPassword) === null || _a === void 0 ? void 0 : _a.key) !== null && _b !== void 0 ? _b : `verify${capitalizeFirstLetter(String(passwordFieldConfig.key))}`;
|
|
3690
|
+
const verifyPasswordField = textVerifyPasswordField(Object.assign(Object.assign(Object.assign({}, config.password), config.verifyPassword), { label: (_d = ((_c = config.verifyPassword) === null || _c === void 0 ? void 0 : _c.label)) !== null && _d !== void 0 ? _d : `Verify ${(_e = passwordFieldConfig.templateOptions) === null || _e === void 0 ? void 0 : _e.label}`, key: verifyPasswordFieldKey }));
|
|
3691
|
+
const validators = {
|
|
3692
|
+
validation: [{
|
|
3693
|
+
errorPath: verifyPasswordFieldKey,
|
|
3694
|
+
expression: fieldValuesAreEqualValidator({ keysFilter: [passwordFieldConfig.key, verifyPasswordField.key], message: 'The passwords do not match.' })
|
|
3695
|
+
}]
|
|
3696
|
+
};
|
|
3697
|
+
const groupFieldConfig = {
|
|
3698
|
+
validators,
|
|
3699
|
+
fieldGroup: [passwordFieldConfig, verifyPasswordField]
|
|
3700
|
+
};
|
|
3701
|
+
return groupFieldConfig;
|
|
3702
|
+
}
|
|
3703
|
+
;
|
|
3704
|
+
/**
|
|
3705
|
+
* Template for login field that takes in a username and password.
|
|
3706
|
+
*
|
|
3707
|
+
* @param param0
|
|
3708
|
+
* @returns
|
|
3709
|
+
*/
|
|
3710
|
+
function usernamePasswordLoginFields({ username, password, verifyPassword }) {
|
|
3711
|
+
let usernameField;
|
|
3712
|
+
let usernameFieldConfig = username;
|
|
3713
|
+
const defaultUsernameFieldConfig = { key: 'username', required: true };
|
|
3714
|
+
if (typeof username === 'string') {
|
|
3715
|
+
if (username === 'email') {
|
|
3716
|
+
usernameFieldConfig = {
|
|
3717
|
+
email: defaultUsernameFieldConfig
|
|
3718
|
+
};
|
|
3719
|
+
}
|
|
3720
|
+
else {
|
|
3721
|
+
usernameFieldConfig = {
|
|
3722
|
+
username: defaultUsernameFieldConfig
|
|
3723
|
+
};
|
|
3724
|
+
}
|
|
3725
|
+
}
|
|
3726
|
+
if (usernameFieldConfig.email) {
|
|
3727
|
+
usernameField = emailField(Object.assign(Object.assign({}, usernameFieldConfig.username), defaultUsernameFieldConfig));
|
|
3728
|
+
}
|
|
3729
|
+
else {
|
|
3730
|
+
usernameField = textField(Object.assign(Object.assign({}, usernameFieldConfig.username), defaultUsernameFieldConfig));
|
|
3731
|
+
}
|
|
3732
|
+
const passwordField = (verifyPassword) ? (textPasswordWithVerifyFieldGroup({ password, verifyPassword: (verifyPassword === true) ? undefined : verifyPassword })) : textPasswordField(password);
|
|
3733
|
+
return [
|
|
3734
|
+
usernameField,
|
|
3735
|
+
passwordField
|
|
3736
|
+
];
|
|
3737
|
+
}
|
|
3738
|
+
|
|
3739
|
+
const FIELD_VALUE_IS_AVAILABLE_VALIDATION_KEY = 'fieldValueIsAvailable';
|
|
3740
|
+
const FIELD_VALUE_IS_AVAILABLE_ERROR_VALIDATION_KEY = 'fieldValueIsAvailableError';
|
|
3741
|
+
/**
|
|
3742
|
+
* Validator for validating all values within an object.
|
|
3743
|
+
*
|
|
3744
|
+
* This is useful for validating a control group where two or more values are expected to be the same, such as a password and a password verification field.
|
|
3745
|
+
*
|
|
3746
|
+
* @param config
|
|
3747
|
+
* @returns
|
|
3748
|
+
*/
|
|
3749
|
+
function fieldValueIsAvailableValidator(config) {
|
|
3750
|
+
const { throttle = 400, checkValueIsAvailable, message = 'This value is not available.' } = config;
|
|
3751
|
+
const pusher = asyncPusherCache({
|
|
3752
|
+
throttle
|
|
3753
|
+
});
|
|
3754
|
+
return (control) => pusher(control.valueChanges)(control.value).pipe(switchMap$1((x) => checkValueIsAvailable(x)), map((isAvailable) => {
|
|
3755
|
+
if (isAvailable) {
|
|
3756
|
+
return null;
|
|
3757
|
+
}
|
|
3758
|
+
else {
|
|
3759
|
+
return {
|
|
3760
|
+
[FIELD_VALUE_IS_AVAILABLE_VALIDATION_KEY]: { message }
|
|
3761
|
+
};
|
|
3762
|
+
}
|
|
3763
|
+
}), catchError(() => of({
|
|
3764
|
+
[FIELD_VALUE_IS_AVAILABLE_ERROR_VALIDATION_KEY]: { message: 'An error occured.' }
|
|
3765
|
+
})), first$1());
|
|
3766
|
+
}
|
|
3767
|
+
|
|
3768
|
+
function textIsAvailableField(config) {
|
|
3769
|
+
const field = textField(config);
|
|
3770
|
+
field.asyncValidators = {
|
|
3771
|
+
validation: [{
|
|
3772
|
+
expression: fieldValueIsAvailableValidator(Object.assign(Object.assign({}, config), { message: config === null || config === void 0 ? void 0 : config.isNotAvailableErrorMessage })),
|
|
3773
|
+
}]
|
|
3774
|
+
};
|
|
3775
|
+
return workingWrapper(field, {});
|
|
3776
|
+
}
|
|
3777
|
+
|
|
3520
3778
|
/**
|
|
3521
3779
|
* Allows a directive to provide a formly context and form.
|
|
3522
3780
|
*/
|
|
@@ -3535,10 +3793,11 @@ class DbxFormlyContext {
|
|
|
3535
3793
|
this.lockSet = new LockSet();
|
|
3536
3794
|
this._fields = new BehaviorSubject(undefined);
|
|
3537
3795
|
this._initialValue = new BehaviorSubject(undefined);
|
|
3538
|
-
this._disabled = new BehaviorSubject(
|
|
3796
|
+
this._disabled = new BehaviorSubject(undefined);
|
|
3539
3797
|
this._delegate = new BehaviorSubject(undefined);
|
|
3540
3798
|
this.fields$ = this._fields.pipe(filterMaybe());
|
|
3541
|
-
this.
|
|
3799
|
+
this.disabled$ = this._disabled.pipe(filterMaybe());
|
|
3800
|
+
this.stream$ = this._delegate.pipe(distinctUntilChanged(), switchMap(x => (x) ? x.stream$ : of(DbxFormlyContext.INITIAL_STATE)), shareReplay$1(1));
|
|
3542
3801
|
}
|
|
3543
3802
|
destroy() {
|
|
3544
3803
|
this.lockSet.destroyOnNextUnlock(() => {
|
|
@@ -3553,8 +3812,8 @@ class DbxFormlyContext {
|
|
|
3553
3812
|
if (delegate != null) {
|
|
3554
3813
|
delegate.init({
|
|
3555
3814
|
fields: this.fields$,
|
|
3556
|
-
|
|
3557
|
-
|
|
3815
|
+
initialDisabled: this._disabled.value,
|
|
3816
|
+
initialValue: this._initialValue.value
|
|
3558
3817
|
});
|
|
3559
3818
|
}
|
|
3560
3819
|
this._delegate.next(delegate);
|
|
@@ -3573,7 +3832,7 @@ class DbxFormlyContext {
|
|
|
3573
3832
|
}
|
|
3574
3833
|
// MARK: FormComponent
|
|
3575
3834
|
getValue() {
|
|
3576
|
-
return this._delegate.pipe(filterMaybe(), switchMap
|
|
3835
|
+
return this._delegate.pipe(filterMaybe(), switchMap(x => x.getValue()), shareReplay$1(1));
|
|
3577
3836
|
}
|
|
3578
3837
|
setValue(value) {
|
|
3579
3838
|
this._initialValue.next(value);
|
|
@@ -3582,10 +3841,19 @@ class DbxFormlyContext {
|
|
|
3582
3841
|
}
|
|
3583
3842
|
}
|
|
3584
3843
|
isDisabled() {
|
|
3844
|
+
return BooleanStringKeyArrayUtilityInstance.isTrue(this.disabled);
|
|
3845
|
+
}
|
|
3846
|
+
get disabled() {
|
|
3585
3847
|
return this._disabled.value;
|
|
3586
3848
|
}
|
|
3587
|
-
|
|
3588
|
-
this._disabled.
|
|
3849
|
+
getDisabled() {
|
|
3850
|
+
return this._disabled.asObservable();
|
|
3851
|
+
}
|
|
3852
|
+
setDisabled(key, disabled = true) {
|
|
3853
|
+
this._disabled.next(BooleanStringKeyArrayUtilityInstance.set(this.disabled, key !== null && key !== void 0 ? key : DEFAULT_FORM_DISABLED_KEY, disabled));
|
|
3854
|
+
if (this._delegate.value) {
|
|
3855
|
+
this._delegate.value.setDisabled(key, disabled);
|
|
3856
|
+
}
|
|
3589
3857
|
}
|
|
3590
3858
|
resetForm() {
|
|
3591
3859
|
if (this._delegate.value) {
|
|
@@ -3598,7 +3866,7 @@ class DbxFormlyContext {
|
|
|
3598
3866
|
}
|
|
3599
3867
|
}
|
|
3600
3868
|
}
|
|
3601
|
-
DbxFormlyContext.INITIAL_STATE = { isComplete: false, state: DbxFormState.INITIALIZING };
|
|
3869
|
+
DbxFormlyContext.INITIAL_STATE = { isComplete: false, state: DbxFormState.INITIALIZING, status: 'PENDING' };
|
|
3602
3870
|
|
|
3603
3871
|
/**
|
|
3604
3872
|
* Abstract component for wrapping a form.
|
|
@@ -3611,7 +3879,7 @@ class AbstractFormlyFormDirective {
|
|
|
3611
3879
|
return this.context.isDisabled();
|
|
3612
3880
|
}
|
|
3613
3881
|
set disabled(disabled) {
|
|
3614
|
-
this.context.setDisabled(disabled);
|
|
3882
|
+
this.context.setDisabled(undefined, disabled);
|
|
3615
3883
|
}
|
|
3616
3884
|
ngOnDestroy() {
|
|
3617
3885
|
this.context.destroy();
|
|
@@ -3629,10 +3897,13 @@ class AbstractFormlyFormDirective {
|
|
|
3629
3897
|
clearValue() {
|
|
3630
3898
|
this.setValue({});
|
|
3631
3899
|
}
|
|
3900
|
+
setDisabled(key, disabled) {
|
|
3901
|
+
this.context.setDisabled(key, disabled);
|
|
3902
|
+
}
|
|
3632
3903
|
}
|
|
3633
|
-
AbstractFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3634
|
-
AbstractFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
3635
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3904
|
+
AbstractFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractFormlyFormDirective, deps: [{ token: DbxFormlyContext }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3905
|
+
AbstractFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractFormlyFormDirective, inputs: { disabled: "disabled" }, ngImport: i0 });
|
|
3906
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractFormlyFormDirective, decorators: [{
|
|
3636
3907
|
type: Directive
|
|
3637
3908
|
}], ctorParameters: function () { return [{ type: DbxFormlyContext }]; }, propDecorators: { disabled: [{
|
|
3638
3909
|
type: Input
|
|
@@ -3645,9 +3916,9 @@ class AbstractSyncFormlyFormDirective extends AbstractFormlyFormDirective {
|
|
|
3645
3916
|
this.context.fields = this.fields;
|
|
3646
3917
|
}
|
|
3647
3918
|
}
|
|
3648
|
-
AbstractSyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3649
|
-
AbstractSyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
3650
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3919
|
+
AbstractSyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractSyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
3920
|
+
AbstractSyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractSyncFormlyFormDirective, usesInheritance: true, ngImport: i0 });
|
|
3921
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractSyncFormlyFormDirective, decorators: [{
|
|
3651
3922
|
type: Directive
|
|
3652
3923
|
}] });
|
|
3653
3924
|
/**
|
|
@@ -3659,7 +3930,7 @@ class AbstractAsyncFormlyFormDirective extends AbstractFormlyFormDirective {
|
|
|
3659
3930
|
this._fieldsSub = new SubscriptionObject();
|
|
3660
3931
|
}
|
|
3661
3932
|
ngOnInit() {
|
|
3662
|
-
this._fieldsSub.subscription = this.fields$.pipe(distinctUntilChanged
|
|
3933
|
+
this._fieldsSub.subscription = this.fields$.pipe(distinctUntilChanged()).subscribe((fields) => {
|
|
3663
3934
|
this.context.fields = fields;
|
|
3664
3935
|
});
|
|
3665
3936
|
}
|
|
@@ -3668,9 +3939,9 @@ class AbstractAsyncFormlyFormDirective extends AbstractFormlyFormDirective {
|
|
|
3668
3939
|
this._fieldsSub.destroy();
|
|
3669
3940
|
}
|
|
3670
3941
|
}
|
|
3671
|
-
AbstractAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3672
|
-
AbstractAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
3673
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3942
|
+
AbstractAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractAsyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
3943
|
+
AbstractAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractAsyncFormlyFormDirective, usesInheritance: true, ngImport: i0 });
|
|
3944
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractAsyncFormlyFormDirective, decorators: [{
|
|
3674
3945
|
type: Directive
|
|
3675
3946
|
}] });
|
|
3676
3947
|
class AbstractConfigAsyncFormlyFormDirective extends AbstractAsyncFormlyFormDirective {
|
|
@@ -3690,9 +3961,9 @@ class AbstractConfigAsyncFormlyFormDirective extends AbstractAsyncFormlyFormDire
|
|
|
3690
3961
|
this._config.complete();
|
|
3691
3962
|
}
|
|
3692
3963
|
}
|
|
3693
|
-
AbstractConfigAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3694
|
-
AbstractConfigAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
3695
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3964
|
+
AbstractConfigAsyncFormlyFormDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractConfigAsyncFormlyFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
3965
|
+
AbstractConfigAsyncFormlyFormDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: AbstractConfigAsyncFormlyFormDirective, inputs: { config: "config" }, usesInheritance: true, ngImport: i0 });
|
|
3966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: AbstractConfigAsyncFormlyFormDirective, decorators: [{
|
|
3696
3967
|
type: Directive
|
|
3697
3968
|
}], propDecorators: { config: [{
|
|
3698
3969
|
type: Input
|
|
@@ -3718,9 +3989,9 @@ class DbxFormlyFieldsContextDirective extends AbstractAsyncFormlyFormDirective {
|
|
|
3718
3989
|
this._fields.complete();
|
|
3719
3990
|
}
|
|
3720
3991
|
}
|
|
3721
|
-
DbxFormlyFieldsContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3722
|
-
DbxFormlyFieldsContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2
|
|
3723
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
3992
|
+
DbxFormlyFieldsContextDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyFieldsContextDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
3993
|
+
DbxFormlyFieldsContextDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormlyFieldsContextDirective, selector: "[dbxFormlyFields]", inputs: { fields: ["dbxFormlyFields", "fields"] }, providers: ProvideFormlyContext(), usesInheritance: true, ngImport: i0 });
|
|
3994
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyFieldsContextDirective, decorators: [{
|
|
3724
3995
|
type: Directive,
|
|
3725
3996
|
args: [{
|
|
3726
3997
|
selector: '[dbxFormlyFields]',
|
|
@@ -3739,30 +4010,65 @@ class DbxFormlyFormComponent extends AbstractSubscriptionDirective {
|
|
|
3739
4010
|
super();
|
|
3740
4011
|
this.context = context;
|
|
3741
4012
|
this._fields = new BehaviorSubject(undefined);
|
|
3742
|
-
this._events = new BehaviorSubject({ isComplete: false, state: DbxFormState.INITIALIZING });
|
|
4013
|
+
this._events = new BehaviorSubject({ isComplete: false, state: DbxFormState.INITIALIZING, status: 'PENDING' });
|
|
4014
|
+
this._disabled = new BehaviorSubject(undefined);
|
|
3743
4015
|
this._reset = new BehaviorSubject(new Date());
|
|
3744
4016
|
this._forceUpdate = new Subject();
|
|
4017
|
+
this._disabledSub = new SubscriptionObject();
|
|
3745
4018
|
this.form = new FormGroup({});
|
|
3746
4019
|
this.model = {};
|
|
3747
4020
|
this.options = {};
|
|
3748
|
-
this.fields$ = this._fields.pipe(switchMapMaybeObs(), distinctUntilChanged
|
|
3749
|
-
this.stream$ = this._reset.pipe(switchMap
|
|
3750
|
-
|
|
3751
|
-
|
|
4021
|
+
this.fields$ = this._fields.pipe(switchMapMaybeObs(), distinctUntilChanged(), shareReplay$1(1));
|
|
4022
|
+
this.stream$ = this._reset.pipe(switchMap((lastResetAt) => this.form.valueChanges.pipe(startWith(0), distinctUntilChanged(), throttleTime$1(50, undefined, { leading: true, trailing: true }), scanCount(-1),
|
|
4023
|
+
// update on validation changes too. Does not count towards changes since last reset.
|
|
4024
|
+
switchMap(changesSinceLastReset => this.form.statusChanges.pipe(startWith(this.form.status), distinctUntilChanged()).pipe(map(_ => changesSinceLastReset))), map((changesSinceLastResetCount) => ({
|
|
4025
|
+
changesSinceLastResetCount,
|
|
4026
|
+
isFormValid: this.form.status !== 'PENDING' && this.form.valid,
|
|
4027
|
+
isFormDisabled: this.form.disabled
|
|
4028
|
+
})), scan((acc, next) => {
|
|
4029
|
+
// Pass forward valid if next was a disabled change/check, which changes angular form's isValid value.
|
|
4030
|
+
// If it was valid prior, then it should be valid now, unless we just reset, in which case it might not be valid.
|
|
4031
|
+
const valid = next.isFormValid || (next.isFormDisabled && acc.isFormValid && acc.changesSinceLastResetCount > 0);
|
|
4032
|
+
return {
|
|
4033
|
+
changesSinceLastResetCount: next.changesSinceLastResetCount,
|
|
4034
|
+
isFormValid: valid,
|
|
4035
|
+
isFormDisabled: next.isFormDisabled
|
|
4036
|
+
};
|
|
4037
|
+
}, {
|
|
4038
|
+
changesSinceLastResetCount: 0,
|
|
4039
|
+
isFormValid: false,
|
|
4040
|
+
isFormDisabled: false
|
|
4041
|
+
}), map(({ changesSinceLastResetCount, isFormValid, isFormDisabled }) => {
|
|
4042
|
+
const isReset = changesSinceLastResetCount <= 1; // first emission after reset is the first value.
|
|
4043
|
+
const complete = isFormValid;
|
|
3752
4044
|
const nextState = {
|
|
3753
4045
|
isComplete: complete,
|
|
3754
4046
|
state: (isReset) ? DbxFormState.RESET : DbxFormState.USED,
|
|
4047
|
+
status: this.form.status,
|
|
3755
4048
|
untouched: this.form.untouched,
|
|
3756
4049
|
pristine: this.form.pristine,
|
|
3757
4050
|
changesCount: changesSinceLastResetCount,
|
|
3758
4051
|
lastResetAt,
|
|
3759
|
-
|
|
4052
|
+
disabled: this.disabled,
|
|
4053
|
+
isDisabled: isFormDisabled
|
|
3760
4054
|
};
|
|
4055
|
+
// console.log('Change: ', nextState);
|
|
3761
4056
|
return nextState;
|
|
3762
4057
|
}))), shareReplay$1(1));
|
|
3763
4058
|
}
|
|
3764
4059
|
ngOnInit() {
|
|
3765
4060
|
this.context.setDelegate(this);
|
|
4061
|
+
this._disabledSub.subscription = this._disabled.pipe(distinctUntilChanged()).subscribe((disabled) => {
|
|
4062
|
+
const isDisabled = BooleanStringKeyArrayUtilityInstance.isTrue(disabled);
|
|
4063
|
+
if (this.form.disabled !== isDisabled) {
|
|
4064
|
+
if (isDisabled) {
|
|
4065
|
+
this.form.disable({ emitEvent: true });
|
|
4066
|
+
}
|
|
4067
|
+
else {
|
|
4068
|
+
this.form.enable({ emitEvent: true });
|
|
4069
|
+
}
|
|
4070
|
+
}
|
|
4071
|
+
});
|
|
3766
4072
|
}
|
|
3767
4073
|
ngOnDestroy() {
|
|
3768
4074
|
this.context.lockSet.onNextUnlock(() => {
|
|
@@ -3772,11 +4078,14 @@ class DbxFormlyFormComponent extends AbstractSubscriptionDirective {
|
|
|
3772
4078
|
this._fields.complete();
|
|
3773
4079
|
this._reset.complete();
|
|
3774
4080
|
this._forceUpdate.complete();
|
|
4081
|
+
this._disabled.complete();
|
|
4082
|
+
this._disabledSub.destroy();
|
|
3775
4083
|
});
|
|
3776
4084
|
}
|
|
3777
4085
|
// MARK: Delegate
|
|
3778
4086
|
init(initialize) {
|
|
3779
4087
|
this._fields.next(initialize.fields);
|
|
4088
|
+
this._disabled.next(initialize.initialDisabled);
|
|
3780
4089
|
}
|
|
3781
4090
|
getValue() {
|
|
3782
4091
|
return of(this.form.value);
|
|
@@ -3799,37 +4108,39 @@ class DbxFormlyFormComponent extends AbstractSubscriptionDirective {
|
|
|
3799
4108
|
this.form.markAsPristine();
|
|
3800
4109
|
}
|
|
3801
4110
|
}, 500);
|
|
4111
|
+
// ping reset
|
|
4112
|
+
this.resetForm();
|
|
3802
4113
|
}
|
|
3803
4114
|
resetForm() {
|
|
3804
4115
|
if (this.options.resetModel) {
|
|
3805
4116
|
this.options.resetModel();
|
|
3806
4117
|
}
|
|
4118
|
+
this._reset.next(new Date());
|
|
4119
|
+
}
|
|
4120
|
+
get isDisabled() {
|
|
4121
|
+
return BooleanStringKeyArrayUtilityInstance.isTrue(this.disabled);
|
|
3807
4122
|
}
|
|
3808
4123
|
get disabled() {
|
|
3809
|
-
return this.
|
|
4124
|
+
return this._disabled.value;
|
|
3810
4125
|
}
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
else {
|
|
3817
|
-
this.form.enable({ emitEvent: true });
|
|
3818
|
-
}
|
|
3819
|
-
}
|
|
4126
|
+
getDisabled() {
|
|
4127
|
+
return this._disabled.asObservable();
|
|
4128
|
+
}
|
|
4129
|
+
setDisabled(key, disabled = true) {
|
|
4130
|
+
this._disabled.next(BooleanStringKeyArrayUtilityInstance.set(this.disabled, key !== null && key !== void 0 ? key : DEFAULT_FORM_DISABLED_KEY, disabled));
|
|
3820
4131
|
}
|
|
3821
4132
|
// MARK: Update
|
|
3822
4133
|
forceFormUpdate() {
|
|
3823
4134
|
this._forceUpdate.next();
|
|
3824
4135
|
}
|
|
3825
4136
|
}
|
|
3826
|
-
DbxFormlyFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3827
|
-
DbxFormlyFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
4137
|
+
DbxFormlyFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyFormComponent, deps: [{ token: DbxFormlyContext }], target: i0.ɵɵFactoryTarget.Component });
|
|
4138
|
+
DbxFormlyFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormlyFormComponent, selector: "dbx-formly", host: { classAttribute: "dbx-formly" }, providers: ProvideDbxMutableForm(DbxFormlyFormComponent), exportAs: ["formly"], usesInheritance: true, ngImport: i0, template: `
|
|
3828
4139
|
<form [formGroup]="form" class="dbx-formly">
|
|
3829
4140
|
<formly-form [form]="form" [fields]="(fields$ | async) ?? []" [model]="model"></formly-form>
|
|
3830
4141
|
</form>
|
|
3831
4142
|
`, isInline: true, components: [{ type: i1$4.FormlyForm, selector: "formly-form", inputs: ["form", "model", "fields", "options"], outputs: ["modelChange"] }], directives: [{ type: i4$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], pipes: { "async": i5.AsyncPipe } });
|
|
3832
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
4143
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyFormComponent, decorators: [{
|
|
3833
4144
|
type: Component,
|
|
3834
4145
|
args: [{
|
|
3835
4146
|
selector: 'dbx-formly',
|
|
@@ -3848,8 +4159,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3848
4159
|
|
|
3849
4160
|
class DbxFormlyModule {
|
|
3850
4161
|
}
|
|
3851
|
-
DbxFormlyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3852
|
-
DbxFormlyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
4162
|
+
DbxFormlyModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4163
|
+
DbxFormlyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, declarations: [DbxFormlyFormComponent,
|
|
3853
4164
|
DbxFormlyFieldsContextDirective], imports: [CommonModule,
|
|
3854
4165
|
FormsModule,
|
|
3855
4166
|
ReactiveFormsModule,
|
|
@@ -3861,8 +4172,9 @@ DbxFormlyModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
|
|
|
3861
4172
|
// Directives
|
|
3862
4173
|
DbxFormlyFormComponent,
|
|
3863
4174
|
DbxFormlyFieldsContextDirective
|
|
4175
|
+
// Helper Modules
|
|
3864
4176
|
] });
|
|
3865
|
-
DbxFormlyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
4177
|
+
DbxFormlyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, imports: [[
|
|
3866
4178
|
CommonModule,
|
|
3867
4179
|
FormsModule,
|
|
3868
4180
|
ReactiveFormsModule,
|
|
@@ -3872,7 +4184,7 @@ DbxFormlyModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version
|
|
|
3872
4184
|
// Modules (?)
|
|
3873
4185
|
FormsModule,
|
|
3874
4186
|
ReactiveFormsModule] });
|
|
3875
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
4187
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormlyModule, decorators: [{
|
|
3876
4188
|
type: NgModule,
|
|
3877
4189
|
args: [{
|
|
3878
4190
|
imports: [
|
|
@@ -3893,6 +4205,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3893
4205
|
// Directives
|
|
3894
4206
|
DbxFormlyFormComponent,
|
|
3895
4207
|
DbxFormlyFieldsContextDirective
|
|
4208
|
+
// Helper Modules
|
|
3896
4209
|
]
|
|
3897
4210
|
}]
|
|
3898
4211
|
}] });
|
|
@@ -3902,9 +4215,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3902
4215
|
*/
|
|
3903
4216
|
class DbxFormSpacerComponent {
|
|
3904
4217
|
}
|
|
3905
|
-
DbxFormSpacerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3906
|
-
DbxFormSpacerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2
|
|
3907
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
4218
|
+
DbxFormSpacerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSpacerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4219
|
+
DbxFormSpacerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.2", type: DbxFormSpacerComponent, selector: "dbx-form-spacer", ngImport: i0, template: `<div class="dbx-form-spacer"></div>`, isInline: true });
|
|
4220
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormSpacerComponent, decorators: [{
|
|
3908
4221
|
type: Component,
|
|
3909
4222
|
args: [{
|
|
3910
4223
|
selector: 'dbx-form-spacer',
|
|
@@ -3914,12 +4227,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3914
4227
|
|
|
3915
4228
|
class DbxFormLayoutModule {
|
|
3916
4229
|
}
|
|
3917
|
-
DbxFormLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3918
|
-
DbxFormLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
3919
|
-
DbxFormLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
4230
|
+
DbxFormLayoutModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4231
|
+
DbxFormLayoutModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, declarations: [DbxFormSpacerComponent], imports: [CommonModule], exports: [DbxFormSpacerComponent] });
|
|
4232
|
+
DbxFormLayoutModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, imports: [[
|
|
3920
4233
|
CommonModule
|
|
3921
4234
|
]] });
|
|
3922
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
4235
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormLayoutModule, decorators: [{
|
|
3923
4236
|
type: NgModule,
|
|
3924
4237
|
args: [{
|
|
3925
4238
|
imports: [
|
|
@@ -3974,14 +4287,14 @@ function IsInRange(min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER)
|
|
|
3974
4287
|
|
|
3975
4288
|
class DbxFormExtensionModule {
|
|
3976
4289
|
}
|
|
3977
|
-
DbxFormExtensionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2
|
|
3978
|
-
DbxFormExtensionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2
|
|
4290
|
+
DbxFormExtensionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormExtensionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4291
|
+
DbxFormExtensionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormExtensionModule, exports: [DbxFormModule,
|
|
3979
4292
|
DbxFormlyModule,
|
|
3980
4293
|
DbxFormFormlyFieldModule] });
|
|
3981
|
-
DbxFormExtensionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2
|
|
4294
|
+
DbxFormExtensionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormExtensionModule, imports: [DbxFormModule,
|
|
3982
4295
|
DbxFormlyModule,
|
|
3983
4296
|
DbxFormFormlyFieldModule] });
|
|
3984
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2
|
|
4297
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: DbxFormExtensionModule, decorators: [{
|
|
3985
4298
|
type: NgModule,
|
|
3986
4299
|
args: [{
|
|
3987
4300
|
exports: [
|
|
@@ -3996,5 +4309,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
3996
4309
|
* Generated bundle index. Do not edit.
|
|
3997
4310
|
*/
|
|
3998
4311
|
|
|
3999
|
-
export { ADDRESS_CITY_MAX_LENGTH, ADDRESS_COUNTRY_MAX_LENGTH, ADDRESS_LINE_MAX_LENGTH, ADDRESS_STATE_MAX_LENGTH, ADDRESS_ZIP_MAX_LENGTH, APP_ACTION_FORM_DISABLED_KEY, AbstractAsyncFormlyFormDirective, AbstractConfigAsyncFormlyFormDirective, AbstractDbxPickableItemFieldDirective, AbstractDbxSearchableFieldDisplayDirective, AbstractDbxSearchableValueFieldDirective,
|
|
4312
|
+
export { ADDRESS_CITY_MAX_LENGTH, ADDRESS_COUNTRY_MAX_LENGTH, ADDRESS_LINE_MAX_LENGTH, ADDRESS_STATE_MAX_LENGTH, ADDRESS_ZIP_MAX_LENGTH, APP_ACTION_FORM_DISABLED_KEY, AbstractAsyncFormlyFormDirective, AbstractConfigAsyncFormlyFormDirective, AbstractDbxPickableItemFieldDirective, AbstractDbxSearchableFieldDisplayDirective, AbstractDbxSearchableValueFieldDirective, AbstractFormExpandableSectionWrapperDirective, AbstractFormlyFormDirective, AbstractSyncFormlyFormDirective, AutoTouchFieldWrapperComponent, ChecklistItemFieldDataSetBuilder, DBX_SEARCHABLE_FIELD_COMPONENT_DATA_TOKEN, DEFAULT_FORM_DISABLED_KEY, DEFAULT_HAS_VALUE_FN, DEFAULT_PREFERRED_COUNTRIES, DOMAIN_NAME_REGEX, DbxActionFormDirective, DbxActionFormSafetyDirective, DbxChecklistItemContentComponent, DbxChecklistItemFieldComponent, DbxDateTimeFieldComponent, DbxDateTimeFieldTimeMode, DbxDefaultChecklistItemFieldDisplayComponent, DbxDefaultSearchableFieldDisplayComponent, DbxForm, DbxFormActionModule, DbxFormActionTransitionModule, DbxFormComponentFieldComponent, DbxFormExpandWrapperComponent, DbxFormExtensionModule, DbxFormFlexWrapperComponent, DbxFormFormlyArrayFieldModule, DbxFormFormlyBooleanFieldModule, DbxFormFormlyChecklistItemFieldModule, DbxFormFormlyComponentFieldModule, DbxFormFormlyDateFieldModule, DbxFormFormlyEnumFieldModule, DbxFormFormlyFieldModule, DbxFormFormlyPhoneFieldModule, DbxFormFormlyPickableFieldModule, DbxFormFormlySearchableFieldModule, DbxFormFormlySelectionModule, DbxFormFormlyTextEditorFieldModule, DbxFormFormlyTextFieldModule, DbxFormFormlyValueModule, DbxFormFormlyWrapperModule, DbxFormInfoWrapperComponent, DbxFormIoModule, DbxFormLayoutModule, DbxFormLoadingSourceDirective, DbxFormModule, DbxFormRepeatArrayTypeComponent, DbxFormSectionWrapperComponent, DbxFormSourceDirective, DbxFormSpacerComponent, DbxFormState, DbxFormSubsectionWrapperComponent, DbxFormToggleWrapperComponent, DbxFormValueChangesDirective, DbxFormWorkingWrapperComponent, DbxFormlyContext, DbxFormlyFieldsContextDirective, DbxFormlyFormComponent, DbxFormlyModule, DbxMutableForm, DbxPhoneFieldComponent, DbxPickableChipListFieldComponent, DbxPickableListFieldComponent, DbxPickableListFieldItemListComponent, DbxPickableListFieldItemListViewComponent, DbxPickableListFieldItemListViewItemComponent, DbxSearchableChipFieldComponent, DbxSearchableFieldAutocompleteItemComponent, DbxSearchableTextFieldComponent, DbxTextEditorFieldComponent, EXPANDABLE_WRAPPER_KEY, FIELD_VALUES_ARE_EQUAL_VALIDATION_KEY, FIELD_VALUE_IS_AVAILABLE_ERROR_VALIDATION_KEY, FIELD_VALUE_IS_AVAILABLE_VALIDATION_KEY, FLEX_WRAPPER_KEY, INFO_WRAPPER_KEY, INVALID_PHONE_NUMBER_MESSAGE, IsDomain, IsInRange, IsTruthy, LABEL_STRING_MAX_LENGTH, MAX_LENGTH_VALIDATION_MESSAGE, MAX_VALIDATION_MESSAGE, MIN_LENGTH_VALIDATION_MESSAGE, MIN_VALIDATION_MESSAGE, PHONE_LABEL_MAX_LENGTH, ProvideDbxForm, ProvideDbxMutableForm, ProvideFormlyContext, REQUIRED_VALIDATION_MESSAGE, SEARCH_STRING_MAX_LENGTH, SECTION_WRAPPER_KEY, STYLE_WRAPPER_KEY, SUBSECTION_WRAPPER_KEY, TAKE_NEXT_UPCOMING_TIME_CONFIG_OBS, TOGGLE_WRAPPER_KEY, WORKING_WRAPPER_KEY, addWrapperToFormlyFieldConfig, addressField, addressFormlyFields, addressListField, checkIsFieldFlexLayoutGroupFieldConfig, checkboxField, checklistItemField, chipTextField, cityField, componentField, countryField, dateTimeField, dbxFormSourceObservable, defaultValidationMessages, disableFormlyFieldAutofillAttributes, emailField, expandWrapper, fieldValueIsAvailableValidator, fieldValuesAreEqualValidator, filterPickableItemFieldValuesByLabel, flexLayoutWrapper, formlyField, hiddenField, infoWrapper, makeMetaFilterSearchableFieldValueDisplayFn, maxLengthValidationMessage, maxValidationMessage, minLengthValidationMessage, minValidationMessage, nameField, phoneAndLabelSectionField, phoneField, phoneListField, pickableItemChipField, pickableItemListField, repeatArrayField, searchableChipField, searchableStringChipField, searchableTextField, sectionWrapper, sortPickableItemsByLabel, stateField, staticEnumField, styleWrapper, subsectionWrapper, templateOptionsForFieldConfig, templateOptionsValueForFieldConfig, textAreaField, textEditorField, textField, textIsAvailableField, textPasswordField, textPasswordWithVerifyFieldGroup, textVerifyPasswordField, timeOnlyField, toggleField, toggleWrapper, usernamePasswordLoginFields, workingWrapper, wrappedPhoneAndLabelField, zipCodeField };
|
|
4000
4313
|
//# sourceMappingURL=dereekb-dbx-form.mjs.map
|