@psnext/design-system 1.2.0 → 1.2.1

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 (416) hide show
  1. package/dist/Header.cjs +2 -2
  2. package/dist/Header.cjs.map +1 -1
  3. package/dist/Header.js +2 -2
  4. package/dist/Header.js.map +1 -1
  5. package/dist/Icon.cjs +8 -8
  6. package/dist/Icon.cjs.map +1 -1
  7. package/dist/Icon.js +8 -8
  8. package/dist/Icon.js.map +1 -1
  9. package/dist/Logo.cjs +163 -137
  10. package/dist/Logo.cjs.map +1 -1
  11. package/dist/Logo.js +163 -137
  12. package/dist/Logo.js.map +1 -1
  13. package/dist/index.cjs +1 -1
  14. package/dist/index.d.cts +5 -5
  15. package/dist/index.d.ts +5 -5
  16. package/dist/index.js +1 -1
  17. package/dist/index10.d.cts +7 -7
  18. package/dist/index10.d.cts.map +1 -1
  19. package/dist/index10.d.ts +6 -6
  20. package/dist/index10.d.ts.map +1 -1
  21. package/dist/index11.d.cts +3 -3
  22. package/dist/index11.d.ts +3 -3
  23. package/dist/index11.d.ts.map +1 -1
  24. package/dist/index12.d.cts +12 -12
  25. package/dist/index12.d.ts +11 -11
  26. package/dist/index12.d.ts.map +1 -1
  27. package/dist/index13.d.cts +6 -6
  28. package/dist/index13.d.ts +6 -6
  29. package/dist/index13.d.ts.map +1 -1
  30. package/dist/index14.d.cts +5 -5
  31. package/dist/index14.d.ts +5 -5
  32. package/dist/index15.d.cts +3 -3
  33. package/dist/index15.d.cts.map +1 -1
  34. package/dist/index15.d.ts +3 -3
  35. package/dist/index15.d.ts.map +1 -1
  36. package/dist/index16.d.cts +2 -2
  37. package/dist/index16.d.cts.map +1 -1
  38. package/dist/index16.d.ts +2 -2
  39. package/dist/index16.d.ts.map +1 -1
  40. package/dist/index17.d.cts +4 -4
  41. package/dist/index17.d.cts.map +1 -1
  42. package/dist/index17.d.ts +4 -4
  43. package/dist/index17.d.ts.map +1 -1
  44. package/dist/index18.d.cts +11 -11
  45. package/dist/index18.d.cts.map +1 -1
  46. package/dist/index18.d.ts +11 -11
  47. package/dist/index18.d.ts.map +1 -1
  48. package/dist/index19.d.cts +10 -10
  49. package/dist/index19.d.ts +10 -10
  50. package/dist/index2.d.cts +8 -8
  51. package/dist/index2.d.cts.map +1 -1
  52. package/dist/index2.d.ts +8 -8
  53. package/dist/index20.d.cts +16 -16
  54. package/dist/index20.d.ts +16 -16
  55. package/dist/index20.d.ts.map +1 -1
  56. package/dist/index21.d.cts +4 -4
  57. package/dist/index21.d.ts +4 -4
  58. package/dist/index21.d.ts.map +1 -1
  59. package/dist/index22.d.cts +11 -11
  60. package/dist/index22.d.cts.map +1 -1
  61. package/dist/index22.d.ts +11 -11
  62. package/dist/index23.d.cts +16 -16
  63. package/dist/index23.d.ts +16 -16
  64. package/dist/index24.d.cts +10 -10
  65. package/dist/index24.d.ts +10 -10
  66. package/dist/index25.d.cts +2 -2
  67. package/dist/index25.d.cts.map +1 -1
  68. package/dist/index25.d.ts +2 -2
  69. package/dist/index26.d.cts +14 -14
  70. package/dist/index26.d.cts.map +1 -1
  71. package/dist/index26.d.ts +11 -11
  72. package/dist/index27.d.cts +7 -7
  73. package/dist/index27.d.cts.map +1 -1
  74. package/dist/index27.d.ts +7 -7
  75. package/dist/index28.d.cts +4 -4
  76. package/dist/index28.d.ts +6 -6
  77. package/dist/index28.d.ts.map +1 -1
  78. package/dist/index29.d.cts +4 -4
  79. package/dist/index29.d.cts.map +1 -1
  80. package/dist/index29.d.ts +4 -4
  81. package/dist/index3.d.cts +13 -13
  82. package/dist/index3.d.cts.map +1 -1
  83. package/dist/index3.d.ts +13 -13
  84. package/dist/index3.d.ts.map +1 -1
  85. package/dist/index30.d.cts +6 -6
  86. package/dist/index30.d.cts.map +1 -1
  87. package/dist/index30.d.ts +5 -5
  88. package/dist/index30.d.ts.map +1 -1
  89. package/dist/index31.d.cts +5 -5
  90. package/dist/index31.d.ts +5 -5
  91. package/dist/index31.d.ts.map +1 -1
  92. package/dist/index32.d.cts +6 -6
  93. package/dist/index32.d.ts +3 -3
  94. package/dist/index33.d.cts +10 -10
  95. package/dist/index33.d.cts.map +1 -1
  96. package/dist/index33.d.ts +10 -10
  97. package/dist/index33.d.ts.map +1 -1
  98. package/dist/index34.d.cts +5 -5
  99. package/dist/index34.d.cts.map +1 -1
  100. package/dist/index34.d.ts +5 -5
  101. package/dist/index35.d.cts +16 -16
  102. package/dist/index35.d.cts.map +1 -1
  103. package/dist/index35.d.ts +14 -14
  104. package/dist/index35.d.ts.map +1 -1
  105. package/dist/index36.d.cts +3 -3
  106. package/dist/index36.d.ts +3 -3
  107. package/dist/index37.d.cts +4 -4
  108. package/dist/index37.d.cts.map +1 -1
  109. package/dist/index37.d.ts +5 -5
  110. package/dist/index37.d.ts.map +1 -1
  111. package/dist/index38.d.cts +2 -2
  112. package/dist/index38.d.ts +2 -2
  113. package/dist/index39.d.cts +17 -17
  114. package/dist/index39.d.ts +17 -17
  115. package/dist/index4.d.cts +2 -2
  116. package/dist/index4.d.cts.map +1 -1
  117. package/dist/index4.d.ts +2 -2
  118. package/dist/index40.d.cts +5 -5
  119. package/dist/index40.d.cts.map +1 -1
  120. package/dist/index40.d.ts +4 -4
  121. package/dist/index41.d.cts +11 -11
  122. package/dist/index41.d.ts +11 -11
  123. package/dist/index42.d.cts +8 -8
  124. package/dist/index42.d.ts +8 -8
  125. package/dist/index42.d.ts.map +1 -1
  126. package/dist/index43.d.cts +9 -9
  127. package/dist/index43.d.cts.map +1 -1
  128. package/dist/index43.d.ts +9 -9
  129. package/dist/index44.d.cts +8 -8
  130. package/dist/index44.d.cts.map +1 -1
  131. package/dist/index44.d.ts +8 -8
  132. package/dist/index44.d.ts.map +1 -1
  133. package/dist/index45.d.cts +2 -2
  134. package/dist/index45.d.cts.map +1 -1
  135. package/dist/index45.d.ts +2 -2
  136. package/dist/index45.d.ts.map +1 -1
  137. package/dist/index46.d.cts +4 -4
  138. package/dist/index46.d.ts +4 -4
  139. package/dist/index46.d.ts.map +1 -1
  140. package/dist/index47.d.cts +4 -4
  141. package/dist/index47.d.cts.map +1 -1
  142. package/dist/index47.d.ts +4 -4
  143. package/dist/index47.d.ts.map +1 -1
  144. package/dist/index48.d.cts +3 -3
  145. package/dist/index48.d.ts +3 -3
  146. package/dist/index49.d.cts +11 -11
  147. package/dist/index49.d.cts.map +1 -1
  148. package/dist/index49.d.ts +11 -11
  149. package/dist/index5.d.cts +7 -7
  150. package/dist/index5.d.cts.map +1 -1
  151. package/dist/index5.d.ts +7 -7
  152. package/dist/index5.d.ts.map +1 -1
  153. package/dist/index50.d.cts +9 -9
  154. package/dist/index50.d.ts +9 -9
  155. package/dist/index50.d.ts.map +1 -1
  156. package/dist/index51.d.cts +5 -5
  157. package/dist/index51.d.ts +5 -5
  158. package/dist/index52.d.cts +27 -27
  159. package/dist/index52.d.cts.map +1 -1
  160. package/dist/index52.d.ts +26 -26
  161. package/dist/index53.d.cts +5 -5
  162. package/dist/index53.d.ts +5 -5
  163. package/dist/index53.d.ts.map +1 -1
  164. package/dist/index54.d.cts +2 -2
  165. package/dist/index54.d.ts +2 -2
  166. package/dist/index55.d.cts +2 -2
  167. package/dist/index55.d.ts +2 -2
  168. package/dist/index55.d.ts.map +1 -1
  169. package/dist/index56.d.cts +2 -2
  170. package/dist/index56.d.ts +2 -2
  171. package/dist/index57.d.cts +4 -4
  172. package/dist/index57.d.ts +4 -4
  173. package/dist/index58.d.cts +9 -9
  174. package/dist/index58.d.ts +9 -9
  175. package/dist/index59.d.cts +11 -11
  176. package/dist/index59.d.cts.map +1 -1
  177. package/dist/index59.d.ts +9 -9
  178. package/dist/index6.d.cts +5 -5
  179. package/dist/index6.d.cts.map +1 -1
  180. package/dist/index6.d.ts +5 -5
  181. package/dist/index6.d.ts.map +1 -1
  182. package/dist/index60.d.cts +5 -5
  183. package/dist/index60.d.cts.map +1 -1
  184. package/dist/index60.d.ts +6 -6
  185. package/dist/index60.d.ts.map +1 -1
  186. package/dist/index61.d.cts +4 -4
  187. package/dist/index61.d.cts.map +1 -1
  188. package/dist/index61.d.ts +4 -4
  189. package/dist/index62.d.cts +2 -2
  190. package/dist/index62.d.ts +2 -2
  191. package/dist/index63.d.cts +6 -6
  192. package/dist/index63.d.ts +5 -5
  193. package/dist/index63.d.ts.map +1 -1
  194. package/dist/index64.d.cts +3 -3
  195. package/dist/index64.d.ts +3 -3
  196. package/dist/index65.d.cts +4 -4
  197. package/dist/index65.d.cts.map +1 -1
  198. package/dist/index65.d.ts +4 -4
  199. package/dist/index65.d.ts.map +1 -1
  200. package/dist/index66.d.cts +2 -2
  201. package/dist/index66.d.ts +2 -2
  202. package/dist/index67.d.cts +8 -8
  203. package/dist/index67.d.cts.map +1 -1
  204. package/dist/index67.d.ts +6 -6
  205. package/dist/index67.d.ts.map +1 -1
  206. package/dist/index68.d.cts +7 -7
  207. package/dist/index68.d.ts +6 -6
  208. package/dist/index68.d.ts.map +1 -1
  209. package/dist/index7.d.cts +8 -8
  210. package/dist/index7.d.ts +8 -8
  211. package/dist/index7.d.ts.map +1 -1
  212. package/dist/index70.d.cts +8 -8
  213. package/dist/index70.d.ts +8 -8
  214. package/dist/index8.d.cts +4 -4
  215. package/dist/index8.d.ts +2 -2
  216. package/dist/index9.d.cts +2 -2
  217. package/dist/index9.d.ts +2 -2
  218. package/dist/layouts/Container/index.cjs +1 -1
  219. package/dist/layouts/Container/index.cjs.map +1 -1
  220. package/dist/layouts/Container/index.js +1 -1
  221. package/dist/layouts/Container/index.js.map +1 -1
  222. package/dist/layouts/PageBackground/index.cjs +1 -1
  223. package/dist/layouts/PageBackground/index.cjs.map +1 -1
  224. package/dist/layouts/PageBackground/index.js +1 -1
  225. package/dist/layouts/PageBackground/index.js.map +1 -1
  226. package/dist/patterns/DataTable/index.d.cts +3 -3
  227. package/dist/patterns/DataTable/index.d.ts +3 -3
  228. package/dist/patterns/Footer/index.cjs +1 -1
  229. package/dist/patterns/Footer/index.cjs.map +1 -1
  230. package/dist/patterns/Footer/index.d.cts +8 -8
  231. package/dist/patterns/Footer/index.d.cts.map +1 -1
  232. package/dist/patterns/Footer/index.d.ts +8 -8
  233. package/dist/patterns/Footer/index.d.ts.map +1 -1
  234. package/dist/patterns/Footer/index.js +1 -1
  235. package/dist/patterns/Footer/index.js.map +1 -1
  236. package/dist/patterns/MediaObject/index.d.cts +11 -11
  237. package/dist/patterns/MediaObject/index.d.ts +11 -11
  238. package/dist/patterns/SectionCard/index.d.cts +2 -2
  239. package/dist/patterns/SectionCard/index.d.ts +2 -2
  240. package/dist/patterns/SectionHeading/index.d.cts +2 -2
  241. package/dist/patterns/SectionHeading/index.d.ts +2 -2
  242. package/dist/primitives/Accordion/index.cjs +1 -1
  243. package/dist/primitives/Accordion/index.cjs.map +1 -1
  244. package/dist/primitives/Accordion/index.js +1 -1
  245. package/dist/primitives/Accordion/index.js.map +1 -1
  246. package/dist/primitives/Alert/index.cjs +2 -2
  247. package/dist/primitives/Alert/index.cjs.map +1 -1
  248. package/dist/primitives/Alert/index.js +2 -2
  249. package/dist/primitives/Alert/index.js.map +1 -1
  250. package/dist/primitives/AlertDialog/index.cjs +2 -2
  251. package/dist/primitives/AlertDialog/index.cjs.map +1 -1
  252. package/dist/primitives/AlertDialog/index.js +2 -2
  253. package/dist/primitives/AlertDialog/index.js.map +1 -1
  254. package/dist/primitives/Avatar/index.cjs +2 -2
  255. package/dist/primitives/Avatar/index.cjs.map +1 -1
  256. package/dist/primitives/Avatar/index.js +2 -2
  257. package/dist/primitives/Avatar/index.js.map +1 -1
  258. package/dist/primitives/Badge/index.cjs +4 -4
  259. package/dist/primitives/Badge/index.cjs.map +1 -1
  260. package/dist/primitives/Badge/index.js +4 -4
  261. package/dist/primitives/Badge/index.js.map +1 -1
  262. package/dist/primitives/Button/index.cjs +5 -5
  263. package/dist/primitives/Button/index.cjs.map +1 -1
  264. package/dist/primitives/Button/index.js +5 -5
  265. package/dist/primitives/Button/index.js.map +1 -1
  266. package/dist/primitives/ButtonGroup/index.cjs +2 -2
  267. package/dist/primitives/ButtonGroup/index.cjs.map +1 -1
  268. package/dist/primitives/ButtonGroup/index.js +2 -2
  269. package/dist/primitives/ButtonGroup/index.js.map +1 -1
  270. package/dist/primitives/Calendar/index.cjs +1 -1
  271. package/dist/primitives/Calendar/index.cjs.map +1 -1
  272. package/dist/primitives/Calendar/index.js +1 -1
  273. package/dist/primitives/Calendar/index.js.map +1 -1
  274. package/dist/primitives/Card/index.cjs +4 -4
  275. package/dist/primitives/Card/index.cjs.map +1 -1
  276. package/dist/primitives/Card/index.js +4 -4
  277. package/dist/primitives/Card/index.js.map +1 -1
  278. package/dist/primitives/Chart/index.cjs +1 -1
  279. package/dist/primitives/Chart/index.cjs.map +1 -1
  280. package/dist/primitives/Chart/index.js +1 -1
  281. package/dist/primitives/Chart/index.js.map +1 -1
  282. package/dist/primitives/Checkbox/index.cjs +1 -1
  283. package/dist/primitives/Checkbox/index.cjs.map +1 -1
  284. package/dist/primitives/Checkbox/index.js +1 -1
  285. package/dist/primitives/Checkbox/index.js.map +1 -1
  286. package/dist/primitives/Command/index.cjs +1 -1
  287. package/dist/primitives/Command/index.cjs.map +1 -1
  288. package/dist/primitives/Command/index.js +1 -1
  289. package/dist/primitives/Command/index.js.map +1 -1
  290. package/dist/primitives/ContextMenu/index.cjs +1 -1
  291. package/dist/primitives/ContextMenu/index.cjs.map +1 -1
  292. package/dist/primitives/ContextMenu/index.js +1 -1
  293. package/dist/primitives/ContextMenu/index.js.map +1 -1
  294. package/dist/primitives/Credits/index.cjs +1 -1
  295. package/dist/primitives/Credits/index.cjs.map +1 -1
  296. package/dist/primitives/Credits/index.js +1 -1
  297. package/dist/primitives/Credits/index.js.map +1 -1
  298. package/dist/primitives/Dialog/index.cjs +2 -2
  299. package/dist/primitives/Dialog/index.cjs.map +1 -1
  300. package/dist/primitives/Dialog/index.js +2 -2
  301. package/dist/primitives/Dialog/index.js.map +1 -1
  302. package/dist/primitives/Drawer/index.cjs +1 -1
  303. package/dist/primitives/Drawer/index.cjs.map +1 -1
  304. package/dist/primitives/Drawer/index.js +1 -1
  305. package/dist/primitives/Drawer/index.js.map +1 -1
  306. package/dist/primitives/DropdownMenu/index.cjs +1 -1
  307. package/dist/primitives/DropdownMenu/index.cjs.map +1 -1
  308. package/dist/primitives/DropdownMenu/index.js +1 -1
  309. package/dist/primitives/DropdownMenu/index.js.map +1 -1
  310. package/dist/primitives/Field/index.cjs +1 -1
  311. package/dist/primitives/Field/index.cjs.map +1 -1
  312. package/dist/primitives/Field/index.js +1 -1
  313. package/dist/primitives/Field/index.js.map +1 -1
  314. package/dist/primitives/HoverCard/index.cjs +1 -1
  315. package/dist/primitives/HoverCard/index.cjs.map +1 -1
  316. package/dist/primitives/HoverCard/index.js +1 -1
  317. package/dist/primitives/HoverCard/index.js.map +1 -1
  318. package/dist/primitives/Input/index.cjs +4 -4
  319. package/dist/primitives/Input/index.cjs.map +1 -1
  320. package/dist/primitives/Input/index.js +4 -4
  321. package/dist/primitives/Input/index.js.map +1 -1
  322. package/dist/primitives/InputGroup/index.cjs +6 -6
  323. package/dist/primitives/InputGroup/index.cjs.map +1 -1
  324. package/dist/primitives/InputGroup/index.js +6 -6
  325. package/dist/primitives/InputGroup/index.js.map +1 -1
  326. package/dist/primitives/InputOtp/index.cjs +1 -1
  327. package/dist/primitives/InputOtp/index.cjs.map +1 -1
  328. package/dist/primitives/InputOtp/index.js +1 -1
  329. package/dist/primitives/InputOtp/index.js.map +1 -1
  330. package/dist/primitives/Item/index.cjs +2 -2
  331. package/dist/primitives/Item/index.cjs.map +1 -1
  332. package/dist/primitives/Item/index.js +2 -2
  333. package/dist/primitives/Item/index.js.map +1 -1
  334. package/dist/primitives/Kbd/index.cjs +1 -1
  335. package/dist/primitives/Kbd/index.cjs.map +1 -1
  336. package/dist/primitives/Kbd/index.js +1 -1
  337. package/dist/primitives/Kbd/index.js.map +1 -1
  338. package/dist/primitives/Menubar/index.cjs +1 -1
  339. package/dist/primitives/Menubar/index.cjs.map +1 -1
  340. package/dist/primitives/Menubar/index.js +1 -1
  341. package/dist/primitives/Menubar/index.js.map +1 -1
  342. package/dist/primitives/NativeSelect/index.cjs +1 -1
  343. package/dist/primitives/NativeSelect/index.cjs.map +1 -1
  344. package/dist/primitives/NativeSelect/index.js +1 -1
  345. package/dist/primitives/NativeSelect/index.js.map +1 -1
  346. package/dist/primitives/NavRail/index.cjs +2 -2
  347. package/dist/primitives/NavRail/index.cjs.map +1 -1
  348. package/dist/primitives/NavRail/index.js +2 -2
  349. package/dist/primitives/NavRail/index.js.map +1 -1
  350. package/dist/primitives/NavigationMenu/index.cjs +1 -1
  351. package/dist/primitives/NavigationMenu/index.cjs.map +1 -1
  352. package/dist/primitives/NavigationMenu/index.js +1 -1
  353. package/dist/primitives/NavigationMenu/index.js.map +1 -1
  354. package/dist/primitives/Popover/index.cjs +1 -1
  355. package/dist/primitives/Popover/index.cjs.map +1 -1
  356. package/dist/primitives/Popover/index.js +1 -1
  357. package/dist/primitives/Popover/index.js.map +1 -1
  358. package/dist/primitives/Progress/index.cjs +1 -1
  359. package/dist/primitives/Progress/index.cjs.map +1 -1
  360. package/dist/primitives/Progress/index.js +1 -1
  361. package/dist/primitives/Progress/index.js.map +1 -1
  362. package/dist/primitives/RadioGroup/index.cjs +1 -1
  363. package/dist/primitives/RadioGroup/index.cjs.map +1 -1
  364. package/dist/primitives/RadioGroup/index.js +1 -1
  365. package/dist/primitives/RadioGroup/index.js.map +1 -1
  366. package/dist/primitives/ScrollArea/index.cjs +1 -1
  367. package/dist/primitives/ScrollArea/index.cjs.map +1 -1
  368. package/dist/primitives/ScrollArea/index.js +1 -1
  369. package/dist/primitives/ScrollArea/index.js.map +1 -1
  370. package/dist/primitives/Select/index.cjs +1 -1
  371. package/dist/primitives/Select/index.cjs.map +1 -1
  372. package/dist/primitives/Select/index.js +1 -1
  373. package/dist/primitives/Select/index.js.map +1 -1
  374. package/dist/primitives/Skeleton/index.cjs +2 -2
  375. package/dist/primitives/Skeleton/index.cjs.map +1 -1
  376. package/dist/primitives/Skeleton/index.js +2 -2
  377. package/dist/primitives/Skeleton/index.js.map +1 -1
  378. package/dist/primitives/Slider/index.cjs +1 -1
  379. package/dist/primitives/Slider/index.cjs.map +1 -1
  380. package/dist/primitives/Slider/index.js +1 -1
  381. package/dist/primitives/Slider/index.js.map +1 -1
  382. package/dist/primitives/Sonner/index.cjs +1 -1
  383. package/dist/primitives/Sonner/index.cjs.map +1 -1
  384. package/dist/primitives/Sonner/index.js +1 -1
  385. package/dist/primitives/Sonner/index.js.map +1 -1
  386. package/dist/primitives/Switch/index.cjs +3 -3
  387. package/dist/primitives/Switch/index.cjs.map +1 -1
  388. package/dist/primitives/Switch/index.js +3 -3
  389. package/dist/primitives/Switch/index.js.map +1 -1
  390. package/dist/primitives/Table/index.cjs +3 -3
  391. package/dist/primitives/Table/index.cjs.map +1 -1
  392. package/dist/primitives/Table/index.js +3 -3
  393. package/dist/primitives/Table/index.js.map +1 -1
  394. package/dist/primitives/Tabs/index.cjs +4 -4
  395. package/dist/primitives/Tabs/index.cjs.map +1 -1
  396. package/dist/primitives/Tabs/index.js +4 -4
  397. package/dist/primitives/Tabs/index.js.map +1 -1
  398. package/dist/primitives/Textarea/index.cjs +2 -2
  399. package/dist/primitives/Textarea/index.cjs.map +1 -1
  400. package/dist/primitives/Textarea/index.js +2 -2
  401. package/dist/primitives/Textarea/index.js.map +1 -1
  402. package/dist/primitives/Toggle/index.cjs +2 -2
  403. package/dist/primitives/Toggle/index.cjs.map +1 -1
  404. package/dist/primitives/Toggle/index.js +2 -2
  405. package/dist/primitives/Toggle/index.js.map +1 -1
  406. package/dist/primitives/Tooltip/index.cjs +2 -2
  407. package/dist/primitives/Tooltip/index.cjs.map +1 -1
  408. package/dist/primitives/Tooltip/index.js +2 -2
  409. package/dist/primitives/Tooltip/index.js.map +1 -1
  410. package/dist/primitives/index.cjs +1 -1
  411. package/dist/primitives/index.js +1 -1
  412. package/dist/styles/semantic.css +23 -12
  413. package/dist/styles/theme.css +32 -1
  414. package/dist/styles/tokens/border-radius.css +2 -1
  415. package/dist/styles/tokens/mode-dark.css +1 -1
  416. package/package.json +7 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/layouts/PageBackground/PageBackground.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n// PageBackground — ambient gradient backdrop that sits behind the app and makes\n// glass surfaces read. Composes a radial gradient from the theme-aware\n// `--page-gradient-mid` / `--page-gradient-edge` tokens (the middle stop is the\n// active brand tint; see styles/semantic.css), so it changes with\n// `.theme-slingshot` / `.theme-bodhi` / `.theme-sustain` and light/dark.\n// The gradient is built here (a real property) rather than as a composite token\n// so the vars resolve in this element's theme scope. Decorative (aria-hidden).\n//\n// By default it's `fixed` behind the page (the app body must be transparent);\n// set `fixed={false}` to fill a positioned parent instead.\nconst PAGE_GRADIENT =\n \"radial-gradient(circle at 90% 10%, var(--page-gradient-edge) 0%, var(--page-gradient-mid) 25%, var(--page-gradient-edge) 60%)\";\n\n/** Props for {@link PageBackground}; extends the native `div` props. */\ntype PageBackgroundProps = React.ComponentProps<\"div\"> & {\n /** Fixed to the viewport (default) vs absolute-fill of a positioned parent. */\n fixed?: boolean;\n};\n\n/** Ambient, theme-aware radial-gradient backdrop that sits behind the app so glass surfaces read. */\nfunction PageBackground({ fixed = true, className, style, ...props }: PageBackgroundProps) {\n return (\n <div\n data-slot=\"page-background\"\n aria-hidden\n // Neutral fallback color under the gradient so it's never fully empty.\n className={cn(\n \"pointer-events-none inset-0 bg-slate-200 dark:bg-slate-950\",\n fixed ? \"fixed -z-10\" : \"absolute\",\n className,\n )}\n style={{ backgroundImage: PAGE_GRADIENT, ...style }}\n {...props}\n />\n );\n}\n\nexport { PageBackground, type PageBackgroundProps };\n"],"mappings":";;;AAcA,MAAM,gBACJ;;AASF,SAAS,eAAe,EAAE,QAAQ,MAAM,WAAW,OAAO,GAAG,SAA8B;CACzF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,eAAA;EAEA,WAAW,GACT,8DACA,QAAQ,gBAAgB,YACxB,SACF;EACA,OAAO;GAAE,iBAAiB;GAAe,GAAG;EAAM;EAClD,GAAI;CACL,CAAA;AAEL"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/layouts/PageBackground/PageBackground.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n// PageBackground — ambient gradient backdrop that sits behind the app and makes\n// glass surfaces read. Composes a radial gradient from the theme-aware\n// `--page-gradient-mid` / `--page-gradient-edge` tokens (the middle stop is the\n// active brand tint; see styles/semantic.css), so it changes with\n// `.theme-slingshot` / `.theme-bodhi` / `.theme-sustain` and light/dark.\n// The gradient is built here (a real property) rather than as a composite token\n// so the vars resolve in this element's theme scope. Decorative (aria-hidden).\n//\n// By default it's `fixed` behind the page (the app body must be transparent);\n// set `fixed={false}` to fill a positioned parent instead.\nconst PAGE_GRADIENT =\n \"radial-gradient(circle at 90% 10%, var(--page-gradient-edge) 0%, var(--page-gradient-mid) 25%, var(--page-gradient-edge) 60%)\";\n\n/** Props for {@link PageBackground}; extends the native `div` props. */\ntype PageBackgroundProps = React.ComponentProps<\"div\"> & {\n /** Fixed to the viewport (default) vs absolute-fill of a positioned parent. */\n fixed?: boolean;\n};\n\n/** Ambient, theme-aware radial-gradient backdrop that sits behind the app so glass surfaces read. */\nfunction PageBackground({ fixed = true, className, style, ...props }: PageBackgroundProps) {\n return (\n <div\n data-slot=\"page-background\"\n aria-hidden\n // Neutral fallback color under the gradient so it's never fully empty.\n className={cn(\n \"pointer-events-none inset-0 bg-page-gradient-edge\",\n fixed ? \"fixed -z-10\" : \"absolute\",\n className,\n )}\n style={{ backgroundImage: PAGE_GRADIENT, ...style }}\n {...props}\n />\n );\n}\n\nexport { PageBackground, type PageBackgroundProps };\n"],"mappings":";;;AAcA,MAAM,gBACJ;;AASF,SAAS,eAAe,EAAE,QAAQ,MAAM,WAAW,OAAO,GAAG,SAA8B;CACzF,OACE,oBAAC,OAAD;EACE,aAAU;EACV,eAAA;EAEA,WAAW,GACT,qDACA,QAAQ,gBAAgB,YACxB,SACF;EACA,OAAO;GAAE,iBAAiB;GAAe,GAAG;EAAM;EAClD,GAAI;CACL,CAAA;AAEL"}
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime188 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime231 from "react/jsx-runtime";
2
2
  import { Column, ColumnDef } from "@tanstack/react-table";
