@nexus-cross/design-system 1.0.4-beta.1 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/cursor-rules/nexus-project-setup.mdc +167 -145
  2. package/cursor-rules/nexus-ui-api.mdc +894 -311
  3. package/cursor-rules/nexus-ui-components.mdc +179 -91
  4. package/dist/accordion.js +7 -7
  5. package/dist/accordion.mjs +2 -2
  6. package/dist/alert.d.mts +17 -0
  7. package/dist/alert.d.ts +17 -0
  8. package/dist/alert.js +16 -0
  9. package/dist/alert.mjs +3 -0
  10. package/dist/avatar.js +4 -4
  11. package/dist/avatar.mjs +2 -2
  12. package/dist/badge.d.mts +18 -0
  13. package/dist/badge.d.ts +18 -0
  14. package/dist/badge.js +16 -0
  15. package/dist/badge.mjs +3 -0
  16. package/dist/breadcrumb.d.mts +15 -0
  17. package/dist/breadcrumb.d.ts +15 -0
  18. package/dist/breadcrumb.js +12 -0
  19. package/dist/breadcrumb.mjs +3 -0
  20. package/dist/button.js +4 -4
  21. package/dist/button.mjs +2 -2
  22. package/dist/carousel.js +8 -8
  23. package/dist/carousel.mjs +2 -2
  24. package/dist/checkbox.js +5 -5
  25. package/dist/checkbox.mjs +2 -2
  26. package/dist/chip.d.mts +1 -1
  27. package/dist/chip.d.ts +1 -1
  28. package/dist/chip.js +4 -4
  29. package/dist/chip.mjs +2 -2
  30. package/dist/chunks/{chunk-5TBXVD56.js → chunk-2MC7XJSE.js} +16 -6
  31. package/dist/chunks/chunk-2N2EPBO4.js +120 -0
  32. package/dist/chunks/{chunk-BEA727LO.mjs → chunk-2RPRCWKV.mjs} +57 -26
  33. package/dist/chunks/chunk-2UPGFY6E.mjs +76 -0
  34. package/dist/chunks/{chunk-5I2VRWWU.js → chunk-2ZXDXO4I.js} +32 -38
  35. package/dist/chunks/{chunk-RLP3U52D.mjs → chunk-33UFQJIO.mjs} +22 -40
  36. package/dist/chunks/{chunk-AOVU67NI.mjs → chunk-3HHJORN7.mjs} +23 -25
  37. package/dist/chunks/{chunk-TWHDXCKR.js → chunk-3PCNRCTB.js} +8 -8
  38. package/dist/chunks/chunk-3ZWN66YH.js +53 -0
  39. package/dist/chunks/chunk-4ENXP7WH.js +224 -0
  40. package/dist/chunks/{chunk-YEGPB7A7.js → chunk-5JHJNN2K.js} +4 -4
  41. package/dist/chunks/chunk-5PQ3UCKF.js +99 -0
  42. package/dist/chunks/chunk-6BWOKTVQ.mjs +87 -0
  43. package/dist/chunks/chunk-6DBRL6NA.mjs +81 -0
  44. package/dist/chunks/{chunk-C3E7CSKG.mjs → chunk-6FMDO6TT.mjs} +7 -8
  45. package/dist/chunks/{chunk-76CY4STF.js → chunk-7G65JBTN.js} +34 -66
  46. package/dist/chunks/{chunk-GMIGQ5VP.mjs → chunk-ADO7PDLY.mjs} +15 -35
  47. package/dist/chunks/{chunk-ZINDMFOI.js → chunk-AFSEYJZT.js} +24 -32
  48. package/dist/chunks/chunk-B5O6W3Z4.mjs +73 -0
  49. package/dist/chunks/{chunk-6FHK6CBR.js → chunk-B6G5TJRO.js} +7 -8
  50. package/dist/chunks/chunk-BBLBTOP4.js +205 -0
  51. package/dist/chunks/{chunk-5XVEYVYA.js → chunk-BLGQHR3M.js} +5 -8
  52. package/dist/chunks/{chunk-LVTD2UQN.mjs → chunk-BPUQ2CO2.mjs} +2 -2
  53. package/dist/chunks/{chunk-AWBGWBFS.js → chunk-BSZ2LN6E.js} +21 -27
  54. package/dist/chunks/chunk-C2DSAJTL.js +109 -0
  55. package/dist/chunks/{chunk-KWPIEHD2.mjs → chunk-CA3SOLI3.mjs} +1 -1
  56. package/dist/chunks/{chunk-MPKRXMCJ.js → chunk-CSJDDREF.js} +7 -10
  57. package/dist/chunks/chunk-CUTMLBC3.mjs +86 -0
  58. package/dist/chunks/chunk-CV4GMFWP.js +174 -0
  59. package/dist/chunks/{chunk-SXLMI7CZ.mjs → chunk-CWMLTXOH.mjs} +162 -234
  60. package/dist/chunks/chunk-CZC76ZD5.js +10 -0
  61. package/dist/chunks/chunk-DICN6GKE.js +99 -0
  62. package/dist/chunks/{chunk-TLTEUIBY.js → chunk-DLFV7ZZV.js} +4 -4
  63. package/dist/chunks/chunk-DO6VK2QQ.mjs +108 -0
  64. package/dist/chunks/chunk-DYPPVXQF.js +143 -0
  65. package/dist/chunks/{chunk-GQP7IXH2.mjs → chunk-ECVAVQUY.mjs} +23 -31
  66. package/dist/chunks/{chunk-3CHRUKSJ.mjs → chunk-EHAUUUWB.mjs} +3 -3
  67. package/dist/chunks/chunk-EJY7IVSK.mjs +31 -0
  68. package/dist/chunks/{chunk-G4XJG7XI.js → chunk-EVOOTSY5.js} +3 -10
  69. package/dist/chunks/chunk-FUIBYZZ4.mjs +98 -0
  70. package/dist/chunks/{chunk-VH5FF6DZ.mjs → chunk-GX6GSWX3.mjs} +7 -7
  71. package/dist/chunks/chunk-H2G5FMRN.mjs +75 -0
  72. package/dist/chunks/chunk-H2V7RHYV.mjs +120 -0
  73. package/dist/chunks/{chunk-DDMZSNTG.js → chunk-HFBTS42N.js} +168 -240
  74. package/dist/chunks/{chunk-OGUTGD4J.mjs → chunk-HNLI646G.mjs} +71 -39
  75. package/dist/chunks/{chunk-C6H2UNOX.js → chunk-IE4DGLMH.js} +13 -21
  76. package/dist/chunks/{chunk-U76LT5GE.js → chunk-IOSIQLZL.js} +2 -2
  77. package/dist/chunks/{chunk-ZCMKIB5U.js → chunk-J5ZKGPBY.js} +33 -41
  78. package/dist/chunks/{chunk-JUZHWKGS.mjs → chunk-K2TBLM3F.mjs} +6 -12
  79. package/dist/chunks/chunk-KZ7S5VN2.js +7 -0
  80. package/dist/chunks/{chunk-FHPHDK3O.mjs → chunk-LI7SFBUQ.mjs} +4 -4
  81. package/dist/chunks/{chunk-7OEK2KX3.mjs → chunk-LMMON5AU.mjs} +4 -4
  82. package/dist/chunks/{chunk-6DZVNFVY.js → chunk-LOQXCHKL.js} +4 -12
  83. package/dist/chunks/{chunk-377KBJQG.js → chunk-MA2VCCIY.js} +19 -22
  84. package/dist/chunks/chunk-MCKOWMLS.mjs +8 -0
  85. package/dist/chunks/chunk-MMCA33FW.mjs +85 -0
  86. package/dist/chunks/{chunk-TR5JBBEA.mjs → chunk-MRRKW5QN.mjs} +31 -39
  87. package/dist/chunks/{chunk-76K6KXCT.js → chunk-NFIPQZ4O.js} +1 -1
  88. package/dist/chunks/chunk-NZHK76R3.js +109 -0
  89. package/dist/chunks/{chunk-I7YJB2F5.js → chunk-OMN5YQCE.js} +3 -3
  90. package/dist/chunks/{chunk-B7UU3FSS.mjs → chunk-P2T72N62.mjs} +4 -7
  91. package/dist/chunks/chunk-P3DZKXG4.js +116 -0
  92. package/dist/chunks/chunk-P73MEU7N.mjs +150 -0
  93. package/dist/chunks/chunk-PDJTSQOC.js +59 -0
  94. package/dist/chunks/{chunk-RXVYL4AU.js → chunk-PEIEVKD5.js} +7 -13
  95. package/dist/chunks/chunk-PI464222.mjs +5 -0
  96. package/dist/chunks/{chunk-IJG7J2VU.mjs → chunk-QZ4QR3XV.mjs} +30 -36
  97. package/dist/chunks/{chunk-6NTASYZO.js → chunk-RS3SBY3I.js} +61 -30
  98. package/dist/chunks/{chunk-AKIBUO5A.mjs → chunk-RX5UKRYK.mjs} +19 -26
  99. package/dist/chunks/chunk-S2GMEC43.js +109 -0
  100. package/dist/chunks/{chunk-WJ2OVQD3.mjs → chunk-SGNRVYYQ.mjs} +19 -25
  101. package/dist/chunks/{chunk-IB5UCYQY.mjs → chunk-SJMCPSVH.mjs} +15 -5
  102. package/dist/chunks/chunk-UKRU46PH.mjs +182 -0
  103. package/dist/chunks/{chunk-WNFJ4NJN.mjs → chunk-ULGYTBCT.mjs} +3 -11
  104. package/dist/chunks/{chunk-TXYYBJBQ.js → chunk-VGO4Z2WH.js} +73 -41
  105. package/dist/chunks/{chunk-LBKBCI2K.mjs → chunk-VIGRCJAE.mjs} +3 -10
  106. package/dist/chunks/chunk-VVXQZ4XH.mjs +93 -0
  107. package/dist/chunks/{chunk-Z7OKV6NW.mjs → chunk-W4GG5A7K.mjs} +12 -20
  108. package/dist/chunks/chunk-WGGBE4ZD.mjs +201 -0
  109. package/dist/chunks/{chunk-WSWD5ZUJ.js → chunk-WKCXACMZ.js} +20 -27
  110. package/dist/chunks/{chunk-GSLIY6WW.js → chunk-X2SHTVZQ.js} +17 -37
  111. package/dist/chunks/chunk-X3CTJ7TD.js +108 -0
  112. package/dist/chunks/{chunk-U6KOUYWX.mjs → chunk-XG6QG65W.mjs} +7 -10
  113. package/dist/chunks/chunk-XGIJZ3NZ.js +160 -0
  114. package/dist/chunks/chunk-YB5ZKHVB.js +64 -0
  115. package/dist/chunks/{chunk-Q7H6LCNN.js → chunk-YCG4FZC3.js} +23 -25
  116. package/dist/chunks/{chunk-JZ3PWHKS.mjs → chunk-YLO4UKSC.mjs} +18 -21
  117. package/dist/chunks/chunk-YO5MSDPX.mjs +36 -0
  118. package/dist/chunks/{chunk-Q2TMXHPK.js → chunk-YZV6FWE7.js} +25 -43
  119. package/dist/chunks/chunk-ZI4LN2B2.js +96 -0
  120. package/dist/chunks/chunk-ZU4AWAFT.mjs +137 -0
  121. package/dist/chunks/chunk-ZWSIIGA3.mjs +58 -0
  122. package/dist/countdown.js +4 -4
  123. package/dist/countdown.mjs +2 -2
  124. package/dist/counter.js +2 -2
  125. package/dist/counter.mjs +1 -1
  126. package/dist/data-list.js +5 -5
  127. package/dist/data-list.mjs +4 -4
  128. package/dist/date-picker.d.mts +17 -0
  129. package/dist/date-picker.d.ts +17 -0
  130. package/dist/date-picker.js +12 -0
  131. package/dist/date-picker.mjs +3 -0
  132. package/dist/divider.js +4 -4
  133. package/dist/divider.mjs +2 -2
  134. package/dist/drawer.d.mts +1 -1
  135. package/dist/drawer.d.ts +1 -1
  136. package/dist/drawer.js +11 -11
  137. package/dist/drawer.mjs +2 -2
  138. package/dist/dropdown-menu.d.mts +30 -0
  139. package/dist/dropdown-menu.d.ts +30 -0
  140. package/dist/dropdown-menu.js +32 -0
  141. package/dist/dropdown-menu.mjs +3 -0
  142. package/dist/ellipsis.js +3 -3
  143. package/dist/ellipsis.mjs +2 -2
  144. package/dist/empty-state.d.mts +16 -0
  145. package/dist/empty-state.d.ts +16 -0
  146. package/dist/empty-state.js +16 -0
  147. package/dist/empty-state.mjs +3 -0
  148. package/dist/error-boundary.d.mts +1 -1
  149. package/dist/error-boundary.d.ts +1 -1
  150. package/dist/error-boundary.js +2 -2
  151. package/dist/error-boundary.mjs +1 -1
  152. package/dist/index.d.mts +15 -0
  153. package/dist/index.d.ts +15 -0
  154. package/dist/index.js +322 -200
  155. package/dist/index.mjs +49 -35
  156. package/dist/infinite-scroll.js +3 -3
  157. package/dist/infinite-scroll.mjs +2 -2
  158. package/dist/marquee.js +3 -3
  159. package/dist/marquee.mjs +2 -2
  160. package/dist/modal/index.js +13 -13
  161. package/dist/modal/index.mjs +4 -4
  162. package/dist/number-input.d.mts +1 -1
  163. package/dist/number-input.d.ts +1 -1
  164. package/dist/number-input.js +5 -5
  165. package/dist/number-input.mjs +2 -2
  166. package/dist/nx-image.d.mts +13 -0
  167. package/dist/nx-image.d.ts +13 -0
  168. package/dist/nx-image.js +12 -0
  169. package/dist/nx-image.mjs +3 -0
  170. package/dist/pagination.d.mts +1 -0
  171. package/dist/pagination.d.ts +1 -0
  172. package/dist/pagination.js +5 -5
  173. package/dist/pagination.mjs +2 -2
  174. package/dist/popover.d.mts +1 -1
  175. package/dist/popover.d.ts +1 -1
  176. package/dist/popover.js +8 -8
  177. package/dist/popover.mjs +2 -2
  178. package/dist/price-input.d.mts +36 -0
  179. package/dist/price-input.d.ts +36 -0
  180. package/dist/price-input.js +16 -0
  181. package/dist/price-input.mjs +3 -0
  182. package/dist/progress.d.mts +18 -0
  183. package/dist/progress.d.ts +18 -0
  184. package/dist/progress.js +16 -0
  185. package/dist/progress.mjs +3 -0
  186. package/dist/radio-group.js +6 -6
  187. package/dist/radio-group.mjs +2 -2
  188. package/dist/schemas/_all.json +2356 -404
  189. package/dist/schemas/accordion.json +14 -11
  190. package/dist/schemas/alert.json +49 -0
  191. package/dist/schemas/avatar.json +13 -7
  192. package/dist/schemas/badge.json +76 -0
  193. package/dist/schemas/breadcrumb.json +47 -0
  194. package/dist/schemas/button.json +27 -9
  195. package/dist/schemas/carousel.json +10 -4
  196. package/dist/schemas/carouselButton.json +20 -0
  197. package/dist/schemas/carouselDots.json +17 -0
  198. package/dist/schemas/carouselSlide.json +20 -0
  199. package/dist/schemas/checkBox.json +33 -8
  200. package/dist/schemas/chip.json +15 -6
  201. package/dist/schemas/clientOnly.json +19 -0
  202. package/dist/schemas/countdown.json +10 -7
  203. package/dist/schemas/counter.json +15 -9
  204. package/dist/schemas/dataList.json +10 -10
  205. package/dist/schemas/datePicker.json +56 -0
  206. package/dist/schemas/divider.json +8 -5
  207. package/dist/schemas/drawer.json +24 -2
  208. package/dist/schemas/drawerClose.json +24 -0
  209. package/dist/schemas/drawerContent.json +9 -6
  210. package/dist/schemas/drawerDescription.json +20 -0
  211. package/dist/schemas/drawerTitle.json +20 -0
  212. package/dist/schemas/drawerTrigger.json +24 -0
  213. package/dist/schemas/dropdownMenu.json +83 -0
  214. package/dist/schemas/ellipsis.json +17 -7
  215. package/dist/schemas/emptyState.json +44 -0
  216. package/dist/schemas/errorBoundary.json +22 -0
  217. package/dist/schemas/infiniteScroll.json +18 -9
  218. package/dist/schemas/marquee.json +12 -6
  219. package/dist/schemas/modalCall.json +81 -3
  220. package/dist/schemas/modalTemplate.json +67 -14
  221. package/dist/schemas/numberInput.json +42 -12
  222. package/dist/schemas/nxImage.json +56 -0
  223. package/dist/schemas/pagination.json +13 -6
  224. package/dist/schemas/popover.json +18 -9
  225. package/dist/schemas/priceInput.json +104 -0
  226. package/dist/schemas/progress.json +63 -0
  227. package/dist/schemas/radioGroup.json +19 -9
  228. package/dist/schemas/radioItem.json +12 -5
  229. package/dist/schemas/select.json +15 -9
  230. package/dist/schemas/selectItem.json +7 -4
  231. package/dist/schemas/skeleton.json +12 -6
  232. package/dist/schemas/slider.json +78 -0
  233. package/dist/schemas/spinner.json +11 -4
  234. package/dist/schemas/stepper.json +73 -0
  235. package/dist/schemas/switch.json +23 -5
  236. package/dist/schemas/tab.json +17 -14
  237. package/dist/schemas/table.json +75 -0
  238. package/dist/schemas/tableRow.json +32 -0
  239. package/dist/schemas/tagInput.json +70 -0
  240. package/dist/schemas/tdColumn.json +107 -0
  241. package/dist/schemas/textArea.json +72 -7
  242. package/dist/schemas/textInput.json +72 -10
  243. package/dist/schemas/themeProvider.json +65 -0
  244. package/dist/schemas/toastOptions.json +81 -0
  245. package/dist/schemas/toaster.json +76 -0
  246. package/dist/schemas/toggleGroup.json +88 -0
  247. package/dist/schemas/tooltip.json +12 -9
  248. package/dist/schemas/virtualGrid.json +22 -11
  249. package/dist/schemas/virtualList.json +14 -8
  250. package/dist/schemas.d.mts +1360 -81
  251. package/dist/schemas.d.ts +1360 -81
  252. package/dist/schemas.js +725 -273
  253. package/dist/schemas.mjs +698 -273
  254. package/dist/select.js +6 -6
  255. package/dist/select.mjs +2 -2
  256. package/dist/skeleton.js +3 -3
  257. package/dist/skeleton.mjs +2 -2
  258. package/dist/slider.d.mts +20 -0
  259. package/dist/slider.d.ts +20 -0
  260. package/dist/slider.js +16 -0
  261. package/dist/slider.mjs +3 -0
  262. package/dist/spinner.js +3 -3
  263. package/dist/spinner.mjs +2 -2
  264. package/dist/stepper.d.mts +20 -0
  265. package/dist/stepper.d.ts +20 -0
  266. package/dist/stepper.js +16 -0
  267. package/dist/stepper.mjs +3 -0
  268. package/dist/styles/layer.d.mts +3 -0
  269. package/dist/styles/layer.d.ts +3 -0
  270. package/dist/styles/layer.js +18 -0
  271. package/dist/styles/layer.mjs +16 -0
  272. package/dist/styles.css +3872 -2
  273. package/dist/styles.js +2 -5
  274. package/dist/styles.layered.css +3875 -0
  275. package/dist/styles.mjs +1 -4
  276. package/dist/switch.js +4 -4
  277. package/dist/switch.mjs +2 -2
  278. package/dist/tab.js +5 -5
  279. package/dist/tab.mjs +2 -2
  280. package/dist/table.d.mts +2 -2
  281. package/dist/table.d.ts +2 -2
  282. package/dist/table.js +9 -9
  283. package/dist/table.mjs +3 -3
  284. package/dist/tag-input.d.mts +21 -0
  285. package/dist/tag-input.d.ts +21 -0
  286. package/dist/tag-input.js +16 -0
  287. package/dist/tag-input.mjs +3 -0
  288. package/dist/text-area.d.mts +5 -1
  289. package/dist/text-area.d.ts +5 -1
  290. package/dist/text-area.js +4 -4
  291. package/dist/text-area.mjs +2 -2
  292. package/dist/text-input.d.mts +5 -1
  293. package/dist/text-input.d.ts +5 -1
  294. package/dist/text-input.js +4 -4
  295. package/dist/text-input.mjs +2 -2
  296. package/dist/toast.js +5 -5
  297. package/dist/toast.mjs +2 -2
  298. package/dist/toggle-group.d.mts +36 -0
  299. package/dist/toggle-group.d.ts +36 -0
  300. package/dist/toggle-group.js +16 -0
  301. package/dist/toggle-group.mjs +3 -0
  302. package/dist/tooltip.js +5 -5
  303. package/dist/tooltip.mjs +2 -2
  304. package/dist/utils/cn.d.mts +0 -10
  305. package/dist/utils/cn.d.ts +0 -10
  306. package/dist/utils/cn.js +2 -2
  307. package/dist/utils/cn.mjs +1 -1
  308. package/dist/virtual-scroll.js +4 -4
  309. package/dist/virtual-scroll.mjs +2 -2
  310. package/package.json +90 -17
  311. package/scripts/setup-cursor-rules.cjs +6 -6
  312. package/dist/chunks/chunk-7MT3QYE6.js +0 -92
  313. package/dist/chunks/chunk-FA2OPP3U.mjs +0 -140
  314. package/dist/chunks/chunk-FKZI2HTI.js +0 -104
  315. package/dist/chunks/chunk-NCQDOPBR.mjs +0 -86
  316. package/dist/chunks/chunk-NTN55ZIX.mjs +0 -113
  317. package/dist/chunks/chunk-Q7GQVAYY.js +0 -88
  318. package/dist/chunks/chunk-QJNQCLMV.js +0 -25
  319. package/dist/chunks/chunk-UDQXLI5Y.mjs +0 -81
  320. package/dist/chunks/chunk-UR6JOKVB.mjs +0 -65
  321. package/dist/chunks/chunk-WVIEIRK2.js +0 -136
  322. package/dist/chunks/chunk-XALPBGSC.mjs +0 -23
  323. package/dist/schemas/typography.json +0 -70
  324. package/dist/typography.d.mts +0 -19
  325. package/dist/typography.d.ts +0 -19
  326. package/dist/typography.js +0 -102
  327. package/dist/typography.mjs +0 -79
