@bravobit/bb-foundation 0.22.4 → 0.23.2
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/elements/lib/pipes/relative-time.pipe.d.ts +1 -1
- package/esm2020/localize/lib/dictionary/dictionary.class.mjs +92 -0
- package/esm2020/localize/lib/dictionary/dictionary.context.mjs +26 -0
- package/esm2020/localize/lib/dictionary/dictionary.data.mjs +6 -0
- package/esm2020/localize/lib/functions/lowercase.function.mjs +2 -2
- package/esm2020/localize/lib/functions/uppercase.function.mjs +2 -2
- package/esm2020/localize/lib/handlers/missing.handler.mjs +2 -2
- package/esm2020/localize/lib/interfaces/config.interfaces.mjs +1 -1
- package/esm2020/localize/lib/interfaces/options.interfaces.mjs +1 -1
- package/esm2020/localize/lib/interfaces/transforms.interfaces.mjs +3 -0
- package/esm2020/localize/lib/localize.module.mjs +12 -3
- package/esm2020/localize/lib/localize.pipe.mjs +9 -12
- package/esm2020/localize/lib/localize.service.mjs +84 -128
- package/esm2020/localize/lib/transforms/abstract.transform.mjs +30 -0
- package/esm2020/localize/lib/transforms/interpolate.transform.mjs +54 -0
- package/esm2020/localize/lib/transforms/reference.transform.mjs +25 -0
- package/esm2020/localize/public_api.mjs +8 -2
- package/fesm2015/bravobit-bb-foundation-localize.mjs +347 -175
- package/fesm2015/bravobit-bb-foundation-localize.mjs.map +1 -1
- package/fesm2020/bravobit-bb-foundation-localize.mjs +327 -167
- package/fesm2020/bravobit-bb-foundation-localize.mjs.map +1 -1
- package/localize/lib/dictionary/dictionary.class.d.ts +28 -0
- package/localize/lib/dictionary/dictionary.context.d.ts +7 -0
- package/localize/lib/dictionary/dictionary.data.d.ts +7 -0
- package/localize/lib/interfaces/config.interfaces.d.ts +4 -6
- package/localize/lib/interfaces/options.interfaces.d.ts +1 -0
- package/localize/lib/interfaces/transforms.interfaces.d.ts +3 -0
- package/localize/lib/localize.module.d.ts +1 -1
- package/localize/lib/localize.pipe.d.ts +3 -3
- package/localize/lib/localize.service.d.ts +25 -21
- package/localize/lib/transforms/abstract.transform.d.ts +13 -0
- package/localize/lib/transforms/interpolate.transform.d.ts +14 -0
- package/localize/lib/transforms/reference.transform.d.ts +10 -0
- package/localize/public_api.d.ts +7 -1
- package/package.json +1 -1
- package/esm2020/localize/lib/localize.dictionary.mjs +0 -24
- package/localize/lib/localize.dictionary.d.ts +0 -7
|
@@ -5,7 +5,7 @@ export declare class BbRelativeTime implements PipeTransform {
|
|
|
5
5
|
private _localeId;
|
|
6
6
|
private _localize?;
|
|
7
7
|
constructor(_localeId: string, _localize?: Localize);
|
|
8
|
-
transform(value: string | number | Date):
|
|
8
|
+
transform(value: string | number | Date): string | number | Date;
|
|
9
9
|
private format;
|
|
10
10
|
private formatString;
|
|
11
11
|
private get locale();
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { LocalizeDictionaryContext } from './dictionary.context';
|
|
2
|
+
export class LocalizeDictionary {
|
|
3
|
+
constructor(_id, _locale, _supported, _dataValues, _localize) {
|
|
4
|
+
this._id = _id;
|
|
5
|
+
this._locale = _locale;
|
|
6
|
+
this._supported = _supported;
|
|
7
|
+
this._dataValues = _dataValues;
|
|
8
|
+
this._localize = _localize;
|
|
9
|
+
this._data = this.formatData(this._dataValues);
|
|
10
|
+
}
|
|
11
|
+
get id() {
|
|
12
|
+
return this._id ?? null;
|
|
13
|
+
}
|
|
14
|
+
get locale() {
|
|
15
|
+
return this._locale ?? null;
|
|
16
|
+
}
|
|
17
|
+
get supported() {
|
|
18
|
+
return this._supported ?? [];
|
|
19
|
+
}
|
|
20
|
+
get(token) {
|
|
21
|
+
const key = Array.isArray(token) ? token.join('.') : token;
|
|
22
|
+
return this._data?.[key] ?? null;
|
|
23
|
+
}
|
|
24
|
+
has(token) {
|
|
25
|
+
return !!this.get(token);
|
|
26
|
+
}
|
|
27
|
+
all() {
|
|
28
|
+
return this.some(context => context);
|
|
29
|
+
}
|
|
30
|
+
some(callback) {
|
|
31
|
+
const defaultContext = new LocalizeDictionaryContext();
|
|
32
|
+
const context = !!callback ? callback(defaultContext) : defaultContext;
|
|
33
|
+
return Object.keys(this._data ?? {})
|
|
34
|
+
.filter(key => context.regexp.test(key))
|
|
35
|
+
.reduce((previous, current) => ([
|
|
36
|
+
...previous,
|
|
37
|
+
{ token: current, value: this.get(current) }
|
|
38
|
+
]), []);
|
|
39
|
+
}
|
|
40
|
+
async compare(to) {
|
|
41
|
+
if ((typeof ngDevMode === 'undefined' || ngDevMode)) {
|
|
42
|
+
const dictionaryIds = (Array.isArray(to) ? to : [to]);
|
|
43
|
+
const dictionaries = [];
|
|
44
|
+
for (const dictionaryId of dictionaryIds) {
|
|
45
|
+
console.log(`Making sure dictionary "${dictionaryId}" is loaded.`);
|
|
46
|
+
const dictionary = await this._localize.load(dictionaryId);
|
|
47
|
+
dictionaries.push(dictionary);
|
|
48
|
+
}
|
|
49
|
+
const warnings = [];
|
|
50
|
+
const items = this.all();
|
|
51
|
+
for (const item of items) {
|
|
52
|
+
for (const dictionary of dictionaries) {
|
|
53
|
+
if (!dictionary.has(item?.token)) {
|
|
54
|
+
warnings.push({ dictionary: dictionary?.id, value: item?.token });
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
for (const dictionary of dictionaries) {
|
|
59
|
+
const items = dictionary.all();
|
|
60
|
+
for (const item of items) {
|
|
61
|
+
if (!this.has(item?.token)) {
|
|
62
|
+
warnings.push({ dictionary: this.id, value: item?.token });
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
const compareDictionaryIds = dictionaries.map(dictionary => dictionary?.id).join(', ');
|
|
67
|
+
console.log(`Comparing currency dictionary [${this.id}] with [${compareDictionaryIds}]...`);
|
|
68
|
+
for (const warning of warnings) {
|
|
69
|
+
console?.warn?.(`Dictionary "${warning.dictionary}" is missing token "${warning.value}"`);
|
|
70
|
+
}
|
|
71
|
+
console?.warn?.(`Total of ${warnings.length} warning(s) found.`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
count() {
|
|
75
|
+
return Object.keys(this._data ?? {}).length;
|
|
76
|
+
}
|
|
77
|
+
formatData(data, scope = null) {
|
|
78
|
+
return Object.keys(data ?? {}).reduce((previous, current) => {
|
|
79
|
+
const value = data?.[current];
|
|
80
|
+
if (typeof value === 'object' && value !== null) {
|
|
81
|
+
const reformatted = this.formatData(value, current);
|
|
82
|
+
return { ...previous, ...reformatted };
|
|
83
|
+
}
|
|
84
|
+
const token = [scope, current].filter(item => !!item).join('.');
|
|
85
|
+
if (previous[token] && (typeof ngDevMode === 'undefined' || ngDevMode)) {
|
|
86
|
+
console?.warn?.(`Duplicate key "${token}" was found, please verify your translation files.`);
|
|
87
|
+
}
|
|
88
|
+
return { ...previous, [token]: value };
|
|
89
|
+
}, {});
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vbG9jYWxpemUvc3JjL2xpYi9kaWN0aW9uYXJ5L2RpY3Rpb25hcnkuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFLL0QsTUFBTSxPQUFPLGtCQUFrQjtJQUkzQixZQUFvQixHQUFXLEVBQ1gsT0FBZSxFQUNmLFVBQW9CLEVBQ3BCLFdBQXlDLEVBQ3pDLFNBQW1CO1FBSm5CLFFBQUcsR0FBSCxHQUFHLENBQVE7UUFDWCxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZUFBVSxHQUFWLFVBQVUsQ0FBVTtRQUNwQixnQkFBVyxHQUFYLFdBQVcsQ0FBOEI7UUFDekMsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQU50QixVQUFLLEdBQTJCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBT25GLENBQUM7SUFFRCxJQUFJLEVBQUU7UUFDRixPQUFPLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBd0I7UUFDeEIsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQzNELE9BQU8sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEdBQUcsQ0FB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QUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEUsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLFNBQVMsS0FBSyxXQUFXLElBQUksU0FBUyxDQUFDLEVBQUU7Z0JBQ3BFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsS0FBSyxvREFBb0QsQ0FBQyxDQUFDO2FBQ2hHO1lBRUQsT0FBTyxFQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFDLENBQUM7UUFDekMsQ0FBQyxFQUEwQixFQUFFLENBQUMsQ0FBQztJQUNuQyxDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2FsaXplRGljdGlvbmFyeURhdGFWYWx1ZXN9IGZyb20gJy4vZGljdGlvbmFyeS5kYXRhJztcbmltcG9ydCB7TG9jYWxpemVEaWN0aW9uYXJ5Q29udGV4dH0gZnJvbSAnLi9kaWN0aW9uYXJ5LmNvbnRleHQnO1xuaW1wb3J0IHtMb2NhbGl6ZX0gZnJvbSAnLi4vbG9jYWxpemUuc2VydmljZSc7XG5cbmRlY2xhcmUgbGV0IG5nRGV2TW9kZTtcblxuZXhwb3J0IGNsYXNzIExvY2FsaXplRGljdGlvbmFyeSB7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9kYXRhOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0gdGhpcy5mb3JtYXREYXRhKHRoaXMuX2RhdGFWYWx1ZXMpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfaWQ6IHN0cmluZyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9sb2NhbGU6IHN0cmluZyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9zdXBwb3J0ZWQ6IHN0cmluZ1tdLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgX2RhdGFWYWx1ZXM6IExvY2FsaXplRGljdGlvbmFyeURhdGFWYWx1ZXMsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfbG9jYWxpemU6IExvY2FsaXplKSB7XG4gICAgfVxuXG4gICAgZ2V0IGlkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faWQgPz8gbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgbG9jYWxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbG9jYWxlID8/IG51bGw7XG4gICAgfVxuXG4gICAgZ2V0IHN1cHBvcnRlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N1cHBvcnRlZCA/PyBbXTtcbiAgICB9XG5cbiAgICBnZXQodG9rZW46IHN0cmluZyB8IHN0cmluZ1tdKSB7XG4gICAgICAgIGNvbnN0IGtleSA9IEFycmF5LmlzQXJyYXkodG9rZW4pID8gdG9rZW4uam9pbignLicpIDogdG9rZW47XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRhPy5ba2V5XSA/PyBudWxsO1xuICAgIH1cblxuICAgIGhhcyh0b2tlbjogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5nZXQodG9rZW4pO1xuICAgIH1cblxuICAgIGFsbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc29tZShjb250ZXh0ID0+IGNvbnRleHQpO1xuICAgIH1cblxuICAgIHNvbWUoY2FsbGJhY2s6IChjb250ZXh0OiBMb2NhbGl6ZURpY3Rpb25hcnlDb250ZXh0KSA9PiBMb2NhbGl6ZURpY3Rpb25hcnlDb250ZXh0KSB7XG4gICAgICAgIGNvbnN0IGRlZmF1bHRDb250ZXh0ID0gbmV3IExvY2FsaXplRGljdGlvbmFyeUNvbnRleHQoKTtcbiAgICAgICAgY29uc3QgY29udGV4dCA9ICEhY2FsbGJhY2sgPyBjYWxsYmFjayhkZWZhdWx0Q29udGV4dCkgOiBkZWZhdWx0Q29udGV4dDtcblxuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5fZGF0YSA/PyB7fSlcbiAgICAgICAgICAgIC5maWx0ZXIoa2V5ID0+IGNvbnRleHQucmVnZXhwLnRlc3Qoa2V5KSlcbiAgICAgICAgICAgIC5yZWR1Y2UoKHByZXZpb3VzLCBjdXJyZW50KSA9PiAoW1xuICAgICAgICAgICAgICAgIC4uLnByZXZpb3VzLFxuICAgICAgICAgICAgICAgIHt0b2tlbjogY3VycmVudCwgdmFsdWU6IHRoaXMuZ2V0KGN1cnJlbnQpfVxuICAgICAgICAgICAgXSksIDx7IHRva2VuOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfVtdPltdKTtcbiAgICB9XG5cbiAgICBhc3luYyBjb21wYXJlKHRvOiBzdHJpbmcgfCBzdHJpbmdbXSkge1xuICAgICAgICBpZiAoKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGRpY3Rpb25hcnlJZHMgPSAoQXJyYXkuaXNBcnJheSh0bykgPyB0byA6IFt0b10pO1xuICAgICAgICAgICAgY29uc3QgZGljdGlvbmFyaWVzOiBMb2NhbGl6ZURpY3Rpb25hcnlbXSA9IFtdO1xuICAgICAgICAgICAgZm9yIChjb25zdCBkaWN0aW9uYXJ5SWQgb2YgZGljdGlvbmFyeUlkcykge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKGBNYWtpbmcgc3VyZSBkaWN0aW9uYXJ5IFwiJHtkaWN0aW9uYXJ5SWR9XCIgaXMgbG9hZGVkLmApO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRpY3Rpb25hcnkgPSBhd2FpdCB0aGlzLl9sb2NhbGl6ZS5sb2FkKGRpY3Rpb25hcnlJZCk7XG4gICAgICAgICAgICAgICAgZGljdGlvbmFyaWVzLnB1c2goZGljdGlvbmFyeSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHdhcm5pbmdzID0gW107XG5cbiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gdGhpcy5hbGwoKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBpdGVtcykge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgZGljdGlvbmFyeSBvZiBkaWN0aW9uYXJpZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFkaWN0aW9uYXJ5LmhhcyhpdGVtPy50b2tlbikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm5pbmdzLnB1c2goe2RpY3Rpb25hcnk6IGRpY3Rpb25hcnk/LmlkLCB2YWx1ZTogaXRlbT8udG9rZW59KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZm9yIChjb25zdCBkaWN0aW9uYXJ5IG9mIGRpY3Rpb25hcmllcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gZGljdGlvbmFyeS5hbGwoKTtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLmhhcyhpdGVtPy50b2tlbikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdhcm5pbmdzLnB1c2goe2RpY3Rpb25hcnk6IHRoaXMuaWQsIHZhbHVlOiBpdGVtPy50b2tlbn0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBjb21wYXJlRGljdGlvbmFyeUlkcyA9IGRpY3Rpb25hcmllcy5tYXAoZGljdGlvbmFyeSA9PiBkaWN0aW9uYXJ5Py5pZCkuam9pbignLCAnKTtcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBDb21wYXJpbmcgY3VycmVuY3kgZGljdGlvbmFyeSBbJHt0aGlzLmlkfV0gd2l0aCBbJHtjb21wYXJlRGljdGlvbmFyeUlkc31dLi4uYCk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHdhcm5pbmcgb2Ygd2FybmluZ3MpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlPy53YXJuPy4oYERpY3Rpb25hcnkgXCIke3dhcm5pbmcuZGljdGlvbmFyeX1cIiBpcyBtaXNzaW5nIHRva2VuIFwiJHt3YXJuaW5nLnZhbHVlfVwiYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zb2xlPy53YXJuPy4oYFRvdGFsIG9mICR7d2FybmluZ3MubGVuZ3RofSB3YXJuaW5nKHMpIGZvdW5kLmApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY291bnQoKSB7XG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLl9kYXRhID8/IHt9KS5sZW5ndGg7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXREYXRhKGRhdGE6IExvY2FsaXplRGljdGlvbmFyeURhdGFWYWx1ZXMsIHNjb3BlOiBzdHJpbmcgfCBudWxsID0gbnVsbCkge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSA/PyB7fSkucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBkYXRhPy5bY3VycmVudF07XG4gICAgICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlZm9ybWF0dGVkID0gdGhpcy5mb3JtYXREYXRhKHZhbHVlLCBjdXJyZW50KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gey4uLnByZXZpb3VzLCAuLi5yZWZvcm1hdHRlZH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gW3Njb3BlLCBjdXJyZW50XS5maWx0ZXIoaXRlbSA9PiAhIWl0ZW0pLmpvaW4oJy4nKTtcbiAgICAgICAgICAgIGlmIChwcmV2aW91c1t0b2tlbl0gJiYgKHR5cGVvZiBuZ0Rldk1vZGUgPT09ICd1bmRlZmluZWQnIHx8IG5nRGV2TW9kZSkpIHtcbiAgICAgICAgICAgICAgICBjb25zb2xlPy53YXJuPy4oYER1cGxpY2F0ZSBrZXkgXCIke3Rva2VufVwiIHdhcyBmb3VuZCwgcGxlYXNlIHZlcmlmeSB5b3VyIHRyYW5zbGF0aW9uIGZpbGVzLmApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gey4uLnByZXZpb3VzLCBbdG9rZW5dOiB2YWx1ZX07XG4gICAgICAgIH0sIDxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+Pnt9KTtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export class LocalizeDictionaryContext {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.regexp = /^.*$/;
|
|
4
|
+
}
|
|
5
|
+
pattern(regexp) {
|
|
6
|
+
this.regexp = regexp;
|
|
7
|
+
return this;
|
|
8
|
+
}
|
|
9
|
+
matches(value) {
|
|
10
|
+
const formatted = this.formatValue(value);
|
|
11
|
+
const regex = (formatted ?? '')
|
|
12
|
+
.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&')
|
|
13
|
+
.replace(/\\\*/g, '.*');
|
|
14
|
+
return this.pattern(new RegExp(`^${regex}$`));
|
|
15
|
+
}
|
|
16
|
+
group(value) {
|
|
17
|
+
const formatted = this.formatValue(value);
|
|
18
|
+
return this.matches([formatted, '*']);
|
|
19
|
+
}
|
|
20
|
+
formatValue(value) {
|
|
21
|
+
return Array.isArray(value)
|
|
22
|
+
? value.filter(item => !!item).join('.')
|
|
23
|
+
: value;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2RpY3Rpb25hcnkvZGljdGlvbmFyeS5jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyx5QkFBeUI7SUFBdEM7UUFFSSxXQUFNLEdBQVcsTUFBTSxDQUFDO0lBMEI1QixDQUFDO0lBeEJHLE9BQU8sQ0FBQyxNQUFjO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBd0I7UUFDNUIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxQyxNQUFNLEtBQUssR0FBRyxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7YUFDMUIsT0FBTyxDQUFDLDBCQUEwQixFQUFFLE1BQU0sQ0FBQzthQUMzQyxPQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQXdCO1FBQzFCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVPLFdBQVcsQ0FBQyxLQUF3QjtRQUN4QyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDeEMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNoQixDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgTG9jYWxpemVEaWN0aW9uYXJ5Q29udGV4dCB7XG5cbiAgICByZWdleHA6IFJlZ0V4cCA9IC9eLiokLztcblxuICAgIHBhdHRlcm4ocmVnZXhwOiBSZWdFeHApIHtcbiAgICAgICAgdGhpcy5yZWdleHAgPSByZWdleHA7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIG1hdGNoZXModmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdKSB7XG4gICAgICAgIGNvbnN0IGZvcm1hdHRlZCA9IHRoaXMuZm9ybWF0VmFsdWUodmFsdWUpO1xuICAgICAgICBjb25zdCByZWdleCA9IChmb3JtYXR0ZWQgPz8gJycpXG4gICAgICAgICAgICAucmVwbGFjZSgvWy1bXFxde30oKSorPy4sXFxcXF4kfCNcXHNdL2csICdcXFxcJCYnKVxuICAgICAgICAgICAgLnJlcGxhY2UoL1xcXFxcXCovZywgJy4qJyk7XG4gICAgICAgIHJldHVybiB0aGlzLnBhdHRlcm4obmV3IFJlZ0V4cChgXiR7cmVnZXh9JGApKTtcbiAgICB9XG5cbiAgICBncm91cCh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICAgICAgY29uc3QgZm9ybWF0dGVkID0gdGhpcy5mb3JtYXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHJldHVybiB0aGlzLm1hdGNoZXMoW2Zvcm1hdHRlZCwgJyonXSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmb3JtYXRWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpXG4gICAgICAgICAgICA/IHZhbHVlLmZpbHRlcihpdGVtID0+ICEhaXRlbSkuam9pbignLicpXG4gICAgICAgICAgICA6IHZhbHVlO1xuICAgIH1cblxufVxuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export class LocalizeDictionaryData {
|
|
2
|
+
constructor(data) {
|
|
3
|
+
this.data = data;
|
|
4
|
+
}
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGljdGlvbmFyeS5kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2RpY3Rpb25hcnkvZGljdGlvbmFyeS5kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxzQkFBc0I7SUFFL0IsWUFBbUIsSUFBa0M7UUFBbEMsU0FBSSxHQUFKLElBQUksQ0FBOEI7SUFDckQsQ0FBQztDQUVKIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgTG9jYWxpemVEaWN0aW9uYXJ5RGF0YVZhbHVlcyA9IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgTG9jYWxpemVEaWN0aW9uYXJ5RGF0YVZhbHVlcyB9O1xuXG5leHBvcnQgY2xhc3MgTG9jYWxpemVEaWN0aW9uYXJ5RGF0YSB7XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZGF0YTogTG9jYWxpemVEaWN0aW9uYXJ5RGF0YVZhbHVlcykge1xuICAgIH1cblxufVxuIl19
|
|
@@ -7,7 +7,7 @@ export class LocalizeLowercaseFunction {
|
|
|
7
7
|
return 'lowercase';
|
|
8
8
|
}
|
|
9
9
|
transform(value) {
|
|
10
|
-
return (value
|
|
10
|
+
return (value ?? '').toLowerCase();
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG93ZXJjYXNlLmZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2Z1bmN0aW9ucy9sb3dlcmNhc2UuZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsRUFBRTtBQUNGLG9DQUFvQztBQUNwQyx1Q0FBdUM7QUFDdkMsRUFBRTtBQUVGLE1BQU0sT0FBTyx5QkFBeUI7SUFFbEMsT0FBTztRQUNILE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYTtRQUNuQixPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7Q0FFSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYWxpemVGdW5jdGlvbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mdW5jdGlvbnMuaW50ZXJmYWNlcyc7XG5cbi8vXG4vLyBUaGlzIGZ1bmN0aW9uIHRyYW5zZm9ybSB0aGUgdmFsdWVcbi8vIHRvIGEgbG93ZXJjYXNlIHZhcmlhbnQgb2YgdGhlIHZhbHVlLlxuLy9cblxuZXhwb3J0IGNsYXNzIExvY2FsaXplTG93ZXJjYXNlRnVuY3Rpb24gaW1wbGVtZW50cyBMb2NhbGl6ZUZ1bmN0aW9uIHtcblxuICAgIGtleXdvcmQoKSB7XG4gICAgICAgIHJldHVybiAnbG93ZXJjYXNlJztcbiAgICB9XG5cbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gKHZhbHVlID8/ICcnKS50b0xvd2VyQ2FzZSgpO1xuICAgIH1cblxufVxuIl19
|
|
@@ -7,7 +7,7 @@ export class LocalizeUppercaseFunction {
|
|
|
7
7
|
return 'uppercase';
|
|
8
8
|
}
|
|
9
9
|
transform(value) {
|
|
10
|
-
return (value
|
|
10
|
+
return (value ?? '').toUpperCase();
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBwZXJjYXNlLmZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2Z1bmN0aW9ucy91cHBlcmNhc2UuZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsRUFBRTtBQUNGLG9DQUFvQztBQUNwQyx1Q0FBdUM7QUFDdkMsRUFBRTtBQUVGLE1BQU0sT0FBTyx5QkFBeUI7SUFFbEMsT0FBTztRQUNILE9BQU8sV0FBVyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYTtRQUNuQixPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7Q0FFSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYWxpemVGdW5jdGlvbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9mdW5jdGlvbnMuaW50ZXJmYWNlcyc7XG5cbi8vXG4vLyBUaGlzIGZ1bmN0aW9uIHRyYW5zZm9ybSB0aGUgdmFsdWVcbi8vIHRvIGEgdXBwZXJjYXNlIHZhcmlhbnQgb2YgdGhlIHZhbHVlLlxuLy9cblxuZXhwb3J0IGNsYXNzIExvY2FsaXplVXBwZXJjYXNlRnVuY3Rpb24gaW1wbGVtZW50cyBMb2NhbGl6ZUZ1bmN0aW9uIHtcblxuICAgIGtleXdvcmQoKSB7XG4gICAgICAgIHJldHVybiAndXBwZXJjYXNlJztcbiAgICB9XG5cbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gKHZhbHVlID8/ICcnKS50b1VwcGVyQ2FzZSgpO1xuICAgIH1cblxufVxuIl19
|
|
@@ -6,10 +6,10 @@ export class LocalizeMissingHandler {
|
|
|
6
6
|
// Log to the console when the token was not found
|
|
7
7
|
// if the user did not mark it as optional.
|
|
8
8
|
if (!params?.optional) {
|
|
9
|
-
this.log(`
|
|
9
|
+
this.log(`The token with name: "${params?.token}" was not found.`);
|
|
10
10
|
}
|
|
11
11
|
// Return the default token back.
|
|
12
12
|
return params?.token ?? null;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzc2luZy5oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2hhbmRsZXJzL21pc3NpbmcuaGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sc0JBQXNCO0lBQW5DO1FBYVksUUFBRyxHQUFHLENBQUMsT0FBZSxFQUFFLEVBQUUsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFaEUsQ0FBQztJQWJHLE1BQU0sQ0FBQyxNQUFzQjtRQUN6QixrREFBa0Q7UUFDbEQsMkNBQTJDO1FBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFO1lBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMseUJBQXlCLE1BQU0sRUFBRSxLQUFLLGtCQUFrQixDQUFDLENBQUM7U0FDdEU7UUFFRCxpQ0FBaUM7UUFDakMsT0FBTyxNQUFNLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQztJQUNqQyxDQUFDO0NBSUoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2FsaXplSGFuZGxlclByb3RvY29sfSBmcm9tICcuLi9pbnRlcmZhY2VzL2hhbmRsZXJzLmludGVyZmFjZXMnO1xuaW1wb3J0IHtMb2NhbGl6ZVBhcmFtc30gZnJvbSAnLi4vaW50ZXJmYWNlcy9vcHRpb25zLmludGVyZmFjZXMnO1xuXG5leHBvcnQgY2xhc3MgTG9jYWxpemVNaXNzaW5nSGFuZGxlciBpbXBsZW1lbnRzIExvY2FsaXplSGFuZGxlclByb3RvY29sIHtcblxuICAgIGhhbmRsZShwYXJhbXM6IExvY2FsaXplUGFyYW1zKSB7XG4gICAgICAgIC8vIExvZyB0byB0aGUgY29uc29sZSB3aGVuIHRoZSB0b2tlbiB3YXMgbm90IGZvdW5kXG4gICAgICAgIC8vIGlmIHRoZSB1c2VyIGRpZCBub3QgbWFyayBpdCBhcyBvcHRpb25hbC5cbiAgICAgICAgaWYgKCFwYXJhbXM/Lm9wdGlvbmFsKSB7XG4gICAgICAgICAgICB0aGlzLmxvZyhgVGhlIHRva2VuIHdpdGggbmFtZTogXCIke3BhcmFtcz8udG9rZW59XCIgd2FzIG5vdCBmb3VuZC5gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFJldHVybiB0aGUgZGVmYXVsdCB0b2tlbiBiYWNrLlxuICAgICAgICByZXR1cm4gcGFyYW1zPy50b2tlbiA/PyBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9nID0gKG1lc3NhZ2U6IHN0cmluZykgPT4gY29uc29sZT8ud2Fybj8uKG1lc3NhZ2UpO1xuXG59XG4iXX0=
|
|
@@ -4,4 +4,4 @@
|
|
|
4
4
|
//
|
|
5
5
|
export class LocalizeConfig {
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmludGVyZmFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2xvY2FsaXplL3NyYy9saWIvaW50ZXJmYWNlcy9jb25maWcuaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxFQUFFO0FBQ0YsNENBQTRDO0FBQzVDLDRDQUE0QztBQUM1QyxFQUFFO0FBRUYsTUFBTSxPQUFPLGNBQWM7Q0FRMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2FsaXplRGljdGlvbmFyeURhdGF9IGZyb20gJy4uL2RpY3Rpb25hcnkvZGljdGlvbmFyeS5kYXRhJztcblxuLy9cbi8vIFRoZSBjb25maWd1cmF0aW9uIHRoYXQgY2FuIGJlIHBhc3NlZCB3aGVuXG4vLyB0aGUgdXNlciBpbml0aWFsaXplcyB0aGUgbG9jYWxpemUgbW9kdWxlLlxuLy9cblxuZXhwb3J0IGNsYXNzIExvY2FsaXplQ29uZmlnIHtcbiAgICBsYW5ndWFnZXM6IExvY2FsaXplQ29uZmlnTGFuZ3VhZ2VbXTtcbiAgICBtb2RlPzogJ2F1dG9tYXRpYycgfCAnbWFudWFsJztcbiAgICBzdG9yYWdlVG9rZW4/OiBzdHJpbmc7XG4gICAgc3Vic3RpdHV0aW9ucz86IHtcbiAgICAgICAgcmVmZXJlbmNlcz86IFtsZWZ0U3Vic3RpdHV0aW9uOiBzdHJpbmcsIHJpZ2h0U3Vic3RpdHV0aW9uOiBzdHJpbmddO1xuICAgICAgICBpbnRlcnBvbGF0aW9uPzogW2xlZnRTdWJzdGl0dXRpb246IHN0cmluZywgcmlnaHRTdWJzdGl0dXRpb246IHN0cmluZ107XG4gICAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2NhbGl6ZUNvbmZpZ0xhbmd1YWdlIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGxvY2FsZTogc3RyaW5nO1xuICAgIHN1cHBvcnRlZDogc3RyaW5nW107XG4gICAgZGF0YTogKCkgPT4gTG9jYWxpemVEaWN0aW9uYXJ5RGF0YSB8IFByb21pc2U8TG9jYWxpemVEaWN0aW9uYXJ5RGF0YT47XG59XG4iXX0=
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
// when localizing the token.
|
|
4
4
|
//
|
|
5
5
|
export {};
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy5pbnRlcmZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2ludGVyZmFjZXMvb3B0aW9ucy5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEVBQUU7QUFDRiwwQ0FBMEM7QUFDMUMsNkJBQTZCO0FBQzdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvL1xuLy8gVGhlc2UgYXJlIHRoZSBvcHRpb25zIHRoYXQgdGhlIHVzZXIgaGFzXG4vLyB3aGVuIGxvY2FsaXppbmcgdGhlIHRva2VuLlxuLy9cblxuZXhwb3J0IGludGVyZmFjZSBMb2NhbGl6ZU9wdGlvbnMge1xuICAgIG9wdGlvbmFsPzogYm9vbGVhbjtcbiAgICBkaWN0aW9uYXJ5Pzogc3RyaW5nO1xuICAgIGRhdGE/OiBMb2NhbGl6ZU9wdGlvbnNEYXRhO1xufVxuXG4vL1xuLy8gVGhpcyBpcyB0aGUgZGF0YSB0aGF0IHRoZSB1c2VyIGNhbiBpbnRlcnBvbGF0ZVxuLy8gaW4gdGhlIGxvY2FsaXplZCBzdHJpbmdzLlxuLy9cblxuZXhwb3J0IGludGVyZmFjZSBMb2NhbGl6ZU9wdGlvbnNEYXRhIHtcbiAgICBbdG9rZW46IHN0cmluZ106IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBEYXRlO1xufVxuXG4vL1xuLy8gVGhlc2UgYXJlIHRoZSBwYXJhbXMgdGhhdCB0aGUgdXNlciBjYW4gc2V0XG4vLyB3aGVuIGhlIHdhbnRzIHRvIGxvY2FsaXplIGEgdG9rZW4gKHdpdGggdGhlXG4vLyBvcHRpb25hbCBvcHRpb25zKS5cbi8vXG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxpemVQYXJhbXMgZXh0ZW5kcyBMb2NhbGl6ZU9wdGlvbnMge1xuICAgIHRva2VuOiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const LOCALIZE_TRANSFORM = new InjectionToken('localize_transform');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3Jtcy5pbnRlcmZhY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2ludGVyZmFjZXMvdHJhbnNmb3Jtcy5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBRXpCLElBQUksY0FBYyxDQUFDLG9CQUFvQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2FsaXplVHJhbnNmb3JtfSBmcm9tICcuLi90cmFuc2Zvcm1zL2Fic3RyYWN0LnRyYW5zZm9ybSc7XG5pbXBvcnQge0luamVjdGlvblRva2VufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IExPQ0FMSVpFX1RSQU5TRk9STVxuICAgIDogSW5qZWN0aW9uVG9rZW48TG9jYWxpemVUcmFuc2Zvcm1bXT5cbiAgICA9IG5ldyBJbmplY3Rpb25Ub2tlbignbG9jYWxpemVfdHJhbnNmb3JtJyk7XG4iXX0=
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import { APP_INITIALIZER, LOCALE_ID, NgModule } from '@angular/core';
|
|
2
2
|
import { BbLocalizeString } from './views/localize-string/localize-string.component';
|
|
3
|
+
import { LocalizeInterpolateTransform } from './transforms/interpolate.transform';
|
|
4
|
+
import { LocalizeReferenceTransform } from './transforms/reference.transform';
|
|
3
5
|
import { LocalizeLowercaseFunction } from './functions/lowercase.function';
|
|
4
6
|
import { LocalizeUppercaseFunction } from './functions/uppercase.function';
|
|
5
7
|
import { BbLocalizeTemplate } from './views/localize-template.directive';
|
|
8
|
+
import { LOCALIZE_TRANSFORM } from './interfaces/transforms.interfaces';
|
|
6
9
|
import { LOCALIZE_FUNCTION } from './interfaces/functions.interfaces';
|
|
7
10
|
import { LocalizeMissingHandler } from './handlers/missing.handler';
|
|
8
11
|
import { LocalizeDateFunction } from './functions/date.function';
|
|
@@ -14,12 +17,15 @@ import { BbLocalize } from './localize.pipe';
|
|
|
14
17
|
import * as i0 from "@angular/core";
|
|
15
18
|
export class LocalizeModule {
|
|
16
19
|
static forRoot(config) {
|
|
17
|
-
|
|
20
|
+
if (config?.languages?.length <= 0) {
|
|
21
|
+
throw new Error('One or more languages should be supplied.');
|
|
22
|
+
}
|
|
23
|
+
const mode = config?.mode ?? 'automatic';
|
|
18
24
|
return {
|
|
19
25
|
ngModule: LocalizeModule,
|
|
20
26
|
providers: [
|
|
21
27
|
// Angular providers.
|
|
22
|
-
...(automatic ? [
|
|
28
|
+
...(mode === 'automatic' ? [
|
|
23
29
|
{ provide: APP_INITIALIZER, deps: [Localize], useFactory: initializeLocale, multi: true },
|
|
24
30
|
{ provide: LOCALE_ID, deps: [Localize], useFactory: getLocale }
|
|
25
31
|
] : []),
|
|
@@ -29,6 +35,9 @@ export class LocalizeModule {
|
|
|
29
35
|
{ provide: LOCALIZE_FUNCTION, useClass: LocalizeLowercaseFunction, multi: true },
|
|
30
36
|
{ provide: LOCALIZE_FUNCTION, useClass: LocalizeUppercaseFunction, multi: true },
|
|
31
37
|
{ provide: LOCALIZE_FUNCTION, useClass: LocalizeDateFunction, multi: true },
|
|
38
|
+
// Transform providers.
|
|
39
|
+
{ provide: LOCALIZE_TRANSFORM, useClass: LocalizeReferenceTransform, deps: [LocalizeConfig], multi: true },
|
|
40
|
+
{ provide: LOCALIZE_TRANSFORM, useClass: LocalizeInterpolateTransform, deps: [LocalizeConfig, LOCALIZE_FUNCTION], multi: true },
|
|
32
41
|
// Handler providers.
|
|
33
42
|
{ provide: LocalizeMissingHandler, useClass: LocalizeMissingHandler },
|
|
34
43
|
// Service providers.
|
|
@@ -66,4 +75,4 @@ export function initializeLocale(localize) {
|
|
|
66
75
|
export function getLocale(localize) {
|
|
67
76
|
return localize?.current?.locale ?? null;
|
|
68
77
|
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9sb2NhbGl6ZS9zcmMvbGliL2xvY2FsaXplLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBdUIsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1EQUFtRCxDQUFDO0FBQ25GLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ2hGLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQy9ELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDMUQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBZTNDLE1BQU0sT0FBTyxjQUFjO0lBRXZCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBc0I7UUFDakMsSUFBSSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sSUFBSSxDQUFDLEVBQUU7WUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO1NBQ2hFO1FBRUQsTUFBTSxJQUFJLEdBQUcsTUFBTSxFQUFFLElBQUksSUFBSSxXQUFXLENBQUM7UUFDekMsT0FBTztZQUNILFFBQVEsRUFBRSxjQUFjO1lBQ3hCLFNBQVMsRUFBRTtnQkFDUCxxQkFBcUI7Z0JBQ3JCLEdBQUcsQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQztvQkFDdkIsRUFBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO29CQUN2RixFQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBQztpQkFDaEUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNQLG1CQUFtQjtnQkFDbkIsRUFBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUM7Z0JBQzNDLHNCQUFzQjtnQkFDdEIsRUFBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLHlCQUF5QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUM7Z0JBQzlFLEVBQUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFFBQVEsRUFBRSx5QkFBeUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDO2dCQUM5RSxFQUFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQztnQkFDekUsdUJBQXVCO2dCQUN2QixFQUFDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxRQUFRLEVBQUUsMEJBQTBCLEVBQUUsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQztnQkFDeEcsRUFBQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLDRCQUE0QixFQUFFLElBQUksRUFBRSxDQUFDLGNBQWMsRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUM7Z0JBQzdILHFCQUFxQjtnQkFDckIsRUFBQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFDO2dCQUNuRSxxQkFBcUI7Z0JBQ3JCLFFBQVE7YUFDWDtTQUNKLENBQUM7SUFDTixDQUFDOzsyR0EvQlEsY0FBYzs0R0FBZCxjQUFjLGlCQVZuQixVQUFVO1FBQ1YsZ0JBQWdCO1FBQ2hCLGtCQUFrQixhQUpaLFlBQVksRUFBRSxXQUFXLGFBTy9CLFVBQVU7UUFDVixnQkFBZ0I7UUFDaEIsa0JBQWtCOzRHQUdiLGNBQWMsWUFaYixZQUFZLEVBQUUsV0FBVzsyRkFZMUIsY0FBYztrQkFiMUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxDQUFDO29CQUNwQyxZQUFZLEVBQUU7d0JBQ1YsVUFBVTt3QkFDVixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLFVBQVU7d0JBQ1YsZ0JBQWdCO3dCQUNoQixrQkFBa0I7cUJBQ3JCO2lCQUNKOztBQW9DRCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsUUFBa0I7SUFDL0MsT0FBTyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7QUFDakMsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUMsUUFBa0I7SUFDeEMsT0FBTyxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUM7QUFDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QVBQX0lOSVRJQUxJWkVSLCBMT0NBTEVfSUQsIE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmJMb2NhbGl6ZVN0cmluZ30gZnJvbSAnLi92aWV3cy9sb2NhbGl6ZS1zdHJpbmcvbG9jYWxpemUtc3RyaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQge0xvY2FsaXplSW50ZXJwb2xhdGVUcmFuc2Zvcm19IGZyb20gJy4vdHJhbnNmb3Jtcy9pbnRlcnBvbGF0ZS50cmFuc2Zvcm0nO1xuaW1wb3J0IHtMb2NhbGl6ZVJlZmVyZW5jZVRyYW5zZm9ybX0gZnJvbSAnLi90cmFuc2Zvcm1zL3JlZmVyZW5jZS50cmFuc2Zvcm0nO1xuaW1wb3J0IHtMb2NhbGl6ZUxvd2VyY2FzZUZ1bmN0aW9ufSBmcm9tICcuL2Z1bmN0aW9ucy9sb3dlcmNhc2UuZnVuY3Rpb24nO1xuaW1wb3J0IHtMb2NhbGl6ZVVwcGVyY2FzZUZ1bmN0aW9ufSBmcm9tICcuL2Z1bmN0aW9ucy91cHBlcmNhc2UuZnVuY3Rpb24nO1xuaW1wb3J0IHtCYkxvY2FsaXplVGVtcGxhdGV9IGZyb20gJy4vdmlld3MvbG9jYWxpemUtdGVtcGxhdGUuZGlyZWN0aXZlJztcbmltcG9ydCB7TE9DQUxJWkVfVFJBTlNGT1JNfSBmcm9tICcuL2ludGVyZmFjZXMvdHJhbnNmb3Jtcy5pbnRlcmZhY2VzJztcbmltcG9ydCB7TE9DQUxJWkVfRlVOQ1RJT059IGZyb20gJy4vaW50ZXJmYWNlcy9mdW5jdGlvbnMuaW50ZXJmYWNlcyc7XG5pbXBvcnQge0xvY2FsaXplTWlzc2luZ0hhbmRsZXJ9IGZyb20gJy4vaGFuZGxlcnMvbWlzc2luZy5oYW5kbGVyJztcbmltcG9ydCB7TG9jYWxpemVEYXRlRnVuY3Rpb259IGZyb20gJy4vZnVuY3Rpb25zL2RhdGUuZnVuY3Rpb24nO1xuaW1wb3J0IHtMb2NhbGl6ZUNvbmZpZ30gZnJvbSAnLi9pbnRlcmZhY2VzL2NvbmZpZy5pbnRlcmZhY2VzJztcbmltcG9ydCB7VXRpbHNNb2R1bGV9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL3V0aWxzJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtMb2NhbGl6ZX0gZnJvbSAnLi9sb2NhbGl6ZS5zZXJ2aWNlJztcbmltcG9ydCB7QmJMb2NhbGl6ZX0gZnJvbSAnLi9sb2NhbGl6ZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBVdGlsc01vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEJiTG9jYWxpemUsXG4gICAgICAgIEJiTG9jYWxpemVTdHJpbmcsXG4gICAgICAgIEJiTG9jYWxpemVUZW1wbGF0ZVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBCYkxvY2FsaXplLFxuICAgICAgICBCYkxvY2FsaXplU3RyaW5nLFxuICAgICAgICBCYkxvY2FsaXplVGVtcGxhdGVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIExvY2FsaXplTW9kdWxlIHtcblxuICAgIHN0YXRpYyBmb3JSb290KGNvbmZpZzogTG9jYWxpemVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPExvY2FsaXplTW9kdWxlPiB7XG4gICAgICAgIGlmIChjb25maWc/Lmxhbmd1YWdlcz8ubGVuZ3RoIDw9IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignT25lIG9yIG1vcmUgbGFuZ3VhZ2VzIHNob3VsZCBiZSBzdXBwbGllZC4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG1vZGUgPSBjb25maWc/Lm1vZGUgPz8gJ2F1dG9tYXRpYyc7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogTG9jYWxpemVNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICAvLyBBbmd1bGFyIHByb3ZpZGVycy5cbiAgICAgICAgICAgICAgICAuLi4obW9kZSA9PT0gJ2F1dG9tYXRpYycgPyBbXG4gICAgICAgICAgICAgICAgICAgIHtwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsIGRlcHM6IFtMb2NhbGl6ZV0sIHVzZUZhY3Rvcnk6IGluaXRpYWxpemVMb2NhbGUsIG11bHRpOiB0cnVlfSxcbiAgICAgICAgICAgICAgICAgICAge3Byb3ZpZGU6IExPQ0FMRV9JRCwgZGVwczogW0xvY2FsaXplXSwgdXNlRmFjdG9yeTogZ2V0TG9jYWxlfVxuICAgICAgICAgICAgICAgIF0gOiBbXSksXG4gICAgICAgICAgICAgICAgLy8gQ29uZmlnIHByb3ZpZGVyLlxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBMb2NhbGl6ZUNvbmZpZywgdXNlVmFsdWU6IGNvbmZpZ30sXG4gICAgICAgICAgICAgICAgLy8gRnVuY3Rpb24gcHJvdmlkZXJzLlxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBMT0NBTElaRV9GVU5DVElPTiwgdXNlQ2xhc3M6IExvY2FsaXplTG93ZXJjYXNlRnVuY3Rpb24sIG11bHRpOiB0cnVlfSxcbiAgICAgICAgICAgICAgICB7cHJvdmlkZTogTE9DQUxJWkVfRlVOQ1RJT04sIHVzZUNsYXNzOiBMb2NhbGl6ZVVwcGVyY2FzZUZ1bmN0aW9uLCBtdWx0aTogdHJ1ZX0sXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6IExPQ0FMSVpFX0ZVTkNUSU9OLCB1c2VDbGFzczogTG9jYWxpemVEYXRlRnVuY3Rpb24sIG11bHRpOiB0cnVlfSxcbiAgICAgICAgICAgICAgICAvLyBUcmFuc2Zvcm0gcHJvdmlkZXJzLlxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBMT0NBTElaRV9UUkFOU0ZPUk0sIHVzZUNsYXNzOiBMb2NhbGl6ZVJlZmVyZW5jZVRyYW5zZm9ybSwgZGVwczogW0xvY2FsaXplQ29uZmlnXSwgbXVsdGk6IHRydWV9LFxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBMT0NBTElaRV9UUkFOU0ZPUk0sIHVzZUNsYXNzOiBMb2NhbGl6ZUludGVycG9sYXRlVHJhbnNmb3JtLCBkZXBzOiBbTG9jYWxpemVDb25maWcsIExPQ0FMSVpFX0ZVTkNUSU9OXSwgbXVsdGk6IHRydWV9LFxuICAgICAgICAgICAgICAgIC8vIEhhbmRsZXIgcHJvdmlkZXJzLlxuICAgICAgICAgICAgICAgIHtwcm92aWRlOiBMb2NhbGl6ZU1pc3NpbmdIYW5kbGVyLCB1c2VDbGFzczogTG9jYWxpemVNaXNzaW5nSGFuZGxlcn0sXG4gICAgICAgICAgICAgICAgLy8gU2VydmljZSBwcm92aWRlcnMuXG4gICAgICAgICAgICAgICAgTG9jYWxpemVcbiAgICAgICAgICAgIF1cbiAgICAgICAgfTtcbiAgICB9XG5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGluaXRpYWxpemVMb2NhbGUobG9jYWxpemU6IExvY2FsaXplKSB7XG4gICAgcmV0dXJuIGxvY2FsaXplLmluaXRpYWxpemUoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldExvY2FsZShsb2NhbGl6ZTogTG9jYWxpemUpIHtcbiAgICByZXR1cm4gbG9jYWxpemU/LmN1cnJlbnQ/LmxvY2FsZSA/PyBudWxsO1xufVxuIl19
|
|
@@ -6,31 +6,28 @@ export class BbLocalize {
|
|
|
6
6
|
this._localize = _localize;
|
|
7
7
|
}
|
|
8
8
|
transform(tokenOrParams, args) {
|
|
9
|
-
//
|
|
10
|
-
|
|
9
|
+
// Combine the params with the options to form the localize params.
|
|
10
|
+
const params = this.combineParamsWithOptions(tokenOrParams, args);
|
|
11
|
+
// Validate that the localize service exists in the pipe.
|
|
11
12
|
if (!this._localize) {
|
|
12
|
-
return
|
|
13
|
+
return params?.token ?? null;
|
|
13
14
|
}
|
|
14
|
-
// Combine the params with the options
|
|
15
|
-
// to form the localize params.
|
|
16
|
-
const params = this.combineParamsWithOptions(tokenOrParams, args);
|
|
17
15
|
// Try to localize the value.
|
|
18
16
|
return this._localize.translate(params);
|
|
19
17
|
}
|
|
20
18
|
combineParamsWithOptions(tokenOrParams, args) {
|
|
21
19
|
// Gather the extras.
|
|
22
|
-
const extras = args
|
|
20
|
+
const extras = args ?? {};
|
|
23
21
|
// Loop through all the keys to find the set options.
|
|
24
22
|
const options = Object.keys(extras).reduce((previous, current) => {
|
|
25
|
-
if (typeof extras[current] === 'undefined') {
|
|
23
|
+
if (typeof extras?.[current] === 'undefined') {
|
|
26
24
|
return previous;
|
|
27
25
|
}
|
|
28
|
-
previous[current]
|
|
29
|
-
return previous;
|
|
26
|
+
return { ...previous, [current]: extras?.[current] };
|
|
30
27
|
}, {});
|
|
31
28
|
// Convert the string token to a params object.
|
|
32
29
|
const params = typeof tokenOrParams === 'string'
|
|
33
|
-
? { token: tokenOrParams, optional: false, data: {} }
|
|
30
|
+
? { token: tokenOrParams, optional: false, data: {}, dictionary: null }
|
|
34
31
|
: tokenOrParams;
|
|
35
32
|
// Return the combined params and options.
|
|
36
33
|
return { ...params, ...options };
|
|
@@ -46,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
|
|
|
46
43
|
}], ctorParameters: function () { return [{ type: i1.Localize, decorators: [{
|
|
47
44
|
type: Optional
|
|
48
45
|
}] }]; } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxpemUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vbG9jYWxpemUvc3JjL2xpYi9sb2NhbGl6ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFnQixNQUFNLGVBQWUsQ0FBQzs7O0FBTTVELE1BQU0sT0FBTyxVQUFVO0lBRW5CLFlBQWdDLFNBQW9CO1FBQXBCLGNBQVMsR0FBVCxTQUFTLENBQVc7SUFDcEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxhQUFzQyxFQUFFLElBQXNCO1FBQ3BFLG1FQUFtRTtRQUNuRSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWxFLHlEQUF5RDtRQUN6RCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNqQixPQUFPLE1BQU0sRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDO1NBQ2hDO1FBRUQsNkJBQTZCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLHdCQUF3QixDQUFDLGFBQXNDLEVBQUUsSUFBc0I7UUFDM0YscUJBQXFCO1FBQ3JCLE1BQU0sTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7UUFFMUIscURBQXFEO1FBQ3JELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQzdELElBQUksT0FBTyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxXQUFXLEVBQUU7Z0JBQzFDLE9BQU8sUUFBUSxDQUFDO2FBQ25CO1lBRUQsT0FBTyxFQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUMsQ0FBQztRQUN2RCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFUCwrQ0FBK0M7UUFDL0MsTUFBTSxNQUFNLEdBQUcsT0FBTyxhQUFhLEtBQUssUUFBUTtZQUM1QyxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFDO1lBQ3JFLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFFcEIsMENBQTBDO1FBQzFDLE9BQU8sRUFBQyxHQUFHLE1BQU0sRUFBRSxHQUFHLE9BQU8sRUFBQyxDQUFDO0lBQ25DLENBQUM7O3VHQXRDUSxVQUFVO3FHQUFWLFVBQVU7MkZBQVYsVUFBVTtrQkFIdEIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsWUFBWTtpQkFDckI7OzBCQUdnQixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhbGl6ZU9wdGlvbnMsIExvY2FsaXplUGFyYW1zfSBmcm9tICcuL2ludGVyZmFjZXMvb3B0aW9ucy5pbnRlcmZhY2VzJztcbmltcG9ydCB7T3B0aW9uYWwsIFBpcGUsIFBpcGVUcmFuc2Zvcm19IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2NhbGl6ZX0gZnJvbSAnLi9sb2NhbGl6ZS5zZXJ2aWNlJztcblxuQFBpcGUoe1xuICAgIG5hbWU6ICdiYkxvY2FsaXplJ1xufSlcbmV4cG9ydCBjbGFzcyBCYkxvY2FsaXplIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwcml2YXRlIF9sb2NhbGl6ZT86IExvY2FsaXplKSB7XG4gICAgfVxuXG4gICAgdHJhbnNmb3JtKHRva2VuT3JQYXJhbXM6IHN0cmluZyB8IExvY2FsaXplUGFyYW1zLCBhcmdzPzogTG9jYWxpemVPcHRpb25zKSB7XG4gICAgICAgIC8vIENvbWJpbmUgdGhlIHBhcmFtcyB3aXRoIHRoZSBvcHRpb25zIHRvIGZvcm0gdGhlIGxvY2FsaXplIHBhcmFtcy5cbiAgICAgICAgY29uc3QgcGFyYW1zID0gdGhpcy5jb21iaW5lUGFyYW1zV2l0aE9wdGlvbnModG9rZW5PclBhcmFtcywgYXJncyk7XG5cbiAgICAgICAgLy8gVmFsaWRhdGUgdGhhdCB0aGUgbG9jYWxpemUgc2VydmljZSBleGlzdHMgaW4gdGhlIHBpcGUuXG4gICAgICAgIGlmICghdGhpcy5fbG9jYWxpemUpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXJhbXM/LnRva2VuID8/IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUcnkgdG8gbG9jYWxpemUgdGhlIHZhbHVlLlxuICAgICAgICByZXR1cm4gdGhpcy5fbG9jYWxpemUudHJhbnNsYXRlKHBhcmFtcyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb21iaW5lUGFyYW1zV2l0aE9wdGlvbnModG9rZW5PclBhcmFtczogc3RyaW5nIHwgTG9jYWxpemVQYXJhbXMsIGFyZ3M/OiBMb2NhbGl6ZU9wdGlvbnMpIHtcbiAgICAgICAgLy8gR2F0aGVyIHRoZSBleHRyYXMuXG4gICAgICAgIGNvbnN0IGV4dHJhcyA9IGFyZ3MgPz8ge307XG5cbiAgICAgICAgLy8gTG9vcCB0aHJvdWdoIGFsbCB0aGUga2V5cyB0byBmaW5kIHRoZSBzZXQgb3B0aW9ucy5cbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IE9iamVjdC5rZXlzKGV4dHJhcykucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBleHRyYXM/LltjdXJyZW50XSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJldmlvdXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB7Li4ucHJldmlvdXMsIFtjdXJyZW50XTogZXh0cmFzPy5bY3VycmVudF19O1xuICAgICAgICB9LCB7fSk7XG5cbiAgICAgICAgLy8gQ29udmVydCB0aGUgc3RyaW5nIHRva2VuIHRvIGEgcGFyYW1zIG9iamVjdC5cbiAgICAgICAgY29uc3QgcGFyYW1zID0gdHlwZW9mIHRva2VuT3JQYXJhbXMgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICA/IHt0b2tlbjogdG9rZW5PclBhcmFtcywgb3B0aW9uYWw6IGZhbHNlLCBkYXRhOiB7fSwgZGljdGlvbmFyeTogbnVsbH1cbiAgICAgICAgICAgIDogdG9rZW5PclBhcmFtcztcblxuICAgICAgICAvLyBSZXR1cm4gdGhlIGNvbWJpbmVkIHBhcmFtcyBhbmQgb3B0aW9ucy5cbiAgICAgICAgcmV0dXJuIHsuLi5wYXJhbXMsIC4uLm9wdGlvbnN9O1xuICAgIH1cblxufVxuIl19
|