From 48f312530c4626cc3fe4f036331b54e3fdbf3e2a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=99=88=E6=A2=81=E6=9D=B0?= <2335099731@qq.com>
Date: Wed, 10 May 2023 09:13:06 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../.idea/vcs.xml" | 6 +
.../.idea/workspace.xml" | 41 +
.../vueslot/.gitignore" | 28 +
.../vueslot/.vscode/extensions.json" | 3 +
.../vueslot/README.md" | 29 +
.../vueslot/index.html" | 13 +
.../vueslot/package-lock.json" | 750 +++++++++++++++++
.../vueslot/package.json" | 17 +
.../vueslot/public/favicon.ico" | Bin 0 -> 4286 bytes
.../vueslot/src/App.vue" | 78 ++
.../vueslot/src/assets/base.css" | 74 ++
.../vueslot/src/assets/logo.svg" | 1 +
.../vueslot/src/assets/main.css" | 4 +
.../src/components/icons/IconCommunity.vue" | 7 +
.../components/icons/IconDocumentation.vue" | 7 +
.../src/components/icons/IconEcosystem.vue" | 7 +
.../src/components/icons/IconSupport.vue" | 7 +
.../src/components/icons/IconTooling.vue" | 19 +
.../vueslot/src/components/left.vue" | 66 ++
.../vueslot/src/components/price.vue" | 168 ++++
.../vueslot/src/components/right.vue" | 21 +
.../vueslot/src/main.js" | 6 +
.../vueslot/vite.config.js" | 14 +
.../vueslot/.gitignore" | 28 +
.../vueslot/.vscode/extensions.json" | 3 +
.../vueslot/README.md" | 29 +
.../vueslot/index.html" | 13 +
.../vueslot/package-lock.json" | 750 +++++++++++++++++
.../vueslot/package.json" | 17 +
.../vueslot/public/favicon.ico" | Bin 0 -> 4286 bytes
.../vueslot/src/App.vue" | 86 ++
.../vueslot/src/assets/base.css" | 74 ++
.../vueslot/src/assets/logo.svg" | 1 +
.../vueslot/src/assets/main.css" | 4 +
.../src/components/icons/IconCommunity.vue" | 7 +
.../components/icons/IconDocumentation.vue" | 7 +
.../src/components/icons/IconEcosystem.vue" | 7 +
.../src/components/icons/IconSupport.vue" | 7 +
.../src/components/icons/IconTooling.vue" | 19 +
.../vueslot/src/components/left.vue" | 66 ++
.../vueslot/src/components/price.vue" | 168 ++++
.../vueslot/src/components/right.vue" | 21 +
.../vueslot/src/main.js" | 6 +
.../vueslot/vite.config.js" | 14 +
.../4.13setup/vueslot/.gitignore" | 28 +
.../vueslot/.vscode/extensions.json" | 3 +
.../4.13setup/vueslot/README.md" | 29 +
.../4.13setup/vueslot/index.html" | 13 +
.../4.13setup/vueslot/package-lock.json" | 750 +++++++++++++++++
.../4.13setup/vueslot/package.json" | 17 +
.../4.13setup/vueslot/public/favicon.ico" | Bin 0 -> 4286 bytes
.../4.13setup/vueslot/src/App.vue" | 94 +++
.../4.13setup/vueslot/src/assets/base.css" | 74 ++
.../4.13setup/vueslot/src/assets/logo.svg" | 1 +
.../4.13setup/vueslot/src/assets/main.css" | 4 +
.../src/components/icons/IconCommunity.vue" | 7 +
.../components/icons/IconDocumentation.vue" | 7 +
.../src/components/icons/IconEcosystem.vue" | 7 +
.../src/components/icons/IconSupport.vue" | 7 +
.../src/components/icons/IconTooling.vue" | 19 +
.../vueslot/src/components/left.vue" | 66 ++
.../vueslot/src/components/price.vue" | 168 ++++
.../vueslot/src/components/right.vue" | 21 +
.../4.13setup/vueslot/src/main.js" | 6 +
.../4.13setup/vueslot/vite.config.js" | 14 +
.../node_modules/.package-lock.json" | 12 +
.../node_modules/mitt/LICENSE" | 21 +
.../node_modules/mitt/README.md" | 205 +++++
.../node_modules/mitt/dist/mitt.js" | 2 +
.../node_modules/mitt/dist/mitt.js.map" | 1 +
.../node_modules/mitt/dist/mitt.mjs" | 2 +
.../node_modules/mitt/dist/mitt.mjs.map" | 1 +
.../node_modules/mitt/dist/mitt.umd.js" | 2 +
.../node_modules/mitt/dist/mitt.umd.js.map" | 1 +
.../node_modules/mitt/index.d.ts" | 21 +
.../node_modules/mitt/package.json" | 113 +++
.../vuemitt/.gitignore" | 28 +
.../vuemitt/.vscode/extensions.json" | 3 +
.../vuemitt/README.md" | 29 +
.../vuemitt/index.html" | 13 +
.../vuemitt/package-lock.json" | 756 +++++++++++++++++
.../vuemitt/package.json" | 18 +
.../vuemitt/public/favicon.ico" | Bin 0 -> 4286 bytes
.../vuemitt/src/App.vue" | 39 +
.../vuemitt/src/assets/base.css" | 74 ++
.../vuemitt/src/assets/logo.svg" | 1 +
.../vuemitt/src/assets/main.css" | 35 +
.../vuemitt/src/components/left.vue" | 80 ++
.../vuemitt/src/components/right.vue" | 57 ++
.../vuemitt/src/main.js" | 5 +
.../vuemitt/src/utils/mitt.js" | 6 +
.../vuemitt/vite.config.js" | 14 +
.../vueroute/.gitignore" | 28 +
.../vueroute/.vscode/extensions.json" | 3 +
.../vueroute/README.md" | 29 +
.../vueroute/index.html" | 13 +
.../vueroute/package-lock.json" | 773 ++++++++++++++++++
.../vueroute/package.json" | 19 +
.../vueroute/public/favicon.ico" | Bin 0 -> 4286 bytes
.../vueroute/src/App.vue" | 47 ++
.../vueroute/src/assets/base.css" | 74 ++
.../vueroute/src/assets/logo.svg" | 1 +
.../vueroute/src/assets/main.css" | 35 +
.../vueroute/src/components/car.vue" | 46 ++
.../vueroute/src/components/home.vue" | 13 +
.../vueroute/src/components/left.vue" | 98 +++
.../vueroute/src/components/price.vue" | 180 ++++
.../vueroute/src/components/right.vue" | 21 +
.../vueroute/src/main.js" | 11 +
.../vueroute/src/router/index.js" | 23 +
.../vueroute/src/router/mitt.js" | 3 +
.../vueroute/vite.config.js" | 14 +
112 files changed, 6998 insertions(+)
create mode 100644 "\351\231\210\346\242\201\346\235\260/.idea/vcs.xml"
create mode 100644 "\351\231\210\346\242\201\346\235\260/.idea/workspace.xml"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.gitignore"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.vscode/extensions.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/README.md"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/index.html"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package-lock.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/public/favicon.ico"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/App.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/base.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/logo.svg"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/main.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconCommunity.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconDocumentation.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconEcosystem.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconSupport.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconTooling.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/left.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/price.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/right.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/main.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/vite.config.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.gitignore"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.vscode/extensions.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/README.md"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/index.html"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package-lock.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/public/favicon.ico"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/App.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/base.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/logo.svg"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/main.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconCommunity.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconDocumentation.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconEcosystem.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconSupport.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconTooling.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/left.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/price.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/right.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/main.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/vite.config.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.gitignore"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.vscode/extensions.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/README.md"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/index.html"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package-lock.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/public/favicon.ico"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/App.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/base.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/logo.svg"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/main.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconCommunity.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconDocumentation.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconEcosystem.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconSupport.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconTooling.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/left.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/price.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/right.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/main.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/vite.config.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/.package-lock.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/LICENSE"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/README.md"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js.map"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs.map"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js.map"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/index.d.ts"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/package.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.gitignore"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.vscode/extensions.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/README.md"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/index.html"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package-lock.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/public/favicon.ico"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/App.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/base.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/logo.svg"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/main.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/left.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/right.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/main.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/utils/mitt.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/vite.config.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.gitignore"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.vscode/extensions.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/README.md"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/index.html"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package-lock.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package.json"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/public/favicon.ico"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/App.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/base.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/logo.svg"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/main.css"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/car.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/home.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/left.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/price.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/right.vue"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/main.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/index.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/mitt.js"
create mode 100644 "\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/vite.config.js"
diff --git "a/\351\231\210\346\242\201\346\235\260/.idea/vcs.xml" "b/\351\231\210\346\242\201\346\235\260/.idea/vcs.xml"
new file mode 100644
index 0000000..6c0b863
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/.idea/vcs.xml"
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/.idea/workspace.xml" "b/\351\231\210\346\242\201\346\235\260/.idea/workspace.xml"
new file mode 100644
index 0000000..2df8b0f
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/.idea/workspace.xml"
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1681009334072
+
+
+ 1681009334072
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.gitignore" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.gitignore"
new file mode 100644
index 0000000..38adffa
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.gitignore"
@@ -0,0 +1,28 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.vscode/extensions.json" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.vscode/extensions.json"
new file mode 100644
index 0000000..c0a6e5a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/.vscode/extensions.json"
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/README.md" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/README.md"
new file mode 100644
index 0000000..c8bf2cd
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/README.md"
@@ -0,0 +1,29 @@
+# vueslot
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vitejs.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/index.html" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/index.html"
new file mode 100644
index 0000000..99f583a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/index.html"
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Vite App
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package-lock.json" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package-lock.json"
new file mode 100644
index 0000000..7f320a1
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package-lock.json"
@@ -0,0 +1,750 @@
+{
+ "name": "vueslot",
+ "version": "0.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "vueslot",
+ "version": "0.0.0",
+ "dependencies": {
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.21.4.tgz",
+ "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==",
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.15.tgz",
+ "integrity": "sha512-sRSOVlLawAktpMvDyJIkdLI/c/kdRTOqo8t6ImVxg8yT7LQDUYV5Rp2FKeEosLr6ZCja9UjYAzyRSxGteSJPYg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.15.tgz",
+ "integrity": "sha512-0kOB6Y7Br3KDVgHeg8PRcvfLkq+AccreK///B4Z6fNZGr/tNHX0z2VywCc7PTeWp+bPvjA5WMvNXltHw5QjAIA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.15.tgz",
+ "integrity": "sha512-MzDqnNajQZ63YkaUWVl9uuhcWyEyh69HGpMIrf+acR4otMkfLJ4sUCxqwbCyPGicE9dVlrysI3lMcDBjGiBBcQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.15.tgz",
+ "integrity": "sha512-7siLjBc88Z4+6qkMDxPT2juf2e8SJxmsbNVKFY2ifWCDT72v5YJz9arlvBw5oB4W/e61H1+HDB/jnu8nNg0rLA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.15.tgz",
+ "integrity": "sha512-NbImBas2rXwYI52BOKTW342Tm3LTeVlaOQ4QPZ7XuWNKiO226DisFk/RyPk3T0CKZkKMuU69yOvlapJEmax7cg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.15.tgz",
+ "integrity": "sha512-Xk9xMDjBVG6CfgoqlVczHAdJnCs0/oeFOspFap5NkYAmRCT2qTn1vJWA2f419iMtsHSLm+O8B6SLV/HlY5cYKg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.15.tgz",
+ "integrity": "sha512-3TWAnnEOdclvb2pnfsTWtdwthPfOz7qAfcwDLcfZyGJwm1SRZIMOeB5FODVhnM93mFSPsHB9b/PmxNNbSnd0RQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.15.tgz",
+ "integrity": "sha512-MLTgiXWEMAMr8nmS9Gigx43zPRmEfeBfGCwxFQEMgJ5MC53QKajaclW6XDPjwJvhbebv+RzK05TQjvH3/aM4Xw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.15.tgz",
+ "integrity": "sha512-T0MVnYw9KT6b83/SqyznTs/3Jg2ODWrZfNccg11XjDehIved2oQfrX/wVuev9N936BpMRaTR9I1J0tdGgUgpJA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.15.tgz",
+ "integrity": "sha512-wp02sHs015T23zsQtU4Cj57WiteiuASHlD7rXjKUyAGYzlOKDAjqK6bk5dMi2QEl/KVOcsjwL36kD+WW7vJt8Q==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.15.tgz",
+ "integrity": "sha512-k7FsUJjGGSxwnBmMh8d7IbObWu+sF/qbwc+xKZkBe/lTAF16RqxRCnNHA7QTd3oS2AfGBAnHlXL67shV5bBThQ==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.15.tgz",
+ "integrity": "sha512-ZLWk6czDdog+Q9kE/Jfbilu24vEe/iW/Sj2d8EVsmiixQ1rM2RKH2n36qfxK4e8tVcaXkvuV3mU5zTZviE+NVQ==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.15.tgz",
+ "integrity": "sha512-mY6dPkIRAiFHRsGfOYZC8Q9rmr8vOBZBme0/j15zFUKM99d4ILY4WpOC7i/LqoY+RE7KaMaSfvY8CqjJtuO4xg==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.15.tgz",
+ "integrity": "sha512-EcyUtxffdDtWjjwIH8sKzpDRLcVtqANooMNASO59y+xmqqRYBBM7xVLQhqF7nksIbm2yHABptoioS9RAbVMWVA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.15.tgz",
+ "integrity": "sha512-BuS6Jx/ezxFuHxgsfvz7T4g4YlVrmCmg7UAwboeyNNg0OzNzKsIZXpr3Sb/ZREDXWgt48RO4UQRDBxJN3B9Rbg==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz",
+ "integrity": "sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.15.tgz",
+ "integrity": "sha512-R6fKjtUysYGym6uXf6qyNephVUQAGtf3n2RCsOST/neIwPqRWcnc3ogcielOd6pT+J0RDR1RGcy0ZY7d3uHVLA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.15.tgz",
+ "integrity": "sha512-mVD4PGc26b8PI60QaPUltYKeSX0wxuy0AltC+WCTFwvKCq2+OgLP4+fFd+hZXzO2xW1HPKcytZBdjqL6FQFa7w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.15.tgz",
+ "integrity": "sha512-U6tYPovOkw3459t2CBwGcFYfFRjivcJJc1WC8Q3funIwX8x4fP+R6xL/QuTPNGOblbq/EUDxj9GU+dWKX0oWlQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.15.tgz",
+ "integrity": "sha512-W+Z5F++wgKAleDABemiyXVnzXgvRFs+GVKThSI+mGgleLWluv0D7Diz4oQpgdpNzh4i2nNDzQtWbjJiqutRp6Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.15.tgz",
+ "integrity": "sha512-Muz/+uGgheShKGqSVS1KsHtCyEzcdOn/W/Xbh6H91Etm+wiIfwZaBn1W58MeGtfI8WA961YMHFYTthBdQs4t+w==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.15.tgz",
+ "integrity": "sha512-DjDa9ywLUUmjhV2Y9wUTIF+1XsmuFGvZoCmOWkli1XcNAh5t25cc7fgsCx4Zi/Uurep3TTLyDiKATgGEg61pkA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
+ "integrity": "sha512-++9JOAFdcXI3lyer9UKUV4rfoQ3T1RN8yDqoCLar86s0xQct5yblxAE+yWgRnU5/0FOlVCpTZpYSBV/bGWrSrQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^4.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.47.tgz",
+ "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz",
+ "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==",
+ "dependencies": {
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz",
+ "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/reactivity-transform": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz",
+ "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.47.tgz",
+ "integrity": "sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==",
+ "dependencies": {
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity-transform": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz",
+ "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.47.tgz",
+ "integrity": "sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==",
+ "dependencies": {
+ "@vue/reactivity": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
+ "integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
+ "dependencies": {
+ "@vue/runtime-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "csstype": "^2.6.8"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.47.tgz",
+ "integrity": "sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/shared": "3.2.47"
+ },
+ "peerDependencies": {
+ "vue": "3.2.47"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz",
+ "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
+ },
+ "node_modules/csstype": {
+ "version": "2.6.21",
+ "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
+ "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w=="
+ },
+ "node_modules/esbuild": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.17.15.tgz",
+ "integrity": "sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/android-arm": "0.17.15",
+ "@esbuild/android-arm64": "0.17.15",
+ "@esbuild/android-x64": "0.17.15",
+ "@esbuild/darwin-arm64": "0.17.15",
+ "@esbuild/darwin-x64": "0.17.15",
+ "@esbuild/freebsd-arm64": "0.17.15",
+ "@esbuild/freebsd-x64": "0.17.15",
+ "@esbuild/linux-arm": "0.17.15",
+ "@esbuild/linux-arm64": "0.17.15",
+ "@esbuild/linux-ia32": "0.17.15",
+ "@esbuild/linux-loong64": "0.17.15",
+ "@esbuild/linux-mips64el": "0.17.15",
+ "@esbuild/linux-ppc64": "0.17.15",
+ "@esbuild/linux-riscv64": "0.17.15",
+ "@esbuild/linux-s390x": "0.17.15",
+ "@esbuild/linux-x64": "0.17.15",
+ "@esbuild/netbsd-x64": "0.17.15",
+ "@esbuild/openbsd-x64": "0.17.15",
+ "@esbuild/sunos-x64": "0.17.15",
+ "@esbuild/win32-arm64": "0.17.15",
+ "@esbuild/win32-ia32": "0.17.15",
+ "@esbuild/win32-x64": "0.17.15"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz",
+ "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz",
+ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "node_modules/postcss": {
+ "version": "8.4.21",
+ "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz",
+ "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
+ "dependencies": {
+ "nanoid": "^3.3.4",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.2",
+ "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.11.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "3.20.2",
+ "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.20.2.tgz",
+ "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=14.18.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
+ "deprecated": "Please use @jridgewell/sourcemap-codec instead"
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/vite": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmmirror.com/vite/-/vite-4.2.1.tgz",
+ "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==",
+ "dev": true,
+ "dependencies": {
+ "esbuild": "^0.17.5",
+ "postcss": "^8.4.21",
+ "resolve": "^1.22.1",
+ "rollup": "^3.18.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "@types/node": ">= 14",
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.47.tgz",
+ "integrity": "sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-sfc": "3.2.47",
+ "@vue/runtime-dom": "3.2.47",
+ "@vue/server-renderer": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ }
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package.json" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package.json"
new file mode 100644
index 0000000..f3940d6
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/package.json"
@@ -0,0 +1,17 @@
+{
+ "name": "vueslot",
+ "version": "0.0.0",
+ "private": true,
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/public/favicon.ico" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/public/favicon.ico"
new file mode 100644
index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2
GIT binary patch
literal 4286
zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj
zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56
zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy
zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei
z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX
zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm
zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp=
zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8
zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO
z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3
z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD
zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6
z={Xwx{T%b6i9IjI)Ls)S{-*mq<@~R{?$}ZKjf;^k75i_}(2MXt}^SEBVg7AI@28
zo_uPg2V)_e-`2Ois=PYoe%9u*n9({PFR)OnHJPi{dNx>KxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S
literal 0
HcmV?d00001
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/App.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/App.vue"
new file mode 100644
index 0000000..a88caa3
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/App.vue"
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+ 首页
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/base.css" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/base.css"
new file mode 100644
index 0000000..71dc55a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/base.css"
@@ -0,0 +1,74 @@
+/* color palette from */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ position: relative;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition: color 0.5s, background-color 0.5s;
+ line-height: 1.6;
+ font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
+ Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/logo.svg" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/logo.svg"
new file mode 100644
index 0000000..7565660
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/logo.svg"
@@ -0,0 +1 @@
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/main.css" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/main.css"
new file mode 100644
index 0000000..43185c3
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/assets/main.css"
@@ -0,0 +1,4 @@
+*{
+ padding: 0;
+ margin: 0;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconCommunity.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconCommunity.vue"
new file mode 100644
index 0000000..2dc8b05
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconCommunity.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconDocumentation.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconDocumentation.vue"
new file mode 100644
index 0000000..6d4791c
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconDocumentation.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconEcosystem.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconEcosystem.vue"
new file mode 100644
index 0000000..c3a4f07
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconEcosystem.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconSupport.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconSupport.vue"
new file mode 100644
index 0000000..7452834
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconSupport.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconTooling.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconTooling.vue"
new file mode 100644
index 0000000..660598d
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/icons/IconTooling.vue"
@@ -0,0 +1,19 @@
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/left.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/left.vue"
new file mode 100644
index 0000000..641ab95
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/left.vue"
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/price.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/price.vue"
new file mode 100644
index 0000000..a6473ea
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/price.vue"
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+
{{ val.text }}
+
{{ val.price }}¥
+
+
+
总计:{{ name }}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/right.vue" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/right.vue"
new file mode 100644
index 0000000..b71191b
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/components/right.vue"
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/main.js" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/main.js"
new file mode 100644
index 0000000..90e6400
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/src/main.js"
@@ -0,0 +1,6 @@
+import { createApp } from 'vue'
+import App from './App.vue'
+
+import './assets/main.css'
+
+createApp(App).mount('#app')
diff --git "a/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/vite.config.js" "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/vite.config.js"
new file mode 100644
index 0000000..de5cb31
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.10\346\217\222\346\247\275/vueslot/vite.config.js"
@@ -0,0 +1,14 @@
+import { fileURLToPath, URL } from 'node:url'
+
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ plugins: [vue()],
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url))
+ }
+ }
+})
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.gitignore" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.gitignore"
new file mode 100644
index 0000000..38adffa
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.gitignore"
@@ -0,0 +1,28 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.vscode/extensions.json" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.vscode/extensions.json"
new file mode 100644
index 0000000..c0a6e5a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/.vscode/extensions.json"
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/README.md" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/README.md"
new file mode 100644
index 0000000..c8bf2cd
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/README.md"
@@ -0,0 +1,29 @@
+# vueslot
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vitejs.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/index.html" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/index.html"
new file mode 100644
index 0000000..99f583a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/index.html"
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Vite App
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package-lock.json" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package-lock.json"
new file mode 100644
index 0000000..7f320a1
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package-lock.json"
@@ -0,0 +1,750 @@
+{
+ "name": "vueslot",
+ "version": "0.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "vueslot",
+ "version": "0.0.0",
+ "dependencies": {
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.21.4.tgz",
+ "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==",
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.15.tgz",
+ "integrity": "sha512-sRSOVlLawAktpMvDyJIkdLI/c/kdRTOqo8t6ImVxg8yT7LQDUYV5Rp2FKeEosLr6ZCja9UjYAzyRSxGteSJPYg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.15.tgz",
+ "integrity": "sha512-0kOB6Y7Br3KDVgHeg8PRcvfLkq+AccreK///B4Z6fNZGr/tNHX0z2VywCc7PTeWp+bPvjA5WMvNXltHw5QjAIA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.15.tgz",
+ "integrity": "sha512-MzDqnNajQZ63YkaUWVl9uuhcWyEyh69HGpMIrf+acR4otMkfLJ4sUCxqwbCyPGicE9dVlrysI3lMcDBjGiBBcQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.15.tgz",
+ "integrity": "sha512-7siLjBc88Z4+6qkMDxPT2juf2e8SJxmsbNVKFY2ifWCDT72v5YJz9arlvBw5oB4W/e61H1+HDB/jnu8nNg0rLA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.15.tgz",
+ "integrity": "sha512-NbImBas2rXwYI52BOKTW342Tm3LTeVlaOQ4QPZ7XuWNKiO226DisFk/RyPk3T0CKZkKMuU69yOvlapJEmax7cg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.15.tgz",
+ "integrity": "sha512-Xk9xMDjBVG6CfgoqlVczHAdJnCs0/oeFOspFap5NkYAmRCT2qTn1vJWA2f419iMtsHSLm+O8B6SLV/HlY5cYKg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.15.tgz",
+ "integrity": "sha512-3TWAnnEOdclvb2pnfsTWtdwthPfOz7qAfcwDLcfZyGJwm1SRZIMOeB5FODVhnM93mFSPsHB9b/PmxNNbSnd0RQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.15.tgz",
+ "integrity": "sha512-MLTgiXWEMAMr8nmS9Gigx43zPRmEfeBfGCwxFQEMgJ5MC53QKajaclW6XDPjwJvhbebv+RzK05TQjvH3/aM4Xw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.15.tgz",
+ "integrity": "sha512-T0MVnYw9KT6b83/SqyznTs/3Jg2ODWrZfNccg11XjDehIved2oQfrX/wVuev9N936BpMRaTR9I1J0tdGgUgpJA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.15.tgz",
+ "integrity": "sha512-wp02sHs015T23zsQtU4Cj57WiteiuASHlD7rXjKUyAGYzlOKDAjqK6bk5dMi2QEl/KVOcsjwL36kD+WW7vJt8Q==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.15.tgz",
+ "integrity": "sha512-k7FsUJjGGSxwnBmMh8d7IbObWu+sF/qbwc+xKZkBe/lTAF16RqxRCnNHA7QTd3oS2AfGBAnHlXL67shV5bBThQ==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.15.tgz",
+ "integrity": "sha512-ZLWk6czDdog+Q9kE/Jfbilu24vEe/iW/Sj2d8EVsmiixQ1rM2RKH2n36qfxK4e8tVcaXkvuV3mU5zTZviE+NVQ==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.15.tgz",
+ "integrity": "sha512-mY6dPkIRAiFHRsGfOYZC8Q9rmr8vOBZBme0/j15zFUKM99d4ILY4WpOC7i/LqoY+RE7KaMaSfvY8CqjJtuO4xg==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.15.tgz",
+ "integrity": "sha512-EcyUtxffdDtWjjwIH8sKzpDRLcVtqANooMNASO59y+xmqqRYBBM7xVLQhqF7nksIbm2yHABptoioS9RAbVMWVA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.15.tgz",
+ "integrity": "sha512-BuS6Jx/ezxFuHxgsfvz7T4g4YlVrmCmg7UAwboeyNNg0OzNzKsIZXpr3Sb/ZREDXWgt48RO4UQRDBxJN3B9Rbg==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz",
+ "integrity": "sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.15.tgz",
+ "integrity": "sha512-R6fKjtUysYGym6uXf6qyNephVUQAGtf3n2RCsOST/neIwPqRWcnc3ogcielOd6pT+J0RDR1RGcy0ZY7d3uHVLA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.15.tgz",
+ "integrity": "sha512-mVD4PGc26b8PI60QaPUltYKeSX0wxuy0AltC+WCTFwvKCq2+OgLP4+fFd+hZXzO2xW1HPKcytZBdjqL6FQFa7w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.15.tgz",
+ "integrity": "sha512-U6tYPovOkw3459t2CBwGcFYfFRjivcJJc1WC8Q3funIwX8x4fP+R6xL/QuTPNGOblbq/EUDxj9GU+dWKX0oWlQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.15.tgz",
+ "integrity": "sha512-W+Z5F++wgKAleDABemiyXVnzXgvRFs+GVKThSI+mGgleLWluv0D7Diz4oQpgdpNzh4i2nNDzQtWbjJiqutRp6Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.15.tgz",
+ "integrity": "sha512-Muz/+uGgheShKGqSVS1KsHtCyEzcdOn/W/Xbh6H91Etm+wiIfwZaBn1W58MeGtfI8WA961YMHFYTthBdQs4t+w==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.15.tgz",
+ "integrity": "sha512-DjDa9ywLUUmjhV2Y9wUTIF+1XsmuFGvZoCmOWkli1XcNAh5t25cc7fgsCx4Zi/Uurep3TTLyDiKATgGEg61pkA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
+ "integrity": "sha512-++9JOAFdcXI3lyer9UKUV4rfoQ3T1RN8yDqoCLar86s0xQct5yblxAE+yWgRnU5/0FOlVCpTZpYSBV/bGWrSrQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^4.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.47.tgz",
+ "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz",
+ "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==",
+ "dependencies": {
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz",
+ "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/reactivity-transform": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz",
+ "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.47.tgz",
+ "integrity": "sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==",
+ "dependencies": {
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity-transform": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz",
+ "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.47.tgz",
+ "integrity": "sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==",
+ "dependencies": {
+ "@vue/reactivity": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
+ "integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
+ "dependencies": {
+ "@vue/runtime-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "csstype": "^2.6.8"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.47.tgz",
+ "integrity": "sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/shared": "3.2.47"
+ },
+ "peerDependencies": {
+ "vue": "3.2.47"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz",
+ "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
+ },
+ "node_modules/csstype": {
+ "version": "2.6.21",
+ "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
+ "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w=="
+ },
+ "node_modules/esbuild": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.17.15.tgz",
+ "integrity": "sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/android-arm": "0.17.15",
+ "@esbuild/android-arm64": "0.17.15",
+ "@esbuild/android-x64": "0.17.15",
+ "@esbuild/darwin-arm64": "0.17.15",
+ "@esbuild/darwin-x64": "0.17.15",
+ "@esbuild/freebsd-arm64": "0.17.15",
+ "@esbuild/freebsd-x64": "0.17.15",
+ "@esbuild/linux-arm": "0.17.15",
+ "@esbuild/linux-arm64": "0.17.15",
+ "@esbuild/linux-ia32": "0.17.15",
+ "@esbuild/linux-loong64": "0.17.15",
+ "@esbuild/linux-mips64el": "0.17.15",
+ "@esbuild/linux-ppc64": "0.17.15",
+ "@esbuild/linux-riscv64": "0.17.15",
+ "@esbuild/linux-s390x": "0.17.15",
+ "@esbuild/linux-x64": "0.17.15",
+ "@esbuild/netbsd-x64": "0.17.15",
+ "@esbuild/openbsd-x64": "0.17.15",
+ "@esbuild/sunos-x64": "0.17.15",
+ "@esbuild/win32-arm64": "0.17.15",
+ "@esbuild/win32-ia32": "0.17.15",
+ "@esbuild/win32-x64": "0.17.15"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz",
+ "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz",
+ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "node_modules/postcss": {
+ "version": "8.4.21",
+ "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz",
+ "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
+ "dependencies": {
+ "nanoid": "^3.3.4",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.2",
+ "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.11.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "3.20.2",
+ "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.20.2.tgz",
+ "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=14.18.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
+ "deprecated": "Please use @jridgewell/sourcemap-codec instead"
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/vite": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmmirror.com/vite/-/vite-4.2.1.tgz",
+ "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==",
+ "dev": true,
+ "dependencies": {
+ "esbuild": "^0.17.5",
+ "postcss": "^8.4.21",
+ "resolve": "^1.22.1",
+ "rollup": "^3.18.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "@types/node": ">= 14",
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.47.tgz",
+ "integrity": "sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-sfc": "3.2.47",
+ "@vue/runtime-dom": "3.2.47",
+ "@vue/server-renderer": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ }
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package.json" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package.json"
new file mode 100644
index 0000000..f3940d6
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/package.json"
@@ -0,0 +1,17 @@
+{
+ "name": "vueslot",
+ "version": "0.0.0",
+ "private": true,
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/public/favicon.ico" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/public/favicon.ico"
new file mode 100644
index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2
GIT binary patch
literal 4286
zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj
zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56
zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy
zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei
z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX
zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm
zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp=
zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8
zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO
z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3
z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD
zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6
z={Xwx{T%b6i9IjI)Ls)S{-*mq<@~R{?$}ZKjf;^k75i_}(2MXt}^SEBVg7AI@28
zo_uPg2V)_e-`2Ois=PYoe%9u*n9({PFR)OnHJPi{dNx>KxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S
literal 0
HcmV?d00001
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/App.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/App.vue"
new file mode 100644
index 0000000..7966275
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/App.vue"
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 首页
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/base.css" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/base.css"
new file mode 100644
index 0000000..71dc55a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/base.css"
@@ -0,0 +1,74 @@
+/* color palette from */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ position: relative;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition: color 0.5s, background-color 0.5s;
+ line-height: 1.6;
+ font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
+ Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/logo.svg" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/logo.svg"
new file mode 100644
index 0000000..7565660
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/logo.svg"
@@ -0,0 +1 @@
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/main.css" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/main.css"
new file mode 100644
index 0000000..43185c3
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/assets/main.css"
@@ -0,0 +1,4 @@
+*{
+ padding: 0;
+ margin: 0;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconCommunity.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconCommunity.vue"
new file mode 100644
index 0000000..2dc8b05
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconCommunity.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconDocumentation.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconDocumentation.vue"
new file mode 100644
index 0000000..6d4791c
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconDocumentation.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconEcosystem.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconEcosystem.vue"
new file mode 100644
index 0000000..c3a4f07
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconEcosystem.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconSupport.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconSupport.vue"
new file mode 100644
index 0000000..7452834
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconSupport.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconTooling.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconTooling.vue"
new file mode 100644
index 0000000..660598d
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/icons/IconTooling.vue"
@@ -0,0 +1,19 @@
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/left.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/left.vue"
new file mode 100644
index 0000000..0ce8644
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/left.vue"
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/price.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/price.vue"
new file mode 100644
index 0000000..a6473ea
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/price.vue"
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+
{{ val.text }}
+
{{ val.price }}¥
+
+
+
总计:{{ name }}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/right.vue" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/right.vue"
new file mode 100644
index 0000000..c396d8a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/components/right.vue"
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/main.js" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/main.js"
new file mode 100644
index 0000000..90e6400
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/src/main.js"
@@ -0,0 +1,6 @@
+import { createApp } from 'vue'
+import App from './App.vue'
+
+import './assets/main.css'
+
+createApp(App).mount('#app')
diff --git "a/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/vite.config.js" "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/vite.config.js"
new file mode 100644
index 0000000..de5cb31
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.11\346\217\222\346\247\275\344\270\213/vueslot/vite.config.js"
@@ -0,0 +1,14 @@
+import { fileURLToPath, URL } from 'node:url'
+
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ plugins: [vue()],
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url))
+ }
+ }
+})
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.gitignore" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.gitignore"
new file mode 100644
index 0000000..38adffa
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.gitignore"
@@ -0,0 +1,28 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.vscode/extensions.json" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.vscode/extensions.json"
new file mode 100644
index 0000000..c0a6e5a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/.vscode/extensions.json"
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/README.md" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/README.md"
new file mode 100644
index 0000000..c8bf2cd
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/README.md"
@@ -0,0 +1,29 @@
+# vueslot
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vitejs.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/index.html" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/index.html"
new file mode 100644
index 0000000..99f583a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/index.html"
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Vite App
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package-lock.json" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package-lock.json"
new file mode 100644
index 0000000..7f320a1
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package-lock.json"
@@ -0,0 +1,750 @@
+{
+ "name": "vueslot",
+ "version": "0.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "vueslot",
+ "version": "0.0.0",
+ "dependencies": {
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.21.4.tgz",
+ "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==",
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.15.tgz",
+ "integrity": "sha512-sRSOVlLawAktpMvDyJIkdLI/c/kdRTOqo8t6ImVxg8yT7LQDUYV5Rp2FKeEosLr6ZCja9UjYAzyRSxGteSJPYg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.15.tgz",
+ "integrity": "sha512-0kOB6Y7Br3KDVgHeg8PRcvfLkq+AccreK///B4Z6fNZGr/tNHX0z2VywCc7PTeWp+bPvjA5WMvNXltHw5QjAIA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.15.tgz",
+ "integrity": "sha512-MzDqnNajQZ63YkaUWVl9uuhcWyEyh69HGpMIrf+acR4otMkfLJ4sUCxqwbCyPGicE9dVlrysI3lMcDBjGiBBcQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.15.tgz",
+ "integrity": "sha512-7siLjBc88Z4+6qkMDxPT2juf2e8SJxmsbNVKFY2ifWCDT72v5YJz9arlvBw5oB4W/e61H1+HDB/jnu8nNg0rLA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.15.tgz",
+ "integrity": "sha512-NbImBas2rXwYI52BOKTW342Tm3LTeVlaOQ4QPZ7XuWNKiO226DisFk/RyPk3T0CKZkKMuU69yOvlapJEmax7cg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.15.tgz",
+ "integrity": "sha512-Xk9xMDjBVG6CfgoqlVczHAdJnCs0/oeFOspFap5NkYAmRCT2qTn1vJWA2f419iMtsHSLm+O8B6SLV/HlY5cYKg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.15.tgz",
+ "integrity": "sha512-3TWAnnEOdclvb2pnfsTWtdwthPfOz7qAfcwDLcfZyGJwm1SRZIMOeB5FODVhnM93mFSPsHB9b/PmxNNbSnd0RQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.15.tgz",
+ "integrity": "sha512-MLTgiXWEMAMr8nmS9Gigx43zPRmEfeBfGCwxFQEMgJ5MC53QKajaclW6XDPjwJvhbebv+RzK05TQjvH3/aM4Xw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.15.tgz",
+ "integrity": "sha512-T0MVnYw9KT6b83/SqyznTs/3Jg2ODWrZfNccg11XjDehIved2oQfrX/wVuev9N936BpMRaTR9I1J0tdGgUgpJA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.15.tgz",
+ "integrity": "sha512-wp02sHs015T23zsQtU4Cj57WiteiuASHlD7rXjKUyAGYzlOKDAjqK6bk5dMi2QEl/KVOcsjwL36kD+WW7vJt8Q==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.15.tgz",
+ "integrity": "sha512-k7FsUJjGGSxwnBmMh8d7IbObWu+sF/qbwc+xKZkBe/lTAF16RqxRCnNHA7QTd3oS2AfGBAnHlXL67shV5bBThQ==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.15.tgz",
+ "integrity": "sha512-ZLWk6czDdog+Q9kE/Jfbilu24vEe/iW/Sj2d8EVsmiixQ1rM2RKH2n36qfxK4e8tVcaXkvuV3mU5zTZviE+NVQ==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.15.tgz",
+ "integrity": "sha512-mY6dPkIRAiFHRsGfOYZC8Q9rmr8vOBZBme0/j15zFUKM99d4ILY4WpOC7i/LqoY+RE7KaMaSfvY8CqjJtuO4xg==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.15.tgz",
+ "integrity": "sha512-EcyUtxffdDtWjjwIH8sKzpDRLcVtqANooMNASO59y+xmqqRYBBM7xVLQhqF7nksIbm2yHABptoioS9RAbVMWVA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.15.tgz",
+ "integrity": "sha512-BuS6Jx/ezxFuHxgsfvz7T4g4YlVrmCmg7UAwboeyNNg0OzNzKsIZXpr3Sb/ZREDXWgt48RO4UQRDBxJN3B9Rbg==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.15.tgz",
+ "integrity": "sha512-JsdS0EgEViwuKsw5tiJQo9UdQdUJYuB+Mf6HxtJSPN35vez1hlrNb1KajvKWF5Sa35j17+rW1ECEO9iNrIXbNg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.15.tgz",
+ "integrity": "sha512-R6fKjtUysYGym6uXf6qyNephVUQAGtf3n2RCsOST/neIwPqRWcnc3ogcielOd6pT+J0RDR1RGcy0ZY7d3uHVLA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.15.tgz",
+ "integrity": "sha512-mVD4PGc26b8PI60QaPUltYKeSX0wxuy0AltC+WCTFwvKCq2+OgLP4+fFd+hZXzO2xW1HPKcytZBdjqL6FQFa7w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.15.tgz",
+ "integrity": "sha512-U6tYPovOkw3459t2CBwGcFYfFRjivcJJc1WC8Q3funIwX8x4fP+R6xL/QuTPNGOblbq/EUDxj9GU+dWKX0oWlQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.15.tgz",
+ "integrity": "sha512-W+Z5F++wgKAleDABemiyXVnzXgvRFs+GVKThSI+mGgleLWluv0D7Diz4oQpgdpNzh4i2nNDzQtWbjJiqutRp6Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.15.tgz",
+ "integrity": "sha512-Muz/+uGgheShKGqSVS1KsHtCyEzcdOn/W/Xbh6H91Etm+wiIfwZaBn1W58MeGtfI8WA961YMHFYTthBdQs4t+w==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.15.tgz",
+ "integrity": "sha512-DjDa9ywLUUmjhV2Y9wUTIF+1XsmuFGvZoCmOWkli1XcNAh5t25cc7fgsCx4Zi/Uurep3TTLyDiKATgGEg61pkA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
+ "integrity": "sha512-++9JOAFdcXI3lyer9UKUV4rfoQ3T1RN8yDqoCLar86s0xQct5yblxAE+yWgRnU5/0FOlVCpTZpYSBV/bGWrSrQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^4.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.47.tgz",
+ "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz",
+ "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==",
+ "dependencies": {
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz",
+ "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/reactivity-transform": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz",
+ "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.47.tgz",
+ "integrity": "sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==",
+ "dependencies": {
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity-transform": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz",
+ "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.47.tgz",
+ "integrity": "sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==",
+ "dependencies": {
+ "@vue/reactivity": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
+ "integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
+ "dependencies": {
+ "@vue/runtime-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "csstype": "^2.6.8"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.47.tgz",
+ "integrity": "sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/shared": "3.2.47"
+ },
+ "peerDependencies": {
+ "vue": "3.2.47"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz",
+ "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
+ },
+ "node_modules/csstype": {
+ "version": "2.6.21",
+ "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
+ "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w=="
+ },
+ "node_modules/esbuild": {
+ "version": "0.17.15",
+ "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.17.15.tgz",
+ "integrity": "sha512-LBUV2VsUIc/iD9ME75qhT4aJj0r75abCVS0jakhFzOtR7TQsqQA5w0tZ+KTKnwl3kXE0MhskNdHDh/I5aCR1Zw==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/android-arm": "0.17.15",
+ "@esbuild/android-arm64": "0.17.15",
+ "@esbuild/android-x64": "0.17.15",
+ "@esbuild/darwin-arm64": "0.17.15",
+ "@esbuild/darwin-x64": "0.17.15",
+ "@esbuild/freebsd-arm64": "0.17.15",
+ "@esbuild/freebsd-x64": "0.17.15",
+ "@esbuild/linux-arm": "0.17.15",
+ "@esbuild/linux-arm64": "0.17.15",
+ "@esbuild/linux-ia32": "0.17.15",
+ "@esbuild/linux-loong64": "0.17.15",
+ "@esbuild/linux-mips64el": "0.17.15",
+ "@esbuild/linux-ppc64": "0.17.15",
+ "@esbuild/linux-riscv64": "0.17.15",
+ "@esbuild/linux-s390x": "0.17.15",
+ "@esbuild/linux-x64": "0.17.15",
+ "@esbuild/netbsd-x64": "0.17.15",
+ "@esbuild/openbsd-x64": "0.17.15",
+ "@esbuild/sunos-x64": "0.17.15",
+ "@esbuild/win32-arm64": "0.17.15",
+ "@esbuild/win32-ia32": "0.17.15",
+ "@esbuild/win32-x64": "0.17.15"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.11.0",
+ "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz",
+ "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz",
+ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "node_modules/postcss": {
+ "version": "8.4.21",
+ "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz",
+ "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
+ "dependencies": {
+ "nanoid": "^3.3.4",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.2",
+ "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.11.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "3.20.2",
+ "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.20.2.tgz",
+ "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=14.18.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
+ "deprecated": "Please use @jridgewell/sourcemap-codec instead"
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/vite": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmmirror.com/vite/-/vite-4.2.1.tgz",
+ "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==",
+ "dev": true,
+ "dependencies": {
+ "esbuild": "^0.17.5",
+ "postcss": "^8.4.21",
+ "resolve": "^1.22.1",
+ "rollup": "^3.18.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "@types/node": ">= 14",
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.47.tgz",
+ "integrity": "sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-sfc": "3.2.47",
+ "@vue/runtime-dom": "3.2.47",
+ "@vue/server-renderer": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ }
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package.json" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package.json"
new file mode 100644
index 0000000..f3940d6
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/package.json"
@@ -0,0 +1,17 @@
+{
+ "name": "vueslot",
+ "version": "0.0.0",
+ "private": true,
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/public/favicon.ico" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/public/favicon.ico"
new file mode 100644
index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2
GIT binary patch
literal 4286
zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj
zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56
zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy
zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei
z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX
zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm
zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp=
zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8
zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO
z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3
z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD
zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6
z={Xwx{T%b6i9IjI)Ls)S{-*mq<@~R{?$}ZKjf;^k75i_}(2MXt}^SEBVg7AI@28
zo_uPg2V)_e-`2Ois=PYoe%9u*n9({PFR)OnHJPi{dNx>KxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S
literal 0
HcmV?d00001
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/App.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/App.vue"
new file mode 100644
index 0000000..606e0b8
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/App.vue"
@@ -0,0 +1,94 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 首页
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/base.css" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/base.css"
new file mode 100644
index 0000000..71dc55a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/base.css"
@@ -0,0 +1,74 @@
+/* color palette from */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ position: relative;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition: color 0.5s, background-color 0.5s;
+ line-height: 1.6;
+ font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
+ Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/logo.svg" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/logo.svg"
new file mode 100644
index 0000000..7565660
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/logo.svg"
@@ -0,0 +1 @@
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/main.css" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/main.css"
new file mode 100644
index 0000000..43185c3
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/assets/main.css"
@@ -0,0 +1,4 @@
+*{
+ padding: 0;
+ margin: 0;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconCommunity.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconCommunity.vue"
new file mode 100644
index 0000000..2dc8b05
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconCommunity.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconDocumentation.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconDocumentation.vue"
new file mode 100644
index 0000000..6d4791c
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconDocumentation.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconEcosystem.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconEcosystem.vue"
new file mode 100644
index 0000000..c3a4f07
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconEcosystem.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconSupport.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconSupport.vue"
new file mode 100644
index 0000000..7452834
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconSupport.vue"
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconTooling.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconTooling.vue"
new file mode 100644
index 0000000..660598d
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/icons/IconTooling.vue"
@@ -0,0 +1,19 @@
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/left.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/left.vue"
new file mode 100644
index 0000000..0ce8644
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/left.vue"
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/price.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/price.vue"
new file mode 100644
index 0000000..a6473ea
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/price.vue"
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+
{{ val.text }}
+
{{ val.price }}¥
+
+
+
总计:{{ name }}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/right.vue" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/right.vue"
new file mode 100644
index 0000000..c396d8a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/components/right.vue"
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/main.js" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/main.js"
new file mode 100644
index 0000000..90e6400
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/src/main.js"
@@ -0,0 +1,6 @@
+import { createApp } from 'vue'
+import App from './App.vue'
+
+import './assets/main.css'
+
+createApp(App).mount('#app')
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/vite.config.js" "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/vite.config.js"
new file mode 100644
index 0000000..de5cb31
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13setup/vueslot/vite.config.js"
@@ -0,0 +1,14 @@
+import { fileURLToPath, URL } from 'node:url'
+
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ plugins: [vue()],
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url))
+ }
+ }
+})
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/.package-lock.json" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/.package-lock.json"
new file mode 100644
index 0000000..5f15701
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/.package-lock.json"
@@ -0,0 +1,12 @@
+{
+ "name": "4.13全局事件总线",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "node_modules/mitt": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/mitt/-/mitt-3.0.0.tgz",
+ "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ=="
+ }
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/LICENSE" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/LICENSE"
new file mode 100644
index 0000000..84c52fe
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/LICENSE"
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2021 Jason Miller
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/README.md" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/README.md"
new file mode 100644
index 0000000..0219f3a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/README.md"
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+# Mitt
+
+> Tiny 200b functional event emitter / pubsub.
+
+- **Microscopic:** weighs less than 200 bytes gzipped
+- **Useful:** a wildcard `"*"` event type listens to all events
+- **Familiar:** same names & ideas as [Node's EventEmitter](https://nodejs.org/api/events.html#events_class_eventemitter)
+- **Functional:** methods don't rely on `this`
+- **Great Name:** somehow [mitt](https://npm.im/mitt) wasn't taken
+
+Mitt was made for the browser, but works in any JavaScript runtime. It has no dependencies and supports IE9+.
+
+## Table of Contents
+
+- [Install](#install)
+- [Usage](#usage)
+- [Examples & Demos](#examples--demos)
+- [API](#api)
+- [Contribute](#contribute)
+- [License](#license)
+
+## Install
+
+This project uses [node](http://nodejs.org) and [npm](https://npmjs.com). Go check them out if you don't have them locally installed.
+
+```sh
+$ npm install --save mitt
+```
+
+Then with a module bundler like [rollup](http://rollupjs.org/) or [webpack](https://webpack.js.org/), use as you would anything else:
+
+```javascript
+// using ES6 modules
+import mitt from 'mitt'
+
+// using CommonJS modules
+var mitt = require('mitt')
+```
+
+The [UMD](https://github.com/umdjs/umd) build is also available on [unpkg](https://unpkg.com):
+
+```html
+
+```
+
+You can find the library on `window.mitt`.
+
+## Usage
+
+```js
+import mitt from 'mitt'
+
+const emitter = mitt()
+
+// listen to an event
+emitter.on('foo', e => console.log('foo', e) )
+
+// listen to all events
+emitter.on('*', (type, e) => console.log(type, e) )
+
+// fire an event
+emitter.emit('foo', { a: 'b' })
+
+// clearing all events
+emitter.all.clear()
+
+// working with handler references:
+function onFoo() {}
+emitter.on('foo', onFoo) // listen
+emitter.off('foo', onFoo) // unlisten
+```
+
+### Typescript
+
+Set `"strict": true` in your tsconfig.json to get improved type inference for `mitt` instance methods.
+
+```ts
+import mitt from 'mitt';
+
+type Events = {
+ foo: string;
+ bar?: number;
+};
+
+const emitter = mitt(); // inferred as Emitter
+
+emitter.on('foo', (e) => {}); // 'e' has inferred type 'string'
+
+emitter.emit('foo', 42); // Error: Argument of type 'number' is not assignable to parameter of type 'string'. (2345)
+```
+
+Alternatively, you can use the provided `Emitter` type:
+
+```ts
+import mitt, { Emitter } from 'mitt';
+
+type Events = {
+ foo: string;
+ bar?: number;
+};
+
+const emitter: Emitter = mitt();
+```
+
+## Examples & Demos
+
+
+ Preact + Mitt Codepen Demo
+
+
+
+
+* * *
+
+## API
+
+
+
+#### Table of Contents
+
+- [mitt](#mitt)
+- [all](#all)
+- [on](#on)
+ - [Parameters](#parameters)
+- [off](#off)
+ - [Parameters](#parameters-1)
+- [emit](#emit)
+ - [Parameters](#parameters-2)
+
+### mitt
+
+Mitt: Tiny (~200b) functional event emitter / pubsub.
+
+Returns **Mitt**
+
+### all
+
+A Map of event names to registered handler functions.
+
+### on
+
+Register an event handler for the given type.
+
+#### Parameters
+
+- `type` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [symbol](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Symbol))** Type of event to listen for, or `'*'` for all events
+- `handler` **[Function](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function)** Function to call in response to given event
+
+### off
+
+Remove an event handler for the given type.
+If `handler` is omitted, all handlers of the given type are removed.
+
+#### Parameters
+
+- `type` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [symbol](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Symbol))** Type of event to unregister `handler` from, or `'*'`
+- `handler` **[Function](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function)?** Handler function to remove
+
+### emit
+
+Invoke all handlers for the given type.
+If present, `'*'` handlers are invoked after type-matched handlers.
+
+Note: Manually firing '\*' handlers is not supported.
+
+#### Parameters
+
+- `type` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \| [symbol](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Symbol))** The event type to invoke
+- `evt` **Any?** Any value (object is recommended and powerful), passed to each handler
+
+## Contribute
+
+First off, thanks for taking the time to contribute!
+Now, take a moment to be sure your contributions make sense to everyone else.
+
+### Reporting Issues
+
+Found a problem? Want a new feature? First of all see if your issue or idea has [already been reported](../../issues).
+If don't, just open a [new clear and descriptive issue](../../issues/new).
+
+### Submitting pull requests
+
+Pull requests are the greatest contributions, so be sure they are focused in scope, and do avoid unrelated commits.
+
+- Fork it!
+- Clone your fork: `git clone https://github.com//mitt`
+- Navigate to the newly cloned directory: `cd mitt`
+- Create a new branch for the new feature: `git checkout -b my-new-feature`
+- Install the tools necessary for development: `npm install`
+- Make your changes.
+- Commit your changes: `git commit -am 'Add some feature'`
+- Push to the branch: `git push origin my-new-feature`
+- Submit a pull request with full remarks documenting your changes.
+
+## License
+
+[MIT License](https://opensource.org/licenses/MIT) © [Jason Miller](https://jasonformat.com/)
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js"
new file mode 100644
index 0000000..b30a31a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js"
@@ -0,0 +1,2 @@
+module.exports=function(n){return{all:n=n||new Map,on:function(e,t){var i=n.get(e);i?i.push(t):n.set(e,[t])},off:function(e,t){var i=n.get(e);i&&(t?i.splice(i.indexOf(t)>>>0,1):n.set(e,[]))},emit:function(e,t){var i=n.get(e);i&&i.slice().map(function(n){n(t)}),(i=n.get("*"))&&i.slice().map(function(n){n(e,t)})}}};
+//# sourceMappingURL=mitt.js.map
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js.map" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js.map"
new file mode 100644
index 0000000..340dd06
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.js.map"
@@ -0,0 +1 @@
+{"version":3,"file":"mitt.js","sources":["../src/index.ts"],"sourcesContent":["export type EventType = string | symbol;\n\n// An event handler can take an optional event argument\n// and should not return a value\nexport type Handler = (event: T) => void;\nexport type WildcardHandler> = (\n\ttype: keyof T,\n\tevent: T[keyof T]\n) => void;\n\n// An array of all currently registered event handlers for a type\nexport type EventHandlerList = Array>;\nexport type WildCardEventHandlerList> = Array>;\n\n// A map of event types and their corresponding event handlers.\nexport type EventHandlerMap> = Map<\n\tkeyof Events | '*',\n\tEventHandlerList | WildCardEventHandlerList\n>;\n\nexport interface Emitter> {\n\tall: EventHandlerMap;\n\n\ton(type: Key, handler: Handler): void;\n\ton(type: '*', handler: WildcardHandler): void;\n\n\toff(type: Key, handler?: Handler): void;\n\toff(type: '*', handler: WildcardHandler): void;\n\n\temit(type: Key, event: Events[Key]): void;\n\temit(type: undefined extends Events[Key] ? Key : never): void;\n}\n\n/**\n * Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nexport default function mitt>(\n\tall?: EventHandlerMap\n): Emitter {\n\ttype GenericEventHandler =\n\t\t| Handler\n\t\t| WildcardHandler;\n\tall = all || new Map();\n\n\treturn {\n\n\t\t/**\n\t\t * A Map of event names to registered handler functions.\n\t\t */\n\t\tall,\n\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t * @param {string|symbol} type Type of event to listen for, or `'*'` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton(type: Key, handler: GenericEventHandler) {\n\t\t\tconst handlers: Array | undefined = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\thandlers.push(handler);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tall!.set(type, [handler] as EventHandlerList);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t * If `handler` is omitted, all handlers of the given type are removed.\n\t\t * @param {string|symbol} type Type of event to unregister `handler` from, or `'*'`\n\t\t * @param {Function} [handler] Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff(type: Key, handler?: GenericEventHandler) {\n\t\t\tconst handlers: Array | undefined = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\tif (handler) {\n\t\t\t\t\thandlers.splice(handlers.indexOf(handler) >>> 0, 1);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tall!.set(type, []);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `'*'` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * Note: Manually firing '*' handlers is not supported.\n\t\t *\n\t\t * @param {string|symbol} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit(type: Key, evt?: Events[Key]) {\n\t\t\tlet handlers = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\t(handlers as EventHandlerList)\n\t\t\t\t\t.slice()\n\t\t\t\t\t.map((handler) => {\n\t\t\t\t\t\thandler(evt!);\n\t\t\t\t\t});\n\t\t\t}\n\n\t\t\thandlers = all!.get('*');\n\t\t\tif (handlers) {\n\t\t\t\t(handlers as WildCardEventHandlerList)\n\t\t\t\t\t.slice()\n\t\t\t\t\t.map((handler) => {\n\t\t\t\t\t\thandler(type, evt!);\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n}\n"],"names":["all","Map","on","type","handler","handlers","get","push","set","off","splice","indexOf","emit","evt","slice","map"],"mappings":"wBAuCCA,GAOA,MAAO,CAKNA,IAPDA,EAAMA,GAAO,IAAIC,IAehBC,YAA6BC,EAAWC,GACvC,IAAMC,EAAmDL,EAAKM,IAAIH,GAC9DE,EACHA,EAASE,KAAKH,GAGdJ,EAAKQ,IAAIL,EAAM,CAACC,KAWlBK,aAA8BN,EAAWC,GACxC,IAAMC,EAAmDL,EAAKM,IAAIH,GAC9DE,IACCD,EACHC,EAASK,OAAOL,EAASM,QAAQP,KAAa,EAAG,GAGjDJ,EAAKQ,IAAIL,EAAM,MAelBS,cAA+BT,EAAWU,GACzC,IAAIR,EAAWL,EAAKM,IAAIH,GACpBE,GACFA,EACCS,QACAC,IAAI,SAACX,GACLA,EAAQS,MAIXR,EAAWL,EAAKM,IAAI,OAElBD,EACCS,QACAC,IAAI,SAACX,GACLA,EAAQD,EAAMU"}
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs"
new file mode 100644
index 0000000..5a2e73a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs"
@@ -0,0 +1,2 @@
+export default function(n){return{all:n=n||new Map,on:function(t,e){var i=n.get(t);i?i.push(e):n.set(t,[e])},off:function(t,e){var i=n.get(t);i&&(e?i.splice(i.indexOf(e)>>>0,1):n.set(t,[]))},emit:function(t,e){var i=n.get(t);i&&i.slice().map(function(n){n(e)}),(i=n.get("*"))&&i.slice().map(function(n){n(t,e)})}}}
+//# sourceMappingURL=mitt.mjs.map
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs.map" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs.map"
new file mode 100644
index 0000000..dc7fb5f
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.mjs.map"
@@ -0,0 +1 @@
+{"version":3,"file":"mitt.mjs","sources":["../src/index.ts"],"sourcesContent":["export type EventType = string | symbol;\n\n// An event handler can take an optional event argument\n// and should not return a value\nexport type Handler = (event: T) => void;\nexport type WildcardHandler> = (\n\ttype: keyof T,\n\tevent: T[keyof T]\n) => void;\n\n// An array of all currently registered event handlers for a type\nexport type EventHandlerList = Array>;\nexport type WildCardEventHandlerList> = Array>;\n\n// A map of event types and their corresponding event handlers.\nexport type EventHandlerMap> = Map<\n\tkeyof Events | '*',\n\tEventHandlerList | WildCardEventHandlerList\n>;\n\nexport interface Emitter> {\n\tall: EventHandlerMap;\n\n\ton(type: Key, handler: Handler): void;\n\ton(type: '*', handler: WildcardHandler): void;\n\n\toff(type: Key, handler?: Handler): void;\n\toff(type: '*', handler: WildcardHandler): void;\n\n\temit(type: Key, event: Events[Key]): void;\n\temit(type: undefined extends Events[Key] ? Key : never): void;\n}\n\n/**\n * Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nexport default function mitt>(\n\tall?: EventHandlerMap\n): Emitter {\n\ttype GenericEventHandler =\n\t\t| Handler\n\t\t| WildcardHandler;\n\tall = all || new Map();\n\n\treturn {\n\n\t\t/**\n\t\t * A Map of event names to registered handler functions.\n\t\t */\n\t\tall,\n\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t * @param {string|symbol} type Type of event to listen for, or `'*'` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton(type: Key, handler: GenericEventHandler) {\n\t\t\tconst handlers: Array | undefined = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\thandlers.push(handler);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tall!.set(type, [handler] as EventHandlerList);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t * If `handler` is omitted, all handlers of the given type are removed.\n\t\t * @param {string|symbol} type Type of event to unregister `handler` from, or `'*'`\n\t\t * @param {Function} [handler] Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff(type: Key, handler?: GenericEventHandler) {\n\t\t\tconst handlers: Array | undefined = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\tif (handler) {\n\t\t\t\t\thandlers.splice(handlers.indexOf(handler) >>> 0, 1);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tall!.set(type, []);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `'*'` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * Note: Manually firing '*' handlers is not supported.\n\t\t *\n\t\t * @param {string|symbol} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit(type: Key, evt?: Events[Key]) {\n\t\t\tlet handlers = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\t(handlers as EventHandlerList)\n\t\t\t\t\t.slice()\n\t\t\t\t\t.map((handler) => {\n\t\t\t\t\t\thandler(evt!);\n\t\t\t\t\t});\n\t\t\t}\n\n\t\t\thandlers = all!.get('*');\n\t\t\tif (handlers) {\n\t\t\t\t(handlers as WildCardEventHandlerList)\n\t\t\t\t\t.slice()\n\t\t\t\t\t.map((handler) => {\n\t\t\t\t\t\thandler(type, evt!);\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n}\n"],"names":["all","Map","on","type","handler","handlers","get","push","set","off","splice","indexOf","emit","evt","slice","map"],"mappings":"wBAuCCA,GAOA,MAAO,CAKNA,IAPDA,EAAMA,GAAO,IAAIC,IAehBC,YAA6BC,EAAWC,GACvC,IAAMC,EAAmDL,EAAKM,IAAIH,GAC9DE,EACHA,EAASE,KAAKH,GAGdJ,EAAKQ,IAAIL,EAAM,CAACC,KAWlBK,aAA8BN,EAAWC,GACxC,IAAMC,EAAmDL,EAAKM,IAAIH,GAC9DE,IACCD,EACHC,EAASK,OAAOL,EAASM,QAAQP,KAAa,EAAG,GAGjDJ,EAAKQ,IAAIL,EAAM,MAelBS,cAA+BT,EAAWU,GACzC,IAAIR,EAAWL,EAAKM,IAAIH,GACpBE,GACFA,EACCS,QACAC,IAAI,SAACX,GACLA,EAAQS,MAIXR,EAAWL,EAAKM,IAAI,OAElBD,EACCS,QACAC,IAAI,SAACX,GACLA,EAAQD,EAAMU"}
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js"
new file mode 100644
index 0000000..6820e65
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js"
@@ -0,0 +1,2 @@
+!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e=e||self).mitt=n()}(this,function(){return function(e){return{all:e=e||new Map,on:function(n,t){var f=e.get(n);f?f.push(t):e.set(n,[t])},off:function(n,t){var f=e.get(n);f&&(t?f.splice(f.indexOf(t)>>>0,1):e.set(n,[]))},emit:function(n,t){var f=e.get(n);f&&f.slice().map(function(e){e(t)}),(f=e.get("*"))&&f.slice().map(function(e){e(n,t)})}}}});
+//# sourceMappingURL=mitt.umd.js.map
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js.map" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js.map"
new file mode 100644
index 0000000..61a1d21
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/dist/mitt.umd.js.map"
@@ -0,0 +1 @@
+{"version":3,"file":"mitt.umd.js","sources":["../src/index.ts"],"sourcesContent":["export type EventType = string | symbol;\n\n// An event handler can take an optional event argument\n// and should not return a value\nexport type Handler = (event: T) => void;\nexport type WildcardHandler> = (\n\ttype: keyof T,\n\tevent: T[keyof T]\n) => void;\n\n// An array of all currently registered event handlers for a type\nexport type EventHandlerList = Array>;\nexport type WildCardEventHandlerList> = Array>;\n\n// A map of event types and their corresponding event handlers.\nexport type EventHandlerMap> = Map<\n\tkeyof Events | '*',\n\tEventHandlerList | WildCardEventHandlerList\n>;\n\nexport interface Emitter> {\n\tall: EventHandlerMap;\n\n\ton(type: Key, handler: Handler): void;\n\ton(type: '*', handler: WildcardHandler): void;\n\n\toff(type: Key, handler?: Handler): void;\n\toff(type: '*', handler: WildcardHandler): void;\n\n\temit(type: Key, event: Events[Key]): void;\n\temit(type: undefined extends Events[Key] ? Key : never): void;\n}\n\n/**\n * Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nexport default function mitt>(\n\tall?: EventHandlerMap\n): Emitter {\n\ttype GenericEventHandler =\n\t\t| Handler\n\t\t| WildcardHandler;\n\tall = all || new Map();\n\n\treturn {\n\n\t\t/**\n\t\t * A Map of event names to registered handler functions.\n\t\t */\n\t\tall,\n\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t * @param {string|symbol} type Type of event to listen for, or `'*'` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton(type: Key, handler: GenericEventHandler) {\n\t\t\tconst handlers: Array | undefined = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\thandlers.push(handler);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tall!.set(type, [handler] as EventHandlerList);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t * If `handler` is omitted, all handlers of the given type are removed.\n\t\t * @param {string|symbol} type Type of event to unregister `handler` from, or `'*'`\n\t\t * @param {Function} [handler] Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff(type: Key, handler?: GenericEventHandler) {\n\t\t\tconst handlers: Array | undefined = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\tif (handler) {\n\t\t\t\t\thandlers.splice(handlers.indexOf(handler) >>> 0, 1);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tall!.set(type, []);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `'*'` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * Note: Manually firing '*' handlers is not supported.\n\t\t *\n\t\t * @param {string|symbol} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit(type: Key, evt?: Events[Key]) {\n\t\t\tlet handlers = all!.get(type);\n\t\t\tif (handlers) {\n\t\t\t\t(handlers as EventHandlerList)\n\t\t\t\t\t.slice()\n\t\t\t\t\t.map((handler) => {\n\t\t\t\t\t\thandler(evt!);\n\t\t\t\t\t});\n\t\t\t}\n\n\t\t\thandlers = all!.get('*');\n\t\t\tif (handlers) {\n\t\t\t\t(handlers as WildCardEventHandlerList)\n\t\t\t\t\t.slice()\n\t\t\t\t\t.map((handler) => {\n\t\t\t\t\t\thandler(type, evt!);\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n}\n"],"names":["all","Map","on","type","handler","handlers","get","push","set","off","splice","indexOf","emit","evt","slice","map"],"mappings":"6LAuCCA,GAOA,MAAO,CAKNA,IAPDA,EAAMA,GAAO,IAAIC,IAehBC,YAA6BC,EAAWC,GACvC,IAAMC,EAAmDL,EAAKM,IAAIH,GAC9DE,EACHA,EAASE,KAAKH,GAGdJ,EAAKQ,IAAIL,EAAM,CAACC,KAWlBK,aAA8BN,EAAWC,GACxC,IAAMC,EAAmDL,EAAKM,IAAIH,GAC9DE,IACCD,EACHC,EAASK,OAAOL,EAASM,QAAQP,KAAa,EAAG,GAGjDJ,EAAKQ,IAAIL,EAAM,MAelBS,cAA+BT,EAAWU,GACzC,IAAIR,EAAWL,EAAKM,IAAIH,GACpBE,GACFA,EACCS,QACAC,IAAI,SAACX,GACLA,EAAQS,MAIXR,EAAWL,EAAKM,IAAI,OAElBD,EACCS,QACAC,IAAI,SAACX,GACLA,EAAQD,EAAMU"}
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/index.d.ts" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/index.d.ts"
new file mode 100644
index 0000000..37b63e2
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/index.d.ts"
@@ -0,0 +1,21 @@
+export declare type EventType = string | symbol;
+export declare type Handler = (event: T) => void;
+export declare type WildcardHandler> = (type: keyof T, event: T[keyof T]) => void;
+export declare type EventHandlerList = Array>;
+export declare type WildCardEventHandlerList> = Array>;
+export declare type EventHandlerMap> = Map | WildCardEventHandlerList>;
+export interface Emitter> {
+ all: EventHandlerMap;
+ on(type: Key, handler: Handler): void;
+ on(type: '*', handler: WildcardHandler): void;
+ off(type: Key, handler?: Handler): void;
+ off(type: '*', handler: WildcardHandler): void;
+ emit(type: Key, event: Events[Key]): void;
+ emit(type: undefined extends Events[Key] ? Key : never): void;
+}
+/**
+ * Mitt: Tiny (~200b) functional event emitter / pubsub.
+ * @name mitt
+ * @returns {Mitt}
+ */
+export default function mitt>(all?: EventHandlerMap): Emitter;
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/package.json" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/package.json"
new file mode 100644
index 0000000..ad38c7b
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/node_modules/mitt/package.json"
@@ -0,0 +1,113 @@
+{
+ "name": "mitt",
+ "version": "3.0.0",
+ "description": "Tiny 200b functional Event Emitter / pubsub.",
+ "module": "dist/mitt.mjs",
+ "main": "dist/mitt.js",
+ "jsnext:main": "dist/mitt.mjs",
+ "umd:main": "dist/mitt.umd.js",
+ "source": "src/index.ts",
+ "typings": "index.d.ts",
+ "exports": {
+ "import": "./dist/mitt.mjs",
+ "require": "./dist/mitt.js",
+ "default": "./dist/mitt.mjs"
+ },
+ "scripts": {
+ "test": "npm-run-all --silent typecheck lint mocha test-types",
+ "mocha": "mocha test",
+ "test-types": "tsc test/test-types-compilation.ts --noEmit --strict",
+ "lint": "eslint src test --ext ts --ext js",
+ "typecheck": "tsc --noEmit",
+ "bundle": "microbundle -f es,cjs,umd",
+ "build": "npm-run-all --silent clean -p bundle -s docs",
+ "clean": "rimraf dist",
+ "docs": "documentation readme src/index.ts --section API -q --parse-extension ts",
+ "release": "npm run -s build -s && npm t && git commit -am $npm_package_version && git tag $npm_package_version && git push && git push --tags && npm publish"
+ },
+ "repository": "developit/mitt",
+ "keywords": [
+ "events",
+ "eventemitter",
+ "emitter",
+ "pubsub"
+ ],
+ "homepage": "https://github.com/developit/mitt",
+ "authors": [
+ "Jason Miller "
+ ],
+ "license": "MIT",
+ "files": [
+ "dist",
+ "index.d.ts"
+ ],
+ "mocha": {
+ "extension": [
+ "ts"
+ ],
+ "require": [
+ "ts-node/register",
+ "esm"
+ ],
+ "spec": [
+ "test/*_test.ts"
+ ]
+ },
+ "eslintConfig": {
+ "extends": [
+ "developit",
+ "plugin:@typescript-eslint/eslint-recommended",
+ "plugin:@typescript-eslint/recommended"
+ ],
+ "parser": "@typescript-eslint/parser",
+ "parserOptions": {
+ "sourceType": "module"
+ },
+ "env": {
+ "browser": true,
+ "mocha": true,
+ "jest": false,
+ "es6": true
+ },
+ "globals": {
+ "expect": true
+ },
+ "rules": {
+ "semi": [
+ 2,
+ "always"
+ ],
+ "jest/valid-expect": 0,
+ "@typescript-eslint/no-explicit-any": 0,
+ "@typescript-eslint/explicit-function-return-type": 0,
+ "@typescript-eslint/explicit-module-boundary-types": 0,
+ "@typescript-eslint/no-empty-function": 0,
+ "@typescript-eslint/no-non-null-assertion": 0
+ }
+ },
+ "eslintIgnore": [
+ "dist",
+ "index.d.ts"
+ ],
+ "devDependencies": {
+ "@types/chai": "^4.2.11",
+ "@types/mocha": "^7.0.2",
+ "@types/sinon": "^9.0.4",
+ "@types/sinon-chai": "^3.2.4",
+ "@typescript-eslint/eslint-plugin": "^3.0.1",
+ "@typescript-eslint/parser": "^3.0.1",
+ "chai": "^4.2.0",
+ "documentation": "^13.0.0",
+ "eslint": "^7.1.0",
+ "eslint-config-developit": "^1.2.0",
+ "esm": "^3.2.25",
+ "microbundle": "^0.12.3",
+ "mocha": "^8.0.1",
+ "npm-run-all": "^4.1.5",
+ "rimraf": "^3.0.2",
+ "sinon": "^9.0.2",
+ "sinon-chai": "^3.5.0",
+ "ts-node": "^8.10.2",
+ "typescript": "^3.9.7"
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.gitignore" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.gitignore"
new file mode 100644
index 0000000..38adffa
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.gitignore"
@@ -0,0 +1,28 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.vscode/extensions.json" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.vscode/extensions.json"
new file mode 100644
index 0000000..c0a6e5a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/.vscode/extensions.json"
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/README.md" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/README.md"
new file mode 100644
index 0000000..6ae5270
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/README.md"
@@ -0,0 +1,29 @@
+# vuemitt
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vitejs.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/index.html" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/index.html"
new file mode 100644
index 0000000..99f583a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/index.html"
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Vite App
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package-lock.json" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package-lock.json"
new file mode 100644
index 0000000..e67aebe
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package-lock.json"
@@ -0,0 +1,756 @@
+{
+ "name": "vuemitt",
+ "version": "0.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "vuemitt",
+ "version": "0.0.0",
+ "dependencies": {
+ "mitt": "^3.0.0",
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.21.4.tgz",
+ "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==",
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.16.tgz",
+ "integrity": "sha512-baLqRpLe4JnKrUXLJChoTN0iXZH7El/mu58GE3WIA6/H834k0XWvLRmGLG8y8arTRS9hJJibPnF0tiGhmWeZgw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.16.tgz",
+ "integrity": "sha512-QX48qmsEZW+gcHgTmAj+x21mwTz8MlYQBnzF6861cNdQGvj2jzzFjqH0EBabrIa/WVZ2CHolwMoqxVryqKt8+Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.16.tgz",
+ "integrity": "sha512-G4wfHhrrz99XJgHnzFvB4UwwPxAWZaZBOFXh+JH1Duf1I4vIVfuYY9uVLpx4eiV2D/Jix8LJY+TAdZ3i40tDow==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.16.tgz",
+ "integrity": "sha512-/Ofw8UXZxuzTLsNFmz1+lmarQI6ztMZ9XktvXedTbt3SNWDn0+ODTwxExLYQ/Hod91EZB4vZPQJLoqLF0jvEzA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.16.tgz",
+ "integrity": "sha512-SzBQtCV3Pdc9kyizh36Ol+dNVhkDyIrGb/JXZqFq8WL37LIyrXU0gUpADcNV311sCOhvY+f2ivMhb5Tuv8nMOQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.16.tgz",
+ "integrity": "sha512-ZqftdfS1UlLiH1DnS2u3It7l4Bc3AskKeu+paJSfk7RNOMrOxmeFDhLTMQqMxycP1C3oj8vgkAT6xfAuq7ZPRA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.16.tgz",
+ "integrity": "sha512-rHV6zNWW1tjgsu0dKQTX9L0ByiJHHLvQKrWtnz8r0YYJI27FU3Xu48gpK2IBj1uCSYhJ+pEk6Y0Um7U3rIvV8g==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.16.tgz",
+ "integrity": "sha512-n4O8oVxbn7nl4+m+ISb0a68/lcJClIbaGAoXwqeubj/D1/oMMuaAXmJVfFlRjJLu/ZvHkxoiFJnmbfp4n8cdSw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.16.tgz",
+ "integrity": "sha512-8yoZhGkU6aHu38WpaM4HrRLTFc7/VVD9Q2SvPcmIQIipQt2I/GMTZNdEHXoypbbGao5kggLcxg0iBKjo0SQYKA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.16.tgz",
+ "integrity": "sha512-9ZBjlkdaVYxPNO8a7OmzDbOH9FMQ1a58j7Xb21UfRU29KcEEU3VTHk+Cvrft/BNv0gpWJMiiZ/f4w0TqSP0gLA==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.16.tgz",
+ "integrity": "sha512-TIZTRojVBBzdgChY3UOG7BlPhqJz08AL7jdgeeu+kiObWMFzGnQD7BgBBkWRwOtKR1i2TNlO7YK6m4zxVjjPRQ==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.16.tgz",
+ "integrity": "sha512-UPeRuFKCCJYpBbIdczKyHLAIU31GEm0dZl1eMrdYeXDH+SJZh/i+2cAmD3A1Wip9pIc5Sc6Kc5cFUrPXtR0XHA==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.16.tgz",
+ "integrity": "sha512-io6yShgIEgVUhExJejJ21xvO5QtrbiSeI7vYUnr7l+v/O9t6IowyhdiYnyivX2X5ysOVHAuyHW+Wyi7DNhdw6Q==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.16.tgz",
+ "integrity": "sha512-WhlGeAHNbSdG/I2gqX2RK2gfgSNwyJuCiFHMc8s3GNEMMHUI109+VMBfhVqRb0ZGzEeRiibi8dItR3ws3Lk+cA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.16.tgz",
+ "integrity": "sha512-gHRReYsJtViir63bXKoFaQ4pgTyah4ruiMRQ6im9YZuv+gp3UFJkNTY4sFA73YDynmXZA6hi45en4BGhNOJUsw==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.16.tgz",
+ "integrity": "sha512-mfiiBkxEbUHvi+v0P+TS7UnA9TeGXR48aK4XHkTj0ZwOijxexgMF01UDFaBX7Q6CQsB0d+MFNv9IiXbIHTNd4g==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.16.tgz",
+ "integrity": "sha512-n8zK1YRDGLRZfVcswcDMDM0j2xKYLNXqei217a4GyBxHIuPMGrrVuJ+Ijfpr0Kufcm7C1k/qaIrGy6eG7wvgmA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.16.tgz",
+ "integrity": "sha512-lEEfkfsUbo0xC47eSTBqsItXDSzwzwhKUSsVaVjVji07t8+6KA5INp2rN890dHZeueXJAI8q0tEIfbwVRYf6Ew==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.16.tgz",
+ "integrity": "sha512-jlRjsuvG1fgGwnE8Afs7xYDnGz0dBgTNZfgCK6TlvPH3Z13/P5pi6I57vyLE8qZYLrGVtwcm9UbUx1/mZ8Ukag==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.16.tgz",
+ "integrity": "sha512-TzoU2qwVe2boOHl/3KNBUv2PNUc38U0TNnzqOAcgPiD/EZxT2s736xfC2dYQbszAwo4MKzzwBV0iHjhfjxMimg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.16.tgz",
+ "integrity": "sha512-B8b7W+oo2yb/3xmwk9Vc99hC9bNolvqjaTZYEfMQhzdpBsjTvZBlXQ/teUE55Ww6sg//wlcDjOaqldOKyigWdA==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.16.tgz",
+ "integrity": "sha512-xJ7OH/nanouJO9pf03YsL9NAFQBHd8AqfrQd7Pf5laGyyTt/gToul6QYOA/i5i/q8y9iaM5DQFNTgpi995VkOg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
+ "integrity": "sha512-++9JOAFdcXI3lyer9UKUV4rfoQ3T1RN8yDqoCLar86s0xQct5yblxAE+yWgRnU5/0FOlVCpTZpYSBV/bGWrSrQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^4.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.47.tgz",
+ "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz",
+ "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==",
+ "dependencies": {
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz",
+ "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/reactivity-transform": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz",
+ "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.47.tgz",
+ "integrity": "sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==",
+ "dependencies": {
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity-transform": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz",
+ "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.47.tgz",
+ "integrity": "sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==",
+ "dependencies": {
+ "@vue/reactivity": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
+ "integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
+ "dependencies": {
+ "@vue/runtime-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "csstype": "^2.6.8"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.47.tgz",
+ "integrity": "sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/shared": "3.2.47"
+ },
+ "peerDependencies": {
+ "vue": "3.2.47"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz",
+ "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
+ },
+ "node_modules/csstype": {
+ "version": "2.6.21",
+ "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
+ "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w=="
+ },
+ "node_modules/esbuild": {
+ "version": "0.17.16",
+ "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.17.16.tgz",
+ "integrity": "sha512-aeSuUKr9aFVY9Dc8ETVELGgkj4urg5isYx8pLf4wlGgB0vTFjxJQdHnNH6Shmx4vYYrOTLCHtRI5i1XZ9l2Zcg==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/android-arm": "0.17.16",
+ "@esbuild/android-arm64": "0.17.16",
+ "@esbuild/android-x64": "0.17.16",
+ "@esbuild/darwin-arm64": "0.17.16",
+ "@esbuild/darwin-x64": "0.17.16",
+ "@esbuild/freebsd-arm64": "0.17.16",
+ "@esbuild/freebsd-x64": "0.17.16",
+ "@esbuild/linux-arm": "0.17.16",
+ "@esbuild/linux-arm64": "0.17.16",
+ "@esbuild/linux-ia32": "0.17.16",
+ "@esbuild/linux-loong64": "0.17.16",
+ "@esbuild/linux-mips64el": "0.17.16",
+ "@esbuild/linux-ppc64": "0.17.16",
+ "@esbuild/linux-riscv64": "0.17.16",
+ "@esbuild/linux-s390x": "0.17.16",
+ "@esbuild/linux-x64": "0.17.16",
+ "@esbuild/netbsd-x64": "0.17.16",
+ "@esbuild/openbsd-x64": "0.17.16",
+ "@esbuild/sunos-x64": "0.17.16",
+ "@esbuild/win32-arm64": "0.17.16",
+ "@esbuild/win32-ia32": "0.17.16",
+ "@esbuild/win32-x64": "0.17.16"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.12.0",
+ "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.12.0.tgz",
+ "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/mitt": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/mitt/-/mitt-3.0.0.tgz",
+ "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ=="
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz",
+ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "node_modules/postcss": {
+ "version": "8.4.21",
+ "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.21.tgz",
+ "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==",
+ "dependencies": {
+ "nanoid": "^3.3.4",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.2",
+ "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.11.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "3.20.2",
+ "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.20.2.tgz",
+ "integrity": "sha512-3zwkBQl7Ai7MFYQE0y1MeQ15+9jsi7XxfrqwTb/9EK8D9C9+//EBR4M+CuA1KODRaNbFez/lWxA5vhEGZp4MUg==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=14.18.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
+ "deprecated": "Please use @jridgewell/sourcemap-codec instead"
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/vite": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmmirror.com/vite/-/vite-4.2.1.tgz",
+ "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==",
+ "dev": true,
+ "dependencies": {
+ "esbuild": "^0.17.5",
+ "postcss": "^8.4.21",
+ "resolve": "^1.22.1",
+ "rollup": "^3.18.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "@types/node": ">= 14",
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.47.tgz",
+ "integrity": "sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-sfc": "3.2.47",
+ "@vue/runtime-dom": "3.2.47",
+ "@vue/server-renderer": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ }
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package.json" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package.json"
new file mode 100644
index 0000000..803282b
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/package.json"
@@ -0,0 +1,18 @@
+{
+ "name": "vuemitt",
+ "version": "0.0.0",
+ "private": true,
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "mitt": "^3.0.0",
+ "vue": "^3.2.47"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/public/favicon.ico" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/public/favicon.ico"
new file mode 100644
index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2
GIT binary patch
literal 4286
zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj
zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56
zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy
zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei
z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX
zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm
zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp=
zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8
zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO
z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3
z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD
zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6
z={Xwx{T%b6i9IjI)Ls)S{-*mq<@~R{?$}ZKjf;^k75i_}(2MXt}^SEBVg7AI@28
zo_uPg2V)_e-`2Ois=PYoe%9u*n9({PFR)OnHJPi{dNx>KxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S
literal 0
HcmV?d00001
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/App.vue" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/App.vue"
new file mode 100644
index 0000000..3a1b113
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/App.vue"
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/base.css" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/base.css"
new file mode 100644
index 0000000..71dc55a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/base.css"
@@ -0,0 +1,74 @@
+/* color palette from */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ position: relative;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition: color 0.5s, background-color 0.5s;
+ line-height: 1.6;
+ font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
+ Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/logo.svg" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/logo.svg"
new file mode 100644
index 0000000..7565660
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/logo.svg"
@@ -0,0 +1 @@
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/main.css" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/main.css"
new file mode 100644
index 0000000..e8667cd
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/assets/main.css"
@@ -0,0 +1,35 @@
+@import './base.css';
+
+#app {
+ max-width: 1280px;
+ margin: 0 auto;
+ padding: 2rem;
+
+ font-weight: normal;
+}
+
+a,
+.green {
+ text-decoration: none;
+ color: hsla(160, 100%, 37%, 1);
+ transition: 0.4s;
+}
+
+@media (hover: hover) {
+ a:hover {
+ background-color: hsla(160, 100%, 37%, 0.2);
+ }
+}
+
+@media (min-width: 1024px) {
+ body {
+ display: flex;
+ place-items: center;
+ }
+
+ #app {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ padding: 0 2rem;
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/left.vue" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/left.vue"
new file mode 100644
index 0000000..85159d4
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/left.vue"
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/right.vue" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/right.vue"
new file mode 100644
index 0000000..f3800fc
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/components/right.vue"
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/main.js" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/main.js"
new file mode 100644
index 0000000..8461739
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/main.js"
@@ -0,0 +1,5 @@
+import { createApp } from 'vue'
+import App from './App.vue'
+
+
+createApp(App).mount('#app')
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/utils/mitt.js" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/utils/mitt.js"
new file mode 100644
index 0000000..b5af437
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/src/utils/mitt.js"
@@ -0,0 +1,6 @@
+import mitt from "mitt";
+
+const mitter = mitt()
+
+
+export default mitter
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/vite.config.js" "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/vite.config.js"
new file mode 100644
index 0000000..de5cb31
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.13\345\205\250\345\261\200\344\272\213\344\273\266\346\200\273\347\272\277/vuemitt/vite.config.js"
@@ -0,0 +1,14 @@
+import { fileURLToPath, URL } from 'node:url'
+
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ plugins: [vue()],
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url))
+ }
+ }
+})
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.gitignore" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.gitignore"
new file mode 100644
index 0000000..38adffa
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.gitignore"
@@ -0,0 +1,28 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+.DS_Store
+dist
+dist-ssr
+coverage
+*.local
+
+/cypress/videos/
+/cypress/screenshots/
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.vscode/extensions.json" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.vscode/extensions.json"
new file mode 100644
index 0000000..c0a6e5a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/.vscode/extensions.json"
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/README.md" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/README.md"
new file mode 100644
index 0000000..5aaeecb
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/README.md"
@@ -0,0 +1,29 @@
+# vueroute
+
+This template should help get you started developing with Vue 3 in Vite.
+
+## Recommended IDE Setup
+
+[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
+
+## Customize configuration
+
+See [Vite Configuration Reference](https://vitejs.dev/config/).
+
+## Project Setup
+
+```sh
+npm install
+```
+
+### Compile and Hot-Reload for Development
+
+```sh
+npm run dev
+```
+
+### Compile and Minify for Production
+
+```sh
+npm run build
+```
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/index.html" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/index.html"
new file mode 100644
index 0000000..99f583a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/index.html"
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+ Vite App
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package-lock.json" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package-lock.json"
new file mode 100644
index 0000000..299eab0
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package-lock.json"
@@ -0,0 +1,773 @@
+{
+ "name": "vueroute",
+ "version": "0.0.0",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "vueroute",
+ "version": "0.0.0",
+ "dependencies": {
+ "mitt": "^3.0.0",
+ "vue": "^3.2.47",
+ "vue-router": "^4.1.6"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+ },
+ "node_modules/@babel/parser": {
+ "version": "7.21.4",
+ "resolved": "https://registry.npmmirror.com/@babel/parser/-/parser-7.21.4.tgz",
+ "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==",
+ "bin": {
+ "parser": "bin/babel-parser.js"
+ },
+ "engines": {
+ "node": ">=6.0.0"
+ }
+ },
+ "node_modules/@esbuild/android-arm": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.17.tgz",
+ "integrity": "sha512-E6VAZwN7diCa3labs0GYvhEPL2M94WLF8A+czO8hfjREXxba8Ng7nM5VxV+9ihNXIY1iQO1XxUU4P7hbqbICxg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-arm64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.17.tgz",
+ "integrity": "sha512-jaJ5IlmaDLFPNttv0ofcwy/cfeY4bh/n705Tgh+eLObbGtQBK3EPAu+CzL95JVE4nFAliyrnEu0d32Q5foavqg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/android-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.17.tgz",
+ "integrity": "sha512-446zpfJ3nioMC7ASvJB1pszHVskkw4u/9Eu8s5yvvsSDTzYh4p4ZIRj0DznSl3FBF0Z/mZfrKXTtt0QCoFmoHA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-arm64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.17.tgz",
+ "integrity": "sha512-m/gwyiBwH3jqfUabtq3GH31otL/0sE0l34XKpSIqR7NjQ/XHQ3lpmQHLHbG8AHTGCw8Ao059GvV08MS0bhFIJQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/darwin-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.17.tgz",
+ "integrity": "sha512-4utIrsX9IykrqYaXR8ob9Ha2hAY2qLc6ohJ8c0CN1DR8yWeMrTgYFjgdeQ9LIoTOfLetXjuCu5TRPHT9yKYJVg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-arm64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.17.tgz",
+ "integrity": "sha512-4PxjQII/9ppOrpEwzQ1b0pXCsFLqy77i0GaHodrmzH9zq2/NEhHMAMJkJ635Ns4fyJPFOlHMz4AsklIyRqFZWA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/freebsd-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.17.tgz",
+ "integrity": "sha512-lQRS+4sW5S3P1sv0z2Ym807qMDfkmdhUYX30GRBURtLTrJOPDpoU0kI6pVz1hz3U0+YQ0tXGS9YWveQjUewAJw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.17.tgz",
+ "integrity": "sha512-biDs7bjGdOdcmIk6xU426VgdRUpGg39Yz6sT9Xp23aq+IEHDb/u5cbmu/pAANpDB4rZpY/2USPhCA+w9t3roQg==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-arm64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.17.tgz",
+ "integrity": "sha512-2+pwLx0whKY1/Vqt8lyzStyda1v0qjJ5INWIe+d8+1onqQxHLLi3yr5bAa4gvbzhZqBztifYEu8hh1La5+7sUw==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ia32": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.17.tgz",
+ "integrity": "sha512-IBTTv8X60dYo6P2t23sSUYym8fGfMAiuv7PzJ+0LcdAndZRzvke+wTVxJeCq4WgjppkOpndL04gMZIFvwoU34Q==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-loong64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.17.tgz",
+ "integrity": "sha512-WVMBtcDpATjaGfWfp6u9dANIqmU9r37SY8wgAivuKmgKHE+bWSuv0qXEFt/p3qXQYxJIGXQQv6hHcm7iWhWjiw==",
+ "cpu": [
+ "loong64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-mips64el": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.17.tgz",
+ "integrity": "sha512-2kYCGh8589ZYnY031FgMLy0kmE4VoGdvfJkxLdxP4HJvWNXpyLhjOvxVsYjYZ6awqY4bgLR9tpdYyStgZZhi2A==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-ppc64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.17.tgz",
+ "integrity": "sha512-KIdG5jdAEeAKogfyMTcszRxy3OPbZhq0PPsW4iKKcdlbk3YE4miKznxV2YOSmiK/hfOZ+lqHri3v8eecT2ATwQ==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-riscv64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.17.tgz",
+ "integrity": "sha512-Cj6uWLBR5LWhcD/2Lkfg2NrkVsNb2sFM5aVEfumKB2vYetkA/9Uyc1jVoxLZ0a38sUhFk4JOVKH0aVdPbjZQeA==",
+ "cpu": [
+ "riscv64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-s390x": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.17.tgz",
+ "integrity": "sha512-lK+SffWIr0XsFf7E0srBjhpkdFVJf3HEgXCwzkm69kNbRar8MhezFpkIwpk0qo2IOQL4JE4mJPJI8AbRPLbuOQ==",
+ "cpu": [
+ "s390x"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.17.tgz",
+ "integrity": "sha512-XcSGTQcWFQS2jx3lZtQi7cQmDYLrpLRyz1Ns1DzZCtn898cWfm5Icx/DEWNcTU+T+tyPV89RQtDnI7qL2PObPg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/netbsd-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.17.tgz",
+ "integrity": "sha512-RNLCDmLP5kCWAJR+ItLM3cHxzXRTe4N00TQyQiimq+lyqVqZWGPAvcyfUBM0isE79eEZhIuGN09rAz8EL5KdLA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "netbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/openbsd-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.17.tgz",
+ "integrity": "sha512-PAXswI5+cQq3Pann7FNdcpSUrhrql3wKjj3gVkmuz6OHhqqYxKvi6GgRBoaHjaG22HV/ZZEgF9TlS+9ftHVigA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/sunos-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.17.tgz",
+ "integrity": "sha512-V63egsWKnx/4V0FMYkr9NXWrKTB5qFftKGKuZKFIrAkO/7EWLFnbBZNM1CvJ6Sis+XBdPws2YQSHF1Gqf1oj/Q==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-arm64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.17.tgz",
+ "integrity": "sha512-YtUXLdVnd6YBSYlZODjWzH+KzbaubV0YVd6UxSfoFfa5PtNJNaW+1i+Hcmjpg2nEe0YXUCNF5bkKy1NnBv1y7Q==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-ia32": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.17.tgz",
+ "integrity": "sha512-yczSLRbDdReCO74Yfc5tKG0izzm+lPMYyO1fFTcn0QNwnKmc3K+HdxZWLGKg4pZVte7XVgcFku7TIZNbWEJdeQ==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@esbuild/win32-x64": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.17.tgz",
+ "integrity": "sha512-FNZw7H3aqhF9OyRQbDDnzUApDXfC1N6fgBhkqEO2jvYCJ+DxMTfZVqg3AX0R1khg1wHTBRD5SdcibSJ+XF6bFg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@vitejs/plugin-vue": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-4.1.0.tgz",
+ "integrity": "sha512-++9JOAFdcXI3lyer9UKUV4rfoQ3T1RN8yDqoCLar86s0xQct5yblxAE+yWgRnU5/0FOlVCpTZpYSBV/bGWrSrQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "vite": "^4.0.0",
+ "vue": "^3.2.25"
+ }
+ },
+ "node_modules/@vue/compiler-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.47.tgz",
+ "integrity": "sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.47.tgz",
+ "integrity": "sha512-dBBnEHEPoftUiS03a4ggEig74J2YBZ2UIeyfpcRM2tavgMWo4bsEfgCGsu+uJIL/vax9S+JztH8NmQerUo7shQ==",
+ "dependencies": {
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/compiler-sfc": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.47.tgz",
+ "integrity": "sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/reactivity-transform": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7",
+ "postcss": "^8.1.10",
+ "source-map": "^0.6.1"
+ }
+ },
+ "node_modules/@vue/compiler-ssr": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.47.tgz",
+ "integrity": "sha512-wVXC+gszhulcMD8wpxMsqSOpvDZ6xKXSVWkf50Guf/S+28hTAXPDYRTbLQ3EDkOP5Xz/+SY37YiwDquKbJOgZw==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/devtools-api": {
+ "version": "6.5.0",
+ "resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.5.0.tgz",
+ "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q=="
+ },
+ "node_modules/@vue/reactivity": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.47.tgz",
+ "integrity": "sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==",
+ "dependencies": {
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/reactivity-transform": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.47.tgz",
+ "integrity": "sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==",
+ "dependencies": {
+ "@babel/parser": "^7.16.4",
+ "@vue/compiler-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "estree-walker": "^2.0.2",
+ "magic-string": "^0.25.7"
+ }
+ },
+ "node_modules/@vue/runtime-core": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.47.tgz",
+ "integrity": "sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==",
+ "dependencies": {
+ "@vue/reactivity": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/@vue/runtime-dom": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.47.tgz",
+ "integrity": "sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==",
+ "dependencies": {
+ "@vue/runtime-core": "3.2.47",
+ "@vue/shared": "3.2.47",
+ "csstype": "^2.6.8"
+ }
+ },
+ "node_modules/@vue/server-renderer": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.47.tgz",
+ "integrity": "sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==",
+ "dependencies": {
+ "@vue/compiler-ssr": "3.2.47",
+ "@vue/shared": "3.2.47"
+ },
+ "peerDependencies": {
+ "vue": "3.2.47"
+ }
+ },
+ "node_modules/@vue/shared": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz",
+ "integrity": "sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ=="
+ },
+ "node_modules/csstype": {
+ "version": "2.6.21",
+ "resolved": "https://registry.npmmirror.com/csstype/-/csstype-2.6.21.tgz",
+ "integrity": "sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w=="
+ },
+ "node_modules/esbuild": {
+ "version": "0.17.17",
+ "resolved": "https://registry.npmmirror.com/esbuild/-/esbuild-0.17.17.tgz",
+ "integrity": "sha512-/jUywtAymR8jR4qsa2RujlAF7Krpt5VWi72Q2yuLD4e/hvtNcFQ0I1j8m/bxq238pf3/0KO5yuXNpuLx8BE1KA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "optionalDependencies": {
+ "@esbuild/android-arm": "0.17.17",
+ "@esbuild/android-arm64": "0.17.17",
+ "@esbuild/android-x64": "0.17.17",
+ "@esbuild/darwin-arm64": "0.17.17",
+ "@esbuild/darwin-x64": "0.17.17",
+ "@esbuild/freebsd-arm64": "0.17.17",
+ "@esbuild/freebsd-x64": "0.17.17",
+ "@esbuild/linux-arm": "0.17.17",
+ "@esbuild/linux-arm64": "0.17.17",
+ "@esbuild/linux-ia32": "0.17.17",
+ "@esbuild/linux-loong64": "0.17.17",
+ "@esbuild/linux-mips64el": "0.17.17",
+ "@esbuild/linux-ppc64": "0.17.17",
+ "@esbuild/linux-riscv64": "0.17.17",
+ "@esbuild/linux-s390x": "0.17.17",
+ "@esbuild/linux-x64": "0.17.17",
+ "@esbuild/netbsd-x64": "0.17.17",
+ "@esbuild/openbsd-x64": "0.17.17",
+ "@esbuild/sunos-x64": "0.17.17",
+ "@esbuild/win32-arm64": "0.17.17",
+ "@esbuild/win32-ia32": "0.17.17",
+ "@esbuild/win32-x64": "0.17.17"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ },
+ "node_modules/fsevents": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz",
+ "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
+ "dev": true,
+ "hasInstallScript": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
+ "node_modules/has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "dev": true,
+ "dependencies": {
+ "function-bind": "^1.1.1"
+ },
+ "engines": {
+ "node": ">= 0.4.0"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.12.0",
+ "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.12.0.tgz",
+ "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==",
+ "dev": true,
+ "dependencies": {
+ "has": "^1.0.3"
+ }
+ },
+ "node_modules/magic-string": {
+ "version": "0.25.9",
+ "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz",
+ "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
+ "dependencies": {
+ "sourcemap-codec": "^1.4.8"
+ }
+ },
+ "node_modules/mitt": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.0.tgz",
+ "integrity": "sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ=="
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.6.tgz",
+ "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true
+ },
+ "node_modules/picocolors": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
+ "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
+ },
+ "node_modules/postcss": {
+ "version": "8.4.22",
+ "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.22.tgz",
+ "integrity": "sha512-XseknLAfRHzVWjCEtdviapiBtfLdgyzExD50Rg2ePaucEesyh8Wv4VPdW0nbyDa1ydbrAxV19jvMT4+LFmcNUA==",
+ "dependencies": {
+ "nanoid": "^3.3.6",
+ "picocolors": "^1.0.0",
+ "source-map-js": "^1.0.2"
+ },
+ "engines": {
+ "node": "^10 || ^12 || >=14"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.2",
+ "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==",
+ "dev": true,
+ "dependencies": {
+ "is-core-module": "^2.11.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ }
+ },
+ "node_modules/rollup": {
+ "version": "3.20.5",
+ "resolved": "https://registry.npmmirror.com/rollup/-/rollup-3.20.5.tgz",
+ "integrity": "sha512-Mx6NE3nLPIP6a9ReV4dTPOYYmDiyarJNtSbc37Jx0jvh8SHySoFPgyZAp9aDP3LnYvaJOrz+fclcwq3oZDzlnA==",
+ "dev": true,
+ "bin": {
+ "rollup": "dist/bin/rollup"
+ },
+ "engines": {
+ "node": ">=14.18.0",
+ "npm": ">=8.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/source-map-js": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
+ "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/sourcemap-codec": {
+ "version": "1.4.8",
+ "resolved": "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
+ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
+ "deprecated": "Please use @jridgewell/sourcemap-codec instead"
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/vite": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmmirror.com/vite/-/vite-4.2.1.tgz",
+ "integrity": "sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==",
+ "dev": true,
+ "dependencies": {
+ "esbuild": "^0.17.5",
+ "postcss": "^8.4.21",
+ "resolve": "^1.22.1",
+ "rollup": "^3.18.0"
+ },
+ "bin": {
+ "vite": "bin/vite.js"
+ },
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
+ },
+ "peerDependencies": {
+ "@types/node": ">= 14",
+ "less": "*",
+ "sass": "*",
+ "stylus": "*",
+ "sugarss": "*",
+ "terser": "^5.4.0"
+ },
+ "peerDependenciesMeta": {
+ "@types/node": {
+ "optional": true
+ },
+ "less": {
+ "optional": true
+ },
+ "sass": {
+ "optional": true
+ },
+ "stylus": {
+ "optional": true
+ },
+ "sugarss": {
+ "optional": true
+ },
+ "terser": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/vue": {
+ "version": "3.2.47",
+ "resolved": "https://registry.npmmirror.com/vue/-/vue-3.2.47.tgz",
+ "integrity": "sha512-60188y/9Dc9WVrAZeUVSDxRQOZ+z+y5nO2ts9jWXSTkMvayiWxCWOWtBQoYjLeccfXkiiPZWAHcV+WTPhkqJHQ==",
+ "dependencies": {
+ "@vue/compiler-dom": "3.2.47",
+ "@vue/compiler-sfc": "3.2.47",
+ "@vue/runtime-dom": "3.2.47",
+ "@vue/server-renderer": "3.2.47",
+ "@vue/shared": "3.2.47"
+ }
+ },
+ "node_modules/vue-router": {
+ "version": "4.1.6",
+ "resolved": "https://registry.npmmirror.com/vue-router/-/vue-router-4.1.6.tgz",
+ "integrity": "sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==",
+ "dependencies": {
+ "@vue/devtools-api": "^6.4.5"
+ },
+ "peerDependencies": {
+ "vue": "^3.2.0"
+ }
+ }
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package.json" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package.json"
new file mode 100644
index 0000000..b0b6f5d
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/package.json"
@@ -0,0 +1,19 @@
+{
+ "name": "vueroute",
+ "version": "0.0.0",
+ "private": true,
+ "scripts": {
+ "dev": "vite",
+ "build": "vite build",
+ "preview": "vite preview"
+ },
+ "dependencies": {
+ "mitt": "^3.0.0",
+ "vue": "^3.2.47",
+ "vue-router": "^4.1.6"
+ },
+ "devDependencies": {
+ "@vitejs/plugin-vue": "^4.0.0",
+ "vite": "^4.1.4"
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/public/favicon.ico" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/public/favicon.ico"
new file mode 100644
index 0000000000000000000000000000000000000000..df36fcfb72584e00488330b560ebcf34a41c64c2
GIT binary patch
literal 4286
zcmds*O-Phc6o&64GDVCEQHxsW(p4>LW*W<827=Unuo8sGpRux(DN@jWP-e29Wl%wj
zY84_aq9}^Am9-cWTD5GGEo#+5Fi2wX_P*bo+xO!)p*7B;iKlbFd(U~_d(U?#hLj56
zPhFkj-|A6~Qk#@g^#D^U0XT1cu=c-vu1+SElX9NR;kzAUV(q0|dl0|%h|dI$%VICy
zJnu2^L*Te9JrJMGh%-P79CL0}dq92RGU6gI{v2~|)p}sG5x0U*z<8U;Ij*hB9z?ei
z@g6Xq-pDoPl=MANPiR7%172VA%r)kevtV-_5H*QJKFmd;8yA$98zCxBZYXTNZ#QFk2(TX0;Y2dt&WitL#$96|gJY=3xX
zpCoi|YNzgO3R`f@IiEeSmKrPSf#h#Qd<$%Ej^RIeeYfsxhPMOG`S`Pz8q``=511zm
zAm)MX5AV^5xIWPyEu7u>qYs?pn$I4nL9J!=K=SGlKLXpE<5x+2cDTXq?brj?n6sp=
zphe9;_JHf40^9~}9i08r{XM$7HB!`{Ys~TK0kx<}ZQng`UPvH*11|q7&l9?@FQz;8
zx!=3<4seY*%=OlbCbcae?5^V_}*K>Uo6ZWV8mTyE^B=DKy7-sdLYkR5Z?paTgK-zyIkKjIcpyO
z{+uIt&YSa_$QnN_@t~L014dyK(fOOo+W*MIxbA6Ndgr=Y!f#Tokqv}n<7-9qfHkc3
z=>a|HWqcX8fzQCT=dqVbogRq!-S>H%yA{1w#2Pn;=e>JiEj7Hl;zdt-2f+j2%DeVD
zsW0Ab)ZK@0cIW%W7z}H{&~yGhn~D;aiP4=;m-HCo`BEI+Kd6
z={Xwx{T%b6i9IjI)Ls)S{-*mq<@~R{?$}ZKjf;^k75i_}(2MXt}^SEBVg7AI@28
zo_uPg2V)_e-`2Ois=PYoe%9u*n9({PFR)OnHJPi{dNx>KxD#iCLfl2vQGDitKtN>z|-AdCN|$jTFDg0m3O`WLD4_s#$S
literal 0
HcmV?d00001
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/App.vue" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/App.vue"
new file mode 100644
index 0000000..58257aa
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/App.vue"
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/base.css" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/base.css"
new file mode 100644
index 0000000..71dc55a
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/base.css"
@@ -0,0 +1,74 @@
+/* color palette from */
+:root {
+ --vt-c-white: #ffffff;
+ --vt-c-white-soft: #f8f8f8;
+ --vt-c-white-mute: #f2f2f2;
+
+ --vt-c-black: #181818;
+ --vt-c-black-soft: #222222;
+ --vt-c-black-mute: #282828;
+
+ --vt-c-indigo: #2c3e50;
+
+ --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
+ --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
+ --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
+ --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
+
+ --vt-c-text-light-1: var(--vt-c-indigo);
+ --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
+ --vt-c-text-dark-1: var(--vt-c-white);
+ --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
+}
+
+/* semantic color variables for this project */
+:root {
+ --color-background: var(--vt-c-white);
+ --color-background-soft: var(--vt-c-white-soft);
+ --color-background-mute: var(--vt-c-white-mute);
+
+ --color-border: var(--vt-c-divider-light-2);
+ --color-border-hover: var(--vt-c-divider-light-1);
+
+ --color-heading: var(--vt-c-text-light-1);
+ --color-text: var(--vt-c-text-light-1);
+
+ --section-gap: 160px;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--vt-c-black);
+ --color-background-soft: var(--vt-c-black-soft);
+ --color-background-mute: var(--vt-c-black-mute);
+
+ --color-border: var(--vt-c-divider-dark-2);
+ --color-border-hover: var(--vt-c-divider-dark-1);
+
+ --color-heading: var(--vt-c-text-dark-1);
+ --color-text: var(--vt-c-text-dark-2);
+ }
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box;
+ margin: 0;
+ position: relative;
+ font-weight: normal;
+}
+
+body {
+ min-height: 100vh;
+ color: var(--color-text);
+ background: var(--color-background);
+ transition: color 0.5s, background-color 0.5s;
+ line-height: 1.6;
+ font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
+ Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
+ font-size: 15px;
+ text-rendering: optimizeLegibility;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/logo.svg" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/logo.svg"
new file mode 100644
index 0000000..7565660
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/logo.svg"
@@ -0,0 +1 @@
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/main.css" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/main.css"
new file mode 100644
index 0000000..e8667cd
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/assets/main.css"
@@ -0,0 +1,35 @@
+@import './base.css';
+
+#app {
+ max-width: 1280px;
+ margin: 0 auto;
+ padding: 2rem;
+
+ font-weight: normal;
+}
+
+a,
+.green {
+ text-decoration: none;
+ color: hsla(160, 100%, 37%, 1);
+ transition: 0.4s;
+}
+
+@media (hover: hover) {
+ a:hover {
+ background-color: hsla(160, 100%, 37%, 0.2);
+ }
+}
+
+@media (min-width: 1024px) {
+ body {
+ display: flex;
+ place-items: center;
+ }
+
+ #app {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ padding: 0 2rem;
+ }
+}
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/car.vue" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/car.vue"
new file mode 100644
index 0000000..7b86d38
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/car.vue"
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/home.vue" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/home.vue"
new file mode 100644
index 0000000..8f42904
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/home.vue"
@@ -0,0 +1,13 @@
+
+
+
首页
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/left.vue" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/left.vue"
new file mode 100644
index 0000000..f12e7d5
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/left.vue"
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/price.vue" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/price.vue"
new file mode 100644
index 0000000..5be8ad2
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/price.vue"
@@ -0,0 +1,180 @@
+
+
+
+
+
+
+
{{ val.text }}
+
{{ val.price }}¥
+
+
+
总计:{{ counts }}
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/right.vue" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/right.vue"
new file mode 100644
index 0000000..e9c1acc
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/components/right.vue"
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/main.js" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/main.js"
new file mode 100644
index 0000000..c8dd9f3
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/main.js"
@@ -0,0 +1,11 @@
+import { createApp } from 'vue'
+import App from './App.vue'
+import router from './router'
+
+
+
+const app = createApp(App)
+
+app.use(router)
+
+app.mount('#app')
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/index.js" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/index.js"
new file mode 100644
index 0000000..25beb95
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/index.js"
@@ -0,0 +1,23 @@
+import { createRouter, createWebHistory } from 'vue-router'
+import home from '../components/home.vue'
+import car from '../components/car.vue'
+
+const router = createRouter({
+ history: createWebHistory(import.meta.env.BASE_URL),
+ routes: [
+ {
+ path: '/',
+ name: 'home',
+ component: home
+ },
+
+ {
+ path:'/car',
+ name:'car',
+ component:car
+ }
+
+ ]
+})
+
+export default router
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/mitt.js" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/mitt.js"
new file mode 100644
index 0000000..bdd5125
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/src/router/mitt.js"
@@ -0,0 +1,3 @@
+import mitt from 'mitt'
+
+export default mitt()
\ No newline at end of file
diff --git "a/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/vite.config.js" "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/vite.config.js"
new file mode 100644
index 0000000..de5cb31
--- /dev/null
+++ "b/\351\231\210\346\242\201\346\235\260/4.18\350\267\257\347\224\261/vueroute/vite.config.js"
@@ -0,0 +1,14 @@
+import { fileURLToPath, URL } from 'node:url'
+
+import { defineConfig } from 'vite'
+import vue from '@vitejs/plugin-vue'
+
+// https://vitejs.dev/config/
+export default defineConfig({
+ plugins: [vue()],
+ resolve: {
+ alias: {
+ '@': fileURLToPath(new URL('./src', import.meta.url))
+ }
+ }
+})
--
Gitee