@psnext/design-system 1.5.1 → 2.1.0

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 (646) hide show
  1. package/DESIGN.md +639 -0
  2. package/README.md +39 -2
  3. package/SKILL.md +101 -0
  4. package/bin/install-agent-skill.mjs +54 -0
  5. package/dist/Header.cjs +32 -29
  6. package/dist/Header.cjs.map +1 -1
  7. package/dist/Header.js +32 -29
  8. package/dist/Header.js.map +1 -1
  9. package/dist/Icon.cjs +19 -19
  10. package/dist/Icon.cjs.map +1 -1
  11. package/dist/Icon.js +19 -19
  12. package/dist/Icon.js.map +1 -1
  13. package/dist/Logo.cjs +4 -14
  14. package/dist/Logo.cjs.map +1 -1
  15. package/dist/Logo.js +4 -14
  16. package/dist/Logo.js.map +1 -1
  17. package/dist/Sidebar.cjs +26 -20
  18. package/dist/Sidebar.cjs.map +1 -1
  19. package/dist/Sidebar.js +21 -21
  20. package/dist/Sidebar.js.map +1 -1
  21. package/dist/cn.cjs +14 -1
  22. package/dist/cn.cjs.map +1 -1
  23. package/dist/cn.js +14 -1
  24. package/dist/cn.js.map +1 -1
  25. package/dist/index.cjs +13 -10
  26. package/dist/index.d.cts +5 -5
  27. package/dist/index.d.cts.map +1 -1
  28. package/dist/index.d.ts +5 -5
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +5 -4
  31. package/dist/index10.d.cts +4 -4
  32. package/dist/index10.d.cts.map +1 -1
  33. package/dist/index10.d.ts +7 -7
  34. package/dist/index11.d.cts +3 -3
  35. package/dist/index11.d.cts.map +1 -1
  36. package/dist/index11.d.ts +3 -3
  37. package/dist/index11.d.ts.map +1 -1
  38. package/dist/index12.d.cts +18 -17
  39. package/dist/index12.d.cts.map +1 -1
  40. package/dist/index12.d.ts +18 -17
  41. package/dist/index12.d.ts.map +1 -1
  42. package/dist/index13.d.cts +6 -6
  43. package/dist/index13.d.cts.map +1 -1
  44. package/dist/index13.d.ts +6 -6
  45. package/dist/index14.d.cts +5 -5
  46. package/dist/index14.d.cts.map +1 -1
  47. package/dist/index14.d.ts +5 -5
  48. package/dist/index14.d.ts.map +1 -1
  49. package/dist/index15.d.cts +3 -3
  50. package/dist/index15.d.cts.map +1 -1
  51. package/dist/index15.d.ts +3 -3
  52. package/dist/index15.d.ts.map +1 -1
  53. package/dist/index16.d.cts +2 -2
  54. package/dist/index16.d.cts.map +1 -1
  55. package/dist/index16.d.ts +2 -2
  56. package/dist/index17.d.cts +4 -4
  57. package/dist/index17.d.cts.map +1 -1
  58. package/dist/index17.d.ts +4 -4
  59. package/dist/index17.d.ts.map +1 -1
  60. package/dist/index18.d.cts +11 -11
  61. package/dist/index18.d.cts.map +1 -1
  62. package/dist/index18.d.ts +11 -11
  63. package/dist/index19.d.cts +10 -10
  64. package/dist/index19.d.cts.map +1 -1
  65. package/dist/index19.d.ts +10 -10
  66. package/dist/index19.d.ts.map +1 -1
  67. package/dist/index2.d.cts +8 -8
  68. package/dist/index2.d.cts.map +1 -1
  69. package/dist/index2.d.ts +8 -8
  70. package/dist/index2.d.ts.map +1 -1
  71. package/dist/index20.d.cts +16 -16
  72. package/dist/index20.d.cts.map +1 -1
  73. package/dist/index20.d.ts +16 -16
  74. package/dist/index20.d.ts.map +1 -1
  75. package/dist/index21.d.cts +4 -4
  76. package/dist/index21.d.cts.map +1 -1
  77. package/dist/index21.d.ts +4 -4
  78. package/dist/index22.d.cts +11 -11
  79. package/dist/index22.d.cts.map +1 -1
  80. package/dist/index22.d.ts +11 -11
  81. package/dist/index22.d.ts.map +1 -1
  82. package/dist/index23.d.cts +16 -16
  83. package/dist/index23.d.cts.map +1 -1
  84. package/dist/index23.d.ts +16 -16
  85. package/dist/index23.d.ts.map +1 -1
  86. package/dist/index24.d.cts +10 -10
  87. package/dist/index24.d.cts.map +1 -1
  88. package/dist/index24.d.ts +10 -10
  89. package/dist/index25.d.cts +2 -2
  90. package/dist/index25.d.ts +2 -2
  91. package/dist/index26.d.cts +13 -13
  92. package/dist/index26.d.ts +14 -14
  93. package/dist/index26.d.ts.map +1 -1
  94. package/dist/index27.d.cts +7 -7
  95. package/dist/index27.d.cts.map +1 -1
  96. package/dist/index27.d.ts +7 -7
  97. package/dist/index27.d.ts.map +1 -1
  98. package/dist/index28.d.cts +5 -5
  99. package/dist/index28.d.ts +5 -5
  100. package/dist/index28.d.ts.map +1 -1
  101. package/dist/index29.d.cts +4 -4
  102. package/dist/index29.d.ts +4 -4
  103. package/dist/index29.d.ts.map +1 -1
  104. package/dist/index3.d.cts +13 -13
  105. package/dist/index3.d.cts.map +1 -1
  106. package/dist/index3.d.ts +13 -13
  107. package/dist/index3.d.ts.map +1 -1
  108. package/dist/index30.d.cts +5 -5
  109. package/dist/index30.d.ts +5 -5
  110. package/dist/index31.d.cts +5 -5
  111. package/dist/index31.d.cts.map +1 -1
  112. package/dist/index31.d.ts +5 -5
  113. package/dist/index31.d.ts.map +1 -1
  114. package/dist/index32.d.cts +8 -5
  115. package/dist/index32.d.cts.map +1 -1
  116. package/dist/index32.d.ts +9 -6
  117. package/dist/index32.d.ts.map +1 -1
  118. package/dist/index33.d.cts +14 -10
  119. package/dist/index33.d.cts.map +1 -1
  120. package/dist/index33.d.ts +14 -10
  121. package/dist/index33.d.ts.map +1 -1
  122. package/dist/index34.d.cts +5 -5
  123. package/dist/index34.d.ts +5 -5
  124. package/dist/index35.d.cts +14 -14
  125. package/dist/index35.d.ts +16 -16
  126. package/dist/index35.d.ts.map +1 -1
  127. package/dist/index36.d.cts +3 -3
  128. package/dist/index36.d.cts.map +1 -1
  129. package/dist/index36.d.ts +3 -3
  130. package/dist/index36.d.ts.map +1 -1
  131. package/dist/index37.d.cts +5 -5
  132. package/dist/index37.d.cts.map +1 -1
  133. package/dist/index37.d.ts +4 -4
  134. package/dist/index37.d.ts.map +1 -1
  135. package/dist/index38.d.cts +2 -2
  136. package/dist/index38.d.ts +2 -2
  137. package/dist/index39.d.cts +17 -17
  138. package/dist/index39.d.cts.map +1 -1
  139. package/dist/index39.d.ts +17 -17
  140. package/dist/index39.d.ts.map +1 -1
  141. package/dist/index4.d.cts +2 -2
  142. package/dist/index4.d.cts.map +1 -1
  143. package/dist/index4.d.ts +2 -2
  144. package/dist/index4.d.ts.map +1 -1
  145. package/dist/index40.d.cts +4 -4
  146. package/dist/index40.d.ts +5 -5
  147. package/dist/index40.d.ts.map +1 -1
  148. package/dist/index41.d.cts +11 -11
  149. package/dist/index41.d.cts.map +1 -1
  150. package/dist/index41.d.ts +11 -11
  151. package/dist/index41.d.ts.map +1 -1
  152. package/dist/index42.d.cts +8 -8
  153. package/dist/index42.d.cts.map +1 -1
  154. package/dist/index42.d.ts +8 -8
  155. package/dist/index42.d.ts.map +1 -1
  156. package/dist/index43.d.cts +10 -10
  157. package/dist/index43.d.cts.map +1 -1
  158. package/dist/index43.d.ts +10 -10
  159. package/dist/index43.d.ts.map +1 -1
  160. package/dist/index44.d.cts +1 -48
  161. package/dist/index44.d.ts +1 -48
  162. package/dist/index45.d.cts +42 -22
  163. package/dist/index45.d.cts.map +1 -1
  164. package/dist/index45.d.ts +42 -22
  165. package/dist/index45.d.ts.map +1 -1
  166. package/dist/index46.d.cts +21 -34
  167. package/dist/index46.d.cts.map +1 -1
  168. package/dist/index46.d.ts +21 -34
  169. package/dist/index46.d.ts.map +1 -1
  170. package/dist/index47.d.cts +33 -17
  171. package/dist/index47.d.cts.map +1 -1
  172. package/dist/index47.d.ts +33 -17
  173. package/dist/index47.d.ts.map +1 -1
  174. package/dist/index48.d.cts +18 -14
  175. package/dist/index48.d.cts.map +1 -1
  176. package/dist/index48.d.ts +18 -14
  177. package/dist/index48.d.ts.map +1 -1
  178. package/dist/index49.d.cts +12 -60
  179. package/dist/index49.d.cts.map +1 -1
  180. package/dist/index49.d.ts +12 -60
  181. package/dist/index49.d.ts.map +1 -1
  182. package/dist/index5.d.cts +7 -7
  183. package/dist/index5.d.cts.map +1 -1
  184. package/dist/index5.d.ts +7 -7
  185. package/dist/index5.d.ts.map +1 -1
  186. package/dist/index50.d.cts +55 -49
  187. package/dist/index50.d.cts.map +1 -1
  188. package/dist/index50.d.ts +55 -49
  189. package/dist/index50.d.ts.map +1 -1
  190. package/dist/index51.d.cts +56 -24
  191. package/dist/index51.d.cts.map +1 -1
  192. package/dist/index51.d.ts +56 -24
  193. package/dist/index51.d.ts.map +1 -1
  194. package/dist/index52.d.cts +25 -203
  195. package/dist/index52.d.cts.map +1 -1
  196. package/dist/index52.d.ts +25 -203
  197. package/dist/index52.d.ts.map +1 -1
  198. package/dist/index53.d.cts +198 -15
  199. package/dist/index53.d.cts.map +1 -1
  200. package/dist/index53.d.ts +198 -15
  201. package/dist/index53.d.ts.map +1 -1
  202. package/dist/index54.d.cts +21 -23
  203. package/dist/index54.d.cts.map +1 -1
  204. package/dist/index54.d.ts +21 -23
  205. package/dist/index54.d.ts.map +1 -1
  206. package/dist/index55.d.cts +21 -18
  207. package/dist/index55.d.cts.map +1 -1
  208. package/dist/index55.d.ts +21 -18
  209. package/dist/index55.d.ts.map +1 -1
  210. package/dist/index56.d.cts +21 -8
  211. package/dist/index56.d.cts.map +1 -1
  212. package/dist/index56.d.ts +21 -8
  213. package/dist/index56.d.ts.map +1 -1
  214. package/dist/index57.d.cts +6 -44
  215. package/dist/index57.d.cts.map +1 -1
  216. package/dist/index57.d.ts +6 -44
  217. package/dist/index57.d.ts.map +1 -1
  218. package/dist/index58.d.cts +46 -47
  219. package/dist/index58.d.cts.map +1 -1
  220. package/dist/index58.d.ts +46 -47
  221. package/dist/index58.d.ts.map +1 -1
  222. package/dist/index59.d.cts +47 -59
  223. package/dist/index59.d.cts.map +1 -1
  224. package/dist/index59.d.ts +47 -59
  225. package/dist/index59.d.ts.map +1 -1
  226. package/dist/index6.d.cts +7 -7
  227. package/dist/index6.d.cts.map +1 -1
  228. package/dist/index6.d.ts +7 -7
  229. package/dist/index6.d.ts.map +1 -1
  230. package/dist/index60.d.cts +55 -37
  231. package/dist/index60.d.cts.map +1 -1
  232. package/dist/index60.d.ts +56 -38
  233. package/dist/index60.d.ts.map +1 -1
  234. package/dist/index61.d.cts +38 -14
  235. package/dist/index61.d.cts.map +1 -1
  236. package/dist/index61.d.ts +38 -14
  237. package/dist/index61.d.ts.map +1 -1
  238. package/dist/index62.d.cts +20 -41
  239. package/dist/index62.d.cts.map +1 -1
  240. package/dist/index62.d.ts +20 -41
  241. package/dist/index62.d.ts.map +1 -1
  242. package/dist/index63.d.cts +41 -19
  243. package/dist/index63.d.cts.map +1 -1
  244. package/dist/index63.d.ts +41 -19
  245. package/dist/index63.d.ts.map +1 -1
  246. package/dist/index64.d.cts +14 -39
  247. package/dist/index64.d.cts.map +1 -1
  248. package/dist/index64.d.ts +14 -39
  249. package/dist/index64.d.ts.map +1 -1
  250. package/dist/index65.d.cts +39 -16
  251. package/dist/index65.d.cts.map +1 -1
  252. package/dist/index65.d.ts +39 -16
  253. package/dist/index65.d.ts.map +1 -1
  254. package/dist/index66.d.cts +18 -12
  255. package/dist/index66.d.cts.map +1 -1
  256. package/dist/index66.d.ts +18 -12
  257. package/dist/index66.d.ts.map +1 -1
  258. package/dist/index67.d.cts +12 -30
  259. package/dist/index67.d.cts.map +1 -1
  260. package/dist/index67.d.ts +12 -30
  261. package/dist/index67.d.ts.map +1 -1
  262. package/dist/index68.d.cts +26 -25
  263. package/dist/index68.d.cts.map +1 -1
  264. package/dist/index68.d.ts +28 -27
  265. package/dist/index68.d.ts.map +1 -1
  266. package/dist/index69.d.cts +36 -69
  267. package/dist/index69.d.cts.map +1 -0
  268. package/dist/index69.d.ts +36 -69
  269. package/dist/index69.d.ts.map +1 -0
  270. package/dist/index7.d.cts +8 -8
  271. package/dist/index7.d.cts.map +1 -1
  272. package/dist/index7.d.ts +8 -8
  273. package/dist/index70.d.cts +76 -237
  274. package/dist/index70.d.cts.map +1 -1
  275. package/dist/index70.d.ts +76 -237
  276. package/dist/index70.d.ts.map +1 -1
  277. package/dist/index71.d.cts +249 -0
  278. package/dist/index71.d.cts.map +1 -0
  279. package/dist/index71.d.ts +249 -0
  280. package/dist/index71.d.ts.map +1 -0
  281. package/dist/index8.d.cts +4 -4
  282. package/dist/index8.d.cts.map +1 -1
  283. package/dist/index8.d.ts +4 -4
  284. package/dist/index8.d.ts.map +1 -1
  285. package/dist/index9.d.cts +2 -2
  286. package/dist/index9.d.cts.map +1 -1
  287. package/dist/index9.d.ts +2 -2
  288. package/dist/layouts/Container/index.cjs +4 -4
  289. package/dist/layouts/Container/index.cjs.map +1 -1
  290. package/dist/layouts/Container/index.d.cts +1 -1
  291. package/dist/layouts/Container/index.d.ts +1 -1
  292. package/dist/layouts/Container/index.js +4 -4
  293. package/dist/layouts/Container/index.js.map +1 -1
  294. package/dist/layouts/PageBackground/index.cjs +2 -2
  295. package/dist/layouts/PageBackground/index.cjs.map +1 -1
  296. package/dist/layouts/PageBackground/index.d.cts +1 -1
  297. package/dist/layouts/PageBackground/index.d.ts +1 -1
  298. package/dist/layouts/PageBackground/index.js +2 -2
  299. package/dist/layouts/PageBackground/index.js.map +1 -1
  300. package/dist/layouts/Stack/index.d.cts +1 -1
  301. package/dist/layouts/Stack/index.d.ts +1 -1
  302. package/dist/layouts/TwoColumn/index.d.cts +1 -1
  303. package/dist/layouts/TwoColumn/index.d.ts +1 -1
  304. package/dist/layouts/index.d.cts +4 -4
  305. package/dist/layouts/index.d.ts +4 -4
  306. package/dist/patterns/DataTable/index.cjs +12 -7
  307. package/dist/patterns/DataTable/index.cjs.map +1 -1
  308. package/dist/patterns/DataTable/index.d.cts +3 -3
  309. package/dist/patterns/DataTable/index.d.cts.map +1 -1
  310. package/dist/patterns/DataTable/index.d.ts +3 -3
  311. package/dist/patterns/DataTable/index.d.ts.map +1 -1
  312. package/dist/patterns/DataTable/index.js +12 -7
  313. package/dist/patterns/DataTable/index.js.map +1 -1
  314. package/dist/patterns/Footer/index.cjs +5 -5
  315. package/dist/patterns/Footer/index.cjs.map +1 -1
  316. package/dist/patterns/Footer/index.d.cts +9 -9
  317. package/dist/patterns/Footer/index.d.cts.map +1 -1
  318. package/dist/patterns/Footer/index.d.ts +9 -9
  319. package/dist/patterns/Footer/index.d.ts.map +1 -1
  320. package/dist/patterns/Footer/index.js +5 -5
  321. package/dist/patterns/Footer/index.js.map +1 -1
  322. package/dist/patterns/Header/index.d.cts +1 -1
  323. package/dist/patterns/Header/index.d.ts +1 -1
  324. package/dist/patterns/MediaObject/index.cjs +1 -1
  325. package/dist/patterns/MediaObject/index.cjs.map +1 -1
  326. package/dist/patterns/MediaObject/index.d.cts +13 -13
  327. package/dist/patterns/MediaObject/index.d.cts.map +1 -1
  328. package/dist/patterns/MediaObject/index.d.ts +10 -10
  329. package/dist/patterns/MediaObject/index.js +1 -1
  330. package/dist/patterns/MediaObject/index.js.map +1 -1
  331. package/dist/patterns/NavRail/index.cjs +195 -0
  332. package/dist/patterns/NavRail/index.cjs.map +1 -0
  333. package/dist/patterns/NavRail/index.d.cts +2 -0
  334. package/dist/patterns/NavRail/index.d.ts +2 -0
  335. package/dist/patterns/NavRail/index.js +185 -0
  336. package/dist/patterns/NavRail/index.js.map +1 -0
  337. package/dist/patterns/SectionCard/index.cjs +1 -1
  338. package/dist/patterns/SectionCard/index.cjs.map +1 -1
  339. package/dist/patterns/SectionCard/index.d.cts +2 -2
  340. package/dist/patterns/SectionCard/index.d.cts.map +1 -1
  341. package/dist/patterns/SectionCard/index.d.ts +2 -2
  342. package/dist/patterns/SectionCard/index.d.ts.map +1 -1
  343. package/dist/patterns/SectionCard/index.js +1 -1
  344. package/dist/patterns/SectionCard/index.js.map +1 -1
  345. package/dist/patterns/SectionHeading/index.d.cts +2 -2
  346. package/dist/patterns/SectionHeading/index.d.cts.map +1 -1
  347. package/dist/patterns/SectionHeading/index.d.ts +2 -2
  348. package/dist/patterns/SectionHeading/index.d.ts.map +1 -1
  349. package/dist/patterns/index.cjs +9 -0
  350. package/dist/patterns/index.d.cts +3 -2
  351. package/dist/patterns/index.d.ts +3 -2
  352. package/dist/patterns/index.js +2 -1
  353. package/dist/primitives/Accordion/index.cjs +6 -6
  354. package/dist/primitives/Accordion/index.cjs.map +1 -1
  355. package/dist/primitives/Accordion/index.js +6 -6
  356. package/dist/primitives/Accordion/index.js.map +1 -1
  357. package/dist/primitives/Alert/index.cjs +4 -4
  358. package/dist/primitives/Alert/index.cjs.map +1 -1
  359. package/dist/primitives/Alert/index.js +4 -4
  360. package/dist/primitives/Alert/index.js.map +1 -1
  361. package/dist/primitives/AlertDialog/index.cjs +4 -4
  362. package/dist/primitives/AlertDialog/index.cjs.map +1 -1
  363. package/dist/primitives/AlertDialog/index.js +4 -4
  364. package/dist/primitives/AlertDialog/index.js.map +1 -1
  365. package/dist/primitives/Avatar/index.cjs +5 -5
  366. package/dist/primitives/Avatar/index.cjs.map +1 -1
  367. package/dist/primitives/Avatar/index.js +5 -5
  368. package/dist/primitives/Avatar/index.js.map +1 -1
  369. package/dist/primitives/Badge/index.cjs +11 -10
  370. package/dist/primitives/Badge/index.cjs.map +1 -1
  371. package/dist/primitives/Badge/index.js +11 -10
  372. package/dist/primitives/Badge/index.js.map +1 -1
  373. package/dist/primitives/Breadcrumb/index.cjs +4 -4
  374. package/dist/primitives/Breadcrumb/index.cjs.map +1 -1
  375. package/dist/primitives/Breadcrumb/index.js +4 -4
  376. package/dist/primitives/Breadcrumb/index.js.map +1 -1
  377. package/dist/primitives/Button/index.cjs +20 -13
  378. package/dist/primitives/Button/index.cjs.map +1 -1
  379. package/dist/primitives/Button/index.js +20 -13
  380. package/dist/primitives/Button/index.js.map +1 -1
  381. package/dist/primitives/ButtonGroup/index.cjs +3 -3
  382. package/dist/primitives/ButtonGroup/index.cjs.map +1 -1
  383. package/dist/primitives/ButtonGroup/index.js +3 -3
  384. package/dist/primitives/ButtonGroup/index.js.map +1 -1
  385. package/dist/primitives/Calendar/index.cjs +22 -21
  386. package/dist/primitives/Calendar/index.cjs.map +1 -1
  387. package/dist/primitives/Calendar/index.js +22 -21
  388. package/dist/primitives/Calendar/index.js.map +1 -1
  389. package/dist/primitives/Card/index.cjs +18 -16
  390. package/dist/primitives/Card/index.cjs.map +1 -1
  391. package/dist/primitives/Card/index.js +18 -16
  392. package/dist/primitives/Card/index.js.map +1 -1
  393. package/dist/primitives/Carousel/index.cjs +2 -2
  394. package/dist/primitives/Carousel/index.cjs.map +1 -1
  395. package/dist/primitives/Carousel/index.js +2 -2
  396. package/dist/primitives/Carousel/index.js.map +1 -1
  397. package/dist/primitives/Chart/index.cjs +12 -12
  398. package/dist/primitives/Chart/index.cjs.map +1 -1
  399. package/dist/primitives/Chart/index.js +12 -12
  400. package/dist/primitives/Chart/index.js.map +1 -1
  401. package/dist/primitives/Checkbox/index.cjs +6 -6
  402. package/dist/primitives/Checkbox/index.cjs.map +1 -1
  403. package/dist/primitives/Checkbox/index.js +6 -6
  404. package/dist/primitives/Checkbox/index.js.map +1 -1
  405. package/dist/primitives/CheckboxTree/index.cjs +2 -2
  406. package/dist/primitives/CheckboxTree/index.cjs.map +1 -1
  407. package/dist/primitives/CheckboxTree/index.js +2 -2
  408. package/dist/primitives/CheckboxTree/index.js.map +1 -1
  409. package/dist/primitives/Command/index.cjs +9 -9
  410. package/dist/primitives/Command/index.cjs.map +1 -1
  411. package/dist/primitives/Command/index.js +9 -9
  412. package/dist/primitives/Command/index.js.map +1 -1
  413. package/dist/primitives/ContextMenu/index.cjs +10 -10
  414. package/dist/primitives/ContextMenu/index.cjs.map +1 -1
  415. package/dist/primitives/ContextMenu/index.js +10 -10
  416. package/dist/primitives/ContextMenu/index.js.map +1 -1
  417. package/dist/primitives/Credits/index.cjs +4 -4
  418. package/dist/primitives/Credits/index.cjs.map +1 -1
  419. package/dist/primitives/Credits/index.js +4 -4
  420. package/dist/primitives/Credits/index.js.map +1 -1
  421. package/dist/primitives/Dialog/index.cjs +5 -5
  422. package/dist/primitives/Dialog/index.cjs.map +1 -1
  423. package/dist/primitives/Dialog/index.js +5 -5
  424. package/dist/primitives/Dialog/index.js.map +1 -1
  425. package/dist/primitives/Drawer/index.cjs +5 -5
  426. package/dist/primitives/Drawer/index.cjs.map +1 -1
  427. package/dist/primitives/Drawer/index.js +5 -5
  428. package/dist/primitives/Drawer/index.js.map +1 -1
  429. package/dist/primitives/DropdownMenu/index.cjs +9 -9
  430. package/dist/primitives/DropdownMenu/index.cjs.map +1 -1
  431. package/dist/primitives/DropdownMenu/index.js +9 -9
  432. package/dist/primitives/DropdownMenu/index.js.map +1 -1
  433. package/dist/primitives/Empty/index.cjs +4 -4
  434. package/dist/primitives/Empty/index.cjs.map +1 -1
  435. package/dist/primitives/Empty/index.js +4 -4
  436. package/dist/primitives/Empty/index.js.map +1 -1
  437. package/dist/primitives/Field/index.cjs +5 -5
  438. package/dist/primitives/Field/index.cjs.map +1 -1
  439. package/dist/primitives/Field/index.js +5 -5
  440. package/dist/primitives/Field/index.js.map +1 -1
  441. package/dist/primitives/Form/index.cjs +1 -1
  442. package/dist/primitives/Form/index.cjs.map +1 -1
  443. package/dist/primitives/Form/index.js +1 -1
  444. package/dist/primitives/Form/index.js.map +1 -1
  445. package/dist/primitives/Heading/index.cjs +2 -2
  446. package/dist/primitives/Heading/index.cjs.map +1 -1
  447. package/dist/primitives/Heading/index.js +2 -2
  448. package/dist/primitives/Heading/index.js.map +1 -1
  449. package/dist/primitives/HoverCard/index.cjs +1 -1
  450. package/dist/primitives/HoverCard/index.cjs.map +1 -1
  451. package/dist/primitives/HoverCard/index.js +1 -1
  452. package/dist/primitives/HoverCard/index.js.map +1 -1
  453. package/dist/primitives/InfoBanner/index.cjs +12 -12
  454. package/dist/primitives/InfoBanner/index.cjs.map +1 -1
  455. package/dist/primitives/InfoBanner/index.js +12 -12
  456. package/dist/primitives/InfoBanner/index.js.map +1 -1
  457. package/dist/primitives/Input/index.cjs +13 -7
  458. package/dist/primitives/Input/index.cjs.map +1 -1
  459. package/dist/primitives/Input/index.js +13 -7
  460. package/dist/primitives/Input/index.js.map +1 -1
  461. package/dist/primitives/InputGroup/index.cjs +7 -7
  462. package/dist/primitives/InputGroup/index.cjs.map +1 -1
  463. package/dist/primitives/InputGroup/index.js +7 -7
  464. package/dist/primitives/InputGroup/index.js.map +1 -1
  465. package/dist/primitives/InputOtp/index.cjs +3 -3
  466. package/dist/primitives/InputOtp/index.cjs.map +1 -1
  467. package/dist/primitives/InputOtp/index.js +3 -3
  468. package/dist/primitives/InputOtp/index.js.map +1 -1
  469. package/dist/primitives/Item/index.cjs +6 -6
  470. package/dist/primitives/Item/index.cjs.map +1 -1
  471. package/dist/primitives/Item/index.js +6 -6
  472. package/dist/primitives/Item/index.js.map +1 -1
  473. package/dist/primitives/Kbd/index.cjs +1 -1
  474. package/dist/primitives/Kbd/index.cjs.map +1 -1
  475. package/dist/primitives/Kbd/index.js +1 -1
  476. package/dist/primitives/Kbd/index.js.map +1 -1
  477. package/dist/primitives/Link/index.cjs +4 -4
  478. package/dist/primitives/Link/index.cjs.map +1 -1
  479. package/dist/primitives/Link/index.js +4 -4
  480. package/dist/primitives/Link/index.js.map +1 -1
  481. package/dist/primitives/Menubar/index.cjs +12 -12
  482. package/dist/primitives/Menubar/index.cjs.map +1 -1
  483. package/dist/primitives/Menubar/index.js +12 -12
  484. package/dist/primitives/Menubar/index.js.map +1 -1
  485. package/dist/primitives/NativeSelect/index.cjs +5 -5
  486. package/dist/primitives/NativeSelect/index.cjs.map +1 -1
  487. package/dist/primitives/NativeSelect/index.js +5 -5
  488. package/dist/primitives/NativeSelect/index.js.map +1 -1
  489. package/dist/primitives/NavRail/index.cjs +9 -194
  490. package/dist/primitives/NavRail/index.d.cts +1 -0
  491. package/dist/primitives/NavRail/index.d.ts +1 -0
  492. package/dist/primitives/NavRail/index.js +1 -184
  493. package/dist/primitives/NavigationMenu/index.cjs +7 -7
  494. package/dist/primitives/NavigationMenu/index.cjs.map +1 -1
  495. package/dist/primitives/NavigationMenu/index.js +7 -7
  496. package/dist/primitives/NavigationMenu/index.js.map +1 -1
  497. package/dist/primitives/Pagination/index.cjs +7 -13
  498. package/dist/primitives/Pagination/index.cjs.map +1 -1
  499. package/dist/primitives/Pagination/index.d.cts +1 -1
  500. package/dist/primitives/Pagination/index.d.ts +1 -1
  501. package/dist/primitives/Pagination/index.js +8 -14
  502. package/dist/primitives/Pagination/index.js.map +1 -1
  503. package/dist/primitives/Popover/index.cjs +4 -4
  504. package/dist/primitives/Popover/index.cjs.map +1 -1
  505. package/dist/primitives/Popover/index.js +4 -4
  506. package/dist/primitives/Popover/index.js.map +1 -1
  507. package/dist/primitives/Progress/index.cjs +16 -16
  508. package/dist/primitives/Progress/index.cjs.map +1 -1
  509. package/dist/primitives/Progress/index.d.cts +1 -1
  510. package/dist/primitives/Progress/index.d.ts +1 -1
  511. package/dist/primitives/Progress/index.js +16 -16
  512. package/dist/primitives/Progress/index.js.map +1 -1
  513. package/dist/primitives/RadioGroup/index.cjs +7 -7
  514. package/dist/primitives/RadioGroup/index.cjs.map +1 -1
  515. package/dist/primitives/RadioGroup/index.d.cts +1 -1
  516. package/dist/primitives/RadioGroup/index.d.ts +1 -1
  517. package/dist/primitives/RadioGroup/index.js +7 -7
  518. package/dist/primitives/RadioGroup/index.js.map +1 -1
  519. package/dist/primitives/Resizable/index.cjs +2 -2
  520. package/dist/primitives/Resizable/index.cjs.map +1 -1
  521. package/dist/primitives/Resizable/index.d.cts +1 -1
  522. package/dist/primitives/Resizable/index.d.ts +1 -1
  523. package/dist/primitives/Resizable/index.js +2 -2
  524. package/dist/primitives/Resizable/index.js.map +1 -1
  525. package/dist/primitives/ScrollArea/index.cjs +2 -2
  526. package/dist/primitives/ScrollArea/index.cjs.map +1 -1
  527. package/dist/primitives/ScrollArea/index.d.cts +1 -1
  528. package/dist/primitives/ScrollArea/index.d.ts +1 -1
  529. package/dist/primitives/ScrollArea/index.js +2 -2
  530. package/dist/primitives/ScrollArea/index.js.map +1 -1
  531. package/dist/primitives/Select/index.cjs +8 -8
  532. package/dist/primitives/Select/index.cjs.map +1 -1
  533. package/dist/primitives/Select/index.d.cts +1 -1
  534. package/dist/primitives/Select/index.d.ts +1 -1
  535. package/dist/primitives/Select/index.js +8 -8
  536. package/dist/primitives/Select/index.js.map +1 -1
  537. package/dist/primitives/Separator/index.cjs +1 -1
  538. package/dist/primitives/Separator/index.cjs.map +1 -1
  539. package/dist/primitives/Separator/index.js +1 -1
  540. package/dist/primitives/Separator/index.js.map +1 -1
  541. package/dist/primitives/Sheet/index.cjs +8 -8
  542. package/dist/primitives/Sheet/index.cjs.map +1 -1
  543. package/dist/primitives/Sheet/index.d.cts +1 -1
  544. package/dist/primitives/Sheet/index.d.ts +1 -1
  545. package/dist/primitives/Sheet/index.js +8 -8
  546. package/dist/primitives/Sheet/index.js.map +1 -1
  547. package/dist/primitives/Sidebar/index.d.cts +1 -1
  548. package/dist/primitives/Sidebar/index.d.ts +1 -1
  549. package/dist/primitives/Skeleton/index.cjs +2 -2
  550. package/dist/primitives/Skeleton/index.cjs.map +1 -1
  551. package/dist/primitives/Skeleton/index.d.cts +1 -1
  552. package/dist/primitives/Skeleton/index.d.ts +1 -1
  553. package/dist/primitives/Skeleton/index.js +2 -2
  554. package/dist/primitives/Skeleton/index.js.map +1 -1
  555. package/dist/primitives/Slider/index.cjs +3 -3
  556. package/dist/primitives/Slider/index.cjs.map +1 -1
  557. package/dist/primitives/Slider/index.d.cts +1 -1
  558. package/dist/primitives/Slider/index.d.ts +1 -1
  559. package/dist/primitives/Slider/index.js +3 -3
  560. package/dist/primitives/Slider/index.js.map +1 -1
  561. package/dist/primitives/Sonner/index.cjs +13 -6
  562. package/dist/primitives/Sonner/index.cjs.map +1 -1
  563. package/dist/primitives/Sonner/index.d.cts +1 -1
  564. package/dist/primitives/Sonner/index.d.ts +1 -1
  565. package/dist/primitives/Sonner/index.js +13 -6
  566. package/dist/primitives/Sonner/index.js.map +1 -1
  567. package/dist/primitives/Spinner/index.d.cts +1 -1
  568. package/dist/primitives/Spinner/index.d.ts +1 -1
  569. package/dist/primitives/Switch/index.cjs +7 -7
  570. package/dist/primitives/Switch/index.cjs.map +1 -1
  571. package/dist/primitives/Switch/index.d.cts +1 -1
  572. package/dist/primitives/Switch/index.d.ts +1 -1
  573. package/dist/primitives/Switch/index.js +7 -7
  574. package/dist/primitives/Switch/index.js.map +1 -1
  575. package/dist/primitives/Table/index.cjs +7 -7
  576. package/dist/primitives/Table/index.cjs.map +1 -1
  577. package/dist/primitives/Table/index.d.cts +1 -1
  578. package/dist/primitives/Table/index.d.ts +1 -1
  579. package/dist/primitives/Table/index.js +7 -7
  580. package/dist/primitives/Table/index.js.map +1 -1
  581. package/dist/primitives/Tabs/index.cjs +21 -21
  582. package/dist/primitives/Tabs/index.cjs.map +1 -1
  583. package/dist/primitives/Tabs/index.d.cts +1 -1
  584. package/dist/primitives/Tabs/index.d.ts +1 -1
  585. package/dist/primitives/Tabs/index.js +21 -21
  586. package/dist/primitives/Tabs/index.js.map +1 -1
  587. package/dist/primitives/Text/index.cjs +5 -5
  588. package/dist/primitives/Text/index.cjs.map +1 -1
  589. package/dist/primitives/Text/index.d.cts +1 -1
  590. package/dist/primitives/Text/index.d.ts +1 -1
  591. package/dist/primitives/Text/index.js +5 -5
  592. package/dist/primitives/Text/index.js.map +1 -1
  593. package/dist/primitives/Textarea/index.cjs +20 -8
  594. package/dist/primitives/Textarea/index.cjs.map +1 -1
  595. package/dist/primitives/Textarea/index.d.cts +1 -1
  596. package/dist/primitives/Textarea/index.d.ts +1 -1
  597. package/dist/primitives/Textarea/index.js +20 -8
  598. package/dist/primitives/Textarea/index.js.map +1 -1
  599. package/dist/primitives/ThemeProvider/index.d.cts +1 -1
  600. package/dist/primitives/ThemeProvider/index.d.ts +1 -1
  601. package/dist/primitives/Toggle/index.cjs +11 -10
  602. package/dist/primitives/Toggle/index.cjs.map +1 -1
  603. package/dist/primitives/Toggle/index.d.cts +1 -1
  604. package/dist/primitives/Toggle/index.d.ts +1 -1
  605. package/dist/primitives/Toggle/index.js +11 -10
  606. package/dist/primitives/Toggle/index.js.map +1 -1
  607. package/dist/primitives/ToggleGroup/index.cjs +2 -2
  608. package/dist/primitives/ToggleGroup/index.cjs.map +1 -1
  609. package/dist/primitives/ToggleGroup/index.d.cts +1 -1
  610. package/dist/primitives/ToggleGroup/index.d.ts +1 -1
  611. package/dist/primitives/ToggleGroup/index.js +2 -2
  612. package/dist/primitives/ToggleGroup/index.js.map +1 -1
  613. package/dist/primitives/Tooltip/index.cjs +2 -2
  614. package/dist/primitives/Tooltip/index.cjs.map +1 -1
  615. package/dist/primitives/Tooltip/index.d.cts +1 -1
  616. package/dist/primitives/Tooltip/index.d.ts +1 -1
  617. package/dist/primitives/Tooltip/index.js +2 -2
  618. package/dist/primitives/Tooltip/index.js.map +1 -1
  619. package/dist/primitives/index.cjs +10 -10
  620. package/dist/primitives/index.d.cts +21 -21
  621. package/dist/primitives/index.d.ts +21 -21
  622. package/dist/primitives/index.js +2 -2
  623. package/dist/styles/base.css +23 -4
  624. package/dist/styles/brand-scopes.css +49 -0
  625. package/dist/styles/glass.css +13 -8
  626. package/dist/styles/index.css +8 -9
  627. package/dist/styles/theme.css +141 -90
  628. package/dist/styles/tokens/border-radius.css +8 -8
  629. package/dist/styles/tokens/mode-dark.css +71 -94
  630. package/dist/styles/tokens/mode-light.css +71 -94
  631. package/dist/styles/tokens/shadows.css +4 -7
  632. package/dist/styles/tokens/spacing.css +17 -37
  633. package/dist/styles/tokens/theme-bodhi.css +6 -28
  634. package/dist/styles/tokens/theme-slingshot.css +7 -28
  635. package/dist/styles/tokens/theme-sustain.css +6 -28
  636. package/dist/styles/typography.css +9 -9
  637. package/package.json +8 -2
  638. package/dist/index44.d.cts.map +0 -1
  639. package/dist/index44.d.ts.map +0 -1
  640. package/dist/primitives/NavRail/index.cjs.map +0 -1
  641. package/dist/primitives/NavRail/index.js.map +0 -1
  642. package/dist/styles/semantic.css +0 -178
  643. package/dist/styles/tokens/alpha.css +0 -39
  644. package/dist/styles/tokens/chart-colors-dark.css +0 -18
  645. package/dist/styles/tokens/chart-colors-light.css +0 -18
  646. package/dist/styles/tokens/colors.css +0 -251
