@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
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../packages/broadcast/component.js", "../../../packages/utils/window-exists.js", "../../../packages/broadcast/index.js"],
4
4
  "sourcesContent": ["import { html } from 'lit';\nimport WarpElement from '@warp-ds/elements-core';\nimport { repeat } from 'lit/directives/repeat.js';\nimport { windowExists } from '../utils/window-exists';\n\nexport class WarpBroadcast extends WarpElement {\n static properties = {\n _messages: {\n state: true,\n hasChanged(newVal, oldVal) {\n if (!oldVal || oldVal.length === 0) return true;\n const newIds = newVal.map(({ id }) => id).sort();\n const oldIds = oldVal.map(({ id }) => id).sort();\n return JSON.stringify(newIds) !== JSON.stringify(oldIds);\n },\n },\n _hiddenMessageIds: {\n state: true,\n type: Array,\n },\n interval: { type: Number, attribute: true, reflect: true },\n url: { type: String, attribute: true, reflect: true },\n api: { type: String, attribute: true, reflect: true },\n };\n\n static styles = [WarpElement.styles];\n\n constructor() {\n super();\n this._messages = [];\n this.interval = 30000;\n this._hiddenMessageIds = [];\n this.url = windowExists ? window.location.href : '';\n }\n\n async connectedCallback() {\n super.connectedCallback();\n if (!this.api) {\n console.error('Broadcast \"api\" attribute invalid or undefined');\n return;\n }\n if (windowExists) {\n await this._fetchMessage();\n setInterval(() => this._fetchMessage(), this.interval);\n }\n }\n\n async _fetchMessage() {\n const url = `${this.api}?path=${this.url}`;\n try {\n const res = await (await fetch(url)).json();\n this._messages = res.length ? res : [];\n } catch (err) {\n console.error(`failed to fetch broadcasts from given url (${url})`, err);\n }\n }\n\n async _del(id) {\n const el = this.renderRoot.querySelector(`#broadcast-${id}`);\n await el.collapse();\n this._hiddenMessageIds = [...new Set([...this._hiddenMessageIds, id])];\n }\n\n render() {\n const messages = this._messages.filter((item) => !this._hiddenMessageIds.includes(item.id));\n\n return html`\n <aside class=${`${messages.length === 0 ? 'hidden' : 'mb-16'}`}>\n ${repeat(\n messages,\n ({ id }) => `broadcast-${id}`,\n ({ id, message }) =>\n html`<w-toast\n id=\"broadcast-${id}\"\n type=\"warning\"\n text=\"${message}\"\n canclose\n @close=${() => this._del(id)}\n >\n </w-toast>`,\n )}\n </aside>\n `;\n }\n}\n", "export const windowExists = typeof window !== 'undefined';\n", "import { WarpBroadcast } from './component';\n\nif (!customElements.get('w-broadcast')) {\n customElements.define('w-broadcast', WarpBroadcast);\n}\n\nexport { WarpBroadcast };\n"],
