@audius/harmony 0.3.1 → 0.3.3
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 +25 -0
- package/dist/TokenBronze.png +0 -0
- package/dist/TokenNoTier.png +0 -0
- package/dist/TokenPlatinum.png +0 -0
- package/dist/TokenSilver.png +0 -0
- package/dist/assets/icons/Album.svg.js +10 -10
- package/dist/assets/icons/Album.svg.js.map +1 -1
- package/dist/assets/icons/AllTime.svg.js +10 -10
- package/dist/assets/icons/AllTime.svg.js.map +1 -1
- package/dist/assets/icons/Appearance.svg.js +10 -10
- package/dist/assets/icons/Appearance.svg.js.map +1 -1
- package/dist/assets/icons/ArrowLeft.svg.js +10 -10
- package/dist/assets/icons/ArrowLeft.svg.js.map +1 -1
- package/dist/assets/icons/ArrowRight.svg.js +10 -10
- package/dist/assets/icons/ArrowRight.svg.js.map +1 -1
- package/dist/assets/icons/ArrowUpToLine.svg.js +78 -0
- package/dist/assets/icons/ArrowUpToLine.svg.js.map +1 -0
- package/dist/assets/icons/ArtistBadge.svg.js +9 -9
- package/dist/assets/icons/ArtistBadge.svg.js.map +1 -1
- package/dist/assets/icons/AudiusLogo.svg.js +10 -10
- package/dist/assets/icons/AudiusLogo.svg.js.map +1 -1
- package/dist/assets/icons/AudiusLogoColor.svg.js +9 -9
- package/dist/assets/icons/AudiusLogoColor.svg.js.map +1 -1
- package/dist/assets/icons/AudiusLogoHorizontal.svg.js +10 -10
- package/dist/assets/icons/AudiusLogoHorizontal.svg.js.map +1 -1
- package/dist/assets/icons/AudiusLogoHorizontalColor.svg.js +9 -9
- package/dist/assets/icons/AudiusLogoHorizontalColor.svg.js.map +1 -1
- package/dist/assets/icons/AudiusLogoHorizontalNew.svg.js +90 -0
- package/dist/assets/icons/AudiusLogoHorizontalNew.svg.js.map +1 -0
- package/dist/assets/icons/AudiusLogoVertical.svg.js +14 -14
- package/dist/assets/icons/AudiusLogoVertical.svg.js.map +1 -1
- package/dist/assets/icons/Blog.svg.js +10 -10
- package/dist/assets/icons/Blog.svg.js.map +1 -1
- package/dist/assets/icons/BoxHeart.svg.js +10 -10
- package/dist/assets/icons/BoxHeart.svg.js.map +1 -1
- package/dist/assets/icons/CalendarDay.svg.js +10 -10
- package/dist/assets/icons/CalendarDay.svg.js.map +1 -1
- package/dist/assets/icons/CalendarMonth.svg.js +10 -10
- package/dist/assets/icons/CalendarMonth.svg.js.map +1 -1
- package/dist/assets/icons/CalendarWeek.svg.js +10 -10
- package/dist/assets/icons/CalendarWeek.svg.js.map +1 -1
- package/dist/assets/icons/Camera.svg.js +10 -10
- package/dist/assets/icons/Camera.svg.js.map +1 -1
- package/dist/assets/icons/Campfire.svg.js +10 -10
- package/dist/assets/icons/Campfire.svg.js.map +1 -1
- package/dist/assets/icons/CaretDown.svg.js +10 -10
- package/dist/assets/icons/CaretDown.svg.js.map +1 -1
- package/dist/assets/icons/CaretLeft.svg.js +10 -10
- package/dist/assets/icons/CaretLeft.svg.js.map +1 -1
- package/dist/assets/icons/CaretRight.svg.js +10 -10
- package/dist/assets/icons/CaretRight.svg.js.map +1 -1
- package/dist/assets/icons/CaretUp.svg.js +10 -10
- package/dist/assets/icons/CaretUp.svg.js.map +1 -1
- package/dist/assets/icons/Cart.svg.js +10 -10
- package/dist/assets/icons/Cart.svg.js.map +1 -1
- package/dist/assets/icons/CastAirplay.svg.js +10 -10
- package/dist/assets/icons/CastAirplay.svg.js.map +1 -1
- package/dist/assets/icons/CastChromecast.svg.js +10 -10
- package/dist/assets/icons/CastChromecast.svg.js.map +1 -1
- package/dist/assets/icons/Check.svg.js +10 -10
- package/dist/assets/icons/Check.svg.js.map +1 -1
- package/dist/assets/icons/Close.svg.js +10 -10
- package/dist/assets/icons/Close.svg.js.map +1 -1
- package/dist/assets/icons/CloseAlt.svg.js +10 -10
- package/dist/assets/icons/CloseAlt.svg.js.map +1 -1
- package/dist/assets/icons/CloudDownload.svg.js +10 -10
- package/dist/assets/icons/CloudDownload.svg.js.map +1 -1
- package/dist/assets/icons/CloudDownloadError.svg.js +11 -11
- package/dist/assets/icons/CloudDownloadError.svg.js.map +1 -1
- package/dist/assets/icons/CloudDownloadInactive.svg.js +10 -10
- package/dist/assets/icons/CloudDownloadInactive.svg.js.map +1 -1
- package/dist/assets/icons/CloudDownloadPaused.svg.js +11 -11
- package/dist/assets/icons/CloudDownloadPaused.svg.js.map +1 -1
- package/dist/assets/icons/CloudDownloadQueued.svg.js +11 -11
- package/dist/assets/icons/CloudDownloadQueued.svg.js.map +1 -1
- package/dist/assets/icons/CloudUpload.svg.js +10 -10
- package/dist/assets/icons/CloudUpload.svg.js.map +1 -1
- package/dist/assets/icons/Coinbase.svg.js +10 -10
- package/dist/assets/icons/Coinbase.svg.js.map +1 -1
- package/dist/assets/icons/CoinbasePay.svg.js +10 -10
- package/dist/assets/icons/CoinbasePay.svg.js.map +1 -1
- package/dist/assets/icons/Collectible.svg.js +10 -10
- package/dist/assets/icons/Collectible.svg.js.map +1 -1
- package/dist/assets/icons/Compose.svg.js +10 -10
- package/dist/assets/icons/Compose.svg.js.map +1 -1
- package/dist/assets/icons/Copy.svg.js +10 -10
- package/dist/assets/icons/Copy.svg.js.map +1 -1
- package/dist/assets/icons/Cosign.svg.js +9 -9
- package/dist/assets/icons/Cosign.svg.js.map +1 -1
- package/dist/assets/icons/CreatePlaylist.svg.js +10 -10
- package/dist/assets/icons/CreatePlaylist.svg.js.map +1 -1
- package/dist/assets/icons/CreditCard.svg.js +10 -10
- package/dist/assets/icons/CreditCard.svg.js.map +1 -1
- package/dist/assets/icons/Crown.svg.js +10 -10
- package/dist/assets/icons/Crown.svg.js.map +1 -1
- package/dist/assets/icons/Dashboard.svg.js +10 -10
- package/dist/assets/icons/Dashboard.svg.js.map +1 -1
- package/dist/assets/icons/Desktop.svg.js +10 -10
- package/dist/assets/icons/Desktop.svg.js.map +1 -1
- package/dist/assets/icons/Discord.svg.js +10 -10
- package/dist/assets/icons/Discord.svg.js.map +1 -1
- package/dist/assets/icons/Donate.svg.js +10 -10
- package/dist/assets/icons/Donate.svg.js.map +1 -1
- package/dist/assets/icons/Drag.svg.js +10 -10
- package/dist/assets/icons/Drag.svg.js.map +1 -1
- package/dist/assets/icons/Earnings.svg.js +10 -10
- package/dist/assets/icons/Earnings.svg.js.map +1 -1
- package/dist/assets/icons/EmailAddress.svg.js +10 -10
- package/dist/assets/icons/EmailAddress.svg.js.map +1 -1
- package/dist/assets/icons/Embed.svg.js +10 -10
- package/dist/assets/icons/Embed.svg.js.map +1 -1
- package/dist/assets/icons/Error.svg.js +10 -10
- package/dist/assets/icons/Error.svg.js.map +1 -1
- package/dist/assets/icons/Explore.svg.js +10 -10
- package/dist/assets/icons/Explore.svg.js.map +1 -1
- package/dist/assets/icons/ExternalLink.svg.js +10 -10
- package/dist/assets/icons/ExternalLink.svg.js.map +1 -1
- package/dist/assets/icons/Facebook.svg.js +10 -10
- package/dist/assets/icons/Facebook.svg.js.map +1 -1
- package/dist/assets/icons/Feed.svg.js +10 -10
- package/dist/assets/icons/Feed.svg.js.map +1 -1
- package/dist/assets/icons/Filter.svg.js +10 -10
- package/dist/assets/icons/Filter.svg.js.map +1 -1
- package/dist/assets/icons/Folder.svg.js +10 -10
- package/dist/assets/icons/Folder.svg.js.map +1 -1
- package/dist/assets/icons/Foundation.svg.js +10 -10
- package/dist/assets/icons/Foundation.svg.js.map +1 -1
- package/dist/assets/icons/Gift.svg.js +10 -10
- package/dist/assets/icons/Gift.svg.js.map +1 -1
- package/dist/assets/icons/Headphones.svg.js +10 -10
- package/dist/assets/icons/Headphones.svg.js.map +1 -1
- package/dist/assets/icons/Heart.svg.js +10 -10
- package/dist/assets/icons/Heart.svg.js.map +1 -1
- package/dist/assets/icons/Image.svg.js +10 -10
- package/dist/assets/icons/Image.svg.js.map +1 -1
- package/dist/assets/icons/Indent.svg.js +10 -10
- package/dist/assets/icons/Indent.svg.js.map +1 -1
- package/dist/assets/icons/Info.svg.js +10 -10
- package/dist/assets/icons/Info.svg.js.map +1 -1
- package/dist/assets/icons/Instagram.svg.js +10 -10
- package/dist/assets/icons/Instagram.svg.js.map +1 -1
- package/dist/assets/icons/KebabHorizontal.svg.js +10 -10
- package/dist/assets/icons/KebabHorizontal.svg.js.map +1 -1
- package/dist/assets/icons/Key.svg.js +10 -10
- package/dist/assets/icons/Key.svg.js.map +1 -1
- package/dist/assets/icons/Library.svg.js +10 -10
- package/dist/assets/icons/Library.svg.js.map +1 -1
- package/dist/assets/icons/LifeRing.svg.js +10 -10
- package/dist/assets/icons/LifeRing.svg.js.map +1 -1
- package/dist/assets/icons/Link.svg.js +10 -10
- package/dist/assets/icons/Link.svg.js.map +1 -1
- package/dist/assets/icons/LinkByStripe.svg.js +12 -12
- package/dist/assets/icons/LinkByStripe.svg.js.map +1 -1
- package/dist/assets/icons/ListeningHistory.svg.js +10 -10
- package/dist/assets/icons/ListeningHistory.svg.js.map +1 -1
- package/dist/assets/icons/Listens.svg.js +10 -10
- package/dist/assets/icons/Listens.svg.js.map +1 -1
- package/dist/assets/icons/Lock.svg.js +10 -10
- package/dist/assets/icons/Lock.svg.js.map +1 -1
- package/dist/assets/icons/LockUnlocked.svg.js +10 -10
- package/dist/assets/icons/LockUnlocked.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircle.svg.js +9 -9
- package/dist/assets/icons/LogoCircle.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircleCoinbase.svg.js +9 -9
- package/dist/assets/icons/LogoCircleCoinbase.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircleETH.svg.js +9 -9
- package/dist/assets/icons/LogoCircleETH.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircleSOL.svg.js +9 -9
- package/dist/assets/icons/LogoCircleSOL.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircleSTR.svg.js +9 -9
- package/dist/assets/icons/LogoCircleSTR.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircleUSD.svg.js +9 -9
- package/dist/assets/icons/LogoCircleUSD.svg.js.map +1 -1
- package/dist/assets/icons/LogoCircleUSDC.png.js +4 -0
- package/dist/assets/icons/LogoCircleUSDC.png.js.map +1 -0
- package/dist/assets/icons/LogoCircleUSDC.svg.js +9 -9
- package/dist/assets/icons/LogoCircleUSDC.svg.js.map +1 -1
- package/dist/assets/icons/LogoPhantom.svg.js +9 -9
- package/dist/assets/icons/LogoPhantom.svg.js.map +1 -1
- package/dist/assets/icons/LogoPhantomPlain.svg.js +10 -10
- package/dist/assets/icons/LogoPhantomPlain.svg.js.map +1 -1
- package/dist/assets/icons/LogoSolana.svg.js +9 -9
- package/dist/assets/icons/LogoSolana.svg.js.map +1 -1
- package/dist/assets/icons/Merch.svg.js +10 -10
- package/dist/assets/icons/Merch.svg.js.map +1 -1
- package/dist/assets/icons/Message.svg.js +10 -10
- package/dist/assets/icons/Message.svg.js.map +1 -1
- package/dist/assets/icons/MessageBlock.svg.js +10 -10
- package/dist/assets/icons/MessageBlock.svg.js.map +1 -1
- package/dist/assets/icons/MessageLocked.svg.js +11 -11
- package/dist/assets/icons/MessageLocked.svg.js.map +1 -1
- package/dist/assets/icons/MessageSlash.svg.js +10 -10
- package/dist/assets/icons/MessageSlash.svg.js.map +1 -1
- package/dist/assets/icons/MessageUnblock.svg.js +10 -10
- package/dist/assets/icons/MessageUnblock.svg.js.map +1 -1
- package/dist/assets/icons/Messages.svg.js +11 -11
- package/dist/assets/icons/Messages.svg.js.map +1 -1
- package/dist/assets/icons/Metamask.svg.js +9 -9
- package/dist/assets/icons/Metamask.svg.js.map +1 -1
- package/dist/assets/icons/Minus.svg.js +10 -10
- package/dist/assets/icons/Minus.svg.js.map +1 -1
- package/dist/assets/icons/MoneyBracket.svg.js +10 -10
- package/dist/assets/icons/MoneyBracket.svg.js.map +1 -1
- package/dist/assets/icons/Mood.svg.js +10 -10
- package/dist/assets/icons/Mood.svg.js.map +1 -1
- package/dist/assets/icons/MultiselectAdd.svg.js +9 -9
- package/dist/assets/icons/MultiselectAdd.svg.js.map +1 -1
- package/dist/assets/icons/MultiselectRemove.svg.js +9 -9
- package/dist/assets/icons/MultiselectRemove.svg.js.map +1 -1
- package/dist/assets/icons/NoWifi.svg.js +10 -10
- package/dist/assets/icons/NoWifi.svg.js.map +1 -1
- package/dist/assets/icons/Note.svg.js +10 -10
- package/dist/assets/icons/Note.svg.js.map +1 -1
- package/dist/assets/icons/NotificationOff.svg.js +10 -10
- package/dist/assets/icons/NotificationOff.svg.js.map +1 -1
- package/dist/assets/icons/NotificationOn.svg.js +10 -10
- package/dist/assets/icons/NotificationOn.svg.js.map +1 -1
- package/dist/assets/icons/PaperAirplane.svg.js +10 -10
- package/dist/assets/icons/PaperAirplane.svg.js.map +1 -1
- package/dist/assets/icons/Pause.svg.js +10 -10
- package/dist/assets/icons/Pause.svg.js.map +1 -1
- package/dist/assets/icons/Pencil.svg.js +10 -10
- package/dist/assets/icons/Pencil.svg.js.map +1 -1
- package/dist/assets/icons/Pin.svg.js +10 -10
- package/dist/assets/icons/Pin.svg.js.map +1 -1
- package/dist/assets/icons/Play.svg.js +10 -10
- package/dist/assets/icons/Play.svg.js.map +1 -1
- package/dist/assets/icons/PlaybackPause.svg.js +10 -10
- package/dist/assets/icons/PlaybackPause.svg.js.map +1 -1
- package/dist/assets/icons/PlaybackPlay.svg.js +10 -10
- package/dist/assets/icons/PlaybackPlay.svg.js.map +1 -1
- package/dist/assets/icons/Playlists.svg.js +10 -10
- package/dist/assets/icons/Playlists.svg.js.map +1 -1
- package/dist/assets/icons/Plus.svg.js +10 -10
- package/dist/assets/icons/Plus.svg.js.map +1 -1
- package/dist/assets/icons/PodcastBack.svg.js +10 -10
- package/dist/assets/icons/PodcastBack.svg.js.map +1 -1
- package/dist/assets/icons/PodcastForward.svg.js +10 -10
- package/dist/assets/icons/PodcastForward.svg.js.map +1 -1
- package/dist/assets/icons/QrCode.svg.js +10 -10
- package/dist/assets/icons/QrCode.svg.js.map +1 -1
- package/dist/assets/icons/QuestionCircle.svg.js +10 -10
- package/dist/assets/icons/QuestionCircle.svg.js.map +1 -1
- package/dist/assets/icons/Radar.svg.js +10 -10
- package/dist/assets/icons/Radar.svg.js.map +1 -1
- package/dist/assets/icons/Receive.svg.js +10 -10
- package/dist/assets/icons/Receive.svg.js.map +1 -1
- package/dist/assets/icons/RecoveryEmail.svg.js +12 -12
- package/dist/assets/icons/RecoveryEmail.svg.js.map +1 -1
- package/dist/assets/icons/Refresh.svg.js +10 -10
- package/dist/assets/icons/Refresh.svg.js.map +1 -1
- package/dist/assets/icons/Remix.svg.js +10 -10
- package/dist/assets/icons/Remix.svg.js.map +1 -1
- package/dist/assets/icons/Remove.svg.js +10 -10
- package/dist/assets/icons/Remove.svg.js.map +1 -1
- package/dist/assets/icons/RepeatOff.svg.js +10 -10
- package/dist/assets/icons/RepeatOff.svg.js.map +1 -1
- package/dist/assets/icons/Repost.svg.js +10 -10
- package/dist/assets/icons/Repost.svg.js.map +1 -1
- package/dist/assets/icons/Robot.svg.js +10 -10
- package/dist/assets/icons/Robot.svg.js.map +1 -1
- package/dist/assets/icons/Rocket.svg.js +10 -10
- package/dist/assets/icons/Rocket.svg.js.map +1 -1
- package/dist/assets/icons/Save.svg.js +10 -10
- package/dist/assets/icons/Save.svg.js.map +1 -1
- package/dist/assets/icons/Search.svg.js +12 -12
- package/dist/assets/icons/Search.svg.js.map +1 -1
- package/dist/assets/icons/Send.svg.js +10 -10
- package/dist/assets/icons/Send.svg.js.map +1 -1
- package/dist/assets/icons/Settings.svg.js +10 -10
- package/dist/assets/icons/Settings.svg.js.map +1 -1
- package/dist/assets/icons/Share.svg.js +10 -10
- package/dist/assets/icons/Share.svg.js.map +1 -1
- package/dist/assets/icons/ShieldCheck.svg.js +10 -10
- package/dist/assets/icons/ShieldCheck.svg.js.map +1 -1
- package/dist/assets/icons/ShieldUser.svg.js +12 -12
- package/dist/assets/icons/ShieldUser.svg.js.map +1 -1
- package/dist/assets/icons/Shuffle.svg.js +12 -12
- package/dist/assets/icons/Shuffle.svg.js.map +1 -1
- package/dist/assets/icons/SignOut.svg.js +10 -10
- package/dist/assets/icons/SignOut.svg.js.map +1 -1
- package/dist/assets/icons/SkipNext.svg.js +10 -10
- package/dist/assets/icons/SkipNext.svg.js.map +1 -1
- package/dist/assets/icons/SkipPrevious.svg.js +10 -10
- package/dist/assets/icons/SkipPrevious.svg.js.map +1 -1
- package/dist/assets/icons/Skull.svg.js +10 -10
- package/dist/assets/icons/Skull.svg.js.map +1 -1
- package/dist/assets/icons/SnapChat.svg.js +10 -10
- package/dist/assets/icons/SnapChat.svg.js.map +1 -1
- package/dist/assets/icons/Sort.svg.js +10 -10
- package/dist/assets/icons/Sort.svg.js.map +1 -1
- package/dist/assets/icons/SortDown.svg.js +10 -10
- package/dist/assets/icons/SortDown.svg.js.map +1 -1
- package/dist/assets/icons/SortUp.svg.js +10 -10
- package/dist/assets/icons/SortUp.svg.js.map +1 -1
- package/dist/assets/icons/Soundwave.svg.js +10 -10
- package/dist/assets/icons/Soundwave.svg.js.map +1 -1
- package/dist/assets/icons/{SpecialAccess.svg.js → Sparkles.svg.js} +13 -13
- package/dist/assets/icons/Sparkles.svg.js.map +1 -0
- package/dist/assets/icons/Speaker.svg.js +10 -10
- package/dist/assets/icons/Speaker.svg.js.map +1 -1
- package/dist/assets/icons/Star.svg.js +10 -10
- package/dist/assets/icons/Star.svg.js.map +1 -1
- package/dist/assets/icons/Stars.svg.js +10 -10
- package/dist/assets/icons/Stars.svg.js.map +1 -1
- package/dist/assets/icons/Support.svg.js +10 -10
- package/dist/assets/icons/Support.svg.js.map +1 -1
- package/dist/assets/icons/Tastemaker.svg.js +10 -10
- package/dist/assets/icons/Tastemaker.svg.js.map +1 -1
- package/dist/assets/icons/Telegram.svg.js +10 -10
- package/dist/assets/icons/Telegram.svg.js.map +1 -1
- package/dist/assets/icons/ThumbsDown.svg.js +10 -10
- package/dist/assets/icons/ThumbsDown.svg.js.map +1 -1
- package/dist/assets/icons/ThumbsUp.svg.js +10 -10
- package/dist/assets/icons/ThumbsUp.svg.js.map +1 -1
- package/dist/assets/icons/TikTok.svg.js +10 -10
- package/dist/assets/icons/TikTok.svg.js.map +1 -1
- package/dist/assets/icons/Tipping.svg.js +11 -11
- package/dist/assets/icons/Tipping.svg.js.map +1 -1
- package/dist/assets/icons/TokenBronze.png.js +4 -0
- package/dist/assets/icons/TokenBronze.png.js.map +1 -0
- package/dist/assets/icons/TokenGold.png.js +4 -0
- package/dist/assets/icons/TokenGold.png.js.map +1 -0
- package/dist/assets/icons/TokenNoTier.png.js +4 -0
- package/dist/assets/icons/TokenNoTier.png.js.map +1 -0
- package/dist/assets/icons/TokenPlatinum.png.js +4 -0
- package/dist/assets/icons/TokenPlatinum.png.js.map +1 -0
- package/dist/assets/icons/TokenSilver.png.js +4 -0
- package/dist/assets/icons/TokenSilver.png.js.map +1 -0
- package/dist/assets/icons/TowerBroadcast.svg.js +10 -10
- package/dist/assets/icons/TowerBroadcast.svg.js.map +1 -1
- package/dist/assets/icons/Transaction.svg.js +10 -10
- package/dist/assets/icons/Transaction.svg.js.map +1 -1
- package/dist/assets/icons/Trash.svg.js +10 -10
- package/dist/assets/icons/Trash.svg.js.map +1 -1
- package/dist/assets/icons/Trending.svg.js +10 -10
- package/dist/assets/icons/Trending.svg.js.map +1 -1
- package/dist/assets/icons/TriangleExclamation.svg.js +10 -10
- package/dist/assets/icons/TriangleExclamation.svg.js.map +1 -1
- package/dist/assets/icons/Trophy.svg.js +10 -10
- package/dist/assets/icons/Trophy.svg.js.map +1 -1
- package/dist/assets/icons/Turntable.svg.js +10 -10
- package/dist/assets/icons/Turntable.svg.js.map +1 -1
- package/dist/assets/icons/Twitter.svg.js +10 -10
- package/dist/assets/icons/Twitter.svg.js.map +1 -1
- package/dist/assets/icons/User.svg.js +10 -10
- package/dist/assets/icons/User.svg.js.map +1 -1
- package/dist/assets/icons/UserArrowRotate.svg.js +12 -12
- package/dist/assets/icons/UserArrowRotate.svg.js.map +1 -1
- package/dist/assets/icons/UserFollow.svg.js +10 -10
- package/dist/assets/icons/UserFollow.svg.js.map +1 -1
- package/dist/assets/icons/UserFollowers.svg.js +11 -11
- package/dist/assets/icons/UserFollowers.svg.js.map +1 -1
- package/dist/assets/icons/UserFollowing.svg.js +10 -10
- package/dist/assets/icons/UserFollowing.svg.js.map +1 -1
- package/dist/assets/icons/UserGroup.svg.js +11 -11
- package/dist/assets/icons/UserGroup.svg.js.map +1 -1
- package/dist/assets/icons/UserList.svg.js +11 -11
- package/dist/assets/icons/UserList.svg.js.map +1 -1
- package/dist/assets/icons/UserUnfollow.svg.js +10 -10
- package/dist/assets/icons/UserUnfollow.svg.js.map +1 -1
- package/dist/assets/icons/ValidationCheck.svg.js +9 -9
- package/dist/assets/icons/ValidationCheck.svg.js.map +1 -1
- package/dist/assets/icons/ValidationX.svg.js +9 -9
- package/dist/assets/icons/ValidationX.svg.js.map +1 -1
- package/dist/assets/icons/Verified.svg.js +9 -9
- package/dist/assets/icons/Verified.svg.js.map +1 -1
- package/dist/assets/icons/VisibilityHidden.svg.js +11 -11
- package/dist/assets/icons/VisibilityHidden.svg.js.map +1 -1
- package/dist/assets/icons/VisibilityPublic.svg.js +11 -11
- package/dist/assets/icons/VisibilityPublic.svg.js.map +1 -1
- package/dist/assets/icons/VolumeLevel0.svg.js +10 -10
- package/dist/assets/icons/VolumeLevel0.svg.js.map +1 -1
- package/dist/assets/icons/VolumeLevel1.svg.js +10 -10
- package/dist/assets/icons/VolumeLevel1.svg.js.map +1 -1
- package/dist/assets/icons/VolumeLevel2.svg.js +10 -10
- package/dist/assets/icons/VolumeLevel2.svg.js.map +1 -1
- package/dist/assets/icons/VolumeLevel3.svg.js +10 -10
- package/dist/assets/icons/VolumeLevel3.svg.js.map +1 -1
- package/dist/assets/icons/Wallet.svg.js +10 -10
- package/dist/assets/icons/Wallet.svg.js.map +1 -1
- package/dist/assets/icons/Wand.svg.js +10 -10
- package/dist/assets/icons/Wand.svg.js.map +1 -1
- package/dist/assets/icons/Waveform.svg.js +10 -10
- package/dist/assets/icons/Waveform.svg.js.map +1 -1
- package/dist/assets/icons/Withdraw.svg.js +10 -10
- package/dist/assets/icons/Withdraw.svg.js.map +1 -1
- package/dist/assets/icons/ccBy.svg.js +10 -10
- package/dist/assets/icons/ccBy.svg.js.map +1 -1
- package/dist/assets/icons/ccCC.svg.js +10 -10
- package/dist/assets/icons/ccCC.svg.js.map +1 -1
- package/dist/assets/icons/ccNC-EU.svg.js +10 -10
- package/dist/assets/icons/ccNC-EU.svg.js.map +1 -1
- package/dist/assets/icons/ccNC-JP.svg.js +10 -10
- package/dist/assets/icons/ccNC-JP.svg.js.map +1 -1
- package/dist/assets/icons/ccNC.svg.js +10 -10
- package/dist/assets/icons/ccNC.svg.js.map +1 -1
- package/dist/assets/icons/ccND.svg.js +10 -10
- package/dist/assets/icons/ccND.svg.js.map +1 -1
- package/dist/assets/icons/ccPD.svg.js +10 -10
- package/dist/assets/icons/ccPD.svg.js.map +1 -1
- package/dist/assets/icons/ccRemix.svg.js +10 -10
- package/dist/assets/icons/ccRemix.svg.js.map +1 -1
- package/dist/assets/icons/ccSA.svg.js +10 -10
- package/dist/assets/icons/ccSA.svg.js.map +1 -1
- package/dist/assets/icons/ccSampling.svg.js +10 -10
- package/dist/assets/icons/ccSampling.svg.js.map +1 -1
- package/dist/assets/icons/ccSamplingPlus.svg.js +11 -11
- package/dist/assets/icons/ccSamplingPlus.svg.js.map +1 -1
- package/dist/assets/icons/ccShare.svg.js +10 -10
- package/dist/assets/icons/ccShare.svg.js.map +1 -1
- package/dist/assets/icons/ccZero.svg.js +11 -11
- package/dist/assets/icons/ccZero.svg.js.map +1 -1
- package/dist/assets/icons/file3GA.svg.js +9 -9
- package/dist/assets/icons/file3GA.svg.js.map +1 -1
- package/dist/assets/icons/file3GP.svg.js +9 -9
- package/dist/assets/icons/file3GP.svg.js.map +1 -1
- package/dist/assets/icons/fileAAC.svg.js +9 -9
- package/dist/assets/icons/fileAAC.svg.js.map +1 -1
- package/dist/assets/icons/fileAIF.svg.js +9 -9
- package/dist/assets/icons/fileAIF.svg.js.map +1 -1
- package/dist/assets/icons/fileAIFC.svg.js +9 -9
- package/dist/assets/icons/fileAIFC.svg.js.map +1 -1
- package/dist/assets/icons/fileAIFF.svg.js +9 -9
- package/dist/assets/icons/fileAIFF.svg.js.map +1 -1
- package/dist/assets/icons/fileAMR.svg.js +9 -9
- package/dist/assets/icons/fileAMR.svg.js.map +1 -1
- package/dist/assets/icons/fileAWB.svg.js +9 -9
- package/dist/assets/icons/fileAWB.svg.js.map +1 -1
- package/dist/assets/icons/fileFLAC.svg.js +9 -9
- package/dist/assets/icons/fileFLAC.svg.js.map +1 -1
- package/dist/assets/icons/fileM4A.svg.js +9 -9
- package/dist/assets/icons/fileM4A.svg.js.map +1 -1
- package/dist/assets/icons/fileM4B.svg.js +9 -9
- package/dist/assets/icons/fileM4B.svg.js.map +1 -1
- package/dist/assets/icons/fileM4P.svg.js +9 -9
- package/dist/assets/icons/fileM4P.svg.js.map +1 -1
- package/dist/assets/icons/fileM4R.svg.js +9 -9
- package/dist/assets/icons/fileM4R.svg.js.map +1 -1
- package/dist/assets/icons/fileM4V.svg.js +9 -9
- package/dist/assets/icons/fileM4V.svg.js.map +1 -1
- package/dist/assets/icons/fileMP2.svg.js +9 -9
- package/dist/assets/icons/fileMP2.svg.js.map +1 -1
- package/dist/assets/icons/fileMP3.svg.js +9 -9
- package/dist/assets/icons/fileMP3.svg.js.map +1 -1
- package/dist/assets/icons/fileMP4.svg.js +9 -9
- package/dist/assets/icons/fileMP4.svg.js.map +1 -1
- package/dist/assets/icons/fileMPGA.svg.js +9 -9
- package/dist/assets/icons/fileMPGA.svg.js.map +1 -1
- package/dist/assets/icons/fileOGA.svg.js +9 -9
- package/dist/assets/icons/fileOGA.svg.js.map +1 -1
- package/dist/assets/icons/fileOGG.svg.js +9 -9
- package/dist/assets/icons/fileOGG.svg.js.map +1 -1
- package/dist/assets/icons/fileOGM.svg.js +9 -9
- package/dist/assets/icons/fileOGM.svg.js.map +1 -1
- package/dist/assets/icons/fileOGV.svg.js +9 -9
- package/dist/assets/icons/fileOGV.svg.js.map +1 -1
- package/dist/assets/icons/fileOGX.svg.js +9 -9
- package/dist/assets/icons/fileOGX.svg.js.map +1 -1
- package/dist/assets/icons/fileOPUS.svg.js +9 -9
- package/dist/assets/icons/fileOPUS.svg.js.map +1 -1
- package/dist/assets/icons/fileSPX.svg.js +9 -9
- package/dist/assets/icons/fileSPX.svg.js.map +1 -1
- package/dist/assets/icons/fileTS.svg.js +9 -9
- package/dist/assets/icons/fileTS.svg.js.map +1 -1
- package/dist/assets/icons/fileTSA.svg.js +9 -9
- package/dist/assets/icons/fileTSA.svg.js.map +1 -1
- package/dist/assets/icons/fileTSV.svg.js +9 -9
- package/dist/assets/icons/fileTSV.svg.js.map +1 -1
- package/dist/assets/icons/fileUnknown.svg.js +9 -9
- package/dist/assets/icons/fileUnknown.svg.js.map +1 -1
- package/dist/assets/icons/fileWAV.svg.js +9 -9
- package/dist/assets/icons/fileWAV.svg.js.map +1 -1
- package/dist/assets/icons/fileWAVE.svg.js +9 -9
- package/dist/assets/icons/fileWAVE.svg.js.map +1 -1
- package/dist/assets/icons/fileWEBM.svg.js +9 -9
- package/dist/assets/icons/fileWEBM.svg.js.map +1 -1
- package/dist/assets/icons/fileXWMA.svg.js +9 -9
- package/dist/assets/icons/fileXWMA.svg.js.map +1 -1
- package/dist/assets/icons/iconPlaybackRate0_5x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate0_5x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate0_8x.svg.js +84 -0
- package/dist/assets/icons/iconPlaybackRate0_8x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate0_9x.svg.js +84 -0
- package/dist/assets/icons/iconPlaybackRate0_9x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate1_1x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate1_1x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate1_2x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate1_2x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate1_5x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate1_5x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate1x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate1x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate2_5x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate2_5x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate2x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate2x.svg.js.map +1 -0
- package/dist/assets/icons/iconPlaybackRate3x.svg.js +76 -0
- package/dist/assets/icons/iconPlaybackRate3x.svg.js.map +1 -0
- package/dist/components/artwork/Artwork.d.ts +1 -1
- package/dist/components/artwork/Artwork.js +1 -1
- package/dist/components/artwork/Artwork.js.map +1 -1
- package/dist/components/balance-pill/BalancePill.d.ts +6 -0
- package/dist/components/balance-pill/BalancePill.d.ts.map +1 -0
- package/dist/components/balance-pill/BalancePill.js +20 -0
- package/dist/components/balance-pill/BalancePill.js.map +1 -0
- package/dist/components/balance-pill/BalancePill.stories.d.ts +7 -0
- package/dist/components/balance-pill/BalancePill.stories.d.ts.map +1 -0
- package/dist/components/balance-pill/index.d.ts +3 -0
- package/dist/components/balance-pill/index.d.ts.map +1 -0
- package/dist/components/balance-pill/types.d.ts +6 -0
- package/dist/components/balance-pill/types.d.ts.map +1 -0
- package/dist/components/button/BaseButton/BaseButton.js +2 -2
- package/dist/components/button/BaseButton/BaseButton.js.map +1 -1
- package/dist/components/button/Button/Button.d.ts +1 -1
- package/dist/components/button/Button/Button.js.map +1 -1
- package/dist/components/button/FilterButton/FilterButton.js +1 -1
- package/dist/components/button/FilterButton/FilterButton.js.map +1 -1
- package/dist/components/button/FilterButton/FilterButtonOption.js.map +1 -1
- package/dist/components/button/FilterButton/FilterButtonOptionsList.js.map +1 -1
- package/dist/components/button/FilterButton/types.d.ts.map +1 -1
- package/dist/components/button/FollowButton/FollowButton.d.ts.map +1 -1
- package/dist/components/button/FollowButton/FollowButton.js.map +1 -1
- package/dist/components/button/PlainButton/PlainButton.d.ts.map +1 -1
- package/dist/components/button/PlainButton/PlainButton.js +7 -5
- package/dist/components/button/PlainButton/PlainButton.js.map +1 -1
- package/dist/components/button/SocialButton/SocialButton.js.map +1 -1
- package/dist/components/button/index.d.ts +2 -2
- package/dist/components/button/index.d.ts.map +1 -1
- package/dist/components/checkbox/Checkbox.js.map +1 -1
- package/dist/components/checkbox/Indeterminate.svg.js +9 -9
- package/dist/components/checkbox/Indeterminate.svg.js.map +1 -1
- package/dist/components/checkbox/Select.svg.js +9 -9
- package/dist/components/checkbox/Select.svg.js.map +1 -1
- package/dist/components/completion-check/CompletionCheck.js.map +1 -1
- package/dist/components/completion-check/index.d.ts +1 -1
- package/dist/components/completion-check/index.d.ts.map +1 -1
- package/dist/components/expandable-nav-item/ExpandableNavItem.d.ts +3 -0
- package/dist/components/expandable-nav-item/ExpandableNavItem.d.ts.map +1 -0
- package/dist/components/expandable-nav-item/ExpandableNavItem.js +126 -0
- package/dist/components/expandable-nav-item/ExpandableNavItem.js.map +1 -0
- package/dist/components/expandable-nav-item/ExpandableNavItem.stories.d.ts +10 -0
- package/dist/components/expandable-nav-item/ExpandableNavItem.stories.d.ts.map +1 -0
- package/dist/components/expandable-nav-item/index.d.ts +3 -0
- package/dist/components/expandable-nav-item/index.d.ts.map +1 -0
- package/dist/components/expandable-nav-item/types.d.ts +37 -0
- package/dist/components/expandable-nav-item/types.d.ts.map +1 -0
- package/dist/components/hint/Hint.d.ts.map +1 -1
- package/dist/components/hint/Hint.js.map +1 -1
- package/dist/components/icon-text/IconText.js.map +1 -1
- package/dist/components/icon-text/IconText.stories.d.ts.map +1 -1
- package/dist/components/icon-text/index.d.ts +1 -1
- package/dist/components/icon-text/index.d.ts.map +1 -1
- package/dist/components/icon-text/types.d.ts.map +1 -1
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/input/PasswordInput/PasswordInput.js.map +1 -1
- package/dist/components/input/PasswordInput/index.d.ts +1 -1
- package/dist/components/input/PasswordInput/index.d.ts.map +1 -1
- package/dist/components/input/SelectablePill/SelectablePill.d.ts.map +1 -1
- package/dist/components/input/SelectablePill/SelectablePill.js +1 -3
- package/dist/components/input/SelectablePill/SelectablePill.js.map +1 -1
- package/dist/components/input/TextInput/TextInput.js.map +1 -1
- package/dist/components/input/TextInput/index.d.ts +1 -1
- package/dist/components/input/TextInput/index.d.ts.map +1 -1
- package/dist/components/input/TokenAmountInput/TokenAmountInput.js.map +1 -1
- package/dist/components/input/TokenAmountInput/index.d.ts +1 -1
- package/dist/components/input/TokenAmountInput/index.d.ts.map +1 -1
- package/dist/components/internal/Menu.d.ts.map +1 -1
- package/dist/components/internal/Menu.js.map +1 -1
- package/dist/components/internal/MenuItem.d.ts.map +1 -1
- package/dist/components/internal/MenuItem.js +1 -1
- package/dist/components/internal/MenuItem.js.map +1 -1
- package/dist/components/internal/OptionKeyHandler.d.ts.map +1 -1
- package/dist/components/internal/OptionKeyHandler.js.map +1 -1
- package/dist/components/layout/Box/Box.d.ts.map +1 -1
- package/dist/components/layout/Box/Box.js +4 -1
- package/dist/components/layout/Box/Box.js.map +1 -1
- package/dist/components/layout/Box/types.d.ts +1 -1
- package/dist/components/layout/Box/types.d.ts.map +1 -1
- package/dist/components/loading-spinner/LoadingSpinner.d.ts.map +1 -1
- package/dist/components/loading-spinner/LoadingSpinner.js +2 -7
- package/dist/components/loading-spinner/LoadingSpinner.js.map +1 -1
- package/dist/components/modal/Modal.d.ts.map +1 -1
- package/dist/components/modal/Modal.js +3 -1
- package/dist/components/modal/Modal.js.map +1 -1
- package/dist/components/modal/ModalContentPages.d.ts.map +1 -1
- package/dist/components/modal/ModalContentPages.js +1 -3
- package/dist/components/modal/ModalContentPages.js.map +1 -1
- package/dist/components/modal/index.d.ts +1 -1
- package/dist/components/modal/index.d.ts.map +1 -1
- package/dist/components/music-badge/MusicBadge.d.ts.map +1 -1
- package/dist/components/music-badge/MusicBadge.js.map +1 -1
- package/dist/components/nav-item/NavItem.d.ts +7 -0
- package/dist/components/nav-item/NavItem.d.ts.map +1 -0
- package/dist/components/nav-item/NavItem.js +54 -0
- package/dist/components/nav-item/NavItem.js.map +1 -0
- package/dist/components/nav-item/NavItem.stories.d.ts +11 -0
- package/dist/components/nav-item/NavItem.stories.d.ts.map +1 -0
- package/dist/components/nav-item/index.d.ts +3 -0
- package/dist/components/nav-item/index.d.ts.map +1 -0
- package/dist/components/nav-item/types.d.ts +28 -0
- package/dist/components/nav-item/types.d.ts.map +1 -0
- package/dist/components/notification-count/NotificationCount.d.ts +7 -0
- package/dist/components/notification-count/NotificationCount.d.ts.map +1 -0
- package/dist/components/notification-count/NotificationCount.js +51 -0
- package/dist/components/notification-count/NotificationCount.js.map +1 -0
- package/dist/components/notification-count/NotificationCount.stories.d.ts +10 -0
- package/dist/components/notification-count/NotificationCount.stories.d.ts.map +1 -0
- package/dist/components/notification-count/index.d.ts +3 -0
- package/dist/components/notification-count/index.d.ts.map +1 -0
- package/dist/components/notification-count/types.d.ts +23 -0
- package/dist/components/notification-count/types.d.ts.map +1 -0
- package/dist/components/pill/Pill.d.ts.map +1 -1
- package/dist/components/pill/Pill.js.map +1 -1
- package/dist/components/popup/Popup.d.ts.map +1 -1
- package/dist/components/popup/Popup.js +14 -7
- package/dist/components/popup/Popup.js.map +1 -1
- package/dist/components/popup/types.d.ts.map +1 -1
- package/dist/components/popup-menu/PopupMenu.d.ts.map +1 -1
- package/dist/components/popup-menu/PopupMenu.js +6 -1
- package/dist/components/popup-menu/PopupMenu.js.map +1 -1
- package/dist/components/popup-menu/PopupMenu.module.css.js +1 -1
- package/dist/components/popup-menu/index.d.ts +1 -1
- package/dist/components/popup-menu/index.d.ts.map +1 -1
- package/dist/components/popup-menu/types.d.ts +4 -0
- package/dist/components/popup-menu/types.d.ts.map +1 -1
- package/dist/components/progress-bar/index.d.ts +1 -1
- package/dist/components/progress-bar/index.d.ts.map +1 -1
- package/dist/components/radio-group/index.d.ts +2 -2
- package/dist/components/radio-group/index.d.ts.map +1 -1
- package/dist/components/scrollbar/index.d.ts +1 -1
- package/dist/components/scrollbar/index.d.ts.map +1 -1
- package/dist/components/scrubber/Scrubber.d.ts +1 -11
- package/dist/components/scrubber/Scrubber.d.ts.map +1 -1
- package/dist/components/scrubber/Scrubber.js +3 -4
- package/dist/components/scrubber/Scrubber.js.map +1 -1
- package/dist/components/scrubber/types.d.ts +0 -8
- package/dist/components/scrubber/types.d.ts.map +1 -1
- package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -1
- package/dist/components/segmented-control/SegmentedControl.js +29 -28
- package/dist/components/segmented-control/SegmentedControl.js.map +1 -1
- package/dist/components/segmented-control/index.d.ts +1 -1
- package/dist/components/segmented-control/index.d.ts.map +1 -1
- package/dist/components/select/Select/Select.d.ts +1 -1
- package/dist/components/select/Select/Select.d.ts.map +1 -1
- package/dist/components/select/Select/Select.js +3 -3
- package/dist/components/select/Select/Select.js.map +1 -1
- package/dist/components/select/Select/types.d.ts.map +1 -1
- package/dist/components/send-icon/SendIcon.js.map +1 -1
- package/dist/components/switch/Switch.js.map +1 -1
- package/dist/components/text/Text.d.ts.map +1 -1
- package/dist/components/text/Text.js +19 -11
- package/dist/components/text/Text.js.map +1 -1
- package/dist/components/text/constants.js +1 -1
- package/dist/components/text/constants.js.map +1 -1
- package/dist/components/text/types.d.ts +1 -1
- package/dist/components/text/types.d.ts.map +1 -1
- package/dist/components/text-link/TextLink.d.ts +1 -0
- package/dist/components/text-link/TextLink.d.ts.map +1 -1
- package/dist/components/text-link/TextLink.js +8 -10
- package/dist/components/text-link/TextLink.js.map +1 -1
- package/dist/components/text-link/types.d.ts +4 -0
- package/dist/components/text-link/types.d.ts.map +1 -1
- package/dist/foundations/color/color.d.ts +96 -143
- package/dist/foundations/color/color.d.ts.map +1 -1
- package/dist/foundations/color/color.js +1 -2
- package/dist/foundations/color/color.js.map +1 -1
- package/dist/foundations/color/primitive.d.ts +56 -77
- package/dist/foundations/color/primitive.d.ts.map +1 -1
- package/dist/foundations/color/primitive.js +150 -172
- package/dist/foundations/color/primitive.js.map +1 -1
- package/dist/foundations/color/semantic.d.ts +39 -66
- package/dist/foundations/color/semantic.d.ts.map +1 -1
- package/dist/foundations/color/semantic.js +31 -18
- package/dist/foundations/color/semantic.js.map +1 -1
- package/dist/foundations/spacing/spacing.d.ts +3 -0
- package/dist/foundations/spacing/spacing.d.ts.map +1 -1
- package/dist/foundations/spacing/spacing.js +4 -1
- package/dist/foundations/spacing/spacing.js.map +1 -1
- package/dist/foundations/theme/theme.d.ts +0 -2
- package/dist/foundations/theme/theme.d.ts.map +1 -1
- package/dist/foundations/theme/theme.js +2 -4
- package/dist/foundations/theme/theme.js.map +1 -1
- package/dist/foundations/theme/types.d.ts +1 -1
- package/dist/foundations/theme/types.d.ts.map +1 -1
- package/dist/harmony.css +1 -1
- package/dist/icons/deprecatedIcons.d.ts +12 -11
- package/dist/icons/deprecatedIcons.d.ts.map +1 -1
- package/dist/icons/logos.d.ts +10 -7
- package/dist/icons/logos.d.ts.map +1 -1
- package/dist/icons/logos.js +12 -7
- package/dist/icons/logos.js.map +1 -1
- package/dist/icons/specialIcons.d.ts +17 -6
- package/dist/icons/specialIcons.d.ts.map +1 -1
- package/dist/icons/specialIcons.js +35 -12
- package/dist/icons/specialIcons.js.map +1 -1
- package/dist/icons/utilityIcons.d.ts +3 -2
- package/dist/icons/utilityIcons.d.ts.map +1 -1
- package/dist/icons/utilityIcons.js +5 -3
- package/dist/icons/utilityIcons.js.map +1 -1
- package/dist/index.js +9 -4
- package/dist/index.js.map +1 -1
- package/dist/storybook/components/ColorPaletteTable.d.ts.map +1 -1
- package/dist/storybook/components/Heading.d.ts.map +1 -1
- package/dist/storybook/components/TypographyPanel.d.ts.map +1 -1
- package/dist/utils/createImageIcon.d.ts +11 -0
- package/dist/utils/createImageIcon.d.ts.map +1 -0
- package/dist/utils/createImageIcon.js +15 -0
- package/dist/utils/createImageIcon.js.map +1 -0
- package/dist/utils/formatCount.d.ts +13 -0
- package/dist/utils/formatCount.d.ts.map +1 -0
- package/dist/utils/formatCount.js +42 -0
- package/dist/utils/formatCount.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +13 -6
- package/dist/assets/icons/SpecialAccess.svg.js.map +0 -1
- package/dist/assets/icons/TokenBronze.svg.js +0 -470
- package/dist/assets/icons/TokenBronze.svg.js.map +0 -1
- package/dist/assets/icons/TokenGold.svg.js +0 -464
- package/dist/assets/icons/TokenGold.svg.js.map +0 -1
- package/dist/assets/icons/TokenNoTier.svg.js +0 -499
- package/dist/assets/icons/TokenNoTier.svg.js.map +0 -1
- package/dist/assets/icons/TokenPlatinum.svg.js +0 -502
- package/dist/assets/icons/TokenPlatinum.svg.js.map +0 -1
- package/dist/assets/icons/TokenSilver.svg.js +0 -478
- package/dist/assets/icons/TokenSilver.svg.js.map +0 -1
- package/dist/components/scrubber/types.js +0 -11
- package/dist/components/scrubber/types.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/input/TextInput/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/input/TextInput/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,KAAK,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenAmountInput.js","sources":["../../../../src/components/input/TokenAmountInput/TokenAmountInput.tsx"],"sourcesContent":["import { ChangeEventHandler, Ref, forwardRef, useCallback } from 'react'\n\nimport BN from 'bn.js'\n\nimport { useControlled } from 'hooks/useControlled'\n\nimport { TextInput } from '../TextInput'\n\nimport { TokenAmountInputProps } from './types'\n\n/**\n * Format a number to have commas\n */\nconst formatNumberCommas = (num: number | string) => {\n const parts = num.toString().split('.')\n return (\n parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',') +\n (parts[1] !== undefined ? '.' + parts[1] : '')\n )\n}\n\nexport const TokenAmountInput = forwardRef(\n (props: TokenAmountInputProps, ref: Ref<HTMLInputElement>) => {\n const {\n tokenLabel,\n decimals = 0,\n isWhole = false,\n value: valueProp,\n onChange,\n ...other\n } = props\n\n const [value, setValueState] = useControlled({\n controlledProp: valueProp ? formatNumberCommas(valueProp) : valueProp,\n defaultValue: '',\n componentName: 'TokenAmountInput'\n })\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = useCallback(\n (e) => {\n const input = e.target.value.replace(/[^0-9.]+/g, '')\n // Regex to grab the whole and decimal parts of the number, stripping duplicate '.' characters\n const match = input.match(/^(?<whole>\\d*)(?<dot>.)?(?<decimal>\\d*)/)\n const { whole, decimal, dot } = match?.groups || {}\n\n // Conditionally render the decimal part, and only for the number of decimals specified\n const stringAmount =\n dot && decimals && !isWhole\n ? `${whole}.${decimal.substring(0, decimals)}`\n : whole\n\n // Also add the BN to the onChange event for convenience\n let amount = new BN(whole)\n amount = amount.mul(new BN(10 ** decimals))\n amount = amount.add(new BN(decimal.padEnd(decimals, '0')))\n setValueState(formatNumberCommas(stringAmount))\n if (onChange) {\n onChange(stringAmount, amount)\n }\n },\n [decimals, isWhole, setValueState, onChange]\n )\n return (\n <TextInput\n ref={ref}\n {...other}\n value={value}\n onChange={handleChange}\n endAdornmentText={tokenLabel}\n />\n )\n }\n)\n"],"names":["_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TokenAmountInput.js","sources":["../../../../src/components/input/TokenAmountInput/TokenAmountInput.tsx"],"sourcesContent":["import { ChangeEventHandler, Ref, forwardRef, useCallback } from 'react'\n\nimport BN from 'bn.js'\n\nimport { useControlled } from '~harmony/hooks/useControlled'\n\nimport { TextInput } from '../TextInput'\n\nimport { TokenAmountInputProps } from './types'\n\n/**\n * Format a number to have commas\n */\nconst formatNumberCommas = (num: number | string) => {\n const parts = num.toString().split('.')\n return (\n parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',') +\n (parts[1] !== undefined ? '.' + parts[1] : '')\n )\n}\n\nexport const TokenAmountInput = forwardRef(\n (props: TokenAmountInputProps, ref: Ref<HTMLInputElement>) => {\n const {\n tokenLabel,\n decimals = 0,\n isWhole = false,\n value: valueProp,\n onChange,\n ...other\n } = props\n\n const [value, setValueState] = useControlled({\n controlledProp: valueProp ? formatNumberCommas(valueProp) : valueProp,\n defaultValue: '',\n componentName: 'TokenAmountInput'\n })\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = useCallback(\n (e) => {\n const input = e.target.value.replace(/[^0-9.]+/g, '')\n // Regex to grab the whole and decimal parts of the number, stripping duplicate '.' characters\n const match = input.match(/^(?<whole>\\d*)(?<dot>.)?(?<decimal>\\d*)/)\n const { whole, decimal, dot } = match?.groups || {}\n\n // Conditionally render the decimal part, and only for the number of decimals specified\n const stringAmount =\n dot && decimals && !isWhole\n ? `${whole}.${decimal.substring(0, decimals)}`\n : whole\n\n // Also add the BN to the onChange event for convenience\n let amount = new BN(whole)\n amount = amount.mul(new BN(10 ** decimals))\n amount = amount.add(new BN(decimal.padEnd(decimals, '0')))\n setValueState(formatNumberCommas(stringAmount))\n if (onChange) {\n onChange(stringAmount, amount)\n }\n },\n [decimals, isWhole, setValueState, onChange]\n )\n return (\n <TextInput\n ref={ref}\n {...other}\n value={value}\n onChange={handleChange}\n endAdornmentText={tokenLabel}\n />\n )\n }\n)\n"],"names":["_jsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/input/TokenAmountInput/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/input/TokenAmountInput/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,6BAA6B,EACnC,MAAM,SAAS,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../src/components/internal/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAQ,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../../src/components/internal/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAQ,SAAS,EAAE,uBAAuC;AACjE,OAAO,EAAS,UAAU,EAAE,wBAAwC;AAEpE,OAAO,EAAE,UAAU,EAAE,uBAAuC;AAC5D,OAAO,EAAE,OAAO,EAAE,0BAA4B;AAI9C,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,GAAG;IACrD,QAAQ,EAAE,SAAS,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,CAAA;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC1B,QAAQ,CAAC,EAAE,SAAS,CAAC,UAAU,CAAC,CAAA;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;IAC3C,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,IAAI,UAAW,SAAS,qDAUpC,CAAA;AAED,eAAO,MAAM,WAAW,UAAW,gBAAgB,qDA6BlD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sources":["../../../src/components/internal/Menu.tsx"],"sourcesContent":["import { ReactNode, Ref } from 'react'\n\nimport { CSSObject } from '@emotion/react'\n\nimport { Flex, FlexProps } from 'components/layout/Flex'\nimport { Paper, PaperProps } from 'components/layout/Paper'\nimport { Popup } from 'components/popup/Popup'\nimport { PopupProps } from 'components/popup/types'\nimport { WithCSS } from 'foundations'\n\n// TODO menu label\n\nexport type MenuProps = Omit<PopupProps, 'children'> & {\n children: ReactNode\n PaperProps?: WithCSS<Partial<PaperProps>>\n}\n\nexport type MenuContentProps = {\n children: ReactNode\n maxHeight?: CSSObject['maxHeight']\n width?: CSSObject['width']\n minWidth?: CSSObject['minWidth']\n MenuListProps?: WithCSS<Partial<FlexProps>>\n scrollRef: Ref<HTMLDivElement>\n 'aria-label'?: string\n 'aria-activedescendent'?: string\n}\n\nexport const Menu = (props: MenuProps) => {\n const { children, PaperProps, ...other } = props\n\n return (\n <Popup {...other}>\n <Paper mt='s' border='strong' shadow='far' {...PaperProps}>\n {children}\n </Paper>\n </Popup>\n )\n}\n\nexport const MenuContent = (props: MenuContentProps) => {\n const {\n children,\n maxHeight,\n width,\n minWidth,\n MenuListProps,\n scrollRef,\n 'aria-label': ariaLabel,\n 'aria-activedescendent': ariaActiveDescendant\n } = props\n\n return (\n <Flex\n direction='column'\n p='s'\n gap='s'\n alignItems='flex-start'\n role='listbox'\n css={{ maxHeight, width, minWidth, overflowY: 'auto' }}\n ref={scrollRef}\n onClick={(e) => e.stopPropagation()}\n aria-label={ariaLabel}\n aria-activedescendant={ariaActiveDescendant}\n {...MenuListProps}\n >\n {children}\n </Flex>\n )\n}\n"],"names":["_jsx"],"mappings":";;;;;;AA4BO,IAAM,IAAI,GAAG,UAAC,KAAgB,EAAA;AAC3B,IAAA,IAAA,QAAQ,GAA2B,KAAK,CAAhC,QAAA,EAAE,UAAU,GAAe,KAAK,CAApB,UAAA,EAAK,KAAK,GAAK,MAAA,CAAA,KAAK,EAA1C,CAAA,UAAA,EAAA,YAAA,CAAkC,CAAF,CAAU;IAEhD,QACEA,GAAC,CAAA,KAAK,EAAK,QAAA,CAAA,EAAA,EAAA,KAAK,EACd,EAAA,QAAA,EAAAA,GAAA,CAAC,KAAK,EAAA,QAAA,CAAA,EAAC,EAAE,EAAC,GAAG,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAA,EAAK,UAAU,EAAA,EAAA,QAAA,EACtD,QAAQ,EAAA,CAAA,CACH,EACF,CAAA,CAAA,EACT;AACH,EAAC;AAEM,IAAM,WAAW,GAAG,UAAC,KAAuB,EAAA;AAE/C,IAAA,IAAA,QAAQ,GAQN,KAAK,CARC,QAAA,EACR,SAAS,GAOP,KAAK,CAPE,SAAA,EACT,KAAK,GAMH,KAAK,MANF,EACL,QAAQ,GAKN,KAAK,CAAA,QALC,EACR,aAAa,GAIX,KAAK,CAAA,aAJM,EACb,SAAS,GAGP,KAAK,CAHE,SAAA,EACK,SAAS,GAErB,KAAK,CAFgB,YAAA,CAAA,EACE,oBAAoB,GAC3C,KAAK,yBADsC,CACtC;AAET,IAAA,QACEA,GAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EACH,SAAS,EAAC,QAAQ,EAClB,CAAC,EAAC,GAAG,EACL,GAAG,EAAC,GAAG,EACP,UAAU,EAAC,YAAY,EACvB,IAAI,EAAC,SAAS,EACd,GAAG,EAAE,EAAE,SAAS,EAAA,SAAA,EAAE,KAAK,EAAA,KAAA,EAAE,QAAQ,EAAA,QAAA,EAAE,SAAS,EAAE,MAAM,EAAE,EACtD,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,UAAC,CAAC,EAAK,EAAA,OAAA,CAAC,CAAC,eAAe,EAAE,CAAnB,EAAmB,gBACvB,SAAS,EAAA,uBAAA,EACE,oBAAoB,EAAA,EACvC,aAAa,EAAA,EAAA,QAAA,EAEhB,QAAQ,EAAA,CAAA,CACJ,EACR;AACH;;;;"}
|
|
1
|
+
{"version":3,"file":"Menu.js","sources":["../../../src/components/internal/Menu.tsx"],"sourcesContent":["import { ReactNode, Ref } from 'react'\n\nimport { CSSObject } from '@emotion/react'\n\nimport { Flex, FlexProps } from '~harmony/components/layout/Flex'\nimport { Paper, PaperProps } from '~harmony/components/layout/Paper'\nimport { Popup } from '~harmony/components/popup/Popup'\nimport { PopupProps } from '~harmony/components/popup/types'\nimport { WithCSS } from '~harmony/foundations'\n\n// TODO menu label\n\nexport type MenuProps = Omit<PopupProps, 'children'> & {\n children: ReactNode\n PaperProps?: WithCSS<Partial<PaperProps>>\n}\n\nexport type MenuContentProps = {\n children: ReactNode\n maxHeight?: CSSObject['maxHeight']\n width?: CSSObject['width']\n minWidth?: CSSObject['minWidth']\n MenuListProps?: WithCSS<Partial<FlexProps>>\n scrollRef: Ref<HTMLDivElement>\n 'aria-label'?: string\n 'aria-activedescendent'?: string\n}\n\nexport const Menu = (props: MenuProps) => {\n const { children, PaperProps, ...other } = props\n\n return (\n <Popup {...other}>\n <Paper mt='s' border='strong' shadow='far' {...PaperProps}>\n {children}\n </Paper>\n </Popup>\n )\n}\n\nexport const MenuContent = (props: MenuContentProps) => {\n const {\n children,\n maxHeight,\n width,\n minWidth,\n MenuListProps,\n scrollRef,\n 'aria-label': ariaLabel,\n 'aria-activedescendent': ariaActiveDescendant\n } = props\n\n return (\n <Flex\n direction='column'\n p='s'\n gap='s'\n alignItems='flex-start'\n role='listbox'\n css={{ maxHeight, width, minWidth, overflowY: 'auto' }}\n ref={scrollRef}\n onClick={(e) => e.stopPropagation()}\n aria-label={ariaLabel}\n aria-activedescendant={ariaActiveDescendant}\n {...MenuListProps}\n >\n {children}\n </Flex>\n )\n}\n"],"names":["_jsx"],"mappings":";;;;;;AA4BO,IAAM,IAAI,GAAG,UAAC,KAAgB,EAAA;AAC3B,IAAA,IAAA,QAAQ,GAA2B,KAAK,CAAhC,QAAA,EAAE,UAAU,GAAe,KAAK,CAApB,UAAA,EAAK,KAAK,GAAK,MAAA,CAAA,KAAK,EAA1C,CAAA,UAAA,EAAA,YAAA,CAAkC,CAAF,CAAU;IAEhD,QACEA,GAAC,CAAA,KAAK,EAAK,QAAA,CAAA,EAAA,EAAA,KAAK,EACd,EAAA,QAAA,EAAAA,GAAA,CAAC,KAAK,EAAA,QAAA,CAAA,EAAC,EAAE,EAAC,GAAG,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,EAAC,KAAK,EAAA,EAAK,UAAU,EAAA,EAAA,QAAA,EACtD,QAAQ,EAAA,CAAA,CACH,EACF,CAAA,CAAA,EACT;AACH,EAAC;AAEM,IAAM,WAAW,GAAG,UAAC,KAAuB,EAAA;AAE/C,IAAA,IAAA,QAAQ,GAQN,KAAK,CARC,QAAA,EACR,SAAS,GAOP,KAAK,CAPE,SAAA,EACT,KAAK,GAMH,KAAK,MANF,EACL,QAAQ,GAKN,KAAK,CAAA,QALC,EACR,aAAa,GAIX,KAAK,CAAA,aAJM,EACb,SAAS,GAGP,KAAK,CAHE,SAAA,EACK,SAAS,GAErB,KAAK,CAFgB,YAAA,CAAA,EACE,oBAAoB,GAC3C,KAAK,yBADsC,CACtC;AAET,IAAA,QACEA,GAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EACH,SAAS,EAAC,QAAQ,EAClB,CAAC,EAAC,GAAG,EACL,GAAG,EAAC,GAAG,EACP,UAAU,EAAC,YAAY,EACvB,IAAI,EAAC,SAAS,EACd,GAAG,EAAE,EAAE,SAAS,EAAA,SAAA,EAAE,KAAK,EAAA,KAAA,EAAE,QAAQ,EAAA,QAAA,EAAE,SAAS,EAAE,MAAM,EAAE,EACtD,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,UAAC,CAAC,EAAK,EAAA,OAAA,CAAC,CAAC,eAAe,EAAE,CAAnB,EAAmB,gBACvB,SAAS,EAAA,uBAAA,EACE,oBAAoB,EAAA,EACvC,aAAa,EAAA,EAAA,QAAA,EAEhB,QAAQ,EAAA,CAAA,CACJ,EACR;AACH;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItem.d.ts","sourceRoot":"","sources":["../../../src/components/internal/MenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EAGV,MAAM,OAAO,CAAA;AAKd,OAAO,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"MenuItem.d.ts","sourceRoot":"","sources":["../../../src/components/internal/MenuItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,SAAS,EAGV,MAAM,OAAO,CAAA;AAKd,OAAO,EAAE,eAAe,EAAE,mCAAmD;AAC7E,OAAO,EAAE,aAAa,EAAE,gBAAgC;AAIxD,MAAM,MAAM,aAAa,CAAC,KAAK,SAAS,MAAM,IAAI,IAAI,CACpD,eAAe,EACf,SAAS,GAAG,UAAU,CACvB,GAAG;IACF,OAAO,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC7B,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,GAAG,CACE;IACE,OAAO,EAAE,QAAQ,CAAA;IACjB,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,KAAK,IAAI,CAAA;IACjC,KAAK,EAAE,KAAK,CAAA;CACb,GACD;IAAE,OAAO,EAAE,QAAQ,CAAA;CAAE,CACxB,CAAA;AAEH,eAAO,MAAM,QAAQ,yMA8GnB,CAAA"}
|
|
@@ -51,7 +51,7 @@ var MenuItem = forwardRef(function (props, ref) {
|
|
|
51
51
|
return (jsxs(BaseButton, __assign({ ref: ref, iconLeft: icon, styles: {
|
|
52
52
|
button: __assign(__assign(__assign({}, optionCss), (isActive ? activeOptionCss : {})), styles === null || styles === void 0 ? void 0 : styles.button),
|
|
53
53
|
icon: __assign(__assign({}, optionIconCss), styles === null || styles === void 0 ? void 0 : styles.icon)
|
|
54
|
-
}, onClick: handleClick, role: variant === 'option' ? 'option' : undefined }, other, { onChange: undefined }, { children: [leadingElement !== null && leadingElement !== void 0 ? leadingElement : null, typeof label === 'string' ? (jsx(Text, __assign({ variant: 'body', size: variant === 'option' ? 'l' : 'm', strength: variant === 'button' ? 'strong' : 'default' }, { children: variant === 'option' ? label !== null && label !== void 0 ? label : props.value : label }))) : (label), typeof helperText === 'string' ? (jsx(Text, __assign({ variant: 'body', size: variant === 'option' ? 'l' : 'm', strength: variant === 'button' ? 'strong' : 'default', color: isActive ? 'staticWhite' : 'subdued' }, { children: helperText }))) : (helperText !== null && helperText !== void 0 ? helperText : null)] })));
|
|
54
|
+
}, onClick: handleClick, role: variant === 'option' ? 'option' : undefined }, other, { onChange: undefined }, { children: [leadingElement !== null && leadingElement !== void 0 ? leadingElement : null, typeof label === 'string' ? (jsx(Text, __assign({ variant: 'body', size: variant === 'option' ? 'l' : 'm', strength: variant === 'button' ? 'strong' : 'default' }, { children: variant === 'option' ? (label !== null && label !== void 0 ? label : props.value) : label }))) : (label), typeof helperText === 'string' ? (jsx(Text, __assign({ variant: 'body', size: variant === 'option' ? 'l' : 'm', strength: variant === 'button' ? 'strong' : 'default', color: isActive ? 'staticWhite' : 'subdued' }, { children: helperText }))) : ((helperText !== null && helperText !== void 0 ? helperText : null))] })));
|
|
55
55
|
});
|
|
56
56
|
|
|
57
57
|
export { MenuItem };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItem.js","sources":["../../../src/components/internal/MenuItem.tsx"],"sourcesContent":["import {\n forwardRef,\n MouseEventHandler,\n ReactNode,\n Ref,\n useCallback\n} from 'react'\n\nimport { CSSObject } from '@emotion/react'\n\nimport { BaseButton } from 'components/button/BaseButton/BaseButton'\nimport { BaseButtonProps } from 'components/button/BaseButton/types'\nimport { IconComponent } from 'components/icon'\nimport { Text } from 'components/text/Text'\nimport { useTheme } from 'foundations'\n\nexport type MenuItemProps<Value extends string> = Omit<\n BaseButtonProps,\n 'variant' | 'onChange'\n> & {\n variant?: 'option' | 'button'\n label?: ReactNode\n icon?: IconComponent\n leadingElement?: ReactNode\n helperText?: ReactNode\n isActive?: boolean\n} & (\n | {\n variant: 'option'\n onChange: (option: Value) => void\n value: Value\n }\n | { variant: 'button' }\n )\n\nexport const MenuItem = forwardRef(function <Value extends string>(\n props: MenuItemProps<Value>,\n ref: Ref<HTMLButtonElement>\n) {\n const {\n label,\n isActive,\n onClick,\n icon,\n leadingElement,\n variant,\n helperText,\n styles,\n ...other\n } = props\n\n const { color, cornerRadius, spacing, typography } = useTheme()\n\n // Popup Styles\n const optionIconCss: CSSObject = {\n width: spacing.unit4,\n height: spacing.unit4\n }\n\n const activeOptionCss: CSSObject = {\n transform: 'none',\n backgroundColor: color.secondary.s300,\n color: color.static.white,\n '& a, & span': { color: color.static.white }\n }\n\n const optionCss: CSSObject = {\n height: variant === 'option' ? 36 : 40,\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': activeOptionCss,\n '&:active': {\n transform: 'none'\n }\n }\n\n const handleClick: MouseEventHandler<HTMLButtonElement> = useCallback(\n (e) => {\n e.stopPropagation()\n onClick?.(e)\n\n if (variant === 'option') {\n props.onChange(props.value)\n }\n },\n [onClick, props, variant]\n )\n\n return (\n <BaseButton\n ref={ref}\n iconLeft={icon}\n styles={{\n button: {\n ...optionCss,\n ...(isActive ? activeOptionCss : {}),\n ...styles?.button\n },\n icon: {\n ...optionIconCss,\n ...styles?.icon\n }\n }}\n onClick={handleClick}\n role={variant === 'option' ? 'option' : undefined}\n {...other}\n onChange={undefined}\n >\n {leadingElement ?? null}\n {typeof label === 'string' ? (\n <Text\n variant='body'\n size={variant === 'option' ? 'l' : 'm'}\n strength={variant === 'button' ? 'strong' : 'default'}\n >\n {variant === 'option' ? label ?? props.value : label}\n </Text>\n ) : (\n label\n )}\n {typeof helperText === 'string' ? (\n <Text\n variant='body'\n size={variant === 'option' ? 'l' : 'm'}\n strength={variant === 'button' ? 'strong' : 'default'}\n color={isActive ? 'staticWhite' : 'subdued'}\n >\n {helperText}\n </Text>\n ) : (\n helperText ?? null\n )}\n </BaseButton>\n )\n})\n"],"names":["_jsxs","_jsx"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MenuItem.js","sources":["../../../src/components/internal/MenuItem.tsx"],"sourcesContent":["import {\n forwardRef,\n MouseEventHandler,\n ReactNode,\n Ref,\n useCallback\n} from 'react'\n\nimport { CSSObject } from '@emotion/react'\n\nimport { BaseButton } from '~harmony/components/button/BaseButton/BaseButton'\nimport { BaseButtonProps } from '~harmony/components/button/BaseButton/types'\nimport { IconComponent } from '~harmony/components/icon'\nimport { Text } from '~harmony/components/text/Text'\nimport { useTheme } from '~harmony/foundations'\n\nexport type MenuItemProps<Value extends string> = Omit<\n BaseButtonProps,\n 'variant' | 'onChange'\n> & {\n variant?: 'option' | 'button'\n label?: ReactNode\n icon?: IconComponent\n leadingElement?: ReactNode\n helperText?: ReactNode\n isActive?: boolean\n} & (\n | {\n variant: 'option'\n onChange: (option: Value) => void\n value: Value\n }\n | { variant: 'button' }\n )\n\nexport const MenuItem = forwardRef(function <Value extends string>(\n props: MenuItemProps<Value>,\n ref: Ref<HTMLButtonElement>\n) {\n const {\n label,\n isActive,\n onClick,\n icon,\n leadingElement,\n variant,\n helperText,\n styles,\n ...other\n } = props\n\n const { color, cornerRadius, spacing, typography } = useTheme()\n\n // Popup Styles\n const optionIconCss: CSSObject = {\n width: spacing.unit4,\n height: spacing.unit4\n }\n\n const activeOptionCss: CSSObject = {\n transform: 'none',\n backgroundColor: color.secondary.s300,\n color: color.static.white,\n '& a, & span': { color: color.static.white }\n }\n\n const optionCss: CSSObject = {\n height: variant === 'option' ? 36 : 40,\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': activeOptionCss,\n '&:active': {\n transform: 'none'\n }\n }\n\n const handleClick: MouseEventHandler<HTMLButtonElement> = useCallback(\n (e) => {\n e.stopPropagation()\n onClick?.(e)\n\n if (variant === 'option') {\n props.onChange(props.value)\n }\n },\n [onClick, props, variant]\n )\n\n return (\n <BaseButton\n ref={ref}\n iconLeft={icon}\n styles={{\n button: {\n ...optionCss,\n ...(isActive ? activeOptionCss : {}),\n ...styles?.button\n },\n icon: {\n ...optionIconCss,\n ...styles?.icon\n }\n }}\n onClick={handleClick}\n role={variant === 'option' ? 'option' : undefined}\n {...other}\n onChange={undefined}\n >\n {leadingElement ?? null}\n {typeof label === 'string' ? (\n <Text\n variant='body'\n size={variant === 'option' ? 'l' : 'm'}\n strength={variant === 'button' ? 'strong' : 'default'}\n >\n {variant === 'option' ? (label ?? props.value) : label}\n </Text>\n ) : (\n label\n )}\n {typeof helperText === 'string' ? (\n <Text\n variant='body'\n size={variant === 'option' ? 'l' : 'm'}\n strength={variant === 'button' ? 'strong' : 'default'}\n color={isActive ? 'staticWhite' : 'subdued'}\n >\n {helperText}\n </Text>\n ) : (\n (helperText ?? null)\n )}\n </BaseButton>\n )\n})\n"],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionKeyHandler.d.ts","sourceRoot":"","sources":["../../../src/components/internal/OptionKeyHandler.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,SAAS,EAAa,MAAM,OAAO,CAAA;AAEjE,OAAO,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"OptionKeyHandler.d.ts","sourceRoot":"","sources":["../../../src/components/internal/OptionKeyHandler.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAY,SAAS,EAAa,MAAM,OAAO,CAAA;AAEjE,OAAO,EAAE,aAAa,EAAE,gBAAgC;AAExD,KAAK,UAAU,CAAC,KAAK,SAAS,MAAM,IAAI;IACtC,KAAK,EAAE,KAAK,CAAA;IACZ;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB;;OAEG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;CAClC,CAAA;AAED,KAAK,qBAAqB,CAAC,KAAK,SAAS,MAAM,IAAI;IACjD,QAAQ,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAA;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,UAAU,EAAE,SAAS,CAAC,iBAAiB,EAAE,CAAC,CAAA;IAC1C,OAAO,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAA;IAC5B,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC,CAAA;IACpC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,gBAAgB,iHA6F5B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionKeyHandler.js","sources":["../../../src/components/internal/OptionKeyHandler.tsx"],"sourcesContent":["import { RefObject, useState, ReactNode, useEffect } from 'react'\n\nimport { IconComponent } from 'components/icon'\n\ntype OptionType<Value extends string> = {\n value: Value\n /**\n * The label to display. If not provided, uses the value.\n */\n label?: string\n helperText?: string\n icon?: IconComponent\n /**\n * A leading element to display before the option label. Useful for icons/emojis\n */\n leadingElement?: JSX.Element\n /**\n * A leading element to display before the filter button label\n */\n labelLeadingElement?: JSX.Element\n}\n\ntype OptionKeyHandlerProps<Value extends string> = {\n children: (activeValue: Value | null) => ReactNode\n disabled?: boolean\n onChange: (value: Value) => void\n optionRefs: RefObject<HTMLButtonElement[]>\n options: OptionType<Value>[]\n scrollRef: RefObject<HTMLDivElement>\n initialActiveIndex?: number\n}\n\nexport const OptionKeyHandler = <Value extends string>(\n props: OptionKeyHandlerProps<Value>\n) => {\n const {\n disabled,\n options,\n onChange,\n optionRefs,\n scrollRef,\n children,\n initialActiveIndex = null\n } = props\n const [activeIndex, setActiveIndex] = useState<number | null>(\n initialActiveIndex\n )\n const activeValue = activeIndex !== null ? options[activeIndex]?.value : null\n\n useEffect(() => {\n const adjustScrollPosition = (newIndex: number | null) => {\n if (newIndex !== null) {\n if (optionRefs.current) {\n optionRefs.current[newIndex].scrollIntoView({\n behavior: 'smooth',\n block: 'start'\n })\n }\n } else {\n scrollRef.current?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n\n const handleKeyDown = (event: KeyboardEvent) => {\n if (disabled) {\n return\n }\n\n switch (event.key) {\n case 'ArrowUp':\n event.stopPropagation()\n event.preventDefault()\n setActiveIndex((prevIndex) => {\n const getNewIndex = () => {\n if (prevIndex === null) {\n return options.length - 1\n }\n\n return prevIndex > 0 ? prevIndex - 1 : null\n }\n\n const newIndex = getNewIndex()\n adjustScrollPosition(newIndex)\n\n return newIndex\n })\n break\n case 'ArrowDown':\n event.stopPropagation()\n event.preventDefault()\n setActiveIndex((prevIndex) => {\n const getNewIndex = () => {\n if (prevIndex === null) {\n return 0\n }\n\n return prevIndex < options.length - 1 ? prevIndex + 1 : null\n }\n\n const newIndex = getNewIndex()\n adjustScrollPosition(newIndex)\n\n return newIndex\n })\n break\n case 'Enter':\n event.stopPropagation()\n event.preventDefault()\n if (activeIndex !== null && options[activeIndex]) {\n onChange(options[activeIndex].value)\n }\n break\n default:\n break\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown)\n }\n }, [disabled, options, activeIndex, scrollRef, optionRefs, onChange])\n\n return <>{children(activeValue)}</>\n}\n"],"names":["_jsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OptionKeyHandler.js","sources":["../../../src/components/internal/OptionKeyHandler.tsx"],"sourcesContent":["import { RefObject, useState, ReactNode, useEffect } from 'react'\n\nimport { IconComponent } from '~harmony/components/icon'\n\ntype OptionType<Value extends string> = {\n value: Value\n /**\n * The label to display. If not provided, uses the value.\n */\n label?: string\n helperText?: string\n icon?: IconComponent\n /**\n * A leading element to display before the option label. Useful for icons/emojis\n */\n leadingElement?: JSX.Element\n /**\n * A leading element to display before the filter button label\n */\n labelLeadingElement?: JSX.Element\n}\n\ntype OptionKeyHandlerProps<Value extends string> = {\n children: (activeValue: Value | null) => ReactNode\n disabled?: boolean\n onChange: (value: Value) => void\n optionRefs: RefObject<HTMLButtonElement[]>\n options: OptionType<Value>[]\n scrollRef: RefObject<HTMLDivElement>\n initialActiveIndex?: number\n}\n\nexport const OptionKeyHandler = <Value extends string>(\n props: OptionKeyHandlerProps<Value>\n) => {\n const {\n disabled,\n options,\n onChange,\n optionRefs,\n scrollRef,\n children,\n initialActiveIndex = null\n } = props\n const [activeIndex, setActiveIndex] = useState<number | null>(\n initialActiveIndex\n )\n const activeValue = activeIndex !== null ? options[activeIndex]?.value : null\n\n useEffect(() => {\n const adjustScrollPosition = (newIndex: number | null) => {\n if (newIndex !== null) {\n if (optionRefs.current) {\n optionRefs.current[newIndex].scrollIntoView({\n behavior: 'smooth',\n block: 'start'\n })\n }\n } else {\n scrollRef.current?.scrollTo({ top: 0, behavior: 'smooth' })\n }\n }\n\n const handleKeyDown = (event: KeyboardEvent) => {\n if (disabled) {\n return\n }\n\n switch (event.key) {\n case 'ArrowUp':\n event.stopPropagation()\n event.preventDefault()\n setActiveIndex((prevIndex) => {\n const getNewIndex = () => {\n if (prevIndex === null) {\n return options.length - 1\n }\n\n return prevIndex > 0 ? prevIndex - 1 : null\n }\n\n const newIndex = getNewIndex()\n adjustScrollPosition(newIndex)\n\n return newIndex\n })\n break\n case 'ArrowDown':\n event.stopPropagation()\n event.preventDefault()\n setActiveIndex((prevIndex) => {\n const getNewIndex = () => {\n if (prevIndex === null) {\n return 0\n }\n\n return prevIndex < options.length - 1 ? prevIndex + 1 : null\n }\n\n const newIndex = getNewIndex()\n adjustScrollPosition(newIndex)\n\n return newIndex\n })\n break\n case 'Enter':\n event.stopPropagation()\n event.preventDefault()\n if (activeIndex !== null && options[activeIndex]) {\n onChange(options[activeIndex].value)\n }\n break\n default:\n break\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n\n return () => {\n window.removeEventListener('keydown', handleKeyDown)\n }\n }, [disabled, options, activeIndex, scrollRef, optionRefs, onChange])\n\n return <>{children(activeValue)}</>\n}\n"],"names":["_jsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Box/Box.tsx"],"names":[],"mappings":";AAMA,8FAA8F;AAC9F,eAAO,MAAM,GAAG;;;
|
|
1
|
+
{"version":3,"file":"Box.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Box/Box.tsx"],"names":[],"mappings":";AAMA,8FAA8F;AAC9F,eAAO,MAAM,GAAG;;;2PAkFf,CAAA"}
|
|
@@ -27,7 +27,10 @@ var Box = styled.div(function (_a) {
|
|
|
27
27
|
marginLeft: (_s = (marginL && spacing[marginL])) !== null && _s !== void 0 ? _s : marginL,
|
|
28
28
|
marginRight: (_t = (marginR && spacing[marginR])) !== null && _t !== void 0 ? _t : marginR,
|
|
29
29
|
marginBottom: (_u = (marginB && spacing[marginB])) !== null && _u !== void 0 ? _u : marginB,
|
|
30
|
-
backgroundColor: backgroundColor &&
|
|
30
|
+
backgroundColor: backgroundColor &&
|
|
31
|
+
(backgroundColor === 'none'
|
|
32
|
+
? undefined
|
|
33
|
+
: theme.color.background[backgroundColor]),
|
|
31
34
|
border: border && "1px solid ".concat(color.border[border]),
|
|
32
35
|
borderTop: borderTop && "1px solid ".concat(color.border[borderTop]),
|
|
33
36
|
borderRight: borderRight && "1px solid ".concat(color.border[borderRight]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Box.js","sources":["../../../../src/components/layout/Box/Box.tsx"],"sourcesContent":["import styled from '@emotion/styled'\n\nimport type { SpacingOptions } from '../../../foundations/spacing'\n\nimport type { BoxProps } from './types'\n\n/** Base layout component used as a building block for creating pages and other components. */\nexport const Box = styled.div<BoxProps>(\n ({\n h,\n w,\n p,\n ph,\n pv,\n pt,\n pl,\n pr,\n pb,\n m,\n mh,\n mv,\n mt,\n ml,\n mr,\n mb,\n backgroundColor,\n border,\n borderTop,\n borderRight,\n borderBottom,\n borderLeft,\n borderRadius,\n borderTopRightRadius,\n borderBottomRightRadius,\n borderBottomLeftRadius,\n borderTopLeftRadius,\n shadow,\n flex,\n alignSelf,\n theme\n }) => {\n const { shadows, spacing, color, cornerRadius } = theme\n const padT = pt ?? pv ?? p\n const padB = pb ?? pv ?? p\n const padL = pl ?? ph ?? p\n const padR = pr ?? ph ?? p\n\n const marginT = mt ?? mv ?? m\n const marginB = mb ?? mv ?? m\n const marginL = ml ?? mh ?? m\n const marginR = mr ?? mh ?? m\n\n return {\n position: 'relative',\n boxSizing: 'border-box',\n height: spacing[h as SpacingOptions] ?? h,\n width: spacing[w as SpacingOptions] ?? w,\n boxShadow: shadow && shadows[shadow],\n paddingTop: (padT && spacing[padT as SpacingOptions]) ?? padT,\n paddingLeft: (padL && spacing[padL as SpacingOptions]) ?? padL,\n paddingRight: (padR && spacing[padR as SpacingOptions]) ?? padR,\n paddingBottom: (padB && spacing[padB as SpacingOptions]) ?? padB,\n marginTop: (marginT && spacing[marginT as SpacingOptions]) ?? marginT,\n marginLeft: (marginL && spacing[marginL as SpacingOptions]) ?? marginL,\n marginRight: (marginR && spacing[marginR as SpacingOptions]) ?? marginR,\n marginBottom: (marginB && spacing[marginB as SpacingOptions]) ?? marginB,\n backgroundColor:\n backgroundColor
|
|
1
|
+
{"version":3,"file":"Box.js","sources":["../../../../src/components/layout/Box/Box.tsx"],"sourcesContent":["import styled from '@emotion/styled'\n\nimport type { SpacingOptions } from '../../../foundations/spacing'\n\nimport type { BoxProps } from './types'\n\n/** Base layout component used as a building block for creating pages and other components. */\nexport const Box = styled.div<BoxProps>(\n ({\n h,\n w,\n p,\n ph,\n pv,\n pt,\n pl,\n pr,\n pb,\n m,\n mh,\n mv,\n mt,\n ml,\n mr,\n mb,\n backgroundColor,\n border,\n borderTop,\n borderRight,\n borderBottom,\n borderLeft,\n borderRadius,\n borderTopRightRadius,\n borderBottomRightRadius,\n borderBottomLeftRadius,\n borderTopLeftRadius,\n shadow,\n flex,\n alignSelf,\n theme\n }) => {\n const { shadows, spacing, color, cornerRadius } = theme\n const padT = pt ?? pv ?? p\n const padB = pb ?? pv ?? p\n const padL = pl ?? ph ?? p\n const padR = pr ?? ph ?? p\n\n const marginT = mt ?? mv ?? m\n const marginB = mb ?? mv ?? m\n const marginL = ml ?? mh ?? m\n const marginR = mr ?? mh ?? m\n\n return {\n position: 'relative',\n boxSizing: 'border-box',\n height: spacing[h as SpacingOptions] ?? h,\n width: spacing[w as SpacingOptions] ?? w,\n boxShadow: shadow && shadows[shadow],\n paddingTop: (padT && spacing[padT as SpacingOptions]) ?? padT,\n paddingLeft: (padL && spacing[padL as SpacingOptions]) ?? padL,\n paddingRight: (padR && spacing[padR as SpacingOptions]) ?? padR,\n paddingBottom: (padB && spacing[padB as SpacingOptions]) ?? padB,\n marginTop: (marginT && spacing[marginT as SpacingOptions]) ?? marginT,\n marginLeft: (marginL && spacing[marginL as SpacingOptions]) ?? marginL,\n marginRight: (marginR && spacing[marginR as SpacingOptions]) ?? marginR,\n marginBottom: (marginB && spacing[marginB as SpacingOptions]) ?? marginB,\n backgroundColor:\n backgroundColor &&\n (backgroundColor === 'none'\n ? undefined\n : theme.color.background[backgroundColor]),\n border: border && `1px solid ${color.border[border]}`,\n borderTop: borderTop && `1px solid ${color.border[borderTop]}`,\n borderRight: borderRight && `1px solid ${color.border[borderRight]}`,\n borderBottom: borderBottom && `1px solid ${color.border[borderBottom]}`,\n borderLeft: borderLeft && `1px solid ${color.border[borderLeft]}`,\n borderRadius: borderRadius && cornerRadius[borderRadius],\n borderTopRightRadius:\n borderTopRightRadius && cornerRadius[borderTopRightRadius],\n borderBottomRightRadius:\n borderBottomRightRadius && cornerRadius[borderBottomRightRadius],\n borderBottomLeftRadius:\n borderBottomLeftRadius && cornerRadius[borderBottomLeftRadius],\n borderTopLeftRadius:\n borderTopLeftRadius && cornerRadius[borderTopLeftRadius],\n flex,\n alignSelf\n }\n }\n)\n"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ export type BaseBoxProps = {
|
|
|
37
37
|
/** Margin Bottom */
|
|
38
38
|
mb?: SpacingOptions | CSSProperties['marginBottom'];
|
|
39
39
|
/** Background Color */
|
|
40
|
-
backgroundColor?: BackgroundColors;
|
|
40
|
+
backgroundColor?: BackgroundColors | 'none';
|
|
41
41
|
/** Border */
|
|
42
42
|
border?: BorderColors;
|
|
43
43
|
/** Border Top */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Box/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAChF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAGlE,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa;IACb,CAAC,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC5C,YAAY;IACZ,CAAC,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IAE3C,cAAc;IACd,CAAC,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;IAC7C,yBAAyB;IACzB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,CAAA;IACpD,uBAAuB;IACvB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;IACnD,kBAAkB;IAClB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,CAAA;IACjD,mBAAmB;IACnB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IAClD,oBAAoB;IACpB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;IACnD,qBAAqB;IACrB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,eAAe,CAAC,CAAA;IAEpD,aAAa;IACb,CAAC,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC5C,wBAAwB;IACxB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;IACnD,sBAAsB;IACtB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IAClD,iBAAiB;IACjB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,WAAW,CAAC,CAAA;IAChD,kBAAkB;IAClB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,YAAY,CAAC,CAAA;IACjD,mBAAmB;IACnB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;IAClD,oBAAoB;IACpB,EAAE,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;IACnD,uBAAuB;IACvB,eAAe,CAAC,EAAE,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Box/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../src/components/loading-spinner/LoadingSpinner.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../src/components/loading-spinner/LoadingSpinner.tsx"],"names":[],"mappings":"AAOA,KAAK,mBAAmB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjD,QAAA,MAAM,cAAc,UAAW,mBAAmB,qDAYjD,CAAA;AAED,eAAe,cAAc,CAAA"}
|
|
@@ -1,18 +1,13 @@
|
|
|
1
1
|
import { __assign } from '../../_virtual/_tslib.js';
|
|
2
2
|
import { jsx } from '@emotion/react/jsx-runtime';
|
|
3
3
|
import cn from 'classnames';
|
|
4
|
-
import Lottie from 'react
|
|
4
|
+
import Lottie from 'lottie-react';
|
|
5
5
|
import loadingSpinner from '../../assets/animations/loadingSpinner.json.js';
|
|
6
6
|
import styles from './LoadingSpinner.module.css.js';
|
|
7
7
|
|
|
8
|
-
var lottieOptions = {
|
|
9
|
-
loop: true,
|
|
10
|
-
autoplay: true,
|
|
11
|
-
animationData: loadingSpinner
|
|
12
|
-
};
|
|
13
8
|
var LoadingSpinner = function (props) {
|
|
14
9
|
var className = props.className;
|
|
15
|
-
return (jsx("div", __assign({ className: cn(styles.container, className), role: 'progressbar', "data-chromatic": 'ignore' }, { children: jsx(Lottie, {
|
|
10
|
+
return (jsx("div", __assign({ className: cn(styles.container, className), role: 'progressbar', "data-chromatic": 'ignore' }, { children: jsx(Lottie, { loop: true, autoplay: true, animationData: loadingSpinner }) })));
|
|
16
11
|
};
|
|
17
12
|
|
|
18
13
|
export { LoadingSpinner as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingSpinner.js","sources":["../../../src/components/loading-spinner/LoadingSpinner.tsx"],"sourcesContent":["import cn from 'classnames'\nimport Lottie from 'react
|
|
1
|
+
{"version":3,"file":"LoadingSpinner.js","sources":["../../../src/components/loading-spinner/LoadingSpinner.tsx"],"sourcesContent":["import cn from 'classnames'\nimport Lottie from 'lottie-react'\n\nimport loadingSpinner from '~harmony/assets/animations/loadingSpinner.json'\n\nimport styles from './LoadingSpinner.module.css'\n\ntype LoadingSpinnerProps = { className?: string }\n\nconst LoadingSpinner = (props: LoadingSpinnerProps) => {\n const { className } = props\n\n return (\n <div\n className={cn(styles.container, className)}\n role='progressbar'\n data-chromatic='ignore'\n >\n <Lottie loop autoplay animationData={loadingSpinner} />\n </div>\n )\n}\n\nexport default LoadingSpinner\n"],"names":["_jsx"],"mappings":";;;;;;;AASM,IAAA,cAAc,GAAG,UAAC,KAA0B,EAAA;AACxC,IAAA,IAAA,SAAS,GAAK,KAAK,CAAA,SAAV,CAAU;AAE3B,IAAA,QACEA,GAAA,CAAA,KAAA,EAAA,QAAA,CAAA,EACE,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,EAC1C,IAAI,EAAC,aAAa,EACH,gBAAA,EAAA,QAAQ,EAEvB,EAAA,EAAA,QAAA,EAAAA,GAAA,CAAC,MAAM,EAAA,EAAC,IAAI,EAAC,IAAA,EAAA,QAAQ,EAAC,IAAA,EAAA,aAAa,EAAE,cAAc,EAAI,CAAA,EAAA,CAAA,CACnD,EACP;AACH;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.tsx"],"names":[],"mappings":";AA4BA,OAAO,EAAE,UAAU,EAAU,MAAM,SAAS,CAAA;AAoF5C,eAAO,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.tsx"],"names":[],"mappings":";AA4BA,OAAO,EAAE,UAAU,EAAU,MAAM,SAAS,CAAA;AAoF5C,eAAO,MAAM,KAAK,sKAoShB,CAAA"}
|
|
@@ -190,7 +190,9 @@ var Modal = forwardRef(function Modal(_a, ref) {
|
|
|
190
190
|
// Closing when we're not open can cause a race condition when opened
|
|
191
191
|
// via a click since this handler exists prior to visibility,
|
|
192
192
|
// causing the modal to open and close immediately
|
|
193
|
-
if (!isOpen ||
|
|
193
|
+
if (!isOpen ||
|
|
194
|
+
(modalContentClickedRef === null || modalContentClickedRef === void 0 ? void 0 : modalContentClickedRef.current) ||
|
|
195
|
+
!dismissOnClickOutside) {
|
|
194
196
|
modalContentClickedRef.current = false;
|
|
195
197
|
return true;
|
|
196
198
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../../../src/components/modal/Modal.tsx"],"sourcesContent":["import {\n useEffect,\n useState,\n useCallback,\n useMemo,\n forwardRef,\n MouseEventHandler,\n useRef\n} from 'react'\n\nimport { useTheme } from '@emotion/react'\nimport cn from 'classnames'\nimport { capitalize } from 'lodash'\nimport uniqueId from 'lodash/uniqueId'\nimport ReactDOM from 'react-dom'\n// eslint-disable-next-line no-restricted-imports -- TODO: migrate to @react-spring/web\nimport { animated, useTransition } from 'react-spring'\nimport { useEffectOnce } from 'react-use'\n\nimport { ModalState } from 'utils/modalState'\n\nimport { useHotkeys, useScrollLock, useClickOutside } from '../../hooks'\nimport { IconClose } from '../../icons'\n\nimport styles from './Modal.module.css'\nimport { ModalContext } from './ModalContext'\nimport { findAncestor } from './findAncestor'\nimport { useModalScrollCount } from './hooks'\nimport { ModalProps, Anchor } from './types'\n\nconst rootContainer = 'modalRootContainer'\nconst rootId = 'modalRoot'\nconst bgId = 'bgModal'\nconst wrapperClass = 'modalWrapper'\n\nconst anchorStyleMap = {\n [Anchor.TOP]: styles.top,\n [Anchor.CENTER]: styles.center,\n [Anchor.BOTTOM]: styles.bottom\n}\n\nconst anchorPropertyMap = {\n [Anchor.TOP]: 'marginTop',\n [Anchor.CENTER]: 'marginTop',\n [Anchor.BOTTOM]: 'marginBottom'\n}\n\nconst getOffset = (anchor: Anchor, verticalAnchorOffset: number) => {\n return { [anchorPropertyMap[anchor]]: verticalAnchorOffset }\n}\n\nconst useModalRoot = (id: string, isOpen: boolean, zIndex?: number) => {\n const [modalRoot, setModalRoot] = useState<HTMLElement | null>(null)\n const [modalBg, setModalBg] = useState<HTMLElement | null>(null)\n\n useEffect(() => {\n const uniqueRootId = `${id}-${rootId}`\n const uniqueBgId = `${id}-${bgId}`\n const uniqueRootContainerId = `${id}-${rootContainer}`\n let el = document.getElementById(uniqueRootId)\n let bgEl = document.getElementById(uniqueBgId)\n let container = document.getElementById(uniqueRootContainerId)\n\n if (!isOpen) {\n if (bgEl) {\n document.body.removeChild(bgEl)\n }\n if (el && container) {\n container.removeChild(el)\n }\n\n if (container) {\n document.body.removeChild(container)\n }\n\n return\n }\n\n if (!bgEl) {\n bgEl = document.createElement('div')\n bgEl.id = uniqueBgId\n bgEl.classList.add(bgId)\n document.body.appendChild(bgEl)\n }\n\n if (!container) {\n container = document.createElement('div')\n container.id = uniqueRootContainerId\n container.classList.add(rootContainer)\n document.body.appendChild(container)\n }\n\n if (!el) {\n el = document.createElement('div')\n el.id = uniqueRootId\n el.classList.add(rootId)\n container.appendChild(el)\n }\n\n if (zIndex) {\n container.style.zIndex = `${zIndex}`\n el.style.zIndex = `${zIndex}`\n bgEl.style.zIndex = `${zIndex - 1}`\n }\n\n setModalRoot(el)\n setModalBg(bgEl)\n }, [id, zIndex, isOpen])\n\n return [modalRoot, modalBg]\n}\n\nexport const Modal = forwardRef<HTMLDivElement, ModalProps>(function Modal(\n {\n 'aria-describedby': ariaDescribedbyProp,\n 'aria-labelledby': ariaLabelledbyProp,\n modalKey,\n children,\n onClose,\n onClosed,\n isOpen: isOpenProp,\n wrapperClassName,\n bodyClassName,\n titleClassName,\n subtitleClassName,\n headerContainerClassName,\n anchor = Anchor.CENTER,\n subtitle,\n verticalAnchorOffset = 0,\n horizontalPadding = 8,\n contentHorizontalPadding = 0,\n allowScroll = false,\n title = '',\n showTitleHeader = false,\n dismissOnClickOutside = true,\n showDismissButton = false,\n zIndex,\n size\n },\n ref\n) {\n useEffectOnce(() => {\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'development'\n ) {\n if (\n subtitle ||\n title ||\n showTitleHeader ||\n titleClassName ||\n subtitleClassName ||\n headerContainerClassName ||\n showDismissButton\n ) {\n console.warn(\n 'Header and title-related props of `Modal` have been deprecated. Use the `ModalHeader` sub-component instead.'\n )\n }\n\n if (allowScroll !== undefined) {\n console.warn('`allowScroll` prop of `Modal` has been deprecated.')\n }\n }\n })\n\n const [modalState, setModalState] = useState<ModalState>('closed')\n const isOpen = modalState !== 'closed'\n const isDoneOpening = modalState === 'open'\n const { spring } = useTheme()\n const id = useMemo(() => modalKey || uniqueId('modal-'), [modalKey])\n const titleId = ariaLabelledbyProp || `${id}-title`\n const subtitleId = ariaDescribedbyProp || `${id}-subtitle`\n const modalContextValue = useMemo(() => {\n return { titleId, subtitleId, onClose, isDoneOpening }\n }, [titleId, subtitleId, onClose, isDoneOpening])\n\n const onTouchMove = useCallback(\n (e: any) => {\n !allowScroll && e.preventDefault()\n },\n [allowScroll]\n )\n\n const [modalRoot, bgModal] = useModalRoot(id, isOpen, zIndex)\n const { incrementScrollCount, decrementScrollCount } = useModalScrollCount()\n useScrollLock(isOpen, incrementScrollCount, decrementScrollCount)\n\n useEffect(() => {\n if (modalState === 'closed' && isOpenProp) {\n setModalState('opening')\n } else if (modalState === 'open' && !isOpenProp) {\n setModalState('closing')\n }\n }, [isOpenProp, modalState])\n\n useEffect(() => {\n if (isOpen) {\n if (bgModal) {\n bgModal.classList.add('bgModalVisible')\n }\n\n // Need to prevent safari iOS bounce\n // overscroll effect by intercepting\n // touchmove events.\n if (modalRoot) modalRoot.addEventListener('touchmove', onTouchMove)\n return () => {\n if (bgModal) bgModal.classList.remove('bgModalVisible')\n }\n }\n if (bgModal) bgModal.classList.remove('bgModalVisible')\n if (modalRoot) modalRoot.removeEventListener('touchmove', onTouchMove)\n return () => {}\n }, [isOpen, bgModal, onTouchMove, modalRoot])\n\n const transition = useTransition(isOpenProp, null, {\n from: { transform: 'scale(0)', opacity: 0 },\n // @ts-ignore function is a valid value for enter, but the types don't acknowledge that\n enter:\n () =>\n async (\n next: (props: { transform: string; opacity: number }) => Promise<void>\n ) => {\n await next({ transform: 'scale(1)', opacity: 1 })\n },\n leave: { transform: 'scale(0)', opacity: 0 },\n unique: true,\n config: spring.standard,\n onDestroyed: (isDestroyed) => {\n setModalState(isDestroyed ? 'closed' : 'open')\n if (isDestroyed) {\n onClosed?.()\n }\n }\n })\n\n const modalContentClickedRef = useRef<boolean>(false)\n const outsideClickRef = useClickOutside(\n onClose,\n isOpen,\n // Check to see if the click outside is not another modal wrapper.\n // If it is, that means we have a nested modal situation and shouldn't\n // dismiss \"this\" modal. We let the useClickOutside in \"that\" modal to\n // dismiss it.\n (e: EventTarget) => {\n // Only close if we're open.\n // Closing when we're not open can cause a race condition when opened\n // via a click since this handler exists prior to visibility,\n // causing the modal to open and close immediately\n if (!isOpen || modalContentClickedRef?.current) {\n modalContentClickedRef.current = false\n return true\n }\n if (e instanceof Element) {\n const modalElement = findAncestor(e, `.${wrapperClass}`)\n if (!modalElement) {\n return false\n }\n const isModalWrapper = modalElement.classList.contains(wrapperClass)\n const isThisModalWrapper = modalElement.classList.contains(\n `${wrapperClass}-${id}`\n )\n return isModalWrapper && !isThisModalWrapper\n }\n return false\n }\n )\n\n const handleEscape = useCallback(() => {\n if (isOpen) onClose()\n }, [isOpen, onClose])\n\n useHotkeys({ 27 /* escape */: handleEscape })\n\n const wrapperClassNames = cn(\n styles.wrapper,\n anchorStyleMap[anchor],\n {\n [wrapperClassName!]: !!wrapperClassName\n },\n wrapperClass,\n // Add a unique id class name to detect whether, if we're using\n // click outside to dismiss the modal, the correct \"outside\" is being clicked.\n `${wrapperClass}-${id}`\n )\n\n const wrapperStyle = {\n paddingLeft: `${horizontalPadding}px`,\n paddingRight: `${horizontalPadding}px`\n }\n\n /** Begin @deprecated section (favor using ModalContent sub-component) */\n const bodyStyle = {\n paddingLeft: `${contentHorizontalPadding}px`,\n paddingRight: `${contentHorizontalPadding}px`\n }\n /** End @deprecated section */\n\n const bodyClassNames = cn(styles.body, {\n [styles.noScroll!]: !allowScroll,\n [styles[`size${capitalize(size)}`]]: size,\n [bodyClassName!]: !!bodyClassName\n })\n\n const headerContainerClassNames = cn(styles.headerContainer, {\n [headerContainerClassName!]: !!headerContainerClassName\n })\n\n const [height, setHeight] = useState(\n typeof window !== 'undefined' ? window.innerHeight : 0\n )\n\n useEffect(() => {\n const onResize = () => {\n setHeight(window.innerHeight)\n }\n window.addEventListener('resize', onResize)\n return () => {\n window.removeEventListener('resize', onResize)\n }\n }, [setHeight])\n\n const bodyOffset = getOffset(anchor, verticalAnchorOffset)\n\n const handleModalContentClicked: MouseEventHandler = () => {\n modalContentClickedRef.current = true\n }\n\n return (\n <>\n {modalRoot && (process.env.NODE_ENV === 'test' ? isOpenProp : isOpen)\n ? ReactDOM.createPortal(\n <>\n {transition.map(\n ({ item, props, key }) =>\n item && (\n <animated.div\n className={wrapperClassNames}\n style={{\n ...wrapperStyle,\n opacity: props.opacity,\n height,\n minHeight: height\n }}\n key={key}\n ref={ref}\n >\n <animated.div\n ref={dismissOnClickOutside ? outsideClickRef : null}\n className={bodyClassNames}\n style={{ ...props, ...bodyOffset, ...bodyStyle }}\n role='dialog'\n aria-labelledby={titleId}\n aria-describedby={subtitleId}\n onMouseDown={handleModalContentClicked}\n >\n <>\n {/** Begin @deprecated section (moved to ModalHeader and ModalTitle sub-components) */}\n {showTitleHeader && (\n <div className={headerContainerClassNames}>\n {showDismissButton && (\n <div\n className={styles.dismissButton}\n onClick={onClose}\n >\n <IconClose color='subdued' size='s' />\n </div>\n )}\n <div\n id={titleId}\n className={cn(styles.header, titleClassName)}\n >\n {title}\n </div>\n <div\n id={subtitleId}\n className={cn(\n styles.subtitle,\n subtitleClassName\n )}\n >\n {subtitle}\n </div>\n </div>\n )}\n {/** End @deprecated section */}\n <ModalContext.Provider value={modalContextValue}>\n {children}\n </ModalContext.Provider>\n </>\n </animated.div>\n </animated.div>\n )\n )}\n </>,\n modalRoot\n )\n : null}\n </>\n )\n})\n"],"names":["_jsx","_Fragment","_jsxs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../../../src/components/modal/Modal.tsx"],"sourcesContent":["import {\n useEffect,\n useState,\n useCallback,\n useMemo,\n forwardRef,\n MouseEventHandler,\n useRef\n} from 'react'\n\nimport { useTheme } from '@emotion/react'\nimport cn from 'classnames'\nimport { capitalize } from 'lodash'\nimport uniqueId from 'lodash/uniqueId'\nimport ReactDOM from 'react-dom'\n// eslint-disable-next-line no-restricted-imports -- TODO: migrate to @react-spring/web\nimport { animated, useTransition } from 'react-spring'\nimport { useEffectOnce } from 'react-use'\n\nimport { ModalState } from '~harmony/utils/modalState'\n\nimport { useHotkeys, useScrollLock, useClickOutside } from '../../hooks'\nimport { IconClose } from '../../icons'\n\nimport styles from './Modal.module.css'\nimport { ModalContext } from './ModalContext'\nimport { findAncestor } from './findAncestor'\nimport { useModalScrollCount } from './hooks'\nimport { ModalProps, Anchor } from './types'\n\nconst rootContainer = 'modalRootContainer'\nconst rootId = 'modalRoot'\nconst bgId = 'bgModal'\nconst wrapperClass = 'modalWrapper'\n\nconst anchorStyleMap = {\n [Anchor.TOP]: styles.top,\n [Anchor.CENTER]: styles.center,\n [Anchor.BOTTOM]: styles.bottom\n}\n\nconst anchorPropertyMap = {\n [Anchor.TOP]: 'marginTop',\n [Anchor.CENTER]: 'marginTop',\n [Anchor.BOTTOM]: 'marginBottom'\n}\n\nconst getOffset = (anchor: Anchor, verticalAnchorOffset: number) => {\n return { [anchorPropertyMap[anchor]]: verticalAnchorOffset }\n}\n\nconst useModalRoot = (id: string, isOpen: boolean, zIndex?: number) => {\n const [modalRoot, setModalRoot] = useState<HTMLElement | null>(null)\n const [modalBg, setModalBg] = useState<HTMLElement | null>(null)\n\n useEffect(() => {\n const uniqueRootId = `${id}-${rootId}`\n const uniqueBgId = `${id}-${bgId}`\n const uniqueRootContainerId = `${id}-${rootContainer}`\n let el = document.getElementById(uniqueRootId)\n let bgEl = document.getElementById(uniqueBgId)\n let container = document.getElementById(uniqueRootContainerId)\n\n if (!isOpen) {\n if (bgEl) {\n document.body.removeChild(bgEl)\n }\n if (el && container) {\n container.removeChild(el)\n }\n\n if (container) {\n document.body.removeChild(container)\n }\n\n return\n }\n\n if (!bgEl) {\n bgEl = document.createElement('div')\n bgEl.id = uniqueBgId\n bgEl.classList.add(bgId)\n document.body.appendChild(bgEl)\n }\n\n if (!container) {\n container = document.createElement('div')\n container.id = uniqueRootContainerId\n container.classList.add(rootContainer)\n document.body.appendChild(container)\n }\n\n if (!el) {\n el = document.createElement('div')\n el.id = uniqueRootId\n el.classList.add(rootId)\n container.appendChild(el)\n }\n\n if (zIndex) {\n container.style.zIndex = `${zIndex}`\n el.style.zIndex = `${zIndex}`\n bgEl.style.zIndex = `${zIndex - 1}`\n }\n\n setModalRoot(el)\n setModalBg(bgEl)\n }, [id, zIndex, isOpen])\n\n return [modalRoot, modalBg]\n}\n\nexport const Modal = forwardRef<HTMLDivElement, ModalProps>(function Modal(\n {\n 'aria-describedby': ariaDescribedbyProp,\n 'aria-labelledby': ariaLabelledbyProp,\n modalKey,\n children,\n onClose,\n onClosed,\n isOpen: isOpenProp,\n wrapperClassName,\n bodyClassName,\n titleClassName,\n subtitleClassName,\n headerContainerClassName,\n anchor = Anchor.CENTER,\n subtitle,\n verticalAnchorOffset = 0,\n horizontalPadding = 8,\n contentHorizontalPadding = 0,\n allowScroll = false,\n title = '',\n showTitleHeader = false,\n dismissOnClickOutside = true,\n showDismissButton = false,\n zIndex,\n size\n },\n ref\n) {\n useEffectOnce(() => {\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'development'\n ) {\n if (\n subtitle ||\n title ||\n showTitleHeader ||\n titleClassName ||\n subtitleClassName ||\n headerContainerClassName ||\n showDismissButton\n ) {\n console.warn(\n 'Header and title-related props of `Modal` have been deprecated. Use the `ModalHeader` sub-component instead.'\n )\n }\n\n if (allowScroll !== undefined) {\n console.warn('`allowScroll` prop of `Modal` has been deprecated.')\n }\n }\n })\n\n const [modalState, setModalState] = useState<ModalState>('closed')\n const isOpen = modalState !== 'closed'\n const isDoneOpening = modalState === 'open'\n const { spring } = useTheme()\n const id = useMemo(() => modalKey || uniqueId('modal-'), [modalKey])\n const titleId = ariaLabelledbyProp || `${id}-title`\n const subtitleId = ariaDescribedbyProp || `${id}-subtitle`\n const modalContextValue = useMemo(() => {\n return { titleId, subtitleId, onClose, isDoneOpening }\n }, [titleId, subtitleId, onClose, isDoneOpening])\n\n const onTouchMove = useCallback(\n (e: any) => {\n !allowScroll && e.preventDefault()\n },\n [allowScroll]\n )\n\n const [modalRoot, bgModal] = useModalRoot(id, isOpen, zIndex)\n const { incrementScrollCount, decrementScrollCount } = useModalScrollCount()\n useScrollLock(isOpen, incrementScrollCount, decrementScrollCount)\n\n useEffect(() => {\n if (modalState === 'closed' && isOpenProp) {\n setModalState('opening')\n } else if (modalState === 'open' && !isOpenProp) {\n setModalState('closing')\n }\n }, [isOpenProp, modalState])\n\n useEffect(() => {\n if (isOpen) {\n if (bgModal) {\n bgModal.classList.add('bgModalVisible')\n }\n\n // Need to prevent safari iOS bounce\n // overscroll effect by intercepting\n // touchmove events.\n if (modalRoot) modalRoot.addEventListener('touchmove', onTouchMove)\n return () => {\n if (bgModal) bgModal.classList.remove('bgModalVisible')\n }\n }\n if (bgModal) bgModal.classList.remove('bgModalVisible')\n if (modalRoot) modalRoot.removeEventListener('touchmove', onTouchMove)\n return () => {}\n }, [isOpen, bgModal, onTouchMove, modalRoot])\n\n const transition = useTransition(isOpenProp, null, {\n from: { transform: 'scale(0)', opacity: 0 },\n // @ts-ignore function is a valid value for enter, but the types don't acknowledge that\n enter:\n () =>\n async (\n next: (props: { transform: string; opacity: number }) => Promise<void>\n ) => {\n await next({ transform: 'scale(1)', opacity: 1 })\n },\n leave: { transform: 'scale(0)', opacity: 0 },\n unique: true,\n config: spring.standard,\n onDestroyed: (isDestroyed) => {\n setModalState(isDestroyed ? 'closed' : 'open')\n if (isDestroyed) {\n onClosed?.()\n }\n }\n })\n\n const modalContentClickedRef = useRef<boolean>(false)\n const outsideClickRef = useClickOutside(\n onClose,\n isOpen,\n // Check to see if the click outside is not another modal wrapper.\n // If it is, that means we have a nested modal situation and shouldn't\n // dismiss \"this\" modal. We let the useClickOutside in \"that\" modal to\n // dismiss it.\n (e: EventTarget) => {\n // Only close if we're open.\n // Closing when we're not open can cause a race condition when opened\n // via a click since this handler exists prior to visibility,\n // causing the modal to open and close immediately\n if (\n !isOpen ||\n modalContentClickedRef?.current ||\n !dismissOnClickOutside\n ) {\n modalContentClickedRef.current = false\n return true\n }\n if (e instanceof Element) {\n const modalElement = findAncestor(e, `.${wrapperClass}`)\n if (!modalElement) {\n return false\n }\n const isModalWrapper = modalElement.classList.contains(wrapperClass)\n const isThisModalWrapper = modalElement.classList.contains(\n `${wrapperClass}-${id}`\n )\n return isModalWrapper && !isThisModalWrapper\n }\n return false\n }\n )\n\n const handleEscape = useCallback(() => {\n if (isOpen) onClose()\n }, [isOpen, onClose])\n\n useHotkeys({ 27 /* escape */: handleEscape })\n\n const wrapperClassNames = cn(\n styles.wrapper,\n anchorStyleMap[anchor],\n {\n [wrapperClassName!]: !!wrapperClassName\n },\n wrapperClass,\n // Add a unique id class name to detect whether, if we're using\n // click outside to dismiss the modal, the correct \"outside\" is being clicked.\n `${wrapperClass}-${id}`\n )\n\n const wrapperStyle = {\n paddingLeft: `${horizontalPadding}px`,\n paddingRight: `${horizontalPadding}px`\n }\n\n /** Begin @deprecated section (favor using ModalContent sub-component) */\n const bodyStyle = {\n paddingLeft: `${contentHorizontalPadding}px`,\n paddingRight: `${contentHorizontalPadding}px`\n }\n /** End @deprecated section */\n\n const bodyClassNames = cn(styles.body, {\n [styles.noScroll!]: !allowScroll,\n [styles[`size${capitalize(size)}`]]: size,\n [bodyClassName!]: !!bodyClassName\n })\n\n const headerContainerClassNames = cn(styles.headerContainer, {\n [headerContainerClassName!]: !!headerContainerClassName\n })\n\n const [height, setHeight] = useState(\n typeof window !== 'undefined' ? window.innerHeight : 0\n )\n\n useEffect(() => {\n const onResize = () => {\n setHeight(window.innerHeight)\n }\n window.addEventListener('resize', onResize)\n return () => {\n window.removeEventListener('resize', onResize)\n }\n }, [setHeight])\n\n const bodyOffset = getOffset(anchor, verticalAnchorOffset)\n\n const handleModalContentClicked: MouseEventHandler = () => {\n modalContentClickedRef.current = true\n }\n\n return (\n <>\n {modalRoot && (process.env.NODE_ENV === 'test' ? isOpenProp : isOpen)\n ? ReactDOM.createPortal(\n <>\n {transition.map(\n ({ item, props, key }) =>\n item && (\n <animated.div\n className={wrapperClassNames}\n style={{\n ...wrapperStyle,\n opacity: props.opacity,\n height,\n minHeight: height\n }}\n key={key}\n ref={ref}\n >\n <animated.div\n ref={dismissOnClickOutside ? outsideClickRef : null}\n className={bodyClassNames}\n style={{ ...props, ...bodyOffset, ...bodyStyle }}\n role='dialog'\n aria-labelledby={titleId}\n aria-describedby={subtitleId}\n onMouseDown={handleModalContentClicked}\n >\n <>\n {/** Begin @deprecated section (moved to ModalHeader and ModalTitle sub-components) */}\n {showTitleHeader && (\n <div className={headerContainerClassNames}>\n {showDismissButton && (\n <div\n className={styles.dismissButton}\n onClick={onClose}\n >\n <IconClose color='subdued' size='s' />\n </div>\n )}\n <div\n id={titleId}\n className={cn(styles.header, titleClassName)}\n >\n {title}\n </div>\n <div\n id={subtitleId}\n className={cn(\n styles.subtitle,\n subtitleClassName\n )}\n >\n {subtitle}\n </div>\n </div>\n )}\n {/** End @deprecated section */}\n <ModalContext.Provider value={modalContextValue}>\n {children}\n </ModalContext.Provider>\n </>\n </animated.div>\n </animated.div>\n )\n )}\n </>,\n modalRoot\n )\n : null}\n </>\n )\n})\n"],"names":["_jsx","_Fragment","_jsxs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalContentPages.d.ts","sourceRoot":"","sources":["../../../src/components/modal/ModalContentPages.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAY,MAAM,OAAO,CAAA;AAUrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAyB3C,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;IACjC,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC,GAAG,iBAAiB,CAAA;AAErB,eAAO,MAAM,iBAAiB,kGAO3B,sBAAsB,
|
|
1
|
+
{"version":3,"file":"ModalContentPages.d.ts","sourceRoot":"","sources":["../../../src/components/modal/ModalContentPages.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAY,MAAM,OAAO,CAAA;AAUrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAyB3C,MAAM,MAAM,sBAAsB,GAAG;IACnC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;IACjC,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC,GAAG,iBAAiB,CAAA;AAErB,eAAO,MAAM,iBAAiB,kGAO3B,sBAAsB,qDAgExB,CAAA"}
|
|
@@ -45,9 +45,7 @@ var ModalContentPages = function (_a) {
|
|
|
45
45
|
return (jsx("div", __assign({ className: styles.transitionContainer, style: {
|
|
46
46
|
width: width ? "".concat(width, "px") : '100%',
|
|
47
47
|
height: computedHeight ? "".concat(computedHeight, "px") : '100%'
|
|
48
|
-
} }, { children: jsx(Transition, __assign({ items: currentPage, initial: transitions.initial, from: transitions.from, enter: transitions.enter, leave: transitions.leave, unique: true }, { children: function (item) { return function (style) {
|
|
49
|
-
return (jsx(animated.div, __assign({ style: __assign({}, style), className: styles.pageContainer }, { children: jsx(ModalContent, __assign({ className: cn(styles.modalContent, modalContentClassName) }, otherModalContentProps, { children: jsx("div", __assign({ className: cn(styles.nestedModalContent, contentClassName), ref: contentRef }, { children: Children.toArray(children)[item] })) })) })));
|
|
50
|
-
}; } })) })));
|
|
48
|
+
} }, { children: jsx(Transition, __assign({ items: currentPage, initial: transitions.initial, from: transitions.from, enter: transitions.enter, leave: transitions.leave, unique: true }, { children: function (item) { return function (style) { return (jsx(animated.div, __assign({ style: __assign({}, style), className: styles.pageContainer }, { children: jsx(ModalContent, __assign({ className: cn(styles.modalContent, modalContentClassName) }, otherModalContentProps, { children: jsx("div", __assign({ className: cn(styles.nestedModalContent, contentClassName), ref: contentRef }, { children: Children.toArray(children)[item] })) })) }))); }; } })) })));
|
|
51
49
|
};
|
|
52
50
|
|
|
53
51
|
export { ModalContentPages };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalContentPages.js","sources":["../../../src/components/modal/ModalContentPages.tsx"],"sourcesContent":["import { Children, ReactNode, useState } from 'react'\n\nimport { ResizeObserver } from '@juggle/resize-observer'\nimport cn from 'classnames'\n// eslint-disable-next-line no-restricted-imports -- TODO: migrate to @react-spring/web\nimport { animated, Transition } from 'react-spring/renderprops.cjs'\nimport useMeasure from 'react-use-measure'\n\nimport { ModalContent } from './ModalContent'\nimport styles from './ModalContentPages.module.css'\nimport { ModalContentProps } from './types'\n\nconst INNER_HEIGHT_PADDING = 100\n\nconst defaultTransitions = {\n initial: { opacity: 1, transform: 'translate3d(0%, 0, 0)' },\n enter: { opacity: 1, transform: 'translate3d(0%, 0 ,0)' }\n}\nconst getSwipeTransitions = (direction: 'back' | 'forward') =>\n direction === 'forward'\n ? {\n ...defaultTransitions,\n // Next screen enters from right\n from: { opacity: 0, transform: 'translate3d(100%, 0, 0)' },\n // Current screen leaves on left\n leave: { opacity: 0, transform: 'translate3d(-100%, 0, 0)' }\n }\n : {\n ...defaultTransitions,\n // Previous screen enters from left\n from: { opacity: 0, transform: 'translate3d(-100%, 0, 0)' },\n // Current screen leaves on right\n leave: { opacity: 0, transform: 'translate3d(100%, 0, 0)' }\n }\n\nexport type ModalContentPagesProps = {\n currentPage: number\n width?: number\n contentClassName?: string\n verticalPadding?: number\n children: ReactNode | ReactNode[]\n /** Allows override of transition direction for next page change */\n transitionDirection?: 'back' | 'forward'\n} & ModalContentProps\n\nexport const ModalContentPages = ({\n currentPage,\n width,\n contentClassName,\n children,\n transitionDirection,\n ...modalContentProps\n}: ModalContentPagesProps) => {\n const [lastPage, setLastPage] = useState(0)\n const [transitions, setTransitions] = useState<\n ReturnType<typeof getSwipeTransitions>\n >(getSwipeTransitions('forward'))\n const [contentRef, { height }] = useMeasure({\n offsetSize: true,\n polyfill: ResizeObserver\n })\n\n // A bit of a hack, but instead of resizing the height to the result from\n // useMeasure, clamp it to the window height minus a padding.\n // This makes it so that when inside a \"Drawer,\" safe areas are respected.\n const computedHeight = Math.min(\n height,\n window.innerHeight - INNER_HEIGHT_PADDING\n )\n\n if (lastPage !== currentPage) {\n setTransitions(\n getSwipeTransitions(\n transitionDirection ?? (currentPage > lastPage ? 'forward' : 'back')\n )\n )\n setLastPage(currentPage)\n }\n\n const { className: modalContentClassName, ...otherModalContentProps } =\n modalContentProps\n\n return (\n <div\n className={styles.transitionContainer}\n style={{\n width: width ? `${width}px` : '100%',\n height: computedHeight ? `${computedHeight}px` : '100%'\n }}\n >\n <Transition\n items={currentPage}\n initial={transitions.initial}\n from={transitions.from}\n enter={transitions.enter}\n leave={transitions.leave}\n unique={true}\n >\n {(item) => (style)
|
|
1
|
+
{"version":3,"file":"ModalContentPages.js","sources":["../../../src/components/modal/ModalContentPages.tsx"],"sourcesContent":["import { Children, ReactNode, useState } from 'react'\n\nimport { ResizeObserver } from '@juggle/resize-observer'\nimport cn from 'classnames'\n// eslint-disable-next-line no-restricted-imports -- TODO: migrate to @react-spring/web\nimport { animated, Transition } from 'react-spring/renderprops.cjs'\nimport useMeasure from 'react-use-measure'\n\nimport { ModalContent } from './ModalContent'\nimport styles from './ModalContentPages.module.css'\nimport { ModalContentProps } from './types'\n\nconst INNER_HEIGHT_PADDING = 100\n\nconst defaultTransitions = {\n initial: { opacity: 1, transform: 'translate3d(0%, 0, 0)' },\n enter: { opacity: 1, transform: 'translate3d(0%, 0 ,0)' }\n}\nconst getSwipeTransitions = (direction: 'back' | 'forward') =>\n direction === 'forward'\n ? {\n ...defaultTransitions,\n // Next screen enters from right\n from: { opacity: 0, transform: 'translate3d(100%, 0, 0)' },\n // Current screen leaves on left\n leave: { opacity: 0, transform: 'translate3d(-100%, 0, 0)' }\n }\n : {\n ...defaultTransitions,\n // Previous screen enters from left\n from: { opacity: 0, transform: 'translate3d(-100%, 0, 0)' },\n // Current screen leaves on right\n leave: { opacity: 0, transform: 'translate3d(100%, 0, 0)' }\n }\n\nexport type ModalContentPagesProps = {\n currentPage: number\n width?: number\n contentClassName?: string\n verticalPadding?: number\n children: ReactNode | ReactNode[]\n /** Allows override of transition direction for next page change */\n transitionDirection?: 'back' | 'forward'\n} & ModalContentProps\n\nexport const ModalContentPages = ({\n currentPage,\n width,\n contentClassName,\n children,\n transitionDirection,\n ...modalContentProps\n}: ModalContentPagesProps) => {\n const [lastPage, setLastPage] = useState(0)\n const [transitions, setTransitions] = useState<\n ReturnType<typeof getSwipeTransitions>\n >(getSwipeTransitions('forward'))\n const [contentRef, { height }] = useMeasure({\n offsetSize: true,\n polyfill: ResizeObserver\n })\n\n // A bit of a hack, but instead of resizing the height to the result from\n // useMeasure, clamp it to the window height minus a padding.\n // This makes it so that when inside a \"Drawer,\" safe areas are respected.\n const computedHeight = Math.min(\n height,\n window.innerHeight - INNER_HEIGHT_PADDING\n )\n\n if (lastPage !== currentPage) {\n setTransitions(\n getSwipeTransitions(\n transitionDirection ?? (currentPage > lastPage ? 'forward' : 'back')\n )\n )\n setLastPage(currentPage)\n }\n\n const { className: modalContentClassName, ...otherModalContentProps } =\n modalContentProps\n\n return (\n <div\n className={styles.transitionContainer}\n style={{\n width: width ? `${width}px` : '100%',\n height: computedHeight ? `${computedHeight}px` : '100%'\n }}\n >\n <Transition\n items={currentPage}\n initial={transitions.initial}\n from={transitions.from}\n enter={transitions.enter}\n leave={transitions.leave}\n unique={true}\n >\n {(item) => (style) => (\n <animated.div style={{ ...style }} className={styles.pageContainer}>\n <ModalContent\n className={cn(styles.modalContent, modalContentClassName)}\n {...otherModalContentProps}\n >\n <div\n className={cn(styles.nestedModalContent, contentClassName)}\n ref={contentRef}\n >\n {Children.toArray(children)[item]}\n </div>\n </ModalContent>\n </animated.div>\n )}\n </Transition>\n </div>\n )\n}\n"],"names":["_jsx"],"mappings":"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"}
|
|
@@ -4,5 +4,5 @@ export { ModalContentPages } from './ModalContentPages';
|
|
|
4
4
|
export { ModalContentText } from './ModalContentText';
|
|
5
5
|
export { ModalHeader, ModalTitle } from './ModalHeader';
|
|
6
6
|
export { ModalFooter } from './ModalFooter';
|
|
7
|
-
export { ModalProps, Anchor, ModalContentProps, ModalHeaderProps, ModalTitleProps, ModalFooterProps } from './types';
|
|
7
|
+
export { type ModalProps, Anchor, type ModalContentProps, type ModalHeaderProps, type ModalTitleProps, type ModalFooterProps } from './types';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EACL,UAAU,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC3C,OAAO,EACL,KAAK,UAAU,EACf,MAAM,EACN,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,SAAS,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MusicBadge.d.ts","sourceRoot":"","sources":["../../../src/components/music-badge/MusicBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAA;AAKhD,OAAO,KAAK,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"MusicBadge.d.ts","sourceRoot":"","sources":["../../../src/components/music-badge/MusicBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,OAAO,CAAA;AAKhD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgC;AAC7D,OAAO,EAAE,aAAa,EAAE,0BAA4B;AAKpD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,QAAQ,CAAA;AACpD,MAAM,MAAM,cAAc,GAAG,GAAG,GAAG,GAAG,CAAA;AAEtC,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAA;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAA;CACtB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;AAEnC,eAAO,MAAM,UAAU,UAAW,eAAe,qDA0DhD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MusicBadge.js","sources":["../../../src/components/music-badge/MusicBadge.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef } from 'react'\n\nimport { useTheme } from '@emotion/react'\nimport Color from 'color'\n\nimport type { IconComponent } from 'components/icon'\nimport { SpecialColors } from 'foundations'\n\nimport { Flex } from '../layout/Flex'\nimport { Text } from '../text/Text'\n\nexport type MusicBadgeVariant = 'default' | 'accent'\nexport type MusicBadgeSize = 's' | 'm'\n\nexport type MusicBadgeProps = {\n /**\n * The type of the MusicBadge\n */\n variant?: MusicBadgeVariant\n /**\n * The size of the MusicBadge\n */\n size?: 's' | 'm'\n /**\n * The icon to display in the left of the MusicBadge\n */\n icon?: IconComponent\n /**\n * Override the colors of the MusicBadge\n */\n color?: SpecialColors\n} & ComponentPropsWithoutRef<'div'>\n\nexport const MusicBadge = (props: MusicBadgeProps) => {\n const {\n variant = 'default',\n size = 'm',\n icon: Icon,\n color: colorProp,\n children\n } = props\n const { color } = useTheme()\n\n const gap = size === 'm' ? 's' : 'xs'\n const height = size === 'm' ? '2xl' : 'xl'\n\n const backgroundColor = colorProp\n ? color.special[colorProp]\n : variant === 'default'\n
|
|
1
|
+
{"version":3,"file":"MusicBadge.js","sources":["../../../src/components/music-badge/MusicBadge.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef } from 'react'\n\nimport { useTheme } from '@emotion/react'\nimport Color from 'color'\n\nimport type { IconComponent } from '~harmony/components/icon'\nimport { SpecialColors } from '~harmony/foundations'\n\nimport { Flex } from '../layout/Flex'\nimport { Text } from '../text/Text'\n\nexport type MusicBadgeVariant = 'default' | 'accent'\nexport type MusicBadgeSize = 's' | 'm'\n\nexport type MusicBadgeProps = {\n /**\n * The type of the MusicBadge\n */\n variant?: MusicBadgeVariant\n /**\n * The size of the MusicBadge\n */\n size?: 's' | 'm'\n /**\n * The icon to display in the left of the MusicBadge\n */\n icon?: IconComponent\n /**\n * Override the colors of the MusicBadge\n */\n color?: SpecialColors\n} & ComponentPropsWithoutRef<'div'>\n\nexport const MusicBadge = (props: MusicBadgeProps) => {\n const {\n variant = 'default',\n size = 'm',\n icon: Icon,\n color: colorProp,\n children\n } = props\n const { color } = useTheme()\n\n const gap = size === 'm' ? 's' : 'xs'\n const height = size === 'm' ? '2xl' : 'xl'\n\n const backgroundColor = colorProp\n ? color.special[colorProp]\n : variant === 'default'\n ? color.background.default\n : color.background.accent\n const textColor = colorProp\n ? color.special[colorProp]\n : variant === 'default'\n ? color.text.default\n : color.text.accent\n const iconColor = colorProp\n ? color.special[colorProp]\n : variant === 'default'\n ? color.icon.default\n : color.icon.accent\n const borderColor = colorProp\n ? Color(color.special[colorProp]).fade(0.5).toString()\n : variant === 'default'\n ? color.border.strong\n : color.border.accent\n\n return (\n <Flex\n alignItems='center'\n justifyContent='center'\n borderRadius='s'\n border='strong'\n gap={gap}\n h={height}\n ph={size}\n css={{\n backgroundColor: Color(backgroundColor).fade(0.92).toString(),\n borderColor\n }}\n >\n {Icon ? <Icon size={size} fill={iconColor} /> : null}\n <Text\n variant='label'\n size={size}\n css={{ color: textColor, whiteSpace: 'nowrap' }}\n >\n {children}\n </Text>\n </Flex>\n )\n}\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAiCO,IAAM,UAAU,GAAG,UAAC,KAAsB,EAAA;AAE7C,IAAA,IAAA,EAKE,GAAA,KAAK,CALY,OAAA,EAAnB,OAAO,GAAG,EAAA,KAAA,KAAA,CAAA,GAAA,SAAS,GAAA,EAAA,EACnB,EAIE,GAAA,KAAK,CAJG,IAAA,EAAV,IAAI,GAAG,EAAA,KAAA,KAAA,CAAA,GAAA,GAAG,GAAA,EAAA,EACJ,IAAI,GAGR,KAAK,CAAA,IAHG,EACH,SAAS,GAEd,KAAK,CAAA,KAFS,EAChB,QAAQ,GACN,KAAK,SADC,CACD;AACD,IAAA,IAAA,KAAK,GAAK,QAAQ,EAAE,MAAf,CAAe;AAE5B,IAAA,IAAM,GAAG,GAAG,IAAI,KAAK,GAAG,GAAG,GAAG,GAAG,IAAI,CAAA;AACrC,IAAA,IAAM,MAAM,GAAG,IAAI,KAAK,GAAG,GAAG,KAAK,GAAG,IAAI,CAAA;IAE1C,IAAM,eAAe,GAAG,SAAS;AAC/B,UAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;UACxB,OAAO,KAAK,SAAS;AACrB,cAAE,KAAK,CAAC,UAAU,CAAC,OAAO;AAC1B,cAAE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAA;IAC7B,IAAM,SAAS,GAAG,SAAS;AACzB,UAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;UACxB,OAAO,KAAK,SAAS;AACrB,cAAE,KAAK,CAAC,IAAI,CAAC,OAAO;AACpB,cAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;IACvB,IAAM,SAAS,GAAG,SAAS;AACzB,UAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;UACxB,OAAO,KAAK,SAAS;AACrB,cAAE,KAAK,CAAC,IAAI,CAAC,OAAO;AACpB,cAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;IACvB,IAAM,WAAW,GAAG,SAAS;AAC3B,UAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;UACpD,OAAO,KAAK,SAAS;AACrB,cAAE,KAAK,CAAC,MAAM,CAAC,MAAM;AACrB,cAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAA;AAEzB,IAAA,QACEA,IAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EACH,UAAU,EAAC,QAAQ,EACnB,cAAc,EAAC,QAAQ,EACvB,YAAY,EAAC,GAAG,EAChB,MAAM,EAAC,QAAQ,EACf,GAAG,EAAE,GAAG,EACR,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,IAAI,EACR,GAAG,EAAE;AACH,YAAA,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;AAC7D,YAAA,WAAW,EAAA,WAAA;SACZ,EAEA,EAAA,EAAA,QAAA,EAAA,CAAA,IAAI,GAAGC,IAAC,IAAI,EAAA,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAI,CAAA,GAAG,IAAI,EACpDA,GAAA,CAAC,IAAI,EAAA,QAAA,CAAA,EACH,OAAO,EAAC,OAAO,EACf,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAE9C,QAAQ,EAAA,CAAA,CACJ,CACF,EAAA,CAAA,CAAA,EACR;AACH;;;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { NavItemProps } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* A navigation item component, typically used in sidebars or navigation menus.
|
|
4
|
+
* Supports default, hover, and selected states, as well as optional left and right icons.
|
|
5
|
+
*/
|
|
6
|
+
export declare const NavItem: ({ children, leftIcon: LeftIcon, rightIcon: RightIcon, isSelected, onClick, textSize, hasNotification, leftOverride, variant, isChild, ...props }: NavItemProps) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=NavItem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavItem.d.ts","sourceRoot":"","sources":["../../../src/components/nav-item/NavItem.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAE3C;;;GAGG;AACH,eAAO,MAAM,OAAO,qJAYjB,YAAY,qDA2Fd,CAAA"}
|