@hanzo/ui 5.3.33 → 5.3.35

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 (1076) hide show
  1. package/bin/create-registry.js +0 -0
  2. package/bin/npx-registry-mcp.js +0 -0
  3. package/bin/registry-mcp-wrapper.sh +0 -0
  4. package/bin/registry-mcp.js +0 -0
  5. package/bin/start-mcp-server.sh +0 -0
  6. package/bin/test-mcp.sh +0 -0
  7. package/dist/alert-dialog.js +18 -13
  8. package/dist/alert-dialog.mjs +18 -13
  9. package/dist/alert.js +67 -37
  10. package/dist/alert.mjs +66 -38
  11. package/dist/assets/ai-icons.d.ts +28 -0
  12. package/dist/assets/ai-icons.d.ts.map +1 -0
  13. package/dist/assets/ai-icons.js +60 -0
  14. package/dist/assets/crypto.d.ts +7 -0
  15. package/dist/assets/crypto.d.ts.map +1 -0
  16. package/dist/assets/crypto.js +4 -0
  17. package/dist/assets/file-type-icon.d.ts +7 -0
  18. package/dist/assets/file-type-icon.d.ts.map +1 -0
  19. package/dist/assets/file-type-icon.js +36 -0
  20. package/dist/assets/file.d.ts +5 -0
  21. package/dist/assets/file.d.ts.map +1 -0
  22. package/dist/assets/file.js +29 -0
  23. package/dist/assets/general.d.ts +220 -0
  24. package/dist/assets/general.d.ts.map +1 -0
  25. package/dist/assets/general.js +136 -0
  26. package/dist/assets/hanzo-logo.d.ts +4 -0
  27. package/dist/assets/hanzo-logo.d.ts.map +1 -0
  28. package/dist/assets/hanzo-logo.js +3 -0
  29. package/dist/assets/index.d.ts +7 -0
  30. package/dist/assets/index.d.ts.map +1 -0
  31. package/dist/assets/index.js +23 -0
  32. package/dist/assets/llm-provider.d.ts +64 -0
  33. package/dist/assets/llm-provider.d.ts.map +1 -0
  34. package/dist/assets/llm-provider.js +90 -0
  35. package/dist/badge.js +28 -33
  36. package/dist/badge.mjs +28 -13
  37. package/dist/blocks/index.js +90 -70
  38. package/dist/blocks/index.mjs +90 -70
  39. package/dist/calendar-ext/index.js +18 -13
  40. package/dist/calendar-ext/index.mjs +18 -13
  41. package/dist/calendar.js +18 -13
  42. package/dist/calendar.mjs +18 -13
  43. package/dist/carousel.js +18 -13
  44. package/dist/carousel.mjs +18 -13
  45. package/dist/charts/index.js +5564 -0
  46. package/dist/charts/index.mjs +5503 -2
  47. package/dist/command.js +115 -94
  48. package/dist/command.mjs +116 -96
  49. package/dist/components/cal-embed.d.ts +11 -0
  50. package/dist/components/cal-embed.d.ts.map +1 -0
  51. package/dist/components/cal-embed.js +38 -0
  52. package/dist/components/index.d.ts +3 -0
  53. package/dist/components/index.d.ts.map +1 -0
  54. package/dist/components/index.js +7 -0
  55. package/dist/desktop/hooks.js +224 -0
  56. package/dist/desktop/hooks.mjs +199 -0
  57. package/dist/desktop/index.js +686 -0
  58. package/dist/desktop/index.mjs +658 -0
  59. package/dist/desktop/spotlight.js +261 -0
  60. package/dist/desktop/spotlight.mjs +236 -0
  61. package/dist/desktop/window.js +274 -0
  62. package/dist/desktop/window.mjs +248 -0
  63. package/dist/dialog.js +182 -87
  64. package/dist/dialog.mjs +183 -90
  65. package/dist/dock/index.js +45 -25
  66. package/dist/dock/index.mjs +45 -25
  67. package/dist/dock/limelight-nav.js +59 -39
  68. package/dist/dock/limelight-nav.mjs +53 -33
  69. package/dist/dock/message.js +18 -13
  70. package/dist/dock/message.mjs +18 -13
  71. package/dist/form/index.js +7 -8
  72. package/dist/form/index.mjs +7 -8
  73. package/dist/frameworks/core/index.d.ts +4 -0
  74. package/dist/frameworks/core/index.d.ts.map +1 -0
  75. package/dist/frameworks/core/index.js +5 -0
  76. package/dist/frameworks/core/styles.d.ts +12 -0
  77. package/dist/frameworks/core/styles.d.ts.map +1 -0
  78. package/dist/frameworks/core/styles.js +11 -0
  79. package/dist/frameworks/core/types.d.ts +17 -0
  80. package/dist/frameworks/core/types.d.ts.map +1 -0
  81. package/dist/frameworks/core/types.js +11 -0
  82. package/dist/frameworks/core/utils/index.d.ts +19 -0
  83. package/dist/frameworks/core/utils/index.d.ts.map +1 -0
  84. package/dist/frameworks/core/utils/index.js +49 -0
  85. package/dist/frameworks/react/components/button.d.ts +8 -0
  86. package/dist/frameworks/react/components/button.d.ts.map +1 -0
  87. package/dist/frameworks/react/components/button.js +8 -0
  88. package/dist/frameworks/react/components/index.d.ts +2 -0
  89. package/dist/frameworks/react/components/index.d.ts.map +1 -0
  90. package/dist/frameworks/react/components/index.js +4 -0
  91. package/dist/frameworks/react/hooks/index.d.ts +2 -0
  92. package/dist/frameworks/react/hooks/index.d.ts.map +1 -0
  93. package/dist/frameworks/react/hooks/index.js +5 -0
  94. package/dist/frameworks/react/index.d.ts +5 -0
  95. package/dist/frameworks/react/index.d.ts.map +1 -0
  96. package/dist/frameworks/react/index.js +7 -0
  97. package/dist/frameworks/react/utils/index.d.ts +2 -0
  98. package/dist/frameworks/react/utils/index.d.ts.map +1 -0
  99. package/dist/frameworks/react/utils/index.js +2 -0
  100. package/dist/frameworks/react-native/components.d.ts +17 -0
  101. package/dist/frameworks/react-native/components.d.ts.map +1 -0
  102. package/dist/frameworks/react-native/components.js +17 -0
  103. package/dist/frameworks/react-native/hooks.d.ts +10 -0
  104. package/dist/frameworks/react-native/hooks.d.ts.map +1 -0
  105. package/dist/frameworks/react-native/hooks.js +9 -0
  106. package/dist/frameworks/react-native/index.d.ts +5 -0
  107. package/dist/frameworks/react-native/index.d.ts.map +1 -0
  108. package/dist/frameworks/react-native/index.js +7 -0
  109. package/dist/frameworks/react-native/utils.d.ts +7 -0
  110. package/dist/frameworks/react-native/utils.d.ts.map +1 -0
  111. package/dist/frameworks/react-native/utils.js +9 -0
  112. package/dist/frameworks/svelte/components.d.ts +15 -0
  113. package/dist/frameworks/svelte/components.d.ts.map +1 -0
  114. package/dist/frameworks/svelte/components.js +16 -0
  115. package/dist/frameworks/svelte/index.d.ts +5 -0
  116. package/dist/frameworks/svelte/index.d.ts.map +1 -0
  117. package/dist/frameworks/svelte/index.js +7 -0
  118. package/dist/frameworks/svelte/stores.d.ts +13 -0
  119. package/dist/frameworks/svelte/stores.d.ts.map +1 -0
  120. package/dist/frameworks/svelte/stores.js +9 -0
  121. package/dist/frameworks/svelte/utils.d.ts +7 -0
  122. package/dist/frameworks/svelte/utils.d.ts.map +1 -0
  123. package/dist/frameworks/svelte/utils.js +8 -0
  124. package/dist/frameworks/vue/components.d.ts +15 -0
  125. package/dist/frameworks/vue/components.d.ts.map +1 -0
  126. package/dist/frameworks/vue/components.js +16 -0
  127. package/dist/frameworks/vue/composables.d.ts +16 -0
  128. package/dist/frameworks/vue/composables.d.ts.map +1 -0
  129. package/dist/frameworks/vue/composables.js +14 -0
  130. package/dist/frameworks/vue/index.d.ts +5 -0
  131. package/dist/frameworks/vue/index.d.ts.map +1 -0
  132. package/dist/frameworks/vue/index.js +7 -0
  133. package/dist/frameworks/vue/utils.d.ts +7 -0
  134. package/dist/frameworks/vue/utils.d.ts.map +1 -0
  135. package/dist/frameworks/vue/utils.js +8 -0
  136. package/dist/helpers/file.d.ts +7 -0
  137. package/dist/helpers/file.d.ts.map +1 -0
  138. package/dist/helpers/file.js +30 -0
  139. package/dist/helpers/memoization.d.ts +9 -0
  140. package/dist/helpers/memoization.d.ts.map +1 -0
  141. package/dist/helpers/memoization.js +24 -0
  142. package/dist/index.js +1519 -348
  143. package/dist/index.mjs +1469 -335
  144. package/dist/mermaid/index.js +19 -13
  145. package/dist/mermaid/index.mjs +19 -14
  146. package/dist/primitives/accordion.d.ts +27 -0
  147. package/dist/primitives/accordion.d.ts.map +1 -0
  148. package/dist/primitives/accordion.js +12 -0
  149. package/dist/primitives/action-button.d.ts +10 -0
  150. package/dist/primitives/action-button.d.ts.map +1 -0
  151. package/dist/primitives/action-button.js +14 -0
  152. package/dist/primitives/alert-dialog.d.ts +57 -0
  153. package/dist/primitives/alert-dialog.d.ts.map +1 -0
  154. package/dist/primitives/alert-dialog.js +25 -0
  155. package/dist/primitives/alert.d.ts +11 -0
  156. package/dist/primitives/alert.d.ts.map +1 -0
  157. package/dist/primitives/alert.js +32 -0
  158. package/dist/primitives/apply-typography.d.ts +8 -0
  159. package/dist/primitives/apply-typography.d.ts.map +1 -0
  160. package/dist/primitives/apply-typography.js +36 -0
  161. package/dist/primitives/aspect-ratio.d.ts +4 -0
  162. package/dist/primitives/aspect-ratio.d.ts.map +1 -0
  163. package/dist/primitives/aspect-ratio.js +4 -0
  164. package/dist/primitives/avatar.d.ts +25 -0
  165. package/dist/primitives/avatar.d.ts.map +1 -0
  166. package/dist/primitives/avatar.js +10 -0
  167. package/dist/primitives/badge.d.ts +11 -0
  168. package/dist/primitives/badge.d.ts.map +1 -0
  169. package/dist/primitives/badge.js +28 -0
  170. package/dist/primitives/breadcrumb.d.ts +51 -0
  171. package/dist/primitives/breadcrumb.d.ts.map +1 -0
  172. package/dist/primitives/breadcrumb.js +22 -0
  173. package/dist/primitives/breakpoint-indicator.d.ts +4 -0
  174. package/dist/primitives/breakpoint-indicator.d.ts.map +1 -0
  175. package/dist/primitives/breakpoint-indicator.js +7 -0
  176. package/dist/primitives/button-group.d.ts +12 -0
  177. package/dist/primitives/button-group.d.ts.map +1 -0
  178. package/dist/primitives/button-group.js +28 -0
  179. package/dist/primitives/button.d.ts +14 -0
  180. package/dist/primitives/button.d.ts.map +1 -0
  181. package/dist/primitives/button.js +41 -0
  182. package/dist/primitives/cal-embed.d.ts +11 -0
  183. package/dist/primitives/cal-embed.d.ts.map +1 -0
  184. package/dist/primitives/cal-embed.js +38 -0
  185. package/dist/primitives/calendar.d.ts +11 -0
  186. package/dist/primitives/calendar.d.ts.map +1 -0
  187. package/dist/primitives/calendar.js +58 -0
  188. package/dist/primitives/card.d.ts +10 -0
  189. package/dist/primitives/card.d.ts.map +1 -0
  190. package/dist/primitives/card.js +24 -0
  191. package/dist/primitives/carousel.d.ts +19 -0
  192. package/dist/primitives/carousel.d.ts.map +1 -0
  193. package/dist/primitives/carousel.js +95 -0
  194. package/dist/primitives/chart.d.ts +41 -0
  195. package/dist/primitives/chart.d.ts.map +1 -0
  196. package/dist/primitives/chart.js +128 -0
  197. package/dist/primitives/charts/area/chart-area-axes.d.ts +3 -0
  198. package/dist/primitives/charts/area/chart-area-axes.d.ts.map +1 -0
  199. package/dist/primitives/charts/area/chart-area-axes.js +31 -0
  200. package/dist/primitives/charts/area/chart-area-default.d.ts +3 -0
  201. package/dist/primitives/charts/area/chart-area-default.d.ts.map +1 -0
  202. package/dist/primitives/charts/area/chart-area-default.js +27 -0
  203. package/dist/primitives/charts/area/chart-area-gradient.d.ts +3 -0
  204. package/dist/primitives/charts/area/chart-area-gradient.d.ts.map +1 -0
  205. package/dist/primitives/charts/area/chart-area-gradient.js +31 -0
  206. package/dist/primitives/charts/area/chart-area-icons.d.ts +3 -0
  207. package/dist/primitives/charts/area/chart-area-icons.d.ts.map +1 -0
  208. package/dist/primitives/charts/area/chart-area-icons.js +33 -0
  209. package/dist/primitives/charts/area/chart-area-interactive.d.ts +3 -0
  210. package/dist/primitives/charts/area/chart-area-interactive.d.ts.map +1 -0
  211. package/dist/primitives/charts/area/chart-area-interactive.js +143 -0
  212. package/dist/primitives/charts/area/chart-area-legend.d.ts +3 -0
  213. package/dist/primitives/charts/area/chart-area-legend.d.ts.map +1 -0
  214. package/dist/primitives/charts/area/chart-area-legend.js +31 -0
  215. package/dist/primitives/charts/area/chart-area-linear.d.ts +3 -0
  216. package/dist/primitives/charts/area/chart-area-linear.d.ts.map +1 -0
  217. package/dist/primitives/charts/area/chart-area-linear.js +27 -0
  218. package/dist/primitives/charts/area/chart-area-stacked-expand.d.ts +3 -0
  219. package/dist/primitives/charts/area/chart-area-stacked-expand.d.ts.map +1 -0
  220. package/dist/primitives/charts/area/chart-area-stacked-expand.js +36 -0
  221. package/dist/primitives/charts/area/chart-area-stacked.d.ts +3 -0
  222. package/dist/primitives/charts/area/chart-area-stacked.d.ts.map +1 -0
  223. package/dist/primitives/charts/area/chart-area-stacked.js +31 -0
  224. package/dist/primitives/charts/area/chart-area-step.d.ts +3 -0
  225. package/dist/primitives/charts/area/chart-area-step.d.ts.map +1 -0
  226. package/dist/primitives/charts/area/chart-area-step.js +28 -0
  227. package/dist/primitives/charts/area/index.d.ts +11 -0
  228. package/dist/primitives/charts/area/index.d.ts.map +1 -0
  229. package/dist/primitives/charts/area/index.js +11 -0
  230. package/dist/primitives/charts/bar/chart-bar-active.d.ts +3 -0
  231. package/dist/primitives/charts/bar/chart-bar-active.d.ts.map +1 -0
  232. package/dist/primitives/charts/bar/chart-bar-active.js +44 -0
  233. package/dist/primitives/charts/bar/chart-bar-default.d.ts +3 -0
  234. package/dist/primitives/charts/bar/chart-bar-default.d.ts.map +1 -0
  235. package/dist/primitives/charts/bar/chart-bar-default.js +24 -0
  236. package/dist/primitives/charts/bar/chart-bar-horizontal.d.ts +3 -0
  237. package/dist/primitives/charts/bar/chart-bar-horizontal.d.ts.map +1 -0
  238. package/dist/primitives/charts/bar/chart-bar-horizontal.js +26 -0
  239. package/dist/primitives/charts/bar/chart-bar-interactive.d.ts +3 -0
  240. package/dist/primitives/charts/bar/chart-bar-interactive.d.ts.map +1 -0
  241. package/dist/primitives/charts/bar/chart-bar-interactive.js +139 -0
  242. package/dist/primitives/charts/bar/chart-bar-label-custom.d.ts +3 -0
  243. package/dist/primitives/charts/bar/chart-bar-label-custom.d.ts.map +1 -0
  244. package/dist/primitives/charts/bar/chart-bar-label-custom.js +33 -0
  245. package/dist/primitives/charts/bar/chart-bar-label.d.ts +3 -0
  246. package/dist/primitives/charts/bar/chart-bar-label.d.ts.map +1 -0
  247. package/dist/primitives/charts/bar/chart-bar-label.js +26 -0
  248. package/dist/primitives/charts/bar/chart-bar-mixed.d.ts +3 -0
  249. package/dist/primitives/charts/bar/chart-bar-mixed.d.ts.map +1 -0
  250. package/dist/primitives/charts/bar/chart-bar-mixed.js +44 -0
  251. package/dist/primitives/charts/bar/chart-bar-multiple.d.ts +3 -0
  252. package/dist/primitives/charts/bar/chart-bar-multiple.d.ts.map +1 -0
  253. package/dist/primitives/charts/bar/chart-bar-multiple.js +28 -0
  254. package/dist/primitives/charts/bar/chart-bar-negative.d.ts +3 -0
  255. package/dist/primitives/charts/bar/chart-bar-negative.d.ts.map +1 -0
  256. package/dist/primitives/charts/bar/chart-bar-negative.js +25 -0
  257. package/dist/primitives/charts/bar/chart-bar-stacked.d.ts +3 -0
  258. package/dist/primitives/charts/bar/chart-bar-stacked.d.ts.map +1 -0
  259. package/dist/primitives/charts/bar/chart-bar-stacked.js +28 -0
  260. package/dist/primitives/charts/bar/index.d.ts +11 -0
  261. package/dist/primitives/charts/bar/index.d.ts.map +1 -0
  262. package/dist/primitives/charts/bar/index.js +11 -0
  263. package/dist/primitives/charts/index.d.ts +8 -0
  264. package/dist/primitives/charts/index.d.ts.map +1 -0
  265. package/dist/primitives/charts/index.js +11 -0
  266. package/dist/primitives/charts/line/chart-line-default.d.ts +3 -0
  267. package/dist/primitives/charts/line/chart-line-default.d.ts.map +1 -0
  268. package/dist/primitives/charts/line/chart-line-default.js +27 -0
  269. package/dist/primitives/charts/line/chart-line-dots-colors.d.ts +3 -0
  270. package/dist/primitives/charts/line/chart-line-dots-colors.d.ts.map +1 -0
  271. package/dist/primitives/charts/line/chart-line-dots-colors.js +49 -0
  272. package/dist/primitives/charts/line/chart-line-dots-custom.d.ts +3 -0
  273. package/dist/primitives/charts/line/chart-line-dots-custom.d.ts.map +1 -0
  274. package/dist/primitives/charts/line/chart-line-dots-custom.js +34 -0
  275. package/dist/primitives/charts/line/chart-line-dots.d.ts +3 -0
  276. package/dist/primitives/charts/line/chart-line-dots.d.ts.map +1 -0
  277. package/dist/primitives/charts/line/chart-line-dots.js +35 -0
  278. package/dist/primitives/charts/line/chart-line-interactive.d.ts +3 -0
  279. package/dist/primitives/charts/line/chart-line-interactive.d.ts.map +1 -0
  280. package/dist/primitives/charts/line/chart-line-interactive.js +139 -0
  281. package/dist/primitives/charts/line/chart-line-label-custom.d.ts +3 -0
  282. package/dist/primitives/charts/line/chart-line-label-custom.d.ts.map +1 -0
  283. package/dist/primitives/charts/line/chart-line-label-custom.js +51 -0
  284. package/dist/primitives/charts/line/chart-line-label.d.ts +3 -0
  285. package/dist/primitives/charts/line/chart-line-label.d.ts.map +1 -0
  286. package/dist/primitives/charts/line/chart-line-label.js +36 -0
  287. package/dist/primitives/charts/line/chart-line-linear.d.ts +3 -0
  288. package/dist/primitives/charts/line/chart-line-linear.d.ts.map +1 -0
  289. package/dist/primitives/charts/line/chart-line-linear.js +27 -0
  290. package/dist/primitives/charts/line/chart-line-multiple.d.ts +3 -0
  291. package/dist/primitives/charts/line/chart-line-multiple.d.ts.map +1 -0
  292. package/dist/primitives/charts/line/chart-line-multiple.js +31 -0
  293. package/dist/primitives/charts/line/chart-line-step.d.ts +3 -0
  294. package/dist/primitives/charts/line/chart-line-step.d.ts.map +1 -0
  295. package/dist/primitives/charts/line/chart-line-step.js +27 -0
  296. package/dist/primitives/charts/line/index.d.ts +11 -0
  297. package/dist/primitives/charts/line/index.d.ts.map +1 -0
  298. package/dist/primitives/charts/line/index.js +11 -0
  299. package/dist/primitives/charts/pie/chart-pie-donut-active.d.ts +3 -0
  300. package/dist/primitives/charts/pie/chart-pie-donut-active.d.ts.map +1 -0
  301. package/dist/primitives/charts/pie/chart-pie-donut-active.js +42 -0
  302. package/dist/primitives/charts/pie/chart-pie-donut-text.d.ts +3 -0
  303. package/dist/primitives/charts/pie/chart-pie-donut-text.d.ts.map +1 -0
  304. package/dist/primitives/charts/pie/chart-pie-donut-text.js +50 -0
  305. package/dist/primitives/charts/pie/chart-pie-donut.d.ts +3 -0
  306. package/dist/primitives/charts/pie/chart-pie-donut.d.ts.map +1 -0
  307. package/dist/primitives/charts/pie/chart-pie-donut.js +42 -0
  308. package/dist/primitives/charts/pie/chart-pie-interactive.d.ts +3 -0
  309. package/dist/primitives/charts/pie/chart-pie-interactive.d.ts.map +1 -0
  310. package/dist/primitives/charts/pie/chart-pie-interactive.js +65 -0
  311. package/dist/primitives/charts/pie/chart-pie-label-custom.d.ts +3 -0
  312. package/dist/primitives/charts/pie/chart-pie-label-custom.d.ts.map +1 -0
  313. package/dist/primitives/charts/pie/chart-pie-label-custom.js +44 -0
  314. package/dist/primitives/charts/pie/chart-pie-label-list.d.ts +3 -0
  315. package/dist/primitives/charts/pie/chart-pie-label-list.d.ts.map +1 -0
  316. package/dist/primitives/charts/pie/chart-pie-label-list.js +42 -0
  317. package/dist/primitives/charts/pie/chart-pie-label.d.ts +3 -0
  318. package/dist/primitives/charts/pie/chart-pie-label.d.ts.map +1 -0
  319. package/dist/primitives/charts/pie/chart-pie-label.js +42 -0
  320. package/dist/primitives/charts/pie/chart-pie-legend.d.ts +3 -0
  321. package/dist/primitives/charts/pie/chart-pie-legend.d.ts.map +1 -0
  322. package/dist/primitives/charts/pie/chart-pie-legend.js +41 -0
  323. package/dist/primitives/charts/pie/chart-pie-separator-none.d.ts +3 -0
  324. package/dist/primitives/charts/pie/chart-pie-separator-none.d.ts.map +1 -0
  325. package/dist/primitives/charts/pie/chart-pie-separator-none.js +42 -0
  326. package/dist/primitives/charts/pie/index.d.ts +10 -0
  327. package/dist/primitives/charts/pie/index.d.ts.map +1 -0
  328. package/dist/primitives/charts/pie/index.js +10 -0
  329. package/dist/primitives/charts/radar/chart-radar-default.d.ts +3 -0
  330. package/dist/primitives/charts/radar/chart-radar-default.d.ts.map +1 -0
  331. package/dist/primitives/charts/radar/chart-radar-default.js +24 -0
  332. package/dist/primitives/charts/radar/chart-radar-dots.d.ts +3 -0
  333. package/dist/primitives/charts/radar/chart-radar-dots.d.ts.map +1 -0
  334. package/dist/primitives/charts/radar/chart-radar-dots.js +27 -0
  335. package/dist/primitives/charts/radar/chart-radar-grid-circle-fill.d.ts +3 -0
  336. package/dist/primitives/charts/radar/chart-radar-grid-circle-fill.d.ts.map +1 -0
  337. package/dist/primitives/charts/radar/chart-radar-grid-circle-fill.js +24 -0
  338. package/dist/primitives/charts/radar/chart-radar-grid-circle-no-lines.d.ts +3 -0
  339. package/dist/primitives/charts/radar/chart-radar-grid-circle-no-lines.d.ts.map +1 -0
  340. package/dist/primitives/charts/radar/chart-radar-grid-circle-no-lines.js +27 -0
  341. package/dist/primitives/charts/radar/chart-radar-grid-circle.d.ts +3 -0
  342. package/dist/primitives/charts/radar/chart-radar-grid-circle.d.ts.map +1 -0
  343. package/dist/primitives/charts/radar/chart-radar-grid-circle.js +27 -0
  344. package/dist/primitives/charts/radar/chart-radar-grid-custom.d.ts +3 -0
  345. package/dist/primitives/charts/radar/chart-radar-grid-custom.d.ts.map +1 -0
  346. package/dist/primitives/charts/radar/chart-radar-grid-custom.js +24 -0
  347. package/dist/primitives/charts/radar/chart-radar-grid-fill.d.ts +3 -0
  348. package/dist/primitives/charts/radar/chart-radar-grid-fill.d.ts.map +1 -0
  349. package/dist/primitives/charts/radar/chart-radar-grid-fill.js +24 -0
  350. package/dist/primitives/charts/radar/chart-radar-grid-none.d.ts +3 -0
  351. package/dist/primitives/charts/radar/chart-radar-grid-none.d.ts.map +1 -0
  352. package/dist/primitives/charts/radar/chart-radar-grid-none.js +27 -0
  353. package/dist/primitives/charts/radar/chart-radar-icons.d.ts +3 -0
  354. package/dist/primitives/charts/radar/chart-radar-icons.d.ts.map +1 -0
  355. package/dist/primitives/charts/radar/chart-radar-icons.js +33 -0
  356. package/dist/primitives/charts/radar/index.d.ts +10 -0
  357. package/dist/primitives/charts/radar/index.d.ts.map +1 -0
  358. package/dist/primitives/charts/radar/index.js +10 -0
  359. package/dist/primitives/charts/radial/chart-radial-grid.d.ts +3 -0
  360. package/dist/primitives/charts/radial/chart-radial-grid.d.ts.map +1 -0
  361. package/dist/primitives/charts/radial/chart-radial-grid.js +42 -0
  362. package/dist/primitives/charts/radial/chart-radial-label.d.ts +3 -0
  363. package/dist/primitives/charts/radial/chart-radial-label.d.ts.map +1 -0
  364. package/dist/primitives/charts/radial/chart-radial-label.js +42 -0
  365. package/dist/primitives/charts/radial/chart-radial-shape.d.ts +3 -0
  366. package/dist/primitives/charts/radial/chart-radial-shape.d.ts.map +1 -0
  367. package/dist/primitives/charts/radial/chart-radial-shape.js +26 -0
  368. package/dist/primitives/charts/radial/chart-radial-simple.d.ts +3 -0
  369. package/dist/primitives/charts/radial/chart-radial-simple.d.ts.map +1 -0
  370. package/dist/primitives/charts/radial/chart-radial-simple.js +42 -0
  371. package/dist/primitives/charts/radial/chart-radial-stacked.d.ts +3 -0
  372. package/dist/primitives/charts/radial/chart-radial-stacked.d.ts.map +1 -0
  373. package/dist/primitives/charts/radial/chart-radial-stacked.js +26 -0
  374. package/dist/primitives/charts/radial/chart-radial-text.d.ts +3 -0
  375. package/dist/primitives/charts/radial/chart-radial-text.d.ts.map +1 -0
  376. package/dist/primitives/charts/radial/chart-radial-text.js +26 -0
  377. package/dist/primitives/charts/radial/index.d.ts +7 -0
  378. package/dist/primitives/charts/radial/index.d.ts.map +1 -0
  379. package/dist/primitives/charts/radial/index.js +7 -0
  380. package/dist/primitives/charts/tooltip/chart-tooltip-advanced.d.ts +3 -0
  381. package/dist/primitives/charts/tooltip/chart-tooltip-advanced.d.ts.map +1 -0
  382. package/dist/primitives/charts/tooltip/chart-tooltip-advanced.js +34 -0
  383. package/dist/primitives/charts/tooltip/chart-tooltip-default.d.ts +5 -0
  384. package/dist/primitives/charts/tooltip/chart-tooltip-default.d.ts.map +1 -0
  385. package/dist/primitives/charts/tooltip/chart-tooltip-default.js +33 -0
  386. package/dist/primitives/charts/tooltip/chart-tooltip-formatter.d.ts +3 -0
  387. package/dist/primitives/charts/tooltip/chart-tooltip-formatter.d.ts.map +1 -0
  388. package/dist/primitives/charts/tooltip/chart-tooltip-formatter.js +32 -0
  389. package/dist/primitives/charts/tooltip/chart-tooltip-icons.d.ts +3 -0
  390. package/dist/primitives/charts/tooltip/chart-tooltip-icons.d.ts.map +1 -0
  391. package/dist/primitives/charts/tooltip/chart-tooltip-icons.js +34 -0
  392. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-line.d.ts +5 -0
  393. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-line.d.ts.map +1 -0
  394. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-line.js +33 -0
  395. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-none.d.ts +3 -0
  396. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-none.d.ts.map +1 -0
  397. package/dist/primitives/charts/tooltip/chart-tooltip-indicator-none.js +31 -0
  398. package/dist/primitives/charts/tooltip/chart-tooltip-label-custom.d.ts +3 -0
  399. package/dist/primitives/charts/tooltip/chart-tooltip-label-custom.d.ts.map +1 -0
  400. package/dist/primitives/charts/tooltip/chart-tooltip-label-custom.js +34 -0
  401. package/dist/primitives/charts/tooltip/chart-tooltip-label-formatter.d.ts +3 -0
  402. package/dist/primitives/charts/tooltip/chart-tooltip-label-formatter.d.ts.map +1 -0
  403. package/dist/primitives/charts/tooltip/chart-tooltip-label-formatter.js +37 -0
  404. package/dist/primitives/charts/tooltip/chart-tooltip-label-none.d.ts +3 -0
  405. package/dist/primitives/charts/tooltip/chart-tooltip-label-none.d.ts.map +1 -0
  406. package/dist/primitives/charts/tooltip/chart-tooltip-label-none.js +31 -0
  407. package/dist/primitives/charts/tooltip/index.d.ts +10 -0
  408. package/dist/primitives/charts/tooltip/index.d.ts.map +1 -0
  409. package/dist/primitives/charts/tooltip/index.js +10 -0
  410. package/dist/primitives/chat/chat-input-area.d.ts +24 -0
  411. package/dist/primitives/chat/chat-input-area.d.ts.map +1 -0
  412. package/dist/primitives/chat/chat-input-area.js +23 -0
  413. package/dist/primitives/chat/chat-input.d.ts +13 -0
  414. package/dist/primitives/chat/chat-input.d.ts.map +1 -0
  415. package/dist/primitives/chat/chat-input.js +33 -0
  416. package/dist/primitives/chat/json-form.d.ts +4 -0
  417. package/dist/primitives/chat/json-form.d.ts.map +1 -0
  418. package/dist/primitives/chat/json-form.js +6 -0
  419. package/dist/primitives/checkbox.d.ts +12 -0
  420. package/dist/primitives/checkbox.d.ts.map +1 -0
  421. package/dist/primitives/checkbox.js +8 -0
  422. package/dist/primitives/collapsible.d.ts +6 -0
  423. package/dist/primitives/collapsible.d.ts.map +1 -0
  424. package/dist/primitives/collapsible.js +5 -0
  425. package/dist/primitives/combobox.d.ts +42 -0
  426. package/dist/primitives/combobox.d.ts.map +1 -0
  427. package/dist/primitives/combobox.js +49 -0
  428. package/dist/primitives/command.d.ts +39 -0
  429. package/dist/primitives/command.d.ts.map +1 -0
  430. package/dist/primitives/command.js +28 -0
  431. package/dist/primitives/context-menu.d.ts +54 -0
  432. package/dist/primitives/context-menu.d.ts.map +1 -0
  433. package/dist/primitives/context-menu.js +32 -0
  434. package/dist/primitives/copy-to-clipboard-icon.d.ts +15 -0
  435. package/dist/primitives/copy-to-clipboard-icon.d.ts.map +1 -0
  436. package/dist/primitives/copy-to-clipboard-icon.js +21 -0
  437. package/dist/primitives/dialog-video-controller.d.ts +4 -0
  438. package/dist/primitives/dialog-video-controller.d.ts.map +1 -0
  439. package/dist/primitives/dialog-video-controller.js +23 -0
  440. package/dist/primitives/dialog.d.ts +18 -0
  441. package/dist/primitives/dialog.d.ts.map +1 -0
  442. package/dist/primitives/dialog.js +37 -0
  443. package/dist/primitives/dot-pattern.d.ts +14 -0
  444. package/dist/primitives/dot-pattern.d.ts.map +1 -0
  445. package/dist/primitives/dot-pattern.js +8 -0
  446. package/dist/primitives/dots-loader.d.ts +5 -0
  447. package/dist/primitives/dots-loader.d.ts.map +1 -0
  448. package/dist/primitives/dots-loader.js +5 -0
  449. package/dist/primitives/drawer.d.ts +38 -0
  450. package/dist/primitives/drawer.d.ts.map +1 -0
  451. package/dist/primitives/drawer.js +22 -0
  452. package/dist/primitives/dropdown-menu.d.ts +52 -0
  453. package/dist/primitives/dropdown-menu.d.ts.map +1 -0
  454. package/dist/primitives/dropdown-menu.js +34 -0
  455. package/dist/primitives/empty.d.ts +12 -0
  456. package/dist/primitives/empty.d.ts.map +1 -0
  457. package/dist/primitives/empty.js +33 -0
  458. package/dist/primitives/error-message.d.ts +7 -0
  459. package/dist/primitives/error-message.d.ts.map +1 -0
  460. package/dist/primitives/error-message.js +5 -0
  461. package/dist/primitives/field.d.ts +10 -0
  462. package/dist/primitives/field.d.ts.map +1 -0
  463. package/dist/primitives/field.js +16 -0
  464. package/dist/primitives/file-uploader.d.ts +20 -0
  465. package/dist/primitives/file-uploader.d.ts.map +1 -0
  466. package/dist/primitives/file-uploader.js +68 -0
  467. package/dist/primitives/form.d.ts +40 -0
  468. package/dist/primitives/form.d.ts.map +1 -0
  469. package/dist/primitives/form.js +67 -0
  470. package/dist/primitives/hover-card.d.ts +10 -0
  471. package/dist/primitives/hover-card.d.ts.map +1 -0
  472. package/dist/primitives/hover-card.js +8 -0
  473. package/dist/primitives/icons/github.d.ts +5 -0
  474. package/dist/primitives/icons/github.d.ts.map +1 -0
  475. package/dist/primitives/icons/github.js +3 -0
  476. package/dist/primitives/icons/index.d.ts +5 -0
  477. package/dist/primitives/icons/index.d.ts.map +1 -0
  478. package/dist/primitives/icons/index.js +4 -0
  479. package/dist/primitives/icons/youtube-logo.d.ts +5 -0
  480. package/dist/primitives/icons/youtube-logo.d.ts.map +1 -0
  481. package/dist/primitives/icons/youtube-logo.js +33 -0
  482. package/dist/primitives/index-blocks.d.ts +5 -0
  483. package/dist/primitives/index-blocks.d.ts.map +1 -0
  484. package/dist/primitives/index-blocks.js +6 -0
  485. package/dist/primitives/index-common.d.ts +75 -0
  486. package/dist/primitives/index-common.d.ts.map +1 -0
  487. package/dist/primitives/index-common.js +82 -0
  488. package/dist/primitives/index-core.d.ts +29 -0
  489. package/dist/primitives/index-core.d.ts.map +1 -0
  490. package/dist/primitives/index-core.js +30 -0
  491. package/dist/primitives/index-next.d.ts +3 -0
  492. package/dist/primitives/index-next.d.ts.map +1 -0
  493. package/dist/primitives/index-next.js +4 -0
  494. package/dist/primitives/index-standard.d.ts +79 -0
  495. package/dist/primitives/index-standard.d.ts.map +1 -0
  496. package/dist/primitives/index-standard.js +98 -0
  497. package/dist/primitives/index.js +1519 -348
  498. package/dist/primitives/index.mjs +1469 -335
  499. package/dist/primitives/input-group.d.ts +17 -0
  500. package/dist/primitives/input-group.d.ts.map +1 -0
  501. package/dist/primitives/input-group.js +61 -0
  502. package/dist/primitives/input-otp.d.ts +35 -0
  503. package/dist/primitives/input-otp.d.ts.map +1 -0
  504. package/dist/primitives/input-otp.js +19 -0
  505. package/dist/primitives/input.d.ts +15 -0
  506. package/dist/primitives/input.d.ts.map +1 -0
  507. package/dist/primitives/input.js +43 -0
  508. package/dist/primitives/item.d.ts +24 -0
  509. package/dist/primitives/item.d.ts.map +1 -0
  510. package/dist/primitives/item.js +67 -0
  511. package/dist/primitives/kbd.d.ts +5 -0
  512. package/dist/primitives/kbd.d.ts.map +1 -0
  513. package/dist/primitives/kbd.js +9 -0
  514. package/dist/primitives/label.d.ts +11 -0
  515. package/dist/primitives/label.d.ts.map +1 -0
  516. package/dist/primitives/label.js +9 -0
  517. package/dist/primitives/list-adaptor.d.ts +10 -0
  518. package/dist/primitives/list-adaptor.d.ts.map +1 -0
  519. package/dist/primitives/list-adaptor.js +1 -0
  520. package/dist/primitives/list-box.d.ts +12 -0
  521. package/dist/primitives/list-box.d.ts.map +1 -0
  522. package/dist/primitives/list-box.js +10 -0
  523. package/dist/primitives/loading-spinner.d.ts +6 -0
  524. package/dist/primitives/loading-spinner.d.ts.map +1 -0
  525. package/dist/primitives/loading-spinner.js +7 -0
  526. package/dist/primitives/markdown-preview.d.ts +129 -0
  527. package/dist/primitives/markdown-preview.d.ts.map +1 -0
  528. package/dist/primitives/markdown-preview.js +165 -0
  529. package/dist/primitives/menubar.d.ts +29 -0
  530. package/dist/primitives/menubar.d.ts.map +1 -0
  531. package/dist/primitives/menubar.js +46 -0
  532. package/dist/primitives/mermaid.d.ts +8 -0
  533. package/dist/primitives/mermaid.d.ts.map +1 -0
  534. package/dist/primitives/mermaid.js +112 -0
  535. package/dist/primitives/native-select.d.ts +9 -0
  536. package/dist/primitives/native-select.d.ts.map +1 -0
  537. package/dist/primitives/native-select.js +14 -0
  538. package/dist/primitives/navigation-menu.d.ts +13 -0
  539. package/dist/primitives/navigation-menu.d.ts.map +1 -0
  540. package/dist/primitives/navigation-menu.js +29 -0
  541. package/dist/primitives/next/image.d.ts +12 -0
  542. package/dist/primitives/next/image.d.ts.map +1 -0
  543. package/dist/primitives/next/image.js +40 -0
  544. package/dist/primitives/next/index.d.ts +8 -0
  545. package/dist/primitives/next/index.d.ts.map +1 -0
  546. package/dist/primitives/next/index.js +7 -0
  547. package/dist/primitives/next/inline-icon.d.ts +14 -0
  548. package/dist/primitives/next/inline-icon.d.ts.map +1 -0
  549. package/dist/primitives/next/inline-icon.js +13 -0
  550. package/dist/primitives/next/link-element.d.ts +24 -0
  551. package/dist/primitives/next/link-element.d.ts.map +1 -0
  552. package/dist/primitives/next/link-element.js +47 -0
  553. package/dist/primitives/next/mdx-link.d.ts +4 -0
  554. package/dist/primitives/next/mdx-link.d.ts.map +1 -0
  555. package/dist/primitives/next/mdx-link.js +10 -0
  556. package/dist/primitives/next/media-stack.d.ts +9 -0
  557. package/dist/primitives/next/media-stack.d.ts.map +1 -0
  558. package/dist/primitives/next/media-stack.js +20 -0
  559. package/dist/primitives/next/nav-items.d.ts +11 -0
  560. package/dist/primitives/next/nav-items.d.ts.map +1 -0
  561. package/dist/primitives/next/nav-items.js +22 -0
  562. package/dist/primitives/next/youtube-embed.d.ts +12 -0
  563. package/dist/primitives/next/youtube-embed.d.ts.map +1 -0
  564. package/dist/primitives/next/youtube-embed.js +16 -0
  565. package/dist/primitives/popover.d.ts +12 -0
  566. package/dist/primitives/popover.d.ts.map +1 -0
  567. package/dist/primitives/popover.js +10 -0
  568. package/dist/primitives/pretty-json-print.d.ts +5 -0
  569. package/dist/primitives/pretty-json-print.d.ts.map +1 -0
  570. package/dist/primitives/pretty-json-print.js +22 -0
  571. package/dist/primitives/progress.d.ts +9 -0
  572. package/dist/primitives/progress.d.ts.map +1 -0
  573. package/dist/primitives/progress.js +7 -0
  574. package/dist/primitives/prompt-textarea.d.ts +19 -0
  575. package/dist/primitives/prompt-textarea.d.ts.map +1 -0
  576. package/dist/primitives/prompt-textarea.js +30 -0
  577. package/dist/primitives/radio-group.d.ts +12 -0
  578. package/dist/primitives/radio-group.d.ts.map +1 -0
  579. package/dist/primitives/radio-group.js +14 -0
  580. package/dist/primitives/resizable.d.ts +24 -0
  581. package/dist/primitives/resizable.d.ts.map +1 -0
  582. package/dist/primitives/resizable.js +8 -0
  583. package/dist/primitives/scroll-area.d.ts +14 -0
  584. package/dist/primitives/scroll-area.d.ts.map +1 -0
  585. package/dist/primitives/scroll-area.js +10 -0
  586. package/dist/primitives/search-input.d.ts +14 -0
  587. package/dist/primitives/search-input.d.ts.map +1 -0
  588. package/dist/primitives/search-input.js +16 -0
  589. package/dist/primitives/select.d.ts +27 -0
  590. package/dist/primitives/select.d.ts.map +1 -0
  591. package/dist/primitives/select.js +21 -0
  592. package/dist/primitives/separator.d.ts +9 -0
  593. package/dist/primitives/separator.d.ts.map +1 -0
  594. package/dist/primitives/separator.js +7 -0
  595. package/dist/primitives/sheet.d.ts +41 -0
  596. package/dist/primitives/sheet.d.ts.map +1 -0
  597. package/dist/primitives/sheet.js +35 -0
  598. package/dist/primitives/skeleton.d.ts +5 -0
  599. package/dist/primitives/skeleton.d.ts.map +1 -0
  600. package/dist/primitives/skeleton.js +7 -0
  601. package/dist/primitives/slider.d.ts +6 -0
  602. package/dist/primitives/slider.d.ts.map +1 -0
  603. package/dist/primitives/slider.js +15 -0
  604. package/dist/primitives/sonner.d.ts +6 -0
  605. package/dist/primitives/sonner.d.ts.map +1 -0
  606. package/dist/primitives/sonner.js +17 -0
  607. package/dist/primitives/spinner.d.ts +3 -0
  608. package/dist/primitives/spinner.d.ts.map +1 -0
  609. package/dist/primitives/spinner.js +7 -0
  610. package/dist/primitives/step-indicator.d.ts +10 -0
  611. package/dist/primitives/step-indicator.d.ts.map +1 -0
  612. package/dist/primitives/step-indicator.js +13 -0
  613. package/dist/primitives/stepper.d.ts +49 -0
  614. package/dist/primitives/stepper.d.ts.map +1 -0
  615. package/dist/primitives/stepper.js +75 -0
  616. package/dist/primitives/switch.d.ts +9 -0
  617. package/dist/primitives/switch.d.ts.map +1 -0
  618. package/dist/primitives/switch.js +7 -0
  619. package/dist/primitives/table.d.ts +35 -0
  620. package/dist/primitives/table.d.ts.map +1 -0
  621. package/dist/primitives/table.js +19 -0
  622. package/dist/primitives/tabs.d.ts +12 -0
  623. package/dist/primitives/tabs.d.ts.map +1 -0
  624. package/dist/primitives/tabs.js +35 -0
  625. package/dist/primitives/text-area.d.ts +6 -0
  626. package/dist/primitives/text-area.d.ts.map +1 -0
  627. package/dist/primitives/text-area.js +10 -0
  628. package/dist/primitives/text-link.d.ts +6 -0
  629. package/dist/primitives/text-link.d.ts.map +1 -0
  630. package/dist/primitives/text-link.js +5 -0
  631. package/dist/primitives/textarea.d.ts +13 -0
  632. package/dist/primitives/textarea.d.ts.map +1 -0
  633. package/dist/primitives/textarea.js +28 -0
  634. package/dist/primitives/textfield.d.ts +33 -0
  635. package/dist/primitives/textfield.d.ts.map +1 -0
  636. package/dist/primitives/textfield.js +9 -0
  637. package/dist/primitives/toast.d.ts +6 -0
  638. package/dist/primitives/toast.d.ts.map +1 -0
  639. package/dist/primitives/toast.js +13 -0
  640. package/dist/primitives/toggle-group.d.ts +14 -0
  641. package/dist/primitives/toggle-group.d.ts.map +1 -0
  642. package/dist/primitives/toggle-group.js +20 -0
  643. package/dist/primitives/toggle.d.ts +13 -0
  644. package/dist/primitives/toggle.d.ts.map +1 -0
  645. package/dist/primitives/toggle.js +24 -0
  646. package/dist/primitives/tooltip.d.ts +15 -0
  647. package/dist/primitives/tooltip.d.ts.map +1 -0
  648. package/dist/primitives/tooltip.js +11 -0
  649. package/dist/primitives/video-player.d.ts +7 -0
  650. package/dist/primitives/video-player.d.ts.map +1 -0
  651. package/dist/primitives/video-player.js +7 -0
  652. package/dist/primitives/youtube-pip-player.d.ts +33 -0
  653. package/dist/primitives/youtube-pip-player.d.ts.map +1 -0
  654. package/dist/primitives/youtube-pip-player.js +253 -0
  655. package/dist/primitives-export.js +1519 -348
  656. package/dist/primitives-export.mjs +1469 -335
  657. package/dist/src/3d/button.d.ts +27 -0
  658. package/dist/src/3d/button.d.ts.map +1 -0
  659. package/dist/src/3d/button.js +181 -0
  660. package/dist/src/3d/card.d.ts +29 -0
  661. package/dist/src/3d/card.d.ts.map +1 -0
  662. package/dist/src/3d/card.js +117 -0
  663. package/dist/src/3d/carousel.d.ts +26 -0
  664. package/dist/src/3d/carousel.d.ts.map +1 -0
  665. package/dist/src/3d/carousel.js +171 -0
  666. package/dist/src/3d/grid.d.ts +49 -0
  667. package/dist/src/3d/grid.d.ts.map +1 -0
  668. package/dist/src/3d/grid.js +126 -0
  669. package/dist/src/3d/index.d.ts +7 -0
  670. package/dist/src/3d/index.d.ts.map +1 -0
  671. package/dist/src/3d/index.js +7 -0
  672. package/dist/src/3d/marquee.d.ts +37 -0
  673. package/dist/src/3d/marquee.d.ts.map +1 -0
  674. package/dist/src/3d/marquee.js +208 -0
  675. package/dist/src/3d/pin.d.ts +8 -0
  676. package/dist/src/3d/pin.d.ts.map +1 -0
  677. package/dist/src/3d/pin.js +9 -0
  678. package/dist/src/avatar.d.ts +2 -0
  679. package/dist/src/avatar.d.ts.map +1 -0
  680. package/dist/src/avatar.js +1 -0
  681. package/dist/src/badge.d.ts +2 -0
  682. package/dist/src/badge.d.ts.map +1 -0
  683. package/dist/src/badge.js +1 -0
  684. package/dist/src/billing/components/billing-workspace.d.ts +28 -0
  685. package/dist/src/billing/components/billing-workspace.d.ts.map +1 -0
  686. package/dist/src/billing/components/billing-workspace.js +22 -0
  687. package/dist/src/billing/components/business-profile-panel.d.ts +7 -0
  688. package/dist/src/billing/components/business-profile-panel.d.ts.map +1 -0
  689. package/dist/src/billing/components/business-profile-panel.js +44 -0
  690. package/dist/src/billing/components/index.d.ts +13 -0
  691. package/dist/src/billing/components/index.d.ts.map +1 -0
  692. package/dist/src/billing/components/index.js +6 -0
  693. package/dist/src/billing/components/invoice-manager.d.ts +10 -0
  694. package/dist/src/billing/components/invoice-manager.d.ts.map +1 -0
  695. package/dist/src/billing/components/invoice-manager.js +131 -0
  696. package/dist/src/billing/components/payment-manager.d.ts +13 -0
  697. package/dist/src/billing/components/payment-manager.d.ts.map +1 -0
  698. package/dist/src/billing/components/payment-manager.js +146 -0
  699. package/dist/src/billing/components/subscription-portal.d.ts +16 -0
  700. package/dist/src/billing/components/subscription-portal.d.ts.map +1 -0
  701. package/dist/src/billing/components/subscription-portal.js +88 -0
  702. package/dist/src/billing/components/tax-compliance-panel.d.ts +8 -0
  703. package/dist/src/billing/components/tax-compliance-panel.d.ts.map +1 -0
  704. package/dist/src/billing/components/tax-compliance-panel.js +41 -0
  705. package/dist/src/billing/index.d.ts +7 -0
  706. package/dist/src/billing/index.d.ts.map +1 -0
  707. package/dist/src/billing/index.js +8 -0
  708. package/dist/src/billing/types/index.d.ts +177 -0
  709. package/dist/src/billing/types/index.d.ts.map +1 -0
  710. package/dist/src/billing/types/index.js +1 -0
  711. package/dist/src/button.d.ts +2 -0
  712. package/dist/src/button.d.ts.map +1 -0
  713. package/dist/src/button.js +1 -0
  714. package/dist/src/calendar-ext/index.d.ts +4 -0
  715. package/dist/src/calendar-ext/index.d.ts.map +1 -0
  716. package/dist/src/calendar-ext/index.js +7 -0
  717. package/dist/src/charts/index.d.ts +65 -0
  718. package/dist/src/charts/index.d.ts.map +1 -0
  719. package/dist/src/charts/index.js +76 -0
  720. package/dist/src/desktop/hooks.d.ts +75 -0
  721. package/dist/src/desktop/hooks.d.ts.map +1 -0
  722. package/dist/src/desktop/hooks.js +194 -0
  723. package/dist/src/desktop/index.d.ts +7 -0
  724. package/dist/src/desktop/index.d.ts.map +1 -0
  725. package/dist/src/desktop/index.js +8 -0
  726. package/dist/src/desktop/spotlight.d.ts +24 -0
  727. package/dist/src/desktop/spotlight.d.ts.map +1 -0
  728. package/dist/src/desktop/spotlight.js +126 -0
  729. package/dist/src/desktop/window.d.ts +34 -0
  730. package/dist/src/desktop/window.d.ts.map +1 -0
  731. package/dist/src/desktop/window.js +114 -0
  732. package/dist/src/device/index.d.ts +2 -0
  733. package/dist/src/device/index.d.ts.map +1 -0
  734. package/dist/src/device/index.js +1 -0
  735. package/dist/src/dock/basic.d.ts +20 -0
  736. package/dist/src/dock/basic.d.ts.map +1 -0
  737. package/dist/src/dock/basic.js +50 -0
  738. package/dist/src/dock/index.d.ts +6 -0
  739. package/dist/src/dock/index.d.ts.map +1 -0
  740. package/dist/src/dock/index.js +6 -0
  741. package/dist/src/dock/limelight-nav.d.ts +10 -0
  742. package/dist/src/dock/limelight-nav.d.ts.map +1 -0
  743. package/dist/src/dock/limelight-nav.js +25 -0
  744. package/dist/src/dock/macos.d.ts +17 -0
  745. package/dist/src/dock/macos.d.ts.map +1 -0
  746. package/dist/src/dock/macos.js +38 -0
  747. package/dist/src/dock/menu.d.ts +14 -0
  748. package/dist/src/dock/menu.d.ts.map +1 -0
  749. package/dist/src/dock/menu.js +10 -0
  750. package/dist/src/dock/message.d.ts +15 -0
  751. package/dist/src/dock/message.d.ts.map +1 -0
  752. package/dist/src/dock/message.js +21 -0
  753. package/dist/src/form/form.d.ts +24 -0
  754. package/dist/src/form/form.d.ts.map +1 -0
  755. package/dist/src/form/form.js +66 -0
  756. package/dist/src/form/index.d.ts +2 -0
  757. package/dist/src/form/index.d.ts.map +1 -0
  758. package/dist/src/form/index.js +2 -0
  759. package/dist/src/hooks/index.d.ts +8 -0
  760. package/dist/src/hooks/index.d.ts.map +1 -0
  761. package/dist/src/hooks/index.js +7 -0
  762. package/dist/src/hooks/use-click-away.d.ts +3 -0
  763. package/dist/src/hooks/use-click-away.d.ts.map +1 -0
  764. package/dist/src/hooks/use-click-away.js +23 -0
  765. package/dist/src/hooks/use-combined-refs.d.ts +4 -0
  766. package/dist/src/hooks/use-combined-refs.d.ts.map +1 -0
  767. package/dist/src/hooks/use-combined-refs.js +18 -0
  768. package/dist/src/hooks/use-copy-clipboard.d.ts +10 -0
  769. package/dist/src/hooks/use-copy-clipboard.d.ts.map +1 -0
  770. package/dist/src/hooks/use-copy-clipboard.js +21 -0
  771. package/dist/src/hooks/use-debounce.d.ts +2 -0
  772. package/dist/src/hooks/use-debounce.d.ts.map +1 -0
  773. package/dist/src/hooks/use-debounce.js +13 -0
  774. package/dist/src/hooks/use-fill-ids.d.ts +9 -0
  775. package/dist/src/hooks/use-fill-ids.d.ts.map +1 -0
  776. package/dist/src/hooks/use-fill-ids.js +20 -0
  777. package/dist/src/hooks/use-map.d.ts +2 -0
  778. package/dist/src/hooks/use-map.d.ts.map +1 -0
  779. package/dist/src/hooks/use-map.js +20 -0
  780. package/dist/src/hooks/use-measure.d.ts +9 -0
  781. package/dist/src/hooks/use-measure.d.ts.map +1 -0
  782. package/dist/src/hooks/use-measure.js +25 -0
  783. package/dist/src/hooks/use-reverse-video-playback.d.ts +2 -0
  784. package/dist/src/hooks/use-reverse-video-playback.d.ts.map +1 -0
  785. package/dist/src/hooks/use-reverse-video-playback.js +41 -0
  786. package/dist/src/hooks/use-scroll-restoration.d.ts +9 -0
  787. package/dist/src/hooks/use-scroll-restoration.d.ts.map +1 -0
  788. package/dist/src/hooks/use-scroll-restoration.js +36 -0
  789. package/dist/src/kanban/index.d.ts +3 -0
  790. package/dist/src/kanban/index.d.ts.map +1 -0
  791. package/dist/src/kanban/index.js +4 -0
  792. package/dist/src/mcp/enhanced-server.d.ts +41 -0
  793. package/dist/src/mcp/enhanced-server.d.ts.map +1 -0
  794. package/dist/src/mcp/enhanced-server.js +1128 -0
  795. package/dist/src/mcp/index.d.ts +40 -0
  796. package/dist/src/mcp/index.d.ts.map +1 -0
  797. package/dist/src/mcp/index.js +436 -0
  798. package/dist/src/mermaid/index.d.ts +3 -0
  799. package/dist/src/mermaid/index.d.ts.map +1 -0
  800. package/dist/src/mermaid/index.js +3 -0
  801. package/dist/src/navigation/advanced-navigation-bar.d.ts +2 -0
  802. package/dist/src/navigation/advanced-navigation-bar.d.ts.map +1 -0
  803. package/dist/src/navigation/advanced-navigation-bar.js +4 -0
  804. package/dist/src/navigation/ai-model-selector-navigation-bar.d.ts +2 -0
  805. package/dist/src/navigation/ai-model-selector-navigation-bar.d.ts.map +1 -0
  806. package/dist/src/navigation/ai-model-selector-navigation-bar.js +4 -0
  807. package/dist/src/navigation/app-switcher-navigation-bar.d.ts +2 -0
  808. package/dist/src/navigation/app-switcher-navigation-bar.d.ts.map +1 -0
  809. package/dist/src/navigation/app-switcher-navigation-bar.js +4 -0
  810. package/dist/src/navigation/breadcrumb-and-filters-navigation-bar.d.ts +2 -0
  811. package/dist/src/navigation/breadcrumb-and-filters-navigation-bar.d.ts.map +1 -0
  812. package/dist/src/navigation/breadcrumb-and-filters-navigation-bar.js +4 -0
  813. package/dist/src/navigation/breadcrumb-navigation-bar.d.ts +2 -0
  814. package/dist/src/navigation/breadcrumb-navigation-bar.d.ts.map +1 -0
  815. package/dist/src/navigation/breadcrumb-navigation-bar.js +4 -0
  816. package/dist/src/navigation/centered-logo-navigation-bar.d.ts +2 -0
  817. package/dist/src/navigation/centered-logo-navigation-bar.d.ts.map +1 -0
  818. package/dist/src/navigation/centered-logo-navigation-bar.js +4 -0
  819. package/dist/src/navigation/collaboration-navigation-bar.d.ts +2 -0
  820. package/dist/src/navigation/collaboration-navigation-bar.d.ts.map +1 -0
  821. package/dist/src/navigation/collaboration-navigation-bar.js +4 -0
  822. package/dist/src/navigation/communication-navigation-bar.d.ts +2 -0
  823. package/dist/src/navigation/communication-navigation-bar.d.ts.map +1 -0
  824. package/dist/src/navigation/communication-navigation-bar.js +4 -0
  825. package/dist/src/navigation/context-switcher-navigation-bar.d.ts +2 -0
  826. package/dist/src/navigation/context-switcher-navigation-bar.d.ts.map +1 -0
  827. package/dist/src/navigation/context-switcher-navigation-bar.js +4 -0
  828. package/dist/src/navigation/dashboard-navigation-bar.d.ts +2 -0
  829. package/dist/src/navigation/dashboard-navigation-bar.d.ts.map +1 -0
  830. package/dist/src/navigation/dashboard-navigation-bar.js +4 -0
  831. package/dist/src/navigation/e-commerce-navigation-bar.d.ts +2 -0
  832. package/dist/src/navigation/e-commerce-navigation-bar.d.ts.map +1 -0
  833. package/dist/src/navigation/e-commerce-navigation-bar.js +4 -0
  834. package/dist/src/navigation/icon-navigation-bar.d.ts +2 -0
  835. package/dist/src/navigation/icon-navigation-bar.d.ts.map +1 -0
  836. package/dist/src/navigation/icon-navigation-bar.js +4 -0
  837. package/dist/src/navigation/index.d.ts +19 -0
  838. package/dist/src/navigation/index.d.ts.map +1 -0
  839. package/dist/src/navigation/index.js +19 -0
  840. package/dist/src/navigation/search-and-toggle-navigation-bar.d.ts +2 -0
  841. package/dist/src/navigation/search-and-toggle-navigation-bar.d.ts.map +1 -0
  842. package/dist/src/navigation/search-and-toggle-navigation-bar.js +4 -0
  843. package/dist/src/navigation/simple-navigation-bar.d.ts +2 -0
  844. package/dist/src/navigation/simple-navigation-bar.d.ts.map +1 -0
  845. package/dist/src/navigation/simple-navigation-bar.js +4 -0
  846. package/dist/src/navigation/status-dashboard-navigation-bar.d.ts +2 -0
  847. package/dist/src/navigation/status-dashboard-navigation-bar.d.ts.map +1 -0
  848. package/dist/src/navigation/status-dashboard-navigation-bar.js +4 -0
  849. package/dist/src/navigation/team-switcher-navigation-bar.d.ts +2 -0
  850. package/dist/src/navigation/team-switcher-navigation-bar.d.ts.map +1 -0
  851. package/dist/src/navigation/team-switcher-navigation-bar.js +4 -0
  852. package/dist/src/navigation/two-tier-navigation-bar.d.ts +2 -0
  853. package/dist/src/navigation/two-tier-navigation-bar.d.ts.map +1 -0
  854. package/dist/src/navigation/two-tier-navigation-bar.js +4 -0
  855. package/dist/src/navigation/underline-navigation-bar.d.ts +2 -0
  856. package/dist/src/navigation/underline-navigation-bar.d.ts.map +1 -0
  857. package/dist/src/navigation/underline-navigation-bar.js +4 -0
  858. package/dist/src/pattern/grid.d.ts +111 -0
  859. package/dist/src/pattern/grid.d.ts.map +1 -0
  860. package/dist/src/pattern/grid.js +126 -0
  861. package/dist/src/pattern/index.d.ts +3 -0
  862. package/dist/src/pattern/index.d.ts.map +1 -0
  863. package/dist/src/pattern/index.js +2 -0
  864. package/dist/src/project/gantt.d.ts +13 -0
  865. package/dist/src/project/gantt.d.ts.map +1 -0
  866. package/dist/src/project/gantt.js +9 -0
  867. package/dist/src/project/index.d.ts +4 -0
  868. package/dist/src/project/index.d.ts.map +1 -0
  869. package/dist/src/project/index.js +7 -0
  870. package/dist/src/project/kanban.d.ts +36 -0
  871. package/dist/src/project/kanban.d.ts.map +1 -0
  872. package/dist/src/project/kanban.js +259 -0
  873. package/dist/src/project/list.d.ts +5 -0
  874. package/dist/src/project/list.d.ts.map +1 -0
  875. package/dist/src/project/list.js +8 -0
  876. package/dist/src/registry/api.d.ts +38 -0
  877. package/dist/src/registry/api.d.ts.map +1 -0
  878. package/dist/src/registry/api.js +129 -0
  879. package/dist/src/registry/index.d.ts +354 -0
  880. package/dist/src/registry/index.d.ts.map +1 -0
  881. package/dist/src/registry/index.js +45 -0
  882. package/dist/src/spline/index.d.ts +3 -0
  883. package/dist/src/spline/index.d.ts.map +1 -0
  884. package/dist/src/spline/index.js +4 -0
  885. package/dist/src/spline/media-stack.d.ts +15 -0
  886. package/dist/src/spline/media-stack.d.ts.map +1 -0
  887. package/dist/src/spline/media-stack.js +33 -0
  888. package/dist/src/spline/player.d.ts +15 -0
  889. package/dist/src/spline/player.d.ts.map +1 -0
  890. package/dist/src/spline/player.js +12 -0
  891. package/dist/src/ui/announcement.d.ts +9 -0
  892. package/dist/src/ui/announcement.d.ts.map +1 -0
  893. package/dist/src/ui/announcement.js +18 -0
  894. package/dist/src/ui/avatar-group.d.ts +12 -0
  895. package/dist/src/ui/avatar-group.d.ts.map +1 -0
  896. package/dist/src/ui/avatar-group.js +12 -0
  897. package/dist/src/ui/banner.d.ts +11 -0
  898. package/dist/src/ui/banner.d.ts.map +1 -0
  899. package/dist/src/ui/banner.js +25 -0
  900. package/dist/src/ui/cursor.d.ts +9 -0
  901. package/dist/src/ui/cursor.d.ts.map +1 -0
  902. package/dist/src/ui/cursor.js +24 -0
  903. package/dist/src/ui/index.d.ts +18 -0
  904. package/dist/src/ui/index.d.ts.map +1 -0
  905. package/dist/src/ui/index.js +10 -0
  906. package/dist/src/ui/marquee.d.ts +10 -0
  907. package/dist/src/ui/marquee.d.ts.map +1 -0
  908. package/dist/src/ui/marquee.js +14 -0
  909. package/dist/src/ui/pill.d.ts +11 -0
  910. package/dist/src/ui/pill.d.ts.map +1 -0
  911. package/dist/src/ui/pill.js +25 -0
  912. package/dist/src/ui/spinner.d.ts +3 -0
  913. package/dist/src/ui/spinner.d.ts.map +1 -0
  914. package/dist/src/ui/spinner.js +7 -0
  915. package/dist/src/ui/tags.d.ts +13 -0
  916. package/dist/src/ui/tags.d.ts.map +1 -0
  917. package/dist/src/ui/tags.js +11 -0
  918. package/dist/src/ui/ticker.d.ts +10 -0
  919. package/dist/src/ui/ticker.d.ts.map +1 -0
  920. package/dist/src/ui/ticker.js +12 -0
  921. package/dist/src/utils.d.ts +5 -0
  922. package/dist/src/utils.d.ts.map +1 -0
  923. package/dist/src/utils.js +16 -0
  924. package/dist/style/theme-provider.d.ts +5 -0
  925. package/dist/style/theme-provider.d.ts.map +1 -0
  926. package/dist/style/theme-provider.js +8 -0
  927. package/dist/tabs.js +81 -35
  928. package/dist/tabs.mjs +81 -36
  929. package/dist/tailwind/colors.tailwind.d.ts +53 -0
  930. package/dist/tailwind/colors.tailwind.d.ts.map +1 -0
  931. package/dist/tailwind/colors.tailwind.js +52 -0
  932. package/dist/tailwind/fontFamily.tailwind.d.ts +9 -0
  933. package/dist/tailwind/fontFamily.tailwind.d.ts.map +1 -0
  934. package/dist/tailwind/fontFamily.tailwind.js +7 -0
  935. package/dist/tailwind/fontSize.tailwind.d.ts +37 -0
  936. package/dist/tailwind/fontSize.tailwind.d.ts.map +1 -0
  937. package/dist/tailwind/fontSize.tailwind.js +13 -0
  938. package/dist/tailwind/index.d.ts +4 -0
  939. package/dist/tailwind/index.d.ts.map +1 -0
  940. package/dist/tailwind/index.js +2 -2023
  941. package/dist/tailwind/safelist.tailwind.d.ts +9 -0
  942. package/dist/tailwind/safelist.tailwind.d.ts.map +1 -0
  943. package/dist/tailwind/safelist.tailwind.js +25 -0
  944. package/dist/tailwind/screens.tailwind.d.ts +10 -0
  945. package/dist/tailwind/screens.tailwind.d.ts.map +1 -0
  946. package/dist/tailwind/screens.tailwind.js +8 -0
  947. package/dist/tailwind/spacing.tailwind.d.ts +59 -0
  948. package/dist/tailwind/spacing.tailwind.d.ts.map +1 -0
  949. package/dist/tailwind/spacing.tailwind.js +62 -0
  950. package/dist/tailwind/tailwind.config.hanzo-preset.d.ts +1299 -0
  951. package/dist/tailwind/tailwind.config.hanzo-preset.d.ts.map +1 -0
  952. package/dist/tailwind/tailwind.config.hanzo-preset.js +911 -0
  953. package/dist/tailwind/tw-font-desc.d.ts +7 -0
  954. package/dist/tailwind/tw-font-desc.d.ts.map +1 -0
  955. package/dist/tailwind/tw-font-desc.js +6 -0
  956. package/dist/tailwind/typo-plugin/get-plugin-styles.d.ts +595 -0
  957. package/dist/tailwind/typo-plugin/get-plugin-styles.d.ts.map +1 -0
  958. package/dist/tailwind/typo-plugin/get-plugin-styles.js +661 -0
  959. package/dist/tailwind/typo-plugin/index.d.ts +3 -0
  960. package/dist/tailwind/typo-plugin/index.d.ts.map +1 -0
  961. package/dist/tailwind/typo-plugin/index.js +102 -0
  962. package/dist/tailwind/typo-plugin/utils.d.ts +6 -0
  963. package/dist/tailwind/typo-plugin/utils.d.ts.map +1 -0
  964. package/dist/tailwind/typo-plugin/utils.js +47 -0
  965. package/dist/tailwind/z-index.tailwind.d.ts +51 -0
  966. package/dist/tailwind/z-index.tailwind.d.ts.map +1 -0
  967. package/dist/tailwind/z-index.tailwind.js +67 -0
  968. package/dist/types/animation-def.d.ts +3 -0
  969. package/dist/types/animation-def.d.ts.map +1 -0
  970. package/dist/types/animation-def.js +1 -0
  971. package/dist/types/breakpoints.d.ts +5 -0
  972. package/dist/types/breakpoints.d.ts.map +1 -0
  973. package/dist/types/breakpoints.js +4 -0
  974. package/dist/types/bullet-item.d.ts +7 -0
  975. package/dist/types/bullet-item.d.ts.map +1 -0
  976. package/dist/types/bullet-item.js +1 -0
  977. package/dist/types/button-def.d.ts +30 -0
  978. package/dist/types/button-def.d.ts.map +1 -0
  979. package/dist/types/button-def.js +1 -0
  980. package/dist/types/dimensions.d.ts +6 -0
  981. package/dist/types/dimensions.d.ts.map +1 -0
  982. package/dist/types/dimensions.js +1 -0
  983. package/dist/types/grid-def.d.ts +37 -0
  984. package/dist/types/grid-def.d.ts.map +1 -0
  985. package/dist/types/grid-def.js +33 -0
  986. package/dist/types/image-def.d.ts +28 -0
  987. package/dist/types/image-def.d.ts.map +1 -0
  988. package/dist/types/image-def.js +1 -0
  989. package/dist/types/index.d.ts +15 -0
  990. package/dist/types/index.d.ts.map +1 -0
  991. package/dist/types/index.js +2 -57
  992. package/dist/types/link-def.d.ts +45 -0
  993. package/dist/types/link-def.d.ts.map +1 -0
  994. package/dist/types/link-def.js +1 -0
  995. package/dist/types/media-stack-def.d.ts +26 -0
  996. package/dist/types/media-stack-def.d.ts.map +1 -0
  997. package/dist/types/media-stack-def.js +1 -0
  998. package/dist/types/t-shirt-size.d.ts +3 -0
  999. package/dist/types/t-shirt-size.d.ts.map +1 -0
  1000. package/dist/types/t-shirt-size.js +1 -0
  1001. package/dist/types/tshirt-dimensions.d.ts +13 -0
  1002. package/dist/types/tshirt-dimensions.d.ts.map +1 -0
  1003. package/dist/types/tshirt-dimensions.js +1 -0
  1004. package/dist/types/video-def.d.ts +10 -0
  1005. package/dist/types/video-def.d.ts.map +1 -0
  1006. package/dist/types/video-def.js +1 -0
  1007. package/dist/ui/announcement.js +18 -13
  1008. package/dist/ui/announcement.mjs +18 -13
  1009. package/dist/ui/index.js +45 -25
  1010. package/dist/ui/index.mjs +45 -25
  1011. package/dist/ui/tags.js +28 -12
  1012. package/dist/ui/tags.mjs +28 -12
  1013. package/dist/util/blob.d.ts +3 -0
  1014. package/dist/util/blob.d.ts.map +1 -0
  1015. package/dist/util/blob.js +23 -0
  1016. package/dist/util/copy-to-clipboard.d.ts +2 -0
  1017. package/dist/util/copy-to-clipboard.d.ts.map +1 -0
  1018. package/dist/util/copy-to-clipboard.js +18 -0
  1019. package/dist/util/create-shadow-root.d.ts +8 -0
  1020. package/dist/util/create-shadow-root.d.ts.map +1 -0
  1021. package/dist/util/create-shadow-root.js +18 -0
  1022. package/dist/util/date.d.ts +29 -0
  1023. package/dist/util/date.d.ts.map +1 -0
  1024. package/dist/util/date.js +60 -0
  1025. package/dist/util/debounce.d.ts +2 -0
  1026. package/dist/util/debounce.d.ts.map +1 -0
  1027. package/dist/util/debounce.js +11 -0
  1028. package/dist/util/file.d.ts +4 -0
  1029. package/dist/util/file.d.ts.map +1 -0
  1030. package/dist/util/file.js +13 -0
  1031. package/dist/util/format-and-abbreviate-as-currency.d.ts +12 -0
  1032. package/dist/util/format-and-abbreviate-as-currency.d.ts.map +1 -0
  1033. package/dist/util/format-and-abbreviate-as-currency.js +91 -0
  1034. package/dist/util/format-text.d.ts +8 -0
  1035. package/dist/util/format-text.d.ts.map +1 -0
  1036. package/dist/util/format-text.js +26 -0
  1037. package/dist/util/format-to-max-char.d.ts +6 -0
  1038. package/dist/util/format-to-max-char.d.ts.map +1 -0
  1039. package/dist/util/format-to-max-char.js +57 -0
  1040. package/dist/util/index-client.d.ts +3 -0
  1041. package/dist/util/index-client.d.ts.map +1 -0
  1042. package/dist/util/index-client.js +3 -0
  1043. package/dist/util/index.d.ts +37 -0
  1044. package/dist/util/index.d.ts.map +1 -0
  1045. package/dist/util/index.js +74 -457
  1046. package/dist/util/number-abbreviate.d.ts +10 -0
  1047. package/dist/util/number-abbreviate.d.ts.map +1 -0
  1048. package/dist/util/number-abbreviate.js +30 -0
  1049. package/dist/util/specifier.d.ts +8 -0
  1050. package/dist/util/specifier.d.ts.map +1 -0
  1051. package/dist/util/specifier.js +31 -0
  1052. package/dist/util/spread-to-transform.d.ts +8 -0
  1053. package/dist/util/spread-to-transform.d.ts.map +1 -0
  1054. package/dist/util/spread-to-transform.js +19 -0
  1055. package/dist/util/step-animation.d.ts +6 -0
  1056. package/dist/util/step-animation.d.ts.map +1 -0
  1057. package/dist/util/step-animation.js +60 -0
  1058. package/dist/util/timing.d.ts +2 -0
  1059. package/dist/util/timing.d.ts.map +1 -0
  1060. package/dist/util/timing.js +3 -0
  1061. package/dist/util/toasts.d.ts +3 -0
  1062. package/dist/util/toasts.d.ts.map +1 -0
  1063. package/dist/util/toasts.js +10 -0
  1064. package/dist/util/two-way-map.d.ts +9 -0
  1065. package/dist/util/two-way-map.d.ts.map +1 -0
  1066. package/dist/util/two-way-map.js +16 -0
  1067. package/dist/util/use-mobile.d.ts +2 -0
  1068. package/dist/util/use-mobile.d.ts.map +1 -0
  1069. package/dist/util/use-mobile.js +15 -0
  1070. package/dist/utils.d.ts +4 -0
  1071. package/dist/utils.d.ts.map +1 -0
  1072. package/dist/utils.js +7 -0
  1073. package/docs/css/aspen.css +39 -0
  1074. package/docs/css/emerald.css +39 -0
  1075. package/docs/css/ruby.css +39 -0
  1076. package/package.json +79 -40
