@nuka-ui/core 1.1.3 → 1.1.4

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 (766) hide show
  1. package/README.md +7 -7
  2. package/dist/bundle.css +1 -1
  3. package/dist/components/Accordion/Accordion.cjs +1 -1
  4. package/dist/components/Accordion/Accordion.cjs.map +1 -1
  5. package/dist/components/Accordion/Accordion.d.ts.map +1 -1
  6. package/dist/components/Accordion/Accordion.js +2 -0
  7. package/dist/components/Accordion/Accordion.js.map +1 -1
  8. package/dist/components/Accordion/AccordionItem.cjs +1 -1
  9. package/dist/components/Accordion/AccordionItem.cjs.map +1 -1
  10. package/dist/components/Accordion/AccordionItem.d.ts.map +1 -1
  11. package/dist/components/Accordion/AccordionItem.js +1 -0
  12. package/dist/components/Accordion/AccordionItem.js.map +1 -1
  13. package/dist/components/Accordion/AccordionTrigger.cjs +1 -1
  14. package/dist/components/Accordion/AccordionTrigger.cjs.map +1 -1
  15. package/dist/components/Accordion/AccordionTrigger.js +1 -0
  16. package/dist/components/Accordion/AccordionTrigger.js.map +1 -1
  17. package/dist/components/AppShell/AppShell.cjs +1 -1
  18. package/dist/components/AppShell/AppShell.cjs.map +1 -1
  19. package/dist/components/AppShell/AppShell.d.ts.map +1 -1
  20. package/dist/components/AppShell/AppShell.js +1 -0
  21. package/dist/components/AppShell/AppShell.js.map +1 -1
  22. package/dist/components/AppShell/AppShellBody.cjs +1 -1
  23. package/dist/components/AppShell/AppShellBody.cjs.map +1 -1
  24. package/dist/components/AppShell/AppShellBody.d.ts.map +1 -1
  25. package/dist/components/AppShell/AppShellBody.js +1 -0
  26. package/dist/components/AppShell/AppShellBody.js.map +1 -1
  27. package/dist/components/AppShell/AppShellHeader.cjs +1 -1
  28. package/dist/components/AppShell/AppShellHeader.cjs.map +1 -1
  29. package/dist/components/AppShell/AppShellHeader.d.ts.map +1 -1
  30. package/dist/components/AppShell/AppShellHeader.js +1 -0
  31. package/dist/components/AppShell/AppShellHeader.js.map +1 -1
  32. package/dist/components/AppShell/AppShellMain.cjs +1 -1
  33. package/dist/components/AppShell/AppShellMain.cjs.map +1 -1
  34. package/dist/components/AppShell/AppShellMain.d.ts.map +1 -1
  35. package/dist/components/AppShell/AppShellMain.js +1 -0
  36. package/dist/components/AppShell/AppShellMain.js.map +1 -1
  37. package/dist/components/Avatar/Avatar.variants.cjs +1 -1
  38. package/dist/components/Avatar/Avatar.variants.cjs.map +1 -1
  39. package/dist/components/Avatar/Avatar.variants.js +1 -1
  40. package/dist/components/Avatar/Avatar.variants.js.map +1 -1
  41. package/dist/components/Badge/Badge.variants.cjs +1 -1
  42. package/dist/components/Badge/Badge.variants.cjs.map +1 -1
  43. package/dist/components/Badge/Badge.variants.js +1 -1
  44. package/dist/components/Badge/Badge.variants.js.map +1 -1
  45. package/dist/components/Breadcrumb/Breadcrumb.cjs +1 -1
  46. package/dist/components/Breadcrumb/Breadcrumb.cjs.map +1 -1
  47. package/dist/components/Breadcrumb/Breadcrumb.js +1 -0
  48. package/dist/components/Breadcrumb/Breadcrumb.js.map +1 -1
  49. package/dist/components/Breadcrumb/BreadcrumbEllipsis.cjs +1 -1
  50. package/dist/components/Breadcrumb/BreadcrumbEllipsis.cjs.map +1 -1
  51. package/dist/components/Breadcrumb/BreadcrumbEllipsis.d.ts.map +1 -1
  52. package/dist/components/Breadcrumb/BreadcrumbEllipsis.js +1 -0
  53. package/dist/components/Breadcrumb/BreadcrumbEllipsis.js.map +1 -1
  54. package/dist/components/Breadcrumb/BreadcrumbItem.cjs +1 -1
  55. package/dist/components/Breadcrumb/BreadcrumbItem.cjs.map +1 -1
  56. package/dist/components/Breadcrumb/BreadcrumbItem.d.ts.map +1 -1
  57. package/dist/components/Breadcrumb/BreadcrumbItem.js +1 -0
  58. package/dist/components/Breadcrumb/BreadcrumbItem.js.map +1 -1
  59. package/dist/components/Breadcrumb/BreadcrumbLink.cjs +1 -1
  60. package/dist/components/Breadcrumb/BreadcrumbLink.cjs.map +1 -1
  61. package/dist/components/Breadcrumb/BreadcrumbLink.d.ts.map +1 -1
  62. package/dist/components/Breadcrumb/BreadcrumbLink.js +1 -0
  63. package/dist/components/Breadcrumb/BreadcrumbLink.js.map +1 -1
  64. package/dist/components/Breadcrumb/BreadcrumbList.cjs +1 -1
  65. package/dist/components/Breadcrumb/BreadcrumbList.cjs.map +1 -1
  66. package/dist/components/Breadcrumb/BreadcrumbList.d.ts.map +1 -1
  67. package/dist/components/Breadcrumb/BreadcrumbList.js +1 -0
  68. package/dist/components/Breadcrumb/BreadcrumbList.js.map +1 -1
  69. package/dist/components/Breadcrumb/BreadcrumbPage.cjs +1 -1
  70. package/dist/components/Breadcrumb/BreadcrumbPage.cjs.map +1 -1
  71. package/dist/components/Breadcrumb/BreadcrumbPage.d.ts.map +1 -1
  72. package/dist/components/Breadcrumb/BreadcrumbPage.js +2 -1
  73. package/dist/components/Breadcrumb/BreadcrumbPage.js.map +1 -1
  74. package/dist/components/Breadcrumb/BreadcrumbSeparator.cjs +1 -1
  75. package/dist/components/Breadcrumb/BreadcrumbSeparator.cjs.map +1 -1
  76. package/dist/components/Breadcrumb/BreadcrumbSeparator.d.ts.map +1 -1
  77. package/dist/components/Breadcrumb/BreadcrumbSeparator.js +1 -0
  78. package/dist/components/Breadcrumb/BreadcrumbSeparator.js.map +1 -1
  79. package/dist/components/Button/Button.cjs +1 -1
  80. package/dist/components/Button/Button.cjs.map +1 -1
  81. package/dist/components/Button/Button.d.ts +2 -1
  82. package/dist/components/Button/Button.d.ts.map +1 -1
  83. package/dist/components/Button/Button.js +3 -3
  84. package/dist/components/Button/Button.js.map +1 -1
  85. package/dist/components/Button/Button.variants.cjs +1 -1
  86. package/dist/components/Button/Button.variants.cjs.map +1 -1
  87. package/dist/components/Button/Button.variants.js +1 -1
  88. package/dist/components/Button/Button.variants.js.map +1 -1
  89. package/dist/components/Callout/Callout.cjs +2 -0
  90. package/dist/components/Callout/Callout.cjs.map +1 -0
  91. package/dist/components/Callout/Callout.d.ts +13 -0
  92. package/dist/components/Callout/Callout.d.ts.map +1 -0
  93. package/dist/components/Callout/Callout.js +37 -0
  94. package/dist/components/Callout/Callout.js.map +1 -0
  95. package/dist/components/Callout/Callout.variants.cjs +2 -0
  96. package/dist/components/Callout/Callout.variants.cjs.map +1 -0
  97. package/dist/components/Callout/Callout.variants.d.ts +8 -0
  98. package/dist/components/Callout/Callout.variants.d.ts.map +1 -0
  99. package/dist/components/Callout/Callout.variants.js +42 -0
  100. package/dist/components/Callout/Callout.variants.js.map +1 -0
  101. package/dist/components/Callout/index.d.ts +4 -0
  102. package/dist/components/Callout/index.d.ts.map +1 -0
  103. package/dist/components/Card/Card.cjs +1 -1
  104. package/dist/components/Card/Card.cjs.map +1 -1
  105. package/dist/components/Card/Card.d.ts +9 -3
  106. package/dist/components/Card/Card.d.ts.map +1 -1
  107. package/dist/components/Card/Card.js +27 -11
  108. package/dist/components/Card/Card.js.map +1 -1
  109. package/dist/components/Card/index.d.ts +1 -1
  110. package/dist/components/Card/index.d.ts.map +1 -1
  111. package/dist/components/Checkbox/Checkbox.cjs +1 -1
  112. package/dist/components/Checkbox/Checkbox.cjs.map +1 -1
  113. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
  114. package/dist/components/Checkbox/Checkbox.js +4 -0
  115. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  116. package/dist/components/Checkbox/Checkbox.variants.cjs.map +1 -1
  117. package/dist/components/Checkbox/Checkbox.variants.d.ts.map +1 -1
  118. package/dist/components/Checkbox/Checkbox.variants.js.map +1 -1
  119. package/dist/components/Chip/Chip.variants.cjs +1 -1
  120. package/dist/components/Chip/Chip.variants.cjs.map +1 -1
  121. package/dist/components/Chip/Chip.variants.js +1 -1
  122. package/dist/components/Chip/Chip.variants.js.map +1 -1
  123. package/dist/components/Collapsible/Collapsible.cjs +1 -1
  124. package/dist/components/Collapsible/Collapsible.cjs.map +1 -1
  125. package/dist/components/Collapsible/Collapsible.d.ts.map +1 -1
  126. package/dist/components/Collapsible/Collapsible.js +1 -0
  127. package/dist/components/Collapsible/Collapsible.js.map +1 -1
  128. package/dist/components/Collapsible/CollapsibleContent.cjs +1 -1
  129. package/dist/components/Collapsible/CollapsibleContent.cjs.map +1 -1
  130. package/dist/components/Collapsible/CollapsibleContent.d.ts.map +1 -1
  131. package/dist/components/Collapsible/CollapsibleContent.js +2 -0
  132. package/dist/components/Collapsible/CollapsibleContent.js.map +1 -1
  133. package/dist/components/Collapsible/CollapsibleTrigger.cjs +1 -1
  134. package/dist/components/Collapsible/CollapsibleTrigger.cjs.map +1 -1
  135. package/dist/components/Collapsible/CollapsibleTrigger.d.ts.map +1 -1
  136. package/dist/components/Collapsible/CollapsibleTrigger.js +1 -0
  137. package/dist/components/Collapsible/CollapsibleTrigger.js.map +1 -1
  138. package/dist/components/Combobox/ComboboxContent.cjs +1 -1
  139. package/dist/components/Combobox/ComboboxContent.cjs.map +1 -1
  140. package/dist/components/Combobox/ComboboxContent.d.ts.map +1 -1
  141. package/dist/components/Combobox/ComboboxContent.js +2 -0
  142. package/dist/components/Combobox/ComboboxContent.js.map +1 -1
  143. package/dist/components/Combobox/ComboboxEmpty.cjs +1 -1
  144. package/dist/components/Combobox/ComboboxEmpty.cjs.map +1 -1
  145. package/dist/components/Combobox/ComboboxEmpty.d.ts.map +1 -1
  146. package/dist/components/Combobox/ComboboxEmpty.js +1 -0
  147. package/dist/components/Combobox/ComboboxEmpty.js.map +1 -1
  148. package/dist/components/Combobox/ComboboxGroup.cjs +1 -1
  149. package/dist/components/Combobox/ComboboxGroup.cjs.map +1 -1
  150. package/dist/components/Combobox/ComboboxGroup.d.ts.map +1 -1
  151. package/dist/components/Combobox/ComboboxGroup.js +1 -0
  152. package/dist/components/Combobox/ComboboxGroup.js.map +1 -1
  153. package/dist/components/Combobox/ComboboxInput.cjs +1 -1
  154. package/dist/components/Combobox/ComboboxInput.cjs.map +1 -1
  155. package/dist/components/Combobox/ComboboxInput.d.ts.map +1 -1
  156. package/dist/components/Combobox/ComboboxInput.js +2 -0
  157. package/dist/components/Combobox/ComboboxInput.js.map +1 -1
  158. package/dist/components/Combobox/ComboboxListbox.cjs +1 -1
  159. package/dist/components/Combobox/ComboboxListbox.cjs.map +1 -1
  160. package/dist/components/Combobox/ComboboxListbox.d.ts.map +1 -1
  161. package/dist/components/Combobox/ComboboxListbox.js +1 -0
  162. package/dist/components/Combobox/ComboboxListbox.js.map +1 -1
  163. package/dist/components/Combobox/ComboboxOption.cjs +1 -1
  164. package/dist/components/Combobox/ComboboxOption.cjs.map +1 -1
  165. package/dist/components/Combobox/ComboboxOption.d.ts.map +1 -1
  166. package/dist/components/Combobox/ComboboxOption.js +1 -0
  167. package/dist/components/Combobox/ComboboxOption.js.map +1 -1
  168. package/dist/components/Combobox/ComboboxTrigger.cjs +1 -1
  169. package/dist/components/Combobox/ComboboxTrigger.cjs.map +1 -1
  170. package/dist/components/Combobox/ComboboxTrigger.d.ts.map +1 -1
  171. package/dist/components/Combobox/ComboboxTrigger.js +1 -0
  172. package/dist/components/Combobox/ComboboxTrigger.js.map +1 -1
  173. package/dist/components/CommandMenu/CommandMenu.cjs +1 -1
  174. package/dist/components/CommandMenu/CommandMenu.cjs.map +1 -1
  175. package/dist/components/CommandMenu/CommandMenu.d.ts.map +1 -1
  176. package/dist/components/CommandMenu/CommandMenu.js +2 -0
  177. package/dist/components/CommandMenu/CommandMenu.js.map +1 -1
  178. package/dist/components/CommandMenu/CommandMenuEmpty.cjs +1 -1
  179. package/dist/components/CommandMenu/CommandMenuEmpty.cjs.map +1 -1
  180. package/dist/components/CommandMenu/CommandMenuEmpty.d.ts.map +1 -1
  181. package/dist/components/CommandMenu/CommandMenuEmpty.js +1 -0
  182. package/dist/components/CommandMenu/CommandMenuEmpty.js.map +1 -1
  183. package/dist/components/CommandMenu/CommandMenuGroup.cjs +1 -1
  184. package/dist/components/CommandMenu/CommandMenuGroup.cjs.map +1 -1
  185. package/dist/components/CommandMenu/CommandMenuGroup.d.ts.map +1 -1
  186. package/dist/components/CommandMenu/CommandMenuGroup.js +3 -1
  187. package/dist/components/CommandMenu/CommandMenuGroup.js.map +1 -1
  188. package/dist/components/CommandMenu/CommandMenuInput.cjs +1 -1
  189. package/dist/components/CommandMenu/CommandMenuInput.cjs.map +1 -1
  190. package/dist/components/CommandMenu/CommandMenuInput.d.ts.map +1 -1
  191. package/dist/components/CommandMenu/CommandMenuInput.js +2 -0
  192. package/dist/components/CommandMenu/CommandMenuInput.js.map +1 -1
  193. package/dist/components/CommandMenu/CommandMenuItem.cjs +1 -1
  194. package/dist/components/CommandMenu/CommandMenuItem.cjs.map +1 -1
  195. package/dist/components/CommandMenu/CommandMenuItem.d.ts.map +1 -1
  196. package/dist/components/CommandMenu/CommandMenuItem.js +1 -0
  197. package/dist/components/CommandMenu/CommandMenuItem.js.map +1 -1
  198. package/dist/components/CommandMenu/CommandMenuList.cjs +1 -1
  199. package/dist/components/CommandMenu/CommandMenuList.cjs.map +1 -1
  200. package/dist/components/CommandMenu/CommandMenuList.d.ts.map +1 -1
  201. package/dist/components/CommandMenu/CommandMenuList.js +1 -0
  202. package/dist/components/CommandMenu/CommandMenuList.js.map +1 -1
  203. package/dist/components/CommandMenu/CommandMenuShortcut.cjs +1 -1
  204. package/dist/components/CommandMenu/CommandMenuShortcut.cjs.map +1 -1
  205. package/dist/components/CommandMenu/CommandMenuShortcut.d.ts.map +1 -1
  206. package/dist/components/CommandMenu/CommandMenuShortcut.js +1 -0
  207. package/dist/components/CommandMenu/CommandMenuShortcut.js.map +1 -1
  208. package/dist/components/Container/Container.cjs +1 -1
  209. package/dist/components/Container/Container.cjs.map +1 -1
  210. package/dist/components/Container/Container.d.ts +11 -3
  211. package/dist/components/Container/Container.d.ts.map +1 -1
  212. package/dist/components/Container/Container.js +4 -4
  213. package/dist/components/Container/Container.js.map +1 -1
  214. package/dist/components/ContextMenu/ContextMenuContent.cjs +1 -1
  215. package/dist/components/ContextMenu/ContextMenuContent.cjs.map +1 -1
  216. package/dist/components/ContextMenu/ContextMenuContent.d.ts.map +1 -1
  217. package/dist/components/ContextMenu/ContextMenuContent.js +1 -0
  218. package/dist/components/ContextMenu/ContextMenuContent.js.map +1 -1
  219. package/dist/components/ContextMenu/ContextMenuTrigger.cjs +1 -1
  220. package/dist/components/ContextMenu/ContextMenuTrigger.cjs.map +1 -1
  221. package/dist/components/ContextMenu/ContextMenuTrigger.d.ts.map +1 -1
  222. package/dist/components/ContextMenu/ContextMenuTrigger.js +1 -0
  223. package/dist/components/ContextMenu/ContextMenuTrigger.js.map +1 -1
  224. package/dist/components/DatePicker/DatePickerCalendar.cjs +1 -1
  225. package/dist/components/DatePicker/DatePickerCalendar.cjs.map +1 -1
  226. package/dist/components/DatePicker/DatePickerCalendar.d.ts.map +1 -1
  227. package/dist/components/DatePicker/DatePickerCalendar.js +12 -0
  228. package/dist/components/DatePicker/DatePickerCalendar.js.map +1 -1
  229. package/dist/components/DatePicker/DatePickerInput.cjs +1 -1
  230. package/dist/components/DatePicker/DatePickerInput.cjs.map +1 -1
  231. package/dist/components/DatePicker/DatePickerInput.d.ts.map +1 -1
  232. package/dist/components/DatePicker/DatePickerInput.js +4 -1
  233. package/dist/components/DatePicker/DatePickerInput.js.map +1 -1
  234. package/dist/components/Dialog/Dialog.cjs +1 -1
  235. package/dist/components/Dialog/Dialog.cjs.map +1 -1
  236. package/dist/components/Dialog/Dialog.d.ts.map +1 -1
  237. package/dist/components/Dialog/Dialog.js +2 -0
  238. package/dist/components/Dialog/Dialog.js.map +1 -1
  239. package/dist/components/DropdownMenu/DropdownMenuContent.cjs +1 -1
  240. package/dist/components/DropdownMenu/DropdownMenuContent.cjs.map +1 -1
  241. package/dist/components/DropdownMenu/DropdownMenuContent.d.ts.map +1 -1
  242. package/dist/components/DropdownMenu/DropdownMenuContent.js +1 -0
  243. package/dist/components/DropdownMenu/DropdownMenuContent.js.map +1 -1
  244. package/dist/components/DropdownMenu/DropdownMenuTrigger.cjs +1 -1
  245. package/dist/components/DropdownMenu/DropdownMenuTrigger.cjs.map +1 -1
  246. package/dist/components/DropdownMenu/DropdownMenuTrigger.d.ts.map +1 -1
  247. package/dist/components/DropdownMenu/DropdownMenuTrigger.js +1 -0
  248. package/dist/components/DropdownMenu/DropdownMenuTrigger.js.map +1 -1
  249. package/dist/components/EmptyState/EmptyState.cjs +1 -1
  250. package/dist/components/EmptyState/EmptyState.cjs.map +1 -1
  251. package/dist/components/EmptyState/EmptyState.d.ts +4 -1
  252. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -1
  253. package/dist/components/EmptyState/EmptyState.js +16 -8
  254. package/dist/components/EmptyState/EmptyState.js.map +1 -1
  255. package/dist/components/Eyebrow/Eyebrow.cjs +1 -1
  256. package/dist/components/Eyebrow/Eyebrow.cjs.map +1 -1
  257. package/dist/components/Eyebrow/Eyebrow.d.ts +1 -1
  258. package/dist/components/Eyebrow/Eyebrow.d.ts.map +1 -1
  259. package/dist/components/Eyebrow/Eyebrow.js +6 -3
  260. package/dist/components/Eyebrow/Eyebrow.js.map +1 -1
  261. package/dist/components/Eyebrow/Eyebrow.variants.cjs +1 -1
  262. package/dist/components/Eyebrow/Eyebrow.variants.cjs.map +1 -1
  263. package/dist/components/Eyebrow/Eyebrow.variants.d.ts +2 -1
  264. package/dist/components/Eyebrow/Eyebrow.variants.d.ts.map +1 -1
  265. package/dist/components/Eyebrow/Eyebrow.variants.js +28 -7
  266. package/dist/components/Eyebrow/Eyebrow.variants.js.map +1 -1
  267. package/dist/components/FileInput/FileInput.cjs +1 -1
  268. package/dist/components/FileInput/FileInput.cjs.map +1 -1
  269. package/dist/components/FileInput/FileInput.d.ts.map +1 -1
  270. package/dist/components/FileInput/FileInput.js +10 -2
  271. package/dist/components/FileInput/FileInput.js.map +1 -1
  272. package/dist/components/FormField/FormField.cjs +1 -1
  273. package/dist/components/FormField/FormField.cjs.map +1 -1
  274. package/dist/components/FormField/FormField.d.ts.map +1 -1
  275. package/dist/components/FormField/FormField.js +3 -0
  276. package/dist/components/FormField/FormField.js.map +1 -1
  277. package/dist/components/Grid/Grid.cjs +1 -1
  278. package/dist/components/Grid/Grid.cjs.map +1 -1
  279. package/dist/components/Grid/Grid.d.ts +11 -3
  280. package/dist/components/Grid/Grid.d.ts.map +1 -1
  281. package/dist/components/Grid/Grid.js +4 -4
  282. package/dist/components/Grid/Grid.js.map +1 -1
  283. package/dist/components/Heading/Heading.variants.cjs +1 -1
  284. package/dist/components/Heading/Heading.variants.cjs.map +1 -1
  285. package/dist/components/Heading/Heading.variants.d.ts +1 -1
  286. package/dist/components/Heading/Heading.variants.d.ts.map +1 -1
  287. package/dist/components/Heading/Heading.variants.js +7 -2
  288. package/dist/components/Heading/Heading.variants.js.map +1 -1
  289. package/dist/components/Icon/Icon.variants.cjs.map +1 -1
  290. package/dist/components/Icon/Icon.variants.d.ts.map +1 -1
  291. package/dist/components/Icon/Icon.variants.js.map +1 -1
  292. package/dist/components/Kbd/Kbd.variants.cjs.map +1 -1
  293. package/dist/components/Kbd/Kbd.variants.d.ts.map +1 -1
  294. package/dist/components/Kbd/Kbd.variants.js.map +1 -1
  295. package/dist/components/Label/Label.cjs +1 -1
  296. package/dist/components/Label/Label.cjs.map +1 -1
  297. package/dist/components/Label/Label.d.ts +4 -1
  298. package/dist/components/Label/Label.d.ts.map +1 -1
  299. package/dist/components/Label/Label.js +21 -10
  300. package/dist/components/Label/Label.js.map +1 -1
  301. package/dist/components/Menu/MenuCheckboxItemBase.cjs +1 -1
  302. package/dist/components/Menu/MenuCheckboxItemBase.cjs.map +1 -1
  303. package/dist/components/Menu/MenuCheckboxItemBase.d.ts.map +1 -1
  304. package/dist/components/Menu/MenuCheckboxItemBase.js +2 -0
  305. package/dist/components/Menu/MenuCheckboxItemBase.js.map +1 -1
  306. package/dist/components/Menu/MenuItemBase.cjs +1 -1
  307. package/dist/components/Menu/MenuItemBase.cjs.map +1 -1
  308. package/dist/components/Menu/MenuItemBase.d.ts.map +1 -1
  309. package/dist/components/Menu/MenuItemBase.js +1 -0
  310. package/dist/components/Menu/MenuItemBase.js.map +1 -1
  311. package/dist/components/Menu/MenuLabelBase.cjs +1 -1
  312. package/dist/components/Menu/MenuLabelBase.cjs.map +1 -1
  313. package/dist/components/Menu/MenuLabelBase.d.ts.map +1 -1
  314. package/dist/components/Menu/MenuLabelBase.js +1 -0
  315. package/dist/components/Menu/MenuLabelBase.js.map +1 -1
  316. package/dist/components/Menu/MenuRadioGroupBase.cjs +1 -1
  317. package/dist/components/Menu/MenuRadioGroupBase.cjs.map +1 -1
  318. package/dist/components/Menu/MenuRadioGroupBase.js +1 -0
  319. package/dist/components/Menu/MenuRadioGroupBase.js.map +1 -1
  320. package/dist/components/Menu/MenuRadioItemBase.cjs +1 -1
  321. package/dist/components/Menu/MenuRadioItemBase.cjs.map +1 -1
  322. package/dist/components/Menu/MenuRadioItemBase.d.ts.map +1 -1
  323. package/dist/components/Menu/MenuRadioItemBase.js +2 -0
  324. package/dist/components/Menu/MenuRadioItemBase.js.map +1 -1
  325. package/dist/components/Menu/MenuSeparatorBase.cjs +1 -1
  326. package/dist/components/Menu/MenuSeparatorBase.cjs.map +1 -1
  327. package/dist/components/Menu/MenuSeparatorBase.d.ts.map +1 -1
  328. package/dist/components/Menu/MenuSeparatorBase.js +1 -0
  329. package/dist/components/Menu/MenuSeparatorBase.js.map +1 -1
  330. package/dist/components/Menu/menuItemVariants.cjs +1 -1
  331. package/dist/components/Menu/menuItemVariants.cjs.map +1 -1
  332. package/dist/components/Menu/menuItemVariants.js +1 -1
  333. package/dist/components/Menu/menuItemVariants.js.map +1 -1
  334. package/dist/components/Menubar/Menubar.cjs +1 -1
  335. package/dist/components/Menubar/Menubar.cjs.map +1 -1
  336. package/dist/components/Menubar/Menubar.d.ts.map +1 -1
  337. package/dist/components/Menubar/Menubar.js +1 -0
  338. package/dist/components/Menubar/Menubar.js.map +1 -1
  339. package/dist/components/Menubar/MenubarContent.cjs +1 -1
  340. package/dist/components/Menubar/MenubarContent.cjs.map +1 -1
  341. package/dist/components/Menubar/MenubarContent.d.ts.map +1 -1
  342. package/dist/components/Menubar/MenubarContent.js +1 -0
  343. package/dist/components/Menubar/MenubarContent.js.map +1 -1
  344. package/dist/components/Menubar/MenubarTrigger.cjs +1 -1
  345. package/dist/components/Menubar/MenubarTrigger.cjs.map +1 -1
  346. package/dist/components/Menubar/MenubarTrigger.d.ts.map +1 -1
  347. package/dist/components/Menubar/MenubarTrigger.js +2 -1
  348. package/dist/components/Menubar/MenubarTrigger.js.map +1 -1
  349. package/dist/components/Nav/Nav.cjs +1 -1
  350. package/dist/components/Nav/Nav.cjs.map +1 -1
  351. package/dist/components/Nav/Nav.js +1 -0
  352. package/dist/components/Nav/Nav.js.map +1 -1
  353. package/dist/components/Nav/NavItem.cjs +1 -1
  354. package/dist/components/Nav/NavItem.cjs.map +1 -1
  355. package/dist/components/Nav/NavItem.d.ts.map +1 -1
  356. package/dist/components/Nav/NavItem.js +1 -0
  357. package/dist/components/Nav/NavItem.js.map +1 -1
  358. package/dist/components/Nav/NavLink.cjs +1 -1
  359. package/dist/components/Nav/NavLink.cjs.map +1 -1
  360. package/dist/components/Nav/NavLink.d.ts.map +1 -1
  361. package/dist/components/Nav/NavLink.js +2 -1
  362. package/dist/components/Nav/NavLink.js.map +1 -1
  363. package/dist/components/Nav/NavList.cjs +1 -1
  364. package/dist/components/Nav/NavList.cjs.map +1 -1
  365. package/dist/components/Nav/NavList.d.ts.map +1 -1
  366. package/dist/components/Nav/NavList.js +1 -0
  367. package/dist/components/Nav/NavList.js.map +1 -1
  368. package/dist/components/Nav/NavSubmenu.cjs +1 -1
  369. package/dist/components/Nav/NavSubmenu.cjs.map +1 -1
  370. package/dist/components/Nav/NavSubmenu.d.ts.map +1 -1
  371. package/dist/components/Nav/NavSubmenu.js +1 -0
  372. package/dist/components/Nav/NavSubmenu.js.map +1 -1
  373. package/dist/components/Nav/NavTrigger.cjs +1 -1
  374. package/dist/components/Nav/NavTrigger.cjs.map +1 -1
  375. package/dist/components/Nav/NavTrigger.d.ts.map +1 -1
  376. package/dist/components/Nav/NavTrigger.js +3 -1
  377. package/dist/components/Nav/NavTrigger.js.map +1 -1
  378. package/dist/components/NavigationMenu/NavigationMenu.cjs +1 -1
  379. package/dist/components/NavigationMenu/NavigationMenu.cjs.map +1 -1
  380. package/dist/components/NavigationMenu/NavigationMenu.d.ts.map +1 -1
  381. package/dist/components/NavigationMenu/NavigationMenu.js +1 -0
  382. package/dist/components/NavigationMenu/NavigationMenu.js.map +1 -1
  383. package/dist/components/NavigationMenu/NavigationMenuContent.cjs +1 -1
  384. package/dist/components/NavigationMenu/NavigationMenuContent.cjs.map +1 -1
  385. package/dist/components/NavigationMenu/NavigationMenuContent.d.ts.map +1 -1
  386. package/dist/components/NavigationMenu/NavigationMenuContent.js +1 -0
  387. package/dist/components/NavigationMenu/NavigationMenuContent.js.map +1 -1
  388. package/dist/components/NavigationMenu/NavigationMenuItem.cjs +1 -1
  389. package/dist/components/NavigationMenu/NavigationMenuItem.cjs.map +1 -1
  390. package/dist/components/NavigationMenu/NavigationMenuItem.d.ts.map +1 -1
  391. package/dist/components/NavigationMenu/NavigationMenuItem.js +1 -0
  392. package/dist/components/NavigationMenu/NavigationMenuItem.js.map +1 -1
  393. package/dist/components/NavigationMenu/NavigationMenuLink.cjs +1 -1
  394. package/dist/components/NavigationMenu/NavigationMenuLink.cjs.map +1 -1
  395. package/dist/components/NavigationMenu/NavigationMenuLink.d.ts.map +1 -1
  396. package/dist/components/NavigationMenu/NavigationMenuLink.js +2 -1
  397. package/dist/components/NavigationMenu/NavigationMenuLink.js.map +1 -1
  398. package/dist/components/NavigationMenu/NavigationMenuList.cjs +1 -1
  399. package/dist/components/NavigationMenu/NavigationMenuList.cjs.map +1 -1
  400. package/dist/components/NavigationMenu/NavigationMenuList.d.ts.map +1 -1
  401. package/dist/components/NavigationMenu/NavigationMenuList.js +1 -0
  402. package/dist/components/NavigationMenu/NavigationMenuList.js.map +1 -1
  403. package/dist/components/NavigationMenu/NavigationMenuTrigger.cjs +1 -1
  404. package/dist/components/NavigationMenu/NavigationMenuTrigger.cjs.map +1 -1
  405. package/dist/components/NavigationMenu/NavigationMenuTrigger.d.ts.map +1 -1
  406. package/dist/components/NavigationMenu/NavigationMenuTrigger.js +2 -1
  407. package/dist/components/NavigationMenu/NavigationMenuTrigger.js.map +1 -1
  408. package/dist/components/NumberInput/NumberInput.cjs +1 -1
  409. package/dist/components/NumberInput/NumberInput.cjs.map +1 -1
  410. package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
  411. package/dist/components/NumberInput/NumberInput.js +3 -0
  412. package/dist/components/NumberInput/NumberInput.js.map +1 -1
  413. package/dist/components/Pagination/Pagination.cjs +1 -1
  414. package/dist/components/Pagination/Pagination.cjs.map +1 -1
  415. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  416. package/dist/components/Pagination/Pagination.js +1 -0
  417. package/dist/components/Pagination/Pagination.js.map +1 -1
  418. package/dist/components/Pagination/PaginationContent.cjs +1 -1
  419. package/dist/components/Pagination/PaginationContent.cjs.map +1 -1
  420. package/dist/components/Pagination/PaginationContent.d.ts.map +1 -1
  421. package/dist/components/Pagination/PaginationContent.js +1 -0
  422. package/dist/components/Pagination/PaginationContent.js.map +1 -1
  423. package/dist/components/Pagination/PaginationEllipsis.cjs +1 -1
  424. package/dist/components/Pagination/PaginationEllipsis.cjs.map +1 -1
  425. package/dist/components/Pagination/PaginationEllipsis.d.ts.map +1 -1
  426. package/dist/components/Pagination/PaginationEllipsis.js +1 -0
  427. package/dist/components/Pagination/PaginationEllipsis.js.map +1 -1
  428. package/dist/components/Pagination/PaginationItem.cjs +1 -1
  429. package/dist/components/Pagination/PaginationItem.cjs.map +1 -1
  430. package/dist/components/Pagination/PaginationItem.js +1 -0
  431. package/dist/components/Pagination/PaginationItem.js.map +1 -1
  432. package/dist/components/Pagination/PaginationLink.cjs +1 -1
  433. package/dist/components/Pagination/PaginationLink.cjs.map +1 -1
  434. package/dist/components/Pagination/PaginationLink.d.ts.map +1 -1
  435. package/dist/components/Pagination/PaginationLink.js +1 -0
  436. package/dist/components/Pagination/PaginationLink.js.map +1 -1
  437. package/dist/components/Pagination/PaginationNext.cjs +1 -1
  438. package/dist/components/Pagination/PaginationNext.cjs.map +1 -1
  439. package/dist/components/Pagination/PaginationNext.d.ts.map +1 -1
  440. package/dist/components/Pagination/PaginationNext.js +3 -0
  441. package/dist/components/Pagination/PaginationNext.js.map +1 -1
  442. package/dist/components/Pagination/PaginationPrevious.cjs +1 -1
  443. package/dist/components/Pagination/PaginationPrevious.cjs.map +1 -1
  444. package/dist/components/Pagination/PaginationPrevious.d.ts.map +1 -1
  445. package/dist/components/Pagination/PaginationPrevious.js +3 -0
  446. package/dist/components/Pagination/PaginationPrevious.js.map +1 -1
  447. package/dist/components/Popover/PopoverContent.cjs +1 -1
  448. package/dist/components/Popover/PopoverContent.cjs.map +1 -1
  449. package/dist/components/Popover/PopoverContent.d.ts.map +1 -1
  450. package/dist/components/Popover/PopoverContent.js +1 -0
  451. package/dist/components/Popover/PopoverContent.js.map +1 -1
  452. package/dist/components/Popover/PopoverTrigger.cjs +1 -1
  453. package/dist/components/Popover/PopoverTrigger.cjs.map +1 -1
  454. package/dist/components/Popover/PopoverTrigger.d.ts.map +1 -1
  455. package/dist/components/Popover/PopoverTrigger.js +1 -0
  456. package/dist/components/Popover/PopoverTrigger.js.map +1 -1
  457. package/dist/components/Progress/Progress.variants.cjs.map +1 -1
  458. package/dist/components/Progress/Progress.variants.d.ts.map +1 -1
  459. package/dist/components/Progress/Progress.variants.js.map +1 -1
  460. package/dist/components/RadioGroup/Radio.cjs +1 -1
  461. package/dist/components/RadioGroup/Radio.cjs.map +1 -1
  462. package/dist/components/RadioGroup/Radio.d.ts.map +1 -1
  463. package/dist/components/RadioGroup/Radio.js +4 -0
  464. package/dist/components/RadioGroup/Radio.js.map +1 -1
  465. package/dist/components/RadioGroup/Radio.variants.cjs.map +1 -1
  466. package/dist/components/RadioGroup/Radio.variants.d.ts.map +1 -1
  467. package/dist/components/RadioGroup/Radio.variants.js.map +1 -1
  468. package/dist/components/RadioGroup/RadioGroup.cjs +1 -1
  469. package/dist/components/RadioGroup/RadioGroup.cjs.map +1 -1
  470. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
  471. package/dist/components/RadioGroup/RadioGroup.js +1 -0
  472. package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
  473. package/dist/components/ScrollArea/ScrollArea.cjs +1 -1
  474. package/dist/components/ScrollArea/ScrollArea.cjs.map +1 -1
  475. package/dist/components/ScrollArea/ScrollArea.d.ts.map +1 -1
  476. package/dist/components/ScrollArea/ScrollArea.js +1 -0
  477. package/dist/components/ScrollArea/ScrollArea.js.map +1 -1
  478. package/dist/components/Section/Section.cjs +1 -1
  479. package/dist/components/Section/Section.cjs.map +1 -1
  480. package/dist/components/Section/Section.d.ts.map +1 -1
  481. package/dist/components/Section/Section.js +1 -0
  482. package/dist/components/Section/Section.js.map +1 -1
  483. package/dist/components/Select/Select.cjs +1 -1
  484. package/dist/components/Select/Select.cjs.map +1 -1
  485. package/dist/components/Select/Select.d.ts.map +1 -1
  486. package/dist/components/Select/Select.js +1 -0
  487. package/dist/components/Select/Select.js.map +1 -1
  488. package/dist/components/Select/SelectContent.cjs +1 -1
  489. package/dist/components/Select/SelectContent.cjs.map +1 -1
  490. package/dist/components/Select/SelectContent.d.ts.map +1 -1
  491. package/dist/components/Select/SelectContent.js +1 -0
  492. package/dist/components/Select/SelectContent.js.map +1 -1
  493. package/dist/components/Select/SelectItem.cjs +1 -1
  494. package/dist/components/Select/SelectItem.cjs.map +1 -1
  495. package/dist/components/Select/SelectItem.d.ts.map +1 -1
  496. package/dist/components/Select/SelectItem.js +1 -0
  497. package/dist/components/Select/SelectItem.js.map +1 -1
  498. package/dist/components/Select/SelectSeparator.cjs +1 -1
  499. package/dist/components/Select/SelectSeparator.cjs.map +1 -1
  500. package/dist/components/Select/SelectSeparator.d.ts.map +1 -1
  501. package/dist/components/Select/SelectSeparator.js +1 -0
  502. package/dist/components/Select/SelectSeparator.js.map +1 -1
  503. package/dist/components/Select/SelectTrigger.cjs +1 -1
  504. package/dist/components/Select/SelectTrigger.cjs.map +1 -1
  505. package/dist/components/Select/SelectTrigger.d.ts.map +1 -1
  506. package/dist/components/Select/SelectTrigger.js +1 -0
  507. package/dist/components/Select/SelectTrigger.js.map +1 -1
  508. package/dist/components/Sheet/Sheet.cjs +1 -1
  509. package/dist/components/Sheet/Sheet.cjs.map +1 -1
  510. package/dist/components/Sheet/Sheet.d.ts.map +1 -1
  511. package/dist/components/Sheet/Sheet.js +2 -0
  512. package/dist/components/Sheet/Sheet.js.map +1 -1
  513. package/dist/components/Sidebar/Sidebar.cjs +1 -1
  514. package/dist/components/Sidebar/Sidebar.cjs.map +1 -1
  515. package/dist/components/Sidebar/Sidebar.d.ts.map +1 -1
  516. package/dist/components/Sidebar/Sidebar.js +2 -0
  517. package/dist/components/Sidebar/Sidebar.js.map +1 -1
  518. package/dist/components/Sidebar/SidebarContent.cjs +1 -1
  519. package/dist/components/Sidebar/SidebarContent.cjs.map +1 -1
  520. package/dist/components/Sidebar/SidebarContent.d.ts.map +1 -1
  521. package/dist/components/Sidebar/SidebarContent.js +1 -0
  522. package/dist/components/Sidebar/SidebarContent.js.map +1 -1
  523. package/dist/components/Sidebar/SidebarFooter.cjs +1 -1
  524. package/dist/components/Sidebar/SidebarFooter.cjs.map +1 -1
  525. package/dist/components/Sidebar/SidebarFooter.d.ts.map +1 -1
  526. package/dist/components/Sidebar/SidebarFooter.js +1 -0
  527. package/dist/components/Sidebar/SidebarFooter.js.map +1 -1
  528. package/dist/components/Sidebar/SidebarGroup.cjs +1 -1
  529. package/dist/components/Sidebar/SidebarGroup.cjs.map +1 -1
  530. package/dist/components/Sidebar/SidebarGroup.d.ts.map +1 -1
  531. package/dist/components/Sidebar/SidebarGroup.js +1 -0
  532. package/dist/components/Sidebar/SidebarGroup.js.map +1 -1
  533. package/dist/components/Sidebar/SidebarGroupLabel.cjs +1 -1
  534. package/dist/components/Sidebar/SidebarGroupLabel.cjs.map +1 -1
  535. package/dist/components/Sidebar/SidebarGroupLabel.d.ts.map +1 -1
  536. package/dist/components/Sidebar/SidebarGroupLabel.js +1 -0
  537. package/dist/components/Sidebar/SidebarGroupLabel.js.map +1 -1
  538. package/dist/components/Sidebar/SidebarHeader.cjs +1 -1
  539. package/dist/components/Sidebar/SidebarHeader.cjs.map +1 -1
  540. package/dist/components/Sidebar/SidebarHeader.d.ts.map +1 -1
  541. package/dist/components/Sidebar/SidebarHeader.js +1 -0
  542. package/dist/components/Sidebar/SidebarHeader.js.map +1 -1
  543. package/dist/components/Sidebar/SidebarInset.cjs +1 -1
  544. package/dist/components/Sidebar/SidebarInset.cjs.map +1 -1
  545. package/dist/components/Sidebar/SidebarInset.d.ts.map +1 -1
  546. package/dist/components/Sidebar/SidebarInset.js +1 -0
  547. package/dist/components/Sidebar/SidebarInset.js.map +1 -1
  548. package/dist/components/Sidebar/SidebarMenu.cjs +1 -1
  549. package/dist/components/Sidebar/SidebarMenu.cjs.map +1 -1
  550. package/dist/components/Sidebar/SidebarMenu.d.ts.map +1 -1
  551. package/dist/components/Sidebar/SidebarMenu.js +1 -0
  552. package/dist/components/Sidebar/SidebarMenu.js.map +1 -1
  553. package/dist/components/Sidebar/SidebarMenuButton.cjs +1 -1
  554. package/dist/components/Sidebar/SidebarMenuButton.cjs.map +1 -1
  555. package/dist/components/Sidebar/SidebarMenuButton.d.ts.map +1 -1
  556. package/dist/components/Sidebar/SidebarMenuButton.js +1 -0
  557. package/dist/components/Sidebar/SidebarMenuButton.js.map +1 -1
  558. package/dist/components/Sidebar/SidebarMenuItem.cjs +1 -1
  559. package/dist/components/Sidebar/SidebarMenuItem.cjs.map +1 -1
  560. package/dist/components/Sidebar/SidebarMenuItem.d.ts.map +1 -1
  561. package/dist/components/Sidebar/SidebarMenuItem.js +1 -0
  562. package/dist/components/Sidebar/SidebarMenuItem.js.map +1 -1
  563. package/dist/components/Sidebar/SidebarProvider.cjs +1 -1
  564. package/dist/components/Sidebar/SidebarProvider.cjs.map +1 -1
  565. package/dist/components/Sidebar/SidebarProvider.d.ts.map +1 -1
  566. package/dist/components/Sidebar/SidebarProvider.js +1 -0
  567. package/dist/components/Sidebar/SidebarProvider.js.map +1 -1
  568. package/dist/components/Sidebar/SidebarTrigger.cjs +1 -1
  569. package/dist/components/Sidebar/SidebarTrigger.cjs.map +1 -1
  570. package/dist/components/Sidebar/SidebarTrigger.d.ts.map +1 -1
  571. package/dist/components/Sidebar/SidebarTrigger.js +1 -0
  572. package/dist/components/Sidebar/SidebarTrigger.js.map +1 -1
  573. package/dist/components/SkipLink/SkipLink.cjs +1 -1
  574. package/dist/components/SkipLink/SkipLink.cjs.map +1 -1
  575. package/dist/components/SkipLink/SkipLink.js +1 -1
  576. package/dist/components/SkipLink/SkipLink.js.map +1 -1
  577. package/dist/components/Slider/Slider.cjs +1 -1
  578. package/dist/components/Slider/Slider.cjs.map +1 -1
  579. package/dist/components/Slider/Slider.d.ts.map +1 -1
  580. package/dist/components/Slider/Slider.js +6 -0
  581. package/dist/components/Slider/Slider.js.map +1 -1
  582. package/dist/components/Slider/Slider.variants.cjs.map +1 -1
  583. package/dist/components/Slider/Slider.variants.d.ts.map +1 -1
  584. package/dist/components/Slider/Slider.variants.js.map +1 -1
  585. package/dist/components/Spinner/Spinner.variants.cjs.map +1 -1
  586. package/dist/components/Spinner/Spinner.variants.d.ts.map +1 -1
  587. package/dist/components/Spinner/Spinner.variants.js.map +1 -1
  588. package/dist/components/SplitLayout/SplitLayout.cjs +1 -1
  589. package/dist/components/SplitLayout/SplitLayout.cjs.map +1 -1
  590. package/dist/components/SplitLayout/SplitLayout.d.ts.map +1 -1
  591. package/dist/components/SplitLayout/SplitLayout.js +1 -0
  592. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  593. package/dist/components/Stack/Stack.cjs +1 -1
  594. package/dist/components/Stack/Stack.cjs.map +1 -1
  595. package/dist/components/Stack/Stack.d.ts +11 -3
  596. package/dist/components/Stack/Stack.d.ts.map +1 -1
  597. package/dist/components/Stack/Stack.js +4 -4
  598. package/dist/components/Stack/Stack.js.map +1 -1
  599. package/dist/components/Stepper/Stepper.cjs +1 -1
  600. package/dist/components/Stepper/Stepper.cjs.map +1 -1
  601. package/dist/components/Stepper/Stepper.d.ts.map +1 -1
  602. package/dist/components/Stepper/Stepper.js +3 -0
  603. package/dist/components/Stepper/Stepper.js.map +1 -1
  604. package/dist/components/Stepper/StepperContent.cjs +1 -1
  605. package/dist/components/Stepper/StepperContent.cjs.map +1 -1
  606. package/dist/components/Stepper/StepperContent.d.ts.map +1 -1
  607. package/dist/components/Stepper/StepperContent.js +1 -0
  608. package/dist/components/Stepper/StepperContent.js.map +1 -1
  609. package/dist/components/Stepper/StepperDescription.cjs +1 -1
  610. package/dist/components/Stepper/StepperDescription.cjs.map +1 -1
  611. package/dist/components/Stepper/StepperDescription.d.ts.map +1 -1
  612. package/dist/components/Stepper/StepperDescription.js +1 -0
  613. package/dist/components/Stepper/StepperDescription.js.map +1 -1
  614. package/dist/components/Stepper/StepperIndicator.cjs +1 -1
  615. package/dist/components/Stepper/StepperIndicator.cjs.map +1 -1
  616. package/dist/components/Stepper/StepperIndicator.d.ts.map +1 -1
  617. package/dist/components/Stepper/StepperIndicator.js +2 -1
  618. package/dist/components/Stepper/StepperIndicator.js.map +1 -1
  619. package/dist/components/Stepper/StepperItem.cjs +1 -1
  620. package/dist/components/Stepper/StepperItem.cjs.map +1 -1
  621. package/dist/components/Stepper/StepperItem.d.ts.map +1 -1
  622. package/dist/components/Stepper/StepperItem.js +1 -0
  623. package/dist/components/Stepper/StepperItem.js.map +1 -1
  624. package/dist/components/Stepper/StepperTitle.cjs +1 -1
  625. package/dist/components/Stepper/StepperTitle.cjs.map +1 -1
  626. package/dist/components/Stepper/StepperTitle.d.ts.map +1 -1
  627. package/dist/components/Stepper/StepperTitle.js +1 -0
  628. package/dist/components/Stepper/StepperTitle.js.map +1 -1
  629. package/dist/components/Switch/Switch.cjs +1 -1
  630. package/dist/components/Switch/Switch.cjs.map +1 -1
  631. package/dist/components/Switch/Switch.d.ts.map +1 -1
  632. package/dist/components/Switch/Switch.js +6 -3
  633. package/dist/components/Switch/Switch.js.map +1 -1
  634. package/dist/components/Switch/Switch.variants.cjs +1 -1
  635. package/dist/components/Switch/Switch.variants.cjs.map +1 -1
  636. package/dist/components/Switch/Switch.variants.d.ts.map +1 -1
  637. package/dist/components/Switch/Switch.variants.js +4 -4
  638. package/dist/components/Switch/Switch.variants.js.map +1 -1
  639. package/dist/components/Table/Table.cjs +1 -1
  640. package/dist/components/Table/Table.cjs.map +1 -1
  641. package/dist/components/Table/Table.d.ts.map +1 -1
  642. package/dist/components/Table/Table.js +3 -0
  643. package/dist/components/Table/Table.js.map +1 -1
  644. package/dist/components/Table/TableBody.cjs +1 -1
  645. package/dist/components/Table/TableBody.cjs.map +1 -1
  646. package/dist/components/Table/TableBody.d.ts.map +1 -1
  647. package/dist/components/Table/TableBody.js +1 -0
  648. package/dist/components/Table/TableBody.js.map +1 -1
  649. package/dist/components/Table/TableCell.cjs +1 -1
  650. package/dist/components/Table/TableCell.cjs.map +1 -1
  651. package/dist/components/Table/TableCell.d.ts.map +1 -1
  652. package/dist/components/Table/TableCell.js +1 -0
  653. package/dist/components/Table/TableCell.js.map +1 -1
  654. package/dist/components/Table/TableFooter.cjs +1 -1
  655. package/dist/components/Table/TableFooter.cjs.map +1 -1
  656. package/dist/components/Table/TableFooter.d.ts.map +1 -1
  657. package/dist/components/Table/TableFooter.js +2 -1
  658. package/dist/components/Table/TableFooter.js.map +1 -1
  659. package/dist/components/Table/TableHead.cjs +1 -1
  660. package/dist/components/Table/TableHead.cjs.map +1 -1
  661. package/dist/components/Table/TableHead.d.ts.map +1 -1
  662. package/dist/components/Table/TableHead.js +2 -1
  663. package/dist/components/Table/TableHead.js.map +1 -1
  664. package/dist/components/Table/TableHeader.cjs +1 -1
  665. package/dist/components/Table/TableHeader.cjs.map +1 -1
  666. package/dist/components/Table/TableHeader.d.ts.map +1 -1
  667. package/dist/components/Table/TableHeader.js +1 -0
  668. package/dist/components/Table/TableHeader.js.map +1 -1
  669. package/dist/components/Table/TableRow.cjs +1 -1
  670. package/dist/components/Table/TableRow.cjs.map +1 -1
  671. package/dist/components/Table/TableRow.d.ts.map +1 -1
  672. package/dist/components/Table/TableRow.js +1 -0
  673. package/dist/components/Table/TableRow.js.map +1 -1
  674. package/dist/components/Tabs/Tabs.cjs +1 -1
  675. package/dist/components/Tabs/Tabs.cjs.map +1 -1
  676. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  677. package/dist/components/Tabs/Tabs.js +1 -0
  678. package/dist/components/Tabs/Tabs.js.map +1 -1
  679. package/dist/components/Tabs/TabsContent.cjs +1 -1
  680. package/dist/components/Tabs/TabsContent.cjs.map +1 -1
  681. package/dist/components/Tabs/TabsContent.d.ts.map +1 -1
  682. package/dist/components/Tabs/TabsContent.js +1 -0
  683. package/dist/components/Tabs/TabsContent.js.map +1 -1
  684. package/dist/components/Tabs/TabsList.cjs +1 -1
  685. package/dist/components/Tabs/TabsList.cjs.map +1 -1
  686. package/dist/components/Tabs/TabsList.d.ts.map +1 -1
  687. package/dist/components/Tabs/TabsList.js +1 -0
  688. package/dist/components/Tabs/TabsList.js.map +1 -1
  689. package/dist/components/Tabs/TabsTrigger.cjs +1 -1
  690. package/dist/components/Tabs/TabsTrigger.cjs.map +1 -1
  691. package/dist/components/Tabs/TabsTrigger.d.ts.map +1 -1
  692. package/dist/components/Tabs/TabsTrigger.js +1 -0
  693. package/dist/components/Tabs/TabsTrigger.js.map +1 -1
  694. package/dist/components/Tag/Tag.variants.cjs +1 -1
  695. package/dist/components/Tag/Tag.variants.cjs.map +1 -1
  696. package/dist/components/Tag/Tag.variants.js +1 -1
  697. package/dist/components/Tag/Tag.variants.js.map +1 -1
  698. package/dist/components/Text/Text.cjs.map +1 -1
  699. package/dist/components/Text/Text.d.ts +1 -1
  700. package/dist/components/Text/Text.d.ts.map +1 -1
  701. package/dist/components/Text/Text.js.map +1 -1
  702. package/dist/components/Text/Text.variants.cjs +1 -1
  703. package/dist/components/Text/Text.variants.cjs.map +1 -1
  704. package/dist/components/Text/Text.variants.d.ts +1 -1
  705. package/dist/components/Text/Text.variants.d.ts.map +1 -1
  706. package/dist/components/Text/Text.variants.js +6 -1
  707. package/dist/components/Text/Text.variants.js.map +1 -1
  708. package/dist/components/Timeline/Timeline.cjs +1 -1
  709. package/dist/components/Timeline/Timeline.cjs.map +1 -1
  710. package/dist/components/Timeline/Timeline.d.ts.map +1 -1
  711. package/dist/components/Timeline/Timeline.js +1 -0
  712. package/dist/components/Timeline/Timeline.js.map +1 -1
  713. package/dist/components/Timeline/TimelineItem.cjs +1 -1
  714. package/dist/components/Timeline/TimelineItem.cjs.map +1 -1
  715. package/dist/components/Timeline/TimelineItem.d.ts +2 -1
  716. package/dist/components/Timeline/TimelineItem.d.ts.map +1 -1
  717. package/dist/components/Timeline/TimelineItem.js +48 -28
  718. package/dist/components/Timeline/TimelineItem.js.map +1 -1
  719. package/dist/components/Toast/Toast.cjs +1 -1
  720. package/dist/components/Toast/Toast.cjs.map +1 -1
  721. package/dist/components/Toast/Toast.d.ts.map +1 -1
  722. package/dist/components/Toast/Toast.js +4 -0
  723. package/dist/components/Toast/Toast.js.map +1 -1
  724. package/dist/components/Toast/Toaster.cjs +1 -1
  725. package/dist/components/Toast/Toaster.cjs.map +1 -1
  726. package/dist/components/Toast/Toaster.d.ts.map +1 -1
  727. package/dist/components/Toast/Toaster.js +1 -0
  728. package/dist/components/Toast/Toaster.js.map +1 -1
  729. package/dist/components/Tooltip/TooltipContent.cjs +1 -1
  730. package/dist/components/Tooltip/TooltipContent.cjs.map +1 -1
  731. package/dist/components/Tooltip/TooltipContent.d.ts.map +1 -1
  732. package/dist/components/Tooltip/TooltipContent.js +1 -0
  733. package/dist/components/Tooltip/TooltipContent.js.map +1 -1
  734. package/dist/components/Tooltip/TooltipTrigger.cjs +1 -1
  735. package/dist/components/Tooltip/TooltipTrigger.cjs.map +1 -1
  736. package/dist/components/Tooltip/TooltipTrigger.d.ts.map +1 -1
  737. package/dist/components/Tooltip/TooltipTrigger.js +1 -0
  738. package/dist/components/Tooltip/TooltipTrigger.js.map +1 -1
  739. package/dist/index.cjs +1 -1
  740. package/dist/index.d.ts +3 -1
  741. package/dist/index.d.ts.map +1 -1
  742. package/dist/index.js +190 -188
  743. package/dist/styles-root.css +12 -1
  744. package/dist/styles.css +22 -1
  745. package/dist/utils/_tailwind-safelist.d.ts +2 -0
  746. package/dist/utils/_tailwind-safelist.d.ts.map +1 -0
  747. package/dist/utils/modal-primitive.cjs +1 -1
  748. package/dist/utils/modal-primitive.cjs.map +1 -1
  749. package/dist/utils/modal-primitive.d.ts.map +1 -1
  750. package/dist/utils/modal-primitive.js +5 -0
  751. package/dist/utils/modal-primitive.js.map +1 -1
  752. package/dist/utils/polymorphic.d.ts +11 -0
  753. package/dist/utils/polymorphic.d.ts.map +1 -0
  754. package/dist/utils/responsive-maps.cjs +2 -0
  755. package/dist/utils/responsive-maps.cjs.map +1 -0
  756. package/dist/utils/responsive-maps.d.ts +50 -0
  757. package/dist/utils/responsive-maps.d.ts.map +1 -0
  758. package/dist/utils/responsive-maps.js +103 -0
  759. package/dist/utils/responsive-maps.js.map +1 -0
  760. package/dist/utils/responsive.cjs +1 -1
  761. package/dist/utils/responsive.cjs.map +1 -1
  762. package/dist/utils/responsive.d.ts +2 -19
  763. package/dist/utils/responsive.d.ts.map +1 -1
  764. package/dist/utils/responsive.js +23 -113
  765. package/dist/utils/responsive.js.map +1 -1
  766. package/package.json +6 -2
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/roving-index.cjs`),r=require(`../Icon/Icon.cjs`),i=require(`./Combobox.context.cjs`),a=require(`../../utils/scroll-into-view-safe.cjs`),o=require(`./Combobox.utils.cjs`);let s=require(`react`);s=e.__toESM(s,1);let c=require(`react/jsx-runtime`);function l({ref:e,className:l,...u}){let d=i.useComboboxContext(),f=s.useRef(null),p=s.useCallback(t=>{f.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]);s.useEffect(()=>{f.current?.focus();let e=d.highlightOnOpenRef.current;if(e!=null){d.highlightOnOpenRef.current=null;let t=o.getNavigableOptions(d.listRef);if(t.length>0){let n=e===`first`?t[0]:t[t.length-1];n!=null&&(d.setActiveDescendantId(n.id),a.scrollIntoViewSafe(n))}}},[]);let m=e=>{let t=o.getNavigableOptions(d.listRef),r=t.findIndex(e=>e.id===d.activeDescendantId),i=n.getRovingIndex(e.key,r,t.length,`vertical`);if(i!==void 0){e.preventDefault();let n=t[i];n!=null&&(d.setActiveDescendantId(n.id),a.scrollIntoViewSafe(n));return}switch(e.key){case`Enter`:if(e.preventDefault(),d.activeDescendantId!=null){let e=document.getElementById(d.activeDescendantId);e!=null&&e.getAttribute(`aria-disabled`)!==`true`&&e.click()}else d.freeText&&d.filterText!==``&&(d.onValueChange(d.filterText),d.onOpenChange(!1),d.triggerRef.current?.focus());break;case`Escape`:d.onOpenChange(!1),d.triggerRef.current?.focus();break;case`Tab`:d.triggerRef.current?.focus(),d.onOpenChange(!1);break;default:break}},h=e=>{d.setFilterText(e.target.value),d.setActiveDescendantId(void 0)};return(0,c.jsxs)(`div`,{className:t.cn(`flex items-center gap-(--space-2) px-(--space-3)`,`border-b border-(--nuka-border-base)`),children:[(0,c.jsx)(r.Icon,{size:`sm`,color:`muted`,children:(0,c.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,c.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,c.jsx)(`path`,{d:`m21 21-4.3-4.3`})]})}),(0,c.jsx)(`input`,{...u,ref:p,id:d.inputId,role:`combobox`,"aria-autocomplete":`list`,"aria-expanded":d.open,"aria-controls":d.listboxId,"aria-activedescendant":d.activeDescendantId,value:d.filterText,onChange:h,onKeyDown:m,className:t.cn(`flex-1 bg-transparent py-(--space-3)`,`text-sm text-(--nuka-text-base)`,`placeholder:text-(--nuka-text-muted)`,`outline-none`,l)})]})}l.displayName=`ComboboxInput`,exports.ComboboxInput=l;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/roving-index.cjs`),r=require(`../Icon/Icon.cjs`),i=require(`./Combobox.context.cjs`),a=require(`../../utils/scroll-into-view-safe.cjs`),o=require(`./Combobox.utils.cjs`);let s=require(`react`);s=e.__toESM(s,1);let c=require(`react/jsx-runtime`);function l({ref:e,className:l,...u}){let d=i.useComboboxContext(),f=s.useRef(null),p=s.useCallback(t=>{f.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]);s.useEffect(()=>{f.current?.focus();let e=d.highlightOnOpenRef.current;if(e!=null){d.highlightOnOpenRef.current=null;let t=o.getNavigableOptions(d.listRef);if(t.length>0){let n=e===`first`?t[0]:t[t.length-1];n!=null&&(d.setActiveDescendantId(n.id),a.scrollIntoViewSafe(n))}}},[]);let m=e=>{let t=o.getNavigableOptions(d.listRef),r=t.findIndex(e=>e.id===d.activeDescendantId),i=n.getRovingIndex(e.key,r,t.length,`vertical`);if(i!==void 0){e.preventDefault();let n=t[i];n!=null&&(d.setActiveDescendantId(n.id),a.scrollIntoViewSafe(n));return}switch(e.key){case`Enter`:if(e.preventDefault(),d.activeDescendantId!=null){let e=document.getElementById(d.activeDescendantId);e!=null&&e.getAttribute(`aria-disabled`)!==`true`&&e.click()}else d.freeText&&d.filterText!==``&&(d.onValueChange(d.filterText),d.onOpenChange(!1),d.triggerRef.current?.focus());break;case`Escape`:d.onOpenChange(!1),d.triggerRef.current?.focus();break;case`Tab`:d.triggerRef.current?.focus(),d.onOpenChange(!1);break;default:break}},h=e=>{d.setFilterText(e.target.value),d.setActiveDescendantId(void 0)};return(0,c.jsxs)(`div`,{"data-slot":`input-wrapper`,className:t.cn(`flex items-center gap-(--space-2) px-(--space-3)`,`border-b border-(--nuka-border-base)`),children:[(0,c.jsx)(r.Icon,{size:`sm`,color:`muted`,children:(0,c.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,c.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,c.jsx)(`path`,{d:`m21 21-4.3-4.3`})]})}),(0,c.jsx)(`input`,{...u,ref:p,id:d.inputId,"data-slot":`input`,role:`combobox`,"aria-autocomplete":`list`,"aria-expanded":d.open,"aria-controls":d.listboxId,"aria-activedescendant":d.activeDescendantId,value:d.filterText,onChange:h,onKeyDown:m,className:t.cn(`flex-1 bg-transparent py-(--space-3)`,`text-sm text-(--nuka-text-base)`,`placeholder:text-(--nuka-text-muted)`,`outline-none`,l)})]})}l.displayName=`ComboboxInput`,exports.ComboboxInput=l;
2
2
  //# sourceMappingURL=ComboboxInput.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxInput.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxInput.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport type { ComboboxInputProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getNavigableOptions } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxInput({ ref, className, ...props }: ComboboxInputProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLInputElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLInputElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n // Focus input and apply highlight directive when panel opens.\n // No rAF: by the time useEffect fires, Portal content and callback refs\n // are committed, so the input and option elements are in the DOM.\n // Empty deps: component unmounts on close and remounts on open.\n React.useEffect(() => {\n internalRef.current?.focus();\n\n const dir = ctx.highlightOnOpenRef.current;\n if (dir != null) {\n ctx.highlightOnOpenRef.current = null;\n const items = getNavigableOptions(ctx.listRef);\n if (items.length > 0) {\n const target = dir === \"first\" ? items[0] : items[items.length - 1];\n if (target != null) {\n ctx.setActiveDescendantId(target.id);\n scrollIntoViewSafe(target);\n }\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- runs once on mount when panel opens\n }, []);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const items = getNavigableOptions(ctx.listRef);\n const currentIdx = items.findIndex(\n (el) => el.id === ctx.activeDescendantId,\n );\n const nextIdx = getRovingIndex(e.key, currentIdx, items.length, \"vertical\");\n\n if (nextIdx !== undefined) {\n e.preventDefault();\n const next = items[nextIdx];\n if (next != null) {\n ctx.setActiveDescendantId(next.id);\n scrollIntoViewSafe(next);\n }\n return;\n }\n\n switch (e.key) {\n case \"Enter\": {\n e.preventDefault();\n if (ctx.activeDescendantId != null) {\n const activeEl = document.getElementById(ctx.activeDescendantId);\n if (\n activeEl != null &&\n activeEl.getAttribute(\"aria-disabled\") !== \"true\"\n ) {\n activeEl.click();\n }\n } else if (ctx.freeText && ctx.filterText !== \"\") {\n ctx.onValueChange(ctx.filterText);\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n }\n break;\n }\n case \"Escape\": {\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n break;\n }\n case \"Tab\": {\n ctx.triggerRef.current?.focus();\n ctx.onOpenChange(false);\n break;\n }\n default:\n break;\n }\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n ctx.setFilterText(e.target.value);\n ctx.setActiveDescendantId(undefined);\n };\n\n return (\n <div\n className={cn(\n \"flex items-center gap-(--space-2) px-(--space-3)\",\n \"border-b border-(--nuka-border-base)\",\n )}\n >\n <Icon size=\"sm\" color=\"muted\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <path d=\"m21 21-4.3-4.3\" />\n </svg>\n </Icon>\n <input\n {...props}\n ref={composedRef}\n id={ctx.inputId}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ctx.activeDescendantId}\n value={ctx.filterText}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n className={cn(\n \"flex-1 bg-transparent py-(--space-3)\",\n \"text-sm text-(--nuka-text-base)\",\n \"placeholder:text-(--nuka-text-muted)\",\n \"outline-none\",\n className,\n )}\n />\n </div>\n );\n}\n\nComboboxInput.displayName = \"ComboboxInput\";\n\nexport { ComboboxInput };\n"],"mappings":"iXAUA,SAAS,EAAc,CAAE,MAAK,YAAW,GAAG,GAA6B,CACvE,IAAM,EAAM,EAAA,oBAAoB,CAC1B,EAAc,EAAM,OAAyB,KAAK,CAElD,EAAc,EAAM,YACvB,GAAkC,CACjC,EAAY,QAAU,EAClB,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,IAEtC,CAAC,EAAI,CACN,CAMD,EAAM,cAAgB,CACpB,EAAY,SAAS,OAAO,CAE5B,IAAM,EAAM,EAAI,mBAAmB,QACnC,GAAI,GAAO,KAAM,CACf,EAAI,mBAAmB,QAAU,KACjC,IAAM,EAAQ,EAAA,oBAAoB,EAAI,QAAQ,CAC9C,GAAI,EAAM,OAAS,EAAG,CACpB,IAAM,EAAS,IAAQ,QAAU,EAAM,GAAK,EAAM,EAAM,OAAS,GAC7D,GAAU,OACZ,EAAI,sBAAsB,EAAO,GAAG,CACpC,EAAA,mBAAmB,EAAO,KAK/B,EAAE,CAAC,CAEN,IAAM,EAAiB,GAA6C,CAClE,IAAM,EAAQ,EAAA,oBAAoB,EAAI,QAAQ,CACxC,EAAa,EAAM,UACtB,GAAO,EAAG,KAAO,EAAI,mBACvB,CACK,EAAU,EAAA,eAAe,EAAE,IAAK,EAAY,EAAM,OAAQ,WAAW,CAE3E,GAAI,IAAY,IAAA,GAAW,CACzB,EAAE,gBAAgB,CAClB,IAAM,EAAO,EAAM,GACf,GAAQ,OACV,EAAI,sBAAsB,EAAK,GAAG,CAClC,EAAA,mBAAmB,EAAK,EAE1B,OAGF,OAAQ,EAAE,IAAV,CACE,IAAK,QAEH,GADA,EAAE,gBAAgB,CACd,EAAI,oBAAsB,KAAM,CAClC,IAAM,EAAW,SAAS,eAAe,EAAI,mBAAmB,CAE9D,GAAY,MACZ,EAAS,aAAa,gBAAgB,GAAK,QAE3C,EAAS,OAAO,MAET,EAAI,UAAY,EAAI,aAAe,KAC5C,EAAI,cAAc,EAAI,WAAW,CACjC,EAAI,aAAa,GAAM,CACvB,EAAI,WAAW,SAAS,OAAO,EAEjC,MAEF,IAAK,SACH,EAAI,aAAa,GAAM,CACvB,EAAI,WAAW,SAAS,OAAO,CAC/B,MAEF,IAAK,MACH,EAAI,WAAW,SAAS,OAAO,CAC/B,EAAI,aAAa,GAAM,CACvB,MAEF,QACE,QAIA,EAAgB,GAA2C,CAC/D,EAAI,cAAc,EAAE,OAAO,MAAM,CACjC,EAAI,sBAAsB,IAAA,GAAU,EAGtC,OACE,EAAA,EAAA,MAAC,MAAD,CACE,UAAW,EAAA,GACT,mDACA,uCACD,UAJH,EAME,EAAA,EAAA,KAAC,EAAA,KAAD,CAAM,KAAK,KAAK,MAAM,kBACpB,EAAA,EAAA,MAAC,MAAD,CACE,QAAQ,YACR,KAAK,OACL,OAAO,eACP,YAAa,EACb,cAAc,QACd,eAAe,iBANjB,EAQE,EAAA,EAAA,KAAC,SAAD,CAAQ,GAAG,KAAK,GAAG,KAAK,EAAE,IAAM,CAAA,EAChC,EAAA,EAAA,KAAC,OAAD,CAAM,EAAE,iBAAmB,CAAA,CACvB,GACD,CAAA,EACP,EAAA,EAAA,KAAC,QAAD,CACE,GAAI,EACJ,IAAK,EACL,GAAI,EAAI,QACR,KAAK,WACL,oBAAkB,OAClB,gBAAe,EAAI,KACnB,gBAAe,EAAI,UACnB,wBAAuB,EAAI,mBAC3B,MAAO,EAAI,WACX,SAAU,EACV,UAAW,EACX,UAAW,EAAA,GACT,uCACA,kCACA,uCACA,eACA,EACD,CACD,CAAA,CACE,GAIV,EAAc,YAAc"}
