@lionrapid/core 0.6.4 → 0.6.5

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 (39) hide show
  1. package/dist/browser/auto-init.d.ts.map +1 -1
  2. package/dist/browser/auto-init.js +2 -1
  3. package/dist/browser/auto-init.js.map +1 -1
  4. package/dist/browser/lionrapid.auto.dev.js +73 -9
  5. package/dist/browser/lionrapid.auto.dev.js.map +3 -3
  6. package/dist/browser/lionrapid.auto.js +73 -9
  7. package/dist/browser/lionrapid.auto.js.map +3 -3
  8. package/dist/browser/lionrapid.auto.min.js +4 -4
  9. package/dist/browser/lionrapid.auto.min.js.map +4 -4
  10. package/dist/browser/lionrapid.esm.js +77 -9
  11. package/dist/browser/lionrapid.esm.js.map +3 -3
  12. package/dist/browser/lionrapid.esm.min.js +3 -3
  13. package/dist/browser/lionrapid.esm.min.js.map +4 -4
  14. package/dist/browser/lionrapid.iife.dev.js +77 -9
  15. package/dist/browser/lionrapid.iife.dev.js.map +3 -3
  16. package/dist/browser/lionrapid.iife.js +77 -9
  17. package/dist/browser/lionrapid.iife.js.map +3 -3
  18. package/dist/browser/lionrapid.iife.min.js +3 -3
  19. package/dist/browser/lionrapid.iife.min.js.map +4 -4
  20. package/dist/browser/lionrapid.umd.js +77 -9
  21. package/dist/browser/lionrapid.umd.js.map +3 -3
  22. package/dist/browser/lionrapid.umd.min.js +3 -3
  23. package/dist/browser/lionrapid.umd.min.js.map +4 -4
  24. package/dist/browser/storage/cache-names.d.ts +51 -0
  25. package/dist/browser/storage/cache-names.d.ts.map +1 -0
  26. package/dist/browser/storage/cache-names.js +51 -0
  27. package/dist/browser/storage/cache-names.js.map +1 -0
  28. package/dist/browser/storage/cache-storage-repository.d.ts.map +1 -1
  29. package/dist/browser/storage/cache-storage-repository.js +6 -2
  30. package/dist/browser/storage/cache-storage-repository.js.map +1 -1
  31. package/dist/index.d.ts +3 -2
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +11 -5
  34. package/dist/index.js.map +1 -1
  35. package/dist/utils/locale.d.ts +50 -7
  36. package/dist/utils/locale.d.ts.map +1 -1
  37. package/dist/utils/locale.js +83 -15
  38. package/dist/utils/locale.js.map +1 -1
  39. package/package.json +2 -1