3
3
 
4
4
  //#region src/patterns/DataTable/DataTable.d.ts
@@ -24,7 +24,7 @@ declare function DataTable<TData, TValue>({
24
24
  striped,
25
25
  enablePagination,
26
26
  pageSize
27
- }: DataTableProps<TData, TValue>): react_jsx_runtime188.JSX.Element;
27
+ }: DataTableProps<TData, TValue>): react_jsx_runtime231.JSX.Element;
28
28
  /** Sortable column header — drop into a column's `header` to get click-to-sort. */
29
29
  declare function DataTableColumnHeader<TData, TValue>({
30
30
  column,
@@ -37,7 +37,7 @@ declare function DataTableColumnHeader<TData, TValue>({
37
37
  title: string;
38
38
  /** Optional class applied to the header button (or span when unsortable). */
39
39
  className?: string;
40
- }): react_jsx_runtime188.JSX.Element;
40
+ }): react_jsx_runtime231.JSX.Element;
41
41
  //#endregion
42
42
  export { type ColumnDef, DataTable, DataTableColumnHeader };
43
43
  //# sourceMappingURL=index.d.cts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime306 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime142 from "react/jsx-runtime";
2
2
  import { Column, ColumnDef } from "@tanstack/react-table";
3
3
 
4
4
  //#region src/patterns/DataTable/DataTable.d.ts
