taxtank-core 0.17.12 → 0.17.15
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/bundles/taxtank-core.umd.js +118 -78
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/models/chat/chat.js +4 -1
- package/esm2015/lib/models/event/app-event-type.enum.js +35 -34
- package/esm2015/lib/services/auth/auth.service.js +20 -4
- package/esm2015/lib/services/http/chat/chat.service.js +16 -1
- package/esm2015/lib/services/http/user/user.service.js +7 -2
- package/fesm2015/taxtank-core.js +116 -79
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/models/chat/chat.d.ts +1 -0
- package/lib/models/event/app-event-type.enum.d.ts +34 -33
- package/lib/services/auth/auth.service.d.ts +13 -2
- package/lib/services/http/chat/chat.service.d.ts +4 -0
- package/package.json +1 -1
|
@@ -20,4 +20,7 @@ __decorate([
|
|
|
20
20
|
__decorate([
|
|
21
21
|
Type(() => User)
|
|
22
22
|
], Chat.prototype, "client", void 0);
|
|
23
|
-
|
|
23
|
+
__decorate([
|
|
24
|
+
Type(() => Date)
|
|
25
|
+
], Chat.prototype, "updatedAt", void 0);
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvY2hhdC9jaGF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxJQUFJLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sSUFBSyxTQUFRLFFBQVE7SUFVaEMsMkJBQTJCO0lBQzNCLG9CQUFvQjtJQUNwQiw0QkFBNEI7SUFFNUI7O09BRUc7SUFDSCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDL0MsQ0FBQztDQUNGO0FBbEJDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztzQ0FDRjtBQUdmO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztvQ0FDSjtBQUdiO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt1Q0FDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYXQgYXMgQ2hhdEJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvZmlybS9jaGF0JztcclxuaW1wb3J0IHsgQ2hhdFN0YXR1c0VudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGF0LXN0YXR1cy5lbnVtJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL3VzZXIvdXNlcic7XHJcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XHJcblxyXG5leHBvcnQgY2xhc3MgQ2hhdCBleHRlbmRzIENoYXRCYXNlIHtcclxuICBAVHlwZSgoKSA9PiBVc2VyKVxyXG4gIGVtcGxveWVlOiBVc2VyO1xyXG5cclxuICBAVHlwZSgoKSA9PiBVc2VyKVxyXG4gIGNsaWVudDogVXNlcjtcclxuXHJcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcclxuICB1cGRhdGVkQXQ6IERhdGU7XHJcblxyXG4gIC8vIEBUT0RPIHRlbXBvcmFyeSBkaXNhYmxlZFxyXG4gIC8vIEBUeXBlKCgpID0+IFVzZXIpXHJcbiAgLy8gdHlwaW5nVXNlcnM6IFVzZXJbXSA9IFtdO1xyXG5cclxuICAvKipcclxuICAgKiBDaGVjayBpZiBjaGF0IGlzIGFjdGl2ZVxyXG4gICAqL1xyXG4gIGlzQWN0aXZlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBDaGF0U3RhdHVzRW51bS5BQ1RJVkU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -10,38 +10,39 @@ export var AppEventTypeEnum;
|
|
|
10
10
|
AppEventTypeEnum[AppEventTypeEnum["CLIENT_INVITE_ACCEPTED"] = 7] = "CLIENT_INVITE_ACCEPTED";
|
|
11
11
|
AppEventTypeEnum[AppEventTypeEnum["CLIENT_OPEN_CHAT"] = 8] = "CLIENT_OPEN_CHAT";
|
|
12
12
|
AppEventTypeEnum[AppEventTypeEnum["CLIENT_TRANSFER_TO_OTHER_EMPLOYEE"] = 9] = "CLIENT_TRANSFER_TO_OTHER_EMPLOYEE";
|
|
13
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
14
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
15
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
16
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
17
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
18
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
19
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
20
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
21
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
22
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
23
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
24
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
25
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
26
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
27
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
28
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
29
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
30
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
31
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
32
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
33
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
34
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
35
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
36
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
37
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
38
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
39
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
40
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
41
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
42
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
43
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
44
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
45
|
-
AppEventTypeEnum[AppEventTypeEnum["
|
|
13
|
+
AppEventTypeEnum[AppEventTypeEnum["CURRENT_USER_GET_FAILED"] = 10] = "CURRENT_USER_GET_FAILED";
|
|
14
|
+
AppEventTypeEnum[AppEventTypeEnum["DEPRECIATION_DELETED"] = 11] = "DEPRECIATION_DELETED";
|
|
15
|
+
AppEventTypeEnum[AppEventTypeEnum["DEPRECIATIONS_CREATED"] = 12] = "DEPRECIATIONS_CREATED";
|
|
16
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_CREATED"] = 13] = "INCOME_SOURCES_CREATED";
|
|
17
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_UPDATED"] = 14] = "INCOME_SOURCES_UPDATED";
|
|
18
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_CREATED"] = 15] = "INCOME_SOURCES_FORECASTS_CREATED";
|
|
19
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_UPDATED"] = 16] = "INCOME_SOURCES_FORECASTS_UPDATED";
|
|
20
|
+
AppEventTypeEnum[AppEventTypeEnum["LOAN_UPDATED"] = 17] = "LOAN_UPDATED";
|
|
21
|
+
AppEventTypeEnum[AppEventTypeEnum["LOAN_PAYOUT_UPDATED"] = 18] = "LOAN_PAYOUT_UPDATED";
|
|
22
|
+
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_CREATED"] = 19] = "MESSAGE_CREATED";
|
|
23
|
+
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_CREATED"] = 20] = "MESSAGE_FILE_CREATED";
|
|
24
|
+
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_DELETED"] = 21] = "MESSAGE_FILE_DELETED";
|
|
25
|
+
AppEventTypeEnum[AppEventTypeEnum["NOTIFICATION_ADDED"] = 22] = "NOTIFICATION_ADDED";
|
|
26
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_UPDATED_WITH_DOCUMENT"] = 23] = "PROPERTY_UPDATED_WITH_DOCUMENT";
|
|
27
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_DOCUMENT_ADDED"] = 24] = "PROPERTY_DOCUMENT_ADDED";
|
|
28
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_CREATED"] = 25] = "PROPERTY_MOVEMENT_CREATED";
|
|
29
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_UPDATED"] = 26] = "PROPERTY_MOVEMENT_UPDATED";
|
|
30
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_DELETED"] = 27] = "PROPERTY_MOVEMENT_DELETED";
|
|
31
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SHARE_UPDATED"] = 28] = "PROPERTY_SHARE_UPDATED";
|
|
32
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_ADDED"] = 29] = "PROPERTY_SUBSCRIPTION_ADDED";
|
|
33
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_DELETED"] = 30] = "PROPERTY_SUBSCRIPTION_DELETED";
|
|
34
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_VALUATION_DOCUMENT_CREATED"] = 31] = "PROPERTY_VALUATION_DOCUMENT_CREATED";
|
|
35
|
+
AppEventTypeEnum[AppEventTypeEnum["SERVICE_SUBSCRIPTION_UPDATED"] = 32] = "SERVICE_SUBSCRIPTION_UPDATED";
|
|
36
|
+
AppEventTypeEnum[AppEventTypeEnum["TAX_REVIEW_UPDATED"] = 33] = "TAX_REVIEW_UPDATED";
|
|
37
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_CREATED"] = 34] = "TRANSACTION_CREATED";
|
|
38
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_DELETED"] = 35] = "TRANSACTION_DELETED";
|
|
39
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_UPDATED"] = 36] = "TRANSACTION_UPDATED";
|
|
40
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTIONS_CREATED"] = 37] = "TRANSACTIONS_CREATED";
|
|
41
|
+
AppEventTypeEnum[AppEventTypeEnum["USER_UPDATED"] = 38] = "USER_UPDATED";
|
|
42
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_UPDATED"] = 39] = "VEHICLE_CLAIM_UPDATED";
|
|
43
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_CREATED"] = 40] = "VEHICLE_CLAIM_CREATED";
|
|
44
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_CREATED"] = 41] = "VEHICLE_LOGBOOK_CREATED";
|
|
45
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_UPDATED"] = 42] = "VEHICLE_LOGBOOK_UPDATED";
|
|
46
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_DELETED"] = 43] = "VEHICLE_LOGBOOK_DELETED";
|
|
46
47
|
})(AppEventTypeEnum || (AppEventTypeEnum = {}));
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWV2ZW50LXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkE2Q1g7QUE3Q0QsV0FBWSxnQkFBZ0I7SUFDMUIsMkZBQXNCLENBQUE7SUFDdEIseUZBQXFCLENBQUE7SUFDckIsdUZBQW9CLENBQUE7SUFDcEIsdUZBQW9CLENBQUE7SUFDcEIsbUdBQTBCLENBQUE7SUFDMUIseUZBQXFCLENBQUE7SUFDckIsK0ZBQXdCLENBQUE7SUFDeEIsMkZBQXNCLENBQUE7SUFDdEIsK0VBQWdCLENBQUE7SUFDaEIsaUhBQWlDLENBQUE7SUFDakMsOEZBQXVCLENBQUE7SUFDdkIsd0ZBQW9CLENBQUE7SUFDcEIsMEZBQXFCLENBQUE7SUFDckIsNEZBQXNCLENBQUE7SUFDdEIsNEZBQXNCLENBQUE7SUFDdEIsZ0hBQWdDLENBQUE7SUFDaEMsZ0hBQWdDLENBQUE7SUFDaEMsd0VBQVksQ0FBQTtJQUNaLHNGQUFtQixDQUFBO0lBQ25CLDhFQUFlLENBQUE7SUFDZix3RkFBb0IsQ0FBQTtJQUNwQix3RkFBb0IsQ0FBQTtJQUNwQixvRkFBa0IsQ0FBQTtJQUNsQiw0R0FBOEIsQ0FBQTtJQUM5Qiw4RkFBdUIsQ0FBQTtJQUN2QixrR0FBeUIsQ0FBQTtJQUN6QixrR0FBeUIsQ0FBQTtJQUN6QixrR0FBeUIsQ0FBQTtJQUN6Qiw0RkFBc0IsQ0FBQTtJQUN0QixzR0FBMkIsQ0FBQTtJQUMzQiwwR0FBNkIsQ0FBQTtJQUM3QixzSEFBbUMsQ0FBQTtJQUNuQyx3R0FBNEIsQ0FBQTtJQUM1QixvRkFBa0IsQ0FBQTtJQUNsQixzRkFBbUIsQ0FBQTtJQUNuQixzRkFBbUIsQ0FBQTtJQUNuQixzRkFBbUIsQ0FBQTtJQUNuQix3RkFBb0IsQ0FBQTtJQUNwQix3RUFBWSxDQUFBO0lBQ1osMEZBQXFCLENBQUE7SUFDckIsMEZBQXFCLENBQUE7SUFDckIsOEZBQXVCLENBQUE7SUFDdkIsOEZBQXVCLENBQUE7SUFDdkIsOEZBQXVCLENBQUE7QUFDekIsQ0FBQyxFQTdDVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBNkMzQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFwcEV2ZW50VHlwZUVudW0ge1xuICBDTElFTlRfTU9WRU1FTlRfQ0xPU0VELFxuICBCQU5LX0NPTk5FQ1RJT05fQURERUQsXG4gIEJBTktfQUNDT1VOVF9DUkVBVEVELFxuICBCQU5LX0FDQ09VTlRfVVBEQVRFRCxcbiAgQkFOS19UUkFOU0FDVElPTl9BTExPQ0FURUQsXG4gIEJBU0lRX0NPTlNFTlRfVVBEQVRFRCxcbiAgQkFTSVFfQ09OTkVDVElPTl9VUERBVEVELFxuICBDTElFTlRfSU5WSVRFX0FDQ0VQVEVELFxuICBDTElFTlRfT1BFTl9DSEFULFxuICBDTElFTlRfVFJBTlNGRVJfVE9fT1RIRVJfRU1QTE9ZRUUsXG4gIENVUlJFTlRfVVNFUl9HRVRfRkFJTEVELFxuICBERVBSRUNJQVRJT05fREVMRVRFRCxcbiAgREVQUkVDSUFUSU9OU19DUkVBVEVELFxuICBJTkNPTUVfU09VUkNFU19DUkVBVEVELFxuICBJTkNPTUVfU09VUkNFU19VUERBVEVELFxuICBJTkNPTUVfU09VUkNFU19GT1JFQ0FTVFNfQ1JFQVRFRCxcbiAgSU5DT01FX1NPVVJDRVNfRk9SRUNBU1RTX1VQREFURUQsXG4gIExPQU5fVVBEQVRFRCxcbiAgTE9BTl9QQVlPVVRfVVBEQVRFRCxcbiAgTUVTU0FHRV9DUkVBVEVELFxuICBNRVNTQUdFX0ZJTEVfQ1JFQVRFRCxcbiAgTUVTU0FHRV9GSUxFX0RFTEVURUQsXG4gIE5PVElGSUNBVElPTl9BRERFRCxcbiAgUFJPUEVSVFlfVVBEQVRFRF9XSVRIX0RPQ1VNRU5ULFxuICBQUk9QRVJUWV9ET0NVTUVOVF9BRERFRCxcbiAgUFJPUEVSVFlfTU9WRU1FTlRfQ1JFQVRFRCxcbiAgUFJPUEVSVFlfTU9WRU1FTlRfVVBEQVRFRCxcbiAgUFJPUEVSVFlfTU9WRU1FTlRfREVMRVRFRCxcbiAgUFJPUEVSVFlfU0hBUkVfVVBEQVRFRCxcbiAgUFJPUEVSVFlfU1VCU0NSSVBUSU9OX0FEREVELFxuICBQUk9QRVJUWV9TVUJTQ1JJUFRJT05fREVMRVRFRCxcbiAgUFJPUEVSVFlfVkFMVUFUSU9OX0RPQ1VNRU5UX0NSRUFURUQsXG4gIFNFUlZJQ0VfU1VCU0NSSVBUSU9OX1VQREFURUQsXG4gIFRBWF9SRVZJRVdfVVBEQVRFRCxcbiAgVFJBTlNBQ1RJT05fQ1JFQVRFRCxcbiAgVFJBTlNBQ1RJT05fREVMRVRFRCxcbiAgVFJBTlNBQ1RJT05fVVBEQVRFRCxcbiAgVFJBTlNBQ1RJT05TX0NSRUFURUQsXG4gIFVTRVJfVVBEQVRFRCxcbiAgVkVISUNMRV9DTEFJTV9VUERBVEVELFxuICBWRUhJQ0xFX0NMQUlNX0NSRUFURUQsXG4gIFZFSElDTEVfTE9HQk9PS19DUkVBVEVELFxuICBWRUhJQ0xFX0xPR0JPT0tfVVBEQVRFRCxcbiAgVkVISUNMRV9MT0dCT09LX0RFTEVURURcbn1cbiJdfQ==
|
|
@@ -1,16 +1,32 @@
|
|
|
1
1
|
import { BehaviorSubject } from 'rxjs';
|
|
2
2
|
import { Inject, Injectable } from '@angular/core';
|
|
3
3
|
import { map } from 'rxjs/operators';
|
|
4
|
+
import { AppEventTypeEnum } from "../../models/event/app-event-type.enum";
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@angular/common/http";
|
|
6
7
|
import * as i2 from "./jwt.service";
|
|
8
|
+
import * as i3 from "../event/event-dispatcher.service";
|
|
7
9
|
export class AuthService {
|
|
8
|
-
constructor(http, jwtService, environment) {
|
|
10
|
+
constructor(http, jwtService, eventDispatcherService, environment) {
|
|
9
11
|
this.http = http;
|
|
10
12
|
this.jwtService = jwtService;
|
|
13
|
+
this.eventDispatcherService = eventDispatcherService;
|
|
11
14
|
this.environment = environment;
|
|
15
|
+
this.listenEvents();
|
|
12
16
|
this.isLoggedInSubject = new BehaviorSubject(!this.jwtService.isTokenExpired());
|
|
13
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Listen to Event Dispatcher events
|
|
20
|
+
*/
|
|
21
|
+
listenEvents() {
|
|
22
|
+
this.listenUserGetFailed();
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* User logout if failed current user get
|
|
26
|
+
*/
|
|
27
|
+
listenUserGetFailed() {
|
|
28
|
+
this.eventDispatcherService.on(AppEventTypeEnum.CURRENT_USER_GET_FAILED).subscribe(() => this.logoutFront());
|
|
29
|
+
}
|
|
14
30
|
setAuth(response) {
|
|
15
31
|
this.jwtService.saveTokens(response);
|
|
16
32
|
this.isLoggedInSubject.next(true);
|
|
@@ -32,15 +48,15 @@ export class AuthService {
|
|
|
32
48
|
location.replace(url);
|
|
33
49
|
}
|
|
34
50
|
}
|
|
35
|
-
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.JwtService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
51
|
+
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: i2.JwtService }, { token: i3.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
36
52
|
AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, providedIn: 'root' });
|
|
37
53
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, decorators: [{
|
|
38
54
|
type: Injectable,
|
|
39
55
|
args: [{
|
|
40
56
|
providedIn: 'root'
|
|
41
57
|
}]
|
|
42
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.JwtService }, { type: undefined, decorators: [{
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.JwtService }, { type: i3.EventDispatcherService }, { type: undefined, decorators: [{
|
|
43
59
|
type: Inject,
|
|
44
60
|
args: ['environment']
|
|
45
61
|
}] }]; } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2F1dGgvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHakQsT0FBTyxFQUFDLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR25DLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHdDQUF3QyxDQUFDOzs7OztBQUt4RSxNQUFNLE9BQU8sV0FBVztJQUd0QixZQUNVLElBQWdCLEVBQ2hCLFVBQXNCLEVBQ3RCLHNCQUE4QyxFQUN2QixXQUFnQjtRQUh2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUUvQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUMvRyxDQUFDO0lBRUQsT0FBTyxDQUFDLFFBQWE7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQWdCLEVBQUUsUUFBZ0I7UUFDdEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxjQUFjLEVBQUUsRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3ZGLEdBQUcsQ0FBQyxDQUFDLFFBQWEsRUFBRSxFQUFFO1lBQ3BCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkIsT0FBTyxRQUFRLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPLENBQUMsWUFBb0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxnQkFBZ0IsRUFBRSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUNyRixHQUFHLENBQUMsQ0FBQyxRQUFhLEVBQUUsRUFBRTtZQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQWMsUUFBUTtRQUNoQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4QixDQUFDOzt5R0FyRFUsV0FBVyw0R0FPWixhQUFhOzZHQVBaLFdBQVcsY0FGVixNQUFNOzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFRSSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7Snd0U2VydmljZX0gZnJvbSAnLi9qd3Quc2VydmljZSc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtJRXZlbnRMaXN0ZW5lcn0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlXCI7XG5pbXBvcnQge0V2ZW50RGlzcGF0Y2hlclNlcnZpY2V9IGZyb20gXCIuLi9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnNlcnZpY2VcIjtcbmltcG9ydCB7QXBwRXZlbnRUeXBlRW51bX0gZnJvbSBcIi4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQtdHlwZS5lbnVtXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXJ7XG4gIGlzTG9nZ2VkSW5TdWJqZWN0OiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgand0U2VydmljZTogSnd0U2VydmljZSxcbiAgICBwcml2YXRlIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2U6IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcml2YXRlIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgICB0aGlzLmlzTG9nZ2VkSW5TdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdCghdGhpcy5qd3RTZXJ2aWNlLmlzVG9rZW5FeHBpcmVkKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudCBEaXNwYXRjaGVyIGV2ZW50c1xuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuVXNlckdldEZhaWxlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZXIgbG9nb3V0IGlmIGZhaWxlZCBjdXJyZW50IHVzZXIgZ2V0XG4gICAqL1xuICBsaXN0ZW5Vc2VyR2V0RmFpbGVkKCkge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLkNVUlJFTlRfVVNFUl9HRVRfRkFJTEVEKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5sb2dvdXRGcm9udCgpKTtcbiAgfVxuXG4gIHNldEF1dGgocmVzcG9uc2U6IGFueSkge1xuICAgIHRoaXMuand0U2VydmljZS5zYXZlVG9rZW5zKHJlc3BvbnNlKTtcbiAgICB0aGlzLmlzTG9nZ2VkSW5TdWJqZWN0Lm5leHQodHJ1ZSk7XG4gIH1cblxuICBsb2dpbih1c2VybmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2xvZ2luX2NoZWNrYCwge3VzZXJuYW1lLCBwYXNzd29yZH0pLnBpcGUoXG4gICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5zZXRBdXRoKHJlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcmVmcmVzaChyZWZyZXNoVG9rZW46IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS90b2tlbi9yZWZyZXNoYCwgeyByZWZyZXNoVG9rZW4gfSkucGlwZShcbiAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnNldEF1dGgocmVzcG9uc2UpO1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBsb2dvdXRGcm9udCh1cmw6IHN0cmluZyA9ICcvbG9naW4nKTogdm9pZCB7XG4gICAgbG9jYWxTdG9yYWdlLmNsZWFyKCk7XG4gICAgbG9jYXRpb24ucmVwbGFjZSh1cmwpO1xuICB9XG59XG4iXX0=
|
|
@@ -4,6 +4,7 @@ import cloneDeep from 'lodash/cloneDeep';
|
|
|
4
4
|
import { replace } from '../../../functions/array';
|
|
5
5
|
import { plainToClass } from 'class-transformer';
|
|
6
6
|
import { Chat } from '../../../models/chat/chat';
|
|
7
|
+
import { AppEventTypeEnum } from '../../../models/event/app-event-type.enum';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
import * as i1 from "@angular/common/http";
|
|
9
10
|
import * as i2 from "../../event/event-dispatcher.service";
|
|
@@ -24,6 +25,7 @@ export class ChatService extends RestService {
|
|
|
24
25
|
this.url = 'chats';
|
|
25
26
|
this.isHydra = true;
|
|
26
27
|
this.listenChats();
|
|
28
|
+
this.listenMessages();
|
|
27
29
|
}
|
|
28
30
|
/**
|
|
29
31
|
* Listen chats events
|
|
@@ -58,6 +60,19 @@ export class ChatService extends RestService {
|
|
|
58
60
|
this.updateCache();
|
|
59
61
|
});
|
|
60
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Update chat's 'updatedAt' field with the last chat's message date for chat list sorting
|
|
65
|
+
*/
|
|
66
|
+
listenMessages() {
|
|
67
|
+
this.eventDispatcherService.on(AppEventTypeEnum.MESSAGE_CREATED).subscribe((message) => {
|
|
68
|
+
const cache = cloneDeep(this.cache);
|
|
69
|
+
const updatedChat = cache.find((chat) => chat.id === message.chat.id);
|
|
70
|
+
updatedChat.updatedAt = message.createdAt;
|
|
71
|
+
replace(cache, updatedChat);
|
|
72
|
+
this.cache = cache;
|
|
73
|
+
this.updateCache();
|
|
74
|
+
});
|
|
75
|
+
}
|
|
61
76
|
}
|
|
62
77
|
ChatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }, { token: i3.ToastService }, { token: i4.SseService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
78
|
ChatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, providedIn: 'root' });
|
|
@@ -70,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
70
85
|
type: Inject,
|
|
71
86
|
args: ['environment']
|
|
72
87
|
}] }, { type: i3.ToastService }, { type: i4.SseService }]; } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvY2hhdC9jaGF0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSWpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOzs7Ozs7QUFFN0U7O0dBRUc7QUFJSCxNQUFNLE9BQU8sV0FBWSxTQUFRLFdBQTJCO0lBSzFELFlBQ1ksSUFBZ0IsRUFDaEIsc0JBQThDLEVBQ3ZCLFdBQWdCLEVBQ3ZDLFlBQTBCLEVBQzVCLFVBQXNCO1FBRTlCLEtBQUssQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBTnJELFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUN2QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUM1QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBVGhDLGVBQVUsR0FBZ0IsSUFBSSxDQUFDO1FBQy9CLFFBQUcsR0FBVyxPQUFPLENBQUM7UUFDdEIsWUFBTyxHQUFZLElBQUksQ0FBQztRQVV0QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFrQixFQUFRLEVBQUU7WUFDakUsSUFBSSxLQUFLLEdBQVcsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMxQywyQkFBMkI7WUFDM0IsTUFBTSxTQUFTLEdBQVMsWUFBWSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNyRCwyQkFBMkI7WUFDM0IsTUFBTSxVQUFVLEdBQVMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVUsRUFBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7WUFFdkYsUUFBUSxJQUFJLEVBQUU7Z0JBQ1osZUFBZTtnQkFDZixLQUFLLENBQUMsQ0FBQyxVQUFVLENBQUM7b0JBQ2hCLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ3RCLE1BQU07Z0JBRVIsMEJBQTBCO2dCQUMxQixLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRTtvQkFDeEIsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFVLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUN4RSxNQUFNO2dCQUVSLHVDQUF1QztnQkFDdkMsS0FBSyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ25ELE9BQU8sQ0FBQyxLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUM7b0JBQzFCLE1BQU07Z0JBRVIsMkZBQTJGO2dCQUMzRixnQ0FBZ0M7Z0JBQ2hDLFdBQVc7Z0JBQ1gsK0RBQStEO2dCQUMvRCx1Q0FBdUM7YUFDeEM7WUFFRCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxjQUFjO1FBQ3BCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsT0FBZ0IsRUFBRSxFQUFFO1lBQzlGLE1BQU0sS0FBSyxHQUFXLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUMsTUFBTSxXQUFXLEdBQVMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQVUsRUFBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNGLFdBQVcsQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztZQUUxQyxPQUFPLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1lBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3lHQXJFVSxXQUFXLGtGQVFaLGFBQWE7NkdBUlosV0FBVyxjQUZWLE1BQU07NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQVNJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhdCBhcyBDaGF0QmFzZSB9IGZyb20gJy4uLy4uLy4uL2RiL01vZGVscy9maXJtL2NoYXQnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFNzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudC9zc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uL3Jlc3QvcmVzdC5zZXJ2aWNlJztcbmltcG9ydCBjbG9uZURlZXAgZnJvbSAnbG9kYXNoL2Nsb25lRGVlcCc7XG5pbXBvcnQgeyByZXBsYWNlIH0gZnJvbSAnLi4vLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IENoYXQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvY2hhdC9jaGF0JztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9hc3QvdG9hc3Quc2VydmljZSc7XG5pbXBvcnQgeyBNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2NoYXQvbWVzc2FnZSc7XG5pbXBvcnQgeyBBcHBFdmVudFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudC10eXBlLmVudW0nO1xuXG4vKipcbiAqIFNlcnZpY2UgZm9yIHdvcmsgd2l0aCBjaGF0c1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDaGF0U2VydmljZSBleHRlbmRzIFJlc3RTZXJ2aWNlPENoYXRCYXNlLCBDaGF0PiB7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBDaGF0ID0gQ2hhdDtcbiAgdXJsOiBzdHJpbmcgPSAnY2hhdHMnO1xuICBpc0h5ZHJhOiBib29sZWFuID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55LFxuICAgIHByb3RlY3RlZCB0b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSxcbiAgICBwcml2YXRlIHNzZVNlcnZpY2U6IFNzZVNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQsIHRvYXN0U2VydmljZSk7XG4gICAgdGhpcy5saXN0ZW5DaGF0cygpO1xuICAgIHRoaXMubGlzdGVuTWVzc2FnZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gY2hhdHMgZXZlbnRzXG4gICAqL1xuICBsaXN0ZW5DaGF0cygpOiB2b2lkIHtcbiAgICB0aGlzLnNzZVNlcnZpY2Uub24oYGNoYXRzYCkuc3Vic2NyaWJlKChjaGF0QmFzZTogQ2hhdEJhc2UpOiB2b2lkID0+IHtcbiAgICAgIGxldCBjYWNoZTogQ2hhdFtdID0gY2xvbmVEZWVwKHRoaXMuY2FjaGUpO1xuICAgICAgLy8gY2hhdCBpbnN0YW5jZSBmcm9tIGV2ZW50XG4gICAgICBjb25zdCBldmVudENoYXQ6IENoYXQgPSBwbGFpblRvQ2xhc3MoQ2hhdCwgY2hhdEJhc2UpO1xuICAgICAgLy8gY2hhdCBpbnN0YW5jZSBmcm9tIGNhY2hlXG4gICAgICBjb25zdCBjYWNoZWRDaGF0OiBDaGF0ID0gY2FjaGUuZmluZCgoY2hhdDogQ2hhdCk6IGJvb2xlYW4gPT4gY2hhdC5pZCA9PT0gZXZlbnRDaGF0LmlkKTtcblxuICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgIC8vIGFkZCBuZXcgY2hhdFxuICAgICAgICBjYXNlICghY2FjaGVkQ2hhdCk6XG4gICAgICAgICAgY2FjaGUucHVzaChldmVudENoYXQpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIC8vIHJlbW92ZSBkZWFjdGl2YXRlZCBjaGF0XG4gICAgICAgIGNhc2UgIWV2ZW50Q2hhdC5pc0FjdGl2ZSgpOlxuICAgICAgICAgIGNhY2hlID0gY2FjaGUuZmlsdGVyKChjaGF0OiBDaGF0KTogYm9vbGVhbiA9PiBjaGF0LmlkICE9PSBldmVudENoYXQuaWQpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIC8vIHVwZGF0ZSBjaGF0IHdpdGggbmV3IGZpcm0gKHJlYXNzaWduKVxuICAgICAgICBjYXNlIGV2ZW50Q2hhdC5lbXBsb3llZS5pZCAhPT0gY2FjaGVkQ2hhdC5lbXBsb3llZS5pZDpcbiAgICAgICAgICByZXBsYWNlKGNhY2hlLCBldmVudENoYXQpO1xuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIC8vIEBUT0RPIHR5cGluZyB3b3JrcyBiYWQgd2l0aCBtYXQtdGFicyBvbiB1c2VyLWFyZWEuIE5lZWQgdG8gcmVmYWN0b3IgdHlwaW5nIGZ1bmN0aW9uYWxpdHlcbiAgICAgICAgLy8gdXBkYXRlIGNhY2hlIHdpdGggdHlwaW5nIHVzZXJcbiAgICAgICAgLy8gZGVmYXVsdDpcbiAgICAgICAgLy8gY2FjaGVkQ2hhdC50eXBpbmdVc2Vycy5wdXNoKG5ldyBVc2VyKGV2ZW50Q2hhdC50eXBpbmdVc2VyKSk7XG4gICAgICAgIC8vIHJlcGxhY2UoY2FjaGUsIF8uY2xvbmUoY2FjaGVkQ2hhdCkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNhY2hlID0gY2FjaGU7XG4gICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGNoYXQncyAndXBkYXRlZEF0JyBmaWVsZCB3aXRoIHRoZSBsYXN0IGNoYXQncyBtZXNzYWdlIGRhdGUgZm9yIGNoYXQgbGlzdCBzb3J0aW5nXG4gICAqL1xuICBwcml2YXRlIGxpc3Rlbk1lc3NhZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLk1FU1NBR0VfQ1JFQVRFRCkuc3Vic2NyaWJlKChtZXNzYWdlOiBNZXNzYWdlKSA9PiB7XG4gICAgICBjb25zdCBjYWNoZTogQ2hhdFtdID0gY2xvbmVEZWVwKHRoaXMuY2FjaGUpO1xuICAgICAgY29uc3QgdXBkYXRlZENoYXQ6IENoYXQgPSBjYWNoZS5maW5kKChjaGF0OiBDaGF0KTogYm9vbGVhbiA9PiBjaGF0LmlkID09PSBtZXNzYWdlLmNoYXQuaWQpO1xuICAgICAgdXBkYXRlZENoYXQudXBkYXRlZEF0ID0gbWVzc2FnZS5jcmVhdGVkQXQ7XG5cbiAgICAgIHJlcGxhY2UoY2FjaGUsIHVwZGF0ZWRDaGF0KTtcbiAgICAgIHRoaXMuY2FjaGUgPSBjYWNoZTtcbiAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -30,7 +30,12 @@ export class UserService {
|
|
|
30
30
|
}
|
|
31
31
|
get() {
|
|
32
32
|
if (!this.cache) {
|
|
33
|
-
this.fetch().subscribe()
|
|
33
|
+
this.fetch().subscribe(() => { }, (error) => {
|
|
34
|
+
// force logout user (clear localStorage) when get current user return error
|
|
35
|
+
if (error.status === 500) {
|
|
36
|
+
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CURRENT_USER_GET_FAILED, null));
|
|
37
|
+
}
|
|
38
|
+
});
|
|
34
39
|
}
|
|
35
40
|
return this.cacheSubject.asObservable();
|
|
36
41
|
}
|
|
@@ -160,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
160
165
|
type: Inject,
|
|
161
166
|
args: ['environment']
|
|
162
167
|
}] }]; } });
|
|
163
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvdXNlci91c2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRzdFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFLakM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sV0FBVztJQUl0QixZQUNVLElBQWdCLEVBQ2hCLFVBQXNCLEVBQ3RCLHNCQUE4QyxFQUM5QyxVQUFzQixFQUNDLFdBQWdCO1FBSnZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDQyxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQVBqRCxpQkFBWSxHQUF3QixJQUFJLGFBQWEsQ0FBTyxDQUFDLENBQUMsQ0FBQztRQVM3RCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMseUJB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TCxDQUFDOzt5R0F2S1UsV0FBVyxzSUFTWixhQUFhOzZHQVRaLFdBQVcsY0FGVixNQUFNOzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFVSSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVc2VyIGFzIFVzZXJCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZGIvTW9kZWxzL3VzZXIvdXNlcic7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3VzZXIvdXNlcic7XG5pbXBvcnQgeyBBcHBFdmVudCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQnO1xuaW1wb3J0IHsgQXBwRXZlbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgSnd0U2VydmljZSB9IGZyb20gJy4uLy4uL2F1dGgvand0LnNlcnZpY2UnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IGNsb25lIGZyb20gJ2xvZGFzaC9jbG9uZSc7XG5pbXBvcnQge1NlcnZpY2VTdWJzY3JpcHRpb259IGZyb20gJy4uLy4uLy4uL21vZGVscy9zZXJ2aWNlLXN1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbic7XG5pbXBvcnQge1NzZVNlcnZpY2V9IGZyb20gJy4uLy4uL2V2ZW50L3NzZS5zZXJ2aWNlJztcbmltcG9ydCB7SUV2ZW50TGlzdGVuZXJ9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIHdvcmsgd2l0aCB1c2VyXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJTZXJ2aWNlIGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBjYWNoZTogVXNlcjtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PFVzZXI+ID0gbmV3IFJlcGxheVN1YmplY3Q8VXNlcj4oMSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgand0U2VydmljZTogSnd0U2VydmljZSxcbiAgICBwcml2YXRlIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2U6IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBzc2VTZXJ2aWNlOiBTc2VTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55XG4gICkge1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5TZXJ2aWNlU3Vic2NyaXB0aW9uVXBkYXRlZCgpO1xuICAgIHRoaXMubGlzdGVuQmFzaXFDb25jZW50VXBkYXRlZCgpO1xuICB9XG5cbiAgZ2V0KCk6IE9ic2VydmFibGU8VXNlcj4ge1xuICAgIGlmICghdGhpcy5jYWNoZSkge1xuICAgICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY3VycmVudCB1c2VyXG4gICAqL1xuICBmZXRjaCgpOiBPYnNlcnZhYmxlPFVzZXI+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy9jdXJyZW50YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHVzZXJCYXNlOiBVc2VyQmFzZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVzZXI6IFVzZXIgPSBwbGFpblRvQ2xhc3MoVXNlciwgdXNlckJhc2UpO1xuXG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3VzZXJJZCcsIHVzZXIuaWQudG9TdHJpbmcoKSk7XG4gICAgICAgICAgLy8gQFRPRE8gcmVtb3ZlXG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2ZpbmFuY2lhbFllYXInLCB1c2VyLmZpbmFuY2lhbFllYXIudG9TdHJpbmcoKSk7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHVzZXI7XG4gICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcblxuICAgICAgICAgIHJldHVybiB1c2VyO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciBuZXcgdXNlclxuICAgKi9cbiAgcmVnaXN0ZXIoZGF0YTogb2JqZWN0KTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcmVnaXN0cmF0aW9uYCwgZGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHVzZXJcbiAgICovXG4gIHVwZGF0ZSh1c2VyOiBVc2VyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvJHt1c2VyLmlkfWAsIHVzZXIpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1c2VyQmFzZTogVXNlckJhc2UpID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gcGxhaW5Ub0NsYXNzKFVzZXIsIHVzZXJCYXNlKTtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVVNFUl9VUERBVEVELCBudWxsKSk7XG4gICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlIHVzZXIgcGFzc3dvcmRcbiAgICovXG4gIGNoYW5nZVBhc3N3b3JkKGN1cnJlbnRQYXNzd29yZDogc3RyaW5nLCBuZXdQYXNzd29yZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy9wYXNzd29yZC9jaGFuZ2VgLCB7Y3VycmVudFBhc3N3b3JkLCBuZXdQYXNzd29yZH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY292ZXJ5IHVzZXIgcGFzc3dvcmRcbiAgICovXG4gIHJlY292ZXJ5UGFzc3dvcmQoZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcGFzc3dvcmQvcmVjb3ZlcnlgLCB7ZW1haWx9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCB1c2VyIHBhc3N3b3JkXG4gICAqL1xuICByZXNldFBhc3N3b3JkKG5ld1Bhc3N3b3JkOiBzdHJpbmcsIHJlc2V0VG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcGFzc3dvcmQvcmVzZXRgLCB7bmV3UGFzc3dvcmQsIHJlc2V0VG9rZW59KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maXJtIHJlZ2lzdGVyZWQgdXNlclxuICAgKi9cbiAgY29uZmlybSh2ZXJpZmljYXRpb25Db2RlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy9jb25maXJtYXRpb25gLCB7dmVyaWZpY2F0aW9uQ29kZX0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaCBleGlzdGluZyB1c2VyXG4gICAqL1xuICBzZWFyY2goZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8VXNlcj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L3VzZXJzL3NlYXJjaD9lbWFpbD0ke2VtYWlsfWApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1c2VyQmFzZTogVXNlckJhc2UpID0+IHtcbiAgICAgICAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFVzZXIsIHVzZXJCYXNlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmluaXNoIG9uYm9hcmRpbmcgcHJvY2Vzc1xuICAgKi9cbiAgZmluaXNoT25ib2FyZGluZyh1c2VyOiBVc2VyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvc3RhdHVzYCwgdXNlcilcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB1c2VyO1xuICAgICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB1c2VyIHBob3RvXG4gICAqL1xuICB1cGRhdGVQaG90byhwaG90bzogRm9ybURhdGEpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcGhvdG8/X21ldGhvZD1QVVRgLCBwaG90bylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHBob3RvVXJsOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gcGxhaW5Ub0NsYXNzKFVzZXIsIE9iamVjdC5hc3NpZ24odGhpcy5jYWNoZSwge3Bob3RvOiBwaG90b1VybH0pKTtcbiAgICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSdW4gZm9yZWNhc3QgdXBkYXRlIHNjcmlwdCBvbiBiYWNrZW5kIHdoZW4gdXNlciBzd2l0Y2hlZCBmaW5hbmNpYWwgeWVhclxuICAgKi9cbiAgc3dpdGNoRmluYW5jaWFsWWVhcigpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2ZpbmFuY2lhbC15ZWFyL3N3aXRjaGApO1xuICB9XG5cbiAgLyoqXG4gICAqIGNsZWFyIHNlcnZpY2UgY2FjaGVcbiAgICovXG4gIHJlc2V0Q2FjaGUoKTogdm9pZCB7XG4gICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBjYWNoZSB3aGVuIHVzZXIncyBzZXJ2aWNlIHN1YnNjcmlwdGlvbiBpcyB1cGRhdGVkXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblNlcnZpY2VTdWJzY3JpcHRpb25VcGRhdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlNFUlZJQ0VfU1VCU0NSSVBUSU9OX1VQREFURUQpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlc2V0Q2FjaGUoKSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkJhc2lxQ29uY2VudFVwZGF0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uQkFTSVFfQ09OU0VOVF9VUERBVEVEKS5zdWJzY3JpYmUoKGlzQ29uZmlybWVkOiBib29sZWFuKSA9PiB7XG4gICAgICBpZiAoIWlzQ29uZmlybWVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdXNlciA9IGNsb25lKHRoaXMuY2FjaGUpO1xuICAgICAgdXNlci5jbGllbnREZXRhaWxzLmJhc2lxQ29uc2VudEV4aXN0ID0gdHJ1ZTtcblxuICAgICAgdGhpcy5jYWNoZSA9IHVzZXI7XG4gICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvdXNlci91c2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRzdFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFNakM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sV0FBVztJQUl0QixZQUNVLElBQWdCLEVBQ2hCLFVBQXNCLEVBQ3RCLHNCQUE4QyxFQUM5QyxVQUFzQixFQUNDLFdBQWdCO1FBSnZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQzlDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDQyxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQVBqRCxpQkFBWSxHQUF3QixJQUFJLGFBQWEsQ0FBTyxDQUFDLENBQUMsQ0FBQztRQVM3RCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMseUJB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RCxNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1lBRTVDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3lHQTVLVSxXQUFXLHNJQVNaLGFBQWE7NkdBVFosV0FBVyxjQUZWLE1BQU07NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQVVJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVzZXIgYXMgVXNlckJhc2UgfSBmcm9tICcuLi8uLi8uLi9kYi9Nb2RlbHMvdXNlci91c2VyJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvdXNlci91c2VyJztcbmltcG9ydCB7IEFwcEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudCc7XG5pbXBvcnQgeyBBcHBFdmVudFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uLy4uL2V2ZW50L2V2ZW50LWRpc3BhdGNoZXIuc2VydmljZSc7XG5pbXBvcnQgeyBKd3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYXV0aC9qd3Quc2VydmljZSc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgY2xvbmUgZnJvbSAnbG9kYXNoL2Nsb25lJztcbmltcG9ydCB7U2VydmljZVN1YnNjcmlwdGlvbn0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7U3NlU2VydmljZX0gZnJvbSAnLi4vLi4vZXZlbnQvc3NlLnNlcnZpY2UnO1xuaW1wb3J0IHtJRXZlbnRMaXN0ZW5lcn0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9ldmVudC1saXN0ZW5lci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbi8qKlxuICogU2VydmljZSB0byB3b3JrIHdpdGggdXNlclxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyU2VydmljZSBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgY2FjaGU6IFVzZXI7XG4gIGNhY2hlU3ViamVjdDogUmVwbGF5U3ViamVjdDxVc2VyPiA9IG5ldyBSZXBsYXlTdWJqZWN0PFVzZXI+KDEpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGp3dFNlcnZpY2U6IEp3dFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3NlU2VydmljZTogU3NlU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByaXZhdGUgZW52aXJvbm1lbnQ6IGFueVxuICApIHtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuU2VydmljZVN1YnNjcmlwdGlvblVwZGF0ZWQoKTtcbiAgICB0aGlzLmxpc3RlbkJhc2lxQ29uY2VudFVwZGF0ZWQoKTtcbiAgfVxuXG4gIGdldCgpOiBPYnNlcnZhYmxlPFVzZXI+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuZmV0Y2goKS5zdWJzY3JpYmUoKCkgPT4ge30sIChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgLy8gZm9yY2UgbG9nb3V0IHVzZXIgKGNsZWFyIGxvY2FsU3RvcmFnZSkgd2hlbiBnZXQgY3VycmVudCB1c2VyIHJldHVybiBlcnJvclxuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA1MDApIHtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQ1VSUkVOVF9VU0VSX0dFVF9GQUlMRUQsIG51bGwpKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY3VycmVudCB1c2VyXG4gICAqL1xuICBmZXRjaCgpOiBPYnNlcnZhYmxlPFVzZXI+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy9jdXJyZW50YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHVzZXJCYXNlOiBVc2VyQmFzZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVzZXI6IFVzZXIgPSBwbGFpblRvQ2xhc3MoVXNlciwgdXNlckJhc2UpO1xuXG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3VzZXJJZCcsIHVzZXIuaWQudG9TdHJpbmcoKSk7XG4gICAgICAgICAgLy8gQFRPRE8gcmVtb3ZlXG4gICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2ZpbmFuY2lhbFllYXInLCB1c2VyLmZpbmFuY2lhbFllYXIudG9TdHJpbmcoKSk7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHVzZXI7XG4gICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcblxuICAgICAgICAgIHJldHVybiB1c2VyO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciBuZXcgdXNlclxuICAgKi9cbiAgcmVnaXN0ZXIoZGF0YTogb2JqZWN0KTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcmVnaXN0cmF0aW9uYCwgZGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHVzZXJcbiAgICovXG4gIHVwZGF0ZSh1c2VyOiBVc2VyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvJHt1c2VyLmlkfWAsIHVzZXIpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1c2VyQmFzZTogVXNlckJhc2UpID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gcGxhaW5Ub0NsYXNzKFVzZXIsIHVzZXJCYXNlKTtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uVVNFUl9VUERBVEVELCBudWxsKSk7XG4gICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlIHVzZXIgcGFzc3dvcmRcbiAgICovXG4gIGNoYW5nZVBhc3N3b3JkKGN1cnJlbnRQYXNzd29yZDogc3RyaW5nLCBuZXdQYXNzd29yZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxvYmplY3Q+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy9wYXNzd29yZC9jaGFuZ2VgLCB7Y3VycmVudFBhc3N3b3JkLCBuZXdQYXNzd29yZH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY292ZXJ5IHVzZXIgcGFzc3dvcmRcbiAgICovXG4gIHJlY292ZXJ5UGFzc3dvcmQoZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcGFzc3dvcmQvcmVjb3ZlcnlgLCB7ZW1haWx9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldCB1c2VyIHBhc3N3b3JkXG4gICAqL1xuICByZXNldFBhc3N3b3JkKG5ld1Bhc3N3b3JkOiBzdHJpbmcsIHJlc2V0VG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8b2JqZWN0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcGFzc3dvcmQvcmVzZXRgLCB7bmV3UGFzc3dvcmQsIHJlc2V0VG9rZW59KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maXJtIHJlZ2lzdGVyZWQgdXNlclxuICAgKi9cbiAgY29uZmlybSh2ZXJpZmljYXRpb25Db2RlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS91c2Vycy9jb25maXJtYXRpb25gLCB7dmVyaWZpY2F0aW9uQ29kZX0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlYXJjaCBleGlzdGluZyB1c2VyXG4gICAqL1xuICBzZWFyY2goZW1haWw6IHN0cmluZyk6IE9ic2VydmFibGU8VXNlcj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L3VzZXJzL3NlYXJjaD9lbWFpbD0ke2VtYWlsfWApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCh1c2VyQmFzZTogVXNlckJhc2UpID0+IHtcbiAgICAgICAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFVzZXIsIHVzZXJCYXNlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmluaXNoIG9uYm9hcmRpbmcgcHJvY2Vzc1xuICAgKi9cbiAgZmluaXNoT25ib2FyZGluZyh1c2VyOiBVc2VyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvc3RhdHVzYCwgdXNlcilcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB1c2VyO1xuICAgICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB1c2VyIHBob3RvXG4gICAqL1xuICB1cGRhdGVQaG90byhwaG90bzogRm9ybURhdGEpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vdXNlcnMvcGhvdG8/X21ldGhvZD1QVVRgLCBwaG90bylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHBob3RvVXJsOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gcGxhaW5Ub0NsYXNzKFVzZXIsIE9iamVjdC5hc3NpZ24odGhpcy5jYWNoZSwge3Bob3RvOiBwaG90b1VybH0pKTtcbiAgICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSdW4gZm9yZWNhc3QgdXBkYXRlIHNjcmlwdCBvbiBiYWNrZW5kIHdoZW4gdXNlciBzd2l0Y2hlZCBmaW5hbmNpYWwgeWVhclxuICAgKi9cbiAgc3dpdGNoRmluYW5jaWFsWWVhcigpOiBPYnNlcnZhYmxlPG9iamVjdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2ZpbmFuY2lhbC15ZWFyL3N3aXRjaGApO1xuICB9XG5cbiAgLyoqXG4gICAqIGNsZWFyIHNlcnZpY2UgY2FjaGVcbiAgICovXG4gIHJlc2V0Q2FjaGUoKTogdm9pZCB7XG4gICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBjYWNoZSB3aGVuIHVzZXIncyBzZXJ2aWNlIHN1YnNjcmlwdGlvbiBpcyB1cGRhdGVkXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblNlcnZpY2VTdWJzY3JpcHRpb25VcGRhdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlNFUlZJQ0VfU1VCU0NSSVBUSU9OX1VQREFURUQpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnJlc2V0Q2FjaGUoKSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkJhc2lxQ29uY2VudFVwZGF0ZWQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uQkFTSVFfQ09OU0VOVF9VUERBVEVEKS5zdWJzY3JpYmUoKGlzQ29uZmlybWVkOiBib29sZWFuKSA9PiB7XG4gICAgICBpZiAoIWlzQ29uZmlybWVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdXNlciA9IGNsb25lKHRoaXMuY2FjaGUpO1xuICAgICAgdXNlci5jbGllbnREZXRhaWxzLmJhc2lxQ29uc2VudEV4aXN0ID0gdHJ1ZTtcblxuICAgICAgdGhpcy5jYWNoZSA9IHVzZXI7XG4gICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/fesm2015/taxtank-core.js
CHANGED
|
@@ -4,8 +4,8 @@ import * as i1$1 from '@angular/common';
|
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i1 from '@angular/common/http';
|
|
6
6
|
import { HttpParams, HttpErrorResponse, HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
7
|
-
import { ReplaySubject, BehaviorSubject, throwError,
|
|
8
|
-
import { map,
|
|
7
|
+
import { ReplaySubject, Subject, BehaviorSubject, throwError, combineLatest, of, Observable, forkJoin } from 'rxjs';
|
|
8
|
+
import { map, filter, catchError, take, switchMap, finalize, mergeMap } from 'rxjs/operators';
|
|
9
9
|
import { plainToClass, Exclude, Type, Transform, Expose, classToPlain } from 'class-transformer';
|
|
10
10
|
import { JwtHelperService } from '@auth0/angular-jwt';
|
|
11
11
|
import get from 'lodash/get';
|
|
@@ -180,13 +180,101 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
180
180
|
}]
|
|
181
181
|
}] });
|
|
182
182
|
|
|
183
|
+
var AppEventTypeEnum;
|
|
184
|
+
(function (AppEventTypeEnum) {
|
|
185
|
+
AppEventTypeEnum[AppEventTypeEnum["CLIENT_MOVEMENT_CLOSED"] = 0] = "CLIENT_MOVEMENT_CLOSED";
|
|
186
|
+
AppEventTypeEnum[AppEventTypeEnum["BANK_CONNECTION_ADDED"] = 1] = "BANK_CONNECTION_ADDED";
|
|
187
|
+
AppEventTypeEnum[AppEventTypeEnum["BANK_ACCOUNT_CREATED"] = 2] = "BANK_ACCOUNT_CREATED";
|
|
188
|
+
AppEventTypeEnum[AppEventTypeEnum["BANK_ACCOUNT_UPDATED"] = 3] = "BANK_ACCOUNT_UPDATED";
|
|
189
|
+
AppEventTypeEnum[AppEventTypeEnum["BANK_TRANSACTION_ALLOCATED"] = 4] = "BANK_TRANSACTION_ALLOCATED";
|
|
190
|
+
AppEventTypeEnum[AppEventTypeEnum["BASIQ_CONSENT_UPDATED"] = 5] = "BASIQ_CONSENT_UPDATED";
|
|
191
|
+
AppEventTypeEnum[AppEventTypeEnum["BASIQ_CONNECTION_UPDATED"] = 6] = "BASIQ_CONNECTION_UPDATED";
|
|
192
|
+
AppEventTypeEnum[AppEventTypeEnum["CLIENT_INVITE_ACCEPTED"] = 7] = "CLIENT_INVITE_ACCEPTED";
|
|
193
|
+
AppEventTypeEnum[AppEventTypeEnum["CLIENT_OPEN_CHAT"] = 8] = "CLIENT_OPEN_CHAT";
|
|
194
|
+
AppEventTypeEnum[AppEventTypeEnum["CLIENT_TRANSFER_TO_OTHER_EMPLOYEE"] = 9] = "CLIENT_TRANSFER_TO_OTHER_EMPLOYEE";
|
|
195
|
+
AppEventTypeEnum[AppEventTypeEnum["CURRENT_USER_GET_FAILED"] = 10] = "CURRENT_USER_GET_FAILED";
|
|
196
|
+
AppEventTypeEnum[AppEventTypeEnum["DEPRECIATION_DELETED"] = 11] = "DEPRECIATION_DELETED";
|
|
197
|
+
AppEventTypeEnum[AppEventTypeEnum["DEPRECIATIONS_CREATED"] = 12] = "DEPRECIATIONS_CREATED";
|
|
198
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_CREATED"] = 13] = "INCOME_SOURCES_CREATED";
|
|
199
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_UPDATED"] = 14] = "INCOME_SOURCES_UPDATED";
|
|
200
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_CREATED"] = 15] = "INCOME_SOURCES_FORECASTS_CREATED";
|
|
201
|
+
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_UPDATED"] = 16] = "INCOME_SOURCES_FORECASTS_UPDATED";
|
|
202
|
+
AppEventTypeEnum[AppEventTypeEnum["LOAN_UPDATED"] = 17] = "LOAN_UPDATED";
|
|
203
|
+
AppEventTypeEnum[AppEventTypeEnum["LOAN_PAYOUT_UPDATED"] = 18] = "LOAN_PAYOUT_UPDATED";
|
|
204
|
+
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_CREATED"] = 19] = "MESSAGE_CREATED";
|
|
205
|
+
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_CREATED"] = 20] = "MESSAGE_FILE_CREATED";
|
|
206
|
+
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_DELETED"] = 21] = "MESSAGE_FILE_DELETED";
|
|
207
|
+
AppEventTypeEnum[AppEventTypeEnum["NOTIFICATION_ADDED"] = 22] = "NOTIFICATION_ADDED";
|
|
208
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_UPDATED_WITH_DOCUMENT"] = 23] = "PROPERTY_UPDATED_WITH_DOCUMENT";
|
|
209
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_DOCUMENT_ADDED"] = 24] = "PROPERTY_DOCUMENT_ADDED";
|
|
210
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_CREATED"] = 25] = "PROPERTY_MOVEMENT_CREATED";
|
|
211
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_UPDATED"] = 26] = "PROPERTY_MOVEMENT_UPDATED";
|
|
212
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_DELETED"] = 27] = "PROPERTY_MOVEMENT_DELETED";
|
|
213
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SHARE_UPDATED"] = 28] = "PROPERTY_SHARE_UPDATED";
|
|
214
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_ADDED"] = 29] = "PROPERTY_SUBSCRIPTION_ADDED";
|
|
215
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_DELETED"] = 30] = "PROPERTY_SUBSCRIPTION_DELETED";
|
|
216
|
+
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_VALUATION_DOCUMENT_CREATED"] = 31] = "PROPERTY_VALUATION_DOCUMENT_CREATED";
|
|
217
|
+
AppEventTypeEnum[AppEventTypeEnum["SERVICE_SUBSCRIPTION_UPDATED"] = 32] = "SERVICE_SUBSCRIPTION_UPDATED";
|
|
218
|
+
AppEventTypeEnum[AppEventTypeEnum["TAX_REVIEW_UPDATED"] = 33] = "TAX_REVIEW_UPDATED";
|
|
219
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_CREATED"] = 34] = "TRANSACTION_CREATED";
|
|
220
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_DELETED"] = 35] = "TRANSACTION_DELETED";
|
|
221
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_UPDATED"] = 36] = "TRANSACTION_UPDATED";
|
|
222
|
+
AppEventTypeEnum[AppEventTypeEnum["TRANSACTIONS_CREATED"] = 37] = "TRANSACTIONS_CREATED";
|
|
223
|
+
AppEventTypeEnum[AppEventTypeEnum["USER_UPDATED"] = 38] = "USER_UPDATED";
|
|
224
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_UPDATED"] = 39] = "VEHICLE_CLAIM_UPDATED";
|
|
225
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_CREATED"] = 40] = "VEHICLE_CLAIM_CREATED";
|
|
226
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_CREATED"] = 41] = "VEHICLE_LOGBOOK_CREATED";
|
|
227
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_UPDATED"] = 42] = "VEHICLE_LOGBOOK_UPDATED";
|
|
228
|
+
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_DELETED"] = 43] = "VEHICLE_LOGBOOK_DELETED";
|
|
229
|
+
})(AppEventTypeEnum || (AppEventTypeEnum = {}));
|
|
230
|
+
|
|
231
|
+
class EventDispatcherService {
|
|
232
|
+
constructor() {
|
|
233
|
+
this.eventSubject = new Subject();
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* subscription to specific event type
|
|
237
|
+
*/
|
|
238
|
+
on(eventType) {
|
|
239
|
+
return this.eventSubject.pipe(filter((event) => [].concat(eventType).includes(event.type)), map((event) => event.payload));
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* deliver new event
|
|
243
|
+
*/
|
|
244
|
+
dispatch(event) {
|
|
245
|
+
this.eventSubject.next(event);
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
EventDispatcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
249
|
+
EventDispatcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, providedIn: 'root' });
|
|
250
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, decorators: [{
|
|
251
|
+
type: Injectable,
|
|
252
|
+
args: [{
|
|
253
|
+
providedIn: 'root'
|
|
254
|
+
}]
|
|
255
|
+
}] });
|
|
256
|
+
|
|
183
257
|
class AuthService {
|
|
184
|
-
constructor(http, jwtService, environment) {
|
|
258
|
+
constructor(http, jwtService, eventDispatcherService, environment) {
|
|
185
259
|
this.http = http;
|
|
186
260
|
this.jwtService = jwtService;
|
|
261
|
+
this.eventDispatcherService = eventDispatcherService;
|
|
187
262
|
this.environment = environment;
|
|
263
|
+
this.listenEvents();
|
|
188
264
|
this.isLoggedInSubject = new BehaviorSubject(!this.jwtService.isTokenExpired());
|
|
189
265
|
}
|
|
266
|
+
/**
|
|
267
|
+
* Listen to Event Dispatcher events
|
|
268
|
+
*/
|
|
269
|
+
listenEvents() {
|
|
270
|
+
this.listenUserGetFailed();
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* User logout if failed current user get
|
|
274
|
+
*/
|
|
275
|
+
listenUserGetFailed() {
|
|
276
|
+
this.eventDispatcherService.on(AppEventTypeEnum.CURRENT_USER_GET_FAILED).subscribe(() => this.logoutFront());
|
|
277
|
+
}
|
|
190
278
|
setAuth(response) {
|
|
191
279
|
this.jwtService.saveTokens(response);
|
|
192
280
|
this.isLoggedInSubject.next(true);
|
|
@@ -208,14 +296,14 @@ class AuthService {
|
|
|
208
296
|
location.replace(url);
|
|
209
297
|
}
|
|
210
298
|
}
|
|
211
|
-
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: JwtService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
299
|
+
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: JwtService }, { token: EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
212
300
|
AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, providedIn: 'root' });
|
|
213
301
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, decorators: [{
|
|
214
302
|
type: Injectable,
|
|
215
303
|
args: [{
|
|
216
304
|
providedIn: 'root'
|
|
217
305
|
}]
|
|
218
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: JwtService }, { type: undefined, decorators: [{
|
|
306
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: JwtService }, { type: EventDispatcherService }, { type: undefined, decorators: [{
|
|
219
307
|
type: Inject,
|
|
220
308
|
args: ['environment']
|
|
221
309
|
}] }]; } });
|
|
@@ -5521,6 +5609,9 @@ __decorate([
|
|
|
5521
5609
|
__decorate([
|
|
5522
5610
|
Type(() => User)
|
|
5523
5611
|
], Chat.prototype, "client", void 0);
|
|
5612
|
+
__decorate([
|
|
5613
|
+
Type(() => Date)
|
|
5614
|
+
], Chat.prototype, "updatedAt", void 0);
|
|
5524
5615
|
|
|
5525
5616
|
var ChatViewTypeEnum;
|
|
5526
5617
|
(function (ChatViewTypeEnum) {
|
|
@@ -5945,53 +6036,6 @@ class AppEvent {
|
|
|
5945
6036
|
}
|
|
5946
6037
|
}
|
|
5947
6038
|
|
|
5948
|
-
var AppEventTypeEnum;
|
|
5949
|
-
(function (AppEventTypeEnum) {
|
|
5950
|
-
AppEventTypeEnum[AppEventTypeEnum["CLIENT_MOVEMENT_CLOSED"] = 0] = "CLIENT_MOVEMENT_CLOSED";
|
|
5951
|
-
AppEventTypeEnum[AppEventTypeEnum["BANK_CONNECTION_ADDED"] = 1] = "BANK_CONNECTION_ADDED";
|
|
5952
|
-
AppEventTypeEnum[AppEventTypeEnum["BANK_ACCOUNT_CREATED"] = 2] = "BANK_ACCOUNT_CREATED";
|
|
5953
|
-
AppEventTypeEnum[AppEventTypeEnum["BANK_ACCOUNT_UPDATED"] = 3] = "BANK_ACCOUNT_UPDATED";
|
|
5954
|
-
AppEventTypeEnum[AppEventTypeEnum["BANK_TRANSACTION_ALLOCATED"] = 4] = "BANK_TRANSACTION_ALLOCATED";
|
|
5955
|
-
AppEventTypeEnum[AppEventTypeEnum["BASIQ_CONSENT_UPDATED"] = 5] = "BASIQ_CONSENT_UPDATED";
|
|
5956
|
-
AppEventTypeEnum[AppEventTypeEnum["BASIQ_CONNECTION_UPDATED"] = 6] = "BASIQ_CONNECTION_UPDATED";
|
|
5957
|
-
AppEventTypeEnum[AppEventTypeEnum["CLIENT_INVITE_ACCEPTED"] = 7] = "CLIENT_INVITE_ACCEPTED";
|
|
5958
|
-
AppEventTypeEnum[AppEventTypeEnum["CLIENT_OPEN_CHAT"] = 8] = "CLIENT_OPEN_CHAT";
|
|
5959
|
-
AppEventTypeEnum[AppEventTypeEnum["CLIENT_TRANSFER_TO_OTHER_EMPLOYEE"] = 9] = "CLIENT_TRANSFER_TO_OTHER_EMPLOYEE";
|
|
5960
|
-
AppEventTypeEnum[AppEventTypeEnum["DEPRECIATION_DELETED"] = 10] = "DEPRECIATION_DELETED";
|
|
5961
|
-
AppEventTypeEnum[AppEventTypeEnum["DEPRECIATIONS_CREATED"] = 11] = "DEPRECIATIONS_CREATED";
|
|
5962
|
-
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_CREATED"] = 12] = "INCOME_SOURCES_CREATED";
|
|
5963
|
-
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_UPDATED"] = 13] = "INCOME_SOURCES_UPDATED";
|
|
5964
|
-
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_CREATED"] = 14] = "INCOME_SOURCES_FORECASTS_CREATED";
|
|
5965
|
-
AppEventTypeEnum[AppEventTypeEnum["INCOME_SOURCES_FORECASTS_UPDATED"] = 15] = "INCOME_SOURCES_FORECASTS_UPDATED";
|
|
5966
|
-
AppEventTypeEnum[AppEventTypeEnum["LOAN_UPDATED"] = 16] = "LOAN_UPDATED";
|
|
5967
|
-
AppEventTypeEnum[AppEventTypeEnum["LOAN_PAYOUT_UPDATED"] = 17] = "LOAN_PAYOUT_UPDATED";
|
|
5968
|
-
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_CREATED"] = 18] = "MESSAGE_CREATED";
|
|
5969
|
-
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_CREATED"] = 19] = "MESSAGE_FILE_CREATED";
|
|
5970
|
-
AppEventTypeEnum[AppEventTypeEnum["MESSAGE_FILE_DELETED"] = 20] = "MESSAGE_FILE_DELETED";
|
|
5971
|
-
AppEventTypeEnum[AppEventTypeEnum["NOTIFICATION_ADDED"] = 21] = "NOTIFICATION_ADDED";
|
|
5972
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_UPDATED_WITH_DOCUMENT"] = 22] = "PROPERTY_UPDATED_WITH_DOCUMENT";
|
|
5973
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_DOCUMENT_ADDED"] = 23] = "PROPERTY_DOCUMENT_ADDED";
|
|
5974
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_CREATED"] = 24] = "PROPERTY_MOVEMENT_CREATED";
|
|
5975
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_UPDATED"] = 25] = "PROPERTY_MOVEMENT_UPDATED";
|
|
5976
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_MOVEMENT_DELETED"] = 26] = "PROPERTY_MOVEMENT_DELETED";
|
|
5977
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SHARE_UPDATED"] = 27] = "PROPERTY_SHARE_UPDATED";
|
|
5978
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_ADDED"] = 28] = "PROPERTY_SUBSCRIPTION_ADDED";
|
|
5979
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_SUBSCRIPTION_DELETED"] = 29] = "PROPERTY_SUBSCRIPTION_DELETED";
|
|
5980
|
-
AppEventTypeEnum[AppEventTypeEnum["PROPERTY_VALUATION_DOCUMENT_CREATED"] = 30] = "PROPERTY_VALUATION_DOCUMENT_CREATED";
|
|
5981
|
-
AppEventTypeEnum[AppEventTypeEnum["SERVICE_SUBSCRIPTION_UPDATED"] = 31] = "SERVICE_SUBSCRIPTION_UPDATED";
|
|
5982
|
-
AppEventTypeEnum[AppEventTypeEnum["TAX_REVIEW_UPDATED"] = 32] = "TAX_REVIEW_UPDATED";
|
|
5983
|
-
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_CREATED"] = 33] = "TRANSACTION_CREATED";
|
|
5984
|
-
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_DELETED"] = 34] = "TRANSACTION_DELETED";
|
|
5985
|
-
AppEventTypeEnum[AppEventTypeEnum["TRANSACTION_UPDATED"] = 35] = "TRANSACTION_UPDATED";
|
|
5986
|
-
AppEventTypeEnum[AppEventTypeEnum["TRANSACTIONS_CREATED"] = 36] = "TRANSACTIONS_CREATED";
|
|
5987
|
-
AppEventTypeEnum[AppEventTypeEnum["USER_UPDATED"] = 37] = "USER_UPDATED";
|
|
5988
|
-
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_UPDATED"] = 38] = "VEHICLE_CLAIM_UPDATED";
|
|
5989
|
-
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_CLAIM_CREATED"] = 39] = "VEHICLE_CLAIM_CREATED";
|
|
5990
|
-
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_CREATED"] = 40] = "VEHICLE_LOGBOOK_CREATED";
|
|
5991
|
-
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_UPDATED"] = 41] = "VEHICLE_LOGBOOK_UPDATED";
|
|
5992
|
-
AppEventTypeEnum[AppEventTypeEnum["VEHICLE_LOGBOOK_DELETED"] = 42] = "VEHICLE_LOGBOOK_DELETED";
|
|
5993
|
-
})(AppEventTypeEnum || (AppEventTypeEnum = {}));
|
|
5994
|
-
|
|
5995
6039
|
var ExportFormatEnum;
|
|
5996
6040
|
(function (ExportFormatEnum) {
|
|
5997
6041
|
ExportFormatEnum["PDF"] = "PDF";
|
|
@@ -7113,32 +7157,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
7113
7157
|
args: ['environment']
|
|
7114
7158
|
}] }]; } });
|
|
7115
7159
|
|
|
7116
|
-
class EventDispatcherService {
|
|
7117
|
-
constructor() {
|
|
7118
|
-
this.eventSubject = new Subject();
|
|
7119
|
-
}
|
|
7120
|
-
/**
|
|
7121
|
-
* subscription to specific event type
|
|
7122
|
-
*/
|
|
7123
|
-
on(eventType) {
|
|
7124
|
-
return this.eventSubject.pipe(filter((event) => [].concat(eventType).includes(event.type)), map((event) => event.payload));
|
|
7125
|
-
}
|
|
7126
|
-
/**
|
|
7127
|
-
* deliver new event
|
|
7128
|
-
*/
|
|
7129
|
-
dispatch(event) {
|
|
7130
|
-
this.eventSubject.next(event);
|
|
7131
|
-
}
|
|
7132
|
-
}
|
|
7133
|
-
EventDispatcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7134
|
-
EventDispatcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, providedIn: 'root' });
|
|
7135
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, decorators: [{
|
|
7136
|
-
type: Injectable,
|
|
7137
|
-
args: [{
|
|
7138
|
-
providedIn: 'root'
|
|
7139
|
-
}]
|
|
7140
|
-
}] });
|
|
7141
|
-
|
|
7142
7160
|
/**
|
|
7143
7161
|
* popup notifications service (toast, snackbar).
|
|
7144
7162
|
*/
|
|
@@ -8856,6 +8874,7 @@ class ChatService extends RestService {
|
|
|
8856
8874
|
this.url = 'chats';
|
|
8857
8875
|
this.isHydra = true;
|
|
8858
8876
|
this.listenChats();
|
|
8877
|
+
this.listenMessages();
|
|
8859
8878
|
}
|
|
8860
8879
|
/**
|
|
8861
8880
|
* Listen chats events
|
|
@@ -8890,6 +8909,19 @@ class ChatService extends RestService {
|
|
|
8890
8909
|
this.updateCache();
|
|
8891
8910
|
});
|
|
8892
8911
|
}
|
|
8912
|
+
/**
|
|
8913
|
+
* Update chat's 'updatedAt' field with the last chat's message date for chat list sorting
|
|
8914
|
+
*/
|
|
8915
|
+
listenMessages() {
|
|
8916
|
+
this.eventDispatcherService.on(AppEventTypeEnum.MESSAGE_CREATED).subscribe((message) => {
|
|
8917
|
+
const cache = cloneDeep$1(this.cache);
|
|
8918
|
+
const updatedChat = cache.find((chat) => chat.id === message.chat.id);
|
|
8919
|
+
updatedChat.updatedAt = message.createdAt;
|
|
8920
|
+
replace(cache, updatedChat);
|
|
8921
|
+
this.cache = cache;
|
|
8922
|
+
this.updateCache();
|
|
8923
|
+
});
|
|
8924
|
+
}
|
|
8893
8925
|
}
|
|
8894
8926
|
ChatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }, { token: SseService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8895
8927
|
ChatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, providedIn: 'root' });
|
|
@@ -11101,7 +11133,12 @@ class UserService {
|
|
|
11101
11133
|
}
|
|
11102
11134
|
get() {
|
|
11103
11135
|
if (!this.cache) {
|
|
11104
|
-
this.fetch().subscribe()
|
|
11136
|
+
this.fetch().subscribe(() => { }, (error) => {
|
|
11137
|
+
// force logout user (clear localStorage) when get current user return error
|
|
11138
|
+
if (error.status === 500) {
|
|
11139
|
+
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CURRENT_USER_GET_FAILED, null));
|
|
11140
|
+
}
|
|
11141
|
+
});
|
|
11105
11142
|
}
|
|
11106
11143
|
return this.cacheSubject.asObservable();
|
|
11107
11144
|
}
|