@chatsdk-dev/elements 0.0.1 → 0.1.3

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 (329) hide show
  1. package/README.md +3 -3
  2. package/dist/api-CIYPz72L.d.ts +10 -0
  3. package/dist/api-CIYPz72L.d.ts.map +1 -0
  4. package/dist/callbacks-PIvHXeEI.d.ts +24 -0
  5. package/dist/callbacks-PIvHXeEI.d.ts.map +1 -0
  6. package/dist/chat-element-CCsDDFif.js +441 -0
  7. package/dist/chat-element-CCsDDFif.js.map +1 -0
  8. package/dist/chat-element-CSpa62Te.d.ts +53 -0
  9. package/dist/chat-element-CSpa62Te.d.ts.map +1 -0
  10. package/dist/chatsdk-provider-BhlChLFd.d.ts +15 -0
  11. package/dist/chatsdk-provider-BhlChLFd.d.ts.map +1 -0
  12. package/dist/common/utils.d.ts +14 -0
  13. package/dist/common/utils.d.ts.map +1 -0
  14. package/dist/common/utils.js +26 -0
  15. package/dist/common/utils.js.map +1 -0
  16. package/dist/components/info-card.d.ts +20 -11
  17. package/dist/components/info-card.d.ts.map +1 -0
  18. package/dist/components/info-card.js +38 -1
  19. package/dist/components/info-card.js.map +1 -0
  20. package/dist/config-BigIL6TQ.js +29 -0
  21. package/dist/config-BigIL6TQ.js.map +1 -0
  22. package/dist/config-CqihvSgz.d.ts +150 -0
  23. package/dist/config-CqihvSgz.d.ts.map +1 -0
  24. package/dist/config-D_jVTH_D.d.ts +58 -0
  25. package/dist/config-D_jVTH_D.d.ts.map +1 -0
  26. package/dist/context-aSaHw-ac.d.ts +13 -0
  27. package/dist/context-aSaHw-ac.d.ts.map +1 -0
  28. package/dist/element-provider-C_nBsftD.d.ts +40 -0
  29. package/dist/element-provider-C_nBsftD.d.ts.map +1 -0
  30. package/dist/features/chat/chat-card.d.ts +5 -3
  31. package/dist/features/chat/chat-card.d.ts.map +1 -0
  32. package/dist/features/chat/chat-card.js +2 -14
  33. package/dist/features/chat/chat-element.d.ts +2 -0
  34. package/dist/features/chat/chat-element.js +2 -0
  35. package/dist/features/chat/chat-header/chat-header.d.ts +8 -4
  36. package/dist/features/chat/chat-header/chat-header.d.ts.map +1 -0
  37. package/dist/features/chat/chat-header/chat-header.js +2 -14
  38. package/dist/features/chat/chat-header/chat-menu.d.ts +5 -3
  39. package/dist/features/chat/chat-header/chat-menu.d.ts.map +1 -0
  40. package/dist/features/chat/chat-header/chat-menu.js +29 -2
  41. package/dist/features/chat/chat-header/chat-menu.js.map +1 -0
  42. package/dist/features/chat/chat-history/chat-history-empty.d.ts +5 -3
  43. package/dist/features/chat/chat-history/chat-history-empty.d.ts.map +1 -0
  44. package/dist/features/chat/chat-history/chat-history-empty.js +24 -1
  45. package/dist/features/chat/chat-history/chat-history-empty.js.map +1 -0
  46. package/dist/features/chat/chat-history/chat-history.d.ts +5 -3
  47. package/dist/features/chat/chat-history/chat-history.d.ts.map +1 -0
  48. package/dist/features/chat/chat-history/chat-history.js +2 -14
  49. package/dist/features/chat/chat-main/chat-main.d.ts +10 -0
  50. package/dist/features/chat/chat-main/chat-main.d.ts.map +1 -0
  51. package/dist/features/chat/chat-main/chat-main.js +3 -0
  52. package/dist/features/chat/chat-main/use-chat.d.ts +23 -0
  53. package/dist/features/chat/chat-main/use-chat.d.ts.map +1 -0
  54. package/dist/features/chat/chat-main/use-chat.js +3 -0
  55. package/dist/features/chat/chat-main/use-initial-messages.d.ts +22 -0
  56. package/dist/features/chat/chat-main/use-initial-messages.d.ts.map +1 -0
  57. package/dist/features/chat/chat-main/use-initial-messages.js +2 -0
  58. package/dist/features/chat/chat-prompt-input.d.ts +20 -12
  59. package/dist/features/chat/chat-prompt-input.d.ts.map +1 -0
  60. package/dist/features/chat/chat-prompt-input.js +3 -14
  61. package/dist/features/chat/chat.context.d.ts +17 -15
  62. package/dist/features/chat/chat.context.d.ts.map +1 -0
  63. package/dist/features/chat/chat.context.js +9 -12
  64. package/dist/features/chat/chat.context.js.map +1 -0
  65. package/dist/features/chat/index.d.ts +2 -14
  66. package/dist/features/chat/index.js +2 -14
  67. package/dist/features/chat/queries/query-keys.d.ts +7 -5
  68. package/dist/features/chat/queries/query-keys.d.ts.map +1 -0
  69. package/dist/features/chat/queries/query-keys.js +19 -1
  70. package/dist/features/chat/queries/query-keys.js.map +1 -0
  71. package/dist/features/chat/queries/use-create-conversation-mutation.d.ts +27 -23
  72. package/dist/features/chat/queries/use-create-conversation-mutation.d.ts.map +1 -0
  73. package/dist/features/chat/queries/use-create-conversation-mutation.js +17 -36
  74. package/dist/features/chat/queries/use-create-conversation-mutation.js.map +1 -0
  75. package/dist/features/chat/queries/use-get-chat-query.d.ts +9 -5
  76. package/dist/features/chat/queries/use-get-chat-query.d.ts.map +1 -0
  77. package/dist/features/chat/queries/use-get-chat-query.js +2 -14
  78. package/dist/features/chat/queries/use-get-conversation-query.d.ts +56 -46
  79. package/dist/features/chat/queries/use-get-conversation-query.d.ts.map +1 -0
  80. package/dist/features/chat/queries/use-get-conversation-query.js +2 -14
  81. package/dist/features/chat/queries/use-list-conversations-query.d.ts +27 -23
  82. package/dist/features/chat/queries/use-list-conversations-query.d.ts.map +1 -0
  83. package/dist/features/chat/queries/use-list-conversations-query.js +2 -14
  84. package/dist/features/chat/store.d.ts +10 -8
  85. package/dist/features/chat/store.d.ts.map +1 -0
  86. package/dist/features/chat/store.js +15 -1
  87. package/dist/features/chat/store.js.map +1 -0
  88. package/dist/features/chat/utils.d.ts +4 -2
  89. package/dist/features/chat/utils.d.ts.map +1 -0
  90. package/dist/features/chat/utils.js +15 -1
  91. package/dist/features/chat/utils.js.map +1 -0
  92. package/dist/features/data-fetching/use-api-client.d.ts +5 -3
  93. package/dist/features/data-fetching/use-api-client.d.ts.map +1 -0
  94. package/dist/features/data-fetching/use-api-client.js +2 -14
  95. package/dist/features/element/chatsdk-provider.d.ts +2 -0
  96. package/dist/features/element/chatsdk-provider.js +23 -0
  97. package/dist/features/element/chatsdk-provider.js.map +1 -0
  98. package/dist/features/element/constants.d.ts +5 -0
  99. package/dist/features/element/constants.d.ts.map +1 -0
  100. package/dist/features/element/constants.js +6 -0
  101. package/dist/features/element/constants.js.map +1 -0
  102. package/dist/features/element/element-provider.d.ts +2 -0
  103. package/dist/features/element/element-provider.js +83 -0
  104. package/dist/features/element/element-provider.js.map +1 -0
  105. package/dist/features/element/store.d.ts +2 -0
  106. package/dist/features/element/store.js +112 -0
  107. package/dist/features/element/store.js.map +1 -0
  108. package/dist/features/element/types/api.d.ts +2 -0
  109. package/dist/features/element/types/api.js +1 -0
  110. package/dist/features/element/types/callbacks.d.ts +2 -0
  111. package/dist/features/element/types/callbacks.js +1 -0
  112. package/dist/features/element/types/config.d.ts +2 -0
  113. package/dist/features/element/types/config.js +1 -0
  114. package/dist/features/element/types/context.d.ts +2 -0
  115. package/dist/features/element/types/context.js +1 -0
  116. package/dist/features/element/types/locale.d.ts +2 -0
  117. package/dist/features/element/types/locale.js +1 -0
  118. package/dist/features/element/types/theme.d.ts +2 -0
  119. package/dist/features/element/types/theme.js +1 -0
  120. package/dist/features/element/types/translations.d.ts +2 -0
  121. package/dist/features/element/types/translations.js +1 -0
  122. package/dist/features/element/use-element-config.d.ts +40 -0
  123. package/dist/features/element/use-element-config.d.ts.map +1 -0
  124. package/dist/features/element/use-element-config.js +39 -0
  125. package/dist/features/element/use-element-config.js.map +1 -0
  126. package/dist/features/element/use-merge-global-config.d.ts +20 -0
  127. package/dist/features/element/use-merge-global-config.d.ts.map +1 -0
  128. package/dist/features/element/use-merge-global-config.js +34 -0
  129. package/dist/features/element/use-merge-global-config.js.map +1 -0
  130. package/dist/features/element/utils.d.ts +2 -0
  131. package/dist/features/element/utils.js +86 -0
  132. package/dist/features/element/utils.js.map +1 -0
  133. package/dist/features/logger/logger.d.ts +2 -9
  134. package/dist/features/logger/logger.js +15 -1
  135. package/dist/features/logger/logger.js.map +1 -0
  136. package/dist/i18n/config.d.ts +2 -61
  137. package/dist/i18n/config.js +2 -1
  138. package/dist/i18n/i18next.d.ts +1382 -10
  139. package/dist/i18n/i18next.d.ts.map +1 -0
  140. package/dist/i18n/i18next.js +27 -2
  141. package/dist/i18n/i18next.js.map +1 -0
  142. package/dist/i18n/utils.d.ts +4 -3
  143. package/dist/i18n/utils.d.ts.map +1 -0
  144. package/dist/i18n/utils.js +10 -3
  145. package/dist/i18n/utils.js.map +1 -0
  146. package/dist/index.d.ts +5 -20
  147. package/dist/index.js +68 -20
  148. package/dist/index.js.map +1 -0
  149. package/dist/locale-W5Kyyi4X.d.ts +11 -0
  150. package/dist/locale-W5Kyyi4X.d.ts.map +1 -0
  151. package/dist/logger-BvmhODdq.d.ts +11 -0
  152. package/dist/logger-BvmhODdq.d.ts.map +1 -0
  153. package/dist/store-CGX9oRlE.d.ts +46 -0
  154. package/dist/store-CGX9oRlE.d.ts.map +1 -0
  155. package/dist/styles.css +1954 -1963
  156. package/dist/theme-Cb-RBWbR.d.ts +38 -0
  157. package/dist/theme-Cb-RBWbR.d.ts.map +1 -0
  158. package/package.json +18 -50
  159. package/dist/chunk-2LHKM7RD.js +0 -14
  160. package/dist/chunk-5UMYP6MD.js +0 -10
  161. package/dist/chunk-AP4MG32M.js +0 -36
  162. package/dist/chunk-CFM57HOS.js +0 -358
  163. package/dist/chunk-EGIUE7H2.js +0 -37
  164. package/dist/chunk-M5OONVIO.js +0 -90
  165. package/dist/chunk-MXTBCHYC.js +0 -31
  166. package/dist/chunk-NIC3MOMY.js +0 -55
  167. package/dist/chunk-QTRMNIG3.js +0 -83
  168. package/dist/chunk-R7G3RQLU.js +0 -36
  169. package/dist/chunk-RJG5D2TM.js +0 -113
  170. package/dist/chunk-SLJNKQ2G.js +0 -125
  171. package/dist/chunk-TDEFIW2L.js +0 -9
  172. package/dist/chunk-TDP6D7U7.js +0 -551
  173. package/dist/chunk-V2ITXC65.js +0 -24
  174. package/dist/chunk-VS55HRUS.js +0 -16
  175. package/dist/chunk-VYDYCGJL.js +0 -25
  176. package/dist/chunk-X5YUF2YM.js +0 -113
  177. package/dist/chunk-YX46JVQN.js +0 -78
  178. package/dist/chunk-YXAMLTTT.js +0 -16
  179. package/dist/chunk-YXFVHSY4.js +0 -51
  180. package/dist/chunk-ZCSZX3OI.js +0 -4
  181. package/dist/common/use-copy-to-clipboard.d.ts +0 -3
  182. package/dist/common/use-copy-to-clipboard.js +0 -33
  183. package/dist/common/utilts.d.ts +0 -8
  184. package/dist/common/utilts.js +0 -28
  185. package/dist/components/ai-elements/actions.d.ts +0 -13
  186. package/dist/components/ai-elements/actions.js +0 -42
  187. package/dist/components/ai-elements/agent.d.ts +0 -31
  188. package/dist/components/ai-elements/agent.js +0 -77
  189. package/dist/components/ai-elements/artifact.d.ts +0 -27
  190. package/dist/components/ai-elements/artifact.js +0 -108
  191. package/dist/components/ai-elements/attachments.d.ts +0 -57
  192. package/dist/components/ai-elements/attachments.js +0 -258
  193. package/dist/components/ai-elements/audio-player.d.ts +0 -33
  194. package/dist/components/ai-elements/audio-player.js +0 -199
  195. package/dist/components/ai-elements/canvas.d.ts +0 -10
  196. package/dist/components/ai-elements/canvas.js +0 -24
  197. package/dist/components/ai-elements/chain-of-thought.d.ts +0 -34
  198. package/dist/components/ai-elements/chain-of-thought.js +0 -159
  199. package/dist/components/ai-elements/checkpoint.d.ts +0 -16
  200. package/dist/components/ai-elements/checkpoint.js +0 -47
  201. package/dist/components/ai-elements/code-block.d.ts +0 -48
  202. package/dist/components/ai-elements/code-block.js +0 -1
  203. package/dist/components/ai-elements/commit.d.ts +0 -68
  204. package/dist/components/ai-elements/commit.js +0 -314
  205. package/dist/components/ai-elements/confirmation.d.ts +0 -52
  206. package/dist/components/ai-elements/confirmation.js +0 -76
  207. package/dist/components/ai-elements/connection.d.ts +0 -5
  208. package/dist/components/ai-elements/connection.js +0 -34
  209. package/dist/components/ai-elements/context.d.ts +0 -36
  210. package/dist/components/ai-elements/context.js +0 -320
  211. package/dist/components/ai-elements/controls.d.ts +0 -8
  212. package/dist/components/ai-elements/controls.js +0 -17
  213. package/dist/components/ai-elements/conversation.d.ts +0 -27
  214. package/dist/components/ai-elements/conversation.js +0 -119
  215. package/dist/components/ai-elements/edge.d.ts +0 -9
  216. package/dist/components/ai-elements/edge.js +0 -111
  217. package/dist/components/ai-elements/environment-variables.d.ts +0 -42
  218. package/dist/components/ai-elements/environment-variables.js +0 -208
  219. package/dist/components/ai-elements/file-tree.d.ts +0 -30
  220. package/dist/components/ai-elements/file-tree.js +0 -212
  221. package/dist/components/ai-elements/image.d.ts +0 -10
  222. package/dist/components/ai-elements/image.js +0 -23
  223. package/dist/components/ai-elements/inline-citation.d.ts +0 -42
  224. package/dist/components/ai-elements/inline-citation.js +0 -203
  225. package/dist/components/ai-elements/jsx-preview.d.ts +0 -33
  226. package/dist/components/ai-elements/jsx-preview.js +0 -206
  227. package/dist/components/ai-elements/loader.d.ts +0 -9
  228. package/dist/components/ai-elements/loader.js +0 -115
  229. package/dist/components/ai-elements/message.d.ts +0 -42
  230. package/dist/components/ai-elements/message.js +0 -259
  231. package/dist/components/ai-elements/mic-selector.d.ts +0 -49
  232. package/dist/components/ai-elements/mic-selector.js +0 -252
  233. package/dist/components/ai-elements/model-selector.d.ts +0 -39
  234. package/dist/components/ai-elements/model-selector.js +0 -73
  235. package/dist/components/ai-elements/node.d.ts +0 -25
  236. package/dist/components/ai-elements/node.js +0 -41
  237. package/dist/components/ai-elements/open-in-chat.d.ts +0 -32
  238. package/dist/components/ai-elements/open-in-chat.js +0 -366
  239. package/dist/components/ai-elements/package-info.d.ts +0 -32
  240. package/dist/components/ai-elements/package-info.js +0 -162
  241. package/dist/components/ai-elements/panel.d.ts +0 -8
  242. package/dist/components/ai-elements/panel.js +0 -17
  243. package/dist/components/ai-elements/persona.d.ts +0 -50
  244. package/dist/components/ai-elements/persona.js +0 -209
  245. package/dist/components/ai-elements/plan.d.ts +0 -29
  246. package/dist/components/ai-elements/plan.js +0 -95
  247. package/dist/components/ai-elements/prompt-input.d.ts +0 -153
  248. package/dist/components/ai-elements/prompt-input.js +0 -939
  249. package/dist/components/ai-elements/queue.d.ts +0 -65
  250. package/dist/components/ai-elements/queue.js +0 -179
  251. package/dist/components/ai-elements/reasoning.d.ts +0 -30
  252. package/dist/components/ai-elements/reasoning.js +0 -161
  253. package/dist/components/ai-elements/response.d.ts +0 -9
  254. package/dist/components/ai-elements/response.js +0 -33
  255. package/dist/components/ai-elements/sandbox.d.ts +0 -28
  256. package/dist/components/ai-elements/sandbox.js +0 -98
  257. package/dist/components/ai-elements/schema-display.d.ts +0 -58
  258. package/dist/components/ai-elements/schema-display.js +0 -313
  259. package/dist/components/ai-elements/shimmer.d.ts +0 -14
  260. package/dist/components/ai-elements/shimmer.js +0 -1
  261. package/dist/components/ai-elements/snippet.d.ts +0 -22
  262. package/dist/components/ai-elements/snippet.js +0 -90
  263. package/dist/components/ai-elements/sources.d.ts +0 -16
  264. package/dist/components/ai-elements/sources.js +0 -62
  265. package/dist/components/ai-elements/speech-input.d.ts +0 -57
  266. package/dist/components/ai-elements/speech-input.js +0 -206
  267. package/dist/components/ai-elements/stack-trace.d.ts +0 -42
  268. package/dist/components/ai-elements/stack-trace.js +0 -377
  269. package/dist/components/ai-elements/suggestion.d.ts +0 -14
  270. package/dist/components/ai-elements/suggestion.js +0 -41
  271. package/dist/components/ai-elements/task.d.ts +0 -18
  272. package/dist/components/ai-elements/task.js +0 -60
  273. package/dist/components/ai-elements/terminal.d.ts +0 -31
  274. package/dist/components/ai-elements/terminal.js +0 -203
  275. package/dist/components/ai-elements/test-results.d.ts +0 -61
  276. package/dist/components/ai-elements/test-results.js +0 -349
  277. package/dist/components/ai-elements/tool.d.ts +0 -35
  278. package/dist/components/ai-elements/tool.js +0 -2
  279. package/dist/components/ai-elements/toolbar.d.ts +0 -8
  280. package/dist/components/ai-elements/toolbar.js +0 -18
  281. package/dist/components/ai-elements/transcription.d.ts +0 -19
  282. package/dist/components/ai-elements/transcription.js +0 -90
  283. package/dist/components/ai-elements/voice-selector.d.ts +0 -66
  284. package/dist/components/ai-elements/voice-selector.js +0 -332
  285. package/dist/components/ai-elements/web-preview.d.ts +0 -38
  286. package/dist/components/ai-elements/web-preview.js +0 -214
  287. package/dist/components/responsive-alert-dialog.d.ts +0 -19
  288. package/dist/components/responsive-alert-dialog.js +0 -1
  289. package/dist/components/responsive-dialog.d.ts +0 -14
  290. package/dist/components/responsive-dialog.js +0 -1
  291. package/dist/config-IcWUmjwj.d.ts +0 -239
  292. package/dist/features/chat/chat-element/chat-element.d.ts +0 -8
  293. package/dist/features/chat/chat-element/chat-element.js +0 -14
  294. package/dist/features/chat/chat-element/use-chat.d.ts +0 -21
  295. package/dist/features/chat/chat-element/use-chat.js +0 -14
  296. package/dist/features/chat/chat-element/use-initial-messages.d.ts +0 -20
  297. package/dist/features/chat/chat-element/use-initial-messages.js +0 -14
  298. package/dist/features/chat/chat-message.d.ts +0 -10
  299. package/dist/features/chat/chat-message.js +0 -1
  300. package/dist/features/chat/chat-molecule.d.ts +0 -35
  301. package/dist/features/chat/chat-molecule.js +0 -14
  302. package/dist/features/molecule/chatsdk-provider.d.ts +0 -19
  303. package/dist/features/molecule/chatsdk-provider.js +0 -26
  304. package/dist/features/molecule/constants.d.ts +0 -3
  305. package/dist/features/molecule/constants.js +0 -1
  306. package/dist/features/molecule/molecule-provider.d.ts +0 -39
  307. package/dist/features/molecule/molecule-provider.js +0 -1
  308. package/dist/features/molecule/store.d.ts +0 -53
  309. package/dist/features/molecule/store.js +0 -3
  310. package/dist/features/molecule/types/api.d.ts +0 -8
  311. package/dist/features/molecule/types/api.js +0 -1
  312. package/dist/features/molecule/types/callbacks.d.ts +0 -22
  313. package/dist/features/molecule/types/callbacks.js +0 -1
  314. package/dist/features/molecule/types/config.d.ts +0 -10
  315. package/dist/features/molecule/types/config.js +0 -1
  316. package/dist/features/molecule/types/context.d.ts +0 -11
  317. package/dist/features/molecule/types/context.js +0 -1
  318. package/dist/features/molecule/types/locale.d.ts +0 -9
  319. package/dist/features/molecule/types/locale.js +0 -1
  320. package/dist/features/molecule/types/theme.d.ts +0 -38
  321. package/dist/features/molecule/types/theme.js +0 -1
  322. package/dist/features/molecule/types/translations.d.ts +0 -10
  323. package/dist/features/molecule/types/translations.js +0 -1
  324. package/dist/features/molecule/use-merge-global-config.d.ts +0 -22
  325. package/dist/features/molecule/use-merge-global-config.js +0 -5
  326. package/dist/features/molecule/use-molecule-config.d.ts +0 -41
  327. package/dist/features/molecule/use-molecule-config.js +0 -6
  328. package/dist/features/molecule/utils.d.ts +0 -10
  329. package/dist/features/molecule/utils.js +0 -1