@@ -24,7 +24,7 @@ declare function DataTable<TData, TValue>({
24
24
  striped,
25
25
  enablePagination,
26
26
  pageSize
27
- }: DataTableProps<TData, TValue>): react_jsx_runtime306.JSX.Element;
27
+ }: DataTableProps<TData, TValue>): react_jsx_runtime142.JSX.Element;
28
28
  /** Sortable column header — drop into a column's `header` to get click-to-sort. */
29
29
  declare function DataTableColumnHeader<TData, TValue>({
30
30
  column,
@@ -37,7 +37,7 @@ declare function DataTableColumnHeader<TData, TValue>({
37
37
  title: string;
38
38
  /** Optional class applied to the header button (or span when unsortable). */
39
39
  className?: string;
40
- }): react_jsx_runtime306.JSX.Element;
40
+ }): react_jsx_runtime142.JSX.Element;
41
41
  //#endregion
42
42
  export { type ColumnDef, DataTable, DataTableColumnHeader };
43
43
  //# sourceMappingURL=index.d.ts.map
@@ -6,7 +6,7 @@ let react_jsx_runtime = require("react/jsx-runtime");
6
6
  const footerBackgrounds = {
7
7
  none: "",
8
8
  muted: "bg-muted",
9
- glass: "bg-[var(--glass-light)] backdrop-blur-[var(--glass-blur)]"
9
+ glass: "bg-[var(--glass-light)] backdrop-blur-glass"
10
10
  };
11
11
  /** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */
12
12
  function Footer({ className, bordered = false, background = "none", ...props }) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["cn","Text"],"sources":["../../../src/patterns/Footer/Footer.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { Text } from \"@/primitives/Text\";\nimport { cn } from \"@/utils\";\n\n// Footer — app chrome shown at the bottom of a page. A responsive three-region\n// row: the regions stack centered on mobile and spread to start / center / end\n// on md+ (a grid, so the centre region stays centred regardless of the side\n// widths). Compose content from Text / Link / Logo; the helpers below cover the\n// common pieces (a \"Powered by\" lockup and a link separator).\n//\n// <Footer>\n// <FooterStart><Text size=\"mini\" variant=\"muted\">v2.6.0</Text></FooterStart>\n// <FooterCenter>\n// <FooterPoweredBy><Logo brand=\"slingshot\" variant=\"icon\" className=\"size-5\" /></FooterPoweredBy>\n// </FooterCenter>\n// <FooterEnd>\n// <Link href=\"/tnc\" underline=\"hover\">T&C</Link>\n// <FooterSeparator />\n// <Link href=\"/privacy\" underline=\"hover\">Privacy</Link>\n// </FooterEnd>\n// </Footer>\n\n// Surface fills. `glass` is a translucent, backdrop-blurred panel (same --glass-*\n// tokens as Card/Container) — reads over a textured page background.\nconst footerBackgrounds = {\n none: \"\",\n muted: \"bg-muted\",\n glass: \"bg-[var(--glass-light)] backdrop-blur-[var(--glass-blur)]\",\n} as const;\n\n/** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */\nfunction Footer({\n className,\n bordered = false,\n background = \"none\",\n ...props\n}: React.ComponentProps<\"footer\"> & {\n /** Add a subtle top border separating the footer from page content. */\n bordered?: boolean;\n /** Surface fill. `glass` is a translucent, blurred panel over the page background. */\n background?: keyof typeof footerBackgrounds;\n}) {\n return (\n <footer\n data-slot=\"footer\"\n data-background={background}\n className={cn(\n // Footer content is small by default (matches the version text); links and\n // other unstyled children inherit this. Explicitly-sized <Text> is unaffected.\n \"grid w-full grid-cols-1 gap-3 px-4 py-3 text-center md:grid-cols-3 md:items-center md:px-6\",\n \"text-[length:var(--paragraph-mini-font-size)] leading-[var(--paragraph-mini-line-height)]\",\n footerBackgrounds[background],\n bordered && \"border-t border-border\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Leading region — left-aligned on md+ (e.g. an app version). */\nfunction FooterStart({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-start\"\n className={cn(\n \"flex items-center justify-center gap-2 md:justify-self-start md:text-left\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Centre region — always centred (e.g. a \"Powered by\" lockup). */\nfunction FooterCenter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-center\"\n className={cn(\"flex items-center justify-center gap-2 md:justify-self-center\", className)}\n {...props}\n />\n );\n}\n\n/** Trailing region — right-aligned on md+ (e.g. legal links). Wraps on small screens. */\nfunction FooterEnd({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-end\"\n className={cn(\n \"flex flex-wrap items-center justify-center gap-2 md:justify-end md:justify-self-end md:text-right\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** \"Powered by\" lockup — the label plus a slot for the brand mark (a <Logo />). */\nfunction FooterPoweredBy({\n className,\n label = \"Powered by\",\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n /** Override the default \"Powered by\" label. */\n label?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"footer-powered-by\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n >\n <Text as=\"span\" size=\"small\" variant=\"muted\">\n {label}\n </Text>\n {children}\n </div>\n );\n}\n\n/** Visual divider between trailing links. */\nfunction FooterSeparator({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"footer-separator\"\n aria-hidden=\"true\"\n className={cn(\"select-none text-border\", className)}\n {...props}\n >\n |\n </span>\n );\n}\n\nexport { Footer, FooterStart, FooterCenter, FooterEnd, FooterPoweredBy, FooterSeparator };\n"],"mappings":";;;;;AAyBA,MAAM,oBAAoB;CACxB,MAAM;CACN,OAAO;CACP,OAAO;AACT;;AAGA,SAAS,OAAO,EACd,WACA,WAAW,OACX,aAAa,QACb,GAAG,SAMF;CACD,OACE,iBAAA,GAAA,kBAAA,KAAC,UAAD;EACE,aAAU;EACV,mBAAiB;EACjB,WAAWA,WAAAA,GAGT,8FACA,6FACA,kBAAkB,aAClB,YAAY,0BACZ,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;CACzE,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,6EACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;CAC1E,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,iEAAiE,SAAS;EACxF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;CACvE,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,qGACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,gBAAgB,EACvB,WACA,QAAQ,cACR,UACA,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,2BAA2B,SAAS;EAClD,GAAI;YAHN,CAKE,iBAAA,GAAA,kBAAA,KAACC,8BAAAA,MAAD;GAAM,IAAG;GAAO,MAAK;GAAQ,SAAQ;aAClC;EACG,CAAA,GACL,QACE;;AAET;;AAGA,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAuC;CAC9E,OACE,iBAAA,GAAA,kBAAA,KAAC,QAAD;EACE,aAAU;EACV,eAAY;EACZ,WAAWD,WAAAA,GAAG,2BAA2B,SAAS;EAClD,GAAI;YACL;CAEK,CAAA;AAEV"}
