@humain/ui 2.2.7 → 2.2.9

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 (159) hide show
  1. package/dist/index101.js +2 -2
  2. package/dist/index101.js.map +1 -1
  3. package/dist/index103.js +3 -3
  4. package/dist/index103.js.map +1 -1
  5. package/dist/index108.js +1 -1
  6. package/dist/index108.js.map +1 -1
  7. package/dist/index117.js +1 -1
  8. package/dist/index117.js.map +1 -1
  9. package/dist/index122.js +6 -6
  10. package/dist/index122.js.map +1 -1
  11. package/dist/index126.js +1 -1
  12. package/dist/index126.js.map +1 -1
  13. package/dist/index130.js +2 -2
  14. package/dist/index130.js.map +1 -1
  15. package/dist/index146.js +4 -4
  16. package/dist/index146.js.map +1 -1
  17. package/dist/index152.js +1 -1
  18. package/dist/index152.js.map +1 -1
  19. package/dist/index154.js +2 -2
  20. package/dist/index154.js.map +1 -1
  21. package/dist/index166.js +1 -1
  22. package/dist/index166.js.map +1 -1
  23. package/dist/index168.js +1 -1
  24. package/dist/index168.js.map +1 -1
  25. package/dist/index169.js +1 -1
  26. package/dist/index169.js.map +1 -1
  27. package/dist/index173.js +2 -2
  28. package/dist/index173.js.map +1 -1
  29. package/dist/index175.js +4 -4
  30. package/dist/index175.js.map +1 -1
  31. package/dist/index176.js +2 -2
  32. package/dist/index176.js.map +1 -1
  33. package/dist/index177.js +2 -2
  34. package/dist/index177.js.map +1 -1
  35. package/dist/index184.js +1 -1
  36. package/dist/index184.js.map +1 -1
  37. package/dist/index191.js +3 -3
  38. package/dist/index191.js.map +1 -1
  39. package/dist/index192.js +2 -2
  40. package/dist/index192.js.map +1 -1
  41. package/dist/index201.js +2 -2
  42. package/dist/index201.js.map +1 -1
  43. package/dist/index204.js +4 -4
  44. package/dist/index204.js.map +1 -1
  45. package/dist/index228.js +1 -1
  46. package/dist/index228.js.map +1 -1
  47. package/dist/index229.js +1 -1
  48. package/dist/index229.js.map +1 -1
  49. package/dist/index24.js +2 -2
  50. package/dist/index24.js.map +1 -1
  51. package/dist/index5.js +1 -1
  52. package/dist/index5.js.map +1 -1
  53. package/dist/styles.css +1 -1
  54. package/dist/wc/AICodeBlock.js +41 -41
  55. package/dist/wc/AICodeBlock.js.map +1 -1
  56. package/dist/wc/AIMermaidDiagram.js +7 -7
  57. package/dist/wc/AIMermaidDiagram.js.map +1 -1
  58. package/dist/wc/AIMessage.js +6 -6
  59. package/dist/wc/AIMessage.js.map +1 -1
  60. package/dist/wc/AISource.js +2 -2
  61. package/dist/wc/AISource.js.map +1 -1
  62. package/dist/wc/AIToolCall.js +1 -1
  63. package/dist/wc/AIToolCall.js.map +1 -1
  64. package/dist/wc/Breadcrumb.js +43 -43
  65. package/dist/wc/Breadcrumb.js.map +1 -1
  66. package/dist/wc/DropdownMenu.js +9 -9
  67. package/dist/wc/DropdownMenu.js.map +1 -1
  68. package/dist/wc/Kbd.js +22 -22
  69. package/dist/wc/Kbd.js.map +1 -1
  70. package/dist/wc/button.js +7 -7
  71. package/dist/wc/button.js.map +1 -1
  72. package/dist/wc/close-button.js +19 -19
  73. package/dist/wc/close-button.js.map +1 -1
  74. package/dist/wc/hf-ai-prompt-suggestion.js +14 -14
  75. package/dist/wc/hf-ai-prompt-suggestion.js.map +1 -1
  76. package/dist/wc/hf-ai-reasoning-block.js +13 -13
  77. package/dist/wc/hf-ai-reasoning-block.js.map +1 -1
  78. package/dist/wc/hf-ai-steps.js +53 -53
  79. package/dist/wc/hf-ai-steps.js.map +1 -1
  80. package/dist/wc/hf-ai-system-message.js +26 -26
  81. package/dist/wc/hf-ai-system-message.js.map +1 -1
  82. package/dist/wc/hf-code-snippet.js +35 -35
  83. package/dist/wc/hf-code-snippet.js.map +1 -1
  84. package/dist/wc/hf-command-menu.js +39 -39
  85. package/dist/wc/hf-command-menu.js.map +1 -1
  86. package/dist/wc/hf-data-table.js +3 -3
  87. package/dist/wc/hf-data-table.js.map +1 -1
  88. package/dist/wc/hf-display-value.js +50 -50
  89. package/dist/wc/hf-display-value.js.map +1 -1
  90. package/dist/wc/hf-nav-account-menu.js +5 -5
  91. package/dist/wc/hf-nav-account-menu.js.map +1 -1
  92. package/dist/wc/hf-rich-textarea.js +1 -1
  93. package/dist/wc/hf-rich-textarea.js.map +1 -1
  94. package/dist/wc/hf-steps.js +8 -8
  95. package/dist/wc/hf-steps.js.map +1 -1
  96. package/dist/wc/markdown-renderer.js +1 -1
  97. package/dist/wc/markdown-renderer.js.map +1 -1
  98. package/dist/wc/selection-group.js +26 -26
  99. package/dist/wc/selection-group.js.map +1 -1
  100. package/dist/wc/syntax-highlight.js +4 -4
  101. package/dist/wc/syntax-highlight.js.map +1 -1
  102. package/dist/wc/workflow-step-renderer.js +51 -51
  103. package/dist/wc/workflow-step-renderer.js.map +1 -1
  104. package/dist/wc-react/AICodeBlock.js +17 -17
  105. package/dist/wc-react/AICodeBlock.js.map +1 -1
  106. package/dist/wc-react/AIMermaidDiagram.js +16 -16
  107. package/dist/wc-react/AIMermaidDiagram.js.map +1 -1
  108. package/dist/wc-react/AIMessage.js +7 -7
  109. package/dist/wc-react/AIMessage.js.map +1 -1
  110. package/dist/wc-react/AISource.js +41 -41
  111. package/dist/wc-react/AISource.js.map +1 -1
  112. package/dist/wc-react/AIToolCall.js +6 -6
  113. package/dist/wc-react/AIToolCall.js.map +1 -1
  114. package/dist/wc-react/Breadcrumb.js +18 -18
  115. package/dist/wc-react/Breadcrumb.js.map +1 -1
  116. package/dist/wc-react/DropdownMenu.js +27 -27
  117. package/dist/wc-react/DropdownMenu.js.map +1 -1
  118. package/dist/wc-react/Kbd.js +17 -17
  119. package/dist/wc-react/Kbd.js.map +1 -1
  120. package/dist/wc-react/button.js +12 -12
  121. package/dist/wc-react/button.js.map +1 -1
  122. package/dist/wc-react/close-button.js +19 -19
  123. package/dist/wc-react/close-button.js.map +1 -1
  124. package/dist/wc-react/hf-ai-prompt-suggestion.js +1 -1
  125. package/dist/wc-react/hf-ai-prompt-suggestion.js.map +1 -1
  126. package/dist/wc-react/hf-ai-reasoning-block.js +1 -1
  127. package/dist/wc-react/hf-ai-reasoning-block.js.map +1 -1
  128. package/dist/wc-react/hf-ai-steps.js +33 -33
  129. package/dist/wc-react/hf-ai-steps.js.map +1 -1
  130. package/dist/wc-react/hf-ai-system-message.js +9 -9
  131. package/dist/wc-react/hf-ai-system-message.js.map +1 -1
  132. package/dist/wc-react/hf-code-snippet.js +3 -3
  133. package/dist/wc-react/hf-code-snippet.js.map +1 -1
  134. package/dist/wc-react/hf-command-menu.js +56 -56
  135. package/dist/wc-react/hf-command-menu.js.map +1 -1
  136. package/dist/wc-react/hf-data-table.js +3 -3
  137. package/dist/wc-react/hf-data-table.js.map +1 -1
  138. package/dist/wc-react/hf-display-value.js +58 -58
  139. package/dist/wc-react/hf-display-value.js.map +1 -1
  140. package/dist/wc-react/hf-nav-account-menu.js +7 -7
  141. package/dist/wc-react/hf-nav-account-menu.js.map +1 -1
  142. package/dist/wc-react/hf-rich-textarea.js +5 -5
  143. package/dist/wc-react/hf-rich-textarea.js.map +1 -1
  144. package/dist/wc-react/hf-steps.js +2 -2
  145. package/dist/wc-react/hf-steps.js.map +1 -1
  146. package/dist/wc-react/markdown-renderer.js +1 -1
  147. package/dist/wc-react/markdown-renderer.js.map +1 -1
  148. package/dist/wc-react/selection-group.js +7 -7
  149. package/dist/wc-react/selection-group.js.map +1 -1
  150. package/dist/wc-react/syntax-highlight.js +4 -4
  151. package/dist/wc-react/syntax-highlight.js.map +1 -1
  152. package/dist/wc-react/workflow-step-renderer.js +44 -44
  153. package/dist/wc-react/workflow-step-renderer.js.map +1 -1
  154. package/package.json +1 -1
  155. package/skills/humain-ui/SKILL.md +1 -1
  156. package/skills/humain-ui-wc/SKILL.md +1 -1
  157. package/skills/humain-ui-wc.skill +0 -0
  158. package/skills/humain-ui.skill +0 -0
  159. package/src/tokens.css +4 -0