@@ -1,114 +1,202 @@
1
1
  ---
2
- description: '@nexus-cross/design-system 공용 컴포넌트 사용 규칙 AI가 코드 생성 반드시 따라야 하는 컴포넌트 사용 지침'
2
+ description: "@nexus-cross/design-system component usage rulesmandatory guidelines for AI code generation"
3
3
  alwaysApply: true
4
4
  ---
5
5
 
6
- # @nexus-cross/design-system 컴포넌트 사용 규칙
7
-
8
- > 프로젝트에는 `@nexus-cross/design-system` 디자인 시스템이 설치되어 있다.
9
- > 코드를 생성할 아래 규칙을 반드시 따른다.
10
-
11
- ## 핵심 원칙
12
-
13
- 1. **Figma 디자인에 아래 목록에 해당하는 UI 요소가 있으면, 반드시 `@nexus-cross/design-system`에서 import하여 사용한다.**
14
- 2. **동일 기능의 컴포넌트를 직접 구현하지 않는다.** 예: 직접 `<button className="...">` 대신 `<Button>`을 사용.
15
- 3. **스타일 커스텀은 `className` prop으로 오버라이드**한다. 래퍼 div를 추가하지 않는다.
16
- 4. **`asChild` prop**을 지원하는 컴포넌트는 렌더링 요소를 변경할 있다.
17
- 5. **variants 함수만 가져다 수도 있다** (예: `buttonVariants({ semantic: 'primary', variant: 'contained', size: 'lg' })`).
18
-
19
- ## 컴포넌트 매핑 가이드
20
-
21
- | Figma 요소 | 사용할 컴포넌트 | import |
22
- | ------------------ | ------------------------------ | ------------------------------------------------------------------------ |
23
- | 버튼 | `<Button>` | `import { Button } from '@nexus-cross/design-system'` |
24
- | 텍스트 입력 필드 | `<TextInput>` | `import { TextInput } from '@nexus-cross/design-system'` |
25
- | 텍스트 영역 | `<TextArea>` | `import { TextArea } from '@nexus-cross/design-system'` |
26
- | 셀렉트/드롭다운 | `<Select>` + `<SelectItem>` | `import { Select, SelectItem } from '@nexus-cross/design-system'` |
27
- | 체크박스 | `<CheckBox>` | `import { CheckBox } from '@nexus-cross/design-system'` |
28
- | 라디오 그룹 | `<RadioGroup>` + `<RadioItem>` | `import { RadioGroup, RadioItem } from '@nexus-cross/design-system'` |
29
- | 토글/스위치 | `<Switch>` | `import { Switch } from '@nexus-cross/design-system'` |
30
- | 칩/태그/뱃지 | `<Chip>` | `import { Chip } from '@nexus-cross/design-system'` |
31
- | 로딩 스피너 | `<Spinner>` | `import { Spinner } from '@nexus-cross/design-system'` |
32
- | 구분선 | `<Divider>` | `import { Divider } from '@nexus-cross/design-system'` |
33
- | 툴팁 | `<Tooltip>` | `import { Tooltip } from '@nexus-cross/design-system'` |
34
- | 팝오버 | `<Popover>` | `import { Popover } from '@nexus-cross/design-system'` |
35
- | 아코디언/접기 | `<Accordion>` | `import { Accordion } from '@nexus-cross/design-system'` |
36
- | 드로어/바텀시트 | `<Drawer>` | `import { Drawer } from '@nexus-cross/design-system'` |
37
- | 모달/다이얼로그 | `openModal()` | `import { openModal } from '@nexus-cross/design-system'` |
38
- | 토스트/알림 | `toast()` | `import { toast } from '@nexus-cross/design-system'` |
39
- | 테이블 | `<Table>` | `import { Table, TableRow, TdColumn } from '@nexus-cross/design-system'` |
40
- | 무한 스크롤 | `<InfiniteScroll>` | `import { InfiniteScroll } from '@nexus-cross/design-system'` |
41
- | 텍스트 말줄임 | `<Ellipsis>` | `import { Ellipsis } from '@nexus-cross/design-system'` |
42
- | 페이지네이션 | `<Pagination>` | `import { Pagination } from '@nexus-cross/design-system'` |
43
- | 숫자 입력 | `<NumberInput>` | `import { NumberInput } from '@nexus-cross/design-system'` |
44
- | 아바타/프로필 | `<Avatar>` | `import { Avatar } from '@nexus-cross/design-system'` |
45
- | 숫자 카운트 | `<Counter>` | `import { Counter } from '@nexus-cross/design-system'` |
46
- | 카운트다운 | `<Countdown>` | `import { Countdown } from '@nexus-cross/design-system'` |
47
- | 마퀴/흐르는 텍스트 | `<Marquee>` | `import { Marquee } from '@nexus-cross/design-system'` |
48
- | | `<Tab>` | `import { Tab } from '@nexus-cross/design-system'` |
49
- | 캐러셀/슬라이더 | `<Carousel>` | `import { Carousel, CarouselSlide } from '@nexus-cross/design-system'` |
50
- | 가상 스크롤 리스트 | `<VirtualList>` | `import { VirtualList } from '@nexus-cross/design-system'` |
51
- | 가상 스크롤 그리드 | `<VirtualGrid>` | `import { VirtualGrid } from '@nexus-cross/design-system'` |
52
- | 데이터 리스트 | `<DataList>` | `import { DataList } from '@nexus-cross/design-system'` |
53
- | 스켈레톤 로딩 | `<Skeleton>` | `import { Skeleton } from '@nexus-cross/design-system'` |
54
-
55
- ## 유틸리티 &
56
-
57
- | 기능 | 사용 | import |
58
- | ----------------------- | --------------------------------- | ----------------------------------------------------------------------------------- |
59
- | 클래스 병합 | `cn()` | `import { cn } from '@nexus-cross/design-system'` |
60
- | 모달 | `useModal()` | `import { useModal } from '@nexus-cross/design-system'` |
61
- | 뷰포트 감지 | `useInView()` | `import { useInView } from '@nexus-cross/design-system'` |
62
- | 디바이스 체크 | `useCheckDevice()` | `import { useCheckDevice } from '@nexus-cross/design-system'` |
63
- | 외부 클릭 | `useClickOutside()` | `import { useClickOutside } from '@nexus-cross/design-system'` |
64
- | NumberInput 외부 바인딩 | `numberInputBind(ref, direction)` | `import { numberInputBind, type NumberInputRef } from '@nexus-cross/design-system'` |
65
-
66
- ## asChild 패턴
67
-
68
- `asChild`를 지원하는 컴포넌트: **Button**, **Chip**
6
+ # @nexus-cross/design-system Component Rules
7
+
8
+ > This project uses `@nexus-cross/design-system`.
9
+ > All generated code MUST follow the rules below.
10
+
11
+ ## Core Principles
12
+
13
+ 1. **If a UI element matches any component in the mapping guide below, you MUST import and use it from `@nexus-cross/design-system`.**
14
+ 2. **Never re-implement a component that already exists.** e.g. use `<Button>` instead of `<button className="...">`.
15
+ 3. **Use the `className` prop for style overrides.** Do not add wrapper divs.
16
+ 4. **Use `asChild` prop** to change the rendered element (supported by Button, Chip).
17
+ 5. **Variant functions can be used standalone** (e.g. `buttonVariants({ variant: 'primary', size: 'lg' })`).
18
+
19
+ ## Component Mapping Pre-step (MANDATORY)
20
+
21
+ **Before writing a single line of code**, map every UI element in the design to a NEXUS component.
22
+
23
+ 1. Identify **all interactive and visual elements** from the design (Figma / MCP output / screenshot).
24
+ 2. For each element, ask: **"Does this map to a component in the mapping guide below?"**
25
+ 3. Document the mapping as a table or list, then start coding.
26
+ 4. Before using any native HTML element (`<button>`, `<img>`, `<span>`, etc.), you MUST verify there is no NEXUS replacement.
27
+
28
+ Example mapping:
29
+ ```
30
+ Detected Element → NEXUS Component
31
+ ──────────────────────────────────────────
32
+ Circular profile images (8) → <Avatar>
33
+ Category filter tabs (5) → <Tab>
34
+ Icon-only buttons (4) → <Button variant="ghost">
35
+ Yes/No status badges (12) → <Chip variant="filled" size="sm">
36
+ Search input field (1) → <TextInput>
37
+ Dividers (2) <Divider>
38
+ ```
39
+
40
+ ## Component Mapping Guide
41
+
42
+ | UI Element | Component | import |
43
+ |---|---|---|
44
+ | Button | `<Button>` | `import { Button } from '@nexus-cross/design-system'` |
45
+ | Text input | `<TextInput>` | `import { TextInput } from '@nexus-cross/design-system'` |
46
+ | Text area | `<TextArea>` | `import { TextArea } from '@nexus-cross/design-system'` |
47
+ | Select / Dropdown | `<Select>` + `<SelectItem>` | `import { Select, SelectItem } from '@nexus-cross/design-system'` |
48
+ | Checkbox | `<CheckBox>` | `import { CheckBox } from '@nexus-cross/design-system'` |
49
+ | Radio group | `<RadioGroup>` + `<RadioItem>` | `import { RadioGroup, RadioItem } from '@nexus-cross/design-system'` |
50
+ | Toggle / Switch | `<Switch>` | `import { Switch } from '@nexus-cross/design-system'` |
51
+ | Chip / Tag / Badge | `<Chip>` | `import { Chip } from '@nexus-cross/design-system'` |
52
+ | Loading spinner | `<Spinner>` | `import { Spinner } from '@nexus-cross/design-system'` |
53
+ | Divider | `<Divider>` | `import { Divider } from '@nexus-cross/design-system'` |
54
+ | Tooltip | `<Tooltip>` | `import { Tooltip } from '@nexus-cross/design-system'` |
55
+ | Popover | `<Popover>` | `import { Popover } from '@nexus-cross/design-system'` |
56
+ | Accordion / Collapsible | `<Accordion>` | `import { Accordion } from '@nexus-cross/design-system'` |
57
+ | Drawer / Bottom sheet | `<Drawer>` | `import { Drawer } from '@nexus-cross/design-system'` |
58
+ | Modal / Dialog | `openModal()` | `import { openModal } from '@nexus-cross/design-system'` |
59
+ | Toast / Notification | `toast()` | `import { toast } from '@nexus-cross/design-system'` |
60
+ | Table | `<Table>` | `import { Table, TableRow, TdColumn } from '@nexus-cross/design-system'` |
61
+ | Infinite scroll | `<InfiniteScroll>` | `import { InfiniteScroll } from '@nexus-cross/design-system'` |
62
+ | Text ellipsis | `<Ellipsis>` | `import { Ellipsis } from '@nexus-cross/design-system'` |
63
+ | Pagination | `<Pagination>` | `import { Pagination } from '@nexus-cross/design-system'` |
64
+ | Number input | `<NumberInput>` | `import { NumberInput } from '@nexus-cross/design-system'` |
65
+ | Avatar / Profile | `<Avatar>` | `import { Avatar } from '@nexus-cross/design-system'` |
66
+ | Counter | `<Counter>` | `import { Counter } from '@nexus-cross/design-system'` |
67
+ | Countdown | `<Countdown>` | `import { Countdown } from '@nexus-cross/design-system'` |
68
+ | Marquee | `<Marquee>` | `import { Marquee } from '@nexus-cross/design-system'` |
69
+ | Tab | `<Tab>` | `import { Tab } from '@nexus-cross/design-system'` |
70
+ | Carousel / Slider | `<Carousel>` | `import { Carousel, CarouselSlide } from '@nexus-cross/design-system'` |
71
+ | Virtual scroll list | `<VirtualList>` | `import { VirtualList } from '@nexus-cross/design-system'` |
72
+ | Virtual scroll grid | `<VirtualGrid>` | `import { VirtualGrid } from '@nexus-cross/design-system'` |
73
+ | Data list | `<DataList>` | `import { DataList } from '@nexus-cross/design-system'` |
74
+ | Skeleton loader | `<Skeleton>` | `import { Skeleton } from '@nexus-cross/design-system'` |
75
+
76
+ ## Visual Pattern → Component Mapping
77
+
78
+ The table above maps by Figma element name, which can miss **visual patterns**. If you see any pattern below, you MUST use the corresponding component.
79
+
80
+ | Visual Pattern on Screen | Component | Common Mistake |
81
+ |---|---|---|
82
+ | Circular/square profile image, user icon | `<Avatar>` | Using `<Image>` + `rounded-full` manually |
83
+ | Icon-only button (hamburger, X, settings, app launcher, etc.) | `<Button variant="ghost">` or `<Button variant="outlined">` | Using native `<button>` |
84
+ | Horizontal filter/tab group (single selection) | `<Tab>` | Repeating `<button>` manually |
85
+ | Small label / badge / status indicator (Yes/No, Active, New, etc.) | `<Chip>` | Using native `<span>` |
86
+ | Number increment/decrement UI (+/- buttons) | `<NumberInput>` + `numberInputBind` | Using `<input type="number">` + custom buttons |
87
+ | Data list with loading/empty states | `<DataList>` | Using `{list.map()}` + manual conditional rendering |
88
+ | Overflowing text | `<Ellipsis>` | Applying `truncate` / `line-clamp` directly |
89
+
90
+ ## Utilities & Hooks
91
+
92
+ | Feature | Usage | import |
93
+ |---|---|---|
94
+ | Class merge | `cn()` | `import { cn } from '@nexus-cross/design-system'` |
95
+ | Modal hook | `useModal()` | `import { useModal } from '@nexus-cross/design-system'` |
96
+ | Viewport detection | `useInView()` | `import { useInView } from '@nexus-cross/design-system'` |
97
+ | Device check | `useCheckDevice()` | `import { useCheckDevice } from '@nexus-cross/design-system'` |
98
+ | Outside click | `useClickOutside()` | `import { useClickOutside } from '@nexus-cross/design-system'` |
99
+
100
+ ## asChild Pattern
101
+
102
+ Components supporting `asChild`: **Button**, **Chip**
69
103
 
