@recursyve/nice-ui-kit.v2 16.0.0-beta.141 → 16.0.0-beta.142

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.
@@ -14,6 +14,64 @@ export class NiceControlStatusDirective {
14
14
  this.formField = formField;
15
15
  this.translateService = translateService;
16
16
  this.unsubscribeAll$ = new Subject();
17
+ this.onChange = () => {
18
+ if (this.control.pending) {
19
+ return;
20
+ }
21
+ if (this.control.invalid && this.control.touched) {
22
+ for (const error in this.control.errors) {
23
+ if (this.control.errors.hasOwnProperty(error)) {
24
+ if (this.control.errors[error]) {
25
+ let lastErrorKey = error;
26
+ let param;
27
+ if (error === "pattern") {
28
+ lastErrorKey = this.control.errors[error].requiredPattern;
29
+ }
30
+ if (error === "mask") {
31
+ lastErrorKey = this.control.errors[error].requiredMask;
32
+ }
33
+ if (error === "minlength" || error === "maxlength") {
34
+ param = {
35
+ value: this.control.errors[error].requiredLength
36
+ };
37
+ }
38
+ if (error === "min") {
39
+ param = {
40
+ min: this.control.errors[error].min,
41
+ actual: this.control.errors[error].actual
42
+ };
43
+ }
44
+ if (error === "max") {
45
+ param = {
46
+ max: this.control.errors[error].max,
47
+ actual: this.control.errors[error].actual
48
+ };
49
+ }
50
+ if (error === "arrayMinLength") {
51
+ param = {
52
+ min: this.control.errors[error].min,
53
+ actual: this.control.errors[error].actual
54
+ };
55
+ }
56
+ if (error === "arrayMaxLength") {
57
+ param = {
58
+ max: this.control.errors[error].max,
59
+ actual: this.control.errors[error].actual
60
+ };
61
+ }
62
+ if (typeof this.control.errors[error] === "object" && !param) {
63
+ param = this.control.errors[error];
64
+ }
65
+ this.setError(this.translateService.instant(`errors.${lastErrorKey}`, param));
66
+ break;
67
+ }
68
+ }
69
+ }
70
+ }
71
+ else {
72
+ this.setError("");
73
+ }
74
+ };
17
75
  }
