add paste.

This commit is contained in:
2023-11-30 17:02:01 +08:00
parent 24f9e97962
commit a055a14b77
10 changed files with 374 additions and 346 deletions

View File

@@ -62,7 +62,7 @@ async function getContestDetail() {
} }
async function submit() { async function submit() {
if (contest.description === '<p><br></p>') { if (contest.description === "<p><br></p>") {
contest.description = "" contest.description = ""
} }
const api = { const api = {

View File

@@ -14,7 +14,9 @@ import {
uploadTestcases, uploadTestcases,
} from "../api" } from "../api"
const CodeEditor = defineAsyncComponent(() => import("~/shared/components/CodeEditor.vue")) const CodeEditor = defineAsyncComponent(
() => import("~/shared/components/CodeEditor.vue"),
)
interface Props { interface Props {
problemID?: string problemID?: string
@@ -270,7 +272,7 @@ function getTemplate() {
function filterHint() { function filterHint() {
// 编辑器会自动添加一段 HTML // 编辑器会自动添加一段 HTML
if (problem.hint === '<p><br></p>') { if (problem.hint === "<p><br></p>") {
problem.hint = "" problem.hint = ""
} }
} }

614
src/auto-imports.d.ts vendored
View File

@@ -5,305 +5,327 @@
// Generated by unplugin-auto-import // Generated by unplugin-auto-import
export {} export {}
declare global { declare global {
const EffectScope: typeof import('vue')['EffectScope'] const EffectScope: (typeof import("vue"))["EffectScope"]
const acceptHMRUpdate: typeof import('pinia')['acceptHMRUpdate'] const acceptHMRUpdate: (typeof import("pinia"))["acceptHMRUpdate"]
const asyncComputed: typeof import('@vueuse/core')['asyncComputed'] const asyncComputed: (typeof import("@vueuse/core"))["asyncComputed"]
const autoResetRef: typeof import('@vueuse/core')['autoResetRef'] const autoResetRef: (typeof import("@vueuse/core"))["autoResetRef"]
const computed: typeof import('vue')['computed'] const computed: (typeof import("vue"))["computed"]
const computedAsync: typeof import('@vueuse/core')['computedAsync'] const computedAsync: (typeof import("@vueuse/core"))["computedAsync"]
const computedEager: typeof import('@vueuse/core')['computedEager'] const computedEager: (typeof import("@vueuse/core"))["computedEager"]
const computedInject: typeof import('@vueuse/core')['computedInject'] const computedInject: (typeof import("@vueuse/core"))["computedInject"]
const computedWithControl: typeof import('@vueuse/core')['computedWithControl'] const computedWithControl: (typeof import("@vueuse/core"))["computedWithControl"]
const controlledComputed: typeof import('@vueuse/core')['controlledComputed'] const controlledComputed: (typeof import("@vueuse/core"))["controlledComputed"]
const controlledRef: typeof import('@vueuse/core')['controlledRef'] const controlledRef: (typeof import("@vueuse/core"))["controlledRef"]
const createApp: typeof import('vue')['createApp'] const createApp: (typeof import("vue"))["createApp"]
const createEventHook: typeof import('@vueuse/core')['createEventHook'] const createEventHook: (typeof import("@vueuse/core"))["createEventHook"]
const createGlobalState: typeof import('@vueuse/core')['createGlobalState'] const createGlobalState: (typeof import("@vueuse/core"))["createGlobalState"]
const createInjectionState: typeof import('@vueuse/core')['createInjectionState'] const createInjectionState: (typeof import("@vueuse/core"))["createInjectionState"]
const createPinia: typeof import('pinia')['createPinia'] const createPinia: (typeof import("pinia"))["createPinia"]
const createReactiveFn: typeof import('@vueuse/core')['createReactiveFn'] const createReactiveFn: (typeof import("@vueuse/core"))["createReactiveFn"]
const createReusableTemplate: typeof import('@vueuse/core')['createReusableTemplate'] const createReusableTemplate: (typeof import("@vueuse/core"))["createReusableTemplate"]
const createSharedComposable: typeof import('@vueuse/core')['createSharedComposable'] const createSharedComposable: (typeof import("@vueuse/core"))["createSharedComposable"]
const createTemplatePromise: typeof import('@vueuse/core')['createTemplatePromise'] const createTemplatePromise: (typeof import("@vueuse/core"))["createTemplatePromise"]
const createUnrefFn: typeof import('@vueuse/core')['createUnrefFn'] const createUnrefFn: (typeof import("@vueuse/core"))["createUnrefFn"]
const customRef: typeof import('vue')['customRef'] const customRef: (typeof import("vue"))["customRef"]
const debouncedRef: typeof import('@vueuse/core')['debouncedRef'] const debouncedRef: (typeof import("@vueuse/core"))["debouncedRef"]
const debouncedWatch: typeof import('@vueuse/core')['debouncedWatch'] const debouncedWatch: (typeof import("@vueuse/core"))["debouncedWatch"]
const defineAsyncComponent: typeof import('vue')['defineAsyncComponent'] const defineAsyncComponent: (typeof import("vue"))["defineAsyncComponent"]
const defineComponent: typeof import('vue')['defineComponent'] const defineComponent: (typeof import("vue"))["defineComponent"]
const defineStore: typeof import('pinia')['defineStore'] const defineStore: (typeof import("pinia"))["defineStore"]
const eagerComputed: typeof import('@vueuse/core')['eagerComputed'] const eagerComputed: (typeof import("@vueuse/core"))["eagerComputed"]
const effectScope: typeof import('vue')['effectScope'] const effectScope: (typeof import("vue"))["effectScope"]
const extendRef: typeof import('@vueuse/core')['extendRef'] const extendRef: (typeof import("@vueuse/core"))["extendRef"]
const getActivePinia: typeof import('pinia')['getActivePinia'] const getActivePinia: (typeof import("pinia"))["getActivePinia"]
const getCurrentInstance: typeof import('vue')['getCurrentInstance'] const getCurrentInstance: (typeof import("vue"))["getCurrentInstance"]
const getCurrentScope: typeof import('vue')['getCurrentScope'] const getCurrentScope: (typeof import("vue"))["getCurrentScope"]
const h: typeof import('vue')['h'] const h: (typeof import("vue"))["h"]
const ignorableWatch: typeof import('@vueuse/core')['ignorableWatch'] const ignorableWatch: (typeof import("@vueuse/core"))["ignorableWatch"]
const inject: typeof import('vue')['inject'] const inject: (typeof import("vue"))["inject"]
const injectLocal: typeof import('@vueuse/core')['injectLocal'] const injectLocal: (typeof import("@vueuse/core"))["injectLocal"]
const isDefined: typeof import('@vueuse/core')['isDefined'] const isDefined: (typeof import("@vueuse/core"))["isDefined"]
const isProxy: typeof import('vue')['isProxy'] const isProxy: (typeof import("vue"))["isProxy"]
const isReactive: typeof import('vue')['isReactive'] const isReactive: (typeof import("vue"))["isReactive"]
const isReadonly: typeof import('vue')['isReadonly'] const isReadonly: (typeof import("vue"))["isReadonly"]
const isRef: typeof import('vue')['isRef'] const isRef: (typeof import("vue"))["isRef"]
const makeDestructurable: typeof import('@vueuse/core')['makeDestructurable'] const makeDestructurable: (typeof import("@vueuse/core"))["makeDestructurable"]
const mapActions: typeof import('pinia')['mapActions'] const mapActions: (typeof import("pinia"))["mapActions"]
const mapGetters: typeof import('pinia')['mapGetters'] const mapGetters: (typeof import("pinia"))["mapGetters"]
const mapState: typeof import('pinia')['mapState'] const mapState: (typeof import("pinia"))["mapState"]
const mapStores: typeof import('pinia')['mapStores'] const mapStores: (typeof import("pinia"))["mapStores"]
const mapWritableState: typeof import('pinia')['mapWritableState'] const mapWritableState: (typeof import("pinia"))["mapWritableState"]
const markRaw: typeof import('vue')['markRaw'] const markRaw: (typeof import("vue"))["markRaw"]
const nextTick: typeof import('vue')['nextTick'] const nextTick: (typeof import("vue"))["nextTick"]
const onActivated: typeof import('vue')['onActivated'] const onActivated: (typeof import("vue"))["onActivated"]
const onBeforeMount: typeof import('vue')['onBeforeMount'] const onBeforeMount: (typeof import("vue"))["onBeforeMount"]
const onBeforeRouteLeave: typeof import('vue-router')['onBeforeRouteLeave'] const onBeforeRouteLeave: (typeof import("vue-router"))["onBeforeRouteLeave"]
const onBeforeRouteUpdate: typeof import('vue-router')['onBeforeRouteUpdate'] const onBeforeRouteUpdate: (typeof import("vue-router"))["onBeforeRouteUpdate"]
const onBeforeUnmount: typeof import('vue')['onBeforeUnmount'] const onBeforeUnmount: (typeof import("vue"))["onBeforeUnmount"]
const onBeforeUpdate: typeof import('vue')['onBeforeUpdate'] const onBeforeUpdate: (typeof import("vue"))["onBeforeUpdate"]
const onClickOutside: typeof import('@vueuse/core')['onClickOutside'] const onClickOutside: (typeof import("@vueuse/core"))["onClickOutside"]
const onDeactivated: typeof import('vue')['onDeactivated'] const onDeactivated: (typeof import("vue"))["onDeactivated"]
const onErrorCaptured: typeof import('vue')['onErrorCaptured'] const onErrorCaptured: (typeof import("vue"))["onErrorCaptured"]
const onKeyStroke: typeof import('@vueuse/core')['onKeyStroke'] const onKeyStroke: (typeof import("@vueuse/core"))["onKeyStroke"]
const onLongPress: typeof import('@vueuse/core')['onLongPress'] const onLongPress: (typeof import("@vueuse/core"))["onLongPress"]
const onMounted: typeof import('vue')['onMounted'] const onMounted: (typeof import("vue"))["onMounted"]
const onRenderTracked: typeof import('vue')['onRenderTracked'] const onRenderTracked: (typeof import("vue"))["onRenderTracked"]
const onRenderTriggered: typeof import('vue')['onRenderTriggered'] const onRenderTriggered: (typeof import("vue"))["onRenderTriggered"]
const onScopeDispose: typeof import('vue')['onScopeDispose'] const onScopeDispose: (typeof import("vue"))["onScopeDispose"]
const onServerPrefetch: typeof import('vue')['onServerPrefetch'] const onServerPrefetch: (typeof import("vue"))["onServerPrefetch"]
const onStartTyping: typeof import('@vueuse/core')['onStartTyping'] const onStartTyping: (typeof import("@vueuse/core"))["onStartTyping"]
const onUnmounted: typeof import('vue')['onUnmounted'] const onUnmounted: (typeof import("vue"))["onUnmounted"]
const onUpdated: typeof import('vue')['onUpdated'] const onUpdated: (typeof import("vue"))["onUpdated"]
const pausableWatch: typeof import('@vueuse/core')['pausableWatch'] const pausableWatch: (typeof import("@vueuse/core"))["pausableWatch"]
const provide: typeof import('vue')['provide'] const provide: (typeof import("vue"))["provide"]
const provideLocal: typeof import('@vueuse/core')['provideLocal'] const provideLocal: (typeof import("@vueuse/core"))["provideLocal"]
const reactify: typeof import('@vueuse/core')['reactify'] const reactify: (typeof import("@vueuse/core"))["reactify"]
const reactifyObject: typeof import('@vueuse/core')['reactifyObject'] const reactifyObject: (typeof import("@vueuse/core"))["reactifyObject"]
const reactive: typeof import('vue')['reactive'] const reactive: (typeof import("vue"))["reactive"]
const reactiveComputed: typeof import('@vueuse/core')['reactiveComputed'] const reactiveComputed: (typeof import("@vueuse/core"))["reactiveComputed"]
const reactiveOmit: typeof import('@vueuse/core')['reactiveOmit'] const reactiveOmit: (typeof import("@vueuse/core"))["reactiveOmit"]
const reactivePick: typeof import('@vueuse/core')['reactivePick'] const reactivePick: (typeof import("@vueuse/core"))["reactivePick"]
const readonly: typeof import('vue')['readonly'] const readonly: (typeof import("vue"))["readonly"]
const ref: typeof import('vue')['ref'] const ref: (typeof import("vue"))["ref"]
const refAutoReset: typeof import('@vueuse/core')['refAutoReset'] const refAutoReset: (typeof import("@vueuse/core"))["refAutoReset"]
const refDebounced: typeof import('@vueuse/core')['refDebounced'] const refDebounced: (typeof import("@vueuse/core"))["refDebounced"]
const refDefault: typeof import('@vueuse/core')['refDefault'] const refDefault: (typeof import("@vueuse/core"))["refDefault"]
const refThrottled: typeof import('@vueuse/core')['refThrottled'] const refThrottled: (typeof import("@vueuse/core"))["refThrottled"]
const refWithControl: typeof import('@vueuse/core')['refWithControl'] const refWithControl: (typeof import("@vueuse/core"))["refWithControl"]
const resolveComponent: typeof import('vue')['resolveComponent'] const resolveComponent: (typeof import("vue"))["resolveComponent"]
const resolveRef: typeof import('@vueuse/core')['resolveRef'] const resolveRef: (typeof import("@vueuse/core"))["resolveRef"]
const resolveUnref: typeof import('@vueuse/core')['resolveUnref'] const resolveUnref: (typeof import("@vueuse/core"))["resolveUnref"]
const setActivePinia: typeof import('pinia')['setActivePinia'] const setActivePinia: (typeof import("pinia"))["setActivePinia"]
const setMapStoreSuffix: typeof import('pinia')['setMapStoreSuffix'] const setMapStoreSuffix: (typeof import("pinia"))["setMapStoreSuffix"]
const shallowReactive: typeof import('vue')['shallowReactive'] const shallowReactive: (typeof import("vue"))["shallowReactive"]
const shallowReadonly: typeof import('vue')['shallowReadonly'] const shallowReadonly: (typeof import("vue"))["shallowReadonly"]
const shallowRef: typeof import('vue')['shallowRef'] const shallowRef: (typeof import("vue"))["shallowRef"]
const storeToRefs: typeof import('pinia')['storeToRefs'] const storeToRefs: (typeof import("pinia"))["storeToRefs"]
const syncRef: typeof import('@vueuse/core')['syncRef'] const syncRef: (typeof import("@vueuse/core"))["syncRef"]
const syncRefs: typeof import('@vueuse/core')['syncRefs'] const syncRefs: (typeof import("@vueuse/core"))["syncRefs"]
const templateRef: typeof import('@vueuse/core')['templateRef'] const templateRef: (typeof import("@vueuse/core"))["templateRef"]
const throttledRef: typeof import('@vueuse/core')['throttledRef'] const throttledRef: (typeof import("@vueuse/core"))["throttledRef"]
const throttledWatch: typeof import('@vueuse/core')['throttledWatch'] const throttledWatch: (typeof import("@vueuse/core"))["throttledWatch"]
const toRaw: typeof import('vue')['toRaw'] const toRaw: (typeof import("vue"))["toRaw"]
const toReactive: typeof import('@vueuse/core')['toReactive'] const toReactive: (typeof import("@vueuse/core"))["toReactive"]
const toRef: typeof import('vue')['toRef'] const toRef: (typeof import("vue"))["toRef"]
const toRefs: typeof import('vue')['toRefs'] const toRefs: (typeof import("vue"))["toRefs"]
const toValue: typeof import('vue')['toValue'] const toValue: (typeof import("vue"))["toValue"]
const triggerRef: typeof import('vue')['triggerRef'] const triggerRef: (typeof import("vue"))["triggerRef"]
const tryOnBeforeMount: typeof import('@vueuse/core')['tryOnBeforeMount'] const tryOnBeforeMount: (typeof import("@vueuse/core"))["tryOnBeforeMount"]
const tryOnBeforeUnmount: typeof import('@vueuse/core')['tryOnBeforeUnmount'] const tryOnBeforeUnmount: (typeof import("@vueuse/core"))["tryOnBeforeUnmount"]
const tryOnMounted: typeof import('@vueuse/core')['tryOnMounted'] const tryOnMounted: (typeof import("@vueuse/core"))["tryOnMounted"]
const tryOnScopeDispose: typeof import('@vueuse/core')['tryOnScopeDispose'] const tryOnScopeDispose: (typeof import("@vueuse/core"))["tryOnScopeDispose"]
const tryOnUnmounted: typeof import('@vueuse/core')['tryOnUnmounted'] const tryOnUnmounted: (typeof import("@vueuse/core"))["tryOnUnmounted"]
const unref: typeof import('vue')['unref'] const unref: (typeof import("vue"))["unref"]
const unrefElement: typeof import('@vueuse/core')['unrefElement'] const unrefElement: (typeof import("@vueuse/core"))["unrefElement"]
const until: typeof import('@vueuse/core')['until'] const until: (typeof import("@vueuse/core"))["until"]
const useActiveElement: typeof import('@vueuse/core')['useActiveElement'] const useActiveElement: (typeof import("@vueuse/core"))["useActiveElement"]
const useAnimate: typeof import('@vueuse/core')['useAnimate'] const useAnimate: (typeof import("@vueuse/core"))["useAnimate"]
const useArrayDifference: typeof import('@vueuse/core')['useArrayDifference'] const useArrayDifference: (typeof import("@vueuse/core"))["useArrayDifference"]
const useArrayEvery: typeof import('@vueuse/core')['useArrayEvery'] const useArrayEvery: (typeof import("@vueuse/core"))["useArrayEvery"]
const useArrayFilter: typeof import('@vueuse/core')['useArrayFilter'] const useArrayFilter: (typeof import("@vueuse/core"))["useArrayFilter"]
const useArrayFind: typeof import('@vueuse/core')['useArrayFind'] const useArrayFind: (typeof import("@vueuse/core"))["useArrayFind"]
const useArrayFindIndex: typeof import('@vueuse/core')['useArrayFindIndex'] const useArrayFindIndex: (typeof import("@vueuse/core"))["useArrayFindIndex"]
const useArrayFindLast: typeof import('@vueuse/core')['useArrayFindLast'] const useArrayFindLast: (typeof import("@vueuse/core"))["useArrayFindLast"]
const useArrayIncludes: typeof import('@vueuse/core')['useArrayIncludes'] const useArrayIncludes: (typeof import("@vueuse/core"))["useArrayIncludes"]
const useArrayJoin: typeof import('@vueuse/core')['useArrayJoin'] const useArrayJoin: (typeof import("@vueuse/core"))["useArrayJoin"]
const useArrayMap: typeof import('@vueuse/core')['useArrayMap'] const useArrayMap: (typeof import("@vueuse/core"))["useArrayMap"]
const useArrayReduce: typeof import('@vueuse/core')['useArrayReduce'] const useArrayReduce: (typeof import("@vueuse/core"))["useArrayReduce"]
const useArraySome: typeof import('@vueuse/core')['useArraySome'] const useArraySome: (typeof import("@vueuse/core"))["useArraySome"]
const useArrayUnique: typeof import('@vueuse/core')['useArrayUnique'] const useArrayUnique: (typeof import("@vueuse/core"))["useArrayUnique"]
const useAsyncQueue: typeof import('@vueuse/core')['useAsyncQueue'] const useAsyncQueue: (typeof import("@vueuse/core"))["useAsyncQueue"]
const useAsyncState: typeof import('@vueuse/core')['useAsyncState'] const useAsyncState: (typeof import("@vueuse/core"))["useAsyncState"]
const useAttrs: typeof import('vue')['useAttrs'] const useAttrs: (typeof import("vue"))["useAttrs"]
const useBase64: typeof import('@vueuse/core')['useBase64'] const useBase64: (typeof import("@vueuse/core"))["useBase64"]
const useBattery: typeof import('@vueuse/core')['useBattery'] const useBattery: (typeof import("@vueuse/core"))["useBattery"]
const useBluetooth: typeof import('@vueuse/core')['useBluetooth'] const useBluetooth: (typeof import("@vueuse/core"))["useBluetooth"]
const useBreakpoints: typeof import('@vueuse/core')['useBreakpoints'] const useBreakpoints: (typeof import("@vueuse/core"))["useBreakpoints"]
const useBroadcastChannel: typeof import('@vueuse/core')['useBroadcastChannel'] const useBroadcastChannel: (typeof import("@vueuse/core"))["useBroadcastChannel"]
const useBrowserLocation: typeof import('@vueuse/core')['useBrowserLocation'] const useBrowserLocation: (typeof import("@vueuse/core"))["useBrowserLocation"]
const useCached: typeof import('@vueuse/core')['useCached'] const useCached: (typeof import("@vueuse/core"))["useCached"]
const useClipboard: typeof import('@vueuse/core')['useClipboard'] const useClipboard: (typeof import("@vueuse/core"))["useClipboard"]
const useClipboardItems: typeof import('@vueuse/core')['useClipboardItems'] const useClipboardItems: (typeof import("@vueuse/core"))["useClipboardItems"]
const useCloned: typeof import('@vueuse/core')['useCloned'] const useCloned: (typeof import("@vueuse/core"))["useCloned"]
const useColorMode: typeof import('@vueuse/core')['useColorMode'] const useColorMode: (typeof import("@vueuse/core"))["useColorMode"]
const useConfirmDialog: typeof import('@vueuse/core')['useConfirmDialog'] const useConfirmDialog: (typeof import("@vueuse/core"))["useConfirmDialog"]
const useCounter: typeof import('@vueuse/core')['useCounter'] const useCounter: (typeof import("@vueuse/core"))["useCounter"]
const useCssModule: typeof import('vue')['useCssModule'] const useCssModule: (typeof import("vue"))["useCssModule"]
const useCssVar: typeof import('@vueuse/core')['useCssVar'] const useCssVar: (typeof import("@vueuse/core"))["useCssVar"]
const useCssVars: typeof import('vue')['useCssVars'] const useCssVars: (typeof import("vue"))["useCssVars"]
const useCurrentElement: typeof import('@vueuse/core')['useCurrentElement'] const useCurrentElement: (typeof import("@vueuse/core"))["useCurrentElement"]
const useCycleList: typeof import('@vueuse/core')['useCycleList'] const useCycleList: (typeof import("@vueuse/core"))["useCycleList"]
const useDark: typeof import('@vueuse/core')['useDark'] const useDark: (typeof import("@vueuse/core"))["useDark"]
const useDateFormat: typeof import('@vueuse/core')['useDateFormat'] const useDateFormat: (typeof import("@vueuse/core"))["useDateFormat"]
const useDebounce: typeof import('@vueuse/core')['useDebounce'] const useDebounce: (typeof import("@vueuse/core"))["useDebounce"]
const useDebounceFn: typeof import('@vueuse/core')['useDebounceFn'] const useDebounceFn: (typeof import("@vueuse/core"))["useDebounceFn"]
const useDebouncedRefHistory: typeof import('@vueuse/core')['useDebouncedRefHistory'] const useDebouncedRefHistory: (typeof import("@vueuse/core"))["useDebouncedRefHistory"]
const useDeviceMotion: typeof import('@vueuse/core')['useDeviceMotion'] const useDeviceMotion: (typeof import("@vueuse/core"))["useDeviceMotion"]
const useDeviceOrientation: typeof import('@vueuse/core')['useDeviceOrientation'] const useDeviceOrientation: (typeof import("@vueuse/core"))["useDeviceOrientation"]
const useDevicePixelRatio: typeof import('@vueuse/core')['useDevicePixelRatio'] const useDevicePixelRatio: (typeof import("@vueuse/core"))["useDevicePixelRatio"]
const useDevicesList: typeof import('@vueuse/core')['useDevicesList'] const useDevicesList: (typeof import("@vueuse/core"))["useDevicesList"]
const useDialog: typeof import('naive-ui')['useDialog'] const useDialog: (typeof import("naive-ui"))["useDialog"]
const useDisplayMedia: typeof import('@vueuse/core')['useDisplayMedia'] const useDisplayMedia: (typeof import("@vueuse/core"))["useDisplayMedia"]
const useDocumentVisibility: typeof import('@vueuse/core')['useDocumentVisibility'] const useDocumentVisibility: (typeof import("@vueuse/core"))["useDocumentVisibility"]
const useDraggable: typeof import('@vueuse/core')['useDraggable'] const useDraggable: (typeof import("@vueuse/core"))["useDraggable"]
const useDropZone: typeof import('@vueuse/core')['useDropZone'] const useDropZone: (typeof import("@vueuse/core"))["useDropZone"]
const useElementBounding: typeof import('@vueuse/core')['useElementBounding'] const useElementBounding: (typeof import("@vueuse/core"))["useElementBounding"]
const useElementByPoint: typeof import('@vueuse/core')['useElementByPoint'] const useElementByPoint: (typeof import("@vueuse/core"))["useElementByPoint"]
const useElementHover: typeof import('@vueuse/core')['useElementHover'] const useElementHover: (typeof import("@vueuse/core"))["useElementHover"]
const useElementSize: typeof import('@vueuse/core')['useElementSize'] const useElementSize: (typeof import("@vueuse/core"))["useElementSize"]
const useElementVisibility: typeof import('@vueuse/core')['useElementVisibility'] const useElementVisibility: (typeof import("@vueuse/core"))["useElementVisibility"]
const useEventBus: typeof import('@vueuse/core')['useEventBus'] const useEventBus: (typeof import("@vueuse/core"))["useEventBus"]
const useEventListener: typeof import('@vueuse/core')['useEventListener'] const useEventListener: (typeof import("@vueuse/core"))["useEventListener"]
const useEventSource: typeof import('@vueuse/core')['useEventSource'] const useEventSource: (typeof import("@vueuse/core"))["useEventSource"]
const useEyeDropper: typeof import('@vueuse/core')['useEyeDropper'] const useEyeDropper: (typeof import("@vueuse/core"))["useEyeDropper"]
const useFavicon: typeof import('@vueuse/core')['useFavicon'] const useFavicon: (typeof import("@vueuse/core"))["useFavicon"]
const useFetch: typeof import('@vueuse/core')['useFetch'] const useFetch: (typeof import("@vueuse/core"))["useFetch"]
const useFileDialog: typeof import('@vueuse/core')['useFileDialog'] const useFileDialog: (typeof import("@vueuse/core"))["useFileDialog"]
const useFileSystemAccess: typeof import('@vueuse/core')['useFileSystemAccess'] const useFileSystemAccess: (typeof import("@vueuse/core"))["useFileSystemAccess"]
const useFocus: typeof import('@vueuse/core')['useFocus'] const useFocus: (typeof import("@vueuse/core"))["useFocus"]
const useFocusWithin: typeof import('@vueuse/core')['useFocusWithin'] const useFocusWithin: (typeof import("@vueuse/core"))["useFocusWithin"]
const useFps: typeof import('@vueuse/core')['useFps'] const useFps: (typeof import("@vueuse/core"))["useFps"]
const useFullscreen: typeof import('@vueuse/core')['useFullscreen'] const useFullscreen: (typeof import("@vueuse/core"))["useFullscreen"]
const useGamepad: typeof import('@vueuse/core')['useGamepad'] const useGamepad: (typeof import("@vueuse/core"))["useGamepad"]
const useGeolocation: typeof import('@vueuse/core')['useGeolocation'] const useGeolocation: (typeof import("@vueuse/core"))["useGeolocation"]
const useIdle: typeof import('@vueuse/core')['useIdle'] const useIdle: (typeof import("@vueuse/core"))["useIdle"]
const useImage: typeof import('@vueuse/core')['useImage'] const useImage: (typeof import("@vueuse/core"))["useImage"]
const useInfiniteScroll: typeof import('@vueuse/core')['useInfiniteScroll'] const useInfiniteScroll: (typeof import("@vueuse/core"))["useInfiniteScroll"]
const useIntersectionObserver: typeof import('@vueuse/core')['useIntersectionObserver'] const useIntersectionObserver: (typeof import("@vueuse/core"))["useIntersectionObserver"]
const useInterval: typeof import('@vueuse/core')['useInterval'] const useInterval: (typeof import("@vueuse/core"))["useInterval"]
const useIntervalFn: typeof import('@vueuse/core')['useIntervalFn'] const useIntervalFn: (typeof import("@vueuse/core"))["useIntervalFn"]
const useKeyModifier: typeof import('@vueuse/core')['useKeyModifier'] const useKeyModifier: (typeof import("@vueuse/core"))["useKeyModifier"]
const useLastChanged: typeof import('@vueuse/core')['useLastChanged'] const useLastChanged: (typeof import("@vueuse/core"))["useLastChanged"]
const useLink: typeof import('vue-router')['useLink'] const useLink: (typeof import("vue-router"))["useLink"]
const useLoadingBar: typeof import('naive-ui')['useLoadingBar'] const useLoadingBar: (typeof import("naive-ui"))["useLoadingBar"]
const useLocalStorage: typeof import('@vueuse/core')['useLocalStorage'] const useLocalStorage: (typeof import("@vueuse/core"))["useLocalStorage"]
const useMagicKeys: typeof import('@vueuse/core')['useMagicKeys'] const useMagicKeys: (typeof import("@vueuse/core"))["useMagicKeys"]
const useManualRefHistory: typeof import('@vueuse/core')['useManualRefHistory'] const useManualRefHistory: (typeof import("@vueuse/core"))["useManualRefHistory"]
const useMediaControls: typeof import('@vueuse/core')['useMediaControls'] const useMediaControls: (typeof import("@vueuse/core"))["useMediaControls"]
const useMediaQuery: typeof import('@vueuse/core')['useMediaQuery'] const useMediaQuery: (typeof import("@vueuse/core"))["useMediaQuery"]
const useMemoize: typeof import('@vueuse/core')['useMemoize'] const useMemoize: (typeof import("@vueuse/core"))["useMemoize"]
const useMemory: typeof import('@vueuse/core')['useMemory'] const useMemory: (typeof import("@vueuse/core"))["useMemory"]
const useMessage: typeof import('naive-ui')['useMessage'] const useMessage: (typeof import("naive-ui"))["useMessage"]
const useMounted: typeof import('@vueuse/core')['useMounted'] const useMounted: (typeof import("@vueuse/core"))["useMounted"]
const useMouse: typeof import('@vueuse/core')['useMouse'] const useMouse: (typeof import("@vueuse/core"))["useMouse"]
const useMouseInElement: typeof import('@vueuse/core')['useMouseInElement'] const useMouseInElement: (typeof import("@vueuse/core"))["useMouseInElement"]
const useMousePressed: typeof import('@vueuse/core')['useMousePressed'] const useMousePressed: (typeof import("@vueuse/core"))["useMousePressed"]
const useMutationObserver: typeof import('@vueuse/core')['useMutationObserver'] const useMutationObserver: (typeof import("@vueuse/core"))["useMutationObserver"]
const useNavigatorLanguage: typeof import('@vueuse/core')['useNavigatorLanguage'] const useNavigatorLanguage: (typeof import("@vueuse/core"))["useNavigatorLanguage"]
const useNetwork: typeof import('@vueuse/core')['useNetwork'] const useNetwork: (typeof import("@vueuse/core"))["useNetwork"]
const useNotification: typeof import('naive-ui')['useNotification'] const useNotification: (typeof import("naive-ui"))["useNotification"]
const useNow: typeof import('@vueuse/core')['useNow'] const useNow: (typeof import("@vueuse/core"))["useNow"]
const useObjectUrl: typeof import('@vueuse/core')['useObjectUrl'] const useObjectUrl: (typeof import("@vueuse/core"))["useObjectUrl"]
const useOffsetPagination: typeof import('@vueuse/core')['useOffsetPagination'] const useOffsetPagination: (typeof import("@vueuse/core"))["useOffsetPagination"]
const useOnline: typeof import('@vueuse/core')['useOnline'] const useOnline: (typeof import("@vueuse/core"))["useOnline"]
const usePageLeave: typeof import('@vueuse/core')['usePageLeave'] const usePageLeave: (typeof import("@vueuse/core"))["usePageLeave"]
const useParallax: typeof import('@vueuse/core')['useParallax'] const useParallax: (typeof import("@vueuse/core"))["useParallax"]
const useParentElement: typeof import('@vueuse/core')['useParentElement'] const useParentElement: (typeof import("@vueuse/core"))["useParentElement"]
const usePerformanceObserver: typeof import('@vueuse/core')['usePerformanceObserver'] const usePerformanceObserver: (typeof import("@vueuse/core"))["usePerformanceObserver"]
const usePermission: typeof import('@vueuse/core')['usePermission'] const usePermission: (typeof import("@vueuse/core"))["usePermission"]
const usePointer: typeof import('@vueuse/core')['usePointer'] const usePointer: (typeof import("@vueuse/core"))["usePointer"]
const usePointerLock: typeof import('@vueuse/core')['usePointerLock'] const usePointerLock: (typeof import("@vueuse/core"))["usePointerLock"]
const usePointerSwipe: typeof import('@vueuse/core')['usePointerSwipe'] const usePointerSwipe: (typeof import("@vueuse/core"))["usePointerSwipe"]
const usePreferredColorScheme: typeof import('@vueuse/core')['usePreferredColorScheme'] const usePreferredColorScheme: (typeof import("@vueuse/core"))["usePreferredColorScheme"]
const usePreferredContrast: typeof import('@vueuse/core')['usePreferredContrast'] const usePreferredContrast: (typeof import("@vueuse/core"))["usePreferredContrast"]
const usePreferredDark: typeof import('@vueuse/core')['usePreferredDark'] const usePreferredDark: (typeof import("@vueuse/core"))["usePreferredDark"]
const usePreferredLanguages: typeof import('@vueuse/core')['usePreferredLanguages'] const usePreferredLanguages: (typeof import("@vueuse/core"))["usePreferredLanguages"]
const usePreferredReducedMotion: typeof import('@vueuse/core')['usePreferredReducedMotion'] const usePreferredReducedMotion: (typeof import("@vueuse/core"))["usePreferredReducedMotion"]
const usePrevious: typeof import('@vueuse/core')['usePrevious'] const usePrevious: (typeof import("@vueuse/core"))["usePrevious"]
const useRafFn: typeof import('@vueuse/core')['useRafFn'] const useRafFn: (typeof import("@vueuse/core"))["useRafFn"]
const useRefHistory: typeof import('@vueuse/core')['useRefHistory'] const useRefHistory: (typeof import("@vueuse/core"))["useRefHistory"]
const useResizeObserver: typeof import('@vueuse/core')['useResizeObserver'] const useResizeObserver: (typeof import("@vueuse/core"))["useResizeObserver"]
const useRoute: typeof import('vue-router')['useRoute'] const useRoute: (typeof import("vue-router"))["useRoute"]
const useRouter: typeof import('vue-router')['useRouter'] const useRouter: (typeof import("vue-router"))["useRouter"]
const useScreenOrientation: typeof import('@vueuse/core')['useScreenOrientation'] const useScreenOrientation: (typeof import("@vueuse/core"))["useScreenOrientation"]
const useScreenSafeArea: typeof import('@vueuse/core')['useScreenSafeArea'] const useScreenSafeArea: (typeof import("@vueuse/core"))["useScreenSafeArea"]
const useScriptTag: typeof import('@vueuse/core')['useScriptTag'] const useScriptTag: (typeof import("@vueuse/core"))["useScriptTag"]
const useScroll: typeof import('@vueuse/core')['useScroll'] const useScroll: (typeof import("@vueuse/core"))["useScroll"]
const useScrollLock: typeof import('@vueuse/core')['useScrollLock'] const useScrollLock: (typeof import("@vueuse/core"))["useScrollLock"]
const useSessionStorage: typeof import('@vueuse/core')['useSessionStorage'] const useSessionStorage: (typeof import("@vueuse/core"))["useSessionStorage"]
const useShare: typeof import('@vueuse/core')['useShare'] const useShare: (typeof import("@vueuse/core"))["useShare"]
const useSlots: typeof import('vue')['useSlots'] const useSlots: (typeof import("vue"))["useSlots"]
const useSorted: typeof import('@vueuse/core')['useSorted'] const useSorted: (typeof import("@vueuse/core"))["useSorted"]
const useSpeechRecognition: typeof import('@vueuse/core')['useSpeechRecognition'] const useSpeechRecognition: (typeof import("@vueuse/core"))["useSpeechRecognition"]
const useSpeechSynthesis: typeof import('@vueuse/core')['useSpeechSynthesis'] const useSpeechSynthesis: (typeof import("@vueuse/core"))["useSpeechSynthesis"]
const useStepper: typeof import('@vueuse/core')['useStepper'] const useStepper: (typeof import("@vueuse/core"))["useStepper"]
const useStorage: typeof import('@vueuse/core')['useStorage'] const useStorage: (typeof import("@vueuse/core"))["useStorage"]
const useStorageAsync: typeof import('@vueuse/core')['useStorageAsync'] const useStorageAsync: (typeof import("@vueuse/core"))["useStorageAsync"]
const useStyleTag: typeof import('@vueuse/core')['useStyleTag'] const useStyleTag: (typeof import("@vueuse/core"))["useStyleTag"]
const useSupported: typeof import('@vueuse/core')['useSupported'] const useSupported: (typeof import("@vueuse/core"))["useSupported"]
const useSwipe: typeof import('@vueuse/core')['useSwipe'] const useSwipe: (typeof import("@vueuse/core"))["useSwipe"]
const useTemplateRefsList: typeof import('@vueuse/core')['useTemplateRefsList'] const useTemplateRefsList: (typeof import("@vueuse/core"))["useTemplateRefsList"]
const useTextDirection: typeof import('@vueuse/core')['useTextDirection'] const useTextDirection: (typeof import("@vueuse/core"))["useTextDirection"]
const useTextSelection: typeof import('@vueuse/core')['useTextSelection'] const useTextSelection: (typeof import("@vueuse/core"))["useTextSelection"]
const useTextareaAutosize: typeof import('@vueuse/core')['useTextareaAutosize'] const useTextareaAutosize: (typeof import("@vueuse/core"))["useTextareaAutosize"]
const useThrottle: typeof import('@vueuse/core')['useThrottle'] const useThrottle: (typeof import("@vueuse/core"))["useThrottle"]
const useThrottleFn: typeof import('@vueuse/core')['useThrottleFn'] const useThrottleFn: (typeof import("@vueuse/core"))["useThrottleFn"]
const useThrottledRefHistory: typeof import('@vueuse/core')['useThrottledRefHistory'] const useThrottledRefHistory: (typeof import("@vueuse/core"))["useThrottledRefHistory"]
const useTimeAgo: typeof import('@vueuse/core')['useTimeAgo'] const useTimeAgo: (typeof import("@vueuse/core"))["useTimeAgo"]
const useTimeout: typeof import('@vueuse/core')['useTimeout'] const useTimeout: (typeof import("@vueuse/core"))["useTimeout"]
const useTimeoutFn: typeof import('@vueuse/core')['useTimeoutFn'] const useTimeoutFn: (typeof import("@vueuse/core"))["useTimeoutFn"]
const useTimeoutPoll: typeof import('@vueuse/core')['useTimeoutPoll'] const useTimeoutPoll: (typeof import("@vueuse/core"))["useTimeoutPoll"]
const useTimestamp: typeof import('@vueuse/core')['useTimestamp'] const useTimestamp: (typeof import("@vueuse/core"))["useTimestamp"]
const useTitle: typeof import('@vueuse/core')['useTitle'] const useTitle: (typeof import("@vueuse/core"))["useTitle"]
const useToNumber: typeof import('@vueuse/core')['useToNumber'] const useToNumber: (typeof import("@vueuse/core"))["useToNumber"]
const useToString: typeof import('@vueuse/core')['useToString'] const useToString: (typeof import("@vueuse/core"))["useToString"]
const useToggle: typeof import('@vueuse/core')['useToggle'] const useToggle: (typeof import("@vueuse/core"))["useToggle"]
const useTransition: typeof import('@vueuse/core')['useTransition'] const useTransition: (typeof import("@vueuse/core"))["useTransition"]
const useUrlSearchParams: typeof import('@vueuse/core')['useUrlSearchParams'] const useUrlSearchParams: (typeof import("@vueuse/core"))["useUrlSearchParams"]
const useUserMedia: typeof import('@vueuse/core')['useUserMedia'] const useUserMedia: (typeof import("@vueuse/core"))["useUserMedia"]
const useVModel: typeof import('@vueuse/core')['useVModel'] const useVModel: (typeof import("@vueuse/core"))["useVModel"]
const useVModels: typeof import('@vueuse/core')['useVModels'] const useVModels: (typeof import("@vueuse/core"))["useVModels"]
const useVibrate: typeof import('@vueuse/core')['useVibrate'] const useVibrate: (typeof import("@vueuse/core"))["useVibrate"]
const useVirtualList: typeof import('@vueuse/core')['useVirtualList'] const useVirtualList: (typeof import("@vueuse/core"))["useVirtualList"]
const useWakeLock: typeof import('@vueuse/core')['useWakeLock'] const useWakeLock: (typeof import("@vueuse/core"))["useWakeLock"]
const useWebNotification: typeof import('@vueuse/core')['useWebNotification'] const useWebNotification: (typeof import("@vueuse/core"))["useWebNotification"]
const useWebSocket: typeof import('@vueuse/core')['useWebSocket'] const useWebSocket: (typeof import("@vueuse/core"))["useWebSocket"]
const useWebWorker: typeof import('@vueuse/core')['useWebWorker'] const useWebWorker: (typeof import("@vueuse/core"))["useWebWorker"]
const useWebWorkerFn: typeof import('@vueuse/core')['useWebWorkerFn'] const useWebWorkerFn: (typeof import("@vueuse/core"))["useWebWorkerFn"]
const useWindowFocus: typeof import('@vueuse/core')['useWindowFocus'] const useWindowFocus: (typeof import("@vueuse/core"))["useWindowFocus"]
const useWindowScroll: typeof import('@vueuse/core')['useWindowScroll'] const useWindowScroll: (typeof import("@vueuse/core"))["useWindowScroll"]
const useWindowSize: typeof import('@vueuse/core')['useWindowSize'] const useWindowSize: (typeof import("@vueuse/core"))["useWindowSize"]
const watch: typeof import('vue')['watch'] const watch: (typeof import("vue"))["watch"]
const watchArray: typeof import('@vueuse/core')['watchArray'] const watchArray: (typeof import("@vueuse/core"))["watchArray"]
const watchAtMost: typeof import('@vueuse/core')['watchAtMost'] const watchAtMost: (typeof import("@vueuse/core"))["watchAtMost"]
const watchDebounced: typeof import('@vueuse/core')['watchDebounced'] const watchDebounced: (typeof import("@vueuse/core"))["watchDebounced"]
const watchDeep: typeof import('@vueuse/core')['watchDeep'] const watchDeep: (typeof import("@vueuse/core"))["watchDeep"]
const watchEffect: typeof import('vue')['watchEffect'] const watchEffect: (typeof import("vue"))["watchEffect"]
const watchIgnorable: typeof import('@vueuse/core')['watchIgnorable'] const watchIgnorable: (typeof import("@vueuse/core"))["watchIgnorable"]
const watchImmediate: typeof import('@vueuse/core')['watchImmediate'] const watchImmediate: (typeof import("@vueuse/core"))["watchImmediate"]
const watchOnce: typeof import('@vueuse/core')['watchOnce'] const watchOnce: (typeof import("@vueuse/core"))["watchOnce"]
const watchPausable: typeof import('@vueuse/core')['watchPausable'] const watchPausable: (typeof import("@vueuse/core"))["watchPausable"]
const watchPostEffect: typeof import('vue')['watchPostEffect'] const watchPostEffect: (typeof import("vue"))["watchPostEffect"]
const watchSyncEffect: typeof import('vue')['watchSyncEffect'] const watchSyncEffect: (typeof import("vue"))["watchSyncEffect"]
const watchThrottled: typeof import('@vueuse/core')['watchThrottled'] const watchThrottled: (typeof import("@vueuse/core"))["watchThrottled"]
const watchTriggerable: typeof import('@vueuse/core')['watchTriggerable'] const watchTriggerable: (typeof import("@vueuse/core"))["watchTriggerable"]
const watchWithFilter: typeof import('@vueuse/core')['watchWithFilter'] const watchWithFilter: (typeof import("@vueuse/core"))["watchWithFilter"]
const whenever: typeof import('@vueuse/core')['whenever'] const whenever: (typeof import("@vueuse/core"))["whenever"]
} }
// for type re-export // for type re-export
declare global { declare global {
// @ts-ignore // @ts-ignore
export type { Component, ComponentPublicInstance, ComputedRef, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, VNode, WritableComputedRef } from 'vue' export type {
Component,
ComponentPublicInstance,
ComputedRef,
ExtractDefaultPropTypes,
ExtractPropTypes,
ExtractPublicPropTypes,
InjectionKey,
PropType,
Ref,
VNode,
WritableComputedRef,
} from "vue"
// @ts-ignore // @ts-ignore
export type { DataTableColumn, FormRules, FormItemRule, SelectOption, UploadCustomRequestOptions, UploadFileInfo, MenuOption, DropdownDividerOption, DropdownOption } from 'naive-ui' export type {
DataTableColumn,
FormRules,
FormItemRule,
SelectOption,
UploadCustomRequestOptions,
UploadFileInfo,
MenuOption,
DropdownDividerOption,
DropdownOption,
} from "naive-ui"
} }

20
src/components.d.ts vendored
View File

@@ -8,38 +8,38 @@ export {}
declare module 'vue' { declare module 'vue' {
export interface GlobalComponents { export interface GlobalComponents {
NAlert: typeof import('naive-ui')['NAlert'] NAlert: typeof import('naive-ui')['NAlert']
NAvatar: typeof import('naive-ui')['NAvatar'] NAvatar: (typeof import("naive-ui"))["NAvatar"]
NButton: typeof import('naive-ui')['NButton'] NButton: typeof import('naive-ui')['NButton']
NCard: typeof import('naive-ui')['NCard'] NCard: typeof import('naive-ui')['NCard']
NCheckbox: typeof import('naive-ui')['NCheckbox'] NCheckbox: (typeof import("naive-ui"))["NCheckbox"]
NCheckboxGroup: typeof import('naive-ui')['NCheckboxGroup'] NCheckboxGroup: (typeof import("naive-ui"))["NCheckboxGroup"]
NCode: typeof import('naive-ui')['NCode'] NCode: typeof import('naive-ui')['NCode']
NCollapseTransition: typeof import('naive-ui')['NCollapseTransition'] NCollapseTransition: typeof import('naive-ui')['NCollapseTransition']
NConfigProvider: typeof import('naive-ui')['NConfigProvider'] NConfigProvider: typeof import('naive-ui')['NConfigProvider']
NDataTable: typeof import('naive-ui')['NDataTable'] NDataTable: typeof import('naive-ui')['NDataTable']
NDatePicker: typeof import('naive-ui')['NDatePicker'] NDatePicker: (typeof import("naive-ui"))["NDatePicker"]
NDescriptions: typeof import('naive-ui')['NDescriptions'] NDescriptions: typeof import('naive-ui')['NDescriptions']
NDescriptionsItem: typeof import('naive-ui')['NDescriptionsItem'] NDescriptionsItem: typeof import('naive-ui')['NDescriptionsItem']
NDropdown: typeof import('naive-ui')['NDropdown'] NDropdown: typeof import('naive-ui')['NDropdown']
NDynamicTags: typeof import('naive-ui')['NDynamicTags'] NDynamicTags: (typeof import("naive-ui"))["NDynamicTags"]
NEmpty: typeof import('naive-ui')['NEmpty'] NEmpty: typeof import('naive-ui')['NEmpty']
NForm: typeof import('naive-ui')['NForm'] NForm: typeof import('naive-ui')['NForm']
NFormItem: typeof import('naive-ui')['NFormItem'] NFormItem: typeof import('naive-ui')['NFormItem']
NFormItemGi: typeof import('naive-ui')['NFormItemGi'] NFormItemGi: (typeof import("naive-ui"))["NFormItemGi"]
NGi: typeof import('naive-ui')['NGi'] NGi: typeof import('naive-ui')['NGi']
NGradientText: typeof import('naive-ui')['NGradientText'] NGradientText: (typeof import("naive-ui"))["NGradientText"]
NGrid: typeof import('naive-ui')['NGrid'] NGrid: typeof import('naive-ui')['NGrid']
NIcon: typeof import('naive-ui')['NIcon'] NIcon: typeof import('naive-ui')['NIcon']
NInput: typeof import('naive-ui')['NInput'] NInput: typeof import('naive-ui')['NInput']
NLayout: typeof import('naive-ui')['NLayout'] NLayout: typeof import('naive-ui')['NLayout']
NLayoutContent: typeof import('naive-ui')['NLayoutContent'] NLayoutContent: typeof import('naive-ui')['NLayoutContent']
NLayoutHeader: typeof import('naive-ui')['NLayoutHeader'] NLayoutHeader: typeof import('naive-ui')['NLayoutHeader']
NLayoutSider: typeof import('naive-ui')['NLayoutSider'] NLayoutSider: (typeof import("naive-ui"))["NLayoutSider"]
NMenu: typeof import('naive-ui')['NMenu'] NMenu: typeof import('naive-ui')['NMenu']
NMessageProvider: typeof import('naive-ui')['NMessageProvider'] NMessageProvider: typeof import('naive-ui')['NMessageProvider']
NModal: typeof import('naive-ui')['NModal'] NModal: typeof import('naive-ui')['NModal']
NPagination: typeof import('naive-ui')['NPagination'] NPagination: typeof import('naive-ui')['NPagination']
NPopconfirm: typeof import('naive-ui')['NPopconfirm'] NPopconfirm: (typeof import("naive-ui"))["NPopconfirm"]
NPopover: typeof import('naive-ui')['NPopover'] NPopover: typeof import('naive-ui')['NPopover']
NScrollbar: typeof import('naive-ui')['NScrollbar'] NScrollbar: typeof import('naive-ui')['NScrollbar']
NSelect: typeof import('naive-ui')['NSelect'] NSelect: typeof import('naive-ui')['NSelect']
@@ -49,7 +49,7 @@ declare module 'vue' {
NTabs: typeof import('naive-ui')['NTabs'] NTabs: typeof import('naive-ui')['NTabs']
NTag: typeof import('naive-ui')['NTag'] NTag: typeof import('naive-ui')['NTag']
NTooltip: typeof import('naive-ui')['NTooltip'] NTooltip: typeof import('naive-ui')['NTooltip']
NUpload: typeof import('naive-ui')['NUpload'] NUpload: (typeof import("naive-ui"))["NUpload"]
RouterLink: typeof import('vue-router')['RouterLink'] RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView'] RouterView: typeof import('vue-router')['RouterView']
} }

View File

@@ -3,7 +3,9 @@ import { isDesktop } from "~/shared/composables/breakpoints"
import { code } from "~/shared/composables/learn" import { code } from "~/shared/composables/learn"
import { useLearnStore } from "./store" import { useLearnStore } from "./store"
const CodeEditor = defineAsyncComponent(() => import("~/shared/components/CodeEditor.vue")) const CodeEditor = defineAsyncComponent(
() => import("~/shared/components/CodeEditor.vue"),
)
const route = useRoute() const route = useRoute()
const router = useRouter() const router = useRouter()

View File

@@ -6,7 +6,9 @@ import { problem } from "oj/composables/problem"
import storage from "~/utils/storage" import storage from "~/utils/storage"
const Form = defineAsyncComponent(() => import("./Form.vue")) const Form = defineAsyncComponent(() => import("./Form.vue"))
const CodeEditor = defineAsyncComponent(() => import("~/shared/components/CodeEditor.vue")) const CodeEditor = defineAsyncComponent(
() => import("~/shared/components/CodeEditor.vue"),
)
const route = useRoute() const route = useRoute()
const contestID = !!route.params.contestID ? route.params.contestID : null const contestID = !!route.params.contestID ? route.params.contestID : null

View File

@@ -1,4 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import copy from "copy-text-to-clipboard"
import { LANGUAGE_SHOW_VALUE, SOURCES } from "utils/constants" import { LANGUAGE_SHOW_VALUE, SOURCES } from "utils/constants"
import { code } from "oj/composables/code" import { code } from "oj/composables/code"
import { problem } from "oj/composables/problem" import { problem } from "oj/composables/problem"
@@ -9,8 +10,8 @@ import TestCat from "./TestCat2.vue"
import storage from "~/utils/storage" import storage from "~/utils/storage"
import { STORAGE_KEY } from "utils/constants" import { STORAGE_KEY } from "utils/constants"
import { LANGUAGE } from "~/utils/types" import { LANGUAGE } from "~/utils/types"
import More from "~/shared/icons/More.vue"
const message = useMessage()
const route = useRoute() const route = useRoute()
const router = useRouter() const router = useRouter()
const userStore = useUserStore() const userStore = useUserStore()
@@ -19,6 +20,7 @@ const emit = defineEmits(["changeLanguage"])
function reset() { function reset() {
code.value = problem.value!.template[code.language] || SOURCES[code.language] code.value = problem.value!.template[code.language] || SOURCES[code.language]
message.success("代码重置成功")
} }
function goSubmissions() { function goSubmissions() {
@@ -31,7 +33,13 @@ function goEdit() {
window.open(data.href, "_blank") window.open(data.href, "_blank")
} }
const menu: DropdownOption[] = [{ label: "提交信息", key: "submissions" }] const menu = computed<DropdownOption[]>(() => [
{ label: "提交信息", key: "submissions", show: isMobile.value },
{ label: "自测猫", key: "test", show: isMobile.value },
{ label: "复制代码", key: "copy" },
{ label: "粘贴代码", key: "paste" },
{ label: "重置代码", key: "reset" },
])
const options: DropdownOption[] = problem.value!.languages.map((it) => ({ const options: DropdownOption[] = problem.value!.languages.map((it) => ({
label: () => [ label: () => [
@@ -49,11 +57,30 @@ const options: DropdownOption[] = problem.value!.languages.map((it) => ({
value: it, value: it,
})) }))
function select(key: string) { async function select(key: string) {
switch (key) { switch (key) {
case "submissions": case "submissions":
goSubmissions() goSubmissions()
break break
case "reset":
reset()
break
case "copy":
copy(code.value)
message.success("代码复制成功")
break
case "paste":
try {
const text = await navigator.clipboard.readText()
code.value = text
message.success("代码粘贴成功")
} catch (err) {
message.warning("请长按代码区,手动粘贴")
}
break
case "test":
window.open("https://code.hyyz.izhai.net", "_blank")
break
} }
} }
@@ -73,29 +100,15 @@ function changeLanguage(v: LANGUAGE) {
:options="options" :options="options"
/> />
<Submit /> <Submit />
<n-dropdown
v-if="isMobile"
trigger="click"
:options="menu"
@select="select"
>
<n-button :size="isDesktop ? 'medium' : 'small'">
<template #icon>
<n-icon>
<More />
</n-icon>
</template>
</n-button>
</n-dropdown>
<TestCat <TestCat
v-if="isDesktop" v-if="isDesktop"
:lang="code.language" :lang="code.language"
:input="problem?.samples[0].input" :input="problem?.samples[0].input"
/> />
<n-button v-if="isDesktop" @click="goSubmissions">提交信息</n-button> <n-button v-if="isDesktop" @click="goSubmissions">提交信息</n-button>
<n-button :size="isDesktop ? 'medium' : 'small'" @click="reset"> <n-dropdown :options="menu" @select="select">
重置 <n-button :size="isDesktop ? 'medium' : 'small'">操作</n-button>
</n-button> </n-dropdown>
<n-button <n-button
v-if="isDesktop && userStore.isSuperAdmin" v-if="isDesktop && userStore.isSuperAdmin"
type="warning" type="warning"

View File

@@ -10,4 +10,4 @@
d="M11 17h2v-6h-2v6Zm1-8q.425 0 .713-.288T13 8q0-.425-.288-.713T12 7q-.425 0-.713.288T11 8q0 .425.288.713T12 9Zm0 13q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22Zm0-2q3.35 0 5.675-2.325T20 12q0-3.35-2.325-5.675T12 4Q8.65 4 6.325 6.325T4 12q0 3.35 2.325 5.675T12 20Zm0-8Z" d="M11 17h2v-6h-2v6Zm1-8q.425 0 .713-.288T13 8q0-.425-.288-.713T12 7q-.425 0-.713.288T11 8q0 .425.288.713T12 9Zm0 13q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22Zm0-2q3.35 0 5.675-2.325T20 12q0-3.35-2.325-5.675T12 4Q8.65 4 6.325 6.325T4 12q0 3.35 2.325 5.675T12 20Zm0-8Z"
></path> ></path>
</svg> </svg>
</template> </template>

View File

@@ -1,13 +0,0 @@
<template>
<svg
xmlns="http://www.w3.org/2000/svg"
width="1em"
height="1em"
viewBox="0 0 24 24"
>
<path
fill="currentColor"
d="M6 14q-.825 0-1.413-.588T4 12q0-.825.588-1.413T6 10q.825 0 1.413.588T8 12q0 .825-.588 1.413T6 14Zm6 0q-.825 0-1.413-.588T10 12q0-.825.588-1.413T12 10q.825 0 1.413.588T14 12q0 .825-.588 1.413T12 14Zm6 0q-.825 0-1.413-.588T16 12q0-.825.588-1.413T18 10q.825 0 1.413.588T20 12q0 .825-.588 1.413T18 14Z"
></path>
</svg>
</template>

View File

@@ -10,4 +10,4 @@
d="M77.248 415.04a64 64 0 0 1 90.496 0l226.304 226.304L846.528 188.8a64 64 0 1 1 90.56 90.496l-543.04 543.04l-316.8-316.8a64 64 0 0 1 0-90.496z" d="M77.248 415.04a64 64 0 0 1 90.496 0l226.304 226.304L846.528 188.8a64 64 0 1 1 90.56 90.496l-543.04 543.04l-316.8-316.8a64 64 0 0 1 0-90.496z"
></path> ></path>
</svg> </svg>
</template> </template>