@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
@@ -1033,18 +1033,18 @@ import WarpElement from "@warp-ds/elements-core";
1033
1033
  import { classMap } from "lit/directives/class-map.js";
1034
1034
  import { when } from "lit/directives/when.js";
1035
1035
 
1036
- // node_modules/.pnpm/@warp-ds+css@1.7.0/node_modules/@warp-ds/css/component-classes/index.js
1036
+ // node_modules/.pnpm/@warp-ds+css@1.9.1/node_modules/@warp-ds/css/component-classes/index.js
1037
1037
  var box = {
1038
1038
  box: "group block relative break-words last-child:mb-0 p-16 rounded-8",
1039
1039
  // Relative here enables w-clickable
1040
1040
  bleed: "-mx-16 sm:mx-0 rounded-l-0 rounded-r-0 sm:rounded-8",
1041
1041
  // We target L and R to override the default rounded-8
1042
- info: "i-bg-$color-box-info-background i-text-$color-box-info-text",
1043
- neutral: "i-bg-$color-box-neutral-background i-text-$color-box-neutral-text",
1044
- bordered: "border-2 i-border-$color-box-bordered-border i-bg-$color-box-bordered-background i-text-$color-box-bordered-text",
1045
- infoClickable: "hover:i-bg-$color-box-info-background-hover active:i-bg-$color-box-info-background-hover",
1046
- neutralClickable: "hover:i-bg-$color-box-neutral-background-hover active:i-bg-$color-box-neutral-background-hover",
1047
- 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"
1042
+ info: "s-bg-info-subtle",
1043
+ neutral: "bg-[--w-s-color-surface-sunken]",
1044
+ bordered: "border-2 s-border s-bg",
1045
+ infoClickable: "hover:s-bg-info-subtle-hover active:s-bg-info-subtle-hover",
1046
+ neutralClickable: "hover:s-bg-subtle-hover active:s-bg-subtle-hover",
1047
+ borderedClickable: "hover:s-bg-hover active:s-bg-hover hover:s-border-hover active:s-border-hover"
1048
1048
  };
