@sumaris-net/ngx-components 1.19.6 → 1.19.9

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.
@@ -1,7 +1,6 @@
1
- import { ChangeDetectorRef, Injectable, Pipe } from '@angular/core';
1
+ import { ChangeDetectorRef, Pipe } from '@angular/core';
2
2
  import { FormErrorTranslator } from '../validator/form-error-adapter.class';
3
- import { equals } from '../functions';
4
- import * as i0 from "@angular/core";
3
+ import { equals, isNotNilOrBlank } from '../functions';
5
4
  export class FormErrorTranslatePipe {
6
5
  constructor(adapter, _ref) {
7
6
  this.adapter = adapter;
@@ -73,47 +72,96 @@ export class FormGetPipe {
73
72
  return form.get(path);
74
73
  }
75
74
  }
76
- FormGetPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetPipe_Factory() { return new FormGetPipe(); }, token: FormGetPipe, providedIn: "root" });
77
75
  FormGetPipe.decorators = [
78
76
  { type: Pipe, args: [{
79
77
  name: 'formGet'
80
- },] },
81
- { type: Injectable, args: [{ providedIn: 'root' },] }
78
+ },] }
82
79
  ];
83
80
  export class FormGetControlPipe {
84
81
  transform(form, path) {
85
82
  return form.get(path);
86
83
  }
87
84
  }
88
- FormGetControlPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetControlPipe_Factory() { return new FormGetControlPipe(); }, token: FormGetControlPipe, providedIn: "root" });
89
85
  FormGetControlPipe.decorators = [
90
86
  { type: Pipe, args: [{
91
87
  name: 'formGetControl'
92
- },] },
93
- { type: Injectable, args: [{ providedIn: 'root' },] }
88
+ },] }
94
89
  ];
95
90
  export class FormGetArrayPipe {
96
91
  transform(form, path) {
97
92
  return form.get(path);
98
93
  }
99
94
  }
100
- FormGetArrayPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetArrayPipe_Factory() { return new FormGetArrayPipe(); }, token: FormGetArrayPipe, providedIn: "root" });
101
95
  FormGetArrayPipe.decorators = [
102
96
  { type: Pipe, args: [{
103
97
  name: 'formGetArray'
104
- },] },
105
- { type: Injectable, args: [{ providedIn: 'root' },] }
98
+ },] }
106
99
  ];
107
100
  export class FormGetGroupPipe {
108
101
  transform(form, path) {
109
102
  return form.get(path);
110
103
  }
111
104
  }
