@wishket/design-system 1.17.3 → 1.17.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (411) hide show
  1. package/README.md +1 -1
  2. package/dist/Components/Base/Layouts/FullBleed/FullBleed.js +1 -1
  3. package/dist/Components/Base/Layouts/FullBleed/FullBleed.utils.js +1 -1
  4. package/dist/Components/Base/TextWithIcons/TextWithIcons.d.ts +1 -1
  5. package/dist/Components/Base/TextWithIcons/TextWithIcons.js +2 -2
  6. package/dist/Components/Base/Typography/Typography.d.ts +1 -1
  7. package/dist/Components/Base/Typography/Typography.js +3 -3
  8. package/dist/Components/Base/Typography/Typography.types.d.ts +13 -12
  9. package/dist/Components/DataDisplays/Accordion/Accordion.js +8 -8
  10. package/dist/Components/DataDisplays/Avatar/Avatar.d.ts +2 -1
  11. package/dist/Components/DataDisplays/Avatar/Avatar.js +5 -4
  12. package/dist/Components/DataDisplays/Divider/Divider.d.ts +3 -20
  13. package/dist/Components/DataDisplays/Divider/Divider.js +10 -6
  14. package/dist/Components/DataDisplays/Label/Label.js +1 -1
  15. package/dist/Components/DataDisplays/Li/Li.d.ts +5 -68
  16. package/dist/Components/DataDisplays/Li/Li.js +7 -7
  17. package/dist/Components/DataDisplays/ProductIcon/Icons/Achieve.d.ts +1 -1
  18. package/dist/Components/DataDisplays/ProductIcon/Icons/Bookmark.d.ts +1 -1
  19. package/dist/Components/DataDisplays/ProductIcon/Icons/BubbleStar.d.ts +1 -1
  20. package/dist/Components/DataDisplays/ProductIcon/Icons/BubbleStars.d.ts +1 -1
  21. package/dist/Components/DataDisplays/ProductIcon/Icons/Building.d.ts +1 -1
  22. package/dist/Components/DataDisplays/ProductIcon/Icons/Calendar.d.ts +1 -1
  23. package/dist/Components/DataDisplays/ProductIcon/Icons/CardConfirm.d.ts +1 -1
  24. package/dist/Components/DataDisplays/ProductIcon/Icons/CardWrite.d.ts +1 -1
  25. package/dist/Components/DataDisplays/ProductIcon/Icons/Congrats.d.ts +1 -1
  26. package/dist/Components/DataDisplays/ProductIcon/Icons/ContractPen.d.ts +1 -1
  27. package/dist/Components/DataDisplays/ProductIcon/Icons/Credit.d.ts +1 -1
  28. package/dist/Components/DataDisplays/ProductIcon/Icons/Database.d.ts +1 -1
  29. package/dist/Components/DataDisplays/ProductIcon/Icons/Design.d.ts +1 -1
  30. package/dist/Components/DataDisplays/ProductIcon/Icons/Discount.d.ts +1 -1
  31. package/dist/Components/DataDisplays/ProductIcon/Icons/DocumentCloud.d.ts +1 -1
  32. package/dist/Components/DataDisplays/ProductIcon/Icons/DocumentSuccess.d.ts +1 -1
  33. package/dist/Components/DataDisplays/ProductIcon/Icons/Email.d.ts +1 -1
  34. package/dist/Components/DataDisplays/ProductIcon/Icons/HandShake.d.ts +1 -1
  35. package/dist/Components/DataDisplays/ProductIcon/Icons/HandThumb.d.ts +1 -1
  36. package/dist/Components/DataDisplays/ProductIcon/Icons/Idea.d.ts +1 -1
  37. package/dist/Components/DataDisplays/ProductIcon/Icons/Lock.d.ts +1 -1
  38. package/dist/Components/DataDisplays/ProductIcon/Icons/Logout.d.ts +1 -1
  39. package/dist/Components/DataDisplays/ProductIcon/Icons/MemoWrite.d.ts +1 -1
  40. package/dist/Components/DataDisplays/ProductIcon/Icons/MobileConfirm.d.ts +1 -1
  41. package/dist/Components/DataDisplays/ProductIcon/Icons/Package.d.ts +1 -1
  42. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperCertify.d.ts +1 -1
  43. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperClip.d.ts +1 -1
  44. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperClipClock.d.ts +1 -1
  45. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperClock.d.ts +1 -1
  46. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperConfirm.d.ts +1 -1
  47. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperContract.d.ts +1 -1
  48. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperHold.d.ts +1 -1
  49. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperOverlap.d.ts +1 -1
  50. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperPen.d.ts +1 -1
  51. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperProject.d.ts +1 -1
  52. package/dist/Components/DataDisplays/ProductIcon/Icons/PaperSecurity.d.ts +1 -1
  53. package/dist/Components/DataDisplays/ProductIcon/Icons/PersonFreelancer.d.ts +1 -1
  54. package/dist/Components/DataDisplays/ProductIcon/Icons/PersonOffice.d.ts +1 -1
  55. package/dist/Components/DataDisplays/ProductIcon/Icons/PersonSmile.d.ts +1 -1
  56. package/dist/Components/DataDisplays/ProductIcon/Icons/Public.d.ts +1 -1
  57. package/dist/Components/DataDisplays/ProductIcon/Icons/Receipt.d.ts +1 -1
  58. package/dist/Components/DataDisplays/ProductIcon/Icons/Repair.d.ts +1 -1
  59. package/dist/Components/DataDisplays/ProductIcon/Icons/Search.d.ts +1 -1
  60. package/dist/Components/DataDisplays/ProductIcon/Icons/SearchConfirm.d.ts +1 -1
  61. package/dist/Components/DataDisplays/ProductIcon/Icons/ShieldConfirm.d.ts +1 -1
  62. package/dist/Components/DataDisplays/ProductIcon/Icons/ShieldWon.d.ts +1 -1
  63. package/dist/Components/DataDisplays/ProductIcon/Icons/Shopping.d.ts +1 -1
  64. package/dist/Components/DataDisplays/ProductIcon/Icons/WebDevelopment.d.ts +1 -1
  65. package/dist/Components/DataDisplays/ProductIcon/Icons/WebDomain.d.ts +1 -1
  66. package/dist/Components/DataDisplays/ProductIcon/Icons/WebPayment.d.ts +1 -1
  67. package/dist/Components/DataDisplays/ProductIcon/Icons/WebSecurity.d.ts +1 -1
  68. package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperConfirm.d.ts +1 -1
  69. package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperPayment.d.ts +1 -1
  70. package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperPlan.d.ts +1 -1
  71. package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperStructure.d.ts +1 -1
  72. package/dist/Components/DataDisplays/ProductIcon/Icons/Won.d.ts +1 -1
  73. package/dist/Components/DataDisplays/ProductIcon/ProductIcon.constants.d.ts +9 -5
  74. package/dist/Components/DataDisplays/ProductIcon/ProductIcon.js +5 -8
  75. package/dist/Components/DataDisplays/ProductIcon/ProductIcon.part.types.d.ts +5 -0
  76. package/dist/Components/DataDisplays/ProductIcon/ProductIcon.types.d.ts +4 -11
  77. package/dist/Components/DataDisplays/SkillLabel/SkillLabel.parts.js +1 -1
  78. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeAccountSetting.d.ts +1 -1
  79. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeAnswer.d.ts +1 -1
  80. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowDown.d.ts +1 -1
  81. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowLeft.d.ts +1 -1
  82. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowRight.d.ts +1 -1
  83. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowUp.d.ts +1 -1
  84. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeBell.d.ts +1 -1
  85. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeBubble.d.ts +1 -1
  86. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeCollection.d.ts +1 -1
  87. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeCollectionAdd.d.ts +1 -1
  88. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeDelete.d.ts +1 -1
  89. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeDrawer.d.ts +1 -1
  90. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeFilter.d.ts +1 -1
  91. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeHeart.d.ts +1 -1
  92. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeHome.d.ts +1 -1
  93. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeLike.d.ts +1 -1
  94. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeLink.d.ts +1 -1
  95. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargePlus.d.ts +1 -1
  96. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeQuestion.d.ts +1 -1
  97. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeReset.d.ts +1 -1
  98. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeScrap.d.ts +1 -1
  99. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeSearch.d.ts +1 -1
  100. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeSend.d.ts +1 -1
  101. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeService.d.ts +1 -1
  102. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeShare.d.ts +1 -1
  103. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeStar.d.ts +1 -1
  104. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeTop.d.ts +1 -1
  105. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeUserImageAvatar.d.ts +1 -2
  106. package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeUserImageAvatar.js +4 -4
  107. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumAi.d.ts +1 -1
  108. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumAnswer.d.ts +1 -1
  109. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowDown.d.ts +1 -1
  110. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowLeft.d.ts +1 -1
  111. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowRight.d.ts +1 -1
  112. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowUp.d.ts +1 -1
  113. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumBell.d.ts +1 -1
  114. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumBubble.d.ts +1 -1
  115. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCalendar.d.ts +1 -1
  116. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCaution.d.ts +1 -1
  117. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCautionTriangle.d.ts +1 -1
  118. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCheck.d.ts +1 -1
  119. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumClip.d.ts +1 -1
  120. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCollection.d.ts +1 -1
  121. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCompass.d.ts +1 -1
  122. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumDelete.d.ts +1 -1
  123. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumEdit.d.ts +1 -1
  124. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumError.d.ts +1 -1
  125. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumEye.d.ts +1 -1
  126. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumEyeSlash.d.ts +1 -1
  127. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumFilter.d.ts +1 -1
  128. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumFire.d.ts +1 -1
  129. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumGlassesMinus.d.ts +1 -1
  130. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumGlassesPlus.d.ts +1 -1
  131. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumHashTag.d.ts +1 -1
  132. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumHeart.d.ts +1 -1
  133. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumHighlight.d.ts +1 -1
  134. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumInformation.d.ts +1 -1
  135. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumLink.d.ts +1 -1
  136. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumList.d.ts +1 -1
  137. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMagic.d.ts +1 -1
  138. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMenuDown.d.ts +1 -1
  139. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMenuUp.d.ts +1 -1
  140. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMinus.d.ts +1 -1
  141. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMoreOptions.d.ts +1 -1
  142. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPersonAdd.d.ts +1 -1
  143. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPin.d.ts +1 -1
  144. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPlus.d.ts +1 -1
  145. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPopular.d.ts +1 -1
  146. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPrivate.d.ts +1 -1
  147. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPublic.d.ts +1 -1
  148. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumQuestion.d.ts +1 -1
  149. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumQuestionNew.d.ts +1 -1
  150. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumRename.d.ts +1 -1
  151. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumReply.d.ts +1 -1
  152. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumReset.d.ts +1 -1
  153. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumScrap.d.ts +1 -1
  154. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumSearch.d.ts +1 -1
  155. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumSend.d.ts +1 -1
  156. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumShare.d.ts +1 -1
  157. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumStar.d.ts +1 -1
  158. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumSuccess.d.ts +1 -1
  159. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumTrash.d.ts +1 -1
  160. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumUpload.d.ts +1 -1
  161. package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumWait.d.ts +1 -1
  162. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowDown.d.ts +1 -1
  163. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowLeft.d.ts +1 -1
  164. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowRight.d.ts +1 -1
  165. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowUp.d.ts +1 -1
  166. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallBell.d.ts +1 -1
  167. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCamera.d.ts +1 -1
  168. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCat.d.ts +1 -1
  169. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCheck.d.ts +1 -1
  170. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCollection.d.ts +1 -1
  171. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallDelete.d.ts +1 -1
  172. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallEdit.d.ts +1 -1
  173. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallEye.d.ts +1 -1
  174. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallHeart.d.ts +1 -1
  175. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallIndeterminate.d.ts +1 -1
  176. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallInformation.d.ts +1 -1
  177. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallLike.d.ts +1 -1
  178. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallLink.d.ts +1 -1
  179. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallList.d.ts +1 -1
  180. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallMoreOptions.d.ts +1 -1
  181. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPlay.d.ts +1 -1
  182. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPlus.d.ts +1 -1
  183. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPrivate.d.ts +1 -1
  184. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPublic.d.ts +1 -1
  185. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallRadioDot.d.ts +1 -1
  186. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallResizer.d.ts +1 -1
  187. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallScrap.d.ts +1 -1
  188. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallShare.d.ts +1 -1
  189. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallSlash.d.ts +1 -1
  190. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallStar.d.ts +1 -1
  191. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallStop.d.ts +1 -1
  192. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallTrash.d.ts +1 -1
  193. package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallWait.d.ts +1 -1
  194. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialFacebook.d.ts +1 -1
  195. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialGoogle.d.ts +1 -1
  196. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialLinkedIn.d.ts +1 -1
  197. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialNaver.d.ts +1 -1
  198. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialX.d.ts +1 -1
  199. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/WishketBlog.d.ts +1 -1
  200. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/WishketFacebook.d.ts +1 -1
  201. package/dist/Components/DataDisplays/SystemIcon/Icons/Social/WishketNaverBlog.d.ts +1 -1
  202. package/dist/Components/DataDisplays/SystemIcon/SystemIcon.constants.d.ts +6 -1
  203. package/dist/Components/DataDisplays/SystemIcon/SystemIcon.part.types.d.ts +6 -0
  204. package/dist/Components/DataDisplays/SystemIcon/SystemIcon.types.d.ts +4 -12
  205. package/dist/Components/Feedbacks/DialogBox/DialogBox.js +2 -2
  206. package/dist/Components/Feedbacks/GlobalLoadingIndicator/GlobalLoadingIndicator.d.ts +18 -10
  207. package/dist/Components/Feedbacks/GlobalLoadingIndicator/GlobalLoadingIndicator.js +16 -7
  208. package/dist/Components/Feedbacks/LoadingIndicator/LoadingIndicator.d.ts +2 -21
  209. package/dist/Components/Feedbacks/LoadingIndicator/LoadingIndicator.js +9 -6
  210. package/dist/Components/Feedbacks/LoadingIndicator/LoadingIndicator.types.d.ts +2 -0
  211. package/dist/Components/Feedbacks/MessageBar/MessageBar.js +5 -5
  212. package/dist/Components/Feedbacks/MessageBox/MessageBox.js +6 -6
  213. package/dist/Components/Feedbacks/MessageBox/MessageBox.parts.js +3 -3
  214. package/dist/Components/Feedbacks/SnackBar/SnackBar.d.ts +1 -1
  215. package/dist/Components/Feedbacks/SnackBar/SnackBar.js +5 -11
  216. package/dist/Components/Feedbacks/SnackBar/SnackBar.types.d.ts +1 -0
  217. package/dist/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.d.ts +30 -0
  218. package/dist/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.js +31 -0
  219. package/dist/Components/Feedbacks/{PlainTooltip → Tooltip/PlainTooltip}/PlainTooltip.parts.d.ts +1 -1
  220. package/dist/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.parts.js +1 -0
  221. package/dist/Components/Feedbacks/Tooltip/PlainTooltip/index.d.ts +1 -0
  222. package/dist/Components/Feedbacks/Tooltip/RichTooltip/RichTooltip.d.ts +33 -0
  223. package/dist/Components/Feedbacks/Tooltip/RichTooltip/RichTooltip.js +32 -0
  224. package/dist/Components/Feedbacks/Tooltip/RichTooltip/index.d.ts +1 -0
  225. package/dist/Components/Feedbacks/Tooltip/Tooltip.d.ts +24 -0
  226. package/dist/Components/Feedbacks/Tooltip/Tooltip.js +25 -0
  227. package/dist/Components/Feedbacks/Tooltip/Tooltip.types.d.ts +19 -0
  228. package/dist/Components/Feedbacks/Tooltip/index.d.ts +4 -0
  229. package/dist/Components/Feedbacks/index.d.ts +1 -2
  230. package/dist/Components/Inputs/AutoCompleteList/AutoCompleteList.js +4 -4
  231. package/dist/Components/Inputs/AutoCompleteList/AutoCompleteList.parts.js +4 -4
  232. package/dist/Components/Inputs/Button/Button.d.ts +7 -13
  233. package/dist/Components/Inputs/Button/Button.js +2 -51
  234. package/dist/Components/Inputs/Button/Button.types.d.ts +3 -10
  235. package/dist/Components/Inputs/Calendar/Calendar.js +8 -8
  236. package/dist/Components/Inputs/Calendar/Calendar.parts.js +7 -7
  237. package/dist/Components/Inputs/Checkbox/Checkbox.types.d.ts +1 -1
  238. package/dist/Components/Inputs/CheckboxCard/CheckboxCard.js +1 -1
  239. package/dist/Components/Inputs/CheckboxCard/CheckboxCard.parts.js +3 -3
  240. package/dist/Components/Inputs/CheckboxCard/CheckboxCard.types.d.ts +1 -1
  241. package/dist/Components/Inputs/CheckboxListItem/CheckboxListItem.d.ts +1 -1
  242. package/dist/Components/Inputs/CheckboxListItem/CheckboxListItem.js +3 -3
  243. package/dist/Components/Inputs/ChoiceChip/ChoiceChip.js +6 -6
  244. package/dist/Components/Inputs/CommentArea/CommentArea.js +9 -9
  245. package/dist/Components/Inputs/FileUploader/FileUploader.d.ts +45 -0
  246. package/dist/Components/Inputs/FileUploader/FileUploader.hooks.d.ts +20 -0
  247. package/dist/Components/Inputs/FileUploader/FileUploader.hooks.js +1 -0
  248. package/dist/Components/Inputs/FileUploader/FileUploader.js +48 -0
  249. package/dist/Components/Inputs/FileUploader/FileUploader.parts.d.ts +10 -0
  250. package/dist/Components/Inputs/FileUploader/FileUploader.parts.js +11 -0
  251. package/dist/Components/Inputs/FileUploader/FileUploader.types.d.ts +19 -0
  252. package/dist/Components/Inputs/FileUploader/FileUploader.utils.d.ts +4 -0
  253. package/dist/Components/Inputs/FileUploader/FileUploader.utils.js +1 -0
  254. package/dist/Components/Inputs/FileUploader/index.d.ts +2 -0
  255. package/dist/Components/Inputs/FilterChip/FilterChip.js +5 -5
  256. package/dist/Components/Inputs/FilterList/FilterList.js +16 -14
  257. package/dist/Components/Inputs/IconButton/IconButton.d.ts +6 -4
  258. package/dist/Components/Inputs/IconButton/IconButton.js +7 -8
  259. package/dist/Components/Inputs/IconButtonDropdown/IconButtonDropdown.js +4 -4
  260. package/dist/Components/Inputs/Input/Input.js +1 -1
  261. package/dist/Components/Inputs/Input/LabelInput.js +3 -3
  262. package/dist/Components/Inputs/Input/PasswordInput.js +4 -4
  263. package/dist/Components/Inputs/InputChip/InputChip.js +3 -3
  264. package/dist/Components/Inputs/List/List.js +4 -4
  265. package/dist/Components/Inputs/MultiColumnList/MultiColumnList.parts.js +2 -2
  266. package/dist/Components/Inputs/RadioCard/RadioCard.js +1 -1
  267. package/dist/Components/Inputs/RadioCard/RadioCard.parts.js +4 -4
  268. package/dist/Components/Inputs/RadioList/RadioList.js +2 -2
  269. package/dist/Components/Inputs/RadioList/parts/index.d.ts +0 -1
  270. package/dist/Components/Inputs/RadioListItem/RadioListItem.d.ts +10 -0
  271. package/dist/Components/Inputs/RadioListItem/RadioListItem.js +5 -0
  272. package/dist/Components/Inputs/RadioListItem/index.d.ts +1 -0
  273. package/dist/Components/Inputs/RangeSlider/RangeSlider.js +2 -2
  274. package/dist/Components/Inputs/SearchField/SearchField.js +3 -3
  275. package/dist/Components/Inputs/SegmentedControl/SegmentedControl.js +1 -1
  276. package/dist/Components/Inputs/SupportTextContainer/SupportTextContainer.d.ts +3 -2
  277. package/dist/Components/Inputs/SupportTextContainer/SupportTextContainer.js +3 -3
  278. package/dist/Components/Inputs/TextButton/TextButton.d.ts +5 -2
  279. package/dist/Components/Inputs/TextButton/TextButton.js +7 -4
  280. package/dist/Components/Inputs/TextButton/TextButton.types.d.ts +2 -0
  281. package/dist/Components/Inputs/TextButtonDropdown/TextButtonDropdown.js +4 -4
  282. package/dist/Components/Inputs/TextButtonDropdown/TextButtonDropdown.parts.js +4 -4
  283. package/dist/Components/Inputs/TextField/TextField.d.ts +5 -8
  284. package/dist/Components/Inputs/TextField/TextField.js +6 -8
  285. package/dist/Components/Inputs/TextFieldContainer/TextFieldContainer.js +1 -1
  286. package/dist/Components/Inputs/TextFieldDropdown/TextFieldDropdown.js +3 -3
  287. package/dist/Components/Inputs/TextFieldDropdown/TextFieldDropdown.parts.js +3 -3
  288. package/dist/Components/Inputs/Textarea/Textarea.js +5 -5
  289. package/dist/Components/Inputs/index.d.ts +2 -0
  290. package/dist/Components/Layouts/Card/Card.d.ts +42 -0
  291. package/dist/Components/Layouts/Card/index.d.ts +1 -0
  292. package/dist/Components/Layouts/Fieldset/Fieldset.d.ts +38 -0
  293. package/dist/Components/Layouts/Fieldset/index.d.ts +1 -0
  294. package/dist/Components/Layouts/index.d.ts +2 -0
  295. package/dist/Components/Navigations/BoxTab/BoxTab.parts.js +1 -1
  296. package/dist/Components/Navigations/Drawer/Drawer.d.ts +2 -7
  297. package/dist/Components/Navigations/Drawer/Drawer.styles.d.ts +1 -1
  298. package/dist/Components/Navigations/Drawer/Drawer.types.d.ts +7 -0
  299. package/dist/Components/Navigations/GNBList/GNBList.d.ts +30 -30
  300. package/dist/Components/Navigations/GNBList/GNBList.js +27 -27
  301. package/dist/Components/Navigations/GNBList/GNBList.parts.d.ts +114 -20
  302. package/dist/Components/Navigations/GNBList/GNBList.parts.js +64 -16
  303. package/dist/Components/Navigations/GNBList/GNBList.types.d.ts +4 -4
  304. package/dist/Components/Navigations/Menu/Menu.js +3 -3
  305. package/dist/Components/Navigations/Pagination/Pagination.parts.js +2 -2
  306. package/dist/Components/Navigations/TableOfContents/TableOfContents.js +1 -1
  307. package/dist/Components/Navigations/TextTab/TextTab.parts.js +4 -4
  308. package/dist/Components/Wrappers/WithBadge/WithBadge.js +2 -2
  309. package/dist/Components/Wrappers/WithSnackBar/WithSnackBar.js +3 -3
  310. package/dist/Components/Wrappers/index.d.ts +0 -1
  311. package/dist/cjs/Components/Base/Layouts/FullBleed/FullBleed.js +1 -1
  312. package/dist/cjs/Components/Base/Layouts/FullBleed/FullBleed.utils.js +1 -1
  313. package/dist/cjs/Components/Base/TextWithIcons/TextWithIcons.js +2 -2
  314. package/dist/cjs/Components/Base/Typography/Typography.js +3 -3
  315. package/dist/cjs/Components/DataDisplays/Accordion/Accordion.js +8 -8
  316. package/dist/cjs/Components/DataDisplays/Avatar/Avatar.js +5 -4
  317. package/dist/cjs/Components/DataDisplays/Divider/Divider.js +24 -1
  318. package/dist/cjs/Components/DataDisplays/Label/Label.js +1 -1
  319. package/dist/cjs/Components/DataDisplays/Li/Li.js +7 -8
  320. package/dist/cjs/Components/DataDisplays/ProductIcon/ProductIcon.js +2 -8
  321. package/dist/cjs/Components/DataDisplays/SkillLabel/SkillLabel.parts.js +1 -1
  322. package/dist/cjs/Components/DataDisplays/SystemIcon/Icons/Large/LargeUserImageAvatar.js +4 -4
  323. package/dist/cjs/Components/Feedbacks/DialogBox/DialogBox.js +2 -2
  324. package/dist/cjs/Components/Feedbacks/LoadingIndicator/LoadingIndicator.js +28 -5
  325. package/dist/cjs/Components/Feedbacks/MessageBar/MessageBar.js +3 -3
  326. package/dist/cjs/Components/Feedbacks/MessageBox/MessageBox.js +5 -5
  327. package/dist/cjs/Components/Feedbacks/MessageBox/MessageBox.parts.js +3 -3
  328. package/dist/cjs/Components/Feedbacks/SnackBar/SnackBar.js +6 -11
  329. package/dist/cjs/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.js +31 -0
  330. package/dist/cjs/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.parts.js +1 -0
  331. package/dist/cjs/Components/Feedbacks/Tooltip/RichTooltip/RichTooltip.js +32 -0
  332. package/dist/cjs/Components/Feedbacks/Tooltip/Tooltip.js +26 -0
  333. package/dist/cjs/Components/Inputs/AutoCompleteList/AutoCompleteList.js +4 -4
  334. package/dist/cjs/Components/Inputs/AutoCompleteList/AutoCompleteList.parts.js +4 -4
  335. package/dist/cjs/Components/Inputs/Button/Button.js +2 -51
  336. package/dist/cjs/Components/Inputs/Calendar/Calendar.js +6 -6
  337. package/dist/cjs/Components/Inputs/Calendar/Calendar.parts.js +7 -7
  338. package/dist/cjs/Components/Inputs/CheckboxCard/CheckboxCard.js +1 -1
  339. package/dist/cjs/Components/Inputs/CheckboxCard/CheckboxCard.parts.js +2 -2
  340. package/dist/cjs/Components/Inputs/CheckboxListItem/CheckboxListItem.js +3 -3
  341. package/dist/cjs/Components/Inputs/ChoiceChip/ChoiceChip.js +5 -5
  342. package/dist/cjs/Components/Inputs/CommentArea/CommentArea.js +9 -9
  343. package/dist/cjs/Components/Inputs/FileUploader/FileUploader.hooks.js +1 -0
  344. package/dist/cjs/Components/Inputs/FileUploader/FileUploader.js +6 -0
  345. package/dist/cjs/Components/Inputs/FileUploader/FileUploader.parts.js +11 -0
  346. package/dist/cjs/Components/Inputs/FileUploader/FileUploader.utils.js +1 -0
  347. package/dist/cjs/Components/Inputs/FilterChip/FilterChip.js +4 -4
  348. package/dist/cjs/Components/Inputs/FilterList/FilterList.js +15 -13
  349. package/dist/cjs/Components/Inputs/IconButton/IconButton.js +6 -7
  350. package/dist/cjs/Components/Inputs/IconButtonDropdown/IconButtonDropdown.js +3 -3
  351. package/dist/cjs/Components/Inputs/Input/Input.js +1 -1
  352. package/dist/cjs/Components/Inputs/Input/LabelInput.js +3 -3
  353. package/dist/cjs/Components/Inputs/Input/PasswordInput.js +4 -4
  354. package/dist/cjs/Components/Inputs/InputChip/InputChip.js +2 -2
  355. package/dist/cjs/Components/Inputs/List/List.js +4 -4
  356. package/dist/cjs/Components/Inputs/MultiColumnList/MultiColumnList.parts.js +2 -2
  357. package/dist/cjs/Components/Inputs/RadioCard/RadioCard.js +1 -1
  358. package/dist/cjs/Components/Inputs/RadioCard/RadioCard.parts.js +4 -4
  359. package/dist/cjs/Components/Inputs/RadioList/RadioList.js +1 -1
  360. package/dist/cjs/Components/Inputs/RadioListItem/RadioListItem.js +5 -0
  361. package/dist/cjs/Components/Inputs/RangeSlider/RangeSlider.js +5 -5
  362. package/dist/cjs/Components/Inputs/SearchField/SearchField.js +5 -5
  363. package/dist/cjs/Components/Inputs/SegmentedControl/SegmentedControl.js +1 -1
  364. package/dist/cjs/Components/Inputs/SupportTextContainer/SupportTextContainer.js +3 -3
  365. package/dist/cjs/Components/Inputs/TextButton/TextButton.js +6 -3
  366. package/dist/cjs/Components/Inputs/TextButtonDropdown/TextButtonDropdown.js +1 -1
  367. package/dist/cjs/Components/Inputs/TextButtonDropdown/TextButtonDropdown.parts.js +4 -4
  368. package/dist/cjs/Components/Inputs/TextField/TextField.js +6 -8
  369. package/dist/cjs/Components/Inputs/TextFieldContainer/TextFieldContainer.js +1 -1
  370. package/dist/cjs/Components/Inputs/TextFieldDropdown/TextFieldDropdown.js +3 -3
  371. package/dist/cjs/Components/Inputs/TextFieldDropdown/TextFieldDropdown.parts.js +2 -2
  372. package/dist/cjs/Components/Inputs/Textarea/Textarea.js +4 -4
  373. package/dist/cjs/Components/Navigations/BoxTab/BoxTab.parts.js +1 -1
  374. package/dist/cjs/Components/Navigations/GNBList/GNBList.js +27 -27
  375. package/dist/cjs/Components/Navigations/GNBList/GNBList.parts.js +40 -16
  376. package/dist/cjs/Components/Navigations/Menu/Menu.js +2 -2
  377. package/dist/cjs/Components/Navigations/Pagination/Pagination.parts.js +2 -2
  378. package/dist/cjs/Components/Navigations/TableOfContents/TableOfContents.js +1 -1
  379. package/dist/cjs/Components/Navigations/TextTab/TextTab.parts.js +5 -5
  380. package/dist/cjs/Components/Wrappers/WithBadge/WithBadge.js +1 -1
  381. package/dist/cjs/Components/Wrappers/WithSnackBar/WithSnackBar.js +2 -2
  382. package/dist/cjs/constants/colors/colors.js +1 -1
  383. package/dist/cjs/index.js +1 -1
  384. package/dist/config/config.css +215 -0
  385. package/dist/config/tailwind.config.js +1 -64
  386. package/dist/config/tailwindcss-grid-areas.js +155 -0
  387. package/dist/constants/colors/colors.js +1 -1
  388. package/dist/index.js +1 -1
  389. package/package.json +21 -5
  390. package/dist/Components/Feedbacks/PlainTooltip/PlainTooltip.d.ts +0 -44
  391. package/dist/Components/Feedbacks/PlainTooltip/PlainTooltip.js +0 -37
  392. package/dist/Components/Feedbacks/PlainTooltip/PlainTooltip.parts.js +0 -1
  393. package/dist/Components/Feedbacks/PlainTooltip/index.d.ts +0 -2
  394. package/dist/Components/Feedbacks/RichTooltip/RichTooltip.d.ts +0 -34
  395. package/dist/Components/Feedbacks/RichTooltip/RichTooltip.js +0 -27
  396. package/dist/Components/Feedbacks/RichTooltip/index.d.ts +0 -2
  397. package/dist/Components/Inputs/Button/Button.parts.d.ts +0 -2
  398. package/dist/Components/Inputs/Button/Button.parts.js +0 -2
  399. package/dist/Components/Inputs/RadioList/parts/RadioListItem.d.ts +0 -10
  400. package/dist/Components/Inputs/RadioList/parts/RadioListItem.js +0 -4
  401. package/dist/Components/Wrappers/WithRichTooltip/WithRichTooltip.d.ts +0 -39
  402. package/dist/Components/Wrappers/WithRichTooltip/WithRichTooltip.js +0 -32
  403. package/dist/Components/Wrappers/WithRichTooltip/index.d.ts +0 -1
  404. package/dist/cjs/Components/Feedbacks/PlainTooltip/PlainTooltip.js +0 -37
  405. package/dist/cjs/Components/Feedbacks/PlainTooltip/PlainTooltip.parts.js +0 -1
  406. package/dist/cjs/Components/Feedbacks/RichTooltip/RichTooltip.js +0 -1
  407. package/dist/cjs/Components/Inputs/Button/Button.parts.js +0 -2
  408. package/dist/cjs/Components/Inputs/RadioList/parts/RadioListItem.js +0 -4
  409. package/dist/cjs/Components/Wrappers/WithRichTooltip/WithRichTooltip.js +0 -3
  410. package/dist/config/tailwind-plugins.js +0 -90
  411. package/dist/types.d.ts +0 -32
