@digitaldefiance/i18n-lib 4.7.2 → 4.7.4
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/package.json +1 -1
- package/src/index.d.ts +1 -0
- package/src/index.d.ts.map +1 -1
- package/src/index.js +2 -0
- package/src/index.js.map +1 -1
- package/src/strict-types.d.ts +80 -1
- package/src/strict-types.d.ts.map +1 -1
- package/src/strict-types.js +3 -0
- package/src/strict-types.js.map +1 -1
- package/src/utils.js +2 -2
- package/src/utils.js.map +1 -1
package/package.json
CHANGED
package/src/index.d.ts
CHANGED
|
@@ -45,6 +45,7 @@ export * from './translation-request';
|
|
|
45
45
|
export * from './translation-response';
|
|
46
46
|
export * from './utc-date-vars';
|
|
47
47
|
export * from './validation-config';
|
|
48
|
+
export * from './strict-types';
|
|
48
49
|
export { createCorePluginI18nEngine as createCoreI18n, createCorePluginI18nEngine as createCoreI18nEngine, getCorePluginTranslation as getCoreTranslation, safeCorePluginTranslation as safeCoreTranslation, } from './core-plugin-factory';
|
|
49
50
|
export * from './core-plugin-factory';
|
|
50
51
|
export { PluginI18nEngine as PluginI18n } from './plugin-i18n-engine';
|
package/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/index.ts"],"names":[],"mappings":"AAEA,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,cAAc,cAAc,CAAC;AAI7B,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAGxD,wBAAgB,QAAQ,IAAI,IAAI,CAE/B;AAKD,cAAc,sBAAsB,CAAC;AAKrC,cAAc,4BAA4B,CAAC;AAE3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,sCAAsC,CAAC;AAErD,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EACL,yBAAyB,EACzB,KAAK,uBAAuB,GAC7B,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,cAAc,GACf,MAAM,+BAA+B,CAAC;AAEvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uCAAuC,CAAC;AACtD,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAEpC,OAAO,EACL,0BAA0B,IAAI,cAAc,EAC5C,0BAA0B,IAAI,oBAAoB,EAClD,wBAAwB,IAAI,kBAAkB,EAC9C,yBAAyB,IAAI,mBAAmB,GACjD,MAAM,uBAAuB,CAAC;AAE/B,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,gBAAgB,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGtE,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/index.ts"],"names":[],"mappings":"AAEA,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,cAAc,cAAc,CAAC;AAI7B,OAAO,EAAE,WAAW,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,UAAU,IAAI,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAGxD,wBAAgB,QAAQ,IAAI,IAAI,CAE/B;AAKD,cAAc,sBAAsB,CAAC;AAKrC,cAAc,4BAA4B,CAAC;AAE3C,cAAc,+BAA+B,CAAC;AAE9C,cAAc,sCAAsC,CAAC;AAErD,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,OAAO,EACL,yBAAyB,EACzB,KAAK,uBAAuB,GAC7B,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,cAAc,GACf,MAAM,+BAA+B,CAAC;AAEvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AAExC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uCAAuC,CAAC;AACtD,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,gBAAgB,CAAC;AAE/B,OAAO,EACL,0BAA0B,IAAI,cAAc,EAC5C,0BAA0B,IAAI,oBAAoB,EAClD,wBAAwB,IAAI,kBAAkB,EAC9C,yBAAyB,IAAI,mBAAmB,GACjD,MAAM,uBAAuB,CAAC;AAE/B,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,gBAAgB,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGtE,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C"}
|
package/src/index.js
CHANGED
|
@@ -86,6 +86,8 @@ tslib_1.__exportStar(require("./translation-request"), exports);
|
|
|
86
86
|
tslib_1.__exportStar(require("./translation-response"), exports);
|
|
87
87
|
tslib_1.__exportStar(require("./utc-date-vars"), exports);
|
|
88
88
|
tslib_1.__exportStar(require("./validation-config"), exports);
|
|
89
|
+
// Strict (non-partial) type aliases for compile-time translation completeness checks
|
|
90
|
+
tslib_1.__exportStar(require("./strict-types"), exports);
|
|
89
91
|
// Legacy convenience exports
|
|
90
92
|
var core_plugin_factory_1 = require("./core-plugin-factory");
|
|
91
93
|
Object.defineProperty(exports, "createCoreI18n", { enumerable: true, get: function () { return core_plugin_factory_1.createCorePluginI18nEngine; } });
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/index.ts"],"names":[],"mappings":";;;AA0BA,4BAEC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/index.ts"],"names":[],"mappings":";;;AA0BA,4BAEC;AAsED,kDAEC;;AApGD,kCAAkC;AAClC,uBAAuB;AACvB,qDAA2B;AAC3B,iDAAuB;AACvB,mDAAyB;AACzB,mDAAyB;AACzB,uDAA6B;AAC7B,0DAAgC;AAChC,kDAAwB;AACxB,+DAAqC,CAAC,sBAAsB;AAC5D,kDAAwB;AACxB,yDAGgC,CAAC,6EAA6E;AAF5G,sHAAA,oBAAoB,OAAA;AACpB,oHAAA,kBAAkB,OAAA;AAEpB,6CAA6C;AAC7C,6CAAmE;AAA1D,wGAAA,YAAY,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AACxC,6CAA6D;AAApD,2GAAA,eAAe,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAClC,uDAA6B;AAC7B,2DAA2D;AAC3D,+DAA+D;AAC/D,sBAAsB;AACtB,wDAAiE;AAAxD,uGAAA,WAAW,OAAW;AAC/B,kDAAwD;AAA/C,mGAAA,UAAU,OAAQ;AAC3B,gBAAgB;AAChB,oDAAgD;AAChD,SAAgB,QAAQ;IACtB,wBAAU,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AACD,gFAAgF;AAChF,uCAAuC;AACvC,gFAAgF;AAChF,kEAAkE;AAClE,+DAAqC;AACrC,gFAAgF;AAChF,gCAAgC;AAChC,gFAAgF;AAChF,2DAA2D;AAC3D,qEAA2C;AAC3C,sDAAsD;AACtD,wEAA8C;AAC9C,qCAAqC;AACrC,+EAAqD;AACrD,sDAAsD;AACtD,+DAAqC;AACrC,6CAA6C;AAC7C,yDAAsD;AAA7C,oHAAA,eAAe,OAAA;AACxB,qDAAqD;AACrD,+EAA+E;AAC/E,qEAGsC;AAFpC,iIAAA,yBAAyB,OAAA;AAS3B,4DAA4D;AAC5D,2DAAiC;AACjC,iEAAuC;AACvC,kEAAwC;AACxC,6FAA6F;AAC7F,mEAAyC;AACzC,+DAAqC;AACrC,+DAAqC;AACrC,sDAA4B;AAC5B,4DAAkC;AAClC,uEAA6C;AAC7C,0DAAgC;AAChC,kEAAwC;AACxC,gFAAsD;AACtD,2DAAiC;AACjC,+DAAqC;AACrC,4DAAkC;AAClC,2DAAiC;AACjC,gEAAsC;AACtC,qDAA2B;AAC3B,+DAAqC;AACrC,gEAAsC;AACtC,iEAAuC;AACvC,0DAAgC;AAChC,8DAAoC;AACpC,qFAAqF;AACrF,yDAA+B;AAC/B,6BAA6B;AAC7B,6DAK+B;AAJ7B,qHAAA,0BAA0B,OAAkB;AAC5C,2HAAA,0BAA0B,OAAwB;AAClD,yHAAA,wBAAwB,OAAsB;AAC9C,0HAAA,yBAAyB,OAAuB;AAElD,uCAAuC;AACvC,gEAAsC;AACtC,2DAAsE;AAA7D,gHAAA,gBAAgB,OAAc;AACvC,2BAA2B;AAC3B,6DAAwD;AACxD,SAAgB,mBAAmB;IACjC,qCAAgB,CAAC,QAAQ,EAAE,CAAC;AAC9B,CAAC"}
|
package/src/strict-types.d.ts
CHANGED
|
@@ -1,12 +1,91 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @module strict-types
|
|
3
|
+
*
|
|
4
|
+
* Strict (non-partial) type definitions for i18n string collections.
|
|
5
|
+
*
|
|
6
|
+
* Unlike {@link StringsCollection} and {@link MasterStringsCollection} from `./types`,
|
|
7
|
+
* which use `Partial<>` and allow missing keys/languages to pass type-checking silently,
|
|
8
|
+
* the types in this module require **every** key to be present for **every** language.
|
|
9
|
+
*
|
|
10
|
+
* Use these types in language files and master collection definitions to get compile-time
|
|
11
|
+
* errors when translations are missing, instead of discovering them at runtime via
|
|
12
|
+
* "Translation missing" errors.
|
|
13
|
+
*
|
|
14
|
+
* ## Quick Reference
|
|
15
|
+
*
|
|
16
|
+
* | Partial (old) | Strict (new) |
|
|
17
|
+
* |--------------------------------------|-----------------------------------------------|
|
|
18
|
+
* | `StringsCollection<K>` | `CompleteLanguageStrings<K>` |
|
|
19
|
+
* | `BrandedStringsCollection<E>` | `RequiredBrandedStringsCollection<E>` |
|
|
20
|
+
* | `MasterStringsCollection<K, L>` | `CompleteComponentLanguageStrings<K, L>` |
|
|
21
|
+
* | `BrandedMasterStringsCollection<E,L>`| `RequiredBrandedMasterStringsCollection<E,L>` |
|
|
22
|
+
*/
|
|
23
|
+
import type { AnyBrandedEnum, BrandedEnumValue } from '@digitaldefiance/branded-enum';
|
|
24
|
+
/**
|
|
25
|
+
* Requires that **all** string keys in `TStringKey` are present with `string` values.
|
|
26
|
+
*
|
|
27
|
+
* Drop-in strict replacement for `StringsCollection<TStringKey>`.
|
|
3
28
|
*/
|
|
4
29
|
export type CompleteLanguageStrings<TStringKey extends string> = {
|
|
5
30
|
[K in TStringKey]: string;
|
|
6
31
|
};
|
|
32
|
+
/**
|
|
33
|
+
* Requires that **all** languages in `TLanguages` are present, each containing
|
|
34
|
+
* **all** string keys in `TStringKey`.
|
|
35
|
+
*
|
|
36
|
+
* Drop-in strict replacement for `MasterStringsCollection<TStringKey, TLanguage>`.
|
|
37
|
+
*/
|
|
7
38
|
export type CompleteComponentLanguageStrings<TStringKey extends string, TLanguages extends string> = {
|
|
8
39
|
[L in TLanguages]: CompleteLanguageStrings<TStringKey>;
|
|
9
40
|
};
|
|
41
|
+
/**
|
|
42
|
+
* Strict branded alias: requires **all** keys for a single language.
|
|
43
|
+
*
|
|
44
|
+
* Drop-in strict replacement for `BrandedStringsCollection<E>`.
|
|
45
|
+
*
|
|
46
|
+
* @template E - The branded enum type (use `typeof MyStringKeys`)
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```typescript
|
|
50
|
+
* const MyKeys = createI18nStringKeys('my-component', {
|
|
51
|
+
* Welcome: 'Welcome',
|
|
52
|
+
* Goodbye: 'Goodbye',
|
|
53
|
+
* } as const);
|
|
54
|
+
*
|
|
55
|
+
* // ✅ Compile error if any key is missing
|
|
56
|
+
* const french: RequiredBrandedStringsCollection<typeof MyKeys> = {
|
|
57
|
+
* Welcome: 'Bienvenue',
|
|
58
|
+
* Goodbye: 'Au revoir',
|
|
59
|
+
* };
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
export type RequiredBrandedStringsCollection<E extends AnyBrandedEnum> = CompleteLanguageStrings<BrandedEnumValue<E>>;
|
|
63
|
+
/**
|
|
64
|
+
* Strict branded alias: requires **all** languages AND **all** keys.
|
|
65
|
+
*
|
|
66
|
+
* Drop-in strict replacement for `BrandedMasterStringsCollection<E, TLanguage>`.
|
|
67
|
+
*
|
|
68
|
+
* @template E - The branded enum type (use `typeof MyStringKeys`)
|
|
69
|
+
* @template TLanguage - The language code union type
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```typescript
|
|
73
|
+
* const MyKeys = createI18nStringKeys('my-component', {
|
|
74
|
+
* Welcome: 'Welcome',
|
|
75
|
+
* Goodbye: 'Goodbye',
|
|
76
|
+
* } as const);
|
|
77
|
+
*
|
|
78
|
+
* type Langs = 'en-US' | 'fr' | 'de';
|
|
79
|
+
*
|
|
80
|
+
* // ✅ Compile error if any language or key is missing
|
|
81
|
+
* const all: RequiredBrandedMasterStringsCollection<typeof MyKeys, Langs> = {
|
|
82
|
+
* 'en-US': { Welcome: 'Welcome', Goodbye: 'Goodbye' },
|
|
83
|
+
* 'fr': { Welcome: 'Bienvenue', Goodbye: 'Au revoir' },
|
|
84
|
+
* 'de': { Welcome: 'Willkommen', Goodbye: 'Auf Wiedersehen' },
|
|
85
|
+
* };
|
|
86
|
+
* ```
|
|
87
|
+
*/
|
|
88
|
+
export type RequiredBrandedMasterStringsCollection<E extends AnyBrandedEnum, TLanguage extends string> = CompleteComponentLanguageStrings<BrandedEnumValue<E>, TLanguage>;
|
|
10
89
|
/**
|
|
11
90
|
* Helper to assert at compile-time that an object is a complete component language map.
|
|
12
91
|
* Returns the object unchanged at runtime.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strict-types.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/strict-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"strict-types.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/strict-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AAEvC;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,CAAC,UAAU,SAAS,MAAM,IAAI;KAC9D,CAAC,IAAI,UAAU,GAAG,MAAM;CAC1B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,gCAAgC,CAC1C,UAAU,SAAS,MAAM,EACzB,UAAU,SAAS,MAAM,IACvB;KACD,CAAC,IAAI,UAAU,GAAG,uBAAuB,CAAC,UAAU,CAAC;CACvD,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,gCAAgC,CAAC,CAAC,SAAS,cAAc,IACnE,uBAAuB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,MAAM,sCAAsC,CAChD,CAAC,SAAS,cAAc,EACxB,SAAS,SAAS,MAAM,IACtB,gCAAgC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAMrE;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,UAAU,SAAS,MAAM,EACzB,UAAU,SAAS,MAAM,EAEzB,GAAG,EAAE,gCAAgC,CAAC,UAAU,EAAE,UAAU,CAAC,GAC5D,gCAAgC,CAAC,UAAU,EAAE,UAAU,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,SAAS,MAAM,EAC7D,OAAO,EAAE,uBAAuB,CAAC,UAAU,CAAC,GAC3C,uBAAuB,CAAC,UAAU,CAAC,CAErC"}
|
package/src/strict-types.js
CHANGED
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createCompleteComponentStrings = createCompleteComponentStrings;
|
|
4
4
|
exports.defineLanguageStrings = defineLanguageStrings;
|
|
5
|
+
// =============================================================================
|
|
6
|
+
// Helper Functions
|
|
7
|
+
// =============================================================================
|
|
5
8
|
/**
|
|
6
9
|
* Helper to assert at compile-time that an object is a complete component language map.
|
|
7
10
|
* Returns the object unchanged at runtime.
|
package/src/strict-types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strict-types.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/strict-types.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"strict-types.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/strict-types.ts"],"names":[],"mappings":";;AAmHA,wEAOC;AAKD,sDAIC;AAxBD,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;;GAGG;AACH,SAAgB,8BAA8B,CAI5C,GAA6D;IAE7D,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CACnC,OAA4C;IAE5C,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/src/utils.js
CHANGED
|
@@ -32,7 +32,7 @@ function replaceVariables(str, vars, constants) {
|
|
|
32
32
|
let result = str;
|
|
33
33
|
for (const variable of variables) {
|
|
34
34
|
const varName = variable.slice(1, -1);
|
|
35
|
-
let replacement =
|
|
35
|
+
let replacement = null;
|
|
36
36
|
if (vars && varName in vars) {
|
|
37
37
|
replacement = String(vars[varName]);
|
|
38
38
|
}
|
|
@@ -42,7 +42,7 @@ function replaceVariables(str, vars, constants) {
|
|
|
42
42
|
else if (varName in dateVars) {
|
|
43
43
|
replacement = String(dateVars[varName]);
|
|
44
44
|
}
|
|
45
|
-
if (replacement) {
|
|
45
|
+
if (replacement !== null) {
|
|
46
46
|
result = result.replace(variable, replacement);
|
|
47
47
|
}
|
|
48
48
|
}
|
package/src/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/utils.ts"],"names":[],"mappings":";AAAA,gGAAgG;;AAahG,4CAkCC;AAOD,gCAEC;AAOD,0CAEC;AAOD,kCAIC;AAQD,kDAMC;AA4CD,wCAmBC;AAKD,wDAuBC;AAKD,8CAYC;AAKD,0DAmBC;;AA5ND,8EAAqC;AAErC,mDAAiD;AAEjD;;;;;;GAMG;AACH,SAAgB,gBAAgB,CAC9B,GAAW,EACX,IAAsC,EACtC,SAA0B;IAE1B,2BAA2B;IAC3B,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1C,IAAI,CAAC,SAAS;QAAE,OAAO,GAAG,CAAC;IAE3B,MAAM,QAAQ,GAAG,IAAA,8BAAc,GAAE,CAAC;IAElC,IAAI,MAAM,GAAG,GAAG,CAAC;IACjB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,WAAW,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/utils.ts"],"names":[],"mappings":"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"}
|