@rinzai/zen 0.7.4 → 0.8.0

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 (51) hide show
  1. package/README.md +1 -1
  2. package/dist/badge/index.js +2 -2
  3. package/dist/base.css +3 -2
  4. package/dist/button/index.js +2 -2
  5. package/dist/calendar/index.js +1 -1
  6. package/dist/card/index.js +2 -2
  7. package/dist/chart/donut.d.ts +4 -2
  8. package/dist/chart/donut.d.ts.map +1 -1
  9. package/dist/chart/donut.js +61 -49
  10. package/dist/chart/index.js +1 -1
  11. package/dist/checkbox/index.js +2 -2
  12. package/dist/code-block/index.js +1 -1
  13. package/dist/combobox/index.d.ts.map +1 -1
  14. package/dist/combobox/index.js +86 -86
  15. package/dist/date-picker/index.js +2 -2
  16. package/dist/dialog/index.js +2 -2
  17. package/dist/disclosure/index.d.ts.map +1 -1
  18. package/dist/disclosure/index.js +3 -3
  19. package/dist/input/index.d.ts.map +1 -1
  20. package/dist/input/index.js +1 -1
  21. package/dist/input-group/index.js +1 -1
  22. package/dist/meter/index.js +1 -1
  23. package/dist/month-picker/index.d.ts.map +1 -1
  24. package/dist/month-picker/index.js +49 -49
  25. package/dist/page-header/index.js +1 -1
  26. package/dist/progress-ring/index.js +1 -1
  27. package/dist/radio-group/index.js +2 -2
  28. package/dist/segmented/index.js +1 -1
  29. package/dist/select/index.js +2 -2
  30. package/dist/side-nav/index.d.ts.map +1 -1
  31. package/dist/side-nav/index.js +1 -1
  32. package/dist/slider/index.js +1 -1
  33. package/dist/status-pill/index.js +2 -2
  34. package/dist/tab-bar/index.js +1 -1
  35. package/dist/table-of-contents/index.js +1 -1
  36. package/dist/textarea/index.d.ts.map +1 -1
  37. package/dist/textarea/index.js +1 -1
  38. package/dist/theme.css +42 -6
  39. package/dist/toast/index.js +5 -5
  40. package/dist/toggle/index.js +2 -2
  41. package/dist/tree/index.d.ts.map +1 -1
  42. package/dist/tree/index.js +1 -1
  43. package/dist/utils/field-chevron.js +1 -1
  44. package/dist/utils/styles.d.ts +9 -3
  45. package/dist/utils/styles.d.ts.map +1 -1
  46. package/dist/utils/styles.js +2 -2
  47. package/dist/utils/theme.d.ts.map +1 -1
  48. package/dist/utils/theme.js +9 -6
  49. package/dist/variables.css +22 -1
  50. package/dist/zen.css +1 -1
  51. package/package.json +13 -24
@@ -3,31 +3,31 @@ import { cx as e } from "../utils/cx.js";
3
3
  import { anchoredStyle as t, useAnchoredPopup as n } from "../utils/useAnchoredPopup.js";
4
4
  import r from "../badge/index.js";
5
5
  import i from "../button/index.js";
6
- import { POPUP as a, TRIGGER as o } from "../utils/styles.js";
7
- import s from "../collapse/index.js";
8
- import { CheckIcon as c } from "../utils/status-icons.js";
9
- import { useField as l } from "../field/index.js";
10
- import u from "../icons/search.js";
11
- import d from "../icons/x-mark.js";
12
- import { InputGroupAddon as f, InputGroupInput as p } from "../input-group/index.js";
13
- import { FieldChevron as m } from "../utils/field-chevron.js";
14
- import { useVirtualList as h } from "../utils/useVirtualList.js";
15
- import { createContext as g, useContext as _, useEffect as v, useMemo as y, useRef as b, useState as x } from "react";
16
- import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
6
+ import { PLACEHOLDER as a, POPUP as o, TRIGGER as s } from "../utils/styles.js";
7
+ import c from "../collapse/index.js";
8
+ import { CheckIcon as l } from "../utils/status-icons.js";
9
+ import { useField as u } from "../field/index.js";
10
+ import d from "../icons/search.js";
11
+ import f from "../icons/x-mark.js";
12
+ import { InputGroupAddon as p, InputGroupInput as m } from "../input-group/index.js";
13
+ import { FieldChevron as h } from "../utils/field-chevron.js";
14
+ import { useVirtualList as g } from "../utils/useVirtualList.js";
15
+ import { createContext as _, useContext as v, useEffect as y, useMemo as b, useRef as x, useState as S } from "react";
16
+ import { Fragment as C, jsx as w, jsxs as T } from "react/jsx-runtime";
17
17
  //#region packages/combobox/index.tsx
