@wishket/design-system 1.17.2 → 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.
- package/README.md +14 -1
- package/dist/Components/Base/Layouts/FullBleed/FullBleed.js +1 -1
- package/dist/Components/Base/Layouts/FullBleed/FullBleed.utils.js +1 -1
- package/dist/Components/Base/TextWithIcons/TextWithIcons.d.ts +10 -0
- package/dist/Components/Base/TextWithIcons/TextWithIcons.js +2 -0
- package/dist/Components/Base/TextWithIcons/index.d.ts +1 -0
- package/dist/Components/Base/Typography/Typography.d.ts +1 -1
- package/dist/Components/Base/Typography/Typography.js +3 -3
- package/dist/Components/Base/Typography/Typography.types.d.ts +13 -12
- package/dist/Components/DataDisplays/Accordion/Accordion.d.ts +33 -0
- package/dist/Components/DataDisplays/Accordion/Accordion.js +58 -0
- package/dist/Components/DataDisplays/Accordion/index.d.ts +1 -0
- package/dist/Components/DataDisplays/Avatar/Avatar.d.ts +2 -1
- package/dist/Components/DataDisplays/Avatar/Avatar.js +5 -4
- package/dist/Components/DataDisplays/Divider/Divider.d.ts +3 -20
- package/dist/Components/DataDisplays/Divider/Divider.js +10 -6
- package/dist/Components/DataDisplays/Label/Label.js +1 -1
- package/dist/Components/DataDisplays/Li/Li.d.ts +5 -68
- package/dist/Components/DataDisplays/Li/Li.js +7 -7
- package/dist/Components/DataDisplays/ProductIcon/Icons/Achieve.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Bookmark.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/BubbleStar.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/BubbleStars.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Building.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Calendar.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/CardConfirm.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/CardWrite.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Congrats.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/ContractPen.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Credit.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Database.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Design.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Discount.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/DocumentCloud.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/DocumentSuccess.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Email.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/HandShake.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/HandThumb.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Idea.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Lock.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Logout.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/MemoWrite.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/MobileConfirm.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Package.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperCertify.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperClip.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperClipClock.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperClock.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperConfirm.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperContract.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperHold.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperOverlap.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperPen.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperProject.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PaperSecurity.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PersonFreelancer.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PersonOffice.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/PersonSmile.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Public.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Receipt.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Repair.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Search.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/SearchConfirm.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/ShieldConfirm.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/ShieldWon.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Shopping.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WebDevelopment.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WebDomain.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WebPayment.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WebSecurity.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperConfirm.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperPayment.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperPlan.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/WidePaperStructure.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/Icons/Won.d.ts +1 -1
- package/dist/Components/DataDisplays/ProductIcon/ProductIcon.constants.d.ts +9 -5
- package/dist/Components/DataDisplays/ProductIcon/ProductIcon.js +5 -8
- package/dist/Components/DataDisplays/ProductIcon/ProductIcon.part.types.d.ts +5 -0
- package/dist/Components/DataDisplays/ProductIcon/ProductIcon.types.d.ts +4 -11
- package/dist/Components/DataDisplays/SkillLabel/SkillLabel.parts.js +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeAccountSetting.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeAnswer.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowDown.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowLeft.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowRight.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeArrowUp.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeBell.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeBubble.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeCollection.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeCollectionAdd.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeDelete.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeDrawer.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeFilter.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeHeart.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeHome.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeLike.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeLink.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargePlus.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeQuestion.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeReset.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeScrap.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeSearch.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeSend.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeService.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeShare.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeStar.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeTop.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeUserImageAvatar.d.ts +1 -2
- package/dist/Components/DataDisplays/SystemIcon/Icons/Large/LargeUserImageAvatar.js +4 -4
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumAi.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumAnswer.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowDown.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowLeft.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowRight.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumArrowUp.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumBell.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumBubble.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCalendar.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCaution.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCautionTriangle.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCheck.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumClip.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCollection.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumCompass.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumDelete.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumEdit.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumError.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumEye.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumEyeSlash.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumFilter.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumFire.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumGlassesMinus.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumGlassesPlus.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumHashTag.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumHeart.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumHighlight.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumInformation.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumLink.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumList.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMagic.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMenuDown.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMenuUp.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMinus.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumMoreOptions.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPersonAdd.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPin.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPlus.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPopular.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPrivate.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumPublic.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumQuestion.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumQuestionNew.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumRename.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumReply.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumReset.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumScrap.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumSearch.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumSend.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumShare.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumStar.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumSuccess.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumTrash.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumUpload.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Medium/MediumWait.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowDown.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowLeft.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowRight.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallArrowUp.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallBell.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCamera.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCat.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCheck.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallCollection.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallDelete.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallEdit.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallEye.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallHeart.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallIndeterminate.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallInformation.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallLike.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallLink.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallList.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallMoreOptions.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPlay.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPlus.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPrivate.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallPublic.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallRadioDot.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallResizer.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallScrap.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallShare.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallSlash.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallStar.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallStop.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallTrash.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Small/SmallWait.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialFacebook.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialGoogle.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialLinkedIn.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialNaver.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/SocialX.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/WishketBlog.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/WishketFacebook.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/Icons/Social/WishketNaverBlog.d.ts +1 -1
- package/dist/Components/DataDisplays/SystemIcon/SystemIcon.constants.d.ts +6 -1
- package/dist/Components/DataDisplays/SystemIcon/SystemIcon.part.types.d.ts +6 -0
- package/dist/Components/DataDisplays/SystemIcon/SystemIcon.types.d.ts +4 -12
- package/dist/Components/DataDisplays/index.d.ts +1 -0
- package/dist/Components/Feedbacks/DialogBox/DialogBox.js +2 -2
- package/dist/Components/Feedbacks/GlobalLoadingIndicator/GlobalLoadingIndicator.d.ts +18 -10
- package/dist/Components/Feedbacks/GlobalLoadingIndicator/GlobalLoadingIndicator.js +16 -7
- package/dist/Components/Feedbacks/LoadingIndicator/LoadingIndicator.d.ts +2 -21
- package/dist/Components/Feedbacks/LoadingIndicator/LoadingIndicator.js +9 -6
- package/dist/Components/Feedbacks/LoadingIndicator/LoadingIndicator.types.d.ts +2 -0
- package/dist/Components/Feedbacks/MessageBar/MessageBar.js +5 -5
- package/dist/Components/Feedbacks/MessageBox/MessageBox.js +4 -4
- package/dist/Components/Feedbacks/MessageBox/MessageBox.parts.js +3 -3
- package/dist/Components/Feedbacks/SnackBar/SnackBar.d.ts +1 -1
- package/dist/Components/Feedbacks/SnackBar/SnackBar.js +5 -11
- package/dist/Components/Feedbacks/SnackBar/SnackBar.types.d.ts +1 -0
- package/dist/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.d.ts +30 -0
- package/dist/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.js +31 -0
- package/dist/Components/Feedbacks/{PlainTooltip → Tooltip/PlainTooltip}/PlainTooltip.parts.d.ts +1 -1
- package/dist/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.parts.js +1 -0
- package/dist/Components/Feedbacks/Tooltip/PlainTooltip/index.d.ts +1 -0
- package/dist/Components/Feedbacks/Tooltip/RichTooltip/RichTooltip.d.ts +33 -0
- package/dist/Components/Feedbacks/Tooltip/RichTooltip/RichTooltip.js +32 -0
- package/dist/Components/Feedbacks/Tooltip/RichTooltip/index.d.ts +1 -0
- package/dist/Components/Feedbacks/Tooltip/Tooltip.d.ts +24 -0
- package/dist/Components/Feedbacks/Tooltip/Tooltip.js +25 -0
- package/dist/Components/Feedbacks/Tooltip/Tooltip.types.d.ts +19 -0
- package/dist/Components/Feedbacks/Tooltip/index.d.ts +4 -0
- package/dist/Components/Feedbacks/index.d.ts +1 -2
- package/dist/Components/Inputs/AutoCompleteList/AutoCompleteList.js +4 -4
- package/dist/Components/Inputs/AutoCompleteList/AutoCompleteList.parts.js +4 -4
- package/dist/Components/Inputs/Autocomplete/Autocomplete.js +1 -1
- package/dist/Components/Inputs/Button/Button.d.ts +7 -13
- package/dist/Components/Inputs/Button/Button.js +2 -51
- package/dist/Components/Inputs/Button/Button.types.d.ts +3 -10
- package/dist/Components/Inputs/Calendar/Calendar.js +8 -8
- package/dist/Components/Inputs/Calendar/Calendar.parts.js +7 -7
- package/dist/Components/Inputs/Checkbox/Checkbox.js +5 -5
- package/dist/Components/Inputs/Checkbox/Checkbox.parts.d.ts +1 -1
- package/dist/Components/Inputs/Checkbox/Checkbox.parts.js +2 -4
- package/dist/Components/Inputs/Checkbox/Checkbox.types.d.ts +1 -1
- package/dist/Components/Inputs/CheckboxCard/CheckboxCard.d.ts +2 -2
- package/dist/Components/Inputs/CheckboxCard/CheckboxCard.js +6 -6
- package/dist/Components/Inputs/CheckboxCard/CheckboxCard.parts.js +4 -4
- package/dist/Components/Inputs/CheckboxCard/CheckboxCard.types.d.ts +1 -1
- package/dist/Components/Inputs/CheckboxListItem/CheckboxListItem.d.ts +1 -1
- package/dist/Components/Inputs/CheckboxListItem/CheckboxListItem.js +3 -3
- package/dist/Components/Inputs/ChoiceChip/ChoiceChip.js +6 -6
- package/dist/Components/Inputs/CommentArea/CommentArea.js +9 -9
- package/dist/Components/Inputs/FileUploader/FileUploader.d.ts +45 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.hooks.d.ts +20 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.hooks.js +1 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.js +48 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.parts.d.ts +10 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.parts.js +11 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.types.d.ts +19 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.utils.d.ts +4 -0
- package/dist/Components/Inputs/FileUploader/FileUploader.utils.js +1 -0
- package/dist/Components/Inputs/FileUploader/index.d.ts +2 -0
- package/dist/Components/Inputs/FilterChip/FilterChip.js +4 -4
- package/dist/Components/Inputs/FilterList/FilterList.js +16 -14
- package/dist/Components/Inputs/IconButton/IconButton.d.ts +6 -4
- package/dist/Components/Inputs/IconButton/IconButton.js +7 -8
- package/dist/Components/Inputs/IconButtonDropdown/IconButtonDropdown.js +4 -4
- package/dist/Components/Inputs/Input/Input.js +1 -1
- package/dist/Components/Inputs/Input/LabelInput.d.ts +9 -0
- package/dist/Components/Inputs/Input/{LableInput.js → LabelInput.js} +4 -4
- package/dist/Components/Inputs/Input/PasswordInput.js +4 -4
- package/dist/Components/Inputs/Input/index.d.ts +2 -2
- package/dist/Components/Inputs/InputChip/InputChip.js +3 -3
- package/dist/Components/Inputs/List/List.js +3 -3
- package/dist/Components/Inputs/MultiColumnList/MultiColumnList.parts.js +2 -2
- package/dist/Components/Inputs/Radio/Radio.d.ts +14 -8
- package/dist/Components/Inputs/Radio/Radio.js +20 -14
- package/dist/Components/Inputs/Radio/index.d.ts +1 -1
- package/dist/Components/Inputs/Radio/types.d.ts +8 -0
- package/dist/Components/Inputs/RadioCard/RadioCard.js +6 -6
- package/dist/Components/Inputs/RadioCard/RadioCard.parts.d.ts +3 -3
- package/dist/Components/Inputs/RadioCard/RadioCard.parts.js +4 -4
- package/dist/Components/Inputs/RadioCard/RadioCard.types.d.ts +8 -8
- package/dist/Components/Inputs/RadioGroup/RadioGroup.d.ts +3 -3
- package/dist/Components/Inputs/RadioGroup/RadioGroup.js +2 -2
- package/dist/Components/Inputs/RadioList/RadioList.d.ts +2 -2
- package/dist/Components/Inputs/RadioList/RadioList.js +3 -3
- package/dist/Components/Inputs/RadioList/RadioList.types.d.ts +3 -2
- package/dist/Components/Inputs/RadioList/parts/index.d.ts +0 -1
- package/dist/Components/Inputs/RadioListItem/RadioListItem.d.ts +10 -0
- package/dist/Components/Inputs/RadioListItem/RadioListItem.js +5 -0
- package/dist/Components/Inputs/RadioListItem/index.d.ts +1 -0
- package/dist/Components/Inputs/RangeSlider/RangeSlider.js +2 -2
- package/dist/Components/Inputs/SearchField/SearchField.js +4 -4
- package/dist/Components/Inputs/SegmentedControl/SegmentedControl.js +1 -1
- package/dist/Components/Inputs/SupportTextContainer/SupportTextContainer.d.ts +3 -2
- package/dist/Components/Inputs/SupportTextContainer/SupportTextContainer.js +3 -3
- package/dist/Components/Inputs/TextButton/TextButton.d.ts +5 -2
- package/dist/Components/Inputs/TextButton/TextButton.js +7 -5
- package/dist/Components/Inputs/TextButton/TextButton.types.d.ts +2 -0
- package/dist/Components/Inputs/TextButtonDropdown/TextButtonDropdown.js +4 -4
- package/dist/Components/Inputs/TextButtonDropdown/TextButtonDropdown.parts.js +4 -4
- package/dist/Components/Inputs/TextField/TextField.d.ts +11 -14
- package/dist/Components/Inputs/TextField/TextField.js +10 -12
- package/dist/Components/Inputs/TextFieldContainer/TextFieldContainer.js +1 -1
- package/dist/Components/Inputs/TextFieldDropdown/TextFieldDropdown.js +3 -3
- package/dist/Components/Inputs/TextFieldDropdown/TextFieldDropdown.parts.js +3 -3
- package/dist/Components/Inputs/Textarea/Textarea.js +5 -5
- package/dist/Components/Inputs/index.d.ts +2 -0
- package/dist/Components/Layouts/Card/Card.d.ts +42 -0
- package/dist/Components/Layouts/Card/index.d.ts +1 -0
- package/dist/Components/Layouts/Fieldset/Fieldset.d.ts +38 -0
- package/dist/Components/Layouts/Fieldset/index.d.ts +1 -0
- package/dist/Components/Layouts/index.d.ts +2 -0
- package/dist/Components/Navigations/BoxTab/BoxTab.parts.js +1 -1
- package/dist/Components/Navigations/Drawer/Drawer.d.ts +2 -7
- package/dist/Components/Navigations/Drawer/Drawer.styles.d.ts +1 -1
- package/dist/Components/Navigations/Drawer/Drawer.types.d.ts +7 -0
- package/dist/Components/Navigations/GNBList/GNBList.d.ts +30 -30
- package/dist/Components/Navigations/GNBList/GNBList.js +27 -27
- package/dist/Components/Navigations/GNBList/GNBList.parts.d.ts +114 -20
- package/dist/Components/Navigations/GNBList/GNBList.parts.js +64 -16
- package/dist/Components/Navigations/GNBList/GNBList.types.d.ts +4 -4
- package/dist/Components/Navigations/Menu/Menu.js +3 -3
- package/dist/Components/Navigations/Pagination/Pagination.parts.js +2 -2
- package/dist/Components/Navigations/TableOfContents/TableOfContents.js +1 -1
- package/dist/Components/Navigations/TextLink/TextLink.d.ts +66 -0
- package/dist/Components/Navigations/TextLink/TextLink.js +61 -0
- package/dist/Components/Navigations/TextLink/index.d.ts +1 -0
- package/dist/Components/Navigations/TextTab/TextTab.parts.js +5 -5
- package/dist/Components/Navigations/index.d.ts +1 -0
- package/dist/Components/Wrappers/WithBadge/WithBadge.js +2 -2
- package/dist/Components/Wrappers/WithSnackBar/WithSnackBar.js +3 -3
- package/dist/Components/Wrappers/index.d.ts +0 -1
- package/dist/cjs/Components/Base/Layouts/FullBleed/FullBleed.js +1 -1
- package/dist/cjs/Components/Base/Layouts/FullBleed/FullBleed.utils.js +1 -1
- package/dist/cjs/Components/Base/TextWithIcons/TextWithIcons.js +2 -0
- package/dist/cjs/Components/Base/Typography/Typography.js +3 -3
- package/dist/cjs/Components/DataDisplays/Accordion/Accordion.js +58 -0
- package/dist/cjs/Components/DataDisplays/Avatar/Avatar.js +5 -4
- package/dist/cjs/Components/DataDisplays/Divider/Divider.js +24 -1
- package/dist/cjs/Components/DataDisplays/Label/Label.js +1 -1
- package/dist/cjs/Components/DataDisplays/Li/Li.js +7 -8
- package/dist/cjs/Components/DataDisplays/ProductIcon/ProductIcon.js +2 -8
- package/dist/cjs/Components/DataDisplays/SkillLabel/SkillLabel.parts.js +1 -1
- package/dist/cjs/Components/DataDisplays/SystemIcon/Icons/Large/LargeUserImageAvatar.js +4 -4
- package/dist/cjs/Components/Feedbacks/DialogBox/DialogBox.js +2 -2
- package/dist/cjs/Components/Feedbacks/LoadingIndicator/LoadingIndicator.js +28 -5
- package/dist/cjs/Components/Feedbacks/MessageBar/MessageBar.js +47 -5
- package/dist/cjs/Components/Feedbacks/MessageBox/MessageBox.js +40 -5
- package/dist/cjs/Components/Feedbacks/MessageBox/MessageBox.parts.js +3 -3
- package/dist/cjs/Components/Feedbacks/SnackBar/SnackBar.js +6 -11
- package/dist/cjs/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.js +31 -0
- package/dist/cjs/Components/Feedbacks/Tooltip/PlainTooltip/PlainTooltip.parts.js +1 -0
- package/dist/cjs/Components/Feedbacks/Tooltip/RichTooltip/RichTooltip.js +32 -0
- package/dist/cjs/Components/Feedbacks/Tooltip/Tooltip.js +26 -0
- package/dist/cjs/Components/Inputs/AutoCompleteList/AutoCompleteList.js +4 -4
- package/dist/cjs/Components/Inputs/AutoCompleteList/AutoCompleteList.parts.js +4 -4
- package/dist/cjs/Components/Inputs/Autocomplete/Autocomplete.js +1 -1
- package/dist/cjs/Components/Inputs/Button/Button.js +2 -51
- package/dist/cjs/Components/Inputs/Calendar/Calendar.js +7 -7
- package/dist/cjs/Components/Inputs/Calendar/Calendar.parts.js +7 -7
- package/dist/cjs/Components/Inputs/Checkbox/Checkbox.js +4 -4
- package/dist/cjs/Components/Inputs/Checkbox/Checkbox.parts.js +2 -4
- package/dist/cjs/Components/Inputs/CheckboxCard/CheckboxCard.js +4 -4
- package/dist/cjs/Components/Inputs/CheckboxCard/CheckboxCard.parts.js +4 -4
- package/dist/cjs/Components/Inputs/CheckboxListItem/CheckboxListItem.js +3 -3
- package/dist/cjs/Components/Inputs/ChoiceChip/ChoiceChip.js +5 -5
- package/dist/cjs/Components/Inputs/CommentArea/CommentArea.js +9 -9
- package/dist/cjs/Components/Inputs/FileUploader/FileUploader.hooks.js +1 -0
- package/dist/cjs/Components/Inputs/FileUploader/FileUploader.js +6 -0
- package/dist/cjs/Components/Inputs/FileUploader/FileUploader.parts.js +11 -0
- package/dist/cjs/Components/Inputs/FileUploader/FileUploader.utils.js +1 -0
- package/dist/cjs/Components/Inputs/FilterChip/FilterChip.js +5 -4
- package/dist/cjs/Components/Inputs/FilterList/FilterList.js +15 -13
- package/dist/cjs/Components/Inputs/IconButton/IconButton.js +6 -7
- package/dist/cjs/Components/Inputs/IconButtonDropdown/IconButtonDropdown.js +3 -3
- package/dist/cjs/Components/Inputs/Input/Input.js +1 -1
- package/dist/cjs/Components/Inputs/Input/LabelInput.js +4 -0
- package/dist/cjs/Components/Inputs/Input/PasswordInput.js +4 -4
- package/dist/cjs/Components/Inputs/InputChip/InputChip.js +2 -2
- package/dist/cjs/Components/Inputs/List/List.js +4 -4
- package/dist/cjs/Components/Inputs/MultiColumnList/MultiColumnList.parts.js +2 -2
- package/dist/cjs/Components/Inputs/Radio/Radio.js +21 -15
- package/dist/cjs/Components/Inputs/RadioCard/RadioCard.js +4 -4
- package/dist/cjs/Components/Inputs/RadioCard/RadioCard.parts.js +4 -4
- package/dist/cjs/Components/Inputs/RadioGroup/RadioGroup.js +3 -3
- package/dist/cjs/Components/Inputs/RadioList/RadioList.js +3 -3
- package/dist/cjs/Components/Inputs/RadioListItem/RadioListItem.js +5 -0
- package/dist/cjs/Components/Inputs/RangeSlider/RangeSlider.js +5 -5
- package/dist/cjs/Components/Inputs/SearchField/SearchField.js +5 -5
- package/dist/cjs/Components/Inputs/SegmentedControl/SegmentedControl.js +1 -1
- package/dist/cjs/Components/Inputs/SupportTextContainer/SupportTextContainer.js +3 -3
- package/dist/cjs/Components/Inputs/TextButton/TextButton.js +7 -5
- package/dist/cjs/Components/Inputs/TextButtonDropdown/TextButtonDropdown.js +1 -1
- package/dist/cjs/Components/Inputs/TextButtonDropdown/TextButtonDropdown.parts.js +4 -4
- package/dist/cjs/Components/Inputs/TextField/TextField.js +10 -12
- package/dist/cjs/Components/Inputs/TextFieldContainer/TextFieldContainer.js +1 -1
- package/dist/cjs/Components/Inputs/TextFieldDropdown/TextFieldDropdown.js +3 -3
- package/dist/cjs/Components/Inputs/TextFieldDropdown/TextFieldDropdown.parts.js +2 -2
- package/dist/cjs/Components/Inputs/Textarea/Textarea.js +5 -5
- package/dist/cjs/Components/Navigations/BoxTab/BoxTab.parts.js +1 -1
- package/dist/cjs/Components/Navigations/GNBList/GNBList.js +27 -27
- package/dist/cjs/Components/Navigations/GNBList/GNBList.parts.js +40 -16
- package/dist/cjs/Components/Navigations/Menu/Menu.js +2 -2
- package/dist/cjs/Components/Navigations/Pagination/Pagination.parts.js +2 -2
- package/dist/cjs/Components/Navigations/TableOfContents/TableOfContents.js +1 -1
- package/dist/cjs/Components/Navigations/TextLink/TextLink.js +61 -0
- package/dist/cjs/Components/Navigations/TextTab/TextTab.parts.js +5 -5
- package/dist/cjs/Components/Wrappers/WithBadge/WithBadge.js +1 -1
- package/dist/cjs/Components/Wrappers/WithSnackBar/WithSnackBar.js +2 -2
- package/dist/cjs/constants/colors/colors.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/config/config.css +215 -0
- package/dist/config/tailwind.config.js +1 -64
- package/dist/config/tailwindcss-grid-areas.js +155 -0
- package/dist/constants/colors/colors.js +1 -1
- package/dist/index.js +1 -1
- package/dist/types/checkbox.types.d.ts +0 -2
- package/dist/types/index.d.ts +0 -1
- package/package.json +32 -16
- package/dist/Components/Feedbacks/PlainTooltip/PlainTooltip.d.ts +0 -44
- package/dist/Components/Feedbacks/PlainTooltip/PlainTooltip.js +0 -37
- package/dist/Components/Feedbacks/PlainTooltip/PlainTooltip.parts.js +0 -1
- package/dist/Components/Feedbacks/PlainTooltip/index.d.ts +0 -2
- package/dist/Components/Feedbacks/RichTooltip/RichTooltip.d.ts +0 -34
- package/dist/Components/Feedbacks/RichTooltip/RichTooltip.js +0 -27
- package/dist/Components/Feedbacks/RichTooltip/index.d.ts +0 -2
- package/dist/Components/Inputs/Button/Button.parts.d.ts +0 -2
- package/dist/Components/Inputs/Button/Button.parts.js +0 -2
- package/dist/Components/Inputs/Input/LableInput.d.ts +0 -9
- package/dist/Components/Inputs/Radio/Radio.types.d.ts +0 -8
- package/dist/Components/Inputs/RadioList/parts/RadioListItem.d.ts +0 -13
- package/dist/Components/Inputs/RadioList/parts/RadioListItem.js +0 -4
- package/dist/Components/Wrappers/WithRichTooltip/WithRichTooltip.d.ts +0 -39
- package/dist/Components/Wrappers/WithRichTooltip/WithRichTooltip.js +0 -32
- package/dist/Components/Wrappers/WithRichTooltip/index.d.ts +0 -1
- package/dist/cjs/Components/Feedbacks/PlainTooltip/PlainTooltip.js +0 -37
- package/dist/cjs/Components/Feedbacks/PlainTooltip/PlainTooltip.parts.js +0 -1
- package/dist/cjs/Components/Feedbacks/RichTooltip/RichTooltip.js +0 -1
- package/dist/cjs/Components/Inputs/Button/Button.parts.js +0 -2
- package/dist/cjs/Components/Inputs/Input/LableInput.js +0 -4
- package/dist/cjs/Components/Inputs/RadioList/parts/RadioListItem.js +0 -4
- package/dist/cjs/Components/Wrappers/WithRichTooltip/WithRichTooltip.js +0 -3
- package/dist/config/tailwind-plugins.js +0 -90
- package/dist/types/radio.types.d.ts +0 -7
- package/dist/types.d.ts +0 -32
|
@@ -0,0 +1,58 @@
|
|
|
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
|
+
/**
|
|
3
|
+
* 아코디언 컨테이너 컴포넌트
|
|
4
|
+
*
|
|
5
|
+
* @description
|
|
6
|
+
* 여러 개의 접을 수 있는 콘텐츠 섹션을 관리하는 컨테이너입니다.
|
|
7
|
+
* Compound Component 패턴을 사용하여 Accordion.Item과 함께 사용합니다.
|
|
8
|
+
*
|
|
9
|
+
* @param {React.ReactNode} children - Accordion.Item 컴포넌트들
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Accordion>
|
|
14
|
+
* <Accordion.Item title="첫 번째 섹션">
|
|
15
|
+
* <p>첫 번째 섹션의 내용</p>
|
|
16
|
+
* </Accordion.Item>
|
|
17
|
+
* <Accordion.Item title="두 번째 섹션">
|
|
18
|
+
* <p>두 번째 섹션의 내용</p>
|
|
19
|
+
* </Accordion.Item>
|
|
20
|
+
* </Accordion>
|
|
21
|
+
* ```
|
|
22
|
+
*/const n=({children:r})=>/*#__PURE__*/e.jsx(o.Box,{className:"flex w-full flex-col gap-6 p-6",children:r});
|
|
23
|
+
/**
|
|
24
|
+
* 아코디언의 개별 아이템 컴포넌트
|
|
25
|
+
*
|
|
26
|
+
* @description
|
|
27
|
+
* 클릭 가능한 제목과 접을 수 있는 콘텐츠 영역을 제공합니다.
|
|
28
|
+
* 선택적으로 하단에 링크를 추가할 수 있습니다.
|
|
29
|
+
*
|
|
30
|
+
* @param {string} title - 아코디언 아이템의 제목
|
|
31
|
+
* @param {string} href - 링크 대상 URL (linkText와 함께 사용)
|
|
32
|
+
* @param {string} linkText - 링크에 표시될 텍스트 (href와 함께 사용)
|
|
33
|
+
* @param {'_blank' | '_self'} linkTarget - 링크 타겟 설정 ('_blank' | '_self')
|
|
34
|
+
* @param {React.ReactNode} children - 아코디언 아이템의 콘텐츠
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```tsx
|
|
38
|
+
* // 기본 사용법
|
|
39
|
+
* <Accordion.Item title="제목">
|
|
40
|
+
* <p>콘텐츠 내용</p>
|
|
41
|
+
* </Accordion.Item>
|
|
42
|
+
*
|
|
43
|
+
* // 링크가 포함된 아이템
|
|
44
|
+
* <Accordion.Item
|
|
45
|
+
* title="제목"
|
|
46
|
+
* href="/detail"
|
|
47
|
+
* linkText="자세히 보기"
|
|
48
|
+
* linkTarget="_blank"
|
|
49
|
+
* >
|
|
50
|
+
* <p>콘텐츠 내용</p>
|
|
51
|
+
* </Accordion.Item>
|
|
52
|
+
* ```
|
|
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"),
|
|
2
|
-
return e.jsxs(i.Box,{className:t.twMerge("relative z-0 h-fit w-fit",l&&"cursor-pointer"),onClick:
|
|
3
|
-
/*#__PURE__*/e.jsx(i.Box,{"data-testid":"design-system-avatar--container",className:t.twMerge(
|
|
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"),
|
|
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?"
|
|
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
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("tailwind-merge");function t(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function n(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 c(e,r){if(null==e)return{};var t,n,c=function(e,r){if(null==e)return{};var t,n,c={},o=Object.keys(e);for(n=0;n<o.length;n++)t=o[n],r.indexOf(t)>=0||(c[t]=e[t]);return c}(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)&&(c[t]=e[t])}return c}const o=()=>/*#__PURE__*/e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"3",height:"3",viewBox:"0 0 3 3",fill:"none",className:"shrink-0",children:/*#__PURE__*/e.jsx("circle",{cx:"1.5",cy:"1.5",r:"1.5",fill:"currentColor"})});
|
|
2
2
|
/**
|
|
3
3
|
* 리스트 아이템 컴포넌트입니다.
|
|
4
4
|
*
|
|
5
5
|
* @param {Object} props - 컴포넌트 프로퍼티
|
|
6
|
-
* @param {Variant} [props.variant] - 텍스트 타이포그래피 variant (기본값:
|
|
6
|
+
* @param {Variant} [props.variant] - 텍스트 타이포그래피 variant (기본값: body16)
|
|
7
7
|
* @param {string} [props.bulletClassName] - 리스트 아이템 불릿 클래스명 (기본값: 'text-w-bluegray-300')
|
|
8
8
|
* @param {number} [props.bulletSize] - 리스트 아이템 불릿 크기 (지름, 기본값: 3)
|
|
9
9
|
* @param {number} [props.gap] - 불릿과 children 간격 (기본값: 2)
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* <Li>내용을 적어줍니다.</Li>
|
|
15
15
|
*
|
|
16
16
|
* // 타이포그래피 variant 변경
|
|
17
|
-
* <Li variant="
|
|
17
|
+
* <Li variant="title28">내용을 적어줍니다.</Li>
|
|
18
18
|
*
|
|
19
19
|
* // 불릿 색상 조절
|
|
20
20
|
* <Li bulletClassName="text-w-red-800">내용을 적어줍니다.</Li>
|
|
@@ -28,8 +28,7 @@
|
|
|
28
28
|
* // 커스텀 클래스와 함께 사용
|
|
29
29
|
* <Li className="text-w-red-800">내용을 적어줍니다.</Li>
|
|
30
30
|
*
|
|
31
|
-
*/
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
/*#__PURE__*/e.jsx(
|
|
35
|
-
/*#__PURE__*/e.jsx("span",{children:i})]}),exports.typographyStyles=l;
|
|
31
|
+
*/exports.Bullet=o,exports.default=l=>{var{children:i,className:s}=l,u=c(l,["children","className"]);const a=`${(null==s?void 0:s.includes("typo-"))?"":"typo-body14"} ${s||""}`.trim();/*#__PURE__*/
|
|
32
|
+
return e.jsxs("li",n(function(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{},c=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(c=c.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),c.forEach((function(r){t(e,r,n[r])}))}return e}({className:r.twMerge("flex gap-2 text-w-gray-500",a)},u),{children:[
|
|
33
|
+
/*#__PURE__*/e.jsx("span",{className:"inline-flex h-[1lh] shrink-0 items-center",children:/*#__PURE__*/e.jsx(o,{})}),
|
|
34
|
+
/*#__PURE__*/e.jsx("span",{children:i})]}))};
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
"use strict";var e=require("react/jsx-runtime"),r=require("./ProductIcon.constants.js");function t(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}exports.ProductIcon=({name:n,disabled:c=!1,size:o})=>{const u=c=>{const o=r.productIcons.get(n);return o&&/*#__PURE__*/e.jsx(o,function(e){for(var r=1;r<arguments.length;r++){var n=null!=arguments[r]?arguments[r]:{},c=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(c=c.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),c.forEach((function(r){t(e,r,n[r])}))}return e}
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* @param {Object} props - 컴포넌트 속성
|
|
6
|
-
* @param {ProductIconName} props.name - 표시할 아이콘의 이름
|
|
7
|
-
* @param {boolean} [props.disabled=false] - 아이콘의 비활성화 상태 여부
|
|
8
|
-
* @param {'small' | 'medium' | 'large'} [props.size] - 아이콘의 크기. 지정하지 않으면 아이콘 이름에 따라 자동으로 결정됨
|
|
9
|
-
* @returns {JSX.Element} 제품 아이콘 컴포넌트
|
|
3
|
+
* 타입 가드 함수: name이 LargeProductIconName인지 확인합니다.
|
|
10
4
|
*/({},c))};/*#__PURE__*/
|
|
11
|
-
return e.jsx(u,{disabled:c,size:o||(r.LargeProductIconNames.includes(n)?"large":r.MediumProductIconNames.includes(n)?"medium":r.SmallProductIconNames.includes(n)?"small":void 0)})};
|
|
5
|
+
return e.jsx(u,{disabled:c,size:o||((e=>r.LargeProductIconNames.includes(e))(n)?"large":(e=>r.MediumProductIconNames.includes(e))(n)?"medium":(e=>r.SmallProductIconNames.includes(e))(n)?"small":void 0)})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),s=require("tailwind-merge"),r=require("../../Base/Typography/Typography.js"),t=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");exports.Icon=({className:r,iconUrl:t})=>/*#__PURE__*/e.jsx("img",{"data-testid":"design-system-skill-chip--icon",src:t,alt:"icon",width:24,height:24,className:s.twMerge("size-6 shrink-0 rounded-full object-cover",r)}),exports.Root=({children:r,className:a})=>/*#__PURE__*/e.jsx(t.Box,{"data-testid":"design-system-skill-chip",className:s.twMerge("flex h-9 w-fit shrink-0 select-none items-center gap-2 rounded-xl border border-w-gray-200 py-[5px] pl-[7px] pr-[15px]",a),children:r}),exports.Text=({children:t,className:a})=>/*#__PURE__*/e.jsx(r.Typography,{variant:"
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),s=require("tailwind-merge"),r=require("../../Base/Typography/Typography.js"),t=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");exports.Icon=({className:r,iconUrl:t})=>/*#__PURE__*/e.jsx("img",{"data-testid":"design-system-skill-chip--icon",src:t,alt:"icon",width:24,height:24,className:s.twMerge("size-6 shrink-0 rounded-full object-cover",r)}),exports.Root=({children:r,className:a})=>/*#__PURE__*/e.jsx(t.Box,{"data-testid":"design-system-skill-chip",className:s.twMerge("flex h-9 w-fit shrink-0 select-none items-center gap-2 rounded-xl border border-w-gray-200 py-[5px] pl-[7px] pr-[15px]",a),children:r}),exports.Text=({children:t,className:a})=>/*#__PURE__*/e.jsx(r.Typography,{variant:"body14",className:s.twMerge("text-w-gray-900",a),children:t});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var
|
|
2
|
-
/*#__PURE__*/
|
|
3
|
-
/*#__PURE__*/
|
|
4
|
-
/*#__PURE__*/
|
|
1
|
+
"use strict";var t=require("react/jsx-runtime");exports.LargeUserImageAvatar=({testId:e,className:i})=>/*#__PURE__*/t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",className:i,"data-testid":e,children:[
|
|
2
|
+
/*#__PURE__*/t.jsx("rect",{width:"24",height:"24",fill:"currentColor"}),
|
|
3
|
+
/*#__PURE__*/t.jsx("circle",{cx:"12",cy:"9",r:"4.5",fill:"white",opacity:"0.85"}),
|
|
4
|
+
/*#__PURE__*/t.jsx("path",{d:"M3 21.75C3 18.0221 6.02208 15 9.75 15H14.25C17.9779 15 21 18.0221 21 21.75V24H3V21.75Z",fill:"white",opacity:"0.85"})]});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";"use strict";var e=require("react/jsx-runtime"),r=require("tailwind-merge"),a=require("../../Base/Typography/Typography.js"),o=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");var s=require("../../Inputs/Button/Button.js");exports.DialogBox=({title:l,description:t,variant:i="primary",onClose:n,onConfirm:c,confirm:u,close:d="닫기",testId:g})=>{const x="caution"===i;/*#__PURE__*/
|
|
2
2
|
return e.jsxs(o.Box,{className:"flex h-fit flex-col items-center gap-8 rounded-3xl bg-w-white p-8 font-normal not-italic shadow-modal tablet:w-[400px]","data-testid":g||"design-system--dialog-box",children:[
|
|
3
3
|
/*#__PURE__*/e.jsxs(o.Box,{className:"flex w-full flex-col gap-6",children:[
|
|
4
|
-
/*#__PURE__*/e.jsx(a.Typography,{variant:"
|
|
5
|
-
/*#__PURE__*/e.jsx(a.Typography,{variant:"
|
|
4
|
+
/*#__PURE__*/e.jsx(a.Typography,{variant:"subTitle18",className:"font-medium text-w-gray-900",children:l}),
|
|
5
|
+
/*#__PURE__*/e.jsx(a.Typography,{variant:"body16",className:"whitespace-break-spaces text-w-gray-800",children:t})]}),
|
|
6
6
|
/*#__PURE__*/e.jsxs(o.Box,{className:"flex w-full items-center justify-end gap-4",children:[d&&/*#__PURE__*/e.jsx(s.Button,{role:"close",onClick:n,variant:"solid",className:"border-w-bluegray-200 bg-w-bluegray-200 hover:border-w-bluegray-300 hover:bg-w-bluegray-300",children:d}),u&&/*#__PURE__*/e.jsx(s.Button,{role:"confirm",onClick:c,variant:"solid",className:r.twJoin(x&&"border-w-orange-500 bg-w-orange-500 hover:border-w-orange-600 hover:bg-w-orange-600"),children:u})]})]})};
|
|
@@ -1,5 +1,28 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime")
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),i=require("tailwind-merge"),r=require("../../Base/Layouts/Box/Box.js"),t=require("./LoadingIndicator.parts.js");
|
|
2
|
+
/**
|
|
3
|
+
* 로딩 상태를 표시하는 애니메이션 인디케이터 컴포넌트입니다.
|
|
4
|
+
* 세 개의 점이 순차적으로 페이드 인/아웃되는 애니메이션을 보여줍니다.
|
|
5
|
+
*
|
|
6
|
+
* @param {Object} props - 컴포넌트 프로퍼티
|
|
7
|
+
* @param {('primary'|'white'|'gray')} [props.variant='primary'] - 로딩 인디케이터의 색상 변형
|
|
8
|
+
* @param {boolean} [props.isFixed=false] - true일 경우 position: fixed, false일 경우 position: absolute로 설정됩니다.
|
|
9
|
+
* @param {('sm'|'md'|'lg')} [props.size='md'] - 로딩 인디케이터의 크기를 설정합니다.
|
|
10
|
+
* @param {string} [props.ariaLabel='로딩 중'] - 스크린 리더를 위한 로딩 상태 설명
|
|
11
|
+
* @param {string} [props.className] - 추가적인 CSS 클래스를 적용할 수 있습니다.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // 기본 사용
|
|
15
|
+
* <LoadingIndicator />
|
|
16
|
+
*
|
|
17
|
+
* // 고정 위치에 큰 크기로 표시
|
|
18
|
+
* <LoadingIndicator isFixed size="lg" />
|
|
19
|
+
*
|
|
20
|
+
* // 커스텀 클래스 적용
|
|
21
|
+
* <LoadingIndicator className="text-blue-500" />
|
|
22
|
+
*
|
|
23
|
+
*/
|
|
24
|
+
const a={primary:"text-primary",white:"text-w-white",gray:"text-w-gray-400"};exports.LoadingIndicator=({variant:s="primary",isFixed:n=!1,size:l="md",ariaLabel:c="로딩 중",className:o})=>{const{width:u,height:d,viewBox:x,circle:g,r:m}=t.SIZES[l],h=a[s];/*#__PURE__*/
|
|
25
|
+
return e.jsx(r.Box,{role:"status","aria-live":"polite","aria-label":c,"aria-busy":"true",className:i.twMerge("left-1/2 top-1/2 aspect-square -translate-x-1/2 -translate-y-1/2",n?"fixed":"absolute",t.generateBoxSize(l)),children:/*#__PURE__*/e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true","data-testid":"loading-indicator-svg",width:u,height:d,viewBox:x,fill:"none",className:i.twMerge(h,o),children:[
|
|
26
|
+
/*#__PURE__*/e.jsx("circle",{cx:g[0],cy:g[1],r:m,fill:"currentColor",children:/*#__PURE__*/e.jsx("animate",{attributeName:"opacity",values:"1; 1; 0.5; 0.25; 0.25;",dur:"0.9s",repeatCount:"indefinite",begin:"0s"})}),
|
|
27
|
+
/*#__PURE__*/e.jsx("circle",{cx:g[1],cy:g[1],r:m,fill:"currentColor",children:/*#__PURE__*/e.jsx("animate",{attributeName:"opacity",values:"1; 1; 0.5; 0.25; 0.25;",dur:"0.9s",repeatCount:"indefinite",begin:"0.3s"})}),
|
|
28
|
+
/*#__PURE__*/e.jsx("circle",{cx:g[2],cy:g[1],r:m,fill:"currentColor",children:/*#__PURE__*/e.jsx("animate",{attributeName:"opacity",values:"1; 1; 0.5; 0.25; 0.25;",dur:"0.9s",repeatCount:"indefinite",begin:"0.6s"})})]})})};
|
|
@@ -1,5 +1,47 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),s=require("tailwind-merge"),
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),s=require("tailwind-merge"),a=require("../../Base/Typography/Typography.js"),r=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js"),require("../../DataDisplays/Avatar/Avatar.js"),require("react"),require("../../DataDisplays/SystemIcon/SystemIcon.constants.js");var t=require("../../DataDisplays/ProductIcon/ProductIcon.js");require("../../DataDisplays/Accordion/Accordion.js");var i=require("../../Inputs/Button/Button.js");
|
|
2
|
+
/**
|
|
3
|
+
* 사용자에게 정보를 표시하는 메시지 바 컴포넌트입니다.
|
|
4
|
+
*
|
|
5
|
+
* @component
|
|
6
|
+
*
|
|
7
|
+
* @param {Object} props
|
|
8
|
+
* @param {'primary' | 'white'} props.variant - 메시지 바의 스타일 변형. 'primary' 또는 'white' 중 선택
|
|
9
|
+
* @param {(typeof MediumProductIconNames)[number]} props.icon - 메시지 바에 표시될 ProductIcon 이름
|
|
10
|
+
* ('person_smile', 'lock', 'logout', 'contract_pen', 'paper_pen', 'paper_hold' 등)
|
|
11
|
+
* @param {string} [props.title] - 메시지 바의 제목 (선택사항)
|
|
12
|
+
* @param {string} props.text - 메시지 바에 표시될 본문 텍스트
|
|
13
|
+
* @param {string} [props.buttonName] - 버튼에 표시될 텍스트 (선택사항)
|
|
14
|
+
* @param {() => void} [props.onClick] - 버튼 클릭 시 실행될 콜백 함수 (선택사항)
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* // 기본 사용 예시
|
|
18
|
+
* <MessageBar
|
|
19
|
+
* variant="primary"
|
|
20
|
+
* icon="person_smile"
|
|
21
|
+
* title="알림"
|
|
22
|
+
* text="새로운 메시지가 도착했습니다."
|
|
23
|
+
* buttonName="확인"
|
|
24
|
+
* onClick={() => console.log('버튼이 클릭되었습니다')}
|
|
25
|
+
* />
|
|
26
|
+
*
|
|
27
|
+
* // 제목과 버튼이 없는 간단한 메시지
|
|
28
|
+
* <MessageBar
|
|
29
|
+
* variant="white"
|
|
30
|
+
* icon="paper_pen"
|
|
31
|
+
* text="작업이 성공적으로 완료되었습니다."
|
|
32
|
+
* />
|
|
33
|
+
*
|
|
34
|
+
* // 보안 관련 메시지
|
|
35
|
+
* <MessageBar
|
|
36
|
+
* variant="primary"
|
|
37
|
+
* icon="lock"
|
|
38
|
+
* title="보안 알림"
|
|
39
|
+
* text="계정의 보안을 위해 비밀번호를 변경해주세요."
|
|
40
|
+
* buttonName="비밀번호 변경"
|
|
41
|
+
* onClick={() => handlePasswordChange()}
|
|
42
|
+
* />
|
|
43
|
+
*/exports.MessageBar=({variant:n="primary",icon:o,title:d,text:l,buttonName:c,onClick:u})=>{const m="primary"===n,y="white"===n;/*#__PURE__*/
|
|
44
|
+
return e.jsxs(r.Box,{"data-testid":"design-system-message-bar",className:s.twMerge("flex w-full items-center gap-5 rounded-2xl border px-8 py-5",m&&"border-primary-100 bg-primary-10",y&&"border-w-gray-200 bg-white"),children:[
|
|
45
|
+
/*#__PURE__*/e.jsx(r.Box,{className:"shrink-0","data-testid":"design-system-message-bar--icon",children:/*#__PURE__*/e.jsx(t.ProductIcon,{name:o,size:"medium"})}),
|
|
46
|
+
/*#__PURE__*/e.jsxs(r.Box,{className:"flex w-full flex-col gap-1",children:[d&&/*#__PURE__*/e.jsx(a.Typography,{variant:"subTitle18",className:"font-medium text-w-gray-900","data-testid":"design-system-message-bar--title",children:d}),
|
|
47
|
+
/*#__PURE__*/e.jsx(a.Typography,{variant:"body16",className:"text-w-gray-600","data-testid":"design-system-message-bar--text",children:l})]}),c&&u&&/*#__PURE__*/e.jsx(i.Button,{variant:"outlined",size:"36",className:"shrink-0",onClick:u,"data-testid":"design-system-message-bar--button",children:c})]})};
|
|
@@ -1,6 +1,41 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime");require("
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime");require("../../DataDisplays/Avatar/Avatar.js"),require("tailwind-merge");var s=require("../../Base/Typography/Typography.js"),a=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js"),require("react"),require("../../DataDisplays/SystemIcon/SystemIcon.constants.js");var r=require("../../DataDisplays/ProductIcon/ProductIcon.js"),i=require("../../DataDisplays/Divider/Divider.js");require("../../DataDisplays/Accordion/Accordion.js");var t=require("./MessageBox.parts.js");
|
|
2
|
+
/**
|
|
3
|
+
* 아이콘, 제목, 설명, 외부 링크 등을 포함할 수 있는 메시지 박스 컴포넌트입니다.
|
|
4
|
+
*
|
|
5
|
+
* @component
|
|
6
|
+
* @param {Object} props - 컴포넌트 프로퍼티
|
|
7
|
+
* @param {ProductIconName} [props.icon] - 메시지 박스 상단에 표시될 아이콘
|
|
8
|
+
* @param {string} [props.title] - 메시지 박스의 제목
|
|
9
|
+
* @param {string} [props.description] - 메시지 박스의 설명 텍스트
|
|
10
|
+
* @param {ExternalLink[]} [props.links] - 메시지 박스 하단에 표시될 외부 링크 목록
|
|
11
|
+
* @param {React.ReactNode} [props.children] - 메시지 박스 내부에 표시될 자식 컴포넌트
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // 기본 사용 예시
|
|
15
|
+
* <MessageBox
|
|
16
|
+
* icon="info"
|
|
17
|
+
* title="알림 메시지"
|
|
18
|
+
* description="중요한 안내사항입니다."
|
|
19
|
+
* />
|
|
20
|
+
*
|
|
21
|
+
* // 외부 링크가 포함된 예시
|
|
22
|
+
* <MessageBox
|
|
23
|
+
* icon="warning"
|
|
24
|
+
* title="주의사항"
|
|
25
|
+
* description="다음 링크를 확인해주세요."
|
|
26
|
+
* links={[
|
|
27
|
+
* {
|
|
28
|
+
* text: "자세히 보기",
|
|
29
|
+
* href: "https://example.com",
|
|
30
|
+
* external: true
|
|
31
|
+
* }
|
|
32
|
+
* ]}
|
|
33
|
+
* >
|
|
34
|
+
* <CustomContent />
|
|
35
|
+
* </MessageBox>
|
|
36
|
+
*/exports.MessageBox=({icon:o,title:l,description:n,children:c,links:d})=>/*#__PURE__*/e.jsxs(a.Box,{className:"box-border flex h-auto flex-col rounded-3xl border border-w-gray-200","data-testid":"design-system-message-box--container",children:[
|
|
37
|
+
/*#__PURE__*/e.jsxs(a.Box,{className:"flex h-auto flex-col gap-4 p-6",children:[o&&/*#__PURE__*/e.jsx(a.Box,{className:"size-10 shrink-0",children:/*#__PURE__*/e.jsx(r.ProductIcon,{name:o,size:"medium"})}),
|
|
38
|
+
/*#__PURE__*/e.jsxs(a.Box,{className:"flex h-auto flex-col gap-1.5",children:[
|
|
39
|
+
/*#__PURE__*/e.jsx(s.Typography,{variant:"subTitle18",className:"whitespace-pre-line font-medium text-w-gray-900","data-testid":"design-system-message-box--title",children:l}),n&&/*#__PURE__*/e.jsx(s.Typography,{variant:"body16",className:"whitespace-pre-line font-normal text-w-gray-600","data-testid":"design-system-message-box--description",children:n}),c]})]}),d&&d.length>0&&/*#__PURE__*/e.jsxs(e.Fragment,{children:[
|
|
5
40
|
/*#__PURE__*/e.jsx(i.Divider,{}),
|
|
6
|
-
/*#__PURE__*/e.jsx(t.ExternalLinks,{links:
|
|
41
|
+
/*#__PURE__*/e.jsx(t.ExternalLinks,{links:d})]})]});
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime");require("
|
|
2
|
-
/*#__PURE__*/e.jsx(
|
|
3
|
-
/*#__PURE__*/e.jsx(
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime");require("../../DataDisplays/Avatar/Avatar.js"),require("tailwind-merge");var s=require("../../Base/Typography/Typography.js"),a=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js"),require("react");var r=require("../../DataDisplays/SystemIcon/SystemIcon.js");require("../../DataDisplays/SystemIcon/SystemIcon.constants.js"),require("../../DataDisplays/Accordion/Accordion.js");exports.ExternalLinks=({links:t})=>/*#__PURE__*/e.jsx(a.Box,{className:"flex h-auto w-full flex-col gap-3 p-6","data-testid":"design-system-message-box--external-links-container",children:null==t?void 0:t.map(((a,t)=>/*#__PURE__*/e.jsxs("a",{target:a.target||"_blank",href:a.url,className:"flex items-center justify-between text-w-gray-600 no-underline","data-testid":`design-system-message-box--external-links-item-${t}`,children:[
|
|
2
|
+
/*#__PURE__*/e.jsx(s.Typography,{variant:"body16",className:"hover:underline hover:underline-offset-2",children:a.title}),
|
|
3
|
+
/*#__PURE__*/e.jsx(r.SystemIcon,{name:"small_arrow_right"})]},`${a.title}-${a.url}`)))});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),s=require("tailwind-merge");require("
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),s=require("tailwind-merge");require("../../DataDisplays/Avatar/Avatar.js");var r=require("../../Base/Typography/Typography.js"),a=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js"),require("react");var t=require("../../DataDisplays/SystemIcon/SystemIcon.js");require("../../DataDisplays/SystemIcon/SystemIcon.constants.js"),require("../../DataDisplays/Accordion/Accordion.js");
|
|
2
2
|
/**
|
|
3
3
|
* 사용자에게 상태 메시지를 표시하는 스낵바 컴포넌트
|
|
4
4
|
*
|
|
@@ -21,13 +21,8 @@
|
|
|
21
21
|
* type="caution"
|
|
22
22
|
* onClose={() => console.log('스낵바 닫힘')}
|
|
23
23
|
* />
|
|
24
|
-
*/
|
|
25
|
-
return e.jsx(
|
|
26
|
-
return e.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
return e.jsx(a.SystemIcon,{name:"medium_caution",className:"text-caution",testId:"design-system-message-bar--caution-icon"});case n.messageType.Error:/*#__PURE__*/
|
|
30
|
-
return e.jsx(a.SystemIcon,{name:"medium_error",className:"text-error",testId:"design-system-message-bar--error-icon"});default:return null}};exports.SnackBar=({message:c,type:i,onClose:o})=>{const u=!!o;/*#__PURE__*/
|
|
31
|
-
return e.jsxs(t.Box,{"data-testid":"design-system-message-bar",className:s.twMerge((e=>{switch(e){case n.messageType.Information:case n.messageType.Success:return"bg-success-10 border-success-100";case n.messageType.Progress:return"bg-progress-10 border-progress-100";case n.messageType.Waiting:return"bg-waiting-10 border-waiting-100";case n.messageType.Caution:return"bg-caution-10 border-caution-100";case n.messageType.Error:return"bg-error-10 border-error-100";default:return""}})(i),"box-border flex w-full items-start justify-between gap-x-4 rounded-xl border px-6 py-4"),children:[
|
|
32
|
-
/*#__PURE__*/e.jsx(t.Box,{"data-testid":"design-system-message-bar--icon",className:"pt-[5px]",children:/*#__PURE__*/e.jsx(m,{type:i})}),
|
|
33
|
-
/*#__PURE__*/e.jsx(t.Box,{className:"w-full",children:/*#__PURE__*/e.jsx(r.Typography,{variant:"body1",className:"text-w-gray-600","data-testid":"design-system-message-bar--text",children:c})}),u&&/*#__PURE__*/e.jsx(t.Box,{onClick:o,"data-testid":"design-system-message-bar--close-button",className:"pt-[5px]",children:/*#__PURE__*/e.jsx(a.SystemIcon,{name:"medium_delete",className:"text-w-gray-400"})})]})};
|
|
24
|
+
*/
|
|
25
|
+
const o={information:{name:"medium_information",color:"text-success"},success:{name:"medium_success",color:"text-success"},progress:{name:"medium_success",color:"text-progress"},waiting:{name:"medium_wait",color:"text-waiting"},caution:{name:"medium_caution",color:"text-caution"},error:{name:"medium_error",color:"text-error"}},i={information:"bg-success-10 border-success-100",success:"bg-success-10 border-success-100",progress:"bg-progress-10 border-progress-100",waiting:"bg-waiting-10 border-waiting-100",caution:"bg-caution-10 border-caution-100",error:"bg-error-10 border-error-100"},c=({type:s})=>{const r=o[s];return r?/*#__PURE__*/e.jsx(t.SystemIcon,{name:r.name,className:r.color,testId:`design-system-message-bar--${s}-icon`}):null};exports.SnackBar=({message:o,type:n,onClose:m,className:u})=>{const l=!!m;/*#__PURE__*/
|
|
26
|
+
return e.jsxs(a.Box,{"data-testid":"design-system-message-bar",role:"alert",className:s.twMerge(i[n],"box-border flex w-full items-start justify-between gap-x-4 rounded-xl border px-6 py-4",u),children:[
|
|
27
|
+
/*#__PURE__*/e.jsx(a.Box,{"data-testid":"design-system-message-bar--icon",className:"pt-[5px]",children:/*#__PURE__*/e.jsx(c,{type:n})}),
|
|
28
|
+
/*#__PURE__*/e.jsx(a.Box,{className:"w-full",children:/*#__PURE__*/e.jsx(r.Typography,{variant:"body16",className:"text-w-gray-600","data-testid":"design-system-message-bar--text",children:o})}),l&&/*#__PURE__*/e.jsx("button",{type:"button","aria-label":"닫기",onClick:m,"data-testid":"design-system-message-bar--close-button",className:"pt-[5px]",children:/*#__PURE__*/e.jsx(t.SystemIcon,{name:"medium_delete",className:"text-w-gray-400"})})]})};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";var t=require("react/jsx-runtime"),e=require("tailwind-merge"),a=require("../../../Base/Typography/Typography.js"),o=require("../../../Base/Layouts/Box/Box.js");require("../../../Base/Layouts/FullBleed/FullBleed.js");var r=require("./PlainTooltip.parts.js");const s={up:{position:"bottom-full left-1/2 -translate-x-1/2 -translate-y-1",hover:"group-hover:-translate-y-3",focus:"max-tablet:group-focus-within:-translate-y-3"},down:{position:"left-1/2 top-full -translate-x-1/2 translate-y-1",hover:"group-hover:translate-y-3",focus:"max-tablet:group-focus-within:translate-y-3"},left:{position:"right-full top-1/2 -translate-y-1/2 -translate-x-1",hover:"group-hover:-translate-x-3",focus:"max-tablet:group-focus-within:-translate-x-3"},right:{position:"left-full top-1/2 -translate-y-1/2 translate-x-1",hover:"group-hover:translate-x-3",focus:"max-tablet:group-focus-within:translate-x-3"}};
|
|
2
|
+
/**
|
|
3
|
+
* 간단한 텍스트 툴팁을 표시하는 컴포넌트입니다.
|
|
4
|
+
*
|
|
5
|
+
* @component
|
|
6
|
+
* @param {Object} props
|
|
7
|
+
* @param {string} props.text - 툴팁에 표시될 텍스트
|
|
8
|
+
* @param {'up' | 'down' | 'left' | 'right'} [props.variant='up'] - 툴팁 표시 방향
|
|
9
|
+
* @param {string} [props.className] - 툴팁 컨테이너에 적용할 추가 클래스
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* // 기본 사용법
|
|
13
|
+
* <Tooltip>
|
|
14
|
+
* <Tooltip.Trigger>
|
|
15
|
+
* <button>마우스를 올려보세요</button>
|
|
16
|
+
* </Tooltip.Trigger>
|
|
17
|
+
* <Tooltip.Plain variant="up" text="도움말 내용" />
|
|
18
|
+
* </Tooltip>
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* // 방향 지정
|
|
22
|
+
* <Tooltip>
|
|
23
|
+
* <Tooltip.Trigger>
|
|
24
|
+
* <span>도움말</span>
|
|
25
|
+
* </Tooltip.Trigger>
|
|
26
|
+
* <Tooltip.Plain variant="right" text="오른쪽에 표시되는 툴팁" />
|
|
27
|
+
* </Tooltip>
|
|
28
|
+
*/exports.PlainTooltip=({id:i,text:l,variant:n="up",className:u})=>{const p=s[n];/*#__PURE__*/
|
|
29
|
+
return t.jsxs(o.Box,{className:e.twMerge("pointer-events-none absolute z-10 w-max select-none","invisible scale-95 opacity-0","transition-all duration-200 ease-in-out","group-hover:visible group-hover:scale-100 group-hover:opacity-100","max-tablet:group-focus-within:visible max-tablet:group-focus-within:scale-100 max-tablet:group-focus-within:opacity-100",p.position,p.hover,p.focus,u),role:"tooltip",id:i,"data-testid":"design-system-plain-toolTip--container",children:[
|
|
30
|
+
/*#__PURE__*/t.jsx(r.Arrow,{testId:"design-system-plain-toolTip--arrow",variant:n}),
|
|
31
|
+
/*#__PURE__*/t.jsx(o.Box,{className:"z-0 flex h-auto min-h-[28px] w-full items-center justify-center rounded-lg bg-w-black px-3 py-1 text-center",children:/*#__PURE__*/t.jsx(a.Typography,{variant:"body13",className:"whitespace-pre text-wrap break-all font-medium text-w-white opacity-100",children:l})})]})};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var t=require("react/jsx-runtime");require("react");var e=require("tailwind-merge");exports.Arrow=({testId:r,variant:a})=>/*#__PURE__*/t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"5",height:"10",viewBox:"0 0 5 10",fill:"none","data-testid":r,className:e.twJoin("absolute z-10","up"===a&&"-bottom-[7px] left-1/2 -translate-x-1/2 -rotate-90","down"===a&&"-top-[7px] left-1/2 -translate-x-1/2 rotate-90","left"===a&&"-right-[5px] top-1/2 -translate-y-1/2 rotate-180","right"===a&&"-left-[5px] top-1/2 -translate-y-1/2 rotate-0"),children:/*#__PURE__*/t.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.96244e-08 5L5 -1.10263e-07L5 10L5.96244e-08 5Z",fill:"black"})});
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge"),i=require("../../../Base/Typography/Typography.js"),o=require("../../../Base/Layouts/Box/Box.js");require("../../../Base/Layouts/FullBleed/FullBleed.js");const s={right:{position:"top-0 left-[calc(100%_+_4px)]",hover:"group-hover:left-[calc(100%_+_12px)]",focus:"max-tablet:group-focus-within:left-[calc(100%_+_12px)]"},down:{position:"left-0 top-[calc(100%_+_4px)]",hover:"group-hover:top-[calc(100%_+_12px)]",focus:"max-tablet:group-focus-within:top-[calc(100%_+_12px)]"}};
|
|
2
|
+
/**
|
|
3
|
+
* 제목과 설명을 포함할 수 있는 리치 툴팁 컴포넌트입니다.
|
|
4
|
+
*
|
|
5
|
+
* @component
|
|
6
|
+
* @param {object} props - 컴포넌트 프로퍼티
|
|
7
|
+
* @param {string} [props.title] - 툴팁의 제목
|
|
8
|
+
* @param {string} [props.description] - 툴팁의 상세 설명
|
|
9
|
+
* @param {'right' | 'down'} [props.variant='right'] - 툴팁 표시 방향
|
|
10
|
+
* @param {string} [props.className] - 추가적인 CSS 클래스
|
|
11
|
+
* @param {React.ReactNode} [props.children] - 자식 컴포넌트
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // 기본 사용법
|
|
15
|
+
* <Tooltip>
|
|
16
|
+
* <Tooltip.Trigger>
|
|
17
|
+
* <SystemIcon name="medium_information" />
|
|
18
|
+
* </Tooltip.Trigger>
|
|
19
|
+
* <Tooltip.Rich variant="right" title="알림" description="새로운 메시지가 도착했습니다.">
|
|
20
|
+
* <button>확인</button>
|
|
21
|
+
* </Tooltip.Rich>
|
|
22
|
+
* </Tooltip>
|
|
23
|
+
*
|
|
24
|
+
* // 아래로 표시
|
|
25
|
+
* <Tooltip>
|
|
26
|
+
* <Tooltip.Trigger>
|
|
27
|
+
* <SystemIcon name="medium_information" />
|
|
28
|
+
* </Tooltip.Trigger>
|
|
29
|
+
* <Tooltip.Rich variant="down" title="경고" description="저장되지 않은 변경사항이 있습니다." />
|
|
30
|
+
* </Tooltip>
|
|
31
|
+
*/exports.RichTooltip=({id:a,title:r,description:l,variant:c="right",className:p,children:n})=>{const u=s[c];/*#__PURE__*/
|
|
32
|
+
return e.jsx(o.Box,{className:t.twMerge("absolute z-10","invisible scale-95 opacity-0","transition-all duration-200 ease-in-out","group-hover:visible group-hover:scale-100 group-hover:opacity-100","max-tablet:group-focus-within:visible max-tablet:group-focus-within:scale-100 max-tablet:group-focus-within:opacity-100",u.position,u.hover,u.focus),role:"tooltip",id:a,"data-testid":"design-system-rich-tooltip--container",children:/*#__PURE__*/e.jsxs(o.Box,{className:t.twMerge("flex min-w-80 flex-col gap-1 rounded-xl bg-white px-6 py-5 shadow-graymedium",p),"data-testid":"design-system-rich-tooltip",children:[r&&/*#__PURE__*/e.jsx(o.Box,{className:"flex w-full items-start justify-between gap-4","data-testid":"design-system-rich-tooltip--title",children:/*#__PURE__*/e.jsx(i.Typography,{variant:"body14",className:"font-medium text-w-gray-900",children:r})}),l&&/*#__PURE__*/e.jsx(i.Typography,{variant:"body13",className:"text-w-gray-400","data-testid":"design-system-rich-tooltip--description",children:l}),n]})})};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use client";"use strict";var e=require("react/jsx-runtime"),i=require("tailwind-merge"),t=require("../../Base/Layouts/Box/Box.js");require("../../Base/Layouts/FullBleed/FullBleed.js");var l=require("./PlainTooltip/PlainTooltip.js"),s=require("./RichTooltip/RichTooltip.js");
|
|
2
|
+
/**
|
|
3
|
+
* 툴팁의 루트 컴포넌트입니다.
|
|
4
|
+
* CSS 기반 hover와 focus로 동작합니다.
|
|
5
|
+
*
|
|
6
|
+
* @param {TooltipProps} props - 툴팁 컴포넌트의 프로퍼티
|
|
7
|
+
* @param {string} props.className - 툴팁 컴포넌트의 클래스 이름
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* <Tooltip>
|
|
11
|
+
* <Tooltip.Trigger>
|
|
12
|
+
* <button>버튼</button>
|
|
13
|
+
* </Tooltip.Trigger>
|
|
14
|
+
* <Tooltip.Plain variant="up" text="간단한 툴팁" />
|
|
15
|
+
* </Tooltip>
|
|
16
|
+
*/
|
|
17
|
+
const o=({children:l,className:s})=>/*#__PURE__*/e.jsx(t.Box,{className:i.twMerge("group relative inline-block h-fit w-fit",s),"data-testid":"design-system-tooltip",children:l});
|
|
18
|
+
/**
|
|
19
|
+
* 툴팁 트리거 컴포넌트입니다.
|
|
20
|
+
* 데스크톱에서는 CSS hover로, 모바일에서는 터치(focus)로 툴팁을 표시합니다.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* <Tooltip.Trigger>
|
|
24
|
+
* <SystemIcon name="medium_information" />
|
|
25
|
+
* </Tooltip.Trigger>
|
|
26
|
+
*/o.Trigger=({children:i})=>/*#__PURE__*/e.jsx(t.Box,{"data-testid":"design-system-tooltip--trigger",className:"focus:outline-hidden h-fit w-fit",tabIndex:0,children:i}),o.Plain=l.PlainTooltip,o.Rich=s.RichTooltip,exports.Tooltip=o;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use client";"use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge"),r=require("react")
|
|
1
|
+
"use client";"use strict";var e=require("react/jsx-runtime"),t=require("tailwind-merge"),r=require("react");require("../../DataDisplays/Avatar/Avatar.js"),require("../../Base/Layouts/Box/Box.js"),require("../../Base/Layouts/FullBleed/FullBleed.js");var n=require("../../DataDisplays/SystemIcon/SystemIcon.js");require("../../DataDisplays/SystemIcon/SystemIcon.constants.js");var s=require("../../DataDisplays/Divider/Divider.js");require("../../DataDisplays/Accordion/Accordion.js");var i=require("./AutoCompleteList.parts.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 l(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 c(e,t){if(null==e)return{};var r,n,s=function(e,t){if(null==e)return{};var r,n,s={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(s[r]=e[r]);return s}
|
|
2
2
|
/**
|
|
3
3
|
* 자동완성 목록의 Root 컴포넌트입니다.
|
|
4
4
|
* 자동완성 항목들을 감싸는 컨테이너 역할을 합니다.
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
* />
|
|
22
22
|
* </AutoCompleteList.Root>
|
|
23
23
|
* ```
|
|
24
|
-
*/(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s}const u={Root:n=>{var{children:s,className:o,hasIndexBar:u=!1,onIndexClick:p}=n,d=
|
|
25
|
-
/*#__PURE__*/e.jsx("ul",{ref:y,"data-testid":"design-system-autoCompleteList",className:t.twMerge("flex w-full flex-col bg-w-white py-2 pr-2","overflow-y-auto
|
|
26
|
-
return e.jsxs("li",
|
|
24
|
+
*/(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(s[r]=e[r])}return s}const u={Root:n=>{var{children:s,className:o,hasIndexBar:u=!1,onIndexClick:p}=n,d=c(n,["children","className","hasIndexBar","onIndexClick"]);const y=r.useRef(null),[m,f]=r.useState(!1);return r.useLayoutEffect((()=>{const e=y.current;if(!e)return;const{scrollHeight:t,clientHeight:r}=e;f(t>r)}),[s]),/*#__PURE__*/e.jsxs("div",l(a({className:t.twMerge("flex max-h-[436px] w-full rounded-xl shadow-graymedium",o)},d),{children:[u&&/*#__PURE__*/e.jsx(i.IndexBar,{onIndexClick:p}),
|
|
25
|
+
/*#__PURE__*/e.jsx("ul",{ref:y,"data-testid":"design-system-autoCompleteList",className:t.twMerge("flex w-full flex-col bg-w-white py-2 pr-2","scrollbar-list overflow-y-auto",u?"rounded-r-xl":"rounded-xl",m&&"pr-0"),children:s})]}))},Item:r=>{var{text:s,count:o,leadingIcon:u,iconUrl:p,isInputItem:d=!1,isFocused:y=!1,inputValue:m,className:f}=r,x=c(r,["text","count","leadingIcon","iconUrl","isInputItem","isFocused","inputValue","className"]);/*#__PURE__*/
|
|
26
|
+
return e.jsxs("li",l(a({className:t.twMerge("visible ml-2 flex cursor-pointer select-none items-center gap-2 rounded-xl bg-w-white px-4 py-3 hover:bg-primary-10",y&&"bg-primary-10",f)},x),{"data-testid":"design-system-list-item",children:[u&&/*#__PURE__*/e.jsx(n.SystemIcon,{name:u,className:"text-w-gray-600",testId:"design-system-list-item-leading-icon"}),p&&/*#__PURE__*/e.jsx(i.Icon,{iconUrl:p}),
|
|
27
27
|
/*#__PURE__*/e.jsx(i.TextSection,{text:s,isInputItem:d,inputValue:m}),
|
|
28
28
|
/*#__PURE__*/e.jsx(i.CountSection,{count:o})]}))},Divider:()=>/*#__PURE__*/e.jsx(s.Divider,{className:"my-2"})};
|
|
29
29
|
/**
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";var e=require("react/jsx-runtime"),r=require("../../Base/Typography/Typography.js");require("../../Base/Layouts/Box/Box.js"),require("tailwind-merge"),require("../../Base/Layouts/FullBleed/FullBleed.js");
|
|
2
2
|
// return A ~ Z
|
|
3
|
-
const t=Array.from({length:26},((e,r)=>String.fromCharCode(65+r)));exports.CountSection=({count:t})=>/*#__PURE__*/e.jsx(r.Typography,{variant:"
|
|
3
|
+
const t=Array.from({length:26},((e,r)=>String.fromCharCode(65+r)));exports.CountSection=({count:t})=>/*#__PURE__*/e.jsx(r.Typography,{variant:"body16",className:"text-w-gray-400",children:t}),exports.INDEXES=t,exports.Icon=({iconUrl:r})=>/*#__PURE__*/e.jsx("img",{src:r,alt:"icon",width:24,height:24,className:"rounded-full border"}),exports.IndexBar=({onIndexClick:a})=>/*#__PURE__*/e.jsx("ul",{className:"flex flex-col gap-0.5 rounded-l-xl bg-w-gray-10 p-[3px] text-center",children:t.map((t=>/*#__PURE__*/e.jsx("li",{className:"size-3.5 cursor-pointer",onClick:()=>null==a?void 0:a(t),children:/*#__PURE__*/e.jsx(r.Typography,{variant:"caption11",className:"text-gray-400",children:t})},t)))}),exports.TextSection=({text:t,isInputItem:a,inputValue:s})=>{const i=t.slice(0,null==s?void 0:s.length),l=t.slice(null==s?void 0:s.length);/*#__PURE__*/
|
|
4
4
|
return e.jsx(e.Fragment,{children:a?/*#__PURE__*/e.jsxs(e.Fragment,{children:[
|
|
5
|
-
/*#__PURE__*/e.jsxs(r.Typography,{variant:"
|
|
6
|
-
/*#__PURE__*/e.jsx(r.Typography,{variant:"
|
|
7
|
-
/*#__PURE__*/e.jsx(r.Typography,{variant:"
|
|
5
|
+
/*#__PURE__*/e.jsxs(r.Typography,{variant:"body16",className:"font-medium text-primary-500","data-testid":"design-system-list-item-text",children:["‘",t,"’"]}),
|
|
6
|
+
/*#__PURE__*/e.jsx(r.Typography,{variant:"body16",className:"text-w-gray-600",children:"입력"})]}):/*#__PURE__*/e.jsx(r.Typography,{variant:"body16",className:"text-w-gray-600","data-testid":"design-system-list-item-text",children:s?/*#__PURE__*/e.jsxs(e.Fragment,{children:[
|
|
7
|
+
/*#__PURE__*/e.jsx(r.Typography,{variant:"body16",className:"text-primary",children:i}),l]}):t})})};
|