feat: 移除 auto-import

This commit is contained in:
lanyeeee
2026-02-15 04:23:23 +08:00
parent e8702fb734
commit 2a296da7b1
40 changed files with 76 additions and 288 deletions

75
auto-imports.d.ts vendored
View File

@@ -1,75 +0,0 @@
/* eslint-disable */
/* prettier-ignore */
// @ts-nocheck
// noinspection JSUnusedGlobalSymbols
// Generated by unplugin-auto-import
// biome-ignore lint: disable
export {}
declare global {
const EffectScope: typeof import('vue')['EffectScope']
const computed: typeof import('vue')['computed']
const createApp: typeof import('vue')['createApp']
const customRef: typeof import('vue')['customRef']
const defineAsyncComponent: typeof import('vue')['defineAsyncComponent']
const defineComponent: typeof import('vue')['defineComponent']
const effectScope: typeof import('vue')['effectScope']
const getCurrentInstance: typeof import('vue')['getCurrentInstance']
const getCurrentScope: typeof import('vue')['getCurrentScope']
const h: typeof import('vue')['h']
const inject: typeof import('vue')['inject']
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 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 onDeactivated: typeof import('vue')['onDeactivated']
const onErrorCaptured: typeof import('vue')['onErrorCaptured']
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 onUnmounted: typeof import('vue')['onUnmounted']
const onUpdated: typeof import('vue')['onUpdated']
const onWatcherCleanup: typeof import('vue')['onWatcherCleanup']
const provide: typeof import('vue')['provide']
const reactive: typeof import('vue')['reactive']
const readonly: typeof import('vue')['readonly']
const ref: typeof import('vue')['ref']
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 toRaw: typeof import('vue')['toRaw']
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 unref: typeof import('vue')['unref']
const useAttrs: typeof import('vue')['useAttrs']
const useCssModule: typeof import('vue')['useCssModule']
const useCssVars: typeof import('vue')['useCssVars']
const useDialog: typeof import('naive-ui')['useDialog']
const useId: typeof import('vue')['useId']
const useLoadingBar: typeof import('naive-ui')['useLoadingBar']
const useMessage: typeof import('naive-ui')['useMessage']
const useModel: typeof import('vue')['useModel']
const useNotification: typeof import('naive-ui')['useNotification']
const useSlots: typeof import('vue')['useSlots']
const useTemplateRef: typeof import('vue')['useTemplateRef']
const watch: typeof import('vue')['watch']
const watchEffect: typeof import('vue')['watchEffect']
const watchPostEffect: typeof import('vue')['watchPostEffect']
const watchSyncEffect: typeof import('vue')['watchSyncEffect']
}
// for type re-export
declare global {
// @ts-ignore
export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue'
import('vue')
}

53
components.d.ts vendored
View File

