@exegia/corpora-ui 1.0.0 → 2.0.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 (1107) hide show
  1. package/README.md +1 -1
  2. package/dist-lib/components/atoms/avatar/base.d.ts +2 -0
  3. package/dist-lib/components/atoms/avatar/index.d.ts +3 -0
  4. package/dist-lib/components/atoms/avatar/types.d.ts +20 -0
  5. package/dist-lib/components/atoms/avatar/utils.d.ts +13 -0
  6. package/dist-lib/components/atoms/background/texture.d.ts +2 -0
  7. package/dist-lib/components/atoms/background/type.d.ts +7 -0
  8. package/dist-lib/components/atoms/background/utils.d.ts +4 -0
  9. package/dist-lib/components/atoms/bubble/actions.d.ts +7 -0
  10. package/dist-lib/components/atoms/bubble/context.d.ts +4 -0
  11. package/dist-lib/components/atoms/bubble/default.d.ts +3 -0
  12. package/dist-lib/components/atoms/bubble/header.d.ts +8 -0
  13. package/dist-lib/components/atoms/bubble/index.d.ts +16 -0
  14. package/dist-lib/components/atoms/bubble/message.d.ts +3 -0
  15. package/dist-lib/components/atoms/bubble/reactions.d.ts +14 -0
  16. package/dist-lib/components/atoms/bubble/types.d.ts +62 -0
  17. package/dist-lib/components/atoms/bubble/utils.d.ts +13 -0
  18. package/dist-lib/components/atoms/field.d.ts +2 -0
  19. package/dist-lib/components/atoms/index.d.ts +10 -0
  20. package/dist-lib/components/atoms/loader.d.ts +2 -0
  21. package/dist-lib/components/atoms/reference.d.ts +7 -0
  22. package/dist-lib/components/atoms/text/default.d.ts +1144 -0
  23. package/dist-lib/components/atoms/text/heading.d.ts +2 -0
  24. package/dist-lib/components/atoms/text/index.d.ts +18 -0
  25. package/dist-lib/components/atoms/text/label.d.ts +2 -0
  26. package/dist-lib/components/atoms/text/paragraph.d.ts +2 -0
  27. package/dist-lib/components/atoms/text/span.d.ts +2 -0
  28. package/dist-lib/components/atoms/text/types.d.ts +27 -0
  29. package/dist-lib/components/atoms/text/utils.d.ts +4 -0
  30. package/dist-lib/components/atoms/text-selection/click-popover.d.ts +3 -0
  31. package/dist-lib/components/atoms/text-selection/index.d.ts +6 -0
  32. package/dist-lib/components/atoms/text-selection/popover.d.ts +3 -0
  33. package/dist-lib/components/atoms/text-selection/selection-atom.d.ts +30 -0
  34. package/dist-lib/components/atoms/text-selection/selection.d.ts +3 -0
  35. package/dist-lib/components/atoms/text-selection/types.d.ts +90 -0
  36. package/dist-lib/components/atoms/text-selection/use-selection.d.ts +7 -0
  37. package/dist-lib/components/atoms/types.d.ts +39 -0
  38. package/dist-lib/components/blocks/auth/auth-flow-atom.d.ts +76 -0
  39. package/dist-lib/components/blocks/auth/auth-flow-block.d.ts +41 -0
  40. package/dist-lib/components/blocks/auth/auth-session-atom.d.ts +28 -0
  41. package/dist-lib/components/blocks/auth/auth-shell.d.ts +55 -0
  42. package/dist-lib/components/blocks/auth/auth-state.d.ts +8 -0
  43. package/dist-lib/components/blocks/auth/code-auth-block.d.ts +3 -0
  44. package/dist-lib/components/blocks/auth/forgot-password-block.d.ts +3 -0
  45. package/dist-lib/components/blocks/auth/linked-accounts-block.d.ts +9 -0
  46. package/dist-lib/components/blocks/auth/login-block.d.ts +3 -0
  47. package/dist-lib/components/blocks/auth/onboarding/profile-step.d.ts +8 -0
  48. package/dist-lib/components/blocks/auth/onboarding-block.d.ts +15 -0
  49. package/dist-lib/components/blocks/auth/passkey-manager-block.d.ts +10 -0
  50. package/dist-lib/components/blocks/auth/passkey-sign-in-block.d.ts +8 -0
  51. package/dist-lib/components/blocks/auth/signup-block.d.ts +3 -0
  52. package/dist-lib/components/blocks/auth/type.d.ts +398 -0
  53. package/dist-lib/components/blocks/auth/update-password-block.d.ts +9 -0
  54. package/dist-lib/components/blocks/auth/use-auth-state.d.ts +52 -0
  55. package/dist-lib/components/blocks/chat/banners.d.ts +5 -0
  56. package/dist-lib/components/blocks/chat/base.d.ts +10 -0
  57. package/dist-lib/components/blocks/chat/header.d.ts +4 -0
  58. package/dist-lib/components/blocks/chat/index.d.ts +11 -0
  59. package/dist-lib/components/blocks/chat/recommendation-stack.d.ts +11 -0
  60. package/dist-lib/components/blocks/chat/suggested-prompts.d.ts +3 -0
  61. package/dist-lib/components/blocks/chat/type.d.ts +75 -0
  62. package/dist-lib/components/blocks/chat/version-history-record.d.ts +3 -0
  63. package/dist-lib/components/blocks/layout.d.ts +8 -0
  64. package/dist-lib/components/blocks/profile/index.d.ts +7 -0
  65. package/dist-lib/components/blocks/profile/profile-card-atom.d.ts +68 -0
  66. package/dist-lib/components/blocks/profile/profile-card-block.d.ts +66 -0
  67. package/dist-lib/components/blocks/profile/type.d.ts +80 -0
  68. package/dist-lib/components/blocks/profile/use-profile-card-state.d.ts +24 -0
  69. package/dist-lib/components/blocks/profile/use-profile-card.d.ts +34 -0
  70. package/dist-lib/components/blocks/scaffold/index.d.ts +29 -0
  71. package/dist-lib/components/blocks/scaffold/panel-close-button.d.ts +4 -0
  72. package/dist-lib/components/blocks/scaffold/panel-menu-button.d.ts +8 -0
  73. package/dist-lib/components/blocks/scaffold/scaffold-actions.d.ts +10 -0
  74. package/dist-lib/components/blocks/scaffold/scaffold-atom.d.ts +112 -0
  75. package/dist-lib/components/blocks/scaffold/scaffold-canvas.d.ts +9 -0
  76. package/dist-lib/components/blocks/scaffold/scaffold-context.d.ts +7 -0
  77. package/dist-lib/components/blocks/scaffold/scaffold-inspector.d.ts +9 -0
  78. package/dist-lib/components/blocks/scaffold/scaffold-main.d.ts +8 -0
  79. package/dist-lib/components/blocks/scaffold/scaffold-panel.d.ts +16 -0
  80. package/dist-lib/components/blocks/scaffold/scaffold-root.d.ts +17 -0
  81. package/dist-lib/components/blocks/scaffold/scaffold-sidebar.d.ts +7 -0
  82. package/dist-lib/components/blocks/scaffold/scaffold-sub-panel.d.ts +6 -0
  83. package/dist-lib/components/blocks/scaffold/scaffold-tab.d.ts +14 -0
  84. package/dist-lib/components/blocks/scaffold/type.d.ts +216 -0
  85. package/dist-lib/components/blocks/scaffold/use-scaffold-state.d.ts +26 -0
  86. package/dist-lib/components/blocks/scaffold/use-scaffold.d.ts +14 -0
  87. package/dist-lib/components/blocks/scaffold/utils.d.ts +38 -0
  88. package/dist-lib/components/blocks/shell/animated-panel-inset.d.ts +2 -0
  89. package/dist-lib/components/blocks/shell/animated-panel-provider.d.ts +2 -0
  90. package/dist-lib/components/blocks/shell/animated-panel-trigger.d.ts +2 -0
  91. package/dist-lib/components/blocks/shell/animated-panel.d.ts +2 -0
  92. package/dist-lib/components/blocks/shell/shell-fit-atom.d.ts +68 -0
  93. package/dist-lib/components/blocks/shell/shell-layout.d.ts +3 -0
  94. package/dist-lib/components/blocks/shell/shell-metrics.d.ts +72 -0
  95. package/dist-lib/components/blocks/shell/shell-panel-atom.d.ts +40 -0
  96. package/dist-lib/components/blocks/shell/type.d.ts +301 -0
  97. package/dist-lib/components/blocks/shell/use-shell-fit-state.d.ts +25 -0
  98. package/dist-lib/components/blocks/shell/use-shell-fit.d.ts +13 -0
  99. package/dist-lib/components/blocks/shell/use-shell-panels.d.ts +20 -0
  100. package/dist-lib/components/blocks/shell/utils.d.ts +72 -0
  101. package/dist-lib/components/blocks/sidebar/ai-sidebar-atom.d.ts +217 -0
  102. package/dist-lib/components/blocks/sidebar/ai-sidebar.d.ts +11 -0
  103. package/dist-lib/components/blocks/sidebar/index.d.ts +15 -0
  104. package/dist-lib/components/blocks/sidebar/sidebar-context.d.ts +3 -0
  105. package/dist-lib/components/blocks/sidebar/sidebar-icon.d.ts +2 -0
  106. package/dist-lib/components/blocks/sidebar/sidebar-row.d.ts +4 -0
  107. package/dist-lib/components/blocks/sidebar/type.d.ts +245 -0
  108. package/dist-lib/components/blocks/sidebar/use-ai-sidebar-state.d.ts +29 -0
  109. package/dist-lib/components/blocks/sidebar/use-ai-sidebar.d.ts +27 -0
  110. package/dist-lib/components/blocks/sidebar/utils.d.ts +21 -0
  111. package/dist-lib/components/blocks/types.d.ts +6 -0
  112. package/dist-lib/components/composed/action-bar/action.d.ts +18 -0
  113. package/dist-lib/components/composed/action-bar/emojis.d.ts +10 -0
  114. package/dist-lib/components/composed/action-bar/index.d.ts +12 -0
  115. package/dist-lib/components/composed/action-bar/toolbar.d.ts +2 -0
  116. package/dist-lib/components/composed/action-bar/types.d.ts +55 -0
  117. package/dist-lib/components/composed/action-bar/utils.d.ts +56 -0
  118. package/dist-lib/components/composed/ai/index.d.ts +17 -0
  119. package/dist-lib/components/composed/ai/message.d.ts +7 -0
  120. package/dist-lib/components/composed/ai/research-answer.d.ts +30 -0
  121. package/dist-lib/components/composed/ai/streaming-text.d.ts +26 -0
  122. package/dist-lib/components/composed/ai/suggested-prompt.d.ts +35 -0
  123. package/dist-lib/components/composed/ai/types.d.ts +68 -0
  124. package/dist-lib/components/composed/chat/attachment-file.d.ts +17 -0
  125. package/dist-lib/components/composed/chat/attachment.d.ts +60 -0
  126. package/dist-lib/components/composed/chat/chart.d.ts +44 -0
  127. package/dist-lib/components/composed/chat/code-block.d.ts +26 -0
  128. package/dist-lib/components/composed/chat/composer/add-button.d.ts +5 -0
  129. package/dist-lib/components/composed/chat/composer/base.d.ts +5 -0
  130. package/dist-lib/components/composed/chat/composer/command-menu.d.ts +3 -0
  131. package/dist-lib/components/composed/chat/composer/hooks.d.ts +9 -0
  132. package/dist-lib/components/composed/chat/composer/send-button.d.ts +3 -0
  133. package/dist-lib/components/composed/chat/composer/suggestions.d.ts +7 -0
  134. package/dist-lib/components/composed/chat/composer/use-dictation.d.ts +8 -0
  135. package/dist-lib/components/composed/chat/composer/utils.d.ts +19 -0
  136. package/dist-lib/components/composed/chat/context-cards.d.ts +27 -0
  137. package/dist-lib/components/composed/chat/filter-table.d.ts +40 -0
  138. package/dist-lib/components/composed/chat/flowchart/chart-node.d.ts +2 -0
  139. package/dist-lib/components/composed/chat/flowchart/connector.d.ts +2 -0
  140. package/dist-lib/components/composed/chat/flowchart/default.d.ts +7 -0
  141. package/dist-lib/components/composed/chat/flowchart/edge-toolbar.d.ts +9 -0
  142. package/dist-lib/components/composed/chat/flowchart/hooks.d.ts +290 -0
  143. package/dist-lib/components/composed/chat/flowchart/step-body.d.ts +6 -0
  144. package/dist-lib/components/composed/chat/flowchart/types.d.ts +91 -0
  145. package/dist-lib/components/composed/chat/flowchart/utils.d.ts +64 -0
  146. package/dist-lib/components/composed/chat/index.d.ts +15 -0
  147. package/dist-lib/components/composed/chat/insight-cards.d.ts +54 -0
  148. package/dist-lib/components/composed/chat/markdown-atom.d.ts +7 -0
  149. package/dist-lib/components/composed/chat/markdown.d.ts +22 -0
  150. package/dist-lib/components/composed/chat/recommendation/checkbox.d.ts +9 -0
  151. package/dist-lib/components/composed/chat/recommendation/constant.d.ts +52 -0
  152. package/dist-lib/components/composed/chat/recommendation/default.d.ts +7 -0
  153. package/dist-lib/components/composed/chat/recommendation/group.d.ts +7 -0
  154. package/dist-lib/components/composed/chat/recommendation/index.d.ts +13 -0
  155. package/dist-lib/components/composed/chat/recommendation/item.d.ts +12 -0
  156. package/dist-lib/components/composed/chat/recommendation/types.d.ts +62 -0
  157. package/dist-lib/components/composed/chat/records-table.d.ts +40 -0
  158. package/dist-lib/components/composed/chat/type.d.ts +117 -0
  159. package/dist-lib/components/composed/logo.d.ts +34 -0
  160. package/dist-lib/components/composed/password-input.d.ts +30 -0
  161. package/dist-lib/components/composed/reader/applied-mark.d.ts +3 -0
  162. package/dist-lib/components/composed/reader/apply-toast.d.ts +3 -0
  163. package/dist-lib/components/composed/reader/selection-highlight.d.ts +3 -0
  164. package/dist-lib/components/composed/reader/selection-popover.d.ts +9 -0
  165. package/dist-lib/components/composed/reader/type.d.ts +40 -0
  166. package/dist-lib/components/composed/social-providers.d.ts +39 -0
  167. package/dist-lib/components/composed/tree/index.d.ts +6 -0
  168. package/dist-lib/components/composed/tree/tree-atom.d.ts +160 -0
  169. package/dist-lib/components/composed/tree/tree-context.d.ts +4 -0
  170. package/dist-lib/components/composed/tree/tree-node.d.ts +12 -0
  171. package/dist-lib/components/composed/tree/tree.d.ts +19 -0
  172. package/dist-lib/components/composed/tree/type.d.ts +290 -0
  173. package/dist-lib/components/composed/tree/use-tree-dnd.d.ts +18 -0
  174. package/dist-lib/components/composed/tree/use-tree-state.d.ts +25 -0
  175. package/dist-lib/components/composed/tree/use-tree.d.ts +24 -0
  176. package/dist-lib/components/composed/tree/utils.d.ts +28 -0
  177. package/dist-lib/components/composed/types.d.ts +7 -0
  178. package/dist-lib/components/composed/user/index.d.ts +11 -0
  179. package/dist-lib/components/composed/user/info.d.ts +12 -0
  180. package/dist-lib/components/composed/user/message.d.ts +2 -0
  181. package/dist-lib/components/composed/user/pill.d.ts +10 -0
  182. package/dist-lib/components/composed/user/types.d.ts +27 -0
  183. package/dist-lib/components/composed/verse/index.d.ts +2 -0
  184. package/dist-lib/components/composed/verse/types.d.ts +18 -0
  185. package/dist-lib/components/composed/verse/verse.d.ts +5 -0
  186. package/dist-lib/components/docs/atoms-gallery.d.ts +12 -0
  187. package/dist-lib/components/docs/block-demo-stage.d.ts +7 -0
  188. package/dist-lib/components/docs/blocks-gallery.d.ts +2 -0
  189. package/dist-lib/components/docs/browser.d.ts +10 -0
  190. package/dist-lib/components/docs/components-gallery.d.ts +2 -0
  191. package/dist-lib/components/docs/demo-controls.d.ts +21 -0
  192. package/dist-lib/components/icons/__tests__/icons.test.d.ts +1 -0
  193. package/dist-lib/components/icons/file-badge-cfm.d.ts +7 -0
  194. package/dist-lib/components/icons/file-badge-corpus.d.ts +7 -0
  195. package/dist-lib/components/icons/file-badge-pdf.d.ts +7 -0
  196. package/dist-lib/components/icons/file-badge-tei.d.ts +7 -0
  197. package/dist-lib/components/icons/file-badge-tf.d.ts +7 -0
  198. package/dist-lib/components/icons/file-badge-txt.d.ts +7 -0
  199. package/dist-lib/components/icons/file-badge-xml.d.ts +7 -0
  200. package/dist-lib/components/icons/file-wordmark-cfm.d.ts +7 -0
  201. package/dist-lib/components/icons/file-wordmark-corpus.d.ts +7 -0
  202. package/dist-lib/components/icons/file-wordmark-pdf.d.ts +7 -0
  203. package/dist-lib/components/icons/file-wordmark-tei.d.ts +7 -0
  204. package/dist-lib/components/icons/file-wordmark-tf.d.ts +7 -0
  205. package/dist-lib/components/icons/file-wordmark-txt.d.ts +7 -0
  206. package/dist-lib/components/icons/file-wordmark-xml.d.ts +7 -0
  207. package/dist-lib/components/icons/index.d.ts +15 -0
  208. package/dist-lib/components/icons/types.d.ts +7 -0
  209. package/dist-lib/components/motion/index.d.ts +1 -0
  210. package/dist-lib/components/motion/overflow-actions.d.ts +35 -0
  211. package/dist-lib/components/motion/popover-morph.d.ts +35 -0
  212. package/dist-lib/components/motion/popover-position.d.ts +15 -0
  213. package/dist-lib/components/motion/shared-layout-bg.d.ts +13 -0
  214. package/dist-lib/components/stories/attachment.story.d.ts +11 -0
  215. package/dist-lib/components/stories/auth-flow-block.story.d.ts +2 -0
  216. package/dist-lib/components/stories/avatar.story.d.ts +6 -0
  217. package/dist-lib/components/stories/base.story.d.ts +6 -0
  218. package/dist-lib/components/stories/bubble.story.d.ts +6 -0
  219. package/dist-lib/components/stories/button.story.d.ts +9 -0
  220. package/dist-lib/components/stories/card.story.d.ts +8 -0
  221. package/dist-lib/components/stories/chart.story.d.ts +34 -0
  222. package/dist-lib/components/stories/checkbox.story.d.ts +6 -0
  223. package/dist-lib/components/stories/code-auth-block.story.d.ts +2 -0
  224. package/dist-lib/components/stories/code-block.story.d.ts +12 -0
  225. package/dist-lib/components/stories/composed-password-input.story.d.ts +6 -0
  226. package/dist-lib/components/stories/context-cards.story.d.ts +3 -0
  227. package/dist-lib/components/stories/emoji-action-bar.story.d.ts +3 -0
  228. package/dist-lib/components/stories/field.story.d.ts +6 -0
  229. package/dist-lib/components/stories/file-icons.story.d.ts +5 -0
  230. package/dist-lib/components/stories/filter-table.story.d.ts +21 -0
  231. package/dist-lib/components/stories/flowchart.story.d.ts +3 -0
  232. package/dist-lib/components/stories/forgot-password-block.story.d.ts +2 -0
  233. package/dist-lib/components/stories/frame.story.d.ts +8 -0
  234. package/dist-lib/components/stories/index.d.ts +54 -0
  235. package/dist-lib/components/stories/input-group.story.d.ts +6 -0
  236. package/dist-lib/components/stories/input.story.d.ts +8 -0
  237. package/dist-lib/components/stories/insight-cards.story.d.ts +45 -0
  238. package/dist-lib/components/stories/label.story.d.ts +8 -0
  239. package/dist-lib/components/stories/linked-accounts-block.story.d.ts +2 -0
  240. package/dist-lib/components/stories/login-block.story.d.ts +2 -0
  241. package/dist-lib/components/stories/logo.story.d.ts +3 -0
  242. package/dist-lib/components/stories/markdown.story.d.ts +7 -0
  243. package/dist-lib/components/stories/menu-command.story.d.ts +13 -0
  244. package/dist-lib/components/stories/onboarding-block.story.d.ts +2 -0
  245. package/dist-lib/components/stories/otp-field.story.d.ts +8 -0
  246. package/dist-lib/components/stories/passkey-manager-block.story.d.ts +2 -0
  247. package/dist-lib/components/stories/passkey-sign-in-block.story.d.ts +2 -0
  248. package/dist-lib/components/stories/password-input.story.d.ts +9 -0
  249. package/dist-lib/components/stories/profile-card-block.story.d.ts +6 -0
  250. package/dist-lib/components/stories/recommendation-card.story.d.ts +3 -0
  251. package/dist-lib/components/stories/records-table.story.d.ts +23 -0
  252. package/dist-lib/components/stories/reference.story.d.ts +9 -0
  253. package/dist-lib/components/stories/research-answer.story.d.ts +10 -0
  254. package/dist-lib/components/stories/scaffold-root.story.d.ts +6 -0
  255. package/dist-lib/components/stories/separator.story.d.ts +6 -0
  256. package/dist-lib/components/stories/shell-layout.story.d.ts +2 -0
  257. package/dist-lib/components/stories/signup-block.story.d.ts +2 -0
  258. package/dist-lib/components/stories/social-providers.story.d.ts +3 -0
  259. package/dist-lib/components/stories/streaming-text.story.d.ts +3 -0
  260. package/dist-lib/components/stories/text.story.d.ts +8 -0
  261. package/dist-lib/components/stories/textarea.story.d.ts +6 -0
  262. package/dist-lib/components/stories/tree.story.d.ts +4 -0
  263. package/dist-lib/components/stories/update-password-block.story.d.ts +2 -0
  264. package/dist-lib/components/stories/user.story.d.ts +8 -0
  265. package/dist-lib/components/stories/verse.story.d.ts +6 -0
  266. package/dist-lib/components/theme-provider.d.ts +15 -0
  267. package/dist-lib/components/types.d.ts +11 -0
  268. package/dist-lib/components/ui/badge.d.ts +14 -0
  269. package/dist-lib/components/ui/button.d.ts +28 -0
  270. package/dist-lib/components/ui/chat/__tests__/segmented-toggle.test.d.ts +1 -0
  271. package/dist-lib/components/ui/chat/avatar-handle.d.ts +13 -0
  272. package/dist-lib/components/ui/chat/badges.d.ts +29 -0
  273. package/dist-lib/components/ui/chat/buttons.d.ts +29 -0
  274. package/dist-lib/components/ui/chat/chips.d.ts +48 -0
  275. package/dist-lib/components/ui/chat/dot.d.ts +30 -0
  276. package/dist-lib/components/ui/chat/icon-button.d.ts +18 -0
  277. package/dist-lib/components/ui/chat/icon-tile.d.ts +20 -0
  278. package/dist-lib/components/ui/chat/index.d.ts +12 -0
  279. package/dist-lib/components/ui/chat/inline-source.d.ts +20 -0
  280. package/dist-lib/components/ui/chat/segmented-toggle.d.ts +20 -0
  281. package/dist-lib/components/ui/chat/tag.d.ts +21 -0
  282. package/dist-lib/components/ui/chat/thumbnail.d.ts +13 -0
  283. package/dist-lib/components/ui/chat/waveform.d.ts +13 -0
  284. package/dist-lib/components/ui/glasscn/glass-button-group.d.ts +7 -0
  285. package/dist-lib/components/ui/glasscn/glass-button.d.ts +6 -0
  286. package/dist-lib/components/ui/glasscn/glass-container.d.ts +8 -0
  287. package/dist-lib/components/ui/glasscn/glass-separator.d.ts +5 -0
  288. package/dist-lib/components/ui/glasscn/liquid-glass.d.ts +29 -0
  289. package/dist-lib/components/ui/input-group.d.ts +13 -0
  290. package/dist-lib/components/ui/input.d.ts +9 -0
  291. package/dist-lib/components/ui/menu-command.d.ts +36 -0
  292. package/dist-lib/components/ui/popover-glass.d.ts +32 -0
  293. package/dist-lib/components/ui/select.d.ts +30 -0
  294. package/dist-lib/components/ui/tabs.d.ts +15 -0
  295. package/dist-lib/components/ui/textarea.d.ts +8 -0
  296. package/dist-lib/components/ui/toast.d.ts +15 -0
  297. package/dist-lib/index.d.ts +65 -0
  298. package/dist-lib/index.js +6911 -5932
  299. package/dist-lib/index.js.map +1 -1
  300. package/dist-lib/lib/attachment-content.d.ts +4 -0
  301. package/dist-lib/lib/auth-accent.d.ts +33 -0
  302. package/dist-lib/lib/glass-variants.d.ts +9 -0
  303. package/dist-lib/lib/keyed-atom.d.ts +14 -0
  304. package/dist-lib/lib/segmented-control.d.ts +8 -0
  305. package/dist-lib/lib/specular.d.ts +12 -0
  306. package/dist-lib/lib/state/__tests__/sound.test.d.ts +1 -0
  307. package/dist-lib/lib/state/exegia-provider.d.ts +51 -0
  308. package/dist-lib/lib/state/index.d.ts +4 -0
  309. package/dist-lib/lib/state/store.d.ts +17 -0
  310. package/dist-lib/lib/use-motion-panel.d.ts +9 -0
  311. package/dist-lib/lib/utils.test.d.ts +1 -0
  312. package/package.json +5 -1
  313. package/src/components/atoms/avatar/base.tsx +3 -3
  314. package/src/components/atoms/avatar/index.ts +8 -1
  315. package/src/components/atoms/avatar/types.ts +9 -9
  316. package/src/components/atoms/avatar/utils.ts +6 -6
  317. package/src/components/atoms/background/texture.tsx +2 -2
  318. package/src/components/atoms/background/type.ts +3 -3
  319. package/src/components/atoms/background/utils.ts +2 -2
  320. package/src/components/atoms/bubble/__tests__/bubble.test.tsx +59 -4
  321. package/src/components/atoms/bubble/actions.tsx +2 -2
  322. package/src/components/atoms/bubble/context.ts +3 -3
  323. package/src/components/atoms/bubble/default.tsx +2 -2
  324. package/src/components/atoms/bubble/header.tsx +6 -4
  325. package/src/components/atoms/bubble/index.ts +9 -9
  326. package/src/components/atoms/bubble/message.tsx +12 -5
  327. package/src/components/atoms/bubble/reactions.tsx +11 -14
  328. package/src/components/atoms/bubble/types.ts +21 -18
  329. package/src/components/atoms/bubble/utils.ts +10 -10
  330. package/src/components/atoms/field.tsx +43 -0
  331. package/src/components/atoms/index.ts +0 -26
  332. package/src/components/atoms/loader.tsx +2 -11
  333. package/src/components/atoms/reference.tsx +2 -2
  334. package/src/components/atoms/text/default.tsx +5 -5
  335. package/src/components/atoms/text/heading.tsx +2 -5
  336. package/src/components/atoms/text/index.ts +8 -4
  337. package/src/components/atoms/text/label.tsx +2 -2
  338. package/src/components/atoms/text/paragraph.tsx +2 -5
  339. package/src/components/atoms/text/span.tsx +2 -3
  340. package/src/components/atoms/text/types.ts +18 -8
  341. package/src/components/atoms/text/utils.ts +2 -2
  342. package/src/components/atoms/text-selection/click-popover.tsx +3 -3
  343. package/src/components/atoms/text-selection/index.ts +12 -12
  344. package/src/components/atoms/text-selection/popover.tsx +7 -4
  345. package/src/components/atoms/text-selection/selection-atom.ts +7 -7
  346. package/src/components/atoms/text-selection/selection.tsx +2 -2
  347. package/src/components/atoms/text-selection/types.ts +24 -24
  348. package/src/components/atoms/text-selection/use-selection.ts +3 -3
  349. package/src/components/atoms/types.ts +30 -2
  350. package/src/components/blocks/auth/__tests__/auth-flow-block.test.tsx +4 -4
  351. package/src/components/blocks/auth/__tests__/auth-state-atom.test.tsx +2 -2
  352. package/src/components/blocks/auth/__tests__/linked-accounts-block.test.tsx +2 -2
  353. package/src/components/blocks/auth/__tests__/onboarding-block.test.tsx +39 -12
  354. package/src/components/blocks/auth/__tests__/passkey-manager-block.test.tsx +4 -4
  355. package/src/components/blocks/auth/auth-flow-atom.ts +27 -27
  356. package/src/components/blocks/auth/auth-flow-block.tsx +8 -93
  357. package/src/components/blocks/auth/auth-session-atom.ts +9 -9
  358. package/src/components/blocks/auth/auth-shell.tsx +2 -3
  359. package/src/components/blocks/auth/auth-state.ts +0 -12
  360. package/src/components/blocks/auth/code-auth-block.tsx +16 -30
  361. package/src/components/blocks/auth/forgot-password-block.tsx +4 -15
  362. package/src/components/blocks/auth/linked-accounts-block.tsx +10 -36
  363. package/src/components/blocks/auth/login-block.tsx +7 -29
  364. package/src/components/blocks/auth/onboarding/profile-step.tsx +14 -25
  365. package/src/components/blocks/auth/onboarding-block.tsx +39 -96
  366. package/src/components/blocks/auth/passkey-manager-block.tsx +8 -33
  367. package/src/components/blocks/auth/passkey-sign-in-block.tsx +6 -20
  368. package/src/components/blocks/auth/signup-block.tsx +7 -44
  369. package/src/components/blocks/auth/type.ts +436 -0
  370. package/src/components/blocks/auth/update-password-block.tsx +4 -22
  371. package/src/components/blocks/auth/use-auth-state.ts +12 -12
  372. package/src/components/blocks/chat/__tests__/ai-panel.test.tsx +2 -2
  373. package/src/components/blocks/chat/banners.tsx +5 -13
  374. package/src/components/blocks/chat/base.tsx +2 -2
  375. package/src/components/blocks/chat/header.tsx +2 -2
  376. package/src/components/blocks/chat/index.ts +17 -19
  377. package/src/components/blocks/chat/recommendation-stack.tsx +4 -6
  378. package/src/components/blocks/chat/suggested-prompts.tsx +2 -2
  379. package/src/components/blocks/chat/type.ts +96 -0
  380. package/src/components/blocks/chat/version-history-record.tsx +2 -2
  381. package/src/components/blocks/profile/__tests__/profile-card-block.test.tsx +6 -6
  382. package/src/components/blocks/profile/index.ts +2 -2
  383. package/src/components/blocks/profile/profile-card-atom.ts +29 -29
  384. package/src/components/blocks/profile/profile-card-block.tsx +30 -30
  385. package/src/components/blocks/profile/type.ts +17 -17
  386. package/src/components/blocks/profile/use-profile-card-state.ts +7 -7
  387. package/src/components/blocks/profile/use-profile-card.ts +18 -18
  388. package/src/components/blocks/scaffold/__tests__/scaffold-atom.test.tsx +28 -2
  389. package/src/components/blocks/scaffold/__tests__/scaffold.test.tsx +90 -11
  390. package/src/components/blocks/scaffold/index.ts +4 -0
  391. package/src/components/blocks/scaffold/panel-close-button.tsx +2 -2
  392. package/src/components/blocks/scaffold/panel-menu-button.tsx +2 -2
  393. package/src/components/blocks/scaffold/scaffold-actions.tsx +2 -2
  394. package/src/components/blocks/scaffold/scaffold-atom.ts +76 -32
  395. package/src/components/blocks/scaffold/scaffold-canvas.tsx +89 -10
  396. package/src/components/blocks/scaffold/scaffold-context.ts +3 -3
  397. package/src/components/blocks/scaffold/scaffold-inspector.tsx +56 -7
  398. package/src/components/blocks/scaffold/scaffold-main.tsx +2 -2
  399. package/src/components/blocks/scaffold/scaffold-panel.tsx +119 -71
  400. package/src/components/blocks/scaffold/scaffold-root.tsx +14 -12
  401. package/src/components/blocks/scaffold/scaffold-sidebar.tsx +2 -2
  402. package/src/components/blocks/scaffold/scaffold-sub-panel.tsx +82 -13
  403. package/src/components/blocks/scaffold/scaffold-tab.tsx +2 -2
  404. package/src/components/blocks/scaffold/type.ts +46 -28
  405. package/src/components/blocks/scaffold/use-scaffold-state.ts +35 -8
  406. package/src/components/blocks/scaffold/use-scaffold.ts +3 -3
  407. package/src/components/blocks/scaffold/utils.ts +9 -6
  408. package/src/components/blocks/shell/__tests__/shell-fit-atom.test.tsx +7 -5
  409. package/src/components/blocks/shell/__tests__/shell-layout.test.tsx +154 -9
  410. package/src/components/blocks/shell/__tests__/shell-metrics.test.ts +56 -10
  411. package/src/components/blocks/shell/animated-panel-inset.tsx +9 -9
  412. package/src/components/blocks/shell/animated-panel-provider.tsx +76 -30
  413. package/src/components/blocks/shell/animated-panel-trigger.tsx +10 -5
  414. package/src/components/blocks/shell/animated-panel.tsx +76 -128
  415. package/src/components/blocks/shell/shell-fit-atom.ts +29 -26
  416. package/src/components/blocks/shell/shell-layout.tsx +29 -13
  417. package/src/components/blocks/shell/shell-metrics.ts +69 -15
  418. package/src/components/blocks/shell/shell-panel-atom.ts +74 -0
  419. package/src/components/blocks/shell/type.ts +78 -69
  420. package/src/components/blocks/shell/use-shell-fit-state.ts +4 -4
  421. package/src/components/blocks/shell/use-shell-fit.ts +52 -34
  422. package/src/components/blocks/shell/use-shell-panels.ts +32 -66
  423. package/src/components/blocks/shell/utils.ts +8 -4
  424. package/src/components/blocks/sidebar/__tests__/ai-sidebar-atom.test.tsx +325 -0
  425. package/src/components/blocks/sidebar/__tests__/ai-sidebar.test.tsx +93 -0
  426. package/src/components/blocks/sidebar/__tests__/use-ai-sidebar.test.tsx +310 -0
  427. package/src/components/blocks/sidebar/ai-sidebar-atom.ts +698 -0
  428. package/src/components/blocks/sidebar/ai-sidebar.tsx +150 -0
  429. package/src/components/blocks/sidebar/index.ts +67 -0
  430. package/src/components/blocks/sidebar/sidebar-context.ts +15 -0
  431. package/src/components/blocks/sidebar/sidebar-icon.tsx +14 -0
  432. package/src/components/blocks/sidebar/sidebar-row.tsx +378 -0
  433. package/src/components/blocks/sidebar/type.ts +294 -0
  434. package/src/components/blocks/sidebar/use-ai-sidebar-state.ts +123 -0
  435. package/src/components/blocks/sidebar/use-ai-sidebar.ts +619 -0
  436. package/src/components/blocks/sidebar/utils.ts +170 -0
  437. package/src/components/blocks/types.ts +6 -0
  438. package/src/components/composed/action-bar/__tests__/action-bar.test.tsx +43 -14
  439. package/src/components/composed/action-bar/action.tsx +9 -12
  440. package/src/components/composed/action-bar/emojis.tsx +4 -4
  441. package/src/components/composed/action-bar/index.ts +8 -8
  442. package/src/components/composed/action-bar/toolbar.tsx +36 -30
  443. package/src/components/composed/action-bar/types.ts +14 -14
  444. package/src/components/composed/action-bar/utils.ts +17 -18
  445. package/src/components/composed/ai/__tests__/ai.test.tsx +3 -4
  446. package/src/components/composed/ai/avatar.tsx +4 -5
  447. package/src/components/composed/ai/index.ts +7 -7
  448. package/src/components/composed/ai/message.tsx +7 -7
  449. package/src/components/composed/ai/research-answer.tsx +7 -7
  450. package/src/components/composed/ai/streaming-text.tsx +5 -5
  451. package/src/components/composed/ai/suggested-prompt.tsx +4 -4
  452. package/src/components/composed/ai/types.ts +30 -30
  453. package/src/components/composed/chat/__tests__/attachment.test.tsx +182 -9
  454. package/src/components/composed/chat/__tests__/chart.test.tsx +40 -7
  455. package/src/components/composed/chat/__tests__/composer-attachments.test.tsx +51 -3
  456. package/src/components/composed/chat/__tests__/composer.test.tsx +173 -6
  457. package/src/components/composed/chat/__tests__/flowchart.test.tsx +15 -2
  458. package/src/components/composed/chat/__tests__/glass-material.test.tsx +54 -0
  459. package/src/components/composed/chat/__tests__/menu-command.test.tsx +35 -0
  460. package/src/components/composed/chat/__tests__/recommendation.test.tsx +43 -0
  461. package/src/components/composed/chat/attachment-file.ts +82 -0
  462. package/src/components/composed/chat/attachment.tsx +387 -117
  463. package/src/components/composed/chat/chart.tsx +265 -57
  464. package/src/components/composed/chat/code-block.tsx +5 -5
  465. package/src/components/composed/chat/composer/BEAUTIFUL-UI-LICENSE.txt +23 -0
  466. package/src/components/composed/chat/composer/add-button.tsx +24 -17
  467. package/src/components/composed/chat/composer/base.tsx +503 -178
  468. package/src/components/composed/chat/composer/command-menu.tsx +31 -26
  469. package/src/components/composed/chat/composer/hooks.ts +3 -3
  470. package/src/components/composed/chat/composer/send-button.tsx +20 -28
  471. package/src/components/composed/chat/composer/suggestions.tsx +2 -2
  472. package/src/components/composed/chat/composer/use-dictation.ts +123 -0
  473. package/src/components/composed/chat/composer/utils.ts +4 -4
  474. package/src/components/composed/chat/context-cards.tsx +5 -5
  475. package/src/components/composed/chat/filter-table.tsx +8 -8
  476. package/src/components/composed/chat/flowchart/chart-node.tsx +2 -2
  477. package/src/components/composed/chat/flowchart/connector.tsx +2 -2
  478. package/src/components/composed/chat/flowchart/default.tsx +3 -3
  479. package/src/components/composed/chat/flowchart/edge-toolbar.tsx +5 -5
  480. package/src/components/composed/chat/flowchart/hooks.tsx +28 -26
  481. package/src/components/composed/chat/flowchart/step-body.tsx +2 -2
  482. package/src/components/composed/chat/flowchart/types.ts +14 -14
  483. package/src/components/composed/chat/flowchart/utils.ts +15 -15
  484. package/src/components/composed/chat/index.ts +38 -36
  485. package/src/components/composed/chat/insight-cards.tsx +17 -17
  486. package/src/components/composed/chat/markdown-atom.ts +2 -2
  487. package/src/components/composed/chat/markdown.tsx +10 -10
  488. package/src/components/composed/chat/recommendation/checkbox.tsx +3 -14
  489. package/src/components/composed/chat/recommendation/constant.ts +35 -6
  490. package/src/components/composed/chat/recommendation/default.tsx +2 -2
  491. package/src/components/composed/chat/recommendation/group.tsx +4 -11
  492. package/src/components/composed/chat/recommendation/index.ts +0 -2
  493. package/src/components/composed/chat/recommendation/item.tsx +35 -64
  494. package/src/components/composed/chat/recommendation/types.ts +26 -15
  495. package/src/components/composed/chat/records-table.tsx +20 -18
  496. package/src/components/composed/chat/type.ts +56 -25
  497. package/src/components/composed/logo.tsx +4 -4
  498. package/src/components/composed/password-input.tsx +2 -2
  499. package/src/components/composed/reader/applied-mark.tsx +2 -2
  500. package/src/components/composed/reader/apply-toast.tsx +2 -2
  501. package/src/components/composed/reader/selection-highlight.tsx +2 -2
  502. package/src/components/composed/reader/selection-popover.tsx +2 -2
  503. package/src/components/composed/reader/type.ts +8 -8
  504. package/src/components/composed/social-providers.tsx +26 -18
  505. package/src/components/composed/tree/CLAUDE.md +3 -3
  506. package/src/components/composed/tree/__tests__/tree-atom.test.tsx +8 -8
  507. package/src/components/composed/tree/__tests__/tree.test.tsx +10 -10
  508. package/src/components/composed/tree/__tests__/use-tree.test.tsx +10 -10
  509. package/src/components/composed/tree/index.ts +12 -12
  510. package/src/components/composed/tree/tree-atom.ts +46 -46
  511. package/src/components/composed/tree/tree-context.ts +3 -3
  512. package/src/components/composed/tree/tree-node.tsx +7 -7
  513. package/src/components/composed/tree/tree.tsx +13 -13
  514. package/src/components/composed/tree/type.ts +56 -56
  515. package/src/components/composed/tree/use-tree-dnd.ts +10 -10
  516. package/src/components/composed/tree/use-tree-state.ts +3 -3
  517. package/src/components/composed/tree/use-tree.ts +10 -10
  518. package/src/components/composed/tree/utils.ts +21 -21
  519. package/src/components/composed/types.ts +9 -0
  520. package/src/components/composed/user/__tests__/message.test.tsx +79 -0
  521. package/src/components/composed/user/index.ts +2 -2
  522. package/src/components/composed/user/info.tsx +15 -7
  523. package/src/components/composed/user/message.tsx +33 -7
  524. package/src/components/composed/user/pill.tsx +3 -3
  525. package/src/components/composed/user/types.ts +34 -14
  526. package/src/components/composed/verse/index.ts +1 -1
  527. package/src/components/composed/verse/types.ts +8 -8
  528. package/src/components/composed/verse/verse.tsx +6 -6
  529. package/src/components/docs/atoms-gallery.tsx +45 -45
  530. package/src/components/docs/block-demo-stage.tsx +38 -0
  531. package/src/components/docs/blocks-gallery.tsx +224 -0
  532. package/src/components/docs/browser.tsx +87 -0
  533. package/src/components/docs/components-gallery.tsx +182 -0
  534. package/src/components/docs/demo-controls.tsx +6 -7
  535. package/src/components/docs/hero.tsx +2 -3
  536. package/src/components/icons/file-badge-cfm.tsx +2 -2
  537. package/src/components/icons/file-badge-corpus.tsx +2 -2
  538. package/src/components/icons/file-badge-pdf.tsx +2 -2
  539. package/src/components/icons/file-badge-tei.tsx +2 -2
  540. package/src/components/icons/file-badge-tf.tsx +2 -2
  541. package/src/components/icons/file-badge-txt.tsx +2 -2
  542. package/src/components/icons/file-badge-xml.tsx +2 -2
  543. package/src/components/icons/file-wordmark-cfm.tsx +2 -2
  544. package/src/components/icons/file-wordmark-corpus.tsx +2 -2
  545. package/src/components/icons/file-wordmark-pdf.tsx +2 -2
  546. package/src/components/icons/file-wordmark-tei.tsx +2 -2
  547. package/src/components/icons/file-wordmark-tf.tsx +2 -2
  548. package/src/components/icons/file-wordmark-txt.tsx +2 -2
  549. package/src/components/icons/file-wordmark-xml.tsx +2 -2
  550. package/src/components/icons/index.ts +1 -1
  551. package/src/components/icons/types.ts +1 -1
  552. package/src/components/motion/overflow-actions.tsx +19 -19
  553. package/src/components/motion/popover-morph.tsx +15 -15
  554. package/src/components/motion/popover-position.ts +4 -4
  555. package/src/components/motion/shared-layout-bg.tsx +2 -2
  556. package/src/components/stories/attachment.story.tsx +40 -0
  557. package/src/components/stories/auth-flow-block.story.tsx +17 -0
  558. package/src/components/stories/avatar.story.tsx +33 -0
  559. package/src/components/stories/base.story.tsx +70 -0
  560. package/src/components/stories/bubble.story.tsx +61 -0
  561. package/src/components/stories/button.story.tsx +32 -0
  562. package/src/components/stories/card.story.tsx +36 -0
  563. package/src/components/stories/chart.story.tsx +54 -0
  564. package/src/components/stories/checkbox.story.tsx +30 -0
  565. package/src/components/stories/code-auth-block.story.tsx +20 -0
  566. package/src/components/stories/code-block.story.tsx +35 -0
  567. package/src/components/stories/composed-password-input.story.tsx +41 -0
  568. package/src/components/stories/context-cards.story.tsx +30 -0
  569. package/src/components/stories/emoji-action-bar.story.tsx +20 -0
  570. package/src/components/stories/field.story.tsx +32 -0
  571. package/src/components/stories/file-icons.story.tsx +20 -0
  572. package/src/components/stories/filter-table.story.tsx +63 -0
  573. package/src/components/stories/flowchart.story.tsx +25 -0
  574. package/src/components/stories/forgot-password-block.story.tsx +14 -0
  575. package/src/components/stories/frame.story.tsx +32 -0
  576. package/src/components/stories/index.ts +57 -0
  577. package/src/components/stories/input-group.story.tsx +27 -0
  578. package/src/components/stories/input.story.tsx +42 -0
  579. package/src/components/stories/insight-cards.story.tsx +67 -0
  580. package/src/components/stories/label.story.tsx +32 -0
  581. package/src/components/stories/linked-accounts-block.story.tsx +23 -0
  582. package/src/components/stories/login-block.story.tsx +18 -0
  583. package/src/components/stories/logo.story.tsx +21 -0
  584. package/src/components/stories/markdown.story.tsx +31 -0
  585. package/src/components/stories/menu-command.story.tsx +43 -0
  586. package/src/components/stories/onboarding-block.story.tsx +14 -0
  587. package/src/components/stories/otp-field.story.tsx +35 -0
  588. package/src/components/stories/passkey-manager-block.story.tsx +18 -0
  589. package/src/components/stories/passkey-sign-in-block.story.tsx +15 -0
  590. package/src/components/stories/password-input.story.tsx +35 -0
  591. package/src/components/stories/profile-card-block.story.tsx +29 -0
  592. package/src/components/stories/recommendation-card.story.tsx +37 -0
  593. package/src/components/stories/records-table.story.tsx +52 -0
  594. package/src/components/stories/reference.story.tsx +33 -0
  595. package/src/components/stories/research-answer.story.tsx +32 -0
  596. package/src/components/stories/scaffold-root.story.tsx +47 -0
  597. package/src/components/stories/separator.story.tsx +37 -0
  598. package/src/components/stories/shell-layout.story.tsx +19 -0
  599. package/src/components/stories/signup-block.story.tsx +18 -0
  600. package/src/components/stories/social-providers.story.tsx +26 -0
  601. package/src/components/stories/streaming-text.story.tsx +25 -0
  602. package/src/components/stories/text.story.tsx +31 -0
  603. package/src/components/stories/textarea.story.tsx +34 -0
  604. package/src/components/stories/tree.story.tsx +31 -0
  605. package/src/components/stories/update-password-block.story.tsx +14 -0
  606. package/src/components/stories/user.story.tsx +32 -0
  607. package/src/components/stories/verse.story.tsx +42 -0
  608. package/src/components/theme-provider.tsx +16 -16
  609. package/src/components/types.ts +106 -0
  610. package/src/components/ui/badge.tsx +3 -3
  611. package/src/components/ui/button.tsx +15 -22
  612. package/src/components/ui/chat/avatar-handle.tsx +2 -2
  613. package/src/components/ui/chat/badges.tsx +2 -2
  614. package/src/components/ui/chat/buttons.tsx +7 -7
  615. package/src/components/ui/chat/chips.tsx +11 -11
  616. package/src/components/ui/chat/dot.tsx +8 -8
  617. package/src/components/ui/chat/icon-button.tsx +3 -3
  618. package/src/components/ui/chat/icon-tile.tsx +2 -2
  619. package/src/components/ui/chat/index.ts +12 -12
  620. package/src/components/ui/chat/inline-source.tsx +2 -2
  621. package/src/components/ui/chat/segmented-toggle.tsx +4 -4
  622. package/src/components/ui/chat/tag.tsx +10 -10
  623. package/src/components/ui/chat/thumbnail.tsx +2 -2
  624. package/src/components/ui/chat/waveform.tsx +2 -2
  625. package/src/components/ui/field.tsx +3 -3
  626. package/src/components/ui/glasscn/glass-button-group.tsx +7 -21
  627. package/src/components/ui/glasscn/glass-button.tsx +5 -5
  628. package/src/components/ui/glasscn/glass-container.tsx +10 -47
  629. package/src/components/ui/glasscn/glass-separator.tsx +6 -6
  630. package/src/components/ui/glasscn/liquid-glass.tsx +43 -300
  631. package/src/components/ui/input-group.tsx +4 -4
  632. package/src/components/ui/input.tsx +2 -2
  633. package/src/components/ui/menu-command.tsx +103 -75
  634. package/src/components/ui/popover-glass.tsx +11 -14
  635. package/src/components/ui/select.tsx +2 -2
  636. package/src/components/ui/tabs.tsx +12 -12
  637. package/src/components/ui/textarea.tsx +2 -2
  638. package/src/components/ui/toast.tsx +13 -13
  639. package/src/index.css +3 -1
  640. package/src/index.ts +3 -1
  641. package/src/lib/attachment-content.ts +28 -0
  642. package/src/lib/auth-accent.ts +2 -2
  643. package/src/lib/glass-variants.ts +19 -54
  644. package/src/lib/keyed-atom.ts +3 -3
  645. package/src/lib/segmented-control.ts +2 -2
  646. package/src/lib/specular.ts +10 -0
  647. package/src/lib/state/__tests__/sound.test.tsx +53 -0
  648. package/src/lib/state/exegia-provider.tsx +6 -6
  649. package/src/lib/state/index.ts +2 -2
  650. package/src/lib/state/store.ts +2 -2
  651. package/src/lib/use-motion-panel.ts +78 -0
  652. package/src/lib/utils.ts +7 -5
  653. package/src/specular.js +4 -0
  654. package/dist-lib/src/components/atoms/avatar/base.d.ts +0 -2
  655. package/dist-lib/src/components/atoms/avatar/index.d.ts +0 -2
  656. package/dist-lib/src/components/atoms/avatar/types.d.ts +0 -20
  657. package/dist-lib/src/components/atoms/avatar/utils.d.ts +0 -13
  658. package/dist-lib/src/components/atoms/background/texture.d.ts +0 -2
  659. package/dist-lib/src/components/atoms/background/type.d.ts +0 -7
  660. package/dist-lib/src/components/atoms/background/utils.d.ts +0 -4
  661. package/dist-lib/src/components/atoms/bubble/actions.d.ts +0 -7
  662. package/dist-lib/src/components/atoms/bubble/context.d.ts +0 -4
  663. package/dist-lib/src/components/atoms/bubble/default.d.ts +0 -3
  664. package/dist-lib/src/components/atoms/bubble/header.d.ts +0 -8
  665. package/dist-lib/src/components/atoms/bubble/index.d.ts +0 -16
  666. package/dist-lib/src/components/atoms/bubble/message.d.ts +0 -3
  667. package/dist-lib/src/components/atoms/bubble/reactions.d.ts +0 -14
  668. package/dist-lib/src/components/atoms/bubble/types.d.ts +0 -59
  669. package/dist-lib/src/components/atoms/bubble/utils.d.ts +0 -13
  670. package/dist-lib/src/components/atoms/index.d.ts +0 -15
  671. package/dist-lib/src/components/atoms/loader.d.ts +0 -8
  672. package/dist-lib/src/components/atoms/reference.d.ts +0 -7
  673. package/dist-lib/src/components/atoms/text/default.d.ts +0 -1144
  674. package/dist-lib/src/components/atoms/text/heading.d.ts +0 -4
  675. package/dist-lib/src/components/atoms/text/index.d.ts +0 -21
  676. package/dist-lib/src/components/atoms/text/label.d.ts +0 -2
  677. package/dist-lib/src/components/atoms/text/paragraph.d.ts +0 -4
  678. package/dist-lib/src/components/atoms/text/span.d.ts +0 -3
  679. package/dist-lib/src/components/atoms/text/types.d.ts +0 -23
  680. package/dist-lib/src/components/atoms/text/utils.d.ts +0 -4
  681. package/dist-lib/src/components/atoms/text-selection/click-popover.d.ts +0 -3
  682. package/dist-lib/src/components/atoms/text-selection/index.d.ts +0 -6
  683. package/dist-lib/src/components/atoms/text-selection/popover.d.ts +0 -3
  684. package/dist-lib/src/components/atoms/text-selection/selection-atom.d.ts +0 -30
  685. package/dist-lib/src/components/atoms/text-selection/selection.d.ts +0 -3
  686. package/dist-lib/src/components/atoms/text-selection/types.d.ts +0 -90
  687. package/dist-lib/src/components/atoms/text-selection/use-selection.d.ts +0 -7
  688. package/dist-lib/src/components/atoms/types.d.ts +0 -17
  689. package/dist-lib/src/components/blocks/auth/auth-flow-atom.d.ts +0 -77
  690. package/dist-lib/src/components/blocks/auth/auth-flow-block.d.ts +0 -123
  691. package/dist-lib/src/components/blocks/auth/auth-flow-block.story.d.ts +0 -3
  692. package/dist-lib/src/components/blocks/auth/auth-session-atom.d.ts +0 -28
  693. package/dist-lib/src/components/blocks/auth/auth-shell.d.ts +0 -56
  694. package/dist-lib/src/components/blocks/auth/auth-state-type.d.ts +0 -71
  695. package/dist-lib/src/components/blocks/auth/auth-state.d.ts +0 -9
  696. package/dist-lib/src/components/blocks/auth/code-auth-block.d.ts +0 -22
  697. package/dist-lib/src/components/blocks/auth/code-auth-block.story.d.ts +0 -3
  698. package/dist-lib/src/components/blocks/auth/forgot-password-block.d.ts +0 -15
  699. package/dist-lib/src/components/blocks/auth/forgot-password-block.story.d.ts +0 -3
  700. package/dist-lib/src/components/blocks/auth/linked-accounts-block.d.ts +0 -36
  701. package/dist-lib/src/components/blocks/auth/linked-accounts-block.story.d.ts +0 -3
  702. package/dist-lib/src/components/blocks/auth/login-block.d.ts +0 -25
  703. package/dist-lib/src/components/blocks/auth/login-block.story.d.ts +0 -3
  704. package/dist-lib/src/components/blocks/auth/onboarding/profile-step.d.ts +0 -19
  705. package/dist-lib/src/components/blocks/auth/onboarding-block.d.ts +0 -69
  706. package/dist-lib/src/components/blocks/auth/onboarding-block.story.d.ts +0 -3
  707. package/dist-lib/src/components/blocks/auth/passkey-manager-block.d.ts +0 -38
  708. package/dist-lib/src/components/blocks/auth/passkey-manager-block.story.d.ts +0 -3
  709. package/dist-lib/src/components/blocks/auth/passkey-sign-in-block.d.ts +0 -27
  710. package/dist-lib/src/components/blocks/auth/passkey-sign-in-block.story.d.ts +0 -3
  711. package/dist-lib/src/components/blocks/auth/signup-block.d.ts +0 -41
  712. package/dist-lib/src/components/blocks/auth/signup-block.story.d.ts +0 -3
  713. package/dist-lib/src/components/blocks/auth/update-password-block.d.ts +0 -28
  714. package/dist-lib/src/components/blocks/auth/update-password-block.story.d.ts +0 -3
  715. package/dist-lib/src/components/blocks/auth/use-auth-state.d.ts +0 -52
  716. package/dist-lib/src/components/blocks/chat/banners.d.ts +0 -13
  717. package/dist-lib/src/components/blocks/chat/base.d.ts +0 -10
  718. package/dist-lib/src/components/blocks/chat/base.story.d.ts +0 -3
  719. package/dist-lib/src/components/blocks/chat/header.d.ts +0 -4
  720. package/dist-lib/src/components/blocks/chat/index.d.ts +0 -13
  721. package/dist-lib/src/components/blocks/chat/recommendation-stack.d.ts +0 -13
  722. package/dist-lib/src/components/blocks/chat/suggested-prompts.d.ts +0 -3
  723. package/dist-lib/src/components/blocks/chat/types.d.ts +0 -64
  724. package/dist-lib/src/components/blocks/chat/version-history-record.d.ts +0 -3
  725. package/dist-lib/src/components/blocks/layout.d.ts +0 -8
  726. package/dist-lib/src/components/blocks/nav/sidebar/ai-sidebar-atom.d.ts +0 -217
  727. package/dist-lib/src/components/blocks/nav/sidebar/ai-sidebar.d.ts +0 -11
  728. package/dist-lib/src/components/blocks/nav/sidebar/index.d.ts +0 -15
  729. package/dist-lib/src/components/blocks/nav/sidebar/sidebar-context.d.ts +0 -3
  730. package/dist-lib/src/components/blocks/nav/sidebar/sidebar-icon.d.ts +0 -2
  731. package/dist-lib/src/components/blocks/nav/sidebar/sidebar-row.d.ts +0 -4
  732. package/dist-lib/src/components/blocks/nav/sidebar/type.d.ts +0 -245
  733. package/dist-lib/src/components/blocks/nav/sidebar/use-ai-sidebar-state.d.ts +0 -29
  734. package/dist-lib/src/components/blocks/nav/sidebar/use-ai-sidebar.d.ts +0 -27
  735. package/dist-lib/src/components/blocks/nav/sidebar/utils.d.ts +0 -21
  736. package/dist-lib/src/components/blocks/profile/index.d.ts +0 -7
  737. package/dist-lib/src/components/blocks/profile/profile-card-atom.d.ts +0 -68
  738. package/dist-lib/src/components/blocks/profile/profile-card-block.d.ts +0 -66
  739. package/dist-lib/src/components/blocks/profile/profile-card-block.story.d.ts +0 -3
  740. package/dist-lib/src/components/blocks/profile/type.d.ts +0 -80
  741. package/dist-lib/src/components/blocks/profile/use-profile-card-state.d.ts +0 -24
  742. package/dist-lib/src/components/blocks/profile/use-profile-card.d.ts +0 -34
  743. package/dist-lib/src/components/blocks/scaffold/index.d.ts +0 -29
  744. package/dist-lib/src/components/blocks/scaffold/panel-close-button.d.ts +0 -4
  745. package/dist-lib/src/components/blocks/scaffold/panel-menu-button.d.ts +0 -8
  746. package/dist-lib/src/components/blocks/scaffold/scaffold-actions.d.ts +0 -10
  747. package/dist-lib/src/components/blocks/scaffold/scaffold-atom.d.ts +0 -97
  748. package/dist-lib/src/components/blocks/scaffold/scaffold-canvas.d.ts +0 -9
  749. package/dist-lib/src/components/blocks/scaffold/scaffold-context.d.ts +0 -7
  750. package/dist-lib/src/components/blocks/scaffold/scaffold-inspector.d.ts +0 -9
  751. package/dist-lib/src/components/blocks/scaffold/scaffold-main.d.ts +0 -8
  752. package/dist-lib/src/components/blocks/scaffold/scaffold-panel.d.ts +0 -10
  753. package/dist-lib/src/components/blocks/scaffold/scaffold-root.d.ts +0 -17
  754. package/dist-lib/src/components/blocks/scaffold/scaffold-root.story.d.ts +0 -3
  755. package/dist-lib/src/components/blocks/scaffold/scaffold-sidebar.d.ts +0 -7
  756. package/dist-lib/src/components/blocks/scaffold/scaffold-sub-panel.d.ts +0 -3
  757. package/dist-lib/src/components/blocks/scaffold/scaffold-tab.d.ts +0 -14
  758. package/dist-lib/src/components/blocks/scaffold/type.d.ts +0 -203
  759. package/dist-lib/src/components/blocks/scaffold/use-scaffold-state.d.ts +0 -26
  760. package/dist-lib/src/components/blocks/scaffold/use-scaffold.d.ts +0 -14
  761. package/dist-lib/src/components/blocks/scaffold/utils.d.ts +0 -37
  762. package/dist-lib/src/components/blocks/shell/animated-panel-inset.d.ts +0 -2
  763. package/dist-lib/src/components/blocks/shell/animated-panel-provider.d.ts +0 -2
  764. package/dist-lib/src/components/blocks/shell/animated-panel-trigger.d.ts +0 -2
  765. package/dist-lib/src/components/blocks/shell/animated-panel.d.ts +0 -2
  766. package/dist-lib/src/components/blocks/shell/shell-fit-atom.d.ts +0 -68
  767. package/dist-lib/src/components/blocks/shell/shell-layout.d.ts +0 -3
  768. package/dist-lib/src/components/blocks/shell/shell-layout.story.d.ts +0 -3
  769. package/dist-lib/src/components/blocks/shell/shell-metrics.d.ts +0 -54
  770. package/dist-lib/src/components/blocks/shell/type.d.ts +0 -292
  771. package/dist-lib/src/components/blocks/shell/use-shell-fit-state.d.ts +0 -25
  772. package/dist-lib/src/components/blocks/shell/use-shell-fit.d.ts +0 -14
  773. package/dist-lib/src/components/blocks/shell/use-shell-panels.d.ts +0 -20
  774. package/dist-lib/src/components/blocks/shell/utils.d.ts +0 -70
  775. package/dist-lib/src/components/composed/action-bar/action.d.ts +0 -18
  776. package/dist-lib/src/components/composed/action-bar/emojis.d.ts +0 -10
  777. package/dist-lib/src/components/composed/action-bar/index.d.ts +0 -12
  778. package/dist-lib/src/components/composed/action-bar/toolbar.d.ts +0 -2
  779. package/dist-lib/src/components/composed/action-bar/types.d.ts +0 -55
  780. package/dist-lib/src/components/composed/action-bar/utils.d.ts +0 -57
  781. package/dist-lib/src/components/composed/ai/index.d.ts +0 -17
  782. package/dist-lib/src/components/composed/ai/message.d.ts +0 -7
  783. package/dist-lib/src/components/composed/ai/research-answer.d.ts +0 -30
  784. package/dist-lib/src/components/composed/ai/streaming-text.d.ts +0 -26
  785. package/dist-lib/src/components/composed/ai/suggested-prompt.d.ts +0 -35
  786. package/dist-lib/src/components/composed/ai/types.d.ts +0 -66
  787. package/dist-lib/src/components/composed/attachment.story.d.ts +0 -3
  788. package/dist-lib/src/components/composed/chart.story.d.ts +0 -3
  789. package/dist-lib/src/components/composed/chat/attachment.d.ts +0 -62
  790. package/dist-lib/src/components/composed/chat/chart.d.ts +0 -41
  791. package/dist-lib/src/components/composed/chat/code-block.d.ts +0 -26
  792. package/dist-lib/src/components/composed/chat/composer/add-button.d.ts +0 -5
  793. package/dist-lib/src/components/composed/chat/composer/base.d.ts +0 -8
  794. package/dist-lib/src/components/composed/chat/composer/command-menu.d.ts +0 -2
  795. package/dist-lib/src/components/composed/chat/composer/hooks.d.ts +0 -9
  796. package/dist-lib/src/components/composed/chat/composer/send-button.d.ts +0 -3
  797. package/dist-lib/src/components/composed/chat/composer/suggestions.d.ts +0 -7
  798. package/dist-lib/src/components/composed/chat/composer/utils.d.ts +0 -19
  799. package/dist-lib/src/components/composed/chat/context-cards.d.ts +0 -27
  800. package/dist-lib/src/components/composed/chat/filter-table.d.ts +0 -40
  801. package/dist-lib/src/components/composed/chat/flowchart/chart-node.d.ts +0 -2
  802. package/dist-lib/src/components/composed/chat/flowchart/connector.d.ts +0 -2
  803. package/dist-lib/src/components/composed/chat/flowchart/default.d.ts +0 -7
  804. package/dist-lib/src/components/composed/chat/flowchart/edge-toolbar.d.ts +0 -9
  805. package/dist-lib/src/components/composed/chat/flowchart/hooks.d.ts +0 -290
  806. package/dist-lib/src/components/composed/chat/flowchart/step-body.d.ts +0 -6
  807. package/dist-lib/src/components/composed/chat/flowchart/types.d.ts +0 -91
  808. package/dist-lib/src/components/composed/chat/flowchart/utils.d.ts +0 -64
  809. package/dist-lib/src/components/composed/chat/index.d.ts +0 -15
  810. package/dist-lib/src/components/composed/chat/insight-cards.d.ts +0 -54
  811. package/dist-lib/src/components/composed/chat/markdown-atom.d.ts +0 -7
  812. package/dist-lib/src/components/composed/chat/markdown.d.ts +0 -22
  813. package/dist-lib/src/components/composed/chat/recommendation/checkbox.d.ts +0 -15
  814. package/dist-lib/src/components/composed/chat/recommendation/constant.d.ts +0 -6
  815. package/dist-lib/src/components/composed/chat/recommendation/default.d.ts +0 -7
  816. package/dist-lib/src/components/composed/chat/recommendation/group.d.ts +0 -8
  817. package/dist-lib/src/components/composed/chat/recommendation/index.d.ts +0 -15
  818. package/dist-lib/src/components/composed/chat/recommendation/item.d.ts +0 -12
  819. package/dist-lib/src/components/composed/chat/recommendation/types.d.ts +0 -53
  820. package/dist-lib/src/components/composed/chat/records-table.d.ts +0 -38
  821. package/dist-lib/src/components/composed/chat/type.d.ts +0 -86
  822. package/dist-lib/src/components/composed/code-block.story.d.ts +0 -3
  823. package/dist-lib/src/components/composed/context-cards.story.d.ts +0 -3
  824. package/dist-lib/src/components/composed/emoji-action-bar.story.d.ts +0 -3
  825. package/dist-lib/src/components/composed/filter-table.story.d.ts +0 -7
  826. package/dist-lib/src/components/composed/flowchart.story.d.ts +0 -3
  827. package/dist-lib/src/components/composed/insight-cards.story.d.ts +0 -3
  828. package/dist-lib/src/components/composed/logo.d.ts +0 -34
  829. package/dist-lib/src/components/composed/logo.story.d.ts +0 -3
  830. package/dist-lib/src/components/composed/markdown.story.d.ts +0 -3
  831. package/dist-lib/src/components/composed/password-input.d.ts +0 -30
  832. package/dist-lib/src/components/composed/password-input.story.d.ts +0 -7
  833. package/dist-lib/src/components/composed/reader/applied-mark.d.ts +0 -3
  834. package/dist-lib/src/components/composed/reader/apply-toast.d.ts +0 -3
  835. package/dist-lib/src/components/composed/reader/selection-highlight.d.ts +0 -3
  836. package/dist-lib/src/components/composed/reader/selection-popover.d.ts +0 -9
  837. package/dist-lib/src/components/composed/reader/type.d.ts +0 -40
  838. package/dist-lib/src/components/composed/recommendation-card.story.d.ts +0 -3
  839. package/dist-lib/src/components/composed/records-table.story.d.ts +0 -3
  840. package/dist-lib/src/components/composed/research-answer.story.d.ts +0 -3
  841. package/dist-lib/src/components/composed/social-providers.d.ts +0 -37
  842. package/dist-lib/src/components/composed/social-providers.story.d.ts +0 -3
  843. package/dist-lib/src/components/composed/streaming-text.story.d.ts +0 -3
  844. package/dist-lib/src/components/composed/tree/index.d.ts +0 -6
  845. package/dist-lib/src/components/composed/tree/tree-atom.d.ts +0 -160
  846. package/dist-lib/src/components/composed/tree/tree-context.d.ts +0 -4
  847. package/dist-lib/src/components/composed/tree/tree-node.d.ts +0 -12
  848. package/dist-lib/src/components/composed/tree/tree.d.ts +0 -19
  849. package/dist-lib/src/components/composed/tree/type.d.ts +0 -290
  850. package/dist-lib/src/components/composed/tree/use-tree-dnd.d.ts +0 -18
  851. package/dist-lib/src/components/composed/tree/use-tree-state.d.ts +0 -25
  852. package/dist-lib/src/components/composed/tree/use-tree.d.ts +0 -24
  853. package/dist-lib/src/components/composed/tree/utils.d.ts +0 -28
  854. package/dist-lib/src/components/composed/tree.story.d.ts +0 -6
  855. package/dist-lib/src/components/composed/user/index.d.ts +0 -11
  856. package/dist-lib/src/components/composed/user/info.d.ts +0 -12
  857. package/dist-lib/src/components/composed/user/message.d.ts +0 -3
  858. package/dist-lib/src/components/composed/user/pill.d.ts +0 -10
  859. package/dist-lib/src/components/composed/user/types.d.ts +0 -20
  860. package/dist-lib/src/components/composed/user.story.d.ts +0 -8
  861. package/dist-lib/src/components/composed/verse/index.d.ts +0 -2
  862. package/dist-lib/src/components/composed/verse/types.d.ts +0 -18
  863. package/dist-lib/src/components/composed/verse/verse.d.ts +0 -5
  864. package/dist-lib/src/components/composed/verse.story.d.ts +0 -3
  865. package/dist-lib/src/components/docs/atoms-gallery.d.ts +0 -3
  866. package/dist-lib/src/components/docs/demo-controls.d.ts +0 -21
  867. package/dist-lib/src/components/icons/file-badge-cfm.d.ts +0 -7
  868. package/dist-lib/src/components/icons/file-badge-corpus.d.ts +0 -7
  869. package/dist-lib/src/components/icons/file-badge-pdf.d.ts +0 -7
  870. package/dist-lib/src/components/icons/file-badge-tei.d.ts +0 -7
  871. package/dist-lib/src/components/icons/file-badge-tf.d.ts +0 -7
  872. package/dist-lib/src/components/icons/file-badge-txt.d.ts +0 -7
  873. package/dist-lib/src/components/icons/file-badge-xml.d.ts +0 -7
  874. package/dist-lib/src/components/icons/file-wordmark-cfm.d.ts +0 -7
  875. package/dist-lib/src/components/icons/file-wordmark-corpus.d.ts +0 -7
  876. package/dist-lib/src/components/icons/file-wordmark-pdf.d.ts +0 -7
  877. package/dist-lib/src/components/icons/file-wordmark-tei.d.ts +0 -7
  878. package/dist-lib/src/components/icons/file-wordmark-tf.d.ts +0 -7
  879. package/dist-lib/src/components/icons/file-wordmark-txt.d.ts +0 -7
  880. package/dist-lib/src/components/icons/file-wordmark-xml.d.ts +0 -7
  881. package/dist-lib/src/components/icons/index.d.ts +0 -15
  882. package/dist-lib/src/components/icons/types.d.ts +0 -7
  883. package/dist-lib/src/components/motion/overflow-actions.d.ts +0 -35
  884. package/dist-lib/src/components/motion/popover-morph.d.ts +0 -35
  885. package/dist-lib/src/components/motion/popover-position.d.ts +0 -15
  886. package/dist-lib/src/components/motion/shared-layout-bg.d.ts +0 -13
  887. package/dist-lib/src/components/theme-provider.d.ts +0 -15
  888. package/dist-lib/src/components/ui/avatar.story.d.ts +0 -7
  889. package/dist-lib/src/components/ui/badge.d.ts +0 -14
  890. package/dist-lib/src/components/ui/bubble.story.d.ts +0 -7
  891. package/dist-lib/src/components/ui/button.d.ts +0 -28
  892. package/dist-lib/src/components/ui/button.story.d.ts +0 -8
  893. package/dist-lib/src/components/ui/card.story.d.ts +0 -9
  894. package/dist-lib/src/components/ui/chat/avatar-handle.d.ts +0 -13
  895. package/dist-lib/src/components/ui/chat/badges.d.ts +0 -29
  896. package/dist-lib/src/components/ui/chat/buttons.d.ts +0 -29
  897. package/dist-lib/src/components/ui/chat/chips.d.ts +0 -48
  898. package/dist-lib/src/components/ui/chat/dot.d.ts +0 -30
  899. package/dist-lib/src/components/ui/chat/icon-button.d.ts +0 -18
  900. package/dist-lib/src/components/ui/chat/icon-tile.d.ts +0 -20
  901. package/dist-lib/src/components/ui/chat/index.d.ts +0 -12
  902. package/dist-lib/src/components/ui/chat/inline-source.d.ts +0 -20
  903. package/dist-lib/src/components/ui/chat/segmented-toggle.d.ts +0 -20
  904. package/dist-lib/src/components/ui/chat/tag.d.ts +0 -21
  905. package/dist-lib/src/components/ui/chat/thumbnail.d.ts +0 -13
  906. package/dist-lib/src/components/ui/chat/waveform.d.ts +0 -13
  907. package/dist-lib/src/components/ui/chat-atoms.story.d.ts +0 -22
  908. package/dist-lib/src/components/ui/checkbox.story.d.ts +0 -7
  909. package/dist-lib/src/components/ui/field.story.d.ts +0 -7
  910. package/dist-lib/src/components/ui/file-icons.story.d.ts +0 -7
  911. package/dist-lib/src/components/ui/frame.story.d.ts +0 -9
  912. package/dist-lib/src/components/ui/glasscn/glass-button-group.d.ts +0 -5
  913. package/dist-lib/src/components/ui/glasscn/glass-button.d.ts +0 -6
  914. package/dist-lib/src/components/ui/glasscn/glass-container.d.ts +0 -12
  915. package/dist-lib/src/components/ui/glasscn/glass-separator.d.ts +0 -5
  916. package/dist-lib/src/components/ui/glasscn/liquid-glass.d.ts +0 -31
  917. package/dist-lib/src/components/ui/input-group.d.ts +0 -13
  918. package/dist-lib/src/components/ui/input-group.story.d.ts +0 -7
  919. package/dist-lib/src/components/ui/input.d.ts +0 -9
  920. package/dist-lib/src/components/ui/input.story.d.ts +0 -9
  921. package/dist-lib/src/components/ui/label.story.d.ts +0 -9
  922. package/dist-lib/src/components/ui/menu-command.d.ts +0 -37
  923. package/dist-lib/src/components/ui/menu-command.story.d.ts +0 -7
  924. package/dist-lib/src/components/ui/otp-field.story.d.ts +0 -9
  925. package/dist-lib/src/components/ui/password-input.story.d.ts +0 -3
  926. package/dist-lib/src/components/ui/popover-glass.d.ts +0 -32
  927. package/dist-lib/src/components/ui/reference.story.d.ts +0 -10
  928. package/dist-lib/src/components/ui/select.d.ts +0 -30
  929. package/dist-lib/src/components/ui/separator.story.d.ts +0 -7
  930. package/dist-lib/src/components/ui/tabs.d.ts +0 -15
  931. package/dist-lib/src/components/ui/text.story.d.ts +0 -9
  932. package/dist-lib/src/components/ui/textarea.d.ts +0 -8
  933. package/dist-lib/src/components/ui/textarea.story.d.ts +0 -7
  934. package/dist-lib/src/components/ui/toast.d.ts +0 -15
  935. package/dist-lib/src/index.d.ts +0 -63
  936. package/dist-lib/src/lib/auth-accent.d.ts +0 -33
  937. package/dist-lib/src/lib/glass-variants.d.ts +0 -6
  938. package/dist-lib/src/lib/keyed-atom.d.ts +0 -14
  939. package/dist-lib/src/lib/segmented-control.d.ts +0 -8
  940. package/dist-lib/src/lib/state/exegia-provider.d.ts +0 -51
  941. package/dist-lib/src/lib/state/index.d.ts +0 -4
  942. package/dist-lib/src/lib/state/store.d.ts +0 -17
  943. package/src/components/blocks/auth/auth-flow-block.story.tsx +0 -17
  944. package/src/components/blocks/auth/auth-state-type.ts +0 -97
  945. package/src/components/blocks/auth/code-auth-block.story.tsx +0 -20
  946. package/src/components/blocks/auth/forgot-password-block.story.tsx +0 -14
  947. package/src/components/blocks/auth/linked-accounts-block.story.tsx +0 -23
  948. package/src/components/blocks/auth/login-block.story.tsx +0 -18
  949. package/src/components/blocks/auth/onboarding-block.story.tsx +0 -14
  950. package/src/components/blocks/auth/passkey-manager-block.story.tsx +0 -18
  951. package/src/components/blocks/auth/passkey-sign-in-block.story.tsx +0 -14
  952. package/src/components/blocks/auth/signup-block.story.tsx +0 -18
  953. package/src/components/blocks/auth/update-password-block.story.tsx +0 -14
  954. package/src/components/blocks/chat/base.story.tsx +0 -19
  955. package/src/components/blocks/chat/types.ts +0 -81
  956. package/src/components/blocks/nav/sidebar/__tests__/ai-sidebar-atom.test.tsx +0 -325
  957. package/src/components/blocks/nav/sidebar/__tests__/ai-sidebar.test.tsx +0 -93
  958. package/src/components/blocks/nav/sidebar/__tests__/use-ai-sidebar.test.tsx +0 -310
  959. package/src/components/blocks/nav/sidebar/ai-sidebar-atom.ts +0 -698
  960. package/src/components/blocks/nav/sidebar/ai-sidebar.tsx +0 -150
  961. package/src/components/blocks/nav/sidebar/index.ts +0 -67
  962. package/src/components/blocks/nav/sidebar/sidebar-context.ts +0 -15
  963. package/src/components/blocks/nav/sidebar/sidebar-icon.tsx +0 -14
  964. package/src/components/blocks/nav/sidebar/sidebar-row.tsx +0 -378
  965. package/src/components/blocks/nav/sidebar/type.ts +0 -294
  966. package/src/components/blocks/nav/sidebar/use-ai-sidebar-state.ts +0 -123
  967. package/src/components/blocks/nav/sidebar/use-ai-sidebar.ts +0 -619
  968. package/src/components/blocks/nav/sidebar/utils.ts +0 -170
  969. package/src/components/blocks/profile/profile-card-block.story.tsx +0 -18
  970. package/src/components/blocks/scaffold/scaffold-root.story.tsx +0 -36
  971. package/src/components/blocks/shell/shell-layout.story.tsx +0 -19
  972. package/src/components/composed/attachment.story.tsx +0 -52
  973. package/src/components/composed/chart.story.tsx +0 -46
  974. package/src/components/composed/code-block.story.tsx +0 -29
  975. package/src/components/composed/context-cards.story.tsx +0 -30
  976. package/src/components/composed/emoji-action-bar.story.tsx +0 -20
  977. package/src/components/composed/filter-table.story.tsx +0 -58
  978. package/src/components/composed/flowchart.story.tsx +0 -24
  979. package/src/components/composed/insight-cards.story.tsx +0 -51
  980. package/src/components/composed/logo.story.tsx +0 -21
  981. package/src/components/composed/markdown.story.tsx +0 -21
  982. package/src/components/composed/password-input.story.tsx +0 -38
  983. package/src/components/composed/recommendation-card.story.tsx +0 -32
  984. package/src/components/composed/records-table.story.tsx +0 -46
  985. package/src/components/composed/research-answer.story.tsx +0 -32
  986. package/src/components/composed/social-providers.story.tsx +0 -24
  987. package/src/components/composed/streaming-text.story.tsx +0 -24
  988. package/src/components/composed/tree.story.tsx +0 -31
  989. package/src/components/composed/user.story.tsx +0 -29
  990. package/src/components/composed/verse.story.tsx +0 -21
  991. package/src/components/ui/avatar.story.tsx +0 -33
  992. package/src/components/ui/bubble.story.tsx +0 -45
  993. package/src/components/ui/button.story.tsx +0 -62
  994. package/src/components/ui/card.story.tsx +0 -36
  995. package/src/components/ui/chat-atoms.story.tsx +0 -94
  996. package/src/components/ui/checkbox.story.tsx +0 -30
  997. package/src/components/ui/field.story.tsx +0 -32
  998. package/src/components/ui/file-icons.story.tsx +0 -24
  999. package/src/components/ui/frame.story.tsx +0 -32
  1000. package/src/components/ui/input-group.story.tsx +0 -27
  1001. package/src/components/ui/input.story.tsx +0 -42
  1002. package/src/components/ui/label.story.tsx +0 -32
  1003. package/src/components/ui/menu-command.story.tsx +0 -37
  1004. package/src/components/ui/otp-field.story.tsx +0 -35
  1005. package/src/components/ui/password-input.story.tsx +0 -19
  1006. package/src/components/ui/reference.story.tsx +0 -33
  1007. package/src/components/ui/separator.story.tsx +0 -34
  1008. package/src/components/ui/text.story.tsx +0 -31
  1009. package/src/components/ui/textarea.story.tsx +0 -34
  1010. /package/dist-lib/{src/components → components}/atoms/_layout.d.ts +0 -0
  1011. /package/dist-lib/{src/components → components}/atoms/avatar/verified.d.ts +0 -0
  1012. /package/dist-lib/{src/components → components}/atoms/background/index.d.ts +0 -0
  1013. /package/dist-lib/{src/components → components}/atoms/bubble/__tests__/bubble.test.d.ts +0 -0
  1014. /package/dist-lib/{src/components → components}/atoms/bubble/__tests__/reference.test.d.ts +0 -0
  1015. /package/dist-lib/{src/components → components}/atoms/chip.d.ts +0 -0
  1016. /package/dist-lib/{src/components → components}/atoms/text/__tests__/text.test.d.ts +0 -0
  1017. /package/dist-lib/{src/components → components}/atoms/text-selection/__tests__/click-popover.test.d.ts +0 -0
  1018. /package/dist-lib/{src/components → components}/atoms/text-selection/__tests__/text-selection.test.d.ts +0 -0
  1019. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/auth-flow-block.test.d.ts +0 -0
  1020. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/auth-state-atom.test.d.ts +0 -0
  1021. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/linked-accounts-block.test.d.ts +0 -0
  1022. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/onboarding-block.test.d.ts +0 -0
  1023. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/passkey-manager-block.test.d.ts +0 -0
  1024. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/passkey-sign-in-block.test.d.ts +0 -0
  1025. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/signup-block.test.d.ts +0 -0
  1026. /package/dist-lib/{src/components → components}/blocks/auth/__tests__/update-password-block.test.d.ts +0 -0
  1027. /package/dist-lib/{src/components → components}/blocks/chat/__tests__/ai-panel.test.d.ts +0 -0
  1028. /package/dist-lib/{src/components → components}/blocks/chat/shared.d.ts +0 -0
  1029. /package/dist-lib/{src/components → components}/blocks/profile/__tests__/profile-card-block.test.d.ts +0 -0
  1030. /package/dist-lib/{src/components → components}/blocks/scaffold/__tests__/scaffold-atom.test.d.ts +0 -0
  1031. /package/dist-lib/{src/components → components}/blocks/scaffold/__tests__/scaffold.test.d.ts +0 -0
  1032. /package/dist-lib/{src/components → components}/blocks/scaffold/constants.d.ts +0 -0
  1033. /package/dist-lib/{src/components → components}/blocks/shell/__tests__/shell-fit-atom.test.d.ts +0 -0
  1034. /package/dist-lib/{src/components → components}/blocks/shell/__tests__/shell-layout.test.d.ts +0 -0
  1035. /package/dist-lib/{src/components → components}/blocks/shell/__tests__/shell-metrics.test.d.ts +0 -0
  1036. /package/dist-lib/{src/components → components}/blocks/shell/index.d.ts +0 -0
  1037. /package/dist-lib/{src/components/blocks/nav → components/blocks}/sidebar/__tests__/ai-sidebar-atom.test.d.ts +0 -0
  1038. /package/dist-lib/{src/components/blocks/nav → components/blocks}/sidebar/__tests__/ai-sidebar.test.d.ts +0 -0
  1039. /package/dist-lib/{src/components/blocks/nav → components/blocks}/sidebar/__tests__/use-ai-sidebar.test.d.ts +0 -0
  1040. /package/dist-lib/{src/components/blocks/nav → components/blocks}/sidebar/marquee-label.d.ts +0 -0
  1041. /package/dist-lib/{src/components → components}/composed/__tests__/logo.test.d.ts +0 -0
  1042. /package/dist-lib/{src/components → components}/composed/action-bar/__tests__/action-bar.test.d.ts +0 -0
  1043. /package/dist-lib/{src/components → components}/composed/ai/__tests__/ai.test.d.ts +0 -0
  1044. /package/dist-lib/{src/components → components}/composed/ai/avatar.d.ts +0 -0
  1045. /package/dist-lib/{src/components → components}/composed/ai/shared.d.ts +0 -0
  1046. /package/dist-lib/{src/components → components}/composed/chat/__tests__/attachment.test.d.ts +0 -0
  1047. /package/dist-lib/{src/components → components}/composed/chat/__tests__/beautiful-ui.test.d.ts +0 -0
  1048. /package/dist-lib/{src/components → components}/composed/chat/__tests__/chart.test.d.ts +0 -0
  1049. /package/dist-lib/{src/components → components}/composed/chat/__tests__/code-block.test.d.ts +0 -0
  1050. /package/dist-lib/{src/components → components}/composed/chat/__tests__/composer-attachments.test.d.ts +0 -0
  1051. /package/dist-lib/{src/components → components}/composed/chat/__tests__/composer.test.d.ts +0 -0
  1052. /package/dist-lib/{src/components → components}/composed/chat/__tests__/flowchart.test.d.ts +0 -0
  1053. /package/dist-lib/{src/components/composed/chat/__tests__/markdown.test.d.ts → components/composed/chat/__tests__/glass-material.test.d.ts} +0 -0
  1054. /package/dist-lib/{src/components/composed/tree/__tests__/tree-atom.test.d.ts → components/composed/chat/__tests__/markdown.test.d.ts} +0 -0
  1055. /package/dist-lib/{src/components/composed/tree/__tests__/tree.test.d.ts → components/composed/chat/__tests__/menu-command.test.d.ts} +0 -0
  1056. /package/dist-lib/{src/components/composed/tree/__tests__/use-tree.test.d.ts → components/composed/chat/__tests__/recommendation.test.d.ts} +0 -0
  1057. /package/dist-lib/{src/components → components}/composed/chat/actions.d.ts +0 -0
  1058. /package/dist-lib/{src/components → components}/composed/chat/composer/index.d.ts +0 -0
  1059. /package/dist-lib/{src/components → components}/composed/chat/flowchart/constant.d.ts +0 -0
  1060. /package/dist-lib/{src/components → components}/composed/chat/flowchart/index.d.ts +0 -0
  1061. /package/dist-lib/{src/components → components}/composed/chat/hint.d.ts +0 -0
  1062. /package/dist-lib/{src/components → components}/composed/reader/index.d.ts +0 -0
  1063. /package/dist-lib/{src/components/composed/user/utils.d.ts → components/composed/tree/__tests__/tree-atom.test.d.ts} +0 -0
  1064. /package/dist-lib/{src/components/composed/verse/__tests__/verse.test.d.ts → components/composed/tree/__tests__/tree.test.d.ts} +0 -0
  1065. /package/dist-lib/{src/components/icons/__tests__/icons.test.d.ts → components/composed/tree/__tests__/use-tree.test.d.ts} +0 -0
  1066. /package/dist-lib/{src/components → components}/composed/tree/constants.d.ts +0 -0
  1067. /package/dist-lib/{src/components/motion/index.d.ts → components/composed/user/__tests__/message.test.d.ts} +0 -0
  1068. /package/dist-lib/{src/components/ui/chat/__tests__/segmented-toggle.test.d.ts → components/composed/user/utils.d.ts} +0 -0
  1069. /package/dist-lib/{src/lib/utils.test.d.ts → components/composed/verse/__tests__/verse.test.d.ts} +0 -0
  1070. /package/dist-lib/{src/components → components}/docs/code-block.d.ts +0 -0
  1071. /package/dist-lib/{src/components → components}/docs/hero.d.ts +0 -0
  1072. /package/dist-lib/{src/components → components}/docs/mermaid.d.ts +0 -0
  1073. /package/dist-lib/{src/components → components}/ui/accordion.d.ts +0 -0
  1074. /package/dist-lib/{src/components → components}/ui/alert-dialog.d.ts +0 -0
  1075. /package/dist-lib/{src/components → components}/ui/alert.d.ts +0 -0
  1076. /package/dist-lib/{src/components → components}/ui/autocomplete.d.ts +0 -0
  1077. /package/dist-lib/{src/components → components}/ui/avatar.d.ts +0 -0
  1078. /package/dist-lib/{src/components → components}/ui/button-group.d.ts +0 -0
  1079. /package/dist-lib/{src/components → components}/ui/card.d.ts +0 -0
  1080. /package/dist-lib/{src/components → components}/ui/checkbox.d.ts +0 -0
  1081. /package/dist-lib/{src/components → components}/ui/collapsible.d.ts +0 -0
  1082. /package/dist-lib/{src/components → components}/ui/command.d.ts +0 -0
  1083. /package/dist-lib/{src/components → components}/ui/context-menu.d.ts +0 -0
  1084. /package/dist-lib/{src/components → components}/ui/emoji-picker.d.ts +0 -0
  1085. /package/dist-lib/{src/components → components}/ui/field.d.ts +0 -0
  1086. /package/dist-lib/{src/components → components}/ui/frame.d.ts +0 -0
  1087. /package/dist-lib/{src/components → components}/ui/group.d.ts +0 -0
  1088. /package/dist-lib/{src/components → components}/ui/kbd.d.ts +0 -0
  1089. /package/dist-lib/{src/components → components}/ui/label.d.ts +0 -0
  1090. /package/dist-lib/{src/components → components}/ui/menu.d.ts +0 -0
  1091. /package/dist-lib/{src/components → components}/ui/otp-field.d.ts +0 -0
  1092. /package/dist-lib/{src/components → components}/ui/popover.d.ts +0 -0
  1093. /package/dist-lib/{src/components → components}/ui/preview-card.d.ts +0 -0
  1094. /package/dist-lib/{src/components → components}/ui/scroll-area.d.ts +0 -0
  1095. /package/dist-lib/{src/components → components}/ui/separator.d.ts +0 -0
  1096. /package/dist-lib/{src/components → components}/ui/sheet.d.ts +0 -0
  1097. /package/dist-lib/{src/components → components}/ui/skeleton.d.ts +0 -0
  1098. /package/dist-lib/{src/components → components}/ui/spinner.d.ts +0 -0
  1099. /package/dist-lib/{src/components → components}/ui/switch.d.ts +0 -0
  1100. /package/dist-lib/{src/components → components}/ui/toolbar.d.ts +0 -0
  1101. /package/dist-lib/{src/components → components}/ui/tooltip.d.ts +0 -0
  1102. /package/dist-lib/{src/lib → lib}/ease.d.ts +0 -0
  1103. /package/dist-lib/{src/lib → lib}/hooks/use-hover-capable.d.ts +0 -0
  1104. /package/dist-lib/{src/lib → lib}/hooks/use-mobile.d.ts +0 -0
  1105. /package/dist-lib/{src/lib → lib}/sound.d.ts +0 -0
  1106. /package/dist-lib/{src/lib → lib}/utils.d.ts +0 -0
  1107. /package/src/components/blocks/{nav/sidebar → sidebar}/marquee-label.tsx +0 -0
