@tipp/ui 2.4.0 → 2.6.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 (727) hide show
  1. package/dist/app/index.cjs +1291 -837
  2. package/dist/app/index.cjs.map +1 -1
  3. package/dist/app/index.js +121 -120
  4. package/dist/app/platform/coach-question-list.cjs +822 -364
  5. package/dist/app/platform/coach-question-list.cjs.map +1 -1
  6. package/dist/app/platform/coach-question-list.js +48 -46
  7. package/dist/app/platform/contents-card.cjs +815 -357
  8. package/dist/app/platform/contents-card.cjs.map +1 -1
  9. package/dist/app/platform/contents-card.js +48 -46
  10. package/dist/app/platform/curriculum-card.cjs +65 -13
  11. package/dist/app/platform/curriculum-card.cjs.map +1 -1
  12. package/dist/app/platform/curriculum-card.js +6 -5
  13. package/dist/app/platform/edit-coaching-time.cjs +1012 -558
  14. package/dist/app/platform/edit-coaching-time.cjs.map +1 -1
  15. package/dist/app/platform/edit-coaching-time.js +96 -95
  16. package/dist/app/platform/edit-service-type.cjs +995 -541
  17. package/dist/app/platform/edit-service-type.cjs.map +1 -1
  18. package/dist/app/platform/edit-service-type.js +97 -96
  19. package/dist/app/platform/goal-manage-card-edit.cjs +991 -537
  20. package/dist/app/platform/goal-manage-card-edit.cjs.map +1 -1
  21. package/dist/app/platform/goal-manage-card-edit.js +96 -95
  22. package/dist/app/platform/goal-manage-card-read.cjs +865 -407
  23. package/dist/app/platform/goal-manage-card-read.cjs.map +1 -1
  24. package/dist/app/platform/goal-manage-card-read.js +48 -46
  25. package/dist/app/platform/on-offline-radio-card.cjs +785 -331
  26. package/dist/app/platform/on-offline-radio-card.cjs.map +1 -1
  27. package/dist/app/platform/on-offline-radio-card.js +96 -95
  28. package/dist/app/platform/report-card.cjs +828 -370
  29. package/dist/app/platform/report-card.cjs.map +1 -1
  30. package/dist/app/platform/report-card.js +48 -46
  31. package/dist/app/platform/reservation-card.cjs +1016 -562
  32. package/dist/app/platform/reservation-card.cjs.map +1 -1
  33. package/dist/app/platform/reservation-card.js +97 -96
  34. package/dist/app/platform/session-card.cjs +1069 -615
  35. package/dist/app/platform/session-card.cjs.map +1 -1
  36. package/dist/app/platform/session-card.js +99 -98
  37. package/dist/app/platform/session-review-simple-read.cjs +825 -367
  38. package/dist/app/platform/session-review-simple-read.cjs.map +1 -1
  39. package/dist/app/platform/session-review-simple-read.js +48 -46
  40. package/dist/app/platform/userInfos/coaching-customer-info/index.cjs +857 -399
  41. package/dist/app/platform/userInfos/coaching-customer-info/index.cjs.map +1 -1
  42. package/dist/app/platform/userInfos/coaching-customer-info/index.js +54 -52
  43. package/dist/app/platform/userInfos/coaching-customer-info/large.cjs +833 -375
  44. package/dist/app/platform/userInfos/coaching-customer-info/large.cjs.map +1 -1
  45. package/dist/app/platform/userInfos/coaching-customer-info/large.js +49 -47
  46. package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs +836 -378
  47. package/dist/app/platform/userInfos/coaching-customer-info/medium.cjs.map +1 -1
  48. package/dist/app/platform/userInfos/coaching-customer-info/medium.js +49 -47
  49. package/dist/app/platform/userInfos/coaching-customer-info/small.cjs +823 -365
  50. package/dist/app/platform/userInfos/coaching-customer-info/small.cjs.map +1 -1
  51. package/dist/app/platform/userInfos/coaching-customer-info/small.js +48 -46
  52. package/dist/app/platform/userInfos/session-user-info-detail.cjs +832 -374
  53. package/dist/app/platform/userInfos/session-user-info-detail.cjs.map +1 -1
  54. package/dist/app/platform/userInfos/session-user-info-detail.js +49 -47
  55. package/dist/app/platform/userInfos/utils.cjs +824 -366
  56. package/dist/app/platform/userInfos/utils.cjs.map +1 -1
  57. package/dist/app/platform/userInfos/utils.js +48 -46
  58. package/dist/atoms/alert-dialog.cjs +85 -1
  59. package/dist/atoms/alert-dialog.cjs.map +1 -1
  60. package/dist/atoms/alert-dialog.d.cts +18 -2
  61. package/dist/atoms/alert-dialog.d.ts +18 -2
  62. package/dist/atoms/alert-dialog.js +3 -1
  63. package/dist/atoms/aspect-ratio.d.cts +1 -0
  64. package/dist/atoms/aspect-ratio.d.ts +1 -0
  65. package/dist/atoms/avatar.cjs +39 -2
  66. package/dist/atoms/avatar.cjs.map +1 -1
  67. package/dist/atoms/avatar.d.cts +5 -2
  68. package/dist/atoms/avatar.d.ts +5 -2
  69. package/dist/atoms/avatar.js +2 -1
  70. package/dist/atoms/badge.cjs +34 -9
  71. package/dist/atoms/badge.cjs.map +1 -1
  72. package/dist/atoms/badge.d.cts +4 -5
  73. package/dist/atoms/badge.d.ts +4 -5
  74. package/dist/atoms/badge.js +2 -1
  75. package/dist/atoms/blockquote.cjs +71 -1
  76. package/dist/atoms/blockquote.cjs.map +1 -1
  77. package/dist/atoms/blockquote.d.cts +12 -1
  78. package/dist/atoms/blockquote.d.ts +12 -1
  79. package/dist/atoms/blockquote.js +2 -1
  80. package/dist/atoms/bullet-text.cjs +39 -2
  81. package/dist/atoms/bullet-text.cjs.map +1 -1
  82. package/dist/atoms/bullet-text.d.cts +1 -0
  83. package/dist/atoms/bullet-text.d.ts +1 -0
  84. package/dist/atoms/bullet-text.js +3 -2
  85. package/dist/atoms/button.cjs +33 -3
  86. package/dist/atoms/button.cjs.map +1 -1
  87. package/dist/atoms/button.d.cts +5 -3
  88. package/dist/atoms/button.d.ts +5 -3
  89. package/dist/atoms/button.js +2 -1
  90. package/dist/atoms/button.type.cjs.map +1 -1
  91. package/dist/atoms/button.type.d.cts +3 -1
  92. package/dist/atoms/button.type.d.ts +3 -1
  93. package/dist/atoms/call-out.cjs +78 -1
  94. package/dist/atoms/call-out.cjs.map +1 -1
  95. package/dist/atoms/call-out.d.cts +13 -1
  96. package/dist/atoms/call-out.d.ts +13 -1
  97. package/dist/atoms/call-out.js +2 -1
  98. package/dist/atoms/check-box-card.cjs +78 -1
  99. package/dist/atoms/check-box-card.cjs.map +1 -1
  100. package/dist/atoms/check-box-card.d.cts +12 -1
  101. package/dist/atoms/check-box-card.d.ts +12 -1
  102. package/dist/atoms/check-box-card.js +2 -1
  103. package/dist/atoms/check-box-group.cjs +40 -2
  104. package/dist/atoms/check-box-group.cjs.map +1 -1
  105. package/dist/atoms/check-box-group.d.cts +6 -0
  106. package/dist/atoms/check-box-group.d.ts +6 -0
  107. package/dist/atoms/check-box-group.js +2 -1
  108. package/dist/atoms/check-box.cjs +37 -2
  109. package/dist/atoms/check-box.cjs.map +1 -1
  110. package/dist/atoms/check-box.d.cts +5 -2
  111. package/dist/atoms/check-box.d.ts +5 -2
  112. package/dist/atoms/check-box.js +2 -1
  113. package/dist/atoms/code.cjs +73 -1
  114. package/dist/atoms/code.cjs.map +1 -1
  115. package/dist/atoms/code.d.cts +12 -1
  116. package/dist/atoms/code.d.ts +12 -1
  117. package/dist/atoms/code.js +2 -1
  118. package/dist/atoms/data-list.cjs +77 -1
  119. package/dist/atoms/data-list.cjs.map +1 -1
  120. package/dist/atoms/data-list.d.cts +14 -1
  121. package/dist/atoms/data-list.d.ts +14 -1
  122. package/dist/atoms/data-list.js +2 -1
  123. package/dist/atoms/dialog.cjs +49 -6
  124. package/dist/atoms/dialog.cjs.map +1 -1
  125. package/dist/atoms/dialog.js +4 -3
  126. package/dist/atoms/drawer.cjs +33 -3
  127. package/dist/atoms/drawer.cjs.map +1 -1
  128. package/dist/atoms/drawer.js +3 -2
  129. package/dist/atoms/dropdown-menu.cjs +63 -12
  130. package/dist/atoms/dropdown-menu.cjs.map +1 -1
  131. package/dist/atoms/dropdown-menu.d.cts +27 -17
  132. package/dist/atoms/dropdown-menu.d.ts +27 -17
  133. package/dist/atoms/dropdown-menu.js +3 -1
  134. package/dist/atoms/ellipsis-tooltip.cjs +73 -22
  135. package/dist/atoms/ellipsis-tooltip.cjs.map +1 -1
  136. package/dist/atoms/ellipsis-tooltip.d.cts +1 -0
  137. package/dist/atoms/ellipsis-tooltip.d.ts +1 -0
  138. package/dist/atoms/ellipsis-tooltip.js +5 -3
  139. package/dist/atoms/field-error-wrapper.cjs +39 -2
  140. package/dist/atoms/field-error-wrapper.cjs.map +1 -1
  141. package/dist/atoms/field-error-wrapper.js +3 -2
  142. package/dist/atoms/heading.cjs +38 -2
  143. package/dist/atoms/heading.cjs.map +1 -1
  144. package/dist/atoms/heading.d.cts +3 -1
  145. package/dist/atoms/heading.d.ts +3 -1
  146. package/dist/atoms/heading.js +2 -1
  147. package/dist/atoms/hover-card.cjs +85 -1
  148. package/dist/atoms/hover-card.cjs.map +1 -1
  149. package/dist/atoms/hover-card.d.cts +14 -1
  150. package/dist/atoms/hover-card.d.ts +14 -1
  151. package/dist/atoms/hover-card.js +3 -1
  152. package/dist/atoms/icon-button.cjs +33 -3
  153. package/dist/atoms/icon-button.cjs.map +1 -1
  154. package/dist/atoms/icon-button.d.cts +5 -3
  155. package/dist/atoms/icon-button.d.ts +5 -3
  156. package/dist/atoms/icon-button.js +2 -1
  157. package/dist/atoms/index.cjs +996 -506
  158. package/dist/atoms/index.cjs.map +1 -1
  159. package/dist/atoms/index.d.cts +18 -2
  160. package/dist/atoms/index.d.ts +18 -2
  161. package/dist/atoms/index.js +82 -80
  162. package/dist/atoms/link.cjs +40 -2
  163. package/dist/atoms/link.cjs.map +1 -1
  164. package/dist/atoms/link.d.cts +3 -1
  165. package/dist/atoms/link.d.ts +3 -1
  166. package/dist/atoms/link.js +2 -1
  167. package/dist/atoms/list.cjs +43 -4
  168. package/dist/atoms/list.cjs.map +1 -1
  169. package/dist/atoms/list.js +3 -2
  170. package/dist/atoms/pagination.cjs +100 -42
  171. package/dist/atoms/pagination.cjs.map +1 -1
  172. package/dist/atoms/pagination.d.cts +4 -0
  173. package/dist/atoms/pagination.d.ts +4 -0
  174. package/dist/atoms/pagination.js +5 -4
  175. package/dist/atoms/popover.cjs +85 -1
  176. package/dist/atoms/popover.cjs.map +1 -1
  177. package/dist/atoms/popover.d.cts +16 -1
  178. package/dist/atoms/popover.d.ts +16 -1
  179. package/dist/atoms/popover.js +3 -1
  180. package/dist/atoms/progress.cjs +71 -1
  181. package/dist/atoms/progress.cjs.map +1 -1
  182. package/dist/atoms/progress.d.cts +12 -1
  183. package/dist/atoms/progress.d.ts +12 -1
  184. package/dist/atoms/progress.js +2 -1
  185. package/dist/atoms/radio-cards.cjs +78 -1
  186. package/dist/atoms/radio-cards.cjs.map +1 -1
  187. package/dist/atoms/radio-cards.d.cts +12 -1
  188. package/dist/atoms/radio-cards.d.ts +12 -1
  189. package/dist/atoms/radio-cards.js +2 -1
  190. package/dist/atoms/radio-group.cjs +78 -1
  191. package/dist/atoms/radio-group.cjs.map +1 -1
  192. package/dist/atoms/radio-group.d.cts +12 -1
  193. package/dist/atoms/radio-group.d.ts +12 -1
  194. package/dist/atoms/radio-group.js +2 -1
  195. package/dist/atoms/radio.cjs +71 -1
  196. package/dist/atoms/radio.cjs.map +1 -1
  197. package/dist/atoms/radio.d.cts +12 -1
  198. package/dist/atoms/radio.d.ts +12 -1
  199. package/dist/atoms/radio.js +2 -1
  200. package/dist/atoms/segmented-control.cjs.map +1 -1
  201. package/dist/atoms/segmented-control.js +1 -1
  202. package/dist/atoms/select.cjs +78 -24
  203. package/dist/atoms/select.cjs.map +1 -1
  204. package/dist/atoms/select.d.cts +14 -4
  205. package/dist/atoms/select.d.ts +14 -4
  206. package/dist/atoms/select.js +3 -1
  207. package/dist/atoms/switch.cjs +71 -1
  208. package/dist/atoms/switch.cjs.map +1 -1
  209. package/dist/atoms/switch.d.cts +12 -1
  210. package/dist/atoms/switch.d.ts +12 -1
  211. package/dist/atoms/switch.js +2 -1
  212. package/dist/atoms/tab-nav.cjs +76 -1
  213. package/dist/atoms/tab-nav.cjs.map +1 -1
  214. package/dist/atoms/tab-nav.d.cts +16 -1
  215. package/dist/atoms/tab-nav.d.ts +16 -1
  216. package/dist/atoms/tab-nav.js +2 -1
  217. package/dist/atoms/tabs.cjs +76 -1
  218. package/dist/atoms/tabs.cjs.map +1 -1
  219. package/dist/atoms/tabs.d.cts +19 -1
  220. package/dist/atoms/tabs.d.ts +19 -1
  221. package/dist/atoms/tabs.js +2 -1
  222. package/dist/atoms/tooltip.cjs +46 -9
  223. package/dist/atoms/tooltip.cjs.map +1 -1
  224. package/dist/atoms/tooltip.js +3 -1
  225. package/dist/atoms/typo.cjs +39 -2
  226. package/dist/atoms/typo.cjs.map +1 -1
  227. package/dist/atoms/typo.d.cts +3 -1
  228. package/dist/atoms/typo.d.ts +3 -1
  229. package/dist/atoms/typo.js +2 -1
  230. package/dist/chunk-24PX34TH.js +42 -0
  231. package/dist/chunk-24PX34TH.js.map +1 -0
  232. package/dist/{chunk-EWFZXCMV.js → chunk-2FB75HU2.js} +3 -3
  233. package/dist/{chunk-HTNDVNLQ.js → chunk-2I37QLRA.js} +11 -11
  234. package/dist/{chunk-ZVDAEY5Q.js → chunk-2LCH3PDF.js} +14 -4
  235. package/dist/chunk-2LCH3PDF.js.map +1 -0
  236. package/dist/{chunk-3NUQAVE6.js → chunk-2M3UFZUD.js} +15 -2
  237. package/dist/chunk-2M3UFZUD.js.map +1 -0
  238. package/dist/{chunk-7R65MUL6.js → chunk-2O7NVLVP.js} +6 -6
  239. package/dist/{chunk-OE2AVQED.js → chunk-2SM37SB4.js} +7 -7
  240. package/dist/{chunk-FMAOB6BX.js → chunk-2WNLUQX5.js} +7 -7
  241. package/dist/chunk-3TOUVBIB.js +34 -0
  242. package/dist/chunk-3TOUVBIB.js.map +1 -0
  243. package/dist/{chunk-ADD4KFPG.js → chunk-447H6BVE.js} +7 -7
  244. package/dist/{chunk-W7TBPRHG.js → chunk-5OW76AER.js} +2 -2
  245. package/dist/chunk-6TU647KJ.js +37 -0
  246. package/dist/chunk-6TU647KJ.js.map +1 -0
  247. package/dist/{chunk-62HSZXVT.js → chunk-6YJGQWD6.js} +8 -8
  248. package/dist/{chunk-AA6OYHCE.js → chunk-7JW5Z2TL.js} +5 -5
  249. package/dist/{chunk-ZA4NYPSW.js → chunk-7PBLFV5L.js} +6 -6
  250. package/dist/{chunk-XK6VEVOK.js → chunk-7RJYF5L3.js} +14 -4
  251. package/dist/chunk-7RJYF5L3.js.map +1 -0
  252. package/dist/{chunk-HBQY4ELG.js → chunk-A26UWBVB.js} +4 -4
  253. package/dist/{chunk-BYFSYL7V.js → chunk-A4YOY75P.js} +4 -4
  254. package/dist/{chunk-LSDD4TAP.js → chunk-AJTGTGOC.js} +3 -3
  255. package/dist/{chunk-ADAQSPUA.js → chunk-BEKSO5JG.js} +2 -2
  256. package/dist/chunk-BI6TW3ZO.js +51 -0
  257. package/dist/chunk-BI6TW3ZO.js.map +1 -0
  258. package/dist/chunk-BK74U562.js +52 -0
  259. package/dist/chunk-BK74U562.js.map +1 -0
  260. package/dist/{chunk-JWAQUXGB.js → chunk-BZ3EXV6A.js} +3 -3
  261. package/dist/{chunk-Z34HR7RE.js → chunk-C2G3IB7G.js} +2 -2
  262. package/dist/chunk-CGDBUDY3.js +37 -0
  263. package/dist/chunk-CGDBUDY3.js.map +1 -0
  264. package/dist/chunk-DX3DLP5Z.js +39 -0
  265. package/dist/chunk-DX3DLP5Z.js.map +1 -0
  266. package/dist/{chunk-4U6DFH7Z.js → chunk-E6GCU5IQ.js} +2 -2
  267. package/dist/chunk-EIKFXUNC.js +39 -0
  268. package/dist/chunk-EIKFXUNC.js.map +1 -0
  269. package/dist/{chunk-CSKNBWPB.js → chunk-EZN5PMTC.js} +3 -3
  270. package/dist/chunk-EZN5PMTC.js.map +1 -0
  271. package/dist/{chunk-ZOPYFDLO.js → chunk-GAA3RTRW.js} +2 -2
  272. package/dist/{chunk-RSZDAY62.js → chunk-GE4M5GOQ.js} +3 -3
  273. package/dist/chunk-GI4AN2IZ.js +42 -0
  274. package/dist/chunk-GI4AN2IZ.js.map +1 -0
  275. package/dist/{chunk-RNRZ3LV7.js → chunk-GPULIICW.js} +8 -8
  276. package/dist/{chunk-K36TPMKL.js → chunk-GPZXD762.js} +18 -3
  277. package/dist/chunk-GPZXD762.js.map +1 -0
  278. package/dist/{chunk-PMJIFLDT.js → chunk-GR4PG6HY.js} +20 -3
  279. package/dist/chunk-GR4PG6HY.js.map +1 -0
  280. package/dist/{chunk-7PF6I4RN.js → chunk-GRDRXD53.js} +2 -2
  281. package/dist/{chunk-SH6FSA7T.js → chunk-GREYLAMY.js} +6 -6
  282. package/dist/{chunk-SAEPW5JF.js → chunk-GYSRHZRS.js} +4 -4
  283. package/dist/{chunk-UMUSNH2D.js → chunk-H3GQHGFA.js} +5 -5
  284. package/dist/{chunk-OILH5J7Q.js → chunk-HH6LML5K.js} +8 -8
  285. package/dist/{chunk-SE5TPTP2.js → chunk-IA74OBFY.js} +58 -41
  286. package/dist/chunk-IA74OBFY.js.map +1 -0
  287. package/dist/{chunk-KP4SGRJZ.js → chunk-IM6E52L2.js} +11 -11
  288. package/dist/{chunk-TVDKGMBI.js → chunk-IT7ZTP7F.js} +1 -1
  289. package/dist/chunk-IT7ZTP7F.js.map +1 -0
  290. package/dist/{chunk-6OKBTWEC.js → chunk-J7N2IZQW.js} +6 -6
  291. package/dist/{chunk-EEAHZCIK.js → chunk-JCUG2XKB.js} +2 -2
  292. package/dist/chunk-JETG3WEI.js +39 -0
  293. package/dist/chunk-JETG3WEI.js.map +1 -0
  294. package/dist/{chunk-REPTW53S.js → chunk-JNEGSY5N.js} +3 -3
  295. package/dist/chunk-KNIIDDYM.js +34 -0
  296. package/dist/chunk-KNIIDDYM.js.map +1 -0
  297. package/dist/{chunk-4TST4UK5.js → chunk-KO3V7KB6.js} +2 -2
  298. package/dist/{chunk-KTQREW2K.js → chunk-LIWQ47VQ.js} +9 -9
  299. package/dist/{chunk-B37MCN6F.js → chunk-LQ3WGFS7.js} +8 -8
  300. package/dist/{chunk-YADSNPMG.js → chunk-M77YPVQN.js} +3 -3
  301. package/dist/{chunk-GTO7GG2K.js → chunk-MCKWO7K4.js} +5 -5
  302. package/dist/{chunk-OHNBVT52.js → chunk-MGR37YQB.js} +4 -4
  303. package/dist/{chunk-QDC3LFHS.js → chunk-MMLVZWMD.js} +3 -3
  304. package/dist/{chunk-3G3RPU6Q.js → chunk-MP5KZULQ.js} +12 -12
  305. package/dist/{chunk-JRT6KTBG.js → chunk-MSLSD7F6.js} +3 -3
  306. package/dist/{chunk-FGLOHHYP.js → chunk-MSM2QG23.js} +10 -10
  307. package/dist/{chunk-V7IC4EAC.js → chunk-NFMEBYNY.js} +5 -5
  308. package/dist/{chunk-C6ZC7TXX.js → chunk-NIHOKIYW.js} +6 -6
  309. package/dist/{chunk-BESTU2AY.js → chunk-NLHVQJQ2.js} +19 -3
  310. package/dist/chunk-NLHVQJQ2.js.map +1 -0
  311. package/dist/{chunk-M2PVHXOE.js → chunk-NYG34MV6.js} +3 -3
  312. package/dist/{chunk-N7NDDJW5.js → chunk-OA3DGWVL.js} +16 -16
  313. package/dist/{chunk-XLKJYRFY.js → chunk-OBWQ3N5D.js} +4 -4
  314. package/dist/{chunk-IN6S7PPW.js → chunk-OEHVGPWL.js} +17 -17
  315. package/dist/chunk-OLJN3WXR.js +1 -0
  316. package/dist/{chunk-X4OCUESK.js → chunk-OPYRV6XJ.js} +2 -2
  317. package/dist/{chunk-6QVHJ5WW.js → chunk-OQN4E2QP.js} +4 -4
  318. package/dist/{chunk-LE6CNJWH.js → chunk-OWQUXTQ2.js} +4 -4
  319. package/dist/{chunk-NTJLECYY.js → chunk-OYXUWBKS.js} +6 -6
  320. package/dist/{chunk-B5CKZFDM.js → chunk-PE4EBBU4.js} +3 -3
  321. package/dist/{chunk-5TZNUXBT.js → chunk-PXMJK5D5.js} +6 -6
  322. package/dist/{chunk-Y4U24VXI.js → chunk-Q3M6GFHY.js} +3 -3
  323. package/dist/{chunk-ZFTQ2XBH.js → chunk-QPL7SJQM.js} +3 -3
  324. package/dist/{chunk-NX5ESRCX.js → chunk-RMVVV5NH.js} +7 -7
  325. package/dist/chunk-RMW3MQF5.js +42 -0
  326. package/dist/chunk-RMW3MQF5.js.map +1 -0
  327. package/dist/{chunk-Q7KT3UPO.js → chunk-RUJZ5PE7.js} +4 -4
  328. package/dist/chunk-SA7AYYQS.js +39 -0
  329. package/dist/chunk-SA7AYYQS.js.map +1 -0
  330. package/dist/{chunk-6SQZJN5Y.js → chunk-T2CGNUCP.js} +7 -7
  331. package/dist/chunk-T73HHR3I.js +67 -0
  332. package/dist/chunk-T73HHR3I.js.map +1 -0
  333. package/dist/chunk-TNNF5Q62.js +34 -0
  334. package/dist/chunk-TNNF5Q62.js.map +1 -0
  335. package/dist/{chunk-SLFUYRIC.js → chunk-TU6SGJ5Z.js} +6 -6
  336. package/dist/{chunk-AHXS2MBK.js → chunk-TYEGB5FQ.js} +4 -4
  337. package/dist/{chunk-DQ6EIA2T.js → chunk-UFM3EL52.js} +7 -7
  338. package/dist/chunk-UFRB2BVD.js +34 -0
  339. package/dist/chunk-UFRB2BVD.js.map +1 -0
  340. package/dist/chunk-UFWDQGOK.js +36 -0
  341. package/dist/chunk-UFWDQGOK.js.map +1 -0
  342. package/dist/{chunk-CNW3YEAK.js → chunk-VD5ZDFCM.js} +2 -2
  343. package/dist/chunk-VFQD57ZY.js +27 -0
  344. package/dist/chunk-VFQD57ZY.js.map +1 -0
  345. package/dist/chunk-VOME2TE7.js +641 -0
  346. package/dist/chunk-VOME2TE7.js.map +1 -0
  347. package/dist/{chunk-W7X7KSJP.js → chunk-WG5OK3YN.js} +19 -3
  348. package/dist/chunk-WG5OK3YN.js.map +1 -0
  349. package/dist/{chunk-64XYTE54.js → chunk-WY37V3W4.js} +7 -7
  350. package/dist/chunk-WYWM2HSZ.js +33 -0
  351. package/dist/chunk-WYWM2HSZ.js.map +1 -0
  352. package/dist/{chunk-MJMHPIYX.js → chunk-XOQXIPLL.js} +2 -2
  353. package/dist/{chunk-YDNVHAS4.js → chunk-YCLYKBWZ.js} +10 -10
  354. package/dist/{chunk-OOXXMKJS.js → chunk-YGNHAFBW.js} +5 -5
  355. package/dist/{chunk-6PFEG7GQ.js → chunk-YWWYA2JZ.js} +6 -6
  356. package/dist/chunk-YXMB4MCM.js +87 -0
  357. package/dist/chunk-YXMB4MCM.js.map +1 -0
  358. package/dist/{chunk-O5FEYLEG.js → chunk-Z5LPHG2D.js} +3 -3
  359. package/dist/{chunk-6HMQEUHX.js → chunk-ZAFLWQOV.js} +5 -5
  360. package/dist/{chunk-GVUXGWAM.js → chunk-ZC2JPF7B.js} +13 -13
  361. package/dist/{chunk-VYCYVN3L.js → chunk-ZCGH6TJ3.js} +16 -3
  362. package/dist/chunk-ZCGH6TJ3.js.map +1 -0
  363. package/dist/{chunk-5JQOU3IR.js → chunk-ZCQMCIT5.js} +6 -6
  364. package/dist/chunk-ZPUNTAVI.js +38 -0
  365. package/dist/chunk-ZPUNTAVI.js.map +1 -0
  366. package/dist/{chunk-LIV5LHHZ.js → chunk-ZUL3NYQ4.js} +2 -2
  367. package/dist/{chunk-O7DAGKLJ.js → chunk-ZWYQ44CB.js} +12 -12
  368. package/dist/context/dynamic-form-context.cjs +54 -4
  369. package/dist/context/dynamic-form-context.cjs.map +1 -1
  370. package/dist/context/dynamic-form-context.js +5 -4
  371. package/dist/context/index.cjs +54 -4
  372. package/dist/context/index.cjs.map +1 -1
  373. package/dist/context/index.js +5 -4
  374. package/dist/icon.cjs +492 -2
  375. package/dist/icon.cjs.map +1 -1
  376. package/dist/icon.d.cts +1 -1
  377. package/dist/icon.d.ts +1 -1
  378. package/dist/icon.js +493 -3
  379. package/dist/index.cjs +2621 -1631
  380. package/dist/index.cjs.map +1 -1
  381. package/dist/index.css +73 -0
  382. package/dist/index.d.cts +20 -4
  383. package/dist/index.d.ts +20 -4
  384. package/dist/index.js +664 -168
  385. package/dist/molecules/autocomplete-textfield.cjs +111 -46
  386. package/dist/molecules/autocomplete-textfield.cjs.map +1 -1
  387. package/dist/molecules/autocomplete-textfield.js +5 -3
  388. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.cjs +367 -209
  389. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.cjs.map +1 -1
  390. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/index.js +21 -20
  391. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.cjs +39 -2
  392. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.cjs.map +1 -1
  393. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-comp.js +4 -3
  394. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.cjs +293 -164
  395. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.cjs.map +1 -1
  396. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-body.js +16 -15
  397. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.cjs +33 -3
  398. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.cjs.map +1 -1
  399. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-footer.js +4 -3
  400. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-header.cjs +85 -19
  401. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-header.cjs.map +1 -1
  402. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-header.js +5 -4
  403. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.cjs +217 -134
  404. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.cjs.map +1 -1
  405. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-radio.js +10 -9
  406. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.cjs +172 -110
  407. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.cjs.map +1 -1
  408. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-option.js +7 -6
  409. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.cjs +39 -2
  410. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.cjs.map +1 -1
  411. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-satisfaction-text.js +6 -5
  412. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.cjs +80 -20
  413. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.cjs.map +1 -1
  414. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/ReviewQuestion/review-question-text.js +7 -6
  415. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.cjs +64 -7
  416. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.cjs.map +1 -1
  417. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/complete-review.js +6 -5
  418. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.cjs +275 -115
  419. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.cjs.map +1 -1
  420. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/index.js +25 -24
  421. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.cjs +76 -17
  422. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.cjs.map +1 -1
  423. package/dist/molecules/curriculumV2/CurriculumContents/CurriculumReviewSteps/start-review.js +7 -6
  424. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.cjs +49 -5
  425. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.cjs.map +1 -1
  426. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-ai-traning.js +5 -4
  427. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-file-download.cjs +49 -5
  428. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-file-download.cjs.map +1 -1
  429. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-file-download.js +4 -3
  430. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-review.cjs +318 -153
  431. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-review.cjs.map +1 -1
  432. package/dist/molecules/curriculumV2/CurriculumContents/curriculum-review.js +28 -27
  433. package/dist/molecules/curriculumV2/CurriculumContents/index.cjs +346 -181
  434. package/dist/molecules/curriculumV2/CurriculumContents/index.cjs.map +1 -1
  435. package/dist/molecules/curriculumV2/CurriculumContents/index.js +31 -30
  436. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/curriculum-item-title.cjs +39 -2
  437. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/curriculum-item-title.cjs.map +1 -1
  438. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/curriculum-item-title.js +3 -2
  439. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-item.cjs +39 -2
  440. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-item.cjs.map +1 -1
  441. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-item.js +5 -4
  442. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-title.cjs +39 -2
  443. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-title.cjs.map +1 -1
  444. package/dist/molecules/curriculumV2/CurriculumSidebar/Items/section-title.js +3 -2
  445. package/dist/molecules/curriculumV2/CurriculumSidebar/index.cjs +195 -135
  446. package/dist/molecules/curriculumV2/CurriculumSidebar/index.cjs.map +1 -1
  447. package/dist/molecules/curriculumV2/CurriculumSidebar/index.js +9 -8
  448. package/dist/molecules/curriculumV2/CurriculumSidebar/sidebar-item.cjs +39 -2
  449. package/dist/molecules/curriculumV2/CurriculumSidebar/sidebar-item.cjs.map +1 -1
  450. package/dist/molecules/curriculumV2/CurriculumSidebar/sidebar-item.js +7 -6
  451. package/dist/molecules/curriculumV2/curriculum-sub-nav.cjs +65 -8
  452. package/dist/molecules/curriculumV2/curriculum-sub-nav.cjs.map +1 -1
  453. package/dist/molecules/curriculumV2/curriculum-sub-nav.js +6 -5
  454. package/dist/molecules/curriculumV2/index.cjs +406 -220
  455. package/dist/molecules/curriculumV2/index.cjs.map +1 -1
  456. package/dist/molecules/curriculumV2/index.js +38 -37
  457. package/dist/molecules/date-picker/date-picker-button.cjs +160 -64
  458. package/dist/molecules/date-picker/date-picker-button.cjs.map +1 -1
  459. package/dist/molecules/date-picker/date-picker-button.d.cts +1 -0
  460. package/dist/molecules/date-picker/date-picker-button.d.ts +1 -0
  461. package/dist/molecules/date-picker/date-picker-button.js +10 -8
  462. package/dist/molecules/date-picker/index.cjs +242 -146
  463. package/dist/molecules/date-picker/index.cjs.map +1 -1
  464. package/dist/molecules/date-picker/index.js +9 -7
  465. package/dist/molecules/description-json-render.cjs +182 -120
  466. package/dist/molecules/description-json-render.cjs.map +1 -1
  467. package/dist/molecules/description-json-render.js +7 -6
  468. package/dist/molecules/download-card.cjs +67 -8
  469. package/dist/molecules/download-card.cjs.map +1 -1
  470. package/dist/molecules/download-card.js +5 -4
  471. package/dist/molecules/dynamic-field.cjs +222 -72
  472. package/dist/molecules/dynamic-field.cjs.map +1 -1
  473. package/dist/molecules/dynamic-field.js +13 -11
  474. package/dist/molecules/dynamic-form-editor-field-editor-panel.cjs +359 -267
  475. package/dist/molecules/dynamic-form-editor-field-editor-panel.cjs.map +1 -1
  476. package/dist/molecules/dynamic-form-editor-field-editor-panel.js +10 -8
  477. package/dist/molecules/dynamic-form-editor-field-list-panel.cjs +115 -47
  478. package/dist/molecules/dynamic-form-editor-field-list-panel.cjs.map +1 -1
  479. package/dist/molecules/dynamic-form-editor-field-list-panel.js +6 -4
  480. package/dist/molecules/dynamic-form-editor-issues-panel.cjs +39 -2
  481. package/dist/molecules/dynamic-form-editor-issues-panel.cjs.map +1 -1
  482. package/dist/molecules/dynamic-form-editor-issues-panel.js +4 -3
  483. package/dist/molecules/dynamic-form-editor-preview-panel.cjs +239 -89
  484. package/dist/molecules/dynamic-form-editor-preview-panel.cjs.map +1 -1
  485. package/dist/molecules/dynamic-form-editor-preview-panel.js +16 -14
  486. package/dist/molecules/dynamic-form-editor.cjs +571 -407
  487. package/dist/molecules/dynamic-form-editor.cjs.map +1 -1
  488. package/dist/molecules/dynamic-form-editor.js +23 -21
  489. package/dist/molecules/dynamic-form.cjs +235 -85
  490. package/dist/molecules/dynamic-form.cjs.map +1 -1
  491. package/dist/molecules/dynamic-form.js +14 -12
  492. package/dist/molecules/expand-table/index.cjs +100 -42
  493. package/dist/molecules/expand-table/index.cjs.map +1 -1
  494. package/dist/molecules/expand-table/index.js +7 -6
  495. package/dist/molecules/force-refresh.cjs +79 -24
  496. package/dist/molecules/force-refresh.cjs.map +1 -1
  497. package/dist/molecules/force-refresh.js +4 -3
  498. package/dist/molecules/form/form.cjs +54 -4
  499. package/dist/molecules/form/form.cjs.map +1 -1
  500. package/dist/molecules/form/form.js +4 -3
  501. package/dist/molecules/form/index.cjs +54 -4
  502. package/dist/molecules/form/index.cjs.map +1 -1
  503. package/dist/molecules/form/index.js +4 -3
  504. package/dist/molecules/ghost-post.cjs +72 -14
  505. package/dist/molecules/ghost-post.cjs.map +1 -1
  506. package/dist/molecules/ghost-post.d.cts +1 -0
  507. package/dist/molecules/ghost-post.d.ts +1 -0
  508. package/dist/molecules/ghost-post.js +5 -4
  509. package/dist/molecules/index.cjs +1334 -989
  510. package/dist/molecules/index.cjs.map +1 -1
  511. package/dist/molecules/index.d.cts +1 -0
  512. package/dist/molecules/index.d.ts +1 -0
  513. package/dist/molecules/index.js +79 -78
  514. package/dist/molecules/learning-post.cjs +109 -37
  515. package/dist/molecules/learning-post.cjs.map +1 -1
  516. package/dist/molecules/learning-post.d.cts +1 -0
  517. package/dist/molecules/learning-post.d.ts +1 -0
  518. package/dist/molecules/learning-post.js +7 -6
  519. package/dist/molecules/navigation.cjs +49 -5
  520. package/dist/molecules/navigation.cjs.map +1 -1
  521. package/dist/molecules/navigation.js +4 -3
  522. package/dist/molecules/one-on-one-guide-list.cjs +56 -6
  523. package/dist/molecules/one-on-one-guide-list.cjs.map +1 -1
  524. package/dist/molecules/one-on-one-guide-list.js +5 -4
  525. package/dist/molecules/radio-button-card.cjs +77 -13
  526. package/dist/molecules/radio-button-card.cjs.map +1 -1
  527. package/dist/molecules/radio-button-card.js +4 -3
  528. package/dist/molecules/stepper.cjs +55 -4
  529. package/dist/molecules/stepper.cjs.map +1 -1
  530. package/dist/molecules/stepper.js +5 -4
  531. package/dist/molecules/tag-selector.cjs +256 -180
  532. package/dist/molecules/tag-selector.cjs.map +1 -1
  533. package/dist/molecules/tag-selector.js +9 -7
  534. package/dist/molecules/time-select.cjs +180 -126
  535. package/dist/molecules/time-select.cjs.map +1 -1
  536. package/dist/molecules/time-select.d.cts +1 -0
  537. package/dist/molecules/time-select.d.ts +1 -0
  538. package/dist/molecules/time-select.js +7 -5
  539. package/dist/molecules/training-info-guideline.cjs +75 -11
  540. package/dist/molecules/training-info-guideline.cjs.map +1 -1
  541. package/dist/molecules/training-info-guideline.js +7 -6
  542. package/dist/theme/theme-provider.cjs +53 -1
  543. package/dist/theme/theme-provider.cjs.map +1 -1
  544. package/dist/theme/theme-provider.d.cts +18 -2
  545. package/dist/theme/theme-provider.d.ts +18 -2
  546. package/dist/theme/theme-provider.js +4 -1
  547. package/dist/utils/convert-button-size.d.cts +1 -0
  548. package/dist/utils/convert-button-size.d.ts +1 -0
  549. package/dist/utils/convert-icon-button-size.d.cts +1 -0
  550. package/dist/utils/convert-icon-button-size.d.ts +1 -0
  551. package/dist/utils/curriculum.utils.cjs.map +1 -1
  552. package/dist/utils/curriculum.utils.js +1 -1
  553. package/dist/utils/get-callout-icon-component.cjs.map +1 -1
  554. package/dist/utils/get-callout-icon-component.js +2 -2
  555. package/dist/utils/index.cjs +25 -0
  556. package/dist/utils/index.cjs.map +1 -1
  557. package/dist/utils/index.d.cts +2 -0
  558. package/dist/utils/index.d.ts +2 -0
  559. package/dist/utils/index.js +7 -3
  560. package/dist/utils/resolve-color.cjs +51 -0
  561. package/dist/utils/resolve-color.cjs.map +1 -0
  562. package/dist/utils/resolve-color.d.cts +38 -0
  563. package/dist/utils/resolve-color.d.ts +38 -0
  564. package/dist/utils/resolve-color.js +8 -0
  565. package/dist/utils/resolve-color.js.map +1 -0
  566. package/package.json +1 -1
  567. package/src/atoms/alert-dialog.tsx +38 -1
  568. package/src/atoms/avatar.tsx +18 -3
  569. package/src/atoms/badge.tsx +15 -22
  570. package/src/atoms/blockquote.tsx +31 -1
  571. package/src/atoms/button.tsx +12 -3
  572. package/src/atoms/button.type.ts +6 -1
  573. package/src/atoms/call-out.tsx +48 -1
  574. package/src/atoms/check-box-card.tsx +51 -1
  575. package/src/atoms/check-box-group.tsx +19 -2
  576. package/src/atoms/check-box.tsx +17 -3
  577. package/src/atoms/code.tsx +31 -1
  578. package/src/atoms/data-list.tsx +47 -1
  579. package/src/atoms/dropdown-menu.tsx +53 -6
  580. package/src/atoms/heading.tsx +22 -4
  581. package/src/atoms/hover-card.tsx +37 -1
  582. package/src/atoms/icon-button.tsx +12 -3
  583. package/src/atoms/link.tsx +21 -3
  584. package/src/atoms/pagination.tsx +21 -2
  585. package/src/atoms/popover.tsx +37 -1
  586. package/src/atoms/progress.tsx +31 -1
  587. package/src/atoms/radio-cards.tsx +49 -1
  588. package/src/atoms/radio-group.tsx +49 -1
  589. package/src/atoms/radio.tsx +31 -1
  590. package/src/atoms/segmented-control.tsx +3 -0
  591. package/src/atoms/select.tsx +67 -19
  592. package/src/atoms/switch.tsx +31 -1
  593. package/src/atoms/tab-nav.tsx +42 -1
  594. package/src/atoms/tabs.tsx +40 -1
  595. package/src/atoms/tooltip.tsx +14 -1
  596. package/src/atoms/typo.tsx +21 -3
  597. package/src/icon.ts +303 -57
  598. package/src/molecules/radio-button-card.tsx +6 -4
  599. package/src/theme/theme-provider.tsx +38 -3
  600. package/src/utils/index.ts +2 -1
  601. package/src/utils/resolve-color.ts +86 -0
  602. package/dist/chunk-365QMK4D.js +0 -7
  603. package/dist/chunk-365QMK4D.js.map +0 -1
  604. package/dist/chunk-3NUQAVE6.js.map +0 -1
  605. package/dist/chunk-5AVBYDPB.js +0 -7
  606. package/dist/chunk-5AVBYDPB.js.map +0 -1
  607. package/dist/chunk-5ZITU5L7.js +0 -7
  608. package/dist/chunk-5ZITU5L7.js.map +0 -1
  609. package/dist/chunk-6DJOIRMF.js +0 -7
  610. package/dist/chunk-6DJOIRMF.js.map +0 -1
  611. package/dist/chunk-6IVCARWS.js +0 -7
  612. package/dist/chunk-6IVCARWS.js.map +0 -1
  613. package/dist/chunk-7FKRQQYK.js +0 -15
  614. package/dist/chunk-7FKRQQYK.js.map +0 -1
  615. package/dist/chunk-B6XJN6EC.js +0 -7
  616. package/dist/chunk-B6XJN6EC.js.map +0 -1
  617. package/dist/chunk-BESTU2AY.js.map +0 -1
  618. package/dist/chunk-CSKNBWPB.js.map +0 -1
  619. package/dist/chunk-DHZVOXFM.js +0 -35
  620. package/dist/chunk-DHZVOXFM.js.map +0 -1
  621. package/dist/chunk-FPD73OHW.js +0 -7
  622. package/dist/chunk-FPD73OHW.js.map +0 -1
  623. package/dist/chunk-HFVVQEOZ.js +0 -1
  624. package/dist/chunk-J242TTFH.js +0 -7
  625. package/dist/chunk-J242TTFH.js.map +0 -1
  626. package/dist/chunk-JU7GB6R2.js +0 -151
  627. package/dist/chunk-JU7GB6R2.js.map +0 -1
  628. package/dist/chunk-K36TPMKL.js.map +0 -1
  629. package/dist/chunk-KTSEZC6A.js +0 -49
  630. package/dist/chunk-KTSEZC6A.js.map +0 -1
  631. package/dist/chunk-MIMJ7LON.js +0 -7
  632. package/dist/chunk-MIMJ7LON.js.map +0 -1
  633. package/dist/chunk-O3T3TM3V.js +0 -7
  634. package/dist/chunk-O3T3TM3V.js.map +0 -1
  635. package/dist/chunk-OHMOP5PV.js +0 -7
  636. package/dist/chunk-OHMOP5PV.js.map +0 -1
  637. package/dist/chunk-OYM4XCHQ.js +0 -7
  638. package/dist/chunk-OYM4XCHQ.js.map +0 -1
  639. package/dist/chunk-PMJIFLDT.js.map +0 -1
  640. package/dist/chunk-SE5TPTP2.js.map +0 -1
  641. package/dist/chunk-SMLC2O3V.js +0 -42
  642. package/dist/chunk-SMLC2O3V.js.map +0 -1
  643. package/dist/chunk-TVDKGMBI.js.map +0 -1
  644. package/dist/chunk-VTJZMOSP.js +0 -7
  645. package/dist/chunk-VTJZMOSP.js.map +0 -1
  646. package/dist/chunk-VYCYVN3L.js.map +0 -1
  647. package/dist/chunk-W7X7KSJP.js.map +0 -1
  648. package/dist/chunk-X2GMDZ7M.js +0 -59
  649. package/dist/chunk-X2GMDZ7M.js.map +0 -1
  650. package/dist/chunk-XK6VEVOK.js.map +0 -1
  651. package/dist/chunk-YGL6SWKN.js +0 -7
  652. package/dist/chunk-YGL6SWKN.js.map +0 -1
  653. package/dist/chunk-YJ7ZFOYL.js +0 -7
  654. package/dist/chunk-YJ7ZFOYL.js.map +0 -1
  655. package/dist/chunk-ZVDAEY5Q.js.map +0 -1
  656. /package/dist/{chunk-EWFZXCMV.js.map → chunk-2FB75HU2.js.map} +0 -0
  657. /package/dist/{chunk-HTNDVNLQ.js.map → chunk-2I37QLRA.js.map} +0 -0
  658. /package/dist/{chunk-7R65MUL6.js.map → chunk-2O7NVLVP.js.map} +0 -0
  659. /package/dist/{chunk-OE2AVQED.js.map → chunk-2SM37SB4.js.map} +0 -0
  660. /package/dist/{chunk-FMAOB6BX.js.map → chunk-2WNLUQX5.js.map} +0 -0
  661. /package/dist/{chunk-ADD4KFPG.js.map → chunk-447H6BVE.js.map} +0 -0
  662. /package/dist/{chunk-W7TBPRHG.js.map → chunk-5OW76AER.js.map} +0 -0
  663. /package/dist/{chunk-62HSZXVT.js.map → chunk-6YJGQWD6.js.map} +0 -0
  664. /package/dist/{chunk-AA6OYHCE.js.map → chunk-7JW5Z2TL.js.map} +0 -0
  665. /package/dist/{chunk-ZA4NYPSW.js.map → chunk-7PBLFV5L.js.map} +0 -0
  666. /package/dist/{chunk-HBQY4ELG.js.map → chunk-A26UWBVB.js.map} +0 -0
  667. /package/dist/{chunk-BYFSYL7V.js.map → chunk-A4YOY75P.js.map} +0 -0
  668. /package/dist/{chunk-LSDD4TAP.js.map → chunk-AJTGTGOC.js.map} +0 -0
  669. /package/dist/{chunk-ADAQSPUA.js.map → chunk-BEKSO5JG.js.map} +0 -0
  670. /package/dist/{chunk-JWAQUXGB.js.map → chunk-BZ3EXV6A.js.map} +0 -0
  671. /package/dist/{chunk-Z34HR7RE.js.map → chunk-C2G3IB7G.js.map} +0 -0
  672. /package/dist/{chunk-4U6DFH7Z.js.map → chunk-E6GCU5IQ.js.map} +0 -0
  673. /package/dist/{chunk-ZOPYFDLO.js.map → chunk-GAA3RTRW.js.map} +0 -0
  674. /package/dist/{chunk-RSZDAY62.js.map → chunk-GE4M5GOQ.js.map} +0 -0
  675. /package/dist/{chunk-RNRZ3LV7.js.map → chunk-GPULIICW.js.map} +0 -0
  676. /package/dist/{chunk-7PF6I4RN.js.map → chunk-GRDRXD53.js.map} +0 -0
  677. /package/dist/{chunk-SH6FSA7T.js.map → chunk-GREYLAMY.js.map} +0 -0
  678. /package/dist/{chunk-SAEPW5JF.js.map → chunk-GYSRHZRS.js.map} +0 -0
  679. /package/dist/{chunk-UMUSNH2D.js.map → chunk-H3GQHGFA.js.map} +0 -0
  680. /package/dist/{chunk-OILH5J7Q.js.map → chunk-HH6LML5K.js.map} +0 -0
  681. /package/dist/{chunk-KP4SGRJZ.js.map → chunk-IM6E52L2.js.map} +0 -0
  682. /package/dist/{chunk-6OKBTWEC.js.map → chunk-J7N2IZQW.js.map} +0 -0
  683. /package/dist/{chunk-EEAHZCIK.js.map → chunk-JCUG2XKB.js.map} +0 -0
  684. /package/dist/{chunk-REPTW53S.js.map → chunk-JNEGSY5N.js.map} +0 -0
  685. /package/dist/{chunk-4TST4UK5.js.map → chunk-KO3V7KB6.js.map} +0 -0
  686. /package/dist/{chunk-KTQREW2K.js.map → chunk-LIWQ47VQ.js.map} +0 -0
  687. /package/dist/{chunk-B37MCN6F.js.map → chunk-LQ3WGFS7.js.map} +0 -0
  688. /package/dist/{chunk-YADSNPMG.js.map → chunk-M77YPVQN.js.map} +0 -0
  689. /package/dist/{chunk-GTO7GG2K.js.map → chunk-MCKWO7K4.js.map} +0 -0
  690. /package/dist/{chunk-OHNBVT52.js.map → chunk-MGR37YQB.js.map} +0 -0
  691. /package/dist/{chunk-QDC3LFHS.js.map → chunk-MMLVZWMD.js.map} +0 -0
  692. /package/dist/{chunk-3G3RPU6Q.js.map → chunk-MP5KZULQ.js.map} +0 -0
  693. /package/dist/{chunk-JRT6KTBG.js.map → chunk-MSLSD7F6.js.map} +0 -0
  694. /package/dist/{chunk-FGLOHHYP.js.map → chunk-MSM2QG23.js.map} +0 -0
  695. /package/dist/{chunk-V7IC4EAC.js.map → chunk-NFMEBYNY.js.map} +0 -0
  696. /package/dist/{chunk-C6ZC7TXX.js.map → chunk-NIHOKIYW.js.map} +0 -0
  697. /package/dist/{chunk-M2PVHXOE.js.map → chunk-NYG34MV6.js.map} +0 -0
  698. /package/dist/{chunk-N7NDDJW5.js.map → chunk-OA3DGWVL.js.map} +0 -0
  699. /package/dist/{chunk-XLKJYRFY.js.map → chunk-OBWQ3N5D.js.map} +0 -0
  700. /package/dist/{chunk-IN6S7PPW.js.map → chunk-OEHVGPWL.js.map} +0 -0
  701. /package/dist/{chunk-HFVVQEOZ.js.map → chunk-OLJN3WXR.js.map} +0 -0
  702. /package/dist/{chunk-X4OCUESK.js.map → chunk-OPYRV6XJ.js.map} +0 -0
  703. /package/dist/{chunk-6QVHJ5WW.js.map → chunk-OQN4E2QP.js.map} +0 -0
  704. /package/dist/{chunk-LE6CNJWH.js.map → chunk-OWQUXTQ2.js.map} +0 -0
  705. /package/dist/{chunk-NTJLECYY.js.map → chunk-OYXUWBKS.js.map} +0 -0
  706. /package/dist/{chunk-B5CKZFDM.js.map → chunk-PE4EBBU4.js.map} +0 -0
  707. /package/dist/{chunk-5TZNUXBT.js.map → chunk-PXMJK5D5.js.map} +0 -0
  708. /package/dist/{chunk-Y4U24VXI.js.map → chunk-Q3M6GFHY.js.map} +0 -0
  709. /package/dist/{chunk-ZFTQ2XBH.js.map → chunk-QPL7SJQM.js.map} +0 -0
  710. /package/dist/{chunk-NX5ESRCX.js.map → chunk-RMVVV5NH.js.map} +0 -0
  711. /package/dist/{chunk-Q7KT3UPO.js.map → chunk-RUJZ5PE7.js.map} +0 -0
  712. /package/dist/{chunk-6SQZJN5Y.js.map → chunk-T2CGNUCP.js.map} +0 -0
  713. /package/dist/{chunk-SLFUYRIC.js.map → chunk-TU6SGJ5Z.js.map} +0 -0
  714. /package/dist/{chunk-AHXS2MBK.js.map → chunk-TYEGB5FQ.js.map} +0 -0
  715. /package/dist/{chunk-DQ6EIA2T.js.map → chunk-UFM3EL52.js.map} +0 -0
  716. /package/dist/{chunk-CNW3YEAK.js.map → chunk-VD5ZDFCM.js.map} +0 -0
  717. /package/dist/{chunk-64XYTE54.js.map → chunk-WY37V3W4.js.map} +0 -0
  718. /package/dist/{chunk-MJMHPIYX.js.map → chunk-XOQXIPLL.js.map} +0 -0
  719. /package/dist/{chunk-YDNVHAS4.js.map → chunk-YCLYKBWZ.js.map} +0 -0
  720. /package/dist/{chunk-OOXXMKJS.js.map → chunk-YGNHAFBW.js.map} +0 -0
  721. /package/dist/{chunk-6PFEG7GQ.js.map → chunk-YWWYA2JZ.js.map} +0 -0
  722. /package/dist/{chunk-O5FEYLEG.js.map → chunk-Z5LPHG2D.js.map} +0 -0
  723. /package/dist/{chunk-6HMQEUHX.js.map → chunk-ZAFLWQOV.js.map} +0 -0
  724. /package/dist/{chunk-GVUXGWAM.js.map → chunk-ZC2JPF7B.js.map} +0 -0
  725. /package/dist/{chunk-5JQOU3IR.js.map → chunk-ZCQMCIT5.js.map} +0 -0
  726. /package/dist/{chunk-LIV5LHHZ.js.map → chunk-ZUL3NYQ4.js.map} +0 -0
  727. /package/dist/{chunk-O7DAGKLJ.js.map → chunk-ZWYQ44CB.js.map} +0 -0