@@ -1,53 +0,0 @@
/* eslint-disable */
// @ts-nocheck
// Generated by unplugin-vue-components
// Read more: https://github.com/vuejs/core/pull/3399
// biome-ignore lint: disable
export {}
/* prettier-ignore */
declare module 'vue' {
export interface GlobalComponents {
ColorfulTag: typeof import('./src/components/ColorfulTag.vue')['default']
FloatLabelInput: typeof import('./src/components/FloatLabelInput.vue')['default']
IconButton: typeof import('./src/components/IconButton.vue')['default']
NA: typeof import('naive-ui')['NA']
NBadge: typeof import('naive-ui')['NBadge']
NButton: typeof import('naive-ui')['NButton']
NCheckbox: typeof import('naive-ui')['NCheckbox']
NCollapseTransition: typeof import('naive-ui')['NCollapseTransition']
NConfigProvider: typeof import('naive-ui')['NConfigProvider']
NDatePicker: typeof import('naive-ui')['NDatePicker']
NDialog: typeof import('naive-ui')['NDialog']
NDialogProvider: typeof import('naive-ui')['NDialogProvider']
NDropdown: typeof import('naive-ui')['NDropdown']
NEl: typeof import('naive-ui')['NEl']
NEmpty: typeof import('naive-ui')['NEmpty']
NIcon: typeof import('naive-ui')['NIcon']
NInput: typeof import('naive-ui')['NInput']
NInputGroup: typeof import('naive-ui')['NInputGroup']
NInputGroupLabel: typeof import('naive-ui')['NInputGroupLabel']
NInputNumber: typeof import('naive-ui')['NInputNumber']
NMessageProvider: typeof import('naive-ui')['NMessageProvider']
NModal: typeof import('naive-ui')['NModal']
NModalProvider: typeof import('naive-ui')['NModalProvider']
NNotificationProvider: typeof import('naive-ui')['NNotificationProvider']
NPagination: typeof import('naive-ui')['NPagination']
NPopover: typeof import('naive-ui')['NPopover']
NProgress: typeof import('naive-ui')['NProgress']
NQrCode: typeof import('naive-ui')['NQrCode']
NRadioButton: typeof import('naive-ui')['NRadioButton']
NRadioGroup: typeof import('naive-ui')['NRadioGroup']
NSelect: typeof import('naive-ui')['NSelect']
NTab: typeof import('naive-ui')['NTab']
NTabPane: typeof import('naive-ui')['NTabPane']
NTabs: typeof import('naive-ui')['NTabs']
NTime: typeof import('naive-ui')['NTime']
NTooltip: typeof import('naive-ui')['NTooltip']
NVirtualList: typeof import('naive-ui')['NVirtualList']
SimpleCheckbox: typeof import('./src/components/SimpleCheckbox.vue')['default']
TaskToQueueAnimation: typeof import('./src/components/TaskToQueueAnimation.vue')['default']
TitleBar: typeof import('./src/components/TitleBar.vue')['default']
UpInfoBadge: typeof import('./src/components/UpInfoBadge.vue')['default']
}
}

View File

@@ -19,8 +19,6 @@
"lazysizes": "^5.3.2",
"naive-ui": "^2.42.0",
"pinia": "^3.0.3",
"unplugin-auto-import": "^19.3.0",
"unplugin-vue-components": "^28.8.0",
"vue": "^3.5.13",
"vue-draggable-plus": "^0.6.0",
"z-vue-scan": "^0.0.35"

122
pnpm-lock.yaml generated
View File