112
- FormGetGroupPipe.ɵprov = i0.ɵɵdefineInjectable({ factory: function FormGetGroupPipe_Factory() { return new FormGetGroupPipe(); }, token: FormGetGroupPipe, providedIn: "root" });
113
105
  FormGetGroupPipe.decorators = [
114
106
  { type: Pipe, args: [{
115
107
  name: 'formGetGroup'
116
- },] },
117
- { type: Injectable, args: [{ providedIn: 'root' },] }
108
+ },] }
109
+ ];
110
+ export class FormGetValuePipe {
111
+ constructor(adapter, _ref) {
112
+ this.adapter = adapter;
113
+ this._ref = _ref;
114
+ this.value = undefined;
115
+ this._lastControl = null;
116
+ }
117
+ transform(form, path) {
118
+ if (!form) {
119
+ this._dispose();
120
+ return undefined;
121
+ }
122
+ // if we ask another time for the same form and opts, return the last value
123
+ if (form === this._lastControl && equals(path, this._lastPath)) {
124
+ return this.value;
125
+ }
126
+ // store the query, in case it changes
127
+ this._lastControl = form;
128
+ // store the params, in case they change
129
+ this._lastPath = path;
130
+ // set the value
131
+ const control = isNotNilOrBlank(path) ? form.get(path) : form;
132
+ this.value = control === null || control === void 0 ? void 0 : control.value;
133
+ // if there is a subscription to onLangChange, clean it
134
+ this._dispose();
135
+ // subscribe to valueChanges event, in case control value change
136
+ if (!this._onControlValueChanges && control) {
137
+ this._onControlValueChanges = control.valueChanges.subscribe((value) => {
138
+ this.value = value;
139
+ this._ref.markForCheck();
140
+ });
141
+ }
142
+ return this.value;
143
+ }
144
+ ngOnDestroy() {
145
+ this._dispose();
146
+ }
147
+ /**
148
+ * Clean any existing subscription to change events
149
+ */
150
+ _dispose() {
151
+ if (typeof this._onControlValueChanges !== 'undefined') {
152
+ this._onControlValueChanges.unsubscribe();
153
+ this._onControlValueChanges = undefined;
154
+ }
155
+ }
156
+ }
157
+ FormGetValuePipe.decorators = [
158
+ { type: Pipe, args: [{
159
+ name: 'formGetValue',
160
+ pure: false
161
+ },] }
162
+ ];
163
+ FormGetValuePipe.ctorParameters = () => [
164
+ { type: FormErrorTranslator },
165
+ { type: ChangeDetectorRef }
118
166
  ];
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2Zvcm0ucGlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFVBQVUsRUFBYSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBRTVGLE9BQU8sRUFBQyxtQkFBbUIsRUFBNkIsTUFBTSx1Q0FBdUMsQ0FBQztBQUV0RyxPQUFPLEVBQUMsTUFBTSxFQUFvQixNQUFNLGNBQWMsQ0FBQzs7QUFNdkQsTUFBTSxPQUFPLHNCQUFzQjtJQVFqQyxZQUNVLE9BQTRCLEVBQzVCLElBQXVCO1FBRHZCLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBQzVCLFNBQUksR0FBSixJQUFJLENBQW1CO1FBUmpDLFVBQUssR0FBVyxFQUFFLENBQUM7UUFFWCxjQUFTLEdBQXFCLElBQUksQ0FBQztRQUNuQyxpQkFBWSxHQUFzQyxJQUFJLENBQUM7SUFPL0QsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFlLEVBQUUsSUFBaUM7UUFDMUQsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsMkVBQTJFO1FBQzNFLElBQUksSUFBSSxLQUFLLElBQUksQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDOUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ25CO1FBRUQsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBRXRCLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUV6QixnQkFBZ0I7UUFDaEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7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RGV0ZWN0b3JSZWYsIEluamVjdGFibGUsIE9uRGVzdHJveSwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUFycmF5LCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Zvcm1FcnJvclRyYW5zbGF0b3IsIEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zfSBmcm9tICcuLi92YWxpZGF0b3IvZm9ybS1lcnJvci1hZGFwdGVyLmNsYXNzJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZXF1YWxzLCBnZXRQcm9wZXJ0eUJ5UGF0aH0gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuQFBpcGUoe1xuICBuYW1lOiAndHJhbnNsYXRlRm9ybUVycm9yJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUVycm9yVHJhbnNsYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0sIE9uRGVzdHJveSB7XG5cbiAgdmFsdWU6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX2xhc3RGb3JtOiBGb3JtR3JvdXAgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfbGFzdE9wdGlvbnM6IEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX29uRm9ybVN0YXR1c0NoYW5nZTogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWRhcHRlcjogRm9ybUVycm9yVHJhbnNsYXRvcixcbiAgICBwcml2YXRlIF9yZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICB9XG5cbiAgdHJhbnNmb3JtKGZvcm06IEZvcm1Hcm91cCwgb3B0cz86IEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zKTogc3RyaW5nIHtcbiAgICBpZiAoIWZvcm0pIHtcbiAgICAgIHRoaXMuX2Rpc3Bvc2UoKTtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICAvLyBpZiB3ZSBhc2sgYW5vdGhlciB0aW1lIGZvciB0aGUgc2FtZSBmb3JtIGFuZCBvcHRzLCByZXR1cm4gdGhlIGxhc3QgdmFsdWVcbiAgICBpZiAoZm9ybSA9PT0gdGhpcy5fbGFzdEZvcm0gJiYgZXF1YWxzKG9wdHMsIHRoaXMuX2xhc3RPcHRpb25zKSkge1xuICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgLy8gc3RvcmUgdGhlIHF1ZXJ5LCBpbiBjYXNlIGl0IGNoYW5nZXNcbiAgICB0aGlzLl9sYXN0Rm9ybSA9IGZvcm07XG5cbiAgICAvLyBzdG9yZSB0aGUgcGFyYW1zLCBpbiBjYXNlIHRoZXkgY2hhbmdlXG4gICAgdGhpcy5fbGFzdE9wdGlvbnMgPSBvcHRzO1xuXG4gICAgLy8gc2V0IHRoZSB2YWx1ZVxuICAgIHRoaXMuX3VwZGF0ZVZhbHVlKGZvcm0sIG9wdHMpO1xuXG4gICAgLy8gaWYgdGhlcmUgaXMgYSBzdWJzY3JpcHRpb24gdG8gb25MYW5nQ2hhbmdlLCBjbGVhbiBpdFxuICAgIHRoaXMuX2Rpc3Bvc2UoKTtcblxuICAgIC8vIHN1YnNjcmliZSB0byBvblRyYW5zbGF0aW9uQ2hhbmdlIGV2ZW50LCBpbiBjYXNlIHRoZSB0cmFuc2xhdGlvbnMgY2hhbmdlXG4gICAgaWYgKCF0aGlzLl9vbkZvcm1TdGF0dXNDaGFuZ2UpIHtcbiAgICAgIHRoaXMuX29uRm9ybVN0YXR1c0NoYW5nZSA9IGZvcm0uc3RhdHVzQ2hhbmdlcy5zdWJzY3JpYmUoKHN0YXR1cykgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVWYWx1ZShmb3JtLCBvcHRzLCBzdGF0dXMpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNwb3NlKCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWYWx1ZShmb3JtOiBGb3JtR3JvdXAsIG9wdHM/OiBGb3JtRXJyb3JUcmFuc2xhdG9yT3B0aW9ucywgc3RhdHVzPzogYW55KSB7XG4gICAgaWYgKHN0YXR1cyA9PT0gJ0lOVkFMSUQnIHx8IGZvcm0uaW52YWxpZCkge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuYWRhcHRlci50cmFuc2xhdGVGb3JtRXJyb3JzKGZvcm0sIG9wdHMpO1xuICAgICAgdGhpcy5fcmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgICBlbHNlIGlmICh0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLl9yZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIGFueSBleGlzdGluZyBzdWJzY3JpcHRpb24gdG8gY2hhbmdlIGV2ZW50c1xuICAgKi9cbiAgcHJpdmF0ZSBfZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuX29uRm9ybVN0YXR1c0NoYW5nZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuX29uRm9ybVN0YXR1c0NoYW5nZS51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5fb25Gb3JtU3RhdHVzQ2hhbmdlID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0J1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEZvcm1HZXRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdHJhbnNmb3JtKGZvcm06IEFic3RyYWN0Q29udHJvbCwgcGF0aDogQXJyYXk8c3RyaW5nIHwgbnVtYmVyPiB8IHN0cmluZyApOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiBmb3JtLmdldChwYXRoKTtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0Q29udHJvbCdcbn0pXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBGb3JtR2V0Q29udHJvbFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oZm9ybTogQWJzdHJhY3RDb250cm9sLCBwYXRoOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nICk6IEZvcm1Db250cm9sIHtcbiAgICByZXR1cm4gZm9ybS5nZXQocGF0aCkgYXMgRm9ybUNvbnRyb2w7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnZm9ybUdldEFycmF5J1xufSlcbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEZvcm1HZXRBcnJheVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oZm9ybTogQWJzdHJhY3RDb250cm9sLCBwYXRoOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nICk6IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIGZvcm0uZ2V0KHBhdGgpIGFzIEZvcm1BcnJheTtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0R3JvdXAnXG59KVxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgRm9ybUdldEdyb3VwUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybShmb3JtOiBBYnN0cmFjdENvbnRyb2wsIHBhdGg6IEFycmF5PHN0cmluZyB8IG51bWJlcj4gfCBzdHJpbmcgKTogRm9ybUdyb3VwIHtcbiAgICByZXR1cm4gZm9ybS5nZXQocGF0aCkgYXMgRm9ybUdyb3VwO1xuICB9XG59XG4iXX0=
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5waXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvc2hhcmVkL3BpcGVzL2Zvcm0ucGlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFhLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxFQUFDLG1CQUFtQixFQUE2QixNQUFNLHVDQUF1QyxDQUFDO0FBRXRHLE9BQU8sRUFBQyxNQUFNLEVBQUUsZUFBZSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBTXJELE1BQU0sT0FBTyxzQkFBc0I7SUFRakMsWUFDVSxPQUE0QixFQUM1QixJQUF1QjtRQUR2QixZQUFPLEdBQVAsT0FBTyxDQUFxQjtRQUM1QixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQVJqQyxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBRVgsY0FBUyxHQUFxQixJQUFJLENBQUM7UUFDbkMsaUJBQVksR0FBc0MsSUFBSSxDQUFDO0lBTy9ELENBQUM7SUFFRCxTQUFTLENBQUMsSUFBZSxFQUFFLElBQWlDO1FBQzFELElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDVCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEIsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUVELDJFQUEyRTtRQUMzRSxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsU0FBUyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQzlELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztTQUNuQjtRQUVELHNDQUFzQztRQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUV0Qix3Q0FBd0M7UUFDeEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFFekIsZ0JBQWdCO1FBQ2hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FB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LFFBQVE7UUFDZCxJQUFJLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixLQUFLLFdBQVcsRUFBRTtZQUN0RCxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLHNCQUFzQixHQUFHLFNBQVMsQ0FBQztTQUN6QztJQUNILENBQUM7OztZQWpFRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLElBQUksRUFBRSxLQUFLO2FBQ1o7OztZQTVITyxtQkFBbUI7WUFGbkIsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgT25EZXN0cm95LCBQaXBlLCBQaXBlVHJhbnNmb3JtfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWJzdHJhY3RDb250cm9sLCBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7Rm9ybUVycm9yVHJhbnNsYXRvciwgRm9ybUVycm9yVHJhbnNsYXRvck9wdGlvbnN9IGZyb20gJy4uL3ZhbGlkYXRvci9mb3JtLWVycm9yLWFkYXB0ZXIuY2xhc3MnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtlcXVhbHMsIGlzTm90TmlsT3JCbGFua30gZnJvbSAnLi4vZnVuY3Rpb25zJztcblxuQFBpcGUoe1xuICBuYW1lOiAndHJhbnNsYXRlRm9ybUVycm9yJyxcbiAgcHVyZTogZmFsc2Vcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUVycm9yVHJhbnNsYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0sIE9uRGVzdHJveSB7XG5cbiAgdmFsdWU6IHN0cmluZyA9ICcnO1xuXG4gIHByaXZhdGUgX2xhc3RGb3JtOiBGb3JtR3JvdXAgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfbGFzdE9wdGlvbnM6IEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX29uRm9ybVN0YXR1c0NoYW5nZTogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYWRhcHRlcjogRm9ybUVycm9yVHJhbnNsYXRvcixcbiAgICBwcml2YXRlIF9yZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICB9XG5cbiAgdHJhbnNmb3JtKGZvcm06IEZvcm1Hcm91cCwgb3B0cz86IEZvcm1FcnJvclRyYW5zbGF0b3JPcHRpb25zKTogc3RyaW5nIHtcbiAgICBpZiAoIWZvcm0pIHtcbiAgICAgIHRoaXMuX2Rpc3Bvc2UoKTtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICAvLyBpZiB3ZSBhc2sgYW5vdGhlciB0aW1lIGZvciB0aGUgc2FtZSBmb3JtIGFuZCBvcHRzLCByZXR1cm4gdGhlIGxhc3QgdmFsdWVcbiAgICBpZiAoZm9ybSA9PT0gdGhpcy5fbGFzdEZvcm0gJiYgZXF1YWxzKG9wdHMsIHRoaXMuX2xhc3RPcHRpb25zKSkge1xuICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gICAgfVxuXG4gICAgLy8gc3RvcmUgdGhlIHF1ZXJ5LCBpbiBjYXNlIGl0IGNoYW5nZXNcbiAgICB0aGlzLl9sYXN0Rm9ybSA9IGZvcm07XG5cbiAgICAvLyBzdG9yZSB0aGUgcGFyYW1zLCBpbiBjYXNlIHRoZXkgY2hhbmdlXG4gICAgdGhpcy5fbGFzdE9wdGlvbnMgPSBvcHRzO1xuXG4gICAgLy8gc2V0IHRoZSB2YWx1ZVxuICAgIHRoaXMuX3VwZGF0ZVZhbHVlKGZvcm0sIG9wdHMpO1xuXG4gICAgLy8gaWYgdGhlcmUgaXMgYSBzdWJzY3JpcHRpb24gdG8gb25MYW5nQ2hhbmdlLCBjbGVhbiBpdFxuICAgIHRoaXMuX2Rpc3Bvc2UoKTtcblxuICAgIC8vIHN1YnNjcmliZSB0byBvblRyYW5zbGF0aW9uQ2hhbmdlIGV2ZW50LCBpbiBjYXNlIHRoZSB0cmFuc2xhdGlvbnMgY2hhbmdlXG4gICAgaWYgKCF0aGlzLl9vbkZvcm1TdGF0dXNDaGFuZ2UpIHtcbiAgICAgIHRoaXMuX29uRm9ybVN0YXR1c0NoYW5nZSA9IGZvcm0uc3RhdHVzQ2hhbmdlcy5zdWJzY3JpYmUoKHN0YXR1cykgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVWYWx1ZShmb3JtLCBvcHRzLCBzdGF0dXMpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudmFsdWU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kaXNwb3NlKCk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVWYWx1ZShmb3JtOiBGb3JtR3JvdXAsIG9wdHM/OiBGb3JtRXJyb3JUcmFuc2xhdG9yT3B0aW9ucywgc3RhdHVzPzogYW55KSB7XG4gICAgaWYgKHN0YXR1cyA9PT0gJ0lOVkFMSUQnIHx8IGZvcm0uaW52YWxpZCkge1xuICAgICAgdGhpcy52YWx1ZSA9IHRoaXMuYWRhcHRlci50cmFuc2xhdGVGb3JtRXJyb3JzKGZvcm0sIG9wdHMpO1xuICAgICAgdGhpcy5fcmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbiAgICBlbHNlIGlmICh0aGlzLnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWQ7XG4gICAgICB0aGlzLl9yZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIGFueSBleGlzdGluZyBzdWJzY3JpcHRpb24gdG8gY2hhbmdlIGV2ZW50c1xuICAgKi9cbiAgcHJpdmF0ZSBfZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuX29uRm9ybVN0YXR1c0NoYW5nZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuX29uRm9ybVN0YXR1c0NoYW5nZS51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5fb25Gb3JtU3RhdHVzQ2hhbmdlID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0J1xufSlcbmV4cG9ydCBjbGFzcyBGb3JtR2V0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybShmb3JtOiBBYnN0cmFjdENvbnRyb2wsIHBhdGg6IEFycmF5PHN0cmluZyB8IG51bWJlcj4gfCBzdHJpbmcgKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gZm9ybS5nZXQocGF0aCk7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBuYW1lOiAnZm9ybUdldENvbnRyb2wnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1HZXRDb250cm9sUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gIHRyYW5zZm9ybShmb3JtOiBBYnN0cmFjdENvbnRyb2wsIHBhdGg6IEFycmF5PHN0cmluZyB8IG51bWJlcj4gfCBzdHJpbmcgKTogRm9ybUNvbnRyb2wge1xuICAgIHJldHVybiBmb3JtLmdldChwYXRoKSBhcyBGb3JtQ29udHJvbDtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0QXJyYXknXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1HZXRBcnJheVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oZm9ybTogQWJzdHJhY3RDb250cm9sLCBwYXRoOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nICk6IEZvcm1BcnJheSB7XG4gICAgcmV0dXJuIGZvcm0uZ2V0KHBhdGgpIGFzIEZvcm1BcnJheTtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0R3JvdXAnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1HZXRHcm91cFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcblxuICB0cmFuc2Zvcm0oZm9ybTogQWJzdHJhY3RDb250cm9sLCBwYXRoOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nICk6IEZvcm1Hcm91cCB7XG4gICAgcmV0dXJuIGZvcm0uZ2V0KHBhdGgpIGFzIEZvcm1Hcm91cDtcbiAgfVxufVxuXG5AUGlwZSh7XG4gIG5hbWU6ICdmb3JtR2V0VmFsdWUnLFxuICBwdXJlOiBmYWxzZVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtR2V0VmFsdWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgdmFsdWU6IGFueSA9IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIF9sYXN0Q29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2xhc3RQYXRoOiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nO1xuICBwcml2YXRlIF9vbkNvbnRyb2xWYWx1ZUNoYW5nZXM6IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFkYXB0ZXI6IEZvcm1FcnJvclRyYW5zbGF0b3IsXG4gICAgcHJpdmF0ZSBfcmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgfVxuXG4gIHRyYW5zZm9ybShmb3JtOiBBYnN0cmFjdENvbnRyb2wsIHBhdGg/OiBBcnJheTxzdHJpbmcgfCBudW1iZXI+IHwgc3RyaW5nKTogYW55IHtcbiAgICBpZiAoIWZvcm0pIHtcbiAgICAgIHRoaXMuX2Rpc3Bvc2UoKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLy8gaWYgd2UgYXNrIGFub3RoZXIgdGltZSBmb3IgdGhlIHNhbWUgZm9ybSBhbmQgb3B0cywgcmV0dXJuIHRoZSBsYXN0IHZhbHVlXG4gICAgaWYgKGZvcm0gPT09IHRoaXMuX2xhc3RDb250cm9sICYmIGVxdWFscyhwYXRoLCB0aGlzLl9sYXN0UGF0aCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICAgIH1cblxuICAgIC8vIHN0b3JlIHRoZSBxdWVyeSwgaW4gY2FzZSBpdCBjaGFuZ2VzXG4gICAgdGhpcy5fbGFzdENvbnRyb2wgPSBmb3JtO1xuXG4gICAgLy8gc3RvcmUgdGhlIHBhcmFtcywgaW4gY2FzZSB0aGV5IGNoYW5nZVxuICAgIHRoaXMuX2xhc3RQYXRoID0gcGF0aDtcblxuICAgIC8vIHNldCB0aGUgdmFsdWVcbiAgICBjb25zdCBjb250cm9sID0gaXNOb3ROaWxPckJsYW5rKHBhdGgpID8gZm9ybS5nZXQocGF0aCkgOiBmb3JtO1xuICAgIHRoaXMudmFsdWUgPSBjb250cm9sPy52YWx1ZTtcblxuICAgIC8vIGlmIHRoZXJlIGlzIGEgc3Vic2NyaXB0aW9uIHRvIG9uTGFuZ0NoYW5nZSwgY2xlYW4gaXRcbiAgICB0aGlzLl9kaXNwb3NlKCk7XG5cbiAgICAvLyBzdWJzY3JpYmUgdG8gdmFsdWVDaGFuZ2VzIGV2ZW50LCBpbiBjYXNlIGNvbnRyb2wgdmFsdWUgY2hhbmdlXG4gICAgaWYgKCF0aGlzLl9vbkNvbnRyb2xWYWx1ZUNoYW5nZXMgJiYgY29udHJvbCkge1xuICAgICAgdGhpcy5fb25Db250cm9sVmFsdWVDaGFuZ2VzID0gY29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX3JlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnZhbHVlO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGlzcG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIGFueSBleGlzdGluZyBzdWJzY3JpcHRpb24gdG8gY2hhbmdlIGV2ZW50c1xuICAgKi9cbiAgcHJpdmF0ZSBfZGlzcG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodHlwZW9mIHRoaXMuX29uQ29udHJvbFZhbHVlQ2hhbmdlcyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuX29uQ29udHJvbFZhbHVlQ2hhbmdlcy51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5fb25Db250cm9sVmFsdWVDaGFuZ2VzID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
@@ -17,7 +17,7 @@ import { IsNilOrBlankPipe, IsNotNilOrBlankPipe, StrIncludesPipe, StrLengthPipe,
17
17
  import { TranslatablePipe, TranslateContextPipe } from './translate-context.pipe';
18
18
  import { PropertyGetPipe } from './properties.pipe';
19
19
  import { NgInitDirective } from './ng-init.pipe';
20
- import { FormGetPipe, FormErrorTranslatePipe, FormGetControlPipe, FormGetArrayPipe, FormGetGroupPipe } from './form.pipes';
20
+ import { FormGetPipe, FormErrorTranslatePipe, FormGetControlPipe, FormGetArrayPipe, FormGetGroupPipe, FormGetValuePipe } from './form.pipes';
21
21
  export class SharedPipesModule {
22
22
  }
23
23
  SharedPipesModule.decorators = [
@@ -64,7 +64,8 @@ SharedPipesModule.decorators = [
64
64
  FormGetPipe,
65
65
  FormGetControlPipe,
66
66
  FormGetArrayPipe,
67
- FormGetGroupPipe
67
+ FormGetGroupPipe,
68
+ FormGetValuePipe
68
69
  ],
69
70
  exports: [
70
71
  PropertyGetPipe,
@@ -103,8 +104,9 @@ SharedPipesModule.decorators = [
103
104
  FormGetPipe,
104
105
  FormGetControlPipe,
105
106
  FormGetArrayPipe,
106
- FormGetGroupPipe
107
+ FormGetGroupPipe,
108
+ FormGetValuePipe
107
109
  ]
108
110
  },] }