@@ -9,8 +9,9 @@ var jsxRuntime = require('react/jsx-runtime');
9
9
  var AlertDialogPrimitive = require('@radix-ui/react-alert-dialog');
10
10
  var reactSlot = require('@radix-ui/react-slot');
11
11
  var classVarianceAuthority = require('class-variance-authority');
12
- var React2 = require('react');
12
+ var React19 = require('react');
13
13
  var AvatarPrimitive = require('@radix-ui/react-avatar');
14
+ var SeparatorPrimitive = require('@radix-ui/react-separator');
14
15
  var useEmblaCarousel = require('embla-carousel-react');
15
16
  var cmdk = require('cmdk');
16
17
  var SheetPrimitive = require('@radix-ui/react-dialog');
@@ -18,7 +19,6 @@ var CollapsiblePrimitive = require('@radix-ui/react-collapsible');
18
19
  var ContextMenuPrimitive = require('@radix-ui/react-context-menu');
19
20
  var vaul = require('vaul');
20
21
  var DropdownMenuPrimitive = require('@radix-ui/react-dropdown-menu');
21
- var SeparatorPrimitive = require('@radix-ui/react-separator');
22
22
  var HoverCardPrimitive = require('@radix-ui/react-hover-card');
23
23
  var inputOtp = require('input-otp');