@@ -9,9 +9,9 @@ import { Toaster as Toaster$1 } from "sonner";
9
9
  * `next-themes`, so the DS does not couple to any particular theme provider —
10
10
  * consuming apps pass their resolved theme explicitly.
11
11
  *
12
- * Per-severity colors map Sonner's rich-color CSS variables to our tokens, so
13
- * `toast.error/success/warning/info(...)` adopt the tokenized palette and react
14
- * to light/dark + brand switching. Severity icons are provided here.
12
+ * Per-severity colors are applied through `data-[type=…]` classes on the toast,
13
+ * so `toast.error/success/warning/info(...)` adopt the tokenized palette and
14
+ * react to light/dark + brand switching. Severity icons are provided here.
15
15
  */
16
16
  const Toaster = ({ theme = "system", position = "top-center", closeButton = true, ...props }) => {
17
17
  return /* @__PURE__ */ jsx(Toaster$1, {
@@ -20,6 +20,13 @@ const Toaster = ({ theme = "system", position = "top-center", closeButton = true
20
20
  closeButton,
21
21
  richColors: true,
22
22
  className: "toaster group",
23
+ toastOptions: { classNames: {
24
+ toast: "group/toast !rounded-10 !border-primary-border !bg-glass-none-bg !p-4 !shadow-sm !gap-3 !text-primary-txt data-[type=info]:!bg-info-bg data-[type=info]:!border-info-border data-[type=info]:!text-info-txt data-[type=success]:!bg-success-bg data-[type=success]:!border-success-border data-[type=success]:!text-success-txt data-[type=warning]:!bg-warning-bg data-[type=warning]:!border-warning-border data-[type=warning]:!text-warning-txt data-[type=error]:!bg-danger-bg data-[type=error]:!border-danger-border data-[type=error]:!text-danger-txt",
25
+ title: "!text-sm !leading-5 !font-medium !text-current",
26
+ description: "!text-sm !leading-5 !font-normal !text-muted-txt group-data-[type=info]/toast:!text-info-txt group-data-[type=success]/toast:!text-success-txt group-data-[type=warning]/toast:!text-warning-txt group-data-[type=error]/toast:!text-danger-txt",
27
+ actionButton: "!min-h-6 !rounded-8 !bg-secondary-bg !px-4 !py-0.75 !text-xs !leading-4 !text-primary-txt",
28
+ cancelButton: "!min-h-6 !rounded-8 !bg-ghost-bg !px-4 !py-0.75 !text-xs !leading-4 !text-primary-txt"
29
+ } },
23
30
  icons: {
24
31
  success: /* @__PURE__ */ jsx(CircleCheckIcon, { className: "size-4" }),
25
32
  info: /* @__PURE__ */ jsx(InfoIcon, { className: "size-4" }),
@@ -28,9 +35,9 @@ const Toaster = ({ theme = "system", position = "top-center", closeButton = true
28
35
  loading: /* @__PURE__ */ jsx(Loader2Icon, { className: "size-4 animate-spin" })
29
36
  },
30
37
  style: {
31
- "--normal-bg": "var(--popover)",
32
- "--normal-text": "var(--foreground)",
33
- "--normal-border": "var(--border)"
38
+ "--normal-bg": "var(--glass-none-bg)",
39
+ "--normal-text": "var(--primary-txt)",
40
+ "--normal-border": "var(--primary-border)"
34
41
  },
35
42
  ...props
36
43
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Sonner"],"sources":["../../../src/primitives/Sonner/Sonner.tsx"],"sourcesContent":["import {\n CircleCheckIcon,\n InfoIcon,\n Loader2Icon,\n OctagonXIcon,\n TriangleAlertIcon,\n} from \"lucide-react\";\nimport { Toaster as Sonner, type ToasterProps } from \"sonner\";\n\n/**\n * Toaster wired to the design-system tokens.\n *\n * Theme is accepted as a prop (default \"system\") instead of being read from\n * `next-themes`, so the DS does not couple to any particular theme provider —\n * consuming apps pass their resolved theme explicitly.\n *\n * Per-severity colors map Sonner's rich-color CSS variables to our tokens, so\n * `toast.error/success/warning/info(...)` adopt the tokenized palette and react\n * to light/dark + brand switching. Severity icons are provided here.\n */\nconst Toaster = ({\n /** Resolved color scheme for the toasts; pass your app's theme explicitly. */\n theme = \"system\",\n /** Screen corner/edge where toasts are anchored. */\n position = \"top-center\",\n /** Whether each toast renders a dismiss (close) button. */\n closeButton = true,\n ...props\n}: ToasterProps) => {\n return (\n <Sonner\n theme={theme}\n position={position}\n closeButton={closeButton}\n richColors\n className=\"toaster group\"\n icons={{\n success: <CircleCheckIcon className=\"size-4\" />,\n info: <InfoIcon className=\"size-4\" />,\n warning: <TriangleAlertIcon className=\"size-4\" />,\n error: <OctagonXIcon className=\"size-4\" />,\n loading: <Loader2Icon className=\"size-4 animate-spin\" />,\n }}\n style={\n {\n \"--normal-bg\": \"var(--popover)\",\n \"--normal-text\": \"var(--foreground)\",\n \"--normal-border\": \"var(--border)\",\n } as React.CSSProperties\n }\n {...props}\n />\n );\n};\n\nexport { Toaster };\n"],"mappings":";;;;;;;;;;;;;;;AAoBA,MAAM,WAAW,EAEf,QAAQ,UAER,WAAW,cAEX,cAAc,MACd,GAAG,YACe;CAClB,OACE,oBAACA,WAAD;EACS;EACG;EACG;EACb,YAAA;EACA,WAAU;EACV,OAAO;GACL,SAAS,oBAAC,iBAAD,EAAiB,WAAU,SAAU,CAAA;GAC9C,MAAM,oBAAC,UAAD,EAAU,WAAU,SAAU,CAAA;GACpC,SAAS,oBAAC,mBAAD,EAAmB,WAAU,SAAU,CAAA;GAChD,OAAO,oBAAC,cAAD,EAAc,WAAU,SAAU,CAAA;GACzC,SAAS,oBAAC,aAAD,EAAa,WAAU,sBAAuB,CAAA;EACzD;EACA,OACE;GACE,eAAe;GACf,iBAAiB;GACjB,mBAAmB;EACrB;EAEF,GAAI;CACL,CAAA;AAEL"}
1
+ {"version":3,"file":"index.js","names":["Sonner"],"sources":["../../../src/primitives/Sonner/Sonner.tsx"],"sourcesContent":["import {\n CircleCheckIcon,\n InfoIcon,\n Loader2Icon,\n OctagonXIcon,\n TriangleAlertIcon,\n} from \"lucide-react\";\nimport { Toaster as Sonner, type ToasterProps } from \"sonner\";\n\n/**\n * Toaster wired to the design-system tokens.\n *\n * Theme is accepted as a prop (default \"system\") instead of being read from\n * `next-themes`, so the DS does not couple to any particular theme provider —\n * consuming apps pass their resolved theme explicitly.\n *\n * Per-severity colors are applied through `data-[type=…]` classes on the toast,\n * so `toast.error/success/warning/info(...)` adopt the tokenized palette and\n * react to light/dark + brand switching. Severity icons are provided here.\n */\nconst Toaster = ({\n /** Resolved color scheme for the toasts; pass your app's theme explicitly. */\n theme = \"system\",\n /** Screen corner/edge where toasts are anchored. */\n position = \"top-center\",\n /** Whether each toast renders a dismiss (close) button. */\n closeButton = true,\n ...props\n}: ToasterProps) => {\n return (\n <Sonner\n theme={theme}\n position={position}\n closeButton={closeButton}\n richColors\n className=\"toaster group\"\n // Figma Sonner card (node 139:11359): glass-none surface, primary border,\n // rounded-10, p-4, shadow-sm; 14/20 medium title, muted description;\n // actions are secondary-mini chips.\n // Severity toasts follow the InfoBanner treatment (bg-X-bg / text-X-txt):\n // the data-[type=…] variants out-specify the neutral base so richColors\n // severities keep their tokenized palette.\n toastOptions={{\n classNames: {\n toast:\n \"group/toast !rounded-10 !border-primary-border !bg-glass-none-bg !p-4 !shadow-sm !gap-3 !text-primary-txt data-[type=info]:!bg-info-bg data-[type=info]:!border-info-border data-[type=info]:!text-info-txt data-[type=success]:!bg-success-bg data-[type=success]:!border-success-border data-[type=success]:!text-success-txt data-[type=warning]:!bg-warning-bg data-[type=warning]:!border-warning-border data-[type=warning]:!text-warning-txt data-[type=error]:!bg-danger-bg data-[type=error]:!border-danger-border data-[type=error]:!text-danger-txt\",\n title: \"!text-sm !leading-5 !font-medium !text-current\",\n description:\n \"!text-sm !leading-5 !font-normal !text-muted-txt group-data-[type=info]/toast:!text-info-txt group-data-[type=success]/toast:!text-success-txt group-data-[type=warning]/toast:!text-warning-txt group-data-[type=error]/toast:!text-danger-txt\",\n actionButton:\n \"!min-h-6 !rounded-8 !bg-secondary-bg !px-4 !py-0.75 !text-xs !leading-4 !text-primary-txt\",\n cancelButton:\n \"!min-h-6 !rounded-8 !bg-ghost-bg !px-4 !py-0.75 !text-xs !leading-4 !text-primary-txt\",\n },\n }}\n icons={{\n success: <CircleCheckIcon className=\"size-4\" />,\n info: <InfoIcon className=\"size-4\" />,\n warning: <TriangleAlertIcon className=\"size-4\" />,\n error: <OctagonXIcon className=\"size-4\" />,\n loading: <Loader2Icon className=\"size-4 animate-spin\" />,\n }}\n style={\n {\n \"--normal-bg\": \"var(--glass-none-bg)\",\n \"--normal-text\": \"var(--primary-txt)\",\n \"--normal-border\": \"var(--primary-border)\",\n } as React.CSSProperties\n }\n {...props}\n />\n );\n};\n\nexport { Toaster };\n"],"mappings":";;;;;;;;;;;;;;;AAoBA,MAAM,WAAW,EAEf,QAAQ,UAER,WAAW,cAEX,cAAc,MACd,GAAG,YACe;CAClB,OACE,oBAACA,WAAD;EACS;EACG;EACG;EACb,YAAA;EACA,WAAU;EAOV,cAAc,EACZ,YAAY;GACV,OACE;GACF,OAAO;GACP,aACE;GACF,cACE;GACF,cACE;EACJ,EACF;EACA,OAAO;GACL,SAAS,oBAAC,iBAAD,EAAiB,WAAU,SAAU,CAAA;GAC9C,MAAM,oBAAC,UAAD,EAAU,WAAU,SAAU,CAAA;GACpC,SAAS,oBAAC,mBAAD,EAAmB,WAAU,SAAU,CAAA;GAChD,OAAO,oBAAC,cAAD,EAAc,WAAU,SAAU,CAAA;GACzC,SAAS,oBAAC,aAAD,EAAa,WAAU,sBAAuB,CAAA;EACzD;EACA,OACE;GACE,eAAe;GACf,iBAAiB;GACjB,mBAAmB;EACrB;EAEF,GAAI;CACL,CAAA;AAEL"}
@@ -1,2 +1,2 @@
1
- import { t as Spinner } from "../../index56.cjs";
1
+ import { t as Spinner } from "../../index57.cjs";
2
2
  export { Spinner };
@@ -1,2 +1,2 @@
1
- import { t as Spinner } from "../../index56.js";
1
+ import { t as Spinner } from "../../index57.js";
2
2
  export { Spinner };
@@ -9,11 +9,11 @@ function Switch({ className, size = "default", ...props }) {
9
9
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Switch.Root, {
10
10
  "data-slot": "switch",
11
11
  "data-size": size,
12
- className: require_cn.cn("peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-[var(--content-success)] data-[state=unchecked]:bg-muted-foreground data-[state=checked]:disabled:bg-[var(--bg-success)] data-[state=checked]:disabled:opacity-100", className),
12
+ className: require_cn.cn("peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none focus-visible:ring-3 focus-visible:ring-focus disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-4.5 data-[size=default]:w-8.25 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-switch-active-bg data-[state=unchecked]:bg-muted-txt", className),
13
13
  ...props,
14
14
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Switch.Thumb, {
15
15
  "data-slot": "switch-thumb",
16
- className: require_cn.cn("pointer-events-none block rounded-full bg-destructive-content-foreground ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")
16
+ className: require_cn.cn("pointer-events-none block rounded-full bg-primary-invert-txt ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=unchecked]:translate-x-0 group-data-[size=default]/switch:data-[state=checked]:translate-x-3.75 group-data-[size=sm]/switch:data-[state=checked]:translate-x-2.5")
17
17
  })
18
18
  });
19
19
  }
@@ -31,7 +31,7 @@ function SwitchGroup({ className, label, flipped = false, id, ...props }) {
31
31
  }), label != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("label", {
32
32
  "data-slot": "switch-group-label",
33
33
  htmlFor: switchId,
34
- className: "cursor-pointer select-none font-medium text-sm leading-none",
34
+ className: "cursor-pointer select-none text-sm leading-5",
35
35
  children: label
36
36
  })]
37
37
  });