18
76
  ngAfterViewInit() {
19
77
  this.control = this.formField._control.ngControl;
@@ -25,64 +83,6 @@ export class NiceControlStatusDirective {
25
83
  this.unsubscribeAll$.next();
26
84
  this.unsubscribeAll$.complete();
27
85
  }
28
- onChange() {
29
- if (this.control.pending) {
30
- return;
31
- }
32
- if (this.control.invalid && this.control.touched) {
33
- for (const error in this.control.errors) {
34
- if (this.control.errors.hasOwnProperty(error)) {
35
- if (this.control.errors[error]) {
36
- let lastErrorKey = error;
37
- let param;
38
- if (error === "pattern") {
39
- lastErrorKey = this.control.errors[error].requiredPattern;
40
- }
41
- if (error === "mask") {
42
- lastErrorKey = this.control.errors[error].requiredMask;
43
- }
44
- if (error === "minlength" || error === "maxlength") {
45
- param = {
46
- value: this.control.errors[error].requiredLength
47
- };
48
- }
49
- if (error === "min") {
50
- param = {
51
- min: this.control.errors[error].min,
52
- actual: this.control.errors[error].actual
53
- };
54
- }
55
- if (error === "max") {
56
- param = {
57
- max: this.control.errors[error].max,
58
- actual: this.control.errors[error].actual
59
- };
60
- }
61
- if (error === "arrayMinLength") {
62
- param = {
63
- min: this.control.errors[error].min,
64
- actual: this.control.errors[error].actual
65
- };
66
- }
67
- if (error === "arrayMaxLength") {
68
- param = {
69
- max: this.control.errors[error].max,
70
- actual: this.control.errors[error].actual
71
- };
72
- }
73
- if (typeof this.control.errors[error] === "object" && !param) {
74
- param = this.control.errors[error];
75
- }
76
- this.setError(this.translateService.instant(`errors.${lastErrorKey}`, param));
77
- break;
78
- }
79
- }
80
- }
81
- }
82
- else {
83
- this.setError("");
84
- }
85
- }
86
86
  setError(text) {
87
87
  if (!this.ref) {
88
88
  this.ref = this.vcr.createComponent(NiceFormErrorComponent);
@@ -122,4 +122,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.5", ngImpor
122
122
  type: Directive,
123
123
  args: [{ selector: "[niceControlStatus]" }]
124
124
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i1.MatFormField }, { type: i2.TranslateService }]; } });
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1zdGF0dXMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS11aS1raXQtdjIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0tZXJyb3IvY29udHJvbC1zdGF0dXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBK0IsU0FBUyxFQUFFLFVBQVUsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRzNDLE1BQU0sT0FBTywwQkFBMEI7SUFNbkMsWUFDWSxFQUEyQixFQUMzQixHQUFxQixFQUNyQixTQUF1QixFQUN2QixnQkFBa0M7UUFIbEMsT0FBRSxHQUFGLEVBQUUsQ0FBeUI7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBa0I7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUN2QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBTnRDLG9CQUFlLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU8zQyxDQUFDO0lBRUcsZUFBZTtRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFNBQXNCLENBQUM7UUFDOUQsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFD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SW5pdCwgQ29tcG9uZW50UmVmLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IHRoIH0gZnJvbSBcImRhdGUtZm5zL2xvY2FsZVwiO1xuaW1wb3J0IHsgTmljZUZvcm1FcnJvckNvbXBvbmVudCB9IGZyb20gXCIuL2Zvcm0tZXJyb3IuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTdWJqZWN0LCBjb21iaW5lTGF0ZXN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6IFwiW25pY2VDb250cm9sU3RhdHVzXVwiIH0pXG5leHBvcnQgY2xhc3MgTmljZUNvbnRyb2xTdGF0dXNEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcmVmOiBDb21wb25lbnRSZWY8TmljZUZvcm1FcnJvckNvbXBvbmVudD47XG4gICAgcHJpdmF0ZSBjb250cm9sOiBOZ0NvbnRyb2w7XG5cbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlQWxsJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHByaXZhdGUgdmNyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBwcml2YXRlIGZvcm1GaWVsZDogTWF0Rm9ybUZpZWxkLFxuICAgICAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2VcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wgPSB0aGlzLmZvcm1GaWVsZC5fY29udHJvbC5uZ0NvbnRyb2wgYXMgTmdDb250cm9sO1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmZvcm1GaWVsZC5fY29udHJvbC5zdGF0ZUNoYW5nZXMsIHRoaXMuY29udHJvbC5zdGF0dXNDaGFuZ2VzXSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlQWxsJCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMub25DaGFuZ2UoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlQWxsJC5uZXh0KCk7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVBbGwkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ2hhbmdlKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb250cm9sLnBlbmRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wuaW52YWxpZCAmJiB0aGlzLmNvbnRyb2wudG91Y2hlZCkge1xuICAgICAgICAgICAgZm9yIChjb25zdCBlcnJvciBpbiB0aGlzLmNvbnRyb2wuZXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbC5lcnJvcnMuaGFzT3duUHJvcGVydHkoZXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxhc3RFcnJvcktleSA9IGVycm9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHBhcmFtOiBhbnk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwicGF0dGVyblwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdEVycm9yS2V5ID0gdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ucmVxdWlyZWRQYXR0ZXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yID09PSBcIm1hc2tcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3RFcnJvcktleSA9IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLnJlcXVpcmVkTWFzaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciA9PT0gXCJtaW5sZW5ndGhcIiB8fCBlcnJvciA9PT0gXCJtYXhsZW5ndGhcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ucmVxdWlyZWRMZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yID09PSBcIm1pblwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ubWluLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3R1YWw6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLmFjdHVhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwibWF4XCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4OiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5tYXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdHVhbDogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0uYWN0dWFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciA9PT0gXCJhcnJheU1pbkxlbmd0aFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ubWluLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3R1YWw6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLmFjdHVhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwiYXJyYXlNYXhMZW5ndGhcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXg6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLm1heCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0dWFsOiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5hY3R1YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdID09PSBcIm9iamVjdFwiICYmICFwYXJhbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0gdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RXJyb3IodGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYGVycm9ycy4ke2xhc3RFcnJvcktleX1gLCBwYXJhbSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldEVycm9yKFwiXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldEVycm9yKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMucmVmKSB7XG4gICAgICAgICAgICB0aGlzLnJlZiA9IHRoaXMudmNyLmNyZWF0ZUNvbXBvbmVudChOaWNlRm9ybUVycm9yQ29tcG9uZW50KTtcbiAgICAgICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1mb3JtLWZpZWxkLXdyYXBwZXJcIikuaXRlbSgwKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1mb3JtLWZpZWxkLXdyYXBwZXJcIilcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0oMClcbiAgICAgICAgICAgICAgICAgICAgLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJtYXQtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlclwiKVxuICAgICAgICAgICAgICAgICAgICAuaXRlbSgwKVxuICAgICAgICAgICAgICAgICAgICAuYXBwZW5kQ2hpbGQodGhpcy5yZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1tZGMtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlclwiKS5pdGVtKDApKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaGludCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwibWF0LW1kYy1mb3JtLWZpZWxkLWhpbnRcIikuaXRlbSgwKTtcbiAgICAgICAgICAgICAgICAodGhpcy5yZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCBhcyBIVE1MRGl2RWxlbWVudCkuc3R5bGUucG9zaXRpb24gPSBcImFic29sdXRlXCI7XG4gICAgICAgICAgICAgICAgKHRoaXMucmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTERpdkVsZW1lbnQpLnN0eWxlLnRvcCA9IGhpbnQgPyBcIjE2cHhcIiA6IFwiMFwiO1xuXG4gICAgICAgICAgICAgICAgY29uc3Qgd3JhcHBlciA9IHRoaXMuZWwubmF0aXZlRWxlbWVudFxuICAgICAgICAgICAgICAgICAgICAuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1tZGMtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlclwiKVxuICAgICAgICAgICAgICAgICAgICAuaXRlbSgwKTtcbiAgICAgICAgICAgICAgICBpZiAoaGludCkge1xuICAgICAgICAgICAgICAgICAgICB3cmFwcGVyLmNsYXNzTGlzdC5hZGQoXCJvdmVycmlkZS1oZWlnaHRcIik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgd3JhcHBlci5wcmVwZW5kKHRoaXMucmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICh0ZXh0KSB7XG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmFkZChcImZvcm0tZXJyb3Itc2hvd1wiKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKFwiZm9ybS1lcnJvci1zaG93XCIpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVmLmluc3RhbmNlLmVycm9yID0gdGV4dDtcbiAgICB9XG59XG4iXX0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1zdGF0dXMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS11aS1raXQtdjIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0tZXJyb3IvY29udHJvbC1zdGF0dXMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBK0IsU0FBUyxFQUFFLFVBQVUsRUFBYSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBRzNDLE1BQU0sT0FBTywwQkFBMEI7SUFtRW5DLFlBQ1ksRUFBMkIsRUFDM0IsR0FBcUIsRUFDckIsU0FBdUIsRUFDdkIsZ0JBQWtDO1FBSGxDLE9BQUUsR0FBRixFQUFFLENBQXlCO1FBQzNCLFFBQUcsR0FBSCxHQUFHLENBQWtCO1FBQ3JCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5FdEMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXZDLGFBQVEsR0FBRyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtnQkFDdEIsT0FBTzthQUNWO1lBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtnQkFDOUMsS0FBSyxNQUFNLEtBQUss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b250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGQgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZFwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQgeyB0aCB9IGZyb20gXCJkYXRlLWZucy9sb2NhbGVcIjtcbmltcG9ydCB7IE5pY2VGb3JtRXJyb3JDb21wb25lbnQgfSBmcm9tIFwiLi9mb3JtLWVycm9yLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgU3ViamVjdCwgY29tYmluZUxhdGVzdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuQERpcmVjdGl2ZSh7IHNlbGVjdG9yOiBcIltuaWNlQ29udHJvbFN0YXR1c11cIiB9KVxuZXhwb3J0IGNsYXNzIE5pY2VDb250cm9sU3RhdHVzRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIHJlZjogQ29tcG9uZW50UmVmPE5pY2VGb3JtRXJyb3JDb21wb25lbnQ+O1xuICAgIHByaXZhdGUgY29udHJvbDogTmdDb250cm9sO1xuXG4gICAgcHJpdmF0ZSB1bnN1YnNjcmliZUFsbCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcHVibGljIG9uQ2hhbmdlID0gKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5jb250cm9sLnBlbmRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wuaW52YWxpZCAmJiB0aGlzLmNvbnRyb2wudG91Y2hlZCkge1xuICAgICAgICAgICAgZm9yIChjb25zdCBlcnJvciBpbiB0aGlzLmNvbnRyb2wuZXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbC5lcnJvcnMuaGFzT3duUHJvcGVydHkoZXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGxhc3RFcnJvcktleSA9IGVycm9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHBhcmFtOiBhbnk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwicGF0dGVyblwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFzdEVycm9yS2V5ID0gdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ucmVxdWlyZWRQYXR0ZXJuO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yID09PSBcIm1hc2tcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhc3RFcnJvcktleSA9IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLnJlcXVpcmVkTWFzaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciA9PT0gXCJtaW5sZW5ndGhcIiB8fCBlcnJvciA9PT0gXCJtYXhsZW5ndGhcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ucmVxdWlyZWRMZW5ndGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVycm9yID09PSBcIm1pblwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ubWluLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3R1YWw6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLmFjdHVhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwibWF4XCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4OiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5tYXgsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjdHVhbDogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0uYWN0dWFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlcnJvciA9PT0gXCJhcnJheU1pbkxlbmd0aFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW0gPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbjogdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl0ubWluLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhY3R1YWw6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLmFjdHVhbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXJyb3IgPT09IFwiYXJyYXlNYXhMZW5ndGhcIikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXg6IHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdLm1heCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWN0dWFsOiB0aGlzLmNvbnRyb2wuZXJyb3JzW2Vycm9yXS5hY3R1YWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udHJvbC5lcnJvcnNbZXJyb3JdID09PSBcIm9iamVjdFwiICYmICFwYXJhbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0gdGhpcy5jb250cm9sLmVycm9yc1tlcnJvcl07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RXJyb3IodGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoYGVycm9ycy4ke2xhc3RFcnJvcktleX1gLCBwYXJhbSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNldEVycm9yKFwiXCIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgICAgICBwcml2YXRlIHZjcjogVmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgcHJpdmF0ZSBmb3JtRmllbGQ6IE1hdEZvcm1GaWVsZCxcbiAgICAgICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250cm9sID0gdGhpcy5mb3JtRmllbGQuX2NvbnRyb2wubmdDb250cm9sIGFzIE5nQ29udHJvbDtcbiAgICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5mb3JtRmllbGQuX2NvbnRyb2wuc3RhdGVDaGFuZ2VzLCB0aGlzLmNvbnRyb2wuc3RhdHVzQ2hhbmdlc10pXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZUFsbCQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLm9uQ2hhbmdlKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZUFsbCQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlQWxsJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRFcnJvcih0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLnJlZikge1xuICAgICAgICAgICAgdGhpcy5yZWYgPSB0aGlzLnZjci5jcmVhdGVDb21wb25lbnQoTmljZUZvcm1FcnJvckNvbXBvbmVudCk7XG4gICAgICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJtYXQtZm9ybS1maWVsZC13cmFwcGVyXCIpLml0ZW0oMCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJtYXQtZm9ybS1maWVsZC13cmFwcGVyXCIpXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtKDApXG4gICAgICAgICAgICAgICAgICAgIC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFwibWF0LWZvcm0tZmllbGQtc3Vic2NyaXB0LXdyYXBwZXJcIilcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0oMClcbiAgICAgICAgICAgICAgICAgICAgLmFwcGVuZENoaWxkKHRoaXMucmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJtYXQtbWRjLWZvcm0tZmllbGQtc3Vic2NyaXB0LXdyYXBwZXJcIikuaXRlbSgwKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGhpbnQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShcIm1hdC1tZGMtZm9ybS1maWVsZC1oaW50XCIpLml0ZW0oMCk7XG4gICAgICAgICAgICAgICAgKHRoaXMucmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTERpdkVsZW1lbnQpLnN0eWxlLnBvc2l0aW9uID0gXCJhYnNvbHV0ZVwiO1xuICAgICAgICAgICAgICAgICh0aGlzLnJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50IGFzIEhUTUxEaXZFbGVtZW50KS5zdHlsZS50b3AgPSBoaW50ID8gXCIxNnB4XCIgOiBcIjBcIjtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHdyYXBwZXIgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgICAgICAgICAgICAgLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoXCJtYXQtbWRjLWZvcm0tZmllbGQtc3Vic2NyaXB0LXdyYXBwZXJcIilcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0oMCk7XG4gICAgICAgICAgICAgICAgaWYgKGhpbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgd3JhcHBlci5jbGFzc0xpc3QuYWRkKFwib3ZlcnJpZGUtaGVpZ2h0XCIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHdyYXBwZXIucHJlcGVuZCh0aGlzLnJlZi5sb2NhdGlvbi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodGV4dCkge1xuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoXCJmb3JtLWVycm9yLXNob3dcIik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShcImZvcm0tZXJyb3Itc2hvd1wiKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlZi5pbnN0YW5jZS5lcnJvciA9IHRleHQ7XG4gICAgfVxufVxuIl19
@@ -35,6 +35,19 @@ export class FileUtils {
35
35
  window.URL.revokeObjectURL(dataUrl);
36
36
  document.body.removeChild(downloadLink);
37
37
  }
