@warp-ds/elements 1.3.1-next.1 → 1.3.2-next.1

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 (33) hide show
  1. package/README.md +1 -1
  2. package/dist/index.js +199 -129
  3. package/dist/index.js.map +4 -4
  4. package/dist/packages/affix/index.js +139 -62
  5. package/dist/packages/affix/index.js.map +4 -4
  6. package/dist/packages/alert/index.js +148 -71
  7. package/dist/packages/alert/index.js.map +4 -4
  8. package/dist/packages/attention/index.d.ts +1 -1
  9. package/dist/packages/attention/index.js +139 -62
  10. package/dist/packages/attention/index.js.map +4 -4
  11. package/dist/packages/badge/index.js +114 -46
  12. package/dist/packages/badge/index.js.map +3 -3
  13. package/dist/packages/box/index.js +105 -39
  14. package/dist/packages/box/index.js.map +3 -3
  15. package/dist/packages/breadcrumbs/index.js +142 -65
  16. package/dist/packages/breadcrumbs/index.js.map +4 -4
  17. package/dist/packages/broadcast/index.js.map +1 -1
  18. package/dist/packages/button/index.js +139 -62
  19. package/dist/packages/button/index.js.map +4 -4
  20. package/dist/packages/card/index.js +112 -46
  21. package/dist/packages/card/index.js.map +3 -3
  22. package/dist/packages/expandable/index.js +139 -62
  23. package/dist/packages/expandable/index.js.map +4 -4
  24. package/dist/packages/pill/index.js +141 -64
  25. package/dist/packages/pill/index.js.map +4 -4
  26. package/dist/packages/select/index.js +153 -80
  27. package/dist/packages/select/index.js.map +4 -4
  28. package/dist/packages/textfield/index.d.ts +0 -1
  29. package/dist/packages/textfield/index.js +119 -55
  30. package/dist/packages/textfield/index.js.map +3 -3
  31. package/dist/packages/toast/index.js +146 -69
  32. package/dist/packages/toast/index.js.map +4 -4
  33. package/package.json +25 -37