@@ -35,12 +35,6 @@ importers:
pinia:
specifier: ^3.0.3
version: 3.0.3(typescript@5.6.3)(vue@3.5.17(typescript@5.6.3))
unplugin-auto-import:
specifier: ^19.3.0
version: 19.3.0
unplugin-vue-components:
specifier: ^28.8.0
version: 28.8.0(@babel/parser@7.28.0)(vue@3.5.17(typescript@5.6.3))
vue:
specifier: ^3.5.13
version: 3.5.17(typescript@5.6.3)
@@ -1193,10 +1187,6 @@ packages:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
escape-string-regexp@5.0.0:
resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
engines: {node: '>=12'}
eslint-plugin-vue@10.3.0:
resolution: {integrity: sha512-A0u9snqjCfYaPnqqOaH6MBLVWDUIN4trXn8J3x67uDcXvR7X6Ut8p16N+nYhMCQ9Y7edg2BIRGzfyZsY0IdqoQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -1249,9 +1239,6 @@ packages:
estree-walker@2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
estree-walker@3.0.3:
resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
esutils@2.0.3:
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
engines: {node: '>=0.10.0'}
@@ -1451,9 +1438,6 @@ packages:
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
js-tokens@9.0.1:
resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==}
js-yaml@4.1.0:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
@@ -1720,9 +1704,6 @@ packages:
run-parallel@1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
scule@1.3.0:
resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==}
seemly@0.3.10:
resolution: {integrity: sha512-2+SMxtG1PcsL0uyhkumlOU6Qo9TAQ/WyH7tthnPIOQB05/12jz9naq6GZ6iZ6ApVsO3rr2gsnTf3++OV63kE1Q==}
@@ -1767,9 +1748,6 @@ packages:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
strip-literal@3.0.0:
resolution: {integrity: sha512-TcccoMhJOM3OebGhSBEmp3UZ2SfDMZUEBdRA/9ynfLi8yYajyWX3JiXArcJt4Umh4vISpspkQIY8ZZoCqjbviA==}
superjson@2.2.2:
resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==}
engines: {node: '>=16'}
@@ -1828,10 +1806,6 @@ packages:
resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==}
engines: {node: '>=18'}
unimport@4.2.0:
resolution: {integrity: sha512-mYVtA0nmzrysnYnyb3ALMbByJ+Maosee2+WyE0puXl+Xm2bUwPorPaaeZt0ETfuroPOtG8jj1g/qeFZ6buFnag==}
engines: {node: '>=18.12.0'}
universalify@2.0.1:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
@@ -1848,39 +1822,10 @@ packages:
vite:
optional: true
unplugin-auto-import@19.3.0:
resolution: {integrity: sha512-iIi0u4Gq2uGkAOGqlPJOAMI8vocvjh1clGTfSK4SOrJKrt+tirrixo/FjgBwXQNNdS7ofcr7OxzmOb/RjWxeEQ==}
engines: {node: '>=14'}
peerDependencies:
'@nuxt/kit': ^3.2.2
'@vueuse/core': '*'
peerDependenciesMeta:
'@nuxt/kit':
optional: true
'@vueuse/core':
optional: true
unplugin-utils@0.2.4:
resolution: {integrity: sha512-8U/MtpkPkkk3Atewj1+RcKIjb5WBimZ/WSLhhR3w6SsIj8XJuKTacSP8g+2JhfSGw0Cb125Y+2zA/IzJZDVbhA==}
engines: {node: '>=18.12.0'}
unplugin-vue-components@28.8.0:
resolution: {integrity: sha512-2Q6ZongpoQzuXDK0ZsVzMoshH0MWZQ1pzVL538G7oIDKRTVzHjppBDS8aB99SADGHN3lpGU7frraCG6yWNoL5Q==}
engines: {node: '>=14'}
peerDependencies:
'@babel/parser': ^7.15.8
'@nuxt/kit': ^3.2.2 || ^4.0.0
vue: 2 || 3
peerDependenciesMeta:
'@babel/parser':
optional: true
'@nuxt/kit':
optional: true
unplugin@2.3.5:
resolution: {integrity: sha512-RyWSb5AHmGtjjNQ6gIlA67sHOsWpsbWpwDokLwTcejVdOjEkJZh7QKu14J00gDDVSh8kGH4KYC/TNBceXFZhtw==}
engines: {node: '>=18.12.0'}
update-browserslist-db@1.1.3:
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
hasBin: true
@@ -2022,9 +1967,6 @@ packages:
peerDependencies:
vue: ^3.0.11
webpack-virtual-modules@0.6.2:
resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -3221,8 +3163,6 @@ snapshots:
escape-string-regexp@4.0.0: {}
escape-string-regexp@5.0.0: {}
eslint-plugin-vue@10.3.0(@typescript-eslint/parser@8.36.0(eslint@9.30.1(jiti@2.4.2))(typescript@5.6.3))(eslint@9.30.1(jiti@2.4.2))(vue-eslint-parser@10.2.0(eslint@9.30.1(jiti@2.4.2))):
dependencies:
'@eslint-community/eslint-utils': 4.7.0(eslint@9.30.1(jiti@2.4.2))
@@ -3305,10 +3245,6 @@ snapshots:
estree-walker@2.0.2: {}
estree-walker@3.0.3:
dependencies:
'@types/estree': 1.0.8
esutils@2.0.3: {}
evtd@0.2.4: {}
@@ -3471,8 +3407,6 @@ snapshots:
js-tokens@4.0.0: {}
js-tokens@9.0.1: {}
js-yaml@4.1.0:
dependencies:
argparse: 2.0.1
@@ -3748,8 +3682,6 @@ snapshots:
dependencies:
queue-microtask: 1.2.3
scule@1.3.0: {}
seemly@0.3.10: {}
semver@6.3.1: {}
@@ -3778,10 +3710,6 @@ snapshots:
strip-json-comments@3.1.1: {}
strip-literal@3.0.0:
dependencies:
js-tokens: 9.0.1
superjson@2.2.2:
dependencies:
copy-anything: 3.0.5
@@ -3836,23 +3764,6 @@ snapshots:
unicorn-magic@0.3.0: {}
unimport@4.2.0:
dependencies:
acorn: 8.15.0
escape-string-regexp: 5.0.0
estree-walker: 3.0.3
local-pkg: 1.1.1
magic-string: 0.30.17
mlly: 1.7.4
pathe: 2.0.3
picomatch: 4.0.2
pkg-types: 2.2.0
scule: 1.3.0
strip-literal: 3.0.0
tinyglobby: 0.2.14
unplugin: 2.3.5
unplugin-utils: 0.2.4
universalify@2.0.1: {}
unocss@66.3.3(postcss@8.5.6)(vite@6.3.5(jiti@2.4.2))(vue@3.5.17(typescript@5.6.3)):
@@ -3883,42 +3794,11 @@ snapshots:
- supports-color
- vue
unplugin-auto-import@19.3.0:
dependencies:
local-pkg: 1.1.1
magic-string: 0.30.17
picomatch: 4.0.2
unimport: 4.2.0
unplugin: 2.3.5
unplugin-utils: 0.2.4
unplugin-utils@0.2.4:
dependencies:
pathe: 2.0.3
picomatch: 4.0.2
unplugin-vue-components@28.8.0(@babel/parser@7.28.0)(vue@3.5.17(typescript@5.6.3)):
dependencies:
chokidar: 3.6.0
debug: 4.4.1
local-pkg: 1.1.1
magic-string: 0.30.17
mlly: 1.7.4
tinyglobby: 0.2.14
unplugin: 2.3.5
unplugin-utils: 0.2.4
vue: 3.5.17(typescript@5.6.3)
optionalDependencies:
'@babel/parser': 7.28.0
transitivePeerDependencies:
- supports-color
unplugin@2.3.5:
dependencies:
acorn: 8.15.0
picomatch: 4.0.2
webpack-virtual-modules: 0.6.2
update-browserslist-db@1.1.3(browserslist@4.25.1):
dependencies:
browserslist: 4.25.1
@@ -4057,8 +3937,6 @@ snapshots:
vooks: 0.2.12(vue@3.5.17(typescript@5.6.3))
vue: 3.5.17(typescript@5.6.3)
webpack-virtual-modules@0.6.2: {}
which@2.0.2:
dependencies:
isexe: 2.0.0