1
+ {"version":3,"file":"index.cjs","names":["cn","Text"],"sources":["../../../src/patterns/Footer/Footer.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { Text } from \"@/primitives/Text\";\nimport { cn } from \"@/utils\";\n\n// Footer — app chrome shown at the bottom of a page. A responsive three-region\n// row: the regions stack centered on mobile and spread to start / center / end\n// on md+ (a grid, so the centre region stays centred regardless of the side\n// widths). Compose content from Text / Link / Logo; the helpers below cover the\n// common pieces (a \"Powered by\" lockup and a link separator).\n//\n// <Footer>\n// <FooterStart><Text size=\"mini\" variant=\"muted\">v2.6.0</Text></FooterStart>\n// <FooterCenter>\n// <FooterPoweredBy><Logo brand=\"slingshot\" variant=\"icon\" className=\"size-5\" /></FooterPoweredBy>\n// </FooterCenter>\n// <FooterEnd>\n// <Link href=\"/tnc\" underline=\"hover\">T&C</Link>\n// <FooterSeparator />\n// <Link href=\"/privacy\" underline=\"hover\">Privacy</Link>\n// </FooterEnd>\n// </Footer>\n\n// Surface fills. `glass` is a translucent, backdrop-blurred panel (same --glass-*\n// tokens as Card/Container) — reads over a textured page background.\nconst footerBackgrounds = {\n none: \"\",\n muted: \"bg-muted\",\n glass: \"bg-[var(--glass-light)] backdrop-blur-glass\",\n} as const;\n\n/** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */\nfunction Footer({\n className,\n bordered = false,\n background = \"none\",\n ...props\n}: React.ComponentProps<\"footer\"> & {\n /** Add a subtle top border separating the footer from page content. */\n bordered?: boolean;\n /** Surface fill. `glass` is a translucent, blurred panel over the page background. */\n background?: keyof typeof footerBackgrounds;\n}) {\n return (\n <footer\n data-slot=\"footer\"\n data-background={background}\n className={cn(\n // Footer content is small by default (matches the version text); links and\n // other unstyled children inherit this. Explicitly-sized <Text> is unaffected.\n \"grid w-full grid-cols-1 gap-3 px-4 py-3 text-center md:grid-cols-3 md:items-center md:px-6\",\n \"text-[length:var(--paragraph-mini-font-size)] leading-[var(--paragraph-mini-line-height)]\",\n footerBackgrounds[background],\n bordered && \"border-t border-border\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Leading region — left-aligned on md+ (e.g. an app version). */\nfunction FooterStart({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-start\"\n className={cn(\n \"flex items-center justify-center gap-2 md:justify-self-start md:text-left\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Centre region — always centred (e.g. a \"Powered by\" lockup). */\nfunction FooterCenter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-center\"\n className={cn(\"flex items-center justify-center gap-2 md:justify-self-center\", className)}\n {...props}\n />\n );\n}\n\n/** Trailing region — right-aligned on md+ (e.g. legal links). Wraps on small screens. */\nfunction FooterEnd({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-end\"\n className={cn(\n \"flex flex-wrap items-center justify-center gap-2 md:justify-end md:justify-self-end md:text-right\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** \"Powered by\" lockup — the label plus a slot for the brand mark (a <Logo />). */\nfunction FooterPoweredBy({\n className,\n label = \"Powered by\",\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n /** Override the default \"Powered by\" label. */\n label?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"footer-powered-by\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n >\n <Text as=\"span\" size=\"small\" variant=\"muted\">\n {label}\n </Text>\n {children}\n </div>\n );\n}\n\n/** Visual divider between trailing links. */\nfunction FooterSeparator({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"footer-separator\"\n aria-hidden=\"true\"\n className={cn(\"select-none text-border\", className)}\n {...props}\n >\n |\n </span>\n );\n}\n\nexport { Footer, FooterStart, FooterCenter, FooterEnd, FooterPoweredBy, FooterSeparator };\n"],"mappings":";;;;;AAyBA,MAAM,oBAAoB;CACxB,MAAM;CACN,OAAO;CACP,OAAO;AACT;;AAGA,SAAS,OAAO,EACd,WACA,WAAW,OACX,aAAa,QACb,GAAG,SAMF;CACD,OACE,iBAAA,GAAA,kBAAA,KAAC,UAAD;EACE,aAAU;EACV,mBAAiB;EACjB,WAAWA,WAAAA,GAGT,8FACA,6FACA,kBAAkB,aAClB,YAAY,0BACZ,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;CACzE,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,6EACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;CAC1E,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,iEAAiE,SAAS;EACxF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;CACvE,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,qGACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,gBAAgB,EACvB,WACA,QAAQ,cACR,UACA,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,2BAA2B,SAAS;EAClD,GAAI;YAHN,CAKE,iBAAA,GAAA,kBAAA,KAACC,8BAAAA,MAAD;GAAM,IAAG;GAAO,MAAK;GAAQ,SAAQ;aAClC;EACG,CAAA,GACL,QACE;;AAET;;AAGA,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAuC;CAC9E,OACE,iBAAA,GAAA,kBAAA,KAAC,QAAD;EACE,aAAU;EACV,eAAY;EACZ,WAAWD,WAAAA,GAAG,2BAA2B,SAAS;EAClD,GAAI;YACL;CAEK,CAAA;AAEV"}
@@ -1,11 +1,11 @@
1
- import * as react_jsx_runtime224 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime182 from "react/jsx-runtime";
2
2
  import * as React from "react";
3
3
 
4
4
  //#region src/patterns/Footer/Footer.d.ts
5
5
  declare const footerBackgrounds: {
6
6
  readonly none: "";
7
7
  readonly muted: "bg-muted";
8
- readonly glass: "bg-[var(--glass-light)] backdrop-blur-[var(--glass-blur)]";
8
+ readonly glass: "bg-[var(--glass-light)] backdrop-blur-glass";
9
9
  };
10
10
  /** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */
11
11
  declare function Footer({
@@ -18,22 +18,22 @@ declare function Footer({
18
18
  bordered?: boolean;
19
19
  /** Surface fill. `glass` is a translucent, blurred panel over the page background. */
20
20
  background?: keyof typeof footerBackgrounds;
21
- }): react_jsx_runtime224.JSX.Element;
21
+ }): react_jsx_runtime182.JSX.Element;
22
22
  /** Leading region — left-aligned on md+ (e.g. an app version). */
23
23
  declare function FooterStart({
24
24
  className,
25
25
  ...props
26
- }: React.ComponentProps<"div">): react_jsx_runtime224.JSX.Element;
26
+ }: React.ComponentProps<"div">): react_jsx_runtime182.JSX.Element;
27
27
  /** Centre region — always centred (e.g. a "Powered by" lockup). */
28
28
  declare function FooterCenter({
29
29
  className,
30
30
  ...props
31
- }: React.ComponentProps<"div">): react_jsx_runtime224.JSX.Element;
31
+ }: React.ComponentProps<"div">): react_jsx_runtime182.JSX.Element;
32
32
  /** Trailing region — right-aligned on md+ (e.g. legal links). Wraps on small screens. */
33
33
  declare function FooterEnd({
34
34
  className,
35
35
  ...props
36
- }: React.ComponentProps<"div">): react_jsx_runtime224.JSX.Element;
36
+ }: React.ComponentProps<"div">): react_jsx_runtime182.JSX.Element;
37
37
  /** "Powered by" lockup — the label plus a slot for the brand mark (a <Logo />). */
38
38
  declare function FooterPoweredBy({
39
39
  className,
@@ -43,12 +43,12 @@ declare function FooterPoweredBy({
43
43
  }: React.ComponentProps<"div"> & {
44
44
  /** Override the default "Powered by" label. */
45
45
  label?: React.ReactNode;
46
- }): react_jsx_runtime224.JSX.Element;
46
+ }): react_jsx_runtime182.JSX.Element;
47
47
  /** Visual divider between trailing links. */
48
48
  declare function FooterSeparator({
49
49
  className,
50
50
  ...props
51
- }: React.ComponentProps<"span">): react_jsx_runtime224.JSX.Element;
51
+ }: React.ComponentProps<"span">): react_jsx_runtime182.JSX.Element;
52
52
  //#endregion
53
53
  export { Footer, FooterCenter, FooterEnd, FooterPoweredBy, FooterSeparator, FooterStart };
54
54
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/patterns/Footer/Footer.tsx"],"mappings":";;;;cAyBM;;;EAAA,SAAA,KAAA,EAAA,2DAII;AAAA,CAAA;;iBAGD,MAAA,CACP;EAAA,SAAA;EAAA,QAAA;EAAA,UAAA;EAAA,GAAA;CAAA,EAIC,KAAA,CAAM,cAJP,CAAA,QAAA,CAAA,GAAA;;UAEA,CAAA,EAAA,OAAA;;YAM0B,CAAA,EAAA,MAAA,OAAA,iBAAA;IAC3B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA;AAAA,iBAoBQ,WAAA,CAAW;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAA0B,KAAA,CAAM,cAAhC,CAAA,KAAA,CAAA,CAAA,EAAqD,oBAAA,CAAA,GAAA,CAAA,OAArD;;iBAcX,YAAA,CAdc;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAcwB,KAAA,CAAM,cAd9B,CAAA,KAAA,CAAA,CAAA,EAcmD,oBAAA,CAAA,GAAA,CAAA,OAdnD;;iBAyBd,SAAA,CAzBgE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAyB7B,KAAA,CAAM,cAzBuB,CAAA,KAAA,CAAA,CAAA,EAyBF,oBAAA,CAAA,GAAA,CAAA,OAzBE;AAAA;AAAA,iBAuChE,eAAA,CAzBY;EAAA,SAAA;EAAA,KAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EA8BlB,KAAA,CAAM,cA9BY,CAAA,KAAA,CAAA,GAAA;EAAA;OAAG,CAAA,EAgCd,KAAA,CAAM,SAhCQ;IAiCvB,oBAAA,CAAA,GAAA,CAAA,OAjCoD;;AAAqB,iBAiDjE,eAAA,CAjDiE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiDxB,KAAA,CAAM,cAjDkB,CAAA,MAAA,CAAA,CAAA,EAiDI,oBAAA,CAAA,GAAA,CAAA,OAjDJ"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/patterns/Footer/Footer.tsx"],"mappings":";;;;cAyBM;;;EAAA,SAAA,KAAA,EAAA,6CAII;AAAA,CAAA;;iBAGD,MAAA,CACP;EAAA,SAAA;EAAA,QAAA;EAAA,UAAA;EAAA,GAAA;CAAA,EAIC,KAAA,CAAM,cAJP,CAAA,QAAA,CAAA,GAAA;;UAEA,CAAA,EAAA,OAAA;;YAM0B,CAAA,EAAA,MAAA,OAAA,iBAAA;IAC3B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA;AAAA,iBAoBQ,WAAA,CAAW;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAA0B,KAAA,CAAM,cAAhC,CAAA,KAAA,CAAA,CAAA,EAAqD,oBAAA,CAAA,GAAA,CAAA,OAArD;;iBAcX,YAAA,CAdc;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAcwB,KAAA,CAAM,cAd9B,CAAA,KAAA,CAAA,CAAA,EAcmD,oBAAA,CAAA,GAAA,CAAA,OAdnD;;iBAyBd,SAAA,CAzBgE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAyB7B,KAAA,CAAM,cAzBuB,CAAA,KAAA,CAAA,CAAA,EAyBF,oBAAA,CAAA,GAAA,CAAA,OAzBE;AAAA;AAAA,iBAuChE,eAAA,CAzBY;EAAA,SAAA;EAAA,KAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EA8BlB,KAAA,CAAM,cA9BY,CAAA,KAAA,CAAA,GAAA;EAAA;OAAG,CAAA,EAgCd,KAAA,CAAM,SAhCQ;IAiCvB,oBAAA,CAAA,GAAA,CAAA,OAjCoD;;AAAqB,iBAiDjE,eAAA,CAjDiE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiDxB,KAAA,CAAM,cAjDkB,CAAA,MAAA,CAAA,CAAA,EAiDI,oBAAA,CAAA,GAAA,CAAA,OAjDJ"}
@@ -1,11 +1,11 @@
1
1
  import * as React from "react";
