mirror of
https://github.com/ArthurDanjou/artdanj-fallback.git
synced 2026-01-31 04:29:24 +01:00
Initial commit
This commit is contained in:
9
.gitignore
vendored
Normal file
9
.gitignore
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
.DS_Store
|
||||||
|
.vite-ssg-dist
|
||||||
|
.vite-ssg-temp
|
||||||
|
*.local
|
||||||
|
dist
|
||||||
|
dist-ssr
|
||||||
|
node_modules
|
||||||
|
.idea/
|
||||||
|
*.log
|
||||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2020-PRESENT Anthony Fu
|
||||||
|
|
||||||
|
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.
|
||||||
87
README.md
Normal file
87
README.md
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
<p align='center'>
|
||||||
|
<img src='https://user-images.githubusercontent.com/11247099/111864893-a457fd00-899e-11eb-9f05-f4b88987541d.png' alt='Vitesse - Opinionated Vite Starter Template' width='600'/>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h6 align='center'>
|
||||||
|
<a href="https://vitesse-lite.netlify.app/">Live Demo</a>
|
||||||
|
</h6>
|
||||||
|
|
||||||
|
<h5 align='center'>
|
||||||
|
<b>Lightweight version of <a href="https://github.com/antfu/vitesse">Vitesse</a></b>
|
||||||
|
</h5>
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<p align='center'>
|
||||||
|
<b>English</b> | <a href="https://github.com/antfu/vitesse-lite/blob/main/README.zh-CN.md">简体中文</a>
|
||||||
|
<!-- Contributors: Thanks for geting interested, however we DON'T accept new transitions to the README, thanks. -->
|
||||||
|
</p>
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- ⚡️ [Vue 3](https://github.com/vuejs/vue-next), [Vite 2](https://github.com/vitejs/vite), [pnpm](https://pnpm.js.org/), [ESBuild](https://github.com/evanw/esbuild) - born with fastness
|
||||||
|
|
||||||
|
- 🗂 [File based routing](./src/pages)
|
||||||
|
|
||||||
|
- 📦 [Components auto importing](./src/components)
|
||||||
|
|
||||||
|
- 🎨 [UnoCSS](https://github.com/antfu/unocss) - The instant on-demand atomic CSS engine.
|
||||||
|
|
||||||
|
- 😃 Use icons from any icon sets in [Pure CSS](https://github.com/antfu/unocss/tree/main/packages/preset-icons)
|
||||||
|
|
||||||
|
- 🔥 Use the [new `<script setup>` style](https://github.com/vuejs/rfcs/pull/227)
|
||||||
|
|
||||||
|
- ✅ Use [Vitest](http://vitest.dev/) for unit and components testing
|
||||||
|
|
||||||
|
- 🦾 TypeScript, of course
|
||||||
|
|
||||||
|
- ☁️ Deploy on Netlify, zero-config
|
||||||
|
|
||||||
|
|
||||||
|
<br>
|
||||||
|
|
||||||
|
See [Vitesse](https://github.com/antfu/vitesse) for full featureset.
|
||||||
|
|
||||||
|
|
||||||
|
## Dropped Features from [Vitesse](https://github.com/antfu/vitesse)
|
||||||
|
|
||||||
|
- ~~i18n~~
|
||||||
|
- ~~Layouts~~
|
||||||
|
- ~~SSG~~
|
||||||
|
- ~~PWA~~
|
||||||
|
- ~~Markdown~~
|
||||||
|
|
||||||
|
## Pre-packed
|
||||||
|
|
||||||
|
### UI Frameworks
|
||||||
|
|
||||||
|
- [UnoCSS](https://github.com/antfu/unocss) - The instant on-demand atomic CSS engine.
|
||||||
|
|
||||||
|
### Icons
|
||||||
|
|
||||||
|
- [Iconify](https://iconify.design) - use icons from any icon sets [🔍Icônes](https://icones.netlify.app/)
|
||||||
|
- [Pure CSS Icons via UnoCSS](https://github.com/antfu/unocss/tree/main/packages/preset-icons)
|
||||||
|
|
||||||
|
### Plugins
|
||||||
|
|
||||||
|
- [Vue Router](https://github.com/vuejs/vue-router)
|
||||||
|
- [`vite-plugin-pages`](https://github.com/hannoeru/vite-plugin-pages) - file system based routing
|
||||||
|
- [`unplugin-auto-import`](https://github.com/antfu/unplugin-auto-import) - Directly use Vue Composition API and others without importing
|
||||||
|
- [`unplugin-vue-components`](https://github.com/antfu/unplugin-vue-components) - components auto import
|
||||||
|
- [VueUse](https://github.com/antfu/vueuse) - collection of useful composition APIs
|
||||||
|
|
||||||
|
## Try it now!
|
||||||
|
|
||||||
|
### GitHub Template
|
||||||
|
|
||||||
|
[Create a repo from this template on GitHub](https://github.com/antfu/vitesse-lite/generate).
|
||||||
|
|
||||||
|
### Clone to local
|
||||||
|
|
||||||
|
If you prefer to do it manually with the cleaner git history
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx degit antfu/vitesse-lite my-vitesse-app
|
||||||
|
cd my-vitesse-app
|
||||||
|
pnpm i # If you don't have pnpm installed, run: npm install -g pnpm
|
||||||
|
```
|
||||||
497
auto-imports.d.ts
vendored
Normal file
497
auto-imports.d.ts
vendored
Normal file
@@ -0,0 +1,497 @@
|
|||||||
|
// 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 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 createReactiveFn: typeof import('@vueuse/core')['createReactiveFn']
|
||||||
|
const createSharedComposable: typeof import('@vueuse/core')['createSharedComposable']
|
||||||
|
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 eagerComputed: typeof import('@vueuse/core')['eagerComputed']
|
||||||
|
const effectScope: typeof import('vue')['effectScope']
|
||||||
|
const extendRef: typeof import('@vueuse/core')['extendRef']
|
||||||
|
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 isDark: typeof import('./src/composables/dark')['isDark']
|
||||||
|
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 logicAnd: typeof import('@vueuse/core')['logicAnd']
|
||||||
|
const logicNot: typeof import('@vueuse/core')['logicNot']
|
||||||
|
const logicOr: typeof import('@vueuse/core')['logicOr']
|
||||||
|
const makeDestructurable: typeof import('@vueuse/core')['makeDestructurable']
|
||||||
|
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 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 shallowReactive: typeof import('vue')['shallowReactive']
|
||||||
|
const shallowReadonly: typeof import('vue')['shallowReadonly']
|
||||||
|
const shallowRef: typeof import('vue')['shallowRef']
|
||||||
|
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 toggleDark: typeof import('./src/composables/dark')['toggleDark']
|
||||||
|
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 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 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 useClamp: typeof import('@vueuse/core')['useClamp']
|
||||||
|
const useClipboard: typeof import('@vueuse/core')['useClipboard']
|
||||||
|
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 useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia']
|
||||||
|
const useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility']
|
||||||
|
const useDraggable: typeof import('@vueuse/core')['useDraggable']
|
||||||
|
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 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 useIdle: typeof import('@vueuse/core')['useIdle']
|
||||||
|
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 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 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 useNow: typeof import('@vueuse/core')['useNow']
|
||||||
|
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 usePermission: typeof import('@vueuse/core')['usePermission']
|
||||||
|
const usePointer: typeof import('@vueuse/core')['usePointer']
|
||||||
|
const usePointerSwipe: typeof import('@vueuse/core')['usePointerSwipe']
|
||||||
|
const usePreferredColorScheme: typeof import('@vueuse/core')['usePreferredColorScheme']
|
||||||
|
const usePreferredDark: typeof import('@vueuse/core')['usePreferredDark']
|
||||||
|
const usePreferredLanguages: typeof import('@vueuse/core')['usePreferredLanguages']
|
||||||
|
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 useSpeechRecognition: typeof import('@vueuse/core')['useSpeechRecognition']
|
||||||
|
const useSpeechSynthesis: typeof import('@vueuse/core')['useSpeechSynthesis']
|
||||||
|
const useStorage: typeof import('@vueuse/core')['useStorage']
|
||||||
|
const useStorageAsync: typeof import('@vueuse/core')['useStorageAsync']
|
||||||
|
const useStyleTag: typeof import('@vueuse/core')['useStyleTag']
|
||||||
|
const useSwipe: typeof import('@vueuse/core')['useSwipe']
|
||||||
|
const useTemplateRefsList: typeof import('@vueuse/core')['useTemplateRefsList']
|
||||||
|
const useTextSelection: typeof import('@vueuse/core')['useTextSelection']
|
||||||
|
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 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 watchAtMost: typeof import('@vueuse/core')['watchAtMost']
|
||||||
|
const watchDebounced: typeof import('@vueuse/core')['watchDebounced']
|
||||||
|
const watchEffect: typeof import('vue')['watchEffect']
|
||||||
|
const watchIgnorable: typeof import('@vueuse/core')['watchIgnorable']
|
||||||
|
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 watchWithFilter: typeof import('@vueuse/core')['watchWithFilter']
|
||||||
|
const whenever: typeof import('@vueuse/core')['whenever']
|
||||||
|
}
|
||||||
|
// for vue template auto import
|
||||||
|
declare module 'vue' {
|
||||||
|
interface ComponentCustomProperties {
|
||||||
|
$$: typeof import('vue/macros')['$$']
|
||||||
|
$: typeof import('vue/macros')['$']
|
||||||
|
$computed: typeof import('vue/macros')['$computed']
|
||||||
|
$customRef: typeof import('vue/macros')['$customRef']
|
||||||
|
$ref: typeof import('vue/macros')['$ref']
|
||||||
|
$shallowRef: typeof import('vue/macros')['$shallowRef']
|
||||||
|
$toRef: typeof import('vue/macros')['$toRef']
|
||||||
|
EffectScope: typeof import('vue')['EffectScope']
|
||||||
|
asyncComputed: typeof import('@vueuse/core')['asyncComputed']
|
||||||
|
autoResetRef: typeof import('@vueuse/core')['autoResetRef']
|
||||||
|
computed: typeof import('vue')['computed']
|
||||||
|
computedAsync: typeof import('@vueuse/core')['computedAsync']
|
||||||
|
computedEager: typeof import('@vueuse/core')['computedEager']
|
||||||
|
computedInject: typeof import('@vueuse/core')['computedInject']
|
||||||
|
computedWithControl: typeof import('@vueuse/core')['computedWithControl']
|
||||||
|
controlledComputed: typeof import('@vueuse/core')['controlledComputed']
|
||||||
|
controlledRef: typeof import('@vueuse/core')['controlledRef']
|
||||||
|
createApp: typeof import('vue')['createApp']
|
||||||
|
createEventHook: typeof import('@vueuse/core')['createEventHook']
|
||||||
|
createGlobalState: typeof import('@vueuse/core')['createGlobalState']
|
||||||
|
createInjectionState: typeof import('@vueuse/core')['createInjectionState']
|
||||||
|
createReactiveFn: typeof import('@vueuse/core')['createReactiveFn']
|
||||||
|
createSharedComposable: typeof import('@vueuse/core')['createSharedComposable']
|
||||||
|
createUnrefFn: typeof import('@vueuse/core')['createUnrefFn']
|
||||||
|
customRef: typeof import('vue')['customRef']
|
||||||
|
debouncedRef: typeof import('@vueuse/core')['debouncedRef']
|
||||||
|
debouncedWatch: typeof import('@vueuse/core')['debouncedWatch']
|
||||||
|
defineAsyncComponent: typeof import('vue')['defineAsyncComponent']
|
||||||
|
defineComponent: typeof import('vue')['defineComponent']
|
||||||
|
eagerComputed: typeof import('@vueuse/core')['eagerComputed']
|
||||||
|
effectScope: typeof import('vue')['effectScope']
|
||||||
|
extendRef: typeof import('@vueuse/core')['extendRef']
|
||||||
|
getCurrentInstance: typeof import('vue')['getCurrentInstance']
|
||||||
|
getCurrentScope: typeof import('vue')['getCurrentScope']
|
||||||
|
h: typeof import('vue')['h']
|
||||||
|
ignorableWatch: typeof import('@vueuse/core')['ignorableWatch']
|
||||||
|
inject: typeof import('vue')['inject']
|
||||||
|
isDark: typeof import('./src/composables/dark')['isDark']
|
||||||
|
isDefined: typeof import('@vueuse/core')['isDefined']
|
||||||
|
isProxy: typeof import('vue')['isProxy']
|
||||||
|
isReactive: typeof import('vue')['isReactive']
|
||||||
|
isReadonly: typeof import('vue')['isReadonly']
|
||||||
|
isRef: typeof import('vue')['isRef']
|
||||||
|
logicAnd: typeof import('@vueuse/core')['logicAnd']
|
||||||
|
logicNot: typeof import('@vueuse/core')['logicNot']
|
||||||
|
logicOr: typeof import('@vueuse/core')['logicOr']
|
||||||
|
makeDestructurable: typeof import('@vueuse/core')['makeDestructurable']
|
||||||
|
markRaw: typeof import('vue')['markRaw']
|
||||||
|
nextTick: typeof import('vue')['nextTick']
|
||||||
|
onActivated: typeof import('vue')['onActivated']
|
||||||
|
onBeforeMount: typeof import('vue')['onBeforeMount']
|
||||||
|
onBeforeUnmount: typeof import('vue')['onBeforeUnmount']
|
||||||
|
onBeforeUpdate: typeof import('vue')['onBeforeUpdate']
|
||||||
|
onClickOutside: typeof import('@vueuse/core')['onClickOutside']
|
||||||
|
onDeactivated: typeof import('vue')['onDeactivated']
|
||||||
|
onErrorCaptured: typeof import('vue')['onErrorCaptured']
|
||||||
|
onKeyStroke: typeof import('@vueuse/core')['onKeyStroke']
|
||||||
|
onLongPress: typeof import('@vueuse/core')['onLongPress']
|
||||||
|
onMounted: typeof import('vue')['onMounted']
|
||||||
|
onRenderTracked: typeof import('vue')['onRenderTracked']
|
||||||
|
onRenderTriggered: typeof import('vue')['onRenderTriggered']
|
||||||
|
onScopeDispose: typeof import('vue')['onScopeDispose']
|
||||||
|
onServerPrefetch: typeof import('vue')['onServerPrefetch']
|
||||||
|
onStartTyping: typeof import('@vueuse/core')['onStartTyping']
|
||||||
|
onUnmounted: typeof import('vue')['onUnmounted']
|
||||||
|
onUpdated: typeof import('vue')['onUpdated']
|
||||||
|
pausableWatch: typeof import('@vueuse/core')['pausableWatch']
|
||||||
|
provide: typeof import('vue')['provide']
|
||||||
|
reactify: typeof import('@vueuse/core')['reactify']
|
||||||
|
reactifyObject: typeof import('@vueuse/core')['reactifyObject']
|
||||||
|
reactive: typeof import('vue')['reactive']
|
||||||
|
reactiveComputed: typeof import('@vueuse/core')['reactiveComputed']
|
||||||
|
reactiveOmit: typeof import('@vueuse/core')['reactiveOmit']
|
||||||
|
reactivePick: typeof import('@vueuse/core')['reactivePick']
|
||||||
|
readonly: typeof import('vue')['readonly']
|
||||||
|
ref: typeof import('vue')['ref']
|
||||||
|
refAutoReset: typeof import('@vueuse/core')['refAutoReset']
|
||||||
|
refDebounced: typeof import('@vueuse/core')['refDebounced']
|
||||||
|
refDefault: typeof import('@vueuse/core')['refDefault']
|
||||||
|
refThrottled: typeof import('@vueuse/core')['refThrottled']
|
||||||
|
refWithControl: typeof import('@vueuse/core')['refWithControl']
|
||||||
|
resolveComponent: typeof import('vue')['resolveComponent']
|
||||||
|
shallowReactive: typeof import('vue')['shallowReactive']
|
||||||
|
shallowReadonly: typeof import('vue')['shallowReadonly']
|
||||||
|
shallowRef: typeof import('vue')['shallowRef']
|
||||||
|
syncRef: typeof import('@vueuse/core')['syncRef']
|
||||||
|
syncRefs: typeof import('@vueuse/core')['syncRefs']
|
||||||
|
templateRef: typeof import('@vueuse/core')['templateRef']
|
||||||
|
throttledRef: typeof import('@vueuse/core')['throttledRef']
|
||||||
|
throttledWatch: typeof import('@vueuse/core')['throttledWatch']
|
||||||
|
toRaw: typeof import('vue')['toRaw']
|
||||||
|
toReactive: typeof import('@vueuse/core')['toReactive']
|
||||||
|
toRef: typeof import('vue')['toRef']
|
||||||
|
toRefs: typeof import('vue')['toRefs']
|
||||||
|
toggleDark: typeof import('./src/composables/dark')['toggleDark']
|
||||||
|
triggerRef: typeof import('vue')['triggerRef']
|
||||||
|
tryOnBeforeMount: typeof import('@vueuse/core')['tryOnBeforeMount']
|
||||||
|
tryOnBeforeUnmount: typeof import('@vueuse/core')['tryOnBeforeUnmount']
|
||||||
|
tryOnMounted: typeof import('@vueuse/core')['tryOnMounted']
|
||||||
|
tryOnScopeDispose: typeof import('@vueuse/core')['tryOnScopeDispose']
|
||||||
|
tryOnUnmounted: typeof import('@vueuse/core')['tryOnUnmounted']
|
||||||
|
unref: typeof import('vue')['unref']
|
||||||
|
unrefElement: typeof import('@vueuse/core')['unrefElement']
|
||||||
|
until: typeof import('@vueuse/core')['until']
|
||||||
|
useActiveElement: typeof import('@vueuse/core')['useActiveElement']
|
||||||
|
useAsyncQueue: typeof import('@vueuse/core')['useAsyncQueue']
|
||||||
|
useAsyncState: typeof import('@vueuse/core')['useAsyncState']
|
||||||
|
useAttrs: typeof import('vue')['useAttrs']
|
||||||
|
useBase64: typeof import('@vueuse/core')['useBase64']
|
||||||
|
useBattery: typeof import('@vueuse/core')['useBattery']
|
||||||
|
useBreakpoints: typeof import('@vueuse/core')['useBreakpoints']
|
||||||
|
useBroadcastChannel: typeof import('@vueuse/core')['useBroadcastChannel']
|
||||||
|
useBrowserLocation: typeof import('@vueuse/core')['useBrowserLocation']
|
||||||
|
useCached: typeof import('@vueuse/core')['useCached']
|
||||||
|
useClamp: typeof import('@vueuse/core')['useClamp']
|
||||||
|
useClipboard: typeof import('@vueuse/core')['useClipboard']
|
||||||
|
useColorMode: typeof import('@vueuse/core')['useColorMode']
|
||||||
|
useConfirmDialog: typeof import('@vueuse/core')['useConfirmDialog']
|
||||||
|
useCounter: typeof import('@vueuse/core')['useCounter']
|
||||||
|
useCssModule: typeof import('vue')['useCssModule']
|
||||||
|
useCssVar: typeof import('@vueuse/core')['useCssVar']
|
||||||
|
useCssVars: typeof import('vue')['useCssVars']
|
||||||
|
useCurrentElement: typeof import('@vueuse/core')['useCurrentElement']
|
||||||
|
useCycleList: typeof import('@vueuse/core')['useCycleList']
|
||||||
|
useDark: typeof import('@vueuse/core')['useDark']
|
||||||
|
useDateFormat: typeof import('@vueuse/core')['useDateFormat']
|
||||||
|
useDebounce: typeof import('@vueuse/core')['useDebounce']
|
||||||
|
useDebounceFn: typeof import('@vueuse/core')['useDebounceFn']
|
||||||
|
useDebouncedRefHistory: typeof import('@vueuse/core')['useDebouncedRefHistory']
|
||||||
|
useDeviceMotion: typeof import('@vueuse/core')['useDeviceMotion']
|
||||||
|
useDeviceOrientation: typeof import('@vueuse/core')['useDeviceOrientation']
|
||||||
|
useDevicePixelRatio: typeof import('@vueuse/core')['useDevicePixelRatio']
|
||||||
|
useDevicesList: typeof import('@vueuse/core')['useDevicesList']
|
||||||
|
useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia']
|
||||||
|
useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility']
|
||||||
|
useDraggable: typeof import('@vueuse/core')['useDraggable']
|
||||||
|
useElementBounding: typeof import('@vueuse/core')['useElementBounding']
|
||||||
|
useElementByPoint: typeof import('@vueuse/core')['useElementByPoint']
|
||||||
|
useElementHover: typeof import('@vueuse/core')['useElementHover']
|
||||||
|
useElementSize: typeof import('@vueuse/core')['useElementSize']
|
||||||
|
useElementVisibility: typeof import('@vueuse/core')['useElementVisibility']
|
||||||
|
useEventBus: typeof import('@vueuse/core')['useEventBus']
|
||||||
|
useEventListener: typeof import('@vueuse/core')['useEventListener']
|
||||||
|
useEventSource: typeof import('@vueuse/core')['useEventSource']
|
||||||
|
useEyeDropper: typeof import('@vueuse/core')['useEyeDropper']
|
||||||
|
useFavicon: typeof import('@vueuse/core')['useFavicon']
|
||||||
|
useFetch: typeof import('@vueuse/core')['useFetch']
|
||||||
|
useFileSystemAccess: typeof import('@vueuse/core')['useFileSystemAccess']
|
||||||
|
useFocus: typeof import('@vueuse/core')['useFocus']
|
||||||
|
useFocusWithin: typeof import('@vueuse/core')['useFocusWithin']
|
||||||
|
useFps: typeof import('@vueuse/core')['useFps']
|
||||||
|
useFullscreen: typeof import('@vueuse/core')['useFullscreen']
|
||||||
|
useGamepad: typeof import('@vueuse/core')['useGamepad']
|
||||||
|
useGeolocation: typeof import('@vueuse/core')['useGeolocation']
|
||||||
|
useIdle: typeof import('@vueuse/core')['useIdle']
|
||||||
|
useInfiniteScroll: typeof import('@vueuse/core')['useInfiniteScroll']
|
||||||
|
useIntersectionObserver: typeof import('@vueuse/core')['useIntersectionObserver']
|
||||||
|
useInterval: typeof import('@vueuse/core')['useInterval']
|
||||||
|
useIntervalFn: typeof import('@vueuse/core')['useIntervalFn']
|
||||||
|
useKeyModifier: typeof import('@vueuse/core')['useKeyModifier']
|
||||||
|
useLastChanged: typeof import('@vueuse/core')['useLastChanged']
|
||||||
|
useLocalStorage: typeof import('@vueuse/core')['useLocalStorage']
|
||||||
|
useMagicKeys: typeof import('@vueuse/core')['useMagicKeys']
|
||||||
|
useManualRefHistory: typeof import('@vueuse/core')['useManualRefHistory']
|
||||||
|
useMediaControls: typeof import('@vueuse/core')['useMediaControls']
|
||||||
|
useMediaQuery: typeof import('@vueuse/core')['useMediaQuery']
|
||||||
|
useMemoize: typeof import('@vueuse/core')['useMemoize']
|
||||||
|
useMemory: typeof import('@vueuse/core')['useMemory']
|
||||||
|
useMounted: typeof import('@vueuse/core')['useMounted']
|
||||||
|
useMouse: typeof import('@vueuse/core')['useMouse']
|
||||||
|
useMouseInElement: typeof import('@vueuse/core')['useMouseInElement']
|
||||||
|
useMousePressed: typeof import('@vueuse/core')['useMousePressed']
|
||||||
|
useMutationObserver: typeof import('@vueuse/core')['useMutationObserver']
|
||||||
|
useNavigatorLanguage: typeof import('@vueuse/core')['useNavigatorLanguage']
|
||||||
|
useNetwork: typeof import('@vueuse/core')['useNetwork']
|
||||||
|
useNow: typeof import('@vueuse/core')['useNow']
|
||||||
|
useOffsetPagination: typeof import('@vueuse/core')['useOffsetPagination']
|
||||||
|
useOnline: typeof import('@vueuse/core')['useOnline']
|
||||||
|
usePageLeave: typeof import('@vueuse/core')['usePageLeave']
|
||||||
|
useParallax: typeof import('@vueuse/core')['useParallax']
|
||||||
|
usePermission: typeof import('@vueuse/core')['usePermission']
|
||||||
|
usePointer: typeof import('@vueuse/core')['usePointer']
|
||||||
|
usePointerSwipe: typeof import('@vueuse/core')['usePointerSwipe']
|
||||||
|
usePreferredColorScheme: typeof import('@vueuse/core')['usePreferredColorScheme']
|
||||||
|
usePreferredDark: typeof import('@vueuse/core')['usePreferredDark']
|
||||||
|
usePreferredLanguages: typeof import('@vueuse/core')['usePreferredLanguages']
|
||||||
|
useRafFn: typeof import('@vueuse/core')['useRafFn']
|
||||||
|
useRefHistory: typeof import('@vueuse/core')['useRefHistory']
|
||||||
|
useResizeObserver: typeof import('@vueuse/core')['useResizeObserver']
|
||||||
|
useRoute: typeof import('vue-router')['useRoute']
|
||||||
|
useRouter: typeof import('vue-router')['useRouter']
|
||||||
|
useScreenOrientation: typeof import('@vueuse/core')['useScreenOrientation']
|
||||||
|
useScreenSafeArea: typeof import('@vueuse/core')['useScreenSafeArea']
|
||||||
|
useScriptTag: typeof import('@vueuse/core')['useScriptTag']
|
||||||
|
useScroll: typeof import('@vueuse/core')['useScroll']
|
||||||
|
useScrollLock: typeof import('@vueuse/core')['useScrollLock']
|
||||||
|
useSessionStorage: typeof import('@vueuse/core')['useSessionStorage']
|
||||||
|
useShare: typeof import('@vueuse/core')['useShare']
|
||||||
|
useSlots: typeof import('vue')['useSlots']
|
||||||
|
useSpeechRecognition: typeof import('@vueuse/core')['useSpeechRecognition']
|
||||||
|
useSpeechSynthesis: typeof import('@vueuse/core')['useSpeechSynthesis']
|
||||||
|
useStorage: typeof import('@vueuse/core')['useStorage']
|
||||||
|
useStorageAsync: typeof import('@vueuse/core')['useStorageAsync']
|
||||||
|
useStyleTag: typeof import('@vueuse/core')['useStyleTag']
|
||||||
|
useSwipe: typeof import('@vueuse/core')['useSwipe']
|
||||||
|
useTemplateRefsList: typeof import('@vueuse/core')['useTemplateRefsList']
|
||||||
|
useTextSelection: typeof import('@vueuse/core')['useTextSelection']
|
||||||
|
useThrottle: typeof import('@vueuse/core')['useThrottle']
|
||||||
|
useThrottleFn: typeof import('@vueuse/core')['useThrottleFn']
|
||||||
|
useThrottledRefHistory: typeof import('@vueuse/core')['useThrottledRefHistory']
|
||||||
|
useTimeAgo: typeof import('@vueuse/core')['useTimeAgo']
|
||||||
|
useTimeout: typeof import('@vueuse/core')['useTimeout']
|
||||||
|
useTimeoutFn: typeof import('@vueuse/core')['useTimeoutFn']
|
||||||
|
useTimeoutPoll: typeof import('@vueuse/core')['useTimeoutPoll']
|
||||||
|
useTimestamp: typeof import('@vueuse/core')['useTimestamp']
|
||||||
|
useTitle: typeof import('@vueuse/core')['useTitle']
|
||||||
|
useToggle: typeof import('@vueuse/core')['useToggle']
|
||||||
|
useTransition: typeof import('@vueuse/core')['useTransition']
|
||||||
|
useUrlSearchParams: typeof import('@vueuse/core')['useUrlSearchParams']
|
||||||
|
useUserMedia: typeof import('@vueuse/core')['useUserMedia']
|
||||||
|
useVModel: typeof import('@vueuse/core')['useVModel']
|
||||||
|
useVModels: typeof import('@vueuse/core')['useVModels']
|
||||||
|
useVibrate: typeof import('@vueuse/core')['useVibrate']
|
||||||
|
useVirtualList: typeof import('@vueuse/core')['useVirtualList']
|
||||||
|
useWakeLock: typeof import('@vueuse/core')['useWakeLock']
|
||||||
|
useWebNotification: typeof import('@vueuse/core')['useWebNotification']
|
||||||
|
useWebSocket: typeof import('@vueuse/core')['useWebSocket']
|
||||||
|
useWebWorker: typeof import('@vueuse/core')['useWebWorker']
|
||||||
|
useWebWorkerFn: typeof import('@vueuse/core')['useWebWorkerFn']
|
||||||
|
useWindowFocus: typeof import('@vueuse/core')['useWindowFocus']
|
||||||
|
useWindowScroll: typeof import('@vueuse/core')['useWindowScroll']
|
||||||
|
useWindowSize: typeof import('@vueuse/core')['useWindowSize']
|
||||||
|
watch: typeof import('vue')['watch']
|
||||||
|
watchAtMost: typeof import('@vueuse/core')['watchAtMost']
|
||||||
|
watchDebounced: typeof import('@vueuse/core')['watchDebounced']
|
||||||
|
watchEffect: typeof import('vue')['watchEffect']
|
||||||
|
watchIgnorable: typeof import('@vueuse/core')['watchIgnorable']
|
||||||
|
watchOnce: typeof import('@vueuse/core')['watchOnce']
|
||||||
|
watchPausable: typeof import('@vueuse/core')['watchPausable']
|
||||||
|
watchPostEffect: typeof import('vue')['watchPostEffect']
|
||||||
|
watchSyncEffect: typeof import('vue')['watchSyncEffect']
|
||||||
|
watchThrottled: typeof import('@vueuse/core')['watchThrottled']
|
||||||
|
watchWithFilter: typeof import('@vueuse/core')['watchWithFilter']
|
||||||
|
whenever: typeof import('@vueuse/core')['whenever']
|
||||||
|
}
|
||||||
|
}
|
||||||
13
components.d.ts
vendored
Normal file
13
components.d.ts
vendored
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
// generated by unplugin-vue-components
|
||||||
|
// We suggest you to commit this file into source control
|
||||||
|
// Read more: https://github.com/vuejs/vue-next/pull/3399
|
||||||
|
import '@vue/runtime-core'
|
||||||
|
|
||||||
|
declare module '@vue/runtime-core' {
|
||||||
|
export interface GlobalComponents {
|
||||||
|
RouterLink: typeof import('vue-router')['RouterLink']
|
||||||
|
RouterView: typeof import('vue-router')['RouterView']
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export {}
|
||||||
22
index.html
Normal file
22
index.html
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
|
||||||
|
<title>Maintenance</title>
|
||||||
|
<meta name="description" content="Opinionated Vite Starter Template">
|
||||||
|
</head>
|
||||||
|
<body class="font-sans dark:text-white dark:bg-hex-121212">
|
||||||
|
<div id="app"></div>
|
||||||
|
<script>
|
||||||
|
(function () {
|
||||||
|
const prefersDark = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches
|
||||||
|
const setting = localStorage.getItem('color-schema') || 'auto'
|
||||||
|
if (setting === 'dark' || (prefersDark && setting !== 'light'))
|
||||||
|
document.documentElement.classList.toggle('dark', true)
|
||||||
|
})()
|
||||||
|
</script>
|
||||||
|
<script type="module" src="/src/main.ts"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
10
locales/en.json
Normal file
10
locales/en.json
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"maintenance": "⚠️ Services under maintenance ⚠️",
|
||||||
|
"maintenance_reason": "We'll be back soon. Please check back later.",
|
||||||
|
"maintenance_description": "Sorry for the inconvenience but we're performing some maintenance at the moment. We'll be back online shortly! If you need to you can always contact us.",
|
||||||
|
"team": "- The ArtDanjProduction Team",
|
||||||
|
|
||||||
|
"error": "❌ Service not found ❌",
|
||||||
|
"error_reason": "The service you are looking for does not exist.",
|
||||||
|
"error_description": "Please check the URL or try again later. If you continue to experience issues, please contact us."
|
||||||
|
}
|
||||||
10
locales/fr.json
Normal file
10
locales/fr.json
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"maintenance": "⚠️ Services en maintenance ⚠️",
|
||||||
|
"maintenance_reason": "Nous reviendrons bientôt. Veuillez revenir plus tard.",
|
||||||
|
"maintenance_description": "Désolé pour la gêne occasionnée, mais nous effectuons actuellement une maintenance. Nous serons bientôt de retour en ligne ! Si vous en avez besoin, vous pouvez toujours nous contacter.",
|
||||||
|
"team": "- L'équipe ArtDanjProduction",
|
||||||
|
|
||||||
|
"error": "❌ Service introuvable ❌",
|
||||||
|
"error_reason": "Le service que vous recherchez n'existe pas.",
|
||||||
|
"error_description": "Veuillez vérifier l'URL ou réessayer plus tard. Si vous continuez à rencontrer des problèmes, veuillez nous contacter."
|
||||||
|
}
|
||||||
37
package.json
Normal file
37
package.json
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"private": true,
|
||||||
|
"packageManager": "pnpm@7.1.5",
|
||||||
|
"scripts": {
|
||||||
|
"build": "vite build",
|
||||||
|
"dev": "vite --port 3333 --open",
|
||||||
|
"lint": "eslint .",
|
||||||
|
"typecheck": "vue-tsc --noEmit",
|
||||||
|
"preview": "vite preview"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@vueuse/core": "^8.5.0",
|
||||||
|
"vue": "^3.2.36",
|
||||||
|
"vue-i18n": "^9.1.10",
|
||||||
|
"vue-router": "^4.0.15"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@antfu/eslint-config": "^0.24.1",
|
||||||
|
"@iconify-json/carbon": "^1.1.5",
|
||||||
|
"@intlify/vite-plugin-vue-i18n": "^3.4.0",
|
||||||
|
"@types/node": "^17.0.35",
|
||||||
|
"@vitejs/plugin-vue": "^2.3.3",
|
||||||
|
"@vue/test-utils": "^2.0.0",
|
||||||
|
"eslint": "^8.16.0",
|
||||||
|
"typescript": "^4.7.2",
|
||||||
|
"unplugin-auto-import": "^0.8.4",
|
||||||
|
"unplugin-vue-components": "^0.19.5",
|
||||||
|
"vite": "^2.9.9",
|
||||||
|
"vite-plugin-pages": "^0.23.0",
|
||||||
|
"vite-plugin-windicss": "^1.8.4",
|
||||||
|
"vue-tsc": "^0.34.16",
|
||||||
|
"windicss": "^3.5.4"
|
||||||
|
},
|
||||||
|
"eslintConfig": {
|
||||||
|
"extends": "@antfu"
|
||||||
|
}
|
||||||
|
}
|
||||||
9
public/favicon.svg
Normal file
9
public/favicon.svg
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
|
||||||
|
<style>
|
||||||
|
path { fill: #222; }
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
path { fill: #ffffff; }
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<path d="M27.562 26L17.17 8.928l2.366-3.888L17.828 4L16 7.005L14.17 4l-1.708 1.04l2.366 3.888L4.438 26H2v2h28v-2zM16 10.85L25.22 26H17v-8h-2v8H6.78z" />
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 347 B |
5
shims.d.ts
vendored
Normal file
5
shims.d.ts
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
declare module '*.vue' {
|
||||||
|
import type { DefineComponent } from 'vue'
|
||||||
|
const component: DefineComponent<{}, {}, any>
|
||||||
|
export default component
|
||||||
|
}
|
||||||
14
src/App.vue
Normal file
14
src/App.vue
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { useI18n } from 'vue-i18n'
|
||||||
|
|
||||||
|
const { t } = useI18n()
|
||||||
|
|
||||||
|
const title = useTitle()
|
||||||
|
title.value = t('title')
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<main class="h-full w-full flex items-center justify-center">
|
||||||
|
<router-view />
|
||||||
|
</main>
|
||||||
|
</template>
|
||||||
2
src/composables/dark.ts
Normal file
2
src/composables/dark.ts
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
export const isDark = useDark()
|
||||||
|
export const toggleDark = useToggle(isDark)
|
||||||
1
src/composables/index.ts
Normal file
1
src/composables/index.ts
Normal file
@@ -0,0 +1 @@
|
|||||||
|
export * from './dark'
|
||||||
34
src/main.ts
Normal file
34
src/main.ts
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
import { createApp } from 'vue'
|
||||||
|
import { createRouter, createWebHistory } from 'vue-router'
|
||||||
|
import { createI18n } from 'vue-i18n'
|
||||||
|
import routes from 'virtual:generated-pages'
|
||||||
|
import App from './App.vue'
|
||||||
|
|
||||||
|
import './styles/main.css'
|
||||||
|
import 'virtual:windi.css'
|
||||||
|
|
||||||
|
const app = createApp(App)
|
||||||
|
const router = createRouter({
|
||||||
|
history: createWebHistory(import.meta.env.BASE_URL),
|
||||||
|
routes,
|
||||||
|
})
|
||||||
|
app.use(router)
|
||||||
|
|
||||||
|
const messages = Object.fromEntries(
|
||||||
|
Object.entries(
|
||||||
|
import.meta.globEager('../locales/*.json'))
|
||||||
|
.map(([key, value]) => {
|
||||||
|
return [key.slice(11, -5), value.default]
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
|
||||||
|
const i18n = createI18n({
|
||||||
|
legacy: false,
|
||||||
|
locale: 'en',
|
||||||
|
messages,
|
||||||
|
fallbackLocale: 'en',
|
||||||
|
})
|
||||||
|
|
||||||
|
app.use(i18n)
|
||||||
|
|
||||||
|
app.mount('#app')
|
||||||
22
src/pages/index.vue
Normal file
22
src/pages/index.vue
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { useI18n } from 'vue-i18n'
|
||||||
|
|
||||||
|
const { t } = useI18n()
|
||||||
|
|
||||||
|
const title = useTitle()
|
||||||
|
title.value = t('error')
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<section class="w-2/3 text-justify">
|
||||||
|
<h1 class="text-5xl font-black">
|
||||||
|
{{ t('error_reason') }}
|
||||||
|
</h1>
|
||||||
|
<h3 class="text-3xl my-4">
|
||||||
|
{{ t('error_description') }}
|
||||||
|
</h3>
|
||||||
|
<p class="text-xl text-gray-300">
|
||||||
|
{{ t('team') }}
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
</template>
|
||||||
22
src/pages/maintenance.vue
Normal file
22
src/pages/maintenance.vue
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import { useI18n } from 'vue-i18n'
|
||||||
|
|
||||||
|
const { t } = useI18n()
|
||||||
|
|
||||||
|
const title = useTitle()
|
||||||
|
title.value = t('maintenance')
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<section class="w-2/3 text-justify">
|
||||||
|
<h1 class="text-5xl font-black">
|
||||||
|
{{ t('maintenance_reason') }}
|
||||||
|
</h1>
|
||||||
|
<h3 class="text-3xl my-4">
|
||||||
|
{{ t('maintenance_description') }}
|
||||||
|
</h3>
|
||||||
|
<p class="text-xl text-gray-300">
|
||||||
|
{{ t('team') }}
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
</template>
|
||||||
14
src/styles/main.css
Executable file
14
src/styles/main.css
Executable file
@@ -0,0 +1,14 @@
|
|||||||
|
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;700&display=swap');
|
||||||
|
|
||||||
|
html,
|
||||||
|
body,
|
||||||
|
#app {
|
||||||
|
height: 100%;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-family: 'Raleway', sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
html.dark {
|
||||||
|
background: #121212;
|
||||||
|
}
|
||||||
25
tsconfig.json
Normal file
25
tsconfig.json
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"baseUrl": ".",
|
||||||
|
"module": "ESNext",
|
||||||
|
"target": "es2016",
|
||||||
|
"lib": ["DOM", "ESNext"],
|
||||||
|
"strict": true,
|
||||||
|
"jsx": "preserve",
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"skipLibCheck": true,
|
||||||
|
"moduleResolution": "node",
|
||||||
|
"resolveJsonModule": true,
|
||||||
|
"noUnusedLocals": true,
|
||||||
|
"strictNullChecks": true,
|
||||||
|
"forceConsistentCasingInFileNames": true,
|
||||||
|
"types": [
|
||||||
|
"vite/client",
|
||||||
|
"vite-plugin-pages/client"
|
||||||
|
],
|
||||||
|
"paths": {
|
||||||
|
"~/*": ["src/*"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"exclude": ["dist", "node_modules"]
|
||||||
|
}
|
||||||
52
vite.config.ts
Normal file
52
vite.config.ts
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
import path from 'path'
|
||||||
|
import { defineConfig } from 'vite'
|
||||||
|
import Vue from '@vitejs/plugin-vue'
|
||||||
|
import Pages from 'vite-plugin-pages'
|
||||||
|
import Components from 'unplugin-vue-components/vite'
|
||||||
|
import AutoImport from 'unplugin-auto-import/vite'
|
||||||
|
import WindiCSS from 'vite-plugin-windicss'
|
||||||
|
import VueI18n from '@intlify/vite-plugin-vue-i18n'
|
||||||
|
|
||||||
|
export default defineConfig({
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
'~/': `${path.resolve(__dirname, 'src')}/`,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
plugins: [
|
||||||
|
Vue({
|
||||||
|
reactivityTransform: true,
|
||||||
|
}),
|
||||||
|
|
||||||
|
// https://github.com/hannoeru/vite-plugin-pages
|
||||||
|
Pages(),
|
||||||
|
|
||||||
|
// https://github.com/antfu/unplugin-auto-import
|
||||||
|
AutoImport({
|
||||||
|
imports: [
|
||||||
|
'vue',
|
||||||
|
'vue/macros',
|
||||||
|
'vue-router',
|
||||||
|
'@vueuse/core',
|
||||||
|
],
|
||||||
|
dts: true,
|
||||||
|
dirs: [
|
||||||
|
'./src/composables',
|
||||||
|
],
|
||||||
|
vueTemplate: true,
|
||||||
|
}),
|
||||||
|
|
||||||
|
// https://github.com/antfu/vite-plugin-components
|
||||||
|
Components({
|
||||||
|
dts: true,
|
||||||
|
}),
|
||||||
|
|
||||||
|
WindiCSS(),
|
||||||
|
|
||||||
|
VueI18n({
|
||||||
|
runtimeOnly: true,
|
||||||
|
compositionOnly: true,
|
||||||
|
include: [path.resolve(__dirname, 'locales/**')],
|
||||||
|
}),
|
||||||
|
],
|
||||||
|
})
|
||||||
5
windicss.config.ts
Normal file
5
windicss.config.ts
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
import { defineConfig } from 'windicss/helpers'
|
||||||
|
|
||||||
|
export default defineConfig({
|
||||||
|
darkMode: 'class',
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user