70
104
  ```tsx
71
- // Button <a> 태그로 렌더링
72
- <Button asChild semantic="primary" variant="contained">
105
+ // Render Button as <a>
106
+ <Button asChild variant="primary">
73
107
  <a href="/about">About</a>
74
108
  </Button>
75
109
 
76
- // Chip <li>로 렌더링
110
+ // Render Chip as <li>
77
111
  <Chip asChild variant="accent" size="sm">
78
- <li>리스트 아이템</li>
112
+ <li>List item</li>
79
113
  </Chip>
80
114
  ```
81
115
 
82
- ## variants 함수만 사용하기
116
+ ## Using Variant Functions Only
83
117
 
84
- 컴포넌트를 사용하지 않고 variant 클래스만 필요할 때:
118
+ When you only need variant classes without the component:
85
119
 
86
120
  ```tsx
87
- import { buttonVariants } from '@nexus-cross/design-system'
88
-
89
- // 직접 <a> 태그에 Button 스타일 적용
90
- ;<a
91
- href="/link"
92
- className={buttonVariants({
93
- semantic: 'primary',
94
- variant: 'outlined',
95
- size: 'sm',
96
- })}
97
- >
98
- 링크
121
+ import { buttonVariants } from '@nexus-cross/design-system';
122
+
123
+ <a href="/link" className={buttonVariants({ variant: 'outline', size: 'sm' })}>
124
+ Link
99
125
  </a>
100
126
  ```