@@ -2,40 +2,134 @@ import { PropsWithChildren } from 'react';
2
2
  import { GNBListRootProps, GNBListItemProps, UserInfoProps } from './GNBList.types';
3
3
  /**
4
4
  * GNB 리스트의 루트 컴포넌트
5
+ *
6
+ * @description
7
+ * GNB 리스트의 컨테이너 역할을 합니다.
8
+ * - withUserInfo prop에 따라 스타일 자동 조정
9
+ *
5
10
  * @param {Object} props
6
- * @param {'main'|'sub'|'user'} [props.type] - 리스트 타입 (main, sub, user)
7
- * @param {string} [props.className] - 추가적인 CSS 클래스
8
- * @param {ReactNode} props.children - 리스트 아이템들
11
+ * @param {boolean} [props.withUserInfo=false] - 사용자 정보 포함 여부
12
+ * @param {string} [props.className] - 추가 CSS 클래스
13
+ * @param {ReactNode} props.children - 메뉴 구성 요소 (UserInfo, List, SubList)
14
+ *
15
+ * @example
16
+ * // 기본 메뉴 리스트
17
+ * <Root>
18
+ * <List>
19
+ * <Item href="/projects">프로젝트</Item>
20
+ * <Item href="/settings">설정</Item>
21
+ * </List>
22
+ * </Root>
23
+ *
24
+ * @example
25
+ * // 사용자 정보 포함 메뉴
26
+ * <Root withUserInfo>
27
+ * <UserInfo username="홍길동" email="hong@example.com" />
28
+ * <List>
29
+ * <Item href="/account">계정 설정</Item>
30
+ * </List>
31
+ * <SubList>
32
+ * <Item href="/logout">로그아웃</Item>
33
+ * </SubList>
34
+ * </Root>
9
35
  */
