fancy-ui-react 0.2.0

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 (837) hide show
  1. package/LICENSE +21 -0
  2. package/PORTING.md +118 -0
  3. package/README.md +643 -0
  4. package/dist/cameleon/FancyProvider.d.ts +11 -0
  5. package/dist/cameleon/FancyProvider.js +42 -0
  6. package/dist/cameleon/context.d.ts +22 -0
  7. package/dist/cameleon/context.js +16 -0
  8. package/dist/cameleon/index.d.ts +31 -0
  9. package/dist/cameleon/index.js +39 -0
  10. package/dist/cameleon/primitives/Badge.d.ts +10 -0
  11. package/dist/cameleon/primitives/Badge.js +12 -0
  12. package/dist/cameleon/primitives/Button.d.ts +11 -0
  13. package/dist/cameleon/primitives/Button.js +43 -0
  14. package/dist/cameleon/primitives/Checkbox.d.ts +10 -0
  15. package/dist/cameleon/primitives/Checkbox.js +39 -0
  16. package/dist/cameleon/primitives/Input.d.ts +10 -0
  17. package/dist/cameleon/primitives/Input.js +13 -0
  18. package/dist/cameleon/primitives/Radio.d.ts +12 -0
  19. package/dist/cameleon/primitives/Radio.js +29 -0
  20. package/dist/cameleon/primitives/Select.d.ts +10 -0
  21. package/dist/cameleon/primitives/Select.js +27 -0
  22. package/dist/cameleon/primitives/Slider.d.ts +7 -0
  23. package/dist/cameleon/primitives/Slider.js +22 -0
  24. package/dist/cameleon/primitives/Switch.d.ts +9 -0
  25. package/dist/cameleon/primitives/Switch.js +33 -0
  26. package/dist/cameleon/primitives/Textarea.d.ts +9 -0
  27. package/dist/cameleon/primitives/Textarea.js +13 -0
  28. package/dist/cameleon/primitives/Tooltip.d.ts +14 -0
  29. package/dist/cameleon/primitives/Tooltip.js +15 -0
  30. package/dist/cameleon/primitives/index.d.ts +10 -0
  31. package/dist/cameleon/skins/aurora/index.d.ts +2 -0
  32. package/dist/cameleon/skins/aurora/index.js +16 -0
  33. package/dist/cameleon/skins/aurora/meta.d.ts +3 -0
  34. package/dist/cameleon/skins/aurora/meta.js +61 -0
  35. package/dist/cameleon/skins/aurora/recipes.d.ts +24 -0
  36. package/dist/cameleon/skins/aurora/recipes.js +124 -0
  37. package/dist/cameleon/skins/aurora/tokens.d.ts +6 -0
  38. package/dist/cameleon/skins/aurora/tokens.js +18 -0
  39. package/dist/cameleon/skins/brutal/index.d.ts +2 -0
  40. package/dist/cameleon/skins/brutal/index.js +35 -0
  41. package/dist/cameleon/skins/brutal/meta.d.ts +3 -0
  42. package/dist/cameleon/skins/brutal/meta.js +73 -0
  43. package/dist/cameleon/skins/brutal/ornaments.d.ts +7 -0
  44. package/dist/cameleon/skins/brutal/ornaments.js +18 -0
  45. package/dist/cameleon/skins/brutal/recipes.d.ts +23 -0
  46. package/dist/cameleon/skins/brutal/recipes.js +113 -0
  47. package/dist/cameleon/skins/brutal/tokens.d.ts +8 -0
  48. package/dist/cameleon/skins/brutal/tokens.js +23 -0
  49. package/dist/cameleon/skins/default.d.ts +2 -0
  50. package/dist/cameleon/skins/default.js +79 -0
  51. package/dist/cameleon/skins/glass/index.d.ts +2 -0
  52. package/dist/cameleon/skins/glass/index.js +16 -0
  53. package/dist/cameleon/skins/glass/meta.d.ts +3 -0
  54. package/dist/cameleon/skins/glass/meta.js +63 -0
  55. package/dist/cameleon/skins/glass/recipes.d.ts +24 -0
  56. package/dist/cameleon/skins/glass/recipes.js +124 -0
  57. package/dist/cameleon/skins/glass/tokens.d.ts +5 -0
  58. package/dist/cameleon/skins/glass/tokens.js +18 -0
  59. package/dist/cameleon/skins/retro-os/index.d.ts +2 -0
  60. package/dist/cameleon/skins/retro-os/index.js +24 -0
  61. package/dist/cameleon/skins/retro-os/meta.d.ts +3 -0
  62. package/dist/cameleon/skins/retro-os/meta.js +61 -0
  63. package/dist/cameleon/skins/retro-os/ornaments.d.ts +9 -0
  64. package/dist/cameleon/skins/retro-os/ornaments.js +28 -0
  65. package/dist/cameleon/skins/retro-os/recipes.d.ts +35 -0
  66. package/dist/cameleon/skins/retro-os/recipes.js +126 -0
  67. package/dist/cameleon/skins/retro-os/tokens.d.ts +16 -0
  68. package/dist/cameleon/skins/retro-os/tokens.js +23 -0
  69. package/dist/cameleon/skins/terminal/index.d.ts +2 -0
  70. package/dist/cameleon/skins/terminal/index.js +24 -0
  71. package/dist/cameleon/skins/terminal/meta.d.ts +3 -0
  72. package/dist/cameleon/skins/terminal/meta.js +70 -0
  73. package/dist/cameleon/skins/terminal/ornaments.d.ts +7 -0
  74. package/dist/cameleon/skins/terminal/ornaments.js +8 -0
  75. package/dist/cameleon/skins/terminal/recipes.d.ts +25 -0
  76. package/dist/cameleon/skins/terminal/recipes.js +125 -0
  77. package/dist/cameleon/skins/terminal/tokens.d.ts +5 -0
  78. package/dist/cameleon/skins/terminal/tokens.js +18 -0
  79. package/dist/cameleon/types.d.ts +133 -0
  80. package/dist/components/agent-plan/AgentPlan.d.ts +25 -0
  81. package/dist/components/agent-plan/AgentPlan.js +181 -0
  82. package/dist/components/agent-plan/index.d.ts +2 -0
  83. package/dist/components/ai-data-table/AiDataTable.d.ts +54 -0
  84. package/dist/components/ai-data-table/AiDataTable.js +110 -0
  85. package/dist/components/ai-data-table/index.d.ts +2 -0
  86. package/dist/components/alert-dialog/AlertDialog.d.ts +35 -0
  87. package/dist/components/alert-dialog/AlertDialog.js +109 -0
  88. package/dist/components/alert-dialog/index.d.ts +2 -0
  89. package/dist/components/animated-beam/AnimatedBeam.d.ts +39 -0
  90. package/dist/components/animated-beam/AnimatedBeam.js +192 -0
  91. package/dist/components/animated-beam/index.d.ts +2 -0
  92. package/dist/components/animated-testimonials/AnimatedTestimonials.d.ts +32 -0
  93. package/dist/components/animated-testimonials/AnimatedTestimonials.js +172 -0
  94. package/dist/components/animated-testimonials/index.d.ts +2 -0
  95. package/dist/components/animated-tooltip/AnimatedTooltip.d.ts +13 -0
  96. package/dist/components/animated-tooltip/AnimatedTooltip.js +137 -0
  97. package/dist/components/animated-tooltip/index.d.ts +2 -0
  98. package/dist/components/apple-card-carousel/AppleCard.d.ts +30 -0
  99. package/dist/components/apple-card-carousel/AppleCard.js +219 -0
  100. package/dist/components/apple-card-carousel/AppleCardCarousel.d.ts +14 -0
  101. package/dist/components/apple-card-carousel/AppleCardCarousel.js +30 -0
  102. package/dist/components/apple-card-carousel/index.d.ts +4 -0
  103. package/dist/components/approval-card/ApprovalCard.d.ts +57 -0
  104. package/dist/components/approval-card/ApprovalCard.js +153 -0
  105. package/dist/components/approval-card/index.d.ts +2 -0
  106. package/dist/components/artifact-card/ArtifactCard.d.ts +44 -0
  107. package/dist/components/artifact-card/ArtifactCard.js +204 -0
  108. package/dist/components/artifact-card/index.d.ts +2 -0
  109. package/dist/components/autocomplete/Autocomplete.d.ts +36 -0
  110. package/dist/components/autocomplete/Autocomplete.js +186 -0
  111. package/dist/components/autocomplete/AutocompletePanel.d.ts +12 -0
  112. package/dist/components/autocomplete/AutocompletePanel.js +123 -0
  113. package/dist/components/autocomplete/index.d.ts +4 -0
  114. package/dist/components/autocomplete/match.d.ts +6 -0
  115. package/dist/components/autocomplete/match.js +10 -0
  116. package/dist/components/autocomplete/types.d.ts +52 -0
  117. package/dist/components/autocomplete/types.js +6 -0
  118. package/dist/components/bento-grid/BentoGrid.d.ts +6 -0
  119. package/dist/components/bento-grid/BentoGrid.js +19 -0
  120. package/dist/components/bento-grid/BentoGridCard.d.ts +11 -0
  121. package/dist/components/bento-grid/BentoGridCard.js +49 -0
  122. package/dist/components/bento-grid/BentoGridItem.d.ts +9 -0
  123. package/dist/components/bento-grid/BentoGridItem.js +33 -0
  124. package/dist/components/bento-grid/index.d.ts +6 -0
  125. package/dist/components/bg-falling-stars/FallingStarsBg.d.ts +24 -0
  126. package/dist/components/bg-falling-stars/FallingStarsBg.js +134 -0
  127. package/dist/components/bg-falling-stars/index.d.ts +2 -0
  128. package/dist/components/bg-stars/StarsBackground.d.ts +40 -0
  129. package/dist/components/bg-stars/StarsBackground.js +188 -0
  130. package/dist/components/bg-stars/index.d.ts +2 -0
  131. package/dist/components/blur-reveal/BlurReveal.d.ts +19 -0
  132. package/dist/components/blur-reveal/BlurReveal.js +50 -0
  133. package/dist/components/blur-reveal/index.d.ts +2 -0
  134. package/dist/components/book/Book.d.ts +13 -0
  135. package/dist/components/book/Book.js +94 -0
  136. package/dist/components/book/BookDescription.d.ts +6 -0
  137. package/dist/components/book/BookDescription.js +9 -0
  138. package/dist/components/book/BookHeader.d.ts +6 -0
  139. package/dist/components/book/BookHeader.js +9 -0
  140. package/dist/components/book/BookTitle.d.ts +6 -0
  141. package/dist/components/book/BookTitle.js +9 -0
  142. package/dist/components/book/index.d.ts +132 -0
  143. package/dist/components/book/index.js +48 -0
  144. package/dist/components/border-beam/BorderBeam.d.ts +25 -0
  145. package/dist/components/border-beam/BorderBeam.js +45 -0
  146. package/dist/components/border-beam/index.d.ts +2 -0
  147. package/dist/components/box-reveal/BoxReveal.d.ts +20 -0
  148. package/dist/components/box-reveal/BoxReveal.js +58 -0
  149. package/dist/components/box-reveal/index.d.ts +2 -0
  150. package/dist/components/breadcrumb/Breadcrumb.d.ts +49 -0
  151. package/dist/components/breadcrumb/Breadcrumb.js +61 -0
  152. package/dist/components/breadcrumb/index.d.ts +2 -0
  153. package/dist/components/button/Button.d.ts +44 -0
  154. package/dist/components/button/Button.js +120 -0
  155. package/dist/components/button/index.d.ts +2 -0
  156. package/dist/components/button/types.d.ts +4 -0
  157. package/dist/components/button-group/ButtonGroup.d.ts +23 -0
  158. package/dist/components/button-group/ButtonGroup.js +30 -0
  159. package/dist/components/button-group/index.d.ts +4 -0
  160. package/dist/components/button-group/types.d.ts +34 -0
  161. package/dist/components/button-group/types.js +7 -0
  162. package/dist/components/card-3d/CardBody.d.ts +8 -0
  163. package/dist/components/card-3d/CardBody.js +9 -0
  164. package/dist/components/card-3d/CardContainer.d.ts +19 -0
  165. package/dist/components/card-3d/CardContainer.js +61 -0
  166. package/dist/components/card-3d/CardItem.d.ts +22 -0
  167. package/dist/components/card-3d/CardItem.js +29 -0
  168. package/dist/components/card-3d/index.d.ts +6 -0
  169. package/dist/components/card-spotlight/CardSpotlight.d.ts +16 -0
  170. package/dist/components/card-spotlight/CardSpotlight.js +65 -0
  171. package/dist/components/card-spotlight/index.d.ts +2 -0
  172. package/dist/components/chat-error/ChatError.d.ts +32 -0
  173. package/dist/components/chat-error/ChatError.js +75 -0
  174. package/dist/components/chat-error/index.d.ts +2 -0
  175. package/dist/components/chat-message/ChatMessage.d.ts +43 -0
  176. package/dist/components/chat-message/ChatMessage.js +127 -0
  177. package/dist/components/chat-message/ChatMessageAction.d.ts +20 -0
  178. package/dist/components/chat-message/ChatMessageAction.js +58 -0
  179. package/dist/components/chat-message/ChatMessageActions.d.ts +14 -0
  180. package/dist/components/chat-message/ChatMessageActions.js +30 -0
  181. package/dist/components/chat-message/ChatMessageBranches.d.ts +15 -0
  182. package/dist/components/chat-message/ChatMessageBranches.js +93 -0
  183. package/dist/components/chat-message/index.d.ts +10 -0
  184. package/dist/components/chat-message/types.d.ts +38 -0
  185. package/dist/components/chat-message/types.js +7 -0
  186. package/dist/components/chat-panel/ChatEmptyState.d.ts +17 -0
  187. package/dist/components/chat-panel/ChatEmptyState.js +42 -0
  188. package/dist/components/chat-panel/ChatPanel.d.ts +31 -0
  189. package/dist/components/chat-panel/ChatPanel.js +163 -0
  190. package/dist/components/chat-panel/index.d.ts +4 -0
  191. package/dist/components/checkbox/Checkbox.d.ts +64 -0
  192. package/dist/components/checkbox/Checkbox.js +123 -0
  193. package/dist/components/checkbox/index.d.ts +2 -0
  194. package/dist/components/code-diff/CodeDiff.d.ts +39 -0
  195. package/dist/components/code-diff/CodeDiff.js +213 -0
  196. package/dist/components/code-diff/index.d.ts +2 -0
  197. package/dist/components/colourful-text/ColourfulText.d.ts +28 -0
  198. package/dist/components/colourful-text/ColourfulText.js +73 -0
  199. package/dist/components/colourful-text/index.d.ts +2 -0
  200. package/dist/components/combobox/Combobox.d.ts +53 -0
  201. package/dist/components/combobox/Combobox.js +248 -0
  202. package/dist/components/combobox/ComboboxPanel.d.ts +28 -0
  203. package/dist/components/combobox/ComboboxPanel.js +110 -0
  204. package/dist/components/combobox/index.d.ts +4 -0
  205. package/dist/components/combobox/match.d.ts +15 -0
  206. package/dist/components/combobox/match.js +14 -0
  207. package/dist/components/combobox/types.d.ts +60 -0
  208. package/dist/components/combobox/types.js +6 -0
  209. package/dist/components/command-menu/CommandMenu.d.ts +37 -0
  210. package/dist/components/command-menu/CommandMenu.js +386 -0
  211. package/dist/components/command-menu/index.d.ts +3 -0
  212. package/dist/components/command-menu/match.d.ts +19 -0
  213. package/dist/components/command-menu/match.js +45 -0
  214. package/dist/components/command-menu/types.d.ts +19 -0
  215. package/dist/components/compare/Compare.d.ts +31 -0
  216. package/dist/components/compare/Compare.js +300 -0
  217. package/dist/components/compare/StarField.d.ts +22 -0
  218. package/dist/components/compare/StarField.js +66 -0
  219. package/dist/components/compare/index.d.ts +4 -0
  220. package/dist/components/composer/Composer.d.ts +56 -0
  221. package/dist/components/composer/Composer.js +155 -0
  222. package/dist/components/composer/ComposerAttachment.d.ts +14 -0
  223. package/dist/components/composer/ComposerAttachment.js +127 -0
  224. package/dist/components/composer/ComposerAttachments.d.ts +18 -0
  225. package/dist/components/composer/ComposerAttachments.js +85 -0
  226. package/dist/components/composer/ComposerCommandMenu.d.ts +37 -0
  227. package/dist/components/composer/ComposerCommandMenu.js +208 -0
  228. package/dist/components/composer/ComposerInput.d.ts +22 -0
  229. package/dist/components/composer/ComposerInput.js +96 -0
  230. package/dist/components/composer/ComposerModelPicker.d.ts +32 -0
  231. package/dist/components/composer/ComposerModelPicker.js +223 -0
  232. package/dist/components/composer/ComposerSubmit.d.ts +16 -0
  233. package/dist/components/composer/ComposerSubmit.js +52 -0
  234. package/dist/components/composer/ComposerToolbar.d.ts +38 -0
  235. package/dist/components/composer/ComposerToolbar.js +9 -0
  236. package/dist/components/composer/caret.d.ts +69 -0
  237. package/dist/components/composer/caret.js +112 -0
  238. package/dist/components/composer/index.d.ts +18 -0
  239. package/dist/components/composer/types.d.ts +86 -0
  240. package/dist/components/composer/types.js +7 -0
  241. package/dist/components/confetti/Confetti.d.ts +37 -0
  242. package/dist/components/confetti/Confetti.js +45 -0
  243. package/dist/components/confetti/ConfettiButton.d.ts +23 -0
  244. package/dist/components/confetti/ConfettiButton.js +29 -0
  245. package/dist/components/confetti/context.d.ts +21 -0
  246. package/dist/components/confetti/context.js +6 -0
  247. package/dist/components/confetti/index.d.ts +4 -0
  248. package/dist/components/container-scroll/ContainerScroll.d.ts +10 -0
  249. package/dist/components/container-scroll/ContainerScroll.js +74 -0
  250. package/dist/components/container-scroll/index.d.ts +2 -0
  251. package/dist/components/container-text-flip/ContainerTextFlip.d.ts +9 -0
  252. package/dist/components/container-text-flip/ContainerTextFlip.js +58 -0
  253. package/dist/components/container-text-flip/index.d.ts +2 -0
  254. package/dist/components/context-menu/ContextMenu.d.ts +39 -0
  255. package/dist/components/context-menu/ContextMenu.js +105 -0
  256. package/dist/components/context-menu/ContextMenuContent.d.ts +27 -0
  257. package/dist/components/context-menu/ContextMenuContent.js +97 -0
  258. package/dist/components/context-menu/ContextMenuTrigger.d.ts +26 -0
  259. package/dist/components/context-menu/ContextMenuTrigger.js +37 -0
  260. package/dist/components/context-menu/index.d.ts +20 -0
  261. package/dist/components/context-menu/types.d.ts +52 -0
  262. package/dist/components/context-menu/types.js +17 -0
  263. package/dist/components/context-ring/ContextRing.d.ts +33 -0
  264. package/dist/components/context-ring/ContextRing.js +257 -0
  265. package/dist/components/context-ring/index.d.ts +2 -0
  266. package/dist/components/copy-button/CopyButton.d.ts +39 -0
  267. package/dist/components/copy-button/CopyButton.js +124 -0
  268. package/dist/components/copy-button/index.d.ts +2 -0
  269. package/dist/components/date-picker/DatePicker.d.ts +58 -0
  270. package/dist/components/date-picker/DatePicker.js +331 -0
  271. package/dist/components/date-picker/date-utils.d.ts +39 -0
  272. package/dist/components/date-picker/date-utils.js +85 -0
  273. package/dist/components/date-picker/index.d.ts +2 -0
  274. package/dist/components/dialog/Dialog.d.ts +29 -0
  275. package/dist/components/dialog/Dialog.js +105 -0
  276. package/dist/components/dialog/DialogSurface.d.ts +2 -0
  277. package/dist/components/dialog/DialogSurface.js +98 -0
  278. package/dist/components/dialog/index.d.ts +2 -0
  279. package/dist/components/dialog/types.d.ts +61 -0
  280. package/dist/components/dim-siblings/DimSiblings.d.ts +30 -0
  281. package/dist/components/dim-siblings/DimSiblings.js +47 -0
  282. package/dist/components/dim-siblings/index.d.ts +2 -0
  283. package/dist/components/direction-aware-hover/DirectionAwareHover.d.ts +10 -0
  284. package/dist/components/direction-aware-hover/DirectionAwareHover.js +185 -0
  285. package/dist/components/direction-aware-hover/index.d.ts +2 -0
  286. package/dist/components/displacement-text/DisplacementText.d.ts +26 -0
  287. package/dist/components/displacement-text/DisplacementText.js +185 -0
  288. package/dist/components/displacement-text/index.d.ts +2 -0
  289. package/dist/components/dock/Dock.d.ts +28 -0
  290. package/dist/components/dock/Dock.js +80 -0
  291. package/dist/components/dock/DockIcon.d.ts +17 -0
  292. package/dist/components/dock/DockIcon.js +38 -0
  293. package/dist/components/dock/DockSeparator.d.ts +6 -0
  294. package/dist/components/dock/DockSeparator.js +20 -0
  295. package/dist/components/dock/index.d.ts +7 -0
  296. package/dist/components/dock/types.d.ts +47 -0
  297. package/dist/components/dock/types.js +15 -0
  298. package/dist/components/drawer/Drawer.d.ts +34 -0
  299. package/dist/components/drawer/Drawer.js +237 -0
  300. package/dist/components/drawer/index.d.ts +2 -0
  301. package/dist/components/dropdown-menu/DropdownMenu.d.ts +38 -0
  302. package/dist/components/dropdown-menu/DropdownMenu.js +99 -0
  303. package/dist/components/dropdown-menu/DropdownMenuContent.d.ts +15 -0
  304. package/dist/components/dropdown-menu/DropdownMenuContent.js +111 -0
  305. package/dist/components/dropdown-menu/DropdownMenuItem.d.ts +26 -0
  306. package/dist/components/dropdown-menu/DropdownMenuItem.js +74 -0
  307. package/dist/components/dropdown-menu/DropdownMenuLabel.d.ts +15 -0
  308. package/dist/components/dropdown-menu/DropdownMenuLabel.js +18 -0
  309. package/dist/components/dropdown-menu/DropdownMenuSeparator.d.ts +6 -0
  310. package/dist/components/dropdown-menu/DropdownMenuSeparator.js +15 -0
  311. package/dist/components/dropdown-menu/DropdownMenuSub.d.ts +10 -0
  312. package/dist/components/dropdown-menu/DropdownMenuSub.js +110 -0
  313. package/dist/components/dropdown-menu/DropdownMenuSubContent.d.ts +15 -0
  314. package/dist/components/dropdown-menu/DropdownMenuSubContent.js +139 -0
  315. package/dist/components/dropdown-menu/DropdownMenuSubTrigger.d.ts +17 -0
  316. package/dist/components/dropdown-menu/DropdownMenuSubTrigger.js +104 -0
  317. package/dist/components/dropdown-menu/DropdownMenuTrigger.d.ts +16 -0
  318. package/dist/components/dropdown-menu/DropdownMenuTrigger.js +67 -0
  319. package/dist/components/dropdown-menu/index.d.ts +20 -0
  320. package/dist/components/dropdown-menu/menu-shared.d.ts +39 -0
  321. package/dist/components/dropdown-menu/menu-shared.js +48 -0
  322. package/dist/components/dropdown-menu/types.d.ts +159 -0
  323. package/dist/components/dropdown-menu/types.js +32 -0
  324. package/dist/components/editorial-engine/EditorialEngine.d.ts +21 -0
  325. package/dist/components/editorial-engine/EditorialEngine.js +68 -0
  326. package/dist/components/editorial-engine/engine.d.ts +7 -0
  327. package/dist/components/editorial-engine/engine.js +558 -0
  328. package/dist/components/editorial-engine/index.d.ts +2 -0
  329. package/dist/components/file-upload/FileUpload.d.ts +63 -0
  330. package/dist/components/file-upload/FileUpload.js +438 -0
  331. package/dist/components/file-upload/index.d.ts +2 -0
  332. package/dist/components/fireworks-hdr/FireworksHdr.d.ts +56 -0
  333. package/dist/components/fireworks-hdr/FireworksHdr.js +426 -0
  334. package/dist/components/fireworks-hdr/dev.d.ts +1 -0
  335. package/dist/components/fireworks-hdr/dev.js +8 -0
  336. package/dist/components/fireworks-hdr/fireworks-shared.d.ts +444 -0
  337. package/dist/components/fireworks-hdr/fireworks-shared.js +1205 -0
  338. package/dist/components/fireworks-hdr/index.d.ts +4 -0
  339. package/dist/components/fireworks-hdr/webgl2-renderer.d.ts +20 -0
  340. package/dist/components/fireworks-hdr/webgl2-renderer.js +517 -0
  341. package/dist/components/fireworks-hdr/webgpu-renderer.d.ts +51 -0
  342. package/dist/components/fireworks-hdr/webgpu-renderer.js +461 -0
  343. package/dist/components/fireworks-hdr/webgpu-types.d.ts +159 -0
  344. package/dist/components/flickering-grid/FlickeringGrid.d.ts +33 -0
  345. package/dist/components/flickering-grid/FlickeringGrid.js +154 -0
  346. package/dist/components/flickering-grid/index.d.ts +2 -0
  347. package/dist/components/flip-card/FlipCard.d.ts +8 -0
  348. package/dist/components/flip-card/FlipCard.js +35 -0
  349. package/dist/components/flip-card/index.d.ts +2 -0
  350. package/dist/components/flip-words/FlipWords.d.ts +16 -0
  351. package/dist/components/flip-words/FlipWords.js +82 -0
  352. package/dist/components/flip-words/index.d.ts +2 -0
  353. package/dist/components/fluid-cursor/FluidCursor.d.ts +61 -0
  354. package/dist/components/fluid-cursor/FluidCursor.js +1479 -0
  355. package/dist/components/fluid-cursor/fluid-shared.d.ts +74 -0
  356. package/dist/components/fluid-cursor/fluid-shared.js +120 -0
  357. package/dist/components/fluid-cursor/index.d.ts +8 -0
  358. package/dist/components/fluid-cursor/webgpu-engine.d.ts +36 -0
  359. package/dist/components/fluid-cursor/webgpu-engine.js +922 -0
  360. package/dist/components/focus/Focus.d.ts +24 -0
  361. package/dist/components/focus/Focus.js +103 -0
  362. package/dist/components/focus/index.d.ts +2 -0
  363. package/dist/components/form-field/FormField.d.ts +46 -0
  364. package/dist/components/form-field/FormField.js +151 -0
  365. package/dist/components/form-field/index.d.ts +2 -0
  366. package/dist/components/frosted-glass/FrostedGlass.d.ts +48 -0
  367. package/dist/components/frosted-glass/FrostedGlass.js +89 -0
  368. package/dist/components/frosted-glass/index.d.ts +2 -0
  369. package/dist/components/glare-card/GlareCard.d.ts +8 -0
  370. package/dist/components/glare-card/GlareCard.js +103 -0
  371. package/dist/components/glare-card/index.d.ts +2 -0
  372. package/dist/components/glow-border/GlowBorder.d.ts +8 -0
  373. package/dist/components/glow-border/GlowBorder.js +39 -0
  374. package/dist/components/glow-border/index.d.ts +2 -0
  375. package/dist/components/glowing-effect/GlowingEffect.d.ts +23 -0
  376. package/dist/components/glowing-effect/GlowingEffect.js +157 -0
  377. package/dist/components/glowing-effect/index.d.ts +2 -0
  378. package/dist/components/gradient-button/GradientButton.d.ts +28 -0
  379. package/dist/components/gradient-button/GradientButton.js +66 -0
  380. package/dist/components/gradient-button/index.d.ts +2 -0
  381. package/dist/components/hover-card/HoverCard.d.ts +57 -0
  382. package/dist/components/hover-card/HoverCard.js +139 -0
  383. package/dist/components/hover-card/index.d.ts +2 -0
  384. package/dist/components/hyper-text/HyperText.d.ts +25 -0
  385. package/dist/components/hyper-text/HyperText.js +102 -0
  386. package/dist/components/hyper-text/index.d.ts +2 -0
  387. package/dist/components/icon-button/IconButton.d.ts +46 -0
  388. package/dist/components/icon-button/IconButton.js +62 -0
  389. package/dist/components/icon-button/index.d.ts +2 -0
  390. package/dist/components/image-generation/ImageGeneration.d.ts +33 -0
  391. package/dist/components/image-generation/ImageGeneration.js +131 -0
  392. package/dist/components/image-generation/index.d.ts +2 -0
  393. package/dist/components/image-trail-cursor/ImageTrailCursor.d.ts +15 -0
  394. package/dist/components/image-trail-cursor/ImageTrailCursor.js +75 -0
  395. package/dist/components/image-trail-cursor/index.d.ts +3 -0
  396. package/dist/components/image-trail-cursor/trail-variants.d.ts +112 -0
  397. package/dist/components/image-trail-cursor/trail-variants.js +787 -0
  398. package/dist/components/inline-citation/InlineCitation.d.ts +23 -0
  399. package/dist/components/inline-citation/InlineCitation.js +179 -0
  400. package/dist/components/inline-citation/index.d.ts +2 -0
  401. package/dist/components/input/Input.d.ts +41 -0
  402. package/dist/components/input/Input.js +74 -0
  403. package/dist/components/input/index.d.ts +2 -0
  404. package/dist/components/interactive-grid-pattern/InteractiveGridPattern.d.ts +17 -0
  405. package/dist/components/interactive-grid-pattern/InteractiveGridPattern.js +89 -0
  406. package/dist/components/interactive-grid-pattern/index.d.ts +2 -0
  407. package/dist/components/interactive-hover-button/InteractiveHoverButton.d.ts +18 -0
  408. package/dist/components/interactive-hover-button/InteractiveHoverButton.js +66 -0
  409. package/dist/components/interactive-hover-button/index.d.ts +2 -0
  410. package/dist/components/label/Label.d.ts +18 -0
  411. package/dist/components/label/Label.js +28 -0
  412. package/dist/components/label/index.d.ts +2 -0
  413. package/dist/components/letter-pullup/LetterPullup.d.ts +16 -0
  414. package/dist/components/letter-pullup/LetterPullup.js +27 -0
  415. package/dist/components/letter-pullup/index.d.ts +2 -0
  416. package/dist/components/line-hover-link/LineHoverLink.d.ts +33 -0
  417. package/dist/components/line-hover-link/LineHoverLink.js +69 -0
  418. package/dist/components/line-hover-link/index.d.ts +2 -0
  419. package/dist/components/line-reveal/LineReveal.d.ts +31 -0
  420. package/dist/components/line-reveal/LineReveal.js +117 -0
  421. package/dist/components/line-reveal/index.d.ts +2 -0
  422. package/dist/components/line-shadow-text/LineShadowText.d.ts +18 -0
  423. package/dist/components/line-shadow-text/LineShadowText.js +26 -0
  424. package/dist/components/line-shadow-text/index.d.ts +2 -0
  425. package/dist/components/link/Link.d.ts +30 -0
  426. package/dist/components/link/Link.js +82 -0
  427. package/dist/components/link/index.d.ts +2 -0
  428. package/dist/components/liquid-glass/LiquidGlass.d.ts +49 -0
  429. package/dist/components/liquid-glass/LiquidGlass.js +165 -0
  430. package/dist/components/liquid-glass/index.d.ts +2 -0
  431. package/dist/components/liquid-text/LiquidText.d.ts +35 -0
  432. package/dist/components/liquid-text/LiquidText.js +882 -0
  433. package/dist/components/liquid-text/index.d.ts +2 -0
  434. package/dist/components/logo-cloud/AnimatedLogoCloud.d.ts +13 -0
  435. package/dist/components/logo-cloud/AnimatedLogoCloud.js +38 -0
  436. package/dist/components/logo-cloud/IconLogoCloud.d.ts +10 -0
  437. package/dist/components/logo-cloud/IconLogoCloud.js +20 -0
  438. package/dist/components/logo-cloud/StaticLogoCloud.d.ts +28 -0
  439. package/dist/components/logo-cloud/StaticLogoCloud.js +45 -0
  440. package/dist/components/logo-cloud/index.d.ts +6 -0
  441. package/dist/components/magnetic/Magnetic.d.ts +35 -0
  442. package/dist/components/magnetic/Magnetic.js +113 -0
  443. package/dist/components/magnetic/index.d.ts +2 -0
  444. package/dist/components/marquee/Marquee.d.ts +16 -0
  445. package/dist/components/marquee/Marquee.js +39 -0
  446. package/dist/components/marquee/ReviewCard.d.ts +8 -0
  447. package/dist/components/marquee/ReviewCard.js +17 -0
  448. package/dist/components/marquee/index.d.ts +4 -0
  449. package/dist/components/matrix-rain/MatrixRain.d.ts +35 -0
  450. package/dist/components/matrix-rain/MatrixRain.js +130 -0
  451. package/dist/components/matrix-rain/index.d.ts +2 -0
  452. package/dist/components/meteors/Meteors.d.ts +21 -0
  453. package/dist/components/meteors/Meteors.js +45 -0
  454. package/dist/components/meteors/index.d.ts +2 -0
  455. package/dist/components/mosaic-glow/MosaicGlow.d.ts +47 -0
  456. package/dist/components/mosaic-glow/MosaicGlow.js +438 -0
  457. package/dist/components/mosaic-glow/index.d.ts +2 -0
  458. package/dist/components/mosaic-glow/mosaic-glow-core.d.ts +94 -0
  459. package/dist/components/mosaic-glow/mosaic-glow-core.js +190 -0
  460. package/dist/components/navbar/Navbar.d.ts +25 -0
  461. package/dist/components/navbar/Navbar.js +27 -0
  462. package/dist/components/navbar/NavbarLink.d.ts +37 -0
  463. package/dist/components/navbar/NavbarLink.js +48 -0
  464. package/dist/components/navbar/index.d.ts +4 -0
  465. package/dist/components/navigation-menu/NavigationMenu.d.ts +28 -0
  466. package/dist/components/navigation-menu/NavigationMenu.js +202 -0
  467. package/dist/components/navigation-menu/NavigationMenuContent.d.ts +8 -0
  468. package/dist/components/navigation-menu/NavigationMenuContent.js +77 -0
  469. package/dist/components/navigation-menu/NavigationMenuItem.d.ts +20 -0
  470. package/dist/components/navigation-menu/NavigationMenuItem.js +18 -0
  471. package/dist/components/navigation-menu/NavigationMenuLink.d.ts +31 -0
  472. package/dist/components/navigation-menu/NavigationMenuLink.js +41 -0
  473. package/dist/components/navigation-menu/NavigationMenuList.d.ts +8 -0
  474. package/dist/components/navigation-menu/NavigationMenuList.js +33 -0
  475. package/dist/components/navigation-menu/NavigationMenuTrigger.d.ts +8 -0
  476. package/dist/components/navigation-menu/NavigationMenuTrigger.js +90 -0
  477. package/dist/components/navigation-menu/index.d.ts +14 -0
  478. package/dist/components/navigation-menu/types.d.ts +107 -0
  479. package/dist/components/navigation-menu/types.js +32 -0
  480. package/dist/components/neon-border/NeonBorder.d.ts +22 -0
  481. package/dist/components/neon-border/NeonBorder.js +50 -0
  482. package/dist/components/neon-border/index.d.ts +2 -0
  483. package/dist/components/noise-reveal/NoiseReveal.d.ts +29 -0
  484. package/dist/components/noise-reveal/NoiseReveal.js +329 -0
  485. package/dist/components/noise-reveal/index.d.ts +2 -0
  486. package/dist/components/number-input/NumberInput.d.ts +40 -0
  487. package/dist/components/number-input/NumberInput.js +207 -0
  488. package/dist/components/number-input/index.d.ts +2 -0
  489. package/dist/components/number-ticker/NumberTicker.d.ts +22 -0
  490. package/dist/components/number-ticker/NumberTicker.js +106 -0
  491. package/dist/components/number-ticker/index.d.ts +2 -0
  492. package/dist/components/pagination/Pagination.d.ts +43 -0
  493. package/dist/components/pagination/Pagination.js +156 -0
  494. package/dist/components/pagination/index.d.ts +2 -0
  495. package/dist/components/pagination/pagination-range.d.ts +11 -0
  496. package/dist/components/pagination/pagination-range.js +35 -0
  497. package/dist/components/password-input/PasswordInput.d.ts +56 -0
  498. package/dist/components/password-input/PasswordInput.js +246 -0
  499. package/dist/components/password-input/index.d.ts +2 -0
  500. package/dist/components/pixel-loader/PixelLoader.d.ts +18 -0
  501. package/dist/components/pixel-loader/PixelLoader.js +56 -0
  502. package/dist/components/pixel-loader/index.d.ts +2 -0
  503. package/dist/components/popover/Popover.d.ts +49 -0
  504. package/dist/components/popover/Popover.js +81 -0
  505. package/dist/components/popover/PopoverContent.d.ts +21 -0
  506. package/dist/components/popover/PopoverContent.js +78 -0
  507. package/dist/components/popover/index.d.ts +6 -0
  508. package/dist/components/popover/types.d.ts +64 -0
  509. package/dist/components/popover/types.js +17 -0
  510. package/dist/components/presence/Presence.d.ts +40 -0
  511. package/dist/components/presence/Presence.js +49 -0
  512. package/dist/components/presence/index.d.ts +2 -0
  513. package/dist/components/pressable/Pressable.d.ts +27 -0
  514. package/dist/components/pressable/Pressable.js +86 -0
  515. package/dist/components/pressable/index.d.ts +2 -0
  516. package/dist/components/prompt-suggestions/PromptSuggestions.d.ts +25 -0
  517. package/dist/components/prompt-suggestions/PromptSuggestions.js +68 -0
  518. package/dist/components/prompt-suggestions/index.d.ts +2 -0
  519. package/dist/components/pulse-beam/PulseBeam.d.ts +44 -0
  520. package/dist/components/pulse-beam/PulseBeam.js +197 -0
  521. package/dist/components/pulse-beam/index.d.ts +2 -0
  522. package/dist/components/pulse-beam/pulse-beam-data.d.ts +81 -0
  523. package/dist/components/pulse-beam/pulse-beam-data.js +306 -0
  524. package/dist/components/pulse-beam/pulse-beam-loop.d.ts +26 -0
  525. package/dist/components/pulse-beam/pulse-beam-loop.js +58 -0
  526. package/dist/components/radio-group/RadioGroup.d.ts +56 -0
  527. package/dist/components/radio-group/RadioGroup.js +82 -0
  528. package/dist/components/radio-group/RadioGroupItem.d.ts +21 -0
  529. package/dist/components/radio-group/RadioGroupItem.js +47 -0
  530. package/dist/components/radio-group/index.d.ts +6 -0
  531. package/dist/components/radio-group/types.d.ts +50 -0
  532. package/dist/components/radio-group/types.js +7 -0
  533. package/dist/components/rainbow-button/RainbowButton.d.ts +21 -0
  534. package/dist/components/rainbow-button/RainbowButton.js +59 -0
  535. package/dist/components/rainbow-button/index.d.ts +2 -0
  536. package/dist/components/reasoning-panel/ReasoningPanel.d.ts +38 -0
  537. package/dist/components/reasoning-panel/ReasoningPanel.js +172 -0
  538. package/dist/components/reasoning-panel/index.d.ts +2 -0
  539. package/dist/components/recommendation-card/RecommendationCard.d.ts +53 -0
  540. package/dist/components/recommendation-card/RecommendationCard.js +234 -0
  541. package/dist/components/recommendation-card/index.d.ts +2 -0
  542. package/dist/components/reveal/Reveal.d.ts +36 -0
  543. package/dist/components/reveal/Reveal.js +138 -0
  544. package/dist/components/reveal/index.d.ts +2 -0
  545. package/dist/components/ripple/Ripple.d.ts +11 -0
  546. package/dist/components/ripple/Ripple.js +45 -0
  547. package/dist/components/ripple/index.d.ts +2 -0
  548. package/dist/components/ripple-button/RippleButton.d.ts +17 -0
  549. package/dist/components/ripple-button/RippleButton.js +77 -0
  550. package/dist/components/ripple-button/index.d.ts +2 -0
  551. package/dist/components/scroll-anchor/ScrollAnchor.d.ts +33 -0
  552. package/dist/components/scroll-anchor/ScrollAnchor.js +99 -0
  553. package/dist/components/scroll-anchor/index.d.ts +2 -0
  554. package/dist/components/scroll-progress/ScrollProgress.d.ts +39 -0
  555. package/dist/components/scroll-progress/ScrollProgress.js +118 -0
  556. package/dist/components/scroll-progress/index.d.ts +2 -0
  557. package/dist/components/search-input/SearchInput.d.ts +56 -0
  558. package/dist/components/search-input/SearchInput.js +192 -0
  559. package/dist/components/search-input/index.d.ts +2 -0
  560. package/dist/components/select/Select.d.ts +44 -0
  561. package/dist/components/select/Select.js +255 -0
  562. package/dist/components/select/SelectPanel.d.ts +33 -0
  563. package/dist/components/select/SelectPanel.js +108 -0
  564. package/dist/components/select/index.d.ts +3 -0
  565. package/dist/components/select/types.d.ts +83 -0
  566. package/dist/components/select/types.js +8 -0
  567. package/dist/components/sheet/Sheet.d.ts +40 -0
  568. package/dist/components/sheet/Sheet.js +183 -0
  569. package/dist/components/sheet/index.d.ts +2 -0
  570. package/dist/components/shimmer-button/ShimmerButton.d.ts +26 -0
  571. package/dist/components/shimmer-button/ShimmerButton.js +69 -0
  572. package/dist/components/shimmer-button/index.d.ts +2 -0
  573. package/dist/components/sidebar/Sidebar.d.ts +17 -0
  574. package/dist/components/sidebar/Sidebar.js +27 -0
  575. package/dist/components/sidebar/SidebarFooter.d.ts +10 -0
  576. package/dist/components/sidebar/SidebarFooter.js +31 -0
  577. package/dist/components/sidebar/SidebarGroup.d.ts +10 -0
  578. package/dist/components/sidebar/SidebarGroup.js +28 -0
  579. package/dist/components/sidebar/SidebarItem.d.ts +33 -0
  580. package/dist/components/sidebar/SidebarItem.js +81 -0
  581. package/dist/components/sidebar/SidebarSeparator.d.ts +5 -0
  582. package/dist/components/sidebar/SidebarSeparator.js +13 -0
  583. package/dist/components/sidebar/index.d.ts +12 -0
  584. package/dist/components/sidebar/types.d.ts +36 -0
  585. package/dist/components/sidebar/types.js +7 -0
  586. package/dist/components/skeleton/Skeleton.d.ts +35 -0
  587. package/dist/components/skeleton/Skeleton.js +106 -0
  588. package/dist/components/skeleton/index.d.ts +2 -0
  589. package/dist/components/slider/Slider.d.ts +32 -0
  590. package/dist/components/slider/Slider.js +119 -0
  591. package/dist/components/slider/index.d.ts +2 -0
  592. package/dist/components/smooth-cursor/SmoothCursor.d.ts +18 -0
  593. package/dist/components/smooth-cursor/SmoothCursor.js +186 -0
  594. package/dist/components/smooth-cursor/index.d.ts +2 -0
  595. package/dist/components/sources/SourceCard.d.ts +21 -0
  596. package/dist/components/sources/SourceCard.js +48 -0
  597. package/dist/components/sources/Sources.d.ts +31 -0
  598. package/dist/components/sources/Sources.js +39 -0
  599. package/dist/components/sources/SourcesList.d.ts +13 -0
  600. package/dist/components/sources/SourcesList.js +42 -0
  601. package/dist/components/sources/SourcesTrigger.d.ts +11 -0
  602. package/dist/components/sources/SourcesTrigger.js +50 -0
  603. package/dist/components/sources/index.d.ts +10 -0
  604. package/dist/components/sources/types.d.ts +45 -0
  605. package/dist/components/sources/types.js +7 -0
  606. package/dist/components/sparkles/Sparkles.d.ts +35 -0
  607. package/dist/components/sparkles/Sparkles.js +112 -0
  608. package/dist/components/sparkles/index.d.ts +2 -0
  609. package/dist/components/sparkles-text/SparklesText.d.ts +28 -0
  610. package/dist/components/sparkles-text/SparklesText.js +84 -0
  611. package/dist/components/sparkles-text/index.d.ts +2 -0
  612. package/dist/components/status-morph/StatusMorph.d.ts +47 -0
  613. package/dist/components/status-morph/StatusMorph.js +110 -0
  614. package/dist/components/status-morph/index.d.ts +2 -0
  615. package/dist/components/stepper/Step.d.ts +24 -0
  616. package/dist/components/stepper/Step.js +152 -0
  617. package/dist/components/stepper/Stepper.d.ts +38 -0
  618. package/dist/components/stepper/Stepper.js +79 -0
  619. package/dist/components/stepper/index.d.ts +6 -0
  620. package/dist/components/stepper/types.d.ts +66 -0
  621. package/dist/components/stepper/types.js +7 -0
  622. package/dist/components/sticky-scroll/StickyScroll.d.ts +40 -0
  623. package/dist/components/sticky-scroll/StickyScroll.js +163 -0
  624. package/dist/components/sticky-scroll/index.d.ts +2 -0
  625. package/dist/components/streaming-text/StreamingText.d.ts +20 -0
  626. package/dist/components/streaming-text/StreamingText.js +32 -0
  627. package/dist/components/streaming-text/index.d.ts +2 -0
  628. package/dist/components/subagent-list/SubagentList.d.ts +28 -0
  629. package/dist/components/subagent-list/SubagentList.js +167 -0
  630. package/dist/components/subagent-list/index.d.ts +2 -0
  631. package/dist/components/switch/Switch.d.ts +55 -0
  632. package/dist/components/switch/Switch.js +77 -0
  633. package/dist/components/switch/index.d.ts +2 -0
  634. package/dist/components/tabs/Tabs.d.ts +43 -0
  635. package/dist/components/tabs/Tabs.js +123 -0
  636. package/dist/components/tabs/TabsContent.d.ts +26 -0
  637. package/dist/components/tabs/TabsContent.js +64 -0
  638. package/dist/components/tabs/TabsList.d.ts +16 -0
  639. package/dist/components/tabs/TabsList.js +152 -0
  640. package/dist/components/tabs/TabsTrigger.d.ts +19 -0
  641. package/dist/components/tabs/TabsTrigger.js +138 -0
  642. package/dist/components/tabs/index.d.ts +10 -0
  643. package/dist/components/tabs/types.d.ts +94 -0
  644. package/dist/components/tabs/types.js +7 -0
  645. package/dist/components/terminal-block/TerminalBlock.d.ts +27 -0
  646. package/dist/components/terminal-block/TerminalBlock.js +120 -0
  647. package/dist/components/terminal-block/ansi.d.ts +30 -0
  648. package/dist/components/terminal-block/ansi.js +114 -0
  649. package/dist/components/terminal-block/index.d.ts +2 -0
  650. package/dist/components/terminal-text/TerminalText.d.ts +11 -0
  651. package/dist/components/terminal-text/TerminalText.js +140 -0
  652. package/dist/components/terminal-text/index.d.ts +2 -0
  653. package/dist/components/text-generate-effect/TextGenerateEffect.d.ts +9 -0
  654. package/dist/components/text-generate-effect/TextGenerateEffect.js +58 -0
  655. package/dist/components/text-generate-effect/index.d.ts +2 -0
  656. package/dist/components/text-reveal-card/TextRevealCard.d.ts +21 -0
  657. package/dist/components/text-reveal-card/TextRevealCard.js +107 -0
  658. package/dist/components/text-reveal-card/TextRevealStars.d.ts +25 -0
  659. package/dist/components/text-reveal-card/TextRevealStars.js +59 -0
  660. package/dist/components/text-reveal-card/index.d.ts +4 -0
  661. package/dist/components/text-roll/TextRoll.d.ts +43 -0
  662. package/dist/components/text-roll/TextRoll.js +242 -0
  663. package/dist/components/text-roll/index.d.ts +2 -0
  664. package/dist/components/text-roll/roll-transitions.d.ts +74 -0
  665. package/dist/components/text-roll/roll-transitions.js +31 -0
  666. package/dist/components/textarea/Textarea.d.ts +48 -0
  667. package/dist/components/textarea/Textarea.js +129 -0
  668. package/dist/components/textarea/index.d.ts +2 -0
  669. package/dist/components/thinking-indicator/ThinkingIndicator.d.ts +26 -0
  670. package/dist/components/thinking-indicator/ThinkingIndicator.js +60 -0
  671. package/dist/components/thinking-indicator/index.d.ts +2 -0
  672. package/dist/components/thread-list/ThreadList.d.ts +44 -0
  673. package/dist/components/thread-list/ThreadList.js +178 -0
  674. package/dist/components/thread-list/index.d.ts +2 -0
  675. package/dist/components/time-picker/TimePicker.d.ts +44 -0
  676. package/dist/components/time-picker/TimePicker.js +254 -0
  677. package/dist/components/time-picker/TimePickerPanel.d.ts +30 -0
  678. package/dist/components/time-picker/TimePickerPanel.js +94 -0
  679. package/dist/components/time-picker/index.d.ts +2 -0
  680. package/dist/components/time-picker/time-utils.d.ts +33 -0
  681. package/dist/components/time-picker/time-utils.js +65 -0
  682. package/dist/components/time-picker/types.d.ts +53 -0
  683. package/dist/components/time-picker/types.js +10 -0
  684. package/dist/components/timeline/Timeline.d.ts +18 -0
  685. package/dist/components/timeline/Timeline.js +96 -0
  686. package/dist/components/timeline/index.d.ts +2 -0
  687. package/dist/components/toast/Toast.d.ts +16 -0
  688. package/dist/components/toast/Toast.js +99 -0
  689. package/dist/components/toast/Toaster.d.ts +19 -0
  690. package/dist/components/toast/Toaster.js +147 -0
  691. package/dist/components/toast/index.d.ts +6 -0
  692. package/dist/components/toast/store.d.ts +102 -0
  693. package/dist/components/toast/store.js +118 -0
  694. package/dist/components/toggle/Toggle.d.ts +28 -0
  695. package/dist/components/toggle/Toggle.js +69 -0
  696. package/dist/components/toggle/index.d.ts +2 -0
  697. package/dist/components/toggle-group/ToggleGroup.d.ts +42 -0
  698. package/dist/components/toggle-group/ToggleGroup.js +150 -0
  699. package/dist/components/toggle-group/ToggleGroupItem.d.ts +21 -0
  700. package/dist/components/toggle-group/ToggleGroupItem.js +100 -0
  701. package/dist/components/toggle-group/index.d.ts +6 -0
  702. package/dist/components/toggle-group/types.d.ts +75 -0
  703. package/dist/components/toggle-group/types.js +7 -0
  704. package/dist/components/tool-call/ToolCall.d.ts +39 -0
  705. package/dist/components/tool-call/ToolCall.js +195 -0
  706. package/dist/components/tool-call/index.d.ts +2 -0
  707. package/dist/components/tool-timeline/ToolTimeline.d.ts +31 -0
  708. package/dist/components/tool-timeline/ToolTimeline.js +99 -0
  709. package/dist/components/tool-timeline/index.d.ts +2 -0
  710. package/dist/components/tooltip/Tooltip.d.ts +36 -0
  711. package/dist/components/tooltip/Tooltip.js +214 -0
  712. package/dist/components/tooltip/index.d.ts +2 -0
  713. package/dist/components/tracing-beam/TracingBeam.d.ts +11 -0
  714. package/dist/components/tracing-beam/TracingBeam.js +163 -0
  715. package/dist/components/tracing-beam/index.d.ts +2 -0
  716. package/dist/components/typing-indicator/TypingIndicator.d.ts +17 -0
  717. package/dist/components/typing-indicator/TypingIndicator.js +47 -0
  718. package/dist/components/typing-indicator/index.d.ts +2 -0
  719. package/dist/components/voice-input/VoiceInput.d.ts +60 -0
  720. package/dist/components/voice-input/VoiceInput.js +268 -0
  721. package/dist/components/voice-input/index.d.ts +2 -0
  722. package/dist/components/web-search/WebSearch.d.ts +37 -0
  723. package/dist/components/web-search/WebSearch.js +135 -0
  724. package/dist/components/web-search/index.d.ts +2 -0
  725. package/dist/index.d.ts +148 -0
  726. package/dist/index.js +489 -0
  727. package/dist/internals/Portal.d.ts +35 -0
  728. package/dist/internals/Portal.js +37 -0
  729. package/dist/internals/StreamText.d.ts +20 -0
  730. package/dist/internals/StreamText.js +25 -0
  731. package/dist/internals/ai-types.d.ts +117 -0
  732. package/dist/internals/anchor-position.d.ts +79 -0
  733. package/dist/internals/anchor-position.js +154 -0
  734. package/dist/internals/calendar-core.d.ts +26 -0
  735. package/dist/internals/calendar-core.js +57 -0
  736. package/dist/internals/diff.d.ts +38 -0
  737. package/dist/internals/diff.js +176 -0
  738. package/dist/internals/dismissable.d.ts +76 -0
  739. package/dist/internals/dismissable.js +105 -0
  740. package/dist/internals/dom/context.d.ts +16 -0
  741. package/dist/internals/dom/context.js +20 -0
  742. package/dist/internals/dom/ssr.d.ts +21 -0
  743. package/dist/internals/dom/ssr.js +21 -0
  744. package/dist/internals/dom/types.d.ts +9 -0
  745. package/dist/internals/dom/use-composed-refs.d.ts +15 -0
  746. package/dist/internals/dom/use-composed-refs.js +34 -0
  747. package/dist/internals/dom/use-element-ref.d.ts +11 -0
  748. package/dist/internals/dom/use-element-ref.js +12 -0
  749. package/dist/internals/dom/use-event-callback.d.ts +14 -0
  750. package/dist/internals/dom/use-event-callback.js +12 -0
  751. package/dist/internals/dom/use-inert-attribute.d.ts +26 -0
  752. package/dist/internals/dom/use-inert-attribute.js +22 -0
  753. package/dist/internals/dom/use-live-ref.d.ts +10 -0
  754. package/dist/internals/dom/use-live-ref.js +12 -0
  755. package/dist/internals/field.d.ts +136 -0
  756. package/dist/internals/field.js +33 -0
  757. package/dist/internals/float.d.ts +47 -0
  758. package/dist/internals/float.js +31 -0
  759. package/dist/internals/focus-trap.d.ts +82 -0
  760. package/dist/internals/focus-trap.js +145 -0
  761. package/dist/internals/host.d.ts +38 -0
  762. package/dist/internals/host.js +24 -0
  763. package/dist/internals/listbox.d.ts +101 -0
  764. package/dist/internals/listbox.js +171 -0
  765. package/dist/internals/markdown/Markdown.d.ts +22 -0
  766. package/dist/internals/markdown/Markdown.js +53 -0
  767. package/dist/internals/markdown/MarkdownInline.d.ts +5 -0
  768. package/dist/internals/markdown/MarkdownInline.js +40 -0
  769. package/dist/internals/markdown.d.ts +66 -0
  770. package/dist/internals/markdown.js +467 -0
  771. package/dist/internals/menu.d.ts +121 -0
  772. package/dist/internals/menu.js +217 -0
  773. package/dist/internals/motion/anchored.d.ts +104 -0
  774. package/dist/internals/motion/anchored.js +44 -0
  775. package/dist/internals/motion/animate.d.ts +92 -0
  776. package/dist/internals/motion/animate.js +84 -0
  777. package/dist/internals/motion/easing.d.ts +20 -0
  778. package/dist/internals/motion/easing.js +13 -0
  779. package/dist/internals/motion/haptics.d.ts +42 -0
  780. package/dist/internals/motion/haptics.js +29 -0
  781. package/dist/internals/motion/in-view.d.ts +67 -0
  782. package/dist/internals/motion/in-view.js +97 -0
  783. package/dist/internals/motion/media-query.d.ts +50 -0
  784. package/dist/internals/motion/media-query.js +54 -0
  785. package/dist/internals/motion/presence.d.ts +108 -0
  786. package/dist/internals/motion/presence.js +197 -0
  787. package/dist/internals/motion/presets.d.ts +34 -0
  788. package/dist/internals/motion/presets.js +19 -0
  789. package/dist/internals/motion/raf.d.ts +35 -0
  790. package/dist/internals/motion/raf.js +27 -0
  791. package/dist/internals/motion/stagger.d.ts +32 -0
  792. package/dist/internals/motion/stagger.js +15 -0
  793. package/dist/internals/motion/tokens.d.ts +97 -0
  794. package/dist/internals/motion/tokens.js +18 -0
  795. package/dist/internals/motion/transitions.d.ts +66 -0
  796. package/dist/internals/motion/transitions.js +41 -0
  797. package/dist/internals/motion/types.d.ts +17 -0
  798. package/dist/internals/relative-time.d.ts +25 -0
  799. package/dist/internals/relative-time.js +46 -0
  800. package/dist/internals/scroll-lock.d.ts +26 -0
  801. package/dist/internals/scroll-lock.js +65 -0
  802. package/dist/internals/use-anchor-position.d.ts +54 -0
  803. package/dist/internals/use-anchor-position.js +87 -0
  804. package/dist/internals/use-autoscroll.d.ts +43 -0
  805. package/dist/internals/use-autoscroll.js +128 -0
  806. package/dist/internals/use-copy.d.ts +54 -0
  807. package/dist/internals/use-copy.js +67 -0
  808. package/dist/internals/use-elapsed.d.ts +96 -0
  809. package/dist/internals/use-elapsed.js +195 -0
  810. package/dist/internals/use-float.d.ts +49 -0
  811. package/dist/internals/use-float.js +150 -0
  812. package/dist/internals/use-id.d.ts +22 -0
  813. package/dist/internals/use-id.js +20 -0
  814. package/dist/internals/use-text-stream.d.ts +94 -0
  815. package/dist/internals/use-text-stream.js +133 -0
  816. package/dist/internals/waveform-core.d.ts +33 -0
  817. package/dist/internals/waveform-core.js +39 -0
  818. package/dist/sound/SoundToggle.d.ts +23 -0
  819. package/dist/sound/SoundToggle.js +96 -0
  820. package/dist/sound/engine.d.ts +67 -0
  821. package/dist/sound/engine.js +370 -0
  822. package/dist/sound/index.d.ts +7 -0
  823. package/dist/sound/sound-feedback.d.ts +77 -0
  824. package/dist/sound/sound-feedback.js +152 -0
  825. package/dist/sound/sound.d.ts +98 -0
  826. package/dist/sound/sound.js +309 -0
  827. package/dist/sound/themes.d.ts +19 -0
  828. package/dist/sound/themes.js +355 -0
  829. package/dist/sound/types.d.ts +125 -0
  830. package/dist/sound/types.js +54 -0
  831. package/dist/sound/use-sound.d.ts +53 -0
  832. package/dist/sound/use-sound.js +82 -0
  833. package/dist/styles.css +7975 -0
  834. package/dist/utils.d.ts +3 -0
  835. package/dist/utils.js +8 -0
  836. package/package.json +96 -0
  837. package/tailwind.css +132 -0