101
127
 
102
- 사용 가능한 variants 함수: `buttonVariants`, `chipVariants`, `switchVariants`, `textInputVariants`, `textAreaVariants`, `checkBoxVariants`, `radioGroupVariants`, `radioItemVariants`, `dividerVariants`, `typographyVariants`, `selectTriggerVariants`, `selectContentVariants`, `tooltipContentVariants`, `popoverContentVariants`, `drawerContentVariants`
128
+ Available variant functions: `buttonVariants`, `chipVariants`, `switchVariants`, `textInputVariants`, `textAreaVariants`, `checkBoxVariants`, `radioGroupVariants`, `radioItemVariants`, `dividerVariants`, `selectTriggerVariants`, `selectContentVariants`, `tooltipContentVariants`, `popoverContentVariants`, `drawerContentVariants`
129
+
130
+ ## When Customization Is Needed
131
+
132
+ 1. **Style-only difference**: Override with `className` prop.
133
+ 2. **Project-specific variant**: Create a project wrapper component that uses the NEXUS component internally.
134
+ 3. **Completely different structure**: Use native elements ONLY when NEXUS component props and `className` override **cannot produce the desired result by any means**.
135
+
136
+ ### Checklist Before Using Native Elements
137
+
138
+ Before using any native HTML element (`<button>`, `<img>`, `<span>`, etc.), you MUST confirm all of the following:
139
+
140
+ - [ ] No matching component exists in both the "Component Mapping Guide" and "Visual Pattern → Component Mapping" tables above?
141
+ - [ ] Cannot achieve the desired style by passing `className` to a NEXUS component?
142
+ - [ ] Cannot use the NEXUS component by placing surrounding elements (icons, labels) outside of it?
143
+
144
+ ### Common Misjudgments (DO NOT make these mistakes)
145
+
146
+ ```
147
+ WRONG: "It only has an icon, so it's not a Button"
148
+ RIGHT: → <Button variant="ghost" size="sm"> + icon children
149
+
150
+ WRONG: "There's a filter icon next to it, so Tab structure doesn't match"
151
+ RIGHT: → Place the icon outside and use <Tab>
152
+
153
+ WRONG: "It's a small label, not a Chip"
154
+ RIGHT: → <Chip variant="filled" size="sm"> matches exactly
155
+
156
+ WRONG: "It displays an image directly, not an Avatar"
157
+ RIGHT: → <Avatar src={url} alt={name} size="sm" />
158
+ ```
159
+
160
+ ## className Override Rules
161
+
162
+ `@nexus-cross/design-system` components internally use Tailwind classes with the `nx:` prefix.
163
+ The `cn()` function automatically resolves cross-prefix conflicts, so **consumers should pass regular Tailwind classes without `!` (important).**
164
+
165
+ ```tsx
166
+ // CORRECT — pass without !
167
+ <Avatar className="size-9" />
168
+ <Button className="bg-red-500 px-8" />
169
+
170
+ // FORBIDDEN — do not use ! (important modifier)
171
+ <Avatar className="!size-9" />
172
+ <Button className="!bg-red-500 !px-8" />
173
+ ```
174
+
175
+ ## CSS Import by Environment (Required)
103
176
 
