haze-ui 1.12.2 → 1.14.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 (93) hide show
  1. package/README.md +64 -1
  2. package/dist/components/ColorPicker/ColorPickerCore.js +2 -0
  3. package/dist/components/Combobox/Combobox.js +45 -34
  4. package/dist/components/Command/Command.js +72 -37
  5. package/dist/components/ContextMenu/ContextMenu.js +19 -17
  6. package/dist/components/ContextMenu/ContextMenuContent.js +24 -12
  7. package/dist/components/ContextMenu/ContextMenuItem.js +2 -0
  8. package/dist/components/DateRangePicker/DateRangePickerCore.js +2 -0
  9. package/dist/components/Datepicker/Calendar.js +58 -44
  10. package/dist/components/Datepicker/DatepickerCore.js +37 -29
  11. package/dist/components/DropdownMenu/DropdownMenu.js +20 -20
  12. package/dist/components/DropdownMenu/DropdownMenuContent.js +38 -45
  13. package/dist/components/DropdownMenu/DropdownMenuTrigger.js +9 -7
  14. package/dist/components/InlineEdit/InlineEdit.js +1 -0
  15. package/dist/components/Menu/Menu.js +38 -26
  16. package/dist/components/Menu/MenuItem.js +1 -0
  17. package/dist/components/ModelPicker/ModelPicker.js +1 -0
  18. package/dist/components/OTPInput/OTPInputCore.js +1 -0
  19. package/dist/components/PasswordInput/PasswordInputCore.js +1 -0
  20. package/dist/components/Popover/Popover.js +32 -75
  21. package/dist/components/Progress/Progress.js +2 -0
  22. package/dist/components/Tooltip/Tooltip.js +50 -24
  23. package/dist/components/Tree/TreeItem.js +44 -41
  24. package/dist/components/Upload/Upload.js +1 -0
  25. package/dist/css/combobox.css +2 -1
  26. package/dist/css/command.css +1 -1
  27. package/dist/css/context-menu.css +1 -0
  28. package/dist/css/datepicker.css +3 -2
  29. package/dist/css/dropdown-menu.css +2 -1
  30. package/dist/css/menu.css +2 -1
  31. package/dist/css/popover.css +2 -1
  32. package/dist/css/tooltip.css +2 -1
  33. package/dist/form/FormItem.js +23 -15
  34. package/dist/haze-ui.css +15 -8
  35. package/dist/types/components/Alert/Alert.d.ts +2 -2
  36. package/dist/types/components/Banner/Banner.d.ts +2 -2
  37. package/dist/types/components/BottomSheet/BottomSheet.d.ts +2 -2
  38. package/dist/types/components/Carousel/Carousel.d.ts +2 -2
  39. package/dist/types/components/ChatInput/ChatInput.d.ts +2 -2
  40. package/dist/types/components/Checkbox/Checkbox.d.ts +2 -2
  41. package/dist/types/components/Collapsible/Collapsible.d.ts +2 -2
  42. package/dist/types/components/ColorPicker/ColorPicker.d.ts +2 -2
  43. package/dist/types/components/Combobox/Combobox.d.ts +3 -3
  44. package/dist/types/components/Command/Command.d.ts +2 -2
  45. package/dist/types/components/ConfirmDialog/ConfirmDialog.d.ts +2 -2
  46. package/dist/types/components/ContextMenu/ContextMenu.d.ts +2 -2
  47. package/dist/types/components/ContextMenu/ContextMenuContent.d.ts +1 -1
  48. package/dist/types/components/ContextMenu/ContextMenuContext.d.ts +5 -1
  49. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +3 -3
  50. package/dist/types/components/Datepicker/Datepicker.d.ts +3 -3
  51. package/dist/types/components/Dialog/Dialog.d.ts +2 -2
  52. package/dist/types/components/Disclosure/Disclosure.d.ts +2 -2
  53. package/dist/types/components/Drawer/Drawer.d.ts +2 -2
  54. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +2 -2
  55. package/dist/types/components/DropdownMenu/DropdownMenuContent.d.ts +1 -1
  56. package/dist/types/components/DropdownMenu/DropdownMenuContext.d.ts +3 -0
  57. package/dist/types/components/DropdownMenu/DropdownMenuTrigger.d.ts +1 -1
  58. package/dist/types/components/InlineEdit/InlineEdit.d.ts +2 -2
  59. package/dist/types/components/Input/Input.d.ts +2 -2
  60. package/dist/types/components/LogViewer/LogViewer.d.ts +2 -2
  61. package/dist/types/components/Menu/Menu.d.ts +2 -2
  62. package/dist/types/components/ModelPicker/ModelPicker.d.ts +2 -2
  63. package/dist/types/components/NumberInput/NumberInput.d.ts +2 -2
  64. package/dist/types/components/OTPInput/OTPInput.d.ts +2 -2
  65. package/dist/types/components/Pagination/Pagination.d.ts +2 -2
  66. package/dist/types/components/PasswordInput/PasswordInput.d.ts +2 -2
  67. package/dist/types/components/Popover/Popover.d.ts +2 -2
  68. package/dist/types/components/Radio/RadioGroup.d.ts +2 -2
  69. package/dist/types/components/Rating/Rating.d.ts +2 -2
  70. package/dist/types/components/Segmented/Segmented.d.ts +2 -2
  71. package/dist/types/components/Select/Select.d.ts +2 -2
  72. package/dist/types/components/Slider/Slider.d.ts +2 -2
  73. package/dist/types/components/Stepper/Stepper.d.ts +2 -2
  74. package/dist/types/components/Switch/Switch.d.ts +2 -2
  75. package/dist/types/components/Tabs/Tabs.d.ts +2 -2
  76. package/dist/types/components/TagInput/TagInput.d.ts +2 -2
  77. package/dist/types/components/Textarea/Textarea.d.ts +2 -2
  78. package/dist/types/components/TimePicker/TimePicker.d.ts +2 -2
  79. package/dist/types/components/Tooltip/Tooltip.d.ts +5 -1
  80. package/dist/types/components/Transfer/Transfer.d.ts +2 -2
  81. package/dist/types/components/Tree/types.d.ts +4 -4
  82. package/dist/types/form/FormItem.d.ts +63 -7
  83. package/dist/types/form/index.d.ts +1 -1
  84. package/dist/types/index.d.ts +2 -1
  85. package/dist/types/utils/floating.d.ts +99 -0
  86. package/dist/types/utils/menuKeyboard.d.ts +43 -0
  87. package/dist/utils/floating.js +181 -0
  88. package/dist/utils/menuKeyboard.js +88 -0
  89. package/package.json +34 -8
  90. package/dist/components/DropdownMenu/useMenuKeyboard.js +0 -52
  91. package/dist/types/components/DropdownMenu/useMenuKeyboard.d.ts +0 -19
  92. package/dist/types/hooks/index.d.ts +0 -1
  93. package/dist/types/utils/index.d.ts +0 -1
@@ -2,8 +2,9 @@
2
2
  import { classnames as e } from "../../utils/classnames.js";
3
3
  /* empty css */
4
4
  import { jsx as t, jsxs as n } from "react/jsx-runtime";
5
+ import { useId as r } from "react";
5
6
  //#region src/lib/components/Tree/TreeItem.tsx
