Compare commits

..

No commits in common. "develop" and "master" have entirely different histories.

16 changed files with 73 additions and 92 deletions

View File

@ -1,12 +1,6 @@
###
# @LastEditors: John
# @Date: 2024-06-26 15:04:10
# @LastEditTime: 2024-07-01 15:13:11
# @Author: John
###
VITE_BASE_URL=https://www.nodeai.world
VITE_BASE_API_URL=https://www.nodeai.world/api
VITE_BASE_URL=/
VITE_BASE_API_URL=/dev
VITE_PARTICIPATE_CHAIN_ID=56
VITE_PURCHASED_CONTRACT_ADDRESS=0x17c38AaF564716A3D9dD4EBE7Fb5db2D43c6A834
VITE_NETWORK_USDT_ADDRESS=0x55d398326f99059fF775485246999027B3197955
VITE_PURCHASED_CONTRACT_ADDRESS=
VITE_NETWORK_USDT_ADDRESS=
VITE_CHECK_TRANSACTION_DETAILS_URL=https://bscscan.com/

View File

@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="46" height="46" viewBox="0 0 46 46"><g><g><g><rect x="0" y="0" width="46" height="46" rx="23" fill="#EA6D28" fill-opacity="1"/></g><g><ellipse cx="15.29602861404419" cy="18.62433671951294" rx="5.9895710945129395" ry="5.9895710945129395" fill="#000000" fill-opacity="1"/></g><g><path d="M28.716520703125,12.63720703125L14.313720703125,33.363107031249996L22.288390703125,33.363107031249996L36.693520703125,12.63720703125L28.716520703125,12.63720703125Z" fill="#000000" fill-opacity="1"/></g></g></g></svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="46" height="46" viewBox="0 0 46 46"><g><g><g><rect x="0" y="0" width="46" height="46" rx="23" fill="#2DFCFC" fill-opacity="1"/></g><g><ellipse cx="15.29602861404419" cy="18.62433671951294" rx="5.9895710945129395" ry="5.9895710945129395" fill="#000000" fill-opacity="1"/></g><g><path d="M28.716520703125,12.63720703125L14.313720703125,33.363107031249996L22.288390703125,33.363107031249996L36.693520703125,12.63720703125L28.716520703125,12.63720703125Z" fill="#000000" fill-opacity="1"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 619 B

After

Width:  |  Height:  |  Size: 619 B

View File

