@lionrapid/core 0.4.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 (115) 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 +69 -0
  8. package/dist/browser/auto-init.d.ts.map +1 -1
  9. package/dist/browser/auto-init.js +193 -61
  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 +599 -245
  28. package/dist/browser/lionrapid.auto.dev.js.map +4 -4
  29. package/dist/browser/lionrapid.auto.js +599 -245
  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 +951 -196
  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 +951 -196
  42. package/dist/browser/lionrapid.iife.dev.js.map +4 -4
  43. package/dist/browser/lionrapid.iife.js +951 -196
  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 +951 -196
  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 +16 -0
  56. package/dist/builder.d.ts.map +1 -1
  57. package/dist/builder.js +43 -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 +9 -2
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +28 -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/index.d.ts +1 -0
  88. package/dist/repositories/index.d.ts.map +1 -1
  89. package/dist/repositories/index.js +1 -0
  90. package/dist/repositories/index.js.map +1 -1
  91. package/dist/repositories/network-repository.d.ts +30 -8
  92. package/dist/repositories/network-repository.d.ts.map +1 -1
  93. package/dist/repositories/network-repository.js +88 -74
  94. package/dist/repositories/network-repository.js.map +1 -1
  95. package/dist/repositories/static-repository.d.ts +40 -0
  96. package/dist/repositories/static-repository.d.ts.map +1 -0
  97. package/dist/repositories/static-repository.js +60 -0
  98. package/dist/repositories/static-repository.js.map +1 -0
  99. package/dist/types/lionRapid.types.d.ts +2 -0
  100. package/dist/types/lionRapid.types.d.ts.map +1 -1
  101. package/dist/types/translation.types.d.ts +0 -3
  102. package/dist/types/translation.types.d.ts.map +1 -1
  103. package/dist/utils/context-utils.d.ts +1 -2
  104. package/dist/utils/context-utils.d.ts.map +1 -1
  105. package/dist/utils/context-utils.js +3 -6
  106. package/dist/utils/context-utils.js.map +1 -1
  107. package/dist/utils/locale.d.ts +57 -0
  108. package/dist/utils/locale.d.ts.map +1 -0
  109. package/dist/utils/locale.js +116 -0
  110. package/dist/utils/locale.js.map +1 -0
  111. package/dist/utils/translation-flow.d.ts +1 -1
  112. package/dist/utils/translation-flow.d.ts.map +1 -1
  113. package/dist/utils/translation-flow.js +2 -3
  114. package/dist/utils/translation-flow.js.map +1 -1
  115. package/package.json +2 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BlockSplitter.js","sourceRoot":"","sources":["../../../src/content/splitter/BlockSplitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAsBH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;IAChD,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY;IACjD,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS;CACjC,CAAC,CAAC;AAEH,2EAA2E;AAC3E,6EAA6E;AAC7E,uEAAuE;AACvE,6DAA6D;AAC7D,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAEzC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK;CAChE,CAAC,CAAC;AAEH,6EAA6E;AAC7E,MAAM,SAAS,GACb,wGAAwG,CAAC;AAE3G;;GAEG;AACH,SAAS,kBAAkB,CAAC,WAAmB;IAC7C,IAAI,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,OAAO,4BAA4B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,SAAiB;IACzC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC;IACxB,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACpD,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,AAAD,EAAG,gBAAgB,CAAC,GAAG,KAAK,CAAC;QAC5D,IAAI,CAAC,YAAY,IAAI,CAAC,gBAAgB,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAChF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,GAAW,EAAE,OAAe;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,SAAS,CAAC,SAAS,GAAG,GAAG,CAAC;IAE1B,IAAI,KAAK,CAAC;IACV,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/C,MAAM,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,AAAD,EAAG,gBAAgB,CAAC,GAAG,KAAK,CAAC;QAC/D,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,QAAQ;YAAE,SAAS;QAEpD,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAC,KAAK,CAAC;QACtC,CAAC;aAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC7B,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,MAAM,GAAgB,EAAE,CAAC;IAE/B,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,OAAO,GAAG,OAAO,CAAC;IAExB,oEAAoE;IACpE,oEAAoE;IACpE,sEAAsE;IACtE,gEAAgE;IAChE,MAAM,eAAe,GAAa,EAAE,CAAC;IAErC,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,GAAG,OAAO,EAAE,CAAC;QAC3C,IAAI,EAAE,CAAC;QAEP,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,MAAM;QAExB,yBAAyB;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAClD,IAAI,UAAU,KAAK,CAAC,CAAC;gBAAE,MAAM,CAAC,yBAAyB;YACvD,GAAG,GAAG,UAAU,GAAG,CAAC,CAAC;YACrB,SAAS;QACX,CAAC;QAED,sCAAsC;QACtC,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC;QAC5B,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEnC,0DAA0D;QAC1D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YACpC,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QAED,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC;QAChF,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC;QAElD,mBAAmB;QACnB,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,SAAS,GAAG,CAAC;oBAAE,SAAS,EAAE,CAAC;YACjC,CAAC;iBAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC7B,SAAS,EAAE,CAAC;YACd,CAAC;YACD,GAAG,GAAG,UAAU,CAAC;YACjB,SAAS;QACX,CAAC;QAED,qBAAqB;QACrB,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,GAAG,GAAG,UAAU,CAAC;YACjB,SAAS;QACX,CAAC;QAED,wEAAwE;QACxE,OACE,eAAe,CAAC,MAAM;YACtB,GAAG,IAAI,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,EAClD,CAAC;YACD,eAAe,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QAED,qEAAqE;QACrE,wEAAwE;QACxE,kDAAkD;QAClD,IAAI,CAAC,YAAY,IAAI,CAAC,gBAAgB,IAAI,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1E,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAC1D,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;gBACrB,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,kEAAkE;QAClE,iCAAiC;QACjC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,GAAG,GAAG,UAAU,CAAC;YACjB,SAAS;QACX,CAAC;QAED,uEAAuE;QACvE,qEAAqE;QACrE,gCAAgC;QAChC,IACE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnD,CAAC,YAAY;YACb,CAAC,gBAAgB,EACjB,CAAC;YACD,kEAAkE;YAClE,uEAAuE;YACvE,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9D,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;gBACzB,mBAAmB;gBACnB,GAAG,GAAG,UAAU,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YAExD,mEAAmE;YACnE,+CAA+C;YAC/C,IAAI,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChC,GAAG,GAAG,UAAU,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG;gBACH,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE,SAAS;gBAChB,UAAU,EAAE,UAAU;gBACtB,QAAQ,EAAE,aAAa;aACxB,CAAC,CAAC;YAEH,4BAA4B;YAC5B,SAAS,CAAC,SAAS,GAAG,aAAa,CAAC;YACpC,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC;YAC/E,SAAS;QACX,CAAC;QAED,GAAG,GAAG,UAAU,CAAC;IACnB,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAY,EACZ,YAAgE;IAEhE,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC1F,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,KAAK,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,OAAO,EAAE,CAAC;QACvC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -7,13 +7,20 @@ export { LionRapidCore } from './lionRapid.js';
