@lionrapid/core 0.5.0 → 0.6.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 (107) hide show
  1. package/dist/base/event-emitter.d.ts.map +1 -1
  2. package/dist/base/event-emitter.js +2 -1
  3. package/dist/base/event-emitter.js.map +1 -1
  4. package/dist/browser/attribute-extractor.d.ts.map +1 -1
  5. package/dist/browser/attribute-extractor.js +2 -1
  6. package/dist/browser/attribute-extractor.js.map +1 -1
  7. package/dist/browser/auto-init.d.ts +64 -0
  8. package/dist/browser/auto-init.d.ts.map +1 -1
  9. package/dist/browser/auto-init.js +171 -59
  10. package/dist/browser/auto-init.js.map +1 -1
  11. package/dist/browser/block-extractor.d.ts.map +1 -1
  12. package/dist/browser/block-extractor.js +3 -1
  13. package/dist/browser/block-extractor.js.map +1 -1
  14. package/dist/browser/editor/editor-api.d.ts +50 -6
  15. package/dist/browser/editor/editor-api.d.ts.map +1 -1
  16. package/dist/browser/editor/editor-api.js +121 -19
  17. package/dist/browser/editor/editor-api.js.map +1 -1
  18. package/dist/browser/editor/editor-init.js +4 -1
  19. package/dist/browser/editor/editor-init.js.map +1 -1
  20. package/dist/browser/editor/sidebar.d.ts +4 -3
  21. package/dist/browser/editor/sidebar.d.ts.map +1 -1
  22. package/dist/browser/editor/sidebar.js +93 -27
  23. package/dist/browser/editor/sidebar.js.map +1 -1
  24. package/dist/browser/editor/snapshot-viewer.d.ts.map +1 -1
  25. package/dist/browser/editor/snapshot-viewer.js +32 -3
  26. package/dist/browser/editor/snapshot-viewer.js.map +1 -1
  27. package/dist/browser/lionrapid.auto.dev.js +424 -147
  28. package/dist/browser/lionrapid.auto.dev.js.map +4 -4
  29. package/dist/browser/lionrapid.auto.js +424 -147
  30. package/dist/browser/lionrapid.auto.js.map +4 -4
  31. package/dist/browser/lionrapid.auto.min.js +4 -3
  32. package/dist/browser/lionrapid.auto.min.js.map +4 -4
  33. package/dist/browser/lionrapid.editor.js +1467 -1115
  34. package/dist/browser/lionrapid.editor.js.map +4 -4
  35. package/dist/browser/lionrapid.editor.min.js +4 -3
  36. package/dist/browser/lionrapid.editor.min.js.map +4 -4
  37. package/dist/browser/lionrapid.esm.js +584 -101
  38. package/dist/browser/lionrapid.esm.js.map +4 -4
  39. package/dist/browser/lionrapid.esm.min.js +3 -2
  40. package/dist/browser/lionrapid.esm.min.js.map +4 -4
  41. package/dist/browser/lionrapid.iife.dev.js +584 -101
  42. package/dist/browser/lionrapid.iife.dev.js.map +4 -4
  43. package/dist/browser/lionrapid.iife.js +584 -101
  44. package/dist/browser/lionrapid.iife.js.map +4 -4
  45. package/dist/browser/lionrapid.iife.min.js +3 -2
  46. package/dist/browser/lionrapid.iife.min.js.map +4 -4
  47. package/dist/browser/lionrapid.umd.js +584 -101
  48. package/dist/browser/lionrapid.umd.js.map +4 -4
  49. package/dist/browser/lionrapid.umd.min.js +3 -2
  50. package/dist/browser/lionrapid.umd.min.js.map +4 -4
  51. package/dist/browser/sanitizer.d.ts +37 -0
  52. package/dist/browser/sanitizer.d.ts.map +1 -0
  53. package/dist/browser/sanitizer.js +93 -0
  54. package/dist/browser/sanitizer.js.map +1 -0
  55. package/dist/builder.d.ts +8 -0
  56. package/dist/builder.d.ts.map +1 -1
  57. package/dist/builder.js +33 -5
  58. package/dist/builder.js.map +1 -1
  59. package/dist/config/lionrapid.config.d.ts +0 -1
  60. package/dist/config/lionrapid.config.d.ts.map +1 -1
  61. package/dist/config/repository.config.d.ts +2 -2
  62. package/dist/config/repository.config.d.ts.map +1 -1
  63. package/dist/content/index.d.ts +3 -0
  64. package/dist/content/index.d.ts.map +1 -1
  65. package/dist/content/index.js +5 -0
  66. package/dist/content/index.js.map +1 -1
  67. package/dist/content/sanitizer/HTMLSanitizer.d.ts +105 -0
  68. package/dist/content/sanitizer/HTMLSanitizer.d.ts.map +1 -0
  69. package/dist/content/sanitizer/HTMLSanitizer.js +257 -0
  70. package/dist/content/sanitizer/HTMLSanitizer.js.map +1 -0
  71. package/dist/content/serializer/HTMLSerializer.d.ts +6 -2
  72. package/dist/content/serializer/HTMLSerializer.d.ts.map +1 -1
  73. package/dist/content/serializer/HTMLSerializer.js +16 -8
  74. package/dist/content/serializer/HTMLSerializer.js.map +1 -1
  75. package/dist/content/splitter/BlockSplitter.d.ts +66 -0
  76. package/dist/content/splitter/BlockSplitter.d.ts.map +1 -0
  77. package/dist/content/splitter/BlockSplitter.js +219 -0
  78. package/dist/content/splitter/BlockSplitter.js.map +1 -0
  79. package/dist/index.d.ts +4 -2
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +17 -1
  82. package/dist/index.js.map +1 -1
  83. package/dist/lionRapid.d.ts +1 -2
  84. package/dist/lionRapid.d.ts.map +1 -1
  85. package/dist/lionRapid.js +5 -7
  86. package/dist/lionRapid.js.map +1 -1
  87. package/dist/repositories/network-repository.d.ts +30 -8
  88. package/dist/repositories/network-repository.d.ts.map +1 -1
  89. package/dist/repositories/network-repository.js +88 -74
  90. package/dist/repositories/network-repository.js.map +1 -1
  91. package/dist/types/lionRapid.types.d.ts +2 -0
  92. package/dist/types/lionRapid.types.d.ts.map +1 -1
  93. package/dist/types/translation.types.d.ts +0 -3
  94. package/dist/types/translation.types.d.ts.map +1 -1
  95. package/dist/utils/context-utils.d.ts +1 -2
  96. package/dist/utils/context-utils.d.ts.map +1 -1
  97. package/dist/utils/context-utils.js +3 -6
  98. package/dist/utils/context-utils.js.map +1 -1
  99. package/dist/utils/locale.d.ts +57 -0
  100. package/dist/utils/locale.d.ts.map +1 -0
  101. package/dist/utils/locale.js +116 -0
  102. package/dist/utils/locale.js.map +1 -0
  103. package/dist/utils/translation-flow.d.ts +1 -1
  104. package/dist/utils/translation-flow.d.ts.map +1 -1
  105. package/dist/utils/translation-flow.js +2 -3
  106. package/dist/utils/translation-flow.js.map +1 -1
  107. package/package.json +2 -1