104
- ## 커스텀이 필요한 경우
177
+ Choose one of two CSS entry points depending on the project environment:
105
178
 
106
- 1. **스타일만 다를 때**: `className` prop으로 오버라이드
107
- 2. **variant가 프로젝트 전용일 때**: 프로젝트 래퍼 컴포넌트 생성 (공용 컴포넌트를 내부에서 사용)
108
- 3. **구조가 완전히 다를 때**: `<button>` 네이티브 요소 직접 사용 가능 (강제 아님)
179
+ | Environment | import |
180
+ |---|---|
181
+ | Tailwind v3 / Plain CSS / CSS Modules | `@nexus-cross/design-system/styles` |
182
+ | Tailwind v4 | `@nexus-cross/design-system/styles/layer` |
183
+
184
+ ```tsx
185
+ // TW v3 / Plain CSS / CSS Modules
186
+ import '@nexus-cross/design-system/styles'
187
+
188
+ // TW v4 (wrapped in @layer nexus — ensures className utility overrides)
189
+ import '@nexus-cross/design-system/styles/layer'
190
+ ```
191
+
192
+ For Tailwind v4 projects, also declare layer order in `globals.css`:
193
+ ```css
194
+ @layer base, nexus, components, utilities;
195
+ ```
109
196
 
110
- ## 금지 사항
197
+ ## Prohibited
111
198
 