24
24
  var MenubarPrimitive = require('@radix-ui/react-menubar');
@@ -67,14 +67,14 @@ function _interopNamespace(e) {
67
67
 
68
68
  var AccordionPrimitive__namespace = /*#__PURE__*/_interopNamespace(AccordionPrimitive);
69
69
  var AlertDialogPrimitive__namespace = /*#__PURE__*/_interopNamespace(AlertDialogPrimitive);
70
- var React2__namespace = /*#__PURE__*/_interopNamespace(React2);
70
+ var React19__namespace = /*#__PURE__*/_interopNamespace(React19);
71
71
  var AvatarPrimitive__namespace = /*#__PURE__*/_interopNamespace(AvatarPrimitive);
72
+ var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrimitive);
72
73
  var useEmblaCarousel__default = /*#__PURE__*/_interopDefault(useEmblaCarousel);
73
74
  var SheetPrimitive__namespace = /*#__PURE__*/_interopNamespace(SheetPrimitive);
74
75
  var CollapsiblePrimitive__namespace = /*#__PURE__*/_interopNamespace(CollapsiblePrimitive);
75
76
  var ContextMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(ContextMenuPrimitive);
76
77
  var DropdownMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(DropdownMenuPrimitive);
77
- var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrimitive);
78
78
  var HoverCardPrimitive__namespace = /*#__PURE__*/_interopNamespace(HoverCardPrimitive);