6
- var r = "haze-TreeItem__item", i = "haze-TreeItem__blockItem", a = "haze-TreeItem__selectedStyle", o = "haze-TreeItem__disabledStyle", s = "haze-TreeItem__switcher", c = "haze-TreeItem__switcherExpanded", l = "haze-TreeItem__checkbox", u = "haze-TreeItem__checkboxChecked", d = "haze-TreeItem__checkboxHalfChecked", f = "haze-TreeItem__nodeIcon", p = "haze-TreeItem__title", m = "haze-TreeItem__loadingIcon", h = "haze-TreeItem__indentLine", g = "haze-TreeItem__indentLineWithBorder", _ = () => /* @__PURE__ */ t("svg", {
7
+ var i = "haze-TreeItem__item", a = "haze-TreeItem__blockItem", o = "haze-TreeItem__selectedStyle", s = "haze-TreeItem__disabledStyle", c = "haze-TreeItem__switcher", l = "haze-TreeItem__switcherExpanded", u = "haze-TreeItem__checkbox", d = "haze-TreeItem__checkboxChecked", f = "haze-TreeItem__checkboxHalfChecked", p = "haze-TreeItem__nodeIcon", m = "haze-TreeItem__title", h = "haze-TreeItem__loadingIcon", g = "haze-TreeItem__indentLine", _ = "haze-TreeItem__indentLineWithBorder", v = () => /* @__PURE__ */ t("svg", {
7
8
  viewBox: "0 0 12 12",
8
9
  fill: "none",
9
10
  stroke: "currentColor",
@@ -11,7 +12,7 @@ var r = "haze-TreeItem__item", i = "haze-TreeItem__blockItem", a = "haze-TreeIte
11
12
  strokeLinecap: "round",
12
13
  strokeLinejoin: "round",
13
14
  children: t("path", { d: "M4 2l4 4-4 4" })
14
- }), v = () => /* @__PURE__ */ t("svg", {
15
+ }), y = () => /* @__PURE__ */ t("svg", {
15
16
  viewBox: "0 0 12 12",
16
17
  fill: "none",
17
18
  stroke: "currentColor",
@@ -19,29 +20,29 @@ var r = "haze-TreeItem__item", i = "haze-TreeItem__blockItem", a = "haze-TreeIte
19
20
  strokeLinecap: "round",
20
21
  strokeLinejoin: "round",
21
22
  children: t("path", { d: "M2 6l3 3 5-5" })
22
- }), y = () => /* @__PURE__ */ t("svg", {
23
+ }), b = () => /* @__PURE__ */ t("svg", {
23
24
  viewBox: "0 0 12 12",
24
25
  fill: "none",
25
26
  stroke: "currentColor",
26
27
  strokeWidth: "2",
27
28
  strokeLinecap: "round",
28
29
  children: t("path", { d: "M2 6h8" })
29
- }), b = () => /* @__PURE__ */ t("svg", {
30
+ }), x = () => /* @__PURE__ */ t("svg", {
30
31
  viewBox: "0 0 16 16",
31
32
  fill: "currentColor",
32
33
  children: t("path", { d: "M1 3.5A1.5 1.5 0 0 1 2.5 2h2.764c.958 0 1.76.56 2.311 1.184C7.985 3.648 8.48 4 9 4h4.5A1.5 1.5 0 0 1 15 5.5v7a1.5 1.5 0 0 1-1.5 1.5h-11A1.5 1.5 0 0 1 1 12.5v-9z" })
33
- }), x = () => /* @__PURE__ */ n("svg", {
34
+ }), S = () => /* @__PURE__ */ n("svg", {
34
35
  viewBox: "0 0 16 16",
35
36
  fill: "currentColor",
36
37
  children: [/* @__PURE__ */ t("path", { d: "M.5 5l.5-.5A.5.5 0 0 1 1.5 4H4l1-1h4.5a1.5 1.5 0 0 1 1.5 1.5v1H14a1 1 0 0 1 1 1v6a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1V5.5L.5 5z" }), /* @__PURE__ */ t("path", {
37
38
  d: "M1 6v6h14V6H1z",
38
39
  opacity: "0.5"
39
40
  })]
40
- }), S = () => /* @__PURE__ */ t("svg", {
41
+ }), C = () => /* @__PURE__ */ t("svg", {
41
42
  viewBox: "0 0 16 16",
42
43
  fill: "currentColor",
43
44
  children: t("path", { d: "M4 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.414a2 2 0 0 0-.586-1.414L10.586.172A2 2 0 0 0 9.172 0H4zm1 1a1 1 0 0 1 1-1h3.172a1 1 0 0 1 .707.293l2.121 2.121a1 1 0 0 1 .293.707V13a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V1z" })
44
- }), C = () => /* @__PURE__ */ n("svg", {
45
+ }), w = () => /* @__PURE__ */ n("svg", {
45
46
  viewBox: "0 0 16 16",
46
47
  fill: "currentColor",
47
48
  children: [/* @__PURE__ */ t("path", {
@@ -49,61 +50,63 @@ var r = "haze-TreeItem__item", i = "haze-TreeItem__blockItem", a = "haze-TreeIte
49
50
  opacity: "0.3"
50
51
  }), /* @__PURE__ */ t("path", { d: "M8 1a7 7 0 0 1 7 7h-2a5 5 0 0 0-5-5V1z" })]
51
52
  });
52
- function w({ node: w, level: T, expanded: E, selected: D, checked: O, disabled: k, checkable: A, selectable: j, blockNode: M, showLine: N, showIcon: P, switcherIcon: F, loadingIcon: I, loading: L, titleRender: R, iconRender: z, isLast: B, onToggle: V, onSelect: H, onCheck: U }) {
53
- let W = !!w.children?.length, G = w.isLeaf ?? !W, K = Array.from({ length: T }, (e, t) => ({ showLine: N && !B[t] })), q = R ? R(w) : w.title, J = z ? z(w) : w.icon;
53
+ function T({ node: T, level: E, expanded: D, selected: O, checked: k, disabled: A, checkable: j, selectable: M, blockNode: N, showLine: P, showIcon: F, switcherIcon: I, loadingIcon: L, loading: R, titleRender: z, iconRender: B, isLast: V, onToggle: H, onSelect: U, onCheck: W }) {
54
+ let G = !!T.children?.length, K = T.isLeaf ?? !G, q = `haze-tree-title-${r()}`, J = Array.from({ length: E }, (e, t) => ({ showLine: P && !V[t] })), Y = z ? z(T) : T.title, X = B ? B(T) : T.icon;
54
55
  return /* @__PURE__ */ t("div", { children: n("div", {
55
56
  role: "treeitem",
56
- "aria-selected": D,
57
- "aria-expanded": G ? void 0 : E,
58
- "aria-level": T + 1,
57
+ "aria-selected": O,
58
+ "aria-expanded": K ? void 0 : D,
59
+ "aria-level": E + 1,
59
60
  onClick: () => {
60
- k || w.disabled || (j && H(), G || V());
61
+ A || T.disabled || (M && U(), K || H());
61
62
  },
62
63
  className: e([
63
- r,
64
- M && i,
65
- D && j && a,
66
- (k || w.disabled) && o
64
+ i,
65
+ N && a,
66
+ O && M && o,
67
+ (A || T.disabled) && s
67
68
  ]),
68
69
  children: [
69
- K.map((n, r) => /* @__PURE__ */ t("span", { className: e([h, n.showLine && g]) }, r)),
70
- !G && /* @__PURE__ */ t("span", {
70
+ J.map((n, r) => /* @__PURE__ */ t("span", { className: e([g, n.showLine && _]) }, r)),
71
+ !K && /* @__PURE__ */ t("span", {
71
72
  role: "button",
72
- "aria-label": E ? "Collapse" : "Expand",
73
+ "aria-label": D ? "Collapse" : "Expand",
73
74
  onClick: (e) => {
74
- e.stopPropagation(), V();
75
+ e.stopPropagation(), H();
75
76
  },
76
- className: e([s, E && c]),
77
- children: L ? /* @__PURE__ */ t("span", {
78
- className: m,
79
- children: I ?? /* @__PURE__ */ t(C, {})
80
- }) : F || /* @__PURE__ */ t(_, {})
77
+ className: e([c, D && l]),
78
+ children: R ? /* @__PURE__ */ t("span", {
79
+ className: h,
80
+ children: L ?? /* @__PURE__ */ t(w, {})
81
+ }) : I || /* @__PURE__ */ t(v, {})
81
82
  }),
82
- G && /* @__PURE__ */ t("span", { className: e(h) }),
83
- A && /* @__PURE__ */ n("span", {
83
+ K && /* @__PURE__ */ t("span", { className: e(g) }),
84
+ j && /* @__PURE__ */ n("span", {
84
85
  role: "checkbox",
85
- "aria-checked": O === "halfChecked" ? "mixed" : O === "checked",
86
+ "aria-checked": k === "halfChecked" ? "mixed" : k === "checked",
87
+ "aria-labelledby": q,
86
88
  onClick: (e) => {
87
- e.stopPropagation(), U();
89
+ e.stopPropagation(), W();
88
90
  },
89
91
  className: e([
90
- l,
91
- O === "checked" && u,
92
- O === "halfChecked" && d,
93
- w.disableCheckbox && o
92
+ u,
93
+ k === "checked" && d,
94
+ k === "halfChecked" && f,
95
+ T.disableCheckbox && s
94
96
  ]),
95
- children: [O === "checked" && /* @__PURE__ */ t(v, {}), O === "halfChecked" && /* @__PURE__ */ t(y, {})]
97
+ children: [k === "checked" && /* @__PURE__ */ t(y, {}), k === "halfChecked" && /* @__PURE__ */ t(b, {})]
96
98
  }),
97
- (P || J) && /* @__PURE__ */ t("span", {
98
- className: f,
99
- children: J ?? t(G ? S : E ? x : b, {})
99
+ (F || X) && /* @__PURE__ */ t("span", {
100
+ className: p,
101
+ children: X ?? t(K ? C : D ? S : x, {})
100
102
  }),
101
103
  /* @__PURE__ */ t("span", {
102
- className: p,
103
- children: q
104
+ className: m,
105
+ id: q,
106
+ children: Y
104
107
  })
105
108
  ]
106
109
  }) });
107
110
  }
108
111
  //#endregion
109
- export { w as default };
112
+ export { T as default };
@@ -31,6 +31,7 @@ function l({ accept: l, multiple: u = !1, onChange: d, className: f, children: p
31
31
  accept: l,
32
32
  multiple: u,
33
33
  onChange: g,
34
+ hidden: !0,
34
35
  className: e([c])
35
36
  }), p || /* @__PURE__ */ r(t, { children: [/* @__PURE__ */ r("svg", {
36
37
  width: "40",
@@ -1,3 +1,4 @@
1
1
  /* haze-ui combobox — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Combobox__wrapper{width:100%;display:inline-block;position:relative}.haze-Combobox__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-Combobox__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Combobox__listbox{z-index:1000;margin-top:var(--haze-space-1);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);max-height:200px;box-shadow:var(--haze-shadow-lg);position:absolute;top:100%;left:0;right:0;overflow-y:auto}.haze-Combobox__hidden{display:none}
2
+ .haze-Combobox__wrapper{width:100%;display:inline-block;position:relative}.haze-Combobox__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-Combobox__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Combobox__listbox{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);min-width:100%;max-height:200px;box-shadow:var(--haze-shadow-lg);overflow-y:auto}
3
3
  .haze-ComboboxOption__option{padding:var(--haze-space-2) var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;align-items:center;transition:background .1s;display:flex}.haze-ComboboxOption__option:hover{background:var(--haze-color-bg-subtle)}.haze-ComboboxOption__option:active{background:var(--haze-color-bg-muted)}.haze-ComboboxOption__highlightedStyle{background:var(--haze-color-bg-subtle)}.haze-ComboboxOption__selectedStyle{font-weight:var(--haze-weight-medium);color:var(--haze-color-primary)}
4
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,2 +1,2 @@
1
1
  /* haze-ui command — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Command__base{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);font-family:var(--haze-font-sans);flex-direction:column;width:100%;max-width:400px;display:flex;overflow:hidden}.haze-Command__inputStyle{width:100%;padding:var(--haze-space-3) var(--haze-space-4);border:none;border-bottom:1px solid var(--haze-color-border);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);background:0 0;outline:none}.haze-Command__inputStyle::-webkit-input-placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle:-ms-placeholder-shown{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__listStyle{max-height:300px;padding:var(--haze-space-1);overflow-y:auto}.haze-Command__itemStyle{padding:var(--haze-space-2) var(--haze-space-3);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;transition:background .15s}.haze-Command__itemStyle:hover{background:var(--haze-color-bg-subtle)}.haze-Command__itemStyle:active{background:var(--haze-color-bg-muted)}
2
+ .haze-Command__base{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);font-family:var(--haze-font-sans);flex-direction:column;width:100%;max-width:400px;display:flex;overflow:hidden}.haze-Command__inputStyle{width:100%;padding:var(--haze-space-3) var(--haze-space-4);border:none;border-bottom:1px solid var(--haze-color-border);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);background:0 0;outline:none}.haze-Command__inputStyle::-webkit-input-placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle:-ms-placeholder-shown{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__listStyle{max-height:300px;padding:var(--haze-space-1);overflow-y:auto}.haze-Command__itemStyle{padding:var(--haze-space-2) var(--haze-space-3);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;transition:background .15s}.haze-Command__itemStyle:hover{background:var(--haze-color-bg-subtle)}.haze-Command__itemStyle:active{background:var(--haze-color-bg-muted)}.haze-Command__itemStyle:focus-visible{background:var(--haze-color-bg-subtle);box-shadow:inset 0 0 0 2px var(--haze-color-focus-ring);outline:none}
@@ -4,3 +4,4 @@
4
4
  .haze-ContextMenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);cursor:pointer;font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text);border-radius:var(--haze-radius-sm);text-align:left;background:0 0;border:none;align-items:center;transition:background .15s;display:flex}.haze-ContextMenuItem__item:hover{background:var(--haze-color-muted)}.haze-ContextMenuItem__item:active{background:var(--haze-color-bg-subtle)}.haze-ContextMenuItem__item:disabled{opacity:.5;cursor:not-allowed}
5
5
  .haze-ContextMenuSeparator__separator{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
6
6
  .haze-ContextMenuTrigger__trigger{display:contents}
7
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,3 +1,4 @@
1
1
  /* haze-ui datepicker — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Calendar__calendarWrapper{padding:var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm)}.haze-Calendar__header{-webkit-box-pack:justify;align-items:center;-ms-flex-pack:space-between;margin-bottom:var(--haze-space-2);justify-content:space-between;display:flex}.haze-Calendar__headerBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-1);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1}.haze-Calendar__headerBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__headerBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__headerTitle{font-weight:var(--haze-weight-medium);color:var(--haze-color-text)}.haze-Calendar__grid{display:-ms-grid;-ms-grid-columns:repeat(7, 1fr);text-align:center;grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.haze-Calendar__weekday{padding:var(--haze-space-1);font-weight:var(--haze-weight-medium);color:var(--haze-color-text-muted);font-size:var(--haze-text-xs)}.haze-Calendar__dayBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-2);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1.5;transition:background .1s}.haze-Calendar__dayBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__dayBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__dayBtn:disabled{opacity:.3;cursor:not-allowed}.haze-Calendar__daySelected{background:var(--haze-color-primary);color:var(--haze-color-text-inverse)}.haze-Calendar__daySelected:hover{background:var(--haze-color-primary-hover)}.haze-Calendar__dayOutside{color:var(--haze-color-text-muted)}
3
- .haze-DatepickerCore__wrapper{display:inline-block;position:relative}.haze-DatepickerCore__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-DatepickerCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-DatepickerCore__dropdown{z-index:1000;margin-top:var(--haze-space-1);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg);position:absolute;top:100%;left:0}.haze-DatepickerCore__hiddenStyle{display:none}
2
+ .haze-Calendar__calendarWrapper{padding:var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm)}.haze-Calendar__header{-webkit-box-pack:justify;align-items:center;-ms-flex-pack:space-between;margin-bottom:var(--haze-space-2);justify-content:space-between;display:flex}.haze-Calendar__headerBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-1);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1}.haze-Calendar__headerBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__headerBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__headerTitle{font-weight:var(--haze-weight-medium);color:var(--haze-color-text)}.haze-Calendar__grid{display:-ms-grid;-ms-grid-columns:repeat(7, 1fr);text-align:center;grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.haze-Calendar__rowContents,.haze-Calendar__cellContents{display:contents}.haze-Calendar__weekday{padding:var(--haze-space-1);font-weight:var(--haze-weight-medium);color:var(--haze-color-text-muted);font-size:var(--haze-text-xs)}.haze-Calendar__dayBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-2);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1.5;transition:background .1s}.haze-Calendar__dayBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__dayBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__dayBtn:disabled{opacity:.3;cursor:not-allowed}.haze-Calendar__daySelected{background:var(--haze-color-primary);color:var(--haze-color-text-inverse)}.haze-Calendar__daySelected:hover{background:var(--haze-color-primary-hover)}.haze-Calendar__dayOutside{color:var(--haze-color-text-muted)}
3
+ .haze-DatepickerCore__wrapper{display:inline-block;position:relative}.haze-DatepickerCore__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-DatepickerCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-DatepickerCore__dropdown{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg)}
4
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,6 +1,7 @@
1
1
  /* haze-ui dropdown-menu — generated by scripts/split-css.mjs, do not edit */
2
2
  .haze-DropdownMenu__wrapper{display:inline-block;position:relative}
3
- .haze-DropdownMenuContent__content{min-width:10rem;margin-top:var(--haze-space-1);padding:var(--haze-space-1);background:var(--haze-color-bg);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);box-shadow:var(--haze-shadow-md);z-index:50;position:absolute;top:100%}.haze-DropdownMenuContent__alignStart{left:0}.haze-DropdownMenuContent__alignCenter{left:50%;transform:translate(-50%)}.haze-DropdownMenuContent__alignEnd{right:0}
3
+ .haze-DropdownMenuContent__content{min-width:10rem;padding:var(--haze-space-1);background:var(--haze-color-bg);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);box-shadow:var(--haze-shadow-md)}
4
4
  .haze-DropdownMenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);cursor:pointer;font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text);border-radius:var(--haze-radius-sm);text-align:left;background:0 0;border:none;align-items:center;transition:background .15s;display:flex}.haze-DropdownMenuItem__item:hover{background:var(--haze-color-muted)}.haze-DropdownMenuItem__item:active{background:var(--haze-color-bg-subtle)}.haze-DropdownMenuItem__item:disabled{opacity:.5;cursor:not-allowed}
5
5
  .haze-DropdownMenuSeparator__separator{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
6
6
  .haze-DropdownMenuTrigger__trigger{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;padding:0}
7
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
package/dist/css/menu.css CHANGED
@@ -1,4 +1,5 @@
1
1
  /* haze-ui menu — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Menu__container{display:inline-flex;position:relative}.haze-Menu__panel{z-index:1000;margin-top:var(--haze-space-1);min-width:160px;padding:var(--haze-space-1) 0;border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg);position:absolute;top:100%;left:0}.haze-Menu__hidden{display:none}
2
+ .haze-Menu__container{display:inline-flex;position:relative}.haze-Menu__panel{min-width:160px;padding:var(--haze-space-1) 0;border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg)}
3
3
  .haze-MenuDivider__divider{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
4
4
  .haze-MenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;transition:background .1s;display:flex}.haze-MenuItem__item:hover{background:var(--haze-color-bg-subtle)}.haze-MenuItem__item:active{background:var(--haze-color-bg-muted)}.haze-MenuItem__item:focus-visible{background:var(--haze-color-bg-subtle);box-shadow:inset 0 0 0 2px var(--haze-color-focus-ring);outline:none}.haze-MenuItem__item:disabled{opacity:.5;cursor:not-allowed}
5
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,2 +1,3 @@
1
1
  /* haze-ui popover — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Popover__container{display:inline-flex;position:relative}.haze-Popover__panelVisuals{padding:var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);box-shadow:var(--haze-shadow-lg);min-width:200px}.haze-Popover__panelFallback{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-Popover__hidden{display:none}.haze-Popover__panelNative{margin:0;inset:auto}.haze-Popover__panelAnchored{position-anchor:var(--haze-popover-anchor);position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-Popover__panelJsPositioned{margin-top:var(--haze-space-1);position:fixed}
2
+ .haze-Popover__container{display:inline-flex;position:relative}.haze-Popover__panelVisuals{padding:var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);box-shadow:var(--haze-shadow-lg);min-width:200px}
3
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -1,2 +1,3 @@
1
1
  /* haze-ui tooltip — generated by scripts/split-css.mjs, do not edit */
2
- .haze-Tooltip__wrapper{display:inline-flex;position:relative}.haze-Tooltip__bubble{z-index:1000;padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-md);background:var(--haze-color-text);color:var(--haze-color-text-inverse);font-family:var(--haze-font-sans);font-size:var(--haze-text-xs);line-height:var(--haze-leading-normal);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;position:absolute}.haze-Tooltip__top{margin-bottom:var(--haze-space-1);bottom:100%;left:50%;transform:translate(-50%)}.haze-Tooltip__bottom{margin-top:var(--haze-space-1);top:100%;left:50%;transform:translate(-50%)}.haze-Tooltip__left{margin-right:var(--haze-space-1);top:50%;right:100%;transform:translateY(-50%)}.haze-Tooltip__right{margin-left:var(--haze-space-1);top:50%;left:100%;transform:translateY(-50%)}.haze-Tooltip__showOnInteract:hover>[role=tooltip],.haze-Tooltip__showOnInteract:focus-within>[role=tooltip]{opacity:1}
2
+ .haze-Tooltip__wrapper{display:inline-flex;position:relative}.haze-Tooltip__bubble{padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-md);background:var(--haze-color-text);color:var(--haze-color-text-inverse);font-family:var(--haze-font-sans);font-size:var(--haze-text-xs);line-height:var(--haze-leading-normal);white-space:nowrap;pointer-events:none}
3
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
@@ -6,8 +6,8 @@ import { useId as r } from "react";
6
6
  import { useField as i } from "react-f0rm";
7
7
  //#region src/lib/form/FormItem.tsx
8
8
  var a = "haze-FormItem__item", o = "haze-FormItem__labelText", s = "haze-FormItem__errorText";
9
- function c({ form: c, name: l, label: u, validate: d, mode: f, validateDebounce: p, delayError: m, rules: h, className: g, children: _ }) {
10
- let v = `haze-field-${r()}`, y = `${v}-error`, { value: b, onChange: x, onBlur: S, errors: C } = i({
9
+ function c({ form: c, name: l, label: u, validate: d, mode: f, validateDebounce: p, delayError: m, rules: h, className: g, renderError: _, as: v, asProps: y, eventToValue: b, valueToProps: x, children: S }) {
10
+ let C = `haze-field-${r()}`, w = `${C}-error`, { value: T, onChange: E, onBlur: D, errors: O } = i({
11
11
  form: c,
12
12
  name: l,
13
13
  validate: d,
@@ -15,29 +15,37 @@ function c({ form: c, name: l, label: u, validate: d, mode: f, validateDebounce:
15
15
  validateDebounce: p,
16
16
  delayError: m,
17
17
  rules: h
18
- }), w = C.length > 0;
18
+ }), k = O.length > 0, A = b ?? ((e) => e);
19
19
  return /* @__PURE__ */ n("div", {
20
20
  className: e([a, g]),
21
21
  children: [
22
22
  u !== void 0 && /* @__PURE__ */ t("label", {
23
- htmlFor: v,
23
+ htmlFor: C,
24
24
  className: e(o),
25
25
  children: u
26
26
  }),
27
- _({
28
- id: v,
29
- errorId: y,
30
- invalid: w,
31
- errors: C,
32
- onBlur: S,
33
- value: b,
34
- onChange: x
27
+ v ? /* @__PURE__ */ t(v, {
28
+ id: C,
29
+ "aria-invalid": k || void 0,
30
+ "aria-describedby": k ? w : void 0,
31
+ onBlur: D,
32
+ onChange: (e) => E(A(e)),
33
+ ...y,
34
+ ...x ? x(T) : { value: T }
35
+ }) : S({
36
+ id: C,
37
+ errorId: w,
38
+ invalid: k,
39
+ errors: O,
40
+ onBlur: D,
41
+ value: T,
42
+ onChange: E
35
43
  }),
36
- w && /* @__PURE__ */ t("span", {
37
- id: y,
44
+ k && /* @__PURE__ */ t("span", {
45
+ id: w,
38
46
  role: "alert",
39
47
  className: e(s),
40
- children: C[0].message
48
+ children: _ ? _(O[0].message, w) : O[0].message
41
49
  })
42
50
  ]
43
51
  });
package/dist/haze-ui.css CHANGED
@@ -26,9 +26,10 @@
26
26
  .haze-CodeBlock__block{background:var(--haze-color-muted);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);font-family:var(--haze-font-mono);font-size:var(--haze-text-sm);line-height:var(--haze-leading-relaxed);position:relative;overflow-x:auto}.haze-CodeBlock__pre{padding:var(--haze-space-4);margin:0}.haze-CodeBlock__lang{top:var(--haze-space-2);right:var(--haze-space-3);font-size:var(--haze-text-xs);color:var(--haze-color-text-muted);font-family:var(--haze-font-sans);text-transform:uppercase;-webkit-user-select:none;user-select:none;position:absolute}
27
27
  .haze-Collapsible__base{font-family:var(--haze-font-sans)}.haze-Collapsible__triggerStyle{cursor:pointer;-webkit-user-select:none;user-select:none}.haze-Collapsible__contentStyle{overflow:hidden}
28
28
  .haze-ColorPickerCore__container{gap:var(--haze-space-3);font-family:var(--haze-font-sans);flex-direction:column;display:flex}.haze-ColorPickerCore__previewRow{align-items:center;gap:var(--haze-space-3);display:flex}.haze-ColorPickerCore__colorInput{border:2px solid var(--haze-color-border);border-radius:var(--haze-radius-md);cursor:pointer;background:0 0;width:40px;height:40px;padding:0}.haze-ColorPickerCore__colorInput::-webkit-color-swatch-wrapper{padding:0}.haze-ColorPickerCore__colorInput::-webkit-color-swatch{border-radius:var(--haze-radius-sm);border:none}.haze-ColorPickerCore__textInput{height:40px;padding:0 var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-mono);outline:none;flex:1}.haze-ColorPickerCore__textInput:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring)}.haze-ColorPickerCore__presetsRow{-webkit-box-flex-wrap:wrap;gap:var(--haze-space-2);flex-wrap:wrap;display:flex}.haze-ColorPickerCore__presetBtn{border-radius:var(--haze-radius-full);cursor:pointer;-webkit-transition:border-color .15s,-webkit-transform .15s;border:2px solid #0000;width:1.75rem;height:1.75rem;transition:border-color .15s,transform .15s}.haze-ColorPickerCore__presetBtn:hover{transform:scale(1.1)}.haze-ColorPickerCore__activePreset{border-color:var(--haze-color-text);box-shadow:0 0 0 2px var(--haze-color-bg)}
29
- .haze-Combobox__wrapper{width:100%;display:inline-block;position:relative}.haze-Combobox__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-Combobox__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Combobox__listbox{z-index:1000;margin-top:var(--haze-space-1);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);max-height:200px;box-shadow:var(--haze-shadow-lg);position:absolute;top:100%;left:0;right:0;overflow-y:auto}.haze-Combobox__hidden{display:none}
29
+ .haze-Combobox__wrapper{width:100%;display:inline-block;position:relative}.haze-Combobox__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-Combobox__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Combobox__listbox{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);min-width:100%;max-height:200px;box-shadow:var(--haze-shadow-lg);overflow-y:auto}
30
30
  .haze-ComboboxOption__option{padding:var(--haze-space-2) var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;align-items:center;transition:background .1s;display:flex}.haze-ComboboxOption__option:hover{background:var(--haze-color-bg-subtle)}.haze-ComboboxOption__option:active{background:var(--haze-color-bg-muted)}.haze-ComboboxOption__highlightedStyle{background:var(--haze-color-bg-subtle)}.haze-ComboboxOption__selectedStyle{font-weight:var(--haze-weight-medium);color:var(--haze-color-primary)}
31
- .haze-Command__base{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);font-family:var(--haze-font-sans);flex-direction:column;width:100%;max-width:400px;display:flex;overflow:hidden}.haze-Command__inputStyle{width:100%;padding:var(--haze-space-3) var(--haze-space-4);border:none;border-bottom:1px solid var(--haze-color-border);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);background:0 0;outline:none}.haze-Command__inputStyle::-webkit-input-placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle:-ms-placeholder-shown{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__listStyle{max-height:300px;padding:var(--haze-space-1);overflow-y:auto}.haze-Command__itemStyle{padding:var(--haze-space-2) var(--haze-space-3);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;transition:background .15s}.haze-Command__itemStyle:hover{background:var(--haze-color-bg-subtle)}.haze-Command__itemStyle:active{background:var(--haze-color-bg-muted)}
31
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
32
+ .haze-Command__base{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);font-family:var(--haze-font-sans);flex-direction:column;width:100%;max-width:400px;display:flex;overflow:hidden}.haze-Command__inputStyle{width:100%;padding:var(--haze-space-3) var(--haze-space-4);border:none;border-bottom:1px solid var(--haze-color-border);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);background:0 0;outline:none}.haze-Command__inputStyle::-webkit-input-placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__inputStyle:-ms-placeholder-shown{color:var(--haze-color-text-muted)}.haze-Command__inputStyle::placeholder{color:var(--haze-color-text-muted)}.haze-Command__listStyle{max-height:300px;padding:var(--haze-space-1);overflow-y:auto}.haze-Command__itemStyle{padding:var(--haze-space-2) var(--haze-space-3);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;transition:background .15s}.haze-Command__itemStyle:hover{background:var(--haze-color-bg-subtle)}.haze-Command__itemStyle:active{background:var(--haze-color-bg-muted)}.haze-Command__itemStyle:focus-visible{background:var(--haze-color-bg-subtle);box-shadow:inset 0 0 0 2px var(--haze-color-focus-ring);outline:none}
32
33
  .haze-ConfirmDialog__overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.haze-ConfirmDialog__dialog{background:var(--haze-color-bg);border-radius:var(--haze-radius-xl);padding:var(--haze-space-6);box-shadow:var(--haze-shadow-xl);width:100%;max-width:480px;font-family:var(--haze-font-sans);color:var(--haze-color-text)}.haze-ConfirmDialog__header{margin-bottom:var(--haze-space-4);font-size:var(--haze-text-lg);font-weight:var(--haze-weight-semibold)}.haze-ConfirmDialog__body{margin-bottom:var(--haze-space-6);font-size:var(--haze-text-sm);color:var(--haze-color-text-muted);line-height:var(--haze-leading-relaxed)}.haze-ConfirmDialog__footer{justify-content:flex-end;gap:var(--haze-space-3);display:flex}.haze-ConfirmDialog__btn{padding:var(--haze-space-2) var(--haze-space-4);border-radius:var(--haze-radius-md);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);font-weight:var(--haze-weight-medium);cursor:pointer;transition:background .15s,border-color .15s}.haze-ConfirmDialog__cancelBtn{background:var(--haze-color-bg);border:1px solid var(--haze-color-border);color:var(--haze-color-text)}.haze-ConfirmDialog__cancelBtn:hover{background:var(--haze-color-muted)}.haze-ConfirmDialog__confirmBtn{background:var(--haze-color-primary);border:1px solid var(--haze-color-primary);color:var(--haze-color-bg)}.haze-ConfirmDialog__confirmBtn:hover{opacity:.9}.haze-ConfirmDialog__dangerBtn{background:var(--haze-color-danger,#dc2626);border:1px solid var(--haze-color-danger,#dc2626);color:#fff}.haze-ConfirmDialog__dangerBtn:hover{opacity:.9}
33
34
  .haze-Container__container{width:100%;padding-left:var(--haze-space-4);padding-right:var(--haze-space-4);font-family:var(--haze-font-sans);margin-left:auto;margin-right:auto}.haze-Container__sm{max-width:640px}.haze-Container__md{max-width:768px}.haze-Container__lg{max-width:1024px}.haze-Container__xl{max-width:1280px}.haze-Container__full{max-width:100%}
34
35
  .haze-ContextMenu__wrapper{display:inline-block;position:relative}
@@ -36,21 +37,24 @@
36
37
  .haze-ContextMenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);cursor:pointer;font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text);border-radius:var(--haze-radius-sm);text-align:left;background:0 0;border:none;align-items:center;transition:background .15s;display:flex}.haze-ContextMenuItem__item:hover{background:var(--haze-color-muted)}.haze-ContextMenuItem__item:active{background:var(--haze-color-bg-subtle)}.haze-ContextMenuItem__item:disabled{opacity:.5;cursor:not-allowed}
37
38
  .haze-ContextMenuSeparator__separator{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
38
39
  .haze-ContextMenuTrigger__trigger{display:contents}
40
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
39
41
  .haze-ConversationItem__item{align-items:center;gap:var(--haze-space-3);padding:var(--haze-space-3) var(--haze-space-4);cursor:pointer;border-radius:var(--haze-radius-md);text-align:left;width:100%;font-family:var(--haze-font-sans);color:var(--haze-color-text);background:0 0;border:none;transition:background .15s;display:flex}.haze-ConversationItem__item:hover,.haze-ConversationItem__activeItem{background:var(--haze-color-muted)}.haze-ConversationItem__body{flex:1;min-width:0}.haze-ConversationItem__titleStyle{font-size:var(--haze-text-sm);font-weight:var(--haze-weight-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.haze-ConversationItem__subtitleStyle{font-size:var(--haze-text-xs);color:var(--haze-color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:var(--haze-space-0);overflow:hidden}.haze-ConversationItem__endSlot{flex-shrink:0}
40
42
  .haze-ConversationList__list{font-family:var(--haze-font-sans);flex-direction:column;display:flex;overflow-y:auto}
41
43
  .haze-DateRangePickerCore__container{-webkit-box-flex-wrap:wrap;align-items:center;gap:var(--haze-space-2);font-family:var(--haze-font-sans);flex-wrap:wrap;display:inline-flex}.haze-DateRangePickerCore__input{padding:var(--haze-space-2) var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);outline:none;transition:border-color .15s,box-shadow .15s}.haze-DateRangePickerCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring)}.haze-DateRangePickerCore__input:disabled{opacity:.5;cursor:not-allowed}.haze-DateRangePickerCore__sep{color:var(--haze-color-text-muted);font-size:var(--haze-text-sm)}
42
- .haze-Calendar__calendarWrapper{padding:var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm)}.haze-Calendar__header{-webkit-box-pack:justify;align-items:center;-ms-flex-pack:space-between;margin-bottom:var(--haze-space-2);justify-content:space-between;display:flex}.haze-Calendar__headerBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-1);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1}.haze-Calendar__headerBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__headerBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__headerTitle{font-weight:var(--haze-weight-medium);color:var(--haze-color-text)}.haze-Calendar__grid{display:-ms-grid;-ms-grid-columns:repeat(7, 1fr);text-align:center;grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.haze-Calendar__weekday{padding:var(--haze-space-1);font-weight:var(--haze-weight-medium);color:var(--haze-color-text-muted);font-size:var(--haze-text-xs)}.haze-Calendar__dayBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-2);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1.5;transition:background .1s}.haze-Calendar__dayBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__dayBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__dayBtn:disabled{opacity:.3;cursor:not-allowed}.haze-Calendar__daySelected{background:var(--haze-color-primary);color:var(--haze-color-text-inverse)}.haze-Calendar__daySelected:hover{background:var(--haze-color-primary-hover)}.haze-Calendar__dayOutside{color:var(--haze-color-text-muted)}
43
- .haze-DatepickerCore__wrapper{display:inline-block;position:relative}.haze-DatepickerCore__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-DatepickerCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-DatepickerCore__dropdown{z-index:1000;margin-top:var(--haze-space-1);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg);position:absolute;top:100%;left:0}.haze-DatepickerCore__hiddenStyle{display:none}
44
+ .haze-Calendar__calendarWrapper{padding:var(--haze-space-3);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm)}.haze-Calendar__header{-webkit-box-pack:justify;align-items:center;-ms-flex-pack:space-between;margin-bottom:var(--haze-space-2);justify-content:space-between;display:flex}.haze-Calendar__headerBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-1);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1}.haze-Calendar__headerBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__headerBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__headerTitle{font-weight:var(--haze-weight-medium);color:var(--haze-color-text)}.haze-Calendar__grid{display:-ms-grid;-ms-grid-columns:repeat(7, 1fr);text-align:center;grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.haze-Calendar__rowContents,.haze-Calendar__cellContents{display:contents}.haze-Calendar__weekday{padding:var(--haze-space-1);font-weight:var(--haze-weight-medium);color:var(--haze-color-text-muted);font-size:var(--haze-text-xs)}.haze-Calendar__dayBtn{appearance:none;color:var(--haze-color-text);cursor:pointer;padding:var(--haze-space-2);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);background:0 0;border:none;line-height:1.5;transition:background .1s}.haze-Calendar__dayBtn:hover{background:var(--haze-color-bg-subtle)}.haze-Calendar__dayBtn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Calendar__dayBtn:disabled{opacity:.3;cursor:not-allowed}.haze-Calendar__daySelected{background:var(--haze-color-primary);color:var(--haze-color-text-inverse)}.haze-Calendar__daySelected:hover{background:var(--haze-color-primary-hover)}.haze-Calendar__dayOutside{color:var(--haze-color-text-muted)}
45
+ .haze-DatepickerCore__wrapper{display:inline-block;position:relative}.haze-DatepickerCore__input{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:100%;color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);padding:var(--haze-space-2) var(--haze-space-3);line-height:var(--haze-leading-normal);cursor:pointer;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;display:block}.haze-DatepickerCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-DatepickerCore__dropdown{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg)}
46
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
44
47
  .haze-Dialog__overlay{border-radius:var(--haze-radius-xl);padding:var(--haze-space-6);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);box-shadow:var(--haze-shadow-xl);border:none;width:100%;max-width:480px}.haze-Dialog__overlay::backdrop{background:#0006}.haze-Dialog__overlay:focus-visible{box-shadow:var(--haze-shadow-xl),0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Dialog__titleText{margin:0 0 var(--haze-space-4);font-size:var(--haze-text-lg);font-weight:var(--haze-weight-semibold)}
45
48
  .haze-DiffViewer__wrapper{font-family:var(--haze-font-mono);font-size:var(--haze-text-xs);line-height:var(--haze-leading-relaxed);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);overflow:hidden}.haze-DiffViewer__header{padding:var(--haze-space-2) var(--haze-space-3);background:var(--haze-color-muted);font-size:var(--haze-text-xs);color:var(--haze-color-text-muted);border-bottom:1px solid var(--haze-color-border);display:flex}.haze-DiffViewer__body{overflow-x:auto}.haze-DiffViewer__line{min-height:1.25rem;display:flex}.haze-DiffViewer__lineNum{width:3rem;padding:0 var(--haze-space-2);text-align:right;color:var(--haze-color-text-muted);-webkit-user-select:none;user-select:none;border-right:1px solid var(--haze-color-border);flex-shrink:0}.haze-DiffViewer__lineContent{padding:0 var(--haze-space-3);white-space:pre;flex:1}.haze-DiffViewer__added{background:var(--haze-color-success-light,#dcfce7)}.haze-DiffViewer__removed{background:var(--haze-color-danger-light,#fee2e2)}.haze-DiffViewer__addedPrefix{color:var(--haze-color-success,#16a34a)}.haze-DiffViewer__removedPrefix{color:var(--haze-color-danger,#dc2626)}
46
49
  .haze-Disclosure__details{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);overflow:hidden}.haze-Disclosure__summaryStyle{-webkit-box-pack:justify;align-items:center;-ms-flex-pack:space-between;padding:var(--haze-space-3) var(--haze-space-4);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);font-weight:var(--haze-weight-medium);color:var(--haze-color-text);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;list-style:none;transition:background .15s;display:flex}.haze-Disclosure__summaryStyle:hover{background:var(--haze-color-bg-subtle)}.haze-Disclosure__summaryStyle:focus-visible{box-shadow:inset 0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Disclosure__summaryStyle::marker{display:none}.haze-Disclosure__summaryStyle::-webkit-details-marker{display:none}.haze-Disclosure__summaryStyle:after{content:"";border-right:2px solid var(--haze-color-text-muted);border-bottom:2px solid var(--haze-color-text-muted);-webkit-transition:-webkit-transform .2s;flex-shrink:0;width:8px;height:8px;transition:transform .2s;transform:rotate(-45deg)}details[open]>.haze-Disclosure__summaryStyle:after{transform:rotate(45deg)}.haze-Disclosure__content{padding:var(--haze-space-3) var(--haze-space-4);border-top:1px solid var(--haze-color-border);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);color:var(--haze-color-text-secondary);line-height:var(--haze-leading-normal)}
