@digitaldefiance/i18n-lib 4.6.1 → 4.6.3

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 (76) hide show
  1. package/README.md +76 -5
  2. package/package.json +5 -1
  3. package/src/branded-constants-schema.d.ts +29 -0
  4. package/src/branded-constants-schema.d.ts.map +1 -0
  5. package/src/branded-constants-schema.js +34 -0
  6. package/src/branded-constants-schema.js.map +1 -0
  7. package/src/branded-translation-options.d.ts +38 -0
  8. package/src/branded-translation-options.d.ts.map +1 -0
  9. package/src/branded-translation-options.js +54 -0
  10. package/src/branded-translation-options.js.map +1 -0
  11. package/src/branded-validation-error-formatter.d.ts +71 -0
  12. package/src/branded-validation-error-formatter.d.ts.map +1 -0
  13. package/src/branded-validation-error-formatter.js +107 -0
  14. package/src/branded-validation-error-formatter.js.map +1 -0
  15. package/src/builders/i18n-builder.d.ts +2 -2
  16. package/src/builders/i18n-builder.d.ts.map +1 -1
  17. package/src/builders/i18n-builder.js +0 -1
  18. package/src/builders/i18n-builder.js.map +1 -1
  19. package/src/component-registry.d.ts +2 -1
  20. package/src/component-registry.d.ts.map +1 -1
  21. package/src/component-registry.js.map +1 -1
  22. package/src/core/component-store.d.ts +3 -2
  23. package/src/core/component-store.d.ts.map +1 -1
  24. package/src/core/component-store.js +0 -1
  25. package/src/core/component-store.js.map +1 -1
  26. package/src/core/constants-registry.d.ts +33 -6
  27. package/src/core/constants-registry.d.ts.map +1 -1
  28. package/src/core/constants-registry.js +58 -2
  29. package/src/core/constants-registry.js.map +1 -1
  30. package/src/core/i18n-engine.d.ts +15 -6
  31. package/src/core/i18n-engine.d.ts.map +1 -1
  32. package/src/core/i18n-engine.js +12 -2
  33. package/src/core/i18n-engine.js.map +1 -1
  34. package/src/create-i18n-setup.d.ts.map +1 -1
  35. package/src/create-i18n-setup.js +5 -1
  36. package/src/create-i18n-setup.js.map +1 -1
  37. package/src/errors/i18n-error.d.ts +13 -0
  38. package/src/errors/i18n-error.d.ts.map +1 -1
  39. package/src/errors/i18n-error.js +17 -0
  40. package/src/errors/i18n-error.js.map +1 -1
  41. package/src/index.d.ts +4 -0
  42. package/src/index.d.ts.map +1 -1
  43. package/src/index.js +14 -1
  44. package/src/index.js.map +1 -1
  45. package/src/interfaces/engine-config.interface.d.ts +2 -1
  46. package/src/interfaces/engine-config.interface.d.ts.map +1 -1
  47. package/src/interfaces/i18n-component-package.interface.d.ts +5 -1
  48. package/src/interfaces/i18n-component-package.interface.d.ts.map +1 -1
  49. package/src/interfaces/i18n-constants.interface.d.ts +65 -0
  50. package/src/interfaces/i18n-constants.interface.d.ts.map +1 -0
  51. package/src/interfaces/i18n-constants.interface.js +3 -0
  52. package/src/interfaces/i18n-constants.interface.js.map +1 -0
  53. package/src/interfaces/i18n-engine.interface.d.ts +13 -4
  54. package/src/interfaces/i18n-engine.interface.d.ts.map +1 -1
  55. package/src/interfaces/i18n-setup-config.interface.d.ts +2 -1
  56. package/src/interfaces/i18n-setup-config.interface.d.ts.map +1 -1
  57. package/src/interfaces/i18n-setup-result.interface.d.ts +3 -2
  58. package/src/interfaces/i18n-setup-result.interface.d.ts.map +1 -1
  59. package/src/interfaces/index.d.ts +1 -0
  60. package/src/interfaces/index.d.ts.map +1 -1
  61. package/src/registry-config.d.ts +2 -1
  62. package/src/registry-config.d.ts.map +1 -1
  63. package/src/utils/constants-validation.d.ts +51 -0
  64. package/src/utils/constants-validation.d.ts.map +1 -0
  65. package/src/utils/constants-validation.js +74 -0
  66. package/src/utils/constants-validation.js.map +1 -0
  67. package/src/utils/index.d.ts +1 -0
  68. package/src/utils/index.d.ts.map +1 -1
  69. package/src/utils/index.js +1 -0
  70. package/src/utils/index.js.map +1 -1
  71. package/src/utils/string-utils.d.ts +2 -1
  72. package/src/utils/string-utils.d.ts.map +1 -1
  73. package/src/utils/string-utils.js.map +1 -1
  74. package/src/utils.d.ts +2 -1
  75. package/src/utils.d.ts.map +1 -1
  76. package/src/utils.js.map +1 -1