1049
1049
  var toaster = {
1050
1050
  container: "fixed transform translate-z-0 bottom-16 left-0 right-0 mx-8 sm:mx-16 z-50 pointer-events-none",
@@ -1054,24 +1054,25 @@ var toaster = {
1054
1054
  var toast = {
1055
1055
  wrapper: "relative overflow-hidden w-full",
1056
1056
  toast: "flex group p-8 mt-16 rounded-8 border-2 w-full pointer-events-auto transition-all",
1057
- positive: "i-bg-$color-toast-positive-background i-border-$color-toast-positive-subtle-border i-text-$color-toast-positive-text",
1058
- warning: "i-bg-$color-toast-warning-background i-border-$color-toast-warning-subtle-border i-text-$color-toast-warning-text",
1059
- negative: "i-bg-$color-toast-negative-background i-border-$color-toast-negative-subtle-border i-text-$color-toast-negative-text",
1057
+ positive: "s-bg-positive-subtle s-border-positive-subtle s-text",
1058
+ warning: "s-bg-warning-subtle s-border-warning-subtle s-text",
1059
+ negative: "s-bg-negative-subtle s-border-negative-subtle s-text",
1060
1060
  icon: "shrink-0 rounded-full w-[16px] h-[16px] m-[8px]",
1061
- iconPositive: "i-text-$color-toast-positive-icon",
1062
- iconWarning: "i-text-$color-toast-warning-icon",
1063
- iconNegative: "i-text-$color-toast-negative-icon",
1061
+ iconPositive: "s-icon-positive",
1062
+ iconWarning: "s-icon-warning",
1063
+ iconNegative: "s-icon-negative",
1064
1064
  iconLoading: "animate-bounce",
1065
1065
  content: "self-center mr-8 py-4 last-child:mb-0",
1066
- close: "bg-transparent ml-auto p-[8px] i-text-$color-toast-close-icon hover:i-text-$color-toast-close-icon-hover active:i-text-$color-toast-close-icon-active"
1066
+ close: "bg-transparent ml-auto p-[8px] s-icon hover:s-icon-hover active:s-icon-active"
1067
1067
  };
1068
1068
  var buttonReset = "focus:outline-none appearance-none cursor-pointer bg-transparent border-0 m-0 p-0 inline-block";
1069
1069
  var expandable = {
1070
1070
  expandable: "will-change-height",
1071
- expandableTitle: "font-bold i-text-$color-expandable-title-text",
1072
- expandableBox: "i-bg-$color-expandable-background hover:i-bg-$color-expandable-background-hover py-0 px-0 " + box.box,
1071
+ expandableTitle: "font-bold s-text",
1072
+ expandableBox: "s-bg-subtle hover:s-bg-subtle-hover py-0 px-0 " + box.box,
1073
+ expandableInfo: "s-bg-info-subtle! hover:s-bg-info-subtle-hover!",
1073
1074
  expandableBleed: box.bleed,
1074
- chevron: "inline-block align-middle i-text-$color-expandable-icon",
1075
+ chevron: "inline-block align-middle s-icon",
1075
1076
  chevronNonBox: "ml-8",
1076
1077
  chevronBox: "",
1077
1078
  chevronTransform: "transform transition-transform transform-gpu ease-in-out",
@@ -1091,17 +1092,17 @@ var expandable = {
1091
1092
  };
1092
1093
  var buttonDefaultStyling = "font-bold focusable justify-center transition-colors ease-in-out";
1093
1094
  var buttonColors = {
1094
- 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",
1095
- 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",
1096
- 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",
1097
- 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",
1098
- 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",
1099
- disabled: "i-text-$color-button-disabled-text i-bg-$color-button-disabled-background",
1100
- 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",
1101
- utilityQuiet: "i-text-$color-button-utility-quiet-text i-bg-$color-button-utility-quiet-background hover:i-bg-$color-button-utility-quiet-background-hover",
1102
- 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",
1103
- loading: "i-text-$color-button-loading-text i-bg-$color-button-loading-background",
1104
- link: "i-text-$color-button-link-text"
1095
+ 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]",
1096
+ secondary: "s-text-link s-border s-bg hover:s-bg-hover hover:s-border-hover active:s-bg-active",
1097
+ utility: "s-text s-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active",
1098
+ destructive: "s-bg-negative s-text-inverted hover:s-bg-negative-hover active:s-bg-negative-active",
1099
+ 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]",
1100
+ disabled: "s-text-inverted s-bg-disabled",
1101
+ quiet: "bg-transparent s-text-link hover:s-bg-hover active:s-bg-active",
1102
+ utilityQuiet: "s-text bg-transparent hover:s-bg-hover active:s-bg-active",
1103
+ negativeQuiet: "bg-transparent s-text-negative hover:s-bg-negative-subtle-hover active:s-bg-negative-subtle-active",
1104
+ loading: "s-text s-bg-subtle",
1105
+ link: "s-text-link"
1105
1106
  };
1106
1107
  var buttonTypes = {
1107
1108
  primary: `border-0 rounded-8 ${buttonDefaultStyling}`,
@@ -1205,10 +1206,10 @@ var button = {
1205
1206
  contentWidth: "max-w-max"
1206
1207
  };
1207
1208
  var modal = {
1208
- //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
1209
- 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`,
1210
- 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]",
1211
- 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",
1209
+ transparentBg: "",
1210
+ //TODO: Remove in v2 - previously used for opacity before changing to a rgba background in backdrop
1211
+ 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]",
1212
+ 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",
1212
1213
  content: "block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative",
1213
1214
  footer: "flex justify-end shrink-0 px-16 sm:px-32",
1214
1215
  transitionTitle: "transition-all duration-300",
@@ -1223,22 +1224,79 @@ var modal = {
1223
1224
  titleButtonIconRotated: "transform rotate-90"
1224
1225
  };
1225
1226
  var label = {
1226
- label: "antialiased block relative text-s font-bold pb-4 cursor-pointer i-text-$color-label-text",
1227
- labelInvalid: "i-text-$color-label-text-negative",
1228
- optional: "pl-8 font-normal text-s i-text-$color-label-optional-text"
1227
+ label: "antialiased block relative text-s font-bold pb-4 cursor-pointer s-text",
1228
+ optional: "pl-8 font-normal text-s s-text-subtle",
1229
+ labelInvalid: "s-text-negative"
1230
+ // TODO: Remove in v2 - kept for backwards compatibility
1229
1231
  };
1230
- var prefixSuffixWrapperBase = "absolute top-0 bottom-0 flex justify-center items-center focusable focus:[--w-outline-offset:-2px] bg-transparent ";
1232
+ var prefixSuffixWrapperBase = "absolute top-0 bottom-0 flex justify-center items-center focusable rounded-4 focus:[--w-outline-offset:-2px] bg-transparent ";
1231
1233
  var suffix = {
1232
1234
  wrapper: prefixSuffixWrapperBase + "right-0",
1233
1235
  wrapperWithLabel: "w-max pr-12",
1234
1236
  wrapperWithIcon: "w-40",
1235
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs i-text-$color-label-text"
1237
+ label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1236
1238
  };
1237
1239
  var prefix = {
1238
1240
  wrapper: prefixSuffixWrapperBase + "left-0",
1239
1241
  wrapperWithLabel: "w-max pl-12",
1240
1242
  wrapperWithIcon: "w-40",
1241
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs i-text-$color-label-text"
1243
+ label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1244
+ };
1245
+ var toggle = {
1246
+ // wrapper classes
1247
+ field: "relative text-m",
1248
+ // true
1249
+ wrapper: "relative py-1",
1250
+ // true
1251
+ wrapperRadioButtons: "inline-flex font-bold rounded-8 focus-within:focusable",
1252
+ // isRadioButton && !isEqualWidth
1253
+ wrapperRadioButtonsJustified: "flex font-bold rounded-8 focus-within:focusable",
1254
+ // isRadioButton && isEqualWidth,
1255
+ // group classes
1256
+ radioButtonsGroup: "group",
1257
+ // isRadioButton
1258
+ radioButtonsGroupJustified: "grow-1 shrink-0 basis-auto",
1259
+ // isRadioButton && isEqualWidth
1260
+ // input classes
1261
+ input: "peer",
1262
+ a11y: "sr-only",
1263
+ // label classes
1264
+ 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",
1265
+ // !isRadioButton
1266
+ labelBefore: 'before:content-[""] before:block',
1267
+ // !isRadioButton && !isIndeterminate
1268
+ 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",
1269
+ // isCheckbox && !isIndeterminate && !isInvalid && !isDisabled
1270
+ 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",
1271
+ // isCheckbox && !isIndeterminate && isInvalid && !isDisabled
1272
+ 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",
1273
+ // isCheckbox && !isIndeterminate && !isInvalid && isDisabled
1274
+ 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',
1275
+ // isCheckbox && isIndeterminate && !isInvalid && !isDisabled
1276
+ 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',
1277
+ // isCheckbox && isIndeterminate && isInvalid && !isDisabled
1278
+ 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',
1279
+ // isCheckbox && isIndeterminate && !isInvalid && isDisabled
1280
+ 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",
1281
+ // isRadio && !isDisabled && !isInvalid
1282
+ 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",
1283
+ // isRadio && isInvalid && !isDisabled
1284
+ radioDisabled: "before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-full peer-checked:before:border-[6]",
1285
+ // isRadio && !isInvalid && isDisabled
1286
+ 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",
1287
+ // isRadioButtons
1288
+ radioButtonsRegular: "text-s py-8 pl-12 pr-14",
1289
+ // isRadioButtons && !isSmall
1290
+ radioButtonsSmall: "text-xs py-[5px] px-[8px]"
1291
+ // isRadioButtons && isSmall
1292
+ };
1293
+ var deadToggle = {
1294
+ wrapper: `${toggle.wrapper} h-20 w-20 pointer-events-none`,
1295
+ input: `${toggle.input} hidden`,
1296
+ inputVue: "hidden",
1297
+ labelRadio: `${toggle.label} ${toggle.labelBefore} ${toggle.radio}`,
1298
+ labelCheckbox: `${toggle.label} ${toggle.labelBefore} ${toggle.checkbox}`,
1299
+ labelVue: "-mt-2"
1242
1300
  };
1243
1301
  var clickable = {
1244
1302
  toggle: "absolute inset-0 h-full w-full appearance-none cursor-pointer focusable focusable-inset",
@@ -1248,19 +1306,27 @@ var clickable = {
1248
1306
  };
1249
1307
  var attention = {
1250
1308
  base: "border-2 relative flex items-start",
1251
- 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",
1252
- callout: "i-bg-$color-callout-background i-border-$color-callout-border i-text-$color-callout-text py-8 px-16 rounded-8",
1253
- 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",
1254
- popover: "i-bg-$color-popover-background i-border-$color-popover-background i-text-$color-popover-paragraph-text rounded-8 p-16 drop-shadow-m",
1309
+ tooltip: "s-bg-inverted border-[--w-s-color-background-inverted] shadow-m s-text-inverted-static rounded-4 py-6 px-8",
1310
+ callout: "bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8",
1311
+ 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",
1312
+ 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",
1255
1313
  arrowBase: "absolute h-[14px] w-[14px] border-2 border-b-0 border-r-0 rounded-tl-4 transform",
1314
+ arrowDirectionLeftStart: "-left-[8px]",
1256
1315
  arrowDirectionLeft: "-left-[8px]",
1316
+ arrowDirectionLeftEnd: "-left-[8px]",
1317
+ arrowDirectionRightStart: "-right-[8px]",
1257
1318
  arrowDirectionRight: "-right-[8px]",
1319
+ arrowDirectionRightEnd: "-right-[8px]",
1320
+ arrowDirectionBottomStart: "-bottom-[8px]",
1258
1321
  arrowDirectionBottom: "-bottom-[8px]",
1322
+ arrowDirectionBottomEnd: "-bottom-[8px]",
1323
+ arrowDirectionTopStart: "-top-[8px]",
1259
1324
  arrowDirectionTop: "-top-[8px]",
1260
- arrowTooltip: "i-bg-$color-tooltip-background i-border-$color-tooltip-background",
1261
- arrowCallout: "i-bg-$color-callout-background i-border-$color-callout-border",
1262
- arrowPopover: "i-bg-$color-popover-background i-border-$color-popover-background",
1263
- arrowHighlight: "i-bg-$color-callout-background i-border-$color-callout-border",
1325
+ arrowDirectionTopEnd: "-top-[8px]",
1326
+ arrowTooltip: "s-bg-inverted border-[--w-s-color-background-inverted]",
1327
+ arrowCallout: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
1328
+ arrowPopover: "bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300]",
1329
+ arrowHighlight: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
1264
1330
  content: "last-child:mb-0",
1265
1331
  notCallout: "absolute z-50",
1266
1332
  closeBtn: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} justify-self-end -mr-8 ml-8`
@@ -1343,10 +1409,10 @@ var collapse = (el, done) => {
1343
1409
  import { LitElement } from "lit";
1344
1410
  import { unsafeStatic, html } from "lit/static-html.js";
1345
1411
 
1346
- // node_modules/.pnpm/@lingui+core@4.7.0/node_modules/@lingui/core/dist/index.mjs
1412
+ // node_modules/.pnpm/@lingui+core@4.7.1/node_modules/@lingui/core/dist/index.mjs
1347
1413
  var import_unraw = __toESM(require_dist(), 1);
1348
1414
 
1349
- // node_modules/.pnpm/@lingui+message-utils@4.7.0/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1415
+ // node_modules/.pnpm/@lingui+message-utils@4.7.1/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1350
1416
  var import_parser = __toESM(require_parser(), 1);
1351
1417
  function processTokens(tokens, mapText) {
1352
1418
  if (!tokens.filter((token) => token.type !== "content").length) {
@@ -1396,7 +1462,7 @@ Message: ${message}`);
1396
1462
  }
1397
1463
  }
1398
1464
 
1399
- // node_modules/.pnpm/@lingui+core@4.7.0/node_modules/@lingui/core/dist/index.mjs
1465
+ // node_modules/.pnpm/@lingui+core@4.7.1/node_modules/@lingui/core/dist/index.mjs
1400
1466
  var isString = (s) => typeof s === "string";
1401
1467
  var isFunction = (f) => typeof f === "function";
1402
1468
  var cache = /* @__PURE__ */ new Map();
@@ -1448,6 +1514,7 @@ function cacheKey(type, locales, options) {
1448
1514
  return `${type}-${localeKey}-${JSON.stringify(options)}`;
1449
1515
  }
1450
1516
  var UNICODE_REGEX = /\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/g;
1517
+ var OCTOTHORPE_PH = "%__lingui_octothorpe__%";
1451
1518
  var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1452
1519
  const locales = passedLocales || locale;
1453
1520
  const style = (format) => {
@@ -1456,7 +1523,7 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1456
1523
  const replaceOctothorpe = (value, message) => {
1457
1524
  const numberFormat = Object.keys(formats).length ? style("number") : void 0;
1458
1525
  const valueStr = number(locales, value, numberFormat);
1459
- return message.replace("#", valueStr);
1526
+ return message.replace(new RegExp(OCTOTHORPE_PH, "g"), valueStr);
1460
1527
  };
1461
1528
  return {
1462
1529
  plural: (value, cases) => {
@@ -1471,43 +1538,53 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1471
1538
  },
1472
1539
  select: selectFormatter,
1473
1540
  number: (value, format) => number(locales, value, style(format)),
1474
- date: (value, format) => date(locales, value, style(format)),
1475
- undefined: undefinedFormatter
1541
+ date: (value, format) => date(locales, value, style(format))
1476
1542
  };
1477
1543
  };
1478
1544
  var selectFormatter = (value, rules) => {
1479
1545
  var _a;
1480
1546
  return (_a = rules[value]) != null ? _a : rules.other;
1481
1547
  };
1482
- var undefinedFormatter = (value) => value;
1483
1548
  function interpolate(translation, locale, locales) {
1484
1549
  return (values = {}, formats) => {
1485
1550
  const formatters = getDefaultFormats(locale, locales, formats);
1486
- const formatMessage = (message) => {
1487
- if (!Array.isArray(message))
1488
- return message;
1489
- return message.reduce((message2, token) => {
1490
- if (isString(token))
1491
- return message2 + token;
1551
+ const formatMessage = (tokens) => {
1552
+ if (!Array.isArray(tokens))
1553
+ return tokens;
1554
+ return tokens.reduce((message, token) => {
1555
+ if (token === "#") {
1556
+ return message + OCTOTHORPE_PH;
1557
+ }
1558
+ if (isString(token)) {
1559
+ return message + token;
1560
+ }
1492
1561
  const [name, type, format] = token;
1493
1562
  let interpolatedFormat = {};
1494
- if (format != null && typeof format === "object") {
1495
- Object.entries(format).forEach(([key, value2]) => {
1496
- interpolatedFormat[key] = formatMessage(value2);
1497
- });
1563
+ if (type === "plural" || type === "selectordinal" || type === "select") {
1564
+ Object.entries(format).forEach(
1565
+ ([key, value2]) => {
1566
+ interpolatedFormat[key] = formatMessage(value2);
1567
+ }
1568
+ );
1498
1569
  } else {
1499
1570
  interpolatedFormat = format;
1500
1571
  }
1501
- const formatter = formatters[type];
1502
- const value = formatter(values[name], interpolatedFormat);
1503
- if (value == null)
1504
- return message2;
1505
- return message2 + value;
1572
+ let value;
1573
+ if (type) {
1574
+ const formatter = formatters[type];
1575
+ value = formatter(values[name], interpolatedFormat);
1576
+ } else {
1577
+ value = values[name];
1578
+ }
1579
+ if (value == null) {
1580
+ return message;
1581
+ }
1582
+ return message + value;
1506
1583
  }, "");
1507
1584
  };
1508
1585
  const result = formatMessage(translation);
1509
1586
  if (isString(result) && UNICODE_REGEX.test(result)) {
1510
- return (0, import_unraw.default)(result.trim());
1587
+ return (0, import_unraw.unraw)(result.trim());
1511
1588
  }
1512
1589
  if (isString(result))
1513
1590
  return result.trim();