@digitaldefiance/i18n-lib 4.2.20 → 4.3.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.
- package/README.md +222 -0
- package/package.json +1 -1
- package/src/builders/i18n-builder.d.ts +13 -0
- package/src/builders/i18n-builder.d.ts.map +1 -1
- package/src/builders/i18n-builder.js +24 -1
- package/src/builders/i18n-builder.js.map +1 -1
- package/src/core/i18n-engine.d.ts +167 -0
- package/src/core/i18n-engine.d.ts.map +1 -1
- package/src/core/i18n-engine.js +185 -0
- package/src/core/i18n-engine.js.map +1 -1
- package/src/core/index.d.ts +2 -0
- package/src/core/index.d.ts.map +1 -1
- package/src/core/index.js +3 -1
- package/src/core/index.js.map +1 -1
- package/src/core/string-key-enum-registry.d.ts +238 -0
- package/src/core/string-key-enum-registry.d.ts.map +1 -0
- package/src/core/string-key-enum-registry.js +289 -0
- package/src/core/string-key-enum-registry.js.map +1 -0
- package/src/errors/i18n-error.d.ts +15 -0
- package/src/errors/i18n-error.d.ts.map +1 -1
- package/src/errors/i18n-error.js +19 -0
- package/src/errors/i18n-error.js.map +1 -1
- package/src/interfaces/i18n-engine.interface.d.ts +28 -0
- package/src/interfaces/i18n-engine.interface.d.ts.map +1 -1
package/src/core/i18n-engine.js
CHANGED
|
@@ -14,6 +14,7 @@ const component_store_1 = require("./component-store");
|
|
|
14
14
|
const context_manager_1 = require("./context-manager");
|
|
15
15
|
const enum_registry_1 = require("./enum-registry");
|
|
16
16
|
const language_registry_1 = require("./language-registry");
|
|
17
|
+
const string_key_enum_registry_1 = require("./string-key-enum-registry");
|
|
17
18
|
/**
|
|
18
19
|
* I18nEngine implements the II18nEngine interface, providing translation,
|
|
19
20
|
* component registration, enum translation, and context management.
|
|
@@ -25,6 +26,7 @@ class I18nEngine {
|
|
|
25
26
|
static contextManager = new context_manager_1.ContextManager();
|
|
26
27
|
componentStore;
|
|
27
28
|
enumRegistry;
|
|
29
|
+
stringKeyEnumRegistry;
|
|
28
30
|
instanceKey;
|
|
29
31
|
config;
|
|
30
32
|
aliasToComponent = new Map();
|
|
@@ -62,6 +64,7 @@ class I18nEngine {
|
|
|
62
64
|
};
|
|
63
65
|
this.componentStore = new component_store_1.ComponentStore(this.config.constants);
|
|
64
66
|
this.enumRegistry = new enum_registry_1.EnumRegistry((key, vars) => this.safeTranslate(core_component_id_1.CoreI18nComponentId, key, vars));
|
|
67
|
+
this.stringKeyEnumRegistry = new string_key_enum_registry_1.StringKeyEnumRegistry();
|
|
65
68
|
this.instanceKey = options?.instanceKey || I18nEngine.DEFAULT_KEY;
|
|
66
69
|
// Create context
|
|
67
70
|
I18nEngine.contextManager.create(this.instanceKey, this.config.defaultLanguage);
|
|
@@ -590,6 +593,184 @@ class I18nEngine {
|
|
|
590
593
|
hasEnum(enumObj) {
|
|
591
594
|
return this.enumRegistry.has(enumObj);
|
|
592
595
|
}
|
|
596
|
+
/**
|
|
597
|
+
* Registers a branded string key enum for automatic component ID resolution.
|
|
598
|
+
*
|
|
599
|
+
* This method enables direct translation of string key values without requiring
|
|
600
|
+
* per-component wrapper functions. Once registered, the engine can automatically
|
|
601
|
+
* resolve the component ID from any string key value belonging to the enum.
|
|
602
|
+
*
|
|
603
|
+
* ## Registration Behavior
|
|
604
|
+
*
|
|
605
|
+
* - Extracts the component ID from the branded enum's metadata
|
|
606
|
+
* - Stores a reference to the enum for later lookup
|
|
607
|
+
* - Idempotent: re-registering the same enum returns the same component ID
|
|
608
|
+
* - Skips re-registration if another enum with the same component ID exists
|
|
609
|
+
*
|
|
610
|
+
* ## Validation
|
|
611
|
+
*
|
|
612
|
+
* The method validates that the provided object is a branded enum created
|
|
613
|
+
* with `createI18nStringKeys` or `createBrandedEnum`. Non-branded objects
|
|
614
|
+
* will cause an error to be thrown.
|
|
615
|
+
*
|
|
616
|
+
* @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)
|
|
619
|
+
*
|
|
620
|
+
* @example Basic registration
|
|
621
|
+
* ```typescript
|
|
622
|
+
* const UserKeys = createI18nStringKeys('user', {
|
|
623
|
+
* Welcome: 'user.welcome',
|
|
624
|
+
* Goodbye: 'user.goodbye',
|
|
625
|
+
* } as const);
|
|
626
|
+
*
|
|
627
|
+
* const componentId = engine.registerStringKeyEnum(UserKeys);
|
|
628
|
+
* console.log(componentId); // 'user'
|
|
629
|
+
* ```
|
|
630
|
+
*
|
|
631
|
+
* @example Idempotent registration
|
|
632
|
+
* ```typescript
|
|
633
|
+
* engine.registerStringKeyEnum(UserKeys); // 'user'
|
|
634
|
+
* engine.registerStringKeyEnum(UserKeys); // 'user' (same result, no duplicate)
|
|
635
|
+
* ```
|
|
636
|
+
*
|
|
637
|
+
* @see {@link translateStringKey} - Translate registered string key values
|
|
638
|
+
* @see {@link hasStringKeyEnum} - Check if an enum is registered
|
|
639
|
+
*/
|
|
640
|
+
registerStringKeyEnum(stringKeyEnum) {
|
|
641
|
+
return this.stringKeyEnumRegistry.register(stringKeyEnum);
|
|
642
|
+
}
|
|
643
|
+
/**
|
|
644
|
+
* Translates a branded string key value directly.
|
|
645
|
+
*
|
|
646
|
+
* This method automatically resolves the component ID from the branded string
|
|
647
|
+
* key value and calls the underlying `translate` method. It eliminates the need
|
|
648
|
+
* for per-component wrapper functions.
|
|
649
|
+
*
|
|
650
|
+
* ## Resolution Process
|
|
651
|
+
*
|
|
652
|
+
* 1. Resolves the component ID from the string key value using the registry
|
|
653
|
+
* 2. Calls `translate(componentId, stringKeyValue, variables, language)`
|
|
654
|
+
* 3. Returns the translated string
|
|
655
|
+
*
|
|
656
|
+
* ## Prerequisites
|
|
657
|
+
*
|
|
658
|
+
* The branded enum containing the string key value must be registered via
|
|
659
|
+
* {@link registerStringKeyEnum} before calling this method.
|
|
660
|
+
*
|
|
661
|
+
* @template E - The branded enum type
|
|
662
|
+
* @param stringKeyValue - Branded string key value to translate
|
|
663
|
+
* @param variables - Optional variables for template substitution
|
|
664
|
+
* @param language - Optional language code (defaults to current language)
|
|
665
|
+
* @returns Translated string
|
|
666
|
+
* @throws {I18nError} If the string key is not registered (STRING_KEY_NOT_REGISTERED)
|
|
667
|
+
* @throws {I18nError} If the translation key is not found (KEY_NOT_FOUND)
|
|
668
|
+
*
|
|
669
|
+
* @example Basic translation
|
|
670
|
+
* ```typescript
|
|
671
|
+
* const UserKeys = createI18nStringKeys('user', { Welcome: 'user.welcome' });
|
|
672
|
+
* engine.registerStringKeyEnum(UserKeys);
|
|
673
|
+
*
|
|
674
|
+
* engine.translateStringKey(UserKeys.Welcome); // 'Welcome!'
|
|
675
|
+
* ```
|
|
676
|
+
*
|
|
677
|
+
* @example With variables
|
|
678
|
+
* ```typescript
|
|
679
|
+
* engine.translateStringKey(UserKeys.Greeting, { name: 'John' }); // 'Hello, John!'
|
|
680
|
+
* ```
|
|
681
|
+
*
|
|
682
|
+
* @example With explicit language
|
|
683
|
+
* ```typescript
|
|
684
|
+
* engine.translateStringKey(UserKeys.Welcome, undefined, 'es'); // '¡Bienvenido!'
|
|
685
|
+
* ```
|
|
686
|
+
*
|
|
687
|
+
* @see {@link registerStringKeyEnum} - Register enums for translation
|
|
688
|
+
* @see {@link safeTranslateStringKey} - Safe version that returns placeholder on failure
|
|
689
|
+
*/
|
|
690
|
+
translateStringKey(stringKeyValue, variables, language) {
|
|
691
|
+
const componentId = this.stringKeyEnumRegistry.resolveComponentId(stringKeyValue);
|
|
692
|
+
return this.translate(componentId, stringKeyValue, variables, language);
|
|
693
|
+
}
|
|
694
|
+
/**
|
|
695
|
+
* Safely translates a branded string key value.
|
|
696
|
+
*
|
|
697
|
+
* Returns a placeholder string on failure instead of throwing an exception.
|
|
698
|
+
* This is useful for UI code where a missing translation should not crash
|
|
699
|
+
* the application.
|
|
700
|
+
*
|
|
701
|
+
* ## Placeholder Format
|
|
702
|
+
*
|
|
703
|
+
* - If component ID is resolved: `[componentId.stringKeyValue]`
|
|
704
|
+
* - If component ID cannot be resolved: `[unknown.stringKeyValue]`
|
|
705
|
+
*
|
|
706
|
+
* @template E - The branded enum type
|
|
707
|
+
* @param stringKeyValue - Branded string key value to translate
|
|
708
|
+
* @param variables - Optional variables for template substitution
|
|
709
|
+
* @param language - Optional language code (defaults to current language)
|
|
710
|
+
* @returns Translated string or placeholder on failure
|
|
711
|
+
*
|
|
712
|
+
* @example Safe translation
|
|
713
|
+
* ```typescript
|
|
714
|
+
* engine.safeTranslateStringKey(UserKeys.Welcome); // 'Welcome!' or '[user.user.welcome]'
|
|
715
|
+
* ```
|
|
716
|
+
*
|
|
717
|
+
* @see {@link translateStringKey} - Throwing version
|
|
718
|
+
* @see {@link registerStringKeyEnum} - Register enums for translation
|
|
719
|
+
*/
|
|
720
|
+
safeTranslateStringKey(stringKeyValue, variables, language) {
|
|
721
|
+
const componentId = this.stringKeyEnumRegistry.safeResolveComponentId(stringKeyValue);
|
|
722
|
+
if (!componentId) {
|
|
723
|
+
return `[unknown.${String(stringKeyValue)}]`;
|
|
724
|
+
}
|
|
725
|
+
return this.safeTranslate(componentId, stringKeyValue, variables, language);
|
|
726
|
+
}
|
|
727
|
+
/**
|
|
728
|
+
* Checks if a branded string key enum is registered.
|
|
729
|
+
*
|
|
730
|
+
* Uses object reference equality to check registration status.
|
|
731
|
+
*
|
|
732
|
+
* @param stringKeyEnum - The branded enum to check
|
|
733
|
+
* @returns `true` if the enum is registered, `false` otherwise
|
|
734
|
+
*
|
|
735
|
+
* @example
|
|
736
|
+
* ```typescript
|
|
737
|
+
* engine.hasStringKeyEnum(UserKeys); // false (not registered yet)
|
|
738
|
+
* engine.registerStringKeyEnum(UserKeys);
|
|
739
|
+
* engine.hasStringKeyEnum(UserKeys); // true
|
|
740
|
+
* ```
|
|
741
|
+
*
|
|
742
|
+
* @see {@link registerStringKeyEnum} - Register enums
|
|
743
|
+
* @see {@link getStringKeyEnums} - Get all registered enums
|
|
744
|
+
*/
|
|
745
|
+
hasStringKeyEnum(stringKeyEnum) {
|
|
746
|
+
return this.stringKeyEnumRegistry.has(stringKeyEnum);
|
|
747
|
+
}
|
|
748
|
+
/**
|
|
749
|
+
* Gets all registered string key enums with their component IDs.
|
|
750
|
+
*
|
|
751
|
+
* Returns a readonly array of entries containing the enum reference
|
|
752
|
+
* and its associated component ID.
|
|
753
|
+
*
|
|
754
|
+
* @returns Readonly array of objects with enumObj and componentId
|
|
755
|
+
*
|
|
756
|
+
* @example
|
|
757
|
+
* ```typescript
|
|
758
|
+
* engine.registerStringKeyEnum(UserKeys);
|
|
759
|
+
* engine.registerStringKeyEnum(AdminKeys);
|
|
760
|
+
*
|
|
761
|
+
* const enums = engine.getStringKeyEnums();
|
|
762
|
+
* // [
|
|
763
|
+
* // { enumObj: UserKeys, componentId: 'user' },
|
|
764
|
+
* // { enumObj: AdminKeys, componentId: 'admin' }
|
|
765
|
+
* // ]
|
|
766
|
+
* ```
|
|
767
|
+
*
|
|
768
|
+
* @see {@link registerStringKeyEnum} - Register enums
|
|
769
|
+
* @see {@link hasStringKeyEnum} - Check if an enum is registered
|
|
770
|
+
*/
|
|
771
|
+
getStringKeyEnums() {
|
|
772
|
+
return this.stringKeyEnumRegistry.getAll();
|
|
773
|
+
}
|
|
593
774
|
/**
|
|
594
775
|
* Validates all registered components for missing translations or warnings.
|
|
595
776
|
* @returns ValidationResult containing errors and warnings.
|
|
@@ -675,6 +856,10 @@ class I18nEngine {
|
|
|
675
856
|
* Resets all engine instances and clears global registries.
|
|
676
857
|
*/
|
|
677
858
|
static resetAll() {
|
|
859
|
+
// Clear string key enum registries for each instance before clearing instances
|
|
860
|
+
for (const instance of I18nEngine.instances.values()) {
|
|
861
|
+
instance.stringKeyEnumRegistry.clear();
|
|
862
|
+
}
|
|
678
863
|
I18nEngine.instances.clear();
|
|
679
864
|
I18nEngine.defaultKey = null;
|
|
680
865
|
I18nEngine.contextManager.clear();
|
|
@@ -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":";AAAA;;GAEG;;;AASH,4DAA2D;AAC3D,qDAAiD;AAQjD,gDAAiD;AACjD,sDAI8B;AAC9B,gDAA6C;AAC7C,oDAG6B;AAC7B,uDAAmD;AACnD,uDAAmD;AACnD,mDAA+C;AAC/C,2DAAuD;AACvD,yEAAmE;AAEnE;;;GAGG;AACH,MAAa,UAAU;IACb,MAAM,CAAC,SAAS,GAAG,IAAI,GAAG,EAAsB,CAAC;IACjD,MAAM,CAAC,UAAU,GAAkB,IAAI,CAAC;IACxC,MAAM,CAAU,WAAW,GAAG,SAAS,CAAC;IACxC,MAAM,CAAU,cAAc,GAAG,IAAI,gCAAc,EAAE,CAAC;IAE7C,cAAc,CAAiB;IAC/B,YAAY,CAAe;IAC3B,qBAAqB,CAAwB;IAC7C,WAAW,CAAS;IACpB,MAAM,CAAyB;IAC/B,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,kBAAkB,GAAG,IAAI,GAAG,EAA+B,CAAC;IAE7E;;;;;;;;;;;OAWG;IACH,YACE,SAAwC,EACxC,SAAuB,EAAE,EACzB,OAIC;QAED,qBAAqB;QACrB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,oCAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnC,oCAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,eAAe;QACf,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM,GAAG;YACZ,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,WAAW,CAAC,EAAE;YACzD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,WAAW,CAAC,EAAE;YAC3D,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,EAAE;YACjC,UAAU,EAAE;gBACV,sBAAsB,EAAE,KAAK;gBAC7B,wBAAwB,EAAE,IAAI;gBAC9B,GAAG,MAAM,CAAC,UAAU;aACrB;SACF,CAAC;QAEF,IAAI,CAAC,cAAc,GAAG,IAAI,gCAAc,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,CAAC,YAAY,GAAG,IAAI,4BAAY,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CACjD,IAAI,CAAC,aAAa,CAAC,uCAAmB,EAAE,GAAG,EAAE,IAAI,CAAC,CACnD,CAAC;QACF,IAAI,CAAC,qBAAqB,GAAG,IAAI,gDAAqB,EAAE,CAAC;QACzD,IAAI,CAAC,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,UAAU,CAAC,WAAW,CAAC;QAElE,iBAAiB;QACjB,UAAU,CAAC,cAAc,CAAC,MAAM,CAC9B,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,MAAM,CAAC,eAAe,CAC5B,CAAC;QAEF,oBAAoB;QACpB,IAAI,OAAO,EAAE,gBAAgB,KAAK,KAAK,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/C,MAAM,sBAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACnD,CAAC;YACD,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAEjD,IAAI,OAAO,EAAE,YAAY,KAAK,KAAK,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC9D,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;YAC3C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,MAAuB;QAC9B,IAAA,gCAAmB,EAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACH,mBAAmB,CAAC,MAAuB;QACzC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACK,yBAAyB,CAAC,MAAuB;QACvD,MAAM,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;QACrC,sDAAsD;QACtD,qDAAqD;QACrD,MAAM,kBAAkB,GAAG,MAG1B,CAAC;QACF,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC;QAC7C,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,CAAC;QAEjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,IAAI,WAAW;YAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,QAAQ;YAAE,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACxB,IAAI,KAAK;gBAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACzB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,GAAG,EAAkB,CAAC,CAAC;QACtE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC;QAEzD,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAE,YAAoB,EAAE,EAAE;YAC/D,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAY;gBAAE,OAAO;YACvC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACnC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACrD,IAAI,UAAU,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAC1C,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACvC,CAAC;QACH,CAAC,CAAC;QAEF,0CAA0C;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAW,EAAE,EAAE;gBAC7D,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE;gBAC1D,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;oBAClC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,kBAAkB,CAAC,MAAc;QACvC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,MAAM,UAAU,GAAG,MAAM;aACtB,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;aACvB,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;aACtC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,WAAW,EAAE,CAAC;QACjB,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAC5B,MAAc,EACd,MAAc;QAEd,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAE3D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACjD,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,eAAe,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAClD,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;YACrD,CAAC;QACH,CAAC;QAED,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,aAAa,CACX,WAAmB,EACnB,OAA+C;QAE/C,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,WAAmB;QAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;IACtC,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,CACP,WAAmB,EACnB,GAAW,EACX,SAA+B,EAC/B,QAAiB;QAEjB,MAAM,IAAI,GACR,QAAQ;YACR,UAAU,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CACX,WAAmB,EACnB,GAAW,EACX,SAA+B,EAC/B,QAAiB;QAEjB,MAAM,IAAI,GACR,QAAQ;YACR,UAAU,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CACtC,WAAW,EACX,GAAG,EACH,YAAY,EACZ,IAAI,CACL,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,CAAC,CACC,QAAgB,EAChB,SAA+B,EAC/B,QAAiB;QAEjB,IAAA,mCAAsB,EAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,IAAI,GACR,QAAQ;YACR,UAAU,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjE,oFAAoF;QACpF,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAE5D,4EAA4E;QAC5E,iEAAiE;QACjE,IAAI,MAAM,GAAG,QAAQ,CAAC,OAAO,CAC3B,wBAAwB,EACxB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YACjB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC;gBAClC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;gBAE1B,iDAAiD;gBACjD,+DAA+D;gBAC/D,yDAAyD;gBACzD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,sBAAsB,CAC5D,MAAM,EACN,GAAG,CACJ,CAAC;gBACF,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;YACxE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CACF,CAAC;QAEF,sDAAsD;QACtD,oEAAoE;QACpE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;YAC5D,OAAO,YAAY,CAAC,OAAO,CAAC,KAAK,SAAS;gBACxC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC,CAAC,KAAK,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,sBAAsB,CAC5B,SAA+B;QAE/B,IAAI,SAAS,EAAE,CAAC;YACd,IAAA,gCAAkB,EAAC,SAAS,CAAC,CAAC;QAChC,CAAC;QACD,MAAM,QAAQ,GAAwB,IAAA,8BAAgB,GAAE,CAAC;QAEzD,sCAAsC;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC1B,uDAAuD;YACvD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjE,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,gEAAgE;QAChE,+EAA+E;QAC/E,IAAI,CAAC;YACH,4DAA4D;YAC5D,MAAM,mBAAmB,GAAI,UAAkC;iBAC5D,mBAIU,CAAC;YAEd,IACE,mBAAmB;gBACnB,OAAO,mBAAmB,CAAC,WAAW,KAAK,UAAU,EACrD,CAAC;gBACD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,WAAW,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,QAAQ,EAAE,OAAO,CAAC;gBAClC,IAAI,OAAO,EAAE,CAAC;oBACZ,wBAAwB;oBACxB,QAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC;oBACxC,QAAQ,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;oBAClD,QAAQ,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;oBAEpD,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;wBACzB,yCAAyC;wBACzC,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;wBAC9D,QAAQ,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC;wBACzC,QAAQ,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC;oBACvC,CAAC;oBAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;wBACrB,qCAAqC;wBACrC,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAC1D,QAAQ,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC;wBACrC,QAAQ,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC;oBAC3C,CAAC;oBAED,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;wBAC1B,qCAAqC;wBACrC,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,YAAY,CAC3C,OAAO,CAAC,aAAa,CACtB,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,uFAAuF;QACzF,CAAC;QAED,yDAAyD;QACzD,gEAAgE;QAChE,IAAI,SAAS,EAAE,CAAC;YACd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACrD,IAAI,CAAC,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7D,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,KAAc;QACjC,IAAI,KAAK,YAAY,uBAAY;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC;QACtD,IAAI,KAAK,YAAY,mBAAQ;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC;QAClD,IACE,KAAK;YACL,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,IAAI,KAAK;YAChB,OAAQ,KAA6B,CAAC,KAAK,KAAK,UAAU,EAC1D,CAAC;YACD,OAAQ,KAA6B,CAAC,KAAK,CAAC;QAC9C,CAAC;QACD,gDAAgD;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,QAA4B;QAC3C,oCAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,QAAgB;QAC1B,IAAI,CAAC,oCAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,sBAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;QACD,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,QAAgB;QAC/B,IAAI,CAAC,oCAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,sBAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;QACD,UAAU,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACzE,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,OAAO,oCAAgB,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,QAAgB;QAC1B,OAAO,oCAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,8DAA8D;IAC9D,cAAc,CAAC,SAA8B;QAC3C,IAAA,gCAAkB,EAAC,SAAS,CAAC,CAAC;QAC9B,IAAA,wBAAU,EAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACH,8DAA8D;IAC9D,eAAe,CAAC,SAA8B;QAC5C,IAAA,gCAAkB,EAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,YAAY;QACV,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,kBAAkB;QAChB,OAAO,UAAU,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiEG;IACH,YAAY,CACV,OAGsC,EACtC,YAA4D,EAC5D,QAAiB;QAEjB,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAC/B,OAAO,EACP,YAAY,EACZ,QAAQ,CACgC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,aAAa,CACX,OAA+C,EAC/C,KAA+C,EAC/C,QAAiB;QAEjB,MAAM,IAAI,GAAG,QAAQ,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,OAAO,CAAC,OAAe;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,qBAAqB,CAAC,aAA6B;QACjD,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8CG;IACH,kBAAkB,CAChB,cAAmC,EACnC,SAAmC,EACnC,QAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,kBAAkB,CAC/D,cAAwB,CACzB,CAAC;QACF,OAAO,IAAI,CAAC,SAAS,CACnB,WAAW,EACX,cAAwB,EACxB,SAAS,EACT,QAAQ,CACT,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,sBAAsB,CACpB,cAAmC,EACnC,SAAmC,EACnC,QAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,qBAAqB,CAAC,sBAAsB,CACnE,cAAwB,CACzB,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,YAAY,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CACvB,WAAW,EACX,cAAwB,EACxB,SAAS,EACT,QAAQ,CACT,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,gBAAgB,CAAC,aAA6B;QAC5C,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,iBAAiB;QAIf,OAAO,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC5B,MAAM;YACN,QAAQ;SACT,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CACnB,GAAW,EACX,SAAwC,EACxC,MAAqB;QAErB,OAAO,IAAI,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE;YACvC,WAAW,EAAE,GAAG;YAChB,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,mBAAmB,CACxB,GAAW,EACX,SAAwC,EACxC,MAAqB;QAErB,IAAI,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,GAAY;QAC7B,MAAM,WAAW,GAAG,GAAG,IAAI,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,WAAW,CAAC;QAC3E,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,sBAAS,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW,CAAC,GAAY;QAC7B,MAAM,WAAW,GAAG,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC;QAClD,OAAO,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/C,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,GAAY;QAChC,MAAM,WAAW,GAAG,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC;QAClD,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACzD,IAAI,OAAO,IAAI,UAAU,CAAC,UAAU,KAAK,WAAW,EAAE,CAAC;YACrD,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ;QACb,+EAA+E;QAC/E,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YACrD,QAAQ,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACzC,CAAC;QACD,UAAU,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAC7B,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC;QAC7B,UAAU,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAClC,oCAAgB,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;;AAz/BH,gCA0/BC"}
|
package/src/core/index.d.ts
CHANGED
|
@@ -9,5 +9,7 @@ export { ContextManager } from './context-manager';
|
|
|
9
9
|
export { EnumRegistry } from './enum-registry';
|
|
10
10
|
export { I18nEngine } from './i18n-engine';
|
|
11
11
|
export { LanguageRegistry } from './language-registry';
|
|
12
|
+
export { StringKeyEnumRegistry } from './string-key-enum-registry';
|
|
12
13
|
export type { Context } from './context-manager';
|
|
14
|
+
export type { StringKeyEnumEntry } from './string-key-enum-registry';
|
|
13
15
|
//# sourceMappingURL=index.d.ts.map
|
package/src/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,YAAY,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC"}
|
package/src/core/index.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* to minimize runtime circular dependencies while maintaining type availability.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.LanguageRegistry = exports.I18nEngine = exports.EnumRegistry = exports.ContextManager = exports.ComponentStore = void 0;
|
|
9
|
+
exports.StringKeyEnumRegistry = exports.LanguageRegistry = exports.I18nEngine = exports.EnumRegistry = exports.ContextManager = exports.ComponentStore = void 0;
|
|
10
10
|
// Export classes (runtime dependencies)
|
|
11
11
|
var component_store_1 = require("./component-store");
|
|
12
12
|
Object.defineProperty(exports, "ComponentStore", { enumerable: true, get: function () { return component_store_1.ComponentStore; } });
|
|
@@ -18,4 +18,6 @@ var i18n_engine_1 = require("./i18n-engine");
|
|
|
18
18
|
Object.defineProperty(exports, "I18nEngine", { enumerable: true, get: function () { return i18n_engine_1.I18nEngine; } });
|
|
19
19
|
var language_registry_1 = require("./language-registry");
|
|
20
20
|
Object.defineProperty(exports, "LanguageRegistry", { enumerable: true, get: function () { return language_registry_1.LanguageRegistry; } });
|
|
21
|
+
var string_key_enum_registry_1 = require("./string-key-enum-registry");
|
|
22
|
+
Object.defineProperty(exports, "StringKeyEnumRegistry", { enumerable: true, get: function () { return string_key_enum_registry_1.StringKeyEnumRegistry; } });
|
|
21
23
|
//# sourceMappingURL=index.js.map
|
package/src/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,wCAAwC;AACxC,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-i18n-lib/src/core/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,wCAAwC;AACxC,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,uEAAmE;AAA1D,iIAAA,qBAAqB,OAAA"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* String Key Enum Registry for managing branded string key enum registrations
|
|
3
|
+
*
|
|
4
|
+
* This module provides the `StringKeyEnumRegistry` class for managing registrations
|
|
5
|
+
* of branded string key enums created with `createI18nStringKeys`. It enables
|
|
6
|
+
* automatic resolution of component IDs from string key values, eliminating the
|
|
7
|
+
* need for per-component wrapper functions.
|
|
8
|
+
*
|
|
9
|
+
* ## Overview
|
|
10
|
+
*
|
|
11
|
+
* The `StringKeyEnumRegistry` is an internal registry that:
|
|
12
|
+
* - Stores references to branded string key enums with their component IDs
|
|
13
|
+
* - Resolves string key values to their owning component IDs
|
|
14
|
+
* - Supports idempotent registration (same enum can be registered multiple times)
|
|
15
|
+
*
|
|
16
|
+
* ## Key Features
|
|
17
|
+
*
|
|
18
|
+
* - **Component ID Extraction**: Automatically extracts component IDs from branded enums
|
|
19
|
+
* - **Key Resolution**: Uses branded-enum's `findEnumSources` for efficient key lookup
|
|
20
|
+
* - **Idempotent Registration**: Re-registering the same enum is a no-op
|
|
21
|
+
* - **Safe Resolution**: Provides both throwing and non-throwing resolution methods
|
|
22
|
+
*
|
|
23
|
+
* @example Basic usage
|
|
24
|
+
* ```typescript
|
|
25
|
+
* import { createI18nStringKeys } from '../branded-string-key';
|
|
26
|
+
*
|
|
27
|
+
* const UserKeys = createI18nStringKeys('user', {
|
|
28
|
+
* Welcome: 'user.welcome',
|
|
29
|
+
* Goodbye: 'user.goodbye',
|
|
30
|
+
* } as const);
|
|
31
|
+
*
|
|
32
|
+
* const registry = new StringKeyEnumRegistry();
|
|
33
|
+
* registry.register(UserKeys); // Returns 'user'
|
|
34
|
+
*
|
|
35
|
+
* registry.has(UserKeys); // true
|
|
36
|
+
* registry.resolveComponentId('user.welcome'); // 'user'
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* @module core/string-key-enum-registry
|
|
40
|
+
* @see {@link I18nEngine} - Main engine that uses this registry
|
|
41
|
+
* @see {@link createI18nStringKeys} - Factory for creating branded string key enums
|
|
42
|
+
*/
|
|
43
|
+
import type { AnyBrandedEnum } from '@digitaldefiance/branded-enum';
|
|
44
|
+
/**
|
|
45
|
+
* Entry representing a registered string key enum with its component ID.
|
|
46
|
+
*/
|
|
47
|
+
export interface StringKeyEnumEntry {
|
|
48
|
+
/** Reference to the branded enum object */
|
|
49
|
+
readonly enumObj: AnyBrandedEnum;
|
|
50
|
+
/** The component ID extracted from the enum's brand */
|
|
51
|
+
readonly componentId: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Registry for managing branded string key enum registrations.
|
|
55
|
+
*
|
|
56
|
+
* Provides centralized management of branded string key enums, enabling
|
|
57
|
+
* automatic component ID resolution from string key values. This eliminates
|
|
58
|
+
* the need for per-component wrapper functions when translating string keys.
|
|
59
|
+
*
|
|
60
|
+
* ## Registration
|
|
61
|
+
*
|
|
62
|
+
* Use {@link register} to add a branded string key enum. The component ID
|
|
63
|
+
* is automatically extracted from the enum's brand metadata.
|
|
64
|
+
*
|
|
65
|
+
* ## Resolution
|
|
66
|
+
*
|
|
67
|
+
* Use {@link resolveComponentId} or {@link safeResolveComponentId} to find
|
|
68
|
+
* which component owns a given string key value.
|
|
69
|
+
*
|
|
70
|
+
* ## Idempotence
|
|
71
|
+
*
|
|
72
|
+
* Registering the same enum multiple times is safe and returns the same
|
|
73
|
+
* component ID. The registry maintains exactly one entry per enum object.
|
|
74
|
+
*
|
|
75
|
+
* @example Complete workflow
|
|
76
|
+
* ```typescript
|
|
77
|
+
* const registry = new StringKeyEnumRegistry();
|
|
78
|
+
*
|
|
79
|
+
* // Register enums
|
|
80
|
+
* const userId = registry.register(UserKeys); // 'user'
|
|
81
|
+
* const adminId = registry.register(AdminKeys); // 'admin'
|
|
82
|
+
*
|
|
83
|
+
* // Check registration
|
|
84
|
+
* registry.has(UserKeys); // true
|
|
85
|
+
* registry.has(OtherEnum); // false
|
|
86
|
+
*
|
|
87
|
+
* // Resolve component IDs
|
|
88
|
+
* registry.resolveComponentId('user.welcome'); // 'user'
|
|
89
|
+
* registry.safeResolveComponentId('unknown.key'); // null
|
|
90
|
+
*
|
|
91
|
+
* // Get all registrations
|
|
92
|
+
* registry.getAll(); // [{ enumObj: UserKeys, componentId: 'user' }, ...]
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
export declare class StringKeyEnumRegistry {
|
|
96
|
+
/**
|
|
97
|
+
* Map of registered branded enums to their component IDs.
|
|
98
|
+
* Uses the enum object reference as the key for object identity comparison.
|
|
99
|
+
*/
|
|
100
|
+
private readonly registeredEnums;
|
|
101
|
+
/**
|
|
102
|
+
* Reverse lookup map from component ID to enum object.
|
|
103
|
+
* Used for efficient component ID-based lookups.
|
|
104
|
+
*/
|
|
105
|
+
private readonly componentIdToEnum;
|
|
106
|
+
/**
|
|
107
|
+
* Registers a branded string key enum.
|
|
108
|
+
*
|
|
109
|
+
* Extracts the component ID from the branded enum's metadata and stores
|
|
110
|
+
* a reference to the enum for later lookup. If the enum is already
|
|
111
|
+
* registered, returns the existing component ID without re-registering.
|
|
112
|
+
*
|
|
113
|
+
* ## Idempotence
|
|
114
|
+
*
|
|
115
|
+
* Registering the same enum multiple times is safe:
|
|
116
|
+
* - Same enum object: Returns existing component ID (no-op)
|
|
117
|
+
* - Different enum with same component ID: Skips re-registration
|
|
118
|
+
*
|
|
119
|
+
* ## Validation
|
|
120
|
+
*
|
|
121
|
+
* The method validates that the provided object is a branded enum
|
|
122
|
+
* created with `createI18nStringKeys` or `createBrandedEnum`.
|
|
123
|
+
*
|
|
124
|
+
* @param enumObj - The branded enum created by createI18nStringKeys
|
|
125
|
+
* @returns The extracted component ID
|
|
126
|
+
* @throws {I18nError} If not a valid branded enum (INVALID_STRING_KEY_ENUM)
|
|
127
|
+
*
|
|
128
|
+
* @example Basic registration
|
|
129
|
+
* ```typescript
|
|
130
|
+
* const UserKeys = createI18nStringKeys('user', { Welcome: 'user.welcome' });
|
|
131
|
+
* const componentId = registry.register(UserKeys);
|
|
132
|
+
* console.log(componentId); // 'user'
|
|
133
|
+
* ```
|
|
134
|
+
*
|
|
135
|
+
* @example Idempotent registration
|
|
136
|
+
* ```typescript
|
|
137
|
+
* registry.register(UserKeys); // 'user'
|
|
138
|
+
* registry.register(UserKeys); // 'user' (same result, no duplicate entry)
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
register(enumObj: AnyBrandedEnum): string;
|
|
142
|
+
/**
|
|
143
|
+
* Checks if an enum is registered.
|
|
144
|
+
*
|
|
145
|
+
* Uses object reference equality to check registration status.
|
|
146
|
+
*
|
|
147
|
+
* @param enumObj - The branded enum to check
|
|
148
|
+
* @returns `true` if the enum is registered, `false` otherwise
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```typescript
|
|
152
|
+
* registry.has(UserKeys); // false (not registered yet)
|
|
153
|
+
* registry.register(UserKeys);
|
|
154
|
+
* registry.has(UserKeys); // true
|
|
155
|
+
* ```
|
|
156
|
+
*/
|
|
157
|
+
has(enumObj: AnyBrandedEnum): boolean;
|
|
158
|
+
/**
|
|
159
|
+
* Gets all registered enums with their component IDs.
|
|
160
|
+
*
|
|
161
|
+
* Returns a readonly array of entries containing the enum reference
|
|
162
|
+
* and its associated component ID.
|
|
163
|
+
*
|
|
164
|
+
* @returns Readonly array of StringKeyEnumEntry objects
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* ```typescript
|
|
168
|
+
* registry.register(UserKeys);
|
|
169
|
+
* registry.register(AdminKeys);
|
|
170
|
+
*
|
|
171
|
+
* const entries = registry.getAll();
|
|
172
|
+
* // [
|
|
173
|
+
* // { enumObj: UserKeys, componentId: 'user' },
|
|
174
|
+
* // { enumObj: AdminKeys, componentId: 'admin' }
|
|
175
|
+
* // ]
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
getAll(): readonly StringKeyEnumEntry[];
|
|
179
|
+
/**
|
|
180
|
+
* Resolves a string key value to its component ID.
|
|
181
|
+
*
|
|
182
|
+
* Uses branded-enum's `findEnumSources` to locate the owning enum,
|
|
183
|
+
* then looks up the component ID from the registry.
|
|
184
|
+
*
|
|
185
|
+
* ## Resolution Strategy
|
|
186
|
+
*
|
|
187
|
+
* 1. Call `findEnumSources(stringKeyValue)` to get all enum IDs containing the value
|
|
188
|
+
* 2. Filter for i18n-prefixed IDs (created by `createI18nStringKeys`)
|
|
189
|
+
* 3. Strip the `i18n:` prefix to get the component ID
|
|
190
|
+
* 4. Verify the component ID is registered in this registry
|
|
191
|
+
*
|
|
192
|
+
* @param stringKeyValue - The string key value to resolve
|
|
193
|
+
* @returns The component ID that owns this string key
|
|
194
|
+
* @throws {I18nError} If the key doesn't belong to a registered enum (STRING_KEY_NOT_REGISTERED)
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* ```typescript
|
|
198
|
+
* const UserKeys = createI18nStringKeys('user', { Welcome: 'user.welcome' });
|
|
199
|
+
* registry.register(UserKeys);
|
|
200
|
+
*
|
|
201
|
+
* registry.resolveComponentId('user.welcome'); // 'user'
|
|
202
|
+
* registry.resolveComponentId('unknown.key'); // throws I18nError
|
|
203
|
+
* ```
|
|
204
|
+
*/
|
|
205
|
+
resolveComponentId(stringKeyValue: string): string;
|
|
206
|
+
/**
|
|
207
|
+
* Safely resolves a string key value to its component ID.
|
|
208
|
+
*
|
|
209
|
+
* Returns `null` if the key doesn't belong to any registered enum,
|
|
210
|
+
* instead of throwing an error.
|
|
211
|
+
*
|
|
212
|
+
* @param stringKeyValue - The string key value to resolve
|
|
213
|
+
* @returns The component ID, or `null` if not found
|
|
214
|
+
*
|
|
215
|
+
* @example
|
|
216
|
+
* ```typescript
|
|
217
|
+
* registry.safeResolveComponentId('user.welcome'); // 'user'
|
|
218
|
+
* registry.safeResolveComponentId('unknown.key'); // null
|
|
219
|
+
* ```
|
|
220
|
+
*/
|
|
221
|
+
safeResolveComponentId(stringKeyValue: string): string | null;
|
|
222
|
+
/**
|
|
223
|
+
* Clears all registrations.
|
|
224
|
+
*
|
|
225
|
+
* Primarily intended for testing purposes to reset the registry state.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```typescript
|
|
229
|
+
* registry.register(UserKeys);
|
|
230
|
+
* registry.getAll().length; // 1
|
|
231
|
+
*
|
|
232
|
+
* registry.clear();
|
|
233
|
+
* registry.getAll().length; // 0
|
|
234
|
+
* ```
|
|
235
|
+
*/
|
|
236
|
+
clear(): void;
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=string-key-enum-registry.d.ts.map
|
|
@@ -0,0 +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"}
|