@@ -43,21 +43,21 @@ function RichSwitchGroup({ className, title, description, flipped = false, id, .
43
43
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("label", {
44
44
  "data-slot": "rich-switch-group",
45
45
  htmlFor: switchId,
46
- className: require_cn.cn("flex cursor-pointer items-center gap-3 rounded-lg border border-border bg-card p-4 text-card-foreground shadow-xs transition-colors has-[[data-state=checked]]:border-primary has-[[data-state=checked]]:bg-accent/40 has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50", flipped ? "flex-row-reverse" : "flex-row", className),
46
+ className: require_cn.cn("flex cursor-pointer items-center gap-3 rounded-10 border border-primary-border bg-muted-bg p-3 text-primary-txt transition-colors has-[[data-state=checked]]:border-selected-border has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50", flipped ? "flex-row-reverse" : "flex-row", className),
47
47
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(Switch, {
48
48
  "data-slot": "rich-switch-group-control",
49
49
  id: switchId,
50
50
  ...props
51
51
  }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
52
52
  "data-slot": "rich-switch-group-content",
53
- className: "flex flex-1 flex-col gap-1",
53
+ className: "flex flex-1 flex-col gap-1.5",
54
54
  children: [title != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
55
55
  "data-slot": "rich-switch-group-title",
56
- className: "font-medium text-sm leading-none",
56
+ className: "text-sm leading-5",
57
57
  children: title
58
58
  }), description != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
59
59
  "data-slot": "rich-switch-group-description",
60
- className: "text-sm text-muted-foreground",
60
+ className: "text-xs leading-4 text-muted-txt",
61
61
  children: description
62
62
  })]
63
63
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["SwitchPrimitive","cn"],"sources":["../../../src/primitives/Switch/Switch.tsx"],"sourcesContent":["import { Switch as SwitchPrimitive } from \"radix-ui\";\nimport { useId } from \"react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** A toggle control for switching a single setting on or off. */\nfunction Switch({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n}) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n \"peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-[var(--content-success)] data-[state=unchecked]:bg-muted-foreground data-[state=checked]:disabled:bg-[var(--bg-success)] data-[state=checked]:disabled:opacity-100\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"pointer-events-none block rounded-full bg-destructive-content-foreground ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0\",\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\n/** A `Switch` paired with a clickable text label. */\nfunction SwitchGroup({\n className,\n label,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Text (or node) rendered as the switch's label. */\n label?: React.ReactNode;\n /** Renders the label before the switch instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <div\n data-slot=\"switch-group\"\n className={cn(\n \"flex items-center gap-2\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"switch-group-control\" id={switchId} {...props} />\n {label != null && (\n <label\n data-slot=\"switch-group-label\"\n htmlFor={switchId}\n className=\"cursor-pointer select-none font-medium text-sm leading-none\"\n >\n {label}\n </label>\n )}\n </div>\n );\n}\n\n/** A `Switch` inside a bordered card with a title and description. */\nfunction RichSwitchGroup({\n className,\n title,\n description,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Primary label rendered above the description. */\n title?: React.ReactNode;\n /** Secondary helper text rendered below the title. */\n description?: React.ReactNode;\n /** Renders the switch before the text content instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <label\n data-slot=\"rich-switch-group\"\n htmlFor={switchId}\n className={cn(\n \"flex cursor-pointer items-center gap-3 rounded-lg border border-border bg-card p-4 text-card-foreground shadow-xs transition-colors has-[[data-state=checked]]:border-primary has-[[data-state=checked]]:bg-accent/40 has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"rich-switch-group-control\" id={switchId} {...props} />\n <span data-slot=\"rich-switch-group-content\" className=\"flex flex-1 flex-col gap-1\">\n {title != null && (\n <span data-slot=\"rich-switch-group-title\" className=\"font-medium text-sm leading-none\">\n {title}\n </span>\n )}\n {description != null && (\n <span data-slot=\"rich-switch-group-description\" className=\"text-sm text-muted-foreground\">\n {description}\n </span>\n )}\n </span>\n </label>\n );\n}\n\nexport { Switch, SwitchGroup, RichSwitchGroup };\n"],"mappings":";;;;;;;AAOA,SAAS,OAAO,EACd,WACA,OAAO,WACP,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,KAACA,SAAAA,OAAgB,MAAjB;EACE,aAAU;EACV,aAAW;EACX,WAAWC,WAAAA,GACT,4iBACA,SACF;EACA,GAAI;YAEJ,iBAAA,GAAA,kBAAA,KAACD,SAAAA,OAAgB,OAAjB;GACE,aAAU;GACV,WAAWC,WAAAA,GACT,wQACF;EACD,CAAA;CACmB,CAAA;AAE1B;;AAGA,SAAS,YAAY,EACnB,WACA,OACA,UAAU,OACV,IACA,GAAG,SAQF;CACD,MAAM,eAAA,GAAA,MAAA,OAAoB;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,2BACA,UAAU,qBAAqB,YAC/B,SACF;YANF,CAQE,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAQ,aAAU;GAAuB,IAAI;GAAU,GAAI;EAAQ,CAAA,GAClE,SAAS,QACR,iBAAA,GAAA,kBAAA,KAAC,SAAD;GACE,aAAU;GACV,SAAS;GACT,WAAU;aAET;EACI,CAAA,CAEN;;AAET;;AAGA,SAAS,gBAAgB,EACvB,WACA,OACA,aACA,UAAU,OACV,IACA,GAAG,SAUF;CACD,MAAM,eAAA,GAAA,MAAA,OAAoB;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,iBAAA,GAAA,kBAAA,MAAC,SAAD;EACE,aAAU;EACV,SAAS;EACT,WAAWA,WAAAA,GACT,uRACA,UAAU,qBAAqB,YAC/B,SACF;YAPF,CASE,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAQ,aAAU;GAA4B,IAAI;GAAU,GAAI;EAAQ,CAAA,GACxE,iBAAA,GAAA,kBAAA,MAAC,QAAD;GAAM,aAAU;GAA4B,WAAU;aAAtD,CACG,SAAS,QACR,iBAAA,GAAA,kBAAA,KAAC,QAAD;IAAM,aAAU;IAA0B,WAAU;cACjD;GACG,CAAA,GAEP,eAAe,QACd,iBAAA,GAAA,kBAAA,KAAC,QAAD;IAAM,aAAU;IAAgC,WAAU;cACvD;GACG,CAAA,CAEJ;IACD;;AAEX"}
1
+ {"version":3,"file":"index.cjs","names":["SwitchPrimitive","cn"],"sources":["../../../src/primitives/Switch/Switch.tsx"],"sourcesContent":["import { Switch as SwitchPrimitive } from \"radix-ui\";\nimport { useId } from \"react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** A toggle control for switching a single setting on or off. */\nfunction Switch({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n}) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n // Figma: track 33×18, checked = switch-active (lime), unchecked bound to\n // content/muted (a -txt token used as the track fill on purpose).\n \"peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none focus-visible:ring-3 focus-visible:ring-focus disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-4.5 data-[size=default]:w-8.25 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-switch-active-bg data-[state=unchecked]:bg-muted-txt\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n // Thumb is content/primary-invert in Figma (off-white light, near-black dark).\n \"pointer-events-none block rounded-full bg-primary-invert-txt ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=unchecked]:translate-x-0 group-data-[size=default]/switch:data-[state=checked]:translate-x-3.75 group-data-[size=sm]/switch:data-[state=checked]:translate-x-2.5\",\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\n/** A `Switch` paired with a clickable text label. */\nfunction SwitchGroup({\n className,\n label,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Text (or node) rendered as the switch's label. */\n label?: React.ReactNode;\n /** Renders the label before the switch instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <div\n data-slot=\"switch-group\"\n className={cn(\n \"flex items-center gap-2\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"switch-group-control\" id={switchId} {...props} />\n {label != null && (\n <label\n data-slot=\"switch-group-label\"\n htmlFor={switchId}\n className=\"cursor-pointer select-none text-sm leading-5\"\n >\n {label}\n </label>\n )}\n </div>\n );\n}\n\n/** A `Switch` inside a bordered card with a title and description. */\nfunction RichSwitchGroup({\n className,\n title,\n description,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Primary label rendered above the description. */\n title?: React.ReactNode;\n /** Secondary helper text rendered below the title. */\n description?: React.ReactNode;\n /** Renders the switch before the text content instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <label\n data-slot=\"rich-switch-group\"\n htmlFor={switchId}\n className={cn(\n \"flex cursor-pointer items-center gap-3 rounded-10 border border-primary-border bg-muted-bg p-3 text-primary-txt transition-colors has-[[data-state=checked]]:border-selected-border has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"rich-switch-group-control\" id={switchId} {...props} />\n <span data-slot=\"rich-switch-group-content\" className=\"flex flex-1 flex-col gap-1.5\">\n {title != null && (\n <span data-slot=\"rich-switch-group-title\" className=\"text-sm leading-5\">\n {title}\n </span>\n )}\n {description != null && (\n <span\n data-slot=\"rich-switch-group-description\"\n className=\"text-xs leading-4 text-muted-txt\"\n >\n {description}\n </span>\n )}\n </span>\n </label>\n );\n}\n\nexport { Switch, SwitchGroup, RichSwitchGroup };\n"],"mappings":";;;;;;;AAOA,SAAS,OAAO,EACd,WACA,OAAO,WACP,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,KAACA,SAAAA,OAAgB,MAAjB;EACE,aAAU;EACV,aAAW;EACX,WAAWC,WAAAA,GAGT,iZACA,SACF;EACA,GAAI;YAEJ,iBAAA,GAAA,kBAAA,KAACD,SAAAA,OAAgB,OAAjB;GACE,aAAU;GACV,WAAWC,WAAAA,GAET,kVACF;EACD,CAAA;CACmB,CAAA;AAE1B;;AAGA,SAAS,YAAY,EACnB,WACA,OACA,UAAU,OACV,IACA,GAAG,SAQF;CACD,MAAM,eAAA,GAAA,MAAA,OAAoB;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,iBAAA,GAAA,kBAAA,MAAC,OAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,2BACA,UAAU,qBAAqB,YAC/B,SACF;YANF,CAQE,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAQ,aAAU;GAAuB,IAAI;GAAU,GAAI;EAAQ,CAAA,GAClE,SAAS,QACR,iBAAA,GAAA,kBAAA,KAAC,SAAD;GACE,aAAU;GACV,SAAS;GACT,WAAU;aAET;EACI,CAAA,CAEN;;AAET;;AAGA,SAAS,gBAAgB,EACvB,WACA,OACA,aACA,UAAU,OACV,IACA,GAAG,SAUF;CACD,MAAM,eAAA,GAAA,MAAA,OAAoB;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,iBAAA,GAAA,kBAAA,MAAC,SAAD;EACE,aAAU;EACV,SAAS;EACT,WAAWA,WAAAA,GACT,qPACA,UAAU,qBAAqB,YAC/B,SACF;YAPF,CASE,iBAAA,GAAA,kBAAA,KAAC,QAAD;GAAQ,aAAU;GAA4B,IAAI;GAAU,GAAI;EAAQ,CAAA,GACxE,iBAAA,GAAA,kBAAA,MAAC,QAAD;GAAM,aAAU;GAA4B,WAAU;aAAtD,CACG,SAAS,QACR,iBAAA,GAAA,kBAAA,KAAC,QAAD;IAAM,aAAU;IAA0B,WAAU;cACjD;GACG,CAAA,GAEP,eAAe,QACd,iBAAA,GAAA,kBAAA,KAAC,QAAD;IACE,aAAU;IACV,WAAU;cAET;GACG,CAAA,CAEJ;IACD;;AAEX"}
@@ -1,2 +1,2 @@
1
- import { n as Switch, r as SwitchGroup, t as RichSwitchGroup } from "../../index57.cjs";
1
+ import { n as Switch, r as SwitchGroup, t as RichSwitchGroup } from "../../index58.cjs";
2
2
  export { RichSwitchGroup, Switch, SwitchGroup };