112
- - `@nexus-cross/design-system`에 이미 있는 컴포넌트를 직접 구현하지 않는다
113
- - Radix UI, Headless UI 등을 직접 import하여 동일 기능 컴포넌트를 만들지 않는다
114
- - `@nexus-cross/design-system` 컴포넌트의 내부 구현을 복사하지 않는다
199
+ - Do NOT re-implement any component that exists in `@nexus-cross/design-system`
200
+ - Do NOT import Radix UI, Headless UI, etc. to build equivalent components
201
+ - Do NOT copy internal implementations of `@nexus-cross/design-system` components
202
+ - **Do NOT use `!` (Tailwind important modifier) in `className` overrides** — `cn()` resolves prefix conflicts automatically
package/dist/accordion.js CHANGED
@@ -1,28 +1,28 @@
1
1
  'use strict';
2
2
 
3
- var chunkMPKRXMCJ_js = require('./chunks/chunk-MPKRXMCJ.js');
4
- require('./chunks/chunk-QJNQCLMV.js');
3
+ var chunkCSJDDREF_js = require('./chunks/chunk-CSJDDREF.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
5
  require('./chunks/chunk-JNMCYWGY.js');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "Accordion", {
10
10
  enumerable: true,
11
- get: function () { return chunkMPKRXMCJ_js.Accordion; }
11
+ get: function () { return chunkCSJDDREF_js.Accordion; }
12
12
  });