47
50
  .haze-Divider__base{background:var(--haze-color-border);border:none}.haze-Divider__horizontal{width:100%;height:1px}.haze-Divider__vertical{-ms-grid-row-align:stretch;align-self:stretch;width:1px;height:1em}
48
51
  .haze-Drawer__overlay{background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);border:none;max-width:100vw;max-height:100vh;padding:0;overflow:auto}.haze-Drawer__overlay::backdrop{background:#0006}.haze-Drawer__overlay:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Drawer__left{width:320px;min-width:280px;max-width:85vw;height:100vh;margin-left:0}.haze-Drawer__right{width:320px;min-width:280px;max-width:85vw;height:100vh;margin-left:auto}.haze-Drawer__top{width:100vw;height:320px;margin-top:0}.haze-Drawer__bottom{width:100vw;height:320px;margin-top:auto}
49
52
  .haze-DropdownMenu__wrapper{display:inline-block;position:relative}
50
- .haze-DropdownMenuContent__content{min-width:10rem;margin-top:var(--haze-space-1);padding:var(--haze-space-1);background:var(--haze-color-bg);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);box-shadow:var(--haze-shadow-md);z-index:50;position:absolute;top:100%}.haze-DropdownMenuContent__alignStart{left:0}.haze-DropdownMenuContent__alignCenter{left:50%;transform:translate(-50%)}.haze-DropdownMenuContent__alignEnd{right:0}
53
+ .haze-DropdownMenuContent__content{min-width:10rem;padding:var(--haze-space-1);background:var(--haze-color-bg);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);box-shadow:var(--haze-shadow-md)}
51
54
  .haze-DropdownMenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);cursor:pointer;font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text);border-radius:var(--haze-radius-sm);text-align:left;background:0 0;border:none;align-items:center;transition:background .15s;display:flex}.haze-DropdownMenuItem__item:hover{background:var(--haze-color-muted)}.haze-DropdownMenuItem__item:active{background:var(--haze-color-bg-subtle)}.haze-DropdownMenuItem__item:disabled{opacity:.5;cursor:not-allowed}
