diff --git a/package-lock.json b/package-lock.json
index 974982b..0cc1336 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8726,6 +8726,14 @@
}
}
},
+ "html-parse-stringify": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz",
+ "integrity": "sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==",
+ "requires": {
+ "void-elements": "3.1.0"
+ }
+ },
"html-webpack-plugin": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.0.tgz",
@@ -8870,6 +8878,14 @@
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
"integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw=="
},
+ "i18next": {
+ "version": "21.8.0",
+ "resolved": "https://registry.npmjs.org/i18next/-/i18next-21.8.0.tgz",
+ "integrity": "sha512-opNd7cQj0PDlUX15hPjtzReRxy5/Rn405YvHTBEm1nf1YJhsqYFFFhHMwuU4NEHZNlrepHk5uK+CJbFtB+KO3w==",
+ "requires": {
+ "@babel/runtime": "^7.17.2"
+ }
+ },
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@@ -13520,6 +13536,16 @@
"use-sidecar": "^1.0.5"
}
},
+ "react-i18next": {
+ "version": "11.16.9",
+ "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.16.9.tgz",
+ "integrity": "sha512-euXxWvcEAvsY7ZVkwx9ztCq4butqtsGHEkpkuo0RMj8Ru09IF9o2KxCyN+zyv51Nr0aBh/elaTIiR6fMb8YfVg==",
+ "requires": {
+ "@babel/runtime": "^7.14.5",
+ "html-escaper": "^2.0.2",
+ "html-parse-stringify": "^3.0.1"
+ }
+ },
"react-icons": {
"version": "3.11.0",
"resolved": "https://registry.npmjs.org/react-icons/-/react-icons-3.11.0.tgz",
@@ -15585,6 +15611,11 @@
}
}
},
+ "void-elements": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz",
+ "integrity": "sha1-YU9/v42AHwu18GYfWy9XhXUOTwk="
+ },
"w3c-hr-time": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz",
diff --git a/package.json b/package.json
index a90eed5..7b53576 100644
--- a/package.json
+++ b/package.json
@@ -14,8 +14,10 @@
"@walletconnect/web3-provider": "^1.7.8",
"axios": "^0.27.2",
"framer-motion": "^4.1.17",
+ "i18next": "^21.8.0",
"react": "^18.1.0",
"react-dom": "^18.1.0",
+ "react-i18next": "^11.16.9",
"react-icons": "^3.11.0",
"react-router-dom": "^6.3.0",
"react-scripts": "5.0.1",
diff --git a/src/App.js b/src/App.js
index 972c8fe..c2873d1 100644
--- a/src/App.js
+++ b/src/App.js
@@ -10,13 +10,13 @@ import { AppContextProvider } from './AppContext';
function App() {
return (
-
-
+
+
-
-
+
+
);
}
diff --git a/src/components/AppBar.js b/src/components/AppBar.js
index d549d68..89de272 100644
--- a/src/components/AppBar.js
+++ b/src/components/AppBar.js
@@ -6,6 +6,7 @@ import {
} from '@chakra-ui/react'
import { FiMenu, FiCircle } from 'react-icons/fi'
import { Logo } from './Logo'
+import { ColorModeSwitcher } from './ColorModeSwitcher'
import { config } from '../config'
import { useApp } from '../AppContext'
import { AlertBox } from './alert'
@@ -17,7 +18,7 @@ import { useSearchParams } from 'react-router-dom'
export const AppBar = ({ onOpenDrawer, ...rest }) => {
const app = useApp()
const toast = useToast()
- const [searchParams, _] = useSearchParams()
+ const [searchParams, setSearchParams] = useSearchParams()
const { isOpen: isOpenConnectedWallet, onOpen: onOpenConnectedWallet, onClose: onCloseConnectedWallet } = useDisclosure()
const bg = useColorModeValue('white', 'gray.900')
@@ -83,7 +84,9 @@ export const AppBar = ({ onOpenDrawer, ...rest }) => {
-
+
{
+ const bg = useColorModeValue('white', 'gray.900')
+
return (
{
const [slider, setSlider] = React.useState(null)
- const top = useBreakpointValue({ base: '90%', md: '50%' })
- const side = useBreakpointValue({ base: '30%', md: '40px' })
+ const bg = useColorModeValue('white', 'gray.900')
+
+ // const top = useBreakpointValue({ base: '90%', md: '50%' })
+ // const side = useBreakpointValue({ base: '30%', md: '40px' })
return (
{
setSlider(slider)}>
{
cards.length > 0 && cards.map((card, index) => (
-
+
{
export const FarmCoinCard = ({ index, icon, symbol, apy, deposited, vl,
remaining, loading = false, isNew = false, authorized = false, onWithdrawal = null, onMining = null }) => {
+
+ const bg = useColorModeValue('white', 'gray.900')
+
return (
{
export const MiningListCard = ({ coins, ...rest }) => {
+ const bg = useColorModeValue('white', 'gray.900')
+
return (
{
)
}
-export const Partners = ({...rest}) => {
+export const Partners = ({ ...rest }) => {
+
+ const bg = useColorModeValue('white', 'gray.900')
return (
{
const SocialItem = ({ icon, path, ...rest }) => {
return (
-
+
)
@@ -96,6 +97,10 @@ export const SideBar = ({ onClose, ...rest }) => {
justifyContent="space-between">
+
+
diff --git a/src/components/index.js b/src/components/index.js
index a0c2177..fbfd86b 100644
--- a/src/components/index.js
+++ b/src/components/index.js
@@ -6,4 +6,5 @@ export * from './MiningListCard'
export * from './Partners'
export * from './Auditors'
export * from './FarmCoinCard'
+export * from './ColorModeSwitcher'
export * from './alert'
\ No newline at end of file
diff --git a/src/config.js b/src/config.js
index 6122486..01d90f0 100644
--- a/src/config.js
+++ b/src/config.js
@@ -1,18 +1,18 @@
const items = {
development: {
-
+ ENDPOINT: 'http://coinwind.test/'
},
production: {
-
+ ENDPOINT: 'https://gdb.01a01.com/'
}
}
export const config = {
- APP_NAME: 'CoinWind',
+ APP_NAME: process.env.REACT_APP_NAME || 'CoinWind',
ENABLE_WALLETCONNECT: false,
ENABLE_COINBASE: true,
AUTO_CONN_WALLET: false,
INFURAL_ID: 'a4a92ab2377d4bb9a693d96c27c6523e',
- ENDPOINT: 'https://gdb.01a01.com/',
+ ENDPOINT: process.env.NODE_ENV === 'production' ? items.production.ENDPOINT : items.development.ENDPOINT,
}
\ No newline at end of file
diff --git a/src/pages/Farm.js b/src/pages/Farm.js
index c6b3cac..706c8b5 100644
--- a/src/pages/Farm.js
+++ b/src/pages/Farm.js
@@ -3,7 +3,8 @@ import {
Stack, Image, HStack,
AspectRatio, Input,
FormControl, Box,
- useDisclosure, useToast
+ useDisclosure, useToast,
+ useColorModeValue,
} from "@chakra-ui/react"
import { StateCard, FarmCoinCard } from "../components"
@@ -29,6 +30,7 @@ export const Farm = () => {
const [depositeIndex, setDepositeIndex] = React.useState(-1)
const app = useApp()
const toast = useToast()
+ const bg = useColorModeValue('white', 'gray.900')
const { isOpen: isWithdrawalOpen, onOpen: onWithdrawalOpen, onClose: onWithdrawalClose } = useDisclosure()
const { isOpen: isDepositeOpen, onOpen: onDepositeOpen, onClose: onDepositeClose } = useDisclosure()
@@ -189,7 +191,7 @@ export const Farm = () => {
{
>
-
+
{
const app = useApp()
+ const bg = useColorModeValue('white', 'gray.900')
+ const stateCardBg = useColorModeValue('gray.100', 'gray.900')
+
React.useEffect(() => {
get_coins_platform().then((res) => {
setCoins(res.data)
@@ -52,7 +58,7 @@ export const Home = () => {
borderWidth="1px"
borderRadius="lg"
w="full"
- bg="white"
+ bg={bg}
boxShadow="lg"
p="6"
my="4"
@@ -66,7 +72,7 @@ export const Home = () => {