自动导入
This commit is contained in:
		
							
								
								
									
										4
									
								
								.eslintrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.eslintrc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | { | ||||||
|  |   "extends":"@mistjs/eslint-config-vue", | ||||||
|  |   "rules":{} | ||||||
|  | } | ||||||
							
								
								
									
										24
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | |||||||
|  | # Logs | ||||||
|  | logs | ||||||
|  | *.log | ||||||
|  | npm-debug.log* | ||||||
|  | yarn-debug.log* | ||||||
|  | yarn-error.log* | ||||||
|  | pnpm-debug.log* | ||||||
|  | lerna-debug.log* | ||||||
|  |  | ||||||
|  | node_modules | ||||||
|  | dist | ||||||
|  | dist-ssr | ||||||
|  | *.local | ||||||
|  |  | ||||||
|  | # Editor directories and files | ||||||
|  | .vscode/* | ||||||
|  | !.vscode/extensions.json | ||||||
|  | .idea | ||||||
|  | .DS_Store | ||||||
|  | *.suo | ||||||
|  | *.ntvs* | ||||||
|  | *.njsproj | ||||||
|  | *.sln | ||||||
|  | *.sw? | ||||||
							
								
								
									
										3
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.vscode/extensions.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | |||||||
|  | { | ||||||
|  |   "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] | ||||||
|  | } | ||||||
							
								
								
									
										18
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,18 @@ | |||||||
|  | # Vue 3 + TypeScript + Vite | ||||||
|  |  | ||||||
|  | This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more. | ||||||
|  |  | ||||||
|  | ## Recommended IDE Setup | ||||||
|  |  | ||||||
|  | - [VS Code](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). | ||||||
|  |  | ||||||
|  | ## Type Support For `.vue` Imports in TS | ||||||
|  |  | ||||||
|  | TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types. | ||||||
|  |  | ||||||
|  | If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps: | ||||||
|  |  | ||||||
|  | 1. Disable the built-in TypeScript Extension | ||||||
|  |    1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette | ||||||
|  |    2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)` | ||||||
|  | 2. Reload the VSCode window by running `Developer: Reload Window` from the command palette. | ||||||
							
								
								
									
										13
									
								
								index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								index.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | |||||||
|  | <!DOCTYPE html> | ||||||
|  | <html lang="en"> | ||||||
|  |   <head> | ||||||
|  |     <meta charset="UTF-8" /> | ||||||
|  |     <link rel="icon" type="image/svg+xml" href="/vite.svg" /> | ||||||
|  |     <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||||
|  |     <title>Vite + Vue + TS</title> | ||||||
|  |   </head> | ||||||
|  |   <body> | ||||||
|  |     <div id="app"></div> | ||||||
|  |     <script type="module" src="/src/main.ts"></script> | ||||||
|  |   </body> | ||||||
|  | </html> | ||||||
							
								
								
									
										32
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								package.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | |||||||
|  | { | ||||||
|  |   "name": "jvyou-admin-view", | ||||||
|  |   "private": true, | ||||||
|  |   "version": "0.0.0", | ||||||
|  |   "type": "module", | ||||||
|  |   "scripts": { | ||||||
|  |     "dev": "vite", | ||||||
|  |     "build": "vue-tsc && vite build", | ||||||
|  |     "preview": "vite preview" | ||||||
|  |   }, | ||||||
|  |   "dependencies": { | ||||||
|  |     "@vueuse/core": "^10.2.0", | ||||||
|  |     "pinia": "^2.1.4", | ||||||
|  |     "vue": "^3.2.47", | ||||||
|  |     "vue-i18n": "^9.2.2", | ||||||
|  |     "vue-router": "^4.2.2" | ||||||
|  |   }, | ||||||
|  |   "devDependencies": { | ||||||
|  |     "@mistjs/eslint-config-vue": "^0.0.5", | ||||||
|  |     "@unocss/reset": "^0.53.1", | ||||||
|  |     "@vitejs/plugin-vue": "^4.1.0", | ||||||
|  |     "@vue/runtime-core": "^3.3.4", | ||||||
|  |     "eslint": "^8.22.0", | ||||||
|  |     "naive-ui": "^2.34.4", | ||||||
|  |     "typescript": "^5.0.2", | ||||||
|  |     "unocss": "^0.53.1", | ||||||
|  |     "unplugin-auto-import": "^0.16.4", | ||||||
|  |     "unplugin-vue-components": "^0.25.1", | ||||||
|  |     "vite": "^4.3.9", | ||||||
|  |     "vue-tsc": "^1.4.2" | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										4829
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										4829
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								public/vite.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								public/vite.svg
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg> | ||||||
| After Width: | Height: | Size: 1.5 KiB | 
							
								
								
									
										14
									
								
								src/App.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								src/App.vue
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | |||||||
|  | <script setup lang="ts"> | ||||||
|  | </script> | ||||||
|  |  | ||||||
|  | <template> | ||||||
|  |   <div> | ||||||
|  |     <div class="w-100px h-100px bg-red pl-10px ml-10px mt-20px"> | ||||||
|  |       test | ||||||
|  |     </div> | ||||||
|  |   </div> | ||||||
|  | </template> | ||||||
|  |  | ||||||
|  | <style scoped> | ||||||
|  |  | ||||||
|  | </style> | ||||||
							
								
								
									
										1
									
								
								src/assets/vue.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								src/assets/vue.svg
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="37.07" height="36" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 198"><path fill="#41B883" d="M204.8 0H256L128 220.8L0 0h97.92L128 51.2L157.44 0h47.36Z"></path><path fill="#41B883" d="m0 0l128 220.8L256 0h-51.2L128 132.48L50.56 0H0Z"></path><path fill="#35495E" d="M50.56 0L128 133.12L204.8 0h-47.36L128 51.2L97.92 0H50.56Z"></path></svg> | ||||||
| After Width: | Height: | Size: 496 B | 
							
								
								
									
										38
									
								
								src/components/HelloWorld.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								src/components/HelloWorld.vue
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | |||||||
|  | <script setup lang="ts"> | ||||||
|  | import { ref } from 'vue' | ||||||
|  |  | ||||||
|  | defineProps<{ msg: string }>() | ||||||
|  |  | ||||||
|  | const count = ref(0) | ||||||
|  | </script> | ||||||
|  |  | ||||||
|  | <template> | ||||||
|  |   <h1>{{ msg }}</h1> | ||||||
|  |  | ||||||
|  |   <div class="card"> | ||||||
|  |     <button type="button" @click="count++">count is {{ count }}</button> | ||||||
|  |     <p> | ||||||
|  |       Edit | ||||||
|  |       <code>components/HelloWorld.vue</code> to test HMR | ||||||
|  |     </p> | ||||||
|  |   </div> | ||||||
|  |  | ||||||
|  |   <p> | ||||||
|  |     Check out | ||||||
|  |     <a href="https://vuejs.org/guide/quick-start.html#local" target="_blank" | ||||||
|  |       >create-vue</a | ||||||
|  |     >, the official Vue + Vite starter | ||||||
|  |   </p> | ||||||
|  |   <p> | ||||||
|  |     Install | ||||||
|  |     <a href="https://github.com/vuejs/language-tools" target="_blank">Volar</a> | ||||||
|  |     in your IDE for a better DX | ||||||
|  |   </p> | ||||||
|  |   <p class="read-the-docs">Click on the Vite and Vue logos to learn more</p> | ||||||
|  | </template> | ||||||
|  |  | ||||||
|  | <style scoped> | ||||||
|  | .read-the-docs { | ||||||
|  |   color: #888; | ||||||
|  | } | ||||||
|  | </style> | ||||||
							
								
								
									
										13
									
								
								src/main.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								src/main.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | |||||||
|  | import { createApp } from 'vue' | ||||||
|  | import App from './App.vue' | ||||||
|  | import '@unocss/reset/tailwind.css' | ||||||
|  | import 'uno.css' | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * 解决tailwind的样式冲突 | ||||||
|  |  */ | ||||||
|  | const meta = document.createElement('meta') | ||||||
|  | meta.name = 'naive-ui-style' | ||||||
|  | document.head.appendChild(meta) | ||||||
|  |  | ||||||
|  | createApp(App).mount('#app') | ||||||
							
								
								
									
										25
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								tsconfig.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | |||||||
|  | { | ||||||
|  |   "compilerOptions": { | ||||||
|  |     "target": "ES2020", | ||||||
|  |     "useDefineForClassFields": true, | ||||||
|  |     "module": "ESNext", | ||||||
|  |     "lib": ["ES2020", "DOM", "DOM.Iterable"], | ||||||
|  |     "skipLibCheck": true, | ||||||
|  |  | ||||||
|  |     /* Bundler mode */ | ||||||
|  |     "moduleResolution": "bundler", | ||||||
|  |     "allowImportingTsExtensions": true, | ||||||
|  |     "resolveJsonModule": true, | ||||||
|  |     "isolatedModules": true, | ||||||
|  |     "noEmit": true, | ||||||
|  |     "jsx": "preserve", | ||||||
|  |  | ||||||
|  |     /* Linting */ | ||||||
|  |     "strict": true, | ||||||
|  |     "noUnusedLocals": true, | ||||||
|  |     "noUnusedParameters": true, | ||||||
|  |     "noFallthroughCasesInSwitch": true | ||||||
|  |   }, | ||||||
|  |   "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue","types/**/*.d.ts"], | ||||||
|  |   "references": [{ "path": "./tsconfig.node.json" }] | ||||||
|  | } | ||||||
							
								
								
									
										10
									
								
								tsconfig.node.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								tsconfig.node.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | |||||||