52
55
  .haze-DropdownMenuSeparator__separator{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
53
56
  .haze-DropdownMenuTrigger__trigger{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;padding:0}
57
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
54
58
  .haze-Empty__base{padding:var(--haze-space-8) var(--haze-space-4);color:var(--haze-color-text-muted);font-family:var(--haze-font-sans);flex-direction:column;justify-content:center;align-items:center;display:flex}.haze-Empty__imageStyle{margin-bottom:var(--haze-space-4)}.haze-Empty__descStyle{font-size:var(--haze-text-sm)}.haze-Empty__actionStyle{margin-top:var(--haze-space-4)}
55
59
  .haze-FileInput__hiddenInput{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;position:absolute;overflow:hidden}.haze-FileInput__trigger{justify-content:center;align-items:center;gap:var(--haze-space-2);padding:var(--haze-space-2) var(--haze-space-4);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);font-weight:var(--haze-weight-medium);cursor:pointer;transition:background .15s,border-color .15s;display:inline-flex}.haze-FileInput__trigger:hover{border-color:var(--haze-color-border-hover);background:var(--haze-color-bg-subtle)}.haze-FileInput__trigger:focus-within{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring)}
56
60
  .haze-Flex__base{display:flex}
@@ -64,9 +68,10 @@
64
68
  .haze-ListItem__item{padding:var(--haze-space-1) 0}