109
111
  ];
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvcGlwZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDNUQsT0FBTyxFQUFDLGVBQWUsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckosT0FBTyxFQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ25FLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25ILE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2hGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFDLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQXdGekgsTUFBTSxPQUFPLGlCQUFpQjs7O1lBckY3QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxlQUFlO2lCQUNoQjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osZUFBZTtvQkFDZixjQUFjO29CQUNkLG9CQUFvQjtvQkFDcEIsWUFBWTtvQkFDWixlQUFlO29CQUNmLGlCQUFpQjtvQkFDakIsa0JBQWtCO29CQUNsQixtQkFBbUI7b0JBQ25CLGFBQWE7b0JBQ2IsZ0JBQWdCO29CQUNoQixZQUFZO29CQUNaLFdBQVc7b0JBQ1gsT0FBTztvQkFDUCxRQUFRO29CQUNSLGlCQUFpQjtvQkFDakIsY0FBYztvQkFDZCxlQUFlO29CQUNmLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCxpQkFBaUI7b0JBQ2pCLGVBQWU7b0JBQ2YsVUFBVTtvQkFDVixXQUFXO29CQUNYLGFBQWE7b0JBQ2IsZ0JBQWdCO29CQUNoQixtQkFBbUI7b0JBQ25CLFlBQVk7b0JBQ1osYUFBYTtvQkFDYixlQUFlO29CQUNmLG9CQUFvQjtvQkFDcEIsZ0JBQWdCO29CQUNoQixlQUFlO29CQUNmLHNCQUFzQjtvQkFDdEIsV0FBVztvQkFDWCxrQkFBa0I7b0JBQ2xCLGdCQUFnQjtvQkFDaEIsZ0JBQWdCO2lCQUNqQjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsZUFBZTtvQkFDZixjQUFjO29CQUNkLGVBQWU7b0JBQ2Ysb0JBQW9CO29CQUNwQixZQUFZO29CQUNaLGlCQUFpQjtvQkFDakIsa0JBQWtCO29CQUNsQixtQkFBbUI7b0JBQ25CLGFBQWE7b0JBQ2IsZ0JBQWdCO29CQUNoQixZQUFZO29CQUNaLFdBQVc7b0JBQ1gsT0FBTztvQkFDUCxRQUFRO29CQUNSLGlCQUFpQjtvQkFDakIsY0FBYztvQkFDZCxlQUFlO29CQUNmLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCxVQUFVO29CQUNWLFdBQVc7b0JBQ1gsYUFBYTtvQkFDYixnQkFBZ0I7b0JBQ2hCLG1CQUFtQjtvQkFDbkIsWUFBWTtvQkFDWixhQUFhO29CQUNiLGVBQWU7b0JBQ2YsaUJBQWlCO29CQUNqQixlQUFlO29CQUNmLG9CQUFvQjtvQkFDcEIsZ0JBQWdCO29CQUNoQixlQUFlO29CQUNmLHNCQUFzQjtvQkFDdEIsV0FBVztvQkFDWCxrQkFBa0I7b0JBQ2xCLGdCQUFnQjtvQkFDaEIsZ0JBQWdCO2lCQUNqQjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7VHJhbnNsYXRlTW9kdWxlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7SW9uaWNNb2R1bGV9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7RGF0ZUZvcm1hdFBpcGV9IGZyb20gJy4vZGF0ZS1mb3JtYXQucGlwZSc7XG5pbXBvcnQge0RhdGVEaWZmRHVyYXRpb25QaXBlfSBmcm9tICcuL2RhdGUtZGlmZi1kdXJhdGlvbi5waXBlJztcbmltcG9ydCB7RGF0ZUZyb21Ob3dQaXBlfSBmcm9tICcuL2RhdGUtZnJvbS1ub3cucGlwZSc7XG5pbXBvcnQge0xhdGl0dWRlRm9ybWF0UGlwZSwgTGF0TG9uZ0Zvcm1hdFBpcGUsIExvbmdpdHVkZUZvcm1hdFBpcGV9IGZyb20gJy4vbGF0bG9uZy1mb3JtYXQucGlwZSc7XG5pbXBvcnQge051bWJlckZvcm1hdFBpcGV9IGZyb20gJy4vbnVtYmVyLWZvcm1hdC5waXBlJztcbmltcG9ydCB7SGlnaGxpZ2h0UGlwZX0gZnJvbSAnLi9oaWdobGlnaHQucGlwZSc7XG5pbXBvcnQge0ZpbGVTaXplUGlwZX0gZnJvbSAnLi9maWxlLXNpemUucGlwZSc7XG5pbXBvcnQge0R1cmF0aW9uUGlwZX0gZnJvbSAnLi9kdXJhdGlvbi5waXBlJztcbmltcG9ydCB7RXZlblBpcGUsIE1hdGhBYnNQaXBlLCBPZGRQaXBlfSBmcm9tICcuL21hdGgucGlwZXMnO1xuaW1wb3J0IHtBcnJheUZpbHRlclBpcGUsIEFycmF5Rmlyc3RQaXBlLCBBcnJheUluY2x1ZGVzUGlwZSwgQXJyYXlMZW5ndGhQaXBlLCBBcnJheVBsdWNrUGlwZSwgRW1wdHlBcnJheVBpcGUsIE5vdEVtcHR5QXJyYXlQaXBlfSBmcm9tICcuL2FycmF5cy5waXBlJztcbmltcG9ydCB7TWFwR2V0UGlwZSwgTWFwS2V5c1BpcGUsIE1hcFZhbHVlc1BpcGV9IGZyb20gJy4vbWFwcy5waXBlJztcbmltcG9ydCB7SXNOaWxPckJsYW5rUGlwZSwgSXNOb3ROaWxPckJsYW5rUGlwZSwgU3RySW5jbHVkZXNQaXBlLCBTdHJMZW5ndGhQaXBlLCBUb1N0cmluZ1BpcGV9IGZyb20gJy4vc3RyaW5nLnBpcGVzJztcbmltcG9ydCB7VHJhbnNsYXRhYmxlUGlwZSwgVHJhbnNsYXRlQ29udGV4dFBpcGV9IGZyb20gJy4vdHJhbnNsYXRlLWNvbnRleHQucGlwZSc7XG5pbXBvcnQge1Byb3BlcnR5R2V0UGlwZX0gZnJvbSAnLi9wcm9wZXJ0aWVzLnBpcGUnO1xuaW1wb3J0IHtOZ0luaXREaXJlY3RpdmV9IGZyb20gJy4vbmctaW5pdC5waXBlJztcbmltcG9ydCB7Rm9ybUdldFBpcGUsIEZvcm1FcnJvclRyYW5zbGF0ZVBpcGUsIEZvcm1HZXRDb250cm9sUGlwZSwgRm9ybUdldEFycmF5UGlwZSwgRm9ybUdldEdyb3VwUGlwZX0gZnJvbSAnLi9mb3JtLnBpcGVzJztcbmltcG9ydCB7Rm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSW9uaWNNb2R1bGUsXG4gICAgVHJhbnNsYXRlTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFByb3BlcnR5R2V0UGlwZSxcbiAgICBEYXRlRm9ybWF0UGlwZSxcbiAgICBEYXRlRGlmZkR1cmF0aW9uUGlwZSxcbiAgICBEdXJhdGlvblBpcGUsXG4gICAgRGF0ZUZyb21Ob3dQaXBlLFxuICAgIExhdExvbmdGb3JtYXRQaXBlLFxuICAgIExhdGl0dWRlRm9ybWF0UGlwZSxcbiAgICBMb25naXR1ZGVGb3JtYXRQaXBlLFxuICAgIEhpZ2hsaWdodFBpcGUsXG4gICAgTnVtYmVyRm9ybWF0UGlwZSxcbiAgICBGaWxlU2l6ZVBpcGUsXG4gICAgTWF0aEFic1BpcGUsXG4gICAgT2RkUGlwZSxcbiAgICBFdmVuUGlwZSxcbiAgICBOb3RFbXB0eUFycmF5UGlwZSxcbiAgICBFbXB0eUFycmF5UGlwZSxcbiAgICBBcnJheUxlbmd0aFBpcGUsXG4gICAgQXJyYXlGaXJzdFBpcGUsXG4gICAgQXJyYXlQbHVja1BpcGUsXG4gICAgQXJyYXlJbmNsdWRlc1BpcGUsXG4gICAgQXJyYXlGaWx0ZXJQaXBlLFxuICAgIE1hcEdldFBpcGUsXG4gICAgTWFwS2V5c1BpcGUsXG4gICAgTWFwVmFsdWVzUGlwZSxcbiAgICBJc05pbE9yQmxhbmtQaXBlLFxuICAgIElzTm90TmlsT3JCbGFua1BpcGUsXG4gICAgVG9TdHJpbmdQaXBlLFxuICAgIFN0ckxlbmd0aFBpcGUsXG4gICAgU3RySW5jbHVkZXNQaXBlLFxuICAgIFRyYW5zbGF0ZUNvbnRleHRQaXBlLFxuICAgIFRyYW5zbGF0YWJsZVBpcGUsXG4gICAgTmdJbml0RGlyZWN0aXZlLFxuICAgIEZvcm1FcnJvclRyYW5zbGF0ZVBpcGUsXG4gICAgRm9ybUdldFBpcGUsXG4gICAgRm9ybUdldENvbnRyb2xQaXBlLFxuICAgIEZvcm1HZXRBcnJheVBpcGUsXG4gICAgRm9ybUdldEdyb3VwUGlwZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgUHJvcGVydHlHZXRQaXBlLFxuICAgIERhdGVGb3JtYXRQaXBlLFxuICAgIERhdGVGcm9tTm93UGlwZSxcbiAgICBEYXRlRGlmZkR1cmF0aW9uUGlwZSxcbiAgICBEdXJhdGlvblBpcGUsXG4gICAgTGF0TG9uZ0Zvcm1hdFBpcGUsXG4gICAgTGF0aXR1ZGVGb3JtYXRQaXBlLFxuICAgIExvbmdpdHVkZUZvcm1hdFBpcGUsXG4gICAgSGlnaGxpZ2h0UGlwZSxcbiAgICBOdW1iZXJGb3JtYXRQaXBlLFxuICAgIEZpbGVTaXplUGlwZSxcbiAgICBNYXRoQWJzUGlwZSxcbiAgICBPZGRQaXBlLFxuICAgIEV2ZW5QaXBlLFxuICAgIE5vdEVtcHR5QXJyYXlQaXBlLFxuICAgIEVtcHR5QXJyYXlQaXBlLFxuICAgIEFycmF5TGVuZ3RoUGlwZSxcbiAgICBBcnJheUZpcnN0UGlwZSxcbiAgICBBcnJheVBsdWNrUGlwZSxcbiAgICBNYXBHZXRQaXBlLFxuICAgIE1hcEtleXNQaXBlLFxuICAgIE1hcFZhbHVlc1BpcGUsXG4gICAgSXNOaWxPckJsYW5rUGlwZSxcbiAgICBJc05vdE5pbE9yQmxhbmtQaXBlLFxuICAgIFRvU3RyaW5nUGlwZSxcbiAgICBTdHJMZW5ndGhQaXBlLFxuICAgIFN0ckluY2x1ZGVzUGlwZSxcbiAgICBBcnJheUluY2x1ZGVzUGlwZSxcbiAgICBBcnJheUZpbHRlclBpcGUsXG4gICAgVHJhbnNsYXRlQ29udGV4dFBpcGUsXG4gICAgVHJhbnNsYXRhYmxlUGlwZSxcbiAgICBOZ0luaXREaXJlY3RpdmUsXG4gICAgRm9ybUVycm9yVHJhbnNsYXRlUGlwZSxcbiAgICBGb3JtR2V0UGlwZSxcbiAgICBGb3JtR2V0Q29udHJvbFBpcGUsXG4gICAgRm9ybUdldEFycmF5UGlwZSxcbiAgICBGb3JtR2V0R3JvdXBQaXBlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2hhcmVkUGlwZXNNb2R1bGUge1xuXG59XG4iXX0=
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlwZXMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9zaGFyZWQvcGlwZXMvcGlwZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDNUQsT0FBTyxFQUFDLGVBQWUsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckosT0FBTyxFQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBQ25FLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25ILE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2hGLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFDLFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQTBGM0ksTUFBTSxPQUFPLGlCQUFpQjs7O1lBdkY3QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxlQUFlO2lCQUNoQjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osZUFBZTtvQkFDZixjQUFjO29CQUNkLG9CQUFvQjtvQkFDcEIsWUFBWTtvQkFDWixlQUFlO29CQUNmLGlCQUFpQjtvQkFDakIsa0JBQWtCO29CQUNsQixtQkFBbUI7b0JBQ25CLGFBQWE7b0JBQ2IsZ0JBQWdCO29CQUNoQixZQUFZO29CQUNaLFdBQVc7b0JBQ1gsT0FBTztvQkFDUCxRQUFRO29CQUNSLGlCQUFpQjtvQkFDakIsY0FBYztvQkFDZCxlQUFlO29CQUNmLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCxpQkFBaUI7b0JBQ2pCLGVBQWU7b0JBQ2YsVUFBVTtvQkFDVixXQUFXO29CQUNYLGFBQWE7b0JBQ2IsZ0JBQWdCO29CQUNoQixtQkFBbUI7b0JBQ25CLFlBQVk7b0JBQ1osYUFBYTtvQkFDYixlQUFlO29CQUNmLG9CQUFvQjtvQkFDcEIsZ0JBQWdCO29CQUNoQixlQUFlO29CQUNmLHNCQUFzQjtvQkFDdEIsV0FBVztvQkFDWCxrQkFBa0I7b0JBQ2xCLGdCQUFnQjtvQkFDaEIsZ0JBQWdCO29CQUNoQixnQkFBZ0I7aUJBQ2pCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxlQUFlO29CQUNmLGNBQWM7b0JBQ2QsZUFBZTtvQkFDZixvQkFBb0I7b0JBQ3BCLFlBQVk7b0JBQ1osaUJBQWlCO29CQUNqQixrQkFBa0I7b0JBQ2xCLG1CQUFtQjtvQkFDbkIsYUFBYTtvQkFDYixnQkFBZ0I7b0JBQ2hCLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxPQUFPO29CQUNQLFFBQVE7b0JBQ1IsaUJBQWlCO29CQUNqQixjQUFjO29CQUNkLGVBQWU7b0JBQ2YsY0FBYztvQkFDZCxjQUFjO29CQUNkLFVBQVU7b0JBQ1YsV0FBVztvQkFDWCxhQUFhO29CQUNiLGdCQUFnQjtvQkFDaEIsbUJBQW1CO29CQUNuQixZQUFZO29CQUNaLGFBQWE7b0JBQ2IsZUFBZTtvQkFDZixpQkFBaUI7b0JBQ2pCLGVBQWU7b0JBQ2Ysb0JBQW9CO29CQUNwQixnQkFBZ0I7b0JBQ2hCLGVBQWU7b0JBQ2Ysc0JBQXNCO29CQUN0QixXQUFXO29CQUNYLGtCQUFrQjtvQkFDbEIsZ0JBQWdCO29CQUNoQixnQkFBZ0I7b0JBQ2hCLGdCQUFnQjtpQkFDakI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1RyYW5zbGF0ZU1vZHVsZX0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQge0lvbmljTW9kdWxlfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQge0RhdGVGb3JtYXRQaXBlfSBmcm9tICcuL2RhdGUtZm9ybWF0LnBpcGUnO1xuaW1wb3J0IHtEYXRlRGlmZkR1cmF0aW9uUGlwZX0gZnJvbSAnLi9kYXRlLWRpZmYtZHVyYXRpb24ucGlwZSc7XG5pbXBvcnQge0RhdGVGcm9tTm93UGlwZX0gZnJvbSAnLi9kYXRlLWZyb20tbm93LnBpcGUnO1xuaW1wb3J0IHtMYXRpdHVkZUZvcm1hdFBpcGUsIExhdExvbmdGb3JtYXRQaXBlLCBMb25naXR1ZGVGb3JtYXRQaXBlfSBmcm9tICcuL2xhdGxvbmctZm9ybWF0LnBpcGUnO1xuaW1wb3J0IHtOdW1iZXJGb3JtYXRQaXBlfSBmcm9tICcuL251bWJlci1mb3JtYXQucGlwZSc7XG5pbXBvcnQge0hpZ2hsaWdodFBpcGV9IGZyb20gJy4vaGlnaGxpZ2h0LnBpcGUnO1xuaW1wb3J0IHtGaWxlU2l6ZVBpcGV9IGZyb20gJy4vZmlsZS1zaXplLnBpcGUnO1xuaW1wb3J0IHtEdXJhdGlvblBpcGV9IGZyb20gJy4vZHVyYXRpb24ucGlwZSc7XG5pbXBvcnQge0V2ZW5QaXBlLCBNYXRoQWJzUGlwZSwgT2RkUGlwZX0gZnJvbSAnLi9tYXRoLnBpcGVzJztcbmltcG9ydCB7QXJyYXlGaWx0ZXJQaXBlLCBBcnJheUZpcnN0UGlwZSwgQXJyYXlJbmNsdWRlc1BpcGUsIEFycmF5TGVuZ3RoUGlwZSwgQXJyYXlQbHVja1BpcGUsIEVtcHR5QXJyYXlQaXBlLCBOb3RFbXB0eUFycmF5UGlwZX0gZnJvbSAnLi9hcnJheXMucGlwZSc7XG5pbXBvcnQge01hcEdldFBpcGUsIE1hcEtleXNQaXBlLCBNYXBWYWx1ZXNQaXBlfSBmcm9tICcuL21hcHMucGlwZSc7XG5pbXBvcnQge0lzTmlsT3JCbGFua1BpcGUsIElzTm90TmlsT3JCbGFua1BpcGUsIFN0ckluY2x1ZGVzUGlwZSwgU3RyTGVuZ3RoUGlwZSwgVG9TdHJpbmdQaXBlfSBmcm9tICcuL3N0cmluZy5waXBlcyc7XG5pbXBvcnQge1RyYW5zbGF0YWJsZVBpcGUsIFRyYW5zbGF0ZUNvbnRleHRQaXBlfSBmcm9tICcuL3RyYW5zbGF0ZS1jb250ZXh0LnBpcGUnO1xuaW1wb3J0IHtQcm9wZXJ0eUdldFBpcGV9IGZyb20gJy4vcHJvcGVydGllcy5waXBlJztcbmltcG9ydCB7TmdJbml0RGlyZWN0aXZlfSBmcm9tICcuL25nLWluaXQucGlwZSc7XG5pbXBvcnQge0Zvcm1HZXRQaXBlLCBGb3JtRXJyb3JUcmFuc2xhdGVQaXBlLCBGb3JtR2V0Q29udHJvbFBpcGUsIEZvcm1HZXRBcnJheVBpcGUsIEZvcm1HZXRHcm91cFBpcGUsIEZvcm1HZXRWYWx1ZVBpcGV9IGZyb20gJy4vZm9ybS5waXBlcyc7XG5pbXBvcnQge0Zvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIElvbmljTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBQcm9wZXJ0eUdldFBpcGUsXG4gICAgRGF0ZUZvcm1hdFBpcGUsXG4gICAgRGF0ZURpZmZEdXJhdGlvblBpcGUsXG4gICAgRHVyYXRpb25QaXBlLFxuICAgIERhdGVGcm9tTm93UGlwZSxcbiAgICBMYXRMb25nRm9ybWF0UGlwZSxcbiAgICBMYXRpdHVkZUZvcm1hdFBpcGUsXG4gICAgTG9uZ2l0dWRlRm9ybWF0UGlwZSxcbiAgICBIaWdobGlnaHRQaXBlLFxuICAgIE51bWJlckZvcm1hdFBpcGUsXG4gICAgRmlsZVNpemVQaXBlLFxuICAgIE1hdGhBYnNQaXBlLFxuICAgIE9kZFBpcGUsXG4gICAgRXZlblBpcGUsXG4gICAgTm90RW1wdHlBcnJheVBpcGUsXG4gICAgRW1wdHlBcnJheVBpcGUsXG4gICAgQXJyYXlMZW5ndGhQaXBlLFxuICAgIEFycmF5Rmlyc3RQaXBlLFxuICAgIEFycmF5UGx1Y2tQaXBlLFxuICAgIEFycmF5SW5jbHVkZXNQaXBlLFxuICAgIEFycmF5RmlsdGVyUGlwZSxcbiAgICBNYXBHZXRQaXBlLFxuICAgIE1hcEtleXNQaXBlLFxuICAgIE1hcFZhbHVlc1BpcGUsXG4gICAgSXNOaWxPckJsYW5rUGlwZSxcbiAgICBJc05vdE5pbE9yQmxhbmtQaXBlLFxuICAgIFRvU3RyaW5nUGlwZSxcbiAgICBTdHJMZW5ndGhQaXBlLFxuICAgIFN0ckluY2x1ZGVzUGlwZSxcbiAgICBUcmFuc2xhdGVDb250ZXh0UGlwZSxcbiAgICBUcmFuc2xhdGFibGVQaXBlLFxuICAgIE5nSW5pdERpcmVjdGl2ZSxcbiAgICBGb3JtRXJyb3JUcmFuc2xhdGVQaXBlLFxuICAgIEZvcm1HZXRQaXBlLFxuICAgIEZvcm1HZXRDb250cm9sUGlwZSxcbiAgICBGb3JtR2V0QXJyYXlQaXBlLFxuICAgIEZvcm1HZXRHcm91cFBpcGUsXG4gICAgRm9ybUdldFZhbHVlUGlwZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgUHJvcGVydHlHZXRQaXBlLFxuICAgIERhdGVGb3JtYXRQaXBlLFxuICAgIERhdGVGcm9tTm93UGlwZSxcbiAgICBEYXRlRGlmZkR1cmF0aW9uUGlwZSxcbiAgICBEdXJhdGlvblBpcGUsXG4gICAgTGF0TG9uZ0Zvcm1hdFBpcGUsXG4gICAgTGF0aXR1ZGVGb3JtYXRQaXBlLFxuICAgIExvbmdpdHVkZUZvcm1hdFBpcGUsXG4gICAgSGlnaGxpZ2h0UGlwZSxcbiAgICBOdW1iZXJGb3JtYXRQaXBlLFxuICAgIEZpbGVTaXplUGlwZSxcbiAgICBNYXRoQWJzUGlwZSxcbiAgICBPZGRQaXBlLFxuICAgIEV2ZW5QaXBlLFxuICAgIE5vdEVtcHR5QXJyYXlQaXBlLFxuICAgIEVtcHR5QXJyYXlQaXBlLFxuICAgIEFycmF5TGVuZ3RoUGlwZSxcbiAgICBBcnJheUZpcnN0UGlwZSxcbiAgICBBcnJheVBsdWNrUGlwZSxcbiAgICBNYXBHZXRQaXBlLFxuICAgIE1hcEtleXNQaXBlLFxuICAgIE1hcFZhbHVlc1BpcGUsXG4gICAgSXNOaWxPckJsYW5rUGlwZSxcbiAgICBJc05vdE5pbE9yQmxhbmtQaXBlLFxuICAgIFRvU3RyaW5nUGlwZSxcbiAgICBTdHJMZW5ndGhQaXBlLFxuICAgIFN0ckluY2x1ZGVzUGlwZSxcbiAgICBBcnJheUluY2x1ZGVzUGlwZSxcbiAgICBBcnJheUZpbHRlclBpcGUsXG4gICAgVHJhbnNsYXRlQ29udGV4dFBpcGUsXG4gICAgVHJhbnNsYXRhYmxlUGlwZSxcbiAgICBOZ0luaXREaXJlY3RpdmUsXG4gICAgRm9ybUVycm9yVHJhbnNsYXRlUGlwZSxcbiAgICBGb3JtR2V0UGlwZSxcbiAgICBGb3JtR2V0Q29udHJvbFBpcGUsXG4gICAgRm9ybUdldEFycmF5UGlwZSxcbiAgICBGb3JtR2V0R3JvdXBQaXBlLFxuICAgIEZvcm1HZXRWYWx1ZVBpcGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTaGFyZWRQaXBlc01vZHVsZSB7XG5cbn1cbiJdfQ==
@@ -4200,48 +4200,97 @@ class FormGetPipe {
4200
4200
  return form.get(path);
4201
4201
  }