7
7
  export { EventEmitter } from './base/event-emitter.js';
8
8
  export { HandlerChain } from './handlers/handler-chain.js';
9
9
  export { MemoryRepository, NetworkRepository } from './repositories/index.js';
10
+ export { StaticRepository } from './repositories/static-repository.js';
11
+ export type { StaticBundle } from './repositories/static-repository.js';
10
12
  export { MissingTranslationQueue } from './sync/missing-translation-queue.js';
11
13
  export type { MissingTranslationItem, MissingTranslationQueueConfig, } from './sync/missing-translation-queue.js';
12
14
  export type { FormatterFunction, IAsyncHandler, IEmbeddedPlugin, IEventPlugin, IPlugin, ISyncHandler, PluginContext, } from './interfaces/index.js';
13
15
  export type { ISyncRepository, IAsyncRepository, IStatsProvider, } from './interfaces/repository.interface.js';
14
16
  export type { TranslationRequest, TranslationResult } from './types/index.js';
15
- export type { ContentUnit, IParser, ISerializer, IValidator, ValidationError, ValidationErrorCode, ValidationResult, ValidationWarning, ValidationWarningCode, } from './content/index.js';
16
- export { ContentValidator, HTMLSerializer, MarkupParser, VOID_TAGS, serializeOpeningTag, extractTagName, readRawStyle, } from './content/index.js';
17
+ export type { ContentUnit, HtmlBlock, IParser, ISerializer, IValidator, SplitBlocksResult, ValidationError, ValidationErrorCode, ValidationResult, ValidationWarning, ValidationWarningCode, } from './content/index.js';
18
+ export { ContentValidator, HTMLSerializer, MarkupParser, VOID_TAGS, serializeOpeningTag, extractTagName, readRawStyle, SAFE_TAGS, SAFE_ATTRS, SAFE_STYLE_PROPS, escapeHtml, sanitizeUrl, sanitizeStyle, sanitizeOpeningTag, sanitizeContentUnit, splitBlocks, replaceBlockInners, } from './content/index.js';
19
+ export { generateAutoKey, md5 } from './browser/md5.js';
20
+ export { ExcludeFilter } from './browser/exclude-filter.js';
21
+ export type { ExcludePatterns } from './browser/exclude-filter.js';
22
+ export { sanitizeElement, sanitizeStyleSheetText } from './browser/sanitizer.js';
23
+ export { normalizeLocale, matchLocale, parseAcceptLanguage, localeDir, primarySubtag, LOCALE_TAG_REGEX, } from './utils/locale.js';
17
24
  export { CacheManager } from './cache/index.js';