65
69
  .haze-LogViewer__wrapper{font-family:var(--haze-font-mono);font-size:var(--haze-text-xs);line-height:var(--haze-leading-relaxed);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);overflow:hidden}.haze-LogViewer__toolbar{gap:var(--haze-space-1);padding:var(--haze-space-2) var(--haze-space-3);background:var(--haze-color-muted);border-bottom:1px solid var(--haze-color-border);display:flex}.haze-LogViewer__filterBtn{padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-sm);cursor:pointer;font-size:var(--haze-text-xs);font-family:var(--haze-font-mono);color:var(--haze-color-text-muted);background:0 0;border:1px solid #0000;transition:background .15s,border-color .15s}.haze-LogViewer__filterBtn:hover{background:var(--haze-color-bg)}.haze-LogViewer__filterActive{background:var(--haze-color-bg);border-color:var(--haze-color-border);color:var(--haze-color-text)}.haze-LogViewer__body{max-height:24rem;padding:var(--haze-space-2) 0;overflow-y:auto}.haze-LogViewer__entry{gap:var(--haze-space-3);padding:var(--haze-space-0) var(--haze-space-3);display:flex}.haze-LogViewer__timestamp{color:var(--haze-color-text-muted);flex-shrink:0}.haze-LogViewer__levelBadge{text-align:center;text-transform:uppercase;width:3rem;font-weight:var(--haze-weight-medium);flex-shrink:0}.haze-LogViewer__levelDebug{color:var(--haze-color-text-muted)}.haze-LogViewer__levelInfo{color:var(--haze-color-primary)}.haze-LogViewer__levelWarn{color:var(--haze-color-warning,#eab308)}.haze-LogViewer__levelError{color:var(--haze-color-danger,#dc2626)}.haze-LogViewer__messageStyle{word-break:break-all;color:var(--haze-color-text);flex:1}