|  | { | ||||||
|  |   "compilerOptions": { | ||||||
|  |     "composite": true, | ||||||
|  |     "skipLibCheck": true, | ||||||
|  |     "module": "ESNext", | ||||||
|  |     "moduleResolution": "bundler", | ||||||
|  |     "allowSyntheticDefaultImports": true | ||||||
|  |   }, | ||||||
|  |   "include": ["vite.config.ts"] | ||||||
|  | } | ||||||
							
								
								
									
										311
									
								
								types/auto-imports.d.ts
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										311
									
								
								types/auto-imports.d.ts
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,311 @@ | |||||||
|  | /* eslint-disable */ | ||||||
|  | /* prettier-ignore */ | ||||||
|  | // @ts-nocheck | ||||||
|  | // Generated by unplugin-auto-import | ||||||
|  | export {} | ||||||
|  | declare global { | ||||||
|  |   const $: typeof import('vue/macros')['$'] | ||||||
|  |   const $$: typeof import('vue/macros')['$$'] | ||||||
|  |   const $computed: typeof import('vue/macros')['$computed'] | ||||||
|  |   const $customRef: typeof import('vue/macros')['$customRef'] | ||||||
|  |   const $ref: typeof import('vue/macros')['$ref'] | ||||||
|  |   const $shallowRef: typeof import('vue/macros')['$shallowRef'] | ||||||
|  |   const $toRef: typeof import('vue/macros')['$toRef'] | ||||||
|  |   const EffectScope: typeof import('vue')['EffectScope'] | ||||||
|  |   const acceptHMRUpdate: typeof import('pinia')['acceptHMRUpdate'] | ||||||
|  |   const asyncComputed: typeof import('@vueuse/core')['asyncComputed'] | ||||||
|  |   const autoResetRef: typeof import('@vueuse/core')['autoResetRef'] | ||||||
|  |   const computed: typeof import('vue')['computed'] | ||||||
|  |   const computedAsync: typeof import('@vueuse/core')['computedAsync'] | ||||||
|  |   const computedEager: typeof import('@vueuse/core')['computedEager'] | ||||||
|  |   const computedInject: typeof import('@vueuse/core')['computedInject'] | ||||||
|  |   const computedWithControl: typeof import('@vueuse/core')['computedWithControl'] | ||||||
|  |   const controlledComputed: typeof import('@vueuse/core')['controlledComputed'] | ||||||
|  |   const controlledRef: typeof import('@vueuse/core')['controlledRef'] | ||||||
|  |   const createApp: typeof import('vue')['createApp'] | ||||||
|  |   const createEventHook: typeof import('@vueuse/core')['createEventHook'] | ||||||
|  |   const createGlobalState: typeof import('@vueuse/core')['createGlobalState'] | ||||||
|  |   const createInjectionState: typeof import('@vueuse/core')['createInjectionState'] | ||||||
|  |   const createPinia: typeof import('pinia')['createPinia'] | ||||||
|  |   const createReactiveFn: typeof import('@vueuse/core')['createReactiveFn'] | ||||||
|  |   const createReusableTemplate: typeof import('@vueuse/core')['createReusableTemplate'] | ||||||
|  |   const createSharedComposable: typeof import('@vueuse/core')['createSharedComposable'] | ||||||
|  |   const createTemplatePromise: typeof import('@vueuse/core')['createTemplatePromise'] | ||||||
|  |   const createUnrefFn: typeof import('@vueuse/core')['createUnrefFn'] | ||||||
|  |   const customRef: typeof import('vue')['customRef'] | ||||||
|  |   const debouncedRef: typeof import('@vueuse/core')['debouncedRef'] | ||||||
|  |   const debouncedWatch: typeof import('@vueuse/core')['debouncedWatch'] | ||||||
|  |   const defineAsyncComponent: typeof import('vue')['defineAsyncComponent'] | ||||||
|  |   const defineComponent: typeof import('vue')['defineComponent'] | ||||||
|  |   const defineStore: typeof import('pinia')['defineStore'] | ||||||
|  |   const eagerComputed: typeof import('@vueuse/core')['eagerComputed'] | ||||||
|  |   const effectScope: typeof import('vue')['effectScope'] | ||||||
|  |   const extendRef: typeof import('@vueuse/core')['extendRef'] | ||||||
|  |   const getActivePinia: typeof import('pinia')['getActivePinia'] | ||||||
|  |   const getCurrentInstance: typeof import('vue')['getCurrentInstance'] | ||||||
|  |   const getCurrentScope: typeof import('vue')['getCurrentScope'] | ||||||
|  |   const h: typeof import('vue')['h'] | ||||||
|  |   const ignorableWatch: typeof import('@vueuse/core')['ignorableWatch'] | ||||||
|  |   const inject: typeof import('vue')['inject'] | ||||||
|  |   const isDefined: typeof import('@vueuse/core')['isDefined'] | ||||||
|  |   const isProxy: typeof import('vue')['isProxy'] | ||||||
|  |   const isReactive: typeof import('vue')['isReactive'] | ||||||
|  |   const isReadonly: typeof import('vue')['isReadonly'] | ||||||
|  |   const isRef: typeof import('vue')['isRef'] | ||||||
|  |   const makeDestructurable: typeof import('@vueuse/core')['makeDestructurable'] | ||||||
|  |   const mapActions: typeof import('pinia')['mapActions'] | ||||||
|  |   const mapGetters: typeof import('pinia')['mapGetters'] | ||||||
|  |   const mapState: typeof import('pinia')['mapState'] | ||||||
|  |   const mapStores: typeof import('pinia')['mapStores'] | ||||||
|  |   const mapWritableState: typeof import('pinia')['mapWritableState'] | ||||||
|  |   const markRaw: typeof import('vue')['markRaw'] | ||||||
|  |   const nextTick: typeof import('vue')['nextTick'] | ||||||
|  |   const onActivated: typeof import('vue')['onActivated'] | ||||||
|  |   const onBeforeMount: typeof import('vue')['onBeforeMount'] | ||||||
|  |   const onBeforeRouteLeave: typeof import('vue-router')['onBeforeRouteLeave'] | ||||||
|  |   const onBeforeRouteUpdate: typeof import('vue-router')['onBeforeRouteUpdate'] | ||||||
|  |   const onBeforeUnmount: typeof import('vue')['onBeforeUnmount'] | ||||||
|  |   const onBeforeUpdate: typeof import('vue')['onBeforeUpdate'] | ||||||
|  |   const onClickOutside: typeof import('@vueuse/core')['onClickOutside'] | ||||||
|  |   const onDeactivated: typeof import('vue')['onDeactivated'] | ||||||
|  |   const onErrorCaptured: typeof import('vue')['onErrorCaptured'] | ||||||
|  |   const onKeyStroke: typeof import('@vueuse/core')['onKeyStroke'] | ||||||
|  |   const onLongPress: typeof import('@vueuse/core')['onLongPress'] | ||||||
|  |   const onMounted: typeof import('vue')['onMounted'] | ||||||
|  |   const onRenderTracked: typeof import('vue')['onRenderTracked'] | ||||||
|  |   const onRenderTriggered: typeof import('vue')['onRenderTriggered'] | ||||||
|  |   const onScopeDispose: typeof import('vue')['onScopeDispose'] | ||||||
|  |   const onServerPrefetch: typeof import('vue')['onServerPrefetch'] | ||||||
|  |   const onStartTyping: typeof import('@vueuse/core')['onStartTyping'] | ||||||
|  |   const onUnmounted: typeof import('vue')['onUnmounted'] | ||||||
|  |   const onUpdated: typeof import('vue')['onUpdated'] | ||||||
|  |   const pausableWatch: typeof import('@vueuse/core')['pausableWatch'] | ||||||
|  |   const provide: typeof import('vue')['provide'] | ||||||
|  |   const reactify: typeof import('@vueuse/core')['reactify'] | ||||||
|  |   const reactifyObject: typeof import('@vueuse/core')['reactifyObject'] | ||||||
|  |   const reactive: typeof import('vue')['reactive'] | ||||||
|  |   const reactiveComputed: typeof import('@vueuse/core')['reactiveComputed'] | ||||||
|  |   const reactiveOmit: typeof import('@vueuse/core')['reactiveOmit'] | ||||||
|  |   const reactivePick: typeof import('@vueuse/core')['reactivePick'] | ||||||
|  |   const readonly: typeof import('vue')['readonly'] | ||||||
|  |   const ref: typeof import('vue')['ref'] | ||||||
|  |   const refAutoReset: typeof import('@vueuse/core')['refAutoReset'] | ||||||
|  |   const refDebounced: typeof import('@vueuse/core')['refDebounced'] | ||||||
|  |   const refDefault: typeof import('@vueuse/core')['refDefault'] | ||||||
|  |   const refThrottled: typeof import('@vueuse/core')['refThrottled'] | ||||||
|  |   const refWithControl: typeof import('@vueuse/core')['refWithControl'] | ||||||
|  |   const resolveComponent: typeof import('vue')['resolveComponent'] | ||||||
|  |   const resolveRef: typeof import('@vueuse/core')['resolveRef'] | ||||||
|  |   const resolveUnref: typeof import('@vueuse/core')['resolveUnref'] | ||||||
|  |   const setActivePinia: typeof import('pinia')['setActivePinia'] | ||||||
|  |   const setMapStoreSuffix: typeof import('pinia')['setMapStoreSuffix'] | ||||||
|  |   const shallowReactive: typeof import('vue')['shallowReactive'] | ||||||
|  |   const shallowReadonly: typeof import('vue')['shallowReadonly'] | ||||||
|  |   const shallowRef: typeof import('vue')['shallowRef'] | ||||||
|  |   const storeToRefs: typeof import('pinia')['storeToRefs'] | ||||||
|  |   const syncRef: typeof import('@vueuse/core')['syncRef'] | ||||||
|  |   const syncRefs: typeof import('@vueuse/core')['syncRefs'] | ||||||
|  |   const templateRef: typeof import('@vueuse/core')['templateRef'] | ||||||
|  |   const throttledRef: typeof import('@vueuse/core')['throttledRef'] | ||||||
|  |   const throttledWatch: typeof import('@vueuse/core')['throttledWatch'] | ||||||
|  |   const toRaw: typeof import('vue')['toRaw'] | ||||||
|  |   const toReactive: typeof import('@vueuse/core')['toReactive'] | ||||||
|  |   const toRef: typeof import('vue')['toRef'] | ||||||
|  |   const toRefs: typeof import('vue')['toRefs'] | ||||||
|  |   const toValue: typeof import('vue')['toValue'] | ||||||
|  |   const triggerRef: typeof import('vue')['triggerRef'] | ||||||
|  |   const tryOnBeforeMount: typeof import('@vueuse/core')['tryOnBeforeMount'] | ||||||
|  |   const tryOnBeforeUnmount: typeof import('@vueuse/core')['tryOnBeforeUnmount'] | ||||||
|  |   const tryOnMounted: typeof import('@vueuse/core')['tryOnMounted'] | ||||||
|  |   const tryOnScopeDispose: typeof import('@vueuse/core')['tryOnScopeDispose'] | ||||||
|  |   const tryOnUnmounted: typeof import('@vueuse/core')['tryOnUnmounted'] | ||||||
|  |   const unref: typeof import('vue')['unref'] | ||||||
|  |   const unrefElement: typeof import('@vueuse/core')['unrefElement'] | ||||||
|  |   const until: typeof import('@vueuse/core')['until'] | ||||||
|  |   const useActiveElement: typeof import('@vueuse/core')['useActiveElement'] | ||||||
|  |   const useAnimate: typeof import('@vueuse/core')['useAnimate'] | ||||||
|  |   const useArrayDifference: typeof import('@vueuse/core')['useArrayDifference'] | ||||||
|  |   const useArrayEvery: typeof import('@vueuse/core')['useArrayEvery'] | ||||||
|  |   const useArrayFilter: typeof import('@vueuse/core')['useArrayFilter'] | ||||||
|  |   const useArrayFind: typeof import('@vueuse/core')['useArrayFind'] | ||||||
|  |   const useArrayFindIndex: typeof import('@vueuse/core')['useArrayFindIndex'] | ||||||
|  |   const useArrayFindLast: typeof import('@vueuse/core')['useArrayFindLast'] | ||||||
|  |   const useArrayIncludes: typeof import('@vueuse/core')['useArrayIncludes'] | ||||||
|  |   const useArrayJoin: typeof import('@vueuse/core')['useArrayJoin'] | ||||||
|  |   const useArrayMap: typeof import('@vueuse/core')['useArrayMap'] | ||||||
|  |   const useArrayReduce: typeof import('@vueuse/core')['useArrayReduce'] | ||||||
|  |   const useArraySome: typeof import('@vueuse/core')['useArraySome'] | ||||||
|  |   const useArrayUnique: typeof import('@vueuse/core')['useArrayUnique'] | ||||||
|  |   const useAsyncQueue: typeof import('@vueuse/core')['useAsyncQueue'] | ||||||
|  |   const useAsyncState: typeof import('@vueuse/core')['useAsyncState'] | ||||||
|  |   const useAttrs: typeof import('vue')['useAttrs'] | ||||||
|  |   const useBase64: typeof import('@vueuse/core')['useBase64'] | ||||||
|  |   const useBattery: typeof import('@vueuse/core')['useBattery'] | ||||||
|  |   const useBluetooth: typeof import('@vueuse/core')['useBluetooth'] | ||||||
|  |   const useBreakpoints: typeof import('@vueuse/core')['useBreakpoints'] | ||||||
|  |   const useBroadcastChannel: typeof import('@vueuse/core')['useBroadcastChannel'] | ||||||
|  |   const useBrowserLocation: typeof import('@vueuse/core')['useBrowserLocation'] | ||||||
|  |   const useCached: typeof import('@vueuse/core')['useCached'] | ||||||
|  |   const useClipboard: typeof import('@vueuse/core')['useClipboard'] | ||||||
|  |   const useCloned: typeof import('@vueuse/core')['useCloned'] | ||||||
|  |   const useColorMode: typeof import('@vueuse/core')['useColorMode'] | ||||||
|  |   const useConfirmDialog: typeof import('@vueuse/core')['useConfirmDialog'] | ||||||
|  |   const useCounter: typeof import('@vueuse/core')['useCounter'] | ||||||
|  |   const useCssModule: typeof import('vue')['useCssModule'] | ||||||
|  |   const useCssVar: typeof import('@vueuse/core')['useCssVar'] | ||||||
|  |   const useCssVars: typeof import('vue')['useCssVars'] | ||||||
|  |   const useCurrentElement: typeof import('@vueuse/core')['useCurrentElement'] | ||||||
|  |   const useCycleList: typeof import('@vueuse/core')['useCycleList'] | ||||||
|  |   const useDark: typeof import('@vueuse/core')['useDark'] | ||||||
|  |   const useDateFormat: typeof import('@vueuse/core')['useDateFormat'] | ||||||
|  |   const useDebounce: typeof import('@vueuse/core')['useDebounce'] | ||||||
|  |   const useDebounceFn: typeof import('@vueuse/core')['useDebounceFn'] | ||||||
|  |   const useDebouncedRefHistory: typeof import('@vueuse/core')['useDebouncedRefHistory'] | ||||||
|  |   const useDeviceMotion: typeof import('@vueuse/core')['useDeviceMotion'] | ||||||
|  |   const useDeviceOrientation: typeof import('@vueuse/core')['useDeviceOrientation'] | ||||||
|  |   const useDevicePixelRatio: typeof import('@vueuse/core')['useDevicePixelRatio'] | ||||||
|  |   const useDevicesList: typeof import('@vueuse/core')['useDevicesList'] | ||||||
|  |   const useDialog: typeof import('naive-ui')['useDialog'] | ||||||
|  |   const useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia'] | ||||||
|  |   const useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility'] | ||||||
|  |   const useDraggable: typeof import('@vueuse/core')['useDraggable'] | ||||||
|  |   const useDropZone: typeof import('@vueuse/core')['useDropZone'] | ||||||
|  |   const useElementBounding: typeof import('@vueuse/core')['useElementBounding'] | ||||||
|  |   const useElementByPoint: typeof import('@vueuse/core')['useElementByPoint'] | ||||||
|  |   const useElementHover: typeof import('@vueuse/core')['useElementHover'] | ||||||
|  |   const useElementSize: typeof import('@vueuse/core')['useElementSize'] | ||||||
|  |   const useElementVisibility: typeof import('@vueuse/core')['useElementVisibility'] | ||||||
|  |   const useEventBus: typeof import('@vueuse/core')['useEventBus'] | ||||||
|  |   const useEventListener: typeof import('@vueuse/core')['useEventListener'] | ||||||
|  |   const useEventSource: typeof import('@vueuse/core')['useEventSource'] | ||||||
|  |   const useEyeDropper: typeof import('@vueuse/core')['useEyeDropper'] | ||||||
|  |   const useFavicon: typeof import('@vueuse/core')['useFavicon'] | ||||||
|  |   const useFetch: typeof import('@vueuse/core')['useFetch'] | ||||||
|  |   const useFileDialog: typeof import('@vueuse/core')['useFileDialog'] | ||||||
|  |   const useFileSystemAccess: typeof import('@vueuse/core')['useFileSystemAccess'] | ||||||
|  |   const useFocus: typeof import('@vueuse/core')['useFocus'] | ||||||
|  |   const useFocusWithin: typeof import('@vueuse/core')['useFocusWithin'] | ||||||
|  |   const useFps: typeof import('@vueuse/core')['useFps'] | ||||||
|  |   const useFullscreen: typeof import('@vueuse/core')['useFullscreen'] | ||||||
|  |   const useGamepad: typeof import('@vueuse/core')['useGamepad'] | ||||||
|  |   const useGeolocation: typeof import('@vueuse/core')['useGeolocation'] | ||||||
|  |   const useI18n: typeof import('vue-i18n')['useI18n'] | ||||||
|  |   const useIdle: typeof import('@vueuse/core')['useIdle'] | ||||||
|  |   const useImage: typeof import('@vueuse/core')['useImage'] | ||||||
|  |   const useInfiniteScroll: typeof import('@vueuse/core')['useInfiniteScroll'] | ||||||
|  |   const useIntersectionObserver: typeof import('@vueuse/core')['useIntersectionObserver'] | ||||||
|  |   const useInterval: typeof import('@vueuse/core')['useInterval'] | ||||||
|  |   const useIntervalFn: typeof import('@vueuse/core')['useIntervalFn'] | ||||||
|  |   const useKeyModifier: typeof import('@vueuse/core')['useKeyModifier'] | ||||||
|  |   const useLastChanged: typeof import('@vueuse/core')['useLastChanged'] | ||||||
|  |   const useLink: typeof import('vue-router')['useLink'] | ||||||
|  |   const useLoadingBar: typeof import('naive-ui')['useLoadingBar'] | ||||||
|  |   const useLocalStorage: typeof import('@vueuse/core')['useLocalStorage'] | ||||||
|  |   const useMagicKeys: typeof import('@vueuse/core')['useMagicKeys'] | ||||||
|  |   const useManualRefHistory: typeof import('@vueuse/core')['useManualRefHistory'] | ||||||
|  |   const useMediaControls: typeof import('@vueuse/core')['useMediaControls'] | ||||||
|  |   const useMediaQuery: typeof import('@vueuse/core')['useMediaQuery'] | ||||||
|  |   const useMemoize: typeof import('@vueuse/core')['useMemoize'] | ||||||
|  |   const useMemory: typeof import('@vueuse/core')['useMemory'] | ||||||
|  |   const useMessage: typeof import('naive-ui')['useMessage'] | ||||||
|  |   const useMounted: typeof import('@vueuse/core')['useMounted'] | ||||||
|  |   const useMouse: typeof import('@vueuse/core')['useMouse'] | ||||||
|  |   const useMouseInElement: typeof import('@vueuse/core')['useMouseInElement'] | ||||||
|  |   const useMousePressed: typeof import('@vueuse/core')['useMousePressed'] | ||||||
|  |   const useMutationObserver: typeof import('@vueuse/core')['useMutationObserver'] | ||||||
|  |   const useNavigatorLanguage: typeof import('@vueuse/core')['useNavigatorLanguage'] | ||||||
|  |   const useNetwork: typeof import('@vueuse/core')['useNetwork'] | ||||||
|  |   const useNotification: typeof import('naive-ui')['useNotification'] | ||||||
|  |   const useNow: typeof import('@vueuse/core')['useNow'] | ||||||
|  |   const useObjectUrl: typeof import('@vueuse/core')['useObjectUrl'] | ||||||
|  |   const useOffsetPagination: typeof import('@vueuse/core')['useOffsetPagination'] | ||||||
|  |   const useOnline: typeof import('@vueuse/core')['useOnline'] | ||||||
|  |   const usePageLeave: typeof import('@vueuse/core')['usePageLeave'] | ||||||
|  |   const useParallax: typeof import('@vueuse/core')['useParallax'] | ||||||
|  |   const useParentElement: typeof import('@vueuse/core')['useParentElement'] | ||||||
|  |   const usePerformanceObserver: typeof import('@vueuse/core')['usePerformanceObserver'] | ||||||
|  |   const usePermission: typeof import('@vueuse/core')['usePermission'] | ||||||
|  |   const usePointer: typeof import('@vueuse/core')['usePointer'] | ||||||
|  |   const usePointerLock: typeof import('@vueuse/core')['usePointerLock'] | ||||||
|  |   const usePointerSwipe: typeof import('@vueuse/core')['usePointerSwipe'] | ||||||
|  |   const usePreferredColorScheme: typeof import('@vueuse/core')['usePreferredColorScheme'] | ||||||
|  |   const usePreferredContrast: typeof import('@vueuse/core')['usePreferredContrast'] | ||||||
|  |   const usePreferredDark: typeof import('@vueuse/core')['usePreferredDark'] | ||||||
|  |   const usePreferredLanguages: typeof import('@vueuse/core')['usePreferredLanguages'] | ||||||
|  |   const usePreferredReducedMotion: typeof import('@vueuse/core')['usePreferredReducedMotion'] | ||||||
|  |   const usePrevious: typeof import('@vueuse/core')['usePrevious'] | ||||||
|  |   const useRafFn: typeof import('@vueuse/core')['useRafFn'] | ||||||
|  |   const useRefHistory: typeof import('@vueuse/core')['useRefHistory'] | ||||||
|  |   const useResizeObserver: typeof import('@vueuse/core')['useResizeObserver'] | ||||||
|  |   const useRoute: typeof import('vue-router')['useRoute'] | ||||||
|  |   const useRouter: typeof import('vue-router')['useRouter'] | ||||||
|  |   const useScreenOrientation: typeof import('@vueuse/core')['useScreenOrientation'] | ||||||
|  |   const useScreenSafeArea: typeof import('@vueuse/core')['useScreenSafeArea'] | ||||||
|  |   const useScriptTag: typeof import('@vueuse/core')['useScriptTag'] | ||||||
|  |   const useScroll: typeof import('@vueuse/core')['useScroll'] | ||||||
|  |   const useScrollLock: typeof import('@vueuse/core')['useScrollLock'] | ||||||
|  |   const useSessionStorage: typeof import('@vueuse/core')['useSessionStorage'] | ||||||
|  |   const useShare: typeof import('@vueuse/core')['useShare'] | ||||||
|  |   const useSlots: typeof import('vue')['useSlots'] | ||||||
|  |   const useSorted: typeof import('@vueuse/core')['useSorted'] | ||||||
|  |   const useSpeechRecognition: typeof import('@vueuse/core')['useSpeechRecognition'] | ||||||
|  |   const useSpeechSynthesis: typeof import('@vueuse/core')['useSpeechSynthesis'] | ||||||
|  |   const useStepper: typeof import('@vueuse/core')['useStepper'] | ||||||
|  |   const useStorage: typeof import('@vueuse/core')['useStorage'] | ||||||
|  |   const useStorageAsync: typeof import('@vueuse/core')['useStorageAsync'] | ||||||
|  |   const useStyleTag: typeof import('@vueuse/core')['useStyleTag'] | ||||||
|  |   const useSupported: typeof import('@vueuse/core')['useSupported'] | ||||||
|  |   const useSwipe: typeof import('@vueuse/core')['useSwipe'] | ||||||
|  |   const useTemplateRefsList: typeof import('@vueuse/core')['useTemplateRefsList'] | ||||||
|  |   const useTextDirection: typeof import('@vueuse/core')['useTextDirection'] | ||||||
|  |   const useTextSelection: typeof import('@vueuse/core')['useTextSelection'] | ||||||
|  |   const useTextareaAutosize: typeof import('@vueuse/core')['useTextareaAutosize'] | ||||||
|  |   const useThrottle: typeof import('@vueuse/core')['useThrottle'] | ||||||
|  |   const useThrottleFn: typeof import('@vueuse/core')['useThrottleFn'] | ||||||
|  |   const useThrottledRefHistory: typeof import('@vueuse/core')['useThrottledRefHistory'] | ||||||
|  |   const useTimeAgo: typeof import('@vueuse/core')['useTimeAgo'] | ||||||
|  |   const useTimeout: typeof import('@vueuse/core')['useTimeout'] | ||||||
|  |   const useTimeoutFn: typeof import('@vueuse/core')['useTimeoutFn'] | ||||||
|  |   const useTimeoutPoll: typeof import('@vueuse/core')['useTimeoutPoll'] | ||||||
|  |   const useTimestamp: typeof import('@vueuse/core')['useTimestamp'] | ||||||
|  |   const useTitle: typeof import('@vueuse/core')['useTitle'] | ||||||
|  |   const useToNumber: typeof import('@vueuse/core')['useToNumber'] | ||||||
|  |   const useToString: typeof import('@vueuse/core')['useToString'] | ||||||
|  |   const useToggle: typeof import('@vueuse/core')['useToggle'] | ||||||
|  |   const useTransition: typeof import('@vueuse/core')['useTransition'] | ||||||
|  |   const useUrlSearchParams: typeof import('@vueuse/core')['useUrlSearchParams'] | ||||||
|  |   const useUserMedia: typeof import('@vueuse/core')['useUserMedia'] | ||||||
|  |   const useVModel: typeof import('@vueuse/core')['useVModel'] | ||||||
|  |   const useVModels: typeof import('@vueuse/core')['useVModels'] | ||||||
|  |   const useVibrate: typeof import('@vueuse/core')['useVibrate'] | ||||||
|  |   const useVirtualList: typeof import('@vueuse/core')['useVirtualList'] | ||||||
|  |   const useWakeLock: typeof import('@vueuse/core')['useWakeLock'] | ||||||
|  |   const useWebNotification: typeof import('@vueuse/core')['useWebNotification'] | ||||||
|  |   const useWebSocket: typeof import('@vueuse/core')['useWebSocket'] | ||||||
|  |   const useWebWorker: typeof import('@vueuse/core')['useWebWorker'] | ||||||
|  |   const useWebWorkerFn: typeof import('@vueuse/core')['useWebWorkerFn'] | ||||||
|  |   const useWindowFocus: typeof import('@vueuse/core')['useWindowFocus'] | ||||||
|  |   const useWindowScroll: typeof import('@vueuse/core')['useWindowScroll'] | ||||||
|  |   const useWindowSize: typeof import('@vueuse/core')['useWindowSize'] | ||||||
|  |   const watch: typeof import('vue')['watch'] | ||||||
|  |   const watchArray: typeof import('@vueuse/core')['watchArray'] | ||||||
|  |   const watchAtMost: typeof import('@vueuse/core')['watchAtMost'] | ||||||
|  |   const watchDebounced: typeof import('@vueuse/core')['watchDebounced'] | ||||||
|  |   const watchDeep: typeof import('@vueuse/core')['watchDeep'] | ||||||
|  |   const watchEffect: typeof import('vue')['watchEffect'] | ||||||
|  |   const watchIgnorable: typeof import('@vueuse/core')['watchIgnorable'] | ||||||
|  |   const watchImmediate: typeof import('@vueuse/core')['watchImmediate'] | ||||||
|  |   const watchOnce: typeof import('@vueuse/core')['watchOnce'] | ||||||
|  |   const watchPausable: typeof import('@vueuse/core')['watchPausable'] | ||||||
|  |   const watchPostEffect: typeof import('vue')['watchPostEffect'] | ||||||
|  |   const watchSyncEffect: typeof import('vue')['watchSyncEffect'] | ||||||
|  |   const watchThrottled: typeof import('@vueuse/core')['watchThrottled'] | ||||||
|  |   const watchTriggerable: typeof import('@vueuse/core')['watchTriggerable'] | ||||||
|  |   const watchWithFilter: typeof import('@vueuse/core')['watchWithFilter'] | ||||||
|  |   const whenever: typeof import('@vueuse/core')['whenever'] | ||||||
|  | } | ||||||
|  | // for type re-export | ||||||
|  | declare global { | ||||||
|  |   // @ts-ignore | ||||||
|  |   export type { Component, ComponentPublicInstance, ComputedRef, InjectionKey, PropType, Ref, VNode } from 'vue' | ||||||
|  | } | ||||||
							
								
								
									
										14
									
								
								types/components.d.ts
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								types/components.d.ts
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | |||||||
|  | /* eslint-disable */ | ||||||
|  | /* prettier-ignore */ | ||||||
|  | // @ts-nocheck | ||||||
|  | // Generated by unplugin-vue-components | ||||||
|  | // Read more: https://github.com/vuejs/core/pull/3399 | ||||||
|  | export {} | ||||||
|  |  | ||||||
|  | declare module 'vue' { | ||||||
|  |   export interface GlobalComponents { | ||||||
|  |     HelloWorld: typeof import('./../src/components/HelloWorld.vue')['default'] | ||||||
|  |     RouterLink: typeof import('vue-router')['RouterLink'] | ||||||
|  |     RouterView: typeof import('vue-router')['RouterView'] | ||||||
|  |   } | ||||||
|  | } | ||||||
							
								
								
									
										1
									
								
								types/env.d.ts
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								types/env.d.ts
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | /// <reference types="vite/client" /> | ||||||
							
								
								
									
										34
									
								
								unocss.config.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								unocss.config.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | |||||||