package/README.md CHANGED
@@ -591,6 +591,45 @@ engine.t('Price in {currency}', { currency: 'USD' }); // "Price in USD"
591
591
 
592
592
  Constants are application-wide values available as template variables in all translations (e.g., `{Site}` in a translation string resolves to the registered value). The `ConstantsRegistry` provides structured, per-component registration with conflict detection and ownership tracking.
593
593
 
594
+ #### Type-Safe Constants with `II18nConstants`
595
+
596
+ All constants passed to the i18n system must satisfy the `II18nConstants` base interface. Library authors define component-specific interfaces extending it for compile-time safety:
597
+
598
+ ```typescript
599
+ import type { II18nConstants } from '@digitaldefiance/i18n-lib';
600
+
601
+ // Define a typed constants interface for your component
602
+ export interface IMyAppI18nConstants extends II18nConstants {
603
+ Site: string;
604
+ SiteTagline: string;
605
+ ApiVersion: number;
606
+ }
607
+
608
+ // TypeScript enforces the shape at compile time
609
+ const constants: IMyAppI18nConstants = {
610
+ Site: 'Acme Corp',
611
+ SiteTagline: 'Building the future',
612
+ ApiVersion: 2,
613
+ };
614
+ ```
615
+
616
+ The library ships two helper types for working with typed constants:
617
+
618
+ - `ConstantKeys<T>` — Extracts the string keys from a constants type
619
+ - `ConstantVariables<T>` — Builds a `Partial<Record<key, string | number>>` for translation variable overrides
620
+
621
+ ```typescript
622
+ import type { ConstantKeys, ConstantVariables } from '@digitaldefiance/i18n-lib';
623
+
624
+ type Keys = ConstantKeys<IMyAppI18nConstants>;
625
+ // 'Site' | 'SiteTagline' | 'ApiVersion'
626
+
627
+ type Vars = ConstantVariables<IMyAppI18nConstants>;
628
+ // { Site?: string | number; SiteTagline?: string | number; ApiVersion?: string | number }
629
+ ```
630
+
631
+ Suite Core ships `ISuiteCoreI18nConstants` (from `@digitaldefiance/suite-core-lib`) with the standard template variable keys used in its translation strings.
632
+
594
633
  #### Registration Flow (via `createI18nSetup`)
595
634
 
596
635
  Library packages declare default constants in their `I18nComponentPackage`. The app overrides them at runtime. The factory handles the ordering automatically:
@@ -643,16 +682,22 @@ engine.resolveConstantOwner('Site'); // 'my-app' (last updater wins)
643
682
  Library authors can bundle default constants with their component package:
644
683
 
645
684
  ```typescript
646
- import type { I18nComponentPackage } from '@digitaldefiance/i18n-lib';
685
+ import type { I18nComponentPackage, II18nConstants } from '@digitaldefiance/i18n-lib';
686
+
687
+ export interface IMyLibI18nConstants extends II18nConstants {
688
+ LibName: string;
689
+ LibVersion: string;
690
+ }
647
691
 
648
692
  export function createMyLibComponentPackage(): I18nComponentPackage {
693
+ const constants: IMyLibI18nConstants = {
694
+ LibName: 'My Library',
695
+ LibVersion: '1.0.0',
696
+ };
649
697
  return {
650
698
  config: createMyLibComponentConfig(),
651
699
  stringKeyEnum: MyLibStringKey,
652
- constants: {
653
- LibName: 'My Library',
654
- LibVersion: '1.0.0',
655
- },
700
+ constants,
656
701
  };
657
702
  }
658
703
  ```
@@ -685,6 +730,32 @@ engine.registerConstants('lib-b', { Site: 'Beta' });
685
730
 
686
731
  Use `updateConstants` instead of `registerConstants` when you intentionally want to override.
687
732
 
733
+ #### Runtime Validation with `validateConstantsCoverage()`
734
+
735
+ Use `validateConstantsCoverage()` in tests to verify that all `{variable}` references in your translation templates have corresponding constant keys. This catches drift between templates and constants at test time:
736
+
737
+ ```typescript
738
+ import { validateConstantsCoverage } from '@digitaldefiance/i18n-lib';
739
+ import { SuiteCoreComponentStrings } from '@digitaldefiance/suite-core-lib';
740
+
741
+ const constants = { Site: 'Test', SiteTagline: 'Tagline', SiteDescription: 'Desc' };
742
+
743
+ const result = validateConstantsCoverage(SuiteCoreComponentStrings, constants, {
744
+ ignoreVariables: ['count', 'name'], // runtime-only variables, not constants
745
+ });
746
+
747
+ expect(result.isValid).toBe(true);
748
+ expect(result.missingConstants).toEqual([]); // no template vars without constants
749
+ expect(result.unusedConstants).toEqual([]); // no constants without template refs
750
+ expect(result.referencedVariables).toContain('Site');
751
+ ```
752
+
753
+ The result object contains:
754
+ - `isValid` — `true` if all template variables have matching constants
755
+ - `missingConstants` — variable names referenced in templates but missing from constants
756
+ - `unusedConstants` — constant keys registered but never referenced in any template
757
+ - `referencedVariables` — all variable names found in templates
758
+
688
759
  **When to use:**