@@ -1,2 +1,2 @@
1
- import { n as Switch, r as SwitchGroup, t as RichSwitchGroup } from "../../index57.js";
1
+ import { n as Switch, r as SwitchGroup, t as RichSwitchGroup } from "../../index58.js";
2
2
  export { RichSwitchGroup, Switch, SwitchGroup };
@@ -8,11 +8,11 @@ function Switch({ className, size = "default", ...props }) {
8
8
  return /* @__PURE__ */ jsx(Switch$1.Root, {
9
9
  "data-slot": "switch",
10
10
  "data-size": size,
11
- className: cn("peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-[var(--content-success)] data-[state=unchecked]:bg-muted-foreground data-[state=checked]:disabled:bg-[var(--bg-success)] data-[state=checked]:disabled:opacity-100", className),
11
+ className: cn("peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none focus-visible:ring-3 focus-visible:ring-focus disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-4.5 data-[size=default]:w-8.25 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-switch-active-bg data-[state=unchecked]:bg-muted-txt", className),
12
12
  ...props,
13
13
  children: /* @__PURE__ */ jsx(Switch$1.Thumb, {
14
14
  "data-slot": "switch-thumb",
15
- className: cn("pointer-events-none block rounded-full bg-destructive-content-foreground ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")
15
+ className: cn("pointer-events-none block rounded-full bg-primary-invert-txt ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=unchecked]:translate-x-0 group-data-[size=default]/switch:data-[state=checked]:translate-x-3.75 group-data-[size=sm]/switch:data-[state=checked]:translate-x-2.5")
16
16
  })
17
17
  });
18
18
  }