10
- declare const Root: ({ type, children, className }: GNBListRootProps) => import("react/jsx-runtime").JSX.Element;
36
+ declare const Root: ({ withUserInfo, children, className, }: GNBListRootProps) => import("react/jsx-runtime").JSX.Element;
11
37
  /**
12
- * GNB 리스트의 기본 리스트 컴포넌트
38
+ * 사용자 정보 컴포넌트
39
+ *
40
+ * @description
41
+ * 사용자의 프로필 이미지, 이름, 이메일을 표시합니다.
42
+ *
13
43
  * @param {Object} props
14
- * @param {ReactNode} props.children - 리스트 아이템들
15
- * @param {string} [props.className] - 추가적인 CSS 클래스
44
+ * @param {string} [props.imgUrl] - 프로필 이미지 URL
45
+ * @param {string} [props.username] - 사용자 이름
46
+ * @param {string} [props.email] - 사용자 이메일
47
+ * @param {() => void} [props.onClick] - 프로필 이미지 클릭 핸들러
48
+ * @param {ReactNode} [props.children] - 액션 버튼 (예: 프로필 수정, 내 프로젝트)
49
+ *
50
+ * @example
51
+ * <UserInfo
52
+ * username="홍길동"
53
+ * email="hong@example.com"
54
+ * imgUrl="/profile.jpg"
55
+ * onClick={() => handleProfileEdit()}
56
+ * >
57
+ * <Button size="sm">프로필 수정</Button>
58
+ * <Button size="sm" variant="outlined">내 프로젝트</Button>
59
+ * </UserInfo>
16
60
  */
17
- declare const UserInfo: ({ imgUrl, userId, email, children, onClick, }: UserInfoProps) => import("react/jsx-runtime").JSX.Element;
61
+ declare const UserInfo: ({ imgUrl, username, email, children, onClick, }: UserInfoProps) => import("react/jsx-runtime").JSX.Element;
18
62
  /**
19
- * GNB 리스트의 기본 리스트 컴포넌트
63
+ * 메인 메뉴 리스트 컴포넌트
64
+ *
65
+ * @description
66
+ * 주요 메뉴 아이템들을 담는 컨테이너입니다.
67
+ * - 텍스트 색상 gray-900 (주요 메뉴)
68
+ *
20
69
  * @param {Object} props
21
- * @param {ReactNode} props.children - 리스트 아이템들
22
- * @param {string} [props.className] - 추가적인 CSS 클래스
70
+ * @param {ReactNode} props.children - 메뉴 아이템들 (Item 컴포넌트)
71
+ *
72
+ * @example
73
+ * <List>
74
+ * <Item href="/projects">프로젝트</Item>
75
+ * <Item href="/request">의뢰하기</Item>
76
+ * <Item href="/support" hasNew>고객센터</Item>
77
+ * </List>
23
78
  */
24
79
  declare const List: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
25
80
  /**
26
- * GNB 리스트의 서브 리스트 컴포넌트
81
+ * 서브 메뉴 리스트 컴포넌트
82
+ *
83
+ * @description
84
+ * 부가적인 메뉴 아이템들을 담는 컨테이너입니다.
85
+ * - 텍스트 색상 gray-600 (보조 메뉴)
86
+ *
27
87
  * @param {Object} props
28
- * @param {ReactNode} props.children - 서브 리스트 아이템들
29
- * @param {string} [props.className] - 추가적인 CSS 클래스
88
+ * @param {ReactNode} props.children - 서브 메뉴 아이템들 (Item 컴포넌트)
89
+ *
90
+ * @example
91
+ * <SubList>
92
+ * <Item href="/settings">설정</Item>
93
+ * <Item href="/logout">로그아웃</Item>
94
+ * </SubList>
30
95
  */
31
96
  declare const SubList: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
32
97
  /**
33
- * GNB 리스트의 아이템 컴포넌트
98
+ * 메뉴 아이템 컴포넌트
99
+ *
100
+ * @description
101
+ * 개별 메뉴 아이템을 렌더링합니다.
102
+ * - Next.js Link로 페이지 이동
103
+ * - 키보드 포커스 및 hover 스타일 지원
104
+ *
34
105
  * @param {Object} props
35
- * @param {ReactNode} props.children - 아이템 컨텐츠
36
- * @param {string} [props.className] - 추가적인 CSS 클래스
37
- * @param {() => void} [props.onClick] - 클릭 핸들러
38
- * @param {boolean} [props.isSelected] - 선택 상태 여부
106
+ * @param {string} props.href - 이동할 페이지 경로 (필수)
107
+ * @param {ReactNode} props.children - 메뉴 텍스트
108
+ * @param {boolean} [props.hasNew=false] - New 뱃지 표시 여부
109
+ * @param {string} [props.className] - Link에 적용할 추가 CSS 클래스
110
+ * @param {string} [props.textClassName] - 텍스트에 적용할 CSS 클래스
111
+ *
112
+ * @example
113
+ * // 기본 사용
114
+ * <Item href="/settings">
115
+ * 계정 설정
116
+ * </Item>
117
+ *
118
+ * @example
119
+ * // New 뱃지 포함
120
+ * <Item href="/new-feature" hasNew>
121
+ * 새로운 기능
122
+ * </Item>
123
+ *
124
+ * @example
125
+ * // 커스텀 스타일
126
+ * <Item
127
+ * href="/special"
128
+ * className="bg-primary-50"
129
+ * textClassName="font-bold"
130
+ * >
131
+ * 특별 메뉴
132
+ * </Item>
39
133
  */
40
- declare const Item: ({ hasNew, children, className, textClassName, ...rest }: GNBListItemProps) => import("react/jsx-runtime").JSX.Element;
134
+ declare const Item: ({ hasNew, children, className, textClassName, href, ...rest }: GNBListItemProps) => import("react/jsx-runtime").JSX.Element;
41
135
  export { Root, UserInfo, List, SubList, Item };
