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,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-BI347RlM.cjs"),a=require("./tooltip-mvxZV_Lu.cjs"),o=require("./heading-0DYCOrgC.cjs"),s=require("./alert-CuIIKJC-.cjs"),c=require("./dropdown-menu-CHQzQWUK.cjs");let l=require("react");l=e.t(l,1);let u=require("react/jsx-runtime"),d=require("lucide-react");function f({className:e,size:t=`default`,...n}){return(0,u.jsx)(`div`,{"data-slot":`card`,"data-size":t,className:r.cn(`ring-foreground/10 bg-card text-card-foreground gap-6 overflow-hidden rounded-xl py-6 text-sm shadow-xs ring-1 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl group/card flex flex-col`,e),...n})}function p({className:e,...t}){return(0,u.jsx)(`div`,{"data-slot":`card-header`,className:r.cn(`gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]`,e),...t})}function m({className:e,...t}){return(0,u.jsx)(`div`,{"data-slot":`card-title`,className:r.cn(`text-base leading-normal font-medium group-data-[size=sm]/card:text-sm`,e),...t})}function h({className:e,...t}){return(0,u.jsx)(`div`,{"data-slot":`card-description`,className:r.cn(`text-muted-foreground text-sm`,e),...t})}function g({className:e,...t}){return(0,u.jsx)(`div`,{"data-slot":`card-content`,className:r.cn(`px-6 group-data-[size=sm]/card:px-4`,e),...t})}function _({className:e,...t}){return(0,u.jsx)(`div`,{"data-slot":`card-footer`,className:r.cn(`rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4 flex items-center`,e),...t})}var v={root:`card--component`,header:`card--header`,title:`card--title`,description:`card--description`,content:`card--content`,footer:`card--footer`,alert:`card--alert`},y={sm:{shell:`gap-3 py-4`,headerX:`px-4`,contentX:`px-4`,contentY:`py-0`,footerX:`px-4`,alertX:`px-4`,alertOffsetWithHeader:`-mt-1`,alertOffsetStandalone:`mt-0`},base:{shell:`gap-4 py-6`,headerX:`px-6`,contentX:`px-6`,contentY:`py-0`,footerX:`px-6`,alertX:`px-6`,alertOffsetWithHeader:`-mt-1`,alertOffsetStandalone:`mt-0`},lg:{shell:`gap-4 py-6`,headerX:`px-6`,contentX:`px-6`,contentY:`py-0`,footerX:`px-6`,alertX:`px-6`,alertOffsetWithHeader:`-mt-1`,alertOffsetStandalone:`mt-0`}},b={card:`rounded-lg border border-border bg-card text-card-foreground shadow-xs`,flat:`bg-transparent text-card-foreground border-none shadow-none`,framed:r.cn(`relative bg-card text-card-foreground shadow-xs`,`rounded-lg border-[3px] border-border/30`,`before:pointer-events-none before:absolute before:inset-0 before:rounded-md before:border before:border-border/60 before:content-[""]`)};function x(e){return e==null||typeof e==`boolean`?!1:typeof e==`string`?e.trim().length>0:typeof e==`number`||typeof e==`bigint`?!0:Array.isArray(e)?e.some(x):(0,l.isValidElement)(e)&&e.type===l.Fragment?x(e.props.children):!0}function S({className:e,...t}){return(0,u.jsx)(f,{className:r.cn(v.root,`flex w-full flex-col gap-3 py-4 ring-0`,e),...t})}function C({className:e,...t}){return(0,u.jsx)(p,{className:r.cn(v.header,`flex flex-col gap-0.5 px-4`,e),...t})}function w({className:e,children:t,...n}){return x(t)?typeof t==`string`||typeof t==`number`||typeof t==`bigint`?(0,u.jsx)(o.n,{"data-slot":`card-title`,tag:`div`,weight:`semibold`,lineHeight:`none`,className:r.cn(v.title,`min-w-0 leading-none font-semibold`,e),...n,children:t}):(0,u.jsx)(m,{className:r.cn(v.title,`min-w-0 leading-none font-semibold`,e),...n,children:t}):null}function T({className:e,children:t,...n}){return x(t)?typeof t==`string`||typeof t==`number`||typeof t==`bigint`?(0,u.jsx)(o.n,{"data-slot":`card-description`,tag:`div`,type:`secondary`,className:r.cn(v.description,`text-muted-foreground text-sm`,e),...n,children:t}):(0,u.jsx)(h,{className:r.cn(v.description,`text-muted-foreground text-sm`,e),...n,children:t}):null}function E({className:e,...t}){return(0,u.jsx)(g,{className:r.cn(v.content,`px-4`,e),...t})}function D({className:e,...t}){return(0,u.jsx)(_,{className:r.cn(v.footer,`flex items-center px-4`,e),...t})}function O({alert:e,alertVariant:t,hasHeader:n,padding:i}){let a=y[i];return(0,u.jsx)(`div`,{className:r.cn(v.alert,a.alertX,n?a.alertOffsetWithHeader:a.alertOffsetStandalone),children:(0,u.jsx)(s.t,{variant:t,children:(0,u.jsx)(s.r,{children:e})})})}function k({actions:e,actionsLabel:t}){return(0,u.jsxs)(c.t,{children:[(0,u.jsx)(c.g,{type:`button`,"aria-label":t,className:r.cn(`inline-flex size-7 shrink-0 items-center justify-center rounded-md p-0`,`text-muted-foreground hover:bg-accent hover:text-accent-foreground`,`outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,`transition-colors`),children:(0,u.jsx)(d.MoreHorizontal,{className:`size-4`})}),(0,u.jsx)(c.r,{align:`end`,className:`min-w-[140px]`,children:e.map((e,t)=>(0,u.jsxs)(c.a,{onClick:e.onClick,disabled:e.disabled,className:`gap-1.5 px-2 py-1 text-xs`,children:[!!e.icon&&(0,u.jsx)(`span`,{className:`flex shrink-0 items-center`,children:e.icon}),e.label]},e.id??`${e.label}-${t}`))})]})}function A({tooltipLabel:e}){return(0,u.jsx)(a.i,{render:t=>{let n=t;return(0,u.jsx)(i.t,{...n,type:`button`,variant:`secondary`,buttonStyle:`ghost`,size:`icon-xs`,className:r.cn(`h-5 w-5 text-muted-foreground`,n.className),"aria-label":e,children:(0,u.jsx)(d.Info,{className:`size-3.5`})})}})}function j({icon:e,title:t,titleSuffix:n,description:i,tooltip:o,tooltipLabel:s,headerStart:c,headerEnd:l,headerAction:d,actions:f,actionsLabel:p,padding:m,className:h}){let g=Array.isArray(f)?f:[],_=g.length>0,v=x(e),b=x(t),S=x(n),E=x(i),D=x(o),O=x(c),j=x(l),M=x(d),N=v||b||S||D,P=j||M||_;return(0,u.jsxs)(C,{className:r.cn(`flex-row items-start justify-between gap-3 pb-0`,y[m].headerX,h),children:[(0,u.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[!!O&&c,!!N&&(0,u.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[!!v&&(0,u.jsx)(`span`,{className:`flex shrink-0 items-center text-muted-foreground`,children:e}),(0,u.jsx)(w,{children:t}),!!S&&(0,u.jsx)(`div`,{className:`flex items-center gap-2`,children:n}),!!D&&(0,u.jsxs)(a.t,{children:[(0,u.jsx)(A,{tooltipLabel:s}),(0,u.jsx)(a.n,{children:o})]})]}),!!E&&(0,u.jsx)(T,{className:`text-left`,children:i})]}),!!P&&(0,u.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[!!j&&l,!!M&&d,!!_&&(0,u.jsx)(k,{actions:g,actionsLabel:p})]})]})}var M={expandLabel:`Expand card`,collapseLabel:`Collapse card`};function N({title:e,lines:t=2,className:n}){let i=({barClassName:e})=>(0,u.jsx)(`div`,{className:r.cn(`animate-pulse rounded bg-muted`,e)});return(0,u.jsxs)(S,{className:r.cn(b.card,`gap-4 py-6`,n),children:[(0,u.jsx)(C,{className:`flex-col gap-1.5 px-6 pb-0`,children:e?(0,u.jsx)(w,{children:e}):(0,u.jsx)(i,{barClassName:`h-4 w-32`})}),(0,u.jsx)(E,{className:`space-y-3 px-6 py-0`,children:Array.from({length:t},(e,t)=>(0,u.jsx)(i,{barClassName:r.cn(`h-4`,t===0?`w-full`:`w-3/4`)},`skel-${String(t)}`))})]})}N.displayName=`SmartCardSkeleton`;var P=(0,l.forwardRef)(function({icon:e,title:a,titleSuffix:o,description:s,tooltip:c,tooltipAriaLabel:f=`Card info`,footerText:p,alert:m,alertVariant:h=`default`,surface:g,transparent:_=!1,padding:v,actions:C,actionsLabel:w=`Card actions`,headerAction:T,headerStart:k,headerEnd:A,contentTop:N,contentBottom:P,footerSlot:F,headerDivider:ee=!1,footerDivider:I=!1,expandable:L=!1,defaultExpanded:te=!1,expanded:R,onExpandedChange:z,children:ne,className:B,headerClassName:V,contentClassName:re,footerClassName:H,strings:ie},ae){let{defaultPadding:oe}=n.r(),U=v??oe??`sm`,W=y[U],G=Array.isArray(C)?C:[],K=t.useStrings(M,ie),q=L!==!1&&L!==void 0,J=typeof L==`object`&&L?.collapsedMaxHeight!==void 0?L.collapsedMaxHeight:`12rem`,se=typeof J==`number`?`${J}px`:J,Y=R!==void 0,[ce,le]=(0,l.useState)(te),X=Y?R:ce,ue=(0,l.useCallback)(()=>{let e=!X;Y||le(e),z?.(e)},[X,Y,z]),Z=x(e)||x(a)||x(s)||G.length>0||x(T)||x(k)||x(A),Q=x(m),de=x(p),fe=x(F),pe=x(N),me=x(P),he=f.trim().length>0?f:`Card info`,ge=q?{maxHeight:X?``:se}:void 0,$=g??(_?`flat`:`card`);return(0,u.jsxs)(S,{ref:ae,"data-surface":$,className:r.cn(b[$],W.shell,q&&`relative pb-1 !overflow-visible`,B),children:[!!Z&&(0,u.jsx)(j,{icon:e,title:a,titleSuffix:o,description:s,tooltip:c,tooltipLabel:he,headerStart:k,headerEnd:A,headerAction:T,actions:G,actionsLabel:w,padding:U,className:r.cn(ee&&`pb-3 border-b border-border/60`,V)}),!!Q&&(0,u.jsx)(O,{alert:m,alertVariant:h,hasHeader:Z,padding:U}),(0,u.jsxs)(E,{className:r.cn(W.contentX,W.contentY,q&&`relative overflow-hidden transition-[max-height] duration-500 ease-in-out`,re),style:ge,children:[!!pe&&N,ne,!!me&&P,!!q&&!X&&(0,u.jsx)(`div`,{"aria-hidden":`true`,className:`from-background pointer-events-none absolute inset-x-0 bottom-0 h-20 rounded-b-lg bg-linear-to-t to-transparent`})]}),!!de&&(0,u.jsx)(D,{className:r.cn(`justify-end text-xs text-muted-foreground`,W.footerX,I&&`pt-3 border-t border-border/60`,H),children:p}),!!fe&&(0,u.jsx)(D,{className:r.cn(`flex-col items-stretch`,W.footerX,I&&`pt-3 border-t border-border/60`,H),children:F}),!!q&&(0,u.jsx)(`div`,{className:`absolute -bottom-4 left-1/2 -translate-x-1/2 z-10`,children:(0,u.jsxs)(i.t,{type:`button`,variant:`secondary`,buttonStyle:`outline`,size:`icon-sm`,onClick:ue,"aria-expanded":X,"aria-label":X?K.collapseLabel:K.expandLabel,className:r.cn(`inline-flex size-8 items-center justify-center rounded-full`,`border border-border bg-background text-foreground shadow-sm`,`hover:bg-muted/40 transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50`),children:[(0,u.jsx)(d.ChevronDown,{"aria-hidden":`true`,className:r.cn(`size-4 transition-transform duration-300`,X&&`rotate-180`)}),(0,u.jsx)(`span`,{className:`sr-only`,children:X?K.collapseLabel:K.expandLabel})]})})]})});P.displayName=`SmartCard`,Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return P}});
2
+ //# sourceMappingURL=smart-card-B6m7tmt0.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-card-B6m7tmt0.cjs","names":[],"sources":["../../src/components/ui/card.tsx","../../src/components/base/cards/smart-card.tokens.ts","../../src/components/base/cards/partials/has-renderable-content.ts","../../src/components/base/cards/partials/card-primitives.tsx","../../src/components/base/cards/partials/smart-card-alert.tsx","../../src/components/base/cards/partials/smart-card-actions-menu.tsx","../../src/components/base/cards/partials/smart-card-header-row.tsx","../../src/components/base/cards/smart-card.strings.ts","../../src/components/base/cards/partials/smart-card-skeleton.tsx","../../src/components/base/cards/smart-card.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Card({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & { size?: \"default\" | \"sm\" }) {\n return (\n <div\n data-slot=\"card\"\n data-size={size}\n className={cn(\"ring-foreground/10 bg-card text-card-foreground gap-6 overflow-hidden rounded-xl py-6 text-sm shadow-xs ring-1 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl group/card flex flex-col\", className)}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn(\"text-base leading-normal font-medium group-data-[size=sm]/card:text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-6 group-data-[size=sm]/card:px-4\", className)}\n {...props}\n />\n )\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\"rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4 flex items-center\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n}\n","import { cn } from '@/lib/utils';\n\nimport type { CardPadding, SmartCardSurface } from './smart-card.types';\n\n/**\n * BEM-style hooks applied to every SmartCard subregion. Library\n * consumers can target them in CSS / tests / analytics without\n * relying on shadcn's data-slot attributes (which are framework\n * internals). Keep these names consistent — they are part of the\n * public DOM contract.\n */\nexport const CARD_BEM = {\n\troot: 'card--component',\n\theader: 'card--header',\n\ttitle: 'card--title',\n\tdescription: 'card--description',\n\tcontent: 'card--content',\n\tfooter: 'card--footer',\n\talert: 'card--alert',\n} as const;\n\ninterface PaddingTokens {\n\tshell: string;\n\theaderX: string;\n\tcontentX: string;\n\tcontentY: string;\n\tfooterX: string;\n\talertX: string;\n\t/** Vertical offset applied when alert sits BELOW the header (pulls it up). */\n\talertOffsetWithHeader: string;\n\t/** Vertical spacing applied when alert is the first content (no header). */\n\talertOffsetStandalone: string;\n}\n\nexport const PADDING: Record<CardPadding, PaddingTokens> = {\n\tsm: {\n\t\tshell: 'gap-3 py-4',\n\t\theaderX: 'px-4',\n\t\tcontentX: 'px-4',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-4',\n\t\talertX: 'px-4',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n\tbase: {\n\t\tshell: 'gap-4 py-6',\n\t\theaderX: 'px-6',\n\t\tcontentX: 'px-6',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-6',\n\t\talertX: 'px-6',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n\tlg: {\n\t\tshell: 'gap-4 py-6',\n\t\theaderX: 'px-6',\n\t\tcontentX: 'px-6',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-6',\n\t\talertX: 'px-6',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n};\n\n/**\n * Surface-specific shell classes. The `framed` variant uses a soft 3px\n * outer border tinted from `--border` plus a 1px hairline inner border\n * drawn via the `before:` pseudo-element. All values flow through theme\n * tokens — no raw hex.\n */\nexport const SURFACE_CLASSES: Record<SmartCardSurface, string> = {\n\tcard: 'rounded-lg border border-border bg-card text-card-foreground shadow-xs',\n\tflat: 'bg-transparent text-card-foreground border-none shadow-none',\n\tframed: cn(\n\t\t'relative bg-card text-card-foreground shadow-xs',\n\t\t// Outer soft border: 3px, low-alpha tint of theme border.\n\t\t'rounded-lg border-[3px] border-border/30',\n\t\t// Inner hairline border drawn inside the outer (matches the\n\t\t// border-thickness offset). Pure shadcn tokens (`border-border`\n\t\t// + `bg-card`) so it picks up the active theme.\n\t\t'before:pointer-events-none before:absolute before:inset-0 before:rounded-md before:border before:border-border/60 before:content-[\"\"]',\n\t),\n};\n","import { Fragment, isValidElement, type ReactNode } from 'react';\n\n/**\n * Predicate used by SmartCard subregions to decide whether each slot\n * warrants rendering its wrapper. Numbers (incl. `0`) and JSX always\n * render; falsy / empty-string content is treated as absent. Fragments\n * recurse into their children.\n */\nexport function hasRenderableContent(content?: ReactNode): boolean {\n\tif (content === null || content === undefined) return false;\n\tif (typeof content === 'boolean') return false;\n\tif (typeof content === 'string') return content.trim().length > 0;\n\tif (typeof content === 'number' || typeof content === 'bigint') return true;\n\tif (Array.isArray(content)) return content.some(hasRenderableContent);\n\tif (isValidElement<{ children?: ReactNode }>(content)) {\n\t\tif (content.type === Fragment) return hasRenderableContent(content.props.children);\n\t\treturn true;\n\t}\n\treturn true;\n}\n","/**\n * Internal layout primitives — re-exported from `smart-card.tsx` for\n * advanced composition (deeply customised layouts that still want the\n * design-system surface tokens). Each primitive is intentionally thin:\n * a single responsibility, a single set of default classes, no business\n * logic. The BEM hooks (`card--component`, `card--header`, etc.) are\n * applied here so the public DOM contract lives in one place.\n */\nimport {\n\ttype ComponentPropsWithRef,\n\ttype ComponentPropsWithoutRef,\n} from 'react';\n\nimport {\n\tCard as CardPrimitive,\n\tCardContent as CardContentPrimitive,\n\tCardDescription as CardDescriptionPrimitive,\n\tCardFooter as CardFooterPrimitive,\n\tCardHeader as CardHeaderPrimitive,\n\tCardTitle as CardTitlePrimitive,\n} from '@/components/ui/card';\nimport Text from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport { CARD_BEM } from '../smart-card.tokens';\n\nimport { hasRenderableContent } from './has-renderable-content';\n\nexport function CardShell({ className, ...props }: ComponentPropsWithRef<'div'>) {\n\treturn (\n\t\t<CardPrimitive\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.root,\n\t\t\t\t'flex w-full flex-col gap-3 py-4 ring-0',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardHeader({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardHeaderPrimitive\n\t\t\tclassName={cn(CARD_BEM.header, 'flex flex-col gap-0.5 px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardTitle({\n\tclassName,\n\tchildren,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\tif (!hasRenderableContent(children)) return null;\n\n\tconst isPlainText =\n\t\ttypeof children === 'string' ||\n\t\ttypeof children === 'number' ||\n\t\ttypeof children === 'bigint';\n\n\tif (!isPlainText) {\n\t\treturn (\n\t\t\t<CardTitlePrimitive\n\t\t\t\tclassName={cn(CARD_BEM.title, 'min-w-0 leading-none font-semibold', className)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</CardTitlePrimitive>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Text\n\t\t\tdata-slot=\"card-title\"\n\t\t\ttag=\"div\"\n\t\t\tweight=\"semibold\"\n\t\t\tlineHeight=\"none\"\n\t\t\tclassName={cn(CARD_BEM.title, 'min-w-0 leading-none font-semibold', className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n}\n\nexport function CardDescription({\n\tclassName,\n\tchildren,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\tif (!hasRenderableContent(children)) return null;\n\n\tconst isPlainText =\n\t\ttypeof children === 'string' ||\n\t\ttypeof children === 'number' ||\n\t\ttypeof children === 'bigint';\n\n\tif (!isPlainText) {\n\t\treturn (\n\t\t\t<CardDescriptionPrimitive\n\t\t\t\tclassName={cn(\n\t\t\t\t\tCARD_BEM.description,\n\t\t\t\t\t'text-muted-foreground text-sm',\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{children}\n\t\t\t</CardDescriptionPrimitive>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Text\n\t\t\tdata-slot=\"card-description\"\n\t\t\ttag=\"div\"\n\t\t\ttype=\"secondary\"\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.description,\n\t\t\t\t'text-muted-foreground text-sm',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n}\n\nexport function CardContent({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardContentPrimitive\n\t\t\tclassName={cn(CARD_BEM.content, 'px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardFooter({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardFooterPrimitive\n\t\t\tclassName={cn(CARD_BEM.footer, 'flex items-center px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n","/**\n * Inline alert banner rendered between the header and the card body.\n * Pulls itself up under the header (`alertOffsetWithHeader`) when one\n * exists so the visual gap between header bottom and alert top stays\n * tight; otherwise pushes itself down (`alertOffsetStandalone`) so it\n * doesn't kiss the card top edge.\n */\nimport type { ReactNode } from 'react';\n\nimport { Alert, AlertDescription } from '@/components/base/display/alert';\nimport { cn } from '@/lib/utils';\n\nimport { CARD_BEM, PADDING } from '../smart-card.tokens';\nimport type { CardAlertVariant, CardPadding } from '../smart-card.types';\n\ninterface AlertSlotProps {\n\talert: ReactNode | string;\n\talertVariant: CardAlertVariant;\n\thasHeader: boolean;\n\tpadding: CardPadding;\n}\n\nexport function SmartCardAlert({\n\talert,\n\talertVariant,\n\thasHeader,\n\tpadding,\n}: AlertSlotProps) {\n\tconst tokens = PADDING[padding];\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.alert,\n\t\t\t\ttokens.alertX,\n\t\t\t\thasHeader ? tokens.alertOffsetWithHeader : tokens.alertOffsetStandalone,\n\t\t\t)}\n\t\t>\n\t\t\t<Alert variant={alertVariant}>\n\t\t\t\t<AlertDescription>{alert}</AlertDescription>\n\t\t\t</Alert>\n\t\t</div>\n\t);\n}\n","/**\n * SmartCard actions menu — `⋮` trigger + dropdown of consumer-supplied\n * `SmartCardAction` items. Always renders a 28×28 square trigger so it\n * reads cleanly as a circle (consumer overrides to `rounded-full`) or\n * a rectangle (default `rounded-md`).\n */\nimport { MoreHorizontal } from 'lucide-react';\n\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuItem,\n\tDropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu';\nimport { cn } from '@/lib/utils';\n\nimport type { SmartCardAction } from '../smart-card.types';\n\ninterface ActionsMenuProps {\n\tactions: SmartCardAction[];\n\tactionsLabel: string;\n}\n\nexport function ActionsMenu({ actions, actionsLabel }: ActionsMenuProps) {\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={actionsLabel}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'inline-flex size-7 shrink-0 items-center justify-center rounded-md p-0',\n\t\t\t\t\t'text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n\t\t\t\t\t'outline-none focus-visible:ring-2 focus-visible:ring-ring/50',\n\t\t\t\t\t'transition-colors',\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<MoreHorizontal className=\"size-4\" />\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent align=\"end\" className=\"min-w-[140px]\">\n\t\t\t\t{actions.map((action, index) => (\n\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\tkey={action.id ?? `${action.label}-${index}`}\n\t\t\t\t\t\tonClick={action.onClick}\n\t\t\t\t\t\tdisabled={action.disabled}\n\t\t\t\t\t\tclassName=\"gap-1.5 px-2 py-1 text-xs\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!action.icon && (\n\t\t\t\t\t\t\t<span className=\"flex shrink-0 items-center\">{action.icon}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{action.label}\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t))}\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n","/**\n * SmartCardHeaderRow — the chrome above the card body. Combines icon /\n * title / description / tooltip / suffix on the leading side with the\n * trailing `headerEnd` / `headerAction` slots and the actions menu.\n *\n * `TooltipTrigger_Info` is colocated here because it's only used by the\n * header — keeping it private avoids polluting the public partial\n * surface.\n */\nimport { Info } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\n\nimport { PADDING } from '../smart-card.tokens';\nimport type { CardPadding, SmartCardAction } from '../smart-card.types';\n\nimport { CardHeader, CardTitle, CardDescription } from './card-primitives';\nimport { hasRenderableContent } from './has-renderable-content';\nimport { ActionsMenu } from './smart-card-actions-menu';\n\nfunction TooltipTrigger_Info({ tooltipLabel }: { tooltipLabel: string }) {\n\treturn (\n\t\t<TooltipTrigger\n\t\t\trender={(triggerProps) => {\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t\tconst passthrough = triggerProps as Record<string, any>;\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t{...passthrough}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\tsize=\"icon-xs\"\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'h-5 w-5 text-muted-foreground',\n\t\t\t\t\t\t\tpassthrough.className,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\taria-label={tooltipLabel}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Info className=\"size-3.5\" />\n\t\t\t\t\t</Button>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n\ninterface HeaderProps {\n\ticon?: ReactNode;\n\ttitle?: ReactNode;\n\ttitleSuffix?: ReactNode;\n\tdescription?: ReactNode;\n\ttooltip?: ReactNode;\n\ttooltipLabel: string;\n\theaderStart?: ReactNode;\n\theaderEnd?: ReactNode;\n\theaderAction?: ReactNode;\n\tactions?: SmartCardAction[];\n\tactionsLabel: string;\n\tpadding: CardPadding;\n\tclassName?: string;\n}\n\nexport function SmartCardHeaderRow({\n\ticon,\n\ttitle,\n\ttitleSuffix,\n\tdescription,\n\ttooltip,\n\ttooltipLabel,\n\theaderStart,\n\theaderEnd,\n\theaderAction,\n\tactions,\n\tactionsLabel,\n\tpadding,\n\tclassName,\n}: HeaderProps) {\n\tconst cardActions = Array.isArray(actions) ? actions : [];\n\tconst hasActions = cardActions.length > 0;\n\n\tconst hasIcon = hasRenderableContent(icon);\n\tconst hasTitle = hasRenderableContent(title);\n\tconst hasTitleSuffix = hasRenderableContent(titleSuffix);\n\tconst hasDescription = hasRenderableContent(description);\n\tconst hasTooltip = hasRenderableContent(tooltip);\n\tconst hasHeaderStart = hasRenderableContent(headerStart);\n\tconst hasHeaderEnd = hasRenderableContent(headerEnd);\n\tconst hasHeaderAction = hasRenderableContent(headerAction);\n\n\tconst showTitleRow = hasIcon || hasTitle || hasTitleSuffix || hasTooltip;\n\tconst showTrailing = hasHeaderEnd || hasHeaderAction || hasActions;\n\n\treturn (\n\t\t<CardHeader\n\t\t\tclassName={cn(\n\t\t\t\t'flex-row items-start justify-between gap-3 pb-0',\n\t\t\t\tPADDING[padding].headerX,\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div className=\"flex min-w-0 flex-1 flex-col gap-0.5\">\n\t\t\t\t{!!hasHeaderStart && headerStart}\n\n\t\t\t\t{!!showTitleRow && (\n\t\t\t\t\t<div className=\"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1\">\n\t\t\t\t\t\t{!!hasIcon && (\n\t\t\t\t\t\t\t<span className=\"flex shrink-0 items-center text-muted-foreground\">\n\t\t\t\t\t\t\t\t{icon}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<CardTitle>{title}</CardTitle>\n\t\t\t\t\t\t{!!hasTitleSuffix && (\n\t\t\t\t\t\t\t<div className=\"flex items-center gap-2\">{titleSuffix}</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!hasTooltip && (\n\t\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t\t<TooltipTrigger_Info tooltipLabel={tooltipLabel} />\n\t\t\t\t\t\t\t\t<TooltipContent>{tooltip}</TooltipContent>\n\t\t\t\t\t\t\t</Tooltip>\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{!!hasDescription && (\n\t\t\t\t\t<CardDescription className=\"text-left\">{description}</CardDescription>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{!!showTrailing && (\n\t\t\t\t<div className=\"flex shrink-0 items-center gap-2\">\n\t\t\t\t\t{!!hasHeaderEnd && headerEnd}\n\t\t\t\t\t{!!hasHeaderAction && headerAction}\n\t\t\t\t\t{!!hasActions && (\n\t\t\t\t\t\t<ActionsMenu actions={cardActions} actionsLabel={actionsLabel} />\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</CardHeader>\n\t);\n}\n","/**\n * SmartCard strings — i18n surface for the chrome the consumer doesn't\n * pass directly. Most copy (title, description, action labels, alert\n * body) flows in via props; the strings here cover the implicit\n * affordances (expand toggle).\n */\n\nexport interface SmartCardStrings {\n\texpandLabel: string;\n\tcollapseLabel: string;\n}\n\nexport const defaultSmartCardStrings: SmartCardStrings = {\n\texpandLabel: 'Expand card',\n\tcollapseLabel: 'Collapse card',\n};\n","/**\n * SmartCardSkeleton — placeholder shell rendered while a SmartCard's\n * data is loading. Picks up the canonical card surface so the loading\n * state visually matches the eventual `SmartCard` it'll replace.\n */\nimport type { ReactNode } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nimport { SURFACE_CLASSES } from '../smart-card.tokens';\n\nimport {\n\tCardContent,\n\tCardHeader,\n\tCardShell,\n\tCardTitle,\n} from './card-primitives';\n\nexport interface SmartCardSkeletonProps {\n\ttitle?: ReactNode;\n\tlines?: number;\n\tclassName?: string;\n}\n\nexport function SmartCardSkeleton({\n\ttitle,\n\tlines = 2,\n\tclassName,\n}: SmartCardSkeletonProps) {\n\tconst SkeletonBar = ({ barClassName }: { barClassName?: string }) => (\n\t\t<div className={cn('animate-pulse rounded bg-muted', barClassName)} />\n\t);\n\n\treturn (\n\t\t<CardShell className={cn(SURFACE_CLASSES.card, 'gap-4 py-6', className)}>\n\t\t\t<CardHeader className=\"flex-col gap-1.5 px-6 pb-0\">\n\t\t\t\t{title ? <CardTitle>{title}</CardTitle> : <SkeletonBar barClassName=\"h-4 w-32\" />}\n\t\t\t</CardHeader>\n\t\t\t<CardContent className=\"space-y-3 px-6 py-0\">\n\t\t\t\t{Array.from({ length: lines }, (_, i) => (\n\t\t\t\t\t<SkeletonBar\n\t\t\t\t\t\tkey={`skel-${String(i)}`}\n\t\t\t\t\t\tbarClassName={cn('h-4', i === 0 ? 'w-full' : 'w-3/4')}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</CardContent>\n\t\t</CardShell>\n\t);\n}\n\nSmartCardSkeleton.displayName = 'SmartCardSkeleton';\n","/**\n * SmartCard — composed card with header (icon, title, suffix, description,\n * tooltip), actions menu, alert banner, header / content / footer slots,\n * surface variants (card / flat / framed), and an opt-in expandable body.\n *\n * The single card primitive everything else builds on — never reach past it\n * to shadcn `Card` directly. The CardShell / CardHeader / CardTitle /\n * CardDescription / CardContent / CardFooter primitives are re-exported\n * for advanced composition (deeply customised layouts that still want the\n * design-system surface tokens). Each subregion paints a BEM-style hook\n * (`card--component`, `card--header`, `card--title`, …) for CSS / test /\n * analytics targeting independent of shadcn's data-slot internals.\n *\n * The file is a thin orchestrator. The actual chrome lives in:\n * - `./smart-card.types.ts` — public prop / variant types\n * - `./smart-card.strings.ts` — i18n (expand toggle copy)\n * - `./smart-card.tokens.ts` — PADDING + SURFACE_CLASSES + CARD_BEM\n * - `./partials/card-primitives.tsx` — CardShell + CardHeader / Title /\n * Description / Content / Footer\n * - `./partials/smart-card-header-row.tsx` — header layout + actions menu\n * - `./partials/smart-card-alert.tsx` — inline alert banner\n * - `./partials/smart-card-actions-menu.tsx` — `⋮` dropdown\n * - `./partials/smart-card-skeleton.tsx` — loading placeholder\n * - `./partials/has-renderable-content.ts` — slot-empty predicate\n */\nimport { ChevronDown } from 'lucide-react';\nimport {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseCallback,\n\tuseState,\n} from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { useStrings } from '@/lib/strings';\nimport { useCardConfig } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tCardContent,\n\tCardFooter,\n\tCardShell,\n} from './partials/card-primitives';\nimport { hasRenderableContent } from './partials/has-renderable-content';\nimport { SmartCardAlert } from './partials/smart-card-alert';\nimport { SmartCardHeaderRow } from './partials/smart-card-header-row';\nimport {\n\tdefaultSmartCardStrings,\n} from './smart-card.strings';\nimport {\n\tPADDING,\n\tSURFACE_CLASSES,\n} from './smart-card.tokens';\nimport type {\n\tCardPadding,\n\tSmartCardProps,\n\tSmartCardSurface,\n} from './smart-card.types';\n\nexport const SmartCard = forwardRef<HTMLDivElement, SmartCardProps>(function SmartCard({\n\ticon,\n\ttitle,\n\ttitleSuffix,\n\tdescription,\n\ttooltip,\n\ttooltipAriaLabel = 'Card info',\n\tfooterText,\n\talert,\n\talertVariant = 'default',\n\tsurface,\n\ttransparent = false,\n\tpadding,\n\tactions,\n\tactionsLabel = 'Card actions',\n\theaderAction,\n\theaderStart,\n\theaderEnd,\n\tcontentTop,\n\tcontentBottom,\n\tfooterSlot,\n\theaderDivider = false,\n\tfooterDivider = false,\n\texpandable = false,\n\tdefaultExpanded = false,\n\texpanded: expandedProp,\n\tonExpandedChange,\n\tchildren,\n\tclassName,\n\theaderClassName,\n\tcontentClassName,\n\tfooterClassName,\n\tstrings: stringsProp,\n}, ref) {\n\tconst { defaultPadding } = useCardConfig();\n\tconst resolvedPadding: CardPadding = padding ?? defaultPadding ?? 'sm';\n\tconst tokens = PADDING[resolvedPadding];\n\tconst cardActions = Array.isArray(actions) ? actions : [];\n\tconst strings = useStrings(defaultSmartCardStrings, stringsProp);\n\n\tconst isExpandable = expandable !== false && expandable !== undefined;\n\tconst collapsedMaxHeightRaw =\n\t\ttypeof expandable === 'object' && expandable?.collapsedMaxHeight !== undefined\n\t\t\t? expandable.collapsedMaxHeight\n\t\t\t: '12rem';\n\tconst collapsedMaxHeight =\n\t\ttypeof collapsedMaxHeightRaw === 'number'\n\t\t\t? `${collapsedMaxHeightRaw}px`\n\t\t\t: collapsedMaxHeightRaw;\n\n\tconst isExpandedControlled = expandedProp !== undefined;\n\tconst [internalExpanded, setInternalExpanded] = useState(defaultExpanded);\n\tconst expanded = isExpandedControlled ? expandedProp : internalExpanded;\n\tconst handleToggle = useCallback(() => {\n\t\tconst next = !expanded;\n\t\tif (!isExpandedControlled) setInternalExpanded(next);\n\t\tonExpandedChange?.(next);\n\t}, [expanded, isExpandedControlled, onExpandedChange]);\n\n\tconst hasHeader =\n\t\thasRenderableContent(icon) ||\n\t\thasRenderableContent(title) ||\n\t\thasRenderableContent(description) ||\n\t\tcardActions.length > 0 ||\n\t\thasRenderableContent(headerAction) ||\n\t\thasRenderableContent(headerStart) ||\n\t\thasRenderableContent(headerEnd);\n\n\tconst hasAlert = hasRenderableContent(alert);\n\tconst hasFooterText = hasRenderableContent(footerText);\n\tconst hasFooterSlot = hasRenderableContent(footerSlot);\n\tconst hasContentTop = hasRenderableContent(contentTop);\n\tconst hasContentBottom = hasRenderableContent(contentBottom);\n\n\tconst tooltipLabel =\n\t\ttooltipAriaLabel.trim().length > 0 ? tooltipAriaLabel : 'Card info';\n\n\tconst collapseStyle: CSSProperties | undefined = isExpandable\n\t\t? {\n\t\t\t\tmaxHeight: expanded ? '' : collapsedMaxHeight,\n\t\t\t}\n\t\t: undefined;\n\n\t// Resolve surface — explicit `surface` wins, else legacy `transparent`,\n\t// else the default `'card'` chrome.\n\tconst resolvedSurface: SmartCardSurface = surface ?? (transparent ? 'flat' : 'card');\n\n\treturn (\n\t\t<CardShell\n\t\t\tref={ref}\n\t\t\tdata-surface={resolvedSurface}\n\t\t\tclassName={cn(\n\t\t\t\tSURFACE_CLASSES[resolvedSurface],\n\t\t\t\ttokens.shell,\n\t\t\t\t// `isExpandable` parks the chevron at `-bottom-4` outside the\n\t\t\t\t// shell — `overflow-visible` lets it render past the card\n\t\t\t\t// edge, otherwise the shadcn primitive's `overflow-hidden`\n\t\t\t\t// clips it.\n\t\t\t\tisExpandable && 'relative pb-1 !overflow-visible',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{!!hasHeader && (\n\t\t\t\t<SmartCardHeaderRow\n\t\t\t\t\ticon={icon}\n\t\t\t\t\ttitle={title}\n\t\t\t\t\ttitleSuffix={titleSuffix}\n\t\t\t\t\tdescription={description}\n\t\t\t\t\ttooltip={tooltip}\n\t\t\t\t\ttooltipLabel={tooltipLabel}\n\t\t\t\t\theaderStart={headerStart}\n\t\t\t\t\theaderEnd={headerEnd}\n\t\t\t\t\theaderAction={headerAction}\n\t\t\t\t\tactions={cardActions}\n\t\t\t\t\tactionsLabel={actionsLabel}\n\t\t\t\t\tpadding={resolvedPadding}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\theaderDivider && 'pb-3 border-b border-border/60',\n\t\t\t\t\t\theaderClassName,\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t{!!hasAlert && (\n\t\t\t\t<SmartCardAlert\n\t\t\t\t\talert={alert}\n\t\t\t\t\talertVariant={alertVariant}\n\t\t\t\t\thasHeader={hasHeader}\n\t\t\t\t\tpadding={resolvedPadding}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t<CardContent\n\t\t\t\tclassName={cn(\n\t\t\t\t\ttokens.contentX,\n\t\t\t\t\ttokens.contentY,\n\t\t\t\t\tisExpandable &&\n\t\t\t\t\t\t'relative overflow-hidden transition-[max-height] duration-500 ease-in-out',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t\tstyle={collapseStyle}\n\t\t\t>\n\t\t\t\t{!!hasContentTop && contentTop}\n\t\t\t\t{children}\n\t\t\t\t{!!hasContentBottom && contentBottom}\n\n\t\t\t\t{!!isExpandable && !expanded && (\n\t\t\t\t\t<div\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName=\"from-background pointer-events-none absolute inset-x-0 bottom-0 h-20 rounded-b-lg bg-linear-to-t to-transparent\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</CardContent>\n\n\t\t\t{!!hasFooterText && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'justify-end text-xs text-muted-foreground',\n\t\t\t\t\t\ttokens.footerX,\n\t\t\t\t\t\tfooterDivider && 'pt-3 border-t border-border/60',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footerText}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\n\t\t\t{!!hasFooterSlot && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'flex-col items-stretch',\n\t\t\t\t\t\ttokens.footerX,\n\t\t\t\t\t\tfooterDivider && 'pt-3 border-t border-border/60',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footerSlot}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\n\t\t\t{!!isExpandable && (\n\t\t\t\t<div className=\"absolute -bottom-4 left-1/2 -translate-x-1/2 z-10\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"outline\"\n\t\t\t\t\t\tsize=\"icon-sm\"\n\t\t\t\t\t\tonClick={handleToggle}\n\t\t\t\t\t\taria-expanded={expanded}\n\t\t\t\t\t\taria-label={expanded ? strings.collapseLabel : strings.expandLabel}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'inline-flex size-8 items-center justify-center rounded-full',\n\t\t\t\t\t\t\t'border border-border bg-background text-foreground shadow-sm',\n\t\t\t\t\t\t\t'hover:bg-muted/40 transition-colors',\n\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50',\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronDown\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'size-4 transition-transform duration-300',\n\t\t\t\t\t\t\t\texpanded && 'rotate-180',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span className=\"sr-only\">\n\t\t\t\t\t\t\t{expanded ? strings.collapseLabel : strings.expandLabel}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</CardShell>\n\t);\n});\n\nSmartCard.displayName = 'SmartCard';\n\n// ──────────────────────────────────────────────────────────────────────────\n// Re-exports — public surface lives here so `import { ... } from\n// '@/components/base/cards'` keeps working through the file split.\n// ──────────────────────────────────────────────────────────────────────────\n\nexport {\n\tdefaultSmartCardStrings,\n\ttype SmartCardStrings,\n} from './smart-card.strings';\nexport type {\n\tCardAlertVariant,\n\tCardPadding,\n\tSmartCardAction,\n\tSmartCardProps,\n\tSmartCardSkeletonProps,\n\tSmartCardSurface,\n} from './smart-card.types';\nexport {\n\tCardContent,\n\tCardDescription,\n\tCardFooter,\n\tCardHeader,\n\tCardShell,\n\tCardTitle,\n} from './partials/card-primitives';\nexport { SmartCardSkeleton } from './partials/smart-card-skeleton';\n"],"mappings":"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"}
@@ -0,0 +1,361 @@
1
+ import { useStrings as e } from "../lib/strings.js";
2
+ import { r as t } from "./ui-provider-C8Ot88lS.js";
3
+ import { cn as n } from "../lib/utils.js";
4
+ import { t as r } from "./button-BGKY8UY0.js";
5
+ import { i, n as a, t as o } from "./tooltip-CLr_sPX8.js";
6
+ import { n as s } from "./heading-HeP06nXG.js";
7
+ import { r as c, t as l } from "./alert-k60OnTtb.js";
8
+ import { a as u, g as d, r as f, t as p } from "./dropdown-menu-CoWmrjYX.js";
9
+ import { Fragment as m, forwardRef as h, isValidElement as g, useCallback as _, useState as v } from "react";
10
+ import { jsx as y, jsxs as b } from "react/jsx-runtime";
11
+ import { ChevronDown as x, Info as S, MoreHorizontal as C } from "lucide-react";
12
+ //#region src/components/ui/card.tsx
13
+ function w({ className: e, size: t = "default", ...r }) {
14
+ return /* @__PURE__ */ y("div", {
15
+ "data-slot": "card",
16
+ "data-size": t,
17
+ className: n("ring-foreground/10 bg-card text-card-foreground gap-6 overflow-hidden rounded-xl py-6 text-sm shadow-xs ring-1 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl group/card flex flex-col", e),
18
+ ...r
19
+ });
20
+ }
21
+ function T({ className: e, ...t }) {
22
+ return /* @__PURE__ */ y("div", {
23
+ "data-slot": "card-header",
24
+ className: n("gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]", e),
25
+ ...t
26
+ });
27
+ }
28
+ function E({ className: e, ...t }) {
29
+ return /* @__PURE__ */ y("div", {
30
+ "data-slot": "card-title",
31
+ className: n("text-base leading-normal font-medium group-data-[size=sm]/card:text-sm", e),
32
+ ...t
33
+ });
34
+ }
35
+ function D({ className: e, ...t }) {
36
+ return /* @__PURE__ */ y("div", {
37
+ "data-slot": "card-description",
38
+ className: n("text-muted-foreground text-sm", e),
39
+ ...t
40
+ });
41
+ }
42
+ function O({ className: e, ...t }) {
43
+ return /* @__PURE__ */ y("div", {
44
+ "data-slot": "card-content",
45
+ className: n("px-6 group-data-[size=sm]/card:px-4", e),
46
+ ...t
47
+ });
48
+ }
49
+ function k({ className: e, ...t }) {
50
+ return /* @__PURE__ */ y("div", {
51
+ "data-slot": "card-footer",
52
+ className: n("rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4 flex items-center", e),
53
+ ...t
54
+ });
55
+ }
56
+ //#endregion
57
+ //#region src/components/base/cards/smart-card.tokens.ts
58
+ var A = {
59
+ root: "card--component",
60
+ header: "card--header",
61
+ title: "card--title",
62
+ description: "card--description",
63
+ content: "card--content",
64
+ footer: "card--footer",
65
+ alert: "card--alert"
66
+ }, j = {
67
+ sm: {
68
+ shell: "gap-3 py-4",
69
+ headerX: "px-4",
70
+ contentX: "px-4",
71
+ contentY: "py-0",
72
+ footerX: "px-4",
73
+ alertX: "px-4",
74
+ alertOffsetWithHeader: "-mt-1",
75
+ alertOffsetStandalone: "mt-0"
76
+ },
77
+ base: {
78
+ shell: "gap-4 py-6",
79
+ headerX: "px-6",
80
+ contentX: "px-6",
81
+ contentY: "py-0",
82
+ footerX: "px-6",
83
+ alertX: "px-6",
84
+ alertOffsetWithHeader: "-mt-1",
85
+ alertOffsetStandalone: "mt-0"
86
+ },
87
+ lg: {
88
+ shell: "gap-4 py-6",
89
+ headerX: "px-6",
90
+ contentX: "px-6",
91
+ contentY: "py-0",
92
+ footerX: "px-6",
93
+ alertX: "px-6",
94
+ alertOffsetWithHeader: "-mt-1",
95
+ alertOffsetStandalone: "mt-0"
96
+ }
97
+ }, M = {
98
+ card: "rounded-lg border border-border bg-card text-card-foreground shadow-xs",
99
+ flat: "bg-transparent text-card-foreground border-none shadow-none",
100
+ framed: n("relative bg-card text-card-foreground shadow-xs", "rounded-lg border-[3px] border-border/30", "before:pointer-events-none before:absolute before:inset-0 before:rounded-md before:border before:border-border/60 before:content-[\"\"]")
101
+ };
102
+ //#endregion
103
+ //#region src/components/base/cards/partials/has-renderable-content.ts
104
+ function N(e) {
105
+ return e == null || typeof e == "boolean" ? !1 : typeof e == "string" ? e.trim().length > 0 : typeof e == "number" || typeof e == "bigint" ? !0 : Array.isArray(e) ? e.some(N) : g(e) && e.type === m ? N(e.props.children) : !0;
106
+ }
107
+ //#endregion
108
+ //#region src/components/base/cards/partials/card-primitives.tsx
109
+ function P({ className: e, ...t }) {
110
+ return /* @__PURE__ */ y(w, {
111
+ className: n(A.root, "flex w-full flex-col gap-3 py-4 ring-0", e),
112
+ ...t
113
+ });
114
+ }
115
+ function F({ className: e, ...t }) {
116
+ return /* @__PURE__ */ y(T, {
117
+ className: n(A.header, "flex flex-col gap-0.5 px-4", e),
118
+ ...t
119
+ });
120
+ }
121
+ function I({ className: e, children: t, ...r }) {
122
+ return N(t) ? typeof t == "string" || typeof t == "number" || typeof t == "bigint" ? /* @__PURE__ */ y(s, {
123
+ "data-slot": "card-title",
124
+ tag: "div",
125
+ weight: "semibold",
126
+ lineHeight: "none",
127
+ className: n(A.title, "min-w-0 leading-none font-semibold", e),
128
+ ...r,
129
+ children: t
130
+ }) : /* @__PURE__ */ y(E, {
131
+ className: n(A.title, "min-w-0 leading-none font-semibold", e),
132
+ ...r,
133
+ children: t
134
+ }) : null;
135
+ }
136
+ function L({ className: e, children: t, ...r }) {
137
+ return N(t) ? typeof t == "string" || typeof t == "number" || typeof t == "bigint" ? /* @__PURE__ */ y(s, {
138
+ "data-slot": "card-description",
139
+ tag: "div",
140
+ type: "secondary",
141
+ className: n(A.description, "text-muted-foreground text-sm", e),
142
+ ...r,
143
+ children: t
144
+ }) : /* @__PURE__ */ y(D, {
145
+ className: n(A.description, "text-muted-foreground text-sm", e),
146
+ ...r,
147
+ children: t
148
+ }) : null;
149
+ }
150
+ function R({ className: e, ...t }) {
151
+ return /* @__PURE__ */ y(O, {
152
+ className: n(A.content, "px-4", e),
153
+ ...t
154
+ });
155
+ }
156
+ function z({ className: e, ...t }) {
157
+ return /* @__PURE__ */ y(k, {
158
+ className: n(A.footer, "flex items-center px-4", e),
159
+ ...t
160
+ });
161
+ }
162
+ //#endregion
163
+ //#region src/components/base/cards/partials/smart-card-alert.tsx
164
+ function ee({ alert: e, alertVariant: t, hasHeader: r, padding: i }) {
165
+ let a = j[i];
166
+ return /* @__PURE__ */ y("div", {
167
+ className: n(A.alert, a.alertX, r ? a.alertOffsetWithHeader : a.alertOffsetStandalone),
168
+ children: /* @__PURE__ */ y(l, {
169
+ variant: t,
170
+ children: /* @__PURE__ */ y(c, { children: e })
171
+ })
172
+ });
173
+ }
174
+ //#endregion
175
+ //#region src/components/base/cards/partials/smart-card-actions-menu.tsx
176
+ function B({ actions: e, actionsLabel: t }) {
177
+ return /* @__PURE__ */ b(p, { children: [/* @__PURE__ */ y(d, {
178
+ type: "button",
179
+ "aria-label": t,
180
+ className: n("inline-flex size-7 shrink-0 items-center justify-center rounded-md p-0", "text-muted-foreground hover:bg-accent hover:text-accent-foreground", "outline-none focus-visible:ring-2 focus-visible:ring-ring/50", "transition-colors"),
181
+ children: /* @__PURE__ */ y(C, { className: "size-4" })
182
+ }), /* @__PURE__ */ y(f, {
183
+ align: "end",
184
+ className: "min-w-[140px]",
185
+ children: e.map((e, t) => /* @__PURE__ */ b(u, {
186
+ onClick: e.onClick,
187
+ disabled: e.disabled,
188
+ className: "gap-1.5 px-2 py-1 text-xs",
189
+ children: [!!e.icon && /* @__PURE__ */ y("span", {
190
+ className: "flex shrink-0 items-center",
191
+ children: e.icon
192
+ }), e.label]
193
+ }, e.id ?? `${e.label}-${t}`))
194
+ })] });
195
+ }
196
+ //#endregion
197
+ //#region src/components/base/cards/partials/smart-card-header-row.tsx
198
+ function V({ tooltipLabel: e }) {
199
+ return /* @__PURE__ */ y(i, { render: (t) => {
200
+ let i = t;
201
+ return /* @__PURE__ */ y(r, {
202
+ ...i,
203
+ type: "button",
204
+ variant: "secondary",
205
+ buttonStyle: "ghost",
206
+ size: "icon-xs",
207
+ className: n("h-5 w-5 text-muted-foreground", i.className),
208
+ "aria-label": e,
209
+ children: /* @__PURE__ */ y(S, { className: "size-3.5" })
210
+ });
211
+ } });
212
+ }
213
+ function te({ icon: e, title: t, titleSuffix: r, description: i, tooltip: s, tooltipLabel: c, headerStart: l, headerEnd: u, headerAction: d, actions: f, actionsLabel: p, padding: m, className: h }) {
214
+ let g = Array.isArray(f) ? f : [], _ = g.length > 0, v = N(e), x = N(t), S = N(r), C = N(i), w = N(s), T = N(l), E = N(u), D = N(d), O = v || x || S || w, k = E || D || _;
215
+ return /* @__PURE__ */ b(F, {
216
+ className: n("flex-row items-start justify-between gap-3 pb-0", j[m].headerX, h),
217
+ children: [/* @__PURE__ */ b("div", {
218
+ className: "flex min-w-0 flex-1 flex-col gap-0.5",
219
+ children: [
220
+ !!T && l,
221
+ !!O && /* @__PURE__ */ b("div", {
222
+ className: "flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1",
223
+ children: [
224
+ !!v && /* @__PURE__ */ y("span", {
225
+ className: "flex shrink-0 items-center text-muted-foreground",
226
+ children: e
227
+ }),
228
+ /* @__PURE__ */ y(I, { children: t }),
229
+ !!S && /* @__PURE__ */ y("div", {
230
+ className: "flex items-center gap-2",
231
+ children: r
232
+ }),
233
+ !!w && /* @__PURE__ */ b(o, { children: [/* @__PURE__ */ y(V, { tooltipLabel: c }), /* @__PURE__ */ y(a, { children: s })] })
234
+ ]
235
+ }),
236
+ !!C && /* @__PURE__ */ y(L, {
237
+ className: "text-left",
238
+ children: i
239
+ })
240
+ ]
241
+ }), !!k && /* @__PURE__ */ b("div", {
242
+ className: "flex shrink-0 items-center gap-2",
243
+ children: [
244
+ !!E && u,
245
+ !!D && d,
246
+ !!_ && /* @__PURE__ */ y(B, {
247
+ actions: g,
248
+ actionsLabel: p
249
+ })
250
+ ]
251
+ })]
252
+ });
253
+ }
254
+ //#endregion
255
+ //#region src/components/base/cards/smart-card.strings.ts
256
+ var H = {
257
+ expandLabel: "Expand card",
258
+ collapseLabel: "Collapse card"
259
+ };
260
+ //#endregion
261
+ //#region src/components/base/cards/partials/smart-card-skeleton.tsx
262
+ function U({ title: e, lines: t = 2, className: r }) {
263
+ let i = ({ barClassName: e }) => /* @__PURE__ */ y("div", { className: n("animate-pulse rounded bg-muted", e) });
264
+ return /* @__PURE__ */ b(P, {
265
+ className: n(M.card, "gap-4 py-6", r),
266
+ children: [/* @__PURE__ */ y(F, {
267
+ className: "flex-col gap-1.5 px-6 pb-0",
268
+ children: e ? /* @__PURE__ */ y(I, { children: e }) : /* @__PURE__ */ y(i, { barClassName: "h-4 w-32" })
269
+ }), /* @__PURE__ */ y(R, {
270
+ className: "space-y-3 px-6 py-0",
271
+ children: Array.from({ length: t }, (e, t) => /* @__PURE__ */ y(i, { barClassName: n("h-4", t === 0 ? "w-full" : "w-3/4") }, `skel-${String(t)}`))
272
+ })]
273
+ });
274
+ }
275
+ U.displayName = "SmartCardSkeleton";
276
+ //#endregion
277
+ //#region src/components/base/cards/smart-card.tsx
278
+ var W = h(function({ icon: i, title: a, titleSuffix: o, description: s, tooltip: c, tooltipAriaLabel: l = "Card info", footerText: u, alert: d, alertVariant: f = "default", surface: p, transparent: m = !1, padding: h, actions: g, actionsLabel: S = "Card actions", headerAction: C, headerStart: w, headerEnd: T, contentTop: E, contentBottom: D, footerSlot: O, headerDivider: k = !1, footerDivider: A = !1, expandable: F = !1, defaultExpanded: I = !1, expanded: L, onExpandedChange: B, children: V, className: U, headerClassName: W, contentClassName: ne, footerClassName: G, strings: re }, ie) {
279
+ let { defaultPadding: ae } = t(), K = h ?? ae ?? "sm", q = j[K], J = Array.isArray(g) ? g : [], Y = e(H, re), X = F !== !1 && F !== void 0, Z = typeof F == "object" && F?.collapsedMaxHeight !== void 0 ? F.collapsedMaxHeight : "12rem", oe = typeof Z == "number" ? `${Z}px` : Z, Q = L !== void 0, [se, ce] = v(I), $ = Q ? L : se, le = _(() => {
280
+ let e = !$;
281
+ Q || ce(e), B?.(e);
282
+ }, [
283
+ $,
284
+ Q,
285
+ B
286
+ ]), ue = N(i) || N(a) || N(s) || J.length > 0 || N(C) || N(w) || N(T), de = N(d), fe = N(u), pe = N(O), me = N(E), he = N(D), ge = l.trim().length > 0 ? l : "Card info", _e = X ? { maxHeight: $ ? "" : oe } : void 0, ve = p ?? (m ? "flat" : "card");
287
+ return /* @__PURE__ */ b(P, {
288
+ ref: ie,
289
+ "data-surface": ve,
290
+ className: n(M[ve], q.shell, X && "relative pb-1 !overflow-visible", U),
291
+ children: [
292
+ !!ue && /* @__PURE__ */ y(te, {
293
+ icon: i,
294
+ title: a,
295
+ titleSuffix: o,
296
+ description: s,
297
+ tooltip: c,
298
+ tooltipLabel: ge,
299
+ headerStart: w,
300
+ headerEnd: T,
301
+ headerAction: C,
302
+ actions: J,
303
+ actionsLabel: S,
304
+ padding: K,
305
+ className: n(k && "pb-3 border-b border-border/60", W)
306
+ }),
307
+ !!de && /* @__PURE__ */ y(ee, {
308
+ alert: d,
309
+ alertVariant: f,
310
+ hasHeader: ue,
311
+ padding: K
312
+ }),
313
+ /* @__PURE__ */ b(R, {
314
+ className: n(q.contentX, q.contentY, X && "relative overflow-hidden transition-[max-height] duration-500 ease-in-out", ne),
315
+ style: _e,
316
+ children: [
317
+ !!me && E,
318
+ V,
319
+ !!he && D,
320
+ !!X && !$ && /* @__PURE__ */ y("div", {
321
+ "aria-hidden": "true",
322
+ className: "from-background pointer-events-none absolute inset-x-0 bottom-0 h-20 rounded-b-lg bg-linear-to-t to-transparent"
323
+ })
324
+ ]
325
+ }),
326
+ !!fe && /* @__PURE__ */ y(z, {
327
+ className: n("justify-end text-xs text-muted-foreground", q.footerX, A && "pt-3 border-t border-border/60", G),
328
+ children: u
329
+ }),
330
+ !!pe && /* @__PURE__ */ y(z, {
331
+ className: n("flex-col items-stretch", q.footerX, A && "pt-3 border-t border-border/60", G),
332
+ children: O
333
+ }),
334
+ !!X && /* @__PURE__ */ y("div", {
335
+ className: "absolute -bottom-4 left-1/2 -translate-x-1/2 z-10",
336
+ children: /* @__PURE__ */ b(r, {
337
+ type: "button",
338
+ variant: "secondary",
339
+ buttonStyle: "outline",
340
+ size: "icon-sm",
341
+ onClick: le,
342
+ "aria-expanded": $,
343
+ "aria-label": $ ? Y.collapseLabel : Y.expandLabel,
344
+ className: n("inline-flex size-8 items-center justify-center rounded-full", "border border-border bg-background text-foreground shadow-sm", "hover:bg-muted/40 transition-colors", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50"),
345
+ children: [/* @__PURE__ */ y(x, {
346
+ "aria-hidden": "true",
347
+ className: n("size-4 transition-transform duration-300", $ && "rotate-180")
348
+ }), /* @__PURE__ */ y("span", {
349
+ className: "sr-only",
350
+ children: $ ? Y.collapseLabel : Y.expandLabel
351
+ })]
352
+ })
353
+ })
354
+ ]
355
+ });
356
+ });
357
+ W.displayName = "SmartCard";
358
+ //#endregion
359
+ export { L as a, P as c, R as i, I as l, U as n, z as o, H as r, F as s, W as t };
360
+
361
+ //# sourceMappingURL=smart-card-thLb85Ih.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-card-thLb85Ih.js","names":[],"sources":["../../src/components/ui/card.tsx","../../src/components/base/cards/smart-card.tokens.ts","../../src/components/base/cards/partials/has-renderable-content.ts","../../src/components/base/cards/partials/card-primitives.tsx","../../src/components/base/cards/partials/smart-card-alert.tsx","../../src/components/base/cards/partials/smart-card-actions-menu.tsx","../../src/components/base/cards/partials/smart-card-header-row.tsx","../../src/components/base/cards/smart-card.strings.ts","../../src/components/base/cards/partials/smart-card-skeleton.tsx","../../src/components/base/cards/smart-card.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Card({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & { size?: \"default\" | \"sm\" }) {\n return (\n <div\n data-slot=\"card\"\n data-size={size}\n className={cn(\"ring-foreground/10 bg-card text-card-foreground gap-6 overflow-hidden rounded-xl py-6 text-sm shadow-xs ring-1 has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl group/card flex flex-col\", className)}\n {...props}\n />\n )\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n \"gap-1 rounded-t-xl px-6 group-data-[size=sm]/card:px-4 [.border-b]:pb-6 group-data-[size=sm]/card:[.border-b]:pb-4 group/card-header @container/card-header grid auto-rows-min items-start has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn(\"text-base leading-normal font-medium group-data-[size=sm]/card:text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n )\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n \"col-start-2 row-span-2 row-start-1 self-start justify-self-end\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn(\"px-6 group-data-[size=sm]/card:px-4\", className)}\n {...props}\n />\n )\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn(\"rounded-b-xl px-6 group-data-[size=sm]/card:px-4 [.border-t]:pt-6 group-data-[size=sm]/card:[.border-t]:pt-4 flex items-center\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n}\n","import { cn } from '@/lib/utils';\n\nimport type { CardPadding, SmartCardSurface } from './smart-card.types';\n\n/**\n * BEM-style hooks applied to every SmartCard subregion. Library\n * consumers can target them in CSS / tests / analytics without\n * relying on shadcn's data-slot attributes (which are framework\n * internals). Keep these names consistent — they are part of the\n * public DOM contract.\n */\nexport const CARD_BEM = {\n\troot: 'card--component',\n\theader: 'card--header',\n\ttitle: 'card--title',\n\tdescription: 'card--description',\n\tcontent: 'card--content',\n\tfooter: 'card--footer',\n\talert: 'card--alert',\n} as const;\n\ninterface PaddingTokens {\n\tshell: string;\n\theaderX: string;\n\tcontentX: string;\n\tcontentY: string;\n\tfooterX: string;\n\talertX: string;\n\t/** Vertical offset applied when alert sits BELOW the header (pulls it up). */\n\talertOffsetWithHeader: string;\n\t/** Vertical spacing applied when alert is the first content (no header). */\n\talertOffsetStandalone: string;\n}\n\nexport const PADDING: Record<CardPadding, PaddingTokens> = {\n\tsm: {\n\t\tshell: 'gap-3 py-4',\n\t\theaderX: 'px-4',\n\t\tcontentX: 'px-4',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-4',\n\t\talertX: 'px-4',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n\tbase: {\n\t\tshell: 'gap-4 py-6',\n\t\theaderX: 'px-6',\n\t\tcontentX: 'px-6',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-6',\n\t\talertX: 'px-6',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n\tlg: {\n\t\tshell: 'gap-4 py-6',\n\t\theaderX: 'px-6',\n\t\tcontentX: 'px-6',\n\t\tcontentY: 'py-0',\n\t\tfooterX: 'px-6',\n\t\talertX: 'px-6',\n\t\talertOffsetWithHeader: '-mt-1',\n\t\talertOffsetStandalone: 'mt-0',\n\t},\n};\n\n/**\n * Surface-specific shell classes. The `framed` variant uses a soft 3px\n * outer border tinted from `--border` plus a 1px hairline inner border\n * drawn via the `before:` pseudo-element. All values flow through theme\n * tokens — no raw hex.\n */\nexport const SURFACE_CLASSES: Record<SmartCardSurface, string> = {\n\tcard: 'rounded-lg border border-border bg-card text-card-foreground shadow-xs',\n\tflat: 'bg-transparent text-card-foreground border-none shadow-none',\n\tframed: cn(\n\t\t'relative bg-card text-card-foreground shadow-xs',\n\t\t// Outer soft border: 3px, low-alpha tint of theme border.\n\t\t'rounded-lg border-[3px] border-border/30',\n\t\t// Inner hairline border drawn inside the outer (matches the\n\t\t// border-thickness offset). Pure shadcn tokens (`border-border`\n\t\t// + `bg-card`) so it picks up the active theme.\n\t\t'before:pointer-events-none before:absolute before:inset-0 before:rounded-md before:border before:border-border/60 before:content-[\"\"]',\n\t),\n};\n","import { Fragment, isValidElement, type ReactNode } from 'react';\n\n/**\n * Predicate used by SmartCard subregions to decide whether each slot\n * warrants rendering its wrapper. Numbers (incl. `0`) and JSX always\n * render; falsy / empty-string content is treated as absent. Fragments\n * recurse into their children.\n */\nexport function hasRenderableContent(content?: ReactNode): boolean {\n\tif (content === null || content === undefined) return false;\n\tif (typeof content === 'boolean') return false;\n\tif (typeof content === 'string') return content.trim().length > 0;\n\tif (typeof content === 'number' || typeof content === 'bigint') return true;\n\tif (Array.isArray(content)) return content.some(hasRenderableContent);\n\tif (isValidElement<{ children?: ReactNode }>(content)) {\n\t\tif (content.type === Fragment) return hasRenderableContent(content.props.children);\n\t\treturn true;\n\t}\n\treturn true;\n}\n","/**\n * Internal layout primitives — re-exported from `smart-card.tsx` for\n * advanced composition (deeply customised layouts that still want the\n * design-system surface tokens). Each primitive is intentionally thin:\n * a single responsibility, a single set of default classes, no business\n * logic. The BEM hooks (`card--component`, `card--header`, etc.) are\n * applied here so the public DOM contract lives in one place.\n */\nimport {\n\ttype ComponentPropsWithRef,\n\ttype ComponentPropsWithoutRef,\n} from 'react';\n\nimport {\n\tCard as CardPrimitive,\n\tCardContent as CardContentPrimitive,\n\tCardDescription as CardDescriptionPrimitive,\n\tCardFooter as CardFooterPrimitive,\n\tCardHeader as CardHeaderPrimitive,\n\tCardTitle as CardTitlePrimitive,\n} from '@/components/ui/card';\nimport Text from '@/components/typography/text';\nimport { cn } from '@/lib/utils';\n\nimport { CARD_BEM } from '../smart-card.tokens';\n\nimport { hasRenderableContent } from './has-renderable-content';\n\nexport function CardShell({ className, ...props }: ComponentPropsWithRef<'div'>) {\n\treturn (\n\t\t<CardPrimitive\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.root,\n\t\t\t\t'flex w-full flex-col gap-3 py-4 ring-0',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardHeader({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardHeaderPrimitive\n\t\t\tclassName={cn(CARD_BEM.header, 'flex flex-col gap-0.5 px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardTitle({\n\tclassName,\n\tchildren,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\tif (!hasRenderableContent(children)) return null;\n\n\tconst isPlainText =\n\t\ttypeof children === 'string' ||\n\t\ttypeof children === 'number' ||\n\t\ttypeof children === 'bigint';\n\n\tif (!isPlainText) {\n\t\treturn (\n\t\t\t<CardTitlePrimitive\n\t\t\t\tclassName={cn(CARD_BEM.title, 'min-w-0 leading-none font-semibold', className)}\n\t\t\t\t{...props}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</CardTitlePrimitive>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Text\n\t\t\tdata-slot=\"card-title\"\n\t\t\ttag=\"div\"\n\t\t\tweight=\"semibold\"\n\t\t\tlineHeight=\"none\"\n\t\t\tclassName={cn(CARD_BEM.title, 'min-w-0 leading-none font-semibold', className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n}\n\nexport function CardDescription({\n\tclassName,\n\tchildren,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\tif (!hasRenderableContent(children)) return null;\n\n\tconst isPlainText =\n\t\ttypeof children === 'string' ||\n\t\ttypeof children === 'number' ||\n\t\ttypeof children === 'bigint';\n\n\tif (!isPlainText) {\n\t\treturn (\n\t\t\t<CardDescriptionPrimitive\n\t\t\t\tclassName={cn(\n\t\t\t\t\tCARD_BEM.description,\n\t\t\t\t\t'text-muted-foreground text-sm',\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{children}\n\t\t\t</CardDescriptionPrimitive>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Text\n\t\t\tdata-slot=\"card-description\"\n\t\t\ttag=\"div\"\n\t\t\ttype=\"secondary\"\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.description,\n\t\t\t\t'text-muted-foreground text-sm',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t</Text>\n\t);\n}\n\nexport function CardContent({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardContentPrimitive\n\t\t\tclassName={cn(CARD_BEM.content, 'px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport function CardFooter({\n\tclassName,\n\t...props\n}: ComponentPropsWithoutRef<'div'>) {\n\treturn (\n\t\t<CardFooterPrimitive\n\t\t\tclassName={cn(CARD_BEM.footer, 'flex items-center px-4', className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n","/**\n * Inline alert banner rendered between the header and the card body.\n * Pulls itself up under the header (`alertOffsetWithHeader`) when one\n * exists so the visual gap between header bottom and alert top stays\n * tight; otherwise pushes itself down (`alertOffsetStandalone`) so it\n * doesn't kiss the card top edge.\n */\nimport type { ReactNode } from 'react';\n\nimport { Alert, AlertDescription } from '@/components/base/display/alert';\nimport { cn } from '@/lib/utils';\n\nimport { CARD_BEM, PADDING } from '../smart-card.tokens';\nimport type { CardAlertVariant, CardPadding } from '../smart-card.types';\n\ninterface AlertSlotProps {\n\talert: ReactNode | string;\n\talertVariant: CardAlertVariant;\n\thasHeader: boolean;\n\tpadding: CardPadding;\n}\n\nexport function SmartCardAlert({\n\talert,\n\talertVariant,\n\thasHeader,\n\tpadding,\n}: AlertSlotProps) {\n\tconst tokens = PADDING[padding];\n\n\treturn (\n\t\t<div\n\t\t\tclassName={cn(\n\t\t\t\tCARD_BEM.alert,\n\t\t\t\ttokens.alertX,\n\t\t\t\thasHeader ? tokens.alertOffsetWithHeader : tokens.alertOffsetStandalone,\n\t\t\t)}\n\t\t>\n\t\t\t<Alert variant={alertVariant}>\n\t\t\t\t<AlertDescription>{alert}</AlertDescription>\n\t\t\t</Alert>\n\t\t</div>\n\t);\n}\n","/**\n * SmartCard actions menu — `⋮` trigger + dropdown of consumer-supplied\n * `SmartCardAction` items. Always renders a 28×28 square trigger so it\n * reads cleanly as a circle (consumer overrides to `rounded-full`) or\n * a rectangle (default `rounded-md`).\n */\nimport { MoreHorizontal } from 'lucide-react';\n\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuItem,\n\tDropdownMenuTrigger,\n} from '@/components/ui/dropdown-menu';\nimport { cn } from '@/lib/utils';\n\nimport type { SmartCardAction } from '../smart-card.types';\n\ninterface ActionsMenuProps {\n\tactions: SmartCardAction[];\n\tactionsLabel: string;\n}\n\nexport function ActionsMenu({ actions, actionsLabel }: ActionsMenuProps) {\n\treturn (\n\t\t<DropdownMenu>\n\t\t\t<DropdownMenuTrigger\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={actionsLabel}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t'inline-flex size-7 shrink-0 items-center justify-center rounded-md p-0',\n\t\t\t\t\t'text-muted-foreground hover:bg-accent hover:text-accent-foreground',\n\t\t\t\t\t'outline-none focus-visible:ring-2 focus-visible:ring-ring/50',\n\t\t\t\t\t'transition-colors',\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<MoreHorizontal className=\"size-4\" />\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent align=\"end\" className=\"min-w-[140px]\">\n\t\t\t\t{actions.map((action, index) => (\n\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\tkey={action.id ?? `${action.label}-${index}`}\n\t\t\t\t\t\tonClick={action.onClick}\n\t\t\t\t\t\tdisabled={action.disabled}\n\t\t\t\t\t\tclassName=\"gap-1.5 px-2 py-1 text-xs\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{!!action.icon && (\n\t\t\t\t\t\t\t<span className=\"flex shrink-0 items-center\">{action.icon}</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{action.label}\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t))}\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t);\n}\n","/**\n * SmartCardHeaderRow — the chrome above the card body. Combines icon /\n * title / description / tooltip / suffix on the leading side with the\n * trailing `headerEnd` / `headerAction` slots and the actions menu.\n *\n * `TooltipTrigger_Info` is colocated here because it's only used by the\n * header — keeping it private avoids polluting the public partial\n * surface.\n */\nimport { Info } from 'lucide-react';\nimport type { ReactNode } from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from '@/components/base/display/tooltip';\nimport { cn } from '@/lib/utils';\n\nimport { PADDING } from '../smart-card.tokens';\nimport type { CardPadding, SmartCardAction } from '../smart-card.types';\n\nimport { CardHeader, CardTitle, CardDescription } from './card-primitives';\nimport { hasRenderableContent } from './has-renderable-content';\nimport { ActionsMenu } from './smart-card-actions-menu';\n\nfunction TooltipTrigger_Info({ tooltipLabel }: { tooltipLabel: string }) {\n\treturn (\n\t\t<TooltipTrigger\n\t\t\trender={(triggerProps) => {\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t\t\tconst passthrough = triggerProps as Record<string, any>;\n\t\t\t\treturn (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t{...passthrough}\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"ghost\"\n\t\t\t\t\t\tsize=\"icon-xs\"\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'h-5 w-5 text-muted-foreground',\n\t\t\t\t\t\t\tpassthrough.className,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\taria-label={tooltipLabel}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Info className=\"size-3.5\" />\n\t\t\t\t\t</Button>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n\ninterface HeaderProps {\n\ticon?: ReactNode;\n\ttitle?: ReactNode;\n\ttitleSuffix?: ReactNode;\n\tdescription?: ReactNode;\n\ttooltip?: ReactNode;\n\ttooltipLabel: string;\n\theaderStart?: ReactNode;\n\theaderEnd?: ReactNode;\n\theaderAction?: ReactNode;\n\tactions?: SmartCardAction[];\n\tactionsLabel: string;\n\tpadding: CardPadding;\n\tclassName?: string;\n}\n\nexport function SmartCardHeaderRow({\n\ticon,\n\ttitle,\n\ttitleSuffix,\n\tdescription,\n\ttooltip,\n\ttooltipLabel,\n\theaderStart,\n\theaderEnd,\n\theaderAction,\n\tactions,\n\tactionsLabel,\n\tpadding,\n\tclassName,\n}: HeaderProps) {\n\tconst cardActions = Array.isArray(actions) ? actions : [];\n\tconst hasActions = cardActions.length > 0;\n\n\tconst hasIcon = hasRenderableContent(icon);\n\tconst hasTitle = hasRenderableContent(title);\n\tconst hasTitleSuffix = hasRenderableContent(titleSuffix);\n\tconst hasDescription = hasRenderableContent(description);\n\tconst hasTooltip = hasRenderableContent(tooltip);\n\tconst hasHeaderStart = hasRenderableContent(headerStart);\n\tconst hasHeaderEnd = hasRenderableContent(headerEnd);\n\tconst hasHeaderAction = hasRenderableContent(headerAction);\n\n\tconst showTitleRow = hasIcon || hasTitle || hasTitleSuffix || hasTooltip;\n\tconst showTrailing = hasHeaderEnd || hasHeaderAction || hasActions;\n\n\treturn (\n\t\t<CardHeader\n\t\t\tclassName={cn(\n\t\t\t\t'flex-row items-start justify-between gap-3 pb-0',\n\t\t\t\tPADDING[padding].headerX,\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t<div className=\"flex min-w-0 flex-1 flex-col gap-0.5\">\n\t\t\t\t{!!hasHeaderStart && headerStart}\n\n\t\t\t\t{!!showTitleRow && (\n\t\t\t\t\t<div className=\"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1\">\n\t\t\t\t\t\t{!!hasIcon && (\n\t\t\t\t\t\t\t<span className=\"flex shrink-0 items-center text-muted-foreground\">\n\t\t\t\t\t\t\t\t{icon}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<CardTitle>{title}</CardTitle>\n\t\t\t\t\t\t{!!hasTitleSuffix && (\n\t\t\t\t\t\t\t<div className=\"flex items-center gap-2\">{titleSuffix}</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{!!hasTooltip && (\n\t\t\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t\t\t<TooltipTrigger_Info tooltipLabel={tooltipLabel} />\n\t\t\t\t\t\t\t\t<TooltipContent>{tooltip}</TooltipContent>\n\t\t\t\t\t\t\t</Tooltip>\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{!!hasDescription && (\n\t\t\t\t\t<CardDescription className=\"text-left\">{description}</CardDescription>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t{!!showTrailing && (\n\t\t\t\t<div className=\"flex shrink-0 items-center gap-2\">\n\t\t\t\t\t{!!hasHeaderEnd && headerEnd}\n\t\t\t\t\t{!!hasHeaderAction && headerAction}\n\t\t\t\t\t{!!hasActions && (\n\t\t\t\t\t\t<ActionsMenu actions={cardActions} actionsLabel={actionsLabel} />\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</CardHeader>\n\t);\n}\n","/**\n * SmartCard strings — i18n surface for the chrome the consumer doesn't\n * pass directly. Most copy (title, description, action labels, alert\n * body) flows in via props; the strings here cover the implicit\n * affordances (expand toggle).\n */\n\nexport interface SmartCardStrings {\n\texpandLabel: string;\n\tcollapseLabel: string;\n}\n\nexport const defaultSmartCardStrings: SmartCardStrings = {\n\texpandLabel: 'Expand card',\n\tcollapseLabel: 'Collapse card',\n};\n","/**\n * SmartCardSkeleton — placeholder shell rendered while a SmartCard's\n * data is loading. Picks up the canonical card surface so the loading\n * state visually matches the eventual `SmartCard` it'll replace.\n */\nimport type { ReactNode } from 'react';\n\nimport { cn } from '@/lib/utils';\n\nimport { SURFACE_CLASSES } from '../smart-card.tokens';\n\nimport {\n\tCardContent,\n\tCardHeader,\n\tCardShell,\n\tCardTitle,\n} from './card-primitives';\n\nexport interface SmartCardSkeletonProps {\n\ttitle?: ReactNode;\n\tlines?: number;\n\tclassName?: string;\n}\n\nexport function SmartCardSkeleton({\n\ttitle,\n\tlines = 2,\n\tclassName,\n}: SmartCardSkeletonProps) {\n\tconst SkeletonBar = ({ barClassName }: { barClassName?: string }) => (\n\t\t<div className={cn('animate-pulse rounded bg-muted', barClassName)} />\n\t);\n\n\treturn (\n\t\t<CardShell className={cn(SURFACE_CLASSES.card, 'gap-4 py-6', className)}>\n\t\t\t<CardHeader className=\"flex-col gap-1.5 px-6 pb-0\">\n\t\t\t\t{title ? <CardTitle>{title}</CardTitle> : <SkeletonBar barClassName=\"h-4 w-32\" />}\n\t\t\t</CardHeader>\n\t\t\t<CardContent className=\"space-y-3 px-6 py-0\">\n\t\t\t\t{Array.from({ length: lines }, (_, i) => (\n\t\t\t\t\t<SkeletonBar\n\t\t\t\t\t\tkey={`skel-${String(i)}`}\n\t\t\t\t\t\tbarClassName={cn('h-4', i === 0 ? 'w-full' : 'w-3/4')}\n\t\t\t\t\t/>\n\t\t\t\t))}\n\t\t\t</CardContent>\n\t\t</CardShell>\n\t);\n}\n\nSmartCardSkeleton.displayName = 'SmartCardSkeleton';\n","/**\n * SmartCard — composed card with header (icon, title, suffix, description,\n * tooltip), actions menu, alert banner, header / content / footer slots,\n * surface variants (card / flat / framed), and an opt-in expandable body.\n *\n * The single card primitive everything else builds on — never reach past it\n * to shadcn `Card` directly. The CardShell / CardHeader / CardTitle /\n * CardDescription / CardContent / CardFooter primitives are re-exported\n * for advanced composition (deeply customised layouts that still want the\n * design-system surface tokens). Each subregion paints a BEM-style hook\n * (`card--component`, `card--header`, `card--title`, …) for CSS / test /\n * analytics targeting independent of shadcn's data-slot internals.\n *\n * The file is a thin orchestrator. The actual chrome lives in:\n * - `./smart-card.types.ts` — public prop / variant types\n * - `./smart-card.strings.ts` — i18n (expand toggle copy)\n * - `./smart-card.tokens.ts` — PADDING + SURFACE_CLASSES + CARD_BEM\n * - `./partials/card-primitives.tsx` — CardShell + CardHeader / Title /\n * Description / Content / Footer\n * - `./partials/smart-card-header-row.tsx` — header layout + actions menu\n * - `./partials/smart-card-alert.tsx` — inline alert banner\n * - `./partials/smart-card-actions-menu.tsx` — `⋮` dropdown\n * - `./partials/smart-card-skeleton.tsx` — loading placeholder\n * - `./partials/has-renderable-content.ts` — slot-empty predicate\n */\nimport { ChevronDown } from 'lucide-react';\nimport {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseCallback,\n\tuseState,\n} from 'react';\n\nimport { Button } from '@/components/base/buttons';\nimport { useStrings } from '@/lib/strings';\nimport { useCardConfig } from '@/lib/ui-provider';\nimport { cn } from '@/lib/utils';\n\nimport {\n\tCardContent,\n\tCardFooter,\n\tCardShell,\n} from './partials/card-primitives';\nimport { hasRenderableContent } from './partials/has-renderable-content';\nimport { SmartCardAlert } from './partials/smart-card-alert';\nimport { SmartCardHeaderRow } from './partials/smart-card-header-row';\nimport {\n\tdefaultSmartCardStrings,\n} from './smart-card.strings';\nimport {\n\tPADDING,\n\tSURFACE_CLASSES,\n} from './smart-card.tokens';\nimport type {\n\tCardPadding,\n\tSmartCardProps,\n\tSmartCardSurface,\n} from './smart-card.types';\n\nexport const SmartCard = forwardRef<HTMLDivElement, SmartCardProps>(function SmartCard({\n\ticon,\n\ttitle,\n\ttitleSuffix,\n\tdescription,\n\ttooltip,\n\ttooltipAriaLabel = 'Card info',\n\tfooterText,\n\talert,\n\talertVariant = 'default',\n\tsurface,\n\ttransparent = false,\n\tpadding,\n\tactions,\n\tactionsLabel = 'Card actions',\n\theaderAction,\n\theaderStart,\n\theaderEnd,\n\tcontentTop,\n\tcontentBottom,\n\tfooterSlot,\n\theaderDivider = false,\n\tfooterDivider = false,\n\texpandable = false,\n\tdefaultExpanded = false,\n\texpanded: expandedProp,\n\tonExpandedChange,\n\tchildren,\n\tclassName,\n\theaderClassName,\n\tcontentClassName,\n\tfooterClassName,\n\tstrings: stringsProp,\n}, ref) {\n\tconst { defaultPadding } = useCardConfig();\n\tconst resolvedPadding: CardPadding = padding ?? defaultPadding ?? 'sm';\n\tconst tokens = PADDING[resolvedPadding];\n\tconst cardActions = Array.isArray(actions) ? actions : [];\n\tconst strings = useStrings(defaultSmartCardStrings, stringsProp);\n\n\tconst isExpandable = expandable !== false && expandable !== undefined;\n\tconst collapsedMaxHeightRaw =\n\t\ttypeof expandable === 'object' && expandable?.collapsedMaxHeight !== undefined\n\t\t\t? expandable.collapsedMaxHeight\n\t\t\t: '12rem';\n\tconst collapsedMaxHeight =\n\t\ttypeof collapsedMaxHeightRaw === 'number'\n\t\t\t? `${collapsedMaxHeightRaw}px`\n\t\t\t: collapsedMaxHeightRaw;\n\n\tconst isExpandedControlled = expandedProp !== undefined;\n\tconst [internalExpanded, setInternalExpanded] = useState(defaultExpanded);\n\tconst expanded = isExpandedControlled ? expandedProp : internalExpanded;\n\tconst handleToggle = useCallback(() => {\n\t\tconst next = !expanded;\n\t\tif (!isExpandedControlled) setInternalExpanded(next);\n\t\tonExpandedChange?.(next);\n\t}, [expanded, isExpandedControlled, onExpandedChange]);\n\n\tconst hasHeader =\n\t\thasRenderableContent(icon) ||\n\t\thasRenderableContent(title) ||\n\t\thasRenderableContent(description) ||\n\t\tcardActions.length > 0 ||\n\t\thasRenderableContent(headerAction) ||\n\t\thasRenderableContent(headerStart) ||\n\t\thasRenderableContent(headerEnd);\n\n\tconst hasAlert = hasRenderableContent(alert);\n\tconst hasFooterText = hasRenderableContent(footerText);\n\tconst hasFooterSlot = hasRenderableContent(footerSlot);\n\tconst hasContentTop = hasRenderableContent(contentTop);\n\tconst hasContentBottom = hasRenderableContent(contentBottom);\n\n\tconst tooltipLabel =\n\t\ttooltipAriaLabel.trim().length > 0 ? tooltipAriaLabel : 'Card info';\n\n\tconst collapseStyle: CSSProperties | undefined = isExpandable\n\t\t? {\n\t\t\t\tmaxHeight: expanded ? '' : collapsedMaxHeight,\n\t\t\t}\n\t\t: undefined;\n\n\t// Resolve surface — explicit `surface` wins, else legacy `transparent`,\n\t// else the default `'card'` chrome.\n\tconst resolvedSurface: SmartCardSurface = surface ?? (transparent ? 'flat' : 'card');\n\n\treturn (\n\t\t<CardShell\n\t\t\tref={ref}\n\t\t\tdata-surface={resolvedSurface}\n\t\t\tclassName={cn(\n\t\t\t\tSURFACE_CLASSES[resolvedSurface],\n\t\t\t\ttokens.shell,\n\t\t\t\t// `isExpandable` parks the chevron at `-bottom-4` outside the\n\t\t\t\t// shell — `overflow-visible` lets it render past the card\n\t\t\t\t// edge, otherwise the shadcn primitive's `overflow-hidden`\n\t\t\t\t// clips it.\n\t\t\t\tisExpandable && 'relative pb-1 !overflow-visible',\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t>\n\t\t\t{!!hasHeader && (\n\t\t\t\t<SmartCardHeaderRow\n\t\t\t\t\ticon={icon}\n\t\t\t\t\ttitle={title}\n\t\t\t\t\ttitleSuffix={titleSuffix}\n\t\t\t\t\tdescription={description}\n\t\t\t\t\ttooltip={tooltip}\n\t\t\t\t\ttooltipLabel={tooltipLabel}\n\t\t\t\t\theaderStart={headerStart}\n\t\t\t\t\theaderEnd={headerEnd}\n\t\t\t\t\theaderAction={headerAction}\n\t\t\t\t\tactions={cardActions}\n\t\t\t\t\tactionsLabel={actionsLabel}\n\t\t\t\t\tpadding={resolvedPadding}\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\theaderDivider && 'pb-3 border-b border-border/60',\n\t\t\t\t\t\theaderClassName,\n\t\t\t\t\t)}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t{!!hasAlert && (\n\t\t\t\t<SmartCardAlert\n\t\t\t\t\talert={alert}\n\t\t\t\t\talertVariant={alertVariant}\n\t\t\t\t\thasHeader={hasHeader}\n\t\t\t\t\tpadding={resolvedPadding}\n\t\t\t\t/>\n\t\t\t)}\n\n\t\t\t<CardContent\n\t\t\t\tclassName={cn(\n\t\t\t\t\ttokens.contentX,\n\t\t\t\t\ttokens.contentY,\n\t\t\t\t\tisExpandable &&\n\t\t\t\t\t\t'relative overflow-hidden transition-[max-height] duration-500 ease-in-out',\n\t\t\t\t\tcontentClassName,\n\t\t\t\t)}\n\t\t\t\tstyle={collapseStyle}\n\t\t\t>\n\t\t\t\t{!!hasContentTop && contentTop}\n\t\t\t\t{children}\n\t\t\t\t{!!hasContentBottom && contentBottom}\n\n\t\t\t\t{!!isExpandable && !expanded && (\n\t\t\t\t\t<div\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName=\"from-background pointer-events-none absolute inset-x-0 bottom-0 h-20 rounded-b-lg bg-linear-to-t to-transparent\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</CardContent>\n\n\t\t\t{!!hasFooterText && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'justify-end text-xs text-muted-foreground',\n\t\t\t\t\t\ttokens.footerX,\n\t\t\t\t\t\tfooterDivider && 'pt-3 border-t border-border/60',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footerText}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\n\t\t\t{!!hasFooterSlot && (\n\t\t\t\t<CardFooter\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t'flex-col items-stretch',\n\t\t\t\t\t\ttokens.footerX,\n\t\t\t\t\t\tfooterDivider && 'pt-3 border-t border-border/60',\n\t\t\t\t\t\tfooterClassName,\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t{footerSlot}\n\t\t\t\t</CardFooter>\n\t\t\t)}\n\n\t\t\t{!!isExpandable && (\n\t\t\t\t<div className=\"absolute -bottom-4 left-1/2 -translate-x-1/2 z-10\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tbuttonStyle=\"outline\"\n\t\t\t\t\t\tsize=\"icon-sm\"\n\t\t\t\t\t\tonClick={handleToggle}\n\t\t\t\t\t\taria-expanded={expanded}\n\t\t\t\t\t\taria-label={expanded ? strings.collapseLabel : strings.expandLabel}\n\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t'inline-flex size-8 items-center justify-center rounded-full',\n\t\t\t\t\t\t\t'border border-border bg-background text-foreground shadow-sm',\n\t\t\t\t\t\t\t'hover:bg-muted/40 transition-colors',\n\t\t\t\t\t\t\t'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/50',\n\t\t\t\t\t\t)}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChevronDown\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'size-4 transition-transform duration-300',\n\t\t\t\t\t\t\t\texpanded && 'rotate-180',\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span className=\"sr-only\">\n\t\t\t\t\t\t\t{expanded ? strings.collapseLabel : strings.expandLabel}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</CardShell>\n\t);\n});\n\nSmartCard.displayName = 'SmartCard';\n\n// ──────────────────────────────────────────────────────────────────────────\n// Re-exports — public surface lives here so `import { ... } from\n// '@/components/base/cards'` keeps working through the file split.\n// ──────────────────────────────────────────────────────────────────────────\n\nexport {\n\tdefaultSmartCardStrings,\n\ttype SmartCardStrings,\n} from './smart-card.strings';\nexport type {\n\tCardAlertVariant,\n\tCardPadding,\n\tSmartCardAction,\n\tSmartCardProps,\n\tSmartCardSkeletonProps,\n\tSmartCardSurface,\n} from './smart-card.types';\nexport {\n\tCardContent,\n\tCardDescription,\n\tCardFooter,\n\tCardHeader,\n\tCardShell,\n\tCardTitle,\n} from './partials/card-primitives';\nexport { SmartCardSkeleton } from './partials/smart-card-skeleton';\n"],"mappings":"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"}