@warp-ds/elements 2.1.0 → 2.1.1-next.2

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/dist/index.js CHANGED
@@ -732,9 +732,9 @@ var require_moo = __commonJS({
732
732
  }
733
733
  });
734
734
 
735
- // node_modules/.pnpm/@messageformat+parser@5.1.0/node_modules/@messageformat/parser/lib/lexer.js
735
+ // node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/lexer.js
736
736
  var require_lexer = __commonJS({
737
- "node_modules/.pnpm/@messageformat+parser@5.1.0/node_modules/@messageformat/parser/lib/lexer.js"(exports) {
737
+ "node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/lexer.js"(exports) {
738
738
  "use strict";
739
739
  var __importDefault = exports && exports.__importDefault || function(mod) {
740
740
  return mod && mod.__esModule ? mod : { "default": mod };
@@ -747,7 +747,7 @@ var require_lexer = __commonJS({
747
747
  doubleapos: { match: "''", value: () => "'" },
748
748
  quoted: {
749
749
  lineBreaks: true,
750
- match: /'[{}#](?:[^]*?[^'])?'(?!')/u,
750
+ match: /'[{}#](?:[^']|'')*'(?!')/u,
751
751
  value: (src) => src.slice(1, -1).replace(/''/g, "'")
752
752
  },
753
753
  argument: {
@@ -799,12 +799,13 @@ var require_lexer = __commonJS({
799
799
  }
800
800
  });
801
801
 
802
- // node_modules/.pnpm/@messageformat+parser@5.1.0/node_modules/@messageformat/parser/lib/parser.js
802
+ // node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/parser.js
803
803
  var require_parser = __commonJS({
804
- "node_modules/.pnpm/@messageformat+parser@5.1.0/node_modules/@messageformat/parser/lib/parser.js"(exports) {
804
+ "node_modules/.pnpm/@messageformat+parser@5.1.1/node_modules/@messageformat/parser/lib/parser.js"(exports) {
805
805
  "use strict";
806
806
  Object.defineProperty(exports, "__esModule", { value: true });
807
- exports.parse = exports.ParseError = void 0;
807
+ exports.ParseError = void 0;
808
+ exports.parse = parse2;
808
809
  var lexer_js_1 = require_lexer();
809
810
  var getContext = (lt) => ({
810
811
  offset: lt.offset,
@@ -870,8 +871,9 @@ var require_parser = __commonJS({
870
871
  }
871
872
  checkSelectKey(lt, type, key) {
872
873
  if (key[0] === "=") {
873
- if (type === "select")
874
+ if (type === "select") {
874
875
  throw new ParseError(lt, `The case ${key} is not valid with select`);
876
+ }
875
877
  } else if (type !== "select") {
876
878
  const keys2 = type === "plural" ? this.cardinalKeys : this.ordinalKeys;
877
879
  if (this.strictPluralKeys && keys2.length > 0 && !keys2.includes(key)) {
@@ -889,10 +891,12 @@ var require_parser = __commonJS({
889
891
  for (const lt of this.lexer) {
890
892
  switch (lt.type) {
891
893
  case "offset":
892
- if (type === "select")
894
+ if (type === "select") {
893
895
  throw new ParseError(lt, "Unexpected plural offset for select");
894
- if (sel.cases.length > 0)
896
+ }
897
+ if (sel.cases.length > 0) {
895
898
  throw new ParseError(lt, "Plural offset must be set before cases");
899
+ }
896
900
  sel.pluralOffset = Number(lt.value);
897
901
  ctx.text += lt.text;
898
902
  ctx.lineBreaks += lt.lineBreaks;
@@ -932,11 +936,13 @@ var require_parser = __commonJS({
932
936
  const end = this.lexer.next();
933
937
  if (!end)
934
938
  throw new ParseError(null, "Unexpected message end");
935
- if (end.type !== "end")
939
+ if (end.type !== "end") {
936
940
  throw new ParseError(end, `Unexpected lexer token: ${end.type}`);
941
+ }
937
942
  ctx.text += end.text;
938
- if (isSelectType(argType.value.toLowerCase()))
943
+ if (isSelectType(argType.value.toLowerCase())) {
939
944
  throw new ParseError(argType, `Invalid type identifier: ${argType.value}`);
945
+ }
940
946
  return {
941
947
  type: "function",
942
948
  arg: lt.value,
@@ -950,8 +956,9 @@ var require_parser = __commonJS({
950
956
  throw new ParseError(argType, msg);
951
957
  }
952
958
  let param = this.parseBody(this.strict ? false : inPlural);
953
- if (this.strict && param.length > 0)
959
+ if (this.strict && param.length > 0) {
954
960
  param = strictArgStyleParam(lt, param);
961
+ }
955
962
  return {
956
963
  type: "function",
957
964
  arg: lt.value,
@@ -961,10 +968,11 @@ var require_parser = __commonJS({
961
968
  };
962
969
  }
963
970
  case "select":
964
- if (isSelectType(argType.value))
971
+ if (isSelectType(argType.value)) {
965
972
  return this.parseSelect(lt, inPlural, ctx, argType.value);
966
- else
973
+ } else {
967
974
  throw new ParseError(argType, `Unexpected select type ${argType.value}`);
975
+ }
968
976
  default:
969
977
  throw new ParseError(argType, `Unexpected lexer token: ${argType.type}`);
970
978
  }
@@ -1011,7 +1019,6 @@ var require_parser = __commonJS({
1011
1019
  const parser = new Parser(src, options);
1012
1020
  return parser.parse();
1013
1021
  }
1014
- exports.parse = parse2;
1015
1022
  }
1016
1023
  });
1017
1024
 
@@ -1028,7 +1035,7 @@ var r = function() {
1028
1035
  }, []).join(" ");
1029
1036
  };
1030
1037
 
1031
- // node_modules/.pnpm/@warp-ds+css@2.0.0_@warp-ds+uno@2.0.0_unocss@0.62.0_postcss@8.4.41_rollup@4.20.0_vite@5.3.3_@_vyiy5vwpqfzwy5hpmfkwp3zmle/node_modules/@warp-ds/css/component-classes/index.js
1038
+ // node_modules/.pnpm/@warp-ds+css@2.1.1_@warp-ds+uno@2.1.0_unocss@0.62.0_postcss@8.5.1_rollup@4.32.1_vite@5.3.3_@t_sgrraibu65gdmqpe655kfrpl6a/node_modules/@warp-ds/css/component-classes/index.js
1032
1039
  var badge = {
1033
1040
  base: "py-4 px-8 border-0 rounded-4 text-xs inline-flex",
1034
1041
  neutral: "bg-[--w-color-badge-neutral-background] s-text",
@@ -1429,18 +1436,276 @@ var attention = {
1429
1436
  import WarpElement from "@warp-ds/elements-core";
1430
1437
  import { ifDefined } from "lit/directives/if-defined.js";
1431
1438
 
1432
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/search-16.js
1439
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/search-16.js
1433
1440
  import { LitElement } from "lit";
1434
1441
  import { unsafeStatic, html } from "lit/static-html.js";
1435
1442
 
1436
- // node_modules/.pnpm/@lingui+core@4.11.2/node_modules/@lingui/core/dist/index.mjs
1443
+ // node_modules/.pnpm/@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-macros@3.1.0_typescri_qfhfd5z2jpd4amxt2golzdalsi/node_modules/@lingui/core/dist/index.mjs
1437
1444
  var import_unraw = __toESM(require_dist(), 1);
1438
1445
 
1439
- // node_modules/.pnpm/@lingui+message-utils@4.11.2/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1446
+ // node_modules/.pnpm/@lingui+message-utils@5.2.0/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1440
1447
  var import_parser = __toESM(require_parser(), 1);
1448
+ var DateFormatError = class extends Error {
1449
+ /** @internal */
1450
+ constructor(msg, token, type) {
1451
+ super(msg);
1452
+ this.token = token;
1453
+ this.type = type || "error";
1454
+ }
1455
+ };
1456
+ var alpha = (width) => width < 4 ? "short" : width === 4 ? "long" : "narrow";
1457
+ var numeric = (width) => width % 2 === 0 ? "2-digit" : "numeric";
1458
+ function yearOptions(token, onError) {
1459
+ switch (token.char) {
1460
+ case "y":
1461
+ return { year: numeric(token.width) };
1462
+ case "r":
1463
+ return { calendar: "gregory", year: "numeric" };
1464
+ case "u":
1465
+ case "U":
1466
+ case "Y":
1467
+ default:
1468
+ onError(`${token.desc} is not supported; falling back to year:numeric`, DateFormatError.WARNING);
1469
+ return { year: "numeric" };
1470
+ }
1471
+ }
1472
+ function monthStyle(token, onError) {
1473
+ switch (token.width) {
1474
+ case 1:
1475
+ return "numeric";
1476
+ case 2:
1477
+ return "2-digit";
1478
+ case 3:
1479
+ return "short";
1480
+ case 4:
1481
+ return "long";
1482
+ case 5:
1483
+ return "narrow";
1484
+ default:
1485
+ onError(`${token.desc} is not supported with width ${token.width}`);
1486
+ return void 0;
1487
+ }
1488
+ }
1489
+ function dayStyle(token, onError) {
1490
+ const { char, desc, width } = token;
1491
+ if (char === "d") {
1492
+ return numeric(width);
1493
+ } else {
1494
+ onError(`${desc} is not supported`);
1495
+ return void 0;
1496
+ }
1497
+ }
1498
+ function weekdayStyle(token, onError) {
1499
+ const { char, desc, width } = token;
1500
+ if ((char === "c" || char === "e") && width < 3) {
1501
+ const msg = `Numeric value is not supported for ${desc}; falling back to weekday:short`;
1502
+ onError(msg, DateFormatError.WARNING);
1503
+ }
1504
+ return alpha(width);
1505
+ }
1506
+ function hourOptions(token) {
1507
+ const hour = numeric(token.width);
1508
+ let hourCycle;
1509
+ switch (token.char) {
1510
+ case "h":
1511
+ hourCycle = "h12";
1512
+ break;
1513
+ case "H":
1514
+ hourCycle = "h23";
1515
+ break;
1516
+ case "k":
1517
+ hourCycle = "h24";
1518
+ break;
1519
+ case "K":
1520
+ hourCycle = "h11";
1521
+ break;
1522
+ }
1523
+ return hourCycle ? { hour, hourCycle } : { hour };
1524
+ }
1525
+ function timeZoneNameStyle(token, onError) {
1526
+ const { char, desc, width } = token;
1527
+ switch (char) {
1528
+ case "v":
1529
+ case "z":
1530
+ return width === 4 ? "long" : "short";
1531
+ case "V":
1532
+ if (width === 4)
1533
+ return "long";
1534
+ onError(`${desc} is not supported with width ${width}`);
1535
+ return void 0;
1536
+ case "X":
1537
+ onError(`${desc} is not supported`);
1538
+ return void 0;
1539
+ }
1540
+ return "short";
1541
+ }
1542
+ function compileOptions(token, onError) {
1543
+ switch (token.field) {
1544
+ case "era":
1545
+ return { era: alpha(token.width) };
1546
+ case "year":
1547
+ return yearOptions(token, onError);
1548
+ case "month":
1549
+ return { month: monthStyle(token, onError) };
1550
+ case "day":
1551
+ return { day: dayStyle(token, onError) };
1552
+ case "weekday":
1553
+ return { weekday: weekdayStyle(token, onError) };
1554
+ case "period":
1555
+ return void 0;
1556
+ case "hour":
1557
+ return hourOptions(token);
1558
+ case "min":
1559
+ return { minute: numeric(token.width) };
1560
+ case "sec":
1561
+ return { second: numeric(token.width) };
1562
+ case "tz":
1563
+ return { timeZoneName: timeZoneNameStyle(token, onError) };
1564
+ case "quarter":
1565
+ case "week":
1566
+ case "sec-frac":
1567
+ case "ms":
1568
+ onError(`${token.desc} is not supported`);
1569
+ }
1570
+ return void 0;
1571
+ }
1572
+ function getDateFormatOptions(tokens, timeZone, onError = (error) => {
1573
+ throw error;
1574
+ }) {
1575
+ const options = {
1576
+ timeZone
1577
+ };
1578
+ const fields2 = [];
1579
+ for (const token of tokens) {
1580
+ const { error, field, str } = token;
1581
+ if (error) {
1582
+ const dte = new DateFormatError(error.message, token);
1583
+ dte.stack = error.stack;
1584
+ onError(dte);
1585
+ }
1586
+ if (str) {
1587
+ const msg = `Ignoring string part: ${str}`;
1588
+ onError(new DateFormatError(msg, token, DateFormatError.WARNING));
1589
+ }
1590
+ if (field) {
1591
+ if (fields2.indexOf(field) === -1)
1592
+ fields2.push(field);
1593
+ else
1594
+ onError(new DateFormatError(`Duplicate ${field} token`, token));
1595
+ }
1596
+ const opt = compileOptions(token, (msg, isWarning) => onError(new DateFormatError(msg, token, isWarning)));
1597
+ if (opt)
1598
+ Object.assign(options, opt);
1599
+ }
1600
+ return options;
1601
+ }
1602
+ var fields = {
1603
+ G: { field: "era", desc: "Era" },
1604
+ y: { field: "year", desc: "Year" },
1605
+ Y: { field: "year", desc: 'Year of "Week of Year"' },
1606
+ u: { field: "year", desc: "Extended year" },
1607
+ U: { field: "year", desc: "Cyclic year name" },
1608
+ r: { field: "year", desc: "Related Gregorian year" },
1609
+ Q: { field: "quarter", desc: "Quarter" },
1610
+ q: { field: "quarter", desc: "Stand-alone quarter" },
1611
+ M: { field: "month", desc: "Month in year" },
1612
+ L: { field: "month", desc: "Stand-alone month in year" },
1613
+ w: { field: "week", desc: "Week of year" },
1614
+ W: { field: "week", desc: "Week of month" },
1615
+ d: { field: "day", desc: "Day in month" },
1616
+ D: { field: "day", desc: "Day of year" },
1617
+ F: { field: "day", desc: "Day of week in month" },
1618
+ g: { field: "day", desc: "Modified julian day" },
1619
+ E: { field: "weekday", desc: "Day of week" },
1620
+ e: { field: "weekday", desc: "Local day of week" },
1621
+ c: { field: "weekday", desc: "Stand-alone local day of week" },
1622
+ a: { field: "period", desc: "AM/PM marker" },
1623
+ b: { field: "period", desc: "AM/PM/noon/midnight marker" },
1624
+ B: { field: "period", desc: "Flexible day period" },
1625
+ h: { field: "hour", desc: "Hour in AM/PM (1~12)" },
1626
+ H: { field: "hour", desc: "Hour in day (0~23)" },
1627
+ k: { field: "hour", desc: "Hour in day (1~24)" },
1628
+ K: { field: "hour", desc: "Hour in AM/PM (0~11)" },
1629
+ j: { field: "hour", desc: "Hour in preferred cycle" },
1630
+ J: { field: "hour", desc: "Hour in preferred cycle without marker" },
1631
+ C: { field: "hour", desc: "Hour in preferred cycle with flexible marker" },
1632
+ m: { field: "min", desc: "Minute in hour" },
1633
+ s: { field: "sec", desc: "Second in minute" },
1634
+ S: { field: "sec-frac", desc: "Fractional second" },
1635
+ A: { field: "ms", desc: "Milliseconds in day" },
1636
+ z: { field: "tz", desc: "Time Zone: specific non-location" },
1637
+ Z: { field: "tz", desc: "Time Zone" },
1638
+ O: { field: "tz", desc: "Time Zone: localized" },
1639
+ v: { field: "tz", desc: "Time Zone: generic non-location" },
1640
+ V: { field: "tz", desc: "Time Zone: ID" },
1641
+ X: { field: "tz", desc: "Time Zone: ISO8601 with Z" },
1642
+ x: { field: "tz", desc: "Time Zone: ISO8601" }
1643
+ };
1644
+ var isLetter = (char) => char >= "A" && char <= "Z" || char >= "a" && char <= "z";
1645
+ function readFieldToken(src, pos) {
1646
+ const char = src[pos];
1647
+ let width = 1;
1648
+ while (src[++pos] === char)
1649
+ ++width;
1650
+ const field = fields[char];
1651
+ if (!field) {
1652
+ const msg = `The letter ${char} is not a valid field identifier`;
1653
+ return { char, error: new Error(msg), width };
1654
+ }
1655
+ return { char, field: field.field, desc: field.desc, width };
1656
+ }
1657
+ function readQuotedToken(src, pos) {
1658
+ let str = src[++pos];
1659
+ let width = 2;
1660
+ if (str === "'")
1661
+ return { char: "'", str, width };
1662
+ while (true) {
1663
+ const next = src[++pos];
1664
+ ++width;
1665
+ if (next === void 0) {
1666
+ const msg = `Unterminated quoted literal in pattern: ${str || src}`;
1667
+ return { char: "'", error: new Error(msg), str, width };
1668
+ } else if (next === "'") {
1669
+ if (src[++pos] !== "'")
1670
+ return { char: "'", str, width };
1671
+ else
1672
+ ++width;
1673
+ }
1674
+ str += next;
1675
+ }
1676
+ }
1677
+ function readToken(src, pos) {
1678
+ const char = src[pos];
1679
+ if (!char)
1680
+ return null;
1681
+ if (isLetter(char))
1682
+ return readFieldToken(src, pos);
1683
+ if (char === "'")
1684
+ return readQuotedToken(src, pos);
1685
+ let str = char;
1686
+ let width = 1;
1687
+ while (true) {
1688
+ const next = src[++pos];
1689
+ if (!next || isLetter(next) || next === "'")
1690
+ return { char, str, width };
1691
+ str += next;
1692
+ width += 1;
1693
+ }
1694
+ }
1695
+ function parseDateTokens(src) {
1696
+ const tokens = [];
1697
+ let pos = 0;
1698
+ while (true) {
1699
+ const token = readToken(src, pos);
1700
+ if (!token)
1701
+ return tokens;
1702
+ tokens.push(token);
1703
+ pos += token.width;
1704
+ }
1705
+ }
1441
1706
  function processTokens(tokens, mapText) {
1442
1707
  if (!tokens.filter((token) => token.type !== "content").length) {
1443
- return tokens.map((token) => mapText(token.value)).join("");
1708
+ return tokens.map((token) => mapText(token.value));
1444
1709
  }
1445
1710
  return tokens.map((token) => {
1446
1711
  var _a;
@@ -1452,6 +1717,12 @@ function processTokens(tokens, mapText) {
1452
1717
  return [token.arg];
1453
1718
  } else if (token.type === "function") {
1454
1719
  const _param = (_a = token == null ? void 0 : token.param) == null ? void 0 : _a[0];
1720
+ if (token.key === "date" && _param) {
1721
+ const opts = compileDateExpression(_param.value.trim(), (e) => {
1722
+ throw new Error(`Unable to compile date expression: ${e.message}`);
1723
+ });
1724
+ return [token.arg, token.key, opts];
1725
+ }
1455
1726
  if (_param) {
1456
1727
  return [token.arg, token.key, _param.value.trim()];
1457
1728
  } else {
@@ -1473,6 +1744,13 @@ function processTokens(tokens, mapText) {
1473
1744
  ];
1474
1745
  });
1475
1746
  }
1747
+ function compileDateExpression(format, onError) {
1748
+ if (/^::/.test(format)) {
1749
+ const tokens = parseDateTokens(format.substring(2));
1750
+ return getDateFormatOptions(tokens, void 0, onError);
1751
+ }
1752
+ return format;
1753
+ }
1476
1754
  function compileMessage(message, mapText = (v) => v) {
1477
1755
  try {
1478
1756
  return processTokens((0, import_parser.parse)(message), mapText);
@@ -1480,11 +1758,11 @@ function compileMessage(message, mapText = (v) => v) {
1480
1758
  console.error(`${e.message}
1481
1759
 
1482
1760
  Message: ${message}`);
1483
- return message;
1761
+ return [message];
1484
1762
  }
1485
1763
  }
1486
1764
 
1487
- // node_modules/.pnpm/@lingui+core@4.11.2/node_modules/@lingui/core/dist/index.mjs
1765
+ // node_modules/.pnpm/@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-macros@3.1.0_typescri_qfhfd5z2jpd4amxt2golzdalsi/node_modules/@lingui/core/dist/index.mjs
1488
1766
  var isString = (s) => typeof s === "string";
1489
1767
  var isFunction = (f2) => typeof f2 === "function";
1490
1768
  var cache = /* @__PURE__ */ new Map();
@@ -1495,12 +1773,59 @@ function normalizeLocales(locales) {
1495
1773
  }
1496
1774
  function date(locales, value, format) {
1497
1775
  const _locales = normalizeLocales(locales);
1776
+ if (!format) {
1777
+ format = "default";
1778
+ }
1779
+ let o;
1780
+ if (typeof format === "string") {
1781
+ o = {
1782
+ day: "numeric",
1783
+ month: "short",
1784
+ year: "numeric"
1785
+ };
1786
+ switch (format) {
1787
+ case "full":
1788
+ o.weekday = "long";
1789
+ case "long":
1790
+ o.month = "long";
1791
+ break;
1792
+ case "short":
1793
+ o.month = "numeric";
1794
+ break;
1795
+ }
1796
+ } else {
1797
+ o = format;
1798
+ }
1498
1799
  const formatter = getMemoized(
1499
1800
  () => cacheKey("date", _locales, format),
1500
- () => new Intl.DateTimeFormat(_locales, format)
1801
+ () => new Intl.DateTimeFormat(_locales, o)
1501
1802
  );
1502
1803
  return formatter.format(isString(value) ? new Date(value) : value);
1503
1804
  }
1805
+ function time(locales, value, format) {
1806
+ let o;
1807
+ if (!format) {
1808
+ format = "default";
1809
+ }
1810
+ if (typeof format === "string") {
1811
+ o = {
1812
+ second: "numeric",
1813
+ minute: "numeric",
1814
+ hour: "numeric"
1815
+ };
1816
+ switch (format) {
1817
+ case "full":
1818
+ case "long":
1819
+ o.timeZoneName = "short";
1820
+ break;
1821
+ case "short":
1822
+ delete o.second;
1823
+ }
1824
+ } else {
1825
+ o = format;
1826
+ }
1827
+ return date(locales, value, o);
1828
+ }
1504
1829
  function number(locales, value, format) {
1505
1830
  const _locales = normalizeLocales(locales);
1506
1831
  const formatter = getMemoized(
@@ -1535,12 +1860,14 @@ function cacheKey(type, locales, options) {
1535
1860
  const localeKey = locales.join("-");
1536
1861
  return `${type}-${localeKey}-${JSON.stringify(options)}`;
1537
1862
  }
1538
- var UNICODE_REGEX = /\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/g;
1863
+ var UNICODE_REGEX = /\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/;
1539
1864
  var OCTOTHORPE_PH = "%__lingui_octothorpe__%";
1540
1865
  var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1541
1866
  const locales = passedLocales || locale;
1542
1867
  const style = (format) => {
1543
- return typeof format === "object" ? format : formats[format] || { style: format };
1868
+ if (typeof format === "object")
1869
+ return format;
1870
+ return formats[format];
1544
1871
  };
1545
1872
  const replaceOctothorpe = (value, message) => {
1546
1873
  const numberFormat = Object.keys(formats).length ? style("number") : void 0;
@@ -1559,8 +1886,13 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1559
1886
  return replaceOctothorpe(value - offset3, message);
1560
1887
  },
1561
1888
  select: selectFormatter,
1562
- number: (value, format) => number(locales, value, style(format)),
1563
- date: (value, format) => date(locales, value, style(format))
1889
+ number: (value, format) => number(
1890
+ locales,
1891
+ value,
1892
+ style(format) || { style: format }
1893
+ ),
1894
+ date: (value, format) => date(locales, value, style(format) || format),
1895
+ time: (value, format) => time(locales, value, style(format) || format)
1564
1896
  };
1565
1897
  };
1566
1898
  var selectFormatter = (value, rules) => {
@@ -1609,10 +1941,10 @@ function interpolate(translation, locale, locales) {
1609
1941
  };
1610
1942
  const result = formatMessage(translation);
1611
1943
  if (isString(result) && UNICODE_REGEX.test(result)) {
1612
- return (0, import_unraw.unraw)(result.trim());
1944
+ return (0, import_unraw.unraw)(result);
1613
1945
  }
1614
1946
  if (isString(result))
1615
- return result.trim();
1947
+ return result;
1616
1948
  return result ? String(result) : "";
1617
1949
  };
1618
1950
  }
@@ -1667,7 +1999,11 @@ var I18n = class extends EventEmitter {
1667
1999
  __publicField2(this, "_localeData", {});
1668
2000
  __publicField2(this, "_messages", {});
1669
2001
  __publicField2(this, "_missing");
2002
+ __publicField2(this, "_messageCompiler");
1670
2003
  __publicField2(this, "t", this._.bind(this));
2004
+ if (true) {
2005
+ this.setMessagesCompiler(compileMessage);
2006
+ }
1671
2007
  if (params.missing != null)
1672
2008
  this._missing = params.missing;
1673
2009
  if (params.messages != null)
@@ -1703,12 +2039,30 @@ var I18n = class extends EventEmitter {
1703
2039
  Object.assign(maybeLocaleData, localeData);
1704
2040
  }
1705
2041
  }
2042
+ /**
2043
+ * Registers a `MessageCompiler` to enable the use of uncompiled catalogs at runtime.
2044
+ *
2045
+ * In production builds, the `MessageCompiler` is typically excluded to reduce bundle size.
2046
+ * By default, message catalogs should be precompiled during the build process. However,
2047
+ * if you need to compile catalogs at runtime, you can use this method to set a message compiler.
2048
+ *
2049
+ * Example usage:
2050
+ *
2051
+ * ```ts
2052
+ * import { compileMessage } from "@lingui/message-utils/compileMessage";
2053
+ *
2054
+ * i18n.setMessagesCompiler(compileMessage);
2055
+ * ```
2056
+ */
2057
+ setMessagesCompiler(compiler) {
2058
+ this._messageCompiler = compiler;
2059
+ return this;
2060
+ }
1706
2061
  /**
1707
2062
  * @deprecated Plurals automatically used from Intl.PluralRules you can safely remove this call. Deprecated in v4
1708
2063
  */
1709
- // @ts-ignore deprecated, so ignore the reported error
1710
2064
  loadLocaleData(localeOrAllData, localeData) {
1711
- if (localeData != null) {
2065
+ if (typeof localeOrAllData === "string") {
1712
2066
  this._loadLocaleData(localeOrAllData, localeData);
1713
2067
  } else {
1714
2068
  Object.keys(localeOrAllData).forEach(
@@ -1755,6 +2109,11 @@ var I18n = class extends EventEmitter {
1755
2109
  this.emit("change");
1756
2110
  }
1757
2111
  _(id, values, options) {
2112
+ if (!this.locale) {
2113
+ throw new Error(
2114
+ "Lingui: Attempted to call a translation function without setting a locale.\nMake sure to call `i18n.activate(locale)` before using Lingui functions.\nThis issue may also occur due to a race condition in your initialization logic."
2115
+ );
2116
+ }
1758
2117
  let message = options == null ? void 0 : options.message;
1759
2118
  if (!id) {
1760
2119
  id = "";
@@ -1774,8 +2133,20 @@ var I18n = class extends EventEmitter {
1774
2133
  this.emit("missing", { id, locale: this._locale });
1775
2134
  }
1776
2135
  let translation = messageForId || message || id;
1777
- if (true) {
1778
- translation = isString(translation) ? compileMessage(translation) : translation;
2136
+ if (isString(translation)) {
2137
+ if (this._messageCompiler) {
2138
+ translation = this._messageCompiler(translation);
2139
+ } else {
2140
+ console.warn(`Uncompiled message detected! Message:
2141
+
2142
+ > ${translation}
2143
+
2144
+ That means you use raw catalog or your catalog doesn't have a translation for the message and fallback was used.
2145
+ ICU features such as interpolation and plurals will not work properly for that message.
2146
+
2147
+ Please compile your catalog first.
2148
+ `);
2149
+ }
1779
2150
  }
1780
2151
  if (isString(translation) && UNICODE_REGEX.test(translation))
1781
2152
  return JSON.parse(`"${translation}"`);
@@ -1799,12 +2170,12 @@ function setupI18n(params = {}) {
1799
2170
  }
1800
2171
  var i18n = setupI18n();
1801
2172
 
1802
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/search-16.js
1803
- var messages = JSON.parse('{"icon.title.search":"Forst\xF8rrelsesglass"}');
1804
- var messages2 = JSON.parse('{"icon.title.search":"Magnifying glass"}');
1805
- var messages3 = JSON.parse('{"icon.title.search":"Suurennuslasi"}');
1806
- var messages4 = JSON.parse('{"icon.title.search":"Forst\xF8rrelsesglas"}');
1807
- var messages5 = JSON.parse('{"icon.title.search":"F\xF6rstoringsglas"}');
2173
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/search-16.js
2174
+ var messages = JSON.parse('{"icon.title.search":["Forst\xF8rrelsesglass"]}');
2175
+ var messages2 = JSON.parse('{"icon.title.search":["Magnifying glass"]}');
2176
+ var messages3 = JSON.parse('{"icon.title.search":["Suurennuslasi"]}');
2177
+ var messages4 = JSON.parse('{"icon.title.search":["Forst\xF8rrelsesglas"]}');
2178
+ var messages5 = JSON.parse('{"icon.title.search":["F\xF6rstoringsglas"]}');
1808
2179
  var supportedLocales = ["en", "nb", "fi", "da", "sv"];
1809
2180
  var defaultLocale2 = "en";
1810
2181
  var detectByBrand = () => {
@@ -1891,14 +2262,14 @@ if (!customElements.get("w-icon-search-16")) {
1891
2262
  customElements.define("w-icon-search-16", IconSearch16);
1892
2263
  }
1893
2264
 
1894
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/close-16.js
2265
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/close-16.js
1895
2266
  import { LitElement as LitElement2 } from "lit";
1896
2267
  import { unsafeStatic as unsafeStatic2, html as html2 } from "lit/static-html.js";
1897
- var messages6 = JSON.parse('{"icon.title.close":"Kryss"}');
1898
- var messages22 = JSON.parse('{"icon.title.close":"Cross"}');
1899
- var messages32 = JSON.parse('{"icon.title.close":"Rasti"}');
1900
- var messages42 = JSON.parse('{"icon.title.close":"Kryds"}');
1901
- var messages52 = JSON.parse('{"icon.title.close":"Kryss"}');
2268
+ var messages6 = JSON.parse('{"icon.title.close":["Kryss"]}');
2269
+ var messages22 = JSON.parse('{"icon.title.close":["Cross"]}');
2270
+ var messages32 = JSON.parse('{"icon.title.close":["Rasti"]}');
2271
+ var messages42 = JSON.parse('{"icon.title.close":["Kryds"]}');
2272
+ var messages52 = JSON.parse('{"icon.title.close":["Kryss"]}');
1902
2273
  var supportedLocales2 = ["en", "nb", "fi", "da", "sv"];
1903
2274
  var defaultLocale3 = "en";
1904
2275
  var detectByBrand2 = () => {
@@ -2062,14 +2433,14 @@ if (!customElements.get("w-affix")) {
2062
2433
  import { css, html as html8 } from "lit";
2063
2434
  import WarpElement2 from "@warp-ds/elements-core";
2064
2435
 
2065
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/info-16.js
2436
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/info-16.js
2066
2437
  import { LitElement as LitElement3 } from "lit";
2067
2438
  import { unsafeStatic as unsafeStatic3, html as html4 } from "lit/static-html.js";
2068
- var messages7 = JSON.parse('{"icon.title.info":"Informasjonssirkel"}');
2069
- var messages23 = JSON.parse('{"icon.title.info":"Information circle"}');
2070
- var messages33 = JSON.parse('{"icon.title.info":"Ympyr\xE4, jonka sis\xE4ll\xE4 on i-kirjain"}');
2071
- var messages43 = JSON.parse('{"icon.title.info":"Informationscirkel"}');
2072
- var messages53 = JSON.parse('{"icon.title.info":"Informationscirkel"}');
2439
+ var messages7 = JSON.parse('{"icon.title.info":["Informasjonssirkel"]}');
2440
+ var messages23 = JSON.parse('{"icon.title.info":["Information circle"]}');
2441
+ var messages33 = JSON.parse('{"icon.title.info":["Ympyr\xE4, jonka sis\xE4ll\xE4 on i-kirjain"]}');
2442
+ var messages43 = JSON.parse('{"icon.title.info":["Informationscirkel"]}');
2443
+ var messages53 = JSON.parse('{"icon.title.info":["Informationscirkel"]}');
2073
2444
  var supportedLocales3 = ["en", "nb", "fi", "da", "sv"];
2074
2445
  var defaultLocale4 = "en";
2075
2446
  var detectByBrand3 = () => {
@@ -2156,14 +2527,14 @@ if (!customElements.get("w-icon-info-16")) {
2156
2527
  customElements.define("w-icon-info-16", IconInfo16);
2157
2528
  }
2158
2529
 
2159
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/warning-16.js
2530
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/warning-16.js
2160
2531
  import { LitElement as LitElement4 } from "lit";
2161
2532
  import { unsafeStatic as unsafeStatic4, html as html5 } from "lit/static-html.js";
2162
- var messages8 = JSON.parse('{"icon.title.warning":"Varseltrekant med utropstegn"}');
2163
- var messages24 = JSON.parse('{"icon.title.warning":"Warning triangle with exclamation point"}');
2164
- var messages34 = JSON.parse('{"icon.title.warning":"Varoituskolmio, jonka sis\xE4ll\xE4 on huutomerkki"}');
2165
- var messages44 = JSON.parse('{"icon.title.warning":"Advarselstrekant med et udr\xE5bstegn"}');
2166
- var messages54 = JSON.parse('{"icon.title.warning":"Varningstriangel med utropstecken"}');
2533
+ var messages8 = JSON.parse('{"icon.title.warning":["Varseltrekant med utropstegn"]}');
2534
+ var messages24 = JSON.parse('{"icon.title.warning":["Warning triangle with exclamation point"]}');
2535
+ var messages34 = JSON.parse('{"icon.title.warning":["Varoituskolmio, jonka sis\xE4ll\xE4 on huutomerkki"]}');
2536
+ var messages44 = JSON.parse('{"icon.title.warning":["Advarselstrekant med et udr\xE5bstegn"]}');
2537
+ var messages54 = JSON.parse('{"icon.title.warning":["Varningstriangel med utropstecken"]}');
2167
2538
  var supportedLocales4 = ["en", "nb", "fi", "da", "sv"];
2168
2539
  var defaultLocale5 = "en";
2169
2540
  var detectByBrand4 = () => {
@@ -2250,14 +2621,14 @@ if (!customElements.get("w-icon-warning-16")) {
2250
2621
  customElements.define("w-icon-warning-16", IconWarning16);
2251
2622
  }
2252
2623
 
2253
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/error-16.js
2624
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/error-16.js
2254
2625
  import { LitElement as LitElement5 } from "lit";
2255
2626
  import { unsafeStatic as unsafeStatic5, html as html6 } from "lit/static-html.js";
2256
- var messages9 = JSON.parse('{"icon.title.error":"\xC5ttekant med utropstegn"}');
2257
- var messages25 = JSON.parse('{"icon.title.error":"Octagon with exclamation point"}');
2258
- var messages35 = JSON.parse('{"icon.title.error":"Kahdeksankulmio, jonka sis\xE4ll\xE4 on huutomerkki"}');
2259
- var messages45 = JSON.parse('{"icon.title.error":"Ottekant med et udr\xE5bstegn"}');
2260
- var messages55 = JSON.parse('{"icon.title.error":"Oktagon med utropstecken"}');
2627
+ var messages9 = JSON.parse('{"icon.title.error":["\xC5ttekant med utropstegn"]}');
2628
+ var messages25 = JSON.parse('{"icon.title.error":["Octagon with exclamation point"]}');
2629
+ var messages35 = JSON.parse('{"icon.title.error":["Kahdeksankulmio, jonka sis\xE4ll\xE4 on huutomerkki"]}');
2630
+ var messages45 = JSON.parse('{"icon.title.error":["Ottekant med et udr\xE5bstegn"]}');
2631
+ var messages55 = JSON.parse('{"icon.title.error":["Oktagon med utropstecken"]}');
2261
2632
  var supportedLocales5 = ["en", "nb", "fi", "da", "sv"];
2262
2633
  var defaultLocale6 = "en";
2263
2634
  var detectByBrand5 = () => {
@@ -2344,14 +2715,14 @@ if (!customElements.get("w-icon-error-16")) {
2344
2715
  customElements.define("w-icon-error-16", IconError16);
2345
2716
  }
2346
2717
 
2347
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/success-16.js
2718
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/success-16.js
2348
2719
  import { LitElement as LitElement6 } from "lit";
2349
2720
  import { unsafeStatic as unsafeStatic6, html as html7 } from "lit/static-html.js";
2350
- var messages10 = JSON.parse('{"icon.title.success":"Sirkel med sjekkmerke"}');
2351
- var messages26 = JSON.parse('{"icon.title.success":"Circle with checkmark"}');
2352
- var messages36 = JSON.parse('{"icon.title.success":"Ympyr\xE4, jonka sis\xE4ll\xE4 on valintamerkki"}');
2353
- var messages46 = JSON.parse('{"icon.title.success":"Cirkel med et flueben"}');
2354
- var messages56 = JSON.parse('{"icon.title.success":"Cirkel med bock"}');
2721
+ var messages10 = JSON.parse('{"icon.title.success":["Sirkel med sjekkmerke"]}');
2722
+ var messages26 = JSON.parse('{"icon.title.success":["Circle with checkmark"]}');
2723
+ var messages36 = JSON.parse('{"icon.title.success":["Ympyr\xE4, jonka sis\xE4ll\xE4 on valintamerkki"]}');
2724
+ var messages46 = JSON.parse('{"icon.title.success":["Cirkel med et flueben"]}');
2725
+ var messages56 = JSON.parse('{"icon.title.success":["Cirkel med bock"]}');
2355
2726
  var supportedLocales6 = ["en", "nb", "fi", "da", "sv"];
2356
2727
  var defaultLocale7 = "en";
2357
2728
  var detectByBrand6 = () => {
@@ -2521,7 +2892,7 @@ if (!customElements.get("w-alert")) {
2521
2892
  // packages/attention/index.js
2522
2893
  import { css as css2, html as html9, nothing } from "lit";
2523
2894
 
2524
- // node_modules/.pnpm/@floating-ui+utils@0.2.7/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
2895
+ // node_modules/.pnpm/@floating-ui+utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs
2525
2896
  var sides = ["top", "right", "bottom", "left"];
2526
2897
  var min = Math.min;
2527
2898
  var max = Math.max;
@@ -2650,7 +3021,7 @@ function rectToClientRect(rect) {
2650
3021
  };
2651
3022
  }
2652
3023
 
2653
- // node_modules/.pnpm/@floating-ui+core@1.6.7/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
3024
+ // node_modules/.pnpm/@floating-ui+core@1.6.9/node_modules/@floating-ui/core/dist/floating-ui.core.mjs
2654
3025
  function computeCoordsFromPlacement(_ref, placement, rtl) {
2655
3026
  let {
2656
3027
  reference,
@@ -3092,11 +3463,11 @@ async function convertValueToCoords(state, options) {
3092
3463
  mainAxis: rawValue,
3093
3464
  crossAxis: 0,
3094
3465
  alignmentAxis: null
3095
- } : __spreadValues({
3096
- mainAxis: 0,
3097
- crossAxis: 0,
3098
- alignmentAxis: null
3099
- }, rawValue);
3466
+ } : {
3467
+ mainAxis: rawValue.mainAxis || 0,
3468
+ crossAxis: rawValue.crossAxis || 0,
3469
+ alignmentAxis: rawValue.alignmentAxis
3470
+ };
3100
3471
  if (alignment && typeof alignmentAxis === "number") {
3101
3472
  crossAxis = alignment === "end" ? alignmentAxis * -1 : alignmentAxis;
3102
3473
  }
@@ -3200,7 +3571,11 @@ var shift = function(options) {
3200
3571
  return __spreadProps(__spreadValues({}, limitedCoords), {
3201
3572
  data: {
3202
3573
  x: limitedCoords.x - x,
3203
- y: limitedCoords.y - y2
3574
+ y: limitedCoords.y - y2,
3575
+ enabled: {
3576
+ [mainAxis]: checkMainAxis,
3577
+ [crossAxis]: checkCrossAxis
3578
+ }
3204
3579
  }
3205
3580
  });
3206
3581
  }
@@ -3214,6 +3589,7 @@ var size = function(options) {
3214
3589
  name: "size",
3215
3590
  options,
3216
3591
  async fn(state) {
3592
+ var _state$middlewareData, _state$middlewareData2;
3217
3593
  const {
3218
3594
  placement,
3219
3595
  rects,
@@ -3250,10 +3626,11 @@ var size = function(options) {
3250
3626
  const noShift = !state.middlewareData.shift;
3251
3627
  let availableHeight = overflowAvailableHeight;
3252
3628
  let availableWidth = overflowAvailableWidth;
3253
- if (isYAxis) {
3254
- availableWidth = alignment || noShift ? min(overflowAvailableWidth, maximumClippingWidth) : maximumClippingWidth;
3255
- } else {
3256
- availableHeight = alignment || noShift ? min(overflowAvailableHeight, maximumClippingHeight) : maximumClippingHeight;
3629
+ if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {
3630
+ availableWidth = maximumClippingWidth;
3631
+ }
3632
+ if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {
3633
+ availableHeight = maximumClippingHeight;
3257
3634
  }
3258
3635
  if (noShift && !alignment) {
3259
3636
  const xMin = max(overflow.left, 0);
@@ -3283,7 +3660,10 @@ var size = function(options) {
3283
3660
  };
3284
3661
  };
3285
3662
 
3286
- // node_modules/.pnpm/@floating-ui+utils@0.2.7/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
3663
+ // node_modules/.pnpm/@floating-ui+utils@0.2.9/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs
3664
+ function hasWindow() {
3665
+ return typeof window !== "undefined";
3666
+ }
3287
3667
  function getNodeName(node) {
3288
3668
  if (isNode(node)) {
3289
3669
  return (node.nodeName || "").toLowerCase();
@@ -3299,16 +3679,25 @@ function getDocumentElement(node) {
3299
3679
  return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
3300
3680
  }
3301
3681
  function isNode(value) {
3682
+ if (!hasWindow()) {
3683
+ return false;
3684
+ }
3302
3685
  return value instanceof Node || value instanceof getWindow(value).Node;
3303
3686
  }
3304
3687
  function isElement(value) {
3688
+ if (!hasWindow()) {
3689
+ return false;
3690
+ }
3305
3691
  return value instanceof Element || value instanceof getWindow(value).Element;
3306
3692
  }
3307
3693
  function isHTMLElement(value) {
3694
+ if (!hasWindow()) {
3695
+ return false;
3696
+ }
3308
3697
  return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
3309
3698
  }
3310
3699
  function isShadowRoot(value) {
3311
- if (typeof ShadowRoot === "undefined") {
3700
+ if (!hasWindow() || typeof ShadowRoot === "undefined") {
3312
3701
  return false;
3313
3702
  }
3314
3703
  return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
@@ -3337,7 +3726,7 @@ function isTopLayer(element) {
3337
3726
  function isContainingBlock(elementOrCss) {
3338
3727
  const webkit = isWebKit();
3339
3728
  const css11 = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
3340
- return css11.transform !== "none" || css11.perspective !== "none" || (css11.containerType ? css11.containerType !== "normal" : false) || !webkit && (css11.backdropFilter ? css11.backdropFilter !== "none" : false) || !webkit && (css11.filter ? css11.filter !== "none" : false) || ["transform", "perspective", "filter"].some((value) => (css11.willChange || "").includes(value)) || ["paint", "layout", "strict", "content"].some((value) => (css11.contain || "").includes(value));
3729
+ return ["transform", "translate", "scale", "rotate", "perspective"].some((value) => css11[value] ? css11[value] !== "none" : false) || (css11.containerType ? css11.containerType !== "normal" : false) || !webkit && (css11.backdropFilter ? css11.backdropFilter !== "none" : false) || !webkit && (css11.filter ? css11.filter !== "none" : false) || ["transform", "translate", "scale", "rotate", "perspective", "filter"].some((value) => (css11.willChange || "").includes(value)) || ["paint", "layout", "strict", "content"].some((value) => (css11.contain || "").includes(value));
3341
3730
  }
3342
3731
  function getContainingBlock(element) {
3343
3732
  let currentNode = getParentNode(element);
@@ -3417,7 +3806,7 @@ function getFrameElement(win) {
3417
3806
  return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
3418
3807
  }
3419
3808
 
3420
- // node_modules/.pnpm/@floating-ui+dom@1.6.10/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
3809
+ // node_modules/.pnpm/@floating-ui+dom@1.6.13/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs
3421
3810
  function getCssDimensions(element) {
3422
3811
  const css11 = getComputedStyle(element);
3423
3812
  let width = parseFloat(css11.width) || 0;
@@ -3535,6 +3924,28 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
3535
3924
  y: y2
3536
3925
  });
3537
3926
  }
3927
+ function getWindowScrollBarX(element, rect) {
3928
+ const leftScroll = getNodeScroll(element).scrollLeft;
3929
+ if (!rect) {
3930
+ return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
3931
+ }
3932
+ return rect.left + leftScroll;
3933
+ }
3934
+ function getHTMLOffset(documentElement, scroll, ignoreScrollbarX) {
3935
+ if (ignoreScrollbarX === void 0) {
3936
+ ignoreScrollbarX = false;
3937
+ }
3938
+ const htmlRect = documentElement.getBoundingClientRect();
3939
+ const x = htmlRect.left + scroll.scrollLeft - (ignoreScrollbarX ? 0 : (
3940
+ // RTL <body> scrollbar.
3941
+ getWindowScrollBarX(documentElement, htmlRect)
3942
+ ));
3943
+ const y2 = htmlRect.top + scroll.scrollTop;
3944
+ return {
3945
+ x,
3946
+ y: y2
3947
+ };
3948
+ }
3538
3949
  function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
3539
3950
  let {
3540
3951
  elements,
@@ -3566,19 +3977,17 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
3566
3977
  offsets.y = offsetRect.y + offsetParent.clientTop;
3567
3978
  }
3568
3979
  }
3980
+ const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll, true) : createCoords(0);
3569
3981
  return {
3570
3982
  width: rect.width * scale.x,
3571
3983
  height: rect.height * scale.y,
3572
- x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,
3573
- y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y
3984
+ x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,
3985
+ y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y
3574
3986
  };
3575
3987
  }
3576
3988
  function getClientRects(element) {
3577
3989
  return Array.from(element.getClientRects());
3578
3990
  }
3579
- function getWindowScrollBarX(element) {
3580
- return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
3581
- }
3582
3991
  function getDocumentRect(element) {
3583
3992
  const html30 = getDocumentElement(element);
3584
3993
  const scroll = getNodeScroll(element);
@@ -3647,10 +4056,12 @@ function getClientRectFromClippingAncestor(element, clippingAncestor, strategy)
3647
4056
  rect = getInnerBoundingClientRect(clippingAncestor, strategy);
3648
4057
  } else {
3649
4058
  const visualOffsets = getVisualOffsets(element);
3650
- rect = __spreadProps(__spreadValues({}, clippingAncestor), {
4059
+ rect = {
3651
4060
  x: clippingAncestor.x - visualOffsets.x,
3652
- y: clippingAncestor.y - visualOffsets.y
3653
- });
4061
+ y: clippingAncestor.y - visualOffsets.y,
4062
+ width: clippingAncestor.width,
4063
+ height: clippingAncestor.height
4064
+ };
3654
4065
  }
3655
4066
  return rectToClientRect(rect);
3656
4067
  }
@@ -3744,8 +4155,9 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
3744
4155
  offsets.x = getWindowScrollBarX(documentElement);
3745
4156
  }
3746
4157
  }
3747
- const x = rect.left + scroll.scrollLeft - offsets.x;
3748
- const y2 = rect.top + scroll.scrollTop - offsets.y;
4158
+ const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
4159
+ const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;
4160
+ const y2 = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;
3749
4161
  return {
3750
4162
  x,
3751
4163
  y: y2,
@@ -3763,7 +4175,11 @@ function getTrueOffsetParent(element, polyfill) {
3763
4175
  if (polyfill) {
3764
4176
  return polyfill(element);
3765
4177
  }
3766
- return element.offsetParent;
4178
+ let rawOffsetParent = element.offsetParent;
4179
+ if (getDocumentElement(element) === rawOffsetParent) {
4180
+ rawOffsetParent = rawOffsetParent.ownerDocument.body;
4181
+ }
4182
+ return rawOffsetParent;
3767
4183
  }
3768
4184
  function getOffsetParent(element, polyfill) {
3769
4185
  const win = getWindow(element);
@@ -3837,7 +4253,7 @@ var computePosition2 = (reference, floating, options) => {
3837
4253
  }));
3838
4254
  };
3839
4255
 
3840
- // node_modules/.pnpm/@warp-ds+core@1.1.8_@floating-ui+dom@1.6.10/node_modules/@warp-ds/core/dist/attention/utils/helpers.js
4256
+ // node_modules/.pnpm/@warp-ds+core@1.1.8_@floating-ui+dom@1.6.13/node_modules/@warp-ds/core/dist/attention/utils/helpers.js
3841
4257
  var TOP_START = "top-start";
3842
4258
  var TOP = "top";
3843
4259
  var TOP_END = "top-end";
@@ -4038,19 +4454,19 @@ var activateI18n7 = (enMessages, nbMessages, fiMessages, daMessages, svMessages)
4038
4454
  };
4039
4455
 
4040
4456
  // packages/attention/locales/da/messages.mjs
4041
- var messages11 = JSON.parse('{"attention.aria.callout":"En gr\xF8n taleboble der introducerer noget nyt","attention.aria.close":"Luk","attention.aria.highlight":"En opm\xE6rksomhedsskabende taleboble med vigtig information","attention.aria.pointingDown":"peger nedad","attention.aria.pointingLeft":"peger til venstre","attention.aria.pointingRight":"peger til h\xF8jre","attention.aria.pointingUp":"peger opad","attention.aria.popover":"En hvid taleboble med mere information","attention.aria.tooltip":"En sort taleboble med flere oplysninger"}');
4457
+ var messages11 = JSON.parse('{"attention.aria.callout":["En gr\xF8n taleboble der introducerer noget nyt"],"attention.aria.close":["Luk"],"attention.aria.highlight":["En opm\xE6rksomhedsskabende taleboble med vigtig information"],"attention.aria.pointingDown":["peger nedad"],"attention.aria.pointingLeft":["peger til venstre"],"attention.aria.pointingRight":["peger til h\xF8jre"],"attention.aria.pointingUp":["peger opad"],"attention.aria.popover":["En hvid taleboble med mere information"],"attention.aria.tooltip":["En sort taleboble med flere oplysninger"]}');
4042
4458
 
4043
4459
  // packages/attention/locales/en/messages.mjs
4044
- var messages12 = JSON.parse('{"attention.aria.callout":"A green speech bubble introducing something new","attention.aria.close":"Close","attention.aria.highlight":"An attention speech bubble with important information","attention.aria.pointingDown":"pointing down","attention.aria.pointingLeft":"pointing left","attention.aria.pointingRight":"pointing right","attention.aria.pointingUp":"pointing up","attention.aria.popover":"A white speech bubble providing additional information","attention.aria.tooltip":"A black speech bubble providing complementary information"}');
4460
+ var messages12 = JSON.parse('{"attention.aria.callout":["A green speech bubble introducing something new"],"attention.aria.close":["Close"],"attention.aria.highlight":["An attention speech bubble with important information"],"attention.aria.pointingDown":["pointing down"],"attention.aria.pointingLeft":["pointing left"],"attention.aria.pointingRight":["pointing right"],"attention.aria.pointingUp":["pointing up"],"attention.aria.popover":["A white speech bubble providing additional information"],"attention.aria.tooltip":["A black speech bubble providing complementary information"]}');
4045
4461
 
4046
4462
  // packages/attention/locales/fi/messages.mjs
4047
- var messages13 = JSON.parse('{"attention.aria.callout":"Vihre\xE4 puhekupla, joka esittelee jotain uutta","attention.aria.close":"Sulje","attention.aria.highlight":"Puhekupla, joka sis\xE4lt\xE4\xE4 t\xE4rke\xE4\xE4 tietoa","attention.aria.pointingDown":"osoittaa alas","attention.aria.pointingLeft":"osoittaa vasemmalle","attention.aria.pointingRight":"osoittaa oikealle","attention.aria.pointingUp":"osoittaa yl\xF6s","attention.aria.popover":"Valkoinen puhekupla, joka tarjoaa lis\xE4tietoa","attention.aria.tooltip":"Musta puhekupla, joka tarjoaa t\xE4ydent\xE4v\xE4\xE4 tietoa"}');
4463
+ var messages13 = JSON.parse('{"attention.aria.callout":["Vihre\xE4 puhekupla, joka esittelee jotain uutta"],"attention.aria.close":["Sulje"],"attention.aria.highlight":["Puhekupla, joka sis\xE4lt\xE4\xE4 t\xE4rke\xE4\xE4 tietoa"],"attention.aria.pointingDown":["osoittaa alas"],"attention.aria.pointingLeft":["osoittaa vasemmalle"],"attention.aria.pointingRight":["osoittaa oikealle"],"attention.aria.pointingUp":["osoittaa yl\xF6s"],"attention.aria.popover":["Valkoinen puhekupla, joka tarjoaa lis\xE4tietoa"],"attention.aria.tooltip":["Musta puhekupla, joka tarjoaa t\xE4ydent\xE4v\xE4\xE4 tietoa"]}');
4048
4464
 
4049
4465
  // packages/attention/locales/nb/messages.mjs
4050
- var messages14 = JSON.parse('{"attention.aria.callout":"Gr\xF8nn taleboble som introduserer noe nytt","attention.aria.close":"Lukk","attention.aria.highlight":"En uthevet taleboble med viktig informasjon","attention.aria.pointingDown":"peker ned","attention.aria.pointingLeft":"peker til venstre","attention.aria.pointingRight":"peker til h\xF8yre","attention.aria.pointingUp":"peker opp","attention.aria.popover":"En hvit taleboble som gir tilleggsinformasjon","attention.aria.tooltip":"En svart taleboble som forklarer konteksten"}');
4466
+ var messages14 = JSON.parse('{"attention.aria.callout":["Gr\xF8nn taleboble som introduserer noe nytt"],"attention.aria.close":["Lukk"],"attention.aria.highlight":["En uthevet taleboble med viktig informasjon"],"attention.aria.pointingDown":["peker ned"],"attention.aria.pointingLeft":["peker til venstre"],"attention.aria.pointingRight":["peker til h\xF8yre"],"attention.aria.pointingUp":["peker opp"],"attention.aria.popover":["En hvit taleboble som gir tilleggsinformasjon"],"attention.aria.tooltip":["En svart taleboble som forklarer konteksten"]}');
4051
4467
 
4052
4468
  // packages/attention/locales/sv/messages.mjs
4053
- var messages15 = JSON.parse('{"attention.aria.callout":"En gr\xF6n pratbubbla som introducerar n\xE5got nytt","attention.aria.close":"St\xE4ng","attention.aria.highlight":"En pratbubbla med viktig information","attention.aria.pointingDown":"pekar ned","attention.aria.pointingLeft":"pekar v\xE4nster","attention.aria.pointingRight":"pekar h\xF6ger","attention.aria.pointingUp":"pekar upp","attention.aria.popover":"En vit pratbubbla som ger ytterligare information","attention.aria.tooltip":"En svart pratbubbla som ger kompletterande information"}');
4469
+ var messages15 = JSON.parse('{"attention.aria.callout":["En gr\xF6n pratbubbla som introducerar n\xE5got nytt"],"attention.aria.close":["St\xE4ng"],"attention.aria.highlight":["En pratbubbla med viktig information"],"attention.aria.pointingDown":["pekar ned"],"attention.aria.pointingLeft":["pekar v\xE4nster"],"attention.aria.pointingRight":["pekar h\xF6ger"],"attention.aria.pointingUp":["pekar upp"],"attention.aria.popover":["En vit pratbubbla som ger ytterligare information"],"attention.aria.tooltip":["En svart pratbubbla som ger kompletterande information"]}');
4054
4470
 
4055
4471
  // packages/attention/index.js
4056
4472
  var WarpAttention = class extends kebabCaseAttributes(WarpElement3) {
@@ -4472,7 +4888,7 @@ if (!customElements.get("w-box")) {
4472
4888
  // packages/breadcrumbs/index.js
4473
4889
  import { html as html12 } from "lit";
4474
4890
 
4475
- // node_modules/.pnpm/@warp-ds+core@1.1.8_@floating-ui+dom@1.6.10/node_modules/@warp-ds/core/dist/breadcrumbs/index.js
4891
+ // node_modules/.pnpm/@warp-ds+core@1.1.8_@floating-ui+dom@1.6.13/node_modules/@warp-ds/core/dist/breadcrumbs/index.js
4476
4892
  function interleave(array, separator2) {
4477
4893
  return array.flatMap((el) => [el, separator2]).slice(0, -1);
4478
4894
  }
@@ -4481,19 +4897,19 @@ function interleave(array, separator2) {
4481
4897
  import WarpElement6 from "@warp-ds/elements-core";
4482
4898
 
4483
4899
  // packages/breadcrumbs/locales/da/messages.mjs
4484
- var messages16 = JSON.parse('{"breadcrumbs.ariaLabel":"Du er her"}');
4900
+ var messages16 = JSON.parse('{"breadcrumbs.ariaLabel":["Du er her"]}');
4485
4901
 
4486
4902
  // packages/breadcrumbs/locales/en/messages.mjs
4487
- var messages17 = JSON.parse('{"breadcrumbs.ariaLabel":"You are here"}');
4903
+ var messages17 = JSON.parse('{"breadcrumbs.ariaLabel":["You are here"]}');
4488
4904
 
4489
4905
  // packages/breadcrumbs/locales/fi/messages.mjs
4490
- var messages18 = JSON.parse('{"breadcrumbs.ariaLabel":"Olet t\xE4ss\xE4"}');
4906
+ var messages18 = JSON.parse('{"breadcrumbs.ariaLabel":["Olet t\xE4ss\xE4"]}');
4491
4907
 
4492
4908
  // packages/breadcrumbs/locales/nb/messages.mjs
4493
- var messages19 = JSON.parse('{"breadcrumbs.ariaLabel":"Her er du"}');
4909
+ var messages19 = JSON.parse('{"breadcrumbs.ariaLabel":["Her er du"]}');
4494
4910
 
4495
4911
  // packages/breadcrumbs/locales/sv/messages.mjs
4496
- var messages20 = JSON.parse('{"breadcrumbs.ariaLabel":"Du \xE4r h\xE4r"}');
4912
+ var messages20 = JSON.parse('{"breadcrumbs.ariaLabel":["Du \xE4r h\xE4r"]}');
4497
4913
 
4498
4914
  // packages/breadcrumbs/index.js
4499
4915
  var separator = html12`<span class=${breadcrumbs.separator}>/</span>`;
@@ -4622,19 +5038,19 @@ import { html as html14 } from "lit";
4622
5038
  import WarpElement8 from "@warp-ds/elements-core";
4623
5039
 
4624
5040
  // packages/button/locales/da/messages.mjs
4625
- var messages21 = JSON.parse('{"button.aria.loading":"Indl\xE6ser..."}');
5041
+ var messages21 = JSON.parse('{"button.aria.loading":["Indl\xE6ser..."]}');
4626
5042
 
4627
5043
  // packages/button/locales/en/messages.mjs
4628
- var messages27 = JSON.parse('{"button.aria.loading":"Loading..."}');
5044
+ var messages27 = JSON.parse('{"button.aria.loading":["Loading..."]}');
4629
5045
 
4630
5046
  // packages/button/locales/fi/messages.mjs
4631
- var messages28 = JSON.parse('{"button.aria.loading":"Ladataan..."}');
5047
+ var messages28 = JSON.parse('{"button.aria.loading":["Ladataan..."]}');
4632
5048
 
4633
5049
  // packages/button/locales/nb/messages.mjs
4634
- var messages29 = JSON.parse('{"button.aria.loading":"Laster..."}');
5050
+ var messages29 = JSON.parse('{"button.aria.loading":["Laster..."]}');
4635
5051
 
4636
5052
  // packages/button/locales/sv/messages.mjs
4637
- var messages30 = JSON.parse('{"button.aria.loading":"Laddar ..."}');
5053
+ var messages30 = JSON.parse('{"button.aria.loading":["Laddar ..."]}');
4638
5054
 
4639
5055
  // packages/button/index.js
4640
5056
  var buttonTypes2 = ["primary", "secondary", "negative", "utility", "pill", "link"];
@@ -4762,19 +5178,19 @@ import WarpElement9 from "@warp-ds/elements-core";
4762
5178
  import { ifDefined as ifDefined3 } from "lit/directives/if-defined.js";
4763
5179
 
4764
5180
  // packages/card/locales/da/messages.mjs
4765
- var messages31 = JSON.parse('{"card.button.text":"V\xE6lg"}');
5181
+ var messages31 = JSON.parse('{"card.button.text":["V\xE6lg"]}');
4766
5182
 
4767
5183
  // packages/card/locales/en/messages.mjs
4768
- var messages37 = JSON.parse('{"card.button.text":"Select"}');
5184
+ var messages37 = JSON.parse('{"card.button.text":["Select"]}');
4769
5185
 
4770
5186
  // packages/card/locales/fi/messages.mjs
4771
- var messages38 = JSON.parse('{"card.button.text":"Valitse"}');
5187
+ var messages38 = JSON.parse('{"card.button.text":["Valitse"]}');
4772
5188
 
4773
5189
  // packages/card/locales/nb/messages.mjs
4774
- var messages39 = JSON.parse('{"card.button.text":"Velg"}');
5190
+ var messages39 = JSON.parse('{"card.button.text":["Velg"]}');
4775
5191
 
4776
5192
  // packages/card/locales/sv/messages.mjs
4777
- var messages40 = JSON.parse('{"card.button.text":"V\xE4lj"}');
5193
+ var messages40 = JSON.parse('{"card.button.text":["V\xE4lj"]}');
4778
5194
 
4779
5195
  // packages/card/index.js
4780
5196
  var keys = {
@@ -4856,14 +5272,14 @@ import { css as css5, html as html18 } from "lit";
4856
5272
  import WarpElement10 from "@warp-ds/elements-core";
4857
5273
  import { ifDefined as ifDefined4 } from "lit/directives/if-defined.js";
4858
5274
 
4859
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/chevron-down-16.js
5275
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/chevron-down-16.js
4860
5276
  import { LitElement as LitElement7 } from "lit";
4861
5277
  import { unsafeStatic as unsafeStatic7, html as html16 } from "lit/static-html.js";
4862
- var messages41 = JSON.parse('{"icon.title.chevron-down":"Nedoverpil"}');
4863
- var messages210 = JSON.parse('{"icon.title.chevron-down":"Downward arrow"}');
4864
- var messages310 = JSON.parse('{"icon.title.chevron-down":"Nuoli alasp\xE4in"}');
4865
- var messages47 = JSON.parse('{"icon.title.chevron-down":"Pil nedad"}');
4866
- var messages57 = JSON.parse('{"icon.title.chevron-down":"Pil ned"}');
5278
+ var messages41 = JSON.parse('{"icon.title.chevron-down":["Nedoverpil"]}');
5279
+ var messages210 = JSON.parse('{"icon.title.chevron-down":["Downward arrow"]}');
5280
+ var messages310 = JSON.parse('{"icon.title.chevron-down":["Nuoli alasp\xE4in"]}');
5281
+ var messages47 = JSON.parse('{"icon.title.chevron-down":["Pil nedad"]}');
5282
+ var messages57 = JSON.parse('{"icon.title.chevron-down":["Pil ned"]}');
4867
5283
  var supportedLocales8 = ["en", "nb", "fi", "da", "sv"];
4868
5284
  var defaultLocale9 = "en";
4869
5285
  var detectByBrand7 = () => {
@@ -4950,14 +5366,14 @@ if (!customElements.get("w-icon-chevron-down-16")) {
4950
5366
  customElements.define("w-icon-chevron-down-16", IconChevronDown16);
4951
5367
  }
4952
5368
 
4953
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/chevron-up-16.js
5369
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/chevron-up-16.js
4954
5370
  import { LitElement as LitElement8 } from "lit";
4955
5371
  import { unsafeStatic as unsafeStatic8, html as html17 } from "lit/static-html.js";
4956
- var messages48 = JSON.parse('{"icon.title.chevron-up":"Oppoverpil"}');
4957
- var messages211 = JSON.parse('{"icon.title.chevron-up":"Upward arrow"}');
4958
- var messages311 = JSON.parse('{"icon.title.chevron-up":"Nuoli yl\xF6sp\xE4in"}');
4959
- var messages49 = JSON.parse('{"icon.title.chevron-up":"Pil opad"}');
4960
- var messages58 = JSON.parse('{"icon.title.chevron-up":"Pil upp"}');
5372
+ var messages48 = JSON.parse('{"icon.title.chevron-up":["Oppoverpil"]}');
5373
+ var messages211 = JSON.parse('{"icon.title.chevron-up":["Upward arrow"]}');
5374
+ var messages311 = JSON.parse('{"icon.title.chevron-up":["Nuoli yl\xF6sp\xE4in"]}');
5375
+ var messages49 = JSON.parse('{"icon.title.chevron-up":["Pil opad"]}');
5376
+ var messages58 = JSON.parse('{"icon.title.chevron-up":["Pil upp"]}');
4961
5377
  var supportedLocales9 = ["en", "nb", "fi", "da", "sv"];
4962
5378
  var defaultLocale10 = "en";
4963
5379
  var detectByBrand8 = () => {
@@ -5265,14 +5681,14 @@ var Move = class {
5265
5681
  }
5266
5682
  };
5267
5683
 
5268
- // node_modules/.pnpm/@warp-ds+icons@2.4.0/node_modules/@warp-ds/icons/dist/elements/arrow-left-16.js
5684
+ // node_modules/.pnpm/@warp-ds+icons@2.5.0_@lingui+core@5.2.0_@lingui+babel-plugin-lingui-macro@5.2.0_babel-plugin-_hyhbgchrkasknlbocfng7geeci/node_modules/@warp-ds/icons/dist/elements/arrow-left-16.js
5269
5685
  import { LitElement as LitElement9 } from "lit";
5270
5686
  import { unsafeStatic as unsafeStatic9, html as html20 } from "lit/static-html.js";
5271
- var messages50 = JSON.parse('{"icon.title.arrow-left":"Pil som peker mot venstre"}');
5272
- var messages212 = JSON.parse('{"icon.title.arrow-left":"Leftward-pointing arrow"}');
5273
- var messages312 = JSON.parse('{"icon.title.arrow-left":"Vasemmalle osoittava nuoli"}');
5274
- var messages410 = JSON.parse('{"icon.title.arrow-left":"Pil til venstre"}');
5275
- var messages59 = JSON.parse('{"icon.title.arrow-left":"Pil som pekar v\xE4nster"}');
5687
+ var messages50 = JSON.parse('{"icon.title.arrow-left":["Pil som peker mot venstre"]}');
5688
+ var messages212 = JSON.parse('{"icon.title.arrow-left":["Leftward-pointing arrow"]}');
5689
+ var messages312 = JSON.parse('{"icon.title.arrow-left":["Vasemmalle osoittava nuoli"]}');
5690
+ var messages410 = JSON.parse('{"icon.title.arrow-left":["Pil til venstre"]}');
5691
+ var messages59 = JSON.parse('{"icon.title.arrow-left":["Pil som pekar v\xE4nster"]}');
5276
5692
  var supportedLocales10 = ["en", "nb", "fi", "da", "sv"];
5277
5693
  var defaultLocale11 = "en";
5278
5694
  var detectByBrand9 = () => {
@@ -5364,19 +5780,19 @@ import WarpElement12 from "@warp-ds/elements-core";
5364
5780
  import { createRef, ref } from "lit/directives/ref.js";
5365
5781
 
5366
5782
  // packages/modal/locales/da/messages.mjs
5367
- var messages51 = JSON.parse('{"modal.aria.back":"Tilbage","modal.aria.close":"Luk"}');
5783
+ var messages51 = JSON.parse('{"modal.aria.back":["Tilbage"],"modal.aria.close":["Luk"]}');
5368
5784
 
5369
5785
  // packages/modal/locales/en/messages.mjs
5370
- var messages60 = JSON.parse('{"modal.aria.back":"Back","modal.aria.close":"Close"}');
5786
+ var messages60 = JSON.parse('{"modal.aria.back":["Back"],"modal.aria.close":["Close"]}');
5371
5787
 
5372
5788
  // packages/modal/locales/fi/messages.mjs
5373
- var messages61 = JSON.parse('{"modal.aria.back":"Takaisin","modal.aria.close":"Sulje"}');
5789
+ var messages61 = JSON.parse('{"modal.aria.back":["Takaisin"],"modal.aria.close":["Sulje"]}');
5374
5790
 
5375
5791
  // packages/modal/locales/nb/messages.mjs
5376
- var messages62 = JSON.parse('{"modal.aria.back":"Tilbake","modal.aria.close":"Lukk"}');
5792
+ var messages62 = JSON.parse('{"modal.aria.back":["Tilbake"],"modal.aria.close":["Lukk"]}');
5377
5793
 
5378
5794
  // packages/modal/locales/sv/messages.mjs
5379
- var messages63 = JSON.parse('{"modal.aria.back":"Tillbaka","modal.aria.close":"St\xE4ng"}');
5795
+ var messages63 = JSON.parse('{"modal.aria.back":["Tillbaka"],"modal.aria.close":["St\xE4ng"]}');
5380
5796
 
5381
5797
  // packages/modal/modal-header.js
5382
5798
  var NO_CLOSE_BUTTON = "no-close";
@@ -5679,19 +6095,19 @@ import { html as html23 } from "lit";
5679
6095
  import WarpElement14 from "@warp-ds/elements-core";
5680
6096
 
5681
6097
  // packages/pill/locales/da/messages.mjs
5682
- var messages64 = JSON.parse('{"pill.aria.openFilter":"\xC5bn filter","pill.aria.removeFilter":["Fjern filter ",["label"]]}');
6098
+ var messages64 = JSON.parse('{"pill.aria.openFilter":["\xC5bn filter"],"pill.aria.removeFilter":["Fjern filter ",["label"]]}');
5683
6099
 
5684
6100
  // packages/pill/locales/en/messages.mjs
5685
- var messages65 = JSON.parse('{"pill.aria.openFilter":"Open filter","pill.aria.removeFilter":["Remove filter ",["label"]]}');
6101
+ var messages65 = JSON.parse('{"pill.aria.openFilter":["Open filter"],"pill.aria.removeFilter":["Remove filter ",["label"]]}');
5686
6102
 
5687
6103
  // packages/pill/locales/fi/messages.mjs
5688
- var messages66 = JSON.parse('{"pill.aria.openFilter":"Avaa suodatin","pill.aria.removeFilter":["Tyhjenn\xE4 suodatin ",["label"]]}');
6104
+ var messages66 = JSON.parse('{"pill.aria.openFilter":["Avaa suodatin"],"pill.aria.removeFilter":["Tyhjenn\xE4 suodatin ",["label"]]}');
5689
6105
 
5690
6106
  // packages/pill/locales/nb/messages.mjs
5691
- var messages67 = JSON.parse('{"pill.aria.openFilter":"\xC5pne filter","pill.aria.removeFilter":["Fjern filter ",["label"]]}');
6107
+ var messages67 = JSON.parse('{"pill.aria.openFilter":["\xC5pne filter"],"pill.aria.removeFilter":["Fjern filter ",["label"]]}');
5692
6108
 
5693
6109
  // packages/pill/locales/sv/messages.mjs
5694
- var messages68 = JSON.parse('{"pill.aria.openFilter":"\xD6ppna filter","pill.aria.removeFilter":["Ta bort filtret ",["label"]]}');
6110
+ var messages68 = JSON.parse('{"pill.aria.openFilter":["\xD6ppna filter"],"pill.aria.removeFilter":["Ta bort filtret ",["label"]]}');
5695
6111
 
5696
6112
  // packages/pill/index.js
5697
6113
  var WarpPill = class extends kebabCaseAttributes(WarpElement14) {
@@ -5762,19 +6178,19 @@ import { unsafeHTML } from "lit/directives/unsafe-html.js";
5762
6178
  import { when } from "lit/directives/when.js";
5763
6179
 
5764
6180
  // packages/select/locales/da/messages.mjs
5765
- var messages69 = JSON.parse('{"select.label.optional":"(valgfrit)"}');
6181
+ var messages69 = JSON.parse('{"select.label.optional":["(valgfrit)"]}');
5766
6182
 
5767
6183
  // packages/select/locales/en/messages.mjs
5768
- var messages70 = JSON.parse('{"select.label.optional":"(optional)"}');
6184
+ var messages70 = JSON.parse('{"select.label.optional":["(optional)"]}');
5769
6185
 
5770
6186
  // packages/select/locales/fi/messages.mjs
5771
- var messages71 = JSON.parse('{"select.label.optional":"(vapaaehtoinen)"}');
6187
+ var messages71 = JSON.parse('{"select.label.optional":["(vapaaehtoinen)"]}');
5772
6188
 
5773
6189
  // packages/select/locales/nb/messages.mjs
5774
- var messages72 = JSON.parse('{"select.label.optional":"(valgfritt)"}');
6190
+ var messages72 = JSON.parse('{"select.label.optional":["(valgfritt)"]}');
5775
6191
 
5776
6192
  // packages/select/locales/sv/messages.mjs
5777
- var messages73 = JSON.parse('{"select.label.optional":"(valfritt)"}');
6193
+ var messages73 = JSON.parse('{"select.label.optional":["(valfritt)"]}');
5778
6194
 
5779
6195
  // packages/select/index.js
5780
6196
  var _WarpSelect_instances, classes_get, helpTextClasses_get, chevronClasses_get2, id_get, helpId_get;
@@ -6233,19 +6649,19 @@ var collapse = (el, done) => {
6233
6649
  import { when as when2 } from "lit/directives/when.js";
6234
6650
 
6235
6651
  // packages/toast/locales/da/messages.mjs
6236
- var messages74 = JSON.parse('{"toast.aria.error":"Fejl","toast.aria.successful":"Fuldf\xF8rt","toast.aria.warning":"Advarsel"}');
6652
+ var messages74 = JSON.parse('{"toast.aria.error":["Fejl"],"toast.aria.successful":["Fuldf\xF8rt"],"toast.aria.warning":["Advarsel"]}');
6237
6653
 
6238
6654
  // packages/toast/locales/en/messages.mjs
6239
- var messages75 = JSON.parse('{"toast.aria.error":"Error","toast.aria.successful":"Successful","toast.aria.warning":"Warning"}');
6655
+ var messages75 = JSON.parse('{"toast.aria.error":["Error"],"toast.aria.successful":["Successful"],"toast.aria.warning":["Warning"]}');
6240
6656
 
6241
6657
  // packages/toast/locales/fi/messages.mjs
6242
- var messages76 = JSON.parse('{"toast.aria.error":"Virhe","toast.aria.successful":"Onnistui","toast.aria.warning":"Varoitus"}');
6658
+ var messages76 = JSON.parse('{"toast.aria.error":["Virhe"],"toast.aria.successful":["Onnistui"],"toast.aria.warning":["Varoitus"]}');
6243
6659
 
6244
6660
  // packages/toast/locales/nb/messages.mjs
6245
- var messages77 = JSON.parse('{"toast.aria.error":"Feil","toast.aria.successful":"Vellykket","toast.aria.warning":"Advarsel"}');
6661
+ var messages77 = JSON.parse('{"toast.aria.error":["Feil"],"toast.aria.successful":["Vellykket"],"toast.aria.warning":["Advarsel"]}');
6246
6662
 
6247
6663
  // packages/toast/locales/sv/messages.mjs
6248
- var messages78 = JSON.parse('{"toast.aria.error":"Fel","toast.aria.successful":"Genomf\xF6rt","toast.aria.warning":"Varning"}');
6664
+ var messages78 = JSON.parse('{"toast.aria.error":["Fel"],"toast.aria.successful":["Genomf\xF6rt"],"toast.aria.warning":["Varning"]}');
6249
6665
 
6250
6666
  // packages/toast/toast.js
6251
6667
  var toastType = {