@acorex/core 7.0.41 → 7.1.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/dateTime/src/datetime.class.d.ts +1 -1
- package/esm2022/config/src/configs.mjs +24 -0
- package/esm2022/dateTime/src/datetime.class.mjs +295 -0
- package/{esm2020 → esm2022}/dateTime/src/datetime.module.mjs +5 -5
- package/{esm2020 → esm2022}/dateTime/src/datetime.pipe.mjs +4 -4
- package/esm2022/dateTime/src/georgian.calendar.mjs +187 -0
- package/esm2022/dateTime/src/jalali.calendar.mjs +357 -0
- package/esm2022/events/src/event.service.mjs +34 -0
- package/esm2022/file/src/file-download-ref.class.mjs +13 -0
- package/esm2022/file/src/file-download-result.class.mjs +47 -0
- package/esm2022/file/src/file-upload-ref.class.mjs +13 -0
- package/esm2022/file/src/file.service.mjs +102 -0
- package/esm2022/http/src/http-result.class.mjs +25 -0
- package/{esm2020 → esm2022}/http/src/http.module.mjs +9 -9
- package/esm2022/http/src/http.service.mjs +151 -0
- package/{esm2020 → esm2022}/image/src/image.service.mjs +4 -4
- package/{esm2020 → esm2022}/pipes/src/pipes.module.mjs +5 -5
- package/esm2022/pipes/src/safe.pipe.mjs +31 -0
- package/esm2022/platform/src/platform.service.mjs +159 -0
- package/{esm2020 → esm2022}/translation/src/translation.module.mjs +5 -5
- package/esm2022/translation/src/translator.mjs +43 -0
- package/{esm2020 → esm2022}/translation/src/translator.pipe.mjs +4 -4
- package/{fesm2015 → fesm2022}/acorex-core-config.mjs +3 -4
- package/{fesm2015 → fesm2022}/acorex-core-config.mjs.map +1 -1
- package/{fesm2015 → fesm2022}/acorex-core-dateTime.mjs +88 -86
- package/{fesm2015 → fesm2022}/acorex-core-dateTime.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/acorex-core-events.mjs +4 -7
- package/fesm2022/acorex-core-events.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/acorex-core-file.mjs +15 -12
- package/{fesm2020 → fesm2022}/acorex-core-file.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/acorex-core-http.mjs +18 -12
- package/{fesm2015 → fesm2022}/acorex-core-http.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/acorex-core-image.mjs +3 -4
- package/{fesm2020 → fesm2022}/acorex-core-image.mjs.map +1 -1
- package/{fesm2015 → fesm2022}/acorex-core-pipes.mjs +8 -8
- package/{fesm2015 → fesm2022}/acorex-core-pipes.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/acorex-core-platform.mjs +35 -34
- package/{fesm2020 → fesm2022}/acorex-core-platform.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/acorex-core-translation.mjs +12 -13
- package/{fesm2020 → fesm2022}/acorex-core-translation.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/acorex-core-utils.mjs +0 -1
- package/{fesm2015 → fesm2022}/acorex-core.mjs +0 -1
- package/package.json +42 -68
- package/platform/src/platform.service.d.ts +4 -4
- package/utils/src/color-util.d.ts +2 -2
- package/esm2020/config/src/configs.mjs +0 -24
- package/esm2020/dateTime/src/datetime.class.mjs +0 -288
- package/esm2020/dateTime/src/georgian.calendar.mjs +0 -189
- package/esm2020/dateTime/src/jalali.calendar.mjs +0 -359
- package/esm2020/events/src/event.service.mjs +0 -36
- package/esm2020/file/src/file-download-ref.class.mjs +0 -12
- package/esm2020/file/src/file-download-result.class.mjs +0 -46
- package/esm2020/file/src/file-upload-ref.class.mjs +0 -12
- package/esm2020/file/src/file.service.mjs +0 -101
- package/esm2020/http/src/http-result.class.mjs +0 -21
- package/esm2020/http/src/http.service.mjs +0 -148
- package/esm2020/pipes/src/safe.pipe.mjs +0 -30
- package/esm2020/platform/src/platform.service.mjs +0 -157
- package/esm2020/translation/src/translator.mjs +0 -43
- package/fesm2015/acorex-core-events.mjs +0 -44
- package/fesm2015/acorex-core-events.mjs.map +0 -1
- package/fesm2015/acorex-core-file.mjs +0 -176
- package/fesm2015/acorex-core-file.mjs.map +0 -1
- package/fesm2015/acorex-core-http.mjs +0 -203
- package/fesm2015/acorex-core-image.mjs +0 -54
- package/fesm2015/acorex-core-image.mjs.map +0 -1
- package/fesm2015/acorex-core-platform.mjs +0 -165
- package/fesm2015/acorex-core-platform.mjs.map +0 -1
- package/fesm2015/acorex-core-translation.mjs +0 -81
- package/fesm2015/acorex-core-translation.mjs.map +0 -1
- package/fesm2015/acorex-core-utils.mjs +0 -227
- package/fesm2020/acorex-core-config.mjs +0 -32
- package/fesm2020/acorex-core-config.mjs.map +0 -1
- package/fesm2020/acorex-core-dateTime.mjs +0 -899
- package/fesm2020/acorex-core-dateTime.mjs.map +0 -1
- package/fesm2020/acorex-core-events.mjs.map +0 -1
- package/fesm2020/acorex-core-http.mjs.map +0 -1
- package/fesm2020/acorex-core-pipes.mjs +0 -54
- package/fesm2020/acorex-core-pipes.mjs.map +0 -1
- package/fesm2020/acorex-core-utils.mjs.map +0 -1
- package/fesm2020/acorex-core.mjs +0 -12
- package/fesm2020/acorex-core.mjs.map +0 -1
- /package/{esm2020 → esm2022}/acorex-core.mjs +0 -0
- /package/{esm2020 → esm2022}/config/acorex-core-config.mjs +0 -0
- /package/{esm2020 → esm2022}/config/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/dateTime/acorex-core-dateTime.mjs +0 -0
- /package/{esm2020 → esm2022}/dateTime/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/events/acorex-core-events.mjs +0 -0
- /package/{esm2020 → esm2022}/events/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/file/acorex-core-file.mjs +0 -0
- /package/{esm2020 → esm2022}/file/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/http/acorex-core-http.mjs +0 -0
- /package/{esm2020 → esm2022}/http/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/http/src/http-error.class.mjs +0 -0
- /package/{esm2020 → esm2022}/http/src/http-events.interceptor.mjs +0 -0
- /package/{esm2020 → esm2022}/http/src/http-request.class.mjs +0 -0
- /package/{esm2020 → esm2022}/image/acorex-core-image.mjs +0 -0
- /package/{esm2020 → esm2022}/image/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/pipes/acorex-core-pipes.mjs +0 -0
- /package/{esm2020 → esm2022}/pipes/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/platform/acorex-core-platform.mjs +0 -0
- /package/{esm2020 → esm2022}/platform/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/translation/acorex-core-translation.mjs +0 -0
- /package/{esm2020 → esm2022}/translation/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/acorex-core-utils.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/src/color-util.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/src/drawing-util.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/src/html-util.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/src/object-util.mjs +0 -0
- /package/{esm2020 → esm2022}/utils/src/string-util.mjs +0 -0
- /package/{fesm2015 → fesm2022}/acorex-core-utils.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/acorex-core.mjs.map +0 -0
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"acorex-core-platform.mjs","sources":["../../../../projects/acorex/core/platform/src/platform.service.ts","../../../../projects/acorex/core/platform/acorex-core-platform.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators';\r\n\r\nexport type AXPlatforms = 'Android' | 'Desktop' | 'iOS' | 'Mobile';\r\nexport type AXBrowsers =\r\n | 'Chrome'\r\n | 'Safari'\r\n | 'Edge'\r\n | 'Firefox'\r\n | 'Opera'\r\n | 'MSIE';\r\nexport type AXTechnologies = 'PWA' | 'Hybrid' | 'Electron';\r\n\r\nexport type AXScreenSizes = 'SM' | 'MD' | 'LG' | 'XL' | '2XL';\r\n\r\nconst isChrome = (win: Window): boolean => testUserAgent(win, /Chrome/i);\r\n\r\nconst isFirefox = (win: Window): boolean => testUserAgent(win, /Firefox/i);\r\n\r\nconst isEdge = (win: Window): boolean => testUserAgent(win, /Edge/i);\r\n\r\nconst isSafari = (win: Window): boolean => testUserAgent(win, /Safari/i);\r\n\r\nconst isOpera = (win: Window): boolean =>\r\n testUserAgent(win, /Opera/i) || testUserAgent(win, /OPR/i);\r\n\r\nconst isMSIE = (win: Window): boolean =>\r\n testUserAgent(win, /MSIE/i) || testUserAgent(win, /Trident/i);\r\n\r\nconst isMobileWeb = (win: Window): boolean => isMobile(win) && !isHybrid(win);\r\n\r\nconst isIpad = (win: Window) => {\r\n // iOS 12 and below\r\n if (testUserAgent(win, /iPad/i)) {\r\n return true;\r\n }\r\n\r\n // iOS 13+\r\n if (testUserAgent(win, /Macintosh/i) && isMobile(win)) {\r\n return true;\r\n }\r\n\r\n return false;\r\n};\r\n\r\nconst isIphone = (win: Window) => testUserAgent(win, /iPhone/i);\r\n\r\nconst isIOS = (win: Window) =>\r\n testUserAgent(win, /iPhone|iPod/i) || isIpad(win);\r\n\r\nconst isAndroid = (win: Window) => testUserAgent(win, /android|sink/i);\r\n\r\nconst isAndroidTablet = (win: Window) => {\r\n return isAndroid(win) && !testUserAgent(win, /mobile/i);\r\n};\r\n\r\nconst isPhablet = (win: Window) => {\r\n const width = win.innerWidth;\r\n const height = win.innerHeight;\r\n const smallest = Math.min(width, height);\r\n const largest = Math.max(width, height);\r\n\r\n return smallest > 390 && smallest < 520 && largest > 620 && largest < 800;\r\n};\r\n\r\nconst isTablet = (win: Window) => {\r\n const width = win.innerWidth;\r\n const height = win.innerHeight;\r\n const smallest = Math.min(width, height);\r\n const largest = Math.max(width, height);\r\n\r\n return (\r\n isIpad(win) ||\r\n isAndroidTablet(win) ||\r\n (smallest > 460 && smallest < 820 && largest > 780 && largest < 1400)\r\n );\r\n};\r\n\r\nconst isMobile = (win: Window) => matchMedia(win, '(any-pointer:coarse)');\r\nconst isTouch = (win: Window) => matchMedia(win, '(any-pointer:coarse)');\r\n\r\nconst isDesktop = (win: Window) => !isMobile(win);\r\n\r\nconst isHybrid = (win: Window) => isCordova(win) || isCapacitorNative(win);\r\n\r\nconst isCordova = (win: any): boolean =>\r\n !!(win['cordova'] || win['phonegap'] || win['PhoneGap']);\r\n\r\nconst isCapacitorNative = (win: any): boolean => {\r\n const capacitor = win['Capacitor'];\r\n return !!(capacitor && capacitor.isNative);\r\n};\r\n\r\nconst isElectron = (win: Window): boolean => testUserAgent(win, /electron/i);\r\n\r\nconst isPWA = (win: Window): boolean =>\r\n !!(\r\n win.matchMedia('(display-mode: standalone)').matches ||\r\n (win.navigator as any).standalone\r\n );\r\n\r\nexport const testUserAgent = (win: Window, expr: RegExp) =>\r\n expr.test(win.navigator.userAgent);\r\n\r\nconst matchMedia = (win: Window, query: string): boolean =>\r\n win.matchMedia(query).matches;\r\n\r\n\r\nconst isSMScreen = (win: Window) => matchMedia(win, '(max-width: 640px)');\r\nconst isMDScreen = (win: Window) => matchMedia(win, '(max-width: 768px)');\r\nconst isLGScreen = (win: Window) => matchMedia(win, '(max-width: 1024px)');\r\nconst isXLScreen = (win: Window) => matchMedia(win, '(max-width: 1280px)');\r\nconst is2XLScreen = (win: Window) => matchMedia(win, '(max-width: 1536px)');\r\n\r\nconst PLATFORMS_MAP: any = {\r\n Android: isAndroid,\r\n iOS: isIOS,\r\n Desktop: isDesktop,\r\n Mobile: isMobile,\r\n Touch: isTouch,\r\n Chrome: isChrome,\r\n Firefox: isFirefox,\r\n Safari: isSafari,\r\n Edge: isEdge,\r\n Opera: isOpera,\r\n Hybrid: isHybrid,\r\n PWA: isPWA,\r\n Electron: isElectron,\r\n SM: isSMScreen,\r\n MD: isMDScreen,\r\n LG: isLGScreen,\r\n XL: isXLScreen,\r\n \"2XL\": is2XLScreen,\r\n};\r\n\r\nexport class AXPlatformEvent<T extends Event = Event> {\r\n nativeEvent!: T;\r\n source!: AXPlatform;\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AXPlatform {\r\n resize: Subject<AXPlatformEvent> = new Subject<AXPlatformEvent>();\r\n click: Subject<AXPlatformEvent> = new Subject<AXPlatformEvent>();\r\n scroll: Subject<AXPlatformEvent> = new Subject<AXPlatformEvent>();\r\n\r\n isRtl(): boolean {\r\n return (\r\n document.dir == 'rtl' ||\r\n document.body.dir == 'rtl' ||\r\n document.body.style.direction == 'rtl'\r\n );\r\n }\r\n\r\n isLandscape(): boolean {\r\n return window.innerHeight < window.innerWidth;\r\n }\r\n\r\n isPortrate(): boolean {\r\n return !this.isLandscape();\r\n }\r\n\r\n is(name: AXPlatforms | AXBrowsers | AXTechnologies | AXScreenSizes): boolean {\r\n return PLATFORMS_MAP[name](window) || false;\r\n }\r\n\r\n switchDarkMode() {\r\n const _html = document.getElementsByTagName('html')[0];\r\n _html.classList.add('ax-dark');\r\n }\r\n\r\n switchLightMode() {\r\n const _html = document.getElementsByTagName('html')[0];\r\n _html.classList.remove('ax-dark');\r\n }\r\n\r\n private _setFullHeightRatio() {\r\n try {\r\n document\r\n .querySelector<HTMLElement>(':root')\r\n ?.style.setProperty('--ax-vh', window.innerHeight / 100 + 'px');\r\n } catch (error) {\r\n }\r\n }\r\n\r\n constructor() {\r\n fromEvent<UIEvent>(window, 'resize')\r\n .pipe(debounceTime(100))\r\n .pipe(distinctUntilChanged())\r\n .subscribe((e) => {\r\n this.resize.next({\r\n nativeEvent: e,\r\n source: this,\r\n });\r\n //\r\n this._setFullHeightRatio();\r\n });\r\n\r\n document.addEventListener(\r\n 'click',\r\n (e) => {\r\n this.click.next({\r\n nativeEvent: e,\r\n source: this,\r\n });\r\n },\r\n true\r\n );\r\n\r\n document.addEventListener(\r\n 'scroll',\r\n (e) => {\r\n this.scroll.next({\r\n nativeEvent: e,\r\n source: this,\r\n });\r\n },\r\n true\r\n );\r\n // init functions\r\n this._setFullHeightRatio();\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
@@ -1,81 +0,0 @@
|
|
1
|
-
import { Subject } from 'rxjs';
|
2
|
-
import merge from 'lodash-es/merge';
|
3
|
-
import * as _ from 'lodash';
|
4
|
-
import * as i0 from '@angular/core';
|
5
|
-
import { Pipe, NgModule } from '@angular/core';
|
6
|
-
|
7
|
-
// @dynamic
|
8
|
-
class AXTranslator {
|
9
|
-
static get onChange() {
|
10
|
-
return AXTranslator.dataChangeSubject.asObservable();
|
11
|
-
}
|
12
|
-
static load(lang, value) {
|
13
|
-
if (typeof value === 'object') {
|
14
|
-
if (!AXTranslator[`__data__${lang}`]) {
|
15
|
-
AXTranslator[`__data__${lang}`] = {};
|
16
|
-
}
|
17
|
-
AXTranslator[`__data__${lang}`] = merge(AXTranslator[`__data__${lang}`], value);
|
18
|
-
}
|
19
|
-
}
|
20
|
-
static use(lang) {
|
21
|
-
AXTranslator.lang = lang;
|
22
|
-
}
|
23
|
-
static get(key, arg1, arg2) {
|
24
|
-
const lang = arg1 && typeof arg1 == 'string' ? arg1 : AXTranslator.lang;
|
25
|
-
const params = arg1 && typeof arg1 == 'object' ? arg1 : arg2;
|
26
|
-
let result = _.get(AXTranslator[`__data__${lang}`], key, key);
|
27
|
-
const vars = typeof (result) == 'string' ? result === null || result === void 0 ? void 0 : result.match(this._varsRegx) : [];
|
28
|
-
if (vars === null || vars === void 0 ? void 0 : vars.length) {
|
29
|
-
vars.forEach((v) => {
|
30
|
-
var _a;
|
31
|
-
const varKey = ((_a = v.match(this._varNameRegx)) === null || _a === void 0 ? void 0 : _a.length) ? v.match(this._varNameRegx)[0] : null;
|
32
|
-
if (varKey) {
|
33
|
-
const p = _.get(params, varKey) || this.get(varKey, lang);
|
34
|
-
if (p) {
|
35
|
-
result = result.replace(v, p);
|
36
|
-
}
|
37
|
-
}
|
38
|
-
});
|
39
|
-
}
|
40
|
-
return typeof (result) == 'string' ? result : JSON.stringify(result);
|
41
|
-
}
|
42
|
-
}
|
43
|
-
AXTranslator.lang = 'en';
|
44
|
-
AXTranslator.dataChangeSubject = new Subject();
|
45
|
-
AXTranslator._varsRegx = /((\$\{[a-zA-Z_0-9\.]+\})+)/gm;
|
46
|
-
AXTranslator._varNameRegx = /[a-zA-Z_0-9\.]+/gm;
|
47
|
-
|
48
|
-
class AXTranslatorPipe {
|
49
|
-
transform(value, arg1, arg2) {
|
50
|
-
return AXTranslator.get(value, arg1, arg2);
|
51
|
-
}
|
52
|
-
}
|
53
|
-
AXTranslatorPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXTranslatorPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
54
|
-
AXTranslatorPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: AXTranslatorPipe, name: "trans" });
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXTranslatorPipe, decorators: [{
|
56
|
-
type: Pipe,
|
57
|
-
args: [{ name: 'trans', pure: true }]
|
58
|
-
}] });
|
59
|
-
|
60
|
-
class AXTranslationModule {
|
61
|
-
}
|
62
|
-
AXTranslationModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXTranslationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
63
|
-
AXTranslationModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.4", ngImport: i0, type: AXTranslationModule, declarations: [AXTranslatorPipe], exports: [AXTranslatorPipe] });
|
64
|
-
AXTranslationModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXTranslationModule });
|
65
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImport: i0, type: AXTranslationModule, decorators: [{
|
66
|
-
type: NgModule,
|
67
|
-
args: [{
|
68
|
-
imports: [],
|
69
|
-
exports: [AXTranslatorPipe],
|
70
|
-
declarations: [AXTranslatorPipe],
|
71
|
-
providers: [],
|
72
|
-
}]
|
73
|
-
}] });
|
74
|
-
|
75
|
-
/**
|
76
|
-
* Generated bundle index. Do not edit.
|
77
|
-
*/
|
78
|
-
|
79
|
-
export { AXTranslationModule, AXTranslator, AXTranslatorPipe };
|
80
|
-
//# sourceMappingURL=acorex-core-translation.mjs.map
|
81
|
-
//# sourceMappingURL=acorex-core-translation.mjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"acorex-core-translation.mjs","sources":["../../../../projects/acorex/core/translation/src/translator.ts","../../../../projects/acorex/core/translation/src/translator.pipe.ts","../../../../projects/acorex/core/translation/src/translation.module.ts","../../../../projects/acorex/core/translation/acorex-core-translation.ts"],"sourcesContent":["import { Subject, Observable } from 'rxjs';\r\nimport merge from 'lodash-es/merge';\r\nimport * as _ from 'lodash';\r\n\r\n// @dynamic\r\nexport class AXTranslator {\r\n private static lang: string = 'en';\r\n private static dataChangeSubject = new Subject<any>();\r\n private static _varsRegx = /((\\$\\{[a-zA-Z_0-9\\.]+\\})+)/gm;\r\n private static _varNameRegx = /[a-zA-Z_0-9\\.]+/gm;\r\n\r\n\r\n static get onChange(): Observable<any> {\r\n return AXTranslator.dataChangeSubject.asObservable();\r\n }\r\n\r\n public static load(lang: string, value: any) {\r\n if (typeof value === 'object') {\r\n if (!AXTranslator[`__data__${lang}`]) {\r\n AXTranslator[`__data__${lang}`] = {};\r\n }\r\n AXTranslator[`__data__${lang}`] = merge(AXTranslator[`__data__${lang}`], value);\r\n }\r\n }\r\n\r\n public static use(lang: string) {\r\n AXTranslator.lang = lang;\r\n }\r\n\r\n public static get(key: string, arg1?: object | string, arg2?: object): string {\r\n\r\n const lang = arg1 && typeof arg1 == 'string' ? arg1 : AXTranslator.lang;\r\n const params = arg1 && typeof arg1 == 'object' ? arg1 : arg2;\r\n let result = _.get(AXTranslator[`__data__${lang}`], key, key);\r\n const vars = typeof (result) == 'string' ? result?.match(this._varsRegx) : [];\r\n if (vars?.length) {\r\n vars.forEach((v:any) => {\r\n const varKey = v.match(this._varNameRegx)?.length ? v.match(this._varNameRegx)[0] : null;\r\n if (varKey) {\r\n const p = _.get(params, varKey) || this.get(varKey, lang);\r\n if (p) {\r\n result = result.replace(v, p);\r\n }\r\n }\r\n })\r\n }\r\n return typeof (result) == 'string' ? result : JSON.stringify(result);\r\n }\r\n}","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { AXTranslator } from './translator';\r\n\r\n@Pipe({ name: 'trans', pure: true })\r\nexport class AXTranslatorPipe implements PipeTransform {\r\n transform(value: string, arg1?: object | string, arg2?: object): string {\r\n return AXTranslator.get(value, arg1, arg2);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { AXTranslatorPipe } from './translator.pipe';\r\n\r\n@NgModule({\r\n imports: [],\r\n exports: [AXTranslatorPipe],\r\n declarations: [AXTranslatorPipe],\r\n providers: [],\r\n})\r\nexport class AXTranslationModule {\r\n \r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
@@ -1,227 +0,0 @@
|
|
1
|
-
import tinycolor from 'tinycolor2';
|
2
|
-
import tinygradient from 'tinygradient';
|
3
|
-
|
4
|
-
// @dynamic
|
5
|
-
class AXObjectUtil {
|
6
|
-
static deepJSONClone(obj) {
|
7
|
-
return obj ? JSON.parse(JSON.stringify(obj)) : null;
|
8
|
-
}
|
9
|
-
static deepCopy(obj) {
|
10
|
-
let copy;
|
11
|
-
// Handle the 3 simple types, and null or undefined
|
12
|
-
if (null == obj || 'object' !== typeof obj) {
|
13
|
-
return obj;
|
14
|
-
}
|
15
|
-
// Handle Date
|
16
|
-
if (obj instanceof Date) {
|
17
|
-
copy = new Date();
|
18
|
-
copy.setTime(obj.getTime());
|
19
|
-
return copy;
|
20
|
-
}
|
21
|
-
// Handle Array
|
22
|
-
if (obj instanceof Array) {
|
23
|
-
copy = [];
|
24
|
-
for (let i = 0, len = obj.length; i < len; i++) {
|
25
|
-
copy[i] = AXObjectUtil.deepCopy(obj[i]);
|
26
|
-
}
|
27
|
-
return copy;
|
28
|
-
}
|
29
|
-
// Handle Object
|
30
|
-
if (obj instanceof Object) {
|
31
|
-
copy = {};
|
32
|
-
for (const attr in obj) {
|
33
|
-
if (obj.hasOwnProperty(attr)) {
|
34
|
-
copy[attr] = AXObjectUtil.deepCopy(obj[attr]);
|
35
|
-
}
|
36
|
-
}
|
37
|
-
return copy;
|
38
|
-
}
|
39
|
-
throw new Error('Unable to copy obj! Its type isn\'t supported.');
|
40
|
-
}
|
41
|
-
}
|
42
|
-
|
43
|
-
// @dynamic
|
44
|
-
class AXDrawingUtil {
|
45
|
-
static collision(a, b) {
|
46
|
-
const ac = a.getBoundingClientRect();
|
47
|
-
const bc = b.getBoundingClientRect();
|
48
|
-
if (ac.left < bc.left + bc.width && ac.left + ac.width > bc.left &&
|
49
|
-
ac.top < bc.top + bc.height && ac.top + ac.height > bc.top) {
|
50
|
-
return true;
|
51
|
-
}
|
52
|
-
else {
|
53
|
-
return false;
|
54
|
-
}
|
55
|
-
}
|
56
|
-
static isInElementBound(pos, element) {
|
57
|
-
const elBound = element.getBoundingClientRect();
|
58
|
-
return AXDrawingUtil.isInRecPoint(pos, {
|
59
|
-
left: elBound.x,
|
60
|
-
width: elBound.width,
|
61
|
-
top: elBound.y,
|
62
|
-
height: elBound.height
|
63
|
-
});
|
64
|
-
}
|
65
|
-
static isInRecPoint(pos, rec) {
|
66
|
-
return pos.x >= rec.left && pos.x <= (rec.left + rec.width) && pos.y >= rec.top && (pos.y <= (rec.top + rec.height));
|
67
|
-
}
|
68
|
-
static convertRemToPixels(rem) {
|
69
|
-
return rem * parseFloat(getComputedStyle(document.documentElement).fontSize);
|
70
|
-
}
|
71
|
-
}
|
72
|
-
|
73
|
-
// @dynamic
|
74
|
-
class AXStringUtil {
|
75
|
-
static getWordBoundsAtPosition(str, position) {
|
76
|
-
const isSpace = (c) => /[^a-zA-Z0-9]+/i.test(c);
|
77
|
-
let start = position - 1;
|
78
|
-
while (start >= 0 && !isSpace(str[start])) {
|
79
|
-
start -= 1;
|
80
|
-
}
|
81
|
-
start = Math.max(0, start + 1);
|
82
|
-
const leftSideString = str.slice(start).match(/[a-zA-Z0-9]+/i);
|
83
|
-
start += leftSideString.index;
|
84
|
-
let end = start + leftSideString[0].length;
|
85
|
-
return {
|
86
|
-
start,
|
87
|
-
end
|
88
|
-
};
|
89
|
-
}
|
90
|
-
}
|
91
|
-
|
92
|
-
class AXColorUtil {
|
93
|
-
static to(color, mode) {
|
94
|
-
const _color = tinycolor(color);
|
95
|
-
switch (mode) {
|
96
|
-
case 'rgba':
|
97
|
-
;
|
98
|
-
return _color.toRgb();
|
99
|
-
case 'hsla':
|
100
|
-
return _color.toHsl();
|
101
|
-
case 'hsva':
|
102
|
-
return _color.toHsv();
|
103
|
-
default:
|
104
|
-
return _color.toHex();
|
105
|
-
}
|
106
|
-
}
|
107
|
-
;
|
108
|
-
static toString(color, mode = null) {
|
109
|
-
const _color = tinycolor(color);
|
110
|
-
switch (mode) {
|
111
|
-
case 'rgba':
|
112
|
-
return _color.toRgbString();
|
113
|
-
case 'hsla':
|
114
|
-
return _color.toHslString();
|
115
|
-
case 'hsva':
|
116
|
-
return _color.toHsvString();
|
117
|
-
case 'hsva':
|
118
|
-
return _color.toHsvString();
|
119
|
-
case 'hex':
|
120
|
-
{
|
121
|
-
const rgba = _color.toRgb();
|
122
|
-
return rgba.a != 1 ? _color.toHex8String() : _color.toHexString();
|
123
|
-
}
|
124
|
-
default:
|
125
|
-
{
|
126
|
-
if (typeof color == 'string') {
|
127
|
-
if (color.toLowerCase().startsWith("#"))
|
128
|
-
return this.toString(color, "hex");
|
129
|
-
else
|
130
|
-
return this.toString(color, "rgba");
|
131
|
-
}
|
132
|
-
else {
|
133
|
-
return this.toString(color, "rgba");
|
134
|
-
}
|
135
|
-
}
|
136
|
-
}
|
137
|
-
}
|
138
|
-
;
|
139
|
-
static isValid(color) {
|
140
|
-
const _color = tinycolor(color);
|
141
|
-
return _color.isValid();
|
142
|
-
}
|
143
|
-
;
|
144
|
-
static mix(baseColor, hex, percentage) {
|
145
|
-
return tinycolor.mix(baseColor, hex, percentage).toString('rgb');
|
146
|
-
}
|
147
|
-
static multiply(color1, color2) {
|
148
|
-
let rgb1 = tinycolor(color1).toRgb();
|
149
|
-
let rgb2 = tinycolor(color2).toRgb();
|
150
|
-
rgb1.b = Math.floor(rgb1.b * rgb2.b / 255);
|
151
|
-
rgb1.g = Math.floor(rgb1.g * rgb2.g / 255);
|
152
|
-
rgb1.r = Math.floor(rgb1.r * rgb2.r / 255);
|
153
|
-
return tinycolor('rgb ' + rgb1.r + ' ' + rgb1.g + ' ' + rgb1.b).toString('rgb');
|
154
|
-
}
|
155
|
-
static contrastToWhite(color) {
|
156
|
-
return tinycolor.readability("#fff", color);
|
157
|
-
}
|
158
|
-
;
|
159
|
-
static lighten(hex, percentage) {
|
160
|
-
return tinycolor(hex).lighten(percentage);
|
161
|
-
}
|
162
|
-
static darken(hex, percentage) {
|
163
|
-
return tinycolor(hex).darken(percentage);
|
164
|
-
}
|
165
|
-
static brighten(hex, percentage) {
|
166
|
-
return tinycolor(hex).brighten(percentage);
|
167
|
-
}
|
168
|
-
static saturate(hex, percentage) {
|
169
|
-
return tinycolor(hex).saturate(percentage);
|
170
|
-
}
|
171
|
-
static desaturate(hex, percentage) {
|
172
|
-
return tinycolor(hex).getLuminance();
|
173
|
-
}
|
174
|
-
static equal(color1, color2) {
|
175
|
-
return tinycolor.equals(color1, color2);
|
176
|
-
}
|
177
|
-
static gradient(values) {
|
178
|
-
return tinygradient([...values]);
|
179
|
-
}
|
180
|
-
static xyToRgb(vX, vY) {
|
181
|
-
vY = vY || 0.00000000001;
|
182
|
-
const Y = 1;
|
183
|
-
const X = (Y / vY) * vX;
|
184
|
-
const Z = (Y / vY) * (1 - vX - vY);
|
185
|
-
// Convert to RGB using Wide RGB D65 conversion.
|
186
|
-
let rgb = [
|
187
|
-
X * 1.656492 - Y * 0.354851 - Z * 0.255038,
|
188
|
-
-X * 0.707196 + Y * 1.655397 + Z * 0.036152,
|
189
|
-
X * 0.051713 - Y * 0.121364 + Z * 1.011530
|
190
|
-
];
|
191
|
-
// Apply reverse gamma correction.
|
192
|
-
rgb = rgb.map(x => x <= 0.0031308 ? 12.92 * x : (1.0 + 0.055) * Math.pow(x, 1.0 / 2.4) - 0.055);
|
193
|
-
// Bring all negative components to zero.
|
194
|
-
rgb = rgb.map(x => Math.max(0, x));
|
195
|
-
// If one component is greater than 1, weight components by that value.
|
196
|
-
const max = Math.max(...rgb);
|
197
|
-
if (max > 1) {
|
198
|
-
rgb = rgb.map(x => x / max);
|
199
|
-
}
|
200
|
-
rgb = rgb.map(x => Math.round(x * 255));
|
201
|
-
return 'rgb(' + rgb.join(',') + ')';
|
202
|
-
}
|
203
|
-
}
|
204
|
-
|
205
|
-
// @dynamic
|
206
|
-
class AXHtmlUtil {
|
207
|
-
static focusElement(element) {
|
208
|
-
const list = ['button', 'input', '[href]', 'select', 'textarea', '[tabindex]'].map(c => c + ':not([tabindex="-1"])');
|
209
|
-
const focusable = element.querySelector(list.join(', '));
|
210
|
-
if (focusable) {
|
211
|
-
focusable.focus();
|
212
|
-
return focusable;
|
213
|
-
}
|
214
|
-
return null;
|
215
|
-
}
|
216
|
-
static hasFocus(element) {
|
217
|
-
return element.matches(':focus-within') || element.matches(':focus');
|
218
|
-
}
|
219
|
-
}
|
220
|
-
|
221
|
-
/**
|
222
|
-
* Generated bundle index. Do not edit.
|
223
|
-
*/
|
224
|
-
|
225
|
-
export { AXColorUtil, AXDrawingUtil, AXHtmlUtil, AXObjectUtil, AXStringUtil };
|
226
|
-
//# sourceMappingURL=acorex-core-utils.mjs.map
|
227
|
-
//# sourceMappingURL=acorex-core-utils.mjs.map
|
@@ -1,32 +0,0 @@
|
|
1
|
-
import { set, merge, get } from 'lodash-es';
|
2
|
-
import { Subject } from 'rxjs';
|
3
|
-
|
4
|
-
// @dynamic
|
5
|
-
class AXConfig {
|
6
|
-
static get onChange() {
|
7
|
-
return AXConfig.dataChangeSubject.asObservable();
|
8
|
-
}
|
9
|
-
static set(arg1, arg2) {
|
10
|
-
if (arg1 && typeof arg1 == 'string') {
|
11
|
-
set(AXConfig.dataModel, arg1, arg2);
|
12
|
-
AXConfig.dataChangeSubject.next(AXConfig.dataModel);
|
13
|
-
}
|
14
|
-
if (arg1 && typeof arg1 == 'object') {
|
15
|
-
merge(AXConfig.dataModel, arg1);
|
16
|
-
AXConfig.dataChangeSubject.next(AXConfig.dataModel);
|
17
|
-
}
|
18
|
-
}
|
19
|
-
static get(path, defaultValue) {
|
20
|
-
return get(AXConfig.dataModel, path, defaultValue);
|
21
|
-
}
|
22
|
-
}
|
23
|
-
AXConfig.dataModel = {};
|
24
|
-
AXConfig.dataChangeSubject = new Subject();
|
25
|
-
|
26
|
-
/**
|
27
|
-
* Generated bundle index. Do not edit.
|
28
|
-
*/
|
29
|
-
|
30
|
-
export { AXConfig };
|
31
|
-
//# sourceMappingURL=acorex-core-config.mjs.map
|
32
|
-
//# sourceMappingURL=acorex-core-config.mjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"acorex-core-config.mjs","sources":["../../../../projects/acorex/core/config/src/configs.ts","../../../../projects/acorex/core/config/acorex-core-config.ts"],"sourcesContent":["import { get, set, merge } from 'lodash-es';\r\nimport { Subject, Observable } from 'rxjs';\r\n\r\n// @dynamic\r\nexport class AXConfig {\r\n private static dataModel: any = {};\r\n private static dataChangeSubject = new Subject<any>();\r\n\r\n static get onChange(): Observable<any> {\r\n return AXConfig.dataChangeSubject.asObservable();\r\n }\r\n\r\n static set(config: any): void;\r\n static set(path: string, value?: any): void;\r\n static set(arg1?: any, arg2?: any): void {\r\n if (arg1 && typeof arg1 == 'string') {\r\n set(AXConfig.dataModel, arg1, arg2);\r\n AXConfig.dataChangeSubject.next(AXConfig.dataModel);\r\n }\r\n if (arg1 && typeof arg1 == 'object') {\r\n merge(AXConfig.dataModel, arg1);\r\n AXConfig.dataChangeSubject.next(AXConfig.dataModel);\r\n }\r\n }\r\n\r\n static get(path: string, defaultValue?: any): any {\r\n return get(AXConfig.dataModel, path, defaultValue);\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAGA;MACa,QAAQ,CAAA;AAInB,IAAA,WAAW,QAAQ,GAAA;AACjB,QAAA,OAAO,QAAQ,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;KAClD;AAID,IAAA,OAAO,GAAG,CAAC,IAAU,EAAE,IAAU,EAAA;AAC/B,QAAA,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,QAAQ,EAAE;YACnC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACpC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACrD,SAAA;AACD,QAAA,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,QAAQ,EAAE;AACnC,YAAA,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAChC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACrD,SAAA;KACF;AAED,IAAA,OAAO,GAAG,CAAC,IAAY,EAAE,YAAkB,EAAA;QACzC,OAAO,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;KACpD;;AAtBc,QAAS,CAAA,SAAA,GAAQ,EAAE,CAAC;AACpB,QAAA,CAAA,iBAAiB,GAAG,IAAI,OAAO,EAAO;;ACNvD;;AAEG;;;;"}
|