@ -3,7 +3,7 @@ html,
#root {
width: 100%;
height: 100%;
background: #fafafb;
background: url("./assets/home_bg.png");
}
@font-face {

View File

@ -1 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="46" height="46" viewBox="0 0 46 46"><g><g><g><rect x="0" y="0" width="46" height="46" rx="23" fill="#EA6D28" fill-opacity="1"/></g><g><ellipse cx="15.29602861404419" cy="18.62433671951294" rx="5.9895710945129395" ry="5.9895710945129395" fill="#000000" fill-opacity="1"/></g><g><path d="M28.716520703125,12.63720703125L14.313720703125,33.363107031249996L22.288390703125,33.363107031249996L36.693520703125,12.63720703125L28.716520703125,12.63720703125Z" fill="#000000" fill-opacity="1"/></g></g></g></svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="46" height="46" viewBox="0 0 46 46"><g><g><g><rect x="0" y="0" width="46" height="46" rx="23" fill="#2DFCFC" fill-opacity="1"/></g><g><ellipse cx="15.29602861404419" cy="18.62433671951294" rx="5.9895710945129395" ry="5.9895710945129395" fill="#000000" fill-opacity="1"/></g><g><path d="M28.716520703125,12.63720703125L14.313720703125,33.363107031249996L22.288390703125,33.363107031249996L36.693520703125,12.63720703125L28.716520703125,12.63720703125Z" fill="#000000" fill-opacity="1"/></g></g></g></svg>

Before

Width:  |  Height:  |  Size: 619 B

After

Width:  |  Height:  |  Size: 619 B

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 322 KiB

After

Width:  |  Height:  |  Size: 325 KiB

View File

@ -1,17 +1,17 @@
/*
* @LastEditors: John
* @Date: 2024-06-18 15:19:21
* @LastEditTime: 2024-07-01 14:10:45
* @LastEditTime: 2024-06-18 18:49:40
* @Author: John
*/
.header {
background-color: #fafafb;
background-color: #101010;
padding: 0 15px;
.header_top {
display: flex;
align-items: center;
gap: 8px;
border-bottom: 1px solid #d8d8d8;
border-bottom: 0.25px solid #333333;
padding: 10px 0;
.header_logo {
@ -30,7 +30,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}
@ -57,7 +57,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}

View File

@ -1,7 +1,7 @@
/*
* @LastEditors: John
* @Date: 2024-06-18 15:16:31
* @LastEditTime: 2024-07-01 14:10:57
* @LastEditTime: 2024-06-27 15:29:00
* @Author: John
*/
import Picker, {
@ -70,7 +70,7 @@ export default function () {
<IconFont
className={classes.header_nav_icon}
name="icon_arrow_left"
color={"#000000"}
color={"#fff"}
/>
<span>{navTitle}</span>
</div>

View File

@ -61,7 +61,7 @@ createWeb3Modal({
wagmiConfig: config,
projectId,
themeVariables: {
"--w3m-accent": "#EA6D28",
"--w3m-accent": "#2dfcfc",
},
featuredWalletIds: [
...(window.ethereum

View File

@ -14,8 +14,10 @@
border-radius: 16px;
opacity: 1;
background: #ffffff;
box-shadow: 0px 2px 8px 0px rgba(99, 99, 99, 0.2);
background: #171719;
box-shadow: 0px 4px 10px 0px rgba(45, 252, 252, 0.3),
inset 0px 0px 8px 0px #2dfcfc;
padding: 14px 15px;
box-sizing: border-box;
@ -55,7 +57,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;
}
@ -115,9 +117,10 @@
border-radius: 10px;
opacity: 1;
background: #ea6d28;
background: #2dfcfc;
box-sizing: border-box;
border: 1px solid;
padding: 0 20px;
@ -150,7 +153,7 @@
border-radius: 16px;
opacity: 1;
background: #eeeeef;
background: #212123;
display: flex;
flex-direction: column;
@ -170,7 +173,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;
@ -190,7 +193,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}
@ -207,7 +210,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}
@ -242,7 +245,7 @@
border-radius: 10px;
opacity: 1;
background: #ea6d28;
background: #2dfcfc;
color: #101010;
}
@ -257,8 +260,7 @@
border-radius: 16px;
opacity: 1;
background: #ffffff;
box-shadow: 0px 2px 8px 0px rgba(99, 99, 99, 0.2);
background: #171719;
z-index: 1;
.nftToken_content_nft {
/* 自动布局 */
@ -284,7 +286,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;
}
@ -301,7 +303,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #ea6d28;
color: #2dfcfc;
z-index: 0;
@ -333,7 +335,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 2;
}
@ -534,7 +536,7 @@
justify-content: center;
align-items: center;
padding: 10px 0;
background: #ea6d28;
background: #2dfcfc;
z-index: 0;
gap: 10px;
box-sizing: border-box;
@ -572,7 +574,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}
@ -598,7 +600,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
}
}
}
@ -623,7 +625,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;
}
@ -639,7 +641,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #ea6d28;
color: #2dfcfc;
z-index: 0;
@ -655,8 +657,7 @@
border-radius: 16px;
opacity: 1;
background: #ffffff;
box-shadow: 0px 2px 8px 0px rgba(99, 99, 99, 0.2);
background: #171719;
display: flex;
flex-direction: column;
@ -679,7 +680,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #333333;
color: #ffffff;
z-index: 0;
}
@ -696,7 +697,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #666666;
color: #eaeaea;
z-index: 1;
}
@ -719,7 +720,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;