13
13
  Object.defineProperty(exports, "AccordionContent", {
14
14
  enumerable: true,
15
- get: function () { return chunkMPKRXMCJ_js.AccordionContent; }
15
+ get: function () { return chunkCSJDDREF_js.AccordionContent; }
16
16
  });
17
17
  Object.defineProperty(exports, "AccordionItem", {
18
18
  enumerable: true,
19
- get: function () { return chunkMPKRXMCJ_js.AccordionItem; }
19
+ get: function () { return chunkCSJDDREF_js.AccordionItem; }
20
20
  });
21
21
  Object.defineProperty(exports, "AccordionRoot", {
22
22
  enumerable: true,
23
- get: function () { return chunkMPKRXMCJ_js.AccordionRoot; }
23
+ get: function () { return chunkCSJDDREF_js.AccordionRoot; }
24
24
  });
25
25
  Object.defineProperty(exports, "AccordionTrigger", {
26
26
  enumerable: true,
27
- get: function () { return chunkMPKRXMCJ_js.AccordionTrigger; }
27
+ get: function () { return chunkCSJDDREF_js.AccordionTrigger; }
28
28
  });
@@ -1,3 +1,3 @@
1
- export { Accordion, AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger } from './chunks/chunk-U6KOUYWX.mjs';
2
- import './chunks/chunk-XALPBGSC.mjs';
1
+ export { Accordion, AccordionContent, AccordionItem, AccordionRoot, AccordionTrigger } from './chunks/chunk-XG6QG65W.mjs';
2
+ import './chunks/chunk-MCKOWMLS.mjs';
3
3
  import './chunks/chunk-CVYXRSXT.mjs';