18
25
  export type { CacheEventPayloads, CacheManagerEntry, InvalidateOptions, } from './cache/index.js';
19
26
  export { isClientError, isRetryableError, isTranslationError, NetworkError, ServerError, TranslationError, TranslationLockedError, TranslationNotFoundError, } from './errors/translation-errors.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -9,12 +9,39 @@ export { LionRapidCore } from './lionRapid.js';
9
9
  export { EventEmitter } from './base/event-emitter.js';
10
10
  export { HandlerChain } from './handlers/handler-chain.js';
11
11
  export { MemoryRepository, NetworkRepository } from './repositories/index.js';
12
+ export { StaticRepository } from './repositories/static-repository.js';
12
13
  // Sync utilities
13
14
  export { MissingTranslationQueue } from './sync/missing-translation-queue.js';
14
15
  export { ContentValidator, HTMLSerializer, MarkupParser,
15
16
  // Raw-tag helpers — used by react JSX parser/serializer and any other
16
17
  // consumer that needs to produce or interpret `raw:<...>` styles.
17
- VOID_TAGS, serializeOpeningTag, extractTagName, readRawStyle, } from './content/index.js';
18
+ VOID_TAGS, serializeOpeningTag, extractTagName, readRawStyle,
19
+ // Shared allowlist HTML sanitizer — the single implementation for every
20
+ // innerHTML sink (core serializer/editor/snapshot, react <Trans>, WP TS);
21
+ // the WP PHP port mirrors SAFE_TAGS/SAFE_ATTRS.
22
+ SAFE_TAGS, SAFE_ATTRS, SAFE_STYLE_PROPS, escapeHtml, sanitizeUrl, sanitizeStyle, sanitizeOpeningTag, sanitizeContentUnit,
23
+ // Shared string-level block scanner (lifted from the edge proxy) — the one
24
+ // splitter every non-DOM surface (edge, webhook) uses to find translatable
25
+ // block boundaries. Structural only; callers key/filter themselves.
26
+ splitBlocks, replaceBlockInners, } from './content/index.js';
27
+ // auto_ key generation (Node-safe: pure-JS md5 over UTF-8 bytes, no DOM).
28
+ // Re-exported from the browser entry so non-DOM consumers — notably
29
+ // @lionrapid/cli — can import it from the package root rather than a deep
30
+ // `@lionrapid/core/browser/md5` path. Same function the edge worker, WordPress
31
+ // PHP/TS, and browser runtime all use; covered by parity-vectors.json.
32
+ export { generateAutoKey, md5 } from './browser/md5.js';
33
+ // Translation exclude filter (Node-safe: pure regex, no DOM). Re-exported so
34
+ // the CLI source scanner skips exactly the same emails/URLs/numbers/phones the
35
+ // DOM auto-detect path skips — byte-parity on what becomes a translatable key.
36
+ export { ExcludeFilter } from './browser/exclude-filter.js';
37
+ // DOM-tree sanitizer (browser-only: uses live-DOM APIs). Consumed by the
38
+ // snapshot viewer and by react `<Trans>` as a defense-in-depth pass over
39
+ // tHtml output. Callers must guard `typeof document !== 'undefined'`.
40
+ export { sanitizeElement, sanitizeStyleSheetText } from './browser/sanitizer.js';
41
+ // BCP-47 locale utilities (Node-safe, pure). Same grammar/matching as
42
+ // @lionrapid/edge; RTL set mirrors tm-server. Consumers: browser auto-init,
43
+ // and any package needing to negotiate/normalize locales identically.
44
+ export { normalizeLocale, matchLocale, parseAcceptLanguage, localeDir, primarySubtag, LOCALE_TAG_REGEX, } from './utils/locale.js';
18
45
  // Cache module (TanStack Query-inspired)
19
46
  export { CacheManager } from './cache/index.js';