|  | import { | ||||||
|  |   defineConfig, | ||||||
|  |   presetAttributify, | ||||||
|  |   presetIcons, | ||||||
|  |   presetTypography, | ||||||
|  |   presetUno, | ||||||
|  |   presetWebFonts, | ||||||
|  |   transformerDirectives, | ||||||
|  |   transformerVariantGroup, | ||||||
|  | } from 'unocss' | ||||||
|  |  | ||||||
|  | export default defineConfig({ | ||||||
|  |   shortcuts: [], | ||||||
|  |   presets: [ | ||||||
|  |     presetUno(), // 默认wind预设 | ||||||
|  |     presetAttributify(), // class拆分属性预设 | ||||||
|  |     presetTypography(), // 排版预设 | ||||||
|  |     presetIcons({ // 图标库预设 | ||||||
|  |       scale: 1.2, | ||||||
|  |       warn: true, | ||||||
|  |     }), | ||||||
|  |     presetWebFonts({ // 网络字体预设 | ||||||
|  |       fonts: { | ||||||
|  |         sans: 'DM Sans', | ||||||
|  |         serif: 'DM Serif Display', | ||||||
|  |         mono: 'DM Mono', | ||||||
|  |       }, | ||||||
|  |     }), | ||||||
|  |   ], | ||||||
|  |   transformers: [ | ||||||
|  |     transformerVariantGroup(), // windi CSS的变体组功能 | ||||||
|  |     transformerDirectives(), //  @apply @screen theme()转换器 | ||||||
|  |   ], | ||||||
|  | }) | ||||||
							
								
								
									
										46
									
								
								vite.config.ts
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								vite.config.ts
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | |||||||
|  | import { defineConfig } from 'vite' | ||||||
|  | import vue from '@vitejs/plugin-vue' | ||||||
|  | import AutoImport from 'unplugin-auto-import/vite' | ||||||
|  | import Components from 'unplugin-vue-components/vite' | ||||||
|  | import { NaiveUiResolver } from 'unplugin-vue-components/resolvers' | ||||||
|  | import Unocss from 'unocss/vite' | ||||||
|  |  | ||||||
|  | // https://vitejs.dev/config/ | ||||||
|  | export default defineConfig({ | ||||||
|  |   plugins: [ | ||||||
|  |     vue({ | ||||||
|  |       reactivityTransform: true, | ||||||
|  |     }), | ||||||
|  |     AutoImport({ | ||||||
|  |       imports: [ | ||||||
|  |         'vue', | ||||||
|  |         'vue/macros', | ||||||
|  |         'vue-router', | ||||||
|  |         'vue-i18n', | ||||||
|  |         '@vueuse/core', | ||||||
|  |         'pinia', | ||||||
|  |         { | ||||||
|  |           'naive-ui': [ | ||||||
|  |             'useDialog', | ||||||
|  |             'useMessage', | ||||||
|  |             'useNotification', | ||||||
|  |             'useLoadingBar', | ||||||
|  |           ], | ||||||
|  |         }, | ||||||
|  |       ], | ||||||
|  |       dts: 'types/auto-imports.d.ts', | ||||||
|  |       dirs: [ | ||||||
|  |         'src/stores', | ||||||
|  |         'src/composables', | ||||||
|  |       ], | ||||||
|  |     }), | ||||||
|  |     Components({ | ||||||
|  |       resolvers: [NaiveUiResolver()], | ||||||
|  |       dts: 'types/components.d.ts', | ||||||
|  |       dirs: [ | ||||||
|  |         'src/components', | ||||||
|  |       ], | ||||||
|  |     }), | ||||||
|  |     Unocss(), | ||||||
|  |   ], | ||||||
|  | }) | ||||||
		Reference in New Issue
	
	Block a user