@@ -1,8 +1,37 @@
1
1
  "use strict";
2
2
  var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
+ var __spreadValues = (a, b) => {
12
+ for (var prop in b || (b = {}))
13
+ if (__hasOwnProp.call(b, prop))
14
+ __defNormalProp(a, prop, b[prop]);
15
+ if (__getOwnPropSymbols)
16
+ for (var prop of __getOwnPropSymbols(b)) {
17
+ if (__propIsEnum.call(b, prop))
18
+ __defNormalProp(a, prop, b[prop]);
19
+ }
20
+ return a;
21
+ };
22
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
+ var __objRest = (source, exclude) => {
24
+ var target = {};
25
+ for (var prop in source)
26
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
27
+ target[prop] = source[prop];
28
+ if (source != null && __getOwnPropSymbols)
29
+ for (var prop of __getOwnPropSymbols(source)) {
30
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
31
+ target[prop] = source[prop];
32
+ }
33
+ return target;
34
+ };
6
35
  var __export = (target, all) => {
7
36
  for (var name in all)
8
37
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -20,10 +49,56 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
49
  // src/atoms/tab-nav.tsx
21
50
  var tab_nav_exports = {};
22
51
  __export(tab_nav_exports, {
23
- TabNav: () => import_themes.TabNav
52
+ TabNav: () => TabNav
24
53
  });
25
54
  module.exports = __toCommonJS(tab_nav_exports);
26
55
  var import_themes = require("@radix-ui/themes");
56
+ var import_clsx = require("clsx");
57
+ var import_react = require("react");
58
+
59
+ // src/utils/resolve-color.ts
60
+ var SEMANTIC_COLOR_MAP = {
61
+ error: "red",
62
+ neutral: "gray",
63
+ success: "green",
64
+ accent: void 0
65
+ };
66
+ var CUSTOM_COLOR_MAP = {
67
+ black: { className: "tipp-accent-black", fallbackColor: "gray" }
68
+ };
69
+ var isSemanticColor = (color) => color !== void 0 && color in SEMANTIC_COLOR_MAP;
70
+ var isCustomColor = (color) => color !== void 0 && color in CUSTOM_COLOR_MAP;
71
+ var resolveColor = (color) => {
72
+ if (isCustomColor(color)) {
73
+ const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];
74
+ return { color: fallbackColor, className };
75
+ }
76
+ if (isSemanticColor(color)) {
77
+ return { color: SEMANTIC_COLOR_MAP[color] };
78
+ }
79
+ return { color };
80
+ };
81
+
82
+ // src/atoms/tab-nav.tsx
83
+ var import_jsx_runtime = require("react/jsx-runtime");
84
+ var Root = (0, import_react.forwardRef)((props, ref) => {
85
+ const _a = props, { color, className } = _a, rest = __objRest(_a, ["color", "className"]);
86
+ const { className: colorClassName } = (0, import_react.useMemo)(
87
+ () => resolveColor(color),
88
+ [color]
89
+ );
90
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
91
+ import_themes.TabNav.Root,
92
+ __spreadProps(__spreadValues({}, rest), {
93
+ className: (0, import_clsx.clsx)(colorClassName, className),
94
+ ref
95
+ })
96
+ );
97
+ });
98
+ Root.displayName = "TabNav.Root";
99
+ var TabNav = __spreadProps(__spreadValues({}, import_themes.TabNav), {
100
+ Root
101
+ });
27
102
  // Annotate the CommonJS export names for ESM import in node:
28
103
  0 && (module.exports = {
29
104
  TabNav
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/atoms/tab-nav.tsx"],"sourcesContent":["export { TabNav } from '@radix-ui/themes';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAuB;","names":[]}
1
+ {"version":3,"sources":["../../src/atoms/tab-nav.tsx","../../src/utils/resolve-color.ts"],"sourcesContent":["import { TabNav as RadixTabNav } from '@radix-ui/themes';\nimport { clsx } from 'clsx';\nimport React, { forwardRef, useMemo } from 'react';\nimport { resolveColor, type UiColor } from '../utils/resolve-color';\n\ntype TabNavRootProps = React.ComponentPropsWithoutRef<\n typeof RadixTabNav.Root\n> & {\n /**\n * TabNav는 Radix color prop이 없어 per-instance로는 custom accent(black 등)만\n * className override로 적용된다. semantic/radix color는 theme accent로만 가능.\n */\n color?: UiColor;\n};\n\nconst Root = forwardRef<\n React.ElementRef<typeof RadixTabNav.Root>,\n TabNavRootProps\n>((props, ref) => {\n const { color, className, ...rest } = props;\n\n const { className: colorClassName } = useMemo(\n () => resolveColor(color),\n [color]\n );\n\n return (\n <RadixTabNav.Root\n {...rest}\n className={clsx(colorClassName, className)}\n ref={ref}\n />\n );\n});\n\nRoot.displayName = 'TabNav.Root';\n\nexport const TabNav = {\n ...RadixTabNav,\n Root,\n};\n\n","import type { BadgeProps as RadixBadgeProps } from '@radix-ui/themes';\n\n/**\n * Radix Themes가 제공하는 accent color union (gray, red, blue, ...).\n * 모든 color 지원 컴포넌트가 동일한 union을 공유하므로 Badge에서 파생한다.\n */\nexport type RadixColor = NonNullable<RadixBadgeProps['color']>;\n\n/** TIPP 시맨틱 color 별칭. */\nexport type SemanticColor = 'error' | 'accent' | 'neutral' | 'success';\n\n/**\n * Radix accent에 대응이 없어 CSS accent override로 처리하는 커스텀 color.\n * (예: black — `style/black.scss`의 `.tipp-accent-black` 참고)\n */\nexport type CustomColor = 'black';\n\n/** color 지원 컴포넌트가 노출하는 통합 color 타입. */\nexport type UiColor = RadixColor | SemanticColor | CustomColor;\n\n/**\n * union 각 멤버에 분배되는 Omit.\n * Radix의 polymorphic 컴포넌트 props(Text/Heading/Link 등 `as`로 분기되는 union)에서\n * 키를 제거할 때 일반 Omit은 union을 단일 객체로 합쳐 `as` 분기를 무너뜨리므로 이 타입을 쓴다.\n */\nexport type DistributiveOmit<T, K extends PropertyKey> = T extends unknown\n ? Omit<T, K>\n : never;\n\nconst SEMANTIC_COLOR_MAP: Record<SemanticColor, RadixColor | undefined> = {\n error: 'red',\n neutral: 'gray',\n success: 'green',\n accent: undefined,\n};\n\ninterface CustomColorConfig {\n /**\n * accent override를 적용할 className.\n */\n className: string;\n /**\n * Radix에 넘길 fallback color.\n * Text/Heading/Link 등은 `color` prop이 있어야 `data-accent-color`가 붙어\n * `--accent-*`를 참조하므로, 유효한 Radix color를 함께 넘긴 뒤 className으로\n * `--accent-*`를 덮어쓴다. (Badge/Button은 prop 없이도 accent 기반이라 무해)\n */\n fallbackColor: RadixColor;\n}\n\nconst CUSTOM_COLOR_MAP: Record<CustomColor, CustomColorConfig> = {\n black: { className: 'tipp-accent-black', fallbackColor: 'gray' },\n};\n\nconst isSemanticColor = (color?: UiColor): color is SemanticColor =>\n color !== undefined && color in SEMANTIC_COLOR_MAP;\n\nconst isCustomColor = (color?: UiColor): color is CustomColor =>\n color !== undefined && color in CUSTOM_COLOR_MAP;\n\nexport interface ResolvedColor {\n /** Radix 컴포넌트의 `color` prop에 그대로 전달할 값. custom color면 undefined. */\n color?: RadixColor;\n /** accent override를 적용하기 위해 요소에 붙일 className. */\n className?: string;\n}\n\n/**\n * 통합 color 입력을 Radix color prop과 className으로 정규화한다.\n *\n * - custom color(black 등): Radix color는 비우고 accent override className을 반환\n * - semantic color(error/neutral/success/accent): 대응 Radix color로 변환\n * - Radix color: 그대로 pass-through\n */\nexport const resolveColor = (color?: UiColor): ResolvedColor => {\n if (isCustomColor(color)) {\n const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];\n return { color: fallbackColor, className };\n }\n\n if (isSemanticColor(color)) {\n return { color: SEMANTIC_COLOR_MAP[color] };\n }\n\n return { color };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAsC;AACtC,kBAAqB;AACrB,mBAA2C;;;AC2B3C,IAAM,qBAAoE;AAAA,EACxE,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AACV;AAgBA,IAAM,mBAA2D;AAAA,EAC/D,OAAO,EAAE,WAAW,qBAAqB,eAAe,OAAO;AACjE;AAEA,IAAM,kBAAkB,CAAC,UACvB,UAAU,UAAa,SAAS;AAElC,IAAM,gBAAgB,CAAC,UACrB,UAAU,UAAa,SAAS;AAgB3B,IAAM,eAAe,CAAC,UAAmC;AAC9D,MAAI,cAAc,KAAK,GAAG;AACxB,UAAM,EAAE,WAAW,cAAc,IAAI,iBAAiB,KAAK;AAC3D,WAAO,EAAE,OAAO,eAAe,UAAU;AAAA,EAC3C;AAEA,MAAI,gBAAgB,KAAK,GAAG;AAC1B,WAAO,EAAE,OAAO,mBAAmB,KAAK,EAAE;AAAA,EAC5C;AAEA,SAAO,EAAE,MAAM;AACjB;;;AD1DI;AAZJ,IAAM,WAAO,yBAGX,CAAC,OAAO,QAAQ;AAChB,QAAsC,YAA9B,SAAO,UAnBjB,IAmBwC,IAAT,iBAAS,IAAT,CAArB,SAAO;AAEf,QAAM,EAAE,WAAW,eAAe,QAAI;AAAA,IACpC,MAAM,aAAa,KAAK;AAAA,IACxB,CAAC,KAAK;AAAA,EACR;AAEA,SACE;AAAA,IAAC,cAAAA,OAAY;AAAA,IAAZ,iCACK,OADL;AAAA,MAEC,eAAW,kBAAK,gBAAgB,SAAS;AAAA,MACzC;AAAA;AAAA,EACF;AAEJ,CAAC;AAED,KAAK,cAAc;AAEZ,IAAM,SAAS,iCACjB,cAAAA,SADiB;AAAA,EAEpB;AACF;","names":["RadixTabNav"]}
@@ -1 +1,16 @@
1
- export { TabNav } from '@radix-ui/themes';
1
+ import { TabNav as TabNav$1 } from '@radix-ui/themes';
2
+ import React__default from 'react';
3
+ import { UiColor } from '../utils/resolve-color.cjs';
4
+
5
+ declare const TabNav: {
6
+ Root: React__default.ForwardRefExoticComponent<Omit<TabNav$1.RootProps & React__default.RefAttributes<HTMLElement>, "ref"> & {
7
+ /**
8
+ * TabNav는 Radix color prop이 없어 per-instance로는 custom accent(black 등)만
9
+ * className override로 적용된다. semantic/radix color는 theme accent로만 가능.
10
+ */
11
+ color?: UiColor;
12
+ } & React__default.RefAttributes<HTMLElement>>;
13
+ Link: React__default.ForwardRefExoticComponent<TabNav$1.LinkProps & React__default.RefAttributes<HTMLAnchorElement>>;
14
+ };
15
+
16
+ export { TabNav };
@@ -1 +1,16 @@
1
- export { TabNav } from '@radix-ui/themes';
1
+ import { TabNav as TabNav$1 } from '@radix-ui/themes';
2
+ import React__default from 'react';
3
+ import { UiColor } from '../utils/resolve-color.js';
4
+
5
+ declare const TabNav: {
6
+ Root: React__default.ForwardRefExoticComponent<Omit<TabNav$1.RootProps & React__default.RefAttributes<HTMLElement>, "ref"> & {
7
+ /**
8
+ * TabNav는 Radix color prop이 없어 per-instance로는 custom accent(black 등)만
9
+ * className override로 적용된다. semantic/radix color는 theme accent로만 가능.
10
+ */
11
+ color?: UiColor;
12
+ } & React__default.RefAttributes<HTMLElement>>;
13
+ Link: React__default.ForwardRefExoticComponent<TabNav$1.LinkProps & React__default.RefAttributes<HTMLAnchorElement>>;
14
+ };
15
+
16
+ export { TabNav };
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  TabNav
3
- } from "../chunk-YJ7ZFOYL.js";
3
+ } from "../chunk-6TU647KJ.js";
4
+ import "../chunk-VFQD57ZY.js";
4
5
  import "../chunk-CRTRMMJ7.js";
5
6
  export {
6
7
  TabNav
@@ -1,8 +1,37 @@
1
1
  "use strict";
2
2
  var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
3
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
+ var __spreadValues = (a, b) => {
12
+ for (var prop in b || (b = {}))
13
+ if (__hasOwnProp.call(b, prop))
14
+ __defNormalProp(a, prop, b[prop]);
15
+ if (__getOwnPropSymbols)
16
+ for (var prop of __getOwnPropSymbols(b)) {
17
+ if (__propIsEnum.call(b, prop))
18
+ __defNormalProp(a, prop, b[prop]);
19
+ }
20
+ return a;
21
+ };
22
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
+ var __objRest = (source, exclude) => {
24
+ var target = {};
25
+ for (var prop in source)
26
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
27
+ target[prop] = source[prop];
28
+ if (source != null && __getOwnPropSymbols)
29
+ for (var prop of __getOwnPropSymbols(source)) {
30
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
31
+ target[prop] = source[prop];
32
+ }
33
+ return target;
34
+ };
6
35
  var __export = (target, all) => {
7
36
  for (var name in all)
8
37
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -20,10 +49,56 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
49
  // src/atoms/tabs.tsx
21
50
  var tabs_exports = {};
22
51
  __export(tabs_exports, {
23
- Tabs: () => import_themes.Tabs
52
+ Tabs: () => Tabs
24
53
  });
25
54
  module.exports = __toCommonJS(tabs_exports);
26
55
  var import_themes = require("@radix-ui/themes");
56
+ var import_clsx = require("clsx");
57
+ var import_react = require("react");
58
+
59
+ // src/utils/resolve-color.ts
60
+ var SEMANTIC_COLOR_MAP = {
61
+ error: "red",
62
+ neutral: "gray",
63
+ success: "green",
64
+ accent: void 0
65
+ };
66
+ var CUSTOM_COLOR_MAP = {
67
+ black: { className: "tipp-accent-black", fallbackColor: "gray" }
68
+ };
69
+ var isSemanticColor = (color) => color !== void 0 && color in SEMANTIC_COLOR_MAP;
70
+ var isCustomColor = (color) => color !== void 0 && color in CUSTOM_COLOR_MAP;
71
+ var resolveColor = (color) => {
72
+ if (isCustomColor(color)) {
73
+ const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];
74
+ return { color: fallbackColor, className };
75
+ }
76
+ if (isSemanticColor(color)) {
77
+ return { color: SEMANTIC_COLOR_MAP[color] };
78
+ }
79
+ return { color };
80
+ };
81
+
82
+ // src/atoms/tabs.tsx
83
+ var import_jsx_runtime = require("react/jsx-runtime");
84
+ var Root = (0, import_react.forwardRef)((props, ref) => {
85
+ const _a = props, { color, className } = _a, rest = __objRest(_a, ["color", "className"]);
86
+ const { className: colorClassName } = (0, import_react.useMemo)(
87
+ () => resolveColor(color),
88
+ [color]
89
+ );
90
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
91
+ import_themes.Tabs.Root,
92
+ __spreadProps(__spreadValues({}, rest), {
93
+ className: (0, import_clsx.clsx)(colorClassName, className),
94
+ ref
95
+ })
96
+ );
97
+ });
98
+ Root.displayName = "Tabs.Root";
99
+ var Tabs = __spreadProps(__spreadValues({}, import_themes.Tabs), {
100
+ Root
101
+ });
27
102
  // Annotate the CommonJS export names for ESM import in node:
28
103
  0 && (module.exports = {
29
104
  Tabs
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/atoms/tabs.tsx"],"sourcesContent":["export { Tabs } from '@radix-ui/themes';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAqB;","names":[]}
1
+ {"version":3,"sources":["../../src/atoms/tabs.tsx","../../src/utils/resolve-color.ts"],"sourcesContent":["import { Tabs as RadixTabs } from '@radix-ui/themes';\nimport { clsx } from 'clsx';\nimport React, { forwardRef, useMemo } from 'react';\nimport { resolveColor, type UiColor } from '../utils/resolve-color';\n\ntype TabsRootProps = React.ComponentPropsWithoutRef<typeof RadixTabs.Root> & {\n /**\n * Tabs는 Radix color prop이 없지만 active 인디케이터(`.rt-BaseTabListTrigger::before`)가\n * `--accent-indicator`를 사용하므로, Root className override로 custom accent(black 등)를\n * per-instance 적용할 수 있다. semantic/radix color는 theme accent로만 가능.\n */\n color?: UiColor;\n};\n\nconst Root = forwardRef<\n React.ElementRef<typeof RadixTabs.Root>,\n TabsRootProps\n>((props, ref) => {\n const { color, className, ...rest } = props;\n\n const { className: colorClassName } = useMemo(\n () => resolveColor(color),\n [color]\n );\n\n return (\n <RadixTabs.Root\n {...rest}\n className={clsx(colorClassName, className)}\n ref={ref}\n />\n );\n});\n\nRoot.displayName = 'Tabs.Root';\n\nexport const Tabs = {\n ...RadixTabs,\n Root,\n};\n","import type { BadgeProps as RadixBadgeProps } from '@radix-ui/themes';\n\n/**\n * Radix Themes가 제공하는 accent color union (gray, red, blue, ...).\n * 모든 color 지원 컴포넌트가 동일한 union을 공유하므로 Badge에서 파생한다.\n */\nexport type RadixColor = NonNullable<RadixBadgeProps['color']>;\n\n/** TIPP 시맨틱 color 별칭. */\nexport type SemanticColor = 'error' | 'accent' | 'neutral' | 'success';\n\n/**\n * Radix accent에 대응이 없어 CSS accent override로 처리하는 커스텀 color.\n * (예: black — `style/black.scss`의 `.tipp-accent-black` 참고)\n */\nexport type CustomColor = 'black';\n\n/** color 지원 컴포넌트가 노출하는 통합 color 타입. */\nexport type UiColor = RadixColor | SemanticColor | CustomColor;\n\n/**\n * union 각 멤버에 분배되는 Omit.\n * Radix의 polymorphic 컴포넌트 props(Text/Heading/Link 등 `as`로 분기되는 union)에서\n * 키를 제거할 때 일반 Omit은 union을 단일 객체로 합쳐 `as` 분기를 무너뜨리므로 이 타입을 쓴다.\n */\nexport type DistributiveOmit<T, K extends PropertyKey> = T extends unknown\n ? Omit<T, K>\n : never;\n\nconst SEMANTIC_COLOR_MAP: Record<SemanticColor, RadixColor | undefined> = {\n error: 'red',\n neutral: 'gray',\n success: 'green',\n accent: undefined,\n};\n\ninterface CustomColorConfig {\n /**\n * accent override를 적용할 className.\n */\n className: string;\n /**\n * Radix에 넘길 fallback color.\n * Text/Heading/Link 등은 `color` prop이 있어야 `data-accent-color`가 붙어\n * `--accent-*`를 참조하므로, 유효한 Radix color를 함께 넘긴 뒤 className으로\n * `--accent-*`를 덮어쓴다. (Badge/Button은 prop 없이도 accent 기반이라 무해)\n */\n fallbackColor: RadixColor;\n}\n\nconst CUSTOM_COLOR_MAP: Record<CustomColor, CustomColorConfig> = {\n black: { className: 'tipp-accent-black', fallbackColor: 'gray' },\n};\n\nconst isSemanticColor = (color?: UiColor): color is SemanticColor =>\n color !== undefined && color in SEMANTIC_COLOR_MAP;\n\nconst isCustomColor = (color?: UiColor): color is CustomColor =>\n color !== undefined && color in CUSTOM_COLOR_MAP;\n\nexport interface ResolvedColor {\n /** Radix 컴포넌트의 `color` prop에 그대로 전달할 값. custom color면 undefined. */\n color?: RadixColor;\n /** accent override를 적용하기 위해 요소에 붙일 className. */\n className?: string;\n}\n\n/**\n * 통합 color 입력을 Radix color prop과 className으로 정규화한다.\n *\n * - custom color(black 등): Radix color는 비우고 accent override className을 반환\n * - semantic color(error/neutral/success/accent): 대응 Radix color로 변환\n * - Radix color: 그대로 pass-through\n */\nexport const resolveColor = (color?: UiColor): ResolvedColor => {\n if (isCustomColor(color)) {\n const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];\n return { color: fallbackColor, className };\n }\n\n if (isSemanticColor(color)) {\n return { color: SEMANTIC_COLOR_MAP[color] };\n }\n\n return { color };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAkC;AAClC,kBAAqB;AACrB,mBAA2C;;;AC2B3C,IAAM,qBAAoE;AAAA,EACxE,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AACV;AAgBA,IAAM,mBAA2D;AAAA,EAC/D,OAAO,EAAE,WAAW,qBAAqB,eAAe,OAAO;AACjE;AAEA,IAAM,kBAAkB,CAAC,UACvB,UAAU,UAAa,SAAS;AAElC,IAAM,gBAAgB,CAAC,UACrB,UAAU,UAAa,SAAS;AAgB3B,IAAM,eAAe,CAAC,UAAmC;AAC9D,MAAI,cAAc,KAAK,GAAG;AACxB,UAAM,EAAE,WAAW,cAAc,IAAI,iBAAiB,KAAK;AAC3D,WAAO,EAAE,OAAO,eAAe,UAAU;AAAA,EAC3C;AAEA,MAAI,gBAAgB,KAAK,GAAG;AAC1B,WAAO,EAAE,OAAO,mBAAmB,KAAK,EAAE;AAAA,EAC5C;AAEA,SAAO,EAAE,MAAM;AACjB;;;AD3DI;AAZJ,IAAM,WAAO,yBAGX,CAAC,OAAO,QAAQ;AAChB,QAAsC,YAA9B,SAAO,UAlBjB,IAkBwC,IAAT,iBAAS,IAAT,CAArB,SAAO;AAEf,QAAM,EAAE,WAAW,eAAe,QAAI;AAAA,IACpC,MAAM,aAAa,KAAK;AAAA,IACxB,CAAC,KAAK;AAAA,EACR;AAEA,SACE;AAAA,IAAC,cAAAA,KAAU;AAAA,IAAV,iCACK,OADL;AAAA,MAEC,eAAW,kBAAK,gBAAgB,SAAS;AAAA,MACzC;AAAA;AAAA,EACF;AAEJ,CAAC;AAED,KAAK,cAAc;AAEZ,IAAM,OAAO,iCACf,cAAAA,OADe;AAAA,EAElB;AACF;","names":["RadixTabs"]}
@@ -1 +1,19 @@
1
- export { Tabs } from '@radix-ui/themes';
1
+ import { Tabs as Tabs$1 } from '@radix-ui/themes';
2
+ import React__default from 'react';
3
+ import { UiColor } from '../utils/resolve-color.cjs';
4
+
5
+ declare const Tabs: {
6
+ Root: React__default.ForwardRefExoticComponent<Omit<Tabs$1.RootProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & {
7
+ /**
8
+ * Tabs는 Radix color prop이 없지만 active 인디케이터(`.rt-BaseTabListTrigger::before`)가
9
+ * `--accent-indicator`를 사용하므로, Root className override로 custom accent(black 등)를
10
+ * per-instance 적용할 수 있다. semantic/radix color는 theme accent로만 가능.
11
+ */
12
+ color?: UiColor;
13
+ } & React__default.RefAttributes<HTMLDivElement>>;
14
+ List: React__default.ForwardRefExoticComponent<Tabs$1.ListProps & React__default.RefAttributes<HTMLDivElement>>;
15
+ Trigger: React__default.ForwardRefExoticComponent<Tabs$1.TriggerProps & React__default.RefAttributes<HTMLButtonElement>>;
16
+ Content: React__default.ForwardRefExoticComponent<Tabs$1.ContentProps & React__default.RefAttributes<HTMLDivElement>>;
17
+ };
18
+
19
+ export { Tabs };
@@ -1 +1,19 @@
1
- export { Tabs } from '@radix-ui/themes';
1
+ import { Tabs as Tabs$1 } from '@radix-ui/themes';
2
+ import React__default from 'react';
3
+ import { UiColor } from '../utils/resolve-color.js';
4
+
5
+ declare const Tabs: {
6
+ Root: React__default.ForwardRefExoticComponent<Omit<Tabs$1.RootProps & React__default.RefAttributes<HTMLDivElement>, "ref"> & {
7
+ /**
8
+ * Tabs는 Radix color prop이 없지만 active 인디케이터(`.rt-BaseTabListTrigger::before`)가
9
+ * `--accent-indicator`를 사용하므로, Root className override로 custom accent(black 등)를
10
+ * per-instance 적용할 수 있다. semantic/radix color는 theme accent로만 가능.
11
+ */
12
+ color?: UiColor;
13
+ } & React__default.RefAttributes<HTMLDivElement>>;
14
+ List: React__default.ForwardRefExoticComponent<Tabs$1.ListProps & React__default.RefAttributes<HTMLDivElement>>;
15
+ Trigger: React__default.ForwardRefExoticComponent<Tabs$1.TriggerProps & React__default.RefAttributes<HTMLButtonElement>>;
16
+ Content: React__default.ForwardRefExoticComponent<Tabs$1.ContentProps & React__default.RefAttributes<HTMLDivElement>>;
17
+ };
18
+
19
+ export { Tabs };
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  Tabs
3
- } from "../chunk-5ZITU5L7.js";
3
+ } from "../chunk-CGDBUDY3.js";
4
+ import "../chunk-VFQD57ZY.js";
4
5
  import "../chunk-CRTRMMJ7.js";
5
6
  export {
6
7
  Tabs
@@ -52,8 +52,9 @@ __export(tooltip_exports, {
52
52
  Tooltip: () => Tooltip
53
53
  });
54
54
  module.exports = __toCommonJS(tooltip_exports);
55
- var import_themes = require("@radix-ui/themes");
56
- var import_react2 = require("react");
55
+ var import_themes2 = require("@radix-ui/themes");
56
+ var import_clsx2 = require("clsx");
57
+ var import_react3 = require("react");
57
58
 
58
59
  // src/context/ui-state-provider.tsx
59
60
  var import_react = require("react");
@@ -70,8 +71,38 @@ var useUIState = () => {
70
71
  }
71
72
  };
72
73
 
73
- // src/atoms/tooltip.tsx
74
+ // src/utils/resolve-color.ts
75
+ var SEMANTIC_COLOR_MAP = {
76
+ error: "red",
77
+ neutral: "gray",
78
+ success: "green",
79
+ accent: void 0
80
+ };
81
+ var CUSTOM_COLOR_MAP = {
82
+ black: { className: "tipp-accent-black", fallbackColor: "gray" }
83
+ };
84
+ var isSemanticColor = (color) => color !== void 0 && color in SEMANTIC_COLOR_MAP;
85
+ var isCustomColor = (color) => color !== void 0 && color in CUSTOM_COLOR_MAP;
86
+ var resolveColor = (color) => {
87
+ if (isCustomColor(color)) {
88
+ const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];
89
+ return { color: fallbackColor, className };
90
+ }
91
+ if (isSemanticColor(color)) {
92
+ return { color: SEMANTIC_COLOR_MAP[color] };
93
+ }
94
+ return { color };
95
+ };
96
+
97
+ // src/theme/theme-provider.tsx
98
+ var import_react2 = require("react");
99
+ var import_themes = require("@radix-ui/themes");
100
+ var import_clsx = require("clsx");
74
101
  var import_jsx_runtime2 = require("react/jsx-runtime");
102
+ var ThemeAccentContext = (0, import_react2.createContext)(void 0);
103
+
104
+ // src/atoms/tooltip.tsx
105
+ var import_jsx_runtime3 = require("react/jsx-runtime");
75
106
  function Tooltip(_a) {
76
107
  var _b = _a, {
77
108
  children
@@ -80,15 +111,20 @@ function Tooltip(_a) {
80
111
  ]);
81
112
  var _a2;
82
113
  const { isMobile } = useUIState();
83
- const [open, setOpen] = (0, import_react2.useState)((_a2 = props.defaultOpen) != null ? _a2 : false);
84
- const onOpenChange = (0, import_react2.useCallback)(
114
+ const [open, setOpen] = (0, import_react3.useState)((_a2 = props.defaultOpen) != null ? _a2 : false);
115
+ const themeAccent = (0, import_react3.useContext)(ThemeAccentContext);
116
+ const accentClassName = (0, import_react3.useMemo)(
117
+ () => resolveColor(themeAccent).className,
118
+ [themeAccent]
119
+ );
120
+ const onOpenChange = (0, import_react3.useCallback)(
85
121
  (e) => {
86
122
  if (isMobile) return;
87
123
  setOpen(e);
88
124
  },
89
125
  [isMobile]
90
126
  );
91
- const onClick = (0, import_react2.useCallback)(
127
+ const onClick = (0, import_react3.useCallback)(
92
128
  (e) => {
93
129
  if (!isMobile) return;
94
130
  e.preventDefault();
@@ -96,14 +132,15 @@ function Tooltip(_a) {
96
132
  },
97
133
  [isMobile]
98
134
  );
99
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
100
- import_themes.Tooltip,
135
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
136
+ import_themes2.Tooltip,
101
137
  __spreadProps(__spreadValues({
102
138
  delayDuration: isMobile ? props.delayDuration : 0,
103
139
  onOpenChange,
104
140
  open
105
141
  }, props), {
106
- children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_themes.Box, { asChild: true, onClick, children })
142
+ className: (0, import_clsx2.clsx)(accentClassName, props.className),
143
+ children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_themes2.Box, { asChild: true, onClick, children })
107
144
  })
108
145
  );
109
146
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/atoms/tooltip.tsx","../../src/context/ui-state-provider.tsx"],"sourcesContent":["import {\n Box,\n Tooltip as RadixTooltip,\n type TooltipProps as RadixTooltipProps,\n} from '@radix-ui/themes';\nimport { useCallback, useState } from 'react';\nimport { useUIState } from '@/context/ui-state-provider';\n\nexport function Tooltip({\n children,\n ...props\n}: RadixTooltipProps): React.ReactElement {\n const { isMobile } = useUIState();\n const [open, setOpen] = useState<boolean>(props.defaultOpen ?? false);\n\n const onOpenChange = useCallback(\n (e: boolean) => {\n if (isMobile) return;\n setOpen(e);\n },\n [isMobile]\n );\n\n const onClick = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isMobile) return;\n e.preventDefault();\n setOpen((p) => !p);\n },\n [isMobile]\n );\n\n return (\n <RadixTooltip\n delayDuration={isMobile ? props.delayDuration : 0}\n onOpenChange={onOpenChange}\n open={open}\n {...props}\n >\n <Box asChild onClick={onClick}>\n {children}\n </Box>\n </RadixTooltip>\n );\n}\n","import { createContext, useContext } from 'react';\n\ninterface UIStateContextType {\n isMobile: boolean;\n}\n\nexport const UIStateContext = createContext<UIStateContextType>({\n isMobile: false,\n});\n\nexport type UiStateProviderProps = React.ReactNode;\n\nexport function UIStateProvider({\n children,\n isMobile,\n}: {\n children: UiStateProviderProps;\n isMobile: boolean;\n}): React.ReactElement {\n return (\n <UIStateContext.Provider value={{ isMobile }}>\n {children}\n </UIStateContext.Provider>\n );\n}\n\nexport const useUIState = (): UIStateContextType => {\n try {\n const state = useContext(UIStateContext);\n return state;\n } catch (error) {\n throw new Error('UIStateProvider not found');\n }\n};"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAIO;AACP,IAAAA,gBAAsC;;;ACLtC,mBAA0C;AAoBtC;AAdG,IAAM,qBAAiB,4BAAkC;AAAA,EAC9D,UAAU;AACZ,CAAC;AAkBM,IAAM,aAAa,MAA0B;AAClD,MAAI;AACF,UAAM,YAAQ,yBAAW,cAAc;AACvC,WAAO;AAAA,EACT,SAAS,OAAO;AACd,UAAM,IAAI,MAAM,2BAA2B;AAAA,EAC7C;AACF;;;ADMM,IAAAC,sBAAA;AA/BC,SAAS,QAAQ,IAGkB;AAHlB,eACtB;AAAA;AAAA,EATF,IAQwB,IAEnB,kBAFmB,IAEnB;AAAA,IADH;AAAA;AATF,MAAAC;AAYE,QAAM,EAAE,SAAS,IAAI,WAAW;AAChC,QAAM,CAAC,MAAM,OAAO,QAAI,yBAAkBA,MAAA,MAAM,gBAAN,OAAAA,MAAqB,KAAK;AAEpE,QAAM,mBAAe;AAAA,IACnB,CAAC,MAAe;AACd,UAAI,SAAU;AACd,cAAQ,CAAC;AAAA,IACX;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,QAAM,cAAU;AAAA,IACd,CAAC,MAAwC;AACvC,UAAI,CAAC,SAAU;AACf,QAAE,eAAe;AACjB,cAAQ,CAAC,MAAM,CAAC,CAAC;AAAA,IACnB;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,SACE;AAAA,IAAC,cAAAC;AAAA,IAAA;AAAA,MACC,eAAe,WAAW,MAAM,gBAAgB;AAAA,MAChD;AAAA,MACA;AAAA,OACI,QAJL;AAAA,MAMC,uDAAC,qBAAI,SAAO,MAAC,SACV,UACH;AAAA;AAAA,EACF;AAEJ;","names":["import_react","import_jsx_runtime","_a","RadixTooltip"]}
1
+ {"version":3,"sources":["../../src/atoms/tooltip.tsx","../../src/context/ui-state-provider.tsx","../../src/utils/resolve-color.ts","../../src/theme/theme-provider.tsx"],"sourcesContent":["import {\n Box,\n Tooltip as RadixTooltip,\n type TooltipProps as RadixTooltipProps,\n} from '@radix-ui/themes';\nimport { clsx } from 'clsx';\nimport { useCallback, useContext, useMemo, useState } from 'react';\nimport { useUIState } from '@/context/ui-state-provider';\nimport { resolveColor } from '../utils/resolve-color';\nimport { ThemeAccentContext } from '../theme/theme-provider';\n\nexport function Tooltip({\n children,\n ...props\n}: RadixTooltipProps): React.ReactElement {\n const { isMobile } = useUIState();\n const [open, setOpen] = useState<boolean>(props.defaultOpen ?? false);\n const themeAccent = useContext(ThemeAccentContext);\n\n // Content는 Portal(body)로 렌더돼 theme의 className override를 못 받으므로, theme custom\n // accent(black)를 className으로 다시 적용해 Portal 안에서도 black을 유지한다.\n // (RadixTooltip의 className은 Content에 적용됨)\n const accentClassName = useMemo(\n () => resolveColor(themeAccent).className,\n [themeAccent]\n );\n\n const onOpenChange = useCallback(\n (e: boolean) => {\n if (isMobile) return;\n setOpen(e);\n },\n [isMobile]\n );\n\n const onClick = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n if (!isMobile) return;\n e.preventDefault();\n setOpen((p) => !p);\n },\n [isMobile]\n );\n\n return (\n <RadixTooltip\n delayDuration={isMobile ? props.delayDuration : 0}\n onOpenChange={onOpenChange}\n open={open}\n {...props}\n className={clsx(accentClassName, props.className)}\n >\n <Box asChild onClick={onClick}>\n {children}\n </Box>\n </RadixTooltip>\n );\n}\n","import { createContext, useContext } from 'react';\n\ninterface UIStateContextType {\n isMobile: boolean;\n}\n\nexport const UIStateContext = createContext<UIStateContextType>({\n isMobile: false,\n});\n\nexport type UiStateProviderProps = React.ReactNode;\n\nexport function UIStateProvider({\n children,\n isMobile,\n}: {\n children: UiStateProviderProps;\n isMobile: boolean;\n}): React.ReactElement {\n return (\n <UIStateContext.Provider value={{ isMobile }}>\n {children}\n </UIStateContext.Provider>\n );\n}\n\nexport const useUIState = (): UIStateContextType => {\n try {\n const state = useContext(UIStateContext);\n return state;\n } catch (error) {\n throw new Error('UIStateProvider not found');\n }\n};","import type { BadgeProps as RadixBadgeProps } from '@radix-ui/themes';\n\n/**\n * Radix Themes가 제공하는 accent color union (gray, red, blue, ...).\n * 모든 color 지원 컴포넌트가 동일한 union을 공유하므로 Badge에서 파생한다.\n */\nexport type RadixColor = NonNullable<RadixBadgeProps['color']>;\n\n/** TIPP 시맨틱 color 별칭. */\nexport type SemanticColor = 'error' | 'accent' | 'neutral' | 'success';\n\n/**\n * Radix accent에 대응이 없어 CSS accent override로 처리하는 커스텀 color.\n * (예: black — `style/black.scss`의 `.tipp-accent-black` 참고)\n */\nexport type CustomColor = 'black';\n\n/** color 지원 컴포넌트가 노출하는 통합 color 타입. */\nexport type UiColor = RadixColor | SemanticColor | CustomColor;\n\n/**\n * union 각 멤버에 분배되는 Omit.\n * Radix의 polymorphic 컴포넌트 props(Text/Heading/Link 등 `as`로 분기되는 union)에서\n * 키를 제거할 때 일반 Omit은 union을 단일 객체로 합쳐 `as` 분기를 무너뜨리므로 이 타입을 쓴다.\n */\nexport type DistributiveOmit<T, K extends PropertyKey> = T extends unknown\n ? Omit<T, K>\n : never;\n\nconst SEMANTIC_COLOR_MAP: Record<SemanticColor, RadixColor | undefined> = {\n error: 'red',\n neutral: 'gray',\n success: 'green',\n accent: undefined,\n};\n\ninterface CustomColorConfig {\n /**\n * accent override를 적용할 className.\n */\n className: string;\n /**\n * Radix에 넘길 fallback color.\n * Text/Heading/Link 등은 `color` prop이 있어야 `data-accent-color`가 붙어\n * `--accent-*`를 참조하므로, 유효한 Radix color를 함께 넘긴 뒤 className으로\n * `--accent-*`를 덮어쓴다. (Badge/Button은 prop 없이도 accent 기반이라 무해)\n */\n fallbackColor: RadixColor;\n}\n\nconst CUSTOM_COLOR_MAP: Record<CustomColor, CustomColorConfig> = {\n black: { className: 'tipp-accent-black', fallbackColor: 'gray' },\n};\n\nconst isSemanticColor = (color?: UiColor): color is SemanticColor =>\n color !== undefined && color in SEMANTIC_COLOR_MAP;\n\nconst isCustomColor = (color?: UiColor): color is CustomColor =>\n color !== undefined && color in CUSTOM_COLOR_MAP;\n\nexport interface ResolvedColor {\n /** Radix 컴포넌트의 `color` prop에 그대로 전달할 값. custom color면 undefined. */\n color?: RadixColor;\n /** accent override를 적용하기 위해 요소에 붙일 className. */\n className?: string;\n}\n\n/**\n * 통합 color 입력을 Radix color prop과 className으로 정규화한다.\n *\n * - custom color(black 등): Radix color는 비우고 accent override className을 반환\n * - semantic color(error/neutral/success/accent): 대응 Radix color로 변환\n * - Radix color: 그대로 pass-through\n */\nexport const resolveColor = (color?: UiColor): ResolvedColor => {\n if (isCustomColor(color)) {\n const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];\n return { color: fallbackColor, className };\n }\n\n if (isSemanticColor(color)) {\n return { color: SEMANTIC_COLOR_MAP[color] };\n }\n\n return { color };\n};\n","import React, { createContext } from 'react';\nimport { Theme } from '@radix-ui/themes';\nimport { clsx } from 'clsx';\nimport { resolveColor, type UiColor } from '../utils/resolve-color';\n\ntype ThemeProps = React.ComponentProps<typeof Theme>;\n\n/**\n * 테마 전역 primary가 custom color(black 등)일 때 그 값을 하위로 전달하는 context.\n * Radix는 Portal 컨텐츠(Select 드롭다운 등)에 theme의 accentColor \"값\"(여기선 fallback gray)만\n * 복제하고 `.tipp-accent-black` className은 복제하지 않으므로, Portal 안에서는 accent override가\n * 사라진다. 래핑된 overlay 컴포넌트(Select 등)가 이 context를 최하위 fallback color로 읽어\n * 자기 요소에 className을 직접 부여하면 Portal 내부에서도 black이 유지된다.\n * (custom accent가 아닐 때는 undefined — Radix 네이티브 portal 상속에 맡긴다.)\n */\nexport const ThemeAccentContext = createContext<UiColor | undefined>(undefined);\n\nexport interface ThemeProviderProps extends Omit<ThemeProps, 'accentColor'> {\n children: React.ReactNode;\n /**\n * 전역 primary(accent) color. Radix accent color에 더해 커스텀 `black`을 지원한다.\n * black이면 Radix에는 fallback `gray`를 넘기고 Theme 루트에 accent override\n * className을 부여하여 하위 컴포넌트가 color prop 없이도 black을 상속한다.\n */\n accentColor?: ThemeProps['accentColor'] | 'black';\n}\n\nexport function ThemeProvider(props: ThemeProviderProps): React.ReactNode {\n const { accentColor = 'iris', className, ...rest } = props;\n\n const { color: radixAccent, className: accentClassName } =\n resolveColor(accentColor);\n\n // custom accent(className이 생기는 경우 = black)일 때만 Portal 보정용으로 context에 흘린다.\n const themeAccent = accentClassName ? accentColor : undefined;\n\n return (\n <ThemeAccentContext.Provider value={themeAccent}>\n <Theme\n accentColor={radixAccent ?? 'iris'}\n className={clsx(accentClassName, className)}\n radius=\"medium\"\n {...rest}\n />\n </ThemeAccentContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,iBAIO;AACP,IAAAC,eAAqB;AACrB,IAAAC,gBAA2D;;;ACN3D,mBAA0C;AAoBtC;AAdG,IAAM,qBAAiB,4BAAkC;AAAA,EAC9D,UAAU;AACZ,CAAC;AAkBM,IAAM,aAAa,MAA0B;AAClD,MAAI;AACF,UAAM,YAAQ,yBAAW,cAAc;AACvC,WAAO;AAAA,EACT,SAAS,OAAO;AACd,UAAM,IAAI,MAAM,2BAA2B;AAAA,EAC7C;AACF;;;ACJA,IAAM,qBAAoE;AAAA,EACxE,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AACV;AAgBA,IAAM,mBAA2D;AAAA,EAC/D,OAAO,EAAE,WAAW,qBAAqB,eAAe,OAAO;AACjE;AAEA,IAAM,kBAAkB,CAAC,UACvB,UAAU,UAAa,SAAS;AAElC,IAAM,gBAAgB,CAAC,UACrB,UAAU,UAAa,SAAS;AAgB3B,IAAM,eAAe,CAAC,UAAmC;AAC9D,MAAI,cAAc,KAAK,GAAG;AACxB,UAAM,EAAE,WAAW,cAAc,IAAI,iBAAiB,KAAK;AAC3D,WAAO,EAAE,OAAO,eAAe,UAAU;AAAA,EAC3C;AAEA,MAAI,gBAAgB,KAAK,GAAG;AAC1B,WAAO,EAAE,OAAO,mBAAmB,KAAK,EAAE;AAAA,EAC5C;AAEA,SAAO,EAAE,MAAM;AACjB;;;ACrFA,IAAAC,gBAAqC;AACrC,oBAAsB;AACtB,kBAAqB;AAoCf,IAAAC,sBAAA;AAvBC,IAAM,yBAAqB,6BAAmC,MAAS;;;AHqCxE,IAAAC,sBAAA;AAzCC,SAAS,QAAQ,IAGkB;AAHlB,eACtB;AAAA;AAAA,EAZF,IAWwB,IAEnB,kBAFmB,IAEnB;AAAA,IADH;AAAA;AAZF,MAAAC;AAeE,QAAM,EAAE,SAAS,IAAI,WAAW;AAChC,QAAM,CAAC,MAAM,OAAO,QAAI,yBAAkBA,MAAA,MAAM,gBAAN,OAAAA,MAAqB,KAAK;AACpE,QAAM,kBAAc,0BAAW,kBAAkB;AAKjD,QAAM,sBAAkB;AAAA,IACtB,MAAM,aAAa,WAAW,EAAE;AAAA,IAChC,CAAC,WAAW;AAAA,EACd;AAEA,QAAM,mBAAe;AAAA,IACnB,CAAC,MAAe;AACd,UAAI,SAAU;AACd,cAAQ,CAAC;AAAA,IACX;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,QAAM,cAAU;AAAA,IACd,CAAC,MAAwC;AACvC,UAAI,CAAC,SAAU;AACf,QAAE,eAAe;AACjB,cAAQ,CAAC,MAAM,CAAC,CAAC;AAAA,IACnB;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,SACE;AAAA,IAAC,eAAAC;AAAA,IAAA;AAAA,MACC,eAAe,WAAW,MAAM,gBAAgB;AAAA,MAChD;AAAA,MACA;AAAA,OACI,QAJL;AAAA,MAKC,eAAW,mBAAK,iBAAiB,MAAM,SAAS;AAAA,MAEhD,uDAAC,sBAAI,SAAO,MAAC,SACV,UACH;AAAA;AAAA,EACF;AAEJ;","names":["import_themes","import_clsx","import_react","import_react","import_jsx_runtime","import_jsx_runtime","_a","RadixTooltip"]}
@@ -1,7 +1,9 @@
1
1
  import {
2
2
  Tooltip
3
- } from "../chunk-3NUQAVE6.js";
3
+ } from "../chunk-2M3UFZUD.js";
4
4
  import "../chunk-PT57HCAI.js";