79
79
  var MenubarPrimitive__namespace = /*#__PURE__*/_interopNamespace(MenubarPrimitive);
80
80
  var NavigationMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(NavigationMenuPrimitive);
@@ -147,15 +147,15 @@ var AccordionContent = /* @__PURE__ */ __name(({
147
147
  ), "AccordionContent");
148
148
  AccordionContent.displayName = AccordionPrimitive__namespace.Content.displayName;
149
149
  var buttonVariants = classVarianceAuthority.cva(
150
- "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
150
+ 'inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*="size-"])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive',
151
151
  {
152
152
  variants: {
153
153
  variant: {
154
- default: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
155
- destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",
156
- outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground",
157
- secondary: "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",
158
- ghost: "hover:bg-accent hover:text-accent-foreground",
154
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
155
+ destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
156
+ outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
157
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
158
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
159
159
  link: "text-primary underline-offset-4 hover:underline",
160
160
  // Keep the additional Hanzo variants for backward compatibility
161
161
  primary: "bg-primary text-primary-foreground shadow hover:bg-primary/90",
@@ -163,10 +163,12 @@ var buttonVariants = classVarianceAuthority.cva(
163
163
  linkMuted: "text-muted-foreground underline-offset-4 hover:underline hover:text-foreground"
164
164
  },
165
165
  size: {
166
- default: "h-9 px-4 py-2",
167
- sm: "h-8 rounded-md px-3 text-xs",
168
- lg: "h-10 rounded-md px-8",
169
- icon: "h-9 w-9"
166
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
167
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
168
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
169
+ icon: "size-9",
170
+ "icon-sm": "size-8",
171
+ "icon-lg": "size-10"
170
172
  }
171
173
  },
172
174
  defaultVariants: {
@@ -175,12 +177,15 @@ var buttonVariants = classVarianceAuthority.cva(
175
177
  }
176
178
  }
177
179
  );
178
- var Button = React2__namespace.forwardRef(
179
- ({ className, variant, size, asChild = false, isLoading = false, children, ...props }, ref) => {
180
+ var Button = React19__namespace.forwardRef(
181
+ ({ className, variant = "default", size = "default", asChild = false, isLoading = false, children, ...props }, ref) => {
180
182
  const Comp = asChild ? reactSlot.Slot : "button";
181
183
  return /* @__PURE__ */ jsxRuntime.jsxs(
182
184
  Comp,
183
185
  {
186
+ "data-slot": "button",
187
+ "data-variant": variant,
188
+ "data-size": size,
184
189
  className: cn(buttonVariants({ variant, size, className })),
185
190
  ref,
186
191
  ...props,
@@ -188,10 +193,10 @@ var Button = React2__namespace.forwardRef(
188
193
  isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
189
194
  lucideReact.Loader2,
190
195
  {
191
- className: cn("h-4 w-4 animate-spin", size !== "icon" && "mr-2")
196
+ className: cn("h-4 w-4 animate-spin", size !== "icon" && size !== "icon-sm" && size !== "icon-lg" && "mr-2")
192
197
  }
193
198
  ) : null,
194
- isLoading && size === "icon" ? null : children
199
+ isLoading && (size === "icon" || size === "icon-sm" || size === "icon-lg") ? null : children
195
200
  ]
196
201
  }
197
202
  );
@@ -317,16 +322,17 @@ var AlertDialogCancel = /* @__PURE__ */ __name(({
317
322
  ), "AlertDialogCancel");
318
323
  AlertDialogCancel.displayName = AlertDialogPrimitive__namespace.Cancel.displayName;
319
324
  var alertVariants = classVarianceAuthority.cva(
320
- "[&>svg]:text-text-default relative w-full rounded-lg border p-4 [&>svg]:absolute [&>svg]:top-4 [&>svg]:left-4 [&>svg+div]:translate-y-[-3px] [&>svg~*]:pl-7",
325
+ "group/alert relative w-full rounded-lg border p-4 [&>svg]:absolute [&>svg]:top-4 [&>svg]:left-4 [&>svg+div]:translate-y-[-3px] [&>svg~*]:pl-7 [&>svg]:size-4",
321
326
  {
322
327
  variants: {
323
328
  variant: {
324
- default: "bg-bg-tertiary text-text-default",
325
- info: "text-text-secondary [&>svg]:text-text-secondary bg-gray-250 border-gray-100 border-gray-200",
326
- destructive: "border-[#4d0408] bg-[#2d0607] text-[#ff9ea1] [&>svg]:text-[#ff9ea1]",
327
- warning: "border-yellow-800 bg-yellow-900 text-yellow-400 [&>svg]:text-yellow-400",
328
- success: "border-green-800 bg-green-900 text-green-400 [&>svg]:text-green-400",
329
- download: "border-gray-800 bg-gray-900 text-cyan-400 [&>svg]:text-cyan-400"
329
+ default: "bg-background text-foreground [&>svg]:text-foreground",
330
+ destructive: "border-destructive/50 text-destructive bg-destructive/10 dark:border-destructive [&>svg]:text-destructive",
331
+ // Hanzo-specific variants for backward compatibility
332
+ info: "text-muted-foreground bg-muted border-border [&>svg]:text-muted-foreground",
333
+ warning: "border-yellow-500/50 bg-yellow-500/10 text-yellow-700 dark:text-yellow-400 [&>svg]:text-yellow-600 dark:[&>svg]:text-yellow-400",
334
+ success: "border-green-500/50 bg-green-500/10 text-green-700 dark:text-green-400 [&>svg]:text-green-600 dark:[&>svg]:text-green-400",
335
+ download: "border-cyan-500/50 bg-cyan-500/10 text-cyan-700 dark:text-cyan-400 [&>svg]:text-cyan-600 dark:[&>svg]:text-cyan-400"
330
336
  }
331
337
  },
332
338
  defaultVariants: {
@@ -334,38 +340,65 @@ var alertVariants = classVarianceAuthority.cva(
334
340
  }
335
341
  }
336
342
  );
337
- var Alert = /* @__PURE__ */ __name(({ className, variant, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
338
- "div",
339
- {
340
- className: cn(alertVariants({ variant }), className),
341
- ref,
342
- role: "alert",
343
- ...props
344
- }
345
- ), "Alert");
346
- Alert.displayName = "Alert";
347
- var AlertTitle = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
348
- "h5",
349
- {
350
- className: cn("mb-1 leading-none font-medium tracking-tight", className),
351
- ref,
352
- ...props
353
- }
354
- ), "AlertTitle");
355
- AlertTitle.displayName = "AlertTitle";
356
- var AlertDescription = /* @__PURE__ */ __name(({
343
+ function Alert({
357
344
  className,
358
- ref,
345
+ variant = "default",
359
346
  ...props
360
- }) => /* @__PURE__ */ jsxRuntime.jsx(
361
- "div",
362
- {
363
- className: cn("text-sm [&_p]:leading-relaxed", className),
364
- ref,
365
- ...props
366
- }
367
- ), "AlertDescription");
368
- AlertDescription.displayName = "AlertDescription";
347
+ }) {
348
+ return /* @__PURE__ */ jsxRuntime.jsx(
349
+ "div",
350
+ {
351
+ "data-slot": "alert",
352
+ "data-variant": variant,
353
+ role: "alert",
354
+ className: cn(alertVariants({ variant }), className),
355
+ ...props
356
+ }
357
+ );
358
+ }
359
+ __name(Alert, "Alert");
360
+ function AlertTitle({ className, ...props }) {
361
+ return /* @__PURE__ */ jsxRuntime.jsx(
362
+ "div",
363
+ {
364
+ "data-slot": "alert-title",
365
+ className: cn(
366
+ "mb-1 leading-none font-medium tracking-tight [&_a]:hover:text-foreground [&_a]:underline [&_a]:underline-offset-3",
367
+ className
368
+ ),
369
+ ...props
370
+ }
371
+ );
372
+ }
373
+ __name(AlertTitle, "AlertTitle");
374
+ function AlertDescription({
375
+ className,
376
+ ...props
377
+ }) {
378
+ return /* @__PURE__ */ jsxRuntime.jsx(
379
+ "div",
380
+ {
381
+ "data-slot": "alert-description",
382
+ className: cn(
383
+ "text-sm [&_p]:leading-relaxed [&_a]:hover:text-foreground [&_a]:underline [&_a]:underline-offset-3",
384
+ className
385
+ ),
386
+ ...props
387
+ }
388
+ );
389
+ }
390
+ __name(AlertDescription, "AlertDescription");
391
+ function AlertAction({ className, ...props }) {
392
+ return /* @__PURE__ */ jsxRuntime.jsx(
393
+ "div",
394
+ {
395
+ "data-slot": "alert-action",
396
+ className: cn("mt-3 flex items-center gap-2", className),
397
+ ...props
398
+ }
399
+ );
400
+ }
401
+ __name(AlertAction, "AlertAction");
369
402
  var Avatar = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
370
403
  AvatarPrimitive__namespace.Root,
371
404
  {
@@ -483,63 +516,180 @@ var BreadcrumbEllipsis = /* @__PURE__ */ __name(({
483
516
  }
484
517
  ), "BreadcrumbEllipsis");
485
518
  BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
486
- var Card = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
487
- "div",
519
+ function Card({ className, ...props }) {
520
+ return /* @__PURE__ */ jsxRuntime.jsx(
521
+ "div",
522
+ {
523
+ "data-slot": "card",
524
+ className: cn(
525
+ "bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",
526
+ className
527
+ ),
528
+ ...props
529
+ }
530
+ );
531
+ }
532
+ __name(Card, "Card");
533
+ function CardHeader({ className, ...props }) {
534
+ return /* @__PURE__ */ jsxRuntime.jsx(
535
+ "div",
536
+ {
537
+ "data-slot": "card-header",
538
+ className: cn(
539
+ "@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",
540
+ className
541
+ ),
542
+ ...props
543
+ }
544
+ );
545
+ }
546
+ __name(CardHeader, "CardHeader");
547
+ function CardTitle({ className, ...props }) {
548
+ return /* @__PURE__ */ jsxRuntime.jsx(
549
+ "div",
550
+ {
551
+ "data-slot": "card-title",
552
+ className: cn("leading-none font-semibold", className),
553
+ ...props
554
+ }
555
+ );
556
+ }
557
+ __name(CardTitle, "CardTitle");
558
+ function CardDescription({ className, ...props }) {
559
+ return /* @__PURE__ */ jsxRuntime.jsx(
560
+ "div",
561
+ {
562
+ "data-slot": "card-description",
563
+ className: cn("text-muted-foreground text-sm", className),
564
+ ...props
565
+ }
566
+ );
567
+ }
568
+ __name(CardDescription, "CardDescription");
569
+ function CardAction({ className, ...props }) {
570
+ return /* @__PURE__ */ jsxRuntime.jsx(
571
+ "div",
572
+ {
573
+ "data-slot": "card-action",
574
+ className: cn(
575
+ "col-start-2 row-span-2 row-start-1 self-start justify-self-end",
576
+ className
577
+ ),
578
+ ...props
579
+ }
580
+ );
581
+ }
582
+ __name(CardAction, "CardAction");
583
+ function CardContent({ className, ...props }) {
584
+ return /* @__PURE__ */ jsxRuntime.jsx(
585
+ "div",
586
+ {
587
+ "data-slot": "card-content",
588
+ className: cn("px-6", className),
589
+ ...props
590
+ }
591
+ );
592
+ }
593
+ __name(CardContent, "CardContent");
594
+ function CardFooter({ className, ...props }) {
595
+ return /* @__PURE__ */ jsxRuntime.jsx(
596
+ "div",
597
+ {
598
+ "data-slot": "card-footer",
599
+ className: cn("flex items-center px-6 [.border-t]:pt-6", className),
600
+ ...props
601
+ }
602
+ );
603
+ }
604
+ __name(CardFooter, "CardFooter");
605
+ var Separator = /* @__PURE__ */ __name(({
606
+ className,
607
+ orientation = "horizontal",
608
+ decorative = true,
609
+ ...props
610
+ }) => /* @__PURE__ */ jsxRuntime.jsx(
611
+ SeparatorPrimitive__namespace.Root,
488
612
  {
489
613
  className: cn(
490
- "bg-card text-card-foreground rounded-lg border shadow-xs",
614
+ "bg-divider shrink-0",
615
+ orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
491
616
  className
492
617
  ),
493
- ref,
494
- ...props
495
- }
496
- ), "Card");
497
- Card.displayName = "Card";
498
- var CardHeader = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
499
- "div",
500
- {
501
- className: cn("flex flex-col space-y-1.5 p-6", className),
502
- ref,
618
+ decorative,
619
+ orientation,
503
620
  ...props
504
621
  }
505
- ), "CardHeader");
506
- CardHeader.displayName = "CardHeader";
507
- var CardTitle = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
508
- "h3",
622
+ ), "Separator");
623
+ Separator.displayName = SeparatorPrimitive__namespace.Root.displayName;
624
+ var separator_default = Separator;
625
+ var buttonGroupVariants = classVarianceAuthority.cva(
626
+ 'flex w-fit items-stretch [&>*]:focus-visible:z-10 [&>*]:focus-visible:relative [&>[data-slot=select-trigger]:not([class*="w-"])]:w-fit [&>input]:flex-1 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-md has-[>[data-slot=button-group]]:gap-2',
509
627
  {
510
- className: cn(
511
- "text-2xl leading-none font-semibold tracking-tight",
512
- className
513
- ),
514
- ref,
515
- ...props
628
+ variants: {
629
+ orientation: {
630
+ horizontal: "[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none",
631
+ vertical: "flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none"
632
+ }
633
+ },
634
+ defaultVariants: {
635
+ orientation: "horizontal"
636
+ }
516
637
  }
517
- ), "CardTitle");
518
- CardTitle.displayName = "CardTitle";
519
- var CardDescription = /* @__PURE__ */ __name(({
638
+ );
639
+ function ButtonGroup({
520
640
  className,
521
- ref,
641
+ orientation,
522
642
  ...props
523
- }) => /* @__PURE__ */ jsxRuntime.jsx(
524
- "p",
525
- {
526
- className: cn("text-text-secondary text-sm", className),
527
- ref,
528
- ...props
529
- }
530
- ), "CardDescription");
531
- CardDescription.displayName = "CardDescription";
532
- var CardContent = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("p-6 pt-0", className), ref, ...props }), "CardContent");
533
- CardContent.displayName = "CardContent";
534
- var CardFooter = /* @__PURE__ */ __name(({ className, ref, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
535
- "div",
536
- {
537
- className: cn("flex items-center p-6 pt-0", className),
538
- ref,
539
- ...props
540
- }
541
- ), "CardFooter");
542
- CardFooter.displayName = "CardFooter";
643
+ }) {
644
+ return /* @__PURE__ */ jsxRuntime.jsx(
645
+ "div",
646
+ {
647
+ role: "group",
648
+ "data-slot": "button-group",
649
+ "data-orientation": orientation,
650
+ className: cn(buttonGroupVariants({ orientation }), className),
651
+ ...props
652
+ }
653
+ );
654
+ }
655
+ __name(ButtonGroup, "ButtonGroup");
656
+ function ButtonGroupText({
657
+ className,
658
+ asChild = false,
659
+ ...props
660
+ }) {
661
+ const Comp = asChild ? reactSlot.Slot : "div";
662
+ return /* @__PURE__ */ jsxRuntime.jsx(
663
+ Comp,
664
+ {
665
+ className: cn(
666
+ 'bg-muted flex items-center gap-2 rounded-md border px-4 text-sm font-medium shadow-xs [&_svg]:pointer-events-none [&_svg:not([class*="size-"])]:size-4',
667
+ className
668
+ ),
669
+ ...props
670
+ }
671
+ );
672
+ }
673
+ __name(ButtonGroupText, "ButtonGroupText");
674
+ function ButtonGroupSeparator({
675
+ className,
676
+ orientation = "vertical",
677
+ ...props
678
+ }) {
679
+ return /* @__PURE__ */ jsxRuntime.jsx(
680
+ Separator,
681
+ {
682
+ "data-slot": "button-group-separator",
683
+ orientation,
684
+ className: cn(
685
+ "bg-input relative !m-0 self-stretch data-[orientation=vertical]:h-auto",
686
+ className
687
+ ),
688
+ ...props
689
+ }
690
+ );
691
+ }
692
+ __name(ButtonGroupSeparator, "ButtonGroupSeparator");
543
693
 
544
694
  // util/copy-to-clipboard.ts