@@ -30,7 +30,7 @@ function SwitchGroup({ className, label, flipped = false, id, ...props }) {
30
30
  }), label != null && /* @__PURE__ */ jsx("label", {
31
31
  "data-slot": "switch-group-label",
32
32
  htmlFor: switchId,
33
- className: "cursor-pointer select-none font-medium text-sm leading-none",
33
+ className: "cursor-pointer select-none text-sm leading-5",
34
34
  children: label
35
35
  })]
36
36
  });
@@ -42,21 +42,21 @@ function RichSwitchGroup({ className, title, description, flipped = false, id, .
42
42
  return /* @__PURE__ */ jsxs("label", {
43
43
  "data-slot": "rich-switch-group",
44
44
  htmlFor: switchId,
45
- className: cn("flex cursor-pointer items-center gap-3 rounded-lg border border-border bg-card p-4 text-card-foreground shadow-xs transition-colors has-[[data-state=checked]]:border-primary has-[[data-state=checked]]:bg-accent/40 has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50", flipped ? "flex-row-reverse" : "flex-row", className),
45
+ className: cn("flex cursor-pointer items-center gap-3 rounded-10 border border-primary-border bg-muted-bg p-3 text-primary-txt transition-colors has-[[data-state=checked]]:border-selected-border has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50", flipped ? "flex-row-reverse" : "flex-row", className),
46
46
  children: [/* @__PURE__ */ jsx(Switch, {
47
47
  "data-slot": "rich-switch-group-control",
48
48
  id: switchId,
49
49
  ...props
50
50
  }), /* @__PURE__ */ jsxs("span", {
51
51
  "data-slot": "rich-switch-group-content",
52
- className: "flex flex-1 flex-col gap-1",
52
+ className: "flex flex-1 flex-col gap-1.5",
53
53
  children: [title != null && /* @__PURE__ */ jsx("span", {
54
54
  "data-slot": "rich-switch-group-title",
55
- className: "font-medium text-sm leading-none",
55
+ className: "text-sm leading-5",
56
56
  children: title
57
57
  }), description != null && /* @__PURE__ */ jsx("span", {
58
58
  "data-slot": "rich-switch-group-description",
59
- className: "text-sm text-muted-foreground",
59
+ className: "text-xs leading-4 text-muted-txt",
60
60
  children: description
61
61
  })]
62
62
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["SwitchPrimitive"],"sources":["../../../src/primitives/Switch/Switch.tsx"],"sourcesContent":["import { Switch as SwitchPrimitive } from \"radix-ui\";\nimport { useId } from \"react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** A toggle control for switching a single setting on or off. */\nfunction Switch({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n}) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n \"peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-[var(--content-success)] data-[state=unchecked]:bg-muted-foreground data-[state=checked]:disabled:bg-[var(--bg-success)] data-[state=checked]:disabled:opacity-100\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"pointer-events-none block rounded-full bg-destructive-content-foreground ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0\",\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\n/** A `Switch` paired with a clickable text label. */\nfunction SwitchGroup({\n className,\n label,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Text (or node) rendered as the switch's label. */\n label?: React.ReactNode;\n /** Renders the label before the switch instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <div\n data-slot=\"switch-group\"\n className={cn(\n \"flex items-center gap-2\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"switch-group-control\" id={switchId} {...props} />\n {label != null && (\n <label\n data-slot=\"switch-group-label\"\n htmlFor={switchId}\n className=\"cursor-pointer select-none font-medium text-sm leading-none\"\n >\n {label}\n </label>\n )}\n </div>\n );\n}\n\n/** A `Switch` inside a bordered card with a title and description. */\nfunction RichSwitchGroup({\n className,\n title,\n description,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Primary label rendered above the description. */\n title?: React.ReactNode;\n /** Secondary helper text rendered below the title. */\n description?: React.ReactNode;\n /** Renders the switch before the text content instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <label\n data-slot=\"rich-switch-group\"\n htmlFor={switchId}\n className={cn(\n \"flex cursor-pointer items-center gap-3 rounded-lg border border-border bg-card p-4 text-card-foreground shadow-xs transition-colors has-[[data-state=checked]]:border-primary has-[[data-state=checked]]:bg-accent/40 has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"rich-switch-group-control\" id={switchId} {...props} />\n <span data-slot=\"rich-switch-group-content\" className=\"flex flex-1 flex-col gap-1\">\n {title != null && (\n <span data-slot=\"rich-switch-group-title\" className=\"font-medium text-sm leading-none\">\n {title}\n </span>\n )}\n {description != null && (\n <span data-slot=\"rich-switch-group-description\" className=\"text-sm text-muted-foreground\">\n {description}\n </span>\n )}\n </span>\n </label>\n );\n}\n\nexport { Switch, SwitchGroup, RichSwitchGroup };\n"],"mappings":";;;;;;AAOA,SAAS,OAAO,EACd,WACA,OAAO,WACP,GAAG,SAIF;CACD,OACE,oBAACA,SAAgB,MAAjB;EACE,aAAU;EACV,aAAW;EACX,WAAW,GACT,4iBACA,SACF;EACA,GAAI;YAEJ,oBAACA,SAAgB,OAAjB;GACE,aAAU;GACV,WAAW,GACT,wQACF;EACD,CAAA;CACmB,CAAA;AAE1B;;AAGA,SAAS,YAAY,EACnB,WACA,OACA,UAAU,OACV,IACA,GAAG,SAQF;CACD,MAAM,cAAc,MAAM;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,qBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,2BACA,UAAU,qBAAqB,YAC/B,SACF;YANF,CAQE,oBAAC,QAAD;GAAQ,aAAU;GAAuB,IAAI;GAAU,GAAI;EAAQ,CAAA,GAClE,SAAS,QACR,oBAAC,SAAD;GACE,aAAU;GACV,SAAS;GACT,WAAU;aAET;EACI,CAAA,CAEN;;AAET;;AAGA,SAAS,gBAAgB,EACvB,WACA,OACA,aACA,UAAU,OACV,IACA,GAAG,SAUF;CACD,MAAM,cAAc,MAAM;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,qBAAC,SAAD;EACE,aAAU;EACV,SAAS;EACT,WAAW,GACT,uRACA,UAAU,qBAAqB,YAC/B,SACF;YAPF,CASE,oBAAC,QAAD;GAAQ,aAAU;GAA4B,IAAI;GAAU,GAAI;EAAQ,CAAA,GACxE,qBAAC,QAAD;GAAM,aAAU;GAA4B,WAAU;aAAtD,CACG,SAAS,QACR,oBAAC,QAAD;IAAM,aAAU;IAA0B,WAAU;cACjD;GACG,CAAA,GAEP,eAAe,QACd,oBAAC,QAAD;IAAM,aAAU;IAAgC,WAAU;cACvD;GACG,CAAA,CAEJ;IACD;;AAEX"}
1
+ {"version":3,"file":"index.js","names":["SwitchPrimitive"],"sources":["../../../src/primitives/Switch/Switch.tsx"],"sourcesContent":["import { Switch as SwitchPrimitive } from \"radix-ui\";\nimport { useId } from \"react\";\nimport type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** A toggle control for switching a single setting on or off. */\nfunction Switch({\n className,\n size = \"default\",\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n}) {\n return (\n <SwitchPrimitive.Root\n data-slot=\"switch\"\n data-size={size}\n className={cn(\n // Figma: track 33×18, checked = switch-active (lime), unchecked bound to\n // content/muted (a -txt token used as the track fill on purpose).\n \"peer group/switch inline-flex shrink-0 cursor-pointer items-center rounded-full border border-transparent transition-all outline-none focus-visible:ring-3 focus-visible:ring-focus disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-4.5 data-[size=default]:w-8.25 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-[state=checked]:bg-switch-active-bg data-[state=unchecked]:bg-muted-txt\",\n className,\n )}\n {...props}\n >\n <SwitchPrimitive.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n // Thumb is content/primary-invert in Figma (off-white light, near-black dark).\n \"pointer-events-none block rounded-full bg-primary-invert-txt ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-[state=unchecked]:translate-x-0 group-data-[size=default]/switch:data-[state=checked]:translate-x-3.75 group-data-[size=sm]/switch:data-[state=checked]:translate-x-2.5\",\n )}\n />\n </SwitchPrimitive.Root>\n );\n}\n\n/** A `Switch` paired with a clickable text label. */\nfunction SwitchGroup({\n className,\n label,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Text (or node) rendered as the switch's label. */\n label?: React.ReactNode;\n /** Renders the label before the switch instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <div\n data-slot=\"switch-group\"\n className={cn(\n \"flex items-center gap-2\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"switch-group-control\" id={switchId} {...props} />\n {label != null && (\n <label\n data-slot=\"switch-group-label\"\n htmlFor={switchId}\n className=\"cursor-pointer select-none text-sm leading-5\"\n >\n {label}\n </label>\n )}\n </div>\n );\n}\n\n/** A `Switch` inside a bordered card with a title and description. */\nfunction RichSwitchGroup({\n className,\n title,\n description,\n flipped = false,\n id,\n ...props\n}: React.ComponentProps<typeof SwitchPrimitive.Root> & {\n /** Visual size of the track and thumb. */\n size?: \"sm\" | \"default\";\n /** Primary label rendered above the description. */\n title?: React.ReactNode;\n /** Secondary helper text rendered below the title. */\n description?: React.ReactNode;\n /** Renders the switch before the text content instead of after it. */\n flipped?: boolean;\n}) {\n const generatedId = useId();\n const switchId = id ?? generatedId;\n return (\n <label\n data-slot=\"rich-switch-group\"\n htmlFor={switchId}\n className={cn(\n \"flex cursor-pointer items-center gap-3 rounded-10 border border-primary-border bg-muted-bg p-3 text-primary-txt transition-colors has-[[data-state=checked]]:border-selected-border has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50\",\n flipped ? \"flex-row-reverse\" : \"flex-row\",\n className,\n )}\n >\n <Switch data-slot=\"rich-switch-group-control\" id={switchId} {...props} />\n <span data-slot=\"rich-switch-group-content\" className=\"flex flex-1 flex-col gap-1.5\">\n {title != null && (\n <span data-slot=\"rich-switch-group-title\" className=\"text-sm leading-5\">\n {title}\n </span>\n )}\n {description != null && (\n <span\n data-slot=\"rich-switch-group-description\"\n className=\"text-xs leading-4 text-muted-txt\"\n >\n {description}\n </span>\n )}\n </span>\n </label>\n );\n}\n\nexport { Switch, SwitchGroup, RichSwitchGroup };\n"],"mappings":";;;;;;AAOA,SAAS,OAAO,EACd,WACA,OAAO,WACP,GAAG,SAIF;CACD,OACE,oBAACA,SAAgB,MAAjB;EACE,aAAU;EACV,aAAW;EACX,WAAW,GAGT,iZACA,SACF;EACA,GAAI;YAEJ,oBAACA,SAAgB,OAAjB;GACE,aAAU;GACV,WAAW,GAET,kVACF;EACD,CAAA;CACmB,CAAA;AAE1B;;AAGA,SAAS,YAAY,EACnB,WACA,OACA,UAAU,OACV,IACA,GAAG,SAQF;CACD,MAAM,cAAc,MAAM;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,qBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,2BACA,UAAU,qBAAqB,YAC/B,SACF;YANF,CAQE,oBAAC,QAAD;GAAQ,aAAU;GAAuB,IAAI;GAAU,GAAI;EAAQ,CAAA,GAClE,SAAS,QACR,oBAAC,SAAD;GACE,aAAU;GACV,SAAS;GACT,WAAU;aAET;EACI,CAAA,CAEN;;AAET;;AAGA,SAAS,gBAAgB,EACvB,WACA,OACA,aACA,UAAU,OACV,IACA,GAAG,SAUF;CACD,MAAM,cAAc,MAAM;CAC1B,MAAM,WAAW,MAAM;CACvB,OACE,qBAAC,SAAD;EACE,aAAU;EACV,SAAS;EACT,WAAW,GACT,qPACA,UAAU,qBAAqB,YAC/B,SACF;YAPF,CASE,oBAAC,QAAD;GAAQ,aAAU;GAA4B,IAAI;GAAU,GAAI;EAAQ,CAAA,GACxE,qBAAC,QAAD;GAAM,aAAU;GAA4B,WAAU;aAAtD,CACG,SAAS,QACR,oBAAC,QAAD;IAAM,aAAU;IAA0B,WAAU;cACjD;GACG,CAAA,GAEP,eAAe,QACd,oBAAC,QAAD;IACE,aAAU;IACV,WAAU;cAET;GACG,CAAA,CAEJ;IACD;;AAEX"}
@@ -10,7 +10,7 @@ function Table({ className, striped = false, ...props }) {
10
10
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("table", {
11
11
  "data-slot": "table",
12
12
  "data-striped": striped || void 0,
13
- className: require_cn.cn("w-full caption-bottom text-sm", striped && "[&_tbody_tr:nth-child(even)]:bg-accent", className),
13
+ className: require_cn.cn("w-full caption-bottom text-sm rounded-t-16 rounded-b-16 overflow-hidden", striped && "[&_tbody_tr:nth-child(odd)]:bg-muted-bg [&_tbody_tr:nth-child(even)]:bg-primary-bg", className),
14
14
  ...props
15
15
  })
16
16
  });
@@ -19,7 +19,7 @@ function Table({ className, striped = false, ...props }) {
19
19
  function TableHeader({ className, ...props }) {
20
20
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("thead", {
21
21
  "data-slot": "table-header",
22
- className: require_cn.cn("[&_tr]:border-b", className),
22
+ className: require_cn.cn("[&_tr]:border-b bg-glass-60-bg backdrop-blur-glass", className),
23
23
  ...props
24
24
  });
25
25
  }
@@ -35,7 +35,7 @@ function TableBody({ className, ...props }) {
35
35
  function TableFooter({ className, ...props }) {
36
36
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tfoot", {
37
37
  "data-slot": "table-footer",
38
- className: require_cn.cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
38
+ className: require_cn.cn("border-t bg-muted-bg/50 font-medium [&>tr]:last:border-b-0", className),
39
39
  ...props
40
40
  });
41
41
  }
@@ -43,7 +43,7 @@ function TableFooter({ className, ...props }) {
43
43
  function TableRow({ className, ...props }) {
44
44
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("tr", {
45
45
  "data-slot": "table-row",
46
- className: require_cn.cn("border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted", className),
46
+ className: require_cn.cn("border-b transition-colors hover:bg-muted-bg/50 has-aria-expanded:bg-muted-bg/50 data-[state=selected]:bg-muted-bg", className),
47
47
  ...props
48
48
  });
49
49
  }
@@ -51,7 +51,7 @@ function TableRow({ className, ...props }) {
51
51
  function TableHead({ className, ...props }) {
52
52
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("th", {
53
53
  "data-slot": "table-head",
54
- className: require_cn.cn("h-10 px-2 text-base text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
54
+ className: require_cn.cn("h-10 px-2 text-base leading-6 text-left align-middle font-medium whitespace-nowrap text-primary-txt [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5", className),
55
55
  ...props
56
56
  });
57
57
  }
@@ -59,7 +59,7 @@ function TableHead({ className, ...props }) {
59
59
  function TableCell({ className, ...props }) {
60
60
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("td", {
61
61
  "data-slot": "table-cell",
62
- className: require_cn.cn("p-2 text-base align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
62
+ className: require_cn.cn("p-2 text-base leading-6 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5", className),
63
63
  ...props
64
64
  });
65
65
  }
@@ -67,7 +67,7 @@ function TableCell({ className, ...props }) {
67
67
  function TableCaption({ className, ...props }) {
68
68
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("caption", {
69
69
  "data-slot": "table-caption",
70
- className: require_cn.cn("mt-4 text-sm text-muted-foreground", className),
70
+ className: require_cn.cn("mt-4 text-sm text-muted-txt", className),
71
71
  ...props
72
72
  });
73
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["cn"],"sources":["../../../src/primitives/Table/Table.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** The table root: wraps a `<table>` in a horizontally scrollable container. */\nfunction Table({\n className,\n striped = false,\n ...props\n}: React.ComponentProps<\"table\"> & {\n /** Shades even body rows for a zebra-striped layout (Figma odd/even rows). */\n striped?: boolean;\n}) {\n return (\n <div data-slot=\"table-container\" className=\"relative w-full overflow-x-auto\">\n <table\n data-slot=\"table\"\n data-striped={striped || undefined}\n className={cn(\n \"w-full caption-bottom text-sm\",\n // Zebra striping (Figma odd/even rows).\n striped && \"[&_tbody_tr:nth-child(even)]:bg-accent\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\n/** The `<thead>` section; holds the header row(s). */\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return <thead data-slot=\"table-header\" className={cn(\"[&_tr]:border-b\", className)} {...props} />;\n}\n\n/** The `<tbody>` section; holds the data rows. */\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\n/** The `<tfoot>` section; a muted, emphasised summary row band. */\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** A table row (`<tr>`); supports hover and `data-state=\"selected\"` styling. */\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A header cell (`<th>`); left-aligned, medium-weight column label. */\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"h-10 px-2 text-base text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A data cell (`<td>`). */\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 text-base align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A `<caption>` rendered beneath the table as muted descriptive text. */\nfunction TableCaption({ className, ...props }: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"mt-4 text-sm text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption };\n"],"mappings":";;;;;AAKA,SAAS,MAAM,EACb,WACA,UAAU,OACV,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EAAK,aAAU;EAAkB,WAAU;YACzC,iBAAA,GAAA,kBAAA,KAAC,SAAD;GACE,aAAU;GACV,gBAAc,WAAW,KAAA;GACzB,WAAWA,WAAAA,GACT,iCAEA,WAAW,0CACX,SACF;GACA,GAAI;EACL,CAAA;CACE,CAAA;AAET;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OAAO,iBAAA,GAAA,kBAAA,KAAC,SAAD;EAAO,aAAU;EAAe,WAAWA,WAAAA,GAAG,mBAAmB,SAAS;EAAG,GAAI;CAAQ,CAAA;AAClG;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAwC;CACzE,OACE,iBAAA,GAAA,kBAAA,KAAC,SAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,8BAA8B,SAAS;EACrD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,iBAAA,GAAA,kBAAA,KAAC,SAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,2DAA2D,SAAS;EAClF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAqC;CACrE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,6GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,gKACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,oHACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA0C;CAC9E,OACE,iBAAA,GAAA,kBAAA,KAAC,WAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,sCAAsC,SAAS;EAC7D,GAAI;CACL,CAAA;AAEL"}
1
+ {"version":3,"file":"index.cjs","names":["cn"],"sources":["../../../src/primitives/Table/Table.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** The table root: wraps a `<table>` in a horizontally scrollable container. */\nfunction Table({\n className,\n striped = false,\n ...props\n}: React.ComponentProps<\"table\"> & {\n /** Zebra-stripes the body, tinting alternate rows starting with the first (Figma odd/even parity). */\n striped?: boolean;\n}) {\n return (\n <div data-slot=\"table-container\" className=\"relative w-full overflow-x-auto\">\n <table\n data-slot=\"table\"\n data-striped={striped || undefined}\n className={cn(\n \"w-full caption-bottom text-sm rounded-t-16 rounded-b-16 overflow-hidden\",\n // Zebra striping (Figma odd/even rows).\n striped &&\n \"[&_tbody_tr:nth-child(odd)]:bg-muted-bg [&_tbody_tr:nth-child(even)]:bg-primary-bg\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\n/** The `<thead>` section; holds the header row(s). */\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b bg-glass-60-bg backdrop-blur-glass\", className)}\n {...props}\n />\n );\n}\n\n/** The `<tbody>` section; holds the data rows. */\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\n/** The `<tfoot>` section; a muted, emphasised summary row band. */\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\"border-t bg-muted-bg/50 font-medium [&>tr]:last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** A table row (`<tr>`); supports hover and `data-state=\"selected\"` styling. */\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b transition-colors hover:bg-muted-bg/50 has-aria-expanded:bg-muted-bg/50 data-[state=selected]:bg-muted-bg\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A header cell (`<th>`); left-aligned, medium-weight column label. */\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"h-10 px-2 text-base leading-6 text-left align-middle font-medium whitespace-nowrap text-primary-txt [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A data cell (`<td>`). */\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 text-base leading-6 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A `<caption>` rendered beneath the table as muted descriptive text. */\nfunction TableCaption({ className, ...props }: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"mt-4 text-sm text-muted-txt\", className)}\n {...props}\n />\n );\n}\n\nexport { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption };\n"],"mappings":";;;;;AAKA,SAAS,MAAM,EACb,WACA,UAAU,OACV,GAAG,SAIF;CACD,OACE,iBAAA,GAAA,kBAAA,KAAC,OAAD;EAAK,aAAU;EAAkB,WAAU;YACzC,iBAAA,GAAA,kBAAA,KAAC,SAAD;GACE,aAAU;GACV,gBAAc,WAAW,KAAA;GACzB,WAAWA,WAAAA,GACT,4EAEA,WACE,sFACF,SACF;GACA,GAAI;EACL,CAAA;CACE,CAAA;AAET;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,iBAAA,GAAA,kBAAA,KAAC,SAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,sDAAsD,SAAS;EAC7E,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAwC;CACzE,OACE,iBAAA,GAAA,kBAAA,KAAC,SAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,8BAA8B,SAAS;EACrD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,iBAAA,GAAA,kBAAA,KAAC,SAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,8DAA8D,SAAS;EACrF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAqC;CACrE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,sHACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,yKACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,iBAAA,GAAA,kBAAA,KAAC,MAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GACT,4HACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA0C;CAC9E,OACE,iBAAA,GAAA,kBAAA,KAAC,WAAD;EACE,aAAU;EACV,WAAWA,WAAAA,GAAG,+BAA+B,SAAS;EACtD,GAAI;CACL,CAAA;AAEL"}
@@ -1,2 +1,2 @@
1
- import { a as TableFooter, c as TableRow, i as TableCell, n as TableBody, o as TableHead, r as TableCaption, s as TableHeader, t as Table } from "../../index58.cjs";
1
+ import { a as TableFooter, c as TableRow, i as TableCell, n as TableBody, o as TableHead, r as TableCaption, s as TableHeader, t as Table } from "../../index59.cjs";
2
2
  export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };
@@ -1,2 +1,2 @@
1
- import { a as TableFooter, c as TableRow, i as TableCell, n as TableBody, o as TableHead, r as TableCaption, s as TableHeader, t as Table } from "../../index58.js";
1
+ import { a as TableFooter, c as TableRow, i as TableCell, n as TableBody, o as TableHead, r as TableCaption, s as TableHeader, t as Table } from "../../index59.js";
2
2
  export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };
@@ -9,7 +9,7 @@ function Table({ className, striped = false, ...props }) {
9
9
  children: /* @__PURE__ */ jsx("table", {
10
10
  "data-slot": "table",
11
11
  "data-striped": striped || void 0,
12
- className: cn("w-full caption-bottom text-sm", striped && "[&_tbody_tr:nth-child(even)]:bg-accent", className),
12
+ className: cn("w-full caption-bottom text-sm rounded-t-16 rounded-b-16 overflow-hidden", striped && "[&_tbody_tr:nth-child(odd)]:bg-muted-bg [&_tbody_tr:nth-child(even)]:bg-primary-bg", className),
13
13
  ...props
14
14
  })
15
15
  });
@@ -18,7 +18,7 @@ function Table({ className, striped = false, ...props }) {
18
18
  function TableHeader({ className, ...props }) {
19
19
  return /* @__PURE__ */ jsx("thead", {
20
20
  "data-slot": "table-header",
21
- className: cn("[&_tr]:border-b", className),
21
+ className: cn("[&_tr]:border-b bg-glass-60-bg backdrop-blur-glass", className),
22
22
  ...props
23
23
  });
24
24
  }
@@ -34,7 +34,7 @@ function TableBody({ className, ...props }) {
34
34
  function TableFooter({ className, ...props }) {
35
35
  return /* @__PURE__ */ jsx("tfoot", {
36
36
  "data-slot": "table-footer",
37
- className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className),
37
+ className: cn("border-t bg-muted-bg/50 font-medium [&>tr]:last:border-b-0", className),
38
38
  ...props
39
39
  });
40
40
  }
@@ -42,7 +42,7 @@ function TableFooter({ className, ...props }) {
42
42
  function TableRow({ className, ...props }) {
43
43
  return /* @__PURE__ */ jsx("tr", {
44
44
  "data-slot": "table-row",
45
- className: cn("border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted", className),
45
+ className: cn("border-b transition-colors hover:bg-muted-bg/50 has-aria-expanded:bg-muted-bg/50 data-[state=selected]:bg-muted-bg", className),
46
46
  ...props
47
47
  });
48
48
  }
@@ -50,7 +50,7 @@ function TableRow({ className, ...props }) {
50
50
  function TableHead({ className, ...props }) {
51
51
  return /* @__PURE__ */ jsx("th", {
52
52
  "data-slot": "table-head",
53
- className: cn("h-10 px-2 text-base text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
53
+ className: cn("h-10 px-2 text-base leading-6 text-left align-middle font-medium whitespace-nowrap text-primary-txt [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5", className),
54
54
  ...props
55
55
  });
56
56
  }
@@ -58,7 +58,7 @@ function TableHead({ className, ...props }) {
58
58
  function TableCell({ className, ...props }) {
59
59
  return /* @__PURE__ */ jsx("td", {
60
60
  "data-slot": "table-cell",
61
- className: cn("p-2 text-base align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]", className),
61
+ className: cn("p-2 text-base leading-6 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5", className),
62
62
  ...props
63
63
  });
64
64
  }
@@ -66,7 +66,7 @@ function TableCell({ className, ...props }) {
66
66
  function TableCaption({ className, ...props }) {
67
67
  return /* @__PURE__ */ jsx("caption", {
68
68
  "data-slot": "table-caption",
69
- className: cn("mt-4 text-sm text-muted-foreground", className),
69
+ className: cn("mt-4 text-sm text-muted-txt", className),
70
70
  ...props
71
71
  });
72
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/primitives/Table/Table.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** The table root: wraps a `<table>` in a horizontally scrollable container. */\nfunction Table({\n className,\n striped = false,\n ...props\n}: React.ComponentProps<\"table\"> & {\n /** Shades even body rows for a zebra-striped layout (Figma odd/even rows). */\n striped?: boolean;\n}) {\n return (\n <div data-slot=\"table-container\" className=\"relative w-full overflow-x-auto\">\n <table\n data-slot=\"table\"\n data-striped={striped || undefined}\n className={cn(\n \"w-full caption-bottom text-sm\",\n // Zebra striping (Figma odd/even rows).\n striped && \"[&_tbody_tr:nth-child(even)]:bg-accent\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\n/** The `<thead>` section; holds the header row(s). */\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return <thead data-slot=\"table-header\" className={cn(\"[&_tr]:border-b\", className)} {...props} />;\n}\n\n/** The `<tbody>` section; holds the data rows. */\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\n/** The `<tfoot>` section; a muted, emphasised summary row band. */\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\"border-t bg-muted/50 font-medium [&>tr]:last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** A table row (`<tr>`); supports hover and `data-state=\"selected\"` styling. */\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b transition-colors hover:bg-muted/50 has-aria-expanded:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A header cell (`<th>`); left-aligned, medium-weight column label. */\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"h-10 px-2 text-base text-left align-middle font-medium whitespace-nowrap text-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A data cell (`<td>`). */\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 text-base align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A `<caption>` rendered beneath the table as muted descriptive text. */\nfunction TableCaption({ className, ...props }: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"mt-4 text-sm text-muted-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption };\n"],"mappings":";;;;AAKA,SAAS,MAAM,EACb,WACA,UAAU,OACV,GAAG,SAIF;CACD,OACE,oBAAC,OAAD;EAAK,aAAU;EAAkB,WAAU;YACzC,oBAAC,SAAD;GACE,aAAU;GACV,gBAAc,WAAW,KAAA;GACzB,WAAW,GACT,iCAEA,WAAW,0CACX,SACF;GACA,GAAI;EACL,CAAA;CACE,CAAA;AAET;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OAAO,oBAAC,SAAD;EAAO,aAAU;EAAe,WAAW,GAAG,mBAAmB,SAAS;EAAG,GAAI;CAAQ,CAAA;AAClG;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAwC;CACzE,OACE,oBAAC,SAAD;EACE,aAAU;EACV,WAAW,GAAG,8BAA8B,SAAS;EACrD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,oBAAC,SAAD;EACE,aAAU;EACV,WAAW,GAAG,2DAA2D,SAAS;EAClF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAqC;CACrE,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GACT,6GACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GACT,gKACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GACT,oHACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA0C;CAC9E,OACE,oBAAC,WAAD;EACE,aAAU;EACV,WAAW,GAAG,sCAAsC,SAAS;EAC7D,GAAI;CACL,CAAA;AAEL"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/primitives/Table/Table.tsx"],"sourcesContent":["import type * as React from \"react\";\n\nimport { cn } from \"@/utils\";\n\n/** The table root: wraps a `<table>` in a horizontally scrollable container. */\nfunction Table({\n className,\n striped = false,\n ...props\n}: React.ComponentProps<\"table\"> & {\n /** Zebra-stripes the body, tinting alternate rows starting with the first (Figma odd/even parity). */\n striped?: boolean;\n}) {\n return (\n <div data-slot=\"table-container\" className=\"relative w-full overflow-x-auto\">\n <table\n data-slot=\"table\"\n data-striped={striped || undefined}\n className={cn(\n \"w-full caption-bottom text-sm rounded-t-16 rounded-b-16 overflow-hidden\",\n // Zebra striping (Figma odd/even rows).\n striped &&\n \"[&_tbody_tr:nth-child(odd)]:bg-muted-bg [&_tbody_tr:nth-child(even)]:bg-primary-bg\",\n className,\n )}\n {...props}\n />\n </div>\n );\n}\n\n/** The `<thead>` section; holds the header row(s). */\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b bg-glass-60-bg backdrop-blur-glass\", className)}\n {...props}\n />\n );\n}\n\n/** The `<tbody>` section; holds the data rows. */\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n );\n}\n\n/** The `<tfoot>` section; a muted, emphasised summary row band. */\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\"border-t bg-muted-bg/50 font-medium [&>tr]:last:border-b-0\", className)}\n {...props}\n />\n );\n}\n\n/** A table row (`<tr>`); supports hover and `data-state=\"selected\"` styling. */\nfunction TableRow({ className, ...props }: React.ComponentProps<\"tr\">) {\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b transition-colors hover:bg-muted-bg/50 has-aria-expanded:bg-muted-bg/50 data-[state=selected]:bg-muted-bg\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A header cell (`<th>`); left-aligned, medium-weight column label. */\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"h-10 px-2 text-base leading-6 text-left align-middle font-medium whitespace-nowrap text-primary-txt [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A data cell (`<td>`). */\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-2 text-base leading-6 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-0.5\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/** A `<caption>` rendered beneath the table as muted descriptive text. */\nfunction TableCaption({ className, ...props }: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"mt-4 text-sm text-muted-txt\", className)}\n {...props}\n />\n );\n}\n\nexport { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption };\n"],"mappings":";;;;AAKA,SAAS,MAAM,EACb,WACA,UAAU,OACV,GAAG,SAIF;CACD,OACE,oBAAC,OAAD;EAAK,aAAU;EAAkB,WAAU;YACzC,oBAAC,SAAD;GACE,aAAU;GACV,gBAAc,WAAW,KAAA;GACzB,WAAW,GACT,4EAEA,WACE,sFACF,SACF;GACA,GAAI;EACL,CAAA;CACE,CAAA;AAET;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,oBAAC,SAAD;EACE,aAAU;EACV,WAAW,GAAG,sDAAsD,SAAS;EAC7E,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAwC;CACzE,OACE,oBAAC,SAAD;EACE,aAAU;EACV,WAAW,GAAG,8BAA8B,SAAS;EACrD,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,YAAY,EAAE,WAAW,GAAG,SAAwC;CAC3E,OACE,oBAAC,SAAD;EACE,aAAU;EACV,WAAW,GAAG,8DAA8D,SAAS;EACrF,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,SAAS,EAAE,WAAW,GAAG,SAAqC;CACrE,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GACT,sHACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GACT,yKACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,UAAU,EAAE,WAAW,GAAG,SAAqC;CACtE,OACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GACT,4HACA,SACF;EACA,GAAI;CACL,CAAA;AAEL;;AAGA,SAAS,aAAa,EAAE,WAAW,GAAG,SAA0C;CAC9E,OACE,oBAAC,WAAD;EACE,aAAU;EACV,WAAW,GAAG,+BAA+B,SAAS;EACtD,GAAI;CACL,CAAA;AAEL"}
@@ -39,13 +39,13 @@ function Tabs({ className, variant = "pill", size = "md", orientation = "horizon
39
39
  })
40
40
  });
41
41
  }
42
- const tabsListVariants = (0, class_variance_authority.cva)("relative inline-flex items-center text-muted-foreground", {
42
+ const tabsListVariants = (0, class_variance_authority.cva)("relative inline-flex items-center text-muted-txt", {
43
43
  variants: {
44
44
  variant: {
45
45
  line: "gap-1 bg-transparent",
46
- pill: "justify-center rounded-lg bg-muted p-[3px]",
47
- segmented: "justify-center rounded-xl bg-muted p-1",
48
- fancy: "w-full items-stretch gap-2 bg-transparent"
46
+ pill: "justify-center rounded-10 bg-muted-bg p-0.75",
47
+ segmented: "justify-center rounded-12 bg-muted-bg p-1",
48
+ fancy: "w-full items-stretch gap-1 bg-transparent"
49
49
  },
50
50
  orientation: {
51
51
  horizontal: "",
@@ -62,19 +62,19 @@ const tabsListVariants = (0, class_variance_authority.cva)("relative inline-flex
62
62
  variant: ["pill", "segmented"],
63
63
  orientation: "horizontal",
64
64
  size: "sm",
65
- class: "h-8"
65
+ class: "h-6 p-0.5"
66
66
  },
67
67
  {
68
68
  variant: ["pill", "segmented"],
69
69
  orientation: "horizontal",
70
70
  size: "md",
71
- class: "h-9"
71
+ class: "h-8.75"
72
72
  },
73
73
  {
74
74
  variant: ["pill", "segmented"],
75
75
  orientation: "horizontal",
76
76
  size: "lg",
77
- class: "h-10"
77
+ class: "h-10 p-1"
78
78
  }
79
79
  ],
80
80
  defaultVariants: {
@@ -134,7 +134,7 @@ function TabsList({ className, children, tabPrefix, tabSuffix, ...props }) {
134
134
  isSegmented && indicator && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
135
135
  "data-slot": "tabs-indicator",
136
136
  "aria-hidden": true,
137
- className: "absolute z-0 rounded-lg bg-background shadow-sm transition-all duration-200 ease-out motion-reduce:transition-none",
137
+ className: "absolute z-0 rounded-8 bg-primary-bg shadow-sm transition-all duration-200 ease-out motion-reduce:transition-none",
138
138
  style: orientation === "vertical" ? {
139
139
  top: indicator.top,
140
140
  height: indicator.height,
@@ -152,13 +152,13 @@ function TabsList({ className, children, tabPrefix, tabSuffix, ...props }) {
152
152
  ]
153
153
  });
154
154
  }
155
- const tabsTriggerVariants = (0, class_variance_authority.cva)("relative inline-flex items-center justify-center gap-1.5 font-medium whitespace-nowrap text-foreground/70 outline-none transition-all hover:text-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
155
+ const tabsTriggerVariants = (0, class_variance_authority.cva)("relative inline-flex items-center justify-center gap-1.5 font-medium whitespace-nowrap text-primary-txt outline-none transition-all focus-visible:ring-3 focus-visible:ring-focus disabled:pointer-events-none disabled:opacity-50 data-[state=active]:text-primary-txt [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
156
156
  variants: {
157
157
  variant: {
158
158
  line: "h-[calc(100%-1px)] flex-1 rounded-none",
159
- pill: "h-[calc(100%-1px)] flex-1 rounded-10 border border-transparent data-[state=active]:bg-background data-[state=active]:shadow-sm",
160
- segmented: "z-[1] h-[calc(100%-1px)] flex-1 rounded-lg",
161
- fancy: "mb-1.5 flex-1 justify-between rounded-xl bg-[var(--glass-subtle)] backdrop-blur-glass hover:bg-[var(--glass-light)] data-[state=active]:mb-0 data-[state=active]:rounded-b-none data-[state=active]:bg-[var(--glass-light)]"
159
+ pill: "h-[calc(100%-1px)] flex-1 rounded-10 border border-transparent data-[state=active]:bg-primary-bg data-[state=active]:shadow-sm",
160
+ segmented: "z-[1] h-[calc(100%-1px)] flex-1 rounded-8",
161
+ fancy: require_cn.cn("mb-1 flex-1 justify-between rounded-16 font-normal backdrop-blur-glass", "bg-gradient-to-b from-glass-60-bg from-[3.4%] to-glass-20-bg", "data-[state=inactive]:hover:bg-none data-[state=inactive]:hover:bg-glass-none-bg", "data-[state=active]:mb-0 data-[state=active]:rounded-b-none data-[state=active]:from-glass-none-bg data-[state=active]:to-glass-40-bg data-[state=active]:to-[72.6%] data-[state=active]:font-semibold", "data-[state=active]:before:absolute data-[state=active]:before:-left-4 data-[state=active]:before:bottom-0 data-[state=active]:before:size-4 data-[state=active]:before:bg-[radial-gradient(circle_at_top_left,transparent_15.5px,var(--glass-40-bg)_16px)]", "data-[state=active]:after:absolute data-[state=active]:after:-right-4 data-[state=active]:after:bottom-0 data-[state=active]:after:size-4 data-[state=active]:after:bg-[radial-gradient(circle_at_top_right,transparent_15.5px,var(--glass-40-bg)_16px)]", "first:before:hidden last:after:hidden")
162
162
  },
163
163
  orientation: {
164
164
  horizontal: "",
@@ -178,7 +178,7 @@ const tabsTriggerVariants = (0, class_variance_authority.cva)("relative inline-f
178
178
  "segmented"
179
179
  ],
180
180
  size: "sm",
181
- class: "px-1.5 py-1 text-xs"
181
+ class: "px-2 py-0.5 text-xs leading-4"
182
182
  },
183
183
  {
184
184
  variant: [
@@ -187,7 +187,7 @@ const tabsTriggerVariants = (0, class_variance_authority.cva)("relative inline-f
187
187
  "segmented"
188
188
  ],
189
189
  size: "md",
190
- class: "px-2 py-1 text-sm"
190
+ class: "px-2 py-1 text-sm leading-5"
191
191
  },
192
192
  {
193
193
  variant: [
@@ -196,7 +196,7 @@ const tabsTriggerVariants = (0, class_variance_authority.cva)("relative inline-f
196
196
  "segmented"
197
197
  ],
198
198
  size: "lg",
199
- class: "px-3 py-1 text-base"
199
+ class: "px-2 py-1.5 text-sm leading-5"
200
200
  },
201
201
  {
202
202
  variant: "fancy",
@@ -206,22 +206,22 @@ const tabsTriggerVariants = (0, class_variance_authority.cva)("relative inline-f
206
206
  {
207
207
  variant: "fancy",
208
208
  size: "md",
209
- class: "px-4 py-3 text-sm"
209
+ class: "px-6 py-3 text-sm"
210
210
  },
211
211
  {
212
212
  variant: "fancy",
213
213
  size: "lg",
214
- class: "px-4 py-4 text-base"
214
+ class: "px-6 py-4 text-base"
215
215
  },
216
216
  {
217
217
  variant: "line",
218
218
  orientation: "horizontal",
219
- class: "after:absolute after:inset-x-0 after:bottom-[-5px] after:h-0.5 after:bg-foreground after:opacity-0 after:transition-opacity data-[state=active]:after:opacity-100"
219
+ class: "after:absolute after:inset-x-0 after:bottom-[-5px] after:h-0.5 after:bg-primary-txt after:opacity-0 after:transition-opacity data-[state=active]:after:opacity-100"
220
220
  },
221
221
  {
222
222
  variant: "line",
223
223
  orientation: "vertical",
224
- class: "after:absolute after:inset-y-0 after:right-[-5px] after:w-0.5 after:bg-foreground after:opacity-0 after:transition-opacity data-[state=active]:after:opacity-100"
224
+ class: "after:absolute after:inset-y-0 after:right-[-5px] after:w-0.5 after:bg-primary-txt after:opacity-0 after:transition-opacity data-[state=active]:after:opacity-100"
225
225
  }
226
226
  ],
227
227
  defaultVariants: {
@@ -248,7 +248,7 @@ function TabsContent({ className, ...props }) {
248
248
  const { variant } = react.useContext(TabsContext);
249
249
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(radix_ui.Tabs.Content, {
250
250
  "data-slot": "tabs-content",
251
- className: require_cn.cn("flex-1 outline-none", variant === "fancy" && "flex-none rounded-xl rounded-t-none bg-[var(--glass-light)] p-5 backdrop-blur-glass", className),
251
+ className: require_cn.cn("flex-1 outline-none", variant === "fancy" && "flex-none rounded-16 rounded-t-none bg-glass-40-bg p-5 backdrop-blur-glass", className),
252
252
  ...props
253
253
  });
254
254
  }
@@ -256,7 +256,7 @@ function TabsContent({ className, ...props }) {
256
256
  function TabsCounter({ className, ...props }) {
257
257
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
258
258
  "data-slot": "tabs-counter",
259
- className: require_cn.cn("ml-1 inline-flex h-4 min-w-4 items-center justify-center rounded-full bg-muted px-1 text-xs font-medium text-muted-foreground", "group-data-[variant=fancy]/tabs:h-5 group-data-[variant=fancy]/tabs:min-w-5 group-data-[variant=fancy]/tabs:bg-inverse group-data-[variant=fancy]/tabs:text-inverse-foreground", className),
259
+ className: require_cn.cn("ml-1 inline-flex h-4 min-w-4 items-center justify-center rounded-full bg-muted-bg px-1 text-xs font-medium text-muted-txt", "group-data-[variant=fancy]/tabs:h-5 group-data-[variant=fancy]/tabs:min-w-5 group-data-[variant=fancy]/tabs:bg-primary-invert-bg group-data-[variant=fancy]/tabs:px-2 group-data-[variant=fancy]/tabs:leading-4 group-data-[variant=fancy]/tabs:font-semibold group-data-[variant=fancy]/tabs:text-primary-invert-txt", className),
260
260
  ...props
261
261
  });
262
262
  }