@od-oneapp/uni-ui 2026.1.1301

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 (1253) hide show
  1. package/README.md +753 -0
  2. package/dist/actions-C-SEx2GS.mjs +180 -0
  3. package/dist/actions-C-SEx2GS.mjs.map +1 -0
  4. package/dist/actions-Ch7h6cYC.d.mts +50 -0
  5. package/dist/actions-Cnupw96c.d.mts +50 -0
  6. package/dist/alert-BVUF7Xzb.d.mts +22 -0
  7. package/dist/alert-BuPyEXF-.mjs +206 -0
  8. package/dist/alert-BuPyEXF-.mjs.map +1 -0
  9. package/dist/alert-CfjDnZpm.d.mts +22 -0
  10. package/dist/animated-size-container-DSKNt1Cn.mjs +106 -0
  11. package/dist/animated-size-container-DSKNt1Cn.mjs.map +1 -0
  12. package/dist/areas-CtE8w69A.mjs +144 -0
  13. package/dist/areas-CtE8w69A.mjs.map +1 -0
  14. package/dist/areas-DtGnjGuX.d.mts +22 -0
  15. package/dist/auth-nav-user-CRxDpY_7.d.mts +30 -0
  16. package/dist/auth-nav-user-DPFv8dTp.mjs +181 -0
  17. package/dist/auth-nav-user-DPFv8dTp.mjs.map +1 -0
  18. package/dist/avatar-DjiX7nT8.mjs +202 -0
  19. package/dist/avatar-DjiX7nT8.mjs.map +1 -0
  20. package/dist/badge-CGTN2VG0.d.mts +25 -0
  21. package/dist/badge-CVoIuyYX.mjs +242 -0
  22. package/dist/badge-CVoIuyYX.mjs.map +1 -0
  23. package/dist/badge-DH0tY3wJ.d.mts +25 -0
  24. package/dist/bars-CWTAPKgm.d.mts +20 -0
  25. package/dist/bars-DOLvecrq.mjs +125 -0
  26. package/dist/bars-DOLvecrq.mjs.map +1 -0
  27. package/dist/branch-BEl6eS77.mjs +323 -0
  28. package/dist/branch-BEl6eS77.mjs.map +1 -0
  29. package/dist/branch-BtdY_TLE.d.mts +58 -0
  30. package/dist/branch-Duq6cW0s.d.mts +58 -0
  31. package/dist/button-BAdq0gBE.d.mts +31 -0
  32. package/dist/button-DVOrrZLw.mjs +632 -0
  33. package/dist/button-DVOrrZLw.mjs.map +1 -0
  34. package/dist/button-DnjeAftr.d.mts +31 -0
  35. package/dist/carousel-D-J1Zgn1.d.mts +49 -0
  36. package/dist/carousel-Dx5AOW5k.mjs +345 -0
  37. package/dist/carousel-Dx5AOW5k.mjs.map +1 -0
  38. package/dist/carousel-sY0y1-or.d.mts +49 -0
  39. package/dist/chart-context-CLV35VLJ.mjs +27 -0
  40. package/dist/chart-context-CLV35VLJ.mjs.map +1 -0
  41. package/dist/checkbox-wiF-DV6q.mjs +194 -0
  42. package/dist/checkbox-wiF-DV6q.mjs.map +1 -0
  43. package/dist/code-block-Cg_XtPH7.mjs +243 -0
  44. package/dist/code-block-Cg_XtPH7.mjs.map +1 -0
  45. package/dist/collapsible-CRgTpRfr.d.mts +46 -0
  46. package/dist/collapsible-CXy4T04n.mjs +239 -0
  47. package/dist/collapsible-CXy4T04n.mjs.map +1 -0
  48. package/dist/combobox-DSrxSkSl.d.mts +79 -0
  49. package/dist/combobox-DYFh2eZf.d.mts +79 -0
  50. package/dist/combobox-uEKksQFR.mjs +410 -0
  51. package/dist/combobox-uEKksQFR.mjs.map +1 -0
  52. package/dist/command-xK3X_A9t.mjs +206 -0
  53. package/dist/command-xK3X_A9t.mjs.map +1 -0
  54. package/dist/components-ai-elements/actions/index.d.mts +5 -0
  55. package/dist/components-ai-elements/actions/index.mjs +4 -0
  56. package/dist/components-ai-elements/agent-step/index.d.mts +32 -0
  57. package/dist/components-ai-elements/agent-step/index.mjs +183 -0
  58. package/dist/components-ai-elements/agent-step/index.mjs.map +1 -0
  59. package/dist/components-ai-elements/artifact/index.d.mts +81 -0
  60. package/dist/components-ai-elements/artifact/index.mjs +153 -0
  61. package/dist/components-ai-elements/artifact/index.mjs.map +1 -0
  62. package/dist/components-ai-elements/branch/index.d.mts +5 -0
  63. package/dist/components-ai-elements/branch/index.mjs +4 -0
  64. package/dist/components-ai-elements/chain-of-thought/index.d.mts +90 -0
  65. package/dist/components-ai-elements/chain-of-thought/index.mjs +338 -0
  66. package/dist/components-ai-elements/chain-of-thought/index.mjs.map +1 -0
  67. package/dist/components-ai-elements/chat-input/index.d.mts +21 -0
  68. package/dist/components-ai-elements/chat-input/index.mjs +137 -0
  69. package/dist/components-ai-elements/chat-input/index.mjs.map +1 -0
  70. package/dist/components-ai-elements/checkpoint/index.d.mts +46 -0
  71. package/dist/components-ai-elements/checkpoint/index.mjs +161 -0
  72. package/dist/components-ai-elements/checkpoint/index.mjs.map +1 -0
  73. package/dist/components-ai-elements/code-block/index.d.mts +39 -0
  74. package/dist/components-ai-elements/code-block/index.mjs +4 -0
  75. package/dist/components-ai-elements/confirmation/index.d.mts +96 -0
  76. package/dist/components-ai-elements/confirmation/index.mjs +295 -0
  77. package/dist/components-ai-elements/confirmation/index.mjs.map +1 -0
  78. package/dist/components-ai-elements/context/index.d.mts +83 -0
  79. package/dist/components-ai-elements/context/index.mjs +456 -0
  80. package/dist/components-ai-elements/context/index.mjs.map +1 -0
  81. package/dist/components-ai-elements/conversation/index.d.mts +46 -0
  82. package/dist/components-ai-elements/conversation/index.mjs +180 -0
  83. package/dist/components-ai-elements/conversation/index.mjs.map +1 -0
  84. package/dist/components-ai-elements/custom/index.d.mts +1142 -0
  85. package/dist/components-ai-elements/custom/index.mjs +5578 -0
  86. package/dist/components-ai-elements/custom/index.mjs.map +1 -0
  87. package/dist/components-ai-elements/generative-ui/index.d.mts +4 -0
  88. package/dist/components-ai-elements/generative-ui/index.mjs +4 -0
  89. package/dist/components-ai-elements/image/index.d.mts +20 -0
  90. package/dist/components-ai-elements/image/index.mjs +121 -0
  91. package/dist/components-ai-elements/image/index.mjs.map +1 -0
  92. package/dist/components-ai-elements/inline-citation/index.d.mts +94 -0
  93. package/dist/components-ai-elements/inline-citation/index.mjs +371 -0
  94. package/dist/components-ai-elements/inline-citation/index.mjs.map +1 -0
  95. package/dist/components-ai-elements/loader/index.d.mts +24 -0
  96. package/dist/components-ai-elements/loader/index.mjs +4 -0
  97. package/dist/components-ai-elements/message/index.d.mts +153 -0
  98. package/dist/components-ai-elements/message/index.mjs +597 -0
  99. package/dist/components-ai-elements/message/index.mjs.map +1 -0
  100. package/dist/components-ai-elements/model-selector/index.d.mts +72 -0
  101. package/dist/components-ai-elements/model-selector/index.mjs +224 -0
  102. package/dist/components-ai-elements/model-selector/index.mjs.map +1 -0
  103. package/dist/components-ai-elements/open-in-chat/index.d.mts +64 -0
  104. package/dist/components-ai-elements/open-in-chat/index.mjs +502 -0
  105. package/dist/components-ai-elements/open-in-chat/index.mjs.map +1 -0
  106. package/dist/components-ai-elements/plan/index.d.mts +71 -0
  107. package/dist/components-ai-elements/plan/index.mjs +219 -0
  108. package/dist/components-ai-elements/plan/index.mjs.map +1 -0
  109. package/dist/components-ai-elements/prompt-char-counter/index.d.mts +19 -0
  110. package/dist/components-ai-elements/prompt-char-counter/index.mjs +116 -0
  111. package/dist/components-ai-elements/prompt-char-counter/index.mjs.map +1 -0
  112. package/dist/components-ai-elements/prompt-input/index.d.mts +386 -0
  113. package/dist/components-ai-elements/prompt-input/index.mjs +4 -0
  114. package/dist/components-ai-elements/queue/index.d.mts +121 -0
  115. package/dist/components-ai-elements/queue/index.mjs +284 -0
  116. package/dist/components-ai-elements/queue/index.mjs.map +1 -0
  117. package/dist/components-ai-elements/reasoning/index.d.mts +42 -0
  118. package/dist/components-ai-elements/reasoning/index.mjs +241 -0
  119. package/dist/components-ai-elements/reasoning/index.mjs.map +1 -0
  120. package/dist/components-ai-elements/shimmer/index.d.mts +23 -0
  121. package/dist/components-ai-elements/shimmer/index.mjs +4 -0
  122. package/dist/components-ai-elements/sources/index.d.mts +56 -0
  123. package/dist/components-ai-elements/sources/index.mjs +211 -0
  124. package/dist/components-ai-elements/sources/index.mjs.map +1 -0
  125. package/dist/components-ai-elements/suggestion/index.d.mts +40 -0
  126. package/dist/components-ai-elements/suggestion/index.mjs +145 -0
  127. package/dist/components-ai-elements/suggestion/index.mjs.map +1 -0
  128. package/dist/components-ai-elements/task/index.d.mts +70 -0
  129. package/dist/components-ai-elements/task/index.mjs +218 -0
  130. package/dist/components-ai-elements/task/index.mjs.map +1 -0
  131. package/dist/components-ai-elements/tool/index.d.mts +78 -0
  132. package/dist/components-ai-elements/tool/index.mjs +370 -0
  133. package/dist/components-ai-elements/tool/index.mjs.map +1 -0
  134. package/dist/components-ai-elements/tool-approval/index.d.mts +20 -0
  135. package/dist/components-ai-elements/tool-approval/index.mjs +252 -0
  136. package/dist/components-ai-elements/tool-approval/index.mjs.map +1 -0
  137. package/dist/components-ai-elements/web-preview/index.d.mts +136 -0
  138. package/dist/components-ai-elements/web-preview/index.mjs +773 -0
  139. package/dist/components-ai-elements/web-preview/index.mjs.map +1 -0
  140. package/dist/components-ai-elements-constants.d.mts +207 -0
  141. package/dist/components-ai-elements-constants.mjs +301 -0
  142. package/dist/components-ai-elements-constants.mjs.map +1 -0
  143. package/dist/components-ai-workflows/canvas/index.d.mts +22 -0
  144. package/dist/components-ai-workflows/canvas/index.mjs +135 -0
  145. package/dist/components-ai-workflows/canvas/index.mjs.map +1 -0
  146. package/dist/components-ai-workflows/connection/index.d.mts +22 -0
  147. package/dist/components-ai-workflows/connection/index.mjs +4 -0
  148. package/dist/components-ai-workflows/controls/index.d.mts +14 -0
  149. package/dist/components-ai-workflows/controls/index.mjs +89 -0
  150. package/dist/components-ai-workflows/controls/index.mjs.map +1 -0
  151. package/dist/components-ai-workflows/edge/index.d.mts +20 -0
  152. package/dist/components-ai-workflows/edge/index.mjs +102 -0
  153. package/dist/components-ai-workflows/edge/index.mjs.map +1 -0
  154. package/dist/components-ai-workflows/node/index.d.mts +3 -0
  155. package/dist/components-ai-workflows/node/index.mjs +4 -0
  156. package/dist/components-ai-workflows/panel/index.d.mts +15 -0
  157. package/dist/components-ai-workflows/panel/index.mjs +89 -0
  158. package/dist/components-ai-workflows/panel/index.mjs.map +1 -0
  159. package/dist/components-ai-workflows/resizable-node/index.d.mts +30 -0
  160. package/dist/components-ai-workflows/resizable-node/index.mjs +164 -0
  161. package/dist/components-ai-workflows/resizable-node/index.mjs.map +1 -0
  162. package/dist/components-ai-workflows/toolbar/index.d.mts +19 -0
  163. package/dist/components-ai-workflows/toolbar/index.mjs +91 -0
  164. package/dist/components-ai-workflows/toolbar/index.mjs.map +1 -0
  165. package/dist/components-auth-client-nav-user.d.mts +3 -0
  166. package/dist/components-auth-client-nav-user.mjs +4 -0
  167. package/dist/components-auth-client-providers.d.mts +13 -0
  168. package/dist/components-auth-client-providers.mjs +89 -0
  169. package/dist/components-auth-client-providers.mjs.map +1 -0
  170. package/dist/components-auth-client.d.mts +5 -0
  171. package/dist/components-auth-client.mjs +5 -0
  172. package/dist/components-auth-server.d.mts +1878 -0
  173. package/dist/components-auth-server.mjs +32769 -0
  174. package/dist/components-auth-server.mjs.map +1 -0
  175. package/dist/components-auth.d.mts +5 -0
  176. package/dist/components-auth.mjs +5 -0
  177. package/dist/components-charts/areas/index.d.mts +3 -0
  178. package/dist/components-charts/areas/index.mjs +4 -0
  179. package/dist/components-charts/bars/index.d.mts +3 -0
  180. package/dist/components-charts/bars/index.mjs +4 -0
  181. package/dist/components-charts/funnel-chart/index.d.mts +3 -0
  182. package/dist/components-charts/funnel-chart/index.mjs +4 -0
  183. package/dist/components-charts/mini-area-chart/index.d.mts +3 -0
  184. package/dist/components-charts/mini-area-chart/index.mjs +4 -0
  185. package/dist/components-charts/time-series-chart/index.d.mts +3 -0
  186. package/dist/components-charts/time-series-chart/index.mjs +4 -0
  187. package/dist/components-charts/tooltip-sync/index.d.mts +3 -0
  188. package/dist/components-charts/tooltip-sync/index.mjs +4 -0
  189. package/dist/components-charts/x-axis/index.d.mts +3 -0
  190. package/dist/components-charts/x-axis/index.mjs +4 -0
  191. package/dist/components-charts/y-axis/index.d.mts +3 -0
  192. package/dist/components-charts/y-axis/index.mjs +4 -0
  193. package/dist/components-elements-accordion.d.mts +59 -0
  194. package/dist/components-elements-accordion.mjs +275 -0
  195. package/dist/components-elements-accordion.mjs.map +1 -0
  196. package/dist/components-elements-alert.d.mts +3 -0
  197. package/dist/components-elements-alert.mjs +4 -0
  198. package/dist/components-elements-avatar.d.mts +24 -0
  199. package/dist/components-elements-avatar.mjs +4 -0
  200. package/dist/components-elements-badge.d.mts +4 -0
  201. package/dist/components-elements-badge.mjs +4 -0
  202. package/dist/components-elements-button.d.mts +4 -0
  203. package/dist/components-elements-button.mjs +4 -0
  204. package/dist/components-elements-card.d.mts +3 -0
  205. package/dist/components-elements-card.mjs +4 -0
  206. package/dist/components-elements-carousel.d.mts +5 -0
  207. package/dist/components-elements-carousel.mjs +4 -0
  208. package/dist/components-elements-chart.d.mts +24 -0
  209. package/dist/components-elements-chart.mjs +226 -0
  210. package/dist/components-elements-chart.mjs.map +1 -0
  211. package/dist/components-elements-collapsible.d.mts +3 -0
  212. package/dist/components-elements-collapsible.mjs +4 -0
  213. package/dist/components-elements-dialog.d.mts +3 -0
  214. package/dist/components-elements-dialog.mjs +4 -0
  215. package/dist/components-elements-dropdown-menu.d.mts +3 -0
  216. package/dist/components-elements-dropdown-menu.mjs +4 -0
  217. package/dist/components-elements-dynamic-breadcrumb.d.mts +16 -0
  218. package/dist/components-elements-dynamic-breadcrumb.mjs +4 -0
  219. package/dist/components-elements-empty.d.mts +18 -0
  220. package/dist/components-elements-empty.mjs +199 -0
  221. package/dist/components-elements-empty.mjs.map +1 -0
  222. package/dist/components-elements-hover-card.d.mts +3 -0
  223. package/dist/components-elements-hover-card.mjs +4 -0
  224. package/dist/components-elements-loading-dots.d.mts +3 -0
  225. package/dist/components-elements-loading-dots.mjs +4 -0
  226. package/dist/components-elements-pagination-controls.d.mts +28 -0
  227. package/dist/components-elements-pagination-controls.mjs +4 -0
  228. package/dist/components-elements-progress.d.mts +28 -0
  229. package/dist/components-elements-progress.mjs +4 -0
  230. package/dist/components-elements-resizable.d.mts +31 -0
  231. package/dist/components-elements-resizable.mjs +4 -0
  232. package/dist/components-elements-scroll-area.d.mts +3 -0
  233. package/dist/components-elements-scroll-area.mjs +4 -0
  234. package/dist/components-elements-separator.d.mts +3 -0
  235. package/dist/components-elements-separator.mjs +4 -0
  236. package/dist/components-elements-skeleton.d.mts +3 -0
  237. package/dist/components-elements-skeleton.mjs +4 -0
  238. package/dist/components-elements-status-badge.d.mts +22 -0
  239. package/dist/components-elements-status-badge.mjs +174 -0
  240. package/dist/components-elements-status-badge.mjs.map +1 -0
  241. package/dist/components-elements-table.d.mts +44 -0
  242. package/dist/components-elements-table.mjs +4 -0
  243. package/dist/components-elements-tabs.d.mts +43 -0
  244. package/dist/components-elements-tabs.mjs +435 -0
  245. package/dist/components-elements-tabs.mjs.map +1 -0
  246. package/dist/components-elements-tooltip.d.mts +3 -0
  247. package/dist/components-elements-tooltip.mjs +4 -0
  248. package/dist/components-filter/filter-list/index.d.mts +4 -0
  249. package/dist/components-filter/filter-list/index.mjs +4 -0
  250. package/dist/components-filter/filter-select/index.d.mts +4 -0
  251. package/dist/components-filter/filter-select/index.mjs +4 -0
  252. package/dist/components-forms/checkbox/index.d.mts +27 -0
  253. package/dist/components-forms/checkbox/index.mjs +4 -0
  254. package/dist/components-forms/combobox/index.d.mts +5 -0
  255. package/dist/components-forms/combobox/index.mjs +4 -0
  256. package/dist/components-forms/date-picker/index.d.mts +3 -0
  257. package/dist/components-forms/date-picker/index.mjs +4 -0
  258. package/dist/components-forms/file-upload/index.d.mts +49 -0
  259. package/dist/components-forms/file-upload/index.mjs +323 -0
  260. package/dist/components-forms/file-upload/index.mjs.map +1 -0
  261. package/dist/components-forms/input/index.d.mts +3 -0
  262. package/dist/components-forms/input/index.mjs +4 -0
  263. package/dist/components-forms/input-group/index.d.mts +5 -0
  264. package/dist/components-forms/input-group/index.mjs +4 -0
  265. package/dist/components-forms/label/index.d.mts +23 -0
  266. package/dist/components-forms/label/index.mjs +4 -0
  267. package/dist/components-forms/radio-group/index.d.mts +29 -0
  268. package/dist/components-forms/radio-group/index.mjs +215 -0
  269. package/dist/components-forms/radio-group/index.mjs.map +1 -0
  270. package/dist/components-forms/select/index.d.mts +3 -0
  271. package/dist/components-forms/select/index.mjs +4 -0
  272. package/dist/components-forms/switch/index.d.mts +30 -0
  273. package/dist/components-forms/switch/index.mjs +4 -0
  274. package/dist/components-forms/textarea/index.d.mts +19 -0
  275. package/dist/components-forms/textarea/index.mjs +4 -0
  276. package/dist/components-layout/app-sidebar/index.d.mts +47 -0
  277. package/dist/components-layout/app-sidebar/index.mjs +340 -0
  278. package/dist/components-layout/app-sidebar/index.mjs.map +1 -0
  279. package/dist/components-layout/artifact-panel/index.d.mts +3 -0
  280. package/dist/components-layout/artifact-panel/index.mjs +4 -0
  281. package/dist/components-layout/content-sidebar/index.d.mts +89 -0
  282. package/dist/components-layout/content-sidebar/index.mjs +202 -0
  283. package/dist/components-layout/content-sidebar/index.mjs.map +1 -0
  284. package/dist/components-layout/nav-app-switcher/index.d.mts +3 -0
  285. package/dist/components-layout/nav-app-switcher/index.mjs +4 -0
  286. package/dist/components-layout/nav-main/index.d.mts +30 -0
  287. package/dist/components-layout/nav-main/index.mjs +4 -0
  288. package/dist/components-layout/nav-projects/index.d.mts +18 -0
  289. package/dist/components-layout/nav-projects/index.mjs +153 -0
  290. package/dist/components-layout/nav-projects/index.mjs.map +1 -0
  291. package/dist/components-layout/nav-secondary/index.d.mts +31 -0
  292. package/dist/components-layout/nav-secondary/index.mjs +4 -0
  293. package/dist/components-layout/nav-user/index.d.mts +17 -0
  294. package/dist/components-layout/nav-user/index.mjs +4 -0
  295. package/dist/components-layout/oneapp/index.mjs +4 -0
  296. package/dist/components-layout/sidebar/index.d.mts +8 -0
  297. package/dist/components-layout/sidebar/index.mjs +4 -0
  298. package/dist/components-layout/sidebar-inset-header-portal/index.d.mts +3 -0
  299. package/dist/components-layout/sidebar-inset-header-portal/index.mjs +4 -0
  300. package/dist/components-layout/sidebar-slots/index.d.mts +3 -0
  301. package/dist/components-layout/sidebar-slots/index.mjs +4 -0
  302. package/dist/components-layout/theme-provider/index.d.mts +15 -0
  303. package/dist/components-layout/theme-provider/index.mjs +4 -0
  304. package/dist/components-layout-app-shell.d.mts +83 -0
  305. package/dist/components-layout-app-shell.mjs +185 -0
  306. package/dist/components-layout-app-shell.mjs.map +1 -0
  307. package/dist/components-layout-oneapp.d.mts +84 -0
  308. package/dist/components-layout-oneapp.mjs +4 -0
  309. package/dist/components-overlays-confirm-dialog.d.mts +38 -0
  310. package/dist/components-overlays-confirm-dialog.mjs +145 -0
  311. package/dist/components-overlays-confirm-dialog.mjs.map +1 -0
  312. package/dist/components-overlays-toast.d.mts +16 -0
  313. package/dist/components-overlays-toast.mjs +127 -0
  314. package/dist/components-overlays-toast.mjs.map +1 -0
  315. package/dist/connection-D_kWZtAX.mjs +105 -0
  316. package/dist/connection-D_kWZtAX.mjs.map +1 -0
  317. package/dist/dark-mode-B4L-MZr7.mjs +288 -0
  318. package/dist/dark-mode-B4L-MZr7.mjs.map +1 -0
  319. package/dist/dark-mode-CYb7lJ6G.d.mts +191 -0
  320. package/dist/date-range-picker-CdemRFs_.mjs +676 -0
  321. package/dist/date-range-picker-CdemRFs_.mjs.map +1 -0
  322. package/dist/dialog-Di5QhIga.d.mts +31 -0
  323. package/dist/dialog-DuluSpxA.mjs +293 -0
  324. package/dist/dialog-DuluSpxA.mjs.map +1 -0
  325. package/dist/dropdown-menu-91g1g_Cl.mjs +379 -0
  326. package/dist/dropdown-menu-91g1g_Cl.mjs.map +1 -0
  327. package/dist/dropdown-menu-CwRZCnNs.d.mts +91 -0
  328. package/dist/dynamic-breadcrumb-33t_hdEI.mjs +385 -0
  329. package/dist/dynamic-breadcrumb-33t_hdEI.mjs.map +1 -0
  330. package/dist/error-boundary-Ggc5btkU.mjs +297 -0
  331. package/dist/error-boundary-Ggc5btkU.mjs.map +1 -0
  332. package/dist/filter-list-BMT7Nrli.d.mts +27 -0
  333. package/dist/filter-list-B_9aV5Lp.mjs +279 -0
  334. package/dist/filter-list-B_9aV5Lp.mjs.map +1 -0
  335. package/dist/filter-select-COLb1S5z.d.mts +34 -0
  336. package/dist/filter-select-CYfBhJ_E.mjs +341 -0
  337. package/dist/filter-select-CYfBhJ_E.mjs.map +1 -0
  338. package/dist/fonts.d.mts +22 -0
  339. package/dist/fonts.mjs +104 -0
  340. package/dist/fonts.mjs.map +1 -0
  341. package/dist/funnel-chart-CUpUr1pl.d.mts +22 -0
  342. package/dist/funnel-chart-fdwagDvc.mjs +318 -0
  343. package/dist/funnel-chart-fdwagDvc.mjs.map +1 -0
  344. package/dist/generative-ui-renderer-D0ZgNRZF.mjs +484 -0
  345. package/dist/generative-ui-renderer-D0ZgNRZF.mjs.map +1 -0
  346. package/dist/generative-ui-renderer-D69qYK0D.d.mts +32 -0
  347. package/dist/hooks/index.d.mts +5 -0
  348. package/dist/hooks/index.mjs +6 -0
  349. package/dist/hooks/use-mobile.d.mts +6 -0
  350. package/dist/hooks/use-mobile.mjs +45 -0
  351. package/dist/hooks/use-mobile.mjs.map +1 -0
  352. package/dist/hooks/use-responsive.d.mts +13 -0
  353. package/dist/hooks/use-responsive.mjs +50 -0
  354. package/dist/hooks/use-responsive.mjs.map +1 -0
  355. package/dist/hooks/use-scroll-progress.d.mts +17 -0
  356. package/dist/hooks/use-scroll-progress.mjs +62 -0
  357. package/dist/hooks/use-scroll-progress.mjs.map +1 -0
  358. package/dist/hooks/use-toast.d.mts +21 -0
  359. package/dist/hooks/use-toast.mjs +40 -0
  360. package/dist/hooks/use-toast.mjs.map +1 -0
  361. package/dist/hover-card-BqEpbXMp.d.mts +31 -0
  362. package/dist/hover-card-nn4fjJOh.mjs +161 -0
  363. package/dist/hover-card-nn4fjJOh.mjs.map +1 -0
  364. package/dist/index-AwyfWaOP.d.mts +60 -0
  365. package/dist/index.d.mts +503 -0
  366. package/dist/index.mjs +2158 -0
  367. package/dist/index.mjs.map +1 -0
  368. package/dist/input-CT1C9DMs.d.mts +19 -0
  369. package/dist/input-D0T5jbR6.d.mts +19 -0
  370. package/dist/input-DhpkXN3J.mjs +176 -0
  371. package/dist/input-DhpkXN3J.mjs.map +1 -0
  372. package/dist/input-group-CTBpkGI9.mjs +231 -0
  373. package/dist/input-group-CTBpkGI9.mjs.map +1 -0
  374. package/dist/input-group-DcDPUaQ3.d.mts +20 -0
  375. package/dist/input-group-VSZJM_on.d.mts +20 -0
  376. package/dist/integrations-COjiOhkd.d.mts +60 -0
  377. package/dist/integrations-Doz6nfxm.d.mts +60 -0
  378. package/dist/integrations-lBG309ZD.mjs +471 -0
  379. package/dist/integrations-lBG309ZD.mjs.map +1 -0
  380. package/dist/label-DnUThLUR.mjs +148 -0
  381. package/dist/label-DnUThLUR.mjs.map +1 -0
  382. package/dist/lib/export-csv.d.mts +12 -0
  383. package/dist/lib/export-csv.mjs +63 -0
  384. package/dist/lib/export-csv.mjs.map +1 -0
  385. package/dist/lib/index.d.mts +6 -0
  386. package/dist/lib/index.mjs +7 -0
  387. package/dist/lib/resize-image.d.mts +11 -0
  388. package/dist/lib/resize-image.mjs +66 -0
  389. package/dist/lib/resize-image.mjs.map +1 -0
  390. package/dist/lib/stable-sort.d.mts +6 -0
  391. package/dist/lib/stable-sort.mjs +33 -0
  392. package/dist/lib/stable-sort.mjs.map +1 -0
  393. package/dist/lib/utils.d.mts +8 -0
  394. package/dist/lib/utils.mjs +4 -0
  395. package/dist/lib-utils.mjs +4 -0
  396. package/dist/loader-B2SF0yPJ.mjs +168 -0
  397. package/dist/loader-B2SF0yPJ.mjs.map +1 -0
  398. package/dist/loading-dots-DJfxDgv3.mjs +119 -0
  399. package/dist/loading-dots-DJfxDgv3.mjs.map +1 -0
  400. package/dist/loading-dots-DvR1lwC-.d.mts +11 -0
  401. package/dist/mini-area-chart-GIUU-ZLo.d.mts +30 -0
  402. package/dist/mini-area-chart-s5ItHBk8.mjs +225 -0
  403. package/dist/mini-area-chart-s5ItHBk8.mjs.map +1 -0
  404. package/dist/motion-DLlwbMJ0.d.mts +33 -0
  405. package/dist/motion-zelaDelJ.mjs +47 -0
  406. package/dist/motion-zelaDelJ.mjs.map +1 -0
  407. package/dist/nav-app-switcher-B1NTlYrm.d.mts +43 -0
  408. package/dist/nav-app-switcher-V7aJAC18.mjs +235 -0
  409. package/dist/nav-app-switcher-V7aJAC18.mjs.map +1 -0
  410. package/dist/nav-main-BscfzNoi.mjs +105 -0
  411. package/dist/nav-main-BscfzNoi.mjs.map +1 -0
  412. package/dist/nav-secondary-t-xeA0I4.mjs +51 -0
  413. package/dist/nav-secondary-t-xeA0I4.mjs.map +1 -0
  414. package/dist/nav-user-A4YHm3-O.mjs +193 -0
  415. package/dist/nav-user-A4YHm3-O.mjs.map +1 -0
  416. package/dist/node-BKXOPjw9.d.mts +100 -0
  417. package/dist/node-CdmDD4k-.mjs +116 -0
  418. package/dist/node-CdmDD4k-.mjs.map +1 -0
  419. package/dist/oneapp-CfwhNatF.mjs +322 -0
  420. package/dist/oneapp-CfwhNatF.mjs.map +1 -0
  421. package/dist/pagination-controls-CE3-eCxI.mjs +135 -0
  422. package/dist/pagination-controls-CE3-eCxI.mjs.map +1 -0
  423. package/dist/popover-DmWxl2lW.mjs +198 -0
  424. package/dist/popover-DmWxl2lW.mjs.map +1 -0
  425. package/dist/preview.d.mts +6 -0
  426. package/dist/progress-BWxdthl4.mjs +230 -0
  427. package/dist/progress-BWxdthl4.mjs.map +1 -0
  428. package/dist/prompt-input-SFJ9_lNw.mjs +1149 -0
  429. package/dist/prompt-input-SFJ9_lNw.mjs.map +1 -0
  430. package/dist/resizable--DaTse0W.mjs +124 -0
  431. package/dist/resizable--DaTse0W.mjs.map +1 -0
  432. package/dist/scroll-area-Bxi-Edjc.mjs +139 -0
  433. package/dist/scroll-area-Bxi-Edjc.mjs.map +1 -0
  434. package/dist/scroll-area-CDRGG59G.d.mts +19 -0
  435. package/dist/select-DI6PzHN3.mjs +411 -0
  436. package/dist/select-DI6PzHN3.mjs.map +1 -0
  437. package/dist/select-csqviwUw.d.mts +44 -0
  438. package/dist/separator-BG9BqZqg.d.mts +20 -0
  439. package/dist/separator-CNQqqwfO.d.mts +20 -0
  440. package/dist/separator-veJJBul5.mjs +118 -0
  441. package/dist/separator-veJJBul5.mjs.map +1 -0
  442. package/dist/shared-BqVcofZN.d.mts +91 -0
  443. package/dist/shared-auth.d.mts +5 -0
  444. package/dist/shared-auth.mjs +6 -0
  445. package/dist/shimmer-BLRAD4VL.mjs +102 -0
  446. package/dist/shimmer-BLRAD4VL.mjs.map +1 -0
  447. package/dist/sidebar-CPteoqnB.d.mts +163 -0
  448. package/dist/sidebar-CdWE7H3R.mjs +814 -0
  449. package/dist/sidebar-CdWE7H3R.mjs.map +1 -0
  450. package/dist/sidebar-DYgXCHqQ.d.mts +163 -0
  451. package/dist/sidebar-inset-header-portal-CIRN-lKw.mjs +153 -0
  452. package/dist/sidebar-inset-header-portal-CIRN-lKw.mjs.map +1 -0
  453. package/dist/sidebar-inset-header-portal-DjfK7xCt.d.mts +24 -0
  454. package/dist/sidebar-slots-DNCEnx5L.mjs +135 -0
  455. package/dist/sidebar-slots-DNCEnx5L.mjs.map +1 -0
  456. package/dist/sidebar-slots-OqNmzlIk.d.mts +47 -0
  457. package/dist/skeleton-ByXUFNDF.d.mts +35 -0
  458. package/dist/skeleton-aXwA3YID.mjs +211 -0
  459. package/dist/skeleton-aXwA3YID.mjs.map +1 -0
  460. package/dist/sources.css +16 -0
  461. package/dist/storybook-preview.mjs +184 -0
  462. package/dist/storybook-preview.mjs.map +1 -0
  463. package/dist/styles/colors.css +166 -0
  464. package/dist/styles/index.css +2 -0
  465. package/dist/styles/mantine.css +1024 -0
  466. package/dist/styles/spacing.css +62 -0
  467. package/dist/styles/theme.css +1687 -0
  468. package/dist/styles/typography.css +59 -0
  469. package/dist/styles/variables.css +998 -0
  470. package/dist/styles.css +1 -0
  471. package/dist/switch-BFct1r4a.mjs +223 -0
  472. package/dist/switch-BFct1r4a.mjs.map +1 -0
  473. package/dist/table-DNkLM1TB.mjs +261 -0
  474. package/dist/table-DNkLM1TB.mjs.map +1 -0
  475. package/dist/textarea-MpLFc9sB.mjs +173 -0
  476. package/dist/textarea-MpLFc9sB.mjs.map +1 -0
  477. package/dist/theme-provider-4D34sBmG.mjs +83 -0
  478. package/dist/theme-provider-4D34sBmG.mjs.map +1 -0
  479. package/dist/time-series-chart-B66xH88w.d.mts +69 -0
  480. package/dist/time-series-chart-DxnknDhW.mjs +400 -0
  481. package/dist/time-series-chart-DxnknDhW.mjs.map +1 -0
  482. package/dist/tokens/tokens.dtcg.json +4353 -0
  483. package/dist/tokens/tokens.json +895 -0
  484. package/dist/tokens-mantine-types.d.mts +3 -0
  485. package/dist/tokens-mantine-types.mjs +4 -0
  486. package/dist/tokens.css +2 -0
  487. package/dist/tokens.d.mts +9398 -0
  488. package/dist/tokens.mjs +9311 -0
  489. package/dist/tokens.mjs.map +1 -0
  490. package/dist/tooltip-B8_zKnHC.mjs +301 -0
  491. package/dist/tooltip-B8_zKnHC.mjs.map +1 -0
  492. package/dist/tooltip-BA27ygge.d.mts +44 -0
  493. package/dist/tooltip-FqB3srL-.d.mts +44 -0
  494. package/dist/tooltip-sync-Ax1GmpjC.d.mts +17 -0
  495. package/dist/tooltip-sync-DzJUgiTM.mjs +85 -0
  496. package/dist/tooltip-sync-DzJUgiTM.mjs.map +1 -0
  497. package/dist/types-B8z57DW2.d.mts +41 -0
  498. package/dist/use-artifact-panel-state-CUQTn2Uq.mjs +346 -0
  499. package/dist/use-artifact-panel-state-CUQTn2Uq.mjs.map +1 -0
  500. package/dist/use-artifact-panel-state-DPZC--sz.d.mts +150 -0
  501. package/dist/utils-BJGrUJ6T.mjs +77 -0
  502. package/dist/utils-BJGrUJ6T.mjs.map +1 -0
  503. package/dist/utils-D2bGp2p_.mjs +33 -0
  504. package/dist/utils-D2bGp2p_.mjs.map +1 -0
  505. package/dist/x-axis-BY00htJY.mjs +137 -0
  506. package/dist/x-axis-BY00htJY.mjs.map +1 -0
  507. package/dist/x-axis-Dh66iD8l.d.mts +21 -0
  508. package/dist/y-axis-DgHlVHRG.mjs +118 -0
  509. package/dist/y-axis-DgHlVHRG.mjs.map +1 -0
  510. package/dist/y-axis-DocBbrSp.d.mts +23 -0
  511. package/dist/z-index-BlBlZL-F.d.mts +10775 -0
  512. package/package.json +429 -0
  513. package/src/ai-oneapp/flow-chat/index.ts +3 -0
  514. package/src/ai-oneapp/flow-chat/node-suggestion-card.tsx +37 -0
  515. package/src/ai-oneapp/flow-chat/template-suggestion-card.tsx +49 -0
  516. package/src/ai-oneapp/flow-chat/workflow-action-toast.tsx +55 -0
  517. package/src/components/.gitkeep +0 -0
  518. package/src/components/ai-elements/__tests__/test-utils.tsx +12 -0
  519. package/src/components/ai-elements/actions/actions.stories.tsx +288 -0
  520. package/src/components/ai-elements/actions/actions.test.tsx +60 -0
  521. package/src/components/ai-elements/actions/actions.tsx +286 -0
  522. package/src/components/ai-elements/actions/index.ts +7 -0
  523. package/src/components/ai-elements/agent-step/agent-step.stories.tsx +167 -0
  524. package/src/components/ai-elements/agent-step/agent-step.tsx +206 -0
  525. package/src/components/ai-elements/agent-step/index.ts +7 -0
  526. package/src/components/ai-elements/ai-elements.constants.ts +516 -0
  527. package/src/components/ai-elements/artifact/artifact.stories.tsx +199 -0
  528. package/src/components/ai-elements/artifact/artifact.tsx +277 -0
  529. package/src/components/ai-elements/artifact/index.ts +7 -0
  530. package/src/components/ai-elements/branch/branch.stories.tsx +212 -0
  531. package/src/components/ai-elements/branch/branch.test.tsx +148 -0
  532. package/src/components/ai-elements/branch/branch.tsx +502 -0
  533. package/src/components/ai-elements/branch/index.ts +7 -0
  534. package/src/components/ai-elements/chain-of-thought/chain-of-thought.stories.tsx +172 -0
  535. package/src/components/ai-elements/chain-of-thought/chain-of-thought.tsx +505 -0
  536. package/src/components/ai-elements/chain-of-thought/index.ts +7 -0
  537. package/src/components/ai-elements/chat-input/chat-input.stories.tsx +185 -0
  538. package/src/components/ai-elements/chat-input/chat-input.tsx +201 -0
  539. package/src/components/ai-elements/chat-input/index.ts +7 -0
  540. package/src/components/ai-elements/checkpoint/checkpoint.stories.tsx +171 -0
  541. package/src/components/ai-elements/checkpoint/checkpoint.tsx +256 -0
  542. package/src/components/ai-elements/checkpoint/index.ts +7 -0
  543. package/src/components/ai-elements/code-block/code-block.stories.tsx +317 -0
  544. package/src/components/ai-elements/code-block/code-block.tsx +366 -0
  545. package/src/components/ai-elements/code-block/index.ts +7 -0
  546. package/src/components/ai-elements/confirmation/confirmation.stories.tsx +236 -0
  547. package/src/components/ai-elements/confirmation/confirmation.tsx +465 -0
  548. package/src/components/ai-elements/confirmation/index.ts +7 -0
  549. package/src/components/ai-elements/context/context.stories.tsx +80 -0
  550. package/src/components/ai-elements/context/context.tsx +585 -0
  551. package/src/components/ai-elements/context/index.ts +7 -0
  552. package/src/components/ai-elements/conversation/__tests__/conversation.test.tsx +402 -0
  553. package/src/components/ai-elements/conversation/conversation.stories.tsx +1019 -0
  554. package/src/components/ai-elements/conversation/conversation.tsx +260 -0
  555. package/src/components/ai-elements/conversation/index.ts +7 -0
  556. package/src/components/ai-elements/custom/__tests__/accessibility.test.tsx +27 -0
  557. package/src/components/ai-elements/custom/__tests__/chat-container.test.tsx +30 -0
  558. package/src/components/ai-elements/custom/__tests__/conversation-history.test.tsx +100 -0
  559. package/src/components/ai-elements/custom/__tests__/export-dropdown.test.tsx +60 -0
  560. package/src/components/ai-elements/custom/ai-label/ai-label.stories.tsx +86 -0
  561. package/src/components/ai-elements/custom/ai-label/ai-label.tsx +291 -0
  562. package/src/components/ai-elements/custom/ai-label/index.ts +7 -0
  563. package/src/components/ai-elements/custom/artifact-skeleton/artifact-skeleton.stories.tsx +155 -0
  564. package/src/components/ai-elements/custom/artifact-skeleton/artifact-skeleton.tsx +269 -0
  565. package/src/components/ai-elements/custom/artifact-skeleton/index.ts +18 -0
  566. package/src/components/ai-elements/custom/audio-player/audio-player.stories.tsx +50 -0
  567. package/src/components/ai-elements/custom/audio-player/audio-player.tsx +296 -0
  568. package/src/components/ai-elements/custom/audio-player/index.ts +1 -0
  569. package/src/components/ai-elements/custom/button-group/button-group.stories.tsx +108 -0
  570. package/src/components/ai-elements/custom/button-group/button-group.tsx +142 -0
  571. package/src/components/ai-elements/custom/button-group/index.ts +15 -0
  572. package/src/components/ai-elements/custom/chat-container/chat-container.stories.tsx +143 -0
  573. package/src/components/ai-elements/custom/chat-container/chat-container.tsx +406 -0
  574. package/src/components/ai-elements/custom/chat-container/index.ts +9 -0
  575. package/src/components/ai-elements/custom/collapsible/collapsible.stories.tsx +130 -0
  576. package/src/components/ai-elements/custom/collapsible/index.ts +11 -0
  577. package/src/components/ai-elements/custom/collapsible/use-collapsible.tsx +240 -0
  578. package/src/components/ai-elements/custom/collapsible-content/collapsible-content.stories.tsx +113 -0
  579. package/src/components/ai-elements/custom/collapsible-content/collapsible-content.tsx +141 -0
  580. package/src/components/ai-elements/custom/collapsible-content/index.ts +7 -0
  581. package/src/components/ai-elements/custom/content-placeholder/content-placeholder.stories.tsx +82 -0
  582. package/src/components/ai-elements/custom/content-placeholder/content-placeholder.tsx +319 -0
  583. package/src/components/ai-elements/custom/content-placeholder/index.ts +10 -0
  584. package/src/components/ai-elements/custom/conversation-header/conversation-header.stories.tsx +102 -0
  585. package/src/components/ai-elements/custom/conversation-header/conversation-header.tsx +202 -0
  586. package/src/components/ai-elements/custom/conversation-header/index.ts +12 -0
  587. package/src/components/ai-elements/custom/conversation-history/conversation-history.stories.tsx +191 -0
  588. package/src/components/ai-elements/custom/conversation-history/conversation-history.tsx +515 -0
  589. package/src/components/ai-elements/custom/conversation-history/index.ts +16 -0
  590. package/src/components/ai-elements/custom/diff-view/diff-view.stories.tsx +173 -0
  591. package/src/components/ai-elements/custom/diff-view/diff-view.tsx +261 -0
  592. package/src/components/ai-elements/custom/diff-view/index.ts +7 -0
  593. package/src/components/ai-elements/custom/draggable-tabs/draggable-tabs.stories.tsx +157 -0
  594. package/src/components/ai-elements/custom/draggable-tabs/draggable-tabs.tsx +311 -0
  595. package/src/components/ai-elements/custom/draggable-tabs/index.ts +7 -0
  596. package/src/components/ai-elements/custom/export-conversation/export-conversation.stories.tsx +73 -0
  597. package/src/components/ai-elements/custom/export-conversation/export-conversation.tsx +405 -0
  598. package/src/components/ai-elements/custom/export-conversation/index.ts +10 -0
  599. package/src/components/ai-elements/custom/export-dropdown/export-dropdown.stories.tsx +121 -0
  600. package/src/components/ai-elements/custom/export-dropdown/export-dropdown.tsx +315 -0
  601. package/src/components/ai-elements/custom/export-dropdown/index.ts +11 -0
  602. package/src/components/ai-elements/custom/feedback/feedback.stories.tsx +85 -0
  603. package/src/components/ai-elements/custom/feedback/feedback.tsx +425 -0
  604. package/src/components/ai-elements/custom/feedback/index.ts +13 -0
  605. package/src/components/ai-elements/custom/file-card/file-card.stories.tsx +65 -0
  606. package/src/components/ai-elements/custom/file-card/file-card.tsx +249 -0
  607. package/src/components/ai-elements/custom/file-card/index.ts +1 -0
  608. package/src/components/ai-elements/custom/file-tree/file-tree.stories.tsx +96 -0
  609. package/src/components/ai-elements/custom/file-tree/file-tree.tsx +266 -0
  610. package/src/components/ai-elements/custom/file-tree/index.ts +7 -0
  611. package/src/components/ai-elements/custom/index.ts +73 -0
  612. package/src/components/ai-elements/custom/keyboard-shortcut/index.ts +14 -0
  613. package/src/components/ai-elements/custom/keyboard-shortcut/keyboard-shortcut.stories.tsx +118 -0
  614. package/src/components/ai-elements/custom/keyboard-shortcut/keyboard-shortcut.tsx +292 -0
  615. package/src/components/ai-elements/custom/message-edit/index.ts +1 -0
  616. package/src/components/ai-elements/custom/message-edit/message-edit.stories.tsx +88 -0
  617. package/src/components/ai-elements/custom/message-edit/message-edit.tsx +225 -0
  618. package/src/components/ai-elements/custom/message-error/index.ts +7 -0
  619. package/src/components/ai-elements/custom/message-error/message-error.stories.tsx +85 -0
  620. package/src/components/ai-elements/custom/message-error/message-error.tsx +301 -0
  621. package/src/components/ai-elements/custom/message-group/index.ts +1 -0
  622. package/src/components/ai-elements/custom/message-group/message-group.stories.tsx +82 -0
  623. package/src/components/ai-elements/custom/message-group/message-group.tsx +77 -0
  624. package/src/components/ai-elements/custom/message-separator/index.ts +1 -0
  625. package/src/components/ai-elements/custom/message-separator/message-separator.stories.tsx +65 -0
  626. package/src/components/ai-elements/custom/message-separator/message-separator.tsx +132 -0
  627. package/src/components/ai-elements/custom/scroll-to-bottom/index.ts +11 -0
  628. package/src/components/ai-elements/custom/scroll-to-bottom/scroll-to-bottom.stories.tsx +116 -0
  629. package/src/components/ai-elements/custom/scroll-to-bottom/use-scroll-to-bottom.tsx +215 -0
  630. package/src/components/ai-elements/custom/snippet/index.ts +1 -0
  631. package/src/components/ai-elements/custom/snippet/snippet.stories.tsx +59 -0
  632. package/src/components/ai-elements/custom/snippet/snippet.tsx +158 -0
  633. package/src/components/ai-elements/custom/stack-trace/index.ts +1 -0
  634. package/src/components/ai-elements/custom/stack-trace/stack-trace.stories.tsx +112 -0
  635. package/src/components/ai-elements/custom/stack-trace/stack-trace.tsx +368 -0
  636. package/src/components/ai-elements/custom/terminal/index.ts +9 -0
  637. package/src/components/ai-elements/custom/terminal/terminal.stories.tsx +92 -0
  638. package/src/components/ai-elements/custom/terminal/terminal.tsx +233 -0
  639. package/src/components/ai-elements/custom/test-results/test-results.tsx +438 -0
  640. package/src/components/ai-elements/custom/thought-chain/index.ts +7 -0
  641. package/src/components/ai-elements/custom/thought-chain/thought-chain.stories.tsx +123 -0
  642. package/src/components/ai-elements/custom/thought-chain/thought-chain.tsx +246 -0
  643. package/src/components/ai-elements/custom/token-usage/index.ts +6 -0
  644. package/src/components/ai-elements/custom/token-usage/token-usage.stories.tsx +104 -0
  645. package/src/components/ai-elements/custom/token-usage/token-usage.tsx +236 -0
  646. package/src/components/ai-elements/custom/transcription/index.ts +1 -0
  647. package/src/components/ai-elements/custom/transcription/transcription.stories.tsx +80 -0
  648. package/src/components/ai-elements/custom/transcription/transcription.tsx +163 -0
  649. package/src/components/ai-elements/custom/typing-indicator/index.ts +1 -0
  650. package/src/components/ai-elements/custom/typing-indicator/typing-indicator.stories.tsx +71 -0
  651. package/src/components/ai-elements/custom/typing-indicator/typing-indicator.tsx +126 -0
  652. package/src/components/ai-elements/custom/undo-redo/index.ts +12 -0
  653. package/src/components/ai-elements/custom/undo-redo/undo-redo.stories.tsx +145 -0
  654. package/src/components/ai-elements/custom/undo-redo/use-undo-redo.tsx +324 -0
  655. package/src/components/ai-elements/custom/voice-selector/index.ts +7 -0
  656. package/src/components/ai-elements/custom/voice-selector/voice-selector.stories.tsx +67 -0
  657. package/src/components/ai-elements/custom/voice-selector/voice-selector.tsx +301 -0
  658. package/src/components/ai-elements/custom/welcome/index.ts +1 -0
  659. package/src/components/ai-elements/custom/welcome/welcome.stories.tsx +92 -0
  660. package/src/components/ai-elements/custom/welcome/welcome.tsx +213 -0
  661. package/src/components/ai-elements/generative-ui/generative-ui-renderer.stories.tsx +451 -0
  662. package/src/components/ai-elements/generative-ui/generative-ui-renderer.test.tsx +383 -0
  663. package/src/components/ai-elements/generative-ui/generative-ui-renderer.tsx +668 -0
  664. package/src/components/ai-elements/generative-ui/index.ts +21 -0
  665. package/src/components/ai-elements/image/image.stories.tsx +179 -0
  666. package/src/components/ai-elements/image/image.tsx +178 -0
  667. package/src/components/ai-elements/image/index.ts +7 -0
  668. package/src/components/ai-elements/index.ts +195 -0
  669. package/src/components/ai-elements/inline-citation/index.ts +7 -0
  670. package/src/components/ai-elements/inline-citation/inline-citation.stories.tsx +331 -0
  671. package/src/components/ai-elements/inline-citation/inline-citation.tsx +595 -0
  672. package/src/components/ai-elements/loader/index.ts +7 -0
  673. package/src/components/ai-elements/loader/loader.stories.tsx +185 -0
  674. package/src/components/ai-elements/loader/loader.tsx +177 -0
  675. package/src/components/ai-elements/message/__tests__/message.test.tsx +352 -0
  676. package/src/components/ai-elements/message/index.ts +7 -0
  677. package/src/components/ai-elements/message/message-actions.test.tsx +51 -0
  678. package/src/components/ai-elements/message/message.stories.tsx +609 -0
  679. package/src/components/ai-elements/message/message.test.tsx +52 -0
  680. package/src/components/ai-elements/message/message.tsx +1125 -0
  681. package/src/components/ai-elements/message/response.test.tsx +18 -0
  682. package/src/components/ai-elements/model-selector/index.ts +7 -0
  683. package/src/components/ai-elements/model-selector/model-selector.stories.tsx +198 -0
  684. package/src/components/ai-elements/model-selector/model-selector.tsx +406 -0
  685. package/src/components/ai-elements/modernization_walkthrough.md +51 -0
  686. package/src/components/ai-elements/open-in-chat/index.ts +7 -0
  687. package/src/components/ai-elements/open-in-chat/open-in-chat.stories.tsx +221 -0
  688. package/src/components/ai-elements/open-in-chat/open-in-chat.tsx +606 -0
  689. package/src/components/ai-elements/plan/index.ts +7 -0
  690. package/src/components/ai-elements/plan/plan.stories.tsx +233 -0
  691. package/src/components/ai-elements/plan/plan.tsx +337 -0
  692. package/src/components/ai-elements/prompt-char-counter/index.ts +7 -0
  693. package/src/components/ai-elements/prompt-char-counter/prompt-char-counter.stories.tsx +98 -0
  694. package/src/components/ai-elements/prompt-char-counter/prompt-char-counter.tsx +159 -0
  695. package/src/components/ai-elements/prompt-input/index.ts +7 -0
  696. package/src/components/ai-elements/prompt-input/prompt-input.stories.tsx +548 -0
  697. package/src/components/ai-elements/prompt-input/prompt-input.test.tsx +22 -0
  698. package/src/components/ai-elements/prompt-input/prompt-input.tsx +2112 -0
  699. package/src/components/ai-elements/queue/index.ts +7 -0
  700. package/src/components/ai-elements/queue/queue.stories.tsx +249 -0
  701. package/src/components/ai-elements/queue/queue.tsx +456 -0
  702. package/src/components/ai-elements/reasoning/index.ts +7 -0
  703. package/src/components/ai-elements/reasoning/reasoning.stories.tsx +147 -0
  704. package/src/components/ai-elements/reasoning/reasoning.tsx +356 -0
  705. package/src/components/ai-elements/shimmer/index.ts +7 -0
  706. package/src/components/ai-elements/shimmer/shimmer.stories.tsx +240 -0
  707. package/src/components/ai-elements/shimmer/shimmer.tsx +150 -0
  708. package/src/components/ai-elements/sources/index.ts +7 -0
  709. package/src/components/ai-elements/sources/sources.stories.tsx +259 -0
  710. package/src/components/ai-elements/sources/sources.test.tsx +40 -0
  711. package/src/components/ai-elements/sources/sources.tsx +327 -0
  712. package/src/components/ai-elements/suggestion/index.ts +7 -0
  713. package/src/components/ai-elements/suggestion/suggestion.stories.tsx +207 -0
  714. package/src/components/ai-elements/suggestion/suggestion.tsx +229 -0
  715. package/src/components/ai-elements/task/index.ts +7 -0
  716. package/src/components/ai-elements/task/task.stories.tsx +213 -0
  717. package/src/components/ai-elements/task/task.tsx +356 -0
  718. package/src/components/ai-elements/test-utils.tsx +28 -0
  719. package/src/components/ai-elements/tool/index.ts +7 -0
  720. package/src/components/ai-elements/tool/tool.stories.tsx +195 -0
  721. package/src/components/ai-elements/tool/tool.test.tsx +160 -0
  722. package/src/components/ai-elements/tool/tool.tsx +537 -0
  723. package/src/components/ai-elements/tool-approval/index.ts +7 -0
  724. package/src/components/ai-elements/tool-approval/tool-approval.stories.tsx +260 -0
  725. package/src/components/ai-elements/tool-approval/tool-approval.tsx +423 -0
  726. package/src/components/ai-elements/vitest.config.ts +17 -0
  727. package/src/components/ai-elements/vitest.setup.ts +6 -0
  728. package/src/components/ai-elements/web-preview/index.ts +7 -0
  729. package/src/components/ai-elements/web-preview/web-preview.stories.tsx +202 -0
  730. package/src/components/ai-elements/web-preview/web-preview.tsx +1166 -0
  731. package/src/components/ai-workflows/canvas/canvas.stories.tsx +120 -0
  732. package/src/components/ai-workflows/canvas/canvas.tsx +173 -0
  733. package/src/components/ai-workflows/canvas/index.ts +7 -0
  734. package/src/components/ai-workflows/connection/connection.stories.tsx +66 -0
  735. package/src/components/ai-workflows/connection/connection.tsx +119 -0
  736. package/src/components/ai-workflows/connection/index.ts +7 -0
  737. package/src/components/ai-workflows/controls/controls.stories.tsx +72 -0
  738. package/src/components/ai-workflows/controls/controls.tsx +132 -0
  739. package/src/components/ai-workflows/controls/index.ts +7 -0
  740. package/src/components/ai-workflows/edge/edge.stories.tsx +120 -0
  741. package/src/components/ai-workflows/edge/edge.test.tsx +47 -0
  742. package/src/components/ai-workflows/edge/edge.tsx +136 -0
  743. package/src/components/ai-workflows/edge/index.ts +7 -0
  744. package/src/components/ai-workflows/flow-constants.ts +11 -0
  745. package/src/components/ai-workflows/node/index.ts +7 -0
  746. package/src/components/ai-workflows/node/node.stories.tsx +111 -0
  747. package/src/components/ai-workflows/node/node.tsx +227 -0
  748. package/src/components/ai-workflows/panel/index.ts +7 -0
  749. package/src/components/ai-workflows/panel/panel.stories.tsx +102 -0
  750. package/src/components/ai-workflows/panel/panel.tsx +106 -0
  751. package/src/components/ai-workflows/resizable-node/index.ts +7 -0
  752. package/src/components/ai-workflows/resizable-node/resizable-node.stories.tsx +93 -0
  753. package/src/components/ai-workflows/resizable-node/resizable-node.tsx +228 -0
  754. package/src/components/ai-workflows/toolbar/index.ts +7 -0
  755. package/src/components/ai-workflows/toolbar/toolbar.stories.tsx +99 -0
  756. package/src/components/ai-workflows/toolbar/toolbar.tsx +130 -0
  757. package/src/components/auth/client/index.ts +12 -0
  758. package/src/components/auth/client/nav-user/auth-nav-user.tsx +237 -0
  759. package/src/components/auth/client/nav-user/index.ts +11 -0
  760. package/src/components/auth/client/providers/ThemeProvider.stories.tsx +59 -0
  761. package/src/components/auth/client/providers/ThemeProvider.tsx +39 -0
  762. package/src/components/auth/client/providers/index.ts +7 -0
  763. package/src/components/auth/client/providers.tsx +129 -0
  764. package/src/components/auth/index.ts +14 -0
  765. package/src/components/auth/server/account/ProfileForm.stories.tsx +105 -0
  766. package/src/components/auth/server/account/ProfileForm.tsx +236 -0
  767. package/src/components/auth/server/account/index.ts +7 -0
  768. package/src/components/auth/server/actions/index.ts +11 -0
  769. package/src/components/auth/server/actions.ts +88 -0
  770. package/src/components/auth/server/admin/AdminBulkUserActions.stories.tsx +129 -0
  771. package/src/components/auth/server/admin/AdminBulkUserActions.tsx +649 -0
  772. package/src/components/auth/server/admin/AdminDashboard.stories.tsx +215 -0
  773. package/src/components/auth/server/admin/AdminDashboard.tsx +785 -0
  774. package/src/components/auth/server/admin/AdminDevicesManager.tsx +411 -0
  775. package/src/components/auth/server/admin/AdminImpersonation.stories.tsx +121 -0
  776. package/src/components/auth/server/admin/AdminImpersonation.tsx +569 -0
  777. package/src/components/auth/server/admin/AdminPasskeysManager.tsx +393 -0
  778. package/src/components/auth/server/admin/AdminSecurityEventsViewer.tsx +395 -0
  779. package/src/components/auth/server/admin/AdminServiceAccountsManager.tsx +454 -0
  780. package/src/components/auth/server/admin/AdminSessionsManager.tsx +664 -0
  781. package/src/components/auth/server/admin/AdminTwoFactorManager.tsx +431 -0
  782. package/src/components/auth/server/admin/AdminUserCreation.stories.tsx +87 -0
  783. package/src/components/auth/server/admin/AdminUserCreation.tsx +777 -0
  784. package/src/components/auth/server/admin/AdminUserDetail.stories.tsx +178 -0
  785. package/src/components/auth/server/admin/AdminUserDetail.tsx +1044 -0
  786. package/src/components/auth/server/admin/AdminUsersList.stories.tsx +228 -0
  787. package/src/components/auth/server/admin/AdminUsersList.tsx +859 -0
  788. package/src/components/auth/server/admin/index.ts +59 -0
  789. package/src/components/auth/server/advanced/PasskeySetup.stories.tsx +70 -0
  790. package/src/components/auth/server/advanced/PasskeySetup.tsx +383 -0
  791. package/src/components/auth/server/advanced/TwoFactorSetup.stories.tsx +79 -0
  792. package/src/components/auth/server/advanced/TwoFactorSetup.tsx +459 -0
  793. package/src/components/auth/server/advanced/TwoFactorVerify.stories.tsx +69 -0
  794. package/src/components/auth/server/advanced/TwoFactorVerify.tsx +323 -0
  795. package/src/components/auth/server/advanced/index.ts +10 -0
  796. package/src/components/auth/server/api-keys/APIKeysList.stories.tsx +95 -0
  797. package/src/components/auth/server/api-keys/APIKeysList.tsx +470 -0
  798. package/src/components/auth/server/api-keys/CreateAPIKeyForm.stories.tsx +79 -0
  799. package/src/components/auth/server/api-keys/CreateAPIKeyForm.tsx +501 -0
  800. package/src/components/auth/server/api-keys/index.ts +9 -0
  801. package/src/components/auth/server/enhanced/AccountDeletionFlow.stories.tsx +115 -0
  802. package/src/components/auth/server/enhanced/AccountDeletionFlow.tsx +733 -0
  803. package/src/components/auth/server/enhanced/AnonymousSessionCreator.stories.tsx +80 -0
  804. package/src/components/auth/server/enhanced/AnonymousSessionCreator.tsx +398 -0
  805. package/src/components/auth/server/enhanced/AnonymousToAccountConverter.stories.tsx +61 -0
  806. package/src/components/auth/server/enhanced/AnonymousToAccountConverter.tsx +538 -0
  807. package/src/components/auth/server/enhanced/BackupCodesManager.stories.tsx +108 -0
  808. package/src/components/auth/server/enhanced/BackupCodesManager.tsx +718 -0
  809. package/src/components/auth/server/enhanced/BearerTokenGenerator.stories.tsx +85 -0
  810. package/src/components/auth/server/enhanced/BearerTokenGenerator.tsx +618 -0
  811. package/src/components/auth/server/enhanced/ChangePasswordForm.stories.tsx +108 -0
  812. package/src/components/auth/server/enhanced/ChangePasswordForm.tsx +313 -0
  813. package/src/components/auth/server/enhanced/DataExportRequest.stories.tsx +84 -0
  814. package/src/components/auth/server/enhanced/DataExportRequest.tsx +734 -0
  815. package/src/components/auth/server/enhanced/DeviceManagement.stories.tsx +161 -0
  816. package/src/components/auth/server/enhanced/DeviceManagement.tsx +700 -0
  817. package/src/components/auth/server/enhanced/EmailChangeVerification.stories.tsx +94 -0
  818. package/src/components/auth/server/enhanced/EmailChangeVerification.tsx +421 -0
  819. package/src/components/auth/server/enhanced/EmailOTPSignIn.stories.tsx +68 -0
  820. package/src/components/auth/server/enhanced/EmailOTPSignIn.tsx +516 -0
  821. package/src/components/auth/server/enhanced/EmailOTPVerification.stories.tsx +95 -0
  822. package/src/components/auth/server/enhanced/EmailOTPVerification.tsx +610 -0
  823. package/src/components/auth/server/enhanced/EmailVerificationRequest.stories.tsx +97 -0
  824. package/src/components/auth/server/enhanced/EmailVerificationRequest.tsx +461 -0
  825. package/src/components/auth/server/enhanced/EmailVerificationStatus.stories.tsx +96 -0
  826. package/src/components/auth/server/enhanced/EmailVerificationStatus.tsx +631 -0
  827. package/src/components/auth/server/enhanced/MagicLinkRequestForm.stories.tsx +88 -0
  828. package/src/components/auth/server/enhanced/MagicLinkRequestForm.tsx +439 -0
  829. package/src/components/auth/server/enhanced/MagicLinkStatusIndicator.stories.tsx +101 -0
  830. package/src/components/auth/server/enhanced/MagicLinkStatusIndicator.tsx +610 -0
  831. package/src/components/auth/server/enhanced/MultiSessionDashboard.stories.tsx +101 -0
  832. package/src/components/auth/server/enhanced/MultiSessionDashboard.tsx +996 -0
  833. package/src/components/auth/server/enhanced/OrganizationAuditLog.stories.tsx +86 -0
  834. package/src/components/auth/server/enhanced/OrganizationAuditLog.tsx +1006 -0
  835. package/src/components/auth/server/enhanced/PasskeyManagement.stories.tsx +102 -0
  836. package/src/components/auth/server/enhanced/PasskeyManagement.tsx +705 -0
  837. package/src/components/auth/server/enhanced/PasskeyRegistrationWizard.stories.tsx +83 -0
  838. package/src/components/auth/server/enhanced/PasskeyRegistrationWizard.tsx +566 -0
  839. package/src/components/auth/server/enhanced/PasskeySignInInterface.stories.tsx +90 -0
  840. package/src/components/auth/server/enhanced/PasskeySignInInterface.tsx +792 -0
  841. package/src/components/auth/server/enhanced/PasswordStrengthIndicator.stories.tsx +129 -0
  842. package/src/components/auth/server/enhanced/PasswordStrengthIndicator.tsx +539 -0
  843. package/src/components/auth/server/enhanced/PhoneNumberManagement.stories.tsx +103 -0
  844. package/src/components/auth/server/enhanced/PhoneNumberManagement.tsx +594 -0
  845. package/src/components/auth/server/enhanced/PhoneNumberSetupForm.stories.tsx +91 -0
  846. package/src/components/auth/server/enhanced/PhoneNumberSetupForm.tsx +518 -0
  847. package/src/components/auth/server/enhanced/PhoneSignInForm.stories.tsx +63 -0
  848. package/src/components/auth/server/enhanced/PhoneSignInForm.tsx +801 -0
  849. package/src/components/auth/server/enhanced/PhoneSignInWithSMS.stories.tsx +87 -0
  850. package/src/components/auth/server/enhanced/PhoneSignInWithSMS.tsx +886 -0
  851. package/src/components/auth/server/enhanced/PhoneVerificationForm.stories.tsx +81 -0
  852. package/src/components/auth/server/enhanced/PhoneVerificationForm.tsx +306 -0
  853. package/src/components/auth/server/enhanced/ResendVerificationEmail.stories.tsx +84 -0
  854. package/src/components/auth/server/enhanced/ResendVerificationEmail.tsx +407 -0
  855. package/src/components/auth/server/enhanced/SMSVerificationForm.stories.tsx +92 -0
  856. package/src/components/auth/server/enhanced/SMSVerificationForm.tsx +521 -0
  857. package/src/components/auth/server/enhanced/SecurityEventLog.stories.tsx +115 -0
  858. package/src/components/auth/server/enhanced/SecurityEventLog.tsx +916 -0
  859. package/src/components/auth/server/enhanced/TeamCreationWizard.stories.tsx +85 -0
  860. package/src/components/auth/server/enhanced/TeamCreationWizard.tsx +1023 -0
  861. package/src/components/auth/server/enhanced/__tests__/actions.test.ts +388 -0
  862. package/src/components/auth/server/enhanced/__tests__/more-actions.test.ts +139 -0
  863. package/src/components/auth/server/enhanced/actions.ts +1199 -0
  864. package/src/components/auth/server/enhanced/auth-enhanced-actions.ts +936 -0
  865. package/src/components/auth/server/enhanced/index.ts +37 -0
  866. package/src/components/auth/server/forms/ForgotPasswordForm.stories.tsx +82 -0
  867. package/src/components/auth/server/forms/ForgotPasswordForm.tsx +287 -0
  868. package/src/components/auth/server/forms/ResetPasswordForm.stories.tsx +79 -0
  869. package/src/components/auth/server/forms/ResetPasswordForm.tsx +217 -0
  870. package/src/components/auth/server/forms/SignInForm.stories.tsx +113 -0
  871. package/src/components/auth/server/forms/SignInForm.tsx +211 -0
  872. package/src/components/auth/server/forms/SignUpForm.stories.tsx +130 -0
  873. package/src/components/auth/server/forms/SignUpForm.tsx +243 -0
  874. package/src/components/auth/server/forms/index.ts +10 -0
  875. package/src/components/auth/server/index.ts +22 -0
  876. package/src/components/auth/server/jwt/JWTTokenManager.tsx +315 -0
  877. package/src/components/auth/server/jwt/index.ts +7 -0
  878. package/src/components/auth/server/organization/AuditLogViewer.tsx +288 -0
  879. package/src/components/auth/server/organization/CreateRoleDialog.tsx +540 -0
  880. package/src/components/auth/server/organization/EditRoleDialog.tsx +487 -0
  881. package/src/components/auth/server/organization/InviteMembers.stories.tsx +82 -0
  882. package/src/components/auth/server/organization/InviteMembers.tsx +264 -0
  883. package/src/components/auth/server/organization/MembersList.stories.tsx +117 -0
  884. package/src/components/auth/server/organization/MembersList.tsx +425 -0
  885. package/src/components/auth/server/organization/OrganizationCreation.stories.tsx +99 -0
  886. package/src/components/auth/server/organization/OrganizationCreation.tsx +293 -0
  887. package/src/components/auth/server/organization/OrganizationSettings.stories.tsx +99 -0
  888. package/src/components/auth/server/organization/OrganizationSettings.tsx +494 -0
  889. package/src/components/auth/server/organization/OrganizationSwitcher.stories.tsx +98 -0
  890. package/src/components/auth/server/organization/OrganizationSwitcher.tsx +308 -0
  891. package/src/components/auth/server/organization/PermissionMatrix.tsx +366 -0
  892. package/src/components/auth/server/organization/RoleManagement.stories.tsx +120 -0
  893. package/src/components/auth/server/organization/RoleManagement.tsx +318 -0
  894. package/src/components/auth/server/organization/index.ts +16 -0
  895. package/src/components/auth/server/session/SessionsList.stories.tsx +81 -0
  896. package/src/components/auth/server/session/SessionsList.tsx +274 -0
  897. package/src/components/auth/server/session/index.ts +7 -0
  898. package/src/components/auth/server/social/SocialLoginButtons.stories.tsx +139 -0
  899. package/src/components/auth/server/social/SocialLoginButtons.tsx +292 -0
  900. package/src/components/auth/server/social/index.ts +7 -0
  901. package/src/components/auth/server/ui/Alert.stories.tsx +97 -0
  902. package/src/components/auth/server/ui/Alert.tsx +159 -0
  903. package/src/components/auth/server/ui/Button.stories.tsx +149 -0
  904. package/src/components/auth/server/ui/Button.tsx +221 -0
  905. package/src/components/auth/server/ui/Card.stories.tsx +80 -0
  906. package/src/components/auth/server/ui/Card.tsx +51 -0
  907. package/src/components/auth/server/ui/Input.stories.tsx +143 -0
  908. package/src/components/auth/server/ui/Input.tsx +195 -0
  909. package/src/components/auth/server/ui/index.ts +18 -0
  910. package/src/components/charts/areas/areas.stories.tsx +113 -0
  911. package/src/components/charts/areas/areas.tsx +185 -0
  912. package/src/components/charts/areas/index.ts +11 -0
  913. package/src/components/charts/bars/bars.stories.tsx +109 -0
  914. package/src/components/charts/bars/bars.tsx +164 -0
  915. package/src/components/charts/bars/index.ts +11 -0
  916. package/src/components/charts/chart-context.ts +35 -0
  917. package/src/components/charts/funnel-chart/funnel-chart.stories.tsx +111 -0
  918. package/src/components/charts/funnel-chart/funnel-chart.tsx +392 -0
  919. package/src/components/charts/funnel-chart/index.ts +11 -0
  920. package/src/components/charts/index.ts +45 -0
  921. package/src/components/charts/mini-area-chart/index.ts +11 -0
  922. package/src/components/charts/mini-area-chart/mini-area-chart.stories.tsx +100 -0
  923. package/src/components/charts/mini-area-chart/mini-area-chart.tsx +244 -0
  924. package/src/components/charts/time-series-chart/index.ts +11 -0
  925. package/src/components/charts/time-series-chart/time-series-chart.stories.tsx +140 -0
  926. package/src/components/charts/time-series-chart/time-series-chart.tsx +337 -0
  927. package/src/components/charts/tooltip-sync/index.ts +11 -0
  928. package/src/components/charts/tooltip-sync/tooltip-sync.stories.tsx +89 -0
  929. package/src/components/charts/tooltip-sync/tooltip-sync.tsx +91 -0
  930. package/src/components/charts/types.ts +93 -0
  931. package/src/components/charts/use-tooltip.ts +230 -0
  932. package/src/components/charts/utils.ts +69 -0
  933. package/src/components/charts/x-axis/index.ts +11 -0
  934. package/src/components/charts/x-axis/x-axis.stories.tsx +94 -0
  935. package/src/components/charts/x-axis/x-axis.tsx +176 -0
  936. package/src/components/charts/y-axis/index.ts +7 -0
  937. package/src/components/charts/y-axis/y-axis.stories.tsx +110 -0
  938. package/src/components/charts/y-axis/y-axis.tsx +139 -0
  939. package/src/components/elements/atoms/alert/alert.stories.tsx +234 -0
  940. package/src/components/elements/atoms/alert/alert.tsx +293 -0
  941. package/src/components/elements/atoms/alert/index.ts +7 -0
  942. package/src/components/elements/atoms/avatar/avatar.stories.tsx +174 -0
  943. package/src/components/elements/atoms/avatar/avatar.tsx +274 -0
  944. package/src/components/elements/atoms/avatar/index.ts +7 -0
  945. package/src/components/elements/atoms/badge/badge.stories.tsx +186 -0
  946. package/src/components/elements/atoms/badge/badge.tsx +333 -0
  947. package/src/components/elements/atoms/badge/index.ts +7 -0
  948. package/src/components/elements/atoms/blur-image/blur-image.stories.tsx +140 -0
  949. package/src/components/elements/atoms/blur-image/blur-image.tsx +102 -0
  950. package/src/components/elements/atoms/blur-image/index.ts +7 -0
  951. package/src/components/elements/atoms/button/button.stories.tsx +776 -0
  952. package/src/components/elements/atoms/button/button.tsx +878 -0
  953. package/src/components/elements/atoms/button/index.ts +7 -0
  954. package/src/components/elements/atoms/copy-button/copy-button.stories.tsx +162 -0
  955. package/src/components/elements/atoms/copy-button/copy-button.tsx +232 -0
  956. package/src/components/elements/atoms/copy-button/index.ts +7 -0
  957. package/src/components/elements/atoms/copy-text/copy-text.stories.tsx +128 -0
  958. package/src/components/elements/atoms/copy-text/copy-text.tsx +201 -0
  959. package/src/components/elements/atoms/copy-text/index.ts +7 -0
  960. package/src/components/elements/atoms/empty-state/empty-state.stories.tsx +410 -0
  961. package/src/components/elements/atoms/empty-state/empty-state.tsx +338 -0
  962. package/src/components/elements/atoms/empty-state/index.ts +1 -0
  963. package/src/components/elements/atoms/go-back-button/go-back-button.stories.tsx +83 -0
  964. package/src/components/elements/atoms/go-back-button/go-back-button.tsx +104 -0
  965. package/src/components/elements/atoms/go-back-button/index.ts +7 -0
  966. package/src/components/elements/atoms/inline-snippet/index.ts +7 -0
  967. package/src/components/elements/atoms/inline-snippet/inline-snippet.stories.tsx +130 -0
  968. package/src/components/elements/atoms/inline-snippet/inline-snippet.tsx +140 -0
  969. package/src/components/elements/atoms/loading-dots/index.ts +1 -0
  970. package/src/components/elements/atoms/loading-dots/loading-dots.stories.tsx +274 -0
  971. package/src/components/elements/atoms/loading-dots/loading-dots.tsx +138 -0
  972. package/src/components/elements/atoms/mode-toggle/index.ts +7 -0
  973. package/src/components/elements/atoms/mode-toggle/mode-toggle.stories.tsx +67 -0
  974. package/src/components/elements/atoms/mode-toggle/mode-toggle.tsx +163 -0
  975. package/src/components/elements/atoms/progress/index.ts +7 -0
  976. package/src/components/elements/atoms/progress/progress.stories.tsx +141 -0
  977. package/src/components/elements/atoms/progress/progress.tsx +314 -0
  978. package/src/components/elements/atoms/progress-circle/index.ts +7 -0
  979. package/src/components/elements/atoms/progress-circle/progress-circle.stories.tsx +185 -0
  980. package/src/components/elements/atoms/progress-circle/progress-circle.tsx +207 -0
  981. package/src/components/elements/atoms/separator/index.ts +7 -0
  982. package/src/components/elements/atoms/separator/separator.stories.tsx +154 -0
  983. package/src/components/elements/atoms/separator/separator.tsx +169 -0
  984. package/src/components/elements/atoms/skeleton/index.ts +7 -0
  985. package/src/components/elements/atoms/skeleton/skeleton.stories.tsx +152 -0
  986. package/src/components/elements/atoms/skeleton/skeleton.tsx +336 -0
  987. package/src/components/elements/atoms/slider/index.ts +7 -0
  988. package/src/components/elements/atoms/slider/slider.stories.tsx +199 -0
  989. package/src/components/elements/atoms/slider/slider.tsx +487 -0
  990. package/src/components/elements/atoms/sonner/index.ts +7 -0
  991. package/src/components/elements/atoms/sonner/sonner.stories.tsx +408 -0
  992. package/src/components/elements/atoms/sonner/sonner.tsx +131 -0
  993. package/src/components/elements/atoms/status-badge/index.ts +7 -0
  994. package/src/components/elements/atoms/status-badge/status-badge.stories.tsx +166 -0
  995. package/src/components/elements/atoms/status-badge/status-badge.tsx +262 -0
  996. package/src/components/elements/atoms/timestamp-tooltip/index.ts +7 -0
  997. package/src/components/elements/atoms/timestamp-tooltip/timestamp-tooltip.stories.tsx +127 -0
  998. package/src/components/elements/atoms/timestamp-tooltip/timestamp-tooltip.tsx +404 -0
  999. package/src/components/elements/molecules/animated-size-container/animated-size-container.stories.tsx +165 -0
  1000. package/src/components/elements/molecules/animated-size-container/animated-size-container.tsx +125 -0
  1001. package/src/components/elements/molecules/animated-size-container/index.ts +7 -0
  1002. package/src/components/elements/molecules/avatar-stack/avatar-stack.stories.tsx +179 -0
  1003. package/src/components/elements/molecules/avatar-stack/avatar-stack.tsx +258 -0
  1004. package/src/components/elements/molecules/avatar-stack/index.ts +7 -0
  1005. package/src/components/elements/molecules/breadcrumb/breadcrumb.stories.tsx +273 -0
  1006. package/src/components/elements/molecules/breadcrumb/breadcrumb.tsx +299 -0
  1007. package/src/components/elements/molecules/breadcrumb/index.ts +7 -0
  1008. package/src/components/elements/molecules/button-group/button-group.stories.tsx +267 -0
  1009. package/src/components/elements/molecules/button-group/button-group.tsx +244 -0
  1010. package/src/components/elements/molecules/button-group/index.ts +7 -0
  1011. package/src/components/elements/molecules/collapsible/collapsible.stories.tsx +186 -0
  1012. package/src/components/elements/molecules/collapsible/collapsible.tsx +362 -0
  1013. package/src/components/elements/molecules/collapsible/index.ts +7 -0
  1014. package/src/components/elements/molecules/empty/empty.stories.tsx +182 -0
  1015. package/src/components/elements/molecules/empty/empty.tsx +230 -0
  1016. package/src/components/elements/molecules/empty/index.ts +7 -0
  1017. package/src/components/elements/molecules/pagination-controls/index.ts +8 -0
  1018. package/src/components/elements/molecules/pagination-controls/pagination-controls.stories.tsx +193 -0
  1019. package/src/components/elements/molecules/pagination-controls/pagination-controls.tsx +174 -0
  1020. package/src/components/elements/molecules/tab-select/index.ts +7 -0
  1021. package/src/components/elements/molecules/tab-select/tab-select.stories.tsx +175 -0
  1022. package/src/components/elements/molecules/tab-select/tab-select.tsx +261 -0
  1023. package/src/components/elements/molecules/tabs/index.ts +7 -0
  1024. package/src/components/elements/molecules/tabs/tabs.stories.tsx +198 -0
  1025. package/src/components/elements/molecules/tabs/tabs.tsx +744 -0
  1026. package/src/components/elements/molecules/toggle-group/index.ts +7 -0
  1027. package/src/components/elements/molecules/toggle-group/toggle-group.stories.tsx +201 -0
  1028. package/src/components/elements/molecules/toggle-group/toggle-group.tsx +236 -0
  1029. package/src/components/elements/organisms/accordion/accordion.stories.tsx +217 -0
  1030. package/src/components/elements/organisms/accordion/accordion.tsx +456 -0
  1031. package/src/components/elements/organisms/accordion/index.ts +7 -0
  1032. package/src/components/elements/organisms/card/card.stories.tsx +406 -0
  1033. package/src/components/elements/organisms/card/card.tsx +437 -0
  1034. package/src/components/elements/organisms/card/index.ts +8 -0
  1035. package/src/components/elements/organisms/card/integration-card.stories.tsx +348 -0
  1036. package/src/components/elements/organisms/card/integration-compact.stories.tsx +310 -0
  1037. package/src/components/elements/organisms/card/integrations.tsx +356 -0
  1038. package/src/components/elements/organisms/carousel/carousel.stories.tsx +182 -0
  1039. package/src/components/elements/organisms/carousel/carousel.tsx +537 -0
  1040. package/src/components/elements/organisms/carousel/index.ts +7 -0
  1041. package/src/components/elements/organisms/chart/chart.stories.tsx +147 -0
  1042. package/src/components/elements/organisms/chart/chart.tsx +317 -0
  1043. package/src/components/elements/organisms/chart/index.ts +7 -0
  1044. package/src/components/elements/organisms/command/command.stories.tsx +246 -0
  1045. package/src/components/elements/organisms/command/command.tsx +284 -0
  1046. package/src/components/elements/organisms/command/index.ts +7 -0
  1047. package/src/components/elements/organisms/dialog/dialog.stories.tsx +266 -0
  1048. package/src/components/elements/organisms/dialog/dialog.tsx +366 -0
  1049. package/src/components/elements/organisms/dialog/index.ts +7 -0
  1050. package/src/components/elements/organisms/dropdown-menu/dropdown-menu.stories.tsx +334 -0
  1051. package/src/components/elements/organisms/dropdown-menu/dropdown-menu.tsx +611 -0
  1052. package/src/components/elements/organisms/dropdown-menu/index.ts +7 -0
  1053. package/src/components/elements/organisms/dynamic-breadcrumb/dynamic-breadcrumb.stories.tsx +50 -0
  1054. package/src/components/elements/organisms/dynamic-breadcrumb/dynamic-breadcrumb.tsx +257 -0
  1055. package/src/components/elements/organisms/dynamic-breadcrumb/index.ts +7 -0
  1056. package/src/components/elements/organisms/error-boundary/error-boundary.stories.tsx +142 -0
  1057. package/src/components/elements/organisms/error-boundary/error-boundary.tsx +408 -0
  1058. package/src/components/elements/organisms/error-boundary/index.ts +7 -0
  1059. package/src/components/elements/organisms/hover-card/hover-card.stories.tsx +245 -0
  1060. package/src/components/elements/organisms/hover-card/hover-card.tsx +370 -0
  1061. package/src/components/elements/organisms/hover-card/index.ts +7 -0
  1062. package/src/components/elements/organisms/modal/index.ts +7 -0
  1063. package/src/components/elements/organisms/modal/modal.stories.tsx +189 -0
  1064. package/src/components/elements/organisms/modal/modal.tsx +266 -0
  1065. package/src/components/elements/organisms/popover/index.ts +7 -0
  1066. package/src/components/elements/organisms/popover/popover.stories.tsx +200 -0
  1067. package/src/components/elements/organisms/popover/popover.tsx +302 -0
  1068. package/src/components/elements/organisms/resizable/index.ts +7 -0
  1069. package/src/components/elements/organisms/resizable/resizable.stories.tsx +204 -0
  1070. package/src/components/elements/organisms/resizable/resizable.tsx +178 -0
  1071. package/src/components/elements/organisms/scroll-area/index.ts +7 -0
  1072. package/src/components/elements/organisms/scroll-area/scroll-area.stories.tsx +170 -0
  1073. package/src/components/elements/organisms/scroll-area/scroll-area.tsx +167 -0
  1074. package/src/components/elements/organisms/sheet/index.ts +7 -0
  1075. package/src/components/elements/organisms/sheet/sheet.stories.tsx +235 -0
  1076. package/src/components/elements/organisms/sheet/sheet.tsx +381 -0
  1077. package/src/components/elements/organisms/table/index.ts +7 -0
  1078. package/src/components/elements/organisms/table/table.stories.tsx +238 -0
  1079. package/src/components/elements/organisms/table/table.tsx +392 -0
  1080. package/src/components/elements/organisms/tooltip/index.ts +7 -0
  1081. package/src/components/elements/organisms/tooltip/tooltip.stories.tsx +205 -0
  1082. package/src/components/elements/organisms/tooltip/tooltip.tsx +547 -0
  1083. package/src/components/filter/filter-list/filter-list.stories.tsx +157 -0
  1084. package/src/components/filter/filter-list/filter-list.tsx +435 -0
  1085. package/src/components/filter/filter-list/index.ts +7 -0
  1086. package/src/components/filter/filter-select/filter-select.stories.tsx +124 -0
  1087. package/src/components/filter/filter-select/filter-select.tsx +558 -0
  1088. package/src/components/filter/filter-select/index.ts +7 -0
  1089. package/src/components/filter/index.ts +9 -0
  1090. package/src/components/filter/types.ts +70 -0
  1091. package/src/components/forms/checkbox/checkbox.stories.tsx +177 -0
  1092. package/src/components/forms/checkbox/checkbox.tsx +332 -0
  1093. package/src/components/forms/checkbox/index.ts +11 -0
  1094. package/src/components/forms/combobox/combobox.stories.tsx +224 -0
  1095. package/src/components/forms/combobox/combobox.tsx +679 -0
  1096. package/src/components/forms/combobox/index.ts +7 -0
  1097. package/src/components/forms/date-picker/calendar/calendar.stories.tsx +78 -0
  1098. package/src/components/forms/date-picker/calendar/calendar.tsx +271 -0
  1099. package/src/components/forms/date-picker/calendar/index.ts +7 -0
  1100. package/src/components/forms/date-picker/date-range-picker/date-range-picker.stories.tsx +108 -0
  1101. package/src/components/forms/date-picker/date-range-picker/date-range-picker.tsx +334 -0
  1102. package/src/components/forms/date-picker/date-range-picker/index.ts +7 -0
  1103. package/src/components/forms/date-picker/index.ts +10 -0
  1104. package/src/components/forms/date-picker/presets/index.ts +7 -0
  1105. package/src/components/forms/date-picker/presets/presets.stories.tsx +105 -0
  1106. package/src/components/forms/date-picker/presets/presets.tsx +196 -0
  1107. package/src/components/forms/date-picker/shared.ts +109 -0
  1108. package/src/components/forms/date-picker/trigger/index.ts +7 -0
  1109. package/src/components/forms/date-picker/trigger/trigger.stories.tsx +78 -0
  1110. package/src/components/forms/date-picker/trigger/trigger.tsx +195 -0
  1111. package/src/components/forms/date-picker/types.ts +63 -0
  1112. package/src/components/forms/file-upload/file-upload.stories.tsx +145 -0
  1113. package/src/components/forms/file-upload/file-upload.tsx +504 -0
  1114. package/src/components/forms/file-upload/index.ts +7 -0
  1115. package/src/components/forms/input/index.ts +7 -0
  1116. package/src/components/forms/input/input.stories.tsx +185 -0
  1117. package/src/components/forms/input/input.tsx +228 -0
  1118. package/src/components/forms/input-group/index.ts +11 -0
  1119. package/src/components/forms/input-group/input-group.stories.tsx +146 -0
  1120. package/src/components/forms/input-group/input-group.tsx +344 -0
  1121. package/src/components/forms/label/index.ts +7 -0
  1122. package/src/components/forms/label/label.stories.tsx +140 -0
  1123. package/src/components/forms/label/label.tsx +189 -0
  1124. package/src/components/forms/radio-group/index.ts +7 -0
  1125. package/src/components/forms/radio-group/radio-group.stories.tsx +233 -0
  1126. package/src/components/forms/radio-group/radio-group.tsx +476 -0
  1127. package/src/components/forms/select/index.ts +7 -0
  1128. package/src/components/forms/select/select.stories.tsx +274 -0
  1129. package/src/components/forms/select/select.tsx +654 -0
  1130. package/src/components/forms/switch/index.ts +11 -0
  1131. package/src/components/forms/switch/switch.stories.tsx +166 -0
  1132. package/src/components/forms/switch/switch.tsx +362 -0
  1133. package/src/components/forms/textarea/index.ts +7 -0
  1134. package/src/components/forms/textarea/textarea.stories.tsx +176 -0
  1135. package/src/components/forms/textarea/textarea.tsx +225 -0
  1136. package/src/components/layout/app-shell.tsx +363 -0
  1137. package/src/components/layout/app-sidebar/app-sidebar.stories.tsx +68 -0
  1138. package/src/components/layout/app-sidebar/app-sidebar.tsx +418 -0
  1139. package/src/components/layout/app-sidebar/index.ts +11 -0
  1140. package/src/components/layout/artifact-panel/artifact-panel-header.tsx +89 -0
  1141. package/src/components/layout/artifact-panel/expandable-panel.stories.tsx +484 -0
  1142. package/src/components/layout/artifact-panel/expandable-panel.tsx +289 -0
  1143. package/src/components/layout/artifact-panel/index.ts +23 -0
  1144. package/src/components/layout/artifact-panel/split-panel-layout.tsx +70 -0
  1145. package/src/components/layout/artifact-panel/types.ts +63 -0
  1146. package/src/components/layout/artifact-panel/use-artifact-panel-state.ts +101 -0
  1147. package/src/components/layout/content-sidebar/content-sidebar.stories.tsx +490 -0
  1148. package/src/components/layout/content-sidebar/content-sidebar.tsx +337 -0
  1149. package/src/components/layout/content-sidebar/index.ts +17 -0
  1150. package/src/components/layout/nav-app-switcher/index.ts +7 -0
  1151. package/src/components/layout/nav-app-switcher/nav-app-switcher.stories.tsx +138 -0
  1152. package/src/components/layout/nav-app-switcher/nav-app-switcher.tsx +282 -0
  1153. package/src/components/layout/nav-main/index.ts +11 -0
  1154. package/src/components/layout/nav-main/nav-main.stories.tsx +103 -0
  1155. package/src/components/layout/nav-main/nav-main.tsx +259 -0
  1156. package/src/components/layout/nav-projects/index.ts +11 -0
  1157. package/src/components/layout/nav-projects/nav-projects.stories.tsx +82 -0
  1158. package/src/components/layout/nav-projects/nav-projects.tsx +218 -0
  1159. package/src/components/layout/nav-secondary/index.ts +11 -0
  1160. package/src/components/layout/nav-secondary/nav-secondary.stories.tsx +81 -0
  1161. package/src/components/layout/nav-secondary/nav-secondary.tsx +145 -0
  1162. package/src/components/layout/nav-user/index.ts +11 -0
  1163. package/src/components/layout/nav-user/nav-user.stories.tsx +80 -0
  1164. package/src/components/layout/nav-user/nav-user.tsx +226 -0
  1165. package/src/components/layout/oneapp/auth-context.tsx +74 -0
  1166. package/src/components/layout/oneapp/ensure-anonymous-session.tsx +218 -0
  1167. package/src/components/layout/oneapp/index.ts +37 -0
  1168. package/src/components/layout/oneapp/microfrontend-layout.tsx +191 -0
  1169. package/src/components/layout/oneapp/types.ts +98 -0
  1170. package/src/components/layout/sidebar/index.ts +7 -0
  1171. package/src/components/layout/sidebar/sidebar.stories.tsx +170 -0
  1172. package/src/components/layout/sidebar/sidebar.tsx +945 -0
  1173. package/src/components/layout/sidebar-inset-header-portal/index.ts +8 -0
  1174. package/src/components/layout/sidebar-inset-header-portal/sidebar-inset-header-portal.stories.tsx +355 -0
  1175. package/src/components/layout/sidebar-inset-header-portal/sidebar-inset-header-portal.tsx +179 -0
  1176. package/src/components/layout/sidebar-slots/USAGE.md +163 -0
  1177. package/src/components/layout/sidebar-slots/__tests__/sidebar-slots.test.tsx +239 -0
  1178. package/src/components/layout/sidebar-slots/index.ts +9 -0
  1179. package/src/components/layout/sidebar-slots/sidebar-slots.stories.tsx +525 -0
  1180. package/src/components/layout/sidebar-slots/sidebar-slots.tsx +205 -0
  1181. package/src/components/layout/theme-provider/index.ts +11 -0
  1182. package/src/components/layout/theme-provider/theme-provider.stories.tsx +82 -0
  1183. package/src/components/layout/theme-provider/theme-provider.tsx +101 -0
  1184. package/src/components/overlays/confirm-dialog.stories.tsx +371 -0
  1185. package/src/components/overlays/confirm-dialog.tsx +201 -0
  1186. package/src/components/overlays/toast.stories.tsx +373 -0
  1187. package/src/components/overlays/toast.tsx +115 -0
  1188. package/src/constants/container.ts +183 -0
  1189. package/src/constants/index.ts +38 -0
  1190. package/src/constants/motion.ts +104 -0
  1191. package/src/fonts/Satoshi-Variable.woff2 +0 -0
  1192. package/src/fonts/Satoshi-VariableItalic.woff2 +0 -0
  1193. package/src/fonts/fonts.css +41 -0
  1194. package/src/fonts/index.ts +106 -0
  1195. package/src/hooks/.gitkeep +0 -0
  1196. package/src/hooks/ai-chat/context.tsx +294 -0
  1197. package/src/hooks/ai-chat/hooks.ts +297 -0
  1198. package/src/hooks/ai-chat/index.ts +35 -0
  1199. package/src/hooks/ai-chat/utils.ts +65 -0
  1200. package/src/hooks/index.ts +18 -0
  1201. package/src/hooks/use-mobile.ts +45 -0
  1202. package/src/hooks/use-responsive.ts +64 -0
  1203. package/src/hooks/use-scroll-progress.ts +101 -0
  1204. package/src/hooks/use-toast.ts +65 -0
  1205. package/src/index.ts +857 -0
  1206. package/src/lib/export-csv.ts +107 -0
  1207. package/src/lib/index.ts +10 -0
  1208. package/src/lib/resize-image.ts +109 -0
  1209. package/src/lib/stable-sort.ts +29 -0
  1210. package/src/lib/utils.ts +28 -0
  1211. package/src/react-19-compat.d.ts +28 -0
  1212. package/src/shared/auth/index.ts +8 -0
  1213. package/src/shared/auth/types/index.ts +163 -0
  1214. package/src/shared/auth/types.ts +196 -0
  1215. package/src/shared/auth/utils/dark-mode.ts +336 -0
  1216. package/src/shared/index.ts +5 -0
  1217. package/src/styles/_tokens.generated.scss +84 -0
  1218. package/src/styles/ai-elements.scss +9 -0
  1219. package/src/styles/base.scss +44 -0
  1220. package/src/styles/flows.scss +62 -0
  1221. package/src/styles/globals.css +627 -0
  1222. package/src/styles/index.scss +9 -0
  1223. package/src/styles/shadcn.scss +16 -0
  1224. package/src/styles/sources.css +16 -0
  1225. package/src/styles/theme.css +1687 -0
  1226. package/src/styles/theme.template.css +95 -0
  1227. package/src/tokens/accessibility.ts +494 -0
  1228. package/src/tokens/animations.ts +305 -0
  1229. package/src/tokens/aspect-ratio.ts +89 -0
  1230. package/src/tokens/blur.ts +82 -0
  1231. package/src/tokens/border-width.ts +86 -0
  1232. package/src/tokens/breakpoints.ts +150 -0
  1233. package/src/tokens/colors.ts +1199 -0
  1234. package/src/tokens/component.ts +362 -0
  1235. package/src/tokens/container.ts +42 -0
  1236. package/src/tokens/focus.ts +266 -0
  1237. package/src/tokens/form-states.ts +521 -0
  1238. package/src/tokens/grid.ts +258 -0
  1239. package/src/tokens/index.ts +1175 -0
  1240. package/src/tokens/interactions.ts +558 -0
  1241. package/src/tokens/mantine-types.ts +68 -0
  1242. package/src/tokens/opacity.ts +139 -0
  1243. package/src/tokens/palette.ts +854 -0
  1244. package/src/tokens/pseudo-elements.ts +508 -0
  1245. package/src/tokens/radius.ts +57 -0
  1246. package/src/tokens/shadows.ts +313 -0
  1247. package/src/tokens/spacing.ts +95 -0
  1248. package/src/tokens/states.ts +392 -0
  1249. package/src/tokens/structural.ts +589 -0
  1250. package/src/tokens/timing.ts +224 -0
  1251. package/src/tokens/typography.ts +242 -0
  1252. package/src/tokens/z-index.ts +184 -0
  1253. package/storybook/preview.tsx +201 -0