5
- "mappings": ";;;;;;;;AAAA,SAAS,YAAY;AACrB,OAAO,iBAAiB;AACxB,SAAS,cAAc;;;ACFhB,IAAM,eAAe,OAAO,WAAW;;;ADKvC,IAAM,gBAAN,cAA4B,YAAY;AAAA,EAsB7C,cAAc;AACZ,UAAM;AACN,SAAK,YAAY,CAAC;AAClB,SAAK,WAAW;AAChB,SAAK,oBAAoB,CAAC;AAC1B,SAAK,MAAM,eAAe,OAAO,SAAS,OAAO;AAAA,EACnD;AAAA,EAEA,MAAM,oBAAoB;AACxB,UAAM,kBAAkB;AACxB,QAAI,CAAC,KAAK,KAAK;AACb,cAAQ,MAAM,gDAAgD;AAC9D;AAAA,IACF;AACA,QAAI,cAAc;AAChB,YAAM,KAAK,cAAc;AACzB,kBAAY,MAAM,KAAK,cAAc,GAAG,KAAK,QAAQ;AAAA,IACvD;AAAA,EACF;AAAA,EAEA,MAAM,gBAAgB;AACpB,UAAM,MAAM,GAAG,KAAK,YAAY,KAAK;AACrC,QAAI;AACF,YAAM,MAAM,OAAO,MAAM,MAAM,GAAG,GAAG,KAAK;AAC1C,WAAK,YAAY,IAAI,SAAS,MAAM,CAAC;AAAA,IACvC,SAAS,KAAP;AACA,cAAQ,MAAM,8CAA8C,QAAQ,GAAG;AAAA,IACzE;AAAA,EACF;AAAA,EAEA,MAAM,KAAK,IAAI;AACb,UAAM,KAAK,KAAK,WAAW,cAAc,cAAc,IAAI;AAC3D,UAAM,GAAG,SAAS;AAClB,SAAK,oBAAoB,CAAC,GAAG,oBAAI,IAAI,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC,CAAC;AAAA,EACvE;AAAA,EAEA,SAAS;AACP,UAAM,WAAW,KAAK,UAAU,OAAO,CAAC,SAAS,CAAC,KAAK,kBAAkB,SAAS,KAAK,EAAE,CAAC;AAE1F,WAAO;AAAA,qBACU,GAAG,SAAS,WAAW,IAAI,WAAW;AAAA,UACjD;AAAA,MACA;AAAA,MACA,CAAC,EAAE,GAAG,MAAM,aAAa;AAAA,MACzB,CAAC,EAAE,IAAI,QAAQ,MACb;AAAA,8BACkB;AAAA;AAAA,sBAER;AAAA;AAAA,uBAEC,MAAM,KAAK,KAAK,EAAE;AAAA;AAAA;AAAA,IAGjC;AAAA;AAAA;AAAA,EAGN;AACF;AA9EE,cADW,eACJ,cAAa;AAAA,EAClB,WAAW;AAAA,IACT,OAAO;AAAA,IACP,WAAW,QAAQ,QAAQ;AACzB,UAAI,CAAC,UAAU,OAAO,WAAW;AAAG,eAAO;AAC3C,YAAM,SAAS,OAAO,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,KAAK;AAC/C,YAAM,SAAS,OAAO,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,KAAK;AAC/C,aAAO,KAAK,UAAU,MAAM,MAAM,KAAK,UAAU,MAAM;AAAA,IACzD;AAAA,EACF;AAAA,EACA,mBAAmB;AAAA,IACjB,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AAAA,EACA,UAAU,EAAE,MAAM,QAAQ,WAAW,MAAM,SAAS,KAAK;AAAA,EACzD,KAAK,EAAE,MAAM,QAAQ,WAAW,MAAM,SAAS,KAAK;AAAA,EACpD,KAAK,EAAE,MAAM,QAAQ,WAAW,MAAM,SAAS,KAAK;AACtD;AAEA,cApBW,eAoBJ,UAAS,CAAC,YAAY,MAAM;;;AEvBrC,IAAI,CAAC,eAAe,IAAI,aAAa,GAAG;AACtC,iBAAe,OAAO,eAAe,aAAa;AACpD;",
5
+ "mappings": ";;;;;;;;AAAA,SAAS,YAAY;AACrB,OAAO,iBAAiB;AACxB,SAAS,cAAc;;;ACFhB,IAAM,eAAe,OAAO,WAAW;;;ADKvC,IAAM,gBAAN,cAA4B,YAAY;AAAA,EAsB7C,cAAc;AACZ,UAAM;AACN,SAAK,YAAY,CAAC;AAClB,SAAK,WAAW;AAChB,SAAK,oBAAoB,CAAC;AAC1B,SAAK,MAAM,eAAe,OAAO,SAAS,OAAO;AAAA,EACnD;AAAA,EAEA,MAAM,oBAAoB;AACxB,UAAM,kBAAkB;AACxB,QAAI,CAAC,KAAK,KAAK;AACb,cAAQ,MAAM,gDAAgD;AAC9D;AAAA,IACF;AACA,QAAI,cAAc;AAChB,YAAM,KAAK,cAAc;AACzB,kBAAY,MAAM,KAAK,cAAc,GAAG,KAAK,QAAQ;AAAA,IACvD;AAAA,EACF;AAAA,EAEA,MAAM,gBAAgB;AACpB,UAAM,MAAM,GAAG,KAAK,GAAG,SAAS,KAAK,GAAG;AACxC,QAAI;AACF,YAAM,MAAM,OAAO,MAAM,MAAM,GAAG,GAAG,KAAK;AAC1C,WAAK,YAAY,IAAI,SAAS,MAAM,CAAC;AAAA,IACvC,SAAS,KAAK;AACZ,cAAQ,MAAM,8CAA8C,GAAG,KAAK,GAAG;AAAA,IACzE;AAAA,EACF;AAAA,EAEA,MAAM,KAAK,IAAI;AACb,UAAM,KAAK,KAAK,WAAW,cAAc,cAAc,EAAE,EAAE;AAC3D,UAAM,GAAG,SAAS;AAClB,SAAK,oBAAoB,CAAC,GAAG,oBAAI,IAAI,CAAC,GAAG,KAAK,mBAAmB,EAAE,CAAC,CAAC;AAAA,EACvE;AAAA,EAEA,SAAS;AACP,UAAM,WAAW,KAAK,UAAU,OAAO,CAAC,SAAS,CAAC,KAAK,kBAAkB,SAAS,KAAK,EAAE,CAAC;AAE1F,WAAO;AAAA,qBACU,GAAG,SAAS,WAAW,IAAI,WAAW,OAAO,EAAE;AAAA,UAC1D;AAAA,MACA;AAAA,MACA,CAAC,EAAE,GAAG,MAAM,aAAa,EAAE;AAAA,MAC3B,CAAC,EAAE,IAAI,QAAQ,MACb;AAAA,8BACkB,EAAE;AAAA;AAAA,sBAEV,OAAO;AAAA;AAAA,uBAEN,MAAM,KAAK,KAAK,EAAE,CAAC;AAAA;AAAA;AAAA,IAGlC,CAAC;AAAA;AAAA;AAAA,EAGP;AACF;AA9EE,cADW,eACJ,cAAa;AAAA,EAClB,WAAW;AAAA,IACT,OAAO;AAAA,IACP,WAAW,QAAQ,QAAQ;AACzB,UAAI,CAAC,UAAU,OAAO,WAAW;AAAG,eAAO;AAC3C,YAAM,SAAS,OAAO,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,KAAK;AAC/C,YAAM,SAAS,OAAO,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,KAAK;AAC/C,aAAO,KAAK,UAAU,MAAM,MAAM,KAAK,UAAU,MAAM;AAAA,IACzD;AAAA,EACF;AAAA,EACA,mBAAmB;AAAA,IACjB,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AAAA,EACA,UAAU,EAAE,MAAM,QAAQ,WAAW,MAAM,SAAS,KAAK;AAAA,EACzD,KAAK,EAAE,MAAM,QAAQ,WAAW,MAAM,SAAS,KAAK;AAAA,EACpD,KAAK,EAAE,MAAM,QAAQ,WAAW,MAAM,SAAS,KAAK;AACtD;AAEA,cApBW,eAoBJ,UAAS,CAAC,YAAY,MAAM;;;AEvBrC,IAAI,CAAC,eAAe,IAAI,aAAa,GAAG;AACtC,iBAAe,OAAO,eAAe,aAAa;AACpD;",
6
6
  "names": []
