@acorex/core 5.8.0 → 5.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/config/index.d.ts +5 -0
- package/config/public-api.d.ts +1 -0
- package/{lib/config → config/src}/configs.d.ts +0 -0
- package/dateTime/index.d.ts +5 -0
- package/dateTime/public-api.d.ts +5 -0
- package/{lib/dateTime → dateTime/src}/datetime.class.d.ts +0 -0
- package/{lib/dateTime → dateTime/src}/datetime.module.d.ts +0 -0
- package/{lib/dateTime → dateTime/src}/datetime.pipe.d.ts +0 -0
- package/{lib/dateTime → dateTime/src}/georgian.calendar.d.ts +0 -0
- package/{lib/dateTime → dateTime/src}/jalali.calendar.d.ts +0 -0
- package/esm2020/acorex-core.mjs +1 -1
- package/esm2020/config/acorex-core-config.mjs +5 -0
- package/esm2020/config/public-api.mjs +2 -0
- package/esm2020/config/src/configs.mjs +32 -0
- package/esm2020/dateTime/acorex-core-dateTime.mjs +5 -0
- package/esm2020/dateTime/public-api.mjs +6 -0
- package/esm2020/dateTime/src/datetime.class.mjs +295 -0
- package/esm2020/dateTime/src/datetime.module.mjs +33 -0
- package/esm2020/dateTime/src/datetime.pipe.mjs +26 -0
- package/esm2020/dateTime/src/georgian.calendar.mjs +189 -0
- package/esm2020/dateTime/src/jalali.calendar.mjs +359 -0
- package/esm2020/events/acorex-core-events.mjs +5 -0
- package/esm2020/events/public-api.mjs +2 -0
- package/esm2020/events/src/event.service.mjs +36 -0
- package/esm2020/http/acorex-core-http.mjs +5 -0
- package/esm2020/http/public-api.mjs +6 -0
- package/esm2020/http/src/http-error.class.mjs +2 -0
- package/esm2020/http/src/http-events.interceptor.mjs +3 -0
- package/esm2020/http/src/http-request.class.mjs +2 -0
- package/esm2020/http/src/http-result.class.mjs +21 -0
- package/esm2020/http/src/http.module.mjs +29 -0
- package/esm2020/http/src/http.service.mjs +147 -0
- package/esm2020/pipes/acorex-core-pipes.mjs +5 -0
- package/esm2020/pipes/public-api.mjs +3 -0
- package/esm2020/pipes/src/pipes.module.mjs +19 -0
- package/esm2020/pipes/src/safe.pipe.mjs +30 -0
- package/esm2020/platform/acorex-core-platform.mjs +5 -0
- package/esm2020/platform/public-api.mjs +2 -0
- package/esm2020/platform/src/platform.service.mjs +141 -0
- package/esm2020/public-api.mjs +4 -12
- package/esm2020/translation/acorex-core-translation.mjs +5 -0
- package/esm2020/translation/public-api.mjs +4 -0
- package/esm2020/translation/src/translation.module.mjs +18 -0
- package/esm2020/translation/src/translator.mjs +43 -0
- package/esm2020/translation/src/translator.pipe.mjs +15 -0
- package/esm2020/utils/acorex-core-utils.mjs +5 -0
- package/esm2020/utils/public-api.mjs +5 -0
- package/esm2020/utils/src/color-util.mjs +71 -0
- package/esm2020/utils/src/drawing-util.mjs +27 -0
- package/esm2020/utils/src/object-util.mjs +39 -0
- package/esm2020/utils/src/string-util.mjs +19 -0
- package/events/index.d.ts +5 -0
- package/events/public-api.d.ts +1 -0
- package/{lib/events → events/src}/event.service.d.ts +0 -0
- package/fesm2015/acorex-core-config.mjs +39 -0
- package/fesm2015/acorex-core-config.mjs.map +1 -0
- package/fesm2015/acorex-core-dateTime.mjs +899 -0
- package/fesm2015/acorex-core-dateTime.mjs.map +1 -0
- package/fesm2015/acorex-core-events.mjs +43 -0
- package/fesm2015/acorex-core-events.mjs.map +1 -0
- package/fesm2015/acorex-core-http.mjs +201 -0
- package/fesm2015/acorex-core-http.mjs.map +1 -0
- package/fesm2015/acorex-core-pipes.mjs +53 -0
- package/fesm2015/acorex-core-pipes.mjs.map +1 -0
- package/fesm2015/acorex-core-platform.mjs +148 -0
- package/fesm2015/acorex-core-platform.mjs.map +1 -0
- package/fesm2015/acorex-core-translation.mjs +80 -0
- package/fesm2015/acorex-core-translation.mjs.map +1 -0
- package/fesm2015/acorex-core-utils.mjs +163 -0
- package/fesm2015/acorex-core-utils.mjs.map +1 -0
- package/fesm2015/acorex-core.mjs +5 -1399
- package/fesm2015/acorex-core.mjs.map +1 -1
- package/fesm2020/acorex-core-config.mjs +39 -0
- package/fesm2020/acorex-core-config.mjs.map +1 -0
- package/fesm2020/acorex-core-dateTime.mjs +899 -0
- package/fesm2020/acorex-core-dateTime.mjs.map +1 -0
- package/fesm2020/acorex-core-events.mjs +43 -0
- package/fesm2020/acorex-core-events.mjs.map +1 -0
- package/fesm2020/acorex-core-http.mjs +200 -0
- package/fesm2020/acorex-core-http.mjs.map +1 -0
- package/fesm2020/acorex-core-pipes.mjs +53 -0
- package/fesm2020/acorex-core-pipes.mjs.map +1 -0
- package/fesm2020/acorex-core-platform.mjs +148 -0
- package/fesm2020/acorex-core-platform.mjs.map +1 -0
- package/fesm2020/acorex-core-translation.mjs +79 -0
- package/fesm2020/acorex-core-translation.mjs.map +1 -0
- package/fesm2020/acorex-core-utils.mjs +163 -0
- package/fesm2020/acorex-core-utils.mjs.map +1 -0
- package/fesm2020/acorex-core.mjs +5 -1396
- package/fesm2020/acorex-core.mjs.map +1 -1
- package/http/index.d.ts +5 -0
- package/http/public-api.d.ts +5 -0
- package/http/src/http-error.class.d.ts +7 -0
- package/http/src/http-events.interceptor.d.ts +10 -0
- package/http/src/http-request.class.d.ts +14 -0
- package/http/src/http-result.class.d.ts +11 -0
- package/http/src/http.module.d.ts +8 -0
- package/http/src/http.service.d.ts +23 -0
- package/package.json +78 -12
- package/pipes/index.d.ts +5 -0
- package/pipes/public-api.d.ts +2 -0
- package/pipes/src/pipes.module.d.ts +8 -0
- package/{lib/utils → pipes/src}/safe.pipe.d.ts +0 -0
- package/platform/index.d.ts +5 -0
- package/platform/public-api.d.ts +1 -0
- package/{lib/platform → platform/src}/platform.service.d.ts +1 -1
- package/public-api.d.ts +1 -12
- package/translation/index.d.ts +5 -0
- package/translation/public-api.d.ts +3 -0
- package/{lib/translation → translation/src}/translation.module.d.ts +0 -0
- package/{lib/translation → translation/src}/translator.d.ts +0 -0
- package/{lib/translation → translation/src}/translator.pipe.d.ts +0 -0
- package/utils/index.d.ts +5 -0
- package/utils/public-api.d.ts +4 -0
- package/{lib/utils → utils/src}/color-util.d.ts +0 -0
- package/{lib/utils → utils/src}/drawing-util.d.ts +1 -1
- package/{lib/utils → utils/src}/object-util.d.ts +0 -0
- package/{lib/utils → utils/src}/string-util.d.ts +0 -0
- package/config/ax-preset.js +0 -204
- package/esm2020/lib/config/configs.mjs +0 -29
- package/esm2020/lib/core.module.mjs +0 -18
- package/esm2020/lib/dateTime/datetime.class.mjs +0 -295
- package/esm2020/lib/dateTime/datetime.module.mjs +0 -33
- package/esm2020/lib/dateTime/datetime.pipe.mjs +0 -26
- package/esm2020/lib/dateTime/georgian.calendar.mjs +0 -189
- package/esm2020/lib/dateTime/index.mjs +0 -6
- package/esm2020/lib/dateTime/jalali.calendar.mjs +0 -359
- package/esm2020/lib/events/event.service.mjs +0 -36
- package/esm2020/lib/events/index.mjs +0 -2
- package/esm2020/lib/hotkeys/hotkeys.service.mjs +0 -38
- package/esm2020/lib/hotkeys/index.mjs +0 -2
- package/esm2020/lib/platform/index.mjs +0 -2
- package/esm2020/lib/platform/platform.service.mjs +0 -138
- package/esm2020/lib/translation/index.mjs +0 -4
- package/esm2020/lib/translation/translation.module.mjs +0 -18
- package/esm2020/lib/translation/translator.mjs +0 -43
- package/esm2020/lib/translation/translator.pipe.mjs +0 -15
- package/esm2020/lib/utils/color-util.mjs +0 -71
- package/esm2020/lib/utils/drawing-util.mjs +0 -27
- package/esm2020/lib/utils/index.mjs +0 -6
- package/esm2020/lib/utils/object-util.mjs +0 -39
- package/esm2020/lib/utils/safe.pipe.mjs +0 -30
- package/esm2020/lib/utils/string-util.mjs +0 -19
- package/lib/core.module.d.ts +0 -7
- package/lib/dateTime/index.d.ts +0 -5
- package/lib/events/index.d.ts +0 -1
- package/lib/hotkeys/hotkeys.service.d.ts +0 -17
- package/lib/hotkeys/index.d.ts +0 -1
- package/lib/platform/index.d.ts +0 -1
- package/lib/translation/index.d.ts +0 -3
- package/lib/utils/index.d.ts +0 -5
|
@@ -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: "14.0.0", ngImport: i0, type: AXPlatform, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
131
|
-
AXPlatform.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXPlatform, providedIn: 'platform' });
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", 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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QUFXLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxXQUFXLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQy9HLENBQUM7O3VHQXBDUSxVQUFVOzJHQUFWLFVBQVUsY0FGUCxVQUFVOzJGQUViLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLFVBQVU7aUJBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IGZyb20sIGZyb21FdmVudCwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuXHJcblxyXG5leHBvcnQgdHlwZSBBWFBsYXRmb3JtcyA9ICdBbmRyb2lkJyB8ICdEZXNrdG9wJyB8ICdpT1MnIHwgJ01vYmlsZSc7XHJcbmV4cG9ydCB0eXBlIEFYQnJvd3NlcnMgPSAnQ2hyb21lJyB8ICdTYWZhcmknIHwgJ0VkZ2UnIHwgJ0ZpcmVmb3gnIHwgJ09wZXJhJyB8ICdNU0lFJztcclxuZXhwb3J0IHR5cGUgQVhUZWNobm9sb2dpZXMgPSAnUFdBJyB8ICdIeWJyaWQnIHwgJ0VsZWN0cm9uJztcclxuXHJcblxyXG5cclxuXHJcbmNvbnN0IGlzQ2hyb21lID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgdGVzdFVzZXJBZ2VudCh3aW4sIC9DaHJvbWUvaSk7XHJcblxyXG5jb25zdCBpc0ZpcmVmb3ggPSAod2luOiBXaW5kb3cpOiBib29sZWFuID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL0ZpcmVmb3gvaSk7XHJcblxyXG5jb25zdCBpc0VkZ2UgPSAod2luOiBXaW5kb3cpOiBib29sZWFuID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL0VkZ2UvaSk7XHJcblxyXG5jb25zdCBpc1NhZmFyaSA9ICh3aW46IFdpbmRvdyk6IGJvb2xlYW4gPT5cclxuICAgIHRlc3RVc2VyQWdlbnQod2luLCAvU2FmYXJpL2kpO1xyXG5cclxuY29uc3QgaXNPcGVyYSA9ICh3aW46IFdpbmRvdyk6IGJvb2xlYW4gPT5cclxuICAgIHRlc3RVc2VyQWdlbnQod2luLCAvT3BlcmEvaSkgfHwgdGVzdFVzZXJBZ2VudCh3aW4sIC9PUFIvaSk7XHJcblxyXG5jb25zdCBpc01TSUUgPSAod2luOiBXaW5kb3cpOiBib29sZWFuID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL01TSUUvaSkgfHwgdGVzdFVzZXJBZ2VudCh3aW4sIC9UcmlkZW50L2kpO1xyXG5cclxuXHJcbmNvbnN0IGlzTW9iaWxlV2ViID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgaXNNb2JpbGUod2luKSAmJiAhaXNIeWJyaWQod2luKTtcclxuXHJcbmNvbnN0IGlzSXBhZCA9ICh3aW46IFdpbmRvdykgPT4ge1xyXG4gICAgLy8gaU9TIDEyIGFuZCBiZWxvd1xyXG4gICAgaWYgKHRlc3RVc2VyQWdlbnQod2luLCAvaVBhZC9pKSkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGlPUyAxMytcclxuICAgIGlmICh0ZXN0VXNlckFnZW50KHdpbiwgL01hY2ludG9zaC9pKSAmJiBpc01vYmlsZSh3aW4pKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG59O1xyXG5cclxuY29uc3QgaXNJcGhvbmUgPSAod2luOiBXaW5kb3cpID0+XHJcbiAgICB0ZXN0VXNlckFnZW50KHdpbiwgL2lQaG9uZS9pKTtcclxuXHJcbmNvbnN0IGlzSU9TID0gKHdpbjogV2luZG93KSA9PlxyXG4gICAgdGVzdFVzZXJBZ2VudCh3aW4sIC9pUGhvbmV8aVBvZC9pKSB8fCBpc0lwYWQod2luKTtcclxuXHJcbmNvbnN0IGlzQW5kcm9pZCA9ICh3aW46IFdpbmRvdykgPT5cclxuICAgIHRlc3RVc2VyQWdlbnQod2luLCAvYW5kcm9pZHxzaW5rL2kpO1xyXG5cclxuY29uc3QgaXNBbmRyb2lkVGFibGV0ID0gKHdpbjogV2luZG93KSA9PiB7XHJcbiAgICByZXR1cm4gaXNBbmRyb2lkKHdpbikgJiYgIXRlc3RVc2VyQWdlbnQod2luLCAvbW9iaWxlL2kpO1xyXG59O1xyXG5cclxuY29uc3QgaXNQaGFibGV0ID0gKHdpbjogV2luZG93KSA9PiB7XHJcbiAgICBjb25zdCB3aWR0aCA9IHdpbi5pbm5lcldpZHRoO1xyXG4gICAgY29uc3QgaGVpZ2h0ID0gd2luLmlubmVySGVpZ2h0O1xyXG4gICAgY29uc3Qgc21hbGxlc3QgPSBNYXRoLm1pbih3aWR0aCwgaGVpZ2h0KTtcclxuICAgIGNvbnN0IGxhcmdlc3QgPSBNYXRoLm1heCh3aWR0aCwgaGVpZ2h0KTtcclxuXHJcbiAgICByZXR1cm4gKHNtYWxsZXN0ID4gMzkwICYmIHNtYWxsZXN0IDwgNTIwKSAmJlxyXG4gICAgICAgIChsYXJnZXN0ID4gNjIwICYmIGxhcmdlc3QgPCA4MDApO1xyXG59O1xyXG5cclxuY29uc3QgaXNUYWJsZXQgPSAod2luOiBXaW5kb3cpID0+IHtcclxuICAgIGNvbnN0IHdpZHRoID0gd2luLmlubmVyV2lkdGg7XHJcbiAgICBjb25zdCBoZWlnaHQgPSB3aW4uaW5uZXJIZWlnaHQ7XHJcbiAgICBjb25zdCBzbWFsbGVzdCA9IE1hdGgubWluKHdpZHRoLCBoZWlnaHQpO1xyXG4gICAgY29uc3QgbGFyZ2VzdCA9IE1hdGgubWF4KHdpZHRoLCBoZWlnaHQpO1xyXG5cclxuICAgIHJldHVybiAoXHJcbiAgICAgICAgaXNJcGFkKHdpbikgfHxcclxuICAgICAgICBpc0FuZHJvaWRUYWJsZXQod2luKSB8fFxyXG4gICAgICAgIChcclxuICAgICAgICAgICAgKHNtYWxsZXN0ID4gNDYwICYmIHNtYWxsZXN0IDwgODIwKSAmJlxyXG4gICAgICAgICAgICAobGFyZ2VzdCA+IDc4MCAmJiBsYXJnZXN0IDwgMTQwMClcclxuICAgICAgICApXHJcbiAgICApO1xyXG59O1xyXG5cclxuY29uc3QgaXNNb2JpbGUgPSAod2luOiBXaW5kb3cpID0+XHJcbiAgICBtYXRjaE1lZGlhKHdpbiwgJyhhbnktcG9pbnRlcjpjb2Fyc2UpJyk7XHJcblxyXG5jb25zdCBpc0Rlc2t0b3AgPSAod2luOiBXaW5kb3cpID0+XHJcbiAgICAhaXNNb2JpbGUod2luKTtcclxuXHJcbmNvbnN0IGlzSHlicmlkID0gKHdpbjogV2luZG93KSA9PlxyXG4gICAgaXNDb3Jkb3ZhKHdpbikgfHwgaXNDYXBhY2l0b3JOYXRpdmUod2luKTtcclxuXHJcbmNvbnN0IGlzQ29yZG92YSA9ICh3aW46IGFueSk6IGJvb2xlYW4gPT5cclxuICAgICEhKHdpblsnY29yZG92YSddIHx8IHdpblsncGhvbmVnYXAnXSB8fCB3aW5bJ1Bob25lR2FwJ10pO1xyXG5cclxuY29uc3QgaXNDYXBhY2l0b3JOYXRpdmUgPSAod2luOiBhbnkpOiBib29sZWFuID0+IHtcclxuICAgIGNvbnN0IGNhcGFjaXRvciA9IHdpblsnQ2FwYWNpdG9yJ107XHJcbiAgICByZXR1cm4gISEoY2FwYWNpdG9yICYmIGNhcGFjaXRvci5pc05hdGl2ZSk7XHJcbn07XHJcblxyXG5jb25zdCBpc0VsZWN0cm9uID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgdGVzdFVzZXJBZ2VudCh3aW4sIC9lbGVjdHJvbi9pKTtcclxuXHJcbmNvbnN0IGlzUFdBID0gKHdpbjogV2luZG93KTogYm9vbGVhbiA9PlxyXG4gICAgISEod2luLm1hdGNoTWVkaWEoJyhkaXNwbGF5LW1vZGU6IHN0YW5kYWxvbmUpJykubWF0Y2hlcyB8fCAod2luLm5hdmlnYXRvciBhcyBhbnkpLnN0YW5kYWxvbmUpO1xyXG5cclxuZXhwb3J0IGNvbnN0IHRlc3RVc2VyQWdlbnQgPSAod2luOiBXaW5kb3csIGV4cHI6IFJlZ0V4cCkgPT5cclxuICAgIGV4cHIudGVzdCh3aW4ubmF2aWdhdG9yLnVzZXJBZ2VudCk7XHJcblxyXG5jb25zdCBtYXRjaE1lZGlhID0gKHdpbjogV2luZG93LCBxdWVyeTogc3RyaW5nKTogYm9vbGVhbiA9PlxyXG4gICAgd2luLm1hdGNoTWVkaWEocXVlcnkpLm1hdGNoZXM7XHJcblxyXG5cclxuY29uc3QgUExBVEZPUk1TX01BUCA9IHtcclxuICAgICdBbmRyb2lkJzogaXNBbmRyb2lkLFxyXG4gICAgJ2lPUyc6IGlzSU9TLFxyXG4gICAgJ0Rlc2t0b3AnOiBpc0Rlc2t0b3AsXHJcbiAgICAnTW9iaWxlJzogaXNNb2JpbGUsXHJcbiAgICAnQ2hyb21lJzogaXNDaHJvbWUsXHJcbiAgICAnRmlyZWZveCc6IGlzRmlyZWZveCxcclxuICAgICdTYWZhcmknOiBpc1NhZmFyaSxcclxuICAgICdFZGdlJzogaXNFZGdlLFxyXG4gICAgJ09wZXJhJzogaXNPcGVyYSxcclxuICAgICdIeWJyaWQnOiBpc0h5YnJpZCxcclxuICAgICdQV0EnOiBpc1BXQSxcclxuICAgICdFbGVjdHJvbic6IGlzRWxlY3Ryb24sXHJcbn07XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFYUGxhdGZvcm1FdmVudCB7XHJcbiAgICBuYXRpdmVFdmVudDogVUlFdmVudCB8IEV2ZW50O1xyXG4gICAgc291cmNlOiBBWFBsYXRmb3JtXHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdwbGF0Zm9ybScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBsYXRmb3JtIHtcclxuICAgIHJlc2l6ZTogU3ViamVjdDxBWFBsYXRmb3JtRXZlbnQ+ID0gbmV3IFN1YmplY3Q8QVhQbGF0Zm9ybUV2ZW50PigpO1xyXG4gICAgY2xpY2s6IFN1YmplY3Q8QVhQbGF0Zm9ybUV2ZW50PiA9IG5ldyBTdWJqZWN0PEFYUGxhdGZvcm1FdmVudD4oKVxyXG4gICAgc2Nyb2xsOiBTdWJqZWN0PEFYUGxhdGZvcm1FdmVudD4gPSBuZXcgU3ViamVjdDxBWFBsYXRmb3JtRXZlbnQ+KClcclxuXHJcbiAgICBpc1J0bCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gZG9jdW1lbnQuZGlyID09ICdydGwnIHx8IGRvY3VtZW50LmJvZHkuZGlyID09ICdydGwnIHx8IGRvY3VtZW50LmJvZHkuc3R5bGUuZGlyZWN0aW9uID09ICdydGwnO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBpc0xhbmRzY2FwZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gd2luZG93LmlubmVySGVpZ2h0IDwgd2luZG93LmlubmVyV2lkdGg7XHJcbiAgICB9XHJcblxyXG4gICAgaXNQb3J0cmF0ZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuaXNMYW5kc2NhcGUoKVxyXG4gICAgfVxyXG5cclxuICAgIGlzKG5hbWU6IEFYUGxhdGZvcm1zIHwgQVhCcm93c2VycyB8IEFYVGVjaG5vbG9naWVzKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIFBMQVRGT1JNU19NQVBbbmFtZV0od2luZG93KSB8fCBmYWxzZTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3dpdGNoRGFya01vZGUoKSB7XHJcbiAgICAgICAgY29uc3QgX2h0bWwgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcImh0bWxcIilbMF07XHJcbiAgICAgICAgX2h0bWwuY2xhc3NMaXN0LmFkZCgnYXgtZGFyaycpXHJcblxyXG4gICAgfVxyXG5cclxuICAgIHN3aXRjaExpZ2h0TW9kZSgpIHtcclxuICAgICAgICBjb25zdCBfaHRtbCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiaHRtbFwiKVswXTtcclxuICAgICAgICBfaHRtbC5jbGFzc0xpc3QucmVtb3ZlKCdheC1kYXJrJylcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zZXRGdWxsSGVpZ2h0UmF0aW8oKSB7XHJcbiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oJzpyb290Jykuc3R5bGUuc2V0UHJvcGVydHkoJy0tYXgtdmgnLCB3aW5kb3cuaW5uZXJIZWlnaHQgLyAxMDAgKyAncHgnKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuXHJcbiAgICAgICAgZnJvbUV2ZW50PFVJRXZlbnQ+KHdpbmRvdywgJ3Jlc2l6ZScpXHJcbiAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSgxMDApKVxyXG4gICAgICAgICAgICAucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChlKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2l6ZS5uZXh0KHtcclxuICAgICAgICAgICAgICAgICAgICBuYXRpdmVFdmVudDogZSxcclxuICAgICAgICAgICAgICAgICAgICBzb3VyY2U6IHRoaXNcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgLy9cclxuICAgICAgICAgICAgICAgIHRoaXMuX3NldEZ1bGxIZWlnaHRSYXRpbygpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcblxyXG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKGUpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jbGljay5uZXh0KHtcclxuICAgICAgICAgICAgICAgIG5hdGl2ZUV2ZW50OiBlLFxyXG4gICAgICAgICAgICAgICAgc291cmNlOiB0aGlzXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0sIHRydWUpXHJcblxyXG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIChlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsLm5leHQoe1xyXG4gICAgICAgICAgICAgICAgbmF0aXZlRXZlbnQ6IGUsXHJcbiAgICAgICAgICAgICAgICBzb3VyY2U6IHRoaXNcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSwgdHJ1ZSk7XHJcbiAgICAgICAgLy8gaW5pdCBmdW5jdGlvbnNcclxuICAgICAgICB0aGlzLl9zZXRGdWxsSGVpZ2h0UmF0aW8oKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './translator';
|
|
2
|
-
export * from './translator.pipe';
|
|
3
|
-
export * from './translation.module';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3RyYW5zbGF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdHJhbnNsYXRvcic7XHJcbmV4cG9ydCAqIGZyb20gJy4vdHJhbnNsYXRvci5waXBlJztcclxuZXhwb3J0ICogZnJvbSAnLi90cmFuc2xhdGlvbi5tb2R1bGUnOyJdfQ==
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { AXTranslatorPipe } from './translator.pipe';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class AXTranslationModule {
|
|
5
|
-
}
|
|
6
|
-
AXTranslationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXTranslationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
-
AXTranslationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: AXTranslationModule, declarations: [AXTranslatorPipe], exports: [AXTranslatorPipe] });
|
|
8
|
-
AXTranslationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXTranslationModule, providers: [] });
|
|
9
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXTranslationModule, decorators: [{
|
|
10
|
-
type: NgModule,
|
|
11
|
-
args: [{
|
|
12
|
-
imports: [],
|
|
13
|
-
exports: [AXTranslatorPipe],
|
|
14
|
-
declarations: [AXTranslatorPipe],
|
|
15
|
-
providers: [],
|
|
16
|
-
}]
|
|
17
|
-
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi90cmFuc2xhdGlvbi90cmFuc2xhdGlvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFRckQsTUFBTSxPQUFPLG1CQUFtQjs7Z0hBQW5CLG1CQUFtQjtpSEFBbkIsbUJBQW1CLGlCQUhiLGdCQUFnQixhQURyQixnQkFBZ0I7aUhBSWpCLG1CQUFtQixhQUZqQixFQUFFOzJGQUVKLG1CQUFtQjtrQkFOL0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsRUFBRTtvQkFDWCxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDM0IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ2hDLFNBQVMsRUFBRSxFQUFFO2lCQUNoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYVHJhbnNsYXRvclBpcGUgfSBmcm9tICcuL3RyYW5zbGF0b3IucGlwZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW10sXHJcbiAgICBleHBvcnRzOiBbQVhUcmFuc2xhdG9yUGlwZV0sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtBWFRyYW5zbGF0b3JQaXBlXSxcclxuICAgIHByb3ZpZGVyczogW10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFRyYW5zbGF0aW9uTW9kdWxlIHtcclxuICBcclxufVxyXG4iXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { Subject } from 'rxjs';
|
|
2
|
-
import merge from 'lodash-es/merge';
|
|
3
|
-
import * as _ from 'lodash';
|
|
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, arg1, arg2) {
|
|
21
|
-
const lang = arg1 && typeof arg1 == 'string' ? arg1 : AXTranslator.lang;
|
|
22
|
-
const params = arg1 && typeof arg1 == 'object' ? arg1 : arg2;
|
|
23
|
-
let result = _.get(AXTranslator[`__data__${lang}`], key, key);
|
|
24
|
-
const vars = typeof (result) == 'string' ? result?.match(this._varsRegx) : [];
|
|
25
|
-
if (vars?.length) {
|
|
26
|
-
vars.forEach(v => {
|
|
27
|
-
const varKey = v.match(this._varNameRegx)?.length ? v.match(this._varNameRegx)[0] : null;
|
|
28
|
-
if (varKey) {
|
|
29
|
-
const p = _.get(params, varKey) || this.get(varKey, lang);
|
|
30
|
-
if (p) {
|
|
31
|
-
result = result.replace(v, p);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
return typeof (result) == 'string' ? result : JSON.stringify(result);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
AXTranslator.lang = 'en';
|
|
40
|
-
AXTranslator.dataChangeSubject = new Subject();
|
|
41
|
-
AXTranslator._varsRegx = /((\$\{[a-zA-Z_0-9\.]+\})+)/gm;
|
|
42
|
-
AXTranslator._varNameRegx = /[a-zA-Z_0-9\.]+/gm;
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdHJhbnNsYXRpb24vdHJhbnNsYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sS0FBSyxNQUFNLGlCQUFpQixDQUFDO0FBQ3BDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLFdBQVc7QUFDWCxNQUFNLE9BQU8sWUFBWTtJQU9yQixNQUFNLEtBQUssUUFBUTtRQUNmLE9BQU8sWUFBWSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFTSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQVksRUFBRSxLQUFVO1FBQ3ZDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzNCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxFQUFFO2dCQUNsQyxZQUFZLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQzthQUN4QztZQUNELFlBQVksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDbkY7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFZO1FBQzFCLFlBQVksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQzdCLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQVcsRUFBRSxJQUFzQixFQUFFLElBQWE7UUFFaEUsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLE9BQU8sSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO1FBQ3hFLE1BQU0sTUFBTSxHQUFHLElBQUksSUFBSSxPQUFPLElBQUksSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzdELElBQUksTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDOUQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUM5RSxJQUFJLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDZCxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNiLE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDekYsSUFBSSxNQUFNLEVBQUU7b0JBQ1IsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQzFELElBQUksQ0FBQyxFQUFFO3dCQUNILE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztxQkFDakM7aUJBQ0o7WUFDTCxDQUFDLENBQUMsQ0FBQTtTQUNMO1FBQ0QsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDekUsQ0FBQzs7QUF6Q2MsaUJBQUksR0FBVyxJQUFJLENBQUM7QUFDcEIsOEJBQWlCLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztBQUN2QyxzQkFBUyxHQUFHLDhCQUE4QixDQUFDO0FBQzNDLHlCQUFZLEdBQUcsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gtZXMvbWVyZ2UnO1xyXG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XHJcblxyXG4vLyBAZHluYW1pY1xyXG5leHBvcnQgY2xhc3MgQVhUcmFuc2xhdG9yIHtcclxuICAgIHByaXZhdGUgc3RhdGljIGxhbmc6IHN0cmluZyA9ICdlbic7XHJcbiAgICBwcml2YXRlIHN0YXRpYyBkYXRhQ2hhbmdlU3ViamVjdCA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICAgIHByaXZhdGUgc3RhdGljIF92YXJzUmVneCA9IC8oKFxcJFxce1thLXpBLVpfMC05XFwuXStcXH0pKykvZ207XHJcbiAgICBwcml2YXRlIHN0YXRpYyBfdmFyTmFtZVJlZ3ggPSAvW2EtekEtWl8wLTlcXC5dKy9nbTtcclxuXHJcblxyXG4gICAgc3RhdGljIGdldCBvbkNoYW5nZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIHJldHVybiBBWFRyYW5zbGF0b3IuZGF0YUNoYW5nZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBsb2FkKGxhbmc6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICAgIGlmICghQVhUcmFuc2xhdG9yW2BfX2RhdGFfXyR7bGFuZ31gXSkge1xyXG4gICAgICAgICAgICAgICAgQVhUcmFuc2xhdG9yW2BfX2RhdGFfXyR7bGFuZ31gXSA9IHt9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEFYVHJhbnNsYXRvcltgX19kYXRhX18ke2xhbmd9YF0gPSBtZXJnZShBWFRyYW5zbGF0b3JbYF9fZGF0YV9fJHtsYW5nfWBdLCB2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgdXNlKGxhbmc6IHN0cmluZykge1xyXG4gICAgICAgIEFYVHJhbnNsYXRvci5sYW5nID0gbGFuZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIGdldChrZXk6IHN0cmluZywgYXJnMT86IG9iamVjdCB8IHN0cmluZywgYXJnMj86IG9iamVjdCk6IHN0cmluZyB7XHJcblxyXG4gICAgICAgIGNvbnN0IGxhbmcgPSBhcmcxICYmIHR5cGVvZiBhcmcxID09ICdzdHJpbmcnID8gYXJnMSA6IEFYVHJhbnNsYXRvci5sYW5nO1xyXG4gICAgICAgIGNvbnN0IHBhcmFtcyA9IGFyZzEgJiYgdHlwZW9mIGFyZzEgPT0gJ29iamVjdCcgPyBhcmcxIDogYXJnMjtcclxuICAgICAgICBsZXQgcmVzdWx0ID0gXy5nZXQoQVhUcmFuc2xhdG9yW2BfX2RhdGFfXyR7bGFuZ31gXSwga2V5LCBrZXkpO1xyXG4gICAgICAgIGNvbnN0IHZhcnMgPSB0eXBlb2YgKHJlc3VsdCkgPT0gJ3N0cmluZycgPyByZXN1bHQ/Lm1hdGNoKHRoaXMuX3ZhcnNSZWd4KSA6IFtdO1xyXG4gICAgICAgIGlmICh2YXJzPy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgdmFycy5mb3JFYWNoKHYgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFyS2V5ID0gdi5tYXRjaCh0aGlzLl92YXJOYW1lUmVneCk/Lmxlbmd0aCA/IHYubWF0Y2godGhpcy5fdmFyTmFtZVJlZ3gpWzBdIDogbnVsbDtcclxuICAgICAgICAgICAgICAgIGlmICh2YXJLZXkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBwID0gXy5nZXQocGFyYW1zLCB2YXJLZXkpIHx8IHRoaXMuZ2V0KHZhcktleSwgbGFuZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UodiwgcCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdHlwZW9mIChyZXN1bHQpID09ICdzdHJpbmcnID8gcmVzdWx0IDogSlNPTi5zdHJpbmdpZnkocmVzdWx0KTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -1,15 +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
|
-
transform(value, arg1, arg2) {
|
|
6
|
-
return AXTranslator.get(value, arg1, arg2);
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
AXTranslatorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXTranslatorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
10
|
-
AXTranslatorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: AXTranslatorPipe, name: "trans" });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXTranslatorPipe, decorators: [{
|
|
12
|
-
type: Pipe,
|
|
13
|
-
args: [{ name: 'trans', pure: true }]
|
|
14
|
-
}] });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvci5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi90cmFuc2xhdGlvbi90cmFuc2xhdG9yLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFHNUMsTUFBTSxPQUFPLGdCQUFnQjtJQUN6QixTQUFTLENBQUMsS0FBYSxFQUFFLElBQXNCLEVBQUUsSUFBYTtRQUMxRCxPQUFPLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDOzs2R0FIUSxnQkFBZ0I7MkdBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWFRyYW5zbGF0b3IgfSBmcm9tICcuL3RyYW5zbGF0b3InO1xyXG5cclxuQFBpcGUoeyBuYW1lOiAndHJhbnMnLCBwdXJlOiB0cnVlIH0pXHJcbmV4cG9ydCBjbGFzcyBBWFRyYW5zbGF0b3JQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgYXJnMT86IG9iamVjdCB8IHN0cmluZywgYXJnMj86IG9iamVjdCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIEFYVHJhbnNsYXRvci5nZXQodmFsdWUsIGFyZzEsIGFyZzIpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import tinycolor from 'tinycolor2';
|
|
2
|
-
import tinygradient from 'tinygradient';
|
|
3
|
-
export class AXColorUtil {
|
|
4
|
-
static to(color, mode) {
|
|
5
|
-
const _color = tinycolor(color);
|
|
6
|
-
switch (mode) {
|
|
7
|
-
case 'rgba':
|
|
8
|
-
;
|
|
9
|
-
return _color.toRgb();
|
|
10
|
-
case 'hsla':
|
|
11
|
-
return _color.toHsl();
|
|
12
|
-
case 'hsva':
|
|
13
|
-
return _color.toHsv();
|
|
14
|
-
default:
|
|
15
|
-
return _color.toHex();
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
;
|
|
19
|
-
static toString(color, mode) {
|
|
20
|
-
const _color = tinycolor(color);
|
|
21
|
-
switch (mode) {
|
|
22
|
-
case 'rgba':
|
|
23
|
-
return _color.toRgbString();
|
|
24
|
-
case 'hsla':
|
|
25
|
-
return _color.toHslString();
|
|
26
|
-
case 'hsva':
|
|
27
|
-
return _color.toHsvString();
|
|
28
|
-
default:
|
|
29
|
-
return _color.toHexString();
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
;
|
|
33
|
-
static mix(baseColor, hex, percentage) {
|
|
34
|
-
return tinycolor.mix(baseColor, hex, percentage).toString('rgb');
|
|
35
|
-
}
|
|
36
|
-
static multiply(color1, color2) {
|
|
37
|
-
let rgb1 = tinycolor(color1).toRgb();
|
|
38
|
-
let rgb2 = tinycolor(color2).toRgb();
|
|
39
|
-
rgb1.b = Math.floor(rgb1.b * rgb2.b / 255);
|
|
40
|
-
rgb1.g = Math.floor(rgb1.g * rgb2.g / 255);
|
|
41
|
-
rgb1.r = Math.floor(rgb1.r * rgb2.r / 255);
|
|
42
|
-
return tinycolor('rgb ' + rgb1.r + ' ' + rgb1.g + ' ' + rgb1.b).toString('rgb');
|
|
43
|
-
}
|
|
44
|
-
static toHexSting(color) {
|
|
45
|
-
const _color = tinycolor(color);
|
|
46
|
-
return _color.toHexString();
|
|
47
|
-
}
|
|
48
|
-
;
|
|
49
|
-
static toRGBString(color) {
|
|
50
|
-
const _color = tinycolor(color);
|
|
51
|
-
return _color.toRgbString();
|
|
52
|
-
}
|
|
53
|
-
;
|
|
54
|
-
static contrastToWhite(color) {
|
|
55
|
-
return tinycolor.readability("#fff", color);
|
|
56
|
-
}
|
|
57
|
-
;
|
|
58
|
-
static lighten(hex, percentage) {
|
|
59
|
-
return tinycolor(hex).lighten(percentage);
|
|
60
|
-
}
|
|
61
|
-
static darken(hex, percentage) {
|
|
62
|
-
return tinycolor(hex).darken(percentage);
|
|
63
|
-
}
|
|
64
|
-
static equal(color1, color2) {
|
|
65
|
-
return tinycolor.equals(color1, color2);
|
|
66
|
-
}
|
|
67
|
-
static gradient(values) {
|
|
68
|
-
return tinygradient([...values]);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb3JlL3NyYy9saWIvdXRpbHMvY29sb3ItdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLFNBQXlCLE1BQU0sWUFBWSxDQUFDO0FBQ25ELE9BQU8sWUFBWSxNQUFNLGNBQWMsQ0FBQTtBQUl2QyxNQUFNLE9BQU8sV0FBVztJQUdwQixNQUFNLENBQUMsRUFBRSxDQUFDLEtBQW9CLEVBQUUsSUFBaUI7UUFDN0MsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQy9CLFFBQVEsSUFBSSxFQUFFO1lBQ1YsS0FBSyxNQUFNO2dCQUFFLENBQUM7Z0JBQ1YsT0FBTyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDMUIsS0FBSyxNQUFNO2dCQUNQLE9BQU8sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzFCLEtBQUssTUFBTTtnQkFDUCxPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMxQjtnQkFDSSxPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUM3QjtJQUNMLENBQUM7SUFBQSxDQUFDO0lBRUYsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFvQixFQUFFLElBQWlCO1FBQ25ELE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMvQixRQUFRLElBQUksRUFBRTtZQUNWLEtBQUssTUFBTTtnQkFDUCxPQUFPLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNoQyxLQUFLLE1BQU07Z0JBQ1AsT0FBTyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDaEMsS0FBSyxNQUFNO2dCQUNQLE9BQU8sTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2hDO2dCQUNJLE9BQU8sTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQztJQUFBLENBQUM7SUFFRixNQUFNLENBQUMsR0FBRyxDQUFDLFNBQXdCLEVBQUUsR0FBa0IsRUFBRSxVQUFrQjtRQUN2RSxPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBcUIsRUFBRSxNQUFxQjtRQUN4RCxJQUFJLElBQUksR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckMsSUFBSSxJQUFJLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztRQUMzQyxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLE9BQU8sU0FBUyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFDRCxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQWE7UUFDM0IsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQy9CLE9BQU8sTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQy9CLENBQUM7SUFBQSxDQUFDO0lBRUYsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFvQjtRQUNuQyxNQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDL0IsT0FBTyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUE7SUFDL0IsQ0FBQztJQUFBLENBQUM7SUFFRixNQUFNLENBQUMsZUFBZSxDQUFDLEtBQW9CO1FBQ3ZDLE9BQU8sU0FBUyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUFBLENBQUM7SUFHRixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQWtCLEVBQUUsVUFBbUI7UUFDbEQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzdDLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQWtCLEVBQUUsVUFBbUI7UUFDakQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQXFCLEVBQUUsTUFBcUI7UUFDckQsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBR0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUE2QztRQUN6RCxPQUFPLFlBQVksQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQTtJQUNwQyxDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBBWENvbG9yTW9kZSA9ICdyZ2JhJyB8ICdoZXgnIHwgJ2hzbGEnIHwgJ2hzdmEnO1xyXG5cclxuaW1wb3J0IHRpbnljb2xvciwgeyBDb2xvcklucHV0IH0gZnJvbSAndGlueWNvbG9yMic7XHJcbmltcG9ydCB0aW55Z3JhZGllbnQgZnJvbSAndGlueWdyYWRpZW50J1xyXG5cclxuZXhwb3J0IHR5cGUgQVhDb2xvckZvcm1hdCA9IENvbG9ySW5wdXQ7XHJcblxyXG5leHBvcnQgY2xhc3MgQVhDb2xvclV0aWwge1xyXG5cclxuXHJcbiAgICBzdGF0aWMgdG8oY29sb3I6IEFYQ29sb3JGb3JtYXQsIG1vZGU6IEFYQ29sb3JNb2RlKTogQVhDb2xvckZvcm1hdCB7XHJcbiAgICAgICAgY29uc3QgX2NvbG9yID0gdGlueWNvbG9yKGNvbG9yKVxyXG4gICAgICAgIHN3aXRjaCAobW9kZSkge1xyXG4gICAgICAgICAgICBjYXNlICdyZ2JhJzogO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb2xvci50b1JnYigpO1xyXG4gICAgICAgICAgICBjYXNlICdoc2xhJzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBfY29sb3IudG9Ic2woKTtcclxuICAgICAgICAgICAgY2FzZSAnaHN2YSc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbG9yLnRvSHN2KCk7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbG9yLnRvSGV4KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICBzdGF0aWMgdG9TdHJpbmcoY29sb3I6IEFYQ29sb3JGb3JtYXQsIG1vZGU6IEFYQ29sb3JNb2RlKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBfY29sb3IgPSB0aW55Y29sb3IoY29sb3IpXHJcbiAgICAgICAgc3dpdGNoIChtb2RlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ3JnYmEnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIF9jb2xvci50b1JnYlN0cmluZygpO1xyXG4gICAgICAgICAgICBjYXNlICdoc2xhJzpcclxuICAgICAgICAgICAgICAgIHJldHVybiBfY29sb3IudG9Ic2xTdHJpbmcoKTtcclxuICAgICAgICAgICAgY2FzZSAnaHN2YSc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbG9yLnRvSHN2U3RyaW5nKCk7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbG9yLnRvSGV4U3RyaW5nKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfTtcclxuXHJcbiAgICBzdGF0aWMgbWl4KGJhc2VDb2xvcjogQVhDb2xvckZvcm1hdCwgaGV4OiBBWENvbG9yRm9ybWF0LCBwZXJjZW50YWdlOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aW55Y29sb3IubWl4KGJhc2VDb2xvciwgaGV4LCBwZXJjZW50YWdlKS50b1N0cmluZygncmdiJyk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIG11bHRpcGx5KGNvbG9yMTogQVhDb2xvckZvcm1hdCwgY29sb3IyOiBBWENvbG9yRm9ybWF0KTogc3RyaW5nIHtcclxuICAgICAgICBsZXQgcmdiMSA9IHRpbnljb2xvcihjb2xvcjEpLnRvUmdiKCk7XHJcbiAgICAgICAgbGV0IHJnYjIgPSB0aW55Y29sb3IoY29sb3IyKS50b1JnYigpO1xyXG4gICAgICAgIHJnYjEuYiA9IE1hdGguZmxvb3IocmdiMS5iICogcmdiMi5iIC8gMjU1KTtcclxuICAgICAgICByZ2IxLmcgPSBNYXRoLmZsb29yKHJnYjEuZyAqIHJnYjIuZyAvIDI1NSk7XHJcbiAgICAgICAgcmdiMS5yID0gTWF0aC5mbG9vcihyZ2IxLnIgKiByZ2IyLnIgLyAyNTUpO1xyXG4gICAgICAgIHJldHVybiB0aW55Y29sb3IoJ3JnYiAnICsgcmdiMS5yICsgJyAnICsgcmdiMS5nICsgJyAnICsgcmdiMS5iKS50b1N0cmluZygncmdiJyk7XHJcbiAgICB9XHJcbiAgICBzdGF0aWMgdG9IZXhTdGluZyhjb2xvcjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBfY29sb3IgPSB0aW55Y29sb3IoY29sb3IpXHJcbiAgICAgICAgcmV0dXJuIF9jb2xvci50b0hleFN0cmluZygpXHJcbiAgICB9O1xyXG5cclxuICAgIHN0YXRpYyB0b1JHQlN0cmluZyhjb2xvcjogQVhDb2xvckZvcm1hdCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgX2NvbG9yID0gdGlueWNvbG9yKGNvbG9yKVxyXG4gICAgICAgIHJldHVybiBfY29sb3IudG9SZ2JTdHJpbmcoKVxyXG4gICAgfTtcclxuXHJcbiAgICBzdGF0aWMgY29udHJhc3RUb1doaXRlKGNvbG9yOiBBWENvbG9yRm9ybWF0KTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGlueWNvbG9yLnJlYWRhYmlsaXR5KFwiI2ZmZlwiLCBjb2xvcik7XHJcbiAgICB9O1xyXG5cclxuXHJcbiAgICBzdGF0aWMgbGlnaHRlbihoZXg6IEFYQ29sb3JGb3JtYXQsIHBlcmNlbnRhZ2U/OiBudW1iZXIpIHtcclxuICAgICAgICByZXR1cm4gdGlueWNvbG9yKGhleCkubGlnaHRlbihwZXJjZW50YWdlKVxyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBkYXJrZW4oaGV4OiBBWENvbG9yRm9ybWF0LCBwZXJjZW50YWdlPzogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIHRpbnljb2xvcihoZXgpLmRhcmtlbihwZXJjZW50YWdlKVxyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBlcXVhbChjb2xvcjE6IEFYQ29sb3JGb3JtYXQsIGNvbG9yMjogQVhDb2xvckZvcm1hdCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aW55Y29sb3IuZXF1YWxzKGNvbG9yMSwgY29sb3IyKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3RhdGljIGdyYWRpZW50KHZhbHVlczogYW55W10gfCB7IGNvbG9yOiBhbnksIHBvczogbnVtYmVyIH1bXSk6IHRpbnlncmFkaWVudC5JbnN0YW5jZSB7XHJcbiAgICAgICAgcmV0dXJuIHRpbnlncmFkaWVudChbLi4udmFsdWVzXSlcclxuICAgIH1cclxuXHJcbn0iXX0=
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
// @dynamic
|
|
2
|
-
export class AXDrawingUtil {
|
|
3
|
-
static collision(a, b) {
|
|
4
|
-
const ac = a.getBoundingClientRect();
|
|
5
|
-
const bc = b.getBoundingClientRect();
|
|
6
|
-
if (ac.left < bc.left + bc.width && ac.left + ac.width > bc.left &&
|
|
7
|
-
ac.top < bc.top + bc.height && ac.top + ac.height > bc.top) {
|
|
8
|
-
return true;
|
|
9
|
-
}
|
|
10
|
-
else {
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
static isInElementBound(pos, element) {
|
|
15
|
-
const elBound = element.getBoundingClientRect();
|
|
16
|
-
return AXDrawingUtil.isInRecPoint(pos, {
|
|
17
|
-
left: elBound.x,
|
|
18
|
-
width: elBound.width,
|
|
19
|
-
top: elBound.y,
|
|
20
|
-
height: elBound.height
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
static isInRecPoint(pos, rec) {
|
|
24
|
-
return pos.x >= rec.left && pos.x <= (rec.left + rec.width) && pos.y >= rec.top && (pos.y <= (rec.top + rec.height));
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2luZy11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi91dGlscy9kcmF3aW5nLXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBYUEsV0FBVztBQUNYLE1BQU0sT0FBTyxhQUFhO0lBQ3RCLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBYyxFQUFFLENBQWM7UUFDM0MsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDckMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFckMsSUFBSSxFQUFFLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLElBQUk7WUFDNUQsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUU7WUFDNUQsT0FBTyxJQUFJLENBQUM7U0FDZjthQUNJO1lBQ0QsT0FBTyxLQUFLLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEdBQVksRUFBRSxPQUFvQjtRQUN0RCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNoRCxPQUFPLGFBQWEsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFO1lBQ25DLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNmLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztZQUNwQixHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDZCxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07U0FDekIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsR0FBWSxFQUFFLEdBQXlCO1FBQ3ZELE9BQU8sR0FBRyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN6SCxDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEFYUG9pbnQge1xyXG4gICAgeDogbnVtYmVyO1xyXG4gICAgeTogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFYQm91bmRpbmdDbGllbnRSZWN0IHtcclxuICAgIGxlZnQ/OiBudW1iZXI7XHJcbiAgICB0b3A/OiBudW1iZXI7XHJcbiAgICB3aWR0aD86IG51bWJlcjtcclxuICAgIGhlaWdodD86IG51bWJlcjtcclxuICAgIGJvdHRvbT86IG51bWJlcjtcclxuICAgIHJpZ2h0PzogbnVtYmVyO1xyXG59XHJcbi8vIEBkeW5hbWljXHJcbmV4cG9ydCBjbGFzcyBBWERyYXdpbmdVdGlsIHtcclxuICAgIHN0YXRpYyBjb2xsaXNpb24oYTogSFRNTEVsZW1lbnQsIGI6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgYWMgPSBhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgIGNvbnN0IGJjID0gYi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHJcbiAgICAgICAgaWYgKGFjLmxlZnQgPCBiYy5sZWZ0ICsgYmMud2lkdGggJiYgYWMubGVmdCArIGFjLndpZHRoID4gYmMubGVmdCAmJlxyXG4gICAgICAgICAgICBhYy50b3AgPCBiYy50b3AgKyBiYy5oZWlnaHQgJiYgYWMudG9wICsgYWMuaGVpZ2h0ID4gYmMudG9wKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgaXNJbkVsZW1lbnRCb3VuZChwb3M6IEFYUG9pbnQsIGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgZWxCb3VuZCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgcmV0dXJuIEFYRHJhd2luZ1V0aWwuaXNJblJlY1BvaW50KHBvcywge1xyXG4gICAgICAgICAgICBsZWZ0OiBlbEJvdW5kLngsXHJcbiAgICAgICAgICAgIHdpZHRoOiBlbEJvdW5kLndpZHRoLFxyXG4gICAgICAgICAgICB0b3A6IGVsQm91bmQueSxcclxuICAgICAgICAgICAgaGVpZ2h0OiBlbEJvdW5kLmhlaWdodFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBpc0luUmVjUG9pbnQocG9zOiBBWFBvaW50LCByZWM6IEFYQm91bmRpbmdDbGllbnRSZWN0KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHBvcy54ID49IHJlYy5sZWZ0ICYmIHBvcy54IDw9IChyZWMubGVmdCArIHJlYy53aWR0aCkgJiYgcG9zLnkgPj0gcmVjLnRvcCAmJiAocG9zLnkgPD0gKHJlYy50b3AgKyByZWMuaGVpZ2h0KSk7XHJcbiAgICB9XHJcblxyXG59Il19
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './object-util';
|
|
2
|
-
export * from './drawing-util';
|
|
3
|
-
export * from './string-util';
|
|
4
|
-
export * from './color-util';
|
|
5
|
-
export * from './safe.pipe';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL29iamVjdC11dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi9kcmF3aW5nLXV0aWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0cmluZy11dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb2xvci11dGlsJztcclxuZXhwb3J0ICogZnJvbSAnLi9zYWZlLnBpcGUnOyJdfQ==
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
// @dynamic
|
|
2
|
-
export class AXObjectUtil {
|
|
3
|
-
static deepJSONClone(obj) {
|
|
4
|
-
return obj ? JSON.parse(JSON.stringify(obj)) : null;
|
|
5
|
-
}
|
|
6
|
-
static deepCopy(obj) {
|
|
7
|
-
let copy;
|
|
8
|
-
// Handle the 3 simple types, and null or undefined
|
|
9
|
-
if (null == obj || 'object' !== typeof obj) {
|
|
10
|
-
return obj;
|
|
11
|
-
}
|
|
12
|
-
// Handle Date
|
|
13
|
-
if (obj instanceof Date) {
|
|
14
|
-
copy = new Date();
|
|
15
|
-
copy.setTime(obj.getTime());
|
|
16
|
-
return copy;
|
|
17
|
-
}
|
|
18
|
-
// Handle Array
|
|
19
|
-
if (obj instanceof Array) {
|
|
20
|
-
copy = [];
|
|
21
|
-
for (let i = 0, len = obj.length; i < len; i++) {
|
|
22
|
-
copy[i] = AXObjectUtil.deepCopy(obj[i]);
|
|
23
|
-
}
|
|
24
|
-
return copy;
|
|
25
|
-
}
|
|
26
|
-
// Handle Object
|
|
27
|
-
if (obj instanceof Object) {
|
|
28
|
-
copy = {};
|
|
29
|
-
for (const attr in obj) {
|
|
30
|
-
if (obj.hasOwnProperty(attr)) {
|
|
31
|
-
copy[attr] = AXObjectUtil.deepCopy(obj[attr]);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return copy;
|
|
35
|
-
}
|
|
36
|
-
throw new Error('Unable to copy obj! Its type isn\'t supported.');
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL29iamVjdC11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFdBQVc7QUFDWCxNQUFNLE9BQU8sWUFBWTtJQUNyQixNQUFNLENBQUMsYUFBYSxDQUFDLEdBQVE7UUFDekIsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDeEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRztRQUNmLElBQUksSUFBSSxDQUFDO1FBQ1QsbURBQW1EO1FBQ25ELElBQUksSUFBSSxJQUFJLEdBQUcsSUFBSSxRQUFRLEtBQUssT0FBTyxHQUFHLEVBQUU7WUFBRSxPQUFPLEdBQUcsQ0FBQztTQUFFO1FBQzNELGNBQWM7UUFDZCxJQUFJLEdBQUcsWUFBWSxJQUFJLEVBQUU7WUFDckIsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQztTQUNmO1FBQ0QsZUFBZTtRQUNmLElBQUksR0FBRyxZQUFZLEtBQUssRUFBRTtZQUN0QixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1YsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDNUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDM0M7WUFDRCxPQUFPLElBQUksQ0FBQztTQUNmO1FBQ0QsZ0JBQWdCO1FBQ2hCLElBQUksR0FBRyxZQUFZLE1BQU0sRUFBRTtZQUN2QixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1YsS0FBSyxNQUFNLElBQUksSUFBSSxHQUFHLEVBQUU7Z0JBQ3BCLElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztpQkFBRTthQUNuRjtZQUNELE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDdEUsQ0FBQztDQWdESiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEBkeW5hbWljXHJcbmV4cG9ydCBjbGFzcyBBWE9iamVjdFV0aWwge1xyXG4gICAgc3RhdGljIGRlZXBKU09OQ2xvbmUob2JqOiBhbnkpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBvYmogPyBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG9iaikpIDogbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgZGVlcENvcHkob2JqKSB7XHJcbiAgICAgICAgbGV0IGNvcHk7XHJcbiAgICAgICAgLy8gSGFuZGxlIHRoZSAzIHNpbXBsZSB0eXBlcywgYW5kIG51bGwgb3IgdW5kZWZpbmVkXHJcbiAgICAgICAgaWYgKG51bGwgPT0gb2JqIHx8ICdvYmplY3QnICE9PSB0eXBlb2Ygb2JqKSB7IHJldHVybiBvYmo7IH1cclxuICAgICAgICAvLyBIYW5kbGUgRGF0ZVxyXG4gICAgICAgIGlmIChvYmogaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICAgICAgICAgIGNvcHkgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgICAgICBjb3B5LnNldFRpbWUob2JqLmdldFRpbWUoKSk7XHJcbiAgICAgICAgICAgIHJldHVybiBjb3B5O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBIYW5kbGUgQXJyYXlcclxuICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAgICAgICAgY29weSA9IFtdO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gb2JqLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBjb3B5W2ldID0gQVhPYmplY3RVdGlsLmRlZXBDb3B5KG9ialtpXSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIGNvcHk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIEhhbmRsZSBPYmplY3RcclxuICAgICAgICBpZiAob2JqIGluc3RhbmNlb2YgT2JqZWN0KSB7XHJcbiAgICAgICAgICAgIGNvcHkgPSB7fTtcclxuICAgICAgICAgICAgZm9yIChjb25zdCBhdHRyIGluIG9iaikge1xyXG4gICAgICAgICAgICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShhdHRyKSkgeyBjb3B5W2F0dHJdID0gQVhPYmplY3RVdGlsLmRlZXBDb3B5KG9ialthdHRyXSk7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gY29weTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gY29weSBvYmohIEl0cyB0eXBlIGlzblxcJ3Qgc3VwcG9ydGVkLicpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHN0YXRpYyBmZXRjaFByb3Aob2JqLCBwcm9wOiBzdHJpbmcpIHtcclxuICAgIC8vICAgICBpZiAodHlwZW9mIG9iaiA9PT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgIC8vICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICBjb25zdCBpbmRleCA9IHByb3AuaW5kZXhPZignLicpO1xyXG5cclxuICAgIC8vICAgICBpZiAoaW5kZXggPiAtMSkge1xyXG4gICAgLy8gICAgICAgICByZXR1cm4gQVhPYmplY3RVdGlsLmZldGNoUHJvcChvYmpbcHJvcC5zdWJzdHJpbmcoMCwgaW5kZXgpXSwgcHJvcC5zdWJzdHIoaW5kZXggKyAxKSk7XHJcbiAgICAvLyAgICAgfVxyXG5cclxuICAgIC8vICAgICByZXR1cm4gb2JqW3Byb3BdO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIHN0YXRpYyBnZXRQcm9wQnlQYXRoKG9iaiwgcGF0aCwgZGVmYXVsdFZhbD8pIHtcclxuICAgIC8vICAgICBwYXRoID0gcGF0aFxyXG4gICAgLy8gICAgICAgICAucmVwbGFjZSgvXFxbL2csICcuJylcclxuICAgIC8vICAgICAgICAgLnJlcGxhY2UoL10vZywgJycpXHJcbiAgICAvLyAgICAgICAgIC5zcGxpdCgnLicpO1xyXG5cclxuICAgIC8vICAgICBwYXRoLmZvckVhY2goKGxldmVsKSA9PiB7XHJcbiAgICAvLyAgICAgICAgIGlmIChvYmopIHtcclxuICAgIC8vICAgICAgICAgICAgIG9iaiA9IG9ialtsZXZlbF07XHJcbiAgICAvLyAgICAgICAgIH1cclxuICAgIC8vICAgICB9KTtcclxuXHJcbiAgICAvLyAgICAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAvLyAgICAgICAgIHJldHVybiBkZWZhdWx0VmFsO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gb2JqO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIC8vIHN0YXRpYyBzZXRQcm9wQnlQYXRoKG9iaiwgcGF0aCwgdmFsdWUpIHtcclxuICAgIC8vICAgICBpZiAoT2JqZWN0KG9iaikgIT09IG9iaikgeyByZXR1cm4gb2JqOyB9IC8vIFdoZW4gb2JqIGlzIG5vdCBhbiBvYmplY3RcclxuICAgIC8vICAgICAvLyBJZiBub3QgeWV0IGFuIGFycmF5LCBnZXQgdGhlIGtleXMgZnJvbSB0aGUgc3RyaW5nLXBhdGhcclxuICAgIC8vICAgICBpZiAoIUFycmF5LmlzQXJyYXkocGF0aCkpIHsgcGF0aCA9IHBhdGgudG9TdHJpbmcoKS5tYXRjaCgvW14uW1xcXV0rL2cpIHx8IFtdOyB9XHJcbiAgICAvLyAgICAgcGF0aC5zbGljZSgwLCAtMSkucmVkdWNlKChhLCBjLCBpKSA9PiAvLyBJdGVyYXRlIGFsbCBvZiB0aGVtIGV4Y2VwdCB0aGUgbGFzdCBvbmVcclxuICAgIC8vICAgICAgICAgT2JqZWN0KGFbY10pID09PSBhW2NdIC8vIERvZXMgdGhlIGtleSBleGlzdCBhbmQgaXMgaXRzIHZhbHVlIGFuIG9iamVjdD9cclxuICAgIC8vICAgICAgICAgICAgIC8vIFllczogdGhlbiBmb2xsb3cgdGhhdCBwYXRoXHJcbiAgICAvLyAgICAgICAgICAgICA/IGFbY11cclxuICAgIC8vICAgICAgICAgICAgIC8vIE5vOiBjcmVhdGUgdGhlIGtleS4gSXMgdGhlIG5leHQga2V5IGEgcG90ZW50aWFsIGFycmF5LWluZGV4P1xyXG4gICAgLy8gICAgICAgICAgICAgOiBhW2NdID0gTWF0aC5hYnMocGF0aFtpICsgMV0pID4+IDAgPT09ICtwYXRoW2kgKyAxXVxyXG4gICAgLy8gICAgICAgICAgICAgICAgID8gW10gLy8gWWVzOiBhc3NpZ24gYSBuZXcgYXJyYXkgb2JqZWN0XHJcbiAgICAvLyAgICAgICAgICAgICAgICAgOiB7fSwgLy8gTm86IGFzc2lnbiBhIG5ldyBwbGFpbiBvYmplY3RcclxuICAgIC8vICAgICAgICAgb2JqKVtwYXRoW3BhdGgubGVuZ3RoIC0gMV1dID0gdmFsdWU7IC8vIEZpbmFsbHkgYXNzaWduIHRoZSB2YWx1ZSB0byB0aGUgbGFzdCBrZXlcclxuICAgIC8vICAgICByZXR1cm4gb2JqOyAvLyBSZXR1cm4gdGhlIHRvcC1sZXZlbCBvYmplY3QgdG8gYWxsb3cgY2hhaW5pbmdcclxuICAgIC8vIH1cclxufSJdfQ==
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/platform-browser";
|
|
4
|
-
export class AXSafePipe {
|
|
5
|
-
constructor(sanitizer) {
|
|
6
|
-
this.sanitizer = sanitizer;
|
|
7
|
-
}
|
|
8
|
-
transform(value, type) {
|
|
9
|
-
if (value == null || value == undefined || value == '')
|
|
10
|
-
return null;
|
|
11
|
-
switch (type) {
|
|
12
|
-
case 'html': return this.sanitizer.bypassSecurityTrustHtml(value);
|
|
13
|
-
case 'style': return this.sanitizer.bypassSecurityTrustStyle(value);
|
|
14
|
-
case 'script': return this.sanitizer.bypassSecurityTrustScript(value);
|
|
15
|
-
case 'url': return this.sanitizer.bypassSecurityTrustUrl(value);
|
|
16
|
-
case 'resourceUrl': return this.sanitizer.bypassSecurityTrustResourceUrl(value);
|
|
17
|
-
default: throw new Error(`Invalid safe type specified: ${type}`);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
AXSafePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXSafePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
22
|
-
AXSafePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.0", ngImport: i0, type: AXSafePipe, name: "safe" });
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: AXSafePipe, decorators: [{
|
|
24
|
-
type: Pipe,
|
|
25
|
-
args: [{
|
|
26
|
-
name: 'safe',
|
|
27
|
-
pure: true
|
|
28
|
-
}]
|
|
29
|
-
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvcmUvc3JjL2xpYi91dGlscy9zYWZlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQU9wRCxNQUFNLE9BQU8sVUFBVTtJQUV0QixZQUFzQixTQUF1QjtRQUF2QixjQUFTLEdBQVQsU0FBUyxDQUFjO0lBQUksQ0FBQztJQUUzQyxTQUFTLENBQUMsS0FBVSxFQUFFLElBQVk7UUFDeEMsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxTQUFTLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDckQsT0FBTyxJQUFJLENBQUM7UUFDYixRQUFRLElBQUksRUFBRTtZQUNiLEtBQUssTUFBTSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2xFLEtBQUssT0FBTyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BFLEtBQUssUUFBUSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHlCQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RFLEtBQUssS0FBSyxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hFLEtBQUssYUFBYSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hGLE9BQU8sQ0FBQyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLElBQUksRUFBRSxDQUFDLENBQUM7U0FDakU7SUFDRixDQUFDOzt1R0FmVyxVQUFVO3FHQUFWLFVBQVU7MkZBQVYsVUFBVTtrQkFKdEIsSUFBSTttQkFBQztvQkFDTCxJQUFJLEVBQUUsTUFBTTtvQkFDWixJQUFJLEVBQUUsSUFBSTtpQkFDViIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyLCBTYWZlSHRtbCwgU2FmZVN0eWxlLCBTYWZlU2NyaXB0LCBTYWZlVXJsLCBTYWZlUmVzb3VyY2VVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBQaXBlKHtcclxuXHRuYW1lOiAnc2FmZScsXHJcblx0cHVyZTogdHJ1ZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhTYWZlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG5cclxuXHRjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHsgfVxyXG5cclxuXHRwdWJsaWMgdHJhbnNmb3JtKHZhbHVlOiBhbnksIHR5cGU6IHN0cmluZyk6IFNhZmVIdG1sIHwgU2FmZVN0eWxlIHwgU2FmZVNjcmlwdCB8IFNhZmVVcmwgfCBTYWZlUmVzb3VyY2VVcmwge1xyXG5cdFx0aWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gdW5kZWZpbmVkIHx8IHZhbHVlID09ICcnKVxyXG5cdFx0XHRyZXR1cm4gbnVsbDtcclxuXHRcdHN3aXRjaCAodHlwZSkge1xyXG5cdFx0XHRjYXNlICdodG1sJzogcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHZhbHVlKTtcclxuXHRcdFx0Y2FzZSAnc3R5bGUnOiByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKHZhbHVlKTtcclxuXHRcdFx0Y2FzZSAnc2NyaXB0JzogcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTY3JpcHQodmFsdWUpO1xyXG5cdFx0XHRjYXNlICd1cmwnOiByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybCh2YWx1ZSk7XHJcblx0XHRcdGNhc2UgJ3Jlc291cmNlVXJsJzogcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh2YWx1ZSk7XHJcblx0XHRcdGRlZmF1bHQ6IHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzYWZlIHR5cGUgc3BlY2lmaWVkOiAke3R5cGV9YCk7XHJcblx0XHR9XHJcblx0fVxyXG59Il19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
// @dynamic
|
|
2
|
-
export class AXStringUtil {
|
|
3
|
-
static getWordBoundsAtPosition(str, position) {
|
|
4
|
-
const isSpace = (c) => /[^a-zA-Z0-9]+/i.test(c);
|
|
5
|
-
let start = position - 1;
|
|
6
|
-
while (start >= 0 && !isSpace(str[start])) {
|
|
7
|
-
start -= 1;
|
|
8
|
-
}
|
|
9
|
-
start = Math.max(0, start + 1);
|
|
10
|
-
const leftSideString = str.slice(start).match(/[a-zA-Z0-9]+/i);
|
|
11
|
-
start += leftSideString.index;
|
|
12
|
-
let end = start + leftSideString[0].length;
|
|
13
|
-
return {
|
|
14
|
-
start,
|
|
15
|
-
end
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29yZS9zcmMvbGliL3V0aWxzL3N0cmluZy11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFdBQVc7QUFDWCxNQUFNLE9BQU8sWUFBWTtJQUVyQixNQUFNLENBQUMsdUJBQXVCLENBQUMsR0FBVyxFQUFFLFFBQWdCO1FBQ3hELE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDaEQsSUFBSSxLQUFLLEdBQUcsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUV6QixPQUFPLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDdkMsS0FBSyxJQUFJLENBQUMsQ0FBQztTQUNkO1FBQ0QsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMvQixNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvRCxLQUFLLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQztRQUM5QixJQUFJLEdBQUcsR0FBRyxLQUFLLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUMzQyxPQUFPO1lBQ0gsS0FBSztZQUNMLEdBQUc7U0FDTixDQUFDO0lBQ04sQ0FBQztDQU1KIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIEFYU3RyaW5nVXRpbCB7XHJcblxyXG4gICAgc3RhdGljIGdldFdvcmRCb3VuZHNBdFBvc2l0aW9uKHN0cjogc3RyaW5nLCBwb3NpdGlvbjogbnVtYmVyKTogeyBzdGFydDogbnVtYmVyLCBlbmQ6IG51bWJlciB9IHtcclxuICAgICAgICBjb25zdCBpc1NwYWNlID0gKGMpID0+IC9bXmEtekEtWjAtOV0rL2kudGVzdChjKTtcclxuICAgICAgICBsZXQgc3RhcnQgPSBwb3NpdGlvbiAtIDE7XHJcblxyXG4gICAgICAgIHdoaWxlIChzdGFydCA+PSAwICYmICFpc1NwYWNlKHN0cltzdGFydF0pKSB7XHJcbiAgICAgICAgICAgIHN0YXJ0IC09IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN0YXJ0ID0gTWF0aC5tYXgoMCwgc3RhcnQgKyAxKTtcclxuICAgICAgICBjb25zdCBsZWZ0U2lkZVN0cmluZyA9IHN0ci5zbGljZShzdGFydCkubWF0Y2goL1thLXpBLVowLTldKy9pKTtcclxuICAgICAgICBzdGFydCArPSBsZWZ0U2lkZVN0cmluZy5pbmRleDtcclxuICAgICAgICBsZXQgZW5kID0gc3RhcnQgKyBsZWZ0U2lkZVN0cmluZ1swXS5sZW5ndGg7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgc3RhcnQsXHJcbiAgICAgICAgICAgIGVuZFxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG5cclxufSJdfQ==
|
package/lib/core.module.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./utils/safe.pipe";
|
|
3
|
-
export declare class AXCoreModule {
|
|
4
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXCoreModule, never>;
|
|
5
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AXCoreModule, [typeof i1.AXSafePipe], never, [typeof i1.AXSafePipe]>;
|
|
6
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<AXCoreModule>;
|
|
7
|
-
}
|
package/lib/dateTime/index.d.ts
DELETED
package/lib/events/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './event.service';
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { EventManager } from "@angular/platform-browser";
|
|
2
|
-
import { Observable } from "rxjs/internal/Observable";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
declare type Options = {
|
|
5
|
-
element: any;
|
|
6
|
-
keys: string;
|
|
7
|
-
};
|
|
8
|
-
export declare class AXHotkeysService {
|
|
9
|
-
private eventManager;
|
|
10
|
-
private document;
|
|
11
|
-
defaults: Partial<Options>;
|
|
12
|
-
constructor(eventManager: EventManager, document: Document);
|
|
13
|
-
addShortcut(options: Partial<Options>): Observable<unknown>;
|
|
14
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AXHotkeysService, never>;
|
|
15
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AXHotkeysService>;
|
|
16
|
-
}
|
|
17
|
-
export {};
|
package/lib/hotkeys/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './hotkeys.service';
|
package/lib/platform/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './platform.service';
|