1
+ {"version":3,"file":"ComboboxInput.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxInput.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport type { ComboboxInputProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getNavigableOptions } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxInput({ ref, className, ...props }: ComboboxInputProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLInputElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLInputElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n // Focus input and apply highlight directive when panel opens.\n // No rAF: by the time useEffect fires, Portal content and callback refs\n // are committed, so the input and option elements are in the DOM.\n // Empty deps: component unmounts on close and remounts on open.\n React.useEffect(() => {\n internalRef.current?.focus();\n\n const dir = ctx.highlightOnOpenRef.current;\n if (dir != null) {\n ctx.highlightOnOpenRef.current = null;\n const items = getNavigableOptions(ctx.listRef);\n if (items.length > 0) {\n const target = dir === \"first\" ? items[0] : items[items.length - 1];\n if (target != null) {\n ctx.setActiveDescendantId(target.id);\n scrollIntoViewSafe(target);\n }\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- runs once on mount when panel opens\n }, []);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const items = getNavigableOptions(ctx.listRef);\n const currentIdx = items.findIndex(\n (el) => el.id === ctx.activeDescendantId,\n );\n const nextIdx = getRovingIndex(e.key, currentIdx, items.length, \"vertical\");\n\n if (nextIdx !== undefined) {\n e.preventDefault();\n const next = items[nextIdx];\n if (next != null) {\n ctx.setActiveDescendantId(next.id);\n scrollIntoViewSafe(next);\n }\n return;\n }\n\n switch (e.key) {\n case \"Enter\": {\n e.preventDefault();\n if (ctx.activeDescendantId != null) {\n const activeEl = document.getElementById(ctx.activeDescendantId);\n if (\n activeEl != null &&\n activeEl.getAttribute(\"aria-disabled\") !== \"true\"\n ) {\n activeEl.click();\n }\n } else if (ctx.freeText && ctx.filterText !== \"\") {\n ctx.onValueChange(ctx.filterText);\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n }\n break;\n }\n case \"Escape\": {\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n break;\n }\n case \"Tab\": {\n ctx.triggerRef.current?.focus();\n ctx.onOpenChange(false);\n break;\n }\n default:\n break;\n }\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n ctx.setFilterText(e.target.value);\n ctx.setActiveDescendantId(undefined);\n };\n\n return (\n <div\n data-slot=\"input-wrapper\"\n className={cn(\n \"flex items-center gap-(--space-2) px-(--space-3)\",\n \"border-b border-(--nuka-border-base)\",\n )}\n >\n <Icon size=\"sm\" color=\"muted\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <path d=\"m21 21-4.3-4.3\" />\n </svg>\n </Icon>\n <input\n {...props}\n ref={composedRef}\n id={ctx.inputId}\n data-slot=\"input\"\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ctx.activeDescendantId}\n value={ctx.filterText}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n className={cn(\n \"flex-1 bg-transparent py-(--space-3)\",\n \"text-sm text-(--nuka-text-base)\",\n \"placeholder:text-(--nuka-text-muted)\",\n \"outline-none\",\n className,\n )}\n />\n </div>\n );\n}\n\nComboboxInput.displayName = \"ComboboxInput\";\n\nexport { ComboboxInput };\n"],"mappings":"iXAUA,SAAS,EAAc,CAAE,MAAK,YAAW,GAAG,GAA6B,CACvE,IAAM,EAAM,EAAA,oBAAoB,CAC1B,EAAc,EAAM,OAAyB,KAAK,CAElD,EAAc,EAAM,YACvB,GAAkC,CACjC,EAAY,QAAU,EAClB,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,IAEtC,CAAC,EAAI,CACN,CAMD,EAAM,cAAgB,CACpB,EAAY,SAAS,OAAO,CAE5B,IAAM,EAAM,EAAI,mBAAmB,QACnC,GAAI,GAAO,KAAM,CACf,EAAI,mBAAmB,QAAU,KACjC,IAAM,EAAQ,EAAA,oBAAoB,EAAI,QAAQ,CAC9C,GAAI,EAAM,OAAS,EAAG,CACpB,IAAM,EAAS,IAAQ,QAAU,EAAM,GAAK,EAAM,EAAM,OAAS,GAC7D,GAAU,OACZ,EAAI,sBAAsB,EAAO,GAAG,CACpC,EAAA,mBAAmB,EAAO,KAK/B,EAAE,CAAC,CAEN,IAAM,EAAiB,GAA6C,CAClE,IAAM,EAAQ,EAAA,oBAAoB,EAAI,QAAQ,CACxC,EAAa,EAAM,UACtB,GAAO,EAAG,KAAO,EAAI,mBACvB,CACK,EAAU,EAAA,eAAe,EAAE,IAAK,EAAY,EAAM,OAAQ,WAAW,CAE3E,GAAI,IAAY,IAAA,GAAW,CACzB,EAAE,gBAAgB,CAClB,IAAM,EAAO,EAAM,GACf,GAAQ,OACV,EAAI,sBAAsB,EAAK,GAAG,CAClC,EAAA,mBAAmB,EAAK,EAE1B,OAGF,OAAQ,EAAE,IAAV,CACE,IAAK,QAEH,GADA,EAAE,gBAAgB,CACd,EAAI,oBAAsB,KAAM,CAClC,IAAM,EAAW,SAAS,eAAe,EAAI,mBAAmB,CAE9D,GAAY,MACZ,EAAS,aAAa,gBAAgB,GAAK,QAE3C,EAAS,OAAO,MAET,EAAI,UAAY,EAAI,aAAe,KAC5C,EAAI,cAAc,EAAI,WAAW,CACjC,EAAI,aAAa,GAAM,CACvB,EAAI,WAAW,SAAS,OAAO,EAEjC,MAEF,IAAK,SACH,EAAI,aAAa,GAAM,CACvB,EAAI,WAAW,SAAS,OAAO,CAC/B,MAEF,IAAK,MACH,EAAI,WAAW,SAAS,OAAO,CAC/B,EAAI,aAAa,GAAM,CACvB,MAEF,QACE,QAIA,EAAgB,GAA2C,CAC/D,EAAI,cAAc,EAAE,OAAO,MAAM,CACjC,EAAI,sBAAsB,IAAA,GAAU,EAGtC,OACE,EAAA,EAAA,MAAC,MAAD,CACE,YAAU,gBACV,UAAW,EAAA,GACT,mDACA,uCACD,UALH,EAOE,EAAA,EAAA,KAAC,EAAA,KAAD,CAAM,KAAK,KAAK,MAAM,kBACpB,EAAA,EAAA,MAAC,MAAD,CACE,QAAQ,YACR,KAAK,OACL,OAAO,eACP,YAAa,EACb,cAAc,QACd,eAAe,iBANjB,EAQE,EAAA,EAAA,KAAC,SAAD,CAAQ,GAAG,KAAK,GAAG,KAAK,EAAE,IAAM,CAAA,EAChC,EAAA,EAAA,KAAC,OAAD,CAAM,EAAE,iBAAmB,CAAA,CACvB,GACD,CAAA,EACP,EAAA,EAAA,KAAC,QAAD,CACE,GAAI,EACJ,IAAK,EACL,GAAI,EAAI,QACR,YAAU,QACV,KAAK,WACL,oBAAkB,OAClB,gBAAe,EAAI,KACnB,gBAAe,EAAI,UACnB,wBAAuB,EAAI,mBAC3B,MAAO,EAAI,WACX,SAAU,EACV,UAAW,EACX,UAAW,EAAA,GACT,uCACA,kCACA,uCACA,eACA,EACD,CACD,CAAA,CACE,GAIV,EAAc,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxInput.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxInput.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAInF,iBAAS,aAAa,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,2CAoItE;kBApIQ,aAAa;;;AAwItB,OAAO,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"ComboboxInput.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxInput.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAInF,iBAAS,aAAa,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,2CAsItE;kBAtIQ,aAAa;;;AA0ItB,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -51,6 +51,7 @@ function l({ ref: l, className: u, ...d }) {
51
51
  f.setFilterText(e.target.value), f.setActiveDescendantId(void 0);
52
52
  };