38
+ static openFile(file, options = { openInNewTab: true }) {
39
+ const anchor = document.createElement("a");
40
+ document.body.appendChild(anchor);
41
+ anchor.style.display = "none";
42
+ const dataUrl = window.URL.createObjectURL(file);
43
+ anchor.href = dataUrl;
44
+ if (options.openInNewTab) {
45
+ anchor.target = "_blank";
46
+ }
47
+ anchor.click();
48
+ window.URL.revokeObjectURL(dataUrl);
49
+ document.body.removeChild(anchor);
50
+ }
38
51
  static downloadUrl(url) {
39
52
  const downloadLink = document.createElement("a");
40
53
  document.body.appendChild(downloadLink);
@@ -74,4 +87,4 @@ export class FileUtils {
74
87
  });
75
88
  }
76
89
  }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvdXRpbHMvZmlsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sU0FBUztJQUNYLE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQVksRUFBRSxJQUFJLEdBQUcsRUFBRTtRQUN0RCxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ04sT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QixPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBYyxFQUFFLFFBQVEsR0FBRyxLQUFLO1FBQzNELE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDekIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztZQUNwQixLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUMxQixLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUV0QixLQUFLLENBQUMsUUFBUSxHQUFHLEdBQUcsRUFBRTtnQkFDbEIsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO29CQUNiLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN0QyxPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFD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Q0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QyxNQUFNLElBQUksR0FBRyxNQUFNLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QyxNQUFNLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDdkMsWUFBWSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDeEIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2xCLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBGaWxlVXRpbHMge1xuICAgIHB1YmxpYyBzdGF0aWMgYXN5bmMgZ2V0RmlsZUZyb21VcmwodXJsPzogc3RyaW5nLCBuYW1lID0gXCJcIik6IFByb21pc2U8RmlsZSB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBpZiAoIXVybCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZXMgPSBhd2FpdCBmZXRjaCh1cmwpO1xuICAgICAgICByZXR1cm4gbmV3IEZpbGUoW2F3YWl0IHJlcy5ibG9iKCldLCBuYW1lKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFzeW5jIHNlbGVjdEZpbGUoYWNjZXB0OiBzdHJpbmcsIG11bHRpcGxlID0gZmFsc2UpOiBQcm9taXNlPEZpbGUgfCBGaWxlW10+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiaW5wdXRcIik7XG4gICAgICAgICAgICBpbnB1dC50eXBlID0gXCJmaWxlXCI7XG4gICAgICAgICAgICBpbnB1dC5tdWx0aXBsZSA9IG11bHRpcGxlO1xuICAgICAgICAgICAgaW5wdXQuYWNjZXB0ID0gYWNjZXB0O1xuXG4gICAgICAgICAgICBpbnB1dC5vbmNoYW5nZSA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoaW5wdXQuZmlsZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZmlsZXMgPSBBcnJheS5mcm9tKGlucHV0LmZpbGVzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc29sdmUobXVsdGlwbGUgPyBmaWxlcyA6IGZpbGVzWzBdKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXNvbHZlKG51bGwpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgaW5wdXQuY2xpY2soKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBkb3dubG9hZEZpbGUoZmlsZU5hbWU6IHN0cmluZywgY29udGVudDogQmxvYiwgZG93bmxvYWRMaW5rPzogSFRNTEFuY2hvckVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFkb3dubG9hZExpbmspIHtcbiAgICAgICAgICAgIGRvd25sb2FkTGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJhXCIpO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb3dubG9hZExpbmspO1xuICAgICAgICAgICAgZG93bmxvYWRMaW5rLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRhdGFVcmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChjb250ZW50KTtcbiAgICAgICAgZG93bmxvYWRMaW5rLmhyZWYgPSBkYXRhVXJsO1xuICAgICAgICBkb3dubG9hZExpbmsuZG93bmxvYWQgPSBmaWxlTmFtZTtcbiAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XG4gICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKGRhdGFVcmwpO1xuICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGRvd25sb2FkTGluayk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBkb3dubG9hZFVybCh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBkb3dubG9hZExpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb3dubG9hZExpbmspO1xuICAgICAgICBkb3dubG9hZExpbmsuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xuICAgICAgICBkb3dubG9hZExpbmsuaHJlZiA9IHVybDtcbiAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG93bmxvYWRMaW5rKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG9wZW5QcmludGFibGVXaW5kb3coY29udGVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHdpbiA9IHdpbmRvdy5vcGVuKFwiXCIpO1xuICAgICAgICBpZiAoIXdpbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgd2luLmRvY3VtZW50Lm9wZW4oKTtcbiAgICAgICAgd2luLmRvY3VtZW50LndyaXRlKGNvbnRlbnQpO1xuICAgICAgICB3aW4uZG9jdW1lbnQuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZpbGVuYW1lVG9FeHRlbnNpb24oZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJlID0gLyg/OlxcLihbXi5dKykpPyQvO1xuICAgICAgICByZXR1cm4gcmUuZXhlYyhmaWxlbmFtZSlbMV07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXREYXRhVXJsKGZpbGU6IEZpbGUpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgICAgICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgICAgICAgcmVhZGVyLm9uZXJyb3IgPSBlcnJvciA9PiByZWplY3QoZXJyb3IpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFzeW5jIGdldEZpbGVGcm9tRGF0YVVybChkYXRhOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZT4ge1xuICAgICAgICBjb25zdCBiYXNlNjRSZXNwb25zZSA9IGF3YWl0IGZldGNoKGRhdGEpO1xuICAgICAgICBjb25zdCBibG9iID0gYXdhaXQgYmFzZTY0UmVzcG9uc2UuYmxvYigpO1xuICAgICAgICBjb25zdCBbLCB0eXBlXSA9IGJsb2IudHlwZS5zcGxpdChcIi9cIik7XG4gICAgICAgIHJldHVybiBuZXcgRmlsZShbYmxvYl0sIGAke25hbWV9LiR7dHlwZX1gLCB7XG4gICAgICAgICAgICBsYXN0TW9kaWZpZWQ6IERhdGUubm93KCksXG4gICAgICAgICAgICB0eXBlOiBibG9iLnR5cGVcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS51dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtdWkta2l0LXYyL3NyYy9saWIvdXRpbHMvZmlsZS51dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sU0FBUztJQUNYLE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQVksRUFBRSxJQUFJLEdBQUcsRUFBRTtRQUN0RCxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ04sT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFDRCxNQUFNLEdBQUcsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM3QixPQUFPLElBQUksSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBYyxFQUFFLFFBQVEsR0FBRyxLQUFLO1FBQzNELE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDekIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM5QyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztZQUNwQixLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztZQUMxQixLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUV0QixLQUFLLENBQUMsUUFBUSxHQUFHLEdBQUcsRUFBRTtnQkFDbEIsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO29CQUNiLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUN0QyxPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFD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dGlscyB7XG4gICAgcHVibGljIHN0YXRpYyBhc3luYyBnZXRGaWxlRnJvbVVybCh1cmw/OiBzdHJpbmcsIG5hbWUgPSBcIlwiKTogUHJvbWlzZTxGaWxlIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGlmICghdXJsKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHJlcyA9IGF3YWl0IGZldGNoKHVybCk7XG4gICAgICAgIHJldHVybiBuZXcgRmlsZShbYXdhaXQgcmVzLmJsb2IoKV0sIG5hbWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYXN5bmMgc2VsZWN0RmlsZShhY2NlcHQ6IHN0cmluZywgbXVsdGlwbGUgPSBmYWxzZSk6IFByb21pc2U8RmlsZSB8IEZpbGVbXT4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJpbnB1dFwiKTtcbiAgICAgICAgICAgIGlucHV0LnR5cGUgPSBcImZpbGVcIjtcbiAgICAgICAgICAgIGlucHV0Lm11bHRpcGxlID0gbXVsdGlwbGU7XG4gICAgICAgICAgICBpbnB1dC5hY2NlcHQgPSBhY2NlcHQ7XG5cbiAgICAgICAgICAgIGlucHV0Lm9uY2hhbmdlID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChpbnB1dC5maWxlcykge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBmaWxlcyA9IEFycmF5LmZyb20oaW5wdXQuZmlsZXMpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzb2x2ZShtdWx0aXBsZSA/IGZpbGVzIDogZmlsZXNbMF0pO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBpbnB1dC5jbGljaygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGRvd25sb2FkRmlsZShmaWxlTmFtZTogc3RyaW5nLCBjb250ZW50OiBCbG9iLCBkb3dubG9hZExpbms/OiBIVE1MQW5jaG9yRWxlbWVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIWRvd25sb2FkTGluaykge1xuICAgICAgICAgICAgZG93bmxvYWRMaW5rID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIik7XG4gICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvd25sb2FkTGluayk7XG4gICAgICAgICAgICBkb3dubG9hZExpbmsuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGF0YVVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGNvbnRlbnQpO1xuICAgICAgICBkb3dubG9hZExpbmsuaHJlZiA9IGRhdGFVcmw7XG4gICAgICAgIGRvd25sb2FkTGluay5kb3dubG9hZCA9IGZpbGVOYW1lO1xuICAgICAgICBkb3dubG9hZExpbmsuY2xpY2soKTtcbiAgICAgICAgd2luZG93LlVSTC5yZXZva2VPYmplY3RVUkwoZGF0YVVybCk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG93bmxvYWRMaW5rKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG9wZW5GaWxlKGZpbGU6IEJsb2IsIG9wdGlvbnM6IHsgb3BlbkluTmV3VGFiOiBib29sZWFuIH0gPSB7IG9wZW5Jbk5ld1RhYjogdHJ1ZSB9KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFuY2hvciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJhXCIpO1xuICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGFuY2hvcik7XG4gICAgICAgIGFuY2hvci5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCI7XG5cbiAgICAgICAgY29uc3QgZGF0YVVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpO1xuICAgICAgICBhbmNob3IuaHJlZiA9IGRhdGFVcmw7XG4gICAgICAgIGlmIChvcHRpb25zLm9wZW5Jbk5ld1RhYikge1xuICAgICAgICAgICAgYW5jaG9yLnRhcmdldCA9IFwiX2JsYW5rXCI7XG4gICAgICAgIH1cbiAgICAgICAgYW5jaG9yLmNsaWNrKCk7XG4gICAgICAgIHdpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKGRhdGFVcmwpO1xuICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGFuY2hvcik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBkb3dubG9hZFVybCh1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBkb3dubG9hZExpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb3dubG9hZExpbmspO1xuICAgICAgICBkb3dubG9hZExpbmsuc3R5bGUuZGlzcGxheSA9IFwibm9uZVwiO1xuICAgICAgICBkb3dubG9hZExpbmsuaHJlZiA9IHVybDtcbiAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG93bmxvYWRMaW5rKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG9wZW5QcmludGFibGVXaW5kb3coY29udGVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHdpbiA9IHdpbmRvdy5vcGVuKFwiXCIpO1xuICAgICAgICBpZiAoIXdpbikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgd2luLmRvY3VtZW50Lm9wZW4oKTtcbiAgICAgICAgd2luLmRvY3VtZW50LndyaXRlKGNvbnRlbnQpO1xuICAgICAgICB3aW4uZG9jdW1lbnQuY2xvc2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZpbGVuYW1lVG9FeHRlbnNpb24oZmlsZW5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJlID0gLyg/OlxcLihbXi5dKykpPyQvO1xuICAgICAgICByZXR1cm4gcmUuZXhlYyhmaWxlbmFtZSlbMV07XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXREYXRhVXJsKGZpbGU6IEZpbGUpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xuICAgICAgICAgICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHJlc29sdmUocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpO1xuICAgICAgICAgICAgcmVhZGVyLm9uZXJyb3IgPSBlcnJvciA9PiByZWplY3QoZXJyb3IpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFzeW5jIGdldEZpbGVGcm9tRGF0YVVybChkYXRhOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IFByb21pc2U8RmlsZT4ge1xuICAgICAgICBjb25zdCBiYXNlNjRSZXNwb25zZSA9IGF3YWl0IGZldGNoKGRhdGEpO1xuICAgICAgICBjb25zdCBibG9iID0gYXdhaXQgYmFzZTY0UmVzcG9uc2UuYmxvYigpO1xuICAgICAgICBjb25zdCBbLCB0eXBlXSA9IGJsb2IudHlwZS5zcGxpdChcIi9cIik7XG4gICAgICAgIHJldHVybiBuZXcgRmlsZShbYmxvYl0sIGAke25hbWV9LiR7dHlwZX1gLCB7XG4gICAgICAgICAgICBsYXN0TW9kaWZpZWQ6IERhdGUubm93KCksXG4gICAgICAgICAgICB0eXBlOiBibG9iLnR5cGVcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