4202
4202
  }
4203
- FormGetPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetPipe_Factory() { return new FormGetPipe(); }, token: FormGetPipe, providedIn: "root" });
4204
4203
  FormGetPipe.decorators = [
4205
4204
  { type: Pipe, args: [{
4206
4205
  name: 'formGet'
4207
- },] },
4208
- { type: Injectable, args: [{ providedIn: 'root' },] }
4206
+ },] }
4209
4207
  ];
4210
4208
  class FormGetControlPipe {
4211
4209
  transform(form, path) {
4212
4210
  return form.get(path);
4213
4211
  }
4214
4212
  }
4215
- FormGetControlPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetControlPipe_Factory() { return new FormGetControlPipe(); }, token: FormGetControlPipe, providedIn: "root" });
4216
4213
  FormGetControlPipe.decorators = [
4217
4214
  { type: Pipe, args: [{
4218
4215
  name: 'formGetControl'
4219
- },] },
4220
- { type: Injectable, args: [{ providedIn: 'root' },] }
4216
+ },] }
4221
4217
  ];
4222
4218
  class FormGetArrayPipe {
4223
4219
  transform(form, path) {
4224
4220
  return form.get(path);
4225
4221
  }
4226
4222
  }
4227
- FormGetArrayPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetArrayPipe_Factory() { return new FormGetArrayPipe(); }, token: FormGetArrayPipe, providedIn: "root" });
4228
4223
  FormGetArrayPipe.decorators = [
4229
4224
  { type: Pipe, args: [{
4230
4225
  name: 'formGetArray'
4231
- },] },
4232
- { type: Injectable, args: [{ providedIn: 'root' },] }
4226
+ },] }
4233
4227
  ];