@@ -1,19 +1,67 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useContext as r,createContext as s,Children as a,Fragment as l}from"react";import{twMerge as i}from"tailwind-merge";import{Avatar as n}from"../../DataDisplays/Avatar/Avatar.js";import{Typography as o}from"../../Base/Typography/Typography.js";import{Box as c}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{NewBadge as d}from"../../DataDisplays/NewBadge/NewBadge.js";import{Divider as m}from"../../DataDisplays/Divider/Divider.js";import"../../DataDisplays/Accordion/Accordion.js";function p(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function y(e,t){if(null==e)return{};var r,s,a=function(e,t){if(null==e)return{};var r,s,a={},l=Object.keys(e);for(s=0;s<l.length;s++)r=l[s],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(s=0;s<l.length;s++)r=l[s],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}const f=/*#__PURE__*/s({type:""}),b=({type:r="main",children:s,className:n})=>{const o=a.map(s,((r,s)=>0===s?r:/*#__PURE__*/e(l,{children:[
2
- /*#__PURE__*/t(m,{className:"my-2"}),r]})));/*#__PURE__*/
3
- return e(f.Provider,{value:{type:r},children:["main"===r&&/*#__PURE__*/e(c,{className:i("absolute flex h-auto w-[200px] overflow-hidden rounded-xl bg-w-white shadow-graymedium",n),"data-testid":"design-system-gnb-list--root-main",children:[
4
- /*#__PURE__*/t(c,{className:"m-0 h-auto w-2 bg-gradient-primary-45 p-0","data-testid":"design-system-gnb-list--root-main-sidebar"}),
5
- /*#__PURE__*/t(c,{className:"w-full py-[13px]",children:o})]}),"sub"===r&&/*#__PURE__*/t(c,{className:i("absolute flex h-auto w-[200px] flex-col overflow-hidden rounded-xl bg-w-white py-3 shadow-graymedium ",n),"data-testid":"design-system-gnb-list--root-sub",children:o}),"user"===r&&/*#__PURE__*/t(c,{className:i("absolute flex w-full flex-col bg-w-white pb-3 pt-5 desktop:w-[280px] desktop:rounded-xl desktop:shadow-graymedium",n),"data-testid":"design-system-gnb-list--root-user",children:o})]})},g=({imgUrl:r,userId:s,email:a,children:l,onClick:i})=>/*#__PURE__*/e(c,{className:"flex w-full flex-col gap-4 px-6 pb-4",children:[
6
- /*#__PURE__*/e(c,{className:"flex w-full items-center gap-4",children:[
7
- /*#__PURE__*/t(n,{size:"lg",isEditable:!0,imgUrl:r,onClick:i}),
8
- /*#__PURE__*/e(c,{className:"flex w-full flex-col gap-0.5",children:[
9
- /*#__PURE__*/t(o,{variant:"body1",className:"font-medium text-w-gray-900",children:s}),
10
- /*#__PURE__*/t(o,{variant:"body2",className:"line-clamp-2 break-all text-w-gray-600",children:a})]})]}),l&&/*#__PURE__*/t(c,{className:"flex w-full flex-col gap-2",children:l})]}),h=({children:e})=>/*#__PURE__*/t(c,{className:"w-full text-w-gray-900","data-testid":"design-system-gnb-list--list",children:e}),w=({children:e})=>/*#__PURE__*/t(c,{className:"w-full text-w-gray-600","data-testid":"design-system-gnb-list--sub-list",children:e}),x=s=>{var{hasNew:a=!1,children:l,className:n,textClassName:m}=s,b=y(s,["hasNew","children","className","textClassName"]);const{type:g}=r(f);/*#__PURE__*/
11
- return e(c,u(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},s=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(s=s.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),s.forEach((function(t){p(e,t,r[t])}))}return e}({className:i("flex w-full cursor-pointer gap-1 px-4 py-3 hover:bg-primary-10","user"===g&&"px-6",n),"data-testid":`design-system-gnb-list--${g}-item-${l}`},b),{children:[
12
- /*#__PURE__*/t(o,{variant:"body1",className:m,"data-testid":`design-system-gnb-list--${g}-item-text-${l}`,children:l}),a&&/*#__PURE__*/t(d,{className:"mt-1"})]}))};
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import{Children as a,Fragment as t}from"react";import{twMerge as l}from"tailwind-merge";import n from"next/link";import{Avatar as o}from"../../DataDisplays/Avatar/Avatar.js";import{Typography as i}from"../../Base/Typography/Typography.js";import{Box as s}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{NewBadge as c}from"../../DataDisplays/NewBadge/NewBadge.js";import{Divider as m}from"../../DataDisplays/Divider/Divider.js";import"../../DataDisplays/Accordion/Accordion.js";function p(e,r,a){return r in e?Object.defineProperty(e,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[r]=a,e}function f(e){for(var r=1;r<arguments.length;r++){var a=null!=arguments[r]?arguments[r]:{},t=Object.keys(a);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(a).filter((function(e){return Object.getOwnPropertyDescriptor(a,e).enumerable})))),t.forEach((function(r){p(e,r,a[r])}))}return e}function u(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);r.push.apply(r,a)}return r}(Object(r)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(r,a))})),e}function y(e,r){if(null==e)return{};var a,t,l=function(e,r){if(null==e)return{};var a,t,l={},n=Object.keys(e);for(t=0;t<n.length;t++)a=n[t],r.indexOf(a)>=0||(l[a]=e[a]);return l}
13
2
  /**
14
3
  * GNB 리스트의 루트 컴포넌트
4
+ *
5
+ * @description
6
+ * GNB 리스트의 컨테이너 역할을 합니다.
7
+ * - withUserInfo prop에 따라 스타일 자동 조정
8
+ *
15
9
  * @param {Object} props
16
- * @param {'main'|'sub'|'user'} [props.type] - 리스트 타입 (main, sub, user)
17
- * @param {string} [props.className] - 추가적인 CSS 클래스
18
- * @param {ReactNode} props.children - 리스트 아이템들
19
- */export{x as Item,h as List,b as Root,w as SubList,g as UserInfo};
10
+ * @param {boolean} [props.withUserInfo=false] - 사용자 정보 포함 여부
11
+ * @param {string} [props.className] - 추가 CSS 클래스
12
+ * @param {ReactNode} props.children - 메뉴 구성 요소 (UserInfo, List, SubList)
13
+ *
14
+ * @example
15
+ * // 기본 메뉴 리스트
16
+ * <Root>
17
+ * <List>
18
+ * <Item href="/projects">프로젝트</Item>
19
+ * <Item href="/settings">설정</Item>
20
+ * </List>
21
+ * </Root>
22
+ *
23
+ * @example
24
+ * // 사용자 정보 포함 메뉴
25
+ * <Root withUserInfo>
26
+ * <UserInfo username="홍길동" email="hong@example.com" />
27
+ * <List>
28
+ * <Item href="/account">계정 설정</Item>
29
+ * </List>
30
+ * <SubList>
31
+ * <Item href="/logout">로그아웃</Item>
32
+ * </SubList>
33
+ * </Root>
34
+ */(e,r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(t=0;t<n.length;t++)a=n[t],r.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}const b=({withUserInfo:n=!1,children:o,className:i})=>{const c=a.map(o,((a,l)=>0===l?a:/*#__PURE__*/r(t,{children:[
35
+ /*#__PURE__*/e(m,{className:"my-2"}),a]})));/*#__PURE__*/
36
+ return e(s,{as:"nav","aria-label":"네비게이션 메뉴",className:l("absolute flex flex-col rounded-xl bg-w-white shadow-graymedium",n?"w-[280px] pb-3 pt-5":"h-auto w-[200px] overflow-hidden py-3",i),children:c})},d=({imgUrl:a,username:t,email:l,children:n,onClick:c})=>/*#__PURE__*/r(s,{role:"region","aria-label":"사용자 정보",className:"flex w-full flex-col gap-4 px-6 pb-4",children:[
37
+ /*#__PURE__*/r(s,{className:"flex w-full items-center gap-4",children:[
38
+ /*#__PURE__*/e(o,{size:"lg",isEditable:!0,imgUrl:a,onClick:c}),
39
+ /*#__PURE__*/r(s,{className:"flex w-full flex-col gap-0.5",children:[
40
+ /*#__PURE__*/e(i,{variant:"body16",className:"font-medium text-w-gray-900",children:t}),
41
+ /*#__PURE__*/e(i,{variant:"body14",className:"line-clamp-2 break-all text-w-gray-600",children:l})]})]}),n&&/*#__PURE__*/e(s,{className:"flex w-full flex-col gap-2",children:n})]}),h=({children:r})=>/*#__PURE__*/e(s,{as:"ul","aria-label":"메인 메뉴",className:"w-full text-w-gray-900",children:r}),g=({children:r})=>/*#__PURE__*/e(s,{as:"ul","aria-label":"서브 메뉴",className:"w-full text-w-gray-600",children:r}),w=a=>{var{hasNew:t=!1,children:o,className:m,textClassName:p,href:b}=a,d=y(a,["hasNew","children","className","textClassName","href"]);/*#__PURE__*/
42
+ return e(s,{as:"li",children:/*#__PURE__*/r(n,u(f({href:b,className:l("flex w-full cursor-pointer gap-1 px-6 py-2 hover:bg-primary-10",m)},d),{children:[
43
+ /*#__PURE__*/e(i,{variant:"body14",className:p,children:o}),t&&/*#__PURE__*/e(c,{className:"mt-1","aria-label":"새 소식"})]}))})};
44
+ /**
45
+ * 사용자 정보 컴포넌트
46
+ *
47
+ * @description
48
+ * 사용자의 프로필 이미지, 이름, 이메일을 표시합니다.
49
+ *
50
+ * @param {Object} props
51
+ * @param {string} [props.imgUrl] - 프로필 이미지 URL
52
+ * @param {string} [props.username] - 사용자 이름
53
+ * @param {string} [props.email] - 사용자 이메일
54
+ * @param {() => void} [props.onClick] - 프로필 이미지 클릭 핸들러
55
+ * @param {ReactNode} [props.children] - 액션 버튼 (예: 프로필 수정, 내 프로젝트)
56
+ *
57
+ * @example
58
+ * <UserInfo
59
+ * username="홍길동"
60
+ * email="hong@example.com"
61
+ * imgUrl="/profile.jpg"
62
+ * onClick={() => handleProfileEdit()}
63
+ * >
64
+ * <Button size="sm">프로필 수정</Button>
65
+ * <Button size="sm" variant="outlined">내 프로젝트</Button>
66
+ * </UserInfo>
67
+ */export{w as Item,h as List,b as Root,g as SubList,d as UserInfo};
@@ -1,16 +1,16 @@
1
+ import Link from 'next/link';
1
2
  import { ComponentPropsWithoutRef, PropsWithChildren } from 'react';
2
- export type GNBListType = 'main' | 'sub' | 'user';
3
3
  export interface GNBListRootProps extends PropsWithChildren {
4
- type?: GNBListType;
4
+ withUserInfo?: boolean;
5
5
  className?: string;
6
6
  }
7
7
  export interface UserInfoProps extends PropsWithChildren {
8
8
  imgUrl?: string;
9
- userId?: string;
9
+ username?: string;
10
10
  email?: string;
11
11
  onClick?: () => void;
12
12
  }
13
- export interface GNBListItemProps extends ComponentPropsWithoutRef<'div'> {
13
+ export interface GNBListItemProps extends ComponentPropsWithoutRef<typeof Link> {
14
14
  hasNew?: boolean;
15
15
  textClassName?: string;
16
16
  }
@@ -1,4 +1,4 @@
1
- import{jsxs as t,Fragment as e,jsx as o}from"react/jsx-runtime";import{twJoin as s,twMerge as i}from"tailwind-merge";import r from"next/link";import"react";import{SystemIcon as n}from"../../DataDisplays/SystemIcon/SystemIcon.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{Typography as a}from"../../Base/Typography/Typography.js";import"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import{CountBadge as p}from"../../DataDisplays/CountBadge/CountBadge.js";import"../../DataDisplays/Accordion/Accordion.js";import"@wishket/yogokit";import"../../Inputs/AutoCompleteList/AutoCompleteList.parts.js";import"../../Inputs/Input/Input.js";import"../../Inputs/Input/PasswordInput.js";import"../../Inputs/Input/LabelInput.js";import"../../Inputs/Input/InputTypeSelector.js";import"../../Inputs/Calendar/Calendar.utils.js";import"../../Inputs/Checkbox/Checkbox.js";import"../../Inputs/ChoiceChip/ChoiceChip.js";import{IconButton as m}from"../../Inputs/IconButton/IconButton.js";import"../../Inputs/Radio/Radio.js";import"../../Inputs/TextField/TextField.js";import"../../Inputs/CommentArea/CommentArea.js";import{IconButtonDropdown as l}from"../../Inputs/IconButtonDropdown/IconButtonDropdown.js";import"../../Inputs/FilterChip/FilterChip.js";
1
+ import{jsxs as t,Fragment as e,jsx as o}from"react/jsx-runtime";import{twJoin as s,twMerge as i}from"tailwind-merge";import r from"next/link";import"../../DataDisplays/Avatar/Avatar.js";import{CountBadge as n}from"../../DataDisplays/CountBadge/CountBadge.js";import{Typography as a}from"../../Base/Typography/Typography.js";import"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"react";import{SystemIcon as p}from"../../DataDisplays/SystemIcon/SystemIcon.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import"../../DataDisplays/Accordion/Accordion.js";import"@wishket/yogokit";import"../../Inputs/AutoCompleteList/AutoCompleteList.parts.js";import"../../Inputs/Input/Input.js";import"../../Inputs/Input/PasswordInput.js";import"../../Inputs/Input/LabelInput.js";import"../../Inputs/Input/InputTypeSelector.js";import"../../Inputs/Button/Button.js";import"../../Inputs/Calendar/Calendar.utils.js";import"../../Inputs/Checkbox/Checkbox.js";import"../../Inputs/ChoiceChip/ChoiceChip.js";import{IconButton as m}from"../../Inputs/IconButton/IconButton.js";import"../../Inputs/Radio/Radio.js";import"../../Inputs/TextField/TextField.js";import"../../Inputs/CommentArea/CommentArea.js";import{IconButtonDropdown as l}from"../../Inputs/IconButtonDropdown/IconButtonDropdown.js";import"../../Inputs/FilterChip/FilterChip.js";
2
2
  /**
3
3
  * 메뉴 컴포넌트는 네비게이션에서 사용되는 클릭 가능한 항목을 표시합니다.
4
4
  *
@@ -58,5 +58,5 @@ import{jsxs as t,Fragment as e,jsx as o}from"react/jsx-runtime";import{twJoin as
58
58
  * href="/test"
59
59
  * name="테스트 메뉴"
60
60
  * />
61
- */const c=({type:c="main",variant:u="white",name:d,isSelected:y=!1,badgeCount:I,leadingIcon:g,iconButtonName:h,onClick:C,onOptionClick:j,href:w,items:x,selectedItem:b,onItemClick:f})=>{const B=!!(h&&x&&f&&b),k=!!h&&!!j,D=(t,e,o)=>{const r="sub"===t?"pl-12":"",n={white:s("bg-w-white hover:bg-w-gray-50",o&&"bg-primary-10 text-primary hover:bg-primary-10"),gray:s("bg-w-gray-50 hover:bg-w-gray-100",o&&"bg-w-gray-100 hover:bg-w-gray-100")};return i("flex w-full cursor-pointer items-center gap-2 rounded-xl px-4 py-3 text-w-gray-900 text-left",r,n[e])},v=/*#__PURE__*/t(e,{children:[g&&/*#__PURE__*/o(n,{testId:"design-system-menu-leading-icon",name:g,className:s("white"===u&&y&&"text-primary")}),
62
- /*#__PURE__*/o(a,{"data-testid":"design-system-menu-name",variant:"body1",className:"w-full select-none",children:d}),I&&/*#__PURE__*/o(p,{variant:((t,e)=>"white"!==t?"white_gray":e?"primary":"gray")(u,y),text:I,className:"relative",showZero:!0}),B&&/*#__PURE__*/o(l,{size:"sm",icon:h,items:x,selectedItem:b,onItemClick:f}),k&&/*#__PURE__*/o(m,{size:"sm",className:"shrink-0",onClick:t=>{t.stopPropagation(),j()},children:/*#__PURE__*/o(n,{name:h})})]});return w?/*#__PURE__*/o(r,{href:w,"data-testid":"design-system-menu",className:D(c,u,y),children:v}):/*#__PURE__*/o("button",{"data-testid":"design-system-menu",className:D(c,u,y),onClick:C,children:v})};export{c as Menu};
61
+ */const u=({type:u="main",variant:c="white",name:d,isSelected:y=!1,badgeCount:I,leadingIcon:g,iconButtonName:h,onClick:j,onOptionClick:C,href:w,items:x,selectedItem:B,onItemClick:f})=>{const b=!!(h&&x&&f&&B),k=!!h&&!!C,D=(t,e,o)=>{const r="sub"===t?"pl-12":"",n={white:s("hover:bg-w-gray-50",o&&"bg-primary-10 text-primary hover:bg-primary-10"),gray:s("hover:bg-w-gray-100",o&&"bg-w-gray-100 hover:bg-w-gray-100")};return i("flex w-full cursor-pointer items-center gap-2 rounded-xl px-4 py-3 text-w-gray-900 text-left",r,n[e])},v=/*#__PURE__*/t(e,{children:[g&&/*#__PURE__*/o(p,{testId:"design-system-menu-leading-icon",name:g,className:s("white"===c&&y&&"text-primary")}),
62
+ /*#__PURE__*/o(a,{"data-testid":"design-system-menu-name",variant:"body16",className:"w-full select-none",children:d}),I&&/*#__PURE__*/o(n,{variant:((t,e)=>"white"!==t?"white_gray":e?"primary":"gray")(c,y),text:I,className:"relative",showZero:!0}),b&&/*#__PURE__*/o(l,{size:"sm",icon:h,items:x,selectedItem:B,onItemClick:f}),k&&/*#__PURE__*/o(m,{size:"sm",className:"shrink-0",onClick:t=>{t.stopPropagation(),C()},children:/*#__PURE__*/o(p,{name:h})})]});return w?/*#__PURE__*/o(r,{href:w,"data-testid":"design-system-menu",className:D(u,c,y),children:v}):/*#__PURE__*/o("button",{"data-testid":"design-system-menu",className:D(u,c,y),onClick:j,children:v})};export{u as Menu};
@@ -1,2 +1,2 @@
1
- import{jsx as e}from"react/jsx-runtime";import{twMerge as t}from"tailwind-merge";import"react";import{SystemIcon as r}from"../../DataDisplays/SystemIcon/SystemIcon.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{Typography as n}from"../../Base/Typography/Typography.js";import"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"../../DataDisplays/Accordion/Accordion.js";function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){o(e,t,r[t])}))}return e}function i(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function s(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}const c=r=>{var{value:o,enabled:c}=r,l=s(r,["value","enabled"]);/*#__PURE__*/
2
- return e("button",i(a({className:t("flex size-10 justify-center rounded-xl p-2 text-w-gray-700",c?"bg-primary-50 text-primary":"hover:bg-w-gray-50")},l),{children:/*#__PURE__*/e(n,{variant:"body2",children:o})}))},l=t=>/*#__PURE__*/e("button",i(a({},t),{"data-testid":"design-system-pagination-left-arrow",children:/*#__PURE__*/e(r,{name:"medium_arrow_left",className:"text-w-gray-900"})})),y=t=>/*#__PURE__*/e("button",i(a({},t),{"data-testid":"design-system-pagination-right-arrow",children:/*#__PURE__*/e(r,{name:"medium_arrow_right",className:"text-w-gray-900"})}));export{l as LeftArrow,c as PaginationNumber,y as RightArrow};
1
+ import{jsx as e}from"react/jsx-runtime";import{twMerge as t}from"tailwind-merge";import"../../DataDisplays/Avatar/Avatar.js";import{Typography as r}from"../../Base/Typography/Typography.js";import"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"react";import{SystemIcon as n}from"../../DataDisplays/SystemIcon/SystemIcon.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import"../../DataDisplays/Accordion/Accordion.js";function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){o(e,t,r[t])}))}return e}function i(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}function s(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}const c=n=>{var{value:o,enabled:c}=n,l=s(n,["value","enabled"]);/*#__PURE__*/
2
+ return e("button",i(a({className:t("flex size-10 justify-center rounded-xl p-2 text-w-gray-700",c?"bg-primary-50 text-primary":"hover:bg-w-gray-50")},l),{children:/*#__PURE__*/e(r,{variant:"body14",children:o})}))},l=t=>/*#__PURE__*/e("button",i(a({},t),{"data-testid":"design-system-pagination-left-arrow",children:/*#__PURE__*/e(n,{name:"medium_arrow_left",className:"text-w-gray-900"})})),p=t=>/*#__PURE__*/e("button",i(a({},t),{"data-testid":"design-system-pagination-right-arrow",children:/*#__PURE__*/e(n,{name:"medium_arrow_right",className:"text-w-gray-900"})}));export{l as LeftArrow,c as PaginationNumber,p as RightArrow};
@@ -27,4 +27,4 @@ return e(r,{"data-testid":"design-system-table-of-contents",className:a("relativ
27
27
  /*#__PURE__*/t(r,{"data-testid":"design-system-table-of-contents--gray-bar",className:"absolute left-0 top-0 z-0 my-1.5 h-[calc(100%_-_12px)] w-0.5 bg-w-gray-100"}),l.map((o=>{const{title:l,index:i}=o,m=d==i;/*#__PURE__*/
28
28
  return e(r,{"data-testid":m?"design-system-table-of-contents--item-selected":"design-system-table-of-contents--item",className:a("relative flex h-9 w-full select-none items-center text-w-gray-400",m&&"text-w-gray-600"),onClick:()=>null==u?void 0:u(i),children:[
29
29
  /*#__PURE__*/t("span",{"data-testid":m?"design-system-table-of-contents--bar-selected":"design-system-table-of-contents--bar",className:a("absolute -top-[6px] left-0 z-10 h-6 w-0.5 bg-transparent",m&&"bg-primary",m&&(e=>`transition duration-500 ease-out ${"down"===e?"translate-y-1/2":"top-1/2 -translate-y-1/2"}`)(c))}),
30
- /*#__PURE__*/t(n,{variant:"body3",className:s("cursor-pointer pl-[18px]",m&&"font-medium"),children:l})]},i)}))]})};export{l as TableOfContents};
30
+ /*#__PURE__*/t(n,{variant:"body13",className:s("cursor-pointer pl-[18px]",m&&"font-medium"),children:l})]},i)}))]})};export{l as TableOfContents};
@@ -1,10 +1,10 @@
1
- "use client";import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useContext as r,createContext as n,useRef as a,Children as o,useState as s,useEffect as i}from"react";import{twMerge as l,twJoin as c}from"tailwind-merge";import{Typography as u}from"../../Base/Typography/Typography.js";import{Box as d}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import{SystemIcon as m}from"../../DataDisplays/SystemIcon/SystemIcon.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{CountBadge as f}from"../../DataDisplays/CountBadge/CountBadge.js";import{Divider as p}from"../../DataDisplays/Divider/Divider.js";import"../../DataDisplays/Accordion/Accordion.js";function b(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){b(e,t,r[t])}))}return e}function h(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const g=/*#__PURE__*/n({barColor:"bg-w-gray-900",activeTab:0,currentActiveTab:0,isFit:!0,hasPadding:!1,isFull:!1,handleTabClick:e=>{}}),x=({children:t,currentActiveTab:r=0,isFit:n=!0,hasPadding:a=!1,isFull:o=!1,barColor:l="bg-w-gray-900",onChange:c})=>{const[u,d]=s(r);return i((()=>{r!==u&&d(r);
1
+ "use client";import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useContext as r,createContext as n,useRef as a,Children as o,useState as s,useEffect as i}from"react";import{twMerge as l,twJoin as c}from"tailwind-merge";import{Typography as u}from"../../Base/Typography/Typography.js";import{Box as d}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"../../DataDisplays/Avatar/Avatar.js";import{CountBadge as m}from"../../DataDisplays/CountBadge/CountBadge.js";import{SystemIcon as f}from"../../DataDisplays/SystemIcon/SystemIcon.js";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{Divider as p}from"../../DataDisplays/Divider/Divider.js";import"../../DataDisplays/Accordion/Accordion.js";function b(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),n.forEach((function(t){b(e,t,r[t])}))}return e}function h(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t.push.apply(t,r)}return t}(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})),e}const g=/*#__PURE__*/n({barColor:"bg-w-gray-900",activeTab:0,currentActiveTab:0,isFit:!0,hasPadding:!1,isFull:!1,handleTabClick:e=>{}}),x=({children:t,currentActiveTab:r=0,isFit:n=!0,hasPadding:a=!1,isFull:o=!1,barColor:l="bg-w-gray-900",onChange:c})=>{const[u,d]=s(r);return i((()=>{r!==u&&d(r);
2
2
  // eslint-disable-next-line react-hooks/exhaustive-deps
3
- }),[r]),/*#__PURE__*/e(g.Provider,{value:{barColor:l,activeTab:u,currentActiveTab:r,isFit:n,hasPadding:a,handleTabClick:e=>{e!==u&&(null==c||c(e),d(e))},isFull:o},children:t})},w=({children:n,className:u})=>{const{activeTab:m,hasPadding:f,isFull:b,barColor:y}=r(g),h=a([]),x=a(null),w=a(null),v=o.toArray(n),[j,O]=s(!1),[T,D]=s(!1),[N,P]=s({x:0,scrollLeft:0});return i((()=>{if(!h.current[m]||!x.current)return;const e=h.current[m],t=x.current,r=w.current;if(e&&t&&r){const{offsetLeft:n,offsetWidth:a}=e,{scrollLeft:o,clientWidth:s}=r;t.style.width=`${a}px`,t.style.transform=`translateX(${n}px)`;if(!(o<=n&&o+s>=n+a)){const t=setTimeout((()=>{e.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})}),0);return()=>clearTimeout(t)}}}),[m]),i((()=>{const e=()=>{if(w.current){const e=w.current.scrollWidth>w.current.clientWidth;O(e)}};return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),i((()=>{if(w.current){const e=w.current.scrollWidth>w.current.clientWidth;O(e)}}),[n]),/*#__PURE__*/e(d,{ref:w,className:c("block w-full touch-pan-x items-start overflow-x-scroll scrollbar-hide",j&&"scrollbar-list",u),"data-testid":"design-system-textTab--container",onMouseDown:e=>{w.current&&(D(!0),P({x:e.pageX,scrollLeft:w.current.scrollLeft}))},onMouseMove:e=>{if(!T||!w.current)return;e.preventDefault();const t=e.pageX-N.x;w.current.scrollLeft=N.scrollLeft-t},onMouseUp:()=>{D(!1)},onMouseLeave:()=>{D(!1)},children:/*#__PURE__*/t(d,{className:l("relative w-full border-b border-w-gray-200",j&&"w-max",f&&"px-9"),"data-testid":"design-system-textTab--inner-container",children:[
3
+ }),[r]),/*#__PURE__*/e(g.Provider,{value:{barColor:l,activeTab:u,currentActiveTab:r,isFit:n,hasPadding:a,handleTabClick:e=>{e!==u&&(null==c||c(e),d(e))},isFull:o},children:t})},w=({children:n,className:u})=>{const{activeTab:m,hasPadding:f,isFull:b,barColor:y}=r(g),h=a([]),x=a(null),w=a(null),v=o.toArray(n),[j,O]=s(!1),[D,T]=s(!1),[N,P]=s({x:0,scrollLeft:0});return i((()=>{if(!h.current[m]||!x.current)return;const e=h.current[m],t=x.current,r=w.current;if(e&&t&&r){const{offsetLeft:n,offsetWidth:a}=e,{scrollLeft:o,clientWidth:s}=r;t.style.width=`${a}px`,t.style.transform=`translateX(${n}px)`;if(!(o<=n&&o+s>=n+a)){const t=setTimeout((()=>{e.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})}),0);return()=>clearTimeout(t)}}}),[m]),i((()=>{const e=()=>{if(w.current){const e=w.current.scrollWidth>w.current.clientWidth;O(e)}};return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),i((()=>{if(w.current){const e=w.current.scrollWidth>w.current.clientWidth;O(e)}}),[n]),/*#__PURE__*/e(d,{ref:w,className:c("scrollbar-hide block w-full touch-pan-x items-start overflow-x-scroll",j&&"scrollbar-list",u),"data-testid":"design-system-textTab--container",onMouseDown:e=>{w.current&&(T(!0),P({x:e.pageX,scrollLeft:w.current.scrollLeft}))},onMouseMove:e=>{if(!D||!w.current)return;e.preventDefault();const t=e.pageX-N.x;w.current.scrollLeft=N.scrollLeft-t},onMouseUp:()=>{T(!1)},onMouseLeave:()=>{T(!1)},children:/*#__PURE__*/t(d,{className:l("relative w-full border-b border-w-gray-200",j&&"w-max",f&&"px-9"),"data-testid":"design-system-textTab--inner-container",children:[
4
4
  /*#__PURE__*/e(d,{className:l("inline-flex w-max gap-10",b&&"w-full gap-0"),children:v.map(((t,r)=>/*#__PURE__*/e(d,{className:l(b&&"w-full"),ref:e=>{h.current[r]=e},children:t},r)))}),
5
5
  /*#__PURE__*/e("span",{ref:x,"data-testid":`design-system-textTab--underbar-${m}`,className:c("absolute bottom-0 left-0 h-0.5 rounded-t-lg transition-all duration-300 ease-out",y)}),
6
- /*#__PURE__*/e(p,{className:"absolute -bottom-px left-0 h-px"})]})})},v=({children:n,index:a,className:o,disabled:s=!1,badgeNumber:i,iconName:c,href:p})=>{const{isFit:b,handleTabClick:x,activeTab:w,isFull:v}=r(g),j=a===w,O={tabIndex:0,"data-testid":`design-system-textTab--item-${a}`,className:l("group flex w-max cursor-pointer items-center rounded-xl hover:font-medium",s&&"cursor-not-allowed",v&&"w-full",o),onClick:()=>{!s&&x(a)}},T=/*#__PURE__*/t(d,{className:l("relative flex w-full select-none flex-row items-center justify-center gap-2 py-4 font-normal text-w-gray-600 group-hover:text-w-gray-900",!b&&"px-[33.5px]",v&&"w-full px-0",j&&"font-medium text-w-gray-900"),children:[c&&/*#__PURE__*/e(d,{className:"flex size-4 flex-shrink-0 items-center justify-center",children:/*#__PURE__*/e(m,{name:c,className:l("size-4 text-w-gray-600 group-hover:text-w-gray-900",j&&"text-w-gray-900")})}),
7
- /*#__PURE__*/e(u,{variant:"body1",className:"relative",children:n}),void 0!==i&&/*#__PURE__*/e(f,{text:i,showZero:!0,className:"relative",variant:"gray"})]});return p?/*#__PURE__*/e("a",h(y({href:p},O),{children:T})):/*#__PURE__*/e(d,h(y({},O),{children:T}))},j=({children:t,index:n})=>{const{activeTab:a}=r(g);return a===n&&/*#__PURE__*/e(d,{"data-testid":"design-system-textTab--content",children:t})};
6
+ /*#__PURE__*/e(p,{className:"absolute -bottom-px left-0 h-px"})]})})},v=({children:n,index:a,className:o,disabled:s=!1,badgeNumber:i,iconName:c,href:p})=>{const{isFit:b,handleTabClick:x,activeTab:w,isFull:v}=r(g),j=a===w,O={tabIndex:0,"data-testid":`design-system-textTab--item-${a}`,className:l("group flex w-max cursor-pointer items-center rounded-xl hover:font-medium",s&&"cursor-not-allowed",v&&"w-full",o),onClick:()=>{!s&&x(a)}},D=/*#__PURE__*/t(d,{className:l("relative flex w-full select-none flex-row items-center justify-center gap-2 py-4 font-normal text-w-gray-600 group-hover:text-w-gray-900",!b&&"px-[33.5px]",v&&"w-full px-0",j&&"font-medium text-w-gray-900"),children:[c&&/*#__PURE__*/e(d,{className:"flex size-4 shrink-0 items-center justify-center",children:/*#__PURE__*/e(f,{name:c,className:l("size-4 text-w-gray-600 group-hover:text-w-gray-900",j&&"text-w-gray-900")})}),
7
+ /*#__PURE__*/e(u,{variant:"body16",className:"relative",children:n}),void 0!==i&&/*#__PURE__*/e(m,{text:i,showZero:!0,className:"relative",variant:"gray"})]});return p?/*#__PURE__*/e("a",h(y({href:p},O),{children:D})):/*#__PURE__*/e(d,h(y({},O),{children:D}))},j=({children:t,index:n})=>{const{activeTab:a}=r(g);return a===n&&/*#__PURE__*/e(d,{"data-testid":"design-system-textTab--content",children:t})};
8
8
  /**
9
9
  * TextTab의 Root 컴포넌트입니다.
10
10
  * TextTab의 상태를 관리합니다.
@@ -1,4 +1,4 @@
1
- import{jsxs as t,jsx as a}from"react/jsx-runtime";import{twMerge as s}from"tailwind-merge";import{Box as e}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"react";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{CountBadge as r}from"../../DataDisplays/CountBadge/CountBadge.js";import{NewBadge as o}from"../../DataDisplays/NewBadge/NewBadge.js";import"../../DataDisplays/Accordion/Accordion.js";
1
+ import{jsxs as a,jsx as t}from"react/jsx-runtime";import{twMerge as s}from"tailwind-merge";import{Box as r}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"../../DataDisplays/Avatar/Avatar.js";import{CountBadge as e}from"../../DataDisplays/CountBadge/CountBadge.js";import"react";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import{NewBadge as o}from"../../DataDisplays/NewBadge/NewBadge.js";import"../../DataDisplays/Accordion/Accordion.js";
2
2
  /**
3
3
  * 자식 요소의 우측 상단에 뱃지를 표시하는 래퍼 컴포넌트입니다.
4
4
  *
@@ -19,4 +19,4 @@ import{jsxs as t,jsx as a}from"react/jsx-runtime";import{twMerge as s}from"tailw
19
19
  * <WithBadge variant="new">
20
20
  * <MenuItem>새로운 기능</MenuItem>
21
21
  * </WithBadge>
22
- */const i=({text:i,children:m,className:l,variant:n="primary",showZero:p=!1})=>/*#__PURE__*/t(e,{className:s("relative w-fit",l),"data-testid":"with-badge",children:[m,"new"===n?/*#__PURE__*/a(o,{className:"absolute right-0 top-0 -translate-y-1/2 translate-x-1/2 transform"}):/*#__PURE__*/a(r,{text:i,variant:n,showZero:p,className:"absolute right-px top-px -translate-y-1/2 translate-x-1/2 transform"})]});export{i as WithBadge};
22
+ */const i=({text:i,children:m,className:l,variant:n="primary",showZero:p=!1})=>/*#__PURE__*/a(r,{className:s("relative w-fit",l),"data-testid":"with-badge",children:[m,"new"===n?/*#__PURE__*/t(o,{className:"absolute right-0 top-0 -translate-y-1/2 translate-x-1/2 transform"}):/*#__PURE__*/t(e,{text:i,variant:n,showZero:p,className:"absolute right-px top-px -translate-y-1/2 translate-x-1/2 transform"})]});export{i as WithBadge};
@@ -1,4 +1,4 @@
1
- import{jsxs as e,jsx as a}from"react/jsx-runtime";import{twJoin as s}from"tailwind-merge";import{Box as t}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"react";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import"../../DataDisplays/Accordion/Accordion.js";import{SnackBar as o}from"../../Feedbacks/SnackBar/SnackBar.js";import"@wishket/yogokit";import"react-dom";import"../../Feedbacks/GlobalLoadingIndicator/GlobalLoadingIndicator.js";
1
+ import{jsxs as t,jsx as a}from"react/jsx-runtime";import{twJoin as s}from"tailwind-merge";import{Box as e}from"../../Base/Layouts/Box/Box.js";import"../../Base/Layouts/FullBleed/FullBleed.js";import"../../DataDisplays/Avatar/Avatar.js";import"react";import"../../DataDisplays/SystemIcon/SystemIcon.constants.js";import"../../DataDisplays/Accordion/Accordion.js";import{SnackBar as o}from"../../Feedbacks/SnackBar/SnackBar.js";import"../../Inputs/Button/Button.js";import"@wishket/yogokit";import"react-dom";import"../../Feedbacks/Tooltip/Tooltip.js";import"../../Feedbacks/GlobalLoadingIndicator/GlobalLoadingIndicator.js";
2
2
  /**
3
3
  * 스낵바를 포함하는 래퍼 컴포넌트입니다.
4
4
  * 자식 컴포넌트 상단에 알림 메시지를 표시할 수 있습니다.
@@ -21,5 +21,5 @@ import{jsxs as e,jsx as a}from"react/jsx-runtime";import{twJoin as s}from"tailwi
21
21
  * <YourComponent />
22
22
  * </WithSnackBar>
23
23
  * ```
24
- */const r=({children:r,isOpen:i,message:l,type:n,onClose:m})=>/*#__PURE__*/e(t,{"data-testid":"design-system-with-message-bar",children:[
25
- /*#__PURE__*/a(t,{className:"w-full overflow-y-hidden",children:/*#__PURE__*/a(t,{className:s("w-full transform overflow-y-hidden transition-all duration-300 ease-linear",i?"max-h-full translate-y-0":"max-h-0 -translate-y-full"),"data-testid":"design-system-with-message-bar--container",children:/*#__PURE__*/a(t,{className:"pt-8",children:/*#__PURE__*/a(o,{message:l,type:n,onClose:m})})})}),r]});export{r as WithSnackBar};
24
+ */const i=({children:i,isOpen:r,message:l,type:n,onClose:m})=>/*#__PURE__*/t(e,{"data-testid":"design-system-with-message-bar",children:[
25
+ /*#__PURE__*/a(e,{className:"w-full overflow-y-hidden",children:/*#__PURE__*/a(e,{className:s("w-full transform overflow-y-hidden transition-all duration-300 ease-linear",r?"max-h-full translate-y-0":"max-h-0 -translate-y-full"),"data-testid":"design-system-with-message-bar--container",children:/*#__PURE__*/a(e,{className:"pt-8",children:/*#__PURE__*/a(o,{message:l,type:n,onClose:m})})})}),i]});export{i as WithSnackBar};
@@ -1,3 +1,2 @@
1
1
  export * from './WithBadge';
