类型标注

This commit is contained in:
unanmed 2024-02-06 00:29:47 +08:00
parent 87c82aa0e2
commit 53fd0493e1
9 changed files with 549 additions and 252 deletions

View File

@ -5,15 +5,13 @@
"type": "module",
"scripts": {
"dev": "ts-node-esm script/dev.ts",
"build": "vue-tsc && vite build && ts-node-esm script/build.ts dist",
"build-gh": "vue-tsc && vite build --base=/HumanBreak/ && ts-node-esm script/build.ts gh",
"build-local": "vue-tsc && vite build --base=/ && ts-node-esm script/build.ts local",
"build": "vue-tsc --noEmit && ts-node-esm script/build.ts dist",
"preview": "vite preview",
"update": "ts-node-esm script/update.ts",
"declare": "ts-node-esm script/declare.ts",
"type": "vue-tsc --noEmit",
"lines": "ts-node-esm script/lines.ts",
"declaration": "vue-tsc -p tsconfig.declaration.json"
"build-dts": "ts-node-esm script/buildDeclaration.ts"
},
"dependencies": {
"@ant-design/icons-vue": "^6.1.0",
@ -53,12 +51,13 @@
"form-data": "^4.0.0",
"fs-extra": "^10.1.0",
"less": "^4.2.0",
"rollup": "^3.28.1",
"rollup": "^3.29.4",
"terser": "^5.19.4",
"ts-node": "^10.9.1",
"typescript": "^5.2.2",
"unplugin-vue-components": "^0.22.12",
"vite": "^4.4.9",
"vite-plugin-dts": "^3.7.2",
"vue-tsc": "^1.8.8",
"ws": "^8.13.0"
}

View File