View File

@ -118,7 +118,7 @@ export default function () {
}}
name="tuichu"
className={classes.userinfo_top_right_wallet_disconnect}
color={"#000000"}
color={"#fff"}
/>
</div>
<div className={classes.userinfo_top_right_btns}>
@ -200,7 +200,7 @@ export default function () {
{t("Buy Node")}
<IconFont
name="chevronsrightshuangyoujiantou"
color={"#EA6D28"}
color={"#2DFCFC"}
/>
</span>
</div>
@ -262,7 +262,7 @@ export default function () {
{t("邀请列表")}{" "}
<IconFont
name="chevronsrightshuangyoujiantou"
color={"#EA6D28"}
color={"#2DFCFC"}
/>
</span>
)}
@ -282,7 +282,7 @@ export default function () {
}}
className={classes.invite_content_icon}
name="fuzhi"
color={"#000000"}
color={"#fff"}
/>{" "}
</>
) : (

View File

@ -11,7 +11,7 @@
height: 190px;
border-radius: 10px;
opacity: 1;
background: #ffffff;
background: #171719;
box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16),
0px 3px 6px 0px rgba(0, 0, 0, 0.23);
padding: 8px;
@ -95,7 +95,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #333333;
color: #9e9e9e;
z-index: 0;
}
@ -137,7 +137,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;
}
@ -154,7 +154,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}
@ -178,7 +178,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 0;
}
@ -194,7 +194,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
z-index: 1;
}
@ -215,7 +215,7 @@
padding: 11px 40px;
gap: 10px;
background: #ea6d28;
background: #2dfcfc;
z-index: 3;

View File

@ -1,7 +1,7 @@
/*
* @LastEditors: John
* @Date: 2024-06-18 10:28:21
* @LastEditTime: 2024-07-01 11:55:38
* @LastEditTime: 2024-06-27 09:52:45
* @Author: John
*/
import { GET, POST } from "./client";
@ -54,7 +54,7 @@ export function api_signUp() {
chainType: 2;
},
any
>({ url: "/api/account/signUp", requiresToken: false, catchErr: true });
>({ url: "/api/account/signUp", requiresToken: false });
}
// 获取钱包签名串

View File

