@digitaldefiance/i18n-lib 4.3.2 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/README.md +422 -15
  2. package/package.json +2 -2
  3. package/src/core/i18n-engine.d.ts +29 -3
  4. package/src/core/i18n-engine.d.ts.map +1 -1
  5. package/src/core/i18n-engine.js +69 -9
  6. package/src/core/i18n-engine.js.map +1 -1
  7. package/src/core/string-key-enum-registry.d.ts +76 -1
  8. package/src/core/string-key-enum-registry.d.ts.map +1 -1
  9. package/src/core/string-key-enum-registry.js +147 -18
  10. package/src/core/string-key-enum-registry.js.map +1 -1
  11. package/src/create-i18n-setup.d.ts +11 -0
  12. package/src/create-i18n-setup.d.ts.map +1 -0
  13. package/src/create-i18n-setup.js +89 -0
  14. package/src/create-i18n-setup.js.map +1 -0
  15. package/src/index.d.ts +1 -0
  16. package/src/index.d.ts.map +1 -1
  17. package/src/index.js +4 -1
  18. package/src/index.js.map +1 -1
  19. package/src/interfaces/i18n-component-package.interface.d.ts +14 -0
  20. package/src/interfaces/i18n-component-package.interface.d.ts.map +1 -0
  21. package/src/interfaces/i18n-component-package.interface.js +3 -0
  22. package/src/interfaces/i18n-component-package.interface.js.map +1 -0
  23. package/src/interfaces/i18n-engine.interface.d.ts +3 -2
  24. package/src/interfaces/i18n-engine.interface.d.ts.map +1 -1
  25. package/src/interfaces/i18n-setup-config.interface.d.ts +25 -0
  26. package/src/interfaces/i18n-setup-config.interface.d.ts.map +1 -0
  27. package/src/interfaces/i18n-setup-config.interface.js +3 -0
  28. package/src/interfaces/i18n-setup-config.interface.js.map +1 -0
  29. package/src/interfaces/i18n-setup-result.interface.d.ts +31 -0
  30. package/src/interfaces/i18n-setup-result.interface.d.ts.map +1 -0
  31. package/src/interfaces/i18n-setup-result.interface.js +3 -0
  32. package/src/interfaces/i18n-setup-result.interface.js.map +1 -0
  33. package/src/interfaces/index.d.ts +3 -0
  34. package/src/interfaces/index.d.ts.map +1 -1