18
- var T = g(null), E = () => {
19
- let e = _(T);
18
+ var E = _(null), D = () => {
19
+ let e = v(E);
20
20
  if (!e) throw Error("Combobox parts must be inside a Combobox");
21
21
  return e;
22
22
  };
23
- function D(e) {
24
- let { items: t, itemKey: r = (e) => e.key, itemText: i = (e) => e.text, filter: a = (e, t) => i(e).toLowerCase().includes(t.toLowerCase()), selectedItems: o = [], children: s } = e, c = e.multiple === !0, l = c ? e.value : e.value === null ? [] : [e.value], [u, d] = x(""), [f, p] = x(null), m = b(null), h = b(null), g = b(null), _ = b(35), v = y(() => u ? t.filter((e) => a(e, u)) : t, [
23
+ function O(e) {
24
+ let { items: t, itemKey: r = (e) => e.key, itemText: i = (e) => e.text, filter: a = (e, t) => i(e).toLowerCase().includes(t.toLowerCase()), selectedItems: o = [], children: s } = e, c = e.multiple === !0, l = c ? e.value : e.value === null ? [] : [e.value], [u, d] = S(""), [f, p] = S(null), m = x(null), h = x(null), g = x(null), _ = x(35), v = b(() => u ? t.filter((e) => a(e, u)) : t, [
25
25
  t,
26
26
  u,
27
27
  a
28
- ]), S = n({ onOpenChange: (e) => {
29
- e || (p(null), d(""), S.popupRef.current?.contains(document.activeElement) && h.current?.focus());
30
- } }), w = {
28
+ ]), y = n({ onOpenChange: (e) => {
29
+ e || (p(null), d(""), y.popupRef.current?.contains(document.activeElement) && h.current?.focus());
30
+ } }), C = {
31
31
  multiple: c,
32
32
  keyOf: r,
33
33
  textOf: i,
@@ -39,83 +39,83 @@ function D(e) {
39
39
  if (e.multiple === !0) {
40
40
  let n = e.value.includes(t);
41
41
  e.onValueChange(n ? e.value.filter((e) => e !== t) : [...e.value, t]);
42
- } else e.onValueChange(t), S.setOpen(!1);
42
+ } else e.onValueChange(t), y.setOpen(!1);
43
43
  },
44
44
  query: u,
45
45
  setQuery: d,
46
46
  active: f,
47
47
  setActive: p,
48
48
  create: m,
49
- popup: S,
49
+ popup: y,
50
50
  triggerRef: h,
51
51
  listRef: g,
52
- optionId: (e) => `${S.id}-option-${e}`,
52
+ optionId: (e) => `${y.id}-option-${e}`,
53
53
  itemHeight: _
54
54
  };
55
- return /* @__PURE__ */ C(T.Provider, {
56
- value: w,
55
+ return /* @__PURE__ */ w(E.Provider, {
56
+ value: C,
57
57
  children: s
58
58
  });
59
59
  }
60
- function O({ placeholder: t = "Select an Item", disabled: n, className: r, style: i, children: a, ...s }) {
61
- let c = E(), { popup: u } = c, d = l(), f = b(!1), p = () => !n && u.setOpen(!0);
62
- return /* @__PURE__ */ w("div", {
60
+ function k({ placeholder: t = "Select an Item", disabled: n, className: r, style: i, children: a, ...o }) {
61
+ let c = D(), { popup: l } = c, d = u(), f = x(!1), p = () => !n && l.setOpen(!0);
62
+ return /* @__PURE__ */ T("div", {
63
63
  id: d?.id,
64
- "aria-labelledby": s["aria-label"] ? void 0 : d?.labelId,
64
+ "aria-labelledby": o["aria-label"] ? void 0 : d?.labelId,
65
65
  "aria-invalid": d?.["aria-invalid"],
66
- ...s,
67
- "aria-describedby": e(d?.["aria-describedby"], s["aria-describedby"]).trim() || void 0,
66
+ ...o,
67
+ "aria-describedby": e(d?.["aria-describedby"], o["aria-describedby"]).trim() || void 0,
68
68
  ref: c.triggerRef,
69
69
  role: "combobox",
70
70
  tabIndex: n ? -1 : 0,
71
71
  "aria-haspopup": "listbox",
72
- "aria-expanded": u.open,
73
- "aria-controls": u.id,
72
+ "aria-expanded": l.open,
73
+ "aria-controls": l.id,
74
74
  "aria-disabled": n || void 0,
75
- "data-popup-open": u.triggerProps["data-popup-open"],
76
- "data-zen-anchor": u.triggerProps["data-zen-anchor"],
75
+ "data-popup-open": l.triggerProps["data-popup-open"],
76
+ "data-zen-anchor": l.triggerProps["data-zen-anchor"],
77
77
  style: {
78
- ...u.triggerProps.style,
78
+ ...l.triggerProps.style,
79
79
  ...i
80
80
  },
81
81
  onPointerDown: (e) => {
82
- s.onPointerDown?.(e), f.current = u.open;
82
+ o.onPointerDown?.(e), f.current = l.open;
83
83
  },
84
84
  onClick: (e) => {
85
- s.onClick?.(e), e.preventDefault(), f.current ? u.setOpen(!1) : p(), f.current = !1;
85
+ o.onClick?.(e), e.preventDefault(), f.current ? l.setOpen(!1) : p(), f.current = !1;
86
86
  },
87
87
  onKeyDown: (e) => {
88
- s.onKeyDown?.(e), [
88
+ o.onKeyDown?.(e), [
89
89
  "Enter",
90
90
  " ",
91
91
  "ArrowDown"
92
92
  ].includes(e.key) && (e.preventDefault(), p());
93
93
  },
94
- className: e(o, "w-56 shrink-0", n ? "cursor-not-allowed opacity-50" : "cursor-pointer", u.open && "border-glow/60 [--glow-border-color:transparent] shadow-[0_0_0_3px_oklch(var(--glow)/0.16),0_0_24px_-6px_oklch(var(--glow)/0.6)]", r),
95
- children: [/* @__PURE__ */ C("div", {
94
+ className: e(s, "w-56 shrink-0", n ? "cursor-not-allowed opacity-50" : "cursor-pointer", l.open && "border-glow/60 [--glow-border-color:transparent] shadow-glow-focus", r),
95
+ children: [/* @__PURE__ */ w("div", {
96
96
  className: e("flex min-w-0 flex-1 items-center gap-1 overflow-hidden text-sm", n ? "text-muted-foreground" : "text-foreground"),
97
- children: a ?? /* @__PURE__ */ C(k, { placeholder: t })
98
- }), /* @__PURE__ */ C(m, { open: u.open })]
97
+ children: a ?? /* @__PURE__ */ w(A, { placeholder: t })
98
+ }), /* @__PURE__ */ w(h, { open: l.open })]
99
99
  });
100
100
  }
101
- function k({ placeholder: e }) {
102
- let t = E(), n = new Map([...t.selectedItems, ...t.items].map((e) => [t.keyOf(e), e])), a = t.chosen.flatMap((e) => {
101
+ function A({ placeholder: e }) {
102
+ let t = D(), n = new Map([...t.selectedItems, ...t.items].map((e) => [t.keyOf(e), e])), o = t.chosen.flatMap((e) => {
103
103
  let r = n.has(e) ? t.textOf(n.get(e)) : void 0;
104
104
  return r ? [{
105
105
  key: e,
106
106
  text: r
107
107
  }] : [];
108
108
  });
109
- return a.length ? t.multiple ? /* @__PURE__ */ C(s, {
110
- items: a.map((e) => e.text),
111
- data: a,
109
+ return o.length ? t.multiple ? /* @__PURE__ */ w(c, {
110
+ items: o.map((e) => e.text),
111
+ data: o,
112
112
  badgeVariant: "secondary",
113
113
  badgeClassName: "h-6 min-w-min gap-2",
114
114
  className: "w-full gap-1",
115
- children: (e, n, a) => /* @__PURE__ */ w(r, {
115
+ children: (e, n, a) => /* @__PURE__ */ T(r, {
116
116
  className: "flex h-6 min-w-min gap-2 pr-1",
117
117
  variant: "secondary",
118
- children: [e, /* @__PURE__ */ C(i, {
118
+ children: [e, /* @__PURE__ */ w(i, {
119
119
  "aria-label": `Remove ${e}`,
120
120
  onClick: (e) => {
121
121
  e.stopPropagation(), a && t.toggle(a.key);
@@ -123,38 +123,38 @@ function k({ placeholder: e }) {
123
123
  variant: "icon",
124
124
  size: "icon",
125
125
  className: "group relative -top-px size-4 rounded-sm p-0.5",
126
- children: /* @__PURE__ */ C(d, { className: "size-3 transition duration-300 group-hover:rotate-90" })
126
+ children: /* @__PURE__ */ w(f, { className: "zen__combobox-remove-icon size-3 transition duration-300 group-hover:rotate-90" })
127
127
  })]
128
128
  }, a?.key ?? n)
129
- }) : /* @__PURE__ */ C(S, { children: a[0].text }) : /* @__PURE__ */ C("span", {
130
- className: t.multiple ? "text-muted-foreground" : void 0,
129
+ }) : /* @__PURE__ */ w(C, { children: o[0].text }) : /* @__PURE__ */ w("span", {
130
+ className: a,
131
131
  children: e
132
132
  });
133
133
  }
134
- function A({ className: n, children: r }) {
135
- let { popup: i } = E();
136
- return /* @__PURE__ */ C("div", {
134
+ function j({ className: n, children: r }) {
135
+ let { popup: i } = D();
136
+ return /* @__PURE__ */ w("div", {
137
137
  ...i.popupProps,
138
138
  style: t(i.id, {
139
139
  offset: 5,
140
140
  width: "match"
141
141
  }),
142
- className: e("zen__popover", a, "overflow-visible p-0", n),
143
- children: /* @__PURE__ */ C("div", {
142
+ className: e("zen__popover", o, "overflow-visible p-0", n),
143
+ children: /* @__PURE__ */ w("div", {
144
144
  className: "divide-tint/10 flex w-full flex-col divide-y overflow-hidden rounded-xl",
145
145
  children: r
146
146
  })
147
147
  });
148
148
  }
149
- function j({ placeholder: e = "Search", "aria-label": t = "Search options" }) {
150
- let n = E(), r = b(null);
151
- v(() => {
149
+ function M({ placeholder: e = "Search", "aria-label": t = "Search options" }) {
150
+ let n = D(), r = x(null);
151
+ y(() => {
152
152
  n.popup.open && r.current?.focus();
153
153
  }, [n.popup.open]);
154
154
  let i = n.matches.map(n.keyOf);
155
- return /* @__PURE__ */ w("div", {
155
+ return /* @__PURE__ */ T("div", {
156
156
  className: "flex h-10 grow items-center gap-2 px-3",
157
- children: [/* @__PURE__ */ C(f, { children: /* @__PURE__ */ C(u, {}) }), /* @__PURE__ */ C(p, {
157
+ children: [/* @__PURE__ */ w(p, { children: /* @__PURE__ */ w(d, {}) }), /* @__PURE__ */ w(m, {
158
158
  ref: r,
159
159
  placeholder: e,
160
160
  "aria-label": t,
@@ -168,35 +168,35 @@ function j({ placeholder: e = "Search", "aria-label": t = "Search options" }) {
168
168
  let t = n.active === null ? -1 : i.indexOf(n.active), r = (t) => {
169
169
  if (e.preventDefault(), !i.length) return;
170
170
  let r = i[(t + i.length) % i.length];
171
- n.setActive(r), M(n.listRef.current, i.indexOf(r), n.itemHeight.current);
171
+ n.setActive(r), N(n.listRef.current, i.indexOf(r), n.itemHeight.current);
172
172
  };
173
173
  e.key === "ArrowDown" ? r(t + 1) : e.key === "ArrowUp" ? r(t === -1 ? i.length - 1 : t - 1) : e.key === "Enter" && (e.preventDefault(), n.active === null ? !i.length && n.query && n.create.current && (n.create.current(n.query), n.setQuery("")) : n.toggle(n.active));
174
174
  }
175
175
  })]
176
176
  });
177
177
  }
178
- var M = (e, t, n) => {
178
+ var N = (e, t, n) => {
179
179
  if (!e || t < 0) return;
180
180
  let r = t * n;
181
181
  r < e.scrollTop ? e.scrollTop = r : r + n > e.scrollTop + e.clientHeight && (e.scrollTop = r + n - e.clientHeight);
182
- }, N = g(null);
183
- function P({ renderItem: e, itemHeight: t = 35, children: n }) {
184
- let r = E();
182
+ }, P = _(null);
183
+ function F({ renderItem: e, itemHeight: t = 35, children: n }) {
184
+ let r = D();
185
185
  r.itemHeight.current = t;
186
- let i = h({
186
+ let i = g({
187
187
  count: r.matches.length,
188
188
  itemHeight: t,
189
189
  scrollRef: r.listRef
190
190
  });
191
- return v(() => {
191
+ return y(() => {
192
192
  r.listRef.current && (r.listRef.current.scrollTop = 0);
193
- }, [r.query, r.listRef]), /* @__PURE__ */ w("ul", {
193
+ }, [r.query, r.listRef]), /* @__PURE__ */ T("ul", {
194
194
  id: `${r.popup.id}-list`,
195
195
  role: "listbox",
196
196
  "aria-multiselectable": r.multiple || void 0,
197
197
  className: "max-h-72 grow overflow-y-auto py-1 focus:ring-0 focus:outline-hidden",
198
198
  ref: r.listRef,
199
- children: [/* @__PURE__ */ C("div", {
199
+ children: [/* @__PURE__ */ w("div", {
200
200
  style: {
201
201
  height: `${i.totalSize}px`,
202
202
  width: "100%",
@@ -204,20 +204,20 @@ function P({ renderItem: e, itemHeight: t = 35, children: n }) {
204
204
  },
205
205
  children: i.items.map((t) => {
206
206
  let n = r.matches[t.index];
207
- return /* @__PURE__ */ C(N.Provider, {
207
+ return /* @__PURE__ */ w(P.Provider, {
208
208
  value: {
209
209
  start: t.start,
210
210
  size: t.size
211
211
  },
212
- children: e ? e(n) : /* @__PURE__ */ C(F, { item: n })
212
+ children: e ? e(n) : /* @__PURE__ */ w(I, { item: n })
213
213
  }, r.keyOf(n));
214
214
  })
215
215
  }), n]
216
216
  });
217
217
  }
218
- function F({ item: t, className: n, children: r }) {
219
- let i = E(), a = _(N), o = i.keyOf(t), s = i.chosen.includes(o);
220
- return /* @__PURE__ */ w("li", {
218
+ function I({ item: t, className: n, children: r }) {
219
+ let i = D(), a = v(P), o = i.keyOf(t), s = i.chosen.includes(o);
220
+ return /* @__PURE__ */ T("li", {
221
221
  id: i.optionId(o),
222
222
  role: "option",
223
223
  "aria-selected": s,
@@ -229,28 +229,28 @@ function F({ item: t, className: n, children: r }) {
229
229
  onMouseMove: () => i.active !== o && i.setActive(o),
230
230
  onClick: () => i.toggle(o),
231
231
  className: e("hover:bg-muted data-highlighted:bg-muted grid w-full cursor-pointer grid-cols-[1rem_1fr] items-center gap-2 px-3 py-2 text-sm outline-hidden select-none", a && "absolute top-0 left-0", n),
232
- children: [/* @__PURE__ */ C("span", {
232
+ children: [/* @__PURE__ */ w("span", {
233
233
  className: "text-primary col-start-1",
234
234
  "aria-hidden": !0,
235
- children: s && /* @__PURE__ */ C(c, {})
236
- }), /* @__PURE__ */ C("span", {
235
+ children: s && /* @__PURE__ */ w(l, {})
236
+ }), /* @__PURE__ */ w("span", {
237
237
  className: "col-start-2 truncate",
238
238
  children: r ?? i.textOf(t)
239
239
  })]
240
240
  });
241
241
  }
242
- function I({ children: e = "No results found" }) {
243
- let t = E();
244
- return !t.query || t.matches.length ? null : /* @__PURE__ */ C("li", {
242
+ function L({ children: e = "No results found" }) {
243
+ let t = D();
244
+ return !t.query || t.matches.length ? null : /* @__PURE__ */ w("li", {
245
245
  className: "text-muted-foreground cursor-not-allowed px-3 py-2 text-sm",
246
246
  children: e
247
247
  });
248
248
  }
249
- function L({ onCreate: e, children: t = (e) => `Add ${e}` }) {
250
- let n = E(), { create: r } = n;
251
- return v(() => (r.current = e, () => {
249
+ function R({ onCreate: e, children: t = (e) => `Add ${e}` }) {
250
+ let n = D(), { create: r } = n;
251
+ return y(() => (r.current = e, () => {
252
252
  r.current = null;
253
- }), [r, e]), !n.query || n.matches.length ? null : /* @__PURE__ */ C("li", {
253
+ }), [r, e]), !n.query || n.matches.length ? null : /* @__PURE__ */ w("li", {
254
254
  role: "option",
255
255
  "aria-selected": !1,
256
256
  className: "hover:bg-muted cursor-pointer px-3 py-2 text-sm select-none",
@@ -261,4 +261,4 @@ function L({ onCreate: e, children: t = (e) => `Add ${e}` }) {
261
261
  });
262
262
  }
263
263
  //#endregion
264
- export { L as ComboboxCreate, I as ComboboxEmpty, F as ComboboxItem, P as ComboboxList, A as ComboboxPopup, j as ComboboxSearch, O as ComboboxTrigger, D as default };
264
+ export { R as ComboboxCreate, L as ComboboxEmpty, I as ComboboxItem, F as ComboboxList, j as ComboboxPopup, M as ComboboxSearch, k as ComboboxTrigger, O as default };
@@ -71,9 +71,9 @@ function m({ shown: a, placeholder: o, label: s, calendar: c, onClear: f, clearL
71
71
  ...b.triggerProps.style,
72
72
  ...v
73
73
  },
74
- className: e("zen__date-picker group", r, "w-full", b.open && "border-glow/60 [--glow-border-color:transparent] shadow-[0_0_0_3px_oklch(var(--glow)/0.16),0_0_24px_-6px_oklch(var(--glow)/0.6)]", g),
74
+ className: e("zen__date-picker group", r, "w-full", b.open && "border-glow/60 [--glow-border-color:transparent] shadow-glow-focus", g),
75
75
  children: [/* @__PURE__ */ u("span", {
76
- className: e("truncate", !a && "text-muted-foreground"),
76
+ className: e("truncate", !a && "text-[color:oklch(var(--muted-foreground)/var(--zen-placeholder))]"),
77
77
  children: a ?? o
78
78
  }), /* @__PURE__ */ u(h, {})]
79
79
  }), /* @__PURE__ */ d("div", {
@@ -24,7 +24,7 @@ function f({ open: n, onOpenChange: i, title: a, description: f, children: p, di
24
24
  "aria-labelledby": x,
25
25
  "aria-describedby": f ? S : void 0,
26
26
  "data-side": _,
27
- className: e("zen__dialog glass glass-blur glow-edge text-card-foreground bg-card/90! overflow-visible p-0", !_ && "m-auto max-h-[calc(100dvh-2rem)] max-w-[calc(100vw-2rem)] rounded-xl", !_ && (g === "lg" ? "w-[60rem]" : "w-[28rem]"), _ === "bottom" && "mx-auto mt-auto mb-0 max-h-[85dvh] w-full max-w-2xl rounded-t-2xl", (_ === "left" || _ === "right") && "my-0 h-dvh max-h-dvh w-[24rem] max-w-[calc(100vw-2.5rem)]", _ === "right" && "mr-0 ml-auto rounded-l-2xl", _ === "left" && "mr-auto ml-0 rounded-r-2xl", "backdrop:bg-black/50 backdrop:backdrop-blur-sm pointer-coarse:backdrop:backdrop-blur-none", v),
27
+ className: e("zen__dialog glass glass-blur glow-edge text-card-foreground bg-card/90! overflow-visible p-0", !_ && "m-auto max-h-[calc(100dvh-2rem)] max-w-[calc(100vw-2rem)] rounded-xl", !_ && (g === "lg" ? "w-[60rem]" : "w-[28rem]"), _ === "bottom" && "mx-auto mt-auto mb-0 max-h-[85dvh] w-full max-w-2xl rounded-t-2xl", (_ === "left" || _ === "right") && "my-0 h-dvh max-h-dvh w-[24rem] max-w-[calc(100vw-2.5rem)]", _ === "right" && "mr-0 ml-auto rounded-l-2xl", _ === "left" && "mr-auto ml-0 rounded-r-2xl", "backdrop:bg-[color:var(--backdrop-scrim,oklch(0_0_0/0.5))] backdrop:backdrop-blur-sm pointer-coarse:backdrop:backdrop-blur-none", v),
28
28
  onCancel: (e) => {
29
29
  e.preventDefault(), m && i?.(!1);
30
30
  },
@@ -42,7 +42,7 @@ function f({ open: n, onOpenChange: i, title: a, description: f, children: p, di
42
42
  className: "flex flex-col gap-2",
43
43
  children: [/* @__PURE__ */ l("h2", {
44
44
  id: x,
45
- className: "text-lg font-semibold tracking-tight",
45
+ className: "text-lg font-semibold tracking-tight text-balance",
46
46
  children: a
47
47
  }), f && /* @__PURE__ */ l("p", {
48
48
  id: S,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/disclosure/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAiB,SAAS,EAAkD,MAAM,OAAO,CAAC;AAgBjH;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,IAAI,EAAE,WAAmB,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,eAAe,+BAWxG;AAED,sHAAsH;AACtH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,+BA0BpG;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,sCAuDxF;AAED,MAAM,WAAW,eAAe;IAC5B,8EAA8E;IAC9E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/disclosure/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAiB,SAAS,EAAkD,MAAM,OAAO,CAAC;AAgBjH;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,IAAI,EAAE,WAAmB,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,eAAe,+BAWxG;AAED,sHAAsH;AACtH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,+BAwBpG;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,sCAuDxF;AAED,MAAM,WAAW,eAAe;IAC5B,8EAA8E;IAC9E,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB"}
@@ -34,7 +34,7 @@ function p({ className: n, onClick: r, children: i, ...a }) {
34
34
  },
35
35
  className: e("zen__disclosure group text-muted-foreground flex w-fit cursor-pointer items-center gap-1.5 rounded-md text-sm font-medium outline-hidden", "hover:text-foreground aria-expanded:text-foreground transition-colors duration-200", "focus-visible:outline-ring/50 focus-visible:outline-2 focus-visible:outline-offset-4", n),
36
36
  ...a,
37
- children: [/* @__PURE__ */ c(t, { className: e("text-inherit duration-300 ease-[cubic-bezier(0.2,0.8,0.2,1)]", !o && "-rotate-90") }), i]
37
+ children: [/* @__PURE__ */ c(t, { className: e("ease-out-soft text-inherit duration-300", !o && "-rotate-90") }), i]
38
38
  });
39
39
  }
40
40
  function m({ className: t, children: n, ...r }) {
@@ -51,11 +51,11 @@ function m({ className: t, children: n, ...r }) {
51
51
  id: l,
52
52
  "data-open": a || void 0,
53
53
  inert: !a,
54
- className: e("zen__disclosure-content grid grid-rows-[0fr] transition-[grid-template-rows] duration-300 ease-[cubic-bezier(0.2,0.8,0.2,1)] data-open:grid-rows-[1fr]", m && "data-open:starting:grid-rows-[0fr]"),
54
+ className: e("zen__disclosure-content ease-out-soft grid grid-rows-[0fr] transition-[grid-template-rows] duration-300 data-open:grid-rows-[1fr]", m && "data-open:starting:grid-rows-[0fr]"),
55
55
  children: /* @__PURE__ */ c("div", {
56
56
  className: "min-h-0 overflow-hidden",
57
57
  children: /* @__PURE__ */ c("div", {
58
- className: e("-translate-y-1 pt-2 opacity-0 transition-[opacity,translate] duration-300 ease-out", "in-data-open:translate-y-0 in-data-open:opacity-100", m && "in-data-open:starting:-translate-y-1 in-data-open:starting:opacity-0", t),
58
+ className: e("zen__disclosure-body -translate-y-1 pt-2 opacity-0 transition-[opacity,translate] duration-300 ease-out", "in-data-open:translate-y-0 in-data-open:opacity-100", m && "in-data-open:starting:-translate-y-1 in-data-open:starting:opacity-0", t),
59
59
  ...r,
60
60
  children: n
61
61
  })
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/input/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAK,EAAE,UAAU,+BAkB9C;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/input/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAK,EAAE,UAAU,+BAmB9C;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC"}
@@ -7,7 +7,7 @@ import { jsx as r } from "react/jsx-runtime";
7
7
  function i(i) {
8
8
  let { className: a, ...o } = i, s = n(o);
9
9
  return /* @__PURE__ */ r("input", {
10
- className: e(t, "w-full", "read-only:text-foreground read-only:cursor-default read-only:border-none! read-only:bg-transparent read-only:shadow-none! read-only:outline-hidden!", "file:text-foreground file:border-0 file:bg-transparent file:text-sm file:font-medium", "[[type=\"checkbox\"]]:accent-primary [[type=\"checkbox\"]]:h-4 [[type=\"checkbox\"]]:w-4 [[type=\"checkbox\"]]:rounded-sm", "[[type=\"radio\"]]:accent-primary [[type=\"radio\"]]:h-4 [[type=\"radio\"]]:w-4", a),
10
+ className: e("zen__input", t, "w-full", "read-only:text-foreground read-only:cursor-default read-only:border-none! read-only:bg-transparent read-only:shadow-none! read-only:outline-hidden!", "file:text-foreground file:border-0 file:bg-transparent file:text-sm file:font-medium", "[[type=\"checkbox\"]]:accent-primary [[type=\"checkbox\"]]:h-4 [[type=\"checkbox\"]]:w-4 [[type=\"checkbox\"]]:rounded-sm", "[[type=\"radio\"]]:accent-primary [[type=\"radio\"]]:h-4 [[type=\"radio\"]]:w-4", a),
11
11
  ...o,
12
12
  ...s
13
13
  });
@@ -21,7 +21,7 @@ function i({ invalid: n, className: i, onMouseDown: a, ...o }) {
21
21
  function a({ className: t, ...i }) {
22
22
  let a = n(i);
23
23
  return /* @__PURE__ */ r("input", {
24
- className: e("placeholder:text-muted-foreground h-full w-full min-w-0 flex-1 bg-transparent text-sm outline-hidden disabled:cursor-not-allowed", t),
24
+ className: e("h-full w-full min-w-0 flex-1 bg-transparent text-sm outline-hidden placeholder:text-[color:oklch(var(--muted-foreground)/var(--zen-placeholder))] disabled:cursor-not-allowed", t),
25
25
  ...i,
26
26
  ...a
27
27
  });
@@ -27,7 +27,7 @@ function i({ value: i, max: a = 100, label: o, detail: s, hint: c, valueText: l,
27
27
  /* @__PURE__ */ n("div", {
28
28
  className: "bg-muted col-span-2 h-2 overflow-hidden rounded-full",
29
29
  children: /* @__PURE__ */ n("div", {
30
- className: e("h-full rounded-full transition-[width] duration-700 ease-[cubic-bezier(0.2,0.8,0.2,1)]", v === "danger" ? "bg-destructive shadow-[0_0_12px_oklch(var(--destructive)/0.7)]" : v === "warning" ? "bg-accent-foreground shadow-[0_0_12px_oklch(var(--accent-foreground)/0.6)]" : "from-primary to-glow-2 bg-gradient-to-r shadow-[0_0_12px_oklch(var(--glow)/0.6)]"),
30
+ className: e("zen__meter-fill ease-out-soft h-full rounded-full transition-[width] duration-700", v === "danger" ? "bg-destructive shadow-[0_0_12px_oklch(var(--destructive)/calc(0.7*var(--glow-k)))]" : v === "warning" ? "bg-accent-foreground shadow-[0_0_12px_oklch(var(--accent-foreground)/calc(0.6*var(--glow-k)))]" : "from-primary to-glow-2 bg-gradient-to-r shadow-[0_0_12px_oklch(var(--glow)/calc(0.6*var(--glow-k)))]"),
31
31
  style: { width: `${_}%` }
32
32
  })
33
33
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/month-picker/index.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAe,KAAK,KAAK,EAAc,MAAM,kBAAkB,CAAC;AAGvE,OAAO,EAAE,cAAc,EAAY,MAAM,OAAO,CAAC;AAEjD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAChC,KAAK,EACL,QAAQ,EACR,MAAM,EACN,GAAG,EACH,GAAG,EACH,EAAE,EACF,SAAS,EACT,QAAgB,EAChB,WAA4B,EAC5B,OAAO,EACP,UAAoB,EACpB,KAAK,EACL,GAAG,IAAI,EACV,EAAE,gBAAgB,+BA2FlB;AAED,gGAAgG;AAChG,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,cAAc,CAAC;IAC3G,mCAAmC;IACnC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/month-picker/index.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAe,KAAK,KAAK,EAAc,MAAM,kBAAkB,CAAC;AAWvE,OAAO,EAAE,cAAc,EAAY,MAAM,OAAO,CAAC;AAEjD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAChC,KAAK,EACL,QAAQ,EACR,MAAM,EACN,GAAG,EACH,GAAG,EACH,EAAE,EACF,SAAS,EACT,QAAgB,EAChB,WAA4B,EAC5B,OAAO,EACP,UAAoB,EACpB,KAAK,EACL,GAAG,IAAI,EACV,EAAE,gBAAgB,+BA2FlB;AAED,gGAAgG;AAChG,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,cAAc,CAAC;IAC3G,mCAAmC;IACnC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,oDAAoD;IACpD,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,uCAAuC;IACvC,GAAG,CAAC,EAAE,KAAK,CAAC;IACZ,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB"}
@@ -1,93 +1,93 @@
1
1
  "use client";
2
2
  import { cx as e } from "../utils/cx.js";
3
3
  import { useAnchoredPopup as t } from "../utils/useAnchoredPopup.js";
4
- import { PICKER_MONTH as n, PICKER_NAV as r, POPUP as i, TRIGGER as a } from "../utils/styles.js";
5
- import { useFieldProps as o } from "../field/index.js";
6
- import { FieldChevron as s } from "../utils/field-chevron.js";
7
- import c from "../icons/chevron-left.js";
8
- import l from "../icons/chevron-right.js";
9
- import { formatMonth as u, monthNames as d } from "../utils/month.js";
10
- import { useState as f } from "react";
11
- import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
4
+ import { PICKER_MONTH as n, PICKER_NAV as r, PLACEHOLDER as i, POPUP as a, TRIGGER as o } from "../utils/styles.js";
5
+ import { useFieldProps as s } from "../field/index.js";
6
+ import { FieldChevron as c } from "../utils/field-chevron.js";
7
+ import l from "../icons/chevron-left.js";
8
+ import u from "../icons/chevron-right.js";
9
+ import { formatMonth as d, monthNames as f } from "../utils/month.js";
10
+ import { useState as p } from "react";
11
+ import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
12
12
  //#region packages/month-picker/index.tsx
13
- function g({ value: g, onChange: _, locale: v, min: y, max: b, id: x, className: S, disabled: C = !1, placeholder: w = "Pick a month", onClear: T, clearLabel: E = "Clear", style: D, ...O }) {
14
- let [k, A] = f(() => Number((g ?? (/* @__PURE__ */ new Date()).toISOString()).slice(0, 4))), j = t({ onOpenChange: (e) => e && g && A(Number(g.slice(0, 4))) }), M = o({
15
- ...O,
16
- id: x
17
- }), N = d(v), P = (e) => (!y || e >= y) && (!b || e <= b);
18
- return /* @__PURE__ */ h(p, { children: [/* @__PURE__ */ h("button", {
13
+ function _({ value: _, onChange: v, locale: y, min: b, max: x, id: S, className: C, disabled: w = !1, placeholder: T = "Pick a month", onClear: E, clearLabel: D = "Clear", style: O, ...k }) {
14
+ let [A, j] = p(() => Number((_ ?? (/* @__PURE__ */ new Date()).toISOString()).slice(0, 4))), M = t({ onOpenChange: (e) => e && _ && j(Number(_.slice(0, 4))) }), N = s({
15
+ ...k,
16
+ id: S
17
+ }), P = f(y), F = (e) => (!b || e >= b) && (!x || e <= x);
18
+ return /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ g("button", {
19
19
  type: "button",
20
- ...O,
21
- ...M,
22
- id: x,
23
- disabled: C,
24
- ...j.triggerProps,
20
+ ...k,
21
+ ...N,
22
+ id: S,
23
+ disabled: w,
24
+ ...M.triggerProps,
25
25
  style: {
26
- ...j.triggerProps.style,
27
- ...D
26
+ ...M.triggerProps.style,
27
+ ...O
28
28
  },
29
- className: e("zen__month-picker group", a, "w-full", j.open && "border-glow/60 [--glow-border-color:transparent] shadow-[0_0_0_3px_oklch(var(--glow)/0.16),0_0_24px_-6px_oklch(var(--glow)/0.6)]", S),
30
- children: [/* @__PURE__ */ m("span", {
31
- className: g ? void 0 : "text-muted-foreground",
32
- children: g ? u(g, v) : w
33
- }), /* @__PURE__ */ m(s, { open: j.open })]
34
- }), /* @__PURE__ */ h("div", {
35
- ...j.popupProps,
29
+ className: e("zen__month-picker group", o, "w-full", M.open && "border-glow/60 [--glow-border-color:transparent] shadow-glow-focus", C),
30
+ children: [/* @__PURE__ */ h("span", {
31
+ className: _ ? void 0 : i,
32
+ children: _ ? d(_, y) : T
33
+ }), /* @__PURE__ */ h(c, { open: M.open })]
34
+ }), /* @__PURE__ */ g("div", {
35
+ ...M.popupProps,
36
36
  role: "dialog",
37
37
  "aria-label": "Choose month",
38
- className: e("zen__popover", i, "w-64 p-3"),
38
+ className: e("zen__popover", a, "w-64 p-3"),
39
39
  children: [
40
- /* @__PURE__ */ h("div", {
40
+ /* @__PURE__ */ g("div", {
41
41
  className: "mb-2 flex items-center justify-between",
42
42
  children: [
43
- /* @__PURE__ */ m("button", {
43
+ /* @__PURE__ */ h("button", {
44
44
  type: "button",
45
45
  "aria-label": "Previous year",
46
- onClick: () => A((e) => e - 1),
46
+ onClick: () => j((e) => e - 1),
47
47
  className: r,
48
- children: /* @__PURE__ */ m(c, { className: "size-4" })
48
+ children: /* @__PURE__ */ h(l, { className: "size-4" })
49
49
  }),
50
- /* @__PURE__ */ m("span", {
50
+ /* @__PURE__ */ h("span", {
51
51
  className: "text-sm font-semibold tabular-nums",
52
52
  "aria-live": "polite",
53
- children: k
53
+ children: A
54
54
  }),
55
- /* @__PURE__ */ m("button", {
55
+ /* @__PURE__ */ h("button", {
56
56
  type: "button",
57
57
  "aria-label": "Next year",
58
- onClick: () => A((e) => e + 1),
58
+ onClick: () => j((e) => e + 1),
59
59
  className: r,
60
- children: /* @__PURE__ */ m(l, { className: "size-4" })
60
+ children: /* @__PURE__ */ h(u, { className: "size-4" })
61
61
  })
62
62
  ]
63
63
  }),
64
- /* @__PURE__ */ m("div", {
64
+ /* @__PURE__ */ h("div", {
65
65
  className: "grid grid-cols-3 gap-1",
66
- children: N.map((t, r) => {
67
- let i = `${k}-${String(r + 1).padStart(2, "0")}`, a = i === g;
68
- return /* @__PURE__ */ m("button", {
66
+ children: P.map((t, r) => {
67
+ let i = `${A}-${String(r + 1).padStart(2, "0")}`, a = i === _;
68
+ return /* @__PURE__ */ h("button", {
69
69
  type: "button",
70
- disabled: !P(i),
70
+ disabled: !F(i),
71
71
  "aria-pressed": a,
72
- "aria-label": u(i, v, "long"),
72
+ "aria-label": d(i, y, "long"),
73
73
  onClick: () => {
74
- _(i), j.setOpen(!1);
74
+ v(i), M.setOpen(!1);
75
75
  },
76
76
  className: e(n, a && "bg-primary text-primary-foreground hover:bg-primary"),
77
77
  children: t
78
78
  }, i);
79
79
  })
80
80
  }),
81
- T && g && /* @__PURE__ */ m("button", {
81
+ E && _ && /* @__PURE__ */ h("button", {
82
82
  type: "button",
83
83
  onClick: () => {
84
- T(), j.setOpen(!1);
84
+ E(), M.setOpen(!1);
85
85
  },
86
86
  className: "border-tint/[0.06] text-muted-foreground hover:text-foreground focus-visible:ring-ring/40 mt-2 w-full cursor-pointer rounded-lg border-t px-2 pt-2.5 pb-1.5 text-sm outline-hidden focus-visible:ring-2",
87
- children: E
87
+ children: D
88
88
  })
89
89
  ]
90
90
  })] });
91
91
  }
92
92
  //#endregion
93
- export { g as default };
93
+ export { _ as default };
@@ -11,7 +11,7 @@ function r({ eyebrow: r, title: i, lead: a, children: o, className: s }) {
11
11
  children: r
12
12
  }),
13
13
  /* @__PURE__ */ t("h1", {
14
- className: "text-aurora text-4xl font-semibold tracking-tight lg:text-5xl",
14
+ className: "text-aurora text-4xl font-semibold tracking-tight text-balance lg:text-5xl",
15
15
  children: i
16
16
  }),
17
17
  a && /* @__PURE__ */ t("p", {
@@ -37,7 +37,7 @@ function r({ value: r, size: i = 84, stroke: a = 7, label: o, children: s, class
37
37
  strokeLinecap: "round",
38
38
  strokeDasharray: u,
39
39
  strokeDashoffset: u * (1 - d),
40
- className: "stroke-primary [filter:drop-shadow(0_0_6px_oklch(var(--glow)/0.45))] transition-[stroke-dashoffset] duration-700 ease-out"
40
+ className: "zen__progress-ring-arc stroke-primary [filter:drop-shadow(0_0_6px_oklch(var(--glow)/calc(0.45*var(--glow-k))))] transition-[stroke-dashoffset] duration-700 ease-out"
41
41
  })]
42
42
  }), /* @__PURE__ */ t("div", {
43
43
  className: "absolute inset-0 grid place-items-center text-center",
@@ -45,10 +45,10 @@ function c({ value: t, disabled: r, description: s, className: c, children: l })
45
45
  checked: u.value === t,
46
46
  disabled: r || u.disabled,
47
47
  onChange: () => u.onChange(t),
48
- className: e("peer border-tint/20 bg-tint/[0.04] m-0 size-full cursor-pointer appearance-none rounded-full border outline-hidden", "transition-[border-color,box-shadow] duration-200", "hover:enabled:border-tint/35 focus-visible:ring-ring/50 focus-visible:ring-2", "checked:border-primary checked:shadow-[0_0_14px_-3px_oklch(var(--glow)/0.8)] disabled:cursor-not-allowed")
48
+ className: e("peer bg-tint/[0.04] m-0 size-full cursor-pointer appearance-none rounded-full border border-[color:oklch(var(--tint)/var(--zen-control-edge))] outline-hidden", "transition-[border-color,box-shadow] duration-200", "focus-visible:ring-ring/50 focus-visible:ring-2 hover:enabled:border-[color:oklch(var(--tint)/var(--zen-control-edge-hover))]", "checked:border-primary checked:shadow-[0_0_14px_-3px_oklch(var(--glow)/calc(0.8*var(--glow-k)))] disabled:cursor-not-allowed")
49
49
  }), /* @__PURE__ */ i("span", {
50
50
  "aria-hidden": !0,
51
- className: "bg-primary pointer-events-none absolute size-2 scale-0 rounded-full shadow-[0_0_8px_oklch(var(--glow)/0.9)] transition-transform duration-200 ease-[cubic-bezier(0.3,1.6,0.5,1)] peer-checked:scale-100"
51
+ className: "zen__radio-dot bg-primary pointer-events-none absolute size-2 scale-0 rounded-full shadow-[0_0_8px_oklch(var(--glow)/calc(0.9*var(--glow-k)))] transition-transform duration-200 ease-[cubic-bezier(0.3,1.6,0.5,1)] peer-checked:scale-100"
52
52
  })]
53
53
  }), /* @__PURE__ */ a("span", {
54
54
  className: "flex flex-col gap-0.5",