@dereekb/dbx-form 11.1.7 → 12.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/calendar/lib/calendar.module.d.ts +1 -14
- package/calendar/lib/calendar.schedule.selection.cell.component.d.ts +8 -5
- package/calendar/lib/calendar.schedule.selection.component.d.ts +13 -10
- package/calendar/lib/calendar.schedule.selection.d.ts +6 -6
- package/calendar/lib/calendar.schedule.selection.days.component.d.ts +1 -1
- package/calendar/lib/calendar.schedule.selection.days.form.component.d.ts +1 -1
- package/calendar/lib/calendar.schedule.selection.dialog.button.component.d.ts +4 -4
- package/calendar/lib/calendar.schedule.selection.dialog.component.d.ts +5 -5
- package/calendar/lib/calendar.schedule.selection.popover.button.component.d.ts +4 -2
- package/calendar/lib/calendar.schedule.selection.popover.component.d.ts +1 -1
- package/calendar/lib/calendar.schedule.selection.popover.content.component.d.ts +1 -1
- package/calendar/lib/calendar.schedule.selection.range.component.d.ts +19 -17
- package/calendar/lib/calendar.schedule.selection.store.d.ts +2 -2
- package/calendar/lib/calendar.schedule.selection.store.provide.d.ts +1 -1
- package/calendar/lib/calendar.schedule.selection.toggle.button.component.d.ts +8 -12
- package/calendar/lib/field/schedule/calendar.schedule.field.component.d.ts +22 -22
- package/calendar/lib/field/schedule/calendar.schedule.module.d.ts +2 -10
- package/esm2022/calendar/lib/calendar.module.mjs +19 -101
- package/esm2022/calendar/lib/calendar.schedule.selection.cell.component.mjs +27 -28
- package/esm2022/calendar/lib/calendar.schedule.selection.component.mjs +38 -55
- package/esm2022/calendar/lib/calendar.schedule.selection.days.component.mjs +17 -13
- package/esm2022/calendar/lib/calendar.schedule.selection.days.form.component.mjs +11 -12
- package/esm2022/calendar/lib/calendar.schedule.selection.dialog.button.component.mjs +18 -21
- package/esm2022/calendar/lib/calendar.schedule.selection.dialog.component.mjs +12 -9
- package/esm2022/calendar/lib/calendar.schedule.selection.mjs +3 -2
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.button.component.mjs +22 -18
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.component.mjs +12 -9
- package/esm2022/calendar/lib/calendar.schedule.selection.popover.content.component.mjs +13 -10
- package/esm2022/calendar/lib/calendar.schedule.selection.range.component.mjs +52 -70
- package/esm2022/calendar/lib/calendar.schedule.selection.store.mjs +5 -5
- package/esm2022/calendar/lib/calendar.schedule.selection.store.provide.mjs +9 -8
- package/esm2022/calendar/lib/calendar.schedule.selection.toggle.button.component.mjs +48 -50
- package/esm2022/calendar/lib/field/schedule/calendar.schedule.field.component.mjs +17 -14
- package/esm2022/calendar/lib/field/schedule/calendar.schedule.module.mjs +8 -40
- package/esm2022/lib/form/action/form.action.directive.mjs +58 -55
- package/esm2022/lib/form/action/form.action.module.mjs +9 -9
- package/esm2022/lib/form/action/transition/form.action.transition.module.mjs +9 -8
- package/esm2022/lib/form/action/transition/form.action.transition.safety.directive.mjs +14 -11
- package/esm2022/lib/form/form.mjs +1 -1
- package/esm2022/lib/form/form.module.mjs +4 -4
- package/esm2022/lib/form/io/form.changes.directive.mjs +11 -16
- package/esm2022/lib/form/io/form.input.directive.mjs +24 -38
- package/esm2022/lib/form/io/form.io.module.mjs +15 -9
- package/esm2022/lib/form/io/form.loading.directive.mjs +22 -42
- package/esm2022/lib/form.module.mjs +4 -4
- package/esm2022/lib/form.providers.mjs +32 -0
- package/esm2022/lib/formly/field/checklist/checklist.field.mjs +5 -5
- package/esm2022/lib/formly/field/checklist/checklist.item.field.component.mjs +51 -47
- package/esm2022/lib/formly/field/checklist/checklist.item.field.content.default.component.mjs +41 -29
- package/esm2022/lib/formly/field/checklist/checklist.item.field.mjs +3 -3
- package/esm2022/lib/formly/field/checklist/checklist.item.field.module.mjs +8 -45
- package/esm2022/lib/formly/field/checklist/checklist.item.mjs +1 -1
- package/esm2022/lib/formly/field/component/component.field.component.mjs +11 -8
- package/esm2022/lib/formly/field/component/component.field.module.mjs +8 -14
- package/esm2022/lib/formly/field/field.mjs +1 -1
- package/esm2022/lib/formly/field/form.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/selection/list/list.field.component.mjs +17 -14
- package/esm2022/lib/formly/field/selection/list/list.field.module.mjs +8 -58
- package/esm2022/lib/formly/field/selection/pickable/pickable.chip.field.component.mjs +17 -13
- package/esm2022/lib/formly/field/selection/pickable/pickable.field.directive.mjs +16 -16
- package/esm2022/lib/formly/field/selection/pickable/pickable.field.module.mjs +8 -68
- package/esm2022/lib/formly/field/selection/pickable/pickable.list.field.component.mjs +71 -54
- package/esm2022/lib/formly/field/selection/pickable/pickable.util.mjs +2 -2
- package/esm2022/lib/formly/field/selection/searchable/searchable.chip.field.component.mjs +21 -16
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.mjs +51 -49
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.directive.mjs +35 -27
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.mjs +1 -1
- package/esm2022/lib/formly/field/selection/searchable/searchable.field.module.mjs +8 -65
- package/esm2022/lib/formly/field/selection/searchable/searchable.mjs +1 -1
- package/esm2022/lib/formly/field/selection/searchable/searchable.text.field.component.mjs +48 -30
- package/esm2022/lib/formly/field/selection/searchable/text.chip.field.mjs +2 -2
- package/esm2022/lib/formly/field/selection/selection.field.mjs +1 -1
- package/esm2022/lib/formly/field/selection/selection.mjs +1 -1
- package/esm2022/lib/formly/field/selection/selection.module.mjs +4 -4
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.component.mjs +20 -21
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.field.module.mjs +6 -73
- package/esm2022/lib/formly/field/selection/sourceselect/sourceselect.mjs +1 -1
- package/esm2022/lib/formly/field/texteditor/texteditor.field.component.mjs +37 -22
- package/esm2022/lib/formly/field/texteditor/texteditor.field.mjs +2 -2
- package/esm2022/lib/formly/field/texteditor/texteditor.field.module.mjs +8 -33
- package/esm2022/lib/formly/field/value/array/array.field.component.mjs +72 -50
- package/esm2022/lib/formly/field/value/array/array.field.module.mjs +8 -44
- package/esm2022/lib/formly/field/value/boolean/boolean.field.mjs +2 -2
- package/esm2022/lib/formly/field/value/boolean/boolean.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/date/date.field.module.mjs +5 -9
- package/esm2022/lib/formly/field/value/date/date.value.mjs +1 -1
- package/esm2022/lib/formly/field/value/date/datetime.field.component.mjs +8 -8
- package/esm2022/lib/formly/field/value/date/datetime.field.service.mjs +4 -4
- package/esm2022/lib/formly/field/value/date/datetime.mjs +1 -1
- package/esm2022/lib/formly/field/value/date/fixeddaterange.field.component.mjs +8 -8
- package/esm2022/lib/formly/field/value/number/number.field.mjs +1 -1
- package/esm2022/lib/formly/field/value/number/number.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/phone/phone.field.component.mjs +4 -4
- package/esm2022/lib/formly/field/value/phone/phone.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/text/text.address.field.mjs +1 -1
- package/esm2022/lib/formly/field/value/text/text.field.mjs +1 -1
- package/esm2022/lib/formly/field/value/text/text.field.module.mjs +4 -4
- package/esm2022/lib/formly/field/value/value.module.mjs +4 -4
- package/esm2022/lib/formly/field/wrapper/autotouch.wrapper.component.mjs +9 -7
- package/esm2022/lib/formly/field/wrapper/expand.wrapper.component.mjs +19 -24
- package/esm2022/lib/formly/field/wrapper/expand.wrapper.delegate.mjs +7 -4
- package/esm2022/lib/formly/field/wrapper/flex.wrapper.component.mjs +11 -8
- package/esm2022/lib/formly/field/wrapper/form.wrapper.module.mjs +8 -39
- package/esm2022/lib/formly/field/wrapper/index.mjs +2 -1
- package/esm2022/lib/formly/field/wrapper/info.wrapper.component.mjs +19 -16
- package/esm2022/lib/formly/field/wrapper/section.wrapper.component.mjs +11 -7
- package/esm2022/lib/formly/field/wrapper/style.wrapper.component.mjs +16 -11
- package/esm2022/lib/formly/field/wrapper/subsection.wrapper.component.mjs +11 -8
- package/esm2022/lib/formly/field/wrapper/toggle.wrapper.component.mjs +21 -17
- package/esm2022/lib/formly/field/wrapper/working.wrapper.component.mjs +11 -8
- package/esm2022/lib/formly/field/wrapper/wrapper.mjs +1 -1
- package/esm2022/lib/formly/form/form.form.module.mjs +4 -4
- package/esm2022/lib/formly/form/search.form.component.mjs +4 -4
- package/esm2022/lib/formly/formly.component.template.mjs +29 -0
- package/esm2022/lib/formly/formly.context.directive.mjs +6 -5
- package/esm2022/lib/formly/formly.context.mjs +12 -8
- package/esm2022/lib/formly/formly.directive.mjs +29 -44
- package/esm2022/lib/formly/formly.form.component.mjs +24 -18
- package/esm2022/lib/formly/formly.module.mjs +10 -14
- package/esm2022/lib/formly/index.mjs +2 -1
- package/esm2022/lib/formly/template/login.mjs +1 -1
- package/esm2022/lib/formly/template/timezone.mjs +1 -1
- package/esm2022/lib/index.mjs +2 -1
- package/esm2022/lib/layout/form.layout.module.mjs +4 -4
- package/esm2022/lib/layout/form.spacer.component.mjs +3 -3
- package/esm2022/lib/validator/available.mjs +1 -1
- package/esm2022/lib/validator/boolean.mjs +1 -1
- package/esm2022/lib/validator/field.mjs +2 -2
- package/esm2022/lib/validator/number.mjs +1 -1
- package/esm2022/lib/validator/phone.mjs +1 -1
- package/esm2022/mapbox/lib/field/latlng/latlng.field.component.mjs +65 -47
- package/esm2022/mapbox/lib/field/latlng/latlng.field.marker.component.mjs +13 -10
- package/esm2022/mapbox/lib/field/latlng/latlng.module.mjs +10 -43
- package/esm2022/mapbox/lib/field/zoom/zoom.field.component.mjs +32 -26
- package/esm2022/mapbox/lib/field/zoom/zoom.module.mjs +8 -36
- package/esm2022/mapbox/lib/mapbox.module.mjs +4 -4
- package/fesm2022/dereekb-dbx-form-calendar.mjs +340 -457
- package/fesm2022/dereekb-dbx-form-calendar.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-form-mapbox.mjs +114 -141
- package/fesm2022/dereekb-dbx-form-mapbox.mjs.map +1 -1
- package/fesm2022/dereekb-dbx-form.mjs +935 -1106
- package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
- package/lib/extension/calendar/_calendar.scss +3 -3
- package/lib/form/_form.scss +3 -3
- package/lib/form/action/form.action.directive.d.ts +35 -16
- package/lib/form/action/form.action.module.d.ts +4 -3
- package/lib/form/action/transition/form.action.transition.module.d.ts +4 -2
- package/lib/form/action/transition/form.action.transition.safety.directive.d.ts +4 -2
- package/lib/form/io/form.changes.directive.d.ts +3 -4
- package/lib/form/io/form.input.directive.d.ts +7 -10
- package/lib/form/io/form.io.module.d.ts +8 -2
- package/lib/form/io/form.loading.directive.d.ts +10 -11
- package/lib/form.providers.d.ts +8 -0
- package/lib/formly/_formly.scss +3 -3
- package/lib/formly/field/checklist/_checklist.scss +3 -3
- package/lib/formly/field/checklist/checklist.field.d.ts +7 -7
- package/lib/formly/field/checklist/checklist.item.d.ts +7 -9
- package/lib/formly/field/checklist/checklist.item.field.component.d.ts +19 -18
- package/lib/formly/field/checklist/checklist.item.field.content.default.component.d.ts +5 -5
- package/lib/formly/field/checklist/checklist.item.field.d.ts +1 -1
- package/lib/formly/field/checklist/checklist.item.field.module.d.ts +3 -11
- package/lib/formly/field/component/_component.scss +3 -3
- package/lib/formly/field/component/component.field.component.d.ts +1 -1
- package/lib/formly/field/component/component.field.module.d.ts +2 -4
- package/lib/formly/field/field.d.ts +8 -5
- package/lib/formly/field/selection/list/_list.scss +3 -3
- package/lib/formly/field/selection/list/list.field.component.d.ts +7 -5
- package/lib/formly/field/selection/list/list.field.module.d.ts +2 -12
- package/lib/formly/field/selection/pickable/_pickable.scss +3 -3
- package/lib/formly/field/selection/pickable/pickable.chip.field.component.d.ts +1 -1
- package/lib/formly/field/selection/pickable/pickable.field.directive.d.ts +25 -23
- package/lib/formly/field/selection/pickable/pickable.field.module.d.ts +2 -13
- package/lib/formly/field/selection/pickable/pickable.list.field.component.d.ts +15 -14
- package/lib/formly/field/selection/searchable/_searchable.scss +3 -3
- package/lib/formly/field/selection/searchable/searchable.chip.field.component.d.ts +4 -4
- package/lib/formly/field/selection/searchable/searchable.d.ts +3 -3
- package/lib/formly/field/selection/searchable/searchable.field.autocomplete.item.component.d.ts +8 -12
- package/lib/formly/field/selection/searchable/searchable.field.directive.d.ts +30 -25
- package/lib/formly/field/selection/searchable/searchable.field.module.d.ts +2 -13
- package/lib/formly/field/selection/searchable/searchable.text.field.component.d.ts +6 -8
- package/lib/formly/field/selection/selection.d.ts +5 -5
- package/lib/formly/field/selection/sourceselect/_sourceselect.scss +3 -3
- package/lib/formly/field/selection/sourceselect/sourceselect.d.ts +1 -1
- package/lib/formly/field/selection/sourceselect/sourceselect.field.component.d.ts +5 -3
- package/lib/formly/field/selection/sourceselect/sourceselect.field.module.d.ts +2 -17
- package/lib/formly/field/texteditor/_texteditor.scss +9 -9
- package/lib/formly/field/texteditor/texteditor.field.component.d.ts +5 -4
- package/lib/formly/field/texteditor/texteditor.field.module.d.ts +2 -8
- package/lib/formly/field/value/array/_array.scss +5 -5
- package/lib/formly/field/value/array/array.field.component.d.ts +16 -18
- package/lib/formly/field/value/array/array.field.d.ts +8 -5
- package/lib/formly/field/value/array/array.field.module.d.ts +2 -10
- package/lib/formly/field/value/boolean/_boolean.scss +3 -3
- package/lib/formly/field/value/date/_date.scss +5 -5
- package/lib/formly/field/value/date/date.field.module.d.ts +8 -9
- package/lib/formly/field/value/date/datetime.field.service.d.ts +1 -1
- package/lib/formly/field/value/date/fixeddaterange.field.component.d.ts +13 -13
- package/lib/formly/field/value/number/_number.scss +2 -2
- package/lib/formly/field/value/phone/_phone.scss +6 -6
- package/lib/formly/field/value/phone/phone.field.component.d.ts +6 -5
- package/lib/formly/field/value/text/_text.scss +3 -3
- package/lib/formly/field/wrapper/_wrapper.scss +3 -3
- package/lib/formly/field/wrapper/autotouch.wrapper.component.d.ts +1 -1
- package/lib/formly/field/wrapper/expand.wrapper.component.d.ts +1 -1
- package/lib/formly/field/wrapper/expand.wrapper.delegate.d.ts +2 -0
- package/lib/formly/field/wrapper/flex.wrapper.component.d.ts +4 -4
- package/lib/formly/field/wrapper/form.wrapper.module.d.ts +2 -8
- package/lib/formly/field/wrapper/index.d.ts +1 -0
- package/lib/formly/field/wrapper/info.wrapper.component.d.ts +2 -2
- package/lib/formly/field/wrapper/section.wrapper.component.d.ts +1 -1
- package/lib/formly/field/wrapper/style.wrapper.component.d.ts +5 -3
- package/lib/formly/field/wrapper/subsection.wrapper.component.d.ts +1 -1
- package/lib/formly/field/wrapper/toggle.wrapper.component.d.ts +2 -1
- package/lib/formly/field/wrapper/working.wrapper.component.d.ts +2 -2
- package/lib/formly/form/_form.scss +3 -3
- package/lib/formly/formly.component.template.d.ts +19 -0
- package/lib/formly/formly.context.d.ts +11 -7
- package/lib/formly/formly.context.directive.d.ts +2 -2
- package/lib/formly/formly.directive.d.ts +10 -10
- package/lib/formly/formly.form.component.d.ts +18 -13
- package/lib/formly/formly.module.d.ts +1 -1
- package/lib/formly/index.d.ts +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/layout/_layout.scss +3 -3
- package/lib/style/_all-typography.scss +1 -1
- package/lib/style/_theming.scss +1 -1
- package/mapbox/lib/field/latlng/latlng.field.component.d.ts +25 -23
- package/mapbox/lib/field/latlng/latlng.field.marker.component.d.ts +2 -1
- package/mapbox/lib/field/latlng/latlng.module.d.ts +2 -11
- package/mapbox/lib/field/zoom/zoom.field.component.d.ts +13 -13
- package/mapbox/lib/field/zoom/zoom.module.d.ts +3 -10
- package/package.json +10 -11
- package/mapbox/esm2022/dereekb-dbx-form-mapbox.mjs +0 -5
- package/mapbox/esm2022/index.mjs +0 -3
- package/mapbox/esm2022/lib/field/index.mjs +0 -3
- package/mapbox/esm2022/lib/field/latlng/index.mjs +0 -5
- package/mapbox/esm2022/lib/field/latlng/latlng.field.component.mjs +0 -244
- package/mapbox/esm2022/lib/field/latlng/latlng.field.marker.component.mjs +0 -31
- package/mapbox/esm2022/lib/field/latlng/latlng.field.mjs +0 -35
- package/mapbox/esm2022/lib/field/latlng/latlng.module.mjs +0 -59
- package/mapbox/esm2022/lib/field/zoom/index.mjs +0 -4
- package/mapbox/esm2022/lib/field/zoom/zoom.field.component.mjs +0 -140
- package/mapbox/esm2022/lib/field/zoom/zoom.field.mjs +0 -23
- package/mapbox/esm2022/lib/field/zoom/zoom.module.mjs +0 -57
- package/mapbox/esm2022/lib/mapbox.module.mjs +0 -16
- package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs +0 -566
- package/mapbox/fesm2022/dereekb-dbx-form-mapbox.mjs.map +0 -1
- package/mapbox/package.json +0 -21
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Directive,
|
|
1
|
+
import { Directive, inject, input } from '@angular/core';
|
|
2
2
|
import { addSeconds, isPast } from 'date-fns';
|
|
3
|
-
import { of, combineLatest, exhaustMap, catchError, delay, filter, first, map, switchMap,
|
|
3
|
+
import { of, combineLatest, exhaustMap, catchError, delay, filter, first, map, switchMap, distinctUntilChanged, shareReplay } from 'rxjs';
|
|
4
4
|
import { DbxActionContextStoreSourceInstance } from '@dereekb/dbx-core';
|
|
5
|
-
import { SubscriptionObject, LockSet, asObservable } from '@dereekb/rxjs';
|
|
5
|
+
import { SubscriptionObject, LockSet, asObservable, makeIsModifiedFunctionObservable } from '@dereekb/rxjs';
|
|
6
6
|
import { DbxFormState, DbxMutableForm } from '../../form/form';
|
|
7
|
+
import { toObservable } from '@angular/core/rxjs-interop';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
export const APP_ACTION_FORM_DISABLED_KEY = 'dbx_action_form';
|
|
9
10
|
/**
|
|
@@ -17,20 +18,38 @@ export class DbxActionFormDirective {
|
|
|
17
18
|
form = inject((DbxMutableForm), { host: true });
|
|
18
19
|
source = inject((DbxActionContextStoreSourceInstance));
|
|
19
20
|
lockSet = new LockSet();
|
|
21
|
+
/**
|
|
22
|
+
* Whether or not to disable the form while the action is working.
|
|
23
|
+
*
|
|
24
|
+
* Defaults to true.
|
|
25
|
+
*/
|
|
26
|
+
dbxActionFormDisabledOnWorking = input(true);
|
|
20
27
|
/**
|
|
21
28
|
* Optional validator that checks whether or not the value is
|
|
22
29
|
* ready to send before the context store is marked enabled.
|
|
23
30
|
*/
|
|
24
|
-
|
|
31
|
+
dbxActionFormIsValid = input();
|
|
32
|
+
/**
|
|
33
|
+
* Optional function that checks whether or not the value is still the same/equal.
|
|
34
|
+
*/
|
|
35
|
+
dbxActionFormIsEqual = input();
|
|
25
36
|
/**
|
|
26
37
|
* Optional function that checks whether or not the value has been modified.
|
|
38
|
+
*
|
|
39
|
+
* If dbxActionFormIsEqual is provided, this will be ignored.
|
|
27
40
|
*/
|
|
28
|
-
|
|
41
|
+
dbxActionFormIsModified = input();
|
|
29
42
|
/**
|
|
30
43
|
* Optional function that maps the form's value to the source's value.
|
|
31
44
|
*/
|
|
32
|
-
dbxActionFormMapValue;
|
|
33
|
-
|
|
45
|
+
dbxActionFormMapValue = input();
|
|
46
|
+
dbxActionFormDisabledOnWorking$ = toObservable(this.dbxActionFormDisabledOnWorking);
|
|
47
|
+
isValidFunction$ = toObservable(this.dbxActionFormIsValid).pipe(map((x) => x ?? (() => of(true))), shareReplay(1));
|
|
48
|
+
isModifiedFunction$ = makeIsModifiedFunctionObservable({
|
|
49
|
+
isModified: toObservable(this.dbxActionFormIsModified),
|
|
50
|
+
isEqual: toObservable(this.dbxActionFormIsEqual)
|
|
51
|
+
}).pipe(shareReplay(1));
|
|
52
|
+
mapValueFunction$ = toObservable(this.dbxActionFormMapValue);
|
|
34
53
|
_triggeredSub = new SubscriptionObject();
|
|
35
54
|
_isCompleteSub = new SubscriptionObject();
|
|
36
55
|
_isWorkingSub = new SubscriptionObject();
|
|
@@ -40,12 +59,6 @@ export class DbxActionFormDirective {
|
|
|
40
59
|
}
|
|
41
60
|
this.lockSet.addChildLockSet(this.source.lockSet, 'source');
|
|
42
61
|
}
|
|
43
|
-
get formDisabledOnWorking() {
|
|
44
|
-
return this._formDisabledWhileWorking.value;
|
|
45
|
-
}
|
|
46
|
-
set formDisabledOnWorking(formDisabledOnWorking) {
|
|
47
|
-
this._formDisabledWhileWorking.next(Boolean(formDisabledOnWorking ?? true));
|
|
48
|
-
}
|
|
49
62
|
ngOnInit() {
|
|
50
63
|
// Pass data from the form to the source when triggered.
|
|
51
64
|
this._triggeredSub.subscription = this.source.triggered$
|
|
@@ -88,23 +101,13 @@ export class DbxActionFormDirective {
|
|
|
88
101
|
// More than a certain amount of updates implies that it is being typed into/used.
|
|
89
102
|
// 3 changes and 2 seconds are arbitrary values derived from guesses about any slow/late changes that may come from external directives for setup.
|
|
90
103
|
const isProbablyTouched = !event.untouched || ((event.changesCount ?? 0) > 3 && isPast(addSeconds(event.lastResetAt ?? new Date(), 2)));
|
|
91
|
-
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
validatorObs = of(false);
|
|
98
|
-
}
|
|
99
|
-
let modifiedObs;
|
|
104
|
+
// create overrides
|
|
105
|
+
const returnFalseFunction = () => of(false);
|
|
106
|
+
const runIsValidCheck = event.isComplete;
|
|
107
|
+
const isValidFunction = runIsValidCheck ? undefined : returnFalseFunction;
|
|
100
108
|
const isConsideredModified = event.pristine === false && isProbablyTouched;
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
modifiedObs = of(false);
|
|
106
|
-
}
|
|
107
|
-
return combineLatest([validatorObs, modifiedObs]).pipe(first(), map(([valid, modified]) => ({ valid, modified, value, event })));
|
|
109
|
+
const isModifiedFunction = isConsideredModified ? undefined : returnFalseFunction;
|
|
110
|
+
return this.checkIsValidAndIsModified(value, { isValidFunction, isModifiedFunction }).pipe(map(([valid, modified]) => ({ valid, modified, value, event })), first());
|
|
108
111
|
}));
|
|
109
112
|
}))
|
|
110
113
|
.subscribe(({ valid, modified /*, value, event */ }) => {
|
|
@@ -115,8 +118,8 @@ export class DbxActionFormDirective {
|
|
|
115
118
|
this.source.enable(APP_ACTION_FORM_DISABLED_KEY, valid);
|
|
116
119
|
});
|
|
117
120
|
// Watch the working state and disable form while working
|
|
118
|
-
this._isWorkingSub.subscription = combineLatest([this.source.isWorking$, this.
|
|
119
|
-
.pipe(map(([isWorking,
|
|
121
|
+
this._isWorkingSub.subscription = combineLatest([this.source.isWorking$, this.dbxActionFormDisabledOnWorking$])
|
|
122
|
+
.pipe(map(([isWorking, disableFormWhileWorking]) => disableFormWhileWorking !== false && isWorking), distinctUntilChanged())
|
|
120
123
|
.subscribe((disable) => {
|
|
121
124
|
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, disable);
|
|
122
125
|
});
|
|
@@ -127,38 +130,38 @@ export class DbxActionFormDirective {
|
|
|
127
130
|
this._triggeredSub.destroy();
|
|
128
131
|
this._isCompleteSub.destroy();
|
|
129
132
|
this._isWorkingSub.destroy();
|
|
130
|
-
this._formDisabledWhileWorking.complete();
|
|
131
133
|
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, false);
|
|
132
134
|
});
|
|
133
135
|
}
|
|
136
|
+
checkIsValidAndIsModified(value, overrides) {
|
|
137
|
+
const { isModifiedFunction: overrideIsModifiedFunction, isValidFunction: overrideIsValidFunction } = overrides ?? {};
|
|
138
|
+
const isValidFunctionObs = overrideIsValidFunction != null ? of(overrideIsValidFunction) : this.isValidFunction$;
|
|
139
|
+
const isModifiedFunctionObs = overrideIsModifiedFunction != null ? of(overrideIsModifiedFunction) : this.isModifiedFunction$;
|
|
140
|
+
return combineLatest([isValidFunctionObs, isModifiedFunctionObs]).pipe(switchMap(([isValid, isModified]) => {
|
|
141
|
+
return combineLatest([isValid(value), isModified(value)]).pipe(map(([valid, modified]) => [valid, modified]));
|
|
142
|
+
}));
|
|
143
|
+
}
|
|
134
144
|
preCheckReadyValue(value) {
|
|
135
|
-
|
|
136
|
-
const modifiedObs = this.dbxActionFormModified ? this.dbxActionFormModified(value) : of(true);
|
|
137
|
-
return combineLatest([validatorObs, modifiedObs]).pipe(first(), map(([valid, modified]) => valid && modified));
|
|
145
|
+
return this.checkIsValidAndIsModified(value);
|
|
138
146
|
}
|
|
139
147
|
readyValue(value) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
148
|
+
return this.mapValueFunction$.pipe(switchMap((mapFunction) => {
|
|
149
|
+
if (mapFunction) {
|
|
150
|
+
return asObservable(mapFunction(value));
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
return of({ value: value });
|
|
154
|
+
}
|
|
155
|
+
}));
|
|
146
156
|
}
|
|
147
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
148
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
157
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFormDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
158
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionFormDirective, isStandalone: true, selector: "[dbxActionForm]", inputs: { dbxActionFormDisabledOnWorking: { classPropertyName: "dbxActionFormDisabledOnWorking", publicName: "dbxActionFormDisabledOnWorking", isSignal: true, isRequired: false, transformFunction: null }, dbxActionFormIsValid: { classPropertyName: "dbxActionFormIsValid", publicName: "dbxActionFormIsValid", isSignal: true, isRequired: false, transformFunction: null }, dbxActionFormIsEqual: { classPropertyName: "dbxActionFormIsEqual", publicName: "dbxActionFormIsEqual", isSignal: true, isRequired: false, transformFunction: null }, dbxActionFormIsModified: { classPropertyName: "dbxActionFormIsModified", publicName: "dbxActionFormIsModified", isSignal: true, isRequired: false, transformFunction: null }, dbxActionFormMapValue: { classPropertyName: "dbxActionFormMapValue", publicName: "dbxActionFormMapValue", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
149
159
|
}
|
|
150
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
160
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFormDirective, decorators: [{
|
|
151
161
|
type: Directive,
|
|
152
162
|
args: [{
|
|
153
|
-
selector: '[dbxActionForm]'
|
|
163
|
+
selector: '[dbxActionForm]',
|
|
164
|
+
standalone: true
|
|
154
165
|
}]
|
|
155
|
-
}], ctorParameters:
|
|
156
|
-
type: Input
|
|
157
|
-
}], dbxActionFormModified: [{
|
|
158
|
-
type: Input
|
|
159
|
-
}], dbxActionFormMapValue: [{
|
|
160
|
-
type: Input
|
|
161
|
-
}], formDisabledOnWorking: [{
|
|
162
|
-
type: Input
|
|
163
|
-
}] } });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2FjdGlvbi9mb3JtLmFjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFKLE9BQU8sRUFBRSxtQ0FBbUMsRUFBaUMsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUEwRCxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEksT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHL0QsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsaUJBQWlCLENBQUM7QUFJOUQ7Ozs7OztHQU1HO0FBSUgsTUFBTSxPQUFPLHNCQUFzQjtJQUN4QixJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUEsY0FBaUIsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDakQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxDQUFBLG1DQUErQyxDQUFBLENBQUMsQ0FBQztJQUVqRSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUVqQzs7O09BR0c7SUFFSCxzQkFBc0IsQ0FBc0I7SUFFNUM7O09BRUc7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Q0FBQyxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDcEQsS0FBSyxFQUFFLEVBQ1AsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFxQixFQUFFLEVBQUUsQ0FBQyxLQUFLLElBQUksUUFBUSxDQUFDLENBQ2xFLENBQUM7SUFDSixDQUFDO0lBRVMsVUFBVSxDQUFDLEtBQVE7UUFDM0IsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDOUIsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDeEQ7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQXFCLEVBQUUsQ0FBQyxDQUFDO1NBQzdDO0lBQ0gsQ0FBQzt3R0ExTFUsc0JBQXNCOzRGQUF0QixzQkFBc0I7OzRGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7MEVBWUMsc0JBQXNCO3NCQURyQixLQUFLO2dCQU9OLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFPTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBa0JGLHFCQUFxQjtzQkFEeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25Jbml0LCBPbkRlc3Ryb3ksIElucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFkZFNlY29uZHMsIGlzUGFzdCB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBjb21iaW5lTGF0ZXN0LCBleGhhdXN0TWFwLCBjYXRjaEVycm9yLCBkZWxheSwgZmlsdGVyLCBmaXJzdCwgbWFwLCBzd2l0Y2hNYXAsIEJlaGF2aW9yU3ViamVjdCwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlLCBEYnhBY3Rpb25WYWx1ZU9uVHJpZ2dlclJlc3VsdCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbk9iamVjdCwgTG9ja1NldCwgSXNNb2RpZmllZEZ1bmN0aW9uLCBJc1ZhbGlkRnVuY3Rpb24sIE9ic2VydmFibGVPclZhbHVlLCBhc09ic2VydmFibGUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERieEZvcm1TdGF0ZSwgRGJ4TXV0YWJsZUZvcm0gfSBmcm9tICcuLi8uLi9mb3JtL2Zvcm0nO1xuaW1wb3J0IHsgTWFwRnVuY3Rpb24gfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuZXhwb3J0IGNvbnN0IEFQUF9BQ1RJT05fRk9STV9ESVNBQkxFRF9LRVkgPSAnZGJ4X2FjdGlvbl9mb3JtJztcblxuZXhwb3J0IHR5cGUgRGJ4QWN0aW9uRm9ybU1hcFZhbHVlRnVuY3Rpb248VCwgTz4gPSBNYXBGdW5jdGlvbjxULCBPYnNlcnZhYmxlT3JWYWx1ZTxEYnhBY3Rpb25WYWx1ZU9uVHJpZ2dlclJlc3VsdDxPPj4+O1xuXG4vKipcbiAqIFVzZWQgd2l0aCBhbiBhY3Rpb24gdG8gYmluZCBhIGZvcm0gdG8gYW4gYWN0aW9uIGFzIGl0J3MgdmFsdWUgc291cmNlLlxuICpcbiAqIElmIHRoZSBmb3JtIGhhcyBlcnJvcnMgd2hlbiB0aGUgYWN0aW9uIGlzIHRyaWdnZXIsIGl0IHdpbGwgcmVqZWN0IHRoZSBhY3Rpb24uXG4gKlxuICogSWYgdGhlIHNvdXJjZSBpcyBub3QgY29uc2lkZXJlZCBtb2RpZmllZCwgdGhlIHRyaWdnZXIgd2lsbCBiZSBpZ25vcmVkLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRm9ybV0nXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkZvcm1EaXJlY3RpdmU8VCA9IG9iamVjdCwgTyA9IFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICByZWFkb25seSBmb3JtID0gaW5qZWN0KERieE11dGFibGVGb3JtPFQ+LCB7IGhvc3Q6IHRydWUgfSk7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxPLCB1bmtub3duPik7XG5cbiAgcmVhZG9ubHkgbG9ja1NldCA9IG5ldyBMb2NrU2V0KCk7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHZhbGlkYXRvciB0aGF0IGNoZWNrcyB3aGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgaXNcbiAgICogcmVhZHkgdG8gc2VuZCBiZWZvcmUgdGhlIGNvbnRleHQgc3RvcmUgaXMgbWFya2VkIGVuYWJsZWQuXG4gICAqL1xuICBASW5wdXQoKVxuICBkYnhBY3Rpb25Gb3JtVmFsaWRhdG9yPzogSXNWYWxpZEZ1bmN0aW9uPFQ+O1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBmdW5jdGlvbiB0aGF0IGNoZWNrcyB3aGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgaGFzIGJlZW4gbW9kaWZpZWQuXG4gICAqL1xuICBASW5wdXQoKVxuICBkYnhBY3Rpb25Gb3JtTW9kaWZpZWQ/OiBJc01vZGlmaWVkRnVuY3Rpb248VD47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGZ1bmN0aW9uIHRoYXQgbWFwcyB0aGUgZm9ybSdzIHZhbHVlIHRvIHRoZSBzb3VyY2UncyB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGRieEFjdGlvbkZvcm1NYXBWYWx1ZT86IERieEFjdGlvbkZvcm1NYXBWYWx1ZUZ1bmN0aW9uPFQsIE8+O1xuXG4gIHByaXZhdGUgX2Zvcm1EaXNhYmxlZFdoaWxlV29ya2luZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgcHJpdmF0ZSBfdHJpZ2dlcmVkU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9pc0NvbXBsZXRlU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9pc1dvcmtpbmdTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5sb2NrU2V0KSB7XG4gICAgICB0aGlzLmxvY2tTZXQuYWRkQ2hpbGRMb2NrU2V0KHRoaXMuZm9ybS5sb2NrU2V0LCAnZm9ybScpO1xuICAgIH1cblxuICAgIHRoaXMubG9ja1NldC5hZGRDaGlsZExvY2tTZXQodGhpcy5zb3VyY2UubG9ja1NldCwgJ3NvdXJjZScpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZ2V0IGZvcm1EaXNhYmxlZE9uV29ya2luZygpIHtcbiAgICByZXR1cm4gdGhpcy5fZm9ybURpc2FibGVkV2hpbGVXb3JraW5nLnZhbHVlO1xuICB9XG5cbiAgc2V0IGZvcm1EaXNhYmxlZE9uV29ya2luZyhmb3JtRGlzYWJsZWRPbldvcmtpbmc6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9mb3JtRGlzYWJsZWRXaGlsZVdvcmtpbmcubmV4dChCb29sZWFuKGZvcm1EaXNhYmxlZE9uV29ya2luZyA/PyB0cnVlKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBQYXNzIGRhdGEgZnJvbSB0aGUgZm9ybSB0byB0aGUgc291cmNlIHdoZW4gdHJpZ2dlcmVkLlxuICAgIHRoaXMuX3RyaWdnZXJlZFN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLnNvdXJjZS50cmlnZ2VyZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XG4gICAgICAgICAgdGhpcy5mb3JtLnN0cmVhbSQucGlwZShcbiAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICBleGhhdXN0TWFwKChzdHJlYW0pID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgeyBpc0NvbXBsZXRlIH0gPSBzdHJlYW07XG4gICAgICAgICAgICAgIGNvbnN0IGRvTm90aGluZyA9IHt9OyAvLyBub3RoaW5nLCBmb3JtIG5vdCBjb21wbGV0ZVxuXG4gICAgICAgICAgICAgIGxldCBvYnM6IE9ic2VydmFibGU8RGJ4QWN0aW9uVmFsdWVPblRyaWdnZXJSZXN1bHQ8Tz4+O1xuXG4gICAgICAgICAgICAgIGlmIChpc0NvbXBsZXRlKSB7XG4gICAgICAgICAgICAgICAgb2JzID0gdGhpcy5mb3JtLmdldFZhbHVlKCkucGlwZShcbiAgICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgICBleGhhdXN0TWFwKCh2YWx1ZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmVDaGVja1JlYWR5VmFsdWUodmFsdWUpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKGNhbkNvbnRpbnVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2FuQ29udGludWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVhZHlWYWx1ZSh2YWx1ZSkucGlwZShmaXJzdCgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihkb05vdGhpbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBvZih7IHJlamVjdDogZXJyb3IgfSkpXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG9icyA9IG9mKGRvTm90aGluZyk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gb2JzO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogRGJ4QWN0aW9uVmFsdWVPblRyaWdnZXJSZXN1bHQ8Tz4pID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdC5yZWplY3QpIHtcbiAgICAgICAgICB0aGlzLnNvdXJjZS5yZWplY3QocmVzdWx0LnJlamVjdCk7XG4gICAgICAgIH0gZWxzZSBpZiAocmVzdWx0LnZhbHVlICE9IG51bGwpIHtcbiAgICAgICAgICB0aGlzLnNvdXJjZS5yZWFkeVZhbHVlKHJlc3VsdC52YWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gdmFsdWUgaXNuJ3QgcmVhZHlcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAvLyBVcGRhdGUgdGhlIGVuYWJsZWQvZGlzYWJsZWQgc3RhdGVcbiAgICB0aGlzLl9pc0NvbXBsZXRlU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMuZm9ybS5zdHJlYW0kXG4gICAgICAucGlwZShcbiAgICAgICAgZGVsYXkoMCksXG4gICAgICAgIGZpbHRlcigoeCkgPT4geC5zdGF0ZSAhPT0gRGJ4Rm9ybVN0YXRlLklOSVRJQUxJWklORyksXG4gICAgICAgIHN3aXRjaE1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5mb3JtLmdldFZhbHVlKCkucGlwZShcbiAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICBleGhhdXN0TWFwKCh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAvLyBVc2UgYm90aCBjaGFuZ2VzIGNvdW50IGFuZCB3aGV0aGVyIG9yIG5vdCBzb21ldGhpbmcgd2FzIGluIHRoZSBwYXN0IHRvIGd1YWdlIHdoZXRoZXIgb3Igbm90IHRoZSBpdGVtIGhhcyBiZWVuIHRvdWNoZWQuXG4gICAgICAgICAgICAgIC8vIEFuZ3VsYXIgRm9ybSdzIHVudG91Y2hlZCBpcyB3aGV0aGVyIG9yIG5vdCBmb2N1cyBoYXMgYmVlbiBsb3N0IGJ1dCB3ZSBjYW4gc3RpbGwgcmVjZWl2ZSB2YWx1ZSB1cGRhdGVzLlxuICAgICAgICAgICAgICAvLyBNb3JlIHRoYW4gYSBjZXJ0YWluIGFtb3VudCBvZiB1cGRhdGVzIGltcGxpZXMgdGhhdCBpdCBpcyBiZWluZyB0eXBlZCBpbnRvL3VzZWQuXG4gICAgICAgICAgICAgIC8vIDMgY2hhbmdlcyBhbmQgMiBzZWNvbmRzIGFyZSBhcmJpdHJhcnkgdmFsdWVzIGRlcml2ZWQgZnJvbSBndWVzc2VzIGFib3V0IGFueSBzbG93L2xhdGUgY2hhbmdlcyB0aGF0IG1heSBjb21lIGZyb20gZXh0ZXJuYWwgZGlyZWN0aXZlcyBmb3Igc2V0dXAuXG4gICAgICAgICAgICAgIGNvbnN0IGlzUHJvYmFibHlUb3VjaGVkID0gIWV2ZW50LnVudG91Y2hlZCB8fCAoKGV2ZW50LmNoYW5nZXNDb3VudCA/PyAwKSA+IDMgJiYgaXNQYXN0KGFkZFNlY29uZHMoZXZlbnQubGFzdFJlc2V0QXQgPz8gbmV3IERhdGUoKSwgMikpKTtcblxuICAgICAgICAgICAgICBsZXQgdmFsaWRhdG9yT2JzOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gICAgICAgICAgICAgIGNvbnN0IGluaXRpYWxJc1ZhbGlkQ2hlY2sgPSBldmVudC5pc0NvbXBsZXRlO1xuICAgICAgICAgICAgICBpZiAoaW5pdGlhbElzVmFsaWRDaGVjaykge1xuICAgICAgICAgICAgICAgIHZhbGlkYXRvck9icyA9IHRoaXMuZGJ4QWN0aW9uRm9ybVZhbGlkYXRvciA/IHRoaXMuZGJ4QWN0aW9uRm9ybVZhbGlkYXRvcih2YWx1ZSkgOiBvZih0cnVlKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB2YWxpZGF0b3JPYnMgPSBvZihmYWxzZSk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBsZXQgbW9kaWZpZWRPYnM6IE9ic2VydmFibGU8Ym9vbGVhbj47XG5cbiAgICAgICAgICAgICAgY29uc3QgaXNDb25zaWRlcmVkTW9kaWZpZWQgPSBldmVudC5wcmlzdGluZSA9PT0gZmFsc2UgJiYgaXNQcm9iYWJseVRvdWNoZWQ7XG4gICAgICAgICAgICAgIGlmIChpc0NvbnNpZGVyZWRNb2RpZmllZCkge1xuICAgICAgICAgICAgICAgIG1vZGlmaWVkT2JzID0gdGhpcy5kYnhBY3Rpb25Gb3JtTW9kaWZpZWQgPyB0aGlzLmRieEFjdGlvbkZvcm1Nb2RpZmllZCh2YWx1ZSkgOiBvZih0cnVlKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBtb2RpZmllZE9icyA9IG9mKGZhbHNlKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt2YWxpZGF0b3JPYnMsIG1vZGlmaWVkT2JzXSkucGlwZShcbiAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgIG1hcCgoW3ZhbGlkLCBtb2RpZmllZF06IFtib29sZWFuLCBib29sZWFuXSkgPT4gKHsgdmFsaWQsIG1vZGlmaWVkLCB2YWx1ZSwgZXZlbnQgfSkpXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh7IHZhbGlkLCBtb2RpZmllZCAvKiwgdmFsdWUsIGV2ZW50ICovIH0pID0+IHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ3g6ICcsIHZhbHVlLCBldmVudCwgdmFsaWQsIG1vZGlmaWVkKTtcblxuICAgICAgICAvLyBVcGRhdGUgTW9kaWZpZWQgU3RhdGVcbiAgICAgICAgdGhpcy5zb3VyY2Uuc2V0SXNNb2RpZmllZChtb2RpZmllZCk7XG5cbiAgICAgICAgLy8gRGlzYWJsZSBpZiB0aGUgZm9ybSBpcyBub3QgeWV0IGNvbXBsZXRlL3ZhbGlkLlxuICAgICAgICB0aGlzLnNvdXJjZS5lbmFibGUoQVBQX0FDVElPTl9GT1JNX0RJU0FCTEVEX0tFWSwgdmFsaWQpO1xuICAgICAgfSk7XG5cbiAgICAvLyBXYXRjaCB0aGUgd29ya2luZyBzdGF0ZSBhbmQgZGlzYWJsZSBmb3JtIHdoaWxlIHdvcmtpbmdcbiAgICB0aGlzLl9pc1dvcmtpbmdTdWIuc3Vic2NyaXB0aW9uID0gY29tYmluZUxhdGVzdChbdGhpcy5zb3VyY2UuaXNXb3JraW5nJCwgdGhpcy5fZm9ybURpc2FibGVkV2hpbGVXb3JraW5nXSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKFtpc1dvcmtpbmcsIGxvY2tPbldvcmtpbmddOiBbYm9vbGVhbiwgYm9vbGVhbl0pID0+IGxvY2tPbldvcmtpbmcgJiYgaXNXb3JraW5nKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZGlzYWJsZSkgPT4ge1xuICAgICAgICB0aGlzLmZvcm0uc2V0RGlzYWJsZWQoQVBQX0FDVElPTl9GT1JNX0RJU0FCTEVEX0tFWSwgZGlzYWJsZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc291cmNlLmVuYWJsZShBUFBfQUNUSU9OX0ZPUk1fRElTQUJMRURfS0VZKTtcbiAgICB0aGlzLmxvY2tTZXQuZGVzdHJveU9uTmV4dFVubG9jaygoKSA9PiB7XG4gICAgICB0aGlzLl90cmlnZ2VyZWRTdWIuZGVzdHJveSgpO1xuICAgICAgdGhpcy5faXNDb21wbGV0ZVN1Yi5kZXN0cm95KCk7XG4gICAgICB0aGlzLl9pc1dvcmtpbmdTdWIuZGVzdHJveSgpO1xuICAgICAgdGhpcy5fZm9ybURpc2FibGVkV2hpbGVXb3JraW5nLmNvbXBsZXRlKCk7XG4gICAgICB0aGlzLmZvcm0uc2V0RGlzYWJsZWQoQVBQX0FDVElPTl9GT1JNX0RJU0FCTEVEX0tFWSwgZmFsc2UpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHByZUNoZWNrUmVhZHlWYWx1ZSh2YWx1ZTogVCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IHZhbGlkYXRvck9iczogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuZGJ4QWN0aW9uRm9ybVZhbGlkYXRvciA/IHRoaXMuZGJ4QWN0aW9uRm9ybVZhbGlkYXRvcih2YWx1ZSkgOiBvZih0cnVlKTtcbiAgICBjb25zdCBtb2RpZmllZE9iczogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuZGJ4QWN0aW9uRm9ybU1vZGlmaWVkID8gdGhpcy5kYnhBY3Rpb25Gb3JtTW9kaWZpZWQodmFsdWUpIDogb2YodHJ1ZSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdmFsaWRhdG9yT2JzLCBtb2RpZmllZE9ic10pLnBpcGUoXG4gICAgICBmaXJzdCgpLFxuICAgICAgbWFwKChbdmFsaWQsIG1vZGlmaWVkXTogW2Jvb2xlYW4sIGJvb2xlYW5dKSA9PiB2YWxpZCAmJiBtb2RpZmllZClcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlYWR5VmFsdWUodmFsdWU6IFQpOiBPYnNlcnZhYmxlPERieEFjdGlvblZhbHVlT25UcmlnZ2VyUmVzdWx0PE8+PiB7XG4gICAgaWYgKHRoaXMuZGJ4QWN0aW9uRm9ybU1hcFZhbHVlKSB7XG4gICAgICByZXR1cm4gYXNPYnNlcnZhYmxlKHRoaXMuZGJ4QWN0aW9uRm9ybU1hcFZhbHVlKHZhbHVlKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvZih7IHZhbHVlOiB2YWx1ZSBhcyB1bmtub3duIGFzIE8gfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
166
|
+
}], ctorParameters: () => [] });
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2FjdGlvbi9mb3JtLmFjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM5QyxPQUFPLEVBQWMsRUFBRSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RKLE9BQU8sRUFBRSxtQ0FBbUMsRUFBOEIsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUEwRCxZQUFZLEVBQW1CLGdDQUFnQyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JMLE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUUxRCxNQUFNLENBQUMsTUFBTSw0QkFBNEIsR0FBRyxpQkFBaUIsQ0FBQztBQUk5RDs7Ozs7O0dBTUc7QUFLSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ3hCLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQSxjQUFpQixDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRCxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUEsbUNBQStDLENBQUEsQ0FBQyxDQUFDO0lBRWpFLE9BQU8sR0FBRyxJQUFJLE9B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QVcsRUFBRSxDQUFDO2dCQUNoQixPQUFPLFlBQVksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUMxQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBcUIsRUFBRSxDQUFDLENBQUM7WUFDOUMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO3dHQXZNVSxzQkFBc0I7NEZBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uSW5pdCwgT25EZXN0cm95LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBhZGRTZWNvbmRzLCBpc1Bhc3QgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgY29tYmluZUxhdGVzdCwgZXhoYXVzdE1hcCwgY2F0Y2hFcnJvciwgZGVsYXksIGZpbHRlciwgZmlyc3QsIG1hcCwgc3dpdGNoTWFwLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEFjdGlvbkNvbnRleHRTdG9yZVNvdXJjZUluc3RhbmNlLCBEYnhBY3Rpb25WYWx1ZUdldHRlclJlc3VsdCB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbk9iamVjdCwgTG9ja1NldCwgSXNNb2RpZmllZEZ1bmN0aW9uLCBJc1ZhbGlkRnVuY3Rpb24sIE9ic2VydmFibGVPclZhbHVlLCBhc09ic2VydmFibGUsIElzRXF1YWxGdW5jdGlvbiwgbWFrZUlzTW9kaWZpZWRGdW5jdGlvbk9ic2VydmFibGUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IERieEZvcm1TdGF0ZSwgRGJ4TXV0YWJsZUZvcm0gfSBmcm9tICcuLi8uLi9mb3JtL2Zvcm0nO1xuaW1wb3J0IHsgSXNNb2RpZmllZCwgSXNWYWxpZCwgTWFwRnVuY3Rpb24sIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmV4cG9ydCBjb25zdCBBUFBfQUNUSU9OX0ZPUk1fRElTQUJMRURfS0VZID0gJ2RieF9hY3Rpb25fZm9ybSc7XG5cbmV4cG9ydCB0eXBlIERieEFjdGlvbkZvcm1NYXBWYWx1ZUZ1bmN0aW9uPFQsIE8+ID0gTWFwRnVuY3Rpb248VCwgT2JzZXJ2YWJsZU9yVmFsdWU8RGJ4QWN0aW9uVmFsdWVHZXR0ZXJSZXN1bHQ8Tz4+PjtcblxuLyoqXG4gKiBVc2VkIHdpdGggYW4gYWN0aW9uIHRvIGJpbmQgYSBmb3JtIHRvIGFuIGFjdGlvbiBhcyBpdCdzIHZhbHVlIHNvdXJjZS5cbiAqXG4gKiBJZiB0aGUgZm9ybSBoYXMgZXJyb3JzIHdoZW4gdGhlIGFjdGlvbiBpcyB0cmlnZ2VyLCBpdCB3aWxsIHJlamVjdCB0aGUgYWN0aW9uLlxuICpcbiAqIElmIHRoZSBzb3VyY2UgaXMgbm90IGNvbnNpZGVyZWQgbW9kaWZpZWQsIHRoZSB0cmlnZ2VyIHdpbGwgYmUgaWdub3JlZC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkZvcm1dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Gb3JtRGlyZWN0aXZlPFQgPSBvYmplY3QsIE8gPSBUPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgZm9ybSA9IGluamVjdChEYnhNdXRhYmxlRm9ybTxUPiwgeyBob3N0OiB0cnVlIH0pO1xuICByZWFkb25seSBzb3VyY2UgPSBpbmplY3QoRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2U8TywgdW5rbm93bj4pO1xuXG4gIHJlYWRvbmx5IGxvY2tTZXQgPSBuZXcgTG9ja1NldCgpO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBkaXNhYmxlIHRoZSBmb3JtIHdoaWxlIHRoZSBhY3Rpb24gaXMgd29ya2luZy5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1EaXNhYmxlZE9uV29ya2luZyA9IGlucHV0PE1heWJlPGJvb2xlYW4+Pih0cnVlKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgdmFsaWRhdG9yIHRoYXQgY2hlY2tzIHdoZXRoZXIgb3Igbm90IHRoZSB2YWx1ZSBpc1xuICAgKiByZWFkeSB0byBzZW5kIGJlZm9yZSB0aGUgY29udGV4dCBzdG9yZSBpcyBtYXJrZWQgZW5hYmxlZC5cbiAgICovXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1Jc1ZhbGlkID0gaW5wdXQ8TWF5YmU8SXNWYWxpZEZ1bmN0aW9uPFQ+Pj4oKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZnVuY3Rpb24gdGhhdCBjaGVja3Mgd2hldGhlciBvciBub3QgdGhlIHZhbHVlIGlzIHN0aWxsIHRoZSBzYW1lL2VxdWFsLlxuICAgKi9cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRm9ybUlzRXF1YWwgPSBpbnB1dDxNYXliZTxJc0VxdWFsRnVuY3Rpb248VD4+PigpO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBmdW5jdGlvbiB0aGF0IGNoZWNrcyB3aGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgaGFzIGJlZW4gbW9kaWZpZWQuXG4gICAqXG4gICAqIElmIGRieEFjdGlvbkZvcm1Jc0VxdWFsIGlzIHByb3ZpZGVkLCB0aGlzIHdpbGwgYmUgaWdub3JlZC5cbiAgICovXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1Jc01vZGlmaWVkID0gaW5wdXQ8TWF5YmU8SXNNb2RpZmllZEZ1bmN0aW9uPFQ+Pj4oKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZnVuY3Rpb24gdGhhdCBtYXBzIHRoZSBmb3JtJ3MgdmFsdWUgdG8gdGhlIHNvdXJjZSdzIHZhbHVlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRm9ybU1hcFZhbHVlID0gaW5wdXQ8TWF5YmU8RGJ4QWN0aW9uRm9ybU1hcFZhbHVlRnVuY3Rpb248VCwgTz4+PigpO1xuXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1EaXNhYmxlZE9uV29ya2luZyQgPSB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25Gb3JtRGlzYWJsZWRPbldvcmtpbmcpO1xuXG4gIHJlYWRvbmx5IGlzVmFsaWRGdW5jdGlvbiQgPSB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25Gb3JtSXNWYWxpZCkucGlwZShcbiAgICBtYXAoKHgpID0+IHggPz8gKCgpID0+IG9mKHRydWUpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgaXNNb2RpZmllZEZ1bmN0aW9uJDogT2JzZXJ2YWJsZTxJc01vZGlmaWVkRnVuY3Rpb248VD4+ID0gbWFrZUlzTW9kaWZpZWRGdW5jdGlvbk9ic2VydmFibGUoe1xuICAgIGlzTW9kaWZpZWQ6IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvbkZvcm1Jc01vZGlmaWVkKSxcbiAgICBpc0VxdWFsOiB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25Gb3JtSXNFcXVhbClcbiAgfSkucGlwZShzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgbWFwVmFsdWVGdW5jdGlvbiQ6IE9ic2VydmFibGU8TWF5YmU8RGJ4QWN0aW9uRm9ybU1hcFZhbHVlRnVuY3Rpb248VCwgTz4+PiA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvbkZvcm1NYXBWYWx1ZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdHJpZ2dlcmVkU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0NvbXBsZXRlU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc1dvcmtpbmdTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5sb2NrU2V0KSB7XG4gICAgICB0aGlzLmxvY2tTZXQuYWRkQ2hpbGRMb2NrU2V0KHRoaXMuZm9ybS5sb2NrU2V0LCAnZm9ybScpO1xuICAgIH1cblxuICAgIHRoaXMubG9ja1NldC5hZGRDaGlsZExvY2tTZXQodGhpcy5zb3VyY2UubG9ja1NldCwgJ3NvdXJjZScpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gUGFzcyBkYXRhIGZyb20gdGhlIGZvcm0gdG8gdGhlIHNvdXJjZSB3aGVuIHRyaWdnZXJlZC5cbiAgICB0aGlzLl90cmlnZ2VyZWRTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5zb3VyY2UudHJpZ2dlcmVkJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICAgIHRoaXMuZm9ybS5zdHJlYW0kLnBpcGUoXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgZXhoYXVzdE1hcCgoc3RyZWFtKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHsgaXNDb21wbGV0ZSB9ID0gc3RyZWFtO1xuICAgICAgICAgICAgICBjb25zdCBkb05vdGhpbmcgPSB7fTsgLy8gbm90aGluZywgZm9ybSBub3QgY29tcGxldGVcblxuICAgICAgICAgICAgICBsZXQgb2JzOiBPYnNlcnZhYmxlPERieEFjdGlvblZhbHVlR2V0dGVyUmVzdWx0PE8+PjtcblxuICAgICAgICAgICAgICBpZiAoaXNDb21wbGV0ZSkge1xuICAgICAgICAgICAgICAgIG9icyA9IHRoaXMuZm9ybS5nZXRWYWx1ZSgpLnBpcGUoXG4gICAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgICAgZXhoYXVzdE1hcCgodmFsdWUpID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlQ2hlY2tSZWFkeVZhbHVlKHZhbHVlKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChjYW5Db250aW51ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNhbkNvbnRpbnVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlYWR5VmFsdWUodmFsdWUpLnBpcGUoZmlyc3QoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoZG9Ob3RoaW5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gb2YoeyByZWplY3Q6IGVycm9yIH0pKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvYnMgPSBvZihkb05vdGhpbmcpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuIG9icztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IERieEFjdGlvblZhbHVlR2V0dGVyUmVzdWx0PE8+KSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVqZWN0KSB7XG4gICAgICAgICAgdGhpcy5zb3VyY2UucmVqZWN0KHJlc3VsdC5yZWplY3QpO1xuICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdC52YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgICAgdGhpcy5zb3VyY2UucmVhZHlWYWx1ZShyZXN1bHQudmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIHZhbHVlIGlzbid0IHJlYWR5XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgLy8gVXBkYXRlIHRoZSBlbmFibGVkL2Rpc2FibGVkIHN0YXRlXG4gICAgdGhpcy5faXNDb21wbGV0ZVN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmZvcm0uc3RyZWFtJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlbGF5KDApLFxuICAgICAgICBmaWx0ZXIoKHgpID0+IHguc3RhdGUgIT09IERieEZvcm1TdGF0ZS5JTklUSUFMSVpJTkcpLFxuICAgICAgICBzd2l0Y2hNYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5nZXRWYWx1ZSgpLnBpcGUoXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgZXhoYXVzdE1hcCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgLy8gVXNlIGJvdGggY2hhbmdlcyBjb3VudCBhbmQgd2hldGhlciBvciBub3Qgc29tZXRoaW5nIHdhcyBpbiB0aGUgcGFzdCB0byBndWFnZSB3aGV0aGVyIG9yIG5vdCB0aGUgaXRlbSBoYXMgYmVlbiB0b3VjaGVkLlxuICAgICAgICAgICAgICAvLyBBbmd1bGFyIEZvcm0ncyB1bnRvdWNoZWQgaXMgd2hldGhlciBvciBub3QgZm9jdXMgaGFzIGJlZW4gbG9zdCBidXQgd2UgY2FuIHN0aWxsIHJlY2VpdmUgdmFsdWUgdXBkYXRlcy5cbiAgICAgICAgICAgICAgLy8gTW9yZSB0aGFuIGEgY2VydGFpbiBhbW91bnQgb2YgdXBkYXRlcyBpbXBsaWVzIHRoYXQgaXQgaXMgYmVpbmcgdHlwZWQgaW50by91c2VkLlxuICAgICAgICAgICAgICAvLyAzIGNoYW5nZXMgYW5kIDIgc2Vjb25kcyBhcmUgYXJiaXRyYXJ5IHZhbHVlcyBkZXJpdmVkIGZyb20gZ3Vlc3NlcyBhYm91dCBhbnkgc2xvdy9sYXRlIGNoYW5nZXMgdGhhdCBtYXkgY29tZSBmcm9tIGV4dGVybmFsIGRpcmVjdGl2ZXMgZm9yIHNldHVwLlxuICAgICAgICAgICAgICBjb25zdCBpc1Byb2JhYmx5VG91Y2hlZCA9ICFldmVudC51bnRvdWNoZWQgfHwgKChldmVudC5jaGFuZ2VzQ291bnQgPz8gMCkgPiAzICYmIGlzUGFzdChhZGRTZWNvbmRzKGV2ZW50Lmxhc3RSZXNldEF0ID8/IG5ldyBEYXRlKCksIDIpKSk7XG5cbiAgICAgICAgICAgICAgLy8gY3JlYXRlIG92ZXJyaWRlc1xuICAgICAgICAgICAgICBjb25zdCByZXR1cm5GYWxzZUZ1bmN0aW9uID0gKCkgPT4gb2YoZmFsc2UpO1xuXG4gICAgICAgICAgICAgIGNvbnN0IHJ1bklzVmFsaWRDaGVjayA9IGV2ZW50LmlzQ29tcGxldGU7XG4gICAgICAgICAgICAgIGNvbnN0IGlzVmFsaWRGdW5jdGlvbjogTWF5YmU8SXNWYWxpZEZ1bmN0aW9uPFQ+PiA9IHJ1bklzVmFsaWRDaGVjayA/IHVuZGVmaW5lZCA6IHJldHVybkZhbHNlRnVuY3Rpb247XG5cbiAgICAgICAgICAgICAgY29uc3QgaXNDb25zaWRlcmVkTW9kaWZpZWQgPSBldmVudC5wcmlzdGluZSA9PT0gZmFsc2UgJiYgaXNQcm9iYWJseVRvdWNoZWQ7XG4gICAgICAgICAgICAgIGNvbnN0IGlzTW9kaWZpZWRGdW5jdGlvbjogTWF5YmU8SXNNb2RpZmllZEZ1bmN0aW9uPFQ+PiA9IGlzQ29uc2lkZXJlZE1vZGlmaWVkID8gdW5kZWZpbmVkIDogcmV0dXJuRmFsc2VGdW5jdGlvbjtcblxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jaGVja0lzVmFsaWRBbmRJc01vZGlmaWVkKHZhbHVlLCB7IGlzVmFsaWRGdW5jdGlvbiwgaXNNb2RpZmllZEZ1bmN0aW9uIH0pLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChbdmFsaWQsIG1vZGlmaWVkXTogW2Jvb2xlYW4sIGJvb2xlYW5dKSA9PiAoeyB2YWxpZCwgbW9kaWZpZWQsIHZhbHVlLCBldmVudCB9KSksXG4gICAgICAgICAgICAgICAgZmlyc3QoKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoeyB2YWxpZCwgbW9kaWZpZWQgLyosIHZhbHVlLCBldmVudCAqLyB9KSA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCd4OiAnLCB2YWx1ZSwgZXZlbnQsIHZhbGlkLCBtb2RpZmllZCk7XG5cbiAgICAgICAgLy8gVXBkYXRlIE1vZGlmaWVkIFN0YXRlXG4gICAgICAgIHRoaXMuc291cmNlLnNldElzTW9kaWZpZWQobW9kaWZpZWQpO1xuXG4gICAgICAgIC8vIERpc2FibGUgaWYgdGhlIGZvcm0gaXMgbm90IHlldCBjb21wbGV0ZS92YWxpZC5cbiAgICAgICAgdGhpcy5zb3VyY2UuZW5hYmxlKEFQUF9BQ1RJT05fRk9STV9ESVNBQkxFRF9LRVksIHZhbGlkKTtcbiAgICAgIH0pO1xuXG4gICAgLy8gV2F0Y2ggdGhlIHdvcmtpbmcgc3RhdGUgYW5kIGRpc2FibGUgZm9ybSB3aGlsZSB3b3JraW5nXG4gICAgdGhpcy5faXNXb3JraW5nU3ViLnN1YnNjcmlwdGlvbiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc291cmNlLmlzV29ya2luZyQsIHRoaXMuZGJ4QWN0aW9uRm9ybURpc2FibGVkT25Xb3JraW5nJF0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbaXNXb3JraW5nLCBkaXNhYmxlRm9ybVdoaWxlV29ya2luZ106IFtib29sZWFuLCBNYXliZTxib29sZWFuPl0pID0+IGRpc2FibGVGb3JtV2hpbGVXb3JraW5nICE9PSBmYWxzZSAmJiBpc1dvcmtpbmcpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChkaXNhYmxlKSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybS5zZXREaXNhYmxlZChBUFBfQUNUSU9OX0ZPUk1fRElTQUJMRURfS0VZLCBkaXNhYmxlKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zb3VyY2UuZW5hYmxlKEFQUF9BQ1RJT05fRk9STV9ESVNBQkxFRF9LRVkpO1xuICAgIHRoaXMubG9ja1NldC5kZXN0cm95T25OZXh0VW5sb2NrKCgpID0+IHtcbiAgICAgIHRoaXMuX3RyaWdnZXJlZFN1Yi5kZXN0cm95KCk7XG4gICAgICB0aGlzLl9pc0NvbXBsZXRlU3ViLmRlc3Ryb3koKTtcbiAgICAgIHRoaXMuX2lzV29ya2luZ1N1Yi5kZXN0cm95KCk7XG4gICAgICB0aGlzLmZvcm0uc2V0RGlzYWJsZWQoQVBQX0FDVElPTl9GT1JNX0RJU0FCTEVEX0tFWSwgZmFsc2UpO1xuICAgIH0pO1xuICB9XG5cbiAgY2hlY2tJc1ZhbGlkQW5kSXNNb2RpZmllZCh2YWx1ZTogVCwgb3ZlcnJpZGVzPzogQ2hlY2tWYWxpZEFuZE1vZGlmaWVkT3ZlcnJpZGVzPFQ+KTogT2JzZXJ2YWJsZTxbSXNWYWxpZCwgSXNNb2RpZmllZF0+IHtcbiAgICBjb25zdCB7IGlzTW9kaWZpZWRGdW5jdGlvbjogb3ZlcnJpZGVJc01vZGlmaWVkRnVuY3Rpb24sIGlzVmFsaWRGdW5jdGlvbjogb3ZlcnJpZGVJc1ZhbGlkRnVuY3Rpb24gfSA9IG92ZXJyaWRlcyA/PyB7fTtcbiAgICBjb25zdCBpc1ZhbGlkRnVuY3Rpb25PYnMgPSBvdmVycmlkZUlzVmFsaWRGdW5jdGlvbiAhPSBudWxsID8gb2Yob3ZlcnJpZGVJc1ZhbGlkRnVuY3Rpb24pIDogdGhpcy5pc1ZhbGlkRnVuY3Rpb24kO1xuICAgIGNvbnN0IGlzTW9kaWZpZWRGdW5jdGlvbk9icyA9IG92ZXJyaWRlSXNNb2RpZmllZEZ1bmN0aW9uICE9IG51bGwgPyBvZihvdmVycmlkZUlzTW9kaWZpZWRGdW5jdGlvbikgOiB0aGlzLmlzTW9kaWZpZWRGdW5jdGlvbiQ7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbaXNWYWxpZEZ1bmN0aW9uT2JzLCBpc01vZGlmaWVkRnVuY3Rpb25PYnNdKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChbaXNWYWxpZCwgaXNNb2RpZmllZF0pID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW2lzVmFsaWQodmFsdWUpLCBpc01vZGlmaWVkKHZhbHVlKV0pLnBpcGUobWFwKChbdmFsaWQsIG1vZGlmaWVkXSkgPT4gW3ZhbGlkLCBtb2RpZmllZF0gYXMgW2Jvb2xlYW4sIGJvb2xlYW5dKSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJlQ2hlY2tSZWFkeVZhbHVlKHZhbHVlOiBUKTogT2JzZXJ2YWJsZTxbSXNWYWxpZCwgSXNNb2RpZmllZF0+IHtcbiAgICByZXR1cm4gdGhpcy5jaGVja0lzVmFsaWRBbmRJc01vZGlmaWVkKHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkeVZhbHVlKHZhbHVlOiBUKTogT2JzZXJ2YWJsZTxEYnhBY3Rpb25WYWx1ZUdldHRlclJlc3VsdDxPPj4ge1xuICAgIHJldHVybiB0aGlzLm1hcFZhbHVlRnVuY3Rpb24kLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKG1hcEZ1bmN0aW9uKSA9PiB7XG4gICAgICAgIGlmIChtYXBGdW5jdGlvbikge1xuICAgICAgICAgIHJldHVybiBhc09ic2VydmFibGUobWFwRnVuY3Rpb24odmFsdWUpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gb2YoeyB2YWx1ZTogdmFsdWUgYXMgdW5rbm93biBhcyBPIH0pO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cblxuaW50ZXJmYWNlIENoZWNrVmFsaWRBbmRNb2RpZmllZE92ZXJyaWRlczxUPiB7XG4gIGlzTW9kaWZpZWRGdW5jdGlvbj86IE1heWJlPElzTW9kaWZpZWRGdW5jdGlvbjxUPj47XG4gIGlzVmFsaWRGdW5jdGlvbj86IE1heWJlPElzVmFsaWRGdW5jdGlvbjxUPj47XG59XG4iXX0=
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { MatDialogModule } from '@angular/material/dialog';
|
|
2
1
|
import { NgModule } from '@angular/core';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
2
|
import { DbxActionFormDirective } from './form.action.directive';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Import DbxActionFormDirective directly instead.
|
|
6
|
+
*/
|
|
6
7
|
export class DbxFormActionModule {
|
|
7
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
8
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
9
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionModule, imports: [DbxActionFormDirective], exports: [DbxActionFormDirective] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionModule });
|
|
10
11
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionModule, decorators: [{
|
|
12
13
|
type: NgModule,
|
|
13
14
|
args: [{
|
|
14
|
-
imports: [
|
|
15
|
-
declarations: [DbxActionFormDirective],
|
|
15
|
+
imports: [DbxActionFormDirective],
|
|
16
16
|
exports: [DbxActionFormDirective]
|
|
17
17
|
}]
|
|
18
18
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2FjdGlvbi9mb3JtLmFjdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFFakU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sbUJBQW1CO3dHQUFuQixtQkFBbUI7eUdBQW5CLG1CQUFtQixZQUhwQixzQkFBc0IsYUFDdEIsc0JBQXNCO3lHQUVyQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBSi9CLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Gb3JtRGlyZWN0aXZlIH0gZnJvbSAnLi9mb3JtLmFjdGlvbi5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIEltcG9ydCBEYnhBY3Rpb25Gb3JtRGlyZWN0aXZlIGRpcmVjdGx5IGluc3RlYWQuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtEYnhBY3Rpb25Gb3JtRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0RieEFjdGlvbkZvcm1EaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1BY3Rpb25Nb2R1bGUge31cbiJdfQ==
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
2
|
import { DbxActionFormSafetyDirective } from './form.action.transition.safety.directive';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated import DbxActionFormSafetyDirective directly
|
|
6
|
+
*/
|
|
5
7
|
export class DbxFormActionTransitionModule {
|
|
6
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
7
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
8
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionTransitionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionTransitionModule, imports: [DbxActionFormSafetyDirective], exports: [DbxActionFormSafetyDirective] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionTransitionModule });
|
|
9
11
|
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormActionTransitionModule, decorators: [{
|
|
11
13
|
type: NgModule,
|
|
12
14
|
args: [{
|
|
13
|
-
imports: [
|
|
14
|
-
declarations: [DbxActionFormSafetyDirective],
|
|
15
|
+
imports: [DbxActionFormSafetyDirective],
|
|
15
16
|
exports: [DbxActionFormSafetyDirective]
|
|
16
17
|
}]
|
|
17
18
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24udHJhbnNpdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm0vYWN0aW9uL3RyYW5zaXRpb24vZm9ybS5hY3Rpb24udHJhbnNpdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFFekY7O0dBRUc7QUFLSCxNQUFNLE9BQU8sNkJBQTZCO3dHQUE3Qiw2QkFBNkI7eUdBQTdCLDZCQUE2QixZQUg5Qiw0QkFBNEIsYUFDNUIsNEJBQTRCO3lHQUUzQiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBSnpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsNEJBQTRCLENBQUM7b0JBQ3ZDLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFDO2lCQUN4QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Gb3JtU2FmZXR5RGlyZWN0aXZlIH0gZnJvbSAnLi9mb3JtLmFjdGlvbi50cmFuc2l0aW9uLnNhZmV0eS5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIGltcG9ydCBEYnhBY3Rpb25Gb3JtU2FmZXR5RGlyZWN0aXZlIGRpcmVjdGx5XG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtEYnhBY3Rpb25Gb3JtU2FmZXR5RGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0RieEFjdGlvbkZvcm1TYWZldHlEaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1BY3Rpb25UcmFuc2l0aW9uTW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Directive,
|
|
1
|
+
import { Directive, effect, inject, input } from '@angular/core';
|
|
2
2
|
import { DbxActionTransitionSafetyDirective } from '@dereekb/dbx-web';
|
|
3
3
|
import { DbxActionFormDirective } from '../form.action.directive';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -9,21 +9,24 @@ import * as i0 from "@angular/core";
|
|
|
9
9
|
*/
|
|
10
10
|
export class DbxActionFormSafetyDirective extends DbxActionTransitionSafetyDirective {
|
|
11
11
|
dbxActionForm = inject((DbxActionFormDirective), { host: true });
|
|
12
|
-
|
|
12
|
+
dbxActionFormSafety = input('auto');
|
|
13
|
+
_dbxActionFormSafetyUpdateEffect = effect(() => this._safetyType.next(this.dbxActionFormSafety()));
|
|
13
14
|
_handleOnBeforeTransition(transition) {
|
|
14
15
|
this.dbxActionForm.form.forceFormUpdate();
|
|
15
16
|
return super._handleOnBeforeTransition(transition);
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
ngOnDestroy() {
|
|
19
|
+
super.ngOnDestroy();
|
|
20
|
+
this._dbxActionFormSafetyUpdateEffect.destroy();
|
|
21
|
+
}
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFormSafetyDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxActionFormSafetyDirective, isStandalone: true, selector: "[dbxActionFormSafety]", inputs: { dbxActionFormSafety: { classPropertyName: "dbxActionFormSafety", publicName: "dbxActionFormSafety", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
19
24
|
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxActionFormSafetyDirective, decorators: [{
|
|
21
26
|
type: Directive,
|
|
22
27
|
args: [{
|
|
23
|
-
selector: '[dbxActionFormSafety]'
|
|
28
|
+
selector: '[dbxActionFormSafety]',
|
|
29
|
+
standalone: true
|
|
24
30
|
}]
|
|
25
|
-
}]
|
|
26
|
-
|
|
27
|
-
args: ['dbxActionFormSafety']
|
|
28
|
-
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24udHJhbnNpdGlvbi5zYWZldHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2FjdGlvbi90cmFuc2l0aW9uL2Zvcm0uYWN0aW9uLnRyYW5zaXRpb24uc2FmZXR5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFekQsT0FBTyxFQUFpQyxrQ0FBa0MsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUVsRTs7OztHQUlHO0FBSUgsTUFBTSxPQUFPLDRCQUFtQyxTQUFRLGtDQUF3QztJQUNyRixhQUFhLEdBQUcsTUFBTSxDQUFDLENBQUEsc0JBQXlCLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBR2xFLGVBQWUsR0FBbUMsTUFBTSxDQUFDO0lBRS9DLHlCQUF5QixDQUFDLFVBQXNCO1FBQ2pFLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzFDLE9BQU8sS0FBSyxDQUFDLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7d0dBVFUsNEJBQTRCOzRGQUE1Qiw0QkFBNEI7OzRGQUE1Qiw0QkFBNEI7a0JBSHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtpQkFDbEM7OEJBS1UsZUFBZTtzQkFEdkIsS0FBSzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEhvb2tSZXN1bHQsIFRyYW5zaXRpb24gfSBmcm9tICdAdWlyb3V0ZXIvY29yZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25UcmFuc2l0aW9uU2FmZXR5VHlwZSwgRGJ4QWN0aW9uVHJhbnNpdGlvblNhZmV0eURpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgRGJ4QWN0aW9uRm9ybURpcmVjdGl2ZSB9IGZyb20gJy4uL2Zvcm0uYWN0aW9uLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogRXh0ZW5zaW9uIG9mIERieEFjdGlvblRyYW5zaXRpb25TYWZldHlEaXJlY3RpdmUgdGhhdCBmb3JjZXMgdGhlIGZvcm0gdG8gdXBkYXRlIGZpcnN0LlxuICpcbiAqIE5PVEU6IE9ubHkgd29ya3Mgd2l0aCBVSVJvdXRlclxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uRm9ybVNhZmV0eV0nXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkZvcm1TYWZldHlEaXJlY3RpdmU8VCwgTz4gZXh0ZW5kcyBEYnhBY3Rpb25UcmFuc2l0aW9uU2FmZXR5RGlyZWN0aXZlPFQsIE8+IHtcbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRm9ybSA9IGluamVjdChEYnhBY3Rpb25Gb3JtRGlyZWN0aXZlPFQ+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgQElucHV0KCdkYnhBY3Rpb25Gb3JtU2FmZXR5JylcbiAgb3ZlcnJpZGUgaW5wdXRTYWZldHlUeXBlPzogRGJ4QWN0aW9uVHJhbnNpdGlvblNhZmV0eVR5cGUgPSAnYXV0byc7XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIF9oYW5kbGVPbkJlZm9yZVRyYW5zaXRpb24odHJhbnNpdGlvbjogVHJhbnNpdGlvbik6IEhvb2tSZXN1bHQge1xuICAgIHRoaXMuZGJ4QWN0aW9uRm9ybS5mb3JtLmZvcmNlRm9ybVVwZGF0ZSgpO1xuICAgIHJldHVybiBzdXBlci5faGFuZGxlT25CZWZvcmVUcmFuc2l0aW9uKHRyYW5zaXRpb24pO1xuICB9XG59XG4iXX0=
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24udHJhbnNpdGlvbi5zYWZldHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2FjdGlvbi90cmFuc2l0aW9uL2Zvcm0uYWN0aW9uLnRyYW5zaXRpb24uc2FmZXR5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpFLE9BQU8sRUFBaUMsa0NBQWtDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFbEU7Ozs7R0FJRztBQUtILE1BQU0sT0FBTyw0QkFBbUMsU0FBUSxrQ0FBd0M7SUFDckYsYUFBYSxHQUFHLE1BQU0sQ0FBQyxDQUFBLHNCQUF5QixDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNsRSxtQkFBbUIsR0FBRyxLQUFLLENBQWdDLE1BQU0sQ0FBQyxDQUFDO0lBRXpELGdDQUFnQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFbkcseUJBQXlCLENBQUMsVUFBc0I7UUFDakUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDMUMsT0FBTyxLQUFLLENBQUMseUJBQXlCLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVRLFdBQVc7UUFDbEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNsRCxDQUFDO3dHQWRVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCOzs0RkFBNUIsNEJBQTRCO2tCQUp4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIb29rUmVzdWx0LCBUcmFuc2l0aW9uIH0gZnJvbSAnQHVpcm91dGVyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uVHJhbnNpdGlvblNhZmV0eVR5cGUsIERieEFjdGlvblRyYW5zaXRpb25TYWZldHlEaXJlY3RpdmUgfSBmcm9tICdAZGVyZWVrYi9kYngtd2ViJztcbmltcG9ydCB7IERieEFjdGlvbkZvcm1EaXJlY3RpdmUgfSBmcm9tICcuLi9mb3JtLmFjdGlvbi5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEV4dGVuc2lvbiBvZiBEYnhBY3Rpb25UcmFuc2l0aW9uU2FmZXR5RGlyZWN0aXZlIHRoYXQgZm9yY2VzIHRoZSBmb3JtIHRvIHVwZGF0ZSBmaXJzdC5cbiAqXG4gKiBOT1RFOiBPbmx5IHdvcmtzIHdpdGggVUlSb3V0ZXJcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkZvcm1TYWZldHldJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhBY3Rpb25Gb3JtU2FmZXR5RGlyZWN0aXZlPFQsIE8+IGV4dGVuZHMgRGJ4QWN0aW9uVHJhbnNpdGlvblNhZmV0eURpcmVjdGl2ZTxULCBPPiB7XG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm0gPSBpbmplY3QoRGJ4QWN0aW9uRm9ybURpcmVjdGl2ZTxUPiwgeyBob3N0OiB0cnVlIH0pO1xuICByZWFkb25seSBkYnhBY3Rpb25Gb3JtU2FmZXR5ID0gaW5wdXQ8RGJ4QWN0aW9uVHJhbnNpdGlvblNhZmV0eVR5cGU+KCdhdXRvJyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9kYnhBY3Rpb25Gb3JtU2FmZXR5VXBkYXRlRWZmZWN0ID0gZWZmZWN0KCgpID0+IHRoaXMuX3NhZmV0eVR5cGUubmV4dCh0aGlzLmRieEFjdGlvbkZvcm1TYWZldHkoKSkpO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBfaGFuZGxlT25CZWZvcmVUcmFuc2l0aW9uKHRyYW5zaXRpb246IFRyYW5zaXRpb24pOiBIb29rUmVzdWx0IHtcbiAgICB0aGlzLmRieEFjdGlvbkZvcm0uZm9ybS5mb3JjZUZvcm1VcGRhdGUoKTtcbiAgICByZXR1cm4gc3VwZXIuX2hhbmRsZU9uQmVmb3JlVHJhbnNpdGlvbih0cmFuc2l0aW9uKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgdGhpcy5fZGJ4QWN0aW9uRm9ybVNhZmV0eVVwZGF0ZUVmZmVjdC5kZXN0cm95KCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -39,4 +39,4 @@ export function toggleDisableFormControl(form, isDisabled, config) {
|
|
|
39
39
|
form.enable(config);
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybS9mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBTTNEOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksWUFhWDtBQWJELFdBQVksWUFBWTtJQUN0Qjs7T0FFRztJQUNILGdFQUFpQixDQUFBO0lBQ2pCOztPQUVHO0lBQ0gsaURBQVMsQ0FBQTtJQUNUOztPQUVHO0lBQ0gsK0NBQVEsQ0FBQTtBQUNWLENBQUMsRUFiVyxZQUFZLEtBQVosWUFBWSxRQWF2QjtBQU9ELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLG1CQUFtQixDQUFDO0FBMEI3RDs7R0FFRztBQUNILE1BQU0sT0FBZ0IsT0FBTztDQVk1QjtBQUVELE1BQU0sT0FBZ0IsY0FBNEIsU0FBUSxPQUFVO0NBNkJuRTtBQUVELE1BQU0sVUFBVSxjQUFjLENBQW9CLFVBQW1CO0lBQ25FLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQUVELE1BQU0sVUFBVSxxQkFBcUIsQ0FBMkIsVUFBbUI7SUFDakYsT0FBTyxDQUFDLEdBQUcsY0FBYyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNqSCxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUFDLElBQTBCLEVBQUUsVUFBbUIsRUFBRSxNQUFrRDtJQUMxSSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2QixDQUFDO1NBQU0sQ0FBQztRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEIsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3J3YXJkUmVmLCBQcm92aWRlciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTG9ja1NldCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQm9vbGVhblN0cmluZ0tleUFycmF5LCB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sU3RhdHVzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vKipcbiAqIEN1cnJlbnQgc3RhdGUgb2YgYSBEYnhGb3JtXG4gKi9cbmV4cG9ydCBlbnVtIERieEZvcm1TdGF0ZSB7XG4gIC8qKlxuICAgKiBGb3JtIGlzIG5vdCBmaW5pc2hlZCBpbml0aWFsaXppbmcuXG4gICAqL1xuICBJTklUSUFMSVpJTkcgPSAtMSxcbiAgLyoqXG4gICAqIEZvcm0gaXMgaW5pdGlhbGl6ZWQgYnV0IGhhcyBub3QgeWV0IHVzZWQuXG4gICAqL1xuICBSRVNFVCA9IDAsXG4gIC8qKlxuICAgKiBGb3JtIGhhcyBiZWVuIHVzZWQuXG4gICAqL1xuICBVU0VEID0gMVxufVxuXG4vKipcbiAqIFVuaXF1ZSBrZXkgZm9yIGRpc2FibGluZy9lbmFibGluZy5cbiAqL1xuZXhwb3J0IHR5cGUgRGJ4Rm9ybURpc2FibGVkS2V5ID0gc3RyaW5nO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9GT1JNX0RJU0FCTEVEX0tFWSA9ICdkYnhfZm9ybV9kaXNhYmxlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4Rm9ybVN0YXRlUmVmIHtcbiAgcmVhZG9ubHkgc3RhdGU6IERieEZvcm1TdGF0ZTtcbn1cblxuLyoqXG4gKiBEYnhGb3JtIHN0cmVhbSBldmVudFxuICovXG5leHBvcnQgaW50ZXJmYWNlIERieEZvcm1FdmVudCBleHRlbmRzIERieEZvcm1TdGF0ZVJlZiB7XG4gIHJlYWRvbmx5IGlzQ29tcGxldGU6IGJvb2xlYW47XG4gIHJlYWRvbmx5IHN0YXR1czogRm9ybUNvbnRyb2xTdGF0dXM7XG4gIHJlYWRvbmx5IHByaXN0aW5lPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgdW50b3VjaGVkPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbGFzdFJlc2V0QXQ/OiBEYXRlO1xuICByZWFkb25seSBjaGFuZ2VzQ291bnQ/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgZm9ybSBpcyBkaXNhYmxlZC5cbiAgICovXG4gIHJlYWRvbmx5IGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogQ3VycmVudCBkaXNhYmxlZCBzdGF0ZSBrZXlzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZWQ/OiBCb29sZWFuU3RyaW5nS2V5QXJyYXk7XG59XG5cbi8qKlxuICogRm9ybSB0aGF0IGhhcyBhbiBldmVudCBzdHJlYW0sIHZhbHVlLCBhbmQgc3RhdGUgaXRlbXMuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYnhGb3JtPFQgPSB1bmtub3duPiB7XG4gIGFic3RyYWN0IHJlYWRvbmx5IHN0cmVhbSQ6IE9ic2VydmFibGU8RGJ4Rm9ybUV2ZW50PjtcblxuICAvKipcbiAgICogUmV0dXJucyBhbiBvYnNlcnZhYmxlIHRoYXQgcmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgZm9ybS5cbiAgICovXG4gIGFic3RyYWN0IGdldFZhbHVlKCk6IE9ic2VydmFibGU8VD47XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JzZXJ2YWJsZSB0aGF0IHJldHVybnMgdGhlIGN1cnJlbnQgZGlzYWJsZWQga2V5cy5cbiAgICovXG4gIGFic3RyYWN0IGdldERpc2FibGVkKCk6IE9ic2VydmFibGU8Qm9vbGVhblN0cmluZ0tleUFycmF5Pjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERieE11dGFibGVGb3JtPFQgPSB1bmtub3duPiBleHRlbmRzIERieEZvcm08VD4ge1xuICAvKipcbiAgICogTG9ja1NldCBmb3IgdGhlIGZvcm0uXG4gICAqL1xuICBhYnN0cmFjdCByZWFkb25seSBsb2NrU2V0PzogTG9ja1NldDtcblxuICAvKipcbiAgICogU2V0cyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgZm9ybSwgYW5kIHJlc2V0cyB0aGUgZm9ybS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlXG4gICAqL1xuICBhYnN0cmFjdCBzZXRWYWx1ZSh2YWx1ZTogTWF5YmU8UGFydGlhbDxUPj4pOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBSZXNldHMgdGhlIGZvcm0gdG8gdGhlIGluaXRpYWwgdmFsdWUuXG4gICAqL1xuICBhYnN0cmFjdCByZXNldEZvcm0oKTogdm9pZDtcblxuICAvKipcbiAgICogRGlzYWJsZXMgdGhlIGZvcm1cbiAgICpcbiAgICogQHBhcmFtIGRpc2FibGVkXG4gICAqL1xuICBhYnN0cmFjdCBzZXREaXNhYmxlZChrZXk/OiBEYnhGb3JtRGlzYWJsZWRLZXksIGRpc2FibGVkPzogYm9vbGVhbik6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIEZvcmNlIHRoZSBmb3JtIHRvIHVwZGF0ZSBpdHNlbGYgYXMgaWYgaXQgd2FzIGNoYW5nZWQuXG4gICAqL1xuICBhYnN0cmFjdCBmb3JjZUZvcm1VcGRhdGUoKTogdm9pZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVEYnhGb3JtPFMgZXh0ZW5kcyBEYnhGb3JtPihzb3VyY2VUeXBlOiBUeXBlPFM+KTogUHJvdmlkZXJbXSB7XG4gIHJldHVybiBbeyBwcm92aWRlOiBEYnhGb3JtLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBzb3VyY2VUeXBlKSB9XTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVEYnhNdXRhYmxlRm9ybTxTIGV4dGVuZHMgRGJ4TXV0YWJsZUZvcm0+KHNvdXJjZVR5cGU6IFR5cGU8Uz4pOiBQcm92aWRlcltdIHtcbiAgcmV0dXJuIFsuLi5wcm92aWRlRGJ4Rm9ybShzb3VyY2VUeXBlKSwgeyBwcm92aWRlOiBEYnhNdXRhYmxlRm9ybSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gc291cmNlVHlwZSkgfV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b2dnbGVEaXNhYmxlRm9ybUNvbnRyb2woZm9ybTogQWJzdHJhY3RDb250cm9sPGFueT4sIGlzRGlzYWJsZWQ6IGJvb2xlYW4sIGNvbmZpZz86IFBhcmFtZXRlcnM8QWJzdHJhY3RDb250cm9sWydkaXNhYmxlJ10+WzBdKSB7XG4gIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgZm9ybS5kaXNhYmxlKGNvbmZpZyk7XG4gIH0gZWxzZSB7XG4gICAgZm9ybS5lbmFibGUoY29uZmlnKTtcbiAgfVxufVxuIl19
|
|
@@ -4,11 +4,11 @@ import { DbxFormActionTransitionModule } from './action/transition/form.action.t
|
|
|
4
4
|
import { NgModule } from '@angular/core';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class DbxFormModule {
|
|
7
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
8
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
9
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
7
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
8
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DbxFormModule, exports: [DbxFormActionTransitionModule, DbxFormActionModule, DbxFormIoModule] });
|
|
9
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormModule, imports: [DbxFormActionTransitionModule, DbxFormActionModule, DbxFormIoModule] });
|
|
10
10
|
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormModule, decorators: [{
|
|
12
12
|
type: NgModule,
|
|
13
13
|
args: [{
|
|
14
14
|
exports: [DbxFormActionTransitionModule, DbxFormActionModule, DbxFormIoModule]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Directive,
|
|
1
|
+
import { Directive, inject, output } from '@angular/core';
|
|
2
2
|
import { AbstractSubscriptionDirective } from '@dereekb/dbx-core';
|
|
3
3
|
import { first, mergeMap, delay, map } from 'rxjs';
|
|
4
4
|
import { DbxForm } from '../form';
|
|
@@ -10,32 +10,27 @@ import * as i0 from "@angular/core";
|
|
|
10
10
|
*/
|
|
11
11
|
export class DbxFormValueChangesDirective extends AbstractSubscriptionDirective {
|
|
12
12
|
form = inject((DbxForm), { host: true });
|
|
13
|
-
dbxFormValueChange =
|
|
13
|
+
dbxFormValueChange = output();
|
|
14
14
|
ngOnInit() {
|
|
15
15
|
this.sub = this.form.stream$
|
|
16
16
|
.pipe(mergeMap((x) => this.form.getValue().pipe(first(), map((value) => ({ isComplete: x.isComplete, value })))), delay(0))
|
|
17
17
|
.subscribe(({ isComplete, value }) => {
|
|
18
18
|
if (isComplete) {
|
|
19
|
-
this.dbxFormValueChange.
|
|
19
|
+
this.dbxFormValueChange.emit(value);
|
|
20
20
|
}
|
|
21
21
|
else {
|
|
22
|
-
this.dbxFormValueChange.
|
|
22
|
+
this.dbxFormValueChange.emit(undefined);
|
|
23
23
|
}
|
|
24
24
|
});
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
this.dbxFormValueChange.complete();
|
|
29
|
-
}
|
|
30
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxFormValueChangesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
31
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DbxFormValueChangesDirective, selector: "[dbxFormValueChange]", outputs: { dbxFormValueChange: "dbxFormValueChange" }, usesInheritance: true, ngImport: i0 });
|
|
26
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormValueChangesDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
27
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFormValueChangesDirective, isStandalone: true, selector: "[dbxFormValueChange]", outputs: { dbxFormValueChange: "dbxFormValueChange" }, usesInheritance: true, ngImport: i0 });
|
|
32
28
|
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormValueChangesDirective, decorators: [{
|
|
34
30
|
type: Directive,
|
|
35
31
|
args: [{
|
|
36
|
-
selector: '[dbxFormValueChange]'
|
|
32
|
+
selector: '[dbxFormValueChange]',
|
|
33
|
+
standalone: true
|
|
37
34
|
}]
|
|
38
|
-
}]
|
|
39
|
-
|
|
40
|
-
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jaGFuZ2VzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybS9pby9mb3JtLmNoYW5nZXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFFbEM7Ozs7R0FJRztBQUlILE1BQU0sT0FBTyw0QkFBZ0MsU0FBUSw2QkFBNkI7SUFDdkUsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFBLE9BQVUsQ0FBQSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFHMUMsa0JBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztJQUUzRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87YUFDekIsSUFBSSxDQUNILFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQ3ZCLEtBQUssRUFBRSxFQUNQLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FDdEQsQ0FDRixFQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDVDthQUNBLFNBQVMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDbkMsSUFBSSxVQUFVLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNyQztpQkFBTTtnQkFDTCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2FBQ3pDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVEsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JDLENBQUM7d0dBN0JVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCOzs0RkFBNUIsNEJBQTRCO2tCQUh4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzhCQUtVLGtCQUFrQjtzQkFEMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIE9uSW5pdCwgT25EZXN0cm95LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgdHlwZSBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgZmlyc3QsIG1lcmdlTWFwLCBkZWxheSwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhGb3JtIH0gZnJvbSAnLi4vZm9ybSc7XG5cbi8qKlxuICogVXNlZCB0byBzZWUgZm9ybSB2YWx1ZSBjaGFuZ2VzLlxuICpcbiAqIEVtaXRzIHVuZGVmaW5lZCB3aGVuIHRoZSBmb3JtIGlzIGluY29tcGxldGUsIGFuZCB0aGUgdmFsdWUgd2hlbiB0aGUgZm9ybSBpcyBjb21wbGV0ZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEZvcm1WYWx1ZUNoYW5nZV0nXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1WYWx1ZUNoYW5nZXNEaXJlY3RpdmU8VD4gZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgZm9ybSA9IGluamVjdChEYnhGb3JtPFQ+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IGRieEZvcm1WYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TWF5YmU8VD4+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmZvcm0uc3RyZWFtJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKCh4KSA9PlxuICAgICAgICAgIHRoaXMuZm9ybS5nZXRWYWx1ZSgpLnBpcGUoXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgbWFwKCh2YWx1ZSkgPT4gKHsgaXNDb21wbGV0ZTogeC5pc0NvbXBsZXRlLCB2YWx1ZSB9KSlcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIGRlbGF5KDApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh7IGlzQ29tcGxldGUsIHZhbHVlIH0pID0+IHtcbiAgICAgICAgaWYgKGlzQ29tcGxldGUpIHtcbiAgICAgICAgICB0aGlzLmRieEZvcm1WYWx1ZUNoYW5nZS5uZXh0KHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmRieEZvcm1WYWx1ZUNoYW5nZS5uZXh0KHVuZGVmaW5lZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLmRieEZvcm1WYWx1ZUNoYW5nZS5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
|
|
35
|
+
}] });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jaGFuZ2VzLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybS9pby9mb3JtLmNoYW5nZXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDOztBQUVsQzs7OztHQUlHO0FBS0gsTUFBTSxPQUFPLDRCQUFnQyxTQUFRLDZCQUE2QjtJQUN2RSxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUEsT0FBVSxDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxQyxrQkFBa0IsR0FBRyxNQUFNLEVBQVksQ0FBQztJQUVqRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87YUFDekIsSUFBSSxDQUNILFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQ3ZCLEtBQUssRUFBRSxFQUNQLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FDdEQsQ0FDRixFQUNELEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FDVDthQUNBLFNBQVMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDbkMsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDZixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7d0dBdEJVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCOzs0RkFBNUIsNEJBQTRCO2tCQUp4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25Jbml0LCBPbkRlc3Ryb3ksIGluamVjdCwgb3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IGZpcnN0LCBtZXJnZU1hcCwgZGVsYXksIG1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4Rm9ybSB9IGZyb20gJy4uL2Zvcm0nO1xuXG4vKipcbiAqIFVzZWQgdG8gc2VlIGZvcm0gdmFsdWUgY2hhbmdlcy5cbiAqXG4gKiBFbWl0cyB1bmRlZmluZWQgd2hlbiB0aGUgZm9ybSBpcyBpbmNvbXBsZXRlLCBhbmQgdGhlIHZhbHVlIHdoZW4gdGhlIGZvcm0gaXMgY29tcGxldGUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGb3JtVmFsdWVDaGFuZ2VdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtVmFsdWVDaGFuZ2VzRGlyZWN0aXZlPFQ+IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGZvcm0gPSBpbmplY3QoRGJ4Rm9ybTxUPiwgeyBob3N0OiB0cnVlIH0pO1xuICByZWFkb25seSBkYnhGb3JtVmFsdWVDaGFuZ2UgPSBvdXRwdXQ8TWF5YmU8VD4+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIgPSB0aGlzLmZvcm0uc3RyZWFtJFxuICAgICAgLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKCh4KSA9PlxuICAgICAgICAgIHRoaXMuZm9ybS5nZXRWYWx1ZSgpLnBpcGUoXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgbWFwKCh2YWx1ZSkgPT4gKHsgaXNDb21wbGV0ZTogeC5pc0NvbXBsZXRlLCB2YWx1ZSB9KSlcbiAgICAgICAgICApXG4gICAgICAgICksXG4gICAgICAgIGRlbGF5KDApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCh7IGlzQ29tcGxldGUsIHZhbHVlIH0pID0+IHtcbiAgICAgICAgaWYgKGlzQ29tcGxldGUpIHtcbiAgICAgICAgICB0aGlzLmRieEZvcm1WYWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmRieEZvcm1WYWx1ZUNoYW5nZS5lbWl0KHVuZGVmaW5lZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
|