bx-rest 0.0.9 → 0.0.10
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/consts/part-name-metods.d.ts +11 -0
- package/esm2020/consts/part-name-metods.mjs +12 -0
- package/esm2020/functions/serializeJavascript.mjs +200 -0
- package/esm2020/public-api.mjs +3 -3
- package/esm2020/{rest → request}/bx-rest.module.mjs +1 -1
- package/esm2020/request/user/user.mjs +263 -0
- package/esm2020/services/http/HttpBX.mjs +128 -0
- package/esm2020/services/http/HttpData.mjs +124 -0
- package/esm2020/services/http/base/base.mjs +29 -0
- package/esm2020/services/http/base/http.mjs +28 -0
- package/esm2020/services/http/http.mjs +135 -0
- package/esm2020/services/http/sessionKey.mjs +180 -0
- package/esm2020/services/map/base.mjs +14 -0
- package/esm2020/services/map/rest/user.mjs +89 -0
- package/esm2020/services/snack-bar/snack-bar.service.mjs +42 -0
- package/esm2020/services/snack-bar/toast-message/toast-message.component.mjs +31 -0
- package/esm2020/services/vanilla/JSON.mjs +20 -0
- package/esm2020/services/vanilla/localStorage.mjs +35 -0
- package/esm2020/services/vanilla//321/201ookies.mjs +44 -0
- package/esm2020/store/auth.mjs +26 -0
- package/esm2020/store/users.mjs +67 -0
- package/esm2020/typification/auth/save.mjs +2 -0
- package/esm2020/typification/rest/api-lib.mjs +21 -0
- package/esm2020/typification/rest/base/YesNo.mjs +2 -0
- package/esm2020/typification/rest/base/httpAnswerBX.mjs +2 -0
- package/esm2020/typification/rest/batch/batchRequestParam.mjs +2 -0
- package/esm2020/typification/rest/lib.mjs +2 -0
- package/esm2020/typification/rest/settings.mjs +2 -0
- package/esm2020/typification/rest/support/param.mjs +2 -0
- package/esm2020/typification/rest/user/CustomUserFieldInfo.mjs +2 -0
- package/esm2020/typification/rest/user/UserFilterSearch.mjs +2 -0
- package/esm2020/typification/rest/user/get.mjs +2 -0
- package/esm2020/typification/rest/user/user.mjs +2 -0
- package/esm2020/typification/rest/user/userFilter.mjs +2 -0
- package/fesm2015/bx-rest.mjs +340 -14
- package/fesm2015/bx-rest.mjs.map +1 -1
- package/fesm2020/bx-rest.mjs +340 -14
- package/fesm2020/bx-rest.mjs.map +1 -1
- package/functions/serializeJavascript.d.ts +2 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -2
- package/request/user/user.d.ts +60 -0
- package/services/http/HttpBX.d.ts +26 -0
- package/services/http/HttpData.d.ts +13 -0
- package/services/http/base/base.d.ts +16 -0
- package/services/http/base/http.d.ts +7 -0
- package/services/http/http.d.ts +31 -0
- package/services/http/sessionKey.d.ts +34 -0
- package/services/map/base.d.ts +6 -0
- package/services/map/rest/user.d.ts +12 -0
- package/services/snack-bar/snack-bar.service.d.ts +12 -0
- package/services/snack-bar/toast-message/toast-message.component.d.ts +16 -0
- package/services/vanilla/JSON.d.ts +7 -0
- package/services/vanilla/localStorage.d.ts +10 -0
- package/services/vanilla//321/201ookies.d.ts +9 -0
- package/store/auth.d.ts +20 -0
- package/store/users.d.ts +34 -0
- package/typification/auth/save.d.ts +14 -0
- package/typification/rest/api-lib.d.ts +9 -0
- package/typification/rest/base/YesNo.d.ts +1 -0
- package/typification/rest/base/httpAnswerBX.d.ts +15 -0
- package/typification/rest/batch/batchRequestParam.d.ts +16 -0
- package/typification/rest/lib.d.ts +18 -0
- package/typification/rest/settings.d.ts +6 -0
- package/typification/rest/support/param.d.ts +5 -0
- package/typification/rest/user/CustomUserFieldInfo.d.ts +56 -0
- package/typification/rest/user/UserFilterSearch.d.ts +43 -0
- package/typification/rest/user/get.d.ts +13 -0
- package/typification/rest/user/user.d.ts +62 -0
- package/typification/rest/user/userFilter.d.ts +13 -0
- package/bx-rest.service.d.ts +0 -6
- package/esm2020/bx-rest.service.mjs +0 -14
- /package/{rest → request}/bx-rest.module.d.ts +0 -0
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import Cookies from '../../services/vanilla/сookies';
|
|
3
|
+
// import { environment as env } from 'bx-rest/environments/environment'
|
|
4
|
+
import { filter, Subscription, take } from 'rxjs';
|
|
5
|
+
import { saveAccessToken } from '../../store/auth';
|
|
6
|
+
import { map } from 'rxjs/operators';
|
|
7
|
+
import { BaseServices } from '../../services/base';
|
|
8
|
+
import { LocalStorageServices as LocalStorage } from '../../services/vanilla/localStorage';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@ngrx/store";
|
|
11
|
+
import * as i2 from "@angular/router";
|
|
12
|
+
import * as i3 from "../../typification/rest/api-lib";
|
|
13
|
+
export default class SessionKeyServices extends BaseServices {
|
|
14
|
+
constructor(store, route, BxApiLib) {
|
|
15
|
+
super();
|
|
16
|
+
this.store = store;
|
|
17
|
+
this.route = route;
|
|
18
|
+
this.BxApiLib = BxApiLib;
|
|
19
|
+
this.authHave = false;
|
|
20
|
+
this.subscribe = {
|
|
21
|
+
authData: new Subscription()
|
|
22
|
+
};
|
|
23
|
+
this.authData$ = this.store.select('auth');
|
|
24
|
+
this.authData$.subscribe(authData => {
|
|
25
|
+
if ((authData && !authData.access_token.length) || !authData) {
|
|
26
|
+
// получаем токен по собственным каналом (в битриксе приложение trace:apps.trace)
|
|
27
|
+
window.addEventListener('message', (event) => {
|
|
28
|
+
if (event.origin !== window.origin) { // проверяем что это не наше сообщение (с текущего приложения)
|
|
29
|
+
if (event.data && event.data.param) {
|
|
30
|
+
if (typeof event.data.param === 'string') {
|
|
31
|
+
event.data.param = JSON.parse(event.data.param);
|
|
32
|
+
}
|
|
33
|
+
let save = {};
|
|
34
|
+
if (event.data.param.access_token) {
|
|
35
|
+
let param = event.data.param;
|
|
36
|
+
save.access_token = event.data.param.access_token;
|
|
37
|
+
save = {
|
|
38
|
+
access_token: (param.access_token) ? param.access_token : undefined,
|
|
39
|
+
client_endpoint: (param.client_endpoint) ? param.client_endpoint : undefined,
|
|
40
|
+
domain: (param.domain) ? param.domain : undefined,
|
|
41
|
+
expires: (param.expires) ? param.expires : undefined,
|
|
42
|
+
expires_in: (param.expires_in) ? param.expires_in : undefined,
|
|
43
|
+
member_id: (param.member_id) ? param.member_id : undefined,
|
|
44
|
+
refresh_token: (param.refresh_token) ? param.refresh_token : undefined,
|
|
45
|
+
scope: (param.scope) ? param.scope : undefined,
|
|
46
|
+
server_endpoint: (param.server_endpoint) ? param.server_endpoint : undefined,
|
|
47
|
+
status: (param.status) ? param.status : undefined,
|
|
48
|
+
user_id: (param.user_id) ? param.user_id : undefined,
|
|
49
|
+
type: (param.type) ? param.type : undefined,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
if (Object.keys(save).length && save.access_token) {
|
|
53
|
+
this.store.dispatch(saveAccessToken(save));
|
|
54
|
+
this.subscribeAll();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
this.subscribe.authData = this.route.queryParamMap
|
|
60
|
+
.pipe(filter(param => param.has('AUTH_ID')
|
|
61
|
+
|| param.has('access_token')
|
|
62
|
+
|| param.has('REFRESH_ID')
|
|
63
|
+
|| param.has('DOMAIN')))
|
|
64
|
+
.subscribe((param) => {
|
|
65
|
+
let save = {};
|
|
66
|
+
if (param.has('AUTH_ID') && !authData.access_token.length) {
|
|
67
|
+
const get = param.get('AUTH_ID');
|
|
68
|
+
if (get) {
|
|
69
|
+
Cookies.set('auth', get); // потом убрать
|
|
70
|
+
save.access_token = get;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (param.has('access_token') && !authData.access_token.length) {
|
|
74
|
+
const get = param.get('access_token');
|
|
75
|
+
if (get) {
|
|
76
|
+
Cookies.set('auth', get); // потом убрать
|
|
77
|
+
save.access_token = get;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (param.has('REFRESH_ID') && !authData.refresh_token.length) {
|
|
81
|
+
const get = param.get('REFRESH_ID');
|
|
82
|
+
if (get) {
|
|
83
|
+
save.refresh_token = get;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
if (param.has('DOMAIN') && !authData.domain.length) {
|
|
87
|
+
const get = param.get('DOMAIN');
|
|
88
|
+
if (get) {
|
|
89
|
+
save.domain = get;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (Object.keys(save).length && save.access_token) {
|
|
93
|
+
this.store.dispatch(saveAccessToken(save));
|
|
94
|
+
this.subscribeAll();
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
// если битрикс не шлёт нужные мне параметры на прямую
|
|
98
|
+
// просим их мне отдать так как описано это в документации
|
|
99
|
+
let f = () => {
|
|
100
|
+
if (this.BxApiLib.BX24) {
|
|
101
|
+
const initDate = this.BxApiLib.BX24.getAuth();
|
|
102
|
+
this.store.dispatch(saveAccessToken(initDate));
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
this.BxApiLib.init(f);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
else if (this.getAuth().length) {
|
|
110
|
+
this.authHave = true;
|
|
111
|
+
}
|
|
112
|
+
this.authData = authData;
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
subscribeAll() {
|
|
116
|
+
this.subscribe.authData.unsubscribe();
|
|
117
|
+
}
|
|
118
|
+
getAuth() {
|
|
119
|
+
if (window.BX && window.BX.bitrix_sessid()) {
|
|
120
|
+
return window.BX.bitrix_sessid();
|
|
121
|
+
}
|
|
122
|
+
else if (this.getSessid().length) {
|
|
123
|
+
let str = this.getSessid();
|
|
124
|
+
return (str) ? str : '';
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
return Cookies.get('auth');
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
getKeyAuth() {
|
|
131
|
+
if (window.BX && window.BX.bitrix_sessid()
|
|
132
|
+
|| this.getSessid().length) {
|
|
133
|
+
return 'sessid';
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
return 'auth';
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
getSessid() {
|
|
140
|
+
const check = new URLSearchParams(document.location.search).get('sessid');
|
|
141
|
+
if (check) {
|
|
142
|
+
LocalStorage.set('sessid', check);
|
|
143
|
+
return check;
|
|
144
|
+
}
|
|
145
|
+
else if (LocalStorage.get('sessid')) {
|
|
146
|
+
return LocalStorage.get('sessid');
|
|
147
|
+
}
|
|
148
|
+
return '';
|
|
149
|
+
}
|
|
150
|
+
setAuthParams(params) {
|
|
151
|
+
const keyAuth = this.getKeyAuth();
|
|
152
|
+
if (params[keyAuth]) {
|
|
153
|
+
return true;
|
|
154
|
+
}
|
|
155
|
+
else if (keyAuth) {
|
|
156
|
+
params[keyAuth] = this.getAuth();
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
return false;
|
|
160
|
+
}
|
|
161
|
+
getAuthParams() {
|
|
162
|
+
// if (env.production && !env.component) {
|
|
163
|
+
return this.authData$.pipe(take(1), map(v => (v) ? v.access_token : undefined));
|
|
164
|
+
// } else {
|
|
165
|
+
// return of(this.getAuth())
|
|
166
|
+
// }
|
|
167
|
+
}
|
|
168
|
+
getBaseUrl() {
|
|
169
|
+
return this.authData$.pipe(map(v => (v && v.domain) ? this.prepareBaseAddress(v.domain, 'b24.trace-studio.com') : undefined));
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
SessionKeyServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, deps: [{ token: i1.Store }, { token: i2.ActivatedRoute }, { token: i3.RestServices }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
173
|
+
SessionKeyServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, providedIn: 'root' });
|
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SessionKeyServices, decorators: [{
|
|
175
|
+
type: Injectable,
|
|
176
|
+
args: [{
|
|
177
|
+
providedIn: 'root'
|
|
178
|
+
}]
|
|
179
|
+
}], ctorParameters: function () { return [{ type: i1.Store }, { type: i2.ActivatedRoute }, { type: i3.RestServices }]; } });
|
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbktleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL2h0dHAvc2Vzc2lvbktleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sT0FBTyxNQUFNLGdDQUFnQyxDQUFBO0FBR3BELHdFQUF3RTtBQUN4RSxPQUFPLEVBQUUsTUFBTSxFQUFjLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFFN0QsT0FBTyxFQUFFLGVBQWUsRUFBMkIsTUFBTSxrQkFBa0IsQ0FBQTtBQUMzRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxZQUFZLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTs7Ozs7QUFRMUYsTUFBTSxDQUFDLE9BQU8sT0FBTyxrQkFBbUIsU0FBUSxZQUFZO0lBU3hELFlBQ1csS0FBMkMsRUFDMUMsS0FBcUIsRUFDdEIsUUFBc0I7UUFFN0IsS0FBSyxFQUFFLENBQUE7UUFKQSxVQUFLLEdBQUwsS0FBSyxDQUFzQztRQUMxQyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFjO1FBVmpDLGFBQVEsR0FBRyxLQUFLLENBQUE7UUFHaEIsY0FBUyxHQUFHO1lBQ1IsUUFBUSxFQUFFLElBQUksWUFBWSxFQUFFO1NBQy9CLENBQUE7UUFRRyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxRQUFRLElB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Q0YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FDdEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FDcEcsQ0FBQTtJQUNULENBQUM7OytHQXJMZ0Isa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGdkIsTUFBTTsyRkFFRCxrQkFBa0I7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgQ29va2llcyBmcm9tICcuLi8uLi9zZXJ2aWNlcy92YW5pbGxhL9GBb29raWVzJ1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCBzYXZlQXBwbGljYXRpb25BdXRoIGZyb20gJy4uLy4uL3R5cGlmaWNhdGlvbi9hdXRoL3NhdmUnXG4vLyBpbXBvcnQgeyBlbnZpcm9ubWVudCBhcyBlbnYgfSBmcm9tICdieC1yZXN0L2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCdcbmltcG9ydCB7IGZpbHRlciwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCB0YWtlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbU1hcCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcbmltcG9ydCB7IHNhdmVBY2Nlc3NUb2tlbiwgc2F2ZUFwcGxpY2F0aW9uQXV0aFBhdGggfSBmcm9tICcuLi8uLi9zdG9yZS9hdXRoJ1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBCYXNlU2VydmljZXMgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9iYXNlJ1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlU2VydmljZXMgYXMgTG9jYWxTdG9yYWdlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdmFuaWxsYS9sb2NhbFN0b3JhZ2UnXG5pbXBvcnQgeyBSZXN0U2VydmljZXMgfSBmcm9tICcuLi8uLi90eXBpZmljYXRpb24vcmVzdC9hcGktbGliJ1xuXG50eXBlIElLZXlBdXRoID0gJ3Nlc3NpZCcgfCAnYXV0aCcgfCBzdHJpbmdcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNlc3Npb25LZXlTZXJ2aWNlcyBleHRlbmRzIEJhc2VTZXJ2aWNlcyB7XG5cbiAgICBhdXRoSGF2ZSA9IGZhbHNlXG4gICAgYXV0aERhdGEkOiBPYnNlcnZhYmxlPHNhdmVBcHBsaWNhdGlvbkF1dGg+XG4gICAgYXV0aERhdGE6IHNhdmVBcHBsaWNhdGlvbkF1dGggfCB1bmRlZmluZWRcbiAgICBzdWJzY3JpYmUgPSB7XG4gICAgICAgIGF1dGhEYXRhOiBuZXcgU3Vic2NyaXB0aW9uKClcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHN0b3JlOiBTdG9yZTx7IGF1dGg6IHNhdmVBcHBsaWNhdGlvbkF1dGggfT4sXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwdWJsaWMgQnhBcGlMaWI6IFJlc3RTZXJ2aWNlcyxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKVxuICAgICAgICB0aGlzLmF1dGhEYXRhJCA9IHRoaXMuc3RvcmUuc2VsZWN0KCdhdXRoJylcbiAgICAgICAgdGhpcy5hdXRoRGF0YSQuc3Vic2NyaWJlKGF1dGhEYXRhID0+IHtcbiAgICAgICAgICAgIGlmICgoYXV0aERhdGEgJiYgIWF1dGhEYXRhLmFjY2Vzc190b2tlbi5sZW5ndGgpIHx8ICFhdXRoRGF0YSkge1xuICAgICAgICAgICAgICAgIC8vINC/0L7Qu9GD0YfQsNC10Lwg0YLQvtC60LXQvSDQv9C+INGB0L7QsdGB0YLQstC10L3QvdGL0Lwg0LrQsNC90LDQu9C+0LwgKNCyINCx0LjRgtGA0LjQutGB0LUg0L/RgNC40LvQvtC20LXQvdC40LUgdHJhY2U6YXBwcy50cmFjZSlcbiAgICAgICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIChldmVudDogTWVzc2FnZUV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChldmVudC5vcmlnaW4gIT09IHdpbmRvdy5vcmlnaW4pIHsgLy8g0L/RgNC+0LLQtdGA0Y/QtdC8INGH0YLQviDRjdGC0L4g0L3QtSDQvdCw0YjQtSDRgdC+0L7QsdGJ0LXQvdC40LUgKNGBINGC0LXQutGD0YnQtdCz0L4g0L/RgNC40LvQvtC20LXQvdC40Y8pXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQuZGF0YSAmJiBldmVudC5kYXRhLnBhcmFtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGVvZiBldmVudC5kYXRhLnBhcmFtID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5kYXRhLnBhcmFtID0gSlNPTi5wYXJzZShldmVudC5kYXRhLnBhcmFtKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzYXZlOiBzYXZlQXBwbGljYXRpb25BdXRoUGF0aCA9IHt9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZlbnQuZGF0YS5wYXJhbS5hY2Nlc3NfdG9rZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHBhcmFtID0gZXZlbnQuZGF0YS5wYXJhbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2F2ZS5hY2Nlc3NfdG9rZW4gPSBldmVudC5kYXRhLnBhcmFtLmFjY2Vzc190b2tlblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYXZlID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWNjZXNzX3Rva2VuOiAocGFyYW0uYWNjZXNzX3Rva2VuKSA/IHBhcmFtLmFjY2Vzc190b2tlbiA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudF9lbmRwb2ludDogKHBhcmFtLmNsaWVudF9lbmRwb2ludCkgPyBwYXJhbS5jbGllbnRfZW5kcG9pbnQgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb21haW46IChwYXJhbS5kb21haW4pID8gcGFyYW0uZG9tYWluIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhwaXJlczogKHBhcmFtLmV4cGlyZXMpID8gcGFyYW0uZXhwaXJlcyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cGlyZXNfaW46IChwYXJhbS5leHBpcmVzX2luKSA/IHBhcmFtLmV4cGlyZXNfaW4gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1iZXJfaWQ6IChwYXJhbS5tZW1iZXJfaWQpID8gcGFyYW0ubWVtYmVyX2lkIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaF90b2tlbjogKHBhcmFtLnJlZnJlc2hfdG9rZW4pID8gcGFyYW0ucmVmcmVzaF90b2tlbiA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjb3BlOiAocGFyYW0uc2NvcGUpID8gcGFyYW0uc2NvcGUgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJfZW5kcG9pbnQ6IChwYXJhbS5zZXJ2ZXJfZW5kcG9pbnQpID8gcGFyYW0uc2VydmVyX2VuZHBvaW50IDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiAocGFyYW0uc3RhdHVzKSA/IHBhcmFtLnN0YXR1cyA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZXJfaWQ6IChwYXJhbS51c2VyX2lkKSA/IHBhcmFtLnVzZXJfaWQgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlOiAocGFyYW0udHlwZSkgPyBwYXJhbS50eXBlIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKHNhdmUpLmxlbmd0aCAmJiBzYXZlLmFjY2Vzc190b2tlbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHNhdmVBY2Nlc3NUb2tlbihzYXZlKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zdWJzY3JpYmVBbGwoKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmliZS5hdXRoRGF0YSA9IHRoaXMucm91dGUucXVlcnlQYXJhbU1hcFxuICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcihwYXJhbSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtLmhhcygnQVVUSF9JRCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgcGFyYW0uaGFzKCdhY2Nlc3NfdG9rZW4nKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHx8IHBhcmFtLmhhcygnUkVGUkVTSF9JRCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgcGFyYW0uaGFzKCdET01BSU4nKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHBhcmFtOiBQYXJhbU1hcCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNhdmU6IHNhdmVBcHBsaWNhdGlvbkF1dGhQYXRoID0ge31cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwYXJhbS5oYXMoJ0FVVEhfSUQnKSAmJiAhYXV0aERhdGEuYWNjZXNzX3Rva2VuLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdldCA9IHBhcmFtLmdldCgnQVVUSF9JRCcpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGdldCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb29raWVzLnNldCgnYXV0aCcsIGdldCkgLy8g0L/QvtGC0L7QvCDRg9Cx0YDQsNGC0YxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2F2ZS5hY2Nlc3NfdG9rZW4gPSBnZXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwYXJhbS5oYXMoJ2FjY2Vzc190b2tlbicpICYmICFhdXRoRGF0YS5hY2Nlc3NfdG9rZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2V0ID0gcGFyYW0uZ2V0KCdhY2Nlc3NfdG9rZW4nKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29va2llcy5zZXQoJ2F1dGgnLCBnZXQpIC8vINC/0L7RgtC+0Lwg0YPQsdGA0LDRgtGMXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhdmUuYWNjZXNzX3Rva2VuID0gZ2V0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAocGFyYW0uaGFzKCdSRUZSRVNIX0lEJykgJiYgIWF1dGhEYXRhLnJlZnJlc2hfdG9rZW4ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2V0ID0gcGFyYW0uZ2V0KCdSRUZSRVNIX0lEJylcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZ2V0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhdmUucmVmcmVzaF90b2tlbiA9IGdldFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBhcmFtLmhhcygnRE9NQUlOJykgJiYgIWF1dGhEYXRhLmRvbWFpbi5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBnZXQgPSBwYXJhbS5nZXQoJ0RPTUFJTicpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGdldCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYXZlLmRvbWFpbiA9IGdldFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhzYXZlKS5sZW5ndGggJiYgc2F2ZS5hY2Nlc3NfdG9rZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHNhdmVBY2Nlc3NUb2tlbihzYXZlKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN1YnNjcmliZUFsbCgpXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vINC10YHQu9C4INCx0LjRgtGA0LjQutGBINC90LUg0YjQu9GR0YIg0L3Rg9C20L3Ri9C1INC80L3QtSDQv9Cw0YDQsNC80LXRgtGA0Ysg0L3QsCDQv9GA0Y/QvNGD0Y5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyDQv9GA0L7RgdC40Lwg0LjRhSDQvNC90LUg0L7RgtC00LDRgtGMINGC0LDQuiDQutCw0Log0L7Qv9C40YHQsNC90L4g0Y3RgtC+INCyINC00L7QutGD0LzQtdC90YLQsNGG0LjQuFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5CeEFwaUxpYi5CWDI0KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbml0RGF0ZSA9IHRoaXMuQnhBcGlMaWIuQlgyNC5nZXRBdXRoKClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goc2F2ZUFjY2Vzc1Rva2VuKGluaXREYXRlKSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuQnhBcGlMaWIuaW5pdChmKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZ2V0QXV0aCgpLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMuYXV0aEhhdmUgPSB0cnVlXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuYXV0aERhdGEgPSBhdXRoRGF0YVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHN1YnNjcmliZUFsbCgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpYmUuYXV0aERhdGEudW5zdWJzY3JpYmUoKVxuICAgIH1cblxuICAgIGdldEF1dGgoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKCg8YW55PndpbmRvdykuQlggJiYgKDxhbnk+d2luZG93KS5CWC5iaXRyaXhfc2Vzc2lkKCkpIHtcbiAgICAgICAgICAgIHJldHVybiAoPGFueT53aW5kb3cpLkJYLmJpdHJpeF9zZXNzaWQoKVxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZ2V0U2Vzc2lkKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICBsZXQgc3RyID0gdGhpcy5nZXRTZXNzaWQoKVxuICAgICAgICAgICAgcmV0dXJuIChzdHIpID8gc3RyIDogJydcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBDb29raWVzLmdldCgnYXV0aCcpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRLZXlBdXRoKCk6IElLZXlBdXRoIHtcbiAgICAgICAgaWYgKCg8YW55PndpbmRvdykuQlggJiYgKDxhbnk+d2luZG93KS5CWC5iaXRyaXhfc2Vzc2lkKClcbiAgICAgICAgICAgIHx8IHRoaXMuZ2V0U2Vzc2lkKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3Nlc3NpZCdcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAnYXV0aCdcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFNlc3NpZCgpIHtcbiAgICAgICAgY29uc3QgY2hlY2sgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKGRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaCkuZ2V0KCdzZXNzaWQnKVxuICAgICAgICBpZiAoY2hlY2spIHtcbiAgICAgICAgICAgIExvY2FsU3RvcmFnZS5zZXQoJ3Nlc3NpZCcsIGNoZWNrKVxuICAgICAgICAgICAgcmV0dXJuIGNoZWNrXG4gICAgICAgIH0gZWxzZSBpZiAoTG9jYWxTdG9yYWdlLmdldCgnc2Vzc2lkJykpIHtcbiAgICAgICAgICAgIHJldHVybiBMb2NhbFN0b3JhZ2UuZ2V0KCdzZXNzaWQnKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiAnJ1xuICAgIH1cblxuICAgIHNldEF1dGhQYXJhbXM8VD4ocGFyYW1zOiBhbnkpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3Qga2V5QXV0aCA9IHRoaXMuZ2V0S2V5QXV0aCgpXG4gICAgICAgIGlmIChwYXJhbXNba2V5QXV0aF0pIHtcbiAgICAgICAgICAgIHJldHVybiB0cnVlXG4gICAgICAgIH0gZWxzZSBpZiAoa2V5QXV0aCkge1xuICAgICAgICAgICAgcGFyYW1zW2tleUF1dGhdID0gdGhpcy5nZXRBdXRoKClcbiAgICAgICAgICAgIHJldHVybiB0cnVlXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgZ2V0QXV0aFBhcmFtcygpOiBPYnNlcnZhYmxlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgICAgICAvLyBpZiAoZW52LnByb2R1Y3Rpb24gJiYgIWVudi5jb21wb25lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmF1dGhEYXRhJC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2UoMSksXG4gICAgICAgICAgICAgICAgbWFwKHYgPT4gKHYpID8gdi5hY2Nlc3NfdG9rZW4gOiB1bmRlZmluZWQpXG4gICAgICAgICAgICApXG4gICAgICAgIC8vIH0gZWxzZSB7XG4gICAgICAgIC8vICAgICByZXR1cm4gb2YodGhpcy5nZXRBdXRoKCkpXG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICBnZXRCYXNlVXJsKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5hdXRoRGF0YSQucGlwZShcbiAgICAgICAgICAgICAgICBtYXAodiA9PiAodiAmJiB2LmRvbWFpbikgPyB0aGlzLnByZXBhcmVCYXNlQWRkcmVzcyh2LmRvbWFpbiwgJ2IyNC50cmFjZS1zdHVkaW8uY29tJykgOiB1bmRlZmluZWQpXG4gICAgICAgICAgICApXG4gICAgfVxuXG4gICAgLy8gZ2V0SG9tZVVybCgpOiBzdHJpbmcge1xuICAgIC8vICAgICByZXR1cm4gZW52LnVybHMuaG9tZVxuICAgIC8vIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { BaseServices } from '../base';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export default class BaseMapServices extends BaseServices {
|
|
5
|
+
}
|
|
6
|
+
BaseMapServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
7
|
+
BaseMapServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, providedIn: 'root' });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BaseMapServices, decorators: [{
|
|
9
|
+
type: Injectable,
|
|
10
|
+
args: [{
|
|
11
|
+
providedIn: 'root'
|
|
12
|
+
}]
|
|
13
|
+
}] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL21hcC9iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQTs7QUFLdEMsTUFBTSxDQUFDLE9BQU8sT0FBTyxlQUFnQixTQUFRLFlBQVk7OzRHQUFwQyxlQUFlO2dIQUFmLGVBQWUsY0FGcEIsTUFBTTsyRkFFRCxlQUFlO2tCQUhuQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBCYXNlU2VydmljZXMgfSBmcm9tICcuLi9iYXNlJ1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEJhc2VNYXBTZXJ2aWNlcyBleHRlbmRzIEJhc2VTZXJ2aWNlcyB7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import BaseMapServices from '../base';
|
|
3
|
+
import clone from 'just-clone';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class BitrixApiUserMapServices extends BaseMapServices {
|
|
6
|
+
HttpToBX(user) {
|
|
7
|
+
let res = Object.assign(clone(user), {
|
|
8
|
+
ID: this.toNumber(user.ID),
|
|
9
|
+
IS_ONLINE: this.toBool(user.IS_ONLINE),
|
|
10
|
+
DATE_REGISTER: this.toDate(user.DATE_REGISTER),
|
|
11
|
+
PERSONAL_BIRTHDAY: this.toDate(user.PERSONAL_BIRTHDAY),
|
|
12
|
+
});
|
|
13
|
+
if (user.LAST_LOGIN) {
|
|
14
|
+
res.LAST_LOGIN = this.toDate(user.LAST_LOGIN);
|
|
15
|
+
}
|
|
16
|
+
return res;
|
|
17
|
+
}
|
|
18
|
+
BXtoHttp(user) {
|
|
19
|
+
return Object.assign(clone(user), {
|
|
20
|
+
ID: this.toStr(user.ID),
|
|
21
|
+
IS_ONLINE: this.toBXYorN(user.IS_ONLINE),
|
|
22
|
+
DATE_REGISTER: this.getBXStrTime(user.DATE_REGISTER),
|
|
23
|
+
PERSONAL_BIRTHDAY: this.toStr(user.PERSONAL_BIRTHDAY),
|
|
24
|
+
LAST_LOGIN: this.toStr(user.LAST_LOGIN)
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
getFIO(user) {
|
|
28
|
+
let res = '';
|
|
29
|
+
if (!user.LAST_NAME) {
|
|
30
|
+
const SECOND_NAME = (user.SECOND_NAME) ? user.SECOND_NAME : '';
|
|
31
|
+
const NAME = (user.NAME) ? user.NAME : '';
|
|
32
|
+
res = NAME + ' ' + SECOND_NAME;
|
|
33
|
+
}
|
|
34
|
+
else if (!user.NAME) {
|
|
35
|
+
res = user.LAST_NAME;
|
|
36
|
+
}
|
|
37
|
+
else if (!user.SECOND_NAME) {
|
|
38
|
+
res = user.LAST_NAME + ' ' + user.NAME;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
res = user.LAST_NAME + ' ' + user.NAME + ' ' + user.SECOND_NAME;
|
|
42
|
+
}
|
|
43
|
+
return res.trim();
|
|
44
|
+
}
|
|
45
|
+
getFI(user) {
|
|
46
|
+
let res = '';
|
|
47
|
+
if (!user.LAST_NAME) {
|
|
48
|
+
const NAME = (user.NAME) ? user.NAME : '';
|
|
49
|
+
res = NAME;
|
|
50
|
+
}
|
|
51
|
+
else if (!user.NAME) {
|
|
52
|
+
res = user.LAST_NAME;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
res = user.LAST_NAME + ' ' + user.NAME;
|
|
56
|
+
}
|
|
57
|
+
return res.trim();
|
|
58
|
+
}
|
|
59
|
+
getFIOShort(user) {
|
|
60
|
+
let res = '';
|
|
61
|
+
if (!user.LAST_NAME) {
|
|
62
|
+
const SECOND_NAME = (user.SECOND_NAME) ? user.SECOND_NAME : '';
|
|
63
|
+
const NAME = (user.NAME) ? user.NAME : '';
|
|
64
|
+
res = NAME + ' ' + SECOND_NAME;
|
|
65
|
+
}
|
|
66
|
+
else if (!user.NAME) {
|
|
67
|
+
res = user.LAST_NAME;
|
|
68
|
+
}
|
|
69
|
+
else if (!user.SECOND_NAME) {
|
|
70
|
+
res = user.LAST_NAME + ' ' + user.NAME.charAt(0).toUpperCase() + '.';
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
res =
|
|
74
|
+
user.LAST_NAME + ' ' +
|
|
75
|
+
user.NAME.charAt(0).toUpperCase() + '.' +
|
|
76
|
+
user.SECOND_NAME.charAt(0).toUpperCase() + '.';
|
|
77
|
+
}
|
|
78
|
+
return res.trim();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
BitrixApiUserMapServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BitrixApiUserMapServices, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
82
|
+
BitrixApiUserMapServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BitrixApiUserMapServices, providedIn: 'root' });
|
|
83
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: BitrixApiUserMapServices, decorators: [{
|
|
84
|
+
type: Injectable,
|
|
85
|
+
args: [{
|
|
86
|
+
providedIn: 'root'
|
|
87
|
+
}]
|
|
88
|
+
}] });
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL21hcC9yZXN0L3VzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLGVBQWUsTUFBTSxTQUFTLENBQUE7QUFFckMsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFBOztBQUs5QixNQUFNLE9BQU8sd0JBQXlCLFNBQVEsZUFBZTtJQUV6RCxRQUFRLENBQUMsSUFBcUI7UUFDMUIsSUFBSSxHQUFHLEdBQWdCLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzlDLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDMUIsU0FBUyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUN0QyxhQUFhLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQzlDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1NBQ3pELENBQUMsQ0FBQTtRQUNGLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNqQixHQUFHLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1NBQ2hEO1FBRUQsT0FBTyxHQUFHLENBQUE7SUFDZCxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQWlCO1FBQ3RCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUIsRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUN2QixTQUFTLEVB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R0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUE7U0FDdkU7YUFBTTtZQUNILEdBQUc7Z0JBQ0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHO29CQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHO29CQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUE7U0FDckQ7UUFDRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNyQixDQUFDOztxSEF4RVEsd0JBQXdCO3lIQUF4Qix3QkFBd0IsY0FGckIsTUFBTTsyRkFFVCx3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXHJcbmltcG9ydCBCYXNlTWFwU2VydmljZXMgZnJvbSAnLi4vYmFzZSdcclxuaW1wb3J0IHsgaUJYUmVzdFVzZXIsIGlCWFJlc3RVc2VySHR0cCB9IGZyb20gJy4uLy4uLy4uL3R5cGlmaWNhdGlvbi9yZXN0L3VzZXIvdXNlcidcclxuaW1wb3J0IGNsb25lIGZyb20gJ2p1c3QtY2xvbmUnXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEJpdHJpeEFwaVVzZXJNYXBTZXJ2aWNlcyBleHRlbmRzIEJhc2VNYXBTZXJ2aWNlcyB7XHJcblxyXG4gICAgSHR0cFRvQlgodXNlcjogaUJYUmVzdFVzZXJIdHRwKTogaUJYUmVzdFVzZXIge1xyXG4gICAgICAgIGxldCByZXM6IGlCWFJlc3RVc2VyID0gT2JqZWN0LmFzc2lnbihjbG9uZSh1c2VyKSwge1xyXG4gICAgICAgICAgICBJRDogdGhpcy50b051bWJlcih1c2VyLklEKSxcclxuICAgICAgICAgICAgSVNfT05MSU5FOiB0aGlzLnRvQm9vbCh1c2VyLklTX09OTElORSksXHJcbiAgICAgICAgICAgIERBVEVfUkVHSVNURVI6IHRoaXMudG9EYXRlKHVzZXIuREFURV9SRUdJU1RFUiksXHJcbiAgICAgICAgICAgIFBFUlNPTkFMX0JJUlRIREFZOiB0aGlzLnRvRGF0ZSh1c2VyLlBFUlNPTkFMX0JJUlRIREFZKSxcclxuICAgICAgICB9KVxyXG4gICAgICAgIGlmICh1c2VyLkxBU1RfTE9HSU4pIHtcclxuICAgICAgICAgICAgcmVzLkxBU1RfTE9HSU4gPSB0aGlzLnRvRGF0ZSh1c2VyLkxBU1RfTE9HSU4pXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcmVzXHJcbiAgICB9XHJcblxyXG4gICAgQlh0b0h0dHAodXNlcjogaUJYUmVzdFVzZXIpOiBpQlhSZXN0VXNlckh0dHAge1xyXG4gICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKGNsb25lKHVzZXIpLCB7XHJcbiAgICAgICAgICAgIElEOiB0aGlzLnRvU3RyKHVzZXIuSUQpLFxyXG4gICAgICAgICAgICBJU19PTkxJTkU6IHRoaXMudG9CWFlvck4odXNlci5JU19PTkxJTkUpLFxyXG4gICAgICAgICAgICBEQVRFX1JFR0lTVEVSOiB0aGlzLmdldEJYU3RyVGltZSh1c2VyLkRBVEVfUkVHSVNURVIpLFxyXG4gICAgICAgICAgICBQRVJTT05BTF9CSVJUSERBWTogdGhpcy50b1N0cih1c2VyLlBFUlNPTkFMX0JJUlRIREFZKSxcclxuICAgICAgICAgICAgTEFTVF9MT0dJTjogdGhpcy50b1N0cih1c2VyLkxBU1RfTE9HSU4pXHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICBnZXRGSU8odXNlcjogaUJYUmVzdFVzZXIpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCByZXMgPSAnJ1xyXG4gICAgICAgIGlmICghdXNlci5MQVNUX05BTUUpIHtcclxuICAgICAgICAgICAgY29uc3QgU0VDT05EX05BTUUgPSAodXNlci5TRUNPTkRfTkFNRSkgPyB1c2VyLlNFQ09ORF9OQU1FIDogJydcclxuICAgICAgICAgICAgY29uc3QgTkFNRSA9ICh1c2VyLk5BTUUpID8gdXNlci5OQU1FIDogJydcclxuICAgICAgICAgICAgcmVzID0gTkFNRSArICcgJyArIFNFQ09ORF9OQU1FXHJcbiAgICAgICAgfSBlbHNlIGlmICghdXNlci5OQU1FKSB7XHJcbiAgICAgICAgICAgIHJlcyA9IHVzZXIuTEFTVF9OQU1FXHJcbiAgICAgICAgfSBlbHNlIGlmICghdXNlci5TRUNPTkRfTkFNRSkge1xyXG4gICAgICAgICAgICByZXMgPSB1c2VyLkxBU1RfTkFNRSArICcgJyArIHVzZXIuTkFNRVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlcyA9IHVzZXIuTEFTVF9OQU1FICsgJyAnICsgdXNlci5OQU1FICsgJyAnICsgdXNlci5TRUNPTkRfTkFNRVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzLnRyaW0oKVxyXG4gICAgfVxyXG5cclxuICAgIGdldEZJKHVzZXI6IGlCWFJlc3RVc2VyKTogc3RyaW5nIHtcclxuICAgICAgICBsZXQgcmVzID0gJydcclxuICAgICAgICBpZiAoIXVzZXIuTEFTVF9OQU1FKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IE5BTUUgPSAodXNlci5OQU1FKSA/IHVzZXIuTkFNRSA6ICcnXHJcbiAgICAgICAgICAgIHJlcyA9IE5BTUVcclxuICAgICAgICB9IGVsc2UgaWYgKCF1c2VyLk5BTUUpIHtcclxuICAgICAgICAgICAgcmVzID0gdXNlci5MQVNUX05BTUVcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXMgPSB1c2VyLkxBU1RfTkFNRSArICcgJyArIHVzZXIuTkFNRVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzLnRyaW0oKVxyXG4gICAgfVxyXG5cclxuICAgIGdldEZJT1Nob3J0KHVzZXI6IGlCWFJlc3RVc2VyKTogc3RyaW5nIHtcclxuICAgICAgICBsZXQgcmVzID0gJydcclxuICAgICAgICBpZiAoIXVzZXIuTEFTVF9OQU1FKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IFNFQ09ORF9OQU1FID0gKHVzZXIuU0VDT05EX05BTUUpID8gdXNlci5TRUNPTkRfTkFNRSA6ICcnXHJcbiAgICAgICAgICAgIGNvbnN0IE5BTUUgPSAodXNlci5OQU1FKSA/IHVzZXIuTkFNRSA6ICcnXHJcbiAgICAgICAgICAgIHJlcyA9IE5BTUUgKyAnICcgKyBTRUNPTkRfTkFNRVxyXG4gICAgICAgIH0gZWxzZSBpZiAoIXVzZXIuTkFNRSkge1xyXG4gICAgICAgICAgICByZXMgPSB1c2VyLkxBU1RfTkFNRVxyXG4gICAgICAgIH0gZWxzZSBpZiAoIXVzZXIuU0VDT05EX05BTUUpIHtcclxuICAgICAgICAgICAgcmVzID0gdXNlci5MQVNUX05BTUUgKyAnICcgKyB1c2VyLk5BTUUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyAnLidcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXMgPVxyXG4gICAgICAgICAgICAgICAgdXNlci5MQVNUX05BTUUgKyAnICcgK1xyXG4gICAgICAgICAgICAgICAgdXNlci5OQU1FLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgJy4nICtcclxuICAgICAgICAgICAgICAgIHVzZXIuU0VDT05EX05BTUUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyAnLidcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHJlcy50cmltKClcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Сервис для вывода сообщений пользователю
|
|
3
|
+
* TODO: логирование
|
|
4
|
+
*/
|
|
5
|
+
import { Injectable } from '@angular/core';
|
|
6
|
+
import { ToastMessageComponent } from '../../services/snack-bar/toast-message/toast-message.component';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@angular/material/snack-bar";
|
|
9
|
+
export default class SnackBarService {
|
|
10
|
+
constructor(snackBar) {
|
|
11
|
+
this.snackBar = snackBar;
|
|
12
|
+
}
|
|
13
|
+
error(message, sec = 12) {
|
|
14
|
+
this.standardMessage(message, sec, 'error');
|
|
15
|
+
}
|
|
16
|
+
warning(message, sec = 7) {
|
|
17
|
+
this.standardMessage(message, sec, 'warning');
|
|
18
|
+
}
|
|
19
|
+
success(message, sec = 7) {
|
|
20
|
+
this.standardMessage(message, sec, 'success');
|
|
21
|
+
}
|
|
22
|
+
standardMessage(message, sec = 5, name = 'error') {
|
|
23
|
+
this.snackBar.open(message);
|
|
24
|
+
this.snackBar.openFromComponent(ToastMessageComponent, {
|
|
25
|
+
duration: sec * 1000,
|
|
26
|
+
data: {
|
|
27
|
+
message: message,
|
|
28
|
+
type: name
|
|
29
|
+
},
|
|
30
|
+
panelClass: name + '-box'
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
SnackBarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackBarService, deps: [{ token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
35
|
+
SnackBarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackBarService, providedIn: 'root' });
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: SnackBarService, decorators: [{
|
|
37
|
+
type: Injectable,
|
|
38
|
+
args: [{
|
|
39
|
+
providedIn: 'root'
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: function () { return [{ type: i1.MatSnackBar }]; } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25hY2stYmFyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9zZXJ2aWNlcy9zbmFjay1iYXIvc25hY2stYmFyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7OztHQUdHO0FBQ0gsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQTs7O0FBTXRHLE1BQU0sQ0FBQyxPQUFPLE9BQU8sZUFBZTtJQUVsQyxZQUFvQixRQUFxQjtRQUFyQixhQUFRLEdBQVIsUUFBUSxDQUFhO0lBQ3pDLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBZSxFQUFFLEdBQUcsR0FBRyxFQUFFO1FBQzdCLElBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRUQsT0FBTyxDQUFDLE9BQWUsRUFBRSxHQUFHLEdBQUcsQ0FBQztRQUM5QixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxPQUFlLEVBQUUsR0FBRyxHQUFHLENBQUM7UUFDOUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxlQUFlLENBQUMsT0FBZSxFQUFFLEdBQUcsR0FBRyxDQUFDLEVBQUUsSUFBSSxHQUFHLE9BQU87UUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxxQkFBcUIsRUFBRTtZQUNyRCxRQUFRLEVBQUUsR0FBRyxHQUFHLElBQUk7WUFDcEIsSUFBSSxFQUFFO2dCQUNKLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixJQUFJLEVBQUUsSUFBSTthQUNYO1lBQ0QsVUFBVSxFQUFFLElBQUksR0FBRyxNQUFNO1NBQzFCLENBQUMsQ0FBQztJQUNMLENBQUM7OzRHQTNCa0IsZUFBZTtnSEFBZixlQUFlLGNBRnRCLE1BQU07MkZBRUMsZUFBZTtrQkFIbkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqINCh0LXRgNCy0LjRgSDQtNC70Y8g0LLRi9Cy0L7QtNCwINGB0L7QvtCx0YnQtdC90LjQuSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y5cbiAqIFRPRE86INC70L7Qs9C40YDQvtCy0LDQvdC40LVcbiAqL1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBUb2FzdE1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zbmFjay1iYXIvdG9hc3QtbWVzc2FnZS90b2FzdC1tZXNzYWdlLmNvbXBvbmVudCdcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJ1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNuYWNrQmFyU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIpIHtcbiAgfVxuXG4gIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgc2VjID0gMTIpOiB2b2lkIHtcbiAgICB0aGlzLnN0YW5kYXJkTWVzc2FnZShtZXNzYWdlLCBzZWMsICdlcnJvcicpXG4gIH1cblxuICB3YXJuaW5nKG1lc3NhZ2U6IHN0cmluZywgc2VjID0gNyk6IHZvaWQge1xuICAgIHRoaXMuc3RhbmRhcmRNZXNzYWdlKG1lc3NhZ2UsIHNlYywgJ3dhcm5pbmcnKTtcbiAgfVxuXG4gIHN1Y2Nlc3MobWVzc2FnZTogc3RyaW5nLCBzZWMgPSA3KTogdm9pZCB7XG4gICAgdGhpcy5zdGFuZGFyZE1lc3NhZ2UobWVzc2FnZSwgc2VjLCAnc3VjY2VzcycpO1xuICB9XG5cbiAgc3RhbmRhcmRNZXNzYWdlKG1lc3NhZ2U6IHN0cmluZywgc2VjID0gNSwgbmFtZSA9ICdlcnJvcicpOiB2b2lke1xuICAgIHRoaXMuc25hY2tCYXIub3BlbihtZXNzYWdlKTtcbiAgICB0aGlzLnNuYWNrQmFyLm9wZW5Gcm9tQ29tcG9uZW50KFRvYXN0TWVzc2FnZUNvbXBvbmVudCwge1xuICAgICAgZHVyYXRpb246IHNlYyAqIDEwMDAsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2UsXG4gICAgICAgIHR5cGU6IG5hbWVcbiAgICAgIH0sXG4gICAgICBwYW5lbENsYXNzOiBuYW1lICsgJy1ib3gnXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Component, inject, Inject, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { MAT_SNACK_BAR_DATA, MatSnackBarRef } from '@angular/material/snack-bar';
|
|
3
|
+
import { BxRestModule } from '../../../request/bx-rest.module';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/button";
|
|
6
|
+
import * as i2 from "@angular/material/icon";
|
|
7
|
+
export class ToastMessageComponent {
|
|
8
|
+
constructor(data) {
|
|
9
|
+
this.data = data;
|
|
10
|
+
this.snackBarRef = inject(MatSnackBarRef);
|
|
11
|
+
}
|
|
12
|
+
getClass() {
|
|
13
|
+
switch (this.data.type) {
|
|
14
|
+
case 'error':
|
|
15
|
+
case 'warning':
|
|
16
|
+
case 'success':
|
|
17
|
+
return this.data.type + '-message';
|
|
18
|
+
}
|
|
19
|
+
return '';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
ToastMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToastMessageComponent, deps: [{ token: MAT_SNACK_BAR_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
ToastMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ToastMessageComponent, isStandalone: true, selector: "app-view", ngImport: i0, template: "<div class=\"w-100 d-flex\">\n <span matSnackBarLabel [class]=\"getClass()\">\n {{ data.message }}\n</span>\n <span matSnackBarActions [class]=\"getClass()\">\n <button mat-button matSnackBarAction (click)=\"snackBarRef.dismissWithAction()\">\n <mat-icon>\n close\n </mat-icon>\n </button>\n</span>\n</div>\n\n", styles: [":host{display:flex;background-color:red}:host .mdc-snackbar__surface{padding:0;margin:0}:host .error-message{color:red}:host.error-box{background-color:#eec1c1}:host.error-box .error-message{color:red}mat-snack-bar-container.mdc-snackbar.error-box .mdc-snackbar__surface{background-color:#eec1c1}mat-snack-bar-container.mdc-snackbar.error-box .error-message{color:red}mat-snack-bar-container.mdc-snackbar.warning-box .mdc-snackbar__surface{background-color:#f0f2b9}mat-snack-bar-container.mdc-snackbar.warning-box .warning-message{color:#15140f}mat-snack-bar-container.mdc-snackbar.success-box .mdc-snackbar__surface{background-color:#daf7d1}mat-snack-bar-container.mdc-snackbar.success-box .success-message{color:#423f31}\n"], dependencies: [{ kind: "ngmodule", type: BxRestModule }, { kind: "component", type: i1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ToastMessageComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{ selector: 'app-view', encapsulation: ViewEncapsulation.None, standalone: true, imports: [BxRestModule], template: "<div class=\"w-100 d-flex\">\n <span matSnackBarLabel [class]=\"getClass()\">\n {{ data.message }}\n</span>\n <span matSnackBarActions [class]=\"getClass()\">\n <button mat-button matSnackBarAction (click)=\"snackBarRef.dismissWithAction()\">\n <mat-icon>\n close\n </mat-icon>\n </button>\n</span>\n</div>\n\n", styles: [":host{display:flex;background-color:red}:host .mdc-snackbar__surface{padding:0;margin:0}:host .error-message{color:red}:host.error-box{background-color:#eec1c1}:host.error-box .error-message{color:red}mat-snack-bar-container.mdc-snackbar.error-box .mdc-snackbar__surface{background-color:#eec1c1}mat-snack-bar-container.mdc-snackbar.error-box .error-message{color:red}mat-snack-bar-container.mdc-snackbar.warning-box .mdc-snackbar__surface{background-color:#f0f2b9}mat-snack-bar-container.mdc-snackbar.warning-box .warning-message{color:#15140f}mat-snack-bar-container.mdc-snackbar.success-box .mdc-snackbar__surface{background-color:#daf7d1}mat-snack-bar-container.mdc-snackbar.success-box .success-message{color:#423f31}\n"] }]
|
|
27
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
28
|
+
type: Inject,
|
|
29
|
+
args: [MAT_SNACK_BAR_DATA]
|
|
30
|
+
}] }]; } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtbWVzc2FnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9zZXJ2aWNlcy9zbmFjay1iYXIvdG9hc3QtbWVzc2FnZS90b2FzdC1tZXNzYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL3NuYWNrLWJhci90b2FzdC1tZXNzYWdlL3RvYXN0LW1lc3NhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzVFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQTtBQUNoRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUE7Ozs7QUFVOUQsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUErQyxJQUFnRTtRQUFoRSxTQUFJLEdBQUosSUFBSSxDQUE0RDtRQUYvRyxnQkFBVyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUdwQyxDQUFDO0lBRUQsUUFBUTtRQUNOLFFBQVEsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUM7WUFDckIsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLFNBQVMsQ0FBQztZQUNmLEtBQUssU0FBUztnQkFDWixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztTQUN0QztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7a0hBZlUscUJBQXFCLGtCQUlaLGtCQUFrQjtzR0FKM0IscUJBQXFCLG9FQ1psQyx3VUFhQSw2d0JESFksWUFBWTsyRkFFWCxxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0UsVUFBVSxpQkFHTCxpQkFBaUIsQ0FBQyxJQUFJLGNBQ3pCLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQzs7MEJBTVYsTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgSW5qZWN0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBNQVRfU05BQ0tfQkFSX0RBVEEsIE1hdFNuYWNrQmFyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJ1xuaW1wb3J0IHsgQnhSZXN0TW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vcmVxdWVzdC9ieC1yZXN0Lm1vZHVsZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9hc3QtbWVzc2FnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RvYXN0LW1lc3NhZ2UuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0J4UmVzdE1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0TWVzc2FnZUNvbXBvbmVudCB7XG5cbiAgc25hY2tCYXJSZWYgPSBpbmplY3QoTWF0U25hY2tCYXJSZWYpXG5cbiAgY29uc3RydWN0b3IoQEluamVjdChNQVRfU05BQ0tfQkFSX0RBVEEpIHB1YmxpYyBkYXRhOiB7IG1lc3NhZ2U6IHN0cmluZywgdHlwZTogJ2Vycm9yJyB8ICd3YXJuaW5nJyB8ICdzdWNjZXNzJyB9KSB7XG4gIH1cblxuICBnZXRDbGFzcygpOnN0cmluZ3tcbiAgICBzd2l0Y2ggKHRoaXMuZGF0YS50eXBlKXtcbiAgICAgIGNhc2UgJ2Vycm9yJzpcbiAgICAgIGNhc2UgJ3dhcm5pbmcnOlxuICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGEudHlwZSArICctbWVzc2FnZSc7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctMTAwIGQtZmxleFwiPlxuICA8c3BhbiBtYXRTbmFja0JhckxhYmVsIFtjbGFzc109XCJnZXRDbGFzcygpXCI+XG4gIHt7IGRhdGEubWVzc2FnZSB9fVxuPC9zcGFuPlxuICA8c3BhbiBtYXRTbmFja0JhckFjdGlvbnMgW2NsYXNzXT1cImdldENsYXNzKClcIj5cbiAgPGJ1dHRvbiBtYXQtYnV0dG9uIG1hdFNuYWNrQmFyQWN0aW9uIChjbGljayk9XCJzbmFja0JhclJlZi5kaXNtaXNzV2l0aEFjdGlvbigpXCI+XG4gICAgPG1hdC1pY29uPlxuICAgICAgY2xvc2VcbiAgICA8L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvc3Bhbj5cbjwvZGl2PlxuXG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import serialize from '../../functions/serializeJavascript';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export default class JSONServices {
|
|
5
|
+
static deserialize(data) {
|
|
6
|
+
return eval('(' + data + ')');
|
|
7
|
+
}
|
|
8
|
+
static serialize(data) {
|
|
9
|
+
return serialize(data);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
JSONServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JSONServices, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
13
|
+
JSONServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JSONServices, providedIn: 'root' });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: JSONServices, decorators: [{
|
|
15
|
+
type: Injectable,
|
|
16
|
+
args: [{
|
|
17
|
+
providedIn: 'root'
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSlNPTi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3NlcnZpY2VzL3ZhbmlsbGEvSlNPTi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sU0FBUyxNQUFNLHFDQUFxQyxDQUFBOztBQUszRCxNQUFNLENBQUMsT0FBTyxPQUFPLFlBQVk7SUFDL0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFTO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUE7SUFDL0IsQ0FBQztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBUztRQUN4QixPQUFPLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUN4QixDQUFDOzt5R0FQa0IsWUFBWTs2R0FBWixZQUFZLGNBRm5CLE1BQU07MkZBRUMsWUFBWTtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCBzZXJpYWxpemUgZnJvbSAnLi4vLi4vZnVuY3Rpb25zL3NlcmlhbGl6ZUphdmFzY3JpcHQnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgSlNPTlNlcnZpY2VzIHtcbiAgc3RhdGljIGRlc2VyaWFsaXplKGRhdGE6IGFueSkge1xuICAgIHJldHVybiBldmFsKCcoJyArIGRhdGEgKyAnKScpXG4gIH1cblxuICBzdGF0aWMgc2VyaWFsaXplKGRhdGE6IGFueSApIHtcbiAgICByZXR1cm4gc2VyaWFsaXplKGRhdGEpXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import JSON from '../../services/vanilla/JSON';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LocalStorageServices {
|
|
5
|
+
static get(name) {
|
|
6
|
+
return localStorage.getItem(name);
|
|
7
|
+
}
|
|
8
|
+
static getObj(name) {
|
|
9
|
+
return JSON.deserialize(localStorage.getItem(name));
|
|
10
|
+
}
|
|
11
|
+
static set(name, value) {
|
|
12
|
+
localStorage.setItem(name, value);
|
|
13
|
+
}
|
|
14
|
+
static setObj(name, value) {
|
|
15
|
+
let get = this.get(name);
|
|
16
|
+
if (get && typeof get === 'object') {
|
|
17
|
+
localStorage.setItem(name, JSON.serialize(Object.assign(get, value)));
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
localStorage.setItem(name, JSON.serialize(value));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
static del(name) {
|
|
24
|
+
localStorage.removeItem(name);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
LocalStorageServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageServices, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
28
|
+
LocalStorageServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageServices, providedIn: 'root' });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: LocalStorageServices, decorators: [{
|
|
30
|
+
type: Injectable,
|
|
31
|
+
args: [{
|
|
32
|
+
providedIn: 'root'
|
|
33
|
+
}]
|
|
34
|
+
}] });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxTdG9yYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYngtcmVzdC9zcmMvc2VydmljZXMvdmFuaWxsYS9sb2NhbFN0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMxQyxPQUFPLElBQUksTUFBTSw2QkFBNkIsQ0FBQTs7QUFLOUMsTUFBTSxPQUFPLG9CQUFvQjtJQUUvQixNQUFNLENBQUMsR0FBRyxDQUFDLElBQVk7UUFDckIsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFJLElBQVk7UUFDM0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNyRCxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUNwQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFZLEVBQUUsS0FBVTtRQUNwQyxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3hCLElBQUcsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBQztZQUNoQyxZQUFZLENBQUMsT0FBTyxDQUNsQixJQUFJLEVBQ0osSUFBSSxDQUFDLFNBQVMsQ0FDWixNQUFNLENBQUMsTUFBTSxDQUNYLEdBQUcsRUFDSCxLQUFLLENBQ04sQ0FDRixDQUNGLENBQUE7U0FDRjthQUFNO1lBQ0wsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1NBQ2xEO0lBQ0gsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWTtRQUNyQixZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQy9CLENBQUM7O2lIQWpDVSxvQkFBb0I7cUhBQXBCLG9CQUFvQixjQUZuQixNQUFNOzJGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCBKU09OIGZyb20gJy4uLy4uL3NlcnZpY2VzL3ZhbmlsbGEvSlNPTidcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9jYWxTdG9yYWdlU2VydmljZXMge1xuXG4gIHN0YXRpYyBnZXQobmFtZTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0obmFtZSlcbiAgfVxuXG4gIHN0YXRpYyBnZXRPYmo8VD4obmFtZTogc3RyaW5nKTogVCB8IG51bGwge1xuICAgIHJldHVybiBKU09OLmRlc2VyaWFsaXplKGxvY2FsU3RvcmFnZS5nZXRJdGVtKG5hbWUpKVxuICB9XG5cbiAgc3RhdGljIHNldChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShuYW1lLCB2YWx1ZSlcbiAgfVxuXG4gIHN0YXRpYyBzZXRPYmoobmFtZTogc3RyaW5nLCB2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgbGV0IGdldCA9IHRoaXMuZ2V0KG5hbWUpXG4gICAgaWYoZ2V0ICYmIHR5cGVvZiBnZXQgPT09ICdvYmplY3QnKXtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFxuICAgICAgICBuYW1lLFxuICAgICAgICBKU09OLnNlcmlhbGl6ZShcbiAgICAgICAgICBPYmplY3QuYXNzaWduKFxuICAgICAgICAgICAgZ2V0LFxuICAgICAgICAgICAgdmFsdWVcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0obmFtZSwgSlNPTi5zZXJpYWxpemUodmFsdWUpKVxuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBkZWwobmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0obmFtZSlcbiAgfVxuXG59XG4iXX0=
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import JSON from '../../services/vanilla/JSON';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export default class CookiesServices {
|
|
5
|
+
static get(name) {
|
|
6
|
+
const results = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
|
|
7
|
+
if (results)
|
|
8
|
+
return results[2];
|
|
9
|
+
else
|
|
10
|
+
return '';
|
|
11
|
+
}
|
|
12
|
+
static set(name, value, age = 0) {
|
|
13
|
+
let string = name + '=' + value + ';';
|
|
14
|
+
if (age) {
|
|
15
|
+
string += ' max-age=' + age;
|
|
16
|
+
}
|
|
17
|
+
string += '; SameSite=None; Secure';
|
|
18
|
+
document.cookie = string;
|
|
19
|
+
}
|
|
20
|
+
static setObj(name, value, age = 0) {
|
|
21
|
+
let string = name + '=' + JSON.serialize(value) + ';';
|
|
22
|
+
if (age) {
|
|
23
|
+
string += ' max-age=' + age;
|
|
24
|
+
}
|
|
25
|
+
string += '; SameSite=None; Secure';
|
|
26
|
+
document.cookie = string;
|
|
27
|
+
}
|
|
28
|
+
static getObj(name) {
|
|
29
|
+
const results = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
|
|
30
|
+
if (results) {
|
|
31
|
+
return JSON.deserialize(results[2]);
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
CookiesServices.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CookiesServices, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
37
|
+
CookiesServices.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CookiesServices, providedIn: 'root' });
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: CookiesServices, decorators: [{
|
|
39
|
+
type: Injectable,
|
|
40
|
+
args: [{
|
|
41
|
+
providedIn: 'root'
|
|
42
|
+
}]
|
|
43
|
+
}] });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoi0YFvb2tpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ieC1yZXN0L3NyYy9zZXJ2aWNlcy92YW5pbGxhL9GBb29raWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFDMUMsT0FBTyxJQUFJLE1BQU0sNkJBQTZCLENBQUE7O0FBSzlDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sZUFBZTtJQUVsQyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQVk7UUFDckIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxlQUFlLENBQUMsQ0FBQztRQUMxRSxJQUFJLE9BQU87WUFDVCxPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTs7WUFFakIsT0FBTyxFQUFFLENBQUE7SUFDYixDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZLEVBQUUsS0FBYSxFQUFFLE1BQWMsQ0FBQztRQUNyRCxJQUFJLE1BQU0sR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUE7UUFDckMsSUFBRyxHQUFHLEVBQUU7WUFDTixNQUFNLElBQUksV0FBVyxHQUFHLEdBQUcsQ0FBQTtTQUM1QjtRQUNELE1BQU0sSUFBSSx5QkFBeUIsQ0FBQTtRQUNuQyxRQUFRLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtJQUMxQixDQUFDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFZLEVBQUUsS0FBVSxFQUFFLE1BQWMsQ0FBQztRQUNyRCxJQUFJLE1BQU0sR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFBO1FBQ3JELElBQUcsR0FBRyxFQUFFO1lBQ04sTUFBTSxJQUFJLFdBQVcsR0FBRyxHQUFHLENBQUE7U0FDNUI7UUFDRCxNQUFNLElBQUkseUJBQXlCLENBQUE7UUFDbkMsUUFBUSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7SUFDMUIsQ0FBQztJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUksSUFBWTtRQUMzQixNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLGVBQWUsQ0FBQyxDQUFDO1FBQzFFLElBQUksT0FBTyxFQUFFO1lBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1NBQ3BDO1FBRUQsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDOzs0R0FuQ2tCLGVBQWU7Z0hBQWYsZUFBZSxjQUZ0QixNQUFNOzJGQUVDLGVBQWU7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgSlNPTiBmcm9tICcuLi8uLi9zZXJ2aWNlcy92YW5pbGxhL0pTT04nXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQ29va2llc1NlcnZpY2VzIHtcblxuICBzdGF0aWMgZ2V0KG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgcmVzdWx0cyA9IGRvY3VtZW50LmNvb2tpZS5tYXRjaCgnKF58OykgPycgKyBuYW1lICsgJz0oW147XSopKDt8JCknKTtcbiAgICBpZiAocmVzdWx0cylcbiAgICAgIHJldHVybiByZXN1bHRzWzJdXG4gICAgZWxzZVxuICAgICAgcmV0dXJuICcnXG4gIH1cblxuICBzdGF0aWMgc2V0KG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgYWdlOiBudW1iZXIgPSAwKSB7XG4gICAgbGV0IHN0cmluZyA9IG5hbWUgKyAnPScgKyB2YWx1ZSArICc7J1xuICAgIGlmKGFnZSkge1xuICAgICAgc3RyaW5nICs9ICcgbWF4LWFnZT0nICsgYWdlXG4gICAgfVxuICAgIHN0cmluZyArPSAnOyBTYW1lU2l0ZT1Ob25lOyBTZWN1cmUnXG4gICAgZG9jdW1lbnQuY29va2llID0gc3RyaW5nXG4gIH1cblxuICBzdGF0aWMgc2V0T2JqKG5hbWU6IHN0cmluZywgdmFsdWU6IGFueSwgYWdlOiBudW1iZXIgPSAwKSB7XG4gICAgbGV0IHN0cmluZyA9IG5hbWUgKyAnPScgKyBKU09OLnNlcmlhbGl6ZSh2YWx1ZSkgKyAnOydcbiAgICBpZihhZ2UpIHtcbiAgICAgIHN0cmluZyArPSAnIG1heC1hZ2U9JyArIGFnZVxuICAgIH1cbiAgICBzdHJpbmcgKz0gJzsgU2FtZVNpdGU9Tm9uZTsgU2VjdXJlJ1xuICAgIGRvY3VtZW50LmNvb2tpZSA9IHN0cmluZ1xuICB9XG5cbiAgc3RhdGljIGdldE9iajxUPihuYW1lOiBzdHJpbmcpOiBUIHwgZmFsc2Uge1xuICAgIGNvbnN0IHJlc3VsdHMgPSBkb2N1bWVudC5jb29raWUubWF0Y2goJyhefDspID8nICsgbmFtZSArICc9KFteO10qKSg7fCQpJyk7XG4gICAgaWYgKHJlc3VsdHMpIHtcbiAgICAgIHJldHVybiBKU09OLmRlc2VyaWFsaXplKHJlc3VsdHNbMl0pXG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { createReducer, on, props } from '@ngrx/store';
|
|
2
|
+
import { createAction } from '@ngrx/store';
|
|
3
|
+
import clone from 'just-clone';
|
|
4
|
+
export const save = createAction('[Auth Component] Save', props());
|
|
5
|
+
export const saveAccessToken = createAction('[Auth Component] SaveAccessToken', props());
|
|
6
|
+
export const initialState = {
|
|
7
|
+
access_token: '',
|
|
8
|
+
client_endpoint: '',
|
|
9
|
+
domain: '',
|
|
10
|
+
expires: 0,
|
|
11
|
+
expires_in: 0,
|
|
12
|
+
member_id: '',
|
|
13
|
+
refresh_token: '',
|
|
14
|
+
scope: '',
|
|
15
|
+
server_endpoint: '',
|
|
16
|
+
status: '',
|
|
17
|
+
user_id: 0
|
|
18
|
+
};
|
|
19
|
+
const _authReducer = createReducer(initialState, on(saveAccessToken, (s, data) => {
|
|
20
|
+
let copy = clone(s);
|
|
21
|
+
return Object.assign(copy, data);
|
|
22
|
+
}));
|
|
23
|
+
export function authReducer(state = initialState, action) {
|
|
24
|
+
return _authReducer(state, action);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2J4LXJlc3Qvc3JjL3N0b3JlL2F1dGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLGFBQWEsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFMUMsT0FBTyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBZTlCLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsdUJBQXVCLEVBQUUsS0FBSyxFQUFpRCxDQUFDLENBQUE7QUFDakgsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxrQ0FBa0MsRUFBRSxLQUFLLEVBQTJCLENBQUMsQ0FBQTtBQUVqSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQXdCO0lBQy9DLFlBQVksRUFBRSxFQUFFO0lBQ2hCLGVBQWUsRUFBRSxFQUFFO0lBQ25CLE1BQU0sRUFBRSxFQUFFO0lBQ1YsT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsQ0FBQztJQUNiLFNBQVMsRUFBRSxFQUFFO0lBQ2IsYUFBYSxFQUFFLEVBQUU7SUFDakIsS0FBSyxFQUFFLEVBQUU7SUFDVCxlQUFlLEVBQUUsRUFBRTtJQUNuQixNQUFNLEVBQUUsRUFBRTtJQUNWLE9BQU8sRUFBRSxDQUFDO0NBQ1gsQ0FBQTtBQUVELE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FDaEMsWUFBWSxFQUNaLEVBQUUsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDOUIsSUFBSSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ25CLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7QUFDbEMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztBQUVGLE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBSyxHQUFHLFlBQVksRUFBRSxNQUFjO0lBQzlELE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aW9uLCBjcmVhdGVSZWR1Y2VyLCBvbiwgcHJvcHMgfSBmcm9tICdAbmdyeC9zdG9yZSdcbmltcG9ydCB7IGNyZWF0ZUFjdGlvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJ1xuaW1wb3J0IHNhdmVBcHBsaWNhdGlvbkF1dGggZnJvbSAnLi4vdHlwaWZpY2F0aW9uL2F1dGgvc2F2ZSdcbmltcG9ydCBjbG9uZSBmcm9tICdqdXN0LWNsb25lJ1xuZXhwb3J0IGludGVyZmFjZSBzYXZlQXBwbGljYXRpb25BdXRoUGF0aCB7XG4gIGFjY2Vzc190b2tlbj86IHN0cmluZywgLy8g0L7RgdC90L7QstC90L7QuSDQsNCy0YLQvtGA0LjQt9Cw0YbQuNC+0L3QvdGL0Lkg0YLQvtC60LXQvSwg0YLRgNC10LHRg9C10LzRi9C5INC00LvRjyDQtNC+0YHRgtGD0L/QsCDQuiBSRVNUIEFQSVxuICBjbGllbnRfZW5kcG9pbnQ/OiBzdHJpbmcsIC8vINCw0LTRgNC10YEgUkVTVC3QuNC90YLQtdGA0YTQtdC50YHQsCDQv9C+0YDRgtCw0LvQsFxuICBkb21haW4/OiBzdHJpbmcsXG4gIGV4cGlyZXM/OiBudW1iZXIsXG4gIGV4cGlyZXNfaW4/OiBudW1iZXIsXG4gIG1lbWJlcl9pZD86IHN0cmluZyxcbiAgcmVmcmVzaF90b2tlbj86IHN0cmluZywgLy8g0LTQvtC/0L7Qu9C90LjRgtC10LvRjNC90YvQuSDQsNCy0YLQvtGA0LjQt9Cw0YbQuNC+0L3QvdGL0Lkg0YLQvtC60LXQvSwg0YHQu9GD0LbQsNGJ0LjQuSDQtNC70Y8g0L/RgNC+0LTQu9C10L3QuNGPINGB0L7RhdGA0LDQvdC10L3QvdC+0Lkg0LDQstGC0L7RgNC40LfQsNGG0LjQuFxuICBzY29wZT86IHN0cmluZyxcbiAgc2VydmVyX2VuZHBvaW50Pzogc3RyaW5nLCAvLyDQsNC00YDQtdGBIFJFU1Qt0LjQvdGC0LXRgNGE0LXQudGB0LAg0YHQtdGA0LLQtdGA0LBcbiAgc3RhdHVzPzogc3RyaW5nLCAvLyDRgdGC0LDRgtGD0YEg0L/RgNC40LvQvtC20LXQvdC40Y8g0L3QsCDQv9C+0YDRgtCw0LvQtVxuICB1c2VyX2lkPzogbnVtYmVyXG4gIHR5cGU/OiBzdHJpbmdcbn1cbmV4cG9ydCBjb25zdCBzYXZlID0gY3JlYXRlQWN0aW9uKCdbQXV0aCBDb21wb25lbnRdIFNhdmUnLCBwcm9wczxzYXZlQXBwbGljYXRpb25BdXRoIHwgc2F2ZUFwcGxpY2F0aW9uQXV0aFBhdGg+KCkpXG5leHBvcnQgY29uc3Qgc2F2ZUFjY2Vzc1Rva2VuID0gY3JlYXRlQWN0aW9uKCdbQXV0aCBDb21wb25lbnRdIFNhdmVBY2Nlc3NUb2tlbicsIHByb3BzPHNhdmVBcHBsaWNhdGlvbkF1dGhQYXRoPigpKVxuXG5leHBvcnQgY29uc3QgaW5pdGlhbFN0YXRlOiBzYXZlQXBwbGljYXRpb25BdXRoID0ge1xuICBhY2Nlc3NfdG9rZW46ICcnLFxuICBjbGllbnRfZW5kcG9pbnQ6ICcnLFxuICBkb21haW46ICcnLFxuICBleHBpcmVzOiAwLFxuICBleHBpcmVzX2luOiAwLFxuICBtZW1iZXJfaWQ6ICcnLFxuICByZWZyZXNoX3Rva2VuOiAnJyxcbiAgc2NvcGU6ICcnLFxuICBzZXJ2ZXJfZW5kcG9pbnQ6ICcnLFxuICBzdGF0dXM6ICcnLFxuICB1c2VyX2lkOiAwXG59XG5cbmNvbnN0IF9hdXRoUmVkdWNlciA9IGNyZWF0ZVJlZHVjZXIoXG4gIGluaXRpYWxTdGF0ZSxcbiAgb24oc2F2ZUFjY2Vzc1Rva2VuLCAocywgZGF0YSkgPT4ge1xuICAgIGxldCBjb3B5ID0gY2xvbmUocylcbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbihjb3B5LCBkYXRhKVxuICB9KSxcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBhdXRoUmVkdWNlcihzdGF0ZSA9IGluaXRpYWxTdGF0ZSwgYWN0aW9uOiBBY3Rpb24pIHtcbiAgcmV0dXJuIF9hdXRoUmVkdWNlcihzdGF0ZSwgYWN0aW9uKTtcbn1cbiJdfQ==
|