@acorex/core 6.5.15 → 6.5.16
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/karma.conf.js +32 -0
- package/ng-package.json +10 -0
- package/package.json +13 -33
- package/src/lib/classes/base-page.class.ts +29 -0
- package/src/lib/classes/color.class.ts +61 -0
- package/src/lib/classes/datetime.class.ts +373 -0
- package/src/lib/classes/menu.class.ts +37 -0
- package/{lib/classes/navigator.class.d.ts → src/lib/classes/navigator.class.ts} +1 -1
- package/{lib/classes/popup.class.d.ts → src/lib/classes/popup.class.ts} +2 -0
- package/src/lib/classes/promise.class.ts +25 -0
- package/src/lib/classes/select.class.ts +7 -0
- package/src/lib/core.module.ts +21 -0
- package/src/lib/error/error.module.ts +13 -0
- package/src/lib/error/error.service.ts +23 -0
- package/src/lib/error/index.ts +3 -0
- package/{lib/events/keyboard.d.ts → src/lib/events/keyboard.ts} +3 -0
- package/{lib/http/http-error.class.d.ts → src/lib/http/http-error.class.ts} +2 -2
- package/{lib/http/http-events.interceptor.d.ts → src/lib/http/http-events.interceptor.ts} +7 -3
- package/{lib/http/http-request.class.d.ts → src/lib/http/http-request.class.ts} +5 -5
- package/src/lib/http/http-result.class.ts +34 -0
- package/src/lib/http/http.module.ts +25 -0
- package/src/lib/http/http.service.ts +159 -0
- package/{esm2020 → src}/lib/locale/en.json +6 -6
- package/{esm2020 → src}/lib/locale/fa.json +7 -7
- package/src/lib/pipe/datetime.pipe.ts +20 -0
- package/src/lib/pipe/htmlToText.pipe.ts +18 -0
- package/src/lib/platform/index.ts +1 -0
- package/src/lib/platform/platform.service.ts +211 -0
- package/src/lib/services/config.ts +36 -0
- package/src/lib/services/event.service.ts +31 -0
- package/src/lib/services/navigator.service.ts +8 -0
- package/src/lib/services/storage.service.ts +11 -0
- package/src/lib/translator/translator.module.ts +19 -0
- package/src/lib/translator/translator.pipe.ts +22 -0
- package/src/lib/translator/translator.service.ts +19 -0
- package/src/lib/translator/translator.ts +31 -0
- package/src/lib/utils/array/array-util.ts +140 -0
- package/src/lib/utils/html/html-util.ts +264 -0
- package/src/lib/utils/html/html.module.ts +11 -0
- package/src/lib/utils/math/math-util.ts +5 -0
- package/src/lib/utils/object/object-util.ts +87 -0
- package/src/lib/utils/render/on-demand-preload-strategy.service.ts +25 -0
- package/src/lib/utils/render/render.service.ts +110 -0
- package/src/lib/utils/render/rendering.module.ts +25 -0
- package/src/lib/utils/scroll/scroll.directive.ts +35 -0
- package/src/lib/utils/scroll/scroll.module.ts +11 -0
- package/src/lib/utils/separator/separator.module.ts +11 -0
- package/src/lib/utils/separator/separator.pipe.ts +27 -0
- package/{public-api.d.ts → src/public-api.ts} +10 -0
- package/src/test.ts +28 -0
- package/tsconfig.lib.json +25 -0
- package/tsconfig.lib.prod.json +6 -0
- package/tsconfig.spec.json +18 -0
- package/tslint.json +17 -0
- package/acorex-core.d.ts +0 -5
- package/esm2020/acorex-core.mjs +0 -5
- package/esm2020/lib/classes/base-page.class.mjs +0 -28
- package/esm2020/lib/classes/color.class.mjs +0 -49
- package/esm2020/lib/classes/datetime.class.mjs +0 -314
- package/esm2020/lib/classes/menu.class.mjs +0 -27
- package/esm2020/lib/classes/navigator.class.mjs +0 -2
- package/esm2020/lib/classes/popup.class.mjs +0 -2
- package/esm2020/lib/classes/promise.class.mjs +0 -19
- package/esm2020/lib/classes/sectionlist.class.mjs +0 -2
- package/esm2020/lib/classes/select.class.mjs +0 -3
- package/esm2020/lib/core.module.mjs +0 -27
- package/esm2020/lib/error/error.class.mjs +0 -2
- package/esm2020/lib/error/error.module.mjs +0 -19
- package/esm2020/lib/error/error.service.mjs +0 -21
- package/esm2020/lib/events/keyboard.mjs +0 -2
- package/esm2020/lib/http/http-error.class.mjs +0 -2
- package/esm2020/lib/http/http-events.interceptor.mjs +0 -3
- package/esm2020/lib/http/http-request.class.mjs +0 -2
- package/esm2020/lib/http/http-result.class.mjs +0 -21
- package/esm2020/lib/http/http.module.mjs +0 -37
- package/esm2020/lib/http/http.service.mjs +0 -145
- package/esm2020/lib/pipe/datetime.pipe.mjs +0 -25
- package/esm2020/lib/pipe/htmlToText.pipe.mjs +0 -25
- package/esm2020/lib/platform/index.mjs +0 -2
- package/esm2020/lib/platform/platform.service.mjs +0 -138
- package/esm2020/lib/services/config.mjs +0 -29
- package/esm2020/lib/services/event.service.mjs +0 -36
- package/esm2020/lib/services/navigator.service.mjs +0 -10
- package/esm2020/lib/services/storage.service.mjs +0 -16
- package/esm2020/lib/translator/translator.mjs +0 -26
- package/esm2020/lib/translator/translator.module.mjs +0 -25
- package/esm2020/lib/translator/translator.pipe.mjs +0 -24
- package/esm2020/lib/translator/translator.service.mjs +0 -21
- package/esm2020/lib/utils/array/array-util.mjs +0 -133
- package/esm2020/lib/utils/html/html-util.mjs +0 -192
- package/esm2020/lib/utils/html/html.module.mjs +0 -19
- package/esm2020/lib/utils/math/math-util.mjs +0 -6
- package/esm2020/lib/utils/object/object-util.mjs +0 -83
- package/esm2020/lib/utils/render/on-demand-preload-strategy.service.mjs +0 -20
- package/esm2020/lib/utils/render/render.service.mjs +0 -103
- package/esm2020/lib/utils/render/rendering.module.mjs +0 -35
- package/esm2020/lib/utils/scroll/scroll.directive.mjs +0 -54
- package/esm2020/lib/utils/scroll/scroll.module.mjs +0 -19
- package/esm2020/lib/utils/separator/separator.module.mjs +0 -19
- package/esm2020/lib/utils/separator/separator.pipe.mjs +0 -33
- package/esm2020/public-api.mjs +0 -44
- package/fesm2015/acorex-core.mjs +0 -2262
- package/fesm2015/acorex-core.mjs.map +0 -1
- package/fesm2020/acorex-core.mjs +0 -2258
- package/fesm2020/acorex-core.mjs.map +0 -1
- package/lib/classes/base-page.class.d.ts +0 -13
- package/lib/classes/color.class.d.ts +0 -17
- package/lib/classes/datetime.class.d.ts +0 -63
- package/lib/classes/menu.class.d.ts +0 -34
- package/lib/classes/promise.class.d.ts +0 -7
- package/lib/classes/select.class.d.ts +0 -7
- package/lib/core.module.d.ts +0 -9
- package/lib/error/error.module.d.ts +0 -7
- package/lib/error/error.service.d.ts +0 -13
- package/lib/http/http-result.class.d.ts +0 -11
- package/lib/http/http.module.d.ts +0 -10
- package/lib/http/http.service.d.ts +0 -23
- package/lib/pipe/datetime.pipe.d.ts +0 -8
- package/lib/pipe/htmlToText.pipe.d.ts +0 -7
- package/lib/platform/index.d.ts +0 -1
- package/lib/platform/platform.service.d.ts +0 -25
- package/lib/services/config.d.ts +0 -9
- package/lib/services/event.service.d.ts +0 -9
- package/lib/services/navigator.service.d.ts +0 -8
- package/lib/services/storage.service.d.ts +0 -7
- package/lib/translator/translator.d.ts +0 -9
- package/lib/translator/translator.module.d.ts +0 -8
- package/lib/translator/translator.pipe.d.ts +0 -8
- package/lib/translator/translator.service.d.ts +0 -8
- package/lib/utils/array/array-util.d.ts +0 -6
- package/lib/utils/html/html-util.d.ts +0 -62
- package/lib/utils/html/html.module.d.ts +0 -8
- package/lib/utils/math/math-util.d.ts +0 -3
- package/lib/utils/object/object-util.d.ts +0 -7
- package/lib/utils/render/on-demand-preload-strategy.service.d.ts +0 -10
- package/lib/utils/render/render.service.d.ts +0 -18
- package/lib/utils/render/rendering.module.d.ts +0 -8
- package/lib/utils/scroll/scroll.directive.d.ts +0 -18
- package/lib/utils/scroll/scroll.module.d.ts +0 -8
- package/lib/utils/separator/separator.module.d.ts +0 -8
- package/lib/utils/separator/separator.pipe.d.ts +0 -8
- /package/{lib/classes/sectionlist.class.d.ts → src/lib/classes/sectionlist.class.ts} +0 -0
- /package/{lib/error/error.class.d.ts → src/lib/error/error.class.ts} +0 -0
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { Injectable, Injector } from '@angular/core';
|
|
2
|
-
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
|
|
3
|
-
import { HttpResult } from './http-result.class';
|
|
4
|
-
import { AX_HTTP_EVENT_INTERCEPTOR } from './http-events.interceptor';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/common/http";
|
|
7
|
-
// import { catchError, retry, retryWhen, mergeMap, delay, switchMap, scan, takeWhile, flatMap } from 'rxjs/operators';
|
|
8
|
-
// import { of, concat, throwError } from 'rxjs';
|
|
9
|
-
export class AXHttpService {
|
|
10
|
-
constructor(http, injector) {
|
|
11
|
-
this.http = http;
|
|
12
|
-
this.injector = injector;
|
|
13
|
-
this.interceptor = this.injector.get(AX_HTTP_EVENT_INTERCEPTOR);
|
|
14
|
-
}
|
|
15
|
-
get(url, config = {}) {
|
|
16
|
-
config.url = url;
|
|
17
|
-
config.method = "get";
|
|
18
|
-
return this.request(config);
|
|
19
|
-
}
|
|
20
|
-
post(url, config = {}) {
|
|
21
|
-
config.url = url;
|
|
22
|
-
config.method = "post";
|
|
23
|
-
return this.request(config);
|
|
24
|
-
}
|
|
25
|
-
delete(url, config = {}) {
|
|
26
|
-
config.url = url;
|
|
27
|
-
config.method = "delete";
|
|
28
|
-
return this.request(config);
|
|
29
|
-
}
|
|
30
|
-
put(url, config = {}) {
|
|
31
|
-
config.url = url;
|
|
32
|
-
config.method = "put";
|
|
33
|
-
return this.request(config);
|
|
34
|
-
}
|
|
35
|
-
request(config) {
|
|
36
|
-
return new HttpResult((result, error, complete) => {
|
|
37
|
-
this.handleBegin(config).then(c => {
|
|
38
|
-
this.http
|
|
39
|
-
.request(config.method, config.url, this.mapOptions(config))
|
|
40
|
-
//.pipe(this.retry)
|
|
41
|
-
.subscribe(data => {
|
|
42
|
-
this.handleResult(data, result, complete, config);
|
|
43
|
-
}, c => {
|
|
44
|
-
this.handleError(c, error, complete, config);
|
|
45
|
-
});
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
handleResult(data, result, complete, config) {
|
|
50
|
-
if (this.interceptor) {
|
|
51
|
-
this.interceptor.success(config, data).then(c => {
|
|
52
|
-
if (result)
|
|
53
|
-
result(c);
|
|
54
|
-
this.handleComplete(complete, config);
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
//
|
|
59
|
-
if (result)
|
|
60
|
-
result(data);
|
|
61
|
-
this.handleComplete(complete, config);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
handleBegin(config) {
|
|
65
|
-
return new Promise((resolve) => {
|
|
66
|
-
if (!config.headers)
|
|
67
|
-
config.headers = {};
|
|
68
|
-
if (!config.params)
|
|
69
|
-
config.params = {};
|
|
70
|
-
//
|
|
71
|
-
if (this.interceptor) {
|
|
72
|
-
this.interceptor.begin(config).then(c => {
|
|
73
|
-
resolve(c);
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
resolve(config);
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
handleComplete(complete, config) {
|
|
82
|
-
if (complete)
|
|
83
|
-
complete();
|
|
84
|
-
if (this.interceptor)
|
|
85
|
-
this.interceptor.complete(config);
|
|
86
|
-
}
|
|
87
|
-
handleError(c, error, complete, config) {
|
|
88
|
-
let r = {
|
|
89
|
-
message: c.message,
|
|
90
|
-
status: c.status,
|
|
91
|
-
code: c.status?.toString(),
|
|
92
|
-
handled: false,
|
|
93
|
-
error: c.error
|
|
94
|
-
};
|
|
95
|
-
if (error) {
|
|
96
|
-
error(r);
|
|
97
|
-
}
|
|
98
|
-
if (!r.handled) {
|
|
99
|
-
if (this.interceptor)
|
|
100
|
-
this.interceptor.error(config, r);
|
|
101
|
-
}
|
|
102
|
-
this.handleComplete(complete, config);
|
|
103
|
-
}
|
|
104
|
-
mapOptions(options) {
|
|
105
|
-
let headers = new HttpHeaders();
|
|
106
|
-
for (const key in options.headers) {
|
|
107
|
-
if (options.headers.hasOwnProperty(key)) {
|
|
108
|
-
const value = options.headers[key];
|
|
109
|
-
headers = headers.set(key, value);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
let params = new HttpParams();
|
|
113
|
-
for (const key in options.params) {
|
|
114
|
-
if (options.params.hasOwnProperty(key)) {
|
|
115
|
-
const value = options.params[key];
|
|
116
|
-
params = params.set(key, value);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
return {
|
|
120
|
-
headers: headers,
|
|
121
|
-
params: params,
|
|
122
|
-
body: options.body,
|
|
123
|
-
responseType: options.responseType || 'json'
|
|
124
|
-
};
|
|
125
|
-
// if (options.method == "get") {
|
|
126
|
-
// return {
|
|
127
|
-
// headers: headers,
|
|
128
|
-
// params: params
|
|
129
|
-
// };
|
|
130
|
-
// }
|
|
131
|
-
// else {
|
|
132
|
-
// return {
|
|
133
|
-
// headers: headers,
|
|
134
|
-
// params: params,
|
|
135
|
-
// body: options.body
|
|
136
|
-
// };
|
|
137
|
-
// }
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
AXHttpService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXHttpService, deps: [{ token: i1.HttpClient }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
141
|
-
AXHttpService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXHttpService });
|
|
142
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXHttpService, decorators: [{
|
|
143
|
-
type: Injectable
|
|
144
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i0.Injector }]; } });
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi9odHRwL2h0dHAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUNsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2pELE9BQU8sRUFDSCx5QkFBeUIsRUFDNUIsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBQ25DLHVIQUF1SDtBQUN2SCxpREFBaUQ7QUFJakQsTUFBTSxPQUFPLGFBQWE7SUFHdEIsWUFBb0IsSUFBZ0IsRUFBVSxRQUFrQjtRQUE1QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUM1RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUdELEdBQUcsQ0FBSSxHQUFXLEVBQUUsU0FBK0IsRUFBRTtRQUNqRCxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNqQixNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksQ0FBSSxHQUFXLEVBQUUsU0FBK0IsRUFBRTtRQUNsRCxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNqQixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMs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O1FBQ0QsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM5QixLQUFLLE1BQU0sR0FBRyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDOUIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDcEMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDbEMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO2FBQ25DO1NBQ0o7UUFDRCxPQUFPO1lBQ0gsT0FBTyxFQUFFLE9BQU87WUFDaEIsTUFBTSxFQUFFLE1BQU07WUFDZCxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZLElBQUksTUFBTTtTQUMvQyxDQUFDO1FBQ0YsaUNBQWlDO1FBQ2pDLGVBQWU7UUFDZiw0QkFBNEI7UUFDNUIseUJBQXlCO1FBQ3pCLFNBQVM7UUFDVCxJQUFJO1FBQ0osU0FBUztRQUNULGVBQWU7UUFDZiw0QkFBNEI7UUFDNUIsMEJBQTBCO1FBQzFCLDZCQUE2QjtRQUM3QixTQUFTO1FBQ1QsSUFBSTtJQUNSLENBQUM7OzJHQS9JUSxhQUFhOytHQUFiLGFBQWE7NEZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBJbmplY3RGbGFncyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcywgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEh0dHBSZXN1bHQgfSBmcm9tICcuL2h0dHAtcmVzdWx0LmNsYXNzJztcclxuaW1wb3J0IHsgSUh0dHBFcnJvciB9IGZyb20gJy4vaHR0cC1lcnJvci5jbGFzcyc7XHJcbmltcG9ydCB7IEFYSHR0cFJlcXVlc3RPcHRpb25zIH0gZnJvbSAnLi9odHRwLXJlcXVlc3QuY2xhc3MnO1xyXG5pbXBvcnQge1xyXG4gICAgQVhfSFRUUF9FVkVOVF9JTlRFUkNFUFRPUiwgQVhIdHRwRXZlbnRJbnRlcmNlcHRvclxyXG59IGZyb20gJy4vaHR0cC1ldmVudHMuaW50ZXJjZXB0b3InO1xyXG4vLyBpbXBvcnQgeyBjYXRjaEVycm9yLCByZXRyeSwgcmV0cnlXaGVuLCBtZXJnZU1hcCwgZGVsYXksIHN3aXRjaE1hcCwgc2NhbiwgdGFrZVdoaWxlLCBmbGF0TWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG4vLyBpbXBvcnQgeyBvZiwgY29uY2F0LCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQVhIdHRwU2VydmljZSB7XHJcblxyXG4gICAgcHJpdmF0ZSBpbnRlcmNlcHRvcjogQVhIdHRwRXZlbnRJbnRlcmNlcHRvcjtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgICAgICB0aGlzLmludGVyY2VwdG9yID0gdGhpcy5pbmplY3Rvci5nZXQoQVhfSFRUUF9FVkVOVF9JTlRFUkNFUFRPUik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGdldDxUPih1cmw6IHN0cmluZywgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgY29uZmlnLnVybCA9IHVybDtcclxuICAgICAgICBjb25maWcubWV0aG9kID0gXCJnZXRcIjtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcG9zdDxUPih1cmw6IHN0cmluZywgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgY29uZmlnLnVybCA9IHVybDtcclxuICAgICAgICBjb25maWcubWV0aG9kID0gXCJwb3N0XCI7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdChjb25maWcpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlbGV0ZTxUPih1cmw6IHN0cmluZywgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgY29uZmlnLnVybCA9IHVybDtcclxuICAgICAgICBjb25maWcubWV0aG9kID0gXCJkZWxldGVcIjtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHV0PFQ+KHVybDogc3RyaW5nLCBjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zID0ge30pOiBIdHRwUmVzdWx0PFQ+IHtcclxuICAgICAgICBjb25maWcudXJsID0gdXJsO1xyXG4gICAgICAgIGNvbmZpZy5tZXRob2QgPSBcInB1dFwiO1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJlcXVlc3QoY29uZmlnKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcmVxdWVzdDxUPihjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zKTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBIdHRwUmVzdWx0PFQ+KChyZXN1bHQ/LCBlcnJvcj8sIGNvbXBsZXRlPykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmhhbmRsZUJlZ2luKGNvbmZpZykudGhlbihjID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXF1ZXN0PFQ+KGNvbmZpZy5tZXRob2QsIGNvbmZpZy51cmwsIHRoaXMubWFwT3B0aW9ucyhjb25maWcpKVxyXG4gICAgICAgICAgICAgICAgICAgIC8vLnBpcGUodGhpcy5yZXRyeSlcclxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3VsdChkYXRhLCByZXN1bHQsIGNvbXBsZXRlLCBjb25maWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIGMgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGMsIGVycm9yLCBjb21wbGV0ZSwgY29uZmlnKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVSZXN1bHQoZGF0YSwgcmVzdWx0LCBjb21wbGV0ZSwgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucykge1xyXG4gICAgICAgIGlmICh0aGlzLmludGVyY2VwdG9yKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaW50ZXJjZXB0b3Iuc3VjY2Vzcyhjb25maWcsIGRhdGEpLnRoZW4oYyA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdChjKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlQ29tcGxldGUoY29tcGxldGUsIGNvbmZpZyk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgLy9cclxuICAgICAgICAgICAgaWYgKHJlc3VsdClcclxuICAgICAgICAgICAgICAgIHJlc3VsdChkYXRhKTtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVDb21wbGV0ZShjb21wbGV0ZSwgY29uZmlnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVCZWdpbihjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxBWEh0dHBSZXF1ZXN0T3B0aW9ucz4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIWNvbmZpZy5oZWFkZXJzKVxyXG4gICAgICAgICAgICAgICAgY29uZmlnLmhlYWRlcnMgPSB7fTtcclxuICAgICAgICAgICAgaWYgKCFjb25maWcucGFyYW1zKVxyXG4gICAgICAgICAgICAgICAgY29uZmlnLnBhcmFtcyA9IHt9O1xyXG4gICAgICAgICAgICAvL1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pbnRlcmNlcHRvcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pbnRlcmNlcHRvci5iZWdpbihjb25maWcpLnRoZW4oYyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShjKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlQ29tcGxldGUoY29tcGxldGU6IEZ1bmN0aW9uLCBjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zKSB7XHJcbiAgICAgICAgaWYgKGNvbXBsZXRlKVxyXG4gICAgICAgICAgICBjb21wbGV0ZSgpO1xyXG4gICAgICAgIGlmICh0aGlzLmludGVyY2VwdG9yKVxyXG4gICAgICAgICAgICB0aGlzLmludGVyY2VwdG9yLmNvbXBsZXRlKGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVFcnJvcihjOiBIdHRwRXJyb3JSZXNwb25zZSwgZXJyb3I6IEZ1bmN0aW9uLCBjb21wbGV0ZTogRnVuY3Rpb24sIGNvbmZpZzogQVhIdHRwUmVxdWVzdE9wdGlvbnMpIHtcclxuICAgICAgICBsZXQgcjogSUh0dHBFcnJvciA9IHtcclxuICAgICAgICAgICAgbWVzc2FnZTogYy5tZXNzYWdlLFxyXG4gICAgICAgICAgICBzdGF0dXM6IGMuc3RhdHVzLFxyXG4gICAgICAgICAgICBjb2RlOiBjLnN0YXR1cz8udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgaGFuZGxlZDogZmFsc2UsXHJcbiAgICAgICAgICAgIGVycm9yOiBjLmVycm9yXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlcnJvcikge1xyXG4gICAgICAgICAgICBlcnJvcihyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFyLmhhbmRsZWQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaW50ZXJjZXB0b3IpXHJcbiAgICAgICAgICAgICAgICB0aGlzLmludGVyY2VwdG9yLmVycm9yKGNvbmZpZywgcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaGFuZGxlQ29tcGxldGUoY29tcGxldGUsIGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBtYXBPcHRpb25zKG9wdGlvbnM6IEFYSHR0cFJlcXVlc3RPcHRpb25zKSB7XHJcbiAgICAgICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gb3B0aW9ucy5oZWFkZXJzKSB7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb25zLmhlYWRlcnMuaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBvcHRpb25zLmhlYWRlcnNba2V5XTtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldChrZXksIHZhbHVlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIG9wdGlvbnMucGFyYW1zKSB7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnBhcmFtcy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IG9wdGlvbnMucGFyYW1zW2tleV07XHJcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXHJcbiAgICAgICAgICAgIHBhcmFtczogcGFyYW1zLFxyXG4gICAgICAgICAgICBib2R5OiBvcHRpb25zLmJvZHksXHJcbiAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogb3B0aW9ucy5yZXNwb25zZVR5cGUgfHwgJ2pzb24nXHJcbiAgICAgICAgfTtcclxuICAgICAgICAvLyBpZiAob3B0aW9ucy5tZXRob2QgPT0gXCJnZXRcIikge1xyXG4gICAgICAgIC8vICAgICByZXR1cm4ge1xyXG4gICAgICAgIC8vICAgICAgICAgaGVhZGVyczogaGVhZGVycyxcclxuICAgICAgICAvLyAgICAgICAgIHBhcmFtczogcGFyYW1zXHJcbiAgICAgICAgLy8gICAgIH07XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vIGVsc2Uge1xyXG4gICAgICAgIC8vICAgICByZXR1cm4ge1xyXG4gICAgICAgIC8vICAgICAgICAgaGVhZGVyczogaGVhZGVycyxcclxuICAgICAgICAvLyAgICAgICAgIHBhcmFtczogcGFyYW1zLFxyXG4gICAgICAgIC8vICAgICAgICAgYm9keTogb3B0aW9ucy5ib2R5XHJcbiAgICAgICAgLy8gICAgIH07XHJcbiAgICAgICAgLy8gfVxyXG4gICAgfVxyXG5cclxufSJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { AXDateTime } from '../classes/datetime.class';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class AXDateTimePipe {
|
|
5
|
-
constructor() { }
|
|
6
|
-
transform(value, format) {
|
|
7
|
-
const date = AXDateTime.convert(value);
|
|
8
|
-
if (value == null) {
|
|
9
|
-
return '';
|
|
10
|
-
}
|
|
11
|
-
if (!format) {
|
|
12
|
-
return date.toString();
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
return date.format(format);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
AXDateTimePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXDateTimePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
20
|
-
AXDateTimePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXDateTimePipe, name: "dt" });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXDateTimePipe, decorators: [{
|
|
22
|
-
type: Pipe,
|
|
23
|
-
args: [{ name: 'dt' }]
|
|
24
|
-
}], ctorParameters: function () { return []; } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXRpbWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvcGlwZS9kYXRldGltZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsSUFBSSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFHdkQsTUFBTSxPQUFPLGNBQWM7SUFDdkIsZ0JBQWdCLENBQUM7SUFFakIsU0FBUyxDQUFDLEtBQVUsRUFBRSxNQUFlO1FBQ2pDLE1BQU0sSUFBSSxHQUFlLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkQsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO1lBQ2YsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUNELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMxQjthQUNJO1lBQ0QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlCO0lBQ0wsQ0FBQzs7NEdBZFEsY0FBYzswR0FBZCxjQUFjOzRGQUFkLGNBQWM7a0JBRDFCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZVRyYW5zZm9ybSwgUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWERhdGVUaW1lIH0gZnJvbSAnLi4vY2xhc3Nlcy9kYXRldGltZS5jbGFzcyc7XHJcblxyXG5AUGlwZSh7IG5hbWU6ICdkdCcgfSlcclxuZXhwb3J0IGNsYXNzIEFYRGF0ZVRpbWVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55LCBmb3JtYXQ/OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IGRhdGU6IEFYRGF0ZVRpbWUgPSBBWERhdGVUaW1lLmNvbnZlcnQodmFsdWUpO1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFmb3JtYXQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGRhdGUudG9TdHJpbmcoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBkYXRlLmZvcm1hdChmb3JtYXQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class AXHtmlToTextPipe {
|
|
4
|
-
transform(value) {
|
|
5
|
-
if (value) {
|
|
6
|
-
const regexHtml = /<\/?[^>]+>/gi;
|
|
7
|
-
const regexNbsp = / /gi;
|
|
8
|
-
const regexAmp = /&/gi;
|
|
9
|
-
return value
|
|
10
|
-
.replace(regexHtml, '')
|
|
11
|
-
.replace(regexNbsp, '')
|
|
12
|
-
.replace(regexAmp, '');
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
return '';
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
AXHtmlToTextPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXHtmlToTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
20
|
-
AXHtmlToTextPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXHtmlToTextPipe, name: "html2text" });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXHtmlToTextPipe, decorators: [{
|
|
22
|
-
type: Pipe,
|
|
23
|
-
args: [{ name: 'html2text' }]
|
|
24
|
-
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbFRvVGV4dC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi9waXBlL2h0bWxUb1RleHQucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixTQUFTLENBQUMsS0FBYTtRQUNyQixJQUFJLEtBQUssRUFBRTtZQUNULE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQztZQUNqQyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUM7WUFDN0IsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDO1lBQzNCLE9BQU8sS0FBSztpQkFDVCxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztpQkFDdEIsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7aUJBQ3RCLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDMUI7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDOzs4R0FiVSxnQkFBZ0I7NEdBQWhCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQUQ1QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHsgbmFtZTogJ2h0bWwydGV4dCcgfSlcclxuZXhwb3J0IGNsYXNzIEFYSHRtbFRvVGV4dFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IHJlZ2V4SHRtbCA9IC88XFwvP1tePl0rPi9naTtcclxuICAgICAgY29uc3QgcmVnZXhOYnNwID0gLyZuYnNwOy9naTtcclxuICAgICAgY29uc3QgcmVnZXhBbXAgPSAvJmFtcDsvZ2k7XHJcbiAgICAgIHJldHVybiB2YWx1ZVxyXG4gICAgICAgIC5yZXBsYWNlKHJlZ2V4SHRtbCwgJycpXHJcbiAgICAgICAgLnJlcGxhY2UocmVnZXhOYnNwLCAnJylcclxuICAgICAgICAucmVwbGFjZShyZWdleEFtcCwgJycpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './platform.service';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3BsYXRmb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BsYXRmb3JtLnNlcnZpY2UnOyJdfQ==
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { fromEvent, Subject } from "rxjs";
|
|
3
|
-
import { debounceTime, distinctUntilChanged } from "rxjs/operators";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
const isChrome = (win) => testUserAgent(win, /Chrome/i);
|
|
6
|
-
const isFirefox = (win) => testUserAgent(win, /Firefox/i);
|
|
7
|
-
const isEdge = (win) => testUserAgent(win, /Edge/i);
|
|
8
|
-
const isSafari = (win) => testUserAgent(win, /Safari/i);
|
|
9
|
-
const isOpera = (win) => testUserAgent(win, /Opera/i) || testUserAgent(win, /OPR/i);
|
|
10
|
-
const isMSIE = (win) => testUserAgent(win, /MSIE/i) || testUserAgent(win, /Trident/i);
|
|
11
|
-
const isMobileWeb = (win) => isMobile(win) && !isHybrid(win);
|
|
12
|
-
const isIpad = (win) => {
|
|
13
|
-
// iOS 12 and below
|
|
14
|
-
if (testUserAgent(win, /iPad/i)) {
|
|
15
|
-
return true;
|
|
16
|
-
}
|
|
17
|
-
// iOS 13+
|
|
18
|
-
if (testUserAgent(win, /Macintosh/i) && isMobile(win)) {
|
|
19
|
-
return true;
|
|
20
|
-
}
|
|
21
|
-
return false;
|
|
22
|
-
};
|
|
23
|
-
const isIphone = (win) => testUserAgent(win, /iPhone/i);
|
|
24
|
-
const isIOS = (win) => testUserAgent(win, /iPhone|iPod/i) || isIpad(win);
|
|
25
|
-
const isAndroid = (win) => testUserAgent(win, /android|sink/i);
|
|
26
|
-
const isAndroidTablet = (win) => {
|
|
27
|
-
return isAndroid(win) && !testUserAgent(win, /mobile/i);
|
|
28
|
-
};
|
|
29
|
-
const isPhablet = (win) => {
|
|
30
|
-
const width = win.innerWidth;
|
|
31
|
-
const height = win.innerHeight;
|
|
32
|
-
const smallest = Math.min(width, height);
|
|
33
|
-
const largest = Math.max(width, height);
|
|
34
|
-
return (smallest > 390 && smallest < 520) &&
|
|
35
|
-
(largest > 620 && largest < 800);
|
|
36
|
-
};
|
|
37
|
-
const isTablet = (win) => {
|
|
38
|
-
const width = win.innerWidth;
|
|
39
|
-
const height = win.innerHeight;
|
|
40
|
-
const smallest = Math.min(width, height);
|
|
41
|
-
const largest = Math.max(width, height);
|
|
42
|
-
return (isIpad(win) ||
|
|
43
|
-
isAndroidTablet(win) ||
|
|
44
|
-
((smallest > 460 && smallest < 820) &&
|
|
45
|
-
(largest > 780 && largest < 1400)));
|
|
46
|
-
};
|
|
47
|
-
const isMobile = (win) => matchMedia(win, '(any-pointer:coarse)');
|
|
48
|
-
const isDesktop = (win) => !isMobile(win);
|
|
49
|
-
const isHybrid = (win) => isCordova(win) || isCapacitorNative(win);
|
|
50
|
-
const isCordova = (win) => !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);
|
|
51
|
-
const isCapacitorNative = (win) => {
|
|
52
|
-
const capacitor = win['Capacitor'];
|
|
53
|
-
return !!(capacitor && capacitor.isNative);
|
|
54
|
-
};
|
|
55
|
-
const isElectron = (win) => testUserAgent(win, /electron/i);
|
|
56
|
-
const isPWA = (win) => !!(win.matchMedia('(display-mode: standalone)').matches || win.navigator.standalone);
|
|
57
|
-
export const testUserAgent = (win, expr) => expr.test(win.navigator.userAgent);
|
|
58
|
-
const matchMedia = (win, query) => win.matchMedia(query).matches;
|
|
59
|
-
const PLATFORMS_MAP = {
|
|
60
|
-
'Android': isAndroid,
|
|
61
|
-
'iOS': isIOS,
|
|
62
|
-
'Desktop': isDesktop,
|
|
63
|
-
'Mobile': isMobile,
|
|
64
|
-
'Chrome': isChrome,
|
|
65
|
-
'Firefox': isFirefox,
|
|
66
|
-
'Safari': isSafari,
|
|
67
|
-
'Edge': isEdge,
|
|
68
|
-
'Opera': isOpera,
|
|
69
|
-
'Hybrid': isHybrid,
|
|
70
|
-
'PWA': isPWA,
|
|
71
|
-
'Electron': isElectron,
|
|
72
|
-
};
|
|
73
|
-
export class AXPlatformEvent {
|
|
74
|
-
}
|
|
75
|
-
export class AXPlatform {
|
|
76
|
-
constructor() {
|
|
77
|
-
this.resize = new Subject();
|
|
78
|
-
this.click = new Subject();
|
|
79
|
-
this.scroll = new Subject();
|
|
80
|
-
fromEvent(window, 'resize')
|
|
81
|
-
.pipe(debounceTime(100))
|
|
82
|
-
.pipe(distinctUntilChanged())
|
|
83
|
-
.subscribe((e) => {
|
|
84
|
-
this.resize.next({
|
|
85
|
-
nativeEvent: e,
|
|
86
|
-
source: this
|
|
87
|
-
});
|
|
88
|
-
//
|
|
89
|
-
this._setFullHeightRatio();
|
|
90
|
-
});
|
|
91
|
-
document.addEventListener('click', (e) => {
|
|
92
|
-
this.click.next({
|
|
93
|
-
nativeEvent: e,
|
|
94
|
-
source: this
|
|
95
|
-
});
|
|
96
|
-
}, true);
|
|
97
|
-
document.addEventListener('scroll', (e) => {
|
|
98
|
-
this.scroll.next({
|
|
99
|
-
nativeEvent: e,
|
|
100
|
-
source: this
|
|
101
|
-
});
|
|
102
|
-
}, true);
|
|
103
|
-
// init functions
|
|
104
|
-
this._setFullHeightRatio();
|
|
105
|
-
}
|
|
106
|
-
isRtl() {
|
|
107
|
-
return document.dir == 'rtl' || document.body.dir == 'rtl' || document.body.style.direction == 'rtl';
|
|
108
|
-
}
|
|
109
|
-
isLandscape() {
|
|
110
|
-
return window.innerHeight < window.innerWidth;
|
|
111
|
-
}
|
|
112
|
-
isPortrate() {
|
|
113
|
-
return !this.isLandscape();
|
|
114
|
-
}
|
|
115
|
-
is(name) {
|
|
116
|
-
return PLATFORMS_MAP[name](window) || false;
|
|
117
|
-
}
|
|
118
|
-
switchDarkMode() {
|
|
119
|
-
const _html = document.getElementsByTagName("html")[0];
|
|
120
|
-
_html.classList.add('ax-dark');
|
|
121
|
-
}
|
|
122
|
-
switchLightMode() {
|
|
123
|
-
const _html = document.getElementsByTagName("html")[0];
|
|
124
|
-
_html.classList.remove('ax-dark');
|
|
125
|
-
}
|
|
126
|
-
_setFullHeightRatio() {
|
|
127
|
-
document.querySelector(':root').style.setProperty('--ax-vh', window.innerHeight / 100 + 'px');
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
AXPlatform.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXPlatform, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
131
|
-
AXPlatform.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXPlatform, providedIn: 'platform' });
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXPlatform, decorators: [{
|
|
133
|
-
type: Injectable,
|
|
134
|
-
args: [{
|
|
135
|
-
providedIn: 'platform',
|
|
136
|
-
}]
|
|
137
|
-
}], ctorParameters: function () { return []; } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGZvcm0uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvcGxhdGZvcm0vcGxhdGZvcm0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBUSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFVcEUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFXLEVBQVcsRUFBRSxDQUN0QyxhQUFhLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBRWxDLE1BQU0sU0FBUyxHQUFHLENBQUMsR0FBVyxFQUFXLEVBQUUsQ0FDdkMsYUFBYSxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUVuQyxNQUFNLE1BQU0sR0FBRyxDQUFDLEdBQVcsRUFBVyxFQUFFLENBQ3BDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFaEMsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFXLEVBQVcsRUFBRSxDQUN0QyxhQUFhLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBRWxDLE1BQU0sT0FBTyxHQUFHLENBQUMsR0FBVyxFQUFXLEVBQUUsQ0FDckMsYUFBYSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsSUFBSSxhQUFhLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBRS9ELE1BQU0sTUFBTSxHQUFHLENBQUMsR0FBVyxFQUFXLEVBQUUsQ0FDcEMsYUFBYSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsSUFBSSxhQUFhLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBR2xFLE1BQU0sV0FBVyxHQUFH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QUFXLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxXQUFXLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQy9HLENBQUM7O3dHQXBDUSxVQUFVOzRHQUFWLFVBQVUsY0FGUCxVQUFVOzRGQUViLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLFVBQVU7aUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IGZyb20sIGZyb21FdmVudCwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcblxyXG5leHBvcnQgdHlwZSBBWFBsYXRmb3JtcyA9ICdBbmRyb2lkJyB8ICdEZXNrdG9wJyB8ICdpT1MnIHwgJ01vYmlsZSc7XHJcbmV4cG9ydCB0eXBlIEFYQnJvd3NlcnMgPSAnQ2hyb21lJyB8ICdTYWZhcmknIHwgJ0VkZ2UnIHwgJ0ZpcmVmb3gnIHwgJ09wZXJhJyB8ICdNU0lFJztcclxuZXhwb3J0IHR5cGUgQVhUZWNobm9sb2dpZXMgPSAnUFdBJyB8ICdIeWJyaWQnIHwgJ0VsZWN0cm9uJztcclxuXHJcblxyXG5cclxuXHJcbmNvbnN0IGlzQ2hyb21lID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgdGVzdFVzZXJBZ2VudCh3aW4sIC9DaHJvbWUvaSk7XHJcblxyXG5jb25zdCBpc0ZpcmVmb3ggPSAod2luOiBXaW5kb3cpOiBib29sZWFuID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL0ZpcmVmb3gvaSk7XHJcblxyXG5jb25zdCBpc0VkZ2UgPSAod2luOiBXaW5kb3cpOiBib29sZWFuID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL0VkZ2UvaSk7XHJcblxyXG5jb25zdCBpc1NhZmFyaSA9ICh3aW46IFdpbmRvdyk6IGJvb2xlYW4gPT5cclxuICAgIHRlc3RVc2VyQWdlbnQod2luLCAvU2FmYXJpL2kpO1xyXG5cclxuY29uc3QgaXNPcGVyYSA9ICh3aW46IFdpbmRvdyk6IGJvb2xlYW4gPT5cclxuICAgIHRlc3RVc2VyQWdlbnQod2luLCAvT3BlcmEvaSkgfHwgdGVzdFVzZXJBZ2VudCh3aW4sIC9PUFIvaSk7XHJcblxyXG5jb25zdCBpc01TSUUgPSAod2luOiBXaW5kb3cpOiBib29sZWFuID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL01TSUUvaSkgfHwgdGVzdFVzZXJBZ2VudCh3aW4sIC9UcmlkZW50L2kpO1xyXG5cclxuXHJcbmNvbnN0IGlzTW9iaWxlV2ViID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgaXNNb2JpbGUod2luKSAmJiAhaXNIeWJyaWQod2luKTtcclxuXHJcbmNvbnN0IGlzSXBhZCA9ICh3aW46IFdpbmRvdykgPT4ge1xyXG4gICAgLy8gaU9TIDEyIGFuZCBiZWxvd1xyXG4gICAgaWYgKHRlc3RVc2VyQWdlbnQod2luLCAvaVBhZC9pKSkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGlPUyAxMytcclxuICAgIGlmICh0ZXN0VXNlckFnZW50KHdpbiwgL01hY2ludG9zaC9pKSAmJiBpc01vYmlsZSh3aW4pKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG59O1xyXG5cclxuY29uc3QgaXNJcGhvbmUgPSAod2luOiBXaW5kb3cpID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL2lQaG9uZS9pKTtcclxuXHJcbmNvbnN0IGlzSU9TID0gKHdpbjogV2luZG93KSA9PlxyXG4gICAgdGVzdFVzZXJBZ2VudCh3aW4sIC9pUGhvbmV8aVBvZC9pKSB8fCBpc0lwYWQod2luKTtcclxuXHJcbmNvbnN0IGlzQW5kcm9pZCA9ICh3aW46IFdpbmRvdykgPT5cclxuICAgIHRlc3RVc2VyQWdlbnQod2luLCAvYW5kcm9pZHxzaW5rL2kpO1xyXG5cclxuY29uc3QgaXNBbmRyb2lkVGFibGV0ID0gKHdpbjogV2luZG93KSA9PiB7XHJcbiAgICByZXR1cm4gaXNBbmRyb2lkKHdpbikgJiYgIXRlc3RVc2VyQWdlbnQod2luLCAvbW9iaWxlL2kpO1xyXG59O1xyXG5cclxuY29uc3QgaXNQaGFibGV0ID0gKHdpbjogV2luZG93KSA9PiB7XHJcbiAgICBjb25zdCB3aWR0aCA9IHdpbi5pbm5lcldpZHRoO1xyXG4gICAgY29uc3QgaGVpZ2h0ID0gd2luLmlubmVySGVpZ2h0O1xyXG4gICAgY29uc3Qgc21hbGxlc3QgPSBNYXRoLm1pbih3aWR0aCwgaGVpZ2h0KTtcclxuICAgIGNvbnN0IGxhcmdlc3QgPSBNYXRoLm1heCh3aWR0aCwgaGVpZ2h0KTtcclxuXHJcbiAgICByZXR1cm4gKHNtYWxsZXN0ID4gMzkwICYmIHNtYWxsZXN0IDwgNTIwKSAmJlxyXG4gICAgICAgIChsYXJnZXN0ID4gNjIwICYmIGxhcmdlc3QgPCA4MDApO1xyXG59O1xyXG5cclxuY29uc3QgaXNUYWJsZXQgPSAod2luOiBXaW5kb3cpID0+IHtcclxuICAgIGNvbnN0IHdpZHRoID0gd2luLmlubmVyV2lkdGg7XHJcbiAgICBjb25zdCBoZWlnaHQgPSB3aW4uaW5uZXJIZWlnaHQ7XHJcbiAgICBjb25zdCBzbWFsbGVzdCA9IE1hdGgubWluKHdpZHRoLCBoZWlnaHQpO1xyXG4gICAgY29uc3QgbGFyZ2VzdCA9IE1hdGgubWF4KHdpZHRoLCBoZWlnaHQpO1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgaXNJcGFkKHdpbikgfHxcclxuICAgICAgICBpc0FuZHJvaWRUYWJsZXQod2luKSB8fFxyXG4gICAgICAgIChcclxuICAgICAgICAgICAgKHNtYWxsZXN0ID4gNDYwICYmIHNtYWxsZXN0IDwgODIwKSAmJlxyXG4gICAgICAgICAgICAobGFyZ2VzdCA+IDc4MCAmJiBsYXJnZXN0IDwgMTQwMClcclxuICAgICAgICApXHJcbiAgICApO1xyXG59O1xyXG5cclxuY29uc3QgaXNNb2JpbGUgPSAod2luOiBXaW5kb3cpID0+XHJcbiAgICBtYXRjaE1lZGlhKHdpbiwgJyhhbnktcG9pbnRlcjpjb2Fyc2UpJyk7XHJcblxyXG5jb25zdCBpc0Rlc2t0b3AgPSAod2luOiBXaW5kb3cpID0+XHJcbiAgICAhaXNNb2JpbGUod2luKTtcclxuXHJcbmNvbnN0IGlzSHlicmlkID0gKHdpbjogV2luZG93KSA9PlxyXG4gICAgaXNDb3Jkb3ZhKHdpbikgfHwgaXNDYXBhY2l0b3JOYXRpdmUod2luKTtcclxuXHJcbmNvbnN0IGlzQ29yZG92YSA9ICh3aW46IGFueSk6IGJvb2xlYW4gPT5cclxuICAgICEhKHdpblsnY29yZG92YSddIHx8IHdpblsncGhvbmVnYXAnXSB8fCB3aW5bJ1Bob25lR2FwJ10pO1xyXG5cclxuY29uc3QgaXNDYXBhY2l0b3JOYXRpdmUgPSAod2luOiBhbnkpOiBib29sZWFuID0+IHtcclxuICAgIGNvbnN0IGNhcGFjaXRvciA9IHdpblsnQ2FwYWNpdG9yJ107XHJcbiAgICByZXR1cm4gISEoY2FwYWNpdG9yICYmIGNhcGFjaXRvci5pc05hdGl2ZSk7XHJcbn07XHJcblxyXG5jb25zdCBpc0VsZWN0cm9uID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgdGVzdFVzZXJBZ2VudCh3aW4sIC9lbGVjdHJvbi9pKTtcclxuXHJcbmNvbnN0IGlzUFdBID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgISEod2luLm1hdGNoTWVkaWEoJyhkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpJykubWF0Y2hlcyB8fCAod2luLm5hdmlnYXRvciBhcyBhbnkpLnN0YW5kYWxvbmUpO1xyXG5cclxuZXhwb3J0IGNvbnN0IHRlc3RVc2VyQWdlbnQgPSAod2luOiBXaW5kb3csIGV4cHI6IFJlZ0V4cCkgPT5cclxuICAgIGV4cHIudGVzdCh3aW4ubmF2aWdhdG9yLnVzZXJBZ2VudCk7XHJcblxyXG5jb25zdCBtYXRjaE1lZGlhID0gKHdpbjogV2luZG93LCBxdWVyeTogc3RyaW5nKTogYm9vbGVhbiA9PlxyXG4gICAgd2luLm1hdGNoTWVkaWEocXVlcnkpLm1hdGNoZXM7XHJcblxyXG5cclxuY29uc3QgUExBVEZPUk1TX01BUCA9IHtcclxuICAgICdBbmRyb2lkJzogaXNBbmRyb2lkLFxyXG4gICAgJ2lPUyc6IGlzSU9TLFxyXG4gICAgJ0Rlc2t0b3AnOiBpc0Rlc2t0b3AsXHJcbiAgICAnTW9iaWxlJzogaXNNb2JpbGUsXHJcbiAgICAnQ2hyb21lJzogaXNDaHJvbWUsXHJcbiAgICAnRmlyZWZveCc6IGlzRmlyZWZveCxcclxuICAgICdTYWZhcmknOiBpc1NhZmFyaSxcclxuICAgICdFZGdlJzogaXNFZGdlLFxyXG4gICAgJ09wZXJhJzogaXNPcGVyYSxcclxuICAgICdIeWJyaWQnOiBpc0h5YnJpZCxcclxuICAgICdQV0EnOiBpc1BXQSxcclxuICAgICdFbGVjdHJvbic6IGlzRWxlY3Ryb24sXHJcbn07XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFYUGxhdGZvcm1FdmVudCB7XHJcbiAgICBuYXRpdmVFdmVudDogVUlFdmVudCB8IEV2ZW50O1xyXG4gICAgc291cmNlOiBBWFBsYXRmb3JtXHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdwbGF0Zm9ybScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBsYXRmb3JtIHtcclxuICAgIHJlc2l6ZTogU3ViamVjdDxBWFBsYXRmb3JtRXZlbnQ+ID0gbmV3IFN1YmplY3Q8QVhQbGF0Zm9ybUV2ZW50PigpO1xyXG4gICAgY2xpY2s6IFN1YmplY3Q8QVhQbGF0Zm9ybUV2ZW50PiA9IG5ldyBTdWJqZWN0PEFYUGxhdGZvcm1FdmVudD4oKVxyXG4gICAgc2Nyb2xsOiBTdWJqZWN0PEFYUGxhdGZvcm1FdmVudD4gPSBuZXcgU3ViamVjdDxBWFBsYXRmb3JtRXZlbnQ+KClcclxuXHJcbiAgICBpc1J0bCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZG9jdW1lbnQuZGlyID09ICdydGwnIHx8IGRvY3VtZW50LmJvZHkuZGlyID09ICdydGwnIHx8IGRvY3VtZW50LmJvZHkuc3R5bGUuZGlyZWN0aW9uID09ICdydGwnO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBpc0xhbmRzY2FwZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IDwgd2luZG93LmlubmVyV2lkdGg7XHJcbiAgICB9XHJcblxyXG4gICAgaXNQb3J0cmF0ZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuaXNMYW5kc2NhcGUoKVxyXG4gICAgfVxyXG5cclxuICAgIGlzKG5hbWU6IEFYUGxhdGZvcm1zIHwgQVhCcm93c2VycyB8IEFYVGVjaG5vbG9naWVzKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIFBMQVRGT1JNU19NQVBbbmFtZV0od2luZG93KSB8fCBmYWxzZTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3dpdGNoRGFya01vZGUoKSB7XHJcbiAgICAgICAgY29uc3QgX2h0bWwgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcImh0bWxcIilbMF07XHJcbiAgICAgICAgX2h0bWwuY2xhc3NMaXN0LmFkZCgnYXgtZGFyaycpXHJcblxyXG4gICAgfVxyXG5cclxuICAgIHN3aXRjaExpZ2h0TW9kZSgpIHtcclxuICAgICAgICBjb25zdCBfaHRtbCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiaHRtbFwiKVswXTtcclxuICAgICAgICBfaHRtbC5jbGFzc0xpc3QucmVtb3ZlKCdheC1kYXJrJylcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zZXRGdWxsSGVpZ2h0UmF0aW8oKSB7XHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oJzpyb290Jykuc3R5bGUuc2V0UHJvcGVydHkoJy0tYXgtdmgnLCB3aW5kb3cuaW5uZXJIZWlnaHQgLyAxMDAgKyAncHgnKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuXHJcbiAgICAgICAgZnJvbUV2ZW50PFVJRXZlbnQ+KHdpbmRvdywgJ3Jlc2l6ZScpXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDApKVxyXG4gICAgICAgICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2l6ZS5uZXh0KHtcclxuICAgICAgICAgICAgICAgICAgICBuYXRpdmVFdmVudDogZSxcclxuICAgICAgICAgICAgICAgICAgICBzb3VyY2U6IHRoaXNcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgLy9cclxuICAgICAgICAgICAgICAgIHRoaXMuX3NldEZ1bGxIZWlnaHRSYXRpbygpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcblxyXG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jbGljay5uZXh0KHtcclxuICAgICAgICAgICAgICAgIG5hdGl2ZUV2ZW50OiBlLFxyXG4gICAgICAgICAgICAgICAgc291cmNlOiB0aGlzXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sIHRydWUpXHJcblxyXG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIChlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgbmF0aXZlRXZlbnQ6IGUsXHJcbiAgICAgICAgICAgICAgICBzb3VyY2U6IHRoaXNcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSwgdHJ1ZSk7XHJcbiAgICAgICAgLy8gaW5pdCBmdW5jdGlvbnNcclxuICAgICAgICB0aGlzLl9zZXRGdWxsSGVpZ2h0UmF0aW8oKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Subject } from 'rxjs';
|
|
2
|
-
import { getPropByPath, setPropByPath } from '../utils/object/object-util';
|
|
3
|
-
// @dynamic
|
|
4
|
-
export class AXConfig {
|
|
5
|
-
static get onChange() {
|
|
6
|
-
return AXConfig.dataChangeSubject.asObservable();
|
|
7
|
-
}
|
|
8
|
-
static set(arg1, arg2) {
|
|
9
|
-
if (arg1 && typeof arg1 == 'string') {
|
|
10
|
-
setPropByPath(AXConfig.dataModel, arg1, arg2);
|
|
11
|
-
AXConfig.dataChangeSubject.next(AXConfig.dataModel);
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
if (arg1 && typeof arg1 == 'object') {
|
|
15
|
-
Object.assign(AXConfig.dataModel, arg1);
|
|
16
|
-
AXConfig.dataChangeSubject.next(AXConfig.dataModel);
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
if (!arg1 && !arg2) {
|
|
20
|
-
return AXConfig.dataChangeSubject.asObservable();
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
static get(path) {
|
|
24
|
-
return getPropByPath(AXConfig.dataModel, path);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
AXConfig.dataModel = {};
|
|
28
|
-
AXConfig.dataChangeSubject = new Subject();
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTNFLFdBQVc7QUFDWCxNQUFNLE9BQU8sUUFBUTtJQUtqQixNQUFNLEtBQUssUUFBUTtRQUNmLE9BQU8sUUFBUSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFJRCxNQUFNLENBQUMsR0FBRyxDQUFDLElBQVUsRUFBRSxJQUFVO1FBRTdCLElBQUksSUFBSSxJQUFJLE9BQU8sSUFBSSxJQUFJLFFBQVEsRUFBRTtZQUNqQyxhQUFhLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDOUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDcEQsT0FBTztTQUNWO1FBQ0QsSUFBSSxJQUFJLElBQUksT0FBTyxJQUFJLElBQUksUUFBUSxFQUFFO1lBQ2pDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN4QyxRQUFRLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwRCxPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2hCLE9BQU8sUUFBUSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3BEO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWTtRQUNuQixPQUFPLGFBQWEsQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ25ELENBQUM7O0FBN0JjLGtCQUFTLEdBQVEsRUFBRSxDQUFDO0FBQ3BCLDBCQUFpQixHQUFHLElBQUksT0FBTyxFQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGdldFByb3BCeVBhdGgsIHNldFByb3BCeVBhdGggfSBmcm9tICcuLi91dGlscy9vYmplY3Qvb2JqZWN0LXV0aWwnO1xyXG5cclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIEFYQ29uZmlnIHtcclxuICAgIHByaXZhdGUgc3RhdGljIGRhdGFNb2RlbDogYW55ID0ge307XHJcbiAgICBwcml2YXRlIHN0YXRpYyBkYXRhQ2hhbmdlU3ViamVjdCA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcblxyXG4gICAgc3RhdGljIGdldCBvbkNoYW5nZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBBWENvbmZpZy5kYXRhQ2hhbmdlU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgc2V0KGNvbmZpZzogYW55KTogYW55O1xyXG4gICAgc3RhdGljIHNldChwYXRoOiBzdHJpbmcsIHZhbHVlPzogYW55KTogdm9pZDtcclxuICAgIHN0YXRpYyBzZXQoYXJnMT86IGFueSwgYXJnMj86IGFueSkge1xyXG5cclxuICAgICAgICBpZiAoYXJnMSAmJiB0eXBlb2YgYXJnMSA9PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICBzZXRQcm9wQnlQYXRoKEFYQ29uZmlnLmRhdGFNb2RlbCwgYXJnMSwgYXJnMik7XHJcbiAgICAgICAgICAgIEFYQ29uZmlnLmRhdGFDaGFuZ2VTdWJqZWN0Lm5leHQoQVhDb25maWcuZGF0YU1vZGVsKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoYXJnMSAmJiB0eXBlb2YgYXJnMSA9PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgICBPYmplY3QuYXNzaWduKEFYQ29uZmlnLmRhdGFNb2RlbCwgYXJnMSk7XHJcbiAgICAgICAgICAgIEFYQ29uZmlnLmRhdGFDaGFuZ2VTdWJqZWN0Lm5leHQoQVhDb25maWcuZGF0YU1vZGVsKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIWFyZzEgJiYgIWFyZzIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIEFYQ29uZmlnLmRhdGFDaGFuZ2VTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZ2V0KHBhdGg6IHN0cmluZyk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGdldFByb3BCeVBhdGgoQVhDb25maWcuZGF0YU1vZGVsLCBwYXRoKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class AXEventService {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.list = [];
|
|
6
|
-
}
|
|
7
|
-
broadcast(key, options) {
|
|
8
|
-
const d = this.list.find(c => c.key === key);
|
|
9
|
-
if (d) {
|
|
10
|
-
d.events.forEach(c => {
|
|
11
|
-
c(options);
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
on(key, callback) {
|
|
16
|
-
let d = this.list.find(c => c.key === key);
|
|
17
|
-
if (!d) {
|
|
18
|
-
d = { key, events: [] };
|
|
19
|
-
this.list.push(d);
|
|
20
|
-
}
|
|
21
|
-
d.events.push(callback);
|
|
22
|
-
}
|
|
23
|
-
destroy(key, callback) {
|
|
24
|
-
const d = this.list.find(c => c.key === key);
|
|
25
|
-
if (d) {
|
|
26
|
-
d.events = [];
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
AXEventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
-
AXEventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXEventService, providedIn: 'root' });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXEventService, decorators: [{
|
|
33
|
-
type: Injectable,
|
|
34
|
-
args: [{ providedIn: 'root' }]
|
|
35
|
-
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvc2VydmljZXMvZXZlbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUczQyxNQUFNLE9BQU8sY0FBYztJQUQzQjtRQUVZLFNBQUksR0FBVSxFQUFFLENBQUM7S0EwQjVCO0lBeEJVLFNBQVMsQ0FBQyxHQUFXLEVBQUUsT0FBYTtRQUN2QyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLEVBQUU7WUFDSCxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDakIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2YsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFTSxFQUFFLENBQUMsR0FBVyxFQUFFLFFBQWlDO1FBQ3BELElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ0osQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyQjtRQUNELENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFTSxPQUFPLENBQUMsR0FBVyxFQUFFLFFBQWlDO1FBQ3pELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsRUFBRTtZQUNILENBQUMsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO0lBQ0wsQ0FBQzs7NEdBMUJRLGNBQWM7Z0hBQWQsY0FBYyxjQURELE1BQU07NEZBQ25CLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEFYRXZlbnRTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgbGlzdDogYW55W10gPSBbXTtcclxuXHJcbiAgICBwdWJsaWMgYnJvYWRjYXN0KGtleTogc3RyaW5nLCBvcHRpb25zPzogYW55KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZCA9IHRoaXMubGlzdC5maW5kKGMgPT4gYy5rZXkgPT09IGtleSk7XHJcbiAgICAgICAgaWYgKGQpIHtcclxuICAgICAgICAgICAgZC5ldmVudHMuZm9yRWFjaChjID0+IHtcclxuICAgICAgICAgICAgICAgIGMob3B0aW9ucyk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgb24oa2V5OiBzdHJpbmcsIGNhbGxiYWNrOiAob3B0aW9ucz86IGFueSkgPT4gdm9pZCkge1xyXG4gICAgICAgIGxldCBkID0gdGhpcy5saXN0LmZpbmQoYyA9PiBjLmtleSA9PT0ga2V5KTtcclxuICAgICAgICBpZiAoIWQpIHtcclxuICAgICAgICAgICAgZCA9IHsga2V5LCBldmVudHM6IFtdIH07XHJcbiAgICAgICAgICAgIHRoaXMubGlzdC5wdXNoKGQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBkLmV2ZW50cy5wdXNoKGNhbGxiYWNrKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZGVzdHJveShrZXk6IHN0cmluZywgY2FsbGJhY2s6IChvcHRpb25zPzogYW55KSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgZCA9IHRoaXMubGlzdC5maW5kKGMgPT4gYy5rZXkgPT09IGtleSk7XHJcbiAgICAgICAgaWYgKGQpIHtcclxuICAgICAgICAgICAgZC5ldmVudHMgPSBbXTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class AXNavigator {
|
|
4
|
-
}
|
|
5
|
-
AXNavigator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXNavigator, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
6
|
-
AXNavigator.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXNavigator });
|
|
7
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXNavigator, decorators: [{
|
|
8
|
-
type: Injectable
|
|
9
|
-
}] });
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdG9yLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3NlcnZpY2VzL25hdmlnYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSTNDLE1BQU0sT0FBZ0IsV0FBVzs7eUdBQVgsV0FBVzs2R0FBWCxXQUFXOzRGQUFYLFdBQVc7a0JBRGhDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYTmF2aWdhdG9yUGFyYW0gfSBmcm9tICcuLi9jbGFzc2VzL25hdmlnYXRvci5jbGFzcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBWE5hdmlnYXRvciB7XHJcbiAgICBhYnN0cmFjdCBuYXZpZ2F0ZShwYXJhbXM6IEFYTmF2aWdhdG9yUGFyYW0pO1xyXG4gICAgYWJzdHJhY3QgcG9wdXAocGFyYW1zOiBBWE5hdmlnYXRvclBhcmFtKTtcclxufSJdfQ==
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class AXStorageService {
|
|
4
|
-
get(key) {
|
|
5
|
-
return localStorage.getItem(key);
|
|
6
|
-
}
|
|
7
|
-
set(key, value) {
|
|
8
|
-
localStorage.setItem(key, value);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
AXStorageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12
|
-
AXStorageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXStorageService });
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXStorageService, decorators: [{
|
|
14
|
-
type: Injectable
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi9zZXJ2aWNlcy9zdG9yYWdlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUMxQixHQUFHLENBQUMsR0FBVztRQUNaLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQVEsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsR0FBRyxDQUFDLEdBQVcsRUFBRSxLQUFVO1FBQ3hCLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQWUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7OzhHQU5TLGdCQUFnQjtrSEFBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBWFN0b3JhZ2VTZXJ2aWNlIHtcclxuICAgZ2V0KGtleTogc3RyaW5nKTogYW55IHtcclxuICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSkgYXMgYW55O1xyXG4gICB9XHJcbiAgIHNldChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlIGFzIHN0cmluZyk7XHJcbiAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Subject } from 'rxjs';
|
|
2
|
-
import { getPropByPath } from '../utils/object/object-util';
|
|
3
|
-
import merge from 'lodash-es/merge';
|
|
4
|
-
// @dynamic
|
|
5
|
-
export class AXTranslator {
|
|
6
|
-
static get onChange() {
|
|
7
|
-
return AXTranslator.dataChangeSubject.asObservable();
|
|
8
|
-
}
|
|
9
|
-
static load(lang, value) {
|
|
10
|
-
if (typeof value === 'object') {
|
|
11
|
-
if (!AXTranslator[`__data__${lang}`]) {
|
|
12
|
-
AXTranslator[`__data__${lang}`] = {};
|
|
13
|
-
}
|
|
14
|
-
AXTranslator[`__data__${lang}`] = merge(AXTranslator[`__data__${lang}`], value);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
static use(lang) {
|
|
18
|
-
AXTranslator.lang = lang;
|
|
19
|
-
}
|
|
20
|
-
static get(key, lang) {
|
|
21
|
-
return getPropByPath(AXTranslator[`__data__${lang || AXTranslator.lang}`], key) || key;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
AXTranslator.lang = 'en';
|
|
25
|
-
AXTranslator.dataChangeSubject = new Subject();
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdHJhbnNsYXRvci90cmFuc2xhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sS0FBSyxNQUFNLGlCQUFpQixDQUFDO0FBRXBDLFdBQVc7QUFDWCxNQUFNLE9BQU8sWUFBWTtJQUtyQixNQUFNLEtBQUssUUFBUTtRQUNmLE9BQU8sWUFBWSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFTSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQVksRUFBRSxLQUFVO1FBQ3ZDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxFQUFFO2dCQUNsQyxZQUFZLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQzthQUN4QztZQUNELFlBQVksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDbkY7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZO1FBQzFCLFlBQVksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQzdCLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQVcsRUFBRSxJQUFhO1FBQ3hDLE9BQU8sYUFBYSxDQUFDLFlBQVksQ0FBQyxXQUFXLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUM7SUFDM0YsQ0FBQzs7QUF2QmMsaUJBQUksR0FBVyxJQUFJLENBQUM7QUFDcEIsOEJBQWlCLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZ2V0UHJvcEJ5UGF0aH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0L29iamVjdC11dGlsJztcclxuaW1wb3J0IG1lcmdlIGZyb20gJ2xvZGFzaC1lcy9tZXJnZSc7XHJcblxyXG4vLyBAZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgQVhUcmFuc2xhdG9yIHtcclxuICAgIHByaXZhdGUgc3RhdGljIGxhbmc6IHN0cmluZyA9ICdlbic7XHJcbiAgICBwcml2YXRlIHN0YXRpYyBkYXRhQ2hhbmdlU3ViamVjdCA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcblxyXG4gICAgc3RhdGljIGdldCBvbkNoYW5nZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBBWFRyYW5zbGF0b3IuZGF0YUNoYW5nZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBsb2FkKGxhbmc6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICAgIGlmICghQVhUcmFuc2xhdG9yW2BfX2RhdGFfXyR7bGFuZ31gXSkge1xyXG4gICAgICAgICAgICAgICAgQVhUcmFuc2xhdG9yW2BfX2RhdGFfXyR7bGFuZ31gXSA9IHt9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEFYVHJhbnNsYXRvcltgX19kYXRhX18ke2xhbmd9YF0gPSBtZXJnZShBWFRyYW5zbGF0b3JbYF9fZGF0YV9fJHtsYW5nfWBdLCB2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgdXNlKGxhbmc6IHN0cmluZykge1xyXG4gICAgICAgIEFYVHJhbnNsYXRvci5sYW5nID0gbGFuZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIGdldChrZXk6IHN0cmluZywgbGFuZz86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIGdldFByb3BCeVBhdGgoQVhUcmFuc2xhdG9yW2BfX2RhdGFfXyR7bGFuZyB8fCBBWFRyYW5zbGF0b3IubGFuZ31gXSwga2V5KSB8fCBrZXk7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { AXTranslatorPipe } from './translator.pipe';
|
|
3
|
-
import * as en from '../locale/en.json';
|
|
4
|
-
import * as fa from '../locale/fa.json';
|
|
5
|
-
import { AXTranslator } from './translator';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class AXTranslatorModule {
|
|
8
|
-
constructor() {
|
|
9
|
-
AXTranslator.load('en', en);
|
|
10
|
-
AXTranslator.load('fa', fa);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
AXTranslatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
|
-
AXTranslatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorModule, declarations: [AXTranslatorPipe], exports: [AXTranslatorPipe] });
|
|
15
|
-
AXTranslatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorModule, providers: [], imports: [[]] });
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorModule, decorators: [{
|
|
17
|
-
type: NgModule,
|
|
18
|
-
args: [{
|
|
19
|
-
imports: [],
|
|
20
|
-
exports: [AXTranslatorPipe],
|
|
21
|
-
declarations: [AXTranslatorPipe],
|
|
22
|
-
providers: [],
|
|
23
|
-
}]
|
|
24
|
-
}], ctorParameters: function () { return []; } });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3RyYW5zbGF0b3IvdHJhbnNsYXRvci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3hDLE9BQU8sS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFTNUMsTUFBTSxPQUFPLGtCQUFrQjtJQUMzQjtRQUNJLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzVCLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7O2dIQUpRLGtCQUFrQjtpSEFBbEIsa0JBQWtCLGlCQUhaLGdCQUFnQixhQURyQixnQkFBZ0I7aUhBSWpCLGtCQUFrQixhQUZoQixFQUFFLFlBSEosRUFBRTs0RkFLRixrQkFBa0I7a0JBTjlCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLEVBQUU7b0JBQ1gsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLFlBQVksRUFBRSxDQUFDLGdCQUFnQixDQUFDO29CQUNoQyxTQUFTLEVBQUUsRUFBRTtpQkFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWFRyYW5zbGF0b3JQaXBlIH0gZnJvbSAnLi90cmFuc2xhdG9yLnBpcGUnO1xyXG5pbXBvcnQgKiBhcyBlbiBmcm9tICcuLi9sb2NhbGUvZW4uanNvbic7XHJcbmltcG9ydCAqIGFzIGZhIGZyb20gJy4uL2xvY2FsZS9mYS5qc29uJztcclxuaW1wb3J0IHsgQVhUcmFuc2xhdG9yIH0gZnJvbSAnLi90cmFuc2xhdG9yJztcclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW10sXHJcbiAgICBleHBvcnRzOiBbQVhUcmFuc2xhdG9yUGlwZV0sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtBWFRyYW5zbGF0b3JQaXBlXSxcclxuICAgIHByb3ZpZGVyczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFRyYW5zbGF0b3JNb2R1bGUge1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgQVhUcmFuc2xhdG9yLmxvYWQoJ2VuJywgZW4pO1xyXG4gICAgICAgIEFYVHJhbnNsYXRvci5sb2FkKCdmYScsIGZhKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { AXTranslator } from './translator';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class AXTranslatorPipe {
|
|
5
|
-
constructor() { }
|
|
6
|
-
// transform(value: string, lang?: string): Promise<string> {
|
|
7
|
-
// return new Promise<string>((resolve, reject) => {
|
|
8
|
-
// if (!value) {
|
|
9
|
-
// resolve(value);
|
|
10
|
-
// }
|
|
11
|
-
// resolve(this.translate.get(value, lang));
|
|
12
|
-
// });
|
|
13
|
-
// }
|
|
14
|
-
transform(value, lang) {
|
|
15
|
-
return AXTranslator.get(value, lang);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
AXTranslatorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
19
|
-
AXTranslatorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorPipe, name: "trans" });
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorPipe, decorators: [{
|
|
21
|
-
type: Pipe,
|
|
22
|
-
args: [{ name: 'trans', pure: true }]
|
|
23
|
-
}], ctorParameters: function () { return []; } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi90cmFuc2xhdG9yL3RyYW5zbGF0b3IucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQUc1QyxNQUFNLE9BQU8sZ0JBQWdCO0lBRXpCLGdCQUFnQixDQUFDO0lBRWpCLDZEQUE2RDtJQUM3RCx3REFBd0Q7SUFDeEQsd0JBQXdCO0lBQ3hCLDhCQUE4QjtJQUM5QixZQUFZO0lBQ1osb0RBQW9EO0lBQ3BELFVBQVU7SUFFVixJQUFJO0lBRUosU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUFhO1FBQ2xDLE9BQU8sWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQzs7OEdBaEJRLGdCQUFnQjs0R0FBaEIsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBRDVCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYVHJhbnNsYXRvciB9IGZyb20gJy4vdHJhbnNsYXRvcic7XHJcblxyXG5AUGlwZSh7IG5hbWU6ICd0cmFucycsIHB1cmU6IHRydWUgfSlcclxuZXhwb3J0IGNsYXNzIEFYVHJhbnNsYXRvclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAgIC8vIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCBsYW5nPzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIC8vICAgICByZXR1cm4gbmV3IFByb21pc2U8c3RyaW5nPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAvLyAgICAgICAgIGlmICghdmFsdWUpIHtcclxuICAgIC8vICAgICAgICAgICAgIHJlc29sdmUodmFsdWUpO1xyXG4gICAgLy8gICAgICAgICB9XHJcbiAgICAvLyAgICAgICAgIHJlc29sdmUodGhpcy50cmFuc2xhdGUuZ2V0KHZhbHVlLCBsYW5nKSk7XHJcbiAgICAvLyAgICAgfSk7XHJcblxyXG4gICAgLy8gfVxyXG5cclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCBsYW5nPzogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gQVhUcmFuc2xhdG9yLmdldCh2YWx1ZSwgbGFuZyk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { AXTranslator } from './translator';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class AXTranslatorService {
|
|
5
|
-
load(lang, value) {
|
|
6
|
-
AXTranslator.load(lang, value);
|
|
7
|
-
}
|
|
8
|
-
use(lang) {
|
|
9
|
-
AXTranslator.use(lang);
|
|
10
|
-
}
|
|
11
|
-
get(key, lang) {
|
|
12
|
-
return AXTranslator.get(lang, lang);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
AXTranslatorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
16
|
-
AXTranslatorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorService, providedIn: 'platform' });
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: AXTranslatorService, decorators: [{
|
|
18
|
-
type: Injectable,
|
|
19
|
-
args: [{ providedIn: 'platform' }]
|
|
20
|
-
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi90cmFuc2xhdG9yL3RyYW5zbGF0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBRzVDLE1BQU0sT0FBTyxtQkFBbUI7SUFFckIsSUFBSSxDQUFDLElBQVksRUFBRSxLQUFVO1FBQ2hDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTSxHQUFHLENBQUMsSUFBWTtRQUNuQixZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTSxHQUFHLENBQUMsR0FBVyxFQUFFLElBQWE7UUFDakMsT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4QyxDQUFDOztpSEFaUSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUROLFVBQVU7NEZBQ3ZCLG1CQUFtQjtrQkFEL0IsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYVHJhbnNsYXRvciB9IGZyb20gJy4vdHJhbnNsYXRvcic7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdwbGF0Zm9ybScgfSlcclxuZXhwb3J0IGNsYXNzIEFYVHJhbnNsYXRvclNlcnZpY2Uge1xyXG5cclxuICAgIHB1YmxpYyBsb2FkKGxhbmc6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgICAgIEFYVHJhbnNsYXRvci5sb2FkKGxhbmcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgdXNlKGxhbmc6IHN0cmluZykge1xyXG4gICAgICAgIEFYVHJhbnNsYXRvci51c2UobGFuZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldChrZXk6IHN0cmluZywgbGFuZz86IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIEFYVHJhbnNsYXRvci5nZXQobGFuZywgbGFuZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiJdfQ==
|