@doolehealth/service-lib 0.0.1
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/README.md +24 -0
- package/esm2022/doolehealth-service-lib.mjs +5 -0
- package/esm2022/lib/configuration.mjs +5 -0
- package/esm2022/lib/models/user.mjs +2 -0
- package/esm2022/lib/service-lib.component.mjs +19 -0
- package/esm2022/lib/service-lib.module.mjs +33 -0
- package/esm2022/lib/services/analytics.service.mjs +73 -0
- package/esm2022/lib/services/api-endpoints.service.mjs +51 -0
- package/esm2022/lib/services/authentication.service.mjs +400 -0
- package/esm2022/lib/services/change-endpoints.service.mjs +90 -0
- package/esm2022/lib/services/date.service.mjs +419 -0
- package/esm2022/lib/services/doole.service.mjs +1299 -0
- package/esm2022/lib/services/encryption.service.mjs +31 -0
- package/esm2022/lib/services/error.service.mjs +49 -0
- package/esm2022/lib/services/events.service.mjs +63 -0
- package/esm2022/lib/services/highcharts.service.mjs +621 -0
- package/esm2022/lib/services/http.service.mjs +124 -0
- package/esm2022/lib/services/language.service.mjs +38 -0
- package/esm2022/lib/services/loading.service.mjs +45 -0
- package/esm2022/lib/services/logging.service.mjs +28 -0
- package/esm2022/lib/services/navigation.service.mjs +41 -0
- package/esm2022/lib/services/network.service.mjs +42 -0
- package/esm2022/lib/services/notification.service.mjs +202 -0
- package/esm2022/lib/services/opentok.service.mjs +25 -0
- package/esm2022/lib/services/roles.service.mjs +44 -0
- package/esm2022/lib/services/storage.service.mjs +37 -0
- package/esm2022/lib/services/token.service.mjs +59 -0
- package/esm2022/lib/util/chatParameters.mjs +17 -0
- package/esm2022/lib/util/data-store.mjs +54 -0
- package/esm2022/lib/util/environment.mjs +29 -0
- package/esm2022/lib/util/language.model.mjs +3 -0
- package/esm2022/lib/util/notification-options.mjs +245 -0
- package/esm2022/lib/util/query-string-parameters.mjs +11 -0
- package/esm2022/lib/util/url-builder.mjs +15 -0
- package/esm2022/public-api.mjs +30 -0
- package/fesm2022/doolehealth-service-lib.mjs +4025 -0
- package/fesm2022/doolehealth-service-lib.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/configuration.d.ts +46 -0
- package/lib/models/user.d.ts +133 -0
- package/lib/service-lib.component.d.ts +5 -0
- package/lib/service-lib.module.d.ts +13 -0
- package/lib/services/analytics.service.d.ts +17 -0
- package/lib/services/api-endpoints.service.d.ts +13 -0
- package/lib/services/authentication.service.d.ts +102 -0
- package/lib/services/change-endpoints.service.d.ts +38 -0
- package/lib/services/date.service.d.ts +58 -0
- package/lib/services/doole.service.d.ts +169 -0
- package/lib/services/encryption.service.d.ts +9 -0
- package/lib/services/error.service.d.ts +11 -0
- package/lib/services/events.service.d.ts +32 -0
- package/lib/services/highcharts.service.d.ts +69 -0
- package/lib/services/http.service.d.ts +28 -0
- package/lib/services/language.service.d.ts +15 -0
- package/lib/services/loading.service.d.ts +22 -0
- package/lib/services/logging.service.d.ts +9 -0
- package/lib/services/navigation.service.d.ts +13 -0
- package/lib/services/network.service.d.ts +14 -0
- package/lib/services/notification.service.d.ts +25 -0
- package/lib/services/opentok.service.d.ts +17 -0
- package/lib/services/roles.service.d.ts +28 -0
- package/lib/services/storage.service.d.ts +10 -0
- package/lib/services/token.service.d.ts +16 -0
- package/lib/util/chatParameters.d.ts +25 -0
- package/lib/util/data-store.d.ts +13 -0
- package/lib/util/environment.d.ts +18 -0
- package/lib/util/language.model.d.ts +4 -0
- package/lib/util/notification-options.d.ts +145 -0
- package/lib/util/query-string-parameters.d.ts +6 -0
- package/lib/util/url-builder.d.ts +9 -0
- package/package.json +38 -0
- package/public-api.d.ts +23 -0
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { HttpHeaders, HttpClient, HttpParams } from '@angular/common/http';
|
|
3
|
+
import { catchError } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common/http";
|
|
6
|
+
import * as i2 from "../services/authentication.service";
|
|
7
|
+
export class HttpService {
|
|
8
|
+
constructor(http, httpBackend, authService) {
|
|
9
|
+
this.http = http;
|
|
10
|
+
this.httpBackend = httpBackend;
|
|
11
|
+
this.authService = authService;
|
|
12
|
+
this.httpWithoutInterceptor = new HttpClient(httpBackend);
|
|
13
|
+
}
|
|
14
|
+
async formatErrors(error) {
|
|
15
|
+
return error;
|
|
16
|
+
}
|
|
17
|
+
get(path, params = new HttpParams()) {
|
|
18
|
+
let user = this.authService?.user;
|
|
19
|
+
params = (user?.familyUnit) ? params.append('user', user?.familyUnit) : params;
|
|
20
|
+
return this.http.get(`${path}`, { params })
|
|
21
|
+
.pipe(catchError(this.formatErrors));
|
|
22
|
+
}
|
|
23
|
+
put(path, body = {}, options = {}) {
|
|
24
|
+
let httpOptions = this.setHttpOptions(options);
|
|
25
|
+
//console.log("url: ", path);
|
|
26
|
+
//console.log("body: ", body);
|
|
27
|
+
return this.http.put(`${path}`, JSON.stringify(body), httpOptions).pipe(catchError(this.formatErrors));
|
|
28
|
+
}
|
|
29
|
+
postform(path, body = {}, options = {}) {
|
|
30
|
+
let user = this.authService?.user;
|
|
31
|
+
if (user?.familyUnit !== null)
|
|
32
|
+
body['user'] = user?.familyUnit;
|
|
33
|
+
let httpOptions = this.setHttpOptions(options);
|
|
34
|
+
//console.log("url: ", path);
|
|
35
|
+
//console.log("body: ", body);
|
|
36
|
+
return this.http.post(`${path}`, JSON.stringify(body), httpOptions).pipe(catchError(this.formatErrors));
|
|
37
|
+
}
|
|
38
|
+
post(path, body = {}, options = {}, formData) {
|
|
39
|
+
let user = this.authService?.user;
|
|
40
|
+
if (user?.familyUnit !== undefined && user?.familyUnit !== null)
|
|
41
|
+
body['user'] = user?.familyUnit;
|
|
42
|
+
let httpOptions = this.setHttpOptions(options, formData);
|
|
43
|
+
//console.log("url: ", path);
|
|
44
|
+
//console.log("body: ", body);
|
|
45
|
+
return this.http.post(`${path}`, JSON.stringify(body), httpOptions).pipe(catchError(this.formatErrors));
|
|
46
|
+
}
|
|
47
|
+
postForm(path, body = {}, options = {}, formData) {
|
|
48
|
+
let user = this.authService?.user;
|
|
49
|
+
if (user?.familyUnit !== null)
|
|
50
|
+
body['user'] = user?.familyUnit;
|
|
51
|
+
const httpOptions = {
|
|
52
|
+
headers: new HttpHeaders({
|
|
53
|
+
'Accept': 'application/json'
|
|
54
|
+
})
|
|
55
|
+
};
|
|
56
|
+
console.log("url: ", path);
|
|
57
|
+
console.log("body: ", body);
|
|
58
|
+
return this.http.post(`${path}`, body, httpOptions).pipe(catchError(this.formatErrors));
|
|
59
|
+
}
|
|
60
|
+
delete(path) {
|
|
61
|
+
return this.http.delete(`${path}`).pipe(catchError(this.formatErrors));
|
|
62
|
+
}
|
|
63
|
+
_get(path, params = new HttpParams()) {
|
|
64
|
+
return this.httpWithoutInterceptor.get(`${path}`, { params })
|
|
65
|
+
.pipe(catchError(this.formatErrors));
|
|
66
|
+
}
|
|
67
|
+
_put(path, body = {}) {
|
|
68
|
+
return this.httpWithoutInterceptor.put(`${path}`, JSON.stringify(body)).pipe(catchError(this.formatErrors));
|
|
69
|
+
}
|
|
70
|
+
_post(path, body = {}, options = {}) {
|
|
71
|
+
let httpOptions = this.setHttpOptions(options);
|
|
72
|
+
let params = this.setHttpParams(body);
|
|
73
|
+
return this.httpWithoutInterceptor.post(`${path}`, JSON.stringify(body), httpOptions).pipe(catchError(error => this.formatErrors(error)));
|
|
74
|
+
}
|
|
75
|
+
_delete(path) {
|
|
76
|
+
return this.httpWithoutInterceptor.delete(`${path}`).pipe(catchError(this.formatErrors));
|
|
77
|
+
}
|
|
78
|
+
setHttpParams(body) {
|
|
79
|
+
let params = new HttpParams();
|
|
80
|
+
if (body != null)
|
|
81
|
+
for (let key in body)
|
|
82
|
+
params = params.append(key, body[key]);
|
|
83
|
+
return params;
|
|
84
|
+
}
|
|
85
|
+
setHttpOptions(options, formData) {
|
|
86
|
+
console.log('** options', options);
|
|
87
|
+
if (formData) {
|
|
88
|
+
const httpOptions = {
|
|
89
|
+
headers: new HttpHeaders({
|
|
90
|
+
'Accept': 'application/json'
|
|
91
|
+
})
|
|
92
|
+
};
|
|
93
|
+
return httpOptions;
|
|
94
|
+
}
|
|
95
|
+
else if (Object.keys(options).length > 0) {
|
|
96
|
+
const httpOptions = {
|
|
97
|
+
headers: new HttpHeaders({
|
|
98
|
+
'Content-Type': 'application/json',
|
|
99
|
+
'Accept': 'application/json',
|
|
100
|
+
options
|
|
101
|
+
})
|
|
102
|
+
};
|
|
103
|
+
return httpOptions;
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
const httpOptions = {
|
|
107
|
+
headers: new HttpHeaders({
|
|
108
|
+
'Content-Type': 'application/json',
|
|
109
|
+
'Accept': 'application/json',
|
|
110
|
+
})
|
|
111
|
+
};
|
|
112
|
+
return httpOptions;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: HttpService, deps: [{ token: i1.HttpClient }, { token: i1.HttpBackend }, { token: i2.AuthenticationService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
116
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: HttpService, providedIn: 'root' }); }
|
|
117
|
+
}
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: HttpService, decorators: [{
|
|
119
|
+
type: Injectable,
|
|
120
|
+
args: [{
|
|
121
|
+
providedIn: 'root'
|
|
122
|
+
}]
|
|
123
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i1.HttpBackend }, { type: i2.AuthenticationService }] });
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9odHRwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQWUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFNNUMsTUFBTSxPQUFPLFdBQVc7SUFHdEIsWUFDVSxJQUFnQixFQUNoQixXQUF3QixFQUN4QixXQUFrQztRQUZsQyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGdCQUFXLEdBQVgsV0FBVyxDQUF1QjtRQUUxQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVPLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBVTtRQUNuQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWSxFQUFFLFNBQXFCLElBQUksVUFBVSxFQUFFO1FBQ3JELElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFBO1FBQ2pDLE1BQU0sR0FBRyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7UUFDOUUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUM7YUFDeEMsSUFB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QUM7UUFDckIsQ0FBQzthQUFJLENBQUM7WUFDSixNQUFNLFdBQVcsR0FBRztnQkFDbEIsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO29CQUN2QixjQUFjLEVBQUMsa0JBQWtCO29CQUNqQyxRQUFRLEVBQUUsa0JBQWtCO2lCQUM3QixDQUFDO2FBQ0gsQ0FBQztZQUVGLE9BQU8sV0FBVyxDQUFDO1FBQ3JCLENBQUM7SUFFSCxDQUFDOytHQXpLVSxXQUFXO21IQUFYLFdBQVcsY0FGVixNQUFNOzs0RkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBIZWFkZXJzLCBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zLCBIdHRwQmFja2VuZCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYXV0aGVudGljYXRpb24uc2VydmljZSdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgSHR0cFNlcnZpY2Uge1xuICBwcml2YXRlIGh0dHBXaXRob3V0SW50ZXJjZXB0b3I6IEh0dHBDbGllbnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgaHR0cEJhY2tlbmQ6IEh0dHBCYWNrZW5kLFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5odHRwV2l0aG91dEludGVyY2VwdG9yID0gbmV3IEh0dHBDbGllbnQoaHR0cEJhY2tlbmQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBmb3JtYXRFcnJvcnMoZXJyb3I6IGFueSkge1xuICAgIHJldHVybiBlcnJvcjtcbiAgfVxuXG4gIGdldChwYXRoOiBzdHJpbmcsIHBhcmFtczogSHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCkpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1c2VyID0gdGhpcy5hdXRoU2VydmljZT8udXNlclxuICAgIHBhcmFtcyA9ICh1c2VyPy5mYW1pbHlVbml0KSA/IHBhcmFtcy5hcHBlbmQoJ3VzZXInLCB1c2VyPy5mYW1pbHlVbml0KSA6IHBhcmFtc1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3BhdGh9YCwgeyBwYXJhbXMgfSlcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IodGhpcy5mb3JtYXRFcnJvcnMpKTtcbiAgfVxuXG4gIHB1dChwYXRoOiBzdHJpbmcsIGJvZHk6IE9iamVjdCA9IHt9LCBvcHRpb25zOiBPYmplY3QgPSB7fSk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICBsZXQgaHR0cE9wdGlvbnMgPSB0aGlzLnNldEh0dHBPcHRpb25zKG9wdGlvbnMpO1xuICAgIC8vY29uc29sZS5sb2coXCJ1cmw6IFwiLCBwYXRoKTtcbiAgICAvL2NvbnNvbGUubG9nKFwiYm9keTogXCIsIGJvZHkpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KFxuICAgICAgYCR7cGF0aH1gLFxuICAgICAgSlNPTi5zdHJpbmdpZnkoYm9keSksXG4gICAgICBodHRwT3B0aW9uc1xuICAgICkucGlwZShjYXRjaEVycm9yKHRoaXMuZm9ybWF0RXJyb3JzKSk7XG4gIH1cblxuICBwb3N0Zm9ybShwYXRoOiBzdHJpbmcsIGJvZHk6IE9iamVjdCA9IHt9LCBvcHRpb25zOiBPYmplY3QgPSB7fSk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgbGV0IHVzZXIgPSB0aGlzLmF1dGhTZXJ2aWNlPy51c2VyXG4gICAgaWYgKHVzZXI/LmZhbWlseVVuaXQgIT09IG51bGwpXG4gICAgICBib2R5Wyd1c2VyJ10gPSB1c2VyPy5mYW1pbHlVbml0O1xuXG4gICAgbGV0IGh0dHBPcHRpb25zID0gdGhpcy5zZXRIdHRwT3B0aW9ucyhvcHRpb25zKTtcbiAgICAvL2NvbnNvbGUubG9nKFwidXJsOiBcIiwgcGF0aCk7XG4gICAgLy9jb25zb2xlLmxvZyhcImJvZHk6IFwiLCBib2R5KTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChcbiAgICAgIGAke3BhdGh9YCxcbiAgICAgIEpTT04uc3RyaW5naWZ5KGJvZHkpLFxuICAgICAgaHR0cE9wdGlvbnNcbiAgICApLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmZvcm1hdEVycm9ycykpO1xuICB9XG5cblxuICBwb3N0KHBhdGg6IHN0cmluZywgYm9keTogT2JqZWN0ID0ge30sIG9wdGlvbnM6IE9iamVjdCA9IHt9LCBmb3JtRGF0YT8pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGxldCB1c2VyID0gdGhpcy5hdXRoU2VydmljZT8udXNlclxuICAgIGlmICh1c2VyPy5mYW1pbHlVbml0ICE9PSB1bmRlZmluZWQgJiYgdXNlcj8uZmFtaWx5VW5pdCAhPT0gbnVsbClcbiAgICAgIGJvZHlbJ3VzZXInXSA9IHVzZXI/LmZhbWlseVVuaXQ7XG5cbiAgICBsZXQgaHR0cE9wdGlvbnMgPSB0aGlzLnNldEh0dHBPcHRpb25zKG9wdGlvbnMsZm9ybURhdGEpO1xuICAgIC8vY29uc29sZS5sb2coXCJ1cmw6IFwiLCBwYXRoKTtcbiAgICAvL2NvbnNvbGUubG9nKFwiYm9keTogXCIsIGJvZHkpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxuICAgICAgYCR7cGF0aH1gLFxuICAgICAgSlNPTi5zdHJpbmdpZnkoYm9keSksXG4gICAgICBodHRwT3B0aW9uc1xuICAgICkucGlwZShjYXRjaEVycm9yKHRoaXMuZm9ybWF0RXJyb3JzKSk7XG4gIH1cblxuICBwb3N0Rm9ybShwYXRoOiBzdHJpbmcsIGJvZHk6IE9iamVjdCA9IHt9LCBvcHRpb25zOiBPYmplY3QgPSB7fSwgZm9ybURhdGE/KTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICAgIGxldCB1c2VyID0gdGhpcy5hdXRoU2VydmljZT8udXNlclxuICAgIGlmICh1c2VyPy5mYW1pbHlVbml0ICE9PSBudWxsKVxuICAgICAgYm9keVsndXNlciddID0gdXNlcj8uZmFtaWx5VW5pdDtcblxuICAgICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgJ0FjY2VwdCc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICB9KVxuICAgICAgfTtcblxuICAgIGNvbnNvbGUubG9nKFwidXJsOiBcIiwgcGF0aCk7XG4gICAgY29uc29sZS5sb2coXCJib2R5OiBcIiwgYm9keSk7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoXG4gICAgICBgJHtwYXRofWAsXG4gICAgICBib2R5LFxuICAgICAgaHR0cE9wdGlvbnNcbiAgICApLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmZvcm1hdEVycm9ycykpO1xuICB9XG5cbiAgZGVsZXRlKHBhdGgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKFxuICAgICAgYCR7cGF0aH1gXG4gICAgKS5waXBlKGNhdGNoRXJyb3IodGhpcy5mb3JtYXRFcnJvcnMpKTtcbiAgfVxuXG4gIF9nZXQocGF0aDogc3RyaW5nLCBwYXJhbXM6IEh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwV2l0aG91dEludGVyY2VwdG9yLmdldChgJHtwYXRofWAsIHsgcGFyYW1zIH0pXG4gICAgICAucGlwZShjYXRjaEVycm9yKHRoaXMuZm9ybWF0RXJyb3JzKSk7XG4gIH1cblxuICBfcHV0KHBhdGg6IHN0cmluZywgYm9keTogT2JqZWN0ID0ge30pOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBXaXRob3V0SW50ZXJjZXB0b3IucHV0KFxuICAgICAgYCR7cGF0aH1gLFxuICAgICAgSlNPTi5zdHJpbmdpZnkoYm9keSlcbiAgICApLnBpcGUoY2F0Y2hFcnJvcih0aGlzLmZvcm1hdEVycm9ycykpO1xuICB9XG5cbiAgX3Bvc3QocGF0aDogc3RyaW5nLCBib2R5OiBPYmplY3QgPSB7fSwgb3B0aW9uczogT2JqZWN0ID0ge30pOiBPYnNlcnZhYmxlPGFueT4ge1xuXG4gICAgbGV0IGh0dHBPcHRpb25zID0gdGhpcy5zZXRIdHRwT3B0aW9ucyhvcHRpb25zKTtcbiAgICBsZXQgcGFyYW1zID0gdGhpcy5zZXRIdHRwUGFyYW1zKGJvZHkpO1xuXG5cbiAgICByZXR1cm4gdGhpcy5odHRwV2l0aG91dEludGVyY2VwdG9yLnBvc3QoXG4gICAgICBgJHtwYXRofWAsXG4gICAgICBKU09OLnN0cmluZ2lmeShib2R5KSxcbiAgICAgIGh0dHBPcHRpb25zXG4gICAgKS5waXBlKGNhdGNoRXJyb3IoZXJyb3IgPT4gdGhpcy5mb3JtYXRFcnJvcnMoZXJyb3IpKSk7XG4gIH1cblxuICBfZGVsZXRlKHBhdGgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBXaXRob3V0SW50ZXJjZXB0b3IuZGVsZXRlKFxuICAgICAgYCR7cGF0aH1gXG4gICAgKS5waXBlKGNhdGNoRXJyb3IodGhpcy5mb3JtYXRFcnJvcnMpKTtcbiAgfVxuXG4gIHNldEh0dHBQYXJhbXMoYm9keSkge1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuXG4gICAgaWYgKGJvZHkgIT0gbnVsbClcbiAgICAgIGZvciAobGV0IGtleSBpbiBib2R5KVxuICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKGtleSwgYm9keVtrZXldKTtcblxuICAgIHJldHVybiBwYXJhbXM7XG4gIH1cblxuICBzZXRIdHRwT3B0aW9ucyhvcHRpb25zLCBmb3JtRGF0YT8pIHtcblxuICAgIGNvbnNvbGUubG9nKCcqKiBvcHRpb25zJywgb3B0aW9ucyk7XG5cbiAgICBpZihmb3JtRGF0YSl7XG4gICAgICBjb25zdCBodHRwT3B0aW9ucyA9IHtcbiAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAnQWNjZXB0JzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICAgIH0pXG4gICAgICB9O1xuXG4gICAgcmV0dXJuIGh0dHBPcHRpb25zO1xuICAgIH1lbHNlIGlmKE9iamVjdC5rZXlzKG9wdGlvbnMpLmxlbmd0aCA+IDApe1xuICAgICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6J2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgb3B0aW9uc1xuICAgICAgICB9KVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIGh0dHBPcHRpb25zO1xuICAgIH1lbHNle1xuICAgICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6J2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICdBY2NlcHQnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIH0pXG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gaHR0cE9wdGlvbnM7XG4gICAgfVxuXG4gIH1cbn0iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@ngx-translate/core";
|
|
4
|
+
export class LanguageService {
|
|
5
|
+
constructor(translate) {
|
|
6
|
+
this.translate = translate;
|
|
7
|
+
this.languages = new Array();
|
|
8
|
+
this.languages.push({ name: 'Català', code: 'ca' }, { name: 'Español', code: 'es' }, { name: 'English', code: 'en' });
|
|
9
|
+
}
|
|
10
|
+
getLanguages() {
|
|
11
|
+
return this.languages;
|
|
12
|
+
}
|
|
13
|
+
changeLanguage(langCode) {
|
|
14
|
+
console.log("langCode", langCode);
|
|
15
|
+
this.translate.use(langCode);
|
|
16
|
+
}
|
|
17
|
+
getCurrent() {
|
|
18
|
+
let lang = this.translate.currentLang ? this.translate.currentLang : this.translate.getDefaultLang();
|
|
19
|
+
return lang;
|
|
20
|
+
}
|
|
21
|
+
getLanguageAPI() {
|
|
22
|
+
let lang = this.translate.currentLang ? this.translate.currentLang : this.translate.getDefaultLang();
|
|
23
|
+
return lang == 'es' ? 'cs' : lang;
|
|
24
|
+
}
|
|
25
|
+
setLenguageLocalstorage(language) {
|
|
26
|
+
this.changeLanguage(language);
|
|
27
|
+
localStorage.setItem('language', language);
|
|
28
|
+
}
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LanguageService, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
30
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LanguageService, providedIn: 'root' }); }
|
|
31
|
+
}
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LanguageService, decorators: [{
|
|
33
|
+
type: Injectable,
|
|
34
|
+
args: [{
|
|
35
|
+
providedIn: 'root'
|
|
36
|
+
}]
|
|
37
|
+
}], ctorParameters: () => [{ type: i1.TranslateService }] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlcnZpY2UtbGliL3NyYy9saWIvc2VydmljZXMvbGFuZ3VhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLGVBQWU7SUFHMUIsWUFBbUIsU0FBMkI7UUFBM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFGOUMsY0FBUyxHQUF5QixJQUFJLEtBQUssRUFBaUIsQ0FBQztRQUczRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDakIsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFDOUIsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFDL0IsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FDaEMsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxjQUFjLENBQUMsUUFBZ0I7UUFFcEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUE7UUFDakMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDckcsT0FBUSxJQUFJLENBQUM7SUFDZixDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDckcsT0FBTyxJQUFJLElBQUksSUFBSSxDQUFBLENBQUMsQ0FBQSxJQUFJLENBQUEsQ0FBQyxDQUFBLElBQUksQ0FBQztJQUNoQyxDQUFDO0lBRU0sdUJBQXVCLENBQUMsUUFBUTtRQUNyQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlCLFlBQVksQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBbENVLGVBQWU7bUhBQWYsZUFBZSxjQUZkLE1BQU07OzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTGFuZ3VhZ2VNb2RlbCB9IGZyb20gJy4uL3V0aWwvbGFuZ3VhZ2UubW9kZWwnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMYW5ndWFnZVNlcnZpY2Uge1xuICBsYW5ndWFnZXM6IEFycmF5PExhbmd1YWdlTW9kZWw+ID0gbmV3IEFycmF5PExhbmd1YWdlTW9kZWw+KCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgKSB7XG4gICAgdGhpcy5sYW5ndWFnZXMucHVzaChcbiAgICAgIHsgbmFtZTogJ0NhdGFsw6AnLCBjb2RlOiAnY2EnIH0sXG4gICAgICB7IG5hbWU6ICdFc3Bhw7FvbCcsIGNvZGU6ICdlcycgfSxcbiAgICAgIHsgbmFtZTogJ0VuZ2xpc2gnLCBjb2RlOiAnZW4nIH1cbiAgICApO1xuICB9XG5cbiAgZ2V0TGFuZ3VhZ2VzKCkge1xuICAgIHJldHVybiB0aGlzLmxhbmd1YWdlcztcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VMYW5ndWFnZShsYW5nQ29kZTogc3RyaW5nKSB7XG5cbiAgICBjb25zb2xlLmxvZyhcImxhbmdDb2RlXCIsIGxhbmdDb2RlKVxuICAgIHRoaXMudHJhbnNsYXRlLnVzZShsYW5nQ29kZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q3VycmVudCgpIDogc3RyaW5nIHtcbiAgICBsZXQgbGFuZyA9IHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nID8gdGhpcy50cmFuc2xhdGUuY3VycmVudExhbmcgOiB0aGlzLnRyYW5zbGF0ZS5nZXREZWZhdWx0TGFuZygpO1xuICAgIHJldHVybiAgbGFuZztcbiAgfVxuXG4gIHB1YmxpYyBnZXRMYW5ndWFnZUFQSSgpIDogc3RyaW5nIHtcbiAgICBsZXQgbGFuZyA9IHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nID8gdGhpcy50cmFuc2xhdGUuY3VycmVudExhbmcgOiB0aGlzLnRyYW5zbGF0ZS5nZXREZWZhdWx0TGFuZygpO1xuICAgIHJldHVybiBsYW5nID09ICdlcyc/J2NzJzpsYW5nO1xuICB9XG5cbiAgcHVibGljIHNldExlbmd1YWdlTG9jYWxzdG9yYWdlKGxhbmd1YWdlKXtcbiAgICB0aGlzLmNoYW5nZUxhbmd1YWdlKGxhbmd1YWdlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnbGFuZ3VhZ2UnLCBsYW5ndWFnZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BehaviorSubject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LoadingService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.loadingSub = new BehaviorSubject(false);
|
|
7
|
+
/**
|
|
8
|
+
* Contains in-progress loading requests
|
|
9
|
+
*/
|
|
10
|
+
this.loadingMap = new Map();
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Sets the loadingSub property value based on the following:
|
|
14
|
+
* - If loading is true, add the provided url to the loadingMap with a true value, set loadingSub value to true
|
|
15
|
+
* - If loading is false, remove the loadingMap entry and only when the map is empty will we set loadingSub to false
|
|
16
|
+
* This pattern ensures if there are multiple requests awaiting completion, we don't set loading to false before
|
|
17
|
+
* other requests have completed. At the moment, this function is only called from the @link{HttpRequestInterceptor}
|
|
18
|
+
* @param loading {boolean}
|
|
19
|
+
* @param url {string}
|
|
20
|
+
*/
|
|
21
|
+
setLoading(loading, url) {
|
|
22
|
+
if (!url) {
|
|
23
|
+
throw new Error('The request URL must be provided to the LoadingService.setLoading function');
|
|
24
|
+
}
|
|
25
|
+
if (loading === true) {
|
|
26
|
+
this.loadingMap.set(url, loading);
|
|
27
|
+
this.loadingSub.next(true);
|
|
28
|
+
}
|
|
29
|
+
else if (loading === false && this.loadingMap.has(url)) {
|
|
30
|
+
this.loadingMap.delete(url);
|
|
31
|
+
}
|
|
32
|
+
if (this.loadingMap.size === 0) {
|
|
33
|
+
this.loadingSub.next(false);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LoadingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
37
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LoadingService, providedIn: 'root' }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LoadingService, decorators: [{
|
|
40
|
+
type: Injectable,
|
|
41
|
+
args: [{
|
|
42
|
+
providedIn: 'root'
|
|
43
|
+
}]
|
|
44
|
+
}], ctorParameters: () => [] });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9sb2FkaW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sTUFBTSxDQUFDOztBQUtyQyxNQUFNLE9BQU8sY0FBYztJQU96QjtRQU5BLGVBQVUsR0FBNkIsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDM0U7O1dBRUc7UUFDSCxlQUFVLEdBQXlCLElBQUksR0FBRyxFQUFtQixDQUFDO0lBRTlDLENBQUM7SUFFakI7Ozs7Ozs7O09BUUc7SUFDSCxVQUFVLENBQUMsT0FBZ0IsRUFBRSxHQUFXO1FBQ3RDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNULE1BQU0sSUFBSSxLQUFLLENBQUMsNEVBQTRFLENBQUMsQ0FBQztRQUNoRyxDQUFDO1FBQ0QsSUFBSSxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUM7YUFBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixDQUFDO0lBQ0gsQ0FBQzsrR0EvQlUsY0FBYzttSEFBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9hZGluZ1NlcnZpY2Uge1xuICBsb2FkaW5nU3ViOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgLyoqXG4gICAqIENvbnRhaW5zIGluLXByb2dyZXNzIGxvYWRpbmcgcmVxdWVzdHNcbiAgICovXG4gIGxvYWRpbmdNYXA6IE1hcDxzdHJpbmcsIGJvb2xlYW4+ID0gbmV3IE1hcDxzdHJpbmcsIGJvb2xlYW4+KCk7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbG9hZGluZ1N1YiBwcm9wZXJ0eSB2YWx1ZSBiYXNlZCBvbiB0aGUgZm9sbG93aW5nOlxuICAgKiAtIElmIGxvYWRpbmcgaXMgdHJ1ZSwgYWRkIHRoZSBwcm92aWRlZCB1cmwgdG8gdGhlIGxvYWRpbmdNYXAgd2l0aCBhIHRydWUgdmFsdWUsIHNldCBsb2FkaW5nU3ViIHZhbHVlIHRvIHRydWVcbiAgICogLSBJZiBsb2FkaW5nIGlzIGZhbHNlLCByZW1vdmUgdGhlIGxvYWRpbmdNYXAgZW50cnkgYW5kIG9ubHkgd2hlbiB0aGUgbWFwIGlzIGVtcHR5IHdpbGwgd2Ugc2V0IGxvYWRpbmdTdWIgdG8gZmFsc2VcbiAgICogVGhpcyBwYXR0ZXJuIGVuc3VyZXMgaWYgdGhlcmUgYXJlIG11bHRpcGxlIHJlcXVlc3RzIGF3YWl0aW5nIGNvbXBsZXRpb24sIHdlIGRvbid0IHNldCBsb2FkaW5nIHRvIGZhbHNlIGJlZm9yZVxuICAgKiBvdGhlciByZXF1ZXN0cyBoYXZlIGNvbXBsZXRlZC4gQXQgdGhlIG1vbWVudCwgdGhpcyBmdW5jdGlvbiBpcyBvbmx5IGNhbGxlZCBmcm9tIHRoZSBAbGlua3tIdHRwUmVxdWVzdEludGVyY2VwdG9yfVxuICAgKiBAcGFyYW0gbG9hZGluZyB7Ym9vbGVhbn1cbiAgICogQHBhcmFtIHVybCB7c3RyaW5nfVxuICAgKi9cbiAgc2V0TG9hZGluZyhsb2FkaW5nOiBib29sZWFuLCB1cmw6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdXJsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSByZXF1ZXN0IFVSTCBtdXN0IGJlIHByb3ZpZGVkIHRvIHRoZSBMb2FkaW5nU2VydmljZS5zZXRMb2FkaW5nIGZ1bmN0aW9uJyk7XG4gICAgfVxuICAgIGlmIChsb2FkaW5nID09PSB0cnVlKSB7XG4gICAgICB0aGlzLmxvYWRpbmdNYXAuc2V0KHVybCwgbG9hZGluZyk7XG4gICAgICB0aGlzLmxvYWRpbmdTdWIubmV4dCh0cnVlKTtcbiAgICB9ZWxzZSBpZiAobG9hZGluZyA9PT0gZmFsc2UgJiYgdGhpcy5sb2FkaW5nTWFwLmhhcyh1cmwpKSB7XG4gICAgICB0aGlzLmxvYWRpbmdNYXAuZGVsZXRlKHVybCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmxvYWRpbmdNYXAuc2l6ZSA9PT0gMCkge1xuICAgICAgdGhpcy5sb2FkaW5nU3ViLm5leHQoZmFsc2UpO1xuICAgIH1cbiAgfVxufSJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Capacitor } from '@capacitor/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@ionic/angular";
|
|
5
|
+
export class LoggingService {
|
|
6
|
+
constructor(platform) {
|
|
7
|
+
this.platform = platform;
|
|
8
|
+
}
|
|
9
|
+
logError(message) {
|
|
10
|
+
// Send errors to be saved here
|
|
11
|
+
if (Capacitor.isNativePlatform()) {
|
|
12
|
+
console.error("Error log: ", message);
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
console.error("Error log: ", message);
|
|
16
|
+
}
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LoggingService, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
20
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LoggingService, providedIn: 'root' }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: LoggingService, decorators: [{
|
|
23
|
+
type: Injectable,
|
|
24
|
+
args: [{
|
|
25
|
+
providedIn: 'root'
|
|
26
|
+
}]
|
|
27
|
+
}], ctorParameters: () => [{ type: i1.Platform }] });
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9sb2dnaW5nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUs1QyxNQUFNLE9BQU8sY0FBYztJQUV6QixZQUFvQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQUksQ0FBQztJQUUzQyxRQUFRLENBQUMsT0FBTztRQUVkLCtCQUErQjtRQUMvQixJQUFJLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLENBQUM7WUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDeEMsQ0FBQzthQUFJLENBQUM7WUFDSixPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN4QyxDQUFDO1FBRUQsT0FBTztJQUNULENBQUM7K0dBZFUsY0FBYzttSEFBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IENhcGFjaXRvciB9IGZyb20gJ0BjYXBhY2l0b3IvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExvZ2dpbmdTZXJ2aWNlIHtcbiAgXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtKSB7IH1cblxuICBsb2dFcnJvcihtZXNzYWdlKSB7XG5cbiAgICAvLyBTZW5kIGVycm9ycyB0byBiZSBzYXZlZCBoZXJlXG4gICAgaWYgKENhcGFjaXRvci5pc05hdGl2ZVBsYXRmb3JtKCkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBsb2c6IFwiLCBtZXNzYWdlKTtcbiAgICB9ZWxzZXtcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciBsb2c6IFwiLCBtZXNzYWdlKTtcbiAgICB9XG4gICAgXG4gICAgcmV0dXJuO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { NavigationEnd } from '@angular/router';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/router";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
export class NavigationService {
|
|
7
|
+
constructor(router, location) {
|
|
8
|
+
this.router = router;
|
|
9
|
+
this.location = location;
|
|
10
|
+
this.history = [];
|
|
11
|
+
this.router.events.subscribe((event) => {
|
|
12
|
+
if (event instanceof NavigationEnd) {
|
|
13
|
+
//console.log("NavigationEnd", event.urlAfterRedirects);
|
|
14
|
+
this.history.push(event.urlAfterRedirects);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
back() {
|
|
19
|
+
this.history.pop();
|
|
20
|
+
if (this.history?.length > 0)
|
|
21
|
+
this.location.back();
|
|
22
|
+
else
|
|
23
|
+
this.router.navigateByUrl("/home");
|
|
24
|
+
}
|
|
25
|
+
async close(modalCtrl) {
|
|
26
|
+
const modal = await modalCtrl?.getTop();
|
|
27
|
+
if (modal)
|
|
28
|
+
await modal.dismiss({ error: null });
|
|
29
|
+
else
|
|
30
|
+
this.back();
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NavigationService, deps: [{ token: i1.Router }, { token: i2.Location }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
33
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NavigationService, providedIn: 'root' }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NavigationService, decorators: [{
|
|
36
|
+
type: Injectable,
|
|
37
|
+
args: [{
|
|
38
|
+
providedIn: 'root'
|
|
39
|
+
}]
|
|
40
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.Location }] });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsYUFBYSxFQUFVLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFPeEQsTUFBTSxPQUFPLGlCQUFpQjtJQUk1QixZQUFvQixNQUFjLEVBQVUsUUFBa0I7UUFBMUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLGFBQVEsR0FBUixRQUFRLENBQVU7UUFGdEQsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUc3QixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNyQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUUsQ0FBQztnQkFDbkMsd0RBQXdEO2dCQUN4RCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUM3QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sR0FBRyxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUE7O1lBRXBCLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVU7UUFDcEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDeEMsSUFBSSxLQUFLO1lBQ1AsTUFBTSxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUMsS0FBSyxFQUFDLElBQUksRUFBQyxDQUFDLENBQUM7O1lBQy9CLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNsQixDQUFDOytHQTFCVSxpQkFBaUI7bUhBQWpCLGlCQUFpQixjQUZoQixNQUFNOzs0RkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uRW5kLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmF2aWdhdGlvblNlcnZpY2Uge1xuXG4gIHByaXZhdGUgaGlzdG9yeTogc3RyaW5nW10gPSBbXTtcbiBcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBsb2NhdGlvbjogTG9jYXRpb24sIC8qIHByaXZhdGUgbW9kYWxDdHJsOiBNb2RhbENvbnRyb2xsZXIgKi8pIHtcbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICAvL2NvbnNvbGUubG9nKFwiTmF2aWdhdGlvbkVuZFwiLCBldmVudC51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgICAgIHRoaXMuaGlzdG9yeS5wdXNoKGV2ZW50LnVybEFmdGVyUmVkaXJlY3RzKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuIFxuICBiYWNrKCk6IHZvaWQge1xuICAgIHRoaXMuaGlzdG9yeS5wb3AoKTtcbiAgICBpZiAodGhpcy5oaXN0b3J5Py5sZW5ndGggPiAwKVxuICAgICAgdGhpcy5sb2NhdGlvbi5iYWNrKClcbiAgICBlbHNlIFxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChcIi9ob21lXCIpO1xuICB9XG5cbiAgYXN5bmMgY2xvc2UobW9kYWxDdHJsPyk6IFByb21pc2U8dm9pZD4gIHtcbiAgICBjb25zdCBtb2RhbCA9IGF3YWl0IG1vZGFsQ3RybD8uZ2V0VG9wKCk7XG4gICAgaWYgKG1vZGFsKVxuICAgICAgYXdhaXQgbW9kYWwuZGlzbWlzcyh7ZXJyb3I6bnVsbH0pO1xuICAgIGVsc2UgdGhpcy5iYWNrKClcbiAgfVxuIFxuXG4gIFxufVxuIl19
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { fromEvent, merge, of, Observable } from 'rxjs';
|
|
3
|
+
import { mapTo } from 'rxjs/operators';
|
|
4
|
+
import { Capacitor } from '@capacitor/core';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@awesome-cordova-plugins/network/ngx";
|
|
7
|
+
import * as i2 from "@ionic/angular";
|
|
8
|
+
export class NetworkService {
|
|
9
|
+
constructor(network, platform) {
|
|
10
|
+
this.network = network;
|
|
11
|
+
this.platform = platform;
|
|
12
|
+
this.online$ = undefined;
|
|
13
|
+
this.online$ = new Observable(observer => {
|
|
14
|
+
observer.next(true);
|
|
15
|
+
}).pipe(mapTo(true));
|
|
16
|
+
if (Capacitor.isNativePlatform()) {
|
|
17
|
+
// on Device
|
|
18
|
+
console.log('on Device');
|
|
19
|
+
this.online$ = merge(this.network.onConnect().pipe(mapTo(true)), this.network.onDisconnect().pipe(mapTo(false)));
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
// on Browser
|
|
23
|
+
console.log('on Browser');
|
|
24
|
+
this.online$ = merge(of(navigator.onLine), fromEvent(window, 'online').pipe(mapTo(true)), fromEvent(window, 'offline').pipe(mapTo(false)));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
getNetworkType() {
|
|
28
|
+
return this.network.type;
|
|
29
|
+
}
|
|
30
|
+
getNetworkStatus() {
|
|
31
|
+
return this.online$;
|
|
32
|
+
}
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NetworkService, deps: [{ token: i1.Network }, { token: i2.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
34
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NetworkService, providedIn: 'root' }); }
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NetworkService, decorators: [{
|
|
37
|
+
type: Injectable,
|
|
38
|
+
args: [{
|
|
39
|
+
providedIn: 'root'
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: () => [{ type: i1.Network }, { type: i2.Platform }] });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VydmljZS1saWIvc3JjL2xpYi9zZXJ2aWNlcy9uZXR3b3JrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7Ozs7QUFJNUMsTUFBTSxPQUFPLGNBQWM7SUFJdkIsWUFBbUIsT0FBZ0IsRUFBUyxRQUFrQjtRQUEzQyxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUZ4RCxZQUFPLEdBQXdCLFNBQVMsQ0FBQztRQUczQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3JDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBRXJCLElBQUksU0FBUyxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQztZQUMvQixZQUFZO1lBQ1osT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNqRCxDQUFDO1FBQ04sQ0FBQzthQUFNLENBQUM7WUFDSixhQUFhO1lBQ2IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FDaEIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFDcEIsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQzdDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNsRCxDQUFDO1FBQ04sQ0FBQztJQUNMLENBQUM7SUFFTSxjQUFjO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVNLGdCQUFnQjtRQUNuQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQzsrR0FqQ1EsY0FBYzttSEFBZCxjQUFjLGNBRmIsTUFBTTs7NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZXR3b3JrIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL25ldHdvcmsvbmd4JztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtZXJnZSwgb2YsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcFRvIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ2FwYWNpdG9yIH0gZnJvbSAnQGNhcGFjaXRvci9jb3JlJztcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIE5ldHdvcmtTZXJ2aWNlIHtcblxuICBwcml2YXRlIG9ubGluZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB1bmRlZmluZWQ7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgbmV0d29yazogTmV0d29yaywgcHVibGljIHBsYXRmb3JtOiBQbGF0Zm9ybSkge1xuICAgICAgICB0aGlzLm9ubGluZSQgPSBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHRydWUpO1xuICAgICAgICB9KS5waXBlKG1hcFRvKHRydWUpKTtcblxuICAgICAgICBpZiAoQ2FwYWNpdG9yLmlzTmF0aXZlUGxhdGZvcm0oKSkge1xuICAgICAgICAgICAgLy8gb24gRGV2aWNlXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnb24gRGV2aWNlJyk7XG4gICAgICAgICAgICB0aGlzLm9ubGluZSQgPSBtZXJnZShcbiAgICAgICAgICAgICAgICB0aGlzLm5ldHdvcmsub25Db25uZWN0KCkucGlwZShtYXBUbyh0cnVlKSksXG4gICAgICAgICAgICAgICAgdGhpcy5uZXR3b3JrLm9uRGlzY29ubmVjdCgpLnBpcGUobWFwVG8oZmFsc2UpKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIG9uIEJyb3dzZXJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdvbiBCcm93c2VyJyk7XG4gICAgICAgICAgICB0aGlzLm9ubGluZSQgPSBtZXJnZShcbiAgICAgICAgICAgICAgICBvZihuYXZpZ2F0b3Iub25MaW5lKSxcbiAgICAgICAgICAgICAgICBmcm9tRXZlbnQod2luZG93LCAnb25saW5lJykucGlwZShtYXBUbyh0cnVlKSksXG4gICAgICAgICAgICAgICAgZnJvbUV2ZW50KHdpbmRvdywgJ29mZmxpbmUnKS5waXBlKG1hcFRvKGZhbHNlKSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TmV0d29ya1R5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubmV0d29yay50eXBlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXROZXR3b3JrU3RhdHVzKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vbmxpbmUkO1xuICAgIH1cbn1cblxuIl19
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { MatSnackBarConfig } from '@angular/material/snack-bar';
|
|
3
|
+
import { ContentTypePath } from "../util/notification-options";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/snack-bar";
|
|
6
|
+
import * as i2 from "@ionic/angular";
|
|
7
|
+
import * as i3 from "@ngx-translate/core";
|
|
8
|
+
import * as i4 from "@angular/router";
|
|
9
|
+
export class NotificationService {
|
|
10
|
+
constructor(snackBar, zone, alertCtrl, translate, toastController, _zone, platform, router) {
|
|
11
|
+
this.snackBar = snackBar;
|
|
12
|
+
this.zone = zone;
|
|
13
|
+
this.alertCtrl = alertCtrl;
|
|
14
|
+
this.translate = translate;
|
|
15
|
+
this.toastController = toastController;
|
|
16
|
+
this._zone = _zone;
|
|
17
|
+
this.platform = platform;
|
|
18
|
+
this.router = router;
|
|
19
|
+
}
|
|
20
|
+
showSuccess(message) {
|
|
21
|
+
// Had an issue with the snackbar being ran outside of angular's zone.
|
|
22
|
+
this.zone.run(() => {
|
|
23
|
+
// The second parameter is the text in the button.
|
|
24
|
+
// In the third, we send in the css class for the snack bar.
|
|
25
|
+
const config = new MatSnackBarConfig();
|
|
26
|
+
config.panelClass = ['custom-class'];
|
|
27
|
+
config.verticalPosition = 'bottom';
|
|
28
|
+
config.horizontalPosition = 'center';
|
|
29
|
+
config.duration = 3000;
|
|
30
|
+
this.snackBar.open(message, '', config);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
showError(error) {
|
|
34
|
+
let message;
|
|
35
|
+
if (error.includes('ERR_INTERNET_DISCONNECTED') || error.toLowerCase().includes('network error') || error.toLowerCase().includes('unknown error'))
|
|
36
|
+
message = this.translate.instant('commons.error-network');
|
|
37
|
+
else if (error.includes('Timeout has occurred'))
|
|
38
|
+
message = this.translate.instant('commons.error-timeout');
|
|
39
|
+
else
|
|
40
|
+
message = error;
|
|
41
|
+
this.zone.run(() => {
|
|
42
|
+
const config = new MatSnackBarConfig();
|
|
43
|
+
config.panelClass = ['example-pizza-party'];
|
|
44
|
+
config.verticalPosition = 'bottom';
|
|
45
|
+
config.horizontalPosition = 'center';
|
|
46
|
+
config.duration = 3000;
|
|
47
|
+
this.snackBar.open(message, 'X', config);
|
|
48
|
+
console.log("NotificationService", message);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
//Toast
|
|
52
|
+
displayToastSuccessful() {
|
|
53
|
+
try {
|
|
54
|
+
this.toastController.dismiss().then(() => {
|
|
55
|
+
}).catch(() => {
|
|
56
|
+
}).finally(() => {
|
|
57
|
+
console.log('Closed');
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
catch (e) { }
|
|
61
|
+
this.toastController.create({
|
|
62
|
+
position: 'middle', //'middle', 'bottom'
|
|
63
|
+
cssClass: 'toast-custom-class',
|
|
64
|
+
animated: true,
|
|
65
|
+
duration: 2000,
|
|
66
|
+
}).then((toast) => {
|
|
67
|
+
toast.present();
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
displayToastPusher(message) {
|
|
71
|
+
try {
|
|
72
|
+
this.toastController.dismiss().then(() => {
|
|
73
|
+
}).catch(() => {
|
|
74
|
+
}).finally(() => {
|
|
75
|
+
console.log('Closed');
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
catch (e) { }
|
|
79
|
+
this.toastController.create({
|
|
80
|
+
position: 'middle', //'middle', 'bottom'
|
|
81
|
+
cssClass: 'toast-pusher-class',
|
|
82
|
+
message: message,
|
|
83
|
+
animated: true,
|
|
84
|
+
duration: 30000,
|
|
85
|
+
buttons: [{
|
|
86
|
+
text: 'Cerrar',
|
|
87
|
+
icon: 'close',
|
|
88
|
+
role: 'cancel',
|
|
89
|
+
handler: () => {
|
|
90
|
+
console.log('Cancel clicked');
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
]
|
|
94
|
+
}).then((toast) => {
|
|
95
|
+
toast.present();
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
async confirmAllNotification(message) {
|
|
99
|
+
const alert = await this.alertCtrl.create({
|
|
100
|
+
cssClass: 'my-alert-class',
|
|
101
|
+
message: message,
|
|
102
|
+
buttons: [
|
|
103
|
+
{
|
|
104
|
+
text: this.translate.instant("button.ok"),
|
|
105
|
+
handler: (data) => {
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
]
|
|
109
|
+
});
|
|
110
|
+
await alert.present();
|
|
111
|
+
}
|
|
112
|
+
redirecPushNotification(data, notification) {
|
|
113
|
+
switch (data.action) {
|
|
114
|
+
case "SHARECAREPLAN":
|
|
115
|
+
this._zone.run(() => {
|
|
116
|
+
this.router.navigate([ContentTypePath.Home], { state: { data: data, openNotificationAlertDialog: true } });
|
|
117
|
+
});
|
|
118
|
+
break;
|
|
119
|
+
case "MESSAGE":
|
|
120
|
+
let staff;
|
|
121
|
+
// Different payloads for ios and android
|
|
122
|
+
if (this.platform.is('ios'))
|
|
123
|
+
staff = data?.origin;
|
|
124
|
+
else
|
|
125
|
+
staff = data?.origin ? JSON.parse(data?.origin) : null;
|
|
126
|
+
console.log('staff: ', staff);
|
|
127
|
+
this._zone.run(() => {
|
|
128
|
+
this.router.navigate([ContentTypePath.Message], { state: { data: data, chat: data.id, staff: staff, customData: data?.user_id } });
|
|
129
|
+
});
|
|
130
|
+
break;
|
|
131
|
+
case "FORM":
|
|
132
|
+
this._zone.run(() => {
|
|
133
|
+
this.router.navigate([ContentTypePath.Forms, { id: data.id }], { state: { data: data } });
|
|
134
|
+
});
|
|
135
|
+
break;
|
|
136
|
+
case "DRUGINTAKE":
|
|
137
|
+
this._zone.run(() => {
|
|
138
|
+
this.router.navigate([ContentTypePath.Medication], { state: { data: data, segment: 'medication' } });
|
|
139
|
+
});
|
|
140
|
+
break;
|
|
141
|
+
case "VIDEOCALL":
|
|
142
|
+
//return "VIDEOCALL";
|
|
143
|
+
break;
|
|
144
|
+
case "ADVICE":
|
|
145
|
+
this._zone.run(() => {
|
|
146
|
+
this.router.navigateByUrl('/home').then(() => {
|
|
147
|
+
this.router.navigate([ContentTypePath.AdvicesDetail], { state: { data: data, id: data.id } });
|
|
148
|
+
});
|
|
149
|
+
});
|
|
150
|
+
break;
|
|
151
|
+
case "NEWS":
|
|
152
|
+
this._zone.run(() => {
|
|
153
|
+
this.router.navigateByUrl('/home').then(() => {
|
|
154
|
+
this.router.navigate([ContentTypePath.NewsDetail], { state: { data: data, id: data.id } });
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
break;
|
|
158
|
+
case "DIET":
|
|
159
|
+
this._zone.run(() => {
|
|
160
|
+
this.router.navigate([ContentTypePath.DietsDetail], { state: { data: data, id: data.id } });
|
|
161
|
+
});
|
|
162
|
+
break;
|
|
163
|
+
case "AGENDA":
|
|
164
|
+
this._zone.run(() => {
|
|
165
|
+
this.router.navigate([ContentTypePath.AgendaDetail], { state: { data: data, id: data.id } });
|
|
166
|
+
});
|
|
167
|
+
break;
|
|
168
|
+
case "REMINDER":
|
|
169
|
+
this._zone.run(() => {
|
|
170
|
+
this.router.navigate([ContentTypePath.ReminderDetail], { state: { data: data, id: data.id } });
|
|
171
|
+
});
|
|
172
|
+
break;
|
|
173
|
+
case "GAME":
|
|
174
|
+
this._zone.run(() => {
|
|
175
|
+
if (data.type == 'form') {
|
|
176
|
+
this.router.navigate([ContentTypePath.FormDetail, { id: data.form_id }], { state: { data: data, game_play_id: data?.game_play_id } });
|
|
177
|
+
}
|
|
178
|
+
else
|
|
179
|
+
this.router.navigate([ContentTypePath.GamesDetail], { state: { data: data, id: data.id, server_url: data?.server_url } });
|
|
180
|
+
});
|
|
181
|
+
break;
|
|
182
|
+
case "EXERCISE":
|
|
183
|
+
this._zone.run(() => {
|
|
184
|
+
this.router.navigate([ContentTypePath.Exercises], { state: { data: data, id: data.id, programable_id: data.programable_play_id } });
|
|
185
|
+
});
|
|
186
|
+
break;
|
|
187
|
+
default:
|
|
188
|
+
console.error('Action on localNotificationActionPerformed not found, redirecting to videocall: ');
|
|
189
|
+
// this.redirecToVideocall(notification)
|
|
190
|
+
break;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NotificationService, deps: [{ token: i1.MatSnackBar }, { token: i0.NgZone }, { token: i2.AlertController }, { token: i3.TranslateService }, { token: i2.ToastController }, { token: i0.NgZone }, { token: i2.Platform }, { token: i4.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
194
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NotificationService, providedIn: 'root' }); }
|
|
195
|
+
}
|
|
196
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: NotificationService, decorators: [{
|
|
197
|
+
type: Injectable,
|
|
198
|
+
args: [{
|
|
199
|
+
providedIn: 'root'
|
|
200
|
+
}]
|
|
201
|
+
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i0.NgZone }, { type: i2.AlertController }, { type: i3.TranslateService }, { type: i2.ToastController }, { type: i0.NgZone }, { type: i2.Platform }, { type: i4.Router }] });
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZXJ2aWNlLWxpYi9zcmMvbGliL3NlcnZpY2VzL25vdGlmaWNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFBOzs7Ozs7QUFNOUQsTUFBTSxPQUFPLG1CQUFtQjtJQUU5QixZQUNTLFFBQXFCLEVBQ3BCLElBQVksRUFDYixTQUEwQixFQUN6QixTQUEyQixFQUMzQixlQUFnQyxFQUNoQyxLQUFhLEVBQVcsUUFBa0IsRUFBVSxNQUFjO1FBTG5FLGFBQVEsR0FBUixRQUFRLENBQWE7UUFDcEIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNiLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQ3pCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVcsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7SUFDeEUsQ0FBQztJQUVMLFdBQVcsQ0FBQyxPQUFlO1FBQ3pCLHNFQUFzRTtRQUN0RSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDakIsbURBQW1EO1lBQ25ELDREQUE0RDtZQUM1RCxNQUFNLE1BQU0sR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsTUFBTSxDQUFDLFVBQVUsR0FBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3RDLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7WUFDbkMsTUFBTSxDQUFDLGtCQUFr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QUFJLEVBQUMsSUFBSSxFQUFFLEVBQUUsRUFBQyxJQUFJLENBQUMsRUFBRSxFQUFDLEVBQUMsQ0FBQyxDQUFDO29CQUN0RixDQUFDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUUsQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMvRixDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUUsQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRyxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxVQUFVO2dCQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUUsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRyxDQUFDLENBQUMsQ0FBQztnQkFDSCxNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRTtvQkFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLE1BQU0sRUFBRSxDQUFDO3dCQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBRSxDQUFDLGVBQWUsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUN6SSxDQUFDOzt3QkFDQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzlILENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07WUFDUixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDdEksQ0FBQyxDQUFDLENBQUM7Z0JBQ0gsTUFBTTtZQUNSO2dCQUNFLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0ZBQWtGLENBQUMsQ0FBQTtnQkFDbEcsd0NBQXdDO2dCQUN2QyxNQUFNO1FBQ1YsQ0FBQztJQUNMLENBQUM7K0dBNU1VLG1CQUFtQjttSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyLCBNYXRTbmFja0JhckNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBBbGVydENvbnRyb2xsZXIsIFBsYXRmb3JtLCBUb2FzdENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBDb250ZW50VHlwZVBhdGggfSBmcm9tIFwiLi4vdXRpbC9ub3RpZmljYXRpb24tb3B0aW9uc1wiXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOb3RpZmljYXRpb25TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHB1YmxpYyBhbGVydEN0cmw6IEFsZXJ0Q29udHJvbGxlcixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHRvYXN0Q29udHJvbGxlcjogVG9hc3RDb250cm9sbGVyLFxuICAgIHByaXZhdGUgX3pvbmU6IE5nWm9uZSwgIHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICApIHsgfVxuXG4gIHNob3dTdWNjZXNzKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgIC8vIEhhZCBhbiBpc3N1ZSB3aXRoIHRoZSBzbmFja2JhciBiZWluZyByYW4gb3V0c2lkZSBvZiBhbmd1bGFyJ3Mgem9uZS5cbiAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgIC8vIFRoZSBzZWNvbmQgcGFyYW1ldGVyIGlzIHRoZSB0ZXh0IGluIHRoZSBidXR0b24uIFxuICAgICAgLy8gSW4gdGhlIHRoaXJkLCB3ZSBzZW5kIGluIHRoZSBjc3MgY2xhc3MgZm9yIHRoZSBzbmFjayBiYXIuXG4gICAgICBjb25zdCBjb25maWcgPSBuZXcgTWF0U25hY2tCYXJDb25maWcoKTtcbiAgICAgIGNvbmZpZy5wYW5lbENsYXNzID0gIFsnY3VzdG9tLWNsYXNzJ107XG4gICAgICBjb25maWcudmVydGljYWxQb3NpdGlvbiA9ICdib3R0b20nO1xuICAgICAgY29uZmlnLmhvcml6b250YWxQb3NpdGlvbiA9ICdjZW50ZXInO1xuICAgICAgY29uZmlnLmR1cmF0aW9uID0gMzAwMDtcbiAgICAgIHRoaXMuc25hY2tCYXIub3BlbihtZXNzYWdlLCcnLCBjb25maWcpO1xuICAgICAgXG4gICAgfSk7XG4gIH1cblxuICBzaG93RXJyb3IoZXJyb3I6IHN0cmluZyk6IHZvaWQge1xuICAgIFxuICAgIGxldCBtZXNzYWdlOnN0cmluZztcbiAgICBpZihlcnJvci5pbmNsdWRlcygnRVJSX0lOVEVSTkVUX0RJU0NPTk5FQ1RFRCcpIHx8IGVycm9yLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ25ldHdvcmsgZXJyb3InKSB8fCBlcnJvci50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCd1bmtub3duIGVycm9yJykpXG4gICAgICAgIG1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdjb21tb25zLmVycm9yLW5ldHdvcmsnKTtcbiAgICAgIGVsc2UgaWYoZXJyb3IuaW5jbHVkZXMoJ1RpbWVvdXQgaGFzIG9jY3VycmVkJykpXG4gICAgICAgIG1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdjb21tb25zLmVycm9yLXRpbWVvdXQnKTtcbiAgICAgIGVsc2VcbiAgICAgICAgbWVzc2FnZSA9IGVycm9yO1xuICAgICAgXG5cbiAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcblxuICAgICAgY29uc3QgY29uZmlnID0gbmV3IE1hdFNuYWNrQmFyQ29uZmlnKCk7XG4gICAgICBjb25maWcucGFuZWxDbGFzcyA9IFsnZXhhbXBsZS1waXp6YS1wYXJ0eSddO1xuICAgICAgY29uZmlnLnZlcnRpY2FsUG9zaXRpb24gPSAnYm90dG9tJztcbiAgICAgIGNvbmZpZy5ob3Jpem9udGFsUG9zaXRpb24gPSAnY2VudGVyJztcbiAgICAgIGNvbmZpZy5kdXJhdGlvbiA9IDMwMDA7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4obWVzc2FnZSwnWCcsIGNvbmZpZyk7XG4gICAgIFxuICAgICAgY29uc29sZS5sb2coXCJOb3RpZmljYXRpb25TZXJ2aWNlXCIsIG1lc3NhZ2UpO1xuICAgICAgXG4gICAgfSk7XG4gIH1cblxuICAvL1RvYXN0XG4gIGRpc3BsYXlUb2FzdFN1Y2Nlc3NmdWwoKSB7IFxuICAgIHRyeSB7XG4gICAgICB0aGlzLnRvYXN0Q29udHJvbGxlci5kaXNtaXNzKCkudGhlbigoKSA9PiB7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ0Nsb3NlZCcpXG4gICAgICB9KTtcbiAgICB9IGNhdGNoKGUpIHt9XG4gICAgXG4gICAgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uOiAnbWlkZGxlJywgLy8nbWlkZGxlJywgJ2JvdHRvbSdcbiAgICAgIGNzc0NsYXNzOiAndG9hc3QtY3VzdG9tLWNsYXNzJyxcbiAgICAgIGFuaW1hdGVkOiB0cnVlLFxuICAgICAgZHVyYXRpb246IDIwMDAsXG4gICAgfSkudGhlbigodG9hc3QpID0+IHtcbiAgICAgIHRvYXN0LnByZXNlbnQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGRpc3BsYXlUb2FzdFB1c2hlcihtZXNzYWdlKSB7IFxuICAgIHRyeSB7XG4gICAgICB0aGlzLnRvYXN0Q29udHJvbGxlci5kaXNtaXNzKCkudGhlbigoKSA9PiB7XG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ0Nsb3NlZCcpXG4gICAgICB9KTtcbiAgICB9IGNhdGNoKGUpIHt9XG4gICAgXG4gICAgdGhpcy50b2FzdENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uOiAnbWlkZGxlJywgLy8nbWlkZGxlJywgJ2JvdHRvbSdcbiAgICAgIGNzc0NsYXNzOiAndG9hc3QtcHVzaGVyLWNsYXNzJyxcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UsXG4gICAgICBhbmltYXRlZDogdHJ1ZSxcbiAgICAgIGR1cmF0aW9uOiAzMDAwMCxcbiAgICAgIGJ1dHRvbnM6IFt7XG4gICAgICAgICAgdGV4dDogJ0NlcnJhcicsXG4gICAgICAgICAgaWNvbjogJ2Nsb3NlJyxcbiAgICAgICAgICByb2xlOiAnY2FuY2VsJyxcbiAgICAgICAgICBoYW5kbGVyOiAoKSA9PiB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnQ2FuY2VsIGNsaWNrZWQnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9KS50aGVuKCh0b2FzdCkgPT4ge1xuICAgICAgdG9hc3QucHJlc2VudCgpO1xuICAgIH0pO1xuICB9XG5cblxuICBhc3luYyBjb25maXJtQWxsTm90aWZpY2F0aW9uKG1lc3NhZ2UpIHtcbiAgICBjb25zdCBhbGVydCA9IGF3YWl0IHRoaXMuYWxlcnRDdHJsLmNyZWF0ZSh7XG4gICAgICBjc3NDbGFzczogJ215LWFsZXJ0LWNsYXNzJyxcbiAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UgLFxuICAgICAgICBidXR0b25zOiBbXG4gICAgICAgICB7XG4gICAgICAgICAgICB0ZXh0OiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KFwiYnV0dG9uLm9rXCIpLFxuICAgICAgICAgICAgaGFuZGxlcjogKGRhdGEpID0+IHtcbiAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICB9KTtcblxuICAgIGF3YWl0IGFsZXJ0LnByZXNlbnQoKTtcbiAgfVxuXG5cbiAgcmVkaXJlY1B1c2hOb3RpZmljYXRpb24oZGF0YSwgbm90aWZpY2F0aW9uPykge1xuXG5cbiAgICBzd2l0Y2ggKGRhdGEuYWN0aW9uKSB7XG5cbiAgICAgIGNhc2UgXCJTSEFSRUNBUkVQTEFOXCI6XG4gICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5Ib21lXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBvcGVuTm90aWZpY2F0aW9uQWxlcnREaWFsb2c6IHRydWV9IH0pO1xuICAgICAgICB9KTtcblxuICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIFwiTUVTU0FHRVwiOlxuICAgICAgICBsZXQgc3RhZmY7XG4gICAgICAgIC8vIERpZmZlcmVudCBwYXlsb2FkcyBmb3IgaW9zIGFuZCBhbmRyb2lkXG4gICAgICAgIGlmICh0aGlzLnBsYXRmb3JtLmlzKCdpb3MnKSkgXG4gICAgICAgICAgc3RhZmYgPSBkYXRhPy5vcmlnaW47XG4gICAgICAgIGVsc2UgXG4gICAgICAgICAgc3RhZmYgPSBkYXRhPy5vcmlnaW4/IEpTT04ucGFyc2UoZGF0YT8ub3JpZ2luKSA6IG51bGw7XG4gICAgICAgIGNvbnNvbGUubG9nKCdzdGFmZjogJywgc3RhZmYpO1xuXG4gICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5NZXNzYWdlXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBjaGF0OiBkYXRhLmlkLCBzdGFmZjogc3RhZmYsIGN1c3RvbURhdGE6IGRhdGE/LnVzZXJfaWQgfSB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiRk9STVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLkZvcm1zLCB7IGlkOiBkYXRhLmlkIH1dLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEgfSB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIkRSVUdJTlRBS0VcIjpcbiAgICAgICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5NZWRpY2F0aW9uXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBzZWdtZW50OiAnbWVkaWNhdGlvbicgfSB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIlZJREVPQ0FMTFwiOlxuICAgICAgICAgLy9yZXR1cm4gXCJWSURFT0NBTExcIjtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIkFEVklDRVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ob21lJykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLkFkdmljZXNEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkIH19KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiTkVXU1wiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9ob21lJykudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLk5ld3NEZXRhaWxdLHtzdGF0ZTp7ZGF0YTpkYXRhLCBpZDpkYXRhLmlkfX0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJESUVUXCI6XG4gICAgICAgICAgdGhpcy5fem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoIFtDb250ZW50VHlwZVBhdGguRGlldHNEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkIH0gfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJBR0VOREFcIjpcbiAgICAgICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZSggW0NvbnRlbnRUeXBlUGF0aC5BZ2VuZGFEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkIH0gfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJSRU1JTkRFUlwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLlJlbWluZGVyRGV0YWlsXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBpZDogZGF0YS5pZCB9IH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiR0FNRVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChkYXRhLnR5cGUgPT0gJ2Zvcm0nKSB7XG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKCBbQ29udGVudFR5cGVQYXRoLkZvcm1EZXRhaWwsIHsgaWQ6IGRhdGEuZm9ybV9pZCB9XSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBnYW1lX3BsYXlfaWQ6IGRhdGE/LmdhbWVfcGxheV9pZCB9IH0pO1xuICAgICAgICAgICAgfSBlbHNlXG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtDb250ZW50VHlwZVBhdGguR2FtZXNEZXRhaWxdLCB7IHN0YXRlOiB7IGRhdGE6IGRhdGEsIGlkOiBkYXRhLmlkLCBzZXJ2ZXJfdXJsOiBkYXRhPy5zZXJ2ZXJfdXJsIH0gfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJFWEVSQ0lTRVwiOlxuICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtDb250ZW50VHlwZVBhdGguRXhlcmNpc2VzXSwgeyBzdGF0ZTogeyBkYXRhOiBkYXRhLCBpZDogZGF0YS5pZCwgcHJvZ3JhbWFibGVfaWQ6IGRhdGEucHJvZ3JhbWFibGVfcGxheV9pZCB9IH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0FjdGlvbiBvbiBsb2NhbE5vdGlmaWNhdGlvbkFjdGlvblBlcmZvcm1lZCBub3QgZm91bmQsIHJlZGlyZWN0aW5nIHRvIHZpZGVvY2FsbDogJylcbiAgICAgICAgIC8vIHRoaXMucmVkaXJlY1RvVmlkZW9jYWxsKG5vdGlmaWNhdGlvbilcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgfVxufVxuXG4iXX0=
|