View File

@@ -1,6 +1,15 @@
<script setup lang="ts">
import AppContent from './AppContent.vue'
import { GlobalThemeOverrides, zhCN, dateZhCN } from 'naive-ui'
import {
GlobalThemeOverrides,
zhCN,
dateZhCN,
NConfigProvider,
NDialogProvider,
NModalProvider,
NNotificationProvider,
NMessageProvider,
} from 'naive-ui'
const themeOverrides: GlobalThemeOverrides = {
common: {

View File

@@ -24,6 +24,7 @@ import DownloadPane from './panes/DownloadPane/DownloadPane.vue'
import { searchPaneRefKey, navDownloadButtonRefKey } from './injection_keys.ts'
import BangumiFollowPane from './panes/BangumiFollow/BangumiFollowPane.vue'
import HistoryPane from './panes/HistoryPane/HistoryPane.vue'
import { NBadge, NButton, NIcon, NTooltip } from 'naive-ui'
export type CurrentNavName = 'search' | 'fav' | 'history' | 'bangumi_follow' | 'watch_later' | 'download'

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import { computed, ref } from 'vue'
import { InputInst, InputProps } from 'naive-ui'
import { InputInst, InputProps, NInput, NEl } from 'naive-ui'
const props = withDefaults(
defineProps<{

View File

@@ -2,6 +2,7 @@
import { getVersion } from '@tauri-apps/api/app'
import { ref, onMounted } from 'vue'
import icon from '../../src-tauri/icons/128x128.png'
import { NA, NDialog, NModal } from 'naive-ui'
const showing = defineModel<boolean>('showing', { required: true })
const version = ref('')

View File

@@ -1,6 +1,17 @@
<script setup lang="tsx">
import { LogEvent, LogLevel, events, commands } from '../bindings.ts'
import { useNotification } from 'naive-ui'
import {
NButton,
NCheckbox,
NConfigProvider,
NDialog,
NInput,
NInputGroup,
NModal,
NSelect,
NVirtualList,
useNotification,
} from 'naive-ui'
import { onMounted, ref, watch, computed } from 'vue'
import { appDataDir } from '@tauri-apps/api/path'
import { path } from '@tauri-apps/api'

View File

@@ -1,7 +1,7 @@
<script setup lang="ts">
import { commands, QrcodeData, QrcodeStatus } from '../bindings.ts'
import { ref, watch } from 'vue'
import { useMessage } from 'naive-ui'
import { NDialog, NModal, NQrCode, NTabPane, NTabs, useMessage } from 'naive-ui'
import { useStore } from '../store.ts'
import icon from '../../src-tauri/icons/128x128.png'
import FloatLabelInput from '../components/FloatLabelInput.vue'

View File

@@ -8,7 +8,7 @@ import DownloadSettings from './components/DownloadSettings.vue'
import FmtSettings from './components/FmtSettings.vue'
import NetworkSettings from './components/NetworkSettings.vue'
import AssDanmakuSettings from './components/AssDanmakuSettings.vue'
import { useMessage } from 'naive-ui'
import { NButton, NDialog, NModal, NTabPane, NTabs, useMessage } from 'naive-ui'
const store = useStore()

View File

@@ -1,5 +1,6 @@
<script setup lang="ts">
import { useStore } from '../../../store.ts'
import { NTooltip, NInputGroupLabel, NCheckbox, NInputNumber, NInput, NInputGroup } from 'naive-ui'
const store = useStore()
</script>

View File

@@ -3,6 +3,7 @@ import { useStore } from '../../../store.ts'
import { VueDraggable } from 'vue-draggable-plus'
import ColorfulTag from '../../../components/ColorfulTag.vue'
import { getVideoQualityName, getAudioQualityName, getCodecTypeName } from '../../../utils.tsx'
import { NTooltip, NCheckbox, NRadioGroup, NRadioButton } from 'naive-ui'
const store = useStore()
</script>

View File

@@ -1,7 +1,7 @@
<script setup lang="tsx">
import { ref } from 'vue'
import { useStore } from '../../../store.ts'
import { NPopover } from 'naive-ui'
import { NA, NConfigProvider, NInput, NPopover, NTooltip } from 'naive-ui'
const store = useStore()

View File

@@ -1,6 +1,15 @@
<script setup lang="ts">
import { useStore } from '../../../store.ts'
import { useMessage } from 'naive-ui'
import {
NInput,
NInputGroup,
NInputGroupLabel,
NInputNumber,
NRadioButton,
NRadioGroup,
NTooltip,
useMessage,
} from 'naive-ui'
import { ref } from 'vue'
const message = useMessage()

View File

@@ -3,6 +3,7 @@ import { useStore } from '../../store.ts'
import { ref, watch } from 'vue'
import { BangumiFollowInfo, commands } from '../../bindings.ts'
import BangumiFollowPanel from './components/BangumiFollowPanel.vue'
import { NEmpty } from 'naive-ui'
const store = useStore()

View File

@@ -5,7 +5,7 @@ import { useStore } from '../../../store.ts'
import BangumiFollowCard from './BangumiFollowCard.vue'
import { useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import { SelectionArea } from '@viselect/vue'
import { SelectOption } from 'naive-ui'
import { NButton, NDropdown, NPagination, NSelect, SelectOption } from 'naive-ui'
const store = useStore()

View File

@@ -6,6 +6,7 @@ import UncompletedProgresses from './components/UncompletedProgresses.vue'
import CompletedProgresses from './components/CompletedProgresses.vue'
import DownloadDirInput from './components/DownloadDirInput.vue'
import { PhCheckCircle, PhCloudArrowDown } from '@phosphor-icons/vue'
import { NBadge, NPagination, NTabPane, NTabs } from 'naive-ui'
export type ProgressData = DownloadProgress & {
state: DownloadTaskState

View File

@@ -2,7 +2,7 @@
import { ref, watchEffect, computed, nextTick, DeepReadonly, watch, useTemplateRef } from 'vue'
import { PartialSelectionOptions, SelectionArea, SelectionEvent } from '@viselect/vue'
import { commands } from '../../../bindings.ts'
import { DropdownOption, NIcon } from 'naive-ui'
import { DropdownOption, NDropdown, NIcon } from 'naive-ui'
import { PhChecks, PhTrash, PhArrowClockwise } from '@phosphor-icons/vue'
import { useStore } from '../../../store.ts'
import DownloadProgress from './DownloadProgress.vue'

View File

@@ -3,6 +3,7 @@ import { PhFolderOpen } from '@phosphor-icons/vue'
import { commands } from '../../../bindings.ts'
import { open } from '@tauri-apps/plugin-dialog'
import { useStore } from '../../../store.ts'
import { NButton, NIcon, NInput, NInputGroup, NInputGroupLabel } from 'naive-ui'
const store = useStore()

View File

@@ -13,7 +13,7 @@ import {
PhMagnifyingGlass,
PhWrench,
} from '@phosphor-icons/vue'
import { ProgressProps, useDialog } from 'naive-ui'
import { NIcon, NProgress, NTime, ProgressProps, useDialog } from 'naive-ui'
import UpInfoBadge from '../../../components/UpInfoBadge.vue'
import { computed, DeepReadonly, inject } from 'vue'
import ColorfulTag from '../../../components/ColorfulTag.vue'

View File

@@ -9,7 +9,7 @@ import {
AudioQuality,
} from '../../../bindings'
import { ProgressData } from '../DownloadPane.vue'
import { SelectOption } from 'naive-ui'
import { NButton, NCheckbox, NSelect, NTooltip, SelectOption } from 'naive-ui'
import { getAudioQualityName, getCodecTypeName, getVideoQualityName } from '../../../utils'
type VideoFormatOption = SelectOption & {

View File

@@ -2,7 +2,7 @@
import { ref, watchEffect, computed, nextTick, DeepReadonly, watch, useTemplateRef } from 'vue'
import { PartialSelectionOptions, SelectionArea, SelectionEvent } from '@viselect/vue'
import { commands } from '../../../bindings.ts'
import { DropdownOption, NIcon } from 'naive-ui'
import { DropdownOption, NDropdown, NIcon } from 'naive-ui'
import { PhPause, PhChecks, PhTrash, PhCaretRight, PhArrowClockwise } from '@phosphor-icons/vue'
import { useStore } from '../../../store.ts'
import DownloadProgress from './DownloadProgress.vue'

View File

@@ -3,6 +3,7 @@ import { ref, watch } from 'vue'
import { commands, FavInfo } from '../../bindings.ts'
import { useStore } from '../../store.ts'
import FavPanel from './components/FavPanel.vue'
import { NEmpty } from 'naive-ui'
const store = useStore()

View File

@@ -7,6 +7,7 @@ import { computed, inject, ref } from 'vue'
import { navDownloadButtonRefKey } from '../../../injection_keys.ts'
import { SearchType } from '../../SearchPane/SearchPane.vue'
import IconButton from '../../../components/IconButton.vue'
import { NTime } from 'naive-ui'
const props = defineProps<{
media: MediaInFav

View File

@@ -3,7 +3,7 @@ import { computed, inject, onMounted, ref, watch } from 'vue'
import { commands, FavFolders, Folder, FavInfo, MediaInFav } from '../../../bindings.ts'
import { SelectionArea } from '@viselect/vue'
import { useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import { SelectOption } from 'naive-ui'
import { NButton, NDropdown, NPagination, NSelect, SelectOption } from 'naive-ui'
import { searchPaneRefKey } from '../../../injection_keys.ts'
import FavCard from './FavCard.vue'

View File

@@ -3,6 +3,7 @@ import { ref, watch } from 'vue'
import { commands, HistoryInfo } from '../../bindings.ts'
import { useStore } from '../../store.ts'
import HistoryPanel from './components/HistoryPanel.vue'
import { NEmpty } from 'naive-ui'
const store = useStore()

View File

@@ -7,6 +7,7 @@ import { ensureHttps, isElementInViewport, playTaskToQueueAnimation } from '../.
import { PhDownloadSimple, PhGoogleChromeLogo, PhMagnifyingGlass } from '@phosphor-icons/vue'
import SimpleCheckbox from '../../../components/SimpleCheckbox.vue'
import IconButton from '../../../components/IconButton.vue'
import { NTime } from 'naive-ui'
const props = defineProps<{
episodeType: EpisodeType

View File

@@ -7,6 +7,18 @@ import { useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import { SelectionArea } from '@viselect/vue'
import FloatLabelInput from '../../../components/FloatLabelInput.vue'
import { PhMagnifyingGlass } from '@phosphor-icons/vue'
import {
NButton,
NDatePicker,
NDropdown,
NIcon,
NInputGroup,
NPagination,
NPopover,
NSelect,
NTab,
NTabs,
} from 'naive-ui'
const historyInfo = defineModel<HistoryInfo>('historyInfo', { required: true })

View File

@@ -1,6 +1,6 @@
<script setup lang="ts">
import { computed, ref } from 'vue'
import { SelectProps, useMessage } from 'naive-ui'
import { NButton, NIcon, NInputGroup, NSelect, SelectProps, useMessage } from 'naive-ui'
import { PhMagnifyingGlass } from '@phosphor-icons/vue'
import FloatLabelInput from '../../components/FloatLabelInput.vue'
import {

View File

@@ -5,6 +5,7 @@ import { ref, nextTick, watch, computed } from 'vue'
import CollectionCard from './CollectionCard.vue'
import { useEpisodeCard, useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import EpisodeCard, { EpisodeInfo } from './EpisodeCard.vue'
import { NButton, NCollapseTransition, NDropdown, NTab, NTabs } from 'naive-ui'
const props = defineProps<{
bangumiResult: BangumiSearchResult

View File

@@ -5,6 +5,7 @@ import { ref, nextTick, watch, computed } from 'vue'
import CollectionCard from './CollectionCard.vue'
import { useEpisodeCard, useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import EpisodeCard, { EpisodeInfo } from './EpisodeCard.vue'
import { NButton, NCollapseTransition, NDropdown } from 'naive-ui'
const props = defineProps<{
cheeseResult: CheeseSearchResult

View File

@@ -13,7 +13,7 @@ import {
} from '../../../bindings.ts'
import SimpleCheckbox from '../../../components/SimpleCheckbox.vue'
import { PhDownloadSimple, PhGoogleChromeLogo, PhQueue, PhMagnifyingGlass } from '@phosphor-icons/vue'
import { useDialog } from 'naive-ui'
import { NTime, useDialog } from 'naive-ui'
import PartsDialogContent from './PartsDialogContent.vue'
import { ensureHttps, extractBvid, isElementInViewport, playTaskToQueueAnimation } from '../../../utils.tsx'
import { navDownloadButtonRefKey } from '../../../injection_keys.ts'

View File

@@ -4,7 +4,7 @@ import { SelectionArea } from '@viselect/vue'
import { ref, nextTick, computed, watch } from 'vue'
import CollectionCard from './CollectionCard.vue'
import { useEpisodeCard, useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import { TabsInst } from 'naive-ui'
import { TabsInst, NButton, NCollapseTransition, NDropdown, NTab, NTabs } from 'naive-ui'
import EpisodeCard, { EpisodeInfo } from './EpisodeCard.vue'
const props = defineProps<{

View File

@@ -3,6 +3,7 @@ import ColorfulTag from '../../../components/ColorfulTag.vue'
import { commands, NormalInfo, PageInNormalEp, PageInNormal } from '../../../bindings.ts'
import { EpisodeInfo } from './EpisodeCard.vue'
import { ensureHttps, playTaskToQueueAnimation } from '../../../utils.tsx'
import { NButton } from 'naive-ui'
const props = defineProps<{
info: NormalInfo

View File

@@ -5,6 +5,7 @@ import EpisodeCard, { EpisodeInfo } from './EpisodeCard.vue'
import { useEpisodeCard, useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import { SelectionArea } from '@viselect/vue'
import { searchPaneRefKey } from '../../../injection_keys.ts'
import { NButton, NDropdown, NPagination } from 'naive-ui'
const userVideoResult = defineModel<UserVideoSearchResult>('userVideoResult', { required: true })

View File

@@ -3,6 +3,7 @@ import { ref, watch } from 'vue'
import { useStore } from '../../store.ts'
import { commands, WatchLaterInfo } from '../../bindings.ts'
import WatchLaterPanel from './components/WatchLaterPanel.vue'
import { NEmpty } from 'naive-ui'
const store = useStore()

View File

@@ -7,6 +7,7 @@ import { PhDownloadSimple, PhGoogleChromeLogo, PhMagnifyingGlass } from '@phosph
import SimpleCheckbox from '../../../components/SimpleCheckbox.vue'
import { SearchType } from '../../SearchPane/SearchPane.vue'
import IconButton from '../../../components/IconButton.vue'
import { NTime } from 'naive-ui'
const props = defineProps<{
media: MediaInWatchLater

View File

@@ -5,6 +5,7 @@ import { useEpisodeDropdown, useEpisodeSelection } from '../../../utils.tsx'
import { SelectionArea } from '@viselect/vue'
import { searchPaneRefKey } from '../../../injection_keys.ts'
import WatchLaterCard from './WatchLaterCard.vue'
import { NButton, NDropdown, NPagination } from 'naive-ui'
const watchLaterInfo = defineModel<WatchLaterInfo>('watchLaterInfo', { required: true })

View File

@@ -1,8 +1,5 @@
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'
import vueJsx from '@vitejs/plugin-vue-jsx'
import vueDevTools from 'vite-plugin-vue-devtools'
@@ -12,23 +9,7 @@ const host = process.env.TAURI_DEV_HOST
// https://vitejs.dev/config/
export default defineConfig(async () => ({
plugins: [
vue(),
UnoCSS(),
vueJsx({}),
vueDevTools(),
AutoImport({
imports: [
'vue',
{
'naive-ui': ['useDialog', 'useMessage', 'useNotification', 'useLoadingBar'],
},
],
}),
Components({
resolvers: [NaiveUiResolver()],
}),
],
plugins: [vue(), UnoCSS(), vueJsx({}), vueDevTools()],
// Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build`
//