Compare commits
2 Commits
f96183a35f
...
248153340e
Author | SHA1 | Date |
---|---|---|
john | 248153340e | |
john | 828841c2cc |
|
@ -1,11 +1,11 @@
|
|||
###
|
||||
# @LastEditors: John
|
||||
# @Date: 2024-06-18 10:12:21
|
||||
# @LastEditTime: 2024-07-18 14:49:49
|
||||
# @LastEditTime: 2024-07-22 13:52:06
|
||||
# @Author: John
|
||||
###
|
||||
VITE_BASE_URL=
|
||||
VITE_BASE_API_URL=/dev
|
||||
VITE_TG_COMMUNITY=johntest_bot
|
||||
VITE_TG_BOT_NAME=johntest_bot
|
||||
VITE_TG_BOT_WEBAPP_NAME=starcraft
|
||||
VITE_TG_BOT_WEBAPP_NAME=penguin_coop
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-06-17 18:25:10
|
||||
* @LastEditTime: 2024-07-13 14:06:25
|
||||
* @LastEditTime: 2024-07-22 13:59:05
|
||||
* @Author: John
|
||||
*/
|
||||
export default {
|
||||
|
@ -12,7 +12,7 @@ export default {
|
|||
propList: ["*"],
|
||||
exclude: (e) => {
|
||||
if (/.*-m\.css$/.test(e) || /.*-m.module\.css$/.test(e)) {
|
||||
console.log(e);
|
||||
// console.log(e);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-13 10:21:58
|
||||
* @LastEditTime: 2024-07-19 17:54:47
|
||||
* @LastEditTime: 2024-07-22 13:55:00
|
||||
* @Author: John
|
||||
*/
|
||||
import { MemoryRouter, Route, Routes } from "react-router-dom";
|
||||
|
@ -16,11 +16,6 @@ import Guide from "./pages/Guide";
|
|||
import useUserStore from "./store/User";
|
||||
import { useEffect } from "react";
|
||||
import Index from "./pages/Index";
|
||||
import {
|
||||
api_get_user_information,
|
||||
api_login,
|
||||
api_query_whether_the_user_receives_the_registration_reward,
|
||||
} from "./server/api";
|
||||
|
||||
function App() {
|
||||
const WebApp = useWebApp();
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="24" viewBox="0 0 24 24"><defs><clipPath id="master_svg0_2_1259"><rect x="0" y="0" width="24" height="24" rx="0"/></clipPath><clipPath id="master_svg1_2_1261"><rect x="22.5" y="2" width="21" height="21" rx="0"/></clipPath><clipPath id="master_svg2_2_1262"><rect x="44.5" y="1" width="22" height="22" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_2_1259)"><g><g transform="matrix(-1,0,0,1,45,0)" clip-path="url(#master_svg1_2_1261)"><g transform="matrix(-1,0,0,1,89,0)" clip-path="url(#master_svg2_2_1262)"><g><path d="M62.922799999999995,22L49.07715,22C47.65566,22,46.5,20.8535,46.5,19.443199999999997L46.5,6.556760000000001C46.5,5.14653,47.65566,4,49.07715,4L62.922799999999995,4C64.3443,4,65.5,5.14651,65.5,6.55674L65.5,19.4433C65.5,20.8535,64.3421,22,62.922799999999995,22ZM49.07715,5.43262C48.45088,5.43262,47.94177,5.93765,47.94177,6.55896L47.94177,19.4454C47.94177,20.0667,48.45088,20.5719,49.07715,20.5719L62.922799999999995,20.5719C63.549099999999996,20.5719,64.0582,20.0668,64.0582,19.4455L64.0582,6.55674C64.0582,5.93544,63.549099999999996,5.43035,62.922799999999995,5.43035L49.07715,5.4303L49.07715,5.43262Z" fill="#ADADAD" fill-opacity="1"/></g><g><path d="M59.797560000000004,10L52.202439,10C51.816098,10,51.5,10.318349,51.5,10.707443C51.5,11.096540000000001,51.816098,11.41489,52.202439,11.41489L59.797560000000004,11.41489C60.1839,11.41489,60.5,11.096540000000001,60.5,10.707443C60.5,10.318349,60.1839,10,59.797560000000004,10ZM59.797560000000004,14.58511L52.202439,14.58511C51.816098,14.58511,51.5,14.903459999999999,51.5,15.29256C51.5,15.681650000000001,51.816098,16,52.202439,16L59.797560000000004,16C60.1839,16,60.5,15.681650000000001,60.5,15.29256C60.5,14.903459999999999,60.1839,14.58511,59.797560000000004,14.58511Z" fill="#ADADAD" fill-opacity="1"/></g><g><path d="M51.235632,2C50.831034,2,50.5,2.35122,50.5,2.780488L50.5,6.21951C50.5,6.64878,50.831034,7,51.235632,7C51.64023,7,51.97126,6.64878,51.97126,6.21951L51.97126,2.780488C51.97126,2.35122,51.64023,2,51.235632,2ZM59.76437,2C59.35977,2,59.02874,2.35122,59.02874,2.780488L59.02874,6.21951C59.02874,6.64878,59.35977,7,59.76437,7C60.16897,7,60.5,6.64878,60.5,6.21951L60.5,2.780488C60.5,2.35122,60.16897,2,59.76437,2Z" fill="#ADADAD" fill-opacity="1"/></g></g></g></g></g></svg>
|
After Width: | Height: | Size: 2.3 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="24" viewBox="0 0 24 24"><defs><clipPath id="master_svg0_2_1305"><rect x="0" y="0" width="24" height="24" rx="0"/></clipPath><clipPath id="master_svg1_2_1307"><rect x="22.5" y="2" width="21" height="21" rx="0"/></clipPath><clipPath id="master_svg2_2_1309"><rect x="44.5" y="1" width="22" height="22" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_2_1305)"><g><g transform="matrix(-1,0,0,1,45,0)" clip-path="url(#master_svg1_2_1307)"><g transform="matrix(-1,0,0,1,89,0)" clip-path="url(#master_svg2_2_1309)"><g><path d="M62.922799999999995,22L49.07715,22C47.65566,22,46.5,20.8535,46.5,19.443199999999997L46.5,6.556760000000001C46.5,5.14653,47.65566,4,49.07715,4L62.922799999999995,4C64.3443,4,65.5,5.14651,65.5,6.55674L65.5,19.4433C65.5,20.8535,64.3421,22,62.922799999999995,22ZM49.07715,5.43262C48.45088,5.43262,47.94177,5.93765,47.94177,6.55896L47.94177,19.4454C47.94177,20.0667,48.45088,20.5719,49.07715,20.5719L62.922799999999995,20.5719C63.549099999999996,20.5719,64.0582,20.0668,64.0582,19.4455L64.0582,6.55674C64.0582,5.93544,63.549099999999996,5.43035,62.922799999999995,5.43035L49.07715,5.4303L49.07715,5.43262Z" fill="#E2C72D" fill-opacity="1"/></g><g><path d="M59.797560000000004,10L52.202439,10C51.816098,10,51.5,10.318349,51.5,10.707443C51.5,11.096540000000001,51.816098,11.41489,52.202439,11.41489L59.797560000000004,11.41489C60.1839,11.41489,60.5,11.096540000000001,60.5,10.707443C60.5,10.318349,60.1839,10,59.797560000000004,10ZM59.797560000000004,14.58511L52.202439,14.58511C51.816098,14.58511,51.5,14.903459999999999,51.5,15.29256C51.5,15.681650000000001,51.816098,16,52.202439,16L59.797560000000004,16C60.1839,16,60.5,15.681650000000001,60.5,15.29256C60.5,14.903459999999999,60.1839,14.58511,59.797560000000004,14.58511Z" fill="#E2C72D" fill-opacity="1"/></g><g><path d="M51.235632,2C50.831034,2,50.5,2.35122,50.5,2.780488L50.5,6.21951C50.5,6.64878,50.831034,7,51.235632,7C51.64023,7,51.97126,6.64878,51.97126,6.21951L51.97126,2.780488C51.97126,2.35122,51.64023,2,51.235632,2ZM59.76437,2C59.35977,2,59.02874,2.35122,59.02874,2.780488L59.02874,6.21951C59.02874,6.64878,59.35977,7,59.76437,7C60.16897,7,60.5,6.64878,60.5,6.21951L60.5,2.780488C60.5,2.35122,60.16897,2,59.76437,2Z" fill="#E2C72D" fill-opacity="1"/></g></g></g></g></g></svg>
|
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 6.6 KiB |
After Width: | Height: | Size: 6.6 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="25" viewBox="0 0 24 25"><defs><clipPath id="master_svg0_2_1272"><rect x="0" y="0" width="24" height="25" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_2_1272)"><g><g><path d="M3.75 11.75C3.75 11.197715250169207 4.197715250169207 10.75 4.75 10.75L9.25 10.75C9.25 10.75 9.25 10.75 9.25 10.75L9.25 21.25C9.25 21.25 9.25 21.25 9.25 21.25L3.75 21.25C3.75 21.25 3.75 21.25 3.75 21.25Z" fill-opacity="0" stroke-opacity="1" stroke="#E2C72D" fill="none" stroke-width="1.5"/></g><g transform="matrix(1,0,0,-1,0,44)"><path d="M9.75 22.75C9.75 22.75 9.75 22.75 9.75 22.75L15.25 22.75C15.25 22.75 15.25 22.75 15.25 22.75L15.25 39.25C15.25 39.8022847498308 14.802284749830793 40.25 14.25 40.25L10.75 40.25C10.197715250169207 40.25 9.75 39.8022847498308 9.75 39.25Z" fill-opacity="0" stroke-opacity="1" stroke="#E2C72D" fill="none" stroke-width="1.5"/></g><g><path d="M15.75 8.75C15.75 8.75 15.75 8.75 15.75 8.75L20.25 8.75C20.802284749830793 8.75 21.25 9.197715250169207 21.25 9.75L21.25 21.25C21.25 21.25 21.25 21.25 21.25 21.25L15.75 21.25C15.75 21.25 15.75 21.25 15.75 21.25Z" fill-opacity="0" stroke-opacity="1" stroke="#E2C72D" fill="none" stroke-width="1.5"/></g></g></g></svg>
|
After Width: | Height: | Size: 1.3 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="25" viewBox="0 0 24 25"><defs><clipPath id="master_svg0_2_0660"><rect x="0" y="0" width="24" height="25" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_2_0660)"><g><g><path d="M3.75 11.75C3.75 11.197715250169207 4.197715250169207 10.75 4.75 10.75L9.25 10.75C9.25 10.75 9.25 10.75 9.25 10.75L9.25 21.25C9.25 21.25 9.25 21.25 9.25 21.25L3.75 21.25C3.75 21.25 3.75 21.25 3.75 21.25Z" fill-opacity="0" stroke-opacity="1" stroke="#ADADAD" fill="none" stroke-width="1.5"/></g><g transform="matrix(1,0,0,-1,0,44)"><path d="M9.75 22.75C9.75 22.75 9.75 22.75 9.75 22.75L15.25 22.75C15.25 22.75 15.25 22.75 15.25 22.75L15.25 39.25C15.25 39.8022847498308 14.802284749830793 40.25 14.25 40.25L10.75 40.25C10.197715250169207 40.25 9.75 39.8022847498308 9.75 39.25Z" fill-opacity="0" stroke-opacity="1" stroke="#ADADAD" fill="none" stroke-width="1.5"/></g><g><path d="M15.75 8.75C15.75 8.75 15.75 8.75 15.75 8.75L20.25 8.75C20.802284749830793 8.75 21.25 9.197715250169207 21.25 9.75L21.25 21.25C21.25 21.25 21.25 21.25 21.25 21.25L15.75 21.25C15.75 21.25 15.75 21.25 15.75 21.25Z" fill-opacity="0" stroke-opacity="1" stroke="#ADADAD" fill="none" stroke-width="1.5"/></g></g></g></svg>
|
After Width: | Height: | Size: 1.3 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="44" height="44" viewBox="0 0 44 44"><defs><clipPath id="master_svg0_1_154"><rect x="10" y="10" width="24" height="24" rx="0"/></clipPath><clipPath id="master_svg1_1_27"><rect x="11" y="11" width="22" height="22" rx="0"/></clipPath></defs><g><g><rect x="0" y="0" width="44" height="44" rx="22" fill="#27272A" fill-opacity="1"/></g><g clip-path="url(#master_svg0_1_154)"><g clip-path="url(#master_svg1_1_27)"><g><path d="M28.240329296875,30.249937890625L16.016029296875,30.249937890625C14.644519296875,30.250537890625,13.531851066875,29.139837890625,13.530029296875,27.768337890625L13.530029296875,17.852937890625C13.531850646875,16.481427890625,14.644519296875,15.370729865625,16.016029296875,15.371337890625L16.914729296875,15.371337890625C17.279239296875,15.371337890625,17.574729296875,15.666829890625,17.574729296875,16.031337890625C17.574729296875,16.395847890625,17.279239296875,16.691337890625,16.914729296875,16.691337890625L16.016029296875,16.691337890625C15.373279296875,16.690117890625,14.851239296875,17.210187890625,14.850029296875,17.852937890625L14.850029296875,27.767237890624997C14.850639296875,28.410437890624998,15.372849296875,28.931137890625,16.016029296875,28.929937890625L28.240329296875,28.929937890625C28.881329296875002,28.928737890625,29.400729296875,28.409337890625,29.401929296875,27.768337890625L29.401929296875,17.852937890625C29.400729296875,17.211907890625,28.881329296875002,16.692547890625,28.240329296875,16.691337890625L27.408729296875002,16.691337890625C27.044229296875002,16.691337890625,26.748729296875,16.395847890625,26.748729296875,16.031337890625C26.748729296875,15.666829890625,27.044229296875002,15.371337890625,27.408729296875002,15.371337890625L28.240329296875,15.371337890625C29.610529296875,15.372548900625,30.721229296875,16.482707890625,30.723029296875,17.852937890625L30.723029296875,27.767237890624997C30.721829296875,29.137937890625,29.611029296875,30.248737890625,28.240329296875,30.249937890625Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M24.120819140625002,16.6914390625L20.050819140625002,16.6914390625C19.686309140625,16.6914390625,19.390819140625,16.3959490625,19.390819140625,16.0314390625C19.390819140625,15.6669290625,19.686309140625,15.3714390625,20.050819140625002,15.3714390625L24.120819140625002,15.3714390625C24.485319140625002,15.3714390625,24.780819140625,15.6669290625,24.780819140625,16.0314390625C24.780819140625,16.3959490625,24.485319140625002,16.6914390625,24.120819140625002,16.6914390625ZM29.861719140625,21.3620390625L14.394619140625,21.3620390625C14.030111140625,21.3620390625,13.734619140625,21.066549062500002,13.734619140625,20.7020390625C13.734619140625,20.3375290625,14.030111140625,20.0420390625,14.394619140625,20.0420390625L29.861719140625,20.0420390625C30.226219140625,20.0420390625,30.521719140625,20.3375290625,30.521719140625,20.7020390625C30.521719140625,21.066549062500002,30.226219140625,21.3620390625,29.861719140625,21.3620390625ZM18.462419140625002,18.4492390625C18.097909140625,18.4492390625,17.802419140625,18.1537490625,17.802419140625,17.789239062500002L17.802419140625,14.5750390625C17.802419140625,14.2105310625,18.097909140625,13.9150390625,18.462419140625002,13.9150390625C18.826929140625,13.9150390625,19.122419140625,14.2105310625,19.122419140625,14.5750390625L19.122419140625,17.789239062500002C19.122419140625,18.1537490625,18.826929140625,18.4492390625,18.462419140625002,18.4492390625ZM25.793919140625,18.4492390625C25.429419140625,18.4492390625,25.133919140625,18.1537490625,25.133919140625,17.789239062500002L25.133919140625,14.5750390625C25.133919140625,14.2105310625,25.429419140625,13.9150390625,25.793919140625,13.9150390625C26.158419140625,13.9150390625,26.453919140625,14.2105310625,26.453919140625,14.5750390625L26.453919140625,17.789239062500002C26.453919140625,18.1537490625,26.158419140625,18.4492390625,25.793919140625,18.4492390625Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>
|
After Width: | Height: | Size: 3.9 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="24" viewBox="0 0 24 24"><defs><clipPath id="master_svg0_2_270"><rect x="24" y="0" width="24" height="24" rx="0"/></clipPath></defs><g transform="matrix(0,1,-1,0,24,-24)" clip-path="url(#master_svg0_2_270)"><g><path d="M35.29289,4.292893C35.68342,3.9023689,36.31658,3.9023689,36.70711,4.292893C36.70711,4.292893,43.7071,11.29289,43.7071,11.29289C44.0976,11.68342,44.0976,12.31658,43.7071,12.70711C43.3166,13.09763,42.6834,13.09763,42.2929,12.70711C42.2929,12.70711,37,7.414210000000001,37,7.414210000000001C37,7.414210000000001,37,19,37,19C37,19.552300000000002,36.552279999999996,20,36,20C35.447720000000004,20,35,19.552300000000002,35,19C35,19,35,7.414210000000001,35,7.414210000000001C35,7.414210000000001,29.70711,12.70711,29.70711,12.70711C29.316580000000002,13.09763,28.683417,13.09763,28.292893,12.70711C27.9023689,12.31658,27.9023689,11.68342,28.292893,11.29289C28.292893,11.29289,35.29289,4.292893,35.29289,4.292893C35.29289,4.292893,35.29289,4.292893,35.29289,4.292893Z" fill-rule="evenodd" fill="#000000" fill-opacity="1"/></g></g></svg>
|
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 340 KiB |
Before Width: | Height: | Size: 1.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="24" viewBox="0 0 24 24"><defs><clipPath id="master_svg0_2_1114"><rect x="0" y="0" width="24" height="24" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_2_1114)"><g><path d="M21.74999976158142,9.490525850982667L21.74999976158142,9.489995850982666Q21.75039976158142,8.633795850982665,21.07439976158142,8.107975850982665L13.074499761581421,1.886019850982666Q11.999999761581421,1.050165850982666,10.925549761581422,1.8859778509826661L2.925499361581421,8.108015850982666Q2.2494047615814208,8.633955850982666,2.249999761581421,9.489995850982666L2.249999761581421,20.000005850982667Q2.249999761581421,21.750005850982667,3.999999761581421,21.750005850982667L19.99999976158142,21.750005850982667Q20.724899761581423,21.750005850982667,21.237399761581422,21.237405850982665Q21.74999976158142,20.724905850982665,21.74999976158142,20.000005850982667L21.74999976158142,9.490525850982667ZM20.15359976158142,9.292025850982666Q20.25009976158142,9.367115850982666,20.24999976158142,9.489475850982666L20.24999976158142,9.489995850982666L20.24999976158142,20.000005850982667Q20.24999976158142,20.250005850982667,19.99999976158142,20.250005850982667L3.999999761581421,20.250005850982667Q3.749999761581421,20.250005850982667,3.749999761581421,20.000005850982667L3.749999761581421,9.489995850982666Q3.749914761581421,9.367115850982666,3.846500761581421,9.291975850982666L11.846449761581422,3.0700218509826662Q11.999999761581421,2.950571850982666,12.15349976158142,3.069978850982666L20.15359976158142,9.292025850982666Z" fill-rule="evenodd" fill="#E2C72D" fill-opacity="1"/></g></g></svg>
|
After Width: | Height: | Size: 1.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="24" height="24" viewBox="0 0 24 24"><defs><clipPath id="master_svg0_2_1280"><rect x="0" y="0" width="24" height="24" rx="0"/></clipPath></defs><g clip-path="url(#master_svg0_2_1280)"><g><path d="M21.74999976158142,9.490525850982667L21.74999976158142,9.489995850982666Q21.75039976158142,8.633795850982665,21.07439976158142,8.107975850982665L13.074499761581421,1.886019850982666Q11.999999761581421,1.050165850982666,10.925549761581422,1.8859778509826661L2.925499361581421,8.108015850982666Q2.2494047615814208,8.633955850982666,2.249999761581421,9.489995850982666L2.249999761581421,20.000005850982667Q2.249999761581421,21.750005850982667,3.999999761581421,21.750005850982667L19.99999976158142,21.750005850982667Q20.724899761581423,21.750005850982667,21.237399761581422,21.237405850982665Q21.74999976158142,20.724905850982665,21.74999976158142,20.000005850982667L21.74999976158142,9.490525850982667ZM20.15359976158142,9.292025850982666Q20.25009976158142,9.367115850982666,20.24999976158142,9.489475850982666L20.24999976158142,9.489995850982666L20.24999976158142,20.000005850982667Q20.24999976158142,20.250005850982667,19.99999976158142,20.250005850982667L3.999999761581421,20.250005850982667Q3.749999761581421,20.250005850982667,3.749999761581421,20.000005850982667L3.749999761581421,9.489995850982666Q3.749914761581421,9.367115850982666,3.846500761581421,9.291975850982666L11.846449761581422,3.0700218509826662Q11.999999761581421,2.950571850982666,12.15349976158142,3.069978850982666L20.15359976158142,9.292025850982666Z" fill-rule="evenodd" fill="#ADADAD" fill-opacity="1"/></g></g></svg>
|
After Width: | Height: | Size: 1.7 KiB |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="44" height="44" viewBox="0 0 44 44"><defs><clipPath id="master_svg0_1_0555"><rect x="10" y="10" width="24" height="24" rx="0"/></clipPath></defs><g><g><rect x="0" y="0" width="44" height="44" rx="22" fill="#27272A" fill-opacity="1"/></g><g clip-path="url(#master_svg0_1_0555)"><g><g><path d="M19.207114699935914,20.09606C19.617544699935912,20.09606,20.026404699935913,20.00808,20.403594699935912,19.84606C20.127554699935914,19.364440000000002,19.974484699935914,18.811410000000002,19.974484699935914,18.25566C19.974484699935914,17.423470000000002,20.316154699935915,16.59635,20.902994699935913,16.00796C21.15201469993591,15.75831,21.444164699935914,15.55345,21.761014699935913,15.39972C21.644614699935914,15.21695,21.509654699935915,15.04616,21.356674699935912,14.892739C20.793934699935914,14.32847,20.002964699935912,14,19.207114699935914,14C18.41129469993591,14,17.620484699935915,14.32847,17.05762569993591,14.892739C16.494872699935915,15.456949999999999,16.167264699935913,16.25007,16.167264699935913,17.04806C16.167264699935913,17.846049999999998,16.494872699935915,18.63897,17.05762569993591,19.20334C17.620504699935914,19.76755,18.41129469993591,20.09606,19.207114699935914,20.09606Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M22.30954,22.186686732635497C21.39678,21.626411732635496,20.337229999999998,21.305701732635498,19.20707,21.305701732635498C15.77911,21.305701732635498,13,24.255491732635498,13,27.8942717326355L16.865009999999998,27.8942717326355C17.55928,24.948061732635498,20.34623,22.505791732635497,22.30954,22.186686732635497Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M22.285242183166503,20.9363493265152C22.872236183166503,21.524739326515196,23.696946183166503,21.8673593265152,24.526886183166503,21.8673593265152C25.356836183166504,21.8673593265152,26.181726183166504,21.5247593265152,26.768556183166503,20.9363493265152C27.355346183166503,20.347789326515198,27.697046183166503,19.520859326515197,27.697046183166503,18.688659326515197C27.697046183166503,17.8564793265152,27.355356183166503,17.0293493265152,26.768556183166503,16.440955326515198C26.181726183166504,15.852540326515198,25.356836183166504,15.509949326515198,24.526886183166503,15.509949326515198C24.049066183166502,15.509949326515198,23.573256183166503,15.624071326515198,23.143266183166503,15.832697326515198C22.826396183166505,15.986444326515198,22.534286183166504,16.191283326515197,22.285241183166505,16.440934326515197C21.698407183166506,17.029329326515196,21.356736183166504,17.856459326515196,21.356736183166504,18.688639326515197C21.356736183166504,19.244409326515196,21.509824183166504,19.797399326515198,21.785862183166504,20.279039326515196C21.923124183166504,20.5186393265152,22.090336183166503,20.7408593265152,22.285242183166503,20.9363493265152Z" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M24.52674607406616,23.128984451293945C24.48599607406616,23.128984451293945,24.44546607406616,23.129828376293947,24.40492607406616,23.130589791293946C21.427396074066163,23.189009151293945,18.941451074066162,25.381204451293947,18.24720807406616,28.327424451293943C18.120992974066162,28.862884451293944,18.053636074066162,29.423094451293945,18.053636074066162,30.000004451293947L31.000036074066163,30.000004451293947C31.000036074066163,26.205224451293944,28.101836074066163,23.128984451293945,24.52674607406616,23.128984451293945Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></g></svg>
|
After Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 17 KiB |
|
@ -1 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="35.93" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 228"><path fill="#00D8FF" d="M210.483 73.824a171.49 171.49 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621c6.238-30.281 2.16-54.676-11.769-62.708c-13.355-7.7-35.196.329-57.254 19.526a171.23 171.23 0 0 0-6.375 5.848a155.866 155.866 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233C50.33 10.957 46.379 33.89 51.995 62.588a170.974 170.974 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a145.52 145.52 0 0 0 6.921 2.165a167.467 167.467 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266c13.744 7.926 36.812-.22 59.273-19.855a145.567 145.567 0 0 0 5.342-4.923a168.064 168.064 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586c13.731-7.949 18.194-32.003 12.4-61.268a145.016 145.016 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488c29.348-9.723 48.443-25.443 48.443-41.52c0-15.417-17.868-30.326-45.517-39.844Zm-6.365 70.984c-1.4.463-2.836.91-4.3 1.345c-3.24-10.257-7.612-21.163-12.963-32.432c5.106-11 9.31-21.767 12.459-31.957c2.619.758 5.16 1.557 7.61 2.4c23.69 8.156 38.14 20.213 38.14 29.504c0 9.896-15.606 22.743-40.946 31.14Zm-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787c-1.524 8.219-4.59 13.698-8.382 15.893c-8.067 4.67-25.32-1.4-43.927-17.412a156.726 156.726 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246c12.376-1.098 24.068-2.894 34.671-5.345a134.17 134.17 0 0 1 1.386 6.193ZM87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675c-8.075-4.657-11.432-22.636-6.853-46.752a156.923 156.923 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994c7.084 9.967 14.501 19.128 21.976 27.15a134.668 134.668 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94ZM50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863c-6.35-5.437-9.555-10.836-9.555-15.216c0-9.322 13.897-21.212 37.076-29.293c2.813-.98 5.757-1.905 8.812-2.773c3.204 10.42 7.406 21.315 12.477 32.332c-5.137 11.18-9.399 22.249-12.634 32.792a134.718 134.718 0 0 1-6.318-1.979Zm12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789c8.564-4.958 27.502 2.111 47.463 19.835a144.318 144.318 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988c-12.04 1.116-23.565 2.908-34.161 5.309a160.342 160.342 0 0 1-1.76-7.887Zm110.427 27.268a347.8 347.8 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08c-2.206 7.072-4.956 14.465-8.193 22.045a381.151 381.151 0 0 0-7.365-13.322Zm-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322.04 322.04 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18ZM82.802 87.83a323.167 323.167 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152c7.304-1.634 15.093-2.97 23.209-3.984a321.524 321.524 0 0 0-7.848 12.897Zm8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793c2.26-7.3 5.045-14.885 8.298-22.6a321.187 321.187 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147Zm37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433c4.902.192 9.899.29 14.978.29c5.218 0 10.376-.117 15.453-.343c-4.985 6.774-10.018 12.97-15.028 18.486Zm52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52c-7.422 1.694-15.436 3.058-23.88 4.071a382.417 382.417 0 0 0 7.859-13.026a347.403 347.403 0 0 0 7.425-13.565Zm-16.898 8.101a358.557 358.557 0 0 1-12.281 19.815a329.4 329.4 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310.202 310.202 0 0 1-12.513-19.846h.001a307.41 307.41 0 0 1-10.923-20.627a310.278 310.278 0 0 1 10.89-20.637l-.001.001a307.318 307.318 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329.357 329.357 0 0 1 12.335 19.695a358.489 358.489 0 0 1 11.036 20.54a329.472 329.472 0 0 1-11 20.722Zm22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026c-.344 1.668-.73 3.367-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408c-7.034-10.017-14.323-19.124-21.64-27.008a160.789 160.789 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3ZM128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86s-22.86-10.235-22.86-22.86s10.235-22.86 22.86-22.86Z"></path></svg>
|
Before Width: | Height: | Size: 4.0 KiB |
|
@ -1 +0,0 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="346" height="779" viewBox="0 0 346 779"><g><g><g><path d="M0.5,778.5L12.8582,778.5L0.5,766.5L0.5,778.5Z" fill="#5858FF" fill-opacity="1"/><path d="M0,765.31756L0,778.5L0,779L14.0909,779L0,765.31756ZM1,778L11.6255,778L1,767.68244L1,778Z" fill-rule="evenodd" fill="#5858FF" fill-opacity="1"/></g><g transform="matrix(-1,-5.2146120310681e-8,5.2146120310681e-8,-1,690.9999993481736,25.000018016484567)"><path d="M345.5,24.5L357.8582,24.5L345.5,12.5L345.5,24.5Z" fill="#5858FF" fill-opacity="1"/><path d="M345,11.31756L345,24.5L345,25L359.0909,25L345,11.31756ZM346,24L356.6255,24L346,13.68244L346,24Z" fill-rule="evenodd" fill="#5858FF" fill-opacity="1"/></g></g><g><path d="M346,17.789L327.734,0L327.531,0L0,0L0,760.711L18.2655,778.5L346,778.5L346,17.789ZM327.328,1L1,1L1,760.289L18.672,777.5L345,777.5L345,18.211L327.328,1Z" fill-rule="evenodd" fill="#5858FF" fill-opacity="1"/></g></g></svg>
|
Before Width: | Height: | Size: 1005 B |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="44" height="44" viewBox="0 0 44 44"><defs><clipPath id="master_svg0_1_0525"><rect x="10" y="10" width="24" height="24" rx="0"/></clipPath></defs><g><g><rect x="0" y="0" width="44" height="44" rx="22" fill="#27272A" fill-opacity="1"/></g><g clip-path="url(#master_svg0_1_0525)"><g><path d="M19.999986328125,25.172003906249998L29.191986328124997,15.97900390625L30.606986328125,17.39300390625L19.999986328125,28.00000390625L13.635986328125,21.63600390625L15.049986328125,20.222003906250002L19.999986328125,25.172003906249998Z" fill="#FFFFFF" fill-opacity="1"/></g></g></g></svg>
|
After Width: | Height: | Size: 691 B |
Before Width: | Height: | Size: 1.9 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 4.9 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 21 KiB |
|
@ -1,13 +1,23 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-13 18:07:43
|
||||
* @LastEditTime: 2024-07-19 15:42:36
|
||||
* @LastEditTime: 2024-07-22 11:03:20
|
||||
* @Author: John
|
||||
*/
|
||||
import { useLocation, useNavigate } from "react-router-dom";
|
||||
import classes from "./BottomTab-m.module.css";
|
||||
import { AppOutline, HistogramOutline, TeamFill } from "antd-mobile-icons";
|
||||
import { useEffect, useState } from "react";
|
||||
import home_fill from "@/assets/home-fill.svg";
|
||||
import home_fill_active from "@/assets/home-fill-active.svg";
|
||||
import Leaderboard_fill from "@/assets/Leaderboard-fill.svg";
|
||||
import Leaderboard_fill_active from "@/assets/Leaderboard-fill-active.svg";
|
||||
import user_fill from "@/assets/user-fill.svg";
|
||||
import user_fill_active from "@/assets/user-fill-active.svg";
|
||||
import Launchpool_fill from "@/assets/Launchpool-fill.svg";
|
||||
import Launchpool_fill_active from "@/assets/Launchpool-fill-active.svg";
|
||||
import Earns_fill from "@/assets/Earns-fill.svg";
|
||||
import Earns_fill_active from "@/assets/Earns-fill-active.svg";
|
||||
export default function () {
|
||||
const navigate = useNavigate();
|
||||
const { pathname } = useLocation();
|
||||
|
@ -22,30 +32,58 @@ export default function () {
|
|||
<>
|
||||
<ul className={classes.bottomTab}>
|
||||
<li onClick={() => navigate("/")}>
|
||||
<AppOutline color={currentpathname == "/" ? "#ffffff" : "#adadad"} />
|
||||
<span className={currentpathname == "/" ? classes.active : ""}>
|
||||
Home
|
||||
</span>
|
||||
</li>
|
||||
|
||||
<li onClick={() => navigate("/friends")}>
|
||||
<TeamFill
|
||||
color={currentpathname == "/friends" ? "#ffffff" : "#adadad"}
|
||||
/>
|
||||
<span className={currentpathname == "/friends" ? classes.active : ""}>
|
||||
Friends
|
||||
</span>
|
||||
{currentpathname == "/" ? (
|
||||
<>
|
||||
<img src={home_fill_active} alt="" />
|
||||
<span className={classes.active}>Home</span>
|
||||
</>
|
||||
) : (
|
||||
<img src={home_fill} alt="" />
|
||||
)}
|
||||
</li>
|
||||
|
||||
<li onClick={() => navigate("/leaderboard")}>
|
||||
<HistogramOutline
|
||||
color={currentpathname == "/leaderboard" ? "#ffffff" : "#adadad"}
|
||||
/>
|
||||
<span
|
||||
className={currentpathname == "/leaderboard" ? classes.active : ""}
|
||||
>
|
||||
Leaderboard
|
||||
</span>
|
||||
{currentpathname == "/leaderboard" ? (
|
||||
<>
|
||||
<img src={Leaderboard_fill_active} alt="" />
|
||||
<span className={classes.active}>Leaderboard</span>
|
||||
</>
|
||||
) : (
|
||||
<img src={Leaderboard_fill} alt="" />
|
||||
)}
|
||||
</li>
|
||||
|
||||
<li onClick={() => navigate("/launchpool")}>
|
||||
{currentpathname == "/launchpool" ? (
|
||||
<>
|
||||
<img src={Launchpool_fill} alt="" />
|
||||
<span className={classes.active}>Launchpool</span>
|
||||
</>
|
||||
) : (
|
||||
<img src={Launchpool_fill_active} alt="" />
|
||||
)}
|
||||
</li>
|
||||
|
||||
<li onClick={() => navigate("/earns")}>
|
||||
{currentpathname == "/earns" ? (
|
||||
<>
|
||||
<img src={Earns_fill} alt="" />
|
||||
<span className={classes.active}>Earns</span>
|
||||
</>
|
||||
) : (
|
||||
<img src={Earns_fill_active} alt="" />
|
||||
)}
|
||||
</li>
|
||||
|
||||
<li onClick={() => navigate("/friends")}>
|
||||
{currentpathname == "/friends" ? (
|
||||
<>
|
||||
<img src={user_fill_active} alt="" />
|
||||
<span className={classes.active}>Friends</span>
|
||||
</>
|
||||
) : (
|
||||
<img src={user_fill} alt="" />
|
||||
)}
|
||||
</li>
|
||||
</ul>
|
||||
</>
|
||||
|
|
|
@ -0,0 +1,189 @@
|
|||
.Earns {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding-top: 24px;
|
||||
.Earns_title {
|
||||
opacity: 1;
|
||||
width: 311px;
|
||||
font-family: Roboto;
|
||||
font-size: 24px;
|
||||
font-weight: 600;
|
||||
line-height: normal;
|
||||
text-align: center;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.Earns_list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 16px;
|
||||
margin-top: 16px;
|
||||
.Earns_box {
|
||||
width: 345px;
|
||||
/* height: 303px; */
|
||||
border-radius: 12px;
|
||||
opacity: 1;
|
||||
|
||||
background: #18181b;
|
||||
|
||||
box-sizing: border-box;
|
||||
border: 1px solid #27272a;
|
||||
padding: 15px;
|
||||
|
||||
.Earns_box_title {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 10px;
|
||||
> div {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
opacity: 1;
|
||||
|
||||
background: #09090b;
|
||||
}
|
||||
> span {
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 20px;
|
||||
font-weight: 600;
|
||||
line-height: 24px;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
|
||||
.Earns_box_list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 8px;
|
||||
margin-top: 10px;
|
||||
.Earns_box_list_item {
|
||||
width: 315px;
|
||||
height: 108px;
|
||||
border-radius: 12px;
|
||||
opacity: 1;
|
||||
|
||||
background: #09090b;
|
||||
padding: 0 10px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.Earns_box_list_item_top {
|
||||
border-bottom: 1px solid #27272a;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
height: 59px;
|
||||
.platform_icon {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
> span {
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 16px;
|
||||
font-weight: normal;
|
||||
line-height: 24px;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #ffffff;
|
||||
}
|
||||
> button {
|
||||
width: 68px;
|
||||
height: 32px;
|
||||
border-radius: 30px;
|
||||
opacity: 1;
|
||||
|
||||
background: #e2c72d;
|
||||
margin-left: auto;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.Earns_box_list_item_top_btn {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
> span {
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 16px;
|
||||
font-weight: normal;
|
||||
line-height: 24px;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
> img {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.Earns_box_list_item_bottom {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 4px;
|
||||
flex: 1;
|
||||
> span {
|
||||
&:nth-of-type(1) {
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 14px;
|
||||
font-weight: normal;
|
||||
line-height: 24px;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #adadad;
|
||||
}
|
||||
|
||||
&:nth-of-type(2) {
|
||||
display: block;
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
border-radius: 38px;
|
||||
opacity: 1;
|
||||
|
||||
background: #ffffff;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
&:nth-of-type(3) {
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
line-height: 24px;
|
||||
text-align: right;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,60 @@
|
|||
import { Button } from "antd-mobile";
|
||||
import classes from "./Earns-m.module.css";
|
||||
import tuite_white from "@/assets/tuite_white.svg";
|
||||
import arrow_right from "@/assets/arrow_right.svg";
|
||||
export default function () {
|
||||
return (
|
||||
<>
|
||||
<div className={classes.Earns}>
|
||||
<span className={classes.Earns_title}>
|
||||
Complete tasks to earn more DUCKS
|
||||
</span>
|
||||
|
||||
<ul className={classes.Earns_list}>
|
||||
<EarnsBox />
|
||||
<EarnsBox />
|
||||
<EarnsBox />
|
||||
</ul>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
||||
function EarnsBox() {
|
||||
return (
|
||||
<li className={classes.Earns_box}>
|
||||
<div className={classes.Earns_box_title}>
|
||||
<div></div>
|
||||
<span>Quote this tweet</span>
|
||||
</div>
|
||||
|
||||
<ul className={classes.Earns_box_list}>
|
||||
<EarnsBoxItem />
|
||||
<EarnsBoxItem />
|
||||
</ul>
|
||||
</li>
|
||||
);
|
||||
}
|
||||
|
||||
function EarnsBoxItem() {
|
||||
return (
|
||||
<li className={classes.Earns_box_list_item}>
|
||||
<div className={classes.Earns_box_list_item_top}>
|
||||
<img src={tuite_white} className={classes.platform_icon} alt="" />
|
||||
<span>Quote this tweet</span>
|
||||
<Button fill="none">
|
||||
<div className={classes.Earns_box_list_item_top_btn}>
|
||||
<span>Go</span>
|
||||
<img src={arrow_right} alt="" />
|
||||
</div>
|
||||
</Button>
|
||||
</div>
|
||||
|
||||
<div className={classes.Earns_box_list_item_bottom}>
|
||||
<span>Reward</span>
|
||||
<span></span>
|
||||
<span>+1,000 PENS</span>
|
||||
</div>
|
||||
</li>
|
||||
);
|
||||
}
|
|
@ -5,6 +5,7 @@
|
|||
.top_title {
|
||||
/* 自动布局子元素 */
|
||||
opacity: 1;
|
||||
width: 209px;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 28px;
|
||||
|
@ -25,16 +26,13 @@
|
|||
/* width: 141px; */
|
||||
height: 149px;
|
||||
margin-top: 31px;
|
||||
background-image: url("../assets/kuang.svg");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
.tip {
|
||||
/* 自动布局子元素 */
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 22px;
|
||||
font-size: 16px;
|
||||
font-weight: normal;
|
||||
line-height: normal;
|
||||
text-align: center;
|
||||
|
@ -42,9 +40,7 @@
|
|||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #ffffff;
|
||||
|
||||
z-index: 0;
|
||||
color: #adadad;
|
||||
|
||||
margin-top: 61px;
|
||||
}
|
||||
|
@ -136,9 +132,9 @@
|
|||
height: 48px;
|
||||
border-radius: 0px;
|
||||
opacity: 1;
|
||||
background-image: url("../assets/big_buttom_bg.svg");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
|
||||
border-radius: 470px;
|
||||
background: #e2c72d;
|
||||
|
||||
> span {
|
||||
opacity: 1;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-13 16:08:30
|
||||
* @LastEditTime: 2024-07-19 15:57:27
|
||||
* @LastEditTime: 2024-07-22 13:42:24
|
||||
* @Author: John
|
||||
*/
|
||||
/*
|
||||
|
@ -10,13 +10,12 @@
|
|||
* @LastEditTime: 2024-07-15 15:31:58
|
||||
* @Author: John
|
||||
*/
|
||||
import logo from "@/assets/logo.png";
|
||||
import logo from "@/assets/logo.svg";
|
||||
import { Avatar, Button } from "antd-mobile";
|
||||
import classes from "./Frends-m.module.css";
|
||||
import { useWebApp } from "@vkruglikov/react-telegram-web-app";
|
||||
import useUserStore from "@/store/User";
|
||||
import { useEffect, useState } from "react";
|
||||
import { api_homepage_subordinates_users } from "@/server/api";
|
||||
import { subordinatesUsers } from "@/server/module";
|
||||
import { cn } from "@/utils";
|
||||
export default function () {
|
||||
|
@ -32,24 +31,21 @@ export default function () {
|
|||
return () => {};
|
||||
}, []);
|
||||
|
||||
async function updateFriends(level: number) {
|
||||
const { data } = await api_homepage_subordinates_users().send({
|
||||
queryParams: { level },
|
||||
});
|
||||
setFrends(data?.data);
|
||||
}
|
||||
async function updateFriends(level: number) {}
|
||||
|
||||
return (
|
||||
<>
|
||||
<div className={classes.frends}>
|
||||
<span className={classes.top_title}>
|
||||
Invite friends and get more SCTT
|
||||
Invite friends and get more PENS
|
||||
</span>
|
||||
{!frends || frends?.length == 0 ? (
|
||||
<>
|
||||
<img className={classes.logo} src={logo} alt="" />
|
||||
{frends?.length == 0 ? (
|
||||
<span className={classes.tip}>
|
||||
Tap on the button to invite your friends
|
||||
</span>
|
||||
</>
|
||||
) : (
|
||||
<ul className={classes.frends_list}>
|
||||
<div className={classes.frends_list_tabs}>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
.guide {
|
||||
height: 100%;
|
||||
height: 100vh;
|
||||
background-image: url("../assets/guide_bg.svg");
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-18 14:42:58
|
||||
* @LastEditTime: 2024-07-19 17:53:42
|
||||
* @LastEditTime: 2024-07-22 13:53:06
|
||||
* @Author: John
|
||||
*/
|
||||
import {
|
||||
|
@ -16,7 +16,6 @@ import dianbao from "@/assets/dianbao.svg";
|
|||
import youguang from "@/assets/youguang.svg";
|
||||
import tuite from "@/assets/tuite.svg";
|
||||
import logo from "@/assets/logo.svg";
|
||||
import { api_login } from "@/server/api";
|
||||
import useUserStore from "@/store/User";
|
||||
|
||||
export default function () {
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding-bottom: 94px;
|
||||
.home_top {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-13 10:50:24
|
||||
* @LastEditTime: 2024-07-19 18:46:32
|
||||
* @LastEditTime: 2024-07-22 13:42:32
|
||||
* @Author: John
|
||||
*/
|
||||
import classes from "./Home-m.module.css";
|
||||
|
@ -9,6 +9,9 @@ import { Routes, useNavigate } from "react-router-dom";
|
|||
import home_top_bg from "@/assets/home_top_bg.svg";
|
||||
import tg_white from "@/assets/tg_white.svg";
|
||||
import tuite_white from "@/assets/tuite_white.svg";
|
||||
import account_age_icon from "@/assets/account_age_icon.svg";
|
||||
import telegram_premium_icon from "@/assets/telegram_premium_icon.svg";
|
||||
import invited_friends_icon from "@/assets/invited_friends_icon.svg";
|
||||
import logo from "@/assets/logo.svg";
|
||||
import {
|
||||
CheckOutline,
|
||||
|
@ -18,13 +21,7 @@ import {
|
|||
} from "antd-mobile-icons";
|
||||
import { Button } from "antd-mobile";
|
||||
import { useEffect, useState } from "react";
|
||||
import {
|
||||
api_follow_twitter,
|
||||
api_homepage_query_user_income,
|
||||
api_query_task_configuration_list,
|
||||
api_query_whether_the_user_receives_the_registration_reward,
|
||||
api_start_task,
|
||||
} from "@/server/api";
|
||||
import {} from "@/server/api";
|
||||
import { useWebApp } from "@vkruglikov/react-telegram-web-app";
|
||||
import IconFont from "@/components/iconfont";
|
||||
import { taskConfigurationListItem } from "@/server/module";
|
||||
|
@ -51,20 +48,9 @@ export default function () {
|
|||
return () => {};
|
||||
}, []);
|
||||
|
||||
async function UpdateHomeData() {
|
||||
const { data: incomeRes } = await api_homepage_query_user_income().send({});
|
||||
setMyReward(incomeRes?.data.wordRewar);
|
||||
setInviteReward(incomeRes?.data.teamRewar);
|
||||
setTotalPoint(
|
||||
parseInt(`${incomeRes?.data.wordRewar || 0}`) +
|
||||
parseInt(`${incomeRes?.data.teamRewar || 0}`)
|
||||
);
|
||||
}
|
||||
async function UpdateHomeData() {}
|
||||
|
||||
async function UpdateTaskList() {
|
||||
const { data } = await api_query_task_configuration_list().send({});
|
||||
setTasksList(data?.data);
|
||||
}
|
||||
async function UpdateTaskList() {}
|
||||
return (
|
||||
<>
|
||||
<div className={classes.home}>
|
||||
|
@ -74,7 +60,7 @@ export default function () {
|
|||
</div>
|
||||
|
||||
<img src={logo} alt="" className={classes.logo} />
|
||||
<span className={classes.pens}>{totalPoint || 0} SCTT</span>
|
||||
<span className={classes.pens}>{totalPoint || 0} PENS</span>
|
||||
<div className={classes.community}>
|
||||
<span className={classes.community_title}>PenguinCoop Community</span>
|
||||
<ul>
|
||||
|
@ -92,15 +78,21 @@ export default function () {
|
|||
<span className={classes.rewards_title}>Your rewards</span>
|
||||
|
||||
<div className={classes.reward_list_item}>
|
||||
<StarOutline color="#ffffff" />
|
||||
<span>Your rewards</span>
|
||||
<span>+{myReward || 0} SCTT</span>
|
||||
<img src={account_age_icon} alt="" />
|
||||
<span>Account Age</span>
|
||||
<span>+{myReward || 0} PENS</span>
|
||||
</div>
|
||||
|
||||
<div className={classes.reward_list_item}>
|
||||
<IconFont name="dianbao" color="#ffffff" />
|
||||
<span>Invite friends</span>
|
||||
<span>{inviteReward || 0}</span>
|
||||
<img src={telegram_premium_icon} alt="" />
|
||||
<span>Telegram Premium</span>
|
||||
<span>+{inviteReward || 0} PENS</span>
|
||||
</div>
|
||||
|
||||
<div className={classes.reward_list_item}>
|
||||
<img src={invited_friends_icon} alt="" />
|
||||
<span>Invited Friends</span>
|
||||
<span>+{inviteReward || 0} PENS</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -5,5 +5,6 @@
|
|||
.container {
|
||||
flex: auto;
|
||||
position: relative;
|
||||
padding-bottom: 94px;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,15 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-19 17:08:37
|
||||
* @LastEditTime: 2024-07-22 11:04:13
|
||||
* @Author: John
|
||||
*/
|
||||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-19 17:08:37
|
||||
* @LastEditTime: 2024-07-22 11:00:28
|
||||
* @Author: John
|
||||
*/
|
||||
import { Route, Routes, useNavigate } from "react-router-dom";
|
||||
import Home from "./Home";
|
||||
import { Badge, TabBar } from "antd-mobile";
|
||||
|
@ -12,6 +24,8 @@ import classes from "./Index-m.module.css";
|
|||
import Leaderboard from "./Leaderboard";
|
||||
import Frends from "./Frends";
|
||||
import BottomTab from "@/components/BottomTab";
|
||||
import Launchpool from "./Launchpool";
|
||||
import Earns from "./Earns";
|
||||
const tabs = [
|
||||
{
|
||||
key: "0",
|
||||
|
@ -38,6 +52,8 @@ export default function () {
|
|||
<Routes>
|
||||
<Route path="/" element={<Home />} />
|
||||
<Route path="/leaderboard" element={<Leaderboard />} />
|
||||
<Route path="/launchpool" element={<Launchpool />} />
|
||||
<Route path="/earns" element={<Earns />} />
|
||||
<Route path="/friends" element={<Frends />} />
|
||||
</Routes>
|
||||
</div>
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
.Launchpool {
|
||||
min-height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 13px;
|
||||
> span {
|
||||
opacity: 1;
|
||||
|
||||
font-family: Roboto;
|
||||
font-size: 18px;
|
||||
font-weight: normal;
|
||||
line-height: 24px;
|
||||
text-transform: capitalize;
|
||||
letter-spacing: 0em;
|
||||
|
||||
font-variation-settings: "opsz" auto;
|
||||
font-feature-settings: "kern" on;
|
||||
color: #adadad;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-22 10:59:37
|
||||
* @LastEditTime: 2024-07-22 11:11:20
|
||||
* @Author: John
|
||||
*/
|
||||
import logo from "@/assets/logo.svg";
|
||||
import classes from "./Launchpool-m.module.css";
|
||||
export default function () {
|
||||
return (
|
||||
<>
|
||||
<div className={classes.Launchpool}>
|
||||
<img src={logo} alt="" />
|
||||
<span>Coming Soon!</span>
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
}
|
|
@ -25,16 +25,16 @@
|
|||
border-radius: 12px;
|
||||
opacity: 1;
|
||||
|
||||
/* 自动布局 */
|
||||
background: #18181b;
|
||||
|
||||
box-sizing: border-box;
|
||||
border: 1px solid #27272a;
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 13px 15px;
|
||||
|
||||
/* background: #1e1e1e; */
|
||||
background-image: url("../assets/user_rank_bg.svg");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
border-radius: 0px;
|
||||
padding: 0 13px;
|
||||
|
||||
gap: 12px;
|
||||
margin-top: 38px;
|
||||
> div {
|
||||
|
@ -157,7 +157,6 @@
|
|||
.rank_list {
|
||||
width: 100%;
|
||||
padding: 0 15px;
|
||||
padding-bottom: 94px;
|
||||
margin-top: 32px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
@ -165,6 +164,19 @@
|
|||
.rank_item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
width: 345px;
|
||||
height: 68px;
|
||||
border-radius: 12px;
|
||||
opacity: 1;
|
||||
|
||||
background: #18181b;
|
||||
|
||||
box-sizing: border-box;
|
||||
border: 1px solid #27272a;
|
||||
|
||||
padding: 0 12px;
|
||||
|
||||
gap: 12px;
|
||||
|
||||
> svg {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-13 16:08:04
|
||||
* @LastEditTime: 2024-07-19 14:55:57
|
||||
* @LastEditTime: 2024-07-22 13:42:56
|
||||
* @Author: John
|
||||
*/
|
||||
import { Avatar, Button } from "antd-mobile";
|
||||
|
@ -12,19 +12,19 @@ import rank2 from "@/assets/rank2.svg";
|
|||
import rank3 from "@/assets/rank3.svg";
|
||||
|
||||
import { useEffect, useState } from "react";
|
||||
import { api_ranking } from "@/server/api";
|
||||
import { RewardVo } from "@/server/module";
|
||||
export default function () {
|
||||
const [userRank, setUserRank] = useState<RewardVo>();
|
||||
const [ranks, setRanks] = useState<RewardVo[]>();
|
||||
const [ranks, setRanks] = useState<RewardVo[]>([
|
||||
{
|
||||
tgName: "LAW.D",
|
||||
amount: "49,055,319",
|
||||
ranking: 1,
|
||||
},
|
||||
]);
|
||||
const [totalUser, setTotalUser] = useState<number>();
|
||||
useEffect(() => {
|
||||
(async () => {
|
||||
const { data } = await api_ranking().send({});
|
||||
setUserRank(data?.data.rewardVo);
|
||||
setRanks(data?.data.rewardVos);
|
||||
setTotalUser(data?.data.numberOfUsers);
|
||||
})();
|
||||
(async () => {})();
|
||||
|
||||
return () => {};
|
||||
}, []);
|
||||
|
@ -32,7 +32,7 @@ export default function () {
|
|||
return (
|
||||
<>
|
||||
<div className={classes.leaderboard}>
|
||||
<span className={classes.top_title}>Telegram Wall of Fame</span>
|
||||
<span className={classes.top_title}>Penguin Champs</span>
|
||||
<div className={classes.rank_data}>
|
||||
<Avatar src="" />
|
||||
<div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* @LastEditors: John
|
||||
* @Date: 2024-07-15 10:35:20
|
||||
* @LastEditTime: 2024-07-19 15:50:19
|
||||
* @LastEditTime: 2024-07-22 13:42:07
|
||||
* @Author: John
|
||||
*/
|
||||
import { GET, POST } from "./client";
|
||||
|
@ -11,112 +11,3 @@ import {
|
|||
taskConfigurationListItem,
|
||||
userBenefits,
|
||||
} from "./module";
|
||||
|
||||
// 登录
|
||||
export function api_login() {
|
||||
return POST<
|
||||
{
|
||||
initData: string;
|
||||
invitationCode?: string;
|
||||
},
|
||||
{ token: string }
|
||||
>({
|
||||
url: "/api/account/signIn",
|
||||
});
|
||||
}
|
||||
|
||||
// 查询用户是否领取注册奖励
|
||||
export function api_query_whether_the_user_receives_the_registration_reward() {
|
||||
return GET<any, string>({
|
||||
url: "/api/reward/signUpForIncentives",
|
||||
});
|
||||
}
|
||||
|
||||
// 领取奖励
|
||||
export function api_receive_rewards() {
|
||||
return POST<any, { reward: string; year: number }, { status?: number }>({
|
||||
url: "/api/reward/claimYourRewards",
|
||||
});
|
||||
}
|
||||
|
||||
// 排行
|
||||
export function api_ranking() {
|
||||
return GET<
|
||||
any,
|
||||
{
|
||||
rewardVo: RewardVo;
|
||||
rewardVos: RewardVo[];
|
||||
numberOfUsers: number;
|
||||
}
|
||||
>({
|
||||
url: "/api/reward/rankingWalletLog",
|
||||
});
|
||||
}
|
||||
|
||||
// 首页查询用户收益
|
||||
export function api_homepage_query_user_income() {
|
||||
return GET<any, { wordRewar: string; teamRewar: string }>({
|
||||
url: "/api/reward/userBenefits",
|
||||
});
|
||||
}
|
||||
|
||||
// 获取用户信息
|
||||
export function api_get_user_information() {
|
||||
return GET<
|
||||
any,
|
||||
{
|
||||
account: string;
|
||||
accountType: number;
|
||||
allPid: string;
|
||||
chainType: number;
|
||||
codePrompt: number;
|
||||
createTime: string;
|
||||
flag: number;
|
||||
id: string;
|
||||
level: number;
|
||||
minLevel: number;
|
||||
mintNumber: number;
|
||||
passwordLogin: string;
|
||||
passwordPay: string;
|
||||
presidentNumber: number;
|
||||
referId: string;
|
||||
shareCode: string;
|
||||
shareNum: number;
|
||||
teamNum: number;
|
||||
uid: string;
|
||||
updateTime: string;
|
||||
userImg: string;
|
||||
userType: number;
|
||||
}
|
||||
>({
|
||||
url: "/api/user/findUser",
|
||||
});
|
||||
}
|
||||
|
||||
// 首页下级用户
|
||||
export function api_homepage_subordinates_users() {
|
||||
return GET<{ level: number }, subordinatesUsers[]>({
|
||||
url: "/api/reward/subordinateUsers",
|
||||
});
|
||||
}
|
||||
|
||||
// 关注推特
|
||||
export function api_follow_twitter() {
|
||||
return POST<any, {}>({
|
||||
url: "/api/reward/followTwitter",
|
||||
});
|
||||
}
|
||||
|
||||
// 查询任务配置列表
|
||||
|
||||
export function api_query_task_configuration_list() {
|
||||
return GET<any, taskConfigurationListItem[]>({
|
||||
url: "/api/task-config",
|
||||
});
|
||||
}
|
||||
|
||||
export function api_start_task() {
|
||||
return POST<any, {}, { id: string }>({
|
||||
url: "/api/task-config",
|
||||
});
|
||||
}
|
||||
|
|