@koalarx/ui 13.0.18 → 13.0.19
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/core/esm2020/lib/helpers/mat-form-field.helper.mjs +17 -0
- package/core/esm2020/lib/services/token/koala.token.service.mjs +9 -7
- package/core/fesm2015/koalarx-ui-core.mjs +26 -6
- package/core/fesm2015/koalarx-ui-core.mjs.map +1 -1
- package/core/fesm2020/koalarx-ui-core.mjs +24 -6
- package/core/fesm2020/koalarx-ui-core.mjs.map +1 -1
- package/core/lib/helpers/mat-form-field.helper.d.ts +3 -0
- package/core/lib/services/token/koala.token.service.d.ts +1 -0
- package/core/theme/koala.theme.css +6 -0
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export class MatFormFieldHelper {
|
|
2
|
+
// Devido a mudanças constantes de estado dos campos de formulário, em certos casos o componente do Material Angular não se comporta conforme o esperado, devido a isso, este Helper tem essa função
|
|
3
|
+
static fixDisabledStateForDisabledFields() {
|
|
4
|
+
document.querySelectorAll(".mat-form-field input:disabled").forEach(inputEl => {
|
|
5
|
+
let matFormFieldElement;
|
|
6
|
+
let tmpElement;
|
|
7
|
+
do {
|
|
8
|
+
tmpElement = tmpElement ? tmpElement.parentElement : inputEl.parentElement;
|
|
9
|
+
if (tmpElement.classList.contains('mat-form-field')) {
|
|
10
|
+
matFormFieldElement = tmpElement;
|
|
11
|
+
}
|
|
12
|
+
} while (!matFormFieldElement);
|
|
13
|
+
matFormFieldElement?.classList.add('mat-form-field-disabled');
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LWZvcm0tZmllbGQuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvbGliL2hlbHBlcnMvbWF0LWZvcm0tZmllbGQuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0Isb01BQW9NO0lBQzdMLE1BQU0sQ0FBQyxpQ0FBaUM7UUFDN0MsUUFBUSxDQUFDLGdCQUFnQixDQUFDLGdDQUFnQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzVFLElBQUksbUJBQW1DLENBQUM7WUFDeEMsSUFBSSxVQUFtQixDQUFDO1lBRXhCLEdBQUc7Z0JBQ0QsVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztnQkFDM0UsSUFBSSxVQUFVLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO29CQUNuRCxtQkFBbUIsR0FBRyxVQUE0QixDQUFDO2lCQUNwRDthQUNGLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRTtZQUUvQixtQkFBbUIsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgTWF0Rm9ybUZpZWxkSGVscGVyIHtcbiAgLy8gRGV2aWRvIGEgbXVkYW7Dp2FzIGNvbnN0YW50ZXMgZGUgZXN0YWRvIGRvcyBjYW1wb3MgZGUgZm9ybXVsw6FyaW8sIGVtIGNlcnRvcyBjYXNvcyBvIGNvbXBvbmVudGUgZG8gTWF0ZXJpYWwgQW5ndWxhciBuw6NvIHNlIGNvbXBvcnRhIGNvbmZvcm1lIG8gZXNwZXJhZG8sIGRldmlkbyBhIGlzc28sIGVzdGUgSGVscGVyIHRlbSBlc3NhIGZ1bsOnw6NvXG4gIHB1YmxpYyBzdGF0aWMgZml4RGlzYWJsZWRTdGF0ZUZvckRpc2FibGVkRmllbGRzKCkge1xuICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIubWF0LWZvcm0tZmllbGQgaW5wdXQ6ZGlzYWJsZWRcIikuZm9yRWFjaChpbnB1dEVsID0+IHtcbiAgICAgIGxldCBtYXRGb3JtRmllbGRFbGVtZW50OiBIVE1MRGl2RWxlbWVudDtcbiAgICAgIGxldCB0bXBFbGVtZW50OiBFbGVtZW50O1xuXG4gICAgICBkbyB7XG4gICAgICAgIHRtcEVsZW1lbnQgPSB0bXBFbGVtZW50ID8gdG1wRWxlbWVudC5wYXJlbnRFbGVtZW50IDogaW5wdXRFbC5wYXJlbnRFbGVtZW50O1xuICAgICAgICBpZiAodG1wRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ21hdC1mb3JtLWZpZWxkJykpIHtcbiAgICAgICAgICBtYXRGb3JtRmllbGRFbGVtZW50ID0gdG1wRWxlbWVudCBhcyBIVE1MRGl2RWxlbWVudDtcbiAgICAgICAgfVxuICAgICAgfSB3aGlsZSAoIW1hdEZvcm1GaWVsZEVsZW1lbnQpO1xuXG4gICAgICBtYXRGb3JtRmllbGRFbGVtZW50Py5jbGFzc0xpc3QuYWRkKCdtYXQtZm9ybS1maWVsZC1kaXNhYmxlZCcpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import jwt from 'jwt-decode';
|
|
2
2
|
import { Injectable } from '@angular/core';
|
|
3
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import { BehaviorSubject, interval } from 'rxjs';
|
|
4
4
|
import { TokenFactory } from "./token.factory";
|
|
5
|
+
import { MatFormFieldHelper } from "../../helpers/mat-form-field.helper";
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
export class KoalaTokenService {
|
|
7
8
|
constructor() {
|
|
@@ -9,15 +10,15 @@ export class KoalaTokenService {
|
|
|
9
10
|
this.verifySession();
|
|
10
11
|
}
|
|
11
12
|
ngOnDestroy() {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
13
|
+
this.intervalToken?.unsubscribe();
|
|
14
|
+
this.intervalFixMatFormField?.unsubscribe();
|
|
15
15
|
}
|
|
16
16
|
setToken(token) {
|
|
17
17
|
if (TokenFactory.hasToken()) {
|
|
18
18
|
this.token$.next(token);
|
|
19
19
|
}
|
|
20
20
|
TokenFactory.setToken(token);
|
|
21
|
+
this.intervalFixMatFormField = interval(1000).subscribe(() => MatFormFieldHelper.fixDisabledStateForDisabledFields());
|
|
21
22
|
}
|
|
22
23
|
getToken() {
|
|
23
24
|
return this.token$;
|
|
@@ -30,18 +31,19 @@ export class KoalaTokenService {
|
|
|
30
31
|
}
|
|
31
32
|
removeToken() {
|
|
32
33
|
TokenFactory.removeToken();
|
|
34
|
+
this.intervalFixMatFormField?.unsubscribe();
|
|
33
35
|
}
|
|
34
36
|
verifySession() {
|
|
35
37
|
TokenFactory.init();
|
|
36
38
|
this.token$.next(TokenFactory.getToken());
|
|
37
|
-
this.intervalToken =
|
|
39
|
+
this.intervalToken = interval(300).subscribe(() => {
|
|
38
40
|
if (!TokenFactory.hasToken() && this.token$.getValue()) {
|
|
39
41
|
this.token$.next(null);
|
|
40
42
|
}
|
|
41
43
|
else if (TokenFactory.hasToken() && !this.token$.getValue()) {
|
|
42
44
|
this.token$.next(TokenFactory.getToken());
|
|
43
45
|
}
|
|
44
|
-
}
|
|
46
|
+
});
|
|
45
47
|
}
|
|
46
48
|
}
|
|
47
49
|
KoalaTokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: KoalaTokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -50,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
|
|
|
50
52
|
type: Injectable,
|
|
51
53
|
args: [{ providedIn: "any" }]
|
|
52
54
|
}], ctorParameters: function () { return []; } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEudG9rZW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy90b2tlbi9rb2FsYS50b2tlbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sR0FBRyxNQUFNLFlBQVksQ0FBQztBQUU3QixPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7O0FBWXpFLE1BQU0sT0FBTyxpQkFBaUI7SUFLNUI7UUFKUSxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVMsSUFBSSxDQUFDLENBQUM7UUFLakQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFhO1FBQzNCLElBQUksWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FBRTtRQUN6RCxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTdCLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDLGlDQUFpQyxFQUFFLENBQUMsQ0FBQztJQUN4SCxDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRU0sZUFBZTtRQUNwQixPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVNLFdBQVc7UUFDaEIsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRU8sYUFBYTtRQUNuQixZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNoRCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ3RELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3hCO2lCQUFNLElBQUksWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7YUFDM0M7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzhHQWhEVSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQURMLEtBQUs7MkZBQ2pCLGlCQUFpQjtrQkFEN0IsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgand0IGZyb20gJ2p3dC1kZWNvZGUnO1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgaW50ZXJ2YWwsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG9rZW5GYWN0b3J5IH0gZnJvbSBcIi4vdG9rZW4uZmFjdG9yeVwiO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkSGVscGVyIH0gZnJvbSBcIi4uLy4uL2hlbHBlcnMvbWF0LWZvcm0tZmllbGQuaGVscGVyXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS29hbGFPQXV0aDJUb2tlbkludGVyZmFjZSB7XG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIGlkVG9rZW46IHN0cmluZztcbiAgcmVmcmVzaFRva2VuOiBzdHJpbmc7XG4gIGxvZ2luOiBzdHJpbmc7XG4gIGV4cGlyZWQ6IG51bWJlcjtcbiAgY29kZTogc3RyaW5nO1xufVxuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogXCJhbnlcIn0pXG5leHBvcnQgY2xhc3MgS29hbGFUb2tlblNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHRva2VuJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPihudWxsKTtcbiAgcHJpdmF0ZSBpbnRlcnZhbFRva2VuOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgaW50ZXJ2YWxGaXhNYXRGb3JtRmllbGQ6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnZlcmlmeVNlc3Npb24oKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuaW50ZXJ2YWxUb2tlbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLmludGVydmFsRml4TWF0Rm9ybUZpZWxkPy51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHVibGljIHNldFRva2VuKHRva2VuOiBzdHJpbmcpIHtcbiAgICBpZiAoVG9rZW5GYWN0b3J5Lmhhc1Rva2VuKCkpIHsgdGhpcy50b2tlbiQubmV4dCh0b2tlbik7IH1cbiAgICBUb2tlbkZhY3Rvcnkuc2V0VG9rZW4odG9rZW4pO1xuXG4gICAgdGhpcy5pbnRlcnZhbEZpeE1hdEZvcm1GaWVsZCA9IGludGVydmFsKDEwMDApLnN1YnNjcmliZSgoKSA9PiBNYXRGb3JtRmllbGRIZWxwZXIuZml4RGlzYWJsZWRTdGF0ZUZvckRpc2FibGVkRmllbGRzKCkpO1xuICB9XG5cbiAgcHVibGljIGdldFRva2VuKCk6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy50b2tlbiQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0RGVjb2RlZFRva2VuPFQ+KCk6IFR8bnVsbCB7XG4gICAgcmV0dXJuIChUb2tlbkZhY3RvcnkuaGFzVG9rZW4oKSA/IGp3dChUb2tlbkZhY3RvcnkuZ2V0VG9rZW4oKSkgOiBudWxsKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRPQXV0aDJUb2tlbigpOiBLb2FsYU9BdXRoMlRva2VuSW50ZXJmYWNlfG51bGwge1xuICAgIHJldHVybiAoVG9rZW5GYWN0b3J5Lmhhc1Rva2VuKCkgPyBqd3QoVG9rZW5GYWN0b3J5LmdldFRva2VuKCkpIDogbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlVG9rZW4oKSB7XG4gICAgVG9rZW5GYWN0b3J5LnJlbW92ZVRva2VuKCk7XG4gICAgdGhpcy5pbnRlcnZhbEZpeE1hdEZvcm1GaWVsZD8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHByaXZhdGUgdmVyaWZ5U2Vzc2lvbigpIHtcbiAgICBUb2tlbkZhY3RvcnkuaW5pdCgpO1xuICAgIHRoaXMudG9rZW4kLm5leHQoVG9rZW5GYWN0b3J5LmdldFRva2VuKCkpO1xuICAgIHRoaXMuaW50ZXJ2YWxUb2tlbiA9IGludGVydmFsKDMwMCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIGlmICghVG9rZW5GYWN0b3J5Lmhhc1Rva2VuKCkgJiYgdGhpcy50b2tlbiQuZ2V0VmFsdWUoKSkge1xuICAgICAgICB0aGlzLnRva2VuJC5uZXh0KG51bGwpO1xuICAgICAgfSBlbHNlIGlmIChUb2tlbkZhY3RvcnkuaGFzVG9rZW4oKSAmJiAhdGhpcy50b2tlbiQuZ2V0VmFsdWUoKSkge1xuICAgICAgICB0aGlzLnRva2VuJC5uZXh0KFRva2VuRmFjdG9yeS5nZXRUb2tlbigpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -16,7 +16,7 @@ import * as i2$1 from '@angular/router';
|
|
|
16
16
|
import { NavigationError, NavigationEnd, NavigationCancel, NavigationStart, RouterModule } from '@angular/router';
|
|
17
17
|
import * as i7 from '@angular/material/core';
|
|
18
18
|
import { __awaiter } from 'tslib';
|
|
19
|
-
import { BehaviorSubject, Observable } from 'rxjs';
|
|
19
|
+
import { BehaviorSubject, interval, Observable } from 'rxjs';
|
|
20
20
|
import jwt from 'jwt-decode';
|
|
21
21
|
import * as i4 from '@koalarx/ui/menu';
|
|
22
22
|
import { menuStateSubject } from '@koalarx/ui/menu';
|
|
@@ -244,21 +244,39 @@ class TokenFactory {
|
|
|
244
244
|
}
|
|
245
245
|
}
|
|
246
246
|
|
|
247
|
+
class MatFormFieldHelper {
|
|
248
|
+
// Devido a mudanças constantes de estado dos campos de formulário, em certos casos o componente do Material Angular não se comporta conforme o esperado, devido a isso, este Helper tem essa função
|
|
249
|
+
static fixDisabledStateForDisabledFields() {
|
|
250
|
+
document.querySelectorAll(".mat-form-field input:disabled").forEach(inputEl => {
|
|
251
|
+
let matFormFieldElement;
|
|
252
|
+
let tmpElement;
|
|
253
|
+
do {
|
|
254
|
+
tmpElement = tmpElement ? tmpElement.parentElement : inputEl.parentElement;
|
|
255
|
+
if (tmpElement.classList.contains('mat-form-field')) {
|
|
256
|
+
matFormFieldElement = tmpElement;
|
|
257
|
+
}
|
|
258
|
+
} while (!matFormFieldElement);
|
|
259
|
+
matFormFieldElement === null || matFormFieldElement === void 0 ? void 0 : matFormFieldElement.classList.add('mat-form-field-disabled');
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
|
|
247
264
|
class KoalaTokenService {
|
|
248
265
|
constructor() {
|
|
249
266
|
this.token$ = new BehaviorSubject(null);
|
|
250
267
|
this.verifySession();
|
|
251
268
|
}
|
|
252
269
|
ngOnDestroy() {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
270
|
+
var _a, _b;
|
|
271
|
+
(_a = this.intervalToken) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
272
|
+
(_b = this.intervalFixMatFormField) === null || _b === void 0 ? void 0 : _b.unsubscribe();
|
|
256
273
|
}
|
|
257
274
|
setToken(token) {
|
|
258
275
|
if (TokenFactory.hasToken()) {
|
|
259
276
|
this.token$.next(token);
|
|
260
277
|
}
|
|
261
278
|
TokenFactory.setToken(token);
|
|
279
|
+
this.intervalFixMatFormField = interval(1000).subscribe(() => MatFormFieldHelper.fixDisabledStateForDisabledFields());
|
|
262
280
|
}
|
|
263
281
|
getToken() {
|
|
264
282
|
return this.token$;
|
|
@@ -270,19 +288,21 @@ class KoalaTokenService {
|
|
|
270
288
|
return (TokenFactory.hasToken() ? jwt(TokenFactory.getToken()) : null);
|
|
271
289
|
}
|
|
272
290
|
removeToken() {
|
|
291
|
+
var _a;
|
|
273
292
|
TokenFactory.removeToken();
|
|
293
|
+
(_a = this.intervalFixMatFormField) === null || _a === void 0 ? void 0 : _a.unsubscribe();
|
|
274
294
|
}
|
|
275
295
|
verifySession() {
|
|
276
296
|
TokenFactory.init();
|
|
277
297
|
this.token$.next(TokenFactory.getToken());
|
|
278
|
-
this.intervalToken =
|
|
298
|
+
this.intervalToken = interval(300).subscribe(() => {
|
|
279
299
|
if (!TokenFactory.hasToken() && this.token$.getValue()) {
|
|
280
300
|
this.token$.next(null);
|
|
281
301
|
}
|
|
282
302
|
else if (TokenFactory.hasToken() && !this.token$.getValue()) {
|
|
283
303
|
this.token$.next(TokenFactory.getToken());
|
|
284
304
|
}
|
|
285
|
-
}
|
|
305
|
+
});
|
|
286
306
|
}
|
|
287
307
|
}
|
|
288
308
|
KoalaTokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: KoalaTokenService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|