2
- export * from './WithRichTooltip';
3
2
  export * from './WithSnackBar';
@@ -10,4 +10,4 @@
10
10
  */(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(a=0;a<l.length;a++)r=l[a],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}const c=/*#__PURE__*/t.forwardRef(((n,c)=>{var{className:s,insideContainerClassName:o,maxWidth:p="1200px",paddingAdjustment:u=8.5,children:f}=n,m=d(n,["className","insideContainerClassName","maxWidth","paddingAdjustment","children"]);
11
11
  // TODO: 스크롤바 너비를 제외한 viewport width 계산을 더 나은 방식으로 할 수 있도록 개선(layout shift 방지)
12
12
  const[b,g]=t.useState((()=>a.calculateScrollbarWidth())),y=a.getPaddingFromClassName(o,"mobile"),x=a.getPaddingFromClassName(o,"tablet"),O=a.getPaddingFromClassName(o,"desktop");t.useEffect((()=>{g(a.calculateScrollbarWidth())}),[]);const h={"--dynamic-padding-left-tablet":`max(${x.left||x.x}px, ${y.left||y.x}px)`,"--dynamic-padding-right-tablet":`max(${x.right||x.x}px, ${y.right||y.x}px)`,"--dynamic-padding-left-desktop":`calc(max(calc((100dvw - ${p})/2 + ${y.left||y.x}px + ${u}px), ${O.x}px))`,"--dynamic-padding-right-desktop":`calc(max(calc((100dvw - ${p})/2 + ${y.right||y.x}px + ${u}px), ${O.x}px))`},j={"--dynamic-bleed-width":`calc(100dvw - ${b}px)`};/*#__PURE__*/
13
- return e.jsx("div",{"data-testid":"design-system-full-bleed",children:/*#__PURE__*/e.jsx("div",{"data-testid":"design-system-full-bleed--container",className:r.twMerge("relative left-1/2 top-0 h-full w-[var(--dynamic-bleed-width)] -translate-x-1/2",s),style:j,children:/*#__PURE__*/e.jsx("div",i(l({"data-testid":"design-system-full-bleed--container-inside",className:r.twMerge("flex w-full overflow-x-auto px-5 scrollbar-hide","tablet:pl-[var(--dynamic-padding-left-tablet)] tablet:pr-[var(--dynamic-padding-right-tablet)]","desktop:pl-[var(--dynamic-padding-left-desktop)] desktop:pr-[var(--dynamic-padding-right-desktop)]",o),style:h,ref:c},m),{children:f}))})})}));c.displayName="FullBleed",exports.FullBleed=c;
13
+ return e.jsx("div",{"data-testid":"design-system-full-bleed",children:/*#__PURE__*/e.jsx("div",{"data-testid":"design-system-full-bleed--container",className:r.twMerge("relative left-1/2 top-0 h-full w-[var(--dynamic-bleed-width)] -translate-x-1/2",s),style:j,children:/*#__PURE__*/e.jsx("div",i(l({"data-testid":"design-system-full-bleed--container-inside",className:r.twMerge("scrollbar-hide flex w-full overflow-x-auto px-5","tablet:pl-[var(--dynamic-padding-left-tablet)] tablet:pr-[var(--dynamic-padding-right-tablet)]","desktop:pl-[var(--dynamic-padding-left-desktop)] desktop:pr-[var(--dynamic-padding-right-desktop)]",o),style:h,ref:c},m),{children:f}))})})}));c.displayName="FullBleed",exports.FullBleed=c;
@@ -1,4 +1,4 @@
1
- "use strict";function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}const e=(r,n="mobile")=>{const i={mobile:{x:20,left:0,right:0},tablet:{x:20,left:0,right:0},desktop:{x:36,left:0,right:0}};if(!r){if("tablet"===n){const t=e(r,"mobile");return{x:t.x,left:t.left,right:t.right}}return i[n]}const o=r.split(" "),l="mobile"===n?"":`${n}:`;if(!o.some((t=>t.startsWith(l+"px-")||t.startsWith(l+"pl-")||t.startsWith(l+"pr-")))&&"tablet"===n)return e(r,"mobile");const c=function(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{},i=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(n).filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable})))),i.forEach((function(r){t(e,r,n[r])}))}return e}({},i[n]),s=o.find((t=>t===`${l}px-${c.x/4}`||t.startsWith(`${l}px-`)));
1
+ "use strict";function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}const e=(r,n="mobile")=>{const i={mobile:{x:20,left:0,right:0},tablet:{x:20,left:0,right:0},desktop:{x:36,left:0,right:0}};if(!r){if("tablet"===n){const t=e(r,"mobile");return{x:t.x,left:t.left,right:t.right}}return i[n]}const o=r.split(" "),l="mobile"===n?"":`${n}:`;if(!o.some((t=>t.startsWith(`${l}px-`)||t.startsWith(`${l}pl-`)||t.startsWith(`${l}pr-`)))&&"tablet"===n)return e(r,"mobile");const c=function(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{},i=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(n).filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable})))),i.forEach((function(r){t(e,r,n[r])}))}return e}({},i[n]),s=o.find((t=>t===`${l}px-${c.x/4}`||t.startsWith(`${l}px-`)));
2
2
  // px 처리