5
+ import "../chunk-WYWM2HSZ.js";
6
+ import "../chunk-VFQD57ZY.js";
5
7
  import "../chunk-CRTRMMJ7.js";
6
8
  export {
7
9
  Tooltip
@@ -53,6 +53,7 @@ __export(typo_exports, {
53
53
  });
54
54
  module.exports = __toCommonJS(typo_exports);
55
55
  var import_themes = require("@radix-ui/themes");
56
+ var import_clsx = require("clsx");
56
57
  var import_react = require("react");
57
58
 
58
59
  // src/utils/map-with-responsive.ts
@@ -73,11 +74,38 @@ var mapWithResponsive = (args) => {
73
74
  return value;
74
75
  };
75
76
 
77
+ // src/utils/resolve-color.ts
78
+ var SEMANTIC_COLOR_MAP = {
79
+ error: "red",
80
+ neutral: "gray",
81
+ success: "green",
82
+ accent: void 0
83
+ };
84
+ var CUSTOM_COLOR_MAP = {
85
+ black: { className: "tipp-accent-black", fallbackColor: "gray" }
86
+ };
87
+ var isSemanticColor = (color) => color !== void 0 && color in SEMANTIC_COLOR_MAP;
88
+ var isCustomColor = (color) => color !== void 0 && color in CUSTOM_COLOR_MAP;
89
+ var resolveColor = (color) => {
90
+ if (isCustomColor(color)) {
91
+ const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];
92
+ return { color: fallbackColor, className };
93
+ }
94
+ if (isSemanticColor(color)) {
95
+ return { color: SEMANTIC_COLOR_MAP[color] };
96
+ }
97
+ return { color };
98
+ };
99
+
76
100
  // src/atoms/typo.tsx
