@audius/harmony 0.0.25
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 +100 -0
- package/dist/2fdaa2b95a34d549.svg +9 -0
- package/dist/5f91e9bafd9a9e2b.svg +9 -0
- package/dist/_virtual/_tslib.js +89 -0
- package/dist/_virtual/_tslib.js.map +1 -0
- package/dist/assets/animations/Soundwave.json.js +1780 -0
- package/dist/assets/animations/Soundwave.json.js.map +1 -0
- package/dist/assets/animations/SoundwaveCircle.json.js +1976 -0
- package/dist/assets/animations/SoundwaveCircle.json.js.map +1 -0
- package/dist/assets/animations/loadingSpinner.json.js +543 -0
- package/dist/assets/animations/loadingSpinner.json.js.map +1 -0
- package/dist/assets/icons/Album.svg.js +63 -0
- package/dist/assets/icons/Album.svg.js.map +1 -0
- package/dist/assets/icons/AllTime.svg.js +63 -0
- package/dist/assets/icons/AllTime.svg.js.map +1 -0
- package/dist/assets/icons/Appearance.svg.js +61 -0
- package/dist/assets/icons/Appearance.svg.js.map +1 -0
- package/dist/assets/icons/ArrowLeft.svg.js +63 -0
- package/dist/assets/icons/ArrowLeft.svg.js.map +1 -0
- package/dist/assets/icons/ArrowRight.svg.js +63 -0
- package/dist/assets/icons/ArrowRight.svg.js.map +1 -0
- package/dist/assets/icons/ArtistBadge.svg.js +100 -0
- package/dist/assets/icons/ArtistBadge.svg.js.map +1 -0
- package/dist/assets/icons/AudiusLogo.svg.js +61 -0
- package/dist/assets/icons/AudiusLogo.svg.js.map +1 -0
- package/dist/assets/icons/AudiusLogoColor.svg.js +76 -0
- package/dist/assets/icons/AudiusLogoColor.svg.js.map +1 -0
- package/dist/assets/icons/AudiusLogoHorizontal.svg.js +73 -0
- package/dist/assets/icons/AudiusLogoHorizontal.svg.js.map +1 -0
- package/dist/assets/icons/AudiusLogoHorizontalColor.svg.js +65 -0
- package/dist/assets/icons/AudiusLogoHorizontalColor.svg.js.map +1 -0
- package/dist/assets/icons/AudiusLogoVertical.svg.js +77 -0
- package/dist/assets/icons/AudiusLogoVertical.svg.js.map +1 -0
- package/dist/assets/icons/Blog.svg.js +64 -0
- package/dist/assets/icons/Blog.svg.js.map +1 -0
- package/dist/assets/icons/BoxHeart.svg.js +61 -0
- package/dist/assets/icons/BoxHeart.svg.js.map +1 -0
- package/dist/assets/icons/CalendarDay.svg.js +63 -0
- package/dist/assets/icons/CalendarDay.svg.js.map +1 -0
- package/dist/assets/icons/CalendarMonth.svg.js +63 -0
- package/dist/assets/icons/CalendarMonth.svg.js.map +1 -0
- package/dist/assets/icons/CalendarWeek.svg.js +63 -0
- package/dist/assets/icons/CalendarWeek.svg.js.map +1 -0
- package/dist/assets/icons/Camera.svg.js +61 -0
- package/dist/assets/icons/Camera.svg.js.map +1 -0
- package/dist/assets/icons/Campfire.svg.js +61 -0
- package/dist/assets/icons/Campfire.svg.js.map +1 -0
- package/dist/assets/icons/CaretDown.svg.js +63 -0
- package/dist/assets/icons/CaretDown.svg.js.map +1 -0
- package/dist/assets/icons/CaretLeft.svg.js +63 -0
- package/dist/assets/icons/CaretLeft.svg.js.map +1 -0
- package/dist/assets/icons/CaretRight.svg.js +63 -0
- package/dist/assets/icons/CaretRight.svg.js.map +1 -0
- package/dist/assets/icons/CaretUp.svg.js +63 -0
- package/dist/assets/icons/CaretUp.svg.js.map +1 -0
- package/dist/assets/icons/Cart.svg.js +61 -0
- package/dist/assets/icons/Cart.svg.js.map +1 -0
- package/dist/assets/icons/CastAirplay.svg.js +63 -0
- package/dist/assets/icons/CastAirplay.svg.js.map +1 -0
- package/dist/assets/icons/CastChromecast.svg.js +63 -0
- package/dist/assets/icons/CastChromecast.svg.js.map +1 -0
- package/dist/assets/icons/Check.svg.js +63 -0
- package/dist/assets/icons/Check.svg.js.map +1 -0
- package/dist/assets/icons/Close.svg.js +63 -0
- package/dist/assets/icons/Close.svg.js.map +1 -0
- package/dist/assets/icons/CloseAlt.svg.js +63 -0
- package/dist/assets/icons/CloseAlt.svg.js.map +1 -0
- package/dist/assets/icons/CloudDownload.svg.js +63 -0
- package/dist/assets/icons/CloudDownload.svg.js.map +1 -0
- package/dist/assets/icons/CloudDownloadError.svg.js +66 -0
- package/dist/assets/icons/CloudDownloadError.svg.js.map +1 -0
- package/dist/assets/icons/CloudDownloadInactive.svg.js +63 -0
- package/dist/assets/icons/CloudDownloadInactive.svg.js.map +1 -0
- package/dist/assets/icons/CloudDownloadPaused.svg.js +68 -0
- package/dist/assets/icons/CloudDownloadPaused.svg.js.map +1 -0
- package/dist/assets/icons/CloudDownloadQueued.svg.js +66 -0
- package/dist/assets/icons/CloudDownloadQueued.svg.js.map +1 -0
- package/dist/assets/icons/CloudUpload.svg.js +63 -0
- package/dist/assets/icons/CloudUpload.svg.js.map +1 -0
- package/dist/assets/icons/Coinbase.svg.js +61 -0
- package/dist/assets/icons/Coinbase.svg.js.map +1 -0
- package/dist/assets/icons/Collectible.svg.js +61 -0
- package/dist/assets/icons/Collectible.svg.js.map +1 -0
- package/dist/assets/icons/Compose.svg.js +61 -0
- package/dist/assets/icons/Compose.svg.js.map +1 -0
- package/dist/assets/icons/Copy.svg.js +61 -0
- package/dist/assets/icons/Copy.svg.js.map +1 -0
- package/dist/assets/icons/Cosign.svg.js +74 -0
- package/dist/assets/icons/Cosign.svg.js.map +1 -0
- package/dist/assets/icons/CreatePlaylist.svg.js +63 -0
- package/dist/assets/icons/CreatePlaylist.svg.js.map +1 -0
- package/dist/assets/icons/CreditCard.svg.js +64 -0
- package/dist/assets/icons/CreditCard.svg.js.map +1 -0
- package/dist/assets/icons/Crown.svg.js +61 -0
- package/dist/assets/icons/Crown.svg.js.map +1 -0
- package/dist/assets/icons/Dashboard.svg.js +63 -0
- package/dist/assets/icons/Dashboard.svg.js.map +1 -0
- package/dist/assets/icons/Desktop.svg.js +61 -0
- package/dist/assets/icons/Desktop.svg.js.map +1 -0
- package/dist/assets/icons/Discord.svg.js +63 -0
- package/dist/assets/icons/Discord.svg.js.map +1 -0
- package/dist/assets/icons/Donate.svg.js +63 -0
- package/dist/assets/icons/Donate.svg.js.map +1 -0
- package/dist/assets/icons/Drag.svg.js +63 -0
- package/dist/assets/icons/Drag.svg.js.map +1 -0
- package/dist/assets/icons/Earnings.svg.js +61 -0
- package/dist/assets/icons/Earnings.svg.js.map +1 -0
- package/dist/assets/icons/EmailAddress.svg.js +61 -0
- package/dist/assets/icons/EmailAddress.svg.js.map +1 -0
- package/dist/assets/icons/Embed.svg.js +63 -0
- package/dist/assets/icons/Embed.svg.js.map +1 -0
- package/dist/assets/icons/Error.svg.js +63 -0
- package/dist/assets/icons/Error.svg.js.map +1 -0
- package/dist/assets/icons/Explore.svg.js +63 -0
- package/dist/assets/icons/Explore.svg.js.map +1 -0
- package/dist/assets/icons/ExternalLink.svg.js +61 -0
- package/dist/assets/icons/ExternalLink.svg.js.map +1 -0
- package/dist/assets/icons/Facebook.svg.js +61 -0
- package/dist/assets/icons/Facebook.svg.js.map +1 -0
- package/dist/assets/icons/Feed.svg.js +63 -0
- package/dist/assets/icons/Feed.svg.js.map +1 -0
- package/dist/assets/icons/Filter.svg.js +63 -0
- package/dist/assets/icons/Filter.svg.js.map +1 -0
- package/dist/assets/icons/Folder.svg.js +61 -0
- package/dist/assets/icons/Folder.svg.js.map +1 -0
- package/dist/assets/icons/Foundation.svg.js +61 -0
- package/dist/assets/icons/Foundation.svg.js.map +1 -0
- package/dist/assets/icons/Gift.svg.js +61 -0
- package/dist/assets/icons/Gift.svg.js.map +1 -0
- package/dist/assets/icons/Headphones.svg.js +61 -0
- package/dist/assets/icons/Headphones.svg.js.map +1 -0
- package/dist/assets/icons/Heart.svg.js +63 -0
- package/dist/assets/icons/Heart.svg.js.map +1 -0
- package/dist/assets/icons/Image.svg.js +63 -0
- package/dist/assets/icons/Image.svg.js.map +1 -0
- package/dist/assets/icons/Indent.svg.js +63 -0
- package/dist/assets/icons/Indent.svg.js.map +1 -0
- package/dist/assets/icons/Info.svg.js +63 -0
- package/dist/assets/icons/Info.svg.js.map +1 -0
- package/dist/assets/icons/Instagram.svg.js +63 -0
- package/dist/assets/icons/Instagram.svg.js.map +1 -0
- package/dist/assets/icons/KebabHorizontal.svg.js +63 -0
- package/dist/assets/icons/KebabHorizontal.svg.js.map +1 -0
- package/dist/assets/icons/Key.svg.js +61 -0
- package/dist/assets/icons/Key.svg.js.map +1 -0
- package/dist/assets/icons/Library.svg.js +61 -0
- package/dist/assets/icons/Library.svg.js.map +1 -0
- package/dist/assets/icons/LifeRing.svg.js +61 -0
- package/dist/assets/icons/LifeRing.svg.js.map +1 -0
- package/dist/assets/icons/Link.svg.js +63 -0
- package/dist/assets/icons/Link.svg.js.map +1 -0
- package/dist/assets/icons/LinkByStripe.svg.js +71 -0
- package/dist/assets/icons/LinkByStripe.svg.js.map +1 -0
- package/dist/assets/icons/ListeningHistory.svg.js +61 -0
- package/dist/assets/icons/ListeningHistory.svg.js.map +1 -0
- package/dist/assets/icons/Listens.svg.js +63 -0
- package/dist/assets/icons/Listens.svg.js.map +1 -0
- package/dist/assets/icons/Lock.svg.js +61 -0
- package/dist/assets/icons/Lock.svg.js.map +1 -0
- package/dist/assets/icons/LockUnlocked.svg.js +61 -0
- package/dist/assets/icons/LockUnlocked.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircle.svg.js +103 -0
- package/dist/assets/icons/LogoCircle.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircleCoinbase.svg.js +65 -0
- package/dist/assets/icons/LogoCircleCoinbase.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircleETH.svg.js +90 -0
- package/dist/assets/icons/LogoCircleETH.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircleSOL.svg.js +82 -0
- package/dist/assets/icons/LogoCircleSOL.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircleSTR.svg.js +65 -0
- package/dist/assets/icons/LogoCircleSTR.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircleUSD.svg.js +106 -0
- package/dist/assets/icons/LogoCircleUSD.svg.js.map +1 -0
- package/dist/assets/icons/LogoCircleUSDC.svg.js +71 -0
- package/dist/assets/icons/LogoCircleUSDC.svg.js.map +1 -0
- package/dist/assets/icons/LogoPhantom.svg.js +92 -0
- package/dist/assets/icons/LogoPhantom.svg.js.map +1 -0
- package/dist/assets/icons/LogoSolana.svg.js +87 -0
- package/dist/assets/icons/LogoSolana.svg.js.map +1 -0
- package/dist/assets/icons/Merch.svg.js +64 -0
- package/dist/assets/icons/Merch.svg.js.map +1 -0
- package/dist/assets/icons/Message.svg.js +61 -0
- package/dist/assets/icons/Message.svg.js.map +1 -0
- package/dist/assets/icons/MessageBlock.svg.js +61 -0
- package/dist/assets/icons/MessageBlock.svg.js.map +1 -0
- package/dist/assets/icons/MessageLocked.svg.js +64 -0
- package/dist/assets/icons/MessageLocked.svg.js.map +1 -0
- package/dist/assets/icons/MessageUnblock.svg.js +63 -0
- package/dist/assets/icons/MessageUnblock.svg.js.map +1 -0
- package/dist/assets/icons/Metamask.svg.js +131 -0
- package/dist/assets/icons/Metamask.svg.js.map +1 -0
- package/dist/assets/icons/Minus.svg.js +65 -0
- package/dist/assets/icons/Minus.svg.js.map +1 -0
- package/dist/assets/icons/Mood.svg.js +63 -0
- package/dist/assets/icons/Mood.svg.js.map +1 -0
- package/dist/assets/icons/MultiselectAdd.svg.js +67 -0
- package/dist/assets/icons/MultiselectAdd.svg.js.map +1 -0
- package/dist/assets/icons/MultiselectRemove.svg.js +67 -0
- package/dist/assets/icons/MultiselectRemove.svg.js.map +1 -0
- package/dist/assets/icons/NoWifi.svg.js +61 -0
- package/dist/assets/icons/NoWifi.svg.js.map +1 -0
- package/dist/assets/icons/Note.svg.js +63 -0
- package/dist/assets/icons/Note.svg.js.map +1 -0
- package/dist/assets/icons/NotificationOff.svg.js +63 -0
- package/dist/assets/icons/NotificationOff.svg.js.map +1 -0
- package/dist/assets/icons/NotificationOn.svg.js +63 -0
- package/dist/assets/icons/NotificationOn.svg.js.map +1 -0
- package/dist/assets/icons/Pause.svg.js +63 -0
- package/dist/assets/icons/Pause.svg.js.map +1 -0
- package/dist/assets/icons/PenSquare.svg.js +59 -0
- package/dist/assets/icons/PenSquare.svg.js.map +1 -0
- package/dist/assets/icons/Pencil.svg.js +63 -0
- package/dist/assets/icons/Pencil.svg.js.map +1 -0
- package/dist/assets/icons/Play.svg.js +63 -0
- package/dist/assets/icons/Play.svg.js.map +1 -0
- package/dist/assets/icons/PlaybackPause.svg.js +77 -0
- package/dist/assets/icons/PlaybackPause.svg.js.map +1 -0
- package/dist/assets/icons/PlaybackPlay.svg.js +80 -0
- package/dist/assets/icons/PlaybackPlay.svg.js.map +1 -0
- package/dist/assets/icons/Playlists.svg.js +61 -0
- package/dist/assets/icons/Playlists.svg.js.map +1 -0
- package/dist/assets/icons/Plus.svg.js +61 -0
- package/dist/assets/icons/Plus.svg.js.map +1 -0
- package/dist/assets/icons/PodcastBack.svg.js +63 -0
- package/dist/assets/icons/PodcastBack.svg.js.map +1 -0
- package/dist/assets/icons/PodcastForward.svg.js +63 -0
- package/dist/assets/icons/PodcastForward.svg.js.map +1 -0
- package/dist/assets/icons/QuestionCircle.svg.js +61 -0
- package/dist/assets/icons/QuestionCircle.svg.js.map +1 -0
- package/dist/assets/icons/Radar.svg.js +61 -0
- package/dist/assets/icons/Radar.svg.js.map +1 -0
- package/dist/assets/icons/Receive.svg.js +61 -0
- package/dist/assets/icons/Receive.svg.js.map +1 -0
- package/dist/assets/icons/RecoveryEmail.svg.js +69 -0
- package/dist/assets/icons/RecoveryEmail.svg.js.map +1 -0
- package/dist/assets/icons/Refresh.svg.js +63 -0
- package/dist/assets/icons/Refresh.svg.js.map +1 -0
- package/dist/assets/icons/Remix.svg.js +61 -0
- package/dist/assets/icons/Remix.svg.js.map +1 -0
- package/dist/assets/icons/Remove.svg.js +63 -0
- package/dist/assets/icons/Remove.svg.js.map +1 -0
- package/dist/assets/icons/RepeatOff.svg.js +63 -0
- package/dist/assets/icons/RepeatOff.svg.js.map +1 -0
- package/dist/assets/icons/Repost.svg.js +63 -0
- package/dist/assets/icons/Repost.svg.js.map +1 -0
- package/dist/assets/icons/Robot.svg.js +61 -0
- package/dist/assets/icons/Robot.svg.js.map +1 -0
- package/dist/assets/icons/Rocket.svg.js +61 -0
- package/dist/assets/icons/Rocket.svg.js.map +1 -0
- package/dist/assets/icons/Save.svg.js +63 -0
- package/dist/assets/icons/Save.svg.js.map +1 -0
- package/dist/assets/icons/Search.svg.js +73 -0
- package/dist/assets/icons/Search.svg.js.map +1 -0
- package/dist/assets/icons/Send.svg.js +61 -0
- package/dist/assets/icons/Send.svg.js.map +1 -0
- package/dist/assets/icons/Settings.svg.js +63 -0
- package/dist/assets/icons/Settings.svg.js.map +1 -0
- package/dist/assets/icons/Share.svg.js +63 -0
- package/dist/assets/icons/Share.svg.js.map +1 -0
- package/dist/assets/icons/ShieldCheck.svg.js +61 -0
- package/dist/assets/icons/ShieldCheck.svg.js.map +1 -0
- package/dist/assets/icons/Shuffle.svg.js +73 -0
- package/dist/assets/icons/Shuffle.svg.js.map +1 -0
- package/dist/assets/icons/SignOut.svg.js +63 -0
- package/dist/assets/icons/SignOut.svg.js.map +1 -0
- package/dist/assets/icons/SkipNext.svg.js +63 -0
- package/dist/assets/icons/SkipNext.svg.js.map +1 -0
- package/dist/assets/icons/SkipPrevious.svg.js +63 -0
- package/dist/assets/icons/SkipPrevious.svg.js.map +1 -0
- package/dist/assets/icons/Skull.svg.js +61 -0
- package/dist/assets/icons/Skull.svg.js.map +1 -0
- package/dist/assets/icons/SnapChat.svg.js +61 -0
- package/dist/assets/icons/SnapChat.svg.js.map +1 -0
- package/dist/assets/icons/Sort.svg.js +63 -0
- package/dist/assets/icons/Sort.svg.js.map +1 -0
- package/dist/assets/icons/SortDown.svg.js +63 -0
- package/dist/assets/icons/SortDown.svg.js.map +1 -0
- package/dist/assets/icons/SortUp.svg.js +63 -0
- package/dist/assets/icons/SortUp.svg.js.map +1 -0
- package/dist/assets/icons/Soundwave.svg.js +91 -0
- package/dist/assets/icons/Soundwave.svg.js.map +1 -0
- package/dist/assets/icons/Speaker.svg.js +63 -0
- package/dist/assets/icons/Speaker.svg.js.map +1 -0
- package/dist/assets/icons/SpecialAccess.svg.js +69 -0
- package/dist/assets/icons/SpecialAccess.svg.js.map +1 -0
- package/dist/assets/icons/Star.svg.js +63 -0
- package/dist/assets/icons/Star.svg.js.map +1 -0
- package/dist/assets/icons/Stars.svg.js +61 -0
- package/dist/assets/icons/Stars.svg.js.map +1 -0
- package/dist/assets/icons/Support.svg.js +61 -0
- package/dist/assets/icons/Support.svg.js.map +1 -0
- package/dist/assets/icons/Tastemaker.svg.js +61 -0
- package/dist/assets/icons/Tastemaker.svg.js.map +1 -0
- package/dist/assets/icons/Telegram.svg.js +61 -0
- package/dist/assets/icons/Telegram.svg.js.map +1 -0
- package/dist/assets/icons/ThumbsDown.svg.js +61 -0
- package/dist/assets/icons/ThumbsDown.svg.js.map +1 -0
- package/dist/assets/icons/ThumbsUp.svg.js +61 -0
- package/dist/assets/icons/ThumbsUp.svg.js.map +1 -0
- package/dist/assets/icons/TikTok.svg.js +63 -0
- package/dist/assets/icons/TikTok.svg.js.map +1 -0
- package/dist/assets/icons/Tipping.svg.js +64 -0
- package/dist/assets/icons/Tipping.svg.js.map +1 -0
- package/dist/assets/icons/TokenBronze.svg.js +455 -0
- package/dist/assets/icons/TokenBronze.svg.js.map +1 -0
- package/dist/assets/icons/TokenGold.svg.js +449 -0
- package/dist/assets/icons/TokenGold.svg.js.map +1 -0
- package/dist/assets/icons/TokenNoTier.svg.js +484 -0
- package/dist/assets/icons/TokenNoTier.svg.js.map +1 -0
- package/dist/assets/icons/TokenPlatinum.svg.js +487 -0
- package/dist/assets/icons/TokenPlatinum.svg.js.map +1 -0
- package/dist/assets/icons/TokenSilver.svg.js +463 -0
- package/dist/assets/icons/TokenSilver.svg.js.map +1 -0
- package/dist/assets/icons/Transaction.svg.js +61 -0
- package/dist/assets/icons/Transaction.svg.js.map +1 -0
- package/dist/assets/icons/Trash.svg.js +61 -0
- package/dist/assets/icons/Trash.svg.js.map +1 -0
- package/dist/assets/icons/Trending.svg.js +63 -0
- package/dist/assets/icons/Trending.svg.js.map +1 -0
- package/dist/assets/icons/TriangleExclamation.svg.js +61 -0
- package/dist/assets/icons/TriangleExclamation.svg.js.map +1 -0
- package/dist/assets/icons/Trophy.svg.js +63 -0
- package/dist/assets/icons/Trophy.svg.js.map +1 -0
- package/dist/assets/icons/Turntable.svg.js +61 -0
- package/dist/assets/icons/Turntable.svg.js.map +1 -0
- package/dist/assets/icons/Twitter.svg.js +63 -0
- package/dist/assets/icons/Twitter.svg.js.map +1 -0
- package/dist/assets/icons/User.svg.js +63 -0
- package/dist/assets/icons/User.svg.js.map +1 -0
- package/dist/assets/icons/UserFollow.svg.js +63 -0
- package/dist/assets/icons/UserFollow.svg.js.map +1 -0
- package/dist/assets/icons/UserFollowers.svg.js +66 -0
- package/dist/assets/icons/UserFollowers.svg.js.map +1 -0
- package/dist/assets/icons/UserFollowing.svg.js +63 -0
- package/dist/assets/icons/UserFollowing.svg.js.map +1 -0
- package/dist/assets/icons/UserGroup.svg.js +66 -0
- package/dist/assets/icons/UserGroup.svg.js.map +1 -0
- package/dist/assets/icons/UserList.svg.js +66 -0
- package/dist/assets/icons/UserList.svg.js.map +1 -0
- package/dist/assets/icons/UserUnfollow.svg.js +63 -0
- package/dist/assets/icons/UserUnfollow.svg.js.map +1 -0
- package/dist/assets/icons/ValidationCheck.svg.js +88 -0
- package/dist/assets/icons/ValidationCheck.svg.js.map +1 -0
- package/dist/assets/icons/ValidationX.svg.js +80 -0
- package/dist/assets/icons/ValidationX.svg.js.map +1 -0
- package/dist/assets/icons/Verified.svg.js +74 -0
- package/dist/assets/icons/Verified.svg.js.map +1 -0
- package/dist/assets/icons/VisibilityHidden.svg.js +66 -0
- package/dist/assets/icons/VisibilityHidden.svg.js.map +1 -0
- package/dist/assets/icons/VisibilityPublic.svg.js +66 -0
- package/dist/assets/icons/VisibilityPublic.svg.js.map +1 -0
- package/dist/assets/icons/VolumeLevel0.svg.js +63 -0
- package/dist/assets/icons/VolumeLevel0.svg.js.map +1 -0
- package/dist/assets/icons/VolumeLevel1.svg.js +63 -0
- package/dist/assets/icons/VolumeLevel1.svg.js.map +1 -0
- package/dist/assets/icons/VolumeLevel2.svg.js +63 -0
- package/dist/assets/icons/VolumeLevel2.svg.js.map +1 -0
- package/dist/assets/icons/VolumeLevel3.svg.js +63 -0
- package/dist/assets/icons/VolumeLevel3.svg.js.map +1 -0
- package/dist/assets/icons/Wallet.svg.js +61 -0
- package/dist/assets/icons/Wallet.svg.js.map +1 -0
- package/dist/assets/icons/Wand.svg.js +63 -0
- package/dist/assets/icons/Wand.svg.js.map +1 -0
- package/dist/assets/icons/Waveform.svg.js +61 -0
- package/dist/assets/icons/Waveform.svg.js.map +1 -0
- package/dist/assets/icons/Withdraw.svg.js +63 -0
- package/dist/assets/icons/Withdraw.svg.js.map +1 -0
- package/dist/assets/icons/ccBy.svg.js +61 -0
- package/dist/assets/icons/ccBy.svg.js.map +1 -0
- package/dist/assets/icons/ccCC.svg.js +61 -0
- package/dist/assets/icons/ccCC.svg.js.map +1 -0
- package/dist/assets/icons/ccNC-EU.svg.js +61 -0
- package/dist/assets/icons/ccNC-EU.svg.js.map +1 -0
- package/dist/assets/icons/ccNC-JP.svg.js +61 -0
- package/dist/assets/icons/ccNC-JP.svg.js.map +1 -0
- package/dist/assets/icons/ccNC.svg.js +61 -0
- package/dist/assets/icons/ccNC.svg.js.map +1 -0
- package/dist/assets/icons/ccND.svg.js +61 -0
- package/dist/assets/icons/ccND.svg.js.map +1 -0
- package/dist/assets/icons/ccPD.svg.js +61 -0
- package/dist/assets/icons/ccPD.svg.js.map +1 -0
- package/dist/assets/icons/ccRemix.svg.js +61 -0
- package/dist/assets/icons/ccRemix.svg.js.map +1 -0
- package/dist/assets/icons/ccSA.svg.js +61 -0
- package/dist/assets/icons/ccSA.svg.js.map +1 -0
- package/dist/assets/icons/ccSampling.svg.js +61 -0
- package/dist/assets/icons/ccSampling.svg.js.map +1 -0
- package/dist/assets/icons/ccSamplingPlus.svg.js +64 -0
- package/dist/assets/icons/ccSamplingPlus.svg.js.map +1 -0
- package/dist/assets/icons/ccShare.svg.js +61 -0
- package/dist/assets/icons/ccShare.svg.js.map +1 -0
- package/dist/assets/icons/ccZero.svg.js +64 -0
- package/dist/assets/icons/ccZero.svg.js.map +1 -0
- package/dist/assets/icons/file3GA.svg.js +76 -0
- package/dist/assets/icons/file3GA.svg.js.map +1 -0
- package/dist/assets/icons/file3GP.svg.js +76 -0
- package/dist/assets/icons/file3GP.svg.js.map +1 -0
- package/dist/assets/icons/fileAAC.svg.js +76 -0
- package/dist/assets/icons/fileAAC.svg.js.map +1 -0
- package/dist/assets/icons/fileAIF.svg.js +76 -0
- package/dist/assets/icons/fileAIF.svg.js.map +1 -0
- package/dist/assets/icons/fileAIFC.svg.js +76 -0
- package/dist/assets/icons/fileAIFC.svg.js.map +1 -0
- package/dist/assets/icons/fileAIFF.svg.js +76 -0
- package/dist/assets/icons/fileAIFF.svg.js.map +1 -0
- package/dist/assets/icons/fileAMR.svg.js +76 -0
- package/dist/assets/icons/fileAMR.svg.js.map +1 -0
- package/dist/assets/icons/fileAWB.svg.js +76 -0
- package/dist/assets/icons/fileAWB.svg.js.map +1 -0
- package/dist/assets/icons/fileFLAC.svg.js +76 -0
- package/dist/assets/icons/fileFLAC.svg.js.map +1 -0
- package/dist/assets/icons/fileM4A.svg.js +76 -0
- package/dist/assets/icons/fileM4A.svg.js.map +1 -0
- package/dist/assets/icons/fileM4B.svg.js +76 -0
- package/dist/assets/icons/fileM4B.svg.js.map +1 -0
- package/dist/assets/icons/fileM4P.svg.js +76 -0
- package/dist/assets/icons/fileM4P.svg.js.map +1 -0
- package/dist/assets/icons/fileM4R.svg.js +76 -0
- package/dist/assets/icons/fileM4R.svg.js.map +1 -0
- package/dist/assets/icons/fileM4V.svg.js +76 -0
- package/dist/assets/icons/fileM4V.svg.js.map +1 -0
- package/dist/assets/icons/fileMP2.svg.js +76 -0
- package/dist/assets/icons/fileMP2.svg.js.map +1 -0
- package/dist/assets/icons/fileMP3.svg.js +76 -0
- package/dist/assets/icons/fileMP3.svg.js.map +1 -0
- package/dist/assets/icons/fileMP4.svg.js +76 -0
- package/dist/assets/icons/fileMP4.svg.js.map +1 -0
- package/dist/assets/icons/fileMPGA.svg.js +76 -0
- package/dist/assets/icons/fileMPGA.svg.js.map +1 -0
- package/dist/assets/icons/fileOGA.svg.js +76 -0
- package/dist/assets/icons/fileOGA.svg.js.map +1 -0
- package/dist/assets/icons/fileOGG.svg.js +76 -0
- package/dist/assets/icons/fileOGG.svg.js.map +1 -0
- package/dist/assets/icons/fileOGM.svg.js +76 -0
- package/dist/assets/icons/fileOGM.svg.js.map +1 -0
- package/dist/assets/icons/fileOGV.svg.js +76 -0
- package/dist/assets/icons/fileOGV.svg.js.map +1 -0
- package/dist/assets/icons/fileOGX.svg.js +76 -0
- package/dist/assets/icons/fileOGX.svg.js.map +1 -0
- package/dist/assets/icons/fileOPUS.svg.js +76 -0
- package/dist/assets/icons/fileOPUS.svg.js.map +1 -0
- package/dist/assets/icons/fileSPX.svg.js +76 -0
- package/dist/assets/icons/fileSPX.svg.js.map +1 -0
- package/dist/assets/icons/fileTS.svg.js +76 -0
- package/dist/assets/icons/fileTS.svg.js.map +1 -0
- package/dist/assets/icons/fileTSA.svg.js +76 -0
- package/dist/assets/icons/fileTSA.svg.js.map +1 -0
- package/dist/assets/icons/fileTSV.svg.js +76 -0
- package/dist/assets/icons/fileTSV.svg.js.map +1 -0
- package/dist/assets/icons/fileUnknown.svg.js +98 -0
- package/dist/assets/icons/fileUnknown.svg.js.map +1 -0
- package/dist/assets/icons/fileWAV.svg.js +76 -0
- package/dist/assets/icons/fileWAV.svg.js.map +1 -0
- package/dist/assets/icons/fileWAVE.svg.js +76 -0
- package/dist/assets/icons/fileWAVE.svg.js.map +1 -0
- package/dist/assets/icons/fileWEBM.svg.js +76 -0
- package/dist/assets/icons/fileWEBM.svg.js.map +1 -0
- package/dist/assets/icons/fileXWMA.svg.js +76 -0
- package/dist/assets/icons/fileXWMA.svg.js.map +1 -0
- package/dist/avenir.css +44 -0
- package/dist/components/avatar/Avatar.d.ts +3 -0
- package/dist/components/avatar/Avatar.d.ts.map +1 -0
- package/dist/components/avatar/Avatar.js +52 -0
- package/dist/components/avatar/Avatar.js.map +1 -0
- package/dist/components/avatar/Avatar.stories.d.ts +9 -0
- package/dist/components/avatar/Avatar.stories.d.ts.map +1 -0
- package/dist/components/avatar/index.d.ts +3 -0
- package/dist/components/avatar/index.d.ts.map +1 -0
- package/dist/components/avatar/types.d.ts +24 -0
- package/dist/components/avatar/types.d.ts.map +1 -0
- package/dist/components/button/BaseButton/BaseButton.d.ts +24 -0
- package/dist/components/button/BaseButton/BaseButton.d.ts.map +1 -0
- package/dist/components/button/BaseButton/BaseButton.js +53 -0
- package/dist/components/button/BaseButton/BaseButton.js.map +1 -0
- package/dist/components/button/BaseButton/BaseButton.module.css.js +4 -0
- package/dist/components/button/BaseButton/BaseButton.module.css.js.map +1 -0
- package/dist/components/button/BaseButton/types.d.ts +67 -0
- package/dist/components/button/BaseButton/types.d.ts.map +1 -0
- package/dist/components/button/BaseButton.d.ts +21 -0
- package/dist/components/button/BaseButton.d.ts.map +1 -0
- package/dist/components/button/Button/Button.d.ts +14 -0
- package/dist/components/button/Button/Button.d.ts.map +1 -0
- package/dist/components/button/Button/Button.js +148 -0
- package/dist/components/button/Button/Button.js.map +1 -0
- package/dist/components/button/Button/Button.module.css.js +4 -0
- package/dist/components/button/Button/Button.module.css.js.map +1 -0
- package/dist/components/button/Button/Button.stories.d.ts +15 -0
- package/dist/components/button/Button/Button.stories.d.ts.map +1 -0
- package/dist/components/button/Button/types.d.ts +25 -0
- package/dist/components/button/Button/types.d.ts.map +1 -0
- package/dist/components/button/Button.d.ts +13 -0
- package/dist/components/button/Button.d.ts.map +1 -0
- package/dist/components/button/Button.stories.d.ts +11 -0
- package/dist/components/button/Button.stories.d.ts.map +1 -0
- package/dist/components/button/FilterButton/FilterButton.d.ts +4 -0
- package/dist/components/button/FilterButton/FilterButton.d.ts.map +1 -0
- package/dist/components/button/FilterButton/FilterButton.js +129 -0
- package/dist/components/button/FilterButton/FilterButton.js.map +1 -0
- package/dist/components/button/FilterButton/FilterButton.stories.d.ts +11 -0
- package/dist/components/button/FilterButton/FilterButton.stories.d.ts.map +1 -0
- package/dist/components/button/FilterButton/types.d.ts +78 -0
- package/dist/components/button/FilterButton/types.d.ts.map +1 -0
- package/dist/components/button/FollowButton/FollowButton.d.ts +6 -0
- package/dist/components/button/FollowButton/FollowButton.d.ts.map +1 -0
- package/dist/components/button/FollowButton/FollowButton.js +128 -0
- package/dist/components/button/FollowButton/FollowButton.js.map +1 -0
- package/dist/components/button/FollowButton/FollowButton.stories.d.ts +23 -0
- package/dist/components/button/FollowButton/FollowButton.stories.d.ts.map +1 -0
- package/dist/components/button/FollowButton/types.d.ts +32 -0
- package/dist/components/button/FollowButton/types.d.ts.map +1 -0
- package/dist/components/button/IconButton/IconButton.d.ts +21 -0
- package/dist/components/button/IconButton/IconButton.d.ts.map +1 -0
- package/dist/components/button/IconButton/IconButton.js +38 -0
- package/dist/components/button/IconButton/IconButton.js.map +1 -0
- package/dist/components/button/IconButton/IconButton.stories.d.ts +11 -0
- package/dist/components/button/IconButton/IconButton.stories.d.ts.map +1 -0
- package/dist/components/button/PlainButton/PlainButton.d.ts +10 -0
- package/dist/components/button/PlainButton/PlainButton.d.ts.map +1 -0
- package/dist/components/button/PlainButton/PlainButton.js +55 -0
- package/dist/components/button/PlainButton/PlainButton.js.map +1 -0
- package/dist/components/button/PlainButton/PlainButton.module.css.js +4 -0
- package/dist/components/button/PlainButton/PlainButton.module.css.js.map +1 -0
- package/dist/components/button/PlainButton/PlainButton.stories.d.ts +15 -0
- package/dist/components/button/PlainButton/PlainButton.stories.d.ts.map +1 -0
- package/dist/components/button/PlainButton/types.d.ts +14 -0
- package/dist/components/button/PlainButton/types.d.ts.map +1 -0
- package/dist/components/button/PlainButton.d.ts +11 -0
- package/dist/components/button/PlainButton.d.ts.map +1 -0
- package/dist/components/button/PlainButton.stories.d.ts +20 -0
- package/dist/components/button/PlainButton.stories.d.ts.map +1 -0
- package/dist/components/button/SocialButton/SocialButton.d.ts +15 -0
- package/dist/components/button/SocialButton/SocialButton.d.ts.map +1 -0
- package/dist/components/button/SocialButton/SocialButton.js +35 -0
- package/dist/components/button/SocialButton/SocialButton.js.map +1 -0
- package/dist/components/button/SocialButton/SocialButton.module.css.js +4 -0
- package/dist/components/button/SocialButton/SocialButton.module.css.js.map +1 -0
- package/dist/components/button/SocialButton/SocialButton.stories.d.ts +6 -0
- package/dist/components/button/SocialButton/SocialButton.stories.d.ts.map +1 -0
- package/dist/components/button/index.d.ts +11 -0
- package/dist/components/button/index.d.ts.map +1 -0
- package/dist/components/button/types.d.ts +194 -0
- package/dist/components/button/types.d.ts.map +1 -0
- package/dist/components/button/types.js +43 -0
- package/dist/components/button/types.js.map +1 -0
- package/dist/components/common/HiddenInput.d.ts +6 -0
- package/dist/components/common/HiddenInput.d.ts.map +1 -0
- package/dist/components/common/HiddenInput.js +17 -0
- package/dist/components/common/HiddenInput.js.map +1 -0
- package/dist/components/completion-check/CompletionCheck.d.ts +12 -0
- package/dist/components/completion-check/CompletionCheck.d.ts.map +1 -0
- package/dist/components/completion-check/CompletionCheck.js +50 -0
- package/dist/components/completion-check/CompletionCheck.js.map +1 -0
- package/dist/components/completion-check/CompletionCheck.module.css.js +4 -0
- package/dist/components/completion-check/CompletionCheck.module.css.js.map +1 -0
- package/dist/components/completion-check/CompletionCheck.stories.d.ts +9 -0
- package/dist/components/completion-check/CompletionCheck.stories.d.ts.map +1 -0
- package/dist/components/completion-check/index.d.ts +3 -0
- package/dist/components/completion-check/index.d.ts.map +1 -0
- package/dist/components/completion-check/types.d.ts +4 -0
- package/dist/components/completion-check/types.d.ts.map +1 -0
- package/dist/components/hint/Hint.d.ts +8 -0
- package/dist/components/hint/Hint.d.ts.map +1 -0
- package/dist/components/hint/Hint.js +15 -0
- package/dist/components/hint/Hint.js.map +1 -0
- package/dist/components/hint/Hint.stories.d.ts +7 -0
- package/dist/components/hint/Hint.stories.d.ts.map +1 -0
- package/dist/components/hint/index.d.ts +2 -0
- package/dist/components/hint/index.d.ts.map +1 -0
- package/dist/components/icon/Icon.d.ts +33 -0
- package/dist/components/icon/Icon.d.ts.map +1 -0
- package/dist/components/icon/Icon.js +39 -0
- package/dist/components/icon/Icon.js.map +1 -0
- package/dist/components/icon/index.d.ts +2 -0
- package/dist/components/icon/index.d.ts.map +1 -0
- package/dist/components/icon.d.ts +19 -0
- package/dist/components/icon.d.ts.map +1 -0
- package/dist/components/icon.js +11 -0
- package/dist/components/icon.js.map +1 -0
- package/dist/components/index.d.ts +18 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/input/PasswordInput/PasswordInput.d.ts +5 -0
- package/dist/components/input/PasswordInput/PasswordInput.d.ts.map +1 -0
- package/dist/components/input/PasswordInput/PasswordInput.js +31 -0
- package/dist/components/input/PasswordInput/PasswordInput.js.map +1 -0
- package/dist/components/input/PasswordInput/PasswordInput.modules.css.js +4 -0
- package/dist/components/input/PasswordInput/PasswordInput.modules.css.js.map +1 -0
- package/dist/components/input/PasswordInput/PasswordInput.stories.d.ts +8 -0
- package/dist/components/input/PasswordInput/PasswordInput.stories.d.ts.map +1 -0
- package/dist/components/input/PasswordInput/index.d.ts +3 -0
- package/dist/components/input/PasswordInput/index.d.ts.map +1 -0
- package/dist/components/input/PasswordInput/types.d.ts +5 -0
- package/dist/components/input/PasswordInput/types.d.ts.map +1 -0
- package/dist/components/input/SelectablePill/SelectablePill.d.ts +3 -0
- package/dist/components/input/SelectablePill/SelectablePill.d.ts.map +1 -0
- package/dist/components/input/SelectablePill/SelectablePill.js +70 -0
- package/dist/components/input/SelectablePill/SelectablePill.js.map +1 -0
- package/dist/components/input/SelectablePill/SelectablePill.module.css.js +4 -0
- package/dist/components/input/SelectablePill/SelectablePill.module.css.js.map +1 -0
- package/dist/components/input/SelectablePill/SelectablePill.stories.d.ts +12 -0
- package/dist/components/input/SelectablePill/SelectablePill.stories.d.ts.map +1 -0
- package/dist/components/input/SelectablePill/index.d.ts +2 -0
- package/dist/components/input/SelectablePill/index.d.ts.map +1 -0
- package/dist/components/input/SelectablePill/types.d.ts +28 -0
- package/dist/components/input/SelectablePill/types.d.ts.map +1 -0
- package/dist/components/input/TextInput/TextInput.d.ts +29 -0
- package/dist/components/input/TextInput/TextInput.d.ts.map +1 -0
- package/dist/components/input/TextInput/TextInput.js +98 -0
- package/dist/components/input/TextInput/TextInput.js.map +1 -0
- package/dist/components/input/TextInput/TextInput.module.css.js +4 -0
- package/dist/components/input/TextInput/TextInput.module.css.js.map +1 -0
- package/dist/components/input/TextInput/TextInput.stories.d.ts +14 -0
- package/dist/components/input/TextInput/TextInput.stories.d.ts.map +1 -0
- package/dist/components/input/TextInput/index.d.ts +3 -0
- package/dist/components/input/TextInput/index.d.ts.map +1 -0
- package/dist/components/input/TextInput/types.d.ts +105 -0
- package/dist/components/input/TextInput/types.d.ts.map +1 -0
- package/dist/components/input/TextInput/types.js +8 -0
- package/dist/components/input/TextInput/types.js.map +1 -0
- package/dist/components/input/TokenAmountInput/TokenAmountInput.d.ts +9 -0
- package/dist/components/input/TokenAmountInput/TokenAmountInput.d.ts.map +1 -0
- package/dist/components/input/TokenAmountInput/TokenAmountInput.js +45 -0
- package/dist/components/input/TokenAmountInput/TokenAmountInput.js.map +1 -0
- package/dist/components/input/TokenAmountInput/TokenAmountInput.stories.d.ts +7 -0
- package/dist/components/input/TokenAmountInput/TokenAmountInput.stories.d.ts.map +1 -0
- package/dist/components/input/TokenAmountInput/index.d.ts +3 -0
- package/dist/components/input/TokenAmountInput/index.d.ts.map +1 -0
- package/dist/components/input/TokenAmountInput/types.d.ts +11 -0
- package/dist/components/input/TokenAmountInput/types.d.ts.map +1 -0
- package/dist/components/input/index.d.ts +6 -0
- package/dist/components/input/index.d.ts.map +1 -0
- package/dist/components/input/useFocusState.d.ts +18 -0
- package/dist/components/input/useFocusState.d.ts.map +1 -0
- package/dist/components/input/useFocusState.js +32 -0
- package/dist/components/input/useFocusState.js.map +1 -0
- package/dist/components/layout/Box/Box.d.ts +7 -0
- package/dist/components/layout/Box/Box.d.ts.map +1 -0
- package/dist/components/layout/Box/Box.js +47 -0
- package/dist/components/layout/Box/Box.js.map +1 -0
- package/dist/components/layout/Box/Box.stories.d.ts +8 -0
- package/dist/components/layout/Box/Box.stories.d.ts.map +1 -0
- package/dist/components/layout/Box/index.d.ts +3 -0
- package/dist/components/layout/Box/index.d.ts.map +1 -0
- package/dist/components/layout/Box/types.d.ts +67 -0
- package/dist/components/layout/Box/types.d.ts.map +1 -0
- package/dist/components/layout/Divider/Divider.d.ts +6 -0
- package/dist/components/layout/Divider/Divider.d.ts.map +1 -0
- package/dist/components/layout/Divider/Divider.js +40 -0
- package/dist/components/layout/Divider/Divider.js.map +1 -0
- package/dist/components/layout/Divider/Divider.stories.d.ts +10 -0
- package/dist/components/layout/Divider/Divider.stories.d.ts.map +1 -0
- package/dist/components/layout/Divider/index.d.ts +2 -0
- package/dist/components/layout/Divider/index.d.ts.map +1 -0
- package/dist/components/layout/Divider/types.d.ts +7 -0
- package/dist/components/layout/Divider/types.d.ts.map +1 -0
- package/dist/components/layout/Flex/Flex.d.ts +9 -0
- package/dist/components/layout/Flex/Flex.d.ts.map +1 -0
- package/dist/components/layout/Flex/Flex.js +25 -0
- package/dist/components/layout/Flex/Flex.js.map +1 -0
- package/dist/components/layout/Flex/Flex.stories.d.ts +10 -0
- package/dist/components/layout/Flex/Flex.stories.d.ts.map +1 -0
- package/dist/components/layout/Flex/index.d.ts +3 -0
- package/dist/components/layout/Flex/index.d.ts.map +1 -0
- package/dist/components/layout/Flex/types.d.ts +15 -0
- package/dist/components/layout/Flex/types.d.ts.map +1 -0
- package/dist/components/layout/Paper/Paper.d.ts +12 -0
- package/dist/components/layout/Paper/Paper.d.ts.map +1 -0
- package/dist/components/layout/Paper/Paper.js +20 -0
- package/dist/components/layout/Paper/Paper.js.map +1 -0
- package/dist/components/layout/Paper/Paper.stories.d.ts +7 -0
- package/dist/components/layout/Paper/Paper.stories.d.ts.map +1 -0
- package/dist/components/layout/Paper/index.d.ts +3 -0
- package/dist/components/layout/Paper/index.d.ts.map +1 -0
- package/dist/components/layout/Paper/types.d.ts +26 -0
- package/dist/components/layout/Paper/types.d.ts.map +1 -0
- package/dist/components/layout/Popup/Popup.d.ts +10 -0
- package/dist/components/layout/Popup/Popup.d.ts.map +1 -0
- package/dist/components/layout/Popup/Popup.js +273 -0
- package/dist/components/layout/Popup/Popup.js.map +1 -0
- package/dist/components/layout/Popup/Popup.module.css.js +4 -0
- package/dist/components/layout/Popup/Popup.module.css.js.map +1 -0
- package/dist/components/layout/Popup/Popup.stories.d.ts +7 -0
- package/dist/components/layout/Popup/Popup.stories.d.ts.map +1 -0
- package/dist/components/layout/Popup/index.d.ts +3 -0
- package/dist/components/layout/Popup/index.d.ts.map +1 -0
- package/dist/components/layout/Popup/types.d.ts +81 -0
- package/dist/components/layout/Popup/types.d.ts.map +1 -0
- package/dist/components/layout/index.d.ts +6 -0
- package/dist/components/layout/index.d.ts.map +1 -0
- package/dist/components/link/Link.d.ts +8 -0
- package/dist/components/link/Link.d.ts.map +1 -0
- package/dist/components/link/Link.js +19 -0
- package/dist/components/link/Link.js.map +1 -0
- package/dist/components/link/Link.module.css.js +4 -0
- package/dist/components/link/Link.module.css.js.map +1 -0
- package/dist/components/link/TextLink.d.ts +6 -0
- package/dist/components/link/TextLink.d.ts.map +1 -0
- package/dist/components/link/TextLink.stories.d.ts +12 -0
- package/dist/components/link/TextLink.stories.d.ts.map +1 -0
- package/dist/components/link/index.d.ts +2 -0
- package/dist/components/link/index.d.ts.map +1 -0
- package/dist/components/link/types.d.ts +37 -0
- package/dist/components/link/types.d.ts.map +1 -0
- package/dist/components/loading-spinner/LoadingSpinner.d.ts +6 -0
- package/dist/components/loading-spinner/LoadingSpinner.d.ts.map +1 -0
- package/dist/components/loading-spinner/LoadingSpinner.js +19 -0
- package/dist/components/loading-spinner/LoadingSpinner.js.map +1 -0
- package/dist/components/loading-spinner/LoadingSpinner.module.css.js +4 -0
- package/dist/components/loading-spinner/LoadingSpinner.module.css.js.map +1 -0
- package/dist/components/modal/Modal.d.ts +4 -0
- package/dist/components/modal/Modal.d.ts.map +1 -0
- package/dist/components/modal/Modal.js +248 -0
- package/dist/components/modal/Modal.js.map +1 -0
- package/dist/components/modal/Modal.module.css.js +4 -0
- package/dist/components/modal/Modal.module.css.js.map +1 -0
- package/dist/components/modal/ModalContent.d.ts +6 -0
- package/dist/components/modal/ModalContent.d.ts.map +1 -0
- package/dist/components/modal/ModalContent.js +19 -0
- package/dist/components/modal/ModalContent.js.map +1 -0
- package/dist/components/modal/ModalContent.module.css.js +4 -0
- package/dist/components/modal/ModalContent.module.css.js.map +1 -0
- package/dist/components/modal/ModalContentPages.d.ts +13 -0
- package/dist/components/modal/ModalContentPages.d.ts.map +1 -0
- package/dist/components/modal/ModalContentPages.js +54 -0
- package/dist/components/modal/ModalContentPages.js.map +1 -0
- package/dist/components/modal/ModalContentPages.module.css.js +4 -0
- package/dist/components/modal/ModalContentPages.module.css.js.map +1 -0
- package/dist/components/modal/ModalContentText.d.ts +5 -0
- package/dist/components/modal/ModalContentText.d.ts.map +1 -0
- package/dist/components/modal/ModalContentText.js +12 -0
- package/dist/components/modal/ModalContentText.js.map +1 -0
- package/dist/components/modal/ModalContentText.module.css.js +4 -0
- package/dist/components/modal/ModalContentText.module.css.js.map +1 -0
- package/dist/components/modal/ModalContext.d.ts +10 -0
- package/dist/components/modal/ModalContext.d.ts.map +1 -0
- package/dist/components/modal/ModalContext.js +6 -0
- package/dist/components/modal/ModalContext.js.map +1 -0
- package/dist/components/modal/ModalFooter.d.ts +7 -0
- package/dist/components/modal/ModalFooter.d.ts.map +1 -0
- package/dist/components/modal/ModalFooter.js +16 -0
- package/dist/components/modal/ModalFooter.js.map +1 -0
- package/dist/components/modal/ModalFooter.module.css.js +4 -0
- package/dist/components/modal/ModalFooter.module.css.js.map +1 -0
- package/dist/components/modal/ModalHeader.d.ts +24 -0
- package/dist/components/modal/ModalHeader.d.ts.map +1 -0
- package/dist/components/modal/ModalHeader.js +41 -0
- package/dist/components/modal/ModalHeader.js.map +1 -0
- package/dist/components/modal/ModalHeader.module.css.js +4 -0
- package/dist/components/modal/ModalHeader.module.css.js.map +1 -0
- package/dist/components/modal/findAncestor.d.ts +7 -0
- package/dist/components/modal/findAncestor.d.ts.map +1 -0
- package/dist/components/modal/findAncestor.js +20 -0
- package/dist/components/modal/findAncestor.js.map +1 -0
- package/dist/components/modal/hooks.d.ts +8 -0
- package/dist/components/modal/hooks.d.ts.map +1 -0
- package/dist/components/modal/hooks.js +66 -0
- package/dist/components/modal/hooks.js.map +1 -0
- package/dist/components/modal/index.d.ts +8 -0
- package/dist/components/modal/index.d.ts.map +1 -0
- package/dist/components/modal/types.d.ts +124 -0
- package/dist/components/modal/types.d.ts.map +1 -0
- package/dist/components/modal/types.js +9 -0
- package/dist/components/modal/types.js.map +1 -0
- package/dist/components/popup-menu/PopupMenu.d.ts +23 -0
- package/dist/components/popup-menu/PopupMenu.d.ts.map +1 -0
- package/dist/components/popup-menu/PopupMenu.js +47 -0
- package/dist/components/popup-menu/PopupMenu.js.map +1 -0
- package/dist/components/popup-menu/PopupMenu.module.css.js +4 -0
- package/dist/components/popup-menu/PopupMenu.module.css.js.map +1 -0
- package/dist/components/popup-menu/index.d.ts +3 -0
- package/dist/components/popup-menu/index.d.ts.map +1 -0
- package/dist/components/popup-menu/types.d.ts +59 -0
- package/dist/components/popup-menu/types.d.ts.map +1 -0
- package/dist/components/radio/Radio.d.ts +10 -0
- package/dist/components/radio/Radio.d.ts.map +1 -0
- package/dist/components/radio/Radio.js +41 -0
- package/dist/components/radio/Radio.js.map +1 -0
- package/dist/components/radio/Radio.stories.d.ts +7 -0
- package/dist/components/radio/Radio.stories.d.ts.map +1 -0
- package/dist/components/radio/index.d.ts +2 -0
- package/dist/components/radio/index.d.ts.map +1 -0
- package/dist/components/radio-group/RadioGroup.d.ts +11 -0
- package/dist/components/radio-group/RadioGroup.d.ts.map +1 -0
- package/dist/components/radio-group/RadioGroup.js +27 -0
- package/dist/components/radio-group/RadioGroup.js.map +1 -0
- package/dist/components/radio-group/RadioGroupContext.d.ts +8 -0
- package/dist/components/radio-group/RadioGroupContext.d.ts.map +1 -0
- package/dist/components/radio-group/RadioGroupContext.js +6 -0
- package/dist/components/radio-group/RadioGroupContext.js.map +1 -0
- package/dist/components/radio-group/index.d.ts +3 -0
- package/dist/components/radio-group/index.d.ts.map +1 -0
- package/dist/components/radio-group/useRadioGroup.d.ts +14 -0
- package/dist/components/radio-group/useRadioGroup.d.ts.map +1 -0
- package/dist/components/radio-group/useRadioGroup.js +26 -0
- package/dist/components/radio-group/useRadioGroup.js.map +1 -0
- package/dist/components/scrollbar/Scrollbar.d.ts +13 -0
- package/dist/components/scrollbar/Scrollbar.d.ts.map +1 -0
- package/dist/components/scrollbar/Scrollbar.js +67 -0
- package/dist/components/scrollbar/Scrollbar.js.map +1 -0
- package/dist/components/scrollbar/Scrollbar.module.css.js +4 -0
- package/dist/components/scrollbar/Scrollbar.module.css.js.map +1 -0
- package/dist/components/scrollbar/Scrollbar.stories.d.ts +14 -0
- package/dist/components/scrollbar/Scrollbar.stories.d.ts.map +1 -0
- package/dist/components/scrollbar/index.d.ts +3 -0
- package/dist/components/scrollbar/index.d.ts.map +1 -0
- package/dist/components/scrollbar/types.d.ts +11 -0
- package/dist/components/scrollbar/types.d.ts.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts +7 -0
- package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.js +103 -0
- package/dist/components/segmented-control/SegmentedControl.js.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.module.css.js +4 -0
- package/dist/components/segmented-control/SegmentedControl.module.css.js.map +1 -0
- package/dist/components/segmented-control/SegmentedControl.stories.d.ts +13 -0
- package/dist/components/segmented-control/SegmentedControl.stories.d.ts.map +1 -0
- package/dist/components/segmented-control/index.d.ts +3 -0
- package/dist/components/segmented-control/index.d.ts.map +1 -0
- package/dist/components/segmented-control/types.d.ts +46 -0
- package/dist/components/segmented-control/types.d.ts.map +1 -0
- package/dist/components/switch/Switch.d.ts +4 -0
- package/dist/components/switch/Switch.d.ts.map +1 -0
- package/dist/components/switch/Switch.js +34 -0
- package/dist/components/switch/Switch.js.map +1 -0
- package/dist/components/switch/index.d.ts +2 -0
- package/dist/components/switch/index.d.ts.map +1 -0
- package/dist/components/tag/Tag.d.ts +10 -0
- package/dist/components/tag/Tag.d.ts.map +1 -0
- package/dist/components/tag/Tag.js +52 -0
- package/dist/components/tag/Tag.js.map +1 -0
- package/dist/components/tag/Tag.stories.d.ts +9 -0
- package/dist/components/tag/Tag.stories.d.ts.map +1 -0
- package/dist/components/tag/index.d.ts +2 -0
- package/dist/components/tag/index.d.ts.map +1 -0
- package/dist/components/text/Text/Text.d.ts +3 -0
- package/dist/components/text/Text/Text.d.ts.map +1 -0
- package/dist/components/text/Text/Text.js +38 -0
- package/dist/components/text/Text/Text.js.map +1 -0
- package/dist/components/text/Text/Text.stories.d.ts +12 -0
- package/dist/components/text/Text/Text.stories.d.ts.map +1 -0
- package/dist/components/text/Text/constants.d.ts +114 -0
- package/dist/components/text/Text/constants.d.ts.map +1 -0
- package/dist/components/text/Text/constants.js +45 -0
- package/dist/components/text/Text/constants.js.map +1 -0
- package/dist/components/text/Text/index.d.ts +4 -0
- package/dist/components/text/Text/index.d.ts.map +1 -0
- package/dist/components/text/Text/types.d.ts +21 -0
- package/dist/components/text/Text/types.d.ts.map +1 -0
- package/dist/components/text/Text/typography.module.css.js +4 -0
- package/dist/components/text/Text/typography.module.css.js.map +1 -0
- package/dist/components/text/index.d.ts +2 -0
- package/dist/components/text/index.d.ts.map +1 -0
- package/dist/components/text-link/TextLink.d.ts +6 -0
- package/dist/components/text-link/TextLink.d.ts.map +1 -0
- package/dist/components/text-link/TextLink.js +36 -0
- package/dist/components/text-link/TextLink.js.map +1 -0
- package/dist/components/text-link/TextLink.stories.d.ts +13 -0
- package/dist/components/text-link/TextLink.stories.d.ts.map +1 -0
- package/dist/components/text-link/index.d.ts +2 -0
- package/dist/components/text-link/index.d.ts.map +1 -0
- package/dist/components/text-link/types.d.ts +38 -0
- package/dist/components/text-link/types.d.ts.map +1 -0
- package/dist/components/typography/Icons/Icon.d.ts +22 -0
- package/dist/components/typography/Icons/Icon.d.ts.map +1 -0
- package/dist/components/typography/Icons/Icon.js +34 -0
- package/dist/components/typography/Icons/Icon.js.map +1 -0
- package/dist/components/typography/Icons/Icon.module.css.js +4 -0
- package/dist/components/typography/Icons/Icon.module.css.js.map +1 -0
- package/dist/components/typography/Icons/index.d.ts +208 -0
- package/dist/components/typography/Icons/index.d.ts.map +1 -0
- package/dist/components/typography/Icons/types.d.ts +5 -0
- package/dist/components/typography/Icons/types.d.ts.map +1 -0
- package/dist/components/typography/Text/Text.d.ts +3 -0
- package/dist/components/typography/Text/Text.d.ts.map +1 -0
- package/dist/components/typography/Text/Text.js +24 -0
- package/dist/components/typography/Text/Text.js.map +1 -0
- package/dist/components/typography/Text/Text.stories.d.ts +12 -0
- package/dist/components/typography/Text/Text.stories.d.ts.map +1 -0
- package/dist/components/typography/Text/constants.d.ts +3 -0
- package/dist/components/typography/Text/constants.d.ts.map +1 -0
- package/dist/components/typography/Text/constants.js +36 -0
- package/dist/components/typography/Text/constants.js.map +1 -0
- package/dist/components/typography/Text/index.d.ts +3 -0
- package/dist/components/typography/Text/index.d.ts.map +1 -0
- package/dist/components/typography/Text/types.d.ts +19 -0
- package/dist/components/typography/Text/types.d.ts.map +1 -0
- package/dist/components/typography/Text/typography.module.css.js +4 -0
- package/dist/components/typography/Text/typography.module.css.js.map +1 -0
- package/dist/components/typography/index.d.ts +4 -0
- package/dist/components/typography/index.d.ts.map +1 -0
- package/dist/d2608cfebdf74ed2.svg +21 -0
- package/dist/foundations/color/color.d.ts +292 -0
- package/dist/foundations/color/color.d.ts.map +1 -0
- package/dist/foundations/color/color.js +12 -0
- package/dist/foundations/color/color.js.map +1 -0
- package/dist/foundations/color/colors.stories.d.ts +7 -0
- package/dist/foundations/color/colors.stories.d.ts.map +1 -0
- package/dist/foundations/color/index.d.ts +4 -0
- package/dist/foundations/color/index.d.ts.map +1 -0
- package/dist/foundations/color/primitive.d.ts +155 -0
- package/dist/foundations/color/primitive.d.ts.map +1 -0
- package/dist/foundations/color/primitive.js +152 -0
- package/dist/foundations/color/primitive.js.map +1 -0
- package/dist/foundations/color/semantic.d.ts +157 -0
- package/dist/foundations/color/semantic.d.ts.map +1 -0
- package/dist/foundations/color/semantic.js +57 -0
- package/dist/foundations/color/semantic.js.map +1 -0
- package/dist/foundations/corner-radius/cornerRadius.d.ts +12 -0
- package/dist/foundations/corner-radius/cornerRadius.d.ts.map +1 -0
- package/dist/foundations/corner-radius/cornerRadius.js +12 -0
- package/dist/foundations/corner-radius/cornerRadius.js.map +1 -0
- package/dist/foundations/corner-radius/index.d.ts +2 -0
- package/dist/foundations/corner-radius/index.d.ts.map +1 -0
- package/dist/foundations/index.d.ts +8 -0
- package/dist/foundations/index.d.ts.map +1 -0
- package/dist/foundations/motion/index.d.ts +2 -0
- package/dist/foundations/motion/index.d.ts.map +1 -0
- package/dist/foundations/motion/motion.d.ts +35 -0
- package/dist/foundations/motion/motion.d.ts.map +1 -0
- package/dist/foundations/motion/motion.js +33 -0
- package/dist/foundations/motion/motion.js.map +1 -0
- package/dist/foundations/shadows/index.d.ts +2 -0
- package/dist/foundations/shadows/index.d.ts.map +1 -0
- package/dist/foundations/shadows/shadows.d.ts +13 -0
- package/dist/foundations/shadows/shadows.d.ts.map +1 -0
- package/dist/foundations/shadows/shadows.js +13 -0
- package/dist/foundations/shadows/shadows.js.map +1 -0
- package/dist/foundations/spacing/index.d.ts +2 -0
- package/dist/foundations/spacing/index.d.ts.map +1 -0
- package/dist/foundations/spacing/spacing.d.ts +51 -0
- package/dist/foundations/spacing/spacing.d.ts.map +1 -0
- package/dist/foundations/spacing/spacing.js +54 -0
- package/dist/foundations/spacing/spacing.js.map +1 -0
- package/dist/foundations/theme/ThemeProvider.d.ts +9 -0
- package/dist/foundations/theme/ThemeProvider.d.ts.map +1 -0
- package/dist/foundations/theme/ThemeProvider.js +17 -0
- package/dist/foundations/theme/ThemeProvider.js.map +1 -0
- package/dist/foundations/theme/index.d.ts +5 -0
- package/dist/foundations/theme/index.d.ts.map +1 -0
- package/dist/foundations/theme/theme.d.ts +27 -0
- package/dist/foundations/theme/theme.d.ts.map +1 -0
- package/dist/foundations/theme/theme.js +29 -0
- package/dist/foundations/theme/theme.js.map +1 -0
- package/dist/foundations/theme/types.d.ts +2 -0
- package/dist/foundations/theme/types.d.ts.map +1 -0
- package/dist/foundations/typography/index.d.ts +2 -0
- package/dist/foundations/typography/index.d.ts.map +1 -0
- package/dist/foundations/typography/typography.d.ts +46 -0
- package/dist/foundations/typography/typography.d.ts.map +1 -0
- package/dist/foundations/typography/typography.js +47 -0
- package/dist/foundations/typography/typography.js.map +1 -0
- package/dist/harmony.css +1 -0
- package/dist/hooks/index.d.ts +6 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/useClickOutside.d.ts +15 -0
- package/dist/hooks/useClickOutside.d.ts.map +1 -0
- package/dist/hooks/useClickOutside.js +47 -0
- package/dist/hooks/useClickOutside.js.map +1 -0
- package/dist/hooks/useControlled.d.ts +30 -0
- package/dist/hooks/useControlled.d.ts.map +1 -0
- package/dist/hooks/useControlled.js +85 -0
- package/dist/hooks/useControlled.js.map +1 -0
- package/dist/hooks/useHotKeys.d.ts +45 -0
- package/dist/hooks/useHotKeys.d.ts.map +1 -0
- package/dist/hooks/useHotKeys.js +120 -0
- package/dist/hooks/useHotKeys.js.map +1 -0
- package/dist/hooks/useMediaQueryListener.d.ts +4 -0
- package/dist/hooks/useMediaQueryListener.d.ts.map +1 -0
- package/dist/hooks/useMediaQueryListener.js +23 -0
- package/dist/hooks/useMediaQueryListener.js.map +1 -0
- package/dist/hooks/useScrollLock.d.ts +6 -0
- package/dist/hooks/useScrollLock.d.ts.map +1 -0
- package/dist/hooks/useScrollLock.js +32 -0
- package/dist/hooks/useScrollLock.js.map +1 -0
- package/dist/icons/animatedIcons.d.ts +3 -0
- package/dist/icons/animatedIcons.d.ts.map +1 -0
- package/dist/icons/deprecatedIcons.d.ts +12 -0
- package/dist/icons/deprecatedIcons.d.ts.map +1 -0
- package/dist/icons/icons.d.ts +189 -0
- package/dist/icons/icons.d.ts.map +1 -0
- package/dist/icons/index.d.ts +5 -0
- package/dist/icons/index.d.ts.map +1 -0
- package/dist/icons/logos.d.ts +26 -0
- package/dist/icons/logos.d.ts.map +1 -0
- package/dist/icons/logos.js +52 -0
- package/dist/icons/logos.js.map +1 -0
- package/dist/icons/specialIcons.d.ts +60 -0
- package/dist/icons/specialIcons.d.ts.map +1 -0
- package/dist/icons/specialIcons.js +124 -0
- package/dist/icons/specialIcons.js.map +1 -0
- package/dist/icons/utilityIcons.d.ts +143 -0
- package/dist/icons/utilityIcons.d.ts.map +1 -0
- package/dist/icons/utilityIcons.js +286 -0
- package/dist/icons/utilityIcons.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.es.js +6383 -0
- package/dist/index.es.js.map +1 -0
- package/dist/index.js +59 -0
- package/dist/index.js.map +1 -0
- package/dist/storybook/assets/TextDropShadow.d.ts +2 -0
- package/dist/storybook/assets/TextDropShadow.d.ts.map +1 -0
- package/dist/storybook/colors.stories.d.ts +7 -0
- package/dist/storybook/colors.stories.d.ts.map +1 -0
- package/dist/storybook/components/BackgroundColorExample.d.ts +2 -0
- package/dist/storybook/components/BackgroundColorExample.d.ts.map +1 -0
- package/dist/storybook/components/BetaWarning.d.ts +2 -0
- package/dist/storybook/components/BetaWarning.d.ts.map +1 -0
- package/dist/storybook/components/CardLink.d.ts +10 -0
- package/dist/storybook/components/CardLink.d.ts.map +1 -0
- package/dist/storybook/components/ColorPalette/ColorPalette.d.ts +7 -0
- package/dist/storybook/components/ColorPalette/ColorPalette.d.ts.map +1 -0
- package/dist/storybook/components/ColorPalette/index.d.ts +2 -0
- package/dist/storybook/components/ColorPalette/index.d.ts.map +1 -0
- package/dist/storybook/components/ColorPaletteTable.d.ts +9 -0
- package/dist/storybook/components/ColorPaletteTable.d.ts.map +1 -0
- package/dist/storybook/components/ColorSwatch/ColorSwatch.d.ts +8 -0
- package/dist/storybook/components/ColorSwatch/ColorSwatch.d.ts.map +1 -0
- package/dist/storybook/components/ColorSwatch/index.d.ts +2 -0
- package/dist/storybook/components/ColorSwatch/index.d.ts.map +1 -0
- package/dist/storybook/components/ComponentRule.d.ts +12 -0
- package/dist/storybook/components/ComponentRule.d.ts.map +1 -0
- package/dist/storybook/components/ComponentRules.d.ts +22 -0
- package/dist/storybook/components/ComponentRules.d.ts.map +1 -0
- package/dist/storybook/components/DeprecatedWarning.d.ts +10 -0
- package/dist/storybook/components/DeprecatedWarning.d.ts.map +1 -0
- package/dist/storybook/components/Heading.d.ts +5 -0
- package/dist/storybook/components/Heading.d.ts.map +1 -0
- package/dist/storybook/components/InformationBox.d.ts +16 -0
- package/dist/storybook/components/InformationBox.d.ts.map +1 -0
- package/dist/storybook/components/Link.d.ts +13 -0
- package/dist/storybook/components/Link.d.ts.map +1 -0
- package/dist/storybook/components/RelatedComponents.d.ts +106 -0
- package/dist/storybook/components/RelatedComponents.d.ts.map +1 -0
- package/dist/storybook/components/RelatedFoundations.d.ts +71 -0
- package/dist/storybook/components/RelatedFoundations.d.ts.map +1 -0
- package/dist/storybook/components/SidebarItem.d.ts +8 -0
- package/dist/storybook/components/SidebarItem.d.ts.map +1 -0
- package/dist/storybook/components/Subtitle.d.ts +6 -0
- package/dist/storybook/components/Subtitle.d.ts.map +1 -0
- package/dist/storybook/components/Tip.d.ts +9 -0
- package/dist/storybook/components/Tip.d.ts.map +1 -0
- package/dist/storybook/components/TypographyPanel.d.ts +15 -0
- package/dist/storybook/components/TypographyPanel.d.ts.map +1 -0
- package/dist/storybook/components/index.d.ts +13 -0
- package/dist/storybook/components/index.d.ts.map +1 -0
- package/dist/storybook/index.d.ts +2 -0
- package/dist/storybook/index.d.ts.map +1 -0
- package/dist/storybook/theme/colors.d.ts +23 -0
- package/dist/storybook/theme/colors.d.ts.map +1 -0
- package/dist/storybook/theme/index.d.ts +2 -0
- package/dist/storybook/theme/index.d.ts.map +1 -0
- package/dist/storybook/theme/theme.d.ts +6 -0
- package/dist/storybook/theme/theme.d.ts.map +1 -0
- package/dist/styles/theme.d.ts +3 -0
- package/dist/styles/theme.d.ts.map +1 -0
- package/dist/styles/types.d.ts +55 -0
- package/dist/styles/types.d.ts.map +1 -0
- package/dist/types/colors.d.ts +2 -0
- package/dist/types/colors.d.ts.map +1 -0
- package/dist/types/styles.d.ts +19 -0
- package/dist/types/styles.d.ts.map +1 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/getScrollParent.d.ts +8 -0
- package/dist/utils/getScrollParent.d.ts.map +1 -0
- package/dist/utils/getScrollParent.js +39 -0
- package/dist/utils/getScrollParent.js.map +1 -0
- package/dist/utils/styles.d.ts +7 -0
- package/dist/utils/styles.d.ts.map +1 -0
- package/dist/utils/styles.js +13 -0
- package/dist/utils/styles.js.map +1 -0
- package/package.json +113 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { Button } from './Button';
|
|
3
|
+
declare const meta: Meta<typeof Button>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof Button>;
|
|
6
|
+
export declare const Primary: Story;
|
|
7
|
+
export declare const PrimaryWithColor: Story;
|
|
8
|
+
export declare const Secondary: Story;
|
|
9
|
+
export declare const Tertiary: Story;
|
|
10
|
+
export declare const Destructive: Story;
|
|
11
|
+
//# sourceMappingURL=Button.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.stories.d.ts","sourceRoot":"","sources":["../../src/components/button/Button.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAEtD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAOjC,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,MAAM,CAyB7B,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,MAAM,CAAC,CAAA;AAGpC,eAAO,MAAM,OAAO,EAAE,KAAU,CAAA;AAGhC,eAAO,MAAM,gBAAgB,EAAE,KAAyC,CAAA;AAGxE,eAAO,MAAM,SAAS,EAAE,KAAmD,CAAA;AAG3E,eAAO,MAAM,QAAQ,EAAE,KAAkD,CAAA;AAGzE,eAAO,MAAM,WAAW,EAAE,KAAqD,CAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FilterButtonProps } from './types';
|
|
3
|
+
export declare const FilterButton: (props: FilterButtonProps & import("react").RefAttributes<HTMLButtonElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null;
|
|
4
|
+
//# sourceMappingURL=FilterButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterButton.d.ts","sourceRoot":"","sources":["../../../../src/components/button/FilterButton/FilterButton.tsx"],"names":[],"mappings":";AASA,OAAO,EAAsB,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAE/D,eAAO,MAAM,YAAY,gLAkNxB,CAAA"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { __assign } from '../../../_virtual/_tslib.js';
|
|
2
|
+
import { jsxs, jsx } from '@emotion/react/jsx-runtime';
|
|
3
|
+
import { forwardRef, useState, useCallback, useRef } from 'react';
|
|
4
|
+
import { useTheme } from '@emotion/react';
|
|
5
|
+
import { BaseButton } from '../BaseButton/BaseButton.js';
|
|
6
|
+
import { Box } from '../../layout/Box/Box.js';
|
|
7
|
+
import { Flex } from '../../layout/Flex/Flex.js';
|
|
8
|
+
import { Paper } from '../../layout/Paper/Paper.js';
|
|
9
|
+
import { Popup } from '../../layout/Popup/Popup.js';
|
|
10
|
+
import { useControlled } from '../../../hooks/useControlled.js';
|
|
11
|
+
import { IconCloseAlt, IconCaretDown } from '../../../icons/utilityIcons.js';
|
|
12
|
+
import '@emotion/css';
|
|
13
|
+
|
|
14
|
+
var FilterButton = forwardRef(function FilterButton(props, ref) {
|
|
15
|
+
var _a, _b;
|
|
16
|
+
var selectionProp = props.selection, label = props.label, options = props.options, onSelect = props.onSelect, isDisabled = props.isDisabled, _c = props.variant, variant = _c === void 0 ? 'fillContainer' : _c, _d = props.size, size = _d === void 0 ? 'default' : _d, _e = props.iconRight, iconRight = _e === void 0 ? IconCaretDown : _e, popupAnchorOrigin = props.popupAnchorOrigin, popupTransformOrigin = props.popupTransformOrigin, popupPortalLocation = props.popupPortalLocation, popupZIndex = props.popupZIndex;
|
|
17
|
+
var _f = useTheme(), color = _f.color, cornerRadius = _f.cornerRadius, spacing = _f.spacing, typography = _f.typography;
|
|
18
|
+
var _g = useControlled({
|
|
19
|
+
controlledProp: selectionProp,
|
|
20
|
+
defaultValue: null,
|
|
21
|
+
stateName: 'selection',
|
|
22
|
+
componentName: 'FilterButton'
|
|
23
|
+
}), selection = _g[0], setSelection = _g[1];
|
|
24
|
+
var selectedOption = options.find(function (option) { return option.value === selection; });
|
|
25
|
+
var selectedLabel = (_a = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.label) !== null && _a !== void 0 ? _a : selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.value;
|
|
26
|
+
var _h = useState(false), isOpen = _h[0], setIsOpen = _h[1];
|
|
27
|
+
// Size Styles
|
|
28
|
+
var defaultStyles = {
|
|
29
|
+
paddingLeft: spacing.m,
|
|
30
|
+
paddingRight: spacing.m,
|
|
31
|
+
paddingTop: spacing.s,
|
|
32
|
+
paddingBottom: spacing.s
|
|
33
|
+
};
|
|
34
|
+
var defaultIconStyles = {
|
|
35
|
+
width: spacing.unit4,
|
|
36
|
+
height: spacing.unit4
|
|
37
|
+
};
|
|
38
|
+
var smallStyles = {
|
|
39
|
+
paddingLeft: spacing.m,
|
|
40
|
+
paddingRight: spacing.m,
|
|
41
|
+
paddingTop: spacing.xs,
|
|
42
|
+
paddingBottom: spacing.xs
|
|
43
|
+
};
|
|
44
|
+
var smallIconStyles = {
|
|
45
|
+
width: spacing.unit3,
|
|
46
|
+
height: spacing.unit3
|
|
47
|
+
};
|
|
48
|
+
var fillContainerStyles = {
|
|
49
|
+
background: color.secondary.s400,
|
|
50
|
+
border: "1px solid ".concat(color.secondary.s400),
|
|
51
|
+
'&:hover': {
|
|
52
|
+
border: "1px solid ".concat(color.secondary.s400),
|
|
53
|
+
transform: 'none'
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
var activeStyle = variant !== 'fillContainer' || selection === null
|
|
57
|
+
? {
|
|
58
|
+
border: "1px solid ".concat(color.border.strong),
|
|
59
|
+
background: color.background.surface2
|
|
60
|
+
}
|
|
61
|
+
: {};
|
|
62
|
+
// Button Styles
|
|
63
|
+
var buttonCss = __assign(__assign(__assign({ background: 'transparent', border: "1px solid ".concat(color.border.strong), borderRadius: cornerRadius.s, color: variant === 'fillContainer' && selection !== null
|
|
64
|
+
? color.special.white
|
|
65
|
+
: color.text.default, gap: spacing.xs, fontSize: typography.size.s, fontWeight: typography.weight.demiBold, lineHeight: typography.lineHeight.s, '&:hover': {
|
|
66
|
+
border: "1px solid ".concat(color.neutral.n800),
|
|
67
|
+
transform: 'none'
|
|
68
|
+
}, '&:active': __assign(__assign({}, activeStyle), { transform: 'none' }) }, (size === 'small' ? smallStyles : defaultStyles)), (isOpen ? activeStyle : {})), (variant === 'fillContainer' && selection !== null
|
|
69
|
+
? fillContainerStyles
|
|
70
|
+
: {}));
|
|
71
|
+
var iconCss = size === 'small' ? smallIconStyles : defaultIconStyles;
|
|
72
|
+
// Popup Styles
|
|
73
|
+
var optionCss = {
|
|
74
|
+
background: 'transparent',
|
|
75
|
+
border: 'none',
|
|
76
|
+
color: color.text.default,
|
|
77
|
+
fontWeight: typography.weight.medium,
|
|
78
|
+
gap: spacing.s,
|
|
79
|
+
paddingLeft: spacing.m,
|
|
80
|
+
paddingRight: spacing.m,
|
|
81
|
+
paddingTop: spacing.s,
|
|
82
|
+
paddingBottom: spacing.s,
|
|
83
|
+
width: '100%',
|
|
84
|
+
borderRadius: cornerRadius.s,
|
|
85
|
+
justifyContent: 'flex-start',
|
|
86
|
+
'&:hover': {
|
|
87
|
+
transform: 'none',
|
|
88
|
+
backgroundColor: color.secondary.s300,
|
|
89
|
+
color: color.special.white
|
|
90
|
+
},
|
|
91
|
+
'&:active': {
|
|
92
|
+
transform: 'none'
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
var optionIconCss = {
|
|
96
|
+
width: spacing.unit4,
|
|
97
|
+
height: spacing.unit4
|
|
98
|
+
};
|
|
99
|
+
var handleButtonClick = useCallback(function () {
|
|
100
|
+
if (variant === 'fillContainer' && selection !== null) {
|
|
101
|
+
setSelection(null);
|
|
102
|
+
// @ts-ignore
|
|
103
|
+
onSelect === null || onSelect === void 0 ? void 0 : onSelect(null);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
setIsOpen(function (isOpen) { return !isOpen; });
|
|
107
|
+
}
|
|
108
|
+
}, [selection, variant, setIsOpen, setSelection, onSelect]);
|
|
109
|
+
var handleOptionSelect = useCallback(function (option) {
|
|
110
|
+
setSelection(option.value);
|
|
111
|
+
onSelect === null || onSelect === void 0 ? void 0 : onSelect(option.value);
|
|
112
|
+
}, [onSelect, setSelection]);
|
|
113
|
+
var anchorRef = useRef(null);
|
|
114
|
+
return (jsxs(BaseButton, __assign({ ref: ref || anchorRef, styles: {
|
|
115
|
+
button: buttonCss,
|
|
116
|
+
icon: iconCss
|
|
117
|
+
}, onClick: handleButtonClick, iconRight: variant === 'fillContainer' && selection !== null
|
|
118
|
+
? IconCloseAlt
|
|
119
|
+
: iconRight, disabled: isDisabled, "aria-haspopup": 'listbox', "aria-expanded": isOpen }, { children: [selectedLabel !== null && selectedLabel !== void 0 ? selectedLabel : label, jsx(Popup, __assign({ anchorRef: ref || anchorRef, isVisible: isOpen, onClose: function () { return setIsOpen(false); }, anchorOrigin: popupAnchorOrigin, transformOrigin: popupTransformOrigin, portalLocation: popupPortalLocation, zIndex: popupZIndex }, { children: jsx(Paper, __assign({ mt: 's', border: 'strong', shadow: 'far' }, { children: jsx(Box, __assign({ p: 's' }, { children: jsx(Flex, __assign({ direction: 'column', alignItems: 'flex-start', justifyContent: 'center', role: 'listbox', "aria-label": (_b = selectedLabel !== null && selectedLabel !== void 0 ? selectedLabel : label) !== null && _b !== void 0 ? _b : props['aria-label'], "aria-activedescendant": selectedLabel }, { children: options.map(function (option) {
|
|
120
|
+
var _a, _b;
|
|
121
|
+
return (jsx(BaseButton, __assign({ iconLeft: option.icon, styles: {
|
|
122
|
+
button: optionCss,
|
|
123
|
+
icon: optionIconCss
|
|
124
|
+
}, onClick: function () { return handleOptionSelect(option); }, "aria-label": (_a = option.label) !== null && _a !== void 0 ? _a : option.value, role: 'option' }, { children: (_b = option.label) !== null && _b !== void 0 ? _b : option.value }), option.value));
|
|
125
|
+
}) })) })) })) }))] })));
|
|
126
|
+
});
|
|
127
|
+
|
|
128
|
+
export { FilterButton };
|
|
129
|
+
//# sourceMappingURL=FilterButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterButton.js","sources":["../../../../src/components/button/FilterButton/FilterButton.tsx"],"sourcesContent":["import { forwardRef, RefObject, useRef, useState, useCallback } from 'react'\n\nimport { CSSObject, useTheme } from '@emotion/react'\n\nimport { BaseButton } from 'components/button/BaseButton/BaseButton'\nimport { Box, Flex, Paper, Popup } from 'components/layout'\nimport { useControlled } from 'hooks/useControlled'\nimport { IconCaretDown, IconCloseAlt } from 'icons'\n\nimport { FilterButtonOption, FilterButtonProps } from './types'\n\nexport const FilterButton = forwardRef<HTMLButtonElement, FilterButtonProps>(\n function FilterButton(props, ref) {\n const {\n selection: selectionProp,\n label,\n options,\n onSelect,\n isDisabled,\n variant = 'fillContainer',\n size = 'default',\n iconRight = IconCaretDown,\n popupAnchorOrigin,\n popupTransformOrigin,\n popupPortalLocation,\n popupZIndex\n } = props\n const { color, cornerRadius, spacing, typography } = useTheme()\n const [selection, setSelection] = useControlled({\n controlledProp: selectionProp,\n defaultValue: null,\n stateName: 'selection',\n componentName: 'FilterButton'\n })\n const selectedOption = options.find((option) => option.value === selection)\n const selectedLabel = selectedOption?.label ?? selectedOption?.value\n\n const [isOpen, setIsOpen] = useState(false)\n\n // Size Styles\n const defaultStyles: CSSObject = {\n paddingLeft: spacing.m,\n paddingRight: spacing.m,\n paddingTop: spacing.s,\n paddingBottom: spacing.s\n }\n const defaultIconStyles: CSSObject = {\n width: spacing.unit4,\n height: spacing.unit4\n }\n\n const smallStyles: CSSObject = {\n paddingLeft: spacing.m,\n paddingRight: spacing.m,\n paddingTop: spacing.xs,\n paddingBottom: spacing.xs\n }\n const smallIconStyles: CSSObject = {\n width: spacing.unit3,\n height: spacing.unit3\n }\n\n const fillContainerStyles: CSSObject = {\n background: color.secondary.s400,\n border: `1px solid ${color.secondary.s400}`,\n '&:hover': {\n border: `1px solid ${color.secondary.s400}`,\n transform: 'none'\n }\n }\n\n const activeStyle =\n variant !== 'fillContainer' || selection === null\n ? {\n border: `1px solid ${color.border.strong}`,\n background: color.background.surface2\n }\n : {}\n\n // Button Styles\n const buttonCss: CSSObject = {\n background: 'transparent',\n border: `1px solid ${color.border.strong}`,\n borderRadius: cornerRadius.s,\n color:\n variant === 'fillContainer' && selection !== null\n ? color.special.white\n : color.text.default,\n gap: spacing.xs,\n fontSize: typography.size.s,\n fontWeight: typography.weight.demiBold,\n lineHeight: typography.lineHeight.s,\n\n '&:hover': {\n border: `1px solid ${color.neutral.n800}`,\n transform: 'none'\n },\n\n '&:active': {\n ...activeStyle,\n transform: 'none'\n },\n\n ...(size === 'small' ? smallStyles : defaultStyles),\n ...(isOpen ? activeStyle : {}),\n ...(variant === 'fillContainer' && selection !== null\n ? fillContainerStyles\n : {})\n }\n\n const iconCss = size === 'small' ? smallIconStyles : defaultIconStyles\n\n // Popup Styles\n const optionCss: CSSObject = {\n background: 'transparent',\n border: 'none',\n color: color.text.default,\n fontWeight: typography.weight.medium,\n gap: spacing.s,\n paddingLeft: spacing.m,\n paddingRight: spacing.m,\n paddingTop: spacing.s,\n paddingBottom: spacing.s,\n width: '100%',\n borderRadius: cornerRadius.s,\n justifyContent: 'flex-start',\n\n '&:hover': {\n transform: 'none',\n backgroundColor: color.secondary.s300,\n color: color.special.white\n },\n\n '&:active': {\n transform: 'none'\n }\n }\n const optionIconCss: CSSObject = {\n width: spacing.unit4,\n height: spacing.unit4\n }\n\n const handleButtonClick = useCallback(() => {\n if (variant === 'fillContainer' && selection !== null) {\n setSelection(null)\n // @ts-ignore\n onSelect?.(null)\n } else {\n setIsOpen((isOpen: boolean) => !isOpen)\n }\n }, [selection, variant, setIsOpen, setSelection, onSelect])\n\n const handleOptionSelect = useCallback(\n (option: FilterButtonOption) => {\n setSelection(option.value)\n onSelect?.(option.value)\n },\n [onSelect, setSelection]\n )\n\n const anchorRef = useRef<HTMLButtonElement>(null)\n\n return (\n <BaseButton\n ref={ref || anchorRef}\n styles={{\n button: buttonCss,\n icon: iconCss\n }}\n onClick={handleButtonClick}\n iconRight={\n variant === 'fillContainer' && selection !== null\n ? IconCloseAlt\n : iconRight\n }\n disabled={isDisabled}\n aria-haspopup='listbox'\n aria-expanded={isOpen}\n >\n {selectedLabel ?? label}\n <Popup\n anchorRef={(ref as RefObject<HTMLElement>) || anchorRef}\n isVisible={isOpen}\n onClose={() => setIsOpen(false)}\n anchorOrigin={popupAnchorOrigin}\n transformOrigin={popupTransformOrigin}\n portalLocation={popupPortalLocation}\n zIndex={popupZIndex}\n >\n <Paper mt='s' border='strong' shadow='far'>\n <Box p='s'>\n <Flex\n direction='column'\n alignItems='flex-start'\n justifyContent='center'\n role='listbox'\n aria-label={selectedLabel ?? label ?? props['aria-label']}\n aria-activedescendant={selectedLabel}\n >\n {options.map((option) => (\n <BaseButton\n key={option.value}\n iconLeft={option.icon}\n styles={{\n button: optionCss,\n icon: optionIconCss\n }}\n onClick={() => handleOptionSelect(option)}\n aria-label={option.label ?? option.value}\n role='option'\n >\n {option.label ?? option.value}\n </BaseButton>\n ))}\n </Flex>\n </Box>\n </Paper>\n </Popup>\n </BaseButton>\n )\n }\n)\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { FilterButton } from './FilterButton';
|
|
3
|
+
declare const meta: Meta<typeof FilterButton>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof FilterButton>;
|
|
6
|
+
export declare const Primary: Story;
|
|
7
|
+
export declare const FillContainer: Story;
|
|
8
|
+
export declare const ReplaceLabel: Story;
|
|
9
|
+
export declare const CustomIcon: Story;
|
|
10
|
+
export declare const Accessibility: Story;
|
|
11
|
+
//# sourceMappingURL=FilterButton.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterButton.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/button/FilterButton/FilterButton.stories.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAMtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAG7C,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,YAAY,CAwBnC,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,YAAY,CAAC,CAAA;AAG1C,eAAO,MAAM,OAAO,EAAE,KAerB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAe3B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAgB1B,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAexB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAiB3B,CAAA"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { IconComponent } from "../../icon";
|
|
2
|
+
import { Origin } from "../../layout/Popup/types";
|
|
3
|
+
export type FilterButtonSize = 'default' | 'small';
|
|
4
|
+
export type FilterButtonVariant = 'fillContainer' | 'replaceLabel';
|
|
5
|
+
export type FilterButtonOption = {
|
|
6
|
+
value: string;
|
|
7
|
+
/**
|
|
8
|
+
* The label to display. If not provided, uses the value.
|
|
9
|
+
*/
|
|
10
|
+
label?: string;
|
|
11
|
+
icon?: IconComponent;
|
|
12
|
+
};
|
|
13
|
+
export type FilterButtonProps = {
|
|
14
|
+
/**
|
|
15
|
+
* Selection options
|
|
16
|
+
* e.g. { label: 'Option A', icon: IconRadar }
|
|
17
|
+
*/
|
|
18
|
+
options: FilterButtonOption[];
|
|
19
|
+
/**
|
|
20
|
+
* The text that appears on the button component.
|
|
21
|
+
* If no label is provided, a different Icon can be specified
|
|
22
|
+
* to contextually inform users.
|
|
23
|
+
*/
|
|
24
|
+
label?: string;
|
|
25
|
+
/**
|
|
26
|
+
* If no label is provided, specify an optional aria-label
|
|
27
|
+
*/
|
|
28
|
+
'aria-label'?: string;
|
|
29
|
+
/**
|
|
30
|
+
* The selected value
|
|
31
|
+
*/
|
|
32
|
+
selection?: string | null;
|
|
33
|
+
/**
|
|
34
|
+
* The button size
|
|
35
|
+
* @default FilterButtonSize.DEFAULT
|
|
36
|
+
*/
|
|
37
|
+
size?: FilterButtonSize;
|
|
38
|
+
/**
|
|
39
|
+
* The type of filter button
|
|
40
|
+
* @default FilterButtonType.FILL_CONTAINER
|
|
41
|
+
*/
|
|
42
|
+
variant?: FilterButtonVariant;
|
|
43
|
+
/**
|
|
44
|
+
* Optional icon element to include on the left side of the button
|
|
45
|
+
*/
|
|
46
|
+
iconLeft?: IconComponent;
|
|
47
|
+
/**
|
|
48
|
+
* Optional icon element to include on the right side of the button
|
|
49
|
+
*/
|
|
50
|
+
iconRight?: IconComponent;
|
|
51
|
+
/**
|
|
52
|
+
* What to do when an option is selected
|
|
53
|
+
*/
|
|
54
|
+
onSelect?: (label: string) => void;
|
|
55
|
+
/**
|
|
56
|
+
* Whether interaction is disabled
|
|
57
|
+
*/
|
|
58
|
+
isDisabled?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Popup anchor origin
|
|
61
|
+
* @default { horizontal: 'center', vertical: 'bottom' }
|
|
62
|
+
*/
|
|
63
|
+
popupAnchorOrigin?: Origin;
|
|
64
|
+
/**
|
|
65
|
+
* Popup transform origin
|
|
66
|
+
* @default { horizontal: 'center', vertical: 'top' }
|
|
67
|
+
*/
|
|
68
|
+
popupTransformOrigin?: Origin;
|
|
69
|
+
/**
|
|
70
|
+
* Popup portal location passed to the inner popup
|
|
71
|
+
*/
|
|
72
|
+
popupPortalLocation?: HTMLElement;
|
|
73
|
+
/**
|
|
74
|
+
* zIndex applied to the inner Popup component
|
|
75
|
+
*/
|
|
76
|
+
popupZIndex?: number;
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/button/FilterButton/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAuB;AAC/C,OAAO,EAAE,MAAM,EAAE,iCAAqC;AAEtD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,OAAO,CAAA;AAElD,MAAM,MAAM,mBAAmB,GAAG,eAAe,GAAG,cAAc,CAAA;AAElE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,aAAa,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,OAAO,EAAE,kBAAkB,EAAE,CAAA;IAE7B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAEzB;;;OAGG;IACH,IAAI,CAAC,EAAE,gBAAgB,CAAA;IAEvB;;;OAGG;IACH,OAAO,CAAC,EAAE,mBAAmB,CAAA;IAE7B;;OAEG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAA;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE,aAAa,CAAA;IAEzB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAE7B;;OAEG;IACH,mBAAmB,CAAC,EAAE,WAAW,CAAA;IAEjC;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { FollowButtonProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Special button for following or unfollowing a user.
|
|
4
|
+
*/
|
|
5
|
+
export declare const FollowButton: (props: FollowButtonProps) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=FollowButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FollowButton.d.ts","sourceRoot":"","sources":["../../../../src/components/button/FollowButton/FollowButton.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAqBhD;;GAEG;AACH,eAAO,MAAM,YAAY,UAAW,iBAAiB,qDAiJpD,CAAA"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { __rest, __assign } from '../../../_virtual/_tslib.js';
|
|
2
|
+
import { jsxs, jsx } from '@emotion/react/jsx-runtime';
|
|
3
|
+
import { useState, useCallback, useEffect } from 'react';
|
|
4
|
+
import { useTheme } from '@emotion/react';
|
|
5
|
+
import styled from '@emotion/styled';
|
|
6
|
+
import { Flex } from '../../layout/Flex/Flex.js';
|
|
7
|
+
import { Text } from '../../text/Text/Text.js';
|
|
8
|
+
import { useControlled } from '../../../hooks/useControlled.js';
|
|
9
|
+
import { IconUserFollow, IconUserFollowing, IconUserUnfollow } from '../../../icons/utilityIcons.js';
|
|
10
|
+
import '@emotion/css';
|
|
11
|
+
|
|
12
|
+
var messages = {
|
|
13
|
+
follow: 'Follow',
|
|
14
|
+
following: 'Following',
|
|
15
|
+
unfollow: 'Unfollow'
|
|
16
|
+
};
|
|
17
|
+
var InputRoot = styled.input({
|
|
18
|
+
cursor: 'inherit',
|
|
19
|
+
position: 'absolute',
|
|
20
|
+
opacity: 0,
|
|
21
|
+
width: '100%',
|
|
22
|
+
height: '100%',
|
|
23
|
+
top: 0,
|
|
24
|
+
left: 0,
|
|
25
|
+
margin: 0,
|
|
26
|
+
padding: 0,
|
|
27
|
+
zIndex: 1
|
|
28
|
+
});
|
|
29
|
+
/**
|
|
30
|
+
* Special button for following or unfollowing a user.
|
|
31
|
+
*/
|
|
32
|
+
var FollowButton = function (props) {
|
|
33
|
+
var _a = props.variant, variant = _a === void 0 ? 'default' : _a, _b = props.isFollowing, isFollowing = _b === void 0 ? false : _b, onUnfollow = props.onUnfollow, onFollow = props.onFollow, _c = props.size, size = _c === void 0 ? 'default' : _c, other = __rest(props, ["variant", "isFollowing", "onUnfollow", "onFollow", "size"]);
|
|
34
|
+
var type = other.type;
|
|
35
|
+
var _d = useControlled({
|
|
36
|
+
componentName: 'FollowButton',
|
|
37
|
+
controlledProp: isFollowing,
|
|
38
|
+
defaultValue: undefined,
|
|
39
|
+
stateName: 'following'
|
|
40
|
+
}), value = _d[0], setValueState = _d[1];
|
|
41
|
+
// Track hover manually to swap text and icon
|
|
42
|
+
var _e = useState(false), isHovering = _e[0], setIsHovering = _e[1];
|
|
43
|
+
var _f = useState(false), isPressing = _f[0], setIsPressing = _f[1];
|
|
44
|
+
var handleMouseEnter = useCallback(function () {
|
|
45
|
+
setIsHovering(true);
|
|
46
|
+
}, []);
|
|
47
|
+
var handleMouseDown = useCallback(function () {
|
|
48
|
+
setIsPressing(true);
|
|
49
|
+
}, []);
|
|
50
|
+
var handleMouseLeave = useCallback(function () {
|
|
51
|
+
setIsHovering(false);
|
|
52
|
+
}, []);
|
|
53
|
+
var handleMouseUp = useCallback(function () {
|
|
54
|
+
setIsPressing(false);
|
|
55
|
+
}, []);
|
|
56
|
+
var handlePressIn = useCallback(function () {
|
|
57
|
+
setIsHovering(true);
|
|
58
|
+
setIsPressing(true);
|
|
59
|
+
}, []);
|
|
60
|
+
var handlePressOut = useCallback(function () {
|
|
61
|
+
setIsHovering(false);
|
|
62
|
+
setIsPressing(false);
|
|
63
|
+
}, []);
|
|
64
|
+
useEffect(function () { }, [value]);
|
|
65
|
+
var handleClick = useCallback(function () {
|
|
66
|
+
if (value) {
|
|
67
|
+
onUnfollow === null || onUnfollow === void 0 ? void 0 : onUnfollow();
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
onFollow === null || onFollow === void 0 ? void 0 : onFollow();
|
|
71
|
+
}
|
|
72
|
+
setValueState(!value);
|
|
73
|
+
}, [value, setValueState, onUnfollow, onFollow]);
|
|
74
|
+
var checkedValue = value;
|
|
75
|
+
var Icon = IconUserFollow;
|
|
76
|
+
var text = messages.follow;
|
|
77
|
+
if (checkedValue && !isHovering) {
|
|
78
|
+
Icon = IconUserFollowing;
|
|
79
|
+
text = messages.following;
|
|
80
|
+
}
|
|
81
|
+
else if (checkedValue && isHovering && !isPressing) {
|
|
82
|
+
Icon = IconUserUnfollow;
|
|
83
|
+
text = messages.unfollow;
|
|
84
|
+
}
|
|
85
|
+
var _g = useTheme(), color = _g.color, cornerRadius = _g.cornerRadius;
|
|
86
|
+
var textColor = checkedValue || isHovering || isPressing
|
|
87
|
+
? color.static.white
|
|
88
|
+
: color.primary.primary;
|
|
89
|
+
var rootCss = {
|
|
90
|
+
cursor: 'pointer',
|
|
91
|
+
minWidth: size === 'small' ? 128 : 152,
|
|
92
|
+
width: '100%',
|
|
93
|
+
userSelect: 'none',
|
|
94
|
+
borderRadius: variant === 'pill' ? cornerRadius['2xl'] : cornerRadius.s,
|
|
95
|
+
background: isPressing
|
|
96
|
+
? color.primary.p500
|
|
97
|
+
: checkedValue || isHovering
|
|
98
|
+
? color.primary.primary
|
|
99
|
+
: color.static.white,
|
|
100
|
+
border: "1px solid ".concat(isPressing ? color.primary.p500 : color.primary.primary)
|
|
101
|
+
};
|
|
102
|
+
// Handles case where user mouses down, moves cursor, and mouses up
|
|
103
|
+
useEffect(function () {
|
|
104
|
+
if (isPressing) {
|
|
105
|
+
document.addEventListener('mouseup', handleMouseUp);
|
|
106
|
+
return function () {
|
|
107
|
+
document.removeEventListener('mouseup', handleMouseUp);
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
return undefined;
|
|
111
|
+
}, [isPressing, handleMouseUp]);
|
|
112
|
+
var rootProps = {
|
|
113
|
+
onMouseEnter: handleMouseEnter,
|
|
114
|
+
onMouseLeave: handleMouseLeave,
|
|
115
|
+
onMouseDown: handleMouseDown,
|
|
116
|
+
onMouseUp: handleMouseUp,
|
|
117
|
+
onTouchStart: handlePressIn,
|
|
118
|
+
onTouchEnd: handlePressOut
|
|
119
|
+
};
|
|
120
|
+
var buttonProps = type === 'checkbox' ? undefined : other;
|
|
121
|
+
var inputProps = type === 'checkbox' ? other : undefined;
|
|
122
|
+
return (jsxs(Flex, __assign({ as: type === 'checkbox' ? 'label' : 'button', h: size === 'small' ? 28 : 32, direction: 'row', alignItems: 'center', justifyContent: 'center', gap: 'xs', pv: 's', css: rootCss,
|
|
123
|
+
// @ts-ignore flex not smart enough
|
|
124
|
+
onClick: handleClick }, buttonProps, rootProps, { children: [jsx(Icon, { height: 18, width: 18, css: { path: { fill: textColor } } }), jsx(Text, __assign({ variant: 'label', size: size === 'small' ? 's' : 'l', strength: 'default', css: { color: textColor } }, { children: text })), type === 'checkbox' ? (jsx(InputRoot, __assign({}, inputProps, { checked: isFollowing }))) : null] })));
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
export { FollowButton };
|
|
128
|
+
//# sourceMappingURL=FollowButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FollowButton.js","sources":["../../../../src/components/button/FollowButton/FollowButton.tsx"],"sourcesContent":["import { useState, useCallback, useEffect } from 'react'\n\nimport { useTheme, type CSSObject } from '@emotion/react'\nimport styled from '@emotion/styled'\n\nimport type { IconComponent } from 'components/icon'\nimport { Flex } from 'components/layout/Flex'\nimport { Text } from 'components/text/Text'\nimport { useControlled } from 'hooks/useControlled'\nimport { IconUserFollowing, IconUserFollow, IconUserUnfollow } from 'icons'\n\nimport type { FollowButtonProps } from './types'\n\nconst messages = {\n follow: 'Follow',\n following: 'Following',\n unfollow: 'Unfollow'\n}\n\nconst InputRoot = styled.input({\n cursor: 'inherit',\n position: 'absolute',\n opacity: 0,\n width: '100%',\n height: '100%',\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n zIndex: 1\n})\n\n/**\n * Special button for following or unfollowing a user.\n */\nexport const FollowButton = (props: FollowButtonProps) => {\n const {\n variant = 'default',\n isFollowing = false,\n onUnfollow,\n onFollow,\n size = 'default',\n ...other\n } = props\n const { type } = other\n const [value, setValueState] = useControlled({\n componentName: 'FollowButton',\n controlledProp: isFollowing,\n defaultValue: undefined,\n stateName: 'following'\n })\n\n // Track hover manually to swap text and icon\n const [isHovering, setIsHovering] = useState(false)\n const [isPressing, setIsPressing] = useState(false)\n\n const handleMouseEnter = useCallback(() => {\n setIsHovering(true)\n }, [])\n\n const handleMouseDown = useCallback(() => {\n setIsPressing(true)\n }, [])\n\n const handleMouseLeave = useCallback(() => {\n setIsHovering(false)\n }, [])\n\n const handleMouseUp = useCallback(() => {\n setIsPressing(false)\n }, [])\n\n const handlePressIn = useCallback(() => {\n setIsHovering(true)\n setIsPressing(true)\n }, [])\n\n const handlePressOut = useCallback(() => {\n setIsHovering(false)\n setIsPressing(false)\n }, [])\n\n useEffect(() => {}, [value])\n\n const handleClick = useCallback(() => {\n if (value) {\n onUnfollow?.()\n } else {\n onFollow?.()\n }\n setValueState(!value)\n }, [value, setValueState, onUnfollow, onFollow])\n\n const checkedValue = value\n let Icon: IconComponent | null = IconUserFollow\n let text = messages.follow\n if (checkedValue && !isHovering) {\n Icon = IconUserFollowing\n text = messages.following\n } else if (checkedValue && isHovering && !isPressing) {\n Icon = IconUserUnfollow\n text = messages.unfollow\n }\n\n const { color, cornerRadius } = useTheme()\n\n const textColor =\n checkedValue || isHovering || isPressing\n ? color.static.white\n : color.primary.primary\n\n const rootCss: CSSObject = {\n cursor: 'pointer',\n minWidth: size === 'small' ? 128 : 152,\n width: '100%',\n userSelect: 'none',\n borderRadius: variant === 'pill' ? cornerRadius['2xl'] : cornerRadius.s,\n background: isPressing\n ? color.primary.p500\n : checkedValue || isHovering\n ? color.primary.primary\n : color.static.white,\n border: `1px solid ${\n isPressing ? color.primary.p500 : color.primary.primary\n }`\n }\n\n // Handles case where user mouses down, moves cursor, and mouses up\n useEffect(() => {\n if (isPressing) {\n document.addEventListener('mouseup', handleMouseUp)\n return () => {\n document.removeEventListener('mouseup', handleMouseUp)\n }\n }\n return undefined\n }, [isPressing, handleMouseUp])\n\n const rootProps = {\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n onMouseDown: handleMouseDown,\n onMouseUp: handleMouseUp,\n onTouchStart: handlePressIn,\n onTouchEnd: handlePressOut\n }\n\n const buttonProps = type === 'checkbox' ? undefined : other\n const inputProps = type === 'checkbox' ? other : undefined\n\n return (\n <Flex\n as={type === 'checkbox' ? 'label' : 'button'}\n h={size === 'small' ? 28 : 32}\n direction='row'\n alignItems='center'\n justifyContent='center'\n gap='xs'\n pv='s'\n css={rootCss}\n // @ts-ignore flex not smart enough\n onClick={handleClick}\n {...buttonProps}\n {...rootProps}\n >\n {/* TODO: use theme icon colors (confirm w/design) */}\n <Icon height={18} width={18} css={{ path: { fill: textColor } }} />\n <Text\n variant='label'\n size={size === 'small' ? 's' : 'l'}\n strength='default'\n css={{ color: textColor }}\n >\n {text}\n </Text>\n {type === 'checkbox' ? (\n <InputRoot {...inputProps} checked={isFollowing} />\n ) : null}\n </Flex>\n )\n}\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Meta } from '@storybook/react';
|
|
2
|
+
import { FollowButton } from './FollowButton';
|
|
3
|
+
import type { FollowButtonProps } from './types';
|
|
4
|
+
declare const meta: Meta<typeof FollowButton>;
|
|
5
|
+
export default meta;
|
|
6
|
+
export declare const Default: {};
|
|
7
|
+
export declare const Pill: {
|
|
8
|
+
args: {
|
|
9
|
+
variant: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare const Variants: {
|
|
13
|
+
render: (props: FollowButtonProps) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
14
|
+
};
|
|
15
|
+
export declare const Sizes: {
|
|
16
|
+
render: (props: FollowButtonProps) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
17
|
+
};
|
|
18
|
+
export declare const AsCheckbox: {
|
|
19
|
+
render: (props: FollowButtonProps & {
|
|
20
|
+
type: 'checkbox';
|
|
21
|
+
}) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=FollowButton.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FollowButton.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/button/FollowButton/FollowButton.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAI5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAchD,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,YAAY,CAInC,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,eAAO,MAAM,OAAO,IAAK,CAAA;AAEzB,eAAO,MAAM,IAAI;;;;CAIhB,CAAA;AAuBD,eAAO,MAAM,QAAQ;oBArBW,iBAAiB;CAuBhD,CAAA;AAuBD,eAAO,MAAM,KAAK;oBArBW,iBAAiB;CAuB7C,CAAA;AAeD,eAAO,MAAM,UAAU;oBAbW,iBAAiB,GAAG;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE;CAezE,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { ComponentPropsWithoutRef } from 'react';
|
|
2
|
+
type InputProps = ({
|
|
3
|
+
type: 'checkbox';
|
|
4
|
+
} & Omit<ComponentPropsWithoutRef<'input'>, 'chiildren' | 'size'>) | ({
|
|
5
|
+
type?: 'button' | undefined;
|
|
6
|
+
} & Omit<ComponentPropsWithoutRef<'button'>, 'children'>);
|
|
7
|
+
export type FollowButtonProps = {
|
|
8
|
+
/**
|
|
9
|
+
* Swap between the default (squared) and pill (rounded) forms.
|
|
10
|
+
* @default default
|
|
11
|
+
*/
|
|
12
|
+
variant?: 'default' | 'pill';
|
|
13
|
+
/**
|
|
14
|
+
* Swap between the default and small sizes.
|
|
15
|
+
* @default default
|
|
16
|
+
*/
|
|
17
|
+
size?: 'default' | 'small';
|
|
18
|
+
/**
|
|
19
|
+
* The current state of the button
|
|
20
|
+
*/
|
|
21
|
+
isFollowing?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Callback for when a follow is triggered.
|
|
24
|
+
*/
|
|
25
|
+
onFollow?: () => void;
|
|
26
|
+
/**
|
|
27
|
+
* Callback for when an unfollow is triggered.
|
|
28
|
+
*/
|
|
29
|
+
onUnfollow?: () => void;
|
|
30
|
+
} & InputProps;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/button/FollowButton/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAA;AAErD,KAAK,UAAU,GACX,CAAC;IACC,IAAI,EAAE,UAAU,CAAA;CACjB,GAAG,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC,CAAC,GAClE,CAAC;IACC,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;CAC5B,GAAG,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC,CAAA;AAE7D,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAE5B;;;OAGG;IACH,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IAE1B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IAErB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;CACxB,GAAG,UAAU,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { type CSSObject } from '@emotion/react';
|
|
3
|
+
import type { IconComponent, IconProps } from "../../icon";
|
|
4
|
+
import type { BaseButtonProps } from '../BaseButton/types';
|
|
5
|
+
export type IconButtonProps = {
|
|
6
|
+
icon: IconComponent;
|
|
7
|
+
ripple?: boolean;
|
|
8
|
+
'aria-label': string;
|
|
9
|
+
iconCss?: CSSObject;
|
|
10
|
+
} & Pick<IconProps, 'color' | 'size' | 'shadow' | 'height' | 'width'> & Pick<BaseButtonProps, 'onClick' | 'disabled' | 'className' | 'type'>;
|
|
11
|
+
/**
|
|
12
|
+
* The icon component allows you to pass in an icon and
|
|
13
|
+
* apply color and sizing properties.
|
|
14
|
+
*/
|
|
15
|
+
export declare const IconButton: (props: {
|
|
16
|
+
icon: IconComponent;
|
|
17
|
+
ripple?: boolean | undefined;
|
|
18
|
+
'aria-label': string;
|
|
19
|
+
iconCss?: CSSObject | undefined;
|
|
20
|
+
} & Pick<IconProps, "color" | "size" | "shadow" | "height" | "width"> & Pick<BaseButtonProps, "disabled" | "type" | "className" | "onClick"> & import("react").RefAttributes<HTMLButtonElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null;
|
|
21
|
+
//# sourceMappingURL=IconButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../../src/components/button/IconButton/IconButton.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,mBAAuB;AAG/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAE1D,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,aAAa,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC,GACnE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,MAAM,CAAC,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,UAAU;UAXf,aAAa;;kBAEL,MAAM;;iSAiErB,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { __rest, __assign } from '../../../_virtual/_tslib.js';
|
|
2
|
+
import { jsx } from '@emotion/react/jsx-runtime';
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { useTheme } from '@emotion/react';
|
|
5
|
+
import { BaseButton } from '../BaseButton/BaseButton.js';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The icon component allows you to pass in an icon and
|
|
9
|
+
* apply color and sizing properties.
|
|
10
|
+
*/
|
|
11
|
+
var IconButton = forwardRef(function (props, ref) {
|
|
12
|
+
var Icon = props.icon, iconColor = props.color, _a = props.size, size = _a === void 0 ? 'l' : _a, shadow = props.shadow, ripple = props.ripple, height = props.height, width = props.width, iconCss = props.iconCss, other = __rest(props, ["icon", "color", "size", "shadow", "ripple", "height", "width", "iconCss"]);
|
|
13
|
+
var disabled = other.disabled;
|
|
14
|
+
var _b = useTheme(), color = _b.color, cornerRadius = _b.cornerRadius, spacing = _b.spacing;
|
|
15
|
+
var buttonCss = {
|
|
16
|
+
background: 'transparent',
|
|
17
|
+
border: 'none',
|
|
18
|
+
borderRadius: '50%',
|
|
19
|
+
padding: spacing.xs,
|
|
20
|
+
overflow: 'unset'
|
|
21
|
+
};
|
|
22
|
+
var rippleCss = {
|
|
23
|
+
'&:hover': {
|
|
24
|
+
backgroundColor: color.neutral.n100
|
|
25
|
+
},
|
|
26
|
+
'&:active': {
|
|
27
|
+
backgroundColor: color.neutral.n150
|
|
28
|
+
},
|
|
29
|
+
'&:focus-visible': {
|
|
30
|
+
border: "1px solid ".concat(color.secondary.secondary),
|
|
31
|
+
borderRadius: cornerRadius.s
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
return (jsx(BaseButton, __assign({ ref: ref, type: 'button' }, other, { css: [buttonCss, ripple && rippleCss] }, { children: jsx(Icon, { "aria-hidden": true, color: disabled ? 'disabled' : iconColor, size: size, shadow: shadow, height: height, width: width, css: iconCss }) })));
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
export { IconButton };
|
|
38
|
+
//# sourceMappingURL=IconButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButton.js","sources":["../../../../src/components/button/IconButton/IconButton.tsx"],"sourcesContent":["import { forwardRef } from 'react'\n\nimport { useTheme, type CSSObject } from '@emotion/react'\n\nimport type { IconComponent, IconProps } from 'components/icon'\n\nimport { BaseButton } from '../BaseButton/BaseButton'\nimport type { BaseButtonProps } from '../BaseButton/types'\n\nexport type IconButtonProps = {\n icon: IconComponent\n ripple?: boolean\n 'aria-label': string\n iconCss?: CSSObject\n} & Pick<IconProps, 'color' | 'size' | 'shadow' | 'height' | 'width'> &\n Pick<BaseButtonProps, 'onClick' | 'disabled' | 'className' | 'type'>\n\n/**\n * The icon component allows you to pass in an icon and\n * apply color and sizing properties.\n */\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (props: IconButtonProps, ref) => {\n const {\n icon: Icon,\n color: iconColor,\n size = 'l',\n shadow,\n ripple,\n height,\n width,\n iconCss,\n ...other\n } = props\n const { disabled } = other\n const { color, cornerRadius, spacing } = useTheme()\n\n const buttonCss: CSSObject = {\n background: 'transparent',\n border: 'none',\n borderRadius: '50%',\n padding: spacing.xs,\n overflow: 'unset'\n }\n\n const rippleCss: CSSObject = {\n '&:hover': {\n backgroundColor: color.neutral.n100\n },\n '&:active': {\n backgroundColor: color.neutral.n150\n },\n '&:focus-visible': {\n border: `1px solid ${color.secondary.secondary}`,\n borderRadius: cornerRadius.s\n }\n }\n\n return (\n <BaseButton\n ref={ref}\n type='button'\n {...other}\n css={[buttonCss, ripple && rippleCss]}\n >\n <Icon\n aria-hidden\n color={disabled ? 'disabled' : iconColor}\n size={size}\n shadow={shadow}\n height={height}\n width={width}\n css={iconCss}\n />\n </BaseButton>\n )\n }\n)\n"],"names":["_jsx"],"mappings":";;;;;;AAiBA;;;AAGG;IACU,UAAU,GAAG,UAAU,CAClC,UAAC,KAAsB,EAAE,GAAG,EAAA;IAExB,IAAM,IAAI,GASR,KAAK,CAAA,IATG,EACH,SAAS,GAQd,KAAK,CAAA,KARS,EAChB,EAAA,GAOE,KAAK,CAPG,IAAA,EAAV,IAAI,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,GAAG,GAAA,EAAA,EACV,MAAM,GAMJ,KAAK,CAAA,MAND,EACN,MAAM,GAKJ,KAAK,CAAA,MALD,EACN,MAAM,GAIJ,KAAK,CAJD,MAAA,EACN,KAAK,GAGH,KAAK,CAAA,KAHF,EACL,OAAO,GAEL,KAAK,CAAA,OAFA,EACJ,KAAK,UACN,KAAK,EAVH,CAUL,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,CAAA,CADS,CACD;AACD,IAAA,IAAA,QAAQ,GAAK,KAAK,CAAA,QAAV,CAAU;AACpB,IAAA,IAAA,EAAmC,GAAA,QAAQ,EAAE,EAA3C,KAAK,GAAA,EAAA,CAAA,KAAA,EAAE,YAAY,GAAA,EAAA,CAAA,YAAA,EAAE,OAAO,GAAA,EAAA,CAAA,OAAe,CAAA;AAEnD,IAAA,IAAM,SAAS,GAAc;AAC3B,QAAA,UAAU,EAAE,aAAa;AACzB,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,OAAO,CAAC,EAAE;AACnB,QAAA,QAAQ,EAAE,OAAO;KAClB,CAAA;AAED,IAAA,IAAM,SAAS,GAAc;AAC3B,QAAA,SAAS,EAAE;AACT,YAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;AACpC,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;AACpC,SAAA;AACD,QAAA,iBAAiB,EAAE;AACjB,YAAA,MAAM,EAAE,YAAa,CAAA,MAAA,CAAA,KAAK,CAAC,SAAS,CAAC,SAAS,CAAE;YAChD,YAAY,EAAE,YAAY,CAAC,CAAC;AAC7B,SAAA;KACF,CAAA;AAED,IAAA,QACEA,GAAA,CAAC,UAAU,EAAA,QAAA,CAAA,EACT,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EAAA,EACT,KAAK,EAAA,EACT,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,IAAI,SAAS,CAAC,EAAA,EAAA,EAAA,QAAA,EAErCA,GAAC,CAAA,IAAI,EAEH,EAAA,aAAA,EAAA,IAAA,EAAA,KAAK,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,EACxC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,OAAO,EACZ,CAAA,EAAA,CAAA,CACS,EACd;AACH,CAAC;;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Meta, StoryObj } from '@storybook/react';
|
|
2
|
+
import { IconButton } from './IconButton';
|
|
3
|
+
declare const meta: Meta<typeof IconButton>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof IconButton>;
|
|
6
|
+
export declare const Primary: Story;
|
|
7
|
+
export declare const Default: Story;
|
|
8
|
+
export declare const Size: Story;
|
|
9
|
+
export declare const Color: Story;
|
|
10
|
+
export declare const Ripple: Story;
|
|
11
|
+
//# sourceMappingURL=IconButton.stories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconButton.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/button/IconButton/IconButton.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAKtD,OAAO,EAAE,UAAU,EAAmB,MAAM,cAAc,CAAA;AAE1D,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,UAAU,CAYjC,CAAA;AAED,eAAe,IAAI,CAAA;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,UAAU,CAAC,CAAA;AAExC,eAAO,MAAM,OAAO,EAAE,KAErB,CAAA;AAED,eAAO,MAAM,OAAO,EAAE,KAErB,CAAA;AAED,eAAO,MAAM,IAAI,EAAE,KAUlB,CAAA;AAED,eAAO,MAAM,KAAK,EAAE,KAQnB,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAMpB,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
/**
|
|
3
|
+
* A plain Button component (no border/background). Includes a few variants and options to
|
|
4
|
+
* include and position icons.
|
|
5
|
+
*/
|
|
6
|
+
export declare const PlainButton: (props: {
|
|
7
|
+
variant?: import("./types").PlainButtonVariant | undefined;
|
|
8
|
+
size?: import("./types").PlainButtonSize | undefined;
|
|
9
|
+
} & Omit<import("../BaseButton/types").BaseButtonProps, "styles"> & import("react").RefAttributes<HTMLButtonElement>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | null;
|
|
10
|
+
//# sourceMappingURL=PlainButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlainButton.d.ts","sourceRoot":"","sources":["../../../../src/components/button/PlainButton/PlainButton.tsx"],"names":[],"mappings":";AAQA;;;GAGG;AACH,eAAO,MAAM,WAAW;;;sNAoFvB,CAAA"}
|