66
70
  .haze-MarkdownRenderer__wrapper{font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);line-height:var(--haze-leading-relaxed);color:var(--haze-color-text);word-break:break-word}.haze-MarkdownRenderer__wrapper h1,.haze-MarkdownRenderer__wrapper h2,.haze-MarkdownRenderer__wrapper h3,.haze-MarkdownRenderer__wrapper h4,.haze-MarkdownRenderer__wrapper h5,.haze-MarkdownRenderer__wrapper h6{font-weight:var(--haze-weight-semibold);margin-top:var(--haze-space-4);margin-bottom:var(--haze-space-2);line-height:var(--haze-leading-tight)}.haze-MarkdownRenderer__wrapper h1{font-size:var(--haze-text-2xl)}.haze-MarkdownRenderer__wrapper h2{font-size:var(--haze-text-xl)}.haze-MarkdownRenderer__wrapper h3{font-size:var(--haze-text-lg)}.haze-MarkdownRenderer__wrapper h4{font-size:var(--haze-text-base)}.haze-MarkdownRenderer__wrapper p{margin-bottom:var(--haze-space-3)}.haze-MarkdownRenderer__wrapper ul,.haze-MarkdownRenderer__wrapper ol{margin-bottom:var(--haze-space-3);padding-left:var(--haze-space-6)}.haze-MarkdownRenderer__wrapper li{margin-bottom:var(--haze-space-1)}.haze-MarkdownRenderer__wrapper code{font-family:var(--haze-font-mono);background:var(--haze-color-muted);border-radius:var(--haze-radius-sm);padding:.125em .375em;font-size:.875em}.haze-MarkdownRenderer__wrapper pre{margin-bottom:var(--haze-space-3);padding:var(--haze-space-4);background:var(--haze-color-muted);border-radius:var(--haze-radius-md);overflow-x:auto}.haze-MarkdownRenderer__wrapper pre code{background:0 0;padding:0}.haze-MarkdownRenderer__wrapper blockquote{margin-bottom:var(--haze-space-3);padding-left:var(--haze-space-4);border-left:3px solid var(--haze-color-border);color:var(--haze-color-text-muted)}.haze-MarkdownRenderer__wrapper a{color:var(--haze-color-primary);-webkit-text-decoration:underline;text-decoration:underline}.haze-MarkdownRenderer__wrapper table{width:100%;margin-bottom:var(--haze-space-3);border-collapse:collapse}.haze-MarkdownRenderer__wrapper th,.haze-MarkdownRenderer__wrapper td{padding:var(--haze-space-2) var(--haze-space-3);border:1px solid var(--haze-color-border);text-align:left}.haze-MarkdownRenderer__wrapper th{background:var(--haze-color-muted);font-weight:var(--haze-weight-medium)}.haze-MarkdownRenderer__wrapper hr{margin:var(--haze-space-4) 0;border:none;border-top:1px solid var(--haze-color-border)}.haze-MarkdownRenderer__wrapper img{border-radius:var(--haze-radius-md);max-width:100%}
67
- .haze-Menu__container{display:inline-flex;position:relative}.haze-Menu__panel{z-index:1000;margin-top:var(--haze-space-1);min-width:160px;padding:var(--haze-space-1) 0;border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg);position:absolute;top:100%;left:0}.haze-Menu__hidden{display:none}
71
+ .haze-Menu__container{display:inline-flex;position:relative}.haze-Menu__panel{min-width:160px;padding:var(--haze-space-1) 0;border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);box-shadow:var(--haze-shadow-lg)}
68
72
  .haze-MenuDivider__divider{height:1px;margin:var(--haze-space-1) 0;background:var(--haze-color-border)}
