admin-ui-starter-kit 0.4.2 → 0.4.4

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 (1064) hide show
  1. package/.agents/skills/admin-ui-consumer-migration/SKILL.md +10 -0
  2. package/.agents/skills/admin-ui-consumer-migration/references/actions-service.md +236 -0
  3. package/.agents/skills/component-library-rules/SKILL.md +7 -1
  4. package/.agents/skills/component-library-rules/references/base-wrapper.md +24 -4
  5. package/.agents/skills/component-library-rules/references/components/INDEX.json +4 -3
  6. package/.agents/skills/component-library-rules/references/components/INDEX.md +4 -3
  7. package/.agents/skills/component-library-rules/references/components/ui__inputs.md +117 -18
  8. package/.agents/skills/component-library-rules/references/components/ui__layout-primitives.md +71 -0
  9. package/.agents/skills/component-library-rules/references/components/ui__menus.md +125 -43
  10. package/.agents/skills/component-library-rules/references/components/ui__overlays.md +117 -42
  11. package/AGENTS.md +7 -4
  12. package/CHANGELOG.md +26 -1
  13. package/COMPONENT_SELECTION.md +10 -1
  14. package/INTEGRATION.md +47 -0
  15. package/README.md +62 -5
  16. package/dist/_shared/accordion-Df1XrCDv.cjs +2 -0
  17. package/dist/_shared/accordion-Df1XrCDv.cjs.map +1 -0
  18. package/dist/_shared/accordion-Rzi9wEl6.js +130 -0
  19. package/dist/_shared/accordion-Rzi9wEl6.js.map +1 -0
  20. package/dist/_shared/action-menu-CrOJ63Q9.js +96 -0
  21. package/dist/_shared/action-menu-CrOJ63Q9.js.map +1 -0
  22. package/dist/_shared/action-menu-D9OowHKx.cjs +2 -0
  23. package/dist/_shared/action-menu-D9OowHKx.cjs.map +1 -0
  24. package/dist/_shared/ai-artifact-D4EjKoq6.cjs +3 -0
  25. package/dist/_shared/ai-artifact-D4EjKoq6.cjs.map +1 -0
  26. package/dist/_shared/ai-artifact-nlOrSeqT.js +1099 -0
  27. package/dist/_shared/ai-artifact-nlOrSeqT.js.map +1 -0
  28. package/dist/_shared/auth-C5HawWvp.cjs +2 -0
  29. package/dist/_shared/auth-C5HawWvp.cjs.map +1 -0
  30. package/dist/_shared/auth-DnMEJXP9.js +643 -0
  31. package/dist/_shared/auth-DnMEJXP9.js.map +1 -0
  32. package/dist/_shared/badge-6WYAMJwA.js +108 -0
  33. package/dist/_shared/badge-6WYAMJwA.js.map +1 -0
  34. package/dist/_shared/badge-CBof1rbF.cjs +2 -0
  35. package/dist/_shared/badge-CBof1rbF.cjs.map +1 -0
  36. package/dist/_shared/button-BGKY8UY0.js +173 -0
  37. package/dist/_shared/button-BGKY8UY0.js.map +1 -0
  38. package/dist/_shared/button-BI347RlM.cjs +2 -0
  39. package/dist/_shared/button-BI347RlM.cjs.map +1 -0
  40. package/dist/_shared/button-DEFoa7-c.cjs +2 -0
  41. package/dist/_shared/button-DEFoa7-c.cjs.map +1 -0
  42. package/dist/_shared/button-DlqryxqA.js +46 -0
  43. package/dist/_shared/button-DlqryxqA.js.map +1 -0
  44. package/dist/_shared/buttons-PL-TGJ32.js +143 -0
  45. package/dist/_shared/buttons-PL-TGJ32.js.map +1 -0
  46. package/dist/_shared/buttons-kVvSD_oI.cjs +2 -0
  47. package/dist/_shared/buttons-kVvSD_oI.cjs.map +1 -0
  48. package/dist/_shared/combobox-B4KmDZK0.cjs +2 -0
  49. package/dist/_shared/combobox-B4KmDZK0.cjs.map +1 -0
  50. package/dist/_shared/combobox-YUGi3xSc.js +810 -0
  51. package/dist/_shared/combobox-YUGi3xSc.js.map +1 -0
  52. package/dist/_shared/comments-GzXdwpq4.js +952 -0
  53. package/dist/_shared/comments-GzXdwpq4.js.map +1 -0
  54. package/dist/_shared/comments-Zj_foV1V.cjs +2 -0
  55. package/dist/_shared/comments-Zj_foV1V.cjs.map +1 -0
  56. package/dist/_shared/date-picker-Dl91BM3D.js +1361 -0
  57. package/dist/_shared/date-picker-Dl91BM3D.js.map +1 -0
  58. package/dist/_shared/date-picker-zFOqtmAS.cjs +2 -0
  59. package/dist/_shared/date-picker-zFOqtmAS.cjs.map +1 -0
  60. package/dist/_shared/date-pickers-BBydcIjN.cjs +2 -0
  61. package/dist/_shared/date-pickers-BBydcIjN.cjs.map +1 -0
  62. package/dist/_shared/date-pickers-D2OsgV4V.js +330 -0
  63. package/dist/_shared/date-pickers-D2OsgV4V.js.map +1 -0
  64. package/dist/_shared/dialog-CCN4tjU9.js +101 -0
  65. package/dist/_shared/dialog-CCN4tjU9.js.map +1 -0
  66. package/dist/_shared/dialog-Dd0ENSrU.cjs +2 -0
  67. package/dist/_shared/dialog-Dd0ENSrU.cjs.map +1 -0
  68. package/dist/_shared/display-Dhy5ogxC.cjs +2 -0
  69. package/dist/_shared/display-Dhy5ogxC.cjs.map +1 -0
  70. package/dist/_shared/display-NBtWdAMl.js +1154 -0
  71. package/dist/_shared/display-NBtWdAMl.js.map +1 -0
  72. package/dist/_shared/forms-BweX9Lm8.cjs +2 -0
  73. package/dist/_shared/forms-BweX9Lm8.cjs.map +1 -0
  74. package/dist/_shared/forms-L1hyNKpZ.js +3430 -0
  75. package/dist/_shared/forms-L1hyNKpZ.js.map +1 -0
  76. package/dist/_shared/header-BSBPtGn4.cjs +2 -0
  77. package/dist/_shared/header-BSBPtGn4.cjs.map +1 -0
  78. package/dist/_shared/header-No6GSp4R.js +360 -0
  79. package/dist/_shared/header-No6GSp4R.js.map +1 -0
  80. package/dist/_shared/hooks-BkXvZ4py.js +118 -0
  81. package/dist/_shared/hooks-BkXvZ4py.js.map +1 -0
  82. package/dist/_shared/hooks-D3SbLBRk.cjs +2 -0
  83. package/dist/_shared/hooks-D3SbLBRk.cjs.map +1 -0
  84. package/dist/_shared/mentions-CA1Ka_Bv.cjs +2 -0
  85. package/dist/_shared/mentions-CA1Ka_Bv.cjs.map +1 -0
  86. package/dist/_shared/mentions-CdvvLGQG.js +506 -0
  87. package/dist/_shared/mentions-CdvvLGQG.js.map +1 -0
  88. package/dist/_shared/metadata-Ckcmar8d.js +235 -0
  89. package/dist/_shared/metadata-Ckcmar8d.js.map +1 -0
  90. package/dist/_shared/metadata-DamdYVZL.cjs +2 -0
  91. package/dist/_shared/metadata-DamdYVZL.cjs.map +1 -0
  92. package/dist/_shared/navigation-BemwPPC8.cjs +2 -0
  93. package/dist/_shared/navigation-BemwPPC8.cjs.map +1 -0
  94. package/dist/_shared/navigation-DY540HB0.js +419 -0
  95. package/dist/_shared/navigation-DY540HB0.js.map +1 -0
  96. package/dist/_shared/overlays-CJs_syAu.js +648 -0
  97. package/dist/_shared/overlays-CJs_syAu.js.map +1 -0
  98. package/dist/_shared/overlays-DWFEaAog.cjs +2 -0
  99. package/dist/_shared/overlays-DWFEaAog.cjs.map +1 -0
  100. package/dist/_shared/page-Cg_gNpyK.js +262 -0
  101. package/dist/_shared/page-Cg_gNpyK.js.map +1 -0
  102. package/dist/_shared/page-CpFWQuWU.cjs +2 -0
  103. package/dist/_shared/page-CpFWQuWU.cjs.map +1 -0
  104. package/dist/_shared/rich-text-editor-B2VqNi6j.js +620 -0
  105. package/dist/_shared/rich-text-editor-B2VqNi6j.js.map +1 -0
  106. package/dist/_shared/rich-text-editor-ChE-pI3N.cjs +2 -0
  107. package/dist/_shared/rich-text-editor-ChE-pI3N.cjs.map +1 -0
  108. package/dist/_shared/sheet-BOgUA4fC.cjs +2 -0
  109. package/dist/_shared/sheet-BOgUA4fC.cjs.map +1 -0
  110. package/dist/_shared/sheet-DWQuyRRz.js +100 -0
  111. package/dist/_shared/sheet-DWQuyRRz.js.map +1 -0
  112. package/dist/_shared/sidebar-BGpi9K_Q.js +389 -0
  113. package/dist/_shared/sidebar-BGpi9K_Q.js.map +1 -0
  114. package/dist/_shared/sidebar-BTFfxmNG.cjs +2 -0
  115. package/dist/_shared/sidebar-BTFfxmNG.cjs.map +1 -0
  116. package/dist/_shared/sidebar-CC3lcvNX.cjs +2 -0
  117. package/dist/_shared/sidebar-CC3lcvNX.cjs.map +1 -0
  118. package/dist/_shared/sidebar-wmztVpnO.js +538 -0
  119. package/dist/_shared/sidebar-wmztVpnO.js.map +1 -0
  120. package/dist/_shared/smart-card-B6m7tmt0.cjs +2 -0
  121. package/dist/_shared/smart-card-B6m7tmt0.cjs.map +1 -0
  122. package/dist/_shared/smart-card-thLb85Ih.js +361 -0
  123. package/dist/_shared/smart-card-thLb85Ih.js.map +1 -0
  124. package/dist/_shared/table-BItnJ8lG.cjs +2 -0
  125. package/dist/_shared/table-BItnJ8lG.cjs.map +1 -0
  126. package/dist/_shared/table-D3349b-v.js +1189 -0
  127. package/dist/_shared/table-D3349b-v.js.map +1 -0
  128. package/dist/_shared/workspace-BGVeTeJy.js +357 -0
  129. package/dist/_shared/workspace-BGVeTeJy.js.map +1 -0
  130. package/dist/_shared/workspace-CWyzTUmE.cjs +2 -0
  131. package/dist/_shared/workspace-CWyzTUmE.cjs.map +1 -0
  132. package/dist/components/base/accordion/index.cjs +1 -1
  133. package/dist/components/base/accordion/index.js +1 -1
  134. package/dist/components/base/badge/index.cjs +1 -1
  135. package/dist/components/base/badge/index.js +1 -1
  136. package/dist/components/base/buttons/index.cjs +1 -1
  137. package/dist/components/base/buttons/index.js +2 -2
  138. package/dist/components/base/cards/index.cjs +1 -1
  139. package/dist/components/base/cards/index.js +1 -1
  140. package/dist/components/base/carousel/index.cjs +1 -1
  141. package/dist/components/base/carousel/index.js +1 -1
  142. package/dist/components/base/combobox/index.cjs +1 -1
  143. package/dist/components/base/combobox/index.js +1 -1
  144. package/dist/components/base/date-pickers/index.cjs +1 -1
  145. package/dist/components/base/date-pickers/index.js +2 -2
  146. package/dist/components/base/display/alert.d.ts +1 -1
  147. package/dist/components/base/display/index.cjs +1 -1
  148. package/dist/components/base/display/index.js +6 -6
  149. package/dist/components/base/display/metadata/index.cjs +1 -1
  150. package/dist/components/base/display/metadata/index.js +1 -1
  151. package/dist/components/base/event-calendar/index.cjs +1 -1
  152. package/dist/components/base/event-calendar/index.js +41 -41
  153. package/dist/components/base/forms/index.cjs +1 -1
  154. package/dist/components/base/forms/index.js +1 -1
  155. package/dist/components/base/map/index.cjs +1 -1
  156. package/dist/components/base/map/index.js +31 -31
  157. package/dist/components/base/navigation/index.cjs +1 -1
  158. package/dist/components/base/navigation/index.js +2 -2
  159. package/dist/components/base/sheet/index.cjs +1 -1
  160. package/dist/components/base/sheet/index.js +1 -1
  161. package/dist/components/base/sidebar/index.cjs +1 -1
  162. package/dist/components/base/sidebar/index.js +2 -2
  163. package/dist/components/base/sidebar/sidebar.d.ts +5 -3
  164. package/dist/components/base/sidebar/sidebar.d.ts.map +1 -1
  165. package/dist/components/base/table/index.cjs +1 -1
  166. package/dist/components/base/table/index.js +1 -1
  167. package/dist/components/composed/admin/index.cjs +1 -1
  168. package/dist/components/composed/admin/index.js +47 -47
  169. package/dist/components/composed/ai/index.cjs +1 -1
  170. package/dist/components/composed/ai/index.js +105 -105
  171. package/dist/components/composed/analytics/index.cjs +1 -1
  172. package/dist/components/composed/analytics/index.js +89 -89
  173. package/dist/components/composed/cards/index.cjs +1 -1
  174. package/dist/components/composed/cards/index.js +116 -116
  175. package/dist/components/composed/commerce/index.cjs +1 -1
  176. package/dist/components/composed/commerce/index.js +127 -127
  177. package/dist/components/composed/dark-surfaces/index.cjs +1 -1
  178. package/dist/components/composed/dark-surfaces/index.js +37 -37
  179. package/dist/components/composed/data-display/index.cjs +1 -1
  180. package/dist/components/composed/data-display/index.js +3 -3
  181. package/dist/components/composed/navigation/index.cjs +1 -1
  182. package/dist/components/composed/navigation/index.js +55 -55
  183. package/dist/components/composed/onboarding/index.cjs +1 -1
  184. package/dist/components/composed/onboarding/index.js +1 -1
  185. package/dist/components/composed/timelines/index.cjs +1 -1
  186. package/dist/components/composed/timelines/index.js +2 -2
  187. package/dist/components/features/activities/index.cjs +1 -1
  188. package/dist/components/features/activities/index.js +56 -56
  189. package/dist/components/features/ai-chat/index.cjs +2 -2
  190. package/dist/components/features/ai-chat/index.js +53 -53
  191. package/dist/components/features/card/index.cjs +1 -1
  192. package/dist/components/features/card/index.js +21 -21
  193. package/dist/components/features/comments/index.cjs +1 -1
  194. package/dist/components/features/comments/index.js +2 -2
  195. package/dist/components/features/event-log/index.cjs +1 -1
  196. package/dist/components/features/event-log/index.js +3 -3
  197. package/dist/components/features/filters/index.cjs +1 -1
  198. package/dist/components/features/filters/index.js +143 -143
  199. package/dist/components/features/global-search/index.cjs +1 -1
  200. package/dist/components/features/global-search/index.js +57 -57
  201. package/dist/components/features/kanban/index.cjs +1 -1
  202. package/dist/components/features/kanban/index.js +14 -14
  203. package/dist/components/features/media-library/index.cjs +1 -1
  204. package/dist/components/features/media-library/index.js +178 -178
  205. package/dist/components/features/mentions/index.cjs +1 -1
  206. package/dist/components/features/mentions/index.js +1 -1
  207. package/dist/components/features/overlays/alert-dialog.d.ts +1 -1
  208. package/dist/components/features/overlays/alert-dialog.d.ts.map +1 -1
  209. package/dist/components/features/overlays/drawer.d.ts +1 -1
  210. package/dist/components/features/overlays/drawer.d.ts.map +1 -1
  211. package/dist/components/features/overlays/index.cjs +1 -1
  212. package/dist/components/features/overlays/index.js +1 -1
  213. package/dist/components/features/overlays/overlays.types.d.ts +1 -0
  214. package/dist/components/features/overlays/overlays.types.d.ts.map +1 -1
  215. package/dist/components/features/products/index.cjs +1 -1
  216. package/dist/components/features/products/index.js +124 -124
  217. package/dist/components/features/rich-text-editor/index.cjs +1 -1
  218. package/dist/components/features/rich-text-editor/index.js +1 -1
  219. package/dist/components/features/schema-form/index.cjs +1 -1
  220. package/dist/components/features/schema-form/index.js +26 -26
  221. package/dist/components/features/suggestions/index.cjs +1 -1
  222. package/dist/components/features/suggestions/index.js +1 -1
  223. package/dist/components/layout/auth/index.cjs +1 -1
  224. package/dist/components/layout/auth/index.js +1 -1
  225. package/dist/components/layout/header/index.cjs +1 -1
  226. package/dist/components/layout/header/index.js +1 -1
  227. package/dist/components/layout/header/partials/header-search.d.ts.map +1 -1
  228. package/dist/components/layout/hooks/index.cjs +1 -1
  229. package/dist/components/layout/hooks/index.js +1 -1
  230. package/dist/components/layout/index.cjs +1 -1
  231. package/dist/components/layout/index.js +6 -6
  232. package/dist/components/layout/page/index.cjs +1 -1
  233. package/dist/components/layout/page/index.js +1 -1
  234. package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts.map +1 -1
  235. package/dist/components/layout/sidebar/index.cjs +1 -1
  236. package/dist/components/layout/sidebar/index.js +2 -2
  237. package/dist/components/layout/workspace/index.cjs +1 -1
  238. package/dist/components/layout/workspace/index.js +1 -1
  239. package/dist/components/ui/alert-dialog.d.ts +19 -0
  240. package/dist/components/ui/alert-dialog.d.ts.map +1 -0
  241. package/dist/components/ui/alert.d.ts +1 -1
  242. package/dist/components/ui/aspect-ratio.d.ts +5 -0
  243. package/dist/components/ui/aspect-ratio.d.ts.map +1 -0
  244. package/dist/components/ui/badge.d.ts +1 -1
  245. package/dist/components/ui/button.d.ts +1 -1
  246. package/dist/components/ui/carousel.d.ts +29 -0
  247. package/dist/components/ui/carousel.d.ts.map +1 -0
  248. package/dist/components/ui/direction.d.ts +2 -0
  249. package/dist/components/ui/direction.d.ts.map +1 -0
  250. package/dist/components/ui/drawer.d.ts +14 -0
  251. package/dist/components/ui/drawer.d.ts.map +1 -0
  252. package/dist/components/ui/field.d.ts +25 -0
  253. package/dist/components/ui/field.d.ts.map +1 -0
  254. package/dist/components/ui/input-otp.d.ts +12 -0
  255. package/dist/components/ui/input-otp.d.ts.map +1 -0
  256. package/dist/components/ui/kbd.d.ts +4 -0
  257. package/dist/components/ui/kbd.d.ts.map +1 -0
  258. package/dist/components/ui/label.d.ts +4 -0
  259. package/dist/components/ui/label.d.ts.map +1 -0
  260. package/dist/components/ui/menubar.d.ts +30 -0
  261. package/dist/components/ui/menubar.d.ts.map +1 -0
  262. package/dist/components/ui/native-select.d.ts +9 -0
  263. package/dist/components/ui/native-select.d.ts.map +1 -0
  264. package/dist/components/ui/navigation-menu.d.ts +12 -0
  265. package/dist/components/ui/navigation-menu.d.ts.map +1 -0
  266. package/dist/components/ui/resizable.d.ts +8 -0
  267. package/dist/components/ui/resizable.d.ts.map +1 -0
  268. package/dist/services/actions/action-overlay-outlet.d.ts +4 -0
  269. package/dist/services/actions/action-overlay-outlet.d.ts.map +1 -0
  270. package/dist/services/actions/action-provider.d.ts +8 -0
  271. package/dist/services/actions/action-provider.d.ts.map +1 -0
  272. package/dist/services/actions/action-scope.d.ts +4 -0
  273. package/dist/services/actions/action-scope.d.ts.map +1 -0
  274. package/dist/services/actions/action-store.d.ts +44 -0
  275. package/dist/services/actions/action-store.d.ts.map +1 -0
  276. package/dist/services/actions/actions.strings.d.ts +3 -0
  277. package/dist/services/actions/actions.strings.d.ts.map +1 -0
  278. package/dist/services/actions/actions.types.d.ts +248 -0
  279. package/dist/services/actions/actions.types.d.ts.map +1 -0
  280. package/dist/services/actions/hooks.d.ts +8 -0
  281. package/dist/services/actions/hooks.d.ts.map +1 -0
  282. package/dist/services/actions/index.cjs +2 -0
  283. package/dist/services/actions/index.cjs.map +1 -0
  284. package/dist/services/actions/index.d.ts +8 -0
  285. package/dist/services/actions/index.d.ts.map +1 -0
  286. package/dist/services/actions/index.js +562 -0
  287. package/dist/services/actions/index.js.map +1 -0
  288. package/dist/showcase/assets/AreaChart-BYEewdc_.js +6 -0
  289. package/dist/showcase/assets/CSPContext-B11tftuK.js +1 -0
  290. package/dist/showcase/assets/CompositeItem-Duekeg4m.js +1 -0
  291. package/dist/showcase/assets/CompositeRoot-BgNU3T7R.js +1 -0
  292. package/dist/showcase/assets/DialogTrigger-9xWmoeF5.js +1 -0
  293. package/dist/showcase/assets/FieldItemContext-BSFHjS7g.js +1 -0
  294. package/dist/showcase/assets/LabelableContext-B3W_70Qk.js +1 -0
  295. package/dist/showcase/assets/PreviewLayout-nADJqRlP.js +1 -0
  296. package/dist/showcase/assets/RadioGroup-Bp1VCzxr.js +1 -0
  297. package/dist/showcase/assets/Separator-9PWX3shz.js +1 -0
  298. package/dist/showcase/assets/ToolbarRootContext-DwELw9xS.js +1 -0
  299. package/dist/showcase/assets/accordion-CfqHO9_z.js +171 -0
  300. package/dist/showcase/assets/accordion-variants-pkPHxkLW.js +1 -0
  301. package/dist/showcase/assets/action-menu-DFzSuDjI.js +1 -0
  302. package/dist/showcase/assets/activities-Bo97b2-I.js +501 -0
  303. package/dist/showcase/assets/activities-feed-card-D77gf27B.js +1 -0
  304. package/dist/showcase/assets/activity-BUlCWLI8.js +1 -0
  305. package/dist/showcase/assets/admin-CxTV4kZX.js +80 -0
  306. package/dist/showcase/assets/ai-Bym5H8bn.js +41 -0
  307. package/dist/showcase/assets/ai-artifact-DZVl1WmK.js +2 -0
  308. package/dist/showcase/assets/ai-chat-M3X5-PgT.js +568 -0
  309. package/dist/showcase/assets/ai-elements-DjppcMBD.js +387 -0
  310. package/dist/showcase/assets/ai-new-CXnrIi5S.js +167 -0
  311. package/dist/showcase/assets/ai-tool-call-DyMI8DqD.js +1 -0
  312. package/dist/showcase/assets/alert-D6Pygy2s.js +62 -0
  313. package/dist/showcase/assets/alert-DCrWLbEx.js +93 -0
  314. package/dist/showcase/assets/alert-qTNM0vld.js +1 -0
  315. package/dist/showcase/assets/api-key-list-CCpuHYHc.js +73 -0
  316. package/dist/showcase/assets/app-sidebar-CxTRNC5L.js +1 -0
  317. package/dist/showcase/assets/arrow-down--phuskCV.js +1 -0
  318. package/dist/showcase/assets/arrow-left-B__WWqyA.js +1 -0
  319. package/dist/showcase/assets/arrow-right-1-EvXxjB.js +1 -0
  320. package/dist/showcase/assets/arrow-up-lWotnmo7.js +1 -0
  321. package/dist/showcase/assets/arrow-up-right-IyQ3oeq0.js +1 -0
  322. package/dist/showcase/assets/avatar-gugtNx4D.js +57 -0
  323. package/dist/showcase/assets/avatar-n1nywTlx.js +1 -0
  324. package/dist/showcase/assets/badge-TuE-u3Hv.js +28 -0
  325. package/dist/showcase/assets/badge-check-CPDvpVzK.js +1 -0
  326. package/dist/showcase/assets/bell-DeCVddCA.js +1 -0
  327. package/dist/showcase/assets/bot-B_vzJEJH.js +1 -0
  328. package/dist/showcase/assets/box-z4O8t_K5.js +1 -0
  329. package/dist/showcase/assets/brain-DdKBE4Bh.js +1 -0
  330. package/dist/showcase/assets/brand-CfW7mgTY.js +36 -0
  331. package/dist/showcase/assets/breadcrumb-B4TBbKv3.js +52 -0
  332. package/dist/showcase/assets/breadcrumb-bF_sFVBL.js +1 -0
  333. package/dist/showcase/assets/breadcrumbs-CBv3EaMX.js +1 -0
  334. package/dist/showcase/assets/briefcase-ClqzeNt3.js +1 -0
  335. package/dist/showcase/assets/building-2-BQuWgjZj.js +1 -0
  336. package/dist/showcase/assets/button-CWKNCI82.js +44 -0
  337. package/dist/showcase/assets/button-group-BYhxtFwV.js +1 -0
  338. package/dist/showcase/assets/buttons-mBRyBw3Q.js +270 -0
  339. package/dist/showcase/assets/calendar-BgloJjlW.js +1 -0
  340. package/dist/showcase/assets/calendar-CJDWspzi.js +1 -0
  341. package/dist/showcase/assets/calendar-CgML2kJt.js +16 -0
  342. package/dist/showcase/assets/calendar-days-C0gTLVnY.js +1 -0
  343. package/dist/showcase/assets/camera-nIlaz4Sn.js +1 -0
  344. package/dist/showcase/assets/card-1ncRnRvq.js +1 -0
  345. package/dist/showcase/assets/card-CcgWzFB-.js +188 -0
  346. package/dist/showcase/assets/card-primitives-By4-RTuP.js +1 -0
  347. package/dist/showcase/assets/card-radio-group-DeX3qsRg.js +1 -0
  348. package/dist/showcase/assets/cards-DdqQr8rY.js +328 -0
  349. package/dist/showcase/assets/carousel-CV8ltDl8.js +449 -0
  350. package/dist/showcase/assets/chart-BNzHjskC.js +358 -0
  351. package/dist/showcase/assets/chart-column-CpTxRLEH.js +1 -0
  352. package/dist/showcase/assets/checkbox-CZTTm4Dv.js +1 -0
  353. package/dist/showcase/assets/chevron-down-LWBNHe9S.js +1 -0
  354. package/dist/showcase/assets/chevron-left-BsshO7nf.js +1 -0
  355. package/dist/showcase/assets/chevron-right-t68um2_G.js +1 -0
  356. package/dist/showcase/assets/chevron-up-DjhlESJB.js +1 -0
  357. package/dist/showcase/assets/chevrons-up-down-ZUo0Do59.js +1 -0
  358. package/dist/showcase/assets/circle-BL52dLr9.js +1 -0
  359. package/dist/showcase/assets/circle-alert-CXCt6zxc.js +1 -0
  360. package/dist/showcase/assets/circle-check-CbiRRw7s.js +1 -0
  361. package/dist/showcase/assets/circle-check-big-BSgn7lyt.js +1 -0
  362. package/dist/showcase/assets/circle-dot-WEOpGGJf.js +1 -0
  363. package/dist/showcase/assets/circle-question-mark-C9hLlsD7.js +1 -0
  364. package/dist/showcase/assets/circle-x-BT9TJbJC.js +1 -0
  365. package/dist/showcase/assets/clock-3-CfRK8ckc.js +1 -0
  366. package/dist/showcase/assets/clock-D-3zf0c1.js +1 -0
  367. package/dist/showcase/assets/code-xml-CQYKKuBU.js +1 -0
  368. package/dist/showcase/assets/collapsible-BC0hQvat.js +27 -0
  369. package/dist/showcase/assets/collapsible-CRVtVDCF.js +1 -0
  370. package/dist/showcase/assets/combobox-D4VYvYCT.js +696 -0
  371. package/dist/showcase/assets/command-CxeHT4lL.js +1 -0
  372. package/dist/showcase/assets/command-Do_t_Zou.js +1 -0
  373. package/dist/showcase/assets/comment-composer-DoFwvVlq.js +1 -0
  374. package/dist/showcase/assets/comment-item-CT8UbVeg.js +1 -0
  375. package/dist/showcase/assets/comments-CqdXrjUn.js +357 -0
  376. package/dist/showcase/assets/commerce-B9V2Wo_q.js +79 -0
  377. package/dist/showcase/assets/commerce-extras-CNT3QmAT.js +189 -0
  378. package/dist/showcase/assets/composite-BXLXcagx.js +1 -0
  379. package/dist/showcase/assets/contact-card-BLcAXepj.js +65 -0
  380. package/dist/showcase/assets/content-container-DJVD3ZmI.js +1 -0
  381. package/dist/showcase/assets/copyable-od17NrMu.js +96 -0
  382. package/dist/showcase/assets/course-card-CdZQr5yy.js +77 -0
  383. package/dist/showcase/assets/cpu-B8kRNR1R.js +1 -0
  384. package/dist/showcase/assets/credit-card-BYMQj03s.js +1 -0
  385. package/dist/showcase/assets/currency-Cxv3Cp6B.js +149 -0
  386. package/dist/showcase/assets/dark-surfaces-Cfp58iFb.js +90 -0
  387. package/dist/showcase/assets/database-DuUABvxU.js +1 -0
  388. package/dist/showcase/assets/date-block-E9qfY7W7.js +1 -0
  389. package/dist/showcase/assets/date-picker-I8BdaiiU.js +1 -0
  390. package/dist/showcase/assets/date-pickers-BLJaqhcS.js +73 -0
  391. package/dist/showcase/assets/dense-info-Bk1K_7Ww.js +106 -0
  392. package/dist/showcase/assets/dialog-BuatDnQ9.js +1 -0
  393. package/dist/showcase/assets/dialog-DCx-LydW.js +1 -0
  394. package/dist/showcase/assets/display-Bt7busw5.js +403 -0
  395. package/dist/showcase/assets/dist-BPyBHOXU.js +45 -0
  396. package/dist/showcase/assets/dollar-sign-qXQSS6Gh.js +1 -0
  397. package/dist/showcase/assets/download-B2JAmHmJ.js +1 -0
  398. package/dist/showcase/assets/dropdown-menu-DXT3BZLa.js +1 -0
  399. package/dist/showcase/assets/dropzone-BKIxDJNy.js +1 -0
  400. package/dist/showcase/assets/earth-7-Z3Gv2v.js +1 -0
  401. package/dist/showcase/assets/ellipsis-6Krb3RRW.js +1 -0
  402. package/dist/showcase/assets/ellipsis-vertical-DeOMIw1J.js +1 -0
  403. package/dist/showcase/assets/empty-BSYKaeXQ.js +1 -0
  404. package/dist/showcase/assets/empty-item-YElgv25f.js +49 -0
  405. package/dist/showcase/assets/empty-state-D-LrvnKF.js +1 -0
  406. package/dist/showcase/assets/empty-state-dNh1GtVU.js +188 -0
  407. package/dist/showcase/assets/enhanced-activities-Bw99ItYl.js +361 -0
  408. package/dist/showcase/assets/enhanced-combobox-CqLZmU3K.js +1 -0
  409. package/dist/showcase/assets/event-calendar-CcSi7g5A.js +138 -0
  410. package/dist/showcase/assets/event-log-2uq-eYxh.js +330 -0
  411. package/dist/showcase/assets/example-CTJ8AdNR.js +1 -0
  412. package/dist/showcase/assets/external-link-D0gqSa1q.js +1 -0
  413. package/dist/showcase/assets/eye-CDMCDLei.js +1 -0
  414. package/dist/showcase/assets/feature-announcement-BlyNck35.js +34 -0
  415. package/dist/showcase/assets/file-Y5EbzufX.js +1 -0
  416. package/dist/showcase/assets/file-text-DH1mBuPi.js +1 -0
  417. package/dist/showcase/assets/filters-BtHF4GSM.js +78 -0
  418. package/dist/showcase/assets/flag-CJ08LwLY.js +1 -0
  419. package/dist/showcase/assets/folder-open-DODo2pjy.js +1 -0
  420. package/dist/showcase/assets/form-field-CHY7jh1q.js +1 -0
  421. package/dist/showcase/assets/format-DYJqAuDM.js +1 -0
  422. package/dist/showcase/assets/forms-DgvQQXHO.js +862 -0
  423. package/dist/showcase/assets/frame-CdKicP4A.js +167 -0
  424. package/dist/showcase/assets/getPseudoElementBounds-D9-Hr3mO.js +1 -0
  425. package/dist/showcase/assets/gift-DD8O7cld.js +1 -0
  426. package/dist/showcase/assets/giftcard-cards-Dp9eYodY.js +85 -0
  427. package/dist/showcase/assets/git-branch-DZq1Vo2G.js +1 -0
  428. package/dist/showcase/assets/global-search-BqDotXql.js +215 -0
  429. package/dist/showcase/assets/global-search-PH6LXqZw.js +1 -0
  430. package/dist/showcase/assets/globe-mRTwrUxM.js +1 -0
  431. package/dist/showcase/assets/gradient-card-CaL88YKv.js +58 -0
  432. package/dist/showcase/assets/hash-DuqvHQHv.js +1 -0
  433. package/dist/showcase/assets/header-CiNgDop3.js +1 -0
  434. package/dist/showcase/assets/header-notifications-B9XMBsK_.js +1 -0
  435. package/dist/showcase/assets/heart-DsGJfnDx.js +1 -0
  436. package/dist/showcase/assets/house-B504aFIP.js +1 -0
  437. package/dist/showcase/assets/icon-badge-DMNu8xb5.js +1 -0
  438. package/dist/showcase/assets/image-C3DaMxmn.js +1 -0
  439. package/dist/showcase/assets/inbox-BWKQMLMx.js +1 -0
  440. package/dist/showcase/assets/index-DN3tqopz.css +2 -0
  441. package/dist/showcase/assets/index-DaYVSqKu.js +10 -0
  442. package/dist/showcase/assets/inertValue-DrtTkMGx.js +1 -0
  443. package/dist/showcase/assets/info-_FrGoCay.js +1 -0
  444. package/dist/showcase/assets/inline-stat-BYu-tiUU.js +1 -0
  445. package/dist/showcase/assets/input-C96HMHWR.js +1 -0
  446. package/dist/showcase/assets/input-fMPi7XxI.js +1 -0
  447. package/dist/showcase/assets/input-group-BZnSgFCn.js +47 -0
  448. package/dist/showcase/assets/input-group-CVONNP3T.js +1 -0
  449. package/dist/showcase/assets/inputs-Blh0LJ8-.js +155 -0
  450. package/dist/showcase/assets/invoice-header-Bpo4iwX3.js +36 -0
  451. package/dist/showcase/assets/invoice-items-OVIrbG0k.js +36 -0
  452. package/dist/showcase/assets/invoice-mini-CaOMTiUO.js +14 -0
  453. package/dist/showcase/assets/invoice-table-BXd_HhUg.js +30 -0
  454. package/dist/showcase/assets/isSameDay-NBVO9AKF.js +1 -0
  455. package/dist/showcase/assets/isToday-Bk5HMXWn.js +1 -0
  456. package/dist/showcase/assets/italic-BOv5bW4H.js +1 -0
  457. package/dist/showcase/assets/item-B4rdcVVp.js +134 -0
  458. package/dist/showcase/assets/item-BVt0zZ12.js +1 -0
  459. package/dist/showcase/assets/item-C4Xk3DC1.js +1 -0
  460. package/dist/showcase/assets/kanban-BXbelelR.js +186 -0
  461. package/dist/showcase/assets/label-Cv6wotdv.js +1 -0
  462. package/dist/showcase/assets/languages-BofyvcCF.js +1 -0
  463. package/dist/showcase/assets/layers-DJK0t5px.js +1 -0
  464. package/dist/showcase/assets/layout-app-shell-D_yMonSl.js +608 -0
  465. package/dist/showcase/assets/layout-auth-BTvSTwUz.js +754 -0
  466. package/dist/showcase/assets/layout-containers-PMuo__2O.js +101 -0
  467. package/dist/showcase/assets/layout-header-DQ3zeCHz.js +170 -0
  468. package/dist/showcase/assets/layout-page-CbvWdHrK.js +122 -0
  469. package/dist/showcase/assets/layout-primitives-6nsFFIdE.js +34 -0
  470. package/dist/showcase/assets/layout-sidebar-CKqeVCSY.js +224 -0
  471. package/dist/showcase/assets/layout-users-Cypq-42s.js +117 -0
  472. package/dist/showcase/assets/layout-workspace-DiRR8vDv.js +183 -0
  473. package/dist/showcase/assets/lock-DXmvLEEx.js +1 -0
  474. package/dist/showcase/assets/lock-keyhole-Cu6M-jjE.js +1 -0
  475. package/dist/showcase/assets/mail-CXVFHkzh.js +1 -0
  476. package/dist/showcase/assets/mail-check-BNEu3j2a.js +1 -0
  477. package/dist/showcase/assets/map-DnE1pFCQ.js +124 -0
  478. package/dist/showcase/assets/map-pin-CpOVa8IH.js +1 -0
  479. package/dist/showcase/assets/media-library-C-KfEvm4.js +695 -0
  480. package/dist/showcase/assets/mention-inline-suggestions-DlmslsfR.js +1 -0
  481. package/dist/showcase/assets/mentions-C8ZdNFuC.js +138 -0
  482. package/dist/showcase/assets/menus-B8yUL75K.js +165 -0
  483. package/dist/showcase/assets/message-square-DNOTaOFs.js +1 -0
  484. package/dist/showcase/assets/metadata-list-BQAanxM-.js +1 -0
  485. package/dist/showcase/assets/metadata-list-DL9qgDAp.js +288 -0
  486. package/dist/showcase/assets/metric-CYi09Ltx.js +1 -0
  487. package/dist/showcase/assets/metric-bar-CQH1z8T3.js +1 -0
  488. package/dist/showcase/assets/metric-grid-H1ixqMCI.js +1 -0
  489. package/dist/showcase/assets/metric-trend-chip-BBzWzFZ-.js +1 -0
  490. package/dist/showcase/assets/metrics-analytics-bar-C7Z2ITl4.js +44 -0
  491. package/dist/showcase/assets/metrics-analytics-cards-CZZSWiMn.js +50 -0
  492. package/dist/showcase/assets/metrics-comparison-BPqz8k30.js +76 -0
  493. package/dist/showcase/assets/metrics-heatmap-C3NYZAfx.js +27 -0
  494. package/dist/showcase/assets/metrics-inline-badge-RjHfm7um.js +17 -0
  495. package/dist/showcase/assets/metrics-kpi-row-DnBjyDH4.js +31 -0
  496. package/dist/showcase/assets/metrics-micro-grid-CKn405qb.js +42 -0
  497. package/dist/showcase/assets/metrics-overview-D8YGtdrh.js +192 -0
  498. package/dist/showcase/assets/metrics-stat-cards-Dxh6cAha.js +54 -0
  499. package/dist/showcase/assets/minus-20OTSSxf.js +1 -0
  500. package/dist/showcase/assets/money-display-BoiAMxH8.js +1 -0
  501. package/dist/showcase/assets/month-year-picker-Bl59Ygq9.js +1 -0
  502. package/dist/showcase/assets/navigation-B8d2CDU6.js +90 -0
  503. package/dist/showcase/assets/navigation-D16JX3kL.js +230 -0
  504. package/dist/showcase/assets/navigation-extras-Dm83uT6i.js +43 -0
  505. package/dist/showcase/assets/onboarding-checklist-DznDpP9M.js +119 -0
  506. package/dist/showcase/assets/overlays-CzlSqbFz.js +408 -0
  507. package/dist/showcase/assets/overlays-DUFqbkb9.js +159 -0
  508. package/dist/showcase/assets/package-BCXIwEPz.js +1 -0
  509. package/dist/showcase/assets/package-check-Ol-Cw3j-.js +1 -0
  510. package/dist/showcase/assets/page-action-button-DpzdSYvw.js +1 -0
  511. package/dist/showcase/assets/page-header-B_b7SqW8.js +1 -0
  512. package/dist/showcase/assets/pagination-BPDQo9Dl.js +1 -0
  513. package/dist/showcase/assets/pagination-PvkEX0qs.js +42 -0
  514. package/dist/showcase/assets/paperclip-CznEsmLN.js +1 -0
  515. package/dist/showcase/assets/password-input-CWMY5q3b.js +1 -0
  516. package/dist/showcase/assets/pencil-Cl9qi90g.js +1 -0
  517. package/dist/showcase/assets/phone-DbvK_QQJ.js +1 -0
  518. package/dist/showcase/assets/plus-CO8t66Yo.js +1 -0
  519. package/dist/showcase/assets/popover-3QIVx9lU.js +1 -0
  520. package/dist/showcase/assets/popover-Cyg9oYIU.js +1 -0
  521. package/dist/showcase/assets/popover-menu-DJPHeIL1.js +1 -0
  522. package/dist/showcase/assets/products-WsU-qdMz.js +407 -0
  523. package/dist/showcase/assets/progress-C61sf-qt.js +1 -0
  524. package/dist/showcase/assets/progress-PvTl8Fgf.js +18 -0
  525. package/dist/showcase/assets/props-table-C8la6vcG.js +1 -0
  526. package/dist/showcase/assets/props.generated-vFrhDrth.json +38618 -0
  527. package/dist/showcase/assets/quote-N1_lRDnX.js +1 -0
  528. package/dist/showcase/assets/receipt-C6a_WyLu.js +1 -0
  529. package/dist/showcase/assets/receipt-text-CDOh8FAv.js +1 -0
  530. package/dist/showcase/assets/refresh-cw-D4-ECZ1x.js +1 -0
  531. package/dist/showcase/assets/resolveAriaLabelledBy-iFo8AzEr.js +1 -0
  532. package/dist/showcase/assets/resolveValueLabel-DqAP3zJd.js +1 -0
  533. package/dist/showcase/assets/rich-text-editor-CU0IZpwV.js +143 -0
  534. package/dist/showcase/assets/rich-text-editor-DCU7mMoO.js +124 -0
  535. package/dist/showcase/assets/rotate-ccw-Dd5zEmr7.js +1 -0
  536. package/dist/showcase/assets/save-DDmFSQli.js +1 -0
  537. package/dist/showcase/assets/schema-form-B7naqMvv.js +325 -0
  538. package/dist/showcase/assets/scroll-area-CdaYm4UK.js +32 -0
  539. package/dist/showcase/assets/scroll-area-DwWSHYHB.js +1 -0
  540. package/dist/showcase/assets/select-CNzpb5ug.js +1 -0
  541. package/dist/showcase/assets/select-DBXZ_Wzf.js +1 -0
  542. package/dist/showcase/assets/send-eDm7YMmA.js +1 -0
  543. package/dist/showcase/assets/separator-4IC9ED7s.js +1 -0
  544. package/dist/showcase/assets/separator-DPGDsZpG.js +28 -0
  545. package/dist/showcase/assets/settings-IANZGo2i.js +1 -0
  546. package/dist/showcase/assets/sheet-2oCce5ae.js +1 -0
  547. package/dist/showcase/assets/shield-CDZhhvFW.js +1 -0
  548. package/dist/showcase/assets/shield-alert-5hL3sdf3.js +1 -0
  549. package/dist/showcase/assets/shield-check-CaO2dhVS.js +1 -0
  550. package/dist/showcase/assets/shopping-bag-Bt3iK-Bv.js +1 -0
  551. package/dist/showcase/assets/sidebar-Cds60-PS.js +1 -0
  552. package/dist/showcase/assets/sidebar.context-CdH_DH9M.js +1 -0
  553. package/dist/showcase/assets/skeleton-2HajJKO4.js +29 -0
  554. package/dist/showcase/assets/skeleton-CGEJwPdD.js +1 -0
  555. package/dist/showcase/assets/slider-BjQViBR0.js +1 -0
  556. package/dist/showcase/assets/sliders-horizontal-C3JH5WQu.js +1 -0
  557. package/dist/showcase/assets/smart-card-CHouYi8U.js +1 -0
  558. package/dist/showcase/assets/sonner-Cog559j7.js +22 -0
  559. package/dist/showcase/assets/sortable.esm-hUEKsxpQ.js +5 -0
  560. package/dist/showcase/assets/sparkles-B18eTHVN.js +1 -0
  561. package/dist/showcase/assets/spinner-BSI97i4D.js +1 -0
  562. package/dist/showcase/assets/spinner-D0WhVyye.js +30 -0
  563. package/dist/showcase/assets/spinner-DQmJ7k9y.js +49 -0
  564. package/dist/showcase/assets/square-pen-CLyDWdhj.js +1 -0
  565. package/dist/showcase/assets/stacked-avatars-ECnU27uV.js +1 -0
  566. package/dist/showcase/assets/star-C3mhkpSK.js +1 -0
  567. package/dist/showcase/assets/startOfDay-ECIxhJGC.js +1 -0
  568. package/dist/showcase/assets/stringifyLocale-CkHjdQTJ.js +1 -0
  569. package/dist/showcase/assets/styles-CDD7mDye.js +1 -0
  570. package/dist/showcase/assets/suggestions-DOW6NBJp.js +126 -0
  571. package/dist/showcase/assets/switch-D59YKmf6.js +1 -0
  572. package/dist/showcase/assets/switch-NICmdoPn.js +1 -0
  573. package/dist/showcase/assets/sync-B8nBZXQ9.js +107 -0
  574. package/dist/showcase/assets/table-CckompuR.js +382 -0
  575. package/dist/showcase/assets/table-DtA4-Q0p.js +1 -0
  576. package/dist/showcase/assets/table-actions-DdoPJTMy.js +1 -0
  577. package/dist/showcase/assets/tabs-BrC_HxL_.js +1 -0
  578. package/dist/showcase/assets/tabs-UVxr80vY.js +19 -0
  579. package/dist/showcase/assets/tags-input-iDfvhzZD.js +1 -0
  580. package/dist/showcase/assets/text-button-DHFCLCoc.js +1 -0
  581. package/dist/showcase/assets/text-link-nCLLDcS_.js +1 -0
  582. package/dist/showcase/assets/textarea-DsSuQHQY.js +1 -0
  583. package/dist/showcase/assets/textarea-DyGI3Kcn.js +1 -0
  584. package/dist/showcase/assets/timelines-JmMcH657.js +200 -0
  585. package/dist/showcase/assets/toggle-group-BZKzMmC8.js +1 -0
  586. package/dist/showcase/assets/toggles-BSJvy4Tw.js +71 -0
  587. package/dist/showcase/assets/toggles-group-Bsc6eaWw.js +32 -0
  588. package/dist/showcase/assets/trash-2-C9AC7Pcv.js +1 -0
  589. package/dist/showcase/assets/trending-up-CGaDZj0S.js +1 -0
  590. package/dist/showcase/assets/truck-Dq6heokm.js +1 -0
  591. package/dist/showcase/assets/typography-ByvwR6Kg.js +223 -0
  592. package/dist/showcase/assets/ui-badge-BYgJSE_w.js +28 -0
  593. package/dist/showcase/assets/ui-card-BdueUfow.js +30 -0
  594. package/dist/showcase/assets/ui-table-CxtCQUsg.js +42 -0
  595. package/dist/showcase/assets/upload-tray-DKJ8nFZp.js +138 -0
  596. package/dist/showcase/assets/use-layout-link-CGBQHZon.js +1 -0
  597. package/dist/showcase/assets/useAnchoredPopupScrollLock-CywAbxVB.js +1 -0
  598. package/dist/showcase/assets/useAriaLabelledBy-B2bZzE7D.js +1 -0
  599. package/dist/showcase/assets/useCollapsiblePanel-SLdY_s6S.js +1 -0
  600. package/dist/showcase/assets/useCompositeItem-g6aCBp84.js +1 -0
  601. package/dist/showcase/assets/useCompositeListItem-DK0Tpege.js +1 -0
  602. package/dist/showcase/assets/useControlled-BF8maje6.js +1 -0
  603. package/dist/showcase/assets/useLabelableId-hdKzFCp2.js +1 -0
  604. package/dist/showcase/assets/useOpenInteractionType-CnhifZ1E.js +1 -0
  605. package/dist/showcase/assets/useRender-QhawWhpb.js +1 -0
  606. package/dist/showcase/assets/useTriggerFocusGuards-Cht7Sa7e.js +1 -0
  607. package/dist/showcase/assets/useValueChanged-DURO1kfZ.js +1 -0
  608. package/dist/showcase/assets/user-plus-DbOuTfr7.js +1 -0
  609. package/dist/showcase/assets/user-u65Fo7k7.js +1 -0
  610. package/dist/showcase/assets/users-BUb7CmVp.js +1 -0
  611. package/dist/showcase/assets/valueToPercent-gleKSaFe.js +1 -0
  612. package/dist/showcase/assets/vendor-profile-wfI3PBuO.js +37 -0
  613. package/dist/showcase/assets/video-e4hDbTQ2.js +1 -0
  614. package/dist/showcase/assets/wrench-CBUvtxdr.js +1 -0
  615. package/dist/showcase/assets/x-oVTJnCJn.js +1 -0
  616. package/dist/showcase/assets/zap-CzABYL3c.js +1 -0
  617. package/dist/showcase/index.html +2 -2
  618. package/dist/style.css +1 -1
  619. package/package.json +15 -4
  620. package/scripts/README.md +24 -0
  621. package/scripts/metadata.json +325 -0
  622. package/dist/_shared/accordion-BWU7zxlO.cjs +0 -2
  623. package/dist/_shared/accordion-BWU7zxlO.cjs.map +0 -1
  624. package/dist/_shared/accordion-DTYKGqWD.js +0 -130
  625. package/dist/_shared/accordion-DTYKGqWD.js.map +0 -1
  626. package/dist/_shared/action-menu-BoQnI2UF.cjs +0 -2
  627. package/dist/_shared/action-menu-BoQnI2UF.cjs.map +0 -1
  628. package/dist/_shared/action-menu-uyg1Phsn.js +0 -96
  629. package/dist/_shared/action-menu-uyg1Phsn.js.map +0 -1
  630. package/dist/_shared/ai-artifact-CY1Jf9gM.cjs +0 -3
  631. package/dist/_shared/ai-artifact-CY1Jf9gM.cjs.map +0 -1
  632. package/dist/_shared/ai-artifact-DdlK_l56.js +0 -1099
  633. package/dist/_shared/ai-artifact-DdlK_l56.js.map +0 -1
  634. package/dist/_shared/auth-CDjZFJxy.cjs +0 -2
  635. package/dist/_shared/auth-CDjZFJxy.cjs.map +0 -1
  636. package/dist/_shared/auth-_udUdWtn.js +0 -643
  637. package/dist/_shared/auth-_udUdWtn.js.map +0 -1
  638. package/dist/_shared/badge--o9wFHB_.cjs +0 -2
  639. package/dist/_shared/badge--o9wFHB_.cjs.map +0 -1
  640. package/dist/_shared/badge-yGlx9trX.js +0 -108
  641. package/dist/_shared/badge-yGlx9trX.js.map +0 -1
  642. package/dist/_shared/button-683R5quQ.js +0 -46
  643. package/dist/_shared/button-683R5quQ.js.map +0 -1
  644. package/dist/_shared/button-C1qc97U1.cjs +0 -2
  645. package/dist/_shared/button-C1qc97U1.cjs.map +0 -1
  646. package/dist/_shared/button-CjZrRLzR.cjs +0 -2
  647. package/dist/_shared/button-CjZrRLzR.cjs.map +0 -1
  648. package/dist/_shared/button-SuocMQFT.js +0 -173
  649. package/dist/_shared/button-SuocMQFT.js.map +0 -1
  650. package/dist/_shared/buttons-9YBwevkP.cjs +0 -2
  651. package/dist/_shared/buttons-9YBwevkP.cjs.map +0 -1
  652. package/dist/_shared/buttons-BR4BGVYf.js +0 -143
  653. package/dist/_shared/buttons-BR4BGVYf.js.map +0 -1
  654. package/dist/_shared/combobox-CpSmiPV8.cjs +0 -2
  655. package/dist/_shared/combobox-CpSmiPV8.cjs.map +0 -1
  656. package/dist/_shared/combobox-D01JwyFZ.js +0 -810
  657. package/dist/_shared/combobox-D01JwyFZ.js.map +0 -1
  658. package/dist/_shared/comments-D9velZAW.js +0 -952
  659. package/dist/_shared/comments-D9velZAW.js.map +0 -1
  660. package/dist/_shared/comments-DyUAKSQu.cjs +0 -2
  661. package/dist/_shared/comments-DyUAKSQu.cjs.map +0 -1
  662. package/dist/_shared/date-picker-BnsvBFOZ.cjs +0 -2
  663. package/dist/_shared/date-picker-BnsvBFOZ.cjs.map +0 -1
  664. package/dist/_shared/date-picker-TMcjGO26.js +0 -1361
  665. package/dist/_shared/date-picker-TMcjGO26.js.map +0 -1
  666. package/dist/_shared/date-pickers-BI4xLjHR.js +0 -330
  667. package/dist/_shared/date-pickers-BI4xLjHR.js.map +0 -1
  668. package/dist/_shared/date-pickers-BhaUK5S2.cjs +0 -2
  669. package/dist/_shared/date-pickers-BhaUK5S2.cjs.map +0 -1
  670. package/dist/_shared/dialog-A95-614f.js +0 -101
  671. package/dist/_shared/dialog-A95-614f.js.map +0 -1
  672. package/dist/_shared/dialog-ivDByBmO.cjs +0 -2
  673. package/dist/_shared/dialog-ivDByBmO.cjs.map +0 -1
  674. package/dist/_shared/display-C4n0uuxl.js +0 -1154
  675. package/dist/_shared/display-C4n0uuxl.js.map +0 -1
  676. package/dist/_shared/display-oDW0O9yB.cjs +0 -2
  677. package/dist/_shared/display-oDW0O9yB.cjs.map +0 -1
  678. package/dist/_shared/forms-CwJci54_.js +0 -3430
  679. package/dist/_shared/forms-CwJci54_.js.map +0 -1
  680. package/dist/_shared/forms-E3JkTgcC.cjs +0 -2
  681. package/dist/_shared/forms-E3JkTgcC.cjs.map +0 -1
  682. package/dist/_shared/header-BUAddfdE.js +0 -360
  683. package/dist/_shared/header-BUAddfdE.js.map +0 -1
  684. package/dist/_shared/header-BnxWOiNm.cjs +0 -2
  685. package/dist/_shared/header-BnxWOiNm.cjs.map +0 -1
  686. package/dist/_shared/hooks-MW0UTO3q.cjs +0 -2
  687. package/dist/_shared/hooks-MW0UTO3q.cjs.map +0 -1
  688. package/dist/_shared/hooks-ZiPIvs0_.js +0 -118
  689. package/dist/_shared/hooks-ZiPIvs0_.js.map +0 -1
  690. package/dist/_shared/mentions-Br-EP9tq.js +0 -506
  691. package/dist/_shared/mentions-Br-EP9tq.js.map +0 -1
  692. package/dist/_shared/mentions-DNTsRHJl.cjs +0 -2
  693. package/dist/_shared/mentions-DNTsRHJl.cjs.map +0 -1
  694. package/dist/_shared/metadata-CPSQGPJh.cjs +0 -2
  695. package/dist/_shared/metadata-CPSQGPJh.cjs.map +0 -1
  696. package/dist/_shared/metadata-qTNAOM7E.js +0 -235
  697. package/dist/_shared/metadata-qTNAOM7E.js.map +0 -1
  698. package/dist/_shared/navigation-HnnA6uSV.js +0 -419
  699. package/dist/_shared/navigation-HnnA6uSV.js.map +0 -1
  700. package/dist/_shared/navigation-J2g0Tw9D.cjs +0 -2
  701. package/dist/_shared/navigation-J2g0Tw9D.cjs.map +0 -1
  702. package/dist/_shared/overlays-CIeniDjj.js +0 -639
  703. package/dist/_shared/overlays-CIeniDjj.js.map +0 -1
  704. package/dist/_shared/overlays-Xc_F_Y-E.cjs +0 -2
  705. package/dist/_shared/overlays-Xc_F_Y-E.cjs.map +0 -1
  706. package/dist/_shared/page-BFV-KE8H.js +0 -262
  707. package/dist/_shared/page-BFV-KE8H.js.map +0 -1
  708. package/dist/_shared/page-UJfWfw2R.cjs +0 -2
  709. package/dist/_shared/page-UJfWfw2R.cjs.map +0 -1
  710. package/dist/_shared/rich-text-editor-B6WKHUKC.js +0 -620
  711. package/dist/_shared/rich-text-editor-B6WKHUKC.js.map +0 -1
  712. package/dist/_shared/rich-text-editor-Dm-6r_xe.cjs +0 -2
  713. package/dist/_shared/rich-text-editor-Dm-6r_xe.cjs.map +0 -1
  714. package/dist/_shared/sheet-BKEfwhCn.js +0 -100
  715. package/dist/_shared/sheet-BKEfwhCn.js.map +0 -1
  716. package/dist/_shared/sheet-D4yWgkwC.cjs +0 -2
  717. package/dist/_shared/sheet-D4yWgkwC.cjs.map +0 -1
  718. package/dist/_shared/sidebar-BML5ZZ5s.js +0 -537
  719. package/dist/_shared/sidebar-BML5ZZ5s.js.map +0 -1
  720. package/dist/_shared/sidebar-Bl_KRk-S.cjs +0 -2
  721. package/dist/_shared/sidebar-Bl_KRk-S.cjs.map +0 -1
  722. package/dist/_shared/sidebar-C89O5ho_.cjs +0 -2
  723. package/dist/_shared/sidebar-C89O5ho_.cjs.map +0 -1
  724. package/dist/_shared/sidebar-ux-yk-Ph.js +0 -382
  725. package/dist/_shared/sidebar-ux-yk-Ph.js.map +0 -1
  726. package/dist/_shared/smart-card-DYZGY_Su.js +0 -361
  727. package/dist/_shared/smart-card-DYZGY_Su.js.map +0 -1
  728. package/dist/_shared/smart-card-Df80VF8x.cjs +0 -2
  729. package/dist/_shared/smart-card-Df80VF8x.cjs.map +0 -1
  730. package/dist/_shared/table-CBKDA7ZE.js +0 -1189
  731. package/dist/_shared/table-CBKDA7ZE.js.map +0 -1
  732. package/dist/_shared/table-CJoxRCWy.cjs +0 -2
  733. package/dist/_shared/table-CJoxRCWy.cjs.map +0 -1
  734. package/dist/_shared/workspace-CTjIGCE0.cjs +0 -2
  735. package/dist/_shared/workspace-CTjIGCE0.cjs.map +0 -1
  736. package/dist/_shared/workspace-WgJgiSUA.js +0 -357
  737. package/dist/_shared/workspace-WgJgiSUA.js.map +0 -1
  738. package/dist/showcase/assets/AreaChart-DUe3j5uB.js +0 -6
  739. package/dist/showcase/assets/CSPContext-ImKusJJ_.js +0 -1
  740. package/dist/showcase/assets/CompositeItem-DleE4kTc.js +0 -1
  741. package/dist/showcase/assets/CompositeRoot-BbNkvtLz.js +0 -1
  742. package/dist/showcase/assets/DialogTrigger-C0DB0bXw.js +0 -1
  743. package/dist/showcase/assets/FieldItemContext-CFTR-INZ.js +0 -1
  744. package/dist/showcase/assets/FormContext-lmjYAh4E.js +0 -1
  745. package/dist/showcase/assets/LabelableContext-CDv6gSfU.js +0 -1
  746. package/dist/showcase/assets/PreviewLayout-BG1B5TzA.js +0 -1
  747. package/dist/showcase/assets/RadioGroup-C-0MNAYY.js +0 -1
  748. package/dist/showcase/assets/Separator-KsPLUEno.js +0 -1
  749. package/dist/showcase/assets/ToolbarRootContext-AV8xAl2m.js +0 -1
  750. package/dist/showcase/assets/accordion-BWkuKg77.js +0 -171
  751. package/dist/showcase/assets/accordion-variants-CVT_62VO.js +0 -1
  752. package/dist/showcase/assets/action-menu-BOUHlGba.js +0 -1
  753. package/dist/showcase/assets/activities-DMDQje7Y.js +0 -501
  754. package/dist/showcase/assets/activities-feed-card-B8wpu4F3.js +0 -1
  755. package/dist/showcase/assets/activity-B-FxNryB.js +0 -1
  756. package/dist/showcase/assets/admin-CAhEeKt_.js +0 -80
  757. package/dist/showcase/assets/ai-UioEgJ90.js +0 -41
  758. package/dist/showcase/assets/ai-artifact-CUAlhcSX.js +0 -2
  759. package/dist/showcase/assets/ai-chat-C_w2PSmy.js +0 -568
  760. package/dist/showcase/assets/ai-elements-DmxqXR6H.js +0 -387
  761. package/dist/showcase/assets/ai-new-PG02TWQq.js +0 -167
  762. package/dist/showcase/assets/ai-tool-call-BaJx1rR4.js +0 -1
  763. package/dist/showcase/assets/alert-D7n-kQoO.js +0 -93
  764. package/dist/showcase/assets/alert-DIelf1qF.js +0 -1
  765. package/dist/showcase/assets/alert-TQCZEcn-.js +0 -62
  766. package/dist/showcase/assets/api-key-list-CSt4trYG.js +0 -73
  767. package/dist/showcase/assets/app-sidebar-DixqrLf2.js +0 -1
  768. package/dist/showcase/assets/arrow-down-CYh_aUsd.js +0 -1
  769. package/dist/showcase/assets/arrow-left-pYYsNkZE.js +0 -1
  770. package/dist/showcase/assets/arrow-right-Bf1Tl6D5.js +0 -1
  771. package/dist/showcase/assets/arrow-up-BhmQRZs9.js +0 -1
  772. package/dist/showcase/assets/arrow-up-right-CuAsO3-r.js +0 -1
  773. package/dist/showcase/assets/avatar-5EFTnHEG.js +0 -1
  774. package/dist/showcase/assets/avatar-DLpnivU0.js +0 -57
  775. package/dist/showcase/assets/badge-check-BRAVo7dA.js +0 -1
  776. package/dist/showcase/assets/badge-yFoRqbiq.js +0 -28
  777. package/dist/showcase/assets/bell-Dt3Nz2y2.js +0 -1
  778. package/dist/showcase/assets/bot-5Ro5Dayc.js +0 -1
  779. package/dist/showcase/assets/box-mt6TbZO6.js +0 -1
  780. package/dist/showcase/assets/brain-736080Wh.js +0 -1
  781. package/dist/showcase/assets/brand-4K8xsJ91.js +0 -36
  782. package/dist/showcase/assets/breadcrumb-CAlApdCw.js +0 -1
  783. package/dist/showcase/assets/breadcrumb-DHeGqoTD.js +0 -52
  784. package/dist/showcase/assets/breadcrumbs-D_lniGJs.js +0 -1
  785. package/dist/showcase/assets/briefcase-B_Uti-Iu.js +0 -1
  786. package/dist/showcase/assets/building-2-zgcwuzxP.js +0 -1
  787. package/dist/showcase/assets/button-PmqgeJKm.js +0 -44
  788. package/dist/showcase/assets/button-group-DAOmmujV.js +0 -1
  789. package/dist/showcase/assets/buttons-PtpR_v16.js +0 -270
  790. package/dist/showcase/assets/calendar-BiOGjB7a.js +0 -1
  791. package/dist/showcase/assets/calendar-C1A98cz0.js +0 -16
  792. package/dist/showcase/assets/calendar-DTgagmt7.js +0 -1
  793. package/dist/showcase/assets/calendar-days-pr8kXiTx.js +0 -1
  794. package/dist/showcase/assets/camera-CGKLOOep.js +0 -1
  795. package/dist/showcase/assets/card-CFIG8Dgg.js +0 -1
  796. package/dist/showcase/assets/card-CRd07Iun.js +0 -188
  797. package/dist/showcase/assets/card-primitives-YgCOqVDI.js +0 -1
  798. package/dist/showcase/assets/card-radio-group-Du6yaMZ-.js +0 -1
  799. package/dist/showcase/assets/cards-H7ywhTNM.js +0 -328
  800. package/dist/showcase/assets/carousel-Dwll5oz1.js +0 -449
  801. package/dist/showcase/assets/chart-BWnVf-d-.js +0 -358
  802. package/dist/showcase/assets/chart-column-DjAyOA-t.js +0 -1
  803. package/dist/showcase/assets/checkbox-fwuAAaUZ.js +0 -1
  804. package/dist/showcase/assets/chevron-down-CSn8HCwf.js +0 -1
  805. package/dist/showcase/assets/chevron-left-Ddj6-KOu.js +0 -1
  806. package/dist/showcase/assets/chevron-right-d-umkBru.js +0 -1
  807. package/dist/showcase/assets/chevron-up-CeFY6O0I.js +0 -1
  808. package/dist/showcase/assets/chevrons-up-down-Ck3rUZtc.js +0 -1
  809. package/dist/showcase/assets/circle-Dy08kACD.js +0 -1
  810. package/dist/showcase/assets/circle-alert-ysbx8rsZ.js +0 -1
  811. package/dist/showcase/assets/circle-check-TT7cFQrr.js +0 -1
  812. package/dist/showcase/assets/circle-check-big-4RnJfeaC.js +0 -1
  813. package/dist/showcase/assets/circle-dot-CvoDXS-W.js +0 -1
  814. package/dist/showcase/assets/circle-question-mark-Dbi-WTYN.js +0 -1
  815. package/dist/showcase/assets/circle-x-c5z6-eYV.js +0 -1
  816. package/dist/showcase/assets/clock-3-DDEsD4Tb.js +0 -1
  817. package/dist/showcase/assets/clock-DuBsP5t3.js +0 -1
  818. package/dist/showcase/assets/code-xml-SoYTMEdm.js +0 -1
  819. package/dist/showcase/assets/collapsible-Cv3oGVkH.js +0 -27
  820. package/dist/showcase/assets/collapsible-DagkA3To.js +0 -1
  821. package/dist/showcase/assets/combobox-CPC4a_MH.js +0 -696
  822. package/dist/showcase/assets/command-BtaMPVtf.js +0 -45
  823. package/dist/showcase/assets/command-C37Q471b.js +0 -1
  824. package/dist/showcase/assets/comment-composer-W0xfh_HP.js +0 -1
  825. package/dist/showcase/assets/comment-item-Ctcpx1GX.js +0 -1
  826. package/dist/showcase/assets/comments-BODDdRry.js +0 -357
  827. package/dist/showcase/assets/commerce-B9MICTY2.js +0 -79
  828. package/dist/showcase/assets/commerce-extras-DsgnTkBH.js +0 -189
  829. package/dist/showcase/assets/composite-B-19wwf9.js +0 -1
  830. package/dist/showcase/assets/contact-card-CqP3YxTq.js +0 -65
  831. package/dist/showcase/assets/content-container-x2tsQKwH.js +0 -1
  832. package/dist/showcase/assets/copyable-DH0w0i_h.js +0 -96
  833. package/dist/showcase/assets/course-card-qpC4JUUM.js +0 -77
  834. package/dist/showcase/assets/cpu-DjJeD_0Z.js +0 -1
  835. package/dist/showcase/assets/credit-card-CYgRtM77.js +0 -1
  836. package/dist/showcase/assets/currency-hguqIjWU.js +0 -149
  837. package/dist/showcase/assets/dark-surfaces-Cj34O9A0.js +0 -90
  838. package/dist/showcase/assets/database-BVwSMeGM.js +0 -1
  839. package/dist/showcase/assets/date-block-LCTDXG5-.js +0 -1
  840. package/dist/showcase/assets/date-picker-CbYq8wZ7.js +0 -1
  841. package/dist/showcase/assets/date-pickers-BaSX23MK.js +0 -73
  842. package/dist/showcase/assets/dense-info-kY1QmtaP.js +0 -106
  843. package/dist/showcase/assets/dialog-B85US9Ue.js +0 -1
  844. package/dist/showcase/assets/dialog-iIgfMvTJ.js +0 -1
  845. package/dist/showcase/assets/display-DTaQWVJp.js +0 -403
  846. package/dist/showcase/assets/dollar-sign-DlK6XF_v.js +0 -1
  847. package/dist/showcase/assets/download-B_EY5cGA.js +0 -1
  848. package/dist/showcase/assets/dropdown-menu-bPWrLPgm.js +0 -1
  849. package/dist/showcase/assets/dropzone-Bl7RO_Uk.js +0 -1
  850. package/dist/showcase/assets/earth-C7n2JAYm.js +0 -1
  851. package/dist/showcase/assets/ellipsis-ntuo3ejh.js +0 -1
  852. package/dist/showcase/assets/ellipsis-vertical-yH8S83bc.js +0 -1
  853. package/dist/showcase/assets/empty-CY8f7iFe.js +0 -1
  854. package/dist/showcase/assets/empty-item-Ct7uCr40.js +0 -49
  855. package/dist/showcase/assets/empty-state-DlO8SJi8.js +0 -188
  856. package/dist/showcase/assets/empty-state-IAAUTn6f.js +0 -1
  857. package/dist/showcase/assets/enhanced-activities-DLwShhof.js +0 -361
  858. package/dist/showcase/assets/enhanced-combobox-Cs_-wq9p.js +0 -1
  859. package/dist/showcase/assets/event-calendar-C4KlumlG.js +0 -138
  860. package/dist/showcase/assets/event-log-BvUU5Rj8.js +0 -330
  861. package/dist/showcase/assets/example-BIrQab7K.js +0 -1
  862. package/dist/showcase/assets/external-link-DuJlM_H4.js +0 -1
  863. package/dist/showcase/assets/eye-CnRPL_H8.js +0 -1
  864. package/dist/showcase/assets/feature-announcement-0dOcSH7F.js +0 -34
  865. package/dist/showcase/assets/file-Dc5UHkfE.js +0 -1
  866. package/dist/showcase/assets/file-text-D3AE37vP.js +0 -1
  867. package/dist/showcase/assets/filters-CsovNSxS.js +0 -78
  868. package/dist/showcase/assets/flag-CJJ43K4x.js +0 -1
  869. package/dist/showcase/assets/folder-open-Dp0sceCi.js +0 -1
  870. package/dist/showcase/assets/form-field-Cxm4APa9.js +0 -1
  871. package/dist/showcase/assets/format-bDaUGCSP.js +0 -1
  872. package/dist/showcase/assets/forms-BrVikK1p.js +0 -862
  873. package/dist/showcase/assets/frame-CkLEABTd.js +0 -167
  874. package/dist/showcase/assets/getPseudoElementBounds-Bznj386s.js +0 -1
  875. package/dist/showcase/assets/gift-Bx8IO1FQ.js +0 -1
  876. package/dist/showcase/assets/giftcard-cards-CZTXBjv0.js +0 -85
  877. package/dist/showcase/assets/git-branch-D9jt-u1q.js +0 -1
  878. package/dist/showcase/assets/global-search-C2R_3Pb3.js +0 -215
  879. package/dist/showcase/assets/global-search-D9XJ747r.js +0 -1
  880. package/dist/showcase/assets/globe-BJHI134i.js +0 -1
  881. package/dist/showcase/assets/gradient-card-CV8w2JG5.js +0 -58
  882. package/dist/showcase/assets/hash-CtBGoIvf.js +0 -1
  883. package/dist/showcase/assets/header-B3FSlVv4.js +0 -1
  884. package/dist/showcase/assets/header-notifications-3VH9lzzJ.js +0 -1
  885. package/dist/showcase/assets/heart-BWZYF4xJ.js +0 -1
  886. package/dist/showcase/assets/house-CAQOnHLO.js +0 -1
  887. package/dist/showcase/assets/icon-badge-CxvxB8Vd.js +0 -1
  888. package/dist/showcase/assets/image-Byz-p7hT.js +0 -1
  889. package/dist/showcase/assets/inbox-D4UE_W9O.js +0 -1
  890. package/dist/showcase/assets/index-ADfexGMA.css +0 -2
  891. package/dist/showcase/assets/index-Cz4UGUT2.js +0 -10
  892. package/dist/showcase/assets/inertValue-BVXUUuS4.js +0 -1
  893. package/dist/showcase/assets/info-DFu8OfxV.js +0 -1
  894. package/dist/showcase/assets/inline-stat-DqI70yoJ.js +0 -1
  895. package/dist/showcase/assets/input-BPDdWrB1.js +0 -1
  896. package/dist/showcase/assets/input-BzafMIDj.js +0 -1
  897. package/dist/showcase/assets/input-group-BYZYeQ7j.js +0 -1
  898. package/dist/showcase/assets/input-group-YIWmmLJ6.js +0 -47
  899. package/dist/showcase/assets/inputs-DjzrYJdb.js +0 -49
  900. package/dist/showcase/assets/invoice-header-B00JrPAb.js +0 -36
  901. package/dist/showcase/assets/invoice-items-CUt5D3Wz.js +0 -36
  902. package/dist/showcase/assets/invoice-mini-CRoaQ9g9.js +0 -14
  903. package/dist/showcase/assets/invoice-table-DYNnDTQl.js +0 -30
  904. package/dist/showcase/assets/isSameDay-DVNkwpSk.js +0 -1
  905. package/dist/showcase/assets/isToday-DZ1HTCty.js +0 -1
  906. package/dist/showcase/assets/italic-AbetEb3d.js +0 -1
  907. package/dist/showcase/assets/item-BGA6_5Zh.js +0 -134
  908. package/dist/showcase/assets/item-BJOYyqeO.js +0 -1
  909. package/dist/showcase/assets/item-CbiuwbAN.js +0 -1
  910. package/dist/showcase/assets/kanban-Br-Yz002.js +0 -186
  911. package/dist/showcase/assets/label-BlCKlLE-.js +0 -1
  912. package/dist/showcase/assets/languages-CKcUvHnt.js +0 -1
  913. package/dist/showcase/assets/layers-CakZLRSD.js +0 -1
  914. package/dist/showcase/assets/layout-app-shell-ukDXqPxC.js +0 -608
  915. package/dist/showcase/assets/layout-auth-BFza65L3.js +0 -754
  916. package/dist/showcase/assets/layout-containers-v1jG_b7r.js +0 -101
  917. package/dist/showcase/assets/layout-header-CqBf9wjY.js +0 -170
  918. package/dist/showcase/assets/layout-page-WJcljCac.js +0 -122
  919. package/dist/showcase/assets/layout-sidebar-DL6TLuQC.js +0 -224
  920. package/dist/showcase/assets/layout-users-B8qpsvV9.js +0 -117
  921. package/dist/showcase/assets/layout-workspace-iOKZ4-9K.js +0 -183
  922. package/dist/showcase/assets/lock-Dn4-vUBz.js +0 -1
  923. package/dist/showcase/assets/lock-keyhole-M6KZ_7RC.js +0 -1
  924. package/dist/showcase/assets/mail-check-DXqQwivW.js +0 -1
  925. package/dist/showcase/assets/mail-w1nhszbW.js +0 -1
  926. package/dist/showcase/assets/map-CquesVXo.js +0 -124
  927. package/dist/showcase/assets/map-pin-DUl-Lt6t.js +0 -1
  928. package/dist/showcase/assets/media-library-CCJBQRPu.js +0 -695
  929. package/dist/showcase/assets/mention-inline-suggestions-DyW6IwL8.js +0 -1
  930. package/dist/showcase/assets/mentions-Ea4pSJqG.js +0 -138
  931. package/dist/showcase/assets/menus-CJjtE4fD.js +0 -89
  932. package/dist/showcase/assets/message-square-B0RnrJV6.js +0 -1
  933. package/dist/showcase/assets/metadata-list-DkN9yfTj.js +0 -288
  934. package/dist/showcase/assets/metadata-list-fm8e58ID.js +0 -1
  935. package/dist/showcase/assets/metric-bar-BydkmggA.js +0 -1
  936. package/dist/showcase/assets/metric-grid-BKjrYpt9.js +0 -1
  937. package/dist/showcase/assets/metric-guQTLTAa.js +0 -1
  938. package/dist/showcase/assets/metric-trend-chip-DehaJ3nC.js +0 -1
  939. package/dist/showcase/assets/metrics-analytics-bar-YjwFT4ae.js +0 -44
  940. package/dist/showcase/assets/metrics-analytics-cards-B6DspERM.js +0 -50
  941. package/dist/showcase/assets/metrics-comparison-Nru5wypZ.js +0 -76
  942. package/dist/showcase/assets/metrics-heatmap-CcumN0Or.js +0 -27
  943. package/dist/showcase/assets/metrics-inline-badge-2WB7w9mz.js +0 -17
  944. package/dist/showcase/assets/metrics-kpi-row-jU3hsB3C.js +0 -31
  945. package/dist/showcase/assets/metrics-micro-grid-CaJ99RXL.js +0 -42
  946. package/dist/showcase/assets/metrics-overview-Sa7z6jct.js +0 -192
  947. package/dist/showcase/assets/metrics-stat-cards-PLvMkA0M.js +0 -54
  948. package/dist/showcase/assets/minus-OyRBql2C.js +0 -1
  949. package/dist/showcase/assets/money-display-23DKz-jK.js +0 -1
  950. package/dist/showcase/assets/month-year-picker-oEoInnKW.js +0 -1
  951. package/dist/showcase/assets/navigation-Ds60FMAs.js +0 -230
  952. package/dist/showcase/assets/navigation-Dufz6qnF.js +0 -90
  953. package/dist/showcase/assets/navigation-extras-DKufT82I.js +0 -43
  954. package/dist/showcase/assets/onboarding-checklist-DSkS2ktA.js +0 -119
  955. package/dist/showcase/assets/overlays-BptoR4sm.js +0 -408
  956. package/dist/showcase/assets/overlays-CVGJ_FEg.js +0 -88
  957. package/dist/showcase/assets/package-0ZgMoFm1.js +0 -1
  958. package/dist/showcase/assets/package-check-CT0dhSM8.js +0 -1
  959. package/dist/showcase/assets/page-action-button-DrHJKFbp.js +0 -1
  960. package/dist/showcase/assets/page-header-CikNDnqI.js +0 -1
  961. package/dist/showcase/assets/pagination-CxuA2zkE.js +0 -42
  962. package/dist/showcase/assets/pagination-DsPLs2Tx.js +0 -1
  963. package/dist/showcase/assets/paperclip-CDMZ_JAo.js +0 -1
  964. package/dist/showcase/assets/password-input-BVaUPw7a.js +0 -1
  965. package/dist/showcase/assets/pencil-BouoJ5x7.js +0 -1
  966. package/dist/showcase/assets/phone-DCNFH5yg.js +0 -1
  967. package/dist/showcase/assets/plus-DkHZm34I.js +0 -1
  968. package/dist/showcase/assets/popover-BSB11Qjp.js +0 -1
  969. package/dist/showcase/assets/popover-CECpX3MQ.js +0 -1
  970. package/dist/showcase/assets/popover-menu-CuA8fb7i.js +0 -1
  971. package/dist/showcase/assets/products-BJHNTW62.js +0 -407
  972. package/dist/showcase/assets/progress-DGvRQyPS.js +0 -1
  973. package/dist/showcase/assets/progress-tpxRVOkp.js +0 -18
  974. package/dist/showcase/assets/props-table-BR-KjRNe.js +0 -1
  975. package/dist/showcase/assets/props.generated-qdUud3iu.json +0 -38611
  976. package/dist/showcase/assets/quote-CN-Sodsj.js +0 -1
  977. package/dist/showcase/assets/receipt-T8B9lscp.js +0 -1
  978. package/dist/showcase/assets/receipt-text-CeBruM29.js +0 -1
  979. package/dist/showcase/assets/refresh-cw-DnxNcOMm.js +0 -1
  980. package/dist/showcase/assets/resolveAriaLabelledBy-B2ZzrlGb.js +0 -1
  981. package/dist/showcase/assets/resolveValueLabel-CGuVi0Dj.js +0 -1
  982. package/dist/showcase/assets/rich-text-editor-Bha0lSKT.js +0 -143
  983. package/dist/showcase/assets/rich-text-editor-NeOPmoZF.js +0 -124
  984. package/dist/showcase/assets/rotate-ccw-7aUlKQpX.js +0 -1
  985. package/dist/showcase/assets/save-AT8JlA8E.js +0 -1
  986. package/dist/showcase/assets/schema-form-BpkVygoO.js +0 -325
  987. package/dist/showcase/assets/scroll-area-B0wmaMAD.js +0 -32
  988. package/dist/showcase/assets/scroll-area-CgXTHlpJ.js +0 -1
  989. package/dist/showcase/assets/select-BG_Iad8E.js +0 -1
  990. package/dist/showcase/assets/select-t6dryszf.js +0 -1
  991. package/dist/showcase/assets/send-BzGRF4t-.js +0 -1
  992. package/dist/showcase/assets/separator-BjGdXNcn.js +0 -1
  993. package/dist/showcase/assets/separator-DbiGagrP.js +0 -28
  994. package/dist/showcase/assets/settings-BSRT_96A.js +0 -1
  995. package/dist/showcase/assets/sheet-CEuKOBxr.js +0 -1
  996. package/dist/showcase/assets/shield-CcR2q5u_.js +0 -1
  997. package/dist/showcase/assets/shield-alert-DhbgXV1X.js +0 -1
  998. package/dist/showcase/assets/shield-check-CRbBJXw2.js +0 -1
  999. package/dist/showcase/assets/shopping-bag-B5BzpLV5.js +0 -1
  1000. package/dist/showcase/assets/sidebar--2nHUTn3.js +0 -1
  1001. package/dist/showcase/assets/sidebar.context-BCb20eIt.js +0 -1
  1002. package/dist/showcase/assets/skeleton-BeVdks4r.js +0 -1
  1003. package/dist/showcase/assets/skeleton-DijlT51X.js +0 -29
  1004. package/dist/showcase/assets/slider-Cp4m3NTK.js +0 -1
  1005. package/dist/showcase/assets/sliders-horizontal-C8RwUn0S.js +0 -1
  1006. package/dist/showcase/assets/smart-card-B4P_C0nk.js +0 -1
  1007. package/dist/showcase/assets/sonner-CLYYRmEW.js +0 -22
  1008. package/dist/showcase/assets/sortable.esm-CoekVJlU.js +0 -5
  1009. package/dist/showcase/assets/sparkles-DFJmoAFP.js +0 -1
  1010. package/dist/showcase/assets/spinner-CeQHboSs.js +0 -49
  1011. package/dist/showcase/assets/spinner-DMKANM9S.js +0 -30
  1012. package/dist/showcase/assets/spinner-WEI7TMVk.js +0 -1
  1013. package/dist/showcase/assets/square-pen-CfvmmXYo.js +0 -1
  1014. package/dist/showcase/assets/stacked-avatars-CcCnnUrA.js +0 -1
  1015. package/dist/showcase/assets/star-DK5onZCp.js +0 -1
  1016. package/dist/showcase/assets/startOfDay-BuizEr24.js +0 -1
  1017. package/dist/showcase/assets/styles-BStlbPXe.js +0 -1
  1018. package/dist/showcase/assets/suggestions-Cd_XUmz3.js +0 -126
  1019. package/dist/showcase/assets/switch-5f1vwEZ7.js +0 -1
  1020. package/dist/showcase/assets/switch-arjWj-n7.js +0 -1
  1021. package/dist/showcase/assets/sync-DorQdMfx.js +0 -107
  1022. package/dist/showcase/assets/table-ClYkDRAk.js +0 -1
  1023. package/dist/showcase/assets/table-D9q0odD8.js +0 -382
  1024. package/dist/showcase/assets/table-actions-UJbkGb44.js +0 -1
  1025. package/dist/showcase/assets/tabs-BENBPFif.js +0 -19
  1026. package/dist/showcase/assets/tabs-ePpje8sU.js +0 -1
  1027. package/dist/showcase/assets/tags-input-DRlg3zQH.js +0 -1
  1028. package/dist/showcase/assets/text-button-CQvP6Kic.js +0 -1
  1029. package/dist/showcase/assets/text-link-DT-nOORV.js +0 -1
  1030. package/dist/showcase/assets/textarea-BGHGV17m.js +0 -1
  1031. package/dist/showcase/assets/textarea-pstF1OBP.js +0 -1
  1032. package/dist/showcase/assets/timelines-D8y-IyxW.js +0 -200
  1033. package/dist/showcase/assets/toggle-group-BVyFo04r.js +0 -1
  1034. package/dist/showcase/assets/toggles-dhLpAHSR.js +0 -71
  1035. package/dist/showcase/assets/toggles-group-BJ5Jio2p.js +0 -32
  1036. package/dist/showcase/assets/trash-2-OsaEm8cc.js +0 -1
  1037. package/dist/showcase/assets/trending-up-HlQQXTth.js +0 -1
  1038. package/dist/showcase/assets/truck-CvvBxBeB.js +0 -1
  1039. package/dist/showcase/assets/typography-D_99bjSh.js +0 -223
  1040. package/dist/showcase/assets/ui-badge-C1bu7wRu.js +0 -28
  1041. package/dist/showcase/assets/ui-card-Ct1FFUxv.js +0 -30
  1042. package/dist/showcase/assets/ui-table-Dxu9Jjq0.js +0 -42
  1043. package/dist/showcase/assets/upload-tray-BeOBVU1z.js +0 -138
  1044. package/dist/showcase/assets/use-layout-link-BK_oEoBg.js +0 -1
  1045. package/dist/showcase/assets/useAnchoredPopupScrollLock-DLXArfPo.js +0 -1
  1046. package/dist/showcase/assets/useAriaLabelledBy-etINba8U.js +0 -1
  1047. package/dist/showcase/assets/useCollapsiblePanel-BNe9r1t_.js +0 -1
  1048. package/dist/showcase/assets/useCompositeItem-CvG1CBEV.js +0 -1
  1049. package/dist/showcase/assets/useCompositeListItem-CcY0U1bY.js +0 -1
  1050. package/dist/showcase/assets/useControlled-Cpg8gDqb.js +0 -1
  1051. package/dist/showcase/assets/useLabelableId-Czdg4nY8.js +0 -1
  1052. package/dist/showcase/assets/useOpenInteractionType-eyZ6twES.js +0 -1
  1053. package/dist/showcase/assets/useRender-BAZlIYnj.js +0 -1
  1054. package/dist/showcase/assets/useTriggerFocusGuards-C2I8g7TT.js +0 -1
  1055. package/dist/showcase/assets/useValueChanged-Bz3WRSDy.js +0 -1
  1056. package/dist/showcase/assets/user-Bqmz8M16.js +0 -1
  1057. package/dist/showcase/assets/user-plus-MMxrhI4h.js +0 -1
  1058. package/dist/showcase/assets/users-ERTaffcv.js +0 -1
  1059. package/dist/showcase/assets/valueToPercent-B5BHWU68.js +0 -1
  1060. package/dist/showcase/assets/vendor-profile-BAwCE0wP.js +0 -37
  1061. package/dist/showcase/assets/video-DJm0ubTE.js +0 -1
  1062. package/dist/showcase/assets/wrench-gaXnvr_b.js +0 -1
  1063. package/dist/showcase/assets/x-BqJnRkKw.js +0 -1
  1064. package/dist/showcase/assets/zap-DHBVTfYZ.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-DnMEJXP9.js","names":[],"sources":["../../src/components/layout/auth/auth-card.tsx","../../src/components/layout/auth/auth-hooks.tsx","../../src/components/layout/auth/auth.strings.ts","../../src/components/layout/auth/auth-footer-links.tsx","../../src/components/layout/auth/auth-social-providers.tsx","../../src/components/layout/auth/auth-split-panel.tsx","../../src/components/layout/auth/auth-shell.tsx","../../src/components/layout/auth/auth-method-switch.tsx"],"sourcesContent":["import {\n\tCardContent,\n\tCardFooter,\n\tCardShell,\n} from '@/components/base/cards';\nimport { Heading, Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nimport type { AuthCardProps } from './auth.types';\n\nexport function AuthCard({\n\teyebrow,\n\ttitle,\n\tdescription,\n\theaderEnd,\n\tbanner,\n\tmedia,\n\tfooter,\n\tchildren,\n\tclassName,\n\theaderClassName,\n\tmediaClassName,\n\tcontentClassName,\n\tfooterClassName,\n\t...props\n}: AuthCardProps) {\n\tconst hasHeader = Boolean(eyebrow || title || description || headerEnd);\n\n\treturn (\n\t\t<CardShell\n\t\t\tdata-slot=\"auth-card\"\n\t\t\tclassName={cn(\n\t\t\t\t'auth-card--component',\n\t\t\t\t'gap-0 overflow-hidden rounded-lg border border-border/70 bg-card py-0 shadow-sm',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{!!media && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'auth-card--media',\n\t\t\t\t\t\t'min-h-12 border-b border-border/60 bg-muted/50',\n\t\t\t\t\t\tmediaClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{media}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t{!!hasHeader && (\n\t\t\t\t<header\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'auth-card--header',\n\t\t\t\t\t\t'flex items-start justify-between gap-4 px-6 pt-6 md:px-8 md:pt-8',\n\t\t\t\t\t\theaderClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<div className=\"min-w-0 space-y-1.5\">\n\t\t\t\t\t\t{!!eyebrow && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\tsize=\"xxs\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\t\t\tclassName=\"auth-card--eyebrow uppercase tracking-wide\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{eyebrow}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!title && (\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\ttag=\"h1\"\n\t\t\t\t\t\t\t\tcontainerClassName=\"space-y-0\"\n\t\t\t\t\t\t\t\tclassName=\"auth-card--title border-0 pb-0 text-lg leading-tight\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tlineHeight=\"relaxed\"\n\t\t\t\t\t\t\t\tclassName=\"auth-card--description max-w-prose\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t\t{!!headerEnd && (\n\t\t\t\t\t\t<div className=\"auth-card--header-end shrink-0\">\n\t\t\t\t\t\t\t{headerEnd}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t</header>\n\t\t\t)}\n\n\t\t\t<CardContent\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-card--content',\n\t\t\t\t\t'px-6 pb-6 md:px-8 md:pb-8',\n\t\t\t\t\thasHeader ? 'pt-5' : 'pt-6 md:pt-8',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!banner && <div className=\"auth-card--banner mb-5\">{banner}</div>}\n\t\t\t\t{children}\n\t\t\t</CardContent>\n\n\t\t\t{!!footer && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'auth-card--footer',\n\t\t\t\t\t\t'border-t border-border/60 px-6 py-4 md:px-8',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footer}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\t\t</CardShell>\n\t);\n}\n","import { isValidElement, useMemo } from 'react';\n\nimport { useLayoutLinkRenderer } from '../hooks';\nimport type {\n\tAuthBrand,\n\tAuthBrandConfig,\n\tUseAuthLinksOptions,\n\tUseAuthLinksReturn,\n\tUseAuthShellOptions,\n\tUseAuthShellReturn,\n} from './auth.types';\n\nexport function isAuthBrandConfig(brand: AuthBrand | undefined): brand is AuthBrandConfig {\n\treturn Boolean(\n\t\tbrand &&\n\t\t\ttypeof brand === 'object' &&\n\t\t\t!isValidElement(brand) &&\n\t\t\t('logo' in brand || 'label' in brand || 'description' in brand || 'href' in brand),\n\t);\n}\n\nexport function useAuthLinks({\n\tlinks = [],\n\trenderLink,\n\tLinkComponent,\n}: UseAuthLinksOptions = {}): UseAuthLinksReturn {\n\tconst resolvedRenderLink = useLayoutLinkRenderer({ renderLink, LinkComponent });\n\tconst visibleLinks = useMemo(\n\t\t() => links.filter((link) => link.visible !== false),\n\t\t[links],\n\t);\n\n\treturn {\n\t\tlinks: visibleLinks,\n\t\trenderLink: resolvedRenderLink,\n\t};\n}\n\nexport function useAuthShell({\n\tvariant = 'card',\n\tbrand,\n\tfooter,\n\tfooterLinks = [],\n\tpolicyLinks = [],\n\tlanguageLinks = [],\n\tlanguageSwitcher,\n\tpostCard,\n\tsocialProviders = [],\n\tsplitPanel,\n\trenderLink,\n\tLinkComponent,\n}: UseAuthShellOptions = {}): UseAuthShellReturn {\n\tconst resolvedRenderLink = useLayoutLinkRenderer({ renderLink, LinkComponent });\n\tconst visibleFooterLinks = useMemo(\n\t\t() => footerLinks.filter((link) => link.visible !== false),\n\t\t[footerLinks],\n\t);\n\tconst visiblePolicyLinks = useMemo(\n\t\t() => policyLinks.filter((link) => link.visible !== false),\n\t\t[policyLinks],\n\t);\n\tconst visibleLanguageLinks = useMemo(\n\t\t() => languageLinks.filter((link) => link.visible !== false),\n\t\t[languageLinks],\n\t);\n\tconst visibleSocialProviders = useMemo(\n\t\t() => socialProviders.filter((provider) => provider.visible !== false),\n\t\t[socialProviders],\n\t);\n\tconst hasBrand = Boolean(\n\t\tbrand &&\n\t\t\t(isAuthBrandConfig(brand)\n\t\t\t\t? brand.logo || brand.label || brand.description\n\t\t\t\t: brand),\n\t);\n\tconst hasAfterCard = Boolean(\n\t\tpostCard ||\n\t\t\tfooter ||\n\t\t\tlanguageSwitcher ||\n\t\t\tvisibleFooterLinks.length > 0 ||\n\t\t\tvisiblePolicyLinks.length > 0 ||\n\t\t\tvisibleLanguageLinks.length > 0,\n\t);\n\tconst hasSplitPanel = Boolean(splitPanel);\n\n\treturn {\n\t\tvariant: hasSplitPanel ? variant : 'card',\n\t\thasBrand,\n\t\thasAfterCard,\n\t\thasSplitPanel,\n\t\thasSocialProviders: visibleSocialProviders.length > 0,\n\t\trenderLink: resolvedRenderLink,\n\t\tfooterLinks: visibleFooterLinks,\n\t\tpolicyLinks: visiblePolicyLinks,\n\t\tlanguageLinks: visibleLanguageLinks,\n\t\tsocialProviders: visibleSocialProviders,\n\t};\n}\n","export interface AuthShellStrings {\n\tsocialDivider: string;\n\tsocialProvidersLabel: string;\n\tfooterLinksLabel: string;\n\tpolicyLinksLabel: string;\n\tlanguageLinksLabel: string;\n}\n\nexport const defaultAuthShellStrings: AuthShellStrings = {\n\tsocialDivider: 'or continue with email',\n\tsocialProvidersLabel: 'Social sign-in options',\n\tfooterLinksLabel: 'Authentication links',\n\tpolicyLinksLabel: 'Policies',\n\tlanguageLinksLabel: 'Language options',\n};\n\nexport interface AuthFooterLinksStrings {\n\tlabel: string;\n}\n\nexport const defaultAuthFooterLinksStrings: AuthFooterLinksStrings = {\n\tlabel: 'Authentication links',\n};\n\nexport interface AuthSocialProvidersStrings {\n\tlabel: string;\n}\n\nexport const defaultAuthSocialProvidersStrings: AuthSocialProvidersStrings = {\n\tlabel: 'Social sign-in options',\n};\n\nexport interface AuthMethodSwitchStrings {\n\tlabel: string;\n\tdivider: string;\n}\n\nexport const defaultAuthMethodSwitchStrings: AuthMethodSwitchStrings = {\n\tlabel: 'Authentication method',\n\tdivider: 'or',\n};\n","import { Fragment } from 'react';\n\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { useAuthLinks } from './auth-hooks';\nimport { defaultAuthFooterLinksStrings } from './auth.strings';\nimport type { AuthFooterLinksProps } from './auth.types';\n\nexport function AuthFooterLinks({\n\tlinks,\n\tleadingIcon,\n\tseparator = '·',\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthFooterLinksProps) {\n\tconst strings = useStrings(defaultAuthFooterLinksStrings, stringsProp);\n\tconst { links: visibleLinks, renderLink: resolvedRenderLink } = useAuthLinks({\n\t\tlinks,\n\t\trenderLink,\n\t\tLinkComponent,\n\t});\n\n\tif (visibleLinks.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<nav\n\t\t\taria-label={props['aria-label'] ?? strings.label}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-footer-links--component',\n\t\t\t\t'flex flex-wrap items-center justify-center gap-x-2 gap-y-1 text-center',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{!!leadingIcon && (\n\t\t\t\t<span className=\"auth-footer-links--icon flex shrink-0 items-center text-muted-foreground\" aria-hidden=\"true\">\n\t\t\t\t\t{leadingIcon}\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t{visibleLinks.map((link, index) => {\n\t\t\t\tconst linkNode = resolvedRenderLink({\n\t\t\t\t\thref: link.href,\n\t\t\t\t\ttarget: link.target,\n\t\t\t\t\trel: link.rel,\n\t\t\t\t\texternal: link.external,\n\t\t\t\t\tdisabled: link.disabled,\n\t\t\t\t\tonClick: link.onClick,\n\t\t\t\t\tclassName: cn(\n\t\t\t\t\t\t'auth-footer-links--item',\n\t\t\t\t\t\t'text-muted-foreground transition-colors hover:text-foreground',\n\t\t\t\t\t\tlink.disabled && 'pointer-events-none opacity-50',\n\t\t\t\t\t),\n\t\t\t\t\tchildren: (\n\t\t\t\t\t\t<Text tag=\"span\" size=\"xs\" className=\"text-inherit\">\n\t\t\t\t\t\t\t{link.label}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t),\n\t\t\t\t});\n\n\t\t\t\treturn (\n\t\t\t\t\t<Fragment key={link.id ?? index}>\n\t\t\t\t\t\t{index > 0 && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\tclassName=\"auth-footer-links--separator\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{separator}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{linkNode}\n\t\t\t\t\t</Fragment>\n\t\t\t\t);\n\t\t\t})}\n\t\t</nav>\n\t);\n}\n","import { KeyRound } from 'lucide-react';\n\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { useLayoutLinkRenderer } from '../hooks';\nimport { defaultAuthSocialProvidersStrings } from './auth.strings';\nimport type {\n\tAuthSocialProvider,\n\tAuthSocialProviderButtonProps,\n\tAuthSocialProvidersProps,\n} from './auth.types';\n\nconst PROVIDER_BUTTON_CLASS = 'auth-social-provider-button--component inline-flex h-9 w-full items-center justify-center gap-2 rounded-md border border-input bg-background px-3 text-sm font-medium text-foreground shadow-xs transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50';\n\nfunction GoogleMark() {\n\treturn (\n\t\t<svg\n\t\t\taria-hidden=\"true\"\n\t\t\tclassName=\"size-4\"\n\t\t\tviewBox=\"0 0 256 262\"\n\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t>\n\t\t\t<path fill=\"#4285F4\" d=\"M255.878 133.451c0-10.734-.871-18.567-2.756-26.69H130.55v48.448h71.947c-1.45 12.04-9.283 30.172-26.69 42.356l-.244 1.622 38.755 30.023 2.685.268c24.659-22.774 38.875-56.282 38.875-96.027\" />\n\t\t\t<path fill=\"#34A853\" d=\"M130.55 261.1c35.248 0 64.839-11.605 86.453-31.622l-41.196-31.913c-11.024 7.688-25.82 13.055-45.257 13.055-34.523 0-63.824-22.773-74.269-54.25l-1.531.13-40.298 31.187-.527 1.465C35.393 231.798 79.49 261.1 130.55 261.1\" />\n\t\t\t<path fill=\"#FBBC05\" d=\"M56.281 156.37c-2.756-8.123-4.351-16.827-4.351-25.82 0-8.994 1.595-17.697 4.206-25.82l-.073-1.73L15.26 71.312l-1.335.635C5.077 89.644 0 109.517 0 130.55s5.077 40.905 13.925 58.602l42.356-32.782\" />\n\t\t\t<path fill=\"#EB4335\" d=\"M130.55 50.479c24.514 0 41.05 10.589 50.479 19.438l36.844-35.974C195.245 12.91 165.798 0 130.55 0 79.49 0 35.393 29.301 13.925 71.947l42.211 32.783c10.59-31.477 39.891-54.251 74.414-54.251\" />\n\t\t</svg>\n\t);\n}\n\nfunction MicrosoftMark() {\n\treturn (\n\t\t<svg aria-hidden=\"true\" className=\"size-4\" viewBox=\"0 0 23 23\">\n\t\t\t<path fill=\"#f25022\" d=\"M1 1h10v10H1z\" />\n\t\t\t<path fill=\"#7fba00\" d=\"M12 1h10v10H12z\" />\n\t\t\t<path fill=\"#00a4ef\" d=\"M1 12h10v10H1z\" />\n\t\t\t<path fill=\"#ffb900\" d=\"M12 12h10v10H12z\" />\n\t\t</svg>\n\t);\n}\n\nfunction GithubMark() {\n\treturn (\n\t\t<svg aria-hidden=\"true\" className=\"size-4\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\n\t\t\t<path d=\"M12 2C6.48 2 2 6.58 2 12.24c0 4.53 2.87 8.37 6.84 9.73.5.09.68-.22.68-.49 0-.24-.01-.88-.01-1.73-2.78.62-3.37-1.37-3.37-1.37-.45-1.18-1.11-1.5-1.11-1.5-.91-.64.07-.63.07-.63 1 .07 1.53 1.06 1.53 1.06.9 1.57 2.36 1.12 2.93.86.09-.67.35-1.12.64-1.38-2.22-.26-4.56-1.14-4.56-5.07 0-1.12.39-2.04 1.03-2.76-.1-.26-.45-1.31.1-2.72 0 0 .84-.28 2.75 1.05A9.32 9.32 0 0 1 12 6.95c.85 0 1.7.12 2.5.35 1.9-1.33 2.74-1.05 2.74-1.05.55 1.41.2 2.46.1 2.72.64.72 1.03 1.64 1.03 2.76 0 3.94-2.34 4.8-4.57 5.06.36.32.68.95.68 1.91 0 1.38-.01 2.49-.01 2.83 0 .27.18.59.69.49A10.12 10.12 0 0 0 22 12.24C22 6.58 17.52 2 12 2Z\" />\n\t\t</svg>\n\t);\n}\n\nfunction AppleMark() {\n\treturn (\n\t\t<svg aria-hidden=\"true\" className=\"size-4\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\n\t\t\t<path d=\"M16.37 12.05c-.02-2.26 1.85-3.35 1.94-3.4-1.06-1.55-2.69-1.76-3.26-1.78-1.37-.14-2.7.82-3.39.82-.71 0-1.78-.8-2.93-.78-1.5.02-2.9.89-3.67 2.25-1.57 2.72-.4 6.72 1.1 8.92.76 1.08 1.64 2.29 2.79 2.25 1.13-.05 1.55-.72 2.91-.72 1.35 0 1.75.72 2.93.69 1.21-.02 1.98-1.09 2.71-2.18.87-1.24 1.22-2.46 1.23-2.52-.03-.01-2.34-.9-2.36-3.55ZM14.16 5.42c.61-.76 1.03-1.8.91-2.85-.88.04-1.98.61-2.62 1.35-.57.65-1.08 1.73-.95 2.74.99.08 2.02-.5 2.66-1.24Z\" />\n\t\t</svg>\n\t);\n}\n\nfunction ProviderIcon({ provider }: { provider: AuthSocialProvider }) {\n\tif (provider.icon) return <>{provider.icon}</>;\n\tswitch (provider.provider) {\n\t\tcase 'google':\n\t\t\treturn <GoogleMark />;\n\t\tcase 'github':\n\t\t\treturn <GithubMark />;\n\t\tcase 'microsoft':\n\t\t\treturn <MicrosoftMark />;\n\t\tcase 'apple':\n\t\t\treturn <AppleMark />;\n\t\tdefault:\n\t\t\treturn <KeyRound className=\"size-4\" aria-hidden=\"true\" />;\n\t}\n}\n\nexport function AuthSocialProviderButton({\n\tprovider,\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n}: AuthSocialProviderButtonProps) {\n\tconst resolvedRenderLink = useLayoutLinkRenderer({ renderLink, LinkComponent });\n\tconst content = (\n\t\t<>\n\t\t\t<ProviderIcon provider={provider} />\n\t\t\t<Text tag=\"span\" className=\"text-inherit\">\n\t\t\t\t{provider.label}\n\t\t\t</Text>\n\t\t</>\n\t);\n\tconst buttonClassName = cn(\n\t\tPROVIDER_BUTTON_CLASS,\n\t\tprovider.disabled && 'pointer-events-none opacity-50',\n\t\tclassName,\n\t);\n\n\tif (provider.href) {\n\t\treturn resolvedRenderLink({\n\t\t\thref: provider.href,\n\t\t\ttarget: provider.target,\n\t\t\trel: provider.rel,\n\t\t\texternal: provider.external,\n\t\t\tdisabled: provider.disabled,\n\t\t\tonClick: provider.onClick,\n\t\t\tclassName: buttonClassName,\n\t\t\tchildren: content,\n\t\t});\n\t}\n\n\treturn (\n\t\t<Button\n\t\t\ttype=\"button\"\n\t\t\tvariant=\"secondary\"\n\t\t\tbuttonStyle=\"outline\"\n\t\t\tfullWidth\n\t\t\tdisabled={provider.disabled}\n\t\t\tclassName={cn('auth-social-provider-button--component', className)}\n\t\t\tonClick={(event) => provider.onClick?.(event)}\n\t\t>\n\t\t\t{content}\n\t\t</Button>\n\t);\n}\n\nexport function AuthSocialProviders({\n\tproviders,\n\tlayout = 'stack',\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthSocialProvidersProps) {\n\tconst strings = useStrings(defaultAuthSocialProvidersStrings, stringsProp);\n\tconst visibleProviders = providers?.filter((provider) => provider.visible !== false) ?? [];\n\n\tif (visibleProviders.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div\n\t\t\trole=\"group\"\n\t\t\taria-label={props['aria-label'] ?? strings.label}\n\t\t\tdata-layout={layout}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-social-providers--component',\n\t\t\t\tlayout === 'grid' ? 'grid gap-2 sm:grid-cols-2' : 'grid gap-2',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{visibleProviders.map((provider) => (\n\t\t\t\t<AuthSocialProviderButton\n\t\t\t\t\tkey={provider.id ?? String(provider.label)}\n\t\t\t\t\tprovider={provider}\n\t\t\t\t\trenderLink={renderLink}\n\t\t\t\t\tLinkComponent={LinkComponent}\n\t\t\t\t/>\n\t\t\t))}\n\t\t</div>\n\t);\n}\n","import {\n\tItem,\n\tItemContent,\n\tItemDescription,\n\tItemGroup,\n\tItemMedia,\n\tItemTitle,\n} from '@/components/base/item';\nimport { Heading, Text } from '@/components/typography';\nimport { cn } from '@/lib/utils';\n\nimport type { AuthSplitPanelProps } from './auth.types';\n\nconst SURFACE_CLASS: Record<NonNullable<AuthSplitPanelProps['surface']>, string> = {\n\tcard: 'border-border/70 bg-card',\n\tmuted: 'border-border/60 bg-muted/40',\n};\n\nexport function AuthSplitPanel({\n\teyebrow,\n\ttitle,\n\tdescription,\n\tmedia,\n\tfeatures,\n\tfooter,\n\tchildren,\n\tsurface = 'muted',\n\tclassName,\n\tcontentClassName,\n\t...props\n}: AuthSplitPanelProps) {\n\tconst hasIntro = Boolean(eyebrow || title || description);\n\tconst visibleFeatures = features?.filter((feature) => feature.title) ?? [];\n\n\treturn (\n\t\t<aside\n\t\t\tdata-slot=\"auth-split-panel\"\n\t\t\tdata-surface={surface}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-split-panel--component',\n\t\t\t\t'flex min-h-full w-full flex-col justify-between overflow-hidden border',\n\t\t\t\tSURFACE_CLASS[surface],\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-split-panel--content',\n\t\t\t\t\t'flex min-h-full flex-col justify-center gap-8 p-6 md:p-8 lg:p-10',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!media && (\n\t\t\t\t\t<div className=\"auth-split-panel--media overflow-hidden rounded-lg border border-border/60 bg-background/70\">\n\t\t\t\t\t\t{media}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{!!hasIntro && (\n\t\t\t\t\t<div className=\"auth-split-panel--intro max-w-xl space-y-2\">\n\t\t\t\t\t\t{!!eyebrow && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\tsize=\"xxs\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--eyebrow uppercase tracking-wide\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{eyebrow}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!title && (\n\t\t\t\t\t\t\t<Heading\n\t\t\t\t\t\t\t\ttag=\"h2\"\n\t\t\t\t\t\t\t\tcontainerClassName=\"space-y-0\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--title border-0 pb-0 text-xl leading-tight\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!description && (\n\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\t\tlineHeight=\"relaxed\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--description max-w-prose\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{visibleFeatures.length > 0 && (\n\t\t\t\t\t<ItemGroup className=\"auth-split-panel--features grid gap-3\">\n\t\t\t\t\t\t{visibleFeatures.map((feature, index) => (\n\t\t\t\t\t\t\t<Item\n\t\t\t\t\t\t\t\tkey={feature.id ?? index}\n\t\t\t\t\t\t\t\tvariant=\"muted\"\n\t\t\t\t\t\t\t\tclassName=\"auth-split-panel--feature bg-background/70\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{!!feature.icon && (\n\t\t\t\t\t\t\t\t\t<ItemMedia variant=\"icon\" className=\"text-muted-foreground\">\n\t\t\t\t\t\t\t\t\t\t{feature.icon}\n\t\t\t\t\t\t\t\t\t</ItemMedia>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<ItemContent className=\"min-w-[min(12rem,100%)]\">\n\t\t\t\t\t\t\t\t\t<ItemTitle>{feature.title}</ItemTitle>\n\t\t\t\t\t\t\t\t\t{!!feature.description && (\n\t\t\t\t\t\t\t\t\t\t<ItemDescription clamp=\"none\">{feature.description}</ItemDescription>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</ItemContent>\n\t\t\t\t\t\t\t</Item>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</ItemGroup>\n\t\t\t\t)}\n\n\t\t\t\t{children}\n\n\t\t\t\t{!!footer && (\n\t\t\t\t\t<div className=\"auth-split-panel--footer\">\n\t\t\t\t\t\t{footer}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</aside>\n\t);\n}\n","import { Globe2 } from 'lucide-react';\nimport { isValidElement, type ReactNode } from 'react';\n\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { AuthCard } from './auth-card';\nimport { AuthFooterLinks } from './auth-footer-links';\nimport { isAuthBrandConfig, useAuthShell } from './auth-hooks';\nimport { defaultAuthShellStrings } from './auth.strings';\nimport { AuthSocialProviders } from './auth-social-providers';\nimport { AuthSplitPanel } from './auth-split-panel';\nimport type {\n\tAuthBrand,\n\tAuthBrandConfig,\n\tAuthShellProps,\n\tAuthSplitPanelProps,\n} from './auth.types';\n\nconst SIZE_CLASS: Record<NonNullable<AuthShellProps['size']>, string> = {\n\tsm: 'max-w-sm',\n\tmd: 'max-w-md',\n\tlg: 'max-w-lg',\n};\n\nfunction isSplitPanelProps(panel: AuthShellProps['splitPanel']): panel is AuthSplitPanelProps {\n\treturn Boolean(panel && typeof panel === 'object' && !isValidElement(panel));\n}\n\nfunction renderBrandContent(brand: AuthBrandConfig): ReactNode {\n\tconst hasText = Boolean(brand.label || brand.description);\n\n\treturn (\n\t\t<>\n\t\t\t{!!brand.logo && (\n\t\t\t\t<div className=\"auth-shell--brand-logo shrink-0\">\n\t\t\t\t\t{brand.logo}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t\t{!!hasText && (\n\t\t\t\t<div className=\"auth-shell--brand-text min-w-0\">\n\t\t\t\t\t{!!brand.label && (\n\t\t\t\t\t\t<Text tag=\"div\" weight=\"semibold\" className=\"auth-shell--brand-label\">\n\t\t\t\t\t\t\t{brand.label}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t\t{!!brand.description && (\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\ttag=\"div\"\n\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\ttype=\"secondary\"\n\t\t\t\t\t\t\tclassName=\"auth-shell--brand-description\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{brand.description}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</>\n\t);\n}\n\nfunction renderBrand({\n\tbrand,\n\trenderLink,\n}: {\n\tbrand?: AuthBrand;\n\trenderLink: NonNullable<AuthShellProps['renderLink']>;\n}) {\n\tif (!brand) return null;\n\n\tif (!isAuthBrandConfig(brand)) {\n\t\treturn (\n\t\t\t<div className=\"auth-shell--brand flex items-center justify-center\">\n\t\t\t\t{brand}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst content = renderBrandContent(brand);\n\tconst className = cn(\n\t\t'auth-shell--brand',\n\t\t'inline-flex items-center justify-center gap-2.5 self-center rounded-md text-foreground',\n\t\tbrand.href && 'transition-opacity hover:opacity-80',\n\t);\n\n\tif (brand.href) {\n\t\treturn renderLink({\n\t\t\thref: brand.href,\n\t\t\t'aria-label': brand.ariaLabel,\n\t\t\tclassName,\n\t\t\tchildren: content,\n\t\t});\n\t}\n\n\treturn <div className={className}>{content}</div>;\n}\n\nfunction renderSplitPanel(panel: AuthShellProps['splitPanel']) {\n\tif (!panel) return null;\n\tif (isValidElement(panel)) return panel;\n\tif (isSplitPanelProps(panel)) return <AuthSplitPanel {...panel} />;\n\treturn null;\n}\n\nexport function AuthShell({\n\tchildren,\n\tvariant: variantProp = 'card',\n\tsize = 'md',\n\talign = 'center',\n\tbrand,\n\teyebrow,\n\ttitle,\n\tdescription,\n\theaderEnd,\n\tbanner,\n\tcardMedia,\n\tcardMediaClassName,\n\tcardFooter,\n\tpostCard,\n\tfooter,\n\tfooterLinks,\n\tpolicyLinks,\n\tlanguageLinks,\n\tlanguageSwitcher,\n\tsocialProviders,\n\tsocialProvidersLayout = 'stack',\n\tsocialDivider,\n\tsplitPanel,\n\tsplitSide = 'left',\n\tsplitMobile = 'hidden',\n\trenderLink,\n\tLinkComponent,\n\tclassName,\n\tmainClassName,\n\tstackClassName,\n\tcardClassName,\n\tcardContentClassName,\n\tsplitGridClassName,\n\tsplitPanelClassName,\n\tfooterClassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthShellProps) {\n\tconst strings = useStrings(defaultAuthShellStrings, stringsProp);\n\tconst {\n\t\tvariant,\n\t\thasBrand,\n\t\thasAfterCard,\n\t\thasSplitPanel,\n\t\thasSocialProviders,\n\t\trenderLink: resolvedRenderLink,\n\t\tfooterLinks: visibleFooterLinks,\n\t\tpolicyLinks: visiblePolicyLinks,\n\t\tlanguageLinks: visibleLanguageLinks,\n\t\tsocialProviders: visibleSocialProviders,\n\t} = useAuthShell({\n\t\tvariant: variantProp,\n\t\tbrand,\n\t\tfooter,\n\t\tfooterLinks,\n\t\tpolicyLinks,\n\t\tlanguageLinks,\n\t\tlanguageSwitcher,\n\t\tpostCard,\n\t\tsocialProviders,\n\t\tsplitPanel,\n\t\trenderLink,\n\t\tLinkComponent,\n\t});\n\tconst isSplit = variant === 'split' && hasSplitPanel;\n\tconst panel = renderSplitPanel(splitPanel);\n\tconst panelFirst = splitSide === 'left';\n\tconst showStackedPanel = splitMobile === 'stacked';\n\tconst brandNode = hasBrand ? renderBrand({ brand, renderLink: resolvedRenderLink }) : null;\n\n\tconst main = (\n\t\t<main\n\t\t\tclassName={cn(\n\t\t\t\t'auth-shell--main',\n\t\t\t\t'flex min-h-svh w-full items-center justify-center px-4 py-8 sm:px-6 md:px-8',\n\t\t\t\talign === 'start' && 'items-start pt-12',\n\t\t\t\tisSplit && 'lg:min-h-svh',\n\t\t\t\tmainClassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-shell--stack',\n\t\t\t\t\t'flex w-full flex-col gap-5',\n\t\t\t\t\tSIZE_CLASS[size],\n\t\t\t\t\tstackClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{brandNode}\n\n\t\t\t\t<AuthCard\n\t\t\t\t\teyebrow={eyebrow}\n\t\t\t\t\ttitle={title}\n\t\t\t\t\tdescription={description}\n\t\t\t\t\theaderEnd={headerEnd}\n\t\t\t\t\tbanner={banner}\n\t\t\t\t\tmedia={cardMedia}\n\t\t\t\t\tmediaClassName={cardMediaClassName}\n\t\t\t\t\tfooter={cardFooter}\n\t\t\t\t\tclassName={cardClassName}\n\t\t\t\t\tcontentClassName={cardContentClassName}\n\t\t\t\t>\n\t\t\t\t\t{!!hasSocialProviders && (\n\t\t\t\t\t\t<div className=\"auth-shell--social mb-4 grid gap-4\">\n\t\t\t\t\t\t\t<AuthSocialProviders\n\t\t\t\t\t\t\t\tproviders={visibleSocialProviders}\n\t\t\t\t\t\t\t\tlayout={socialProvidersLayout}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.socialProvidersLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<div className=\"auth-shell--social-divider flex items-center gap-3\">\n\t\t\t\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\">\n\t\t\t\t\t\t\t\t\t{socialDivider ?? strings.socialDivider}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t)}\n\t\t\t\t\t{children}\n\t\t\t\t</AuthCard>\n\n\t\t\t\t{!!hasAfterCard && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'auth-shell--after-card',\n\t\t\t\t\t\t\t'flex flex-col items-center gap-3 text-center',\n\t\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!postCard && <div className=\"auth-shell--post-card\">{postCard}</div>}\n\t\t\t\t\t\t{!!languageSwitcher && (\n\t\t\t\t\t\t\t<div className=\"auth-shell--language-switcher\">\n\t\t\t\t\t\t\t\t{languageSwitcher}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{visibleLanguageLinks.length > 0 && (\n\t\t\t\t\t\t\t<AuthFooterLinks\n\t\t\t\t\t\t\t\tclassName=\"auth-shell--language-links\"\n\t\t\t\t\t\t\t\tlinks={visibleLanguageLinks}\n\t\t\t\t\t\t\t\tleadingIcon={<Globe2 className=\"size-3.5\" />}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.languageLinksLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{visibleFooterLinks.length > 0 && (\n\t\t\t\t\t\t\t<AuthFooterLinks\n\t\t\t\t\t\t\t\tclassName=\"auth-shell--footer-links\"\n\t\t\t\t\t\t\t\tlinks={visibleFooterLinks}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.footerLinksLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{visiblePolicyLinks.length > 0 && (\n\t\t\t\t\t\t\t<AuthFooterLinks\n\t\t\t\t\t\t\t\tclassName=\"auth-shell--policy-links\"\n\t\t\t\t\t\t\t\tlinks={visiblePolicyLinks}\n\t\t\t\t\t\t\t\trenderLink={resolvedRenderLink}\n\t\t\t\t\t\t\t\tstrings={{ label: strings.policyLinksLabel }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!footer && <div className=\"auth-shell--footer\">{footer}</div>}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</main>\n\t);\n\n\tif (!isSplit) {\n\t\treturn (\n\t\t\t<div\n\t\t\t\tdata-slot=\"auth-shell\"\n\t\t\t\tdata-variant=\"card\"\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-shell--component',\n\t\t\t\t\t'min-h-svh bg-background text-foreground',\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{main}\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"auth-shell\"\n\t\t\tdata-variant=\"split\"\n\t\t\tdata-split-side={splitSide}\n\t\t\tdata-split-mobile={splitMobile}\n\t\t\tclassName={cn(\n\t\t\t\t'auth-shell--component',\n\t\t\t\t'min-h-svh bg-background text-foreground',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<div\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-shell--split-grid min-h-svh lg:grid',\n\t\t\t\t\tpanelFirst\n\t\t\t\t\t\t? 'lg:grid-cols-[minmax(0,1fr)_minmax(24rem,34rem)]'\n\t\t\t\t\t\t: 'lg:grid-cols-[minmax(24rem,34rem)_minmax(0,1fr)]',\n\t\t\t\t\tsplitGridClassName,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t{!!panelFirst && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'auth-shell--split-panel',\n\t\t\t\t\t\t\tshowStackedPanel ? 'block' : 'hidden lg:block',\n\t\t\t\t\t\t\tsplitPanelClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{panel}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{main}\n\t\t\t\t{!panelFirst && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'auth-shell--split-panel',\n\t\t\t\t\t\t\tshowStackedPanel ? 'block' : 'hidden lg:block',\n\t\t\t\t\t\t\tsplitPanelClassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{panel}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n","import * as React from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { Text } from '@/components/typography';\nimport { useStrings } from '@/lib/strings';\nimport { cn } from '@/lib/utils';\n\nimport { defaultAuthMethodSwitchStrings } from './auth.strings';\nimport type {\n\tAuthMethodOption,\n\tAuthMethodSwitchProps,\n\tUseAuthMethodSwitchOptions,\n\tUseAuthMethodSwitchReturn,\n} from './auth.types';\n\nfunction firstEnabledOption(options: AuthMethodOption[]) {\n\treturn options.find((option) => !option.disabled);\n}\n\nexport function useAuthMethodSwitch({\n\toptions = [],\n\tvalue,\n\tdefaultValue,\n\tonValueChange,\n}: UseAuthMethodSwitchOptions = {}): UseAuthMethodSwitchReturn {\n\tconst visibleOptions = React.useMemo(\n\t\t() => options.filter((option) => option.visible !== false),\n\t\t[options],\n\t);\n\tconst fallbackValue = defaultValue ?? firstEnabledOption(visibleOptions)?.id;\n\tconst [internalValue, setInternalValue] = React.useState<string | undefined>(fallbackValue);\n\tconst isControlled = value !== undefined;\n\tconst selectedValue = isControlled ? value : internalValue;\n\tconst selectedOption = visibleOptions.find((option) => option.id === selectedValue);\n\n\tconst setValue = React.useCallback(\n\t\t(nextValue: string) => {\n\t\t\tconst nextOption = visibleOptions.find((option) => option.id === nextValue);\n\t\t\tif (!nextOption || nextOption.disabled) return;\n\n\t\t\tif (!isControlled) {\n\t\t\t\tsetInternalValue(nextValue);\n\t\t\t}\n\n\t\t\tonValueChange?.(nextValue, nextOption);\n\t\t},\n\t\t[isControlled, onValueChange, visibleOptions],\n\t);\n\n\tReact.useEffect(() => {\n\t\tif (isControlled || selectedOption || visibleOptions.length === 0) return;\n\t\tsetInternalValue(firstEnabledOption(visibleOptions)?.id);\n\t}, [isControlled, selectedOption, visibleOptions]);\n\n\treturn {\n\t\tvalue: selectedValue,\n\t\tselectedOption,\n\t\toptions: visibleOptions,\n\t\tsetValue,\n\t};\n}\n\nexport function AuthMethodSwitch({\n\toptions = [],\n\tvalue,\n\tdefaultValue,\n\tonValueChange,\n\tlayout = 'stack',\n\tdivider,\n\tclassName,\n\tstrings: stringsProp,\n\t...props\n}: AuthMethodSwitchProps) {\n\tconst strings = useStrings(defaultAuthMethodSwitchStrings, stringsProp);\n\tconst { ['aria-label']: ariaLabel, ...rootProps } = props;\n\tconst {\n\t\tvalue: selectedValue,\n\t\toptions: visibleOptions,\n\t\tsetValue,\n\t} = useAuthMethodSwitch({\n\t\toptions,\n\t\tvalue,\n\t\tdefaultValue,\n\t\tonValueChange,\n\t});\n\n\tif (visibleOptions.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className={cn('auth-method-switch--component grid gap-3', className)} {...rootProps}>\n\t\t\t{divider !== null && divider !== false && (\n\t\t\t\t<div className=\"auth-method-switch--divider flex items-center gap-3\">\n\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t\t<Text tag=\"span\" size=\"xs\" type=\"secondary\">\n\t\t\t\t\t\t{divider ?? strings.divider}\n\t\t\t\t\t</Text>\n\t\t\t\t\t<span className=\"h-px min-w-0 flex-1 bg-border\" aria-hidden=\"true\" />\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t<div\n\t\t\t\trole=\"group\"\n\t\t\t\taria-label={ariaLabel ?? strings.label}\n\t\t\t\tdata-layout={layout}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'auth-method-switch--options',\n\t\t\t\t\tlayout === 'grid' && 'grid gap-2 sm:grid-cols-2',\n\t\t\t\t\tlayout === 'stack' && 'grid gap-2',\n\t\t\t\t\tlayout === 'segmented' &&\n\t\t\t\t\t\t'grid grid-cols-[repeat(auto-fit,minmax(0,1fr))] gap-1 rounded-lg border border-border bg-muted/40 p-1',\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{visibleOptions.map((option) => {\n\t\t\t\t\tconst selected = option.id === selectedValue;\n\t\t\t\t\tconst segmented = layout === 'segmented';\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={option.id}\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\taria-pressed={selected}\n\t\t\t\t\t\t\tdisabled={option.disabled}\n\t\t\t\t\t\t\tvariant={selected ? 'dark' : 'secondary'}\n\t\t\t\t\t\t\tbuttonStyle={selected ? 'solid' : segmented ? 'ghost' : 'outline'}\n\t\t\t\t\t\t\tfullWidth\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'auth-method-switch--option',\n\t\t\t\t\t\t\t\t'h-auto min-h-10 justify-start rounded-md px-3 py-2.5 text-start',\n\t\t\t\t\t\t\t\tsegmented &&\n\t\t\t\t\t\t\t\t\t'min-h-9 justify-center border-0 px-2 py-2 text-center shadow-none min-[480px]:px-3 min-[480px]:text-start',\n\t\t\t\t\t\t\t\tselected && 'auth-method-switch--option-selected',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tonClick={() => setValue(option.id)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t'auth-method-switch--option-inner flex min-w-0 items-center gap-2',\n\t\t\t\t\t\t\t\t\tsegmented &&\n\t\t\t\t\t\t\t\t\t\t'w-full flex-col justify-center gap-1 min-[480px]:w-auto min-[480px]:flex-row min-[480px]:justify-start min-[480px]:gap-2',\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{!!option.icon && (\n\t\t\t\t\t\t\t\t\t<span className=\"auth-method-switch--option-icon shrink-0\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t\t{option.icon}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t'auth-method-switch--option-copy grid min-w-0 gap-0.5',\n\t\t\t\t\t\t\t\t\t\tsegmented && 'justify-items-center min-[480px]:justify-items-start',\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\t\t\t\t\tsize=\"xs\"\n\t\t\t\t\t\t\t\t\t\tweight=\"semibold\"\n\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t'max-w-full text-inherit leading-tight',\n\t\t\t\t\t\t\t\t\t\t\tsegmented\n\t\t\t\t\t\t\t\t\t\t\t\t? 'text-center min-[480px]:truncate min-[480px]:text-start'\n\t\t\t\t\t\t\t\t\t\t\t\t: 'text-start',\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t{!!option.description && (\n\t\t\t\t\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\t\t\t\t\ttag=\"span\"\n\t\t\t\t\t\t\t\t\t\t\tsize=\"xxs\"\n\t\t\t\t\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t\t\t\t\tsegmented\n\t\t\t\t\t\t\t\t\t\t\t\t\t? 'hidden min-[480px]:block min-[480px]:truncate'\n\t\t\t\t\t\t\t\t\t\t\t\t\t: 'text-start leading-snug',\n\t\t\t\t\t\t\t\t\t\t\t\tselected ? 'text-inherit opacity-75' : 'text-muted-foreground',\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{option.description}\n\t\t\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ import { t as e } from "./ui-provider-C8Ot88lS.js";
2
+ import { cn as t } from "../lib/utils.js";
3
+ import "react";
4
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
5
+ import { TriangleAlert as i } from "lucide-react";
6
+ import { cva as a } from "class-variance-authority";
7
+ import { Slot as o } from "@radix-ui/react-slot";
8
+ //#region src/components/ui/badge.tsx
9
+ var s = a("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto", {
10
+ variants: { variant: {
11
+ default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
12
+ secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
13
+ destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
14
+ outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
15
+ } },
16
+ defaultVariants: { variant: "default" }
17
+ });
18
+ function c({ className: e, variant: r, asChild: i = !1, ...a }) {
19
+ return /* @__PURE__ */ n(i ? o : "span", {
20
+ "data-slot": "badge",
21
+ className: t(s({ variant: r }), e),
22
+ ...a
23
+ });
24
+ }
25
+ //#endregion
26
+ //#region src/components/base/badge/badge.tsx
27
+ var l = {
28
+ xs: "px-1.5 py-0.5 text-xxs",
29
+ sm: "px-2 py-1 text-xs",
30
+ md: "px-2.5 py-1.5 text-sm"
31
+ }, u = {
32
+ primary: {
33
+ color: "text-primary-foreground",
34
+ background: "bg-primary",
35
+ border: "border-primary-foreground/40",
36
+ dot: "bg-primary-foreground"
37
+ },
38
+ secondary: {
39
+ color: "text-foreground",
40
+ background: "bg-foreground/8",
41
+ border: "border-foreground/15",
42
+ dot: "bg-muted-foreground"
43
+ },
44
+ success: {
45
+ color: "text-success",
46
+ background: "bg-success/10",
47
+ border: "border-success/50",
48
+ dot: "bg-success"
49
+ },
50
+ info: {
51
+ color: "text-info",
52
+ background: "bg-info/10",
53
+ border: "border-info/50",
54
+ dot: "bg-info"
55
+ },
56
+ warning: {
57
+ color: "text-warning-foreground",
58
+ background: "bg-warning/40",
59
+ border: "border-warning/60",
60
+ dot: "bg-warning"
61
+ },
62
+ error: {
63
+ color: "text-destructive",
64
+ background: "bg-destructive/10",
65
+ border: "border-destructive/50",
66
+ dot: "bg-destructive"
67
+ },
68
+ destructive: {
69
+ color: "text-destructive",
70
+ background: "bg-destructive/10",
71
+ border: "border-destructive/50",
72
+ dot: "bg-destructive"
73
+ },
74
+ main: {
75
+ color: "text-main-foreground",
76
+ background: "bg-main",
77
+ border: "border-main-foreground/40",
78
+ dot: "bg-main-foreground"
79
+ }
80
+ };
81
+ function d({ variant: a = "primary", className: o, size: s, inline: d = !1, dot: p = !1, pending: m = !1, pulse: h = !1, important: g = !1, children: _, ...v }) {
82
+ let { defaultSize: y } = e(), b = t(l[s ?? y ?? "xs"], "font-semibold gap-1.5"), x = d ? "inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium" : null, S = u[a] ?? u.primary;
83
+ return /* @__PURE__ */ r(c, {
84
+ variant: "secondary",
85
+ className: t("badge--component", S.color, S.background, b, x, o),
86
+ ...v,
87
+ children: [
88
+ !!p && /* @__PURE__ */ n(f, {
89
+ filled: !m,
90
+ pulse: h,
91
+ variant: S
92
+ }),
93
+ !!g && !p && /* @__PURE__ */ n(i, { className: t(S.color, "w-6 h-6") }),
94
+ /* @__PURE__ */ n("span", {
95
+ className: "inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0",
96
+ children: _
97
+ })
98
+ ]
99
+ });
100
+ }
101
+ function f({ filled: e = !1, variant: r, pulse: i = !1 }) {
102
+ return /* @__PURE__ */ n("span", { className: t("size-2 rounded-full shrink-0 border-[2px]", r.border, { "animate-pulse": i }, [e ? r.dot : "bg-transparent"]) });
103
+ }
104
+ d.displayName = "Badge";
105
+ //#endregion
106
+ export { d as t };
107
+
108
+ //# sourceMappingURL=badge-6WYAMJwA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge-6WYAMJwA.js","names":[],"sources":["../../src/components/ui/badge.tsx","../../src/components/base/badge/badge.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n\t\"inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault:\n\t\t\t\t\t\"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n\t\t\t\tsecondary:\n\t\t\t\t\t\"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n\t\t\t\tdestructive:\n\t\t\t\t\t\"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n\t\t\t\toutline:\n\t\t\t\t\t\"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t},\n\t}\n)\n\nfunction Badge({\n\tclassName,\n\tvariant,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"span\"> &\n\tVariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"span\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"badge\"\n\t\t\tclassName={cn(badgeVariants({ variant }), className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport { Badge, badgeVariants }\n","/**\n * Badge — composed badge with semantic variants (primary / secondary / success / info /\n * warning / error / destructive / main), three sizes (xs / sm / md), optional dot indicator\n * (with pulse + pending states), inline mode, and an `important` flag that swaps in a warning icon.\n */\nimport { TriangleAlert } from 'lucide-react';\nimport * as React from \"react\"\n\nimport { Badge as BaseBadge } from \"@/components/ui/badge\"\nimport { useBadgeConfig, type BadgeSize } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ComposedBadgeVariant =\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"info\"\n | \"error\"\n | \"destructive\"\n | \"main\"\n | \"warning\"\n\nexport interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'content'> {\n variant?: ComposedBadgeVariant\n size?: BadgeSize\n inline?: boolean;\n dot?: boolean;\n pulse?: boolean;\n pending?: boolean;\n important?: boolean;\n}\n\ntype BadgeVariantStyle = { color: string; background: string; border: string; dot: string };\n\nconst sizeClassMap: Record<NonNullable<BadgeProps['size']>, string> = {\n\txs: 'px-1.5 py-0.5 text-xxs',\n\tsm: 'px-2 py-1 text-xs',\n\tmd: 'px-2.5 py-1.5 text-sm',\n};\n\nconst variantClassMap: Record<ComposedBadgeVariant, BadgeVariantStyle> = {\n primary: {\n color: 'text-primary-foreground',\n background: 'bg-primary',\n border: 'border-primary-foreground/40',\n dot: 'bg-primary-foreground'\n },\n secondary: {\n color: 'text-foreground',\n background: 'bg-foreground/8',\n border: 'border-foreground/15',\n dot: 'bg-muted-foreground'\n },\n success: {\n color: 'text-success',\n background: 'bg-success/10',\n border: 'border-success/50',\n dot: 'bg-success'\n },\n info: {\n color: 'text-info',\n background: 'bg-info/10',\n border: 'border-info/50',\n dot: 'bg-info'\n },\n warning: {\n color: 'text-warning-foreground',\n background: 'bg-warning/40',\n border: 'border-warning/60',\n dot: 'bg-warning'\n },\n error: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n destructive: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n main: {\n color: 'text-main-foreground',\n background: 'bg-main',\n border: 'border-main-foreground/40',\n dot: 'bg-main-foreground'\n },\n}\n\n/**\n * Composed Badge using base-ui primitives\n * - Semantic variants using CSS variables: success | info | warning | error.\n * - Primary/secondary with proper theming.\n * - Optional `dot` prop for dot indicator style (colored dot + text, no background).\n */\nexport function Badge({\n variant = \"primary\",\n className,\n size,\n inline = false,\n dot = false,\n pending = false,\n pulse = false,\n important = false,\n children,\n ...props\n}: BadgeProps) {\n const { defaultSize } = useBadgeConfig();\n const resolvedSize: BadgeSize = size ?? defaultSize ?? 'xs';\n const defaultClassNames = cn(sizeClassMap[resolvedSize], \"font-semibold gap-1.5\")\n const inlineClassNames = inline\n ? 'inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium'\n : null;\n\n const theme = variantClassMap[variant] ?? variantClassMap.primary;\n\n return (\n <BaseBadge\n variant=\"secondary\"\n className={cn('badge--component', \n theme.color,\n theme.background,\n defaultClassNames,\n inlineClassNames,\n className,\n )}\n {...props}\n >\n {!!dot && <Dot filled={!pending} pulse={pulse} variant={theme} />}\n {(!!important && !dot) && <TriangleAlert className={cn(theme.color, 'w-6 h-6')} />}\n <span className=\"inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0\">\n {children}\n </span>\n </BaseBadge>\n )\n}\n\nfunction Dot({ filled = false, variant, pulse = false }: { filled?: boolean; variant: BadgeVariantStyle, pulse?: boolean }) {\n return (\n <span\n className={cn(\"size-2 rounded-full shrink-0 border-[2px]\", variant.border,\n {\n 'animate-pulse': pulse\n },\n [\n filled ? variant.dot : 'bg-transparent'\n ]\n )}\n />\n )\n}\n\nexport default Badge\n\nBadge.displayName = 'Badge';\n"],"mappings":";;;;;;;;AAMA,IAAM,IAAgB,EACrB,0WACA;CACC,UAAU,EACT,SAAS;EACR,SACC;EACD,WACC;EACD,aACC;EACD,SACC;CACF,EACD;CACA,iBAAiB,EAChB,SAAS,UACV;AACD,CACD;AAEA,SAAS,EAAM,EACd,cACA,YACA,aAAU,IACV,GAAG,KAEyD;CAG5D,OACC,kBAHY,IAAU,IAAO,QAG7B;EACC,aAAU;EACV,WAAW,EAAG,EAAc,EAAE,WAAQ,CAAC,GAAG,CAAS;EACnD,GAAI;CACJ,CAAA;AAEH;;;ACTA,IAAM,IAAgE;CACrE,IAAI;CACJ,IAAI;CACJ,IAAI;AACL,GAEM,IAAmE;CACvE,SAAS;EACP,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,WAAW;EACT,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,SAAS;EACP,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,MAAM;EACJ,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,SAAS;EACP,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,OAAO;EACL,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,aAAa;EACX,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;CACA,MAAM;EACJ,OAAO;EACP,YAAY;EACZ,QAAQ;EACR,KAAK;CACP;AACF;AAQA,SAAgB,EAAM,EACpB,aAAU,WACV,cACA,SACA,YAAS,IACT,SAAM,IACN,aAAU,IACV,WAAQ,IACR,eAAY,IACZ,aACA,GAAG,KACU;CACb,IAAM,EAAE,mBAAgB,EAAe,GAEjC,IAAoB,EAAG,EADG,KAAQ,KAAe,OACE,uBAAuB,GAC1E,IAAmB,IACrB,oHACA,MAEE,IAAQ,EAAgB,MAAY,EAAgB;CAE1D,OACE,kBAAC,GAAD;EACE,SAAQ;EACR,WAAW,EAAG,oBACZ,EAAM,OACN,EAAM,YACN,GACA,GACA,CACF;EACA,GAAI;YATN;GAWG,CAAC,CAAC,KAAO,kBAAC,GAAD;IAAK,QAAQ,CAAC;IAAgB;IAAO,SAAS;GAAQ,CAAA;GAC9D,CAAC,CAAC,KAAa,CAAC,KAAQ,kBAAC,GAAD,EAAe,WAAW,EAAG,EAAM,OAAO,SAAS,EAAI,CAAA;GACjF,kBAAC,QAAD;IAAM,WAAU;IACb;GACG,CAAA;EACG;;AAEf;AAEA,SAAS,EAAI,EAAE,YAAS,IAAO,YAAS,WAAQ,MAA4E;CAC1H,OACE,kBAAC,QAAD,EACE,WAAW,EAAG,6CAA6C,EAAQ,QACjE,EACE,iBAAiB,EACnB,GACA,CACE,IAAS,EAAQ,MAAM,gBACzB,CACF,EACD,CAAA;AAEL;AAIA,EAAM,cAAc"}
@@ -0,0 +1,2 @@
1
+ const e=require("./chunk-CMqjfN_6.cjs"),t=require("./ui-provider-BF4m2cR0.cjs"),n=require("../lib/utils.cjs");let r=require("react");r=e.t(r,1);let i=require("react/jsx-runtime"),a=require("lucide-react"),o=require("class-variance-authority"),s=require("@radix-ui/react-slot");var c=(0,o.cva)(`inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});function l({className:e,variant:t,asChild:r=!1,...a}){return(0,i.jsx)(r?s.Slot:`span`,{"data-slot":`badge`,className:n.cn(c({variant:t}),e),...a})}var u={xs:`px-1.5 py-0.5 text-xxs`,sm:`px-2 py-1 text-xs`,md:`px-2.5 py-1.5 text-sm`},d={primary:{color:`text-primary-foreground`,background:`bg-primary`,border:`border-primary-foreground/40`,dot:`bg-primary-foreground`},secondary:{color:`text-foreground`,background:`bg-foreground/8`,border:`border-foreground/15`,dot:`bg-muted-foreground`},success:{color:`text-success`,background:`bg-success/10`,border:`border-success/50`,dot:`bg-success`},info:{color:`text-info`,background:`bg-info/10`,border:`border-info/50`,dot:`bg-info`},warning:{color:`text-warning-foreground`,background:`bg-warning/40`,border:`border-warning/60`,dot:`bg-warning`},error:{color:`text-destructive`,background:`bg-destructive/10`,border:`border-destructive/50`,dot:`bg-destructive`},destructive:{color:`text-destructive`,background:`bg-destructive/10`,border:`border-destructive/50`,dot:`bg-destructive`},main:{color:`text-main-foreground`,background:`bg-main`,border:`border-main-foreground/40`,dot:`bg-main-foreground`}};function f({variant:e=`primary`,className:r,size:o,inline:s=!1,dot:c=!1,pending:f=!1,pulse:m=!1,important:h=!1,children:g,..._}){let{defaultSize:v}=t.t(),y=n.cn(u[o??v??`xs`],`font-semibold gap-1.5`),b=s?`inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium`:null,x=d[e]??d.primary;return(0,i.jsxs)(l,{variant:`secondary`,className:n.cn(`badge--component`,x.color,x.background,y,b,r),..._,children:[!!c&&(0,i.jsx)(p,{filled:!f,pulse:m,variant:x}),!!h&&!c&&(0,i.jsx)(a.TriangleAlert,{className:n.cn(x.color,`w-6 h-6`)}),(0,i.jsx)(`span`,{className:`inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0`,children:g})]})}function p({filled:e=!1,variant:t,pulse:r=!1}){return(0,i.jsx)(`span`,{className:n.cn(`size-2 rounded-full shrink-0 border-[2px]`,t.border,{"animate-pulse":r},[e?t.dot:`bg-transparent`])})}f.displayName=`Badge`,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return f}});
2
+ //# sourceMappingURL=badge-CBof1rbF.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"badge-CBof1rbF.cjs","names":[],"sources":["../../src/components/ui/badge.tsx","../../src/components/base/badge/badge.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n\t\"inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 aria-invalid:border-destructive transition-[color,box-shadow] overflow-auto\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault:\n\t\t\t\t\t\"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90\",\n\t\t\t\tsecondary:\n\t\t\t\t\t\"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90\",\n\t\t\t\tdestructive:\n\t\t\t\t\t\"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60\",\n\t\t\t\toutline:\n\t\t\t\t\t\"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t},\n\t}\n)\n\nfunction Badge({\n\tclassName,\n\tvariant,\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"span\"> &\n\tVariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"span\"\n\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"badge\"\n\t\t\tclassName={cn(badgeVariants({ variant }), className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nexport { Badge, badgeVariants }\n","/**\n * Badge — composed badge with semantic variants (primary / secondary / success / info /\n * warning / error / destructive / main), three sizes (xs / sm / md), optional dot indicator\n * (with pulse + pending states), inline mode, and an `important` flag that swaps in a warning icon.\n */\nimport { TriangleAlert } from 'lucide-react';\nimport * as React from \"react\"\n\nimport { Badge as BaseBadge } from \"@/components/ui/badge\"\nimport { useBadgeConfig, type BadgeSize } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ComposedBadgeVariant =\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"info\"\n | \"error\"\n | \"destructive\"\n | \"main\"\n | \"warning\"\n\nexport interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'content'> {\n variant?: ComposedBadgeVariant\n size?: BadgeSize\n inline?: boolean;\n dot?: boolean;\n pulse?: boolean;\n pending?: boolean;\n important?: boolean;\n}\n\ntype BadgeVariantStyle = { color: string; background: string; border: string; dot: string };\n\nconst sizeClassMap: Record<NonNullable<BadgeProps['size']>, string> = {\n\txs: 'px-1.5 py-0.5 text-xxs',\n\tsm: 'px-2 py-1 text-xs',\n\tmd: 'px-2.5 py-1.5 text-sm',\n};\n\nconst variantClassMap: Record<ComposedBadgeVariant, BadgeVariantStyle> = {\n primary: {\n color: 'text-primary-foreground',\n background: 'bg-primary',\n border: 'border-primary-foreground/40',\n dot: 'bg-primary-foreground'\n },\n secondary: {\n color: 'text-foreground',\n background: 'bg-foreground/8',\n border: 'border-foreground/15',\n dot: 'bg-muted-foreground'\n },\n success: {\n color: 'text-success',\n background: 'bg-success/10',\n border: 'border-success/50',\n dot: 'bg-success'\n },\n info: {\n color: 'text-info',\n background: 'bg-info/10',\n border: 'border-info/50',\n dot: 'bg-info'\n },\n warning: {\n color: 'text-warning-foreground',\n background: 'bg-warning/40',\n border: 'border-warning/60',\n dot: 'bg-warning'\n },\n error: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n destructive: {\n color: 'text-destructive',\n background: 'bg-destructive/10',\n border: 'border-destructive/50',\n dot: 'bg-destructive'\n },\n main: {\n color: 'text-main-foreground',\n background: 'bg-main',\n border: 'border-main-foreground/40',\n dot: 'bg-main-foreground'\n },\n}\n\n/**\n * Composed Badge using base-ui primitives\n * - Semantic variants using CSS variables: success | info | warning | error.\n * - Primary/secondary with proper theming.\n * - Optional `dot` prop for dot indicator style (colored dot + text, no background).\n */\nexport function Badge({\n variant = \"primary\",\n className,\n size,\n inline = false,\n dot = false,\n pending = false,\n pulse = false,\n important = false,\n children,\n ...props\n}: BadgeProps) {\n const { defaultSize } = useBadgeConfig();\n const resolvedSize: BadgeSize = size ?? defaultSize ?? 'xs';\n const defaultClassNames = cn(sizeClassMap[resolvedSize], \"font-semibold gap-1.5\")\n const inlineClassNames = inline\n ? 'inline-flex h-auto min-h-0 w-auto shrink-0 align-middle rounded-full px-1.5 py-0 text-xxs leading-4 font-medium'\n : null;\n\n const theme = variantClassMap[variant] ?? variantClassMap.primary;\n\n return (\n <BaseBadge\n variant=\"secondary\"\n className={cn('badge--component', \n theme.color,\n theme.background,\n defaultClassNames,\n inlineClassNames,\n className,\n )}\n {...props}\n >\n {!!dot && <Dot filled={!pending} pulse={pulse} variant={theme} />}\n {(!!important && !dot) && <TriangleAlert className={cn(theme.color, 'w-6 h-6')} />}\n <span className=\"inline-flex items-center gap-1 whitespace-nowrap [&>svg]:inline-block [&>svg]:shrink-0\">\n {children}\n </span>\n </BaseBadge>\n )\n}\n\nfunction Dot({ filled = false, variant, pulse = false }: { filled?: boolean; variant: BadgeVariantStyle, pulse?: boolean }) {\n return (\n <span\n className={cn(\"size-2 rounded-full shrink-0 border-[2px]\", variant.border,\n {\n 'animate-pulse': pulse\n },\n [\n filled ? variant.dot : 'bg-transparent'\n ]\n )}\n />\n )\n}\n\nexport default Badge\n\nBadge.displayName = 'Badge';\n"],"mappings":"qRAMA,IAAM,GAAA,EAAA,EAAA,KACL,yWACA,CACC,SAAU,CACT,QAAS,CACR,QACC,iFACD,UACC,uFACD,YACC,4KACD,QACC,wEACF,CACD,EACA,gBAAiB,CAChB,QAAS,SACV,CACD,CACD,EAEA,SAAS,EAAM,CACd,YACA,UACA,UAAU,GACV,GAAG,GAEyD,CAG5D,OACC,EAAA,EAAA,KAHY,EAAU,EAAA,KAAO,OAG7B,CACC,YAAU,QACV,UAAW,EAAA,GAAG,EAAc,CAAE,SAAQ,CAAC,EAAG,CAAS,EACnD,GAAI,CACJ,CAAA,CAEH,CCTA,IAAM,EAAgE,CACrE,GAAI,yBACJ,GAAI,oBACJ,GAAI,uBACL,EAEM,EAAmE,CACvE,QAAS,CACP,MAAO,0BACP,WAAY,aACZ,OAAQ,+BACR,IAAK,uBACP,EACA,UAAW,CACT,MAAO,kBACP,WAAY,kBACZ,OAAQ,uBACR,IAAK,qBACP,EACA,QAAS,CACP,MAAO,eACP,WAAY,gBACZ,OAAQ,oBACR,IAAK,YACP,EACA,KAAM,CACJ,MAAO,YACP,WAAY,aACZ,OAAQ,iBACR,IAAK,SACP,EACA,QAAS,CACP,MAAO,0BACP,WAAY,gBACZ,OAAQ,oBACR,IAAK,YACP,EACA,MAAO,CACL,MAAO,mBACP,WAAY,oBACZ,OAAQ,wBACR,IAAK,gBACP,EACA,YAAa,CACX,MAAO,mBACP,WAAY,oBACZ,OAAQ,wBACR,IAAK,gBACP,EACA,KAAM,CACJ,MAAO,uBACP,WAAY,UACZ,OAAQ,4BACR,IAAK,oBACP,CACF,EAQA,SAAgB,EAAM,CACpB,UAAU,UACV,YACA,OACA,SAAS,GACT,MAAM,GACN,UAAU,GACV,QAAQ,GACR,YAAY,GACZ,WACA,GAAG,GACU,CACb,GAAM,CAAE,eAAgB,EAAA,EAAe,EAEjC,EAAoB,EAAA,GAAG,EADG,GAAQ,GAAe,MACE,uBAAuB,EAC1E,EAAmB,EACrB,kHACA,KAEE,EAAQ,EAAgB,IAAY,EAAgB,QAE1D,OACE,EAAA,EAAA,MAAC,EAAD,CACE,QAAQ,YACR,UAAW,EAAA,GAAG,mBACZ,EAAM,MACN,EAAM,WACN,EACA,EACA,CACF,EACA,GAAI,WATN,CAWG,CAAC,CAAC,IAAO,EAAA,EAAA,KAAC,EAAD,CAAK,OAAQ,CAAC,EAAgB,QAAO,QAAS,CAAQ,CAAA,EAC9D,CAAC,CAAC,GAAa,CAAC,IAAQ,EAAA,EAAA,KAAC,EAAA,cAAD,CAAe,UAAW,EAAA,GAAG,EAAM,MAAO,SAAS,CAAI,CAAA,GACjF,EAAA,EAAA,KAAC,OAAD,CAAM,UAAU,yFACb,UACG,CAAA,CACG,GAEf,CAEA,SAAS,EAAI,CAAE,SAAS,GAAO,UAAS,QAAQ,IAA4E,CAC1H,OACE,EAAA,EAAA,KAAC,OAAD,CACE,UAAW,EAAA,GAAG,4CAA6C,EAAQ,OACjE,CACE,gBAAiB,CACnB,EACA,CACE,EAAS,EAAQ,IAAM,gBACzB,CACF,CACD,CAAA,CAEL,CAIA,EAAM,YAAc"}
@@ -0,0 +1,173 @@
1
+ import { useStrings as e } from "../lib/strings.js";
2
+ import { n as t } from "./ui-provider-C8Ot88lS.js";
3
+ import { cn as n } from "../lib/utils.js";
4
+ import { t as r } from "./button-DlqryxqA.js";
5
+ import { i, n as a, t as o } from "./tooltip-CLr_sPX8.js";
6
+ import * as s from "react";
7
+ import { useEffect as c, useState as l } from "react";
8
+ import { jsx as u, jsxs as d } from "react/jsx-runtime";
9
+ import { Loader2 as f } from "lucide-react";
10
+ //#region src/components/base/buttons/base-button.tsx
11
+ var p = {
12
+ dark: {
13
+ solid: "bg-foreground text-background hover:bg-foreground/90",
14
+ outline: "border border-foreground/80 text-foreground hover:bg-foreground/8",
15
+ ghost: "text-foreground hover:bg-foreground/8"
16
+ },
17
+ primary: {
18
+ solid: "bg-primary text-primary-foreground hover:bg-primary/90",
19
+ outline: "border border-primary/70 text-primary hover:bg-primary/10",
20
+ ghost: "text-primary hover:bg-primary/10"
21
+ },
22
+ secondary: {
23
+ solid: "bg-foreground/8 text-foreground hover:bg-foreground/12",
24
+ outline: "border border-foreground/15 text-foreground hover:bg-foreground/8",
25
+ ghost: "text-foreground hover:bg-foreground/8"
26
+ },
27
+ light: {
28
+ solid: "bg-muted text-muted-foreground hover:bg-muted/80",
29
+ outline: "border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground",
30
+ ghost: "text-muted-foreground hover:bg-accent hover:text-accent-foreground"
31
+ },
32
+ error: {
33
+ solid: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
34
+ outline: "border border-destructive/60 text-destructive hover:bg-destructive/10",
35
+ ghost: "text-destructive hover:bg-destructive/10"
36
+ },
37
+ warning: {
38
+ solid: "bg-warning text-warning-foreground hover:bg-warning/90",
39
+ outline: "border border-warning/70 text-warning-foreground hover:bg-warning/20",
40
+ ghost: "text-warning-foreground hover:bg-warning/20"
41
+ },
42
+ success: {
43
+ solid: "bg-success text-success-foreground hover:bg-success/90",
44
+ outline: "border border-success/60 text-success hover:bg-success/10",
45
+ ghost: "text-success hover:bg-success/10"
46
+ },
47
+ action: {
48
+ solid: "bg-info text-info-foreground hover:bg-info/90",
49
+ outline: "border border-info/60 text-info hover:bg-info/10",
50
+ ghost: "text-info hover:bg-info/10"
51
+ }
52
+ }, m = s.forwardRef(({ variant: e = "primary", buttonStyle: i, size: a, fullWidth: o = !1, icon: s, iconPosition: c = "left", children: l, className: f, disabled: m, ...h }, g) => {
53
+ let { defaultButtonStyle: _, defaultSize: v } = t(), y = i ?? _ ?? "solid", b = a ?? v ?? "sm", x = p[e] ?? p.secondary, S = x[y] ?? x.solid ?? p.secondary.solid, C = b === "xs" || b === "icon-xs" ? 12 : b === "sm" || b === "icon-sm" ? 16 : b === "lg" || b === "icon-lg" ? 20 : 16;
54
+ return /* @__PURE__ */ d(r, {
55
+ ref: g,
56
+ variant: y === "outline" ? "outline" : y === "ghost" ? "ghost" : "default",
57
+ size: b,
58
+ className: n("base-button--component", S, "inline-flex items-center justify-center rounded-radius", s && (b === "xs" ? "gap-1" : b === "sm" ? "gap-2" : b === "lg" ? "gap-2.5" : "gap-2"), o && "w-full", f),
59
+ disabled: m,
60
+ ...h,
61
+ children: [
62
+ !!s && c === "left" && /* @__PURE__ */ u(s, {
63
+ size: C,
64
+ "aria-hidden": "true"
65
+ }),
66
+ l,
67
+ !!s && c === "right" && /* @__PURE__ */ u(s, {
68
+ size: C,
69
+ "aria-hidden": "true"
70
+ })
71
+ ]
72
+ });
73
+ });
74
+ m.displayName = "BaseButton";
75
+ //#endregion
76
+ //#region src/components/base/buttons/loader-button.tsx
77
+ var h = {
78
+ loading: "Loading...",
79
+ completed: "Completed"
80
+ }, g = s.forwardRef(({ loading: t = !1, handlesLoading: r, strings: i, loadingLabels: a, icon: o, iconPosition: s = "left", children: p, disabled: g, ..._ }, v) => {
81
+ let y = e(h, {
82
+ ...a ?? {},
83
+ ...i ?? {}
84
+ }), [b, x] = l(t), [, S] = l(!1);
85
+ c(() => {
86
+ t && x(!0);
87
+ }, [t]), c(() => {
88
+ r && t && x(!0);
89
+ }, [t, r]), c(() => {
90
+ let e;
91
+ return !t && b && (S(!0), e = setTimeout(() => {
92
+ x(!1), S(!1);
93
+ }, 300)), () => {
94
+ e && clearTimeout(e);
95
+ };
96
+ }, [t, b]);
97
+ let C = (e) => e === "xs" ? 12 : e === "sm" ? 14 : e === "lg" ? 20 : 16;
98
+ return /* @__PURE__ */ d(m, {
99
+ className: "loader-button--component",
100
+ ..._,
101
+ ref: v,
102
+ disabled: g || b,
103
+ children: [
104
+ !!b && /* @__PURE__ */ u(f, {
105
+ className: "animate-spin mr-2",
106
+ size: C(_.size),
107
+ "aria-hidden": "true"
108
+ }),
109
+ !!o && s === "left" && !b && /* @__PURE__ */ u(o, {
110
+ className: n("opacity-60", p && "-ms-1 me-2"),
111
+ size: C(_.size),
112
+ "aria-hidden": "true"
113
+ }),
114
+ /* @__PURE__ */ d("span", { children: [!!b && y.loading, !b && p] }),
115
+ !!o && s === "right" && !b && /* @__PURE__ */ u(o, {
116
+ className: n("opacity-60", p && "-me-1 ms-2"),
117
+ size: C(_.size),
118
+ "aria-hidden": "true"
119
+ })
120
+ ]
121
+ });
122
+ });
123
+ g.displayName = "LoaderButton";
124
+ //#endregion
125
+ //#region src/components/base/buttons/tooltip-button.tsx
126
+ var _ = s.forwardRef(({ withTooltip: e, ...t }, r) => /* @__PURE__ */ d(o, { children: [/* @__PURE__ */ u(i, { render: (i) => /* @__PURE__ */ u(m, {
127
+ ...t,
128
+ ...i,
129
+ "aria-label": t["aria-label"] ?? e,
130
+ ref: r,
131
+ className: n("tooltip-button--component", i.className, t.className)
132
+ }) }), /* @__PURE__ */ u(a, {
133
+ className: "px-2 py-1 text-xs",
134
+ children: e
135
+ })] }));
136
+ _.displayName = "TooltipButton";
137
+ //#endregion
138
+ //#region src/components/base/buttons/button.tsx
139
+ var v = s.forwardRef(({ href: e, withTooltip: t, loading: r, handlesLoading: i, ...a }, o) => {
140
+ let s = r !== void 0 || i ? t ? /* @__PURE__ */ u(_, {
141
+ className: "button--component",
142
+ ref: o,
143
+ withTooltip: t,
144
+ ...a,
145
+ children: /* @__PURE__ */ u(g, {
146
+ loading: r,
147
+ handlesLoading: i,
148
+ ...a
149
+ })
150
+ }) : /* @__PURE__ */ u(g, {
151
+ ref: o,
152
+ loading: r,
153
+ handlesLoading: i,
154
+ ...a
155
+ }) : t ? /* @__PURE__ */ u(_, {
156
+ ref: o,
157
+ withTooltip: t,
158
+ ...a
159
+ }) : /* @__PURE__ */ u(m, {
160
+ ref: o,
161
+ ...a
162
+ });
163
+ return e ? /* @__PURE__ */ u("a", {
164
+ href: e,
165
+ className: n("inline-flex", a.fullWidth && "w-full"),
166
+ children: s
167
+ }) : s;
168
+ });
169
+ v.displayName = "Button";
170
+ //#endregion
171
+ export { m as i, _ as n, g as r, v as t };
172
+
173
+ //# sourceMappingURL=button-BGKY8UY0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-BGKY8UY0.js","names":[],"sources":["../../src/components/base/buttons/base-button.tsx","../../src/components/base/buttons/loader-button.tsx","../../src/components/base/buttons/tooltip-button.tsx","../../src/components/base/buttons/button.tsx"],"sourcesContent":["/**\n * BaseButton — foundational button. Wraps shadcn `Button` with a richer\n * variant × style × size matrix (variants: dark / primary / secondary / error /\n * warning / success / light / action; styles: solid / outline / ghost), plus\n * optional left/right `icon` and `fullWidth`.\n */\nimport type { VariantProps } from 'class-variance-authority';\nimport type { LucideIcon } from 'lucide-react';\nimport * as React from 'react';\nimport {\n Button as PrimitiveButton,\n type buttonVariants\n} from '@/components/ui/button';\nimport {\n useButtonConfig,\n type ButtonSize as ConfiguredButtonSize,\n type ButtonStyle as ConfiguredButtonStyle,\n} from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ButtonVariant =\n | 'dark'\n | 'primary'\n | 'secondary'\n | 'error'\n | 'warning'\n | 'success'\n | 'light'\n | 'action';\nexport type ButtonStyle = ConfiguredButtonStyle;\nexport type ButtonSize = ConfiguredButtonSize;\nexport type IconPosition = 'left' | 'right';\n\nexport interface BaseButtonProps\n extends Omit<\n React.ComponentPropsWithoutRef<typeof PrimitiveButton>,\n 'children' | 'variant' | 'size'\n >,\n Omit<VariantProps<typeof buttonVariants>, 'variant' | 'size'> {\n variant?: ButtonVariant;\n buttonStyle?: ButtonStyle;\n size?: ButtonSize;\n fullWidth?: boolean;\n icon?: React.ElementType | LucideIcon;\n iconPosition?: IconPosition;\n children: React.ReactNode;\n}\n\nconst variantStyles: Record<ButtonVariant, Record<ButtonStyle, string>> = {\n dark: {\n solid: 'bg-foreground text-background hover:bg-foreground/90',\n outline: 'border border-foreground/80 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n primary: {\n solid: 'bg-primary text-primary-foreground hover:bg-primary/90',\n outline: 'border border-primary/70 text-primary hover:bg-primary/10',\n ghost: 'text-primary hover:bg-primary/10'\n },\n secondary: {\n solid: 'bg-foreground/8 text-foreground hover:bg-foreground/12',\n outline: 'border border-foreground/15 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n light: {\n solid: 'bg-muted text-muted-foreground hover:bg-muted/80',\n outline: 'border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n ghost: 'text-muted-foreground hover:bg-accent hover:text-accent-foreground'\n },\n error: {\n solid: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n outline: 'border border-destructive/60 text-destructive hover:bg-destructive/10',\n ghost: 'text-destructive hover:bg-destructive/10'\n },\n warning: {\n solid: 'bg-warning text-warning-foreground hover:bg-warning/90',\n outline: 'border border-warning/70 text-warning-foreground hover:bg-warning/20',\n ghost: 'text-warning-foreground hover:bg-warning/20'\n },\n success: {\n solid: 'bg-success text-success-foreground hover:bg-success/90',\n outline: 'border border-success/60 text-success hover:bg-success/10',\n ghost: 'text-success hover:bg-success/10'\n },\n action: {\n solid: 'bg-info text-info-foreground hover:bg-info/90',\n outline: 'border border-info/60 text-info hover:bg-info/10',\n ghost: 'text-info hover:bg-info/10'\n }\n};\n\nconst BaseButton = React.forwardRef<HTMLButtonElement, BaseButtonProps>(\n (\n {\n variant = 'primary',\n buttonStyle,\n size: sizeProp,\n fullWidth = false,\n icon: Icon,\n iconPosition = 'left',\n children,\n className,\n disabled,\n ...props\n },\n ref\n ) => {\n const { defaultButtonStyle, defaultSize } = useButtonConfig();\n const resolvedButtonStyle: ButtonStyle =\n buttonStyle ?? defaultButtonStyle ?? 'solid';\n const size: ButtonSize = sizeProp ?? defaultSize ?? 'sm';\n const resolvedVariantStyles =\n variantStyles[variant] ?? variantStyles.secondary;\n const resolvedStyleClass =\n resolvedVariantStyles[resolvedButtonStyle] ??\n resolvedVariantStyles.solid ??\n variantStyles.secondary.solid;\n\n const iconSize =\n size === 'xs' || size === 'icon-xs'\n ? 12\n : size === 'sm' || size === 'icon-sm'\n ? 16\n : size === 'lg' || size === 'icon-lg'\n ? 20\n : 16;\n const iconSpacing =\n size === 'xs'\n ? 'gap-1'\n : size === 'sm'\n ? 'gap-2'\n : size === 'lg'\n ? 'gap-2.5'\n : 'gap-2';\n\n const primitiveVariant =\n resolvedButtonStyle === 'outline'\n ? 'outline'\n : resolvedButtonStyle === 'ghost'\n ? 'ghost'\n : 'default';\n\n return (\n <PrimitiveButton\n ref={ref}\n variant={primitiveVariant}\n size={size}\n className={cn('base-button--component',\n resolvedStyleClass,\n 'inline-flex items-center justify-center rounded-radius',\n Icon && iconSpacing,\n fullWidth && 'w-full',\n className\n )}\n disabled={disabled}\n {...props}\n >\n {!!Icon && iconPosition === 'left' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n {children}\n {!!Icon && iconPosition === 'right' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n </PrimitiveButton>\n );\n }\n);\n\nBaseButton.displayName = 'BaseButton';\n\nexport { BaseButton };\n","import { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport { cn } from '@/lib/utils';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { BaseButton, type BaseButtonProps, type ButtonSize } from './base-button';\n\nexport interface LoaderButtonStrings {\n\tloading: string;\n\tcompleted: string;\n}\n\nexport const defaultLoaderButtonStrings: LoaderButtonStrings = {\n\tloading: 'Loading...',\n\tcompleted: 'Completed',\n};\n\n/** @deprecated Use `strings` instead. */\nexport interface LoadingLabels {\n\tloading?: string;\n\tcompleted?: string;\n}\n\nexport interface LoaderButtonProps extends BaseButtonProps {\n\tloading?: boolean;\n\thandlesLoading?: boolean;\n\tstrings?: StringsProp<LoaderButtonStrings>;\n\t/** @deprecated Use `strings` instead. */\n\tloadingLabels?: LoadingLabels;\n}\n\nconst LoaderButton = React.forwardRef<HTMLButtonElement, LoaderButtonProps>(\n\t(\n\t\t{\n\t\t\tloading = false,\n\t\t\thandlesLoading,\n\t\t\tstrings: stringsProp,\n\t\t\tloadingLabels,\n\t\t\ticon: Icon,\n\t\t\ticonPosition = 'left',\n\t\t\tchildren,\n\t\t\tdisabled,\n\t\t\t...props\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst strings = useStrings(defaultLoaderButtonStrings, {\n\t\t\t...(loadingLabels ?? {}),\n\t\t\t...(stringsProp ?? {}),\n\t\t});\n\t\tconst [isLoading, setIsLoading] = useState(loading);\n\t\tconst [, setShowCompletedState] = useState(false);\n\n\t\tuseEffect(() => {\n\t\t\tif (loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading]);\n\n\t\tuseEffect(() => {\n\t\t\tif (handlesLoading && loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading, handlesLoading]);\n\n\t\tuseEffect(() => {\n\t\t\tlet timeoutId: ReturnType<typeof setTimeout>;\n\t\t\tif (!loading && isLoading) {\n\t\t\t\tsetShowCompletedState(true);\n\t\t\t\ttimeoutId = setTimeout(() => {\n\t\t\t\t\tsetIsLoading(false);\n\t\t\t\t\tsetShowCompletedState(false);\n\t\t\t\t}, 300);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (timeoutId) clearTimeout(timeoutId);\n\t\t\t};\n\t\t}, [loading, isLoading]);\n\n\t\tconst getIconSize = (size?: ButtonSize) => {\n\t\t\tif (size === 'xs') return 12;\n\t\t\tif (size === 'sm') return 14;\n\t\t\tif (size === 'lg') return 20;\n\t\t\treturn 16;\n\t\t};\n\n\t\treturn (\n\t\t\t<BaseButton className=\"loader-button--component\"\n\t\t\t\t{...props}\n\t\t\t\tref={ref}\n\t\t\t\tdisabled={disabled || isLoading}\n\t\t\t>\n\t\t\t\t{!!isLoading && (\n <Loader2\n\t\t\t\t\t\tclassName=\"animate-spin mr-2\"\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t{!!Icon && iconPosition === 'left' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-ms-1 me-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t<span>\n\t\t\t\t\t{!!isLoading && strings.loading}\n\t\t\t\t\t{!isLoading && children}\n\t\t\t\t</span>\n\t\t\t\t{!!Icon && iconPosition === 'right' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-me-1 ms-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t</BaseButton>\n\t\t);\n\t},\n);\n\nLoaderButton.displayName = 'LoaderButton';\n\nexport { LoaderButton };\n","import * as React from 'react';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\n\nexport interface TooltipButtonProps extends BaseButtonProps {\n\twithTooltip: string;\n}\n\nconst TooltipButton = React.forwardRef<HTMLButtonElement, TooltipButtonProps>(\n\t({ withTooltip, ...props }, ref) => {\n\t\treturn (\n\t\t\t<Tooltip>\n\t\t\t\t<TooltipTrigger\n\t\t\t\t\trender={(triggerProps) => (\n\t\t\t\t\t\t<BaseButton\n\t\t\t\t\t\t\t{...props}\n\t\t\t\t\t\t\t{...triggerProps}\n\t\t\t\t\t\t\taria-label={props['aria-label'] ?? withTooltip}\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\t// `render` merges props, but className needs manual merge.\n\n\t\t\t\t\t\t\tclassName={cn('tooltip-button--component', (triggerProps as { className?: string }).className, props.className)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t\t<TooltipContent className=\"px-2 py-1 text-xs\">\n\t\t\t\t\t{withTooltip}\n\t\t\t\t</TooltipContent>\n\t\t\t</Tooltip>\n\t\t);\n\t},\n);\n\nTooltipButton.displayName = 'TooltipButton';\n\nexport { TooltipButton };\n","/**\n * Button — combo wrapper around BaseButton. Opts in to:\n * - `loading` / `handlesLoading` → wraps in LoaderButton\n * - `withTooltip` → wraps in TooltipButton\n * - `href` → renders an `<a>` around the button\n * Mix freely; only the relevant wrappers are added.\n */\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\nimport { LoaderButton, type LoaderButtonProps } from './loader-button';\nimport { TooltipButton, type TooltipButtonProps } from './tooltip-button';\n\nexport type ButtonProps = BaseButtonProps &\n\tPartial<LoaderButtonProps & TooltipButtonProps> & {\n\t\thref?: string;\n\t};\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(({\n\thref,\n\twithTooltip,\n\tloading,\n\thandlesLoading,\n\t...props\n}, ref) => {\n\tconst inner = (() => {\n\t\tif (loading !== undefined || handlesLoading) {\n\t\t\tif (withTooltip) {\n\t\t\t\treturn (\n\t\t\t\t\t<TooltipButton className=\"button--component\" ref={ref} withTooltip={withTooltip} {...props}>\n\t\t\t\t\t\t<LoaderButton loading={loading} handlesLoading={handlesLoading} {...props} />\n\t\t\t\t\t</TooltipButton>\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn <LoaderButton ref={ref} loading={loading} handlesLoading={handlesLoading} {...props} />;\n\t\t}\n\n\t\tif (withTooltip) {\n\t\t\treturn <TooltipButton ref={ref} withTooltip={withTooltip} {...props} />;\n\t\t}\n\n\t\treturn <BaseButton ref={ref} {...props} />;\n\t})();\n\n\tif (href) {\n\t\treturn (\n\t\t\t<a\n\t\t\t\thref={href}\n\t\t\t\tclassName={cn('inline-flex', props.fullWidth && 'w-full')}\n\t\t\t>\n\t\t\t\t{inner}\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn inner;\n});\n\nButton.displayName = 'Button';\n\nexport { Button };\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ const e=require("./chunk-CMqjfN_6.cjs"),t=require("../lib/strings.cjs"),n=require("./ui-provider-BF4m2cR0.cjs"),r=require("../lib/utils.cjs"),i=require("./button-DEFoa7-c.cjs"),a=require("./tooltip-mvxZV_Lu.cjs");let o=require("react");o=e.t(o,1);let s=require("react/jsx-runtime"),c=require("lucide-react");var l={dark:{solid:`bg-foreground text-background hover:bg-foreground/90`,outline:`border border-foreground/80 text-foreground hover:bg-foreground/8`,ghost:`text-foreground hover:bg-foreground/8`},primary:{solid:`bg-primary text-primary-foreground hover:bg-primary/90`,outline:`border border-primary/70 text-primary hover:bg-primary/10`,ghost:`text-primary hover:bg-primary/10`},secondary:{solid:`bg-foreground/8 text-foreground hover:bg-foreground/12`,outline:`border border-foreground/15 text-foreground hover:bg-foreground/8`,ghost:`text-foreground hover:bg-foreground/8`},light:{solid:`bg-muted text-muted-foreground hover:bg-muted/80`,outline:`border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground`,ghost:`text-muted-foreground hover:bg-accent hover:text-accent-foreground`},error:{solid:`bg-destructive text-destructive-foreground hover:bg-destructive/90`,outline:`border border-destructive/60 text-destructive hover:bg-destructive/10`,ghost:`text-destructive hover:bg-destructive/10`},warning:{solid:`bg-warning text-warning-foreground hover:bg-warning/90`,outline:`border border-warning/70 text-warning-foreground hover:bg-warning/20`,ghost:`text-warning-foreground hover:bg-warning/20`},success:{solid:`bg-success text-success-foreground hover:bg-success/90`,outline:`border border-success/60 text-success hover:bg-success/10`,ghost:`text-success hover:bg-success/10`},action:{solid:`bg-info text-info-foreground hover:bg-info/90`,outline:`border border-info/60 text-info hover:bg-info/10`,ghost:`text-info hover:bg-info/10`}},u=o.forwardRef(({variant:e=`primary`,buttonStyle:t,size:a,fullWidth:o=!1,icon:c,iconPosition:u=`left`,children:d,className:f,disabled:p,...m},h)=>{let{defaultButtonStyle:g,defaultSize:_}=n.n(),v=t??g??`solid`,y=a??_??`sm`,b=l[e]??l.secondary,x=b[v]??b.solid??l.secondary.solid,S=y===`xs`||y===`icon-xs`?12:y===`sm`||y===`icon-sm`?16:y===`lg`||y===`icon-lg`?20:16;return(0,s.jsxs)(i.t,{ref:h,variant:v===`outline`?`outline`:v===`ghost`?`ghost`:`default`,size:y,className:r.cn(`base-button--component`,x,`inline-flex items-center justify-center rounded-radius`,c&&(y===`xs`?`gap-1`:y===`sm`?`gap-2`:y===`lg`?`gap-2.5`:`gap-2`),o&&`w-full`,f),disabled:p,...m,children:[!!c&&u===`left`&&(0,s.jsx)(c,{size:S,"aria-hidden":`true`}),d,!!c&&u===`right`&&(0,s.jsx)(c,{size:S,"aria-hidden":`true`})]})});u.displayName=`BaseButton`;var d={loading:`Loading...`,completed:`Completed`},f=o.forwardRef(({loading:e=!1,handlesLoading:n,strings:i,loadingLabels:a,icon:l,iconPosition:f=`left`,children:p,disabled:m,...h},g)=>{let _=t.useStrings(d,{...a??{},...i??{}}),[v,y]=(0,o.useState)(e),[,b]=(0,o.useState)(!1);(0,o.useEffect)(()=>{e&&y(!0)},[e]),(0,o.useEffect)(()=>{n&&e&&y(!0)},[e,n]),(0,o.useEffect)(()=>{let t;return!e&&v&&(b(!0),t=setTimeout(()=>{y(!1),b(!1)},300)),()=>{t&&clearTimeout(t)}},[e,v]);let x=e=>e===`xs`?12:e===`sm`?14:e===`lg`?20:16;return(0,s.jsxs)(u,{className:`loader-button--component`,...h,ref:g,disabled:m||v,children:[!!v&&(0,s.jsx)(c.Loader2,{className:`animate-spin mr-2`,size:x(h.size),"aria-hidden":`true`}),!!l&&f===`left`&&!v&&(0,s.jsx)(l,{className:r.cn(`opacity-60`,p&&`-ms-1 me-2`),size:x(h.size),"aria-hidden":`true`}),(0,s.jsxs)(`span`,{children:[!!v&&_.loading,!v&&p]}),!!l&&f===`right`&&!v&&(0,s.jsx)(l,{className:r.cn(`opacity-60`,p&&`-me-1 ms-2`),size:x(h.size),"aria-hidden":`true`})]})});f.displayName=`LoaderButton`;var p=o.forwardRef(({withTooltip:e,...t},n)=>(0,s.jsxs)(a.t,{children:[(0,s.jsx)(a.i,{render:i=>(0,s.jsx)(u,{...t,...i,"aria-label":t[`aria-label`]??e,ref:n,className:r.cn(`tooltip-button--component`,i.className,t.className)})}),(0,s.jsx)(a.n,{className:`px-2 py-1 text-xs`,children:e})]}));p.displayName=`TooltipButton`;var m=o.forwardRef(({href:e,withTooltip:t,loading:n,handlesLoading:i,...a},o)=>{let c=n!==void 0||i?t?(0,s.jsx)(p,{className:`button--component`,ref:o,withTooltip:t,...a,children:(0,s.jsx)(f,{loading:n,handlesLoading:i,...a})}):(0,s.jsx)(f,{ref:o,loading:n,handlesLoading:i,...a}):t?(0,s.jsx)(p,{ref:o,withTooltip:t,...a}):(0,s.jsx)(u,{ref:o,...a});return e?(0,s.jsx)(`a`,{href:e,className:r.cn(`inline-flex`,a.fullWidth&&`w-full`),children:c}):c});m.displayName=`Button`,Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return m}});
2
+ //# sourceMappingURL=button-BI347RlM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-BI347RlM.cjs","names":[],"sources":["../../src/components/base/buttons/base-button.tsx","../../src/components/base/buttons/loader-button.tsx","../../src/components/base/buttons/tooltip-button.tsx","../../src/components/base/buttons/button.tsx"],"sourcesContent":["/**\n * BaseButton — foundational button. Wraps shadcn `Button` with a richer\n * variant × style × size matrix (variants: dark / primary / secondary / error /\n * warning / success / light / action; styles: solid / outline / ghost), plus\n * optional left/right `icon` and `fullWidth`.\n */\nimport type { VariantProps } from 'class-variance-authority';\nimport type { LucideIcon } from 'lucide-react';\nimport * as React from 'react';\nimport {\n Button as PrimitiveButton,\n type buttonVariants\n} from '@/components/ui/button';\nimport {\n useButtonConfig,\n type ButtonSize as ConfiguredButtonSize,\n type ButtonStyle as ConfiguredButtonStyle,\n} from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nexport type ButtonVariant =\n | 'dark'\n | 'primary'\n | 'secondary'\n | 'error'\n | 'warning'\n | 'success'\n | 'light'\n | 'action';\nexport type ButtonStyle = ConfiguredButtonStyle;\nexport type ButtonSize = ConfiguredButtonSize;\nexport type IconPosition = 'left' | 'right';\n\nexport interface BaseButtonProps\n extends Omit<\n React.ComponentPropsWithoutRef<typeof PrimitiveButton>,\n 'children' | 'variant' | 'size'\n >,\n Omit<VariantProps<typeof buttonVariants>, 'variant' | 'size'> {\n variant?: ButtonVariant;\n buttonStyle?: ButtonStyle;\n size?: ButtonSize;\n fullWidth?: boolean;\n icon?: React.ElementType | LucideIcon;\n iconPosition?: IconPosition;\n children: React.ReactNode;\n}\n\nconst variantStyles: Record<ButtonVariant, Record<ButtonStyle, string>> = {\n dark: {\n solid: 'bg-foreground text-background hover:bg-foreground/90',\n outline: 'border border-foreground/80 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n primary: {\n solid: 'bg-primary text-primary-foreground hover:bg-primary/90',\n outline: 'border border-primary/70 text-primary hover:bg-primary/10',\n ghost: 'text-primary hover:bg-primary/10'\n },\n secondary: {\n solid: 'bg-foreground/8 text-foreground hover:bg-foreground/12',\n outline: 'border border-foreground/15 text-foreground hover:bg-foreground/8',\n ghost: 'text-foreground hover:bg-foreground/8'\n },\n light: {\n solid: 'bg-muted text-muted-foreground hover:bg-muted/80',\n outline: 'border border-border text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n ghost: 'text-muted-foreground hover:bg-accent hover:text-accent-foreground'\n },\n error: {\n solid: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n outline: 'border border-destructive/60 text-destructive hover:bg-destructive/10',\n ghost: 'text-destructive hover:bg-destructive/10'\n },\n warning: {\n solid: 'bg-warning text-warning-foreground hover:bg-warning/90',\n outline: 'border border-warning/70 text-warning-foreground hover:bg-warning/20',\n ghost: 'text-warning-foreground hover:bg-warning/20'\n },\n success: {\n solid: 'bg-success text-success-foreground hover:bg-success/90',\n outline: 'border border-success/60 text-success hover:bg-success/10',\n ghost: 'text-success hover:bg-success/10'\n },\n action: {\n solid: 'bg-info text-info-foreground hover:bg-info/90',\n outline: 'border border-info/60 text-info hover:bg-info/10',\n ghost: 'text-info hover:bg-info/10'\n }\n};\n\nconst BaseButton = React.forwardRef<HTMLButtonElement, BaseButtonProps>(\n (\n {\n variant = 'primary',\n buttonStyle,\n size: sizeProp,\n fullWidth = false,\n icon: Icon,\n iconPosition = 'left',\n children,\n className,\n disabled,\n ...props\n },\n ref\n ) => {\n const { defaultButtonStyle, defaultSize } = useButtonConfig();\n const resolvedButtonStyle: ButtonStyle =\n buttonStyle ?? defaultButtonStyle ?? 'solid';\n const size: ButtonSize = sizeProp ?? defaultSize ?? 'sm';\n const resolvedVariantStyles =\n variantStyles[variant] ?? variantStyles.secondary;\n const resolvedStyleClass =\n resolvedVariantStyles[resolvedButtonStyle] ??\n resolvedVariantStyles.solid ??\n variantStyles.secondary.solid;\n\n const iconSize =\n size === 'xs' || size === 'icon-xs'\n ? 12\n : size === 'sm' || size === 'icon-sm'\n ? 16\n : size === 'lg' || size === 'icon-lg'\n ? 20\n : 16;\n const iconSpacing =\n size === 'xs'\n ? 'gap-1'\n : size === 'sm'\n ? 'gap-2'\n : size === 'lg'\n ? 'gap-2.5'\n : 'gap-2';\n\n const primitiveVariant =\n resolvedButtonStyle === 'outline'\n ? 'outline'\n : resolvedButtonStyle === 'ghost'\n ? 'ghost'\n : 'default';\n\n return (\n <PrimitiveButton\n ref={ref}\n variant={primitiveVariant}\n size={size}\n className={cn('base-button--component',\n resolvedStyleClass,\n 'inline-flex items-center justify-center rounded-radius',\n Icon && iconSpacing,\n fullWidth && 'w-full',\n className\n )}\n disabled={disabled}\n {...props}\n >\n {!!Icon && iconPosition === 'left' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n {children}\n {!!Icon && iconPosition === 'right' && (\n <Icon\n size={iconSize}\n aria-hidden=\"true\"\n />\n )}\n </PrimitiveButton>\n );\n }\n);\n\nBaseButton.displayName = 'BaseButton';\n\nexport { BaseButton };\n","import { Loader2 } from 'lucide-react';\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport { cn } from '@/lib/utils';\nimport { useStrings, type StringsProp } from '@/lib/strings';\nimport { BaseButton, type BaseButtonProps, type ButtonSize } from './base-button';\n\nexport interface LoaderButtonStrings {\n\tloading: string;\n\tcompleted: string;\n}\n\nexport const defaultLoaderButtonStrings: LoaderButtonStrings = {\n\tloading: 'Loading...',\n\tcompleted: 'Completed',\n};\n\n/** @deprecated Use `strings` instead. */\nexport interface LoadingLabels {\n\tloading?: string;\n\tcompleted?: string;\n}\n\nexport interface LoaderButtonProps extends BaseButtonProps {\n\tloading?: boolean;\n\thandlesLoading?: boolean;\n\tstrings?: StringsProp<LoaderButtonStrings>;\n\t/** @deprecated Use `strings` instead. */\n\tloadingLabels?: LoadingLabels;\n}\n\nconst LoaderButton = React.forwardRef<HTMLButtonElement, LoaderButtonProps>(\n\t(\n\t\t{\n\t\t\tloading = false,\n\t\t\thandlesLoading,\n\t\t\tstrings: stringsProp,\n\t\t\tloadingLabels,\n\t\t\ticon: Icon,\n\t\t\ticonPosition = 'left',\n\t\t\tchildren,\n\t\t\tdisabled,\n\t\t\t...props\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst strings = useStrings(defaultLoaderButtonStrings, {\n\t\t\t...(loadingLabels ?? {}),\n\t\t\t...(stringsProp ?? {}),\n\t\t});\n\t\tconst [isLoading, setIsLoading] = useState(loading);\n\t\tconst [, setShowCompletedState] = useState(false);\n\n\t\tuseEffect(() => {\n\t\t\tif (loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading]);\n\n\t\tuseEffect(() => {\n\t\t\tif (handlesLoading && loading) {\n\t\t\t\tsetIsLoading(true);\n\t\t\t}\n\t\t}, [loading, handlesLoading]);\n\n\t\tuseEffect(() => {\n\t\t\tlet timeoutId: ReturnType<typeof setTimeout>;\n\t\t\tif (!loading && isLoading) {\n\t\t\t\tsetShowCompletedState(true);\n\t\t\t\ttimeoutId = setTimeout(() => {\n\t\t\t\t\tsetIsLoading(false);\n\t\t\t\t\tsetShowCompletedState(false);\n\t\t\t\t}, 300);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (timeoutId) clearTimeout(timeoutId);\n\t\t\t};\n\t\t}, [loading, isLoading]);\n\n\t\tconst getIconSize = (size?: ButtonSize) => {\n\t\t\tif (size === 'xs') return 12;\n\t\t\tif (size === 'sm') return 14;\n\t\t\tif (size === 'lg') return 20;\n\t\t\treturn 16;\n\t\t};\n\n\t\treturn (\n\t\t\t<BaseButton className=\"loader-button--component\"\n\t\t\t\t{...props}\n\t\t\t\tref={ref}\n\t\t\t\tdisabled={disabled || isLoading}\n\t\t\t>\n\t\t\t\t{!!isLoading && (\n <Loader2\n\t\t\t\t\t\tclassName=\"animate-spin mr-2\"\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t{!!Icon && iconPosition === 'left' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-ms-1 me-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t\t<span>\n\t\t\t\t\t{!!isLoading && strings.loading}\n\t\t\t\t\t{!isLoading && children}\n\t\t\t\t</span>\n\t\t\t\t{!!Icon && iconPosition === 'right' && !isLoading && (\n <Icon\n\t\t\t\t\t\tclassName={cn('opacity-60', children && '-me-1 ms-2')}\n\t\t\t\t\t\tsize={getIconSize(props.size)}\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t/>\n )}\n\t\t\t</BaseButton>\n\t\t);\n\t},\n);\n\nLoaderButton.displayName = 'LoaderButton';\n\nexport { LoaderButton };\n","import * as React from 'react';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\n\nexport interface TooltipButtonProps extends BaseButtonProps {\n\twithTooltip: string;\n}\n\nconst TooltipButton = React.forwardRef<HTMLButtonElement, TooltipButtonProps>(\n\t({ withTooltip, ...props }, ref) => {\n\t\treturn (\n\t\t\t<Tooltip>\n\t\t\t\t<TooltipTrigger\n\t\t\t\t\trender={(triggerProps) => (\n\t\t\t\t\t\t<BaseButton\n\t\t\t\t\t\t\t{...props}\n\t\t\t\t\t\t\t{...triggerProps}\n\t\t\t\t\t\t\taria-label={props['aria-label'] ?? withTooltip}\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\t// `render` merges props, but className needs manual merge.\n\n\t\t\t\t\t\t\tclassName={cn('tooltip-button--component', (triggerProps as { className?: string }).className, props.className)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t\t<TooltipContent className=\"px-2 py-1 text-xs\">\n\t\t\t\t\t{withTooltip}\n\t\t\t\t</TooltipContent>\n\t\t\t</Tooltip>\n\t\t);\n\t},\n);\n\nTooltipButton.displayName = 'TooltipButton';\n\nexport { TooltipButton };\n","/**\n * Button — combo wrapper around BaseButton. Opts in to:\n * - `loading` / `handlesLoading` → wraps in LoaderButton\n * - `withTooltip` → wraps in TooltipButton\n * - `href` → renders an `<a>` around the button\n * Mix freely; only the relevant wrappers are added.\n */\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { BaseButton, type BaseButtonProps } from './base-button';\nimport { LoaderButton, type LoaderButtonProps } from './loader-button';\nimport { TooltipButton, type TooltipButtonProps } from './tooltip-button';\n\nexport type ButtonProps = BaseButtonProps &\n\tPartial<LoaderButtonProps & TooltipButtonProps> & {\n\t\thref?: string;\n\t};\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(({\n\thref,\n\twithTooltip,\n\tloading,\n\thandlesLoading,\n\t...props\n}, ref) => {\n\tconst inner = (() => {\n\t\tif (loading !== undefined || handlesLoading) {\n\t\t\tif (withTooltip) {\n\t\t\t\treturn (\n\t\t\t\t\t<TooltipButton className=\"button--component\" ref={ref} withTooltip={withTooltip} {...props}>\n\t\t\t\t\t\t<LoaderButton loading={loading} handlesLoading={handlesLoading} {...props} />\n\t\t\t\t\t</TooltipButton>\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn <LoaderButton ref={ref} loading={loading} handlesLoading={handlesLoading} {...props} />;\n\t\t}\n\n\t\tif (withTooltip) {\n\t\t\treturn <TooltipButton ref={ref} withTooltip={withTooltip} {...props} />;\n\t\t}\n\n\t\treturn <BaseButton ref={ref} {...props} />;\n\t})();\n\n\tif (href) {\n\t\treturn (\n\t\t\t<a\n\t\t\t\thref={href}\n\t\t\t\tclassName={cn('inline-flex', props.fullWidth && 'w-full')}\n\t\t\t>\n\t\t\t\t{inner}\n\t\t\t</a>\n\t\t);\n\t}\n\n\treturn inner;\n});\n\nButton.displayName = 'Button';\n\nexport { Button };\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ const e=require("../lib/utils.cjs");let t=require("react/jsx-runtime"),n=require("@base-ui/react/button");var r=(0,require("class-variance-authority").cva)(`group/button inline-flex shrink-0 items-center justify-center rounded-4xl border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/30 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-primary text-primary-foreground hover:bg-primary/80`,outline:`border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:bg-transparent dark:hover:bg-input/30`,secondary:`bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground`,ghost:`hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50`,destructive:`bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40`,link:`text-primary underline-offset-4 hover:underline`},size:{default:`h-9 gap-1.5 px-3 has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5`,xs:`h-6 gap-1 px-2.5 text-xs has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1 px-3 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,lg:`h-10 gap-1.5 px-4 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,icon:`size-9`,"icon-xs":`size-6 [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8`,"icon-lg":`size-10`}},defaultVariants:{variant:`default`,size:`default`}});function i({className:i,variant:a=`default`,size:o=`default`,...s}){return(0,t.jsx)(n.Button,{"data-slot":`button`,className:e.cn(r({variant:a,size:o,className:i})),...s})}Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return i}});
2
+ //# sourceMappingURL=button-DEFoa7-c.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-DEFoa7-c.cjs","names":[],"sources":["../../src/components/ui/button.tsx"],"sourcesContent":["import { Button as ButtonPrimitive } from \"@base-ui/react/button\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"group/button inline-flex shrink-0 items-center justify-center rounded-4xl border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/30 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/80\",\n outline:\n \"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:bg-transparent dark:hover:bg-input/30\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50\",\n destructive:\n \"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-9 gap-1.5 px-3 has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5\",\n xs: \"h-6 gap-1 px-2.5 text-xs has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-8 gap-1 px-3 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n lg: \"h-10 gap-1.5 px-4 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-9\",\n \"icon-xs\": \"size-6 [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\": \"size-8\",\n \"icon-lg\": \"size-10\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n ...props\n}: ButtonPrimitive.Props & VariantProps<typeof buttonVariants>) {\n return (\n <ButtonPrimitive\n data-slot=\"button\"\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n"],"mappings":"0GAKA,IAAM,GAAA,oCAAA,EAAA,KACJ,8lBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,yDACT,QACE,mKACF,UACE,kIACF,MACE,mHACF,YACE,8NACF,KAAM,iDACR,EACA,KAAM,CACJ,QACE,yFACF,GAAI,kIACJ,GAAI,mFACJ,GAAI,sFACJ,KAAM,SACN,UAAW,8CACX,UAAW,SACX,UAAW,SACb,CACF,EACA,gBAAiB,CACf,QAAS,UACT,KAAM,SACR,CACF,CACF,EAEA,SAAS,EAAO,CACd,YACA,UAAU,UACV,OAAO,UACP,GAAG,GAC2D,CAC9D,OACE,EAAA,EAAA,KAAC,EAAA,OAAD,CACE,YAAU,SACV,UAAW,EAAA,GAAG,EAAe,CAAE,UAAS,OAAM,WAAU,CAAC,CAAC,EAC1D,GAAI,CACL,CAAA,CAEL"}