4234
4228
  class FormGetGroupPipe {
4235
4229
  transform(form, path) {
4236
4230
  return form.get(path);
4237
4231
  }
4238
4232
  }
4239
- FormGetGroupPipe.ɵprov = ɵɵdefineInjectable({ factory: function FormGetGroupPipe_Factory() { return new FormGetGroupPipe(); }, token: FormGetGroupPipe, providedIn: "root" });
4240
4233
  FormGetGroupPipe.decorators = [
4241
4234
  { type: Pipe, args: [{
4242
4235
  name: 'formGetGroup'
4243
- },] },
4244
- { type: Injectable, args: [{ providedIn: 'root' },] }
4236
+ },] }
4237
+ ];
4238
+ class FormGetValuePipe {
4239
+ constructor(adapter, _ref) {
4240
+ this.adapter = adapter;
4241
+ this._ref = _ref;
4242
+ this.value = undefined;
4243
+ this._lastControl = null;
4244
+ }
4245
+ transform(form, path) {
4246
+ if (!form) {
4247
+ this._dispose();
4248
+ return undefined;
4249
+ }
4250
+ // if we ask another time for the same form and opts, return the last value
4251
+ if (form === this._lastControl && equals(path, this._lastPath)) {
4252
+ return this.value;
4253
+ }
4254
+ // store the query, in case it changes
4255
+ this._lastControl = form;
4256
+ // store the params, in case they change
4257
+ this._lastPath = path;
4258
+ // set the value
4259
+ const control = isNotNilOrBlank(path) ? form.get(path) : form;
4260
+ this.value = control === null || control === void 0 ? void 0 : control.value;
4261
+ // if there is a subscription to onLangChange, clean it
4262
+ this._dispose();
4263
+ // subscribe to valueChanges event, in case control value change
4264
+ if (!this._onControlValueChanges && control) {
4265
+ this._onControlValueChanges = control.valueChanges.subscribe((value) => {
4266
+ this.value = value;
4267
+ this._ref.markForCheck();
4268
+ });
4269
+ }
4270
+ return this.value;
4271
+ }
4272
+ ngOnDestroy() {
4273
+ this._dispose();
4274
+ }
4275
+ /**
4276
+ * Clean any existing subscription to change events
4277
+ */
4278
+ _dispose() {
4279
+ if (typeof this._onControlValueChanges !== 'undefined') {
4280
+ this._onControlValueChanges.unsubscribe();
4281
+ this._onControlValueChanges = undefined;
4282
+ }
4283
+ }
4284
+ }
4285
+ FormGetValuePipe.decorators = [
4286
+ { type: Pipe, args: [{
4287
+ name: 'formGetValue',
4288
+ pure: false
4289
+ },] }
4290
+ ];
4291
+ FormGetValuePipe.ctorParameters = () => [
4292
+ { type: FormErrorTranslator },
4293
+ { type: ChangeDetectorRef }
4245
4294
  ];
