@sero-ai/ui 0.3.0 → 0.3.2

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 (484) hide show
  1. package/dist/components/ai-elements/agent.cjs +89 -0
  2. package/dist/components/ai-elements/agent.d.cts +32 -0
  3. package/dist/components/ai-elements/agent.d.ts +32 -0
  4. package/dist/components/ai-elements/agent.js +89 -0
  5. package/dist/components/ai-elements/artifact.cjs +121 -0
  6. package/dist/components/ai-elements/artifact.d.cts +29 -0
  7. package/dist/components/ai-elements/artifact.d.ts +29 -0
  8. package/dist/components/ai-elements/artifact.js +121 -0
  9. package/dist/components/ai-elements/attachments.cjs +283 -0
  10. package/dist/components/ai-elements/attachments.d.cts +60 -0
  11. package/dist/components/ai-elements/attachments.d.ts +60 -0
  12. package/dist/components/ai-elements/attachments.js +283 -0
  13. package/dist/components/ai-elements/audio-player.cjs +174 -0
  14. package/dist/components/ai-elements/audio-player.d.cts +33 -0
  15. package/dist/components/ai-elements/audio-player.d.ts +33 -0
  16. package/dist/components/ai-elements/audio-player.js +174 -0
  17. package/dist/components/ai-elements/canvas.cjs +23 -0
  18. package/dist/components/ai-elements/canvas.d.cts +10 -0
  19. package/dist/components/ai-elements/canvas.d.ts +10 -0
  20. package/dist/components/ai-elements/canvas.js +23 -0
  21. package/dist/components/ai-elements/chain-of-thought.cjs +170 -0
  22. package/dist/components/ai-elements/chain-of-thought.d.cts +37 -0
  23. package/dist/components/ai-elements/chain-of-thought.d.ts +37 -0
  24. package/dist/components/ai-elements/chain-of-thought.js +170 -0
  25. package/dist/components/ai-elements/checkpoint.cjs +49 -0
  26. package/dist/components/ai-elements/checkpoint.d.cts +18 -0
  27. package/dist/components/ai-elements/checkpoint.d.ts +18 -0
  28. package/dist/components/ai-elements/checkpoint.js +49 -0
  29. package/dist/components/ai-elements/code-block.cjs +380 -0
  30. package/dist/components/ai-elements/code-block.d.cts +51 -0
  31. package/dist/components/ai-elements/code-block.d.ts +51 -0
  32. package/dist/components/ai-elements/code-block.js +380 -0
  33. package/dist/components/ai-elements/commit.cjs +337 -0
  34. package/dist/components/ai-elements/commit.d.cts +71 -0
  35. package/dist/components/ai-elements/commit.d.ts +71 -0
  36. package/dist/components/ai-elements/commit.js +337 -0
  37. package/dist/components/ai-elements/confirmation.cjs +82 -0
  38. package/dist/components/ai-elements/confirmation.d.cts +54 -0
  39. package/dist/components/ai-elements/confirmation.d.ts +54 -0
  40. package/dist/components/ai-elements/confirmation.js +82 -0
  41. package/dist/components/ai-elements/connection.cjs +33 -0
  42. package/dist/components/ai-elements/connection.d.cts +5 -0
  43. package/dist/components/ai-elements/connection.d.ts +5 -0
  44. package/dist/components/ai-elements/connection.js +33 -0
  45. package/dist/components/ai-elements/context.cjs +329 -0
  46. package/dist/components/ai-elements/context.d.cts +39 -0
  47. package/dist/components/ai-elements/context.d.ts +39 -0
  48. package/dist/components/ai-elements/context.js +329 -0
  49. package/dist/components/ai-elements/controls.cjs +18 -0
  50. package/dist/components/ai-elements/controls.d.cts +8 -0
  51. package/dist/components/ai-elements/controls.d.ts +8 -0
  52. package/dist/components/ai-elements/controls.js +18 -0
  53. package/dist/components/ai-elements/conversation.cjs +124 -0
  54. package/dist/components/ai-elements/conversation.d.cts +32 -0
  55. package/dist/components/ai-elements/conversation.d.ts +32 -0
  56. package/dist/components/ai-elements/conversation.js +124 -0
  57. package/dist/components/ai-elements/edge.cjs +116 -0
  58. package/dist/components/ai-elements/edge.d.cts +9 -0
  59. package/dist/components/ai-elements/edge.d.ts +9 -0
  60. package/dist/components/ai-elements/edge.js +116 -0
  61. package/dist/components/ai-elements/environment-variables.cjs +227 -0
  62. package/dist/components/ai-elements/environment-variables.d.cts +45 -0
  63. package/dist/components/ai-elements/environment-variables.d.ts +45 -0
  64. package/dist/components/ai-elements/environment-variables.js +227 -0
  65. package/dist/components/ai-elements/file-tree.cjs +217 -0
  66. package/dist/components/ai-elements/file-tree.d.cts +30 -0
  67. package/dist/components/ai-elements/file-tree.d.ts +30 -0
  68. package/dist/components/ai-elements/file-tree.js +217 -0
  69. package/dist/components/ai-elements/image.cjs +22 -0
  70. package/dist/components/ai-elements/image.d.cts +10 -0
  71. package/dist/components/ai-elements/image.d.ts +10 -0
  72. package/dist/components/ai-elements/image.js +22 -0
  73. package/dist/components/ai-elements/inline-citation.cjs +223 -0
  74. package/dist/components/ai-elements/inline-citation.d.cts +47 -0
  75. package/dist/components/ai-elements/inline-citation.d.ts +47 -0
  76. package/dist/components/ai-elements/inline-citation.js +223 -0
  77. package/dist/components/ai-elements/jsx-preview.cjs +176 -0
  78. package/dist/components/ai-elements/jsx-preview.d.cts +31 -0
  79. package/dist/components/ai-elements/jsx-preview.d.ts +31 -0
  80. package/dist/components/ai-elements/jsx-preview.js +176 -0
  81. package/dist/components/ai-elements/message.cjs +287 -0
  82. package/dist/components/ai-elements/message.d.cts +46 -0
  83. package/dist/components/ai-elements/message.d.ts +46 -0
  84. package/dist/components/ai-elements/message.js +287 -0
  85. package/dist/components/ai-elements/mic-selector.cjs +275 -0
  86. package/dist/components/ai-elements/mic-selector.d.cts +54 -0
  87. package/dist/components/ai-elements/mic-selector.d.ts +54 -0
  88. package/dist/components/ai-elements/mic-selector.js +275 -0
  89. package/dist/components/ai-elements/model-selector.cjs +100 -0
  90. package/dist/components/ai-elements/model-selector.d.cts +41 -0
  91. package/dist/components/ai-elements/model-selector.d.ts +41 -0
  92. package/dist/components/ai-elements/model-selector.js +100 -0
  93. package/dist/components/ai-elements/node.cjs +54 -0
  94. package/dist/components/ai-elements/node.d.cts +25 -0
  95. package/dist/components/ai-elements/node.d.ts +25 -0
  96. package/dist/components/ai-elements/node.js +54 -0
  97. package/dist/components/ai-elements/open-in-chat.cjs +353 -0
  98. package/dist/components/ai-elements/open-in-chat.d.cts +33 -0
  99. package/dist/components/ai-elements/open-in-chat.d.ts +33 -0
  100. package/dist/components/ai-elements/open-in-chat.js +353 -0
  101. package/dist/components/ai-elements/package-info.cjs +171 -0
  102. package/dist/components/ai-elements/package-info.d.cts +32 -0
  103. package/dist/components/ai-elements/package-info.d.ts +32 -0
  104. package/dist/components/ai-elements/package-info.js +171 -0
  105. package/dist/components/ai-elements/panel.cjs +16 -0
  106. package/dist/components/ai-elements/panel.d.cts +8 -0
  107. package/dist/components/ai-elements/panel.d.ts +8 -0
  108. package/dist/components/ai-elements/panel.js +16 -0
  109. package/dist/components/ai-elements/persona.cjs +202 -0
  110. package/dist/components/ai-elements/persona.d.cts +50 -0
  111. package/dist/components/ai-elements/persona.d.ts +50 -0
  112. package/dist/components/ai-elements/persona.js +202 -0
  113. package/dist/components/ai-elements/plan.cjs +90 -0
  114. package/dist/components/ai-elements/plan.d.cts +30 -0
  115. package/dist/components/ai-elements/plan.d.ts +30 -0
  116. package/dist/components/ai-elements/plan.js +90 -0
  117. package/dist/components/ai-elements/prompt-input-context.cjs +161 -0
  118. package/dist/components/ai-elements/prompt-input-context.d.cts +58 -0
  119. package/dist/components/ai-elements/prompt-input-context.d.ts +58 -0
  120. package/dist/components/ai-elements/prompt-input-context.js +161 -0
  121. package/dist/components/ai-elements/prompt-input-elements.cjs +246 -0
  122. package/dist/components/ai-elements/prompt-input-elements.d.cts +88 -0
  123. package/dist/components/ai-elements/prompt-input-elements.d.ts +88 -0
  124. package/dist/components/ai-elements/prompt-input-elements.js +246 -0
  125. package/dist/components/ai-elements/prompt-input-textarea.cjs +89 -0
  126. package/dist/components/ai-elements/prompt-input-textarea.d.cts +11 -0
  127. package/dist/components/ai-elements/prompt-input-textarea.d.ts +11 -0
  128. package/dist/components/ai-elements/prompt-input-textarea.js +89 -0
  129. package/dist/components/ai-elements/prompt-input.cjs +306 -0
  130. package/dist/components/ai-elements/prompt-input.d.cts +39 -0
  131. package/dist/components/ai-elements/prompt-input.d.ts +39 -0
  132. package/dist/components/ai-elements/prompt-input.js +306 -0
  133. package/dist/components/ai-elements/queue.cjs +193 -0
  134. package/dist/components/ai-elements/queue.d.cts +68 -0
  135. package/dist/components/ai-elements/queue.d.ts +68 -0
  136. package/dist/components/ai-elements/queue.js +193 -0
  137. package/dist/components/ai-elements/reasoning.cjs +178 -0
  138. package/dist/components/ai-elements/reasoning.d.cts +31 -0
  139. package/dist/components/ai-elements/reasoning.d.ts +31 -0
  140. package/dist/components/ai-elements/reasoning.js +178 -0
  141. package/dist/components/ai-elements/sandbox.cjs +114 -0
  142. package/dist/components/ai-elements/sandbox.d.cts +31 -0
  143. package/dist/components/ai-elements/sandbox.d.ts +31 -0
  144. package/dist/components/ai-elements/sandbox.js +114 -0
  145. package/dist/components/ai-elements/schema-display.cjs +330 -0
  146. package/dist/components/ai-elements/schema-display.d.cts +61 -0
  147. package/dist/components/ai-elements/schema-display.d.ts +61 -0
  148. package/dist/components/ai-elements/schema-display.js +330 -0
  149. package/dist/components/ai-elements/shimmer.cjs +55 -0
  150. package/dist/components/ai-elements/shimmer.d.cts +14 -0
  151. package/dist/components/ai-elements/shimmer.d.ts +14 -0
  152. package/dist/components/ai-elements/shimmer.js +55 -0
  153. package/dist/components/ai-elements/snippet.cjs +105 -0
  154. package/dist/components/ai-elements/snippet.d.cts +25 -0
  155. package/dist/components/ai-elements/snippet.d.ts +25 -0
  156. package/dist/components/ai-elements/snippet.js +105 -0
  157. package/dist/components/ai-elements/sources.cjs +70 -0
  158. package/dist/components/ai-elements/sources.d.cts +17 -0
  159. package/dist/components/ai-elements/sources.d.ts +17 -0
  160. package/dist/components/ai-elements/sources.js +70 -0
  161. package/dist/components/ai-elements/speech-input.cjs +207 -0
  162. package/dist/components/ai-elements/speech-input.d.cts +59 -0
  163. package/dist/components/ai-elements/speech-input.d.ts +59 -0
  164. package/dist/components/ai-elements/speech-input.js +207 -0
  165. package/dist/components/ai-elements/stack-trace.cjs +403 -0
  166. package/dist/components/ai-elements/stack-trace.d.cts +45 -0
  167. package/dist/components/ai-elements/stack-trace.d.ts +45 -0
  168. package/dist/components/ai-elements/stack-trace.js +403 -0
  169. package/dist/components/ai-elements/suggestion.cjs +46 -0
  170. package/dist/components/ai-elements/suggestion.d.cts +17 -0
  171. package/dist/components/ai-elements/suggestion.d.ts +17 -0
  172. package/dist/components/ai-elements/suggestion.js +46 -0
  173. package/dist/components/ai-elements/task.cjs +62 -0
  174. package/dist/components/ai-elements/task.d.cts +19 -0
  175. package/dist/components/ai-elements/task.d.ts +19 -0
  176. package/dist/components/ai-elements/task.js +62 -0
  177. package/dist/components/ai-elements/terminal.cjs +220 -0
  178. package/dist/components/ai-elements/terminal.d.cts +33 -0
  179. package/dist/components/ai-elements/terminal.d.ts +33 -0
  180. package/dist/components/ai-elements/terminal.js +220 -0
  181. package/dist/components/ai-elements/test-results.cjs +376 -0
  182. package/dist/components/ai-elements/test-results.d.cts +62 -0
  183. package/dist/components/ai-elements/test-results.d.ts +62 -0
  184. package/dist/components/ai-elements/test-results.js +376 -0
  185. package/dist/components/ai-elements/tool.cjs +130 -0
  186. package/dist/components/ai-elements/tool.d.cts +36 -0
  187. package/dist/components/ai-elements/tool.d.ts +36 -0
  188. package/dist/components/ai-elements/tool.js +130 -0
  189. package/dist/components/ai-elements/toolbar.cjs +17 -0
  190. package/dist/components/ai-elements/toolbar.d.cts +8 -0
  191. package/dist/components/ai-elements/toolbar.d.ts +8 -0
  192. package/dist/components/ai-elements/toolbar.js +17 -0
  193. package/dist/components/ai-elements/transcription.cjs +92 -0
  194. package/dist/components/ai-elements/transcription.d.cts +19 -0
  195. package/dist/components/ai-elements/transcription.d.ts +19 -0
  196. package/dist/components/ai-elements/transcription.js +92 -0
  197. package/dist/components/ai-elements/voice-selector-accent.cjs +11 -0
  198. package/dist/components/ai-elements/voice-selector-accent.d.cts +10 -0
  199. package/dist/components/ai-elements/voice-selector-accent.d.ts +10 -0
  200. package/dist/components/ai-elements/voice-selector-accent.js +11 -0
  201. package/dist/components/ai-elements/voice-selector.cjs +246 -0
  202. package/dist/components/ai-elements/voice-selector.d.cts +66 -0
  203. package/dist/components/ai-elements/voice-selector.d.ts +66 -0
  204. package/dist/components/ai-elements/voice-selector.js +246 -0
  205. package/dist/components/ai-elements/web-preview.cjs +237 -0
  206. package/dist/components/ai-elements/web-preview.d.cts +40 -0
  207. package/dist/components/ai-elements/web-preview.d.ts +40 -0
  208. package/dist/components/ai-elements/web-preview.js +237 -0
  209. package/dist/components/model-selection/available-model-picker.cjs +172 -0
  210. package/dist/components/model-selection/available-model-picker.d.cts +18 -0
  211. package/dist/components/model-selection/available-model-picker.d.ts +18 -0
  212. package/dist/components/model-selection/available-model-picker.js +172 -0
  213. package/dist/components/model-selection/model-warning-list.cjs +24 -0
  214. package/dist/components/model-selection/model-warning-list.d.cts +10 -0
  215. package/dist/components/model-selection/model-warning-list.d.ts +10 -0
  216. package/dist/components/model-selection/model-warning-list.js +24 -0
  217. package/dist/components/model-selection/thinking-level-picker.cjs +39 -0
  218. package/dist/components/model-selection/thinking-level-picker.d.cts +14 -0
  219. package/dist/components/model-selection/thinking-level-picker.d.ts +14 -0
  220. package/dist/components/model-selection/thinking-level-picker.js +39 -0
  221. package/dist/components/ui/accordion.cjs +64 -0
  222. package/dist/components/ui/accordion.d.cts +10 -0
  223. package/dist/components/ui/accordion.d.ts +10 -0
  224. package/dist/components/ui/accordion.js +64 -0
  225. package/dist/components/ui/alert-dialog.cjs +178 -0
  226. package/dist/components/ui/alert-dialog.d.cts +23 -0
  227. package/dist/components/ui/alert-dialog.d.ts +23 -0
  228. package/dist/components/ui/alert-dialog.js +178 -0
  229. package/dist/components/ui/alert.cjs +66 -0
  230. package/dist/components/ui/alert.d.cts +13 -0
  231. package/dist/components/ui/alert.d.ts +13 -0
  232. package/dist/components/ui/alert.js +66 -0
  233. package/dist/components/ui/aspect-ratio.cjs +11 -0
  234. package/dist/components/ui/aspect-ratio.d.cts +6 -0
  235. package/dist/components/ui/aspect-ratio.d.ts +6 -0
  236. package/dist/components/ui/aspect-ratio.js +11 -0
  237. package/dist/components/ui/avatar.cjs +103 -0
  238. package/dist/components/ui/avatar.d.cts +14 -0
  239. package/dist/components/ui/avatar.d.ts +14 -0
  240. package/dist/components/ui/avatar.js +103 -0
  241. package/dist/components/ui/badge.cjs +43 -0
  242. package/dist/components/ui/badge.d.cts +13 -0
  243. package/dist/components/ui/badge.d.ts +13 -0
  244. package/dist/components/ui/badge.js +43 -0
  245. package/dist/components/ui/breadcrumb.cjs +103 -0
  246. package/dist/components/ui/breadcrumb.d.cts +14 -0
  247. package/dist/components/ui/breadcrumb.d.ts +14 -0
  248. package/dist/components/ui/breadcrumb.js +103 -0
  249. package/dist/components/ui/button-group.cjs +76 -0
  250. package/dist/components/ui/button-group.d.cts +17 -0
  251. package/dist/components/ui/button-group.d.ts +17 -0
  252. package/dist/components/ui/button-group.js +76 -0
  253. package/dist/components/ui/button.cjs +56 -0
  254. package/dist/components/ui/button.d.cts +14 -0
  255. package/dist/components/ui/button.d.ts +14 -0
  256. package/dist/components/ui/button.js +56 -0
  257. package/dist/components/ui/calendar.cjs +194 -0
  258. package/dist/components/ui/calendar.d.cts +13 -0
  259. package/dist/components/ui/calendar.d.ts +13 -0
  260. package/dist/components/ui/calendar.js +194 -0
  261. package/dist/components/ui/card.cjs +90 -0
  262. package/dist/components/ui/card.d.cts +12 -0
  263. package/dist/components/ui/card.d.ts +12 -0
  264. package/dist/components/ui/card.js +90 -0
  265. package/dist/components/ui/carousel.cjs +198 -0
  266. package/dist/components/ui/carousel.d.cts +24 -0
  267. package/dist/components/ui/carousel.d.ts +24 -0
  268. package/dist/components/ui/carousel.js +198 -0
  269. package/dist/components/ui/chart.cjs +242 -0
  270. package/dist/components/ui/chart.d.cts +43 -0
  271. package/dist/components/ui/chart.d.ts +43 -0
  272. package/dist/components/ui/chart.js +242 -0
  273. package/dist/components/ui/checkbox.cjs +32 -0
  274. package/dist/components/ui/checkbox.d.cts +7 -0
  275. package/dist/components/ui/checkbox.d.ts +7 -0
  276. package/dist/components/ui/checkbox.js +32 -0
  277. package/dist/components/ui/collapsible.cjs +34 -0
  278. package/dist/components/ui/collapsible.d.cts +8 -0
  279. package/dist/components/ui/collapsible.d.ts +8 -0
  280. package/dist/components/ui/collapsible.js +34 -0
  281. package/dist/components/ui/combobox.cjs +297 -0
  282. package/dist/components/ui/combobox.d.cts +27 -0
  283. package/dist/components/ui/combobox.d.ts +27 -0
  284. package/dist/components/ui/combobox.js +297 -0
  285. package/dist/components/ui/command.cjs +177 -0
  286. package/dist/components/ui/command.d.cts +22 -0
  287. package/dist/components/ui/command.d.ts +22 -0
  288. package/dist/components/ui/command.js +177 -0
  289. package/dist/components/ui/context-menu.cjs +224 -0
  290. package/dist/components/ui/context-menu.d.cts +28 -0
  291. package/dist/components/ui/context-menu.d.ts +28 -0
  292. package/dist/components/ui/context-menu.js +224 -0
  293. package/dist/components/ui/dialog.cjs +147 -0
  294. package/dist/components/ui/dialog.d.cts +20 -0
  295. package/dist/components/ui/dialog.d.ts +20 -0
  296. package/dist/components/ui/dialog.js +147 -0
  297. package/dist/components/ui/direction.cjs +15 -0
  298. package/dist/components/ui/direction.d.cts +10 -0
  299. package/dist/components/ui/direction.d.ts +10 -0
  300. package/dist/components/ui/direction.js +15 -0
  301. package/dist/components/ui/drawer.cjs +128 -0
  302. package/dist/components/ui/drawer.d.cts +16 -0
  303. package/dist/components/ui/drawer.d.ts +16 -0
  304. package/dist/components/ui/drawer.js +128 -0
  305. package/dist/components/ui/dropdown-menu.cjs +232 -0
  306. package/dist/components/ui/dropdown-menu.d.cts +28 -0
  307. package/dist/components/ui/dropdown-menu.d.ts +28 -0
  308. package/dist/components/ui/dropdown-menu.js +232 -0
  309. package/dist/components/ui/empty.cjs +102 -0
  310. package/dist/components/ui/empty.d.cts +15 -0
  311. package/dist/components/ui/empty.d.ts +15 -0
  312. package/dist/components/ui/empty.js +102 -0
  313. package/dist/components/ui/field.cjs +230 -0
  314. package/dist/components/ui/field.d.cts +30 -0
  315. package/dist/components/ui/field.d.ts +30 -0
  316. package/dist/components/ui/field.js +230 -0
  317. package/dist/components/ui/form.cjs +121 -0
  318. package/dist/components/ui/form.d.cts +27 -0
  319. package/dist/components/ui/form.d.ts +27 -0
  320. package/dist/components/ui/form.js +121 -0
  321. package/dist/components/ui/hover-card.cjs +38 -0
  322. package/dist/components/ui/hover-card.d.cts +9 -0
  323. package/dist/components/ui/hover-card.d.ts +9 -0
  324. package/dist/components/ui/hover-card.js +38 -0
  325. package/dist/components/ui/input-group.cjs +154 -0
  326. package/dist/components/ui/input-group.d.cts +20 -0
  327. package/dist/components/ui/input-group.d.ts +20 -0
  328. package/dist/components/ui/input-group.js +154 -0
  329. package/dist/components/ui/input-otp.cjs +67 -0
  330. package/dist/components/ui/input-otp.d.cts +14 -0
  331. package/dist/components/ui/input-otp.d.ts +14 -0
  332. package/dist/components/ui/input-otp.js +67 -0
  333. package/dist/components/ui/input.cjs +23 -0
  334. package/dist/components/ui/input.d.cts +6 -0
  335. package/dist/components/ui/input.d.ts +6 -0
  336. package/dist/components/ui/input.js +23 -0
  337. package/dist/components/ui/item.cjs +187 -0
  338. package/dist/components/ui/item.d.cts +28 -0
  339. package/dist/components/ui/item.d.ts +28 -0
  340. package/dist/components/ui/item.js +187 -0
  341. package/dist/components/ui/kbd.cjs +31 -0
  342. package/dist/components/ui/kbd.d.cts +6 -0
  343. package/dist/components/ui/kbd.d.ts +6 -0
  344. package/dist/components/ui/kbd.js +31 -0
  345. package/dist/components/ui/label.cjs +22 -0
  346. package/dist/components/ui/label.d.cts +7 -0
  347. package/dist/components/ui/label.d.ts +7 -0
  348. package/dist/components/ui/label.js +22 -0
  349. package/dist/components/ui/menubar.cjs +252 -0
  350. package/dist/components/ui/menubar.d.cts +29 -0
  351. package/dist/components/ui/menubar.d.ts +29 -0
  352. package/dist/components/ui/menubar.js +252 -0
  353. package/dist/components/ui/native-select.cjs +63 -0
  354. package/dist/components/ui/native-select.d.cts +10 -0
  355. package/dist/components/ui/native-select.d.ts +10 -0
  356. package/dist/components/ui/native-select.js +63 -0
  357. package/dist/components/ui/navigation-menu.cjs +170 -0
  358. package/dist/components/ui/navigation-menu.d.cts +18 -0
  359. package/dist/components/ui/navigation-menu.d.ts +18 -0
  360. package/dist/components/ui/navigation-menu.js +170 -0
  361. package/dist/components/ui/pagination.cjs +122 -0
  362. package/dist/components/ui/pagination.d.cts +18 -0
  363. package/dist/components/ui/pagination.d.ts +18 -0
  364. package/dist/components/ui/pagination.js +122 -0
  365. package/dist/components/ui/plugin-safety-disclaimer.cjs +26 -0
  366. package/dist/components/ui/plugin-safety-disclaimer.d.cts +8 -0
  367. package/dist/components/ui/plugin-safety-disclaimer.d.ts +8 -0
  368. package/dist/components/ui/plugin-safety-disclaimer.js +26 -0
  369. package/dist/components/ui/popover.cjs +80 -0
  370. package/dist/components/ui/popover.d.cts +13 -0
  371. package/dist/components/ui/popover.d.ts +13 -0
  372. package/dist/components/ui/popover.js +80 -0
  373. package/dist/components/ui/progress.cjs +32 -0
  374. package/dist/components/ui/progress.d.cts +7 -0
  375. package/dist/components/ui/progress.d.ts +7 -0
  376. package/dist/components/ui/progress.js +32 -0
  377. package/dist/components/ui/radio-group.cjs +45 -0
  378. package/dist/components/ui/radio-group.d.cts +8 -0
  379. package/dist/components/ui/radio-group.d.ts +8 -0
  380. package/dist/components/ui/radio-group.js +45 -0
  381. package/dist/components/ui/resizable.cjs +47 -0
  382. package/dist/components/ui/resizable.d.cts +10 -0
  383. package/dist/components/ui/resizable.d.ts +10 -0
  384. package/dist/components/ui/resizable.js +47 -0
  385. package/dist/components/ui/scroll-area.cjs +60 -0
  386. package/dist/components/ui/scroll-area.d.cts +8 -0
  387. package/dist/components/ui/scroll-area.d.ts +8 -0
  388. package/dist/components/ui/scroll-area.js +60 -0
  389. package/dist/components/ui/search-input.cjs +39 -0
  390. package/dist/components/ui/search-input.d.cts +12 -0
  391. package/dist/components/ui/search-input.d.ts +12 -0
  392. package/dist/components/ui/search-input.js +39 -0
  393. package/dist/components/ui/select.cjs +179 -0
  394. package/dist/components/ui/select.d.cts +18 -0
  395. package/dist/components/ui/select.d.ts +18 -0
  396. package/dist/components/ui/select.js +179 -0
  397. package/dist/components/ui/separator.cjs +27 -0
  398. package/dist/components/ui/separator.d.cts +7 -0
  399. package/dist/components/ui/separator.d.ts +7 -0
  400. package/dist/components/ui/separator.js +27 -0
  401. package/dist/components/ui/sheet.cjs +129 -0
  402. package/dist/components/ui/sheet.d.cts +18 -0
  403. package/dist/components/ui/sheet.d.ts +18 -0
  404. package/dist/components/ui/sheet.js +129 -0
  405. package/dist/components/ui/sidebar.cjs +649 -0
  406. package/dist/components/ui/sidebar.d.cts +74 -0
  407. package/dist/components/ui/sidebar.d.ts +74 -0
  408. package/dist/components/ui/sidebar.js +649 -0
  409. package/dist/components/ui/skeleton.cjs +15 -0
  410. package/dist/components/ui/skeleton.d.cts +5 -0
  411. package/dist/components/ui/skeleton.d.ts +5 -0
  412. package/dist/components/ui/skeleton.js +15 -0
  413. package/dist/components/ui/slider.cjs +68 -0
  414. package/dist/components/ui/slider.d.cts +7 -0
  415. package/dist/components/ui/slider.d.ts +7 -0
  416. package/dist/components/ui/slider.js +68 -0
  417. package/dist/components/ui/sonner.cjs +38 -0
  418. package/dist/components/ui/sonner.d.cts +6 -0
  419. package/dist/components/ui/sonner.d.ts +6 -0
  420. package/dist/components/ui/sonner.js +38 -0
  421. package/dist/components/ui/spinner.cjs +17 -0
  422. package/dist/components/ui/spinner.d.cts +5 -0
  423. package/dist/components/ui/spinner.d.ts +5 -0
  424. package/dist/components/ui/spinner.js +17 -0
  425. package/dist/components/ui/switch.cjs +33 -0
  426. package/dist/components/ui/switch.d.cts +9 -0
  427. package/dist/components/ui/switch.d.ts +9 -0
  428. package/dist/components/ui/switch.js +33 -0
  429. package/dist/components/ui/table.cjs +115 -0
  430. package/dist/components/ui/table.d.cts +13 -0
  431. package/dist/components/ui/table.d.ts +13 -0
  432. package/dist/components/ui/table.js +115 -0
  433. package/dist/components/ui/tabs.cjs +92 -0
  434. package/dist/components/ui/tabs.d.cts +15 -0
  435. package/dist/components/ui/tabs.d.ts +15 -0
  436. package/dist/components/ui/tabs.js +92 -0
  437. package/dist/components/ui/textarea.cjs +20 -0
  438. package/dist/components/ui/textarea.d.cts +6 -0
  439. package/dist/components/ui/textarea.d.ts +6 -0
  440. package/dist/components/ui/textarea.js +20 -0
  441. package/dist/components/ui/toggle-group.cjs +69 -0
  442. package/dist/components/ui/toggle-group.d.cts +13 -0
  443. package/dist/components/ui/toggle-group.d.ts +13 -0
  444. package/dist/components/ui/toggle-group.js +69 -0
  445. package/dist/components/ui/toggle.cjs +44 -0
  446. package/dist/components/ui/toggle.d.cts +13 -0
  447. package/dist/components/ui/toggle.d.ts +13 -0
  448. package/dist/components/ui/toggle.js +44 -0
  449. package/dist/components/ui/tooltip.cjs +56 -0
  450. package/dist/components/ui/tooltip.d.cts +10 -0
  451. package/dist/components/ui/tooltip.d.ts +10 -0
  452. package/dist/components/ui/tooltip.js +56 -0
  453. package/dist/components/ui/tree.cjs +131 -0
  454. package/dist/components/ui/tree.d.cts +35 -0
  455. package/dist/components/ui/tree.d.ts +35 -0
  456. package/dist/components/ui/tree.js +131 -0
  457. package/dist/hooks/use-mobile.cjs +16 -0
  458. package/dist/hooks/use-mobile.d.cts +3 -0
  459. package/dist/hooks/use-mobile.d.ts +3 -0
  460. package/dist/hooks/use-mobile.js +16 -0
  461. package/dist/index.cjs +121 -15527
  462. package/dist/index.d.cts +145 -2246
  463. package/dist/index.d.ts +145 -2246
  464. package/dist/index.js +118 -14982
  465. package/dist/lib/utils.cjs +8 -0
  466. package/dist/lib/utils.d.cts +5 -0
  467. package/dist/lib/utils.d.ts +5 -0
  468. package/dist/lib/utils.js +8 -0
  469. package/dist/styles/globals.css +438 -0
  470. package/dist/styles/plugin.css +4 -0
  471. package/dist/theme/apply-theme.cjs +221 -0
  472. package/dist/theme/apply-theme.d.cts +13 -0
  473. package/dist/theme/apply-theme.d.ts +13 -0
  474. package/dist/theme/apply-theme.js +221 -0
  475. package/dist/theme/index.cjs +2 -0
  476. package/dist/theme/index.d.cts +2 -0
  477. package/dist/theme/index.d.ts +2 -0
  478. package/dist/theme/index.js +2 -0
  479. package/dist/theme/types.cjs +90 -0
  480. package/dist/theme/types.d.cts +133 -0
  481. package/dist/theme/types.d.ts +133 -0
  482. package/dist/theme/types.js +90 -0
  483. package/package.json +22 -5
  484. package/tsup.config.ts +18 -0