77
101
  var import_jsx_runtime = require("react/jsx-runtime");
78
102
  var Typo = (0, import_react.forwardRef)(
79
103
  (props, ref) => {
80
- const _a = props, { size, variant, children } = _a, rest = __objRest(_a, ["size", "variant", "children"]);
104
+ const _a = props, { size, variant, children, color, className } = _a, rest = __objRest(_a, ["size", "variant", "children", "color", "className"]);
105
+ const { color: radixColor, className: colorClassName } = (0, import_react.useMemo)(
106
+ () => resolveColor(color),
107
+ [color]
108
+ );
81
109
  const radixSize = (0, import_react.useMemo)(() => {
82
110
  if (size !== void 0) return size;
83
111
  if (variant === void 0) return "2";
@@ -96,7 +124,16 @@ var Typo = (0, import_react.forwardRef)(
96
124
  }
97
125
  });
98
126
  }, [size, variant]);
99
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_themes.Text, __spreadProps(__spreadValues({}, rest), { ref, size: radixSize, children }));
127
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
128
+ import_themes.Text,
129
+ __spreadProps(__spreadValues({}, rest), {
130
+ className: (0, import_clsx.clsx)(colorClassName, className),
131
+ color: radixColor,
132
+ ref,
133
+ size: radixSize,
134
+ children
135
+ })
136
+ );
100
137
  }