4246
4295
 
4247
4296
  class SharedPipesModule {
@@ -4290,7 +4339,8 @@ SharedPipesModule.decorators = [
4290
4339
  FormGetPipe,
4291
4340
  FormGetControlPipe,
4292
4341
  FormGetArrayPipe,
4293
- FormGetGroupPipe
4342
+ FormGetGroupPipe,
4343
+ FormGetValuePipe
4294
4344
  ],
4295
4345
  exports: [
4296
4346
  PropertyGetPipe,
@@ -4329,7 +4379,8 @@ SharedPipesModule.decorators = [
4329
4379
  FormGetPipe,
4330
4380
  FormGetControlPipe,
4331
4381
  FormGetArrayPipe,
4332
- FormGetGroupPipe
4382
+ FormGetGroupPipe,
4383
+ FormGetValuePipe
4333
4384
  ]
4334
4385
  },] }
4335
4386
  ];
@@ -9848,7 +9899,7 @@ class EntityUtils {
9848
9899
  (items || []).forEach(EntityUtils.cleanIdAndUpdateDate);
9849
9900
  }
9850
9901
  static sort(data, sortBy, sortDirection) {
9851
- if (!data || data.length <= 1)
9902
+ if (!data || data.length <= 1 || !sortBy)
9852
9903
  return data;
9853
9904
  return data.sort(this.sortComparator(sortBy, sortDirection));
9854
9905
  }