@ -1,7 +1,7 @@
/*
* @LastEditors: John
* @Date: 2024-06-18 10:09:21
* @LastEditTime: 2024-07-01 11:38:43
* @LastEditTime: 2024-06-21 14:47:26
* @Author: John
*/
import { Client } from "@hyper-fetch/core";
@ -17,11 +17,9 @@ import i18next from "i18next";
function initClient({
requiresToken,
requiresAddress,
catchErr,
}: {
requiresToken: boolean;
requiresAddress: boolean;
catchErr: boolean;
}) {
return new Client({ url: import.meta.env.VITE_BASE_API_URL })
.onAuth(async (req) => {
@ -61,7 +59,6 @@ function initClient({
const resData: BASE_RESPONSE = res.data;
if (resData.code !== 200 && resData.code !== 0) {
if (resData.msg) Toast.show({ content: resData.msg, icon: "fail" });
if (catchErr) return res;
throw new Error(resData.msg || "client on response error");
}
return res;
@ -72,14 +69,12 @@ export const POST = <P = any, R = any, QueryParams = any>({
url,
requiresToken = true,
requiresAddress = true,
catchErr = false,
}: {
url: string;
requiresToken?: boolean;
requiresAddress?: boolean;
catchErr?: boolean;
}) => {
return initClient({ requiresToken, requiresAddress, catchErr }).createRequest<
return initClient({ requiresToken, requiresAddress }).createRequest<
BASE_RESPONSE<R>,
P,
any,
@ -94,14 +89,12 @@ export const GET = <P = any, R = any>({
url,
requiresToken = true,
requiresAddress = true,
catchErr = false,
}: {
url: string;
requiresToken?: boolean;
requiresAddress?: boolean;
catchErr?: boolean;
}) => {
return initClient({ requiresToken, requiresAddress, catchErr }).createRequest<
return initClient({ requiresToken, requiresAddress }).createRequest<
BASE_RESPONSE<R>,
any,
any,

View File

@ -3,7 +3,7 @@
border-bottom: 0.25px solid #333333;
.adm-tabs-tab-line {
background-color: #ea6d28;
background-color: #2dfcfc;
}
.adm-tabs-tab {
@ -51,7 +51,7 @@
opacity: 1;
box-sizing: border-box;
border: 1px solid #ea6d28;
border: 1px solid #2dfcfc;
z-index: 1;
background-color: transparent;
@ -80,7 +80,7 @@
border-radius: 8px;
opacity: 1;
background: #ea6d28;
background: #2dfcfc;
z-index: 0;
@ -192,7 +192,7 @@
/* background: rgba(252, 135, 43, 0.5) !important; */
box-sizing: border-box !important;
border: 1px solid #ea6d28 !important;
border: 1px solid #2dfcfc !important;
/* backdrop-filter: blur(10px); */
@ -263,16 +263,16 @@
height: 42px;
border-radius: 5px !important;
opacity: 1;
background: rgba(204, 184, 214, 0.2);
background: rgba(37, 33, 39, 0.2);
box-sizing: border-box !important;
border: 1px solid #ea6d28 !important;
border: 1px solid #2dfcfc !important;
.adm-button {
width: 42px;
height: 42px;
border-radius: 5px;
opacity: 1;
background: #ea6d28;
background: #2dfcfc;
svg {
width: 23px;
@ -296,7 +296,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
}
}
}
@ -305,7 +305,7 @@
.adm-dialog {
.adm-center-popup-body {
box-sizing: border-box !important;
border: 1px solid #ea6d28 !important;
border: 1px solid #2dfcfc !important;
border-radius: 10px !important;
background-color: transparent !important;
backdrop-filter: blur(10px);
@ -328,11 +328,11 @@
.adm-dialog-footer {
.adm-dialog-action-row {
border-top: 1px solid #ea6d28 !important;
border-top: 1px solid #2dfcfc !important;
.adm-dialog-button {
span {
color: #ea6d28;
color: #2dfcfc;
}
}
}

View File

@ -11,7 +11,6 @@
height: 16px !important;
min-height: 16px !important;
background-color: transparent !important;
border-bottom: none;
.rdt_TableCol {
div {
@ -25,7 +24,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #333333;
color: #eaeaea;
}
}
}
@ -38,8 +37,6 @@
height: 18px !important;
min-height: 18px !important;
background-color: transparent !important;
border-bottom: none;
.rdt_TableCell {
div {
opacity: 1;
@ -52,7 +49,7 @@
font-variation-settings: "opsz" auto;
font-feature-settings: "kern" on;
color: #000000;
color: #ffffff;
}
}
}

View File

@ -1,7 +1,7 @@
/*
* @LastEditors: John
* @Date: 2024-06-19 15:55:07
* @LastEditTime: 2024-07-01 14:21:08
* @LastEditTime: 2024-06-27 15:09:45
* @Author: John
*/
import { config } from "@/components/WalletProvider";
@ -139,7 +139,7 @@ export async function signAndLogin(address?: `0x${string}`): Promise<void> {
return loginOut();
}
// 注册
const { data } = await api_signUp().send({
await api_signUp().send({
data: {
account: address,
publicKey,
@ -147,11 +147,7 @@ export async function signAndLogin(address?: `0x${string}`): Promise<void> {
chainType: 2,
},
});
if (data?.code == 0) {
await signAndLogin(address);
} else {
return loginOut();
}
await signAndLogin(address);
reslove();
loadingToast.close();
}