69
73
  .haze-MenuItem__item{width:100%;padding:var(--haze-space-2) var(--haze-space-3);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;transition:background .1s;display:flex}.haze-MenuItem__item:hover{background:var(--haze-color-bg-subtle)}.haze-MenuItem__item:active{background:var(--haze-color-bg-muted)}.haze-MenuItem__item:focus-visible{background:var(--haze-color-bg-subtle);box-shadow:inset 0 0 0 2px var(--haze-color-focus-ring);outline:none}.haze-MenuItem__item:disabled{opacity:.5;cursor:not-allowed}
74
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
70
75
  .haze-ModelPicker__wrapper{font-family:var(--haze-font-sans)}.haze-ModelPicker__select{width:100%;padding:var(--haze-space-2) var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);cursor:pointer;appearance:none;-webkit-background-position:right .75rem center;padding-right:var(--haze-space-8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;outline:none;transition:border-color .15s,box-shadow .15s}.haze-ModelPicker__select:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring)}.haze-ModelPicker__select:disabled{opacity:.5;cursor:not-allowed}
71
76
  .haze-NavLink__link{font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);color:var(--haze-color-text-muted);padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-sm);cursor:pointer;-webkit-text-decoration:none;text-decoration:none;transition:color .15s,background .15s}.haze-NavLink__link:hover{color:var(--haze-color-text);background:var(--haze-color-muted)}.haze-NavLink__activeLink{color:var(--haze-color-primary);font-weight:var(--haze-weight-medium)}
72
77
  .haze-NavigationBar__nav{-webkit-box-flex-wrap:wrap;align-items:center;gap:var(--haze-space-4);padding:var(--haze-space-3) var(--haze-space-4);background:var(--haze-color-bg);border-bottom:1px solid var(--haze-color-border);font-family:var(--haze-font-sans);flex-wrap:wrap;display:flex}.haze-NavigationBar__brand{font-size:var(--haze-text-lg);font-weight:var(--haze-weight-bold);color:var(--haze-color-text);white-space:nowrap;-webkit-text-decoration:none;text-decoration:none}.haze-NavigationBar__links{align-items:center;gap:var(--haze-space-3);flex:1;display:flex}.haze-NavigationBar__endSlot{align-items:center;gap:var(--haze-space-2);margin-left:auto;display:flex}
@@ -74,7 +79,8 @@
74
79
  .haze-OTPInputCore__container{gap:var(--haze-space-2);font-family:var(--haze-font-sans);display:inline-flex}.haze-OTPInputCore__cell{text-align:center;width:2.5rem;height:2.75rem;font-size:var(--haze-text-lg);font-family:var(--haze-font-mono);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);outline:none;transition:border-color .15s,box-shadow .15s}.haze-OTPInputCore__cell:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring)}
75
80
  .haze-Pagination__nav{align-items:center;gap:var(--haze-space-1);font-family:var(--haze-font-sans);display:flex}.haze-Pagination__btn{min-width:2.25rem;height:2.25rem;padding:0 var(--haze-space-2);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);font-size:var(--haze-text-sm);cursor:pointer;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:inline-flex}.haze-Pagination__btn:hover:not(:disabled){background:var(--haze-color-bg-subtle);border-color:var(--haze-color-border-hover)}.haze-Pagination__btn:disabled{opacity:.5;cursor:not-allowed}.haze-Pagination__btn:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Pagination__activeBtn{background:var(--haze-color-primary);border-color:var(--haze-color-primary);color:var(--haze-color-text-inverse)}.haze-Pagination__activeBtn:hover:not(:disabled){background:var(--haze-color-primary-hover);border-color:var(--haze-color-primary-hover)}.haze-Pagination__ellipsis{min-width:2.25rem;height:2.25rem;color:var(--haze-color-text-muted);font-size:var(--haze-text-sm);justify-content:center;align-items:center;display:inline-flex}.haze-Pagination__sm button{min-width:2rem;height:2rem;font-size:var(--haze-text-xs)}.haze-Pagination__lg button{min-width:40px;height:40px;font-size:var(--haze-text-base)}
76
81
  .haze-PasswordInputCore__wrapper{width:100%;font-family:var(--haze-font-sans);display:inline-flex;position:relative}.haze-PasswordInputCore__input{width:100%;padding:var(--haze-space-2) var(--haze-space-3);padding-right:var(--haze-space-10);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);color:var(--haze-color-text);font-size:var(--haze-text-sm);font-family:var(--haze-font-sans);outline:none;transition:border-color .15s,box-shadow .15s}.haze-PasswordInputCore__input:focus{border-color:var(--haze-color-primary);box-shadow:0 0 0 3px var(--haze-color-focus-ring)}.haze-PasswordInputCore__input:disabled{opacity:.5;cursor:not-allowed}.haze-PasswordInputCore__toggle{right:var(--haze-space-2);padding:var(--haze-space-2);cursor:pointer;min-width:2.5rem;min-height:2.5rem;color:var(--haze-color-text-muted);font-size:var(--haze-text-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.haze-PasswordInputCore__toggle:hover{color:var(--haze-color-text)}
77
- .haze-Popover__container{display:inline-flex;position:relative}.haze-Popover__panelVisuals{padding:var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);box-shadow:var(--haze-shadow-lg);min-width:200px}.haze-Popover__panelFallback{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-Popover__hidden{display:none}.haze-Popover__panelNative{margin:0;inset:auto}.haze-Popover__panelAnchored{position-anchor:var(--haze-popover-anchor);position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-Popover__panelJsPositioned{margin-top:var(--haze-space-1);position:fixed}
82
+ .haze-Popover__container{display:inline-flex;position:relative}.haze-Popover__panelVisuals{padding:var(--haze-space-3);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-lg);background:var(--haze-color-bg);color:var(--haze-color-text);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);box-shadow:var(--haze-shadow-lg);min-width:200px}
83
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
78
84
  .haze-Progress__barBase{background:var(--haze-color-bg-muted);border-radius:var(--haze-radius-full);width:100%;overflow:hidden}.haze-Progress__sm{width:32px;height:32px}.haze-Progress__md{width:48px;height:48px}.haze-Progress__lg{width:64px;height:64px}.haze-Progress__barFill{border-radius:var(--haze-radius-full);height:100%;transition:width .3s}.haze-Progress__primary{stroke:var(--haze-color-primary)}.haze-Progress__success{stroke:var(--haze-color-success)}.haze-Progress__warning{stroke:var(--haze-color-warning)}.haze-Progress__danger{stroke:var(--haze-color-danger)}.haze-Progress__circleBase{transform:rotate(-90deg)}.haze-Progress__circleBg{fill:none;stroke:var(--haze-color-bg-muted)}.haze-Progress__circleFill{fill:none;stroke-linecap:round;transition:stroke-dashoffset .3s}
79
85
  .haze-Radio__radioInput{appearance:none;border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-full);background:var(--haze-color-bg);cursor:pointer;flex-shrink:0;width:1.125rem;height:1.125rem;margin:.4375rem;transition:background .15s,border-color .15s,box-shadow .15s;position:relative}.haze-Radio__radioInput:hover{border-color:var(--haze-color-border-hover)}.haze-Radio__radioInput:focus-visible{box-shadow:0 0 0 3px var(--haze-color-focus-ring);outline:none}.haze-Radio__radioInput:checked{border-color:var(--haze-color-primary)}.haze-Radio__radioInput:checked:after{content:"";border-radius:var(--haze-radius-full);background:var(--haze-color-primary);width:10px;height:10px;position:absolute;top:3px;left:3px}.haze-Radio__radioInput:disabled{opacity:.5;cursor:not-allowed}.haze-Radio__labelStyle{align-items:center;gap:var(--haze-space-2);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);color:var(--haze-color-text);cursor:pointer;display:inline-flex}