@@ -17039,8 +17090,8 @@ class ComponentDirtyGuard {
17039
17090
  }
17040
17091
  canDeactivate(component, currentRoute, currentState, nextState) {
17041
17092
  return __awaiter(this, void 0, void 0, function* () {
17042
- const dirty = component.dirty;
17043
- const valid = component.valid;
17093
+ const dirty = component === null || component === void 0 ? void 0 : component.dirty;
17094
+ const valid = component === null || component === void 0 ? void 0 : component.valid;
17044
17095
  let can = {
17045
17096
  confirmed: !dirty,
17046
17097
  save: false,
@@ -24778,7 +24829,8 @@ class AppEntityEditor extends AppTabEditor {
24778
24829
  fetchPolicy: 'no-cache' }, opts));
24779
24830
  }
24780
24831
  markForCheck() {
24781
- this.cd.markForCheck();
24832
+ var _a;
24833
+ (_a = this.cd) === null || _a === void 0 ? void 0 : _a.markForCheck();
24782
24834
  }
24783
24835
  /* -- private functions -- */
24784
24836
  /**
@@ -27585,5 +27637,5 @@ CoreTestingModule.decorators = [
27585
27637
  * Generated bundle index. Do not edit.
27586
27638
  */
27587
27639
 
27588
- export { APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_CONFIG_OPTIONS, APP_FORM_ERROR_I18N_KEYS, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_MENU_ITEMS, APP_TESTING_PAGES, AboutModal, Account, AccountPage, AccountService, AccountToStringPipe, ActionsColumnComponent, AdminModule, AdminRoutingModule, Alerts, AndroidOsEnvironment, AnimationState, AppEditor, AppEditorOptions, AppEntityEditor, AppForm, AppFormField, AppFormProvider, AppFormUtils, AppGestureConfig, AppGraphQLModule, AppHelpModal, AppInMemoryTable, AppInstallUpgradeCard, AppListForm, AppLoadingSpinner, AppMenuModule, AppNullForm, AppPropertiesForm, AppTabEditor, AppTabEditorOptions, AppTable, AppTableDataSourceOptions, AppTableUtils, AppValidatorService, AppendToInputDirective, ArrayFilterPipe, ArrayFirstPipe, ArrayIncludesPipe, ArrayLengthPipe, ArrayPluckPipe, AudioProvider, AuthForm, AuthGuardService, AuthModal, AutocompleteTestPage, AutofocusDirective, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, CORE_CONFIG_OPTIONS, CORE_TESTING_PAGES, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigService, Configuration, CoreModule, CoreTestingModule, CryptoService, DATE_ISO_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFromNowPipe, DateTimeTestPage, DateUtils, Department, DepartmentToStringPipe, DragAndDropDirective, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, EvenPipe, FileResponse, FileService, FileSizePipe, FilesUtils, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormErrorTranslatePipe, FormErrorTranslator, FormFieldValuesHolder, FormGetArrayPipe, FormGetControlPipe, FormGetGroupPipe, FormGetPipe, Fragments$1 as Fragments, GraphqlService, HAMMER_PRESS_TIME, HAMMER_TAP_TIME, HighlightPipe, HomePage, Hotkeys, HotkeysDialogComponent, InMemoryEntitiesService, IsLoginAccountPipe, IsNilOrBlankPipe, IsNotNilOrBlankPipe, IsNotOnFieldModePipe, IsOnFieldModePipe, JobUtils, KEYBOARD_HIDE_DELAY_MS, LAT_LONG_DEFAULT_MAX_DECIMALS, LAT_LONG_PATTERNS, LatLongFormatPipe, LatLongTestPage, LatitudeFormatPipe, LocalSettingsService, LongitudeFormatPipe, MINIFY_ENTITY_FOR_LOCAL_STORAGE, MINIFY_ENTITY_FOR_POD, MapGetPipe, MapKeysPipe, MapValuesPipe, MatAutocompleteConfigHolder, MatAutocompleteField, MatBadgeIconDirective, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialTestingModule, MathAbsPipe, MenuComponent, MenuItems, MenuService, Message, MessageFilter, MessageForm, MessageModal, MessageService, MessageTypeList, MessageTypes, MimeTypes, ModalToolbarComponent, NetworkService, NgInitDirective, NgVarDirective, NotEmptyArrayPipe, NumberFormatPipe, NumpadDirective, OddPipe, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, ProgressBarService, ProgressInterceptor, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialFilter, ReferentialRef, ReferentialUtils, ReferentialValidatorService, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SHARED_MATERIAL_TESTING_PAGES, SHARED_TESTING_PAGES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedAsyncValidators, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBadgeIconModule, SharedMatBooleanModule, SharedMatChipsModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedTestsPage, SharedValidators, SocialErrorCodes, SocialModule, Software, StartableService, StatusById, StatusIds, StatusList, StrIncludesPipe, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, TableTestPage, TableTestingModule, TextForm, TextPopover, TextPopoverTestingModule, TextPopoverTestingPage, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UploadFile, UploadFileComponent, UploadFilePopover, UploadFileTestingModule, UploadFileTestingPage, UriUtils, UserEvent, UserEventFilter, UserEventFragments, UserEventService, UserEventTypes, UserEventsTable, UserSettings, UsersPage, accountToString, adaptValueToControl, addValueInArray, arrayDistinct, arrayGroupBy, arraySize, asInputElement, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, copyEntity2Form, createPromiseEvent, createPromiseEventEmitter, departmentToString, departmentsToString, disableControls, emitPromiseEvent, entityToString, equals, equalsOrNil, fadeInAnimation, fadeInOutAnimation, filterFalse, filterNotNil, filterNumberInput, filterTrue, firstArrayValue, firstFalse, firstFalsePromise, firstNotNil, firstNotNilPromise, firstTrue, firstTruePromise, focusInput, focusNextInput, focusPreviousInput, formatLatitude, formatLongitude, fromDateISOString, fromScrollEndEvent, fromUnixMsTimestamp, fromUnixTimestamp, getCaretPosition, getColorContrast, getColorShade, getColorTint, getConnectionType, getControlFromPath, getFocusableInputElements, getFormErrors, getFormValueFromEntity, getProperty, getPropertyByPath, getPropertyByPathAsString, getRandomImage, hexToRgb, hexToRgbArray, isAndroid, isBlankString, isControlHasInput, isCordova, isEmptyArray, isIOS, isInputElement, isInstanceOf, isInt, isMobile, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilBoolean, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, isProgressEvent, isResponseEvent, isTouchUi, isWindows, joinProperties, joinPropertiesPath, logFormErrors, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchMedia, matchUpperCase, mergeLoadResult, mixHex, moveInputCaretToSeparator, noTrailingSlash, notNilOrDefault, nullIfUndefined, parseLatitudeOrLongitude, propertiesPathComparator, propertyComparator, propertyPathComparator, referentialToString, referentialsToString, remove, removeAll, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputRange, setCalculatedValue, setTabIndex, sleep, slideInOutAnimation, slideUpDownAnimation, sort, splitById, splitByProperty, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, testUserAgent, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitFor, waitForTrue, waitIdle, waitWhilePending, ɵ0, CustomReuseStrategy as ɵa, MatNumpadDomService as ɵb, isFocusableElement as ɵc, RegisterForm as ɵd, AccountValidatorService as ɵe, RegisterModal as ɵf, UserSettingsValidatorService as ɵg, LocalSettingsValidatorService as ɵh, AppUpdateOfflineModeCard as ɵi, AppIconComponent as ɵj, DateTestPage as ɵk, NumpadTestPage as ɵl, MatBadgeIconTestPage as ɵm, ToastTestingModule as ɵn, ToastTestingPage as ɵo };
27640
+ export { APP_ABOUT_DEVELOPERS, APP_ABOUT_PARTNERS, APP_CONFIG_OPTIONS, APP_FORM_ERROR_I18N_KEYS, APP_GRAPHQL_TYPE_POLICIES, APP_HOME_BUTTONS, APP_LOCALES, APP_LOCAL_SETTINGS, APP_LOCAL_SETTINGS_OPTIONS, APP_LOCAL_STORAGE_TYPE_POLICIES, APP_MENU_ITEMS, APP_TESTING_PAGES, AboutModal, Account, AccountPage, AccountService, AccountToStringPipe, ActionsColumnComponent, AdminModule, AdminRoutingModule, Alerts, AndroidOsEnvironment, AnimationState, AppEditor, AppEditorOptions, AppEntityEditor, AppForm, AppFormField, AppFormProvider, AppFormUtils, AppGestureConfig, AppGraphQLModule, AppHelpModal, AppInMemoryTable, AppInstallUpgradeCard, AppListForm, AppLoadingSpinner, AppMenuModule, AppNullForm, AppPropertiesForm, AppTabEditor, AppTabEditorOptions, AppTable, AppTableDataSourceOptions, AppTableUtils, AppValidatorService, AppendToInputDirective, ArrayFilterPipe, ArrayFirstPipe, ArrayIncludesPipe, ArrayLengthPipe, ArrayPluckPipe, AudioProvider, AuthForm, AuthGuardService, AuthModal, AutocompleteTestPage, AutofocusDirective, Base58, BaseEntityService, BaseGraphqlService, BaseGraphqlServiceOptions, BaseReferential, Beans, CORE_CONFIG_OPTIONS, CORE_TESTING_PAGES, CellValueChangeListener, ChipsTestPage, Color, ColorScale, ComponentDirtyGuard, ConfigService, Configuration, CoreModule, CoreTestingModule, CryptoService, DATE_ISO_PATTERN, DATE_UNIX_MS_TIMESTAMP, DATE_UNIX_TIMESTAMP, DEFAULT_PAGE_SIZE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_PLACEHOLDER_CHAR, DEFAULT_REQUIRED_COLUMNS, DateDiffDurationPipe, DateFormatPipe, DateFromNowPipe, DateTimeTestPage, DateUtils, Department, DepartmentToStringPipe, DragAndDropDirective, DurationPipe, ENTITIES_STORAGE_KEY_PREFIX, ENVIRONMENT, EmptyArrayPipe, EntitiesService, EntitiesStorage, EntitiesTableDataSource, Entity, EntityClass, EntityClasses, EntityFilter, EntityFilterUtils, EntityMetadataComponent, EntityStore, EntityUtils, Environment, EvenPipe, FileResponse, FileService, FileSizePipe, FilesUtils, FormArrayHelper, FormButtonsBarComponent, FormButtonsBarToken, FormErrorTranslatePipe, FormErrorTranslator, FormFieldValuesHolder, FormGetArrayPipe, FormGetControlPipe, FormGetGroupPipe, FormGetPipe, FormGetValuePipe, Fragments$1 as Fragments, GraphqlService, HAMMER_PRESS_TIME, HAMMER_TAP_TIME, HighlightPipe, HomePage, Hotkeys, HotkeysDialogComponent, InMemoryEntitiesService, IsLoginAccountPipe, IsNilOrBlankPipe, IsNotNilOrBlankPipe, IsNotOnFieldModePipe, IsOnFieldModePipe, JobUtils, KEYBOARD_HIDE_DELAY_MS, LAT_LONG_DEFAULT_MAX_DECIMALS, LAT_LONG_PATTERNS, LatLongFormatPipe, LatLongTestPage, LatitudeFormatPipe, LocalSettingsService, LongitudeFormatPipe, MINIFY_ENTITY_FOR_LOCAL_STORAGE, MINIFY_ENTITY_FOR_POD, MapGetPipe, MapKeysPipe, MapValuesPipe, MatAutocompleteConfigHolder, MatAutocompleteField, MatBadgeIconDirective, MatBooleanField, MatChipsField, MatDate, MatDateShort, MatDateTime, MatDuration, MatLatLongField, MatNumpadComponent, MatNumpadContainerComponent, MatNumpadContent, MatPaginatorI18n, MatStepperI18n, MatSwipeField, MaterialTestingModule, MathAbsPipe, MenuComponent, MenuItems, MenuService, Message, MessageFilter, MessageForm, MessageModal, MessageService, MessageTypeList, MessageTypes, MimeTypes, ModalToolbarComponent, NetworkService, NgInitDirective, NgVarDirective, NotEmptyArrayPipe, NumberFormatPipe, NumpadDirective, OddPipe, PRIORITIZED_AUTHORITIES, PUBKEY_REGEXP, Peer, Person, PersonFilter, PersonFragments, PersonService, PersonToStringPipe, PersonUtils, PersonValidatorService, PlatformService, ProgressBarService, ProgressInterceptor, PropertyGetPipe, RESERVED_END_COLUMNS, RESERVED_START_COLUMNS, Referential, ReferentialFilter, ReferentialRef, ReferentialUtils, ReferentialValidatorService, RegisterConfirmPage, SETTINGS_DISPLAY_COLUMNS, SETTINGS_FILTER, SETTINGS_PAGE_SIZE, SETTINGS_SORTED_COLUMN, SETTINGS_STORAGE_KEY, SETTINGS_TRANSIENT_PROPERTIES, SHARED_MATERIAL_TESTING_PAGES, SHARED_TESTING_PAGES, SPACE_PLACEHOLDER_CHAR, SelectPeerModal, SettingsPage, SharedAsyncValidators, SharedDirectivesModule, SharedFormArrayValidators, SharedFormGroupValidators, SharedHotkeysModule, SharedMatAutocompleteModule, SharedMatBadgeIconModule, SharedMatBooleanModule, SharedMatChipsModule, SharedMatDateTimeModule, SharedMatDurationModule, SharedMatLatLongModule, SharedMatNumpadModule, SharedMatSwipeModule, SharedMaterialModule, SharedModule, SharedPipesModule, SharedRoutingModule, SharedTestingModule, SharedTestsPage, SharedValidators, SocialErrorCodes, SocialModule, Software, StartableService, StatusById, StatusIds, StatusList, StrIncludesPipe, StrLengthPipe, SwipeTestPage, TableSelectColumnsComponent, TableTestPage, TableTestingModule, TextForm, TextPopover, TextPopoverTestingModule, TextPopoverTestingPage, ToStringPipe, Toasts, ToolbarComponent, ToolbarToken, TranslatablePipe, TranslateContextPipe, TranslateContextService, UploadFile, UploadFileComponent, UploadFilePopover, UploadFileTestingModule, UploadFileTestingPage, UriUtils, UserEvent, UserEventFilter, UserEventFragments, UserEventService, UserEventTypes, UserEventsTable, UserSettings, UsersPage, accountToString, adaptValueToControl, addValueInArray, arrayDistinct, arrayGroupBy, arraySize, asInputElement, canHaveFocus, capitalizeFirstLetter, chainPromises, changeCaseToUnderscore, clearValueInArray, copyEntity2Form, createPromiseEvent, createPromiseEventEmitter, departmentToString, departmentsToString, disableControls, emitPromiseEvent, entityToString, equals, equalsOrNil, fadeInAnimation, fadeInOutAnimation, filterFalse, filterNotNil, filterNumberInput, filterTrue, firstArrayValue, firstFalse, firstFalsePromise, firstNotNil, firstNotNilPromise, firstTrue, firstTruePromise, focusInput, focusNextInput, focusPreviousInput, formatLatitude, formatLongitude, fromDateISOString, fromScrollEndEvent, fromUnixMsTimestamp, fromUnixTimestamp, getCaretPosition, getColorContrast, getColorShade, getColorTint, getConnectionType, getControlFromPath, getFocusableInputElements, getFormErrors, getFormValueFromEntity, getProperty, getPropertyByPath, getPropertyByPathAsString, getRandomImage, hexToRgb, hexToRgbArray, isAndroid, isBlankString, isControlHasInput, isCordova, isEmptyArray, isIOS, isInputElement, isInstanceOf, isInt, isMobile, isNil, isNilOrBlank, isNilOrNaN, isNotEmptyArray, isNotNil, isNotNilBoolean, isNotNilOrBlank, isNotNilOrNaN, isNotNilString, isNumber, isNumberRange, isProgressEvent, isResponseEvent, isTouchUi, isWindows, joinProperties, joinPropertiesPath, logFormErrors, markAllAsTouched, markAsUntouched, markControlAsTouched, markFormGroupAsTouched, matchMedia, matchUpperCase, mergeLoadResult, mixHex, moveInputCaretToSeparator, noTrailingSlash, notNilOrDefault, nullIfUndefined, parseLatitudeOrLongitude, propertiesPathComparator, propertyComparator, propertyPathComparator, referentialToString, referentialsToString, remove, removeAll, removeDiacritics, removeDuplicatesFromArray, removeEnd, removeValueInArray, replaceAll, resetCalculatedValue, resizeArray, rgbArrayToHex, rgbToHex, round, scrollFactory, selectInputContent, selectInputRange, setCalculatedValue, setTabIndex, sleep, slideInOutAnimation, slideUpDownAnimation, sort, splitById, splitByProperty, startsWithUpperCase, suggestFromArray, suggestFromStringArray, tabindexComparator, testUserAgent, toBoolean, toDateISOString, toDuration, toFloat, toInt, toNotNil, toNumber, trimEmptyToNull, uncapitalizeFirstLetter, updateValueAndValidity, waitFor, waitForTrue, waitIdle, waitWhilePending, ɵ0, CustomReuseStrategy as ɵa, MatNumpadDomService as ɵb, isFocusableElement as ɵc, RegisterForm as ɵd, AccountValidatorService as ɵe, RegisterModal as ɵf, UserSettingsValidatorService as ɵg, LocalSettingsValidatorService as ɵh, AppUpdateOfflineModeCard as ɵi, AppIconComponent as ɵj, DateTestPage as ɵk, NumpadTestPage as ɵl, MatBadgeIconTestPage as ɵm, ToastTestingModule as ɵn, ToastTestingPage as ɵo };
27589
27641
  //# sourceMappingURL=sumaris-net.ngx-components.js.map