@@ -0,0 +1,17 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ declare const alertVariants: (props?: ({
6
+ variant?: "danger" | "info" | "success" | "warning" | null | undefined;
7
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
8
+ interface AlertProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
9
+ title?: string;
10
+ icon?: React.ReactNode;
11
+ closable?: boolean;
12
+ onClose?: () => void;
13
+ action?: React.ReactNode;
14
+ }
15
+ declare const Alert: React.ForwardRefExoticComponent<AlertProps & React.RefAttributes<HTMLDivElement>>;
16
+
17
+ export { Alert, type AlertProps, alertVariants };
@@ -0,0 +1,17 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ declare const alertVariants: (props?: ({
6
+ variant?: "danger" | "info" | "success" | "warning" | null | undefined;
7
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
8
+ interface AlertProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
9
+ title?: string;
10
+ icon?: React.ReactNode;
11
+ closable?: boolean;
12
+ onClose?: () => void;
13
+ action?: React.ReactNode;
14
+ }
15
+ declare const Alert: React.ForwardRefExoticComponent<AlertProps & React.RefAttributes<HTMLDivElement>>;
16
+
17
+ export { Alert, type AlertProps, alertVariants };
package/dist/alert.js ADDED
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var chunk5PQ3UCKF_js = require('./chunks/chunk-5PQ3UCKF.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
+ require('./chunks/chunk-JNMCYWGY.js');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, "Alert", {
10
+ enumerable: true,
11
+ get: function () { return chunk5PQ3UCKF_js.Alert; }
12
+ });
13
+ Object.defineProperty(exports, "alertVariants", {
14
+ enumerable: true,
15
+ get: function () { return chunk5PQ3UCKF_js.alertVariants; }
16
+ });
package/dist/alert.mjs ADDED
@@ -0,0 +1,3 @@
1
+ export { Alert, alertVariants } from './chunks/chunk-2UPGFY6E.mjs';
2
+ import './chunks/chunk-MCKOWMLS.mjs';
3
+ import './chunks/chunk-CVYXRSXT.mjs';
package/dist/avatar.js CHANGED
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var chunk377KBJQG_js = require('./chunks/chunk-377KBJQG.js');
4
- require('./chunks/chunk-QJNQCLMV.js');
3
+ var chunkMA2VCCIY_js = require('./chunks/chunk-MA2VCCIY.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
5
  require('./chunks/chunk-JNMCYWGY.js');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "Avatar", {
10
10
  enumerable: true,
11
- get: function () { return chunk377KBJQG_js.Avatar; }
11
+ get: function () { return chunkMA2VCCIY_js.Avatar; }
12
12
  });
13
13
  Object.defineProperty(exports, "avatarVariants", {
14
14
  enumerable: true,
15
- get: function () { return chunk377KBJQG_js.avatarVariants; }
15
+ get: function () { return chunkMA2VCCIY_js.avatarVariants; }
16
16
  });
package/dist/avatar.mjs CHANGED
@@ -1,3 +1,3 @@
1
- export { Avatar, avatarVariants } from './chunks/chunk-JZ3PWHKS.mjs';
2
- import './chunks/chunk-XALPBGSC.mjs';
1
+ export { Avatar, avatarVariants } from './chunks/chunk-YLO4UKSC.mjs';
2
+ import './chunks/chunk-MCKOWMLS.mjs';
3
3
  import './chunks/chunk-CVYXRSXT.mjs';
@@ -0,0 +1,18 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ declare const badgeVariants: (props?: ({
6
+ variant?: "primary" | "secondary" | "danger" | "info" | "success" | "warning" | null | undefined;
7
+ size?: "lg" | "md" | "sm" | null | undefined;
8
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
9
+ interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
10
+ count?: number;
11
+ max?: number;
12
+ dot?: boolean;
13
+ showZero?: boolean;
14
+ offset?: [number, number];
15
+ }
16
+ declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
17
+
18
+ export { Badge, type BadgeProps, badgeVariants };
@@ -0,0 +1,18 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as React from 'react';
3
+ import { VariantProps } from 'class-variance-authority';
4
+
5
+ declare const badgeVariants: (props?: ({
6
+ variant?: "primary" | "secondary" | "danger" | "info" | "success" | "warning" | null | undefined;
7
+ size?: "lg" | "md" | "sm" | null | undefined;
8
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
9
+ interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
10
+ count?: number;
11
+ max?: number;
12
+ dot?: boolean;
13
+ showZero?: boolean;
14
+ offset?: [number, number];
15
+ }
16
+ declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
17
+
18
+ export { Badge, type BadgeProps, badgeVariants };
package/dist/badge.js ADDED
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var chunkS2GMEC43_js = require('./chunks/chunk-S2GMEC43.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
+ require('./chunks/chunk-JNMCYWGY.js');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, "Badge", {
10
+ enumerable: true,
11
+ get: function () { return chunkS2GMEC43_js.Badge; }
12
+ });
13
+ Object.defineProperty(exports, "badgeVariants", {
14
+ enumerable: true,
15
+ get: function () { return chunkS2GMEC43_js.badgeVariants; }
16
+ });
package/dist/badge.mjs ADDED
@@ -0,0 +1,3 @@
1
+ export { Badge, badgeVariants } from './chunks/chunk-CUTMLBC3.mjs';
2
+ import './chunks/chunk-MCKOWMLS.mjs';
3
+ import './chunks/chunk-CVYXRSXT.mjs';
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+
3
+ interface BreadcrumbItem {
4
+ label: React.ReactNode;
5
+ href?: string;
6
+ onClick?: () => void;
7
+ }
8
+ interface BreadcrumbProps extends React.HTMLAttributes<HTMLElement> {
9
+ items: BreadcrumbItem[];
10
+ separator?: React.ReactNode;
11
+ maxItems?: number;
12
+ }
13
+ declare const Breadcrumb: React.ForwardRefExoticComponent<BreadcrumbProps & React.RefAttributes<HTMLElement>>;
14
+
15
+ export { Breadcrumb, type BreadcrumbItem, type BreadcrumbProps };
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+
3
+ interface BreadcrumbItem {
4
+ label: React.ReactNode;
5
+ href?: string;
6
+ onClick?: () => void;
7
+ }
8
+ interface BreadcrumbProps extends React.HTMLAttributes<HTMLElement> {
9
+ items: BreadcrumbItem[];
10
+ separator?: React.ReactNode;
11
+ maxItems?: number;
12
+ }
13
+ declare const Breadcrumb: React.ForwardRefExoticComponent<BreadcrumbProps & React.RefAttributes<HTMLElement>>;
14
+
15
+ export { Breadcrumb, type BreadcrumbItem, type BreadcrumbProps };
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var chunk3ZWN66YH_js = require('./chunks/chunk-3ZWN66YH.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
+ require('./chunks/chunk-JNMCYWGY.js');
6
+
7
+
8
+
9
+ Object.defineProperty(exports, "Breadcrumb", {
10
+ enumerable: true,
11
+ get: function () { return chunk3ZWN66YH_js.Breadcrumb; }
12
+ });
@@ -0,0 +1,3 @@
1
+ export { Breadcrumb } from './chunks/chunk-EJY7IVSK.mjs';
2
+ import './chunks/chunk-MCKOWMLS.mjs';
3
+ import './chunks/chunk-CVYXRSXT.mjs';
package/dist/button.js CHANGED
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var chunkWVIEIRK2_js = require('./chunks/chunk-WVIEIRK2.js');
4
- require('./chunks/chunk-QJNQCLMV.js');
3
+ var chunkP3DZKXG4_js = require('./chunks/chunk-P3DZKXG4.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
5
  require('./chunks/chunk-JNMCYWGY.js');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "Button", {
10
10
  enumerable: true,
11
- get: function () { return chunkWVIEIRK2_js.Button; }
11
+ get: function () { return chunkP3DZKXG4_js.Button; }
12
12
  });
13
13
  Object.defineProperty(exports, "buttonVariants", {
14
14
  enumerable: true,
15
- get: function () { return chunkWVIEIRK2_js.buttonVariants; }
15
+ get: function () { return chunkP3DZKXG4_js.buttonVariants; }
16
16
  });
package/dist/button.mjs CHANGED
@@ -1,3 +1,3 @@
1
- export { Button, buttonVariants } from './chunks/chunk-NTN55ZIX.mjs';
2
- import './chunks/chunk-XALPBGSC.mjs';
1
+ export { Button, buttonVariants } from './chunks/chunk-VVXQZ4XH.mjs';
2
+ import './chunks/chunk-MCKOWMLS.mjs';
3
3
  import './chunks/chunk-CVYXRSXT.mjs';
package/dist/carousel.js CHANGED
@@ -1,32 +1,32 @@
1
1
  'use strict';
2
2
 
3
- var chunkQ7H6LCNN_js = require('./chunks/chunk-Q7H6LCNN.js');
4
- require('./chunks/chunk-QJNQCLMV.js');
3
+ var chunkYCG4FZC3_js = require('./chunks/chunk-YCG4FZC3.js');
4
+ require('./chunks/chunk-CZC76ZD5.js');
5
5
  require('./chunks/chunk-JNMCYWGY.js');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "Carousel", {
10
10
  enumerable: true,
11
- get: function () { return chunkQ7H6LCNN_js.Carousel; }
11
+ get: function () { return chunkYCG4FZC3_js.Carousel; }
12
12
  });
13
13
  Object.defineProperty(exports, "CarouselDots", {
14
14
  enumerable: true,
15
- get: function () { return chunkQ7H6LCNN_js.CarouselDots; }
15
+ get: function () { return chunkYCG4FZC3_js.CarouselDots; }
16
16
  });
17
17
  Object.defineProperty(exports, "CarouselNext", {
18
18
  enumerable: true,
19
- get: function () { return chunkQ7H6LCNN_js.CarouselNext; }
19
+ get: function () { return chunkYCG4FZC3_js.CarouselNext; }
20
20
  });
21
21
  Object.defineProperty(exports, "CarouselPrev", {
22
22
  enumerable: true,
23
- get: function () { return chunkQ7H6LCNN_js.CarouselPrev; }
23
+ get: function () { return chunkYCG4FZC3_js.CarouselPrev; }
24
24
  });
25
25
  Object.defineProperty(exports, "CarouselSlide", {
26
26
  enumerable: true,
27
- get: function () { return chunkQ7H6LCNN_js.CarouselSlide; }
27
+ get: function () { return chunkYCG4FZC3_js.CarouselSlide; }
28
28
  });
29
29
  Object.defineProperty(exports, "useCarousel", {
30
30
  enumerable: true,
31
- get: function () { return chunkQ7H6LCNN_js.useCarousel; }
31
+ get: function () { return chunkYCG4FZC3_js.useCarousel; }
32
32
  });