20
47
  // Error classes
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc;AACd,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,sBAAsB;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE9E,iBAAiB;AACjB,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAwC9E,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,YAAY;AACZ,sEAAsE;AACtE,kEAAkE;AAClE,SAAS,EACT,mBAAmB,EACnB,cAAc,EACd,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,yCAAyC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOhD,gBAAgB;AAChB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAkDxC,2FAA2F;AAE3F,+BAA+B;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAGtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAGvF,sBAAsB;AACtB,OAAO,EACL,YAAY,EACZ,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,+CAA+C;AAC/C,OAAO,EACL,MAAM,EACN,mBAAmB,EACnB,MAAM,EACN,MAAM,EACN,OAAO,GACR,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAgB,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAYnE,sBAAsB;AACtB,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc;AACd,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,sBAAsB;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAGvE,iBAAiB;AACjB,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AA0C9E,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,YAAY;AACZ,sEAAsE;AACtE,kEAAkE;AAClE,SAAS,EACT,mBAAmB,EACnB,cAAc,EACd,YAAY;AACZ,wEAAwE;AACxE,0EAA0E;AAC1E,gDAAgD;AAChD,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,mBAAmB;AACnB,2EAA2E;AAC3E,2EAA2E;AAC3E,oEAAoE;AACpE,WAAW,EACX,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAE5B,0EAA0E;AAC1E,oEAAoE;AACpE,0EAA0E;AAC1E,+EAA+E;AAC/E,uEAAuE;AACvE,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAExD,6EAA6E;AAC7E,+EAA+E;AAC/E,+EAA+E;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,yEAAyE;AACzE,yEAAyE;AACzE,sEAAsE;AACtE,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEjF,sEAAsE;AACtE,4EAA4E;AAC5E,sEAAsE;AACtE,OAAO,EACL,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,SAAS,EACT,aAAa,EACb,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAE3B,yCAAyC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOhD,gBAAgB;AAChB,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAkDxC,2FAA2F;AAE3F,+BAA+B;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAGtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAGvF,sBAAsB;AACtB,OAAO,EACL,YAAY,EACZ,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAE1B,+CAA+C;AAC/C,OAAO,EACL,MAAM,EACN,mBAAmB,EACnB,MAAM,EACN,MAAM,EACN,OAAO,GACR,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAgB,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAYnE,sBAAsB;AACtB,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
@@ -12,7 +12,6 @@ import { CacheManager } from './cache/CacheManager.js';
12
12
  export declare class LionRapidCore {
13
13
  private handlerChain;
14
14
  private currentLocale;
15
- private fallbackLocale;
16
15
  private defaultNamespace?;
17
16
  private pendingTranslations;
18
17
  bus: EventEmitter;
@@ -23,7 +22,7 @@ export declare class LionRapidCore {
23
22
  private readonly markupParser;
24
23
  private readonly htmlSerializer;
25
24
  readonly cache: CacheManager;
26
- constructor(eventEmitter: EventEmitter, handlerChain: HandlerChain, defaultLocale?: string, fallbackLocale?: string, defaultNamespace?: string);
25
+ constructor(eventEmitter: EventEmitter, handlerChain: HandlerChain, defaultLocale?: string, defaultNamespace?: string);
27
26
  /**
28
27
  * ✅ Register plugin (called by builder)
29
28
  */
@@ -1 +1 @@
1
- {"version":3,"file":"lionRapid.d.ts","sourceRoot":"","sources":["../src/lionRapid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lionRapid.d.ts","sourceRoot":"","sources":["../src/lionRapid.ts"],"names":[],"mappings":"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"}
package/dist/lionRapid.js CHANGED
@@ -18,7 +18,6 @@ const HTML_TAG_REGEX = /<[a-z][a-z0-9]*(?:\s+[^>]*)?\/?>/i;
18
18
  export class LionRapidCore {
19
19
  handlerChain;
20
20
  currentLocale;
21
- fallbackLocale;
22
21
  defaultNamespace;
23
22
  pendingTranslations = new Map();
24
23
  bus;
@@ -33,11 +32,10 @@ export class LionRapidCore {
33
32
  htmlSerializer = new HTMLSerializer();
34
33
  // 🔄 CACHE: TanStack Query-inspired cache management
35
34
  cache;
36
- constructor(eventEmitter, handlerChain, defaultLocale = 'en', fallbackLocale = 'en', defaultNamespace) {
35
+ constructor(eventEmitter, handlerChain, defaultLocale = 'en', defaultNamespace) {
37
36
  this.bus = eventEmitter;
38
37
  this.handlerChain = handlerChain;
39
38
  this.currentLocale = defaultLocale;
40
- this.fallbackLocale = fallbackLocale;
41
39
  this.defaultNamespace = defaultNamespace;
42
40
  // Initialize cache manager with dependencies
43
41
  this.cache = new CacheManager(this.handlerChain, this.bus, () => this.currentLocale, (locale, namespaces) => this.loadNamespaces(locale, namespaces));
@@ -97,7 +95,7 @@ export class LionRapidCore {
97
95
  */
98
96
  t(key, ...args) {
99
97
  const [firstArg, secondArg] = args;
100
- const request = prepareTranslationRequest(key, this.currentLocale, firstArg, secondArg, this.defaultNamespace, this.fallbackLocale);
98
+ const request = prepareTranslationRequest(key, this.currentLocale, firstArg, secondArg, this.defaultNamespace);
101
99
  // Emit request event
102
100
  logger.debug(`Translation requested: ${request.cleanKey}`);
103
101
  const translateBus = this.bus.translation(request);
@@ -145,7 +143,7 @@ export class LionRapidCore {
145
143
  // Pass arguments directly to prepareTranslationRequest
146
144
  // which handles the flexible parameter parsing
147
145
  const [firstArg, secondArg] = args;
148
- const request = prepareTranslationRequest(key, this.currentLocale, firstArg, secondArg, this.defaultNamespace, this.fallbackLocale);
146
+ const request = prepareTranslationRequest(key, this.currentLocale, firstArg, secondArg, this.defaultNamespace);
149
147
  // Emit request event
150
148
  logger.debug(`HTML translation requested: ${request.cleanKey}`);
151
149
  const translateBus = this.bus.translation(request);
@@ -368,7 +366,7 @@ export class LionRapidCore {
368
366
  */
369
367
  getContentUnit(key, params, defaultValue) {
370
368
  // Get translation value (ICU processing done separately per segment)
371
- const request = prepareTranslationRequest(key, this.currentLocale, params, defaultValue, this.defaultNamespace, this.fallbackLocale);
369
+ const request = prepareTranslationRequest(key, this.currentLocale, params, defaultValue, this.defaultNamespace);
372
370
  // Try memory cache
373
371
  const syncResult = this.handlerChain.handleSync(request);
374
372
  const rawValue = syncResult && syncResult.status === 200
@@ -488,7 +486,7 @@ export class LionRapidCore {
488
486
  return this.handlerChain.getEntries();
489
487
  }
490
488
  isCached(key) {
491
- const request = prepareTranslationRequest(key, this.currentLocale, undefined, undefined, this.defaultNamespace, this.fallbackLocale);
489
+ const request = prepareTranslationRequest(key, this.currentLocale, undefined, undefined, this.defaultNamespace);
492
490
  return this.handlerChain.isCached(request);
493
491
  }
494
492
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -1 +1 @@
1
- {"version":3,"file":"lionRapid.js","sourceRoot":"","sources":["../src/lionRapid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lionRapid.js","sourceRoot":"","sources":["../src/lionRapid.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from './network-repository.js';
2
2
  export * from './memory-repository.js';
3
+ export * from './static-repository.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './network-repository.js';
2
2
  export * from './memory-repository.js';
3
+ export * from './static-repository.js';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/repositories/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
@@ -16,10 +16,21 @@ export declare class NetworkRepository implements IAsyncRepository<NetworkReposi
16
16
  readonly name = "NetworkRepository";
17
17
  readonly type = "network";
18
18
  readonly config: NetworkRepositoryConfig;
19
- /** Cached version (opaque string from server) per namespace key "locale:namespace" */
20
- private namespaceVersions;
21
- /** localStorage key prefix for persisted versions */
22
- private static readonly VERSION_PREFIX;
19
+ /**
20
+ * Namespace snapshot per key "locale:namespace": the server version TOGETHER
21
+ * with the payload it describes, persisted as ONE localStorage entry.
22
+ *
23
+ * Canonical 304 contract (same as edge KV bundle + WP transient cache):
24
+ * never claim freshness you can't back. If-None-Match is only sent when the
25
+ * snapshot is in hand; a 304 answers with that snapshot's payload; version
26
+ * and payload can never desync because they live and die together.
27
+ */
28
+ private namespaceSnapshots;
29
+ /** localStorage key prefix for persisted snapshots (version + payload) */
30
+ private static readonly SNAPSHOT_PREFIX;
31
+ /** Legacy bare-version prefix — a version WITHOUT its payload is exactly the
32
+ * desync the snapshot store exists to prevent; entries are deleted on sight. */
33
+ private static readonly LEGACY_VERSION_PREFIX;
23
34
  /**
24
35
  * Default endpoint templates with placeholder support
25
36
  * Placeholders: :key, :locale, :namespace
@@ -52,6 +63,14 @@ export declare class NetworkRepository implements IAsyncRepository<NetworkReposi
52
63
  * @throws {NetworkError} When network request fails
53
64
  */
54
65
  getNamespace(locale: string, namespace: string): Promise<TranslationData | null>;
66
+ /**
67
+ * Shared namespace fetch with the canonical 304 contract:
68
+ * - If-None-Match is sent ONLY when a snapshot (version + payload) is in hand.
69
+ * - 304 answers with that snapshot's payload — never with "nothing".
70
+ * - A 304 with no snapshot (server/proxy surprise) refetches unconditionally.
71
+ * - A 200 stores version + payload atomically before either is trusted.
72
+ */
73
+ private fetchNamespaceRaw;
55
74
  /**
56
75
  * Save translation to API (if supported)
57
76
  */
@@ -105,10 +124,13 @@ export declare class NetworkRepository implements IAsyncRepository<NetworkReposi
105
124
  */
106
125
  clear(): Promise<void>;
107
126
  getConfig(): NetworkRepositoryConfig;
108
- /** Read persisted version from localStorage, falling back to in-memory map */
109
- private getVersion;
110
- /** Persist version to both in-memory map and localStorage */
111
- private setVersion;
127
+ /** Read a persisted snapshot (version + payload), falling back to memory.
128
+ * Legacy bare-version entries and corrupt snapshots are deleted on sight —
129
+ * a version without its payload must never drive a conditional request. */
130
+ private getSnapshot;
131
+ /** Persist version + payload as ONE entry (memory + localStorage). On quota
132
+ * failure the previous stored snapshot stays — still a consistent pair. */
133
+ private setSnapshot;
112
134
  /**
113
135
  * Handle HTTP error responses by mapping to domain errors
114
136
  * @throws {TranslationNotFoundError} When status is 404
@@ -1 +1 @@
1
- {"version":3,"file":"network-repository.d.ts","sourceRoot":"","sources":["../../src/repositories/network-repository.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAChB,MAAM,oCAAoC,CAAC;AAG5C;;;GAGG;AACH,qBAAa,iBACX,YAAW,gBAAgB,CAAC,uBAAuB,CAAC;IAEpD,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,IAAI,aAAa;IAC1B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAM;IAE9C,sFAAsF;IACtF,OAAO,CAAC,iBAAiB,CAA6B;IAEtD,qDAAqD;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAExD;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAQvB;gBAEC,MAAM,GAAE,uBAA4B;IAWhD;;;;;;;OAOG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyCvC;;;;;;;OAOG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAiDvD;;;;;;OAMG;IACG,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAkDlC;;OAEG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB9C,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,eAAe,GAC5B,OAAO,CAAC,IAAI,CAAC;IAuBhB;;;OAGG;IACG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B3E;;;;;;;;OAQG;IACG,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAmDlC;;;;;;;;OAQG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBnE;;;;;;OAMG;IACG,oBAAoB,CACxB,KAAK,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC;IA+BhB;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB5B,SAAS,IAAI,uBAAuB;IAIpC,8EAA8E;IAC9E,OAAO,CAAC,UAAU;IAalB,6DAA6D;IAC7D,OAAO,CAAC,UAAU;IAOlB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAuBvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IA2BhB;;OAEG;YACW,WAAW;CAoC1B"}
1
+ {"version":3,"file":"network-repository.d.ts","sourceRoot":"","sources":["../../src/repositories/network-repository.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EAChB,MAAM,oCAAoC,CAAC;AAS5C;;;GAGG;AACH,qBAAa,iBACX,YAAW,gBAAgB,CAAC,uBAAuB,CAAC;IAEpD,QAAQ,CAAC,IAAI,uBAAuB;IACpC,QAAQ,CAAC,IAAI,aAAa;IAC1B,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAM;IAE9C;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB,CAAwC;IAElE,0EAA0E;IAC1E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAmB;IAE1D;qFACiF;IACjF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAkB;IAE/D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAQvB;gBAEC,MAAM,GAAE,uBAA4B;IAWhD;;;;;;;OAOG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyCvC;;;;;;;OAOG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAiDvD;;;;;;OAMG;IACG,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAalC;;;;;;OAMG;YACW,iBAAiB;IAiD/B;;OAEG;IACG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB9C,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,eAAe,GAC5B,OAAO,CAAC,IAAI,CAAC;IAuBhB;;;OAGG;IACG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B3E;;;;;;;;OAQG;IACG,wBAAwB,CAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAclC;;;;;;;;OAQG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBnE;;;;;;OAMG;IACG,oBAAoB,CACxB,KAAK,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,CAAA;KAAE,CAAC,GAChD,OAAO,CAAC,IAAI,CAAC;IA+BhB;;OAEG;IACG,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB5B,SAAS,IAAI,uBAAuB;IAIpC;;gFAE4E;IAC5E,OAAO,CAAC,WAAW;IA0BnB;gFAC4E;IAC5E,OAAO,CAAC,WAAW;IAanB;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAuBvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAezB;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IA2BhB;;OAEG;YACW,WAAW;CAoC1B"}
@@ -14,10 +14,21 @@ export class NetworkRepository {
14
14
  name = 'NetworkRepository';
15
15
  type = 'network';
16
16
  config = {};
17
- /** Cached version (opaque string from server) per namespace key "locale:namespace" */
18
- namespaceVersions = new Map();
19
- /** localStorage key prefix for persisted versions */
20
- static VERSION_PREFIX = 'lionrapid:v:';
17
+ /**
18
+ * Namespace snapshot per key "locale:namespace": the server version TOGETHER
19
+ * with the payload it describes, persisted as ONE localStorage entry.
20
+ *
21
+ * Canonical 304 contract (same as edge KV bundle + WP transient cache):
22
+ * never claim freshness you can't back. If-None-Match is only sent when the
23
+ * snapshot is in hand; a 304 answers with that snapshot's payload; version
24
+ * and payload can never desync because they live and die together.
25
+ */
26
+ namespaceSnapshots = new Map();
27
+ /** localStorage key prefix for persisted snapshots (version + payload) */
28
+ static SNAPSHOT_PREFIX = 'lionrapid:ns:';
29
+ /** Legacy bare-version prefix — a version WITHOUT its payload is exactly the
30
+ * desync the snapshot store exists to prevent; entries are deleted on sight. */
31
+ static LEGACY_VERSION_PREFIX = 'lionrapid:v:';
21
32
  /**
22
33
  * Default endpoint templates with placeholder support
23
34
  * Placeholders: :key, :locale, :namespace
@@ -143,40 +154,54 @@ export class NetworkRepository {
143
154
  logger.debug('API base URL is not set');
144
155
  throw new NetworkError('API base URL is not set');
145
156
  }
157
+ try {
158
+ return (await this.fetchNamespaceRaw(locale, namespace));
159
+ }
160
+ catch (error) {
161
+ this.handleCaughtError(error);
162
+ }
163
+ }
164
+ /**
165
+ * Shared namespace fetch with the canonical 304 contract:
166
+ * - If-None-Match is sent ONLY when a snapshot (version + payload) is in hand.
167
+ * - 304 answers with that snapshot's payload — never with "nothing".
168
+ * - A 304 with no snapshot (server/proxy surprise) refetches unconditionally.
169
+ * - A 200 stores version + payload atomically before either is trusted.
170
+ */
171
+ async fetchNamespaceRaw(locale, namespace, allowConditional = true) {
146
172
  const url = this.buildUrl('getNamespace', { locale, namespace });
147
173
  logger.debug(`API GET Namespace: ${url}`);
148
174
  const namespaceKey = `${locale}:${namespace}`;
149
- try {
150
- // Send If-None-Match for conditional request
151
- const extraHeaders = {};
152
- const cachedVersion = this.getVersion(namespaceKey);
153
- if (cachedVersion) {
154
- extraHeaders['If-None-Match'] = `W/"${cachedVersion}"`;
155
- }
156
- const response = await this.makeRequest(url, 'GET', undefined, extraHeaders);
157
- // 304 Not Modified — cached translations are still fresh
158
- if (response.status === 304) {
159
- logger.debug(`Namespace ${namespaceKey}: 304 Not Modified`);
160
- return null;
161
- }
162
- if (!response.ok) {
163
- this.handleHttpError(response, namespaceKey);
164
- }
165
- const data = await response.json();
166
- logger.debug('API response data:', data);
167
- if (!data.translations) {
168
- throw new TranslationNotFoundError(namespaceKey);
175
+ const snapshot = allowConditional ? this.getSnapshot(namespaceKey) : undefined;
176
+ const extraHeaders = {};
177
+ if (snapshot) {
178
+ extraHeaders['If-None-Match'] = `W/"${snapshot.version}"`;
179
+ }
180
+ const response = await this.makeRequest(url, 'GET', undefined, extraHeaders);
181
+ if (response.status === 304) {
182
+ if (snapshot) {
183
+ // Not modified — serve the exact payload the version vouches for, so
184
+ // callers rehydrate the cache layers instead of assuming they're intact.
185
+ logger.debug(`Namespace ${namespaceKey}: 304 Not Modified (snapshot served)`);
186
+ return snapshot.translations;
169
187
  }
170
- // Track version for future conditional requests (memory + localStorage)
171
- const version = data.meta?.version != null ? String(data.meta.version) : null;
172
- if (version) {
173
- this.setVersion(namespaceKey, version);
174
- }
175
- return data.translations;
188
+ // We never claimed freshness — refetch without the conditional header.
189
+ logger.debug(`Namespace ${namespaceKey}: unexpected 304 with no snapshot — refetching`);
190
+ return this.fetchNamespaceRaw(locale, namespace, false);
176
191
  }
177
- catch (error) {
178
- this.handleCaughtError(error);
192
+ if (!response.ok) {
193
+ this.handleHttpError(response, namespaceKey);
194
+ }
195
+ const data = await response.json();
196
+ logger.debug('API response data:', data);
197
+ if (!data.translations) {
198
+ throw new TranslationNotFoundError(namespaceKey);
199
+ }
200
+ const version = data.meta?.version != null ? String(data.meta.version) : null;
201
+ if (version) {
202
+ this.setSnapshot(namespaceKey, { version, translations: data.translations });
179
203
  }
204
+ return data.translations;
180
205
  }
181
206
  /**
182
207
  * Save translation to API (if supported)
@@ -261,37 +286,9 @@ export class NetworkRepository {
261
286
  logger.debug('API base URL is not set');
262
287
  throw new NetworkError('API base URL is not set');
263
288
  }
264
- const url = this.buildUrl('getNamespace', { locale, namespace });
265
- logger.debug(`API GET Namespace ContentUnits: ${url}`);
266
- const namespaceKey = `${locale}:${namespace}`;
267
289
  try {
268
- // Send If-None-Match for conditional request
269
- const extraHeaders = {};
270
- const cachedVersion = this.getVersion(namespaceKey);
271
- if (cachedVersion) {
272
- extraHeaders['If-None-Match'] = `W/"${cachedVersion}"`;
273
- }
274
- const response = await this.makeRequest(url, 'GET', undefined, extraHeaders);
275
- // 304 Not Modified — cached translations are still fresh
276
- if (response.status === 304) {
277
- logger.debug(`Namespace ContentUnits ${namespaceKey}: 304 Not Modified`);
278
- return null;
279
- }
280
- if (!response.ok) {
281
- this.handleHttpError(response, namespaceKey);
282
- }
283
- const data = await response.json();
284
- logger.debug('API response data:', data);
285
- if (!data.translations) {
286
- throw new TranslationNotFoundError(namespaceKey);
287
- }
288
- // Track version for future conditional requests (memory + localStorage)
289
- const version = data.meta?.version != null ? String(data.meta.version) : null;
290
- if (version) {
291
- this.setVersion(namespaceKey, version);
292
- }
293
290
  // Server always returns ContentUnit format
294
- return data.translations;
291
+ return (await this.fetchNamespaceRaw(locale, namespace));
295
292
  }
296
293
  catch (error) {
297
294
  this.handleCaughtError(error);
@@ -399,28 +396,45 @@ export class NetworkRepository {
399
396
  getConfig() {
400
397
  return this.config;
401
398
  }
402
- /** Read persisted version from localStorage, falling back to in-memory map */
403
- getVersion(namespaceKey) {
404
- const mem = this.namespaceVersions.get(namespaceKey);
399
+ /** Read a persisted snapshot (version + payload), falling back to memory.
400
+ * Legacy bare-version entries and corrupt snapshots are deleted on sight —
401
+ * a version without its payload must never drive a conditional request. */
402
+ getSnapshot(namespaceKey) {
403
+ const mem = this.namespaceSnapshots.get(namespaceKey);
405
404
  if (mem)
406
405
  return mem;
407
406
  try {
408
- const stored = localStorage.getItem(NetworkRepository.VERSION_PREFIX + namespaceKey);
409
- if (stored) {
410
- this.namespaceVersions.set(namespaceKey, stored);
411
- return stored;
407
+ localStorage.removeItem(NetworkRepository.LEGACY_VERSION_PREFIX + namespaceKey);
408
+ const raw = localStorage.getItem(NetworkRepository.SNAPSHOT_PREFIX + namespaceKey);
409
+ if (raw) {
410
+ const parsed = JSON.parse(raw);
411
+ if (parsed &&
412
+ typeof parsed.version === 'string' &&
413
+ parsed.version.length > 0 &&
414
+ parsed.translations &&
415
+ typeof parsed.translations === 'object') {
416
+ this.namespaceSnapshots.set(namespaceKey, parsed);
417
+ return parsed;
418
+ }
419
+ localStorage.removeItem(NetworkRepository.SNAPSHOT_PREFIX + namespaceKey);
412
420
  }
413
421
  }
414
- catch { /* SSR or localStorage unavailable */ }
422
+ catch {
423
+ /* SSR, localStorage unavailable, or corrupt JSON */
424
+ }
415
425
  return undefined;
416
426
  }
417
- /** Persist version to both in-memory map and localStorage */
418
- setVersion(namespaceKey, version) {
419
- this.namespaceVersions.set(namespaceKey, version);
427
+ /** Persist version + payload as ONE entry (memory + localStorage). On quota
428
+ * failure the previous stored snapshot stays — still a consistent pair. */
429
+ setSnapshot(namespaceKey, snapshot) {
430
+ this.namespaceSnapshots.set(namespaceKey, snapshot);
420
431
  try {
421
- localStorage.setItem(NetworkRepository.VERSION_PREFIX + namespaceKey, version);
432
+ localStorage.setItem(NetworkRepository.SNAPSHOT_PREFIX + namespaceKey, JSON.stringify(snapshot));
433
+ localStorage.removeItem(NetworkRepository.LEGACY_VERSION_PREFIX + namespaceKey);
434
+ }
435
+ catch {
436
+ /* quota exceeded or unavailable — memory copy still serves this session */
422
437
  }
423
- catch { /* quota exceeded or unavailable */ }
424
438
  }
425
439
  /**
426
440
  * Handle HTTP error responses by mapping to domain errors