@@ -1,6 +1,6 @@
1
- import { a as G } from "./rolldown-runtime.js";
2
- import { i as U, n as V, t as W } from "./vendor/react.js";
3
- import { n as l } from "./utils.js";
1
+ import { a as U } from "./rolldown-runtime.js";
2
+ import { i as V, n as q, t as W } from "./vendor/react.js";
3
+ import { n as c } from "./utils.js";
4
4
  import { c as Z, s as S } from "./_shared.js";
5
5
  import { t as $ } from "./createLucideIcon.js";
6
6
  import { t as R } from "./arrow-down.js";
@@ -10,14 +10,14 @@ import { t as J } from "./settings.js";
10
10
  import { t as Q } from "./Avatar.js";
11
11
  import { n as Y, t as ee } from "./button.js";
12
12
  import { t as A } from "./Kbd.js";
13
- import { a as te, c as se, i as re, n as ne, o as ae, r as oe, s as ie, t as le } from "./command.js";
14
- var ce = [["path", {
13
+ import { a as te, c as se, i as re, n as ne, o as ae, r as oe, s as ie, t as ce } from "./command.js";
14
+ var le = [["path", {
15
15
  d: "M20 4v7a4 4 0 0 1-4 4H4",
16
16
  key: "6o5b7l"
17
17
  }], ["path", {
18
18
  d: "m9 10-5 5 5 5",
19
19
  key: "1kshq7"
20
- }]], me = $("corner-down-left", ce), i = /* @__PURE__ */ G(U(), 1), t = W(), w = 336, z = "Type a command or search...", de = "w-full max-w-[508px] overflow-hidden rounded-xl border border-input bg-background shadow-lg";
20
+ }]], de = $("corner-down-left", le), i = /* @__PURE__ */ U(V(), 1), t = W(), w = 336, z = "Type a command or search...", me = "w-full max-w-[508px] overflow-hidden rounded-xl border border-input bg-background shadow-lg";
21
21
  function ue(e) {
22
22
  return Number.isFinite(e) && e >= 0 ? e : w;
23
23
  }
@@ -31,7 +31,7 @@ function E({ children: e, className: s }) {
31
31
  return /* @__PURE__ */ (0, t.jsx)(A, {
32
32
  variant: "solid",
33
33
  size: "sm",
34
- className: l("shadow-xs", s),
34
+ className: c("shadow-xs", s),
35
35
  children: e
36
36
  });
37
37
  }
@@ -40,14 +40,14 @@ function _({ children: e, className: s }) {
40
40
  return /* @__PURE__ */ (0, t.jsx)(A, {
41
41
  variant: "footer",
42
42
  size: "sm",
43
- className: l("p-1.5", s),
43
+ className: c("p-1.5", s),
44
44
  children: e
45
45
  });
46
46
  }
47
47
  _.displayName = "CommandMenu.FooterNavIcon";
48
48
  function D({ children: e, className: s }) {
49
49
  return /* @__PURE__ */ (0, t.jsx)("span", {
50
- className: l("text-sm font-semibold text-text-quaternary", s),
50
+ className: c("text-sm font-semibold text-secondary-foreground", s),
51
51
  children: e
52
52
  });
53
53
  }
