From a5d2bdc0fea7aa48cf4c2cb6474dbf157750579f Mon Sep 17 00:00:00 2001 From: ChefJoJo <94336009+chef-jojo@users.noreply.github.com> Date: Tue, 1 Mar 2022 18:42:00 +0800 Subject: [PATCH] feat: Monorepo turbo part 1 (#3360) ### What changes Only add uikit and eslint into packages. Use tsconfig path to map uikit, consume it by src. FE code as workspace root now. Can be changed follow by https://github.com/pancakeswap/pancake-frontend/pull/3359 later ### Note Turbo doesn't do anything at this moment. Keep Lerna only use for packages version and changelog --- .eslintrc | 8 +- .gitignore | 15 +- jest.config.js | 5 +- lerna.json | 13 + package.json | 7 +- packages/.prettierrc | 4 + packages/eslint-config/CHANGELOG.md | 33 + packages/eslint-config/README.md | 15 + packages/eslint-config/lib/index.js | 58 + packages/eslint-config/package.json | 30 + packages/uikit/.storybook/main.js | 14 + packages/uikit/.storybook/preview-head.html | 1 + packages/uikit/.storybook/preview.js | 33 + packages/uikit/CHANGELOG.md | 1190 +++ packages/uikit/README.md | 43 + packages/uikit/babel.config.js | 4 + packages/uikit/jest.config.js | 9 + packages/uikit/package.json | 74 + packages/uikit/rollup.config.js | 12 + packages/uikit/src/ResetCSS.tsx | 117 + .../src/__tests__/components/alert.test.tsx | 102 + .../components/balanceinput.test.tsx | 608 ++ .../__tests__/components/breadcrumbs.test.tsx | 37 + .../src/__tests__/components/button.test.tsx | 73 + .../__tests__/components/buttonmenu.test.tsx | 128 + .../src/__tests__/components/card.test.tsx | 72 + .../__tests__/components/checkbox.test.tsx | 79 + .../__tests__/components/dropdown.test.tsx | 56 + .../components/fallingbunnies.test.tsx | 127 + .../src/__tests__/components/flex.test.tsx | 23 + .../src/__tests__/components/heading.test.tsx | 36 + .../src/__tests__/components/input.test.tsx | 61 + .../src/__tests__/components/layouts.test.tsx | 99 + .../src/__tests__/components/link.test.tsx | 109 + .../components/notificationdot.test.tsx | 45 + .../src/__tests__/components/overlay.test.tsx | 25 + .../components/pancaketoggle.test.tsx | 397 + .../__tests__/components/progress.test.tsx | 44 + .../src/__tests__/components/radio.test.tsx | 70 + .../__tests__/components/skeleton.test.tsx | 101 + .../src/__tests__/components/spinner.test.tsx | 146 + .../src/__tests__/components/svg.test.tsx | 36 + .../src/__tests__/components/tabmenu.test.tsx | 161 + .../src/__tests__/components/tag.test.tsx | 40 + .../src/__tests__/components/text.test.tsx | 24 + .../src/__tests__/components/toggle.test.tsx | 161 + .../__tests__/components/tokenimage.test.tsx | 58 + .../widgets/__snapshots__/menu.test.tsx.snap | 3107 ++++++ .../uikit/src/__tests__/widgets/menu.test.tsx | 55 + .../src/__tests__/widgets/modal.test.tsx | 213 + .../__tests__/widgets/walletModal.test.tsx | 671 ++ packages/uikit/src/components/Alert/Alert.tsx | 100 + .../src/components/Alert/index.stories.tsx | 67 + packages/uikit/src/components/Alert/index.tsx | 3 + packages/uikit/src/components/Alert/theme.ts | 10 + packages/uikit/src/components/Alert/types.ts | 21 + .../components/BalanceInput/BalanceInput.tsx | 62 + .../src/components/BalanceInput/TextField.tsx | 26 + .../components/BalanceInput/index.stories.tsx | 167 + .../src/components/BalanceInput/index.tsx | 3 + .../src/components/BalanceInput/styles.tsx | 43 + .../src/components/BalanceInput/types.ts | 24 + .../src/components/BaseMenu/BaseMenu.tsx | 82 + .../src/components/BaseMenu/InlineMenu.tsx | 15 + .../uikit/src/components/BaseMenu/SubMenu.tsx | 15 + .../src/components/BaseMenu/index.stories.tsx | 110 + .../uikit/src/components/BaseMenu/index.tsx | 5 + .../uikit/src/components/BaseMenu/styles.tsx | 39 + .../uikit/src/components/BaseMenu/types.ts | 14 + .../components/BottomDrawer/BottomDrawer.tsx | 54 + .../components/BottomDrawer/index.stories.tsx | 44 + .../src/components/BottomDrawer/index.ts | 2 + .../src/components/BottomDrawer/styles.ts | 40 + .../src/components/BottomNav/BottomNav.tsx | 50 + .../src/components/BottomNav/constants.ts | 3 + .../components/BottomNav/index.stories.tsx | 35 + .../uikit/src/components/BottomNav/index.tsx | 1 + .../uikit/src/components/BottomNav/mock.tsx | 41 + .../uikit/src/components/BottomNav/styles.tsx | 18 + .../uikit/src/components/BottomNav/types.ts | 8 + .../BottomNavItem/BottomNavItem.tsx | 50 + .../BottomNavItem/index.stories.tsx | 29 + .../src/components/BottomNavItem/index.tsx | 1 + .../src/components/BottomNavItem/styles.tsx | 28 + .../src/components/BottomNavItem/types.ts | 7 + packages/uikit/src/components/Box/Box.tsx | 13 + packages/uikit/src/components/Box/Flex.tsx | 11 + packages/uikit/src/components/Box/Grid.tsx | 12 + .../src/components/Box/index.stories.tsx | 58 + packages/uikit/src/components/Box/index.tsx | 4 + packages/uikit/src/components/Box/types.ts | 22 + .../components/Breadcrumbs/Breadcrumbs.tsx | 74 + .../components/Breadcrumbs/index.stories.tsx | 61 + .../src/components/Breadcrumbs/index.tsx | 2 + .../uikit/src/components/Breadcrumbs/types.ts | 5 + .../uikit/src/components/Button/Button.tsx | 51 + .../components/Button/ExpandableButton.tsx | 37 + .../src/components/Button/IconButton.tsx | 11 + .../src/components/Button/StyledButton.tsx | 85 + .../src/components/Button/index.stories.tsx | 161 + .../uikit/src/components/Button/index.tsx | 4 + packages/uikit/src/components/Button/theme.ts | 61 + packages/uikit/src/components/Button/types.ts | 36 + .../src/components/ButtonMenu/ButtonMenu.tsx | 82 + .../components/ButtonMenu/ButtonMenuItem.tsx | 33 + .../components/ButtonMenu/index.stories.tsx | 156 + .../uikit/src/components/ButtonMenu/index.tsx | 3 + .../uikit/src/components/ButtonMenu/types.ts | 17 + .../src/components/CakePrice/CakePrice.tsx | 40 + .../components/CakePrice/index.stories.tsx | 21 + .../uikit/src/components/CakePrice/index.tsx | 2 + packages/uikit/src/components/Card/Card.tsx | 15 + .../uikit/src/components/Card/CardBody.tsx | 14 + .../uikit/src/components/Card/CardFooter.tsx | 15 + .../uikit/src/components/Card/CardHeader.tsx | 19 + .../uikit/src/components/Card/CardRibbon.tsx | 67 + .../uikit/src/components/Card/StyledCard.tsx | 76 + .../src/components/Card/index.stories.tsx | 174 + packages/uikit/src/components/Card/index.tsx | 6 + packages/uikit/src/components/Card/theme.ts | 33 + packages/uikit/src/components/Card/types.ts | 34 + .../src/components/Checkbox/Checkbox.tsx | 71 + .../src/components/Checkbox/index.stories.tsx | 21 + .../uikit/src/components/Checkbox/index.tsx | 2 + .../uikit/src/components/Checkbox/types.ts | 10 + .../src/components/Dropdown/Dropdown.tsx | 55 + .../src/components/Dropdown/index.stories.tsx | 39 + .../uikit/src/components/Dropdown/index.tsx | 2 + .../uikit/src/components/Dropdown/types.ts | 9 + .../components/DropdownMenu/DropdownMenu.tsx | 152 + .../components/DropdownMenu/index.stories.tsx | 23 + .../src/components/DropdownMenu/index.tsx | 2 + .../src/components/DropdownMenu/mock.tsx | 28 + .../src/components/DropdownMenu/styles.tsx | 89 + .../src/components/DropdownMenu/types.ts | 46 + .../FallingBunnies/FallingBunnies.tsx | 83 + .../FallingBunnies/index.stories.tsx | 12 + .../src/components/FallingBunnies/index.tsx | 2 + .../src/components/FallingBunnies/types.ts | 12 + .../Footer/Components/SocialLinks.tsx | 40 + .../uikit/src/components/Footer/Footer.tsx | 108 + .../uikit/src/components/Footer/config.tsx | 176 + .../src/components/Footer/index.stories.tsx | 32 + .../uikit/src/components/Footer/index.tsx | 1 + .../uikit/src/components/Footer/styles.tsx | 57 + packages/uikit/src/components/Footer/types.ts | 18 + .../uikit/src/components/Heading/Heading.tsx | 38 + .../src/components/Heading/index.stories.tsx | 34 + .../uikit/src/components/Heading/index.tsx | 2 + .../uikit/src/components/Heading/types.ts | 23 + .../src/components/Image/BackgroundImage.tsx | 58 + packages/uikit/src/components/Image/Image.tsx | 50 + .../src/components/Image/Placeholder.tsx | 11 + .../src/components/Image/ProfileAvatar.tsx | 20 + .../uikit/src/components/Image/TokenImage.tsx | 18 + .../src/components/Image/TokenPairImage.tsx | 32 + .../uikit/src/components/Image/Wrapper.tsx | 25 + .../src/components/Image/index.stories.tsx | 140 + packages/uikit/src/components/Image/index.ts | 11 + .../uikit/src/components/Image/options.ts | 5 + .../uikit/src/components/Image/styles.tsx | 57 + packages/uikit/src/components/Image/tokens.ts | 1546 +++ packages/uikit/src/components/Image/types.ts | 35 + packages/uikit/src/components/Input/Input.tsx | 71 + .../uikit/src/components/Input/InputGroup.tsx | 66 + .../src/components/Input/index.stories.tsx | 61 + packages/uikit/src/components/Input/index.tsx | 3 + packages/uikit/src/components/Input/types.ts | 23 + .../components/LangSelector/LangSelector.tsx | 53 + .../components/LangSelector/MenuButton.tsx | 14 + .../src/components/LangSelector/types.ts | 5 + .../src/components/Layouts/BaseLayout.tsx | 21 + .../src/components/Layouts/CardsLayout.tsx | 13 + .../src/components/Layouts/index.stories.tsx | 34 + .../uikit/src/components/Layouts/index.tsx | 2 + packages/uikit/src/components/Link/Link.tsx | 25 + .../src/components/Link/LinkExternal.tsx | 15 + .../src/components/Link/index.stories.tsx | 49 + packages/uikit/src/components/Link/index.tsx | 3 + packages/uikit/src/components/Link/types.ts | 6 + .../src/components/MenuItem/MenuItem.tsx | 32 + .../src/components/MenuItem/index.stories.tsx | 29 + .../uikit/src/components/MenuItem/index.tsx | 1 + .../uikit/src/components/MenuItem/styles.tsx | 62 + .../uikit/src/components/MenuItem/types.ts | 16 + .../src/components/MenuItems/MenuItems.tsx | 28 + .../components/MenuItems/index.stories.tsx | 25 + .../uikit/src/components/MenuItems/index.tsx | 1 + .../uikit/src/components/MenuItems/mock.tsx | 31 + .../uikit/src/components/MenuItems/types.ts | 17 + .../uikit/src/components/Message/Message.tsx | 59 + .../src/components/Message/index.stories.tsx | 52 + .../uikit/src/components/Message/index.ts | 2 + .../uikit/src/components/Message/theme.ts | 16 + .../uikit/src/components/Message/types.ts | 15 + .../NotificationDot/NotificationDot.tsx | 30 + .../NotificationDot/index.stories.tsx | 57 + .../src/components/NotificationDot/index.tsx | 2 + .../src/components/NotificationDot/types.ts | 12 + .../uikit/src/components/Overlay/Overlay.tsx | 41 + .../src/components/Overlay/index.stories.tsx | 11 + .../uikit/src/components/Overlay/index.tsx | 2 + .../PancakeToggle/PancakeToggle.tsx | 19 + .../PancakeToggle/StyledPancakeToggle.tsx | 197 + .../PancakeToggle/index.stories.tsx | 27 + .../src/components/PancakeToggle/index.tsx | 2 + .../src/components/PancakeToggle/theme.ts | 12 + .../src/components/PancakeToggle/types.ts | 49 + .../src/components/Progress/Progress.tsx | 45 + .../Progress/ProgressBunnyWrapper.tsx | 12 + .../components/Progress/StyledProgress.tsx | 57 + .../src/components/Progress/index.stories.tsx | 87 + .../uikit/src/components/Progress/index.tsx | 3 + .../uikit/src/components/Progress/themes.ts | 21 + .../uikit/src/components/Progress/types.ts | 22 + packages/uikit/src/components/Radio/Radio.tsx | 78 + .../src/components/Radio/index.stories.tsx | 38 + packages/uikit/src/components/Radio/index.tsx | 2 + packages/uikit/src/components/Radio/theme.ts | 10 + packages/uikit/src/components/Radio/types.ts | 16 + .../src/components/Skeleton/Skeleton.tsx | 66 + .../src/components/Skeleton/index.stories.tsx | 51 + .../uikit/src/components/Skeleton/index.tsx | 2 + .../uikit/src/components/Skeleton/types.ts | 19 + .../uikit/src/components/Slider/Slider.tsx | 70 + .../src/components/Slider/index.stories.tsx | 96 + .../uikit/src/components/Slider/index.tsx | 2 + .../uikit/src/components/Slider/styles.ts | 101 + .../src/components/Slider/svg/bunny-full.svg | 33 + .../src/components/Slider/svg/bunnybutt.svg | 6 + .../components/Slider/svg/bunnyhead-main.svg | 29 + .../components/Slider/svg/bunnyhead-max.svg | 28 + packages/uikit/src/components/Slider/types.ts | 12 + .../uikit/src/components/Spinner/PanIcon.tsx | 68 + .../src/components/Spinner/PancakeIcon.tsx | 32 + .../uikit/src/components/Spinner/Spinner.tsx | 54 + .../src/components/Spinner/index.stories.tsx | 12 + .../uikit/src/components/Spinner/index.tsx | 2 + .../uikit/src/components/Spinner/types.ts | 3 + .../uikit/src/components/Stepper/Step.tsx | 110 + .../uikit/src/components/Stepper/Stepper.tsx | 25 + .../src/components/Stepper/index.stories.tsx | 90 + .../uikit/src/components/Stepper/index.ts | 3 + .../uikit/src/components/Stepper/types.ts | 22 + .../components/SubMenuItems/SubMenuItems.tsx | 37 + .../components/SubMenuItems/index.stories.tsx | 25 + .../src/components/SubMenuItems/index.tsx | 2 + .../src/components/SubMenuItems/mock.tsx | 21 + .../src/components/SubMenuItems/styles.tsx | 19 + .../src/components/SubMenuItems/types.ts | 16 + .../components/Svg/AnimatedIconComponent.tsx | 33 + .../src/components/Svg/IconComponent.tsx | 12 + .../src/components/Svg/Icons/Account.tsx | 20 + .../components/Svg/Icons/AccountFilled.tsx | 16 + .../uikit/src/components/Svg/Icons/Add.tsx | 13 + .../src/components/Svg/Icons/ArrowBack.tsx | 13 + .../src/components/Svg/Icons/ArrowDown.tsx | 13 + .../components/Svg/Icons/ArrowDropDown.tsx | 13 + .../src/components/Svg/Icons/ArrowDropUp.tsx | 13 + .../src/components/Svg/Icons/ArrowFirst.tsx | 14 + .../src/components/Svg/Icons/ArrowForward.tsx | 13 + .../src/components/Svg/Icons/ArrowLast.tsx | 14 + .../src/components/Svg/Icons/ArrowUp.tsx | 13 + .../src/components/Svg/Icons/ArrowUpDown.tsx | 13 + .../src/components/Svg/Icons/AutoRenew.tsx | 13 + .../src/components/Svg/Icons/Binance.tsx | 17 + .../src/components/Svg/Icons/BinanceChain.tsx | 16 + .../uikit/src/components/Svg/Icons/Block.tsx | 13 + .../uikit/src/components/Svg/Icons/Blocto.tsx | 27 + .../components/Svg/Icons/BnbUsdtPairToken.tsx | 38 + .../src/components/Svg/Icons/BscScan.tsx | 17 + .../src/components/Svg/Icons/BunnyCards.tsx | 83 + .../components/Svg/Icons/BunnyPlaceholder.tsx | 75 + .../src/components/Svg/Icons/Calculate.tsx | 18 + .../uikit/src/components/Svg/Icons/Camera.tsx | 16 + .../src/components/Svg/Icons/CardView.tsx | 13 + .../uikit/src/components/Svg/Icons/Cards.tsx | 17 + .../uikit/src/components/Svg/Icons/Chart.tsx | 18 + .../src/components/Svg/Icons/ChartDisable.tsx | 18 + .../src/components/Svg/Icons/Checkmark.tsx | 13 + .../components/Svg/Icons/CheckmarkCircle.tsx | 13 + .../Svg/Icons/CheckmarkCircleFill.tsx | 13 + .../src/components/Svg/Icons/ChevronDown.tsx | 13 + .../src/components/Svg/Icons/ChevronLeft.tsx | 13 + .../src/components/Svg/Icons/ChevronRight.tsx | 13 + .../src/components/Svg/Icons/ChevronUp.tsx | 13 + .../components/Svg/Icons/CircleOutline.tsx | 13 + .../uikit/src/components/Svg/Icons/Close.tsx | 13 + .../uikit/src/components/Svg/Icons/Cog.tsx | 13 + .../uikit/src/components/Svg/Icons/Coin98.tsx | 18 + .../components/Svg/Icons/CoinbaseWallet.tsx | 34 + .../src/components/Svg/Icons/Community.tsx | 13 + .../components/Svg/Icons/CommunityFilled.tsx | 18 + .../uikit/src/components/Svg/Icons/Copy.tsx | 13 + .../uikit/src/components/Svg/Icons/Crown.tsx | 260 + .../src/components/Svg/Icons/Currency.tsx | 18 + .../src/components/Svg/Icons/Discord.tsx | 13 + .../uikit/src/components/Svg/Icons/Earn.tsx | 19 + .../src/components/Svg/Icons/EarnFill.tsx | 18 + .../src/components/Svg/Icons/EarnFilled.tsx | 18 + .../src/components/Svg/Icons/Ellipsis.tsx | 13 + .../uikit/src/components/Svg/Icons/Error.tsx | 13 + .../uikit/src/components/Svg/Icons/Expand.tsx | 13 + .../uikit/src/components/Svg/Icons/Farm.tsx | 24 + .../uikit/src/components/Svg/Icons/Github.tsx | 17 + .../uikit/src/components/Svg/Icons/Groups.tsx | 13 + .../src/components/Svg/Icons/Hamburger.tsx | 13 + .../components/Svg/Icons/HamburgerClose.tsx | 13 + .../uikit/src/components/Svg/Icons/Help.tsx | 13 + .../src/components/Svg/Icons/History.tsx | 13 + .../uikit/src/components/Svg/Icons/Home.tsx | 13 + .../uikit/src/components/Svg/Icons/Ifo.tsx | 13 + .../uikit/src/components/Svg/Icons/Info.tsx | 13 + .../src/components/Svg/Icons/Instagram.tsx | 14 + .../src/components/Svg/Icons/Language.tsx | 13 + .../components/Svg/Icons/LanguageCurrency.tsx | 19 + .../src/components/Svg/Icons/LaurelLeft.tsx | 13 + .../src/components/Svg/Icons/LaurelRight.tsx | 13 + .../src/components/Svg/Icons/LineGraph.tsx | 15 + .../src/components/Svg/Icons/ListView.tsx | 13 + .../uikit/src/components/Svg/Icons/Login.tsx | 13 + .../uikit/src/components/Svg/Icons/Logo.tsx | 31 + .../src/components/Svg/Icons/LogoRound.tsx | 37 + .../src/components/Svg/Icons/LogoWithText.tsx | 40 + .../uikit/src/components/Svg/Icons/Logout.tsx | 13 + .../src/components/Svg/Icons/MathWallet.tsx | 28 + .../src/components/Svg/Icons/MedalBronze.tsx | 61 + .../src/components/Svg/Icons/MedalGold.tsx | 61 + .../src/components/Svg/Icons/MedalPurple.tsx | 61 + .../src/components/Svg/Icons/MedalSilver.tsx | 61 + .../src/components/Svg/Icons/MedalTeal.tsx | 61 + .../src/components/Svg/Icons/Metamask.tsx | 74 + .../uikit/src/components/Svg/Icons/Minus.tsx | 13 + .../uikit/src/components/Svg/Icons/Moon.tsx | 17 + .../uikit/src/components/Svg/Icons/More.tsx | 13 + .../components/Svg/Icons/MoreHorizontal.tsx | 13 + .../src/components/Svg/Icons/MoreVertical.tsx | 13 + .../uikit/src/components/Svg/Icons/Nft.tsx | 11 + .../src/components/Svg/Icons/NftFill.tsx | 13 + .../src/components/Svg/Icons/NftFilled.tsx | 11 + .../components/Svg/Icons/NoProfileAvatar.tsx | 34 + .../src/components/Svg/Icons/OpenNew.tsx | 13 + .../src/components/Svg/Icons/PancakeRound.tsx | 118 + .../src/components/Svg/Icons/Pancakes.tsx | 113 + .../uikit/src/components/Svg/Icons/Pencil.tsx | 13 + .../Svg/Icons/PlayCircleOutline.tsx | 13 + .../src/components/Svg/Icons/PocketWatch.tsx | 104 + .../uikit/src/components/Svg/Icons/Pool.tsx | 18 + .../src/components/Svg/Icons/Predictions.tsx | 18 + .../src/components/Svg/Icons/PresentCheck.tsx | 63 + .../src/components/Svg/Icons/PresentNone.tsx | 49 + .../src/components/Svg/Icons/PresentWon.tsx | 109 + .../uikit/src/components/Svg/Icons/Prize.tsx | 13 + .../components/Svg/Icons/ProgressBunny.tsx | 20 + .../src/components/Svg/Icons/Proposal.tsx | 13 + .../uikit/src/components/Svg/Icons/Reddit.tsx | 15 + .../src/components/Svg/Icons/Refresh.tsx | 13 + .../uikit/src/components/Svg/Icons/Remove.tsx | 13 + .../src/components/Svg/Icons/Resources.tsx | 21 + .../components/Svg/Icons/ResourcesFilled.tsx | 15 + .../src/components/Svg/Icons/SafePal.tsx | 28 + .../uikit/src/components/Svg/Icons/Search.tsx | 13 + .../uikit/src/components/Svg/Icons/Sell.tsx | 11 + .../uikit/src/components/Svg/Icons/Share.tsx | 13 + .../uikit/src/components/Svg/Icons/Shrink.tsx | 13 + .../src/components/Svg/Icons/SmallDot.tsx | 16 + .../components/Svg/Icons/SmartContract.tsx | 18 + .../src/components/Svg/Icons/StarFill.tsx | 17 + .../src/components/Svg/Icons/StarLine.tsx | 17 + .../uikit/src/components/Svg/Icons/Sun.tsx | 25 + .../uikit/src/components/Svg/Icons/Swap.tsx | 19 + .../src/components/Svg/Icons/SwapFill.tsx | 14 + .../src/components/Svg/Icons/SwapVert.tsx | 13 + .../src/components/Svg/Icons/SyncAlt.tsx | 17 + .../src/components/Svg/Icons/TeamBattle.tsx | 13 + .../src/components/Svg/Icons/TeamPlayer.tsx | 136 + .../src/components/Svg/Icons/Telegram.tsx | 13 + .../src/components/Svg/Icons/Testnet.tsx | 13 + .../uikit/src/components/Svg/Icons/Ticket.tsx | 82 + .../src/components/Svg/Icons/TicketFill.tsx | 17 + .../src/components/Svg/Icons/TicketRound.tsx | 101 + .../uikit/src/components/Svg/Icons/Timer.tsx | 13 + .../src/components/Svg/Icons/TokenPocket.tsx | 20 + .../uikit/src/components/Svg/Icons/Trade.tsx | 17 + .../src/components/Svg/Icons/TradeFilled.tsx | 17 + .../src/components/Svg/Icons/TradingView.tsx | 11 + .../uikit/src/components/Svg/Icons/Trophy.tsx | 11 + .../src/components/Svg/Icons/TrophyFill.tsx | 15 + .../src/components/Svg/Icons/TrophyGold.tsx | 106 + .../src/components/Svg/Icons/TrustWallet.tsx | 17 + .../uikit/src/components/Svg/Icons/Tune.tsx | 14 + .../src/components/Svg/Icons/Twitter.tsx | 13 + .../src/components/Svg/Icons/Verified.tsx | 13 + .../components/Svg/Icons/VisibilityOff.tsx | 13 + .../src/components/Svg/Icons/VisibilityOn.tsx | 13 + .../src/components/Svg/Icons/VolumeOff.tsx | 13 + .../src/components/Svg/Icons/VolumeUp.tsx | 13 + .../uikit/src/components/Svg/Icons/Vote.tsx | 13 + .../uikit/src/components/Svg/Icons/Wait.tsx | 13 + .../uikit/src/components/Svg/Icons/Wallet.tsx | 18 + .../components/Svg/Icons/WalletConnect.tsx | 16 + .../src/components/Svg/Icons/WalletFilled.tsx | 17 + .../src/components/Svg/Icons/Warning.tsx | 13 + packages/uikit/src/components/Svg/Svg.tsx | 34 + .../src/components/Svg/index.stories.tsx | 89 + packages/uikit/src/components/Svg/index.tsx | 154 + packages/uikit/src/components/Svg/styles.tsx | 49 + packages/uikit/src/components/Svg/types.ts | 18 + packages/uikit/src/components/TabMenu/Tab.tsx | 32 + .../uikit/src/components/TabMenu/TabMenu.tsx | 48 + .../src/components/TabMenu/index.stories.tsx | 69 + .../uikit/src/components/TabMenu/index.tsx | 3 + .../uikit/src/components/TabMenu/types.ts | 12 + packages/uikit/src/components/Table/Cell.tsx | 17 + packages/uikit/src/components/Table/Table.tsx | 18 + .../src/components/Table/example/const.ts | 40 + .../src/components/Table/example/header.tsx | 22 + packages/uikit/src/components/Table/hooks.tsx | 421 + .../src/components/Table/index.stories.tsx | 40 + packages/uikit/src/components/Table/index.tsx | 5 + packages/uikit/src/components/Table/types.ts | 143 + packages/uikit/src/components/Table/utils.ts | 27 + .../uikit/src/components/Tag/StyledTag.tsx | 53 + packages/uikit/src/components/Tag/Tag.tsx | 25 + .../src/components/Tag/index.stories.tsx | 59 + packages/uikit/src/components/Tag/index.tsx | 2 + packages/uikit/src/components/Tag/theme.ts | 41 + packages/uikit/src/components/Tag/types.ts | 30 + packages/uikit/src/components/Text/Text.tsx | 41 + .../uikit/src/components/Text/TooltipText.tsx | 9 + .../src/components/Text/index.stories.tsx | 78 + packages/uikit/src/components/Text/index.tsx | 3 + packages/uikit/src/components/Text/types.ts | 10 + .../ThemeSwitcher/ThemeSwitcher.tsx | 22 + .../ThemeSwitcher/index.stories.tsx | 23 + .../src/components/ThemeSwitcher/index.tsx | 2 + .../src/components/Timeline/InfoTooltip.tsx | 23 + .../src/components/Timeline/Timeline.tsx | 57 + .../src/components/Timeline/index.stories.tsx | 51 + .../uikit/src/components/Timeline/index.ts | 2 + .../uikit/src/components/Timeline/styles.ts | 28 + .../uikit/src/components/Timeline/types.ts | 13 + .../src/components/Toggle/StyledToggle.tsx | 88 + .../uikit/src/components/Toggle/Toggle.tsx | 39 + .../src/components/Toggle/index.stories.tsx | 43 + .../uikit/src/components/Toggle/index.tsx | 2 + packages/uikit/src/components/Toggle/theme.ts | 13 + packages/uikit/src/components/Toggle/types.ts | 46 + .../uikit/src/components/Tooltip/theme.ts | 15 + .../uikit/src/components/Tooltip/types.ts | 5 + packages/uikit/src/hooks/index.ts | 6 + packages/uikit/src/hooks/useDelayedUnmount.ts | 28 + .../uikit/src/hooks/useIsomorphicEffect.ts | 3 + .../src/hooks/useKonamiCheatCode.stories.tsx | 20 + .../uikit/src/hooks/useKonamiCheatCode.ts | 37 + .../src/hooks/useMatchBreakpoints.stories.tsx | 17 + .../uikit/src/hooks/useMatchBreakpoints.ts | 107 + packages/uikit/src/hooks/useOnClickOutside.ts | 32 + .../src/hooks/useParticleBurst.stories.tsx | 105 + packages/uikit/src/hooks/useParticleBurst.ts | 146 + .../src/hooks/useTooltip/StyledTooltip.tsx | 46 + packages/uikit/src/hooks/useTooltip/index.tsx | 3 + packages/uikit/src/hooks/useTooltip/types.ts | 17 + .../hooks/useTooltip/useTooltip.stories.tsx | 346 + .../uikit/src/hooks/useTooltip/useTooltip.tsx | 202 + packages/uikit/src/index.ts | 50 + packages/uikit/src/setupTests.js | 2 + packages/uikit/src/styled.d.ts | 7 + packages/uikit/src/testHelpers.tsx | 48 + packages/uikit/src/theme/base.ts | 56 + packages/uikit/src/theme/colors.ts | 81 + packages/uikit/src/theme/dark.ts | 27 + packages/uikit/src/theme/index.ts | 34 + packages/uikit/src/theme/light.ts | 27 + packages/uikit/src/theme/types.ts | 81 + packages/uikit/src/types/index.d.ts | 4 + .../uikit/src/util/getExternalLinkProps.ts | 6 + packages/uikit/src/util/getPortalRoot.ts | 4 + packages/uikit/src/util/getThemeValue.ts | 9 + packages/uikit/src/util/isTouchDevice.ts | 11 + packages/uikit/src/util/polymorphic.ts | 16 + packages/uikit/src/widgets/Menu/Menu.tsx | 194 + .../src/widgets/Menu/components/Logo.tsx | 71 + .../Menu/components/UserMenu/MenuIcon.tsx | 80 + .../Menu/components/UserMenu/index.tsx | 124 + .../Menu/components/UserMenu/styles.tsx | 34 + .../widgets/Menu/components/UserMenu/types.ts | 21 + packages/uikit/src/widgets/Menu/config.ts | 171 + packages/uikit/src/widgets/Menu/context.ts | 3 + .../uikit/src/widgets/Menu/index.stories.tsx | 301 + packages/uikit/src/widgets/Menu/index.ts | 14 + packages/uikit/src/widgets/Menu/theme.ts | 13 + packages/uikit/src/widgets/Menu/types.ts | 35 + packages/uikit/src/widgets/Modal/Modal.tsx | 34 + .../uikit/src/widgets/Modal/ModalContext.tsx | 89 + .../uikit/src/widgets/Modal/index.stories.tsx | 137 + packages/uikit/src/widgets/Modal/index.tsx | 5 + packages/uikit/src/widgets/Modal/styles.tsx | 59 + packages/uikit/src/widgets/Modal/theme.ts | 10 + packages/uikit/src/widgets/Modal/types.ts | 20 + packages/uikit/src/widgets/Modal/useModal.ts | 44 + .../src/widgets/WalletModal/ConnectModal.tsx | 96 + .../widgets/WalletModal/CopyToClipboard.tsx | 70 + .../src/widgets/WalletModal/WalletCard.tsx | 70 + .../uikit/src/widgets/WalletModal/config.tsx | 73 + .../src/widgets/WalletModal/index.stories.tsx | 22 + .../uikit/src/widgets/WalletModal/index.tsx | 4 + .../uikit/src/widgets/WalletModal/types.ts | 18 + .../widgets/WalletModal/useWalletModal.tsx | 15 + packages/uikit/svgTransform.js | 8 + packages/uikit/tsconfig.json | 20 + src/style/Global.tsx | 3 +- src/utils/web3React.ts | 2 + tsconfig.json | 5 +- turbo.json | 20 + yarn.lock | 8683 ++++++++++++++++- 516 files changed, 35115 insertions(+), 348 deletions(-) create mode 100644 lerna.json create mode 100644 packages/.prettierrc create mode 100644 packages/eslint-config/CHANGELOG.md create mode 100644 packages/eslint-config/README.md create mode 100644 packages/eslint-config/lib/index.js create mode 100644 packages/eslint-config/package.json create mode 100644 packages/uikit/.storybook/main.js create mode 100644 packages/uikit/.storybook/preview-head.html create mode 100644 packages/uikit/.storybook/preview.js create mode 100644 packages/uikit/CHANGELOG.md create mode 100644 packages/uikit/README.md create mode 100644 packages/uikit/babel.config.js create mode 100644 packages/uikit/jest.config.js create mode 100644 packages/uikit/package.json create mode 100644 packages/uikit/rollup.config.js create mode 100644 packages/uikit/src/ResetCSS.tsx create mode 100644 packages/uikit/src/__tests__/components/alert.test.tsx create mode 100644 packages/uikit/src/__tests__/components/balanceinput.test.tsx create mode 100644 packages/uikit/src/__tests__/components/breadcrumbs.test.tsx create mode 100644 packages/uikit/src/__tests__/components/button.test.tsx create mode 100644 packages/uikit/src/__tests__/components/buttonmenu.test.tsx create mode 100644 packages/uikit/src/__tests__/components/card.test.tsx create mode 100644 packages/uikit/src/__tests__/components/checkbox.test.tsx create mode 100644 packages/uikit/src/__tests__/components/dropdown.test.tsx create mode 100644 packages/uikit/src/__tests__/components/fallingbunnies.test.tsx create mode 100644 packages/uikit/src/__tests__/components/flex.test.tsx create mode 100644 packages/uikit/src/__tests__/components/heading.test.tsx create mode 100644 packages/uikit/src/__tests__/components/input.test.tsx create mode 100644 packages/uikit/src/__tests__/components/layouts.test.tsx create mode 100644 packages/uikit/src/__tests__/components/link.test.tsx create mode 100644 packages/uikit/src/__tests__/components/notificationdot.test.tsx create mode 100644 packages/uikit/src/__tests__/components/overlay.test.tsx create mode 100644 packages/uikit/src/__tests__/components/pancaketoggle.test.tsx create mode 100644 packages/uikit/src/__tests__/components/progress.test.tsx create mode 100644 packages/uikit/src/__tests__/components/radio.test.tsx create mode 100644 packages/uikit/src/__tests__/components/skeleton.test.tsx create mode 100644 packages/uikit/src/__tests__/components/spinner.test.tsx create mode 100644 packages/uikit/src/__tests__/components/svg.test.tsx create mode 100644 packages/uikit/src/__tests__/components/tabmenu.test.tsx create mode 100644 packages/uikit/src/__tests__/components/tag.test.tsx create mode 100644 packages/uikit/src/__tests__/components/text.test.tsx create mode 100644 packages/uikit/src/__tests__/components/toggle.test.tsx create mode 100644 packages/uikit/src/__tests__/components/tokenimage.test.tsx create mode 100644 packages/uikit/src/__tests__/widgets/__snapshots__/menu.test.tsx.snap create mode 100644 packages/uikit/src/__tests__/widgets/menu.test.tsx create mode 100644 packages/uikit/src/__tests__/widgets/modal.test.tsx create mode 100644 packages/uikit/src/__tests__/widgets/walletModal.test.tsx create mode 100644 packages/uikit/src/components/Alert/Alert.tsx create mode 100644 packages/uikit/src/components/Alert/index.stories.tsx create mode 100644 packages/uikit/src/components/Alert/index.tsx create mode 100644 packages/uikit/src/components/Alert/theme.ts create mode 100644 packages/uikit/src/components/Alert/types.ts create mode 100644 packages/uikit/src/components/BalanceInput/BalanceInput.tsx create mode 100644 packages/uikit/src/components/BalanceInput/TextField.tsx create mode 100644 packages/uikit/src/components/BalanceInput/index.stories.tsx create mode 100644 packages/uikit/src/components/BalanceInput/index.tsx create mode 100644 packages/uikit/src/components/BalanceInput/styles.tsx create mode 100644 packages/uikit/src/components/BalanceInput/types.ts create mode 100644 packages/uikit/src/components/BaseMenu/BaseMenu.tsx create mode 100644 packages/uikit/src/components/BaseMenu/InlineMenu.tsx create mode 100644 packages/uikit/src/components/BaseMenu/SubMenu.tsx create mode 100644 packages/uikit/src/components/BaseMenu/index.stories.tsx create mode 100644 packages/uikit/src/components/BaseMenu/index.tsx create mode 100644 packages/uikit/src/components/BaseMenu/styles.tsx create mode 100644 packages/uikit/src/components/BaseMenu/types.ts create mode 100644 packages/uikit/src/components/BottomDrawer/BottomDrawer.tsx create mode 100644 packages/uikit/src/components/BottomDrawer/index.stories.tsx create mode 100644 packages/uikit/src/components/BottomDrawer/index.ts create mode 100644 packages/uikit/src/components/BottomDrawer/styles.ts create mode 100644 packages/uikit/src/components/BottomNav/BottomNav.tsx create mode 100644 packages/uikit/src/components/BottomNav/constants.ts create mode 100644 packages/uikit/src/components/BottomNav/index.stories.tsx create mode 100644 packages/uikit/src/components/BottomNav/index.tsx create mode 100644 packages/uikit/src/components/BottomNav/mock.tsx create mode 100644 packages/uikit/src/components/BottomNav/styles.tsx create mode 100644 packages/uikit/src/components/BottomNav/types.ts create mode 100644 packages/uikit/src/components/BottomNavItem/BottomNavItem.tsx create mode 100644 packages/uikit/src/components/BottomNavItem/index.stories.tsx create mode 100644 packages/uikit/src/components/BottomNavItem/index.tsx create mode 100644 packages/uikit/src/components/BottomNavItem/styles.tsx create mode 100644 packages/uikit/src/components/BottomNavItem/types.ts create mode 100644 packages/uikit/src/components/Box/Box.tsx create mode 100644 packages/uikit/src/components/Box/Flex.tsx create mode 100644 packages/uikit/src/components/Box/Grid.tsx create mode 100644 packages/uikit/src/components/Box/index.stories.tsx create mode 100644 packages/uikit/src/components/Box/index.tsx create mode 100644 packages/uikit/src/components/Box/types.ts create mode 100644 packages/uikit/src/components/Breadcrumbs/Breadcrumbs.tsx create mode 100644 packages/uikit/src/components/Breadcrumbs/index.stories.tsx create mode 100644 packages/uikit/src/components/Breadcrumbs/index.tsx create mode 100644 packages/uikit/src/components/Breadcrumbs/types.ts create mode 100644 packages/uikit/src/components/Button/Button.tsx create mode 100644 packages/uikit/src/components/Button/ExpandableButton.tsx create mode 100644 packages/uikit/src/components/Button/IconButton.tsx create mode 100644 packages/uikit/src/components/Button/StyledButton.tsx create mode 100644 packages/uikit/src/components/Button/index.stories.tsx create mode 100644 packages/uikit/src/components/Button/index.tsx create mode 100644 packages/uikit/src/components/Button/theme.ts create mode 100644 packages/uikit/src/components/Button/types.ts create mode 100644 packages/uikit/src/components/ButtonMenu/ButtonMenu.tsx create mode 100644 packages/uikit/src/components/ButtonMenu/ButtonMenuItem.tsx create mode 100644 packages/uikit/src/components/ButtonMenu/index.stories.tsx create mode 100644 packages/uikit/src/components/ButtonMenu/index.tsx create mode 100644 packages/uikit/src/components/ButtonMenu/types.ts create mode 100644 packages/uikit/src/components/CakePrice/CakePrice.tsx create mode 100644 packages/uikit/src/components/CakePrice/index.stories.tsx create mode 100644 packages/uikit/src/components/CakePrice/index.tsx create mode 100644 packages/uikit/src/components/Card/Card.tsx create mode 100644 packages/uikit/src/components/Card/CardBody.tsx create mode 100644 packages/uikit/src/components/Card/CardFooter.tsx create mode 100644 packages/uikit/src/components/Card/CardHeader.tsx create mode 100644 packages/uikit/src/components/Card/CardRibbon.tsx create mode 100644 packages/uikit/src/components/Card/StyledCard.tsx create mode 100644 packages/uikit/src/components/Card/index.stories.tsx create mode 100644 packages/uikit/src/components/Card/index.tsx create mode 100644 packages/uikit/src/components/Card/theme.ts create mode 100644 packages/uikit/src/components/Card/types.ts create mode 100644 packages/uikit/src/components/Checkbox/Checkbox.tsx create mode 100644 packages/uikit/src/components/Checkbox/index.stories.tsx create mode 100644 packages/uikit/src/components/Checkbox/index.tsx create mode 100644 packages/uikit/src/components/Checkbox/types.ts create mode 100644 packages/uikit/src/components/Dropdown/Dropdown.tsx create mode 100644 packages/uikit/src/components/Dropdown/index.stories.tsx create mode 100644 packages/uikit/src/components/Dropdown/index.tsx create mode 100644 packages/uikit/src/components/Dropdown/types.ts create mode 100644 packages/uikit/src/components/DropdownMenu/DropdownMenu.tsx create mode 100644 packages/uikit/src/components/DropdownMenu/index.stories.tsx create mode 100644 packages/uikit/src/components/DropdownMenu/index.tsx create mode 100644 packages/uikit/src/components/DropdownMenu/mock.tsx create mode 100644 packages/uikit/src/components/DropdownMenu/styles.tsx create mode 100644 packages/uikit/src/components/DropdownMenu/types.ts create mode 100644 packages/uikit/src/components/FallingBunnies/FallingBunnies.tsx create mode 100644 packages/uikit/src/components/FallingBunnies/index.stories.tsx create mode 100644 packages/uikit/src/components/FallingBunnies/index.tsx create mode 100644 packages/uikit/src/components/FallingBunnies/types.ts create mode 100644 packages/uikit/src/components/Footer/Components/SocialLinks.tsx create mode 100644 packages/uikit/src/components/Footer/Footer.tsx create mode 100644 packages/uikit/src/components/Footer/config.tsx create mode 100644 packages/uikit/src/components/Footer/index.stories.tsx create mode 100644 packages/uikit/src/components/Footer/index.tsx create mode 100644 packages/uikit/src/components/Footer/styles.tsx create mode 100644 packages/uikit/src/components/Footer/types.ts create mode 100644 packages/uikit/src/components/Heading/Heading.tsx create mode 100644 packages/uikit/src/components/Heading/index.stories.tsx create mode 100644 packages/uikit/src/components/Heading/index.tsx create mode 100644 packages/uikit/src/components/Heading/types.ts create mode 100644 packages/uikit/src/components/Image/BackgroundImage.tsx create mode 100644 packages/uikit/src/components/Image/Image.tsx create mode 100644 packages/uikit/src/components/Image/Placeholder.tsx create mode 100644 packages/uikit/src/components/Image/ProfileAvatar.tsx create mode 100644 packages/uikit/src/components/Image/TokenImage.tsx create mode 100644 packages/uikit/src/components/Image/TokenPairImage.tsx create mode 100644 packages/uikit/src/components/Image/Wrapper.tsx create mode 100644 packages/uikit/src/components/Image/index.stories.tsx create mode 100644 packages/uikit/src/components/Image/index.ts create mode 100644 packages/uikit/src/components/Image/options.ts create mode 100644 packages/uikit/src/components/Image/styles.tsx create mode 100644 packages/uikit/src/components/Image/tokens.ts create mode 100644 packages/uikit/src/components/Image/types.ts create mode 100644 packages/uikit/src/components/Input/Input.tsx create mode 100644 packages/uikit/src/components/Input/InputGroup.tsx create mode 100644 packages/uikit/src/components/Input/index.stories.tsx create mode 100644 packages/uikit/src/components/Input/index.tsx create mode 100644 packages/uikit/src/components/Input/types.ts create mode 100644 packages/uikit/src/components/LangSelector/LangSelector.tsx create mode 100644 packages/uikit/src/components/LangSelector/MenuButton.tsx create mode 100644 packages/uikit/src/components/LangSelector/types.ts create mode 100644 packages/uikit/src/components/Layouts/BaseLayout.tsx create mode 100644 packages/uikit/src/components/Layouts/CardsLayout.tsx create mode 100644 packages/uikit/src/components/Layouts/index.stories.tsx create mode 100644 packages/uikit/src/components/Layouts/index.tsx create mode 100644 packages/uikit/src/components/Link/Link.tsx create mode 100644 packages/uikit/src/components/Link/LinkExternal.tsx create mode 100644 packages/uikit/src/components/Link/index.stories.tsx create mode 100644 packages/uikit/src/components/Link/index.tsx create mode 100644 packages/uikit/src/components/Link/types.ts create mode 100644 packages/uikit/src/components/MenuItem/MenuItem.tsx create mode 100644 packages/uikit/src/components/MenuItem/index.stories.tsx create mode 100644 packages/uikit/src/components/MenuItem/index.tsx create mode 100644 packages/uikit/src/components/MenuItem/styles.tsx create mode 100644 packages/uikit/src/components/MenuItem/types.ts create mode 100644 packages/uikit/src/components/MenuItems/MenuItems.tsx create mode 100644 packages/uikit/src/components/MenuItems/index.stories.tsx create mode 100644 packages/uikit/src/components/MenuItems/index.tsx create mode 100644 packages/uikit/src/components/MenuItems/mock.tsx create mode 100644 packages/uikit/src/components/MenuItems/types.ts create mode 100644 packages/uikit/src/components/Message/Message.tsx create mode 100644 packages/uikit/src/components/Message/index.stories.tsx create mode 100644 packages/uikit/src/components/Message/index.ts create mode 100644 packages/uikit/src/components/Message/theme.ts create mode 100644 packages/uikit/src/components/Message/types.ts create mode 100644 packages/uikit/src/components/NotificationDot/NotificationDot.tsx create mode 100644 packages/uikit/src/components/NotificationDot/index.stories.tsx create mode 100644 packages/uikit/src/components/NotificationDot/index.tsx create mode 100644 packages/uikit/src/components/NotificationDot/types.ts create mode 100644 packages/uikit/src/components/Overlay/Overlay.tsx create mode 100644 packages/uikit/src/components/Overlay/index.stories.tsx create mode 100644 packages/uikit/src/components/Overlay/index.tsx create mode 100644 packages/uikit/src/components/PancakeToggle/PancakeToggle.tsx create mode 100644 packages/uikit/src/components/PancakeToggle/StyledPancakeToggle.tsx create mode 100644 packages/uikit/src/components/PancakeToggle/index.stories.tsx create mode 100644 packages/uikit/src/components/PancakeToggle/index.tsx create mode 100644 packages/uikit/src/components/PancakeToggle/theme.ts create mode 100644 packages/uikit/src/components/PancakeToggle/types.ts create mode 100644 packages/uikit/src/components/Progress/Progress.tsx create mode 100644 packages/uikit/src/components/Progress/ProgressBunnyWrapper.tsx create mode 100644 packages/uikit/src/components/Progress/StyledProgress.tsx create mode 100644 packages/uikit/src/components/Progress/index.stories.tsx create mode 100644 packages/uikit/src/components/Progress/index.tsx create mode 100644 packages/uikit/src/components/Progress/themes.ts create mode 100644 packages/uikit/src/components/Progress/types.ts create mode 100644 packages/uikit/src/components/Radio/Radio.tsx create mode 100644 packages/uikit/src/components/Radio/index.stories.tsx create mode 100644 packages/uikit/src/components/Radio/index.tsx create mode 100644 packages/uikit/src/components/Radio/theme.ts create mode 100644 packages/uikit/src/components/Radio/types.ts create mode 100644 packages/uikit/src/components/Skeleton/Skeleton.tsx create mode 100644 packages/uikit/src/components/Skeleton/index.stories.tsx create mode 100644 packages/uikit/src/components/Skeleton/index.tsx create mode 100644 packages/uikit/src/components/Skeleton/types.ts create mode 100644 packages/uikit/src/components/Slider/Slider.tsx create mode 100644 packages/uikit/src/components/Slider/index.stories.tsx create mode 100644 packages/uikit/src/components/Slider/index.tsx create mode 100644 packages/uikit/src/components/Slider/styles.ts create mode 100644 packages/uikit/src/components/Slider/svg/bunny-full.svg create mode 100644 packages/uikit/src/components/Slider/svg/bunnybutt.svg create mode 100644 packages/uikit/src/components/Slider/svg/bunnyhead-main.svg create mode 100644 packages/uikit/src/components/Slider/svg/bunnyhead-max.svg create mode 100644 packages/uikit/src/components/Slider/types.ts create mode 100644 packages/uikit/src/components/Spinner/PanIcon.tsx create mode 100644 packages/uikit/src/components/Spinner/PancakeIcon.tsx create mode 100644 packages/uikit/src/components/Spinner/Spinner.tsx create mode 100644 packages/uikit/src/components/Spinner/index.stories.tsx create mode 100644 packages/uikit/src/components/Spinner/index.tsx create mode 100644 packages/uikit/src/components/Spinner/types.ts create mode 100644 packages/uikit/src/components/Stepper/Step.tsx create mode 100644 packages/uikit/src/components/Stepper/Stepper.tsx create mode 100644 packages/uikit/src/components/Stepper/index.stories.tsx create mode 100644 packages/uikit/src/components/Stepper/index.ts create mode 100644 packages/uikit/src/components/Stepper/types.ts create mode 100644 packages/uikit/src/components/SubMenuItems/SubMenuItems.tsx create mode 100644 packages/uikit/src/components/SubMenuItems/index.stories.tsx create mode 100644 packages/uikit/src/components/SubMenuItems/index.tsx create mode 100644 packages/uikit/src/components/SubMenuItems/mock.tsx create mode 100644 packages/uikit/src/components/SubMenuItems/styles.tsx create mode 100644 packages/uikit/src/components/SubMenuItems/types.ts create mode 100644 packages/uikit/src/components/Svg/AnimatedIconComponent.tsx create mode 100644 packages/uikit/src/components/Svg/IconComponent.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Account.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/AccountFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Add.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowBack.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowDown.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowDropDown.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowDropUp.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowFirst.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowForward.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowLast.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowUp.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ArrowUpDown.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/AutoRenew.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Binance.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/BinanceChain.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Block.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Blocto.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/BnbUsdtPairToken.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/BscScan.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/BunnyCards.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/BunnyPlaceholder.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Calculate.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Camera.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/CardView.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Cards.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Chart.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ChartDisable.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Checkmark.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/CheckmarkCircle.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/CheckmarkCircleFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ChevronDown.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ChevronLeft.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ChevronRight.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ChevronUp.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/CircleOutline.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Close.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Cog.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Coin98.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/CoinbaseWallet.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Community.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/CommunityFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Copy.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Crown.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Currency.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Discord.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Earn.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/EarnFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/EarnFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Ellipsis.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Error.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Expand.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Farm.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Github.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Groups.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Hamburger.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/HamburgerClose.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Help.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/History.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Home.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Ifo.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Info.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Instagram.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Language.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/LanguageCurrency.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/LaurelLeft.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/LaurelRight.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/LineGraph.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ListView.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Login.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Logo.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/LogoRound.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/LogoWithText.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Logout.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MathWallet.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MedalBronze.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MedalGold.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MedalPurple.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MedalSilver.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MedalTeal.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Metamask.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Minus.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Moon.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/More.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MoreHorizontal.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/MoreVertical.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Nft.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/NftFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/NftFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/NoProfileAvatar.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/OpenNew.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/PancakeRound.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Pancakes.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Pencil.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/PlayCircleOutline.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/PocketWatch.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Pool.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Predictions.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/PresentCheck.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/PresentNone.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/PresentWon.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Prize.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ProgressBunny.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Proposal.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Reddit.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Refresh.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Remove.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Resources.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/ResourcesFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/SafePal.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Search.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Sell.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Share.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Shrink.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/SmallDot.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/SmartContract.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/StarFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/StarLine.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Sun.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Swap.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/SwapFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/SwapVert.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/SyncAlt.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TeamBattle.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TeamPlayer.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Telegram.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Testnet.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Ticket.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TicketFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TicketRound.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Timer.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TokenPocket.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Trade.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TradeFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TradingView.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Trophy.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TrophyFill.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TrophyGold.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/TrustWallet.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Tune.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Twitter.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Verified.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/VisibilityOff.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/VisibilityOn.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/VolumeOff.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/VolumeUp.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Vote.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Wait.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Wallet.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/WalletConnect.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/WalletFilled.tsx create mode 100644 packages/uikit/src/components/Svg/Icons/Warning.tsx create mode 100644 packages/uikit/src/components/Svg/Svg.tsx create mode 100644 packages/uikit/src/components/Svg/index.stories.tsx create mode 100644 packages/uikit/src/components/Svg/index.tsx create mode 100644 packages/uikit/src/components/Svg/styles.tsx create mode 100644 packages/uikit/src/components/Svg/types.ts create mode 100644 packages/uikit/src/components/TabMenu/Tab.tsx create mode 100644 packages/uikit/src/components/TabMenu/TabMenu.tsx create mode 100644 packages/uikit/src/components/TabMenu/index.stories.tsx create mode 100644 packages/uikit/src/components/TabMenu/index.tsx create mode 100644 packages/uikit/src/components/TabMenu/types.ts create mode 100644 packages/uikit/src/components/Table/Cell.tsx create mode 100644 packages/uikit/src/components/Table/Table.tsx create mode 100644 packages/uikit/src/components/Table/example/const.ts create mode 100644 packages/uikit/src/components/Table/example/header.tsx create mode 100644 packages/uikit/src/components/Table/hooks.tsx create mode 100644 packages/uikit/src/components/Table/index.stories.tsx create mode 100644 packages/uikit/src/components/Table/index.tsx create mode 100644 packages/uikit/src/components/Table/types.ts create mode 100644 packages/uikit/src/components/Table/utils.ts create mode 100644 packages/uikit/src/components/Tag/StyledTag.tsx create mode 100644 packages/uikit/src/components/Tag/Tag.tsx create mode 100644 packages/uikit/src/components/Tag/index.stories.tsx create mode 100644 packages/uikit/src/components/Tag/index.tsx create mode 100644 packages/uikit/src/components/Tag/theme.ts create mode 100644 packages/uikit/src/components/Tag/types.ts create mode 100644 packages/uikit/src/components/Text/Text.tsx create mode 100644 packages/uikit/src/components/Text/TooltipText.tsx create mode 100644 packages/uikit/src/components/Text/index.stories.tsx create mode 100644 packages/uikit/src/components/Text/index.tsx create mode 100644 packages/uikit/src/components/Text/types.ts create mode 100644 packages/uikit/src/components/ThemeSwitcher/ThemeSwitcher.tsx create mode 100644 packages/uikit/src/components/ThemeSwitcher/index.stories.tsx create mode 100644 packages/uikit/src/components/ThemeSwitcher/index.tsx create mode 100644 packages/uikit/src/components/Timeline/InfoTooltip.tsx create mode 100644 packages/uikit/src/components/Timeline/Timeline.tsx create mode 100644 packages/uikit/src/components/Timeline/index.stories.tsx create mode 100644 packages/uikit/src/components/Timeline/index.ts create mode 100644 packages/uikit/src/components/Timeline/styles.ts create mode 100644 packages/uikit/src/components/Timeline/types.ts create mode 100644 packages/uikit/src/components/Toggle/StyledToggle.tsx create mode 100644 packages/uikit/src/components/Toggle/Toggle.tsx create mode 100644 packages/uikit/src/components/Toggle/index.stories.tsx create mode 100644 packages/uikit/src/components/Toggle/index.tsx create mode 100644 packages/uikit/src/components/Toggle/theme.ts create mode 100644 packages/uikit/src/components/Toggle/types.ts create mode 100644 packages/uikit/src/components/Tooltip/theme.ts create mode 100644 packages/uikit/src/components/Tooltip/types.ts create mode 100644 packages/uikit/src/hooks/index.ts create mode 100644 packages/uikit/src/hooks/useDelayedUnmount.ts create mode 100644 packages/uikit/src/hooks/useIsomorphicEffect.ts create mode 100644 packages/uikit/src/hooks/useKonamiCheatCode.stories.tsx create mode 100644 packages/uikit/src/hooks/useKonamiCheatCode.ts create mode 100644 packages/uikit/src/hooks/useMatchBreakpoints.stories.tsx create mode 100644 packages/uikit/src/hooks/useMatchBreakpoints.ts create mode 100644 packages/uikit/src/hooks/useOnClickOutside.ts create mode 100644 packages/uikit/src/hooks/useParticleBurst.stories.tsx create mode 100644 packages/uikit/src/hooks/useParticleBurst.ts create mode 100644 packages/uikit/src/hooks/useTooltip/StyledTooltip.tsx create mode 100644 packages/uikit/src/hooks/useTooltip/index.tsx create mode 100644 packages/uikit/src/hooks/useTooltip/types.ts create mode 100644 packages/uikit/src/hooks/useTooltip/useTooltip.stories.tsx create mode 100644 packages/uikit/src/hooks/useTooltip/useTooltip.tsx create mode 100644 packages/uikit/src/index.ts create mode 100644 packages/uikit/src/setupTests.js create mode 100644 packages/uikit/src/styled.d.ts create mode 100644 packages/uikit/src/testHelpers.tsx create mode 100644 packages/uikit/src/theme/base.ts create mode 100644 packages/uikit/src/theme/colors.ts create mode 100644 packages/uikit/src/theme/dark.ts create mode 100644 packages/uikit/src/theme/index.ts create mode 100644 packages/uikit/src/theme/light.ts create mode 100644 packages/uikit/src/theme/types.ts create mode 100644 packages/uikit/src/types/index.d.ts create mode 100644 packages/uikit/src/util/getExternalLinkProps.ts create mode 100644 packages/uikit/src/util/getPortalRoot.ts create mode 100644 packages/uikit/src/util/getThemeValue.ts create mode 100644 packages/uikit/src/util/isTouchDevice.ts create mode 100644 packages/uikit/src/util/polymorphic.ts create mode 100644 packages/uikit/src/widgets/Menu/Menu.tsx create mode 100644 packages/uikit/src/widgets/Menu/components/Logo.tsx create mode 100644 packages/uikit/src/widgets/Menu/components/UserMenu/MenuIcon.tsx create mode 100644 packages/uikit/src/widgets/Menu/components/UserMenu/index.tsx create mode 100644 packages/uikit/src/widgets/Menu/components/UserMenu/styles.tsx create mode 100644 packages/uikit/src/widgets/Menu/components/UserMenu/types.ts create mode 100644 packages/uikit/src/widgets/Menu/config.ts create mode 100644 packages/uikit/src/widgets/Menu/context.ts create mode 100644 packages/uikit/src/widgets/Menu/index.stories.tsx create mode 100644 packages/uikit/src/widgets/Menu/index.ts create mode 100644 packages/uikit/src/widgets/Menu/theme.ts create mode 100644 packages/uikit/src/widgets/Menu/types.ts create mode 100644 packages/uikit/src/widgets/Modal/Modal.tsx create mode 100644 packages/uikit/src/widgets/Modal/ModalContext.tsx create mode 100644 packages/uikit/src/widgets/Modal/index.stories.tsx create mode 100644 packages/uikit/src/widgets/Modal/index.tsx create mode 100644 packages/uikit/src/widgets/Modal/styles.tsx create mode 100644 packages/uikit/src/widgets/Modal/theme.ts create mode 100644 packages/uikit/src/widgets/Modal/types.ts create mode 100644 packages/uikit/src/widgets/Modal/useModal.ts create mode 100644 packages/uikit/src/widgets/WalletModal/ConnectModal.tsx create mode 100644 packages/uikit/src/widgets/WalletModal/CopyToClipboard.tsx create mode 100644 packages/uikit/src/widgets/WalletModal/WalletCard.tsx create mode 100644 packages/uikit/src/widgets/WalletModal/config.tsx create mode 100644 packages/uikit/src/widgets/WalletModal/index.stories.tsx create mode 100644 packages/uikit/src/widgets/WalletModal/index.tsx create mode 100644 packages/uikit/src/widgets/WalletModal/types.ts create mode 100644 packages/uikit/src/widgets/WalletModal/useWalletModal.tsx create mode 100644 packages/uikit/svgTransform.js create mode 100644 packages/uikit/tsconfig.json create mode 100644 turbo.json diff --git a/.eslintrc b/.eslintrc index b61d7f647..8c5e9d1e9 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,11 +1,4 @@ { - "settings": { - "import/resolver": { - "node": { - "paths": ["./src"] - } - } - }, "env": { "es6": true, "browser": true, @@ -14,6 +7,7 @@ "plugins": ["lodash"], "extends": ["@pancakeswap/eslint-config-pancake", "plugin:react/jsx-runtime", "plugin:@next/next/recommended"], "rules": { + "import/no-unresolved": 0, "no-console": ["warn", { "allow": ["info", "warn", "error", "debug"] }], "no-plusplus": 0, "prefer-destructuring": ["warn", { "object": true, "array": false }], diff --git a/.gitignore b/.gitignore index 9e81c50eb..9f8065225 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. # dependencies -/node_modules +node_modules /.pnp .pnp.js @@ -12,12 +12,14 @@ cypress/screenshots cypress/fixtures/example.json # next.js -/.next/ -/out/ +.next/ +out/ .idea/ # production -/build +build +dist +storybook-static # misc .DS_Store @@ -35,8 +37,11 @@ yarn-debug.log* yarn-error.log* debug.log* -src/config/abi/types +**/config/abi/types # Sentry .sentryclirc + +# turbo +.turbo \ No newline at end of file diff --git a/jest.config.js b/jest.config.js index a88932fac..4271e31db 100644 --- a/jest.config.js +++ b/jest.config.js @@ -6,7 +6,10 @@ const createJestConfig = nextJest({ dir: './' }) // Any custom config you want to pass to Jest const customJestConfig = { - testPathIgnorePatterns: ['/cypress/', '/src/config/__tests__/'], + testPathIgnorePatterns: ['/cypress/', '/src/config/__tests__/', '/packages'], + moduleNameMapper: { + '^@pancakeswap/uikit': '/packages/uikit/src', + }, moduleDirectories: ['node_modules', 'src'], testTimeout: 20000, } diff --git a/lerna.json b/lerna.json new file mode 100644 index 000000000..0bf81fdb8 --- /dev/null +++ b/lerna.json @@ -0,0 +1,13 @@ +{ + "packages": ["packages/*"], + "version": "independent", + "npmClient": "yarn", + "workspaces": true, + "ignoreChanges": ["**/__tests__/**", "**/*.md", "**/.storybook/**"], + "command": { + "version": { + "conventionalCommits": true, + "message": "chore(release): Publish" + } + } +} diff --git a/package.json b/package.json index 3dba08edb..8348dce3a 100644 --- a/package.json +++ b/package.json @@ -2,6 +2,9 @@ "name": "pancake-frontend", "version": "0.1.0", "private": true, + "workspaces": [ + "packages/*" + ], "scripts": { "analyze": "ANALYZE=true yarn build", "dev": "next dev", @@ -45,7 +48,6 @@ "@ethersproject/units": "^5.5.0", "@next/bundle-analyzer": "^12.0.7", "@pancakeswap/sdk": "^2.4.0", - "@pancakeswap/uikit": "^0.63.1", "@reduxjs/toolkit": "^1.5.0", "@sentry/nextjs": "^6.17.9", "@snapshot-labs/snapshot.js": "^0.3.25", @@ -91,7 +93,6 @@ "@commitlint/cli": "^13.1.0", "@commitlint/config-conventional": "^13.1.0", "@next/eslint-plugin-next": "^12.0.10", - "@pancakeswap/eslint-config-pancake": "^1.1.0", "@testing-library/react-hooks": "^7.0.2", "@typechain/ethers-v5": "^8.0.5", "@types/canvas-confetti": "^1.4.2", @@ -114,11 +115,13 @@ "eslint-plugin-lodash": "^7.4.0", "husky": "^7.0.0", "jest": "^27.4.5", + "lerna": "^4.0.0", "prettier": "^2.3.0", "serve": "^12.0.0", "source-map-explorer": "^2.5.2", "start-server-and-test": "^1.14.0", "ts-node": "^9.1.1", + "turbo": "^1.1.4", "typechain": "^6.1.0" } } diff --git a/packages/.prettierrc b/packages/.prettierrc new file mode 100644 index 000000000..28c03d832 --- /dev/null +++ b/packages/.prettierrc @@ -0,0 +1,4 @@ +{ + "semi": true, + "printWidth": 120 +} diff --git a/packages/eslint-config/CHANGELOG.md b/packages/eslint-config/CHANGELOG.md new file mode 100644 index 000000000..ddbb02e45 --- /dev/null +++ b/packages/eslint-config/CHANGELOG.md @@ -0,0 +1,33 @@ +# Change Log + +All notable changes to this project will be documented in this file. +See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +# [1.2.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/compare/@pancakeswap/eslint-config-pancake@1.1.0...@pancakeswap/eslint-config-pancake@1.2.0) (2021-07-09) + + +### Features + +* Migrate ad-hoc FE rules to eslint-config ([#187](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/issues/187)) ([75baf17](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/commit/75baf175c8316fdfc549bc99e2bc38d65b18c5b6)) + + + + + +# 1.1.0 (2021-05-07) + + +### Features + +* Add eslint package ([#7](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/issues/7)) ([0e0454e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/commit/0e0454eb9a63e976934956dc5c66fbef2ce2017a)) + + + + + +## [1.0.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/compare/@pancakeswap-libs/eslint-config-pancake@1.0.1...@pancakeswap-libs/eslint-config-pancake@1.0.1) (2021-03-19) + + +### Features + +* Add eslint package ([#7](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/issues/7)) ([0e0454e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake/commit/0e0454eb9a63e976934956dc5c66fbef2ce2017a)) diff --git a/packages/eslint-config/README.md b/packages/eslint-config/README.md new file mode 100644 index 000000000..f355b329c --- /dev/null +++ b/packages/eslint-config/README.md @@ -0,0 +1,15 @@ +# eslint-config-pancake + +Pancake Eslint config with: + +- Airbnb config +- Typescript +- Prettier + +## Usage + +``` +npx install-peerdeps --dev @pancakeswap/eslint-config-pancake +``` + +Add `"extends": "@pancakeswap/eslint-config-pancake"` to your eslint config file. diff --git a/packages/eslint-config/lib/index.js b/packages/eslint-config/lib/index.js new file mode 100644 index 000000000..980ff3019 --- /dev/null +++ b/packages/eslint-config/lib/index.js @@ -0,0 +1,58 @@ +module.exports = { + root: true, + parser: "@typescript-eslint/parser", + parserOptions: { + ecmaVersion: 2017, + ecmaFeatures: { + jsx: true, + }, + }, + env: { + es6: true, + browser: true, + }, + settings: { + "import/resolver": { + node: { + extensions: [".js", ".ts", ".jsx", ".tsx"], + }, + }, + "import/extensions": [".js", ".ts", ".jsx", ".tsx"], + }, + extends: [ + "airbnb", + "airbnb/hooks", + "prettier", + "prettier/react", + "prettier/@typescript-eslint", + "plugin:@typescript-eslint/recommended", + ], + rules: { + // Typescript + "@typescript-eslint/no-unused-vars": "warn", + "no-use-before-define": "off", + "@typescript-eslint/no-use-before-define": ["warn"], + "no-shadow": "off", + "@typescript-eslint/no-shadow": ["error"], + "no-console": ["warn", { allow: ["info", "warn", "error"] }], + "no-plusplus": 0, + "prefer-destructuring": ["warn", { object: true, array: false }], + "no-underscore-dangle": 0, + // React + "react/jsx-filename-extension": ["error", { extensions: [".tsx"] }], + "react/prop-types": 0, + "react/jsx-props-no-spreading": 0, + "react/no-multi-comp": 0, + "import/extensions": [ + "error", + "ignorePackages", + { + js: "never", + mjs: "never", + jsx: "never", + ts: "never", + tsx: "never", + }, + ], + }, +}; diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json new file mode 100644 index 000000000..169c95541 --- /dev/null +++ b/packages/eslint-config/package.json @@ -0,0 +1,30 @@ +{ + "name": "@pancakeswap/eslint-config-pancake", + "version": "1.2.0", + "description": "Eslint config for PancakeSwap", + "main": "lib/index.js", + "files": [ + "lib" + ], + "repository": "https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/eslint-config-pancake", + "license": "MIT", + "author": "RabbitDoge", + "private": false, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^4.7.0", + "@typescript-eslint/parser": "^4.7.0", + "eslint-config-airbnb": "^18.2.1", + "eslint-config-prettier": "^6.15.0", + "eslint-plugin-import": "^2.22.1", + "eslint-plugin-jsx-a11y": "^6.4.1", + "eslint-plugin-react": "^7.21.5", + "eslint-plugin-react-hooks": "^4.0.0" + }, + "peerDependencies": { + "eslint": "^7.2.0", + "prettier": "^2.1.2" + }, + "publishConfig": { + "access": "public" + } +} diff --git a/packages/uikit/.storybook/main.js b/packages/uikit/.storybook/main.js new file mode 100644 index 000000000..373272ef6 --- /dev/null +++ b/packages/uikit/.storybook/main.js @@ -0,0 +1,14 @@ +module.exports = { + stories: ["../src/**/*.stories.mdx", "../src/**/*.stories.@(js|jsx|ts|tsx)"], + addons: [ + { + name: "@storybook/addon-essentials", + options: { + backgrounds: false, + }, + }, + "@storybook/addon-links", + "@storybook/addon-a11y", + "themeprovider-storybook/register", + ], +}; diff --git a/packages/uikit/.storybook/preview-head.html b/packages/uikit/.storybook/preview-head.html new file mode 100644 index 000000000..7d3cf37cd --- /dev/null +++ b/packages/uikit/.storybook/preview-head.html @@ -0,0 +1 @@ + diff --git a/packages/uikit/.storybook/preview.js b/packages/uikit/.storybook/preview.js new file mode 100644 index 000000000..b02154891 --- /dev/null +++ b/packages/uikit/.storybook/preview.js @@ -0,0 +1,33 @@ +import React from "react"; +import { withThemesProvider } from "themeprovider-storybook"; +import light from "../src/theme/light"; +import dark from "../src/theme/dark"; +import ResetCSS from "../src/ResetCSS"; +import { ModalProvider } from "../src/widgets/Modal"; + +const globalDecorator = (StoryFn) => ( + + + + +); + +export const parameters = { + actions: { argTypesRegex: "^on[A-Z].*" }, + layout: "fullscreen", +}; + +const themes = [ + { + name: "Light", + backgroundColor: light.colors.background, + ...light, + }, + { + name: "Dark", + backgroundColor: dark.colors.background, + ...dark, + }, +]; + +export const decorators = [globalDecorator, withThemesProvider(themes)]; diff --git a/packages/uikit/CHANGELOG.md b/packages/uikit/CHANGELOG.md new file mode 100644 index 000000000..2298a9154 --- /dev/null +++ b/packages/uikit/CHANGELOG.md @@ -0,0 +1,1190 @@ +# Change Log + +All notable changes to this project will be documented in this file. +See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [0.63.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.63.0...@pancakeswap/uikit@0.63.1) (2022-01-16) + + +### Bug Fixes + +* **uikit:** Types styled system missing with devdep ([#384](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/384)) ([078f101](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/078f101b67cdc09b5f62e4a4fc45655eaf15733a)) + + + + + +# [0.63.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.62.0...@pancakeswap/uikit@0.63.0) (2022-01-16) + + +### Bug Fixes + +* **uikit:** Chrome scrollbar layoutshift ([#377](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/377)) ([9c68d02](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/9c68d02c3b48388f8eed38f710b73120bb9aaa99)) +* **uikit:** IOS safari BottomNav position ([#378](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/378)) ([154d6f5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/154d6f5e43fa0f00cff81ff69dca95a366d36067)) + + +### Features + +* **uikit:** footer-telegram icon's tooltip update ([#376](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/376)) ([68ac504](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/68ac50482dd991427bf064744c4ce985261f6281)) +* **uikit:** Support SSR ([#370](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/370)) ([7edd367](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7edd367c45210e52bdc1523dbeff940c56e0719a)) +* **uikit:** Update Logo Icon ([#350](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/350)) ([c5fde4a](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c5fde4ab695e5a16461cc21634eb4e8be11cc7c9)) + + + + + +# [0.62.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.61.0...@pancakeswap/uikit@0.62.0) (2021-12-30) + + +### Features + +* List DPT ([#363](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/363)) ([c2a5681](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c2a56818f977891ad80af9d3eff83334c0d19cce)) + + +### Performance Improvements + +* **uikit:** Remove backdrop filter ([#367](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/367)) ([4d66e7e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/4d66e7ed433c534bb403e4856ad0617834217cbd)) + + + + + +# [0.61.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.60.0...@pancakeswap/uikit@0.61.0) (2021-12-17) + + +### Bug Fixes + +* (bunnyslider): Remove visible box shadow on slider thumb in mobile safari ([#360](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/360)) ([c74da59](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c74da59e3a0c4be9112b3d2d9cadcea4a892956a)) + + +### Features + +* **uikit:** Add MessageText for Message ([#361](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/361)) ([ccee124](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ccee12441aa191610fec27bccfd27a78e8ea52c1)) +* **uikit:** Add SmartContract and Swap icon ([#359](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/359)) ([8cd5a68](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8cd5a68245cf51f93206b47e7761bbe92ef29c74)) + + + + + +# [0.60.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.59.0...@pancakeswap/uikit@0.60.0) (2021-12-09) + + +### Bug Fixes + +* (bottomdrawer): Add tokenpocket padding to bottom drawer ([#354](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/354)) ([68fffca](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/68fffcabea4e3fab1b9e8dbb448b289a43ded3d1)) + + +### Features + +* **uikit:** Add ProgressBar for compose use ([#356](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/356)) ([0ba9872](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0ba9872b32405e00c2e9612ba3d77fb38563208e)) + + + + + +# [0.59.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.58.1...@pancakeswap/uikit@0.59.0) (2021-12-01) + + +### Bug Fixes + +* **uikit:** Snapshot ([#349](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/349)) ([a669484](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a66948484dcccbdc5980fc5a898c2dd310c7a9a0)) + + +### Features + +* **uikit:** Improve BottomDrawer and Overlay ([#345](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/345)) ([9fe7f9d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/9fe7f9d9cbd0dafd738090d8d0c86385cb04464c)) + + + + + +## [0.58.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.58.0...@pancakeswap/uikit@0.58.1) (2021-11-29) + + +### Bug Fixes + +* **uikit:** BottomNav clickoutside ([#344](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/344)) ([d8ba475](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/d8ba475b88c03a1ba64685818d77c55e3911f3c6)) + + + + + +# [0.58.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.57.0...@pancakeswap/uikit@0.58.0) (2021-11-24) + + +### Features + +* **uikit:** Add discord icon and link ([#341](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/341)) ([59a9394](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/59a9394f80666c83ae2b35829ebe6e8f84399e95)) + + + + + +# [0.57.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.56.3...@pancakeswap/uikit@0.57.0) (2021-11-24) + + +### Bug Fixes + +* **uikit:** UserMenu position incorrect ([#339](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/339)) ([924e1ca](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/924e1cad126ca919da437b45fa37a16574efe534)) + + +### Features + +* BottomDrawer ([#340](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/340)) ([7a7071e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7a7071e633007638d424ddb16d6d429cde75f998)) + + + + + +## [0.56.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.56.1...@pancakeswap/uikit@0.56.3) (2021-11-22) + + +### Bug Fixes + +* **uikit:** Menu position incorrect and link no response on touch device ([#336](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/336)) ([21853cd](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/21853cdcdf98de66e19579501a003538b8335f78)) +* **uikit:** Mobile overlay regression ([#332](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/332)) ([a8be97e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a8be97ec6dc6d88f3fb7561ce248103d6a8ac733)) +* **uikit:** Show active border on SubMenu when hover ([#333](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/333)) ([c2b4d51](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c2b4d515a4a904563d497c59953d5d9d848567a8)) + + + + + +## [0.56.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.56.1...@pancakeswap/uikit@0.56.2) (2021-11-22) + + +### Bug Fixes + +* **uikit:** Menu position incorrect and link no response on touch device ([#336](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/336)) ([21853cd](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/21853cdcdf98de66e19579501a003538b8335f78)) +* **uikit:** Mobile overlay regression ([#332](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/332)) ([a8be97e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a8be97ec6dc6d88f3fb7561ce248103d6a8ac733)) +* **uikit:** Show active border on SubMenu when hover ([#333](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/333)) ([c2b4d51](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c2b4d515a4a904563d497c59953d5d9d848567a8)) + + + + + +## [0.56.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.57.0...@pancakeswap/uikit@0.56.1) (2021-11-16) + + +### Reverts + +* Revert "chore(release): Publish" ([3ba958f](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/3ba958f79d3dd8ab0fbdf55ee8addc328b2f6a6b)) + + + + + +# [0.56.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.55.0...@pancakeswap/uikit@0.56.0) (2021-10-28) + + +### Bug Fixes + +* **uikit:** Render menu without link as text in Footer ([#304](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/304)) ([c975470](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c975470b0f561c4f95bdfac7bb119c7d6365e9af)) +* (menu): Main menu items on tablets causes navigation instead of drop down ([#301](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/301)) ([895ef24](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/895ef24fd054b28bff1eddd1a6df07f08955d512)) +* (menu): Menu item keys might be the same if label is the same ([#294](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/294)) ([871da8b](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/871da8bf43d2808b3f59a8bf578df20c01d2d35f)) +* Token pocket mobile navigation ([#297](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/297)) ([6b80d7e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6b80d7e81060ada8af69ece1e61dc275a96a5cfc)) + + +### Features + +* **icons:** Add expand and shrink icons ([#299](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/299)) ([4d4ecd3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/4d4ecd303c603a6388f10ea9419d27561b26901c)) +* **menu:** Add mobile sub menu entry with icon ([#307](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/307)) ([817a6bd](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/817a6bdb463e931fad3652648e9d120b2957542c)) + + + + + +# [0.55.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.54.5...@pancakeswap/uikit@0.55.0) (2021-10-04) + + +### Features + +* **bottom nav:** Fix ios bottom nav issue on specifics browsers ([#293](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/293)) ([8beb5cc](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8beb5ccd6581b4804f7f6bf1edae16d3278206cb)) + + + + + +## [0.54.5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.54.4...@pancakeswap/uikit@0.54.5) (2021-09-28) + + +### Bug Fixes + +* **Menu:** Hide menu bar only when scrolled enough ([#292](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/292)) ([8cbab63](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8cbab63addfd77d2ce5823d63571b8ec19aad042)) +* DarkMode flag and Stepper issue ([#291](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/291)) ([7c248b7](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7c248b7031b8a0c6d8173e5eb64dac76df235226)) + + + + + +## [0.54.4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.54.3...@pancakeswap/uikit@0.54.4) (2021-09-20) + + +### Bug Fixes + +* **menu:** Submenu types ([#288](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/288)) ([c16e0e3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c16e0e323e2309471728e158e39511174ab44931)) + + + + + +## [0.54.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.54.2...@pancakeswap/uikit@0.54.3) (2021-09-17) + + +### Bug Fixes + +* **uikit:** DropdownMenu ([#280](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/280)) ([f8f8b56](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f8f8b56c42f53d66186e16bc8150de04c8c49d08)) + + + + + +## [0.54.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.54.1...@pancakeswap/uikit@0.54.2) (2021-09-17) + + +### Bug Fixes + +* User menu item on click action not triggered intermittently ([#281](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/281)) ([fc51464](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/fc5146454b6a9841101fc42ad1f0939b1de176c8)) +* **menu:** Apply margin to BodyWrapper ([#284](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/284)) ([651c856](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/651c856f4e5796620129ae0f94efee83f2e8db70)) +* **menu:** Increase timeout on touch devices ([#283](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/283)) ([2262017](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/2262017150a239c9632cf55f5758d6d381af7da5)) + + + + + +## [0.54.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.54.0...@pancakeswap/uikit@0.54.1) (2021-09-16) + + +### Bug Fixes + +* **footer links:** Add rel attribute ([#278](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/278)) ([c35e027](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c35e027d2cf22133b238a4d75039c2dedb6b498e)) +* **uikit:** BottomNav ([#279](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/279)) ([5d75877](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/5d7587739fa09d1745467ffe6807d7ade1dfc42d)) + + + + + +# [0.54.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.53.0...@pancakeswap/uikit@0.54.0) (2021-09-14) + + +### Bug Fixes + +* **missing export:** Export SubMenuItems ([#277](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/277)) ([da5ecb1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/da5ecb1b893d0654ad450c3a0dcac8aebdc0d8ce)) + + +### Features + +* **timeline:** Add timeline component ([#276](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/276)) ([a4346dd](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a4346ddce39ed3d28e83ff05492194d53e7a321f)) + + + + + +# [0.53.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.52.0...@pancakeswap/uikit@0.53.0) (2021-09-14) + + +### Features + +* **menu rework:** Menu rework adjustments ([#275](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/275)) ([894a2d4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/894a2d4f71a2d83493dc4dbe6f5706ef21eaaa44)) + + + + + +# [0.52.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.51.0...@pancakeswap/uikit@0.52.0) (2021-09-13) + + +### Features + +* **rework navigation:** Rework top and bottom navigation ([#263](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/263)) ([67b4e53](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/67b4e53d12d442cf596a969208b45097a0066534)), closes [#261](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/261) [#264](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/264) [#268](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/268) + + + + + +# [0.51.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.50.3...@pancakeswap/uikit@0.51.0) (2021-09-09) + + +### Features + +* Menu ([#271](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/271)) ([4227823](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/42278237b8a47e2144f7cf7f84e303fa86e792d2)) +* **uikit:** Button light variant ([#273](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/273)) ([ac063c1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ac063c11f1825f32ee2666036ad097b6f5189c9b)) +* **uikit:** TextField ([#272](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/272)) ([8c68ce8](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8c68ce8a7518039fdc8fba082018271b92ca08df)) + + + + + +## [0.50.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.50.2...@pancakeswap/uikit@0.50.3) (2021-09-06) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.50.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.50.1...@pancakeswap/uikit@0.50.2) (2021-09-06) + + +### Bug Fixes + +* Link of cake price to swap page is broken ([#260](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/260)) ([3f8e089](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/3f8e0892a93975468b086758093e1a2ca5d6dd73)) + + + + + +## [0.50.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.50.0...@pancakeswap/uikit@0.50.1) (2021-08-31) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.50.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.49.2...@pancakeswap/uikit@0.50.0) (2021-08-31) + + +### Features + +* Translation support for connect and account modal ([#257](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/257)) ([6d97f2e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6d97f2eeba94d4373385f6a1ace6f9f837e8db31)) + + + + + +## [0.49.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.49.1...@pancakeswap/uikit@0.49.2) (2021-08-27) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.49.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.49.0...@pancakeswap/uikit@0.49.1) (2021-08-20) + + +### Bug Fixes + +* **uikit:** Menu breakpoint ([#247](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/247)) ([4352c38](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/4352c38731ea0101d7f16cccee9fed801c74af6f)) + + + + + +# [0.49.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.48.0...@pancakeswap/uikit@0.49.0) (2021-08-20) + + +### Features + +* **uikit:** Add breakpoint helpers ([#246](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/246)) ([ed34997](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ed34997a91a88f069fc019f3aeecbb101a864ce6)) + + + + + +# [0.48.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.47.0...@pancakeswap/uikit@0.48.0) (2021-08-19) + + +### Features + +* **uikit:** New breakpoint ([#241](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/241)) ([2262df1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/2262df11cffca2218fb1524a1f219ddf3be417e5)) +* **uikit-tags:** Add typography props ([#245](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/245)) ([55ed86b](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/55ed86ba48061e52cebe9bd92bb10fc22efebf4e)) + + + + + +# [0.47.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.46.2...@pancakeswap/uikit@0.47.0) (2021-08-12) + + +### Features + +* **uikit:** Input Group ([#220](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/220)) ([109f3de](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/109f3de9c6167652bd84a1302ddae3008263498b)) + + + + + +## [0.46.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.46.1...@pancakeswap/uikit@0.46.2) (2021-08-11) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.46.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.46.0...@pancakeswap/uikit@0.46.1) (2021-08-09) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.46.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.45.0...@pancakeswap/uikit@0.46.0) (2021-08-09) + + +### Bug Fixes + +* Auto-close SubMenu if clicked on another SubMenu ([#231](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/231)) ([895eb70](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/895eb700206b98a2220cbd6f46353a106e337988)) + + +### Features + +* Update Card component ([#232](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/232)) ([bf509c5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/bf509c578533f8e1cc37dd9ef8e830ec7e43c999)) + + + + + +# [0.45.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.44.1...@pancakeswap/uikit@0.45.0) (2021-08-06) + + +### Features + +* **menu:** Add global settings to Menu Widget ([#224](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/224)) ([6ac2200](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6ac220074777427d94e3cba78f09d2dadadce9f0)) +* **uikit:** Td & Th components ([#227](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/227)) ([c7f4283](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/c7f4283357532cdb03ae4a577253ed4a473e1eca)) + + + + + +## [0.44.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.44.0...@pancakeswap/uikit@0.44.1) (2021-08-05) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.44.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.43.0...@pancakeswap/uikit@0.44.0) (2021-08-03) + + +### Features + +* **uikit:** Table ([#221](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/221)) ([6289718](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6289718e7980a5021c70fa016571c0fc36c46a4c)) + + + + + +# [0.43.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.42.1...@pancakeswap/uikit@0.43.0) (2021-08-02) + + +### Features + +* Add medal colors ([#217](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/217)) ([92d80f2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/92d80f2ae1e8e9aa02d1a56542566205553ce9d2)) +* SubMenu component ([#219](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/219)) ([e3d6747](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/e3d6747987243640eedabc407d19142d2230de34)) + + + + + +## [0.42.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.42.0...@pancakeswap/uikit@0.42.1) (2021-07-29) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.42.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.41.0...@pancakeswap/uikit@0.42.0) (2021-07-28) + + +### Features + +* **uikit-buttonmenu:** Full width ([#212](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/212)) ([0fa2ff5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0fa2ff5f209843f489f0f65c3b885361beec5014)) + + + + + +# [0.41.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.40.4...@pancakeswap/uikit@0.41.0) (2021-07-21) + + +### Features + +* **uikit:** Wallet icons ([#206](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/206)) ([7bff4b5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7bff4b57a92ba6363187af429b26ef2dd2658830)) + + + + + +## [0.40.4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.40.3...@pancakeswap/uikit@0.40.4) (2021-07-16) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.40.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.40.2...@pancakeswap/uikit@0.40.3) (2021-07-15) + + +### Bug Fixes + +* Increase ifo stepper connector height in mobile ([#195](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/195)) ([5408d1c](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/5408d1ca6099154d5385b0aaecf5015fdf8b4d20)) + + + + + +## [0.40.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.40.1...@pancakeswap/uikit@0.40.2) (2021-07-09) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.40.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.40.0...@pancakeswap/uikit@0.40.1) (2021-07-09) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.40.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.39.4...@pancakeswap/uikit@0.40.0) (2021-07-01) + + +### Features + +* Reactive modals ([#183](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/183)) ([7644124](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7644124b0205379019eba9aebcab30d163144fae)) + + + + + +## [0.39.4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.39.3...@pancakeswap/uikit@0.39.4) (2021-06-30) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.39.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.39.2...@pancakeswap/uikit@0.39.3) (2021-06-21) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.39.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.39.1...@pancakeswap/uikit@0.39.2) (2021-06-18) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.39.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.39.0...@pancakeswap/uikit@0.39.1) (2021-06-17) + + +### Bug Fixes + +* (userblock) Check Props properties seperately to not cause rerender each time ([#151](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/151)) ([e6f90d7](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/e6f90d7b41a1b3a1d373560dd29e06f10c324639)) + + + + + +# [0.39.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.38.0...@pancakeswap/uikit@0.39.0) (2021-06-14) + + +### Features + +* Menu variant without Connect button ([#155](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/155)) ([84b6f68](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/84b6f683693b426428c5445fc6891608e3943399)) + + + + + +# [0.38.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.37.1...@pancakeswap/uikit@0.38.0) (2021-06-11) + + +### Bug Fixes + +* (userblock) Rerender userblock when one of the props changes ([#148](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/148)) ([ba5e3ab](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ba5e3ab25d558830a1af49e82943b53c5a5ab344)) + + +### Features + +* (connect) Change how to connect link with more accurate one ([#152](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/152)) ([bfbe506](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/bfbe506e63ef7a243d7425d07fb59c9da9d5a06b)) + + + + + +## [0.37.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.37.0...@pancakeswap/uikit@0.37.1) (2021-06-09) + + +### Bug Fixes + +* (Menu) Footer is not visible completely when navigation bar is visible ([#138](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/138)) ([fa6fc66](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/fa6fc669091398de8c3cee156e3724006023a4a2)) +* Message component ([#150](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/150)) ([90387d4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/90387d4cc5758763476d1d20c0a9b8d63588c689)) + + + + + +# [0.37.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.36.1...@pancakeswap/uikit@0.37.0) (2021-06-08) + + +### Features + +* (BalanceInput) Add decimal check support ([#142](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/142)) ([763e13f](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/763e13f836ac2cbb8a3b1132d98854e07a492ced)) + + + + + +## [0.36.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.36.0...@pancakeswap/uikit@0.36.1) (2021-06-03) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.36.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.35.0...@pancakeswap/uikit@0.36.0) (2021-05-31) + + +### Features + +* Add a grid primitive ([#122](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/122)) ([15e8aad](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/15e8aad6bd87ed204a7ffcd14d434a009a0051ef)) + + + + + +# [0.35.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.34.0...@pancakeswap/uikit@0.35.0) (2021-05-27) + + +### Features + +* Add text ellipsis ([#121](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/121)) ([17d1bfa](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/17d1bfadef5b8c78a2f7f8400e3942e5bb6a419a)) + + + + + +# [0.34.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.33.2...@pancakeswap/uikit@0.34.0) (2021-05-26) + + +### Features + +* Message component ([#120](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/120)) ([0584b7d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0584b7d59dd84273c36f81b19077a1eca1fd0bee)) + + + + + +## [0.33.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.33.1...@pancakeswap/uikit@0.33.2) (2021-05-26) + + +### Bug Fixes + +* Add border to button menu ([#117](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/117)) ([ddccc89](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ddccc894873fc029e085df3fddc95adfc2cd4488)) +* Card radius ([#116](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/116)) ([beb881a](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/beb881a8829496a0949f1ae073e88759f131f801)) +* Change help link of connect modal to point connect ([#118](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/118)) ([486e7d3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/486e7d375b8abaa9a4fabfc079c9872c2925c929)) + + + + + +## [0.33.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.33.0...@pancakeswap/uikit@0.33.1) (2021-05-25) + + +### Bug Fixes + +* **menu:** Improved accessibility ([#109](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/109)) ([eda619d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/eda619d18866f0cbd1958a16cdd2bede327bf485)) + + + + + +# [0.33.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.32.3...@pancakeswap/uikit@0.33.0) (2021-05-24) + + +### Bug Fixes + +* Bunny slider progress width is too small when is leftmost and too big when is rightmost side ([#103](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/103)) ([298fd8e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/298fd8e9ed68d580183b4ea62710dd85867becfc)) + + +### Features + +* **uikit:** Bubblegum card header variant ([#114](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/114)) ([95ca7a0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/95ca7a071305a840cf8582df2a812b819624c8a7)) +* **uikit:** Proposal icon ([#108](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/108)) ([6ca7995](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6ca7995c3e7acfaf9e7309e86b953a11b25305b8)) +* **uikit:** Vote icon ([#111](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/111)) ([1399814](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/1399814b123ea6232c16aff231965112b63f3fa0)) +* **uikit/tag:** Warning variant ([#110](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/110)) ([f4b9d87](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f4b9d87100c4d493728277d566fdf581d0fca6bd)) + + + + + +## [0.32.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.32.2...@pancakeswap/uikit@0.32.3) (2021-05-11) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +## [0.32.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.32.1...@pancakeswap/uikit@0.32.2) (2021-05-11) + + +### Bug Fixes + +* Dropdown colors ([#100](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/100)) ([5d66f62](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/5d66f62db5234bc8d59d836ba65713b79b5ecbbf)) + + + + + +## [0.32.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.32.0...@pancakeswap/uikit@0.32.1) (2021-05-11) + +**Note:** Version bump only for package @pancakeswap/uikit + + + + + +# [0.32.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.31.0...@pancakeswap/uikit@0.32.0) (2021-05-11) + + +### Bug Fixes + +* Chrome blurs logo during scaling animation ([#98](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/98)) ([d3b79bc](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/d3b79bc67dab44e5f7b042f367211e902375b4eb)) + + +### Features + +* **text:** Add styled system { layout } style to Text ([#96](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/96)) ([2b619a1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/2b619a15f4806b1eb92d4cbd08a36984777038d1)) + + + + + +# [0.31.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap/uikit@0.30.0...@pancakeswap/uikit@0.31.0) (2021-05-10) + + +### Features + +* Add new icons ([04cbe90](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/04cbe90e893ef7ed834edc1abd6bdb2e0ff23be2)) + + + + + +# 0.30.0 (2021-05-07) + + +### Bug Fixes + +* :fire: UI updates: button click animation, menu closing fix, men… ([#63](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/63)) ([3d9ba48](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/3d9ba489f642939cfdf54d6939c0fdd7309ed86b)) +* Accordion menu not showing new result when children changed ([#77](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/77)) ([57ff149](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/57ff1493987c0928d7d9f3cf04fc013331f65ab5)) +* Accordion menu stuck at active state ([#57](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/57)) ([f9f5162](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f9f5162f269a27b375943db4b87850c6d8998d3d)) +* Add missing ios support for balance input ([#75](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/75)) ([b648a77](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/b648a77c9b7d7f0f818153688779f2254060ee88)) +* Add z-index 10 to StyledTooltip ([#70](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/70)) ([24941ff](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/24941ff7234e4ad89a4fa0c10c85e2f73e8f72aa)) +* Button loading state ([#30](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/30)) ([7fff56d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7fff56d022e06a911525f6163de1e4b5adfab9c7)) +* Copy clipboard on mobile devices ([#2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/2)) ([a64bfd8](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a64bfd8b998f9ab9ee4daac9b42fa8c7a7eb53a7)) +* Included setupTests.js and updated snap tests ([#50](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/50)) ([b6ab0ee](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/b6ab0ee48e82c8ac88b288e1f790e1c91babb93d)) +* Make BalanceInputt a type="number" ([#74](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/74)) ([e6e6915](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/e6e69151a79c35f9c736b1fb996cebb99ce526fc)) +* Modal border inner color use theme value ([#37](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/37)) ([8e5c9c4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8e5c9c409b38059f70f6746bc769f4eced009660)) +* Put shadow under the bunny head of slider component ([#25](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/25)) ([92da5b5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/92da5b5cf746c1a3e10d05c3e5344943a926d943)) +* React dom failure when passing unknown props to child component ([#49](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/49)) ([e3c0272](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/e3c02729bb5c1391d6179a7da6c38bdee6f741bf)) +* Set panel z index to 0 on desktop ([#45](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/45)) ([6cde36e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6cde36ee73b2075de85ef809bed3f959e46de6e2)) +* Slider step label position ([#36](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/36)) ([060b835](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/060b835c68d67d83575f3f8783c2610133798aea)) +* Stepper alignement ([#69](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/69)) ([25df26a](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/25df26a9c9e6668c4e0ccd8171df6f748b41dccf)) +* Stepper connector visibility ([#66](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/66)) ([629be7b](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/629be7b33cc3c7d95499ca67b7a175a29f3f7225)) +* Stepper layout ([#73](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/73)) ([6899561](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6899561397a065e625b9ea2461f5d1a7b328fa3a)) +* Theme config key name ([#71](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/71)) ([d55e4bc](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/d55e4bc76486d9c04df62b7e1359b394a8b89dd8)) +* Tooltip on hover disappear immediately when mouse leaves target element ([#90](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/90)) ([97642eb](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/97642eb9f5b9d58a23107e692219362c83711917)) +* Visible Border and background in ios for bunny slider ([#93](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/93)) ([cbb93f7](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/cbb93f7c7655e072ded9857cdef08f6b36bfa301)) +* **card-ribbon:** Add z-index value to ribbon and spread props to improve flexibility of component ([#88](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/88)) ([2fb19f1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/2fb19f19ffef89a7abc73d1e77734b1a46a99d29)) +* Z index breaking language switcher ([#67](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/67)) ([7179eb1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7179eb16d1125c517362cf953a04659d8d12dd1d)) +* **modal:** Change modal min width to 320px ([#60](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/60)) ([f09ade9](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f09ade9f149d6793404c86829a728b4f1ba7b93a)) +* **tab-menu:** Fix scroll overflow and tighten padding on sm phones ([#62](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/62)) ([ef0cd3d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ef0cd3d8896b34968e3610c2a078842dfe7142bf)) +* **uikit:** Accept float values for Slider ([#4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/4)) ([018d7e5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/018d7e5276e06cf880b2ce8f15f6eaa10e47f236)) + + +### Features + +* **colors:** Add card gradients to colors theme ([#61](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/61)) ([4c7a8ac](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/4c7a8acfb328b80d203ba39eccac92dbf64ca674)) +* **menu:** Add support for top level tags on accordion ([#84](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/84)) ([a15257b](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a15257ba0460d116bfeaa5ffdad1b9e2c20b4872)) +* **menu-status:** Add optional menu item 'status' property ([#29](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/29)) ([65f7e02](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/65f7e026345d145b61d43864699df3c1aa319446)) +* **modal-bg:** Add overflow hidden prop to Modal container and update storybook ([#82](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/82)) ([2233499](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/22334997bf9dde0dcfb551bc26e78a3a92c8e5db)) +* **progress:** Scale ([#79](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/79)) ([1adc8f2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/1adc8f255af8b0d61ab3f847468de36667385af6)) +* **svgs:** Add latest icons to uiki ([#23](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/23)) ([f2c218e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f2c218e270ed8c351184fedf8ef5d7edd9439176)) +* **uikit:** Dropdown color ([#52](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/52)) ([52aae47](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/52aae470bc0067f5ac130df3bdb562c2911cb5cc)) +* **uikit:** Icons ([#40](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/40)) ([6aab674](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6aab674e7f304439cc1f2fe3754aa8f697cc3efd)) +* **uikit:** Icons ([#41](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/41)) ([ff80fbe](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ff80fbe940e0afd54ecb2be8a08a241109dde185)) +* **uikit:** Prediction icons ([#87](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/87)) ([25b03ce](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/25b03ce2eb2bab14fc48cd8d8b5de212e12e3ee4)) +* Add card header variants ([#34](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/34)) ([079e3f2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/079e3f2cf5536aec5bb402af534c2a05723a3cb3)) +* Add expandable buttons ([#35](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/35)) ([0790f3e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0790f3ed241acbd0236c8c134579efaa8a5c457b)) +* Add left position for card ribbon ([#68](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/68)) ([0edaf8e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0edaf8e7a1dfa76be1fa858d3e534471a533b512)) +* Add minWidth and headerBackground props to Modal ([#26](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/26)) ([ba5d231](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ba5d231ce8c9d9f39b507befa7dbbf731bac0b26)) +* Add Tune icon ([#54](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/54)) ([54702ac](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/54702ac31f6ff7ea0eeb7483363841eb0a2262d6)) +* Add VisibilityOn and VisibilityOff icons ([#81](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/81)) ([6635681](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6635681402de7c43fa429808a46b733fb415ac5f)) +* Refresh icon ([#27](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/27)) ([60d9b34](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/60d9b34fbbd871d678c1836ff7ab924a4b301193)) +* Stepper ([#42](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/42)) ([8b1b72e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8b1b72e00bcf012df258becd1048770af2498221)) + + + + + +## [0.29.4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.29.3...@pancakeswap-libs/uikit@0.29.4) (2021-05-06) + + +### Bug Fixes + +* Copy clipboard on mobile devices ([#2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/2)) ([a64bfd8](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a64bfd8b998f9ab9ee4daac9b42fa8c7a7eb53a7)) + + + + + +## [0.29.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.29.2...@pancakeswap-libs/uikit@0.29.3) (2021-05-03) + +**Note:** Version bump only for package @pancakeswap-libs/uikit + + + + + +## [0.29.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.29.1...@pancakeswap-libs/uikit@0.29.2) (2021-04-30) + + +### Bug Fixes + +* Tooltip on hover disappear immediately when mouse leaves target element ([#90](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/90)) ([97642eb](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/97642eb9f5b9d58a23107e692219362c83711917)) + + + + + +## [0.29.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.29.0...@pancakeswap-libs/uikit@0.29.1) (2021-04-29) + + +### Bug Fixes + +* **card-ribbon:** Add z-index value to ribbon and spread props to improve flexibility of component ([#88](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/88)) ([2fb19f1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/2fb19f19ffef89a7abc73d1e77734b1a46a99d29)) + + + + + +# [0.29.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.28.1...@pancakeswap-libs/uikit@0.29.0) (2021-04-28) + + +### Features + +* **uikit:** Prediction icons ([#87](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/87)) ([25b03ce](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/25b03ce2eb2bab14fc48cd8d8b5de212e12e3ee4)) + + + + + +## [0.28.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.28.0...@pancakeswap-libs/uikit@0.28.1) (2021-04-27) + +**Note:** Version bump only for package @pancakeswap-libs/uikit + + + + + +# [0.28.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.27.1...@pancakeswap-libs/uikit@0.28.0) (2021-04-23) + + +### Bug Fixes + +* Accordion menu not showing new result when children changed ([#77](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/77)) ([57ff149](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/57ff1493987c0928d7d9f3cf04fc013331f65ab5)) + + +### Features + +* **menu:** Add support for top level tags on accordion ([#84](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/84)) ([a15257b](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/a15257ba0460d116bfeaa5ffdad1b9e2c20b4872)) + + + + + +## [0.27.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.27.0...@pancakeswap-libs/uikit@0.27.1) (2021-04-22) + +**Note:** Version bump only for package @pancakeswap-libs/uikit + + + + + +# [0.27.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.26.0...@pancakeswap-libs/uikit@0.27.0) (2021-04-22) + + +### Features + +* **modal-bg:** Add overflow hidden prop to Modal container and update storybook ([#82](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/82)) ([2233499](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/22334997bf9dde0dcfb551bc26e78a3a92c8e5db)) +* Add VisibilityOn and VisibilityOff icons ([#81](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/81)) ([6635681](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6635681402de7c43fa429808a46b733fb415ac5f)) + + + + + +# [0.26.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.25.3...@pancakeswap-libs/uikit@0.26.0) (2021-04-20) + + +### Features + +* **progress:** Scale ([#79](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/79)) ([1adc8f2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/1adc8f255af8b0d61ab3f847468de36667385af6)) + + + + + +## [0.25.3](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.25.2...@pancakeswap-libs/uikit@0.25.3) (2021-04-15) + + +### Bug Fixes + +* Make BalanceInputt a type="number" ([#74](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/74)) ([e6e6915](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/e6e69151a79c35f9c736b1fb996cebb99ce526fc)) + + + + + +## [0.25.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.25.1...@pancakeswap-libs/uikit@0.25.2) (2021-04-15) + + +### Bug Fixes + +* Stepper layout ([#73](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/73)) ([6899561](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6899561397a065e625b9ea2461f5d1a7b328fa3a)) + + + + + +## [0.25.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.25.0...@pancakeswap-libs/uikit@0.25.1) (2021-04-15) + +**Note:** Version bump only for package @pancakeswap-libs/uikit + + + + + +# [0.25.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.24.1...@pancakeswap-libs/uikit@0.25.0) (2021-04-14) + + +### Bug Fixes + +* Theme config key name ([#71](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/71)) ([d55e4bc](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/d55e4bc76486d9c04df62b7e1359b394a8b89dd8)) + + + + + +## [0.24.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.24.0...@pancakeswap-libs/uikit@0.24.1) (2021-04-14) + + +### Bug Fixes + +* Add z-index 10 to StyledTooltip ([#70](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/70)) ([24941ff](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/24941ff7234e4ad89a4fa0c10c85e2f73e8f72aa)) + + + + + +# [0.24.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.23.2...@pancakeswap-libs/uikit@0.24.0) (2021-04-13) + + +### Bug Fixes + +* :fire: UI updates: button click animation, menu closing fix, men… ([#63](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/63)) ([3d9ba48](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/3d9ba489f642939cfdf54d6939c0fdd7309ed86b)) +* Z index breaking language switcher ([#67](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/67)) ([7179eb1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7179eb16d1125c517362cf953a04659d8d12dd1d)) + + +### Features + +* **colors:** Add card gradients to colors theme ([#61](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/61)) ([4c7a8ac](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/4c7a8acfb328b80d203ba39eccac92dbf64ca674)) + + + + + +## [0.23.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.23.1...@pancakeswap-libs/uikit@0.23.2) (2021-04-12) + + +### Bug Fixes + +* Stepper alignement ([#69](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/69)) ([25df26a](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/25df26a9c9e6668c4e0ccd8171df6f748b41dccf)) + + + + + +## [0.23.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.23.0...@pancakeswap-libs/uikit@0.23.1) (2021-04-12) + +**Note:** Version bump only for package @pancakeswap-libs/uikit + + + + + +# [0.23.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.22.2...@pancakeswap-libs/uikit@0.23.0) (2021-04-12) + + +### Bug Fixes + +* **tab-menu:** Fix scroll overflow and tighten padding on sm phones ([#62](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/62)) ([ef0cd3d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ef0cd3d8896b34968e3610c2a078842dfe7142bf)) + + +### Features + +* Add left position for card ribbon ([#68](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/68)) ([0edaf8e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0edaf8e7a1dfa76be1fa858d3e534471a533b512)) + + + + + +## [0.22.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.22.1...@pancakeswap-libs/uikit@0.22.2) (2021-04-11) + + +### Bug Fixes + +* Stepper connector visibility ([#66](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/66)) ([629be7b](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/629be7b33cc3c7d95499ca67b7a175a29f3f7225)) + + + + + +## [0.22.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.22.0...@pancakeswap-libs/uikit@0.22.1) (2021-04-10) + + +### Bug Fixes + +* **modal:** Change modal min width to 320px ([#60](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/60)) ([f09ade9](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f09ade9f149d6793404c86829a728b4f1ba7b93a)) +* Accordion menu stuck at active state ([#57](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/57)) ([f9f5162](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f9f5162f269a27b375943db4b87850c6d8998d3d)) +* React dom failure when passing unknown props to child component ([#49](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/49)) ([e3c0272](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/e3c02729bb5c1391d6179a7da6c38bdee6f741bf)) + + + + + +# [0.22.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.21.0...@pancakeswap-libs/uikit@0.22.0) (2021-04-07) + + +### Features + +* Add Tune icon ([#54](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/54)) ([54702ac](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/54702ac31f6ff7ea0eeb7483363841eb0a2262d6)) + + + + + +# [0.21.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.20.1...@pancakeswap-libs/uikit@0.21.0) (2021-04-06) + + +### Bug Fixes + +* Included setupTests.js and updated snap tests ([#50](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/50)) ([b6ab0ee](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/b6ab0ee48e82c8ac88b288e1f790e1c91babb93d)) + + +### Features + +* **uikit:** Dropdown color ([#52](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/52)) ([52aae47](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/52aae470bc0067f5ac130df3bdb562c2911cb5cc)) + + + + + +## [0.20.1](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.20.0...@pancakeswap-libs/uikit@0.20.1) (2021-04-02) + +**Note:** Version bump only for package @pancakeswap-libs/uikit + + + + + +# [0.20.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.19.0...@pancakeswap-libs/uikit@0.20.0) (2021-04-02) + + +### Bug Fixes + +* Set panel z index to 0 on desktop ([#45](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/45)) ([6cde36e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6cde36ee73b2075de85ef809bed3f959e46de6e2)) + + +### Features + +* Stepper ([#42](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/42)) ([8b1b72e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8b1b72e00bcf012df258becd1048770af2498221)) + + + + + +# [0.19.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.18.0...@pancakeswap-libs/uikit@0.19.0) (2021-03-31) + + +### Bug Fixes + +* Modal border inner color use theme value ([#37](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/37)) ([8e5c9c4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/8e5c9c409b38059f70f6746bc769f4eced009660)) + + +### Features + +* **uikit:** Icons ([#40](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/40)) ([6aab674](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/6aab674e7f304439cc1f2fe3754aa8f697cc3efd)) +* **uikit:** Icons ([#41](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/41)) ([ff80fbe](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ff80fbe940e0afd54ecb2be8a08a241109dde185)) + + + + + +# [0.18.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.17.0...@pancakeswap-libs/uikit@0.18.0) (2021-03-30) + + +### Bug Fixes + +* Button loading state ([#30](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/30)) ([7fff56d](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/7fff56d022e06a911525f6163de1e4b5adfab9c7)) +* Put shadow under the bunny head of slider component ([#25](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/25)) ([92da5b5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/92da5b5cf746c1a3e10d05c3e5344943a926d943)) +* Slider step label position ([#36](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/36)) ([060b835](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/060b835c68d67d83575f3f8783c2610133798aea)) + + +### Features + +* Add card header variants ([#34](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/34)) ([079e3f2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/079e3f2cf5536aec5bb402af534c2a05723a3cb3)) +* Add expandable buttons ([#35](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/35)) ([0790f3e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/0790f3ed241acbd0236c8c134579efaa8a5c457b)) +* **menu-status:** Add optional menu item 'status' property ([#29](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/29)) ([65f7e02](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/65f7e026345d145b61d43864699df3c1aa319446)) + + + + + +# [0.17.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.16.0...@pancakeswap-libs/uikit@0.17.0) (2021-03-24) + + +### Features + +* Add minWidth and headerBackground props to Modal ([#26](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/26)) ([ba5d231](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/ba5d231ce8c9d9f39b507befa7dbbf731bac0b26)) +* Refresh icon ([#27](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/27)) ([60d9b34](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/60d9b34fbbd871d678c1836ff7ab924a4b301193)) + + + + + +# [0.16.0](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.15.2...@pancakeswap-libs/uikit@0.16.0) (2021-03-22) + + +### Features + +* **svgs:** Add latest icons to uiki ([#23](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/23)) ([f2c218e](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/f2c218e270ed8c351184fedf8ef5d7edd9439176)) + + + + + +## [0.15.2](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/compare/@pancakeswap-libs/uikit@0.15.2...@pancakeswap-libs/uikit@0.15.2) (2021-03-19) + + +### Bug Fixes + +* **uikit:** Accept float values for Slider ([#4](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/issues/4)) ([018d7e5](https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit/commit/018d7e5276e06cf880b2ce8f15f6eaa10e47f236)) diff --git a/packages/uikit/README.md b/packages/uikit/README.md new file mode 100644 index 000000000..c19ce2704 --- /dev/null +++ b/packages/uikit/README.md @@ -0,0 +1,43 @@ +# 🥞 Pancake UIkit + +[![Version](https://img.shields.io/npm/v/@pancakeswap/uikit)](https://www.npmjs.com/package/@pancakeswap/uikit) [![Size](https://img.shields.io/bundlephobia/min/@pancakeswap/uikit)](https://www.npmjs.com/package/@pancakeswap/uikit) + +Pancake UIkit is a set of React components and hooks used to build pages on Pancake's apps. It also contains a theme file for dark and light mode. + +## Install + +`yarn add @pancakeswap/uikit` + +***Note**: In case you want to use the older version of the Pancake UIkit, you should install @pancakeswap-libs/uikit, instead, but we recommend using the latest version of the UIkit.* + + +## Setup + +### Theme + +Before using Pancake UIkit, you need to provide the theme file to styled-component. + +``` +import { ThemeProvider } from 'styled-components' +import { light, dark } from '@pancakeswap/uikit' +... +... +``` + +### Reset + +A reset CSS is available as a global styled component. + +``` +import { ResetCSS } from '@pancakeswap/uikit' +... + +``` + +### Types + +This project is built with Typescript and export all the relevant types. + +## How to use the UIkit + +If you want to use components from the UIkit, check the [Storybook documentation](https://pancakeswap.github.io/pancake-uikit/) diff --git a/packages/uikit/babel.config.js b/packages/uikit/babel.config.js new file mode 100644 index 000000000..d93a7a11e --- /dev/null +++ b/packages/uikit/babel.config.js @@ -0,0 +1,4 @@ +module.exports = { + presets: ["@babel/preset-env"], + plugins: ["styled-components"], +}; diff --git a/packages/uikit/jest.config.js b/packages/uikit/jest.config.js new file mode 100644 index 000000000..5c352bee2 --- /dev/null +++ b/packages/uikit/jest.config.js @@ -0,0 +1,9 @@ +module.exports = { + preset: "ts-jest", + testPathIgnorePatterns: ["/node_modules/", "/dist/", "/.storybook/"], + setupFilesAfterEnv: ["/src/setupTests.js"], + transform: { + "\\.(js|jsx)?$": "babel-jest", + "^.+\\.svg$": "/svgTransform.js", + }, +}; diff --git a/packages/uikit/package.json b/packages/uikit/package.json new file mode 100644 index 000000000..b637708c0 --- /dev/null +++ b/packages/uikit/package.json @@ -0,0 +1,74 @@ +{ + "name": "@pancakeswap/uikit", + "version": "0.63.1", + "description": "Set of UI components for pancake projects", + "main": "dist/index.cjs.js", + "module": "dist/index.esm.js", + "types": "dist/index.d.ts", + "files": [ + "dist" + ], + "repository": "https://github.com/pancakeswap/pancake-toolkit/tree/master/packages/pancake-uikit", + "license": "MIT", + "scripts": { + "start": "yarn storybook", + "build": "rm -rf ./dist && rollup -c && tsc -d --emitDeclarationOnly --declarationDir dist", + "watch": "rollup -c -w", + "lint": "eslint 'src/**/*.{js,jsx,ts,tsx}'", + "format:check": "prettier --check --loglevel error 'src/**/*.{js,jsx,ts,tsx}'", + "format:write": "prettier --write 'src/**/*.{js,jsx,ts,tsx}'", + "storybook": "start-storybook -p 6006", + "storybook:build": "build-storybook", + "test": "jest", + "prepublishOnly": "yarn build" + }, + "jest": { + "setupFilesAfterEnv": [ + "/src/setupTests.js" + ] + }, + "devDependencies": { + "@babel/core": "^7.14.3", + "@babel/preset-env": "^7.14.4", + "@testing-library/jest-dom": "^5.11.6", + "@testing-library/react": "^11.2.5", + "@types/lodash": "^4.14.168", + "@types/react-dom": "^17.0.5", + "jest-styled-components": "^7.0.3", + "react": "^17.0.1", + "react-dom": "^17.0.1", + "react-router-dom": "^5.2.0", + "styled-components": "^5.2.0", + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-typescript": "^8.2.1", + "@rollup/plugin-url": "^6.0.0", + "@storybook/addon-a11y": "^6.3.6", + "@storybook/addon-actions": "^6.3.6", + "@storybook/addon-essentials": "^6.3.6", + "@storybook/addon-links": "^6.3.6", + "@storybook/react": "^6.3.6", + "@types/react-router-dom": "^5.1.7", + "babel-loader": "^8.2.2", + "babel-plugin-styled-components": "^1.12.0", + "rollup": "^2.47.0", + "themeprovider-storybook": "^1.7.2", + "ts-jest": "^26.5.6", + "tslib": "^2.2.0", + "react-is": "^17.0.2" + }, + "peerDependencies": { + "react": "^17.0.2", + "react-dom": "^17.0.2", + "styled-components": "^5.2.3" + }, + "dependencies": { + "@popperjs/core": "^2.9.2", + "@types/styled-system": "^5.1.10", + "lodash": "^4.17.20", + "react-popper": "^2.2.5", + "styled-system": "^5.1.5" + }, + "publishConfig": { + "access": "public" + } +} diff --git a/packages/uikit/rollup.config.js b/packages/uikit/rollup.config.js new file mode 100644 index 000000000..2d8e7c2dc --- /dev/null +++ b/packages/uikit/rollup.config.js @@ -0,0 +1,12 @@ +import typescript from "@rollup/plugin-typescript"; +import url from "@rollup/plugin-url"; +import pkg from "./package.json"; + +export default { + input: "src/index.ts", + output: [ + { file: pkg.main, format: "cjs" }, + { file: pkg.module, format: "es" }, + ], + plugins: [url(), typescript()], +}; diff --git a/packages/uikit/src/ResetCSS.tsx b/packages/uikit/src/ResetCSS.tsx new file mode 100644 index 000000000..34b736faf --- /dev/null +++ b/packages/uikit/src/ResetCSS.tsx @@ -0,0 +1,117 @@ +import { createGlobalStyle } from "styled-components"; + +const ResetCSS = createGlobalStyle` + /* prettier-ignore */ + html, body, div, span, applet, object, iframe, + h1, h2, h3, h4, h5, h6, p, blockquote, pre, + a, abbr, acronym, address, big, cite, code, + del, dfn, em, img, ins, kbd, q, s, samp, + small, strike, strong, sub, sup, tt, var, + b, u, i, center, + dl, dt, dd, ol, ul, li, + fieldset, form, label, legend, + table, caption, tbody, tfoot, thead, tr, th, td, + article, aside, canvas, details, embed, + figure, figcaption, footer, header, hgroup, + menu, nav, output, ruby, section, summary, + time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + vertical-align: baseline; + } + /* HTML5 display-role reset for older browsers */ + /* prettier-ignore */ + article, aside, details, figcaption, figure, + footer, header, hgroup, menu, nav, section { + display: block; + } + body { + line-height: 1; + font-size: 16px; + } + ol, + ul { + list-style: disc; + list-style-position: inside; + } + blockquote, + q { + quotes: none; + } + blockquote:before, + blockquote:after, + q:before, + q:after { + content: ""; + content: none; + } + table { + border-collapse: collapse; + border-spacing: 0; + } + a { + color: inherit; + text-decoration: none; + } + [role="button"] { + cursor: pointer; + } + *, + *::before, + *::after { + box-sizing: border-box; + } + * { + font-family: 'Kanit', sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + } + + /* Number */ + input::-webkit-outer-spin-button, + input::-webkit-inner-spin-button { + -webkit-appearance: none; + margin: 0; + } + input[type=number] { + -moz-appearance: textfield; + } + + /* Scrollbar */ + ::-webkit-scrollbar { + width: 8px; + } + ::-webkit-scrollbar-thumb { + background: ${({ theme }) => theme.colors.textSubtle}; + border-radius: 8px; + } + ::-webkit-scrollbar-track { + box-shadow: inset 0 0 5px ${({ theme }) => theme.colors.input}; + border-radius: 10px; + } + + /* Slider */ + input[type=range] { + -webkit-appearance: none; /* Hides the slider so that custom slider can be made */ + width: 100%; /* Specific width is required for Firefox. */ + background: transparent; /* Otherwise white in Chrome */ + } + input[type=range]::-webkit-slider-thumb { + -webkit-appearance: none; + } + input[type=range]:focus { + outline: none; /* Removes the blue border. You should probably do some kind of focus styling for accessibility reasons though. */ + } + input[type=range]::-ms-track { + width: 100%; + cursor: pointer; + /* Hides the slider so custom styles can be added */ + background: transparent; + border-color: transparent; + color: transparent; + } +`; + +export default ResetCSS; diff --git a/packages/uikit/src/__tests__/components/alert.test.tsx b/packages/uikit/src/__tests__/components/alert.test.tsx new file mode 100644 index 000000000..437d3a263 --- /dev/null +++ b/packages/uikit/src/__tests__/components/alert.test.tsx @@ -0,0 +1,102 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import { Alert } from "../../components/Alert"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(Description); + + expect(asFragment()).toMatchInlineSnapshot(` + + .c3 { + -webkit-align-self: center; + -ms-flex-item-align: center; + align-self: center; + fill: currentColor; + -webkit-flex-shrink: 0; + -ms-flex-negative: 0; + flex-shrink: 0; + } + + .c5 { + color: #280D5F; + font-size: 16px; + font-weight: 600; + line-height: 1.5; + } + + .c6 { + color: #280D5F; + font-size: 16px; + font-weight: 400; + line-height: 1.5; + } + + .c0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + } + + .c2 { + background-color: #7645D9; + border-radius: 16px 0 0 16px; + color: #FFFFFF; + padding: 12px; + } + + .c4 { + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + padding-bottom: 12px; + padding-left: 12px; + padding-right: 12px; + padding-top: 12px; + } + + .c1 { + position: relative; + background-color: #FFFFFF; + border-radius: 16px; + box-shadow: 0px 20px 36px -8px rgba(14,14,44,0.1),0px 1px 1px rgba(0,0,0,0.05); + } + +
+
+ + + +
+
+
+ Alert title +
+

+ Description +

+
+
+
+ `); +}); diff --git a/packages/uikit/src/__tests__/components/balanceinput.test.tsx b/packages/uikit/src/__tests__/components/balanceinput.test.tsx new file mode 100644 index 000000000..241cc04ec --- /dev/null +++ b/packages/uikit/src/__tests__/components/balanceinput.test.tsx @@ -0,0 +1,608 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import BalanceInput from "../../components/BalanceInput/BalanceInput"; + +const handleChange = jest.fn(); + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(); + expect(asFragment()).toMatchInlineSnapshot(` + + .c1 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: end; + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; + } + + .c2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + } + + .c5 { + color: #7A6EAA; + font-size: 12px; + font-weight: 400; + line-height: 1.5; + font-size: 12px; + text-align: right; + } + + .c3 { + background-color: #eeeaf4; + border: 0; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + color: #280D5F; + display: block; + font-size: 16px; + height: 40px; + outline: 0; + padding: 0 16px; + width: 100%; + border: 1px solid #d7caec; + } + + .c3::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c3::-moz-placeholder { + color: #7A6EAA; + } + + .c3:-ms-input-placeholder { + color: #7A6EAA; + } + + .c3::placeholder { + color: #7A6EAA; + } + + .c3:disabled { + background-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + .c3:focus:not(:disabled) { + box-shadow: 0px 0px 0px 1px #7645D9,0px 0px 0px 4px rgba(118,69,217,0.6); + } + + .c0 { + background-color: #eeeaf4; + border: 1px solid #d7caec; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + padding: 8px 16px; + } + + .c4 { + background: transparent; + border-radius: 0; + box-shadow: none; + padding-left: 0; + padding-right: 0; + text-align: right; + border: none; + } + + .c4::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c4::-moz-placeholder { + color: #7A6EAA; + } + + .c4:-ms-input-placeholder { + color: #7A6EAA; + } + + .c4::placeholder { + color: #7A6EAA; + } + + .c4:focus:not(:disabled) { + box-shadow: none; + } + +
+
+
+
+ +
+
+ 15 USD +
+
+
+
+
+ `); +}); + +it("renders correctly with unit prop", () => { + const { asFragment } = renderWithTheme( + + ); + expect(asFragment()).toMatchInlineSnapshot(` + + .c1 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: end; + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; + } + + .c2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + } + + .c5 { + color: #280D5F; + font-size: 16px; + font-weight: 400; + line-height: 1.5; + } + + .c7 { + color: #7A6EAA; + font-size: 12px; + font-weight: 400; + line-height: 1.5; + font-size: 12px; + text-align: right; + } + + .c3 { + background-color: #eeeaf4; + border: 0; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + color: #280D5F; + display: block; + font-size: 16px; + height: 40px; + outline: 0; + padding: 0 16px; + width: 100%; + border: 1px solid #d7caec; + } + + .c3::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c3::-moz-placeholder { + color: #7A6EAA; + } + + .c3:-ms-input-placeholder { + color: #7A6EAA; + } + + .c3::placeholder { + color: #7A6EAA; + } + + .c3:disabled { + background-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + .c3:focus:not(:disabled) { + box-shadow: 0px 0px 0px 1px #7645D9,0px 0px 0px 4px rgba(118,69,217,0.6); + } + + .c6 { + margin-left: 4px; + text-align: right; + color: #7A6EAA; + white-space: nowrap; + } + + .c0 { + background-color: #eeeaf4; + border: 1px solid #d7caec; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + padding: 8px 16px; + } + + .c4 { + background: transparent; + border-radius: 0; + box-shadow: none; + padding-left: 0; + padding-right: 0; + text-align: right; + border: none; + } + + .c4::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c4::-moz-placeholder { + color: #7A6EAA; + } + + .c4:-ms-input-placeholder { + color: #7A6EAA; + } + + .c4::placeholder { + color: #7A6EAA; + } + + .c4:focus:not(:disabled) { + box-shadow: none; + } + +
+
+
+
+ +
+ CAKE +
+
+
+ 15 USD +
+
+
+
+
+ `); +}); + +it("renders correctly with unit prop and switchEditingUnits", () => { + const { asFragment } = renderWithTheme( + + ); + expect(asFragment()).toMatchInlineSnapshot(` + + .c8 { + padding-left: 12px; + } + + .c1 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: end; + -webkit-justify-content: flex-end; + -ms-flex-pack: end; + justify-content: flex-end; + } + + .c2 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + } + + .c12 { + -webkit-align-self: center; + -ms-flex-item-align: center; + align-self: center; + fill: #7A6EAA; + -webkit-flex-shrink: 0; + -ms-flex-negative: 0; + flex-shrink: 0; + } + + .c5 { + color: #280D5F; + font-size: 16px; + font-weight: 400; + line-height: 1.5; + } + + .c7 { + color: #7A6EAA; + font-size: 12px; + font-weight: 400; + line-height: 1.5; + font-size: 12px; + text-align: right; + } + + .c3 { + background-color: #eeeaf4; + border: 0; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + color: #280D5F; + display: block; + font-size: 16px; + height: 40px; + outline: 0; + padding: 0 16px; + width: 100%; + border: 1px solid #d7caec; + } + + .c3::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c3::-moz-placeholder { + color: #7A6EAA; + } + + .c3:-ms-input-placeholder { + color: #7A6EAA; + } + + .c3::placeholder { + color: #7A6EAA; + } + + .c3:disabled { + background-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + .c3:focus:not(:disabled) { + box-shadow: 0px 0px 0px 1px #7645D9,0px 0px 0px 4px rgba(118,69,217,0.6); + } + + .c9 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + border: 0; + border-radius: 16px; + box-shadow: 0px -1px 0px 0px rgba(14,14,44,0.4) inset; + cursor: pointer; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + font-family: inherit; + font-size: 16px; + font-weight: 600; + -webkit-box-pack: center; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-letter-spacing: 0.03em; + -moz-letter-spacing: 0.03em; + -ms-letter-spacing: 0.03em; + letter-spacing: 0.03em; + line-height: 1; + opacity: 1; + outline: 0; + -webkit-transition: background-color 0.2s,opacity 0.2s; + transition: background-color 0.2s,opacity 0.2s; + height: 32px; + padding: 0 16px; + background-color: transparent; + color: #1FC7D4; + box-shadow: none; + } + + .c9:hover:not(:disabled):not(.pancake-button--disabled):not(.pancake-button--disabled):not(:active) { + opacity: 0.65; + } + + .c9:active:not(:disabled):not(.pancake-button--disabled):not(.pancake-button--disabled) { + opacity: 0.85; + -webkit-transform: translateY(1px); + -ms-transform: translateY(1px); + transform: translateY(1px); + box-shadow: none; + } + + .c9:disabled, + .c9.pancake-button--disabled { + background-color: #E9EAEB; + border-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + .c10 { + padding: 0; + width: 32px; + } + + .c11 { + width: 16px; + } + + .c6 { + margin-left: 4px; + text-align: right; + color: #7A6EAA; + white-space: nowrap; + } + + .c0 { + background-color: #eeeaf4; + border: 1px solid #d7caec; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + padding: 8px 16px; + } + + .c4 { + background: transparent; + border-radius: 0; + box-shadow: none; + padding-left: 0; + padding-right: 0; + text-align: right; + border: none; + } + + .c4::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c4::-moz-placeholder { + color: #7A6EAA; + } + + .c4:-ms-input-placeholder { + color: #7A6EAA; + } + + .c4::placeholder { + color: #7A6EAA; + } + + .c4:focus:not(:disabled) { + box-shadow: none; + } + +
+
+
+
+ +
+ CAKE +
+
+
+ 15 USD +
+
+
+ +
+
+
+
+ `); +}); diff --git a/packages/uikit/src/__tests__/components/breadcrumbs.test.tsx b/packages/uikit/src/__tests__/components/breadcrumbs.test.tsx new file mode 100644 index 000000000..718ecc73b --- /dev/null +++ b/packages/uikit/src/__tests__/components/breadcrumbs.test.tsx @@ -0,0 +1,37 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Breadcrumbs from "../../components/Breadcrumbs/Breadcrumbs"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(Link); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + list-style-type: none; + } + + .c0 a { + color: #1FC7D4; + } + + .c0 a:hover { + color: #53DEE9; + } + +
    + + `); +}); diff --git a/packages/uikit/src/__tests__/components/button.test.tsx b/packages/uikit/src/__tests__/components/button.test.tsx new file mode 100644 index 000000000..ee28e9ff4 --- /dev/null +++ b/packages/uikit/src/__tests__/components/button.test.tsx @@ -0,0 +1,73 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Button from "../../components/Button/Button"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + border: 0; + border-radius: 16px; + box-shadow: 0px -1px 0px 0px rgba(14,14,44,0.4) inset; + cursor: pointer; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + font-family: inherit; + font-size: 16px; + font-weight: 600; + -webkit-box-pack: center; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-letter-spacing: 0.03em; + -moz-letter-spacing: 0.03em; + -ms-letter-spacing: 0.03em; + letter-spacing: 0.03em; + line-height: 1; + opacity: 1; + outline: 0; + -webkit-transition: background-color 0.2s,opacity 0.2s; + transition: background-color 0.2s,opacity 0.2s; + height: 48px; + padding: 0 24px; + background-color: #1FC7D4; + color: white; + } + + .c0:hover:not(:disabled):not(.pancake-button--disabled):not(.pancake-button--disabled):not(:active) { + opacity: 0.65; + } + + .c0:active:not(:disabled):not(.pancake-button--disabled):not(.pancake-button--disabled) { + opacity: 0.85; + -webkit-transform: translateY(1px); + -ms-transform: translateY(1px); + transform: translateY(1px); + box-shadow: none; + } + + .c0:disabled, + .c0.pancake-button--disabled { + background-color: #E9EAEB; + border-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + + + `); +}); diff --git a/packages/uikit/src/__tests__/components/buttonmenu.test.tsx b/packages/uikit/src/__tests__/components/buttonmenu.test.tsx new file mode 100644 index 000000000..95f2f93d7 --- /dev/null +++ b/packages/uikit/src/__tests__/components/buttonmenu.test.tsx @@ -0,0 +1,128 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import ButtonMenu from "../../components/ButtonMenu/ButtonMenu"; +import ButtonMenuItem from "../../components/ButtonMenu/ButtonMenuItem"; + +const handleClick = jest.fn(); + +it("renders correctly", () => { + const { asFragment } = renderWithTheme( + + Item 1 + Item 2 + + ); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + background-color: #EFF4F5; + border-radius: 16px; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + border: 1px solid #E9EAEB; + width: auto; + } + + .c0 > button, + .c0 > a { + -webkit-flex: auto; + -ms-flex: auto; + flex: auto; + } + + .c0 > button + button, + .c0 > a + a { + margin-left: 2px; + } + + .c0 > button, + .c0 a { + box-shadow: none; + } + + .c1 { + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + border: 0; + border-radius: 16px; + box-shadow: 0px -1px 0px 0px rgba(14,14,44,0.4) inset; + cursor: pointer; + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + font-family: inherit; + font-size: 16px; + font-weight: 600; + -webkit-box-pack: center; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-letter-spacing: 0.03em; + -moz-letter-spacing: 0.03em; + -ms-letter-spacing: 0.03em; + letter-spacing: 0.03em; + line-height: 1; + opacity: 1; + outline: 0; + -webkit-transition: background-color 0.2s,opacity 0.2s; + transition: background-color 0.2s,opacity 0.2s; + height: 48px; + padding: 0 24px; + background-color: #1FC7D4; + color: white; + } + + .c1:hover:not(:disabled):not(.pancake-button--disabled):not(.pancake-button--disabled):not(:active) { + opacity: 0.65; + } + + .c1:active:not(:disabled):not(.pancake-button--disabled):not(.pancake-button--disabled) { + opacity: 0.85; + -webkit-transform: translateY(1px); + -ms-transform: translateY(1px); + transform: translateY(1px); + box-shadow: none; + } + + .c1:disabled, + .c1.pancake-button--disabled { + background-color: #E9EAEB; + border-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + .c2 { + background-color: transparent; + color: #1FC7D4; + } + + .c2:hover:not(:disabled):not(:active) { + background-color: transparent; + } + +
    + + +
    +
    + `); +}); diff --git a/packages/uikit/src/__tests__/components/card.test.tsx b/packages/uikit/src/__tests__/components/card.test.tsx new file mode 100644 index 000000000..f3cf81fe0 --- /dev/null +++ b/packages/uikit/src/__tests__/components/card.test.tsx @@ -0,0 +1,72 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import { Card, CardBody, CardHeader, CardFooter } from "../../components/Card"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme( + + Header + Body + Footer + + ); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + background: #E7E3EB; + border-radius: 24px; + color: #280D5F; + overflow: hidden; + position: relative; + padding: 1px 1px 3px 1px; + } + + .c1 { + width: 100%; + height: 100%; + overflow: inherit; + background: #FFFFFF; + border-radius: 24px; + } + + .c3 { + padding: 24px; + } + + .c2 { + background: linear-gradient(111.68deg,#F2ECF2 0%,#E8F2F6 100%); + border-radius: 24px 24px 0 0; + padding: 24px; + } + + .c4 { + border-top: 1px solid #E7E3EB; + padding: 24px; + } + +
    +
    +
    + Header +
    +
    + Body +
    +
    + Footer +
    +
    +
    +
    + `); +}); diff --git a/packages/uikit/src/__tests__/components/checkbox.test.tsx b/packages/uikit/src/__tests__/components/checkbox.test.tsx new file mode 100644 index 000000000..a6c6c8a98 --- /dev/null +++ b/packages/uikit/src/__tests__/components/checkbox.test.tsx @@ -0,0 +1,79 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Checkbox from "../../components/Checkbox/Checkbox"; + +const handleChange = jest.fn(); + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + overflow: hidden; + cursor: pointer; + position: relative; + display: inline-block; + height: 32px; + width: 32px; + vertical-align: middle; + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + border: 0; + border-radius: 8px; + background-color: #eeeaf4; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + } + + .c0:after { + content: ""; + position: absolute; + border-bottom: 2px solid; + border-left: 2px solid; + border-color: transparent; + top: 30%; + left: 0; + right: 0; + width: 50%; + height: 25%; + margin: auto; + -webkit-transform: rotate(-50deg); + -ms-transform: rotate(-50deg); + transform: rotate(-50deg); + -webkit-transition: border-color 0.2s ease-in-out; + transition: border-color 0.2s ease-in-out; + } + + .c0:hover:not(:disabled):not(:checked) { + box-shadow: 0px 0px 0px 1px #7645D9,0px 0px 0px 4px rgba(118,69,217,0.6); + } + + .c0:focus { + outline: none; + box-shadow: 0px 0px 0px 1px #7645D9,0px 0px 0px 4px rgba(118,69,217,0.6); + } + + .c0:checked { + background-color: #31D0AA; + } + + .c0:checked:after { + border-color: white; + } + + .c0:disabled { + cursor: default; + opacity: 0.6; + } + + + + `); +}); diff --git a/packages/uikit/src/__tests__/components/dropdown.test.tsx b/packages/uikit/src/__tests__/components/dropdown.test.tsx new file mode 100644 index 000000000..b8b6add9e --- /dev/null +++ b/packages/uikit/src/__tests__/components/dropdown.test.tsx @@ -0,0 +1,56 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Dropdown from "../../components/Dropdown/Dropdown"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(target} />); + expect(asFragment()).toMatchInlineSnapshot(` + + .c2 { + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + display: none; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + position: absolute; + -webkit-transform: translate(-50%,0); + -ms-transform: translate(-50%,0); + transform: translate(-50%,0); + left: 50%; + bottom: auto; + background-color: #FFFFFF; + box-shadow: 0px 2px 12px -8px rgba(25,19,38,0.1),0px 1px 1px rgba(25,19,38,0.05); + padding: 16px; + max-height: 400px; + overflow-y: auto; + z-index: 10; + border-radius: 4px; + } + + .c0 { + position: relative; + } + + .c0:hover .c1, + .c0:focus-within .c1 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + } + +
    +
    + target +
    +
    +
    + + `); +}); diff --git a/packages/uikit/src/__tests__/components/fallingbunnies.test.tsx b/packages/uikit/src/__tests__/components/fallingbunnies.test.tsx new file mode 100644 index 000000000..344a82355 --- /dev/null +++ b/packages/uikit/src/__tests__/components/fallingbunnies.test.tsx @@ -0,0 +1,127 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import FallingBunnies from "../../components/FallingBunnies/FallingBunnies"; + +beforeEach(() => { + jest.spyOn(global.Math, "random").mockReturnValue(0.5); +}); + +afterEach(() => { + jest.spyOn(global.Math, "random").mockRestore(); +}); + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(); + expect(asFragment()).toMatchInlineSnapshot(` + + .c1 { + -webkit-align-self: center; + -ms-flex-item-align: center; + align-self: center; + fill: #280D5F; + -webkit-flex-shrink: 0; + -ms-flex-negative: 0; + flex-shrink: 0; + } + + .c0 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + position: fixed; + top: 0; + left: 50vw; + -webkit-transform: translate3d(0,-100%,0); + -ms-transform: translate3d(0,-100%,0); + transform: translate3d(0,-100%,0); + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + pointer-events: none; + z-index: 99999; + -webkit-animation-name: dphWuA; + animation-name: dphWuA; + -webkit-animation-duration: 10s; + animation-duration: 10s; + -webkit-animation-timing-function: linear; + animation-timing-function: linear; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-play-state: running; + animation-play-state: running; + } + + .c0:nth-child(5n + 5) { + -webkit-animation-delay: 1.3s; + animation-delay: 1.3s; + } + + .c0:nth-child(3n + 2) { + -webkit-animation-delay: 1.5s; + animation-delay: 1.5s; + } + + .c0:nth-child(2n + 5) { + -webkit-animation-delay: 1.7s; + animation-delay: 1.7s; + } + + .c0:nth-child(3n + 10) { + -webkit-animation-delay: 2.7s; + animation-delay: 2.7s; + } + + .c0:nth-child(7n + 2) { + -webkit-animation-delay: 3.5s; + animation-delay: 3.5s; + } + + .c0:nth-child(4n + 5) { + -webkit-animation-delay: 5.5s; + animation-delay: 5.5s; + } + + .c0:nth-child(3n + 7) { + -webkit-animation-delay: 8s; + animation-delay: 8s; + } + +
    +
    + + + + + + +
    +
    +
    + `); +}); diff --git a/packages/uikit/src/__tests__/components/flex.test.tsx b/packages/uikit/src/__tests__/components/flex.test.tsx new file mode 100644 index 000000000..1de21f9c1 --- /dev/null +++ b/packages/uikit/src/__tests__/components/flex.test.tsx @@ -0,0 +1,23 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Flex from "../../components/Box/Flex"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(flex); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + } + +
    + flex +
    +
    + `); +}); diff --git a/packages/uikit/src/__tests__/components/heading.test.tsx b/packages/uikit/src/__tests__/components/heading.test.tsx new file mode 100644 index 000000000..54802a564 --- /dev/null +++ b/packages/uikit/src/__tests__/components/heading.test.tsx @@ -0,0 +1,36 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Heading from "../../components/Heading/Heading"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(Title); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + color: #280D5F; + font-size: 16px; + font-weight: 600; + line-height: 1.5; + } + + .c1 { + font-size: 20px; + font-weight: 600; + line-height: 1.1; + } + + @media screen and (min-width:968px) { + .c1 { + font-size: 20px; + } + } + +

    + Title +

    +
    + `); +}); diff --git a/packages/uikit/src/__tests__/components/input.test.tsx b/packages/uikit/src/__tests__/components/input.test.tsx new file mode 100644 index 000000000..1cfd55e4f --- /dev/null +++ b/packages/uikit/src/__tests__/components/input.test.tsx @@ -0,0 +1,61 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import Input from "../../components/Input/Input"; + +const handleChange = jest.fn(); + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + background-color: #eeeaf4; + border: 0; + border-radius: 16px; + box-shadow: inset 0px 2px 2px -1px rgba(74,74,104,0.1); + color: #280D5F; + display: block; + font-size: 16px; + height: 40px; + outline: 0; + padding: 0 16px; + width: 100%; + border: 1px solid #d7caec; + } + + .c0::-webkit-input-placeholder { + color: #7A6EAA; + } + + .c0::-moz-placeholder { + color: #7A6EAA; + } + + .c0:-ms-input-placeholder { + color: #7A6EAA; + } + + .c0::placeholder { + color: #7A6EAA; + } + + .c0:disabled { + background-color: #E9EAEB; + box-shadow: none; + color: #BDC2C4; + cursor: not-allowed; + } + + .c0:focus:not(:disabled) { + box-shadow: 0px 0px 0px 1px #7645D9,0px 0px 0px 4px rgba(118,69,217,0.6); + } + + + + `); +}); diff --git a/packages/uikit/src/__tests__/components/layouts.test.tsx b/packages/uikit/src/__tests__/components/layouts.test.tsx new file mode 100644 index 000000000..ff9002e58 --- /dev/null +++ b/packages/uikit/src/__tests__/components/layouts.test.tsx @@ -0,0 +1,99 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import { BaseLayout, CardsLayout } from "../../components/Layouts"; + +it("renders base layout correctly", () => { + const { asFragment } = renderWithTheme(basic layout); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + display: grid; + } + + .c1 { + grid-template-columns: repeat(6,1fr); + grid-gap: 16px; + } + + @media screen and (min-width:576px) { + .c1 { + grid-template-columns: repeat(8,1fr); + grid-gap: 24px; + } + } + + @media screen and (min-width:852px) { + .c1 { + grid-template-columns: repeat(12,1fr); + grid-gap: 24px; + } + } + + @media screen and (min-width:968px) { + .c1 { + grid-template-columns: repeat(12,1fr); + grid-gap: 32px; + } + } + +
    + basic layout +
    +
    + `); +}); + +it("renders card layout correctly", () => { + const { asFragment } = renderWithTheme(cards layout); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + display: grid; + } + + .c1 { + grid-template-columns: repeat(6,1fr); + grid-gap: 16px; + } + + .c2 > div { + grid-column: span 6; + } + + @media screen and (min-width:576px) { + .c1 { + grid-template-columns: repeat(8,1fr); + grid-gap: 24px; + } + } + + @media screen and (min-width:852px) { + .c1 { + grid-template-columns: repeat(12,1fr); + grid-gap: 24px; + } + } + + @media screen and (min-width:968px) { + .c1 { + grid-template-columns: repeat(12,1fr); + grid-gap: 32px; + } + } + + @media screen and (min-width:576px) { + .c2 > div { + grid-column: span 4; + } + } + +
    + cards layout +
    +
    + `); +}); diff --git a/packages/uikit/src/__tests__/components/link.test.tsx b/packages/uikit/src/__tests__/components/link.test.tsx new file mode 100644 index 000000000..7ad6a94bb --- /dev/null +++ b/packages/uikit/src/__tests__/components/link.test.tsx @@ -0,0 +1,109 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import { Link, LinkExternal } from "../../components/Link"; + +it("renders link correctly", () => { + const { asFragment } = renderWithTheme(Link); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + color: #1FC7D4; + font-size: 16px; + font-weight: 600; + line-height: 1.5; + } + + .c1 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + } + + .c1:hover { + -webkit-text-decoration: underline; + text-decoration: underline; + } + + + Link + + + `); +}); + +it("renders link external link correctly", () => { + const { asFragment } = renderWithTheme(Link); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + color: #1FC7D4; + font-size: 16px; + font-weight: 600; + line-height: 1.5; + } + + .c1 { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: -webkit-fit-content; + width: -moz-fit-content; + width: fit-content; + } + + .c1:hover { + -webkit-text-decoration: underline; + text-decoration: underline; + } + + .c2 { + -webkit-align-self: center; + -ms-flex-item-align: center; + align-self: center; + fill: #1FC7D4; + -webkit-flex-shrink: 0; + -ms-flex-negative: 0; + flex-shrink: 0; + margin-left: 4px; + } + + + Link + + + + + + `); +}); diff --git a/packages/uikit/src/__tests__/components/notificationdot.test.tsx b/packages/uikit/src/__tests__/components/notificationdot.test.tsx new file mode 100644 index 000000000..e4ff8b558 --- /dev/null +++ b/packages/uikit/src/__tests__/components/notificationdot.test.tsx @@ -0,0 +1,45 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import NotificationDot from "../../components/NotificationDot/NotificationDot"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme( + +
    + + ); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + display: -webkit-inline-box; + display: -webkit-inline-flex; + display: -ms-inline-flexbox; + display: inline-flex; + position: relative; + } + + .c1 { + display: none; + position: absolute; + top: 0; + right: 0; + width: 10px; + height: 10px; + pointer-events: none; + border: 2px solid #FFFFFF; + border-radius: 50%; + background-color: #ED4B9E; + } + + +
    + + + + `); +}); diff --git a/packages/uikit/src/__tests__/components/overlay.test.tsx b/packages/uikit/src/__tests__/components/overlay.test.tsx new file mode 100644 index 000000000..81e4dc3e2 --- /dev/null +++ b/packages/uikit/src/__tests__/components/overlay.test.tsx @@ -0,0 +1,25 @@ +import React from "react"; +import { renderWithTheme } from "../../testHelpers"; +import { Overlay } from "../../components/Overlay"; + +it("renders correctly", () => { + const { asFragment } = renderWithTheme(); + expect(asFragment()).toMatchInlineSnapshot(` + + .c0 { + position: fixed; + top: 0px; + left: 0px; + width: 100%; + height: 100%; + background-color: #280D5F99; + z-index: 20; + } + +