3
3
  if(s){const t=4*Number(s.replace(l,"").replace("px-",""));c.x=t}
4
4
  // pl 처리
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge");require("react");var s=require("../../DataDisplays/SystemIcon/SystemIcon.js");require("../../DataDisplays/SystemIcon/SystemIcon.constants.js");var i=require("../Typography/Typography.js"),a=require("../Layouts/Box/Box.js");require("../Layouts/FullBleed/FullBleed.js"),require("../../DataDisplays/Accordion/Accordion.js");exports.TextWithIcons=({text:r,leadingIcon:n,trailingIcon:o,isTextSmall:c=!1,isGray:l=!1,isUnderline:y=!1})=>/*#__PURE__*/e.jsxs(e.Fragment,{children:[n&&/*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-text-with-icons--icon--left",className:"w-fit",children:/*#__PURE__*/e.jsx(s.SystemIcon,{name:n,className:t.twJoin(l?"text-w-gray-600":"text-primary-500")})}),
2
- /*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-text-with-icons--text",className:"w-fit",children:/*#__PURE__*/e.jsx(i.Typography,{variant:c?"body2":"body1",className:t.twJoin("align-baseline font-medium",l?"text-w-gray-600":"text-primary-500",y?"underline decoration-1 underline-offset-2":""),children:r})}),o&&/*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-text-with-icons--icon--right",className:"w-fit",children:/*#__PURE__*/e.jsx(s.SystemIcon,{name:o,className:t.twJoin(l?"text-w-gray-600":"text-primary-500")})})]});
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge"),s=require("../../DataDisplays/SystemIcon/SystemIcon.js");require("../../DataDisplays/SystemIcon/SystemIcon.constants.js");var i=require("../Typography/Typography.js"),a=require("../Layouts/Box/Box.js");require("../Layouts/FullBleed/FullBleed.js");exports.TextWithIcons=({text:r,leadingIcon:n,trailingIcon:o,isTextSmall:l=!1,isGray:c=!1,isUnderline:y=!1})=>/*#__PURE__*/e.jsxs(e.Fragment,{children:[n&&/*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-text-with-icons--icon--left",className:"w-fit",children:/*#__PURE__*/e.jsx(s.SystemIcon,{name:n,className:t.twJoin(c?"text-w-gray-600":"text-primary-500")})}),
2
+ /*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-text-with-icons--text",className:"w-fit",children:/*#__PURE__*/e.jsx(i.Typography,{variant:l?"body14":"body16",className:t.twJoin("align-baseline font-medium",c?"text-w-gray-600":"text-primary-500",y?"underline decoration-1 underline-offset-2":""),children:r})}),o&&/*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-text-with-icons--icon--right",className:"w-fit",children:/*#__PURE__*/e.jsx(s.SystemIcon,{name:o,className:t.twJoin(c?"text-w-gray-600":"text-primary-500")})})]});
@@ -1,10 +1,10 @@
1
- "use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge");function n(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},c=Object.keys(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}const c=[{name:"title1",class:"typo-title1"},{name:"title2",class:"typo-title2"},{name:"title3",class:"typo-title3"},{name:"subTitle1",class:"typo-subTitle1"},{name:"subTitle2",class:"typo-subTitle2"},{name:"contents1",class:"typo-contents1"},{name:"contents2",class:"typo-contents2"},{name:"body1",class:"typo-body1"},{name:"body2",class:"typo-body2"},{name:"body3",class:"typo-body3"},{name:"caption1",class:"typo-caption1"},{name:"caption2",class:"typo-caption2"}];
1
+ "use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge");function n(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t}(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})),e}function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}const a=[{name:"title48",class:"typo-title48"},{name:"title32",class:"typo-title32"},{name:"title28",class:"typo-title28"},{name:"title24",class:"typo-title24"},{name:"subTitle20",class:"typo-subTitle20"},{name:"subTitle18",class:"typo-subTitle18"},{name:"contents18",class:"typo-contents18"},{name:"contents16",class:"typo-contents16"},{name:"body16",class:"typo-body16"},{name:"body14",class:"typo-body14"},{name:"body13",class:"typo-body13"},{name:"caption12",class:"typo-caption12"},{name:"caption11",class:"typo-caption11"}];
2
2
  /**
3
3
  * Typography
4
4
  * @param {Object} props
5
5
  * @param {React.ReactNode} props.children - Typography 내부에 들어갈 컨텐츠
6
- * @param {string} props.variant - 텍스트 스타일 variant ('title1' | 'title2' | 'title3' | 'subTitle1' | 'subTitle2' | 'contents1' | 'contents2' | 'body1' | 'body2' | 'body3' | 'caption1' | 'caption2')
6
+ * @param {string} props.variant - 텍스트 스타일 variant ('title48' | 'title32' | 'title24' | 'subTitle20' | 'subTitle18' | 'contents18' | 'contents16' | 'body16' | 'body14' | 'body13' | 'caption12' | 'caption11')
7
7
  * @param {string} [props.className] - 추가적인 CSS 클래스
8
8
  * @param {keyof JSX.IntrinsicElements} [props.as='span'] - 렌더링할 HTML 요소
9
- */exports.Typography=a=>{var s,{children:l,variant:i,className:p,as:y="span"}=a,u=o(a,["children","variant","className","as"]);const b=y||"span",O=(null===(s=c.find((e=>e.name===i)))||void 0===s?void 0:s.class)||"";/*#__PURE__*/
9
+ */exports.Typography=c=>{var s,{children:l,variant:i,className:p,as:y="span"}=c,u=o(c,["children","variant","className","as"]);const b=y||"span",O=(null===(s=a.find((e=>e.name===i)))||void 0===s?void 0:s.class)||"";/*#__PURE__*/
10
10
  return e.jsx(b,r(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter((function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable})))),o.forEach((function(t){n(e,t,r[t])}))}return e}({className:t.twMerge("tracking-default",O,p)},u),{children:l}))};