@@ -0,0 +1,59 @@
1
+ "use client";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import { memo, useMemo } from "react";
4
+ import { cn } from "../../utils.js";
5
+ /* empty css */
6
+ function mulberry32(seed) {
7
+ let state = seed >>> 0;
8
+ return () => {
9
+ state = state + 1831565813 >>> 0;
10
+ let t = state;
11
+ t = Math.imul(t ^ t >>> 15, t | 1);
12
+ t ^= t + Math.imul(t ^ t >>> 7, t | 61);
13
+ return ((t ^ t >>> 14) >>> 0) / 4294967296;
14
+ };
15
+ }
16
+ function createStars(starsCount, seed) {
17
+ const random = mulberry32(seed);
18
+ const randomMove = () => random() * 4 - 2;
19
+ return Array.from({ length: starsCount }, () => ({
20
+ top: `calc(${random() * 100}% + ${randomMove()}px)`,
21
+ left: `calc(${random() * 100}% + ${randomMove()}px)`,
22
+ targetTop: `calc(${random() * 100}% + ${randomMove()}px)`,
23
+ targetLeft: `calc(${random() * 100}% + ${randomMove()}px)`,
24
+ opacity: random(),
25
+ duration: random() * 10 + 20
26
+ }));
27
+ }
28
+ const TextRevealStars = memo(function TextRevealStars2({
29
+ starsCount = 130,
30
+ className,
31
+ seed = 1
32
+ }) {
33
+ const stars = useMemo(() => createStars(starsCount, seed), [starsCount, seed]);
34
+ return (
35
+ // `text-reveal-stars` is port-added: the CSS anchor class for the
36
+ // compiler-scoped `.star-animate` rule (see text-reveal-stars.css).
37
+ /* @__PURE__ */ jsx("div", { className: "text-reveal-stars absolute inset-0", children: stars.map((star, i) => /* @__PURE__ */ jsx(
38
+ "span",
39
+ {
40
+ className: cn(
41
+ "star-animate absolute z-[1] inline-block h-0.5 w-0.5 rounded-full bg-white",
42
+ className
43
+ ),
44
+ style: {
45
+ top: star.top,
46
+ left: star.left,
47
+ "--target-top": star.targetTop,
48
+ "--target-left": star.targetLeft,
49
+ "--star-opacity": star.opacity,
50
+ animationDuration: `${star.duration}s`
51
+ }
52
+ },
53
+ i
54
+ )) })
55
+ );
56
+ });
57
+ export {
58
+ TextRevealStars
59
+ };
@@ -0,0 +1,4 @@
1
+ export { TextRevealCard } from "./TextRevealCard.js";
2
+ export type { TextRevealCardProps } from "./TextRevealCard.js";
3
+ export { TextRevealStars } from "./TextRevealStars.js";
4
+ export type { TextRevealStarsProps } from "./TextRevealStars.js";
@@ -0,0 +1,43 @@
1
+ import type { HTMLAttributes } from "react";
2
+ import type { StaggerFrom } from "../../internals/motion/types.js";
3
+ export interface TextRollProps extends Omit<HTMLAttributes<HTMLSpanElement>, "children"> {
4
+ /**
5
+ * The text to display. A change after mount triggers a per-grapheme
6
+ * roll to the new value. TextRoll has no `trigger` prop of its own
7
+ * (unlike Reveal) — it only ever reacts to `value` changing, so the
8
+ * very first render is always a plain, non-animated real-layer text
9
+ * node. That is what keeps it safe from Presence's documented "no
10
+ * intro on first mount" trap without any special-casing here.
11
+ */
12
+ value: string;
13
+ /**
14
+ * Which way the cells travel. `"auto"` compares the trimmed old and
15
+ * new values as numbers and rolls up for an increase, down for a
16
+ * decrease; a non-numeric change, a tie, or an empty side falls back
17
+ * to `"up"`.
18
+ */
19
+ direction?: "auto" | "up" | "down";
20
+ /** Roll duration in ms. Collapsed to `0` under
21
+ * `prefers-reduced-motion: reduce` (synchronous swap). */
22
+ duration?: number;
23
+ /** Per-cell stagger step in ms, before compression — see
24
+ * `STAGGER_CAPS.text` (200ms total). Collapsed to `0` under reduced
25
+ * motion, same as `duration`. */
26
+ stagger?: number;
27
+ /** Stagger origin, forwarded to the shared `staggerDelay` helper. */
28
+ from?: StaggerFrom;
29
+ /** `font-variant-numeric: tabular-nums` on BOTH layers (must be both,
30
+ * or the two layers stop being the same width) — locks digit advance
31
+ * width, primarily useful alongside a numeric `direction="auto"`
32
+ * ticker. Does not fix general alignment risk for non-digit text. */
33
+ tabular?: boolean;
34
+ /**
35
+ * Off by default: a live region firing on every tick of a fast
36
+ * counter is worse than silence. `"polite"`/`"assertive"` put the
37
+ * matching `role` + `aria-live` pair on the real (unsplit) text layer
38
+ * only — the cell layer stays `aria-hidden` in every state, so
39
+ * assistive tech never gets fragmented per-grapheme spam.
40
+ */
41
+ live?: "off" | "polite" | "assertive";
42
+ }
43
+ export declare const TextRoll: import("react").ForwardRefExoticComponent<TextRollProps & import("react").RefAttributes<HTMLSpanElement>>;
@@ -0,0 +1,242 @@
1
+ "use client";
2
+ import { jsxs, jsx } from "react/jsx-runtime";
3
+ import { forwardRef, useMemo, useState, useRef, useEffect } from "react";
4
+ import { cn } from "../../utils.js";
5
+ import { useIsomorphicLayoutEffect } from "../../internals/dom/ssr.js";
6
+ import { useLiveRef } from "../../internals/dom/use-live-ref.js";
7
+ import { runTransition } from "../../internals/motion/animate.js";
8
+ import { useReducedMotion } from "../../internals/motion/media-query.js";
9
+ import { DURATIONS, STAGGER_CAPS, STAGGERS } from "../../internals/motion/tokens.js";
10
+ import { rollIn, rollOut } from "./roll-transitions.js";
11
+ /* empty css */
12
+ const DEFAULT_DURATION = DURATIONS.base;
13
+ function segmentGraphemes(text) {
14
+ if (typeof Intl.Segmenter !== "function") return [text];
15
+ const segmenter = new Intl.Segmenter(void 0, { granularity: "grapheme" });
16
+ const graphemes = [];
17
+ for (const { segment } of segmenter.segment(text)) graphemes.push(segment);
18
+ return graphemes;
19
+ }
20
+ function resolveDirection(prev, next, requested) {
21
+ if (requested !== "auto") return requested;
22
+ const p = prev.trim();
23
+ const n = next.trim();
24
+ if (p !== "" && n !== "") {
25
+ const pn = Number(p);
26
+ const nn = Number(n);
27
+ if (Number.isFinite(pn) && Number.isFinite(nn) && pn !== nn) return nn > pn ? "up" : "down";
28
+ }
29
+ return "up";
30
+ }
31
+ function mergeCells(current, prev) {
32
+ const currentKeys = new Set(current.map((c) => c.key));
33
+ const prevByKey = new Map(prev.map((c) => [c.key, c]));
34
+ const next = current.map((c) => {
35
+ const existing = prevByKey.get(c.key);
36
+ if (!existing) return { ...c, phase: "enter" };
37
+ if (existing.phase === "exit") return { ...existing, phase: "enter" };
38
+ return existing;
39
+ });
40
+ for (const p of prev) {
41
+ if (currentKeys.has(p.key)) continue;
42
+ next.push(p.phase === "exit" ? p : { ...p, phase: "exit" });
43
+ }
44
+ return next;
45
+ }
46
+ const TextRoll = forwardRef(function TextRoll2({
47
+ value,
48
+ direction = "auto",
49
+ duration = DEFAULT_DURATION,
50
+ // Same rationale as `DEFAULT_DURATION` above: `STAGGERS.char` IS
51
+ // TextRoll's per-grapheme step (that key's own comment in `tokens.ts`
52
+ // says so) — not a second `15` that could silently drift from it.
53
+ stagger = STAGGERS.char,
54
+ from = "first",
55
+ tabular = false,
56
+ live = "off",
57
+ className,
58
+ style,
59
+ ...restProps
60
+ }, ref) {
61
+ const reduced = useReducedMotion();
62
+ const effDuration = reduced ? 0 : duration;
63
+ const effStagger = reduced ? 0 : stagger;
64
+ const graphemes = useMemo(() => segmentGraphemes(value), [value]);
65
+ const [generation, setGeneration] = useState(0);
66
+ const [resolvedDirection, setResolvedDirection] = useState(
67
+ () => direction === "auto" ? "up" : direction
68
+ );
69
+ const [inFlight, setInFlight] = useState(0);
70
+ const rollState = inFlight > 0 ? "rolling" : "idle";
71
+ const cells = useMemo(
72
+ () => graphemes.map((grapheme, index) => ({
73
+ key: `${generation}:${index}:${grapheme}`,
74
+ grapheme,
75
+ index
76
+ })),
77
+ [graphemes, generation]
78
+ );
79
+ const [rendered, setRendered] = useState(
80
+ () => cells.map((c) => ({ ...c, phase: "idle" }))
81
+ );
82
+ const keysSignature = useMemo(() => cells.map((c) => c.key).join("\0"), [cells]);
83
+ const [prevKeysSignature, setPrevKeysSignature] = useState(keysSignature);
84
+ if (keysSignature !== prevKeysSignature) {
85
+ setPrevKeysSignature(keysSignature);
86
+ setRendered((prev) => mergeCells(cells, prev));
87
+ }
88
+ const effDurationRef = useLiveRef(effDuration);
89
+ const effStaggerRef = useLiveRef(effStagger);
90
+ const fromRef = useLiveRef(from);
91
+ const countRef = useLiveRef(graphemes.length);
92
+ const nodesRef = useRef(/* @__PURE__ */ new Map());
93
+ const legsRef = useRef(/* @__PURE__ */ new Map());
94
+ const refCallbacksRef = useRef(/* @__PURE__ */ new Map());
95
+ const dirRef = useRef(resolvedDirection);
96
+ function getCellRef(key) {
97
+ let callback = refCallbacksRef.current.get(key);
98
+ if (!callback) {
99
+ callback = (node) => {
100
+ if (node) {
101
+ nodesRef.current.set(key, node);
102
+ return;
103
+ }
104
+ nodesRef.current.delete(key);
105
+ const leg = legsRef.current.get(key);
106
+ leg?.run?.abort();
107
+ legsRef.current.delete(key);
108
+ if (refCallbacksRef.current.get(key) === callback) {
109
+ refCallbacksRef.current.delete(key);
110
+ }
111
+ };
112
+ refCallbacksRef.current.set(key, callback);
113
+ }
114
+ return callback;
115
+ }
116
+ function beginTransition() {
117
+ setInFlight((n) => n + 1);
118
+ }
119
+ function endTransition() {
120
+ setInFlight((n) => Math.max(0, n - 1));
121
+ }
122
+ function startLeg(cell, to) {
123
+ const node = nodesRef.current.get(cell.key);
124
+ if (!node) return;
125
+ const leg = legsRef.current.get(cell.key) ?? { run: void 0, to: null };
126
+ const params = {
127
+ direction: dirRef.current,
128
+ duration: effDurationRef.current,
129
+ index: cell.index,
130
+ count: countRef.current,
131
+ step: effStaggerRef.current,
132
+ from: fromRef.current
133
+ };
134
+ const spec = to === 1 ? rollIn(node, params) : rollOut(node, params);
135
+ const counterpart = leg.run;
136
+ leg.to = to;
137
+ leg.run = void 0;
138
+ legsRef.current.set(cell.key, leg);
139
+ beginTransition();
140
+ let finished = false;
141
+ const handle = { current: void 0 };
142
+ const run = runTransition(node, spec, to, counterpart, () => {
143
+ finished = true;
144
+ endTransition();
145
+ if (to === 1) {
146
+ handle.current?.abort();
147
+ leg.run = void 0;
148
+ return;
149
+ }
150
+ legsRef.current.delete(cell.key);
151
+ setRendered((prev) => prev.filter((p) => p.key !== cell.key));
152
+ });
153
+ handle.current = run;
154
+ if (!finished) leg.run = run;
155
+ }
156
+ const priorValueForDirectionRef = useRef(value);
157
+ const priorRequestedDirectionRef = useRef(direction);
158
+ useIsomorphicLayoutEffect(() => {
159
+ const nextValue = value;
160
+ const requested = direction;
161
+ if (priorValueForDirectionRef.current === nextValue && priorRequestedDirectionRef.current === requested) {
162
+ return;
163
+ }
164
+ const resolved = resolveDirection(
165
+ priorValueForDirectionRef.current ?? "",
166
+ nextValue ?? "",
167
+ requested
168
+ );
169
+ priorValueForDirectionRef.current = nextValue;
170
+ priorRequestedDirectionRef.current = requested;
171
+ dirRef.current = resolved;
172
+ setResolvedDirection(resolved);
173
+ }, [value, direction]);
174
+ useIsomorphicLayoutEffect(() => {
175
+ for (const cell of rendered) {
176
+ const desired = cell.phase === "exit" ? 0 : cell.phase === "enter" ? 1 : null;
177
+ if (desired === null) continue;
178
+ const leg = legsRef.current.get(cell.key);
179
+ if (leg && leg.to === desired) continue;
180
+ startLeg(cell, desired);
181
+ }
182
+ }, [rendered]);
183
+ const priorLengthRef = useRef(graphemes.length);
184
+ const backstopFirstRunRef = useRef(true);
185
+ useEffect(() => {
186
+ const nextLength = graphemes.length;
187
+ if (backstopFirstRunRef.current) {
188
+ backstopFirstRunRef.current = false;
189
+ priorLengthRef.current = nextLength;
190
+ return;
191
+ }
192
+ if (nextLength !== priorLengthRef.current) setGeneration((g) => g + 1);
193
+ priorLengthRef.current = nextLength;
194
+ const backstopMs = Math.max(
195
+ DURATIONS.entrance,
196
+ effDurationRef.current + STAGGER_CAPS.text + DURATIONS.fast
197
+ );
198
+ const timeoutId = setTimeout(() => {
199
+ setInFlight(0);
200
+ }, backstopMs);
201
+ return () => clearTimeout(timeoutId);
202
+ }, [value]);
203
+ useIsomorphicLayoutEffect(() => {
204
+ const legs = legsRef.current;
205
+ return () => {
206
+ for (const leg of legs.values()) leg.run?.abort();
207
+ legs.clear();
208
+ };
209
+ }, []);
210
+ const liveRole = live === "off" ? void 0 : live === "polite" ? "status" : "alert";
211
+ const liveAriaLive = live === "off" ? void 0 : live;
212
+ const vars = {};
213
+ if (duration !== DEFAULT_DURATION) vars["--ft-textroll-duration"] = `${duration}ms`;
214
+ const layerStyle = tabular ? { fontVariantNumeric: "tabular-nums" } : void 0;
215
+ return /* @__PURE__ */ jsxs(
216
+ "span",
217
+ {
218
+ ...restProps,
219
+ ref,
220
+ className: cn("ft-textroll", className),
221
+ style: { ...style, ...vars },
222
+ "data-state": rollState,
223
+ "data-direction": resolvedDirection,
224
+ children: [
225
+ /* @__PURE__ */ jsx("span", { className: "ft-textroll-real", style: layerStyle, role: liveRole, "aria-live": liveAriaLive, children: value }),
226
+ /* @__PURE__ */ jsx("span", { className: "ft-textroll-cells", "aria-hidden": "true", style: layerStyle, children: rendered.map((cell) => /* @__PURE__ */ jsx(
227
+ "span",
228
+ {
229
+ ref: getCellRef(cell.key),
230
+ className: "ft-textroll-cell",
231
+ style: { gridColumnStart: cell.index + 1 },
232
+ children: cell.grapheme
233
+ },
234
+ cell.key
235
+ )) })
236
+ ]
237
+ }
238
+ );
239
+ });
240
+ export {
241
+ TextRoll
242
+ };
@@ -0,0 +1,2 @@
1
+ export { TextRoll } from "./TextRoll.js";
2
+ export type { TextRollProps } from "./TextRoll.js";
@@ -0,0 +1,74 @@
1
+ /**
2
+ * `rollIn` / `rollOut` — the per-grapheme cell transitions TextRoll's overlay
3
+ * layer runs on its enter/exit legs. Unlike `internals/motion/transitions.ts`'s
4
+ * `preset()` (one shared geometry table shared by Reveal/Presence/
5
+ * StickyScroll), these two are specific to TextRoll's own "rolling cylinder"
6
+ * geometry and its own per-cell stagger bookkeeping, so they live next to the
7
+ * component that uses them instead of in the shared foundation — the frozen
8
+ * contract draws exactly this line (`text-roll/roll-transitions.ts`, not
9
+ * `internals/motion/`), and the foundation exports nothing named `rollIn`/
10
+ * `rollOut` for this file to wrap.
11
+ *
12
+ * Both are css-only transition specs (a `css(t, u)` string, no `tick`) — the
13
+ * same WAAPI mechanism `preset()` uses, so the same fact its file header
14
+ * documents applies unchanged here: the sampler (`animate.ts`'s
15
+ * `runTransition`) samples `t`/`u` from the spec's OWN easing curve before
16
+ * `css()` ever runs, so `easing` only has to be handed through on the
17
+ * returned `TransitionSpec`, never applied a second time inside `cssForRoll`.
18
+ */
19
+ import type { TransitionSpec } from "../../internals/motion/transitions.js";
20
+ import { type StaggerFrom } from "../../internals/motion/stagger.js";
21
+ export interface RollTransitionParams {
22
+ /**
23
+ * "up" mirrors an odometer counting up: an entering cell rises from
24
+ * below into place, a leaving cell continues rising off the top. "down"
25
+ * is the mirror image. The enter (`rollIn`) and exit (`rollOut`) legs on
26
+ * the SAME roll always receive the same `direction` — a same-length
27
+ * update at one position runs its exit and entrance as one coherent
28
+ * turn, not two independently-decided fades.
29
+ */
30
+ direction: "up" | "down";
31
+ /** ms. `0` (reduced motion, written by the component) makes the
32
+ * transition sampler short-circuit synchronously — nothing in this file
33
+ * has to special-case that. */
34
+ duration?: number;
35
+ /**
36
+ * This cell's own position, frozen into the cell object by TextRoll at
37
+ * the render that created it — so a cell being REMOVED keeps the index
38
+ * it actually held there rather than one recomputed against whatever
39
+ * replaced it.
40
+ */
41
+ index: number;
42
+ /**
43
+ * The CURRENT (new) value's grapheme count — deliberately the SAME
44
+ * number for every cell in one roll, entering and leaving alike, so a
45
+ * `from="center"` sweep reads as one sweep across the new shape rather
46
+ * than two sweeps computed against two different lengths (only possible
47
+ * to observe on a length-changing update, where old and new counts
48
+ * differ; on the far more common same-length update they are already
49
+ * identical).
50
+ */
51
+ count: number;
52
+ /** The `stagger` prop's per-step ms — already collapsed to `0` under
53
+ * reduced motion by the component. This file applies `STAGGER_CAPS.text`
54
+ * compression on top, via the shared `staggerDelay` helper (compression,
55
+ * never per-cell clipping — see that file). */
56
+ step: number;
57
+ /** Stagger origin, forwarded from the `from` prop. Omitted, `staggerDelay`
58
+ * falls back to its own `"first"` default. */
59
+ from?: StaggerFrom;
60
+ }
61
+ /**
62
+ * A cell arriving at its slot. `direction="up"`: rises from below
63
+ * (`+distance`) into place. `direction="down"`: descends from above
64
+ * (`-distance`) into place.
65
+ */
66
+ export declare function rollIn(_node: Element, params: RollTransitionParams): TransitionSpec;
67
+ /**
68
+ * A cell leaving its slot, continuing the SAME rotation the entering cell
69
+ * (`rollIn`, above) is completing: `direction="up"` exits upward (toward
70
+ * `-distance`), `direction="down"` exits downward — the OPPOSITE sign from
71
+ * `rollIn`'s for the same `direction`, which is exactly what makes the two
72
+ * read as one wheel turning rather than two unrelated fades.
73
+ */
74
+ export declare function rollOut(_node: Element, params: RollTransitionParams): TransitionSpec;
@@ -0,0 +1,31 @@
1
+ "use client";
2
+ import { JS_EASINGS, DURATIONS, STAGGER_CAPS } from "../../internals/motion/tokens.js";
3
+ import { staggerDelay } from "../../internals/motion/stagger.js";
4
+ function delayFor(params) {
5
+ return staggerDelay(params.index, params.count, params.step, params.from, STAGGER_CAPS.text);
6
+ }
7
+ function cssForRoll(sign, t, u) {
8
+ return `opacity: ${t}; transform: translateY(calc(${sign} * var(--ft-textroll-distance, 1em) * ${u}))`;
9
+ }
10
+ function rollIn(_node, params) {
11
+ const sign = params.direction === "up" ? 1 : -1;
12
+ return {
13
+ duration: params.duration ?? DURATIONS.base,
14
+ delay: delayFor(params),
15
+ easing: JS_EASINGS.out,
16
+ css: (t, u) => cssForRoll(sign, t, u)
17
+ };
18
+ }
19
+ function rollOut(_node, params) {
20
+ const sign = params.direction === "up" ? -1 : 1;
21
+ return {
22
+ duration: params.duration ?? DURATIONS.base,
23
+ delay: delayFor(params),
24
+ easing: JS_EASINGS.in,
25
+ css: (t, u) => cssForRoll(sign, t, u)
26
+ };
27
+ }
28
+ export {
29
+ rollIn,
30
+ rollOut
31
+ };
@@ -0,0 +1,48 @@
1
+ import type { HTMLInputAutoCompleteAttribute } from "react";
2
+ export interface TextareaProps {
3
+ /**
4
+ * Current value. Controlled when supplied: pair it with `onValueChange`,
5
+ * the React counterpart of the Svelte source's `bind:value`.
6
+ */
7
+ value?: string;
8
+ /** Initial value when uncontrolled (no `value` prop given). */
9
+ defaultValue?: string;
10
+ /** Called with the new value on every input event. */
11
+ onValueChange?: (value: string) => void;
12
+ /** Shown while the field is empty. */
13
+ placeholder?: string;
14
+ /** Blocks focus and typing; excluded from form submission. Overridden by a surrounding FormField. */
15
+ disabled?: boolean;
16
+ /** Blocks typing but stays focusable and is still submitted, unlike `disabled`. */
17
+ readonly?: boolean;
18
+ /** Native `required`. Overridden by a surrounding FormField. */
19
+ required?: boolean;
20
+ /** Drives the error border and `aria-invalid`. Overridden by a surrounding FormField. */
21
+ invalid?: boolean;
22
+ /** Element id. Overridden by a surrounding FormField's own `controlId`. */
23
+ id?: string;
24
+ /** Native `name`, read on form submission. */
25
+ name?: string;
26
+ /** Native `autocomplete` hint — the real token set the DOM accepts, not a bare string. */
27
+ autocomplete?: HTMLInputAutoCompleteAttribute;
28
+ /** Accessible name — for a control with no visible Label next to it. */
29
+ label?: string;
30
+ /** Visible height in text rows before anything grows it. Also the no-JS fallback height. */
31
+ rows?: number;
32
+ /** Native character ceiling; also the counter's denominator. */
33
+ maxlength?: number;
34
+ /** Renders the live "n / max" counter under the field. */
35
+ showCount?: boolean;
36
+ /** Grows to fit content instead of scrolling; disables manual resize. */
37
+ autoResize?: boolean;
38
+ /** Additional CSS classes — applied to the `<textarea>` itself, not the wrapper. */
39
+ className?: string;
40
+ }
41
+ /**
42
+ * A styled native `<textarea>` with full FormField integration, an optional
43
+ * character counter and an optional grow-to-fit mode.
44
+ *
45
+ * The element reference arrives through the ref channel (the Svelte source
46
+ * declares `ref = $bindable(null)`), pointing at the native `<textarea>`.
47
+ */
48
+ export declare const Textarea: import("react").ForwardRefExoticComponent<TextareaProps & import("react").RefAttributes<HTMLTextAreaElement>>;
@@ -0,0 +1,129 @@
1
+ "use client";
2
+ import { jsxs, jsx } from "react/jsx-runtime";
3
+ import { forwardRef, useState, useRef } from "react";
4
+ import { cn } from "../../utils.js";
5
+ import { useField } from "../../internals/field.js";
6
+ import { useFancyId } from "../../internals/use-id.js";
7
+ import { useComposedRefs } from "../../internals/dom/use-composed-refs.js";
8
+ import { useIsomorphicLayoutEffect } from "../../internals/dom/ssr.js";
9
+ /* empty css */
10
+ const Textarea = forwardRef(
11
+ ({
12
+ value: valueProp,
13
+ defaultValue = "",
14
+ onValueChange,
15
+ placeholder,
16
+ disabled = false,
17
+ readonly = false,
18
+ required = false,
19
+ invalid = false,
20
+ id,
21
+ name,
22
+ autocomplete,
23
+ label,
24
+ rows = 3,
25
+ maxlength,
26
+ showCount = false,
27
+ autoResize = false,
28
+ className
29
+ }, forwardedRef) => {
30
+ const isControlled = valueProp !== void 0;
31
+ const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue);
32
+ const value = isControlled ? valueProp : uncontrolledValue;
33
+ const field = useField();
34
+ const effectiveId = field?.controlId ?? id;
35
+ const effectiveDisabled = field?.disabled ?? disabled;
36
+ const effectiveRequired = field?.required ?? required;
37
+ const effectiveInvalid = field?.invalid ?? invalid;
38
+ const reactId = useFancyId();
39
+ const countId = `${reactId}-count`;
40
+ const count = value.length;
41
+ const atLimit = maxlength != null && count >= maxlength;
42
+ const describedBy = [field?.describedBy, showCount ? countId : void 0].filter(Boolean).join(" ") || void 0;
43
+ const classes = cn(
44
+ "ft-textarea w-full rounded-[8px] border border-input bg-background px-[12px] py-[10px] text-[13px] leading-[1.5] text-foreground transition-colors",
45
+ "placeholder:text-muted-foreground",
46
+ "focus-visible:outline-none",
47
+ "disabled:cursor-not-allowed disabled:opacity-50",
48
+ autoResize ? "resize-none overflow-hidden" : "resize-y",
49
+ effectiveInvalid && "border-destructive/50",
50
+ className
51
+ );
52
+ const innerRef = useRef(null);
53
+ const composedRef = useComposedRefs(forwardedRef, innerRef);
54
+ const metricsRef = useRef(null);
55
+ function px(input) {
56
+ const parsed = Number.parseFloat(input);
57
+ return Number.isFinite(parsed) ? parsed : 0;
58
+ }
59
+ function measure(el) {
60
+ if (metricsRef.current) return metricsRef.current;
61
+ const style = getComputedStyle(el);
62
+ const declared = Number.parseFloat(style.lineHeight);
63
+ const fontSize = Number.parseFloat(style.fontSize);
64
+ const line = Number.isFinite(declared) && declared > 0 ? declared : Number.isFinite(fontSize) && fontSize > 0 ? fontSize * 1.5 : 20;
65
+ const padding = px(style.paddingTop) + px(style.paddingBottom);
66
+ const border = style.boxSizing === "border-box" ? px(style.borderTopWidth) + px(style.borderBottomWidth) : 0;
67
+ metricsRef.current = { line, extra: padding + border };
68
+ return metricsRef.current;
69
+ }
70
+ function grow() {
71
+ const el = innerRef.current;
72
+ if (!el) return;
73
+ const { line, extra } = measure(el);
74
+ el.style.height = "auto";
75
+ const min = rows * line + extra;
76
+ el.style.height = `${Math.max(el.scrollHeight, min)}px`;
77
+ }
78
+ function handleInput(event) {
79
+ if (effectiveDisabled) return;
80
+ const next = event.currentTarget.value;
81
+ if (!isControlled) setUncontrolledValue(next);
82
+ onValueChange?.(next);
83
+ if (autoResize) grow();
84
+ }
85
+ useIsomorphicLayoutEffect(() => {
86
+ if (!autoResize) return;
87
+ grow();
88
+ }, [autoResize, value, rows]);
89
+ return /* @__PURE__ */ jsxs("div", { className: "ft-textarea-wrapper flex w-full flex-col gap-1.5", children: [
90
+ /* @__PURE__ */ jsx(
91
+ "textarea",
92
+ {
93
+ ref: composedRef,
94
+ id: effectiveId,
95
+ placeholder,
96
+ name,
97
+ autoComplete: autocomplete,
98
+ rows,
99
+ maxLength: maxlength,
100
+ disabled: effectiveDisabled,
101
+ readOnly: readonly,
102
+ required: effectiveRequired,
103
+ "aria-invalid": effectiveInvalid ? "true" : void 0,
104
+ "aria-describedby": describedBy,
105
+ "aria-label": label,
106
+ className: classes,
107
+ value,
108
+ onChange: handleInput
109
+ }
110
+ ),
111
+ showCount && /* @__PURE__ */ jsxs(
112
+ "span",
113
+ {
114
+ id: countId,
115
+ className: "ft-textarea-count text-muted-foreground self-end text-[11px]",
116
+ "data-limit-reached": atLimit ? "true" : void 0,
117
+ children: [
118
+ count,
119
+ maxlength != null ? ` / ${maxlength}` : ""
120
+ ]
121
+ }
122
+ )
123
+ ] });
124
+ }
125
+ );
126
+ Textarea.displayName = "Textarea";
127
+ export {
128
+ Textarea
129
+ };
@@ -0,0 +1,2 @@
1
+ export { Textarea } from "./Textarea.js";
2
+ export type { TextareaProps } from "./Textarea.js";
@@ -0,0 +1,26 @@
1
+ import { type ReactNode } from "react";
2
+ /**
3
+ * Props for ThinkingIndicator
4
+ */
5
+ export interface ThinkingIndicatorProps {
6
+ /** What the agent is doing right now, e.g. "Reading files" */
7
+ status: string;
8
+ /** Whether the activity is still in flight: drives the shimmer and the live timer */
9
+ running?: boolean;
10
+ /** `"inline"` is a bare text row; `"pill"` is a bordered chip with a leading pulse dot */
11
+ variant?: "inline" | "pill";
12
+ /** Epoch ms the activity started; the internal stopwatch ticks from it */
13
+ since?: number;
14
+ /** Externally-driven elapsed time in ms; overrides the internal stopwatch */
15
+ elapsedMs?: number;
16
+ /** Show the elapsed duration alongside the status */
17
+ showElapsed?: boolean;
18
+ /** Rendered instead of the status label once `running` is false */
19
+ done?: ReactNode;
20
+ /** Additional CSS classes */
21
+ className?: string;
22
+ }
23
+ /**
24
+ * ThinkingIndicator
25
+ */
26
+ export declare const ThinkingIndicator: import("react").ForwardRefExoticComponent<ThinkingIndicatorProps & import("react").RefAttributes<HTMLDivElement>>;