@@ -1,332 +0,0 @@
1
- import { useControllableState } from '@radix-ui/react-use-controllable-state';
2
- import { Button } from '@chatsdk-dev/ui/components/button';
3
- import { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandShortcut, CommandSeparator } from '@chatsdk-dev/ui/components/command';
4
- import { Dialog, DialogTrigger, DialogContent, DialogTitle } from '@chatsdk-dev/ui/components/dialog';
5
- import { Spinner } from '@chatsdk-dev/ui/components/spinner';
6
- import { cn } from '@chatsdk-dev/ui/lib/utils';
7
- import { CircleSmallIcon, VenusAndMarsIcon, NonBinaryIcon, MarsStrokeIcon, TransgenderIcon, VenusIcon, MarsIcon, PlayIcon, PauseIcon } from 'lucide-react';
8
- import { createContext, useContext, useMemo, useCallback } from 'react';
9
- import { jsx, jsxs } from 'react/jsx-runtime';
10
-
11
- var VoiceSelectorContext = createContext(
12
- null
13
- );
14
- var useVoiceSelector = () => {
15
- const context = useContext(VoiceSelectorContext);
16
- if (!context) {
17
- throw new Error(
18
- "VoiceSelector components must be used within VoiceSelector"
19
- );
20
- }
21
- return context;
22
- };
23
- var VoiceSelector = ({
24
- value: valueProp,
25
- defaultValue,
26
- onValueChange,
27
- open: openProp,
28
- defaultOpen = false,
29
- onOpenChange,
30
- children,
31
- ...props
32
- }) => {
33
- const [value, setValue] = useControllableState({
34
- defaultProp: defaultValue,
35
- onChange: onValueChange,
36
- prop: valueProp
37
- });
38
- const [open, setOpen] = useControllableState({
39
- defaultProp: defaultOpen,
40
- onChange: (open2) => onOpenChange?.(open2, {}),
41
- prop: openProp
42
- });
43
- const voiceSelectorContext = useMemo(
44
- () => ({ open, setOpen, setValue, value }),
45
- [value, setValue, open, setOpen]
46
- );
47
- return /* @__PURE__ */ jsx(VoiceSelectorContext.Provider, { value: voiceSelectorContext, children: /* @__PURE__ */ jsx(Dialog, { onOpenChange: setOpen, open, ...props, children }) });
48
- };
49
- var VoiceSelectorTrigger = (props) => /* @__PURE__ */ jsx(DialogTrigger, { ...props });
50
- var VoiceSelectorContent = ({
51
- className,
52
- children,
53
- title = "Voice Selector",
54
- ...props
55
- }) => /* @__PURE__ */ jsxs(
56
- DialogContent,
57
- {
58
- "aria-describedby": void 0,
59
- className: cn("p-0", className),
60
- ...props,
61
- children: [
62
- /* @__PURE__ */ jsx(DialogTitle, { className: "sr-only", children: title }),
63
- /* @__PURE__ */ jsx(Command, { className: "**:data-[slot=command-input-wrapper]:h-auto", children })
64
- ]
65
- }
66
- );
67
- var VoiceSelectorDialog = (props) => /* @__PURE__ */ jsx(CommandDialog, { ...props });
68
- var VoiceSelectorInput = ({
69
- className,
70
- ...props
71
- }) => /* @__PURE__ */ jsx(CommandInput, { className: cn("h-auto py-3.5", className), ...props });
72
- var VoiceSelectorList = (props) => /* @__PURE__ */ jsx(CommandList, { ...props });
73
- var VoiceSelectorEmpty = (props) => /* @__PURE__ */ jsx(CommandEmpty, { ...props });
74
- var VoiceSelectorGroup = (props) => /* @__PURE__ */ jsx(CommandGroup, { ...props });
75
- var VoiceSelectorItem = ({
76
- className,
77
- ...props
78
- }) => /* @__PURE__ */ jsx(CommandItem, { className: cn("px-4 py-2", className), ...props });
79
- var VoiceSelectorShortcut = (props) => /* @__PURE__ */ jsx(CommandShortcut, { ...props });
80
- var VoiceSelectorSeparator = (props) => /* @__PURE__ */ jsx(CommandSeparator, { ...props });
81
- var VoiceSelectorGender = ({
82
- className,
83
- value,
84
- children,
85
- ...props
86
- }) => {
87
- let icon = null;
88
- switch (value) {
89
- case "male": {
90
- icon = /* @__PURE__ */ jsx(MarsIcon, { className: "size-4" });
91
- break;
92
- }
93
- case "female": {
94
- icon = /* @__PURE__ */ jsx(VenusIcon, { className: "size-4" });
95
- break;
96
- }
97
- case "transgender": {
98
- icon = /* @__PURE__ */ jsx(TransgenderIcon, { className: "size-4" });
99
- break;
100
- }
101
- case "androgyne": {
102
- icon = /* @__PURE__ */ jsx(MarsStrokeIcon, { className: "size-4" });
103
- break;
104
- }
105
- case "non-binary": {
106
- icon = /* @__PURE__ */ jsx(NonBinaryIcon, { className: "size-4" });
107
- break;
108
- }
109
- case "intersex": {
110
- icon = /* @__PURE__ */ jsx(VenusAndMarsIcon, { className: "size-4" });
111
- break;
112
- }
113
- default: {
114
- icon = /* @__PURE__ */ jsx(CircleSmallIcon, { className: "size-4" });
115
- }
116
- }
117
- return /* @__PURE__ */ jsx("span", { className: cn("text-muted-foreground text-xs", className), ...props, children: children ?? icon });
118
- };
119
- var VoiceSelectorAccent = ({
120
- className,
121
- value,
122
- children,
123
- ...props
124
- }) => {
125
- let emoji = null;
126
- switch (value) {
127
- case "american": {
128
- emoji = "\u{1F1FA}\u{1F1F8}";
129
- break;
130
- }
131
- case "british": {
132
- emoji = "\u{1F1EC}\u{1F1E7}";
133
- break;
134
- }
135
- case "australian": {
136
- emoji = "\u{1F1E6}\u{1F1FA}";
137
- break;
138
- }
139
- case "canadian": {
140
- emoji = "\u{1F1E8}\u{1F1E6}";
141
- break;
142
- }
143
- case "irish": {
144
- emoji = "\u{1F1EE}\u{1F1EA}";
145
- break;
146
- }
147
- case "scottish": {
148
- emoji = "\u{1F3F4}\u{E0067}\u{E0062}\u{E0073}\u{E0063}\u{E0074}\u{E007F}";
149
- break;
150
- }
151
- case "indian": {
152
- emoji = "\u{1F1EE}\u{1F1F3}";
153
- break;
154
- }
155
- case "south-african": {
156
- emoji = "\u{1F1FF}\u{1F1E6}";
157
- break;
158
- }
159
- case "new-zealand": {
160
- emoji = "\u{1F1F3}\u{1F1FF}";
161
- break;
162
- }
163
- case "spanish": {
164
- emoji = "\u{1F1EA}\u{1F1F8}";
165
- break;
166
- }
167
- case "french": {
168
- emoji = "\u{1F1EB}\u{1F1F7}";
169
- break;
170
- }
171
- case "german": {
172
- emoji = "\u{1F1E9}\u{1F1EA}";
173
- break;
174
- }
175
- case "italian": {
176
- emoji = "\u{1F1EE}\u{1F1F9}";
177
- break;
178
- }
179
- case "portuguese": {
180
- emoji = "\u{1F1F5}\u{1F1F9}";
181
- break;
182
- }
183
- case "brazilian": {
184
- emoji = "\u{1F1E7}\u{1F1F7}";
185
- break;
186
- }
187
- case "mexican": {
188
- emoji = "\u{1F1F2}\u{1F1FD}";
189
- break;
190
- }
191
- case "argentinian": {
192
- emoji = "\u{1F1E6}\u{1F1F7}";
193
- break;
194
- }
195
- case "japanese": {
196
- emoji = "\u{1F1EF}\u{1F1F5}";
197
- break;
198
- }
199
- case "chinese": {
200
- emoji = "\u{1F1E8}\u{1F1F3}";
201
- break;
202
- }
203
- case "korean": {
204
- emoji = "\u{1F1F0}\u{1F1F7}";
205
- break;
206
- }
207
- case "russian": {
208
- emoji = "\u{1F1F7}\u{1F1FA}";
209
- break;
210
- }
211
- case "arabic": {
212
- emoji = "\u{1F1F8}\u{1F1E6}";
213
- break;
214
- }
215
- case "dutch": {
216
- emoji = "\u{1F1F3}\u{1F1F1}";
217
- break;
218
- }
219
- case "swedish": {
220
- emoji = "\u{1F1F8}\u{1F1EA}";
221
- break;
222
- }
223
- case "norwegian": {
224
- emoji = "\u{1F1F3}\u{1F1F4}";
225
- break;
226
- }
227
- case "danish": {
228
- emoji = "\u{1F1E9}\u{1F1F0}";
229
- break;
230
- }
231
- case "finnish": {
232
- emoji = "\u{1F1EB}\u{1F1EE}";
233
- break;
234
- }
235
- case "polish": {
236
- emoji = "\u{1F1F5}\u{1F1F1}";
237
- break;
238
- }
239
- case "turkish": {
240
- emoji = "\u{1F1F9}\u{1F1F7}";
241
- break;
242
- }
243
- case "greek": {
244
- emoji = "\u{1F1EC}\u{1F1F7}";
245
- break;
246
- }
247
- default: {
248
- emoji = null;
249
- }
250
- }
251
- return /* @__PURE__ */ jsx("span", { className: cn("text-muted-foreground text-xs", className), ...props, children: children ?? emoji });
252
- };
253
- var VoiceSelectorAge = ({
254
- className,
255
- ...props
256
- }) => /* @__PURE__ */ jsx(
257
- "span",
258
- {
259
- className: cn("text-muted-foreground text-xs tabular-nums", className),
260
- ...props
261
- }
262
- );
263
- var VoiceSelectorName = ({
264
- className,
265
- ...props
266
- }) => /* @__PURE__ */ jsx(
267
- "span",
268
- {
269
- className: cn("flex-1 truncate text-left font-medium", className),
270
- ...props
271
- }
272
- );
273
- var VoiceSelectorDescription = ({
274
- className,
275
- ...props
276
- }) => /* @__PURE__ */ jsx("span", { className: cn("text-muted-foreground text-xs", className), ...props });
277
- var VoiceSelectorAttributes = ({
278
- className,
279
- children,
280
- ...props
281
- }) => /* @__PURE__ */ jsx("div", { className: cn("flex items-center text-xs", className), ...props, children });
282
- var VoiceSelectorBullet = ({
283
- className,
284
- ...props
285
- }) => /* @__PURE__ */ jsx(
286
- "span",
287
- {
288
- "aria-hidden": "true",
289
- className: cn("select-none text-border", className),
290
- ...props,
291
- children: "\u2022"
292
- }
293
- );
294
- var VoiceSelectorPreview = ({
295
- className,
296
- playing,
297
- loading,
298
- onPlay,
299
- onClick,
300
- ...props
301
- }) => {
302
- const handleClick = useCallback(
303
- (event) => {
304
- event.stopPropagation();
305
- onClick?.(event);
306
- onPlay?.();
307
- },
308
- [onClick, onPlay]
309
- );
310
- let icon = /* @__PURE__ */ jsx(PlayIcon, { className: "size-3" });
311
- if (loading) {
312
- icon = /* @__PURE__ */ jsx(Spinner, { className: "size-3" });
313
- } else if (playing) {
314
- icon = /* @__PURE__ */ jsx(PauseIcon, { className: "size-3" });
315
- }
316
- return /* @__PURE__ */ jsx(
317
- Button,
318
- {
319
- "aria-label": playing ? "Pause preview" : "Play preview",
320
- className: cn("size-6", className),
321
- disabled: loading,
322
- onClick: handleClick,
323
- size: "icon",
324
- type: "button",
325
- variant: "outline",
326
- ...props,
327
- children: icon
328
- }
329
- );
330
- };
331
-
332
- export { VoiceSelector, VoiceSelectorAccent, VoiceSelectorAge, VoiceSelectorAttributes, VoiceSelectorBullet, VoiceSelectorContent, VoiceSelectorDescription, VoiceSelectorDialog, VoiceSelectorEmpty, VoiceSelectorGender, VoiceSelectorGroup, VoiceSelectorInput, VoiceSelectorItem, VoiceSelectorList, VoiceSelectorName, VoiceSelectorPreview, VoiceSelectorSeparator, VoiceSelectorShortcut, VoiceSelectorTrigger, useVoiceSelector };
@@ -1,38 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { Button } from '@chatsdk-dev/ui/components/button';
3
- import { Input } from '@chatsdk-dev/ui/components/input';
4
- import { ComponentProps, ReactNode } from 'react';
5
-
6
- interface WebPreviewContextValue {
7
- url: string;
8
- setUrl: (url: string) => void;
9
- consoleOpen: boolean;
10
- setConsoleOpen: (open: boolean) => void;
11
- }
12
- type WebPreviewProps = ComponentProps<"div"> & {
13
- defaultUrl?: string;
14
- onUrlChange?: (url: string) => void;
15
- };
16
- declare const WebPreview: ({ className, children, defaultUrl, onUrlChange, ...props }: WebPreviewProps) => react_jsx_runtime.JSX.Element;
17
- type WebPreviewNavigationProps = ComponentProps<"div">;
18
- declare const WebPreviewNavigation: ({ className, children, ...props }: WebPreviewNavigationProps) => react_jsx_runtime.JSX.Element;
19
- type WebPreviewNavigationButtonProps = ComponentProps<typeof Button> & {
20
- tooltip?: string;
21
- };
22
- declare const WebPreviewNavigationButton: ({ onClick, disabled, tooltip, children, ...props }: WebPreviewNavigationButtonProps) => react_jsx_runtime.JSX.Element;
23
- type WebPreviewUrlProps = ComponentProps<typeof Input>;
24
- declare const WebPreviewUrl: ({ value, onChange, onKeyDown, ...props }: WebPreviewUrlProps) => react_jsx_runtime.JSX.Element;
25
- type WebPreviewBodyProps = ComponentProps<"iframe"> & {
26
- loading?: ReactNode;
27
- };
28
- declare const WebPreviewBody: ({ className, loading, src, ...props }: WebPreviewBodyProps) => react_jsx_runtime.JSX.Element;
29
- type WebPreviewConsoleProps = ComponentProps<"div"> & {
30
- logs?: {
31
- level: "log" | "warn" | "error";
32
- message: string;
33
- timestamp: Date;
34
- }[];
35
- };
36
- declare const WebPreviewConsole: ({ className, logs, children, ...props }: WebPreviewConsoleProps) => react_jsx_runtime.JSX.Element;
37
-
38
- export { WebPreview, WebPreviewBody, type WebPreviewBodyProps, WebPreviewConsole, type WebPreviewConsoleProps, type WebPreviewContextValue, WebPreviewNavigation, WebPreviewNavigationButton, type WebPreviewNavigationButtonProps, type WebPreviewNavigationProps, type WebPreviewProps, WebPreviewUrl, type WebPreviewUrlProps };
@@ -1,214 +0,0 @@
1
- import { Button } from '@chatsdk-dev/ui/components/button';
2
- import { Collapsible, CollapsibleTrigger, CollapsibleContent } from '@chatsdk-dev/ui/components/collapsible';
3
- import { Input } from '@chatsdk-dev/ui/components/input';
4
- import { TooltipProvider, Tooltip, TooltipTrigger, TooltipContent } from '@chatsdk-dev/ui/components/tooltip';
5
- import { cn } from '@chatsdk-dev/ui/lib/utils';
6
- import { createContext, useState, useCallback, useMemo, useContext } from 'react';
7
- import { jsx, jsxs } from 'react/jsx-runtime';
8
-
9
- var WebPreviewContext = createContext(null);
10
- var useWebPreview = () => {
11
- const context = useContext(WebPreviewContext);
12
- if (!context) {
13
- throw new Error("WebPreview components must be used within a WebPreview");
14
- }
15
- return context;
16
- };
17
- var WebPreview = ({
18
- className,
19
- children,
20
- defaultUrl = "",
21
- onUrlChange,
22
- ...props
23
- }) => {
24
- const [url, setUrl] = useState(defaultUrl);
25
- const [consoleOpen, setConsoleOpen] = useState(false);
26
- const handleUrlChange = useCallback(
27
- (newUrl) => {
28
- setUrl(newUrl);
29
- onUrlChange?.(newUrl);
30
- },
31
- [onUrlChange]
32
- );
33
- const contextValue = useMemo(
34
- () => ({
35
- consoleOpen,
36
- setConsoleOpen,
37
- setUrl: handleUrlChange,
38
- url
39
- }),
40
- [consoleOpen, handleUrlChange, url]
41
- );
42
- return /* @__PURE__ */ jsx(WebPreviewContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(
43
- "div",
44
- {
45
- className: cn(
46
- "flex size-full flex-col rounded-lg border bg-card",
47
- className
48
- ),
49
- ...props,
50
- children
51
- }
52
- ) });
53
- };
54
- var WebPreviewNavigation = ({
55
- className,
56
- children,
57
- ...props
58
- }) => /* @__PURE__ */ jsx(
59
- "div",
60
- {
61
- className: cn("flex items-center gap-1 border-b p-2", className),
62
- ...props,
63
- children
64
- }
65
- );
66
- var WebPreviewNavigationButton = ({
67
- onClick,
68
- disabled,
69
- tooltip,
70
- children,
71
- ...props
72
- }) => /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsxs(Tooltip, { children: [
73
- /* @__PURE__ */ jsx(
74
- TooltipTrigger,
75
- {
76
- render: () => /* @__PURE__ */ jsx(
77
- Button,
78
- {
79
- className: "h-8 w-8 p-0 hover:text-foreground",
80
- disabled,
81
- onClick,
82
- size: "sm",
83
- variant: "ghost",
84
- ...props,
85
- children
86
- }
87
- )
88
- }
89
- ),
90
- /* @__PURE__ */ jsx(TooltipContent, { children: /* @__PURE__ */ jsx("p", { children: tooltip }) })
91
- ] }) });
92
- var WebPreviewUrl = ({
93
- value,
94
- onChange,
95
- onKeyDown,
96
- ...props
97
- }) => {
98
- const { url, setUrl } = useWebPreview();
99
- const [prevUrl, setPrevUrl] = useState(url);
100
- const [inputValue, setInputValue] = useState(url);
101
- if (url !== prevUrl) {
102
- setPrevUrl(url);
103
- setInputValue(url);
104
- }
105
- const handleChange = (event) => {
106
- setInputValue(event.target.value);
107
- onChange?.(event);
108
- };
109
- const handleKeyDown = useCallback(
110
- (event) => {
111
- if (event.key === "Enter") {
112
- const target = event.target;
113
- setUrl(target.value);
114
- }
115
- onKeyDown?.(event);
116
- },
117
- [setUrl, onKeyDown]
118
- );
119
- return /* @__PURE__ */ jsx(
120
- Input,
121
- {
122
- className: "h-8 flex-1 text-sm",
123
- onChange: onChange ?? handleChange,
124
- onKeyDown: handleKeyDown,
125
- placeholder: "Enter URL...",
126
- value: value ?? inputValue,
127
- ...props
128
- }
129
- );
130
- };
131
- var WebPreviewBody = ({
132
- className,
133
- loading,
134
- src,
135
- ...props
136
- }) => {
137
- const { url } = useWebPreview();
138
- return /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
139
- /* @__PURE__ */ jsx(
140
- "iframe",
141
- {
142
- className: cn("size-full", className),
143
- sandbox: "allow-scripts allow-same-origin allow-forms allow-popups allow-presentation",
144
- src: (src ?? url) || void 0,
145
- title: "Preview",
146
- ...props
147
- }
148
- ),
149
- loading
150
- ] });
151
- };
152
- var WebPreviewConsole = ({
153
- className,
154
- logs = [],
155
- children,
156
- ...props
157
- }) => {
158
- const { consoleOpen, setConsoleOpen } = useWebPreview();
159
- return /* @__PURE__ */ jsxs(
160
- Collapsible,
161
- {
162
- className: cn("border-t bg-muted/50 font-mono text-sm", className),
163
- onOpenChange: setConsoleOpen,
164
- open: consoleOpen,
165
- ...props,
166
- children: [
167
- /* @__PURE__ */ jsx(
168
- CollapsibleTrigger,
169
- {
170
- render: () => /* @__PURE__ */ jsx(
171
- Button,
172
- {
173
- className: "flex w-full items-center justify-between p-4 text-left font-medium hover:bg-muted/50",
174
- variant: "ghost",
175
- children: "Console"
176
- }
177
- )
178
- }
179
- ),
180
- /* @__PURE__ */ jsx(
181
- CollapsibleContent,
182
- {
183
- className: cn(
184
- "px-4 pb-4",
185
- "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-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 outline-none data-[state=closed]:animate-out data-[state=open]:animate-in"
186
- ),
187
- children: /* @__PURE__ */ jsxs("div", { className: "max-h-48 space-y-1 overflow-y-auto", children: [
188
- logs.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: "No console output" }) : logs.map((log) => /* @__PURE__ */ jsxs(
189
- "div",
190
- {
191
- className: cn(
192
- "text-xs",
193
- log.level === "error" && "text-destructive",
194
- log.level === "warn" && "text-yellow-600",
195
- log.level === "log" && "text-foreground"
196
- ),
197
- children: [
198
- /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: log.timestamp.toLocaleTimeString() }),
199
- " ",
200
- log.message
201
- ]
202
- },
203
- `${log.timestamp.getTime()}-${log.level}-${log.message}`
204
- )),
205
- children
206
- ] })
207
- }
208
- )
209
- ]
210
- }
211
- );
212
- };
213
-
214
- export { WebPreview, WebPreviewBody, WebPreviewConsole, WebPreviewNavigation, WebPreviewNavigationButton, WebPreviewUrl };
@@ -1,19 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
-
3
- interface ResponsiveAlertDialogProps {
4
- open?: boolean;
5
- onOpenChange?: (open: boolean) => void;
6
- children?: React.ReactNode;
7
- trigger?: React.ReactElement;
8
- title?: React.ReactNode;
9
- titleIcon?: React.ReactNode;
10
- description?: React.ReactNode;
11
- isPending?: boolean;
12
- action?: React.ReactNode;
13
- onAction?: (e: React.MouseEvent<HTMLButtonElement>) => void;
14
- cancelLabel?: React.ReactNode;
15
- onCancel?: (e: React.MouseEvent<HTMLButtonElement>) => void;
16
- }
17
- declare function ResponsiveAlertDialog({ open, onOpenChange, children, trigger, title, titleIcon, description, isPending, action, onAction, cancelLabel, onCancel, }: ResponsiveAlertDialogProps): react_jsx_runtime.JSX.Element;
18
-
19
- export { ResponsiveAlertDialog, type ResponsiveAlertDialogProps };
@@ -1 +0,0 @@
1
- export { ResponsiveAlertDialog } from '../chunk-QTRMNIG3.js';
@@ -1,14 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
-
3
- interface ResponsiveDialogProps {
4
- open?: boolean;
5
- onOpenChange?: (open: boolean) => void;
6
- trigger?: React.ReactElement;
7
- title?: string;
8
- description?: string;
9
- children: React.ReactNode;
10
- footer?: React.ReactNode;
11
- }
12
- declare function ResponsiveDialog({ open, onOpenChange, trigger, children, title, description, footer, }: ResponsiveDialogProps): react_jsx_runtime.JSX.Element;
13
-
14
- export { ResponsiveDialog, type ResponsiveDialogProps };
@@ -1 +0,0 @@
1
- export { ResponsiveDialog } from '../chunk-YXFVHSY4.js';