@@ -0,0 +1,106 @@
1
+ 'use client';
2
+ import { t as cn } from "./utils-D2bGp2p_.mjs";
3
+ import { forwardRef, useMemo } from "react";
4
+ import { useReducedMotion } from "@mantine/hooks";
5
+ import { motion } from "motion/react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ import useResizeObserver$1 from "use-resize-observer";
8
+
9
+ //#region src/components/elements/molecules/animated-size-container/animated-size-container.tsx
10
+ /**
11
+ * @fileoverview AnimatedSizeContainer Component - Premium Harmony V2
12
+ *
13
+ * A layout component that automatically animates its size (height and/or width) to fit its children.
14
+ * Uses Framer Motion and a ResizeObserver to provide smooth, high-fidelity layout transitions
15
+ * without manual height calculations.
16
+ *
17
+ * Features:
18
+ * - ES2023 syntax with modern hooks (useReducedMotion, useResizeObserver)
19
+ * - Premium Harmony V2 motion design with smooth, fluid transitions
20
+ * - Tailwind v4 CSS-first theming with CSS variables
21
+ * - Supports animating height, width, or both independently
22
+ * - Automatic resizing using ResizeObserver for dynamic content changes
23
+ * - Reduced motion preference support for accessibility
24
+ * - Configurable transition physics (defaults to smooth spring)
25
+ * - Micro-moments entrance animation support
26
+ * - Data attributes for state tracking (data-animating-width, data-animating-height)
27
+ * - GPU-accelerated transforms for optimal performance
28
+ * - Layout shift prevention by reserving space during transitions
29
+ *
30
+ * @module @od-oneapp/uni-ui/components/elements/animated-size-container
31
+ * @component AnimatedSizeContainer
32
+ *
33
+ * @useCases
34
+ * - Dynamic content panels: Expandable descriptions or details
35
+ * - Form validation messages: Animate entry/exit of error text
36
+ * - Tab content: Smoothly transition between different tab heights
37
+ * - Accordion items: Fluidly expand and collapse sections
38
+ * - Loading states: Animate from skeleton to real content
39
+ * - Filter panels: Adapt container size as filter options are added or removed
40
+ * - Chat messages: Animate entry of new messages in a list
41
+ * - Search results: Fluidly grow as results are populated
42
+ *
43
+ * @example <AnimatedSizeContainer><div style={{ height: isOpen ? 200 : 100 }}>Animate me!</div></AnimatedSizeContainer>
44
+ */
45
+ /**
46
+ * Default spring transition for fluid, natural motion.
47
+ * Premium Harmony V2 SPRING_FLUID equivalent.
48
+ */
49
+ const DEFAULT_SPRING_TRANSITION = {
50
+ type: "spring",
51
+ stiffness: 300,
52
+ damping: 30,
53
+ mass: .8,
54
+ restDelta: .01
55
+ };
56
+ /**
57
+ * Immediate transition for users who prefer reduced motion.
58
+ */
59
+ const REDUCED_MOTION_TRANSITION = { duration: 0 };
60
+ /**
61
+ * A container that automatically animates its size to fit its children.
62
+ *
63
+ * @param props - Component props including height/width animation flags and transition config.
64
+ */
65
+ const AnimatedSizeContainer = forwardRef(({ children, className, transition, height = true, width = false, ...rest }, forwardedRef) => {
66
+ const prefersReducedMotion = useReducedMotion();
67
+ const { ref: containerRef, height: contentHeight, width: contentWidth } = useResizeObserver$1();
68
+ const animate = useMemo(() => {
69
+ const state = {};
70
+ if (height && contentHeight) state.height = contentHeight;
71
+ if (width && contentWidth) state.width = contentWidth;
72
+ return state;
73
+ }, [
74
+ height,
75
+ width,
76
+ contentHeight,
77
+ contentWidth
78
+ ]);
79
+ const transitionConfig = transition ?? (prefersReducedMotion ? REDUCED_MOTION_TRANSITION : DEFAULT_SPRING_TRANSITION);
80
+ const innerClassName = cn(height && "h-max", width && "w-max", "transition-all duration-300");
81
+ const outerClassName = cn("overflow-hidden transition-all duration-300", className);
82
+ return /* @__PURE__ */ jsx(motion.div, {
83
+ ref: forwardedRef,
84
+ className: outerClassName,
85
+ initial: { opacity: 0 },
86
+ animate: {
87
+ ...animate,
88
+ opacity: 1
89
+ },
90
+ transition: transitionConfig,
91
+ "data-slot": "animated-size-container",
92
+ "data-animating-width": width || void 0,
93
+ "data-animating-height": height || void 0,
94
+ ...rest,
95
+ children: /* @__PURE__ */ jsx("div", {
96
+ ref: containerRef,
97
+ className: innerClassName,
98
+ children
99
+ })
100
+ });
101
+ });
102
+ AnimatedSizeContainer.displayName = "AnimatedSizeContainer";
103
+
104
+ //#endregion
105
+ export { AnimatedSizeContainer as t };
106
+ //# sourceMappingURL=animated-size-container-DSKNt1Cn.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animated-size-container-DSKNt1Cn.mjs","names":["useResizeObserver"],"sources":["../src/components/elements/molecules/animated-size-container/animated-size-container.tsx"],"sourcesContent":["/**\n * @fileoverview AnimatedSizeContainer Component - Premium Harmony V2\n *\n * A layout component that automatically animates its size (height and/or width) to fit its children.\n * Uses Framer Motion and a ResizeObserver to provide smooth, high-fidelity layout transitions\n * without manual height calculations.\n *\n * Features:\n * - ES2023 syntax with modern hooks (useReducedMotion, useResizeObserver)\n * - Premium Harmony V2 motion design with smooth, fluid transitions\n * - Tailwind v4 CSS-first theming with CSS variables\n * - Supports animating height, width, or both independently\n * - Automatic resizing using ResizeObserver for dynamic content changes\n * - Reduced motion preference support for accessibility\n * - Configurable transition physics (defaults to smooth spring)\n * - Micro-moments entrance animation support\n * - Data attributes for state tracking (data-animating-width, data-animating-height)\n * - GPU-accelerated transforms for optimal performance\n * - Layout shift prevention by reserving space during transitions\n *\n * @module @od-oneapp/uni-ui/components/elements/animated-size-container\n * @component AnimatedSizeContainer\n *\n * @useCases\n * - Dynamic content panels: Expandable descriptions or details\n * - Form validation messages: Animate entry/exit of error text\n * - Tab content: Smoothly transition between different tab heights\n * - Accordion items: Fluidly expand and collapse sections\n * - Loading states: Animate from skeleton to real content\n * - Filter panels: Adapt container size as filter options are added or removed\n * - Chat messages: Animate entry of new messages in a list\n * - Search results: Fluidly grow as results are populated\n *\n * @example <AnimatedSizeContainer><div style={{ height: isOpen ? 200 : 100 }}>Animate me!</div></AnimatedSizeContainer>\n */\n\n'use client';\n\nimport * as React from 'react';\nimport { forwardRef, useMemo } from 'react';\n\nimport { useReducedMotion } from '@mantine/hooks';\nimport { motion, type HTMLMotionProps, type Transition } from 'motion/react';\nimport useResizeObserver from 'use-resize-observer';\n\nimport { cn } from '../../../../lib/utils';\n\n/**\n * Default spring transition for fluid, natural motion.\n * Premium Harmony V2 SPRING_FLUID equivalent.\n */\nconst DEFAULT_SPRING_TRANSITION: Transition = {\n type: 'spring',\n stiffness: 300,\n damping: 30,\n mass: 0.8,\n restDelta: 0.01,\n};\n\n/**\n * Immediate transition for users who prefer reduced motion.\n */\nconst REDUCED_MOTION_TRANSITION: Transition = {\n duration: 0,\n};\n\n/**\n * Props for AnimatedSizeContainer.\n */\nexport interface AnimatedSizeContainerProps extends Omit<HTMLMotionProps<'div'>, 'children'> {\n /** Whether to animate height. @default true */\n height?: boolean;\n /** Whether to animate width. @default false */\n width?: boolean;\n children?: React.ReactNode;\n}\n\n/**\n * A container that automatically animates its size to fit its children.\n *\n * @param props - Component props including height/width animation flags and transition config.\n */\nconst AnimatedSizeContainer = forwardRef<HTMLDivElement, AnimatedSizeContainerProps>(\n ({ children, className, transition, height = true, width = false, ...rest }, forwardedRef) => {\n const prefersReducedMotion = useReducedMotion();\n const { ref: containerRef, height: contentHeight, width: contentWidth } = useResizeObserver();\n\n // Memoize the animation state based on current content dimensions\n const animate = useMemo(() => {\n const state: Record<string, number | string> = {};\n if (height && contentHeight) state.height = contentHeight;\n if (width && contentWidth) state.width = contentWidth;\n return state;\n }, [height, width, contentHeight, contentWidth]);\n\n // Premium Harmony V2 transition configuration\n const transitionConfig =\n transition ?? (prefersReducedMotion ? REDUCED_MOTION_TRANSITION : DEFAULT_SPRING_TRANSITION);\n\n const innerClassName = cn(height && 'h-max', width && 'w-max', 'transition-all duration-300');\n const outerClassName = cn('overflow-hidden transition-all duration-300', className);\n\n return (\n <motion.div\n ref={forwardedRef}\n className={outerClassName}\n initial={{ opacity: 0 }}\n animate={{ ...animate, opacity: 1 }}\n transition={transitionConfig}\n data-slot=\"animated-size-container\"\n data-animating-width={width || undefined}\n data-animating-height={height || undefined}\n {...rest}\n >\n <div ref={containerRef} className={innerClassName}>\n {children}\n </div>\n </motion.div>\n );\n },\n);\n\nAnimatedSizeContainer.displayName = 'AnimatedSizeContainer';\n\nexport { AnimatedSizeContainer };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA,MAAM,4BAAwC;CAC5C,MAAM;CACN,WAAW;CACX,SAAS;CACT,MAAM;CACN,WAAW;CACZ;;;;AAKD,MAAM,4BAAwC,EAC5C,UAAU,GACX;;;;;;AAkBD,MAAM,wBAAwB,YAC3B,EAAE,UAAU,WAAW,YAAY,SAAS,MAAM,QAAQ,OAAO,GAAG,QAAQ,iBAAiB;CAC5F,MAAM,uBAAuB,kBAAkB;CAC/C,MAAM,EAAE,KAAK,cAAc,QAAQ,eAAe,OAAO,iBAAiBA,qBAAmB;CAG7F,MAAM,UAAU,cAAc;EAC5B,MAAM,QAAyC,EAAE;AACjD,MAAI,UAAU,cAAe,OAAM,SAAS;AAC5C,MAAI,SAAS,aAAc,OAAM,QAAQ;AACzC,SAAO;IACN;EAAC;EAAQ;EAAO;EAAe;EAAa,CAAC;CAGhD,MAAM,mBACJ,eAAe,uBAAuB,4BAA4B;CAEpE,MAAM,iBAAiB,GAAG,UAAU,SAAS,SAAS,SAAS,8BAA8B;CAC7F,MAAM,iBAAiB,GAAG,+CAA+C,UAAU;AAEnF,QACE,oBAAC,OAAO;EACN,KAAK;EACL,WAAW;EACX,SAAS,EAAE,SAAS,GAAG;EACvB,SAAS;GAAE,GAAG;GAAS,SAAS;GAAG;EACnC,YAAY;EACZ,aAAU;EACV,wBAAsB,SAAS;EAC/B,yBAAuB,UAAU;EACjC,GAAI;YAEJ,oBAAC;GAAI,KAAK;GAAc,WAAW;GAChC;IACG;GACK;EAGlB;AAED,sBAAsB,cAAc"}
@@ -0,0 +1,144 @@
1
+ 'use client';
2
+ import { t as cn } from "./utils-D2bGp2p_.mjs";
3
+ import { r as SPRING_FLUID } from "./motion-zelaDelJ.mjs";
4
+ import { i as useChartTooltipContext, r as useChartContext } from "./chart-context-CLV35VLJ.mjs";
5
+ import { useMemo } from "react";
6
+ import { useReducedMotion } from "@mantine/hooks";
7
+ import { AnimatePresence, motion } from "motion/react";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ import { LinearGradient } from "@visx/gradient";
10
+ import { Group } from "@visx/group";
11
+ import { Area, AreaClosed, Circle } from "@visx/shape";
12
+
13
+ //#region src/components/charts/areas/areas.tsx
14
+ /**
15
+ * @fileoverview Areas Component - Premium Harmony V2
16
+ *
17
+ * Area chart rendering with gradient fills, mask effects, and fluid animations
18
+ * that respect user motion preferences and provide comprehensive accessibility.
19
+ *
20
+ * Features:
21
+ * - Premium Harmony V2 spring physics for fluid, natural animations
22
+ * - Reduced motion support for accessibility (respects prefers-reduced-motion)
23
+ * - Tailwind v4 CSS-first theming with semantic color tokens
24
+ * - visx AreaClosed, Area, LinearGradient, Circle primitives
25
+ * - Framer Motion (motion/react) path animations with spring physics
26
+ * - Latest value circle indicator for current data point
27
+ *
28
+ * @module @od-oneapp/uni-ui/components/charts/areas
29
+ * @component Areas
30
+ *
31
+ * @useCases
32
+ * - Time series data visualization: Revenue trends, user growth, traffic patterns over time
33
+ * - Multi-metric comparison: Overlay multiple data series with distinct gradients and colors
34
+ * - Trend analysis: Visualize data patterns with smooth area fills and line indicators
35
+ * - Real-time monitoring: Display live metrics with animated updates and latest value indicators
36
+ * - Analytics dashboards: Performance metrics, conversion funnels, engagement trends
37
+ *
38
+ * @example
39
+ * <TimeSeriesChart data={data} series={series}>
40
+ * <Areas showLatestValueCircle seriesStyles={[{ id: 'clicks', gradientClassName: 'text-blue-500' }]} />
41
+ * </TimeSeriesChart>
42
+ */
43
+ function Areas({ seriesStyles, showLatestValueCircle = true }) {
44
+ const { data, series, margin, xScale, yScale, startDate, endDate } = useChartContext();
45
+ const reducedMotion = useReducedMotion();
46
+ if (!("ticks" in xScale)) throw new Error("Areas require a time scale (type=area)");
47
+ const { tooltipData } = useChartTooltipContext();
48
+ const zeroedData = useMemo(() => {
49
+ return data.map((d) => ({
50
+ ...d,
51
+ values: Object.fromEntries(Object.keys(d.values).map((key) => [key, 0]))
52
+ }));
53
+ }, [data]);
54
+ const lastDatum = data.at(-1);
55
+ return /* @__PURE__ */ jsx(Group, {
56
+ left: margin.left,
57
+ top: margin.top,
58
+ children: /* @__PURE__ */ jsx(AnimatePresence, { children: series.filter(({ isActive }) => isActive !== false).map((s) => {
59
+ const seriesStyle = seriesStyles?.find(({ id }) => id === s.id);
60
+ const isActive = s.isActive !== false;
61
+ return /* @__PURE__ */ jsxs(motion.g, {
62
+ initial: { opacity: 1 },
63
+ exit: { opacity: 0 },
64
+ transition: reducedMotion ? { duration: 0 } : SPRING_FLUID,
65
+ "data-series-id": s.id,
66
+ "data-active": isActive,
67
+ "data-has-tooltip": tooltipData != null,
68
+ children: [
69
+ /* @__PURE__ */ jsx(LinearGradient, {
70
+ id: `${s.id}-mask-gradient`,
71
+ from: "white",
72
+ to: "white",
73
+ fromOpacity: .2,
74
+ toOpacity: 0,
75
+ x1: 0,
76
+ x2: 0,
77
+ y1: 0,
78
+ y2: 1
79
+ }),
80
+ /* @__PURE__ */ jsx("mask", {
81
+ id: `${s.id}-mask`,
82
+ maskContentUnits: "objectBoundingBox",
83
+ children: /* @__PURE__ */ jsx("rect", {
84
+ width: "1",
85
+ height: "1",
86
+ fill: `url(#${s.id}-mask-gradient)`
87
+ })
88
+ }),
89
+ /* @__PURE__ */ jsx(AreaClosed, {
90
+ data,
91
+ x: (d) => xScale(d.date),
92
+ y: (d) => yScale(s.valueAccessor(d) ?? 0),
93
+ yScale,
94
+ children: ({ path }) => {
95
+ return /* @__PURE__ */ jsx(motion.path, {
96
+ initial: {
97
+ d: path(zeroedData) ?? "",
98
+ opacity: 0
99
+ },
100
+ animate: {
101
+ d: path(data) ?? "",
102
+ opacity: 1
103
+ },
104
+ transition: reducedMotion ? { duration: 0 } : {
105
+ ...SPRING_FLUID,
106
+ opacity: { duration: .3 }
107
+ },
108
+ className: cn(s.colorClassName ?? "text-primary", seriesStyle?.gradientClassName),
109
+ mask: `url(#${s.id}-mask)`,
110
+ fill: seriesStyle?.areaFill ?? "currentColor"
111
+ });
112
+ }
113
+ }),
114
+ /* @__PURE__ */ jsx(Area, {
115
+ data,
116
+ x: (d) => xScale(d.date),
117
+ y: (d) => yScale(s.valueAccessor(d) ?? 0),
118
+ children: ({ path }) => /* @__PURE__ */ jsx(motion.path, {
119
+ initial: { d: path(zeroedData) ?? "" },
120
+ animate: { d: path(data) ?? "" },
121
+ transition: reducedMotion ? { duration: 0 } : SPRING_FLUID,
122
+ className: cn(s.colorClassName ?? "text-primary", seriesStyle?.lineClassName),
123
+ stroke: seriesStyle?.lineStroke ?? "currentColor",
124
+ strokeOpacity: .8,
125
+ strokeWidth: 2,
126
+ fill: "transparent"
127
+ })
128
+ }),
129
+ showLatestValueCircle && tooltipData == null && lastDatum != null ? /* @__PURE__ */ jsx(Circle, {
130
+ cx: xScale(lastDatum.date),
131
+ cy: yScale(s.valueAccessor(lastDatum) ?? 0),
132
+ r: 4,
133
+ className: cn(s.colorClassName ?? "text-primary", seriesStyle?.lineClassName),
134
+ fill: "currentColor"
135
+ }) : null
136
+ ]
137
+ }, `${s.id}_${startDate.toString()}_${endDate.toString()}`);
138
+ }) })
139
+ });
140
+ }
141
+
142
+ //#endregion
143
+ export { Areas as t };
144
+ //# sourceMappingURL=areas-CtE8w69A.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"areas-CtE8w69A.mjs","names":[],"sources":["../src/components/charts/areas/areas.tsx"],"sourcesContent":["/**\n * @fileoverview Areas Component - Premium Harmony V2\n *\n * Area chart rendering with gradient fills, mask effects, and fluid animations\n * that respect user motion preferences and provide comprehensive accessibility.\n *\n * Features:\n * - Premium Harmony V2 spring physics for fluid, natural animations\n * - Reduced motion support for accessibility (respects prefers-reduced-motion)\n * - Tailwind v4 CSS-first theming with semantic color tokens\n * - visx AreaClosed, Area, LinearGradient, Circle primitives\n * - Framer Motion (motion/react) path animations with spring physics\n * - Latest value circle indicator for current data point\n *\n * @module @od-oneapp/uni-ui/components/charts/areas\n * @component Areas\n *\n * @useCases\n * - Time series data visualization: Revenue trends, user growth, traffic patterns over time\n * - Multi-metric comparison: Overlay multiple data series with distinct gradients and colors\n * - Trend analysis: Visualize data patterns with smooth area fills and line indicators\n * - Real-time monitoring: Display live metrics with animated updates and latest value indicators\n * - Analytics dashboards: Performance metrics, conversion funnels, engagement trends\n *\n * @example\n * <TimeSeriesChart data={data} series={series}>\n * <Areas showLatestValueCircle seriesStyles={[{ id: 'clicks', gradientClassName: 'text-blue-500' }]} />\n * </TimeSeriesChart>\n */\n\n'use client';\n\nimport { useMemo } from 'react';\n\nimport { useReducedMotion } from '@mantine/hooks';\nimport { LinearGradient } from '@visx/gradient';\nimport { Group } from '@visx/group';\nimport { Area, AreaClosed, Circle } from '@visx/shape';\nimport { AnimatePresence, motion } from 'motion/react';\n\nimport { cn } from '../../../lib/utils';\nimport { SPRING_FLUID } from '../../ai-elements/ai-elements.constants';\nimport { useChartContext, useChartTooltipContext } from '../chart-context';\n\nimport type { Datum, TimeSeriesDatum } from '../types';\n\ninterface SeriesStyle {\n id: string;\n gradientClassName?: string;\n lineClassName?: string;\n areaFill?: string;\n lineStroke?: string;\n}\n\ninterface AreasProps {\n /** Custom styles for each series */\n seriesStyles?: SeriesStyle[];\n /** Show circle at latest value when not hovering */\n showLatestValueCircle?: boolean;\n}\n\nexport function Areas({ seriesStyles, showLatestValueCircle = true }: AreasProps) {\n const { data, series, margin, xScale, yScale, startDate, endDate } = useChartContext();\n const reducedMotion = useReducedMotion();\n\n if (!('ticks' in xScale)) {\n throw new Error('Areas require a time scale (type=area)');\n }\n\n const { tooltipData } = useChartTooltipContext();\n\n // Data with all values set to zero to animate from\n const zeroedData = useMemo(() => {\n return data.map(d => ({\n ...d,\n values: Object.fromEntries(\n Object.keys(d.values as Record<string, unknown>).map(key => [key, 0]),\n ),\n })) as typeof data;\n }, [data]);\n\n const lastDatum = data.at(-1);\n\n return (\n <Group left={margin.left} top={margin.top}>\n <AnimatePresence>\n {series\n .filter(({ isActive }) => isActive !== false)\n .map(s => {\n const seriesStyle = seriesStyles?.find(({ id }) => id === s.id);\n const isActive = s.isActive !== false;\n return (\n // Prevent ugly x-scale animations when start/end dates change with unique key\n <motion.g\n initial={{ opacity: 1 }}\n exit={{ opacity: 0 }}\n transition={reducedMotion ? { duration: 0 } : SPRING_FLUID}\n key={`${s.id}_${startDate.toString()}_${endDate.toString()}`}\n data-series-id={s.id}\n data-active={isActive}\n data-has-tooltip={tooltipData != null}\n >\n {/* Area background mask gradient */}\n <LinearGradient\n id={`${s.id}-mask-gradient`}\n from=\"white\"\n to=\"white\"\n fromOpacity={0.2}\n toOpacity={0}\n x1={0}\n x2={0}\n y1={0}\n y2={1}\n />\n <mask id={`${s.id}-mask`} maskContentUnits=\"objectBoundingBox\">\n <rect width=\"1\" height=\"1\" fill={`url(#${s.id}-mask-gradient)`} />\n </mask>\n\n {/* Area */}\n <AreaClosed<TimeSeriesDatum<Datum>>\n data={data}\n x={d => xScale(d.date)}\n y={d => yScale(s.valueAccessor(d) ?? 0)}\n yScale={yScale}\n >\n {({ path }) => {\n return (\n <motion.path\n initial={{ d: path(zeroedData) ?? '', opacity: 0 }}\n animate={{ d: path(data) ?? '', opacity: 1 }}\n transition={\n reducedMotion\n ? { duration: 0 }\n : { ...SPRING_FLUID, opacity: { duration: 0.3 } }\n }\n className={cn(\n s.colorClassName ?? 'text-primary',\n seriesStyle?.gradientClassName,\n )}\n mask={`url(#${s.id}-mask)`}\n fill={seriesStyle?.areaFill ?? 'currentColor'}\n />\n );\n }}\n </AreaClosed>\n\n {/* Line */}\n <Area<TimeSeriesDatum<Datum>>\n data={data}\n x={d => xScale(d.date)}\n y={d => yScale(s.valueAccessor(d) ?? 0)}\n >\n {({ path }) => (\n <motion.path\n initial={{ d: path(zeroedData) ?? '' }}\n animate={{ d: path(data) ?? '' }}\n transition={reducedMotion ? { duration: 0 } : SPRING_FLUID}\n className={cn(s.colorClassName ?? 'text-primary', seriesStyle?.lineClassName)}\n stroke={seriesStyle?.lineStroke ?? 'currentColor'}\n strokeOpacity={0.8}\n strokeWidth={2}\n fill=\"transparent\"\n />\n )}\n </Area>\n\n {/* Latest value circle */}\n {showLatestValueCircle && tooltipData == null && lastDatum != null ? (\n <Circle\n cx={xScale(lastDatum.date)}\n cy={yScale(s.valueAccessor(lastDatum) ?? 0)}\n r={4}\n className={cn(s.colorClassName ?? 'text-primary', seriesStyle?.lineClassName)}\n fill=\"currentColor\"\n />\n ) : null}\n </motion.g>\n );\n })}\n </AnimatePresence>\n </Group>\n );\n}\n\nexport type { SeriesStyle as AreaSeriesStyle, AreasProps };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6DA,SAAgB,MAAM,EAAE,cAAc,wBAAwB,QAAoB;CAChF,MAAM,EAAE,MAAM,QAAQ,QAAQ,QAAQ,QAAQ,WAAW,YAAY,iBAAiB;CACtF,MAAM,gBAAgB,kBAAkB;AAExC,KAAI,EAAE,WAAW,QACf,OAAM,IAAI,MAAM,yCAAyC;CAG3D,MAAM,EAAE,gBAAgB,wBAAwB;CAGhD,MAAM,aAAa,cAAc;AAC/B,SAAO,KAAK,KAAI,OAAM;GACpB,GAAG;GACH,QAAQ,OAAO,YACb,OAAO,KAAK,EAAE,OAAkC,CAAC,KAAI,QAAO,CAAC,KAAK,EAAE,CAAC,CACtE;GACF,EAAE;IACF,CAAC,KAAK,CAAC;CAEV,MAAM,YAAY,KAAK,GAAG,GAAG;AAE7B,QACE,oBAAC;EAAM,MAAM,OAAO;EAAM,KAAK,OAAO;YACpC,oBAAC,6BACE,OACE,QAAQ,EAAE,eAAe,aAAa,MAAM,CAC5C,KAAI,MAAK;GACR,MAAM,cAAc,cAAc,MAAM,EAAE,SAAS,OAAO,EAAE,GAAG;GAC/D,MAAM,WAAW,EAAE,aAAa;AAChC,UAEE,qBAAC,OAAO;IACN,SAAS,EAAE,SAAS,GAAG;IACvB,MAAM,EAAE,SAAS,GAAG;IACpB,YAAY,gBAAgB,EAAE,UAAU,GAAG,GAAG;IAE9C,kBAAgB,EAAE;IAClB,eAAa;IACb,oBAAkB,eAAe;;KAGjC,oBAAC;MACC,IAAI,GAAG,EAAE,GAAG;MACZ,MAAK;MACL,IAAG;MACH,aAAa;MACb,WAAW;MACX,IAAI;MACJ,IAAI;MACJ,IAAI;MACJ,IAAI;OACJ;KACF,oBAAC;MAAK,IAAI,GAAG,EAAE,GAAG;MAAQ,kBAAiB;gBACzC,oBAAC;OAAK,OAAM;OAAI,QAAO;OAAI,MAAM,QAAQ,EAAE,GAAG;QAAoB;OAC7D;KAGP,oBAAC;MACO;MACN,IAAG,MAAK,OAAO,EAAE,KAAK;MACtB,IAAG,MAAK,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE;MAC/B;iBAEN,EAAE,WAAW;AACb,cACE,oBAAC,OAAO;QACN,SAAS;SAAE,GAAG,KAAK,WAAW,IAAI;SAAI,SAAS;SAAG;QAClD,SAAS;SAAE,GAAG,KAAK,KAAK,IAAI;SAAI,SAAS;SAAG;QAC5C,YACE,gBACI,EAAE,UAAU,GAAG,GACf;SAAE,GAAG;SAAc,SAAS,EAAE,UAAU,IAAK;SAAE;QAErD,WAAW,GACT,EAAE,kBAAkB,gBACpB,aAAa,kBACd;QACD,MAAM,QAAQ,EAAE,GAAG;QACnB,MAAM,aAAa,YAAY;SAC/B;;OAGK;KAGb,oBAAC;MACO;MACN,IAAG,MAAK,OAAO,EAAE,KAAK;MACtB,IAAG,MAAK,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE;iBAErC,EAAE,WACF,oBAAC,OAAO;OACN,SAAS,EAAE,GAAG,KAAK,WAAW,IAAI,IAAI;OACtC,SAAS,EAAE,GAAG,KAAK,KAAK,IAAI,IAAI;OAChC,YAAY,gBAAgB,EAAE,UAAU,GAAG,GAAG;OAC9C,WAAW,GAAG,EAAE,kBAAkB,gBAAgB,aAAa,cAAc;OAC7E,QAAQ,aAAa,cAAc;OACnC,eAAe;OACf,aAAa;OACb,MAAK;QACL;OAEC;KAGN,yBAAyB,eAAe,QAAQ,aAAa,OAC5D,oBAAC;MACC,IAAI,OAAO,UAAU,KAAK;MAC1B,IAAI,OAAO,EAAE,cAAc,UAAU,IAAI,EAAE;MAC3C,GAAG;MACH,WAAW,GAAG,EAAE,kBAAkB,gBAAgB,aAAa,cAAc;MAC7E,MAAK;OACL,GACA;;MA9EC,GAAG,EAAE,GAAG,GAAG,UAAU,UAAU,CAAC,GAAG,QAAQ,UAAU,GA+EjD;IAEb,GACY;GACZ"}
@@ -0,0 +1,22 @@
1
+
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/components/charts/areas/areas.d.ts
5
+ interface SeriesStyle {
6
+ id: string;
7
+ gradientClassName?: string;
8
+ lineClassName?: string;
9
+ areaFill?: string;
10
+ lineStroke?: string;
11
+ }
12
+ interface AreasProps {
13
+ seriesStyles?: SeriesStyle[];
14
+ showLatestValueCircle?: boolean;
15
+ }
16
+ declare function Areas({
17
+ seriesStyles,
18
+ showLatestValueCircle
19
+ }: AreasProps): react_jsx_runtime0.JSX.Element;
20
+ //#endregion
21
+ export { AreasProps as n, SeriesStyle as r, Areas as t };
22
+ //# sourceMappingURL=areas-DtGnjGuX.d.mts.map
@@ -0,0 +1,30 @@
1
+
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+
4
+ //#region src/components/auth/client/nav-user/auth-nav-user.d.ts
5
+ type AuthNavUser = {
6
+ id: string;
7
+ name: string;
8
+ email: string;
9
+ image: string | null;
10
+ isAnonymous?: boolean;
11
+ } | null;
12
+ interface AuthNavUserProps {
13
+ user: AuthNavUser;
14
+ onSignOut?: () => Promise<void> | void;
15
+ onSignIn?: () => Promise<void> | void;
16
+ onProfile?: () => Promise<void> | void;
17
+ onHome?: () => Promise<void> | void;
18
+ onThemeChange?: (theme: 'light' | 'dark') => void;
19
+ }
20
+ declare function AuthNavUser({
21
+ user,
22
+ onSignOut,
23
+ onSignIn,
24
+ onProfile,
25
+ onHome,
26
+ onThemeChange
27
+ }: AuthNavUserProps): react_jsx_runtime0.JSX.Element;
28
+ //#endregion
29
+ export { AuthNavUserProps as n, AuthNavUser as t };
30
+ //# sourceMappingURL=auth-nav-user-CRxDpY_7.d.mts.map
@@ -0,0 +1,181 @@
1
+ 'use client';
2
+ import { AI_FOCUS } from "./components-ai-elements-constants.mjs";
3
+ import { n as AvatarFallback, r as AvatarImage, t as Avatar } from "./avatar-DjiX7nT8.mjs";
4
+ import { a as DropdownMenuItem, h as DropdownMenuTrigger, i as DropdownMenuGroup, o as DropdownMenuLabel, r as DropdownMenuContent, t as DropdownMenu, u as DropdownMenuSeparator } from "./dropdown-menu-91g1g_Cl.mjs";
5
+ import { d as SidebarMenu, h as SidebarMenuItem, m as SidebarMenuButton, w as useSidebar } from "./sidebar-CdWE7H3R.mjs";
6
+ import { useMediaQuery, useReducedMotion } from "@mantine/hooks";
7
+ import { BadgeCheck, ChevronsUpDown, LogIn, LogOut, Moon, Sun, User } from "lucide-react";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ import { Logger } from "@repo/shared";
10
+
11
+ //#region src/components/auth/client/nav-user/auth-nav-user.tsx
12
+ /**
13
+ * @fileoverview AuthNavUser Component - Premium Harmony V2
14
+ *
15
+ * Authentication-aware user menu component for sidebar navigation. Displays user avatar,
16
+ * name, email, and provides dropdown menu with authentication actions, account settings,
17
+ * and theme toggle. Supports anonymous sessions and authenticated users.
18
+ *
19
+ * Features:
20
+ * - ES2023 syntax with modern patterns
21
+ * - Tailwind v4 CSS-first theming with semantic color tokens
22
+ * - Premium Harmony V2 focus rings for keyboard navigation (AI_FOCUS)
23
+ * - Touch detection with automatic sizing for mobile devices (pointer: coarse)
24
+ * - Reduced motion support for accessibility compliance
25
+ * - WCAG 2.5.5 compliant 44px minimum touch targets on touch devices
26
+ * - Data attributes for state management (data-state=open/closed)
27
+ * - Responsive dropdown positioning (mobile vs desktop)
28
+ * - Anonymous session support with guest user fallback
29
+ * - Conditional menu items based on authentication state
30
+ *
31
+ * @module @od-oneapp/uni-ui/components/auth/client/nav-user
32
+ * @component AuthNavUser
33
+ *
34
+ * @useCases
35
+ * - Application sidebar user profile menu with sign in/out actions
36
+ * - Dashboard layouts with quick access to authentication and preferences
37
+ * - Admin panels with user-specific actions and theme controls
38
+ * - Multi-tenant applications with organization/account switching
39
+ * - Mobile-responsive navigation with touch-optimized user menu
40
+ * - Accessibility-compliant user menu for keyboard and screen reader users
41
+ * - Anonymous session management with upgrade prompts
42
+ * - Quick access to profile, account settings, and theme toggle from any page
43
+ *
44
+ * @example <AuthNavUser user={user} onSignOut={handleSignOut} onProfile={handleProfile} />
45
+ *
46
+ * @example <AuthNavUser user={anonymousUser} onSignIn={handleSignIn} onHome={handleHome} />
47
+ *
48
+ * @example <AuthNavUser user={user} onThemeChange={(theme) => setTheme(theme)} />
49
+ */
50
+ const logger = new Logger("uni-ui:auth-nav-user");
51
+ /**
52
+ * User navigation component for sidebar footer.
53
+ * Shows user avatar, name, email and provides auth actions.
54
+ * Implements Premium Harmony V2 patterns for accessibility and touch support.
55
+ */
56
+ function AuthNavUser({ user, onSignOut, onSignIn, onProfile, onHome, onThemeChange }) {
57
+ const { isMobile } = useSidebar();
58
+ const isTouch = useMediaQuery("(pointer: coarse)");
59
+ const reducedMotion = useReducedMotion();
60
+ const isAnonymous = user?.isAnonymous ?? false;
61
+ const isAuthenticated = Boolean(user) && !isAnonymous;
62
+ const displayName = isAnonymous ? "Guest User" : user?.name ?? "Guest User";
63
+ const displayEmail = isAnonymous ? "Anonymous session" : user?.email ?? "Not signed in";
64
+ const avatarUrl = user?.image ?? void 0;
65
+ const handleSignIn = async () => {
66
+ await onSignIn?.();
67
+ };
68
+ const handleSignOut = async () => {
69
+ try {
70
+ if (onSignOut) await onSignOut();
71
+ await onHome?.();
72
+ } catch (error) {
73
+ logger.error("Sign out failed", { error });
74
+ }
75
+ };
76
+ const handleProfile = async () => {
77
+ await onProfile?.();
78
+ };
79
+ const handleThemeChange = (theme) => {
80
+ onThemeChange?.(theme);
81
+ };
82
+ return /* @__PURE__ */ jsx(SidebarMenu, { children: /* @__PURE__ */ jsx(SidebarMenuItem, { children: /* @__PURE__ */ jsxs(DropdownMenu, { children: [/* @__PURE__ */ jsx(DropdownMenuTrigger, {
83
+ asChild: true,
84
+ children: /* @__PURE__ */ jsxs(SidebarMenuButton, {
85
+ size: "lg",
86
+ className: `data-[state=open]:bg-sidebar-accent data-[state=open]:text-sidebar-accent-foreground ${AI_FOCUS.ring}`,
87
+ "data-touch": isTouch ? "true" : "false",
88
+ "data-reduced-motion": reducedMotion ? "true" : "false",
89
+ children: [
90
+ /* @__PURE__ */ jsxs(Avatar, {
91
+ className: "h-8 w-8 rounded-lg",
92
+ children: [/* @__PURE__ */ jsx(AvatarImage, {
93
+ src: avatarUrl,
94
+ alt: displayName
95
+ }), /* @__PURE__ */ jsx(AvatarFallback, {
96
+ className: "rounded-lg",
97
+ children: isAuthenticated ? displayName.slice(0, 2).toUpperCase() : "?"
98
+ })]
99
+ }),
100
+ /* @__PURE__ */ jsxs("div", {
101
+ className: "grid flex-1 text-left text-sm leading-tight",
102
+ children: [/* @__PURE__ */ jsx("span", {
103
+ className: "truncate font-medium",
104
+ children: displayName
105
+ }), /* @__PURE__ */ jsx("span", {
106
+ className: "text-muted-foreground truncate text-xs",
107
+ children: displayEmail
108
+ })]
109
+ }),
110
+ /* @__PURE__ */ jsx(ChevronsUpDown, { className: "ml-auto size-4" })
111
+ ]
112
+ })
113
+ }), /* @__PURE__ */ jsxs(DropdownMenuContent, {
114
+ className: "w-[--radix-dropdown-menu-trigger-width] min-w-56 rounded-lg",
115
+ side: isMobile ? "bottom" : "right",
116
+ align: "end",
117
+ sideOffset: 4,
118
+ "data-touch": isTouch ? "true" : "false",
119
+ children: [
120
+ /* @__PURE__ */ jsx(DropdownMenuLabel, {
121
+ className: "p-0 font-normal",
122
+ children: /* @__PURE__ */ jsxs("div", {
123
+ className: "flex items-center gap-2 px-1 py-1.5 text-left text-sm",
124
+ children: [/* @__PURE__ */ jsxs(Avatar, {
125
+ className: "h-8 w-8 rounded-lg",
126
+ children: [/* @__PURE__ */ jsx(AvatarImage, {
127
+ src: avatarUrl,
128
+ alt: displayName
129
+ }), /* @__PURE__ */ jsx(AvatarFallback, {
130
+ className: "rounded-lg",
131
+ children: isAuthenticated ? displayName.slice(0, 2).toUpperCase() : "?"
132
+ })]
133
+ }), /* @__PURE__ */ jsxs("div", {
134
+ className: "grid flex-1 text-left text-sm leading-tight",
135
+ children: [/* @__PURE__ */ jsx("span", {
136
+ className: "truncate font-medium",
137
+ children: displayName
138
+ }), /* @__PURE__ */ jsx("span", {
139
+ className: "text-muted-foreground truncate text-xs",
140
+ children: displayEmail
141
+ })]
142
+ })]
143
+ })
144
+ }),
145
+ /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
146
+ !isAuthenticated ? /* @__PURE__ */ jsx(DropdownMenuGroup, { children: /* @__PURE__ */ jsxs(DropdownMenuItem, {
147
+ onClick: () => void handleSignIn(),
148
+ "data-action": "sign-in",
149
+ "data-anonymous": isAnonymous ? "true" : "false",
150
+ children: [/* @__PURE__ */ jsx(LogIn, {}), isAnonymous ? "Sign In or Create Account" : "Sign In"]
151
+ }) }) : /* @__PURE__ */ jsxs(DropdownMenuGroup, { children: [/* @__PURE__ */ jsxs(DropdownMenuItem, {
152
+ onClick: () => void handleProfile(),
153
+ "data-action": "profile",
154
+ children: [/* @__PURE__ */ jsx(User, {}), "Profile"]
155
+ }), /* @__PURE__ */ jsxs(DropdownMenuItem, {
156
+ onClick: () => void handleProfile(),
157
+ "data-action": "account-settings",
158
+ children: [/* @__PURE__ */ jsx(BadgeCheck, {}), "Account Settings"]
159
+ })] }),
160
+ /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
161
+ /* @__PURE__ */ jsxs(DropdownMenuGroup, { children: [/* @__PURE__ */ jsxs(DropdownMenuItem, {
162
+ onClick: () => handleThemeChange("light"),
163
+ "data-action": "theme-light",
164
+ children: [/* @__PURE__ */ jsx(Sun, {}), "Light Theme"]
165
+ }), /* @__PURE__ */ jsxs(DropdownMenuItem, {
166
+ onClick: () => handleThemeChange("dark"),
167
+ "data-action": "theme-dark",
168
+ children: [/* @__PURE__ */ jsx(Moon, {}), "Dark Theme"]
169
+ })] }),
170
+ isAuthenticated && onSignOut ? /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(DropdownMenuSeparator, {}), /* @__PURE__ */ jsxs(DropdownMenuItem, {
171
+ onClick: () => void handleSignOut(),
172
+ "data-action": "sign-out",
173
+ children: [/* @__PURE__ */ jsx(LogOut, {}), "Sign Out"]
174
+ })] }) : null
175
+ ]
176
+ })] }) }) });
177
+ }
178
+
179
+ //#endregion
180
+ export { AuthNavUser as t };
181
+ //# sourceMappingURL=auth-nav-user-DPFv8dTp.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-nav-user-DPFv8dTp.mjs","names":[],"sources":["../src/components/auth/client/nav-user/auth-nav-user.tsx"],"sourcesContent":["'use client';\n\n/**\n * @fileoverview AuthNavUser Component - Premium Harmony V2\n *\n * Authentication-aware user menu component for sidebar navigation. Displays user avatar,\n * name, email, and provides dropdown menu with authentication actions, account settings,\n * and theme toggle. Supports anonymous sessions and authenticated users.\n *\n * Features:\n * - ES2023 syntax with modern patterns\n * - Tailwind v4 CSS-first theming with semantic color tokens\n * - Premium Harmony V2 focus rings for keyboard navigation (AI_FOCUS)\n * - Touch detection with automatic sizing for mobile devices (pointer: coarse)\n * - Reduced motion support for accessibility compliance\n * - WCAG 2.5.5 compliant 44px minimum touch targets on touch devices\n * - Data attributes for state management (data-state=open/closed)\n * - Responsive dropdown positioning (mobile vs desktop)\n * - Anonymous session support with guest user fallback\n * - Conditional menu items based on authentication state\n *\n * @module @od-oneapp/uni-ui/components/auth/client/nav-user\n * @component AuthNavUser\n *\n * @useCases\n * - Application sidebar user profile menu with sign in/out actions\n * - Dashboard layouts with quick access to authentication and preferences\n * - Admin panels with user-specific actions and theme controls\n * - Multi-tenant applications with organization/account switching\n * - Mobile-responsive navigation with touch-optimized user menu\n * - Accessibility-compliant user menu for keyboard and screen reader users\n * - Anonymous session management with upgrade prompts\n * - Quick access to profile, account settings, and theme toggle from any page\n *\n * @example <AuthNavUser user={user} onSignOut={handleSignOut} onProfile={handleProfile} />\n *\n * @example <AuthNavUser user={anonymousUser} onSignIn={handleSignIn} onHome={handleHome} />\n *\n * @example <AuthNavUser user={user} onThemeChange={(theme) => setTheme(theme)} />\n */\n\nimport { useMediaQuery, useReducedMotion } from '@mantine/hooks';\nimport { Logger } from '@repo/shared';\nimport { BadgeCheck, ChevronsUpDown, LogIn, LogOut, Moon, Sun, User } from 'lucide-react';\n\nconst logger = new Logger('uni-ui:auth-nav-user');\n\nimport { AI_FOCUS } from '../../../ai-elements/ai-elements.constants';\nimport { Avatar, AvatarFallback, AvatarImage } from '../../../elements/atoms/avatar';\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuTrigger,\n} from '../../../elements/organisms/dropdown-menu';\nimport {\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n useSidebar,\n} from '../../../layout/sidebar';\n\n/**\n * User data for auth navigation component\n */\nexport type AuthNavUser = {\n id: string;\n name: string;\n email: string;\n image: string | null;\n isAnonymous?: boolean;\n} | null;\n\nexport interface AuthNavUserProps {\n user: AuthNavUser;\n /** Auth client signOut function */\n onSignOut?: () => Promise<void> | void;\n /** Optional callbacks for navigation/actions provided by the app */\n onSignIn?: () => Promise<void> | void;\n onProfile?: () => Promise<void> | void;\n onHome?: () => Promise<void> | void;\n onThemeChange?: (theme: 'light' | 'dark') => void;\n}\n\n/**\n * User navigation component for sidebar footer.\n * Shows user avatar, name, email and provides auth actions.\n * Implements Premium Harmony V2 patterns for accessibility and touch support.\n */\nexport function AuthNavUser({\n user,\n onSignOut,\n onSignIn,\n onProfile,\n onHome,\n onThemeChange,\n}: AuthNavUserProps) {\n const { isMobile } = useSidebar();\n const isTouch = useMediaQuery('(pointer: coarse)');\n const reducedMotion = useReducedMotion();\n\n const isAnonymous = user?.isAnonymous ?? false;\n const isAuthenticated = Boolean(user) && !isAnonymous;\n const displayName = isAnonymous ? 'Guest User' : (user?.name ?? 'Guest User');\n const displayEmail = isAnonymous ? 'Anonymous session' : (user?.email ?? 'Not signed in');\n const avatarUrl = user?.image ?? undefined;\n\n const handleSignIn = async () => {\n await onSignIn?.();\n };\n\n const handleSignOut = async () => {\n try {\n if (onSignOut) {\n await onSignOut();\n }\n await onHome?.();\n } catch (error) {\n logger.error('Sign out failed', { error });\n }\n };\n\n const handleProfile = async () => {\n await onProfile?.();\n };\n\n const handleThemeChange = (theme: 'light' | 'dark') => {\n onThemeChange?.(theme);\n };\n\n return (\n <SidebarMenu>\n <SidebarMenuItem>\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <SidebarMenuButton\n size=\"lg\"\n className={`data-[state=open]:bg-sidebar-accent data-[state=open]:text-sidebar-accent-foreground ${AI_FOCUS.ring}`}\n data-touch={isTouch ? 'true' : 'false'}\n data-reduced-motion={reducedMotion ? 'true' : 'false'}\n >\n <Avatar className=\"h-8 w-8 rounded-lg\">\n <AvatarImage src={avatarUrl} alt={displayName} />\n <AvatarFallback className=\"rounded-lg\">\n {isAuthenticated ? displayName.slice(0, 2).toUpperCase() : '?'}\n </AvatarFallback>\n </Avatar>\n <div className=\"grid flex-1 text-left text-sm leading-tight\">\n <span className=\"truncate font-medium\">{displayName}</span>\n <span className=\"text-muted-foreground truncate text-xs\">{displayEmail}</span>\n </div>\n <ChevronsUpDown className=\"ml-auto size-4\" />\n </SidebarMenuButton>\n </DropdownMenuTrigger>\n <DropdownMenuContent\n className=\"w-[--radix-dropdown-menu-trigger-width] min-w-56 rounded-lg\"\n side={isMobile ? 'bottom' : 'right'}\n align=\"end\"\n sideOffset={4}\n data-touch={isTouch ? 'true' : 'false'}\n >\n <DropdownMenuLabel className=\"p-0 font-normal\">\n <div className=\"flex items-center gap-2 px-1 py-1.5 text-left text-sm\">\n <Avatar className=\"h-8 w-8 rounded-lg\">\n <AvatarImage src={avatarUrl} alt={displayName} />\n <AvatarFallback className=\"rounded-lg\">\n {isAuthenticated ? displayName.slice(0, 2).toUpperCase() : '?'}\n </AvatarFallback>\n </Avatar>\n <div className=\"grid flex-1 text-left text-sm leading-tight\">\n <span className=\"truncate font-medium\">{displayName}</span>\n <span className=\"text-muted-foreground truncate text-xs\">{displayEmail}</span>\n </div>\n </div>\n </DropdownMenuLabel>\n <DropdownMenuSeparator />\n\n {!isAuthenticated ? (\n <DropdownMenuGroup>\n <DropdownMenuItem\n onClick={() => void handleSignIn()}\n data-action=\"sign-in\"\n data-anonymous={isAnonymous ? 'true' : 'false'}\n >\n <LogIn />\n {isAnonymous ? 'Sign In or Create Account' : 'Sign In'}\n </DropdownMenuItem>\n </DropdownMenuGroup>\n ) : (\n <DropdownMenuGroup>\n <DropdownMenuItem onClick={() => void handleProfile()} data-action=\"profile\">\n <User />\n Profile\n </DropdownMenuItem>\n <DropdownMenuItem\n onClick={() => void handleProfile()}\n data-action=\"account-settings\"\n >\n <BadgeCheck />\n Account Settings\n </DropdownMenuItem>\n </DropdownMenuGroup>\n )}\n\n <DropdownMenuSeparator />\n <DropdownMenuGroup>\n <DropdownMenuItem\n onClick={() => handleThemeChange('light')}\n data-action=\"theme-light\"\n >\n <Sun />\n Light Theme\n </DropdownMenuItem>\n <DropdownMenuItem onClick={() => handleThemeChange('dark')} data-action=\"theme-dark\">\n <Moon />\n Dark Theme\n </DropdownMenuItem>\n </DropdownMenuGroup>\n\n {isAuthenticated && onSignOut ? (\n <>\n <DropdownMenuSeparator />\n <DropdownMenuItem onClick={() => void handleSignOut()} data-action=\"sign-out\">\n <LogOut />\n Sign Out\n </DropdownMenuItem>\n </>\n ) : null}\n </DropdownMenuContent>\n </DropdownMenu>\n </SidebarMenuItem>\n </SidebarMenu>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAM,SAAS,IAAI,OAAO,uBAAuB;;;;;;AA+CjD,SAAgB,YAAY,EAC1B,MACA,WACA,UACA,WACA,QACA,iBACmB;CACnB,MAAM,EAAE,aAAa,YAAY;CACjC,MAAM,UAAU,cAAc,oBAAoB;CAClD,MAAM,gBAAgB,kBAAkB;CAExC,MAAM,cAAc,MAAM,eAAe;CACzC,MAAM,kBAAkB,QAAQ,KAAK,IAAI,CAAC;CAC1C,MAAM,cAAc,cAAc,eAAgB,MAAM,QAAQ;CAChE,MAAM,eAAe,cAAc,sBAAuB,MAAM,SAAS;CACzE,MAAM,YAAY,MAAM,SAAS;CAEjC,MAAM,eAAe,YAAY;AAC/B,QAAM,YAAY;;CAGpB,MAAM,gBAAgB,YAAY;AAChC,MAAI;AACF,OAAI,UACF,OAAM,WAAW;AAEnB,SAAM,UAAU;WACT,OAAO;AACd,UAAO,MAAM,mBAAmB,EAAE,OAAO,CAAC;;;CAI9C,MAAM,gBAAgB,YAAY;AAChC,QAAM,aAAa;;CAGrB,MAAM,qBAAqB,UAA4B;AACrD,kBAAgB,MAAM;;AAGxB,QACE,oBAAC,yBACC,oBAAC,6BACC,qBAAC,2BACC,oBAAC;EAAoB;YACnB,qBAAC;GACC,MAAK;GACL,WAAW,wFAAwF,SAAS;GAC5G,cAAY,UAAU,SAAS;GAC/B,uBAAqB,gBAAgB,SAAS;;IAE9C,qBAAC;KAAO,WAAU;gBAChB,oBAAC;MAAY,KAAK;MAAW,KAAK;OAAe,EACjD,oBAAC;MAAe,WAAU;gBACvB,kBAAkB,YAAY,MAAM,GAAG,EAAE,CAAC,aAAa,GAAG;OAC5C;MACV;IACT,qBAAC;KAAI,WAAU;gBACb,oBAAC;MAAK,WAAU;gBAAwB;OAAmB,EAC3D,oBAAC;MAAK,WAAU;gBAA0C;OAAoB;MAC1E;IACN,oBAAC,kBAAe,WAAU,mBAAmB;;IAC3B;GACA,EACtB,qBAAC;EACC,WAAU;EACV,MAAM,WAAW,WAAW;EAC5B,OAAM;EACN,YAAY;EACZ,cAAY,UAAU,SAAS;;GAE/B,oBAAC;IAAkB,WAAU;cAC3B,qBAAC;KAAI,WAAU;gBACb,qBAAC;MAAO,WAAU;iBAChB,oBAAC;OAAY,KAAK;OAAW,KAAK;QAAe,EACjD,oBAAC;OAAe,WAAU;iBACvB,kBAAkB,YAAY,MAAM,GAAG,EAAE,CAAC,aAAa,GAAG;QAC5C;OACV,EACT,qBAAC;MAAI,WAAU;iBACb,oBAAC;OAAK,WAAU;iBAAwB;QAAmB,EAC3D,oBAAC;OAAK,WAAU;iBAA0C;QAAoB;OAC1E;MACF;KACY;GACpB,oBAAC,0BAAwB;GAExB,CAAC,kBACA,oBAAC,+BACC,qBAAC;IACC,eAAe,KAAK,cAAc;IAClC,eAAY;IACZ,kBAAgB,cAAc,SAAS;eAEvC,oBAAC,UAAQ,EACR,cAAc,8BAA8B;KAC5B,GACD,GAEpB,qBAAC,gCACC,qBAAC;IAAiB,eAAe,KAAK,eAAe;IAAE,eAAY;eACjE,oBAAC,SAAO;KAES,EACnB,qBAAC;IACC,eAAe,KAAK,eAAe;IACnC,eAAY;eAEZ,oBAAC,eAAa;KAEG,IACD;GAGtB,oBAAC,0BAAwB;GACzB,qBAAC,gCACC,qBAAC;IACC,eAAe,kBAAkB,QAAQ;IACzC,eAAY;eAEZ,oBAAC,QAAM;KAEU,EACnB,qBAAC;IAAiB,eAAe,kBAAkB,OAAO;IAAE,eAAY;eACtE,oBAAC,SAAO;KAES,IACD;GAEnB,mBAAmB,YAClB,4CACE,oBAAC,0BAAwB,EACzB,qBAAC;IAAiB,eAAe,KAAK,eAAe;IAAE,eAAY;eACjE,oBAAC,WAAS;KAEO,IAClB,GACD;;GACgB,IACT,GACC,GACN"}