545
695
  async function copyToClipboard(text) {
@@ -603,15 +753,15 @@ function constrain(value, minOrConstrainTo, max) {
603
753
  throw new Error("Invalid parameters for constrain function");
604
754
  }
605
755
  __name(constrain, "constrain");
606
- var CarouselContext = React2__namespace.createContext(null);
756
+ var CarouselContext = React19__namespace.createContext(null);
607
757
  var useCarousel = /* @__PURE__ */ __name(() => {
608
- const service = React2__namespace.useContext(CarouselContext);
758
+ const service = React19__namespace.useContext(CarouselContext);
609
759
  if (!service) {
610
760
  throw new Error("useCarousel must be used within a <Carousel />");
611
761
  }
612
762
  return service;
613
763
  }, "useCarousel");
614
- var Carousel = React2__namespace.forwardRef(
764
+ var Carousel = React19__namespace.forwardRef(
615
765
  ({
616
766
  orientation = "horizontal",
617
767
  options,
@@ -623,9 +773,9 @@ var Carousel = React2__namespace.forwardRef(
623
773
  ...props
624
774
  }, ref) => {
625
775
  const [carouselRef, api] = useEmblaCarousel__default.default({ ...options, axis: orientation === "horizontal" ? "x" : "y" }, plugins);
626
- const [canScrollPrev, setCanScrollPrev] = React2__namespace.useState(false);
627
- const [canScrollNext, setCanScrollNext] = React2__namespace.useState(false);
628
- const onSelect = React2__namespace.useCallback((api2) => {
776
+ const [canScrollPrev, setCanScrollPrev] = React19__namespace.useState(false);
777
+ const [canScrollNext, setCanScrollNext] = React19__namespace.useState(false);
778
+ const onSelect = React19__namespace.useCallback((api2) => {
629
779
  if (!api2) {
630
780
  return;
631
781
  }
@@ -635,13 +785,13 @@ var Carousel = React2__namespace.forwardRef(
635
785
  onCarouselSelect(api2);
636
786
  }
637
787
  }, []);
638
- const scrollPrev = React2__namespace.useCallback(() => {
788
+ const scrollPrev = React19__namespace.useCallback(() => {
639
789
  api?.scrollPrev();
640
790
  }, [api]);
641
- const scrollNext = React2__namespace.useCallback(() => {
791
+ const scrollNext = React19__namespace.useCallback(() => {
642
792
  api?.scrollNext();
643
793
  }, [api]);
644
- const handleKeyDown = React2__namespace.useCallback((event) => {
794
+ const handleKeyDown = React19__namespace.useCallback((event) => {
645
795
  if (event.key === "ArrowLeft") {
646
796
  event.preventDefault();
647
797
  scrollPrev();
@@ -650,13 +800,13 @@ var Carousel = React2__namespace.forwardRef(
650
800
  scrollNext();
651
801
  }
652
802
  }, [scrollPrev, scrollNext]);
653
- React2__namespace.useEffect(() => {
803
+ React19__namespace.useEffect(() => {
654
804
  if (!api || !setApi) {
655
805
  return;
656
806
  }
657
807
  setApi(api);
658
808
  }, [api, setApi]);
659
- React2__namespace.useEffect(() => {
809
+ React19__namespace.useEffect(() => {
660
810
  if (!api) {
661
811
  return;
662
812
  }
@@ -698,7 +848,7 @@ var Carousel = React2__namespace.forwardRef(
698
848
  }
699
849
  );
700
850
  Carousel.displayName = "Carousel";
701
- var CarouselContent = React2__namespace.forwardRef(({ className, ...props }, ref) => {
851
+ var CarouselContent = React19__namespace.forwardRef(({ className, ...props }, ref) => {
702
852
  const { carouselRef, orientation } = useCarousel();
703
853
  return /* @__PURE__ */ jsxRuntime.jsx("div", { ref: carouselRef, className: "overflow-hidden", "data-vaul-no-drag": true, children: /* @__PURE__ */ jsxRuntime.jsx(
704
854
  "div",
@@ -714,7 +864,7 @@ var CarouselContent = React2__namespace.forwardRef(({ className, ...props }, ref
714
864
  ) });
715
865
  });
716
866
  CarouselContent.displayName = "CarouselContent";
717
- var CarouselItem = React2__namespace.forwardRef(({ className, ...props }, ref) => {
867
+ var CarouselItem = React19__namespace.forwardRef(({ className, ...props }, ref) => {
718
868
  const { orientation } = useCarousel();
719
869
  return /* @__PURE__ */ jsxRuntime.jsx(
720
870
  "div",
@@ -733,7 +883,7 @@ var CarouselItem = React2__namespace.forwardRef(({ className, ...props }, ref) =
733
883
  );
734
884
  });
735
885
  CarouselItem.displayName = "CarouselItem";
736
- var CarouselPrevious = React2__namespace.forwardRef(({ className, variant = "ghost", size = "icon", ...props }, ref) => {
886
+ var CarouselPrevious = React19__namespace.forwardRef(({ className, variant = "ghost", size = "icon", ...props }, ref) => {
737
887
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
738
888
  return /* @__PURE__ */ jsxRuntime.jsxs(
739
889
  button_default,
@@ -757,7 +907,7 @@ var CarouselPrevious = React2__namespace.forwardRef(({ className, variant = "gho
757
907
  );
758
908
  });
759
909
  CarouselPrevious.displayName = "CarouselPrevious";
760
- var CarouselNext = React2__namespace.forwardRef(({ className, variant = "ghost", size = "icon", ...props }, ref) => {
910
+ var CarouselNext = React19__namespace.forwardRef(({ className, variant = "ghost", size = "icon", ...props }, ref) => {
761
911
  const { orientation, scrollNext, canScrollNext } = useCarousel();
762
912
  return /* @__PURE__ */ jsxRuntime.jsxs(
763
913
  button_default,
@@ -781,112 +931,145 @@ var CarouselNext = React2__namespace.forwardRef(({ className, variant = "ghost",
781
931
  );
782
932
  });
783
933
  CarouselNext.displayName = "CarouselNext";
784
- var Dialog = SheetPrimitive__namespace.Root;
785
- var DialogTrigger = SheetPrimitive__namespace.Trigger;
786
- var DialogPortal = SheetPrimitive__namespace.Portal;
787
- var DialogOverlay = /* @__PURE__ */ __name(({
934
+ function Dialog({ ...props }) {
935
+ return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Root, { "data-slot": "dialog", ...props });
936
+ }
937
+ __name(Dialog, "Dialog");
938
+ function DialogTrigger({
939
+ ...props
940
+ }) {
941
+ return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Trigger, { "data-slot": "dialog-trigger", ...props });
942
+ }
943
+ __name(DialogTrigger, "DialogTrigger");
944
+ function DialogPortal({
945
+ ...props
946
+ }) {
947
+ return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Portal, { "data-slot": "dialog-portal", ...props });
948
+ }
949
+ __name(DialogPortal, "DialogPortal");
950
+ function DialogClose({
951
+ ...props
952
+ }) {
953
+ return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Close, { "data-slot": "dialog-close", ...props });
954
+ }
955
+ __name(DialogClose, "DialogClose");
956
+ function DialogOverlay({
788
957
  className,
789
958
  ...props
790
- }) => /* @__PURE__ */ jsxRuntime.jsx(
791
- SheetPrimitive__namespace.Overlay,
792
- {
793
- className: cn(
794
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50",
795
- "bg-bg-dark/90",
796
- className
797
- ),
798
- ...props
799
- }
800
- ), "DialogOverlay");
801
- DialogOverlay.displayName = SheetPrimitive__namespace.Overlay.displayName;
802
- var DialogContent = /* @__PURE__ */ __name(({
959
+ }) {
960
+ return /* @__PURE__ */ jsxRuntime.jsx(
961
+ SheetPrimitive__namespace.Overlay,
962
+ {
963
+ "data-slot": "dialog-overlay",
964
+ className: cn(
965
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 isolate z-50",
966
+ "bg-black/80",
967
+ className
968
+ ),
969
+ ...props
970
+ }
971
+ );
972
+ }
973
+ __name(DialogOverlay, "DialogOverlay");
974
+ function DialogContent({
803
975
  className,
804
976
  children,
977
+ showCloseButton = true,
978
+ ...props
979
+ }) {
980
+ return /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
981
+ /* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
982
+ /* @__PURE__ */ jsxRuntime.jsxs(
983
+ SheetPrimitive__namespace.Content,
984
+ {
985
+ "data-slot": "dialog-content",
986
+ className: cn(
987
+ "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-1/2 left-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg border p-6 shadow-lg duration-200",
988
+ className
989
+ ),
990
+ ...props,
991
+ children: [
992
+ children,
993
+ showCloseButton && /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Close, { "data-slot": "dialog-close", asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
994
+ Button,
995
+ {
996
+ variant: "ghost",
997
+ size: "icon-sm",
998
+ className: "absolute top-4 right-4 rounded-sm opacity-70 transition-opacity hover:opacity-100 disabled:pointer-events-none",
999
+ children: [
1000
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "size-4" }),
1001
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1002
+ ]
1003
+ }
1004
+ ) })
1005
+ ]
1006
+ }
1007
+ )
1008
+ ] });
1009
+ }
1010
+ __name(DialogContent, "DialogContent");
1011
+ function DialogHeader({ className, ...props }) {
1012
+ return /* @__PURE__ */ jsxRuntime.jsx(
1013
+ "div",
1014
+ {
1015
+ "data-slot": "dialog-header",
1016
+ className: cn("flex flex-col gap-1.5 text-center sm:text-left", className),
1017
+ ...props
1018
+ }
1019
+ );
1020
+ }
1021
+ __name(DialogHeader, "DialogHeader");
1022
+ function DialogFooter({
1023
+ className,
805
1024
  showCloseButton = false,
1025
+ children,
806
1026
  ...props
807
- }) => /* @__PURE__ */ jsxRuntime.jsxs(DialogPortal, { children: [
808
- /* @__PURE__ */ jsxRuntime.jsx(DialogOverlay, {}),
809
- /* @__PURE__ */ jsxRuntime.jsxs(
810
- SheetPrimitive__namespace.Content,
1027
+ }) {
1028
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1029
+ "div",
811
1030
  {
1031
+ "data-slot": "dialog-footer",
812
1032
  className: cn(
813
- "bg-bg-default data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 border-divider fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:rounded-lg md:w-full",
1033
+ "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
814
1034
  className
815
1035
  ),
816
1036
  ...props,
817
1037
  children: [
818
1038
  children,
819
- /* @__PURE__ */ jsxRuntime.jsxs(
820
- SheetPrimitive__namespace.Close,
821
- {
822
- className: cn(
823
- "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-text-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none",
824
- !showCloseButton && "hidden"
825
- ),
826
- children: [
827
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4" }),
828
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
829
- ]
830
- }
831
- )
1039
+ showCloseButton && /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Close, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Button, { variant: "outline", children: "Close" }) })
832
1040
  ]
833
1041
  }
834
- )
835
- ] }), "DialogContent");
836
- DialogContent.displayName = SheetPrimitive__namespace.Content.displayName;
837
- var DialogHeader = /* @__PURE__ */ __name(({
838
- className,
839
- ...props
840
- }) => /* @__PURE__ */ jsxRuntime.jsx(
841
- "div",
842
- {
843
- className: cn(
844
- "flex flex-col space-y-1.5 text-center sm:text-left",
845
- className
846
- ),
847
- ...props
848
- }
849
- ), "DialogHeader");
850
- DialogHeader.displayName = "DialogHeader";
851
- var DialogFooter = /* @__PURE__ */ __name(({
852
- className,
853
- ...props
854
- }) => /* @__PURE__ */ jsxRuntime.jsx(
855
- "div",
856
- {
857
- className: cn(
858
- "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
859
- className
860
- ),
861
- ...props
862
- }
863
- ), "DialogFooter");
864
- DialogFooter.displayName = "DialogFooter";
865
- var DialogTitle = /* @__PURE__ */ __name(({
1042
+ );
1043
+ }
1044
+ __name(DialogFooter, "DialogFooter");
1045
+ function DialogTitle({
866
1046
  className,
867
1047
  ...props
868
- }) => /* @__PURE__ */ jsxRuntime.jsx(
869
- SheetPrimitive__namespace.Title,
870
- {
871
- className: cn(
872
- "text-lg leading-none font-semibold tracking-tight",
873
- className
874
- ),
875
- ...props
876
- }
877
- ), "DialogTitle");
878
- DialogTitle.displayName = SheetPrimitive__namespace.Title.displayName;
879
- var DialogDescription = /* @__PURE__ */ __name(({
1048
+ }) {
1049
+ return /* @__PURE__ */ jsxRuntime.jsx(
1050
+ SheetPrimitive__namespace.Title,
1051
+ {
1052
+ "data-slot": "dialog-title",
1053
+ className: cn("text-lg leading-none font-semibold tracking-tight", className),
1054
+ ...props
1055
+ }
1056
+ );
1057
+ }
1058
+ __name(DialogTitle, "DialogTitle");
1059
+ function DialogDescription({
880
1060
  className,
881
1061
  ...props
882
- }) => /* @__PURE__ */ jsxRuntime.jsx(
883
- SheetPrimitive__namespace.Description,
884
- {
885
- className: cn("text-text-secondary text-sm", className),
886
- ...props
887
- }
888
- ), "DialogDescription");
889
- DialogDescription.displayName = SheetPrimitive__namespace.Description.displayName;
1062
+ }) {
1063
+ return /* @__PURE__ */ jsxRuntime.jsx(
1064
+ SheetPrimitive__namespace.Description,
1065
+ {
1066
+ "data-slot": "dialog-description",
1067
+ className: cn("text-muted-foreground text-sm", className),
1068
+ ...props
1069
+ }
1070
+ );
1071
+ }
1072
+ __name(DialogDescription, "DialogDescription");
890
1073
  var Command = /* @__PURE__ */ __name(({
891
1074
  className,
892
1075
  ...props
@@ -1246,6 +1429,103 @@ var DrawerDescription = /* @__PURE__ */ __name(({
1246
1429
  }
1247
1430
  ), "DrawerDescription");
1248
1431
  DrawerDescription.displayName = vaul.Drawer.Description.displayName;
1432
+ function Empty({ className, ...props }) {
1433
+ return /* @__PURE__ */ jsxRuntime.jsx(
1434
+ "div",
1435
+ {
1436
+ "data-slot": "empty",
1437
+ className: cn(
1438
+ "flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg border-dashed p-6 text-center text-balance md:p-12",
1439
+ className
1440
+ ),
1441
+ ...props
1442
+ }
1443
+ );
1444
+ }
1445
+ __name(Empty, "Empty");
1446
+ function EmptyHeader({ className, ...props }) {
1447
+ return /* @__PURE__ */ jsxRuntime.jsx(
1448
+ "div",
1449
+ {
1450
+ "data-slot": "empty-header",
1451
+ className: cn(
1452
+ "flex max-w-sm flex-col items-center gap-2 text-center",
1453
+ className
1454
+ ),
1455
+ ...props
1456
+ }
1457
+ );
1458
+ }
1459
+ __name(EmptyHeader, "EmptyHeader");
1460
+ var emptyMediaVariants = classVarianceAuthority.cva(
1461
+ "flex shrink-0 items-center justify-center mb-2 [&_svg]:pointer-events-none [&_svg]:shrink-0",
1462
+ {
1463
+ variants: {
1464
+ variant: {
1465
+ default: "bg-transparent",
1466
+ icon: 'bg-muted text-foreground flex size-10 shrink-0 items-center justify-center rounded-lg [&_svg:not([class*="size-"])]:size-6'
1467
+ }
1468
+ },
1469
+ defaultVariants: {
1470
+ variant: "default"
1471
+ }
1472
+ }
1473
+ );
1474
+ function EmptyMedia({
1475
+ className,
1476
+ variant = "default",
1477
+ ...props
1478
+ }) {
1479
+ return /* @__PURE__ */ jsxRuntime.jsx(
1480
+ "div",
1481
+ {
1482
+ "data-slot": "empty-icon",
1483
+ "data-variant": variant,
1484
+ className: cn(emptyMediaVariants({ variant, className })),
1485
+ ...props
1486
+ }
1487
+ );
1488
+ }
1489
+ __name(EmptyMedia, "EmptyMedia");
1490
+ function EmptyTitle({ className, ...props }) {
1491
+ return /* @__PURE__ */ jsxRuntime.jsx(
1492
+ "div",
1493
+ {
1494
+ "data-slot": "empty-title",
1495
+ className: cn("text-lg font-medium tracking-tight", className),
1496
+ ...props
1497
+ }
1498
+ );
1499
+ }
1500
+ __name(EmptyTitle, "EmptyTitle");
1501
+ function EmptyDescription({ className, ...props }) {
1502
+ return /* @__PURE__ */ jsxRuntime.jsx(
1503
+ "div",
1504
+ {
1505
+ "data-slot": "empty-description",
1506
+ className: cn(
1507
+ "text-muted-foreground [&>a:hover]:text-primary text-sm/relaxed [&>a]:underline [&>a]:underline-offset-4",
1508
+ className
1509
+ ),
1510
+ ...props
1511
+ }
1512
+ );
1513
+ }
1514
+ __name(EmptyDescription, "EmptyDescription");
1515
+ function EmptyContent({ className, ...props }) {
1516
+ return /* @__PURE__ */ jsxRuntime.jsx(
1517
+ "div",
1518
+ {
1519
+ "data-slot": "empty-content",
1520
+ className: cn(
1521
+ "flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-balance",
1522
+ className
1523
+ ),
1524
+ ...props
1525
+ }
1526
+ );
1527
+ }
1528
+ __name(EmptyContent, "EmptyContent");
1249
1529
  var DropdownMenu = DropdownMenuPrimitive__namespace.Root;
1250
1530
  var DropdownMenuTrigger = DropdownMenuPrimitive__namespace.Trigger;
1251
1531
  var DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
@@ -1397,27 +1677,7 @@ var DropdownMenuShortcut = /* @__PURE__ */ __name(({
1397
1677
  );
1398
1678
  }, "DropdownMenuShortcut");
1399
1679
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
1400
- var Separator3 = /* @__PURE__ */ __name(({
1401
- className,
1402
- orientation = "horizontal",
1403
- decorative = true,
1404
- ...props
1405
- }) => /* @__PURE__ */ jsxRuntime.jsx(
1406
- SeparatorPrimitive__namespace.Root,
1407
- {
1408
- className: cn(
1409
- "bg-divider shrink-0",
1410
- orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
1411
- className
1412
- ),
1413
- decorative,
1414
- orientation,
1415
- ...props
1416
- }
1417
- ), "Separator");
1418
- Separator3.displayName = SeparatorPrimitive__namespace.Root.displayName;
1419
- var separator_default = Separator3;
1420
- var Field = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1680
+ var Field = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1421
1681
  "div",
1422
1682
  {
1423
1683
  ref,
@@ -1427,7 +1687,7 @@ var Field = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @_
1427
1687
  }
1428
1688
  ));
1429
1689
  Field.displayName = "Field";
1430
- var FieldLabel = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1690
+ var FieldLabel = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1431
1691
  "label",
1432
1692
  {
1433
1693
  ref,
@@ -1440,7 +1700,7 @@ var FieldLabel = React2__namespace.forwardRef(({ className, ...props }, ref) =>
1440
1700
  }
1441
1701
  ));
1442
1702
  FieldLabel.displayName = "FieldLabel";
1443
- var FieldDescription = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1703
+ var FieldDescription = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1444
1704
  "p",
1445
1705
  {
1446
1706
  ref,
@@ -1454,7 +1714,7 @@ var FieldDescription = React2__namespace.forwardRef(({ className, ...props }, re
1454
1714
  }
1455
1715
  ));
1456
1716
  FieldDescription.displayName = "FieldDescription";
1457
- var FieldGroup = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1717
+ var FieldGroup = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1458
1718
  "div",
1459
1719
  {
1460
1720
  ref,
@@ -1468,7 +1728,7 @@ var FieldGroup = React2__namespace.forwardRef(({ className, ...props }, ref) =>
1468
1728
  }
1469
1729
  ));
1470
1730
  FieldGroup.displayName = "FieldGroup";
1471
- var FieldSeparator = React2__namespace.forwardRef(({ children, className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1731
+ var FieldSeparator = React19__namespace.forwardRef(({ children, className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1472
1732
  "div",
1473
1733
  {
1474
1734
  ref,
@@ -1513,7 +1773,7 @@ var HoverCardContent = /* @__PURE__ */ __name(({
1513
1773
  }
1514
1774
  ), "HoverCardContent");
1515
1775
  HoverCardContent.displayName = HoverCardPrimitive__namespace.Content.displayName;
1516
- var InputOTP = React2__namespace.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1776
+ var InputOTP = React19__namespace.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1517
1777
  inputOtp.OTPInput,
1518
1778
  {
1519
1779
  ref,
@@ -1524,33 +1784,356 @@ var InputOTP = React2__namespace.forwardRef(({ className, containerClassName, ..
1524
1784
  className: cn("disabled:cursor-not-allowed", className),
1525
1785
  ...props
1526
1786
  }
1527
- ));
1528
- InputOTP.displayName = "InputOTP";
1529
- var InputOTPGroup = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center", className), ...props }));
1530
- InputOTPGroup.displayName = "InputOTPGroup";
1531
- var InputOTPSlot = React2__namespace.forwardRef(({ index, className, ...props }, ref) => {
1532
- const inputOTPContext = React2__namespace.useContext(inputOtp.OTPInputContext);
1533
- const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
1534
- return /* @__PURE__ */ jsxRuntime.jsxs(
1787
+ ));
1788
+ InputOTP.displayName = "InputOTP";
1789
+ var InputOTPGroup = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("flex items-center", className), ...props }));
1790
+ InputOTPGroup.displayName = "InputOTPGroup";
1791
+ var InputOTPSlot = React19__namespace.forwardRef(({ index, className, ...props }, ref) => {
1792
+ const inputOTPContext = React19__namespace.useContext(inputOtp.OTPInputContext);
1793
+ const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
1794
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1795
+ "div",
1796
+ {
1797
+ ref,
1798
+ className: cn(
1799
+ "relative flex h-9 w-9 items-center justify-center border-y border-r border-input text-sm shadow-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md",
1800
+ isActive && "z-10 ring-1 ring-ring",
1801
+ className
1802
+ ),
1803
+ ...props,
1804
+ children: [
1805
+ char,
1806
+ hasFakeCaret && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })
1807
+ ]
1808
+ }
1809
+ );
1810
+ });
1811
+ InputOTPSlot.displayName = "InputOTPSlot";
1812
+ var InputOTPSeparator = React19__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Dot, {}) }));
1813
+ InputOTPSeparator.displayName = "InputOTPSeparator";
1814
+ function InputGroup({ className, ...props }) {
1815
+ return /* @__PURE__ */ jsxRuntime.jsx(
1816
+ "div",
1817
+ {
1818
+ "data-slot": "input-group",
1819
+ role: "group",
1820
+ className: cn(
1821
+ "group/input-group border-input dark:bg-input/30 relative flex w-full items-center rounded-md border shadow-xs transition-[color,box-shadow] outline-none",
1822
+ "h-9 min-w-0 has-[>textarea]:h-auto",
1823
+ // Variants based on alignment.
1824
+ "has-[>[data-align=inline-start]]:[&>input]:pl-2",
1825
+ "has-[>[data-align=inline-end]]:[&>input]:pr-2",
1826
+ "has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3",
1827
+ "has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3",
1828
+ // Focus state.
1829
+ "has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot=input-group-control]:focus-visible]:ring-[3px]",
1830
+ // Error state.
1831
+ "has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40",
1832
+ className
1833
+ ),
1834
+ ...props
1835
+ }
1836
+ );
1837
+ }
1838
+ __name(InputGroup, "InputGroup");
1839
+ var inputGroupAddonVariants = classVarianceAuthority.cva(
1840
+ 'text-muted-foreground flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium select-none [&>svg:not([class*="size-"])]:size-4 [&>kbd]:rounded-[calc(var(--radius)-5px)] group-data-[disabled=true]/input-group:opacity-50',
1841
+ {
1842
+ variants: {
1843
+ align: {
1844
+ "inline-start": "order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]",
1845
+ "inline-end": "order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]",
1846
+ "block-start": "order-first w-full justify-start px-3 pt-3 [.border-b]:pb-3 group-has-[>input]/input-group:pt-2.5",
1847
+ "block-end": "order-last w-full justify-start px-3 pb-3 [.border-t]:pt-3 group-has-[>input]/input-group:pb-2.5"
1848
+ }
1849
+ },
1850
+ defaultVariants: {
1851
+ align: "inline-start"
1852
+ }
1853
+ }
1854
+ );
1855
+ function InputGroupAddon({
1856
+ className,
1857
+ align = "inline-start",
1858
+ ...props
1859
+ }) {
1860
+ return /* @__PURE__ */ jsxRuntime.jsx(
1861
+ "div",
1862
+ {
1863
+ role: "group",
1864
+ "data-slot": "input-group-addon",
1865
+ "data-align": align,
1866
+ className: cn(inputGroupAddonVariants({ align }), className),
1867
+ onClick: (e) => {
1868
+ if (e.target.closest("button")) {
1869
+ return;
1870
+ }
1871
+ e.currentTarget.parentElement?.querySelector("input")?.focus();
1872
+ },
1873
+ ...props
1874
+ }
1875
+ );
1876
+ }
1877
+ __name(InputGroupAddon, "InputGroupAddon");
1878
+ var inputGroupButtonVariants = classVarianceAuthority.cva("text-sm shadow-none flex gap-2 items-center", {
1879
+ variants: {
1880
+ size: {
1881
+ xs: 'h-6 gap-1 px-2 rounded-[calc(var(--radius)-5px)] [&>svg:not([class*="size-"])]:size-3.5 has-[>svg]:px-2',
1882
+ sm: "h-8 px-2.5 gap-1.5 rounded-md has-[>svg]:px-2.5",
1883
+ "icon-xs": "size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0",
1884
+ "icon-sm": "size-8 p-0 has-[>svg]:p-0"
1885
+ }
1886
+ },
1887
+ defaultVariants: {
1888
+ size: "xs"
1889
+ }
1890
+ });
1891
+ function InputGroupButton({
1892
+ className,
1893
+ type = "button",
1894
+ variant = "ghost",
1895
+ size = "xs",
1896
+ ...props
1897
+ }) {
1898
+ return /* @__PURE__ */ jsxRuntime.jsx(
1899
+ Button,
1900
+ {
1901
+ type,
1902
+ "data-size": size,
1903
+ variant,
1904
+ className: cn(inputGroupButtonVariants({ size }), className),
1905
+ ...props
1906
+ }
1907
+ );
1908
+ }
1909
+ __name(InputGroupButton, "InputGroupButton");
1910
+ function InputGroupText({ className, ...props }) {
1911
+ return /* @__PURE__ */ jsxRuntime.jsx(
1912
+ "span",
1913
+ {
1914
+ className: cn(
1915
+ 'text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*="size-"])]:size-4',
1916
+ className
1917
+ ),
1918
+ ...props
1919
+ }
1920
+ );
1921
+ }
1922
+ __name(InputGroupText, "InputGroupText");
1923
+ function InputGroupInput({
1924
+ className,
1925
+ ...props
1926
+ }) {
1927
+ return /* @__PURE__ */ jsxRuntime.jsx(
1928
+ "input",
1929
+ {
1930
+ "data-slot": "input-group-control",
1931
+ className: cn(
1932
+ "flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent h-9 px-3 text-sm outline-none",
1933
+ className
1934
+ ),
1935
+ ...props
1936
+ }
1937
+ );
1938
+ }
1939
+ __name(InputGroupInput, "InputGroupInput");
1940
+ function InputGroupTextarea({
1941
+ className,
1942
+ ...props
1943
+ }) {
1944
+ return /* @__PURE__ */ jsxRuntime.jsx(
1945
+ "textarea",
1946
+ {
1947
+ "data-slot": "input-group-control",
1948
+ className: cn(
1949
+ "flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent px-3 text-sm outline-none",
1950
+ className
1951
+ ),
1952
+ ...props
1953
+ }
1954
+ );
1955
+ }
1956
+ __name(InputGroupTextarea, "InputGroupTextarea");
1957
+ function ItemGroup({ className, ...props }) {
1958
+ return /* @__PURE__ */ jsxRuntime.jsx(
1959
+ "div",
1960
+ {
1961
+ role: "list",
1962
+ "data-slot": "item-group",
1963
+ className: cn("group/item-group flex flex-col", className),
1964
+ ...props
1965
+ }
1966
+ );
1967
+ }
1968
+ __name(ItemGroup, "ItemGroup");
1969
+ function ItemSeparator({
1970
+ className,
1971
+ ...props
1972
+ }) {
1973
+ return /* @__PURE__ */ jsxRuntime.jsx(
1974
+ Separator,
1975
+ {
1976
+ "data-slot": "item-separator",
1977
+ orientation: "horizontal",
1978
+ className: cn("my-0", className),
1979
+ ...props
1980
+ }
1981
+ );
1982
+ }
1983
+ __name(ItemSeparator, "ItemSeparator");
1984
+ var itemVariants = classVarianceAuthority.cva(
1985
+ "group/item flex items-center border border-transparent text-sm rounded-md transition-colors [a]:hover:bg-accent/50 [a]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
1986
+ {
1987
+ variants: {
1988
+ variant: {
1989
+ default: "bg-transparent",
1990
+ outline: "border-border",
1991
+ muted: "bg-muted/50"
1992
+ },
1993
+ size: {
1994
+ default: "p-4 gap-4 ",
1995
+ sm: "py-3 px-4 gap-2.5"
1996
+ }
1997
+ },
1998
+ defaultVariants: {
1999
+ variant: "default",
2000
+ size: "default"
2001
+ }
2002
+ }
2003
+ );
2004
+ function Item4({
2005
+ className,
2006
+ variant = "default",
2007
+ size = "default",
2008
+ asChild = false,
2009
+ ...props
2010
+ }) {
2011
+ const Comp = asChild ? reactSlot.Slot : "div";
2012
+ return /* @__PURE__ */ jsxRuntime.jsx(
2013
+ Comp,
2014
+ {
2015
+ "data-slot": "item",
2016
+ "data-variant": variant,
2017
+ "data-size": size,
2018
+ className: cn(itemVariants({ variant, size, className })),
2019
+ ...props
2020
+ }
2021
+ );
2022
+ }
2023
+ __name(Item4, "Item");
2024
+ var itemMediaVariants = classVarianceAuthority.cva(
2025
+ "flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5",
2026
+ {
2027
+ variants: {
2028
+ variant: {
2029
+ default: "bg-transparent",
2030
+ icon: 'size-8 border rounded-sm bg-muted [&_svg:not([class*="size-"])]:size-4',
2031
+ image: "size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover"
2032
+ }
2033
+ },
2034
+ defaultVariants: {
2035
+ variant: "default"
2036
+ }
2037
+ }
2038
+ );
2039
+ function ItemMedia({
2040
+ className,
2041
+ variant = "default",
2042
+ ...props
2043
+ }) {
2044
+ return /* @__PURE__ */ jsxRuntime.jsx(
1535
2045
  "div",
1536
2046
  {
1537
- ref,
2047
+ "data-slot": "item-media",
2048
+ "data-variant": variant,
2049
+ className: cn(itemMediaVariants({ variant, className })),
2050
+ ...props
2051
+ }
2052
+ );
2053
+ }
2054
+ __name(ItemMedia, "ItemMedia");
2055
+ function ItemContent({ className, ...props }) {
2056
+ return /* @__PURE__ */ jsxRuntime.jsx(
2057
+ "div",
2058
+ {
2059
+ "data-slot": "item-content",
1538
2060
  className: cn(
1539
- "relative flex h-9 w-9 items-center justify-center border-y border-r border-input text-sm shadow-sm transition-all first:rounded-l-md first:border-l last:rounded-r-md",
1540
- isActive && "z-10 ring-1 ring-ring",
2061
+ "flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none",
1541
2062
  className
1542
2063
  ),
1543
- ...props,
1544
- children: [
1545
- char,
1546
- hasFakeCaret && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })
1547
- ]
2064
+ ...props
1548
2065
  }
1549
2066
  );
1550
- });
1551
- InputOTPSlot.displayName = "InputOTPSlot";
1552
- var InputOTPSeparator = React2__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Dot, {}) }));
1553
- InputOTPSeparator.displayName = "InputOTPSeparator";
2067
+ }
2068
+ __name(ItemContent, "ItemContent");
2069
+ function ItemTitle({ className, ...props }) {
2070
+ return /* @__PURE__ */ jsxRuntime.jsx(
2071
+ "div",
2072
+ {
2073
+ "data-slot": "item-title",
2074
+ className: cn(
2075
+ "flex w-fit items-center gap-2 text-sm leading-snug font-medium",
2076
+ className
2077
+ ),
2078
+ ...props
2079
+ }
2080
+ );
2081
+ }
2082
+ __name(ItemTitle, "ItemTitle");
2083
+ function ItemDescription({ className, ...props }) {
2084
+ return /* @__PURE__ */ jsxRuntime.jsx(
2085
+ "p",
2086
+ {
2087
+ "data-slot": "item-description",
2088
+ className: cn(
2089
+ "text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance",
2090
+ "[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",
2091
+ className
2092
+ ),
2093
+ ...props
2094
+ }
2095
+ );
2096
+ }
2097
+ __name(ItemDescription, "ItemDescription");
2098
+ function ItemActions({ className, ...props }) {
2099
+ return /* @__PURE__ */ jsxRuntime.jsx(
2100
+ "div",
2101
+ {
2102
+ "data-slot": "item-actions",
2103
+ className: cn("flex items-center gap-2", className),
2104
+ ...props
2105
+ }
2106
+ );
2107
+ }
2108
+ __name(ItemActions, "ItemActions");
2109
+ function ItemHeader({ className, ...props }) {
2110
+ return /* @__PURE__ */ jsxRuntime.jsx(
2111
+ "div",
2112
+ {
2113
+ "data-slot": "item-header",
2114
+ className: cn(
2115
+ "flex basis-full items-center justify-between gap-2",
2116
+ className
2117
+ ),
2118
+ ...props
2119
+ }
2120
+ );
2121
+ }
2122
+ __name(ItemHeader, "ItemHeader");
2123
+ function ItemFooter({ className, ...props }) {
2124
+ return /* @__PURE__ */ jsxRuntime.jsx(
2125
+ "div",
2126
+ {
2127
+ "data-slot": "item-footer",
2128
+ className: cn(
2129
+ "flex basis-full items-center justify-between gap-2",
2130
+ className
2131
+ ),
2132
+ ...props
2133
+ }
2134
+ );
2135
+ }
2136
+ __name(ItemFooter, "ItemFooter");
1554
2137
  function Kbd({ className, ...props }) {
1555
2138
  return /* @__PURE__ */ jsxRuntime.jsx(
1556
2139
  "kbd",
@@ -1608,7 +2191,7 @@ function MenubarSub({
1608
2191
  return /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.Sub, { "data-slot": "menubar-sub", ...props });
1609
2192
  }
1610
2193
  __name(MenubarSub, "MenubarSub");
1611
- var Menubar = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2194
+ var Menubar = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1612
2195
  MenubarPrimitive__namespace.Root,
1613
2196
  {
1614
2197
  ref,
@@ -1620,7 +2203,7 @@ var Menubar = React2__namespace.forwardRef(({ className, ...props }, ref) => /*
1620
2203
  }
1621
2204
  ));
1622
2205
  Menubar.displayName = MenubarPrimitive__namespace.Root.displayName;
1623
- var MenubarTrigger = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2206
+ var MenubarTrigger = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1624
2207
  MenubarPrimitive__namespace.Trigger,
1625
2208
  {
1626
2209
  ref,
@@ -1632,7 +2215,7 @@ var MenubarTrigger = React2__namespace.forwardRef(({ className, ...props }, ref)
1632
2215
  }
1633
2216
  ));
1634
2217
  MenubarTrigger.displayName = MenubarPrimitive__namespace.Trigger.displayName;
1635
- var MenubarSubTrigger = React2__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2218
+ var MenubarSubTrigger = React19__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1636
2219
  MenubarPrimitive__namespace.SubTrigger,
1637
2220
  {
1638
2221
  ref,
@@ -1649,7 +2232,7 @@ var MenubarSubTrigger = React2__namespace.forwardRef(({ className, inset, childr
1649
2232
  }
1650
2233
  ));
1651
2234
  MenubarSubTrigger.displayName = MenubarPrimitive__namespace.SubTrigger.displayName;
1652
- var MenubarSubContent = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2235
+ var MenubarSubContent = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1653
2236
  MenubarPrimitive__namespace.SubContent,
1654
2237
  {
1655
2238
  ref,
@@ -1661,7 +2244,7 @@ var MenubarSubContent = React2__namespace.forwardRef(({ className, ...props }, r
1661
2244
  }
1662
2245
  ));
1663
2246
  MenubarSubContent.displayName = MenubarPrimitive__namespace.SubContent.displayName;
1664
- var MenubarContent = React2__namespace.forwardRef(
2247
+ var MenubarContent = React19__namespace.forwardRef(
1665
2248
  ({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(MenubarPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
1666
2249
  MenubarPrimitive__namespace.Content,
1667
2250
  {
@@ -1678,7 +2261,7 @@ var MenubarContent = React2__namespace.forwardRef(
1678
2261
  ) })
1679
2262
  );
1680
2263
  MenubarContent.displayName = MenubarPrimitive__namespace.Content.displayName;
1681
- var MenubarItem = React2__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2264
+ var MenubarItem = React19__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1682
2265
  MenubarPrimitive__namespace.Item,
1683
2266
  {
1684
2267
  ref,
@@ -1691,7 +2274,7 @@ var MenubarItem = React2__namespace.forwardRef(({ className, inset, ...props },
1691
2274
  }
1692
2275
  ));
1693
2276
  MenubarItem.displayName = MenubarPrimitive__namespace.Item.displayName;
1694
- var MenubarCheckboxItem = React2__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2277
+ var MenubarCheckboxItem = React19__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1695
2278
  MenubarPrimitive__namespace.CheckboxItem,
1696
2279
  {
1697
2280
  ref,
@@ -1708,7 +2291,7 @@ var MenubarCheckboxItem = React2__namespace.forwardRef(({ className, children, c
1708
2291
  }
1709
2292
  ));
1710
2293
  MenubarCheckboxItem.displayName = MenubarPrimitive__namespace.CheckboxItem.displayName;
1711
- var MenubarRadioItem = React2__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2294
+ var MenubarRadioItem = React19__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1712
2295
  MenubarPrimitive__namespace.RadioItem,
1713
2296
  {
1714
2297
  ref,
@@ -1724,7 +2307,7 @@ var MenubarRadioItem = React2__namespace.forwardRef(({ className, children, ...p
1724
2307
  }
1725
2308
  ));
1726
2309
  MenubarRadioItem.displayName = MenubarPrimitive__namespace.RadioItem.displayName;
1727
- var MenubarLabel = React2__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2310
+ var MenubarLabel = React19__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1728
2311
  MenubarPrimitive__namespace.Label,
1729
2312
  {
1730
2313
  ref,
@@ -1737,7 +2320,7 @@ var MenubarLabel = React2__namespace.forwardRef(({ className, inset, ...props },
1737
2320
  }
1738
2321
  ));
1739
2322
  MenubarLabel.displayName = MenubarPrimitive__namespace.Label.displayName;
1740
- var MenubarSeparator = React2__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2323
+ var MenubarSeparator = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1741
2324
  MenubarPrimitive__namespace.Separator,
1742
2325
  {
1743
2326
  ref,
@@ -1762,7 +2345,7 @@ var MenubarShortcut = /* @__PURE__ */ __name(({
1762
2345
  );
1763
2346
  }, "MenubarShortcut");
1764
2347
  MenubarShortcut.displayName = "MenubarShortcut";
1765
- var NavigationMenu = React2__namespace.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2348
+ var NavigationMenu = React19__namespace.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1766
2349
  NavigationMenuPrimitive__namespace.Root,
1767
2350
  {
1768
2351
  ref,
@@ -1775,7 +2358,7 @@ var NavigationMenu = React2__namespace.default.forwardRef(({ className, children
1775
2358
  }
1776
2359
  ));
1777
2360
  NavigationMenu.displayName = NavigationMenuPrimitive__namespace.Root.displayName;
1778
- var NavigationMenuList = React2__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2361
+ var NavigationMenuList = React19__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1779
2362
  NavigationMenuPrimitive__namespace.List,
1780
2363
  {
1781
2364
  ref,
@@ -1787,7 +2370,7 @@ var NavigationMenuList = React2__namespace.default.forwardRef(({ className, ...p
1787
2370
  }
1788
2371
  ));
1789
2372
  NavigationMenuList.displayName = NavigationMenuPrimitive__namespace.List.displayName;
1790
- var NavigationMenuItem = React2__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2373
+ var NavigationMenuItem = React19__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1791
2374
  NavigationMenuPrimitive__namespace.Item,
1792
2375
  {
1793
2376
  ref,
@@ -1799,7 +2382,7 @@ NavigationMenuItem.displayName = "NavigationMenuItem";
1799
2382
  var navigationMenuTriggerStyle = classVarianceAuthority.cva(
1800
2383
  "group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-level-1 text-foreground hover:text-accent focus:text-accent focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-level-1/50 data-[state=open]:bg-level-1/50"
1801
2384
  );
1802
- var NavigationMenuTrigger = React2__namespace.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
2385
+ var NavigationMenuTrigger = React19__namespace.default.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
1803
2386
  NavigationMenuPrimitive__namespace.Trigger,
1804
2387
  {
1805
2388
  ref,
@@ -1819,7 +2402,7 @@ var NavigationMenuTrigger = React2__namespace.default.forwardRef(({ className, c
1819
2402
  }
1820
2403
  ));
1821
2404
  NavigationMenuTrigger.displayName = NavigationMenuPrimitive__namespace.Trigger.displayName;
1822
- var NavigationMenuContent = React2__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2405
+ var NavigationMenuContent = React19__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1823
2406
  NavigationMenuPrimitive__namespace.Content,
1824
2407
  {
1825
2408
  ref,
@@ -1834,7 +2417,7 @@ var NavigationMenuContent = React2__namespace.default.forwardRef(({ className, .
1834
2417
  ));
1835
2418
  NavigationMenuContent.displayName = NavigationMenuPrimitive__namespace.Content.displayName;
1836
2419
  var NavigationMenuLink = NavigationMenuPrimitive__namespace.Link;
1837
- var NavigationMenuViewport = React2__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsxRuntime.jsx(
2420
+ var NavigationMenuViewport = React19__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsxRuntime.jsx(
1838
2421
  NavigationMenuPrimitive__namespace.Viewport,
1839
2422
  {
1840
2423
  className: cn(
@@ -1847,7 +2430,7 @@ var NavigationMenuViewport = React2__namespace.default.forwardRef(({ className,
1847
2430
  }
1848
2431
  ) }));
1849
2432
  NavigationMenuViewport.displayName = NavigationMenuPrimitive__namespace.Viewport.displayName;
1850
- var NavigationMenuIndicator = React2__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
2433
+ var NavigationMenuIndicator = React19__namespace.default.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1851
2434
  NavigationMenuPrimitive__namespace.Indicator,
1852
2435
  {
1853
2436
  ref,
@@ -2201,49 +2784,93 @@ var TableCaption = /* @__PURE__ */ __name(({
2201
2784
  }
2202
2785
  ), "TableCaption");
2203
2786
  TableCaption.displayName = "TableCaption";
2204
- var Tabs = TabsPrimitive__namespace.Root;
2205
- var TabsList = /* @__PURE__ */ __name(({
2787
+ function Tabs({
2206
2788
  className,
2789
+ orientation = "horizontal",
2207
2790
  ...props
2208
- }) => /* @__PURE__ */ jsxRuntime.jsx(
2209
- TabsPrimitive__namespace.List,
2791
+ }) {
2792
+ return /* @__PURE__ */ jsxRuntime.jsx(
2793
+ TabsPrimitive__namespace.Root,
2794
+ {
2795
+ "data-slot": "tabs",
2796
+ "data-orientation": orientation,
2797
+ orientation,
2798
+ className: cn(
2799
+ "group/tabs flex data-[orientation=horizontal]:flex-col",
2800
+ className
2801
+ ),
2802
+ ...props
2803
+ }
2804
+ );
2805
+ }
2806
+ __name(Tabs, "Tabs");
2807
+ var tabsListVariants = classVarianceAuthority.cva(
2808
+ "group/tabs-list text-muted-foreground inline-flex w-fit items-center justify-center group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col",
2210
2809
  {
2211
- className: cn(
2212
- "text-text-tertiary inline-flex h-10 items-center justify-center rounded-md bg-[#27252B] p-1",
2213
- className
2214
- ),
2215
- ...props
2810
+ variants: {
2811
+ variant: {
2812
+ default: "bg-muted rounded-lg p-1",
2813
+ line: "gap-1 bg-transparent"
2814
+ }
2815
+ },
2816
+ defaultVariants: {
2817
+ variant: "default"
2818
+ }
2216
2819
  }
2217
- ), "TabsList");
2218
- TabsList.displayName = TabsPrimitive__namespace.List.displayName;
2219
- var TabsTrigger = /* @__PURE__ */ __name(({
2820
+ );
2821
+ function TabsList({
2220
2822
  className,
2823
+ variant = "default",
2221
2824
  ...props
2222
- }) => /* @__PURE__ */ jsxRuntime.jsx(
2223
- TabsPrimitive__namespace.Trigger,
2224
- {
2225
- className: cn(
2226
- "ring-offset-background focus-visible:ring-ring inline-flex items-center justify-center rounded-md px-3 py-1.5 text-sm font-medium whitespace-nowrap transition-all focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-[#2D3239] data-[state=active]:text-white data-[state=active]:shadow-xs",
2227
- className
2228
- ),
2229
- ...props
2230
- }
2231
- ), "TabsTrigger");
2232
- TabsTrigger.displayName = TabsPrimitive__namespace.Trigger.displayName;
2233
- var TabsContent = /* @__PURE__ */ __name(({
2825
+ }) {
2826
+ return /* @__PURE__ */ jsxRuntime.jsx(
2827
+ TabsPrimitive__namespace.List,
2828
+ {
2829
+ "data-slot": "tabs-list",
2830
+ "data-variant": variant,
2831
+ className: cn(tabsListVariants({ variant }), className),
2832
+ ...props
2833
+ }
2834
+ );
2835
+ }
2836
+ __name(TabsList, "TabsList");
2837
+ function TabsTrigger({
2234
2838
  className,
2235
2839
  ...props
2236
- }) => /* @__PURE__ */ jsxRuntime.jsx(
2237
- TabsPrimitive__namespace.Content,
2238
- {
2239
- className: cn(
2240
- "ring-offset-background focus-visible:ring-ring mt-3 focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-hidden",
2241
- className
2242
- ),
2243
- ...props
2244
- }
2245
- ), "TabsContent");
2246
- TabsContent.displayName = TabsPrimitive__namespace.Content.displayName;
2840
+ }) {
2841
+ return /* @__PURE__ */ jsxRuntime.jsx(
2842
+ TabsPrimitive__namespace.Trigger,
2843
+ {
2844
+ "data-slot": "tabs-trigger",
2845
+ className: cn(
2846
+ "focus-visible:border-ring focus-visible:ring-ring/50 text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
2847
+ // Default variant styles
2848
+ "group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent",
2849
+ // Active state
2850
+ "data-[state=active]:bg-background dark:data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 data-[state=active]:text-foreground data-[state=active]:shadow-sm",
2851
+ // Line variant indicator
2852
+ "after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",
2853
+ className
2854
+ ),
2855
+ ...props
2856
+ }
2857
+ );
2858
+ }
2859
+ __name(TabsTrigger, "TabsTrigger");
2860
+ function TabsContent({
2861
+ className,
2862
+ ...props
2863
+ }) {
2864
+ return /* @__PURE__ */ jsxRuntime.jsx(
2865
+ TabsPrimitive__namespace.Content,
2866
+ {
2867
+ "data-slot": "tabs-content",
2868
+ className: cn("flex-1 outline-none mt-2", className),
2869
+ ...props
2870
+ }
2871
+ );
2872
+ }
2873
+ __name(TabsContent, "TabsContent");
2247
2874
  var TooltipProvider = TooltipPrimitive__namespace.Provider;
2248
2875
  var Tooltip = TooltipPrimitive__namespace.Root;
2249
2876
  var TooltipTrigger = TooltipPrimitive__namespace.Trigger;
@@ -2273,7 +2900,7 @@ TooltipContent.displayName = TooltipPrimitive__namespace.Content.displayName;
2273
2900
  var DialogVideoController = /* @__PURE__ */ __name(({
2274
2901
  children
2275
2902
  }) => {
2276
- const [open, setOpen] = React2.useState(false);
2903
+ const [open, setOpen] = React19.useState(false);
2277
2904
  const onOpenChange = /* @__PURE__ */ __name((b) => {
2278
2905
  setOpen(b);
2279
2906
  const videos = document.getElementsByTagName("video");
@@ -2286,9 +2913,9 @@ var DialogVideoController = /* @__PURE__ */ __name(({
2286
2913
  }
2287
2914
  });
2288
2915
  }, "onOpenChange");
2289
- const updatedChildren = React2__namespace.default.Children.map(
2916
+ const updatedChildren = React19__namespace.default.Children.map(
2290
2917
  children,
2291
- (child) => React2__namespace.default.cloneElement(
2918
+ (child) => React19__namespace.default.cloneElement(
2292
2919
  child,
2293
2920
  { open, onOpenChange }
2294
2921
  )
@@ -2356,16 +2983,19 @@ var ApplyTypography = /* @__PURE__ */ __name(({
2356
2983
  var AspectRatio = AspectRatioPrimitive__namespace.Root;
2357
2984
  var aspect_ratio_default = AspectRatio;
2358
2985
  var badgeVariants = classVarianceAuthority.cva(
2359
- "focus:ring-ring border-divider inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:ring-2 focus:ring-offset-2 focus:outline-hidden",
2986
+ "inline-flex items-center justify-center w-fit whitespace-nowrap shrink-0 rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] focus-visible:outline-none aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive [&>svg]:pointer-events-none overflow-hidden",
2360
2987
  {
2361
2988
  variants: {
2362
2989
  variant: {
2363
- default: "bg-primary text-primary-foreground hover:bg-primary/80 border-transparent shadow",
2990
+ default: "bg-primary text-primary-foreground hover:bg-primary/90 border-transparent shadow-sm",
2364
2991
  secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 border-transparent",
2365
- destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/80 border-transparent shadow",
2366
- outline: "hover:bg-bg-secondary text-text-secondary hover:text-text-default border border-gray-500 bg-transparent shadow-xs",
2367
- inputAdornment: "bg-gray-600 px-2 font-medium text-white",
2368
- tags: "text-text-secondary border-divider bg-bg-quaternary rounded-lg px-2 py-1 font-normal capitalize"
2992
+ destructive: "bg-destructive text-white hover:bg-destructive/90 border-transparent shadow-sm focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
2993
+ outline: "text-foreground border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground",
2994
+ ghost: "hover:bg-accent hover:text-accent-foreground border-transparent",
2995
+ link: "text-primary underline-offset-4 hover:underline border-transparent",
2996
+ // Hanzo-specific variants for backward compatibility
2997
+ inputAdornment: "bg-gray-600 px-2 font-medium text-white border-transparent",
2998
+ tags: "text-muted-foreground border-border bg-muted rounded-lg px-2 py-1 font-normal capitalize"
2369
2999
  }
2370
3000
  },
2371
3001
  defaultVariants: {
@@ -2373,12 +3003,24 @@ var badgeVariants = classVarianceAuthority.cva(
2373
3003
  }
2374
3004
  }
2375
3005
  );
2376
- var Badge = React2__namespace.forwardRef(
2377
- ({ className, variant, ...props }, ref) => {
2378
- return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn(badgeVariants({ variant }), className), ...props });
2379
- }
2380
- );
2381
- Badge.displayName = "Badge";
3006
+ function Badge({
3007
+ className,
3008
+ variant = "default",
3009
+ asChild = false,
3010
+ ...props
3011
+ }) {
3012
+ const Comp = asChild ? reactSlot.Slot : "span";
3013
+ return /* @__PURE__ */ jsxRuntime.jsx(
3014
+ Comp,
3015
+ {
3016
+ "data-slot": "badge",
3017
+ "data-variant": variant,
3018
+ className: cn(badgeVariants({ variant }), className),
3019
+ ...props
3020
+ }
3021
+ );
3022
+ }
3023
+ __name(Badge, "Badge");
2382
3024
  var badge_default = Badge;
2383
3025
  var BreakpointIndicator = /* @__PURE__ */ __name(() => {
2384
3026
  if (process?.env?.NODE_ENV !== void 0 && process.env.NODE_ENV === "production") return null;
@@ -2518,7 +3160,7 @@ var DefaultTriggerInner = /* @__PURE__ */ __name(({
2518
3160
  ]
2519
3161
  }
2520
3162
  ), "DefaultTriggerInner");
2521
- var DefaultTrigger = React2__namespace.default.forwardRef(DefaultTriggerInner);
3163
+ var DefaultTrigger = React19__namespace.default.forwardRef(DefaultTriggerInner);
2522
3164
  var Combobox = /* @__PURE__ */ __name(({
2523
3165
  elements,
2524
3166
  initial,
@@ -2541,8 +3183,8 @@ var Combobox = /* @__PURE__ */ __name(({
2541
3183
  Trigger: Trigger14,
2542
3184
  triggerProps
2543
3185
  }) => {
2544
- const [_open, _setOpen] = React2.useState(false);
2545
- const [_current, _setCurrent] = React2.useState(initial ?? null);
3186
+ const [_open, _setOpen] = React19.useState(false);
3187
+ const [_current, _setCurrent] = React19.useState(initial ?? null);
2546
3188
  const handleSelect = /* @__PURE__ */ __name((selString) => {
2547
3189
  const found = elements.find((el) => adaptor.valueEquals(el, selString));
2548
3190
  if (found) {
@@ -2624,10 +3266,10 @@ var Input = /* @__PURE__ */ __name(({
2624
3266
  ref,
2625
3267
  ...props
2626
3268
  }) => {
2627
- const inputRef = React2.useRef(null);
2628
- const startAdornmentRef = React2.useRef(null);
2629
- const endAdornmentRef = React2.useRef(null);
2630
- const [showPassword, setShowPassword] = React2__namespace.useState(false);
3269
+ const inputRef = React19.useRef(null);
3270
+ const startAdornmentRef = React19.useRef(null);
3271
+ const endAdornmentRef = React19.useRef(null);
3272
+ const [showPassword, setShowPassword] = React19__namespace.useState(false);
2631
3273
  const togglePasswordVisibility = /* @__PURE__ */ __name(() => {
2632
3274
  setShowPassword(!showPassword);
2633
3275
  }, "togglePasswordVisibility");
@@ -2638,8 +3280,8 @@ var Input = /* @__PURE__ */ __name(({
2638
3280
  if (endAdornment) {
2639
3281
  style.paddingRight = `${(endAdornmentRef?.current?.offsetWidth ?? 0) + 20}px`;
2640
3282
  }
2641
- React2.useImperativeHandle(ref, () => inputRef.current, []);
2642
- React2.useEffect(() => {
3283
+ React19.useImperativeHandle(ref, () => inputRef.current, []);
3284
+ React19.useEffect(() => {
2643
3285
  if (props.autoFocus) {
2644
3286
  setTimeout(() => {
2645
3287
  inputRef?.current?.focus();
@@ -2684,7 +3326,7 @@ var Input = /* @__PURE__ */ __name(({
2684
3326
  children: endAdornment
2685
3327
  }
2686
3328
  ) : null,
2687
- endAdornment && typeof endAdornment !== "string" && React2__namespace.isValidElement(endAdornment) ? React2__namespace.cloneElement(endAdornment, {
3329
+ endAdornment && typeof endAdornment !== "string" && React19__namespace.isValidElement(endAdornment) ? React19__namespace.cloneElement(endAdornment, {
2688
3330
  ref: endAdornmentRef
2689
3331
  }) : null,
2690
3332
  type === "password" && !hidePasswordToggle && /* @__PURE__ */ jsxRuntime.jsx(
@@ -2712,7 +3354,7 @@ var Label5 = /* @__PURE__ */ __name(({
2712
3354
  }) => /* @__PURE__ */ jsxRuntime.jsx(LabelPrimitive__namespace.Root, { className: cn(labelVariants(), className), ...props }), "Label");
2713
3355
  Label5.displayName = LabelPrimitive__namespace.Root.displayName;
2714
3356
  var label_default = Label5;
2715
- function Item7({
3357
+ function Item8({
2716
3358
  value,
2717
3359
  label,
2718
3360
  className,
@@ -2737,7 +3379,7 @@ function Item7({
2737
3379
  }
2738
3380
  );
2739
3381
  }
2740
- __name(Item7, "Item");
3382
+ __name(Item8, "Item");
2741
3383
  function ListBox({
2742
3384
  values,
2743
3385
  labels,
@@ -2748,7 +3390,7 @@ function ListBox({
2748
3390
  itemClx = ""
2749
3391
  }) {
2750
3392
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("border rounded-md select-none", clx), children: values.map((val, i) => /* @__PURE__ */ jsxRuntime.jsx(
2751
- Item7,
3393
+ Item8,
2752
3394
  {
2753
3395
  value: val,
2754
3396
  label: labels[i],
@@ -2786,6 +3428,55 @@ var LoadingSpinner = /* @__PURE__ */ __name(({
2786
3428
  );
2787
3429
  }, "LoadingSpinner");
2788
3430
  var loading_spinner_default = LoadingSpinner;
3431
+ var NativeSelect = React19__namespace.forwardRef(
3432
+ ({ className, size = "default", ...props }, ref) => {
3433
+ return /* @__PURE__ */ jsxRuntime.jsxs(
3434
+ "div",
3435
+ {
3436
+ className: "group/native-select relative w-fit has-[select:disabled]:opacity-50",
3437
+ "data-slot": "native-select-wrapper",
3438
+ children: [
3439
+ /* @__PURE__ */ jsxRuntime.jsx(
3440
+ "select",
3441
+ {
3442
+ ref,
3443
+ "data-slot": "native-select",
3444
+ "data-size": size,
3445
+ className: cn(
3446
+ "border-input placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 dark:hover:bg-input/50 h-9 w-full min-w-0 appearance-none rounded-md border bg-transparent px-3 py-2 pr-9 text-sm shadow-xs transition-[color,box-shadow] outline-none disabled:pointer-events-none disabled:cursor-not-allowed data-[size=sm]:h-8 data-[size=sm]:py-1",
3447
+ "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
3448
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
3449
+ className
3450
+ ),
3451
+ ...props
3452
+ }
3453
+ ),
3454
+ /* @__PURE__ */ jsxRuntime.jsx(
3455
+ lucideReact.ChevronDown,
3456
+ {
3457
+ className: "text-muted-foreground pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 opacity-50 select-none",
3458
+ "aria-hidden": "true",
3459
+ "data-slot": "native-select-icon"
3460
+ }
3461
+ )
3462
+ ]
3463
+ }
3464
+ );
3465
+ }
3466
+ );
3467
+ NativeSelect.displayName = "NativeSelect";
3468
+ var NativeSelectOption = React19__namespace.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("option", { ref, "data-slot": "native-select-option", ...props }));
3469
+ NativeSelectOption.displayName = "NativeSelectOption";
3470
+ var NativeSelectOptGroup = React19__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
3471
+ "optgroup",
3472
+ {
3473
+ ref,
3474
+ "data-slot": "native-select-optgroup",
3475
+ className: cn(className),
3476
+ ...props
3477
+ }
3478
+ ));
3479
+ NativeSelectOptGroup.displayName = "NativeSelectOptGroup";
2789
3480
  var Progress = /* @__PURE__ */ __name(({
2790
3481
  className,
2791
3482
  value,
@@ -2954,7 +3645,7 @@ function Slider({
2954
3645
  max = 100,
2955
3646
  ...props
2956
3647
  }) {
2957
- const _values = React2__namespace.useMemo(
3648
+ const _values = React19__namespace.useMemo(
2958
3649
  () => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
2959
3650
  [value, defaultValue, min, max]
2960
3651
  );
@@ -3018,6 +3709,18 @@ function Skeleton({
3018
3709
  }
3019
3710
  __name(Skeleton, "Skeleton");
3020
3711
  var skeleton_default = Skeleton;
3712
+ function Spinner({ className, ...props }) {
3713
+ return /* @__PURE__ */ jsxRuntime.jsx(
3714
+ lucideReact.Loader2,
3715
+ {
3716
+ role: "status",
3717
+ "aria-label": "Loading",
3718
+ className: cn("size-4 animate-spin", className),
3719
+ ...props
3720
+ }
3721
+ );
3722
+ }
3723
+ __name(Spinner, "Spinner");
3021
3724
  var StepIndicator = /* @__PURE__ */ __name(({
3022
3725
  steps,
3023
3726
  currentStep,
@@ -3098,7 +3801,7 @@ Switch.displayName = SwitchPrimitives__namespace.Root.displayName;
3098
3801
  var switch_default = Switch;
3099
3802
  var DEFAULT_MIN_TEXTAREA_HEIGHT = 32;
3100
3803
  var DEFAULT_MAX_TEXTAREA_HEIGHT = 300;
3101
- var Textarea = React2__namespace.forwardRef(
3804
+ var Textarea = React19__namespace.forwardRef(
3102
3805
  ({
3103
3806
  className,
3104
3807
  minHeight = DEFAULT_MIN_TEXTAREA_HEIGHT,
@@ -3106,9 +3809,9 @@ var Textarea = React2__namespace.forwardRef(
3106
3809
  resize = "none",
3107
3810
  ...props
3108
3811
  }, ref) => {
3109
- const textareaRef = React2__namespace.useRef(null);
3812
+ const textareaRef = React19__namespace.useRef(null);
3110
3813
  const mergedRef = ref || textareaRef;
3111
- React2__namespace.useLayoutEffect(() => {
3814
+ React19__namespace.useLayoutEffect(() => {
3112
3815
  if (!mergedRef.current) return;
3113
3816
  mergedRef.current.style.height = "inherit";
3114
3817
  mergedRef.current.style.height = `${Math.max(
@@ -3190,7 +3893,7 @@ var Toggle = /* @__PURE__ */ __name(({
3190
3893
  }
3191
3894
  ), "Toggle");
3192
3895
  Toggle.displayName = TogglePrimitive__namespace.Root.displayName;
3193
- var ToggleGroupContext = React2__namespace.createContext({
3896
+ var ToggleGroupContext = React19__namespace.createContext({
3194
3897
  size: "default",
3195
3898
  variant: "default"
3196
3899
  });
@@ -3216,7 +3919,7 @@ var ToggleGroupItem = /* @__PURE__ */ __name(({
3216
3919
  size,
3217
3920
  ...props
3218
3921
  }) => {
3219
- const context = React2__namespace.useContext(ToggleGroupContext);
3922
+ const context = React19__namespace.useContext(ToggleGroupContext);
3220
3923
  return /* @__PURE__ */ jsxRuntime.jsx(
3221
3924
  ToggleGroupPrimitive__namespace.Item,
3222
3925
  {
@@ -3233,7 +3936,7 @@ var ToggleGroupItem = /* @__PURE__ */ __name(({
3233
3936
  );
3234
3937
  }, "ToggleGroupItem");
3235
3938
  ToggleGroupItem.displayName = ToggleGroupPrimitive__namespace.Item.displayName;
3236
- var VideoPlayer = React2__namespace.default.forwardRef(
3939
+ var VideoPlayer = React19__namespace.default.forwardRef(
3237
3940
  ({
3238
3941
  sources,
3239
3942
  ...rest
@@ -3243,9 +3946,9 @@ var VideoPlayer = React2__namespace.default.forwardRef(
3243
3946
  );
3244
3947
  var video_player_default = VideoPlayer;
3245
3948
  var useAutoResizeTextarea = /* @__PURE__ */ __name((ref, value, autoResize = true) => {
3246
- const textAreaRef = React2__namespace.useRef(null);
3247
- React2__namespace.useImperativeHandle(ref, () => textAreaRef.current);
3248
- React2__namespace.useEffect(() => {
3949
+ const textAreaRef = React19__namespace.useRef(null);
3950
+ React19__namespace.useImperativeHandle(ref, () => textAreaRef.current);
3951
+ React19__namespace.useEffect(() => {
3249
3952
  const ref2 = textAreaRef?.current;
3250
3953
  const updateTextareaHeight = /* @__PURE__ */ __name(() => {
3251
3954
  if (ref2 && autoResize) {
@@ -3289,10 +3992,10 @@ var ChatInputBase = /* @__PURE__ */ __name(({
3289
3992
  );
3290
3993
  }, "ChatInputBase");
3291
3994
  ChatInputBase.displayName = "ChatInput";
3292
- var ChatInput = React2__namespace.memo(ChatInputBase);
3995
+ var ChatInput = React19__namespace.memo(ChatInputBase);
3293
3996
  function useCombinedRefs(...refs) {
3294
- const targetRef = React2.useRef(null);
3295
- React2.useEffect(() => {
3997
+ const targetRef = React19.useRef(null);
3998
+ React19.useEffect(() => {
3296
3999
  refs.forEach((ref) => {
3297
4000
  if (!ref) return;
3298
4001
  if (typeof ref === "function") {
@@ -3383,7 +4086,7 @@ var useCopyClipboard = /* @__PURE__ */ __name(({
3383
4086
  string,
3384
4087
  onCopyClipboard
3385
4088
  }) => {
3386
- const [isCopied, setIsCopied] = React2.useState(false);
4089
+ const [isCopied, setIsCopied] = React19.useState(false);
3387
4090
  let timeout;
3388
4091
  const onCopy = /* @__PURE__ */ __name(async () => {
3389
4092
  if (!string) return;
@@ -3412,7 +4115,7 @@ var CopyToClipboardIcon = /* @__PURE__ */ __name(({
3412
4115
  });
3413
4116
  const ClipboardIcon = isCopied ? lucideReact.CheckCircle2 : lucideReact.CopyIcon;
3414
4117
  if (asChild && children) {
3415
- return React2.cloneElement(children, {
4118
+ return React19.cloneElement(children, {
3416
4119
  onClick: onCopy,
3417
4120
  className: cn(children.props?.className, className)
3418
4121
  });
@@ -3456,7 +4159,7 @@ var PrettyJsonPrint = /* @__PURE__ */ __name(({
3456
4159
  json,
3457
4160
  className
3458
4161
  }) => {
3459
- const formattedJson = React2.useMemo(() => {
4162
+ const formattedJson = React19.useMemo(() => {
3460
4163
  let formattedValue = `Unparseable JSON: String(${json})`;
3461
4164
  if (typeof json === "object") {
3462
4165
  formattedValue = JSON.stringify(json, null, 2);
@@ -3670,7 +4373,7 @@ var LinkElement = /* @__PURE__ */ __name(({
3670
4373
  ...linkProps
3671
4374
  };
3672
4375
  const Contents = /* @__PURE__ */ __name(() => {
3673
- if (React2__namespace.default.Children.count(children) > 0) return children;
4376
+ if (React19__namespace.default.Children.count(children) > 0) return children;
3674
4377
  const _icon = icon ? icon : def.icon ? def.icon : void 0;
3675
4378
  const _iconAfter = iconAfter ? iconAfter : def.iconAfter ? def.iconAfter : false;
3676
4379
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -3774,7 +4477,7 @@ var YouTubeEmbed = /* @__PURE__ */ __name(({
3774
4477
  caption,
3775
4478
  className = ""
3776
4479
  }) => {
3777
- const [showVideo, setShowVideo] = React2.useState(false);
4480
+ const [showVideo, setShowVideo] = React19.useState(false);
3778
4481
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className, children: showVideo ? /* @__PURE__ */ jsxRuntime.jsx(
3779
4482
  "iframe",
3780
4483
  {
@@ -3830,6 +4533,437 @@ var YouTubeEmbed = /* @__PURE__ */ __name(({
3830
4533
  ) });
3831
4534
  }, "YouTubeEmbed");
3832
4535
  var youtube_embed_default = YouTubeEmbed;
4536
+ var pipPositionStyles = {
4537
+ "bottom-right": { defaultX: /* @__PURE__ */ __name((w, pipW) => w - pipW - 24, "defaultX"), defaultY: /* @__PURE__ */ __name((h, pipH) => h - pipH - 24, "defaultY") },
4538
+ "bottom-left": { defaultX: /* @__PURE__ */ __name(() => 24, "defaultX"), defaultY: /* @__PURE__ */ __name((h, pipH) => h - pipH - 24, "defaultY") },
4539
+ "top-right": { defaultX: /* @__PURE__ */ __name((w, pipW) => w - pipW - 24, "defaultX"), defaultY: /* @__PURE__ */ __name(() => 24, "defaultY") },
4540
+ "top-left": { defaultX: /* @__PURE__ */ __name(() => 24, "defaultX"), defaultY: /* @__PURE__ */ __name(() => 24, "defaultY") }
4541
+ };
4542
+ var youtubePipPlayerVariants = classVarianceAuthority.cva(
4543
+ "relative bg-black rounded-[30px] overflow-hidden",
4544
+ {
4545
+ variants: {
4546
+ size: {
4547
+ sm: "aspect-video max-w-md",
4548
+ md: "aspect-video max-w-2xl",
4549
+ lg: "aspect-video max-w-4xl",
4550
+ full: "w-full aspect-video",
4551
+ hero: "w-full max-h-[calc(100vh-160px)]"
4552
+ }
4553
+ },
4554
+ defaultVariants: {
4555
+ size: "hero"
4556
+ }
4557
+ }
4558
+ );
4559
+ var YouTubePipPlayer = React19__namespace.forwardRef(
4560
+ ({
4561
+ className,
4562
+ size,
4563
+ videoId,
4564
+ rotationInterval = 3e4,
4565
+ enablePip = true,
4566
+ defaultMuted = true,
4567
+ showLiveIndicator = true,
4568
+ enableTvEffects = true,
4569
+ pipPosition = "bottom-right",
4570
+ onPlay,
4571
+ onPause,
4572
+ onPipEnter,
4573
+ onPipExit,
4574
+ onMuteChange,
4575
+ ...props
4576
+ }, ref) => {
4577
+ const videoIds = React19__namespace.useMemo(
4578
+ () => Array.isArray(videoId) ? videoId : [videoId],
4579
+ [videoId]
4580
+ );
4581
+ const [currentVideoIndex, setCurrentVideoIndex] = React19__namespace.useState(0);
4582
+ const [isMuted, setIsMuted] = React19__namespace.useState(defaultMuted);
4583
+ const [isPip, setIsPip] = React19__namespace.useState(false);
4584
+ const [showPip, setShowPip] = React19__namespace.useState(true);
4585
+ const [pipSize, setPipSize] = React19__namespace.useState("normal");
4586
+ const [isMobile, setIsMobile] = React19__namespace.useState(false);
4587
+ const [isHovered, setIsHovered] = React19__namespace.useState(false);
4588
+ const [isPipHovered, setIsPipHovered] = React19__namespace.useState(false);
4589
+ const [showStatic, setShowStatic] = React19__namespace.useState(false);
4590
+ const [pipPos, setPipPos] = React19__namespace.useState({ x: 0, y: 0 });
4591
+ const [isDragging, setIsDragging] = React19__namespace.useState(false);
4592
+ const [dragStart, setDragStart] = React19__namespace.useState({ x: 0, y: 0 });
4593
+ const [hasDragged, setHasDragged] = React19__namespace.useState(false);
4594
+ const containerRef = React19__namespace.useRef(null);
4595
+ const pipContainerRef = React19__namespace.useRef(null);
4596
+ const PIP_WIDTH_BASE = 384;
4597
+ const PIP_MARGIN = 24;
4598
+ const getCurrentPipWidth = React19__namespace.useCallback(() => {
4599
+ return pipSize === "double" ? PIP_WIDTH_BASE * 2 : PIP_WIDTH_BASE;
4600
+ }, [pipSize]);
4601
+ const getYouTubeEmbedUrl = React19__namespace.useCallback(
4602
+ (forPip = false) => {
4603
+ const currentId = videoIds[currentVideoIndex];
4604
+ const muteParam = forPip && isPip ? isMuted ? "1" : "0" : isMuted ? "1" : "0";
4605
+ return `https://www.youtube.com/embed/${currentId}?autoplay=1&mute=${muteParam}&controls=0&showinfo=0&rel=0&modestbranding=1&playsinline=1`;
4606
+ },
4607
+ [videoIds, currentVideoIndex, isMuted, isPip]
4608
+ );
4609
+ React19__namespace.useEffect(() => {
4610
+ const checkMobile = /* @__PURE__ */ __name(() => setIsMobile(window.innerWidth < 768), "checkMobile");
4611
+ checkMobile();
4612
+ window.addEventListener("resize", checkMobile);
4613
+ return () => window.removeEventListener("resize", checkMobile);
4614
+ }, []);
4615
+ React19__namespace.useEffect(() => {
4616
+ if (videoIds.length <= 1) return;
4617
+ const interval = setInterval(() => {
4618
+ setCurrentVideoIndex((prev) => (prev + 1) % videoIds.length);
4619
+ }, rotationInterval);
4620
+ return () => clearInterval(interval);
4621
+ }, [videoIds.length, rotationInterval]);
4622
+ React19__namespace.useEffect(() => {
4623
+ if (!enableTvEffects) return;
4624
+ const interval = setInterval(() => {
4625
+ setShowStatic(true);
4626
+ setTimeout(() => setShowStatic(false), 200);
4627
+ }, 3e4);
4628
+ return () => clearInterval(interval);
4629
+ }, [enableTvEffects]);
4630
+ React19__namespace.useEffect(() => {
4631
+ if (!enablePip) return;
4632
+ const handleScroll = /* @__PURE__ */ __name(() => {
4633
+ if (!containerRef.current) return;
4634
+ const rect = containerRef.current.getBoundingClientRect();
4635
+ const shouldShowPip = rect.bottom < 100;
4636
+ const wasInPip = isPip;
4637
+ setIsPip(shouldShowPip);
4638
+ if (shouldShowPip !== wasInPip) {
4639
+ if (shouldShowPip) {
4640
+ onPipEnter?.();
4641
+ } else {
4642
+ onPipExit?.();
4643
+ }
4644
+ }
4645
+ }, "handleScroll");
4646
+ window.addEventListener("scroll", handleScroll);
4647
+ return () => window.removeEventListener("scroll", handleScroll);
4648
+ }, [enablePip, isPip, onPipEnter, onPipExit]);
4649
+ React19__namespace.useEffect(() => {
4650
+ if (typeof window === "undefined") return;
4651
+ const pipWidth = getCurrentPipWidth();
4652
+ const pipHeight = pipWidth * 9 / 16;
4653
+ const pos = pipPositionStyles[pipPosition];
4654
+ setPipPos({
4655
+ x: pos.defaultX(window.innerWidth, pipWidth),
4656
+ y: pos.defaultY(window.innerHeight, pipHeight)
4657
+ });
4658
+ }, [getCurrentPipWidth, pipPosition]);
4659
+ React19__namespace.useEffect(() => {
4660
+ if (pipSize === "fullscreen" || typeof window === "undefined") return;
4661
+ const pipWidth = getCurrentPipWidth();
4662
+ const pipHeight = pipWidth * 9 / 16;
4663
+ const pos = pipPositionStyles[pipPosition];
4664
+ setPipPos({
4665
+ x: pos.defaultX(window.innerWidth, pipWidth),
4666
+ y: pos.defaultY(window.innerHeight, pipHeight)
4667
+ });
4668
+ }, [pipSize, getCurrentPipWidth, pipPosition]);
4669
+ const handleMouseDown = React19__namespace.useCallback((e) => {
4670
+ if (pipSize === "fullscreen") return;
4671
+ setIsDragging(true);
4672
+ setHasDragged(false);
4673
+ setDragStart({
4674
+ x: e.clientX - pipPos.x,
4675
+ y: e.clientY - pipPos.y
4676
+ });
4677
+ }, [pipSize, pipPos]);
4678
+ const handleMouseMove = React19__namespace.useCallback((e) => {
4679
+ if (!isDragging || pipSize === "fullscreen") return;
4680
+ const newX = e.clientX - dragStart.x;
4681
+ const newY = e.clientY - dragStart.y;
4682
+ const distanceMoved = Math.sqrt(Math.pow(newX - pipPos.x, 2) + Math.pow(newY - pipPos.y, 2));
4683
+ if (distanceMoved > 5) setHasDragged(true);
4684
+ const pipWidth = getCurrentPipWidth();
4685
+ const maxX = window.innerWidth - pipWidth - PIP_MARGIN;
4686
+ const maxY = window.innerHeight - pipWidth * 9 / 16 - PIP_MARGIN;
4687
+ setPipPos({
4688
+ x: Math.max(PIP_MARGIN, Math.min(newX, maxX)),
4689
+ y: Math.max(PIP_MARGIN, Math.min(newY, maxY))
4690
+ });
4691
+ }, [isDragging, pipSize, dragStart, pipPos, getCurrentPipWidth]);
4692
+ const handleMouseUp = React19__namespace.useCallback(() => {
4693
+ if (isDragging && hasDragged) {
4694
+ const pipWidth = getCurrentPipWidth();
4695
+ const pipHeight = pipWidth * 9 / 16;
4696
+ const pos = pipPositionStyles[pipPosition];
4697
+ setPipPos({
4698
+ x: pos.defaultX(window.innerWidth, pipWidth),
4699
+ y: pos.defaultY(window.innerHeight, pipHeight)
4700
+ });
4701
+ }
4702
+ setIsDragging(false);
4703
+ setHasDragged(false);
4704
+ }, [isDragging, hasDragged, getCurrentPipWidth, pipPosition]);
4705
+ React19__namespace.useEffect(() => {
4706
+ if (!isDragging) return;
4707
+ window.addEventListener("mousemove", handleMouseMove);
4708
+ window.addEventListener("mouseup", handleMouseUp);
4709
+ return () => {
4710
+ window.removeEventListener("mousemove", handleMouseMove);
4711
+ window.removeEventListener("mouseup", handleMouseUp);
4712
+ };
4713
+ }, [isDragging, handleMouseMove, handleMouseUp]);
4714
+ const toggleMute = React19__namespace.useCallback((e) => {
4715
+ e.stopPropagation();
4716
+ const newMuted = !isMuted;
4717
+ setIsMuted(newMuted);
4718
+ onMuteChange?.(newMuted);
4719
+ }, [isMuted, onMuteChange]);
4720
+ const cyclePipSize = React19__namespace.useCallback((e) => {
4721
+ e.stopPropagation();
4722
+ setPipSize((prev) => {
4723
+ if (prev === "normal") return "double";
4724
+ if (prev === "double") return "fullscreen";
4725
+ return "normal";
4726
+ });
4727
+ }, []);
4728
+ const closePip = React19__namespace.useCallback((e) => {
4729
+ e.stopPropagation();
4730
+ setShowPip(false);
4731
+ }, []);
4732
+ const requestFullscreen = React19__namespace.useCallback((e) => {
4733
+ e.stopPropagation();
4734
+ if (!containerRef.current) return;
4735
+ if (document.fullscreenElement) {
4736
+ document.exitFullscreen();
4737
+ } else {
4738
+ containerRef.current.requestFullscreen();
4739
+ }
4740
+ }, []);
4741
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4742
+ /* @__PURE__ */ jsxRuntime.jsxs(
4743
+ "div",
4744
+ {
4745
+ ref: containerRef,
4746
+ className: cn(
4747
+ youtubePipPlayerVariants({ size }),
4748
+ "group transition-all duration-500",
4749
+ className
4750
+ ),
4751
+ onMouseEnter: () => setIsHovered(true),
4752
+ onMouseLeave: () => setIsHovered(false),
4753
+ ...props,
4754
+ children: [
4755
+ enableTvEffects && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4756
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -inset-24 bg-gradient-radial from-white/40 via-white/20 to-transparent blur-[100px] opacity-80 pointer-events-none" }),
4757
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -inset-12 bg-gradient-radial from-white/30 via-white/15 to-transparent blur-[60px] opacity-70 pointer-events-none" }),
4758
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -inset-2 rounded-[30px] bg-gradient-to-r from-white/80 via-white/60 to-white/80 opacity-100 blur-2xl animate-pulse pointer-events-none" }),
4759
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 rounded-[30px] border-2 border-white/30 shadow-[0_0_60px_rgba(255,255,255,0.5)] pointer-events-none" })
4760
+ ] }),
4761
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 pointer-events-none z-10", children: /* @__PURE__ */ jsxRuntime.jsx(
4762
+ "div",
4763
+ {
4764
+ className: "absolute inset-0 rounded-[30px] border-2 border-white/10 bg-gradient-to-b from-white/5 to-transparent",
4765
+ style: {
4766
+ boxShadow: "inset 0 2px 20px rgba(255,255,255,0.1), inset 0 -2px 20px rgba(0,0,0,0.5)"
4767
+ }
4768
+ }
4769
+ ) }),
4770
+ enableTvEffects && /* @__PURE__ */ jsxRuntime.jsx(
4771
+ "div",
4772
+ {
4773
+ className: "absolute inset-0 z-20 pointer-events-none",
4774
+ style: { boxShadow: "inset 0 0 120px 60px rgba(0,0,0,0.8)" }
4775
+ }
4776
+ ),
4777
+ showStatic && enableTvEffects && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute inset-0 z-40 pointer-events-none", children: [
4778
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-full w-full bg-white/3 animate-pulse" }),
4779
+ /* @__PURE__ */ jsxRuntime.jsx(
4780
+ "div",
4781
+ {
4782
+ className: "absolute inset-0 opacity-20",
4783
+ style: {
4784
+ backgroundImage: `url("data:image/svg+xml,%3Csvg width='200' height='200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' /%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.4'/%3E%3C/svg%3E")`
4785
+ }
4786
+ }
4787
+ )
4788
+ ] }),
4789
+ /* @__PURE__ */ jsxRuntime.jsx(
4790
+ "iframe",
4791
+ {
4792
+ className: "absolute inset-0 w-full h-full",
4793
+ src: getYouTubeEmbedUrl(),
4794
+ title: "Video",
4795
+ frameBorder: "0",
4796
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
4797
+ allowFullScreen: true
4798
+ }
4799
+ ),
4800
+ enableTvEffects && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 pointer-events-none opacity-[0.02] z-10", children: /* @__PURE__ */ jsxRuntime.jsx(
4801
+ "div",
4802
+ {
4803
+ className: "h-full w-full",
4804
+ style: {
4805
+ backgroundImage: "repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(255,255,255,0.05) 2px, rgba(255,255,255,0.05) 4px)"
4806
+ }
4807
+ }
4808
+ ) }),
4809
+ /* @__PURE__ */ jsxRuntime.jsxs(
4810
+ "div",
4811
+ {
4812
+ className: cn(
4813
+ "absolute bottom-6 left-6 flex items-center gap-3 z-30 transition-opacity duration-300",
4814
+ isHovered ? "opacity-100" : "opacity-0"
4815
+ ),
4816
+ children: [
4817
+ /* @__PURE__ */ jsxRuntime.jsxs(
4818
+ "button",
4819
+ {
4820
+ onClick: toggleMute,
4821
+ className: "flex items-center gap-2 bg-black/80 backdrop-blur-md px-4 py-2 rounded-full hover:bg-black transition-all duration-300 border border-white/10",
4822
+ children: [
4823
+ isMuted ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.VolumeX, { className: "h-4 w-4 text-white" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Volume2, { className: "h-4 w-4 text-white" }),
4824
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-white/90 font-medium tracking-wider uppercase", children: isMuted ? "Unmute" : "Mute" })
4825
+ ]
4826
+ }
4827
+ ),
4828
+ /* @__PURE__ */ jsxRuntime.jsxs(
4829
+ "button",
4830
+ {
4831
+ onClick: requestFullscreen,
4832
+ className: "flex items-center gap-2 bg-black/80 backdrop-blur-md px-4 py-2 rounded-full hover:bg-black transition-all duration-300 border border-white/10",
4833
+ children: [
4834
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Maximize, { className: "h-4 w-4 text-white" }),
4835
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-white/90 font-medium tracking-wider uppercase", children: "Fullscreen" })
4836
+ ]
4837
+ }
4838
+ )
4839
+ ]
4840
+ }
4841
+ ),
4842
+ showLiveIndicator && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute top-6 left-6 flex items-center gap-2 bg-black/80 backdrop-blur-md px-4 py-2 rounded-full border border-white/10 z-30", children: [
4843
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-2 h-2 bg-red-600 rounded-full animate-pulse shadow-[0_0_10px_rgba(220,38,38,0.8)]" }),
4844
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-white/90 font-medium tracking-widest uppercase", children: "Live" })
4845
+ ] })
4846
+ ]
4847
+ }
4848
+ ),
4849
+ enablePip && isPip && showPip && !isMobile && /* @__PURE__ */ jsxRuntime.jsx(
4850
+ "div",
4851
+ {
4852
+ ref: pipContainerRef,
4853
+ className: cn(
4854
+ "fixed z-50 transition-all ease-out group",
4855
+ pipSize === "fullscreen" ? "inset-0 bg-black/98 backdrop-blur-xl duration-500" : isDragging ? "duration-75" : "duration-300",
4856
+ isDragging ? "cursor-grabbing scale-105 shadow-2xl" : pipSize === "fullscreen" ? "" : "cursor-grab hover:scale-105"
4857
+ ),
4858
+ style: pipSize !== "fullscreen" ? {
4859
+ left: `${pipPos.x}px`,
4860
+ top: `${pipPos.y}px`,
4861
+ filter: isDragging ? "brightness(1.1) drop-shadow(0 20px 40px rgba(0,0,0,0.5))" : "brightness(1)"
4862
+ } : {},
4863
+ onMouseDown: handleMouseDown,
4864
+ onMouseEnter: () => setIsPipHovered(true),
4865
+ onMouseLeave: () => setIsPipHovered(false),
4866
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
4867
+ "div",
4868
+ {
4869
+ className: cn(
4870
+ "relative bg-black overflow-hidden transition-all duration-500",
4871
+ pipSize === "fullscreen" ? "w-full h-full" : pipSize === "double" ? "aspect-video rounded-2xl" : "w-96 aspect-video rounded-2xl"
4872
+ ),
4873
+ style: pipSize === "double" ? { width: "768px" } : {},
4874
+ children: [
4875
+ enableTvEffects && pipSize !== "fullscreen" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
4876
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -inset-12 rounded-full bg-gradient-radial from-white/30 via-white/10 to-transparent blur-3xl opacity-60 pointer-events-none" }),
4877
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -inset-1 rounded-2xl bg-gradient-to-r from-white/40 via-white/20 to-white/40 opacity-75 blur-xl animate-pulse pointer-events-none" }),
4878
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 pointer-events-none z-10", children: /* @__PURE__ */ jsxRuntime.jsx(
4879
+ "div",
4880
+ {
4881
+ className: "absolute inset-0 rounded-2xl border-2 border-white/10 bg-gradient-to-b from-white/5 to-transparent",
4882
+ style: {
4883
+ boxShadow: "inset 0 2px 20px rgba(255,255,255,0.1), inset 0 -2px 20px rgba(0,0,0,0.5)"
4884
+ }
4885
+ }
4886
+ ) }),
4887
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 pointer-events-none z-10 opacity-10", children: /* @__PURE__ */ jsxRuntime.jsx(
4888
+ "div",
4889
+ {
4890
+ className: "h-full w-full animate-scan",
4891
+ style: {
4892
+ backgroundImage: "repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(255,255,255,0.03) 2px, rgba(255,255,255,0.03) 4px)"
4893
+ }
4894
+ }
4895
+ ) })
4896
+ ] }),
4897
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute inset-0 overflow-hidden", children: [
4898
+ /* @__PURE__ */ jsxRuntime.jsx(
4899
+ "iframe",
4900
+ {
4901
+ className: cn(
4902
+ "absolute top-0 left-0 w-full h-full object-cover",
4903
+ pipSize !== "fullscreen" && "rounded-2xl"
4904
+ ),
4905
+ style: { aspectRatio: "16 / 9", pointerEvents: "none" },
4906
+ src: getYouTubeEmbedUrl(true),
4907
+ title: "Video PiP",
4908
+ frameBorder: "0",
4909
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
4910
+ allowFullScreen: true
4911
+ }
4912
+ ),
4913
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0 z-5" })
4914
+ ] }),
4915
+ /* @__PURE__ */ jsxRuntime.jsxs(
4916
+ "div",
4917
+ {
4918
+ className: cn(
4919
+ "absolute flex items-center gap-2 z-30 transition-opacity duration-300",
4920
+ pipSize === "fullscreen" ? "bottom-10 right-10" : "bottom-3 right-3",
4921
+ isPipHovered ? "opacity-100" : "opacity-0"
4922
+ ),
4923
+ children: [
4924
+ /* @__PURE__ */ jsxRuntime.jsx(
4925
+ "button",
4926
+ {
4927
+ onClick: toggleMute,
4928
+ className: "relative p-2.5 bg-black/90 backdrop-blur-md rounded-full hover:bg-black transition-all duration-300 shadow-lg hover:scale-110 border border-white/10",
4929
+ title: isMuted ? "Unmute" : "Mute",
4930
+ children: isMuted ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.VolumeX, { className: "h-4 w-4 text-white" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Volume2, { className: "h-4 w-4 text-white" })
4931
+ }
4932
+ ),
4933
+ /* @__PURE__ */ jsxRuntime.jsx(
4934
+ "button",
4935
+ {
4936
+ onClick: cyclePipSize,
4937
+ className: "relative p-2.5 bg-black/90 backdrop-blur-md rounded-full hover:bg-black transition-all duration-300 shadow-lg hover:scale-110 border border-white/10",
4938
+ title: pipSize === "fullscreen" ? "Normal Size" : pipSize === "double" ? "Fullscreen" : "Double Size",
4939
+ children: pipSize === "fullscreen" ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Minimize2, { className: "h-4 w-4 text-white" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Maximize2, { className: "h-4 w-4 text-white" })
4940
+ }
4941
+ ),
4942
+ /* @__PURE__ */ jsxRuntime.jsx(
4943
+ "button",
4944
+ {
4945
+ onClick: closePip,
4946
+ className: "relative p-2.5 bg-black/90 backdrop-blur-md rounded-full hover:bg-red-600 transition-all duration-300 shadow-lg hover:scale-110 border border-white/10",
4947
+ title: "Close",
4948
+ children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "h-4 w-4 text-white" })
4949
+ }
4950
+ )
4951
+ ]
4952
+ }
4953
+ ),
4954
+ showLiveIndicator && pipSize !== "fullscreen" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-3 right-3 z-20", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 bg-black/80 backdrop-blur-md px-3 py-1.5 rounded-full border border-white/10", children: [
4955
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-2 h-2 bg-red-600 rounded-full animate-pulse shadow-[0_0_10px_rgba(220,38,38,0.8)]" }),
4956
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[10px] text-white/80 font-medium tracking-widest uppercase", children: "Live" })
4957
+ ] }) })
4958
+ ]
4959
+ }
4960
+ )
4961
+ }
4962
+ )
4963
+ ] });
4964
+ }
4965
+ );
4966
+ YouTubePipPlayer.displayName = "YouTubePipPlayer";
3833
4967
  var fileIconMap = {
3834
4968
  aep: "",
3835
4969
  ai: "",
@@ -8136,6 +9270,7 @@ exports.AgentIcon = AgentIcon;
8136
9270
  exports.AiTasksIcon = AiTasksIcon;
8137
9271
  exports.AisIcon = AisIcon;
8138
9272
  exports.Alert = Alert;
9273
+ exports.AlertAction = AlertAction;
8139
9274
  exports.AlertDescription = AlertDescription;
8140
9275
  exports.AlertDialog = AlertDialog;
8141
9276
  exports.AlertDialogAction = AlertDialogAction;
@@ -8170,8 +9305,12 @@ exports.BreadcrumbSeparator = BreadcrumbSeparator;
8170
9305
  exports.BreakpointIndicator = breakpoint_indicator_default;
8171
9306
  exports.BrowseSubscriptionIcon = BrowseSubscriptionIcon;
8172
9307
  exports.Button = button_default;
9308
+ exports.ButtonGroup = ButtonGroup;
9309
+ exports.ButtonGroupSeparator = ButtonGroupSeparator;
9310
+ exports.ButtonGroupText = ButtonGroupText;
8173
9311
  exports.Calendar = calendar_default;
8174
9312
  exports.Card = Card;
9313
+ exports.CardAction = CardAction;
8175
9314
  exports.CardContent = CardContent;
8176
9315
  exports.CardDescription = CardDescription;
8177
9316
  exports.CardFooter = CardFooter;
@@ -8222,6 +9361,7 @@ exports.CreateAIIcon = CreateAIIcon;
8222
9361
  exports.CryptoWalletIcon = CryptoWalletIcon;
8223
9362
  exports.DeepSeekIcon = DeepSeekIcon;
8224
9363
  exports.Dialog = Dialog;
9364
+ exports.DialogClose = DialogClose;
8225
9365
  exports.DialogContent = DialogContent;
8226
9366
  exports.DialogDescription = DialogDescription;
8227
9367
  exports.DialogFooter = DialogFooter;
@@ -8262,6 +9402,12 @@ exports.DropdownMenuSubContent = DropdownMenuSubContent;
8262
9402
  exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger;
8263
9403
  exports.DropdownMenuTrigger = DropdownMenuTrigger;
8264
9404
  exports.EmbeddingsGeneratedIcon = EmbeddingsGeneratedIcon;
9405
+ exports.Empty = Empty;
9406
+ exports.EmptyContent = EmptyContent;
9407
+ exports.EmptyDescription = EmptyDescription;
9408
+ exports.EmptyHeader = EmptyHeader;
9409
+ exports.EmptyMedia = EmptyMedia;
9410
+ exports.EmptyTitle = EmptyTitle;
8265
9411
  exports.EthereumIcon = EthereumIcon;
8266
9412
  exports.ExoIcon = ExoIcon;
8267
9413
  exports.ExportIcon = ExportIcon;
@@ -8294,10 +9440,26 @@ exports.ImportIcon = ImportIcon;
8294
9440
  exports.InboxIcon = InboxIcon;
8295
9441
  exports.InlineIcon = inline_icon_default;
8296
9442
  exports.Input = input_default;
9443
+ exports.InputGroup = InputGroup;
9444
+ exports.InputGroupAddon = InputGroupAddon;
9445
+ exports.InputGroupButton = InputGroupButton;
9446
+ exports.InputGroupInput = InputGroupInput;
9447
+ exports.InputGroupText = InputGroupText;
9448
+ exports.InputGroupTextarea = InputGroupTextarea;
8297
9449
  exports.InputOTP = InputOTP;
8298
9450
  exports.InputOTPGroup = InputOTPGroup;
8299
9451
  exports.InputOTPSeparator = InputOTPSeparator;
8300
9452
  exports.InputOTPSlot = InputOTPSlot;
9453
+ exports.Item = Item4;
9454
+ exports.ItemActions = ItemActions;
9455
+ exports.ItemContent = ItemContent;
9456
+ exports.ItemDescription = ItemDescription;
9457
+ exports.ItemFooter = ItemFooter;
9458
+ exports.ItemGroup = ItemGroup;
9459
+ exports.ItemHeader = ItemHeader;
9460
+ exports.ItemMedia = ItemMedia;
9461
+ exports.ItemSeparator = ItemSeparator;
9462
+ exports.ItemTitle = ItemTitle;
8301
9463
  exports.JobBubbleIcon = JobBubbleIcon;
8302
9464
  exports.JsonForm = json_form_default;
8303
9465
  exports.Kbd = Kbd;
@@ -8332,6 +9494,9 @@ exports.MetadataIcon = MetadataIcon;
8332
9494
  exports.MicrosoftIcon = MicrosoftIcon;
8333
9495
  exports.MistralIcon = MistralIcon;
8334
9496
  exports.MySubscriptionsIcon = MySubscriptionsIcon;
9497
+ exports.NativeSelect = NativeSelect;
9498
+ exports.NativeSelectOptGroup = NativeSelectOptGroup;
9499
+ exports.NativeSelectOption = NativeSelectOption;
8335
9500
  exports.NavItems = nav_items_default;
8336
9501
  exports.NavigationMenu = NavigationMenu;
8337
9502
  exports.NavigationMenuContent = NavigationMenuContent;
@@ -8403,6 +9568,7 @@ exports.Skeleton = skeleton_default;
8403
9568
  exports.Slider = slider_default;
8404
9569
  exports.SortingAToZ = SortingAToZ;
8405
9570
  exports.SortingZToA = SortingZToA;
9571
+ exports.Spinner = Spinner;
8406
9572
  exports.StepIndicator = step_indicator_default;
8407
9573
  exports.StoreIcon = StoreIcon;
8408
9574
  exports.Switch = switch_default;
@@ -8442,7 +9608,12 @@ exports.VideoPlayer = video_player_default;
8442
9608
  exports.WebSearchDisabledIcon = WebSearchDisabledIcon;
8443
9609
  exports.WebSearchIcon = WebSearchIcon;
8444
9610
  exports.YouTubeEmbed = youtube_embed_default;
9611
+ exports.YouTubePipPlayer = YouTubePipPlayer;
9612
+ exports.alertVariants = alertVariants;
9613
+ exports.buttonGroupVariants = buttonGroupVariants;
8445
9614
  exports.buttonVariants = buttonVariants;
8446
9615
  exports.fileIconMap = fileIconMap;
8447
9616
  exports.navigationMenuTriggerStyle = navigationMenuTriggerStyle;
9617
+ exports.tabsListVariants = tabsListVariants;
8448
9618
  exports.toggleVariants = toggleVariants;
9619
+ exports.youtubePipPlayerVariants = youtubePipPlayerVariants;