@acorex/core 19.12.0 → 19.13.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/date-time/index.d.ts +5 -5
- package/date-time/lib/calendar.service.d.ts +8 -3
- package/date-time/lib/dateTime.config.d.ts +1 -1
- package/date-time/lib/datetime.pipe.d.ts +2 -1
- package/date-time/lib/{datetime.class.d.ts → datetime.types.d.ts} +2 -2
- package/date-time/lib/formatters/date.formatter.d.ts +12 -0
- package/date-time/lib/formatters/{datetime-formatter.d.ts → datetime.formatter.d.ts} +3 -1
- package/date-time/lib/formatters/time.formatter.d.ts +12 -0
- package/date-time/lib/{georgian.calendar.d.ts → gregorian.calendar.d.ts} +2 -2
- package/date-time/lib/{jalali.calendar.d.ts → solar-hijri.calendar.d.ts} +8 -8
- package/events/index.d.ts +0 -1
- package/fesm2022/acorex-core-components.mjs +3 -3
- package/fesm2022/acorex-core-config.mjs +3 -3
- package/fesm2022/acorex-core-date-time.mjs +282 -119
- package/fesm2022/acorex-core-date-time.mjs.map +1 -1
- package/fesm2022/acorex-core-events.mjs +4 -10
- package/fesm2022/acorex-core-events.mjs.map +1 -1
- package/fesm2022/acorex-core-file.mjs +10 -10
- package/fesm2022/acorex-core-format.mjs +78 -63
- package/fesm2022/acorex-core-format.mjs.map +1 -1
- package/fesm2022/acorex-core-image.mjs +3 -3
- package/fesm2022/acorex-core-locale-en-AU.profile-BW-_9tgT.mjs +64 -0
- package/fesm2022/acorex-core-locale-en-AU.profile-BW-_9tgT.mjs.map +1 -0
- package/fesm2022/acorex-core-locale.mjs +341 -0
- package/fesm2022/acorex-core-locale.mjs.map +1 -0
- package/fesm2022/acorex-core-network.mjs +3 -3
- package/fesm2022/acorex-core-pipes.mjs +3 -3
- package/fesm2022/acorex-core-platform.mjs +3 -3
- package/fesm2022/acorex-core-storage.mjs +9 -9
- package/fesm2022/acorex-core-translation.mjs +246 -206
- package/fesm2022/acorex-core-translation.mjs.map +1 -1
- package/fesm2022/acorex-core-utils.mjs +143 -18
- package/fesm2022/acorex-core-utils.mjs.map +1 -1
- package/fesm2022/acorex-core-validation.mjs +40 -40
- package/format/index.d.ts +2 -2
- package/format/lib/format.directive.d.ts +1 -1
- package/format/lib/format.module.d.ts +3 -3
- package/format/lib/format.service.d.ts +8 -7
- package/locale/README.md +3 -0
- package/locale/index.d.ts +8 -0
- package/locale/lib/formatters/currency.formatter.d.ts +10 -0
- package/locale/lib/locale-profile-provider.service.d.ts +24 -0
- package/locale/lib/locale.config.d.ts +5 -0
- package/locale/lib/locale.module.d.ts +7 -0
- package/locale/lib/locale.service.d.ts +20 -0
- package/locale/lib/locale.types.d.ts +61 -0
- package/locale/lib/profiles/en-AU.profile.d.ts +2 -0
- package/locale/lib/profiles/en-US.profile.d.ts +2 -0
- package/locale/lib/profiles/fa-IR.profile.d.ts +2 -0
- package/package.json +5 -1
- package/translation/index.d.ts +1 -1
- package/translation/lib/translation-loader.service.d.ts +20 -0
- package/translation/lib/translation.config.d.ts +19 -6
- package/translation/lib/translation.loader.d.ts +2 -2
- package/translation/lib/translation.parser.d.ts +7 -0
- package/translation/lib/translation.resolver.d.ts +9 -0
- package/translation/lib/translation.service.d.ts +12 -31
- package/translation/lib/translation.types.d.ts +8 -2
- package/translation/lib/translator.pipe.d.ts +0 -2
- package/types/README.md +2 -2
- package/utils/index.d.ts +6 -5
- package/utils/lib/execution.utils.d.ts +33 -0
- package/utils/lib/string.utils.d.ts +4 -0
- package/events/lib/event.type.d.ts +0 -5
- package/i18n/en/common.json +0 -191
- package/i18n/fa/common.json +0 -190
- package/utils/lib/string-util.d.ts +0 -6
- /package/date-time/lib/formatters/{time-duration-formatter.d.ts → time-duration.formatter.d.ts} +0 -0
- /package/date-time/lib/formatters/{timeleft-formatter.d.ts → timeleft.formatter.d.ts} +0 -0
- /package/format/lib/formatters/{number-formatter.d.ts → number.formatter.d.ts} +0 -0
- /package/format/lib/formatters/{string-formatter.d.ts → string.formatter.d.ts} +0 -0
- /package/utils/lib/{color-util.d.ts → color.utils.d.ts} +0 -0
- /package/utils/lib/{drawing-util.d.ts → drawing.utils.d.ts} +0 -0
- /package/utils/lib/{html-util.d.ts → html-utils.d.ts} +0 -0
- /package/utils/lib/{auto-unsubscribe.d.ts → lifecycle-helpers.utils.d.ts} +0 -0
@@ -0,0 +1,341 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { InjectionToken, inject, Injectable, signal, NgModule } from '@angular/core';
|
3
|
+
import cloneDeep from 'lodash/cloneDeep';
|
4
|
+
import merge from 'lodash/merge';
|
5
|
+
import set from 'lodash/set';
|
6
|
+
import { toObservable } from '@angular/core/rxjs-interop';
|
7
|
+
import * as i1 from '@acorex/core/format';
|
8
|
+
import { AXFormatModule } from '@acorex/core/format';
|
9
|
+
|
10
|
+
const AX_LOCALE_CONFIG = new InjectionToken('AX_LOCALE_CONFIG', {
|
11
|
+
providedIn: 'root',
|
12
|
+
factory: () => {
|
13
|
+
return {
|
14
|
+
default: 'en-US',
|
15
|
+
};
|
16
|
+
},
|
17
|
+
});
|
18
|
+
|
19
|
+
const AX_LOCALE_PROFILE_PROVIDERS = new InjectionToken('AX_LOCALE_PROFILE_PROVIDERS', {
|
20
|
+
providedIn: 'root',
|
21
|
+
factory: () => [new AXLocaleProfileProviderDefault()],
|
22
|
+
});
|
23
|
+
// ✅ Lazy-loaded default provider
|
24
|
+
class AXLocaleProfileProviderDefault {
|
25
|
+
async provide() {
|
26
|
+
return {
|
27
|
+
'en-AU': () => import('./acorex-core-locale-en-AU.profile-BW-_9tgT.mjs').then(m => m.AXAURegionalConfig),
|
28
|
+
'en-US': () => Promise.resolve().then(function () { return enUS_profile; }).then(m => m.AXUSLocaleProfile),
|
29
|
+
'fa-IR': () => Promise.resolve().then(function () { return faIR_profile; }).then(m => m.AXIRLocaleProfile),
|
30
|
+
};
|
31
|
+
}
|
32
|
+
}
|
33
|
+
class AXLocaleProfileProviderService {
|
34
|
+
constructor() {
|
35
|
+
this.providers = inject(AX_LOCALE_PROFILE_PROVIDERS);
|
36
|
+
this.registry = new Map();
|
37
|
+
this.resolvedCache = new Map();
|
38
|
+
this.isInitialized = false;
|
39
|
+
}
|
40
|
+
async init() {
|
41
|
+
if (this.isInitialized)
|
42
|
+
return;
|
43
|
+
for (const provider of this.providers) {
|
44
|
+
const result = await provider.provide();
|
45
|
+
for (const [localeCode, loaderFn] of Object.entries(result)) {
|
46
|
+
if (typeof loaderFn === 'function') {
|
47
|
+
this.registry.set(localeCode, async () => {
|
48
|
+
const profile = await loaderFn();
|
49
|
+
return profile;
|
50
|
+
});
|
51
|
+
}
|
52
|
+
else {
|
53
|
+
console.warn(`[AXLocaleService] Profile for "${localeCode}" is not a function. Skipped.`);
|
54
|
+
}
|
55
|
+
}
|
56
|
+
}
|
57
|
+
this.isInitialized = true;
|
58
|
+
}
|
59
|
+
async getList() {
|
60
|
+
await this.init();
|
61
|
+
const profiles = [];
|
62
|
+
for (const localeCode of this.registry.keys()) {
|
63
|
+
const profile = await this.getByLocale(localeCode);
|
64
|
+
if (profile)
|
65
|
+
profiles.push(profile);
|
66
|
+
}
|
67
|
+
return profiles;
|
68
|
+
}
|
69
|
+
async getByLocale(localeCode) {
|
70
|
+
await this.init();
|
71
|
+
// If already loaded, return from cache
|
72
|
+
if (this.resolvedCache.has(localeCode)) {
|
73
|
+
return this.resolvedCache.get(localeCode);
|
74
|
+
}
|
75
|
+
// Otherwise, try to load it
|
76
|
+
const loader = this.registry.get(localeCode);
|
77
|
+
if (!loader) {
|
78
|
+
console.warn(`[AXLocaleService] No profile loader found for locale: "${localeCode}"`);
|
79
|
+
return undefined;
|
80
|
+
}
|
81
|
+
const profile = await loader();
|
82
|
+
this.resolvedCache.set(localeCode, profile);
|
83
|
+
return profile;
|
84
|
+
}
|
85
|
+
async reload() {
|
86
|
+
this.registry.clear();
|
87
|
+
this.resolvedCache.clear();
|
88
|
+
this.isInitialized = false;
|
89
|
+
await this.init();
|
90
|
+
}
|
91
|
+
has(localeCode) {
|
92
|
+
return this.registry.has(localeCode);
|
93
|
+
}
|
94
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleProfileProviderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
95
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleProfileProviderService, providedIn: 'root' }); }
|
96
|
+
}
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleProfileProviderService, decorators: [{
|
98
|
+
type: Injectable,
|
99
|
+
args: [{
|
100
|
+
providedIn: 'root',
|
101
|
+
}]
|
102
|
+
}] });
|
103
|
+
|
104
|
+
var AXLocaleEvents;
|
105
|
+
(function (AXLocaleEvents) {
|
106
|
+
AXLocaleEvents["AXLocaleChanged"] = "AX_LOCALE_CHANGED";
|
107
|
+
AXLocaleEvents["AXLocaleLoaded"] = "AX_LOCALE_LOADED";
|
108
|
+
//
|
109
|
+
AXLocaleEvents["AXCalendarChanged"] = "AX_CALENDAR_CHANGED";
|
110
|
+
//
|
111
|
+
AXLocaleEvents["AXLanguageChanged"] = "AX_LANGUAGE_CHANGED";
|
112
|
+
AXLocaleEvents["AXLanguageLoaded"] = "AX_LANGUAGE_LOADED";
|
113
|
+
})(AXLocaleEvents || (AXLocaleEvents = {}));
|
114
|
+
|
115
|
+
const AXUSLocaleProfile = {
|
116
|
+
localeInfo: {
|
117
|
+
code: 'en-US',
|
118
|
+
language: 'en',
|
119
|
+
region: 'US',
|
120
|
+
timezone: 'America/New_York',
|
121
|
+
},
|
122
|
+
calendar: {
|
123
|
+
system: 'gregorian',
|
124
|
+
week: {
|
125
|
+
startsOn: 0, // Sunday
|
126
|
+
weekends: [0, 6], // Sunday + Saturday
|
127
|
+
},
|
128
|
+
clock: {
|
129
|
+
format24Hour: false,
|
130
|
+
},
|
131
|
+
},
|
132
|
+
formats: {
|
133
|
+
date: {
|
134
|
+
short: 'MM/DD/YY',
|
135
|
+
medium: 'MMM DD, YYYY',
|
136
|
+
long: 'MMMM DD, YYYY',
|
137
|
+
full: 'dddd, MMMM DD, YYYY',
|
138
|
+
},
|
139
|
+
time: {
|
140
|
+
short: 'hh:mm A',
|
141
|
+
medium: 'hh:mm:ss A',
|
142
|
+
long: 'hh:mm:ss A Z',
|
143
|
+
full: 'hh:mm:ss A ZZZZ',
|
144
|
+
},
|
145
|
+
datetime: {
|
146
|
+
short: 'MM/DD/YY hh:mm A',
|
147
|
+
medium: 'MMM DD, YYYY hh:mm:ss A',
|
148
|
+
long: 'MMMM DD, YYYY hh:mm:ss A Z',
|
149
|
+
full: 'dddd, MMMM DD, YYYY hh:mm:ss A ZZZZ',
|
150
|
+
},
|
151
|
+
numbers: {
|
152
|
+
decimalPattern: '1,000.00',
|
153
|
+
currency: {
|
154
|
+
code: 'USD',
|
155
|
+
},
|
156
|
+
},
|
157
|
+
contacts: {
|
158
|
+
phone: '(000) 000-0000',
|
159
|
+
postalCode: '00000',
|
160
|
+
},
|
161
|
+
},
|
162
|
+
units: {
|
163
|
+
temperature: 'fahrenheit',
|
164
|
+
distance: 'miles',
|
165
|
+
weight: 'pounds',
|
166
|
+
volume: 'gallons',
|
167
|
+
speed: 'mph',
|
168
|
+
area: 'square-feet',
|
169
|
+
},
|
170
|
+
i18nMeta: {
|
171
|
+
rtl: false,
|
172
|
+
fallbackLocales: ['en-US'],
|
173
|
+
supportedLanguages: ['en-US'],
|
174
|
+
},
|
175
|
+
};
|
176
|
+
|
177
|
+
var enUS_profile = /*#__PURE__*/Object.freeze({
|
178
|
+
__proto__: null,
|
179
|
+
AXUSLocaleProfile: AXUSLocaleProfile
|
180
|
+
});
|
181
|
+
|
182
|
+
const AXIRLocaleProfile = {
|
183
|
+
localeInfo: {
|
184
|
+
code: 'fa-IR',
|
185
|
+
language: 'fa',
|
186
|
+
region: 'IR',
|
187
|
+
timezone: 'Asia/Tehran',
|
188
|
+
},
|
189
|
+
calendar: {
|
190
|
+
system: 'solar-hijri',
|
191
|
+
week: {
|
192
|
+
startsOn: 6, // Saturday
|
193
|
+
weekends: [5], // Friday
|
194
|
+
},
|
195
|
+
clock: {
|
196
|
+
format24Hour: true,
|
197
|
+
},
|
198
|
+
},
|
199
|
+
formats: {
|
200
|
+
date: {
|
201
|
+
short: 'YY/MM/DD',
|
202
|
+
medium: 'YYYY/MM/DD',
|
203
|
+
long: 'dddd، D MMMM YYYY',
|
204
|
+
full: 'dddd، D MMMM YYYY',
|
205
|
+
},
|
206
|
+
time: {
|
207
|
+
short: 'HH:mm',
|
208
|
+
medium: 'HH:mm:ss',
|
209
|
+
long: 'HH:mm:ss Z',
|
210
|
+
full: 'HH:mm:ss ZZZZ',
|
211
|
+
},
|
212
|
+
datetime: {
|
213
|
+
short: 'YY/MM/DD HH:mm',
|
214
|
+
medium: 'YYYY/MM/DD HH:mm:ss',
|
215
|
+
long: 'dddd، D MMMM YYYY HH:mm:ss Z',
|
216
|
+
full: 'dddd، D MMMM YYYY HH:mm:ss ZZZZ',
|
217
|
+
},
|
218
|
+
numbers: {
|
219
|
+
decimalPattern: '1٬000٫00',
|
220
|
+
currency: {
|
221
|
+
code: 'IRR',
|
222
|
+
},
|
223
|
+
},
|
224
|
+
contacts: {
|
225
|
+
phone: '09XX XXX XXXX',
|
226
|
+
postalCode: 'XXXXX-XXXXX',
|
227
|
+
},
|
228
|
+
},
|
229
|
+
units: {
|
230
|
+
temperature: 'celsius',
|
231
|
+
distance: 'kilometers',
|
232
|
+
weight: 'kilograms',
|
233
|
+
volume: 'liters',
|
234
|
+
speed: 'km/h',
|
235
|
+
area: 'square-meters',
|
236
|
+
},
|
237
|
+
i18nMeta: {
|
238
|
+
rtl: true,
|
239
|
+
fallbackLocales: ['en-IR'],
|
240
|
+
supportedLanguages: ['fa-IR', 'en-IR'],
|
241
|
+
},
|
242
|
+
};
|
243
|
+
|
244
|
+
var faIR_profile = /*#__PURE__*/Object.freeze({
|
245
|
+
__proto__: null,
|
246
|
+
AXIRLocaleProfile: AXIRLocaleProfile
|
247
|
+
});
|
248
|
+
|
249
|
+
class AXLocaleService {
|
250
|
+
async setProfile(localeCode) {
|
251
|
+
const profile = await this.provider.getByLocale(localeCode);
|
252
|
+
if (profile) {
|
253
|
+
this.originalProfile = cloneDeep(profile);
|
254
|
+
this._activeProfile.set(cloneDeep(profile));
|
255
|
+
}
|
256
|
+
else {
|
257
|
+
console.warn(`[AXLocaleService] Locale not found: ${localeCode}`);
|
258
|
+
}
|
259
|
+
}
|
260
|
+
/**
|
261
|
+
*
|
262
|
+
*/
|
263
|
+
constructor() {
|
264
|
+
this.provider = inject(AXLocaleProfileProviderService);
|
265
|
+
this.config = inject(AX_LOCALE_CONFIG);
|
266
|
+
this._activeProfile = signal(AXUSLocaleProfile);
|
267
|
+
this.activeProfile = this._activeProfile.asReadonly();
|
268
|
+
this.profileChanged$ = toObservable(this._activeProfile);
|
269
|
+
this.originalProfile = cloneDeep(AXUSLocaleProfile);
|
270
|
+
this.setProfile(this.config.default);
|
271
|
+
}
|
272
|
+
apply(arg1, arg2) {
|
273
|
+
const current = this.activeProfile();
|
274
|
+
if (!current) {
|
275
|
+
console.warn('[AXLocaleService] No active profile found');
|
276
|
+
return;
|
277
|
+
}
|
278
|
+
;
|
279
|
+
const updated = cloneDeep(current);
|
280
|
+
if (typeof arg1 === 'string' && arg2 !== undefined) {
|
281
|
+
// Overload: updateProfile('formats.date.full', 'YYYY-MM-DD')
|
282
|
+
set(updated, arg1, arg2);
|
283
|
+
}
|
284
|
+
else if (typeof arg1 === 'object') {
|
285
|
+
// Overload: updateProfile({ formats: { date: { short: '...' } } })
|
286
|
+
merge(updated, arg1);
|
287
|
+
}
|
288
|
+
else {
|
289
|
+
console.warn('[AXLocaleService] Invalid arguments passed to updateProfile()');
|
290
|
+
return;
|
291
|
+
}
|
292
|
+
}
|
293
|
+
reset() {
|
294
|
+
if (this.originalProfile) {
|
295
|
+
this._activeProfile.set(cloneDeep(this.originalProfile));
|
296
|
+
}
|
297
|
+
}
|
298
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
299
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleService, providedIn: 'root' }); }
|
300
|
+
}
|
301
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleService, decorators: [{
|
302
|
+
type: Injectable,
|
303
|
+
args: [{
|
304
|
+
providedIn: 'root',
|
305
|
+
}]
|
306
|
+
}], ctorParameters: () => [] });
|
307
|
+
|
308
|
+
class AXLocaleModule {
|
309
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
310
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleModule, imports: [i1.AXFormatModule] }); }
|
311
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleModule, imports: [AXFormatModule.forChild({
|
312
|
+
formatters: [],
|
313
|
+
})] }); }
|
314
|
+
}
|
315
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocaleModule, decorators: [{
|
316
|
+
type: NgModule,
|
317
|
+
args: [{
|
318
|
+
imports: [
|
319
|
+
AXFormatModule.forChild({
|
320
|
+
formatters: [],
|
321
|
+
}),
|
322
|
+
],
|
323
|
+
}]
|
324
|
+
}] });
|
325
|
+
|
326
|
+
// @Injectable()
|
327
|
+
// export class AXCurrencyFormatter implements AXFormatter {
|
328
|
+
// get name(): string {
|
329
|
+
// return 'currency';
|
330
|
+
// }
|
331
|
+
// format(value: number, options: AXCurrencyFormatterOptions): string {
|
332
|
+
// return value.toLocaleString(options.locale, { style: 'currency', currency: options.currency });
|
333
|
+
// }
|
334
|
+
// }
|
335
|
+
|
336
|
+
/**
|
337
|
+
* Generated bundle index. Do not edit.
|
338
|
+
*/
|
339
|
+
|
340
|
+
export { AXIRLocaleProfile, AXLocaleEvents, AXLocaleModule, AXLocaleProfileProviderDefault, AXLocaleProfileProviderService, AXLocaleService, AXUSLocaleProfile, AX_LOCALE_CONFIG, AX_LOCALE_PROFILE_PROVIDERS };
|
341
|
+
//# sourceMappingURL=acorex-core-locale.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"acorex-core-locale.mjs","sources":["../../../../libs/core/locale/src/lib/locale.config.ts","../../../../libs/core/locale/src/lib/locale-profile-provider.service.ts","../../../../libs/core/locale/src/lib/locale.types.ts","../../../../libs/core/locale/src/lib/profiles/en-US.profile.ts","../../../../libs/core/locale/src/lib/profiles/fa-IR.profile.ts","../../../../libs/core/locale/src/lib/locale.service.ts","../../../../libs/core/locale/src/lib/locale.module.ts","../../../../libs/core/locale/src/lib/formatters/currency.formatter.ts","../../../../libs/core/locale/src/acorex-core-locale.ts"],"sourcesContent":["import { InjectionToken } from \"@angular/core\";\n\n\n\nexport interface AXLocaleConfig {\n default: string;\n}\n\n\n\nexport const AX_LOCALE_CONFIG = new InjectionToken<AXLocaleConfig>('AX_LOCALE_CONFIG', {\n providedIn: 'root',\n factory: () => {\n return {\n default: 'en-US',\n };\n },\n});\n\n\n\n\n\n\n\n\n\n","import { inject, Injectable, InjectionToken } from \"@angular/core\";\nimport { AXLocaleProfile } from \"./locale.types\";\n\n// Record of locale code → loader function (returns profile or Promise<profile>)\nexport type AXLocaleProfileProviderResult = Record<string, () => Promise<AXLocaleProfile> | AXLocaleProfile>;\n\nexport interface AXLocaleProfileProvider {\n provide(): Promise<AXLocaleProfileProviderResult>;\n}\n\nexport const AX_LOCALE_PROFILE_PROVIDERS = new InjectionToken<AXLocaleProfileProvider[]>(\n 'AX_LOCALE_PROFILE_PROVIDERS',\n {\n providedIn: 'root',\n factory: () => [new AXLocaleProfileProviderDefault()],\n }\n);\n\n// ✅ Lazy-loaded default provider\nexport class AXLocaleProfileProviderDefault implements AXLocaleProfileProvider {\n async provide(): Promise<AXLocaleProfileProviderResult> {\n return {\n 'en-AU': () => import('./profiles/en-AU.profile').then(m => m.AXAURegionalConfig),\n 'en-US': () => import('./profiles/en-US.profile').then(m => m.AXUSLocaleProfile),\n 'fa-IR': () => import('./profiles/fa-IR.profile').then(m => m.AXIRLocaleProfile),\n };\n }\n}\n\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXLocaleProfileProviderService {\n private providers: AXLocaleProfileProvider[] = inject(AX_LOCALE_PROFILE_PROVIDERS);\n\n private registry = new Map<string, () => Promise<AXLocaleProfile>>();\n private resolvedCache = new Map<string, AXLocaleProfile>();\n private isInitialized = false;\n\n private async init(): Promise<void> {\n if (this.isInitialized) return;\n\n for (const provider of this.providers) {\n const result: AXLocaleProfileProviderResult = await provider.provide();\n\n for (const [localeCode, loaderFn] of Object.entries(result)) {\n if (typeof loaderFn === 'function') {\n this.registry.set(localeCode, async () => {\n const profile = await loaderFn();\n return profile;\n });\n } else {\n console.warn(`[AXLocaleService] Profile for \"${localeCode}\" is not a function. Skipped.`);\n }\n }\n }\n\n this.isInitialized = true;\n }\n\n public async getList(): Promise<AXLocaleProfile[]> {\n await this.init();\n\n const profiles: AXLocaleProfile[] = [];\n\n for (const localeCode of this.registry.keys()) {\n const profile = await this.getByLocale(localeCode);\n if (profile) profiles.push(profile);\n }\n\n return profiles;\n }\n\n public async getByLocale(localeCode: string): Promise<AXLocaleProfile | undefined> {\n await this.init();\n\n // If already loaded, return from cache\n if (this.resolvedCache.has(localeCode)) {\n return this.resolvedCache.get(localeCode);\n }\n\n // Otherwise, try to load it\n const loader = this.registry.get(localeCode);\n if (!loader) {\n console.warn(`[AXLocaleService] No profile loader found for locale: \"${localeCode}\"`);\n return undefined;\n }\n\n const profile = await loader();\n this.resolvedCache.set(localeCode, profile);\n return profile;\n }\n\n public async reload(): Promise<void> {\n this.registry.clear();\n this.resolvedCache.clear();\n this.isInitialized = false;\n await this.init();\n }\n\n public has(localeCode: string): boolean {\n return this.registry.has(localeCode);\n }\n}\n","export interface AXLocaleProfile {\n localeInfo: {\n code: string; // e.g., 'en-US'\n language: string; // e.g., 'en'\n region: string; // e.g., 'US'\n timezone: string; // e.g., 'America/New_York'\n };\n\n calendar: {\n system: 'gregorian' | 'solar-hijri' | string;\n week: {\n startsOn: number; // 0 = Sunday, 1 = Monday\n weekends: number[]; // e.g., [0, 6]\n };\n clock: {\n format24Hour: boolean;\n };\n };\n\n formats: {\n date: FormatPattern;\n time: FormatPattern;\n datetime: FormatPattern;\n numbers: {\n decimalPattern: string; // e.g., '1,000.00'\n currency: {\n code: string; // e.g., 'USD'\n };\n };\n contacts: {\n phone: string; // e.g., '000-000-0000'\n postalCode: string; // e.g., '00000'\n };\n };\n\n units?: {\n temperature: 'celsius' | 'fahrenheit';\n distance: 'kilometers' | 'miles';\n weight?: 'kilograms' | 'pounds';\n volume?: 'liters' | 'gallons';\n speed?: 'km/h' | 'mph';\n area?: 'square-meters' | 'square-feet';\n custom?: Record<string, string>; // Optional: supports domain-specific units\n };\n\n i18nMeta?: {\n fallbackLocales?: string[]; // e.g., ['en']\n supportedLanguages?: string[]; // e.g., ['en', 'fa']\n rtl?: boolean; // true for RTL languages like Arabic, Persian\n };\n}\ninterface FormatPattern {\n short: string;\n medium: string;\n long: string;\n full: string;\n}\n\n\n\nexport enum AXLocaleEvents {\n AXLocaleChanged = 'AX_LOCALE_CHANGED',\n AXLocaleLoaded = 'AX_LOCALE_LOADED',\n //\n AXCalendarChanged = 'AX_CALENDAR_CHANGED',\n //\n AXLanguageChanged = 'AX_LANGUAGE_CHANGED',\n AXLanguageLoaded = 'AX_LANGUAGE_LOADED',\n}\n\n","import { AXLocaleProfile } from \"../locale.types\";\n\nexport const AXUSLocaleProfile: AXLocaleProfile = {\n localeInfo: {\n code: 'en-US',\n language: 'en',\n region: 'US',\n timezone: 'America/New_York',\n },\n calendar: {\n system: 'gregorian',\n week: {\n startsOn: 0, // Sunday\n weekends: [0, 6], // Sunday + Saturday\n },\n clock: {\n format24Hour: false,\n },\n },\n formats: {\n date: {\n short: 'MM/DD/YY',\n medium: 'MMM DD, YYYY',\n long: 'MMMM DD, YYYY',\n full: 'dddd, MMMM DD, YYYY',\n },\n time: {\n short: 'hh:mm A',\n medium: 'hh:mm:ss A',\n long: 'hh:mm:ss A Z',\n full: 'hh:mm:ss A ZZZZ',\n },\n datetime: {\n short: 'MM/DD/YY hh:mm A',\n medium: 'MMM DD, YYYY hh:mm:ss A',\n long: 'MMMM DD, YYYY hh:mm:ss A Z',\n full: 'dddd, MMMM DD, YYYY hh:mm:ss A ZZZZ',\n },\n numbers: {\n decimalPattern: '1,000.00',\n currency: {\n code: 'USD',\n },\n },\n contacts: {\n phone: '(000) 000-0000',\n postalCode: '00000',\n },\n },\n units: {\n temperature: 'fahrenheit',\n distance: 'miles',\n weight: 'pounds',\n volume: 'gallons',\n speed: 'mph',\n area: 'square-feet',\n },\n i18nMeta: {\n rtl: false,\n fallbackLocales: ['en-US'],\n supportedLanguages: ['en-US'],\n },\n};\n","import { AXLocaleProfile } from \"../locale.types\";\n\nexport const AXIRLocaleProfile: AXLocaleProfile = {\n localeInfo: {\n code: 'fa-IR',\n language: 'fa',\n region: 'IR',\n timezone: 'Asia/Tehran',\n },\n calendar: {\n system: 'solar-hijri',\n week: {\n startsOn: 6, // Saturday\n weekends: [5], // Friday\n },\n clock: {\n format24Hour: true,\n },\n },\n formats: {\n date: {\n short: 'YY/MM/DD',\n medium: 'YYYY/MM/DD',\n long: 'dddd، D MMMM YYYY',\n full: 'dddd، D MMMM YYYY',\n },\n time: {\n short: 'HH:mm',\n medium: 'HH:mm:ss',\n long: 'HH:mm:ss Z',\n full: 'HH:mm:ss ZZZZ',\n },\n datetime: {\n short: 'YY/MM/DD HH:mm',\n medium: 'YYYY/MM/DD HH:mm:ss',\n long: 'dddd، D MMMM YYYY HH:mm:ss Z',\n full: 'dddd، D MMMM YYYY HH:mm:ss ZZZZ',\n },\n numbers: {\n decimalPattern: '1٬000٫00',\n currency: {\n code: 'IRR',\n },\n },\n contacts: {\n phone: '09XX XXX XXXX',\n postalCode: 'XXXXX-XXXXX',\n },\n },\n units: {\n temperature: 'celsius',\n distance: 'kilometers',\n weight: 'kilograms',\n volume: 'liters',\n speed: 'km/h',\n area: 'square-meters',\n },\n i18nMeta: {\n rtl: true,\n fallbackLocales: ['en-IR'],\n supportedLanguages: ['fa-IR', 'en-IR'],\n },\n};\n","import { Injectable, inject, signal } from '@angular/core';\nimport { AXLocaleProfile } from './locale.types';\nimport { AXLocaleProfileProviderService } from './locale-profile-provider.service';\n\nimport cloneDeep from 'lodash/cloneDeep';\nimport merge from 'lodash/merge';\nimport set from 'lodash/set';\nimport { AXUSLocaleProfile } from './profiles/en-US.profile';\nimport { AX_LOCALE_CONFIG } from './locale.config';\nimport { toObservable } from '@angular/core/rxjs-interop';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXLocaleService {\n private provider = inject(AXLocaleProfileProviderService);\n private config = inject(AX_LOCALE_CONFIG);\n\n\n private _activeProfile = signal<AXLocaleProfile>(AXUSLocaleProfile);\n public activeProfile = this._activeProfile.asReadonly();\n\n\n public profileChanged$ = toObservable(this._activeProfile);\n\n private originalProfile: AXLocaleProfile = cloneDeep(AXUSLocaleProfile);\n\n public async setProfile(localeCode: string): Promise<void> {\n const profile = await this.provider.getByLocale(localeCode);\n if (profile) {\n this.originalProfile = cloneDeep(profile);\n this._activeProfile.set(cloneDeep(profile));\n } else {\n console.warn(`[AXLocaleService] Locale not found: ${localeCode}`);\n }\n }\n\n /**\n *\n */\n constructor() {\n this.setProfile(this.config.default);\n }\n\n\n public apply(profile: Partial<AXLocaleProfile>): void;\n public apply(path: string, value: any): void;\n public apply(arg1: any, arg2?: any): void {\n const current = this.activeProfile();\n if (!current) {\n console.warn('[AXLocaleService] No active profile found');\n return;\n };\n\n const updated = cloneDeep(current);\n\n if (typeof arg1 === 'string' && arg2 !== undefined) {\n // Overload: updateProfile('formats.date.full', 'YYYY-MM-DD')\n set(updated, arg1, arg2);\n } else if (typeof arg1 === 'object') {\n // Overload: updateProfile({ formats: { date: { short: '...' } } })\n merge(updated, arg1);\n } else {\n console.warn('[AXLocaleService] Invalid arguments passed to updateProfile()');\n return;\n }\n\n }\n\n public reset(): void {\n if (this.originalProfile) {\n this._activeProfile.set(cloneDeep(this.originalProfile));\n }\n }\n}\n","import { AXFormatModule } from '@acorex/core/format';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n imports: [\n AXFormatModule.forChild({\n formatters: [],\n }),\n ],\n})\nexport class AXLocaleModule {\n\n}\n","import { Injectable } from '@angular/core';\nimport { AXFormatter } from '@acorex/core/format';\nimport { AXFormatOptions } from '@acorex/core/format';\n\nexport interface AXCurrencyFormatterOptions extends AXFormatOptions {\n locale?: string;\n currency?: string;\n}\n\ndeclare module '@acorex/core/format' {\n interface AXFormatOptionsMap {\n currency: AXCurrencyFormatterOptions;\n }\n}\n\n// @Injectable()\n// export class AXCurrencyFormatter implements AXFormatter {\n\n// get name(): string {\n// return 'currency';\n// }\n\n// format(value: number, options: AXCurrencyFormatterOptions): string {\n// return value.toLocaleString(options.locale, { style: 'currency', currency: options.currency });\n// }\n// }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -211,10 +211,10 @@ class AXNetworkService {
|
|
211
211
|
const events = this.http.request(request);
|
212
212
|
return new AXDownloadTask(events);
|
213
213
|
}
|
214
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
215
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
214
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXNetworkService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
215
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXNetworkService, providedIn: 'root' }); }
|
216
216
|
}
|
217
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
217
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXNetworkService, decorators: [{
|
218
218
|
type: Injectable,
|
219
219
|
args: [{ providedIn: 'root' }]
|
220
220
|
}], ctorParameters: () => [] });
|
@@ -24,10 +24,10 @@ class AXSafePipe {
|
|
24
24
|
throw new Error(`Invalid safe type specified: ${type}`);
|
25
25
|
}
|
26
26
|
}
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
28
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXSafePipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
28
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.8", ngImport: i0, type: AXSafePipe, isStandalone: true, name: "safe" }); }
|
29
29
|
}
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXSafePipe, decorators: [{
|
31
31
|
type: Pipe,
|
32
32
|
args: [{
|
33
33
|
name: 'safe',
|
@@ -282,10 +282,10 @@ class AXPlatform {
|
|
282
282
|
});
|
283
283
|
}
|
284
284
|
}
|
285
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
286
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
285
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXPlatform, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
286
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXPlatform, providedIn: 'root' }); }
|
287
287
|
}
|
288
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
288
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXPlatform, decorators: [{
|
289
289
|
type: Injectable,
|
290
290
|
args: [{
|
291
291
|
providedIn: 'root',
|
@@ -184,10 +184,10 @@ class AXCookieStorageService {
|
|
184
184
|
}
|
185
185
|
}
|
186
186
|
}
|
187
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
188
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
187
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXCookieStorageService, deps: [{ token: DOCUMENT }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
188
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXCookieStorageService }); }
|
189
189
|
}
|
190
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
190
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXCookieStorageService, decorators: [{
|
191
191
|
type: Injectable
|
192
192
|
}], ctorParameters: () => [{ type: Document, decorators: [{
|
193
193
|
type: Inject,
|
@@ -242,10 +242,10 @@ class AXLocalStorageService {
|
|
242
242
|
return null;
|
243
243
|
}
|
244
244
|
}
|
245
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
246
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
245
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocalStorageService, deps: [{ token: AX_LOCALSTORAGE_SECRET_KEY }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
246
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocalStorageService }); }
|
247
247
|
}
|
248
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
248
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXLocalStorageService, decorators: [{
|
249
249
|
type: Injectable
|
250
250
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
251
251
|
type: Inject,
|
@@ -277,10 +277,10 @@ class AXSessionStorageService {
|
|
277
277
|
return sessionStorage.removeItem(key);
|
278
278
|
}
|
279
279
|
}
|
280
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.
|
281
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.
|
280
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXSessionStorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
281
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXSessionStorageService }); }
|
282
282
|
}
|
283
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.
|
283
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: AXSessionStorageService, decorators: [{
|
284
284
|
type: Injectable
|
285
285
|
}] });
|
286
286
|
|