@@ -1028,10 +1028,10 @@ var require_parser = __commonJS({
1028
1028
  import { LitElement } from "lit";
1029
1029
  import { unsafeStatic, html } from "lit/static-html.js";
1030
1030
 
1031
- // node_modules/.pnpm/@lingui+core@4.7.0/node_modules/@lingui/core/dist/index.mjs
1031
+ // node_modules/.pnpm/@lingui+core@4.7.1/node_modules/@lingui/core/dist/index.mjs
1032
1032
  var import_unraw = __toESM(require_dist(), 1);
1033
1033
 
1034
- // node_modules/.pnpm/@lingui+message-utils@4.7.0/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1034
+ // node_modules/.pnpm/@lingui+message-utils@4.7.1/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1035
1035
  var import_parser = __toESM(require_parser(), 1);
1036
1036
  function processTokens(tokens, mapText) {
1037
1037
  if (!tokens.filter((token) => token.type !== "content").length) {
@@ -1081,7 +1081,7 @@ Message: ${message}`);
1081
1081
  }
1082
1082
  }
1083
1083
 
1084
- // node_modules/.pnpm/@lingui+core@4.7.0/node_modules/@lingui/core/dist/index.mjs
1084
+ // node_modules/.pnpm/@lingui+core@4.7.1/node_modules/@lingui/core/dist/index.mjs
1085
1085
  var isString = (s) => typeof s === "string";
1086
1086
  var isFunction = (f) => typeof f === "function";
1087
1087
  var cache = /* @__PURE__ */ new Map();
@@ -1133,6 +1133,7 @@ function cacheKey(type, locales, options) {
1133
1133
  return `${type}-${localeKey}-${JSON.stringify(options)}`;
1134
1134
  }
1135
1135
  var UNICODE_REGEX = /\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/g;
1136
+ var OCTOTHORPE_PH = "%__lingui_octothorpe__%";
1136
1137
  var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1137
1138
  const locales = passedLocales || locale;
1138
1139
  const style = (format) => {
@@ -1141,7 +1142,7 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1141
1142
  const replaceOctothorpe = (value, message) => {
1142
1143
  const numberFormat = Object.keys(formats).length ? style("number") : void 0;
1143
1144
  const valueStr = number(locales, value, numberFormat);
1144
- return message.replace("#", valueStr);
1145
+ return message.replace(new RegExp(OCTOTHORPE_PH, "g"), valueStr);
1145
1146
  };
1146
1147
  return {
1147
1148
  plural: (value, cases) => {
@@ -1156,43 +1157,53 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1156
1157
  },
1157
1158
  select: selectFormatter,
1158
1159
  number: (value, format) => number(locales, value, style(format)),
1159
- date: (value, format) => date(locales, value, style(format)),
1160
- undefined: undefinedFormatter
1160
+ date: (value, format) => date(locales, value, style(format))
1161
1161
  };
1162
1162
  };
1163
1163
  var selectFormatter = (value, rules) => {
1164
1164
  var _a;
1165
1165
  return (_a = rules[value]) != null ? _a : rules.other;
1166
1166
  };
1167
- var undefinedFormatter = (value) => value;
1168
1167
  function interpolate(translation, locale, locales) {
1169
1168
  return (values = {}, formats) => {
1170
1169
  const formatters = getDefaultFormats(locale, locales, formats);
1171
- const formatMessage = (message) => {
1172
- if (!Array.isArray(message))
1173
- return message;
1174
- return message.reduce((message2, token) => {
1175
- if (isString(token))
1176
- return message2 + token;
1170
+ const formatMessage = (tokens) => {
1171
+ if (!Array.isArray(tokens))
1172
+ return tokens;
1173
+ return tokens.reduce((message, token) => {
1174
+ if (token === "#") {
1175
+ return message + OCTOTHORPE_PH;
1176
+ }
1177
+ if (isString(token)) {
1178
+ return message + token;
1179
+ }
1177
1180
  const [name, type, format] = token;
1178
1181
  let interpolatedFormat = {};
1179
- if (format != null && typeof format === "object") {
1180
- Object.entries(format).forEach(([key, value2]) => {
1181
- interpolatedFormat[key] = formatMessage(value2);
1182
- });
1182
+ if (type === "plural" || type === "selectordinal" || type === "select") {
1183
+ Object.entries(format).forEach(
1184
+ ([key, value2]) => {
1185
+ interpolatedFormat[key] = formatMessage(value2);
1186
+ }
1187
+ );
1183
1188
  } else {
1184
1189
  interpolatedFormat = format;
1185
1190
  }
1186
- const formatter = formatters[type];
1187
- const value = formatter(values[name], interpolatedFormat);
1188
- if (value == null)
1189
- return message2;
1190
- return message2 + value;
1191
+ let value;
1192
+ if (type) {
1193
+ const formatter = formatters[type];
1194
+ value = formatter(values[name], interpolatedFormat);
1195
+ } else {
1196
+ value = values[name];
1197
+ }
1198
+ if (value == null) {
1199
+ return message;
1200
+ }
1201
+ return message + value;
1191
1202
  }, "");
1192
1203
  };
1193
1204
  const result = formatMessage(translation);
1194
1205
  if (isString(result) && UNICODE_REGEX.test(result)) {
1195
- return (0, import_unraw.default)(result.trim());
1206
+ return (0, import_unraw.unraw)(result.trim());
1196
1207
  }
1197
1208
  if (isString(result))
1198
1209
  return result.trim();
@@ -1543,24 +1554,24 @@ var messages5 = JSON.parse('{"pill.aria.openFilter":"Avaa suodatin","pill.aria.r
1543
1554
  // packages/pill/locales/nb/messages.mjs
1544
1555
  var messages6 = JSON.parse('{"pill.aria.openFilter":"\xC5pne filter","pill.aria.removeFilter":["Fjern filter ",["label"]]}');
1545
1556
 
1546
- // node_modules/.pnpm/@warp-ds+css@1.7.0/node_modules/@warp-ds/css/component-classes/index.js
1557
+ // node_modules/.pnpm/@warp-ds+css@1.9.1/node_modules/@warp-ds/css/component-classes/index.js
1547
1558
  var box = {
1548
1559
  box: "group block relative break-words last-child:mb-0 p-16 rounded-8",
1549
1560
  // Relative here enables w-clickable
1550
1561
  bleed: "-mx-16 sm:mx-0 rounded-l-0 rounded-r-0 sm:rounded-8",
1551
1562
  // We target L and R to override the default rounded-8
1552
- info: "i-bg-$color-box-info-background i-text-$color-box-info-text",
1553
- neutral: "i-bg-$color-box-neutral-background i-text-$color-box-neutral-text",
1554
- bordered: "border-2 i-border-$color-box-bordered-border i-bg-$color-box-bordered-background i-text-$color-box-bordered-text",
1555
- infoClickable: "hover:i-bg-$color-box-info-background-hover active:i-bg-$color-box-info-background-hover",
1556
- neutralClickable: "hover:i-bg-$color-box-neutral-background-hover active:i-bg-$color-box-neutral-background-hover",
1557
- borderedClickable: "hover:i-bg-$color-box-bordered-background-hover active:i-bg-$color-box-bordered-background-hover hover:i-border-$color-box-bordered-border-hover active:i-border-$color-box-bordered-border-hover"
1563
+ info: "s-bg-info-subtle",
1564
+ neutral: "bg-[--w-s-color-surface-sunken]",
1565
+ bordered: "border-2 s-border s-bg",
1566
+ infoClickable: "hover:s-bg-info-subtle-hover active:s-bg-info-subtle-hover",
1567
+ neutralClickable: "hover:s-bg-subtle-hover active:s-bg-subtle-hover",
1568
+ borderedClickable: "hover:s-bg-hover active:s-bg-hover hover:s-border-hover active:s-border-hover"
1558
1569
  };
1559
1570
  var pill = {
1560
1571
  pill: "flex items-center",
1561
1572
  button: "inline-flex items-center focusable text-xs transition-all",
1562
- suggestion: "i-bg-$color-pill-suggestion-background hover:i-bg-$color-pill-suggestion-background-hover active:i-bg-$color-pill-suggestion-background-active i-text-$color-pill-suggestion-text font-bold",
1563
- filter: "i-bg-$color-pill-filter-background hover:i-bg-$color-pill-filter-background-hover active:i-bg-$color-pill-filter-background-active i-text-$color-pill-filter-text",
1573
+ suggestion: "bg-[--w-color-pill-suggestion-background] hover:bg-[--w-color-pill-suggestion-background-hover] active:bg-[--w-color-pill-suggestion-background-active] s-text font-bold",
1574
+ filter: "s-bg-primary hover:s-bg-primary-hover active:s-bg-primary-active s-text-inverted",
1564
1575
  label: "pl-12 py-8 rounded-l-full",
1565
1576
  labelWithoutClose: "pr-12 rounded-r-full",
1566
1577
  labelWithClose: "pr-2",
@@ -1570,10 +1581,11 @@ var pill = {
1570
1581
  var buttonReset = "focus:outline-none appearance-none cursor-pointer bg-transparent border-0 m-0 p-0 inline-block";
1571
1582
  var expandable = {
1572
1583
  expandable: "will-change-height",
1573
- expandableTitle: "font-bold i-text-$color-expandable-title-text",
1574
- expandableBox: "i-bg-$color-expandable-background hover:i-bg-$color-expandable-background-hover py-0 px-0 " + box.box,
1584
+ expandableTitle: "font-bold s-text",
1585
+ expandableBox: "s-bg-subtle hover:s-bg-subtle-hover py-0 px-0 " + box.box,
1586
+ expandableInfo: "s-bg-info-subtle! hover:s-bg-info-subtle-hover!",
1575
1587
  expandableBleed: box.bleed,
1576
- chevron: "inline-block align-middle i-text-$color-expandable-icon",
1588
+ chevron: "inline-block align-middle s-icon",
1577
1589
  chevronNonBox: "ml-8",
1578
1590
  chevronBox: "",
1579
1591
  chevronTransform: "transform transition-transform transform-gpu ease-in-out",
@@ -1593,17 +1605,17 @@ var expandable = {
1593
1605
  };
1594
1606
  var buttonDefaultStyling = "font-bold focusable justify-center transition-colors ease-in-out";
1595
1607
  var buttonColors = {
1596
- primary: "i-text-$color-button-primary-text hover:i-text-$color-button-primary-text i-bg-$color-button-primary-background hover:i-bg-$color-button-primary-background-hover active:i-bg-$color-button-primary-background-active",
1597
- secondary: "i-text-$color-button-secondary-text hover:i-text-$color-button-secondary-text i-border-$color-button-secondary-border i-bg-$color-button-secondary-background hover:i-bg-$color-button-secondary-background-hover hover:i-border-$color-button-secondary-border-hover active:i-bg-$color-button-secondary-background-active",
1598
- utility: "i-text-$color-button-utility-text hover:i-text-$color-button-utility-text i-bg-$color-button-utility-background i-border-$color-button-utility-border hover:i-bg-$color-button-utility-background hover:i-border-$color-button-utility-border-hover active:i-border-$color-button-utility-border-active",
1599
- destructive: "i-bg-$color-button-negative-background i-text-$color-button-negative-text hover:i-text-$color-button-negative-text hover:i-bg-$color-button-negative-background-hover active:i-bg-$color-button-negative-background-active",
1600
- pill: "i-text-$color-button-pill-icon hover:i-text-$color-button-pill-icon-hover active:i-text-$color-button-pill-icon-active i-bg-$color-button-pill-background hover:i-bg-$color-button-pill-background-hover active:i-bg-$color-button-pill-background-active",
1601
- disabled: "i-text-$color-button-disabled-text i-bg-$color-button-disabled-background",
1602
- quiet: "i-bg-$color-button-quiet-background i-text-$color-button-quiet-text hover:i-bg-$color-button-quiet-background-hover active:i-bg-$color-button-quiet-background-active",
1603
- utilityQuiet: "i-text-$color-button-utility-quiet-text i-bg-$color-button-utility-quiet-background hover:i-bg-$color-button-utility-quiet-background-hover",
1604
- negativeQuiet: "i-bg-$color-button-negative-quiet-background i-text-$color-button-negative-quiet-text hover:i-bg-$color-button-negative-quiet-background-hover active:i-bg-$color-button-negative-quiet-background-active",
1605
- loading: "i-text-$color-button-loading-text i-bg-$color-button-loading-background",
1606
- link: "i-text-$color-button-link-text"
1608
+ primary: "s-text-inverted bg-[--w-color-button-primary-background] hover:bg-[--w-color-button-primary-background-hover] active:bg-[--w-color-button-primary-background-active]",
1609
+ secondary: "s-text-link s-border s-bg hover:s-bg-hover hover:s-border-hover active:s-bg-active",
1610
+ utility: "s-text s-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active",
1611
+ destructive: "s-bg-negative s-text-inverted hover:s-bg-negative-hover active:s-bg-negative-active",
1612
+ pill: "s-icon hover:s-icon-hover active:s-icon-active bg-transparent hover:bg-[--w-color-button-pill-background-hover] active:bg-[--w-color-button-pill-background-active]",
1613
+ disabled: "s-text-inverted s-bg-disabled",
1614
+ quiet: "bg-transparent s-text-link hover:s-bg-hover active:s-bg-active",
1615
+ utilityQuiet: "s-text bg-transparent hover:s-bg-hover active:s-bg-active",
1616
+ negativeQuiet: "bg-transparent s-text-negative hover:s-bg-negative-subtle-hover active:s-bg-negative-subtle-active",
1617
+ loading: "s-text s-bg-subtle",
1618
+ link: "s-text-link"
1607
1619
  };
1608
1620
  var buttonTypes = {
1609
1621
  primary: `border-0 rounded-8 ${buttonDefaultStyling}`,
@@ -1707,10 +1719,10 @@ var button = {
1707
1719
  contentWidth: "max-w-max"
1708
1720
  };
1709
1721
  var modal = {
1710
- //TODO: this class can be removed when we have the solution for opacity and we can add rgba values to the background of the backdrop
1711
- transparentBg: `before:i-bg-$color-modal-backdrop-background before:content-[""] before:absolute before:top-0 before:bottom-0 before:left-0 before:right-0 before:opacity-25`,
1712
- backdrop: "fixed inset-0 flex sm:place-content-center sm:place-items-center items-end z-30 [--w-modal-max-height:80%] [--w-modal-width:640px]",
1713
- modal: "pb-safe-[32] i-shadow-$shadow-modal max-h-[--w-modal-max-height] min-h-[--w-modal-min-height] w-[--w-modal-width] h-[--w-modal-height] relative transition-300 ease-in-out backface-hidden will-change-height rounded-8 mx-0 sm:mx-16 i-bg-$color-modal-background flex flex-col overflow-hidden outline-none space-y-16 pt-8 sm:pt-32 sm:pb-32 rounded-b-0 sm:rounded-b-8",
1722
+ transparentBg: "",
1723
+ //TODO: Remove in v2 - previously used for opacity before changing to a rgba background in backdrop
1724
+ backdrop: "fixed inset-0 flex sm:place-content-center sm:place-items-center items-end z-30 [--w-modal-max-height:80%] [--w-modal-width:640px] bg-[--w-black/25]",
1725
+ modal: "pb-safe-[32] shadow-m max-h-[--w-modal-max-height] min-h-[--w-modal-min-height] w-[--w-modal-width] h-[--w-modal-height] relative transition-300 ease-in-out backface-hidden will-change-height rounded-8 mx-0 sm:mx-16 bg-[--w-s-color-surface-elevated-100] flex flex-col overflow-hidden outline-none space-y-16 pt-8 sm:pt-32 sm:pb-32 rounded-b-0 sm:rounded-b-8",
1714
1726
  content: "block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative",
1715
1727
  footer: "flex justify-end shrink-0 px-16 sm:px-32",
1716
1728
  transitionTitle: "transition-all duration-300",
@@ -1725,22 +1737,79 @@ var modal = {
1725
1737
  titleButtonIconRotated: "transform rotate-90"
1726
1738
  };
1727
1739
  var label = {
1728
- label: "antialiased block relative text-s font-bold pb-4 cursor-pointer i-text-$color-label-text",
1729
- labelInvalid: "i-text-$color-label-text-negative",
1730
- optional: "pl-8 font-normal text-s i-text-$color-label-optional-text"
1740
+ label: "antialiased block relative text-s font-bold pb-4 cursor-pointer s-text",
1741
+ optional: "pl-8 font-normal text-s s-text-subtle",
1742
+ labelInvalid: "s-text-negative"
1743
+ // TODO: Remove in v2 - kept for backwards compatibility
1731
1744
  };
1732
- var prefixSuffixWrapperBase = "absolute top-0 bottom-0 flex justify-center items-center focusable focus:[--w-outline-offset:-2px] bg-transparent ";
1745
+ var prefixSuffixWrapperBase = "absolute top-0 bottom-0 flex justify-center items-center focusable rounded-4 focus:[--w-outline-offset:-2px] bg-transparent ";
1733
1746
  var suffix = {
1734
1747
  wrapper: prefixSuffixWrapperBase + "right-0",
1735
1748
  wrapperWithLabel: "w-max pr-12",
1736
1749
  wrapperWithIcon: "w-40",
1737
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs i-text-$color-label-text"
1750
+ label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1738
1751
  };
1739
1752
  var prefix = {
1740
1753
  wrapper: prefixSuffixWrapperBase + "left-0",
1741
1754
  wrapperWithLabel: "w-max pl-12",
1742
1755
  wrapperWithIcon: "w-40",
1743
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs i-text-$color-label-text"
1756
+ label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1757
+ };
1758
+ var toggle = {
1759
+ // wrapper classes
1760
+ field: "relative text-m",
1761
+ // true
1762
+ wrapper: "relative py-1",
1763
+ // true
1764
+ wrapperRadioButtons: "inline-flex font-bold rounded-8 focus-within:focusable",
1765
+ // isRadioButton && !isEqualWidth
1766
+ wrapperRadioButtonsJustified: "flex font-bold rounded-8 focus-within:focusable",
1767
+ // isRadioButton && isEqualWidth,
1768
+ // group classes
1769
+ radioButtonsGroup: "group",
1770
+ // isRadioButton
1771
+ radioButtonsGroupJustified: "grow-1 shrink-0 basis-auto",
1772
+ // isRadioButton && isEqualWidth
1773
+ // input classes
1774
+ input: "peer",
1775
+ a11y: "sr-only",
1776
+ // label classes
1777
+ label: "peer-focus:focusable cursor-pointer text-m s-text s-border py-2 pl-28 select-none relative block before:border before:absolute before:transition-all before:left-0 before:w-20 before:h-20 before:top-2",
1778
+ // !isRadioButton
1779
+ labelBefore: 'before:content-[""] before:block',
1780
+ // !isRadioButton && !isIndeterminate
1781
+ checkbox: "before:s-bg before:rounded-2 hover:before:s-border-primary hover:before:s-bg-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-form-check-mark))] peer-checked:before:s-border-primary peer-checked:before:s-bg-primary peer-checked:peer-hover:before:s-border-primary-hover peer-checked:peer-hover:before:s-bg-primary-hover",
1782
+ // isCheckbox && !isIndeterminate && !isInvalid && !isDisabled
1783
+ checkboxInvalid: "before:s-bg before:s-border-negative before:rounded-2 hover:before:s-bg-negative-subtle-hover hover:before:s-border-negative-hover peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-form-check-mark))] peer-checked:before:s-bg-negative peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-bg-negative-hover peer-checked:peer-hover:before:s-border-negative-hover",
1784
+ // isCheckbox && !isIndeterminate && isInvalid && !isDisabled
1785
+ checkboxDisabled: "before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-2 peer-checked:before:bg-center peer-checked:before:bg-[url(var(--w-form-check-mark))] peer-checked:before:s-border-disabled peer-checked:before:s-bg-disabled",
1786
+ // isCheckbox && !isIndeterminate && !isInvalid && isDisabled
1787
+ indeterminate: 'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-primary peer-indeterminate:before:s-bg-primary peer-indeterminate:hover:before:s-border-primary-hover peer-indeterminate:hover:before:s-bg-primary-hover',
1788
+ // isCheckbox && isIndeterminate && !isInvalid && !isDisabled
1789
+ indeterminateInvalid: 'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold before:s-icon-inverted peer-indeterminate:before:s-border-negative peer-indeterminate:before:s-bg-negative peer-indeterminate:hover:before:s-border-negative-hover peer-indeterminate:hover:before:s-bg-negative-hover',
1790
+ // isCheckbox && isIndeterminate && isInvalid && !isDisabled
1791
+ indeterminateDisabled: 'before:content-["\u2013"] before:rounded-2 before:leading-xs before:text-center before:font-bold pointer-events-none before:s-icon-inverted peer-indeterminate:before:s-border-disabled peer-indeterminate:before:s-bg-disabled',
1792
+ // isCheckbox && isIndeterminate && !isInvalid && isDisabled
1793
+ radio: "before:s-bg before:rounded-full peer-checked:before:border-[6] peer-checked:before:s-border-selected peer-checked:peer-hover:before:s-border-selected-hover peer-hover:before:s-border-primary peer-hover:before:s-bg-hover",
1794
+ // isRadio && !isDisabled && !isInvalid
1795
+ radioInvalid: "before:s-bg before:s-border-negative before:rounded-full peer-checked:before:border-[6] peer-hover:before:s-bg-negative-subtle peer-hover:before:s-border-negative-hover peer-checked:before:s-border-negative peer-checked:peer-hover:before:s-border-negative-hover",
1796
+ // isRadio && isInvalid && !isDisabled
1797
+ radioDisabled: "before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-full peer-checked:before:border-[6]",
1798
+ // isRadio && !isInvalid && isDisabled
1799
+ radioButtonsLabel: "peer-hover:peer-not-checked:s-bg-hover peer-checked:s-text-inverted peer-checked:s-bg-primary peer-checked:s-border-primary block relative font-bold cursor-pointer s-text-link text-center s-bg border-2 s-border group-first-of-type:rounded-tl-8 group-first-of-type:rounded-bl-8 group-last-of-type:rounded-tr-8 group-last-of-type:rounded-br-8 group-not-last-of-type:border-r-0 peer-checked:z-10 group-not-first:-ml-2",
1800
+ // isRadioButtons
1801
+ radioButtonsRegular: "text-s py-8 pl-12 pr-14",
1802
+ // isRadioButtons && !isSmall
1803
+ radioButtonsSmall: "text-xs py-[5px] px-[8px]"
1804
+ // isRadioButtons && isSmall
1805
+ };
1806
+ var deadToggle = {
1807
+ wrapper: `${toggle.wrapper} h-20 w-20 pointer-events-none`,
1808
+ input: `${toggle.input} hidden`,
1809
+ inputVue: "hidden",
1810
+ labelRadio: `${toggle.label} ${toggle.labelBefore} ${toggle.radio}`,
1811
+ labelCheckbox: `${toggle.label} ${toggle.labelBefore} ${toggle.checkbox}`,
1812
+ labelVue: "-mt-2"
1744
1813
  };
1745
1814
  var clickable = {
1746
1815
  toggle: "absolute inset-0 h-full w-full appearance-none cursor-pointer focusable focusable-inset",
@@ -1750,19 +1819,27 @@ var clickable = {
1750
1819
  };
1751
1820
  var attention = {
1752
1821
  base: "border-2 relative flex items-start",
1753
- tooltip: "i-bg-$color-tooltip-background i-border-$color-tooltip-background i-shadow-$shadow-tooltip i-text-$color-tooltip-text rounded-4 py-6 px-8",
1754
- callout: "i-bg-$color-callout-background i-border-$color-callout-border i-text-$color-callout-text py-8 px-16 rounded-8",
1755
- highlight: "i-bg-$color-callout-background i-border-$color-callout-border i-text-$color-callout-text py-8 px-16 rounded-8 drop-shadow-m",
1756
- popover: "i-bg-$color-popover-background i-border-$color-popover-background i-text-$color-popover-paragraph-text rounded-8 p-16 drop-shadow-m",
1822
+ tooltip: "s-bg-inverted border-[--w-s-color-background-inverted] shadow-m s-text-inverted-static rounded-4 py-6 px-8",
1823
+ callout: "bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8",
1824
+ highlight: "bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8 drop-shadow-m translate-z-0",
1825
+ popover: "bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300] s-text rounded-8 p-16 drop-shadow-m translate-z-0",
1757
1826
  arrowBase: "absolute h-[14px] w-[14px] border-2 border-b-0 border-r-0 rounded-tl-4 transform",
1827
+ arrowDirectionLeftStart: "-left-[8px]",
1758
1828
  arrowDirectionLeft: "-left-[8px]",
1829
+ arrowDirectionLeftEnd: "-left-[8px]",
1830
+ arrowDirectionRightStart: "-right-[8px]",
1759
1831
  arrowDirectionRight: "-right-[8px]",
1832
+ arrowDirectionRightEnd: "-right-[8px]",
1833
+ arrowDirectionBottomStart: "-bottom-[8px]",
1760
1834
  arrowDirectionBottom: "-bottom-[8px]",
1835
+ arrowDirectionBottomEnd: "-bottom-[8px]",
1836
+ arrowDirectionTopStart: "-top-[8px]",
1761
1837
  arrowDirectionTop: "-top-[8px]",
1762
- arrowTooltip: "i-bg-$color-tooltip-background i-border-$color-tooltip-background",
1763
- arrowCallout: "i-bg-$color-callout-background i-border-$color-callout-border",
1764
- arrowPopover: "i-bg-$color-popover-background i-border-$color-popover-background",
1765
- arrowHighlight: "i-bg-$color-callout-background i-border-$color-callout-border",
1838
+ arrowDirectionTopEnd: "-top-[8px]",
1839
+ arrowTooltip: "s-bg-inverted border-[--w-s-color-background-inverted]",
1840
+ arrowCallout: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
1841
+ arrowPopover: "bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300]",
1842
+ arrowHighlight: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
1766
1843
  content: "last-child:mb-0",
1767
1844
  notCallout: "absolute z-50",
1768
1845
  closeBtn: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} justify-self-end -mr-8 ml-8`