7
7
  }
@@ -1031,26 +1031,27 @@ var require_parser = __commonJS({
1031
1031
  import { html } from "lit";
1032
1032
  import WarpElement from "@warp-ds/elements-core";
1033
1033
 
1034
- // node_modules/.pnpm/@warp-ds+css@1.7.0/node_modules/@warp-ds/css/component-classes/index.js
1034
+ // node_modules/.pnpm/@warp-ds+css@1.9.1/node_modules/@warp-ds/css/component-classes/index.js
1035
1035
  var box = {
1036
1036
  box: "group block relative break-words last-child:mb-0 p-16 rounded-8",
1037
1037
  // Relative here enables w-clickable
1038
1038
  bleed: "-mx-16 sm:mx-0 rounded-l-0 rounded-r-0 sm:rounded-8",
1039
1039
  // We target L and R to override the default rounded-8
1040
- info: "i-bg-$color-box-info-background i-text-$color-box-info-text",
1041
- neutral: "i-bg-$color-box-neutral-background i-text-$color-box-neutral-text",
1042
- bordered: "border-2 i-border-$color-box-bordered-border i-bg-$color-box-bordered-background i-text-$color-box-bordered-text",
1043
- infoClickable: "hover:i-bg-$color-box-info-background-hover active:i-bg-$color-box-info-background-hover",
1044
- neutralClickable: "hover:i-bg-$color-box-neutral-background-hover active:i-bg-$color-box-neutral-background-hover",
1045
- 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"
1040
+ info: "s-bg-info-subtle",
1041
+ neutral: "bg-[--w-s-color-surface-sunken]",
1042
+ bordered: "border-2 s-border s-bg",
1043
+ infoClickable: "hover:s-bg-info-subtle-hover active:s-bg-info-subtle-hover",
1044
+ neutralClickable: "hover:s-bg-subtle-hover active:s-bg-subtle-hover",
1045
+ borderedClickable: "hover:s-bg-hover active:s-bg-hover hover:s-border-hover active:s-border-hover"
1046
1046
  };
1047
1047
  var buttonReset = "focus:outline-none appearance-none cursor-pointer bg-transparent border-0 m-0 p-0 inline-block";
1048
1048
  var expandable = {
1049
1049
  expandable: "will-change-height",
1050
- expandableTitle: "font-bold i-text-$color-expandable-title-text",
1051
- expandableBox: "i-bg-$color-expandable-background hover:i-bg-$color-expandable-background-hover py-0 px-0 " + box.box,
1050
+ expandableTitle: "font-bold s-text",
1051
+ expandableBox: "s-bg-subtle hover:s-bg-subtle-hover py-0 px-0 " + box.box,
1052
+ expandableInfo: "s-bg-info-subtle! hover:s-bg-info-subtle-hover!",
1052
1053
  expandableBleed: box.bleed,
1053
- chevron: "inline-block align-middle i-text-$color-expandable-icon",
1054
+ chevron: "inline-block align-middle s-icon",
1054
1055
  chevronNonBox: "ml-8",
1055
1056
  chevronBox: "",
1056
1057
  chevronTransform: "transform transition-transform transform-gpu ease-in-out",
@@ -1070,17 +1071,17 @@ var expandable = {
1070
1071
  };
1071
1072
  var buttonDefaultStyling = "font-bold focusable justify-center transition-colors ease-in-out";
1072
1073
  var buttonColors = {
1073
- 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",
1074
- 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",
1075
- 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",
1076
- 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",
1077
- 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",
1078
- disabled: "i-text-$color-button-disabled-text i-bg-$color-button-disabled-background",
1079
- 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",
1080
- utilityQuiet: "i-text-$color-button-utility-quiet-text i-bg-$color-button-utility-quiet-background hover:i-bg-$color-button-utility-quiet-background-hover",
1081
- 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",
1082
- loading: "i-text-$color-button-loading-text i-bg-$color-button-loading-background",
1083
- link: "i-text-$color-button-link-text"
1074
+ 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]",
1075
+ secondary: "s-text-link s-border s-bg hover:s-bg-hover hover:s-border-hover active:s-bg-active",
1076
+ utility: "s-text s-bg hover:s-bg-hover active:s-bg-active s-border hover:s-border-hover active:s-border-active",
1077
+ destructive: "s-bg-negative s-text-inverted hover:s-bg-negative-hover active:s-bg-negative-active",
1078
+ 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]",
1079
+ disabled: "s-text-inverted s-bg-disabled",
1080
+ quiet: "bg-transparent s-text-link hover:s-bg-hover active:s-bg-active",
1081
+ utilityQuiet: "s-text bg-transparent hover:s-bg-hover active:s-bg-active",
1082
+ negativeQuiet: "bg-transparent s-text-negative hover:s-bg-negative-subtle-hover active:s-bg-negative-subtle-active",
1083
+ loading: "s-text s-bg-subtle",
1084
+ link: "s-text-link"
1084
1085
  };
1085
1086
  var buttonTypes = {
1086
1087
  primary: `border-0 rounded-8 ${buttonDefaultStyling}`,
@@ -1184,10 +1185,10 @@ var button = {
1184
1185
  contentWidth: "max-w-max"
1185
1186
  };
1186
1187
  var modal = {
1187
- //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
1188
- 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`,
1189
- 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]",
1190
- 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",
1188
+ transparentBg: "",
1189
+ //TODO: Remove in v2 - previously used for opacity before changing to a rgba background in backdrop
1190
+ 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]",
1191
+ 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",
1191
1192
  content: "block overflow-y-auto overflow-x-hidden last-child:mb-0 grow shrink px-16 sm:px-32 relative",
1192
1193
  footer: "flex justify-end shrink-0 px-16 sm:px-32",
1193
1194
  transitionTitle: "transition-all duration-300",
@@ -1202,22 +1203,79 @@ var modal = {
1202
1203
  titleButtonIconRotated: "transform rotate-90"
1203
1204
  };
1204
1205
  var label = {
1205
- label: "antialiased block relative text-s font-bold pb-4 cursor-pointer i-text-$color-label-text",
1206
- labelInvalid: "i-text-$color-label-text-negative",
1207
- optional: "pl-8 font-normal text-s i-text-$color-label-optional-text"
1206
+ label: "antialiased block relative text-s font-bold pb-4 cursor-pointer s-text",
1207
+ optional: "pl-8 font-normal text-s s-text-subtle",
1208
+ labelInvalid: "s-text-negative"
1209
+ // TODO: Remove in v2 - kept for backwards compatibility
1208
1210
  };
1209
- var prefixSuffixWrapperBase = "absolute top-0 bottom-0 flex justify-center items-center focusable focus:[--w-outline-offset:-2px] bg-transparent ";
1211
+ var prefixSuffixWrapperBase = "absolute top-0 bottom-0 flex justify-center items-center focusable rounded-4 focus:[--w-outline-offset:-2px] bg-transparent ";
1210
1212
  var suffix = {
1211
1213
  wrapper: prefixSuffixWrapperBase + "right-0",
1212
1214
  wrapperWithLabel: "w-max pr-12",
1213
1215
  wrapperWithIcon: "w-40",
1214
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs i-text-$color-label-text"
1216
+ label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1215
1217
  };
1216
1218
  var prefix = {
1217
1219
  wrapper: prefixSuffixWrapperBase + "left-0",
1218
1220
  wrapperWithLabel: "w-max pl-12",
1219
1221
  wrapperWithIcon: "w-40",
1220
- label: "antialiased block relative cursor-default pb-0 font-bold text-xs i-text-$color-label-text"
1222
+ label: "antialiased block relative cursor-default pb-0 font-bold text-xs s-text"
1223
+ };
1224
+ var toggle = {
1225
+ // wrapper classes
1226
+ field: "relative text-m",
1227
+ // true
1228
+ wrapper: "relative py-1",
1229
+ // true
1230
+ wrapperRadioButtons: "inline-flex font-bold rounded-8 focus-within:focusable",
1231
+ // isRadioButton && !isEqualWidth
1232
+ wrapperRadioButtonsJustified: "flex font-bold rounded-8 focus-within:focusable",
1233
+ // isRadioButton && isEqualWidth,
1234
+ // group classes
1235
+ radioButtonsGroup: "group",
1236
+ // isRadioButton
1237
+ radioButtonsGroupJustified: "grow-1 shrink-0 basis-auto",
1238
+ // isRadioButton && isEqualWidth
1239
+ // input classes
1240
+ input: "peer",
1241
+ a11y: "sr-only",
1242
+ // label classes
1243
+ 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",
1244
+ // !isRadioButton
1245
+ labelBefore: 'before:content-[""] before:block',
1246
+ // !isRadioButton && !isIndeterminate
1247
+ 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",
1248
+ // isCheckbox && !isIndeterminate && !isInvalid && !isDisabled
1249
+ 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",
1250
+ // isCheckbox && !isIndeterminate && isInvalid && !isDisabled
1251
+ 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",
1252
+ // isCheckbox && !isIndeterminate && !isInvalid && isDisabled
1253
+ 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',
1254
+ // isCheckbox && isIndeterminate && !isInvalid && !isDisabled
1255
+ 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',
1256
+ // isCheckbox && isIndeterminate && isInvalid && !isDisabled
1257
+ 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',
1258
+ // isCheckbox && isIndeterminate && !isInvalid && isDisabled
1259
+ 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",
1260
+ // isRadio && !isDisabled && !isInvalid
1261
+ 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",
1262
+ // isRadio && isInvalid && !isDisabled
1263
+ radioDisabled: "before:s-bg-disabled-subtle before:s-border-disabled pointer-events-none before:rounded-full peer-checked:before:border-[6]",
1264
+ // isRadio && !isInvalid && isDisabled
1265
+ 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",
1266
+ // isRadioButtons
1267
+ radioButtonsRegular: "text-s py-8 pl-12 pr-14",
1268
+ // isRadioButtons && !isSmall
1269
+ radioButtonsSmall: "text-xs py-[5px] px-[8px]"
1270
+ // isRadioButtons && isSmall
1271
+ };
1272
+ var deadToggle = {
1273
+ wrapper: `${toggle.wrapper} h-20 w-20 pointer-events-none`,
1274
+ input: `${toggle.input} hidden`,
1275
+ inputVue: "hidden",
1276
+ labelRadio: `${toggle.label} ${toggle.labelBefore} ${toggle.radio}`,
1277
+ labelCheckbox: `${toggle.label} ${toggle.labelBefore} ${toggle.checkbox}`,
1278
+ labelVue: "-mt-2"
1221
1279
  };
1222
1280
  var clickable = {
1223
1281
  toggle: "absolute inset-0 h-full w-full appearance-none cursor-pointer focusable focusable-inset",
@@ -1227,19 +1285,27 @@ var clickable = {
1227
1285
  };
1228
1286
  var attention = {
1229
1287
  base: "border-2 relative flex items-start",
1230
- 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",
1231
- callout: "i-bg-$color-callout-background i-border-$color-callout-border i-text-$color-callout-text py-8 px-16 rounded-8",
1232
- 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",
1233
- popover: "i-bg-$color-popover-background i-border-$color-popover-background i-text-$color-popover-paragraph-text rounded-8 p-16 drop-shadow-m",
1288
+ tooltip: "s-bg-inverted border-[--w-s-color-background-inverted] shadow-m s-text-inverted-static rounded-4 py-6 px-8",
1289
+ callout: "bg-[--w-color-callout-background] border-[--w-color-callout-border] s-text py-8 px-16 rounded-8",
1290
+ 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",
1291
+ 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",
1234
1292
  arrowBase: "absolute h-[14px] w-[14px] border-2 border-b-0 border-r-0 rounded-tl-4 transform",
1293
+ arrowDirectionLeftStart: "-left-[8px]",
1235
1294
  arrowDirectionLeft: "-left-[8px]",
1295
+ arrowDirectionLeftEnd: "-left-[8px]",
1296
+ arrowDirectionRightStart: "-right-[8px]",
1236
1297
  arrowDirectionRight: "-right-[8px]",
1298
+ arrowDirectionRightEnd: "-right-[8px]",
1299
+ arrowDirectionBottomStart: "-bottom-[8px]",
1237
1300
  arrowDirectionBottom: "-bottom-[8px]",
1301
+ arrowDirectionBottomEnd: "-bottom-[8px]",
1302
+ arrowDirectionTopStart: "-top-[8px]",
1238
1303
  arrowDirectionTop: "-top-[8px]",
1239
- arrowTooltip: "i-bg-$color-tooltip-background i-border-$color-tooltip-background",
1240
- arrowCallout: "i-bg-$color-callout-background i-border-$color-callout-border",
1241
- arrowPopover: "i-bg-$color-popover-background i-border-$color-popover-background",
1242
- arrowHighlight: "i-bg-$color-callout-background i-border-$color-callout-border",
1304
+ arrowDirectionTopEnd: "-top-[8px]",
1305
+ arrowTooltip: "s-bg-inverted border-[--w-s-color-background-inverted]",
1306
+ arrowCallout: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
1307
+ arrowPopover: "bg-[--w-s-color-surface-elevated-300] border-[--w-s-color-surface-elevated-300]",
1308
+ arrowHighlight: "bg-[--w-color-callout-background] border-[--w-color-callout-border]",
1243
1309
  content: "last-child:mb-0",
1244
1310
  notCallout: "absolute z-50",
1245
1311
  closeBtn: `${buttonTextSizes.medium} ${buttonTypes.pill} ${buttonColors.pill} justify-self-end -mr-8 ml-8`
@@ -1273,10 +1339,10 @@ function kebabCaseAttributes(constructor) {
1273
1339
  };
1274
1340
  }
1275
1341
 
1276
- // node_modules/.pnpm/@lingui+core@4.7.0/node_modules/@lingui/core/dist/index.mjs
1342
+ // node_modules/.pnpm/@lingui+core@4.7.1/node_modules/@lingui/core/dist/index.mjs
1277
1343
  var import_unraw = __toESM(require_dist(), 1);
1278
1344
 
1279
- // node_modules/.pnpm/@lingui+message-utils@4.7.0/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1345
+ // node_modules/.pnpm/@lingui+message-utils@4.7.1/node_modules/@lingui/message-utils/dist/compileMessage.mjs
1280
1346
  var import_parser = __toESM(require_parser(), 1);
1281
1347
  function processTokens(tokens, mapText) {
1282
1348
  if (!tokens.filter((token) => token.type !== "content").length) {
@@ -1326,7 +1392,7 @@ Message: ${message}`);
1326
1392
  }
1327
1393
  }