@@ -1298,6 +1298,19 @@ class FileUtils {
1298
1298
  window.URL.revokeObjectURL(dataUrl);
1299
1299
  document.body.removeChild(downloadLink);
1300
1300
  }
1301
+ static openFile(file, options = { openInNewTab: true }) {
1302
+ const anchor = document.createElement("a");
1303
+ document.body.appendChild(anchor);
1304
+ anchor.style.display = "none";
1305
+ const dataUrl = window.URL.createObjectURL(file);
1306
+ anchor.href = dataUrl;
1307
+ if (options.openInNewTab) {
1308
+ anchor.target = "_blank";
1309
+ }
1310
+ anchor.click();
1311
+ window.URL.revokeObjectURL(dataUrl);
1312
+ document.body.removeChild(anchor);
1313
+ }
1301
1314
  static downloadUrl(url) {
1302
1315
  const downloadLink = document.createElement("a");
1303
1316
  document.body.appendChild(downloadLink);
@@ -5421,6 +5434,64 @@ class NiceControlStatusDirective {
5421
5434
  this.formField = formField;
5422
5435
  this.translateService = translateService;
5423
5436
  this.unsubscribeAll$ = new Subject();
5437
+ this.onChange = () => {
5438
+ if (this.control.pending) {
5439
+ return;
5440
+ }
5441
+ if (this.control.invalid && this.control.touched) {
5442
+ for (const error in this.control.errors) {
5443
+ if (this.control.errors.hasOwnProperty(error)) {
5444
+ if (this.control.errors[error]) {
5445
+ let lastErrorKey = error;
5446
+ let param;
5447
+ if (error === "pattern") {
5448
+ lastErrorKey = this.control.errors[error].requiredPattern;
5449
+ }
5450
+ if (error === "mask") {
5451
+ lastErrorKey = this.control.errors[error].requiredMask;
5452
+ }
5453
+ if (error === "minlength" || error === "maxlength") {
5454
+ param = {
5455
+ value: this.control.errors[error].requiredLength
5456
+ };
5457
+ }
5458
+ if (error === "min") {
5459
+ param = {
5460
+ min: this.control.errors[error].min,
5461
+ actual: this.control.errors[error].actual
5462
+ };
5463
+ }
5464
+ if (error === "max") {
5465
+ param = {
5466
+ max: this.control.errors[error].max,
5467
+ actual: this.control.errors[error].actual
5468
+ };
5469
+ }
5470
+ if (error === "arrayMinLength") {
5471
+ param = {
5472
+ min: this.control.errors[error].min,
5473
+ actual: this.control.errors[error].actual
5474
+ };
5475
+ }
5476
+ if (error === "arrayMaxLength") {
5477
+ param = {
5478
+ max: this.control.errors[error].max,
5479
+ actual: this.control.errors[error].actual
5480
+ };
5481
+ }
5482
+ if (typeof this.control.errors[error] === "object" && !param) {
5483
+ param = this.control.errors[error];
5484
+ }
5485
+ this.setError(this.translateService.instant(`errors.${lastErrorKey}`, param));
5486
+ break;
5487
+ }
5488
+ }
5489
+ }
5490
+ }
5491
+ else {
5492
+ this.setError("");
5493
+ }
5494
+ };
5424
5495
  }
5425
5496
  ngAfterViewInit() {
5426
5497
  this.control = this.formField._control.ngControl;
@@ -5432,64 +5503,6 @@ class NiceControlStatusDirective {
5432
5503
  this.unsubscribeAll$.next();
5433
5504
  this.unsubscribeAll$.complete();
5434
5505
  }
5435
- onChange() {
5436
- if (this.control.pending) {
5437
- return;
5438
- }
5439
- if (this.control.invalid && this.control.touched) {
5440
- for (const error in this.control.errors) {
5441
- if (this.control.errors.hasOwnProperty(error)) {
5442
- if (this.control.errors[error]) {
5443
- let lastErrorKey = error;
5444
- let param;
5445
- if (error === "pattern") {
5446
- lastErrorKey = this.control.errors[error].requiredPattern;
5447
- }
5448
- if (error === "mask") {
5449
- lastErrorKey = this.control.errors[error].requiredMask;
5450
- }
5451
- if (error === "minlength" || error === "maxlength") {
5452
- param = {
5453
- value: this.control.errors[error].requiredLength
5454
- };
5455
- }
5456
- if (error === "min") {
5457
- param = {
5458
- min: this.control.errors[error].min,
5459
- actual: this.control.errors[error].actual
5460
- };
5461
- }
5462
- if (error === "max") {
5463
- param = {
5464
- max: this.control.errors[error].max,
5465
- actual: this.control.errors[error].actual
5466
- };
5467
- }
5468
- if (error === "arrayMinLength") {
5469
- param = {
5470
- min: this.control.errors[error].min,
5471
- actual: this.control.errors[error].actual
5472
- };
5473
- }
5474
- if (error === "arrayMaxLength") {
5475
- param = {
5476
- max: this.control.errors[error].max,
5477
- actual: this.control.errors[error].actual
5478
- };
5479
- }
5480
- if (typeof this.control.errors[error] === "object" && !param) {
5481
- param = this.control.errors[error];
5482
- }
5483
- this.setError(this.translateService.instant(`errors.${lastErrorKey}`, param));
5484
- break;
5485
- }
5486
- }
5487
- }
5488
- }
5489
- else {
5490
- this.setError("");
5491
- }
5492
- }
5493
5506
  setError(text) {
5494
5507
  if (!this.ref) {
5495
5508
  this.ref = this.vcr.createComponent(NiceFormErrorComponent);