2
- import * as react_jsx_runtime87 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime175 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/patterns/Footer/Footer.d.ts
5
5
  declare const footerBackgrounds: {
6
6
  readonly none: "";
7
7
  readonly muted: "bg-muted";
8
- readonly glass: "bg-[var(--glass-light)] backdrop-blur-[var(--glass-blur)]";
8
+ readonly glass: "bg-[var(--glass-light)] backdrop-blur-glass";
9
9
  };
10
10
  /** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */
11
11
  declare function Footer({
@@ -18,22 +18,22 @@ declare function Footer({
18
18
  bordered?: boolean;
19
19
  /** Surface fill. `glass` is a translucent, blurred panel over the page background. */
20
20
  background?: keyof typeof footerBackgrounds;
21
- }): react_jsx_runtime87.JSX.Element;
21
+ }): react_jsx_runtime175.JSX.Element;
22
22
  /** Leading region — left-aligned on md+ (e.g. an app version). */
23
23
  declare function FooterStart({
24
24
  className,
25
25
  ...props
26
- }: React.ComponentProps<"div">): react_jsx_runtime87.JSX.Element;
26
+ }: React.ComponentProps<"div">): react_jsx_runtime175.JSX.Element;
27
27
  /** Centre region — always centred (e.g. a "Powered by" lockup). */
28
28
  declare function FooterCenter({
29
29
  className,
30
30
  ...props
31
- }: React.ComponentProps<"div">): react_jsx_runtime87.JSX.Element;
31
+ }: React.ComponentProps<"div">): react_jsx_runtime175.JSX.Element;
32
32
  /** Trailing region — right-aligned on md+ (e.g. legal links). Wraps on small screens. */
33
33
  declare function FooterEnd({
34
34
  className,
35
35
  ...props
36
- }: React.ComponentProps<"div">): react_jsx_runtime87.JSX.Element;
36
+ }: React.ComponentProps<"div">): react_jsx_runtime175.JSX.Element;
37
37
  /** "Powered by" lockup — the label plus a slot for the brand mark (a <Logo />). */
38
38
  declare function FooterPoweredBy({
39
39
  className,
@@ -43,12 +43,12 @@ declare function FooterPoweredBy({
43
43
  }: React.ComponentProps<"div"> & {
44
44
  /** Override the default "Powered by" label. */
45
45
  label?: React.ReactNode;
46
- }): react_jsx_runtime87.JSX.Element;
46
+ }): react_jsx_runtime175.JSX.Element;
47
47
  /** Visual divider between trailing links. */
48
48
  declare function FooterSeparator({
49
49
  className,
50
50
  ...props
51
- }: React.ComponentProps<"span">): react_jsx_runtime87.JSX.Element;
51
+ }: React.ComponentProps<"span">): react_jsx_runtime175.JSX.Element;
52
52
  //#endregion
53
53
  export { Footer, FooterCenter, FooterEnd, FooterPoweredBy, FooterSeparator, FooterStart };
54
54
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/patterns/Footer/Footer.tsx"],"mappings":";;;;cAyBM;;;EAAA,SAAA,KAAA,EAAA,2DAII;AAAA,CAAA;;iBAGD,MAAA,CACP;EAAA,SAAA;EAAA,QAAA;EAAA,UAAA;EAAA,GAAA;CAAA,EAIC,KAAA,CAAM,cAJP,CAAA,QAAA,CAAA,GAAA;;UAEA,CAAA,EAAA,OAAA;;YAM0B,CAAA,EAAA,MAAA,OAAA,iBAAA;IAC3B,mBAAA,CAAA,GAAA,CAAA,OAAA;AAAA;AAAA,iBAoBQ,WAAA,CAAW;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAA0B,KAAA,CAAM,cAAhC,CAAA,KAAA,CAAA,CAAA,EAAqD,mBAAA,CAAA,GAAA,CAAA,OAArD;;iBAcX,YAAA,CAdc;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAcwB,KAAA,CAAM,cAd9B,CAAA,KAAA,CAAA,CAAA,EAcmD,mBAAA,CAAA,GAAA,CAAA,OAdnD;;iBAyBd,SAAA,CAzBgE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAyB7B,KAAA,CAAM,cAzBuB,CAAA,KAAA,CAAA,CAAA,EAyBF,mBAAA,CAAA,GAAA,CAAA,OAzBE;AAAA;AAAA,iBAuChE,eAAA,CAzBY;EAAA,SAAA;EAAA,KAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EA8BlB,KAAA,CAAM,cA9BY,CAAA,KAAA,CAAA,GAAA;EAAA;OAAG,CAAA,EAgCd,KAAA,CAAM,SAhCQ;IAiCvB,mBAAA,CAAA,GAAA,CAAA,OAjCoD;;AAAqB,iBAiDjE,eAAA,CAjDiE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiDxB,KAAA,CAAM,cAjDkB,CAAA,MAAA,CAAA,CAAA,EAiDI,mBAAA,CAAA,GAAA,CAAA,OAjDJ"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/patterns/Footer/Footer.tsx"],"mappings":";;;;cAyBM;;;EAAA,SAAA,KAAA,EAAA,6CAII;AAAA,CAAA;;iBAGD,MAAA,CACP;EAAA,SAAA;EAAA,QAAA;EAAA,UAAA;EAAA,GAAA;CAAA,EAIC,KAAA,CAAM,cAJP,CAAA,QAAA,CAAA,GAAA;;UAEA,CAAA,EAAA,OAAA;;YAM0B,CAAA,EAAA,MAAA,OAAA,iBAAA;IAC3B,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA;AAAA,iBAoBQ,WAAA,CAAW;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAA0B,KAAA,CAAM,cAAhC,CAAA,KAAA,CAAA,CAAA,EAAqD,oBAAA,CAAA,GAAA,CAAA,OAArD;;iBAcX,YAAA,CAdc;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAcwB,KAAA,CAAM,cAd9B,CAAA,KAAA,CAAA,CAAA,EAcmD,oBAAA,CAAA,GAAA,CAAA,OAdnD;;iBAyBd,SAAA,CAzBgE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAyB7B,KAAA,CAAM,cAzBuB,CAAA,KAAA,CAAA,CAAA,EAyBF,oBAAA,CAAA,GAAA,CAAA,OAzBE;AAAA;AAAA,iBAuChE,eAAA,CAzBY;EAAA,SAAA;EAAA,KAAA;EAAA,QAAA;EAAA,GAAA;CAAA,EA8BlB,KAAA,CAAM,cA9BY,CAAA,KAAA,CAAA,GAAA;EAAA;OAAG,CAAA,EAgCd,KAAA,CAAM,SAhCQ;IAiCvB,oBAAA,CAAA,GAAA,CAAA,OAjCoD;;AAAqB,iBAiDjE,eAAA,CAjDiE;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAiDxB,KAAA,CAAM,cAjDkB,CAAA,MAAA,CAAA,CAAA,EAiDI,oBAAA,CAAA,GAAA,CAAA,OAjDJ"}
@@ -5,7 +5,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
5
5
  const footerBackgrounds = {
6
6
  none: "",
7
7
  muted: "bg-muted",
8
- glass: "bg-[var(--glass-light)] backdrop-blur-[var(--glass-blur)]"
8
+ glass: "bg-[var(--glass-light)] backdrop-blur-glass"
9
9
  };
10
10
  /** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */
11
11
  function Footer({ className, bordered = false, background = "none", ...props }) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/patterns/Footer/Footer.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { Text } from \"@/primitives/Text\";\nimport { cn } from \"@/utils\";\n\n// Footer — app chrome shown at the bottom of a page. A responsive three-region\n// row: the regions stack centered on mobile and spread to start / center / end\n// on md+ (a grid, so the centre region stays centred regardless of the side\n// widths). Compose content from Text / Link / Logo; the helpers below cover the\n// common pieces (a \"Powered by\" lockup and a link separator).\n//\n// <Footer>\n// <FooterStart><Text size=\"mini\" variant=\"muted\">v2.6.0</Text></FooterStart>\n// <FooterCenter>\n// <FooterPoweredBy><Logo brand=\"slingshot\" variant=\"icon\" className=\"size-5\" /></FooterPoweredBy>\n// </FooterCenter>\n// <FooterEnd>\n// <Link href=\"/tnc\" underline=\"hover\">T&C</Link>\n// <FooterSeparator />\n// <Link href=\"/privacy\" underline=\"hover\">Privacy</Link>\n// </FooterEnd>\n// </Footer>\n\n// Surface fills. `glass` is a translucent, backdrop-blurred panel (same --glass-*\n// tokens as Card/Container) — reads over a textured page background.\nconst footerBackgrounds = {\n none: \"\",\n muted: \"bg-muted\",\n glass: \"bg-[var(--glass-light)] backdrop-blur-[var(--glass-blur)]\",\n} as const;\n\n/** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */\nfunction Footer({\n className,\n bordered = false,\n background = \"none\",\n ...props\n}: React.ComponentProps<\"footer\"> & {\n /** Add a subtle top border separating the footer from page content. */\n bordered?: boolean;\n /** Surface fill. `glass` is a translucent, blurred panel over the page background. */\n background?: keyof typeof footerBackgrounds;\n}) {\n return (\n <footer\n data-slot=\"footer\"\n data-background={background}\n className={cn(\n // Footer content is small by default (matches the version text); links and\n // other unstyled children inherit this. Explicitly-sized <Text> is unaffected.\n \"grid w-full grid-cols-1 gap-3 px-4 py-3 text-center md:grid-cols-3 md:items-center md:px-6\",\n \"text-[length:var(--paragraph-mini-font-size)] leading-[var(--paragraph-mini-line-height)]\",\n footerBackgrounds[background],\n bordered && \"border-t border-border\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Leading region — left-aligned on md+ (e.g. an app version). */\nfunction FooterStart({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-start\"\n className={cn(\n \"flex items-center justify-center gap-2 md:justify-self-start md:text-left\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Centre region — always centred (e.g. a \"Powered by\" lockup). */\nfunction FooterCenter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-center\"\n className={cn(\"flex items-center justify-center gap-2 md:justify-self-center\", className)}\n {...props}\n />\n );\n}\n\n/** Trailing region — right-aligned on md+ (e.g. legal links). Wraps on small screens. */\nfunction FooterEnd({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-end\"\n className={cn(\n \"flex flex-wrap items-center justify-center gap-2 md:justify-end md:justify-self-end md:text-right\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** \"Powered by\" lockup — the label plus a slot for the brand mark (a <Logo />). */\nfunction FooterPoweredBy({\n className,\n label = \"Powered by\",\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n /** Override the default \"Powered by\" label. */\n label?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"footer-powered-by\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n >\n <Text as=\"span\" size=\"small\" variant=\"muted\">\n {label}\n </Text>\n {children}\n </div>\n );\n}\n\n/** Visual divider between trailing links. */\nfunction FooterSeparator({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"footer-separator\"\n aria-hidden=\"true\"\n className={cn(\"select-none text-border\", className)}\n {...props}\n >\n |\n </span>\n );\n}\n\nexport { Footer, FooterStart, FooterCenter, FooterEnd, FooterPoweredBy, FooterSeparator };\n"],"mappings":";;;;AAyBA,MAAM,oBAAoB;CACxB,MAAM;CACN,OAAO;CACP,OAAO;AACT;;AAGA,SAAS,OAAO,EACd,WACA,WAAW,OACX,aAAa,QACb,GAAG,SAMF;CACD,OACE,oBAAC,UAAD;EACE,aAAU;EACV,mBAAiB;EACjB,WAAW,GAGT,8FACA,6FACA,kBAAkB,aAClB,YAAY,0BACZ,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;CACzE,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,6EACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;CAC1E,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,iEAAiE,SAAS;EACxF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;CACvE,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,qGACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,gBAAgB,EACvB,WACA,QAAQ,cACR,UACA,GAAG,SAIF;CACD,OACE,qBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,2BAA2B,SAAS;EAClD,GAAI;YAHN,CAKE,oBAAC,MAAD;GAAM,IAAG;GAAO,MAAK;GAAQ,SAAQ;aAClC;EACG,CAAA,GACL,QACE;;AAET;;AAGA,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAuC;CAC9E,OACE,oBAAC,QAAD;EACE,aAAU;EACV,eAAY;EACZ,WAAW,GAAG,2BAA2B,SAAS;EAClD,GAAI;YACL;CAEK,CAAA;AAEV"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/patterns/Footer/Footer.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { Text } from \"@/primitives/Text\";\nimport { cn } from \"@/utils\";\n\n// Footer — app chrome shown at the bottom of a page. A responsive three-region\n// row: the regions stack centered on mobile and spread to start / center / end\n// on md+ (a grid, so the centre region stays centred regardless of the side\n// widths). Compose content from Text / Link / Logo; the helpers below cover the\n// common pieces (a \"Powered by\" lockup and a link separator).\n//\n// <Footer>\n// <FooterStart><Text size=\"mini\" variant=\"muted\">v2.6.0</Text></FooterStart>\n// <FooterCenter>\n// <FooterPoweredBy><Logo brand=\"slingshot\" variant=\"icon\" className=\"size-5\" /></FooterPoweredBy>\n// </FooterCenter>\n// <FooterEnd>\n// <Link href=\"/tnc\" underline=\"hover\">T&C</Link>\n// <FooterSeparator />\n// <Link href=\"/privacy\" underline=\"hover\">Privacy</Link>\n// </FooterEnd>\n// </Footer>\n\n// Surface fills. `glass` is a translucent, backdrop-blurred panel (same --glass-*\n// tokens as Card/Container) — reads over a textured page background.\nconst footerBackgrounds = {\n none: \"\",\n muted: \"bg-muted\",\n glass: \"bg-[var(--glass-light)] backdrop-blur-glass\",\n} as const;\n\n/** App chrome shown at the bottom of a page: a responsive three-region row (start / center / end). */\nfunction Footer({\n className,\n bordered = false,\n background = \"none\",\n ...props\n}: React.ComponentProps<\"footer\"> & {\n /** Add a subtle top border separating the footer from page content. */\n bordered?: boolean;\n /** Surface fill. `glass` is a translucent, blurred panel over the page background. */\n background?: keyof typeof footerBackgrounds;\n}) {\n return (\n <footer\n data-slot=\"footer\"\n data-background={background}\n className={cn(\n // Footer content is small by default (matches the version text); links and\n // other unstyled children inherit this. Explicitly-sized <Text> is unaffected.\n \"grid w-full grid-cols-1 gap-3 px-4 py-3 text-center md:grid-cols-3 md:items-center md:px-6\",\n \"text-[length:var(--paragraph-mini-font-size)] leading-[var(--paragraph-mini-line-height)]\",\n footerBackgrounds[background],\n bordered && \"border-t border-border\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Leading region — left-aligned on md+ (e.g. an app version). */\nfunction FooterStart({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-start\"\n className={cn(\n \"flex items-center justify-center gap-2 md:justify-self-start md:text-left\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** Centre region — always centred (e.g. a \"Powered by\" lockup). */\nfunction FooterCenter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-center\"\n className={cn(\"flex items-center justify-center gap-2 md:justify-self-center\", className)}\n {...props}\n />\n );\n}\n\n/** Trailing region — right-aligned on md+ (e.g. legal links). Wraps on small screens. */\nfunction FooterEnd({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"footer-end\"\n className={cn(\n \"flex flex-wrap items-center justify-center gap-2 md:justify-end md:justify-self-end md:text-right\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** \"Powered by\" lockup — the label plus a slot for the brand mark (a <Logo />). */\nfunction FooterPoweredBy({\n className,\n label = \"Powered by\",\n children,\n ...props\n}: React.ComponentProps<\"div\"> & {\n /** Override the default \"Powered by\" label. */\n label?: React.ReactNode;\n}) {\n return (\n <div\n data-slot=\"footer-powered-by\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n >\n <Text as=\"span\" size=\"small\" variant=\"muted\">\n {label}\n </Text>\n {children}\n </div>\n );\n}\n\n/** Visual divider between trailing links. */\nfunction FooterSeparator({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"footer-separator\"\n aria-hidden=\"true\"\n className={cn(\"select-none text-border\", className)}\n {...props}\n >\n |\n </span>\n );\n}\n\nexport { Footer, FooterStart, FooterCenter, FooterEnd, FooterPoweredBy, FooterSeparator };\n"],"mappings":";;;;AAyBA,MAAM,oBAAoB;CACxB,MAAM;CACN,OAAO;CACP,OAAO;AACT;;AAGA,SAAS,OAAO,EACd,WACA,WAAW,OACX,aAAa,QACb,GAAG,SAMF;CACD,OACE,oBAAC,UAAD;EACE,aAAU;EACV,mBAAiB;EACjB,WAAW,GAGT,8FACA,6FACA,kBAAkB,aAClB,YAAY,0BACZ,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;CACzE,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,6EACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;CAC1E,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,iEAAiE,SAAS;EACxF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;CACvE,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,qGACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,gBAAgB,EACvB,WACA,QAAQ,cACR,UACA,GAAG,SAIF;CACD,OACE,qBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,2BAA2B,SAAS;EAClD,GAAI;YAHN,CAKE,oBAAC,MAAD;GAAM,IAAG;GAAO,MAAK;GAAQ,SAAQ;aAClC;EACG,CAAA,GACL,QACE;;AAET;;AAGA,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAuC;CAC9E,OACE,oBAAC,QAAD;EACE,aAAU;EACV,eAAY;EACZ,WAAW,GAAG,2BAA2B,SAAS;EAClD,GAAI;YACL;CAEK,CAAA;AAEV"}