1328
1394
 
1329
- // node_modules/.pnpm/@lingui+core@4.7.0/node_modules/@lingui/core/dist/index.mjs
1395
+ // node_modules/.pnpm/@lingui+core@4.7.1/node_modules/@lingui/core/dist/index.mjs
1330
1396
  var isString = (s) => typeof s === "string";
1331
1397
  var isFunction = (f) => typeof f === "function";
1332
1398
  var cache = /* @__PURE__ */ new Map();
@@ -1378,6 +1444,7 @@ function cacheKey(type, locales, options) {
1378
1444
  return `${type}-${localeKey}-${JSON.stringify(options)}`;
1379
1445
  }
1380
1446
  var UNICODE_REGEX = /\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/g;
1447
+ var OCTOTHORPE_PH = "%__lingui_octothorpe__%";
1381
1448
  var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1382
1449
  const locales = passedLocales || locale;
1383
1450
  const style = (format) => {
@@ -1386,7 +1453,7 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1386
1453
  const replaceOctothorpe = (value, message) => {
1387
1454
  const numberFormat = Object.keys(formats).length ? style("number") : void 0;
1388
1455
  const valueStr = number(locales, value, numberFormat);
1389
- return message.replace("#", valueStr);
1456
+ return message.replace(new RegExp(OCTOTHORPE_PH, "g"), valueStr);
1390
1457
  };
1391
1458
  return {
1392
1459
  plural: (value, cases) => {
@@ -1401,43 +1468,53 @@ var getDefaultFormats = (locale, passedLocales, formats = {}) => {
1401
1468
  },
1402
1469
  select: selectFormatter,
1403
1470
  number: (value, format) => number(locales, value, style(format)),
1404
- date: (value, format) => date(locales, value, style(format)),
1405
- undefined: undefinedFormatter
1471
+ date: (value, format) => date(locales, value, style(format))
1406
1472
  };
1407
1473
  };
1408
1474
  var selectFormatter = (value, rules) => {
1409
1475
  var _a;
1410
1476
  return (_a = rules[value]) != null ? _a : rules.other;
1411
1477
  };
1412
- var undefinedFormatter = (value) => value;
1413
1478
  function interpolate(translation, locale, locales) {
1414
1479
  return (values = {}, formats) => {
1415
1480
  const formatters = getDefaultFormats(locale, locales, formats);
1416
- const formatMessage = (message) => {
1417
- if (!Array.isArray(message))
1418
- return message;
1419
- return message.reduce((message2, token) => {
1420
- if (isString(token))
1421
- return message2 + token;
1481
+ const formatMessage = (tokens) => {
1482
+ if (!Array.isArray(tokens))
1483
+ return tokens;
1484
+ return tokens.reduce((message, token) => {
1485
+ if (token === "#") {
1486
+ return message + OCTOTHORPE_PH;
1487
+ }
1488
+ if (isString(token)) {
1489
+ return message + token;
1490
+ }
1422
1491
  const [name, type, format] = token;
1423
1492
  let interpolatedFormat = {};
1424
- if (format != null && typeof format === "object") {
1425
- Object.entries(format).forEach(([key, value2]) => {
1426
- interpolatedFormat[key] = formatMessage(value2);
1427
- });
1493
+ if (type === "plural" || type === "selectordinal" || type === "select") {
1494
+ Object.entries(format).forEach(
1495
+ ([key, value2]) => {
1496
+ interpolatedFormat[key] = formatMessage(value2);
1497
+ }
1498
+ );
1428
1499
  } else {
1429
1500
  interpolatedFormat = format;
1430
1501
  }
1431
- const formatter = formatters[type];
1432
- const value = formatter(values[name], interpolatedFormat);
1433
- if (value == null)
1434
- return message2;
1435
- return message2 + value;
1502
+ let value;
1503
+ if (type) {
1504
+ const formatter = formatters[type];
1505
+ value = formatter(values[name], interpolatedFormat);
1506
+ } else {
1507
+ value = values[name];
1508
+ }
1509
+ if (value == null) {
1510
+ return message;
1511
+ }
1512
+ return message + value;
1436
1513
  }, "");
1437
1514
  };
1438
1515
  const result = formatMessage(translation);
1439
1516
  if (isString(result) && UNICODE_REGEX.test(result)) {
1440
- return (0, import_unraw.default)(result.trim());
1517
+ return (0, import_unraw.unraw)(result.trim());
1441
1518
  }
1442
1519
  if (isString(result))
1443
1520
  return result.trim();