101
138
  );
102
139
  Typo.displayName = "Typo";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/atoms/typo.tsx","../../src/utils/map-with-responsive.ts"],"sourcesContent":["import type { TextProps as RadixTextProps } from '@radix-ui/themes';\nimport type { Responsive } from '@radix-ui/themes/props';\nimport { Text as RadixText } from '@radix-ui/themes';\nimport React, { useMemo, forwardRef } from 'react';\nimport { mapWithResponsive } from '@/utils/map-with-responsive';\n\nexport type TypoProps = RadixTextProps & {\n variant?: Responsive<'body' | 'caption' | 'subtitle'>;\n};\n\nexport const Typo = forwardRef<HTMLSpanElement, TypoProps>(\n (props: TypoProps, ref): React.ReactNode => {\n const { size, variant, children, ...rest } = props;\n\n const radixSize = useMemo<RadixTextProps['size']>(() => {\n if (size !== undefined) return size;\n\n if (variant === undefined) return '2';\n\n return mapWithResponsive({\n value: variant,\n mapFn: (variantValue?: 'body' | 'caption' | 'subtitle') => {\n switch (variantValue) {\n case 'caption':\n return '1';\n case 'subtitle':\n return '3';\n case 'body':\n default:\n return '2';\n }\n },\n });\n }, [size, variant]);\n\n return (\n <RadixText {...rest} ref={ref} size={radixSize}>\n {children}\n </RadixText>\n );\n }\n);\n\nTypo.displayName = 'Typo';\n","import type { Breakpoint, Responsive } from \"@radix-ui/themes/props\";\n\nexport const mapWithResponsive = <T extends string,K extends string>(\n args: {value: Responsive<T>, mapFn: (value?:T)=>K |undefined}\n): Responsive<K> | undefined => {\n const {value, mapFn} = args;\n if(typeof value === 'string'){\n return mapFn(value);\n };\n \n if(typeof value === 'object'){\n const newObj: Partial<Record<Breakpoint, K>> = {};\n let key: Breakpoint;\n for(key in value){\n newObj[key] = mapFn(value[key]);\n }\n return newObj;\n }\n return value;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAkC;AAClC,mBAA2C;;;ACDpC,IAAM,oBAAoB,CAChC,SAC+B;AAC9B,QAAM,EAAC,OAAO,MAAK,IAAI;AACvB,MAAG,OAAO,UAAU,UAAS;AAC3B,WAAO,MAAM,KAAK;AAAA,EACpB;AAAC;AAED,MAAG,OAAO,UAAU,UAAS;AAC3B,UAAM,SAAyC,CAAC;AAChD,QAAI;AACJ,SAAI,OAAO,OAAM;AACf,aAAO,GAAG,IAAI,MAAM,MAAM,GAAG,CAAC;AAAA,IAChC;AACA,WAAO;AAAA,EACT;AACA,SAAO;AACT;;;ADiBM;AA1BC,IAAM,WAAO;AAAA,EAClB,CAAC,OAAkB,QAAyB;AAC1C,UAA6C,YAArC,QAAM,SAAS,SAZ3B,IAYiD,IAAT,iBAAS,IAAT,CAA5B,QAAM,WAAS;AAEvB,UAAM,gBAAY,sBAAgC,MAAM;AACtD,UAAI,SAAS,OAAW,QAAO;AAE/B,UAAI,YAAY,OAAW,QAAO;AAElC,aAAO,kBAAkB;AAAA,QACvB,OAAO;AAAA,QACP,OAAO,CAAC,iBAAmD;AACzD,kBAAQ,cAAc;AAAA,YACpB,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AAAA,YACL;AACE,qBAAO;AAAA,UACX;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH,GAAG,CAAC,MAAM,OAAO,CAAC;AAElB,WACE,4CAAC,cAAAA,MAAA,iCAAc,OAAd,EAAoB,KAAU,MAAM,WAClC,WACH;AAAA,EAEJ;AACF;AAEA,KAAK,cAAc;","names":["RadixText"]}