@@ -1,4 +1,4 @@
1
- "use client";"use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("tailwind-merge"),i=require("../../Base/Typography/Typography.js"),s=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");var n=require("../SystemIcon/SystemIcon.js");require("../SystemIcon/SystemIcon.constants.js"),require("@wishket/yogokit"),require("react-dom"),require("next/link"),require("../../Inputs/AutoCompleteList/AutoCompleteList.parts.js"),require("../../Inputs/Input/Input.js"),require("../../Inputs/Input/PasswordInput.js"),require("../../Inputs/Input/LabelInput.js"),require("../../Inputs/Input/InputTypeSelector.js"),require("../../Inputs/Calendar/Calendar.utils.js"),require("../../Inputs/Checkbox/Checkbox.js"),require("../../Inputs/ChoiceChip/ChoiceChip.js"),require("../../Inputs/Radio/Radio.js"),require("../../Inputs/TextField/TextField.js"),require("../../Inputs/CommentArea/CommentArea.js"),require("../../Inputs/FilterChip/FilterChip.js");var o=require("../../Navigations/TextLink/TextLink.js");
1
+ "use client";"use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("tailwind-merge"),a=require("../../Base/Typography/Typography.js"),o=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");var i=require("../SystemIcon/SystemIcon.js");require("../SystemIcon/SystemIcon.constants.js");var s=require("../../Navigations/TextLink/TextLink.js");
2
2
  /**
3
3
  * 아코디언 컨테이너 컴포넌트
4
4
  *
@@ -19,7 +19,7 @@
19
19
  * </Accordion.Item>
20
20
  * </Accordion>
21
21
  * ```
22
- */const a=({children:r})=>/*#__PURE__*/e.jsx(s.Box,{className:"flex w-full flex-col gap-6 p-6",children:r});
22
+ */const n=({children:r})=>/*#__PURE__*/e.jsx(o.Box,{className:"flex w-full flex-col gap-6 p-6",children:r});
23
23
  /**
24
24
  * 아코디언의 개별 아이템 컴포넌트
25
25
  *
@@ -50,9 +50,9 @@
50
50
  * <p>콘텐츠 내용</p>
51
51
  * </Accordion.Item>
52
52
  * ```
53
- */a.Item=({title:a,href:u,linkText:l,linkTarget:c="_blank",children:p})=>{const[d,x]=r.useState(!1),m=r.useId(),j=u&&l&&c;/*#__PURE__*/
54
- return e.jsxs(s.Box,{className:"flex w-full flex-col border-b border-w-gray-200 pb-6 last:border-b-0 last:pb-0",children:[
55
- /*#__PURE__*/e.jsxs("button",{type:"button",className:"box-border flex cursor-pointer items-center justify-between gap-6 text-left",onClick:()=>x(!d),"aria-expanded":d,"aria-controls":`accordionregion-${m}`,id:`accordionbutton-${m}`,children:[
56
- /*#__PURE__*/e.jsx(i.Typography,{variant:"subTitle2",className:"w-full font-medium text-w-gray-900",children:a}),
57
- /*#__PURE__*/e.jsx(s.Box,{className:t.twJoin("transition-transform duration-300 ease-in-out",d?"rotate-180":"rotate-0"),children:/*#__PURE__*/e.jsx(n.SystemIcon,{name:"medium_arrow_down"})})]}),
58
- /*#__PURE__*/e.jsx(s.Box,{role:"region",id:`accordionregion-${m}`,"aria-labelledby":`accordionbutton-${m}`,className:t.twJoin("w-full overflow-hidden transition-all duration-300 ease-in-out",d?"max-h-screen":"max-h-0"),children:/*#__PURE__*/e.jsxs(s.Box,{className:"mt-4 flex flex-col gap-4",children:[p,j&&/*#__PURE__*/e.jsx(o.TextLink,{href:u,text:l,target:c,trailingIcon:"medium_arrow_right"})]})})]})},exports.Accordion=a;
53
+ */n.Item=({title:n,href:l,linkText:c,linkTarget:u="_blank",children:x})=>{const[d,m]=r.useState(!1),b=r.useId(),f=l&&c&&u;/*#__PURE__*/
54
+ return e.jsxs(o.Box,{className:"flex w-full flex-col border-b border-w-gray-200 pb-6 last:border-b-0 last:pb-0",children:[
55
+ /*#__PURE__*/e.jsxs("button",{type:"button",className:"box-border flex cursor-pointer items-center justify-between gap-6 text-left",onClick:()=>m(!d),"aria-expanded":d,"aria-controls":`accordionregion-${b}`,id:`accordionbutton-${b}`,children:[
56
+ /*#__PURE__*/e.jsx(a.Typography,{variant:"subTitle18",className:"w-full font-medium text-w-gray-900",children:n}),
57
+ /*#__PURE__*/e.jsx(o.Box,{className:t.twJoin("transition-transform duration-300 ease-in-out",d?"rotate-180":"rotate-0"),children:/*#__PURE__*/e.jsx(i.SystemIcon,{name:"medium_arrow_down"})})]}),
58
+ /*#__PURE__*/e.jsx(o.Box,{role:"region",id:`accordionregion-${b}`,"aria-labelledby":`accordionbutton-${b}`,className:t.twJoin("w-full overflow-hidden transition-all duration-300 ease-in-out",d?"max-h-screen":"max-h-0"),children:/*#__PURE__*/e.jsxs(o.Box,{className:"mt-4 flex flex-col gap-4",children:[x,f&&/*#__PURE__*/e.jsx(s.TextLink,{href:l,text:c,target:u,trailingIcon:"medium_arrow_right"})]})})]})},exports.Accordion=n;
@@ -1,6 +1,6 @@
1
- "use client";"use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge"),a=require("react"),s=require("../SystemIcon/SystemIcon.js");require("../SystemIcon/SystemIcon.constants.js");var r=require("../../Base/Typography/Typography.js"),i=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");const n=({size:t="md",name:i,imgUrl:n,isMonogram:o,avatarStyle:l})=>{const[c,d]=a.useState(!1),m=null==i?void 0:i.slice(0,1),u=()=>d(!0);return n&&!c?/*#__PURE__*/e.jsx("img",{src:n,alt:"",width:80,height:80,className:"h-full w-full object-cover","data-testid":"design-system-avatar--image",onError:u}):o?/*#__PURE__*/e.jsx(r.Typography,{variant:l[t].char,className:"cursor-default select-none text-w-white",children:m}):/*#__PURE__*/e.jsx(s.SystemIcon,{name:"large_user_image_avatar",className:"h-full w-full",testId:"design-system-avatar--default-image"})},o=({size:a="md",name:r,imgUrl:o,isEditable:l=!1,onClick:c,hasBorder:d=!0})=>{const m=!o&&!!r,u={sm:{container:"size-[22px]",char:"caption1",editButton:"hidden"},md:{container:"size-8",char:"body1",editButton:"size-4"},lg:{container:"size-12",char:"title3",editButton:"size-5"},xl:{container:"size-20",char:"title2",editButton:"size-6"}};/*#__PURE__*/
2
- return e.jsxs(i.Box,{className:t.twMerge("relative z-0 h-fit w-fit",l&&"cursor-pointer"),onClick:c,children:[
3
- /*#__PURE__*/e.jsx(i.Box,{"data-testid":"design-system-avatar--container",className:t.twMerge(u[a].container,"flex items-center justify-center overflow-hidden rounded-full",m&&"bg-primary",d&&"border border-w-gray-200"),children:/*#__PURE__*/e.jsx(n,{size:a,name:r,imgUrl:o,isMonogram:m,avatarStyle:u})}),!m&&l&&/*#__PURE__*/e.jsx(i.Box,{className:t.twMerge("absolute bottom-0 right-0 z-10 flex items-center justify-center rounded-full bg-w-white shadow-graysmall",u[a].editButton),"data-testid":"design-system-avatar--edit-button",children:/*#__PURE__*/e.jsx(s.SystemIcon,{name:"small_camera",solid:!0,className:t.twJoin("md"===a&&"size-3"),testId:"design-system-avatar--edit-button-icon"})})]})},l=/*#__PURE__*/a.memo(o);
1
+ "use client";"use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge"),a=require("react"),r=require("../SystemIcon/SystemIcon.js");require("../SystemIcon/SystemIcon.constants.js");var s=require("../../Base/Typography/Typography.js"),i=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");const o=({size:i="md",name:o,imgUrl:n,isMonogram:l,avatarStyle:d,defaultAvatarColor:c})=>{const[m,u]=a.useState(!1),g=null==o?void 0:o.slice(0,1),y=()=>u(!0);return n&&!m?/*#__PURE__*/e.jsx("img",{src:n,alt:"",width:80,height:80,className:"h-full w-full object-cover","data-testid":"design-system-avatar--image",onError:y}):l?/*#__PURE__*/e.jsx(s.Typography,{variant:d[i].char,className:"cursor-default select-none text-w-white",children:g}):/*#__PURE__*/e.jsx(r.SystemIcon,{name:"large_user_image_avatar",className:t.twJoin("h-full w-full",c),testId:"design-system-avatar--default-image"})},n=({size:a="md",name:s,imgUrl:n,isEditable:l=!1,onClick:d,hasBorder:c=!0,defaultAvatarColor:m="text-w-gray-200"})=>{const u=!n&&!!s,g={sm:{container:"size-[22px]",char:"caption12",editButton:"hidden"},md:{container:"size-8",char:"body16",editButton:"size-4"},lg:{container:"size-12",char:"title28",editButton:"size-5"},xl:{container:"size-20",char:"title32",editButton:"size-6"}};/*#__PURE__*/
2
+ return e.jsxs(i.Box,{className:t.twMerge("relative z-0 h-fit w-fit",l&&"cursor-pointer"),onClick:d,children:[
3
+ /*#__PURE__*/e.jsx(i.Box,{"data-testid":"design-system-avatar--container",className:t.twMerge(g[a].container,"flex items-center justify-center overflow-hidden rounded-full",u&&"bg-primary",c&&"border border-w-gray-200"),children:/*#__PURE__*/e.jsx(o,{size:a,name:s,imgUrl:n,isMonogram:u,avatarStyle:g,defaultAvatarColor:m})}),!u&&l&&/*#__PURE__*/e.jsx(i.Box,{className:t.twMerge("absolute bottom-0 right-0 z-10 flex items-center justify-center rounded-full bg-w-white shadow-graysmall",g[a].editButton),"data-testid":"design-system-avatar--edit-button",children:/*#__PURE__*/e.jsx(r.SystemIcon,{name:"small_camera",solid:!0,className:t.twJoin("md"===a&&"size-3"),testId:"design-system-avatar--edit-button-icon"})})]})},l=/*#__PURE__*/a.memo(n);
4
4
  /**
5
5
  * Avatar 컴포넌트는 사용자의 프로필 이미지, 모노그램, 또는 기본 아이콘을 표시합니다.
6
6
  * @component
@@ -10,6 +10,7 @@ return e.jsxs(i.Box,{className:t.twMerge("relative z-0 h-fit w-fit",l&&"cursor-p
10
10
  * @param {string} [props.imgUrl] - 이미지 URL
11
11
  * @param {boolean} [props.isEditable=false] - 수정 아이콘 여부
12
12
  * @param {boolean} [props.hasBorder=true] - 테두리 여부
13
+ * @param {AvatarColor} [props.defaultAvatarColor='text-w-gray-200'] - 기본 아이콘 색상
13
14
  * @param {() => void} [props.onClick] - 클릭 시 실행될 콜백 함수
14
15
  * @returns {JSX.Element} Avatar component
15
16
  * @example
@@ -21,4 +22,4 @@ return e.jsxs(i.Box,{className:t.twMerge("relative z-0 h-fit w-fit",l&&"cursor-p
21
22
  *
22
23
  * // Editable avatar
23
24
  * <Avatar name="John Doe" isEditable={true} onClick={() => handleEdit()} />
24
- */exports.Avatar=l;
25
+ */l.displayName="Avatar",exports.Avatar=l;
@@ -1 +1,24 @@
1
- "use strict";var e=require("react/jsx-runtime"),i=require("tailwind-merge");exports.Divider=({isVertical:r=!1,isSub:s=!1,className:a})=>/*#__PURE__*/e.jsx("div",{"data-testid":"design-system-divider",className:i.twMerge("flex-shrink-0",r?"h-full w-px":"h-px w-full",s?"bg-w-gray-100":"bg-w-gray-200",a)});
1
+ "use strict";var e=require("react/jsx-runtime"),r=require("tailwind-merge");
2
+ /**
3
+ * 콘텐츠 사이에 시각적 구분선을 생성하는 컴포넌트
4
+ * @param {Object} props
5
+ * @param {boolean} [props.isVertical=false] - true일 경우 세로 구분선, false일 경우 가로 구분선
6
+ * @param {'gray' | 'light' | 'dark' | 'blue'} [props.color='gray'] - 구분선 색상
7
+ * @param {'sm' | 'md' | 'lg' | 'xl' | 'full'} [props.height] - 세로 구분선의 높이 (isVertical=true일 때만 적용, 기본값: full)
8
+ * @param {string} [props.className] - 추가적인 CSS 클래스
9
+ * @returns {JSX.Element} 구분선 요소
10
+ * @example
11
+ * // 가로 구분선
12
+ * <Divider />
13
+ *
14
+ * // 세로 구분선 (부모 높이 필요)
15
+ * <Divider isVertical />
16
+ *
17
+ * // 고정 높이 세로 구분선
18
+ * <Divider isVertical height="md" />
19
+ *
20
+ * // 부모 높이에 맞는 세로 구분선
21
+ * <Divider isVertical height="full" />
22
+ *
23
+ */
24
+ const l={gray:"bg-w-gray-200",light:"bg-w-gray-100",dark:"bg-w-bluegray-500",blue:"bg-w-bluegray-50"},a={sm:"h-3",md:"h-[13px]",lg:"h-3.5",xl:"h-4",full:"h-full"};exports.Divider=({isVertical:i=!1,color:s="gray",height:g="full",className:t})=>/*#__PURE__*/e.jsx("div",{"data-testid":"design-system-divider",role:"separator",className:r.twMerge("shrink-0",i?"w-px":"h-px w-full",i&&a[g],l[s],t)});
@@ -1,6 +1,6 @@
1
1
  "use client";"use strict";var e=require("react/jsx-runtime"),r=require("react"),t=require("tailwind-merge"),n=require("../../Base/Typography/Typography.js"),a=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");var o=require("../SystemIcon/SystemIcon.js");function i(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function s(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),n.forEach((function(r){i(e,r,t[r])}))}return e}function c(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):function(e){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r.push.apply(r,t)}return r}(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})),e}function y(e,r){if(null==e)return{};var t,n,a=function(e,r){if(null==e)return{};var t,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)t=o[n],r.indexOf(t)>=0||(a[t]=e[t]);return a}(e,r);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++)t=o[n],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}require("../SystemIcon/SystemIcon.constants.js");const p=/*#__PURE__*/r.createContext({type:"",variant:"",size:""}),l={Root:n=>{var{children:o,className:i,size:l="md",type:u="text",variant:g="primary",ref:b,canHover:m=!1}=n,d=y(n,["children","className","size","type","variant","ref","canHover"]);const f=r.Children.toArray(o),x=f.length-1,w=e=>/*#__PURE__*/r.isValidElement(e)&&"function"==typeof e.type&&e.type.toString().includes("icon"),j=w(f[0]),O=w(f[x]);/*#__PURE__*/