@@ -1,7 +1,7 @@
1
1
  import { n as HeadingProps } from "../../index28.cjs";
2
2
  import { t as Text } from "../../index60.cjs";
3
- import * as react_jsx_runtime232 from "react/jsx-runtime";
4
- import * as class_variance_authority_types22 from "class-variance-authority/types";
3
+ import * as react_jsx_runtime233 from "react/jsx-runtime";
4
+ import * as class_variance_authority_types18 from "class-variance-authority/types";
5
5
  import { VariantProps } from "class-variance-authority";
6
6
  import * as React from "react";
7
7
 
@@ -15,7 +15,7 @@ declare function MediaObject({
15
15
  className,
16
16
  interactive,
17
17
  ...props
18
- }: MediaObjectProps): react_jsx_runtime232.JSX.Element;
18
+ }: MediaObjectProps): react_jsx_runtime233.JSX.Element;
19
19
  type MediaObjectImageProps = React.ComponentProps<"img"> & {
20
20
  /** Required alt text describing the media (enforced for accessibility). */
21
21
  alt: string;
@@ -25,17 +25,17 @@ declare function MediaObjectImage({
25
25
  className,
26
26
  alt,
27
27
  ...props
28
- }: MediaObjectImageProps): react_jsx_runtime232.JSX.Element;
28
+ }: MediaObjectImageProps): react_jsx_runtime233.JSX.Element;
29
29
  /** Square container for the icon-top card variant; place an Icon inside it. */
30
30
  declare function MediaObjectIcon({
31
31
  className,
32
32
  ...props
33
- }: React.ComponentProps<"div">): react_jsx_runtime232.JSX.Element;
33
+ }: React.ComponentProps<"div">): react_jsx_runtime233.JSX.Element;
34
34
  /** Padded body region of a card that holds the title, text, and actions. */
35
35
  declare function MediaObjectContent({
36
36
  className,
37
37
  ...props
38
- }: React.ComponentProps<"div">): react_jsx_runtime232.JSX.Element;
38
+ }: React.ComponentProps<"div">): react_jsx_runtime233.JSX.Element;
39
39
  type MediaObjectTitleProps = Omit<HeadingProps, "as"> & {
40
40
  /** Heading size step passthrough (defaults to "4"). */
41
41
  size?: HeadingProps["size"];
@@ -44,20 +44,20 @@ type MediaObjectTitleProps = Omit<HeadingProps, "as"> & {
44
44
  declare function MediaObjectTitle({
45
45
  size,
46
46
  ...props
47
- }: MediaObjectTitleProps): react_jsx_runtime232.JSX.Element;
47
+ }: MediaObjectTitleProps): react_jsx_runtime233.JSX.Element;
48
48
  /** Supporting body copy; wraps the Text primitive (muted, small). */
49
49
  declare function MediaObjectText({
50
50
  ...props
51
- }: React.ComponentProps<typeof Text>): react_jsx_runtime232.JSX.Element;
51
+ }: React.ComponentProps<typeof Text>): react_jsx_runtime233.JSX.Element;
52
52
  /** Action row pinned to the bottom of the content; holds a Button or Link. */
53
53
  declare function MediaObjectActions({
54
54
  className,
55
55
  ...props
56
- }: React.ComponentProps<"div">): react_jsx_runtime232.JSX.Element;
56
+ }: React.ComponentProps<"div">): react_jsx_runtime233.JSX.Element;
57
57
  declare const mediaObjectGroupVariants: (props?: ({
58
58
  columns?: 1 | 2 | 3 | 4 | null | undefined;
59
59
  gap?: "sm" | "lg" | "md" | null | undefined;
60
- } & class_variance_authority_types22.ClassProp) | undefined) => string;
60
+ } & class_variance_authority_types18.ClassProp) | undefined) => string;
61
61
  type MediaObjectGroupProps = React.ComponentProps<"div"> & VariantProps<typeof mediaObjectGroupVariants>;
62
62
  /** Responsive grid wrapper that lays out a set of MediaObject cards. */
63
63
  declare function MediaObjectGroup({
@@ -65,7 +65,7 @@ declare function MediaObjectGroup({
65
65
  columns,
66
66
  gap,
67
67
  ...props
68
- }: MediaObjectGroupProps): react_jsx_runtime232.JSX.Element;
68
+ }: MediaObjectGroupProps): react_jsx_runtime233.JSX.Element;
69
69
  //#endregion
70
70
  export { MediaObject, MediaObjectActions, MediaObjectContent, MediaObjectGroup, type MediaObjectGroupProps, MediaObjectIcon, MediaObjectImage, type MediaObjectImageProps, type MediaObjectProps, MediaObjectText, MediaObjectTitle, type MediaObjectTitleProps, mediaObjectGroupVariants };
71
71
  //# sourceMappingURL=index.d.cts.map
@@ -1,9 +1,9 @@
1
1
  import { n as HeadingProps } from "../../index28.js";
2
2
  import { t as Text } from "../../index60.js";
3
3
  import * as React from "react";
4
- import * as react_jsx_runtime135 from "react/jsx-runtime";
4
+ import * as react_jsx_runtime167 from "react/jsx-runtime";
5
5
  import { VariantProps } from "class-variance-authority";
6
- import * as class_variance_authority_types14 from "class-variance-authority/types";
6
+ import * as class_variance_authority_types17 from "class-variance-authority/types";
7
7
 
8
8
  //#region src/patterns/MediaObject/MediaObject.d.ts
9
9
  type MediaObjectProps = React.ComponentProps<"article"> & {
@@ -15,7 +15,7 @@ declare function MediaObject({
15
15
  className,
16
16
  interactive,
17
17
  ...props
18
- }: MediaObjectProps): react_jsx_runtime135.JSX.Element;
18
+ }: MediaObjectProps): react_jsx_runtime167.JSX.Element;
19
19
  type MediaObjectImageProps = React.ComponentProps<"img"> & {
20
20
  /** Required alt text describing the media (enforced for accessibility). */
21
21
  alt: string;
@@ -25,17 +25,17 @@ declare function MediaObjectImage({
25
25
  className,
26
26
  alt,
27
27
  ...props
28
- }: MediaObjectImageProps): react_jsx_runtime135.JSX.Element;
28
+ }: MediaObjectImageProps): react_jsx_runtime167.JSX.Element;
29
29
  /** Square container for the icon-top card variant; place an Icon inside it. */
30
30
  declare function MediaObjectIcon({
31
31
  className,
32
32
  ...props
33
- }: React.ComponentProps<"div">): react_jsx_runtime135.JSX.Element;
33
+ }: React.ComponentProps<"div">): react_jsx_runtime167.JSX.Element;
34
34
  /** Padded body region of a card that holds the title, text, and actions. */
35
35
  declare function MediaObjectContent({
36
36
  className,
37
37
  ...props
38
- }: React.ComponentProps<"div">): react_jsx_runtime135.JSX.Element;
38
+ }: React.ComponentProps<"div">): react_jsx_runtime167.JSX.Element;
39
39
  type MediaObjectTitleProps = Omit<HeadingProps, "as"> & {
40
40
  /** Heading size step passthrough (defaults to "4"). */
41
41
  size?: HeadingProps["size"];
@@ -44,20 +44,20 @@ type MediaObjectTitleProps = Omit<HeadingProps, "as"> & {
44
44
  declare function MediaObjectTitle({
45
45
  size,
46
46
  ...props
47
- }: MediaObjectTitleProps): react_jsx_runtime135.JSX.Element;
47
+ }: MediaObjectTitleProps): react_jsx_runtime167.JSX.Element;
48
48
  /** Supporting body copy; wraps the Text primitive (muted, small). */