@@ -31,6 +31,7 @@ class I18nEngine {
31
31
  config;
32
32
  aliasToComponent = new Map();
33
33
  componentKeyLookup = new Map();
34
+ valueComponentLookupCache = null;
34
35
  /**
35
36
  * Constructs an I18nEngine instance, registering languages, setting defaults,
36
37
  * and optionally registering and setting this instance as default.
@@ -87,7 +88,9 @@ class I18nEngine {
87
88
  register(config) {
88
89
  (0, validation_1.validateComponentId)(config.id);
89
90
  this.registerComponentMetadata(config);
90
- return this.componentStore.register(config);
91
+ const result = this.componentStore.register(config);
92
+ this.invalidateValueComponentLookupCache();
93
+ return result;
91
94
  }
92
95
  /**
93
96
  * Registers a component if not already registered.
@@ -155,6 +158,55 @@ class I18nEngine {
155
158
  });
156
159
  }
157
160
  }
161
+ /**
162
+ * Invalidates the value-to-component lookup cache.
163
+ * Called after component registration so new keys are discoverable.
164
+ */
165
+ invalidateValueComponentLookupCache() {
166
+ this.valueComponentLookupCache = null;
167
+ }
168
+ /**
169
+ * Builds a cache mapping string key values to component IDs
170
+ * by scanning all registered components.
171
+ */
172
+ buildValueComponentLookupCache() {
173
+ const cache = new Map();
174
+ for (const component of this.componentStore.getAll()) {
175
+ const firstLang = Object.keys(component.strings)[0];
176
+ if (firstLang) {
177
+ for (const key of Object.keys(component.strings[firstLang])) {
178
+ if (!cache.has(key)) {
179
+ cache.set(key, component.id);
180
+ }
181
+ }
182
+ }
183
+ }
184
+ return cache;
185
+ }
186
+ /**
187
+ * Resolves a string key value to its component ID, falling back to
188
+ * scanning registered components when the branded enum registry fails
189
+ * (e.g., due to bundler Symbol mismatch in browser environments).
190
+ * @param stringKeyValue - The string key value to resolve.
191
+ * @returns The component ID that owns this string key.
192
+ * @throws {I18nError} If the key is not found in any registered component.
193
+ */
194
+ resolveComponentIdWithFallback(stringKeyValue) {
195
+ // Try registry first
196
+ const registryResult = this.stringKeyEnumRegistry.safeResolveComponentId(stringKeyValue);
197
+ if (registryResult !== null) {
198
+ return registryResult;
199
+ }
200
+ // Fallback: scan components via cache
201
+ if (!this.valueComponentLookupCache) {
202
+ this.valueComponentLookupCache = this.buildValueComponentLookupCache();
203
+ }
204
+ const fallbackResult = this.valueComponentLookupCache.get(stringKeyValue);
205
+ if (fallbackResult) {
206
+ return fallbackResult;
207
+ }
208
+ throw i18n_error_1.I18nError.stringKeyNotRegistered(stringKeyValue);
209
+ }
158
210
  /**
159
211
  * Internal: Normalizes legacy keys into snake_case lowercased.
160
212
  * @param rawKey - The raw key string to normalize.
@@ -614,8 +666,9 @@ class I18nEngine {
614
666
  * will cause an error to be thrown.
615
667
  *
616
668
  * @param stringKeyEnum - Branded enum created by createI18nStringKeys
617
- * @returns The extracted component ID
618
- * @throws {I18nError} If not a valid branded enum (INVALID_STRING_KEY_ENUM)
669
+ * @param componentId - Optional explicit component ID (escape hatch for cross-module scenarios)
670
+ * @returns The extracted or provided component ID
671
+ * @throws {I18nError} If not a valid branded enum and no fallback succeeds (INVALID_STRING_KEY_ENUM)
619
672
  *
620
673
  * @example Basic registration
621
674
  * ```typescript
@@ -628,6 +681,11 @@ class I18nEngine {
628
681
  * console.log(componentId); // 'user'
629
682
  * ```
630
683
  *
684
+ * @example Explicit componentId escape hatch
685
+ * ```typescript
686
+ * engine.registerStringKeyEnum(plainObj, 'user'); // 'user'
687
+ * ```
688
+ *
631
689
  * @example Idempotent registration
632
690
  * ```typescript
633
691
  * engine.registerStringKeyEnum(UserKeys); // 'user'
@@ -637,8 +695,8 @@ class I18nEngine {
637
695
  * @see {@link translateStringKey} - Translate registered string key values
638
696
  * @see {@link hasStringKeyEnum} - Check if an enum is registered
639
697
  */
640
- registerStringKeyEnum(stringKeyEnum) {
641
- return this.stringKeyEnumRegistry.register(stringKeyEnum);
698
+ registerStringKeyEnum(stringKeyEnum, componentId) {
699
+ return this.stringKeyEnumRegistry.register(stringKeyEnum, componentId);
642
700
  }
643
701
  /**
644
702
  * Translates a branded string key value directly.
@@ -688,7 +746,7 @@ class I18nEngine {
688
746
  * @see {@link safeTranslateStringKey} - Safe version that returns placeholder on failure
689
747
  */
690
748
  translateStringKey(stringKeyValue, variables, language) {
691
- const componentId = this.stringKeyEnumRegistry.resolveComponentId(stringKeyValue);
749
+ const componentId = this.resolveComponentIdWithFallback(stringKeyValue);
692
750
  return this.translate(componentId, stringKeyValue, variables, language);
693
751
  }
694
752
  /**
@@ -718,11 +776,13 @@ class I18nEngine {
718
776
  * @see {@link registerStringKeyEnum} - Register enums for translation
719
777
  */
720
778
  safeTranslateStringKey(stringKeyValue, variables, language) {
721
- const componentId = this.stringKeyEnumRegistry.safeResolveComponentId(stringKeyValue);
722
- if (!componentId) {
779
+ try {
780
+ const componentId = this.resolveComponentIdWithFallback(stringKeyValue);
781
+ return this.safeTranslate(componentId, stringKeyValue, variables, language);
782
+ }
783
+ catch {
723
784
  return `[unknown.${String(stringKeyValue)}]`;
724
785
  }
725
- return this.safeTranslate(componentId, stringKeyValue, variables, language);
726
786
  }
727
787
  /**
728
788
  * Checks if a branded string key enum is registered.
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-engine.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/i18n-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n-engine.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/i18n-engine.ts"],"names":[],"mappings":"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"}
@@ -138,7 +138,47 @@ export declare class StringKeyEnumRegistry {
138
138
  * registry.register(UserKeys); // 'user' (same result, no duplicate entry)
139
139
  * ```
140
140
  */
141
- register(enumObj: AnyBrandedEnum): string;
141
+ /**
142
+ * Registers a branded string key enum.
143
+ *
144
+ * Extracts the component ID from the branded enum's metadata and stores
145
+ * a reference to the enum for later lookup. If the enum is already
146
+ * registered, returns the existing component ID without re-registering.
147
+ *
148
+ * ## Detection Strategy
149
+ *
150
+ * 1. Check if already registered by reference (idempotent fast path)
151
+ * 2. If explicit `componentId` is provided, use it directly (escape hatch)
152
+ * 3. Try branded enum detection via `isBrandedEnum()` (happy path)
153
+ * 4. Structural fallback: infer component ID from object values
154
+ * 5. If all detection fails, throw `I18nError.invalidStringKeyEnum()`
155
+ *
156
+ * ## Idempotence
157
+ *
158
+ * Registering the same enum multiple times is safe:
159
+ * - Same enum object: Returns existing component ID (no-op)
160
+ * - Different enum with same component ID: Skips re-registration
161
+ *
162
+ * @param enumObj - The branded enum created by createI18nStringKeys
163
+ * @param componentId - Optional explicit component ID (escape hatch for cross-module scenarios)
164
+ * @returns The extracted or provided component ID
165
+ * @throws {I18nError} If not a valid branded enum and no fallback succeeds (INVALID_STRING_KEY_ENUM)
166
+ *
167
+ * @example Basic registration
168
+ * ```typescript
169
+ * const UserKeys = createI18nStringKeys('user', { Welcome: 'user.welcome' });
170
+ * const componentId = registry.register(UserKeys);
171
+ * console.log(componentId); // 'user'
172
+ * ```
173
+ *
174
+ * @example Explicit componentId escape hatch
175
+ * ```typescript
176
+ * const plainObj = { Welcome: 'user.welcome' } as AnyBrandedEnum;
177
+ * const componentId = registry.register(plainObj, 'user');
178
+ * console.log(componentId); // 'user'
179
+ * ```
180
+ */
181
+ register(enumObj: AnyBrandedEnum, componentId?: string): string;
142
182
  /**
143
183
  * Checks if an enum is registered.
144
184
  *
@@ -234,5 +274,40 @@ export declare class StringKeyEnumRegistry {
234
274
  * ```
235
275
  */
236
276
  clear(): void;
277
+ /**
278
+ * Attempts to infer a component ID from an object's structure.
279
+ *
280
+ * Uses two strategies:
281
+ * 1. **Global registry lookup**: Calls `findEnumSources()` with the object's
282
+ * string values. If any source starts with `i18n:`, extracts the component ID.
283
+ * 2. **Value prefix extraction**: If the object's values follow the
284
+ * `{componentId}.{key}` convention, extracts the common prefix.
285
+ *
286
+ * @param enumObj - The object to infer a component ID from
287
+ * @returns The inferred component ID, or `null` if detection fails
288
+ */
289
+ private inferComponentId;
290
+ /**
291
+ * Attempts to extract a component ID from an enum object using all available strategies.
292
+ *
293
+ * Tries branded enum metadata first (via `getBrandedEnumComponentId()`), then
294
+ * falls back to structural detection (via `inferComponentId()`).
295
+ *
296
+ * @param enumObj - The enum object to extract a component ID from
297
+ * @returns The extracted component ID, or `null` if all strategies fail
298
+ */
299
+ private tryExtractComponentId;
300
+ /**
301
+ * Registers an enum object with a known component ID.
302
+ *
303
+ * Stores the enum in both the `registeredEnums` and `componentIdToEnum` maps.
304
+ * If another enum with the same component ID is already registered, the
305
+ * registration is skipped (idempotent by component ID).
306
+ *
307
+ * @param enumObj - The enum object to register
308
+ * @param componentId - The component ID to associate with the enum
309
+ * @returns The component ID
310
+ */
311
+ private registerWithComponentId;
237
312
  }
238
313
  //# sourceMappingURL=string-key-enum-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-key-enum-registry.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/string-key-enum-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAQpE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,uDAAuD;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAAa,qBAAqB;IAChC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;IAE1E;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA0C;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM;IA+BzC;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAIrC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,IAAI,SAAS,kBAAkB,EAAE;IAQvC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAQlD;;;;;;;;;;;;;;OAcG;IACH,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAiB7D;;;;;;;;;;;;;OAaG;IACH,KAAK,IAAI,IAAI;CAId"}
1
+ {"version":3,"file":"string-key-enum-registry.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/string-key-enum-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAQpE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,uDAAuD;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAAa,qBAAqB;IAChC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;IAE1E;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA0C;IAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM;IA8B/D;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAerC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,IAAI,SAAS,kBAAkB,EAAE;IAQvC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAQlD;;;;;;;;;;;;;;OAcG;IACH,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAiB7D;;;;;;;;;;;;;OAaG;IACH,KAAK,IAAI,IAAI;IAKb;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,gBAAgB;IAmCxB;;;;;;;;OAQG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,uBAAuB;CAehC"}
@@ -134,30 +134,70 @@ class StringKeyEnumRegistry {
134
134
  * registry.register(UserKeys); // 'user' (same result, no duplicate entry)
135
135
  * ```
136
136
  */
137
- register(enumObj) {
138
- // Check if already registered (idempotent)
137
+ /**
138
+ * Registers a branded string key enum.
139
+ *
140
+ * Extracts the component ID from the branded enum's metadata and stores
141
+ * a reference to the enum for later lookup. If the enum is already
142
+ * registered, returns the existing component ID without re-registering.
143
+ *
144
+ * ## Detection Strategy
145
+ *
146
+ * 1. Check if already registered by reference (idempotent fast path)
147
+ * 2. If explicit `componentId` is provided, use it directly (escape hatch)
148
+ * 3. Try branded enum detection via `isBrandedEnum()` (happy path)
149
+ * 4. Structural fallback: infer component ID from object values
150
+ * 5. If all detection fails, throw `I18nError.invalidStringKeyEnum()`
151
+ *
152
+ * ## Idempotence
153
+ *
154
+ * Registering the same enum multiple times is safe:
155
+ * - Same enum object: Returns existing component ID (no-op)
156
+ * - Different enum with same component ID: Skips re-registration
157
+ *
158
+ * @param enumObj - The branded enum created by createI18nStringKeys
159
+ * @param componentId - Optional explicit component ID (escape hatch for cross-module scenarios)
160
+ * @returns The extracted or provided component ID
161
+ * @throws {I18nError} If not a valid branded enum and no fallback succeeds (INVALID_STRING_KEY_ENUM)
162
+ *
163
+ * @example Basic registration
164
+ * ```typescript
165
+ * const UserKeys = createI18nStringKeys('user', { Welcome: 'user.welcome' });
166
+ * const componentId = registry.register(UserKeys);
167
+ * console.log(componentId); // 'user'
168
+ * ```
169
+ *
170
+ * @example Explicit componentId escape hatch
171
+ * ```typescript
172
+ * const plainObj = { Welcome: 'user.welcome' } as AnyBrandedEnum;
173
+ * const componentId = registry.register(plainObj, 'user');
174
+ * console.log(componentId); // 'user'
175
+ * ```
176
+ */
177
+ register(enumObj, componentId) {
178
+ // 1. Check if already registered by reference (idempotent)
139
179
  const existingId = this.registeredEnums.get(enumObj);
140
180
  if (existingId !== undefined) {
141
181
  return existingId;
142
182
  }
143
- // Validate that it's a branded enum
144
- if (!(0, branded_enum_utils_1.isBrandedEnum)(enumObj)) {
145
- throw i18n_error_1.I18nError.invalidStringKeyEnum();
183
+ // 2. If explicit componentId provided, use it directly (escape hatch)
184
+ if (componentId !== undefined) {
185
+ return this.registerWithComponentId(enumObj, componentId);
146
186
  }
147
- // Extract component ID
148
- const componentId = (0, branded_enum_utils_1.getBrandedEnumComponentId)(enumObj);
149
- if (componentId === null) {
150
- throw i18n_error_1.I18nError.invalidStringKeyEnum();
187
+ // 3. Try branded enum detection (happy path)
188
+ if ((0, branded_enum_utils_1.isBrandedEnum)(enumObj)) {
189
+ const id = (0, branded_enum_utils_1.getBrandedEnumComponentId)(enumObj);
190
+ if (id !== null) {
191
+ return this.registerWithComponentId(enumObj, id);
192
+ }
151
193
  }
152
- // Check if another enum with the same component ID is already registered
153
- // If so, skip re-registration (Requirement 1.5)
154
- if (this.componentIdToEnum.has(componentId)) {
155
- return componentId;
194
+ // 4. Structural fallback: try to infer component ID
195
+ const inferredId = this.inferComponentId(enumObj);
196
+ if (inferredId !== null) {
197
+ return this.registerWithComponentId(enumObj, inferredId);
156
198
  }
157
- // Store the registration
158
- this.registeredEnums.set(enumObj, componentId);
159
- this.componentIdToEnum.set(componentId, enumObj);
160
- return componentId;
199
+ // 5. All detection failed
200
+ throw i18n_error_1.I18nError.invalidStringKeyEnum();
161
201
  }
162
202
  /**
163
203
  * Checks if an enum is registered.
@@ -175,7 +215,16 @@ class StringKeyEnumRegistry {
175
215
  * ```
176
216
  */
177
217
  has(enumObj) {
178
- return this.registeredEnums.has(enumObj);
218
+ // 1. Reference equality (fast path)
219
+ if (this.registeredEnums.has(enumObj)) {
220
+ return true;
221
+ }
222
+ // 2. Component ID fallback for cross-module duplicates
223
+ const componentId = this.tryExtractComponentId(enumObj);
224
+ if (componentId !== null) {
225
+ return this.componentIdToEnum.has(componentId);
226
+ }
227
+ return false;
179
228
  }
180
229
  /**
181
230
  * Gets all registered enums with their component IDs.
@@ -284,6 +333,86 @@ class StringKeyEnumRegistry {
284
333
  this.registeredEnums.clear();
285
334
  this.componentIdToEnum.clear();
286
335
  }
336
+ /**
337
+ * Attempts to infer a component ID from an object's structure.
338
+ *
339
+ * Uses two strategies:
340
+ * 1. **Global registry lookup**: Calls `findEnumSources()` with the object's
341
+ * string values. If any source starts with `i18n:`, extracts the component ID.
342
+ * 2. **Value prefix extraction**: If the object's values follow the
343
+ * `{componentId}.{key}` convention, extracts the common prefix.
344
+ *
345
+ * @param enumObj - The object to infer a component ID from
346
+ * @returns The inferred component ID, or `null` if detection fails
347
+ */
348
+ inferComponentId(enumObj) {
349
+ // Collect string values from the object
350
+ const values = Object.values(enumObj).filter((v) => typeof v === 'string');
351
+ if (values.length === 0) {
352
+ return null;
353
+ }
354
+ // Strategy 1: Global registry lookup via findEnumSources
355
+ for (const value of values) {
356
+ const sources = (0, branded_enum_1.findEnumSources)(value);
357
+ for (const source of sources) {
358
+ if (source.startsWith('i18n:')) {
359
+ return source.slice(5); // Remove 'i18n:' prefix
360
+ }
361
+ }
362
+ }
363
+ // Strategy 2: Value prefix extraction — find common {componentId}. prefix
364
+ const firstDotIndex = values[0].indexOf('.');
365
+ if (firstDotIndex <= 0) {
366
+ return null;
367
+ }
368
+ const prefix = values[0].substring(0, firstDotIndex);
369
+ // Verify all values share the same prefix
370
+ for (const value of values) {
371
+ if (!value.startsWith(prefix + '.')) {
372
+ return null;
373
+ }
374
+ }
375
+ return prefix;
376
+ }
377
+ /**
378
+ * Attempts to extract a component ID from an enum object using all available strategies.
379
+ *
380
+ * Tries branded enum metadata first (via `getBrandedEnumComponentId()`), then
381
+ * falls back to structural detection (via `inferComponentId()`).
382
+ *
383
+ * @param enumObj - The enum object to extract a component ID from
384
+ * @returns The extracted component ID, or `null` if all strategies fail
385
+ */
386
+ tryExtractComponentId(enumObj) {
387
+ // Strategy 1: Try branded enum metadata
388
+ const brandedId = (0, branded_enum_utils_1.getBrandedEnumComponentId)(enumObj);
389
+ if (brandedId !== null) {
390
+ return brandedId;
391
+ }
392
+ // Strategy 2: Structural detection fallback
393
+ return this.inferComponentId(enumObj);
394
+ }
395
+ /**
396
+ * Registers an enum object with a known component ID.
397
+ *
398
+ * Stores the enum in both the `registeredEnums` and `componentIdToEnum` maps.
399
+ * If another enum with the same component ID is already registered, the
400
+ * registration is skipped (idempotent by component ID).
401
+ *
402
+ * @param enumObj - The enum object to register
403
+ * @param componentId - The component ID to associate with the enum
404
+ * @returns The component ID
405
+ */
406
+ registerWithComponentId(enumObj, componentId) {
407
+ // Check if another enum with the same component ID is already registered
408
+ if (this.componentIdToEnum.has(componentId)) {
409
+ return componentId;
410
+ }
411
+ // Store the registration
412
+ this.registeredEnums.set(enumObj, componentId);
413
+ this.componentIdToEnum.set(componentId, enumObj);
414
+ return componentId;
415
+ }
287
416
  }
288
417
  exports.StringKeyEnumRegistry = StringKeyEnumRegistry;
289
418
  //# sourceMappingURL=string-key-enum-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-key-enum-registry.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/string-key-enum-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"string-key-enum-registry.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/string-key-enum-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Factory function that creates a complete i18n setup from a config object.
3
+ * Replaces ~200 lines of boilerplate per consumer.
4
+ */
5
+ import type { AnyBrandedEnum } from '@digitaldefiance/branded-enum';
6
+ import type { I18nSetupConfig } from './interfaces/i18n-setup-config.interface';
7
+ import type { I18nSetupResult } from './interfaces/i18n-setup-result.interface';
8
+ export declare function createI18nSetup<TStringKeyEnum extends AnyBrandedEnum>(config: I18nSetupConfig & {
9
+ readonly stringKeyEnum: TStringKeyEnum;
10
+ }): I18nSetupResult<TStringKeyEnum>;
11
+ //# sourceMappingURL=create-i18n-setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-i18n-setup.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/create-i18n-setup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,+BAA+B,CAAC;AAQvC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAIhF,wBAAgB,eAAe,CAAC,cAAc,SAAS,cAAc,EACnE,MAAM,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;CAAE,GACnE,eAAe,CAAC,cAAc,CAAC,CA+GjC"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ /**
3
+ * Factory function that creates a complete i18n setup from a config object.
4
+ * Replaces ~200 lines of boilerplate per consumer.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.createI18nSetup = createI18nSetup;
8
+ const i18n_engine_1 = require("./core/i18n-engine");
9
+ const core_i18n_1 = require("./core-i18n");
10
+ const global_active_context_1 = require("./global-active-context");
11
+ const language_codes_1 = require("./language-codes");
12
+ function createI18nSetup(config) {
13
+ const instanceKey = config.instanceKey ?? 'default';
14
+ const defaultLanguage = config.defaultLanguage ?? language_codes_1.LanguageCodes.EN_US;
15
+ // 1. Create or reuse engine
16
+ const engine = i18n_engine_1.I18nEngine.registerIfNotExists(instanceKey, (0, core_i18n_1.createDefaultLanguages)(), {
17
+ defaultLanguage,
18
+ ...(config.constants ? { constants: config.constants } : {}),
19
+ });
20
+ // 2. Register core component
21
+ const coreReg = (0, core_i18n_1.createCoreComponentRegistration)();
22
+ engine.registerIfNotExists({
23
+ id: coreReg.component.id,
24
+ strings: coreReg.strings,
25
+ });
26
+ // 3. Register library components
27
+ if (config.libraryComponents) {
28
+ for (const pkg of config.libraryComponents) {
29
+ engine.registerIfNotExists(pkg.config);
30
+ if (pkg.stringKeyEnum && !engine.hasStringKeyEnum(pkg.stringKeyEnum)) {
31
+ engine.registerStringKeyEnum(pkg.stringKeyEnum, pkg.config.id);
32
+ }
33
+ }
34
+ }
35
+ // 4. Register app component
36
+ engine.registerIfNotExists({
37
+ id: config.componentId,
38
+ strings: config.strings,
39
+ aliases: config.aliases ? [...config.aliases] : undefined,
40
+ });
41
+ if (!engine.hasStringKeyEnum(config.stringKeyEnum)) {
42
+ engine.registerStringKeyEnum(config.stringKeyEnum);
43
+ }
44
+ // 5. Initialize GlobalActiveContext
45
+ const globalContext = global_active_context_1.GlobalActiveContext.getInstance();
46
+ try {
47
+ globalContext.getContext(config.componentId);
48
+ }
49
+ catch {
50
+ globalContext.createContext(defaultLanguage, defaultLanguage, config.componentId);
51
+ }
52
+ // 6. Build and return result
53
+ const getActiveContext = () => globalContext.getContext(config.componentId);
54
+ const translate = (key, variables, language, context) => {
55
+ const activeCtx = getActiveContext();
56
+ const activeContext = context ?? activeCtx.currentContext;
57
+ const lang = language ??
58
+ (activeContext === 'admin'
59
+ ? activeCtx.adminLanguage
60
+ : activeCtx.language);
61
+ return engine.translateStringKey(key, variables, lang);
62
+ };
63
+ const safeTranslate = (key, variables, language, context) => {
64
+ const activeCtx = getActiveContext();
65
+ const activeContext = context ?? activeCtx.currentContext;
66
+ const lang = language ??
67
+ (activeContext === 'admin'
68
+ ? activeCtx.adminLanguage
69
+ : activeCtx.language);
70
+ return engine.safeTranslateStringKey(key, variables, lang);
71
+ };
72
+ return {
73
+ engine,
74
+ translate,
75
+ safeTranslate,
76
+ get context() {
77
+ return getActiveContext();
78
+ },
79
+ setLanguage: (language) => globalContext.setUserLanguage(language, config.componentId),
80
+ setAdminLanguage: (language) => globalContext.setAdminLanguage(language, config.componentId),
81
+ setContext: (ctx) => globalContext.setLanguageContextSpace(ctx, config.componentId),
82
+ getLanguage: () => getActiveContext().language,
83
+ getAdminLanguage: () => getActiveContext().adminLanguage,
84
+ reset: () => {
85
+ i18n_engine_1.I18nEngine.removeInstance(instanceKey);
86
+ },
87
+ };
88
+ }
89
+ //# sourceMappingURL=create-i18n-setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-i18n-setup.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/create-i18n-setup.ts"],"names":[],"mappings":"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"}
package/src/index.d.ts CHANGED
@@ -16,6 +16,7 @@ export { I18nEngine as I18n } from './core/i18n-engine';
16
16
  export declare function resetAll(): void;
17
17
  export * from './branded-string-key';
18
18
  export * from './branded-enum-utils';
19
+ export { createI18nSetup } from './create-i18n-setup';
19
20
  export type { BrandedEnum, BrandedEnumValue, AnyBrandedEnum, } from '@digitaldefiance/branded-enum';
20
21
  export * from './active-context';
21
22
  export * from './component-definition';