689
760
  - **Constants**: Application-wide values that rarely change (Site, Version, SiteTagline)
690
761
  - **Variables**: Request-specific or dynamic values passed to translate()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digitaldefiance/i18n-lib",
3
- "version": "4.6.1",
3
+ "version": "4.6.3",
4
4
  "description": "i18n library with enum translation support",
5
5
  "homepage": "https://github.com/Digital-Defiance/i18n-lib",
6
6
  "repository": {
@@ -49,7 +49,11 @@
49
49
  "moment-timezone": "^0.6.0",
50
50
  "tslib": "^2.3.0"
51
51
  },
52
+ "peerDependencies": {
53
+ "@digitaldefiance/branded-interface": "^0.0.4"
54
+ },
52
55
  "devDependencies": {
56
+ "@digitaldefiance/branded-interface": "^0.0.4",
53
57
  "@typescript-eslint/eslint-plugin": "^8.53.1",
54
58
  "@typescript-eslint/parser": "^8.53.1",
55
59
  "eslint-plugin-import": "^2.32.0",
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Helper for creating branded interface definitions for i18n constants schemas.
3
+ *
4
+ * Wraps `createBrandedInterface` from `@digitaldefiance/branded-interface`
5
+ * with a simpler API tailored for constants schema creation.
6
+ *
7
+ * @module branded-constants-schema
8
+ */
9
+ import type { BrandedInterfaceDefinition, FieldDescriptor } from '@digitaldefiance/branded-interface';
10
+ /**
11
+ * Creates a branded interface definition for validating i18n constants.
12
+ *
13
+ * This is a convenience wrapper around `createBrandedInterface` that provides
14
+ * a simpler API for defining constants schemas with field descriptors.
15
+ *
16
+ * @param id - Unique identifier for the constants schema
17
+ * @param fields - Record mapping field names to their descriptors
18
+ * @returns A `BrandedInterfaceDefinition` that can be used for validation
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * const MyConstantsSchema = createConstantsSchema<MyConstants>('MyConstants', {
23
+ * siteName: { type: 'string' },
24
+ * maxRetries: { type: 'number', validate: (v) => typeof v === 'number' && v > 0 },
25
+ * });
26
+ * ```
27
+ */
28
+ export declare function createConstantsSchema<T extends Record<string, unknown>>(id: string, fields: Record<keyof T & string, FieldDescriptor>): BrandedInterfaceDefinition<T>;
29
+ //# sourceMappingURL=branded-constants-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branded-constants-schema.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/branded-constants-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EACV,0BAA0B,EAC1B,eAAe,EAChB,MAAM,oCAAoC,CAAC;AAE5C;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrE,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,eAAe,CAAC,GAChD,0BAA0B,CAAC,CAAC,CAAC,CAE/B"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /**
3
+ * Helper for creating branded interface definitions for i18n constants schemas.
4
+ *
5
+ * Wraps `createBrandedInterface` from `@digitaldefiance/branded-interface`
6
+ * with a simpler API tailored for constants schema creation.
7
+ *
8
+ * @module branded-constants-schema
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.createConstantsSchema = createConstantsSchema;
12
+ const branded_interface_1 = require("@digitaldefiance/branded-interface");
13
+ /**
14
+ * Creates a branded interface definition for validating i18n constants.
15
+ *
16
+ * This is a convenience wrapper around `createBrandedInterface` that provides
17
+ * a simpler API for defining constants schemas with field descriptors.
18
+ *
19
+ * @param id - Unique identifier for the constants schema
20
+ * @param fields - Record mapping field names to their descriptors
21
+ * @returns A `BrandedInterfaceDefinition` that can be used for validation
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const MyConstantsSchema = createConstantsSchema<MyConstants>('MyConstants', {
26
+ * siteName: { type: 'string' },
27
+ * maxRetries: { type: 'number', validate: (v) => typeof v === 'number' && v > 0 },
28
+ * });
29
+ * ```
30
+ */
31
+ function createConstantsSchema(id, fields) {
32
+ return (0, branded_interface_1.createBrandedInterface)(id, fields);
33
+ }
34
+ //# sourceMappingURL=branded-constants-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branded-constants-schema.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/branded-constants-schema.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AA0BH,sDAKC;AA7BD,0EAA4E;AAM5E;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,qBAAqB,CACnC,EAAU,EACV,MAAiD;IAEjD,OAAO,IAAA,0CAAsB,EAAI,EAAE,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Branded interface definition for TranslationOptions.
3
+ *
4
+ * Provides runtime validation for translation option objects, catching
5
+ * invalid variable types or malformed language codes before they reach
6
+ * the translation pipeline.
7
+ *
8
+ * @module branded-translation-options
9
+ */
10
+ import type { BrandedInstance, InterfaceSafeParseResult } from '@digitaldefiance/branded-interface';
11
+ /**
12
+ * Branded interface definition for TranslationOptions with field-level validation.
13
+ *
14
+ * - `variables`: optional plain object with string keys and string/number values
15
+ * - `language`: optional non-empty string
16
+ * - `fallback`: optional string
17
+ */
18
+ export declare const BrandedTranslationOptions: import("@digitaldefiance/branded-interface", { with: { "resolution-mode": "import" } }).BrandedInterfaceDefinition<{
19
+ variables?: Record<string, string | number>;
20
+ language?: string;
21
+ fallback?: string;
22
+ }>;
23
+ /**
24
+ * Safely parses a plain object against the BrandedTranslationOptions definition.
25
+ *
26
+ * Returns a discriminated union result:
27
+ * - `{ success: true, value: BrandedInstance<TranslationOptions> }` on success
28
+ * - `{ success: false, error: { message, code, ... } }` on failure
29
+ *
30
+ * @param value - The value to validate
31
+ * @returns A safe parse result
32
+ */
33
+ export declare function safeParseTranslationOptions(value: unknown): InterfaceSafeParseResult<BrandedInstance<{
34
+ variables?: Record<string, string | number>;
35
+ language?: string;
36
+ fallback?: string;
37
+ }>>;
38
+ //# sourceMappingURL=branded-translation-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branded-translation-options.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/branded-translation-options.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EACV,eAAe,EACf,wBAAwB,EACzB,MAAM,oCAAoC,CAAC;AAE5C;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB;gBACxB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;eAChC,MAAM;eACN,MAAM;EAuBjB,CAAC;AAEH;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,GACb,wBAAwB,CACzB,eAAe,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC,CACH,CAEA"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /**
3
+ * Branded interface definition for TranslationOptions.
4
+ *
5
+ * Provides runtime validation for translation option objects, catching
6
+ * invalid variable types or malformed language codes before they reach
7
+ * the translation pipeline.
8
+ *
9
+ * @module branded-translation-options
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BrandedTranslationOptions = void 0;
13
+ exports.safeParseTranslationOptions = safeParseTranslationOptions;
14
+ const branded_interface_1 = require("@digitaldefiance/branded-interface");
15
+ /**
16
+ * Branded interface definition for TranslationOptions with field-level validation.
17
+ *
18
+ * - `variables`: optional plain object with string keys and string/number values
19
+ * - `language`: optional non-empty string
20
+ * - `fallback`: optional string
21
+ */
22
+ exports.BrandedTranslationOptions = (0, branded_interface_1.createBrandedInterface)('I18nTranslationOptions', {
23
+ variables: {
24
+ type: 'object',
25
+ optional: true,
26
+ validate: (v) => typeof v === 'object' &&
27
+ v !== null &&
28
+ !Array.isArray(v) &&
29
+ Object.values(v).every((val) => typeof val === 'string' || typeof val === 'number'),
30
+ },
31
+ language: {
32
+ type: 'string',
33
+ optional: true,
34
+ validate: (v) => typeof v === 'string' && v.trim().length > 0,
35
+ },
36
+ fallback: {
37
+ type: 'string',
38
+ optional: true,
39
+ },
40
+ });
41
+ /**
42
+ * Safely parses a plain object against the BrandedTranslationOptions definition.
43
+ *
44
+ * Returns a discriminated union result:
45
+ * - `{ success: true, value: BrandedInstance<TranslationOptions> }` on success
46
+ * - `{ success: false, error: { message, code, ... } }` on failure
47
+ *
48
+ * @param value - The value to validate
49
+ * @returns A safe parse result
50
+ */
51
+ function safeParseTranslationOptions(value) {
52
+ return (0, branded_interface_1.safeParseInterface)(value, exports.BrandedTranslationOptions);
53
+ }
54
+ //# sourceMappingURL=branded-translation-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branded-translation-options.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/branded-translation-options.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAwDH,kEAUC;AAhED,0EAG4C;AAM5C;;;;;;GAMG;AACU,QAAA,yBAAyB,GAAG,IAAA,0CAAsB,EAI5D,wBAAwB,EAAE;IAC3B,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,CAAC,CAAU,EAAW,EAAE,CAChC,OAAO,CAAC,KAAK,QAAQ;YACrB,CAAC,KAAK,IAAI;YACV,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,CAA4B,CAAC,CAAC,KAAK,CAC/C,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,QAAQ,CAC5D;KACJ;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,CAAC,CAAU,EAAW,EAAE,CAChC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;KAC/C;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI;KACf;CACF,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,SAAgB,2BAA2B,CACzC,KAAc;IAQd,OAAO,IAAA,sCAAkB,EAAC,KAAK,EAAE,iCAAyB,CAAC,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Branded Validation Error Formatter
3
+ *
4
+ * Bridges branded-interface validation failures to translated error messages
5
+ * via the i18n translation engine. Supports configurable key patterns and
6
+ * a fallback language chain.
7
+ *
8
+ * @module branded-validation-error-formatter
9
+ */
10
+ import type { InterfaceSafeParseFailure } from '@digitaldefiance/branded-interface';
11
+ import type { II18nEngine } from './interfaces/i18n-engine.interface';
12
+ /**
13
+ * A single formatted validation error with a translated (or raw) message.
14
+ */
15
+ export interface FormattedValidationError {
16
+ readonly field?: string;
17
+ readonly message: string;
18
+ readonly code: string;
19
+ }
20
+ /**
21
+ * Options for configuring the BrandedValidationErrorFormatter.
22
+ */
23
+ export interface BrandedValidationErrorFormatterOptions {
24
+ /**
25
+ * Translation key pattern. Supports `{code}`, `{field}`, and `{interfaceId}` tokens.
26
+ * @default 'validation.{code}.{field}'
27
+ */
28
+ readonly keyPattern?: string;
29
+ /**
30
+ * Fallback language to try when the active language has no translation.
31
+ * @default 'en-US'
32
+ */
33
+ readonly fallbackLanguage?: string;
34
+ }
35
+ /**
36
+ * Formats branded-interface Safe_Parse failures into translated error messages.
37
+ *
38
+ * Fallback chain per error entry:
39
+ * 1. Translate using the engine's active language
40
+ * 2. Translate using the configured fallback language
41
+ * 3. Return the raw error message from the Safe_Parse result
42
+ *
43
+ * This class never throws — it always returns results gracefully.
44
+ */
45
+ export declare class BrandedValidationErrorFormatter {
46
+ private readonly engine;
47
+ private readonly keyPattern;
48
+ private readonly fallbackLanguage;
49
+ constructor(engine: II18nEngine, options?: BrandedValidationErrorFormatterOptions);
50
+ /**
51
+ * Formats a Safe_Parse failure into an array of translated validation errors.
52
+ *
53
+ * - When the failure has N field errors (N > 0), produces N entries.
54
+ * - When the failure has 0 field errors, produces 1 entry using the error code.
55
+ */
56
+ format(failure: InterfaceSafeParseFailure): FormattedValidationError[];
57
+ /**
58
+ * Resolves a translated message through the fallback chain.
59
+ */
60
+ private resolveMessage;
61
+ /**
62
+ * Attempts to translate a key. Returns null if translation fails or returns
63
+ * a placeholder/key-echo (indicating no translation exists).
64
+ */
65
+ private tryTranslate;
66
+ /**
67
+ * Interpolates the key pattern with the given tokens.
68
+ */
69
+ private interpolateKey;
70
+ }
71
+ //# sourceMappingURL=branded-validation-error-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branded-validation-error-formatter.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/branded-validation-error-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,sCAAsC;IACrD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAKD;;;;;;;;;GASG;AACH,qBAAa,+BAA+B;IAKxC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJzB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;gBAGvB,MAAM,EAAE,WAAW,EACpC,OAAO,CAAC,EAAE,sCAAsC;IAOlD;;;;;OAKG;IACH,MAAM,CAAC,OAAO,EAAE,yBAAyB,GAAG,wBAAwB,EAAE;IA+BtE;;OAEG;IACH,OAAO,CAAC,cAAc;IA6BtB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAuBpB;;OAEG;IACH,OAAO,CAAC,cAAc;CAUvB"}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ /**
3
+ * Branded Validation Error Formatter
4
+ *
5
+ * Bridges branded-interface validation failures to translated error messages
6
+ * via the i18n translation engine. Supports configurable key patterns and
7
+ * a fallback language chain.
8
+ *
9
+ * @module branded-validation-error-formatter
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BrandedValidationErrorFormatter = void 0;
13
+ const DEFAULT_KEY_PATTERN = 'validation.{code}.{field}';
14
+ const DEFAULT_FALLBACK_LANGUAGE = 'en-US';
15
+ /**
16
+ * Formats branded-interface Safe_Parse failures into translated error messages.
17
+ *
18
+ * Fallback chain per error entry:
19
+ * 1. Translate using the engine's active language
20
+ * 2. Translate using the configured fallback language
21
+ * 3. Return the raw error message from the Safe_Parse result
22
+ *
23
+ * This class never throws — it always returns results gracefully.
24
+ */
25
+ class BrandedValidationErrorFormatter {
26
+ engine;
27
+ keyPattern;
28
+ fallbackLanguage;
29
+ constructor(engine, options) {
30
+ this.engine = engine;
31
+ this.keyPattern = options?.keyPattern ?? DEFAULT_KEY_PATTERN;
32
+ this.fallbackLanguage =
33
+ options?.fallbackLanguage ?? DEFAULT_FALLBACK_LANGUAGE;
34
+ }
35
+ /**
36
+ * Formats a Safe_Parse failure into an array of translated validation errors.
37
+ *
38
+ * - When the failure has N field errors (N > 0), produces N entries.
39
+ * - When the failure has 0 field errors, produces 1 entry using the error code.
40
+ */
41
+ format(failure) {
42
+ const { error } = failure;
43
+ const fieldErrors = error.fieldErrors;
44
+ if (fieldErrors && fieldErrors.length > 0) {
45
+ return fieldErrors.map((fe) => ({
46
+ field: fe.field,
47
+ message: this.resolveMessage(fe.field, error.code, error.interfaceId, fe.message),
48
+ code: error.code,
49
+ }));
50
+ }
51
+ // No field errors — produce a single entry using the error code as key
52
+ return [
53
+ {
54
+ message: this.resolveMessage(undefined, error.code, error.interfaceId, error.message),
55
+ code: error.code,
56
+ },
57
+ ];
58
+ }
59
+ /**
60
+ * Resolves a translated message through the fallback chain.
61
+ */
62
+ resolveMessage(field, code, interfaceId, rawMessage) {
63
+ const key = this.interpolateKey(field, code, interfaceId);
64
+ const componentId = interfaceId ?? 'validation';
65
+ // 1. Try active language
66
+ const activeResult = this.tryTranslate(componentId, key);
67
+ if (activeResult !== null) {
68
+ return activeResult;
69
+ }
70
+ // 2. Try fallback language
71
+ const fallbackResult = this.tryTranslate(componentId, key, this.fallbackLanguage);
72
+ if (fallbackResult !== null) {
73
+ return fallbackResult;
74
+ }
75
+ // 3. Return raw error message
76
+ return rawMessage;
77
+ }
78
+ /**
79
+ * Attempts to translate a key. Returns null if translation fails or returns
80
+ * a placeholder/key-echo (indicating no translation exists).
81
+ */
82
+ tryTranslate(componentId, key, language) {
83
+ try {
84
+ const result = this.engine.translate(componentId, key, undefined, language);
85
+ // If the engine returns the key itself or a bracketed placeholder,
86
+ // treat it as "no translation found"
87
+ if (result === key || result === `[${key}]` || result === `{${key}}`) {
88
+ return null;
89
+ }
90
+ return result;
91
+ }
92
+ catch {
93
+ return null;
94
+ }
95
+ }
96
+ /**
97
+ * Interpolates the key pattern with the given tokens.
98
+ */
99
+ interpolateKey(field, code, interfaceId) {
100
+ return this.keyPattern
101
+ .replace(/\{code\}/g, code)
102
+ .replace(/\{field\}/g, field ?? '')
103
+ .replace(/\{interfaceId\}/g, interfaceId ?? '');
104
+ }
105
+ }
106
+ exports.BrandedValidationErrorFormatter = BrandedValidationErrorFormatter;
107
+ //# sourceMappingURL=branded-validation-error-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"branded-validation-error-formatter.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/branded-validation-error-formatter.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import type { AnyBrandedEnum } from '@digitaldefiance/branded-enum';
5
5
  import { I18nEngine } from '../core/i18n-engine';
6
- import { EngineConfig, LanguageDefinition } from '../interfaces';
6
+ import { EngineConfig, II18nConstants, LanguageDefinition } from '../interfaces';
7
7
  export declare class I18nBuilder {
8
8
  private languages;
9
9
  private config;
@@ -16,7 +16,7 @@ export declare class I18nBuilder {
16
16
  withLanguages(languages: readonly LanguageDefinition[]): this;
17
17
  withDefaultLanguage(languageId: string): this;
18
18
  withFallbackLanguage(languageId: string): this;
19
- withConstants(constants: Record<string, any>): this;
19
+ withConstants<T extends II18nConstants>(constants: T): this;
20
20
  withValidation(validation: EngineConfig['validation']): this;
21
21
  withInstanceKey(key: string): this;
22
22
  withRegisterInstance(register: boolean): this;
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/builders/i18n-builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEjE,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,cAAc,CAAwB;IAE9C,OAAO;IAEP,MAAM,CAAC,MAAM,IAAI,WAAW;IAI5B,aAAa,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,GAAG,IAAI;IAK7D,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAK7C,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAM9C,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAKnD,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,GAAG,IAAI;IAK5D,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKlC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAK7C,gBAAgB,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAK3C;;;;OAIG;IACH,iBAAiB,CAAC,aAAa,EAAE,cAAc,GAAG,IAAI;IAKtD;;;OAGG;IACH,kBAAkB,CAAC,cAAc,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI;IAKnE,QAAQ,IAAI,IAAI;IAKhB,SAAS,IAAI,IAAI;IAKjB,KAAK,IAAI,UAAU;CAkBpB"}
1
+ {"version":3,"file":"i18n-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/builders/i18n-builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,EACnB,MAAM,eAAe,CAAC;AAEvB,qBAAa,WAAW;IACtB,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,gBAAgB,CAAQ;IAChC,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,cAAc,CAAwB;IAE9C,OAAO;IAEP,MAAM,CAAC,MAAM,IAAI,WAAW;IAI5B,aAAa,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,GAAG,IAAI;IAK7D,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAK7C,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAK9C,aAAa,CAAC,CAAC,SAAS,cAAc,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI;IAK3D,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,GAAG,IAAI;IAK5D,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKlC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAK7C,gBAAgB,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAK3C;;;;OAIG;IACH,iBAAiB,CAAC,aAAa,EAAE,cAAc,GAAG,IAAI;IAKtD;;;OAGG;IACH,kBAAkB,CAAC,cAAc,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI;IAKnE,QAAQ,IAAI,IAAI;IAKhB,SAAS,IAAI,IAAI;IAKjB,KAAK,IAAI,UAAU;CAkBpB"}
@@ -29,7 +29,6 @@ class I18nBuilder {
29
29
  this.config.fallbackLanguage = languageId;
30
30
  return this;
31
31
  }
32
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
33
32
  withConstants(constants) {
34
33
  this.config.constants = constants;
35
34
  return this;
@@ -1 +1 @@
1
- {"version":3,"file":"i18n-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/builders/i18n-builder.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,uDAAuD;;;AAGvD,qDAAiD;AAGjD,MAAa,WAAW;IACd,SAAS,GAAyB,EAAE,CAAC;IACrC,MAAM,GAAiB,EAAE,CAAC;IAC1B,WAAW,GAAG,SAAS,CAAC;IACxB,gBAAgB,GAAG,IAAI,CAAC;IACxB,YAAY,GAAG,IAAI,CAAC;IACpB,cAAc,GAAqB,EAAE,CAAC;IAE9C,gBAAuB,CAAC;IAExB,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,aAAa,CAAC,SAAwC;QACpD,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB,CAAC,UAAkB;QACpC,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,UAAU,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB,CAAC,UAAkB;QACrC,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,UAAU,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,8DAA8D;IAC9D,aAAa,CAAC,SAA8B;QAC1C,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,UAAsC;QACnD,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe,CAAC,GAAW;QACzB,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB,CAAC,QAAiB;QACpC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB,CAAC,UAAmB;QAClC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,aAA6B;QAC7C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,cAAyC;QAC1D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS;QACP,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;YACzD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QAEH,gCAAgC;QAChC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1C,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAtGD,kCAsGC"}
1
+ {"version":3,"file":"i18n-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/builders/i18n-builder.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,uDAAuD;;;AAGvD,qDAAiD;AAOjD,MAAa,WAAW;IACd,SAAS,GAAyB,EAAE,CAAC;IACrC,MAAM,GAAiB,EAAE,CAAC;IAC1B,WAAW,GAAG,SAAS,CAAC;IACxB,gBAAgB,GAAG,IAAI,CAAC;IACxB,YAAY,GAAG,IAAI,CAAC;IACpB,cAAc,GAAqB,EAAE,CAAC;IAE9C,gBAAuB,CAAC;IAExB,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,aAAa,CAAC,SAAwC;QACpD,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB,CAAC,UAAkB;QACpC,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,UAAU,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB,CAAC,UAAkB;QACrC,IAAI,CAAC,MAAM,CAAC,gBAAgB,GAAG,UAAU,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAA2B,SAAY;QAClD,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,UAAsC;QACnD,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe,CAAC,GAAW;QACzB,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB,CAAC,QAAiB;QACpC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB,CAAC,UAAmB;QAClC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,aAA6B;QAC7C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,cAAyC;QAC1D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS;QACP,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE;YACzD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QAEH,gCAAgC;QAChC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1C,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AArGD,kCAqGC"}
@@ -4,6 +4,7 @@
4
4
  import type { AnyBrandedEnum } from '@digitaldefiance/branded-enum';
5
5
  import { ComponentDefinition } from './component-definition';
6
6
  import { ComponentRegistration } from './component-registration';
7
+ import type { II18nConstants } from './interfaces/i18n-constants.interface';
7
8
  import { TranslationRequest } from './translation-request';
8
9
  import { TranslationResponse } from './translation-response';
9
10
  import { ComponentLanguageStrings, PartialComponentLanguageStrings } from './types';
@@ -24,7 +25,7 @@ export declare class ComponentRegistry<TLanguages extends string> {
24
25
  * @param validationConfig - Configuration for validation rules.
25
26
  * @param constants - Optional constants for variable replacement in templates.
26
27
  */
27
- constructor(languages: readonly TLanguages[], validationConfig: ValidationConfig, constants?: Record<string, any>);
28
+ constructor(languages: readonly TLanguages[], validationConfig: ValidationConfig, constants?: II18nConstants);
28
29
  /**
29
30
  * Update the set of registered languages (for dynamic language addition).
30
31
  * @param languages - Array of language codes to register.
@@ -1 +1 @@
1
- {"version":3,"file":"component-registry.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/component-registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,wBAAwB,EAExB,+BAA+B,EAEhC,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAoB,MAAM,qBAAqB,CAAC;AAEzE;;GAEG;AACH,qBAAa,iBAAiB,CAAC,UAAU,SAAS,MAAM;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAGvB;IACJ,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAG7B;IACJ,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkB;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAsB;IAEjD;;;;;OAKG;gBAED,SAAS,EAAE,SAAS,UAAU,EAAE,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAOjC;;;OAGG;IACI,yBAAyB,CAAC,SAAS,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAKxE;;;;;;OAMG;IACI,iBAAiB,CAAC,YAAY,SAAS,cAAc,EAC1D,YAAY,EAAE,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,GAC5D,gBAAgB;IA8DnB;;;;;;OAMG;IACI,sBAAsB,CAAC,WAAW,SAAS,MAAM,EACtD,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,+BAA+B,CAAC,WAAW,EAAE,UAAU,CAAC,GAChE,gBAAgB;IA8CnB;;;;;OAKG;IACI,cAAc,CAAC,WAAW,SAAS,MAAM,EAC9C,OAAO,EAAE,kBAAkB,CAAC,WAAW,EAAE,UAAU,CAAC,GACnD,mBAAmB;IA4EtB;;;OAGG;IACI,aAAa,IAAI,aAAa,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAI1E;;;;OAIG;IACI,YAAY,CAAC,YAAY,SAAS,cAAc,EACrD,WAAW,EAAE,MAAM,GAClB,mBAAmB,CAAC,YAAY,CAAC,GAAG,SAAS;IAMhD;;;;OAIG;IACI,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAIjD;;;;OAIG;IACI,mBAAmB,CAAC,WAAW,SAAS,MAAM,EACnD,WAAW,EAAE,MAAM,GAClB,wBAAwB,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,SAAS;IAMhE;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;IA0DrC;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;IAwCpC;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IA+BpB;;OAEG;IACI,kBAAkB,IAAI,IAAI;IAKjC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAmC1B;;;;;;OAMG;IACI,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAaxD;;;;;OAKG;IACI,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;CAuBnD"}
1
+ {"version":3,"file":"component-registry.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/component-registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,cAAc,EAEf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,mBAAmB,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAG5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,wBAAwB,EAExB,+BAA+B,EAEhC,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAoB,MAAM,qBAAqB,CAAC;AAEzE;;GAEG;AACH,qBAAa,iBAAiB,CAAC,UAAU,SAAS,MAAM;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAGvB;IACJ,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAG7B;IACJ,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAkB;IACtD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAiB;IAE5C;;;;;OAKG;gBAED,SAAS,EAAE,SAAS,UAAU,EAAE,EAChC,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,CAAC,EAAE,cAAc;IAO5B;;;OAGG;IACI,yBAAyB,CAAC,SAAS,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAKxE;;;;;;OAMG;IACI,iBAAiB,CAAC,YAAY,SAAS,cAAc,EAC1D,YAAY,EAAE,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,GAC5D,gBAAgB;IA8DnB;;;;;;OAMG;IACI,sBAAsB,CAAC,WAAW,SAAS,MAAM,EACtD,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,+BAA+B,CAAC,WAAW,EAAE,UAAU,CAAC,GAChE,gBAAgB;IA8CnB;;;;;OAKG;IACI,cAAc,CAAC,WAAW,SAAS,MAAM,EAC9C,OAAO,EAAE,kBAAkB,CAAC,WAAW,EAAE,UAAU,CAAC,GACnD,mBAAmB;IA4EtB;;;OAGG;IACI,aAAa,IAAI,aAAa,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAI1E;;;;OAIG;IACI,YAAY,CAAC,YAAY,SAAS,cAAc,EACrD,WAAW,EAAE,MAAM,GAClB,mBAAmB,CAAC,YAAY,CAAC,GAAG,SAAS;IAMhD;;;;OAIG;IACI,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAIjD;;;;OAIG;IACI,mBAAmB,CAAC,WAAW,SAAS,MAAM,EACnD,WAAW,EAAE,MAAM,GAClB,wBAAwB,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,SAAS;IAMhE;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;IA0DrC;;;;;OAKG;IACH,OAAO,CAAC,4BAA4B;IAwCpC;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IA+BpB;;OAEG;IACI,kBAAkB,IAAI,IAAI;IAKjC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAmC1B;;;;;;OAMG;IACI,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAaxD;;;;;OAKG;IACI,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;CAuBnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"component-registry.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/component-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component-registry.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-i18n-lib/src/component-registry.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * Component storage (no generics)
3
3
  */
4
4
  import { ComponentConfig, ValidationResult } from '../interfaces';
5
+ import type { II18nConstants } from '../interfaces/i18n-constants.interface';
5
6
  /**
6
7
  * Class representing a storage for component configurations and translations.
7
8
  */
@@ -13,7 +14,7 @@ export declare class ComponentStore {
13
14
  * Creates a new ComponentStore instance.
14
15
  * @param constants - Optional constants to be used in variable replacement.
15
16
  */
16
- constructor(constants?: Record<string, any>);
17
+ constructor(constants?: II18nConstants);
17
18
  /**
18
19
  * Registers a new component configuration.
19
20
  * @param config - The component configuration to register.
@@ -84,7 +85,7 @@ export declare class ComponentStore {
84
85
  * Sets constants for variable replacement.
85
86
  * @param constants - The constants to set.
86
87
  */
87
- setConstants(constants: Record<string, any>): void;
88
+ setConstants(constants: II18nConstants): void;
88
89
  /**
89
90
  * Clears all registered components and aliases.
90
91
  */