49
49
  declare function MediaObjectText({
50
50
  ...props
51
- }: React.ComponentProps<typeof Text>): react_jsx_runtime135.JSX.Element;
51
+ }: React.ComponentProps<typeof Text>): react_jsx_runtime167.JSX.Element;
52
52
  /** Action row pinned to the bottom of the content; holds a Button or Link. */
53
53
  declare function MediaObjectActions({
54
54
  className,
55
55
  ...props
56
- }: React.ComponentProps<"div">): react_jsx_runtime135.JSX.Element;
56
+ }: React.ComponentProps<"div">): react_jsx_runtime167.JSX.Element;
57
57
  declare const mediaObjectGroupVariants: (props?: ({
58
58
  columns?: 1 | 2 | 3 | 4 | null | undefined;
59
59
  gap?: "sm" | "lg" | "md" | null | undefined;
60
- } & class_variance_authority_types14.ClassProp) | undefined) => string;
60
+ } & class_variance_authority_types17.ClassProp) | undefined) => string;
61
61
  type MediaObjectGroupProps = React.ComponentProps<"div"> & VariantProps<typeof mediaObjectGroupVariants>;
62
62
  /** Responsive grid wrapper that lays out a set of MediaObject cards. */
63
63
  declare function MediaObjectGroup({
@@ -65,7 +65,7 @@ declare function MediaObjectGroup({
65
65
  columns,
66
66
  gap,
67
67
  ...props
68
- }: MediaObjectGroupProps): react_jsx_runtime135.JSX.Element;
68
+ }: MediaObjectGroupProps): react_jsx_runtime167.JSX.Element;
69
69
  //#endregion
70
70
  export { MediaObject, MediaObjectActions, MediaObjectContent, MediaObjectGroup, type MediaObjectGroupProps, MediaObjectIcon, MediaObjectImage, type MediaObjectImageProps, type MediaObjectProps, MediaObjectText, MediaObjectTitle, type MediaObjectTitleProps, mediaObjectGroupVariants };
71
71
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- import * as react_jsx_runtime215 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime224 from "react/jsx-runtime";
2
2
  import * as React from "react";
3
3
 
4
4
  //#region src/patterns/SectionCard/SectionCard.d.ts
@@ -15,7 +15,7 @@ declare function SectionCard({
15
15
  className,
16
16
  children,
17
17
  ...props
18
- }: SectionCardProps): react_jsx_runtime215.JSX.Element;
18
+ }: SectionCardProps): react_jsx_runtime224.JSX.Element;
19
19
  //#endregion
20
20
  export { SectionCard, type SectionCardProps };
21
21
  //# sourceMappingURL=index.d.cts.map
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import * as react_jsx_runtime115 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime157 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/patterns/SectionCard/SectionCard.d.ts
5
5
  type SectionCardProps = Omit<React.ComponentProps<"div">, "title"> & {
@@ -15,7 +15,7 @@ declare function SectionCard({
15
15
  className,
16
16
  children,
17
17
  ...props
18
- }: SectionCardProps): react_jsx_runtime115.JSX.Element;
18
+ }: SectionCardProps): react_jsx_runtime157.JSX.Element;
19
19
  //#endregion
20
20
  export { SectionCard, type SectionCardProps };
21
21
  //# sourceMappingURL=index.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { n as HeadingProps } from "../../index28.cjs";
2
- import * as react_jsx_runtime202 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime223 from "react/jsx-runtime";
3
3
  import * as React from "react";
4
4
 
5
5
  //#region src/patterns/SectionHeading/SectionHeading.d.ts
@@ -31,7 +31,7 @@ declare function SectionHeading({
31
31
  titleAs,
32
32
  className,
33
33
  ...props
34
- }: SectionHeadingProps): react_jsx_runtime202.JSX.Element;
34
+ }: SectionHeadingProps): react_jsx_runtime223.JSX.Element;
35
35
  //#endregion
36
36
  export { SectionHeading, type SectionHeadingProps };
37
37
  //# sourceMappingURL=index.d.cts.map
@@ -1,6 +1,6 @@
1
1
  import { n as HeadingProps } from "../../index28.js";
2
2
  import * as React from "react";
3
- import * as react_jsx_runtime121 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime155 from "react/jsx-runtime";
4
4
 
5
5
  //#region src/patterns/SectionHeading/SectionHeading.d.ts
6
6
  /** Props for the {@link SectionHeading} pattern. */
@@ -31,7 +31,7 @@ declare function SectionHeading({
31
31
  titleAs,
32
32
  className,
33
33
  ...props
34
- }: SectionHeadingProps): react_jsx_runtime121.JSX.Element;
34
+ }: SectionHeadingProps): react_jsx_runtime155.JSX.Element;
35
35
  //#endregion
36
36
  export { SectionHeading, type SectionHeadingProps };
37
37
  //# sourceMappingURL=index.d.ts.map
