fix
2
.env.dev
Normal file
@ -0,0 +1,2 @@
|
||||
VUE_APP_BASE_API='https://webapi.cebggame.com'
|
||||
VUE_APP_GPAL_API='http://192.168.100.83:4000/sns'
|
2
.env.development
Normal file
@ -0,0 +1,2 @@
|
||||
VUE_APP_BASE_API='https://webapi.cebggame.com'
|
||||
VUE_APP_GPAL_API='http://192.168.100.83:4000/sns'
|
1
.env.production
Normal file
@ -0,0 +1 @@
|
||||
VUE_APP_BASE_API='https://webapi.cebggame.com'
|
15
.gitignore
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
.DS_Store
|
||||
node_modules/
|
||||
/dist/
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# Editor directories and files
|
||||
.idea
|
||||
.vscode
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
|
455
README.md
@ -1 +1,454 @@
|
||||
fdfvfd
|
||||
运行代码指令
|
||||
npm run dev
|
||||
yarn run dev
|
||||
const ERC20ABI = [
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "_nftTarget",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
internalType: "address[]",
|
||||
name: "_manageAddress",
|
||||
type: "address[]"
|
||||
}
|
||||
],
|
||||
stateMutability: "nonpayable",
|
||||
type: "constructor"
|
||||
},
|
||||
{
|
||||
anonymous: false,
|
||||
inputs: [
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "address",
|
||||
name: "user",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "address",
|
||||
name: "nft",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
indexed: false,
|
||||
internalType: "uint256[]",
|
||||
name: "nftSIds",
|
||||
type: "uint256[]"
|
||||
},
|
||||
{
|
||||
indexed: false,
|
||||
internalType: "uint256[]",
|
||||
name: "nftTIds",
|
||||
type: "uint256[]"
|
||||
}
|
||||
],
|
||||
name: "Minted",
|
||||
type: "event"
|
||||
},
|
||||
{
|
||||
anonymous: false,
|
||||
inputs: [
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "bytes32",
|
||||
name: "previousAdminRole",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "bytes32",
|
||||
name: "newAdminRole",
|
||||
type: "bytes32"
|
||||
}
|
||||
],
|
||||
name: "RoleAdminChanged",
|
||||
type: "event"
|
||||
},
|
||||
{
|
||||
anonymous: false,
|
||||
inputs: [
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "address",
|
||||
name: "account",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "address",
|
||||
name: "sender",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "RoleGranted",
|
||||
type: "event"
|
||||
},
|
||||
{
|
||||
anonymous: false,
|
||||
inputs: [
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "address",
|
||||
name: "account",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
indexed: true,
|
||||
internalType: "address",
|
||||
name: "sender",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "RoleRevoked",
|
||||
type: "event"
|
||||
},
|
||||
{
|
||||
inputs: [],
|
||||
name: "DEFAULT_ADMIN_ROLE",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "",
|
||||
type: "bytes32"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [],
|
||||
name: "MANAGE_ROLE",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "",
|
||||
type: "bytes32"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
}
|
||||
],
|
||||
name: "getRoleAdmin",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "",
|
||||
type: "bytes32"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "index",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
name: "getRoleMember",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
}
|
||||
],
|
||||
name: "getRoleMemberCount",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
internalType: "address",
|
||||
name: "account",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "grantRole",
|
||||
outputs: [],
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
internalType: "address",
|
||||
name: "account",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "hasRole",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "bool",
|
||||
name: "",
|
||||
type: "bool"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [],
|
||||
name: "nft",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "contract IBEERC721",
|
||||
name: "",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
name: "nftMinted",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "bool",
|
||||
name: "",
|
||||
type: "bool"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
name: "ownerToNFTs",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
internalType: "address",
|
||||
name: "account",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "renounceRole",
|
||||
outputs: [],
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes32",
|
||||
name: "role",
|
||||
type: "bytes32"
|
||||
},
|
||||
{
|
||||
internalType: "address",
|
||||
name: "account",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "revokeRole",
|
||||
outputs: [],
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "bytes4",
|
||||
name: "interfaceId",
|
||||
type: "bytes4"
|
||||
}
|
||||
],
|
||||
name: "supportsInterface",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "bool",
|
||||
name: "",
|
||||
type: "bool"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "_user",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "count",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
name: "mintToUser",
|
||||
outputs: [],
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "_user",
|
||||
type: "address"
|
||||
},
|
||||
{
|
||||
internalType: "uint256[]",
|
||||
name: "_nftIds",
|
||||
type: "uint256[]"
|
||||
}
|
||||
],
|
||||
name: "addNFTData",
|
||||
outputs: [],
|
||||
stateMutability: "nonpayable",
|
||||
type: "function"
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "_user",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "getMintableCount",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "uint256",
|
||||
name: "",
|
||||
type: "uint256"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
},
|
||||
{
|
||||
inputs: [
|
||||
{
|
||||
internalType: "address",
|
||||
name: "_user",
|
||||
type: "address"
|
||||
}
|
||||
],
|
||||
name: "getMintableNftIds",
|
||||
outputs: [
|
||||
{
|
||||
internalType: "uint256[]",
|
||||
name: "",
|
||||
type: "uint256[]"
|
||||
}
|
||||
],
|
||||
stateMutability: "view",
|
||||
type: "function",
|
||||
constant: true
|
||||
}
|
||||
]
|
6
README.txt
Normal file
@ -0,0 +1,6 @@
|
||||
|
||||
build command:
|
||||
|
||||
export NODE_OPTIONS=--max_old_space_size=8192
|
||||
npm run build:prod
|
||||
|
18
index.html
Normal file
@ -0,0 +1,18 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" href="/favicon.ico" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>CEBG - Anime PUBG on fire!</title>
|
||||
</head>
|
||||
<script type="module">
|
||||
import {Buffer} from 'buffer';
|
||||
window.Buffer = Buffer;
|
||||
</script>
|
||||
<body>
|
||||
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.js"></script>
|
||||
</body>
|
||||
</html>
|
20138
package-lock.json
generated
Normal file
56
package.json
Normal file
@ -0,0 +1,56 @@
|
||||
{
|
||||
"name": "my-vue-app",
|
||||
"private": true,
|
||||
"version": "0.0.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite --host --mode dev",
|
||||
"build:dev": "vite build --mode dev",
|
||||
"build:test": "vite build --mode test",
|
||||
"build:prod": "vite build --mode production"
|
||||
},
|
||||
"dependencies": {
|
||||
"@animxyz/core": "^0.6.6",
|
||||
"@animxyz/vue3": "^0.6.7",
|
||||
"@esbuild-plugins/node-globals-polyfill": "^0.2.3",
|
||||
"@metamask/safe-event-emitter": "^2.0.0",
|
||||
"@vue/runtime-dom": "^3.2.47",
|
||||
"@vueuse/core": "^9.12.0",
|
||||
"@walletconnect/web3-provider": "^1.8.0",
|
||||
"animate.css": "^4.1.1",
|
||||
"ant-design-vue": "^3.2.15",
|
||||
"axios": "^1.3.3",
|
||||
"buffer": "^6.0.3",
|
||||
"gsap": "^3.11.5",
|
||||
"js-cookie": "^3.0.1",
|
||||
"normalize.css": "^8.0.1",
|
||||
"pinia": "^2.0.30",
|
||||
"postcss-px-to-viewport": "^1.1.1",
|
||||
"process": "^0.11.10",
|
||||
"rollup-plugin-polyfill-node": "^0.12.0",
|
||||
"stream-browserify": "^3.0.0",
|
||||
"swiper": "8",
|
||||
"util": "^0.12.5",
|
||||
"video.js": "^8.0.4",
|
||||
"videojs-flash": "^2.2.1",
|
||||
"vue": "^3.2.45",
|
||||
"vue-3d-loader": "^2.1.5",
|
||||
"vue-router": "^4.1.6",
|
||||
"web3": "^1.8.2",
|
||||
"youtube-player": "^5.6.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vitejs/plugin-vue": "^4.0.0",
|
||||
"autoprefixer": "^10.4.14",
|
||||
"eslint-config-prettier": "^8.6.0",
|
||||
"eslint-plugin-prettier": "^4.2.1",
|
||||
"postcss": "^8.4.21",
|
||||
"prettier": "^2.8.4",
|
||||
"sass": "^1.58.1",
|
||||
"tailwindcss": "^3.3.1",
|
||||
"terser": "^5.16.3",
|
||||
"vite": "^4.1.0",
|
||||
"vite-plugin-prerender": "^1.0.8",
|
||||
"vite-plugin-require-transform": "^1.0.9"
|
||||
}
|
||||
}
|
23
postcss.config.cjs
Normal file
@ -0,0 +1,23 @@
|
||||
module.exports = {
|
||||
plugins: {
|
||||
'postcss-px-to-viewport': {
|
||||
unitToConvert: 'px', // 需要转换的单位,默认为"px"
|
||||
viewportWidth: 1920, // 设计稿的视口宽度
|
||||
unitPrecision: 5, // 单位转换后保留的精度
|
||||
propList: ['*'], // 能转化为vw的属性列表
|
||||
viewportUnit: 'vw', // 希望使用的视口单位
|
||||
fontViewportUnit: 'vw', // 字体使用的视口单位
|
||||
selectorBlackList: [], // 需要忽略的CSS选择器,不会转为视口单位,使用原有的px等单位。
|
||||
minPixelValue: 1, // 设置最小的转换数值,如果为1的话,只有大于1的值会被转换
|
||||
mediaQuery: false, // 媒体查询里的单位是否需要转换单位
|
||||
replace: true, // 是否直接更换属性值,而不添加备用属性
|
||||
exclude: undefined, // 忽略某些文件夹下的文件或特定文件,例如 'node_modules' 下的文件
|
||||
include: undefined, // 如果设置了include,那将只有匹配到的文件才会被转换
|
||||
landscape: false, // 是否添加根据 landscapeWidth 生成的媒体查询条件 @media (orientation: landscape)
|
||||
landscapeUnit: 'vw', // 横屏时使用的单位
|
||||
landscapeWidth: 1920 // 横屏时使用的视口宽度
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
6
postcss.config.js
Normal file
@ -0,0 +1,6 @@
|
||||
export default {
|
||||
plugins: {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {},
|
||||
},
|
||||
}
|
1
public/app-ads.txt
Normal file
@ -0,0 +1 @@
|
||||
facebook.com, 738821754408343, DIRECT, c3e20eee3f780d68
|
BIN
public/favicon.ico
Normal file
After Width: | Height: | Size: 4.2 KiB |
55
src/App.vue
Normal file
@ -0,0 +1,55 @@
|
||||
<template>
|
||||
<div>
|
||||
<Layout></Layout>
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import Layout from "@/components/layout/index.vue";
|
||||
import { gsap } from "gsap";
|
||||
|
||||
import { ScrollTrigger } from "gsap/ScrollTrigger";
|
||||
|
||||
gsap.registerPlugin(ScrollTrigger);
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
body,
|
||||
html {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
line-height: 1.1;
|
||||
font-family: "ui-sans-serif", "system-ui", "-apple-system",
|
||||
"BlinkMacSystemFont", "Segoe UI", "Roboto", "Helvetica Neue", "Arial",
|
||||
"Noto Sans", "sans-serif", "Apple Color Emoji", "Segoe UI Emoji",
|
||||
"Segoe UI Symbol", "Noto Color Emoji";
|
||||
audio,
|
||||
canvas,
|
||||
embed,
|
||||
iframe,
|
||||
img,
|
||||
object,
|
||||
svg,
|
||||
video {
|
||||
display: block;
|
||||
vertical-align: middle;
|
||||
}
|
||||
img,
|
||||
video {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
}
|
||||
.fade-enter-active,
|
||||
.fade-leave-active {
|
||||
transition: opacity 0.5s ease;
|
||||
}
|
||||
|
||||
.fade-enter-from,
|
||||
.fade-leave-to {
|
||||
opacity: 0;
|
||||
}
|
||||
@font-face {
|
||||
font-family: "MyFont";
|
||||
src: url("/fonts/myfont.ttf") format("truetype");
|
||||
}
|
||||
</style>
|
49
src/api/User.js
Normal file
@ -0,0 +1,49 @@
|
||||
import request from "@/utils/request";
|
||||
|
||||
const GPAL_URL = import.meta.env.VUE_APP_GPAL_API;
|
||||
|
||||
export const defaultUser = {
|
||||
id: "",
|
||||
username: "",
|
||||
showname: "",
|
||||
comment: "",
|
||||
locked: false,
|
||||
password: "",
|
||||
avatar: "",
|
||||
account: "",
|
||||
};
|
||||
/**
|
||||
* @param data {account: string, token: string}
|
||||
*/
|
||||
export const getUserInfo = (data) =>
|
||||
request({
|
||||
url: "/webapp/index.php?c=BcUser&a=info",
|
||||
method: "get",
|
||||
params: data,
|
||||
});
|
||||
|
||||
export const login = (data) =>
|
||||
request({
|
||||
url: "/api/user/login",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
|
||||
export const logout = () =>
|
||||
request({
|
||||
url: "/api/user/logout",
|
||||
method: "post",
|
||||
});
|
||||
//
|
||||
// export const changePass = (params: any) =>
|
||||
// request({
|
||||
// url: '/api/user/passwd',
|
||||
// method: 'post',
|
||||
// data: params
|
||||
// })
|
||||
|
||||
export const getNonce = () =>
|
||||
request({
|
||||
url: "/api/user/login",
|
||||
method: "get",
|
||||
});
|
29
src/api/badge.js
Normal file
@ -0,0 +1,29 @@
|
||||
import request from "@/utils/request";
|
||||
/**
|
||||
* begin claim badge
|
||||
* @param {*} data: {id: string}
|
||||
* @returns
|
||||
*/
|
||||
export const beginClaim = (data) =>
|
||||
request({
|
||||
url: "/api/user/claim",
|
||||
method: "post",
|
||||
data,
|
||||
});
|
||||
|
||||
/**
|
||||
* 检查claim状态
|
||||
* @param {*} taskId
|
||||
* @returns
|
||||
*/
|
||||
export const checkClaimStatus = (taskId) =>
|
||||
request({
|
||||
url: `/api/user/claim/${taskId}`,
|
||||
method: "get",
|
||||
});
|
||||
|
||||
export const claimInfoStatus = () =>
|
||||
request({
|
||||
url: `/api/user/claim_info`,
|
||||
method: "get",
|
||||
});
|
349
src/assets/css/normalize.css
vendored
Normal file
@ -0,0 +1,349 @@
|
||||
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
|
||||
|
||||
/* Document
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Correct the line height in all browsers.
|
||||
* 2. Prevent adjustments of font size after orientation changes in iOS.
|
||||
*/
|
||||
|
||||
html {
|
||||
line-height: 1.15; /* 1 */
|
||||
-webkit-text-size-adjust: 100%; /* 2 */
|
||||
}
|
||||
|
||||
/* Sections
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the margin in all browsers.
|
||||
*/
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Render the `main` element consistently in IE.
|
||||
*/
|
||||
|
||||
main {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the font size and margin on `h1` elements within `section` and
|
||||
* `article` contexts in Chrome, Firefox, and Safari.
|
||||
*/
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: 0.67em 0;
|
||||
}
|
||||
|
||||
/* Grouping content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Add the correct box sizing in Firefox.
|
||||
* 2. Show the overflow in Edge and IE.
|
||||
*/
|
||||
|
||||
hr {
|
||||
box-sizing: content-box; /* 1 */
|
||||
height: 0; /* 1 */
|
||||
overflow: visible; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||
* 2. Correct the odd `em` font sizing in all browsers.
|
||||
*/
|
||||
|
||||
pre {
|
||||
font-family: monospace, monospace; /* 1 */
|
||||
font-size: 1em; /* 2 */
|
||||
}
|
||||
|
||||
/* Text-level semantics
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the gray background on active links in IE 10.
|
||||
*/
|
||||
|
||||
a {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Remove the bottom border in Chrome 57-
|
||||
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
|
||||
*/
|
||||
|
||||
abbr[title] {
|
||||
border-bottom: none; /* 1 */
|
||||
text-decoration: underline; /* 2 */
|
||||
text-decoration: underline dotted; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct font weight in Chrome, Edge, and Safari.
|
||||
*/
|
||||
|
||||
b,
|
||||
strong {
|
||||
font-weight: bolder;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inheritance and scaling of font size in all browsers.
|
||||
* 2. Correct the odd `em` font sizing in all browsers.
|
||||
*/
|
||||
|
||||
code,
|
||||
kbd,
|
||||
samp {
|
||||
font-family: monospace, monospace; /* 1 */
|
||||
font-size: 1em; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct font size in all browsers.
|
||||
*/
|
||||
|
||||
small {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prevent `sub` and `sup` elements from affecting the line height in
|
||||
* all browsers.
|
||||
*/
|
||||
|
||||
sub,
|
||||
sup {
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
position: relative;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
|
||||
/* Embedded content
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Remove the border on images inside links in IE 10.
|
||||
*/
|
||||
|
||||
img {
|
||||
border-style: none;
|
||||
}
|
||||
|
||||
/* Forms
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* 1. Change the font styles in all browsers.
|
||||
* 2. Remove the margin in Firefox and Safari.
|
||||
*/
|
||||
|
||||
button,
|
||||
input,
|
||||
optgroup,
|
||||
select,
|
||||
textarea {
|
||||
font-family: inherit; /* 1 */
|
||||
font-size: 100%; /* 1 */
|
||||
line-height: 1.15; /* 1 */
|
||||
margin: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the overflow in IE.
|
||||
* 1. Show the overflow in Edge.
|
||||
*/
|
||||
|
||||
button,
|
||||
input { /* 1 */
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inheritance of text transform in Edge, Firefox, and IE.
|
||||
* 1. Remove the inheritance of text transform in Firefox.
|
||||
*/
|
||||
|
||||
button,
|
||||
select { /* 1 */
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the inability to style clickable types in iOS and Safari.
|
||||
*/
|
||||
|
||||
button,
|
||||
[type="button"],
|
||||
[type="reset"],
|
||||
[type="submit"] {
|
||||
-webkit-appearance: button;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inner border and padding in Firefox.
|
||||
*/
|
||||
|
||||
button::-moz-focus-inner,
|
||||
[type="button"]::-moz-focus-inner,
|
||||
[type="reset"]::-moz-focus-inner,
|
||||
[type="submit"]::-moz-focus-inner {
|
||||
border-style: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore the focus styles unset by the previous rule.
|
||||
*/
|
||||
|
||||
button:-moz-focusring,
|
||||
[type="button"]:-moz-focusring,
|
||||
[type="reset"]:-moz-focusring,
|
||||
[type="submit"]:-moz-focusring {
|
||||
outline: 1px dotted ButtonText;
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the padding in Firefox.
|
||||
*/
|
||||
|
||||
fieldset {
|
||||
padding: 0.35em 0.75em 0.625em;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the text wrapping in Edge and IE.
|
||||
* 2. Correct the color inheritance from `fieldset` elements in IE.
|
||||
* 3. Remove the padding so developers are not caught out when they zero out
|
||||
* `fieldset` elements in all browsers.
|
||||
*/
|
||||
|
||||
legend {
|
||||
box-sizing: border-box; /* 1 */
|
||||
color: inherit; /* 2 */
|
||||
display: table; /* 1 */
|
||||
max-width: 100%; /* 1 */
|
||||
padding: 0; /* 3 */
|
||||
white-space: normal; /* 1 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct vertical alignment in Chrome, Firefox, and Opera.
|
||||
*/
|
||||
|
||||
progress {
|
||||
vertical-align: baseline;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the default vertical scrollbar in IE 10+.
|
||||
*/
|
||||
|
||||
textarea {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Add the correct box sizing in IE 10.
|
||||
* 2. Remove the padding in IE 10.
|
||||
*/
|
||||
|
||||
[type="checkbox"],
|
||||
[type="radio"] {
|
||||
box-sizing: border-box; /* 1 */
|
||||
padding: 0; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Correct the cursor style of increment and decrement buttons in Chrome.
|
||||
*/
|
||||
|
||||
[type="number"]::-webkit-inner-spin-button,
|
||||
[type="number"]::-webkit-outer-spin-button {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the odd appearance in Chrome and Safari.
|
||||
* 2. Correct the outline style in Safari.
|
||||
*/
|
||||
|
||||
[type="search"] {
|
||||
-webkit-appearance: textfield; /* 1 */
|
||||
outline-offset: -2px; /* 2 */
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the inner padding in Chrome and Safari on macOS.
|
||||
*/
|
||||
|
||||
[type="search"]::-webkit-search-decoration {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* 1. Correct the inability to style clickable types in iOS and Safari.
|
||||
* 2. Change font properties to `inherit` in Safari.
|
||||
*/
|
||||
|
||||
::-webkit-file-upload-button {
|
||||
-webkit-appearance: button; /* 1 */
|
||||
font: inherit; /* 2 */
|
||||
}
|
||||
|
||||
/* Interactive
|
||||
========================================================================== */
|
||||
|
||||
/*
|
||||
* Add the correct display in Edge, IE 10+, and Firefox.
|
||||
*/
|
||||
|
||||
details {
|
||||
display: block;
|
||||
}
|
||||
|
||||
/*
|
||||
* Add the correct display in all browsers.
|
||||
*/
|
||||
|
||||
summary {
|
||||
display: list-item;
|
||||
}
|
||||
|
||||
/* Misc
|
||||
========================================================================== */
|
||||
|
||||
/**
|
||||
* Add the correct display in IE 10+.
|
||||
*/
|
||||
|
||||
template {
|
||||
display: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add the correct display in IE 10.
|
||||
*/
|
||||
|
||||
[hidden] {
|
||||
display: none;
|
||||
}
|
BIN
src/assets/img/badge/BRAVE.png
Normal file
After Width: | Height: | Size: 832 KiB |
BIN
src/assets/img/badge/Badge领取(切图)-0509_slices (10)/active-dot.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 184 B |
After Width: | Height: | Size: 672 B |
After Width: | Height: | Size: 169 B |
After Width: | Height: | Size: 694 B |
After Width: | Height: | Size: 154 B |
BIN
src/assets/img/badge/Badge领取(切图)-0509_slices (11)/active-dot.png
Normal file
After Width: | Height: | Size: 786 B |
BIN
src/assets/img/badge/CANDY.png
Normal file
After Width: | Height: | Size: 801 KiB |
BIN
src/assets/img/badge/EXPLTORER.png
Normal file
After Width: | Height: | Size: 858 KiB |
BIN
src/assets/img/badge/LOGO.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
src/assets/img/badge/active-dot-boder.png
Normal file
After Width: | Height: | Size: 154 B |
BIN
src/assets/img/badge/active-dot.png
Normal file
After Width: | Height: | Size: 786 B |
BIN
src/assets/img/badge/bg.png
Normal file
After Width: | Height: | Size: 1.3 MiB |
BIN
src/assets/img/badge/card-top-img.png
Normal file
After Width: | Height: | Size: 804 KiB |
BIN
src/assets/img/badge/claim-active.png
Normal file
After Width: | Height: | Size: 881 B |
BIN
src/assets/img/badge/claim.png
Normal file
After Width: | Height: | Size: 927 B |
BIN
src/assets/img/badge/close.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
src/assets/img/badge/date-icon.png
Normal file
After Width: | Height: | Size: 561 B |
BIN
src/assets/img/badge/dialog-bg.png
Normal file
After Width: | Height: | Size: 45 KiB |
BIN
src/assets/img/badge/disable message.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
src/assets/img/badge/dropdown-menu-bg.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
src/assets/img/badge/explorerBG.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
src/assets/img/badge/genesis.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
BIN
src/assets/img/badge/gray-border.png
Normal file
After Width: | Height: | Size: 184 B |
BIN
src/assets/img/badge/gray-yellow-border.png
Normal file
After Width: | Height: | Size: 706 B |
BIN
src/assets/img/badge/grey.png
Normal file
After Width: | Height: | Size: 181 B |
BIN
src/assets/img/badge/hero.png
Normal file
After Width: | Height: | Size: 258 KiB |
BIN
src/assets/img/badge/inactive-dot.png
Normal file
After Width: | Height: | Size: 672 B |
BIN
src/assets/img/badge/left-text.png
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
src/assets/img/badge/login-btn-active.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
src/assets/img/badge/login-btn.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
src/assets/img/badge/more-active.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/img/badge/more-hover.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
src/assets/img/badge/more.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
src/assets/img/badge/more交互.png
Normal file
After Width: | Height: | Size: 579 B |
BIN
src/assets/img/badge/nav-bg.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
src/assets/img/badge/next.png
Normal file
After Width: | Height: | Size: 989 B |
BIN
src/assets/img/badge/prev.png
Normal file
After Width: | Height: | Size: 1005 B |
BIN
src/assets/img/badge/rabbit.png
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
src/assets/img/badge/right-text.png
Normal file
After Width: | Height: | Size: 54 KiB |
BIN
src/assets/img/badge/sisclaim.png
Normal file
After Width: | Height: | Size: 956 B |
BIN
src/assets/img/badge/star-bg.png
Normal file
After Width: | Height: | Size: 34 KiB |
BIN
src/assets/img/badge/swiper-btn-bg.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
src/assets/img/badge/timeline.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
src/assets/img/badge/title-boder.png
Normal file
After Width: | Height: | Size: 187 B |
BIN
src/assets/img/badge/top-boder-img.png
Normal file
After Width: | Height: | Size: 9.3 KiB |
BIN
src/assets/img/badge/triangle-black.png
Normal file
After Width: | Height: | Size: 209 B |
BIN
src/assets/img/badge/triangle-yellow.png
Normal file
After Width: | Height: | Size: 172 B |
BIN
src/assets/img/badge/yellow-border.png
Normal file
After Width: | Height: | Size: 169 B |
BIN
src/assets/img/badge/yellow-gray-border.png
Normal file
After Width: | Height: | Size: 694 B |
BIN
src/assets/img/home/avatar.png
Normal file
After Width: | Height: | Size: 7.9 KiB |
BIN
src/assets/img/home/copy.png
Normal file
After Width: | Height: | Size: 373 B |
BIN
src/assets/img/home/header-logo.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
BIN
src/assets/img/home/link-icon.png
Normal file
After Width: | Height: | Size: 318 B |
BIN
src/assets/img/home/loading/attack-img.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/img/home/loading/baojilv-img.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
src/assets/img/home/loading/cri-damage-img.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
src/assets/img/home/loading/critical-img.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
src/assets/img/home/loading/dodge-ruduce-img.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
src/assets/img/home/loading/logo.png
Normal file
After Width: | Height: | Size: 29 KiB |
BIN
src/assets/img/home/logo.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
src/assets/img/home/logo/betterversedao.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
src/assets/img/home/logo/capltal.png
Normal file
After Width: | Height: | Size: 5.9 KiB |
BIN
src/assets/img/home/logo/discord-active.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
src/assets/img/home/logo/discord.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
src/assets/img/home/logo/grs.png
Normal file
After Width: | Height: | Size: 4.5 KiB |
BIN
src/assets/img/home/logo/hashkey.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
BIN
src/assets/img/home/logo/initiate-catital.png
Normal file
After Width: | Height: | Size: 5.2 KiB |
BIN
src/assets/img/home/logo/kernel.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
src/assets/img/home/logo/kucoin.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
src/assets/img/home/logo/snz.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
src/assets/img/home/logo/telegram-active.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
src/assets/img/home/logo/telegram.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
src/assets/img/home/logo/twiter-active.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
BIN
src/assets/img/home/logo/twiter.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
src/assets/img/home/logo/youbiocapital.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
BIN
src/assets/img/home/poster.png
Normal file
After Width: | Height: | Size: 374 B |
BIN
src/assets/img/home/rise.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
1
src/assets/svg/android.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1677464048404" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5219" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M911.020879 320.237361c-36.202548 0-66.192962 28.664228-66.192962 63.470791V630.54159c0 34.806563 28.966692 63.494057 66.192962 63.494057 36.179281 0 66.169695-28.687495 66.169695-63.517323V383.731418c-1.023722-34.806563-29.990414-63.470791-66.169695-63.47079z m-798.317365 0C76.547499 320.237361 46.533818 348.901589 46.533818 383.684885V630.54159c0 34.806563 28.943425 63.494057 66.169696 63.494057 37.22627 0 66.192962-28.687495 66.192961-63.517323V383.731418c0-34.806563-28.966692-63.470791-66.192961-63.47079z m106.513665 2.047445v451.601191c0 26.616783 22.754558 49.138677 51.697983 49.138677h58.957106v137.225338c0 34.829829 28.943425 63.494057 66.169695 63.494057 36.202548 0 66.192962-28.664228 66.192962-63.494057v-137.225338h103.395965v137.225338c0 34.829829 28.966692 63.494057 66.192962 63.494057C667.979867 1023.744069 697.993547 995.079841 697.993547 960.250012v-137.225338h58.933839c28.966692 0 51.721249-21.498171 51.72125-49.138677V322.26154H219.217179zM651.46071 88.783026L706.276393 15.051744c2.047445-5.118612 2.047445-11.260947-3.117701-13.308391-4.141423-3.071167-10.33029-1.023722-13.44799 3.071167l-55.839405 76.802449A363.142266 363.142266 0 0 0 511.862196 60.118798c-43.438404 0-84.78283 7.166057-122.009101 21.498171l-55.839405-76.779183c-3.1177-5.118612-9.306568-6.165601-13.44799-3.094433a9.655564 9.655564 0 0 0-2.093978 13.308391l54.815683 73.754548c-85.806553 37.87773-146.811103 109.561567-154.070226 193.530073h588.407734c-9.306568-83.991772-69.310662-155.652342-156.164203-193.553339zM387.782384 205.533916c-18.613135 0-32.061125-13.308392-32.061125-30.711673 0-17.426548 14.471713-30.711673 32.061125-30.711673 18.613135 0 32.037859 13.285125 32.037859 30.711673 0 17.403281-14.471713 30.711673-32.037859 30.711673z m252.301047 0c-18.613135 0-32.061125-13.308392-32.061125-30.711673 0-17.426548 14.494979-30.711673 32.061125-30.711673 18.613135 0 32.061125 13.285125 32.061125 30.711673 0 17.403281-14.471713 30.711673-32.061125 30.711673z" fill="#6E7580" p-id="5220"></path></svg>
|
After Width: | Height: | Size: 2.3 KiB |
1
src/assets/svg/apple.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1677464028670" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4201" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M836.608 675.84q41.984 59.392 96.256 76.8-23.552 72.704-74.752 151.552-78.848 118.784-155.648 118.784-28.672 0-84.992-19.456-52.224-19.456-91.136-19.456t-86.016 20.48q-49.152 19.456-80.896 19.456-92.16 0-181.248-156.672-89.088-154.624-89.088-304.128 0-138.24 67.584-226.304 69.632-88.064 172.032-88.064 22.528 0 50.176 5.632t57.344 20.992q31.744 17.408 52.224 24.064t31.744 6.656q13.312 0 40.96-6.144t55.296-22.528q29.696-16.384 51.2-24.576t44.032-8.192q71.68 0 129.024 38.912 30.72 20.48 62.464 60.416-47.104 40.96-68.608 71.68-39.936 57.344-39.936 124.928 0 74.752 41.984 135.168zM630.784 197.632q-35.84 33.792-65.536 44.032-10.24 3.072-26.112 5.632t-36.352 4.608q1.024-90.112 47.104-155.648t151.552-90.112q2.048 10.24 3.072 14.336l0 11.264q0 36.864-17.408 82.944-18.432 45.056-56.32 82.944z" fill="#272636" p-id="4202"></path></svg>
|
After Width: | Height: | Size: 1.1 KiB |