@@ -23,6 +23,8 @@ var LionRapid = (() => {
23
23
  // src/index.ts
24
24
  var index_exports = {};
25
25
  __export(index_exports, {
26
+ CORE_CACHE_ENTRY_PREFIX: () => CORE_CACHE_ENTRY_PREFIX,
27
+ CORE_CACHE_NAMES: () => CORE_CACHE_NAMES,
26
28
  CacheManager: () => CacheManager,
27
29
  CacheStorageRepository: () => CacheStorageRepository,
28
30
  Colors: () => Colors,
@@ -31,6 +33,7 @@ var LionRapid = (() => {
31
33
  ExcludeFilter: () => ExcludeFilter,
32
34
  HTMLSerializer: () => HTMLSerializer,
33
35
  HandlerChain: () => HandlerChain,
36
+ ISO639_2_TO_1: () => ISO639_2_TO_1,
34
37
  LOCALE_TAG_REGEX: () => LOCALE_TAG_REGEX,
35
38
  LionRapidBuilder: () => LionRapidBuilder,
36
39
  LionRapidCore: () => LionRapidCore,
@@ -59,6 +62,7 @@ var LionRapid = (() => {
59
62
  isClientError: () => isClientError,
60
63
  isRetryableError: () => isRetryableError,
61
64
  isTranslationError: () => isTranslationError,
65
+ localeCandidates: () => localeCandidates,
62
66
  localeDir: () => localeDir,
63
67
  logger: () => logger,
64
68
  matchLocale: () => matchLocale,
@@ -451,6 +455,65 @@ var LionRapid = (() => {
451
455
  }
452
456
  return out.join("-");
453
457
  }
458
+ var ISO639_2_TO_1 = Object.freeze({
459
+ ara: "ar",
460
+ ben: "bn",
461
+ bul: "bg",
462
+ ces: "cs",
463
+ cmn: "zh",
464
+ dan: "da",
465
+ deu: "de",
466
+ ell: "el",
467
+ eng: "en",
468
+ est: "et",
469
+ fas: "fa",
470
+ fin: "fi",
471
+ fra: "fr",
472
+ heb: "he",
473
+ hin: "hi",
474
+ hrv: "hr",
475
+ hun: "hu",
476
+ ind: "id",
477
+ isl: "is",
478
+ ita: "it",
479
+ jpn: "ja",
480
+ kor: "ko",
481
+ lav: "lv",
482
+ lit: "lt",
483
+ msa: "ms",
484
+ nld: "nl",
485
+ nor: "no",
486
+ pol: "pl",
487
+ por: "pt",
488
+ ron: "ro",
489
+ rus: "ru",
490
+ slk: "sk",
491
+ slv: "sl",
492
+ spa: "es",
493
+ srp: "sr",
494
+ swe: "sv",
495
+ tha: "th",
496
+ tur: "tr",
497
+ ukr: "uk",
498
+ urd: "ur",
499
+ vie: "vi",
500
+ yid: "yi",
501
+ zho: "zh"
502
+ });
503
+ function localeCandidates(tag) {
504
+ const normalized = tag.trim().toLowerCase();
505
+ if (!normalized) return [];
506
+ const parts = normalized.split("-");
507
+ const out = [];
508
+ while (parts.length > 0) {
509
+ const candidate = parts.join("-");
510
+ if (!out.includes(candidate)) out.push(candidate);
511
+ const twoLetter = ISO639_2_TO_1[candidate];
512
+ if (twoLetter && !out.includes(twoLetter)) out.push(twoLetter);
513
+ parts.pop();
514
+ }
515
+ return out;
516
+ }
454
517
  function matchLocale(requested, available, fallback) {
455
518
  if (available.length === 0) return fallback;
456
519
  const avail = available.map((raw) => ({
@@ -459,12 +522,10 @@ var LionRapid = (() => {
459
522
  }));
460
523
  for (const req of requested) {
461
524
  if (!req) continue;
462
- const reqLower = normalizeLocale(req).toLowerCase();
463
- const exact = avail.find((a) => a.lower === reqLower);
464
- if (exact) return exact.raw;
465
- const primary = primarySubtag(req);
466
- const byPrimary = avail.find((a) => a.lower === primary);
467
- if (byPrimary) return byPrimary.raw;
525
+ for (const candidate of localeCandidates(req)) {
526
+ const hit = avail.find((a) => a.lower === candidate);
527
+ if (hit) return hit.raw;
528
+ }
468
529
  }
469
530
  return fallback;
470
531
  }
@@ -5463,9 +5524,16 @@ var LionRapid = (() => {
5463
5524
  }
5464
5525
  };
5465
5526
 
5527
+ // src/browser/storage/cache-names.ts
5528
+ var CORE_CACHE_NAMES = Object.freeze({
5529
+ translations: "lionrapid-v1",
5530
+ offlineFloor: "lionrapid-offline-v1"
5531
+ });
5532
+ var CORE_CACHE_ENTRY_PREFIX = "https://cache.lionrapid.internal/";
5533
+
5466
5534
  // src/browser/storage/cache-storage-repository.ts
5467
- var CACHE_NAME = "lionrapid-v1";
5468
- var CACHE_PREFIX = "https://cache.lionrapid.internal/";
5535
+ var CACHE_NAME = CORE_CACHE_NAMES.translations;
5536
+ var CACHE_PREFIX = CORE_CACHE_ENTRY_PREFIX;
5469
5537
  var CacheStorageRepository = class {
5470
5538
  constructor(config = {}) {
5471
5539
  __publicField(this, "name", "CacheStorageRepository");
@@ -5666,7 +5734,7 @@ var LionRapid = (() => {
5666
5734
  };
5667
5735
 
5668
5736
  // src/index.ts
5669
- var VERSION = "1.0.0";
5737
+ var VERSION = "0.6.5";
5670
5738
  return __toCommonJS(index_exports);
5671
5739
  })();
5672
5740
  //# sourceMappingURL=lionrapid.iife.dev.js.map