@@ -27,7 +27,7 @@ function AccordionTrigger({ className, children, ...props }) {
27
27
  className: "flex",
28
28
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(radix_ui.Accordion.Trigger, {
29
29
  "data-slot": "accordion-trigger",
30
- className: require_cn.cn("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180", "group-data-[variant=bordered]/accordion:px-4", className),
30
+ className: require_cn.cn("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-lg py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180", "group-data-[variant=bordered]/accordion:px-4", className),
31
31
  ...props,
32
32
  children: [children, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(lucide_react.ChevronDownIcon, { className: "text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200" })]
33
33
  })
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["AccordionPrimitive","cn","ChevronDownIcon"],"sources":["../../../src/primitives/Accordion/Accordion.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\n\n/** A vertically stacked set of collapsible sections built on Radix Accordion. */\nfunction Accordion({\n className,\n variant = \"line\",\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root> & {\n /** Visual style: `line` (divider rows) or `bordered` (rounded border with inset rows). */\n variant?: \"line\" | \"bordered\";\n}) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n data-variant={variant}\n // `bordered` wraps the group in a rounded border; items keep their\n // dividers and triggers/content inset via the group-data selector below.\n className={cn(\"group/accordion\", variant === \"bordered\" && \"rounded-md border\", className)}\n {...props}\n />\n );\n}\n\n/** A single collapsible section; identified by its required `value`. */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** The clickable header that toggles its section open or closed. */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180\",\n \"group-data-[variant=bordered]/accordion:px-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/** The animated collapsible panel revealed when its section is open. */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn(\"pt-0 pb-4 group-data-[variant=bordered]/accordion:px-4\", className)}>\n {children}\n </div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"mappings":";;;;;;;AAKA,SAAS,UAAU,EACjB,WACA,UAAU,QACV,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,KAACA,SAAAA,UAAmB,MAApB;EACE,aAAU;EACV,gBAAc;EAGd,WAAWC,WAAAA,GAAG,mBAAmB,YAAY,cAAc,qBAAqB,SAAS;EACzF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,cAAc,EACrB,WACA,GAAG,SACoD;CACvD,OACE,iBAAA,GAAA,kBAAA,KAACD,SAAAA,UAAmB,MAApB;EACE,aAAU;EACV,WAAWC,WAAAA,GAAG,4BAA4B,SAAS;EACnD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,iBAAA,GAAA,kBAAA,KAACD,SAAAA,UAAmB,QAApB;EAA2B,WAAU;YACnC,iBAAA,GAAA,kBAAA,MAACA,SAAAA,UAAmB,SAApB;GACE,aAAU;GACV,WAAWC,WAAAA,GACT,8SACA,gDACA,SACF;GACA,GAAI;aAPN,CASG,UACD,iBAAA,GAAA,kBAAA,KAACC,aAAAA,iBAAD,EAAiB,WAAU,8GAA+G,CAAA,CAChH;;CACH,CAAA;AAE/B;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,iBAAA,GAAA,kBAAA,KAACF,SAAAA,UAAmB,SAApB;EACE,aAAU;EACV,WAAU;EACV,GAAI;YAEJ,iBAAA,GAAA,kBAAA,KAAC,OAAD;GAAK,WAAWC,WAAAA,GAAG,0DAA0D,SAAS;GACnF;EACE,CAAA;CACqB,CAAA;AAEhC"}
1
+ {"version":3,"file":"index.cjs","names":["AccordionPrimitive","cn","ChevronDownIcon"],"sources":["../../../src/primitives/Accordion/Accordion.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\n\n/** A vertically stacked set of collapsible sections built on Radix Accordion. */\nfunction Accordion({\n className,\n variant = \"line\",\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root> & {\n /** Visual style: `line` (divider rows) or `bordered` (rounded border with inset rows). */\n variant?: \"line\" | \"bordered\";\n}) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n data-variant={variant}\n // `bordered` wraps the group in a rounded border; items keep their\n // dividers and triggers/content inset via the group-data selector below.\n className={cn(\"group/accordion\", variant === \"bordered\" && \"rounded-md border\", className)}\n {...props}\n />\n );\n}\n\n/** A single collapsible section; identified by its required `value`. */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** The clickable header that toggles its section open or closed. */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-lg py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180\",\n \"group-data-[variant=bordered]/accordion:px-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/** The animated collapsible panel revealed when its section is open. */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn(\"pt-0 pb-4 group-data-[variant=bordered]/accordion:px-4\", className)}>\n {children}\n </div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"mappings":";;;;;;;AAKA,SAAS,UAAU,EACjB,WACA,UAAU,QACV,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,KAACA,SAAAA,UAAmB,MAApB;EACE,aAAU;EACV,gBAAc;EAGd,WAAWC,WAAAA,GAAG,mBAAmB,YAAY,cAAc,qBAAqB,SAAS;EACzF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,cAAc,EACrB,WACA,GAAG,SACoD;CACvD,OACE,iBAAA,GAAA,kBAAA,KAACD,SAAAA,UAAmB,MAApB;EACE,aAAU;EACV,WAAWC,WAAAA,GAAG,4BAA4B,SAAS;EACnD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,iBAAA,GAAA,kBAAA,KAACD,SAAAA,UAAmB,QAApB;EAA2B,WAAU;YACnC,iBAAA,GAAA,kBAAA,MAACA,SAAAA,UAAmB,SAApB;GACE,aAAU;GACV,WAAWC,WAAAA,GACT,8SACA,gDACA,SACF;GACA,GAAI;aAPN,CASG,UACD,iBAAA,GAAA,kBAAA,KAACC,aAAAA,iBAAD,EAAiB,WAAU,8GAA+G,CAAA,CAChH;;CACH,CAAA;AAE/B;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,iBAAA,GAAA,kBAAA,KAACF,SAAAA,UAAmB,SAApB;EACE,aAAU;EACV,WAAU;EACV,GAAI;YAEJ,iBAAA,GAAA,kBAAA,KAAC,OAAD;GAAK,WAAWC,WAAAA,GAAG,0DAA0D,SAAS;GACnF;EACE,CAAA;CACqB,CAAA;AAEhC"}
@@ -26,7 +26,7 @@ function AccordionTrigger({ className, children, ...props }) {
26
26
  className: "flex",
27
27
  children: /* @__PURE__ */ jsxs(Accordion$1.Trigger, {
28
28
  "data-slot": "accordion-trigger",
29
- className: cn("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180", "group-data-[variant=bordered]/accordion:px-4", className),
29
+ className: cn("focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-lg py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180", "group-data-[variant=bordered]/accordion:px-4", className),
30
30
  ...props,
31
31
  children: [children, /* @__PURE__ */ jsx(ChevronDownIcon, { className: "text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200" })]
32
32
  })
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["AccordionPrimitive"],"sources":["../../../src/primitives/Accordion/Accordion.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\n\n/** A vertically stacked set of collapsible sections built on Radix Accordion. */\nfunction Accordion({\n className,\n variant = \"line\",\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root> & {\n /** Visual style: `line` (divider rows) or `bordered` (rounded border with inset rows). */\n variant?: \"line\" | \"bordered\";\n}) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n data-variant={variant}\n // `bordered` wraps the group in a rounded border; items keep their\n // dividers and triggers/content inset via the group-data selector below.\n className={cn(\"group/accordion\", variant === \"bordered\" && \"rounded-md border\", className)}\n {...props}\n />\n );\n}\n\n/** A single collapsible section; identified by its required `value`. */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** The clickable header that toggles its section open or closed. */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180\",\n \"group-data-[variant=bordered]/accordion:px-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/** The animated collapsible panel revealed when its section is open. */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn(\"pt-0 pb-4 group-data-[variant=bordered]/accordion:px-4\", className)}>\n {children}\n </div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"mappings":";;;;;;AAKA,SAAS,UAAU,EACjB,WACA,UAAU,QACV,GAAG,SAIF;CACD,OACE,oBAACA,YAAmB,MAApB;EACE,aAAU;EACV,gBAAc;EAGd,WAAW,GAAG,mBAAmB,YAAY,cAAc,qBAAqB,SAAS;EACzF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,cAAc,EACrB,WACA,GAAG,SACoD;CACvD,OACE,oBAACA,YAAmB,MAApB;EACE,aAAU;EACV,WAAW,GAAG,4BAA4B,SAAS;EACnD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,oBAACA,YAAmB,QAApB;EAA2B,WAAU;YACnC,qBAACA,YAAmB,SAApB;GACE,aAAU;GACV,WAAW,GACT,8SACA,gDACA,SACF;GACA,GAAI;aAPN,CASG,UACD,oBAAC,iBAAD,EAAiB,WAAU,8GAA+G,CAAA,CAChH;;CACH,CAAA;AAE/B;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,oBAACA,YAAmB,SAApB;EACE,aAAU;EACV,WAAU;EACV,GAAI;YAEJ,oBAAC,OAAD;GAAK,WAAW,GAAG,0DAA0D,SAAS;GACnF;EACE,CAAA;CACqB,CAAA;AAEhC"}
1
+ {"version":3,"file":"index.js","names":["AccordionPrimitive"],"sources":["../../../src/primitives/Accordion/Accordion.tsx"],"sourcesContent":["import { cn } from \"@/utils\";\nimport { ChevronDownIcon } from \"lucide-react\";\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\n\n/** A vertically stacked set of collapsible sections built on Radix Accordion. */\nfunction Accordion({\n className,\n variant = \"line\",\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Root> & {\n /** Visual style: `line` (divider rows) or `bordered` (rounded border with inset rows). */\n variant?: \"line\" | \"bordered\";\n}) {\n return (\n <AccordionPrimitive.Root\n data-slot=\"accordion\"\n data-variant={variant}\n // `bordered` wraps the group in a rounded border; items keep their\n // dividers and triggers/content inset via the group-data selector below.\n className={cn(\"group/accordion\", variant === \"bordered\" && \"rounded-md border\", className)}\n {...props}\n />\n );\n}\n\n/** A single collapsible section; identified by its required `value`. */\nfunction AccordionItem({\n className,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n return (\n <AccordionPrimitive.Item\n data-slot=\"accordion-item\"\n className={cn(\"border-b last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** The clickable header that toggles its section open or closed. */\nfunction AccordionTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n return (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n data-slot=\"accordion-trigger\"\n className={cn(\n \"focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-lg py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180\",\n \"group-data-[variant=bordered]/accordion:px-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDownIcon className=\"text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n );\n}\n\n/** The animated collapsible panel revealed when its section is open. */\nfunction AccordionContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n return (\n <AccordionPrimitive.Content\n data-slot=\"accordion-content\"\n className=\"data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm\"\n {...props}\n >\n <div className={cn(\"pt-0 pb-4 group-data-[variant=bordered]/accordion:px-4\", className)}>\n {children}\n </div>\n </AccordionPrimitive.Content>\n );\n}\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"],"mappings":";;;;;;AAKA,SAAS,UAAU,EACjB,WACA,UAAU,QACV,GAAG,SAIF;CACD,OACE,oBAACA,YAAmB,MAApB;EACE,aAAU;EACV,gBAAc;EAGd,WAAW,GAAG,mBAAmB,YAAY,cAAc,qBAAqB,SAAS;EACzF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,cAAc,EACrB,WACA,GAAG,SACoD;CACvD,OACE,oBAACA,YAAmB,MAApB;EACE,aAAU;EACV,WAAW,GAAG,4BAA4B,SAAS;EACnD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,oBAACA,YAAmB,QAApB;EAA2B,WAAU;YACnC,qBAACA,YAAmB,SAApB;GACE,aAAU;GACV,WAAW,GACT,8SACA,gDACA,SACF;GACA,GAAI;aAPN,CASG,UACD,oBAAC,iBAAD,EAAiB,WAAU,8GAA+G,CAAA,CAChH;;CACH,CAAA;AAE/B;;AAGA,SAAS,iBAAiB,EACxB,WACA,UACA,GAAG,SACuD;CAC1D,OACE,oBAACA,YAAmB,SAApB;EACE,aAAU;EACV,WAAU;EACV,GAAI;YAEJ,oBAAC,OAAD;GAAK,WAAW,GAAG,0DAA0D,SAAS;GACnF;EACE,CAAA;CACqB,CAAA;AAEhC"}
@@ -4,8 +4,8 @@ let react_jsx_runtime = require("react/jsx-runtime");
4
4
  //#region src/primitives/Alert/Alert.tsx
5
5
  const alertVariants = (0, require("class-variance-authority").cva)(require_cn.cn("relative flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-sm", "[&>svg]:order-1 [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:translate-y-0.5 [&>svg]:text-current", "data-[flip-icon=true]:[&>svg]:order-3"), {
6
6
  variants: { variant: {
7
- default: "bg-card text-card-foreground",
8
- destructive: "text-destructive bg-card [&_[data-slot=alert-description]]:text-destructive/90"
7
+ default: "bg-card text-foreground",
8
+ destructive: "text-destructive-foreground bg-card [&_[data-slot=alert-description]]:text-destructive-foreground"
9
9
  } },
10
10
  defaultVariants: { variant: "default" }
11
11
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["cn"],"sources":["../../../src/primitives/Alert/Alert.tsx"],"sourcesContent":["import { type VariantProps, cva } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"../../utils\";\n\nconst alertVariants = cva(\n cn(\n \"relative flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-sm\",\n \"[&>svg]:order-1 [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n // `flipIcon` moves the icon to the trailing edge (Figma \"Flip Icon\").\n \"data-[flip-icon=true]:[&>svg]:order-3\",\n ),\n {\n variants: {\n variant: {\n default: \"bg-card text-card-foreground\",\n destructive:\n \"text-destructive bg-card [&_[data-slot=alert-description]]:text-destructive/90\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\n/** Callout banner for surfacing contextual messages, statuses, and errors. */\nfunction Alert({\n className,\n variant,\n flipIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> &\n VariantProps<typeof alertVariants> & {\n /** Visual tone of the alert. */\n variant?: VariantProps<typeof alertVariants>[\"variant\"];\n /** Moves the leading icon to the trailing edge (Figma \"Flip Icon\"). */\n flipIcon?: boolean;\n }) {\n return (\n <div\n data-slot=\"alert\"\n data-flip-icon={flipIcon}\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\n/** Wraps the title + description so the icon and action can sit beside them. */\nfunction AlertContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-content\"\n className={cn(\"order-2 flex min-w-0 flex-1 flex-col gap-0.5\", className)}\n {...props}\n />\n );\n}\n\n/** Primary heading line of the alert. */\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"h5\">) {\n return (\n <h5\n data-slot=\"alert-title\"\n className={cn(\"min-h-4 font-medium tracking-tight\", className)}\n {...props}\n />\n );\n}\n\n/** Secondary supporting text shown beneath the title. */\nfunction AlertDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\"text-muted-foreground text-sm [&_p]:leading-relaxed\", className)}\n {...props}\n />\n );\n}\n\n/** Trailing action slot (Figma \"Show Button\"); always sits at the trailing edge. */\nfunction AlertAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-action\"\n className={cn(\"order-4 flex shrink-0 items-center self-center\", className)}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertTitle, AlertDescription, AlertContent, AlertAction };\n"],"mappings":";;;;AAKA,MAAM,iBAAA,qCAAA,EAAA,KACJA,WAAAA,GACE,8EACA,gGAEA,uCACF,GACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,aACE;CACJ,EACF;CACA,iBAAiB,EACf,SAAS,UACX;AACF,CACF;;AAGA,SAAS,MAAM,EACb,WACA,SACA,WAAW,OACX,GAAG,SAOA;CACH,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,kBAAgB;EAChB,MAAK;EACL,WAAWA,WAAAA,GAAG,cAAc,EAAE,QAAQ,CAAC,GAAG,SAAS;EACnD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;CAC1E,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,gDAAgD,SAAS;EACvE,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,WAAW,EAAE,WAAW,GAAG,SAAqC;CACvE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,sCAAsC,SAAS;EAC7D,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAsC;CAC9E,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,uDAAuD,SAAS;EAC9E,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;CACzE,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,kDAAkD,SAAS;EACzE,GAAI;CACL,CAAA;AAEL"}
1
+ {"version":3,"file":"index.cjs","names":["cn"],"sources":["../../../src/primitives/Alert/Alert.tsx"],"sourcesContent":["import { type VariantProps, cva } from \"class-variance-authority\";\nimport type * as React from \"react\";\n\nimport { cn } from \"../../utils\";\n\nconst alertVariants = cva(\n cn(\n \"relative flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-sm\",\n \"[&>svg]:order-1 [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:translate-y-0.5 [&>svg]:text-current\",\n // `flipIcon` moves the icon to the trailing edge (Figma \"Flip Icon\").\n \"data-[flip-icon=true]:[&>svg]:order-3\",\n ),\n {\n variants: {\n variant: {\n default: \"bg-card text-foreground\",\n destructive:\n \"text-destructive-foreground bg-card [&_[data-slot=alert-description]]:text-destructive-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\n/** Callout banner for surfacing contextual messages, statuses, and errors. */\nfunction Alert({\n className,\n variant,\n flipIcon = false,\n ...props\n}: React.ComponentProps<\"div\"> &\n VariantProps<typeof alertVariants> & {\n /** Visual tone of the alert. */\n variant?: VariantProps<typeof alertVariants>[\"variant\"];\n /** Moves the leading icon to the trailing edge (Figma \"Flip Icon\"). */\n flipIcon?: boolean;\n }) {\n return (\n <div\n data-slot=\"alert\"\n data-flip-icon={flipIcon}\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n );\n}\n\n/** Wraps the title + description so the icon and action can sit beside them. */\nfunction AlertContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-content\"\n className={cn(\"order-2 flex min-w-0 flex-1 flex-col gap-0.5\", className)}\n {...props}\n />\n );\n}\n\n/** Primary heading line of the alert. */\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"h5\">) {\n return (\n <h5\n data-slot=\"alert-title\"\n className={cn(\"min-h-4 font-medium tracking-tight\", className)}\n {...props}\n />\n );\n}\n\n/** Secondary supporting text shown beneath the title. */\nfunction AlertDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-description\"\n className={cn(\"text-muted-foreground text-sm [&_p]:leading-relaxed\", className)}\n {...props}\n />\n );\n}\n\n/** Trailing action slot (Figma \"Show Button\"); always sits at the trailing edge. */\nfunction AlertAction({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"alert-action\"\n className={cn(\"order-4 flex shrink-0 items-center self-center\", className)}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertTitle, AlertDescription, AlertContent, AlertAction };\n"],"mappings":";;;;AAKA,MAAM,iBAAA,qCAAA,EAAA,KACJA,WAAAA,GACE,8EACA,gGAEA,uCACF,GACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,aACE;CACJ,EACF;CACA,iBAAiB,EACf,SAAS,UACX;AACF,CACF;;AAGA,SAAS,MAAM,EACb,WACA,SACA,WAAW,OACX,GAAG,SAOA;CACH,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,kBAAgB;EAChB,MAAK;EACL,WAAWA,WAAAA,GAAG,cAAc,EAAE,QAAQ,CAAC,GAAG,SAAS;EACnD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAAsC;CAC1E,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,gDAAgD,SAAS;EACvE,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,WAAW,EAAE,WAAW,GAAG,SAAqC;CACvE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,sCAAsC,SAAS;EAC7D,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,iBAAiB,EAAE,WAAW,GAAG,SAAsC;CAC9E,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,uDAAuD,SAAS;EAC9E,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;CACzE,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,kDAAkD,SAAS;EACzE,GAAI;CACL,CAAA;AAEL"}
@@ -4,8 +4,8 @@ import { cva } from "class-variance-authority";
4
4
  //#region src/primitives/Alert/Alert.tsx
5
5
  const alertVariants = cva(cn("relative flex w-full items-start gap-3 rounded-lg border px-4 py-3 text-sm", "[&>svg]:order-1 [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:translate-y-0.5 [&>svg]:text-current", "data-[flip-icon=true]:[&>svg]:order-3"), {
6
6
  variants: { variant: {
7
- default: "bg-card text-card-foreground",
8
- destructive: "text-destructive bg-card [&_[data-slot=alert-description]]:text-destructive/90"
7
+ default: "bg-card text-foreground",
8
+ destructive: "text-destructive-foreground bg-card [&_[data-slot=alert-description]]:text-destructive-foreground"
9
9
  } },
10
10
  defaultVariants: { variant: "default" }
11
11
  });