@@ -0,0 +1,246 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
2
+ var _jsxruntime = require('react/jsx-runtime');
3
+ var _reactusecontrollablestate = require('@radix-ui/react-use-controllable-state');
4
+
5
+
6
+ var _voiceselectoraccent = require('./voice-selector-accent');
7
+ var _button = require('../ui/button');
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+ var _command = require('../ui/command');
19
+
20
+
21
+
22
+
23
+
24
+ var _dialog = require('../ui/dialog');
25
+ var _spinner = require('../ui/spinner');
26
+ var _utils = require('../../lib/utils');
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+ var _lucidereact = require('lucide-react');
38
+ var _react = require('react');
39
+ const VoiceSelectorContext = _react.createContext.call(void 0,
40
+ null
41
+ );
42
+ const useVoiceSelector = () => {
43
+ const context = _react.use.call(void 0, VoiceSelectorContext);
44
+ if (!context) {
45
+ throw new Error(
46
+ "VoiceSelector components must be used within VoiceSelector"
47
+ );
48
+ }
49
+ return context;
50
+ };
51
+ const VoiceSelector = ({
52
+ value: valueProp,
53
+ defaultValue,
54
+ onValueChange,
55
+ open: openProp,
56
+ defaultOpen = false,
57
+ onOpenChange,
58
+ children,
59
+ ...props
60
+ }) => {
61
+ const [value, setValue] = _reactusecontrollablestate.useControllableState.call(void 0, {
62
+ defaultProp: defaultValue,
63
+ onChange: onValueChange,
64
+ prop: valueProp
65
+ });
66
+ const [open, setOpen] = _reactusecontrollablestate.useControllableState.call(void 0, {
67
+ defaultProp: defaultOpen,
68
+ onChange: onOpenChange,
69
+ prop: openProp
70
+ });
71
+ const voiceSelectorContext = _react.useMemo.call(void 0,
72
+ () => ({ open, setOpen, setValue, value }),
73
+ [value, setValue, open, setOpen]
74
+ );
75
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, VoiceSelectorContext.Provider, { value: voiceSelectorContext, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _dialog.Dialog, { onOpenChange: setOpen, open, ...props, children }) });
76
+ };
77
+ const VoiceSelectorTrigger = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _dialog.DialogTrigger, { ...props });
78
+ const VoiceSelectorContent = ({
79
+ className,
80
+ children,
81
+ title = "Voice Selector",
82
+ ...props
83
+ }) => /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
84
+ _dialog.DialogContent,
85
+ {
86
+ "aria-describedby": void 0,
87
+ className: _utils.cn.call(void 0, "p-0", className),
88
+ ...props,
89
+ children: [
90
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _dialog.DialogTitle, { className: "sr-only", children: title }),
91
+ /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.Command, { className: "**:data-[slot=command-input-wrapper]:h-auto", children })
92
+ ]
93
+ }
94
+ );
95
+ const VoiceSelectorDialog = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandDialog, { ...props });
96
+ const VoiceSelectorInput = ({
97
+ className,
98
+ ...props
99
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandInput, { className: _utils.cn.call(void 0, "h-auto py-3.5", className), ...props });
100
+ const VoiceSelectorList = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandList, { ...props });
101
+ const VoiceSelectorEmpty = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandEmpty, { ...props });
102
+ const VoiceSelectorGroup = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandGroup, { ...props });
103
+ const VoiceSelectorItem = ({
104
+ className,
105
+ ...props
106
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandItem, { className: _utils.cn.call(void 0, "px-4 py-2", className), ...props });
107
+ const VoiceSelectorShortcut = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandShortcut, { ...props });
108
+ const VoiceSelectorSeparator = (props) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _command.CommandSeparator, { ...props });
109
+ const VoiceSelectorGender = ({
110
+ className,
111
+ value,
112
+ children,
113
+ ...props
114
+ }) => {
115
+ let icon = null;
116
+ switch (value) {
117
+ case "male": {
118
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.MarsIcon, { className: "size-4" });
119
+ break;
120
+ }
121
+ case "female": {
122
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.VenusIcon, { className: "size-4" });
123
+ break;
124
+ }
125
+ case "transgender": {
126
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.TransgenderIcon, { className: "size-4" });
127
+ break;
128
+ }
129
+ case "androgyne": {
130
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.MarsStrokeIcon, { className: "size-4" });
131
+ break;
132
+ }
133
+ case "non-binary": {
134
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.NonBinaryIcon, { className: "size-4" });
135
+ break;
136
+ }
137
+ case "intersex": {
138
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.VenusAndMarsIcon, { className: "size-4" });
139
+ break;
140
+ }
141
+ default: {
142
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.CircleSmallIcon, { className: "size-4" });
143
+ }
144
+ }
145
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _utils.cn.call(void 0, "text-muted-foreground text-xs", className), ...props, children: _nullishCoalesce(children, () => ( icon)) });
146
+ };
147
+ const VoiceSelectorAge = ({
148
+ className,
149
+ ...props
150
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
151
+ "span",
152
+ {
153
+ className: _utils.cn.call(void 0, "text-muted-foreground text-xs tabular-nums", className),
154
+ ...props
155
+ }
156
+ );
157
+ const VoiceSelectorName = ({
158
+ className,
159
+ ...props
160
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
161
+ "span",
162
+ {
163
+ className: _utils.cn.call(void 0, "flex-1 truncate text-left font-medium", className),
164
+ ...props
165
+ }
166
+ );
167
+ const VoiceSelectorDescription = ({
168
+ className,
169
+ ...props
170
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: _utils.cn.call(void 0, "text-muted-foreground text-xs", className), ...props });
171
+ const VoiceSelectorAttributes = ({
172
+ className,
173
+ children,
174
+ ...props
175
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: _utils.cn.call(void 0, "flex items-center text-xs", className), ...props, children });
176
+ const VoiceSelectorBullet = ({
177
+ className,
178
+ ...props
179
+ }) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
180
+ "span",
181
+ {
182
+ "aria-hidden": "true",
183
+ className: _utils.cn.call(void 0, "select-none text-border", className),
184
+ ...props,
185
+ children: "\u2022"
186
+ }
187
+ );
188
+ const VoiceSelectorPreview = ({
189
+ className,
190
+ playing,
191
+ loading,
192
+ onPlay,
193
+ onClick,
194
+ ...props
195
+ }) => {
196
+ const handleClick = _react.useCallback.call(void 0,
197
+ (event) => {
198
+ event.stopPropagation();
199
+ _optionalChain([onClick, 'optionalCall', _ => _(event)]);
200
+ _optionalChain([onPlay, 'optionalCall', _2 => _2()]);
201
+ },
202
+ [onClick, onPlay]
203
+ );
204
+ let icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.PlayIcon, { className: "size-3" });
205
+ if (loading) {
206
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _spinner.Spinner, { className: "size-3" });
207
+ } else if (playing) {
208
+ icon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _lucidereact.PauseIcon, { className: "size-3" });
209
+ }
210
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
211
+ _button.Button,
212
+ {
213
+ "aria-label": playing ? "Pause preview" : "Play preview",
214
+ className: _utils.cn.call(void 0, "size-6", className),
215
+ disabled: loading,
216
+ onClick: handleClick,
217
+ size: "icon-sm",
218
+ type: "button",
219
+ variant: "outline",
220
+ ...props,
221
+ children: icon
222
+ }
223
+ );
224
+ };
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+ exports.VoiceSelector = VoiceSelector; exports.VoiceSelectorAccent = _voiceselectoraccent.VoiceSelectorAccent; exports.VoiceSelectorAge = VoiceSelectorAge; exports.VoiceSelectorAttributes = VoiceSelectorAttributes; exports.VoiceSelectorBullet = VoiceSelectorBullet; exports.VoiceSelectorContent = VoiceSelectorContent; exports.VoiceSelectorDescription = VoiceSelectorDescription; exports.VoiceSelectorDialog = VoiceSelectorDialog; exports.VoiceSelectorEmpty = VoiceSelectorEmpty; exports.VoiceSelectorGender = VoiceSelectorGender; exports.VoiceSelectorGroup = VoiceSelectorGroup; exports.VoiceSelectorInput = VoiceSelectorInput; exports.VoiceSelectorItem = VoiceSelectorItem; exports.VoiceSelectorList = VoiceSelectorList; exports.VoiceSelectorName = VoiceSelectorName; exports.VoiceSelectorPreview = VoiceSelectorPreview; exports.VoiceSelectorSeparator = VoiceSelectorSeparator; exports.VoiceSelectorShortcut = VoiceSelectorShortcut; exports.VoiceSelectorTrigger = VoiceSelectorTrigger; exports.useVoiceSelector = useVoiceSelector;
@@ -0,0 +1,66 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ComponentProps, ReactNode } from 'react';
3
+ export { VoiceSelectorAccent, VoiceSelectorAccentProps } from './voice-selector-accent.cjs';
4
+ import { CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from '../ui/command.cjs';
5
+ import { Dialog, DialogContent, DialogTrigger } from '../ui/dialog.cjs';
6
+ import 'cmdk';
7
+ import 'radix-ui';
8
+
9
+ interface VoiceSelectorContextValue {
10
+ value: string | undefined;
11
+ setValue: (value: string | undefined) => void;
12
+ open: boolean;
13
+ setOpen: (open: boolean) => void;
14
+ }
15
+ declare const useVoiceSelector: () => VoiceSelectorContextValue;
16
+ type VoiceSelectorProps = ComponentProps<typeof Dialog> & {
17
+ value?: string;
18
+ defaultValue?: string;
19
+ onValueChange?: (value: string | undefined) => void;
20
+ };
21
+ declare const VoiceSelector: ({ value: valueProp, defaultValue, onValueChange, open: openProp, defaultOpen, onOpenChange, children, ...props }: VoiceSelectorProps) => react_jsx_runtime.JSX.Element;
22
+ type VoiceSelectorTriggerProps = ComponentProps<typeof DialogTrigger>;
23
+ declare const VoiceSelectorTrigger: (props: VoiceSelectorTriggerProps) => react_jsx_runtime.JSX.Element;
24
+ type VoiceSelectorContentProps = ComponentProps<typeof DialogContent> & {
25
+ title?: ReactNode;
26
+ };
27
+ declare const VoiceSelectorContent: ({ className, children, title, ...props }: VoiceSelectorContentProps) => react_jsx_runtime.JSX.Element;
28
+ type VoiceSelectorDialogProps = ComponentProps<typeof CommandDialog>;
29
+ declare const VoiceSelectorDialog: (props: VoiceSelectorDialogProps) => react_jsx_runtime.JSX.Element;
30
+ type VoiceSelectorInputProps = ComponentProps<typeof CommandInput>;
31
+ declare const VoiceSelectorInput: ({ className, ...props }: VoiceSelectorInputProps) => react_jsx_runtime.JSX.Element;
32
+ type VoiceSelectorListProps = ComponentProps<typeof CommandList>;
33
+ declare const VoiceSelectorList: (props: VoiceSelectorListProps) => react_jsx_runtime.JSX.Element;
34
+ type VoiceSelectorEmptyProps = ComponentProps<typeof CommandEmpty>;
35
+ declare const VoiceSelectorEmpty: (props: VoiceSelectorEmptyProps) => react_jsx_runtime.JSX.Element;
36
+ type VoiceSelectorGroupProps = ComponentProps<typeof CommandGroup>;
37
+ declare const VoiceSelectorGroup: (props: VoiceSelectorGroupProps) => react_jsx_runtime.JSX.Element;
38
+ type VoiceSelectorItemProps = ComponentProps<typeof CommandItem>;
39
+ declare const VoiceSelectorItem: ({ className, ...props }: VoiceSelectorItemProps) => react_jsx_runtime.JSX.Element;
40
+ type VoiceSelectorShortcutProps = ComponentProps<typeof CommandShortcut>;
41
+ declare const VoiceSelectorShortcut: (props: VoiceSelectorShortcutProps) => react_jsx_runtime.JSX.Element;
42
+ type VoiceSelectorSeparatorProps = ComponentProps<typeof CommandSeparator>;
43
+ declare const VoiceSelectorSeparator: (props: VoiceSelectorSeparatorProps) => react_jsx_runtime.JSX.Element;
44
+ type VoiceSelectorGenderProps = ComponentProps<"span"> & {
45
+ value?: "male" | "female" | "transgender" | "androgyne" | "non-binary" | "intersex";
46
+ };
47
+ declare const VoiceSelectorGender: ({ className, value, children, ...props }: VoiceSelectorGenderProps) => react_jsx_runtime.JSX.Element;
48
+
49
+ type VoiceSelectorAgeProps = ComponentProps<"span">;
50
+ declare const VoiceSelectorAge: ({ className, ...props }: VoiceSelectorAgeProps) => react_jsx_runtime.JSX.Element;
51
+ type VoiceSelectorNameProps = ComponentProps<"span">;
52
+ declare const VoiceSelectorName: ({ className, ...props }: VoiceSelectorNameProps) => react_jsx_runtime.JSX.Element;
53
+ type VoiceSelectorDescriptionProps = ComponentProps<"span">;
54
+ declare const VoiceSelectorDescription: ({ className, ...props }: VoiceSelectorDescriptionProps) => react_jsx_runtime.JSX.Element;
55
+ type VoiceSelectorAttributesProps = ComponentProps<"div">;
56
+ declare const VoiceSelectorAttributes: ({ className, children, ...props }: VoiceSelectorAttributesProps) => react_jsx_runtime.JSX.Element;
57
+ type VoiceSelectorBulletProps = ComponentProps<"span">;
58
+ declare const VoiceSelectorBullet: ({ className, ...props }: VoiceSelectorBulletProps) => react_jsx_runtime.JSX.Element;
59
+ type VoiceSelectorPreviewProps = Omit<ComponentProps<"button">, "children"> & {
60
+ playing?: boolean;
61
+ loading?: boolean;
62
+ onPlay?: () => void;
63
+ };
64
+ declare const VoiceSelectorPreview: ({ className, playing, loading, onPlay, onClick, ...props }: VoiceSelectorPreviewProps) => react_jsx_runtime.JSX.Element;
65
+
66
+ export { VoiceSelector, VoiceSelectorAge, type VoiceSelectorAgeProps, VoiceSelectorAttributes, type VoiceSelectorAttributesProps, VoiceSelectorBullet, type VoiceSelectorBulletProps, VoiceSelectorContent, type VoiceSelectorContentProps, VoiceSelectorDescription, type VoiceSelectorDescriptionProps, VoiceSelectorDialog, type VoiceSelectorDialogProps, VoiceSelectorEmpty, type VoiceSelectorEmptyProps, VoiceSelectorGender, type VoiceSelectorGenderProps, VoiceSelectorGroup, type VoiceSelectorGroupProps, VoiceSelectorInput, type VoiceSelectorInputProps, VoiceSelectorItem, type VoiceSelectorItemProps, VoiceSelectorList, type VoiceSelectorListProps, VoiceSelectorName, type VoiceSelectorNameProps, VoiceSelectorPreview, type VoiceSelectorPreviewProps, type VoiceSelectorProps, VoiceSelectorSeparator, type VoiceSelectorSeparatorProps, VoiceSelectorShortcut, type VoiceSelectorShortcutProps, VoiceSelectorTrigger, type VoiceSelectorTriggerProps, useVoiceSelector };
@@ -0,0 +1,66 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { ComponentProps, ReactNode } from 'react';
3
+ export { VoiceSelectorAccent, VoiceSelectorAccentProps } from './voice-selector-accent.js';
4
+ import { CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut } from '../ui/command.js';
5
+ import { Dialog, DialogContent, DialogTrigger } from '../ui/dialog.js';
6
+ import 'cmdk';
7
+ import 'radix-ui';
8
+
9
+ interface VoiceSelectorContextValue {
10
+ value: string | undefined;
11
+ setValue: (value: string | undefined) => void;
12
+ open: boolean;
13
+ setOpen: (open: boolean) => void;
14
+ }
15
+ declare const useVoiceSelector: () => VoiceSelectorContextValue;
16
+ type VoiceSelectorProps = ComponentProps<typeof Dialog> & {
17
+ value?: string;
18
+ defaultValue?: string;
19
+ onValueChange?: (value: string | undefined) => void;
20
+ };
21
+ declare const VoiceSelector: ({ value: valueProp, defaultValue, onValueChange, open: openProp, defaultOpen, onOpenChange, children, ...props }: VoiceSelectorProps) => react_jsx_runtime.JSX.Element;
22
+ type VoiceSelectorTriggerProps = ComponentProps<typeof DialogTrigger>;
23
+ declare const VoiceSelectorTrigger: (props: VoiceSelectorTriggerProps) => react_jsx_runtime.JSX.Element;
24
+ type VoiceSelectorContentProps = ComponentProps<typeof DialogContent> & {
25
+ title?: ReactNode;
26
+ };
27
+ declare const VoiceSelectorContent: ({ className, children, title, ...props }: VoiceSelectorContentProps) => react_jsx_runtime.JSX.Element;
28
+ type VoiceSelectorDialogProps = ComponentProps<typeof CommandDialog>;
29
+ declare const VoiceSelectorDialog: (props: VoiceSelectorDialogProps) => react_jsx_runtime.JSX.Element;
30
+ type VoiceSelectorInputProps = ComponentProps<typeof CommandInput>;
31
+ declare const VoiceSelectorInput: ({ className, ...props }: VoiceSelectorInputProps) => react_jsx_runtime.JSX.Element;
32
+ type VoiceSelectorListProps = ComponentProps<typeof CommandList>;
33
+ declare const VoiceSelectorList: (props: VoiceSelectorListProps) => react_jsx_runtime.JSX.Element;
34
+ type VoiceSelectorEmptyProps = ComponentProps<typeof CommandEmpty>;
35
+ declare const VoiceSelectorEmpty: (props: VoiceSelectorEmptyProps) => react_jsx_runtime.JSX.Element;
36
+ type VoiceSelectorGroupProps = ComponentProps<typeof CommandGroup>;
37
+ declare const VoiceSelectorGroup: (props: VoiceSelectorGroupProps) => react_jsx_runtime.JSX.Element;
38
+ type VoiceSelectorItemProps = ComponentProps<typeof CommandItem>;
39
+ declare const VoiceSelectorItem: ({ className, ...props }: VoiceSelectorItemProps) => react_jsx_runtime.JSX.Element;
40
+ type VoiceSelectorShortcutProps = ComponentProps<typeof CommandShortcut>;
41
+ declare const VoiceSelectorShortcut: (props: VoiceSelectorShortcutProps) => react_jsx_runtime.JSX.Element;
42
+ type VoiceSelectorSeparatorProps = ComponentProps<typeof CommandSeparator>;
43
+ declare const VoiceSelectorSeparator: (props: VoiceSelectorSeparatorProps) => react_jsx_runtime.JSX.Element;
44
+ type VoiceSelectorGenderProps = ComponentProps<"span"> & {
45
+ value?: "male" | "female" | "transgender" | "androgyne" | "non-binary" | "intersex";
46
+ };
47
+ declare const VoiceSelectorGender: ({ className, value, children, ...props }: VoiceSelectorGenderProps) => react_jsx_runtime.JSX.Element;
48
+
49
+ type VoiceSelectorAgeProps = ComponentProps<"span">;
50
+ declare const VoiceSelectorAge: ({ className, ...props }: VoiceSelectorAgeProps) => react_jsx_runtime.JSX.Element;
51
+ type VoiceSelectorNameProps = ComponentProps<"span">;
52
+ declare const VoiceSelectorName: ({ className, ...props }: VoiceSelectorNameProps) => react_jsx_runtime.JSX.Element;
53
+ type VoiceSelectorDescriptionProps = ComponentProps<"span">;
54
+ declare const VoiceSelectorDescription: ({ className, ...props }: VoiceSelectorDescriptionProps) => react_jsx_runtime.JSX.Element;
55
+ type VoiceSelectorAttributesProps = ComponentProps<"div">;
56
+ declare const VoiceSelectorAttributes: ({ className, children, ...props }: VoiceSelectorAttributesProps) => react_jsx_runtime.JSX.Element;
57
+ type VoiceSelectorBulletProps = ComponentProps<"span">;
58
+ declare const VoiceSelectorBullet: ({ className, ...props }: VoiceSelectorBulletProps) => react_jsx_runtime.JSX.Element;
59
+ type VoiceSelectorPreviewProps = Omit<ComponentProps<"button">, "children"> & {
60
+ playing?: boolean;
61
+ loading?: boolean;
62
+ onPlay?: () => void;
63
+ };
64
+ declare const VoiceSelectorPreview: ({ className, playing, loading, onPlay, onClick, ...props }: VoiceSelectorPreviewProps) => react_jsx_runtime.JSX.Element;
65
+
66
+ export { VoiceSelector, VoiceSelectorAge, type VoiceSelectorAgeProps, VoiceSelectorAttributes, type VoiceSelectorAttributesProps, VoiceSelectorBullet, type VoiceSelectorBulletProps, VoiceSelectorContent, type VoiceSelectorContentProps, VoiceSelectorDescription, type VoiceSelectorDescriptionProps, VoiceSelectorDialog, type VoiceSelectorDialogProps, VoiceSelectorEmpty, type VoiceSelectorEmptyProps, VoiceSelectorGender, type VoiceSelectorGenderProps, VoiceSelectorGroup, type VoiceSelectorGroupProps, VoiceSelectorInput, type VoiceSelectorInputProps, VoiceSelectorItem, type VoiceSelectorItemProps, VoiceSelectorList, type VoiceSelectorListProps, VoiceSelectorName, type VoiceSelectorNameProps, VoiceSelectorPreview, type VoiceSelectorPreviewProps, type VoiceSelectorProps, VoiceSelectorSeparator, type VoiceSelectorSeparatorProps, VoiceSelectorShortcut, type VoiceSelectorShortcutProps, VoiceSelectorTrigger, type VoiceSelectorTriggerProps, useVoiceSelector };
@@ -0,0 +1,246 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { useControllableState } from "@radix-ui/react-use-controllable-state";
4
+ import {
5
+ VoiceSelectorAccent
6
+ } from "./voice-selector-accent";
7
+ import { Button } from "../ui/button";
8
+ import {
9
+ Command,
10
+ CommandDialog,
11
+ CommandEmpty,
12
+ CommandGroup,
13
+ CommandInput,
14
+ CommandItem,
15
+ CommandList,
16
+ CommandSeparator,
17
+ CommandShortcut
18
+ } from "../ui/command";
19
+ import {
20
+ Dialog,
21
+ DialogContent,
22
+ DialogTitle,
23
+ DialogTrigger
24
+ } from "../ui/dialog";
25
+ import { Spinner } from "../ui/spinner";
26
+ import { cn } from "../../lib/utils";
27
+ import {
28
+ CircleSmallIcon,
29
+ MarsIcon,
30
+ MarsStrokeIcon,
31
+ NonBinaryIcon,
32
+ PauseIcon,
33
+ PlayIcon,
34
+ TransgenderIcon,
35
+ VenusAndMarsIcon,
36
+ VenusIcon
37
+ } from "lucide-react";
38
+ import { createContext, useCallback, use, useMemo } from "react";
39
+ const VoiceSelectorContext = createContext(
40
+ null
41
+ );
42
+ const useVoiceSelector = () => {
43
+ const context = use(VoiceSelectorContext);
44
+ if (!context) {
45
+ throw new Error(
46
+ "VoiceSelector components must be used within VoiceSelector"
47
+ );
48
+ }
49
+ return context;
50
+ };
51
+ const VoiceSelector = ({
52
+ value: valueProp,
53
+ defaultValue,
54
+ onValueChange,
55
+ open: openProp,
56
+ defaultOpen = false,
57
+ onOpenChange,
58
+ children,
59
+ ...props
60
+ }) => {
61
+ const [value, setValue] = useControllableState({
62
+ defaultProp: defaultValue,
63
+ onChange: onValueChange,
64
+ prop: valueProp
65
+ });
66
+ const [open, setOpen] = useControllableState({
67
+ defaultProp: defaultOpen,
68
+ onChange: onOpenChange,
69
+ prop: openProp
70
+ });
71
+ const voiceSelectorContext = useMemo(
72
+ () => ({ open, setOpen, setValue, value }),
73
+ [value, setValue, open, setOpen]
74
+ );
75
+ return /* @__PURE__ */ jsx(VoiceSelectorContext.Provider, { value: voiceSelectorContext, children: /* @__PURE__ */ jsx(Dialog, { onOpenChange: setOpen, open, ...props, children }) });
76
+ };
77
+ const VoiceSelectorTrigger = (props) => /* @__PURE__ */ jsx(DialogTrigger, { ...props });
78
+ const VoiceSelectorContent = ({
79
+ className,
80
+ children,
81
+ title = "Voice Selector",
82
+ ...props
83
+ }) => /* @__PURE__ */ jsxs(
84
+ DialogContent,
85
+ {
86
+ "aria-describedby": void 0,
87
+ className: cn("p-0", className),
88
+ ...props,
89
+ children: [
90
+ /* @__PURE__ */ jsx(DialogTitle, { className: "sr-only", children: title }),
91
+ /* @__PURE__ */ jsx(Command, { className: "**:data-[slot=command-input-wrapper]:h-auto", children })
92
+ ]
93
+ }
94
+ );
95
+ const VoiceSelectorDialog = (props) => /* @__PURE__ */ jsx(CommandDialog, { ...props });
96
+ const VoiceSelectorInput = ({
97
+ className,
98
+ ...props
99
+ }) => /* @__PURE__ */ jsx(CommandInput, { className: cn("h-auto py-3.5", className), ...props });
100
+ const VoiceSelectorList = (props) => /* @__PURE__ */ jsx(CommandList, { ...props });
101
+ const VoiceSelectorEmpty = (props) => /* @__PURE__ */ jsx(CommandEmpty, { ...props });
102
+ const VoiceSelectorGroup = (props) => /* @__PURE__ */ jsx(CommandGroup, { ...props });
103
+ const VoiceSelectorItem = ({
104
+ className,
105
+ ...props
106
+ }) => /* @__PURE__ */ jsx(CommandItem, { className: cn("px-4 py-2", className), ...props });
107
+ const VoiceSelectorShortcut = (props) => /* @__PURE__ */ jsx(CommandShortcut, { ...props });
108
+ const VoiceSelectorSeparator = (props) => /* @__PURE__ */ jsx(CommandSeparator, { ...props });
109
+ const VoiceSelectorGender = ({
110
+ className,
111
+ value,
112
+ children,
113
+ ...props
114
+ }) => {
115
+ let icon = null;
116
+ switch (value) {
117
+ case "male": {
118
+ icon = /* @__PURE__ */ jsx(MarsIcon, { className: "size-4" });
119
+ break;
120
+ }
121
+ case "female": {
122
+ icon = /* @__PURE__ */ jsx(VenusIcon, { className: "size-4" });
123
+ break;
124
+ }
125
+ case "transgender": {
126
+ icon = /* @__PURE__ */ jsx(TransgenderIcon, { className: "size-4" });
127
+ break;
128
+ }
129
+ case "androgyne": {
130
+ icon = /* @__PURE__ */ jsx(MarsStrokeIcon, { className: "size-4" });
131
+ break;
132
+ }
133
+ case "non-binary": {
134
+ icon = /* @__PURE__ */ jsx(NonBinaryIcon, { className: "size-4" });
135
+ break;
136
+ }
137
+ case "intersex": {
138
+ icon = /* @__PURE__ */ jsx(VenusAndMarsIcon, { className: "size-4" });
139
+ break;
140
+ }
141
+ default: {
142
+ icon = /* @__PURE__ */ jsx(CircleSmallIcon, { className: "size-4" });
143
+ }
144
+ }
145
+ return /* @__PURE__ */ jsx("span", { className: cn("text-muted-foreground text-xs", className), ...props, children: children ?? icon });
146
+ };
147
+ const VoiceSelectorAge = ({
148
+ className,
149
+ ...props
150
+ }) => /* @__PURE__ */ jsx(
151
+ "span",
152
+ {
153
+ className: cn("text-muted-foreground text-xs tabular-nums", className),
154
+ ...props
155
+ }
156
+ );
157
+ const VoiceSelectorName = ({
158
+ className,
159
+ ...props
160
+ }) => /* @__PURE__ */ jsx(
161
+ "span",
162
+ {
163
+ className: cn("flex-1 truncate text-left font-medium", className),
164
+ ...props
165
+ }
166
+ );
167
+ const VoiceSelectorDescription = ({
168
+ className,
169
+ ...props
170
+ }) => /* @__PURE__ */ jsx("span", { className: cn("text-muted-foreground text-xs", className), ...props });
171
+ const VoiceSelectorAttributes = ({
172
+ className,
173
+ children,
174
+ ...props
175
+ }) => /* @__PURE__ */ jsx("div", { className: cn("flex items-center text-xs", className), ...props, children });
176
+ const VoiceSelectorBullet = ({
177
+ className,
178
+ ...props
179
+ }) => /* @__PURE__ */ jsx(
180
+ "span",
181
+ {
182
+ "aria-hidden": "true",
183
+ className: cn("select-none text-border", className),
184
+ ...props,
185
+ children: "\u2022"
186
+ }
187
+ );
188
+ const VoiceSelectorPreview = ({
189
+ className,
190
+ playing,
191
+ loading,
192
+ onPlay,
193
+ onClick,
194
+ ...props
195
+ }) => {
196
+ const handleClick = useCallback(
197
+ (event) => {
198
+ event.stopPropagation();
199
+ onClick?.(event);
200
+ onPlay?.();
201
+ },
202
+ [onClick, onPlay]
203
+ );
204
+ let icon = /* @__PURE__ */ jsx(PlayIcon, { className: "size-3" });
205
+ if (loading) {
206
+ icon = /* @__PURE__ */ jsx(Spinner, { className: "size-3" });
207
+ } else if (playing) {
208
+ icon = /* @__PURE__ */ jsx(PauseIcon, { className: "size-3" });
209
+ }
210
+ return /* @__PURE__ */ jsx(
211
+ Button,
212
+ {
213
+ "aria-label": playing ? "Pause preview" : "Play preview",
214
+ className: cn("size-6", className),
215
+ disabled: loading,
216
+ onClick: handleClick,
217
+ size: "icon-sm",
218
+ type: "button",
219
+ variant: "outline",
220
+ ...props,
221
+ children: icon
222
+ }
223
+ );
224
+ };
225
+ export {
226
+ VoiceSelector,
227
+ VoiceSelectorAccent,
228
+ VoiceSelectorAge,
229
+ VoiceSelectorAttributes,
230
+ VoiceSelectorBullet,
231
+ VoiceSelectorContent,
232
+ VoiceSelectorDescription,
233
+ VoiceSelectorDialog,
234
+ VoiceSelectorEmpty,
235
+ VoiceSelectorGender,
236
+ VoiceSelectorGroup,
237
+ VoiceSelectorInput,
238
+ VoiceSelectorItem,
239
+ VoiceSelectorList,
240
+ VoiceSelectorName,
241
+ VoiceSelectorPreview,
242
+ VoiceSelectorSeparator,
243
+ VoiceSelectorShortcut,
244
+ VoiceSelectorTrigger,
245
+ useVoiceSelector
246
+ };