@dowel-ui/react 0.5.0 → 0.8.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 (1787) hide show
  1. package/README.md +3 -3
  2. package/dist/blocks/admin-dashboard/meta.js +31 -0
  3. package/dist/blocks/admin-dashboard/meta.js.map +1 -0
  4. package/dist/blocks/agent-console/meta.js +27 -0
  5. package/dist/blocks/agent-console/meta.js.map +1 -0
  6. package/dist/blocks/ai-dashboard/meta.js +25 -0
  7. package/dist/blocks/ai-dashboard/meta.js.map +1 -0
  8. package/dist/blocks/ai-workspace/meta.js +33 -0
  9. package/dist/blocks/ai-workspace/meta.js.map +1 -0
  10. package/dist/blocks/analytics/meta.js +24 -0
  11. package/dist/blocks/analytics/meta.js.map +1 -0
  12. package/dist/blocks/billing/meta.js +25 -0
  13. package/dist/blocks/billing/meta.js.map +1 -0
  14. package/dist/blocks/command-center/meta.js +28 -0
  15. package/dist/blocks/command-center/meta.js.map +1 -0
  16. package/dist/blocks/crm/meta.js +32 -0
  17. package/dist/blocks/crm/meta.js.map +1 -0
  18. package/dist/blocks/cta-banner/meta.js +18 -0
  19. package/dist/blocks/cta-banner/meta.js.map +1 -0
  20. package/dist/blocks/cta-centered/meta.js +18 -0
  21. package/dist/blocks/cta-centered/meta.js.map +1 -0
  22. package/dist/blocks/cta-split-image/meta.js +18 -0
  23. package/dist/blocks/cta-split-image/meta.js.map +1 -0
  24. package/dist/blocks/faq-accordion/meta.js +18 -0
  25. package/dist/blocks/faq-accordion/meta.js.map +1 -0
  26. package/dist/blocks/faq-categorized/meta.js +18 -0
  27. package/dist/blocks/faq-categorized/meta.js.map +1 -0
  28. package/dist/blocks/faq-searchable/meta.js +22 -0
  29. package/dist/blocks/faq-searchable/meta.js.map +1 -0
  30. package/dist/blocks/faq-tabbed-grid/meta.js +18 -0
  31. package/dist/blocks/faq-tabbed-grid/meta.js.map +1 -0
  32. package/dist/blocks/features-alternating/meta.js +18 -0
  33. package/dist/blocks/features-alternating/meta.js.map +1 -0
  34. package/dist/blocks/features-bento/meta.js +18 -0
  35. package/dist/blocks/features-bento/meta.js.map +1 -0
  36. package/dist/blocks/features-icon-grid/meta.js +18 -0
  37. package/dist/blocks/features-icon-grid/meta.js.map +1 -0
  38. package/dist/blocks/footer-mega/meta.js +22 -0
  39. package/dist/blocks/footer-mega/meta.js.map +1 -0
  40. package/dist/blocks/footer-minimal/meta.js +18 -0
  41. package/dist/blocks/footer-minimal/meta.js.map +1 -0
  42. package/dist/blocks/footer-newsletter/meta.js +22 -0
  43. package/dist/blocks/footer-newsletter/meta.js.map +1 -0
  44. package/dist/blocks/footer-simple/meta.js +18 -0
  45. package/dist/blocks/footer-simple/meta.js.map +1 -0
  46. package/dist/blocks/hero-grid/meta.js +18 -0
  47. package/dist/blocks/hero-grid/meta.js.map +1 -0
  48. package/dist/blocks/hero-minimal/meta.js +18 -0
  49. package/dist/blocks/hero-minimal/meta.js.map +1 -0
  50. package/dist/blocks/hero-perspective-grid/meta.js +18 -0
  51. package/dist/blocks/hero-perspective-grid/meta.js.map +1 -0
  52. package/dist/blocks/hero-product/meta.js +22 -0
  53. package/dist/blocks/hero-product/meta.js.map +1 -0
  54. package/dist/blocks/hero-split-image/meta.js +22 -0
  55. package/dist/blocks/hero-split-image/meta.js.map +1 -0
  56. package/dist/blocks/hero-spotlight/meta.js +18 -0
  57. package/dist/blocks/hero-spotlight/meta.js.map +1 -0
  58. package/dist/blocks/logo-cloud-simple/meta.js +18 -0
  59. package/dist/blocks/logo-cloud-simple/meta.js.map +1 -0
  60. package/dist/blocks/logo-grid-tooltips/meta.js +18 -0
  61. package/dist/blocks/logo-grid-tooltips/meta.js.map +1 -0
  62. package/dist/blocks/logo-links-marquee/meta.js +18 -0
  63. package/dist/blocks/logo-links-marquee/meta.js.map +1 -0
  64. package/dist/blocks/logo-marquee/meta.js +18 -0
  65. package/dist/blocks/logo-marquee/meta.js.map +1 -0
  66. package/dist/blocks/onboarding/meta.js +23 -0
  67. package/dist/blocks/onboarding/meta.js.map +1 -0
  68. package/dist/blocks/pricing-single-plan/meta.js +25 -0
  69. package/dist/blocks/pricing-single-plan/meta.js.map +1 -0
  70. package/dist/blocks/pricing-three-tier/meta.js +25 -0
  71. package/dist/blocks/pricing-three-tier/meta.js.map +1 -0
  72. package/dist/blocks/pricing-two-tier/meta.js +25 -0
  73. package/dist/blocks/pricing-two-tier/meta.js.map +1 -0
  74. package/dist/blocks/stats-grid/meta.js +18 -0
  75. package/dist/blocks/stats-grid/meta.js.map +1 -0
  76. package/dist/blocks/stats-trend-cards/meta.js +22 -0
  77. package/dist/blocks/stats-trend-cards/meta.js.map +1 -0
  78. package/dist/blocks/team-carousel/meta.js +22 -0
  79. package/dist/blocks/team-carousel/meta.js.map +1 -0
  80. package/dist/blocks/team-grid/meta.js +18 -0
  81. package/dist/blocks/team-grid/meta.js.map +1 -0
  82. package/dist/blocks/testimonial-rotator/meta.js +18 -0
  83. package/dist/blocks/testimonial-rotator/meta.js.map +1 -0
  84. package/dist/blocks/testimonial-spotlight/meta.js +22 -0
  85. package/dist/blocks/testimonial-spotlight/meta.js.map +1 -0
  86. package/dist/blocks/testimonial-star-grid/meta.js +18 -0
  87. package/dist/blocks/testimonial-star-grid/meta.js.map +1 -0
  88. package/dist/components/accordion/accordion.js +1 -1
  89. package/dist/components/accordion/accordion.js.map +1 -1
  90. package/dist/components/account-menu/account-menu.d.ts +56 -0
  91. package/dist/components/account-menu/account-menu.d.ts.map +1 -0
  92. package/dist/components/account-menu/account-menu.js +247 -0
  93. package/dist/components/account-menu/account-menu.js.map +1 -0
  94. package/dist/components/account-menu/index.d.ts +2 -0
  95. package/dist/components/account-menu/index.js +2 -0
  96. package/dist/components/account-menu/meta.js +24 -0
  97. package/dist/components/account-menu/meta.js.map +1 -0
  98. package/dist/components/action-node/action-node-spring.js +21 -0
  99. package/dist/components/action-node/action-node-spring.js.map +1 -0
  100. package/dist/components/action-node/action-node.d.ts +67 -0
  101. package/dist/components/action-node/action-node.d.ts.map +1 -0
  102. package/dist/components/action-node/action-node.js +374 -0
  103. package/dist/components/action-node/action-node.js.map +1 -0
  104. package/dist/components/action-node/index.d.ts +2 -0
  105. package/dist/components/action-node/index.js +2 -0
  106. package/dist/components/action-node/meta.js +17 -0
  107. package/dist/components/action-node/meta.js.map +1 -0
  108. package/dist/components/activity-feed/activity-feed.js +1 -1
  109. package/dist/components/activity-feed/activity-feed.js.map +1 -1
  110. package/dist/components/ai-agent-plan/ai-agent-plan.d.ts +13 -2
  111. package/dist/components/ai-agent-plan/ai-agent-plan.d.ts.map +1 -1
  112. package/dist/components/ai-agent-plan/ai-agent-plan.js +110 -43
  113. package/dist/components/ai-agent-plan/ai-agent-plan.js.map +1 -1
  114. package/dist/components/ai-agent-plan/index.d.ts +2 -2
  115. package/dist/components/ai-agent-plan/meta.js +1 -1
  116. package/dist/components/ai-agent-plan/meta.js.map +1 -1
  117. package/dist/components/ai-agent-status/ai-agent-status.d.ts +1 -1
  118. package/dist/components/ai-approval-request/ai-approval-request.d.ts +8 -1
  119. package/dist/components/ai-approval-request/ai-approval-request.d.ts.map +1 -1
  120. package/dist/components/ai-approval-request/ai-approval-request.js +67 -12
  121. package/dist/components/ai-approval-request/ai-approval-request.js.map +1 -1
  122. package/dist/components/ai-approval-request/meta.js +1 -1
  123. package/dist/components/ai-approval-request/meta.js.map +1 -1
  124. package/dist/components/ai-artifact/ai-artifact.d.ts +27 -0
  125. package/dist/components/ai-artifact/ai-artifact.d.ts.map +1 -0
  126. package/dist/components/ai-artifact/ai-artifact.js +142 -0
  127. package/dist/components/ai-artifact/ai-artifact.js.map +1 -0
  128. package/dist/components/ai-artifact/index.d.ts +2 -0
  129. package/dist/components/ai-artifact/index.js +2 -0
  130. package/dist/components/ai-artifact/meta.js +17 -0
  131. package/dist/components/ai-artifact/meta.js.map +1 -0
  132. package/dist/components/ai-branch/ai-branch.d.ts +32 -0
  133. package/dist/components/ai-branch/ai-branch.d.ts.map +1 -0
  134. package/dist/components/ai-branch/ai-branch.js +160 -0
  135. package/dist/components/ai-branch/ai-branch.js.map +1 -0
  136. package/dist/components/ai-branch/index.d.ts +2 -0
  137. package/dist/components/ai-branch/index.js +2 -0
  138. package/dist/components/ai-branch/meta.js +17 -0
  139. package/dist/components/ai-branch/meta.js.map +1 -0
  140. package/dist/components/ai-conversation/ai-conversation.d.ts +16 -4
  141. package/dist/components/ai-conversation/ai-conversation.d.ts.map +1 -1
  142. package/dist/components/ai-conversation/ai-conversation.js +78 -10
  143. package/dist/components/ai-conversation/ai-conversation.js.map +1 -1
  144. package/dist/components/ai-conversation/index.d.ts +2 -2
  145. package/dist/components/ai-extraction-review/ai-extraction-review.js +1 -1
  146. package/dist/components/ai-extraction-review/ai-extraction-review.js.map +1 -1
  147. package/dist/components/ai-loader/ai-loader.d.ts +22 -0
  148. package/dist/components/ai-loader/ai-loader.d.ts.map +1 -0
  149. package/dist/components/ai-loader/ai-loader.js +78 -0
  150. package/dist/components/ai-loader/ai-loader.js.map +1 -0
  151. package/dist/components/ai-loader/index.d.ts +2 -0
  152. package/dist/components/ai-loader/index.js +2 -0
  153. package/dist/components/ai-loader/meta.js +21 -0
  154. package/dist/components/ai-loader/meta.js.map +1 -0
  155. package/dist/components/ai-message/ai-message.d.ts +13 -2
  156. package/dist/components/ai-message/ai-message.d.ts.map +1 -1
  157. package/dist/components/ai-message/ai-message.js +29 -5
  158. package/dist/components/ai-message/ai-message.js.map +1 -1
  159. package/dist/components/ai-message/index.d.ts +2 -2
  160. package/dist/components/ai-message/index.js +2 -2
  161. package/dist/components/ai-message/meta.js +1 -1
  162. package/dist/components/ai-message/meta.js.map +1 -1
  163. package/dist/components/ai-prompt-input/ai-prompt-input.d.ts.map +1 -1
  164. package/dist/components/ai-prompt-input/ai-prompt-input.js +45 -26
  165. package/dist/components/ai-prompt-input/ai-prompt-input.js.map +1 -1
  166. package/dist/components/ai-reasoning/ai-reasoning.d.ts +39 -11
  167. package/dist/components/ai-reasoning/ai-reasoning.d.ts.map +1 -1
  168. package/dist/components/ai-reasoning/ai-reasoning.js +114 -10
  169. package/dist/components/ai-reasoning/ai-reasoning.js.map +1 -1
  170. package/dist/components/ai-reasoning/index.d.ts +2 -2
  171. package/dist/components/ai-reasoning/index.js +2 -2
  172. package/dist/components/ai-reasoning/meta.js +2 -2
  173. package/dist/components/ai-reasoning/meta.js.map +1 -1
  174. package/dist/components/ai-response/ai-response.d.ts +4 -0
  175. package/dist/components/ai-response/ai-response.d.ts.map +1 -1
  176. package/dist/components/ai-response/ai-response.js +7 -3
  177. package/dist/components/ai-response/ai-response.js.map +1 -1
  178. package/dist/components/ai-response/index.d.ts +2 -1
  179. package/dist/components/ai-response/index.js +2 -1
  180. package/dist/components/ai-response/meta.js +3 -3
  181. package/dist/components/ai-response/meta.js.map +1 -1
  182. package/dist/components/ai-response/response-text.d.ts +42 -0
  183. package/dist/components/ai-response/response-text.d.ts.map +1 -0
  184. package/dist/components/ai-response/response-text.js +63 -0
  185. package/dist/components/ai-response/response-text.js.map +1 -0
  186. package/dist/components/ai-sources/ai-sources.d.ts +31 -5
  187. package/dist/components/ai-sources/ai-sources.d.ts.map +1 -1
  188. package/dist/components/ai-sources/ai-sources.js +188 -47
  189. package/dist/components/ai-sources/ai-sources.js.map +1 -1
  190. package/dist/components/ai-sources/index.d.ts +2 -2
  191. package/dist/components/ai-sources/index.js +2 -2
  192. package/dist/components/ai-sources/meta.js +2 -2
  193. package/dist/components/ai-sources/meta.js.map +1 -1
  194. package/dist/components/ai-suggestions/ai-suggestions.d.ts +24 -0
  195. package/dist/components/ai-suggestions/ai-suggestions.d.ts.map +1 -0
  196. package/dist/components/ai-suggestions/ai-suggestions.js +68 -0
  197. package/dist/components/ai-suggestions/ai-suggestions.js.map +1 -0
  198. package/dist/components/ai-suggestions/index.d.ts +2 -0
  199. package/dist/components/ai-suggestions/index.js +2 -0
  200. package/dist/components/ai-suggestions/meta.js +17 -0
  201. package/dist/components/ai-suggestions/meta.js.map +1 -0
  202. package/dist/components/ai-token-usage/ai-token-usage.d.ts +40 -3
  203. package/dist/components/ai-token-usage/ai-token-usage.d.ts.map +1 -1
  204. package/dist/components/ai-token-usage/ai-token-usage.js +201 -24
  205. package/dist/components/ai-token-usage/ai-token-usage.js.map +1 -1
  206. package/dist/components/ai-token-usage/index.d.ts +2 -2
  207. package/dist/components/ai-token-usage/index.js +2 -2
  208. package/dist/components/ai-token-usage/meta.js +2 -2
  209. package/dist/components/ai-token-usage/meta.js.map +1 -1
  210. package/dist/components/ai-tool/ai-tool.d.ts +12 -1
  211. package/dist/components/ai-tool/ai-tool.d.ts.map +1 -1
  212. package/dist/components/ai-tool/ai-tool.js +83 -6
  213. package/dist/components/ai-tool/ai-tool.js.map +1 -1
  214. package/dist/components/ai-tool/meta.js +1 -1
  215. package/dist/components/ai-tool/meta.js.map +1 -1
  216. package/dist/components/alert/alert.d.ts +1 -1
  217. package/dist/components/animated-checklist/animated-checklist.d.ts +40 -0
  218. package/dist/components/animated-checklist/animated-checklist.d.ts.map +1 -0
  219. package/dist/components/animated-checklist/animated-checklist.js +198 -0
  220. package/dist/components/animated-checklist/animated-checklist.js.map +1 -0
  221. package/dist/components/animated-checklist/index.d.ts +2 -0
  222. package/dist/components/animated-checklist/index.js +2 -0
  223. package/dist/components/animated-checklist/meta.js +17 -0
  224. package/dist/components/animated-checklist/meta.js.map +1 -0
  225. package/dist/components/app-stack/app-stack.d.ts +40 -0
  226. package/dist/components/app-stack/app-stack.d.ts.map +1 -0
  227. package/dist/components/app-stack/app-stack.js +260 -0
  228. package/dist/components/app-stack/app-stack.js.map +1 -0
  229. package/dist/components/app-stack/index.d.ts +2 -0
  230. package/dist/components/app-stack/index.js +2 -0
  231. package/dist/components/app-stack/meta.js +17 -0
  232. package/dist/components/app-stack/meta.js.map +1 -0
  233. package/dist/components/aspect-morph/aspect-morph.d.ts +50 -0
  234. package/dist/components/aspect-morph/aspect-morph.d.ts.map +1 -0
  235. package/dist/components/aspect-morph/aspect-morph.js +171 -0
  236. package/dist/components/aspect-morph/aspect-morph.js.map +1 -0
  237. package/dist/components/aspect-morph/index.d.ts +2 -0
  238. package/dist/components/aspect-morph/index.js +2 -0
  239. package/dist/components/aspect-morph/meta.js +17 -0
  240. package/dist/components/aspect-morph/meta.js.map +1 -0
  241. package/dist/components/assignee-picker/assignee-picker-spring.js +21 -0
  242. package/dist/components/assignee-picker/assignee-picker-spring.js.map +1 -0
  243. package/dist/components/assignee-picker/assignee-picker.d.ts +47 -0
  244. package/dist/components/assignee-picker/assignee-picker.d.ts.map +1 -0
  245. package/dist/components/assignee-picker/assignee-picker.js +370 -0
  246. package/dist/components/assignee-picker/assignee-picker.js.map +1 -0
  247. package/dist/components/assignee-picker/index.d.ts +2 -0
  248. package/dist/components/assignee-picker/index.js +2 -0
  249. package/dist/components/assignee-picker/meta.js +17 -0
  250. package/dist/components/assignee-picker/meta.js.map +1 -0
  251. package/dist/components/avatar/avatar.d.ts +1 -1
  252. package/dist/components/avatar-group/avatar-group.d.ts +41 -0
  253. package/dist/components/avatar-group/avatar-group.d.ts.map +1 -0
  254. package/dist/components/avatar-group/avatar-group.js +103 -0
  255. package/dist/components/avatar-group/avatar-group.js.map +1 -0
  256. package/dist/components/avatar-group/index.d.ts +2 -0
  257. package/dist/components/avatar-group/index.js +2 -0
  258. package/dist/components/avatar-group/meta.js +17 -0
  259. package/dist/components/avatar-group/meta.js.map +1 -0
  260. package/dist/components/badge/badge.d.ts +1 -1
  261. package/dist/components/bar-loader/bar-loader.d.ts +170 -0
  262. package/dist/components/bar-loader/bar-loader.d.ts.map +1 -0
  263. package/dist/components/bar-loader/bar-loader.js +469 -0
  264. package/dist/components/bar-loader/bar-loader.js.map +1 -0
  265. package/dist/components/bar-loader/index.d.ts +2 -0
  266. package/dist/components/bar-loader/index.js +2 -0
  267. package/dist/components/bar-loader/meta.js +17 -0
  268. package/dist/components/bar-loader/meta.js.map +1 -0
  269. package/dist/components/book/book.d.ts +35 -0
  270. package/dist/components/book/book.d.ts.map +1 -0
  271. package/dist/components/book/book.js +183 -0
  272. package/dist/components/book/book.js.map +1 -0
  273. package/dist/components/book/index.d.ts +2 -0
  274. package/dist/components/book/index.js +2 -0
  275. package/dist/components/book/meta.js +17 -0
  276. package/dist/components/book/meta.js.map +1 -0
  277. package/dist/components/breadcrumb/breadcrumb.d.ts +60 -0
  278. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -0
  279. package/dist/components/breadcrumb/breadcrumb.js +158 -0
  280. package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
  281. package/dist/components/breadcrumb/index.d.ts +2 -0
  282. package/dist/components/breadcrumb/index.js +2 -0
  283. package/dist/components/breadcrumb/meta.js +17 -0
  284. package/dist/components/breadcrumb/meta.js.map +1 -0
  285. package/dist/components/browser-tabs/browser-tabs-spring.js +21 -0
  286. package/dist/components/browser-tabs/browser-tabs-spring.js.map +1 -0
  287. package/dist/components/browser-tabs/browser-tabs.d.ts +62 -0
  288. package/dist/components/browser-tabs/browser-tabs.d.ts.map +1 -0
  289. package/dist/components/browser-tabs/browser-tabs.js +418 -0
  290. package/dist/components/browser-tabs/browser-tabs.js.map +1 -0
  291. package/dist/components/browser-tabs/index.d.ts +2 -0
  292. package/dist/components/browser-tabs/index.js +2 -0
  293. package/dist/components/browser-tabs/meta.js +17 -0
  294. package/dist/components/browser-tabs/meta.js.map +1 -0
  295. package/dist/components/button/button.d.ts +4 -2
  296. package/dist/components/button/button.d.ts.map +1 -1
  297. package/dist/components/button/button.js +48 -5
  298. package/dist/components/button/button.js.map +1 -1
  299. package/dist/components/calendar/calendar.js +2 -2
  300. package/dist/components/calendar/calendar.js.map +1 -1
  301. package/dist/components/canvas-toolbar/canvas-toolbar.d.ts +62 -0
  302. package/dist/components/canvas-toolbar/canvas-toolbar.d.ts.map +1 -0
  303. package/dist/components/canvas-toolbar/canvas-toolbar.js +256 -0
  304. package/dist/components/canvas-toolbar/canvas-toolbar.js.map +1 -0
  305. package/dist/components/canvas-toolbar/index.d.ts +2 -0
  306. package/dist/components/canvas-toolbar/index.js +2 -0
  307. package/dist/components/canvas-toolbar/meta.js +17 -0
  308. package/dist/components/canvas-toolbar/meta.js.map +1 -0
  309. package/dist/components/card-spread/card-spread-layouts.d.ts +46 -0
  310. package/dist/components/card-spread/card-spread-layouts.d.ts.map +1 -0
  311. package/dist/components/card-spread/card-spread-layouts.js +235 -0
  312. package/dist/components/card-spread/card-spread-layouts.js.map +1 -0
  313. package/dist/components/card-spread/card-spread.d.ts +52 -0
  314. package/dist/components/card-spread/card-spread.d.ts.map +1 -0
  315. package/dist/components/card-spread/card-spread.js +224 -0
  316. package/dist/components/card-spread/card-spread.js.map +1 -0
  317. package/dist/components/card-spread/index.d.ts +3 -0
  318. package/dist/components/card-spread/index.js +3 -0
  319. package/dist/components/card-spread/meta.js +17 -0
  320. package/dist/components/card-spread/meta.js.map +1 -0
  321. package/dist/components/card-stack/card-stack-layout.js +98 -0
  322. package/dist/components/card-stack/card-stack-layout.js.map +1 -0
  323. package/dist/components/card-stack/card-stack.d.ts +29 -0
  324. package/dist/components/card-stack/card-stack.d.ts.map +1 -0
  325. package/dist/components/card-stack/card-stack.js +229 -0
  326. package/dist/components/card-stack/card-stack.js.map +1 -0
  327. package/dist/components/card-stack/index.d.ts +2 -0
  328. package/dist/components/card-stack/index.js +2 -0
  329. package/dist/components/card-stack/meta.js +17 -0
  330. package/dist/components/card-stack/meta.js.map +1 -0
  331. package/dist/components/carousel-3d/carousel-3d.d.ts +43 -0
  332. package/dist/components/carousel-3d/carousel-3d.d.ts.map +1 -0
  333. package/dist/components/carousel-3d/carousel-3d.js +336 -0
  334. package/dist/components/carousel-3d/carousel-3d.js.map +1 -0
  335. package/dist/components/carousel-3d/index.d.ts +2 -0
  336. package/dist/components/carousel-3d/index.js +2 -0
  337. package/dist/components/carousel-3d/meta.js +17 -0
  338. package/dist/components/carousel-3d/meta.js.map +1 -0
  339. package/dist/components/checkbox/checkbox.d.ts.map +1 -1
  340. package/dist/components/checkbox/checkbox.js +18 -0
  341. package/dist/components/checkbox/checkbox.js.map +1 -1
  342. package/dist/components/code-block/code-block.d.ts +1 -17
  343. package/dist/components/code-block/code-block.d.ts.map +1 -1
  344. package/dist/components/code-block/code-block.js +9 -79
  345. package/dist/components/code-block/code-block.js.map +1 -1
  346. package/dist/components/code-block/index.d.ts +3 -1
  347. package/dist/components/code-block/index.js +2 -1
  348. package/dist/components/code-block/meta.js +1 -1
  349. package/dist/components/code-block/meta.js.map +1 -1
  350. package/dist/components/collapsible/collapsible.d.ts +30 -0
  351. package/dist/components/collapsible/collapsible.d.ts.map +1 -0
  352. package/dist/components/collapsible/collapsible.js +38 -0
  353. package/dist/components/collapsible/collapsible.js.map +1 -0
  354. package/dist/components/collapsible/index.d.ts +2 -0
  355. package/dist/components/collapsible/index.js +2 -0
  356. package/dist/components/collapsible/meta.js +17 -0
  357. package/dist/components/collapsible/meta.js.map +1 -0
  358. package/dist/components/combobox/combobox.d.ts +28 -4
  359. package/dist/components/combobox/combobox.d.ts.map +1 -1
  360. package/dist/components/combobox/combobox.js +161 -66
  361. package/dist/components/combobox/combobox.js.map +1 -1
  362. package/dist/components/combobox/index.d.ts +2 -2
  363. package/dist/components/combobox/index.js +2 -2
  364. package/dist/components/combobox/meta.js +1 -1
  365. package/dist/components/combobox/meta.js.map +1 -1
  366. package/dist/components/command/command.js +1 -1
  367. package/dist/components/command/command.js.map +1 -1
  368. package/dist/components/command-bar/command-bar.d.ts +37 -0
  369. package/dist/components/command-bar/command-bar.d.ts.map +1 -0
  370. package/dist/components/command-bar/command-bar.js +91 -0
  371. package/dist/components/command-bar/command-bar.js.map +1 -0
  372. package/dist/components/command-bar/index.d.ts +2 -0
  373. package/dist/components/command-bar/index.js +2 -0
  374. package/dist/components/command-bar/meta.js +17 -0
  375. package/dist/components/command-bar/meta.js.map +1 -0
  376. package/dist/components/comment-bubble/comment-bubble.d.ts +32 -0
  377. package/dist/components/comment-bubble/comment-bubble.d.ts.map +1 -0
  378. package/dist/components/comment-bubble/comment-bubble.js +174 -0
  379. package/dist/components/comment-bubble/comment-bubble.js.map +1 -0
  380. package/dist/components/comment-bubble/index.d.ts +2 -0
  381. package/dist/components/comment-bubble/index.js +2 -0
  382. package/dist/components/comment-bubble/meta.js +17 -0
  383. package/dist/components/comment-bubble/meta.js.map +1 -0
  384. package/dist/components/context-menu/context-menu.d.ts +49 -0
  385. package/dist/components/context-menu/context-menu.d.ts.map +1 -0
  386. package/dist/components/context-menu/context-menu.js +151 -0
  387. package/dist/components/context-menu/context-menu.js.map +1 -0
  388. package/dist/components/context-menu/index.d.ts +2 -0
  389. package/dist/components/context-menu/index.js +2 -0
  390. package/dist/components/context-menu/meta.js +17 -0
  391. package/dist/components/context-menu/meta.js.map +1 -0
  392. package/dist/components/contribution-graph/contribution-graph.d.ts +37 -0
  393. package/dist/components/contribution-graph/contribution-graph.d.ts.map +1 -0
  394. package/dist/components/contribution-graph/contribution-graph.js +298 -0
  395. package/dist/components/contribution-graph/contribution-graph.js.map +1 -0
  396. package/dist/components/contribution-graph/index.d.ts +2 -0
  397. package/dist/components/contribution-graph/index.js +2 -0
  398. package/dist/components/contribution-graph/meta.js +17 -0
  399. package/dist/components/contribution-graph/meta.js.map +1 -0
  400. package/dist/components/copy-button/copy-button.d.ts +81 -0
  401. package/dist/components/copy-button/copy-button.d.ts.map +1 -0
  402. package/dist/components/copy-button/copy-button.js +146 -0
  403. package/dist/components/copy-button/copy-button.js.map +1 -0
  404. package/dist/components/copy-button/index.d.ts +2 -0
  405. package/dist/components/copy-button/index.js +2 -0
  406. package/dist/components/copy-button/meta.js +17 -0
  407. package/dist/components/copy-button/meta.js.map +1 -0
  408. package/dist/components/create-menu/create-menu.d.ts +42 -0
  409. package/dist/components/create-menu/create-menu.d.ts.map +1 -0
  410. package/dist/components/create-menu/create-menu.js +197 -0
  411. package/dist/components/create-menu/create-menu.js.map +1 -0
  412. package/dist/components/create-menu/index.d.ts +2 -0
  413. package/dist/components/create-menu/index.js +2 -0
  414. package/dist/components/create-menu/meta.js +17 -0
  415. package/dist/components/create-menu/meta.js.map +1 -0
  416. package/dist/components/cursor-follow/cursor-follow.d.ts +17 -0
  417. package/dist/components/cursor-follow/cursor-follow.d.ts.map +1 -0
  418. package/dist/components/cursor-follow/cursor-follow.js +116 -0
  419. package/dist/components/cursor-follow/cursor-follow.js.map +1 -0
  420. package/dist/components/cursor-follow/index.d.ts +2 -0
  421. package/dist/components/cursor-follow/index.js +2 -0
  422. package/dist/components/cursor-follow/meta.js +17 -0
  423. package/dist/components/cursor-follow/meta.js.map +1 -0
  424. package/dist/components/data-table/data-table.d.ts.map +1 -1
  425. package/dist/components/data-table/data-table.js +4 -1
  426. package/dist/components/data-table/data-table.js.map +1 -1
  427. package/dist/components/dial/dial.d.ts +32 -0
  428. package/dist/components/dial/dial.d.ts.map +1 -0
  429. package/dist/components/dial/dial.js +195 -0
  430. package/dist/components/dial/dial.js.map +1 -0
  431. package/dist/components/dial/index.d.ts +2 -0
  432. package/dist/components/dial/index.js +2 -0
  433. package/dist/components/dial/meta.js +17 -0
  434. package/dist/components/dial/meta.js.map +1 -0
  435. package/dist/components/dialog/dialog.d.ts +8 -1
  436. package/dist/components/dialog/dialog.d.ts.map +1 -1
  437. package/dist/components/dialog/dialog.js +24 -7
  438. package/dist/components/dialog/dialog.js.map +1 -1
  439. package/dist/components/dialog/meta.js +1 -1
  440. package/dist/components/dialog/meta.js.map +1 -1
  441. package/dist/components/diff-viewer/diff-viewer.d.ts +12 -1
  442. package/dist/components/diff-viewer/diff-viewer.d.ts.map +1 -1
  443. package/dist/components/diff-viewer/diff-viewer.js +100 -28
  444. package/dist/components/diff-viewer/diff-viewer.js.map +1 -1
  445. package/dist/components/diff-viewer/meta.js +1 -1
  446. package/dist/components/diff-viewer/meta.js.map +1 -1
  447. package/dist/components/direction/direction.d.ts +35 -0
  448. package/dist/components/direction/direction.d.ts.map +1 -0
  449. package/dist/components/direction/direction.js +14 -0
  450. package/dist/components/direction/direction.js.map +1 -0
  451. package/dist/components/direction/index.d.ts +2 -0
  452. package/dist/components/direction/index.js +2 -0
  453. package/dist/components/direction/meta.js +17 -0
  454. package/dist/components/direction/meta.js.map +1 -0
  455. package/dist/components/dither-area/dither-area.d.ts +46 -0
  456. package/dist/components/dither-area/dither-area.d.ts.map +1 -0
  457. package/dist/components/dither-area/dither-area.js +186 -0
  458. package/dist/components/dither-area/dither-area.js.map +1 -0
  459. package/dist/components/dither-area/index.d.ts +2 -0
  460. package/dist/components/dither-area/index.js +2 -0
  461. package/dist/components/dither-area/meta.js +17 -0
  462. package/dist/components/dither-area/meta.js.map +1 -0
  463. package/dist/components/dither-bar/dither-bar.d.ts +47 -0
  464. package/dist/components/dither-bar/dither-bar.d.ts.map +1 -0
  465. package/dist/components/dither-bar/dither-bar.js +261 -0
  466. package/dist/components/dither-bar/dither-bar.js.map +1 -0
  467. package/dist/components/dither-bar/index.d.ts +2 -0
  468. package/dist/components/dither-bar/index.js +2 -0
  469. package/dist/components/dither-bar/meta.js +17 -0
  470. package/dist/components/dither-bar/meta.js.map +1 -0
  471. package/dist/components/dither-canvas/dither-canvas.d.ts +76 -0
  472. package/dist/components/dither-canvas/dither-canvas.d.ts.map +1 -0
  473. package/dist/components/dither-canvas/dither-canvas.js +236 -0
  474. package/dist/components/dither-canvas/dither-canvas.js.map +1 -0
  475. package/dist/components/dither-canvas/dither-engine.d.ts +132 -0
  476. package/dist/components/dither-canvas/dither-engine.d.ts.map +1 -0
  477. package/dist/components/dither-canvas/dither-engine.js +243 -0
  478. package/dist/components/dither-canvas/dither-engine.js.map +1 -0
  479. package/dist/components/dither-canvas/dither-geometry.d.ts +73 -0
  480. package/dist/components/dither-canvas/dither-geometry.d.ts.map +1 -0
  481. package/dist/components/dither-canvas/dither-geometry.js +205 -0
  482. package/dist/components/dither-canvas/dither-geometry.js.map +1 -0
  483. package/dist/components/dither-canvas/dither-scrubber.d.ts +64 -0
  484. package/dist/components/dither-canvas/dither-scrubber.d.ts.map +1 -0
  485. package/dist/components/dither-canvas/dither-scrubber.js +130 -0
  486. package/dist/components/dither-canvas/dither-scrubber.js.map +1 -0
  487. package/dist/components/dither-canvas/index.d.ts +5 -0
  488. package/dist/components/dither-canvas/index.js +5 -0
  489. package/dist/components/dither-canvas/meta.js +22 -0
  490. package/dist/components/dither-canvas/meta.js.map +1 -0
  491. package/dist/components/dither-donut/dither-donut.d.ts +46 -0
  492. package/dist/components/dither-donut/dither-donut.d.ts.map +1 -0
  493. package/dist/components/dither-donut/dither-donut.js +241 -0
  494. package/dist/components/dither-donut/dither-donut.js.map +1 -0
  495. package/dist/components/dither-donut/index.d.ts +2 -0
  496. package/dist/components/dither-donut/index.js +2 -0
  497. package/dist/components/dither-donut/meta.js +17 -0
  498. package/dist/components/dither-donut/meta.js.map +1 -0
  499. package/dist/components/dither-funnel/dither-funnel.d.ts +53 -0
  500. package/dist/components/dither-funnel/dither-funnel.d.ts.map +1 -0
  501. package/dist/components/dither-funnel/dither-funnel.js +176 -0
  502. package/dist/components/dither-funnel/dither-funnel.js.map +1 -0
  503. package/dist/components/dither-funnel/index.d.ts +2 -0
  504. package/dist/components/dither-funnel/index.js +2 -0
  505. package/dist/components/dither-funnel/meta.js +17 -0
  506. package/dist/components/dither-funnel/meta.js.map +1 -0
  507. package/dist/components/dither-gauge/dither-gauge.d.ts +48 -0
  508. package/dist/components/dither-gauge/dither-gauge.d.ts.map +1 -0
  509. package/dist/components/dither-gauge/dither-gauge.js +189 -0
  510. package/dist/components/dither-gauge/dither-gauge.js.map +1 -0
  511. package/dist/components/dither-gauge/index.d.ts +2 -0
  512. package/dist/components/dither-gauge/index.js +2 -0
  513. package/dist/components/dither-gauge/meta.js +17 -0
  514. package/dist/components/dither-gauge/meta.js.map +1 -0
  515. package/dist/components/dither-heatmap/dither-heatmap.d.ts +63 -0
  516. package/dist/components/dither-heatmap/dither-heatmap.d.ts.map +1 -0
  517. package/dist/components/dither-heatmap/dither-heatmap.js +298 -0
  518. package/dist/components/dither-heatmap/dither-heatmap.js.map +1 -0
  519. package/dist/components/dither-heatmap/index.d.ts +2 -0
  520. package/dist/components/dither-heatmap/index.js +2 -0
  521. package/dist/components/dither-heatmap/meta.js +17 -0
  522. package/dist/components/dither-heatmap/meta.js.map +1 -0
  523. package/dist/components/dither-line/dither-line.d.ts +41 -0
  524. package/dist/components/dither-line/dither-line.d.ts.map +1 -0
  525. package/dist/components/dither-line/dither-line.js +164 -0
  526. package/dist/components/dither-line/dither-line.js.map +1 -0
  527. package/dist/components/dither-line/index.d.ts +2 -0
  528. package/dist/components/dither-line/index.js +2 -0
  529. package/dist/components/dither-line/meta.js +17 -0
  530. package/dist/components/dither-line/meta.js.map +1 -0
  531. package/dist/components/dither-meter/dither-meter.d.ts +51 -0
  532. package/dist/components/dither-meter/dither-meter.d.ts.map +1 -0
  533. package/dist/components/dither-meter/dither-meter.js +211 -0
  534. package/dist/components/dither-meter/dither-meter.js.map +1 -0
  535. package/dist/components/dither-meter/index.d.ts +2 -0
  536. package/dist/components/dither-meter/index.js +2 -0
  537. package/dist/components/dither-meter/meta.js +17 -0
  538. package/dist/components/dither-meter/meta.js.map +1 -0
  539. package/dist/components/dither-scatter/dither-scatter.d.ts +53 -0
  540. package/dist/components/dither-scatter/dither-scatter.d.ts.map +1 -0
  541. package/dist/components/dither-scatter/dither-scatter.js +211 -0
  542. package/dist/components/dither-scatter/dither-scatter.js.map +1 -0
  543. package/dist/components/dither-scatter/index.d.ts +2 -0
  544. package/dist/components/dither-scatter/index.js +2 -0
  545. package/dist/components/dither-scatter/meta.js +17 -0
  546. package/dist/components/dither-scatter/meta.js.map +1 -0
  547. package/dist/components/dot-morph-button/dot-morph-button.d.ts +18 -0
  548. package/dist/components/dot-morph-button/dot-morph-button.d.ts.map +1 -0
  549. package/dist/components/dot-morph-button/dot-morph-button.js +43 -0
  550. package/dist/components/dot-morph-button/dot-morph-button.js.map +1 -0
  551. package/dist/components/dot-morph-button/index.d.ts +2 -0
  552. package/dist/components/dot-morph-button/index.js +2 -0
  553. package/dist/components/dot-morph-button/meta.js +17 -0
  554. package/dist/components/dot-morph-button/meta.js.map +1 -0
  555. package/dist/components/dots-loader/dots-loader.d.ts +186 -0
  556. package/dist/components/dots-loader/dots-loader.d.ts.map +1 -0
  557. package/dist/components/dots-loader/dots-loader.js +412 -0
  558. package/dist/components/dots-loader/dots-loader.js.map +1 -0
  559. package/dist/components/dots-loader/index.d.ts +2 -0
  560. package/dist/components/dots-loader/index.js +2 -0
  561. package/dist/components/dots-loader/meta.js +17 -0
  562. package/dist/components/dots-loader/meta.js.map +1 -0
  563. package/dist/components/drag-stepper/drag-stepper.d.ts +39 -0
  564. package/dist/components/drag-stepper/drag-stepper.d.ts.map +1 -0
  565. package/dist/components/drag-stepper/drag-stepper.js +232 -0
  566. package/dist/components/drag-stepper/drag-stepper.js.map +1 -0
  567. package/dist/components/drag-stepper/index.d.ts +2 -0
  568. package/dist/components/drag-stepper/index.js +2 -0
  569. package/dist/components/drag-stepper/meta.js +17 -0
  570. package/dist/components/drag-stepper/meta.js.map +1 -0
  571. package/dist/components/drawer/drawer.d.ts +9 -1
  572. package/dist/components/drawer/drawer.d.ts.map +1 -1
  573. package/dist/components/drawer/drawer.js +24 -5
  574. package/dist/components/drawer/drawer.js.map +1 -1
  575. package/dist/components/drawer/meta.js +1 -1
  576. package/dist/components/drawer/meta.js.map +1 -1
  577. package/dist/components/dropdown-menu/dropdown-menu.d.ts +5 -0
  578. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
  579. package/dist/components/dropdown-menu/dropdown-menu.js +34 -13
  580. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -1
  581. package/dist/components/dropdown-menu/meta.js +1 -1
  582. package/dist/components/dropdown-menu/meta.js.map +1 -1
  583. package/dist/components/effect-button/effect-button.d.ts +28 -0
  584. package/dist/components/effect-button/effect-button.d.ts.map +1 -0
  585. package/dist/components/effect-button/effect-button.js +176 -0
  586. package/dist/components/effect-button/effect-button.js.map +1 -0
  587. package/dist/components/effect-button/index.d.ts +2 -0
  588. package/dist/components/effect-button/index.js +2 -0
  589. package/dist/components/effect-button/meta.js +17 -0
  590. package/dist/components/effect-button/meta.js.map +1 -0
  591. package/dist/components/escape-button/escape-button.d.ts +25 -0
  592. package/dist/components/escape-button/escape-button.d.ts.map +1 -0
  593. package/dist/components/escape-button/escape-button.js +154 -0
  594. package/dist/components/escape-button/escape-button.js.map +1 -0
  595. package/dist/components/escape-button/index.d.ts +2 -0
  596. package/dist/components/escape-button/index.js +2 -0
  597. package/dist/components/escape-button/meta.js +17 -0
  598. package/dist/components/escape-button/meta.js.map +1 -0
  599. package/dist/components/expandable-cards/expandable-cards.d.ts +42 -0
  600. package/dist/components/expandable-cards/expandable-cards.d.ts.map +1 -0
  601. package/dist/components/expandable-cards/expandable-cards.js +312 -0
  602. package/dist/components/expandable-cards/expandable-cards.js.map +1 -0
  603. package/dist/components/expandable-cards/index.d.ts +2 -0
  604. package/dist/components/expandable-cards/index.js +2 -0
  605. package/dist/components/expandable-cards/meta.js +17 -0
  606. package/dist/components/expandable-cards/meta.js.map +1 -0
  607. package/dist/components/expandable-list/expandable-list.d.ts +35 -0
  608. package/dist/components/expandable-list/expandable-list.d.ts.map +1 -0
  609. package/dist/components/expandable-list/expandable-list.js +180 -0
  610. package/dist/components/expandable-list/expandable-list.js.map +1 -0
  611. package/dist/components/expandable-list/index.d.ts +2 -0
  612. package/dist/components/expandable-list/index.js +2 -0
  613. package/dist/components/expandable-list/meta.js +21 -0
  614. package/dist/components/expandable-list/meta.js.map +1 -0
  615. package/dist/components/expanding-search/expanding-search.d.ts +30 -0
  616. package/dist/components/expanding-search/expanding-search.d.ts.map +1 -0
  617. package/dist/components/expanding-search/expanding-search.js +141 -0
  618. package/dist/components/expanding-search/expanding-search.js.map +1 -0
  619. package/dist/components/expanding-search/index.d.ts +2 -0
  620. package/dist/components/expanding-search/index.js +2 -0
  621. package/dist/components/expanding-search/meta.js +17 -0
  622. package/dist/components/expanding-search/meta.js.map +1 -0
  623. package/dist/components/exposure-slider/exposure-slider.d.ts +33 -0
  624. package/dist/components/exposure-slider/exposure-slider.d.ts.map +1 -0
  625. package/dist/components/exposure-slider/exposure-slider.js +227 -0
  626. package/dist/components/exposure-slider/exposure-slider.js.map +1 -0
  627. package/dist/components/exposure-slider/index.d.ts +2 -0
  628. package/dist/components/exposure-slider/index.js +2 -0
  629. package/dist/components/exposure-slider/meta.js +17 -0
  630. package/dist/components/exposure-slider/meta.js.map +1 -0
  631. package/dist/components/file-upload/file-upload.d.ts +13 -2
  632. package/dist/components/file-upload/file-upload.d.ts.map +1 -1
  633. package/dist/components/file-upload/file-upload.js +166 -95
  634. package/dist/components/file-upload/file-upload.js.map +1 -1
  635. package/dist/components/file-upload/meta.js +1 -1
  636. package/dist/components/file-upload/meta.js.map +1 -1
  637. package/dist/components/focus-blur-links/focus-blur-links.d.ts +25 -0
  638. package/dist/components/focus-blur-links/focus-blur-links.d.ts.map +1 -0
  639. package/dist/components/focus-blur-links/focus-blur-links.js +92 -0
  640. package/dist/components/focus-blur-links/focus-blur-links.js.map +1 -0
  641. package/dist/components/focus-blur-links/index.d.ts +2 -0
  642. package/dist/components/focus-blur-links/index.js +2 -0
  643. package/dist/components/focus-blur-links/meta.js +17 -0
  644. package/dist/components/focus-blur-links/meta.js.map +1 -0
  645. package/dist/components/folding-frame/folding-frame.d.ts +38 -0
  646. package/dist/components/folding-frame/folding-frame.d.ts.map +1 -0
  647. package/dist/components/folding-frame/folding-frame.js +298 -0
  648. package/dist/components/folding-frame/folding-frame.js.map +1 -0
  649. package/dist/components/folding-frame/index.d.ts +2 -0
  650. package/dist/components/folding-frame/index.js +2 -0
  651. package/dist/components/folding-frame/meta.js +17 -0
  652. package/dist/components/folding-frame/meta.js.map +1 -0
  653. package/dist/components/form/form.d.ts +11 -2
  654. package/dist/components/form/form.d.ts.map +1 -1
  655. package/dist/components/form/form.js +55 -5
  656. package/dist/components/form/form.js.map +1 -1
  657. package/dist/components/form/meta.js +1 -1
  658. package/dist/components/form/meta.js.map +1 -1
  659. package/dist/components/glass-bubble/glass-bubble.d.ts +59 -0
  660. package/dist/components/glass-bubble/glass-bubble.d.ts.map +1 -0
  661. package/dist/components/glass-bubble/glass-bubble.js +308 -0
  662. package/dist/components/glass-bubble/glass-bubble.js.map +1 -0
  663. package/dist/components/glass-bubble/index.d.ts +2 -0
  664. package/dist/components/glass-bubble/index.js +2 -0
  665. package/dist/components/glass-bubble/meta.js +17 -0
  666. package/dist/components/glass-bubble/meta.js.map +1 -0
  667. package/dist/components/glow-card/glow-card.d.ts +34 -0
  668. package/dist/components/glow-card/glow-card.d.ts.map +1 -0
  669. package/dist/components/glow-card/glow-card.js +104 -0
  670. package/dist/components/glow-card/glow-card.js.map +1 -0
  671. package/dist/components/glow-card/index.d.ts +2 -0
  672. package/dist/components/glow-card/index.js +2 -0
  673. package/dist/components/glow-card/meta.js +17 -0
  674. package/dist/components/glow-card/meta.js.map +1 -0
  675. package/dist/components/goo-ball/goo-ball.d.ts +48 -0
  676. package/dist/components/goo-ball/goo-ball.d.ts.map +1 -0
  677. package/dist/components/goo-ball/goo-ball.js +295 -0
  678. package/dist/components/goo-ball/goo-ball.js.map +1 -0
  679. package/dist/components/goo-ball/index.d.ts +2 -0
  680. package/dist/components/goo-ball/index.js +2 -0
  681. package/dist/components/goo-ball/meta.js +21 -0
  682. package/dist/components/goo-ball/meta.js.map +1 -0
  683. package/dist/components/goo-tabs/goo-tabs.d.ts +37 -0
  684. package/dist/components/goo-tabs/goo-tabs.d.ts.map +1 -0
  685. package/dist/components/goo-tabs/goo-tabs.js +286 -0
  686. package/dist/components/goo-tabs/goo-tabs.js.map +1 -0
  687. package/dist/components/goo-tabs/index.d.ts +2 -0
  688. package/dist/components/goo-tabs/index.js +2 -0
  689. package/dist/components/goo-tabs/meta.js +17 -0
  690. package/dist/components/goo-tabs/meta.js.map +1 -0
  691. package/dist/components/gooey-popover/gooey-popover.d.ts +32 -0
  692. package/dist/components/gooey-popover/gooey-popover.d.ts.map +1 -0
  693. package/dist/components/gooey-popover/gooey-popover.js +257 -0
  694. package/dist/components/gooey-popover/gooey-popover.js.map +1 -0
  695. package/dist/components/gooey-popover/index.d.ts +2 -0
  696. package/dist/components/gooey-popover/index.js +2 -0
  697. package/dist/components/gooey-popover/meta.js +17 -0
  698. package/dist/components/gooey-popover/meta.js.map +1 -0
  699. package/dist/components/gradient-orb/gradient-orb.d.ts +39 -0
  700. package/dist/components/gradient-orb/gradient-orb.d.ts.map +1 -0
  701. package/dist/components/gradient-orb/gradient-orb.js +185 -0
  702. package/dist/components/gradient-orb/gradient-orb.js.map +1 -0
  703. package/dist/components/gradient-orb/index.d.ts +2 -0
  704. package/dist/components/gradient-orb/index.js +2 -0
  705. package/dist/components/gradient-orb/meta.js +17 -0
  706. package/dist/components/gradient-orb/meta.js.map +1 -0
  707. package/dist/components/grid-loader/grid-loader.d.ts +224 -0
  708. package/dist/components/grid-loader/grid-loader.d.ts.map +1 -0
  709. package/dist/components/grid-loader/grid-loader.js +271 -0
  710. package/dist/components/grid-loader/grid-loader.js.map +1 -0
  711. package/dist/components/grid-loader/index.d.ts +2 -0
  712. package/dist/components/grid-loader/index.js +2 -0
  713. package/dist/components/grid-loader/meta.js +17 -0
  714. package/dist/components/grid-loader/meta.js.map +1 -0
  715. package/dist/components/image-accordion/image-accordion.d.ts +40 -0
  716. package/dist/components/image-accordion/image-accordion.d.ts.map +1 -0
  717. package/dist/components/image-accordion/image-accordion.js +118 -0
  718. package/dist/components/image-accordion/image-accordion.js.map +1 -0
  719. package/dist/components/image-accordion/index.d.ts +2 -0
  720. package/dist/components/image-accordion/index.js +2 -0
  721. package/dist/components/image-accordion/meta.js +17 -0
  722. package/dist/components/image-accordion/meta.js.map +1 -0
  723. package/dist/components/image-metadata/image-metadata.d.ts +34 -0
  724. package/dist/components/image-metadata/image-metadata.d.ts.map +1 -0
  725. package/dist/components/image-metadata/image-metadata.js +178 -0
  726. package/dist/components/image-metadata/image-metadata.js.map +1 -0
  727. package/dist/components/image-metadata/index.d.ts +2 -0
  728. package/dist/components/image-metadata/index.js +2 -0
  729. package/dist/components/image-metadata/meta.js +17 -0
  730. package/dist/components/image-metadata/meta.js.map +1 -0
  731. package/dist/components/image-selector/image-selector.d.ts +37 -0
  732. package/dist/components/image-selector/image-selector.d.ts.map +1 -0
  733. package/dist/components/image-selector/image-selector.js +253 -0
  734. package/dist/components/image-selector/image-selector.js.map +1 -0
  735. package/dist/components/image-selector/index.d.ts +2 -0
  736. package/dist/components/image-selector/index.js +2 -0
  737. package/dist/components/image-selector/meta.js +17 -0
  738. package/dist/components/image-selector/meta.js.map +1 -0
  739. package/dist/components/inline-confirm/index.d.ts +2 -0
  740. package/dist/components/inline-confirm/index.js +2 -0
  741. package/dist/components/inline-confirm/inline-confirm.d.ts +38 -0
  742. package/dist/components/inline-confirm/inline-confirm.d.ts.map +1 -0
  743. package/dist/components/inline-confirm/inline-confirm.js +246 -0
  744. package/dist/components/inline-confirm/inline-confirm.js.map +1 -0
  745. package/dist/components/inline-confirm/meta.js +17 -0
  746. package/dist/components/inline-confirm/meta.js.map +1 -0
  747. package/dist/components/input/floating-label-input.d.ts +26 -0
  748. package/dist/components/input/floating-label-input.d.ts.map +1 -0
  749. package/dist/components/input/floating-label-input.js +47 -0
  750. package/dist/components/input/floating-label-input.js.map +1 -0
  751. package/dist/components/input/index.d.ts +2 -1
  752. package/dist/components/input/index.js +2 -1
  753. package/dist/components/input/input.js +1 -1
  754. package/dist/components/input/input.js.map +1 -1
  755. package/dist/components/input/meta.js +2 -2
  756. package/dist/components/input/meta.js.map +1 -1
  757. package/dist/components/invite-carousel/carousel-controls.js +189 -0
  758. package/dist/components/invite-carousel/carousel-controls.js.map +1 -0
  759. package/dist/components/invite-carousel/index.d.ts +2 -0
  760. package/dist/components/invite-carousel/index.js +2 -0
  761. package/dist/components/invite-carousel/invite-carousel.d.ts +56 -0
  762. package/dist/components/invite-carousel/invite-carousel.d.ts.map +1 -0
  763. package/dist/components/invite-carousel/invite-carousel.js +207 -0
  764. package/dist/components/invite-carousel/invite-carousel.js.map +1 -0
  765. package/dist/components/invite-carousel/meta.js +17 -0
  766. package/dist/components/invite-carousel/meta.js.map +1 -0
  767. package/dist/components/island/index.d.ts +2 -0
  768. package/dist/components/island/index.js +2 -0
  769. package/dist/components/island/island.d.ts +30 -0
  770. package/dist/components/island/island.d.ts.map +1 -0
  771. package/dist/components/island/island.js +94 -0
  772. package/dist/components/island/island.js.map +1 -0
  773. package/dist/components/island/meta.js +17 -0
  774. package/dist/components/island/meta.js.map +1 -0
  775. package/dist/components/liquid-toggle/index.d.ts +2 -0
  776. package/dist/components/liquid-toggle/index.js +2 -0
  777. package/dist/components/liquid-toggle/liquid-toggle.d.ts +19 -0
  778. package/dist/components/liquid-toggle/liquid-toggle.d.ts.map +1 -0
  779. package/dist/components/liquid-toggle/liquid-toggle.js +175 -0
  780. package/dist/components/liquid-toggle/liquid-toggle.js.map +1 -0
  781. package/dist/components/liquid-toggle/meta.js +21 -0
  782. package/dist/components/liquid-toggle/meta.js.map +1 -0
  783. package/dist/components/log-viewer/log-viewer.js +2 -2
  784. package/dist/components/log-viewer/log-viewer.js.map +1 -1
  785. package/dist/components/magnetic-button/index.d.ts +2 -0
  786. package/dist/components/magnetic-button/index.js +2 -0
  787. package/dist/components/magnetic-button/magnetic-button.d.ts +32 -0
  788. package/dist/components/magnetic-button/magnetic-button.d.ts.map +1 -0
  789. package/dist/components/magnetic-button/magnetic-button.js +138 -0
  790. package/dist/components/magnetic-button/magnetic-button.js.map +1 -0
  791. package/dist/components/magnetic-button/meta.js +17 -0
  792. package/dist/components/magnetic-button/meta.js.map +1 -0
  793. package/dist/components/magnetic-select/index.d.ts +2 -0
  794. package/dist/components/magnetic-select/index.js +2 -0
  795. package/dist/components/magnetic-select/magnetic-select-spring.js +21 -0
  796. package/dist/components/magnetic-select/magnetic-select-spring.js.map +1 -0
  797. package/dist/components/magnetic-select/magnetic-select.d.ts +44 -0
  798. package/dist/components/magnetic-select/magnetic-select.d.ts.map +1 -0
  799. package/dist/components/magnetic-select/magnetic-select.js +330 -0
  800. package/dist/components/magnetic-select/magnetic-select.js.map +1 -0
  801. package/dist/components/magnetic-select/meta.js +17 -0
  802. package/dist/components/magnetic-select/meta.js.map +1 -0
  803. package/dist/components/magnify-dock/index.d.ts +2 -0
  804. package/dist/components/magnify-dock/index.js +2 -0
  805. package/dist/components/magnify-dock/magnify-dock.d.ts +40 -0
  806. package/dist/components/magnify-dock/magnify-dock.d.ts.map +1 -0
  807. package/dist/components/magnify-dock/magnify-dock.js +183 -0
  808. package/dist/components/magnify-dock/magnify-dock.js.map +1 -0
  809. package/dist/components/magnify-dock/meta.js +17 -0
  810. package/dist/components/magnify-dock/meta.js.map +1 -0
  811. package/dist/components/marquee/index.d.ts +2 -0
  812. package/dist/components/marquee/index.js +2 -0
  813. package/dist/components/marquee/marquee.d.ts +30 -0
  814. package/dist/components/marquee/marquee.d.ts.map +1 -0
  815. package/dist/components/marquee/marquee.js +117 -0
  816. package/dist/components/marquee/marquee.js.map +1 -0
  817. package/dist/components/marquee/meta.js +17 -0
  818. package/dist/components/marquee/meta.js.map +1 -0
  819. package/dist/components/meter/meter.js +1 -1
  820. package/dist/components/meter/meter.js.map +1 -1
  821. package/dist/components/morph-button/index.d.ts +2 -0
  822. package/dist/components/morph-button/index.js +2 -0
  823. package/dist/components/morph-button/meta.js +17 -0
  824. package/dist/components/morph-button/meta.js.map +1 -0
  825. package/dist/components/morph-button/morph-button.d.ts +57 -0
  826. package/dist/components/morph-button/morph-button.d.ts.map +1 -0
  827. package/dist/components/morph-button/morph-button.js +220 -0
  828. package/dist/components/morph-button/morph-button.js.map +1 -0
  829. package/dist/components/morph-surface/index.d.ts +2 -0
  830. package/dist/components/morph-surface/index.js +2 -0
  831. package/dist/components/morph-surface/meta.js +17 -0
  832. package/dist/components/morph-surface/meta.js.map +1 -0
  833. package/dist/components/morph-surface/morph-surface.d.ts +51 -0
  834. package/dist/components/morph-surface/morph-surface.d.ts.map +1 -0
  835. package/dist/components/morph-surface/morph-surface.js +228 -0
  836. package/dist/components/morph-surface/morph-surface.js.map +1 -0
  837. package/dist/components/notification-badge/index.d.ts +2 -0
  838. package/dist/components/notification-badge/index.js +2 -0
  839. package/dist/components/notification-badge/meta.js +17 -0
  840. package/dist/components/notification-badge/meta.js.map +1 -0
  841. package/dist/components/notification-badge/notification-badge.d.ts +40 -0
  842. package/dist/components/notification-badge/notification-badge.d.ts.map +1 -0
  843. package/dist/components/notification-badge/notification-badge.js +107 -0
  844. package/dist/components/notification-badge/notification-badge.js.map +1 -0
  845. package/dist/components/notify-button/index.d.ts +2 -0
  846. package/dist/components/notify-button/index.js +2 -0
  847. package/dist/components/notify-button/meta.js +17 -0
  848. package/dist/components/notify-button/meta.js.map +1 -0
  849. package/dist/components/notify-button/notify-button.d.ts +28 -0
  850. package/dist/components/notify-button/notify-button.d.ts.map +1 -0
  851. package/dist/components/notify-button/notify-button.js +114 -0
  852. package/dist/components/notify-button/notify-button.js.map +1 -0
  853. package/dist/components/now-playing/index.d.ts +2 -0
  854. package/dist/components/now-playing/index.js +2 -0
  855. package/dist/components/now-playing/meta.js +17 -0
  856. package/dist/components/now-playing/meta.js.map +1 -0
  857. package/dist/components/now-playing/now-playing.d.ts +39 -0
  858. package/dist/components/now-playing/now-playing.d.ts.map +1 -0
  859. package/dist/components/now-playing/now-playing.js +354 -0
  860. package/dist/components/now-playing/now-playing.js.map +1 -0
  861. package/dist/components/number-flow/index.d.ts +2 -0
  862. package/dist/components/number-flow/index.js +2 -0
  863. package/dist/components/number-flow/meta.js +17 -0
  864. package/dist/components/number-flow/meta.js.map +1 -0
  865. package/dist/components/number-flow/number-flow.d.ts +45 -0
  866. package/dist/components/number-flow/number-flow.d.ts.map +1 -0
  867. package/dist/components/number-flow/number-flow.js +226 -0
  868. package/dist/components/number-flow/number-flow.js.map +1 -0
  869. package/dist/components/orb-face/index.d.ts +2 -0
  870. package/dist/components/orb-face/index.js +2 -0
  871. package/dist/components/orb-face/meta.js +17 -0
  872. package/dist/components/orb-face/meta.js.map +1 -0
  873. package/dist/components/orb-face/orb-face.d.ts +29 -0
  874. package/dist/components/orb-face/orb-face.d.ts.map +1 -0
  875. package/dist/components/orb-face/orb-face.js +353 -0
  876. package/dist/components/orb-face/orb-face.js.map +1 -0
  877. package/dist/components/otp-input/index.d.ts +2 -0
  878. package/dist/components/otp-input/index.js +2 -0
  879. package/dist/components/otp-input/meta.js +17 -0
  880. package/dist/components/otp-input/meta.js.map +1 -0
  881. package/dist/components/otp-input/otp-input.d.ts +36 -0
  882. package/dist/components/otp-input/otp-input.d.ts.map +1 -0
  883. package/dist/components/otp-input/otp-input.js +249 -0
  884. package/dist/components/otp-input/otp-input.js.map +1 -0
  885. package/dist/components/pagination/index.d.ts +2 -2
  886. package/dist/components/pagination/meta.js +2 -2
  887. package/dist/components/pagination/meta.js.map +1 -1
  888. package/dist/components/pagination/pagination-indicator.js +76 -0
  889. package/dist/components/pagination/pagination-indicator.js.map +1 -0
  890. package/dist/components/pagination/pagination.d.ts +10 -2
  891. package/dist/components/pagination/pagination.d.ts.map +1 -1
  892. package/dist/components/pagination/pagination.js +16 -6
  893. package/dist/components/pagination/pagination.js.map +1 -1
  894. package/dist/components/palette-generator/index.d.ts +2 -0
  895. package/dist/components/palette-generator/index.js +2 -0
  896. package/dist/components/palette-generator/meta.js +17 -0
  897. package/dist/components/palette-generator/meta.js.map +1 -0
  898. package/dist/components/palette-generator/palette-generator.d.ts +43 -0
  899. package/dist/components/palette-generator/palette-generator.d.ts.map +1 -0
  900. package/dist/components/palette-generator/palette-generator.js +199 -0
  901. package/dist/components/palette-generator/palette-generator.js.map +1 -0
  902. package/dist/components/permission-matrix/permission-matrix.js +3 -3
  903. package/dist/components/permission-matrix/permission-matrix.js.map +1 -1
  904. package/dist/components/photo-stack/index.d.ts +2 -0
  905. package/dist/components/photo-stack/index.js +2 -0
  906. package/dist/components/photo-stack/meta.js +17 -0
  907. package/dist/components/photo-stack/meta.js.map +1 -0
  908. package/dist/components/photo-stack/photo-stack.d.ts +30 -0
  909. package/dist/components/photo-stack/photo-stack.d.ts.map +1 -0
  910. package/dist/components/photo-stack/photo-stack.js +236 -0
  911. package/dist/components/photo-stack/photo-stack.js.map +1 -0
  912. package/dist/components/photo-tabs/index.d.ts +2 -0
  913. package/dist/components/photo-tabs/index.js +2 -0
  914. package/dist/components/photo-tabs/meta.js +17 -0
  915. package/dist/components/photo-tabs/meta.js.map +1 -0
  916. package/dist/components/photo-tabs/photo-tabs.d.ts +35 -0
  917. package/dist/components/photo-tabs/photo-tabs.d.ts.map +1 -0
  918. package/dist/components/photo-tabs/photo-tabs.js +82 -0
  919. package/dist/components/photo-tabs/photo-tabs.js.map +1 -0
  920. package/dist/components/pixel-avatar/index.d.ts +2 -0
  921. package/dist/components/pixel-avatar/index.js +2 -0
  922. package/dist/components/pixel-avatar/meta.js +17 -0
  923. package/dist/components/pixel-avatar/meta.js.map +1 -0
  924. package/dist/components/pixel-avatar/pixel-avatar.d.ts +23 -0
  925. package/dist/components/pixel-avatar/pixel-avatar.d.ts.map +1 -0
  926. package/dist/components/pixel-avatar/pixel-avatar.js +181 -0
  927. package/dist/components/pixel-avatar/pixel-avatar.js.map +1 -0
  928. package/dist/components/product-card/index.d.ts +2 -0
  929. package/dist/components/product-card/index.js +2 -0
  930. package/dist/components/product-card/meta.js +17 -0
  931. package/dist/components/product-card/meta.js.map +1 -0
  932. package/dist/components/product-card/product-card.d.ts +43 -0
  933. package/dist/components/product-card/product-card.d.ts.map +1 -0
  934. package/dist/components/product-card/product-card.js +249 -0
  935. package/dist/components/product-card/product-card.js.map +1 -0
  936. package/dist/components/progress/meta.js +1 -1
  937. package/dist/components/progress/meta.js.map +1 -1
  938. package/dist/components/progress/progress.d.ts +21 -2
  939. package/dist/components/progress/progress.d.ts.map +1 -1
  940. package/dist/components/progress/progress.js +56 -6
  941. package/dist/components/progress/progress.js.map +1 -1
  942. package/dist/components/pull-to-refresh/index.d.ts +2 -0
  943. package/dist/components/pull-to-refresh/index.js +2 -0
  944. package/dist/components/pull-to-refresh/meta.js +17 -0
  945. package/dist/components/pull-to-refresh/meta.js.map +1 -0
  946. package/dist/components/pull-to-refresh/pull-to-refresh.d.ts +47 -0
  947. package/dist/components/pull-to-refresh/pull-to-refresh.d.ts.map +1 -0
  948. package/dist/components/pull-to-refresh/pull-to-refresh.js +302 -0
  949. package/dist/components/pull-to-refresh/pull-to-refresh.js.map +1 -0
  950. package/dist/components/radial-menu/index.d.ts +2 -0
  951. package/dist/components/radial-menu/index.js +2 -0
  952. package/dist/components/radial-menu/meta.js +17 -0
  953. package/dist/components/radial-menu/meta.js.map +1 -0
  954. package/dist/components/radial-menu/radial-menu.d.ts +44 -0
  955. package/dist/components/radial-menu/radial-menu.d.ts.map +1 -0
  956. package/dist/components/radial-menu/radial-menu.js +313 -0
  957. package/dist/components/radial-menu/radial-menu.js.map +1 -0
  958. package/dist/components/radio-group/radio-group.d.ts.map +1 -1
  959. package/dist/components/radio-group/radio-group.js +4 -1
  960. package/dist/components/radio-group/radio-group.js.map +1 -1
  961. package/dist/components/range-dial/index.d.ts +2 -0
  962. package/dist/components/range-dial/index.js +2 -0
  963. package/dist/components/range-dial/meta.js +17 -0
  964. package/dist/components/range-dial/meta.js.map +1 -0
  965. package/dist/components/range-dial/range-dial.d.ts +33 -0
  966. package/dist/components/range-dial/range-dial.d.ts.map +1 -0
  967. package/dist/components/range-dial/range-dial.js +308 -0
  968. package/dist/components/range-dial/range-dial.js.map +1 -0
  969. package/dist/components/record-diff/record-diff.js +4 -4
  970. package/dist/components/record-diff/record-diff.js.map +1 -1
  971. package/dist/components/reorder-list/index.d.ts +2 -0
  972. package/dist/components/reorder-list/index.js +2 -0
  973. package/dist/components/reorder-list/meta.js +17 -0
  974. package/dist/components/reorder-list/meta.js.map +1 -0
  975. package/dist/components/reorder-list/reorder-list.d.ts +79 -0
  976. package/dist/components/reorder-list/reorder-list.d.ts.map +1 -0
  977. package/dist/components/reorder-list/reorder-list.js +471 -0
  978. package/dist/components/reorder-list/reorder-list.js.map +1 -0
  979. package/dist/components/reviews-carousel/carousel-controls.js +189 -0
  980. package/dist/components/reviews-carousel/carousel-controls.js.map +1 -0
  981. package/dist/components/reviews-carousel/index.d.ts +2 -0
  982. package/dist/components/reviews-carousel/index.js +2 -0
  983. package/dist/components/reviews-carousel/meta.js +17 -0
  984. package/dist/components/reviews-carousel/meta.js.map +1 -0
  985. package/dist/components/reviews-carousel/reviews-carousel.d.ts +46 -0
  986. package/dist/components/reviews-carousel/reviews-carousel.d.ts.map +1 -0
  987. package/dist/components/reviews-carousel/reviews-carousel.js +177 -0
  988. package/dist/components/reviews-carousel/reviews-carousel.js.map +1 -0
  989. package/dist/components/rich-popover/index.d.ts +2 -0
  990. package/dist/components/rich-popover/index.js +2 -0
  991. package/dist/components/rich-popover/meta.js +17 -0
  992. package/dist/components/rich-popover/meta.js.map +1 -0
  993. package/dist/components/rich-popover/rich-popover.d.ts +36 -0
  994. package/dist/components/rich-popover/rich-popover.d.ts.map +1 -0
  995. package/dist/components/rich-popover/rich-popover.js +157 -0
  996. package/dist/components/rich-popover/rich-popover.js.map +1 -0
  997. package/dist/components/ring-loader/index.d.ts +2 -0
  998. package/dist/components/ring-loader/index.js +2 -0
  999. package/dist/components/ring-loader/meta.js +17 -0
  1000. package/dist/components/ring-loader/meta.js.map +1 -0
  1001. package/dist/components/ring-loader/ring-loader.d.ts +31 -0
  1002. package/dist/components/ring-loader/ring-loader.d.ts.map +1 -0
  1003. package/dist/components/ring-loader/ring-loader.js +597 -0
  1004. package/dist/components/ring-loader/ring-loader.js.map +1 -0
  1005. package/dist/components/scramble-text/index.d.ts +2 -0
  1006. package/dist/components/scramble-text/index.js +2 -0
  1007. package/dist/components/scramble-text/meta.js +17 -0
  1008. package/dist/components/scramble-text/meta.js.map +1 -0
  1009. package/dist/components/scramble-text/scramble-text.d.ts +35 -0
  1010. package/dist/components/scramble-text/scramble-text.d.ts.map +1 -0
  1011. package/dist/components/scramble-text/scramble-text.js +151 -0
  1012. package/dist/components/scramble-text/scramble-text.js.map +1 -0
  1013. package/dist/components/scroll-reveal-text/index.d.ts +2 -0
  1014. package/dist/components/scroll-reveal-text/index.js +2 -0
  1015. package/dist/components/scroll-reveal-text/meta.js +17 -0
  1016. package/dist/components/scroll-reveal-text/meta.js.map +1 -0
  1017. package/dist/components/scroll-reveal-text/scroll-reveal-text.d.ts +22 -0
  1018. package/dist/components/scroll-reveal-text/scroll-reveal-text.d.ts.map +1 -0
  1019. package/dist/components/scroll-reveal-text/scroll-reveal-text.js +113 -0
  1020. package/dist/components/scroll-reveal-text/scroll-reveal-text.js.map +1 -0
  1021. package/dist/components/scrubber/index.d.ts +2 -0
  1022. package/dist/components/scrubber/index.js +2 -0
  1023. package/dist/components/scrubber/meta.js +17 -0
  1024. package/dist/components/scrubber/meta.js.map +1 -0
  1025. package/dist/components/scrubber/scrubber.d.ts +37 -0
  1026. package/dist/components/scrubber/scrubber.d.ts.map +1 -0
  1027. package/dist/components/scrubber/scrubber.js +217 -0
  1028. package/dist/components/scrubber/scrubber.js.map +1 -0
  1029. package/dist/components/select/meta.js +1 -1
  1030. package/dist/components/select/meta.js.map +1 -1
  1031. package/dist/components/select/select.d.ts +5 -0
  1032. package/dist/components/select/select.d.ts.map +1 -1
  1033. package/dist/components/select/select.js +29 -7
  1034. package/dist/components/select/select.js.map +1 -1
  1035. package/dist/components/selection-list/index.d.ts +2 -0
  1036. package/dist/components/selection-list/index.js +2 -0
  1037. package/dist/components/selection-list/meta.js +17 -0
  1038. package/dist/components/selection-list/meta.js.map +1 -0
  1039. package/dist/components/selection-list/selection-list-spring.js +21 -0
  1040. package/dist/components/selection-list/selection-list-spring.js.map +1 -0
  1041. package/dist/components/selection-list/selection-list.d.ts +42 -0
  1042. package/dist/components/selection-list/selection-list.d.ts.map +1 -0
  1043. package/dist/components/selection-list/selection-list.js +355 -0
  1044. package/dist/components/selection-list/selection-list.js.map +1 -0
  1045. package/dist/components/shader-transition/index.d.ts +4 -0
  1046. package/dist/components/shader-transition/index.js +4 -0
  1047. package/dist/components/shader-transition/meta.js +21 -0
  1048. package/dist/components/shader-transition/meta.js.map +1 -0
  1049. package/dist/components/shader-transition/shader-transition-engine.d.ts +39 -0
  1050. package/dist/components/shader-transition/shader-transition-engine.d.ts.map +1 -0
  1051. package/dist/components/shader-transition/shader-transition-engine.js +294 -0
  1052. package/dist/components/shader-transition/shader-transition-engine.js.map +1 -0
  1053. package/dist/components/shader-transition/shader-transition-presets.d.ts +222 -0
  1054. package/dist/components/shader-transition/shader-transition-presets.d.ts.map +1 -0
  1055. package/dist/components/shader-transition/shader-transition-presets.js +346 -0
  1056. package/dist/components/shader-transition/shader-transition-presets.js.map +1 -0
  1057. package/dist/components/shader-transition/shader-transition.d.ts +35 -0
  1058. package/dist/components/shader-transition/shader-transition.d.ts.map +1 -0
  1059. package/dist/components/shader-transition/shader-transition.js +314 -0
  1060. package/dist/components/shader-transition/shader-transition.js.map +1 -0
  1061. package/dist/components/shape-loader/index.d.ts +2 -0
  1062. package/dist/components/shape-loader/index.js +2 -0
  1063. package/dist/components/shape-loader/meta.js +17 -0
  1064. package/dist/components/shape-loader/meta.js.map +1 -0
  1065. package/dist/components/shape-loader/shape-loader-variants.d.ts +8 -0
  1066. package/dist/components/shape-loader/shape-loader-variants.d.ts.map +1 -0
  1067. package/dist/components/shape-loader/shape-loader-variants.js +635 -0
  1068. package/dist/components/shape-loader/shape-loader-variants.js.map +1 -0
  1069. package/dist/components/shape-loader/shape-loader.d.ts +26 -0
  1070. package/dist/components/shape-loader/shape-loader.d.ts.map +1 -0
  1071. package/dist/components/shape-loader/shape-loader.js +99 -0
  1072. package/dist/components/shape-loader/shape-loader.js.map +1 -0
  1073. package/dist/components/sheet/meta.js +1 -1
  1074. package/dist/components/sheet/meta.js.map +1 -1
  1075. package/dist/components/sheet/sheet.d.ts +10 -2
  1076. package/dist/components/sheet/sheet.d.ts.map +1 -1
  1077. package/dist/components/sheet/sheet.js +25 -6
  1078. package/dist/components/sheet/sheet.js.map +1 -1
  1079. package/dist/components/shimmer-text/index.d.ts +2 -0
  1080. package/dist/components/shimmer-text/index.js +2 -0
  1081. package/dist/components/shimmer-text/meta.js +17 -0
  1082. package/dist/components/shimmer-text/meta.js.map +1 -0
  1083. package/dist/components/shimmer-text/shimmer-text.d.ts +33 -0
  1084. package/dist/components/shimmer-text/shimmer-text.d.ts.map +1 -0
  1085. package/dist/components/shimmer-text/shimmer-text.js +120 -0
  1086. package/dist/components/shimmer-text/shimmer-text.js.map +1 -0
  1087. package/dist/components/sidebar/index.d.ts +2 -0
  1088. package/dist/components/sidebar/index.js +2 -0
  1089. package/dist/components/sidebar/meta.js +17 -0
  1090. package/dist/components/sidebar/meta.js.map +1 -0
  1091. package/dist/components/sidebar/sidebar.d.ts +69 -0
  1092. package/dist/components/sidebar/sidebar.d.ts.map +1 -0
  1093. package/dist/components/sidebar/sidebar.js +256 -0
  1094. package/dist/components/sidebar/sidebar.js.map +1 -0
  1095. package/dist/components/skeleton/index.d.ts +2 -2
  1096. package/dist/components/skeleton/meta.js +1 -1
  1097. package/dist/components/skeleton/meta.js.map +1 -1
  1098. package/dist/components/skeleton/skeleton.d.ts +14 -2
  1099. package/dist/components/skeleton/skeleton.d.ts.map +1 -1
  1100. package/dist/components/skeleton/skeleton.js +24 -5
  1101. package/dist/components/skeleton/skeleton.js.map +1 -1
  1102. package/dist/components/slide-to-confirm/index.d.ts +2 -0
  1103. package/dist/components/slide-to-confirm/index.js +2 -0
  1104. package/dist/components/slide-to-confirm/meta.js +21 -0
  1105. package/dist/components/slide-to-confirm/meta.js.map +1 -0
  1106. package/dist/components/slide-to-confirm/slide-to-confirm.d.ts +38 -0
  1107. package/dist/components/slide-to-confirm/slide-to-confirm.d.ts.map +1 -0
  1108. package/dist/components/slide-to-confirm/slide-to-confirm.js +389 -0
  1109. package/dist/components/slide-to-confirm/slide-to-confirm.js.map +1 -0
  1110. package/dist/components/slosh-slider/index.d.ts +2 -0
  1111. package/dist/components/slosh-slider/index.js +2 -0
  1112. package/dist/components/slosh-slider/meta.js +21 -0
  1113. package/dist/components/slosh-slider/meta.js.map +1 -0
  1114. package/dist/components/slosh-slider/slosh-slider.d.ts +43 -0
  1115. package/dist/components/slosh-slider/slosh-slider.d.ts.map +1 -0
  1116. package/dist/components/slosh-slider/slosh-slider.js +140 -0
  1117. package/dist/components/slosh-slider/slosh-slider.js.map +1 -0
  1118. package/dist/components/social-selector/index.d.ts +2 -0
  1119. package/dist/components/social-selector/index.js +2 -0
  1120. package/dist/components/social-selector/meta.js +17 -0
  1121. package/dist/components/social-selector/meta.js.map +1 -0
  1122. package/dist/components/social-selector/social-selector.d.ts +45 -0
  1123. package/dist/components/social-selector/social-selector.d.ts.map +1 -0
  1124. package/dist/components/social-selector/social-selector.js +128 -0
  1125. package/dist/components/social-selector/social-selector.js.map +1 -0
  1126. package/dist/components/spinner/spinner.d.ts +1 -1
  1127. package/dist/components/star-count/index.d.ts +2 -0
  1128. package/dist/components/star-count/index.js +2 -0
  1129. package/dist/components/star-count/meta.js +17 -0
  1130. package/dist/components/star-count/meta.js.map +1 -0
  1131. package/dist/components/star-count/star-count.d.ts +35 -0
  1132. package/dist/components/star-count/star-count.d.ts.map +1 -0
  1133. package/dist/components/star-count/star-count.js +94 -0
  1134. package/dist/components/star-count/star-count.js.map +1 -0
  1135. package/dist/components/stepper/index.d.ts +2 -0
  1136. package/dist/components/stepper/index.js +2 -0
  1137. package/dist/components/stepper/meta.js +17 -0
  1138. package/dist/components/stepper/meta.js.map +1 -0
  1139. package/dist/components/stepper/stepper.d.ts +45 -0
  1140. package/dist/components/stepper/stepper.d.ts.map +1 -0
  1141. package/dist/components/stepper/stepper.js +207 -0
  1142. package/dist/components/stepper/stepper.js.map +1 -0
  1143. package/dist/components/swipe-carousel/carousel-controls.js +98 -0
  1144. package/dist/components/swipe-carousel/carousel-controls.js.map +1 -0
  1145. package/dist/components/swipe-carousel/index.d.ts +2 -0
  1146. package/dist/components/swipe-carousel/index.js +2 -0
  1147. package/dist/components/swipe-carousel/meta.js +17 -0
  1148. package/dist/components/swipe-carousel/meta.js.map +1 -0
  1149. package/dist/components/swipe-carousel/swipe-carousel.d.ts +27 -0
  1150. package/dist/components/swipe-carousel/swipe-carousel.d.ts.map +1 -0
  1151. package/dist/components/swipe-carousel/swipe-carousel.js +288 -0
  1152. package/dist/components/swipe-carousel/swipe-carousel.js.map +1 -0
  1153. package/dist/components/switch/meta.js +1 -1
  1154. package/dist/components/switch/meta.js.map +1 -1
  1155. package/dist/components/switch/switch.d.ts +25 -3
  1156. package/dist/components/switch/switch.d.ts.map +1 -1
  1157. package/dist/components/switch/switch.js +20 -4
  1158. package/dist/components/switch/switch.js.map +1 -1
  1159. package/dist/components/switchboard-card/index.d.ts +2 -0
  1160. package/dist/components/switchboard-card/index.js +2 -0
  1161. package/dist/components/switchboard-card/meta.js +17 -0
  1162. package/dist/components/switchboard-card/meta.js.map +1 -0
  1163. package/dist/components/switchboard-card/switchboard-card.d.ts +44 -0
  1164. package/dist/components/switchboard-card/switchboard-card.d.ts.map +1 -0
  1165. package/dist/components/switchboard-card/switchboard-card.js +169 -0
  1166. package/dist/components/switchboard-card/switchboard-card.js.map +1 -0
  1167. package/dist/components/table/table.js +2 -2
  1168. package/dist/components/table/table.js.map +1 -1
  1169. package/dist/components/tabs/index.d.ts +2 -2
  1170. package/dist/components/tabs/index.js +2 -2
  1171. package/dist/components/tabs/meta.js +1 -1
  1172. package/dist/components/tabs/meta.js.map +1 -1
  1173. package/dist/components/tabs/tabs.d.ts +6 -2
  1174. package/dist/components/tabs/tabs.d.ts.map +1 -1
  1175. package/dist/components/tabs/tabs.js +112 -10
  1176. package/dist/components/tabs/tabs.js.map +1 -1
  1177. package/dist/components/tags-input/meta.js +1 -1
  1178. package/dist/components/tags-input/meta.js.map +1 -1
  1179. package/dist/components/tags-input/tags-input.d.ts +7 -1
  1180. package/dist/components/tags-input/tags-input.d.ts.map +1 -1
  1181. package/dist/components/tags-input/tags-input.js +82 -6
  1182. package/dist/components/tags-input/tags-input.js.map +1 -1
  1183. package/dist/components/text-effect/index.d.ts +3 -0
  1184. package/dist/components/text-effect/index.js +3 -0
  1185. package/dist/components/text-effect/meta.js +17 -0
  1186. package/dist/components/text-effect/meta.js.map +1 -0
  1187. package/dist/components/text-effect/text-effect-presets.d.ts +256 -0
  1188. package/dist/components/text-effect/text-effect-presets.d.ts.map +1 -0
  1189. package/dist/components/text-effect/text-effect-presets.js +292 -0
  1190. package/dist/components/text-effect/text-effect-presets.js.map +1 -0
  1191. package/dist/components/text-effect/text-effect.d.ts +58 -0
  1192. package/dist/components/text-effect/text-effect.d.ts.map +1 -0
  1193. package/dist/components/text-effect/text-effect.js +243 -0
  1194. package/dist/components/text-effect/text-effect.js.map +1 -0
  1195. package/dist/components/text-loader/index.d.ts +2 -0
  1196. package/dist/components/text-loader/index.js +2 -0
  1197. package/dist/components/text-loader/meta.js +17 -0
  1198. package/dist/components/text-loader/meta.js.map +1 -0
  1199. package/dist/components/text-loader/text-loader.d.ts +30 -0
  1200. package/dist/components/text-loader/text-loader.d.ts.map +1 -0
  1201. package/dist/components/text-loader/text-loader.js +514 -0
  1202. package/dist/components/text-loader/text-loader.js.map +1 -0
  1203. package/dist/components/text-swap/index.d.ts +3 -0
  1204. package/dist/components/text-swap/index.js +3 -0
  1205. package/dist/components/text-swap/meta.js +17 -0
  1206. package/dist/components/text-swap/meta.js.map +1 -0
  1207. package/dist/components/text-swap/text-rotate.d.ts +17 -0
  1208. package/dist/components/text-swap/text-rotate.d.ts.map +1 -0
  1209. package/dist/components/text-swap/text-rotate.js +51 -0
  1210. package/dist/components/text-swap/text-rotate.js.map +1 -0
  1211. package/dist/components/text-swap/text-swap.d.ts +41 -0
  1212. package/dist/components/text-swap/text-swap.d.ts.map +1 -0
  1213. package/dist/components/text-swap/text-swap.js +303 -0
  1214. package/dist/components/text-swap/text-swap.js.map +1 -0
  1215. package/dist/components/textarea/index.d.ts +2 -0
  1216. package/dist/components/textarea/index.js +2 -0
  1217. package/dist/components/textarea/meta.js +17 -0
  1218. package/dist/components/textarea/meta.js.map +1 -0
  1219. package/dist/components/textarea/textarea.d.ts +43 -0
  1220. package/dist/components/textarea/textarea.d.ts.map +1 -0
  1221. package/dist/components/textarea/textarea.js +119 -0
  1222. package/dist/components/textarea/textarea.js.map +1 -0
  1223. package/dist/components/tick-progress/index.d.ts +2 -0
  1224. package/dist/components/tick-progress/index.js +2 -0
  1225. package/dist/components/tick-progress/meta.js +17 -0
  1226. package/dist/components/tick-progress/meta.js.map +1 -0
  1227. package/dist/components/tick-progress/tick-progress.d.ts +28 -0
  1228. package/dist/components/tick-progress/tick-progress.d.ts.map +1 -0
  1229. package/dist/components/tick-progress/tick-progress.js +151 -0
  1230. package/dist/components/tick-progress/tick-progress.js.map +1 -0
  1231. package/dist/components/tilt-card/index.d.ts +2 -0
  1232. package/dist/components/tilt-card/index.js +2 -0
  1233. package/dist/components/tilt-card/meta.js +17 -0
  1234. package/dist/components/tilt-card/meta.js.map +1 -0
  1235. package/dist/components/tilt-card/tilt-card.d.ts +36 -0
  1236. package/dist/components/tilt-card/tilt-card.d.ts.map +1 -0
  1237. package/dist/components/tilt-card/tilt-card.js +135 -0
  1238. package/dist/components/tilt-card/tilt-card.js.map +1 -0
  1239. package/dist/components/time-range-picker/time-range-picker.js +3 -3
  1240. package/dist/components/time-range-picker/time-range-picker.js.map +1 -1
  1241. package/dist/components/time-stack/index.d.ts +2 -0
  1242. package/dist/components/time-stack/index.js +2 -0
  1243. package/dist/components/time-stack/meta.js +17 -0
  1244. package/dist/components/time-stack/meta.js.map +1 -0
  1245. package/dist/components/time-stack/time-stack.d.ts +37 -0
  1246. package/dist/components/time-stack/time-stack.d.ts.map +1 -0
  1247. package/dist/components/time-stack/time-stack.js +253 -0
  1248. package/dist/components/time-stack/time-stack.js.map +1 -0
  1249. package/dist/components/toast/meta.js +1 -1
  1250. package/dist/components/toast/meta.js.map +1 -1
  1251. package/dist/components/toast/toast.d.ts +13 -4
  1252. package/dist/components/toast/toast.d.ts.map +1 -1
  1253. package/dist/components/toast/toast.js +34 -11
  1254. package/dist/components/toast/toast.js.map +1 -1
  1255. package/dist/components/todo-tower/index.d.ts +2 -0
  1256. package/dist/components/todo-tower/index.js +2 -0
  1257. package/dist/components/todo-tower/meta.js +17 -0
  1258. package/dist/components/todo-tower/meta.js.map +1 -0
  1259. package/dist/components/todo-tower/todo-tower.d.ts +38 -0
  1260. package/dist/components/todo-tower/todo-tower.d.ts.map +1 -0
  1261. package/dist/components/todo-tower/todo-tower.js +284 -0
  1262. package/dist/components/todo-tower/todo-tower.js.map +1 -0
  1263. package/dist/components/tooltip/meta.js +1 -1
  1264. package/dist/components/tooltip/meta.js.map +1 -1
  1265. package/dist/components/tooltip/tooltip.d.ts +4 -0
  1266. package/dist/components/tooltip/tooltip.d.ts.map +1 -1
  1267. package/dist/components/tooltip/tooltip.js +20 -4
  1268. package/dist/components/tooltip/tooltip.js.map +1 -1
  1269. package/dist/components/tweet-card/index.d.ts +2 -0
  1270. package/dist/components/tweet-card/index.js +2 -0
  1271. package/dist/components/tweet-card/meta.js +17 -0
  1272. package/dist/components/tweet-card/meta.js.map +1 -0
  1273. package/dist/components/tweet-card/tweet-card.d.ts +57 -0
  1274. package/dist/components/tweet-card/tweet-card.d.ts.map +1 -0
  1275. package/dist/components/tweet-card/tweet-card.js +243 -0
  1276. package/dist/components/tweet-card/tweet-card.js.map +1 -0
  1277. package/dist/components/typewriter-text/index.d.ts +2 -0
  1278. package/dist/components/typewriter-text/index.js +2 -0
  1279. package/dist/components/typewriter-text/meta.js +17 -0
  1280. package/dist/components/typewriter-text/meta.js.map +1 -0
  1281. package/dist/components/typewriter-text/typewriter-text.d.ts +33 -0
  1282. package/dist/components/typewriter-text/typewriter-text.d.ts.map +1 -0
  1283. package/dist/components/typewriter-text/typewriter-text.js +135 -0
  1284. package/dist/components/typewriter-text/typewriter-text.js.map +1 -0
  1285. package/dist/components/uptime-matrix/index.d.ts +2 -0
  1286. package/dist/components/uptime-matrix/index.js +2 -0
  1287. package/dist/components/uptime-matrix/meta.js +17 -0
  1288. package/dist/components/uptime-matrix/meta.js.map +1 -0
  1289. package/dist/components/uptime-matrix/uptime-matrix.d.ts +60 -0
  1290. package/dist/components/uptime-matrix/uptime-matrix.d.ts.map +1 -0
  1291. package/dist/components/uptime-matrix/uptime-matrix.js +303 -0
  1292. package/dist/components/uptime-matrix/uptime-matrix.js.map +1 -0
  1293. package/dist/index.d.ts +256 -18
  1294. package/dist/index.js +134 -10
  1295. package/dist/lib/styles.d.ts +16 -1
  1296. package/dist/lib/styles.d.ts.map +1 -1
  1297. package/dist/lib/styles.js +16 -1
  1298. package/dist/lib/styles.js.map +1 -1
  1299. package/dist/registry/blocks.d.ts.map +1 -1
  1300. package/dist/registry/blocks.js +95 -9
  1301. package/dist/registry/blocks.js.map +1 -1
  1302. package/dist/registry/components.d.ts.map +1 -1
  1303. package/dist/registry/components.js +278 -50
  1304. package/dist/registry/components.js.map +1 -1
  1305. package/dist/registry/schema.d.ts +9 -1
  1306. package/dist/registry/schema.d.ts.map +1 -1
  1307. package/dist/registry/schema.js +2 -1
  1308. package/dist/registry/schema.js.map +1 -1
  1309. package/package.json +6 -4
  1310. package/src/components/accordion/accordion.tsx +1 -1
  1311. package/src/components/account-menu/account-menu.tsx +338 -0
  1312. package/src/components/account-menu/index.ts +12 -0
  1313. package/src/components/account-menu/meta.ts +19 -0
  1314. package/src/components/action-node/action-node-spring.ts +34 -0
  1315. package/src/components/action-node/action-node.tsx +516 -0
  1316. package/src/components/action-node/index.ts +8 -0
  1317. package/src/components/action-node/meta.ts +21 -0
  1318. package/src/components/activity-feed/activity-feed.tsx +1 -1
  1319. package/src/components/ai-agent-plan/ai-agent-plan.tsx +0 -0
  1320. package/src/components/ai-agent-plan/index.ts +1 -0
  1321. package/src/components/ai-agent-plan/meta.ts +3 -1
  1322. package/src/components/ai-approval-request/ai-approval-request.tsx +103 -4
  1323. package/src/components/ai-approval-request/meta.ts +4 -1
  1324. package/src/components/ai-artifact/ai-artifact.tsx +203 -0
  1325. package/src/components/ai-artifact/index.ts +1 -0
  1326. package/src/components/ai-artifact/meta.ts +18 -0
  1327. package/src/components/ai-branch/ai-branch.tsx +222 -0
  1328. package/src/components/ai-branch/index.ts +11 -0
  1329. package/src/components/ai-branch/meta.ts +18 -0
  1330. package/src/components/ai-conversation/ai-conversation.tsx +142 -31
  1331. package/src/components/ai-conversation/index.ts +1 -0
  1332. package/src/components/ai-extraction-review/ai-extraction-review.tsx +1 -1
  1333. package/src/components/ai-loader/ai-loader.tsx +112 -0
  1334. package/src/components/ai-loader/index.ts +6 -0
  1335. package/src/components/ai-loader/meta.ts +18 -0
  1336. package/src/components/ai-message/ai-message.tsx +54 -9
  1337. package/src/components/ai-message/index.ts +2 -0
  1338. package/src/components/ai-message/meta.ts +2 -1
  1339. package/src/components/ai-prompt-input/ai-prompt-input.tsx +57 -19
  1340. package/src/components/ai-reasoning/ai-reasoning.tsx +192 -13
  1341. package/src/components/ai-reasoning/index.ts +1 -0
  1342. package/src/components/ai-reasoning/meta.ts +4 -2
  1343. package/src/components/ai-response/ai-response.tsx +12 -3
  1344. package/src/components/ai-response/index.ts +1 -0
  1345. package/src/components/ai-response/meta.ts +6 -3
  1346. package/src/components/ai-response/response-text.tsx +119 -0
  1347. package/src/components/ai-sources/ai-sources.tsx +191 -8
  1348. package/src/components/ai-sources/index.ts +1 -0
  1349. package/src/components/ai-sources/meta.ts +4 -2
  1350. package/src/components/ai-suggestions/ai-suggestions.tsx +130 -0
  1351. package/src/components/ai-suggestions/index.ts +6 -0
  1352. package/src/components/ai-suggestions/meta.ts +17 -0
  1353. package/src/components/ai-token-usage/ai-token-usage.tsx +288 -14
  1354. package/src/components/ai-token-usage/index.ts +5 -0
  1355. package/src/components/ai-token-usage/meta.ts +6 -2
  1356. package/src/components/ai-tool/ai-tool.tsx +125 -4
  1357. package/src/components/ai-tool/meta.ts +3 -1
  1358. package/src/components/animated-checklist/animated-checklist.tsx +324 -0
  1359. package/src/components/animated-checklist/index.ts +6 -0
  1360. package/src/components/animated-checklist/meta.ts +18 -0
  1361. package/src/components/app-stack/app-stack.tsx +414 -0
  1362. package/src/components/app-stack/index.ts +7 -0
  1363. package/src/components/app-stack/meta.ts +20 -0
  1364. package/src/components/aspect-morph/aspect-morph.tsx +272 -0
  1365. package/src/components/aspect-morph/index.ts +8 -0
  1366. package/src/components/aspect-morph/meta.ts +19 -0
  1367. package/src/components/assignee-picker/assignee-picker-spring.ts +33 -0
  1368. package/src/components/assignee-picker/assignee-picker.tsx +535 -0
  1369. package/src/components/assignee-picker/index.ts +6 -0
  1370. package/src/components/assignee-picker/meta.ts +21 -0
  1371. package/src/components/avatar-group/avatar-group.tsx +176 -0
  1372. package/src/components/avatar-group/index.ts +6 -0
  1373. package/src/components/avatar-group/meta.ts +18 -0
  1374. package/src/components/bar-loader/bar-loader.tsx +549 -0
  1375. package/src/components/bar-loader/index.ts +7 -0
  1376. package/src/components/bar-loader/meta.ts +18 -0
  1377. package/src/components/book/book.tsx +300 -0
  1378. package/src/components/book/index.ts +1 -0
  1379. package/src/components/book/meta.ts +18 -0
  1380. package/src/components/breadcrumb/breadcrumb.tsx +198 -0
  1381. package/src/components/breadcrumb/index.ts +11 -0
  1382. package/src/components/breadcrumb/meta.ts +20 -0
  1383. package/src/components/browser-tabs/browser-tabs-spring.ts +34 -0
  1384. package/src/components/browser-tabs/browser-tabs.tsx +608 -0
  1385. package/src/components/browser-tabs/index.ts +7 -0
  1386. package/src/components/browser-tabs/meta.ts +22 -0
  1387. package/src/components/button/button.tsx +57 -2
  1388. package/src/components/calendar/calendar.tsx +2 -2
  1389. package/src/components/canvas-toolbar/canvas-toolbar.tsx +457 -0
  1390. package/src/components/canvas-toolbar/index.ts +9 -0
  1391. package/src/components/canvas-toolbar/meta.ts +22 -0
  1392. package/src/components/card-spread/card-spread-layouts.ts +251 -0
  1393. package/src/components/card-spread/card-spread.tsx +415 -0
  1394. package/src/components/card-spread/index.ts +19 -0
  1395. package/src/components/card-spread/meta.ts +21 -0
  1396. package/src/components/card-stack/card-stack-layout.ts +100 -0
  1397. package/src/components/card-stack/card-stack.tsx +359 -0
  1398. package/src/components/card-stack/index.ts +1 -0
  1399. package/src/components/card-stack/meta.ts +20 -0
  1400. package/src/components/carousel-3d/carousel-3d.tsx +501 -0
  1401. package/src/components/carousel-3d/index.ts +7 -0
  1402. package/src/components/carousel-3d/meta.ts +20 -0
  1403. package/src/components/checkbox/checkbox.tsx +29 -1
  1404. package/src/components/code-block/code-block.tsx +11 -110
  1405. package/src/components/code-block/index.ts +4 -1
  1406. package/src/components/code-block/meta.ts +1 -1
  1407. package/src/components/collapsible/collapsible.tsx +63 -0
  1408. package/src/components/collapsible/index.ts +6 -0
  1409. package/src/components/collapsible/meta.ts +16 -0
  1410. package/src/components/combobox/combobox.tsx +167 -14
  1411. package/src/components/combobox/index.ts +1 -0
  1412. package/src/components/combobox/meta.ts +2 -1
  1413. package/src/components/command/command.tsx +1 -1
  1414. package/src/components/command-bar/command-bar.tsx +177 -0
  1415. package/src/components/command-bar/index.ts +1 -0
  1416. package/src/components/command-bar/meta.ts +17 -0
  1417. package/src/components/comment-bubble/comment-bubble.tsx +269 -0
  1418. package/src/components/comment-bubble/index.ts +6 -0
  1419. package/src/components/comment-bubble/meta.ts +18 -0
  1420. package/src/components/context-menu/context-menu.tsx +280 -0
  1421. package/src/components/context-menu/index.ts +21 -0
  1422. package/src/components/context-menu/meta.ts +19 -0
  1423. package/src/components/contribution-graph/contribution-graph.tsx +372 -0
  1424. package/src/components/contribution-graph/index.ts +6 -0
  1425. package/src/components/contribution-graph/meta.ts +19 -0
  1426. package/src/components/copy-button/copy-button.tsx +278 -0
  1427. package/src/components/copy-button/index.ts +6 -0
  1428. package/src/components/copy-button/meta.ts +19 -0
  1429. package/src/components/create-menu/create-menu.tsx +319 -0
  1430. package/src/components/create-menu/index.ts +7 -0
  1431. package/src/components/create-menu/meta.ts +21 -0
  1432. package/src/components/cursor-follow/cursor-follow.tsx +186 -0
  1433. package/src/components/cursor-follow/index.ts +1 -0
  1434. package/src/components/cursor-follow/meta.ts +19 -0
  1435. package/src/components/data-table/data-table.tsx +14 -3
  1436. package/src/components/dial/dial.tsx +308 -0
  1437. package/src/components/dial/index.ts +1 -0
  1438. package/src/components/dial/meta.ts +19 -0
  1439. package/src/components/dialog/dialog.tsx +80 -37
  1440. package/src/components/dialog/meta.ts +2 -1
  1441. package/src/components/diff-viewer/diff-viewer.tsx +160 -21
  1442. package/src/components/diff-viewer/meta.ts +4 -1
  1443. package/src/components/direction/direction.tsx +38 -0
  1444. package/src/components/direction/index.ts +1 -0
  1445. package/src/components/direction/meta.ts +19 -0
  1446. package/src/components/dither-area/dither-area.tsx +280 -0
  1447. package/src/components/dither-area/index.ts +9 -0
  1448. package/src/components/dither-area/meta.ts +18 -0
  1449. package/src/components/dither-bar/dither-bar.tsx +389 -0
  1450. package/src/components/dither-bar/index.ts +8 -0
  1451. package/src/components/dither-bar/meta.ts +19 -0
  1452. package/src/components/dither-canvas/canvas-mock.ts +143 -0
  1453. package/src/components/dither-canvas/dither-canvas.tsx +382 -0
  1454. package/src/components/dither-canvas/dither-engine.ts +354 -0
  1455. package/src/components/dither-canvas/dither-geometry.ts +295 -0
  1456. package/src/components/dither-canvas/dither-scrubber.tsx +244 -0
  1457. package/src/components/dither-canvas/index.ts +68 -0
  1458. package/src/components/dither-canvas/meta.ts +19 -0
  1459. package/src/components/dither-donut/dither-donut.tsx +377 -0
  1460. package/src/components/dither-donut/index.ts +7 -0
  1461. package/src/components/dither-donut/meta.ts +19 -0
  1462. package/src/components/dither-funnel/dither-funnel.tsx +273 -0
  1463. package/src/components/dither-funnel/index.ts +9 -0
  1464. package/src/components/dither-funnel/meta.ts +19 -0
  1465. package/src/components/dither-gauge/dither-gauge.tsx +279 -0
  1466. package/src/components/dither-gauge/index.ts +8 -0
  1467. package/src/components/dither-gauge/meta.ts +19 -0
  1468. package/src/components/dither-heatmap/dither-heatmap.tsx +453 -0
  1469. package/src/components/dither-heatmap/index.ts +10 -0
  1470. package/src/components/dither-heatmap/meta.ts +19 -0
  1471. package/src/components/dither-line/dither-line.tsx +244 -0
  1472. package/src/components/dither-line/index.ts +8 -0
  1473. package/src/components/dither-line/meta.ts +18 -0
  1474. package/src/components/dither-meter/dither-meter.tsx +299 -0
  1475. package/src/components/dither-meter/index.ts +8 -0
  1476. package/src/components/dither-meter/meta.ts +19 -0
  1477. package/src/components/dither-scatter/dither-scatter.tsx +317 -0
  1478. package/src/components/dither-scatter/index.ts +8 -0
  1479. package/src/components/dither-scatter/meta.ts +19 -0
  1480. package/src/components/dot-morph-button/dot-morph-button.tsx +86 -0
  1481. package/src/components/dot-morph-button/index.ts +5 -0
  1482. package/src/components/dot-morph-button/meta.ts +17 -0
  1483. package/src/components/dots-loader/dots-loader.tsx +451 -0
  1484. package/src/components/dots-loader/index.ts +7 -0
  1485. package/src/components/dots-loader/meta.ts +17 -0
  1486. package/src/components/drag-stepper/drag-stepper.tsx +367 -0
  1487. package/src/components/drag-stepper/index.ts +1 -0
  1488. package/src/components/drag-stepper/meta.ts +23 -0
  1489. package/src/components/drawer/drawer.tsx +78 -35
  1490. package/src/components/drawer/meta.ts +1 -1
  1491. package/src/components/dropdown-menu/dropdown-menu.tsx +61 -18
  1492. package/src/components/dropdown-menu/meta.ts +2 -1
  1493. package/src/components/effect-button/effect-button.tsx +310 -0
  1494. package/src/components/effect-button/index.ts +8 -0
  1495. package/src/components/effect-button/meta.ts +18 -0
  1496. package/src/components/escape-button/escape-button.tsx +232 -0
  1497. package/src/components/escape-button/index.ts +1 -0
  1498. package/src/components/escape-button/meta.ts +18 -0
  1499. package/src/components/expandable-cards/expandable-cards.tsx +435 -0
  1500. package/src/components/expandable-cards/index.ts +6 -0
  1501. package/src/components/expandable-cards/meta.ts +20 -0
  1502. package/src/components/expandable-list/expandable-list.tsx +260 -0
  1503. package/src/components/expandable-list/index.ts +6 -0
  1504. package/src/components/expandable-list/meta.ts +19 -0
  1505. package/src/components/expanding-search/expanding-search.tsx +244 -0
  1506. package/src/components/expanding-search/index.ts +5 -0
  1507. package/src/components/expanding-search/meta.ts +19 -0
  1508. package/src/components/exposure-slider/exposure-slider.tsx +351 -0
  1509. package/src/components/exposure-slider/index.ts +5 -0
  1510. package/src/components/exposure-slider/meta.ts +20 -0
  1511. package/src/components/file-upload/file-upload.tsx +134 -12
  1512. package/src/components/file-upload/meta.ts +2 -1
  1513. package/src/components/focus-blur-links/focus-blur-links.tsx +189 -0
  1514. package/src/components/focus-blur-links/index.ts +7 -0
  1515. package/src/components/focus-blur-links/meta.ts +18 -0
  1516. package/src/components/folding-frame/folding-frame.tsx +435 -0
  1517. package/src/components/folding-frame/index.ts +1 -0
  1518. package/src/components/folding-frame/meta.ts +21 -0
  1519. package/src/components/form/form.tsx +105 -13
  1520. package/src/components/form/meta.ts +2 -1
  1521. package/src/components/glass-bubble/glass-bubble.tsx +418 -0
  1522. package/src/components/glass-bubble/index.ts +9 -0
  1523. package/src/components/glass-bubble/meta.ts +20 -0
  1524. package/src/components/glow-card/glow-card.tsx +195 -0
  1525. package/src/components/glow-card/index.ts +7 -0
  1526. package/src/components/glow-card/meta.ts +18 -0
  1527. package/src/components/goo-ball/goo-ball.tsx +379 -0
  1528. package/src/components/goo-ball/index.ts +7 -0
  1529. package/src/components/goo-ball/meta.ts +19 -0
  1530. package/src/components/goo-tabs/goo-tabs.tsx +389 -0
  1531. package/src/components/goo-tabs/index.ts +11 -0
  1532. package/src/components/goo-tabs/meta.ts +20 -0
  1533. package/src/components/gooey-popover/gooey-popover.tsx +332 -0
  1534. package/src/components/gooey-popover/index.ts +1 -0
  1535. package/src/components/gooey-popover/meta.ts +20 -0
  1536. package/src/components/gradient-orb/gradient-orb.tsx +230 -0
  1537. package/src/components/gradient-orb/index.ts +6 -0
  1538. package/src/components/gradient-orb/meta.ts +17 -0
  1539. package/src/components/grid-loader/grid-loader.tsx +364 -0
  1540. package/src/components/grid-loader/index.ts +10 -0
  1541. package/src/components/grid-loader/meta.ts +17 -0
  1542. package/src/components/image-accordion/image-accordion.tsx +230 -0
  1543. package/src/components/image-accordion/index.ts +6 -0
  1544. package/src/components/image-accordion/meta.ts +20 -0
  1545. package/src/components/image-metadata/image-metadata.tsx +265 -0
  1546. package/src/components/image-metadata/index.ts +6 -0
  1547. package/src/components/image-metadata/meta.ts +19 -0
  1548. package/src/components/image-selector/image-selector.tsx +338 -0
  1549. package/src/components/image-selector/index.ts +6 -0
  1550. package/src/components/image-selector/meta.ts +20 -0
  1551. package/src/components/inline-confirm/index.ts +6 -0
  1552. package/src/components/inline-confirm/inline-confirm.tsx +363 -0
  1553. package/src/components/inline-confirm/meta.ts +18 -0
  1554. package/src/components/input/floating-label-input.tsx +110 -0
  1555. package/src/components/input/index.ts +5 -0
  1556. package/src/components/input/input.tsx +1 -1
  1557. package/src/components/input/meta.ts +3 -2
  1558. package/src/components/invite-carousel/carousel-controls.tsx +291 -0
  1559. package/src/components/invite-carousel/index.ts +8 -0
  1560. package/src/components/invite-carousel/invite-carousel.tsx +359 -0
  1561. package/src/components/invite-carousel/meta.ts +21 -0
  1562. package/src/components/island/index.ts +7 -0
  1563. package/src/components/island/island.tsx +162 -0
  1564. package/src/components/island/meta.ts +18 -0
  1565. package/src/components/liquid-toggle/index.ts +1 -0
  1566. package/src/components/liquid-toggle/liquid-toggle.tsx +254 -0
  1567. package/src/components/liquid-toggle/meta.ts +18 -0
  1568. package/src/components/log-viewer/log-viewer.tsx +2 -2
  1569. package/src/components/magnetic-button/index.ts +1 -0
  1570. package/src/components/magnetic-button/magnetic-button.tsx +218 -0
  1571. package/src/components/magnetic-button/meta.ts +18 -0
  1572. package/src/components/magnetic-select/index.ts +6 -0
  1573. package/src/components/magnetic-select/magnetic-select-spring.ts +33 -0
  1574. package/src/components/magnetic-select/magnetic-select.tsx +426 -0
  1575. package/src/components/magnetic-select/meta.ts +19 -0
  1576. package/src/components/magnify-dock/index.ts +7 -0
  1577. package/src/components/magnify-dock/magnify-dock.tsx +308 -0
  1578. package/src/components/magnify-dock/meta.ts +21 -0
  1579. package/src/components/marquee/index.ts +1 -0
  1580. package/src/components/marquee/marquee.tsx +215 -0
  1581. package/src/components/marquee/meta.ts +19 -0
  1582. package/src/components/meter/meter.tsx +1 -1
  1583. package/src/components/morph-button/index.ts +7 -0
  1584. package/src/components/morph-button/meta.ts +18 -0
  1585. package/src/components/morph-button/morph-button.tsx +390 -0
  1586. package/src/components/morph-surface/index.ts +7 -0
  1587. package/src/components/morph-surface/meta.ts +21 -0
  1588. package/src/components/morph-surface/morph-surface.tsx +367 -0
  1589. package/src/components/notification-badge/index.ts +6 -0
  1590. package/src/components/notification-badge/meta.ts +19 -0
  1591. package/src/components/notification-badge/notification-badge.tsx +183 -0
  1592. package/src/components/notify-button/index.ts +1 -0
  1593. package/src/components/notify-button/meta.ts +17 -0
  1594. package/src/components/notify-button/notify-button.tsx +194 -0
  1595. package/src/components/now-playing/index.ts +1 -0
  1596. package/src/components/now-playing/meta.ts +19 -0
  1597. package/src/components/now-playing/now-playing.tsx +474 -0
  1598. package/src/components/number-flow/index.ts +10 -0
  1599. package/src/components/number-flow/meta.ts +18 -0
  1600. package/src/components/number-flow/number-flow.tsx +330 -0
  1601. package/src/components/orb-face/index.ts +1 -0
  1602. package/src/components/orb-face/meta.ts +18 -0
  1603. package/src/components/orb-face/orb-face.tsx +431 -0
  1604. package/src/components/otp-input/index.ts +6 -0
  1605. package/src/components/otp-input/meta.ts +21 -0
  1606. package/src/components/otp-input/otp-input.tsx +407 -0
  1607. package/src/components/pagination/index.ts +1 -0
  1608. package/src/components/pagination/meta.ts +4 -2
  1609. package/src/components/pagination/pagination-indicator.tsx +95 -0
  1610. package/src/components/pagination/pagination.tsx +50 -5
  1611. package/src/components/palette-generator/index.ts +8 -0
  1612. package/src/components/palette-generator/meta.ts +17 -0
  1613. package/src/components/palette-generator/palette-generator.tsx +300 -0
  1614. package/src/components/permission-matrix/permission-matrix.tsx +4 -4
  1615. package/src/components/photo-stack/index.ts +1 -0
  1616. package/src/components/photo-stack/meta.ts +19 -0
  1617. package/src/components/photo-stack/photo-stack.tsx +310 -0
  1618. package/src/components/photo-tabs/index.ts +1 -0
  1619. package/src/components/photo-tabs/meta.ts +18 -0
  1620. package/src/components/photo-tabs/photo-tabs.tsx +180 -0
  1621. package/src/components/pixel-avatar/index.ts +1 -0
  1622. package/src/components/pixel-avatar/meta.ts +17 -0
  1623. package/src/components/pixel-avatar/pixel-avatar.tsx +249 -0
  1624. package/src/components/product-card/index.ts +1 -0
  1625. package/src/components/product-card/meta.ts +20 -0
  1626. package/src/components/product-card/product-card.tsx +313 -0
  1627. package/src/components/progress/meta.ts +2 -1
  1628. package/src/components/progress/progress.tsx +123 -27
  1629. package/src/components/pull-to-refresh/index.ts +7 -0
  1630. package/src/components/pull-to-refresh/meta.ts +20 -0
  1631. package/src/components/pull-to-refresh/pull-to-refresh.tsx +421 -0
  1632. package/src/components/radial-menu/index.ts +7 -0
  1633. package/src/components/radial-menu/meta.ts +22 -0
  1634. package/src/components/radial-menu/radial-menu.tsx +441 -0
  1635. package/src/components/radio-group/radio-group.tsx +12 -1
  1636. package/src/components/range-dial/index.ts +1 -0
  1637. package/src/components/range-dial/meta.ts +21 -0
  1638. package/src/components/range-dial/range-dial.tsx +428 -0
  1639. package/src/components/record-diff/record-diff.tsx +4 -4
  1640. package/src/components/reorder-list/index.ts +10 -0
  1641. package/src/components/reorder-list/meta.ts +21 -0
  1642. package/src/components/reorder-list/reorder-list.tsx +627 -0
  1643. package/src/components/reviews-carousel/carousel-controls.tsx +291 -0
  1644. package/src/components/reviews-carousel/index.ts +7 -0
  1645. package/src/components/reviews-carousel/meta.ts +21 -0
  1646. package/src/components/reviews-carousel/reviews-carousel.tsx +301 -0
  1647. package/src/components/rich-popover/index.ts +1 -0
  1648. package/src/components/rich-popover/meta.ts +18 -0
  1649. package/src/components/rich-popover/rich-popover.tsx +228 -0
  1650. package/src/components/ring-loader/index.ts +7 -0
  1651. package/src/components/ring-loader/meta.ts +17 -0
  1652. package/src/components/ring-loader/ring-loader.tsx +795 -0
  1653. package/src/components/scramble-text/index.ts +8 -0
  1654. package/src/components/scramble-text/meta.ts +17 -0
  1655. package/src/components/scramble-text/scramble-text.tsx +250 -0
  1656. package/src/components/scroll-reveal-text/index.ts +6 -0
  1657. package/src/components/scroll-reveal-text/meta.ts +18 -0
  1658. package/src/components/scroll-reveal-text/scroll-reveal-text.tsx +193 -0
  1659. package/src/components/scrubber/index.ts +1 -0
  1660. package/src/components/scrubber/meta.ts +20 -0
  1661. package/src/components/scrubber/scrubber.tsx +348 -0
  1662. package/src/components/select/meta.ts +2 -1
  1663. package/src/components/select/select.tsx +71 -24
  1664. package/src/components/selection-list/index.ts +6 -0
  1665. package/src/components/selection-list/meta.ts +21 -0
  1666. package/src/components/selection-list/selection-list-spring.ts +33 -0
  1667. package/src/components/selection-list/selection-list.tsx +497 -0
  1668. package/src/components/shader-transition/index.ts +21 -0
  1669. package/src/components/shader-transition/meta.ts +23 -0
  1670. package/src/components/shader-transition/shader-transition-engine.ts +396 -0
  1671. package/src/components/shader-transition/shader-transition-presets.ts +424 -0
  1672. package/src/components/shader-transition/shader-transition.tsx +470 -0
  1673. package/src/components/shader-transition/webgl-mock.ts +176 -0
  1674. package/src/components/shape-loader/index.ts +7 -0
  1675. package/src/components/shape-loader/meta.ts +17 -0
  1676. package/src/components/shape-loader/shape-loader-variants.tsx +717 -0
  1677. package/src/components/shape-loader/shape-loader.tsx +149 -0
  1678. package/src/components/sheet/meta.ts +1 -1
  1679. package/src/components/sheet/sheet.tsx +80 -34
  1680. package/src/components/shimmer-text/index.ts +7 -0
  1681. package/src/components/shimmer-text/meta.ts +18 -0
  1682. package/src/components/shimmer-text/shimmer-text.tsx +218 -0
  1683. package/src/components/sidebar/index.ts +19 -0
  1684. package/src/components/sidebar/meta.ts +25 -0
  1685. package/src/components/sidebar/sidebar.tsx +374 -0
  1686. package/src/components/skeleton/index.ts +1 -1
  1687. package/src/components/skeleton/meta.ts +2 -1
  1688. package/src/components/skeleton/skeleton.tsx +49 -7
  1689. package/src/components/slide-to-confirm/index.ts +6 -0
  1690. package/src/components/slide-to-confirm/meta.ts +20 -0
  1691. package/src/components/slide-to-confirm/slide-to-confirm.tsx +519 -0
  1692. package/src/components/slosh-slider/index.ts +6 -0
  1693. package/src/components/slosh-slider/meta.ts +20 -0
  1694. package/src/components/slosh-slider/slosh-slider.tsx +266 -0
  1695. package/src/components/social-selector/index.ts +6 -0
  1696. package/src/components/social-selector/meta.ts +18 -0
  1697. package/src/components/social-selector/social-selector.tsx +247 -0
  1698. package/src/components/star-count/index.ts +1 -0
  1699. package/src/components/star-count/meta.ts +18 -0
  1700. package/src/components/star-count/star-count.tsx +161 -0
  1701. package/src/components/stepper/index.ts +8 -0
  1702. package/src/components/stepper/meta.ts +20 -0
  1703. package/src/components/stepper/stepper.tsx +364 -0
  1704. package/src/components/swipe-carousel/carousel-controls.tsx +148 -0
  1705. package/src/components/swipe-carousel/index.ts +6 -0
  1706. package/src/components/swipe-carousel/meta.ts +21 -0
  1707. package/src/components/swipe-carousel/swipe-carousel.tsx +407 -0
  1708. package/src/components/switch/meta.ts +3 -1
  1709. package/src/components/switch/switch.tsx +69 -4
  1710. package/src/components/switchboard-card/index.ts +6 -0
  1711. package/src/components/switchboard-card/meta.ts +18 -0
  1712. package/src/components/switchboard-card/switchboard-card.tsx +312 -0
  1713. package/src/components/table/table.tsx +3 -3
  1714. package/src/components/tabs/index.ts +1 -0
  1715. package/src/components/tabs/meta.ts +3 -1
  1716. package/src/components/tabs/tabs.tsx +144 -4
  1717. package/src/components/tags-input/meta.ts +2 -1
  1718. package/src/components/tags-input/tags-input.tsx +123 -5
  1719. package/src/components/text-effect/index.ts +10 -0
  1720. package/src/components/text-effect/meta.ts +18 -0
  1721. package/src/components/text-effect/text-effect-presets.ts +305 -0
  1722. package/src/components/text-effect/text-effect.tsx +454 -0
  1723. package/src/components/text-loader/index.ts +7 -0
  1724. package/src/components/text-loader/meta.ts +17 -0
  1725. package/src/components/text-loader/text-loader.tsx +585 -0
  1726. package/src/components/text-swap/index.ts +9 -0
  1727. package/src/components/text-swap/meta.ts +20 -0
  1728. package/src/components/text-swap/text-rotate.tsx +76 -0
  1729. package/src/components/text-swap/text-swap.tsx +414 -0
  1730. package/src/components/textarea/index.ts +1 -0
  1731. package/src/components/textarea/meta.ts +21 -0
  1732. package/src/components/textarea/textarea.tsx +210 -0
  1733. package/src/components/tick-progress/index.ts +1 -0
  1734. package/src/components/tick-progress/meta.ts +19 -0
  1735. package/src/components/tick-progress/tick-progress.tsx +253 -0
  1736. package/src/components/tilt-card/index.ts +6 -0
  1737. package/src/components/tilt-card/meta.ts +18 -0
  1738. package/src/components/tilt-card/tilt-card.tsx +256 -0
  1739. package/src/components/time-range-picker/time-range-picker.tsx +3 -3
  1740. package/src/components/time-stack/index.ts +6 -0
  1741. package/src/components/time-stack/meta.ts +19 -0
  1742. package/src/components/time-stack/time-stack.tsx +385 -0
  1743. package/src/components/toast/meta.ts +2 -1
  1744. package/src/components/toast/toast.tsx +81 -15
  1745. package/src/components/todo-tower/index.ts +1 -0
  1746. package/src/components/todo-tower/meta.ts +18 -0
  1747. package/src/components/todo-tower/todo-tower.tsx +429 -0
  1748. package/src/components/tooltip/meta.ts +1 -1
  1749. package/src/components/tooltip/tooltip.tsx +39 -15
  1750. package/src/components/tweet-card/index.ts +11 -0
  1751. package/src/components/tweet-card/meta.ts +19 -0
  1752. package/src/components/tweet-card/tweet-card.tsx +372 -0
  1753. package/src/components/typewriter-text/index.ts +6 -0
  1754. package/src/components/typewriter-text/meta.ts +17 -0
  1755. package/src/components/typewriter-text/typewriter-text.tsx +214 -0
  1756. package/src/components/uptime-matrix/index.ts +11 -0
  1757. package/src/components/uptime-matrix/meta.ts +20 -0
  1758. package/src/components/uptime-matrix/uptime-matrix.tsx +443 -0
  1759. package/src/index.ts +114 -0
  1760. package/src/lib/styles.ts +16 -0
  1761. package/src/registry/blocks.ts +86 -0
  1762. package/src/registry/components.ts +228 -0
  1763. package/src/registry/schema.ts +9 -0
  1764. package/src/blocks/admin-users/admin-users.tsx +0 -251
  1765. package/src/blocks/admin-users/index.ts +0 -1
  1766. package/src/blocks/admin-users/meta.ts +0 -27
  1767. package/src/blocks/ai-chat/ai-chat.tsx +0 -280
  1768. package/src/blocks/ai-chat/index.ts +0 -7
  1769. package/src/blocks/ai-chat/meta.ts +0 -32
  1770. package/src/blocks/dashboard/dashboard.tsx +0 -192
  1771. package/src/blocks/dashboard/index.ts +0 -6
  1772. package/src/blocks/dashboard/meta.ts +0 -18
  1773. package/src/blocks/forgot-password/forgot-password.tsx +0 -158
  1774. package/src/blocks/forgot-password/index.ts +0 -1
  1775. package/src/blocks/forgot-password/meta.ts +0 -18
  1776. package/src/blocks/login/index.ts +0 -1
  1777. package/src/blocks/login/login.tsx +0 -178
  1778. package/src/blocks/login/meta.ts +0 -18
  1779. package/src/blocks/pricing/index.ts +0 -1
  1780. package/src/blocks/pricing/meta.ts +0 -18
  1781. package/src/blocks/pricing/pricing.tsx +0 -176
  1782. package/src/blocks/settings/index.ts +0 -6
  1783. package/src/blocks/settings/meta.ts +0 -29
  1784. package/src/blocks/settings/settings.tsx +0 -317
  1785. package/src/blocks/signup/index.ts +0 -1
  1786. package/src/blocks/signup/meta.ts +0 -18
  1787. package/src/blocks/signup/signup.tsx +0 -240