@@ -128,6 +128,8 @@ interface CoreEventPayloads {
128
128
  'language:change:success': {
129
129
  oldLocale: string;
130
130
  newLocale: string;
131
+ /** Text direction of the new locale ('rtl' for ar/fa/he/ur/yi). */
132
+ dir: 'ltr' | 'rtl';
131
133
  };
132
134
  'language:change:error': {
133
135
  oldLocale: string;
@@ -1 +1 @@
1
- {"version":3,"file":"lionRapid.types.d.ts","sourceRoot":"","sources":["../../src/types/lionRapid.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAGD,UAAU,iBAAiB;IAEzB,aAAa,EAAE;QAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAA;KAAE,CAAC;IACjE,qBAAqB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,oBAAoB,EAAE;QAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAGpE,kBAAkB,EAAE;QAClB,MAAM,EAAE,iBAAiB,CAAC;QAC1B,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,WAAW,EAAE;QACX,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAClC,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC;IACF,gBAAgB,EAAE;QAChB,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IAEF,qBAAqB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC;IACrE,qBAAqB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,sBAAsB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,qBAAqB,EAAE;QACrB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,uBAAuB,EAAE;QACvB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,GAAG,CAAC;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;KACnC,CAAC;IACF,oBAAoB,EAAE;QACpB,GAAG,EAAE,MAAM,CAAC;QACZ,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,GAAG,CAAC;KACb,CAAC;IAGF,gBAAgB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,kBAAkB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,eAAe,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAEjD,gBAAgB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,kBAAkB,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,YAAY,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IAE5D,uBAAuB,EAAE;QACvB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,yBAAyB,EAAE;QACzB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,uBAAuB,EAAE;QACvB,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,eAAe,EAAE;QACf,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,uBAAuB,EAAE;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,yBAAyB,EAAE;QACzB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,uBAAuB,EAAE;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,KAAK,CAAC;KACd,CAAC;IAGF,gBAAgB,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAAA;KAAE,CAAC;IACxE,eAAe,EAAE;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;QAC/B,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;IAGF,qBAAqB,EAAE;QACrB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,EAAE,CAAC;KAChB,CAAC;IAGF,aAAa,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,iBAAiB,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACxC;AAGD,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,GACpD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1B,MAAM,WAAW,sBAAsB,CACrC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,sBAAsB,EAC1D,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,CAAC;IAE3B,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CACf;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;CACvC"}
1
+ {"version":3,"file":"lionRapid.types.d.ts","sourceRoot":"","sources":["../../src/types/lionRapid.types.ts"],"names":[],"mappings":"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"}
@@ -22,8 +22,6 @@ export interface TranslationContext {
22
22
  locale: string;
23
23
  /** Optional namespace for scoped translations */
24
24
  namespace?: string;
25
- /** Fallback locale if translation not found */
26
- fallbackLocale?: string;
27
25
  }
28
26
  /**
29
27
  * Complete translation request information
@@ -42,7 +40,6 @@ export interface TranslationRequest {
42
40
  /** Resolution context */
43
41
  locale: string;
44
42
  namespace: string | undefined;
45
- fallbackLocale: string | undefined;
46
43
  /** Pre-computed cache keys */
47
44
  individualCacheKey: string;
48
45
  namespaceCacheKey?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"translation.types.d.ts","sourceRoot":"","sources":["../../src/types/translation.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;IAExD,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC,8BAA8B;IAC9B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,aAAa;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IACtD,6GAA6G;IAC7G,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,2BAA2B;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,8EAA8E;IAC9E,eAAe,CAAC,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,OAAO,6BAA6B,EAAE,eAAe,CAAC;KAC7D,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,IAAI,EAAE,OAAO,6BAA6B,EAAE,eAAe,GAAG,IAAI,CAAC;IACnE,iCAAiC;IACjC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IACtD,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAC;CACf"}
1
+ {"version":3,"file":"translation.types.d.ts","sourceRoot":"","sources":["../../src/types/translation.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;IAExD,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9B,8BAA8B;IAC9B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,aAAa;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IACtD,6GAA6G;IAC7G,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,2BAA2B;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,8EAA8E;IAC9E,eAAe,CAAC,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,OAAO,6BAA6B,EAAE,eAAe,CAAC;KAC7D,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,IAAI,EAAE,OAAO,6BAA6B,EAAE,eAAe,GAAG,IAAI,CAAC;IACnE,iCAAiC;IACjC,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IACtD,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,KAAK,CAAC;CACf"}
@@ -8,10 +8,9 @@ import type { TranslationContext, ParsedNamespaceKey } from '../types/translatio
8
8
  * @param parsedKey - Parsed namespace key information
9
9
  * @param currentLocale - Current locale
10
10
  * @param defaultNamespace - Default namespace if none specified
11
- * @param fallbackLocale - Fallback locale
12
11
  * @returns Complete translation context
13
12
  */
14
- export declare function createTranslationContext(parsedKey: ParsedNamespaceKey, currentLocale: string, defaultNamespace?: string, fallbackLocale?: string): TranslationContext;
13
+ export declare function createTranslationContext(parsedKey: ParsedNamespaceKey, currentLocale: string, defaultNamespace?: string): TranslationContext;
15
14
  /**
16
15
  * Check if two contexts are equivalent (for caching)
17
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"context-utils.d.ts","sourceRoot":"","sources":["../../src/utils/context-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAE5F;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,kBAAkB,EAC7B,aAAa,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,MAAM,EACzB,cAAc,CAAC,EAAE,MAAM,GACtB,kBAAkB,CAWpB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,kBAAkB,GAC3B,OAAO,CAMT"}
1
+ {"version":3,"file":"context-utils.d.ts","sourceRoot":"","sources":["../../src/utils/context-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAE5F;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,kBAAkB,EAC7B,aAAa,EAAE,MAAM,EACrB,gBAAgB,CAAC,EAAE,MAAM,GACxB,kBAAkB,CAUpB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,QAAQ,EAAE,kBAAkB,GAC3B,OAAO,CAKT"}
@@ -7,18 +7,16 @@
7
7
  * @param parsedKey - Parsed namespace key information
8
8
  * @param currentLocale - Current locale
9
9
  * @param defaultNamespace - Default namespace if none specified
10
- * @param fallbackLocale - Fallback locale
11
10
  * @returns Complete translation context
12
11
  */
13
- export function createTranslationContext(parsedKey, currentLocale, defaultNamespace, fallbackLocale) {
12
+ export function createTranslationContext(parsedKey, currentLocale, defaultNamespace) {
14
13
  // Use explicit namespace if provided, otherwise use default
15
14
  const effectiveNamespace = parsedKey.hasExplicitNamespace
16
15
  ? parsedKey.namespace
17
16
  : defaultNamespace;
18
17
  return {
19
18
  locale: currentLocale,
20
- namespace: effectiveNamespace,
21
- fallbackLocale: fallbackLocale || currentLocale
19
+ namespace: effectiveNamespace
22
20
  };
23
21
  }
24
22
  /**
@@ -30,7 +28,6 @@ export function createTranslationContext(parsedKey, currentLocale, defaultNamesp
30
28
  */
31
29
  export function areContextsEquivalent(context1, context2) {
32
30
  return (context1.locale === context2.locale &&
33
- context1.namespace === context2.namespace &&
34
- context1.fallbackLocale === context2.fallbackLocale);
31
+ context1.namespace === context2.namespace);
35
32
  }
36
33
  //# sourceMappingURL=context-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context-utils.js","sourceRoot":"","sources":["../../src/utils/context-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,SAA6B,EAC7B,aAAqB,EACrB,gBAAyB,EACzB,cAAuB;IAEvB,4DAA4D;IAC5D,MAAM,kBAAkB,GAAG,SAAS,CAAC,oBAAoB;QACvD,CAAC,CAAC,SAAS,CAAC,SAAS;QACrB,CAAC,CAAC,gBAAgB,CAAC;IAErB,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,kBAAkB;QAC7B,cAAc,EAAE,cAAc,IAAI,aAAa;KAChD,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAA4B,EAC5B,QAA4B;IAE5B,OAAO,CACL,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;QACnC,QAAQ,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;QACzC,QAAQ,CAAC,cAAc,KAAK,QAAQ,CAAC,cAAc,CACpD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"context-utils.js","sourceRoot":"","sources":["../../src/utils/context-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CACtC,SAA6B,EAC7B,aAAqB,EACrB,gBAAyB;IAEzB,4DAA4D;IAC5D,MAAM,kBAAkB,GAAG,SAAS,CAAC,oBAAoB;QACvD,CAAC,CAAC,SAAS,CAAC,SAAS;QACrB,CAAC,CAAC,gBAAgB,CAAC;IAErB,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,kBAAkB;KAC9B,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAA4B,EAC5B,QAA4B;IAE5B,OAAO,CACL,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;QACnC,QAAQ,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CAC1C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Shared BCP-47 locale utilities — pure, Node-safe (no DOM).
3
+ *
4
+ * Aligns the browser runtime with the rest of the stack (see the locale
5
+ * standard):
6
+ * - tm-server accepts BCP-47, canonicalizes to ISO 639-2, and TRUNCATES the
7
+ * region on the content API (`pt-BR → por`); it does NO cross-locale
8
+ * fallback.
9
+ * - `@lionrapid/edge` already preserves full tags with the grammar mirrored
10
+ * below and negotiates Accept-Language by q-weight.
11
+ *
12
+ * Core previously chopped every tag to its 2-letter primary subtag, so a
13
+ * configured `data-languages="pt-BR,…"` never matched a detected `pt-BR`
14
+ * (it became `pt`) and fell back to the default. These helpers preserve the
15
+ * full tag for matching / URLs / display while still negotiating down to the
16
+ * primary subtag when that is the best available match — the same rule edge
17
+ * uses, so the two packages agree.
18
+ *
19
+ * @module utils/locale
20
+ */
21
+ /**
22
+ * Same locale grammar as `@lionrapid/edge`'s `LOCALE_BODY`, for cross-package
23
+ * parity: 2–3 letter language + zero or more `-XXXX` subtags (script/region/
24
+ * variant), each 2–4 alphanumerics. Anchored, case-insensitive.
25
+ */
26
+ export declare const LOCALE_TAG_REGEX: RegExp;
27
+ /** The primary language subtag, lowercased: `pt-BR → pt`, `ZH-Hant → zh`. */
28
+ export declare function primarySubtag(tag: string): string;
29
+ /**
30
+ * Canonicalize BCP-47 casing: language lowercase, script Title-case (4 chars),
31
+ * region UPPERCASE (2 chars). `pt-br → pt-BR`, `ZH-hant → zh-Hant`. Casing
32
+ * only — subtags are not validated here (that's `matchLocale`/the grammar).
33
+ */
34
+ export declare function normalizeLocale(tag: string): string;
35
+ /**
36
+ * Negotiate a locale: for each requested tag (in preference order), return the
37
+ * best `available` match — exact full tag (case-insensitive) first, then an
38
+ * available entry equal to the requested tag's bare primary subtag. Returns
39
+ * `fallback` when nothing matches. Mirrors edge's `detectFromAcceptLanguage`
40
+ * matching so both packages resolve identically.
41
+ *
42
+ * Note (matches edge + the server): a bare requested `pt` does NOT match an
43
+ * available `pt-BR` — region-specific availability is not silently widened.
44
+ */
45
+ export declare function matchLocale(requested: string[], available: string[], fallback: string): string;
46
+ /**
47
+ * Parse an `Accept-Language` header into tags ordered by q-weight (desc).
48
+ * `fr;q=0.8,en;q=0.9 → ['en','fr']`. Missing q defaults to 1.0; a malformed q
49
+ * sinks to the tail; `*` and empty tags are dropped.
50
+ */
51
+ export declare function parseAcceptLanguage(header: string): string[];
52
+ /**
53
+ * Text direction for a locale — `'rtl'` for Arabic/Persian/Hebrew/Urdu/
54
+ * Yiddish, else `'ltr'`. Mirrors tm-server `is_rtl`.
55
+ */
56
+ export declare function localeDir(tag: string): 'ltr' | 'rtl';
57
+ //# sourceMappingURL=locale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/utils/locale.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAqC,CAAC;AAQnE,6EAA6E;AAC7E,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAenD;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACzB,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,CAgBR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAY5D;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAEpD"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Shared BCP-47 locale utilities — pure, Node-safe (no DOM).
3
+ *
4
+ * Aligns the browser runtime with the rest of the stack (see the locale
5
+ * standard):
6
+ * - tm-server accepts BCP-47, canonicalizes to ISO 639-2, and TRUNCATES the
7
+ * region on the content API (`pt-BR → por`); it does NO cross-locale
8
+ * fallback.
9
+ * - `@lionrapid/edge` already preserves full tags with the grammar mirrored
10
+ * below and negotiates Accept-Language by q-weight.
11
+ *
12
+ * Core previously chopped every tag to its 2-letter primary subtag, so a
13
+ * configured `data-languages="pt-BR,…"` never matched a detected `pt-BR`
14
+ * (it became `pt`) and fell back to the default. These helpers preserve the
15
+ * full tag for matching / URLs / display while still negotiating down to the
16
+ * primary subtag when that is the best available match — the same rule edge
17
+ * uses, so the two packages agree.
18
+ *
19
+ * @module utils/locale
20
+ */
21
+ /**
22
+ * Same locale grammar as `@lionrapid/edge`'s `LOCALE_BODY`, for cross-package
23
+ * parity: 2–3 letter language + zero or more `-XXXX` subtags (script/region/
24
+ * variant), each 2–4 alphanumerics. Anchored, case-insensitive.
25
+ */
26
+ export const LOCALE_TAG_REGEX = /^[a-z]{2,3}(?:-[a-z0-9]{2,4})*$/i;
27
+ /**
28
+ * RTL languages — mirrors tm-server's `RTL_ISO639_2 = {ara,fas,heb,urd,yid}`
29
+ * by their ISO 639-1 primary subtags, so client `dir` matches `is_rtl`.
30
+ */
31
+ const RTL_LANGUAGES = new Set(['ar', 'fa', 'he', 'ur', 'yi']);
32
+ /** The primary language subtag, lowercased: `pt-BR → pt`, `ZH-Hant → zh`. */
33
+ export function primarySubtag(tag) {
34
+ return tag.split('-')[0].toLowerCase();
35
+ }
36
+ /**
37
+ * Canonicalize BCP-47 casing: language lowercase, script Title-case (4 chars),
38
+ * region UPPERCASE (2 chars). `pt-br → pt-BR`, `ZH-hant → zh-Hant`. Casing
39
+ * only — subtags are not validated here (that's `matchLocale`/the grammar).
40
+ */
41
+ export function normalizeLocale(tag) {
42
+ const trimmed = tag.trim();
43
+ if (!trimmed)
44
+ return trimmed;
45
+ const [lang, ...rest] = trimmed.split('-');
46
+ const out = [lang.toLowerCase()];
47
+ for (const sub of rest) {
48
+ if (sub.length === 4) {
49
+ out.push(sub[0].toUpperCase() + sub.slice(1).toLowerCase()); // script
50
+ }
51
+ else if (sub.length === 2) {
52
+ out.push(sub.toUpperCase()); // region (alpha-2)
53
+ }
54
+ else {
55
+ out.push(sub.toLowerCase()); // variant / numeric region / other
56
+ }
57
+ }
58
+ return out.join('-');
59
+ }
60
+ /**
61
+ * Negotiate a locale: for each requested tag (in preference order), return the
62
+ * best `available` match — exact full tag (case-insensitive) first, then an
63
+ * available entry equal to the requested tag's bare primary subtag. Returns
64
+ * `fallback` when nothing matches. Mirrors edge's `detectFromAcceptLanguage`
65
+ * matching so both packages resolve identically.
66
+ *
67
+ * Note (matches edge + the server): a bare requested `pt` does NOT match an
68
+ * available `pt-BR` — region-specific availability is not silently widened.
69
+ */
70
+ export function matchLocale(requested, available, fallback) {
71
+ if (available.length === 0)
72
+ return fallback;
73
+ const avail = available.map((raw) => ({
74
+ raw,
75
+ lower: normalizeLocale(raw).toLowerCase(),
76
+ }));
77
+ for (const req of requested) {
78
+ if (!req)
79
+ continue;
80
+ const reqLower = normalizeLocale(req).toLowerCase();
81
+ const exact = avail.find((a) => a.lower === reqLower);
82
+ if (exact)
83
+ return exact.raw;
84
+ const primary = primarySubtag(req);
85
+ const byPrimary = avail.find((a) => a.lower === primary);
86
+ if (byPrimary)
87
+ return byPrimary.raw;
88
+ }
89
+ return fallback;
90
+ }
91
+ /**
92
+ * Parse an `Accept-Language` header into tags ordered by q-weight (desc).
93
+ * `fr;q=0.8,en;q=0.9 → ['en','fr']`. Missing q defaults to 1.0; a malformed q
94
+ * sinks to the tail; `*` and empty tags are dropped.
95
+ */
96
+ export function parseAcceptLanguage(header) {
97
+ return header
98
+ .split(',')
99
+ .map((part) => {
100
+ const [tag, ...params] = part.trim().split(';');
101
+ const qParam = params.find((p) => p.trim().startsWith('q='));
102
+ const q = qParam ? parseFloat(qParam.trim().slice(2)) : 1;
103
+ return { tag: tag.trim(), q: Number.isNaN(q) ? 0 : q };
104
+ })
105
+ .filter((x) => x.tag.length > 0 && x.tag !== '*')
106
+ .sort((a, b) => b.q - a.q)
107
+ .map((x) => x.tag);
108
+ }
109
+ /**
110
+ * Text direction for a locale — `'rtl'` for Arabic/Persian/Hebrew/Urdu/
111
+ * Yiddish, else `'ltr'`. Mirrors tm-server `is_rtl`.
112
+ */
113
+ export function localeDir(tag) {
114
+ return RTL_LANGUAGES.has(primarySubtag(tag)) ? 'rtl' : 'ltr';
115
+ }
116
+ //# sourceMappingURL=locale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.js","sourceRoot":"","sources":["../../src/utils/locale.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import type { TranslationRequest } from '../types/translation.types.js';
7
7
  * ✅ Enhanced: Parse and prepare translation request with cache keys
8
8
  * This is the entry point that organizes all the parsing logic
9
9
  */
10
- export declare function prepareTranslationRequest(key: string, currentLocale: string, defaultValueOrParams?: string | Record<string, unknown>, paramsOrDefaultValue?: Record<string, unknown> | string, defaultNamespace?: string, fallbackLocale?: string): TranslationRequest;
10
+ export declare function prepareTranslationRequest(key: string, currentLocale: string, defaultValueOrParams?: string | Record<string, unknown>, paramsOrDefaultValue?: Record<string, unknown> | string, defaultNamespace?: string): TranslationRequest;
11
11
  /**
12
12
  * Parse flexible translation parameters
13
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"translation-flow.d.ts","sourceRoot":"","sources":["../../src/utils/translation-flow.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAQxE;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EACvD,gBAAgB,CAAC,EAAE,MAAM,EACzB,cAAc,CAAC,EAAE,MAAM,GACtB,kBAAkB,CAkDpB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAC5C;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAsC7D"}
1
+ {"version":3,"file":"translation-flow.d.ts","sourceRoot":"","sources":["../../src/utils/translation-flow.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAQxE;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EACvD,gBAAgB,CAAC,EAAE,MAAM,GACxB,kBAAkB,CAgDpB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9C,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAC5C;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAsC7D"}
@@ -9,14 +9,14 @@ import { createIndividualCacheKey, createNamespaceCacheKey, } from './translatio
9
9
  * ✅ Enhanced: Parse and prepare translation request with cache keys
10
10
  * This is the entry point that organizes all the parsing logic
11
11
  */
12
- export function prepareTranslationRequest(key, currentLocale, defaultValueOrParams, paramsOrDefaultValue, defaultNamespace, fallbackLocale) {
12
+ export function prepareTranslationRequest(key, currentLocale, defaultValueOrParams, paramsOrDefaultValue, defaultNamespace) {
13
13
  const startTime = performance.now();
14
14
  // Parse flexible parameters
15
15
  const { defaultValue, params } = parseTranslationParams(defaultValueOrParams, paramsOrDefaultValue);
16
16
  // Parse namespace from key
17
17
  const parsedKey = parseNamespaceKey(key);
18
18
  // Create translation context
19
- const context = createTranslationContext(parsedKey, currentLocale, defaultNamespace, fallbackLocale);
19
+ const context = createTranslationContext(parsedKey, currentLocale, defaultNamespace);
20
20
  // ✅ Generate cache keys using unified pattern
21
21
  const individualCacheKey = createIndividualCacheKey(context.locale, context.namespace, parsedKey.cleanKey);
22
22
  const namespaceCacheKey = context.namespace
@@ -35,7 +35,6 @@ export function prepareTranslationRequest(key, currentLocale, defaultValueOrPara
35
35
  parsedDefaultValue: defaultValue,
36
36
  locale: currentLocale,
37
37
  namespace: context.namespace, // ✅ Use effective namespace (explicit or default)
38
- fallbackLocale,
39
38
  individualCacheKey, // ✅ Ready-to-use cache key
40
39
  namespaceCacheKey, // ✅ Ready-to-use namespace key
41
40
  startTime,
@@ -1 +1 @@
1
- {"version":3,"file":"translation-flow.js","sourceRoot":"","sources":["../../src/utils/translation-flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"translation-flow.js","sourceRoot":"","sources":["../../src/utils/translation-flow.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AAEtC;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAW,EACX,aAAqB,EACrB,oBAAuD,EACvD,oBAAuD,EACvD,gBAAyB;IAEzB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEpC,4BAA4B;IAC5B,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,sBAAsB,CACrD,oBAAoB,EACpB,oBAAoB,CACrB,CAAC;IAEF,2BAA2B;IAC3B,MAAM,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEzC,6BAA6B;IAC7B,MAAM,OAAO,GAAG,wBAAwB,CACtC,SAAS,EACT,aAAa,EACb,gBAAgB,CACjB,CAAC;IAEF,8CAA8C;IAC9C,MAAM,kBAAkB,GAAG,wBAAwB,CACjD,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,SAAS,EACjB,SAAS,CAAC,QAAQ,CACnB,CAAC;IAEF,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS;QACzC,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC;QAC5D,CAAC,CAAC,SAAS,CAAC;IAEd,+DAA+D;IAC/D,MAAM,EAAE,GAAG,GAAG,kBAAkB,IAAI,SAAS,EAAE,CAAC;IAEhD,OAAO;QACL,EAAE,EAAE,oBAAoB;QACxB,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,oBAAoB;QACpC,oBAAoB,EAAE,oBAAoB;QAC1C,QAAQ,EAAE,SAAS,CAAC,QAAQ;QAC5B,oBAAoB,EAAE,SAAS,CAAC,oBAAoB;QACpD,YAAY,EAAE,MAAM;QACpB,kBAAkB,EAAE,YAAY;QAChC,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,kDAAkD;QAChF,kBAAkB,EAAE,2BAA2B;QAC/C,iBAAiB,EAAE,+BAA+B;QAClD,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,WAA8C,EAC9C,UAA6C;IAE7C,IAAI,YAAgC,CAAC;IACrC,IAAI,MAA2C,CAAC;IAEhD,uEAAuE;IACvE,yEAAyE;IACzE,yEAAyE;IACzE,qCAAqC;IACrC,MAAM,UAAU,GACd,OAAO,OAAO,KAAK,WAAW;QAC9B,OAAO,CAAC,GAAG,EAAE,QAAQ,KAAK,YAAY,CAAC;IACzC,IACE,OAAO,WAAW,KAAK,QAAQ;QAC/B,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,EACV,CAAC;QACD,OAAO,CAAC,IAAI,CACV,oEAAoE;YAClE,kFAAkF;YAClF,+DAA+D,CAClE,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,uDAAuD;QACvD,YAAY,GAAG,WAAW,CAAC;QAC3B,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,GAAG,UAAU,CAAC;QACtB,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QAC3C,iDAAiD;QACjD,MAAM,GAAG,WAAW,CAAC;QACrB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,YAAY,GAAG,UAAU,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lionrapid/core",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Core functionality for LionRapid localization library with fixed dist publishing",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -48,6 +48,7 @@
48
48
  "@types/node": "^20.0.0",
49
49
  "@vitest/ui": "^1.0.0",
50
50
  "dotenv-cli": "^7.3.0",
51
+ "happy-dom": "^20.1.0",
51
52
  "typescript": "^5.2.0",
52
53
  "vitest": "^1.0.0"
53
54
  },