@@ -56,19 +56,19 @@ var pe = [
56
56
  {
57
57
  keys: /* @__PURE__ */ (0, t.jsxs)("div", {
58
58
  className: "flex items-center gap-1",
59
- children: [/* @__PURE__ */ (0, t.jsx)(_, { children: /* @__PURE__ */ (0, t.jsx)(X, { className: "size-2.5 text-text-quaternary" }) }), /* @__PURE__ */ (0, t.jsx)(_, { children: /* @__PURE__ */ (0, t.jsx)(R, { className: "size-2.5 text-text-quaternary" }) })]
59
+ children: [/* @__PURE__ */ (0, t.jsx)(_, { children: /* @__PURE__ */ (0, t.jsx)(X, { className: "size-2.5 text-secondary-foreground" }) }), /* @__PURE__ */ (0, t.jsx)(_, { children: /* @__PURE__ */ (0, t.jsx)(R, { className: "size-2.5 text-secondary-foreground" }) })]
60
60
  }),
61
61
  label: "to navigate"
62
62
  },
63
63
  {
64
- keys: /* @__PURE__ */ (0, t.jsx)(_, { children: /* @__PURE__ */ (0, t.jsx)(me, { className: "size-2.5 text-text-quaternary" }) }),
64
+ keys: /* @__PURE__ */ (0, t.jsx)(_, { children: /* @__PURE__ */ (0, t.jsx)(de, { className: "size-2.5 text-secondary-foreground" }) }),
65
65
  label: "to select"
66
66
  },
67
67
  {
68
68
  keys: /* @__PURE__ */ (0, t.jsx)(_, {
69
69
  className: "px-1.5 py-1",
70
70
  children: /* @__PURE__ */ (0, t.jsx)("span", {
71
- className: "text-xs font-semibold text-text-quaternary",
71
+ className: "text-xs font-semibold text-secondary-foreground",
72
72
  children: "esc"
73
73
  })
74
74
  }),
@@ -78,7 +78,7 @@ var pe = [
78
78
  function L({ hints: e = pe, showSettingsButton: s = !1, onSettingsClick: r, className: n }) {
79
79
  return /* @__PURE__ */ (0, t.jsxs)("div", {
80
80
  "data-slot": "command-menu-footer",
81
- className: l("flex items-center gap-3 border-t border-border bg-card/80 py-2 pe-2 ps-[18px] supports-backdrop-filter:backdrop-blur", n),
81
+ className: c("flex items-center gap-3 border-t border-border bg-card/80 py-2 pe-2 ps-[18px] supports-backdrop-filter:backdrop-blur", n),
82
82
  children: [/* @__PURE__ */ (0, t.jsx)("div", {
83
83
  className: "hidden flex-1 items-start gap-4 [@media(hover:hover)]:flex",
84
84
  children: e.map((a) => /* @__PURE__ */ (0, t.jsxs)("div", {
@@ -103,7 +103,7 @@ function H({ option: e, onSelect: s, className: r, ...n }) {
103
103
  disabled: e.disabled,
104
104
  showCheckIndicator: !1,
105
105
  onSelect: () => s?.(e.id, e),
106
- className: l("flex cursor-pointer items-center gap-2 transition-colors duration-150 motion-reduce:transition-none", r),
106
+ className: c("flex cursor-pointer items-center gap-2 transition-colors duration-150 motion-reduce:transition-none", r),
107
107
  ...n,
108
108
  children: [
109
109
  e.avatar && /* @__PURE__ */ (0, t.jsx)(Q, {
@@ -137,7 +137,7 @@ H.displayName = "CommandMenu.Item";
137
137
  function F({ children: e, className: s, ...r }) {
138
138
  return /* @__PURE__ */ (0, t.jsx)("h3", {
139
139
  "data-slot": "command-menu-group-header",
140
- className: l("px-2 py-1.5 text-xs font-medium text-muted-foreground", s),
140
+ className: c("px-2 py-1.5 text-xs font-medium text-muted-foreground", s),
141
141
  ...r,
142
142
  children: e
143
143
  });
@@ -167,11 +167,11 @@ function he({ children: e, groups: s, options: r, optionRenderer: n }) {
167
167
  children: r.map(n)
168
168
  }));
169
169
  }
170
- function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeholder: o, emptyText: d, emptyState: u, showShortcut: p, shortcutText: h, showFooter: f, footerHints: x, showSettingsButton: C, onSettingsClick: b, maxHeight: g, filter: N }) {
171
- const v = ue(g), y = (c) => /* @__PURE__ */ (0, t.jsx)(H, {
172
- option: c,
170
+ function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeholder: o, emptyText: m, emptyState: u, showShortcut: p, shortcutText: h, showFooter: f, footerHints: x, showSettingsButton: C, onSettingsClick: b, maxHeight: g, filter: N }) {
171
+ const v = ue(g), y = (l) => /* @__PURE__ */ (0, t.jsx)(H, {
172
+ option: l,
173
173
  onSelect: n
174
- }, c.id);
174
+ }, l.id);
175
175
  return /* @__PURE__ */ (0, t.jsxs)(ie, {
176
176
  filter: N,
177
177
  className: "rounded-none border-0 shadow-none",
@@ -180,10 +180,10 @@ function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeh
180
180
  /* @__PURE__ */ (0, t.jsx)("search", {
181
181
  "aria-label": "Command menu search",
182
182
  className: "block border-b border-input bg-background",
183
- children: /* @__PURE__ */ (0, t.jsx)(re, { render: ({ clearSearch: c, value: m, ...q }) => {
184
- const k = typeof a == "function", B = () => {
185
- if (m) {
186
- c();
183
+ children: /* @__PURE__ */ (0, t.jsx)(re, { render: ({ clearSearch: l, value: d, ...B }) => {
184
+ const k = typeof a == "function", G = () => {
185
+ if (d) {
186
+ l();
187
187
  return;
188
188
  }
189
189
  a?.();
@@ -198,8 +198,8 @@ function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeh
198
198
  "aria-hidden": "true"
199
199
  }),
200
200
  /* @__PURE__ */ (0, t.jsx)("input", {
201
- ...q,
202
- value: m,
201
+ ...B,
202
+ value: d,
203
203
  placeholder: o,
204
204
  "aria-label": o,
205
205
  className: "min-w-0 flex-1 bg-transparent text-sm leading-5 text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50"
@@ -208,9 +208,9 @@ function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeh
208
208
  /* @__PURE__ */ (0, t.jsx)(Y, {
209
209
  size: "icon-xs",
210
210
  className: "-me-1 rounded-sm p-0 opacity-50 hover:opacity-80 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4",
211
- disabled: !m && !k,
212
- "aria-label": m ? "Clear search" : k ? "Close command menu" : "Clear search",
213
- onClick: B
211
+ disabled: !d && !k,
212
+ "aria-label": d ? "Clear search" : k ? "Close command menu" : "Clear search",
213
+ onClick: G
214
214
  })
215
215
  ]
216
216
  });
@@ -221,7 +221,7 @@ function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeh
221
221
  className: "overflow-y-auto p-0",
222
222
  children: [/* @__PURE__ */ (0, t.jsx)(ne, {
223
223
  className: "py-6 text-center text-sm text-muted-foreground animate-in fade-in-0 duration-200 motion-reduce:animate-none",
224
- children: u || d
224
+ children: u || m
225
225
  }), /* @__PURE__ */ (0, t.jsx)(he, {
226
226
  groups: s,
227
227
  options: r,
@@ -238,22 +238,22 @@ function M({ children: e, groups: s, options: r, onSelect: n, onClose: a, placeh
238
238
  });
239
239
  }
240
240
  M.displayName = "CommandMenu.Body";
241
- function I({ open: e, onOpenChange: s, placeholder: r = z, emptyText: n = "No results found.", emptyState: a, options: o = [], groups: d = [], onSelect: u, showShortcut: p = !1, shortcutText: h, showFooter: f = !1, footerHints: x, showSettingsButton: C = !1, onSettingsClick: b, className: g, maxHeight: N = w, filter: v, children: y }) {
242
- const c = T(), m = h ?? c;
243
- return /* @__PURE__ */ (0, t.jsx)(le, {
241
+ function I({ open: e, onOpenChange: s, placeholder: r = z, emptyText: n = "No results found.", emptyState: a, options: o = [], groups: m = [], onSelect: u, showShortcut: p = !1, shortcutText: h, showFooter: f = !1, footerHints: x, showSettingsButton: C = !1, onSettingsClick: b, className: g, maxHeight: N = w, filter: v, children: y }) {
242
+ const l = T(), d = h ?? l;
243
+ return /* @__PURE__ */ (0, t.jsx)(ce, {
244
244
  open: e,
245
245
  onOpenChange: s,
246
- className: l("max-w-[508px] sm:max-w-[508px]", g),
246
+ className: c("max-w-[508px] sm:max-w-[508px]", g),
247
247
  children: /* @__PURE__ */ (0, t.jsx)(M, {
248
248
  placeholder: r,
249
249
  emptyText: n,
250
250
  emptyState: a,
251
251
  options: o,
252
- groups: d,
252
+ groups: m,
253
253
  onSelect: u,
254
254
  onClose: () => s?.(!1),
255
255
  showShortcut: p,
256
- shortcutText: m,
256
+ shortcutText: d,
257
257
  showFooter: f,
258
258
  footerHints: x,
259
259
  showSettingsButton: C,
@@ -265,11 +265,11 @@ function I({ open: e, onOpenChange: s, placeholder: r = z, emptyText: n = "No re
265
265
  });
266
266
  }
267
267
  I.displayName = "CommandMenu";
268
- function fe({ placeholder: e = z, emptyText: s = "No results found.", emptyState: r, options: n = [], groups: a = [], onSelect: o, showShortcut: d = !1, shortcutText: u, showFooter: p = !1, footerHints: h, showSettingsButton: f = !1, onSettingsClick: x, className: C, maxHeight: b = w, filter: g, children: N }) {
268
+ function fe({ placeholder: e = z, emptyText: s = "No results found.", emptyState: r, options: n = [], groups: a = [], onSelect: o, showShortcut: m = !1, shortcutText: u, showFooter: p = !1, footerHints: h, showSettingsButton: f = !1, onSettingsClick: x, className: C, maxHeight: b = w, filter: g, children: N }) {
269
269
  const v = T(), y = u ?? v;
270
270
  return /* @__PURE__ */ (0, t.jsx)("div", {
271
271
  "data-slot": "command-menu-panel",
272
- className: l(de, C),
272
+ className: c(me, C),
273
273
  children: /* @__PURE__ */ (0, t.jsx)(M, {
274
274
  placeholder: e,
275
275
  emptyText: s,
@@ -277,7 +277,7 @@ function fe({ placeholder: e = z, emptyText: s = "No results found.", emptyState
277
277
  options: n,
278
278
  groups: a,
279
279
  onSelect: o,
280
- showShortcut: d,
280
+ showShortcut: m,
281
281
  shortcutText: y,
282
282
  showFooter: p,
283
283
  footerHints: h,
@@ -290,7 +290,7 @@ function fe({ placeholder: e = z, emptyText: s = "No results found.", emptyState
290
290
  });
291
291
  }
292
292
  fe.displayName = "CommandMenu.Panel";
293
- var xe = V();
293
+ var xe = q();
294
294
  function Ce(e) {
295
295
  return {
296
296
  onOpenChange: (s) => {
@@ -1 +1 @@
1
- {"version":3,"file":"hf-command-menu.js","names":[],"sources":["../../../../../../../../../../../Users/akarim/Documents/test/humain_foundation_ui/node_modules/.bun/lucide-react@1.27.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/corner-down-left.mjs","../../src/components/organisms/menus/CommandMenu/CommandMenu.tsx","../../src/wc/hf-command-menu.ts"],"sourcesContent":["/**\n * @license lucide-react v1.27.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M20 4v7a4 4 0 0 1-4 4H4\", key: \"6o5b7l\" }],\n [\"path\", { d: \"m9 10-5 5 5 5\", key: \"1kshq7\" }]\n];\nconst CornerDownLeft = createLucideIcon(\"corner-down-left\", __iconNode);\n\nexport { __iconNode, CornerDownLeft as default };\n//# sourceMappingURL=corner-down-left.mjs.map\n","'use client';\n\nimport {\n ArrowDown,\n ArrowUp,\n CornerDownLeft,\n Search,\n Settings,\n} from 'lucide-react';\nimport * as React from 'react';\nimport { Button, ClearButton } from '@/components/atoms/buttons/Button';\nimport { Avatar } from '@/components/molecules/data/Avatar';\nimport { Kbd } from '@/components/molecules/data/Kbd';\nimport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n} from '@/components/ui/command';\nimport { cn } from '@/lib/utils';\n\nconst DEFAULT_COMMAND_MENU_MAX_HEIGHT = 336;\nconst DEFAULT_COMMAND_MENU_PLACEHOLDER = 'Type a command or search...';\nconst COMMAND_MENU_SHELL_CLASS_NAME =\n 'w-full max-w-[508px] overflow-hidden rounded-xl border border-input bg-background shadow-lg';\n\nfunction getCommandMenuMaxHeight(maxHeight: number): number {\n return Number.isFinite(maxHeight) && maxHeight >= 0\n ? maxHeight\n : DEFAULT_COMMAND_MENU_MAX_HEIGHT;\n}\n\n// ============================================\n// Types\n// ============================================\n\nexport interface CommandMenuOption {\n /** Unique identifier for the option */\n id: string;\n /** Display label for the option */\n label: string;\n /** Optional subtitle (e.g., @username, email) */\n subtitle?: string;\n /** Optional icon to display (mutually exclusive with avatar) */\n icon?: React.ReactNode;\n /** Optional avatar configuration */\n avatar?: {\n src?: string;\n fallback?: string;\n };\n /** Whether the option is disabled */\n disabled?: boolean;\n /** Keyboard shortcut to display */\n shortcut?: string;\n}\n\nexport interface CommandMenuGroup {\n /** Unique identifier for the group */\n id: string;\n /** Group label/heading */\n label: string;\n /** Options in this group */\n options: CommandMenuOption[];\n}\n\nexport interface CommandMenuFooterHint {\n /** Icon or keyboard key indicator */\n keys: React.ReactNode;\n /** Text describing the action */\n label: string;\n}\n\nexport interface CommandMenuProps {\n /** Whether the command menu is open */\n open?: boolean;\n /** Callback when open state changes */\n onOpenChange?: (open: boolean) => void;\n /** Placeholder text for the search input */\n placeholder?: string;\n /** Text to show when no results found */\n emptyText?: string;\n /** Empty state content (replaces emptyText when provided) */\n emptyState?: React.ReactNode;\n /** Flat list of options */\n options?: CommandMenuOption[];\n /** Grouped options */\n groups?: CommandMenuGroup[];\n /** Callback when an option is selected */\n onSelect?: (id: string, option: CommandMenuOption) => void;\n /** Whether to show keyboard shortcut badge in input */\n showShortcut?: boolean;\n /** Keyboard shortcut text to display (auto-detects platform when omitted) */\n shortcutText?: string;\n /** Whether to show the footer with navigation hints */\n showFooter?: boolean;\n /** Custom footer hints */\n footerHints?: CommandMenuFooterHint[];\n /** Whether to show settings button in footer */\n showSettingsButton?: boolean;\n /** Callback when settings button is clicked */\n onSettingsClick?: () => void;\n /** Additional class name for the dialog */\n className?: string;\n /** Maximum height of the list */\n maxHeight?: number;\n /** Custom filter function */\n filter?: (value: string, search: string) => number;\n /** Children for custom content */\n children?: React.ReactNode;\n}\n\n// ============================================\n// Platform detection\n// ============================================\n\nfunction usePlatformShortcut() {\n const [shortcut, setShortcut] = React.useState('\\u2318/');\n React.useEffect(() => {\n if (!/Mac|iPhone|iPad/i.test(navigator.userAgent)) {\n setShortcut('Ctrl /');\n }\n }, []);\n return shortcut;\n}\n\n// ============================================\n// Keyboard Shortcut Badge (uses Kbd wrapper)\n// ============================================\n\nfunction CommandShortcutBadge({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n return (\n <Kbd variant=\"solid\" size=\"sm\" className={cn('shadow-xs', className)}>\n {children}\n </Kbd>\n );\n}\nCommandShortcutBadge.displayName = 'CommandMenu.ShortcutBadge';\n\n// ============================================\n// Footer Navigation Icon (uses Kbd wrapper)\n// ============================================\n\nfunction FooterNavIcon({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n return (\n <Kbd variant=\"footer\" size=\"sm\" className={cn('p-1.5', className)}>\n {children}\n </Kbd>\n );\n}\nFooterNavIcon.displayName = 'CommandMenu.FooterNavIcon';\n\nfunction FooterNavText({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n return (\n <span\n className={cn('text-sm font-semibold text-text-quaternary', className)}\n >\n {children}\n </span>\n );\n}\nFooterNavText.displayName = 'CommandMenu.FooterNavText';\n\n// ============================================\n// Default Footer Hints\n// ============================================\n\nconst defaultFooterHints: CommandMenuFooterHint[] = [\n {\n keys: (\n <div className=\"flex items-center gap-1\">\n <FooterNavIcon>\n <ArrowUp className=\"size-2.5 text-text-quaternary\" />\n </FooterNavIcon>\n <FooterNavIcon>\n <ArrowDown className=\"size-2.5 text-text-quaternary\" />\n </FooterNavIcon>\n </div>\n ),\n label: 'to navigate',\n },\n {\n keys: (\n <FooterNavIcon>\n <CornerDownLeft className=\"size-2.5 text-text-quaternary\" />\n </FooterNavIcon>\n ),\n label: 'to select',\n },\n {\n keys: (\n <FooterNavIcon className=\"px-1.5 py-1\">\n <span className=\"text-xs font-semibold text-text-quaternary\">esc</span>\n </FooterNavIcon>\n ),\n label: 'to close',\n },\n];\n\n// ============================================\n// Command Menu Footer\n// ============================================\n\nexport interface CommandMenuFooterProps {\n hints?: CommandMenuFooterHint[];\n showSettingsButton?: boolean;\n onSettingsClick?: () => void;\n className?: string;\n}\n\nfunction CommandMenuFooter({\n hints = defaultFooterHints,\n showSettingsButton = false,\n onSettingsClick,\n className,\n}: CommandMenuFooterProps) {\n return (\n <div\n data-slot=\"command-menu-footer\"\n className={cn(\n 'flex items-center gap-3 border-t border-border bg-card/80 py-2 pe-2 ps-[18px] supports-backdrop-filter:backdrop-blur',\n className,\n )}\n >\n <div className=\"hidden flex-1 items-start gap-4 [@media(hover:hover)]:flex\">\n {hints.map((hint) => (\n <div key={hint.label} className=\"flex items-center gap-2\">\n {hint.keys}\n <FooterNavText>{hint.label}</FooterNavText>\n </div>\n ))}\n </div>\n {showSettingsButton && (\n <Button\n appearance=\"ghost\"\n variant=\"secondary\"\n size=\"icon\"\n className=\"group ms-auto rounded-full bg-muted\"\n onClick={onSettingsClick}\n aria-label=\"Settings\"\n >\n <Settings className=\"size-5 text-muted-foreground transition-transform duration-300 ease-out group-hover:rotate-90 motion-reduce:transition-none\" />\n </Button>\n )}\n </div>\n );\n}\nCommandMenuFooter.displayName = 'CommandMenu.Footer';\n\n// ============================================\n// Command Menu Item\n// ============================================\n\nexport interface CommandMenuItemProps\n extends Omit<\n React.ComponentProps<typeof CommandItem>,\n 'onSelect' | 'showCheckIndicator' | 'value'\n > {\n option: CommandMenuOption;\n onSelect?: (id: string, option: CommandMenuOption) => void;\n}\n\nfunction CommandMenuItem({\n option,\n onSelect,\n className,\n ...props\n}: CommandMenuItemProps) {\n return (\n <CommandItem\n value={option.id}\n disabled={option.disabled}\n showCheckIndicator={false}\n onSelect={() => onSelect?.(option.id, option)}\n className={cn(\n 'flex cursor-pointer items-center gap-2 transition-colors duration-150 motion-reduce:transition-none',\n className,\n )}\n {...props}\n >\n {option.avatar && (\n <Avatar\n src={option.avatar.src}\n fallback={option.avatar.fallback || option.label.charAt(0)}\n size=\"sm\"\n className=\"size-6 shrink-0\"\n />\n )}\n {option.icon && !option.avatar && (\n <span className=\"flex size-4 shrink-0 items-center justify-center text-muted-foreground [&_svg]:size-4\">\n {option.icon}\n </span>\n )}\n <div className=\"flex min-w-0 flex-1 items-center gap-2 text-sm leading-5\">\n <span className=\"min-w-0 truncate font-normal text-foreground\">\n {option.label}\n </span>\n {option.subtitle && (\n <span className=\"min-w-0 truncate font-normal text-muted-foreground\">\n {option.subtitle}\n </span>\n )}\n </div>\n {option.shortcut && (\n <CommandShortcutBadge className=\"transition-colors duration-150 group-data-[selected=true]/command-item:bg-primary/10 group-data-[selected=true]/command-item:text-primary\">\n {option.shortcut}\n </CommandShortcutBadge>\n )}\n </CommandItem>\n );\n}\nCommandMenuItem.displayName = 'CommandMenu.Item';\n\n// ============================================\n// Command Menu Group Header\n// ============================================\n\nfunction CommandMenuGroupHeader({\n children,\n className,\n ...props\n}: React.ComponentProps<'h3'>) {\n return (\n <h3\n data-slot=\"command-menu-group-header\"\n className={cn(\n 'px-2 py-1.5 text-xs font-medium text-muted-foreground',\n className,\n )}\n {...props}\n >\n {children}\n </h3>\n );\n}\nCommandMenuGroupHeader.displayName = 'CommandMenu.GroupHeader';\n\n// ============================================\n// Shared Command Menu Body (internal)\n// ============================================\n\ninterface CommandMenuBodyProps {\n children?: React.ReactNode;\n groups: CommandMenuGroup[];\n options: CommandMenuOption[];\n onSelect?: (id: string, option: CommandMenuOption) => void;\n onClose?: () => void;\n placeholder: string;\n emptyText: string;\n emptyState?: React.ReactNode;\n showShortcut: boolean;\n shortcutText: string;\n showFooter: boolean;\n footerHints?: CommandMenuFooterHint[];\n showSettingsButton: boolean;\n onSettingsClick?: () => void;\n maxHeight: number;\n filter?: (value: string, search: string) => number;\n}\n\ninterface CommandMenuBodyContentProps {\n children?: React.ReactNode;\n groups: CommandMenuGroup[];\n options: CommandMenuOption[];\n optionRenderer: (option: CommandMenuOption) => React.ReactNode;\n}\n\ninterface CommandMenuGroupSectionProps {\n group: CommandMenuGroup;\n optionRenderer: (option: CommandMenuOption) => React.ReactNode;\n}\n\nfunction CommandMenuGroupSection({\n group,\n optionRenderer,\n}: CommandMenuGroupSectionProps) {\n const headingId = React.useId();\n\n return (\n <CommandGroup aria-labelledby={headingId} className=\"px-2 py-1\">\n <CommandMenuGroupHeader id={headingId}>\n {group.label}\n </CommandMenuGroupHeader>\n <div className=\"flex flex-col\">{group.options.map(optionRenderer)}</div>\n </CommandGroup>\n );\n}\nCommandMenuGroupSection.displayName = 'CommandMenu.GroupSection';\n\nfunction CommandMenuBodyContent({\n children,\n groups,\n options,\n optionRenderer,\n}: CommandMenuBodyContentProps) {\n if (children) return children;\n\n if (groups.length > 0) {\n return groups.map((group, index) => (\n <React.Fragment key={group.id}>\n {index > 0 && <CommandSeparator className=\"mx-0\" />}\n <CommandMenuGroupSection\n group={group}\n optionRenderer={optionRenderer}\n />\n </React.Fragment>\n ));\n }\n\n return <div className=\"flex flex-col p-2\">{options.map(optionRenderer)}</div>;\n}\n\nfunction CommandMenuBody({\n children,\n groups,\n options,\n onSelect,\n onClose,\n placeholder,\n emptyText,\n emptyState,\n showShortcut,\n shortcutText,\n showFooter,\n footerHints,\n showSettingsButton,\n onSettingsClick,\n maxHeight,\n filter,\n}: CommandMenuBodyProps) {\n const safeMaxHeight = getCommandMenuMaxHeight(maxHeight);\n const renderOption = (option: CommandMenuOption) => (\n <CommandMenuItem key={option.id} option={option} onSelect={onSelect} />\n );\n\n return (\n <Command\n filter={filter}\n className=\"rounded-none border-0 shadow-none\"\n data-slot=\"command-menu\"\n >\n <search\n aria-label=\"Command menu search\"\n className=\"block border-b border-input bg-background\"\n >\n <CommandInput\n render={({ clearSearch, value, ...inputProps }) => {\n const canClose = typeof onClose === 'function';\n const clearOrClose = () => {\n if (value) {\n clearSearch();\n return;\n }\n onClose?.();\n };\n\n return (\n <div\n data-slot=\"command-menu-input\"\n cmdk-input-wrapper=\"\"\n className=\"flex h-11 items-center gap-2 px-3\"\n >\n <Search\n className=\"size-4 shrink-0 text-muted-foreground opacity-50\"\n aria-hidden=\"true\"\n />\n <input\n {...inputProps}\n value={value}\n placeholder={placeholder}\n aria-label={placeholder}\n className=\"min-w-0 flex-1 bg-transparent text-sm leading-5 text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\"\n />\n {showShortcut && (\n <CommandShortcutBadge>{shortcutText}</CommandShortcutBadge>\n )}\n <ClearButton\n size=\"icon-xs\"\n className=\"-me-1 rounded-sm p-0 opacity-50 hover:opacity-80 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4\"\n disabled={!value && !canClose}\n aria-label={\n value\n ? 'Clear search'\n : canClose\n ? 'Close command menu'\n : 'Clear search'\n }\n onClick={clearOrClose}\n />\n </div>\n );\n }}\n />\n </search>\n\n <CommandList\n style={{ maxHeight: safeMaxHeight }}\n className=\"overflow-y-auto p-0\"\n >\n <CommandEmpty className=\"py-6 text-center text-sm text-muted-foreground animate-in fade-in-0 duration-200 motion-reduce:animate-none\">\n {emptyState || emptyText}\n </CommandEmpty>\n <CommandMenuBodyContent\n groups={groups}\n options={options}\n optionRenderer={renderOption}\n >\n {children}\n </CommandMenuBodyContent>\n </CommandList>\n\n {showFooter && (\n <CommandMenuFooter\n hints={footerHints}\n showSettingsButton={showSettingsButton}\n onSettingsClick={onSettingsClick}\n />\n )}\n </Command>\n );\n}\nCommandMenuBody.displayName = 'CommandMenu.Body';\n\n// ============================================\n// Main Command Menu Component\n// ============================================\n\nfunction CommandMenu({\n open,\n onOpenChange,\n placeholder = DEFAULT_COMMAND_MENU_PLACEHOLDER,\n emptyText = 'No results found.',\n emptyState,\n options = [],\n groups = [],\n onSelect,\n showShortcut = false,\n shortcutText,\n showFooter = false,\n footerHints,\n showSettingsButton = false,\n onSettingsClick,\n className,\n maxHeight = DEFAULT_COMMAND_MENU_MAX_HEIGHT,\n filter,\n children,\n}: CommandMenuProps) {\n const platformShortcut = usePlatformShortcut();\n const resolvedShortcut = shortcutText ?? platformShortcut;\n\n return (\n <CommandDialog\n open={open}\n onOpenChange={onOpenChange}\n className={cn('max-w-[508px] sm:max-w-[508px]', className)}\n >\n <CommandMenuBody\n placeholder={placeholder}\n emptyText={emptyText}\n emptyState={emptyState}\n options={options}\n groups={groups}\n onSelect={onSelect}\n onClose={() => onOpenChange?.(false)}\n showShortcut={showShortcut}\n shortcutText={resolvedShortcut}\n showFooter={showFooter}\n footerHints={footerHints}\n showSettingsButton={showSettingsButton}\n onSettingsClick={onSettingsClick}\n maxHeight={maxHeight}\n filter={filter}\n >\n {children}\n </CommandMenuBody>\n </CommandDialog>\n );\n}\nCommandMenu.displayName = 'CommandMenu';\n\n// ============================================\n// Standalone Command Menu (non-dialog version)\n// ============================================\n\nexport interface CommandMenuPanelProps\n extends Omit<CommandMenuProps, 'open' | 'onOpenChange'> {\n /** Additional class name */\n className?: string;\n}\n\nfunction CommandMenuPanel({\n placeholder = DEFAULT_COMMAND_MENU_PLACEHOLDER,\n emptyText = 'No results found.',\n emptyState,\n options = [],\n groups = [],\n onSelect,\n showShortcut = false,\n shortcutText,\n showFooter = false,\n footerHints,\n showSettingsButton = false,\n onSettingsClick,\n className,\n maxHeight = DEFAULT_COMMAND_MENU_MAX_HEIGHT,\n filter,\n children,\n}: CommandMenuPanelProps) {\n const platformShortcut = usePlatformShortcut();\n const resolvedShortcut = shortcutText ?? platformShortcut;\n\n return (\n <div\n data-slot=\"command-menu-panel\"\n className={cn(COMMAND_MENU_SHELL_CLASS_NAME, className)}\n >\n <CommandMenuBody\n placeholder={placeholder}\n emptyText={emptyText}\n emptyState={emptyState}\n options={options}\n groups={groups}\n onSelect={onSelect}\n showShortcut={showShortcut}\n shortcutText={resolvedShortcut}\n showFooter={showFooter}\n footerHints={footerHints}\n showSettingsButton={showSettingsButton}\n onSettingsClick={onSettingsClick}\n maxHeight={maxHeight}\n filter={filter}\n >\n {children}\n </CommandMenuBody>\n </div>\n );\n}\nCommandMenuPanel.displayName = 'CommandMenu.Panel';\n\n// ============================================\n// Exports\n// ============================================\n\nexport {\n CommandMenu,\n CommandMenuFooter,\n CommandMenuGroupHeader,\n CommandMenuItem,\n CommandMenuPanel,\n CommandShortcutBadge,\n defaultFooterHints,\n FooterNavIcon,\n FooterNavText,\n};\n","/**\n * Web Component wrapper for CommandMenu\n * Custom element: <hf-command-menu>\n *\n * @generated by scripts/generate-wc-components.ts\n * DO NOT EDIT MANUALLY\n */\n\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { CommandMenu } from '../components/organisms/menus/CommandMenu';\nimport { parseAttr, parseValue, type PropDefs } from './_shared';\n\n/**\n * Event wrapper that dispatches custom DOM events\n */\nfunction createEventDispatcher(element: HTMLElement) {\n return {\n onOpenChange: (open: boolean) => {\n const CustomEventConstructor =\n element.ownerDocument.defaultView?.CustomEvent ?? CustomEvent;\n element.dispatchEvent(new CustomEventConstructor('open-change', {\n detail: open,\n bubbles: true,\n composed: true\n }));\n },\n onSelect: (value: unknown) => {\n const CustomEventConstructor =\n element.ownerDocument.defaultView?.CustomEvent ?? CustomEvent;\n element.dispatchEvent(new CustomEventConstructor('select', {\n detail: value,\n bubbles: true,\n composed: true\n }));\n },\n onSettingsClick: (value: unknown) => {\n const CustomEventConstructor =\n element.ownerDocument.defaultView?.CustomEvent ?? CustomEvent;\n element.dispatchEvent(new CustomEventConstructor('settings-click', {\n detail: value,\n bubbles: true,\n composed: true\n }));\n }\n };\n}\n\n/**\n * Wrapper component that connects React events to DOM custom events\n */\nfunction CommandMenuWrapper(props: React.ComponentProps<typeof CommandMenu> & { _hostElement?: HTMLElement }) {\n const { _hostElement, ...restProps } = props;\n\n const eventHandlers = React.useMemo(() => {\n if (!_hostElement) return {};\n return createEventDispatcher(_hostElement);\n }, [_hostElement]);\n\n return React.createElement(CommandMenu, { ...restProps, ...eventHandlers });\n}\n\n/**\n * Prop type definitions for attribute parsing\n */\nconst propTypes: PropDefs = {\n open: 'boolean',\n placeholder: 'string',\n emptyText: 'string',\n emptyState: 'json',\n options: 'json',\n groups: 'json',\n showShortcut: 'boolean',\n shortcutText: 'string',\n showFooter: 'boolean',\n footerHints: 'json',\n showSettingsButton: 'boolean',\n className: 'string',\n maxHeight: 'number',\n filter: 'json'\n};\n\nclass CommandMenuWC extends HTMLElement {\n private _root: ReturnType<typeof createRoot> | null = null;\n private _childrenContainer: HTMLDivElement | null = null;\n private _props: Record<string, unknown> = {};\n private _initialized = false;\n\n connectedCallback() {\n setTimeout(() => this._initialize(), 0);\n }\n\n private _initialize() {\n if (this._initialized) return;\n this._initialized = true;\n\n const originalChildren: Node[] = [];\n for (const child of Array.from(this.childNodes)) {\n if (child.nodeType === Node.TEXT_NODE && !child.textContent?.trim()) {\n continue;\n }\n originalChildren.push(child);\n }\n\n const reactContainer = this.ownerDocument.createElement('div');\n reactContainer.style.display = 'contents';\n\n this._childrenContainer = this.ownerDocument.createElement('div');\n this._childrenContainer.style.display = 'contents';\n\n originalChildren.forEach((child) => this._childrenContainer!.appendChild(child));\n\n while (this.firstChild) this.removeChild(this.firstChild);\n this.appendChild(reactContainer);\n\n this._root = createRoot(reactContainer);\n this._render();\n }\n\n disconnectedCallback() {\n this._root?.unmount();\n this._root = null;\n }\n\n attributeChangedCallback(_name: string, _oldValue: string | null, _newValue: string | null) {\n this._render();\n }\n\n static get observedAttributes() {\n return Object.keys(propTypes).map((prop) =>\n prop.replace(/([A-Z])/g, '-$1').toLowerCase(),\n );\n }\n\n _setProp(name: string, value: unknown) {\n const propType = propTypes[name] || 'string';\n this._props[name] = parseValue(value, propType);\n this._render();\n }\n\n _getProp(name: string): unknown {\n if (name in this._props) {\n return this._props[name];\n }\n const attrName = name.replace(/([A-Z])/g, '-$1').toLowerCase();\n const propType = propTypes[name] || 'string';\n return parseAttr(this.getAttribute(attrName), propType);\n }\n\n private _render() {\n if (!this._root || !this._childrenContainer) return;\n\n const props: Record<string, unknown> = {};\n for (const [propName, propType] of Object.entries(propTypes)) {\n if (propName in this._props) {\n props[propName] = this._props[propName];\n } else {\n const attrName = propName.replace(/([A-Z])/g, '-$1').toLowerCase();\n props[propName] = parseAttr(this.getAttribute(attrName), propType);\n }\n }\n\n const element = React.createElement(\n CommandMenuWrapper,\n { ...props, _hostElement: this },\n React.createElement('span', {\n ref: (el: HTMLSpanElement | null) => {\n if (el && this._childrenContainer) {\n el.replaceWith(this._childrenContainer);\n }\n },\n style: { display: 'contents' },\n }),\n );\n\n this._root.render(element);\n }\n}\n\nfor (const propName of Object.keys(propTypes)) {\n Object.defineProperty(CommandMenuWC.prototype, propName, {\n get() {\n return this._getProp(propName);\n },\n set(value: unknown) {\n this._setProp(propName, value);\n },\n enumerable: true,\n configurable: true,\n });\n}\n\nif (typeof customElements !== 'undefined' && !customElements.get('hf-command-menu')) {\n customElements.define('hf-command-menu', CommandMenuWC);\n}\n\nexport { CommandMenuWC };\nexport default CommandMenuWC;\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"hf-command-menu.js","names":[],"sources":["../../../../../../../../../../../Users/akarim/Documents/test/humain_foundation_ui/node_modules/.bun/lucide-react@1.27.0+0f58469d5b3bd39f/node_modules/lucide-react/dist/esm/icons/corner-down-left.mjs","../../src/components/organisms/menus/CommandMenu/CommandMenu.tsx","../../src/wc/hf-command-menu.ts"],"sourcesContent":["/**\n * @license lucide-react v1.27.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"M20 4v7a4 4 0 0 1-4 4H4\", key: \"6o5b7l\" }],\n [\"path\", { d: \"m9 10-5 5 5 5\", key: \"1kshq7\" }]\n];\nconst CornerDownLeft = createLucideIcon(\"corner-down-left\", __iconNode);\n\nexport { __iconNode, CornerDownLeft as default };\n//# sourceMappingURL=corner-down-left.mjs.map\n","'use client';\n\nimport {\n ArrowDown,\n ArrowUp,\n CornerDownLeft,\n Search,\n Settings,\n} from 'lucide-react';\nimport * as React from 'react';\nimport { Button, ClearButton } from '@/components/atoms/buttons/Button';\nimport { Avatar } from '@/components/molecules/data/Avatar';\nimport { Kbd } from '@/components/molecules/data/Kbd';\nimport {\n Command,\n CommandDialog,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n CommandSeparator,\n} from '@/components/ui/command';\nimport { cn } from '@/lib/utils';\n\nconst DEFAULT_COMMAND_MENU_MAX_HEIGHT = 336;\nconst DEFAULT_COMMAND_MENU_PLACEHOLDER = 'Type a command or search...';\nconst COMMAND_MENU_SHELL_CLASS_NAME =\n 'w-full max-w-[508px] overflow-hidden rounded-xl border border-input bg-background shadow-lg';\n\nfunction getCommandMenuMaxHeight(maxHeight: number): number {\n return Number.isFinite(maxHeight) && maxHeight >= 0\n ? maxHeight\n : DEFAULT_COMMAND_MENU_MAX_HEIGHT;\n}\n\n// ============================================\n// Types\n// ============================================\n\nexport interface CommandMenuOption {\n /** Unique identifier for the option */\n id: string;\n /** Display label for the option */\n label: string;\n /** Optional subtitle (e.g., @username, email) */\n subtitle?: string;\n /** Optional icon to display (mutually exclusive with avatar) */\n icon?: React.ReactNode;\n /** Optional avatar configuration */\n avatar?: {\n src?: string;\n fallback?: string;\n };\n /** Whether the option is disabled */\n disabled?: boolean;\n /** Keyboard shortcut to display */\n shortcut?: string;\n}\n\nexport interface CommandMenuGroup {\n /** Unique identifier for the group */\n id: string;\n /** Group label/heading */\n label: string;\n /** Options in this group */\n options: CommandMenuOption[];\n}\n\nexport interface CommandMenuFooterHint {\n /** Icon or keyboard key indicator */\n keys: React.ReactNode;\n /** Text describing the action */\n label: string;\n}\n\nexport interface CommandMenuProps {\n /** Whether the command menu is open */\n open?: boolean;\n /** Callback when open state changes */\n onOpenChange?: (open: boolean) => void;\n /** Placeholder text for the search input */\n placeholder?: string;\n /** Text to show when no results found */\n emptyText?: string;\n /** Empty state content (replaces emptyText when provided) */\n emptyState?: React.ReactNode;\n /** Flat list of options */\n options?: CommandMenuOption[];\n /** Grouped options */\n groups?: CommandMenuGroup[];\n /** Callback when an option is selected */\n onSelect?: (id: string, option: CommandMenuOption) => void;\n /** Whether to show keyboard shortcut badge in input */\n showShortcut?: boolean;\n /** Keyboard shortcut text to display (auto-detects platform when omitted) */\n shortcutText?: string;\n /** Whether to show the footer with navigation hints */\n showFooter?: boolean;\n /** Custom footer hints */\n footerHints?: CommandMenuFooterHint[];\n /** Whether to show settings button in footer */\n showSettingsButton?: boolean;\n /** Callback when settings button is clicked */\n onSettingsClick?: () => void;\n /** Additional class name for the dialog */\n className?: string;\n /** Maximum height of the list */\n maxHeight?: number;\n /** Custom filter function */\n filter?: (value: string, search: string) => number;\n /** Children for custom content */\n children?: React.ReactNode;\n}\n\n// ============================================\n// Platform detection\n// ============================================\n\nfunction usePlatformShortcut() {\n const [shortcut, setShortcut] = React.useState('\\u2318/');\n React.useEffect(() => {\n if (!/Mac|iPhone|iPad/i.test(navigator.userAgent)) {\n setShortcut('Ctrl /');\n }\n }, []);\n return shortcut;\n}\n\n// ============================================\n// Keyboard Shortcut Badge (uses Kbd wrapper)\n// ============================================\n\nfunction CommandShortcutBadge({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n return (\n <Kbd variant=\"solid\" size=\"sm\" className={cn('shadow-xs', className)}>\n {children}\n </Kbd>\n );\n}\nCommandShortcutBadge.displayName = 'CommandMenu.ShortcutBadge';\n\n// ============================================\n// Footer Navigation Icon (uses Kbd wrapper)\n// ============================================\n\nfunction FooterNavIcon({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n return (\n <Kbd variant=\"footer\" size=\"sm\" className={cn('p-1.5', className)}>\n {children}\n </Kbd>\n );\n}\nFooterNavIcon.displayName = 'CommandMenu.FooterNavIcon';\n\nfunction FooterNavText({\n children,\n className,\n}: {\n children: React.ReactNode;\n className?: string;\n}) {\n return (\n <span\n className={cn(\n 'text-sm font-semibold text-secondary-foreground',\n className,\n )}\n >\n {children}\n </span>\n );\n}\nFooterNavText.displayName = 'CommandMenu.FooterNavText';\n\n// ============================================\n// Default Footer Hints\n// ============================================\n\nconst defaultFooterHints: CommandMenuFooterHint[] = [\n {\n keys: (\n <div className=\"flex items-center gap-1\">\n <FooterNavIcon>\n <ArrowUp className=\"size-2.5 text-secondary-foreground\" />\n </FooterNavIcon>\n <FooterNavIcon>\n <ArrowDown className=\"size-2.5 text-secondary-foreground\" />\n </FooterNavIcon>\n </div>\n ),\n label: 'to navigate',\n },\n {\n keys: (\n <FooterNavIcon>\n <CornerDownLeft className=\"size-2.5 text-secondary-foreground\" />\n </FooterNavIcon>\n ),\n label: 'to select',\n },\n {\n keys: (\n <FooterNavIcon className=\"px-1.5 py-1\">\n <span className=\"text-xs font-semibold text-secondary-foreground\">\n esc\n </span>\n </FooterNavIcon>\n ),\n label: 'to close',\n },\n];\n\n// ============================================\n// Command Menu Footer\n// ============================================\n\nexport interface CommandMenuFooterProps {\n hints?: CommandMenuFooterHint[];\n showSettingsButton?: boolean;\n onSettingsClick?: () => void;\n className?: string;\n}\n\nfunction CommandMenuFooter({\n hints = defaultFooterHints,\n showSettingsButton = false,\n onSettingsClick,\n className,\n}: CommandMenuFooterProps) {\n return (\n <div\n data-slot=\"command-menu-footer\"\n className={cn(\n 'flex items-center gap-3 border-t border-border bg-card/80 py-2 pe-2 ps-[18px] supports-backdrop-filter:backdrop-blur',\n className,\n )}\n >\n <div className=\"hidden flex-1 items-start gap-4 [@media(hover:hover)]:flex\">\n {hints.map((hint) => (\n <div key={hint.label} className=\"flex items-center gap-2\">\n {hint.keys}\n <FooterNavText>{hint.label}</FooterNavText>\n </div>\n ))}\n </div>\n {showSettingsButton && (\n <Button\n appearance=\"ghost\"\n variant=\"secondary\"\n size=\"icon\"\n className=\"group ms-auto rounded-full bg-muted\"\n onClick={onSettingsClick}\n aria-label=\"Settings\"\n >\n <Settings className=\"size-5 text-muted-foreground transition-transform duration-300 ease-out group-hover:rotate-90 motion-reduce:transition-none\" />\n </Button>\n )}\n </div>\n );\n}\nCommandMenuFooter.displayName = 'CommandMenu.Footer';\n\n// ============================================\n// Command Menu Item\n// ============================================\n\nexport interface CommandMenuItemProps\n extends Omit<\n React.ComponentProps<typeof CommandItem>,\n 'onSelect' | 'showCheckIndicator' | 'value'\n > {\n option: CommandMenuOption;\n onSelect?: (id: string, option: CommandMenuOption) => void;\n}\n\nfunction CommandMenuItem({\n option,\n onSelect,\n className,\n ...props\n}: CommandMenuItemProps) {\n return (\n <CommandItem\n value={option.id}\n disabled={option.disabled}\n showCheckIndicator={false}\n onSelect={() => onSelect?.(option.id, option)}\n className={cn(\n 'flex cursor-pointer items-center gap-2 transition-colors duration-150 motion-reduce:transition-none',\n className,\n )}\n {...props}\n >\n {option.avatar && (\n <Avatar\n src={option.avatar.src}\n fallback={option.avatar.fallback || option.label.charAt(0)}\n size=\"sm\"\n className=\"size-6 shrink-0\"\n />\n )}\n {option.icon && !option.avatar && (\n <span className=\"flex size-4 shrink-0 items-center justify-center text-muted-foreground [&_svg]:size-4\">\n {option.icon}\n </span>\n )}\n <div className=\"flex min-w-0 flex-1 items-center gap-2 text-sm leading-5\">\n <span className=\"min-w-0 truncate font-normal text-foreground\">\n {option.label}\n </span>\n {option.subtitle && (\n <span className=\"min-w-0 truncate font-normal text-muted-foreground\">\n {option.subtitle}\n </span>\n )}\n </div>\n {option.shortcut && (\n <CommandShortcutBadge className=\"transition-colors duration-150 group-data-[selected=true]/command-item:bg-primary/10 group-data-[selected=true]/command-item:text-primary\">\n {option.shortcut}\n </CommandShortcutBadge>\n )}\n </CommandItem>\n );\n}\nCommandMenuItem.displayName = 'CommandMenu.Item';\n\n// ============================================\n// Command Menu Group Header\n// ============================================\n\nfunction CommandMenuGroupHeader({\n children,\n className,\n ...props\n}: React.ComponentProps<'h3'>) {\n return (\n <h3\n data-slot=\"command-menu-group-header\"\n className={cn(\n 'px-2 py-1.5 text-xs font-medium text-muted-foreground',\n className,\n )}\n {...props}\n >\n {children}\n </h3>\n );\n}\nCommandMenuGroupHeader.displayName = 'CommandMenu.GroupHeader';\n\n// ============================================\n// Shared Command Menu Body (internal)\n// ============================================\n\ninterface CommandMenuBodyProps {\n children?: React.ReactNode;\n groups: CommandMenuGroup[];\n options: CommandMenuOption[];\n onSelect?: (id: string, option: CommandMenuOption) => void;\n onClose?: () => void;\n placeholder: string;\n emptyText: string;\n emptyState?: React.ReactNode;\n showShortcut: boolean;\n shortcutText: string;\n showFooter: boolean;\n footerHints?: CommandMenuFooterHint[];\n showSettingsButton: boolean;\n onSettingsClick?: () => void;\n maxHeight: number;\n filter?: (value: string, search: string) => number;\n}\n\ninterface CommandMenuBodyContentProps {\n children?: React.ReactNode;\n groups: CommandMenuGroup[];\n options: CommandMenuOption[];\n optionRenderer: (option: CommandMenuOption) => React.ReactNode;\n}\n\ninterface CommandMenuGroupSectionProps {\n group: CommandMenuGroup;\n optionRenderer: (option: CommandMenuOption) => React.ReactNode;\n}\n\nfunction CommandMenuGroupSection({\n group,\n optionRenderer,\n}: CommandMenuGroupSectionProps) {\n const headingId = React.useId();\n\n return (\n <CommandGroup aria-labelledby={headingId} className=\"px-2 py-1\">\n <CommandMenuGroupHeader id={headingId}>\n {group.label}\n </CommandMenuGroupHeader>\n <div className=\"flex flex-col\">{group.options.map(optionRenderer)}</div>\n </CommandGroup>\n );\n}\nCommandMenuGroupSection.displayName = 'CommandMenu.GroupSection';\n\nfunction CommandMenuBodyContent({\n children,\n groups,\n options,\n optionRenderer,\n}: CommandMenuBodyContentProps) {\n if (children) return children;\n\n if (groups.length > 0) {\n return groups.map((group, index) => (\n <React.Fragment key={group.id}>\n {index > 0 && <CommandSeparator className=\"mx-0\" />}\n <CommandMenuGroupSection\n group={group}\n optionRenderer={optionRenderer}\n />\n </React.Fragment>\n ));\n }\n\n return <div className=\"flex flex-col p-2\">{options.map(optionRenderer)}</div>;\n}\n\nfunction CommandMenuBody({\n children,\n groups,\n options,\n onSelect,\n onClose,\n placeholder,\n emptyText,\n emptyState,\n showShortcut,\n shortcutText,\n showFooter,\n footerHints,\n showSettingsButton,\n onSettingsClick,\n maxHeight,\n filter,\n}: CommandMenuBodyProps) {\n const safeMaxHeight = getCommandMenuMaxHeight(maxHeight);\n const renderOption = (option: CommandMenuOption) => (\n <CommandMenuItem key={option.id} option={option} onSelect={onSelect} />\n );\n\n return (\n <Command\n filter={filter}\n className=\"rounded-none border-0 shadow-none\"\n data-slot=\"command-menu\"\n >\n <search\n aria-label=\"Command menu search\"\n className=\"block border-b border-input bg-background\"\n >\n <CommandInput\n render={({ clearSearch, value, ...inputProps }) => {\n const canClose = typeof onClose === 'function';\n const clearOrClose = () => {\n if (value) {\n clearSearch();\n return;\n }\n onClose?.();\n };\n\n return (\n <div\n data-slot=\"command-menu-input\"\n cmdk-input-wrapper=\"\"\n className=\"flex h-11 items-center gap-2 px-3\"\n >\n <Search\n className=\"size-4 shrink-0 text-muted-foreground opacity-50\"\n aria-hidden=\"true\"\n />\n <input\n {...inputProps}\n value={value}\n placeholder={placeholder}\n aria-label={placeholder}\n className=\"min-w-0 flex-1 bg-transparent text-sm leading-5 text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\"\n />\n {showShortcut && (\n <CommandShortcutBadge>{shortcutText}</CommandShortcutBadge>\n )}\n <ClearButton\n size=\"icon-xs\"\n className=\"-me-1 rounded-sm p-0 opacity-50 hover:opacity-80 focus-visible:ring-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:size-4\"\n disabled={!value && !canClose}\n aria-label={\n value\n ? 'Clear search'\n : canClose\n ? 'Close command menu'\n : 'Clear search'\n }\n onClick={clearOrClose}\n />\n </div>\n );\n }}\n />\n </search>\n\n <CommandList\n style={{ maxHeight: safeMaxHeight }}\n className=\"overflow-y-auto p-0\"\n >\n <CommandEmpty className=\"py-6 text-center text-sm text-muted-foreground animate-in fade-in-0 duration-200 motion-reduce:animate-none\">\n {emptyState || emptyText}\n </CommandEmpty>\n <CommandMenuBodyContent\n groups={groups}\n options={options}\n optionRenderer={renderOption}\n >\n {children}\n </CommandMenuBodyContent>\n </CommandList>\n\n {showFooter && (\n <CommandMenuFooter\n hints={footerHints}\n showSettingsButton={showSettingsButton}\n onSettingsClick={onSettingsClick}\n />\n )}\n </Command>\n );\n}\nCommandMenuBody.displayName = 'CommandMenu.Body';\n\n// ============================================\n// Main Command Menu Component\n// ============================================\n\nfunction CommandMenu({\n open,\n onOpenChange,\n placeholder = DEFAULT_COMMAND_MENU_PLACEHOLDER,\n emptyText = 'No results found.',\n emptyState,\n options = [],\n groups = [],\n onSelect,\n showShortcut = false,\n shortcutText,\n showFooter = false,\n footerHints,\n showSettingsButton = false,\n onSettingsClick,\n className,\n maxHeight = DEFAULT_COMMAND_MENU_MAX_HEIGHT,\n filter,\n children,\n}: CommandMenuProps) {\n const platformShortcut = usePlatformShortcut();\n const resolvedShortcut = shortcutText ?? platformShortcut;\n\n return (\n <CommandDialog\n open={open}\n onOpenChange={onOpenChange}\n className={cn('max-w-[508px] sm:max-w-[508px]', className)}\n >\n <CommandMenuBody\n placeholder={placeholder}\n emptyText={emptyText}\n emptyState={emptyState}\n options={options}\n groups={groups}\n onSelect={onSelect}\n onClose={() => onOpenChange?.(false)}\n showShortcut={showShortcut}\n shortcutText={resolvedShortcut}\n showFooter={showFooter}\n footerHints={footerHints}\n showSettingsButton={showSettingsButton}\n onSettingsClick={onSettingsClick}\n maxHeight={maxHeight}\n filter={filter}\n >\n {children}\n </CommandMenuBody>\n </CommandDialog>\n );\n}\nCommandMenu.displayName = 'CommandMenu';\n\n// ============================================\n// Standalone Command Menu (non-dialog version)\n// ============================================\n\nexport interface CommandMenuPanelProps\n extends Omit<CommandMenuProps, 'open' | 'onOpenChange'> {\n /** Additional class name */\n className?: string;\n}\n\nfunction CommandMenuPanel({\n placeholder = DEFAULT_COMMAND_MENU_PLACEHOLDER,\n emptyText = 'No results found.',\n emptyState,\n options = [],\n groups = [],\n onSelect,\n showShortcut = false,\n shortcutText,\n showFooter = false,\n footerHints,\n showSettingsButton = false,\n onSettingsClick,\n className,\n maxHeight = DEFAULT_COMMAND_MENU_MAX_HEIGHT,\n filter,\n children,\n}: CommandMenuPanelProps) {\n const platformShortcut = usePlatformShortcut();\n const resolvedShortcut = shortcutText ?? platformShortcut;\n\n return (\n <div\n data-slot=\"command-menu-panel\"\n className={cn(COMMAND_MENU_SHELL_CLASS_NAME, className)}\n >\n <CommandMenuBody\n placeholder={placeholder}\n emptyText={emptyText}\n emptyState={emptyState}\n options={options}\n groups={groups}\n onSelect={onSelect}\n showShortcut={showShortcut}\n shortcutText={resolvedShortcut}\n showFooter={showFooter}\n footerHints={footerHints}\n showSettingsButton={showSettingsButton}\n onSettingsClick={onSettingsClick}\n maxHeight={maxHeight}\n filter={filter}\n >\n {children}\n </CommandMenuBody>\n </div>\n );\n}\nCommandMenuPanel.displayName = 'CommandMenu.Panel';\n\n// ============================================\n// Exports\n// ============================================\n\nexport {\n CommandMenu,\n CommandMenuFooter,\n CommandMenuGroupHeader,\n CommandMenuItem,\n CommandMenuPanel,\n CommandShortcutBadge,\n defaultFooterHints,\n FooterNavIcon,\n FooterNavText,\n};\n","/**\n * Web Component wrapper for CommandMenu\n * Custom element: <hf-command-menu>\n *\n * @generated by scripts/generate-wc-components.ts\n * DO NOT EDIT MANUALLY\n */\n\nimport React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { CommandMenu } from '../components/organisms/menus/CommandMenu';\nimport { parseAttr, parseValue, type PropDefs } from './_shared';\n\n/**\n * Event wrapper that dispatches custom DOM events\n */\nfunction createEventDispatcher(element: HTMLElement) {\n return {\n onOpenChange: (open: boolean) => {\n const CustomEventConstructor =\n element.ownerDocument.defaultView?.CustomEvent ?? CustomEvent;\n element.dispatchEvent(new CustomEventConstructor('open-change', {\n detail: open,\n bubbles: true,\n composed: true\n }));\n },\n onSelect: (value: unknown) => {\n const CustomEventConstructor =\n element.ownerDocument.defaultView?.CustomEvent ?? CustomEvent;\n element.dispatchEvent(new CustomEventConstructor('select', {\n detail: value,\n bubbles: true,\n composed: true\n }));\n },\n onSettingsClick: (value: unknown) => {\n const CustomEventConstructor =\n element.ownerDocument.defaultView?.CustomEvent ?? CustomEvent;\n element.dispatchEvent(new CustomEventConstructor('settings-click', {\n detail: value,\n bubbles: true,\n composed: true\n }));\n }\n };\n}\n\n/**\n * Wrapper component that connects React events to DOM custom events\n */\nfunction CommandMenuWrapper(props: React.ComponentProps<typeof CommandMenu> & { _hostElement?: HTMLElement }) {\n const { _hostElement, ...restProps } = props;\n\n const eventHandlers = React.useMemo(() => {\n if (!_hostElement) return {};\n return createEventDispatcher(_hostElement);\n }, [_hostElement]);\n\n return React.createElement(CommandMenu, { ...restProps, ...eventHandlers });\n}\n\n/**\n * Prop type definitions for attribute parsing\n */\nconst propTypes: PropDefs = {\n open: 'boolean',\n placeholder: 'string',\n emptyText: 'string',\n emptyState: 'json',\n options: 'json',\n groups: 'json',\n showShortcut: 'boolean',\n shortcutText: 'string',\n showFooter: 'boolean',\n footerHints: 'json',\n showSettingsButton: 'boolean',\n className: 'string',\n maxHeight: 'number',\n filter: 'json'\n};\n\nclass CommandMenuWC extends HTMLElement {\n private _root: ReturnType<typeof createRoot> | null = null;\n private _childrenContainer: HTMLDivElement | null = null;\n private _props: Record<string, unknown> = {};\n private _initialized = false;\n\n connectedCallback() {\n setTimeout(() => this._initialize(), 0);\n }\n\n private _initialize() {\n if (this._initialized) return;\n this._initialized = true;\n\n const originalChildren: Node[] = [];\n for (const child of Array.from(this.childNodes)) {\n if (child.nodeType === Node.TEXT_NODE && !child.textContent?.trim()) {\n continue;\n }\n originalChildren.push(child);\n }\n\n const reactContainer = this.ownerDocument.createElement('div');\n reactContainer.style.display = 'contents';\n\n this._childrenContainer = this.ownerDocument.createElement('div');\n this._childrenContainer.style.display = 'contents';\n\n originalChildren.forEach((child) => this._childrenContainer!.appendChild(child));\n\n while (this.firstChild) this.removeChild(this.firstChild);\n this.appendChild(reactContainer);\n\n this._root = createRoot(reactContainer);\n this._render();\n }\n\n disconnectedCallback() {\n this._root?.unmount();\n this._root = null;\n }\n\n attributeChangedCallback(_name: string, _oldValue: string | null, _newValue: string | null) {\n this._render();\n }\n\n static get observedAttributes() {\n return Object.keys(propTypes).map((prop) =>\n prop.replace(/([A-Z])/g, '-$1').toLowerCase(),\n );\n }\n\n _setProp(name: string, value: unknown) {\n const propType = propTypes[name] || 'string';\n this._props[name] = parseValue(value, propType);\n this._render();\n }\n\n _getProp(name: string): unknown {\n if (name in this._props) {\n return this._props[name];\n }\n const attrName = name.replace(/([A-Z])/g, '-$1').toLowerCase();\n const propType = propTypes[name] || 'string';\n return parseAttr(this.getAttribute(attrName), propType);\n }\n\n private _render() {\n if (!this._root || !this._childrenContainer) return;\n\n const props: Record<string, unknown> = {};\n for (const [propName, propType] of Object.entries(propTypes)) {\n if (propName in this._props) {\n props[propName] = this._props[propName];\n } else {\n const attrName = propName.replace(/([A-Z])/g, '-$1').toLowerCase();\n props[propName] = parseAttr(this.getAttribute(attrName), propType);\n }\n }\n\n const element = React.createElement(\n CommandMenuWrapper,\n { ...props, _hostElement: this },\n React.createElement('span', {\n ref: (el: HTMLSpanElement | null) => {\n if (el && this._childrenContainer) {\n el.replaceWith(this._childrenContainer);\n }\n },\n style: { display: 'contents' },\n }),\n );\n\n this._root.render(element);\n }\n}\n\nfor (const propName of Object.keys(propTypes)) {\n Object.defineProperty(CommandMenuWC.prototype, propName, {\n get() {\n return this._getProp(propName);\n },\n set(value: unknown) {\n this._setProp(propName, value);\n },\n enumerable: true,\n configurable: true,\n });\n}\n\nif (typeof customElements !== 'undefined' && !customElements.get('hf-command-menu')) {\n customElements.define('hf-command-menu', CommandMenuWC);\n}\n\nexport { CommandMenuWC };\nexport default CommandMenuWC;\n"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -2907,8 +2907,8 @@ function zi({ children: e, column: n, className: t }) {
2907
2907
  children: [e, /* @__PURE__ */ (0, R.jsxs)("span", {
2908
2908
  className: "relative size-4",
2909
2909
  children: [
2910
- /* @__PURE__ */ (0, R.jsx)(Zn, { className: M("absolute inset-0 size-4 text-text-quaternary transition-[opacity,transform] duration-200 ease-out motion-reduce:transition-none", o === "asc" ? "opacity-100 translate-y-0" : "opacity-0 -translate-y-1") }),
2911
- /* @__PURE__ */ (0, R.jsx)(Qn, { className: M("absolute inset-0 size-4 text-text-quaternary transition-[opacity,transform] duration-200 ease-out motion-reduce:transition-none", o === "desc" ? "opacity-100 translate-y-0" : "opacity-0 translate-y-1") }),
2910
+ /* @__PURE__ */ (0, R.jsx)(Zn, { className: M("absolute inset-0 size-4 text-muted-foreground transition-[opacity,transform] duration-200 ease-out motion-reduce:transition-none", o === "asc" ? "opacity-100 translate-y-0" : "opacity-0 -translate-y-1") }),
2911
+ /* @__PURE__ */ (0, R.jsx)(Qn, { className: M("absolute inset-0 size-4 text-muted-foreground transition-[opacity,transform] duration-200 ease-out motion-reduce:transition-none", o === "desc" ? "opacity-100 translate-y-0" : "opacity-0 translate-y-1") }),
2912
2912
  /* @__PURE__ */ (0, R.jsx)(go, { className: M("absolute inset-0 size-4 transition-opacity duration-200 ease-out motion-reduce:transition-none", o ? "opacity-0" : "opacity-100 text-muted-foreground") })
2913
2913
  ]
2914
2914
  })]
@@ -3072,7 +3072,7 @@ function On({ columns: e, data: n, children: t, enableRowSelection: o = !1, enab
3072
3072
  /* @__PURE__ */ (0, R.jsx)(eo, { className: M("h-4 w-4 flex-shrink-0 transition-transform duration-200 ease-out motion-reduce:transition-none", _.getIsExpanded() && "rotate-90") }),
3073
3073
  /* @__PURE__ */ (0, R.jsx)("span", { children: me(E.column.columnDef.cell, E.getContext()) }),
3074
3074
  /* @__PURE__ */ (0, R.jsxs)("span", {
3075
- className: "text-text-quaternary tabular-nums",
3075
+ className: "text-secondary-foreground tabular-nums",
3076
3076
  children: [
3077
3077
  "(",
3078
3078
  _.subRows.length,