@quadrel-enterprise-ui/framework 18.35.1 → 18.35.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/page-tabs/page-tab/page-tab.component.mjs +23 -3
- package/fesm2022/quadrel-enterprise-ui-framework.mjs +20 -0
- package/fesm2022/quadrel-enterprise-ui-framework.mjs.map +1 -1
- package/lib/page-tabs/page-tab/page-tab.component.d.ts +2 -0
- package/lib/page-tabs/page-tab/page-tab.component.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// @ts-strict-ignore
|
|
2
2
|
import { CdkStep, STEPPER_GLOBAL_OPTIONS } from '@angular/cdk/stepper';
|
|
3
3
|
import { ChangeDetectionStrategy, Component, ContentChildren, forwardRef, Inject, Input, Optional, QueryList } from '@angular/core';
|
|
4
|
-
import { AbstractControl } from '@angular/forms';
|
|
4
|
+
import { AbstractControl, FormArray, FormGroup } from '@angular/forms';
|
|
5
5
|
import { TranslateService } from '@ngx-translate/core';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
6
|
+
import { Subject, takeUntil } from 'rxjs';
|
|
7
7
|
import { QdPageInfoBannerComponent } from '../../page/page.module';
|
|
8
8
|
import { QdPageTabsComponent } from '../page-tabs.component';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
@@ -35,6 +35,8 @@ export class QdPageTabComponent extends CdkStep {
|
|
|
35
35
|
}
|
|
36
36
|
ngOnInit() {
|
|
37
37
|
this.validateLabel();
|
|
38
|
+
if (this.tabControl)
|
|
39
|
+
this.initErrorCheck();
|
|
38
40
|
}
|
|
39
41
|
ngOnChanges(changes) {
|
|
40
42
|
super.ngOnChanges();
|
|
@@ -52,6 +54,24 @@ export class QdPageTabComponent extends CdkStep {
|
|
|
52
54
|
if (!this.config?.label?.i18n)
|
|
53
55
|
console.error('QD-UI | QdPageTabComponent - Please provide a label for the tab.');
|
|
54
56
|
}
|
|
57
|
+
initErrorCheck() {
|
|
58
|
+
this.tabControl.statusChanges.pipe(takeUntil(this._destroyed$)).subscribe(() => {
|
|
59
|
+
if (this.hasAnyError(this.tabControl)) {
|
|
60
|
+
this.interacted = true;
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
hasAnyError(control) {
|
|
65
|
+
if (control.errors && control.touched)
|
|
66
|
+
return true;
|
|
67
|
+
if (control instanceof FormGroup) {
|
|
68
|
+
return Object.values(control.controls).some(this.hasAnyError);
|
|
69
|
+
}
|
|
70
|
+
if (control instanceof FormArray) {
|
|
71
|
+
return control.controls.some(this.hasAnyError);
|
|
72
|
+
}
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
55
75
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: QdPageTabComponent, deps: [{ token: i1.TranslateService }, { token: forwardRef(() => QdPageTabsComponent) }, { token: STEPPER_GLOBAL_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
56
76
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: QdPageTabComponent, isStandalone: true, selector: "qd-page-tab", inputs: { config: "config", tabControl: "tabControl" }, providers: [
|
|
57
77
|
{ provide: CdkStep, useExisting: QdPageTabComponent },
|
|
@@ -81,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImpor
|
|
|
81
101
|
type: ContentChildren,
|
|
82
102
|
args: [QdPageInfoBannerComponent]
|
|
83
103
|
}] } });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS10YWIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9xZC11aS9zcmMvbGliL3BhZ2UtdGFicy9wYWdlLXRhYi9wYWdlLXRhYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3FkLXVpL3NyYy9saWIvcGFnZS10YWJzL3BhZ2UtdGFiL3BhZ2UtdGFiLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixPQUFPLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFrQixNQUFNLHNCQUFzQixDQUFDO0FBQ3ZGLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFJTCxRQUFRLEVBQ1IsU0FBUyxFQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRW5FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBRTdEOztHQUVHO0FBWUgsTUFBTSxPQUFPLGtCQUFtQixTQUFRLE9BQU87SUF5Qm5DO0lBeEJWOzs7O09BSUc7SUFFSCxNQUFNLENBQWtCO0lBRXhCLGlDQUFpQztJQUNqQyxJQUNJLFVBQVUsQ0FBQyxVQUEyQjtRQUN4QyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBOEIs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c0IsRUFBRSxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEVBQUU7cUJBQ25FLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksQ0FBQyx1QkFBdUI7OzswQkE0QnJDLE1BQU07MkJBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDOzswQkFDNUMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxzQkFBc0I7eUNBcEI1QyxNQUFNO3NCQURMLEtBQUs7Z0JBS0YsVUFBVTtzQkFEYixLQUFLO2dCQVVOLFdBQVc7c0JBRFYsZUFBZTt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtc3RyaWN0LWlnbm9yZVxuaW1wb3J0IHsgQ2RrU3RlcCwgU1RFUFBFUl9HTE9CQUxfT1BUSU9OUywgU3RlcHBlck9wdGlvbnMgfSBmcm9tICdAYW5ndWxhci9jZGsvc3RlcHBlcic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIGZvcndhcmRSZWYsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBRZFBhZ2VJbmZvQmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vcGFnZS9wYWdlLm1vZHVsZSc7XG5pbXBvcnQgeyBRZFBhZ2VUYWJDb25maWcgfSBmcm9tICcuLi9tb2RlbC9wYWdlLXRhYnMtY29uZmlnJztcbmltcG9ydCB7IFFkUGFnZVRhYnNDb21wb25lbnQgfSBmcm9tICcuLi9wYWdlLXRhYnMuY29tcG9uZW50JztcblxuLyoqXG4gKiBUaGUgKipRZFBhZ2VUYWIqKiBpcyBhIHNpbmdsZSB0YWIgaW5zaWRlIHRoZSAqKlFkUGFnZVRhYnMqKiB3aXRoaW4gYSAqKlFkUGFnZSoqLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdxZC1wYWdlLXRhYicsXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLXRhYi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BhZ2UtdGFiLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogQ2RrU3RlcCwgdXNlRXhpc3Rpbmc6IFFkUGFnZVRhYkNvbXBvbmVudCB9LFxuICAgIHsgcHJvdmlkZTogU1RFUFBFUl9HTE9CQUxfT1BUSU9OUywgdXNlVmFsdWU6IHsgc2hvd0Vycm9yOiB0cnVlIH0gfVxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSAvLyBpbmhlcml0ZWQgYnkgQ2RrU3RlcFxufSlcbmV4cG9ydCBjbGFzcyBRZFBhZ2VUYWJDb21wb25lbnQgZXh0ZW5kcyBDZGtTdGVwIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9mIFFkUGFnZVRhYkNvbXBvbmVudC5cbiAgICpcbiAgICogKiBAbm90ZSBUaGUgdXNlIG9mIENESyBhdHRyaWJ1dGVzIGlzIG5vdCBwZXJtaXR0ZWQuIFBsZWFzZSBjb25maWd1cmUgdGhpcyBjb21wb25lbnQgaGVyZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGNvbmZpZzogUWRQYWdlVGFiQ29uZmlnO1xuXG4gIC8qKiBGb3JtIGNvbnRyb2wgZm9yIHRoaXMgdGFiLiAqL1xuICBASW5wdXQoKVxuICBzZXQgdGFiQ29udHJvbCh0YWJDb250cm9sOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICB0aGlzLnN0ZXBDb250cm9sID0gdGFiQ29udHJvbDtcbiAgfVxuXG4gIGdldCB0YWJDb250cm9sKCk6IEFic3RyYWN0Q29udHJvbCB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcENvbnRyb2wgYXMgQWJzdHJhY3RDb250cm9sO1xuICB9XG5cbiAgQENvbnRlbnRDaGlsZHJlbihRZFBhZ2VJbmZvQmFubmVyQ29tcG9uZW50KVxuICBpbmZvQmFubmVycyE6IFF1ZXJ5TGlzdDxRZFBhZ2VJbmZvQmFubmVyQ29tcG9uZW50PjtcblxuICBwcml2YXRlIF9kZXN0cm95ZWQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gUWRQYWdlVGFic0NvbXBvbmVudCkpIHRhYnM6IFFkUGFnZVRhYnNDb21wb25lbnQsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChTVEVQUEVSX0dMT0JBTF9PUFRJT05TKSBzdGVwcGVyT3B0aW9ucz86IFN0ZXBwZXJPcHRpb25zXG4gICkge1xuICAgIHN1cGVyKHRhYnMsIHN0ZXBwZXJPcHRpb25zKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudmFsaWRhdGVMYWJlbCgpO1xuXG4gICAgaWYgKHRoaXMudGFiQ29udHJvbCkgdGhpcy5pbml0RXJyb3JDaGVjaygpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkNoYW5nZXMoY2hhbmdlcz86IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uQ2hhbmdlcygpO1xuXG4gICAgWydsYWJlbCcsICdlcnJvck1lc3NhZ2UnLCAnc3RhdGUnXVxuICAgICAgLmZpbHRlcihpbnB1dE5hbWUgPT4gISFjaGFuZ2VzW2lucHV0TmFtZV0pXG4gICAgICAuZm9yRWFjaChpbnB1dE5hbWUgPT4gdGhpcy5ibG9ja0Nka0lucHV0KGlucHV0TmFtZSkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBibG9ja0Nka0lucHV0KGlucHV0TmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFFELVVJIHwgUWRQYWdlVGFiQ29tcG9uZW50IC0gVGhlIHVzZSBvZiB0aGUgJHtpbnB1dE5hbWV9IGF0dHJpYnV0ZSBpcyBub3QgcGVybWl0dGVkLiBQbGVhc2UgdXNlIFFkUGFnZVRhYkNvbmZpZyBpbnN0ZWFkLmBcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUxhYmVsKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jb25maWc/LmxhYmVsPy5pMThuKSBjb25zb2xlLmVycm9yKCdRRC1VSSB8IFFkUGFnZVRhYkNvbXBvbmVudCAtIFBsZWFzZSBwcm92aWRlIGEgbGFiZWwgZm9yIHRoZSB0YWIuJyk7XG4gIH1cblxuICBwcml2YXRlIGluaXRFcnJvckNoZWNrKCk6IHZvaWQge1xuICAgIHRoaXMudGFiQ29udHJvbC5zdGF0dXNDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3llZCQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuaGFzQW55RXJyb3IodGhpcy50YWJDb250cm9sKSkge1xuICAgICAgICB0aGlzLmludGVyYWN0ZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNBbnlFcnJvcihjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBib29sZWFuIHtcbiAgICBpZiAoY29udHJvbC5lcnJvcnMgJiYgY29udHJvbC50b3VjaGVkKSByZXR1cm4gdHJ1ZTtcbiAgICBpZiAoY29udHJvbCBpbnN0YW5jZW9mIEZvcm1Hcm91cCkge1xuICAgICAgcmV0dXJuIE9iamVjdC52YWx1ZXMoY29udHJvbC5jb250cm9scykuc29tZSh0aGlzLmhhc0FueUVycm9yKTtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgIHJldHVybiBjb250cm9sLmNvbnRyb2xzLnNvbWUodGhpcy5oYXNBbnlFcnJvcik7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlPlxuICA8ZGl2IFtjbGFzcy5oYXMtaW5mby1iYW5uZXJzXT1cImluZm9CYW5uZXJzLmxlbmd0aCA+IDBcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJxZC1wYWdlLWluZm8tYmFubmVyXCI+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cblxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -37848,6 +37848,8 @@ class QdPageTabComponent extends CdkStep {
|
|
|
37848
37848
|
}
|
|
37849
37849
|
ngOnInit() {
|
|
37850
37850
|
this.validateLabel();
|
|
37851
|
+
if (this.tabControl)
|
|
37852
|
+
this.initErrorCheck();
|
|
37851
37853
|
}
|
|
37852
37854
|
ngOnChanges(changes) {
|
|
37853
37855
|
super.ngOnChanges();
|
|
@@ -37865,6 +37867,24 @@ class QdPageTabComponent extends CdkStep {
|
|
|
37865
37867
|
if (!this.config?.label?.i18n)
|
|
37866
37868
|
console.error('QD-UI | QdPageTabComponent - Please provide a label for the tab.');
|
|
37867
37869
|
}
|
|
37870
|
+
initErrorCheck() {
|
|
37871
|
+
this.tabControl.statusChanges.pipe(takeUntil$1(this._destroyed$)).subscribe(() => {
|
|
37872
|
+
if (this.hasAnyError(this.tabControl)) {
|
|
37873
|
+
this.interacted = true;
|
|
37874
|
+
}
|
|
37875
|
+
});
|
|
37876
|
+
}
|
|
37877
|
+
hasAnyError(control) {
|
|
37878
|
+
if (control.errors && control.touched)
|
|
37879
|
+
return true;
|
|
37880
|
+
if (control instanceof FormGroup) {
|
|
37881
|
+
return Object.values(control.controls).some(this.hasAnyError);
|
|
37882
|
+
}
|
|
37883
|
+
if (control instanceof FormArray) {
|
|
37884
|
+
return control.controls.some(this.hasAnyError);
|
|
37885
|
+
}
|
|
37886
|
+
return false;
|
|
37887
|
+
}
|
|
37868
37888
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: QdPageTabComponent, deps: [{ token: i1$3.TranslateService }, { token: forwardRef(() => QdPageTabsComponent) }, { token: STEPPER_GLOBAL_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
37869
37889
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.9", type: QdPageTabComponent, isStandalone: true, selector: "qd-page-tab", inputs: { config: "config", tabControl: "tabControl" }, providers: [
|
|
37870
37890
|
{ provide: CdkStep, useExisting: QdPageTabComponent },
|