@dereekb/dbx-form 12.6.20 → 12.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/form/action/form.action.dialog.component.mjs +6 -10
- package/esm2022/lib/form/action/form.action.directive.mjs +14 -13
- package/esm2022/lib/form/io/form.change.directive.mjs +9 -7
- package/esm2022/lib/form/io/form.input.directive.mjs +8 -9
- package/esm2022/lib/form/io/form.loading.directive.mjs +6 -7
- package/esm2022/lib/formly/field/checklist/checklist.item.field.component.mjs +8 -7
- package/esm2022/lib/formly/field/wrapper/working.wrapper.component.mjs +2 -2
- package/esm2022/lib/formly/form/search.form.component.mjs +1 -1
- package/esm2022/lib/formly/formly.context.directive.mjs +1 -1
- package/esm2022/lib/formly/formly.directive.mjs +8 -13
- package/esm2022/lib/formly/formly.form.component.mjs +18 -19
- package/fesm2022/dereekb-dbx-form.mjs +61 -71
- package/fesm2022/dereekb-dbx-form.mjs.map +1 -1
- package/lib/form/action/form.action.dialog.component.d.ts +2 -3
- package/lib/form/action/form.action.directive.d.ts +4 -5
- package/lib/form/io/form.change.directive.d.ts +3 -3
- package/lib/form/io/form.input.directive.d.ts +2 -3
- package/lib/form/io/form.loading.directive.d.ts +1 -3
- package/lib/formly/field/checklist/checklist.item.field.component.d.ts +2 -2
- package/lib/formly/field/wrapper/working.wrapper.component.d.ts +1 -1
- package/lib/formly/form/search.form.component.d.ts +1 -2
- package/lib/formly/formly.context.directive.d.ts +1 -2
- package/lib/formly/formly.directive.d.ts +7 -9
- package/lib/formly/formly.form.component.d.ts +3 -4
- package/package.json +1 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Component, inject } from '@angular/core';
|
|
2
2
|
import { AbstractDialogDirective, DbxDialogContentDirective, DbxDialogContentCloseComponent, DbxActionModule, DbxButtonModule } from '@dereekb/dbx-web';
|
|
3
|
-
import { asObservableFromGetter
|
|
3
|
+
import { asObservableFromGetter } from '@dereekb/rxjs';
|
|
4
4
|
import { distinctUntilChanged } from 'rxjs';
|
|
5
|
+
import { cleanSubscription } from '@dereekb/dbx-core';
|
|
5
6
|
import { DbxFormlyContext, provideFormlyContext } from '../../formly/formly.context';
|
|
6
7
|
import { DbxFormlyComponent } from '../../formly/formly.form.component';
|
|
7
8
|
import { DbxFormSourceDirective } from '../io/form.input.directive';
|
|
@@ -13,7 +14,7 @@ import * as i2 from "@dereekb/dbx-web";
|
|
|
13
14
|
*
|
|
14
15
|
*/
|
|
15
16
|
export class DbxFormActionDialogComponent extends AbstractDialogDirective {
|
|
16
|
-
_fieldsSub =
|
|
17
|
+
_fieldsSub = cleanSubscription();
|
|
17
18
|
context = inject((DbxFormlyContext), { self: true });
|
|
18
19
|
fields$ = asObservableFromGetter(this.data.fields);
|
|
19
20
|
initialValue$ = asObservableFromGetter(this.data.initialValue);
|
|
@@ -23,14 +24,9 @@ export class DbxFormActionDialogComponent extends AbstractDialogDirective {
|
|
|
23
24
|
...this.data.submitButtonConfig
|
|
24
25
|
};
|
|
25
26
|
ngOnInit() {
|
|
26
|
-
|
|
27
|
-
this._fieldsSub.subscription = this.fields$.pipe(distinctUntilChanged()).subscribe((fields) => {
|
|
27
|
+
this._fieldsSub.setSub(this.fields$.pipe(distinctUntilChanged()).subscribe((fields) => {
|
|
28
28
|
this.context.fields = fields;
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
ngOnDestroy() {
|
|
32
|
-
super.ngOnDestroy();
|
|
33
|
-
this._fieldsSub.destroy();
|
|
29
|
+
}));
|
|
34
30
|
}
|
|
35
31
|
handleSubmitValue = (value, context) => {
|
|
36
32
|
context.success();
|
|
@@ -76,4 +72,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
76
72
|
imports: [DbxDialogContentDirective, DbxActionModule, DbxButtonModule, DbxDialogContentCloseComponent, DbxFormlyComponent, DbxFormSourceDirective, DbxActionFormDirective, DbxFormlyComponent]
|
|
77
73
|
}]
|
|
78
74
|
}] });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24uZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybS9hY3Rpb24vZm9ybS5hY3Rpb24uZGlhbG9nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUseUJBQXlCLEVBQUUsOEJBQThCLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBa0IsTUFBTSxrQkFBa0IsQ0FBQztBQUd4SyxPQUFPLEVBQUUsc0JBQXNCLEVBQTJFLE1BQU0sZUFBZSxDQUFDO0FBRWhJLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM1QyxPQUFPLEVBQUUsaUJBQWlCLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUEyQmpFOztHQUVHO0FBZ0JILE1BQU0sT0FBTyw0QkFBZ0MsU0FBUSx1QkFBaUU7SUFDbkcsVUFBVSxHQUFHLGlCQUFpQixFQUFFLENBQUM7SUFFekMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxDQUFBLGdCQUFtQixDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxPQUFPLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuRCxhQUFhLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUUvRCxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFFMUIsa0JBQWtCLEdBQUc7UUFDNUIsSUFBSSxFQUFFLFFBQVE7UUFDZCxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCO0tBQ2hDLENBQUM7SUFFRixRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUM3RCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFUSxpQkFBaUIsR0FBd0IsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDbkUsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEIsQ0FBQyxDQUFDO0lBRUYsTUFBTSxDQUFDLGtCQUFrQixDQUFJLFNBQW9CLEVBQUUsTUFBNkM7UUFDOUYsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBLDRCQUErQixDQUFBLEVBQUU7WUFDaEUsS0FBSyxFQUFFLE1BQU07WUFDYixTQUFTLEVBQUUsT0FBTztZQUNsQixRQUFRLEVBQUUsT0FBTztZQUNqQixHQUFHLE1BQU0sQ0FBQyxNQUFNO1lBQ2hCLElBQUksRUFBRSxNQUFNO1NBQ2IsQ0FBQyxDQUFDO1FBRUgsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzt3R0FyQ1UsNEJBQTRCOzRGQUE1Qiw0QkFBNEIsMkRBSDVCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxpREFYekI7Ozs7Ozs7OztHQVNULDREQUdTLHlCQUF5Qix3SEFBRSxlQUFlLGlaQUFFLGVBQWUsMlNBQUUsOEJBQThCLDZHQUFFLGtCQUFrQiw2RUFBRSxzQkFBc0IsNEdBQUUsc0JBQXNCOzs0RkFFOUosNEJBQTRCO2tCQWZ4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRTs7Ozs7Ozs7O0dBU1Q7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLENBQUM7b0JBQ25DLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsOEJBQThCLEVBQUUsa0JBQWtCLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsa0JBQWtCLENBQUM7aUJBQy9MIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3REaWFsb2dEaXJlY3RpdmUsIERieERpYWxvZ0NvbnRlbnREaXJlY3RpdmUsIERieERpYWxvZ0NvbnRlbnRDbG9zZUNvbXBvbmVudCwgRGJ4QWN0aW9uTW9kdWxlLCBEYnhCdXR0b25Nb2R1bGUsIERieEJ1dHRvblN0eWxlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ0NvbmZpZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBhc09ic2VydmFibGVGcm9tR2V0dGVyLCBNYXliZU9ic2VydmFibGVPclZhbHVlR2V0dGVyLCBPYnNlcnZhYmxlT3JWYWx1ZUdldHRlciwgV29ya1VzaW5nQ29udGV4dCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjbGVhblN1YnNjcmlwdGlvbiwgRGJ4QnV0dG9uRGlzcGxheSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IERieEZvcm1seUNvbnRleHQsIHByb3ZpZGVGb3JtbHlDb250ZXh0IH0gZnJvbSAnLi4vLi4vZm9ybWx5L2Zvcm1seS5jb250ZXh0JztcbmltcG9ydCB7IERieEZvcm1seUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Zvcm1seS9mb3JtbHkuZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZSB9IGZyb20gJy4uL2lvL2Zvcm0uaW5wdXQuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieEFjdGlvbkZvcm1EaXJlY3RpdmUgfSBmcm9tICcuL2Zvcm0uYWN0aW9uLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4Rm9ybUFjdGlvbkRpYWxvZ0NvbXBvbmVudEJ1dHRvbkNvbmZpZyBleHRlbmRzIERieEJ1dHRvbkRpc3BsYXksIERieEJ1dHRvblN0eWxlIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4Rm9ybUFjdGlvbkRpYWxvZ0NvbXBvbmVudENvbmZpZzxPPiB7XG4gIC8qKlxuICAgKiBIZWFkZXIgdGV4dCBmb3IgdGhlIGRpYWxvZy5cbiAgICovXG4gIHJlYWRvbmx5IGhlYWRlcjogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBmb3IgcmV0cmlldmluZyB0aGUgZmllbGRzIHRvIGRpc3BsYXkgaW4gdGhlIGRpYWxvZy5cbiAgICovXG4gIHJlYWRvbmx5IGZpZWxkczogT2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXI8Rm9ybWx5RmllbGRDb25maWdbXT47XG4gIC8qKlxuICAgKiBJbml0aWFsIHZhbHVlIGZvciB0aGUgZm9ybS5cbiAgICovXG4gIHJlYWRvbmx5IGluaXRpYWxWYWx1ZT86IE1heWJlT2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXI8Tz47XG4gIC8qKlxuICAgKiBUZXh0L0ljb24gZm9yIHRoZSBzdWJtaXQgYnV0dG9uLlxuICAgKi9cbiAgcmVhZG9ubHkgc3VibWl0QnV0dG9uQ29uZmlnPzogRGJ4Rm9ybUFjdGlvbkRpYWxvZ0NvbXBvbmVudEJ1dHRvbkNvbmZpZztcbiAgLyoqXG4gICAqIERpYWxvZy1zcGVjaWZpYyBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBkaWFsb2c/OiBPbWl0PE1hdERpYWxvZ0NvbmZpZywgJ2RhdGEnPjtcbn1cblxuLyoqXG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGJ4LWRpYWxvZy1jb250ZW50IGRieEFjdGlvbiBbZGJ4QWN0aW9uSGFuZGxlcl09XCJoYW5kbGVTdWJtaXRWYWx1ZVwiIGNsYXNzPVwiZGJ4LWRpYWxvZy1jb250ZW50LXdpdGgtaGVhZGVyXCI+XG4gICAgICA8aDMgY2xhc3M9XCJkYngtZGlhbG9nLWNvbnRlbnQtaGVhZGVyXCI+e3sgaGVhZGVyIH19PC9oMz5cbiAgICAgIDxkYngtZGlhbG9nLWNvbnRlbnQtY2xvc2UgKGNsb3NlKT1cImNsb3NlKClcIj48L2RieC1kaWFsb2ctY29udGVudC1jbG9zZT5cbiAgICAgIDxkaXY+XG4gICAgICAgIDxkYngtZm9ybWx5IGRieEFjdGlvbkZvcm0gW2RieEZvcm1Tb3VyY2VdPVwiaW5pdGlhbFZhbHVlJFwiPjwvZGJ4LWZvcm1seT5cbiAgICAgICAgPGRieC1idXR0b24gZGJ4QWN0aW9uQnV0dG9uIFtidXR0b25EaXNwbGF5XT1cInN1Ym1pdEJ1dHRvbkNvbmZpZ1wiIFtidXR0b25TdHlsZV09XCJzdWJtaXRCdXR0b25Db25maWdcIiBbcmFpc2VkXT1cInRydWVcIj48L2RieC1idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2RieC1kaWFsb2ctY29udGVudD5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgcHJvdmlkZXJzOiBbcHJvdmlkZUZvcm1seUNvbnRleHQoKV0sXG4gIGltcG9ydHM6IFtEYnhEaWFsb2dDb250ZW50RGlyZWN0aXZlLCBEYnhBY3Rpb25Nb2R1bGUsIERieEJ1dHRvbk1vZHVsZSwgRGJ4RGlhbG9nQ29udGVudENsb3NlQ29tcG9uZW50LCBEYnhGb3JtbHlDb21wb25lbnQsIERieEZvcm1Tb3VyY2VEaXJlY3RpdmUsIERieEFjdGlvbkZvcm1EaXJlY3RpdmUsIERieEZvcm1seUNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4Rm9ybUFjdGlvbkRpYWxvZ0NvbXBvbmVudDxPPiBleHRlbmRzIEFic3RyYWN0RGlhbG9nRGlyZWN0aXZlPE8sIERieEZvcm1BY3Rpb25EaWFsb2dDb21wb25lbnRDb25maWc8Tz4+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZmllbGRzU3ViID0gY2xlYW5TdWJzY3JpcHRpb24oKTtcblxuICByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0KERieEZvcm1seUNvbnRleHQ8Tz4sIHsgc2VsZjogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgZmllbGRzJCA9IGFzT2JzZXJ2YWJsZUZyb21HZXR0ZXIodGhpcy5kYXRhLmZpZWxkcyk7XG4gIHJlYWRvbmx5IGluaXRpYWxWYWx1ZSQgPSBhc09ic2VydmFibGVGcm9tR2V0dGVyKHRoaXMuZGF0YS5pbml0aWFsVmFsdWUpO1xuXG4gIHJlYWRvbmx5IGhlYWRlciA9IHRoaXMuZGF0YS5oZWFkZXI7XG5cbiAgcmVhZG9ubHkgc3VibWl0QnV0dG9uQ29uZmlnID0ge1xuICAgIHRleHQ6ICdTdWJtaXQnLFxuICAgIC4uLnRoaXMuZGF0YS5zdWJtaXRCdXR0b25Db25maWdcbiAgfTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9maWVsZHNTdWIuc2V0U3ViKFxuICAgICAgdGhpcy5maWVsZHMkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKChmaWVsZHMpID0+IHtcbiAgICAgICAgdGhpcy5jb250ZXh0LmZpZWxkcyA9IGZpZWxkcztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHJlYWRvbmx5IGhhbmRsZVN1Ym1pdFZhbHVlOiBXb3JrVXNpbmdDb250ZXh0PE8+ID0gKHZhbHVlLCBjb250ZXh0KSA9PiB7XG4gICAgY29udGV4dC5zdWNjZXNzKCk7XG4gICAgdGhpcy5jbG9zZSh2YWx1ZSk7XG4gIH07XG5cbiAgc3RhdGljIG9wZW5EaWFsb2dXaXRoRm9ybTxPPihtYXREaWFsb2c6IE1hdERpYWxvZywgY29uZmlnOiBEYnhGb3JtQWN0aW9uRGlhbG9nQ29tcG9uZW50Q29uZmlnPE8+KTogTWF0RGlhbG9nUmVmPERieEZvcm1BY3Rpb25EaWFsb2dDb21wb25lbnQ8Tz4sIE1heWJlPE8+PiB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gbWF0RGlhbG9nLm9wZW4oRGJ4Rm9ybUFjdGlvbkRpYWxvZ0NvbXBvbmVudDxPPiwge1xuICAgICAgd2lkdGg6ICc5MHZ3JyxcbiAgICAgIG1heEhlaWdodDogJzMwMHB4JyxcbiAgICAgIG1heFdpZHRoOiAnNjAwcHgnLFxuICAgICAgLi4uY29uZmlnLmRpYWxvZyxcbiAgICAgIGRhdGE6IGNvbmZpZ1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIGRpYWxvZ1JlZjtcbiAgfVxufVxuIl19
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
2
|
import { addSeconds, isPast } from 'date-fns';
|
|
3
3
|
import { of, combineLatest, exhaustMap, catchError, delay, filter, first, map, switchMap, distinctUntilChanged, shareReplay } from 'rxjs';
|
|
4
|
-
import { DbxActionContextStoreSourceInstance } from '@dereekb/dbx-core';
|
|
5
|
-
import { SubscriptionObject,
|
|
4
|
+
import { DbxActionContextStoreSourceInstance, cleanLockSet } from '@dereekb/dbx-core';
|
|
5
|
+
import { SubscriptionObject, asObservable, makeIsModifiedFunctionObservable } from '@dereekb/rxjs';
|
|
6
6
|
import { DbxFormState, DbxMutableForm } from '../../form/form';
|
|
7
7
|
import { toObservable } from '@angular/core/rxjs-interop';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -17,7 +17,17 @@ export const APP_ACTION_FORM_DISABLED_KEY = 'dbx_action_form';
|
|
|
17
17
|
export class DbxActionFormDirective {
|
|
18
18
|
form = inject((DbxMutableForm), { host: true });
|
|
19
19
|
source = inject((DbxActionContextStoreSourceInstance));
|
|
20
|
-
lockSet =
|
|
20
|
+
lockSet = cleanLockSet({
|
|
21
|
+
onDestroy: () => {
|
|
22
|
+
this.source.enable(APP_ACTION_FORM_DISABLED_KEY);
|
|
23
|
+
},
|
|
24
|
+
onLockSetDestroy: () => {
|
|
25
|
+
this._triggeredSub.destroy();
|
|
26
|
+
this._isCompleteSub.destroy();
|
|
27
|
+
this._isWorkingSub.destroy();
|
|
28
|
+
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, false);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
21
31
|
/**
|
|
22
32
|
* Whether or not to disable the form while the action is working.
|
|
23
33
|
*
|
|
@@ -124,15 +134,6 @@ export class DbxActionFormDirective {
|
|
|
124
134
|
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, disable);
|
|
125
135
|
});
|
|
126
136
|
}
|
|
127
|
-
ngOnDestroy() {
|
|
128
|
-
this.source.enable(APP_ACTION_FORM_DISABLED_KEY);
|
|
129
|
-
this.lockSet.destroyOnNextUnlock(() => {
|
|
130
|
-
this._triggeredSub.destroy();
|
|
131
|
-
this._isCompleteSub.destroy();
|
|
132
|
-
this._isWorkingSub.destroy();
|
|
133
|
-
this.form.setDisabled(APP_ACTION_FORM_DISABLED_KEY, false);
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
137
|
checkIsValidAndIsModified(value, overrides) {
|
|
137
138
|
const { isModifiedFunction: overrideIsModifiedFunction, isValidFunction: overrideIsValidFunction } = overrides ?? {};
|
|
138
139
|
const isValidFunctionObs = overrideIsValidFunction != null ? of(overrideIsValidFunction) : this.isValidFunction$;
|
|
@@ -164,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
164
165
|
standalone: true
|
|
165
166
|
}]
|
|
166
167
|
}], 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=
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5hY3Rpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2FjdGlvbi9mb3JtLmFjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzlDLE9BQU8sRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEosT0FBTyxFQUFFLG1DQUFtQyxFQUE4QixZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsSCxPQUFPLEVBQUUsa0JBQWtCLEVBQTBELFlBQVksRUFBbUIsZ0NBQWdDLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUssT0FBTyxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRTFELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLGlCQUFpQixDQUFDO0FBSTlEOzs7Ozs7R0FNRztBQUtILE1BQU0sT0FBTyxzQkFBc0I7SUFDeEIsSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFBLGNBQWlCLENBQUEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELE1BQU0sR0FBRyxNQUFNLENBQUMsQ0FBQSxtQ0FBK0MsQ0FBQSxDQUFDLENBQUM7SUFFakUsT0FBTyxHQUFHLFlBQVksQ0FB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QztnQkFDaEIsT0FBTyxZQUFZLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDMUMsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQXFCLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzt3R0F2TVUsc0JBQXNCOzRGQUF0QixzQkFBc0I7OzRGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkluaXQsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFkZFNlY29uZHMsIGlzUGFzdCB9IGZyb20gJ2RhdGUtZm5zJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBjb21iaW5lTGF0ZXN0LCBleGhhdXN0TWFwLCBjYXRjaEVycm9yLCBkZWxheSwgZmlsdGVyLCBmaXJzdCwgbWFwLCBzd2l0Y2hNYXAsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIERieEFjdGlvblZhbHVlR2V0dGVyUmVzdWx0LCBjbGVhbkxvY2tTZXQgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25PYmplY3QsIElzTW9kaWZpZWRGdW5jdGlvbiwgSXNWYWxpZEZ1bmN0aW9uLCBPYnNlcnZhYmxlT3JWYWx1ZSwgYXNPYnNlcnZhYmxlLCBJc0VxdWFsRnVuY3Rpb24sIG1ha2VJc01vZGlmaWVkRnVuY3Rpb25PYnNlcnZhYmxlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBEYnhGb3JtU3RhdGUsIERieE11dGFibGVGb3JtIH0gZnJvbSAnLi4vLi4vZm9ybS9mb3JtJztcbmltcG9ydCB7IElzTW9kaWZpZWQsIElzVmFsaWQsIE1hcEZ1bmN0aW9uLCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5leHBvcnQgY29uc3QgQVBQX0FDVElPTl9GT1JNX0RJU0FCTEVEX0tFWSA9ICdkYnhfYWN0aW9uX2Zvcm0nO1xuXG5leHBvcnQgdHlwZSBEYnhBY3Rpb25Gb3JtTWFwVmFsdWVGdW5jdGlvbjxULCBPPiA9IE1hcEZ1bmN0aW9uPFQsIE9ic2VydmFibGVPclZhbHVlPERieEFjdGlvblZhbHVlR2V0dGVyUmVzdWx0PE8+Pj47XG5cbi8qKlxuICogVXNlZCB3aXRoIGFuIGFjdGlvbiB0byBiaW5kIGEgZm9ybSB0byBhbiBhY3Rpb24gYXMgaXQncyB2YWx1ZSBzb3VyY2UuXG4gKlxuICogSWYgdGhlIGZvcm0gaGFzIGVycm9ycyB3aGVuIHRoZSBhY3Rpb24gaXMgdHJpZ2dlciwgaXQgd2lsbCByZWplY3QgdGhlIGFjdGlvbi5cbiAqXG4gKiBJZiB0aGUgc291cmNlIGlzIG5vdCBjb25zaWRlcmVkIG1vZGlmaWVkLCB0aGUgdHJpZ2dlciB3aWxsIGJlIGlnbm9yZWQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhBY3Rpb25Gb3JtXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4QWN0aW9uRm9ybURpcmVjdGl2ZTxUID0gb2JqZWN0LCBPID0gVD4gaW1wbGVtZW50cyBPbkluaXQge1xuICByZWFkb25seSBmb3JtID0gaW5qZWN0KERieE11dGFibGVGb3JtPFQ+LCB7IGhvc3Q6IHRydWUgfSk7XG4gIHJlYWRvbmx5IHNvdXJjZSA9IGluamVjdChEYnhBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZTxPLCB1bmtub3duPik7XG5cbiAgcmVhZG9ubHkgbG9ja1NldCA9IGNsZWFuTG9ja1NldCh7XG4gICAgb25EZXN0cm95OiAoKSA9PiB7XG4gICAgICB0aGlzLnNvdXJjZS5lbmFibGUoQVBQX0FDVElPTl9GT1JNX0RJU0FCTEVEX0tFWSk7XG4gICAgfSxcbiAgICBvbkxvY2tTZXREZXN0cm95OiAoKSA9PiB7XG4gICAgICB0aGlzLl90cmlnZ2VyZWRTdWIuZGVzdHJveSgpO1xuICAgICAgdGhpcy5faXNDb21wbGV0ZVN1Yi5kZXN0cm95KCk7XG4gICAgICB0aGlzLl9pc1dvcmtpbmdTdWIuZGVzdHJveSgpO1xuICAgICAgdGhpcy5mb3JtLnNldERpc2FibGVkKEFQUF9BQ1RJT05fRk9STV9ESVNBQkxFRF9LRVksIGZhbHNlKTtcbiAgICB9XG4gIH0pO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byBkaXNhYmxlIHRoZSBmb3JtIHdoaWxlIHRoZSBhY3Rpb24gaXMgd29ya2luZy5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICovXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1EaXNhYmxlZE9uV29ya2luZyA9IGlucHV0PE1heWJlPGJvb2xlYW4+Pih0cnVlKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgdmFsaWRhdG9yIHRoYXQgY2hlY2tzIHdoZXRoZXIgb3Igbm90IHRoZSB2YWx1ZSBpc1xuICAgKiByZWFkeSB0byBzZW5kIGJlZm9yZSB0aGUgY29udGV4dCBzdG9yZSBpcyBtYXJrZWQgZW5hYmxlZC5cbiAgICovXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1Jc1ZhbGlkID0gaW5wdXQ8TWF5YmU8SXNWYWxpZEZ1bmN0aW9uPFQ+Pj4oKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZnVuY3Rpb24gdGhhdCBjaGVja3Mgd2hldGhlciBvciBub3QgdGhlIHZhbHVlIGlzIHN0aWxsIHRoZSBzYW1lL2VxdWFsLlxuICAgKi9cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRm9ybUlzRXF1YWwgPSBpbnB1dDxNYXliZTxJc0VxdWFsRnVuY3Rpb248VD4+PigpO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBmdW5jdGlvbiB0aGF0IGNoZWNrcyB3aGV0aGVyIG9yIG5vdCB0aGUgdmFsdWUgaGFzIGJlZW4gbW9kaWZpZWQuXG4gICAqXG4gICAqIElmIGRieEFjdGlvbkZvcm1Jc0VxdWFsIGlzIHByb3ZpZGVkLCB0aGlzIHdpbGwgYmUgaWdub3JlZC5cbiAgICovXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1Jc01vZGlmaWVkID0gaW5wdXQ8TWF5YmU8SXNNb2RpZmllZEZ1bmN0aW9uPFQ+Pj4oKTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgZnVuY3Rpb24gdGhhdCBtYXBzIHRoZSBmb3JtJ3MgdmFsdWUgdG8gdGhlIHNvdXJjZSdzIHZhbHVlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGJ4QWN0aW9uRm9ybU1hcFZhbHVlID0gaW5wdXQ8TWF5YmU8RGJ4QWN0aW9uRm9ybU1hcFZhbHVlRnVuY3Rpb248VCwgTz4+PigpO1xuXG4gIHJlYWRvbmx5IGRieEFjdGlvbkZvcm1EaXNhYmxlZE9uV29ya2luZyQgPSB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25Gb3JtRGlzYWJsZWRPbldvcmtpbmcpO1xuXG4gIHJlYWRvbmx5IGlzVmFsaWRGdW5jdGlvbiQgPSB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25Gb3JtSXNWYWxpZCkucGlwZShcbiAgICBtYXAoKHgpID0+IHggPz8gKCgpID0+IG9mKHRydWUpKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcbiAgcmVhZG9ubHkgaXNNb2RpZmllZEZ1bmN0aW9uJDogT2JzZXJ2YWJsZTxJc01vZGlmaWVkRnVuY3Rpb248VD4+ID0gbWFrZUlzTW9kaWZpZWRGdW5jdGlvbk9ic2VydmFibGUoe1xuICAgIGlzTW9kaWZpZWQ6IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvbkZvcm1Jc01vZGlmaWVkKSxcbiAgICBpc0VxdWFsOiB0b09ic2VydmFibGUodGhpcy5kYnhBY3Rpb25Gb3JtSXNFcXVhbClcbiAgfSkucGlwZShzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgbWFwVmFsdWVGdW5jdGlvbiQ6IE9ic2VydmFibGU8TWF5YmU8RGJ4QWN0aW9uRm9ybU1hcFZhbHVlRnVuY3Rpb248VCwgTz4+PiA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEFjdGlvbkZvcm1NYXBWYWx1ZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdHJpZ2dlcmVkU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc0NvbXBsZXRlU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9pc1dvcmtpbmdTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKHRoaXMuZm9ybS5sb2NrU2V0KSB7XG4gICAgICB0aGlzLmxvY2tTZXQuYWRkQ2hpbGRMb2NrU2V0KHRoaXMuZm9ybS5sb2NrU2V0LCAnZm9ybScpO1xuICAgIH1cblxuICAgIHRoaXMubG9ja1NldC5hZGRDaGlsZExvY2tTZXQodGhpcy5zb3VyY2UubG9ja1NldCwgJ3NvdXJjZScpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gUGFzcyBkYXRhIGZyb20gdGhlIGZvcm0gdG8gdGhlIHNvdXJjZSB3aGVuIHRyaWdnZXJlZC5cbiAgICB0aGlzLl90cmlnZ2VyZWRTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5zb3VyY2UudHJpZ2dlcmVkJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICAgIHRoaXMuZm9ybS5zdHJlYW0kLnBpcGUoXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgZXhoYXVzdE1hcCgoc3RyZWFtKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IHsgaXNDb21wbGV0ZSB9ID0gc3RyZWFtO1xuICAgICAgICAgICAgICBjb25zdCBkb05vdGhpbmcgPSB7fTsgLy8gbm90aGluZywgZm9ybSBub3QgY29tcGxldGVcblxuICAgICAgICAgICAgICBsZXQgb2JzOiBPYnNlcnZhYmxlPERieEFjdGlvblZhbHVlR2V0dGVyUmVzdWx0PE8+PjtcblxuICAgICAgICAgICAgICBpZiAoaXNDb21wbGV0ZSkge1xuICAgICAgICAgICAgICAgIG9icyA9IHRoaXMuZm9ybS5nZXRWYWx1ZSgpLnBpcGUoXG4gICAgICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICAgICAgZXhoYXVzdE1hcCgodmFsdWUpID0+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlQ2hlY2tSZWFkeVZhbHVlKHZhbHVlKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgIGZpcnN0KCksXG4gICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKChjYW5Db250aW51ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNhbkNvbnRpbnVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlYWR5VmFsdWUodmFsdWUpLnBpcGUoZmlyc3QoKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoZG9Ob3RoaW5nKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gb2YoeyByZWplY3Q6IGVycm9yIH0pKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBvYnMgPSBvZihkb05vdGhpbmcpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcmV0dXJuIG9icztcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IERieEFjdGlvblZhbHVlR2V0dGVyUmVzdWx0PE8+KSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVqZWN0KSB7XG4gICAgICAgICAgdGhpcy5zb3VyY2UucmVqZWN0KHJlc3VsdC5yZWplY3QpO1xuICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdC52YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgICAgdGhpcy5zb3VyY2UucmVhZHlWYWx1ZShyZXN1bHQudmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIHZhbHVlIGlzbid0IHJlYWR5XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgLy8gVXBkYXRlIHRoZSBlbmFibGVkL2Rpc2FibGVkIHN0YXRlXG4gICAgdGhpcy5faXNDb21wbGV0ZVN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLmZvcm0uc3RyZWFtJFxuICAgICAgLnBpcGUoXG4gICAgICAgIGRlbGF5KDApLFxuICAgICAgICBmaWx0ZXIoKHgpID0+IHguc3RhdGUgIT09IERieEZvcm1TdGF0ZS5JTklUSUFMSVpJTkcpLFxuICAgICAgICBzd2l0Y2hNYXAoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5nZXRWYWx1ZSgpLnBpcGUoXG4gICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgZXhoYXVzdE1hcCgodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgLy8gVXNlIGJvdGggY2hhbmdlcyBjb3VudCBhbmQgd2hldGhlciBvciBub3Qgc29tZXRoaW5nIHdhcyBpbiB0aGUgcGFzdCB0byBndWFnZSB3aGV0aGVyIG9yIG5vdCB0aGUgaXRlbSBoYXMgYmVlbiB0b3VjaGVkLlxuICAgICAgICAgICAgICAvLyBBbmd1bGFyIEZvcm0ncyB1bnRvdWNoZWQgaXMgd2hldGhlciBvciBub3QgZm9jdXMgaGFzIGJlZW4gbG9zdCBidXQgd2UgY2FuIHN0aWxsIHJlY2VpdmUgdmFsdWUgdXBkYXRlcy5cbiAgICAgICAgICAgICAgLy8gTW9yZSB0aGFuIGEgY2VydGFpbiBhbW91bnQgb2YgdXBkYXRlcyBpbXBsaWVzIHRoYXQgaXQgaXMgYmVpbmcgdHlwZWQgaW50by91c2VkLlxuICAgICAgICAgICAgICAvLyAzIGNoYW5nZXMgYW5kIDIgc2Vjb25kcyBhcmUgYXJiaXRyYXJ5IHZhbHVlcyBkZXJpdmVkIGZyb20gZ3Vlc3NlcyBhYm91dCBhbnkgc2xvdy9sYXRlIGNoYW5nZXMgdGhhdCBtYXkgY29tZSBmcm9tIGV4dGVybmFsIGRpcmVjdGl2ZXMgZm9yIHNldHVwLlxuICAgICAgICAgICAgICBjb25zdCBpc1Byb2JhYmx5VG91Y2hlZCA9ICFldmVudC51bnRvdWNoZWQgfHwgKChldmVudC5jaGFuZ2VzQ291bnQgPz8gMCkgPiAzICYmIGlzUGFzdChhZGRTZWNvbmRzKGV2ZW50Lmxhc3RSZXNldEF0ID8/IG5ldyBEYXRlKCksIDIpKSk7XG5cbiAgICAgICAgICAgICAgLy8gY3JlYXRlIG92ZXJyaWRlc1xuICAgICAgICAgICAgICBjb25zdCByZXR1cm5GYWxzZUZ1bmN0aW9uID0gKCkgPT4gb2YoZmFsc2UpO1xuXG4gICAgICAgICAgICAgIGNvbnN0IHJ1bklzVmFsaWRDaGVjayA9IGV2ZW50LmlzQ29tcGxldGU7XG4gICAgICAgICAgICAgIGNvbnN0IGlzVmFsaWRGdW5jdGlvbjogTWF5YmU8SXNWYWxpZEZ1bmN0aW9uPFQ+PiA9IHJ1bklzVmFsaWRDaGVjayA/IHVuZGVmaW5lZCA6IHJldHVybkZhbHNlRnVuY3Rpb247XG5cbiAgICAgICAgICAgICAgY29uc3QgaXNDb25zaWRlcmVkTW9kaWZpZWQgPSBldmVudC5wcmlzdGluZSA9PT0gZmFsc2UgJiYgaXNQcm9iYWJseVRvdWNoZWQ7XG4gICAgICAgICAgICAgIGNvbnN0IGlzTW9kaWZpZWRGdW5jdGlvbjogTWF5YmU8SXNNb2RpZmllZEZ1bmN0aW9uPFQ+PiA9IGlzQ29uc2lkZXJlZE1vZGlmaWVkID8gdW5kZWZpbmVkIDogcmV0dXJuRmFsc2VGdW5jdGlvbjtcblxuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jaGVja0lzVmFsaWRBbmRJc01vZGlmaWVkKHZhbHVlLCB7IGlzVmFsaWRGdW5jdGlvbiwgaXNNb2RpZmllZEZ1bmN0aW9uIH0pLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChbdmFsaWQsIG1vZGlmaWVkXTogW2Jvb2xlYW4sIGJvb2xlYW5dKSA9PiAoeyB2YWxpZCwgbW9kaWZpZWQsIHZhbHVlLCBldmVudCB9KSksXG4gICAgICAgICAgICAgICAgZmlyc3QoKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoeyB2YWxpZCwgbW9kaWZpZWQgLyosIHZhbHVlLCBldmVudCAqLyB9KSA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCd4OiAnLCB2YWx1ZSwgZXZlbnQsIHZhbGlkLCBtb2RpZmllZCk7XG5cbiAgICAgICAgLy8gVXBkYXRlIE1vZGlmaWVkIFN0YXRlXG4gICAgICAgIHRoaXMuc291cmNlLnNldElzTW9kaWZpZWQobW9kaWZpZWQpO1xuXG4gICAgICAgIC8vIERpc2FibGUgaWYgdGhlIGZvcm0gaXMgbm90IHlldCBjb21wbGV0ZS92YWxpZC5cbiAgICAgICAgdGhpcy5zb3VyY2UuZW5hYmxlKEFQUF9BQ1RJT05fRk9STV9ESVNBQkxFRF9LRVksIHZhbGlkKTtcbiAgICAgIH0pO1xuXG4gICAgLy8gV2F0Y2ggdGhlIHdvcmtpbmcgc3RhdGUgYW5kIGRpc2FibGUgZm9ybSB3aGlsZSB3b3JraW5nXG4gICAgdGhpcy5faXNXb3JraW5nU3ViLnN1YnNjcmlwdGlvbiA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuc291cmNlLmlzV29ya2luZyQsIHRoaXMuZGJ4QWN0aW9uRm9ybURpc2FibGVkT25Xb3JraW5nJF0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChbaXNXb3JraW5nLCBkaXNhYmxlRm9ybVdoaWxlV29ya2luZ106IFtib29sZWFuLCBNYXliZTxib29sZWFuPl0pID0+IGRpc2FibGVGb3JtV2hpbGVXb3JraW5nICE9PSBmYWxzZSAmJiBpc1dvcmtpbmcpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChkaXNhYmxlKSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybS5zZXREaXNhYmxlZChBUFBfQUNUSU9OX0ZPUk1fRElTQUJMRURfS0VZLCBkaXNhYmxlKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgY2hlY2tJc1ZhbGlkQW5kSXNNb2RpZmllZCh2YWx1ZTogVCwgb3ZlcnJpZGVzPzogQ2hlY2tWYWxpZEFuZE1vZGlmaWVkT3ZlcnJpZGVzPFQ+KTogT2JzZXJ2YWJsZTxbSXNWYWxpZCwgSXNNb2RpZmllZF0+IHtcbiAgICBjb25zdCB7IGlzTW9kaWZpZWRGdW5jdGlvbjogb3ZlcnJpZGVJc01vZGlmaWVkRnVuY3Rpb24sIGlzVmFsaWRGdW5jdGlvbjogb3ZlcnJpZGVJc1ZhbGlkRnVuY3Rpb24gfSA9IG92ZXJyaWRlcyA/PyB7fTtcbiAgICBjb25zdCBpc1ZhbGlkRnVuY3Rpb25PYnMgPSBvdmVycmlkZUlzVmFsaWRGdW5jdGlvbiAhPSBudWxsID8gb2Yob3ZlcnJpZGVJc1ZhbGlkRnVuY3Rpb24pIDogdGhpcy5pc1ZhbGlkRnVuY3Rpb24kO1xuICAgIGNvbnN0IGlzTW9kaWZpZWRGdW5jdGlvbk9icyA9IG92ZXJyaWRlSXNNb2RpZmllZEZ1bmN0aW9uICE9IG51bGwgPyBvZihvdmVycmlkZUlzTW9kaWZpZWRGdW5jdGlvbikgOiB0aGlzLmlzTW9kaWZpZWRGdW5jdGlvbiQ7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbaXNWYWxpZEZ1bmN0aW9uT2JzLCBpc01vZGlmaWVkRnVuY3Rpb25PYnNdKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChbaXNWYWxpZCwgaXNNb2RpZmllZF0pID0+IHtcbiAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW2lzVmFsaWQodmFsdWUpLCBpc01vZGlmaWVkKHZhbHVlKV0pLnBpcGUobWFwKChbdmFsaWQsIG1vZGlmaWVkXSkgPT4gW3ZhbGlkLCBtb2RpZmllZF0gYXMgW2Jvb2xlYW4sIGJvb2xlYW5dKSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJlQ2hlY2tSZWFkeVZhbHVlKHZhbHVlOiBUKTogT2JzZXJ2YWJsZTxbSXNWYWxpZCwgSXNNb2RpZmllZF0+IHtcbiAgICByZXR1cm4gdGhpcy5jaGVja0lzVmFsaWRBbmRJc01vZGlmaWVkKHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkeVZhbHVlKHZhbHVlOiBUKTogT2JzZXJ2YWJsZTxEYnhBY3Rpb25WYWx1ZUdldHRlclJlc3VsdDxPPj4ge1xuICAgIHJldHVybiB0aGlzLm1hcFZhbHVlRnVuY3Rpb24kLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKG1hcEZ1bmN0aW9uKSA9PiB7XG4gICAgICAgIGlmIChtYXBGdW5jdGlvbikge1xuICAgICAgICAgIHJldHVybiBhc09ic2VydmFibGUobWFwRnVuY3Rpb24odmFsdWUpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gb2YoeyB2YWx1ZTogdmFsdWUgYXMgdW5rbm93biBhcyBPIH0pO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cblxuaW50ZXJmYWNlIENoZWNrVmFsaWRBbmRNb2RpZmllZE92ZXJyaWRlczxUPiB7XG4gIGlzTW9kaWZpZWRGdW5jdGlvbj86IE1heWJlPElzTW9kaWZpZWRGdW5jdGlvbjxUPj47XG4gIGlzVmFsaWRGdW5jdGlvbj86IE1heWJlPElzVmFsaWRGdW5jdGlvbjxUPj47XG59XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Directive, inject, output } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { cleanSubscription } from '@dereekb/dbx-core';
|
|
3
3
|
import { first, mergeMap, delay, map } from 'rxjs';
|
|
4
4
|
import { DbxForm } from '../form';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -8,11 +8,13 @@ import * as i0 from "@angular/core";
|
|
|
8
8
|
*
|
|
9
9
|
* Emits undefined when the form is incomplete, and the value when the form is complete.
|
|
10
10
|
*/
|
|
11
|
-
export class DbxFormValueChangeDirective
|
|
11
|
+
export class DbxFormValueChangeDirective {
|
|
12
12
|
form = inject((DbxForm), { host: true });
|
|
13
13
|
dbxFormValueChange = output();
|
|
14
|
+
_sub = cleanSubscription();
|
|
14
15
|
ngOnInit() {
|
|
15
|
-
|
|
16
|
+
// specifically call within ngOnInit to ensure first emission occurs after the form is initialized.
|
|
17
|
+
this._sub.setSub(this.form.stream$
|
|
16
18
|
.pipe(mergeMap((x) => this.form.getValue().pipe(first(), map((value) => ({ isComplete: x.isComplete, value })))), delay(0))
|
|
17
19
|
.subscribe(({ isComplete, value }) => {
|
|
18
20
|
if (isComplete) {
|
|
@@ -21,10 +23,10 @@ export class DbxFormValueChangeDirective extends AbstractSubscriptionDirective {
|
|
|
21
23
|
else {
|
|
22
24
|
this.dbxFormValueChange.emit(undefined);
|
|
23
25
|
}
|
|
24
|
-
});
|
|
26
|
+
}));
|
|
25
27
|
}
|
|
26
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormValueChangeDirective, deps:
|
|
27
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFormValueChangeDirective, isStandalone: true, selector: "[dbxFormValueChange]", outputs: { dbxFormValueChange: "dbxFormValueChange" },
|
|
28
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormValueChangeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
29
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: DbxFormValueChangeDirective, isStandalone: true, selector: "[dbxFormValueChange]", outputs: { dbxFormValueChange: "dbxFormValueChange" }, ngImport: i0 });
|
|
28
30
|
}
|
|
29
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormValueChangeDirective, decorators: [{
|
|
30
32
|
type: Directive,
|
|
@@ -33,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
33
35
|
standalone: true
|
|
34
36
|
}]
|
|
35
37
|
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jaGFuZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtL2lvL2Zvcm0uY2hhbmdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdEQsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sU0FBUyxDQUFDOztBQUVsQzs7OztHQUlHO0FBS0gsTUFBTSxPQUFPLDJCQUEyQjtJQUM3QixJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUEsT0FBVSxDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUUxQyxrQkFBa0IsR0FBRyxNQUFNLEVBQVksQ0FBQztJQUU5QixJQUFJLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQztJQUU5QyxRQUFRO1FBQ04sbUdBQW1HO1FBQ25HLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTzthQUNkLElBQUksQ0FDSCxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUN2QixLQUFLLEVBQUUsRUFDUCxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQ3RELENBQ0YsRUFDRCxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ1Q7YUFDQSxTQUFTLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ25DLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN0QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNKLENBQUM7d0dBNUJVLDJCQUEyQjs0RkFBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUp2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgT25Jbml0LCBpbmplY3QsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBmaXJzdCwgbWVyZ2VNYXAsIGRlbGF5LCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEZvcm0gfSBmcm9tICcuLi9mb3JtJztcblxuLyoqXG4gKiBVc2VkIHRvIHNlZSBmb3JtIHZhbHVlIGNoYW5nZXMuXG4gKlxuICogRW1pdHMgdW5kZWZpbmVkIHdoZW4gdGhlIGZvcm0gaXMgaW5jb21wbGV0ZSwgYW5kIHRoZSB2YWx1ZSB3aGVuIHRoZSBmb3JtIGlzIGNvbXBsZXRlLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4Rm9ybVZhbHVlQ2hhbmdlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4Rm9ybVZhbHVlQ2hhbmdlRGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcmVhZG9ubHkgZm9ybSA9IGluamVjdChEYnhGb3JtPFQ+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZGJ4Rm9ybVZhbHVlQ2hhbmdlID0gb3V0cHV0PE1heWJlPFQ+PigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfc3ViID0gY2xlYW5TdWJzY3JpcHRpb24oKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAvLyBzcGVjaWZpY2FsbHkgY2FsbCB3aXRoaW4gbmdPbkluaXQgdG8gZW5zdXJlIGZpcnN0IGVtaXNzaW9uIG9jY3VycyBhZnRlciB0aGUgZm9ybSBpcyBpbml0aWFsaXplZC5cbiAgICB0aGlzLl9zdWIuc2V0U3ViKFxuICAgICAgdGhpcy5mb3JtLnN0cmVhbSRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWVyZ2VNYXAoKHgpID0+XG4gICAgICAgICAgICB0aGlzLmZvcm0uZ2V0VmFsdWUoKS5waXBlKFxuICAgICAgICAgICAgICBmaXJzdCgpLFxuICAgICAgICAgICAgICBtYXAoKHZhbHVlKSA9PiAoeyBpc0NvbXBsZXRlOiB4LmlzQ29tcGxldGUsIHZhbHVlIH0pKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICksXG4gICAgICAgICAgZGVsYXkoMClcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCh7IGlzQ29tcGxldGUsIHZhbHVlIH0pID0+IHtcbiAgICAgICAgICBpZiAoaXNDb21wbGV0ZSkge1xuICAgICAgICAgICAgdGhpcy5kYnhGb3JtVmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZGJ4Rm9ybVZhbHVlQ2hhbmdlLmVtaXQodW5kZWZpbmVkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { distinctUntilChanged, filter, map, switchMap, combineLatest, EMPTY, exhaustMap, takeUntil, Subject, tap, shareReplay, throttleTime } from 'rxjs';
|
|
2
2
|
import { Directive, effect, inject, input } from '@angular/core';
|
|
3
|
-
import { AbstractSubscriptionDirective } from '@dereekb/dbx-core';
|
|
4
3
|
import { DbxFormState, DbxMutableForm } from '../form';
|
|
5
4
|
import { asObservable, cleanup, errorOnEmissionsInPeriod } from '@dereekb/rxjs';
|
|
5
|
+
import { cleanSubscription } from '@dereekb/dbx-core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export function dbxFormSourceObservable(form, inputObs, modeObs) {
|
|
8
8
|
return dbxFormSourceObservableFromStream(form.stream$, inputObs, modeObs);
|
|
@@ -65,10 +65,11 @@ export function dbxFormSourceObservableFromStream(streamObs, inputObs, modeObs)
|
|
|
65
65
|
/**
|
|
66
66
|
* Used with a FormComponent to set the value based on the input value.
|
|
67
67
|
*/
|
|
68
|
-
export class DbxFormSourceDirective
|
|
68
|
+
export class DbxFormSourceDirective {
|
|
69
69
|
form = inject((DbxMutableForm), { host: true });
|
|
70
70
|
dbxFormSourceMode = input();
|
|
71
71
|
dbxFormSource = input();
|
|
72
|
+
_effectSub = cleanSubscription();
|
|
72
73
|
_setFormSourceObservableEffect = effect(() => {
|
|
73
74
|
const formSource = this.dbxFormSource();
|
|
74
75
|
const mode = this.dbxFormSourceMode() ?? 'reset';
|
|
@@ -78,12 +79,10 @@ export class DbxFormSourceDirective extends AbstractSubscriptionDirective {
|
|
|
78
79
|
this.form.setValue(x);
|
|
79
80
|
});
|
|
80
81
|
}
|
|
81
|
-
this.
|
|
82
|
-
}, {
|
|
83
|
-
|
|
84
|
-
});
|
|
85
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormSourceDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
86
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFormSourceDirective, isStandalone: true, selector: "[dbxFormSource]", inputs: { dbxFormSourceMode: { classPropertyName: "dbxFormSourceMode", publicName: "dbxFormSourceMode", isSignal: true, isRequired: false, transformFunction: null }, dbxFormSource: { classPropertyName: "dbxFormSource", publicName: "dbxFormSource", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
82
|
+
this._effectSub.setSub(subscription);
|
|
83
|
+
}, { allowSignalWrites: true });
|
|
84
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
85
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFormSourceDirective, isStandalone: true, selector: "[dbxFormSource]", inputs: { dbxFormSourceMode: { classPropertyName: "dbxFormSourceMode", publicName: "dbxFormSourceMode", isSignal: true, isRequired: false, transformFunction: null }, dbxFormSource: { classPropertyName: "dbxFormSource", publicName: "dbxFormSource", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
87
86
|
}
|
|
88
87
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormSourceDirective, decorators: [{
|
|
89
88
|
type: Directive,
|
|
@@ -92,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
92
91
|
standalone: true
|
|
93
92
|
}]
|
|
94
93
|
}] });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm0vaW8vZm9ybS5pbnB1dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBYyxLQUFLLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3BMLE9BQU8sRUFBRSxTQUFTLEVBQWEsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBbUIsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxZQUFZLEVBQXFCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFbkcsTUFBTSxVQUFVLHVCQUF1QixDQUFJLElBQW9CLEVBQUUsUUFBOEIsRUFBRSxPQUErQztJQUM5SSxPQUFPLGlDQUFpQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzVFLENBQUM7QUFFRCxNQUFNLFVBQVUsaUNBQWlDLENBQUksU0FBc0MsRUFBRSxRQUE4QixFQUFFLE9BQXNEO0lBQ2pMLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQ0FBa0M7SUFFOUYsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FDM0IsR0FBRyxD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Q0wsQ0FBQztRQUVELElBQUksQ0FBQyxHQUFHLEdBQUcsWUFBWSxDQUFDO0lBQzFCLENBQUMsRUFDRDtRQUNFLGlCQUFpQixFQUFFLElBQUk7S0FDeEIsQ0FDRixDQUFDO3dHQXhCUyxzQkFBc0I7NEZBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgRU1QVFksIGV4aGF1c3RNYXAsIHRha2VVbnRpbCwgU3ViamVjdCwgdGFwLCBzaGFyZVJlcGxheSwgdGhyb3R0bGVUaW1lLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgT25EZXN0cm95LCBlZmZlY3QsIGluamVjdCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJ4Rm9ybVN0YXRlLCBEYnhGb3JtU3RhdGVSZWYsIERieE11dGFibGVGb3JtIH0gZnJvbSAnLi4vZm9ybSc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBhc09ic2VydmFibGUsIE9ic2VydmFibGVPclZhbHVlLCBjbGVhbnVwLCBlcnJvck9uRW1pc3Npb25zSW5QZXJpb2QgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRieEZvcm1Tb3VyY2VPYnNlcnZhYmxlPFQ+KGZvcm06IERieE11dGFibGVGb3JtLCBpbnB1dE9iczogT2JzZXJ2YWJsZU9yVmFsdWU8VD4sIG1vZGVPYnM6IE9ic2VydmFibGU8RGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGU+KTogT2JzZXJ2YWJsZTxUPiB7XG4gIHJldHVybiBkYnhGb3JtU291cmNlT2JzZXJ2YWJsZUZyb21TdHJlYW0oZm9ybS5zdHJlYW0kLCBpbnB1dE9icywgbW9kZU9icyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGb3JtU291cmNlT2JzZXJ2YWJsZUZyb21TdHJlYW08VD4oc3RyZWFtT2JzOiBPYnNlcnZhYmxlPERieEZvcm1TdGF0ZVJlZj4sIGlucHV0T2JzOiBPYnNlcnZhYmxlT3JWYWx1ZTxUPiwgbW9kZU9iczogT2JzZXJ2YWJsZU9yVmFsdWU8RGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGU+KTogT2JzZXJ2YWJsZTxUPiB7XG4gIGNvbnN0IHZhbHVlJCA9IGFzT2JzZXJ2YWJsZShpbnB1dE9icykucGlwZShzaGFyZVJlcGxheSgxKSk7IC8vIGNhdGNoL3NoYXJlIHRoZSBsYXRlc3QgZW1pc3Npb25cblxuICBjb25zdCBzdGF0ZSQgPSBzdHJlYW1PYnMucGlwZShcbiAgICBtYXAoKHgpID0+IHguc3RhdGUpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgKTtcblxuICBjb25zdCBtb2RlJCA9IGFzT2JzZXJ2YWJsZShtb2RlT2JzKS5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpO1xuXG4gIHJldHVybiBjb21iaW5lTGF0ZXN0KFttb2RlJCwgdmFsdWUkXSkucGlwZShcbiAgICBtYXAoKHgpID0+IHhbMF0pLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc3dpdGNoTWFwKChtb2RlOiBEYnhGb3JtU291cmNlRGlyZWN0aXZlTW9kZSkgPT4ge1xuICAgICAgaWYgKG1vZGUgPT09ICdyZXNldCcpIHtcbiAgICAgICAgLy8gcmVzZXQgb25seVxuICAgICAgICByZXR1cm4gc3RhdGUkLnBpcGUoXG4gICAgICAgICAgZXhoYXVzdE1hcCgoc3RhdGU6IERieEZvcm1TdGF0ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHN0YXRlID09PSBEYnhGb3JtU3RhdGUuUkVTRVQpIHtcbiAgICAgICAgICAgICAgbGV0IGZpcnN0VmFsdWVTZW50ID0gZmFsc2U7XG4gICAgICAgICAgICAgIGNvbnN0IGRvbmVTdWJqZWN0ID0gbmV3IFN1YmplY3QoKTtcblxuICAgICAgICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdmFsdWUkLCBzdGF0ZSRdKS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoW3ZhbHVlLCBzdGF0ZV0pID0+IHtcbiAgICAgICAgICAgICAgICAgIGlmICghZmlyc3RWYWx1ZVNlbnQgfHwgc3RhdGUgPT09IERieEZvcm1TdGF0ZS5SRVNFVCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3ZhbHVlLCB0cnVlXSBhcyBbVCwgYm9vbGVhbl07IC8vIGFsd2F5cyBmb3J3YXJkIHRoZSBmaXJzdCB2YWx1ZS5cbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbdmFsdWUsIGZhbHNlXSBhcyBbVCwgYm9vbGVhbl07XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdGFwKChbXywgc2VuZF0pID0+IHtcbiAgICAgICAgICAgICAgICAgIGZpcnN0VmFsdWVTZW50ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIGlmICghc2VuZCkge1xuICAgICAgICAgICAgICAgICAgICBkb25lU3ViamVjdC5uZXh0KHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgZmlsdGVyKChbXywgc2VuZF0pID0+IHNlbmQpLFxuICAgICAgICAgICAgICAgIG1hcCgoW3ZhbHVlLCBfXSkgPT4gdmFsdWUpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChkb25lU3ViamVjdCksXG4gICAgICAgICAgICAgICAgY2xlYW51cCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkb25lU3ViamVjdC5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIHBhc3MgYW55IHVwZGF0ZWQgdmFsdWUgd2hpbGUgbm90IGluaXRpYWxpemluZy5cbiAgICAgICAgcmV0dXJuIHN0YXRlJC5waXBlKFxuICAgICAgICAgIG1hcCgoeCkgPT4geCA9PT0gRGJ4Rm9ybVN0YXRlLklOSVRJQUxJWklORyksXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKGluaXRpYWxpemluZzogYm9vbGVhbikgPT4ge1xuICAgICAgICAgICAgaWYgKGluaXRpYWxpemluZykge1xuICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBsZXQgdmFsdWVPYnMgPSB2YWx1ZSQ7XG5cbiAgICAgICAgICAgICAgaWYgKG1vZGUgPT09ICdhbHdheXMnKSB7XG4gICAgICAgICAgICAgICAgdmFsdWVPYnMgPSB2YWx1ZU9icy5waXBlKFxuICAgICAgICAgICAgICAgICAgdGhyb3R0bGVUaW1lKDEwLCB1bmRlZmluZWQsIHsgbGVhZGluZzogdHJ1ZSwgdHJhaWxpbmc6IHRydWUgfSksXG4gICAgICAgICAgICAgICAgICBlcnJvck9uRW1pc3Npb25zSW5QZXJpb2Qoe1xuICAgICAgICAgICAgICAgICAgICBwZXJpb2Q6IDEwMDAsXG4gICAgICAgICAgICAgICAgICAgIG1heEVtaXNzaW9uc1BlclBlcmlvZDogNTAsXG4gICAgICAgICAgICAgICAgICAgIG9uRXJyb3I6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdkYnhGb3JtU291cmNlT2JzZXJ2YWJsZUZyb21TdHJlYW06IEVycm9yIHRocm93biBkdWUgdG8gdG9vIG1hbnkgZW1pc3Npb25zLiBUaGVyZSBtYXkgYmUgYW4gdW5pbnRlbnRpb25hbCBsb29wIGJlaW5nIHRyaWdnZXJlZCBieSBkYnhGb3JtU291cmNlLiBUeXBpY2FsbHkgdGhpcyBjYW4gb2NjdXIgaW4gY2FzZXMgd2hlcmUgdGhlIGRieEZvcm1Tb3VyY2UgZGlyZWN0aXZlIGlzIHVzZWQgYXQgdGhlIHNhbWUgdGltZSBhcyBkYnhGb3JtVmFsdWVDaGFuZ2UgZGlyZWN0aXZlIGFuZCB0aGUgc2FtZSB2YWx1ZSBpcyBiZWluZyBwdXNoZWQuJyk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHJldHVybiB2YWx1ZU9icztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pXG4gICk7XG59XG5cbi8qKlxuICogRGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZSBtb2RlcyB0aGF0IGRlZmluZSB3aGVuIHRvIGNvcHkgZGF0YSBmcm9tIHRoZSBzb3VyY2UuXG4gKlxuICogLSByZXNldDogb25seSBjb3B5IGRhdGEgd2hlbiB0aGUgZm9ybSBpcyByZXNldC5cbiAqIC0gYWx3YXlzOiBhbHdheXMgY29weSBkYXRhIHdoZW4gdGhlIGRhdGEgb2JzZXJ2YWJsZSBlbWl0cyBhIHZhbHVlLiBIYXMgYSB0aHJvdHRsZSBvZiAyMG1zIHRvIHByZXZlbnQgdG9vIG1hbnkgZW1pc3Npb25zLiBJZiBlbWlzc2lvbnMgb2NjdXIgaW4gYSBtYW5uZXIgdGhhdCBhcHBlYXJzIHRvIGJlIGEgbG9vcCAobW9yZSB0aGFuIDMwIGVtaXNzaW9ucyBpbiAxIHNlY29uZCksIHRoZW4gYW4gZXJyb3IgaXMgdGhyb3duIGFuZCB3YXJuaW5nIHByaW50ZWQgdG8gdGhlIGNvbnNvbGUuXG4gKiAtIGV2ZXJ5OiBlcXVhbCB0byBhbHdheXMsIGJ1dCBoYXMgbm8gdGhyb3R0bGUgb3IgZXJyb3IgbWVzc2FnZSB3YXJuaW5nLlxuICovXG5leHBvcnQgdHlwZSBEYnhGb3JtU291cmNlRGlyZWN0aXZlTW9kZSA9ICdyZXNldCcgfCAnYWx3YXlzJyB8ICdldmVyeSc7XG5cbi8qKlxuICogVXNlZCB3aXRoIGEgRm9ybUNvbXBvbmVudCB0byBzZXQgdGhlIHZhbHVlIGJhc2VkIG9uIHRoZSBpbnB1dCB2YWx1ZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEZvcm1Tb3VyY2VdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtU291cmNlRGlyZWN0aXZlPFQgPSB1bmtub3duPiBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgZm9ybSA9IGluamVjdChEYnhNdXRhYmxlRm9ybTxUPiwgeyBob3N0OiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IGRieEZvcm1Tb3VyY2VNb2RlID0gaW5wdXQ8TWF5YmU8RGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGU+PigpO1xuICByZWFkb25seSBkYnhGb3JtU291cmNlID0gaW5wdXQ8TWF5YmU8T2JzZXJ2YWJsZU9yVmFsdWU8TWF5YmU8UGFydGlhbDxUPj4+Pj4oKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3NldEZvcm1Tb3VyY2VPYnNlcnZhYmxlRWZmZWN0ID0gZWZmZWN0KFxuICAgICgpID0+IHtcbiAgICAgIGNvbnN0IGZvcm1Tb3VyY2UgPSB0aGlzLmRieEZvcm1Tb3VyY2UoKTtcbiAgICAgIGNvbnN0IG1vZGU6IERieEZvcm1Tb3VyY2VEaXJlY3RpdmVNb2RlID0gdGhpcy5kYnhGb3JtU291cmNlTW9kZSgpID8/ICdyZXNldCc7XG5cbiAgICAgIGxldCBzdWJzY3JpcHRpb246IE1heWJlPFN1YnNjcmlwdGlvbj47XG5cbiAgICAgIGlmIChmb3JtU291cmNlKSB7XG4gICAgICAgIHN1YnNjcmlwdGlvbiA9IGRieEZvcm1Tb3VyY2VPYnNlcnZhYmxlRnJvbVN0cmVhbSh0aGlzLmZvcm0uc3RyZWFtJCwgZm9ybVNvdXJjZSwgbW9kZSkuc3Vic2NyaWJlKCh4KSA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtLnNldFZhbHVlKHgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zdWIgPSBzdWJzY3JpcHRpb247XG4gICAgfSxcbiAgICB7XG4gICAgICBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZVxuICAgIH1cbiAgKTtcbn1cbiJdfQ==
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtZm9ybS9zcmMvbGliL2Zvcm0vaW8vZm9ybS5pbnB1dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBYyxLQUFLLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3BMLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBbUIsY0FBYyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxZQUFZLEVBQXFCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFFdEQsTUFBTSxVQUFVLHVCQUF1QixDQUFJLElBQW9CLEVBQUUsUUFBOEIsRUFBRSxPQUErQztJQUM5SSxPQUFPLGlDQUFpQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzVFLENBQUM7QUFFRCxNQUFNLFVBQVUsaUNBQWlDLENBQUksU0FBc0MsRUFBRSxRQUE4QixFQUFFLE9BQXNEO0lBQ2pMLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQ0FBa0M7SUFFOUYsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FDM0IsR0FBRyxD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Q3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3ZDLENBQUMsRUFDRCxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUM1QixDQUFDO3dHQXZCUyxzQkFBc0I7NEZBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgRU1QVFksIGV4aGF1c3RNYXAsIHRha2VVbnRpbCwgU3ViamVjdCwgdGFwLCBzaGFyZVJlcGxheSwgdGhyb3R0bGVUaW1lLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhGb3JtU3RhdGUsIERieEZvcm1TdGF0ZVJlZiwgRGJ4TXV0YWJsZUZvcm0gfSBmcm9tICcuLi9mb3JtJztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IGFzT2JzZXJ2YWJsZSwgT2JzZXJ2YWJsZU9yVmFsdWUsIGNsZWFudXAsIGVycm9yT25FbWlzc2lvbnNJblBlcmlvZCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGb3JtU291cmNlT2JzZXJ2YWJsZTxUPihmb3JtOiBEYnhNdXRhYmxlRm9ybSwgaW5wdXRPYnM6IE9ic2VydmFibGVPclZhbHVlPFQ+LCBtb2RlT2JzOiBPYnNlcnZhYmxlPERieEZvcm1Tb3VyY2VEaXJlY3RpdmVNb2RlPik6IE9ic2VydmFibGU8VD4ge1xuICByZXR1cm4gZGJ4Rm9ybVNvdXJjZU9ic2VydmFibGVGcm9tU3RyZWFtKGZvcm0uc3RyZWFtJCwgaW5wdXRPYnMsIG1vZGVPYnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGJ4Rm9ybVNvdXJjZU9ic2VydmFibGVGcm9tU3RyZWFtPFQ+KHN0cmVhbU9iczogT2JzZXJ2YWJsZTxEYnhGb3JtU3RhdGVSZWY+LCBpbnB1dE9iczogT2JzZXJ2YWJsZU9yVmFsdWU8VD4sIG1vZGVPYnM6IE9ic2VydmFibGVPclZhbHVlPERieEZvcm1Tb3VyY2VEaXJlY3RpdmVNb2RlPik6IE9ic2VydmFibGU8VD4ge1xuICBjb25zdCB2YWx1ZSQgPSBhc09ic2VydmFibGUoaW5wdXRPYnMpLnBpcGUoc2hhcmVSZXBsYXkoMSkpOyAvLyBjYXRjaC9zaGFyZSB0aGUgbGF0ZXN0IGVtaXNzaW9uXG5cbiAgY29uc3Qgc3RhdGUkID0gc3RyZWFtT2JzLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4LnN0YXRlKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICk7XG5cbiAgY29uc3QgbW9kZSQgPSBhc09ic2VydmFibGUobW9kZU9icykucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKTtcblxuICByZXR1cm4gY29tYmluZUxhdGVzdChbbW9kZSQsIHZhbHVlJF0pLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4WzBdKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHN3aXRjaE1hcCgobW9kZTogRGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGUpID0+IHtcbiAgICAgIGlmIChtb2RlID09PSAncmVzZXQnKSB7XG4gICAgICAgIC8vIHJlc2V0IG9ubHlcbiAgICAgICAgcmV0dXJuIHN0YXRlJC5waXBlKFxuICAgICAgICAgIGV4aGF1c3RNYXAoKHN0YXRlOiBEYnhGb3JtU3RhdGUpID0+IHtcbiAgICAgICAgICAgIGlmIChzdGF0ZSA9PT0gRGJ4Rm9ybVN0YXRlLlJFU0VUKSB7XG4gICAgICAgICAgICAgIGxldCBmaXJzdFZhbHVlU2VudCA9IGZhbHNlO1xuICAgICAgICAgICAgICBjb25zdCBkb25lU3ViamVjdCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW3ZhbHVlJCwgc3RhdGUkXSkucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKFt2YWx1ZSwgc3RhdGVdKSA9PiB7XG4gICAgICAgICAgICAgICAgICBpZiAoIWZpcnN0VmFsdWVTZW50IHx8IHN0YXRlID09PSBEYnhGb3JtU3RhdGUuUkVTRVQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFt2YWx1ZSwgdHJ1ZV0gYXMgW1QsIGJvb2xlYW5dOyAvLyBhbHdheXMgZm9yd2FyZCB0aGUgZmlyc3QgdmFsdWUuXG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW3ZhbHVlLCBmYWxzZV0gYXMgW1QsIGJvb2xlYW5dO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIHRhcCgoW18sIHNlbmRdKSA9PiB7XG4gICAgICAgICAgICAgICAgICBmaXJzdFZhbHVlU2VudCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICBpZiAoIXNlbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgZG9uZVN1YmplY3QubmV4dCh1bmRlZmluZWQpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbHRlcigoW18sIHNlbmRdKSA9PiBzZW5kKSxcbiAgICAgICAgICAgICAgICBtYXAoKFt2YWx1ZSwgX10pID0+IHZhbHVlKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZG9uZVN1YmplY3QpLFxuICAgICAgICAgICAgICAgIGNsZWFudXAoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgZG9uZVN1YmplY3QuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBwYXNzIGFueSB1cGRhdGVkIHZhbHVlIHdoaWxlIG5vdCBpbml0aWFsaXppbmcuXG4gICAgICAgIHJldHVybiBzdGF0ZSQucGlwZShcbiAgICAgICAgICBtYXAoKHgpID0+IHggPT09IERieEZvcm1TdGF0ZS5JTklUSUFMSVpJTkcpLFxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgc3dpdGNoTWFwKChpbml0aWFsaXppbmc6IGJvb2xlYW4pID0+IHtcbiAgICAgICAgICAgIGlmIChpbml0aWFsaXppbmcpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgbGV0IHZhbHVlT2JzID0gdmFsdWUkO1xuXG4gICAgICAgICAgICAgIGlmIChtb2RlID09PSAnYWx3YXlzJykge1xuICAgICAgICAgICAgICAgIHZhbHVlT2JzID0gdmFsdWVPYnMucGlwZShcbiAgICAgICAgICAgICAgICAgIHRocm90dGxlVGltZSgxMCwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgICAgICAgICAgICAgZXJyb3JPbkVtaXNzaW9uc0luUGVyaW9kKHtcbiAgICAgICAgICAgICAgICAgICAgcGVyaW9kOiAxMDAwLFxuICAgICAgICAgICAgICAgICAgICBtYXhFbWlzc2lvbnNQZXJQZXJpb2Q6IDUwLFxuICAgICAgICAgICAgICAgICAgICBvbkVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignZGJ4Rm9ybVNvdXJjZU9ic2VydmFibGVGcm9tU3RyZWFtOiBFcnJvciB0aHJvd24gZHVlIHRvIHRvbyBtYW55IGVtaXNzaW9ucy4gVGhlcmUgbWF5IGJlIGFuIHVuaW50ZW50aW9uYWwgbG9vcCBiZWluZyB0cmlnZ2VyZWQgYnkgZGJ4Rm9ybVNvdXJjZS4gVHlwaWNhbGx5IHRoaXMgY2FuIG9jY3VyIGluIGNhc2VzIHdoZXJlIHRoZSBkYnhGb3JtU291cmNlIGRpcmVjdGl2ZSBpcyB1c2VkIGF0IHRoZSBzYW1lIHRpbWUgYXMgZGJ4Rm9ybVZhbHVlQ2hhbmdlIGRpcmVjdGl2ZSBhbmQgdGhlIHNhbWUgdmFsdWUgaXMgYmVpbmcgcHVzaGVkLicpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICByZXR1cm4gdmFsdWVPYnM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9KVxuICApO1xufVxuXG4vKipcbiAqIERieEZvcm1Tb3VyY2VEaXJlY3RpdmUgbW9kZXMgdGhhdCBkZWZpbmUgd2hlbiB0byBjb3B5IGRhdGEgZnJvbSB0aGUgc291cmNlLlxuICpcbiAqIC0gcmVzZXQ6IG9ubHkgY29weSBkYXRhIHdoZW4gdGhlIGZvcm0gaXMgcmVzZXQuXG4gKiAtIGFsd2F5czogYWx3YXlzIGNvcHkgZGF0YSB3aGVuIHRoZSBkYXRhIG9ic2VydmFibGUgZW1pdHMgYSB2YWx1ZS4gSGFzIGEgdGhyb3R0bGUgb2YgMjBtcyB0byBwcmV2ZW50IHRvbyBtYW55IGVtaXNzaW9ucy4gSWYgZW1pc3Npb25zIG9jY3VyIGluIGEgbWFubmVyIHRoYXQgYXBwZWFycyB0byBiZSBhIGxvb3AgKG1vcmUgdGhhbiAzMCBlbWlzc2lvbnMgaW4gMSBzZWNvbmQpLCB0aGVuIGFuIGVycm9yIGlzIHRocm93biBhbmQgd2FybmluZyBwcmludGVkIHRvIHRoZSBjb25zb2xlLlxuICogLSBldmVyeTogZXF1YWwgdG8gYWx3YXlzLCBidXQgaGFzIG5vIHRocm90dGxlIG9yIGVycm9yIG1lc3NhZ2Ugd2FybmluZy5cbiAqL1xuZXhwb3J0IHR5cGUgRGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGUgPSAncmVzZXQnIHwgJ2Fsd2F5cycgfCAnZXZlcnknO1xuXG4vKipcbiAqIFVzZWQgd2l0aCBhIEZvcm1Db21wb25lbnQgdG8gc2V0IHRoZSB2YWx1ZSBiYXNlZCBvbiB0aGUgaW5wdXQgdmFsdWUuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkYnhGb3JtU291cmNlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgRGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZTxUID0gdW5rbm93bj4ge1xuICByZWFkb25seSBmb3JtID0gaW5qZWN0KERieE11dGFibGVGb3JtPFQ+LCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgZGJ4Rm9ybVNvdXJjZU1vZGUgPSBpbnB1dDxNYXliZTxEYnhGb3JtU291cmNlRGlyZWN0aXZlTW9kZT4+KCk7XG4gIHJlYWRvbmx5IGRieEZvcm1Tb3VyY2UgPSBpbnB1dDxNYXliZTxPYnNlcnZhYmxlT3JWYWx1ZTxNYXliZTxQYXJ0aWFsPFQ+Pj4+PigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBfZWZmZWN0U3ViID0gY2xlYW5TdWJzY3JpcHRpb24oKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9zZXRGb3JtU291cmNlT2JzZXJ2YWJsZUVmZmVjdCA9IGVmZmVjdChcbiAgICAoKSA9PiB7XG4gICAgICBjb25zdCBmb3JtU291cmNlID0gdGhpcy5kYnhGb3JtU291cmNlKCk7XG4gICAgICBjb25zdCBtb2RlOiBEYnhGb3JtU291cmNlRGlyZWN0aXZlTW9kZSA9IHRoaXMuZGJ4Rm9ybVNvdXJjZU1vZGUoKSA/PyAncmVzZXQnO1xuXG4gICAgICBsZXQgc3Vic2NyaXB0aW9uOiBNYXliZTxTdWJzY3JpcHRpb24+O1xuXG4gICAgICBpZiAoZm9ybVNvdXJjZSkge1xuICAgICAgICBzdWJzY3JpcHRpb24gPSBkYnhGb3JtU291cmNlT2JzZXJ2YWJsZUZyb21TdHJlYW0odGhpcy5mb3JtLnN0cmVhbSQsIGZvcm1Tb3VyY2UsIG1vZGUpLnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh4KTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2VmZmVjdFN1Yi5zZXRTdWIoc3Vic2NyaXB0aW9uKTtcbiAgICB9LFxuICAgIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfVxuICApO1xufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Directive, inject, input } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { cleanSubscription } from '@dereekb/dbx-core';
|
|
3
3
|
import { DbxMutableForm } from '../../form/form';
|
|
4
4
|
import { filterMaybe, maybeValueFromObservableOrValue, valueFromFinishedLoadingState } from '@dereekb/rxjs';
|
|
5
5
|
import { dbxFormSourceObservableFromStream } from './form.input.directive';
|
|
@@ -11,20 +11,19 @@ const DEFAULT_DBX_FORM_LOADING_SOURCE_DIRECTIVE_MODE = 'reset';
|
|
|
11
11
|
*
|
|
12
12
|
* Only passes non-null values from the source.
|
|
13
13
|
*/
|
|
14
|
-
export class DbxFormLoadingSourceDirective
|
|
14
|
+
export class DbxFormLoadingSourceDirective {
|
|
15
15
|
form = inject((DbxMutableForm), { host: true });
|
|
16
16
|
dbxFormLoadingSourceMode = input(DEFAULT_DBX_FORM_LOADING_SOURCE_DIRECTIVE_MODE, { transform: (x) => x ?? DEFAULT_DBX_FORM_LOADING_SOURCE_DIRECTIVE_MODE });
|
|
17
17
|
dbxFormLoadingSource = input();
|
|
18
18
|
mode$ = toObservable(this.dbxFormLoadingSourceMode);
|
|
19
19
|
source$ = toObservable(this.dbxFormLoadingSource).pipe(maybeValueFromObservableOrValue(), filterMaybe(), valueFromFinishedLoadingState());
|
|
20
20
|
constructor() {
|
|
21
|
-
|
|
22
|
-
this.sub = dbxFormSourceObservableFromStream(this.form.stream$, this.source$, this.mode$).subscribe((x) => {
|
|
21
|
+
cleanSubscription(dbxFormSourceObservableFromStream(this.form.stream$, this.source$, this.mode$).subscribe((x) => {
|
|
23
22
|
this.form.setValue(x);
|
|
24
|
-
});
|
|
23
|
+
}));
|
|
25
24
|
}
|
|
26
25
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormLoadingSourceDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
27
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFormLoadingSourceDirective, isStandalone: true, selector: "[dbxFormLoadingSource]", inputs: { dbxFormLoadingSourceMode: { classPropertyName: "dbxFormLoadingSourceMode", publicName: "dbxFormLoadingSourceMode", isSignal: true, isRequired: false, transformFunction: null }, dbxFormLoadingSource: { classPropertyName: "dbxFormLoadingSource", publicName: "dbxFormLoadingSource", isSignal: true, isRequired: false, transformFunction: null } },
|
|
26
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: DbxFormLoadingSourceDirective, isStandalone: true, selector: "[dbxFormLoadingSource]", inputs: { dbxFormLoadingSourceMode: { classPropertyName: "dbxFormLoadingSourceMode", publicName: "dbxFormLoadingSourceMode", isSignal: true, isRequired: false, transformFunction: null }, dbxFormLoadingSource: { classPropertyName: "dbxFormLoadingSource", publicName: "dbxFormLoadingSource", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 });
|
|
28
27
|
}
|
|
29
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxFormLoadingSourceDirective, decorators: [{
|
|
30
29
|
type: Directive,
|
|
@@ -33,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
33
32
|
standalone: true
|
|
34
33
|
}]
|
|
35
34
|
}], ctorParameters: () => [] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5sb2FkaW5nLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybS9pby9mb3JtLmxvYWRpbmcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUF3QyxXQUFXLEVBQUUsK0JBQStCLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEosT0FBTyxFQUFFLGlDQUFpQyxFQUE4QixNQUFNLHdCQUF3QixDQUFDO0FBRXZHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFFMUQsTUFBTSw4Q0FBOEMsR0FBK0IsT0FBTyxDQUFDO0FBRTNGOzs7O0dBSUc7QUFLSCxNQUFNLE9BQU8sNkJBQTZCO0lBQy9CLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQSxjQUFpQixDQUFBLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUVqRCx3QkFBd0IsR0FBRyxLQUFLLENBQWdFLDhDQUE4QyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksOENBQThDLEVBQUUsQ0FBQyxDQUFDO0lBQzNOLG9CQUFvQixHQUFHLEtBQUssRUFBMkMsQ0FBQztJQUV4RSxLQUFLLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3BELE9BQU8sR0FBeUIsWUFBWSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksQ0FBQywrQkFBK0IsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLDZCQUE2QixFQUFFLENBQUMsQ0FBQztJQUV6SztRQUNFLGlCQUFpQixDQUNmLGlDQUFpQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQzdGLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO3dHQWZVLDZCQUE2Qjs0RkFBN0IsNkJBQTZCOzs0RkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2xlYW5TdWJzY3JpcHRpb24gfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBEYnhNdXRhYmxlRm9ybSB9IGZyb20gJy4uLy4uL2Zvcm0vZm9ybSc7XG5pbXBvcnQgeyBMb2FkaW5nU3RhdGUsIE1heWJlT2JzZXJ2YWJsZU9yVmFsdWUsIGZpbHRlck1heWJlLCBtYXliZVZhbHVlRnJvbU9ic2VydmFibGVPclZhbHVlLCB2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgZGJ4Rm9ybVNvdXJjZU9ic2VydmFibGVGcm9tU3RyZWFtLCBEYnhGb3JtU291cmNlRGlyZWN0aXZlTW9kZSB9IGZyb20gJy4vZm9ybS5pbnB1dC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuY29uc3QgREVGQVVMVF9EQlhfRk9STV9MT0FESU5HX1NPVVJDRV9ESVJFQ1RJVkVfTU9ERTogRGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGUgPSAncmVzZXQnO1xuXG4vKipcbiAqIFVzZWQgd2l0aCBhIEZvcm1Db21wb25lbnQgdG8gc2V0IHRoZSB2YWx1ZSBmcm9tIGEgTG9hZGluZ1N0YXRlIHdoZW4gdGhlIHZhbHVlIGlzIGF2YWlsYWJsZS5cbiAqXG4gKiBPbmx5IHBhc3NlcyBub24tbnVsbCB2YWx1ZXMgZnJvbSB0aGUgc291cmNlLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4Rm9ybUxvYWRpbmdTb3VyY2VdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEYnhGb3JtTG9hZGluZ1NvdXJjZURpcmVjdGl2ZTxUIGV4dGVuZHMgb2JqZWN0ID0gb2JqZWN0PiB7XG4gIHJlYWRvbmx5IGZvcm0gPSBpbmplY3QoRGJ4TXV0YWJsZUZvcm08VD4sIHsgaG9zdDogdHJ1ZSB9KTtcblxuICByZWFkb25seSBkYnhGb3JtTG9hZGluZ1NvdXJjZU1vZGUgPSBpbnB1dDxEYnhGb3JtU291cmNlRGlyZWN0aXZlTW9kZSwgTWF5YmU8RGJ4Rm9ybVNvdXJjZURpcmVjdGl2ZU1vZGU+PihERUZBVUxUX0RCWF9GT1JNX0xPQURJTkdfU09VUkNFX0RJUkVDVElWRV9NT0RFLCB7IHRyYW5zZm9ybTogKHgpID0+IHggPz8gREVGQVVMVF9EQlhfRk9STV9MT0FESU5HX1NPVVJDRV9ESVJFQ1RJVkVfTU9ERSB9KTtcbiAgcmVhZG9ubHkgZGJ4Rm9ybUxvYWRpbmdTb3VyY2UgPSBpbnB1dDxNYXliZU9ic2VydmFibGVPclZhbHVlPExvYWRpbmdTdGF0ZTxUPj4+KCk7XG5cbiAgcmVhZG9ubHkgbW9kZSQgPSB0b09ic2VydmFibGUodGhpcy5kYnhGb3JtTG9hZGluZ1NvdXJjZU1vZGUpO1xuICByZWFkb25seSBzb3VyY2UkOiBPYnNlcnZhYmxlPE1heWJlPFQ+PiA9IHRvT2JzZXJ2YWJsZSh0aGlzLmRieEZvcm1Mb2FkaW5nU291cmNlKS5waXBlKG1heWJlVmFsdWVGcm9tT2JzZXJ2YWJsZU9yVmFsdWUoKSwgZmlsdGVyTWF5YmUoKSwgdmFsdWVGcm9tRmluaXNoZWRMb2FkaW5nU3RhdGUoKSk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICBkYnhGb3JtU291cmNlT2JzZXJ2YWJsZUZyb21TdHJlYW0odGhpcy5mb3JtLnN0cmVhbSQsIHRoaXMuc291cmNlJCwgdGhpcy5tb2RlJCkuc3Vic2NyaWJlKCh4KSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybS5zZXRWYWx1ZSh4KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, inject, signal } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { DbxInjectionComponent, cleanSubscription } from '@dereekb/dbx-core';
|
|
3
3
|
import { switchMapFilterMaybe } from '@dereekb/rxjs';
|
|
4
4
|
import { shareReplay, distinctUntilChanged, map } from 'rxjs';
|
|
5
5
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
@@ -15,18 +15,18 @@ import * as i1 from "@angular/forms";
|
|
|
15
15
|
import * as i2 from "@angular/material/checkbox";
|
|
16
16
|
import * as i3 from "@angular/material/core";
|
|
17
17
|
import * as i4 from "@angular/material/icon";
|
|
18
|
-
export class DbxChecklistItemContentComponent
|
|
18
|
+
export class DbxChecklistItemContentComponent {
|
|
19
19
|
checklistItemFieldComponent = inject((DbxChecklistItemFieldComponent));
|
|
20
20
|
config = {
|
|
21
21
|
componentClass: this.checklistItemFieldComponent.componentClass,
|
|
22
22
|
init: (instance) => {
|
|
23
|
-
this.
|
|
23
|
+
cleanSubscription(this.checklistItemFieldComponent.displayContent$.subscribe((content) => {
|
|
24
24
|
instance.setDisplayContent(content);
|
|
25
|
-
});
|
|
25
|
+
}));
|
|
26
26
|
}
|
|
27
27
|
};
|
|
28
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxChecklistItemContentComponent, deps:
|
|
29
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxChecklistItemContentComponent, isStandalone: true, selector: "dbx-checklist-item-content-component",
|
|
28
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxChecklistItemContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DbxChecklistItemContentComponent, isStandalone: true, selector: "dbx-checklist-item-content-component", ngImport: i0, template: `
|
|
30
30
|
<dbx-injection [config]="config"></dbx-injection>
|
|
31
31
|
`, isInline: true, dependencies: [{ kind: "component", type: DbxInjectionComponent, selector: "dbx-injection, [dbxInjection], [dbx-injection]", inputs: ["config", "template"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
32
32
|
}
|
|
@@ -74,6 +74,7 @@ export class DbxChecklistItemFieldComponent extends FieldType {
|
|
|
74
74
|
return this.checklistField.componentClass ?? DbxDefaultChecklistItemFieldDisplayComponent;
|
|
75
75
|
}
|
|
76
76
|
ngOnInit() {
|
|
77
|
+
// field prop is finally available here
|
|
77
78
|
this._displayContentObs.set(this.checklistField.displayContent);
|
|
78
79
|
}
|
|
79
80
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DbxChecklistItemFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -83,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
83
84
|
type: Component,
|
|
84
85
|
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [ReactiveFormsModule, MatCheckboxModule, DbxAnchorComponent, MatRippleModule, MatIconModule, DbxChecklistItemContentComponent], template: "<div class=\"dbx-checklist-item-wrapper\" [formGroup]=\"formGroup\">\n @if (label) {\n <div class=\"dbx-checklist-item-label\">{{ label }}</div>\n }\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]=\"anchorSignal()\">\n <div class=\"dbx-checklist-item-content\" matRipple [matRippleDisabled]=\"rippleDisabledSignal()\">\n <dbx-checklist-item-content-component></dbx-checklist-item-content-component>\n <span class=\"spacer\"></span>\n @if (!rippleDisabledSignal()) {\n <mat-icon>navigate_next</mat-icon>\n }\n </div>\n </dbx-anchor>\n </div>\n </div>\n @if (description) {\n <div class=\"dbx-hint\">{{ description }}</div>\n }\n</div>\n" }]
|
|
85
86
|
}] });
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0Lml0ZW0uZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvY2hlY2tsaXN0L2NoZWNrbGlzdC5pdGVtLmZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL2NoZWNrbGlzdC9jaGVja2xpc3QuaXRlbS5maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFnQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBK0IsNkJBQTZCLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN0SCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDMUUsT0FBTyxFQUErQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxTQUFTLEVBQXFDLE1BQU0sa0JBQWtCLENBQUM7QUFFaEYsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFaEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxr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QU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLElBQUksNENBQTRDLENBQUM7SUFDNUYsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbEUsQ0FBQzt3R0FyRFUsOEJBQThCOzRGQUE5Qiw4QkFBOEIsK0ZDdEQzQyw2NkJBd0JBLDJDRDRCWSxtQkFBbUIsbWxCQUFFLGlCQUFpQixxWUFBRSxrQkFBa0IsdUZBQUUsZUFBZSxrU0FBRSxhQUFhLG9MQTVCekYsZ0NBQWdDOzs0RkE4QmhDLDhCQUE4QjtrQkFOMUMsU0FBUztzQ0FFUyx1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQsIFR5cGUsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWcsIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlLCBEYnhJbmplY3Rpb25Db21wb25lbnQgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBzd2l0Y2hNYXBGaWx0ZXJNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgc2hhcmVSZXBsYXksIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZpZWxkVHlwZSwgRmllbGRUeXBlQ29uZmlnLCBGb3JtbHlGaWVsZFByb3BzIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBDaGVja2xpc3RJdGVtRmllbGREaXNwbGF5Q29tcG9uZW50LCBDaGVja2xpc3RJdGVtRGlzcGxheUNvbnRlbnQgfSBmcm9tICcuL2NoZWNrbGlzdC5pdGVtJztcbmltcG9ydCB7IERieERlZmF1bHRDaGVja2xpc3RJdGVtRmllbGREaXNwbGF5Q29tcG9uZW50IH0gZnJvbSAnLi9jaGVja2xpc3QuaXRlbS5maWVsZC5jb250ZW50LmRlZmF1bHQuY29tcG9uZW50JztcbmltcG9ydCB7IHR5cGUgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IHRvU2lnbmFsLCB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBNYXRDaGVja2JveE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoZWNrYm94JztcbmltcG9ydCB7IE1hdFJpcHBsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgRGJ4QW5jaG9yQ29tcG9uZW50IH0gZnJvbSAnQGRlcmVla2IvZGJ4LXdlYic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RieC1jaGVja2xpc3QtaXRlbS1jb250ZW50LWNvbXBvbmVudCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRieC1pbmplY3Rpb24gW2NvbmZpZ109XCJjb25maWdcIj48L2RieC1pbmplY3Rpb24+XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRGJ4SW5qZWN0aW9uQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBEYnhDaGVja2xpc3RJdGVtQ29udGVudENvbXBvbmVudDxUID0gdW5rbm93bj4gZXh0ZW5kcyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IGNoZWNrbGlzdEl0ZW1GaWVsZENvbXBvbmVudCA9IGluamVjdChEYnhDaGVja2xpc3RJdGVtRmllbGRDb21wb25lbnQ8VD4pO1xuXG4gIHJlYWRvbmx5IGNvbmZpZzogRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnPENoZWNrbGlzdEl0ZW1GaWVsZERpc3BsYXlDb21wb25lbnQ8VD4+ID0ge1xuICAgIGNvbXBvbmVudENsYXNzOiB0aGlzLmNoZWNrbGlzdEl0ZW1GaWVsZENvbXBvbmVudC5jb21wb25lbnRDbGFzcyxcbiAgICBpbml0OiAoaW5zdGFuY2UpID0+IHtcbiAgICAgIHRoaXMuc3ViID0gdGhpcy5jaGVja2xpc3RJdGVtRmllbGRDb21wb25lbnQuZGlzcGxheUNvbnRlbnQkLnN1YnNjcmliZSgoY29udGVudDogQ2hlY2tsaXN0SXRlbURpc3BsYXlDb250ZW50PFQ+KSA9PiB7XG4gICAgICAgIGluc3RhbmNlLnNldERpc3BsYXlDb250ZW50KGNvbnRlbnQpO1xuICAgICAgfSk7XG4gICAgfVxuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieENoZWNrbGlzdEl0ZW1GaWVsZFByb3BzPFQgPSB1bmtub3duPiBleHRlbmRzIEZvcm1seUZpZWxkUHJvcHMge1xuICAvKipcbiAgICogT2JzZXJ2YWJsZSB1c2VkIHRvIHJldHJpZXZlIGNvbnRlbnQgdG8gZGlzcGxheSBmb3IgdGhlIGl0ZW0uXG4gICAqL1xuICByZWFkb25seSBkaXNwbGF5Q29udGVudDogT2JzZXJ2YWJsZTxDaGVja2xpc3RJdGVtRGlzcGxheUNvbnRlbnQ8VD4+O1xuICAvKipcbiAgICogQ3VzdG9tIGNvbXBvbmVudCBjbGFzcyB0byB1c2UgYnkgZGVmYXVsdC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbXBvbmVudENsYXNzPzogVHlwZTxDaGVja2xpc3RJdGVtRmllbGREaXNwbGF5Q29tcG9uZW50PFQ+Pjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnY2hlY2tsaXN0Lml0ZW0uZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1JlYWN0aXZlRm9ybXNNb2R1bGUsIE1hdENoZWNrYm94TW9kdWxlLCBEYnhBbmNob3JDb21wb25lbnQsIE1hdFJpcHBsZU1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgRGJ4Q2hlY2tsaXN0SXRlbUNvbnRlbnRDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIERieENoZWNrbGlzdEl0ZW1GaWVsZENvbXBvbmVudDxUID0gdW5rbm93bj4gZXh0ZW5kcyBGaWVsZFR5cGU8RmllbGRUeXBlQ29uZmlnPERieENoZWNrbGlzdEl0ZW1GaWVsZFByb3BzPFQ+Pj4gaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIHJlYWRvbmx5IF9kaXNwbGF5Q29udGVudE9icyA9IHNpZ25hbDxNYXliZTxPYnNlcnZhYmxlPENoZWNrbGlzdEl0ZW1EaXNwbGF5Q29udGVudDxUPj4+Pih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IGRpc3BsYXlDb250ZW50JDogT2JzZXJ2YWJsZTxDaGVja2xpc3RJdGVtRGlzcGxheUNvbnRlbnQ8VD4+ID0gdG9PYnNlcnZhYmxlKHRoaXMuX2Rpc3BsYXlDb250ZW50T2JzKS5waXBlKHN3aXRjaE1hcEZpbHRlck1heWJlKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICByZWFkb25seSBhbmNob3IkID0gdGhpcy5kaXNwbGF5Q29udGVudCQucGlwZShcbiAgICBtYXAoKHg6IENoZWNrbGlzdEl0ZW1EaXNwbGF5Q29udGVudDxUPikgPT4geC5hbmNob3IpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgcmlwcGxlRGlzYWJsZWQkID0gdGhpcy5kaXNwbGF5Q29udGVudCQucGlwZShcbiAgICBtYXAoKHg6IENoZWNrbGlzdEl0ZW1EaXNwbGF5Q29udGVudDxUPikgPT4geC5yaXBwbGUgPT09IGZhbHNlIHx8ICh4LnJpcHBsZSAhPT0gdHJ1ZSAmJiAheC5hbmNob3IpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgYW5jaG9yU2lnbmFsID0gdG9TaWduYWwodGhpcy5hbmNob3IkKTtcbiAgcmVhZG9ubHkgcmlwcGxlRGlzYWJsZWRTaWduYWwgPSB0b1NpZ25hbCh0aGlzLnJpcHBsZURpc2FibGVkJCwgeyBpbml0aWFsVmFsdWU6IGZhbHNlIH0pO1xuXG4gIGdldCBmb3JtR3JvdXAoKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtIGFzIEZvcm1Hcm91cDtcbiAgfVxuXG4gIGdldCBmb3JtQ29udHJvbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5rZXkgYXMgc3RyaW5nO1xuICB9XG5cbiAgZ2V0IGxhYmVsKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmxhYmVsO1xuICB9XG5cbiAgZ2V0IGRlc2NyaXB0aW9uKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmRlc2NyaXB0aW9uO1xuICB9XG5cbiAgZ2V0IHJlcXVpcmVkKCk6IE1heWJlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5yZXF1aXJlZDtcbiAgfVxuXG4gIGdldCBjaGVja2xpc3RGaWVsZCgpOiBEYnhDaGVja2xpc3RJdGVtRmllbGRQcm9wczxUPiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHM7XG4gIH1cblxuICBnZXQgZXJyb3JzKCk6IE1heWJlPFZhbGlkYXRpb25FcnJvcnM+IHtcbiAgICByZXR1cm4gdGhpcy5maWVsZC5mb3JtQ29udHJvbD8uZXJyb3JzO1xuICB9XG5cbiAgZ2V0IGNvbXBvbmVudENsYXNzKCk6IFR5cGU8Q2hlY2tsaXN0SXRlbUZpZWxkRGlzcGxheUNvbXBvbmVudDxUPj4ge1xuICAgIHJldHVybiB0aGlzLmNoZWNrbGlzdEZpZWxkLmNvbXBvbmVudENsYXNzID8/IERieERlZmF1bHRDaGVja2xpc3RJdGVtRmllbGREaXNwbGF5Q29tcG9uZW50O1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5fZGlzcGxheUNvbnRlbnRPYnMuc2V0KHRoaXMuY2hlY2tsaXN0RmllbGQuZGlzcGxheUNvbnRlbnQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGJ4LWNoZWNrbGlzdC1pdGVtLXdyYXBwZXJcIiBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiPlxuICBAaWYgKGxhYmVsKSB7XG4gICAgPGRpdiBjbGFzcz1cImRieC1jaGVja2xpc3QtaXRlbS1sYWJlbFwiPnt7IGxhYmVsIH19PC9kaXY+XG4gIH1cbiAgPGRpdiBjbGFzcz1cImRieC1jaGVja2xpc3QtaXRlbVwiPlxuICAgIDxkaXYgY2xhc3M9XCJkYngtY2hlY2tsaXN0LWl0ZW0tY2hlY2tcIj5cbiAgICAgIDxtYXQtY2hlY2tib3ggW2Zvcm1Db250cm9sTmFtZV09XCJmb3JtQ29udHJvbE5hbWVcIj48L21hdC1jaGVja2JveD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LWNoZWNrbGlzdC1pdGVtLWNvbnRlbnQtd3JhcHBlclwiPlxuICAgICAgPGRieC1hbmNob3IgW2Jsb2NrXT1cInRydWVcIiBbYW5jaG9yXT1cImFuY2hvclNpZ25hbCgpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYngtY2hlY2tsaXN0LWl0ZW0tY29udGVudFwiIG1hdFJpcHBsZSBbbWF0UmlwcGxlRGlzYWJsZWRdPVwicmlwcGxlRGlzYWJsZWRTaWduYWwoKVwiPlxuICAgICAgICAgIDxkYngtY2hlY2tsaXN0LWl0ZW0tY29udGVudC1jb21wb25lbnQ+PC9kYngtY2hlY2tsaXN0LWl0ZW0tY29udGVudC1jb21wb25lbnQ+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzcGFjZXJcIj48L3NwYW4+XG4gICAgICAgICAgQGlmICghcmlwcGxlRGlzYWJsZWRTaWduYWwoKSkge1xuICAgICAgICAgICAgPG1hdC1pY29uPm5hdmlnYXRlX25leHQ8L21hdC1pY29uPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2RieC1hbmNob3I+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICBAaWYgKGRlc2NyaXB0aW9uKSB7XG4gICAgPGRpdiBjbGFzcz1cImRieC1oaW50XCI+e3sgZGVzY3JpcHRpb24gfX08L2Rpdj5cbiAgfVxuPC9kaXY+XG4iXX0=
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0Lml0ZW0uZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZmllbGQvY2hlY2tsaXN0L2NoZWNrbGlzdC5pdGVtLmZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL2NoZWNrbGlzdC9jaGVja2xpc3QuaXRlbS5maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFnQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBK0IscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDMUUsT0FBTyxFQUErQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxTQUFTLEVBQXFDLE1BQU0sa0JBQWtCLENBQUM7QUFFaEYsT0FBTyxFQUFFLDRDQUE0QyxFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFFaEgsT0FBTyxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFXdEQsTUFBTSxPQUFPLGdDQUFnQztJQUNsQywyQkFBMkIsR0FBRyxNQUFNLENBQUMsQ0FBQSw4QkFBaUMsQ0FBQSxDQUFDLENBQUM7SUFFeEUsTUFBTSxHQUF1RTtRQUNwRixjQUFjLEVBQUUsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGNBQWM7UUFDL0QsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDakIsaUJBQWlCLENBQ2YsSUFBSSxDQUFDLDJCQUEyQixDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUF1QyxFQUFFLEVBQUU7Z0JBQ3JHLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztLQUNGLENBQUM7d0dBWlMsZ0NBQWdDOzRGQUFoQyxnQ0FBZ0MsZ0dBUGpDOztHQUVULDREQUdTLHFCQUFxQjs7NEZBRXBCLGdDQUFnQztrQkFUNUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0NBQXNDO29CQUNoRCxRQUFRLEVBQUU7O0dBRVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztpQkFDakM7O0FBaUNELE1BQU0sT0FBTyw4QkFBNEMsU0FBUSxTQUF5RDtJQUN2RyxrQkFBa0IsR0FBRyxNQUFNLENBQW9ELFNBQVMsQ0FBQyxDQUFDO0lBRWxHLGVBQWUsR0FBK0MsWUFBWSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLG9CQUFvQixFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFekssT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUMxQyxHQUFHLENBQUMsQ0FBQyxDQUFpQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQ3BELFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBRU8sZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUNsRCxHQUFHLENBQUMsQ0FBQyxDQUFpQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQ2xHLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBRU8sWUFBWSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdEMsb0JBQW9CLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUV4RixJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxJQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsR0FBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLElBQUksNENBQTRDLENBQUM7SUFDNUYsQ0FBQztJQUVELFFBQVE7UUFDTix1Q0FBdUM7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7d0dBdERVLDhCQUE4Qjs0RkFBOUIsOEJBQThCLCtGQ3hEM0MsNjZCQXdCQSwyQ0Q4QlksbUJBQW1CLG1sQkFBRSxpQkFBaUIscVlBQUUsa0JBQWtCLHVGQUFFLGVBQWUsa1NBQUUsYUFBYSxvTEE5QnpGLGdDQUFnQzs7NEZBZ0NoQyw4QkFBOEI7a0JBTjFDLFNBQVM7c0NBRVMsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0LCBUeXBlLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnLCBEYnhJbmplY3Rpb25Db21wb25lbnQsIGNsZWFuU3Vic2NyaXB0aW9uIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgc3dpdGNoTWFwRmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHNoYXJlUmVwbGF5LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzLCBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGaWVsZFR5cGUsIEZpZWxkVHlwZUNvbmZpZywgRm9ybWx5RmllbGRQcm9wcyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgQ2hlY2tsaXN0SXRlbUZpZWxkRGlzcGxheUNvbXBvbmVudCwgQ2hlY2tsaXN0SXRlbURpc3BsYXlDb250ZW50IH0gZnJvbSAnLi9jaGVja2xpc3QuaXRlbSc7XG5pbXBvcnQgeyBEYnhEZWZhdWx0Q2hlY2tsaXN0SXRlbUZpZWxkRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tsaXN0Lml0ZW0uZmllbGQuY29udGVudC5kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyB0eXBlIE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyB0b1NpZ25hbCwgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IERieEFuY2hvckNvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtY2hlY2tsaXN0LWl0ZW0tY29udGVudC1jb21wb25lbnQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkYngtaW5qZWN0aW9uIFtjb25maWddPVwiY29uZmlnXCI+PC9kYngtaW5qZWN0aW9uPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0RieEluamVjdGlvbkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4Q2hlY2tsaXN0SXRlbUNvbnRlbnRDb21wb25lbnQ8VCA9IHVua25vd24+IHtcbiAgcmVhZG9ubHkgY2hlY2tsaXN0SXRlbUZpZWxkQ29tcG9uZW50ID0gaW5qZWN0KERieENoZWNrbGlzdEl0ZW1GaWVsZENvbXBvbmVudDxUPik7XG5cbiAgcmVhZG9ubHkgY29uZmlnOiBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWc8Q2hlY2tsaXN0SXRlbUZpZWxkRGlzcGxheUNvbXBvbmVudDxUPj4gPSB7XG4gICAgY29tcG9uZW50Q2xhc3M6IHRoaXMuY2hlY2tsaXN0SXRlbUZpZWxkQ29tcG9uZW50LmNvbXBvbmVudENsYXNzLFxuICAgIGluaXQ6IChpbnN0YW5jZSkgPT4ge1xuICAgICAgY2xlYW5TdWJzY3JpcHRpb24oXG4gICAgICAgIHRoaXMuY2hlY2tsaXN0SXRlbUZpZWxkQ29tcG9uZW50LmRpc3BsYXlDb250ZW50JC5zdWJzY3JpYmUoKGNvbnRlbnQ6IENoZWNrbGlzdEl0ZW1EaXNwbGF5Q29udGVudDxUPikgPT4ge1xuICAgICAgICAgIGluc3RhbmNlLnNldERpc3BsYXlDb250ZW50KGNvbnRlbnQpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4Q2hlY2tsaXN0SXRlbUZpZWxkUHJvcHM8VCA9IHVua25vd24+IGV4dGVuZHMgRm9ybWx5RmllbGRQcm9wcyB7XG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHVzZWQgdG8gcmV0cmlldmUgY29udGVudCB0byBkaXNwbGF5IGZvciB0aGUgaXRlbS5cbiAgICovXG4gIHJlYWRvbmx5IGRpc3BsYXlDb250ZW50OiBPYnNlcnZhYmxlPENoZWNrbGlzdEl0ZW1EaXNwbGF5Q29udGVudDxUPj47XG4gIC8qKlxuICAgKiBDdXN0b20gY29tcG9uZW50IGNsYXNzIHRvIHVzZSBieSBkZWZhdWx0LlxuICAgKi9cbiAgcmVhZG9ubHkgY29tcG9uZW50Q2xhc3M/OiBUeXBlPENoZWNrbGlzdEl0ZW1GaWVsZERpc3BsYXlDb21wb25lbnQ8VD4+O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGVVcmw6ICdjaGVja2xpc3QuaXRlbS5maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbUmVhY3RpdmVGb3Jtc01vZHVsZSwgTWF0Q2hlY2tib3hNb2R1bGUsIERieEFuY2hvckNvbXBvbmVudCwgTWF0UmlwcGxlTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBEYnhDaGVja2xpc3RJdGVtQ29udGVudENvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4Q2hlY2tsaXN0SXRlbUZpZWxkQ29tcG9uZW50PFQgPSB1bmtub3duPiBleHRlbmRzIEZpZWxkVHlwZTxGaWVsZFR5cGVDb25maWc8RGJ4Q2hlY2tsaXN0SXRlbUZpZWxkUHJvcHM8VD4+PiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rpc3BsYXlDb250ZW50T2JzID0gc2lnbmFsPE1heWJlPE9ic2VydmFibGU8Q2hlY2tsaXN0SXRlbURpc3BsYXlDb250ZW50PFQ+Pj4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgZGlzcGxheUNvbnRlbnQkOiBPYnNlcnZhYmxlPENoZWNrbGlzdEl0ZW1EaXNwbGF5Q29udGVudDxUPj4gPSB0b09ic2VydmFibGUodGhpcy5fZGlzcGxheUNvbnRlbnRPYnMpLnBpcGUoc3dpdGNoTWFwRmlsdGVyTWF5YmUoKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIHJlYWRvbmx5IGFuY2hvciQgPSB0aGlzLmRpc3BsYXlDb250ZW50JC5waXBlKFxuICAgIG1hcCgoeDogQ2hlY2tsaXN0SXRlbURpc3BsYXlDb250ZW50PFQ+KSA9PiB4LmFuY2hvciksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSByaXBwbGVEaXNhYmxlZCQgPSB0aGlzLmRpc3BsYXlDb250ZW50JC5waXBlKFxuICAgIG1hcCgoeDogQ2hlY2tsaXN0SXRlbURpc3BsYXlDb250ZW50PFQ+KSA9PiB4LnJpcHBsZSA9PT0gZmFsc2UgfHwgKHgucmlwcGxlICE9PSB0cnVlICYmICF4LmFuY2hvcikpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBhbmNob3JTaWduYWwgPSB0b1NpZ25hbCh0aGlzLmFuY2hvciQpO1xuICByZWFkb25seSByaXBwbGVEaXNhYmxlZFNpZ25hbCA9IHRvU2lnbmFsKHRoaXMucmlwcGxlRGlzYWJsZWQkLCB7IGluaXRpYWxWYWx1ZTogZmFsc2UgfSk7XG5cbiAgZ2V0IGZvcm1Hcm91cCgpOiBGb3JtR3JvdXAge1xuICAgIHJldHVybiB0aGlzLmZvcm0gYXMgRm9ybUdyb3VwO1xuICB9XG5cbiAgZ2V0IGZvcm1Db250cm9sTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmtleSBhcyBzdHJpbmc7XG4gIH1cblxuICBnZXQgbGFiZWwoKTogTWF5YmU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubGFiZWw7XG4gIH1cblxuICBnZXQgZGVzY3JpcHRpb24oKTogTWF5YmU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuZGVzY3JpcHRpb247XG4gIH1cblxuICBnZXQgcmVxdWlyZWQoKTogTWF5YmU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnJlcXVpcmVkO1xuICB9XG5cbiAgZ2V0IGNoZWNrbGlzdEZpZWxkKCk6IERieENoZWNrbGlzdEl0ZW1GaWVsZFByb3BzPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcztcbiAgfVxuXG4gIGdldCBlcnJvcnMoKTogTWF5YmU8VmFsaWRhdGlvbkVycm9ycz4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLmZvcm1Db250cm9sPy5lcnJvcnM7XG4gIH1cblxuICBnZXQgY29tcG9uZW50Q2xhc3MoKTogVHlwZTxDaGVja2xpc3RJdGVtRmllbGREaXNwbGF5Q29tcG9uZW50PFQ+PiB7XG4gICAgcmV0dXJuIHRoaXMuY2hlY2tsaXN0RmllbGQuY29tcG9uZW50Q2xhc3MgPz8gRGJ4RGVmYXVsdENoZWNrbGlzdEl0ZW1GaWVsZERpc3BsYXlDb21wb25lbnQ7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICAvLyBmaWVsZCBwcm9wIGlzIGZpbmFsbHkgYXZhaWxhYmxlIGhlcmVcbiAgICB0aGlzLl9kaXNwbGF5Q29udGVudE9icy5zZXQodGhpcy5jaGVja2xpc3RGaWVsZC5kaXNwbGF5Q29udGVudCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJkYngtY2hlY2tsaXN0LWl0ZW0td3JhcHBlclwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gIEBpZiAobGFiZWwpIHtcbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LWNoZWNrbGlzdC1pdGVtLWxhYmVsXCI+e3sgbGFiZWwgfX08L2Rpdj5cbiAgfVxuICA8ZGl2IGNsYXNzPVwiZGJ4LWNoZWNrbGlzdC1pdGVtXCI+XG4gICAgPGRpdiBjbGFzcz1cImRieC1jaGVja2xpc3QtaXRlbS1jaGVja1wiPlxuICAgICAgPG1hdC1jaGVja2JveCBbZm9ybUNvbnRyb2xOYW1lXT1cImZvcm1Db250cm9sTmFtZVwiPjwvbWF0LWNoZWNrYm94PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJkYngtY2hlY2tsaXN0LWl0ZW0tY29udGVudC13cmFwcGVyXCI+XG4gICAgICA8ZGJ4LWFuY2hvciBbYmxvY2tdPVwidHJ1ZVwiIFthbmNob3JdPVwiYW5jaG9yU2lnbmFsKClcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRieC1jaGVja2xpc3QtaXRlbS1jb250ZW50XCIgbWF0UmlwcGxlIFttYXRSaXBwbGVEaXNhYmxlZF09XCJyaXBwbGVEaXNhYmxlZFNpZ25hbCgpXCI+XG4gICAgICAgICAgPGRieC1jaGVja2xpc3QtaXRlbS1jb250ZW50LWNvbXBvbmVudD48L2RieC1jaGVja2xpc3QtaXRlbS1jb250ZW50LWNvbXBvbmVudD5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNwYWNlclwiPjwvc3Bhbj5cbiAgICAgICAgICBAaWYgKCFyaXBwbGVEaXNhYmxlZFNpZ25hbCgpKSB7XG4gICAgICAgICAgICA8bWF0LWljb24+bmF2aWdhdGVfbmV4dDwvbWF0LWljb24+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGJ4LWFuY2hvcj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIEBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LWhpbnRcIj57eyBkZXNjcmlwdGlvbiB9fTwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
|
|
@@ -4,7 +4,7 @@ import { SimpleLoadingContext, SubscriptionObject } from '@dereekb/rxjs';
|
|
|
4
4
|
import { FieldWrapper } from '@ngx-formly/core';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
7
|
-
* Adds a loading bar to help signify
|
|
7
|
+
* Adds a loading bar to help signify asynchronous work is occuring.
|
|
8
8
|
*
|
|
9
9
|
* By default shows loading during asynchronous validation of a field (FormControl status is "PENDING")
|
|
10
10
|
*/
|
|
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
42
42
|
standalone: true
|
|
43
43
|
}]
|
|
44
44
|
}] });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2luZy53cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1mb3JtL3NyYy9saWIvZm9ybWx5L2ZpZWxkL3dyYXBwZXIvd29ya2luZy53cmFwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPbkU7Ozs7R0FJRztBQVlILE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxZQUE0RDtJQUNyRyxHQUFHLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO0lBQy9CLGNBQWMsR0FBRyxJQUFJLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTFELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxTQUFTLENBQUM7WUFDaEUsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDO1NBQzdELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3JCLENBQUM7d0dBYlUsOEJBQThCOzRGQUE5Qiw4QkFBOEIsK0ZBVi9COzs7OztHQUtULDREQUNTLG1CQUFtQjs7NEZBSWxCLDhCQUE4QjtrQkFYMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUU7Ozs7O0dBS1Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQzlCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkluaXQsIE9uRGVzdHJveSwgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4TG9hZGluZ0NvbXBvbmVudCB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgU2ltcGxlTG9hZGluZ0NvbnRleHQsIFN1YnNjcmlwdGlvbk9iamVjdCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgRmllbGRXcmFwcGVyLCBGb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuXG4vKipcbiAqIE5vIGNvbmZpZ3VyYWJsZSB2YWx1ZSBmb3Igbm93LlxuICovXG5leHBvcnQgdHlwZSBEYnhGb3JtV29ya2luZ1dyYXBwZXJDb25maWcgPSBvYmplY3Q7XG5cbi8qKlxuICogQWRkcyBhIGxvYWRpbmcgYmFyIHRvIGhlbHAgc2lnbmlmeSBhc3luY2hyb25vdXMgd29yayBpcyBvY2N1cmluZy5cbiAqXG4gKiBCeSBkZWZhdWx0IHNob3dzIGxvYWRpbmcgZHVyaW5nIGFzeW5jaHJvbm91cyB2YWxpZGF0aW9uIG9mIGEgZmllbGQgKEZvcm1Db250cm9sIHN0YXR1cyBpcyBcIlBFTkRJTkdcIilcbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImRieC1mb3JtLXdvcmtpbmctd3JhcHBlclwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAjZmllbGRDb21wb25lbnQ+PC9uZy1jb250YWluZXI+XG4gICAgICA8ZGJ4LWxvYWRpbmcgW2xpbmVhcl09XCJ0cnVlXCIgW2NvbnRleHRdPVwid29ya2luZ0NvbnRleHRcIj48L2RieC1sb2FkaW5nPlxuICAgIDwvZGl2PlxuICBgLFxuICBpbXBvcnRzOiBbRGJ4TG9hZGluZ0NvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERieEZvcm1Xb3JraW5nV3JhcHBlckNvbXBvbmVudCBleHRlbmRzIEZpZWxkV3JhcHBlcjxGb3JtbHlGaWVsZENvbmZpZzxEYnhGb3JtV29ya2luZ1dyYXBwZXJDb25maWc+PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcmVhZG9ubHkgc3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICByZWFkb25seSB3b3JraW5nQ29udGV4dCA9IG5ldyBTaW1wbGVMb2FkaW5nQ29udGV4dChmYWxzZSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdWIuc3Vic2NyaXB0aW9uID0gdGhpcy5mb3JtQ29udHJvbD8uc3RhdHVzQ2hhbmdlcy5zdWJzY3JpYmUoe1xuICAgICAgbmV4dDogKHgpID0+IHRoaXMud29ya2luZ0NvbnRleHQuc2V0TG9hZGluZyh4ID09PSAnUEVORElORycpXG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLndvcmtpbmdDb250ZXh0LmRlc3Ryb3koKTtcbiAgICB0aGlzLnN1Yi5kZXN0cm95KCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
32
32
|
}
|
|
33
33
|
}]
|
|
34
34
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZvcm0vc3JjL2xpYi9mb3JtbHkvZm9ybS9zZWFyY2guZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEQsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQStELE1BQU0sYUFBYSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BILE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7QUFjbEYsTUFBTSxPQUFPLDBCQUEyQixTQUFRLHNDQUFtRztJQUN4SSxNQUFNLEdBQUcsTUFBTSxFQUFVLENBQUM7SUFFMUIsT0FBTyxHQUFvQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO0lBRTNHLGFBQWEsQ0FBQyxLQUFtQztRQUMvQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7d0dBUFUsMEJBQTBCOzRGQUExQiwwQkFBMEIsNEpBUDFCLCtCQUErQixFQUFFLGlEQUhsQzs7R0FFVCwyREFFUyxtQ0FBbUMsaUlBQUUsMkJBQTJCOzs0RkFNL0QsMEJBQTBCO2tCQVp0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRTs7R0FFVDtvQkFDRCxTQUFTLEVBQUUsK0JBQStCLEVBQUU7b0JBQzVDLE9BQU8sRUFBRSxDQUFDLG1DQUFtQyxFQUFFLDJCQUEyQixDQUFDO29CQUMzRSxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSw4QkFBOEI7cUJBQ3RDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1seUZpZWxkQ29uZmlnIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEFic3RyYWN0Q29uZmlnQXN5bmNGb3JtbHlGb3JtRGlyZWN0aXZlIH0gZnJvbSAnLi4vZm9ybWx5LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBkYnhGb3JtU2VhcmNoRm9ybUZpZWxkcywgRGJ4Rm9ybVNlYXJjaEZvcm1GaWVsZHNDb25maWcsIERieEZvcm1TZWFyY2hGb3JtRmllbGRzVmFsdWUgfSBmcm9tICcuL2Zvcm0uZm9ybSc7XG5pbXBvcnQgeyBEYnhGb3JtbHlGb3JtQ29tcG9uZW50SW1wb3J0c01vZHVsZSwgZGJ4Rm9ybWx5Rm9ybUNvbXBvbmVudFByb3ZpZGVycyB9IGZyb20gJy4uL2Zvcm1seS5jb21wb25lbnQudGVtcGxhdGUnO1xuaW1wb3J0IHsgRGJ4Rm9ybVZhbHVlQ2hhbmdlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZm9ybS9pby9mb3JtLmNoYW5nZS5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtZm9ybS1zZWFyY2gtZm9ybScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRieC1mb3JtbHkgKGRieEZvcm1WYWx1ZUNoYW5nZSk9XCJzZWFyY2hDaGFuZ2VkKCRldmVudClcIj48L2RieC1mb3JtbHk+XG4gIGAsXG4gIHByb3ZpZGVyczogZGJ4Rm9ybWx5Rm9ybUNvbXBvbmVudFByb3ZpZGVycygpLFxuICBpbXBvcnRzOiBbRGJ4Rm9ybWx5Rm9ybUNvbXBvbmVudEltcG9ydHNNb2R1bGUsIERieEZvcm1WYWx1ZUNoYW5nZURpcmVjdGl2ZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2QtYmxvY2sgZGJ4LWZvcm0tc2VhcmNoLWZvcm0nXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgRGJ4Rm9ybVNlYXJjaEZvcm1Db21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdENvbmZpZ0FzeW5jRm9ybWx5Rm9ybURpcmVjdGl2ZTxEYnhGb3JtU2VhcmNoRm9ybUZpZWxkc1ZhbHVlLCBEYnhGb3JtU2VhcmNoRm9ybUZpZWxkc0NvbmZpZz4ge1xuICByZWFkb25seSBzZWFyY2ggPSBvdXRwdXQ8c3RyaW5nPigpO1xuXG4gIHJlYWRvbmx5IGZpZWxkcyQ6IE9ic2VydmFibGU8Rm9ybWx5RmllbGRDb25maWdbXT4gPSB0aGlzLmN1cnJlbnRDb25maWckLnBpcGUobWFwKGRieEZvcm1TZWFyY2hGb3JtRmllbGRzKSk7XG5cbiAgc2VhcmNoQ2hhbmdlZCh2YWx1ZTogRGJ4Rm9ybVNlYXJjaEZvcm1GaWVsZHNWYWx1ZSkge1xuICAgIHRoaXMuc2VhcmNoLmVtaXQodmFsdWUuc2VhcmNoID8/ICcnKTtcbiAgfVxufVxuIl19
|