@ -51,22 +51,22 @@ devDependencies:
version: 7.22.15(@babel/core@7.22.15)
'@rollup/plugin-babel':
specifier: ^6.0.3
version: 6.0.3(@babel/core@7.22.15)(@types/babel__core@7.20.1)(rollup@3.28.1)
version: 6.0.3(@babel/core@7.22.15)(@types/babel__core@7.20.1)(rollup@3.29.4)
'@rollup/plugin-commonjs':
specifier: ^25.0.4
version: 25.0.4(rollup@3.28.1)
version: 25.0.4(rollup@3.29.4)
'@rollup/plugin-node-resolve':
specifier: ^15.2.1
version: 15.2.1(rollup@3.28.1)
version: 15.2.1(rollup@3.29.4)
'@rollup/plugin-replace':
specifier: ^5.0.2
version: 5.0.2(rollup@3.28.1)
version: 5.0.2(rollup@3.29.4)
'@rollup/plugin-terser':
specifier: ^0.4.3
version: 0.4.3(rollup@3.28.1)
version: 0.4.3(rollup@3.29.4)
'@rollup/plugin-typescript':
specifier: ^11.1.3
version: 11.1.3(rollup@3.28.1)(typescript@5.2.2)
version: 11.1.3(rollup@3.29.4)(typescript@5.2.2)
'@types/babel__core':
specifier: ^7.20.1
version: 7.20.1
@ -113,8 +113,8 @@ devDependencies:
specifier: ^4.2.0
version: 4.2.0
rollup:
specifier: ^3.28.1
version: 3.28.1
specifier: ^3.29.4
version: 3.29.4
terser:
specifier: ^5.19.4
version: 5.19.4
@ -126,10 +126,13 @@ devDependencies:
version: 5.2.2
unplugin-vue-components:
specifier: ^0.22.12
version: 0.22.12(rollup@3.28.1)(vue@3.3.4)
version: 0.22.12(rollup@3.29.4)(vue@3.3.4)
vite:
specifier: ^4.4.9
version: 4.4.9(@types/node@18.17.14)(less@4.2.0)(terser@5.19.4)
vite-plugin-dts:
specifier: ^3.7.2
version: 3.7.2(@types/node@18.17.14)(rollup@3.29.4)(typescript@5.2.2)(vite@4.4.9)
vue-tsc:
specifier: ^1.8.8
version: 1.8.8(typescript@5.2.2)
@ -199,6 +202,14 @@ packages:
chalk: 2.4.2
dev: true
/@babel/code-frame@7.23.5:
resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/highlight': 7.23.4
chalk: 2.4.2
dev: true
/@babel/compat-data@7.22.9:
resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==}
engines: {node: '>=6.9.0'}
@ -420,6 +431,12 @@ packages:
resolution: {integrity: sha512-4E/F9IIEi8WR94324mbDUMo074YTheJmd7eZF5vITTeYchqAi6sYXRLHUVsmkdmY4QjfKTcB2jB7dVP3NaBElQ==}
engines: {node: '>=6.9.0'}
/@babel/helper-validator-identifier@7.22.20:
resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
engines: {node: '>=6.9.0'}
requiresBuild: true
dev: true
/@babel/helper-validator-option@7.22.15:
resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==}
engines: {node: '>=6.9.0'}
@ -448,12 +465,23 @@ packages:
/@babel/highlight@7.22.13:
resolution: {integrity: sha512-C/BaXcnnvBCmHTpz/VGZ8jgtE2aYlW4hxDhseJAWZb7gqGM/qtCK6iZUb0TyKFf7BOUsBH7Q7fkRsDRhg1XklQ==}
engines: {node: '>=6.9.0'}
requiresBuild: true
dependencies:
'@babel/helper-validator-identifier': 7.22.15
chalk: 2.4.2
js-tokens: 4.0.0
dev: true
/@babel/highlight@7.23.4:
resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==}
engines: {node: '>=6.9.0'}
requiresBuild: true
dependencies:
'@babel/helper-validator-identifier': 7.22.20
chalk: 2.4.2
js-tokens: 4.0.0
dev: true
/@babel/parser@7.22.15:
resolution: {integrity: sha512-RWmQ/sklUN9BvGGpCDgSubhHWfAx24XDTDObup4ffvxaYsptOg2P3KG0j+1eWKLxpkX0j0uHxmpq2Z1SP/VhxA==}
engines: {node: '>=6.0.0'}
@ -1649,6 +1677,49 @@ packages:
resolution: {integrity: sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==}
dev: false
/@microsoft/api-extractor-model@7.28.3(@types/node@18.17.14):
resolution: {integrity: sha512-wT/kB2oDbdZXITyDh2SQLzaWwTOFbV326fP0pUwNW00WeliARs0qjmXBWmGWardEzp2U3/axkO3Lboqun6vrig==}
dependencies:
'@microsoft/tsdoc': 0.14.2
'@microsoft/tsdoc-config': 0.16.2
'@rushstack/node-core-library': 3.62.0(@types/node@18.17.14)
transitivePeerDependencies:
- '@types/node'
dev: true
/@microsoft/api-extractor@7.39.0(@types/node@18.17.14):
resolution: {integrity: sha512-PuXxzadgnvp+wdeZFPonssRAj/EW4Gm4s75TXzPk09h3wJ8RS3x7typf95B4vwZRrPTQBGopdUl+/vHvlPdAcg==}
hasBin: true
dependencies:
'@microsoft/api-extractor-model': 7.28.3(@types/node@18.17.14)
'@microsoft/tsdoc': 0.14.2
'@microsoft/tsdoc-config': 0.16.2
'@rushstack/node-core-library': 3.62.0(@types/node@18.17.14)
'@rushstack/rig-package': 0.5.1
'@rushstack/ts-command-line': 4.17.1
colors: 1.2.5
lodash: 4.17.21
resolve: 1.22.4
semver: 7.5.4
source-map: 0.6.1
typescript: 5.3.3
transitivePeerDependencies:
- '@types/node'
dev: true
/@microsoft/tsdoc-config@0.16.2:
resolution: {integrity: sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==}
dependencies:
'@microsoft/tsdoc': 0.14.2
ajv: 6.12.6
jju: 1.4.0
resolve: 1.19.0
dev: true
/@microsoft/tsdoc@0.14.2:
resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==}
dev: true
/@nicolo-ribaudo/chokidar-2@2.1.8-no-fsevents.3:
resolution: {integrity: sha512-s88O1aVtXftvp5bCPB7WnmXc5IwOZZ7YPuwNPt+GtOOXpPvad1LfbmjYv+qII7zP6RU2QGnqve27dnLycEnyEQ==}
requiresBuild: true
@ -1690,7 +1761,7 @@ packages:
dev: true
optional: true
/@rollup/plugin-babel@6.0.3(@babel/core@7.22.15)(@types/babel__core@7.20.1)(rollup@3.28.1):
/@rollup/plugin-babel@6.0.3(@babel/core@7.22.15)(@types/babel__core@7.20.1)(rollup@3.29.4):
resolution: {integrity: sha512-fKImZKppa1A/gX73eg4JGo+8kQr/q1HBQaCGKECZ0v4YBBv3lFqi14+7xyApECzvkLTHCifx+7ntcrvtBIRcpg==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1705,12 +1776,12 @@ packages:
dependencies:
'@babel/core': 7.22.15
'@babel/helper-module-imports': 7.22.15
'@rollup/pluginutils': 5.0.4(rollup@3.28.1)
'@rollup/pluginutils': 5.0.4(rollup@3.29.4)
'@types/babel__core': 7.20.1
rollup: 3.28.1
rollup: 3.29.4
dev: true
/@rollup/plugin-commonjs@25.0.4(rollup@3.28.1):
/@rollup/plugin-commonjs@25.0.4(rollup@3.29.4):
resolution: {integrity: sha512-L92Vz9WUZXDnlQQl3EwbypJR4+DM2EbsO+/KOcEkP4Mc6Ct453EeDB2uH9lgRwj4w5yflgNpq9pHOiY8aoUXBQ==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1719,16 +1790,16 @@ packages:
rollup:
optional: true
dependencies:
'@rollup/pluginutils': 5.0.4(rollup@3.28.1)
'@rollup/pluginutils': 5.0.4(rollup@3.29.4)
commondir: 1.0.1
estree-walker: 2.0.2
glob: 8.1.0
is-reference: 1.2.1
magic-string: 0.27.0
rollup: 3.28.1
rollup: 3.29.4
dev: true
/@rollup/plugin-node-resolve@15.2.1(rollup@3.28.1):
/@rollup/plugin-node-resolve@15.2.1(rollup@3.29.4):
resolution: {integrity: sha512-nsbUg588+GDSu8/NS8T4UAshO6xeaOfINNuXeVHcKV02LJtoRaM1SiOacClw4kws1SFiNhdLGxlbMY9ga/zs/w==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1737,16 +1808,16 @@ packages:
rollup:
optional: true
dependencies:
'@rollup/pluginutils': 5.0.4(rollup@3.28.1)
'@rollup/pluginutils': 5.0.4(rollup@3.29.4)
'@types/resolve': 1.20.2
deepmerge: 4.3.1
is-builtin-module: 3.2.1
is-module: 1.0.0
resolve: 1.22.4
rollup: 3.28.1
rollup: 3.29.4
dev: true
/@rollup/plugin-replace@5.0.2(rollup@3.28.1):
/@rollup/plugin-replace@5.0.2(rollup@3.29.4):
resolution: {integrity: sha512-M9YXNekv/C/iHHK+cvORzfRYfPbq0RDD8r0G+bMiTXjNGKulPnCT9O3Ss46WfhI6ZOCgApOP7xAdmCQJ+U2LAA==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1755,12 +1826,12 @@ packages:
rollup:
optional: true
dependencies:
'@rollup/pluginutils': 5.0.4(rollup@3.28.1)
'@rollup/pluginutils': 5.0.4(rollup@3.29.4)
magic-string: 0.27.0
rollup: 3.28.1
rollup: 3.29.4
dev: true
/@rollup/plugin-terser@0.4.3(rollup@3.28.1):
/@rollup/plugin-terser@0.4.3(rollup@3.29.4):
resolution: {integrity: sha512-EF0oejTMtkyhrkwCdg0HJ0IpkcaVg1MMSf2olHb2Jp+1mnLM04OhjpJWGma4HobiDTF0WCyViWuvadyE9ch2XA==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1769,13 +1840,13 @@ packages:
rollup:
optional: true
dependencies:
rollup: 3.28.1
rollup: 3.29.4
serialize-javascript: 6.0.1
smob: 1.4.0
terser: 5.19.4
dev: true
/@rollup/plugin-typescript@11.1.3(rollup@3.28.1)(typescript@5.2.2):
/@rollup/plugin-typescript@11.1.3(rollup@3.29.4)(typescript@5.2.2):
resolution: {integrity: sha512-8o6cNgN44kQBcpsUJTbTXMTtb87oR1O0zgP3Dxm71hrNgparap3VujgofEilTYJo+ivf2ke6uy3/E5QEaiRlDA==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1788,13 +1859,13 @@ packages:
tslib:
optional: true
dependencies:
'@rollup/pluginutils': 5.0.4(rollup@3.28.1)
'@rollup/pluginutils': 5.0.4(rollup@3.29.4)
resolve: 1.22.4
rollup: 3.28.1
rollup: 3.29.4
typescript: 5.2.2
dev: true
/@rollup/pluginutils@5.0.4(rollup@3.28.1):
/@rollup/pluginutils@5.0.4(rollup@3.29.4):
resolution: {integrity: sha512-0KJnIoRI8A+a1dqOYLxH8vBf8bphDmty5QvIm2hqm7oFCFYKCAZWWd2hXgMibaPsNDhI0AtpYfQZJG47pt/k4g==}
engines: {node: '>=14.0.0'}
peerDependencies:
@ -1806,7 +1877,56 @@ packages:
'@types/estree': 1.0.1
estree-walker: 2.0.2
picomatch: 2.3.1
rollup: 3.28.1
rollup: 3.29.4
dev: true
/@rollup/pluginutils@5.1.0(rollup@3.29.4):
resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==}
engines: {node: '>=14.0.0'}
peerDependencies:
rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
peerDependenciesMeta:
rollup:
optional: true
dependencies:
'@types/estree': 1.0.1
estree-walker: 2.0.2
picomatch: 2.3.1
rollup: 3.29.4
dev: true
/@rushstack/node-core-library@3.62.0(@types/node@18.17.14):
resolution: {integrity: sha512-88aJn2h8UpSvdwuDXBv1/v1heM6GnBf3RjEy6ZPP7UnzHNCqOHA2Ut+ScYUbXcqIdfew9JlTAe3g+cnX9xQ/Aw==}
peerDependencies:
'@types/node': '*'
peerDependenciesMeta:
'@types/node':
optional: true
dependencies:
'@types/node': 18.17.14
colors: 1.2.5
fs-extra: 7.0.1
import-lazy: 4.0.0
jju: 1.4.0
resolve: 1.22.4
semver: 7.5.4
z-schema: 5.0.5
dev: true
/@rushstack/rig-package@0.5.1:
resolution: {integrity: sha512-pXRYSe29TjRw7rqxD4WS3HN/sRSbfr+tJs4a9uuaSIBAITbUggygdhuG0VrO0EO+QqH91GhYMN4S6KRtOEmGVA==}
dependencies:
resolve: 1.22.4
strip-json-comments: 3.1.1
dev: true
/@rushstack/ts-command-line@4.17.1:
resolution: {integrity: sha512-2jweO1O57BYP5qdBGl6apJLB+aRIn5ccIRTPDyULh0KMwVzFqWtw6IZWt1qtUoZD/pD2RNkIOosH6Cq45rIYeg==}
dependencies:
'@types/argparse': 1.0.38
argparse: 1.0.10
colors: 1.2.5
string-argv: 0.3.2
dev: true
/@simonwep/pickr@1.8.2:
@ -1837,6 +1957,10 @@ packages:
resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==}
dev: true
/@types/argparse@1.0.38:
resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==}
dev: true
/@types/babel__core@7.20.1:
resolution: {integrity: sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==}
dependencies:
@ -1971,18 +2095,37 @@ packages:
'@volar/source-map': 1.10.1
dev: true
/@volar/language-core@1.11.1:
resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==}
dependencies:
'@volar/source-map': 1.11.1
dev: true
/@volar/source-map@1.10.1:
resolution: {integrity: sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA==}
dependencies:
muggle-string: 0.3.1
dev: true
/@volar/source-map@1.11.1:
resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==}
dependencies:
muggle-string: 0.3.1
dev: true
/@volar/typescript@1.10.1:
resolution: {integrity: sha512-+iiO9yUSRHIYjlteT+QcdRq8b44qH19/eiUZtjNtuh6D9ailYM7DVR0zO2sEgJlvCaunw/CF9Ov2KooQBpR4VQ==}
dependencies:
'@volar/language-core': 1.10.1
dev: true
/@volar/typescript@1.11.1:
resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==}
dependencies:
'@volar/language-core': 1.11.1
path-browserify: 1.0.1
dev: true
/@vue/babel-helper-vue-transform-on@1.1.5:
resolution: {integrity: sha512-SgUymFpMoAyWeYWLAY+MkCK3QEROsiUnfaw5zxOVD/M64KQs8D/4oK6Q5omVA2hnvEOE0SCkH2TZxs/jnnUj7w==}
dev: true
@ -2040,6 +2183,26 @@ packages:
'@vue/compiler-dom': 3.3.4
'@vue/shared': 3.3.4
/@vue/language-core@1.8.27(typescript@5.2.2):
resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
typescript:
optional: true
dependencies:
'@volar/language-core': 1.11.1
'@volar/source-map': 1.11.1
'@vue/compiler-dom': 3.3.4
'@vue/shared': 3.3.4
computeds: 0.0.1
minimatch: 9.0.3
muggle-string: 0.3.1
path-browserify: 1.0.1
typescript: 5.2.2
vue-template-compiler: 2.7.14
dev: true
/@vue/language-core@1.8.8(typescript@5.2.2):
resolution: {integrity: sha512-i4KMTuPazf48yMdYoebTkgSOJdFraE4pQf0B+FTOFkbB+6hAfjrSou/UmYWRsWyZV6r4Rc6DDZdI39CJwL0rWw==}
peerDependencies:
@ -2176,6 +2339,15 @@ packages:
indent-string: 4.0.0
dev: true
/ajv@6.12.6:
resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
dependencies:
fast-deep-equal: 3.1.3
fast-json-stable-stringify: 2.1.0
json-schema-traverse: 0.4.1
uri-js: 4.4.1
dev: true
/ansi-regex@5.0.1:
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
engines: {node: '>=8'}
@ -2189,6 +2361,7 @@ packages:
/ansi-styles@3.2.1:
resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
engines: {node: '>=4'}
requiresBuild: true
dependencies:
color-convert: 1.9.3
dev: true
@ -2262,6 +2435,12 @@ packages:
resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
dev: true
/argparse@1.0.10:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
dependencies:
sprintf-js: 1.0.3
dev: true
/array-tree-filter@2.1.0:
resolution: {integrity: sha512-4ROwICNlNw/Hqa9v+rk5h22KjmzB1JGTMVKP2AKJBOCgb0yL0ASf0+YvCcLNNwquOHNX48jkeZIJ3a+oOQqKcw==}
dev: false
@ -2478,6 +2657,7 @@ packages:
/chalk@2.4.2:
resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
engines: {node: '>=4'}
requiresBuild: true
dependencies:
ansi-styles: 3.2.1
escape-string-regexp: 1.0.5
@ -2559,6 +2739,7 @@ packages:
/color-convert@1.9.3:
resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
requiresBuild: true
dependencies:
color-name: 1.1.3
dev: true
@ -2572,6 +2753,7 @@ packages:
/color-name@1.1.3:
resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
requiresBuild: true
dev: true
/color-name@1.1.4:
@ -2583,6 +2765,11 @@ packages:
hasBin: true
dev: true
/colors@1.2.5:
resolution: {integrity: sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==}
engines: {node: '>=0.1.90'}
dev: true
/combined-stream@1.0.8:
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
engines: {node: '>= 0.8'}
@ -2598,6 +2785,13 @@ packages:
engines: {node: '>= 6'}
dev: true
/commander@9.5.0:
resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==}
engines: {node: ^12.20.0 || >=14}
requiresBuild: true
dev: true
optional: true
/commondir@1.0.1:
resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==}
dev: true
@ -2621,6 +2815,10 @@ packages:
resolution: {integrity: sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==}
dev: false
/computeds@0.0.1:
resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==}
dev: true
/concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
dev: true
@ -2855,6 +3053,7 @@ packages:
/escape-string-regexp@1.0.5:
resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
engines: {node: '>=0.8.0'}
requiresBuild: true
dev: true
/estree-walker@2.0.2:
@ -2873,6 +3072,10 @@ packages:
resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
dev: true
/fast-deep-equal@3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
dev: true
/fast-glob@3.3.1:
resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
engines: {node: '>=8.6.0'}
@ -2884,6 +3087,10 @@ packages:
micromatch: 4.0.5
dev: true
/fast-json-stable-stringify@2.1.0:
resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
dev: true
/fast-xml-parser@4.2.7:
resolution: {integrity: sha512-J8r6BriSLO1uj2miOk1NW0YVm8AGOOu3Si2HQp/cSmo6EA4m3fcwu2WKjJ4RK9wMLBtg69y1kS8baDiQBR41Ig==}
hasBin: true
@ -3009,6 +3216,15 @@ packages:
universalify: 2.0.0
dev: true
/fs-extra@7.0.1:
resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==}
engines: {node: '>=6 <7 || >=8'}
dependencies:
graceful-fs: 4.2.11
jsonfile: 4.0.0
universalify: 0.1.2
dev: true
/fs-minipass@2.1.0:
resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==}
engines: {node: '>= 8'}
@ -3169,6 +3385,7 @@ packages:
/has-flag@3.0.0:
resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
engines: {node: '>=4'}
requiresBuild: true
dev: true
/has-property-descriptors@1.0.0:
@ -3274,6 +3491,11 @@ packages:
resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==}
dev: false
/import-lazy@4.0.0:
resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
engines: {node: '>=8'}
dev: true
/imurmurhash@0.1.4:
resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
engines: {node: '>=0.8.19'}
@ -3466,6 +3688,10 @@ packages:
'@pkgjs/parseargs': 0.11.0
dev: true
/jju@1.4.0:
resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==}
dev: true
/js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
@ -3484,6 +3710,10 @@ packages:
resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
dev: true
/json-schema-traverse@0.4.1:
resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
dev: true
/json-stable-stringify-without-jsonify@1.0.1:
resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
dev: true
@ -3494,6 +3724,12 @@ packages:
hasBin: true
dev: true
/jsonfile@4.0.0:
resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
optionalDependencies:
graceful-fs: 4.2.11
dev: true
/jsonfile@6.1.0:
resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
dependencies:
@ -3516,6 +3752,10 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
/kolorist@1.8.0:
resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==}
dev: true
/lazystream@1.0.1:
resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==}
engines: {node: '>= 0.6.3'}
@ -3578,6 +3818,14 @@ packages:
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
dev: true
/lodash.get@4.4.2:
resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==}
dev: true
/lodash.isequal@4.5.0:
resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==}
dev: true
/lodash@4.17.21:
resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
@ -4015,7 +4263,7 @@ packages:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
dependencies:
'@babel/code-frame': 7.22.13
'@babel/code-frame': 7.23.5
error-ex: 1.3.2
json-parse-even-better-errors: 2.3.1
lines-and-columns: 1.2.4
@ -4026,6 +4274,10 @@ packages:
engines: {node: '>= 0.10'}
dev: true
/path-browserify@1.0.1:
resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
dev: true
/path-dirname@1.0.2:
resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==}
dev: true
@ -4125,6 +4377,11 @@ packages:
pump: 2.0.1
dev: true
/punycode@2.3.1:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
dev: true
/queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
dev: true
@ -4284,6 +4541,13 @@ packages:
value-or-function: 3.0.0
dev: true
/resolve@1.19.0:
resolution: {integrity: sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==}
dependencies:
is-core-module: 2.13.0
path-parse: 1.0.7
dev: true
/resolve@1.22.4:
resolution: {integrity: sha512-PXNdCiPqDqeUou+w1C2eTQbNfxKSuMxqTCuvlmmMsk1NWHL5fRrhY6Pl0qEYYc6+QqGClco1Qj8XnjPego4wfg==}
hasBin: true
@ -4310,8 +4574,8 @@ packages:
glob: 7.2.3
dev: true
/rollup@3.28.1:
resolution: {integrity: sha512-R9OMQmIHJm9znrU3m3cpE8uhN0fGdXiawME7aZIpQqvpS/85+Vt1Hq1/yVIcYfOmaQiHjvXkQAoJukvLpau6Yw==}
/rollup@3.29.4:
resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==}
engines: {node: '>=14.18.0', npm: '>=8.0.0'}
hasBin: true
optionalDependencies:
@ -4475,6 +4739,10 @@ packages:
resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==}
dev: true
/sprintf-js@1.0.3:
resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
dev: true
/ssri@10.0.5:
resolution: {integrity: sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@ -4498,6 +4766,11 @@ packages:
engines: {node: '>=0.10'}
dev: true
/string-argv@0.3.2:
resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==}
engines: {node: '>=0.6.19'}
dev: true
/string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
engines: {node: '>=8'}
@ -4548,6 +4821,11 @@ packages:
min-indent: 1.0.1
dev: true
/strip-json-comments@3.1.1:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
dev: true
/strnum@1.0.5:
resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==}
dev: true
@ -4555,6 +4833,7 @@ packages:
/supports-color@5.5.0:
resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
engines: {node: '>=4'}
requiresBuild: true
dependencies:
has-flag: 3.0.0
dev: true
@ -4735,6 +5014,12 @@ packages:
hasBin: true
dev: true
/typescript@5.3.3:
resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==}
engines: {node: '>=14.17'}
hasBin: true
dev: true
/unc-path-regex@0.1.2:
resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==}
engines: {node: '>=0.10.0'}
@ -4784,12 +5069,17 @@ packages:
through2-filter: 3.0.0
dev: true
/universalify@0.1.2:
resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
engines: {node: '>= 4.0.0'}
dev: true
/universalify@2.0.0:
resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
engines: {node: '>= 10.0.0'}
dev: true
/unplugin-vue-components@0.22.12(rollup@3.28.1)(vue@3.3.4):
/unplugin-vue-components@0.22.12(rollup@3.29.4)(vue@3.3.4):
resolution: {integrity: sha512-FxyzsuBvMCYPIk+8cgscGBQ345tvwVu+qY5IhE++eorkyvA4Z1TiD/HCiim+Kbqozl10i4K+z+NCa2WO2jexRA==}
engines: {node: '>=14'}
peerDependencies:
@ -4800,7 +5090,7 @@ packages:
optional: true
dependencies:
'@antfu/utils': 0.7.6
'@rollup/pluginutils': 5.0.4(rollup@3.28.1)
'@rollup/pluginutils': 5.0.4(rollup@3.29.4)
chokidar: 3.5.3
debug: 4.3.4
fast-glob: 3.3.1
@ -4835,6 +5125,12 @@ packages:
picocolors: 1.0.0
dev: true
/uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
dependencies:
punycode: 2.3.1
dev: true
/util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
@ -4854,6 +5150,11 @@ packages:
spdx-expression-parse: 3.0.1
dev: true
/validator@13.11.0:
resolution: {integrity: sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ==}
engines: {node: '>= 0.10'}
dev: true
/value-or-function@3.0.0:
resolution: {integrity: sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg==}
engines: {node: '>= 0.10'}
@ -4916,6 +5217,30 @@ packages:
replace-ext: 1.0.1
dev: true
/vite-plugin-dts@3.7.2(@types/node@18.17.14)(rollup@3.29.4)(typescript@5.2.2)(vite@4.4.9):
resolution: {integrity: sha512-kg//1nDA01b8rufJf4TsvYN8LMkdwv0oBYpiQi6nRwpHyue+wTlhrBiqgipdFpMnW1oOYv6ywmzE5B0vg6vSEA==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
typescript: '*'
vite: '*'
peerDependenciesMeta:
vite:
optional: true
dependencies:
'@microsoft/api-extractor': 7.39.0(@types/node@18.17.14)
'@rollup/pluginutils': 5.1.0(rollup@3.29.4)
'@vue/language-core': 1.8.27(typescript@5.2.2)
debug: 4.3.4
kolorist: 1.8.0
typescript: 5.2.2
vite: 4.4.9(@types/node@18.17.14)(less@4.2.0)(terser@5.19.4)
vue-tsc: 1.8.27(typescript@5.2.2)
transitivePeerDependencies:
- '@types/node'
- rollup
- supports-color
dev: true
/vite@4.4.9(@types/node@18.17.14)(less@4.2.0)(terser@5.19.4):
resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==}
engines: {node: ^14.18.0 || >=16.0.0}
@ -4948,7 +5273,7 @@ packages:
esbuild: 0.18.20
less: 4.2.0
postcss: 8.4.29
rollup: 3.28.1
rollup: 3.29.4
terser: 5.19.4
optionalDependencies:
fsevents: 2.3.3
@ -4976,6 +5301,18 @@ packages:
he: 1.2.0
dev: true
/vue-tsc@1.8.27(typescript@5.2.2):
resolution: {integrity: sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==}
hasBin: true
peerDependencies:
typescript: '*'
dependencies:
'@volar/typescript': 1.11.1
'@vue/language-core': 1.8.27(typescript@5.2.2)
semver: 7.5.4
typescript: 5.2.2
dev: true
/vue-tsc@1.8.8(typescript@5.2.2):
resolution: {integrity: sha512-bSydNFQsF7AMvwWsRXD7cBIXaNs/KSjvzWLymq/UtKE36697sboX4EccSHFVxvgdBlI1frYPc/VMKJNB7DFeDQ==}
hasBin: true
@ -5104,3 +5441,15 @@ packages:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
dev: true
/z-schema@5.0.5:
resolution: {integrity: sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==}
engines: {node: '>=8.0.0'}
hasBin: true
dependencies:
lodash.get: 4.4.2
lodash.isequal: 4.5.0
validator: 13.11.0
optionalDependencies:
commander: 9.5.0
dev: true