@@ -1,316 +1,59 @@
1
1
  "use client"
2
2
 
3
- import {
4
- type CSSProperties,
5
- forwardRef,
6
- type HTMLAttributes,
7
- useCallback,
8
- useEffect,
9
- useId,
10
- useMemo,
11
- useRef,
12
- useState,
13
- } from "react"
14
-
3
+ import { Glass, type GlassOptics } from "@samasante/liquid-glass"
4
+ import { forwardRef, type HTMLAttributes } from "react"
15
5
  import { cn } from "@/lib/utils"
16
-
17
- type MapGeometry = {
18
- width: number // element width, CSS px, integer
19
- height: number // element height, CSS px, integer
20
- radius: number // corner radius, CSS px, already clamped to min(width, height) / 2
21
- bezel: number // fraction (0..1] of the half-min-dimension used as the refractive band
22
- }
23
-
24
- const MAX_TEXTURE_SIZE = 480
25
- const EDGE_TAPER_PX = 1.25
26
-
27
- const displacementMapCache = new Map<string, string>()
28
-
29
- // CSS.supports("backdrop-filter", "url(#f)") returns true in Safari and
30
- // Firefox (they parse the value) but neither browser actually renders SVG
31
- // filters through backdrop-filter. UA sniffing is the only reliable approach.
32
- // When WebKit ships support (track WebKit bug 245510), loosen this function.
33
- function supportsSvgBackdropFilter() {
34
- if (typeof navigator === "undefined") return false
35
- const ua = navigator.userAgent
36
- const isChromium = /Chrom(e|ium)/.test(ua) || /Edg\//.test(ua)
37
- return isChromium && !/Firefox/.test(ua)
38
- }
39
-
40
- // NOTE: Per-corner radii and percentage radii are NOT supported. The map
41
- // reads only borderTopLeftRadius in px. If a future consumer needs
42
- // asymmetric corners, extend the corner SDF branch to accept four radii.
43
- //
44
- // NOTE: Map regeneration renders a ≤480 px texture and encodes a PNG for
45
- // each unique (width, height, radius, bezel). Continuously animating the
46
- // element's SIZE will thrash the cache; animate transform: scale instead.
47
- function createDisplacementMap({ width, height, radius, bezel }: MapGeometry) {
48
- const cacheKey = `${width}:${height}:${radius}:${bezel}`
49
- const cached = displacementMapCache.get(cacheKey)
50
- if (cached !== undefined) return cached
51
-
52
- const downscale = Math.min(1, MAX_TEXTURE_SIZE / Math.max(width, height))
53
- const texWidth = Math.max(2, Math.round(width * downscale))
54
- const texHeight = Math.max(2, Math.round(height * downscale))
55
-
56
- const canvas = document.createElement("canvas")
57
- canvas.width = texWidth
58
- canvas.height = texHeight
59
- const ctx = canvas.getContext("2d")
60
- if (!ctx) return ""
61
-
62
- const image = ctx.createImageData(texWidth, texHeight)
63
- const data = image.data
64
- const halfWidth = width / 2
65
- const halfHeight = height / 2
66
- const r = Math.min(radius, halfWidth, halfHeight)
67
- const bezelPx = Math.max(1, bezel * Math.min(halfWidth, halfHeight))
68
-
69
- for (let ty = 0; ty < texHeight; ty += 1) {
70
- for (let tx = 0; tx < texWidth; tx += 1) {
71
- // Texel center in element coordinates, origin at element center.
72
- const px = ((tx + 0.5) / texWidth) * width - halfWidth
73
- const py = ((ty + 0.5) / texHeight) * height - halfHeight
74
-
75
- // Signed distance + outward normal of the rounded-rectangle contour.
76
- const qx = Math.abs(px) - (halfWidth - r)
77
- const qy = Math.abs(py) - (halfHeight - r)
78
- let signedDistance: number
79
- let dirX = 0
80
- let dirY = 0
81
- if (qx > 0 && qy > 0) {
82
- const len = Math.hypot(qx, qy)
83
- signedDistance = len - r
84
- dirX = (Math.sign(px) * qx) / len
85
- dirY = (Math.sign(py) * qy) / len
86
- } else if (qx > qy) {
87
- signedDistance = qx - r
88
- dirX = Math.sign(px)
89
- } else {
90
- signedDistance = qy - r
91
- dirY = Math.sign(py)
92
- }
93
-
94
- const index = (ty * texWidth + tx) * 4
95
- const inside = -signedDistance // px from the contour, positive inside
96
-
97
- if (inside <= 0) {
98
- data[index] = 128
99
- data[index + 1] = 128
100
- data[index + 2] = 128
101
- data[index + 3] = 255
102
- continue
103
- }
104
-
105
- const t = Math.min(1, inside / bezelPx) // 0 at the edge → 1 at the bezel's inner end
106
- let magnitude = 1 - convexSquircle(t) // max refraction at the edge, optically flat interior
107
- magnitude *= Math.min(1, inside / EDGE_TAPER_PX) // avoid sampling artifacts on the outermost pixels
108
-
109
- data[index] = Math.round(128 + dirX * magnitude * 127)
110
- data[index + 1] = Math.round(128 + dirY * magnitude * 127)
111
- data[index + 2] = 128
112
- data[index + 3] = 255
113
- }
114
- }
115
-
116
- ctx.putImageData(image, 0, 0)
117
- const mapUrl = canvas.toDataURL("image/png")
118
- displacementMapCache.set(cacheKey, mapUrl)
119
- return mapUrl
120
- }
121
-
122
- function convexSquircle(x: number) {
123
- return Math.pow(1 - Math.pow(1 - x, 4), 0.25)
6
+ import { glassVariantOptics, glassVariantStyles, type TFrostGlassVariant } from "@/lib/glass-variants"
7
+
8
+ /** A non-interactive material layer: the host keeps its semantics and layout. */
9
+ export function GlassSurface({
10
+ glassVariant = "liquid-refract",
11
+ optics,
12
+ }: {
13
+ glassVariant?: TFrostGlassVariant
14
+ optics?: Partial<GlassOptics>
15
+ }) {
16
+ return (
17
+ <Glass
18
+ aria-hidden="true"
19
+ data-glass-material="samasante"
20
+ className={cn("pointer-events-none", glassVariantStyles[glassVariant])}
21
+ style={{ position: "absolute", inset: 0, width: "100%", height: "100%", borderRadius: "inherit", zIndex: -1 }}
22
+ optics={{ ...glassVariantOptics[glassVariant], ...optics }}
23
+ >
24
+ <span />
25
+ </Glass>
26
+ )
124
27
  }
125
28
 
126
- export type LiquidGlassProps = HTMLAttributes<HTMLDivElement> & {
127
- /** Extra blur mixed into the backdrop-filter after the SVG refraction. */
29
+ export type TLiquidGlassProps = HTMLAttributes<HTMLDivElement> & {
30
+ glassVariant?: TFrostGlassVariant
31
+ optics?: Partial<GlassOptics>
128
32
  blur?: number
129
- /** SVG displacement strength. Higher values bend the sampled backdrop more. */
130
33
  refraction?: number
131
- /**
132
- * @deprecated Texture size now derives from element size. Accepted for
133
- * backwards-compatibility but has no effect.
134
- */
34
+ /** @deprecated The library manages displacement map resolution. */
135
35
  mapSize?: number
136
- /** Fraction of the radius used as the curved edge where most refraction happens. */
137
36
  bezel?: number
138
- /** Backdrop saturation. */
139
37
  saturation?: number
140
38
  }
141
39
 
142
- export const LiquidGlass = forwardRef<HTMLDivElement, LiquidGlassProps>(
143
- function LiquidGlass(
144
- {
145
- blur = 2,
146
- refraction = 10,
147
- mapSize: _mapSize,
148
- bezel = 10.34,
149
- saturation = 10.28,
150
- className,
151
- style,
152
- children,
153
- ...props
154
- },
155
- ref
156
- ) {
157
- const rawId = useId()
158
- const filterId = useMemo(
159
- () => `liquid-glass-${rawId.replace(/:/g, "")}`,
160
- [rawId]
161
- )
162
-
163
- // -------------------------------------------------------------------------
164
- // Ref merge — we need the DOM node to measure geometry while still
165
- // forwarding the ref to the consumer.
166
- // -------------------------------------------------------------------------
167
-
168
- const localRef = useRef<HTMLDivElement | null>(null)
169
- const setRefs = useCallback(
170
- (node: HTMLDivElement | null) => {
171
- localRef.current = node
172
- if (typeof ref === "function") ref(node)
173
- else if (ref) ref.current = node
174
- },
175
- [ref]
176
- )
177
-
178
- // -------------------------------------------------------------------------
179
- // Geometry measurement via ResizeObserver
180
- // -------------------------------------------------------------------------
181
-
182
- const [geometry, setGeometry] = useState<MapGeometry | null>(null)
183
-
184
- useEffect(() => {
185
- const el = localRef.current
186
- if (!el) return
187
- const measure = () => {
188
- const rect = el.getBoundingClientRect()
189
- const width = Math.round(rect.width)
190
- const height = Math.round(rect.height)
191
- if (!width || !height) return
192
- const parsed = Number.parseFloat(
193
- getComputedStyle(el).borderTopLeftRadius
194
- )
195
- const radius = Math.min(
196
- Number.isFinite(parsed) ? parsed : Math.min(width, height) / 2,
197
- width / 2,
198
- height / 2
199
- )
200
- setGeometry((prev) =>
201
- prev &&
202
- prev.width === width &&
203
- prev.height === height &&
204
- prev.radius === radius &&
205
- prev.bezel === bezel
206
- ? prev
207
- : { width, height, radius, bezel }
208
- )
209
- }
210
- measure()
211
- const observer = new ResizeObserver(measure)
212
- observer.observe(el)
213
- return () => observer.disconnect()
214
- }, [bezel])
215
-
216
- const mapUrl = useMemo(
217
- () => (geometry ? createDisplacementMap(geometry) : ""),
218
- [geometry]
219
- )
220
-
221
- // -------------------------------------------------------------------------
222
- // Browser capability gate
223
- //
224
- // Both SSR and the first client render take the fallback branch so hydration
225
- // never mismatches. The state is set in an effect (client-only).
226
- // -------------------------------------------------------------------------
227
-
228
- const [supported, setSupported] = useState(false)
229
-
230
- useEffect(() => {
231
- setSupported(supportsSvgBackdropFilter())
232
- }, [])
233
-
234
- const refractionActive = supported && mapUrl !== ""
235
- const backdropFilter = refractionActive
236
- ? `url(#${filterId}) blur(${blur}px) saturate(${saturation})`
237
- : `blur(${blur + 2}px) saturate(${saturation})`
238
-
40
+ /** Compatibility adapter for existing consumers; all optics run in the library. */
41
+ export const LiquidGlass = forwardRef<HTMLDivElement, TLiquidGlassProps>(
42
+ function LiquidGlass({
43
+ glassVariant = "liquid-refract", optics, blur, refraction,
44
+ mapSize: _mapSize, bezel, saturation, className, children, ...props
45
+ }, ref) {
239
46
  return (
240
- <>
241
- <div
242
- ref={setRefs}
243
- className={cn(
244
- "relative overflow-hidden rounded-full bg-white/[0.08]",
245
- className
246
- )}
247
- style={
248
- {
249
- ...style,
250
- backdropFilter,
251
- WebkitBackdropFilter: backdropFilter,
252
- } as CSSProperties
253
- }
254
- {...props}
255
- >
256
- {children}
257
- <span
258
- aria-hidden
259
- className="pointer-events-none absolute inset-0 rounded-[inherit]"
260
- style={{
261
- // Rim thickness, overridable per-consumer via --liquid-glass-rim-width.
262
- padding: "var(--liquid-glass-rim-width, 2.9px)",
263
- background:
264
- // iOS 27 liquid-glass rim. Each gradient runs ALONG its edges and
265
- // fades to nothing at the corners, uniform in between:
266
- // - to right → white streak on the top + bottom runs
267
- // - to bottom → dark streak on the left + right runs
268
- // Streak colors are overridable per-consumer via the
269
- // --liquid-glass-rim-light / --liquid-glass-rim-dark variables;
270
- // --liquid-glass-rim-fade sets how far from each corner the
271
- // streak takes to reach full strength (smaller = longer streak).
272
- "linear-gradient(to right, rgba(255,255,255,0), var(--liquid-glass-rim-light, rgba(255,255,255,0.25)) var(--liquid-glass-rim-fade, 18%), var(--liquid-glass-rim-light, rgba(255,255,255,0.25)) calc(100% - var(--liquid-glass-rim-fade, 18%)), rgba(255,255,255,0)), " +
273
- "linear-gradient(to bottom, rgba(0,0,0,0), var(--liquid-glass-rim-dark, rgba(0,0,0,0.2)) var(--liquid-glass-rim-fade, 18%), var(--liquid-glass-rim-dark, rgba(0,0,0,0.2)) calc(100% - var(--liquid-glass-rim-fade, 18%)), rgba(0,0,0,0))",
274
- WebkitMask:
275
- "linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0)",
276
- WebkitMaskComposite: "xor",
277
- mask: "linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0)",
278
- }}
279
- />
280
- </div>
281
-
282
- {refractionActive && (
283
- <svg className="absolute size-0 overflow-hidden" aria-hidden>
284
- <filter
285
- id={filterId}
286
- x="0"
287
- y="0"
288
- width="100%"
289
- height="100%"
290
- colorInterpolationFilters="sRGB"
291
- >
292
- <feImage
293
- href={mapUrl}
294
- x="0"
295
- y="0"
296
- width="100%"
297
- height="100%"
298
- preserveAspectRatio="none"
299
- result="map"
300
- />
301
- <feDisplacementMap
302
- in="SourceGraphic"
303
- in2="map"
304
- scale={refraction}
305
- xChannelSelector="R"
306
- yChannelSelector="G"
307
- result="displaced"
308
- />
309
- <feGaussianBlur in="displaced" stdDeviation="0.55" />
310
- </filter>
311
- </svg>
312
- )}
313
- </>
47
+ <div ref={ref} className={cn("relative isolate rounded-full", className)} {...props}>
48
+ <GlassSurface glassVariant={glassVariant} optics={{
49
+ ...(blur !== undefined && { frost: Math.max(0, blur) }),
50
+ ...(refraction !== undefined && { strength: Math.min(1, Math.max(0, refraction / 100)) }),
51
+ ...(bezel !== undefined && { bendWidth: Math.min(1, Math.max(0, bezel / 100)) }),
52
+ ...(saturation !== undefined && { saturate: Math.max(0, saturation) }),
53
+ ...optics,
54
+ }} />
55
+ {children}
56
+ </div>
314
57
  )
315
58
  }
316
59
  )
@@ -3,8 +3,8 @@
3
3
  import { cva, type VariantProps } from "class-variance-authority";
4
4
  import type * as React from "react";
5
5
  import { cn } from "@/lib/utils";
6
- import { Input, type InputProps } from "@/components/ui/input";
7
- import { Textarea, type TextareaProps } from "@/components/ui/textarea";
6
+ import { Input, type TInputProps } from "@/components/ui/input";
7
+ import { Textarea, type TTextareaProps } from "@/components/ui/textarea";
8
8
 
9
9
  const inputGroupAddonVariants = cva(
10
10
  "flex h-auto cursor-text select-none items-center justify-center gap-2 leading-none [&>kbd]:rounded-[calc(var(--radius)-5px)] in-[[data-slot=input-group]:has([data-slot=input-control],[data-slot=textarea-control])]:[&_svg:not([class*='size-'])]:size-4.5 sm:in-[[data-slot=input-group]:has([data-slot=input-control],[data-slot=textarea-control])]:[&_svg:not([class*='size-'])]:size-4 [&_svg]:-mx-0.5 not-has-[button]:**:[svg:not([class*='opacity-'])]:opacity-80",
@@ -93,13 +93,13 @@ export function InputGroupText({
93
93
  export function InputGroupInput({
94
94
  className,
95
95
  ...props
96
- }: InputProps): React.ReactElement {
96
+ }: TInputProps): React.ReactElement {
97
97
  return <Input className={className} unstyled {...props} />;
98
98
  }
99
99
 
100
100
  export function InputGroupTextarea({
101
101
  className,
102
102
  ...props
103
- }: TextareaProps): React.ReactElement {
103
+ }: TTextareaProps): React.ReactElement {
104
104
  return <Textarea className={className} unstyled {...props} />;
105
105
  }
@@ -4,7 +4,7 @@ import { Input as InputPrimitive } from "@base-ui/react/input";
4
4
  import type * as React from "react";
5
5
  import { cn } from "@/lib/utils";
6
6
 
7
- export type InputProps = Omit<
7
+ export type TInputProps = Omit<
8
8
  InputPrimitive.Props & React.RefAttributes<HTMLInputElement>,
9
9
  "size"
10
10
  > & {
@@ -20,7 +20,7 @@ export function Input({
20
20
  nativeInput = false,
21
21
  style,
22
22
  ...props
23
- }: InputProps): React.ReactElement {
23
+ }: TInputProps): React.ReactElement {
24
24
  const inputClassName = cn(
25
25
  // The 5000000s background-color entry is the autofill-flash suppression
26
26
  // hack; height/line-height/padding tween size-prop changes.
@@ -1,17 +1,18 @@
1
1
  "use client"
2
2
 
3
- import type * as React from "react"
3
+ import * as React from "react"
4
+ import { Popover, PopoverPopup, PopoverTrigger } from "@/components/ui/popover"
4
5
  import {
5
- Menu,
6
- MenuGroup,
7
- MenuItem,
8
- MenuLinkItem,
9
- MenuPopup,
10
- MenuTrigger,
11
- } from "@/components/ui/menu"
6
+ Command,
7
+ CommandInput,
8
+ CommandList,
9
+ CommandItem,
10
+ CommandPanel,
11
+ CommandEmpty,
12
+ } from "@/components/ui/command"
12
13
  import { cn } from "@/lib/utils"
13
14
 
14
- export interface MenuCommandItem {
15
+ export interface IMenuCommandItem {
15
16
  id: string
16
17
  label: React.ReactNode
17
18
  /** Muted copy after the label ("Upload from your computer"). */
@@ -25,16 +26,15 @@ export interface MenuCommandItem {
25
26
  onSelect?: () => void
26
27
  }
27
28
 
28
- export interface MenuCommandListProps {
29
- items: MenuCommandItem[]
30
- onSelect?: (item: MenuCommandItem) => void
29
+ export interface IMenuCommandListProps {
30
+ items: IMenuCommandItem[]
31
+ onSelect?: (item: IMenuCommandItem) => void
31
32
  className?: string
32
33
  }
33
34
 
34
35
  /**
35
- * Command rows for a menu popup: icon · label · description · trailing
36
- * status. Use inside any `MenuPopup`, or via `MenuCommand` for the wired
37
- * trigger + popup pair.
36
+ * Searchable command rows: icon · label · description · trailing status.
37
+ * Uses the shared Command components; MenuCommand adds a popover trigger.
38
38
  *
39
39
  * @sketch "Atom / Menu Command"
40
40
  */
@@ -42,63 +42,83 @@ export function MenuCommandList({
42
42
  items,
43
43
  onSelect,
44
44
  className,
45
- }: MenuCommandListProps): React.ReactElement {
45
+ }: IMenuCommandListProps): React.ReactElement {
46
46
  return (
47
- <MenuGroup className={cn("flex flex-col", className)} data-slot="menu-command-list">
48
- {items.map((item) => {
49
- const body = (
50
- <>
51
- {item.icon ? (
52
- <span className="flex size-4 shrink-0 items-center justify-center text-text-secondary [&>svg]:size-4">
53
- {item.icon}
54
- </span>
55
- ) : null}
56
- <span className="shrink-0 font-medium text-text-primary">{item.label}</span>
57
- {item.description ? (
58
- <span className="truncate text-text-secondary">{item.description}</span>
59
- ) : null}
60
- {item.trailing ? (
61
- <span className="ml-auto shrink-0 pl-3 text-semantic-success">{item.trailing}</span>
62
- ) : null}
63
- </>
64
- )
65
- const rowClass = "h-9 gap-2.5 rounded-md px-2 text-[13px]"
66
- const select = () => {
67
- item.onSelect?.()
68
- onSelect?.(item)
69
- }
70
- return item.href ? (
71
- <MenuLinkItem
72
- aria-disabled={item.disabled || undefined}
73
- className={cn(rowClass, item.disabled && "pointer-events-none opacity-64")}
74
- data-command={item.id}
75
- href={item.href}
76
- key={item.id}
77
- onClick={select}
78
- >
79
- {body}
80
- </MenuLinkItem>
81
- ) : (
82
- <MenuItem
83
- className={rowClass}
84
- data-command={item.id}
85
- disabled={item.disabled}
86
- key={item.id}
87
- onClick={select}
88
- >
89
- {body}
90
- </MenuItem>
91
- )
92
- })}
93
- </MenuGroup>
47
+ <Command
48
+ items={items}
49
+ autoHighlight
50
+
51
+ itemToStringValue={(value) => {
52
+ const item = value as IMenuCommandItem
53
+ return typeof item.label === "string" ? item.label : item.id
54
+ }}
55
+ >
56
+ <CommandPanel className={className} data-slot="menu-command-list">
57
+ <CommandInput
58
+ aria-label="Search commands"
59
+ placeholder="Search commands…"
60
+ />
61
+ <CommandEmpty>No commands found.</CommandEmpty>
62
+ <CommandList className="">
63
+ {(item: IMenuCommandItem) => {
64
+ const body = (
65
+ <>
66
+ {item.icon ? (
67
+ <span className="size-4 [&>svg]:size-4 flex shrink-0 items-center justify-center text-text-secondary">
68
+ {item.icon}
69
+ </span>
70
+ ) : null}
71
+ <span className="font-medium shrink-0 text-text-primary">
72
+ {item.label}
73
+ </span>
74
+ {item.description ? (
75
+ <span className="truncate text-text-secondary">
76
+ {item.description}
77
+ </span>
78
+ ) : null}
79
+ {item.trailing ? (
80
+ <span className="pl-3 ml-auto shrink-0 text-semantic-success">
81
+ {item.trailing}
82
+ </span>
83
+ ) : null}
84
+ </>
85
+ )
86
+ const rowClass = "h-9 gap-2.5 rounded-md px-2 text-[13px]"
87
+ const select = () => {
88
+ item.onSelect?.()
89
+ onSelect?.(item)
90
+ }
91
+ return (
92
+ <CommandItem
93
+ key={item.id}
94
+ value={item}
95
+ className={rowClass}
96
+ data-command={item.id}
97
+ disabled={item.disabled}
98
+ render={
99
+ item.href && !item.disabled ? (
100
+ <a href={item.href} />
101
+ ) : undefined
102
+ }
103
+ onClick={() => {
104
+ if (!item.disabled) select()
105
+ }}
106
+ >
107
+ {body}
108
+ </CommandItem>
109
+ )
110
+ }}
111
+ </CommandList>
112
+ </CommandPanel>
113
+ </Command>
94
114
  )
95
115
  }
96
116
 
97
- export interface MenuCommandProps extends MenuCommandListProps {
117
+ export interface IMenuCommandProps extends IMenuCommandListProps {
98
118
  /** The trigger element; receives the menu's trigger props. */
99
119
  children: React.ReactElement
100
- side?: React.ComponentProps<typeof MenuPopup>["side"]
101
- align?: React.ComponentProps<typeof MenuPopup>["align"]
120
+ side?: React.ComponentProps<typeof PopoverPopup>["side"]
121
+ align?: React.ComponentProps<typeof PopoverPopup>["align"]
102
122
  popupClassName?: string
103
123
  }
104
124
 
@@ -108,21 +128,29 @@ export function MenuCommand({
108
128
  items,
109
129
  onSelect,
110
130
  side = "top",
111
- align = "start",
131
+ align = "center",
112
132
  className,
113
133
  popupClassName,
114
- }: MenuCommandProps): React.ReactElement {
134
+ }: IMenuCommandProps): React.ReactElement {
135
+ const [open, setOpen] = React.useState(false)
115
136
  return (
116
- <Menu>
117
- <MenuTrigger render={children} />
118
- <MenuPopup
137
+ <Popover open={open} onOpenChange={setOpen}>
138
+ <PopoverTrigger render={children} />
139
+ <PopoverPopup
119
140
  align={align}
120
- className={cn("w-[28rem] max-w-[calc(100vw-2rem)]", popupClassName)}
141
+ className={cn("w-[28rem] max-w-[calc(100vw-2rem)] bg-transparent border-none", popupClassName)}
121
142
  side={side}
122
143
  sideOffset={8}
123
144
  >
124
- <MenuCommandList className={className} items={items} onSelect={onSelect} />
125
- </MenuPopup>
126
- </Menu>
145
+ <MenuCommandList
146
+ className={className}
147
+ items={items}
148
+ onSelect={(item) => {
149
+ setOpen(false)
150
+ onSelect?.(item)
151
+ }}
152
+ />
153
+ </PopoverPopup>
154
+ </Popover>
127
155
  )
128
156
  }