1
+ {"version":3,"sources":["../../src/atoms/typo.tsx","../../src/utils/map-with-responsive.ts","../../src/utils/resolve-color.ts"],"sourcesContent":["import type { TextProps as RadixTextProps } from '@radix-ui/themes';\nimport type { Responsive } from '@radix-ui/themes/props';\nimport { Text as RadixText } from '@radix-ui/themes';\nimport { clsx } from 'clsx';\nimport React, { useMemo, forwardRef } from 'react';\nimport { mapWithResponsive } from '@/utils/map-with-responsive';\nimport {\n resolveColor,\n type DistributiveOmit,\n type UiColor,\n} from '../utils/resolve-color';\n\nexport type TypoProps = DistributiveOmit<RadixTextProps, 'color'> & {\n variant?: Responsive<'body' | 'caption' | 'subtitle'>;\n color?: UiColor;\n};\n\nexport const Typo = forwardRef<HTMLSpanElement, TypoProps>(\n (props: TypoProps, ref): React.ReactNode => {\n const { size, variant, children, color, className, ...rest } = props;\n\n const { color: radixColor, className: colorClassName } = useMemo(\n () => resolveColor(color),\n [color]\n );\n\n const radixSize = useMemo<RadixTextProps['size']>(() => {\n if (size !== undefined) return size;\n\n if (variant === undefined) return '2';\n\n return mapWithResponsive({\n value: variant,\n mapFn: (variantValue?: 'body' | 'caption' | 'subtitle') => {\n switch (variantValue) {\n case 'caption':\n return '1';\n case 'subtitle':\n return '3';\n case 'body':\n default:\n return '2';\n }\n },\n });\n }, [size, variant]);\n\n return (\n <RadixText\n {...rest}\n className={clsx(colorClassName, className)}\n color={radixColor}\n ref={ref}\n size={radixSize}\n >\n {children}\n </RadixText>\n );\n }\n);\n\nTypo.displayName = 'Typo';\n","import type { Breakpoint, Responsive } from \"@radix-ui/themes/props\";\n\nexport const mapWithResponsive = <T extends string,K extends string>(\n args: {value: Responsive<T>, mapFn: (value?:T)=>K |undefined}\n): Responsive<K> | undefined => {\n const {value, mapFn} = args;\n if(typeof value === 'string'){\n return mapFn(value);\n };\n \n if(typeof value === 'object'){\n const newObj: Partial<Record<Breakpoint, K>> = {};\n let key: Breakpoint;\n for(key in value){\n newObj[key] = mapFn(value[key]);\n }\n return newObj;\n }\n return value;\n};\n","import type { BadgeProps as RadixBadgeProps } from '@radix-ui/themes';\n\n/**\n * Radix Themes가 제공하는 accent color union (gray, red, blue, ...).\n * 모든 color 지원 컴포넌트가 동일한 union을 공유하므로 Badge에서 파생한다.\n */\nexport type RadixColor = NonNullable<RadixBadgeProps['color']>;\n\n/** TIPP 시맨틱 color 별칭. */\nexport type SemanticColor = 'error' | 'accent' | 'neutral' | 'success';\n\n/**\n * Radix accent에 대응이 없어 CSS accent override로 처리하는 커스텀 color.\n * (예: black — `style/black.scss`의 `.tipp-accent-black` 참고)\n */\nexport type CustomColor = 'black';\n\n/** color 지원 컴포넌트가 노출하는 통합 color 타입. */\nexport type UiColor = RadixColor | SemanticColor | CustomColor;\n\n/**\n * union 각 멤버에 분배되는 Omit.\n * Radix의 polymorphic 컴포넌트 props(Text/Heading/Link 등 `as`로 분기되는 union)에서\n * 키를 제거할 때 일반 Omit은 union을 단일 객체로 합쳐 `as` 분기를 무너뜨리므로 이 타입을 쓴다.\n */\nexport type DistributiveOmit<T, K extends PropertyKey> = T extends unknown\n ? Omit<T, K>\n : never;\n\nconst SEMANTIC_COLOR_MAP: Record<SemanticColor, RadixColor | undefined> = {\n error: 'red',\n neutral: 'gray',\n success: 'green',\n accent: undefined,\n};\n\ninterface CustomColorConfig {\n /**\n * accent override를 적용할 className.\n */\n className: string;\n /**\n * Radix에 넘길 fallback color.\n * Text/Heading/Link 등은 `color` prop이 있어야 `data-accent-color`가 붙어\n * `--accent-*`를 참조하므로, 유효한 Radix color를 함께 넘긴 뒤 className으로\n * `--accent-*`를 덮어쓴다. (Badge/Button은 prop 없이도 accent 기반이라 무해)\n */\n fallbackColor: RadixColor;\n}\n\nconst CUSTOM_COLOR_MAP: Record<CustomColor, CustomColorConfig> = {\n black: { className: 'tipp-accent-black', fallbackColor: 'gray' },\n};\n\nconst isSemanticColor = (color?: UiColor): color is SemanticColor =>\n color !== undefined && color in SEMANTIC_COLOR_MAP;\n\nconst isCustomColor = (color?: UiColor): color is CustomColor =>\n color !== undefined && color in CUSTOM_COLOR_MAP;\n\nexport interface ResolvedColor {\n /** Radix 컴포넌트의 `color` prop에 그대로 전달할 값. custom color면 undefined. */\n color?: RadixColor;\n /** accent override를 적용하기 위해 요소에 붙일 className. */\n className?: string;\n}\n\n/**\n * 통합 color 입력을 Radix color prop과 className으로 정규화한다.\n *\n * - custom color(black 등): Radix color는 비우고 accent override className을 반환\n * - semantic color(error/neutral/success/accent): 대응 Radix color로 변환\n * - Radix color: 그대로 pass-through\n */\nexport const resolveColor = (color?: UiColor): ResolvedColor => {\n if (isCustomColor(color)) {\n const { className, fallbackColor } = CUSTOM_COLOR_MAP[color];\n return { color: fallbackColor, className };\n }\n\n if (isSemanticColor(color)) {\n return { color: SEMANTIC_COLOR_MAP[color] };\n }\n\n return { color };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAkC;AAClC,kBAAqB;AACrB,mBAA2C;;;ACFpC,IAAM,oBAAoB,CAChC,SAC+B;AAC9B,QAAM,EAAC,OAAO,MAAK,IAAI;AACvB,MAAG,OAAO,UAAU,UAAS;AAC3B,WAAO,MAAM,KAAK;AAAA,EACpB;AAAC;AAED,MAAG,OAAO,UAAU,UAAS;AAC3B,UAAM,SAAyC,CAAC;AAChD,QAAI;AACJ,SAAI,OAAO,OAAM;AACf,aAAO,GAAG,IAAI,MAAM,MAAM,GAAG,CAAC;AAAA,IAChC;AACA,WAAO;AAAA,EACT;AACA,SAAO;AACT;;;ACUA,IAAM,qBAAoE;AAAA,EACxE,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AACV;AAgBA,IAAM,mBAA2D;AAAA,EAC/D,OAAO,EAAE,WAAW,qBAAqB,eAAe,OAAO;AACjE;AAEA,IAAM,kBAAkB,CAAC,UACvB,UAAU,UAAa,SAAS;AAElC,IAAM,gBAAgB,CAAC,UACrB,UAAU,UAAa,SAAS;AAgB3B,IAAM,eAAe,CAAC,UAAmC;AAC9D,MAAI,cAAc,KAAK,GAAG;AACxB,UAAM,EAAE,WAAW,cAAc,IAAI,iBAAiB,KAAK;AAC3D,WAAO,EAAE,OAAO,eAAe,UAAU;AAAA,EAC3C;AAEA,MAAI,gBAAgB,KAAK,GAAG;AAC1B,WAAO,EAAE,OAAO,mBAAmB,KAAK,EAAE;AAAA,EAC5C;AAEA,SAAO,EAAE,MAAM;AACjB;;;AFrCM;AA/BC,IAAM,WAAO;AAAA,EAClB,CAAC,OAAkB,QAAyB;AAC1C,UAA+D,YAAvD,QAAM,SAAS,UAAU,OAAO,UAnB5C,IAmBmE,IAAT,iBAAS,IAAT,CAA9C,QAAM,WAAS,YAAU,SAAO;AAExC,UAAM,EAAE,OAAO,YAAY,WAAW,eAAe,QAAI;AAAA,MACvD,MAAM,aAAa,KAAK;AAAA,MACxB,CAAC,KAAK;AAAA,IACR;AAEA,UAAM,gBAAY,sBAAgC,MAAM;AACtD,UAAI,SAAS,OAAW,QAAO;AAE/B,UAAI,YAAY,OAAW,QAAO;AAElC,aAAO,kBAAkB;AAAA,QACvB,OAAO;AAAA,QACP,OAAO,CAAC,iBAAmD;AACzD,kBAAQ,cAAc;AAAA,YACpB,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AACH,qBAAO;AAAA,YACT,KAAK;AAAA,YACL;AACE,qBAAO;AAAA,UACX;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH,GAAG,CAAC,MAAM,OAAO,CAAC;AAElB,WACE;AAAA,MAAC,cAAAA;AAAA,MAAA,iCACK,OADL;AAAA,QAEC,eAAW,kBAAK,gBAAgB,SAAS;AAAA,QACzC,OAAO;AAAA,QACP;AAAA,QACA,MAAM;AAAA,QAEL;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AAEA,KAAK,cAAc;","names":["RadixText"]}
@@ -1,9 +1,11 @@
1
1
  import { TextProps } from '@radix-ui/themes';
2
2
  import { Responsive } from '@radix-ui/themes/props';
3
3
  import React__default from 'react';
4
+ import { DistributiveOmit, UiColor } from '../utils/resolve-color.cjs';
4
5
 
5
- type TypoProps = TextProps & {
6
+ type TypoProps = DistributiveOmit<TextProps, 'color'> & {
6
7
  variant?: Responsive<'body' | 'caption' | 'subtitle'>;
8
+ color?: UiColor;
7
9
  };
8
10
  declare const Typo: React__default.ForwardRefExoticComponent<TypoProps & React__default.RefAttributes<HTMLSpanElement>>;
9
11
 
@@ -1,9 +1,11 @@
1
1
  import { TextProps } from '@radix-ui/themes';
2
2
  import { Responsive } from '@radix-ui/themes/props';
3
3
  import React__default from 'react';
4
+ import { DistributiveOmit, UiColor } from '../utils/resolve-color.js';
4
5
 
5
- type TypoProps = TextProps & {
6
+ type TypoProps = DistributiveOmit<TextProps, 'color'> & {
6
7
  variant?: Responsive<'body' | 'caption' | 'subtitle'>;
8
+ color?: UiColor;
7
9
  };
8
10
  declare const Typo: React__default.ForwardRefExoticComponent<TypoProps & React__default.RefAttributes<HTMLSpanElement>>;
9
11
 
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  Typo
3
- } from "../chunk-PMJIFLDT.js";
3
+ } from "../chunk-GR4PG6HY.js";
4
4
  import "../chunk-LDBWASUA.js";
5
+ import "../chunk-VFQD57ZY.js";
5
6
  import "../chunk-CRTRMMJ7.js";
6
7
  export {
7
8
  Typo
@@ -0,0 +1,42 @@
1
+ import {
2
+ ThemeAccentContext
3
+ } from "./chunk-WYWM2HSZ.js";
4
+ import {
5
+ resolveColor
6
+ } from "./chunk-VFQD57ZY.js";
7
+ import {
8
+ __objRest,
9
+ __spreadProps,
10
+ __spreadValues
11
+ } from "./chunk-CRTRMMJ7.js";
12
+
13
+ // src/atoms/hover-card.tsx
14
+ import { HoverCard as RadixHoverCard } from "@radix-ui/themes";
15
+ import { clsx } from "clsx";
16
+ import { forwardRef, useContext, useMemo } from "react";
17
+ import { jsx } from "react/jsx-runtime";
18
+ var Content = forwardRef((props, ref) => {
19
+ const _a = props, { className, color } = _a, rest = __objRest(_a, ["className", "color"]);
20
+ const themeAccent = useContext(ThemeAccentContext);
21
+ const { className: colorClassName } = useMemo(
22
+ () => resolveColor(color != null ? color : themeAccent),
23
+ [color, themeAccent]
24
+ );
25
+ return /* @__PURE__ */ jsx(
26
+ RadixHoverCard.Content,
27
+ __spreadProps(__spreadValues({
28
+ ref
29
+ }, rest), {
30
+ className: clsx(colorClassName, className)
31
+ })
32
+ );
33
+ });
34
+ Content.displayName = "HoverCard.Content";
35
+ var HoverCard = __spreadProps(__spreadValues({}, RadixHoverCard), {
36
+ Content
37
+ });
38
+
39
+ export {
40
+ HoverCard
41
+ };
42
+ //# sourceMappingURL=chunk-24PX34TH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/atoms/hover-card.tsx"],"sourcesContent":["import { HoverCard as RadixHoverCard } from '@radix-ui/themes';\nimport { clsx } from 'clsx';\nimport { forwardRef, useContext, useMemo } from 'react';\nimport { resolveColor, type UiColor } from '../utils/resolve-color';\nimport { ThemeAccentContext } from '../theme/theme-provider';\n\ntype ContentProps = RadixHoverCard.ContentProps & {\n /** Portal 내부에 적용할 color. 미지정 시 theme custom accent(black)를 상속한다. */\n color?: UiColor;\n};\n\nconst Content = forwardRef<HTMLDivElement, ContentProps>((props, ref) => {\n const { className, color, ...rest } = props;\n const themeAccent = useContext(ThemeAccentContext);\n\n // Content는 Portal(body)로 렌더돼 theme의 className override를 못 받으므로, per-instance color가\n // 없으면 theme custom accent(black)를 fallback으로 적용해 Portal 안에서도 black을 유지한다.\n const { className: colorClassName } = useMemo(\n () => resolveColor(color ?? themeAccent),\n [color, themeAccent]\n );\n\n return (\n <RadixHoverCard.Content\n ref={ref}\n {...rest}\n className={clsx(colorClassName, className)}\n />\n );\n});\n\nContent.displayName = 'HoverCard.Content';\n\nexport const HoverCard = {\n ...RadixHoverCard,\n Content,\n};\n"],"mappings":";;;;;;;;;;;;;AAAA,SAAS,aAAa,sBAAsB;AAC5C,SAAS,YAAY;AACrB,SAAS,YAAY,YAAY,eAAe;AAqB5C;AAZJ,IAAM,UAAU,WAAyC,CAAC,OAAO,QAAQ;AACvE,QAAsC,YAA9B,aAAW,MAZrB,IAYwC,IAAT,iBAAS,IAAT,CAArB,aAAW;AACnB,QAAM,cAAc,WAAW,kBAAkB;AAIjD,QAAM,EAAE,WAAW,eAAe,IAAI;AAAA,IACpC,MAAM,aAAa,wBAAS,WAAW;AAAA,IACvC,CAAC,OAAO,WAAW;AAAA,EACrB;AAEA,SACE;AAAA,IAAC,eAAe;AAAA,IAAf;AAAA,MACC;AAAA,OACI,OAFL;AAAA,MAGC,WAAW,KAAK,gBAAgB,SAAS;AAAA;AAAA,EAC3C;AAEJ,CAAC;AAED,QAAQ,cAAc;AAEf,IAAM,YAAY,iCACpB,iBADoB;AAAA,EAEvB;AACF;","names":[]}