2
2
  return e.jsx(p.Provider,{value:{type:u,variant:g,size:l},children:/*#__PURE__*/e.jsx(a.Box,c(s({"data-testid":"design-system-label",className:t.twMerge("flex w-fit items-center","sm"===l&&"gap-1","md"===l&&"gap-1.5",(()=>{const e="sm"===l,r="rounded-lg px-2";if("text"!==u)return"outlined"===u?t.twMerge(r,e?"border py-px":"border py-0",j&&"pl-1.5",O&&"pr-1.5"):t.twMerge(r,e?"py-0.5":"py-px",j&&"pl-1.5",O&&"pr-1.5")})(),m&&"cursor-pointer",(()=>{const e="outlined"===u;if("text"!==u)return"gray"===g?e?m?"bg-w-gray-10 border-w-gray-200 hover:border-w-gray-400":"bg-w-gray-10 border-w-gray-200":m?"bg-w-gray-10 hover:bg-w-gray-200":"bg-w-gray-10":e?m?"bg-primary-50 border-primary-200 hover:border-primary":"bg-primary-50 border-primary-200":m?"bg-primary-50 hover:bg-primary-100":"bg-primary-50"})(),i)},d),{children:o}))})},Text:({children:a,className:o})=>{const{type:i,variant:s,size:c}=r.useContext(p),y="text"===i;/*#__PURE__*/
3
- return e.jsx(n.Typography,{variant:"md"===c?"body2":"caption1","data-testid":"design-system-label--text",className:t.twMerge("select-none text-w-gray-600",!y&&"primary"===s&&"text-primary",o),children:a})},Icon:({children:n,className:i,icon:s})=>{const{type:c,variant:y}=r.useContext(p);/*#__PURE__*/
3
+ return e.jsx(n.Typography,{variant:"md"===c?"body14":"caption12","data-testid":"design-system-label--text",className:t.twMerge("select-none text-w-gray-600",!y&&"primary"===s&&"text-primary",o),children:a})},Icon:({children:n,className:i,icon:s})=>{const{type:c,variant:y}=r.useContext(p);/*#__PURE__*/
4
4
  return e.jsxs(a.Box,{"data-testid":"design-system-label--icon",className:t.twMerge("aspect-w-[14px] size-[14px] shrink-0 object-contain",!s&&i),children:[s&&/*#__PURE__*/e.jsx(o.SystemIcon,{name:s,className:t.twMerge("text-w-gray-400","primary"===y&&"text-primary","text"===c&&"text-w-gray-400",i)}),n]})}};
5
5
  /**
6
6
  * @component Root