53
53
  return /* @__PURE__ */ c("div", {
54
+ "data-slot": "input-wrapper",
54
55
  className: e("flex items-center gap-(--space-2) px-(--space-3)", "border-b border-(--nuka-border-base)"),
55
56
  children: [/* @__PURE__ */ s(n, {
56
57
  size: "sm",
@@ -72,6 +73,7 @@ function l({ ref: l, className: u, ...d }) {
72
73
  ...d,
73
74
  ref: m,
74
75
  id: f.inputId,
76
+ "data-slot": "input",
75
77
  role: "combobox",
76
78
  "aria-autocomplete": "list",
77
79
  "aria-expanded": f.open,
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxInput.js","names":[],"sources":["../../../src/components/Combobox/ComboboxInput.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport type { ComboboxInputProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getNavigableOptions } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxInput({ ref, className, ...props }: ComboboxInputProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLInputElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLInputElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n // Focus input and apply highlight directive when panel opens.\n // No rAF: by the time useEffect fires, Portal content and callback refs\n // are committed, so the input and option elements are in the DOM.\n // Empty deps: component unmounts on close and remounts on open.\n React.useEffect(() => {\n internalRef.current?.focus();\n\n const dir = ctx.highlightOnOpenRef.current;\n if (dir != null) {\n ctx.highlightOnOpenRef.current = null;\n const items = getNavigableOptions(ctx.listRef);\n if (items.length > 0) {\n const target = dir === \"first\" ? items[0] : items[items.length - 1];\n if (target != null) {\n ctx.setActiveDescendantId(target.id);\n scrollIntoViewSafe(target);\n }\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- runs once on mount when panel opens\n }, []);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const items = getNavigableOptions(ctx.listRef);\n const currentIdx = items.findIndex(\n (el) => el.id === ctx.activeDescendantId,\n );\n const nextIdx = getRovingIndex(e.key, currentIdx, items.length, \"vertical\");\n\n if (nextIdx !== undefined) {\n e.preventDefault();\n const next = items[nextIdx];\n if (next != null) {\n ctx.setActiveDescendantId(next.id);\n scrollIntoViewSafe(next);\n }\n return;\n }\n\n switch (e.key) {\n case \"Enter\": {\n e.preventDefault();\n if (ctx.activeDescendantId != null) {\n const activeEl = document.getElementById(ctx.activeDescendantId);\n if (\n activeEl != null &&\n activeEl.getAttribute(\"aria-disabled\") !== \"true\"\n ) {\n activeEl.click();\n }\n } else if (ctx.freeText && ctx.filterText !== \"\") {\n ctx.onValueChange(ctx.filterText);\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n }\n break;\n }\n case \"Escape\": {\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n break;\n }\n case \"Tab\": {\n ctx.triggerRef.current?.focus();\n ctx.onOpenChange(false);\n break;\n }\n default:\n break;\n }\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n ctx.setFilterText(e.target.value);\n ctx.setActiveDescendantId(undefined);\n };\n\n return (\n <div\n className={cn(\n \"flex items-center gap-(--space-2) px-(--space-3)\",\n \"border-b border-(--nuka-border-base)\",\n )}\n >\n <Icon size=\"sm\" color=\"muted\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <path d=\"m21 21-4.3-4.3\" />\n </svg>\n </Icon>\n <input\n {...props}\n ref={composedRef}\n id={ctx.inputId}\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ctx.activeDescendantId}\n value={ctx.filterText}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n className={cn(\n \"flex-1 bg-transparent py-(--space-3)\",\n \"text-sm text-(--nuka-text-base)\",\n \"placeholder:text-(--nuka-text-muted)\",\n \"outline-none\",\n className,\n )}\n />\n </div>\n );\n}\n\nComboboxInput.displayName = \"ComboboxInput\";\n\nexport { ComboboxInput };\n"],"mappings":";;;;;;;;;;AAUA,SAAS,EAAc,EAAE,QAAK,cAAW,GAAG,KAA6B;CACvE,IAAM,IAAM,GAAoB,EAC1B,IAAc,EAAM,OAAyB,KAAK,EAElD,IAAc,EAAM,aACvB,MAAkC;AAEjC,EADA,EAAY,UAAU,GAClB,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU;IAEtC,CAAC,EAAI,CACN;AAMD,GAAM,gBAAgB;AACpB,IAAY,SAAS,OAAO;EAE5B,IAAM,IAAM,EAAI,mBAAmB;AACnC,MAAI,KAAO,MAAM;AACf,KAAI,mBAAmB,UAAU;GACjC,IAAM,IAAQ,EAAoB,EAAI,QAAQ;AAC9C,OAAI,EAAM,SAAS,GAAG;IACpB,IAAM,IAAS,MAAQ,UAAU,EAAM,KAAK,EAAM,EAAM,SAAS;AACjE,IAAI,KAAU,SACZ,EAAI,sBAAsB,EAAO,GAAG,EACpC,EAAmB,EAAO;;;IAK/B,EAAE,CAAC;CAEN,IAAM,KAAiB,MAA6C;EAClE,IAAM,IAAQ,EAAoB,EAAI,QAAQ,EACxC,IAAa,EAAM,WACtB,MAAO,EAAG,OAAO,EAAI,mBACvB,EACK,IAAU,EAAe,EAAE,KAAK,GAAY,EAAM,QAAQ,WAAW;AAE3E,MAAI,MAAY,KAAA,GAAW;AACzB,KAAE,gBAAgB;GAClB,IAAM,IAAO,EAAM;AACnB,GAAI,KAAQ,SACV,EAAI,sBAAsB,EAAK,GAAG,EAClC,EAAmB,EAAK;AAE1B;;AAGF,UAAQ,EAAE,KAAV;GACE,KAAK;AAEH,QADA,EAAE,gBAAgB,EACd,EAAI,sBAAsB,MAAM;KAClC,IAAM,IAAW,SAAS,eAAe,EAAI,mBAAmB;AAChE,KACE,KAAY,QACZ,EAAS,aAAa,gBAAgB,KAAK,UAE3C,EAAS,OAAO;WAET,EAAI,YAAY,EAAI,eAAe,OAC5C,EAAI,cAAc,EAAI,WAAW,EACjC,EAAI,aAAa,GAAM,EACvB,EAAI,WAAW,SAAS,OAAO;AAEjC;GAEF,KAAK;AAEH,IADA,EAAI,aAAa,GAAM,EACvB,EAAI,WAAW,SAAS,OAAO;AAC/B;GAEF,KAAK;AAEH,IADA,EAAI,WAAW,SAAS,OAAO,EAC/B,EAAI,aAAa,GAAM;AACvB;GAEF,QACE;;IAIA,KAAgB,MAA2C;AAE/D,EADA,EAAI,cAAc,EAAE,OAAO,MAAM,EACjC,EAAI,sBAAsB,KAAA,EAAU;;AAGtC,QACE,kBAAC,OAAD;EACE,WAAW,EACT,oDACA,uCACD;YAJH,CAME,kBAAC,GAAD;GAAM,MAAK;GAAK,OAAM;aACpB,kBAAC,OAAD;IACE,SAAQ;IACR,MAAK;IACL,QAAO;IACP,aAAa;IACb,eAAc;IACd,gBAAe;cANjB,CAQE,kBAAC,UAAD;KAAQ,IAAG;KAAK,IAAG;KAAK,GAAE;KAAM,CAAA,EAChC,kBAAC,QAAD,EAAM,GAAE,kBAAmB,CAAA,CACvB;;GACD,CAAA,EACP,kBAAC,SAAD;GACE,GAAI;GACJ,KAAK;GACL,IAAI,EAAI;GACR,MAAK;GACL,qBAAkB;GAClB,iBAAe,EAAI;GACnB,iBAAe,EAAI;GACnB,yBAAuB,EAAI;GAC3B,OAAO,EAAI;GACX,UAAU;GACV,WAAW;GACX,WAAW,EACT,wCACA,mCACA,wCACA,gBACA,EACD;GACD,CAAA,CACE;;;AAIV,EAAc,cAAc"}
1
+ {"version":3,"file":"ComboboxInput.js","names":[],"sources":["../../../src/components/Combobox/ComboboxInput.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport type { ComboboxInputProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getNavigableOptions } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxInput({ ref, className, ...props }: ComboboxInputProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLInputElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLInputElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n // Focus input and apply highlight directive when panel opens.\n // No rAF: by the time useEffect fires, Portal content and callback refs\n // are committed, so the input and option elements are in the DOM.\n // Empty deps: component unmounts on close and remounts on open.\n React.useEffect(() => {\n internalRef.current?.focus();\n\n const dir = ctx.highlightOnOpenRef.current;\n if (dir != null) {\n ctx.highlightOnOpenRef.current = null;\n const items = getNavigableOptions(ctx.listRef);\n if (items.length > 0) {\n const target = dir === \"first\" ? items[0] : items[items.length - 1];\n if (target != null) {\n ctx.setActiveDescendantId(target.id);\n scrollIntoViewSafe(target);\n }\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- runs once on mount when panel opens\n }, []);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n const items = getNavigableOptions(ctx.listRef);\n const currentIdx = items.findIndex(\n (el) => el.id === ctx.activeDescendantId,\n );\n const nextIdx = getRovingIndex(e.key, currentIdx, items.length, \"vertical\");\n\n if (nextIdx !== undefined) {\n e.preventDefault();\n const next = items[nextIdx];\n if (next != null) {\n ctx.setActiveDescendantId(next.id);\n scrollIntoViewSafe(next);\n }\n return;\n }\n\n switch (e.key) {\n case \"Enter\": {\n e.preventDefault();\n if (ctx.activeDescendantId != null) {\n const activeEl = document.getElementById(ctx.activeDescendantId);\n if (\n activeEl != null &&\n activeEl.getAttribute(\"aria-disabled\") !== \"true\"\n ) {\n activeEl.click();\n }\n } else if (ctx.freeText && ctx.filterText !== \"\") {\n ctx.onValueChange(ctx.filterText);\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n }\n break;\n }\n case \"Escape\": {\n ctx.onOpenChange(false);\n ctx.triggerRef.current?.focus();\n break;\n }\n case \"Tab\": {\n ctx.triggerRef.current?.focus();\n ctx.onOpenChange(false);\n break;\n }\n default:\n break;\n }\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n ctx.setFilterText(e.target.value);\n ctx.setActiveDescendantId(undefined);\n };\n\n return (\n <div\n data-slot=\"input-wrapper\"\n className={cn(\n \"flex items-center gap-(--space-2) px-(--space-3)\",\n \"border-b border-(--nuka-border-base)\",\n )}\n >\n <Icon size=\"sm\" color=\"muted\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={2}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <path d=\"m21 21-4.3-4.3\" />\n </svg>\n </Icon>\n <input\n {...props}\n ref={composedRef}\n id={ctx.inputId}\n data-slot=\"input\"\n role=\"combobox\"\n aria-autocomplete=\"list\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ctx.activeDescendantId}\n value={ctx.filterText}\n onChange={handleChange}\n onKeyDown={handleKeyDown}\n className={cn(\n \"flex-1 bg-transparent py-(--space-3)\",\n \"text-sm text-(--nuka-text-base)\",\n \"placeholder:text-(--nuka-text-muted)\",\n \"outline-none\",\n className,\n )}\n />\n </div>\n );\n}\n\nComboboxInput.displayName = \"ComboboxInput\";\n\nexport { ComboboxInput };\n"],"mappings":";;;;;;;;;;AAUA,SAAS,EAAc,EAAE,QAAK,cAAW,GAAG,KAA6B;CACvE,IAAM,IAAM,GAAoB,EAC1B,IAAc,EAAM,OAAyB,KAAK,EAElD,IAAc,EAAM,aACvB,MAAkC;AAEjC,EADA,EAAY,UAAU,GAClB,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU;IAEtC,CAAC,EAAI,CACN;AAMD,GAAM,gBAAgB;AACpB,IAAY,SAAS,OAAO;EAE5B,IAAM,IAAM,EAAI,mBAAmB;AACnC,MAAI,KAAO,MAAM;AACf,KAAI,mBAAmB,UAAU;GACjC,IAAM,IAAQ,EAAoB,EAAI,QAAQ;AAC9C,OAAI,EAAM,SAAS,GAAG;IACpB,IAAM,IAAS,MAAQ,UAAU,EAAM,KAAK,EAAM,EAAM,SAAS;AACjE,IAAI,KAAU,SACZ,EAAI,sBAAsB,EAAO,GAAG,EACpC,EAAmB,EAAO;;;IAK/B,EAAE,CAAC;CAEN,IAAM,KAAiB,MAA6C;EAClE,IAAM,IAAQ,EAAoB,EAAI,QAAQ,EACxC,IAAa,EAAM,WACtB,MAAO,EAAG,OAAO,EAAI,mBACvB,EACK,IAAU,EAAe,EAAE,KAAK,GAAY,EAAM,QAAQ,WAAW;AAE3E,MAAI,MAAY,KAAA,GAAW;AACzB,KAAE,gBAAgB;GAClB,IAAM,IAAO,EAAM;AACnB,GAAI,KAAQ,SACV,EAAI,sBAAsB,EAAK,GAAG,EAClC,EAAmB,EAAK;AAE1B;;AAGF,UAAQ,EAAE,KAAV;GACE,KAAK;AAEH,QADA,EAAE,gBAAgB,EACd,EAAI,sBAAsB,MAAM;KAClC,IAAM,IAAW,SAAS,eAAe,EAAI,mBAAmB;AAChE,KACE,KAAY,QACZ,EAAS,aAAa,gBAAgB,KAAK,UAE3C,EAAS,OAAO;WAET,EAAI,YAAY,EAAI,eAAe,OAC5C,EAAI,cAAc,EAAI,WAAW,EACjC,EAAI,aAAa,GAAM,EACvB,EAAI,WAAW,SAAS,OAAO;AAEjC;GAEF,KAAK;AAEH,IADA,EAAI,aAAa,GAAM,EACvB,EAAI,WAAW,SAAS,OAAO;AAC/B;GAEF,KAAK;AAEH,IADA,EAAI,WAAW,SAAS,OAAO,EAC/B,EAAI,aAAa,GAAM;AACvB;GAEF,QACE;;IAIA,KAAgB,MAA2C;AAE/D,EADA,EAAI,cAAc,EAAE,OAAO,MAAM,EACjC,EAAI,sBAAsB,KAAA,EAAU;;AAGtC,QACE,kBAAC,OAAD;EACE,aAAU;EACV,WAAW,EACT,oDACA,uCACD;YALH,CAOE,kBAAC,GAAD;GAAM,MAAK;GAAK,OAAM;aACpB,kBAAC,OAAD;IACE,SAAQ;IACR,MAAK;IACL,QAAO;IACP,aAAa;IACb,eAAc;IACd,gBAAe;cANjB,CAQE,kBAAC,UAAD;KAAQ,IAAG;KAAK,IAAG;KAAK,GAAE;KAAM,CAAA,EAChC,kBAAC,QAAD,EAAM,GAAE,kBAAmB,CAAA,CACvB;;GACD,CAAA,EACP,kBAAC,SAAD;GACE,GAAI;GACJ,KAAK;GACL,IAAI,EAAI;GACR,aAAU;GACV,MAAK;GACL,qBAAkB;GAClB,iBAAe,EAAI;GACnB,iBAAe,EAAI;GACnB,yBAAuB,EAAI;GAC3B,OAAO,EAAI;GACX,UAAU;GACV,WAAW;GACX,WAAW,EACT,wCACA,mCACA,wCACA,gBACA,EACD;GACD,CAAA,CACE;;;AAIV,EAAc,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`./Combobox.context.cjs`);let r=require(`react`);r=e.__toESM(r,1);let i=require(`react/jsx-runtime`);function a({ref:e,className:a,children:o,...s}){let c=n.useComboboxContext(),l=r.useCallback(t=>{c.listRef.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e,c.listRef]),{filterText:u,setVisibleCount:d,listRef:f}=c;return r.useLayoutEffect(()=>{if(f.current==null)return;let e=f.current.querySelectorAll(`[role="option"]:not([hidden])`).length;d(e)},[u,d,f]),(0,i.jsx)(`div`,{ref:l,id:c.listboxId,role:`listbox`,"aria-label":`Options`,className:t.cn(`max-h-[280px] overflow-y-auto p-(--space-1)`,a),...s,children:o})}a.displayName=`ComboboxListbox`,exports.ComboboxListbox=a;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`./Combobox.context.cjs`);let r=require(`react`);r=e.__toESM(r,1);let i=require(`react/jsx-runtime`);function a({ref:e,className:a,children:o,...s}){let c=n.useComboboxContext(),l=r.useCallback(t=>{c.listRef.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e,c.listRef]),{filterText:u,setVisibleCount:d,listRef:f}=c;return r.useLayoutEffect(()=>{if(f.current==null)return;let e=f.current.querySelectorAll(`[role="option"]:not([hidden])`).length;d(e)},[u,d,f]),(0,i.jsx)(`div`,{ref:l,id:c.listboxId,"data-slot":`listbox`,role:`listbox`,"aria-label":`Options`,className:t.cn(`max-h-[280px] overflow-y-auto p-(--space-1)`,a),...s,children:o})}a.displayName=`ComboboxListbox`,exports.ComboboxListbox=a;
2
2
  //# sourceMappingURL=ComboboxListbox.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxListbox.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxListbox.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxListboxProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxListbox({\n ref,\n className,\n children,\n ...props\n}: ComboboxListboxProps) {\n const ctx = useComboboxContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n ctx.listRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref, ctx.listRef],\n );\n\n const { filterText, setVisibleCount, listRef } = ctx;\n\n // Count visible options for ComboboxEmpty. Layout effect avoids\n // flash-of-empty-state by updating before paint.\n React.useLayoutEffect(() => {\n if (listRef.current == null) return;\n const count = listRef.current.querySelectorAll(\n '[role=\"option\"]:not([hidden])',\n ).length;\n setVisibleCount(count);\n }, [filterText, setVisibleCount, listRef]);\n\n return (\n <div\n ref={composedRef}\n id={ctx.listboxId}\n role=\"listbox\"\n aria-label=\"Options\"\n className={cn(\"max-h-[280px] overflow-y-auto p-(--space-1)\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nComboboxListbox.displayName = \"ComboboxListbox\";\n\nexport { ComboboxListbox };\n"],"mappings":"oNAMA,SAAS,EAAgB,CACvB,MACA,YACA,WACA,GAAG,GACoB,CACvB,IAAM,EAAM,EAAA,oBAAoB,CAE1B,EAAc,EAAM,YACvB,GAAgC,CAC/B,EAAI,QAAQ,QAAU,EAClB,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,IAEtC,CAAC,EAAK,EAAI,QAAQ,CACnB,CAEK,CAAE,aAAY,kBAAiB,WAAY,EAYjD,OARA,EAAM,oBAAsB,CAC1B,GAAI,EAAQ,SAAW,KAAM,OAC7B,IAAM,EAAQ,EAAQ,QAAQ,iBAC5B,gCACD,CAAC,OACF,EAAgB,EAAM,EACrB,CAAC,EAAY,EAAiB,EAAQ,CAAC,EAGxC,EAAA,EAAA,KAAC,MAAD,CACE,IAAK,EACL,GAAI,EAAI,UACR,KAAK,UACL,aAAW,UACX,UAAW,EAAA,GAAG,8CAA+C,EAAU,CACvE,GAAI,EAEH,WACG,CAAA,CAIV,EAAgB,YAAc"}
1
+ {"version":3,"file":"ComboboxListbox.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxListbox.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxListboxProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxListbox({\n ref,\n className,\n children,\n ...props\n}: ComboboxListboxProps) {\n const ctx = useComboboxContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n ctx.listRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref, ctx.listRef],\n );\n\n const { filterText, setVisibleCount, listRef } = ctx;\n\n // Count visible options for ComboboxEmpty. Layout effect avoids\n // flash-of-empty-state by updating before paint.\n React.useLayoutEffect(() => {\n if (listRef.current == null) return;\n const count = listRef.current.querySelectorAll(\n '[role=\"option\"]:not([hidden])',\n ).length;\n setVisibleCount(count);\n }, [filterText, setVisibleCount, listRef]);\n\n return (\n <div\n ref={composedRef}\n id={ctx.listboxId}\n data-slot=\"listbox\"\n role=\"listbox\"\n aria-label=\"Options\"\n className={cn(\"max-h-[280px] overflow-y-auto p-(--space-1)\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nComboboxListbox.displayName = \"ComboboxListbox\";\n\nexport { ComboboxListbox };\n"],"mappings":"oNAMA,SAAS,EAAgB,CACvB,MACA,YACA,WACA,GAAG,GACoB,CACvB,IAAM,EAAM,EAAA,oBAAoB,CAE1B,EAAc,EAAM,YACvB,GAAgC,CAC/B,EAAI,QAAQ,QAAU,EAClB,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,IAEtC,CAAC,EAAK,EAAI,QAAQ,CACnB,CAEK,CAAE,aAAY,kBAAiB,WAAY,EAYjD,OARA,EAAM,oBAAsB,CAC1B,GAAI,EAAQ,SAAW,KAAM,OAC7B,IAAM,EAAQ,EAAQ,QAAQ,iBAC5B,gCACD,CAAC,OACF,EAAgB,EAAM,EACrB,CAAC,EAAY,EAAiB,EAAQ,CAAC,EAGxC,EAAA,EAAA,KAAC,MAAD,CACE,IAAK,EACL,GAAI,EAAI,UACR,YAAU,UACV,KAAK,UACL,aAAW,UACX,UAAW,EAAA,GAAG,8CAA+C,EAAU,CACvE,GAAI,EAEH,WACG,CAAA,CAIV,EAAgB,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxListbox.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxListbox.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,iBAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAoCtB;kBAzCQ,eAAe;;;AA6CxB,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"ComboboxListbox.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxListbox.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,iBAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAqCtB;kBA1CQ,eAAe;;;AA8CxB,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -19,6 +19,7 @@ function i({ ref: i, className: a, children: o, ...s }) {
19
19
  ]), /* @__PURE__ */ r("div", {
20
20
  ref: l,
21
21
  id: c.listboxId,
22
+ "data-slot": "listbox",
22
23
  role: "listbox",
23
24
  "aria-label": "Options",
24
25
  className: e("max-h-[280px] overflow-y-auto p-(--space-1)", a),
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxListbox.js","names":[],"sources":["../../../src/components/Combobox/ComboboxListbox.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxListboxProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxListbox({\n ref,\n className,\n children,\n ...props\n}: ComboboxListboxProps) {\n const ctx = useComboboxContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n ctx.listRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref, ctx.listRef],\n );\n\n const { filterText, setVisibleCount, listRef } = ctx;\n\n // Count visible options for ComboboxEmpty. Layout effect avoids\n // flash-of-empty-state by updating before paint.\n React.useLayoutEffect(() => {\n if (listRef.current == null) return;\n const count = listRef.current.querySelectorAll(\n '[role=\"option\"]:not([hidden])',\n ).length;\n setVisibleCount(count);\n }, [filterText, setVisibleCount, listRef]);\n\n return (\n <div\n ref={composedRef}\n id={ctx.listboxId}\n role=\"listbox\"\n aria-label=\"Options\"\n className={cn(\"max-h-[280px] overflow-y-auto p-(--space-1)\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nComboboxListbox.displayName = \"ComboboxListbox\";\n\nexport { ComboboxListbox };\n"],"mappings":";;;;;;AAMA,SAAS,EAAgB,EACvB,QACA,cACA,aACA,GAAG,KACoB;CACvB,IAAM,IAAM,GAAoB,EAE1B,IAAc,EAAM,aACvB,MAAgC;AAE/B,EADA,EAAI,QAAQ,UAAU,GAClB,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU;IAEtC,CAAC,GAAK,EAAI,QAAQ,CACnB,EAEK,EAAE,eAAY,oBAAiB,eAAY;AAYjD,QARA,EAAM,sBAAsB;AAC1B,MAAI,EAAQ,WAAW,KAAM;EAC7B,IAAM,IAAQ,EAAQ,QAAQ,iBAC5B,kCACD,CAAC;AACF,IAAgB,EAAM;IACrB;EAAC;EAAY;EAAiB;EAAQ,CAAC,EAGxC,kBAAC,OAAD;EACE,KAAK;EACL,IAAI,EAAI;EACR,MAAK;EACL,cAAW;EACX,WAAW,EAAG,+CAA+C,EAAU;EACvE,GAAI;EAEH;EACG,CAAA;;AAIV,EAAgB,cAAc"}
1
+ {"version":3,"file":"ComboboxListbox.js","names":[],"sources":["../../../src/components/Combobox/ComboboxListbox.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxListboxProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxListbox({\n ref,\n className,\n children,\n ...props\n}: ComboboxListboxProps) {\n const ctx = useComboboxContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n ctx.listRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref, ctx.listRef],\n );\n\n const { filterText, setVisibleCount, listRef } = ctx;\n\n // Count visible options for ComboboxEmpty. Layout effect avoids\n // flash-of-empty-state by updating before paint.\n React.useLayoutEffect(() => {\n if (listRef.current == null) return;\n const count = listRef.current.querySelectorAll(\n '[role=\"option\"]:not([hidden])',\n ).length;\n setVisibleCount(count);\n }, [filterText, setVisibleCount, listRef]);\n\n return (\n <div\n ref={composedRef}\n id={ctx.listboxId}\n data-slot=\"listbox\"\n role=\"listbox\"\n aria-label=\"Options\"\n className={cn(\"max-h-[280px] overflow-y-auto p-(--space-1)\", className)}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nComboboxListbox.displayName = \"ComboboxListbox\";\n\nexport { ComboboxListbox };\n"],"mappings":";;;;;;AAMA,SAAS,EAAgB,EACvB,QACA,cACA,aACA,GAAG,KACoB;CACvB,IAAM,IAAM,GAAoB,EAE1B,IAAc,EAAM,aACvB,MAAgC;AAE/B,EADA,EAAI,QAAQ,UAAU,GAClB,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU;IAEtC,CAAC,GAAK,EAAI,QAAQ,CACnB,EAEK,EAAE,eAAY,oBAAiB,eAAY;AAYjD,QARA,EAAM,sBAAsB;AAC1B,MAAI,EAAQ,WAAW,KAAM;EAC7B,IAAM,IAAQ,EAAQ,QAAQ,iBAC5B,kCACD,CAAC;AACF,IAAgB,EAAM;IACrB;EAAC;EAAY;EAAiB;EAAQ,CAAC,EAGxC,kBAAC,OAAD;EACE,KAAK;EACL,IAAI,EAAI;EACR,aAAU;EACV,MAAK;EACL,cAAW;EACX,WAAW,EAAG,+CAA+C,EAAU;EACvE,GAAI;EAEH;EACG,CAAA;;AAIV,EAAgB,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`./Combobox.context.cjs`),r=require(`./Combobox.utils.cjs`);let i=require(`react`);i=e.__toESM(i,1);let a=require(`react/jsx-runtime`);function o({ref:e,value:o,disabled:s=!1,className:c,children:l,onSelect:u}){let d=n.useComboboxContext(),f=i.useRef(null),p=i.useCallback(t=>{f.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]),m=d.value===o,h=`${d.listboxId}-option-${o}`,g=r.getLabel(l),_=d.filterText!==``&&!g.toLowerCase().includes(d.filterText.toLowerCase()),v=d.activeDescendantId===h;return i.useLayoutEffect(()=>(d.registerOption(o,g,f.current),()=>{d.unregisterOption(o)}),[]),i.useEffect(()=>{d.registerDisabledOption(o,s)},[d,o,s]),i.useEffect(()=>{v&&f.current!=null&&typeof f.current.scrollIntoView==`function`&&f.current.scrollIntoView({block:`nearest`})},[v]),(0,a.jsx)(`div`,{ref:p,id:h,role:`option`,"aria-selected":m,"aria-disabled":s||void 0,hidden:_||void 0,className:t.cn(`px-(--space-3) py-(--space-2)`,`text-sm`,`cursor-pointer`,`select-none`,`text-(--nuka-text-base)`,s&&`opacity-50 cursor-not-allowed pointer-events-none`,m&&!v&&`bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)`,v&&`bg-(--nuka-bg-muted) outline-none`,!m&&!v&&!s&&`hover:bg-(--nuka-bg-muted)`,c),onClick:()=>{s||(d.onValueChange(o),u?.(),d.onOpenChange(!1))},children:l})}o.displayName=`ComboboxOption`,exports.ComboboxOption=o;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`./Combobox.context.cjs`),r=require(`./Combobox.utils.cjs`);let i=require(`react`);i=e.__toESM(i,1);let a=require(`react/jsx-runtime`);function o({ref:e,value:o,disabled:s=!1,className:c,children:l,onSelect:u}){let d=n.useComboboxContext(),f=i.useRef(null),p=i.useCallback(t=>{f.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]),m=d.value===o,h=`${d.listboxId}-option-${o}`,g=r.getLabel(l),_=d.filterText!==``&&!g.toLowerCase().includes(d.filterText.toLowerCase()),v=d.activeDescendantId===h;return i.useLayoutEffect(()=>(d.registerOption(o,g,f.current),()=>{d.unregisterOption(o)}),[]),i.useEffect(()=>{d.registerDisabledOption(o,s)},[d,o,s]),i.useEffect(()=>{v&&f.current!=null&&typeof f.current.scrollIntoView==`function`&&f.current.scrollIntoView({block:`nearest`})},[v]),(0,a.jsx)(`div`,{ref:p,id:h,"data-slot":`item`,role:`option`,"aria-selected":m,"aria-disabled":s||void 0,hidden:_||void 0,className:t.cn(`px-(--space-3) py-(--space-2)`,`text-sm`,`cursor-pointer`,`select-none`,`text-(--nuka-text-base)`,s&&`opacity-50 cursor-not-allowed pointer-events-none`,m&&!v&&`bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)`,v&&`bg-(--nuka-bg-muted) outline-none`,!m&&!v&&!s&&`hover:bg-(--nuka-bg-muted)`,c),onClick:()=>{s||(d.onValueChange(o),u?.(),d.onOpenChange(!1))},children:l})}o.displayName=`ComboboxOption`,exports.ComboboxOption=o;
2
2
  //# sourceMappingURL=ComboboxOption.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxOption.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxOption.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxOptionProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getLabel } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxOption({\n ref,\n value,\n disabled = false,\n className,\n children,\n onSelect,\n}: ComboboxOptionProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLDivElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n const isSelected = ctx.value === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n const isFiltered =\n ctx.filterText !== \"\" &&\n !label.toLowerCase().includes(ctx.filterText.toLowerCase());\n\n const isActive = ctx.activeDescendantId === optionId;\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n React.useEffect(() => {\n if (isActive && internalRef.current != null) {\n if (typeof internalRef.current.scrollIntoView === \"function\") {\n internalRef.current.scrollIntoView({ block: \"nearest\" });\n }\n }\n }, [isActive]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n onSelect?.();\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n hidden={isFiltered || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isActive &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isActive && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected && !isActive && !disabled && \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nComboboxOption.displayName = \"ComboboxOption\";\n\nexport { ComboboxOption };\n"],"mappings":"sPAOA,SAAS,EAAe,CACtB,MACA,QACA,WAAW,GACX,YACA,WACA,YACsB,CACtB,IAAM,EAAM,EAAA,oBAAoB,CAC1B,EAAc,EAAM,OAAuB,KAAK,CAEhD,EAAc,EAAM,YACvB,GAAgC,CAC/B,EAAY,QAAU,EAClB,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,IAEtC,CAAC,EAAI,CACN,CAEK,EAAa,EAAI,QAAU,EAC3B,EAAW,GAAG,EAAI,UAAU,UAAU,IACtC,EAAQ,EAAA,SAAS,EAAS,CAE1B,EACJ,EAAI,aAAe,IACnB,CAAC,EAAM,aAAa,CAAC,SAAS,EAAI,WAAW,aAAa,CAAC,CAEvD,EAAW,EAAI,qBAAuB,EA6B5C,OA3BA,EAAM,qBACJ,EAAI,eAAe,EAAO,EAAO,EAAY,QAAQ,KACxC,CACX,EAAI,iBAAiB,EAAM,GAG5B,EAAE,CAAC,CAEN,EAAM,cAAgB,CACpB,EAAI,uBAAuB,EAAO,EAAS,EAC1C,CAAC,EAAK,EAAO,EAAS,CAAC,CAE1B,EAAM,cAAgB,CAChB,GAAY,EAAY,SAAW,MACjC,OAAO,EAAY,QAAQ,gBAAmB,YAChD,EAAY,QAAQ,eAAe,CAAE,MAAO,UAAW,CAAC,EAG3D,CAAC,EAAS,CAAC,EAUZ,EAAA,EAAA,KAAC,MAAD,CACE,IAAK,EACL,GAAI,EACJ,KAAK,SACL,gBAAe,EACf,gBAAe,GAAY,IAAA,GAC3B,OAAQ,GAAc,IAAA,GACtB,UAAW,EAAA,GACT,gCACA,UACA,iBACA,cACA,0BACA,GAAY,oDACZ,GACE,CAAC,GACD,yDACF,GAAY,oCACZ,CAAC,GAAc,CAAC,GAAY,CAAC,GAAY,6BACzC,EACD,CACD,YA7BsB,CACpB,IACJ,EAAI,cAAc,EAAM,CACxB,KAAY,CACZ,EAAI,aAAa,GAAM,GA2BpB,WACG,CAAA,CAIV,EAAe,YAAc"}
1
+ {"version":3,"file":"ComboboxOption.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxOption.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxOptionProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getLabel } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxOption({\n ref,\n value,\n disabled = false,\n className,\n children,\n onSelect,\n}: ComboboxOptionProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLDivElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n const isSelected = ctx.value === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n const isFiltered =\n ctx.filterText !== \"\" &&\n !label.toLowerCase().includes(ctx.filterText.toLowerCase());\n\n const isActive = ctx.activeDescendantId === optionId;\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n React.useEffect(() => {\n if (isActive && internalRef.current != null) {\n if (typeof internalRef.current.scrollIntoView === \"function\") {\n internalRef.current.scrollIntoView({ block: \"nearest\" });\n }\n }\n }, [isActive]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n onSelect?.();\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n data-slot=\"item\"\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n hidden={isFiltered || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isActive &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isActive && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected && !isActive && !disabled && \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nComboboxOption.displayName = \"ComboboxOption\";\n\nexport { ComboboxOption };\n"],"mappings":"sPAOA,SAAS,EAAe,CACtB,MACA,QACA,WAAW,GACX,YACA,WACA,YACsB,CACtB,IAAM,EAAM,EAAA,oBAAoB,CAC1B,EAAc,EAAM,OAAuB,KAAK,CAEhD,EAAc,EAAM,YACvB,GAAgC,CAC/B,EAAY,QAAU,EAClB,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,IAEtC,CAAC,EAAI,CACN,CAEK,EAAa,EAAI,QAAU,EAC3B,EAAW,GAAG,EAAI,UAAU,UAAU,IACtC,EAAQ,EAAA,SAAS,EAAS,CAE1B,EACJ,EAAI,aAAe,IACnB,CAAC,EAAM,aAAa,CAAC,SAAS,EAAI,WAAW,aAAa,CAAC,CAEvD,EAAW,EAAI,qBAAuB,EA6B5C,OA3BA,EAAM,qBACJ,EAAI,eAAe,EAAO,EAAO,EAAY,QAAQ,KACxC,CACX,EAAI,iBAAiB,EAAM,GAG5B,EAAE,CAAC,CAEN,EAAM,cAAgB,CACpB,EAAI,uBAAuB,EAAO,EAAS,EAC1C,CAAC,EAAK,EAAO,EAAS,CAAC,CAE1B,EAAM,cAAgB,CAChB,GAAY,EAAY,SAAW,MACjC,OAAO,EAAY,QAAQ,gBAAmB,YAChD,EAAY,QAAQ,eAAe,CAAE,MAAO,UAAW,CAAC,EAG3D,CAAC,EAAS,CAAC,EAUZ,EAAA,EAAA,KAAC,MAAD,CACE,IAAK,EACL,GAAI,EACJ,YAAU,OACV,KAAK,SACL,gBAAe,EACf,gBAAe,GAAY,IAAA,GAC3B,OAAQ,GAAc,IAAA,GACtB,UAAW,EAAA,GACT,gCACA,UACA,iBACA,cACA,0BACA,GAAY,oDACZ,GACE,CAAC,GACD,yDACF,GAAY,oCACZ,CAAC,GAAc,CAAC,GAAY,CAAC,GAAY,6BACzC,EACD,CACD,YA9BsB,CACpB,IACJ,EAAI,cAAc,EAAM,CACxB,KAAY,CACZ,EAAI,aAAa,GAAM,GA4BpB,WACG,CAAA,CAIV,EAAe,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxOption.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxOption.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAIpF,iBAAS,cAAc,CAAC,EACtB,GAAG,EACH,KAAK,EACL,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,EAAE,mBAAmB,2CA6ErB;kBApFQ,cAAc;;;AAwFvB,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"ComboboxOption.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxOption.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAIpF,iBAAS,cAAc,CAAC,EACtB,GAAG,EACH,KAAK,EACL,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,EAAE,mBAAmB,2CA8ErB;kBArFQ,cAAc;;;AAyFvB,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -22,6 +22,7 @@ function a({ ref: a, value: o, disabled: s = !1, className: c, children: l, onSe
22
22
  }, [v]), /* @__PURE__ */ i("div", {
23
23
  ref: p,
24
24
  id: h,
25
+ "data-slot": "item",
25
26
  role: "option",
26
27
  "aria-selected": m,
27
28
  "aria-disabled": s || void 0,
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxOption.js","names":[],"sources":["../../../src/components/Combobox/ComboboxOption.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxOptionProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getLabel } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxOption({\n ref,\n value,\n disabled = false,\n className,\n children,\n onSelect,\n}: ComboboxOptionProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLDivElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n const isSelected = ctx.value === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n const isFiltered =\n ctx.filterText !== \"\" &&\n !label.toLowerCase().includes(ctx.filterText.toLowerCase());\n\n const isActive = ctx.activeDescendantId === optionId;\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n React.useEffect(() => {\n if (isActive && internalRef.current != null) {\n if (typeof internalRef.current.scrollIntoView === \"function\") {\n internalRef.current.scrollIntoView({ block: \"nearest\" });\n }\n }\n }, [isActive]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n onSelect?.();\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n hidden={isFiltered || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isActive &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isActive && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected && !isActive && !disabled && \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nComboboxOption.displayName = \"ComboboxOption\";\n\nexport { ComboboxOption };\n"],"mappings":";;;;;;;AAOA,SAAS,EAAe,EACtB,QACA,UACA,cAAW,IACX,cACA,aACA,eACsB;CACtB,IAAM,IAAM,GAAoB,EAC1B,IAAc,EAAM,OAAuB,KAAK,EAEhD,IAAc,EAAM,aACvB,MAAgC;AAE/B,EADA,EAAY,UAAU,GAClB,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU;IAEtC,CAAC,EAAI,CACN,EAEK,IAAa,EAAI,UAAU,GAC3B,IAAW,GAAG,EAAI,UAAU,UAAU,KACtC,IAAQ,EAAS,EAAS,EAE1B,IACJ,EAAI,eAAe,MACnB,CAAC,EAAM,aAAa,CAAC,SAAS,EAAI,WAAW,aAAa,CAAC,EAEvD,IAAW,EAAI,uBAAuB;AA6B5C,QA3BA,EAAM,uBACJ,EAAI,eAAe,GAAO,GAAO,EAAY,QAAQ,QACxC;AACX,IAAI,iBAAiB,EAAM;KAG5B,EAAE,CAAC,EAEN,EAAM,gBAAgB;AACpB,IAAI,uBAAuB,GAAO,EAAS;IAC1C;EAAC;EAAK;EAAO;EAAS,CAAC,EAE1B,EAAM,gBAAgB;AACpB,EAAI,KAAY,EAAY,WAAW,QACjC,OAAO,EAAY,QAAQ,kBAAmB,cAChD,EAAY,QAAQ,eAAe,EAAE,OAAO,WAAW,CAAC;IAG3D,CAAC,EAAS,CAAC,EAUZ,kBAAC,OAAD;EACE,KAAK;EACL,IAAI;EACJ,MAAK;EACL,iBAAe;EACf,iBAAe,KAAY,KAAA;EAC3B,QAAQ,KAAc,KAAA;EACtB,WAAW,EACT,iCACA,WACA,kBACA,eACA,2BACA,KAAY,qDACZ,KACE,CAAC,KACD,0DACF,KAAY,qCACZ,CAAC,KAAc,CAAC,KAAY,CAAC,KAAY,8BACzC,EACD;EACD,eA7BsB;AACpB,SACJ,EAAI,cAAc,EAAM,EACxB,KAAY,EACZ,EAAI,aAAa,GAAM;;EA2BpB;EACG,CAAA;;AAIV,EAAe,cAAc"}
1
+ {"version":3,"file":"ComboboxOption.js","names":[],"sources":["../../../src/components/Combobox/ComboboxOption.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport type { ComboboxOptionProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\nimport { getLabel } from \"@nuka/components/Combobox/Combobox.utils\";\n\nfunction ComboboxOption({\n ref,\n value,\n disabled = false,\n className,\n children,\n onSelect,\n}: ComboboxOptionProps) {\n const ctx = useComboboxContext();\n const internalRef = React.useRef<HTMLDivElement>(null);\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n internalRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n },\n [ref],\n );\n\n const isSelected = ctx.value === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n const isFiltered =\n ctx.filterText !== \"\" &&\n !label.toLowerCase().includes(ctx.filterText.toLowerCase());\n\n const isActive = ctx.activeDescendantId === optionId;\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n React.useEffect(() => {\n if (isActive && internalRef.current != null) {\n if (typeof internalRef.current.scrollIntoView === \"function\") {\n internalRef.current.scrollIntoView({ block: \"nearest\" });\n }\n }\n }, [isActive]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n onSelect?.();\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n data-slot=\"item\"\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n hidden={isFiltered || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isActive &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isActive && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected && !isActive && !disabled && \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nComboboxOption.displayName = \"ComboboxOption\";\n\nexport { ComboboxOption };\n"],"mappings":";;;;;;;AAOA,SAAS,EAAe,EACtB,QACA,UACA,cAAW,IACX,cACA,aACA,eACsB;CACtB,IAAM,IAAM,GAAoB,EAC1B,IAAc,EAAM,OAAuB,KAAK,EAEhD,IAAc,EAAM,aACvB,MAAgC;AAE/B,EADA,EAAY,UAAU,GAClB,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU;IAEtC,CAAC,EAAI,CACN,EAEK,IAAa,EAAI,UAAU,GAC3B,IAAW,GAAG,EAAI,UAAU,UAAU,KACtC,IAAQ,EAAS,EAAS,EAE1B,IACJ,EAAI,eAAe,MACnB,CAAC,EAAM,aAAa,CAAC,SAAS,EAAI,WAAW,aAAa,CAAC,EAEvD,IAAW,EAAI,uBAAuB;AA6B5C,QA3BA,EAAM,uBACJ,EAAI,eAAe,GAAO,GAAO,EAAY,QAAQ,QACxC;AACX,IAAI,iBAAiB,EAAM;KAG5B,EAAE,CAAC,EAEN,EAAM,gBAAgB;AACpB,IAAI,uBAAuB,GAAO,EAAS;IAC1C;EAAC;EAAK;EAAO;EAAS,CAAC,EAE1B,EAAM,gBAAgB;AACpB,EAAI,KAAY,EAAY,WAAW,QACjC,OAAO,EAAY,QAAQ,kBAAmB,cAChD,EAAY,QAAQ,eAAe,EAAE,OAAO,WAAW,CAAC;IAG3D,CAAC,EAAS,CAAC,EAUZ,kBAAC,OAAD;EACE,KAAK;EACL,IAAI;EACJ,aAAU;EACV,MAAK;EACL,iBAAe;EACf,iBAAe,KAAY,KAAA;EAC3B,QAAQ,KAAc,KAAA;EACtB,WAAW,EACT,iCACA,WACA,kBACA,eACA,2BACA,KAAY,qDACZ,KACE,CAAC,KACD,0DACF,KAAY,qCACZ,CAAC,KAAc,CAAC,KAAY,CAAC,KAAY,8BACzC,EACD;EACD,eA9BsB;AACpB,SACJ,EAAI,cAAc,EAAM,EACxB,KAAY,EACZ,EAAI,aAAa,GAAM;;EA4BpB;EACG,CAAA;;AAIV,EAAe,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../Icon/Icon.cjs`),r=require(`../FormField/FormField.context.cjs`),i=require(`../../hooks/use-form-field-props.cjs`),a=require(`./Combobox.context.cjs`),o=require(`./Combobox.variants.cjs`);let s=require(`react`);s=e.__toESM(s,1);let c=require(`react/jsx-runtime`);function l({ref:e,className:l,placeholder:u,intent:d,size:f,disabled:p,onKeyDown:m,onClick:h,...g}){let _=a.useComboboxContext(),v=r.useFormField(),y=i.useFormFieldProps({id:g.id,"aria-invalid":g[`aria-invalid`],"aria-describedby":g[`aria-describedby`],"aria-required":g[`aria-required`]}),b=p??_.disabled,x=g[`aria-labelledby`]??(v.labelId||void 0),S=_.value===void 0?void 0:_.getOptionLabel(_.value),C=g[`aria-label`]??(x===void 0?S??u??`Select`:void 0),w=s.useCallback(t=>{typeof e==`function`?e(t):e!=null&&(e.current=t),_.triggerRef.current=t,_.refs.setReference(t)},[e,_.triggerRef,_.refs]),T=_.getReferenceProps({onKeyDown:e=>{if(m?.(e),!e.defaultPrevented)switch(e.key){case`ArrowDown`:e.preventDefault(),_.open||(_.highlightOnOpenRef.current=`first`,_.onOpenChange(!0));break;case`ArrowUp`:e.preventDefault(),_.open||(_.highlightOnOpenRef.current=`last`,_.onOpenChange(!0));break;default:e.key.length===1&&e.key!==` `&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!_.open&&(e.preventDefault(),_.setFilterText(e.key),_.onOpenChange(!0));break}},onClick:e=>{h?.(e)}});return(0,c.jsxs)(`button`,{...g,...T,ref:w,type:`button`,id:y.resolvedId,"aria-haspopup":`listbox`,"aria-expanded":_.open,"aria-controls":_.open?_.listboxId:void 0,"aria-label":C,"aria-labelledby":x,"aria-invalid":y.ariaInvalid,"aria-describedby":y.ariaDescribedBy,"aria-required":y.ariaRequired,disabled:b,className:t.cn(o.comboboxTriggerVariants({intent:d,size:f}),l),children:[(0,c.jsx)(`span`,{className:t.cn(`truncate`,S===void 0&&`text-(--nuka-text-muted)`),children:S??u}),(0,c.jsx)(n.Icon,{size:`sm`,color:`muted`,className:t.cn(`transition-transform duration-150`,_.open&&`rotate-180`),children:(0,c.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,c.jsx)(`path`,{d:`m6 9 6 6 6-6`})})})]})}l.displayName=`ComboboxTrigger`,exports.ComboboxTrigger=l;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../Icon/Icon.cjs`),r=require(`../FormField/FormField.context.cjs`),i=require(`../../hooks/use-form-field-props.cjs`),a=require(`./Combobox.context.cjs`),o=require(`./Combobox.variants.cjs`);let s=require(`react`);s=e.__toESM(s,1);let c=require(`react/jsx-runtime`);function l({ref:e,className:l,placeholder:u,intent:d,size:f,disabled:p,onKeyDown:m,onClick:h,...g}){let _=a.useComboboxContext(),v=r.useFormField(),y=i.useFormFieldProps({id:g.id,"aria-invalid":g[`aria-invalid`],"aria-describedby":g[`aria-describedby`],"aria-required":g[`aria-required`]}),b=p??_.disabled,x=g[`aria-labelledby`]??(v.labelId||void 0),S=_.value===void 0?void 0:_.getOptionLabel(_.value),C=g[`aria-label`]??(x===void 0?S??u??`Select`:void 0),w=s.useCallback(t=>{typeof e==`function`?e(t):e!=null&&(e.current=t),_.triggerRef.current=t,_.refs.setReference(t)},[e,_.triggerRef,_.refs]),T=_.getReferenceProps({onKeyDown:e=>{if(m?.(e),!e.defaultPrevented)switch(e.key){case`ArrowDown`:e.preventDefault(),_.open||(_.highlightOnOpenRef.current=`first`,_.onOpenChange(!0));break;case`ArrowUp`:e.preventDefault(),_.open||(_.highlightOnOpenRef.current=`last`,_.onOpenChange(!0));break;default:e.key.length===1&&e.key!==` `&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&!_.open&&(e.preventDefault(),_.setFilterText(e.key),_.onOpenChange(!0));break}},onClick:e=>{h?.(e)}});return(0,c.jsxs)(`button`,{...g,...T,ref:w,type:`button`,id:y.resolvedId,"data-slot":`trigger`,"aria-haspopup":`listbox`,"aria-expanded":_.open,"aria-controls":_.open?_.listboxId:void 0,"aria-label":C,"aria-labelledby":x,"aria-invalid":y.ariaInvalid,"aria-describedby":y.ariaDescribedBy,"aria-required":y.ariaRequired,disabled:b,className:t.cn(o.comboboxTriggerVariants({intent:d,size:f}),l),children:[(0,c.jsx)(`span`,{className:t.cn(`truncate`,S===void 0&&`text-(--nuka-text-muted)`),children:S??u}),(0,c.jsx)(n.Icon,{size:`sm`,color:`muted`,className:t.cn(`transition-transform duration-150`,_.open&&`rotate-180`),children:(0,c.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,c.jsx)(`path`,{d:`m6 9 6 6 6-6`})})})]})}l.displayName=`ComboboxTrigger`,exports.ComboboxTrigger=l;
2
2
  //# sourceMappingURL=ComboboxTrigger.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxTrigger.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport { comboboxTriggerVariants } from \"@nuka/components/Combobox/Combobox.variants\";\nimport type { ComboboxTriggerProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxTrigger({\n ref,\n className,\n placeholder,\n intent,\n size: sizeProp,\n disabled: disabledProp,\n onKeyDown: propsOnKeyDown,\n onClick: propsOnClick,\n ...props\n}: ComboboxTriggerProps) {\n const ctx = useComboboxContext();\n const formCtx = useFormField();\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const composedRef = React.useCallback(\n (node: HTMLButtonElement | null) => {\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n ctx.triggerRef.current = node;\n ctx.refs.setReference(node);\n },\n [ref, ctx.triggerRef, ctx.refs],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n propsOnKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"first\";\n ctx.onOpenChange(true);\n }\n break;\n }\n case \"ArrowUp\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"last\";\n ctx.onOpenChange(true);\n }\n break;\n }\n default: {\n if (\n e.key.length === 1 &&\n e.key !== \" \" &&\n !e.ctrlKey &&\n !e.metaKey &&\n !e.altKey &&\n !ctx.open\n ) {\n e.preventDefault();\n ctx.setFilterText(e.key);\n ctx.onOpenChange(true);\n }\n break;\n }\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n propsOnClick?.(e);\n };\n\n const referenceProps = ctx.getReferenceProps({\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n });\n\n return (\n <button\n {...props}\n {...referenceProps}\n ref={composedRef}\n type=\"button\"\n id={field.resolvedId}\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.open ? ctx.listboxId : undefined}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(\n comboboxTriggerVariants({ intent, size: sizeProp }),\n className,\n )}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\n \"transition-transform duration-150\",\n ctx.open && \"rotate-180\",\n )}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </Icon>\n </button>\n );\n}\n\nComboboxTrigger.displayName = \"ComboboxTrigger\";\n\nexport { ComboboxTrigger };\n"],"mappings":"yXAUA,SAAS,EAAgB,CACvB,MACA,YACA,cACA,SACA,KAAM,EACN,SAAU,EACV,UAAW,EACX,QAAS,EACT,GAAG,GACoB,CACvB,IAAM,EAAM,EAAA,oBAAoB,CAC1B,EAAU,EAAA,cAAc,CACxB,EAAQ,EAAA,kBAAkB,CAC9B,GAAI,EAAM,GACV,eAAgB,EAAM,gBACtB,mBAAoB,EAAM,oBAC1B,gBAAiB,EAAM,iBACxB,CAAC,CAEI,EAAmB,GAAgB,EAAI,SAEvC,EACJ,EAAM,qBAAuB,EAAQ,SAAW,IAAA,IAE5C,EACJ,EAAI,QAAU,IAAA,GAA4C,IAAA,GAAhC,EAAI,eAAe,EAAI,MAAM,CAEnD,EACJ,EAAM,gBACL,IAAmB,IAAA,GACf,GAAgB,GAAe,SAChC,IAAA,IAEA,EAAc,EAAM,YACvB,GAAmC,CAC9B,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,GACpC,EAAI,WAAW,QAAU,EACzB,EAAI,KAAK,aAAa,EAAK,EAE7B,CAAC,EAAK,EAAI,WAAY,EAAI,KAAK,CAChC,CA6CK,EAAiB,EAAI,kBAAkB,CAC3C,UA5CqB,GAA8C,CACnE,OAAiB,EAAE,CACf,GAAE,iBAEN,OAAQ,EAAE,IAAV,CACE,IAAK,YACH,EAAE,gBAAgB,CACb,EAAI,OACP,EAAI,mBAAmB,QAAU,QACjC,EAAI,aAAa,GAAK,EAExB,MAEF,IAAK,UACH,EAAE,gBAAgB,CACb,EAAI,OACP,EAAI,mBAAmB,QAAU,OACjC,EAAI,aAAa,GAAK,EAExB,MAEF,QAEI,EAAE,IAAI,SAAW,GACjB,EAAE,MAAQ,KACV,CAAC,EAAE,SACH,CAAC,EAAE,SACH,CAAC,EAAE,QACH,CAAC,EAAI,OAEL,EAAE,gBAAgB,CAClB,EAAI,cAAc,EAAE,IAAI,CACxB,EAAI,aAAa,GAAK,EAExB,QAWJ,QANmB,GAA2C,CAC9D,IAAe,EAAE,EAMlB,CAAC,CAEF,OACE,EAAA,EAAA,MAAC,SAAD,CACE,GAAI,EACJ,GAAI,EACJ,IAAK,EACL,KAAK,SACL,GAAI,EAAM,WACV,gBAAc,UACd,gBAAe,EAAI,KACnB,gBAAe,EAAI,KAAO,EAAI,UAAY,IAAA,GAC1C,aAAY,EACZ,kBAAiB,EACjB,eAAc,EAAM,YACpB,mBAAkB,EAAM,gBACxB,gBAAe,EAAM,aACrB,SAAU,EACV,UAAW,EAAA,GACT,EAAA,wBAAwB,CAAE,SAAQ,KAAM,EAAU,CAAC,CACnD,EACD,UAlBH,EAoBE,EAAA,EAAA,KAAC,OAAD,CACE,UAAW,EAAA,GACT,WACA,IAAiB,IAAA,IAAa,2BAC/B,UAEA,GAAgB,EACZ,CAAA,EACP,EAAA,EAAA,KAAC,EAAA,KAAD,CACE,KAAK,KACL,MAAM,QACN,UAAW,EAAA,GACT,oCACA,EAAI,MAAQ,aACb,WAED,EAAA,EAAA,KAAC,MAAD,CACE,MAAM,6BACN,QAAQ,YACR,KAAK,OACL,OAAO,eACP,YAAY,IACZ,cAAc,QACd,eAAe,kBAEf,EAAA,EAAA,KAAC,OAAD,CAAM,EAAE,eAAiB,CAAA,CACrB,CAAA,CACD,CAAA,CACA,GAIb,EAAgB,YAAc"}
1
+ {"version":3,"file":"ComboboxTrigger.cjs","names":[],"sources":["../../../src/components/Combobox/ComboboxTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport { comboboxTriggerVariants } from \"@nuka/components/Combobox/Combobox.variants\";\nimport type { ComboboxTriggerProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxTrigger({\n ref,\n className,\n placeholder,\n intent,\n size: sizeProp,\n disabled: disabledProp,\n onKeyDown: propsOnKeyDown,\n onClick: propsOnClick,\n ...props\n}: ComboboxTriggerProps) {\n const ctx = useComboboxContext();\n const formCtx = useFormField();\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const composedRef = React.useCallback(\n (node: HTMLButtonElement | null) => {\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n ctx.triggerRef.current = node;\n ctx.refs.setReference(node);\n },\n [ref, ctx.triggerRef, ctx.refs],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n propsOnKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"first\";\n ctx.onOpenChange(true);\n }\n break;\n }\n case \"ArrowUp\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"last\";\n ctx.onOpenChange(true);\n }\n break;\n }\n default: {\n if (\n e.key.length === 1 &&\n e.key !== \" \" &&\n !e.ctrlKey &&\n !e.metaKey &&\n !e.altKey &&\n !ctx.open\n ) {\n e.preventDefault();\n ctx.setFilterText(e.key);\n ctx.onOpenChange(true);\n }\n break;\n }\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n propsOnClick?.(e);\n };\n\n const referenceProps = ctx.getReferenceProps({\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n });\n\n return (\n <button\n {...props}\n {...referenceProps}\n ref={composedRef}\n type=\"button\"\n id={field.resolvedId}\n data-slot=\"trigger\"\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.open ? ctx.listboxId : undefined}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(\n comboboxTriggerVariants({ intent, size: sizeProp }),\n className,\n )}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\n \"transition-transform duration-150\",\n ctx.open && \"rotate-180\",\n )}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </Icon>\n </button>\n );\n}\n\nComboboxTrigger.displayName = \"ComboboxTrigger\";\n\nexport { ComboboxTrigger };\n"],"mappings":"yXAUA,SAAS,EAAgB,CACvB,MACA,YACA,cACA,SACA,KAAM,EACN,SAAU,EACV,UAAW,EACX,QAAS,EACT,GAAG,GACoB,CACvB,IAAM,EAAM,EAAA,oBAAoB,CAC1B,EAAU,EAAA,cAAc,CACxB,EAAQ,EAAA,kBAAkB,CAC9B,GAAI,EAAM,GACV,eAAgB,EAAM,gBACtB,mBAAoB,EAAM,oBAC1B,gBAAiB,EAAM,iBACxB,CAAC,CAEI,EAAmB,GAAgB,EAAI,SAEvC,EACJ,EAAM,qBAAuB,EAAQ,SAAW,IAAA,IAE5C,EACJ,EAAI,QAAU,IAAA,GAA4C,IAAA,GAAhC,EAAI,eAAe,EAAI,MAAM,CAEnD,EACJ,EAAM,gBACL,IAAmB,IAAA,GACf,GAAgB,GAAe,SAChC,IAAA,IAEA,EAAc,EAAM,YACvB,GAAmC,CAC9B,OAAO,GAAQ,WAAY,EAAI,EAAK,CAC/B,GAAO,OAAM,EAAI,QAAU,GACpC,EAAI,WAAW,QAAU,EACzB,EAAI,KAAK,aAAa,EAAK,EAE7B,CAAC,EAAK,EAAI,WAAY,EAAI,KAAK,CAChC,CA6CK,EAAiB,EAAI,kBAAkB,CAC3C,UA5CqB,GAA8C,CACnE,OAAiB,EAAE,CACf,GAAE,iBAEN,OAAQ,EAAE,IAAV,CACE,IAAK,YACH,EAAE,gBAAgB,CACb,EAAI,OACP,EAAI,mBAAmB,QAAU,QACjC,EAAI,aAAa,GAAK,EAExB,MAEF,IAAK,UACH,EAAE,gBAAgB,CACb,EAAI,OACP,EAAI,mBAAmB,QAAU,OACjC,EAAI,aAAa,GAAK,EAExB,MAEF,QAEI,EAAE,IAAI,SAAW,GACjB,EAAE,MAAQ,KACV,CAAC,EAAE,SACH,CAAC,EAAE,SACH,CAAC,EAAE,QACH,CAAC,EAAI,OAEL,EAAE,gBAAgB,CAClB,EAAI,cAAc,EAAE,IAAI,CACxB,EAAI,aAAa,GAAK,EAExB,QAWJ,QANmB,GAA2C,CAC9D,IAAe,EAAE,EAMlB,CAAC,CAEF,OACE,EAAA,EAAA,MAAC,SAAD,CACE,GAAI,EACJ,GAAI,EACJ,IAAK,EACL,KAAK,SACL,GAAI,EAAM,WACV,YAAU,UACV,gBAAc,UACd,gBAAe,EAAI,KACnB,gBAAe,EAAI,KAAO,EAAI,UAAY,IAAA,GAC1C,aAAY,EACZ,kBAAiB,EACjB,eAAc,EAAM,YACpB,mBAAkB,EAAM,gBACxB,gBAAe,EAAM,aACrB,SAAU,EACV,UAAW,EAAA,GACT,EAAA,wBAAwB,CAAE,SAAQ,KAAM,EAAU,CAAC,CACnD,EACD,UAnBH,EAqBE,EAAA,EAAA,KAAC,OAAD,CACE,UAAW,EAAA,GACT,WACA,IAAiB,IAAA,IAAa,2BAC/B,UAEA,GAAgB,EACZ,CAAA,EACP,EAAA,EAAA,KAAC,EAAA,KAAD,CACE,KAAK,KACL,MAAM,QACN,UAAW,EAAA,GACT,oCACA,EAAI,MAAQ,aACb,WAED,EAAA,EAAA,KAAC,MAAD,CACE,MAAM,6BACN,QAAQ,YACR,KAAK,OACL,OAAO,eACP,YAAY,IACZ,cAAc,QACd,eAAe,kBAEf,EAAA,EAAA,KAAC,OAAD,CAAM,EAAE,eAAiB,CAAA,CACrB,CAAA,CACD,CAAA,CACA,GAIb,EAAgB,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxTrigger.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxTrigger.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,iBAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,WAAW,EACX,MAAM,EACN,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,YAAY,EACrB,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAqItB;kBA/IQ,eAAe;;;AAmJxB,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"ComboboxTrigger.d.ts","sourceRoot":"","sources":["../../../src/components/Combobox/ComboboxTrigger.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGrF,iBAAS,eAAe,CAAC,EACvB,GAAG,EACH,SAAS,EACT,WAAW,EACX,MAAM,EACN,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,YAAY,EACtB,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,YAAY,EACrB,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAsItB;kBAhJQ,eAAe;;;AAoJxB,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -44,6 +44,7 @@ function l({ ref: l, className: u, placeholder: d, intent: f, size: p, disabled:
44
44
  ref: T,
45
45
  type: "button",
46
46
  id: b.resolvedId,
47
+ "data-slot": "trigger",
47
48
  "aria-haspopup": "listbox",
48
49
  "aria-expanded": v.open,
49
50
  "aria-controls": v.open ? v.listboxId : void 0,
@@ -1 +1 @@
1
- {"version":3,"file":"ComboboxTrigger.js","names":[],"sources":["../../../src/components/Combobox/ComboboxTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport { comboboxTriggerVariants } from \"@nuka/components/Combobox/Combobox.variants\";\nimport type { ComboboxTriggerProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxTrigger({\n ref,\n className,\n placeholder,\n intent,\n size: sizeProp,\n disabled: disabledProp,\n onKeyDown: propsOnKeyDown,\n onClick: propsOnClick,\n ...props\n}: ComboboxTriggerProps) {\n const ctx = useComboboxContext();\n const formCtx = useFormField();\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const composedRef = React.useCallback(\n (node: HTMLButtonElement | null) => {\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n ctx.triggerRef.current = node;\n ctx.refs.setReference(node);\n },\n [ref, ctx.triggerRef, ctx.refs],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n propsOnKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"first\";\n ctx.onOpenChange(true);\n }\n break;\n }\n case \"ArrowUp\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"last\";\n ctx.onOpenChange(true);\n }\n break;\n }\n default: {\n if (\n e.key.length === 1 &&\n e.key !== \" \" &&\n !e.ctrlKey &&\n !e.metaKey &&\n !e.altKey &&\n !ctx.open\n ) {\n e.preventDefault();\n ctx.setFilterText(e.key);\n ctx.onOpenChange(true);\n }\n break;\n }\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n propsOnClick?.(e);\n };\n\n const referenceProps = ctx.getReferenceProps({\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n });\n\n return (\n <button\n {...props}\n {...referenceProps}\n ref={composedRef}\n type=\"button\"\n id={field.resolvedId}\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.open ? ctx.listboxId : undefined}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(\n comboboxTriggerVariants({ intent, size: sizeProp }),\n className,\n )}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\n \"transition-transform duration-150\",\n ctx.open && \"rotate-180\",\n )}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </Icon>\n </button>\n );\n}\n\nComboboxTrigger.displayName = \"ComboboxTrigger\";\n\nexport { ComboboxTrigger };\n"],"mappings":";;;;;;;;;;AAUA,SAAS,EAAgB,EACvB,QACA,cACA,gBACA,WACA,MAAM,GACN,UAAU,GACV,WAAW,GACX,SAAS,GACT,GAAG,KACoB;CACvB,IAAM,IAAM,GAAoB,EAC1B,IAAU,GAAc,EACxB,IAAQ,EAAkB;EAC9B,IAAI,EAAM;EACV,gBAAgB,EAAM;EACtB,oBAAoB,EAAM;EAC1B,iBAAiB,EAAM;EACxB,CAAC,EAEI,IAAmB,KAAgB,EAAI,UAEvC,IACJ,EAAM,uBAAuB,EAAQ,WAAW,KAAA,IAE5C,IACJ,EAAI,UAAU,KAAA,IAA4C,KAAA,IAAhC,EAAI,eAAe,EAAI,MAAM,EAEnD,IACJ,EAAM,kBACL,MAAmB,KAAA,IACf,KAAgB,KAAe,WAChC,KAAA,IAEA,IAAc,EAAM,aACvB,MAAmC;AAIlC,EAHI,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU,IACpC,EAAI,WAAW,UAAU,GACzB,EAAI,KAAK,aAAa,EAAK;IAE7B;EAAC;EAAK,EAAI;EAAY,EAAI;EAAK,CAChC,EA6CK,IAAiB,EAAI,kBAAkB;EAC3C,YA5CqB,MAA8C;AACnE,WAAiB,EAAE,EACf,GAAE,iBAEN,SAAQ,EAAE,KAAV;IACE,KAAK;AAEH,KADA,EAAE,gBAAgB,EACb,EAAI,SACP,EAAI,mBAAmB,UAAU,SACjC,EAAI,aAAa,GAAK;AAExB;IAEF,KAAK;AAEH,KADA,EAAE,gBAAgB,EACb,EAAI,SACP,EAAI,mBAAmB,UAAU,QACjC,EAAI,aAAa,GAAK;AAExB;IAEF;AACE,KACE,EAAE,IAAI,WAAW,KACjB,EAAE,QAAQ,OACV,CAAC,EAAE,WACH,CAAC,EAAE,WACH,CAAC,EAAE,UACH,CAAC,EAAI,SAEL,EAAE,gBAAgB,EAClB,EAAI,cAAc,EAAE,IAAI,EACxB,EAAI,aAAa,GAAK;AAExB;;;EAWJ,UANmB,MAA2C;AAC9D,OAAe,EAAE;;EAMlB,CAAC;AAEF,QACE,kBAAC,UAAD;EACE,GAAI;EACJ,GAAI;EACJ,KAAK;EACL,MAAK;EACL,IAAI,EAAM;EACV,iBAAc;EACd,iBAAe,EAAI;EACnB,iBAAe,EAAI,OAAO,EAAI,YAAY,KAAA;EAC1C,cAAY;EACZ,mBAAiB;EACjB,gBAAc,EAAM;EACpB,oBAAkB,EAAM;EACxB,iBAAe,EAAM;EACrB,UAAU;EACV,WAAW,EACT,EAAwB;GAAE;GAAQ,MAAM;GAAU,CAAC,EACnD,EACD;YAlBH,CAoBE,kBAAC,QAAD;GACE,WAAW,EACT,YACA,MAAiB,KAAA,KAAa,2BAC/B;aAEA,KAAgB;GACZ,CAAA,EACP,kBAAC,GAAD;GACE,MAAK;GACL,OAAM;GACN,WAAW,EACT,qCACA,EAAI,QAAQ,aACb;aAED,kBAAC,OAAD;IACE,OAAM;IACN,SAAQ;IACR,MAAK;IACL,QAAO;IACP,aAAY;IACZ,eAAc;IACd,gBAAe;cAEf,kBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;IACrB,CAAA;GACD,CAAA,CACA;;;AAIb,EAAgB,cAAc"}
1
+ {"version":3,"file":"ComboboxTrigger.js","names":[],"sources":["../../../src/components/Combobox/ComboboxTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport { comboboxTriggerVariants } from \"@nuka/components/Combobox/Combobox.variants\";\nimport type { ComboboxTriggerProps } from \"@nuka/components/Combobox/Combobox.types\";\nimport { useComboboxContext } from \"@nuka/components/Combobox/Combobox.context\";\n\nfunction ComboboxTrigger({\n ref,\n className,\n placeholder,\n intent,\n size: sizeProp,\n disabled: disabledProp,\n onKeyDown: propsOnKeyDown,\n onClick: propsOnClick,\n ...props\n}: ComboboxTriggerProps) {\n const ctx = useComboboxContext();\n const formCtx = useFormField();\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const composedRef = React.useCallback(\n (node: HTMLButtonElement | null) => {\n if (typeof ref === \"function\") ref(node);\n else if (ref != null) ref.current = node;\n ctx.triggerRef.current = node;\n ctx.refs.setReference(node);\n },\n [ref, ctx.triggerRef, ctx.refs],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n propsOnKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"first\";\n ctx.onOpenChange(true);\n }\n break;\n }\n case \"ArrowUp\": {\n e.preventDefault();\n if (!ctx.open) {\n ctx.highlightOnOpenRef.current = \"last\";\n ctx.onOpenChange(true);\n }\n break;\n }\n default: {\n if (\n e.key.length === 1 &&\n e.key !== \" \" &&\n !e.ctrlKey &&\n !e.metaKey &&\n !e.altKey &&\n !ctx.open\n ) {\n e.preventDefault();\n ctx.setFilterText(e.key);\n ctx.onOpenChange(true);\n }\n break;\n }\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n propsOnClick?.(e);\n };\n\n const referenceProps = ctx.getReferenceProps({\n onKeyDown: handleKeyDown,\n onClick: handleClick,\n });\n\n return (\n <button\n {...props}\n {...referenceProps}\n ref={composedRef}\n type=\"button\"\n id={field.resolvedId}\n data-slot=\"trigger\"\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.open ? ctx.listboxId : undefined}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(\n comboboxTriggerVariants({ intent, size: sizeProp }),\n className,\n )}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\n \"transition-transform duration-150\",\n ctx.open && \"rotate-180\",\n )}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </Icon>\n </button>\n );\n}\n\nComboboxTrigger.displayName = \"ComboboxTrigger\";\n\nexport { ComboboxTrigger };\n"],"mappings":";;;;;;;;;;AAUA,SAAS,EAAgB,EACvB,QACA,cACA,gBACA,WACA,MAAM,GACN,UAAU,GACV,WAAW,GACX,SAAS,GACT,GAAG,KACoB;CACvB,IAAM,IAAM,GAAoB,EAC1B,IAAU,GAAc,EACxB,IAAQ,EAAkB;EAC9B,IAAI,EAAM;EACV,gBAAgB,EAAM;EACtB,oBAAoB,EAAM;EAC1B,iBAAiB,EAAM;EACxB,CAAC,EAEI,IAAmB,KAAgB,EAAI,UAEvC,IACJ,EAAM,uBAAuB,EAAQ,WAAW,KAAA,IAE5C,IACJ,EAAI,UAAU,KAAA,IAA4C,KAAA,IAAhC,EAAI,eAAe,EAAI,MAAM,EAEnD,IACJ,EAAM,kBACL,MAAmB,KAAA,IACf,KAAgB,KAAe,WAChC,KAAA,IAEA,IAAc,EAAM,aACvB,MAAmC;AAIlC,EAHI,OAAO,KAAQ,aAAY,EAAI,EAAK,GAC/B,KAAO,SAAM,EAAI,UAAU,IACpC,EAAI,WAAW,UAAU,GACzB,EAAI,KAAK,aAAa,EAAK;IAE7B;EAAC;EAAK,EAAI;EAAY,EAAI;EAAK,CAChC,EA6CK,IAAiB,EAAI,kBAAkB;EAC3C,YA5CqB,MAA8C;AACnE,WAAiB,EAAE,EACf,GAAE,iBAEN,SAAQ,EAAE,KAAV;IACE,KAAK;AAEH,KADA,EAAE,gBAAgB,EACb,EAAI,SACP,EAAI,mBAAmB,UAAU,SACjC,EAAI,aAAa,GAAK;AAExB;IAEF,KAAK;AAEH,KADA,EAAE,gBAAgB,EACb,EAAI,SACP,EAAI,mBAAmB,UAAU,QACjC,EAAI,aAAa,GAAK;AAExB;IAEF;AACE,KACE,EAAE,IAAI,WAAW,KACjB,EAAE,QAAQ,OACV,CAAC,EAAE,WACH,CAAC,EAAE,WACH,CAAC,EAAE,UACH,CAAC,EAAI,SAEL,EAAE,gBAAgB,EAClB,EAAI,cAAc,EAAE,IAAI,EACxB,EAAI,aAAa,GAAK;AAExB;;;EAWJ,UANmB,MAA2C;AAC9D,OAAe,EAAE;;EAMlB,CAAC;AAEF,QACE,kBAAC,UAAD;EACE,GAAI;EACJ,GAAI;EACJ,KAAK;EACL,MAAK;EACL,IAAI,EAAM;EACV,aAAU;EACV,iBAAc;EACd,iBAAe,EAAI;EACnB,iBAAe,EAAI,OAAO,EAAI,YAAY,KAAA;EAC1C,cAAY;EACZ,mBAAiB;EACjB,gBAAc,EAAM;EACpB,oBAAkB,EAAM;EACxB,iBAAe,EAAM;EACrB,UAAU;EACV,WAAW,EACT,EAAwB;GAAE;GAAQ,MAAM;GAAU,CAAC,EACnD,EACD;YAnBH,CAqBE,kBAAC,QAAD;GACE,WAAW,EACT,YACA,MAAiB,KAAA,KAAa,2BAC/B;aAEA,KAAgB;GACZ,CAAA,EACP,kBAAC,GAAD;GACE,MAAK;GACL,OAAM;GACN,WAAW,EACT,qCACA,EAAI,QAAQ,aACb;aAED,kBAAC,OAAD;IACE,OAAM;IACN,SAAQ;IACR,MAAK;IACL,QAAO;IACP,aAAY;IACZ,eAAc;IACd,gBAAe;cAEf,kBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;IACrB,CAAA;GACD,CAAA,CACA;;;AAIb,EAAgB,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/get-active-element.cjs`),r=require(`../../hooks/use-controllable-state.cjs`),i=require(`../../utils/portal.cjs`),a=require(`../../hooks/use-scroll-lock.cjs`),o=require(`../../hooks/use-escape-key.cjs`),s=require(`./CommandMenu.context.cjs`),c=require(`./CommandMenu.utils.cjs`);let l=require(`react`);l=e.__toESM(l,1);let u=require(`react/jsx-runtime`);function d({children:e,open:d,defaultOpen:f=!1,onOpenChange:p}){let[m,h]=r.useControllableState(d,f,p),[g,_]=l.useState(``),[v,y]=l.useState(null),[b,x]=l.useState(0),S=l.useId(),C=`${S}-listbox`,w=`${S}-input`,T=l.useRef(null),E=l.useRef(null);a.useScrollLock(m),o.useEscapeKey(l.useCallback(()=>h(!1),[h]),m),l.useEffect(()=>{if(!m)return;let e=c.getVisibleItems(T).length;x(e)},[m,g]),l.useEffect(()=>{m?E.current=n.getActiveElement():E.current!=null&&(E.current.focus(),E.current=null)},[m]),l.useEffect(()=>{m||(_(``),y(null))},[m]);let D=l.useMemo(()=>({open:m,onOpenChange:h,filter:g,setFilter:_,activeItemId:v,setActiveItemId:y,visibleCount:b,baseId:S,listboxId:C,inputId:w,listRef:T}),[m,h,g,v,b,S,C,w]);return m?(0,u.jsx)(s.CommandMenuContext,{value:D,children:(0,u.jsxs)(i.Portal,{children:[(0,u.jsx)(`div`,{className:t.cn(`fixed inset-0 z-(--nuka-z-modal)`,`bg-(--nuka-bg-overlay)`),onClick:()=>h(!1),"aria-hidden":`true`}),(0,u.jsx)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-label":`Command menu`,className:t.cn(`fixed z-(--nuka-z-modal)`,`left-1/2 top-[20%] -translate-x-1/2`,`w-full max-w-lg`,`rounded-(--radius-xl) border border-(--nuka-border-base)`,`bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)`,`overflow-hidden`),children:e})]})}):null}d.displayName=`CommandMenu`,exports.CommandMenu=d;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/get-active-element.cjs`),r=require(`../../hooks/use-controllable-state.cjs`),i=require(`../../utils/portal.cjs`),a=require(`../../hooks/use-scroll-lock.cjs`),o=require(`../../hooks/use-escape-key.cjs`),s=require(`./CommandMenu.context.cjs`),c=require(`./CommandMenu.utils.cjs`);let l=require(`react`);l=e.__toESM(l,1);let u=require(`react/jsx-runtime`);function d({children:e,open:d,defaultOpen:f=!1,onOpenChange:p}){let[m,h]=r.useControllableState(d,f,p),[g,_]=l.useState(``),[v,y]=l.useState(null),[b,x]=l.useState(0),S=l.useId(),C=`${S}-listbox`,w=`${S}-input`,T=l.useRef(null),E=l.useRef(null);a.useScrollLock(m),o.useEscapeKey(l.useCallback(()=>h(!1),[h]),m),l.useEffect(()=>{if(!m)return;let e=c.getVisibleItems(T).length;x(e)},[m,g]),l.useEffect(()=>{m?E.current=n.getActiveElement():E.current!=null&&(E.current.focus(),E.current=null)},[m]),l.useEffect(()=>{m||(_(``),y(null))},[m]);let D=l.useMemo(()=>({open:m,onOpenChange:h,filter:g,setFilter:_,activeItemId:v,setActiveItemId:y,visibleCount:b,baseId:S,listboxId:C,inputId:w,listRef:T}),[m,h,g,v,b,S,C,w]);return m?(0,u.jsx)(s.CommandMenuContext,{value:D,children:(0,u.jsxs)(i.Portal,{children:[(0,u.jsx)(`div`,{className:t.cn(`fixed inset-0 z-(--nuka-z-modal)`,`bg-(--nuka-bg-overlay)`),"data-slot":`overlay`,onClick:()=>h(!1),"aria-hidden":`true`}),(0,u.jsx)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-label":`Command menu`,"data-slot":`dialog`,className:t.cn(`fixed z-(--nuka-z-modal)`,`left-1/2 top-[20%] -translate-x-1/2`,`w-full max-w-lg`,`rounded-(--radius-xl) border border-(--nuka-border-base)`,`bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)`,`overflow-hidden`),children:e})]})}):null}d.displayName=`CommandMenu`,exports.CommandMenu=d;
2
2
  //# sourceMappingURL=CommandMenu.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenu.cjs","names":[],"sources":["../../../src/components/CommandMenu/CommandMenu.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport { useEscapeKey } from \"@nuka/hooks/use-escape-key\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { getActiveElement } from \"@nuka/utils/get-active-element\";\nimport { CommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\nimport { getVisibleItems } from \"@nuka/components/CommandMenu/CommandMenu.utils\";\n\nexport interface CommandMenuProps {\n children: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n}\n\nfunction CommandMenu({\n children,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n}: CommandMenuProps) {\n const [open, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n\n const [filter, setFilter] = React.useState(\"\");\n const [activeItemId, setActiveItemId] = React.useState<string | null>(null);\n const [visibleCount, setVisibleCount] = React.useState(0);\n\n const baseId = React.useId();\n const listboxId = `${baseId}-listbox`;\n const inputId = `${baseId}-input`;\n const listRef = React.useRef<HTMLDivElement>(null);\n const restoreRef = React.useRef<HTMLElement | null>(null);\n\n useScrollLock(open);\n useEscapeKey(\n React.useCallback(() => setOpen(false), [setOpen]),\n open,\n );\n\n React.useEffect(() => {\n if (!open) return;\n const count = getVisibleItems(listRef).length;\n setVisibleCount(count);\n }, [open, filter]);\n\n React.useEffect(() => {\n if (open) {\n restoreRef.current = getActiveElement() as HTMLElement | null;\n } else if (restoreRef.current != null) {\n restoreRef.current.focus();\n restoreRef.current = null;\n }\n }, [open]);\n\n React.useEffect(() => {\n if (!open) {\n setFilter(\"\");\n setActiveItemId(null);\n }\n }, [open]);\n\n const contextValue = React.useMemo(\n () => ({\n open,\n onOpenChange: setOpen,\n filter,\n setFilter,\n activeItemId,\n setActiveItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n listRef,\n }),\n [\n open,\n setOpen,\n filter,\n activeItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n ],\n );\n\n if (!open) return null;\n\n return (\n <CommandMenuContext value={contextValue}>\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n )}\n onClick={() => setOpen(false)}\n aria-hidden=\"true\"\n />\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label=\"Command menu\"\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"left-1/2 top-[20%] -translate-x-1/2\",\n \"w-full max-w-lg\",\n \"rounded-(--radius-xl) border border-(--nuka-border-base)\",\n \"bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)\",\n \"overflow-hidden\",\n )}\n >\n {children}\n </div>\n </Portal>\n </CommandMenuContext>\n );\n}\n\nCommandMenu.displayName = \"CommandMenu\";\n\nexport { CommandMenu };\n"],"mappings":"6dAkBA,SAAS,EAAY,CACnB,WACA,KAAM,EACN,cAAc,GACd,gBACmB,CACnB,GAAM,CAAC,EAAM,GAAW,EAAA,qBACtB,EACA,EACA,EACD,CAEK,CAAC,EAAQ,GAAa,EAAM,SAAS,GAAG,CACxC,CAAC,EAAc,GAAmB,EAAM,SAAwB,KAAK,CACrE,CAAC,EAAc,GAAmB,EAAM,SAAS,EAAE,CAEnD,EAAS,EAAM,OAAO,CACtB,EAAY,GAAG,EAAO,UACtB,EAAU,GAAG,EAAO,QACpB,EAAU,EAAM,OAAuB,KAAK,CAC5C,EAAa,EAAM,OAA2B,KAAK,CAEzD,EAAA,cAAc,EAAK,CACnB,EAAA,aACE,EAAM,gBAAkB,EAAQ,GAAM,CAAE,CAAC,EAAQ,CAAC,CAClD,EACD,CAED,EAAM,cAAgB,CACpB,GAAI,CAAC,EAAM,OACX,IAAM,EAAQ,EAAA,gBAAgB,EAAQ,CAAC,OACvC,EAAgB,EAAM,EACrB,CAAC,EAAM,EAAO,CAAC,CAElB,EAAM,cAAgB,CAChB,EACF,EAAW,QAAU,EAAA,kBAAkB,CAC9B,EAAW,SAAW,OAC/B,EAAW,QAAQ,OAAO,CAC1B,EAAW,QAAU,OAEtB,CAAC,EAAK,CAAC,CAEV,EAAM,cAAgB,CACf,IACH,EAAU,GAAG,CACb,EAAgB,KAAK,GAEtB,CAAC,EAAK,CAAC,CAEV,IAAM,EAAe,EAAM,aAClB,CACL,OACA,aAAc,EACd,SACA,YACA,eACA,kBACA,eACA,SACA,YACA,UACA,UACD,EACD,CACE,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD,CACF,CAID,OAFK,GAGH,EAAA,EAAA,KAAC,EAAA,mBAAD,CAAoB,MAAO,YACzB,EAAA,EAAA,MAAC,EAAA,OAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CACE,UAAW,EAAA,GACT,mCACA,yBACD,CACD,YAAe,EAAQ,GAAM,CAC7B,cAAY,OACZ,CAAA,EACF,EAAA,EAAA,KAAC,MAAD,CACE,KAAK,SACL,aAAW,OACX,aAAW,eACX,UAAW,EAAA,GACT,2BACA,sCACA,kBACA,2DACA,mDACA,kBACD,CAEA,WACG,CAAA,CACC,CAAA,CAAA,CACU,CAAA,CA7BL,KAiCpB,EAAY,YAAc"}
1
+ {"version":3,"file":"CommandMenu.cjs","names":[],"sources":["../../../src/components/CommandMenu/CommandMenu.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport { useEscapeKey } from \"@nuka/hooks/use-escape-key\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { getActiveElement } from \"@nuka/utils/get-active-element\";\nimport { CommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\nimport { getVisibleItems } from \"@nuka/components/CommandMenu/CommandMenu.utils\";\n\nexport interface CommandMenuProps {\n children: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n}\n\nfunction CommandMenu({\n children,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n}: CommandMenuProps) {\n const [open, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n\n const [filter, setFilter] = React.useState(\"\");\n const [activeItemId, setActiveItemId] = React.useState<string | null>(null);\n const [visibleCount, setVisibleCount] = React.useState(0);\n\n const baseId = React.useId();\n const listboxId = `${baseId}-listbox`;\n const inputId = `${baseId}-input`;\n const listRef = React.useRef<HTMLDivElement>(null);\n const restoreRef = React.useRef<HTMLElement | null>(null);\n\n useScrollLock(open);\n useEscapeKey(\n React.useCallback(() => setOpen(false), [setOpen]),\n open,\n );\n\n React.useEffect(() => {\n if (!open) return;\n const count = getVisibleItems(listRef).length;\n setVisibleCount(count);\n }, [open, filter]);\n\n React.useEffect(() => {\n if (open) {\n restoreRef.current = getActiveElement() as HTMLElement | null;\n } else if (restoreRef.current != null) {\n restoreRef.current.focus();\n restoreRef.current = null;\n }\n }, [open]);\n\n React.useEffect(() => {\n if (!open) {\n setFilter(\"\");\n setActiveItemId(null);\n }\n }, [open]);\n\n const contextValue = React.useMemo(\n () => ({\n open,\n onOpenChange: setOpen,\n filter,\n setFilter,\n activeItemId,\n setActiveItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n listRef,\n }),\n [\n open,\n setOpen,\n filter,\n activeItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n ],\n );\n\n if (!open) return null;\n\n return (\n <CommandMenuContext value={contextValue}>\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n )}\n data-slot=\"overlay\"\n onClick={() => setOpen(false)}\n aria-hidden=\"true\"\n />\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label=\"Command menu\"\n data-slot=\"dialog\"\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"left-1/2 top-[20%] -translate-x-1/2\",\n \"w-full max-w-lg\",\n \"rounded-(--radius-xl) border border-(--nuka-border-base)\",\n \"bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)\",\n \"overflow-hidden\",\n )}\n >\n {children}\n </div>\n </Portal>\n </CommandMenuContext>\n );\n}\n\nCommandMenu.displayName = \"CommandMenu\";\n\nexport { CommandMenu };\n"],"mappings":"6dAkBA,SAAS,EAAY,CACnB,WACA,KAAM,EACN,cAAc,GACd,gBACmB,CACnB,GAAM,CAAC,EAAM,GAAW,EAAA,qBACtB,EACA,EACA,EACD,CAEK,CAAC,EAAQ,GAAa,EAAM,SAAS,GAAG,CACxC,CAAC,EAAc,GAAmB,EAAM,SAAwB,KAAK,CACrE,CAAC,EAAc,GAAmB,EAAM,SAAS,EAAE,CAEnD,EAAS,EAAM,OAAO,CACtB,EAAY,GAAG,EAAO,UACtB,EAAU,GAAG,EAAO,QACpB,EAAU,EAAM,OAAuB,KAAK,CAC5C,EAAa,EAAM,OAA2B,KAAK,CAEzD,EAAA,cAAc,EAAK,CACnB,EAAA,aACE,EAAM,gBAAkB,EAAQ,GAAM,CAAE,CAAC,EAAQ,CAAC,CAClD,EACD,CAED,EAAM,cAAgB,CACpB,GAAI,CAAC,EAAM,OACX,IAAM,EAAQ,EAAA,gBAAgB,EAAQ,CAAC,OACvC,EAAgB,EAAM,EACrB,CAAC,EAAM,EAAO,CAAC,CAElB,EAAM,cAAgB,CAChB,EACF,EAAW,QAAU,EAAA,kBAAkB,CAC9B,EAAW,SAAW,OAC/B,EAAW,QAAQ,OAAO,CAC1B,EAAW,QAAU,OAEtB,CAAC,EAAK,CAAC,CAEV,EAAM,cAAgB,CACf,IACH,EAAU,GAAG,CACb,EAAgB,KAAK,GAEtB,CAAC,EAAK,CAAC,CAEV,IAAM,EAAe,EAAM,aAClB,CACL,OACA,aAAc,EACd,SACA,YACA,eACA,kBACA,eACA,SACA,YACA,UACA,UACD,EACD,CACE,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACD,CACF,CAID,OAFK,GAGH,EAAA,EAAA,KAAC,EAAA,mBAAD,CAAoB,MAAO,YACzB,EAAA,EAAA,MAAC,EAAA,OAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CACE,UAAW,EAAA,GACT,mCACA,yBACD,CACD,YAAU,UACV,YAAe,EAAQ,GAAM,CAC7B,cAAY,OACZ,CAAA,EACF,EAAA,EAAA,KAAC,MAAD,CACE,KAAK,SACL,aAAW,OACX,aAAW,eACX,YAAU,SACV,UAAW,EAAA,GACT,2BACA,sCACA,kBACA,2DACA,mDACA,kBACD,CAEA,WACG,CAAA,CACC,CAAA,CAAA,CACU,CAAA,CA/BL,KAmCpB,EAAY,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenu.d.ts","sourceRoot":"","sources":["../../../src/components/CommandMenu/CommandMenu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC;AAED,iBAAS,WAAW,CAAC,EACnB,QAAQ,EACR,IAAI,EAAE,cAAc,EACpB,WAAmB,EACnB,YAAY,GACb,EAAE,gBAAgB,kDAsGlB;kBA3GQ,WAAW;;;AA+GpB,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"CommandMenu.d.ts","sourceRoot":"","sources":["../../../src/components/CommandMenu/CommandMenu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC;AAED,iBAAS,WAAW,CAAC,EACnB,QAAQ,EACR,IAAI,EAAE,cAAc,EACpB,WAAmB,EACnB,YAAY,GACb,EAAE,gBAAgB,kDAwGlB;kBA7GQ,WAAW;;;AAiHpB,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -47,12 +47,14 @@ function d({ children: d, open: f, defaultOpen: p = !1, onOpenChange: m }) {
47
47
  value: O,
48
48
  children: /* @__PURE__ */ u(r, { children: [/* @__PURE__ */ l("div", {
49
49
  className: e("fixed inset-0 z-(--nuka-z-modal)", "bg-(--nuka-bg-overlay)"),
50
+ "data-slot": "overlay",
50
51
  onClick: () => g(!1),
51
52
  "aria-hidden": "true"
52
53
  }), /* @__PURE__ */ l("div", {
53
54
  role: "dialog",
54
55
  "aria-modal": "true",
55
56
  "aria-label": "Command menu",
57
+ "data-slot": "dialog",
56
58
  className: e("fixed z-(--nuka-z-modal)", "left-1/2 top-[20%] -translate-x-1/2", "w-full max-w-lg", "rounded-(--radius-xl) border border-(--nuka-border-base)", "bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)", "overflow-hidden"),
57
59
  children: d
58
60
  })] })
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenu.js","names":[],"sources":["../../../src/components/CommandMenu/CommandMenu.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport { useEscapeKey } from \"@nuka/hooks/use-escape-key\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { getActiveElement } from \"@nuka/utils/get-active-element\";\nimport { CommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\nimport { getVisibleItems } from \"@nuka/components/CommandMenu/CommandMenu.utils\";\n\nexport interface CommandMenuProps {\n children: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n}\n\nfunction CommandMenu({\n children,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n}: CommandMenuProps) {\n const [open, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n\n const [filter, setFilter] = React.useState(\"\");\n const [activeItemId, setActiveItemId] = React.useState<string | null>(null);\n const [visibleCount, setVisibleCount] = React.useState(0);\n\n const baseId = React.useId();\n const listboxId = `${baseId}-listbox`;\n const inputId = `${baseId}-input`;\n const listRef = React.useRef<HTMLDivElement>(null);\n const restoreRef = React.useRef<HTMLElement | null>(null);\n\n useScrollLock(open);\n useEscapeKey(\n React.useCallback(() => setOpen(false), [setOpen]),\n open,\n );\n\n React.useEffect(() => {\n if (!open) return;\n const count = getVisibleItems(listRef).length;\n setVisibleCount(count);\n }, [open, filter]);\n\n React.useEffect(() => {\n if (open) {\n restoreRef.current = getActiveElement() as HTMLElement | null;\n } else if (restoreRef.current != null) {\n restoreRef.current.focus();\n restoreRef.current = null;\n }\n }, [open]);\n\n React.useEffect(() => {\n if (!open) {\n setFilter(\"\");\n setActiveItemId(null);\n }\n }, [open]);\n\n const contextValue = React.useMemo(\n () => ({\n open,\n onOpenChange: setOpen,\n filter,\n setFilter,\n activeItemId,\n setActiveItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n listRef,\n }),\n [\n open,\n setOpen,\n filter,\n activeItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n ],\n );\n\n if (!open) return null;\n\n return (\n <CommandMenuContext value={contextValue}>\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n )}\n onClick={() => setOpen(false)}\n aria-hidden=\"true\"\n />\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label=\"Command menu\"\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"left-1/2 top-[20%] -translate-x-1/2\",\n \"w-full max-w-lg\",\n \"rounded-(--radius-xl) border border-(--nuka-border-base)\",\n \"bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)\",\n \"overflow-hidden\",\n )}\n >\n {children}\n </div>\n </Portal>\n </CommandMenuContext>\n );\n}\n\nCommandMenu.displayName = \"CommandMenu\";\n\nexport { CommandMenu };\n"],"mappings":";;;;;;;;;;;;AAkBA,SAAS,EAAY,EACnB,aACA,MAAM,GACN,iBAAc,IACd,mBACmB;CACnB,IAAM,CAAC,GAAM,KAAW,EACtB,GACA,GACA,EACD,EAEK,CAAC,GAAQ,KAAa,EAAM,SAAS,GAAG,EACxC,CAAC,GAAc,KAAmB,EAAM,SAAwB,KAAK,EACrE,CAAC,GAAc,KAAmB,EAAM,SAAS,EAAE,EAEnD,IAAS,EAAM,OAAO,EACtB,IAAY,GAAG,EAAO,WACtB,IAAU,GAAG,EAAO,SACpB,IAAU,EAAM,OAAuB,KAAK,EAC5C,IAAa,EAAM,OAA2B,KAAK;AAuBzD,CArBA,EAAc,EAAK,EACnB,EACE,EAAM,kBAAkB,EAAQ,GAAM,EAAE,CAAC,EAAQ,CAAC,EAClD,EACD,EAED,EAAM,gBAAgB;AACpB,MAAI,CAAC,EAAM;EACX,IAAM,IAAQ,EAAgB,EAAQ,CAAC;AACvC,IAAgB,EAAM;IACrB,CAAC,GAAM,EAAO,CAAC,EAElB,EAAM,gBAAgB;AACpB,EAAI,IACF,EAAW,UAAU,GAAkB,GAC9B,EAAW,WAAW,SAC/B,EAAW,QAAQ,OAAO,EAC1B,EAAW,UAAU;IAEtB,CAAC,EAAK,CAAC,EAEV,EAAM,gBAAgB;AACpB,EAAK,MACH,EAAU,GAAG,EACb,EAAgB,KAAK;IAEtB,CAAC,EAAK,CAAC;CAEV,IAAM,IAAe,EAAM,eAClB;EACL;EACA,cAAc;EACd;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAID,QAFK,IAGH,kBAAC,GAAD;EAAoB,OAAO;YACzB,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;GACE,WAAW,EACT,oCACA,yBACD;GACD,eAAe,EAAQ,GAAM;GAC7B,eAAY;GACZ,CAAA,EACF,kBAAC,OAAD;GACE,MAAK;GACL,cAAW;GACX,cAAW;GACX,WAAW,EACT,4BACA,uCACA,mBACA,4DACA,oDACA,kBACD;GAEA;GACG,CAAA,CACC,EAAA,CAAA;EACU,CAAA,GA7BL;;AAiCpB,EAAY,cAAc"}
1
+ {"version":3,"file":"CommandMenu.js","names":[],"sources":["../../../src/components/CommandMenu/CommandMenu.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport { useEscapeKey } from \"@nuka/hooks/use-escape-key\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { getActiveElement } from \"@nuka/utils/get-active-element\";\nimport { CommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\nimport { getVisibleItems } from \"@nuka/components/CommandMenu/CommandMenu.utils\";\n\nexport interface CommandMenuProps {\n children: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n}\n\nfunction CommandMenu({\n children,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n}: CommandMenuProps) {\n const [open, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n\n const [filter, setFilter] = React.useState(\"\");\n const [activeItemId, setActiveItemId] = React.useState<string | null>(null);\n const [visibleCount, setVisibleCount] = React.useState(0);\n\n const baseId = React.useId();\n const listboxId = `${baseId}-listbox`;\n const inputId = `${baseId}-input`;\n const listRef = React.useRef<HTMLDivElement>(null);\n const restoreRef = React.useRef<HTMLElement | null>(null);\n\n useScrollLock(open);\n useEscapeKey(\n React.useCallback(() => setOpen(false), [setOpen]),\n open,\n );\n\n React.useEffect(() => {\n if (!open) return;\n const count = getVisibleItems(listRef).length;\n setVisibleCount(count);\n }, [open, filter]);\n\n React.useEffect(() => {\n if (open) {\n restoreRef.current = getActiveElement() as HTMLElement | null;\n } else if (restoreRef.current != null) {\n restoreRef.current.focus();\n restoreRef.current = null;\n }\n }, [open]);\n\n React.useEffect(() => {\n if (!open) {\n setFilter(\"\");\n setActiveItemId(null);\n }\n }, [open]);\n\n const contextValue = React.useMemo(\n () => ({\n open,\n onOpenChange: setOpen,\n filter,\n setFilter,\n activeItemId,\n setActiveItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n listRef,\n }),\n [\n open,\n setOpen,\n filter,\n activeItemId,\n visibleCount,\n baseId,\n listboxId,\n inputId,\n ],\n );\n\n if (!open) return null;\n\n return (\n <CommandMenuContext value={contextValue}>\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n )}\n data-slot=\"overlay\"\n onClick={() => setOpen(false)}\n aria-hidden=\"true\"\n />\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label=\"Command menu\"\n data-slot=\"dialog\"\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"left-1/2 top-[20%] -translate-x-1/2\",\n \"w-full max-w-lg\",\n \"rounded-(--radius-xl) border border-(--nuka-border-base)\",\n \"bg-(--nuka-bg-base) shadow-(--nuka-shadow-modal)\",\n \"overflow-hidden\",\n )}\n >\n {children}\n </div>\n </Portal>\n </CommandMenuContext>\n );\n}\n\nCommandMenu.displayName = \"CommandMenu\";\n\nexport { CommandMenu };\n"],"mappings":";;;;;;;;;;;;AAkBA,SAAS,EAAY,EACnB,aACA,MAAM,GACN,iBAAc,IACd,mBACmB;CACnB,IAAM,CAAC,GAAM,KAAW,EACtB,GACA,GACA,EACD,EAEK,CAAC,GAAQ,KAAa,EAAM,SAAS,GAAG,EACxC,CAAC,GAAc,KAAmB,EAAM,SAAwB,KAAK,EACrE,CAAC,GAAc,KAAmB,EAAM,SAAS,EAAE,EAEnD,IAAS,EAAM,OAAO,EACtB,IAAY,GAAG,EAAO,WACtB,IAAU,GAAG,EAAO,SACpB,IAAU,EAAM,OAAuB,KAAK,EAC5C,IAAa,EAAM,OAA2B,KAAK;AAuBzD,CArBA,EAAc,EAAK,EACnB,EACE,EAAM,kBAAkB,EAAQ,GAAM,EAAE,CAAC,EAAQ,CAAC,EAClD,EACD,EAED,EAAM,gBAAgB;AACpB,MAAI,CAAC,EAAM;EACX,IAAM,IAAQ,EAAgB,EAAQ,CAAC;AACvC,IAAgB,EAAM;IACrB,CAAC,GAAM,EAAO,CAAC,EAElB,EAAM,gBAAgB;AACpB,EAAI,IACF,EAAW,UAAU,GAAkB,GAC9B,EAAW,WAAW,SAC/B,EAAW,QAAQ,OAAO,EAC1B,EAAW,UAAU;IAEtB,CAAC,EAAK,CAAC,EAEV,EAAM,gBAAgB;AACpB,EAAK,MACH,EAAU,GAAG,EACb,EAAgB,KAAK;IAEtB,CAAC,EAAK,CAAC;CAEV,IAAM,IAAe,EAAM,eAClB;EACL;EACA,cAAc;EACd;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAID,QAFK,IAGH,kBAAC,GAAD;EAAoB,OAAO;YACzB,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;GACE,WAAW,EACT,oCACA,yBACD;GACD,aAAU;GACV,eAAe,EAAQ,GAAM;GAC7B,eAAY;GACZ,CAAA,EACF,kBAAC,OAAD;GACE,MAAK;GACL,cAAW;GACX,cAAW;GACX,aAAU;GACV,WAAW,EACT,4BACA,uCACA,mBACA,4DACA,oDACA,kBACD;GAEA;GACG,CAAA,CACC,EAAA,CAAA;EACU,CAAA,GA/BL;;AAmCpB,EAAY,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../Text/Text.cjs`),r=require(`./CommandMenu.context.cjs`);let i=require(`react`);i=e.__toESM(i,1);let a=require(`react/jsx-runtime`);function o({ref:e,className:i,children:o,...s}){return r.useCommandMenuContext().visibleCount>0?null:(0,a.jsx)(`div`,{ref:e,role:`presentation`,className:t.cn(`py-(--space-8) text-center`,i),...s,children:(0,a.jsx)(n.Text,{size:`sm`,color:`muted`,children:o})})}o.displayName=`CommandMenuEmpty`,exports.CommandMenuEmpty=o;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../Text/Text.cjs`),r=require(`./CommandMenu.context.cjs`);let i=require(`react`);i=e.__toESM(i,1);let a=require(`react/jsx-runtime`);function o({ref:e,className:i,children:o,...s}){return r.useCommandMenuContext().visibleCount>0?null:(0,a.jsx)(`div`,{ref:e,role:`presentation`,className:t.cn(`py-(--space-8) text-center`,i),"data-slot":`empty`,...s,children:(0,a.jsx)(n.Text,{size:`sm`,color:`muted`,children:o})})}o.displayName=`CommandMenuEmpty`,exports.CommandMenuEmpty=o;
2
2
  //# sourceMappingURL=CommandMenuEmpty.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenuEmpty.cjs","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuEmpty.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Text } from \"@nuka/components/Text\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuEmptyProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction CommandMenuEmpty({\n ref,\n className,\n children,\n ...props\n}: CommandMenuEmptyProps) {\n const ctx = useCommandMenuContext();\n\n if (ctx.visibleCount > 0) return null;\n\n return (\n <div\n ref={ref}\n role=\"presentation\"\n className={cn(\"py-(--space-8) text-center\", className)}\n {...props}\n >\n <Text size=\"sm\" color=\"muted\">\n {children}\n </Text>\n </div>\n );\n}\n\nCommandMenuEmpty.displayName = \"CommandMenuEmpty\";\n\nexport { CommandMenuEmpty };\n"],"mappings":"qPAUA,SAAS,EAAiB,CACxB,MACA,YACA,WACA,GAAG,GACqB,CAKxB,OAJY,EAAA,uBAAuB,CAE3B,aAAe,EAAU,MAG/B,EAAA,EAAA,KAAC,MAAD,CACO,MACL,KAAK,eACL,UAAW,EAAA,GAAG,6BAA8B,EAAU,CACtD,GAAI,YAEJ,EAAA,EAAA,KAAC,EAAA,KAAD,CAAM,KAAK,KAAK,MAAM,QACnB,WACI,CAAA,CACH,CAAA,CAIV,EAAiB,YAAc"}
1
+ {"version":3,"file":"CommandMenuEmpty.cjs","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuEmpty.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Text } from \"@nuka/components/Text\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuEmptyProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction CommandMenuEmpty({\n ref,\n className,\n children,\n ...props\n}: CommandMenuEmptyProps) {\n const ctx = useCommandMenuContext();\n\n if (ctx.visibleCount > 0) return null;\n\n return (\n <div\n ref={ref}\n role=\"presentation\"\n className={cn(\"py-(--space-8) text-center\", className)}\n data-slot=\"empty\"\n {...props}\n >\n <Text size=\"sm\" color=\"muted\">\n {children}\n </Text>\n </div>\n );\n}\n\nCommandMenuEmpty.displayName = \"CommandMenuEmpty\";\n\nexport { CommandMenuEmpty };\n"],"mappings":"qPAUA,SAAS,EAAiB,CACxB,MACA,YACA,WACA,GAAG,GACqB,CAKxB,OAJY,EAAA,uBAAuB,CAE3B,aAAe,EAAU,MAG/B,EAAA,EAAA,KAAC,MAAD,CACO,MACL,KAAK,eACL,UAAW,EAAA,GAAG,6BAA8B,EAAU,CACtD,YAAU,QACV,GAAI,YAEJ,EAAA,EAAA,KAAC,EAAA,KAAD,CAAM,KAAK,KAAK,MAAM,QACnB,WACI,CAAA,CACH,CAAA,CAIV,EAAiB,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenuEmpty.d.ts","sourceRoot":"","sources":["../../../src/components/CommandMenu/CommandMenuEmpty.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,WAAW,qBAAsB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACjF,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;CAC7C;AAED,iBAAS,gBAAgB,CAAC,EACxB,GAAG,EACH,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,qBAAqB,kDAiBvB;kBAtBQ,gBAAgB;;;AA0BzB,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"CommandMenuEmpty.d.ts","sourceRoot":"","sources":["../../../src/components/CommandMenu/CommandMenuEmpty.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,WAAW,qBAAsB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACjF,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;CAC7C;AAED,iBAAS,gBAAgB,CAAC,EACxB,GAAG,EACH,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,qBAAqB,kDAkBvB;kBAvBQ,gBAAgB;;;AA2BzB,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -10,6 +10,7 @@ function i({ ref: i, className: a, children: o, ...s }) {
10
10
  ref: i,
11
11
  role: "presentation",
12
12
  className: e("py-(--space-8) text-center", a),
13
+ "data-slot": "empty",
13
14
  ...s,
14
15
  children: /* @__PURE__ */ r(t, {
15
16
  size: "sm",
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenuEmpty.js","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuEmpty.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Text } from \"@nuka/components/Text\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuEmptyProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction CommandMenuEmpty({\n ref,\n className,\n children,\n ...props\n}: CommandMenuEmptyProps) {\n const ctx = useCommandMenuContext();\n\n if (ctx.visibleCount > 0) return null;\n\n return (\n <div\n ref={ref}\n role=\"presentation\"\n className={cn(\"py-(--space-8) text-center\", className)}\n {...props}\n >\n <Text size=\"sm\" color=\"muted\">\n {children}\n </Text>\n </div>\n );\n}\n\nCommandMenuEmpty.displayName = \"CommandMenuEmpty\";\n\nexport { CommandMenuEmpty };\n"],"mappings":";;;;;;;AAUA,SAAS,EAAiB,EACxB,QACA,cACA,aACA,GAAG,KACqB;AAKxB,QAJY,GAAuB,CAE3B,eAAe,IAAU,OAG/B,kBAAC,OAAD;EACO;EACL,MAAK;EACL,WAAW,EAAG,8BAA8B,EAAU;EACtD,GAAI;YAEJ,kBAAC,GAAD;GAAM,MAAK;GAAK,OAAM;GACnB;GACI,CAAA;EACH,CAAA;;AAIV,EAAiB,cAAc"}
1
+ {"version":3,"file":"CommandMenuEmpty.js","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuEmpty.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Text } from \"@nuka/components/Text\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuEmptyProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction CommandMenuEmpty({\n ref,\n className,\n children,\n ...props\n}: CommandMenuEmptyProps) {\n const ctx = useCommandMenuContext();\n\n if (ctx.visibleCount > 0) return null;\n\n return (\n <div\n ref={ref}\n role=\"presentation\"\n className={cn(\"py-(--space-8) text-center\", className)}\n data-slot=\"empty\"\n {...props}\n >\n <Text size=\"sm\" color=\"muted\">\n {children}\n </Text>\n </div>\n );\n}\n\nCommandMenuEmpty.displayName = \"CommandMenuEmpty\";\n\nexport { CommandMenuEmpty };\n"],"mappings":";;;;;;;AAUA,SAAS,EAAiB,EACxB,QACA,cACA,aACA,GAAG,KACqB;AAKxB,QAJY,GAAuB,CAE3B,eAAe,IAAU,OAG/B,kBAAC,OAAD;EACO;EACL,MAAK;EACL,WAAW,EAAG,8BAA8B,EAAU;EACtD,aAAU;EACV,GAAI;YAEJ,kBAAC,GAAD;GAAM,MAAK;GAAK,OAAM;GACnB;GACI,CAAA;EACH,CAAA;;AAIV,EAAiB,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`./CommandMenu.context.cjs`);let r=require(`react`);r=e.__toESM(r,1);let i=require(`react/jsx-runtime`);function a({ref:e,heading:a,className:o,children:s,...c}){let l=r.useId(),u=r.useRef(null),[d,f]=r.useState(!0),p=n.useCommandMenuContext(),m=r.useCallback(t=>{u.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]);return r.useEffect(()=>{u.current!=null&&f(u.current.querySelector(`[role="option"]:not([hidden])`)!==null)},[p.filter]),(0,i.jsxs)(`div`,{ref:m,role:`group`,"aria-labelledby":a==null?void 0:l,hidden:!d||void 0,className:t.cn(o),...c,children:[a!=null&&(0,i.jsx)(`div`,{id:l,role:`presentation`,className:t.cn(`text-xs font-medium text-(--nuka-text-muted)`,`px-(--space-3) py-(--space-2)`),children:a}),s]})}a.displayName=`CommandMenuGroup`,exports.CommandMenuGroup=a;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`./CommandMenu.context.cjs`);let r=require(`react`);r=e.__toESM(r,1);let i=require(`react/jsx-runtime`);function a({ref:e,heading:a,className:o,children:s,...c}){let l=r.useId(),u=r.useRef(null),[d,f]=r.useState(!0),p=n.useCommandMenuContext(),m=r.useCallback(t=>{u.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]);return r.useEffect(()=>{u.current!=null&&f(u.current.querySelector(`[role="option"]:not([hidden])`)!==null)},[p.filter]),(0,i.jsxs)(`div`,{ref:m,role:`group`,"aria-labelledby":a==null?void 0:l,hidden:!d||void 0,className:t.cn(o),"data-slot":`group`,...c,children:[a!=null&&(0,i.jsx)(`div`,{id:l,role:`presentation`,"data-slot":`group-heading`,className:t.cn(`text-xs font-[number:var(--font-weight-medium)] text-(--nuka-text-muted)`,`px-(--space-3) py-(--space-2)`),children:a}),s]})}a.displayName=`CommandMenuGroup`,exports.CommandMenuGroup=a;
2
2
  //# sourceMappingURL=CommandMenuGroup.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenuGroup.cjs","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuGroup.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n heading?: string;\n}\n\nfunction CommandMenuGroup({\n ref,\n heading,\n className,\n children,\n ...props\n}: CommandMenuGroupProps) {\n const headingId = React.useId();\n const groupRef = React.useRef<HTMLDivElement>(null);\n const [hasVisibleItems, setHasVisibleItems] = React.useState(true);\n const ctx = useCommandMenuContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n groupRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref != null) {\n ref.current = node;\n }\n },\n [ref],\n );\n\n React.useEffect(() => {\n if (groupRef.current == null) return;\n const visible =\n groupRef.current.querySelector('[role=\"option\"]:not([hidden])') !== null;\n setHasVisibleItems(visible);\n }, [ctx.filter]);\n\n return (\n <div\n ref={composedRef}\n role=\"group\"\n aria-labelledby={heading != null ? headingId : undefined}\n hidden={!hasVisibleItems || undefined}\n className={cn(className)}\n {...props}\n >\n {heading != null && (\n <div\n id={headingId}\n role=\"presentation\"\n className={cn(\n \"text-xs font-medium text-(--nuka-text-muted)\",\n \"px-(--space-3) py-(--space-2)\",\n )}\n >\n {heading}\n </div>\n )}\n {children}\n </div>\n );\n}\n\nCommandMenuGroup.displayName = \"CommandMenuGroup\";\n\nexport { CommandMenuGroup };\n"],"mappings":"uNAUA,SAAS,EAAiB,CACxB,MACA,UACA,YACA,WACA,GAAG,GACqB,CACxB,IAAM,EAAY,EAAM,OAAO,CACzB,EAAW,EAAM,OAAuB,KAAK,CAC7C,CAAC,EAAiB,GAAsB,EAAM,SAAS,GAAK,CAC5D,EAAM,EAAA,uBAAuB,CAE7B,EAAc,EAAM,YACvB,GAAgC,CAC/B,EAAS,QAAU,EACf,OAAO,GAAQ,WACjB,EAAI,EAAK,CACA,GAAO,OAChB,EAAI,QAAU,IAGlB,CAAC,EAAI,CACN,CASD,OAPA,EAAM,cAAgB,CAChB,EAAS,SAAW,MAGxB,EADE,EAAS,QAAQ,cAAc,gCAAgC,GAAK,KAC3C,EAC1B,CAAC,EAAI,OAAO,CAAC,EAGd,EAAA,EAAA,MAAC,MAAD,CACE,IAAK,EACL,KAAK,QACL,kBAAiB,GAAW,KAAmB,IAAA,GAAZ,EACnC,OAAQ,CAAC,GAAmB,IAAA,GAC5B,UAAW,EAAA,GAAG,EAAU,CACxB,GAAI,WANN,CAQG,GAAW,OACV,EAAA,EAAA,KAAC,MAAD,CACE,GAAI,EACJ,KAAK,eACL,UAAW,EAAA,GACT,+CACA,gCACD,UAEA,EACG,CAAA,CAEP,EACG,GAIV,EAAiB,YAAc"}
1
+ {"version":3,"file":"CommandMenuGroup.cjs","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuGroup.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n heading?: string;\n}\n\nfunction CommandMenuGroup({\n ref,\n heading,\n className,\n children,\n ...props\n}: CommandMenuGroupProps) {\n const headingId = React.useId();\n const groupRef = React.useRef<HTMLDivElement>(null);\n const [hasVisibleItems, setHasVisibleItems] = React.useState(true);\n const ctx = useCommandMenuContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n groupRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref != null) {\n ref.current = node;\n }\n },\n [ref],\n );\n\n React.useEffect(() => {\n if (groupRef.current == null) return;\n const visible =\n groupRef.current.querySelector('[role=\"option\"]:not([hidden])') !== null;\n setHasVisibleItems(visible);\n }, [ctx.filter]);\n\n return (\n <div\n ref={composedRef}\n role=\"group\"\n aria-labelledby={heading != null ? headingId : undefined}\n hidden={!hasVisibleItems || undefined}\n className={cn(className)}\n data-slot=\"group\"\n {...props}\n >\n {heading != null && (\n <div\n id={headingId}\n role=\"presentation\"\n data-slot=\"group-heading\"\n className={cn(\n \"text-xs font-[number:var(--font-weight-medium)] text-(--nuka-text-muted)\",\n \"px-(--space-3) py-(--space-2)\",\n )}\n >\n {heading}\n </div>\n )}\n {children}\n </div>\n );\n}\n\nCommandMenuGroup.displayName = \"CommandMenuGroup\";\n\nexport { CommandMenuGroup };\n"],"mappings":"uNAUA,SAAS,EAAiB,CACxB,MACA,UACA,YACA,WACA,GAAG,GACqB,CACxB,IAAM,EAAY,EAAM,OAAO,CACzB,EAAW,EAAM,OAAuB,KAAK,CAC7C,CAAC,EAAiB,GAAsB,EAAM,SAAS,GAAK,CAC5D,EAAM,EAAA,uBAAuB,CAE7B,EAAc,EAAM,YACvB,GAAgC,CAC/B,EAAS,QAAU,EACf,OAAO,GAAQ,WACjB,EAAI,EAAK,CACA,GAAO,OAChB,EAAI,QAAU,IAGlB,CAAC,EAAI,CACN,CASD,OAPA,EAAM,cAAgB,CAChB,EAAS,SAAW,MAGxB,EADE,EAAS,QAAQ,cAAc,gCAAgC,GAAK,KAC3C,EAC1B,CAAC,EAAI,OAAO,CAAC,EAGd,EAAA,EAAA,MAAC,MAAD,CACE,IAAK,EACL,KAAK,QACL,kBAAiB,GAAW,KAAmB,IAAA,GAAZ,EACnC,OAAQ,CAAC,GAAmB,IAAA,GAC5B,UAAW,EAAA,GAAG,EAAU,CACxB,YAAU,QACV,GAAI,WAPN,CASG,GAAW,OACV,EAAA,EAAA,KAAC,MAAD,CACE,GAAI,EACJ,KAAK,eACL,YAAU,gBACV,UAAW,EAAA,GACT,2EACA,gCACD,UAEA,EACG,CAAA,CAEP,EACG,GAIV,EAAiB,YAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenuGroup.d.ts","sourceRoot":"","sources":["../../../src/components/CommandMenu/CommandMenuGroup.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,qBAAsB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACjF,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,iBAAS,gBAAgB,CAAC,EACxB,GAAG,EACH,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,qBAAqB,2CAiDvB;kBAvDQ,gBAAgB;;;AA2DzB,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"CommandMenuGroup.d.ts","sourceRoot":"","sources":["../../../src/components/CommandMenu/CommandMenuGroup.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,qBAAsB,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACjF,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,SAAS,CAAC;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,iBAAS,gBAAgB,CAAC,EACxB,GAAG,EACH,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,qBAAqB,2CAmDvB;kBAzDQ,gBAAgB;;;AA6DzB,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -16,11 +16,13 @@ function a({ ref: a, heading: o, className: s, children: c, ...l }) {
16
16
  "aria-labelledby": o == null ? void 0 : u,
17
17
  hidden: !f || void 0,
18
18
  className: e(s),
19
+ "data-slot": "group",
19
20
  ...l,
20
21
  children: [o != null && /* @__PURE__ */ r("div", {
21
22
  id: u,
22
23
  role: "presentation",
23
- className: e("text-xs font-medium text-(--nuka-text-muted)", "px-(--space-3) py-(--space-2)"),
24
+ "data-slot": "group-heading",
25
+ className: e("text-xs font-[number:var(--font-weight-medium)] text-(--nuka-text-muted)", "px-(--space-3) py-(--space-2)"),
24
26
  children: o
25
27
  }), c]
26
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"CommandMenuGroup.js","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuGroup.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n heading?: string;\n}\n\nfunction CommandMenuGroup({\n ref,\n heading,\n className,\n children,\n ...props\n}: CommandMenuGroupProps) {\n const headingId = React.useId();\n const groupRef = React.useRef<HTMLDivElement>(null);\n const [hasVisibleItems, setHasVisibleItems] = React.useState(true);\n const ctx = useCommandMenuContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n groupRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref != null) {\n ref.current = node;\n }\n },\n [ref],\n );\n\n React.useEffect(() => {\n if (groupRef.current == null) return;\n const visible =\n groupRef.current.querySelector('[role=\"option\"]:not([hidden])') !== null;\n setHasVisibleItems(visible);\n }, [ctx.filter]);\n\n return (\n <div\n ref={composedRef}\n role=\"group\"\n aria-labelledby={heading != null ? headingId : undefined}\n hidden={!hasVisibleItems || undefined}\n className={cn(className)}\n {...props}\n >\n {heading != null && (\n <div\n id={headingId}\n role=\"presentation\"\n className={cn(\n \"text-xs font-medium text-(--nuka-text-muted)\",\n \"px-(--space-3) py-(--space-2)\",\n )}\n >\n {heading}\n </div>\n )}\n {children}\n </div>\n );\n}\n\nCommandMenuGroup.displayName = \"CommandMenuGroup\";\n\nexport { CommandMenuGroup };\n"],"mappings":";;;;;;AAUA,SAAS,EAAiB,EACxB,QACA,YACA,cACA,aACA,GAAG,KACqB;CACxB,IAAM,IAAY,EAAM,OAAO,EACzB,IAAW,EAAM,OAAuB,KAAK,EAC7C,CAAC,GAAiB,KAAsB,EAAM,SAAS,GAAK,EAC5D,IAAM,GAAuB,EAE7B,IAAc,EAAM,aACvB,MAAgC;AAE/B,EADA,EAAS,UAAU,GACf,OAAO,KAAQ,aACjB,EAAI,EAAK,GACA,KAAO,SAChB,EAAI,UAAU;IAGlB,CAAC,EAAI,CACN;AASD,QAPA,EAAM,gBAAgB;AAChB,IAAS,WAAW,QAGxB,EADE,EAAS,QAAQ,cAAc,kCAAgC,KAAK,KAC3C;IAC1B,CAAC,EAAI,OAAO,CAAC,EAGd,kBAAC,OAAD;EACE,KAAK;EACL,MAAK;EACL,mBAAiB,KAAW,OAAmB,KAAA,IAAZ;EACnC,QAAQ,CAAC,KAAmB,KAAA;EAC5B,WAAW,EAAG,EAAU;EACxB,GAAI;YANN,CAQG,KAAW,QACV,kBAAC,OAAD;GACE,IAAI;GACJ,MAAK;GACL,WAAW,EACT,gDACA,gCACD;aAEA;GACG,CAAA,EAEP,EACG;;;AAIV,EAAiB,cAAc"}
1
+ {"version":3,"file":"CommandMenuGroup.js","names":[],"sources":["../../../src/components/CommandMenu/CommandMenuGroup.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useCommandMenuContext } from \"@nuka/components/CommandMenu/CommandMenu.context\";\n\nexport interface CommandMenuGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n heading?: string;\n}\n\nfunction CommandMenuGroup({\n ref,\n heading,\n className,\n children,\n ...props\n}: CommandMenuGroupProps) {\n const headingId = React.useId();\n const groupRef = React.useRef<HTMLDivElement>(null);\n const [hasVisibleItems, setHasVisibleItems] = React.useState(true);\n const ctx = useCommandMenuContext();\n\n const composedRef = React.useCallback(\n (node: HTMLDivElement | null) => {\n groupRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref != null) {\n ref.current = node;\n }\n },\n [ref],\n );\n\n React.useEffect(() => {\n if (groupRef.current == null) return;\n const visible =\n groupRef.current.querySelector('[role=\"option\"]:not([hidden])') !== null;\n setHasVisibleItems(visible);\n }, [ctx.filter]);\n\n return (\n <div\n ref={composedRef}\n role=\"group\"\n aria-labelledby={heading != null ? headingId : undefined}\n hidden={!hasVisibleItems || undefined}\n className={cn(className)}\n data-slot=\"group\"\n {...props}\n >\n {heading != null && (\n <div\n id={headingId}\n role=\"presentation\"\n data-slot=\"group-heading\"\n className={cn(\n \"text-xs font-[number:var(--font-weight-medium)] text-(--nuka-text-muted)\",\n \"px-(--space-3) py-(--space-2)\",\n )}\n >\n {heading}\n </div>\n )}\n {children}\n </div>\n );\n}\n\nCommandMenuGroup.displayName = \"CommandMenuGroup\";\n\nexport { CommandMenuGroup };\n"],"mappings":";;;;;;AAUA,SAAS,EAAiB,EACxB,QACA,YACA,cACA,aACA,GAAG,KACqB;CACxB,IAAM,IAAY,EAAM,OAAO,EACzB,IAAW,EAAM,OAAuB,KAAK,EAC7C,CAAC,GAAiB,KAAsB,EAAM,SAAS,GAAK,EAC5D,IAAM,GAAuB,EAE7B,IAAc,EAAM,aACvB,MAAgC;AAE/B,EADA,EAAS,UAAU,GACf,OAAO,KAAQ,aACjB,EAAI,EAAK,GACA,KAAO,SAChB,EAAI,UAAU;IAGlB,CAAC,EAAI,CACN;AASD,QAPA,EAAM,gBAAgB;AAChB,IAAS,WAAW,QAGxB,EADE,EAAS,QAAQ,cAAc,kCAAgC,KAAK,KAC3C;IAC1B,CAAC,EAAI,OAAO,CAAC,EAGd,kBAAC,OAAD;EACE,KAAK;EACL,MAAK;EACL,mBAAiB,KAAW,OAAmB,KAAA,IAAZ;EACnC,QAAQ,CAAC,KAAmB,KAAA;EAC5B,WAAW,EAAG,EAAU;EACxB,aAAU;EACV,GAAI;YAPN,CASG,KAAW,QACV,kBAAC,OAAD;GACE,IAAI;GACJ,MAAK;GACL,aAAU;GACV,WAAW,EACT,4EACA,gCACD;aAEA;GACG,CAAA,EAEP,EACG;;;AAIV,EAAiB,cAAc"}
@@ -1,2 +1,2 @@
1
- "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/roving-index.cjs`),r=require(`../Icon/Icon.cjs`),i=require(`./CommandMenu.context.cjs`),a=require(`./CommandMenu.utils.cjs`);let o=require(`react`);o=e.__toESM(o,1);let s=require(`react/jsx-runtime`);function c({ref:e,className:c,...l}){let u=i.useCommandMenuContext(),d=o.useRef(null),f=o.useCallback(t=>{d.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]);o.useEffect(()=>{u.open&&requestAnimationFrame(()=>{d.current?.focus()})},[u.open]);let p=e=>{let t=a.getVisibleItems(u.listRef),r=t.findIndex(e=>e.id===u.activeItemId),i=n.getRovingIndex(e.key,r,t.length,`vertical`);if(i!==void 0){e.preventDefault();let n=t[i];n!=null&&u.setActiveItemId(n.id);return}switch(e.key){case`Enter`:if(e.preventDefault(),u.activeItemId!=null){let e=document.getElementById(u.activeItemId);e!=null&&e.getAttribute(`aria-disabled`)!==`true`&&e.click()}break;case`Tab`:u.onOpenChange(!1);break;default:break}},m=e=>{u.setFilter(e.target.value),u.setActiveItemId(null)},h=u.activeItemId??void 0;return(0,s.jsxs)(`div`,{className:t.cn(`flex items-center gap-(--space-2) px-(--space-3)`,`border-b border-(--nuka-border-base)`),children:[(0,s.jsx)(r.Icon,{size:`sm`,color:`muted`,children:(0,s.jsx)(a.SearchIcon,{})}),(0,s.jsx)(`input`,{ref:f,id:u.inputId,role:`combobox`,"aria-autocomplete":`list`,"aria-expanded":!0,"aria-controls":u.listboxId,"aria-activedescendant":h,value:u.filter,onChange:m,onKeyDown:p,className:t.cn(`flex-1 bg-transparent py-(--space-3)`,`text-sm text-(--nuka-text-base)`,`placeholder:text-(--nuka-text-muted)`,`outline-none`,c),...l})]})}c.displayName=`CommandMenuInput`,exports.CommandMenuInput=c;
1
+ "use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/roving-index.cjs`),r=require(`../Icon/Icon.cjs`),i=require(`./CommandMenu.context.cjs`),a=require(`./CommandMenu.utils.cjs`);let o=require(`react`);o=e.__toESM(o,1);let s=require(`react/jsx-runtime`);function c({ref:e,className:c,...l}){let u=i.useCommandMenuContext(),d=o.useRef(null),f=o.useCallback(t=>{d.current=t,typeof e==`function`?e(t):e!=null&&(e.current=t)},[e]);o.useEffect(()=>{u.open&&requestAnimationFrame(()=>{d.current?.focus()})},[u.open]);let p=e=>{let t=a.getVisibleItems(u.listRef),r=t.findIndex(e=>e.id===u.activeItemId),i=n.getRovingIndex(e.key,r,t.length,`vertical`);if(i!==void 0){e.preventDefault();let n=t[i];n!=null&&u.setActiveItemId(n.id);return}switch(e.key){case`Enter`:if(e.preventDefault(),u.activeItemId!=null){let e=document.getElementById(u.activeItemId);e!=null&&e.getAttribute(`aria-disabled`)!==`true`&&e.click()}break;case`Tab`:u.onOpenChange(!1);break;default:break}},m=e=>{u.setFilter(e.target.value),u.setActiveItemId(null)},h=u.activeItemId??void 0;return(0,s.jsxs)(`div`,{"data-slot":`input-wrapper`,className:t.cn(`flex items-center gap-(--space-2) px-(--space-3)`,`border-b border-(--nuka-border-base)`),children:[(0,s.jsx)(r.Icon,{size:`sm`,color:`muted`,children:(0,s.jsx)(a.SearchIcon,{})}),(0,s.jsx)(`input`,{ref:f,id:u.inputId,"data-slot":`input`,role:`combobox`,"aria-autocomplete":`list`,"aria-expanded":!0,"aria-controls":u.listboxId,"aria-activedescendant":h,value:u.filter,onChange:m,onKeyDown:p,className:t.cn(`flex-1 bg-transparent py-(--space-3)`,`text-sm text-(--nuka-text-base)`,`placeholder:text-(--nuka-text-muted)`,`outline-none`,c),...l})]})}c.displayName=`CommandMenuInput`,exports.CommandMenuInput=c;
2
2
  //# sourceMappingURL=CommandMenuInput.cjs.map