View File

@ -1047,7 +1047,7 @@ editor_file = function (editor, callback) {
for (var id_ in fmap) {
fraw = fraw.replace('"' + id_ + '"', fmap[id_])
}
var datastr = 'var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = \n';
var datastr = '///<reference path="../../src/types/core.d.ts" />\nvar functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = \n';
datastr += fraw;
fs.writeFile('project/functions.js', encode(datastr), 'base64', function (err, data) {
callback(err);

View File

@ -10,6 +10,9 @@ import resolve from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs';
import { splitResorce } from './resource.js';
import compressing from 'compressing';
import * as vite from 'vite';
import legacy from '@vitejs/plugin-legacy';
import { buildDeclaration } from './buildDeclaration.js';
const type = process.argv[2];
const map = false;
@ -18,117 +21,18 @@ const compress = type === 'dist';
(async function () {
const timestamp = Date.now();
// 1. 去除未使用的文件
// const data = (() => {
// const data = fss.readFileSync('./public/project/data.js', 'utf-8');
// const json = JSON.parse(
// data
// .split(/(\n|\r\n)/)
// .slice(1)
// .join('\n')
// );
// return json;
// })() as { main: Record<string, string[]> };
// const main = data.main;
// try {
// const data = [
// ['./dist/project/floors', '.js', 'floorIds'],
// ['./dist/project/bgms', '', 'bgms'],
// ['./dist/project/sounds', '', 'sounds'],
// ['./dist/project/images', '', 'images'],
// ['./dist/project/animates', '.animate', 'animates'],
// ['./dist/project/tilesets', '', 'tilesets'],
// ['./dist/project/fonts', '.ttf', 'fonts']
// ];
// await Promise.all(
// data.map(async v => {
// const all = await fs.readdir(`${v[0]}`);
// const data = main[v[2]].map(vv => vv + v[1]);
// all.forEach(async vv => {
// if (!data.includes(vv)) {
// await fs.rm(`${v[0]}/${vv}`);
// }
// });
// })
// );
// if (!map) await fs.remove('./dist/maps/');
// // 在线查看什么都看不到,这编辑器难道还需要留着吗?
// await fs.remove('./dist/_server');
// await fs.remove('./dist/editor.html');
// await fs.remove('./dist/server.cjs');
// 1. vite打包
await vite.build({
plugins: [
legacy({
targets: ['defaults', 'not IE 11'],
polyfills: true,
modernPolyfills: true
})
]
});
// await fs.remove('./dist/project/materials/airwall.png');
// await fs.remove('./dist/project/materials/ground.png');
// await fs.remove('./dist/project/materials/icons_old.png');
// } catch (e) {
// console.log('去除未使用的文件失败!');
// console.log(e);
// }
// // 2. 压缩字体
// try {
// // 获取要压缩的文字列表libs & projects下的所有js文件
// let texts = ``;
// const exclude = `\n \t`;
// const libs = await fs.readdir('./public/libs');
// const project = await fs.readdir('./public/project');
// const floors = await fs.readdir('./public/project/floors');
// const assets = await fs.readdir('./dist/assets/');
// const all = [
// ...libs.map(v => `./public/libs/${v}`),
// ...project.map(v => `./public/project/${v}`),
// ...floors.map(v => `./public/project/floors/${v}`),
// ...assets.map(v => `./dist/assets/${v}`)
// ];
// for await (const dir of all) {
// const stat = await fs.stat(dir);
// if (!stat.isFile()) continue;
// if (dir.endsWith('.ttf')) continue;
// const file = await fs.readFile(dir, 'utf-8');
// for (let i = 0; i < file.length; i++) {
// const char = file[i];
// if (!texts.includes(char) && !exclude.includes(char))
// texts += char;
// }
// }
// // 获取所有字体(直接压缩字体会报错
// const fonts = main.fonts;
// await Promise.all([
// ...fonts.map(v =>
// (async () => {
// const fontmin = new Fontmin();
// fontmin
// .src<string>(`./public/project/fonts/${v}.ttf`)
// .dest('./dist/project/fonts')
// .use(
// Fontmin.glyph({
// text: texts
// })
// );
// await new Promise(res => {
// fontmin.run(err => {
// if (err) throw err;
// res('');
// });
// });
// })()
// )
// ]);
// await Promise.all([
// ...fonts.map(v => {
// return fs.rename(
// `./dist/project/fonts/${v}.ttf`,
// `./dist/project/fonts/${v}-${timestamp}.ttf`
// );
// })
// ]);
// } catch (e) {
// console.log('字体压缩失败');
// console.log(e);
// }
// 3. 压缩游戏进程
// 2. 压缩游戏进程
try {
await fs.remove('./dist/project/processG.min.js');
@ -162,7 +66,7 @@ const compress = type === 'dist';
console.log(e);
}
// 4. 压缩main.js
// 3. 压缩main.js
try {
// 先获取不能压缩的部分
const main = (await fs.readFile('./public/main.js', 'utf-8'))
@ -182,20 +86,79 @@ const compress = type === 'dist';
console.log(e);
}
// 5. 杂项
// try {
// await fs.copy('./LICENSE', './dist/LICENSE');
// } catch (e) {
// console.log('添加杂项失败');
// console.log(e);
// }
// 4. 打包类型标注
try {
await buildDeclaration();
} catch (e) {
console.log('打包类型标注失败');
console.log(e);
}
// 6. 资源分离
// if (resorce) {
// await splitResorce(type);
// }
// 5. 迁移类型标注文件
try {
await fs.copyFile('./_temp/types/index.d.ts', './dist/index.d.ts');
await fs.copy('./src/types', './dist/types');
await fs.copy('./src/source', './dist/source');
} catch (e) {
console.log('迁移类型标注文件');
console.log(e);
}
// 7. 压缩
// 6. 部分修改类型标注
try {
const indexDTS = await fs.readFile('./dist/index.d.ts', 'utf-8');
const re =
'///<reference path="./types/core.d.ts" />\n' +
indexDTS
.replaceAll('export declare', 'declare')
.replace(/export\s*\{\s*\};?/, '')
.replace(/import.*;/gu, '') +
`declare var Mota: IMota`;
await fs.writeFile('./dist/index.d.ts', re, 'utf-8');
const pluginDTS = await fs.readFile(
'./dist/types/plugin.d.ts',
'utf-8'
);
const rep = pluginDTS.replace(
`declare const Mota: import('../game/system').IMota;
interface Window {
Mota: import('../game/system').IMota;
}`,
''
);
await fs.writeFile('./dist/types/plugin.d.ts', rep);
const js = ['functions.js', 'plugins.js'];
for (const file of js) {
const info = await fs.readFile('./dist/project/' + file, 'utf-8');
const re = info.replace(
/\/\/\/\<reference\s*path=('|").*('|")\s*\/>/g,
`///<reference path="../index.d.ts" />
///<reference path="../types/core.d.ts" />`
);
await fs.writeFile('./dist/project/' + file, re, 'utf-8');
}
} catch (e) {
console.log('修改类型标注失败');
console.log(e);
}
// 7. tsconfig.json
try {
const content = `{
"compilerOptions": {
"lib": ["ESNext", "DOM", "DOM.Iterable"]
},
"include": ["index.d.ts", "types/**/d.ts"]
}`;
await fs.writeFile('./dist/tsconfig.json', content, 'utf-8');
} catch (e) {
console.log('添加tsconfig.json失败');
console.log(e);
}
// 8. 压缩
if (compress) {
try {
await fs.ensureDir('./out');

View File

@ -1,25 +1,23 @@
import typescript from '@rollup/plugin-typescript';
import fs from 'fs-extra';
import * as rollup from 'rollup';
import resolve from '@rollup/plugin-node-resolve';
import { build } from 'vite';
import dts from 'vite-plugin-dts';
if (process.argv[2] === 'exe') buildDeclaration();
export async function buildDeclaration() {
const build = await rollup.rollup({
input: './src/core/index.ts',
const b = await build({
build: {
lib: {
entry: './src/main.ts',
formats: ['es'],
fileName: 'index.js'
},
outDir: './_temp/types'
},
plugins: [
typescript({
sourceMap: false,
declaration: true,
emitDeclarationOnly: true,
outDir: './dist/types/',
noEmit: false,
jsx: 'preserve'
}),
resolve()
dts({
rollupTypes: true,
declarationOnly: true
})
]
});
build.write({
file: './dist/types/index.d.ts'
});
}
buildDeclaration();

View File

@ -47,8 +47,33 @@ import type * as toolboxTools from '@/plugin/ui/toolbox';
import type * as battle from './enemy/battle';
import type * as hero from './hero';
import type { Damage } from './enemy/damage';
// ---------- 插件
import type * as pop_r from '../plugin/pop';
import type * as use_r from '../plugin/use';
import type * as fly_r from '../plugin/ui/fly';
import type * as shadow_r from '../plugin/shadow/shadow';
import type * as gameShadow_r from '../plugin/shadow/gameShadow';
import type * as gameCanvas_r from '../plugin/fx/gameCanvas';
import type * as smooth_r from '../plugin/fx/smoothView';
import type * as frag_r from '../plugin/fx/frag';
import type * as utils_g from '../plugin/game/utils';
import type * as shop_g from '../plugin/game/shop';
import type * as replay_g from '../plugin/game/replay';
import type * as removeMap_g from '../plugin/game/removeMap';
import type * as remainEnemy_g from '../plugin/game/enemy/remainEnemy';
import type * as heroFourFrames_g from '../plugin/game/fx/heroFourFrames';
import type * as rewrite_g from '../plugin/game/fx/rewrite';
import type * as itemDetail_g from '../plugin/game/fx/itemDetail';
// ---------- 第三方库
import type * as _axios from 'axios';
import type * as _chartJs from 'chart.js';
import type _jszip from 'jszip';
import type * as _lodash from 'lodash-es';
import type * as _lzString from 'lz-string';
import type * as _mutateAnimate from 'mutate-animate';
import type * as _vue from 'vue';
interface ClassInterface {
export interface ClassInterface {
// 渲染进程与游戏进程通用
EventEmitter: typeof EventEmitter;
IndexedEventEmitter: typeof IndexedEventEmitter;
@ -77,7 +102,7 @@ interface ClassInterface {
type _IBattle = typeof battle;
type _IHero = typeof hero;
interface FunctionInterface extends _IBattle, _IHero {
export interface FunctionInterface extends _IBattle, _IHero {
// 定义于渲染进程,录像验证中会出错
m: typeof m;
icon: typeof icon;
@ -89,7 +114,7 @@ interface FunctionInterface extends _IBattle, _IHero {
removeAnimate: typeof removeAnimate;
}
interface VariableInterface {
export interface VariableInterface {
// 定义于渲染进程录像中会进行polyfill
loading: typeof loading;
hook: typeof hook;
@ -108,7 +133,7 @@ interface VariableInterface {
enemySpecials: typeof specials;
}
interface ModuleInterface {
export interface ModuleInterface {
CustomComponents: {
createSettingComponents: typeof createSettingComponents;
createToolbarComponents: typeof createToolbarComponents;
@ -127,7 +152,7 @@ interface ModuleInterface {
Damage: typeof Damage;
}
interface SystemInterfaceMap {
export interface SystemInterfaceMap {
class: ClassInterface;
fn: FunctionInterface;
var: VariableInterface;
@ -136,35 +161,35 @@ interface SystemInterfaceMap {
type InterfaceType = keyof SystemInterfaceMap;
interface PluginInterface {
export interface PluginInterface {
// 渲染进程定义的插件
pop_r: typeof import('../plugin/pop');
use_r: typeof import('../plugin/use');
// animate: typeof import('../plugin/animateController');
// utils: typeof import('../plugin/utils');
// status: typeof import('../plugin/ui/statusBar');
fly_r: typeof import('../plugin/ui/fly');
// webglUtils: typeof import('../plugin/webgl/utils');
shadow_r: typeof import('../plugin/shadow/shadow');
gameShadow_r: typeof import('../plugin/shadow/gameShadow');
// achievement: typeof import('../plugin/ui/achievement');
// path: typeof import('../plugin/fx/path');
gameCanvas_r: typeof import('../plugin/fx/gameCanvas');
// noise: typeof import('../plugin/fx/noise');
smooth_r: typeof import('../plugin/fx/smoothView');
frag_r: typeof import('../plugin/fx/frag');
pop_r: typeof pop_r;
use_r: typeof use_r;
// animate: typeof // animate
// utils: typeof // utils
// status: typeof // status
fly_r: typeof fly_r;
// webglUtils: typeof // webglUtils
shadow_r: typeof shadow_r;
gameShadow_r: typeof gameShadow_r;
// achievement: typeof // achievement
// path: typeof // path
gameCanvas_r: typeof gameCanvas_r;
// noise: typeof // noise
smooth_r: typeof smooth_r;
frag_r: typeof frag_r;
// 游戏进程定义的插件
utils_g: typeof import('../plugin/game/utils');
shop_g: typeof import('../plugin/game/shop');
replay_g: typeof import('../plugin/game/replay');
removeMap_g: typeof import('../plugin/game/removeMap');
remainEnemy_g: typeof import('../plugin/game/enemy/remainEnemy');
heroFourFrames_g: typeof import('../plugin/game/fx/heroFourFrames');
rewrite_g: typeof import('../plugin/game/fx/rewrite');
itemDetail_g: typeof import('../plugin/game/fx/itemDetail');
utils_g: typeof utils_g;
shop_g: typeof shop_g;
replay_g: typeof replay_g;
removeMap_g: typeof removeMap_g;
remainEnemy_g: typeof remainEnemy_g;
heroFourFrames_g: typeof heroFourFrames_g;
rewrite_g: typeof rewrite_g;
itemDetail_g: typeof itemDetail_g;
}
interface PackageInterface {
export interface PackageInterface {
axios: typeof import('axios');
'chart.js': typeof import('chart.js');
jszip: typeof import('jszip');

View File

@ -5,6 +5,8 @@ import App from './App.vue';
import './styles.less';
import 'ant-design-vue/dist/antd.dark.css';
export * from './game/system';
createApp(App).mount('#root');
main.init('play');

View File

@ -1,34 +0,0 @@
// packages/vlib-ui/tsconfig.declaration.json
{
"compilerOptions": {
"experimentalDecorators": true,
"target": "ESNext",
"useDefineForClassFields": true,
"module": "ESNext",
"moduleResolution": "Node",
"strict": true,
"jsx": "preserve",
"resolveJsonModule": true,
"isolatedModules": true,
"esModuleInterop": true,
"lib": ["ESNext", "DOM", "DOM.Iterable"],
"skipLibCheck": true,
"baseUrl": ".",
"paths": {
"@/*": ["src/*"],
"@ui/*": ["src/ui/*"]
},
"outDir": "dist/types/",
"declaration": true,
"emitDeclarationOnly": true
},
"include": [
"src/**/*.ts",
"src/**/*.d.ts",
"src/**/*.tsx",
"src/**/*.vue",
"mota.config.ts"
],
"references": [{ "path": "./tsconfig.node.json" }],
"exclude": ["node_modules", "**/__tests__/**", "**/__demos__/**", "**/*.md"]
}

View File

@ -4,7 +4,7 @@ import legacy from '@vitejs/plugin-legacy';
import components from 'unplugin-vue-components/vite';
import vuejsx from '@vitejs/plugin-vue-jsx'
import { AntDesignVueResolver } from 'unplugin-vue-components/resolvers';
import motaConfig from './mota.config';
import dts from 'vite-plugin-dts'
import { resolve } from 'path';
const FSHOST = 'http://127.0.0.1:3000/';
@ -14,11 +14,6 @@ export default defineConfig({
plugins: [
vue(),
vuejsx(),
legacy({
targets: ['defaults', 'not IE 11'],
polyfills: true,
modernPolyfills: true
}),
components({ resolvers: [AntDesignVueResolver()] })
],
base: `./`,