@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
@@ -358,6 +358,65 @@ var __lionrapidAutoExports = (() => {
358
358
  }
359
359
  return out.join("-");
360
360
  }
361
+ var ISO639_2_TO_1 = Object.freeze({
362
+ ara: "ar",
363
+ ben: "bn",
364
+ bul: "bg",
365
+ ces: "cs",
366
+ cmn: "zh",
367
+ dan: "da",
368
+ deu: "de",
369
+ ell: "el",
370
+ eng: "en",
371
+ est: "et",
372
+ fas: "fa",
373
+ fin: "fi",
374
+ fra: "fr",
375
+ heb: "he",
376
+ hin: "hi",
377
+ hrv: "hr",
378
+ hun: "hu",
379
+ ind: "id",
380
+ isl: "is",
381
+ ita: "it",
382
+ jpn: "ja",
383
+ kor: "ko",
384
+ lav: "lv",
385
+ lit: "lt",
386
+ msa: "ms",
387
+ nld: "nl",
388
+ nor: "no",
389
+ pol: "pl",
390
+ por: "pt",
391
+ ron: "ro",
392
+ rus: "ru",
393
+ slk: "sk",
394
+ slv: "sl",
395
+ spa: "es",
396
+ srp: "sr",
397
+ swe: "sv",
398
+ tha: "th",
399
+ tur: "tr",
400
+ ukr: "uk",
401
+ urd: "ur",
402
+ vie: "vi",
403
+ yid: "yi",
404
+ zho: "zh"
405
+ });
406
+ function localeCandidates(tag) {
407
+ const normalized = tag.trim().toLowerCase();
408
+ if (!normalized) return [];
409
+ const parts = normalized.split("-");
410
+ const out = [];
411
+ while (parts.length > 0) {
412
+ const candidate = parts.join("-");
413
+ if (!out.includes(candidate)) out.push(candidate);
414
+ const twoLetter = ISO639_2_TO_1[candidate];
415
+ if (twoLetter && !out.includes(twoLetter)) out.push(twoLetter);
416
+ parts.pop();
417
+ }
418
+ return out;
419
+ }
361
420
  function matchLocale(requested, available, fallback) {
362
421
  if (available.length === 0) return fallback;
363
422
  const avail = available.map((raw) => ({
@@ -366,12 +425,10 @@ var __lionrapidAutoExports = (() => {
366
425
  }));
367
426
  for (const req of requested) {
368
427
  if (!req) continue;
369
- const reqLower = normalizeLocale(req).toLowerCase();
370
- const exact = avail.find((a) => a.lower === reqLower);
371
- if (exact) return exact.raw;
372
- const primary = primarySubtag(req);
373
- const byPrimary = avail.find((a) => a.lower === primary);
374
- if (byPrimary) return byPrimary.raw;
428
+ for (const candidate of localeCandidates(req)) {
429
+ const hit = avail.find((a) => a.lower === candidate);
430
+ if (hit) return hit.raw;
431
+ }
375
432
  }
376
433
  return fallback;
377
434
  }
@@ -5988,9 +6045,16 @@ var __lionrapidAutoExports = (() => {
5988
6045
  }
5989
6046
  };
5990
6047
 
6048
+ // src/browser/storage/cache-names.ts
6049
+ var CORE_CACHE_NAMES = Object.freeze({
6050
+ translations: "lionrapid-v1",
6051
+ offlineFloor: "lionrapid-offline-v1"
6052
+ });
6053
+ var CORE_CACHE_ENTRY_PREFIX = "https://cache.lionrapid.internal/";
6054
+
5991
6055
  // src/browser/storage/cache-storage-repository.ts
5992
- var CACHE_NAME = "lionrapid-v1";
5993
- var CACHE_PREFIX = "https://cache.lionrapid.internal/";
6056
+ var CACHE_NAME = CORE_CACHE_NAMES.translations;
6057
+ var CACHE_PREFIX = CORE_CACHE_ENTRY_PREFIX;
5994
6058
  var CacheStorageRepository = class {
5995
6059
  constructor(config = {}) {
5996
6060
  __publicField(this, "name", "CacheStorageRepository");
@@ -6396,7 +6460,7 @@ var __lionrapidAutoExports = (() => {
6396
6460
  enabled: true,
6397
6461
  options: {
6398
6462
  ttl: Number.MAX_SAFE_INTEGER,
6399
- cacheName: "lionrapid-offline-v1"
6463
+ cacheName: CORE_CACHE_NAMES.offlineFloor
6400
6464
  }
6401
6465
  })
6402
6466
  );