80
86
  .haze-RadioGroupCore__base{gap:var(--haze-space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}
@@ -112,7 +118,8 @@
112
118
  .haze-ToastContainer__container{bottom:calc(var(--haze-space-4) + env(safe-area-inset-bottom));right:calc(var(--haze-space-4) + env(safe-area-inset-right));z-index:9999;gap:var(--haze-space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}
113
119
  .haze-TokenCounter__wrapper{font-family:var(--haze-font-sans);font-size:var(--haze-text-xs);color:var(--haze-color-text-muted)}.haze-TokenCounter__bar{background:var(--haze-color-muted);border-radius:var(--haze-radius-full);height:.25rem;margin-top:var(--haze-space-1);overflow:hidden}.haze-TokenCounter__fill{border-radius:var(--haze-radius-full);height:100%;transition:width .3s}.haze-TokenCounter__fillNormal{background:var(--haze-color-primary)}.haze-TokenCounter__fillWarning{background:var(--haze-color-warning,#eab308)}.haze-TokenCounter__fillDanger{background:var(--haze-color-danger,#dc2626)}.haze-TokenCounter__info{-webkit-box-pack:justify;-ms-flex-pack:space-between;justify-content:space-between;align-items:baseline;display:flex}.haze-TokenCounter__count{font-variant-numeric:tabular-nums}
114
120
  .haze-ToolCallCard__card{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);overflow:hidden}.haze-ToolCallCard__header{align-items:center;gap:var(--haze-space-2);padding:var(--haze-space-2) var(--haze-space-3);background:var(--haze-color-muted);font-family:var(--haze-font-mono);font-size:var(--haze-text-xs);display:flex}.haze-ToolCallCard__statusIcon{border-radius:var(--haze-radius-full);flex-shrink:0;width:.5rem;height:.5rem}.haze-ToolCallCard__statusPending{background:var(--haze-color-text-muted)}.haze-ToolCallCard__statusRunning{background:var(--haze-color-primary);animation:1.5s infinite pulse}.haze-ToolCallCard__statusDone{background:var(--haze-color-success,#16a34a)}.haze-ToolCallCard__statusError{background:var(--haze-color-danger,#dc2626)}.haze-ToolCallCard__body{padding:var(--haze-space-3)}.haze-ToolCallCard__section{margin-bottom:var(--haze-space-2)}.haze-ToolCallCard__sectionLabel{font-size:var(--haze-text-xs);color:var(--haze-color-text-muted);margin-bottom:var(--haze-space-1);text-transform:uppercase;letter-spacing:.05em}.haze-ToolCallCard__content{font-family:var(--haze-font-mono);font-size:var(--haze-text-xs);white-space:pre-wrap;word-break:break-all;color:var(--haze-color-text)}
115
- .haze-Tooltip__wrapper{display:inline-flex;position:relative}.haze-Tooltip__bubble{z-index:1000;padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-md);background:var(--haze-color-text);color:var(--haze-color-text-inverse);font-family:var(--haze-font-sans);font-size:var(--haze-text-xs);line-height:var(--haze-leading-normal);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;position:absolute}.haze-Tooltip__top{margin-bottom:var(--haze-space-1);bottom:100%;left:50%;transform:translate(-50%)}.haze-Tooltip__bottom{margin-top:var(--haze-space-1);top:100%;left:50%;transform:translate(-50%)}.haze-Tooltip__left{margin-right:var(--haze-space-1);top:50%;right:100%;transform:translateY(-50%)}.haze-Tooltip__right{margin-left:var(--haze-space-1);top:50%;left:100%;transform:translateY(-50%)}.haze-Tooltip__showOnInteract:hover>[role=tooltip],.haze-Tooltip__showOnInteract:focus-within>[role=tooltip]{opacity:1}
121
+ .haze-Tooltip__wrapper{display:inline-flex;position:relative}.haze-Tooltip__bubble{padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-md);background:var(--haze-color-text);color:var(--haze-color-text-inverse);font-family:var(--haze-font-sans);font-size:var(--haze-text-xs);line-height:var(--haze-leading-normal);white-space:nowrap;pointer-events:none}
122
+ .haze-floating__floatingNative{margin:0;inset:auto}.haze-floating__floatingAnchored{position-anchor:var(--haze-floating-anchor)}.haze-floating__floatingFixed{position:fixed}.haze-floating__floatingHidden{display:none}.haze-floating__anchoredBottom{position-area:bottom left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomSpan{position-area:bottom span-left;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomCenter{position-area:bottom center;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredBottomEnd{position-area:bottom right;margin-top:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredTop{position-area:top center;margin-bottom:var(--haze-space-1);position-try-fallbacks:flip-block}.haze-floating__anchoredLeft{position-area:left center;margin-right:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__anchoredRight{position-area:right center;margin-left:var(--haze-space-1);position-try-fallbacks:flip-inline}.haze-floating__fallbackBottom{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:0}.haze-floating__fallbackBottomCenter{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackBottomEnd{z-index:1000;margin-top:var(--haze-space-1);position:absolute;top:100%;right:0}.haze-floating__fallbackTop{z-index:1000;margin-bottom:var(--haze-space-1);position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.haze-floating__fallbackLeft{z-index:1000;margin-right:var(--haze-space-1);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.haze-floating__fallbackRight{z-index:1000;margin-left:var(--haze-space-1);position:absolute;top:50%;left:100%;transform:translateY(-50%)}.haze-floating__gapBelow{margin-top:var(--haze-space-1)}.haze-floating__gapAbove{margin-bottom:var(--haze-space-1)}.haze-floating__gapBefore{margin-right:var(--haze-space-1)}.haze-floating__gapAfter{margin-left:var(--haze-space-1)}
116
123
  .haze-Transfer__container{-webkit-box-flex-wrap:wrap;gap:var(--haze-space-4);font-family:var(--haze-font-sans);flex-wrap:wrap;display:flex}.haze-Transfer__panel{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);flex:1;min-width:200px;overflow:hidden}.haze-Transfer__panelHeader{padding:var(--haze-space-2) var(--haze-space-3);border-bottom:1px solid var(--haze-color-border);background:var(--haze-color-bg-subtle);font-size:var(--haze-text-sm);font-weight:var(--haze-weight-medium);color:var(--haze-color-text-secondary)}.haze-Transfer__panelBody{max-height:200px;padding:var(--haze-space-1);overflow-y:auto}.haze-Transfer__itemStyle{align-items:center;gap:var(--haze-space-2);padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-sm);font-size:var(--haze-text-sm);cursor:pointer;display:flex}.haze-Transfer__itemStyle:hover{background:var(--haze-color-bg-subtle)}.haze-Transfer__actions{justify-content:center;align-items:center;gap:var(--haze-space-2);flex-direction:column;display:flex}.haze-Transfer__actionBtn{border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-md);background:var(--haze-color-bg);width:2.25rem;height:2.25rem;color:var(--haze-color-text);font-size:var(--haze-text-sm);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.haze-Transfer__actionBtn:hover:not(:disabled){background:var(--haze-color-bg-subtle);border-color:var(--haze-color-border-hover)}.haze-Transfer__actionBtn:disabled{opacity:.5;cursor:not-allowed}
117
124
  .haze-Tree__base{font-family:var(--haze-font-sans);font-size:var(--haze-text-sm);color:var(--haze-color-text);overflow:auto}.haze-Tree__group{min-width:0}
118
125
  .haze-TreeItem__item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--haze-radius-sm);align-items:center;min-height:2rem;padding:2px 0;transition:background .15s;display:flex}.haze-TreeItem__item:hover{background:var(--haze-color-bg-subtle)}.haze-TreeItem__item:focus-visible{box-shadow:inset 0 0 0 2px var(--haze-color-focus-ring);outline:none}.haze-TreeItem__blockItem{padding:var(--haze-space-1) var(--haze-space-2);border-radius:var(--haze-radius-sm)}.haze-TreeItem__blockItem:hover{background:var(--haze-color-bg-subtle)}.haze-TreeItem__selectedStyle{background:var(--haze-color-primary-subtle);color:var(--haze-color-primary);font-weight:var(--haze-weight-medium)}.haze-TreeItem__disabledStyle{opacity:.5;cursor:not-allowed;pointer-events:none}.haze-TreeItem__switcher{cursor:pointer;width:1.5rem;height:1.5rem;color:var(--haze-color-text-muted);-webkit-transition:-webkit-transform .2s;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s;display:inline-flex}.haze-TreeItem__switcher:hover{color:var(--haze-color-text)}.haze-TreeItem__switcher svg{width:12px;height:12px}.haze-TreeItem__switcherExpanded{transform:rotate(90deg)}.haze-TreeItem__checkbox{width:1.25rem;height:1.25rem;margin-right:var(--haze-space-2);border:1px solid var(--haze-color-border);border-radius:var(--haze-radius-sm);background:var(--haze-color-bg);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.haze-TreeItem__checkbox:hover{border-color:var(--haze-color-primary)}.haze-TreeItem__checkbox svg{color:#fff;width:12px;height:12px}.haze-TreeItem__checkboxChecked,.haze-TreeItem__checkboxHalfChecked{background:var(--haze-color-primary);border-color:var(--haze-color-primary)}.haze-TreeItem__nodeIcon{width:16px;height:16px;margin-right:var(--haze-space-2);color:var(--haze-color-text-muted);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.haze-TreeItem__nodeIcon svg{width:16px;height:16px}.haze-TreeItem__title{font-size:var(--haze-text-sm);color:var(--haze-color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.haze-TreeItem__loadingIcon{animation:1s linear infinite spin-haze-TreeItem__loadingIcon;display:inline-flex}@keyframes spin-haze-TreeItem__loadingIcon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.haze-TreeItem__indentLine{flex-shrink:0;width:24px;display:inline-block}.haze-TreeItem__indentLineWithBorder{border-left:1px solid var(--haze-color-border)}
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { Control } from 'react-use-control';
2
+ import type { ControlOrValue } from 'react-use-control';
3
3
  type AlertProps = {
4
- visible?: Control<boolean> | boolean;
4
+ visible?: ControlOrValue<boolean>;
5
5
  onClose?: () => void;
6
6
  variant?: 'info' | 'success' | 'warning' | 'danger';
7
7
  closable?: boolean;
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { Control } from 'react-use-control';
2
+ import type { ControlOrValue } from 'react-use-control';
3
3
  type BannerProps = {
4
- visible?: Control<boolean> | boolean;
4
+ visible?: ControlOrValue<boolean>;
5
5
  onClose?: () => void;
6
6
  variant?: 'info' | 'success' | 'warning' | 'danger';
7
7
  children: ReactNode;
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { Control } from 'react-use-control';
2
+ import type { ControlOrValue } from 'react-use-control';
3
3
  type BottomSheetProps = {
4
- open?: Control<boolean> | boolean;
4
+ open?: ControlOrValue<boolean>;
5
5
  onClose?: () => void;
6
6
  children: ReactNode;
7
7
  className?: string;
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { Control } from 'react-use-control';
2
+ import type { ControlOrValue } from 'react-use-control';
3
3
  type CarouselProps = {
4
- value?: Control<number> | number;
4
+ value?: ControlOrValue<number>;
5
5
  autoPlay?: boolean;
6
6
  interval?: number;
7
7
  className?: string;
@@ -1,6 +1,6 @@
1
- import type { Control } from 'react-use-control';
1
+ import type { ControlOrValue } from 'react-use-control';
2
2
  type ChatInputProps = {
3
- value?: Control<string> | string;
3
+ value?: ControlOrValue<string>;
4
4
  onSend?: (message: string) => void;
5
5
  placeholder?: string;
6
6
  disabled?: boolean;