123
This commit is contained in:
parent
cbe56a5fd8
commit
baa9dfe2ce
16
env/.env
vendored
Normal file
16
env/.env
vendored
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
VITE_APP_TITLE = 'unibest'
|
||||||
|
VITE_APP_PORT = 9000
|
||||||
|
|
||||||
|
VITE_UNI_APPID = 'H57F2ACE4'
|
||||||
|
VITE_WX_APPID = 'wxa2abb91f64032a2b'
|
||||||
|
|
||||||
|
# h5部署网站的base,配置到 manifest.config.ts 里的 h5.router.base
|
||||||
|
VITE_APP_PUBLIC_BASE=/unibest/
|
||||||
|
|
||||||
|
VITE_SERVER_BASEURL = 'https://ukw0y1.laf.run'
|
||||||
|
VITE_UPLOAD_BASEURL = 'https://ukw0y1.laf.run/upload'
|
||||||
|
|
||||||
|
# h5是否需要配置代理
|
||||||
|
VITE_APP_PROXY=false
|
||||||
|
VITE_APP_PROXY_PREFIX = '/api'
|
||||||
|
VITE_BASEURL = 'https://warehouse.szjixun.cn/oa_backend'
|
8
env/.env.dev
vendored
Normal file
8
env/.env.dev
vendored
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# 变量必须以 VITE_ 为前缀才能暴露给外部读取
|
||||||
|
NODE_ENV = 'development'
|
||||||
|
# 是否去除console 和 debugger
|
||||||
|
VITE_DELETE_CONSOLE = false
|
||||||
|
# 是否开启sourcemap
|
||||||
|
VITE_SHOW_SOURCEMAP = true
|
||||||
|
# baseUrl
|
||||||
|
VITE_BASEURL = 'http://appointtest2.szjixun.cn'
|
7
env/.env.prod
vendored
Normal file
7
env/.env.prod
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# 变量必须以 VITE_ 为前缀才能暴露给外部读取
|
||||||
|
NODE_ENV = 'development'
|
||||||
|
# 是否去除console 和 debugger
|
||||||
|
VITE_DELETE_CONSOLE = true
|
||||||
|
# 是否开启sourcemap
|
||||||
|
VITE_SHOW_SOURCEMAP = false
|
||||||
|
VITE_BASEURL = 'https://appoint.szjixun.cn'
|
5
env/.env.test
vendored
Normal file
5
env/.env.test
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# 变量必须以 VITE_ 为前缀才能暴露给外部读取
|
||||||
|
NODE_ENV = 'development'
|
||||||
|
# 是否去除console 和 debugger
|
||||||
|
VITE_DELETE_CONSOLE = false
|
||||||
|
VITE_BASEURL = 'https://appointtest2.szjixun.cn'
|
12
package.json
12
package.json
@ -4,12 +4,17 @@
|
|||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite --mode dev",
|
||||||
"build": "vite build",
|
"prod": "vite --mode prod",
|
||||||
"preview": "vite preview"
|
"main": "vite --mode main",
|
||||||
|
"build-test": "vite build --mode test",
|
||||||
|
"build-prod": "vite build --mode prod",
|
||||||
|
"serve": "vite preview"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@unocss/reset": "^0.61.9",
|
"@unocss/reset": "^0.61.9",
|
||||||
|
"@vueuse/core": "^10.11.0",
|
||||||
|
"axios": "^1.7.3",
|
||||||
"cnjm-postcss-px-to-viewport": "^1.0.1",
|
"cnjm-postcss-px-to-viewport": "^1.0.1",
|
||||||
"jsdom": "^24.0.0",
|
"jsdom": "^24.0.0",
|
||||||
"lodash": "^4.17.21",
|
"lodash": "^4.17.21",
|
||||||
@ -31,6 +36,7 @@
|
|||||||
"@vitejs/plugin-vue": "^5.0.5",
|
"@vitejs/plugin-vue": "^5.0.5",
|
||||||
"autoprefixer": "^10.4.20",
|
"autoprefixer": "^10.4.20",
|
||||||
"babel-plugin-transform-react-jsx": "^6.24.1",
|
"babel-plugin-transform-react-jsx": "^6.24.1",
|
||||||
|
"naive-ui": "^2.39.0",
|
||||||
"postcss": "^8.4.40",
|
"postcss": "^8.4.40",
|
||||||
"sass": "^1.70.0",
|
"sass": "^1.70.0",
|
||||||
"unocss": "^0.61.9",
|
"unocss": "^0.61.9",
|
||||||
|
260
pnpm-lock.yaml
260
pnpm-lock.yaml
@ -11,6 +11,12 @@ importers:
|
|||||||
'@unocss/reset':
|
'@unocss/reset':
|
||||||
specifier: ^0.61.9
|
specifier: ^0.61.9
|
||||||
version: 0.61.9
|
version: 0.61.9
|
||||||
|
'@vueuse/core':
|
||||||
|
specifier: ^10.11.0
|
||||||
|
version: 10.11.0(vue@3.4.35)
|
||||||
|
axios:
|
||||||
|
specifier: ^1.7.3
|
||||||
|
version: 1.7.3
|
||||||
cnjm-postcss-px-to-viewport:
|
cnjm-postcss-px-to-viewport:
|
||||||
specifier: ^1.0.1
|
specifier: ^1.0.1
|
||||||
version: 1.0.1(postcss@8.4.40)
|
version: 1.0.1(postcss@8.4.40)
|
||||||
@ -69,6 +75,9 @@ importers:
|
|||||||
babel-plugin-transform-react-jsx:
|
babel-plugin-transform-react-jsx:
|
||||||
specifier: ^6.24.1
|
specifier: ^6.24.1
|
||||||
version: 6.24.1
|
version: 6.24.1
|
||||||
|
naive-ui:
|
||||||
|
specifier: ^2.39.0
|
||||||
|
version: 2.39.0(vue@3.4.35)
|
||||||
postcss:
|
postcss:
|
||||||
specifier: ^8.4.40
|
specifier: ^8.4.40
|
||||||
version: 8.4.40
|
version: 8.4.40
|
||||||
@ -80,7 +89,7 @@ importers:
|
|||||||
version: 0.61.9(postcss@8.4.40)(rollup@4.20.0)(vite@5.3.5(sass@1.77.8)(terser@5.31.3))
|
version: 0.61.9(postcss@8.4.40)(rollup@4.20.0)(vite@5.3.5(sass@1.77.8)(terser@5.31.3))
|
||||||
unplugin-auto-import:
|
unplugin-auto-import:
|
||||||
specifier: ^0.18.2
|
specifier: ^0.18.2
|
||||||
version: 0.18.2(rollup@4.20.0)
|
version: 0.18.2(@vueuse/core@10.11.0(vue@3.4.35))(rollup@4.20.0)
|
||||||
unplugin-vue-components:
|
unplugin-vue-components:
|
||||||
specifier: ^0.27.3
|
specifier: ^0.27.3
|
||||||
version: 0.27.3(@babel/parser@7.25.3)(rollup@4.20.0)(vue@3.4.35)
|
version: 0.27.3(@babel/parser@7.25.3)(rollup@4.20.0)(vue@3.4.35)
|
||||||
@ -696,6 +705,16 @@ packages:
|
|||||||
resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==}
|
resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==}
|
||||||
engines: {node: '>=6.9.0'}
|
engines: {node: '>=6.9.0'}
|
||||||
|
|
||||||
|
'@css-render/plugin-bem@0.15.14':
|
||||||
|
resolution: {integrity: sha512-QK513CJ7yEQxm/P3EwsI+d+ha8kSOcjGvD6SevM41neEMxdULE+18iuQK6tEChAWMOQNQPLG/Rw3Khb69r5neg==}
|
||||||
|
peerDependencies:
|
||||||
|
css-render: ~0.15.14
|
||||||
|
|
||||||
|
'@css-render/vue3-ssr@0.15.14':
|
||||||
|
resolution: {integrity: sha512-//8027GSbxE9n3QlD73xFY6z4ZbHbvrOVB7AO6hsmrEzGbg+h2A09HboUyDgu+xsmj7JnvJD39Irt+2D0+iV8g==}
|
||||||
|
peerDependencies:
|
||||||
|
vue: ^3.0.11
|
||||||
|
|
||||||
'@csstools/cascade-layer-name-parser@2.0.0':
|
'@csstools/cascade-layer-name-parser@2.0.0':
|
||||||
resolution: {integrity: sha512-9GEQIvTMrjXfYaVnw1+FteDX5yF65CZq4ttYP75O3CANQevaCJ9jVVTiZt9YTpjYIk8C1mmf52y2S4Hr/CaE/g==}
|
resolution: {integrity: sha512-9GEQIvTMrjXfYaVnw1+FteDX5yF65CZq4ttYP75O3CANQevaCJ9jVVTiZt9YTpjYIk8C1mmf52y2S4Hr/CaE/g==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
@ -936,6 +955,9 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
postcss: ^8.4
|
postcss: ^8.4
|
||||||
|
|
||||||
|
'@emotion/hash@0.8.0':
|
||||||
|
resolution: {integrity: sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==}
|
||||||
|
|
||||||
'@esbuild/aix-ppc64@0.21.5':
|
'@esbuild/aix-ppc64@0.21.5':
|
||||||
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
|
resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
|
||||||
engines: {node: '>=12'}
|
engines: {node: '>=12'}
|
||||||
@ -1101,6 +1123,9 @@ packages:
|
|||||||
'@jridgewell/trace-mapping@0.3.25':
|
'@jridgewell/trace-mapping@0.3.25':
|
||||||
resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
|
resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
|
||||||
|
|
||||||
|
'@juggle/resize-observer@3.4.0':
|
||||||
|
resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==}
|
||||||
|
|
||||||
'@nodelib/fs.scandir@2.1.5':
|
'@nodelib/fs.scandir@2.1.5':
|
||||||
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
|
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
|
||||||
engines: {node: '>= 8'}
|
engines: {node: '>= 8'}
|
||||||
@ -1230,6 +1255,18 @@ packages:
|
|||||||
'@types/estree@1.0.5':
|
'@types/estree@1.0.5':
|
||||||
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
|
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
|
||||||
|
|
||||||
|
'@types/katex@0.16.7':
|
||||||
|
resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==}
|
||||||
|
|
||||||
|
'@types/lodash-es@4.17.12':
|
||||||
|
resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
|
||||||
|
|
||||||
|
'@types/lodash@4.17.7':
|
||||||
|
resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==}
|
||||||
|
|
||||||
|
'@types/web-bluetooth@0.0.20':
|
||||||
|
resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==}
|
||||||
|
|
||||||
'@unocss/astro@0.61.9':
|
'@unocss/astro@0.61.9':
|
||||||
resolution: {integrity: sha512-adOXz4itYHxqhvQgJHlEU58EHDTtY2qrcEPVmQVk4qI1W+ezQV6nQMQvti8mS/HbFw3MOJhIY1MlJoZK36/cyw==}
|
resolution: {integrity: sha512-adOXz4itYHxqhvQgJHlEU58EHDTtY2qrcEPVmQVk4qI1W+ezQV6nQMQvti8mS/HbFw3MOJhIY1MlJoZK36/cyw==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -1373,6 +1410,15 @@ packages:
|
|||||||
'@vue/shared@3.4.35':
|
'@vue/shared@3.4.35':
|
||||||
resolution: {integrity: sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ==}
|
resolution: {integrity: sha512-hvuhBYYDe+b1G8KHxsQ0diDqDMA8D9laxWZhNAjE83VZb5UDaXl9Xnz7cGdDSyiHM90qqI/CyGMcpBpiDy6VVQ==}
|
||||||
|
|
||||||
|
'@vueuse/core@10.11.0':
|
||||||
|
resolution: {integrity: sha512-x3sD4Mkm7PJ+pcq3HX8PLPBadXCAlSDR/waK87dz0gQE+qJnaaFhc/dZVfJz+IUYzTMVGum2QlR7ImiJQN4s6g==}
|
||||||
|
|
||||||
|
'@vueuse/metadata@10.11.0':
|
||||||
|
resolution: {integrity: sha512-kQX7l6l8dVWNqlqyN3ePW3KmjCQO3ZMgXuBMddIu83CmucrsBfXlH+JoviYyRBws/yLTQO8g3Pbw+bdIoVm4oQ==}
|
||||||
|
|
||||||
|
'@vueuse/shared@10.11.0':
|
||||||
|
resolution: {integrity: sha512-fyNoIXEq3PfX1L3NkNhtVQUSRtqYwJtJg+Bp9rIzculIZWHTkKSysujrOk2J+NrRulLTQH9+3gGSfYLWSEWU1A==}
|
||||||
|
|
||||||
acorn@8.12.1:
|
acorn@8.12.1:
|
||||||
resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
|
resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==}
|
||||||
engines: {node: '>=0.4.0'}
|
engines: {node: '>=0.4.0'}
|
||||||
@ -1390,6 +1436,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
|
resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
|
||||||
engines: {node: '>= 8'}
|
engines: {node: '>= 8'}
|
||||||
|
|
||||||
|
async-validator@4.2.5:
|
||||||
|
resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==}
|
||||||
|
|
||||||
asynckit@0.4.0:
|
asynckit@0.4.0:
|
||||||
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
|
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
|
||||||
|
|
||||||
@ -1400,6 +1449,9 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
postcss: ^8.1.0
|
postcss: ^8.1.0
|
||||||
|
|
||||||
|
axios@1.7.3:
|
||||||
|
resolution: {integrity: sha512-Ar7ND9pU99eJ9GpoGQKhKf58GpUOgnzuaB7ueNQ5BMi0p+LZ5oaEnfF999fAArcTIBwXTCHAmGcHOZJaWPq9Nw==}
|
||||||
|
|
||||||
babel-helper-builder-react-jsx@6.26.0:
|
babel-helper-builder-react-jsx@6.26.0:
|
||||||
resolution: {integrity: sha512-02I9jDjnVEuGy2BR3LRm9nPRb/+Ja0pvZVLr1eI5TYAA/dB0Xoc+WBo50+aDfhGDLhlBY1+QURjn9uvcFd8gzg==}
|
resolution: {integrity: sha512-02I9jDjnVEuGy2BR3LRm9nPRb/+Ja0pvZVLr1eI5TYAA/dB0Xoc+WBo50+aDfhGDLhlBY1+QURjn9uvcFd8gzg==}
|
||||||
|
|
||||||
@ -1543,6 +1595,9 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
postcss: ^8.4
|
postcss: ^8.4
|
||||||
|
|
||||||
|
css-render@0.15.14:
|
||||||
|
resolution: {integrity: sha512-9nF4PdUle+5ta4W5SyZdLCCmFd37uVimSjg1evcTqKJCyvCEEj12WKzOSBNak6r4im4J4iYXKH1OWpUV5LBYFg==}
|
||||||
|
|
||||||
css-tree@2.3.1:
|
css-tree@2.3.1:
|
||||||
resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
|
resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
|
||||||
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
|
engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
|
||||||
@ -1559,6 +1614,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==}
|
resolution: {integrity: sha512-8ZYiJ3A/3OkDd093CBT/0UKDWry7ak4BdPTFP2+QEP7cmhouyq/Up709ASSj2cK02BbZiMgk7kYjZNS4QP5qrQ==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
|
csstype@3.0.11:
|
||||||
|
resolution: {integrity: sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==}
|
||||||
|
|
||||||
csstype@3.1.3:
|
csstype@3.1.3:
|
||||||
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
|
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
|
||||||
|
|
||||||
@ -1566,6 +1624,15 @@ packages:
|
|||||||
resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==}
|
resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
|
date-fns-tz@2.0.1:
|
||||||
|
resolution: {integrity: sha512-fJCG3Pwx8HUoLhkepdsP7Z5RsucUi+ZBOxyM5d0ZZ6c4SdYustq0VMmOu6Wf7bli+yS/Jwp91TOCqn9jMcVrUA==}
|
||||||
|
peerDependencies:
|
||||||
|
date-fns: 2.x
|
||||||
|
|
||||||
|
date-fns@2.30.0:
|
||||||
|
resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==}
|
||||||
|
engines: {node: '>=0.11'}
|
||||||
|
|
||||||
debug@4.3.6:
|
debug@4.3.6:
|
||||||
resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==}
|
resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==}
|
||||||
engines: {node: '>=6.0'}
|
engines: {node: '>=6.0'}
|
||||||
@ -1625,6 +1692,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
|
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
|
||||||
engines: {node: '>=0.10.0'}
|
engines: {node: '>=0.10.0'}
|
||||||
|
|
||||||
|
evtd@0.2.4:
|
||||||
|
resolution: {integrity: sha512-qaeGN5bx63s/AXgQo8gj6fBkxge+OoLddLniox5qtLAEY5HSnuSlISXVPxnSae1dWblvTh4/HoMIB+mbMsvZzw==}
|
||||||
|
|
||||||
execa@5.1.1:
|
execa@5.1.1:
|
||||||
resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
|
resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
@ -1644,6 +1714,15 @@ packages:
|
|||||||
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
|
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
|
||||||
|
follow-redirects@1.15.6:
|
||||||
|
resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==}
|
||||||
|
engines: {node: '>=4.0'}
|
||||||
|
peerDependencies:
|
||||||
|
debug: '*'
|
||||||
|
peerDependenciesMeta:
|
||||||
|
debug:
|
||||||
|
optional: true
|
||||||
|
|
||||||
form-data@4.0.0:
|
form-data@4.0.0:
|
||||||
resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
|
resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
|
||||||
engines: {node: '>= 6'}
|
engines: {node: '>= 6'}
|
||||||
@ -1690,6 +1769,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
|
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
|
|
||||||
|
highlight.js@11.10.0:
|
||||||
|
resolution: {integrity: sha512-SYVnVFswQER+zu1laSya563s+F8VDGt7o35d4utbamowvUNLLMovFqwCLSocpZTz3MgaSRA1IbqRWZv97dtErQ==}
|
||||||
|
engines: {node: '>=12.0.0'}
|
||||||
|
|
||||||
html-encoding-sniffer@4.0.0:
|
html-encoding-sniffer@4.0.0:
|
||||||
resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==}
|
resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
@ -1801,6 +1884,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
|
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
|
|
||||||
|
lodash-es@4.17.21:
|
||||||
|
resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
|
||||||
|
|
||||||
lodash.debounce@4.0.8:
|
lodash.debounce@4.0.8:
|
||||||
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
|
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
|
||||||
|
|
||||||
@ -1857,6 +1943,11 @@ packages:
|
|||||||
ms@2.1.2:
|
ms@2.1.2:
|
||||||
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
|
resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
|
||||||
|
|
||||||
|
naive-ui@2.39.0:
|
||||||
|
resolution: {integrity: sha512-5oUJzRG+rtLSH8eRU+fJvVYiQids2BxF9jp+fwGoAqHOptEINrBlgBu9uy+95RHE5FLJ7Q/z41o+qkoGnUrKxQ==}
|
||||||
|
peerDependencies:
|
||||||
|
vue: ^3.0.0
|
||||||
|
|
||||||
nanoid@3.3.7:
|
nanoid@3.3.7:
|
||||||
resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
|
resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
|
||||||
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
|
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
|
||||||
@ -2118,6 +2209,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
|
resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
|
||||||
engines: {node: '>= 0.6.0'}
|
engines: {node: '>= 0.6.0'}
|
||||||
|
|
||||||
|
proxy-from-env@1.1.0:
|
||||||
|
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
|
||||||
|
|
||||||
psl@1.9.0:
|
psl@1.9.0:
|
||||||
resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
|
resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
|
||||||
|
|
||||||
@ -2202,6 +2296,9 @@ packages:
|
|||||||
scule@1.3.0:
|
scule@1.3.0:
|
||||||
resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
|
resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
|
||||||
|
|
||||||
|
seemly@0.3.8:
|
||||||
|
resolution: {integrity: sha512-MW8Qs6vbzo0pHmDpFSYPna+lwpZ6Zk1ancbajw/7E8TKtHdV+1DfZZD+kKJEhG/cAoB/i+LiT+5msZOqj0DwRA==}
|
||||||
|
|
||||||
semver@6.3.1:
|
semver@6.3.1:
|
||||||
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
|
resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
@ -2282,6 +2379,9 @@ packages:
|
|||||||
resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==}
|
resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
|
|
||||||
|
treemate@0.3.11:
|
||||||
|
resolution: {integrity: sha512-M8RGFoKtZ8dF+iwJfAJTOH/SM4KluKOKRJpjCMhI8bG3qB74zrFoArKZ62ll0Fr3mqkMJiQOmWYkdYgDeITYQg==}
|
||||||
|
|
||||||
tsx@4.16.5:
|
tsx@4.16.5:
|
||||||
resolution: {integrity: sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==}
|
resolution: {integrity: sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==}
|
||||||
engines: {node: '>=18.0.0'}
|
engines: {node: '>=18.0.0'}
|
||||||
@ -2377,6 +2477,11 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
vue: ^3.0.0
|
vue: ^3.0.0
|
||||||
|
|
||||||
|
vdirs@0.1.8:
|
||||||
|
resolution: {integrity: sha512-H9V1zGRLQZg9b+GdMk8MXDN2Lva0zx72MPahDKc30v+DtwKjfyOSXWRIX4t2mhDubM1H09gPhWeth/BJWPHGUw==}
|
||||||
|
peerDependencies:
|
||||||
|
vue: ^3.0.11
|
||||||
|
|
||||||
vite@5.3.5:
|
vite@5.3.5:
|
||||||
resolution: {integrity: sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==}
|
resolution: {integrity: sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==}
|
||||||
engines: {node: ^18.0.0 || >=20.0.0}
|
engines: {node: ^18.0.0 || >=20.0.0}
|
||||||
@ -2405,6 +2510,22 @@ packages:
|
|||||||
terser:
|
terser:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
vooks@0.2.12:
|
||||||
|
resolution: {integrity: sha512-iox0I3RZzxtKlcgYaStQYKEzWWGAduMmq+jS7OrNdQo1FgGfPMubGL3uGHOU9n97NIvfFDBGnpSvkWyb/NSn/Q==}
|
||||||
|
peerDependencies:
|
||||||
|
vue: ^3.0.0
|
||||||
|
|
||||||
|
vue-demi@0.14.10:
|
||||||
|
resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==}
|
||||||
|
engines: {node: '>=12'}
|
||||||
|
hasBin: true
|
||||||
|
peerDependencies:
|
||||||
|
'@vue/composition-api': ^1.0.0-rc.1
|
||||||
|
vue: ^3.0.0-0 || ^2.6.0
|
||||||
|
peerDependenciesMeta:
|
||||||
|
'@vue/composition-api':
|
||||||
|
optional: true
|
||||||
|
|
||||||
vue-router@4.4.2:
|
vue-router@4.4.2:
|
||||||
resolution: {integrity: sha512-1qNybkn2L7QsLzaXs8nvlQmRKp8XF8DCxZys/Jr1JpQcHsKUxTKzTxCVA1G7NfBfwRIBgCJPoujOG5lHCCNUxw==}
|
resolution: {integrity: sha512-1qNybkn2L7QsLzaXs8nvlQmRKp8XF8DCxZys/Jr1JpQcHsKUxTKzTxCVA1G7NfBfwRIBgCJPoujOG5lHCCNUxw==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
@ -2418,6 +2539,11 @@ packages:
|
|||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
|
vueuc@0.4.58:
|
||||||
|
resolution: {integrity: sha512-Wnj/N8WbPRSxSt+9ji1jtDHPzda5h2OH/0sFBhvdxDRuyCZbjGg3/cKMaKqEoe+dErTexG2R+i6Q8S/Toq1MYg==}
|
||||||
|
peerDependencies:
|
||||||
|
vue: ^3.0.11
|
||||||
|
|
||||||
w3c-xmlserializer@5.0.0:
|
w3c-xmlserializer@5.0.0:
|
||||||
resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==}
|
resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==}
|
||||||
engines: {node: '>=18'}
|
engines: {node: '>=18'}
|
||||||
@ -3283,6 +3409,14 @@ snapshots:
|
|||||||
'@babel/helper-validator-identifier': 7.24.7
|
'@babel/helper-validator-identifier': 7.24.7
|
||||||
to-fast-properties: 2.0.0
|
to-fast-properties: 2.0.0
|
||||||
|
|
||||||
|
'@css-render/plugin-bem@0.15.14(css-render@0.15.14)':
|
||||||
|
dependencies:
|
||||||
|
css-render: 0.15.14
|
||||||
|
|
||||||
|
'@css-render/vue3-ssr@0.15.14(vue@3.4.35)':
|
||||||
|
dependencies:
|
||||||
|
vue: 3.4.35
|
||||||
|
|
||||||
'@csstools/cascade-layer-name-parser@2.0.0(@csstools/css-parser-algorithms@3.0.0(@csstools/css-tokenizer@3.0.0))(@csstools/css-tokenizer@3.0.0)':
|
'@csstools/cascade-layer-name-parser@2.0.0(@csstools/css-parser-algorithms@3.0.0(@csstools/css-tokenizer@3.0.0))(@csstools/css-tokenizer@3.0.0)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@csstools/css-parser-algorithms': 3.0.0(@csstools/css-tokenizer@3.0.0)
|
'@csstools/css-parser-algorithms': 3.0.0(@csstools/css-tokenizer@3.0.0)
|
||||||
@ -3521,6 +3655,8 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
postcss: 8.4.40
|
postcss: 8.4.40
|
||||||
|
|
||||||
|
'@emotion/hash@0.8.0': {}
|
||||||
|
|
||||||
'@esbuild/aix-ppc64@0.21.5':
|
'@esbuild/aix-ppc64@0.21.5':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
@ -3626,6 +3762,8 @@ snapshots:
|
|||||||
'@jridgewell/resolve-uri': 3.1.2
|
'@jridgewell/resolve-uri': 3.1.2
|
||||||
'@jridgewell/sourcemap-codec': 1.5.0
|
'@jridgewell/sourcemap-codec': 1.5.0
|
||||||
|
|
||||||
|
'@juggle/resize-observer@3.4.0': {}
|
||||||
|
|
||||||
'@nodelib/fs.scandir@2.1.5':
|
'@nodelib/fs.scandir@2.1.5':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@nodelib/fs.stat': 2.0.5
|
'@nodelib/fs.stat': 2.0.5
|
||||||
@ -3708,6 +3846,16 @@ snapshots:
|
|||||||
|
|
||||||
'@types/estree@1.0.5': {}
|
'@types/estree@1.0.5': {}
|
||||||
|
|
||||||
|
'@types/katex@0.16.7': {}
|
||||||
|
|
||||||
|
'@types/lodash-es@4.17.12':
|
||||||
|
dependencies:
|
||||||
|
'@types/lodash': 4.17.7
|
||||||
|
|
||||||
|
'@types/lodash@4.17.7': {}
|
||||||
|
|
||||||
|
'@types/web-bluetooth@0.0.20': {}
|
||||||
|
|
||||||
'@unocss/astro@0.61.9(rollup@4.20.0)(vite@5.3.5(sass@1.77.8)(terser@5.31.3))':
|
'@unocss/astro@0.61.9(rollup@4.20.0)(vite@5.3.5(sass@1.77.8)(terser@5.31.3))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@unocss/core': 0.61.9
|
'@unocss/core': 0.61.9
|
||||||
@ -3952,6 +4100,25 @@ snapshots:
|
|||||||
|
|
||||||
'@vue/shared@3.4.35': {}
|
'@vue/shared@3.4.35': {}
|
||||||
|
|
||||||
|
'@vueuse/core@10.11.0(vue@3.4.35)':
|
||||||
|
dependencies:
|
||||||
|
'@types/web-bluetooth': 0.0.20
|
||||||
|
'@vueuse/metadata': 10.11.0
|
||||||
|
'@vueuse/shared': 10.11.0(vue@3.4.35)
|
||||||
|
vue-demi: 0.14.10(vue@3.4.35)
|
||||||
|
transitivePeerDependencies:
|
||||||
|
- '@vue/composition-api'
|
||||||
|
- vue
|
||||||
|
|
||||||
|
'@vueuse/metadata@10.11.0': {}
|
||||||
|
|
||||||
|
'@vueuse/shared@10.11.0(vue@3.4.35)':
|
||||||
|
dependencies:
|
||||||
|
vue-demi: 0.14.10(vue@3.4.35)
|
||||||
|
transitivePeerDependencies:
|
||||||
|
- '@vue/composition-api'
|
||||||
|
- vue
|
||||||
|
|
||||||
acorn@8.12.1: {}
|
acorn@8.12.1: {}
|
||||||
|
|
||||||
agent-base@7.1.1:
|
agent-base@7.1.1:
|
||||||
@ -3969,6 +4136,8 @@ snapshots:
|
|||||||
normalize-path: 3.0.0
|
normalize-path: 3.0.0
|
||||||
picomatch: 2.3.1
|
picomatch: 2.3.1
|
||||||
|
|
||||||
|
async-validator@4.2.5: {}
|
||||||
|
|
||||||
asynckit@0.4.0: {}
|
asynckit@0.4.0: {}
|
||||||
|
|
||||||
autoprefixer@10.4.20(postcss@8.4.40):
|
autoprefixer@10.4.20(postcss@8.4.40):
|
||||||
@ -3981,6 +4150,14 @@ snapshots:
|
|||||||
postcss: 8.4.40
|
postcss: 8.4.40
|
||||||
postcss-value-parser: 4.2.0
|
postcss-value-parser: 4.2.0
|
||||||
|
|
||||||
|
axios@1.7.3:
|
||||||
|
dependencies:
|
||||||
|
follow-redirects: 1.15.6
|
||||||
|
form-data: 4.0.0
|
||||||
|
proxy-from-env: 1.1.0
|
||||||
|
transitivePeerDependencies:
|
||||||
|
- debug
|
||||||
|
|
||||||
babel-helper-builder-react-jsx@6.26.0:
|
babel-helper-builder-react-jsx@6.26.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
babel-runtime: 6.26.0
|
babel-runtime: 6.26.0
|
||||||
@ -4139,6 +4316,11 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
postcss: 8.4.40
|
postcss: 8.4.40
|
||||||
|
|
||||||
|
css-render@0.15.14:
|
||||||
|
dependencies:
|
||||||
|
'@emotion/hash': 0.8.0
|
||||||
|
csstype: 3.0.11
|
||||||
|
|
||||||
css-tree@2.3.1:
|
css-tree@2.3.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
mdn-data: 2.0.30
|
mdn-data: 2.0.30
|
||||||
@ -4152,6 +4334,8 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
rrweb-cssom: 0.6.0
|
rrweb-cssom: 0.6.0
|
||||||
|
|
||||||
|
csstype@3.0.11: {}
|
||||||
|
|
||||||
csstype@3.1.3: {}
|
csstype@3.1.3: {}
|
||||||
|
|
||||||
data-urls@5.0.0:
|
data-urls@5.0.0:
|
||||||
@ -4159,6 +4343,14 @@ snapshots:
|
|||||||
whatwg-mimetype: 4.0.0
|
whatwg-mimetype: 4.0.0
|
||||||
whatwg-url: 14.0.0
|
whatwg-url: 14.0.0
|
||||||
|
|
||||||
|
date-fns-tz@2.0.1(date-fns@2.30.0):
|
||||||
|
dependencies:
|
||||||
|
date-fns: 2.30.0
|
||||||
|
|
||||||
|
date-fns@2.30.0:
|
||||||
|
dependencies:
|
||||||
|
'@babel/runtime': 7.25.0
|
||||||
|
|
||||||
debug@4.3.6:
|
debug@4.3.6:
|
||||||
dependencies:
|
dependencies:
|
||||||
ms: 2.1.2
|
ms: 2.1.2
|
||||||
@ -4217,6 +4409,8 @@ snapshots:
|
|||||||
|
|
||||||
esutils@2.0.3: {}
|
esutils@2.0.3: {}
|
||||||
|
|
||||||
|
evtd@0.2.4: {}
|
||||||
|
|
||||||
execa@5.1.1:
|
execa@5.1.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
cross-spawn: 7.0.3
|
cross-spawn: 7.0.3
|
||||||
@ -4250,6 +4444,8 @@ snapshots:
|
|||||||
locate-path: 6.0.0
|
locate-path: 6.0.0
|
||||||
path-exists: 4.0.0
|
path-exists: 4.0.0
|
||||||
|
|
||||||
|
follow-redirects@1.15.6: {}
|
||||||
|
|
||||||
form-data@4.0.0:
|
form-data@4.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
asynckit: 0.4.0
|
asynckit: 0.4.0
|
||||||
@ -4287,6 +4483,8 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
function-bind: 1.1.2
|
function-bind: 1.1.2
|
||||||
|
|
||||||
|
highlight.js@11.10.0: {}
|
||||||
|
|
||||||
html-encoding-sniffer@4.0.0:
|
html-encoding-sniffer@4.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
whatwg-encoding: 3.1.1
|
whatwg-encoding: 3.1.1
|
||||||
@ -4405,6 +4603,8 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
p-locate: 5.0.0
|
p-locate: 5.0.0
|
||||||
|
|
||||||
|
lodash-es@4.17.21: {}
|
||||||
|
|
||||||
lodash.debounce@4.0.8: {}
|
lodash.debounce@4.0.8: {}
|
||||||
|
|
||||||
lodash@4.17.21: {}
|
lodash@4.17.21: {}
|
||||||
@ -4453,6 +4653,29 @@ snapshots:
|
|||||||
|
|
||||||
ms@2.1.2: {}
|
ms@2.1.2: {}
|
||||||
|
|
||||||
|
naive-ui@2.39.0(vue@3.4.35):
|
||||||
|
dependencies:
|
||||||
|
'@css-render/plugin-bem': 0.15.14(css-render@0.15.14)
|
||||||
|
'@css-render/vue3-ssr': 0.15.14(vue@3.4.35)
|
||||||
|
'@types/katex': 0.16.7
|
||||||
|
'@types/lodash': 4.17.7
|
||||||
|
'@types/lodash-es': 4.17.12
|
||||||
|
async-validator: 4.2.5
|
||||||
|
css-render: 0.15.14
|
||||||
|
csstype: 3.1.3
|
||||||
|
date-fns: 2.30.0
|
||||||
|
date-fns-tz: 2.0.1(date-fns@2.30.0)
|
||||||
|
evtd: 0.2.4
|
||||||
|
highlight.js: 11.10.0
|
||||||
|
lodash: 4.17.21
|
||||||
|
lodash-es: 4.17.21
|
||||||
|
seemly: 0.3.8
|
||||||
|
treemate: 0.3.11
|
||||||
|
vdirs: 0.1.8(vue@3.4.35)
|
||||||
|
vooks: 0.2.12(vue@3.4.35)
|
||||||
|
vue: 3.4.35
|
||||||
|
vueuc: 0.4.58(vue@3.4.35)
|
||||||
|
|
||||||
nanoid@3.3.7: {}
|
nanoid@3.3.7: {}
|
||||||
|
|
||||||
node-fetch-native@1.6.4: {}
|
node-fetch-native@1.6.4: {}
|
||||||
@ -4762,6 +4985,8 @@ snapshots:
|
|||||||
|
|
||||||
process@0.11.10: {}
|
process@0.11.10: {}
|
||||||
|
|
||||||
|
proxy-from-env@1.1.0: {}
|
||||||
|
|
||||||
psl@1.9.0: {}
|
psl@1.9.0: {}
|
||||||
|
|
||||||
punycode@2.3.1: {}
|
punycode@2.3.1: {}
|
||||||
@ -4857,6 +5082,8 @@ snapshots:
|
|||||||
|
|
||||||
scule@1.3.0: {}
|
scule@1.3.0: {}
|
||||||
|
|
||||||
|
seemly@0.3.8: {}
|
||||||
|
|
||||||
semver@6.3.1: {}
|
semver@6.3.1: {}
|
||||||
|
|
||||||
shebang-command@2.0.0:
|
shebang-command@2.0.0:
|
||||||
@ -4926,6 +5153,8 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
punycode: 2.3.1
|
punycode: 2.3.1
|
||||||
|
|
||||||
|
treemate@0.3.11: {}
|
||||||
|
|
||||||
tsx@4.16.5:
|
tsx@4.16.5:
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.21.5
|
esbuild: 0.21.5
|
||||||
@ -5003,7 +5232,7 @@ snapshots:
|
|||||||
- rollup
|
- rollup
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
unplugin-auto-import@0.18.2(rollup@4.20.0):
|
unplugin-auto-import@0.18.2(@vueuse/core@10.11.0(vue@3.4.35))(rollup@4.20.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@antfu/utils': 0.7.10
|
'@antfu/utils': 0.7.10
|
||||||
'@rollup/pluginutils': 5.1.0(rollup@4.20.0)
|
'@rollup/pluginutils': 5.1.0(rollup@4.20.0)
|
||||||
@ -5013,6 +5242,8 @@ snapshots:
|
|||||||
minimatch: 9.0.5
|
minimatch: 9.0.5
|
||||||
unimport: 3.10.0(rollup@4.20.0)
|
unimport: 3.10.0(rollup@4.20.0)
|
||||||
unplugin: 1.12.0
|
unplugin: 1.12.0
|
||||||
|
optionalDependencies:
|
||||||
|
'@vueuse/core': 10.11.0(vue@3.4.35)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- rollup
|
- rollup
|
||||||
|
|
||||||
@ -5066,6 +5297,11 @@ snapshots:
|
|||||||
'@vue/shared': 3.4.35
|
'@vue/shared': 3.4.35
|
||||||
vue: 3.4.35
|
vue: 3.4.35
|
||||||
|
|
||||||
|
vdirs@0.1.8(vue@3.4.35):
|
||||||
|
dependencies:
|
||||||
|
evtd: 0.2.4
|
||||||
|
vue: 3.4.35
|
||||||
|
|
||||||
vite@5.3.5(sass@1.77.8)(terser@5.31.3):
|
vite@5.3.5(sass@1.77.8)(terser@5.31.3):
|
||||||
dependencies:
|
dependencies:
|
||||||
esbuild: 0.21.5
|
esbuild: 0.21.5
|
||||||
@ -5076,6 +5312,15 @@ snapshots:
|
|||||||
sass: 1.77.8
|
sass: 1.77.8
|
||||||
terser: 5.31.3
|
terser: 5.31.3
|
||||||
|
|
||||||
|
vooks@0.2.12(vue@3.4.35):
|
||||||
|
dependencies:
|
||||||
|
evtd: 0.2.4
|
||||||
|
vue: 3.4.35
|
||||||
|
|
||||||
|
vue-demi@0.14.10(vue@3.4.35):
|
||||||
|
dependencies:
|
||||||
|
vue: 3.4.35
|
||||||
|
|
||||||
vue-router@4.4.2(vue@3.4.35):
|
vue-router@4.4.2(vue@3.4.35):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vue/devtools-api': 6.6.3
|
'@vue/devtools-api': 6.6.3
|
||||||
@ -5089,6 +5334,17 @@ snapshots:
|
|||||||
'@vue/server-renderer': 3.4.35(vue@3.4.35)
|
'@vue/server-renderer': 3.4.35(vue@3.4.35)
|
||||||
'@vue/shared': 3.4.35
|
'@vue/shared': 3.4.35
|
||||||
|
|
||||||
|
vueuc@0.4.58(vue@3.4.35):
|
||||||
|
dependencies:
|
||||||
|
'@css-render/vue3-ssr': 0.15.14(vue@3.4.35)
|
||||||
|
'@juggle/resize-observer': 3.4.0
|
||||||
|
css-render: 0.15.14
|
||||||
|
evtd: 0.2.4
|
||||||
|
seemly: 0.3.8
|
||||||
|
vdirs: 0.1.8(vue@3.4.35)
|
||||||
|
vooks: 0.2.12(vue@3.4.35)
|
||||||
|
vue: 3.4.35
|
||||||
|
|
||||||
w3c-xmlserializer@5.0.0:
|
w3c-xmlserializer@5.0.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
xml-name-validator: 5.0.0
|
xml-name-validator: 5.0.0
|
||||||
|
9
src/api/auth/index.js
Normal file
9
src/api/auth/index.js
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
import request from '@/service/index.js'
|
||||||
|
export const sendCode = (data) => {
|
||||||
|
console.log('schildrenchildrenendCode')
|
||||||
|
return request({
|
||||||
|
url: '/api/children/competition/sendCode',
|
||||||
|
method: 'POST',
|
||||||
|
data,
|
||||||
|
})
|
||||||
|
}
|
BIN
src/assets/image/dfbackground@2.png
Normal file
BIN
src/assets/image/dfbackground@2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 210 KiB |
BIN
src/assets/image/gdz12@2x.png
Normal file
BIN
src/assets/image/gdz12@2x.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 144 KiB |
BIN
src/assets/image/z3327@2x1.png
Normal file
BIN
src/assets/image/z3327@2x1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 659 KiB |
@ -1,43 +0,0 @@
|
|||||||
<script setup>
|
|
||||||
import { ref } from 'vue'
|
|
||||||
|
|
||||||
defineProps({
|
|
||||||
msg: String,
|
|
||||||
})
|
|
||||||
|
|
||||||
const count = ref(0)
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<template>
|
|
||||||
<h1>{{ msg }}</h1>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<button type="button" @click="count++">count is {{ count }}</button>
|
|
||||||
<p>
|
|
||||||
Edit
|
|
||||||
<code>components/HelloWorld.vue</code> to test HMR
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Check out
|
|
||||||
<a href="https://vuejs.org/guide/quick-start.html#local" target="_blank"
|
|
||||||
>create-vue</a
|
|
||||||
>, the official Vue + Vite starter
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
Learn more about IDE Support for Vue in the
|
|
||||||
<a
|
|
||||||
href="https://vuejs.org/guide/scaling-up/tooling.html#ide-support"
|
|
||||||
target="_blank"
|
|
||||||
>Vue Docs Scaling up Guide</a
|
|
||||||
>.
|
|
||||||
</p>
|
|
||||||
<p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<style scoped>
|
|
||||||
.read-the-docs {
|
|
||||||
color: #888;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,3 +1 @@
|
|||||||
export const sizes = [
|
export const sizes = [ {minWidth:'0px',maxWidth:'768px'}, {minWidth:'768px',maxWidth:'1440px'}, {minWidth:'1440px',maxWidth: '1920px'}, {minWidth:'1920px'}]
|
||||||
{minWidth:'375px',maxWidth:'768px'}, {minWidth:'768px',maxWidth:'1440px'}, {minWidth:'1440px',maxWidth: '1920px'}, {minWidth:'1920px'}
|
|
||||||
]
|
|
||||||
|
13
src/main.js
13
src/main.js
@ -7,5 +7,16 @@ import 'virtual:uno.css'
|
|||||||
import router from "./router/index.js";
|
import router from "./router/index.js";
|
||||||
const app = createApp(App);
|
const app = createApp(App);
|
||||||
app.use(router);
|
app.use(router);
|
||||||
|
app.directive('no-space', {
|
||||||
|
mounted(el) {
|
||||||
|
el.addEventListener('input', (e) => {
|
||||||
|
const originalValue = e.target.value;
|
||||||
|
const newValue = originalValue.replace(/\s/g, '');
|
||||||
|
if (originalValue !== newValue) {
|
||||||
|
e.target.value = newValue;
|
||||||
|
e.target.dispatchEvent(new Event('input'));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
app.mount('#app');
|
app.mount('#app');
|
||||||
|
@ -3,7 +3,7 @@ import { createRouter, createWebHistory } from 'vue-router';
|
|||||||
const routes = [
|
const routes = [
|
||||||
{
|
{
|
||||||
path: '/',
|
path: '/',
|
||||||
redirect: 'login'
|
redirect: 'auth'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/login',
|
path: '/login',
|
||||||
|
38
src/service/index.js
Normal file
38
src/service/index.js
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
import { useRouter } from 'vue-router';
|
||||||
|
import Request from '@/service/request/index.js'
|
||||||
|
const request = new Request({
|
||||||
|
baseURL: import.meta.env.VITE_BASEURL,
|
||||||
|
timeout: 1000 * 60 * 5,
|
||||||
|
interceptors: {
|
||||||
|
//实例的请求拦截器
|
||||||
|
requestInterceptors: (config) => {
|
||||||
|
const token=localStorage.getItem('token')
|
||||||
|
config.headers['Content-Type'] = config.method === 'get' ?
|
||||||
|
'application/x-www-form-urlencoded' :
|
||||||
|
'application/json';
|
||||||
|
if (config.isFormData) {
|
||||||
|
config.headers['Content-Type'] = 'multipart/form-data';
|
||||||
|
config.headers['Authorization'] = token
|
||||||
|
} else {
|
||||||
|
config.headers['Authorization'] = token
|
||||||
|
}
|
||||||
|
return config;
|
||||||
|
},
|
||||||
|
//实例的响应拦截器
|
||||||
|
responseInterceptors: async (response) => {
|
||||||
|
if ([200, 201, 204].includes(response.status)) {
|
||||||
|
return response.config.responseType === 'blob' ? response : response;
|
||||||
|
} else {
|
||||||
|
return Promise.reject(new Error(response.data.msg || 'An error occurred.'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const fontRequest = (config) => {
|
||||||
|
if (['get', 'GET'].includes(config.method)) {
|
||||||
|
config.params = config.data;
|
||||||
|
}
|
||||||
|
return request.request(config);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default fontRequest;
|
77
src/service/request/index.js
Normal file
77
src/service/request/index.js
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
import axios from 'axios';
|
||||||
|
class Request {
|
||||||
|
// axios 实例
|
||||||
|
instance;
|
||||||
|
// 拦截器对象
|
||||||
|
interceptorsObj;
|
||||||
|
// * 存放取消请求控制器Map
|
||||||
|
abortControllerMap;
|
||||||
|
constructor(config) {
|
||||||
|
this.instance = axios.create(config);
|
||||||
|
// * 初始化存放取消请求控制器Map
|
||||||
|
this.abortControllerMap = new Map();
|
||||||
|
this.interceptorsObj = config.interceptors;
|
||||||
|
// 拦截器执行顺序 接口请求 -> 实例请求 -> 全局请求 -> 实例响应 -> 全局响应 -> 接口响应
|
||||||
|
this.instance.interceptors.request.use((res) => {
|
||||||
|
const controller = new AbortController();
|
||||||
|
const url = res.url || '';
|
||||||
|
res.signal = controller.signal;
|
||||||
|
this.abortControllerMap.set(url, controller);
|
||||||
|
return res;
|
||||||
|
}, (err) => err);
|
||||||
|
// 使用实例拦截器
|
||||||
|
this.instance.interceptors.request.use(this.interceptorsObj?.requestInterceptors, this.interceptorsObj?.requestInterceptorsCatch);
|
||||||
|
this.instance.interceptors.response.use(this.interceptorsObj?.responseInterceptors, this.interceptorsObj?.responseInterceptorsCatch);
|
||||||
|
// 全局响应拦截器保证最后执行
|
||||||
|
this.instance.interceptors.response.use(
|
||||||
|
// 因为我们接口的数据都在res.data下,所以我们直接返回res.data
|
||||||
|
(res) => {
|
||||||
|
const url = res.config.url || '';
|
||||||
|
this.abortControllerMap.delete(url);
|
||||||
|
return res.data;
|
||||||
|
}, (err) => err);
|
||||||
|
}
|
||||||
|
request(config) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
// 如果我们为单个请求设置拦截器,这里使用单个请求的拦截器
|
||||||
|
if (config.interceptors?.requestInterceptors) {
|
||||||
|
config = config.interceptors.requestInterceptors(config);
|
||||||
|
}
|
||||||
|
this.instance
|
||||||
|
.request(config)
|
||||||
|
.then((res) => {
|
||||||
|
// 如果我们为单个响应设置拦截器,这里使用单个响应的拦截器
|
||||||
|
if (config.interceptors?.responseInterceptors) {
|
||||||
|
res = config.interceptors.responseInterceptors(res);
|
||||||
|
}
|
||||||
|
resolve(res);
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
reject(err);
|
||||||
|
});
|
||||||
|
// .finally(() => {})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 取消全部请求
|
||||||
|
*/
|
||||||
|
cancelAllRequest() {
|
||||||
|
for (const [, controller] of this.abortControllerMap) {
|
||||||
|
controller.abort();
|
||||||
|
}
|
||||||
|
this.abortControllerMap.clear();
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 取消指定的请求
|
||||||
|
* @param url 待取消的请求URL
|
||||||
|
*/
|
||||||
|
cancelRequest(url) {
|
||||||
|
const urlList = Array.isArray(url) ? url : [url];
|
||||||
|
for (const _url of urlList) {
|
||||||
|
this.abortControllerMap.get(_url)?.abort();
|
||||||
|
this.abortControllerMap.delete(_url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
export default Request;
|
||||||
|
|
29
src/store/auth/index.js
Normal file
29
src/store/auth/index.js
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
import {ref} from 'vue'
|
||||||
|
import {createGlobalState,useStorage} from '@vueuse/core'
|
||||||
|
import {sendCode} from '@/api/auth/index.js'
|
||||||
|
import {message} from "@/utils/message.js"
|
||||||
|
export const useAuth=createGlobalState(()=>{
|
||||||
|
const token = useStorage('token', '', localStorage)
|
||||||
|
const telNum =ref('')
|
||||||
|
const code=ref('')
|
||||||
|
const clickSendCode=async ()=>{
|
||||||
|
if (!telNum.value){
|
||||||
|
message.warning('请输入手机号')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const data={
|
||||||
|
telNum:telNum.value
|
||||||
|
}
|
||||||
|
const res=await sendCode(data)
|
||||||
|
if (res.status===0){
|
||||||
|
message.success('发送成功')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
code,
|
||||||
|
clickSendCode,
|
||||||
|
telNum,
|
||||||
|
token
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
5
src/utils/message.js
Normal file
5
src/utils/message.js
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
import {createDiscreteApi, useMessage} from 'naive-ui'
|
||||||
|
const { message } = createDiscreteApi(
|
||||||
|
["message"]
|
||||||
|
)
|
||||||
|
export {message}
|
@ -3,14 +3,20 @@ import {useAdaptation} from "@/utils/self-adaption.js";
|
|||||||
import {sizes} from "@/dict/index.js";
|
import {sizes} from "@/dict/index.js";
|
||||||
import size375 from '@/views/confirm/size375/index.vue'
|
import size375 from '@/views/confirm/size375/index.vue'
|
||||||
import {computed} from "vue";
|
import {computed} from "vue";
|
||||||
const {maxWidth}= useAdaptation(sizes,(maxWidth)=>{
|
import size768 from "@/views/confirm/size768/index.vue";
|
||||||
})
|
import size1440 from "@/views/login/size1440/index.vue";
|
||||||
|
import size1920 from "@/views/login/size1920/index.vue";
|
||||||
|
const {currentRange }= useAdaptation(sizes)
|
||||||
const viewComponent = computed(()=>{
|
const viewComponent = computed(()=>{
|
||||||
switch (maxWidth.value){
|
switch (currentRange.value?.minWidth){
|
||||||
case '375px':
|
case '0px':
|
||||||
return size375
|
|
||||||
default:
|
|
||||||
return size375
|
return size375
|
||||||
|
case '768px':
|
||||||
|
return size768
|
||||||
|
case '1440px':
|
||||||
|
return size1440
|
||||||
|
case '1920px':
|
||||||
|
return size1920
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
45
src/views/confirm/size768/index.vue
Normal file
45
src/views/confirm/size768/index.vue
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
<script setup>
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div class="box-border relative w-[1920px] h-screen bg-no-repeat bg-cover bg-[url('@/assets/image/zu3237.png')] flex items-center flex-col">
|
||||||
|
<div class="mb-[90px]">
|
||||||
|
<img class="w-[525px] h-[87px] mt-[303px]" src="@/assets/image/zu3314@2x.png" alt="">
|
||||||
|
</div>
|
||||||
|
<div class="absolute top-0 left-[70px]">
|
||||||
|
<img class="w-[610px] h-[668px]" src="@/assets/image/gdz47@2x.png" alt="">
|
||||||
|
</div>
|
||||||
|
<div class="bg-[url('@/assets/image/z3327@2x1.png')] w-[1173px] h-[1489px] bg-no-repeat bg-cover pt-[98px] pr-[54px] pl-[54px]">
|
||||||
|
<div class="flex">
|
||||||
|
<div class="text-primary text-[35px] w-[200px] font-bold">姓名</div>
|
||||||
|
<div class="text-primary text-[35px]">王小五</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex mt-[26.74px]">
|
||||||
|
<div class="text-primary text-[35px] w-[200px] font-bold">*年龄</div>
|
||||||
|
<div class="text-primary text-[35px]">10 岁</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex mt-[26.74px]">
|
||||||
|
<div class="text-primary text-[35px] w-[200px] font-bold">*性别</div>
|
||||||
|
<div class="text-primary text-[35px]">女</div>
|
||||||
|
</div>
|
||||||
|
<div class="w-[1065px] h-[980px] bg-#F5F5F5 mt-[8.26px] flex pt-[21.74px]">
|
||||||
|
<div class="flex">
|
||||||
|
<div class="text-primary font-bold shrink-0 w-[200px]">*作品1</div>
|
||||||
|
<div>
|
||||||
|
<img class="w-[738px] h-[353px]" src="@/assets/image/dfbackground@2.png" alt="">
|
||||||
|
<div class="flex text-primary text-[30px] font-bold">
|
||||||
|
<div>作品名称</div>
|
||||||
|
<div>盛夏光年</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
|
||||||
|
</style>
|
@ -1,4 +1,6 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
|
import {useAuth} from "@/store/auth/index.js";
|
||||||
|
const {clickSendCode}= useAuth()
|
||||||
import {useAdaptation} from "@/utils/self-adaption.js";
|
import {useAdaptation} from "@/utils/self-adaption.js";
|
||||||
import {sizes} from "@/dict/index.js";
|
import {sizes} from "@/dict/index.js";
|
||||||
import size375 from '@/views/login/size375/index.vue'
|
import size375 from '@/views/login/size375/index.vue'
|
||||||
@ -6,7 +8,7 @@ import size768 from '@/views/login/size768/index.vue'
|
|||||||
import size1440 from '@/views/login/size1440/index.vue'
|
import size1440 from '@/views/login/size1440/index.vue'
|
||||||
import size1920 from '@/views/login/size1920/index.vue'
|
import size1920 from '@/views/login/size1920/index.vue'
|
||||||
import {computed} from "vue";
|
import {computed} from "vue";
|
||||||
const {currentRange }= useAdaptation([ {minWidth:'0px',maxWidth:'768px'}, {minWidth:'768px',maxWidth:'1440px'}, {minWidth:'1440px',maxWidth: '1920px'}, {minWidth:'1920px'}])
|
const {currentRange }= useAdaptation(sizes)
|
||||||
const viewComponent = computed(()=>{
|
const viewComponent = computed(()=>{
|
||||||
switch (currentRange.value?.minWidth){
|
switch (currentRange.value?.minWidth){
|
||||||
case '0px':
|
case '0px':
|
||||||
@ -22,7 +24,7 @@ switch (currentRange.value?.minWidth){
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<component :is="viewComponent"></component>
|
<component @sendCode="clickSendCode" :is="viewComponent"></component>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
|
import {useAuth} from "@/store/auth/index.js";
|
||||||
|
const {clickSendCode,telNum,code}= useAuth()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
@ -10,19 +11,19 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="bg-[url('@/assets/image/z3321@2x.png')] flex flex-col items-center w-[469px] h-[545px] bg-center bg-no-repeat bg-cover pt-[61px] pr-[78px] pl-[78px]">
|
<div class="bg-[url('@/assets/image/z3321@2x.png')] flex flex-col items-center w-[469px] h-[545px] bg-center bg-no-repeat bg-cover pt-[61px] pr-[78px] pl-[78px]">
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<div class="text-primary text-[14px] font-bold w-[66px]">手机号</div>
|
<div class="text-primary text-[14px] font-bold w-[66px]" >手机号</div>
|
||||||
<div>
|
<div>
|
||||||
<input class="pl-[16px] w-[341px] h-[34px] focus:outline-none placeholder:text-primary placeholder:text-[14px] focus: bg-[#DCE5E9] focus:text-[14px] border-none" placeholder="请输入手机号" type="text">
|
<input v-no-space v-model="telNum" class="pl-[16px] pr-[16px] w-[341px] h-[34px] focus:outline-none placeholder:text-primary placeholder:text-[14px] focus: bg-[#DCE5E9] border-none" placeholder="请输入手机号" type="text">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center mt-[18px]">
|
<div class="flex items-center mt-[18px]">
|
||||||
<div class="text-primary text-[14px] font-bold w-[66px]">验证码</div>
|
<div class="text-primary text-[14px] font-bold w-[66px]">验证码</div>
|
||||||
<div class="flex items-center justify-between w-[341px] grow-1">
|
<div class="flex items-center justify-between w-[341px] grow-1">
|
||||||
<input class="pl-[16px] w-[211px] h-[34px] focus:outline-none placeholder:text-primary placeholder:text-[14px] focus: bg-[#DCE5E9] focus:text-[14px] border-none" placeholder="请输入验证码" type="text">
|
<input v-model="code" v-no-space class="pl-[16px] pr-[16px] w-[211px] h-[34px] focus:outline-none placeholder:text-primary placeholder:text-[14px] focus: bg-[#DCE5E9] border-none" placeholder="请输入验证码" type="text">
|
||||||
<div class="w-[120px] h-[34px] bg-primary text-#fff flex items-center text-[14px] justify-center shrink-0">获取验证码</div>
|
<div class="w-[120px] h-[34px] bg-primary text-#fff flex items-center text-[14px] justify-center shrink-0 cursor-pointer" @click="clickSendCode">获取验证码</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="bg-[url('@/assets/image/z3255@2x.png')] w-[240px] h-[39px] bg-center bg-no-repeat bg-contain flex items-center justify-center text-#fff text-[21px] mt-[73px]">登录/注册</div>
|
<div class="bg-[url('@/assets/image/z3255@2x.png')] w-[240px] h-[39px] bg-center bg-no-repeat bg-contain flex items-center justify-center text-#fff text-[16px] mt-[73px] cursor-pointer">登录/注册</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-[116px]">
|
<div class="mt-[116px]">
|
||||||
<img class="w-[248px] h-[28px]" src="@/assets/image/zu733@2x.png" alt="">
|
<img class="w-[248px] h-[28px]" src="@/assets/image/zu733@2x.png" alt="">
|
||||||
@ -31,7 +32,3 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
|
||||||
|
|
||||||
</style>
|
|
||||||
|
@ -1,49 +1,43 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
|
import {useAuth} from "@/store/auth/index.js"
|
||||||
|
const {clickSendCode,telNum,code}= useAuth()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<div class="box-border relative w-screen h-screen bg-center bg-no-repeat bg-cover bg-[url('@/assets/image/gdz53@2x.png')]" style="">
|
<div class="box-border relative w-screen h-screen bg-center bg-no-repeat bg-cover bg-[url('@/assets/image/gdz53@2x.png')]" style="">
|
||||||
<div class="relative z-10 flex items-center flex-col"> <div class="content1 mb-[123px] shrink-0 "></div>
|
<div class="relative z-10 flex items-center flex-col"> <div class="content1 mb-[123px] shrink-0 "></div>
|
||||||
<div class="content2">
|
<div class="content2 bg-cover w-[1654px] h-[1285px] bg-no-repeat bg-[url('@/assets/image/zu3270@2x.png')] pt-[241px] flex items-center flex-col">
|
||||||
<div class="wrap1">
|
<div class="wrap1">
|
||||||
<div class="wrap1_1">手机号</div>
|
<div class="wrap1_1">手机号</div>
|
||||||
<div class="wrap1_2">
|
<div class="wrap1_2">
|
||||||
<input class="pl-[61px] w-[1174px] h-[174px] focus:outline-none placeholder:text-primary placeholder:text-[72px] focus: bg-[#DCE5E9] focus:text-[72px] border-none" placeholder="请输入手机号" type="text">
|
<input v-model="telNum" v-no-space class="pl-[61px] pr-[61px] w-[1174px] h-[174px] focus:outline-none placeholder:text-primary placeholder:text-[72px] focus: bg-[#DCE5E9] border-none" placeholder="请输入手机号" type="text">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="wrap2">
|
<div class="wrap2">
|
||||||
<div class="wrap2_1">验证码</div>
|
<div class="wrap2_1">验证码</div>
|
||||||
<div class="wrap2_2">
|
<div class="wrap2_2">
|
||||||
<input class="wrap2_2_1" placeholder="请输入验证码" type="text">
|
<input v-model="code" v-no-space class="wrap2_2_1 pr-[61px]" placeholder="请输入验证码" type="text">
|
||||||
</div>
|
</div>
|
||||||
<div class="wrap2_3 bg-primary">
|
<div class="wrap2_3 bg-primary" @click="clickSendCode">
|
||||||
获取验证码
|
获取验证码
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="wrap3">登录/注册</div>
|
<div class="wrap3">登录/注册</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="content3">
|
<div class="content3 absolute top-0 left-0 bg-cover">
|
||||||
<img src="@/assets/image/gdz27.png" alt="">
|
<img class="w-[671px] h-[728px]" src="@/assets/image/gdz27.png" alt="">
|
||||||
</div></div>
|
</div></div>
|
||||||
|
|
||||||
<div class="content4 absolute bottom-[200px] left-[50%] transform translate-x-[-50%]">
|
<div class="content4 absolute bottom-[200px] left-[50%] transform translate-x-[-50%]">
|
||||||
<img class="w-[1270px] h-[145px]" src="@/assets/image/zu733@2x.png" alt="">
|
<img class="w-[1270px] h-[145px]" src="@/assets/image/zu733@2x.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
|
<div class="absolute bottom-0 right-0">
|
||||||
|
<img src="@/assets/image/gdz12@2x.png" class="w-[865px] h-[804px]" alt="">
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.content3 {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
background-size: cover;
|
|
||||||
|
|
||||||
img {
|
|
||||||
width: 671px;
|
|
||||||
height: 728px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.content1 {
|
.content1 {
|
||||||
margin-top: 835px;
|
margin-top: 835px;
|
||||||
@ -62,7 +56,6 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding-top: 241px;
|
|
||||||
|
|
||||||
.wrap3 {
|
.wrap3 {
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
|
@ -3,14 +3,20 @@ import {useAdaptation} from "@/utils/self-adaption.js";
|
|||||||
import {sizes} from "@/dict/index.js";
|
import {sizes} from "@/dict/index.js";
|
||||||
import size375 from '@/views/signup/size375/index.vue'
|
import size375 from '@/views/signup/size375/index.vue'
|
||||||
import {computed} from "vue";
|
import {computed} from "vue";
|
||||||
const {maxWidth}= useAdaptation(sizes,(maxWidth)=>{
|
import size768 from "@/views/login/size768/index.vue";
|
||||||
})
|
import size1440 from "@/views/login/size1440/index.vue";
|
||||||
|
import size1920 from "@/views/login/size1920/index.vue";
|
||||||
|
const {currentRange }= useAdaptation(sizes)
|
||||||
const viewComponent = computed(()=>{
|
const viewComponent = computed(()=>{
|
||||||
switch (maxWidth.value){
|
switch (currentRange.value?.minWidth){
|
||||||
case '375px':
|
case '0px':
|
||||||
return size375
|
|
||||||
default:
|
|
||||||
return size375
|
return size375
|
||||||
|
case '768px':
|
||||||
|
return size768
|
||||||
|
case '1440px':
|
||||||
|
return size1440
|
||||||
|
case '1920px':
|
||||||
|
return size1920
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
@ -7,6 +7,7 @@ import {VantResolver} from '@vant/auto-import-resolver';
|
|||||||
import UnoCSS from 'unocss/vite'
|
import UnoCSS from 'unocss/vite'
|
||||||
// https://vitejs.dev/config/
|
// https://vitejs.dev/config/
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
|
envDir: './env', // 自定义env目录
|
||||||
server: {
|
server: {
|
||||||
host: '0.0.0.0', // 监听所有网络接口
|
host: '0.0.0.0', // 监听所有网络接口
|
||||||
port: 5878,
|
port: 5878,
|
||||||
|
Loading…
Reference in New Issue
Block a user