@@ -1 +1 @@
1
- {"version":3,"file":"data-table.js","names":["Table"],"sources":["../../../src/components/data-table/data-table.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n flexRender,\n type RowData,\n type Table as TanstackTable,\n type TableFeatures,\n} from \"@tanstack/react-table\";\nimport type { ComponentPropsWithRef, ReactNode } from \"react\";\n\nimport { Button } from \"@/components/button\";\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/components/dropdown-menu\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/select\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/table\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * Presentation for a TanStack Table instance.\n *\n * Deliberately not a component that takes `data` and `columns` and does\n * everything. Sorting, filtering, selection and pagination are the table\n * library's job and it does them well; wrapping them in props would re-expose\n * an API that already exists, badly, and block anything the wrapper did not\n * anticipate. The consumer owns the instance:\n *\n * const table = useTable({ features, columns, data });\n * <DataTable table={table} />\n *\n * ## How these are typed\n *\n * The table library's features are opt-in, and its types follow: a method like\n * `getCanSort` exists only when the sorting feature is enabled.\n *\n * The controls below therefore declare **the shape they need** rather than\n * being generic over feature flags. A column from a table without sorting does\n * not satisfy `SortableColumn`, so passing one is a compile error at the call\n * site — the guarantee we wanted, and it survives the library reshuffling its\n * internal feature types.\n *\n * `DataTable` itself has to render any table, so it uses the core API and\n * detects the optional extras with real type guards.\n */\n\n/* -------------------------------------------------------------------------- */\n/* Capability detection */\n/* -------------------------------------------------------------------------- */\n\ninterface WithSortState {\n getIsSorted: () => \"asc\" | \"desc\" | false;\n getCanSort: () => boolean;\n}\n\ninterface WithSize {\n getSize: () => number;\n}\n\ninterface WithSelection {\n getIsSelected: () => boolean;\n}\n\ninterface WithVisibility {\n getIsVisible: () => boolean;\n}\n\nfunction hasSortState(column: object): column is WithSortState {\n return \"getIsSorted\" in column && \"getCanSort\" in column;\n}\n\nfunction hasSize(header: object): header is WithSize {\n return \"getSize\" in header;\n}\n\nfunction hasSelection(row: object): row is WithSelection {\n return \"getIsSelected\" in row;\n}\n\nfunction hasVisibility(column: object): column is WithVisibility {\n return \"getIsVisible\" in column;\n}\n\n/**\n * Whether a column's cells should render.\n *\n * A table without the visibility feature has no notion of hidden columns, so\n * everything renders. With the feature on, this has to be honoured for cells as\n * well as headers — dropping a header while still rendering its cells shifts\n * every row out of alignment with the columns above it.\n */\nfunction isColumnVisible(column: object): boolean {\n return !hasVisibility(column) || column.getIsVisible();\n}\n\nfunction ariaSort(column: object): \"ascending\" | \"descending\" | \"none\" | undefined {\n if (!hasSortState(column)) return undefined;\n\n const sorted = column.getIsSorted();\n if (sorted === \"asc\") return \"ascending\";\n if (sorted === \"desc\") return \"descending\";\n return column.getCanSort() ? \"none\" : undefined;\n}\n\nfunction columnWidth(header: object): { width: number } | undefined {\n if (!hasSize(header)) return undefined;\n\n const size = header.getSize();\n return size ? { width: size } : undefined;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Table */\n/* -------------------------------------------------------------------------- */\n\nexport interface DataTableProps<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> extends Omit<ComponentPropsWithRef<\"table\">, \"children\"> {\n table: TanstackTable<TFeatures, TData>;\n /** Shown in place of rows when there are none. */\n empty?: ReactNode;\n}\n\nexport function DataTable<TFeatures extends TableFeatures, TData extends RowData>({\n table,\n empty,\n className,\n ...props\n}: DataTableProps<TFeatures, TData>) {\n const rows = table.getRowModel().rows;\n const columnCount = table.getAllLeafColumns().length;\n\n return (\n <div className=\"rounded-lg border border-border\">\n <Table className={cn(className)} {...props}>\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => (\n <TableHead\n key={header.id}\n colSpan={header.colSpan}\n style={columnWidth(header)}\n // Announces the current sort. Without it the arrow icon is the\n // only signal, which is no signal at all for a screen reader.\n aria-sort={ariaSort(header.column)}\n >\n {header.isPlaceholder\n ? null\n : flexRender(header.column.columnDef.header, header.getContext())}\n </TableHead>\n ))}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {rows.length === 0 ? (\n <TableRow className=\"hover:bg-transparent\">\n <TableCell colSpan={columnCount} className=\"h-32 p-0 text-center\">\n {empty ?? <span className=\"text-sm text-muted-foreground\">No results.</span>}\n </TableCell>\n </TableRow>\n ) : (\n rows.map((row) => (\n <TableRow\n key={row.id}\n data-state={hasSelection(row) && row.getIsSelected() ? \"selected\" : undefined}\n >\n {row\n .getAllCells()\n .filter((cell) => isColumnVisible(cell.column))\n .map((cell) => (\n <TableCell key={cell.id}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n ))}\n </TableRow>\n ))\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Sortable column header */\n/* -------------------------------------------------------------------------- */\n\n/**\n * The slice of a column a sortable header needs.\n *\n * A column from a table without the sorting feature does not have these\n * methods, so passing one is a compile error rather than a runtime crash.\n */\nexport interface SortableColumn {\n getCanSort: () => boolean;\n getIsSorted: () => \"asc\" | \"desc\" | false;\n toggleSorting: (desc?: boolean) => void;\n}\n\nexport interface DataTableColumnHeaderProps extends ComponentPropsWithRef<\"div\"> {\n column: SortableColumn;\n title: string;\n}\n\n/**\n * A sortable column header.\n *\n * Falls back to plain text when the column cannot be sorted, rather than\n * rendering a button that does nothing — a control that looks interactive and\n * is not is worse than no control.\n */\nexport function DataTableColumnHeader({\n column,\n title,\n className,\n ...props\n}: DataTableColumnHeaderProps) {\n if (!column.getCanSort()) {\n return (\n <div className={cn(\"text-xs font-medium\", className)} {...props}>\n {title}\n </div>\n );\n }\n\n const sorted = column.getIsSorted();\n\n return (\n <div className={cn(\"flex items-center\", className)} {...props}>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"-ml-2 h-7 gap-1 px-2 font-medium text-muted-foreground data-[state=open]:bg-accent\"\n >\n {title}\n <SortIcon direction={sorted === false ? undefined : sorted} />\n <span className=\"sr-only\">\n {sorted === \"asc\"\n ? `${title}, sorted ascending`\n : sorted === \"desc\"\n ? `${title}, sorted descending`\n : `${title}, not sorted`}\n </span>\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"start\">\n <DropdownMenuItem\n onSelect={() => {\n column.toggleSorting(false);\n }}\n >\n Sort ascending\n </DropdownMenuItem>\n <DropdownMenuItem\n onSelect={() => {\n column.toggleSorting(true);\n }}\n >\n Sort descending\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n );\n}\n\nfunction SortIcon({ direction }: { direction?: \"asc\" | \"desc\" }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\" className=\"size-3.5 opacity-70\">\n <path\n d={\n direction === \"asc\"\n ? \"m7 14 5-5 5 5\"\n : direction === \"desc\"\n ? \"m7 10 5 5 5-5\"\n : \"m8 10 4-4 4 4M8 14l4 4 4-4\"\n }\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Column visibility */\n/* -------------------------------------------------------------------------- */\n\n/** The slice of a table the column toggle needs. */\nexport interface HideableTable {\n getAllColumns: () => {\n id: string;\n getCanHide: () => boolean;\n getIsVisible: () => boolean;\n toggleVisibility: (visible?: boolean) => void;\n }[];\n}\n\nexport interface DataTableViewOptionsProps {\n table: HideableTable;\n label?: string;\n}\n\n/** Toggles column visibility. */\nexport function DataTableViewOptions({ table, label = \"Columns\" }: DataTableViewOptionsProps) {\n const columns = table.getAllColumns().filter((column) => column.getCanHide());\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" size=\"sm\">\n {label}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" className=\"w-44\">\n <DropdownMenuLabel>Toggle columns</DropdownMenuLabel>\n <DropdownMenuSeparator />\n {columns.map((column) => (\n <DropdownMenuCheckboxItem\n key={column.id}\n checked={column.getIsVisible()}\n onCheckedChange={(checked) => {\n column.toggleVisibility(checked === true);\n }}\n >\n {column.id}\n </DropdownMenuCheckboxItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Pagination */\n/* -------------------------------------------------------------------------- */\n\n/**\n * The slice of a table the page controls need.\n *\n * `state` is a property, not a `getState()` call — the table library moved to a\n * reactive state object, and reading it the old way fails at runtime rather\n * than at compile time.\n */\nexport interface PaginatedTable {\n state: { pagination: { pageIndex: number; pageSize: number } };\n getPageCount: () => number;\n setPageSize: (size: number) => void;\n previousPage: () => void;\n nextPage: () => void;\n getCanPreviousPage: () => boolean;\n getCanNextPage: () => boolean;\n}\n\nexport interface DataTablePaginationProps {\n table: PaginatedTable;\n pageSizes?: number[];\n /**\n * Replaces the page position on the left.\n *\n * A slot rather than a `showSelectionCount` flag: a selection count needs the\n * selection and filtering features, and demanding those here would break\n * every table that only paginates.\n */\n status?: ReactNode;\n}\n\n/**\n * Page controls for a table.\n *\n * The page position is a polite live region: paging replaces the rows in place,\n * and without an announcement a screen reader user gets no confirmation that\n * anything happened.\n */\nexport function DataTablePagination({\n table,\n pageSizes = [10, 20, 50, 100],\n status,\n}: DataTablePaginationProps) {\n const { pageIndex, pageSize } = table.state.pagination;\n const pageCount = table.getPageCount();\n\n return (\n <div className=\"flex flex-wrap items-center justify-between gap-4 px-1 py-3\">\n <div className=\"text-sm text-muted-foreground\" aria-live=\"polite\">\n {status ?? (\n <>\n Page {pageIndex + 1} of {Math.max(1, pageCount)}\n </>\n )}\n </div>\n\n <div className=\"flex items-center gap-4\">\n <div className=\"flex items-center gap-2\">\n <span className=\"text-sm text-muted-foreground\" id=\"rows-per-page\">\n Rows per page\n </span>\n <Select\n value={String(pageSize)}\n onValueChange={(value) => {\n table.setPageSize(Number(value));\n }}\n >\n <SelectTrigger triggerSize=\"sm\" className=\"w-18\" aria-labelledby=\"rows-per-page\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {pageSizes.map((size) => (\n <SelectItem key={size} value={String(size)}>\n {size}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n <div className=\"flex items-center gap-1\">\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n aria-label=\"Go to previous page\"\n disabled={!table.getCanPreviousPage()}\n onClick={() => {\n table.previousPage();\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"m15 18-6-6 6-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </Button>\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n aria-label=\"Go to next page\"\n disabled={!table.getCanNextPage()}\n onClick={() => {\n table.nextPage();\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"m9 18 6-6-6-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </Button>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"data-table.js","names":["Table"],"sources":["../../../src/components/data-table/data-table.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n flexRender,\n type RowData,\n type Table as TanstackTable,\n type TableFeatures,\n} from \"@tanstack/react-table\";\nimport type { ComponentPropsWithRef, ReactNode } from \"react\";\n\nimport { Button } from \"@/components/button\";\nimport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from \"@/components/dropdown-menu\";\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/select\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/table\";\nimport { mirrorForDirection } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * Presentation for a TanStack Table instance.\n *\n * Deliberately not a component that takes `data` and `columns` and does\n * everything. Sorting, filtering, selection and pagination are the table\n * library's job and it does them well; wrapping them in props would re-expose\n * an API that already exists, badly, and block anything the wrapper did not\n * anticipate. The consumer owns the instance:\n *\n * const table = useTable({ features, columns, data });\n * <DataTable table={table} />\n *\n * ## How these are typed\n *\n * The table library's features are opt-in, and its types follow: a method like\n * `getCanSort` exists only when the sorting feature is enabled.\n *\n * The controls below therefore declare **the shape they need** rather than\n * being generic over feature flags. A column from a table without sorting does\n * not satisfy `SortableColumn`, so passing one is a compile error at the call\n * site — the guarantee we wanted, and it survives the library reshuffling its\n * internal feature types.\n *\n * `DataTable` itself has to render any table, so it uses the core API and\n * detects the optional extras with real type guards.\n */\n\n/* -------------------------------------------------------------------------- */\n/* Capability detection */\n/* -------------------------------------------------------------------------- */\n\ninterface WithSortState {\n getIsSorted: () => \"asc\" | \"desc\" | false;\n getCanSort: () => boolean;\n}\n\ninterface WithSize {\n getSize: () => number;\n}\n\ninterface WithSelection {\n getIsSelected: () => boolean;\n}\n\ninterface WithVisibility {\n getIsVisible: () => boolean;\n}\n\nfunction hasSortState(column: object): column is WithSortState {\n return \"getIsSorted\" in column && \"getCanSort\" in column;\n}\n\nfunction hasSize(header: object): header is WithSize {\n return \"getSize\" in header;\n}\n\nfunction hasSelection(row: object): row is WithSelection {\n return \"getIsSelected\" in row;\n}\n\nfunction hasVisibility(column: object): column is WithVisibility {\n return \"getIsVisible\" in column;\n}\n\n/**\n * Whether a column's cells should render.\n *\n * A table without the visibility feature has no notion of hidden columns, so\n * everything renders. With the feature on, this has to be honoured for cells as\n * well as headers — dropping a header while still rendering its cells shifts\n * every row out of alignment with the columns above it.\n */\nfunction isColumnVisible(column: object): boolean {\n return !hasVisibility(column) || column.getIsVisible();\n}\n\nfunction ariaSort(column: object): \"ascending\" | \"descending\" | \"none\" | undefined {\n if (!hasSortState(column)) return undefined;\n\n const sorted = column.getIsSorted();\n if (sorted === \"asc\") return \"ascending\";\n if (sorted === \"desc\") return \"descending\";\n return column.getCanSort() ? \"none\" : undefined;\n}\n\nfunction columnWidth(header: object): { width: number } | undefined {\n if (!hasSize(header)) return undefined;\n\n const size = header.getSize();\n return size ? { width: size } : undefined;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Table */\n/* -------------------------------------------------------------------------- */\n\nexport interface DataTableProps<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> extends Omit<ComponentPropsWithRef<\"table\">, \"children\"> {\n table: TanstackTable<TFeatures, TData>;\n /** Shown in place of rows when there are none. */\n empty?: ReactNode;\n}\n\nexport function DataTable<TFeatures extends TableFeatures, TData extends RowData>({\n table,\n empty,\n className,\n ...props\n}: DataTableProps<TFeatures, TData>) {\n const rows = table.getRowModel().rows;\n const columnCount = table.getAllLeafColumns().length;\n\n return (\n <div className=\"rounded-lg border border-border\">\n <Table className={cn(className)} {...props}>\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => (\n <TableHead\n key={header.id}\n colSpan={header.colSpan}\n style={columnWidth(header)}\n // Announces the current sort. Without it the arrow icon is the\n // only signal, which is no signal at all for a screen reader.\n aria-sort={ariaSort(header.column)}\n >\n {header.isPlaceholder\n ? null\n : flexRender(header.column.columnDef.header, header.getContext())}\n </TableHead>\n ))}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {rows.length === 0 ? (\n <TableRow className=\"hover:bg-transparent\">\n <TableCell colSpan={columnCount} className=\"h-32 p-0 text-center\">\n {empty ?? <span className=\"text-sm text-muted-foreground\">No results.</span>}\n </TableCell>\n </TableRow>\n ) : (\n rows.map((row) => (\n <TableRow\n key={row.id}\n data-state={hasSelection(row) && row.getIsSelected() ? \"selected\" : undefined}\n >\n {row\n .getAllCells()\n .filter((cell) => isColumnVisible(cell.column))\n .map((cell) => (\n <TableCell key={cell.id}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n ))}\n </TableRow>\n ))\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Sortable column header */\n/* -------------------------------------------------------------------------- */\n\n/**\n * The slice of a column a sortable header needs.\n *\n * A column from a table without the sorting feature does not have these\n * methods, so passing one is a compile error rather than a runtime crash.\n */\nexport interface SortableColumn {\n getCanSort: () => boolean;\n getIsSorted: () => \"asc\" | \"desc\" | false;\n toggleSorting: (desc?: boolean) => void;\n}\n\nexport interface DataTableColumnHeaderProps extends ComponentPropsWithRef<\"div\"> {\n column: SortableColumn;\n title: string;\n}\n\n/**\n * A sortable column header.\n *\n * Falls back to plain text when the column cannot be sorted, rather than\n * rendering a button that does nothing — a control that looks interactive and\n * is not is worse than no control.\n */\nexport function DataTableColumnHeader({\n column,\n title,\n className,\n ...props\n}: DataTableColumnHeaderProps) {\n if (!column.getCanSort()) {\n return (\n <div className={cn(\"text-xs font-medium\", className)} {...props}>\n {title}\n </div>\n );\n }\n\n const sorted = column.getIsSorted();\n\n return (\n <div className={cn(\"flex items-center\", className)} {...props}>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"-ms-2 h-7 gap-1 px-2 font-medium text-muted-foreground data-[state=open]:bg-accent\"\n >\n {title}\n <SortIcon direction={sorted === false ? undefined : sorted} />\n <span className=\"sr-only\">\n {sorted === \"asc\"\n ? `${title}, sorted ascending`\n : sorted === \"desc\"\n ? `${title}, sorted descending`\n : `${title}, not sorted`}\n </span>\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"start\">\n <DropdownMenuItem\n onSelect={() => {\n column.toggleSorting(false);\n }}\n >\n Sort ascending\n </DropdownMenuItem>\n <DropdownMenuItem\n onSelect={() => {\n column.toggleSorting(true);\n }}\n >\n Sort descending\n </DropdownMenuItem>\n </DropdownMenuContent>\n </DropdownMenu>\n </div>\n );\n}\n\nfunction SortIcon({ direction }: { direction?: \"asc\" | \"desc\" }) {\n return (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\" className=\"size-3.5 opacity-70\">\n <path\n d={\n direction === \"asc\"\n ? \"m7 14 5-5 5 5\"\n : direction === \"desc\"\n ? \"m7 10 5 5 5-5\"\n : \"m8 10 4-4 4 4M8 14l4 4 4-4\"\n }\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Column visibility */\n/* -------------------------------------------------------------------------- */\n\n/** The slice of a table the column toggle needs. */\nexport interface HideableTable {\n getAllColumns: () => {\n id: string;\n getCanHide: () => boolean;\n getIsVisible: () => boolean;\n toggleVisibility: (visible?: boolean) => void;\n }[];\n}\n\nexport interface DataTableViewOptionsProps {\n table: HideableTable;\n label?: string;\n}\n\n/** Toggles column visibility. */\nexport function DataTableViewOptions({ table, label = \"Columns\" }: DataTableViewOptionsProps) {\n const columns = table.getAllColumns().filter((column) => column.getCanHide());\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <Button variant=\"outline\" size=\"sm\">\n {label}\n </Button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" className=\"w-44\">\n <DropdownMenuLabel>Toggle columns</DropdownMenuLabel>\n <DropdownMenuSeparator />\n {columns.map((column) => (\n <DropdownMenuCheckboxItem\n key={column.id}\n checked={column.getIsVisible()}\n onCheckedChange={(checked) => {\n column.toggleVisibility(checked === true);\n }}\n >\n {column.id}\n </DropdownMenuCheckboxItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Pagination */\n/* -------------------------------------------------------------------------- */\n\n/**\n * The slice of a table the page controls need.\n *\n * `state` is a property, not a `getState()` call — the table library moved to a\n * reactive state object, and reading it the old way fails at runtime rather\n * than at compile time.\n */\nexport interface PaginatedTable {\n state: { pagination: { pageIndex: number; pageSize: number } };\n getPageCount: () => number;\n setPageSize: (size: number) => void;\n previousPage: () => void;\n nextPage: () => void;\n getCanPreviousPage: () => boolean;\n getCanNextPage: () => boolean;\n}\n\nexport interface DataTablePaginationProps {\n table: PaginatedTable;\n pageSizes?: number[];\n /**\n * Replaces the page position on the left.\n *\n * A slot rather than a `showSelectionCount` flag: a selection count needs the\n * selection and filtering features, and demanding those here would break\n * every table that only paginates.\n */\n status?: ReactNode;\n}\n\n/**\n * Page controls for a table.\n *\n * The page position is a polite live region: paging replaces the rows in place,\n * and without an announcement a screen reader user gets no confirmation that\n * anything happened.\n */\nexport function DataTablePagination({\n table,\n pageSizes = [10, 20, 50, 100],\n status,\n}: DataTablePaginationProps) {\n const { pageIndex, pageSize } = table.state.pagination;\n const pageCount = table.getPageCount();\n\n return (\n <div className=\"flex flex-wrap items-center justify-between gap-4 px-1 py-3\">\n <div className=\"text-sm text-muted-foreground\" aria-live=\"polite\">\n {status ?? (\n <>\n Page {pageIndex + 1} of {Math.max(1, pageCount)}\n </>\n )}\n </div>\n\n <div className=\"flex items-center gap-4\">\n <div className=\"flex items-center gap-2\">\n <span className=\"text-sm text-muted-foreground\" id=\"rows-per-page\">\n Rows per page\n </span>\n <Select\n value={String(pageSize)}\n onValueChange={(value) => {\n table.setPageSize(Number(value));\n }}\n >\n <SelectTrigger triggerSize=\"sm\" className=\"w-18\" aria-labelledby=\"rows-per-page\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent>\n {pageSizes.map((size) => (\n <SelectItem key={size} value={String(size)}>\n {size}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n <div className=\"flex items-center gap-1\">\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n aria-label=\"Go to previous page\"\n disabled={!table.getCanPreviousPage()}\n onClick={() => {\n table.previousPage();\n }}\n >\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n aria-hidden=\"true\"\n className={mirrorForDirection}\n >\n <path\n d=\"m15 18-6-6 6-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </Button>\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n aria-label=\"Go to next page\"\n disabled={!table.getCanNextPage()}\n onClick={() => {\n table.nextPage();\n }}\n >\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n aria-hidden=\"true\"\n className={mirrorForDirection}\n >\n <path\n d=\"m9 18 6-6-6-6\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </Button>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { VariantProps } from "class-variance-authority";
2
+ import { ComponentPropsWithRef, ReactNode } from "react";
3
+ //#region src/components/dial/dial.d.ts
4
+ declare const dialVariants: (props?: ({
5
+ size?: "sm" | "md" | "lg" | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ interface DialProps extends Omit<ComponentPropsWithRef<"div">, "defaultValue" | "onChange" | "children">, VariantProps<typeof dialVariants> {
8
+ value?: number;
9
+ defaultValue?: number;
10
+ onValueChange?: (value: number) => void;
11
+ min?: number;
12
+ max?: number;
13
+ step?: number;
14
+ /** PageUp/PageDown distance. Defaults to a tenth of the range. */
15
+ pageStep?: number;
16
+ /** Tick marks around the dial, ends included. */
17
+ detents?: number;
18
+ /** Snap every input to the detents rather than to `step`. */
19
+ snapToDetents?: boolean;
20
+ /** Degrees of travel from min to max. */
21
+ sweep?: number;
22
+ /** The readout in the middle, and the default value text. */
23
+ format?: (value: number) => string;
24
+ /** Extra content under the readout, e.g. a unit or caption. */
25
+ caption?: ReactNode;
26
+ disabled?: boolean;
27
+ }
28
+ /** A rotary dial input with detents: drag, wheel or keys. */
29
+ declare function Dial({ className, size, value: valueProp, defaultValue, onValueChange, min, max, step, pageStep, detents, snapToDetents, sweep, format, caption, disabled, onKeyDown, onPointerDown, onPointerMove, onPointerUp, ref, ...props }: DialProps): import("react").JSX.Element;
30
+ //#endregion
31
+ export { Dial, DialProps, dialVariants };
32
+ //# sourceMappingURL=dial.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dial.d.ts","names":[],"sources":["../../../src/components/dial/dial.tsx"],"mappings":";;;cAmCM,eAAY;;6CAgBjB;UAegB,kBAEb,KAAK,yEACL,oBAAoB;EACtB;EACA;EACA,iBAAiB;EACjB;EACA;EACA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,UAAU;;EAEV,UAAU;EACV;;;iBAIc,OACd,WACA,MACA,OAAO,WACP,cACA,eACA,KACA,KACA,MACA,UACA,SACA,eACA,OACA,QACA,SACA,UACA,WACA,eACA,eACA,aACA,QACG,SACF,4BAAS,IAAA"}
@@ -0,0 +1,195 @@
1
+ "use client";
2
+ import { focusRing } from "../../lib/styles.js";
3
+ import { cn } from "../../lib/utils.js";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { cva } from "class-variance-authority";
6
+ import { useEffect, useRef, useState } from "react";
7
+ //#region src/components/dial/dial.tsx
8
+ const dialVariants = cva(cn("group/dial relative inline-grid shrink-0 touch-none place-items-center rounded-full select-none", "data-[disabled]:pointer-events-none data-[disabled]:opacity-55", focusRing), {
9
+ variants: { size: {
10
+ sm: "size-28 text-lg",
11
+ md: "size-40 text-2xl",
12
+ lg: "size-52 text-3xl"
13
+ } },
14
+ defaultVariants: { size: "md" }
15
+ });
16
+ /** Wheel distance, in pixels, per step. */
17
+ const WHEEL_STEP = 40;
18
+ function point(angle, radius) {
19
+ const radians = (angle - 90) * Math.PI / 180;
20
+ return `${(50 + radius * Math.cos(radians)).toFixed(2)} ${(50 + radius * Math.sin(radians)).toFixed(2)}`;
21
+ }
22
+ function arc(sweep, radius) {
23
+ const half = sweep / 2;
24
+ return `M ${point(-half, radius)} A ${String(radius)} ${String(radius)} 0 ${sweep > 180 ? 1 : 0} 1 ${point(half, radius)}`;
25
+ }
26
+ /** A rotary dial input with detents: drag, wheel or keys. */
27
+ function Dial({ className, size, value: valueProp, defaultValue, onValueChange, min = 0, max = 100, step = 1, pageStep, detents = 11, snapToDetents = false, sweep = 270, format = (value) => String(value), caption, disabled = false, onKeyDown, onPointerDown, onPointerMove, onPointerUp, ref, ...props }) {
28
+ const [inner, setInner] = useState(defaultValue ?? min);
29
+ const range = Math.max(Number.EPSILON, max - min);
30
+ const value = Math.min(max, Math.max(min, valueProp ?? inner));
31
+ const fraction = (value - min) / range;
32
+ const [dragging, setDragging] = useState(false);
33
+ const rootRef = useRef(null);
34
+ const wheel = useRef(0);
35
+ const ticks = Math.max(2, Math.round(detents));
36
+ const quantum = snapToDetents ? range / (ticks - 1) : step;
37
+ function snap(raw) {
38
+ const snapped = min + Math.round((raw - min) / quantum) * quantum;
39
+ const decimals = (String(quantum).split(".")[1] ?? "").length;
40
+ return Number(Math.min(max, Math.max(min, snapped)).toFixed(Math.min(10, decimals + 2)));
41
+ }
42
+ function commit(raw) {
43
+ const next = snap(raw);
44
+ if (next === value) return;
45
+ if (valueProp === void 0) setInner(next);
46
+ onValueChange?.(next);
47
+ }
48
+ useEffect(() => {
49
+ const element = rootRef.current;
50
+ if (!element || disabled) return;
51
+ function handleWheel(event) {
52
+ if (document.activeElement !== element) return;
53
+ event.preventDefault();
54
+ const delta = event.deltaMode === 0 ? event.deltaY : event.deltaY * WHEEL_STEP;
55
+ wheel.current -= delta;
56
+ const steps = Math.trunc(wheel.current / WHEEL_STEP);
57
+ if (steps === 0) return;
58
+ wheel.current -= steps * WHEEL_STEP;
59
+ commit(value + steps * quantum);
60
+ }
61
+ element.addEventListener("wheel", handleWheel, { passive: false });
62
+ return () => {
63
+ element.removeEventListener("wheel", handleWheel);
64
+ };
65
+ });
66
+ function fromPointer(event) {
67
+ const rect = event.currentTarget.getBoundingClientRect();
68
+ if (rect.width <= 0) return;
69
+ const dx = event.clientX - (rect.left + rect.width / 2);
70
+ const dy = event.clientY - (rect.top + rect.height / 2);
71
+ if (dx === 0 && dy === 0) return;
72
+ const angle = Math.atan2(dx, -dy) * 180 / Math.PI;
73
+ commit(min + Math.min(1, Math.max(0, (angle + sweep / 2) / sweep)) * range);
74
+ }
75
+ function handleKeyDown(event) {
76
+ onKeyDown?.(event);
77
+ if (disabled || event.defaultPrevented) return;
78
+ const page = pageStep ?? Math.max(quantum, range / 10);
79
+ const move = {
80
+ ArrowUp: quantum,
81
+ ArrowRight: quantum,
82
+ ArrowDown: -quantum,
83
+ ArrowLeft: -quantum,
84
+ PageUp: page,
85
+ PageDown: -page,
86
+ Home: min - value,
87
+ End: max - value
88
+ }[event.key];
89
+ if (move === void 0) return;
90
+ event.preventDefault();
91
+ commit(value + move);
92
+ }
93
+ const rotation = -sweep / 2 + fraction * sweep;
94
+ const valueText = format(value);
95
+ return /* @__PURE__ */ jsxs("div", {
96
+ ref: (node) => {
97
+ rootRef.current = node;
98
+ if (typeof ref === "function") ref(node);
99
+ else if (ref) ref.current = node;
100
+ },
101
+ role: "slider",
102
+ tabIndex: disabled ? -1 : 0,
103
+ "aria-valuemin": min,
104
+ "aria-valuemax": max,
105
+ "aria-valuenow": value,
106
+ "aria-valuetext": valueText,
107
+ "aria-disabled": disabled || void 0,
108
+ "data-slot": "dial",
109
+ "data-disabled": disabled || void 0,
110
+ "data-dragging": dragging || void 0,
111
+ className: cn(dialVariants({ size }), className),
112
+ onKeyDown: handleKeyDown,
113
+ onPointerDown: (event) => {
114
+ onPointerDown?.(event);
115
+ if (disabled || event.button !== 0) return;
116
+ event.currentTarget.setPointerCapture(event.pointerId);
117
+ setDragging(true);
118
+ fromPointer(event);
119
+ },
120
+ onPointerMove: (event) => {
121
+ onPointerMove?.(event);
122
+ if (dragging) fromPointer(event);
123
+ },
124
+ onPointerUp: (event) => {
125
+ onPointerUp?.(event);
126
+ setDragging(false);
127
+ },
128
+ onPointerCancel: () => {
129
+ setDragging(false);
130
+ },
131
+ ...props,
132
+ children: [
133
+ /* @__PURE__ */ jsxs("svg", {
134
+ viewBox: "0 0 100 100",
135
+ "aria-hidden": "true",
136
+ "data-slot": "dial-scale",
137
+ className: "absolute inset-0 size-full overflow-visible",
138
+ children: [
139
+ Array.from({ length: ticks }, (_, index) => {
140
+ const at = index / (ticks - 1);
141
+ const angle = -sweep / 2 + at * sweep;
142
+ return /* @__PURE__ */ jsx("line", {
143
+ "data-slot": "dial-detent",
144
+ "data-on": at <= fraction + 1e-9 || void 0,
145
+ x1: point(angle, 47).split(" ")[0],
146
+ y1: point(angle, 47).split(" ")[1],
147
+ x2: point(angle, 50).split(" ")[0],
148
+ y2: point(angle, 50).split(" ")[1],
149
+ strokeWidth: "1.2",
150
+ strokeLinecap: "round",
151
+ className: "stroke-muted-foreground/45 transition-[stroke] duration-[var(--duration-fast)] data-[on]:stroke-foreground"
152
+ }, index);
153
+ }),
154
+ /* @__PURE__ */ jsx("path", {
155
+ d: arc(sweep, 42),
156
+ fill: "none",
157
+ strokeWidth: "3",
158
+ strokeLinecap: "round",
159
+ className: "stroke-foreground/12"
160
+ }),
161
+ /* @__PURE__ */ jsx("path", {
162
+ d: arc(sweep, 42),
163
+ fill: "none",
164
+ strokeWidth: "3",
165
+ strokeLinecap: "round",
166
+ pathLength: 100,
167
+ strokeDasharray: `${(fraction * 100).toFixed(3)} 100`,
168
+ "data-slot": "dial-arc",
169
+ className: cn("stroke-primary transition-[stroke-dasharray] duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]", "group-data-[dragging]/dial:transition-none")
170
+ })
171
+ ]
172
+ }),
173
+ /* @__PURE__ */ jsx("div", {
174
+ "aria-hidden": "true",
175
+ "data-slot": "dial-knob",
176
+ className: cn("absolute inset-[18%] rounded-full bg-card shadow-[inset_0_0_0_1px_var(--color-border),0_1px_3px_color-mix(in_oklab,var(--color-foreground)_14%,transparent)]", "transition-[rotate] duration-[var(--duration-normal)] ease-[var(--ease-overshoot)]", "group-data-[dragging]/dial:transition-none"),
177
+ style: { rotate: `${rotation.toFixed(3)}deg` },
178
+ children: /* @__PURE__ */ jsx("span", { className: "absolute top-[7%] left-1/2 h-[16%] w-[5%] -translate-x-1/2 rounded-full bg-foreground" })
179
+ }),
180
+ /* @__PURE__ */ jsxs("div", {
181
+ "aria-hidden": "true",
182
+ "data-slot": "dial-readout",
183
+ className: "pointer-events-none relative flex flex-col items-center leading-none font-medium tabular-nums",
184
+ children: [valueText, caption ? /* @__PURE__ */ jsx("span", {
185
+ className: "mt-1 text-[0.45em] font-normal text-muted-foreground",
186
+ children: caption
187
+ }) : null]
188
+ })
189
+ ]
190
+ });
191
+ }
192
+ //#endregion
193
+ export { Dial, dialVariants };
194
+
195
+ //# sourceMappingURL=dial.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dial.js","names":[],"sources":["../../../src/components/dial/dial.tsx"],"sourcesContent":["\"use client\";\n\n// Original design (pattern inspired by bencho Wheel; no code referenced).\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n useEffect,\n useRef,\n useState,\n type ComponentPropsWithRef,\n type KeyboardEvent,\n type PointerEvent,\n type ReactNode,\n} from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/*\n * A rotary dial: a knob with a pointer notch inside an arc that fills to the\n * value, ringed by detent ticks.\n *\n * The dial itself is the role=\"slider\" element, so aria-label and the value\n * attributes land where the role is. It turns with the keyboard (arrows by a\n * step, PageUp/PageDown by a page, Home/End), by dragging (the notch points\n * at the pointer — absolute, so there is nothing to \"wind\"), and by the wheel\n * while it has focus (never on mere hover, so it cannot steal page scroll).\n * Every input snaps to `step`, or to the detents with `snapToDetents`.\n *\n * Clockwise is \"more\" in every language, so the dial does not mirror in\n * right-to-left layouts, and the arrow keys are not swapped either.\n *\n * Motion is a CSS transition on the knob's rotation, dropped while dragging\n * so it tracks the pointer 1:1; reduced motion collapses it.\n */\n\nconst dialVariants = cva(\n cn(\n \"group/dial relative inline-grid shrink-0 touch-none place-items-center rounded-full select-none\",\n \"data-[disabled]:pointer-events-none data-[disabled]:opacity-55\",\n focusRing,\n ),\n {\n variants: {\n size: {\n sm: \"size-28 text-lg\",\n md: \"size-40 text-2xl\",\n lg: \"size-52 text-3xl\",\n },\n },\n defaultVariants: { size: \"md\" },\n },\n);\n\n/** Wheel distance, in pixels, per step. */\nconst WHEEL_STEP = 40;\n\nfunction point(angle: number, radius: number): string {\n const radians = ((angle - 90) * Math.PI) / 180;\n return `${(50 + radius * Math.cos(radians)).toFixed(2)} ${(50 + radius * Math.sin(radians)).toFixed(2)}`;\n}\n\nfunction arc(sweep: number, radius: number): string {\n const half = sweep / 2;\n return `M ${point(-half, radius)} A ${String(radius)} ${String(radius)} 0 ${sweep > 180 ? 1 : 0} 1 ${point(half, radius)}`;\n}\n\nexport interface DialProps\n extends\n Omit<ComponentPropsWithRef<\"div\">, \"defaultValue\" | \"onChange\" | \"children\">,\n VariantProps<typeof dialVariants> {\n value?: number;\n defaultValue?: number;\n onValueChange?: (value: number) => void;\n min?: number;\n max?: number;\n step?: number;\n /** PageUp/PageDown distance. Defaults to a tenth of the range. */\n pageStep?: number;\n /** Tick marks around the dial, ends included. */\n detents?: number;\n /** Snap every input to the detents rather than to `step`. */\n snapToDetents?: boolean;\n /** Degrees of travel from min to max. */\n sweep?: number;\n /** The readout in the middle, and the default value text. */\n format?: (value: number) => string;\n /** Extra content under the readout, e.g. a unit or caption. */\n caption?: ReactNode;\n disabled?: boolean;\n}\n\n/** A rotary dial input with detents: drag, wheel or keys. */\nexport function Dial({\n className,\n size,\n value: valueProp,\n defaultValue,\n onValueChange,\n min = 0,\n max = 100,\n step = 1,\n pageStep,\n detents = 11,\n snapToDetents = false,\n sweep = 270,\n format = (value) => String(value),\n caption,\n disabled = false,\n onKeyDown,\n onPointerDown,\n onPointerMove,\n onPointerUp,\n ref,\n ...props\n}: DialProps) {\n const [inner, setInner] = useState(defaultValue ?? min);\n const range = Math.max(Number.EPSILON, max - min);\n const value = Math.min(max, Math.max(min, valueProp ?? inner));\n const fraction = (value - min) / range;\n const [dragging, setDragging] = useState(false);\n const rootRef = useRef<HTMLDivElement | null>(null);\n const wheel = useRef(0);\n const ticks = Math.max(2, Math.round(detents));\n const quantum = snapToDetents ? range / (ticks - 1) : step;\n\n function snap(raw: number): number {\n const snapped = min + Math.round((raw - min) / quantum) * quantum;\n const decimals = (String(quantum).split(\".\")[1] ?? \"\").length;\n return Number(Math.min(max, Math.max(min, snapped)).toFixed(Math.min(10, decimals + 2)));\n }\n\n function commit(raw: number) {\n const next = snap(raw);\n if (next === value) return;\n if (valueProp === undefined) setInner(next);\n onValueChange?.(next);\n }\n\n // The wheel needs a non-passive listener to keep the page still, and only\n // acts while the dial has focus. Re-attached each render so it always sees\n // the current value; attaching a listener is cheap.\n useEffect(() => {\n const element = rootRef.current;\n if (!element || disabled) return;\n function handleWheel(event: WheelEvent) {\n if (document.activeElement !== element) return;\n event.preventDefault();\n const delta = event.deltaMode === 0 ? event.deltaY : event.deltaY * WHEEL_STEP;\n wheel.current -= delta;\n const steps = Math.trunc(wheel.current / WHEEL_STEP);\n if (steps === 0) return;\n wheel.current -= steps * WHEEL_STEP;\n commit(value + steps * quantum);\n }\n element.addEventListener(\"wheel\", handleWheel, { passive: false });\n return () => {\n element.removeEventListener(\"wheel\", handleWheel);\n };\n });\n\n function fromPointer(event: PointerEvent<HTMLDivElement>) {\n const rect = event.currentTarget.getBoundingClientRect();\n if (rect.width <= 0) return;\n const dx = event.clientX - (rect.left + rect.width / 2);\n const dy = event.clientY - (rect.top + rect.height / 2);\n if (dx === 0 && dy === 0) return;\n // Degrees clockwise from twelve o'clock, in (−180, 180].\n const angle = (Math.atan2(dx, -dy) * 180) / Math.PI;\n const turned = Math.min(1, Math.max(0, (angle + sweep / 2) / sweep));\n commit(min + turned * range);\n }\n\n function handleKeyDown(event: KeyboardEvent<HTMLDivElement>) {\n onKeyDown?.(event);\n if (disabled || event.defaultPrevented) return;\n const page = pageStep ?? Math.max(quantum, range / 10);\n const moves: Record<string, number> = {\n ArrowUp: quantum,\n ArrowRight: quantum,\n ArrowDown: -quantum,\n ArrowLeft: -quantum,\n PageUp: page,\n PageDown: -page,\n Home: min - value,\n End: max - value,\n };\n const move = moves[event.key];\n if (move === undefined) return;\n event.preventDefault();\n commit(value + move);\n }\n\n const rotation = -sweep / 2 + fraction * sweep;\n const valueText = format(value);\n\n return (\n <div\n ref={(node) => {\n rootRef.current = node;\n if (typeof ref === \"function\") ref(node);\n else if (ref) ref.current = node;\n }}\n role=\"slider\"\n tabIndex={disabled ? -1 : 0}\n aria-valuemin={min}\n aria-valuemax={max}\n aria-valuenow={value}\n aria-valuetext={valueText}\n aria-disabled={disabled || undefined}\n data-slot=\"dial\"\n data-disabled={disabled || undefined}\n data-dragging={dragging || undefined}\n className={cn(dialVariants({ size }), className)}\n onKeyDown={handleKeyDown}\n onPointerDown={(event) => {\n onPointerDown?.(event);\n if (disabled || event.button !== 0) return;\n event.currentTarget.setPointerCapture(event.pointerId);\n setDragging(true);\n fromPointer(event);\n }}\n onPointerMove={(event) => {\n onPointerMove?.(event);\n if (dragging) fromPointer(event);\n }}\n onPointerUp={(event) => {\n onPointerUp?.(event);\n setDragging(false);\n }}\n onPointerCancel={() => {\n setDragging(false);\n }}\n {...props}\n >\n <svg\n viewBox=\"0 0 100 100\"\n aria-hidden=\"true\"\n data-slot=\"dial-scale\"\n className=\"absolute inset-0 size-full overflow-visible\"\n >\n {Array.from({ length: ticks }, (_, index) => {\n const at = index / (ticks - 1);\n const angle = -sweep / 2 + at * sweep;\n return (\n <line\n key={index}\n data-slot=\"dial-detent\"\n data-on={at <= fraction + 1e-9 || undefined}\n x1={point(angle, 47).split(\" \")[0]}\n y1={point(angle, 47).split(\" \")[1]}\n x2={point(angle, 50).split(\" \")[0]}\n y2={point(angle, 50).split(\" \")[1]}\n strokeWidth=\"1.2\"\n strokeLinecap=\"round\"\n className=\"stroke-muted-foreground/45 transition-[stroke] duration-[var(--duration-fast)] data-[on]:stroke-foreground\"\n />\n );\n })}\n <path\n d={arc(sweep, 42)}\n fill=\"none\"\n strokeWidth=\"3\"\n strokeLinecap=\"round\"\n className=\"stroke-foreground/12\"\n />\n <path\n d={arc(sweep, 42)}\n fill=\"none\"\n strokeWidth=\"3\"\n strokeLinecap=\"round\"\n pathLength={100}\n strokeDasharray={`${(fraction * 100).toFixed(3)} 100`}\n data-slot=\"dial-arc\"\n className={cn(\n \"stroke-primary transition-[stroke-dasharray] duration-[var(--duration-normal)] ease-[var(--ease-out-quint)]\",\n \"group-data-[dragging]/dial:transition-none\",\n )}\n />\n </svg>\n <div\n aria-hidden=\"true\"\n data-slot=\"dial-knob\"\n className={cn(\n \"absolute inset-[18%] rounded-full bg-card shadow-[inset_0_0_0_1px_var(--color-border),0_1px_3px_color-mix(in_oklab,var(--color-foreground)_14%,transparent)]\",\n \"transition-[rotate] duration-[var(--duration-normal)] ease-[var(--ease-overshoot)]\",\n \"group-data-[dragging]/dial:transition-none\",\n )}\n style={{ rotate: `${rotation.toFixed(3)}deg` }}\n >\n <span className=\"absolute top-[7%] left-1/2 h-[16%] w-[5%] -translate-x-1/2 rounded-full bg-foreground\" />\n </div>\n <div\n aria-hidden=\"true\"\n data-slot=\"dial-readout\"\n className=\"pointer-events-none relative flex flex-col items-center leading-none font-medium tabular-nums\"\n >\n {valueText}\n {caption ? (\n <span className=\"mt-1 text-[0.45em] font-normal text-muted-foreground\">\n {caption}\n </span>\n ) : null}\n </div>\n </div>\n );\n}\n\nexport { dialVariants };\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Dial, DialProps, dialVariants } from "./dial.js";
2
+ export { Dial, type DialProps, dialVariants };
@@ -0,0 +1,2 @@
1
+ import { Dial, dialVariants } from "./dial.js";
2
+ export { Dial, dialVariants };
@@ -0,0 +1,17 @@
1
+ import { defineMeta } from "../../registry/schema.js";
2
+ //#region src/components/dial/meta.ts
3
+ const meta = defineMeta({
4
+ name: "dial",
5
+ title: "Dial",
6
+ description: "A rotary dial input — a knob inside a filling arc with detent ticks — turned by drag, wheel or keys.",
7
+ category: "form",
8
+ status: "beta",
9
+ dependencies: ["class-variance-authority"],
10
+ registryDependencies: [],
11
+ files: ["dial.tsx"],
12
+ a11y: "The dial is the role=\"slider\" element (name it with aria-label or aria-labelledby), with aria-valuetext from `format`. Arrow keys step, PageUp/PageDown move a page, Home/End go to the ends. Dragging points the notch at the pointer; the wheel turns it only while it has focus, so it never steals page scroll. Clockwise means more in every language, so neither the dial nor its arrow keys mirror in right-to-left layouts. The knob's rotation settles instantly under reduced motion."
13
+ });
14
+ //#endregion
15
+ export { meta };
16
+
17
+ //# sourceMappingURL=meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/dial/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"dial\",\n title: \"Dial\",\n description:\n \"A rotary dial input — a knob inside a filling arc with detent ticks — turned by drag, wheel or keys.\",\n category: \"form\",\n status: \"beta\",\n dependencies: [\"class-variance-authority\"],\n registryDependencies: [],\n files: [\"dial.tsx\"],\n a11y:\n 'The dial is the role=\"slider\" element (name it with aria-label or aria-labelledby), with aria-valuetext ' +\n \"from `format`. Arrow keys step, PageUp/PageDown move a page, Home/End go to the ends. Dragging points the \" +\n \"notch at the pointer; the wheel turns it only while it has focus, so it never steals page scroll. \" +\n \"Clockwise means more in every language, so neither the dial nor its arrow keys mirror in right-to-left \" +\n \"layouts. The knob's rotation settles instantly under reduced motion.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aACE;CACF,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,0BAA0B;CACzC,sBAAsB,CAAC;CACvB,OAAO,CAAC,UAAU;CAClB,MACE;AAKJ,CAAC"}
@@ -17,8 +17,15 @@ declare function DialogOverlay({ className, ...props }: DialogOverlayProps): imp
17
17
  interface DialogContentProps extends ComponentPropsWithRef<typeof Dialog.Content> {
18
18
  /** Renders the built-in close button. Turn off to supply your own. */
19
19
  showCloseButton?: boolean;
20
+ /**
21
+ * How the dialog enters. `default` fades and rises into place. `spring` pops
22
+ * in with a slight overshoot and then brings its sections — header, body,
23
+ * footer — in one after another. Both stop under reduced motion, and both
24
+ * leave the same way.
25
+ */
26
+ animation?: "default" | "spring";
20
27
  }
21
- declare function DialogContent({ className, children, showCloseButton, ...props }: DialogContentProps): import("react").JSX.Element;
28
+ declare function DialogContent({ className, children, showCloseButton, animation, ...props }: DialogContentProps): import("react").JSX.Element;
22
29
  declare function DialogHeader({ className, ...props }: ComponentPropsWithRef<"div">): import("react").JSX.Element;
23
30
  declare function DialogFooter({ className, ...props }: ComponentPropsWithRef<"div">): import("react").JSX.Element;
24
31
  type DialogTitleProps = ComponentPropsWithRef<typeof Dialog.Title>;
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.d.ts","names":[],"sources":["../../../src/components/dialog/dialog.tsx"],"mappings":";;;;;;;;;;cAea,0BAAM,GAAA,OAAA;cACN,+BAAa,0BAAA,OAAA,qCAAA,cAAA;cACb,8BAAY,GAAA,OAAA;cACZ,6BAAW,0BAAA,OAAA,mCAAA,cAAA;KAEZ,qBAAqB,6BAA6B,OAAgB;iBAE9D,gBAAgB,cAAc,SAAS,qCAAkB,IAAA;UAcxD,2BAA2B,6BACnC,OAAgB;;EAGvB;;iBAGc,gBACd,WACA,UACA,oBACG,SACF,qCAAkB,IAAA;iBAyCL,eAAe,cAAc,SAAS,+CAA4B,IAAA;iBAUlE,eAAe,cAAc,SAAS,+CAA4B,IAAA;KAUtE,mBAAmB,6BAA6B,OAAgB;iBAE5D,cAAc,cAAc,SAAS,mCAAgB,IAAA;KAUzD,yBAAyB,6BAA6B,OAAgB;iBAElE,oBAAoB,cAAc,SAAS,yCAAsB,IAAA"}
1
+ {"version":3,"file":"dialog.d.ts","names":[],"sources":["../../../src/components/dialog/dialog.tsx"],"mappings":";;;;;;;;;;cAgBa,0BAAM,GAAA,OAAA;cACN,+BAAa,0BAAA,OAAA,qCAAA,cAAA;cACb,8BAAY,GAAA,OAAA;cACZ,6BAAW,0BAAA,OAAA,mCAAA,cAAA;KAEZ,qBAAqB,6BAA6B,OAAgB;iBAE9D,gBAAgB,cAAc,SAAS,qCAAkB,IAAA;UAkCxD,2BAA2B,6BACnC,OAAgB;;EAGvB;;;;;;;EAOA;;iBAGc,gBACd,WACA,UACA,iBACA,cACG,SACF,qCAAkB,IAAA;iBAuDL,eAAe,cAAc,SAAS,+CAA4B,IAAA;iBAUlE,eAAe,cAAc,SAAS,+CAA4B,IAAA;KAUtE,mBAAmB,6BAA6B,OAAgB;iBAE5D,cAAc,cAAc,SAAS,mCAAgB,IAAA;KAUzD,yBAAyB,6BAA6B,OAAgB;iBAElE,oBAAoB,cAAc,SAAS,yCAAsB,IAAA"}
@@ -2,7 +2,7 @@
2
2
  import { focusRing } from "../../lib/styles.js";
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { Dialog } from "radix-ui";
5
- import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
6
6
  //#region src/components/dialog/dialog.tsx
7
7
  /**
8
8
  * A modal window that interrupts the user to gather a response.
@@ -22,15 +22,32 @@ function DialogOverlay({ className, ...props }) {
22
22
  ...props
23
23
  });
24
24
  }
25
- function DialogContent({ className, children, showCloseButton = true, ...props }) {
26
- return /* @__PURE__ */ jsxs(DialogPortal, { children: [/* @__PURE__ */ jsx(DialogOverlay, {}), /* @__PURE__ */ jsxs(Dialog.Content, {
25
+ const PREFIX = "dowel-dialog";
26
+ /** Each section of a spring dialog arrives 60ms after the one above it. */
27
+ const STAGGER_STEP_MS = 60;
28
+ const SPRING_CHILD = `[data-slot=dialog-content][data-animation=spring][data-state=open]>:not([data-slot=dialog-close])`;
29
+ const STYLES = `
30
+ @keyframes ${PREFIX}-spring-in{from{opacity:0;transform:translateY(.5rem) scale(.95)}}
31
+ @keyframes ${PREFIX}-section-in{from{opacity:0;transform:translateY(8px)}}
32
+ ${SPRING_CHILD}{animation:${PREFIX}-section-in calc(250ms * var(--motion-scale)) var(--ease-out-quint) both}
33
+ ${Array.from({ length: 5 }, (_, i) => `${SPRING_CHILD}:nth-child(${String(i + 2)}){animation-delay:calc(${String((i + 1) * STAGGER_STEP_MS)}ms * var(--motion-scale))}`).join("\n")}
34
+ ${SPRING_CHILD}:nth-child(n+${String(7)}){animation-delay:calc(${String(360)}ms * var(--motion-scale))}
35
+ `;
36
+ function DialogContent({ className, children, showCloseButton = true, animation = "default", ...props }) {
37
+ const spring = animation === "spring";
38
+ return /* @__PURE__ */ jsxs(Fragment, { children: [spring ? /* @__PURE__ */ jsx("style", {
39
+ href: PREFIX,
40
+ precedence: "dowel",
41
+ children: STYLES
42
+ }) : null, /* @__PURE__ */ jsxs(DialogPortal, { children: [/* @__PURE__ */ jsx(DialogOverlay, {}), /* @__PURE__ */ jsxs(Dialog.Content, {
27
43
  "data-slot": "dialog-content",
28
- className: cn("fixed top-1/2 left-1/2 z-[var(--z-modal)] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 -translate-y-1/2", "grid gap-4 rounded-xl border border-border bg-card p-6 text-card-foreground shadow-xl", "data-[state=closed]:animate-dialog-out data-[state=open]:animate-dialog-in", className),
44
+ "data-animation": spring ? "spring" : void 0,
45
+ className: cn("fixed top-1/2 left-1/2 z-[var(--z-modal)] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 -translate-y-1/2", "grid gap-4 rounded-xl border border-border bg-card p-6 text-card-foreground shadow-xl", "data-[state=closed]:animate-dialog-out", spring ? "data-[state=open]:animate-[dowel-dialog-spring-in_calc(250ms*var(--motion-scale))_var(--ease-overshoot)]" : "data-[state=open]:animate-dialog-in", className),
29
46
  ...props,
30
47
  children: [children, showCloseButton ? /* @__PURE__ */ jsx(Dialog.Close, {
31
48
  "data-slot": "dialog-close",
32
49
  "aria-label": "Close",
33
- className: cn("absolute top-4 right-4 grid size-7 place-items-center rounded-md text-muted-foreground", "transition-colors duration-[var(--duration-fast)] hover:bg-accent hover:text-foreground", "[&_svg]:size-4", focusRing),
50
+ className: cn("absolute end-4 top-4 grid size-7 place-items-center rounded-md text-muted-foreground", "transition-colors duration-[var(--duration-fast)] hover:bg-accent hover:text-foreground", "[&_svg]:size-4", focusRing),
34
51
  children: /* @__PURE__ */ jsx("svg", {
35
52
  viewBox: "0 0 24 24",
36
53
  fill: "none",
@@ -43,12 +60,12 @@ function DialogContent({ className, children, showCloseButton = true, ...props }
43
60
  })
44
61
  })
45
62
  }) : null]
46
- })] });
63
+ })] })] });
47
64
  }
48
65
  function DialogHeader({ className, ...props }) {
49
66
  return /* @__PURE__ */ jsx("div", {
50
67
  "data-slot": "dialog-header",
51
- className: cn("flex flex-col gap-1.5 pr-8 text-left", className),
68
+ className: cn("flex flex-col gap-1.5 pe-8 text-start", className),
52
69
  ...props
53
70
  });
54
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.js","names":["Dialog","DialogPrimitive"],"sources":["../../../src/components/dialog/dialog.tsx"],"sourcesContent":["\"use client\";\n\nimport { Dialog as DialogPrimitive } from \"radix-ui\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * A modal window that interrupts the user to gather a response.\n *\n * Focus is trapped while open, restored to the trigger on close, and the rest\n * of the page is hidden from assistive technology — all handled by the\n * underlying primitive rather than reimplemented here.\n */\nexport const Dialog = DialogPrimitive.Root;\nexport const DialogTrigger = DialogPrimitive.Trigger;\nexport const DialogPortal = DialogPrimitive.Portal;\nexport const DialogClose = DialogPrimitive.Close;\n\nexport type DialogOverlayProps = ComponentPropsWithRef<typeof DialogPrimitive.Overlay>;\n\nexport function DialogOverlay({ className, ...props }: DialogOverlayProps) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"fixed inset-0 z-[var(--z-overlay)] bg-overlay backdrop-blur-[2px]\",\n \"data-[state=closed]:animate-overlay-out data-[state=open]:animate-overlay-in\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport interface DialogContentProps extends ComponentPropsWithRef<\n typeof DialogPrimitive.Content\n> {\n /** Renders the built-in close button. Turn off to supply your own. */\n showCloseButton?: boolean;\n}\n\nexport function DialogContent({\n className,\n children,\n showCloseButton = true,\n ...props\n}: DialogContentProps) {\n return (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"fixed top-1/2 left-1/2 z-[var(--z-modal)] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 -translate-y-1/2\",\n \"grid gap-4 rounded-xl border border-border bg-card p-6 text-card-foreground shadow-xl\",\n \"data-[state=closed]:animate-dialog-out data-[state=open]:animate-dialog-in\",\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton ? (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n aria-label=\"Close\"\n className={cn(\n \"absolute top-4 right-4 grid size-7 place-items-center rounded-md text-muted-foreground\",\n \"transition-colors duration-[var(--duration-fast)] hover:bg-accent hover:text-foreground\",\n \"[&_svg]:size-4\",\n focusRing,\n )}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"m6 6 12 12M18 6 6 18\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n </DialogPrimitive.Close>\n ) : null}\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n}\n\nexport function DialogHeader({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-1.5 pr-8 text-left\", className)}\n {...props}\n />\n );\n}\n\nexport function DialogFooter({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\", className)}\n {...props}\n />\n );\n}\n\nexport type DialogTitleProps = ComponentPropsWithRef<typeof DialogPrimitive.Title>;\n\nexport function DialogTitle({ className, ...props }: DialogTitleProps) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-tight font-semibold tracking-tight\", className)}\n {...props}\n />\n );\n}\n\nexport type DialogDescriptionProps = ComponentPropsWithRef<typeof DialogPrimitive.Description>;\n\nexport function DialogDescription({ className, ...props }: DialogDescriptionProps) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;AAeA,MAAaA,WAASC,OAAgB;AACtC,MAAa,gBAAgBA,OAAgB;AAC7C,MAAa,eAAeA,OAAgB;AAC5C,MAAa,cAAcA,OAAgB;AAI3C,SAAgB,cAAc,EAAE,WAAW,GAAG,SAA6B;CACzE,OACE,oBAACA,OAAgB,SAAjB;EACE,aAAU;EACV,WAAW,GACT,qEACA,gFACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AASA,SAAgB,cAAc,EAC5B,WACA,UACA,kBAAkB,MAClB,GAAG,SACkB;CACrB,OACE,qBAAC,cAAD,EAAA,UAAA,CACE,oBAAC,eAAD,CAAgB,CAAA,GAChB,qBAACA,OAAgB,SAAjB;EACE,aAAU;EACV,WAAW,GACT,4GACA,yFACA,8EACA,SACF;EACA,GAAI;EARN,UAAA,CAUG,UACA,kBACC,oBAACA,OAAgB,OAAjB;GACE,aAAU;GACV,cAAW;GACX,WAAW,GACT,0FACA,2FACA,kBACA,SACF;GAEA,UAAA,oBAAC,OAAD;IAAK,SAAQ;IAAY,MAAK;IAAO,eAAY;IAC/C,UAAA,oBAAC,QAAD;KACE,GAAE;KACF,QAAO;KACP,aAAY;KACZ,eAAc;IACf,CAAA;GACE,CAAA;EACgB,CAAA,IACrB,IACmB;CACb,CAAA,CAAA,EAAA,CAAA;AAElB;AAEA,SAAgB,aAAa,EAAE,WAAW,GAAG,SAAuC;CAClF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,wCAAwC,SAAS;EAC/D,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,aAAa,EAAE,WAAW,GAAG,SAAuC;CAClF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,0DAA0D,SAAS;EACjF,GAAI;CACL,CAAA;AAEL;AAIA,SAAgB,YAAY,EAAE,WAAW,GAAG,SAA2B;CACrE,OACE,oBAACA,OAAgB,OAAjB;EACE,aAAU;EACV,WAAW,GAAG,sDAAsD,SAAS;EAC7E,GAAI;CACL,CAAA;AAEL;AAIA,SAAgB,kBAAkB,EAAE,WAAW,GAAG,SAAiC;CACjF,OACE,oBAACA,OAAgB,aAAjB;EACE,aAAU;EACV,WAAW,GAAG,iCAAiC,SAAS;EACxD,GAAI;CACL,CAAA;AAEL"}
1
+ {"version":3,"file":"dialog.js","names":["Dialog","DialogPrimitive"],"sources":["../../../src/components/dialog/dialog.tsx"],"sourcesContent":["\"use client\";\n\n// Motion from SmoothUI Dialog and BasicModal (MIT, © 2024 Eduardo Calvo). See THIRD_PARTY_NOTICES.md.\nimport { Dialog as DialogPrimitive } from \"radix-ui\";\nimport type { ComponentPropsWithRef } from \"react\";\n\nimport { focusRing } from \"@/lib/styles\";\nimport { cn } from \"@/lib/utils\";\n\n/**\n * A modal window that interrupts the user to gather a response.\n *\n * Focus is trapped while open, restored to the trigger on close, and the rest\n * of the page is hidden from assistive technology — all handled by the\n * underlying primitive rather than reimplemented here.\n */\nexport const Dialog = DialogPrimitive.Root;\nexport const DialogTrigger = DialogPrimitive.Trigger;\nexport const DialogPortal = DialogPrimitive.Portal;\nexport const DialogClose = DialogPrimitive.Close;\n\nexport type DialogOverlayProps = ComponentPropsWithRef<typeof DialogPrimitive.Overlay>;\n\nexport function DialogOverlay({ className, ...props }: DialogOverlayProps) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"fixed inset-0 z-[var(--z-overlay)] bg-overlay backdrop-blur-[2px]\",\n \"data-[state=closed]:animate-overlay-out data-[state=open]:animate-overlay-in\",\n className,\n )}\n {...props}\n />\n );\n}\n\nconst PREFIX = \"dowel-dialog\";\n\n/** Each section of a spring dialog arrives 60ms after the one above it. */\nconst STAGGER_STEP_MS = 60;\nconst STAGGERED = 6;\n\nconst SPRING_CHILD = `[data-slot=dialog-content][data-animation=spring][data-state=open]>:not([data-slot=dialog-close])`;\n\nconst STYLES = `\n@keyframes ${PREFIX}-spring-in{from{opacity:0;transform:translateY(.5rem) scale(.95)}}\n@keyframes ${PREFIX}-section-in{from{opacity:0;transform:translateY(8px)}}\n${SPRING_CHILD}{animation:${PREFIX}-section-in calc(250ms * var(--motion-scale)) var(--ease-out-quint) both}\n${Array.from(\n { length: STAGGERED - 1 },\n (_, i) =>\n `${SPRING_CHILD}:nth-child(${String(i + 2)}){animation-delay:calc(${String((i + 1) * STAGGER_STEP_MS)}ms * var(--motion-scale))}`,\n).join(\"\\n\")}\n${SPRING_CHILD}:nth-child(n+${String(STAGGERED + 1)}){animation-delay:calc(${String(STAGGERED * STAGGER_STEP_MS)}ms * var(--motion-scale))}\n`;\n\nexport interface DialogContentProps extends ComponentPropsWithRef<\n typeof DialogPrimitive.Content\n> {\n /** Renders the built-in close button. Turn off to supply your own. */\n showCloseButton?: boolean;\n /**\n * How the dialog enters. `default` fades and rises into place. `spring` pops\n * in with a slight overshoot and then brings its sections — header, body,\n * footer — in one after another. Both stop under reduced motion, and both\n * leave the same way.\n */\n animation?: \"default\" | \"spring\";\n}\n\nexport function DialogContent({\n className,\n children,\n showCloseButton = true,\n animation = \"default\",\n ...props\n}: DialogContentProps) {\n const spring = animation === \"spring\";\n\n return (\n <>\n {spring ? (\n <style href={PREFIX} precedence=\"dowel\">\n {STYLES}\n </style>\n ) : null}\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n data-animation={spring ? \"spring\" : undefined}\n className={cn(\n \"fixed top-1/2 left-1/2 z-[var(--z-modal)] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 -translate-y-1/2\",\n \"grid gap-4 rounded-xl border border-border bg-card p-6 text-card-foreground shadow-xl\",\n \"data-[state=closed]:animate-dialog-out\",\n // Spelled out because Tailwind reads class names from the source.\n spring\n ? \"data-[state=open]:animate-[dowel-dialog-spring-in_calc(250ms*var(--motion-scale))_var(--ease-overshoot)]\"\n : \"data-[state=open]:animate-dialog-in\",\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton ? (\n <DialogPrimitive.Close\n data-slot=\"dialog-close\"\n aria-label=\"Close\"\n className={cn(\n \"absolute end-4 top-4 grid size-7 place-items-center rounded-md text-muted-foreground\",\n \"transition-colors duration-[var(--duration-fast)] hover:bg-accent hover:text-foreground\",\n \"[&_svg]:size-4\",\n focusRing,\n )}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n <path\n d=\"m6 6 12 12M18 6 6 18\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n />\n </svg>\n </DialogPrimitive.Close>\n ) : null}\n </DialogPrimitive.Content>\n </DialogPortal>\n </>\n );\n}\n\nexport function DialogHeader({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-1.5 pe-8 text-start\", className)}\n {...props}\n />\n );\n}\n\nexport function DialogFooter({ className, ...props }: ComponentPropsWithRef<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\", className)}\n {...props}\n />\n );\n}\n\nexport type DialogTitleProps = ComponentPropsWithRef<typeof DialogPrimitive.Title>;\n\nexport function DialogTitle({ className, ...props }: DialogTitleProps) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-tight font-semibold tracking-tight\", className)}\n {...props}\n />\n );\n}\n\nexport type DialogDescriptionProps = ComponentPropsWithRef<typeof DialogPrimitive.Description>;\n\nexport function DialogDescription({ className, ...props }: DialogDescriptionProps) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;AAgBA,MAAaA,WAASC,OAAgB;AACtC,MAAa,gBAAgBA,OAAgB;AAC7C,MAAa,eAAeA,OAAgB;AAC5C,MAAa,cAAcA,OAAgB;AAI3C,SAAgB,cAAc,EAAE,WAAW,GAAG,SAA6B;CACzE,OACE,oBAACA,OAAgB,SAAjB;EACE,aAAU;EACV,WAAW,GACT,qEACA,gFACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;AAEA,MAAM,SAAS;;AAGf,MAAM,kBAAkB;AAGxB,MAAM,eAAe;AAErB,MAAM,SAAS;aACF,OAAO;aACP,OAAO;EAClB,aAAa,aAAa,OAAO;EACjC,MAAM,KACN,EAAE,QAAQ,EAAc,IACvB,GAAG,MACF,GAAG,aAAa,aAAa,OAAO,IAAI,CAAC,EAAE,yBAAyB,QAAQ,IAAI,KAAK,eAAe,EAAE,2BAC1G,CAAC,CAAC,KAAK,IAAI,EAAE;EACX,aAAa,eAAe,OAAO,CAAa,EAAE,yBAAyB,OAAO,GAA2B,EAAE;;AAiBjH,SAAgB,cAAc,EAC5B,WACA,UACA,kBAAkB,MAClB,YAAY,WACZ,GAAG,SACkB;CACrB,MAAM,SAAS,cAAc;CAE7B,OACE,qBAAA,UAAA,EAAA,UAAA,CACG,SACC,oBAAC,SAAD;EAAO,MAAM;EAAQ,YAAW;EAC7B,UAAA;CACI,CAAA,IACL,MACJ,qBAAC,cAAD,EAAA,UAAA,CACE,oBAAC,eAAD,CAAgB,CAAA,GAChB,qBAACA,OAAgB,SAAjB;EACE,aAAU;EACV,kBAAgB,SAAS,WAAW,KAAA;EACpC,WAAW,GACT,4GACA,yFACA,0CAEA,SACI,6GACA,uCACJ,SACF;EACA,GAAI;EAbN,UAAA,CAeG,UACA,kBACC,oBAACA,OAAgB,OAAjB;GACE,aAAU;GACV,cAAW;GACX,WAAW,GACT,wFACA,2FACA,kBACA,SACF;GAEA,UAAA,oBAAC,OAAD;IAAK,SAAQ;IAAY,MAAK;IAAO,eAAY;IAC/C,UAAA,oBAAC,QAAD;KACE,GAAE;KACF,QAAO;KACP,aAAY;KACZ,eAAc;IACf,CAAA;GACE,CAAA;EACgB,CAAA,IACrB,IACmB;CACb,CAAA,CAAA,EAAA,CAAA,CACd,EAAA,CAAA;AAEN;AAEA,SAAgB,aAAa,EAAE,WAAW,GAAG,SAAuC;CAClF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,yCAAyC,SAAS;EAChE,GAAI;CACL,CAAA;AAEL;AAEA,SAAgB,aAAa,EAAE,WAAW,GAAG,SAAuC;CAClF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,0DAA0D,SAAS;EACjF,GAAI;CACL,CAAA;AAEL;AAIA,SAAgB,YAAY,EAAE,WAAW,GAAG,SAA2B;CACrE,OACE,oBAACA,OAAgB,OAAjB;EACE,aAAU;EACV,WAAW,GAAG,sDAAsD,SAAS;EAC7E,GAAI;CACL,CAAA;AAEL;AAIA,SAAgB,kBAAkB,EAAE,WAAW,GAAG,SAAiC;CACjF,OACE,oBAACA,OAAgB,aAAjB;EACE,aAAU;EACV,WAAW,GAAG,iCAAiC,SAAS;EACxD,GAAI;CACL,CAAA;AAEL"}
@@ -9,7 +9,7 @@ const meta = defineMeta({
9
9
  dependencies: ["radix-ui"],
10
10
  registryDependencies: [],
11
11
  files: ["dialog.tsx"],
12
- a11y: "Focus is trapped while open and restored to the trigger on close; Escape and an overlay click dismiss. Always render a DialogTitle — it names the dialog for screen readers. Use DialogDescription, or aria-describedby, to explain consequential actions."
12
+ a11y: "Focus is trapped while open and restored to the trigger on close; Escape and an overlay click dismiss. Always render a DialogTitle — it names the dialog for screen readers. Use DialogDescription, or aria-describedby, to explain consequential actions. The optional spring entrance and section stagger stop under reduced motion."
13
13
  });
14
14
  //#endregion
15
15
  export { meta };
@@ -1 +1 @@
1
- {"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/dialog/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"dialog\",\n title: \"Dialog\",\n description: \"A modal window that interrupts the user to gather a response.\",\n category: \"overlay\",\n status: \"stable\",\n dependencies: [\"radix-ui\"],\n registryDependencies: [],\n files: [\"dialog.tsx\"],\n a11y:\n \"Focus is trapped while open and restored to the trigger on close; Escape and an overlay \" +\n \"click dismiss. Always render a DialogTitle — it names the dialog for screen readers. \" +\n \"Use DialogDescription, or aria-describedby, to explain consequential actions.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,UAAU;CACzB,sBAAsB,CAAC;CACvB,OAAO,CAAC,YAAY;CACpB,MACE;AAGJ,CAAC"}
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../src/components/dialog/meta.ts"],"sourcesContent":["import { defineMeta } from \"@/registry/schema\";\n\nexport const meta = defineMeta({\n name: \"dialog\",\n title: \"Dialog\",\n description: \"A modal window that interrupts the user to gather a response.\",\n category: \"overlay\",\n status: \"stable\",\n dependencies: [\"radix-ui\"],\n registryDependencies: [],\n files: [\"dialog.tsx\"],\n a11y:\n \"Focus is trapped while open and restored to the trigger on close; Escape and an overlay \" +\n \"click dismiss. Always render a DialogTitle — it names the dialog for screen readers. \" +\n \"Use DialogDescription, or aria-describedby, to explain consequential actions. The \" +\n \"optional spring entrance and section stagger stop under reduced motion.\",\n});\n"],"mappings":";;AAEA,MAAa,OAAO,WAAW;CAC7B,MAAM;CACN,OAAO;CACP,aAAa;CACb,UAAU;CACV,QAAQ;CACR,cAAc,CAAC,UAAU;CACzB,sBAAsB,CAAC;CACvB,OAAO,CAAC,YAAY;CACpB,MACE;AAIJ,CAAC"}
@@ -30,8 +30,19 @@ interface DiffViewerProps extends Omit<ComponentPropsWithRef<"div">, "children">
30
30
  decisions?: Record<string, HunkDecision>;
31
31
  onDecision?: (hunkId: string, decision: HunkDecision) => void;
32
32
  children?: ReactNode;
33
+ /**
34
+ * Entrance for added lines. `wipe` draws each one in along the reading
35
+ * direction, a line after the other; context and removed lines were already
36
+ * there and do not move.
37
+ */
38
+ entrance?: "none" | "wipe";
39
+ /**
40
+ * Collapse a rejected hunk's lines. Its header and controls stay, so the
41
+ * decision can still be reversed, and the header says the lines are hidden.
42
+ */
43
+ collapseRejected?: boolean;
33
44
  }
34
- declare function DiffViewer({ className, hunks, label, view, decisions, onDecision, children, ...props }: DiffViewerProps): import("react").JSX.Element;
45
+ declare function DiffViewer({ className, hunks, label, view, decisions, onDecision, children, entrance, collapseRejected, ...props }: DiffViewerProps): import("react").JSX.Element;
35
46
  /** Switches between unified and side-by-side. */
36
47
  declare function DiffViewerToolbar({ className, view, onViewChange, ...props }: Omit<ComponentPropsWithRef<"div">, "onChange"> & {
37
48
  view: "unified" | "split";
@@ -1 +1 @@
1
- {"version":3,"file":"diff-viewer.d.ts","names":[],"sources":["../../../src/components/diff-viewer/diff-viewer.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;KA6BY;UAQK,wBAAwB,KAAK;EAC5C,OAAO;;EAEP;EACA;;EAEA,YAAY,eAAe;EAC3B,cAAc,gBAAgB,UAAU;EACxC,WAAW;;iBAGG,aACd,WACA,OACA,OACA,MACA,WACA,YACA,aACG,SACF,kCAAe,IAAA;;iBAmPF,oBACd,WACA,MACA,iBACG,SACF,KAAK;EACN;EACA,eAAe;oBAChB,IAAA"}
1
+ {"version":3,"file":"diff-viewer.d.ts","names":[],"sources":["../../../src/components/diff-viewer/diff-viewer.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;KAsCY;UAQK,wBAAwB,KAAK;EAC5C,OAAO;;EAEP;EACA;;EAEA,YAAY,eAAe;EAC3B,cAAc,gBAAgB,UAAU;EACxC,WAAW;;;;;;EAMX;;;;;EAKA;;iBA8Bc,aACd,WACA,OACA,OACA,MACA,WACA,YACA,UACA,UACA,qBACG,SACF,kCAAe,IAAA;;iBA6UF,oBACd,WACA,MACA,iBACG,SACF,KAAK;EACN;EACA,eAAe;oBAChB,IAAA"}