@definable/ui 0.1.0 → 0.1.8

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 (322) hide show
  1. package/README.md +6 -6
  2. package/dist/alert-dialog.d.ts +18 -0
  3. package/dist/alert.d.ts +18 -0
  4. package/dist/avatar.d.ts +9 -0
  5. package/dist/badge.d.ts +15 -0
  6. package/dist/button.d.ts +16 -0
  7. package/dist/calendar.d.ts +21 -0
  8. package/dist/card.d.ts +15 -0
  9. package/dist/carousel.d.ts +18 -0
  10. package/dist/charts.d.ts +26 -0
  11. package/dist/checkbox.d.ts +6 -0
  12. package/dist/collapse.d.ts +15 -0
  13. package/dist/command-menu.d.ts +12 -0
  14. package/dist/command.d.ts +89 -0
  15. package/dist/components/alert-dialog.d.ts +15 -0
  16. package/dist/components/alert-dialog.esm.js +59 -0
  17. package/dist/components/alert-dialog.esm.js.map +1 -0
  18. package/dist/components/alert-dialog.js +2 -0
  19. package/dist/components/alert-dialog.js.map +1 -0
  20. package/dist/components/alert.d.ts +11 -0
  21. package/dist/components/alert.esm.js +51 -0
  22. package/dist/components/alert.esm.js.map +1 -0
  23. package/dist/components/alert.js +2 -0
  24. package/dist/components/alert.js.map +1 -0
  25. package/dist/components/avatar.d.ts +5 -0
  26. package/dist/components/avatar.esm.js +42 -0
  27. package/dist/components/avatar.esm.js.map +1 -0
  28. package/dist/components/avatar.js +2 -0
  29. package/dist/components/avatar.js.map +1 -0
  30. package/dist/components/badge.d.ts +9 -0
  31. package/dist/components/badge.esm.js +27 -0
  32. package/dist/components/badge.esm.js.map +1 -0
  33. package/dist/components/badge.js +2 -0
  34. package/dist/components/badge.js.map +1 -0
  35. package/dist/components/button.d.ts +13 -0
  36. package/dist/components/button.esm.js +48 -0
  37. package/dist/components/button.esm.js.map +1 -0
  38. package/dist/components/button.js +2 -0
  39. package/dist/components/button.js.map +1 -0
  40. package/dist/components/calendar.d.ts +18 -0
  41. package/dist/components/calendar.esm.js +5562 -0
  42. package/dist/components/calendar.esm.js.map +1 -0
  43. package/dist/components/calendar.js +2 -0
  44. package/dist/components/calendar.js.map +1 -0
  45. package/dist/components/card.d.ts +8 -0
  46. package/dist/components/card.esm.js +62 -0
  47. package/dist/components/card.esm.js.map +1 -0
  48. package/dist/components/card.js +2 -0
  49. package/dist/components/card.js.map +1 -0
  50. package/dist/components/carousel.d.ts +13 -0
  51. package/dist/components/carousel.esm.js +101 -0
  52. package/dist/components/carousel.esm.js.map +1 -0
  53. package/dist/components/carousel.js +2 -0
  54. package/dist/components/carousel.js.map +1 -0
  55. package/dist/components/charts.d.ts +17 -0
  56. package/dist/components/charts.esm.js +48 -0
  57. package/dist/components/charts.esm.js.map +1 -0
  58. package/dist/components/charts.js +2 -0
  59. package/dist/components/charts.js.map +1 -0
  60. package/dist/components/checkbox.d.ts +4 -0
  61. package/dist/components/checkbox.esm.js +32 -0
  62. package/dist/components/checkbox.esm.js.map +1 -0
  63. package/dist/components/checkbox.js +2 -0
  64. package/dist/components/checkbox.js.map +1 -0
  65. package/dist/components/collapse.d.ts +11 -0
  66. package/dist/components/collapse.esm.js +50 -0
  67. package/dist/components/collapse.esm.js.map +1 -0
  68. package/dist/components/collapse.js +2 -0
  69. package/dist/components/collapse.js.map +1 -0
  70. package/dist/components/command-menu.d.ts +7 -0
  71. package/dist/components/command-menu.esm.js +90 -0
  72. package/dist/components/command-menu.esm.js.map +1 -0
  73. package/dist/components/command-menu.js +2 -0
  74. package/dist/components/command-menu.js.map +1 -0
  75. package/dist/components/command.d.ts +79 -0
  76. package/dist/components/command.esm.js +425 -0
  77. package/dist/components/command.esm.js.map +1 -0
  78. package/dist/components/command.js +2 -0
  79. package/dist/components/command.js.map +1 -0
  80. package/dist/components/confirmation-modal.d.ts +12 -0
  81. package/dist/components/confirmation-modal.esm.js +46 -0
  82. package/dist/components/confirmation-modal.esm.js.map +1 -0
  83. package/dist/components/confirmation-modal.js +2 -0
  84. package/dist/components/confirmation-modal.js.map +1 -0
  85. package/dist/components/context-menu.d.ts +26 -0
  86. package/dist/components/context-menu.esm.js +186 -0
  87. package/dist/components/context-menu.esm.js.map +1 -0
  88. package/dist/components/context-menu.js +2 -0
  89. package/dist/components/context-menu.js.map +1 -0
  90. package/dist/components/dialog.d.ts +21 -0
  91. package/dist/components/dialog.esm.js +122 -0
  92. package/dist/components/dialog.esm.js.map +1 -0
  93. package/dist/components/dialog.js +2 -0
  94. package/dist/components/dialog.js.map +1 -0
  95. package/dist/components/dropdown-menu.d.ts +9 -0
  96. package/dist/components/dropdown-menu.esm.js +49 -0
  97. package/dist/components/dropdown-menu.esm.js.map +1 -0
  98. package/dist/components/dropdown-menu.js +2 -0
  99. package/dist/components/dropdown-menu.js.map +1 -0
  100. package/dist/components/dropzone.d.ts +12 -0
  101. package/dist/components/dropzone.esm.js +45 -0
  102. package/dist/components/dropzone.esm.js.map +1 -0
  103. package/dist/components/dropzone.js +2 -0
  104. package/dist/components/dropzone.js.map +1 -0
  105. package/dist/components/image-cropper-modal.d.ts +10 -0
  106. package/dist/components/image-cropper-modal.esm.js +251 -0
  107. package/dist/components/image-cropper-modal.esm.js.map +1 -0
  108. package/dist/components/image-cropper-modal.js +2 -0
  109. package/dist/components/image-cropper-modal.js.map +1 -0
  110. package/dist/components/image-cropper.d.ts +11 -0
  111. package/dist/components/image-cropper.esm.js +131 -0
  112. package/dist/components/image-cropper.esm.js.map +1 -0
  113. package/dist/components/image-cropper.js +2 -0
  114. package/dist/components/image-cropper.js.map +1 -0
  115. package/dist/components/input.d.ts +5 -0
  116. package/dist/components/input.esm.js +22 -0
  117. package/dist/components/input.esm.js.map +1 -0
  118. package/dist/components/input.js +2 -0
  119. package/dist/components/input.js.map +1 -0
  120. package/dist/components/label.d.ts +4 -0
  121. package/dist/components/label.esm.js +20 -0
  122. package/dist/components/label.esm.js.map +1 -0
  123. package/dist/components/label.js +2 -0
  124. package/dist/components/label.js.map +1 -0
  125. package/dist/components/loader.d.ts +10 -0
  126. package/dist/components/loader.esm.js +70 -0
  127. package/dist/components/loader.esm.js.map +1 -0
  128. package/dist/components/loader.js +2 -0
  129. package/dist/components/loader.js.map +1 -0
  130. package/dist/components/loading-placeholder.d.ts +8 -0
  131. package/dist/components/loading-placeholder.esm.js +25 -0
  132. package/dist/components/loading-placeholder.esm.js.map +1 -0
  133. package/dist/components/loading-placeholder.js +2 -0
  134. package/dist/components/loading-placeholder.js.map +1 -0
  135. package/dist/components/markdown.d.ts +2 -0
  136. package/dist/components/markdown.esm.js +12066 -0
  137. package/dist/components/markdown.esm.js.map +1 -0
  138. package/dist/components/markdown.js +18 -0
  139. package/dist/components/markdown.js.map +1 -0
  140. package/dist/components/mention.d.ts +25 -0
  141. package/dist/components/mention.esm.js +154 -0
  142. package/dist/components/mention.esm.js.map +1 -0
  143. package/dist/components/mention.js +2 -0
  144. package/dist/components/mention.js.map +1 -0
  145. package/dist/components/modal.d.ts +19 -0
  146. package/dist/components/modal.esm.js +92 -0
  147. package/dist/components/modal.esm.js.map +1 -0
  148. package/dist/components/modal.js +2 -0
  149. package/dist/components/modal.js.map +1 -0
  150. package/dist/components/monaco-editor.d.ts +2 -0
  151. package/dist/components/monaco-editor.esm.js +295 -0
  152. package/dist/components/monaco-editor.esm.js.map +1 -0
  153. package/dist/components/monaco-editor.js +8 -0
  154. package/dist/components/monaco-editor.js.map +1 -0
  155. package/dist/components/notification.d.ts +5 -0
  156. package/dist/components/notification.esm.js +26 -0
  157. package/dist/components/notification.esm.js.map +1 -0
  158. package/dist/components/notification.js +2 -0
  159. package/dist/components/notification.js.map +1 -0
  160. package/dist/components/popover.d.ts +6 -0
  161. package/dist/components/popover.esm.js +24 -0
  162. package/dist/components/popover.esm.js.map +1 -0
  163. package/dist/components/popover.js +2 -0
  164. package/dist/components/popover.js.map +1 -0
  165. package/dist/components/progress.d.ts +4 -0
  166. package/dist/components/progress.esm.js +35 -0
  167. package/dist/components/progress.esm.js.map +1 -0
  168. package/dist/components/progress.js +2 -0
  169. package/dist/components/progress.js.map +1 -0
  170. package/dist/components/radio-group.d.ts +5 -0
  171. package/dist/components/radio-group.esm.js +48 -0
  172. package/dist/components/radio-group.esm.js.map +1 -0
  173. package/dist/components/radio-group.js +2 -0
  174. package/dist/components/radio-group.js.map +1 -0
  175. package/dist/components/scroll-area.d.ts +5 -0
  176. package/dist/components/scroll-area.esm.js +47 -0
  177. package/dist/components/scroll-area.esm.js.map +1 -0
  178. package/dist/components/scroll-area.js +2 -0
  179. package/dist/components/scroll-area.js.map +1 -0
  180. package/dist/components/select.d.ts +20 -0
  181. package/dist/components/select.esm.js +131 -0
  182. package/dist/components/select.esm.js.map +1 -0
  183. package/dist/components/select.js +2 -0
  184. package/dist/components/select.js.map +1 -0
  185. package/dist/components/selection-bar.d.ts +11 -0
  186. package/dist/components/selection-bar.esm.js +54 -0
  187. package/dist/components/selection-bar.esm.js.map +1 -0
  188. package/dist/components/selection-bar.js +2 -0
  189. package/dist/components/selection-bar.js.map +1 -0
  190. package/dist/components/separator.d.ts +4 -0
  191. package/dist/components/separator.esm.js +25 -0
  192. package/dist/components/separator.esm.js.map +1 -0
  193. package/dist/components/separator.js +2 -0
  194. package/dist/components/separator.js.map +1 -0
  195. package/dist/components/sheet.d.ts +13 -0
  196. package/dist/components/sheet.esm.js +129 -0
  197. package/dist/components/sheet.esm.js.map +1 -0
  198. package/dist/components/sheet.js +2 -0
  199. package/dist/components/sheet.js.map +1 -0
  200. package/dist/components/skeleton.d.ts +2 -0
  201. package/dist/components/skeleton.esm.js +18 -0
  202. package/dist/components/skeleton.esm.js.map +1 -0
  203. package/dist/components/skeleton.js +2 -0
  204. package/dist/components/skeleton.js.map +1 -0
  205. package/dist/components/slider.d.ts +4 -0
  206. package/dist/components/slider.esm.js +33 -0
  207. package/dist/components/slider.esm.js.map +1 -0
  208. package/dist/components/slider.js +2 -0
  209. package/dist/components/slider.js.map +1 -0
  210. package/dist/components/stepper.d.ts +2 -0
  211. package/dist/components/stepper.esm.js +214 -0
  212. package/dist/components/stepper.esm.js.map +1 -0
  213. package/dist/components/stepper.js +2 -0
  214. package/dist/components/stepper.js.map +1 -0
  215. package/dist/components/switch.d.ts +4 -0
  216. package/dist/components/switch.esm.js +36 -0
  217. package/dist/components/switch.esm.js.map +1 -0
  218. package/dist/components/switch.js +2 -0
  219. package/dist/components/switch.js.map +1 -0
  220. package/dist/components/table-empty.d.ts +9 -0
  221. package/dist/components/table-empty.esm.js +23 -0
  222. package/dist/components/table-empty.esm.js.map +1 -0
  223. package/dist/components/table-empty.js +2 -0
  224. package/dist/components/table-empty.js.map +1 -0
  225. package/dist/components/table-mobile.d.ts +4 -0
  226. package/dist/components/table-mobile.esm.js +92 -0
  227. package/dist/components/table-mobile.esm.js.map +1 -0
  228. package/dist/components/table-mobile.js +2 -0
  229. package/dist/components/table-mobile.js.map +1 -0
  230. package/dist/components/table.d.ts +31 -0
  231. package/dist/components/table.esm.js +143 -0
  232. package/dist/components/table.esm.js.map +1 -0
  233. package/dist/components/table.js +2 -0
  234. package/dist/components/table.js.map +1 -0
  235. package/dist/components/tabs.d.ts +7 -0
  236. package/dist/components/tabs.esm.js +47 -0
  237. package/dist/components/tabs.esm.js.map +1 -0
  238. package/dist/components/tabs.js +2 -0
  239. package/dist/components/tabs.js.map +1 -0
  240. package/dist/components/terminal.d.ts +43 -0
  241. package/dist/components/terminal.esm.js +50 -0
  242. package/dist/components/terminal.esm.js.map +1 -0
  243. package/dist/components/terminal.js +2 -0
  244. package/dist/components/terminal.js.map +1 -0
  245. package/dist/components/textarea.d.ts +5 -0
  246. package/dist/components/textarea.esm.js +21 -0
  247. package/dist/components/textarea.esm.js.map +1 -0
  248. package/dist/components/textarea.js +2 -0
  249. package/dist/components/textarea.js.map +1 -0
  250. package/dist/components/tooltip.d.ts +8 -0
  251. package/dist/components/tooltip.esm.js +100 -0
  252. package/dist/components/tooltip.esm.js.map +1 -0
  253. package/dist/components/tooltip.js +2 -0
  254. package/dist/components/tooltip.js.map +1 -0
  255. package/dist/components/use-toast.d.ts +21 -0
  256. package/dist/components/use-toast.esm.js +65 -0
  257. package/dist/components/use-toast.esm.js.map +1 -0
  258. package/dist/components/use-toast.js +2 -0
  259. package/dist/components/use-toast.js.map +1 -0
  260. package/dist/confirmation-modal.d.ts +16 -0
  261. package/dist/context-menu.d.ts +41 -0
  262. package/dist/dialog.d.ts +33 -0
  263. package/dist/dropdown-menu.d.ts +16 -0
  264. package/dist/dropzone.d.ts +16 -0
  265. package/dist/image-cropper-modal.d.ts +14 -0
  266. package/dist/image-cropper.d.ts +15 -0
  267. package/dist/index-DACAHwoB.js +35 -0
  268. package/dist/index-DACAHwoB.js.map +1 -0
  269. package/dist/index-Deooizx8.cjs +2 -0
  270. package/dist/index-Deooizx8.cjs.map +1 -0
  271. package/dist/index.d.ts +8 -2
  272. package/dist/index.esm.js +111 -75430
  273. package/dist/index.esm.js.map +1 -1
  274. package/dist/index.js +2 -0
  275. package/dist/index.js.map +1 -0
  276. package/dist/input.d.ts +8 -0
  277. package/dist/jsx-runtime-BYECrxsp.cjs +31 -0
  278. package/dist/jsx-runtime-BYECrxsp.cjs.map +1 -0
  279. package/dist/jsx-runtime-DGlMoOmv.js +631 -0
  280. package/dist/jsx-runtime-DGlMoOmv.js.map +1 -0
  281. package/dist/label.d.ts +6 -0
  282. package/dist/lib/utils.d.ts +2 -0
  283. package/dist/lib/utils.esm.js +5 -0
  284. package/dist/lib/utils.esm.js.map +1 -0
  285. package/dist/lib/utils.js +2 -0
  286. package/dist/lib/utils.js.map +1 -0
  287. package/dist/loader.d.ts +14 -0
  288. package/dist/loading-placeholder.d.ts +12 -0
  289. package/dist/markdown.d.ts +122 -0
  290. package/dist/mention.d.ts +29 -0
  291. package/dist/modal.d.ts +24 -0
  292. package/dist/monaco-editor.d.ts +76 -0
  293. package/dist/notification.d.ts +9 -0
  294. package/dist/popover.d.ts +10 -0
  295. package/dist/progress.d.ts +6 -0
  296. package/dist/radio-group.d.ts +8 -0
  297. package/dist/scroll-area.d.ts +8 -0
  298. package/dist/select.d.ts +31 -0
  299. package/dist/selection-bar.d.ts +15 -0
  300. package/dist/separator.d.ts +6 -0
  301. package/dist/sheet.d.ts +17 -0
  302. package/dist/skeleton.d.ts +5 -0
  303. package/dist/slider.d.ts +6 -0
  304. package/dist/stepper.d.ts +71 -0
  305. package/dist/styles.css +1 -1
  306. package/dist/switch.d.ts +6 -0
  307. package/dist/table-empty.d.ts +13 -0
  308. package/dist/table-mobile.d.ts +37 -0
  309. package/dist/table.d.ts +37 -0
  310. package/dist/tabs.d.ts +12 -0
  311. package/dist/terminal.d.ts +47 -0
  312. package/dist/textarea.d.ts +8 -0
  313. package/dist/tooltip.d.ts +12 -0
  314. package/dist/use-toast.d.ts +28 -0
  315. package/dist/utils-DSKoFOjv.cjs +2 -0
  316. package/dist/utils-DSKoFOjv.cjs.map +1 -0
  317. package/dist/utils-qaFjX9_3.js +2279 -0
  318. package/dist/utils-qaFjX9_3.js.map +1 -0
  319. package/dist/utils.d.ts +5 -0
  320. package/package.json +259 -1
  321. package/dist/index.cjs.js +0 -315
  322. package/dist/index.cjs.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-menu.esm.js","sources":["../../src/components/command-menu.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { \n Command, \n CommandDialog, \n CommandEmpty, \n CommandGroup, \n CommandInput, \n CommandItem, \n CommandList, \n CommandSeparator \n} from \"./command\"\nimport { useCallback, useEffect, useState } from \"react\"\nimport { FileText, FolderOpen, Home, Search, Settings } from \"lucide-react\"\n\ntype CommandMenuProps = {\n open: boolean\n onOpenChange: (open: boolean) => void\n}\n\nexport function CommandMenu({ open, onOpenChange }: CommandMenuProps) {\n // Handle keyboard shortcut to open command menu\n useEffect(() => {\n const down = (e: KeyboardEvent) => {\n if (e.key === \"k\" && (e.metaKey || e.ctrlKey)) {\n e.preventDefault()\n onOpenChange(!open)\n }\n }\n\n document.addEventListener(\"keydown\", down)\n return () => document.removeEventListener(\"keydown\", down)\n }, [open, onOpenChange])\n\n const runCommand = useCallback((command: () => void) => {\n onOpenChange(false)\n command()\n }, [onOpenChange])\n\n return (\n <CommandDialog open={open} onOpenChange={onOpenChange}>\n <Command className=\"rounded-lg border shadow-md\">\n <CommandInput placeholder=\"Type a command or search...\" />\n <CommandList>\n <CommandEmpty>No results found.</CommandEmpty>\n <CommandGroup heading=\"Suggestions\">\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Home\"))}\n >\n <Home className=\"mr-2 h-4 w-4\" />\n <span>Home</span>\n </CommandItem>\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Documents\"))}\n >\n <FileText className=\"mr-2 h-4 w-4\" />\n <span>Documents</span>\n </CommandItem>\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Projects\"))}\n >\n <FolderOpen className=\"mr-2 h-4 w-4\" />\n <span>Projects</span>\n </CommandItem>\n </CommandGroup>\n <CommandSeparator />\n <CommandGroup heading=\"Settings\">\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Settings\"))}\n >\n <Settings className=\"mr-2 h-4 w-4\" />\n <span>Settings</span>\n </CommandItem>\n </CommandGroup>\n </CommandList>\n </Command>\n </CommandDialog>\n )\n}\n\n// Example usage:\nexport function CommandMenuDemo() {\n const [open, setOpen] = useState(false)\n\n return (\n <div className=\"flex flex-col items-center gap-2\">\n <button\n onClick={() => setOpen(true)}\n className=\"inline-flex items-center justify-center gap-1 rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground hover:bg-accent hover:text-accent-foreground\"\n >\n <Search className=\"h-4 w-4\" />\n <span>Search...</span>\n <kbd className=\"pointer-events-none ml-1 inline-flex h-5 select-none items-center gap-1 rounded border border-input bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground\">\n <span className=\"text-xs\">⌘</span>K\n </kbd>\n </button>\n <CommandMenu open={open} onOpenChange={setOpen} />\n </div>\n )\n} "],"names":["CommandMenu","open","onOpenChange","useEffect","down","e","runCommand","useCallback","command","CommandDialog","jsxs","Command","jsx","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Home","FileText","FolderOpen","CommandSeparator","Settings","CommandMenuDemo","setOpen","useState","Search"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../jsx-runtime-BYECrxsp.cjs"),s=require("./command.js"),i=require("react"),o=require("lucide-react");function c({open:n,onOpenChange:t}){i.useEffect(()=>{const m=x=>{x.key==="k"&&(x.metaKey||x.ctrlKey)&&(x.preventDefault(),t(!n))};return document.addEventListener("keydown",m),()=>document.removeEventListener("keydown",m)},[n,t]);const r=i.useCallback(m=>{t(!1),m()},[t]);return e.jsxRuntimeExports.jsx(s.CommandDialog,{open:n,onOpenChange:t,children:e.jsxRuntimeExports.jsxs(s.Command,{className:"rounded-lg border shadow-md",children:[e.jsxRuntimeExports.jsx(s.CommandInput,{placeholder:"Type a command or search..."}),e.jsxRuntimeExports.jsxs(s.CommandList,{children:[e.jsxRuntimeExports.jsx(s.CommandEmpty,{children:"No results found."}),e.jsxRuntimeExports.jsxs(s.CommandGroup,{heading:"Suggestions",children:[e.jsxRuntimeExports.jsxs(s.CommandItem,{onSelect:()=>r(()=>console.log("Home")),children:[e.jsxRuntimeExports.jsx(o.Home,{className:"mr-2 h-4 w-4"}),e.jsxRuntimeExports.jsx("span",{children:"Home"})]}),e.jsxRuntimeExports.jsxs(s.CommandItem,{onSelect:()=>r(()=>console.log("Documents")),children:[e.jsxRuntimeExports.jsx(o.FileText,{className:"mr-2 h-4 w-4"}),e.jsxRuntimeExports.jsx("span",{children:"Documents"})]}),e.jsxRuntimeExports.jsxs(s.CommandItem,{onSelect:()=>r(()=>console.log("Projects")),children:[e.jsxRuntimeExports.jsx(o.FolderOpen,{className:"mr-2 h-4 w-4"}),e.jsxRuntimeExports.jsx("span",{children:"Projects"})]})]}),e.jsxRuntimeExports.jsx(s.CommandSeparator,{}),e.jsxRuntimeExports.jsx(s.CommandGroup,{heading:"Settings",children:e.jsxRuntimeExports.jsxs(s.CommandItem,{onSelect:()=>r(()=>console.log("Settings")),children:[e.jsxRuntimeExports.jsx(o.Settings,{className:"mr-2 h-4 w-4"}),e.jsxRuntimeExports.jsx("span",{children:"Settings"})]})})]})]})})}function d(){const[n,t]=i.useState(!1);return e.jsxRuntimeExports.jsxs("div",{className:"flex flex-col items-center gap-2",children:[e.jsxRuntimeExports.jsxs("button",{onClick:()=>t(!0),className:"inline-flex items-center justify-center gap-1 rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground hover:bg-accent hover:text-accent-foreground",children:[e.jsxRuntimeExports.jsx(o.Search,{className:"h-4 w-4"}),e.jsxRuntimeExports.jsx("span",{children:"Search..."}),e.jsxRuntimeExports.jsxs("kbd",{className:"pointer-events-none ml-1 inline-flex h-5 select-none items-center gap-1 rounded border border-input bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground",children:[e.jsxRuntimeExports.jsx("span",{className:"text-xs",children:"⌘"}),"K"]})]}),e.jsxRuntimeExports.jsx(c,{open:n,onOpenChange:t})]})}exports.CommandMenu=c;exports.CommandMenuDemo=d;
2
+ //# sourceMappingURL=command-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-menu.js","sources":["../../src/components/command-menu.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { \n Command, \n CommandDialog, \n CommandEmpty, \n CommandGroup, \n CommandInput, \n CommandItem, \n CommandList, \n CommandSeparator \n} from \"./command\"\nimport { useCallback, useEffect, useState } from \"react\"\nimport { FileText, FolderOpen, Home, Search, Settings } from \"lucide-react\"\n\ntype CommandMenuProps = {\n open: boolean\n onOpenChange: (open: boolean) => void\n}\n\nexport function CommandMenu({ open, onOpenChange }: CommandMenuProps) {\n // Handle keyboard shortcut to open command menu\n useEffect(() => {\n const down = (e: KeyboardEvent) => {\n if (e.key === \"k\" && (e.metaKey || e.ctrlKey)) {\n e.preventDefault()\n onOpenChange(!open)\n }\n }\n\n document.addEventListener(\"keydown\", down)\n return () => document.removeEventListener(\"keydown\", down)\n }, [open, onOpenChange])\n\n const runCommand = useCallback((command: () => void) => {\n onOpenChange(false)\n command()\n }, [onOpenChange])\n\n return (\n <CommandDialog open={open} onOpenChange={onOpenChange}>\n <Command className=\"rounded-lg border shadow-md\">\n <CommandInput placeholder=\"Type a command or search...\" />\n <CommandList>\n <CommandEmpty>No results found.</CommandEmpty>\n <CommandGroup heading=\"Suggestions\">\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Home\"))}\n >\n <Home className=\"mr-2 h-4 w-4\" />\n <span>Home</span>\n </CommandItem>\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Documents\"))}\n >\n <FileText className=\"mr-2 h-4 w-4\" />\n <span>Documents</span>\n </CommandItem>\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Projects\"))}\n >\n <FolderOpen className=\"mr-2 h-4 w-4\" />\n <span>Projects</span>\n </CommandItem>\n </CommandGroup>\n <CommandSeparator />\n <CommandGroup heading=\"Settings\">\n <CommandItem\n onSelect={() => runCommand(() => console.log(\"Settings\"))}\n >\n <Settings className=\"mr-2 h-4 w-4\" />\n <span>Settings</span>\n </CommandItem>\n </CommandGroup>\n </CommandList>\n </Command>\n </CommandDialog>\n )\n}\n\n// Example usage:\nexport function CommandMenuDemo() {\n const [open, setOpen] = useState(false)\n\n return (\n <div className=\"flex flex-col items-center gap-2\">\n <button\n onClick={() => setOpen(true)}\n className=\"inline-flex items-center justify-center gap-1 rounded-md border border-input bg-background px-4 py-2 text-sm font-medium text-foreground hover:bg-accent hover:text-accent-foreground\"\n >\n <Search className=\"h-4 w-4\" />\n <span>Search...</span>\n <kbd className=\"pointer-events-none ml-1 inline-flex h-5 select-none items-center gap-1 rounded border border-input bg-muted px-1.5 font-mono text-[10px] font-medium text-muted-foreground\">\n <span className=\"text-xs\">⌘</span>K\n </kbd>\n </button>\n <CommandMenu open={open} onOpenChange={setOpen} />\n </div>\n )\n} "],"names":["CommandMenu","open","onOpenChange","useEffect","down","e","runCommand","useCallback","command","CommandDialog","jsxs","Command","jsx","CommandInput","CommandList","CommandEmpty","CommandGroup","CommandItem","Home","FileText","FolderOpen","CommandSeparator","Settings","CommandMenuDemo","setOpen","useState","Search"],"mappings":"sMAmBO,SAASA,EAAY,CAAE,KAAAC,EAAM,aAAAC,GAAkC,CAEpEC,EAAAA,UAAU,IAAM,CACd,MAAMC,EAAQC,GAAqB,CAC7BA,EAAE,MAAQ,MAAQA,EAAE,SAAWA,EAAE,WACnCA,EAAE,eAAA,EACFH,EAAa,CAACD,CAAI,EAEtB,EAEA,gBAAS,iBAAiB,UAAWG,CAAI,EAClC,IAAM,SAAS,oBAAoB,UAAWA,CAAI,CAC3D,EAAG,CAACH,EAAMC,CAAY,CAAC,EAEvB,MAAMI,EAAaC,cAAaC,GAAwB,CACtDN,EAAa,EAAK,EAClBM,EAAA,CACF,EAAG,CAACN,CAAY,CAAC,EAEjB,+BACGO,EAAAA,cAAA,CAAc,KAAAR,EAAY,aAAAC,EACzB,SAAAQ,EAAAA,kBAAAA,KAACC,UAAA,CAAQ,UAAU,8BACjB,SAAA,CAAAC,EAAAA,kBAAAA,IAACC,EAAAA,aAAA,CAAa,YAAY,6BAAA,CAA8B,2BACvDC,EAAAA,YAAA,CACC,SAAA,CAAAF,EAAAA,kBAAAA,IAACG,EAAAA,cAAa,SAAA,mBAAA,CAAiB,EAC/BL,EAAAA,kBAAAA,KAACM,EAAAA,aAAA,CAAa,QAAQ,cACpB,SAAA,CAAAN,EAAAA,kBAAAA,KAACO,EAAAA,YAAA,CACC,SAAU,IAAMX,EAAW,IAAM,QAAQ,IAAI,MAAM,CAAC,EAEpD,SAAA,CAAAM,EAAAA,kBAAAA,IAACM,EAAAA,KAAA,CAAK,UAAU,cAAA,CAAe,EAC/BN,EAAAA,kBAAAA,IAAC,QAAK,SAAA,MAAA,CAAI,CAAA,CAAA,CAAA,EAEZF,EAAAA,kBAAAA,KAACO,EAAAA,YAAA,CACC,SAAU,IAAMX,EAAW,IAAM,QAAQ,IAAI,WAAW,CAAC,EAEzD,SAAA,CAAAM,EAAAA,kBAAAA,IAACO,EAAAA,SAAA,CAAS,UAAU,cAAA,CAAe,EACnCP,EAAAA,kBAAAA,IAAC,QAAK,SAAA,WAAA,CAAS,CAAA,CAAA,CAAA,EAEjBF,EAAAA,kBAAAA,KAACO,EAAAA,YAAA,CACC,SAAU,IAAMX,EAAW,IAAM,QAAQ,IAAI,UAAU,CAAC,EAExD,SAAA,CAAAM,EAAAA,kBAAAA,IAACQ,EAAAA,WAAA,CAAW,UAAU,cAAA,CAAe,EACrCR,EAAAA,kBAAAA,IAAC,QAAK,SAAA,UAAA,CAAQ,CAAA,CAAA,CAAA,CAChB,EACF,0BACCS,EAAAA,iBAAA,EAAiB,EAClBT,EAAAA,kBAAAA,IAACI,EAAAA,aAAA,CAAa,QAAQ,WACpB,SAAAN,EAAAA,kBAAAA,KAACO,EAAAA,YAAA,CACC,SAAU,IAAMX,EAAW,IAAM,QAAQ,IAAI,UAAU,CAAC,EAExD,SAAA,CAAAM,EAAAA,kBAAAA,IAACU,EAAAA,SAAA,CAAS,UAAU,cAAA,CAAe,EACnCV,EAAAA,kBAAAA,IAAC,QAAK,SAAA,UAAA,CAAQ,CAAA,CAAA,CAAA,CAChB,CACF,CAAA,CAAA,CACF,CAAA,CAAA,CACF,CAAA,CACF,CAEJ,CAGO,SAASW,GAAkB,CAChC,KAAM,CAACtB,EAAMuB,CAAO,EAAIC,EAAAA,SAAS,EAAK,EAEtC,OACEf,EAAAA,kBAAAA,KAAC,MAAA,CAAI,UAAU,mCACb,SAAA,CAAAA,EAAAA,kBAAAA,KAAC,SAAA,CACC,QAAS,IAAMc,EAAQ,EAAI,EAC3B,UAAU,wLAEV,SAAA,CAAAZ,EAAAA,kBAAAA,IAACc,EAAAA,OAAA,CAAO,UAAU,SAAA,CAAU,EAC5Bd,EAAAA,kBAAAA,IAAC,QAAK,SAAA,WAAA,CAAS,EACfF,EAAAA,kBAAAA,KAAC,MAAA,CAAI,UAAU,8KACb,SAAA,CAAAE,EAAAA,kBAAAA,IAAC,OAAA,CAAK,UAAU,UAAU,SAAA,IAAC,EAAO,GAAA,CAAA,CACpC,CAAA,CAAA,CAAA,EAEFA,EAAAA,kBAAAA,IAACZ,EAAA,CAAY,KAAAC,EAAY,aAAcuB,CAAA,CAAS,CAAA,EAClD,CAEJ"}
@@ -0,0 +1,79 @@
1
+ import * as React from "react";
2
+ declare const Command: React.ForwardRefExoticComponent<Omit<{
3
+ children?: React.ReactNode;
4
+ } & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | "key"> & {
5
+ ref?: React.Ref<HTMLDivElement>;
6
+ } & {
7
+ asChild?: boolean;
8
+ }, keyof React.HTMLAttributes<HTMLDivElement> | "asChild" | "key"> & {
9
+ label?: string;
10
+ shouldFilter?: boolean;
11
+ filter?: (value: string, search: string, keywords?: string[]) => number;
12
+ defaultValue?: string;
13
+ value?: string;
14
+ onValueChange?: (value: string) => void;
15
+ loop?: boolean;
16
+ disablePointerSelection?: boolean;
17
+ vimBindings?: boolean;
18
+ } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
19
+ declare const CommandDialog: ({ children, open, onOpenChange, }: {
20
+ children: React.ReactNode;
21
+ open: boolean;
22
+ onOpenChange: (open: boolean) => void;
23
+ }) => import("react/jsx-runtime").JSX.Element;
24
+ declare const CommandInput: React.ForwardRefExoticComponent<Omit<Omit<Pick<Pick<React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "key" | keyof React.InputHTMLAttributes<HTMLInputElement>> & {
25
+ ref?: React.Ref<HTMLInputElement>;
26
+ } & {
27
+ asChild?: boolean;
28
+ }, "asChild" | "key" | keyof React.InputHTMLAttributes<HTMLInputElement>>, "onChange" | "type" | "value"> & {
29
+ value?: string;
30
+ onValueChange?: (search: string) => void;
31
+ } & React.RefAttributes<HTMLInputElement>, "ref"> & React.RefAttributes<HTMLInputElement>>;
32
+ declare const CommandList: React.ForwardRefExoticComponent<Omit<{
33
+ children?: React.ReactNode;
34
+ } & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | "key"> & {
35
+ ref?: React.Ref<HTMLDivElement>;
36
+ } & {
37
+ asChild?: boolean;
38
+ }, keyof React.HTMLAttributes<HTMLDivElement> | "asChild" | "key"> & {
39
+ label?: string;
40
+ } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
41
+ declare const CommandEmpty: React.ForwardRefExoticComponent<Omit<{
42
+ children?: React.ReactNode;
43
+ } & Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | "key"> & {
44
+ ref?: React.Ref<HTMLDivElement>;
45
+ } & {
46
+ asChild?: boolean;
47
+ }, keyof React.HTMLAttributes<HTMLDivElement> | "asChild" | "key"> & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
48
+ declare const CommandGroup: React.ForwardRefExoticComponent<Omit<{
49
+ children?: React.ReactNode;
50
+ } & Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | "key"> & {
51
+ ref?: React.Ref<HTMLDivElement>;
52
+ } & {
53
+ asChild?: boolean;
54
+ }, keyof React.HTMLAttributes<HTMLDivElement> | "asChild" | "key">, "heading" | "value"> & {
55
+ heading?: React.ReactNode;
56
+ value?: string;
57
+ forceMount?: boolean;
58
+ } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
59
+ declare const CommandSeparator: React.ForwardRefExoticComponent<Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | "key"> & {
60
+ ref?: React.Ref<HTMLDivElement>;
61
+ } & {
62
+ asChild?: boolean;
63
+ }, keyof React.HTMLAttributes<HTMLDivElement> | "asChild" | "key"> & {
64
+ alwaysRender?: boolean;
65
+ } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
66
+ declare const CommandItem: React.ForwardRefExoticComponent<Omit<{
67
+ children?: React.ReactNode;
68
+ } & Omit<Pick<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof React.HTMLAttributes<HTMLDivElement> | "key"> & {
69
+ ref?: React.Ref<HTMLDivElement>;
70
+ } & {
71
+ asChild?: boolean;
72
+ }, keyof React.HTMLAttributes<HTMLDivElement> | "asChild" | "key">, "onSelect" | "disabled" | "value"> & {
73
+ disabled?: boolean;
74
+ onSelect?: (value: string) => void;
75
+ value?: string;
76
+ keywords?: string[];
77
+ forceMount?: boolean;
78
+ } & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
79
+ export { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandSeparator, };
@@ -0,0 +1,425 @@
1
+ import { j as R } from "../jsx-runtime-DGlMoOmv.js";
2
+ import * as a from "react";
3
+ import * as T from "@radix-ui/react-dialog";
4
+ import { Primitive as A } from "@radix-ui/react-primitive";
5
+ import { useId as P } from "@radix-ui/react-id";
6
+ import { composeRefs as V } from "@radix-ui/react-compose-refs";
7
+ import { Search as Ie } from "lucide-react";
8
+ import { c as D } from "../utils-qaFjX9_3.js";
9
+ var pe = 1, Re = 0.9, Se = 0.8, Ne = 0.17, te = 0.1, re = 0.999, Ae = 0.9999, je = 0.99, Me = /[\\\/_+.#"@\[\(\{&]/, $e = /[\\\/_+.#"@\[\(\{&]/g, De = /[\s-]/, he = /[\s-]/g;
10
+ function ae(e, n, t, c, o, d, s) {
11
+ if (d === n.length) return o === e.length ? pe : je;
12
+ var m = `${o},${d}`;
13
+ if (s[m] !== void 0) return s[m];
14
+ for (var b = c.charAt(d), i = t.indexOf(b, o), v = 0, g, I, w, S; i >= 0; ) g = ae(e, n, t, c, i + 1, d + 1, s), g > v && (i === o ? g *= pe : Me.test(e.charAt(i - 1)) ? (g *= Se, w = e.slice(o, i - 1).match($e), w && o > 0 && (g *= Math.pow(re, w.length))) : De.test(e.charAt(i - 1)) ? (g *= Re, S = e.slice(o, i - 1).match(he), S && o > 0 && (g *= Math.pow(re, S.length))) : (g *= Ne, o > 0 && (g *= Math.pow(re, i - o))), e.charAt(i) !== n.charAt(d) && (g *= Ae)), (g < te && t.charAt(i - 1) === c.charAt(d + 1) || c.charAt(d + 1) === c.charAt(d) && t.charAt(i - 1) !== c.charAt(d)) && (I = ae(e, n, t, c, i + 1, d + 2, s), I * te > g && (g = I * te)), g > v && (v = g), i = t.indexOf(b, i + 1);
15
+ return s[m] = v, v;
16
+ }
17
+ function ve(e) {
18
+ return e.toLowerCase().replace(he, " ");
19
+ }
20
+ function Fe(e, n, t) {
21
+ return e = t && t.length > 0 ? `${e + " " + t.join(" ")}` : e, ae(e, n, ve(e), ve(n), 0, 0, {});
22
+ }
23
+ var z = '[cmdk-group=""]', ne = '[cmdk-group-items=""]', Ke = '[cmdk-group-heading=""]', be = '[cmdk-item=""]', ge = `${be}:not([aria-disabled="true"])`, le = "cmdk-item-select", K = "data-value", Le = (e, n, t) => Fe(e, n, t), xe = a.createContext(void 0), O = () => a.useContext(xe), ye = a.createContext(void 0), oe = () => a.useContext(ye), we = a.createContext(void 0), ke = a.forwardRef((e, n) => {
24
+ let t = L(() => {
25
+ var r, u;
26
+ return { search: "", value: (u = (r = e.value) != null ? r : e.defaultValue) != null ? u : "", selectedItemId: void 0, filtered: { count: 0, items: /* @__PURE__ */ new Map(), groups: /* @__PURE__ */ new Set() } };
27
+ }), c = L(() => /* @__PURE__ */ new Set()), o = L(() => /* @__PURE__ */ new Map()), d = L(() => /* @__PURE__ */ new Map()), s = L(() => /* @__PURE__ */ new Set()), m = Ee(e), { label: b, children: i, value: v, onValueChange: g, filter: I, shouldFilter: w, loop: S, disablePointerSelection: H = !1, vimBindings: j = !0, ...B } = e, W = P(), ie = P(), J = P(), M = a.useRef(null), x = We();
28
+ $(() => {
29
+ if (v !== void 0) {
30
+ let r = v.trim();
31
+ t.current.value = r, k.emit();
32
+ }
33
+ }, [v]), $(() => {
34
+ x(6, de);
35
+ }, []);
36
+ let k = a.useMemo(() => ({ subscribe: (r) => (s.current.add(r), () => s.current.delete(r)), snapshot: () => t.current, setState: (r, u, f) => {
37
+ var l, p, h, C;
38
+ if (!Object.is(t.current[r], u)) {
39
+ if (t.current[r] = u, r === "search") Z(), Y(), x(1, Q);
40
+ else if (r === "value") {
41
+ if (document.activeElement.hasAttribute("cmdk-input") || document.activeElement.hasAttribute("cmdk-root")) {
42
+ let y = document.getElementById(J);
43
+ y ? y.focus() : (l = document.getElementById(W)) == null || l.focus();
44
+ }
45
+ if (x(7, () => {
46
+ var y;
47
+ t.current.selectedItemId = (y = F()) == null ? void 0 : y.id, k.emit();
48
+ }), f || x(5, de), ((p = m.current) == null ? void 0 : p.value) !== void 0) {
49
+ let y = u ?? "";
50
+ (C = (h = m.current).onValueChange) == null || C.call(h, y);
51
+ return;
52
+ }
53
+ }
54
+ k.emit();
55
+ }
56
+ }, emit: () => {
57
+ s.current.forEach((r) => r());
58
+ } }), []), X = a.useMemo(() => ({ value: (r, u, f) => {
59
+ var l;
60
+ u !== ((l = d.current.get(r)) == null ? void 0 : l.value) && (d.current.set(r, { value: u, keywords: f }), t.current.filtered.items.set(r, ue(u, f)), x(2, () => {
61
+ Y(), k.emit();
62
+ }));
63
+ }, item: (r, u) => (c.current.add(r), u && (o.current.has(u) ? o.current.get(u).add(r) : o.current.set(u, /* @__PURE__ */ new Set([r]))), x(3, () => {
64
+ Z(), Y(), t.current.value || Q(), k.emit();
65
+ }), () => {
66
+ d.current.delete(r), c.current.delete(r), t.current.filtered.items.delete(r);
67
+ let f = F();
68
+ x(4, () => {
69
+ Z(), (f == null ? void 0 : f.getAttribute("id")) === r && Q(), k.emit();
70
+ });
71
+ }), group: (r) => (o.current.has(r) || o.current.set(r, /* @__PURE__ */ new Set()), () => {
72
+ d.current.delete(r), o.current.delete(r);
73
+ }), filter: () => m.current.shouldFilter, label: b || e["aria-label"], getDisablePointerSelection: () => m.current.disablePointerSelection, listId: W, inputId: J, labelId: ie, listInnerRef: M }), []);
74
+ function ue(r, u) {
75
+ var f, l;
76
+ let p = (l = (f = m.current) == null ? void 0 : f.filter) != null ? l : Le;
77
+ return r ? p(r, t.current.search, u) : 0;
78
+ }
79
+ function Y() {
80
+ if (!t.current.search || m.current.shouldFilter === !1) return;
81
+ let r = t.current.filtered.items, u = [];
82
+ t.current.filtered.groups.forEach((l) => {
83
+ let p = o.current.get(l), h = 0;
84
+ p.forEach((C) => {
85
+ let y = r.get(C);
86
+ h = Math.max(y, h);
87
+ }), u.push([l, h]);
88
+ });
89
+ let f = M.current;
90
+ q().sort((l, p) => {
91
+ var h, C;
92
+ let y = l.getAttribute("id"), G = p.getAttribute("id");
93
+ return ((h = r.get(G)) != null ? h : 0) - ((C = r.get(y)) != null ? C : 0);
94
+ }).forEach((l) => {
95
+ let p = l.closest(ne);
96
+ p ? p.appendChild(l.parentElement === p ? l : l.closest(`${ne} > *`)) : f.appendChild(l.parentElement === f ? l : l.closest(`${ne} > *`));
97
+ }), u.sort((l, p) => p[1] - l[1]).forEach((l) => {
98
+ var p;
99
+ let h = (p = M.current) == null ? void 0 : p.querySelector(`${z}[${K}="${encodeURIComponent(l[0])}"]`);
100
+ h == null || h.parentElement.appendChild(h);
101
+ });
102
+ }
103
+ function Q() {
104
+ let r = q().find((f) => f.getAttribute("aria-disabled") !== "true"), u = r == null ? void 0 : r.getAttribute(K);
105
+ k.setState("value", u || void 0);
106
+ }
107
+ function Z() {
108
+ var r, u, f, l;
109
+ if (!t.current.search || m.current.shouldFilter === !1) {
110
+ t.current.filtered.count = c.current.size;
111
+ return;
112
+ }
113
+ t.current.filtered.groups = /* @__PURE__ */ new Set();
114
+ let p = 0;
115
+ for (let h of c.current) {
116
+ let C = (u = (r = d.current.get(h)) == null ? void 0 : r.value) != null ? u : "", y = (l = (f = d.current.get(h)) == null ? void 0 : f.keywords) != null ? l : [], G = ue(C, y);
117
+ t.current.filtered.items.set(h, G), G > 0 && p++;
118
+ }
119
+ for (let [h, C] of o.current) for (let y of C) if (t.current.filtered.items.get(y) > 0) {
120
+ t.current.filtered.groups.add(h);
121
+ break;
122
+ }
123
+ t.current.filtered.count = p;
124
+ }
125
+ function de() {
126
+ var r, u, f;
127
+ let l = F();
128
+ l && (((r = l.parentElement) == null ? void 0 : r.firstChild) === l && ((f = (u = l.closest(z)) == null ? void 0 : u.querySelector(Ke)) == null || f.scrollIntoView({ block: "nearest" })), l.scrollIntoView({ block: "nearest" }));
129
+ }
130
+ function F() {
131
+ var r;
132
+ return (r = M.current) == null ? void 0 : r.querySelector(`${be}[aria-selected="true"]`);
133
+ }
134
+ function q() {
135
+ var r;
136
+ return Array.from(((r = M.current) == null ? void 0 : r.querySelectorAll(ge)) || []);
137
+ }
138
+ function _(r) {
139
+ let u = q()[r];
140
+ u && k.setState("value", u.getAttribute(K));
141
+ }
142
+ function ee(r) {
143
+ var u;
144
+ let f = F(), l = q(), p = l.findIndex((C) => C === f), h = l[p + r];
145
+ (u = m.current) != null && u.loop && (h = p + r < 0 ? l[l.length - 1] : p + r === l.length ? l[0] : l[p + r]), h && k.setState("value", h.getAttribute(K));
146
+ }
147
+ function ce(r) {
148
+ let u = F(), f = u == null ? void 0 : u.closest(z), l;
149
+ for (; f && !l; ) f = r > 0 ? Ue(f, z) : He(f, z), l = f == null ? void 0 : f.querySelector(ge);
150
+ l ? k.setState("value", l.getAttribute(K)) : ee(r);
151
+ }
152
+ let se = () => _(q().length - 1), fe = (r) => {
153
+ r.preventDefault(), r.metaKey ? se() : r.altKey ? ce(1) : ee(1);
154
+ }, me = (r) => {
155
+ r.preventDefault(), r.metaKey ? _(0) : r.altKey ? ce(-1) : ee(-1);
156
+ };
157
+ return a.createElement(A.div, { ref: n, tabIndex: -1, ...B, "cmdk-root": "", onKeyDown: (r) => {
158
+ var u;
159
+ (u = B.onKeyDown) == null || u.call(B, r);
160
+ let f = r.nativeEvent.isComposing || r.keyCode === 229;
161
+ if (!(r.defaultPrevented || f)) switch (r.key) {
162
+ case "n":
163
+ case "j": {
164
+ j && r.ctrlKey && fe(r);
165
+ break;
166
+ }
167
+ case "ArrowDown": {
168
+ fe(r);
169
+ break;
170
+ }
171
+ case "p":
172
+ case "k": {
173
+ j && r.ctrlKey && me(r);
174
+ break;
175
+ }
176
+ case "ArrowUp": {
177
+ me(r);
178
+ break;
179
+ }
180
+ case "Home": {
181
+ r.preventDefault(), _(0);
182
+ break;
183
+ }
184
+ case "End": {
185
+ r.preventDefault(), se();
186
+ break;
187
+ }
188
+ case "Enter": {
189
+ r.preventDefault();
190
+ let l = F();
191
+ if (l) {
192
+ let p = new Event(le);
193
+ l.dispatchEvent(p);
194
+ }
195
+ }
196
+ }
197
+ } }, a.createElement("label", { "cmdk-label": "", htmlFor: X.inputId, id: X.labelId, style: Xe }, b), U(e, (r) => a.createElement(ye.Provider, { value: k }, a.createElement(xe.Provider, { value: X }, r))));
198
+ }), Pe = a.forwardRef((e, n) => {
199
+ var t, c;
200
+ let o = P(), d = a.useRef(null), s = a.useContext(we), m = O(), b = Ee(e), i = (c = (t = b.current) == null ? void 0 : t.forceMount) != null ? c : s == null ? void 0 : s.forceMount;
201
+ $(() => {
202
+ if (!i) return m.item(o, s == null ? void 0 : s.id);
203
+ }, [i]);
204
+ let v = Ce(o, d, [e.value, e.children, d], e.keywords), g = oe(), I = N((x) => x.value && x.value === v.current), w = N((x) => i || m.filter() === !1 ? !0 : x.search ? x.filtered.items.get(o) > 0 : !0);
205
+ a.useEffect(() => {
206
+ let x = d.current;
207
+ if (!(!x || e.disabled)) return x.addEventListener(le, S), () => x.removeEventListener(le, S);
208
+ }, [w, e.onSelect, e.disabled]);
209
+ function S() {
210
+ var x, k;
211
+ H(), (k = (x = b.current).onSelect) == null || k.call(x, v.current);
212
+ }
213
+ function H() {
214
+ g.setState("value", v.current, !0);
215
+ }
216
+ if (!w) return null;
217
+ let { disabled: j, value: B, onSelect: W, forceMount: ie, keywords: J, ...M } = e;
218
+ return a.createElement(A.div, { ref: V(d, n), ...M, id: o, "cmdk-item": "", role: "option", "aria-disabled": !!j, "aria-selected": !!I, "data-disabled": !!j, "data-selected": !!I, onPointerMove: j || m.getDisablePointerSelection() ? void 0 : H, onClick: j ? void 0 : S }, e.children);
219
+ }), qe = a.forwardRef((e, n) => {
220
+ let { heading: t, children: c, forceMount: o, ...d } = e, s = P(), m = a.useRef(null), b = a.useRef(null), i = P(), v = O(), g = N((w) => o || v.filter() === !1 ? !0 : w.search ? w.filtered.groups.has(s) : !0);
221
+ $(() => v.group(s), []), Ce(s, m, [e.value, e.heading, b]);
222
+ let I = a.useMemo(() => ({ id: s, forceMount: o }), [o]);
223
+ return a.createElement(A.div, { ref: V(m, n), ...d, "cmdk-group": "", role: "presentation", hidden: g ? void 0 : !0 }, t && a.createElement("div", { ref: b, "cmdk-group-heading": "", "aria-hidden": !0, id: i }, t), U(e, (w) => a.createElement("div", { "cmdk-group-items": "", role: "group", "aria-labelledby": t ? i : void 0 }, a.createElement(we.Provider, { value: I }, w))));
224
+ }), ze = a.forwardRef((e, n) => {
225
+ let { alwaysRender: t, ...c } = e, o = a.useRef(null), d = N((s) => !s.search);
226
+ return !t && !d ? null : a.createElement(A.div, { ref: V(o, n), ...c, "cmdk-separator": "", role: "separator" });
227
+ }), Ve = a.forwardRef((e, n) => {
228
+ let { onValueChange: t, ...c } = e, o = e.value != null, d = oe(), s = N((i) => i.search), m = N((i) => i.selectedItemId), b = O();
229
+ return a.useEffect(() => {
230
+ e.value != null && d.setState("search", e.value);
231
+ }, [e.value]), a.createElement(A.input, { ref: n, ...c, "cmdk-input": "", autoComplete: "off", autoCorrect: "off", spellCheck: !1, "aria-autocomplete": "list", role: "combobox", "aria-expanded": !0, "aria-controls": b.listId, "aria-labelledby": b.labelId, "aria-activedescendant": m, id: b.inputId, type: "text", value: o ? e.value : s, onChange: (i) => {
232
+ o || d.setState("search", i.target.value), t == null || t(i.target.value);
233
+ } });
234
+ }), Oe = a.forwardRef((e, n) => {
235
+ let { children: t, label: c = "Suggestions", ...o } = e, d = a.useRef(null), s = a.useRef(null), m = N((i) => i.selectedItemId), b = O();
236
+ return a.useEffect(() => {
237
+ if (s.current && d.current) {
238
+ let i = s.current, v = d.current, g, I = new ResizeObserver(() => {
239
+ g = requestAnimationFrame(() => {
240
+ let w = i.offsetHeight;
241
+ v.style.setProperty("--cmdk-list-height", w.toFixed(1) + "px");
242
+ });
243
+ });
244
+ return I.observe(i), () => {
245
+ cancelAnimationFrame(g), I.unobserve(i);
246
+ };
247
+ }
248
+ }, []), a.createElement(A.div, { ref: V(d, n), ...o, "cmdk-list": "", role: "listbox", tabIndex: -1, "aria-activedescendant": m, "aria-label": c, id: b.listId }, U(e, (i) => a.createElement("div", { ref: V(s, b.listInnerRef), "cmdk-list-sizer": "" }, i)));
249
+ }), Be = a.forwardRef((e, n) => {
250
+ let { open: t, onOpenChange: c, overlayClassName: o, contentClassName: d, container: s, ...m } = e;
251
+ return a.createElement(T.Root, { open: t, onOpenChange: c }, a.createElement(T.Portal, { container: s }, a.createElement(T.Overlay, { "cmdk-overlay": "", className: o }), a.createElement(T.Content, { "aria-label": e.label, "cmdk-dialog": "", className: d }, a.createElement(ke, { ref: n, ...m }))));
252
+ }), Ge = a.forwardRef((e, n) => N((t) => t.filtered.count === 0) ? a.createElement(A.div, { ref: n, ...e, "cmdk-empty": "", role: "presentation" }) : null), Te = a.forwardRef((e, n) => {
253
+ let { progress: t, children: c, label: o = "Loading...", ...d } = e;
254
+ return a.createElement(A.div, { ref: n, ...d, "cmdk-loading": "", role: "progressbar", "aria-valuenow": t, "aria-valuemin": 0, "aria-valuemax": 100, "aria-label": o }, U(e, (s) => a.createElement("div", { "aria-hidden": !0 }, s)));
255
+ }), E = Object.assign(ke, { List: Oe, Item: Pe, Input: Ve, Group: qe, Separator: ze, Dialog: Be, Empty: Ge, Loading: Te });
256
+ function Ue(e, n) {
257
+ let t = e.nextElementSibling;
258
+ for (; t; ) {
259
+ if (t.matches(n)) return t;
260
+ t = t.nextElementSibling;
261
+ }
262
+ }
263
+ function He(e, n) {
264
+ let t = e.previousElementSibling;
265
+ for (; t; ) {
266
+ if (t.matches(n)) return t;
267
+ t = t.previousElementSibling;
268
+ }
269
+ }
270
+ function Ee(e) {
271
+ let n = a.useRef(e);
272
+ return $(() => {
273
+ n.current = e;
274
+ }), n;
275
+ }
276
+ var $ = typeof window > "u" ? a.useEffect : a.useLayoutEffect;
277
+ function L(e) {
278
+ let n = a.useRef();
279
+ return n.current === void 0 && (n.current = e()), n;
280
+ }
281
+ function N(e) {
282
+ let n = oe(), t = () => e(n.snapshot());
283
+ return a.useSyncExternalStore(n.subscribe, t, t);
284
+ }
285
+ function Ce(e, n, t, c = []) {
286
+ let o = a.useRef(), d = O();
287
+ return $(() => {
288
+ var s;
289
+ let m = (() => {
290
+ var i;
291
+ for (let v of t) {
292
+ if (typeof v == "string") return v.trim();
293
+ if (typeof v == "object" && "current" in v) return v.current ? (i = v.current.textContent) == null ? void 0 : i.trim() : o.current;
294
+ }
295
+ })(), b = c.map((i) => i.trim());
296
+ d.value(e, m, b), (s = n.current) == null || s.setAttribute(K, m), o.current = m;
297
+ }), o;
298
+ }
299
+ var We = () => {
300
+ let [e, n] = a.useState(), t = L(() => /* @__PURE__ */ new Map());
301
+ return $(() => {
302
+ t.current.forEach((c) => c()), t.current = /* @__PURE__ */ new Map();
303
+ }, [e]), (c, o) => {
304
+ t.current.set(c, o), n({});
305
+ };
306
+ };
307
+ function Je(e) {
308
+ let n = e.type;
309
+ return typeof n == "function" ? n(e.props) : "render" in n ? n.render(e.props) : e;
310
+ }
311
+ function U({ asChild: e, children: n }, t) {
312
+ return e && a.isValidElement(n) ? a.cloneElement(Je(n), { ref: n.ref }, t(n.props.children)) : t(n);
313
+ }
314
+ var Xe = { position: "absolute", width: "1px", height: "1px", padding: "0", margin: "-1px", overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0" };
315
+ const Ye = a.forwardRef(({ className: e, ...n }, t) => /* @__PURE__ */ R.jsx(
316
+ E,
317
+ {
318
+ ref: t,
319
+ className: D(
320
+ "flex h-full w-full flex-col overflow-hidden rounded-lg bg-popover text-popover-foreground",
321
+ e
322
+ ),
323
+ ...n
324
+ }
325
+ ));
326
+ Ye.displayName = E.displayName;
327
+ const dt = ({
328
+ children: e,
329
+ open: n,
330
+ onOpenChange: t
331
+ }) => /* @__PURE__ */ R.jsx(
332
+ "div",
333
+ {
334
+ className: D(
335
+ "fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
336
+ n ? "block" : "hidden"
337
+ ),
338
+ onClick: (c) => {
339
+ c.target === c.currentTarget && t(!1);
340
+ },
341
+ children: /* @__PURE__ */ R.jsx(
342
+ "div",
343
+ {
344
+ className: "fixed left-[50%] top-[50%] z-50 w-full max-w-lg translate-x-[-50%] translate-y-[-50%] overflow-hidden rounded-lg border border-border bg-popover shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]",
345
+ children: e
346
+ }
347
+ )
348
+ }
349
+ ), Qe = a.forwardRef(({ className: e, ...n }, t) => /* @__PURE__ */ R.jsxs("div", { className: "flex items-center border-b border-border px-3", "cmdk-input-wrapper": "", children: [
350
+ /* @__PURE__ */ R.jsx(Ie, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
351
+ /* @__PURE__ */ R.jsx(
352
+ E.Input,
353
+ {
354
+ ref: t,
355
+ className: D(
356
+ "flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",
357
+ e
358
+ ),
359
+ ...n
360
+ }
361
+ )
362
+ ] }));
363
+ Qe.displayName = E.Input.displayName;
364
+ const Ze = a.forwardRef(({ className: e, ...n }, t) => /* @__PURE__ */ R.jsx(
365
+ E.List,
366
+ {
367
+ ref: t,
368
+ className: D("max-h-[300px] overflow-y-auto overflow-x-hidden", e),
369
+ ...n
370
+ }
371
+ ));
372
+ Ze.displayName = E.List.displayName;
373
+ const _e = a.forwardRef((e, n) => /* @__PURE__ */ R.jsx(
374
+ E.Empty,
375
+ {
376
+ ref: n,
377
+ className: "py-6 text-center text-sm text-muted-foreground",
378
+ ...e
379
+ }
380
+ ));
381
+ _e.displayName = E.Empty.displayName;
382
+ const et = a.forwardRef(({ className: e, ...n }, t) => /* @__PURE__ */ R.jsx(
383
+ E.Group,
384
+ {
385
+ ref: t,
386
+ className: D(
387
+ "overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",
388
+ e
389
+ ),
390
+ ...n
391
+ }
392
+ ));
393
+ et.displayName = E.Group.displayName;
394
+ const tt = a.forwardRef(({ className: e, ...n }, t) => /* @__PURE__ */ R.jsx(
395
+ E.Separator,
396
+ {
397
+ ref: t,
398
+ className: D("-mx-1 h-px bg-border", e),
399
+ ...n
400
+ }
401
+ ));
402
+ tt.displayName = E.Separator.displayName;
403
+ const rt = a.forwardRef(({ className: e, ...n }, t) => /* @__PURE__ */ R.jsx(
404
+ E.Item,
405
+ {
406
+ ref: t,
407
+ className: D(
408
+ "relative flex cursor-default select-none items-center rounded-md px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
409
+ e
410
+ ),
411
+ ...n
412
+ }
413
+ ));
414
+ rt.displayName = E.Item.displayName;
415
+ export {
416
+ Ye as Command,
417
+ dt as CommandDialog,
418
+ _e as CommandEmpty,
419
+ et as CommandGroup,
420
+ Qe as CommandInput,
421
+ rt as CommandItem,
422
+ Ze as CommandList,
423
+ tt as CommandSeparator
424
+ };
425
+ //# sourceMappingURL=command.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.esm.js","sources":["../../node_modules/cmdk/dist/chunk-NZJY6EH4.mjs","../../node_modules/cmdk/dist/index.mjs","../../src/components/command.tsx"],"sourcesContent":["var U=1,Y=.9,H=.8,J=.17,p=.1,u=.999,$=.9999;var k=.99,m=/[\\\\\\/_+.#\"@\\[\\(\\{&]/,B=/[\\\\\\/_+.#\"@\\[\\(\\{&]/g,K=/[\\s-]/,X=/[\\s-]/g;function G(_,C,h,P,A,f,O){if(f===C.length)return A===_.length?U:k;var T=`${A},${f}`;if(O[T]!==void 0)return O[T];for(var L=P.charAt(f),c=h.indexOf(L,A),S=0,E,N,R,M;c>=0;)E=G(_,C,h,P,c+1,f+1,O),E>S&&(c===A?E*=U:m.test(_.charAt(c-1))?(E*=H,R=_.slice(A,c-1).match(B),R&&A>0&&(E*=Math.pow(u,R.length))):K.test(_.charAt(c-1))?(E*=Y,M=_.slice(A,c-1).match(X),M&&A>0&&(E*=Math.pow(u,M.length))):(E*=J,A>0&&(E*=Math.pow(u,c-A))),_.charAt(c)!==C.charAt(f)&&(E*=$)),(E<p&&h.charAt(c-1)===P.charAt(f+1)||P.charAt(f+1)===P.charAt(f)&&h.charAt(c-1)!==P.charAt(f))&&(N=G(_,C,h,P,c+1,f+2,O),N*p>E&&(E=N*p)),E>S&&(S=E),c=h.indexOf(L,c+1);return O[T]=S,S}function D(_){return _.toLowerCase().replace(X,\" \")}function W(_,C,h){return _=h&&h.length>0?`${_+\" \"+h.join(\" \")}`:_,G(_,C,D(_),D(C),0,0,{})}export{W as a};\n","\"use client\";import{a as ae}from\"./chunk-NZJY6EH4.mjs\";import*as w from\"@radix-ui/react-dialog\";import*as t from\"react\";import{Primitive as D}from\"@radix-ui/react-primitive\";import{useId as H}from\"@radix-ui/react-id\";import{composeRefs as G}from\"@radix-ui/react-compose-refs\";var N='[cmdk-group=\"\"]',Y='[cmdk-group-items=\"\"]',be='[cmdk-group-heading=\"\"]',le='[cmdk-item=\"\"]',ce=`${le}:not([aria-disabled=\"true\"])`,Z=\"cmdk-item-select\",T=\"data-value\",Re=(r,o,n)=>ae(r,o,n),ue=t.createContext(void 0),K=()=>t.useContext(ue),de=t.createContext(void 0),ee=()=>t.useContext(de),fe=t.createContext(void 0),me=t.forwardRef((r,o)=>{let n=L(()=>{var e,a;return{search:\"\",value:(a=(e=r.value)!=null?e:r.defaultValue)!=null?a:\"\",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),u=L(()=>new Set),c=L(()=>new Map),d=L(()=>new Map),f=L(()=>new Set),p=pe(r),{label:b,children:m,value:R,onValueChange:x,filter:C,shouldFilter:S,loop:A,disablePointerSelection:ge=!1,vimBindings:j=!0,...O}=r,$=H(),q=H(),_=H(),I=t.useRef(null),v=ke();k(()=>{if(R!==void 0){let e=R.trim();n.current.value=e,E.emit()}},[R]),k(()=>{v(6,ne)},[]);let E=t.useMemo(()=>({subscribe:e=>(f.current.add(e),()=>f.current.delete(e)),snapshot:()=>n.current,setState:(e,a,s)=>{var i,l,g,y;if(!Object.is(n.current[e],a)){if(n.current[e]=a,e===\"search\")J(),z(),v(1,W);else if(e===\"value\"){if(document.activeElement.hasAttribute(\"cmdk-input\")||document.activeElement.hasAttribute(\"cmdk-root\")){let h=document.getElementById(_);h?h.focus():(i=document.getElementById($))==null||i.focus()}if(v(7,()=>{var h;n.current.selectedItemId=(h=M())==null?void 0:h.id,E.emit()}),s||v(5,ne),((l=p.current)==null?void 0:l.value)!==void 0){let h=a!=null?a:\"\";(y=(g=p.current).onValueChange)==null||y.call(g,h);return}}E.emit()}},emit:()=>{f.current.forEach(e=>e())}}),[]),U=t.useMemo(()=>({value:(e,a,s)=>{var i;a!==((i=d.current.get(e))==null?void 0:i.value)&&(d.current.set(e,{value:a,keywords:s}),n.current.filtered.items.set(e,te(a,s)),v(2,()=>{z(),E.emit()}))},item:(e,a)=>(u.current.add(e),a&&(c.current.has(a)?c.current.get(a).add(e):c.current.set(a,new Set([e]))),v(3,()=>{J(),z(),n.current.value||W(),E.emit()}),()=>{d.current.delete(e),u.current.delete(e),n.current.filtered.items.delete(e);let s=M();v(4,()=>{J(),(s==null?void 0:s.getAttribute(\"id\"))===e&&W(),E.emit()})}),group:e=>(c.current.has(e)||c.current.set(e,new Set),()=>{d.current.delete(e),c.current.delete(e)}),filter:()=>p.current.shouldFilter,label:b||r[\"aria-label\"],getDisablePointerSelection:()=>p.current.disablePointerSelection,listId:$,inputId:_,labelId:q,listInnerRef:I}),[]);function te(e,a){var i,l;let s=(l=(i=p.current)==null?void 0:i.filter)!=null?l:Re;return e?s(e,n.current.search,a):0}function z(){if(!n.current.search||p.current.shouldFilter===!1)return;let e=n.current.filtered.items,a=[];n.current.filtered.groups.forEach(i=>{let l=c.current.get(i),g=0;l.forEach(y=>{let h=e.get(y);g=Math.max(h,g)}),a.push([i,g])});let s=I.current;V().sort((i,l)=>{var h,F;let g=i.getAttribute(\"id\"),y=l.getAttribute(\"id\");return((h=e.get(y))!=null?h:0)-((F=e.get(g))!=null?F:0)}).forEach(i=>{let l=i.closest(Y);l?l.appendChild(i.parentElement===l?i:i.closest(`${Y} > *`)):s.appendChild(i.parentElement===s?i:i.closest(`${Y} > *`))}),a.sort((i,l)=>l[1]-i[1]).forEach(i=>{var g;let l=(g=I.current)==null?void 0:g.querySelector(`${N}[${T}=\"${encodeURIComponent(i[0])}\"]`);l==null||l.parentElement.appendChild(l)})}function W(){let e=V().find(s=>s.getAttribute(\"aria-disabled\")!==\"true\"),a=e==null?void 0:e.getAttribute(T);E.setState(\"value\",a||void 0)}function J(){var a,s,i,l;if(!n.current.search||p.current.shouldFilter===!1){n.current.filtered.count=u.current.size;return}n.current.filtered.groups=new Set;let e=0;for(let g of u.current){let y=(s=(a=d.current.get(g))==null?void 0:a.value)!=null?s:\"\",h=(l=(i=d.current.get(g))==null?void 0:i.keywords)!=null?l:[],F=te(y,h);n.current.filtered.items.set(g,F),F>0&&e++}for(let[g,y]of c.current)for(let h of y)if(n.current.filtered.items.get(h)>0){n.current.filtered.groups.add(g);break}n.current.filtered.count=e}function ne(){var a,s,i;let e=M();e&&(((a=e.parentElement)==null?void 0:a.firstChild)===e&&((i=(s=e.closest(N))==null?void 0:s.querySelector(be))==null||i.scrollIntoView({block:\"nearest\"})),e.scrollIntoView({block:\"nearest\"}))}function M(){var e;return(e=I.current)==null?void 0:e.querySelector(`${le}[aria-selected=\"true\"]`)}function V(){var e;return Array.from(((e=I.current)==null?void 0:e.querySelectorAll(ce))||[])}function X(e){let s=V()[e];s&&E.setState(\"value\",s.getAttribute(T))}function Q(e){var g;let a=M(),s=V(),i=s.findIndex(y=>y===a),l=s[i+e];(g=p.current)!=null&&g.loop&&(l=i+e<0?s[s.length-1]:i+e===s.length?s[0]:s[i+e]),l&&E.setState(\"value\",l.getAttribute(T))}function re(e){let a=M(),s=a==null?void 0:a.closest(N),i;for(;s&&!i;)s=e>0?we(s,N):De(s,N),i=s==null?void 0:s.querySelector(ce);i?E.setState(\"value\",i.getAttribute(T)):Q(e)}let oe=()=>X(V().length-1),ie=e=>{e.preventDefault(),e.metaKey?oe():e.altKey?re(1):Q(1)},se=e=>{e.preventDefault(),e.metaKey?X(0):e.altKey?re(-1):Q(-1)};return t.createElement(D.div,{ref:o,tabIndex:-1,...O,\"cmdk-root\":\"\",onKeyDown:e=>{var s;(s=O.onKeyDown)==null||s.call(O,e);let a=e.nativeEvent.isComposing||e.keyCode===229;if(!(e.defaultPrevented||a))switch(e.key){case\"n\":case\"j\":{j&&e.ctrlKey&&ie(e);break}case\"ArrowDown\":{ie(e);break}case\"p\":case\"k\":{j&&e.ctrlKey&&se(e);break}case\"ArrowUp\":{se(e);break}case\"Home\":{e.preventDefault(),X(0);break}case\"End\":{e.preventDefault(),oe();break}case\"Enter\":{e.preventDefault();let i=M();if(i){let l=new Event(Z);i.dispatchEvent(l)}}}}},t.createElement(\"label\",{\"cmdk-label\":\"\",htmlFor:U.inputId,id:U.labelId,style:Te},b),B(r,e=>t.createElement(de.Provider,{value:E},t.createElement(ue.Provider,{value:U},e))))}),he=t.forwardRef((r,o)=>{var _,I;let n=H(),u=t.useRef(null),c=t.useContext(fe),d=K(),f=pe(r),p=(I=(_=f.current)==null?void 0:_.forceMount)!=null?I:c==null?void 0:c.forceMount;k(()=>{if(!p)return d.item(n,c==null?void 0:c.id)},[p]);let b=ve(n,u,[r.value,r.children,u],r.keywords),m=ee(),R=P(v=>v.value&&v.value===b.current),x=P(v=>p||d.filter()===!1?!0:v.search?v.filtered.items.get(n)>0:!0);t.useEffect(()=>{let v=u.current;if(!(!v||r.disabled))return v.addEventListener(Z,C),()=>v.removeEventListener(Z,C)},[x,r.onSelect,r.disabled]);function C(){var v,E;S(),(E=(v=f.current).onSelect)==null||E.call(v,b.current)}function S(){m.setState(\"value\",b.current,!0)}if(!x)return null;let{disabled:A,value:ge,onSelect:j,forceMount:O,keywords:$,...q}=r;return t.createElement(D.div,{ref:G(u,o),...q,id:n,\"cmdk-item\":\"\",role:\"option\",\"aria-disabled\":!!A,\"aria-selected\":!!R,\"data-disabled\":!!A,\"data-selected\":!!R,onPointerMove:A||d.getDisablePointerSelection()?void 0:S,onClick:A?void 0:C},r.children)}),Ee=t.forwardRef((r,o)=>{let{heading:n,children:u,forceMount:c,...d}=r,f=H(),p=t.useRef(null),b=t.useRef(null),m=H(),R=K(),x=P(S=>c||R.filter()===!1?!0:S.search?S.filtered.groups.has(f):!0);k(()=>R.group(f),[]),ve(f,p,[r.value,r.heading,b]);let C=t.useMemo(()=>({id:f,forceMount:c}),[c]);return t.createElement(D.div,{ref:G(p,o),...d,\"cmdk-group\":\"\",role:\"presentation\",hidden:x?void 0:!0},n&&t.createElement(\"div\",{ref:b,\"cmdk-group-heading\":\"\",\"aria-hidden\":!0,id:m},n),B(r,S=>t.createElement(\"div\",{\"cmdk-group-items\":\"\",role:\"group\",\"aria-labelledby\":n?m:void 0},t.createElement(fe.Provider,{value:C},S))))}),ye=t.forwardRef((r,o)=>{let{alwaysRender:n,...u}=r,c=t.useRef(null),d=P(f=>!f.search);return!n&&!d?null:t.createElement(D.div,{ref:G(c,o),...u,\"cmdk-separator\":\"\",role:\"separator\"})}),Se=t.forwardRef((r,o)=>{let{onValueChange:n,...u}=r,c=r.value!=null,d=ee(),f=P(m=>m.search),p=P(m=>m.selectedItemId),b=K();return t.useEffect(()=>{r.value!=null&&d.setState(\"search\",r.value)},[r.value]),t.createElement(D.input,{ref:o,...u,\"cmdk-input\":\"\",autoComplete:\"off\",autoCorrect:\"off\",spellCheck:!1,\"aria-autocomplete\":\"list\",role:\"combobox\",\"aria-expanded\":!0,\"aria-controls\":b.listId,\"aria-labelledby\":b.labelId,\"aria-activedescendant\":p,id:b.inputId,type:\"text\",value:c?r.value:f,onChange:m=>{c||d.setState(\"search\",m.target.value),n==null||n(m.target.value)}})}),Ce=t.forwardRef((r,o)=>{let{children:n,label:u=\"Suggestions\",...c}=r,d=t.useRef(null),f=t.useRef(null),p=P(m=>m.selectedItemId),b=K();return t.useEffect(()=>{if(f.current&&d.current){let m=f.current,R=d.current,x,C=new ResizeObserver(()=>{x=requestAnimationFrame(()=>{let S=m.offsetHeight;R.style.setProperty(\"--cmdk-list-height\",S.toFixed(1)+\"px\")})});return C.observe(m),()=>{cancelAnimationFrame(x),C.unobserve(m)}}},[]),t.createElement(D.div,{ref:G(d,o),...c,\"cmdk-list\":\"\",role:\"listbox\",tabIndex:-1,\"aria-activedescendant\":p,\"aria-label\":u,id:b.listId},B(r,m=>t.createElement(\"div\",{ref:G(f,b.listInnerRef),\"cmdk-list-sizer\":\"\"},m)))}),xe=t.forwardRef((r,o)=>{let{open:n,onOpenChange:u,overlayClassName:c,contentClassName:d,container:f,...p}=r;return t.createElement(w.Root,{open:n,onOpenChange:u},t.createElement(w.Portal,{container:f},t.createElement(w.Overlay,{\"cmdk-overlay\":\"\",className:c}),t.createElement(w.Content,{\"aria-label\":r.label,\"cmdk-dialog\":\"\",className:d},t.createElement(me,{ref:o,...p}))))}),Ie=t.forwardRef((r,o)=>P(u=>u.filtered.count===0)?t.createElement(D.div,{ref:o,...r,\"cmdk-empty\":\"\",role:\"presentation\"}):null),Pe=t.forwardRef((r,o)=>{let{progress:n,children:u,label:c=\"Loading...\",...d}=r;return t.createElement(D.div,{ref:o,...d,\"cmdk-loading\":\"\",role:\"progressbar\",\"aria-valuenow\":n,\"aria-valuemin\":0,\"aria-valuemax\":100,\"aria-label\":c},B(r,f=>t.createElement(\"div\",{\"aria-hidden\":!0},f)))}),_e=Object.assign(me,{List:Ce,Item:he,Input:Se,Group:Ee,Separator:ye,Dialog:xe,Empty:Ie,Loading:Pe});function we(r,o){let n=r.nextElementSibling;for(;n;){if(n.matches(o))return n;n=n.nextElementSibling}}function De(r,o){let n=r.previousElementSibling;for(;n;){if(n.matches(o))return n;n=n.previousElementSibling}}function pe(r){let o=t.useRef(r);return k(()=>{o.current=r}),o}var k=typeof window==\"undefined\"?t.useEffect:t.useLayoutEffect;function L(r){let o=t.useRef();return o.current===void 0&&(o.current=r()),o}function P(r){let o=ee(),n=()=>r(o.snapshot());return t.useSyncExternalStore(o.subscribe,n,n)}function ve(r,o,n,u=[]){let c=t.useRef(),d=K();return k(()=>{var b;let f=(()=>{var m;for(let R of n){if(typeof R==\"string\")return R.trim();if(typeof R==\"object\"&&\"current\"in R)return R.current?(m=R.current.textContent)==null?void 0:m.trim():c.current}})(),p=u.map(m=>m.trim());d.value(r,f,p),(b=o.current)==null||b.setAttribute(T,f),c.current=f}),c}var ke=()=>{let[r,o]=t.useState(),n=L(()=>new Map);return k(()=>{n.current.forEach(u=>u()),n.current=new Map},[r]),(u,c)=>{n.current.set(u,c),o({})}};function Me(r){let o=r.type;return typeof o==\"function\"?o(r.props):\"render\"in o?o.render(r.props):r}function B({asChild:r,children:o},n){return r&&t.isValidElement(o)?t.cloneElement(Me(o),{ref:o.ref},n(o.props.children)):n(o)}var Te={position:\"absolute\",width:\"1px\",height:\"1px\",padding:\"0\",margin:\"-1px\",overflow:\"hidden\",clip:\"rect(0, 0, 0, 0)\",whiteSpace:\"nowrap\",borderWidth:\"0\"};export{_e as Command,xe as CommandDialog,Ie as CommandEmpty,Ee as CommandGroup,Se as CommandInput,he as CommandItem,Ce as CommandList,Pe as CommandLoading,me as CommandRoot,ye as CommandSeparator,Re as defaultFilter,P as useCommandState};\n","import * as React from \"react\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { Search } from \"lucide-react\"\nimport { cn } from \"@/lib/utils\"\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n \"flex h-full w-full flex-col overflow-hidden rounded-lg bg-popover text-popover-foreground\",\n className\n )}\n {...props}\n />\n))\nCommand.displayName = CommandPrimitive.displayName\n\nconst CommandDialog = ({\n children,\n open,\n onOpenChange,\n}: {\n children: React.ReactNode\n open: boolean\n onOpenChange: (open: boolean) => void\n}) => {\n return (\n <div\n className={cn(\n \"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n open ? \"block\" : \"hidden\"\n )}\n onClick={(e) => {\n if (e.target === e.currentTarget) {\n onOpenChange(false)\n }\n }}\n >\n <div \n className=\"fixed left-[50%] top-[50%] z-50 w-full max-w-lg translate-x-[-50%] translate-y-[-50%] overflow-hidden rounded-lg border border-border bg-popover shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]\"\n >\n {children}\n </div>\n </div>\n )\n}\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => (\n <div className=\"flex items-center border-b border-border px-3\" cmdk-input-wrapper=\"\">\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n \"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n />\n </div>\n))\nCommandInput.displayName = CommandPrimitive.Input.displayName\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn(\"max-h-[300px] overflow-y-auto overflow-x-hidden\", className)}\n {...props}\n />\n))\nCommandList.displayName = CommandPrimitive.List.displayName\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty\n ref={ref}\n className=\"py-6 text-center text-sm text-muted-foreground\"\n {...props}\n />\n))\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n \"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className\n )}\n {...props}\n />\n))\nCommandGroup.displayName = CommandPrimitive.Group.displayName\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n))\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-md px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n {...props}\n />\n))\nCommandItem.displayName = CommandPrimitive.Item.displayName\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandSeparator,\n} "],"names":["U","Y","H","J","p","u","$","k","m","B","K","X","G","_","C","h","P","A","f","O","T","L","c","S","E","N","R","M","D","W","be","le","ce","Z","Re","r","o","n","ae","ue","t","de","ee","fe","me","e","a","pe","x","ge","q","I","v","ke","ne","s","i","l","g","y","z","te","V","F","Q","re","we","De","oe","ie","se","Te","he","d","b","ve","j","Ee","ye","Se","Ce","xe","w","Ie","Pe","_e","Me","Command","React","className","props","ref","jsx","CommandPrimitive","cn","CommandDialog","children","open","onOpenChange","CommandInput","jsxs","Search","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem"],"mappings":"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","x_google_ignoreList":[0,1]}