diff --git a/src/boot.ts b/src/boot.ts new file mode 100644 index 0000000..86cbb3d --- /dev/null +++ b/src/boot.ts @@ -0,0 +1,23 @@ +//@ts-ignore +import css from '@/styles/init.css?url' +//@ts-ignore +import logo from '@/icons/common/sidebar-logo.svg?url' +import settings from '@/settings' + +document.querySelector('#app')!.innerHTML = ` +
+ +
+ +
+
${settings.title}
+
+
+
+
+
+
+` +;(async () => { + await import('./main') +})() diff --git a/src/styles/init.css b/src/styles/init.css new file mode 100644 index 0000000..371469a --- /dev/null +++ b/src/styles/init.css @@ -0,0 +1,68 @@ +.__init__ { + position: absolute; + left: 0; + top: 0; + height: 100vh; + width: 100vw; + overflow: hidden; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.__init__title { + font-size: 2.5vmin; + padding: 1.5vmin; + font-weight: bold; + font-family: 'system-ui'; +} + +.__init__image { + height: 20vmin; + width: 20vmin; + /*background-image: url("/public/loading-logo.svg");*/ + background-size: 100% 100%; + margin-bottom: 4vmin; + overflow: hidden; + transform: translateY(-1000px); + filter: drop-shadow(0px 1000px orange); +} + +.__init__image img { + height: 100%; + width: 100%; +} + +.__init__process-frame { + width: 33%; + height: 2.4vmin; + border-radius: 1.2vmin; + overflow: hidden; +} + +.__init__progress { + width: 100%; + height: 100%; + background: linear-gradient(-45deg, #0278ee 36%, #7db9e8 28%, #7db9e8 67%, #0278ee 25%); + background-size: 4em 2em; + -webkit-animation: load 1s; + animation: __init__load 1s; + position: relative; +} + +.__init__masker { + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: 0; + opacity: 0.8; + background: linear-gradient(90deg, #1c7bda 20%, #fff 100%) +} + +@keyframes __init__load { + 0% { + width: 0; + } +} diff --git a/typings/auto-imports.d.ts b/typings/auto-imports.d.ts index ae5a6a1..3938be7 100644 --- a/typings/auto-imports.d.ts +++ b/typings/auto-imports.d.ts @@ -5,125 +5,113 @@ // Generated by unplugin-auto-import export {} declare global { - const EffectScope: (typeof import('vue'))['EffectScope'] - const buttonCodes: (typeof import('../src/directives/button-codes'))['default'] - const casHandleChange: (typeof import('../src/hooks/use-element'))['casHandleChange'] - const clickoutside: (typeof import('../src/directives/example/clickoutside.js'))['default'] - const cloneDeep: (typeof import('../src/hooks/use-common'))['cloneDeep'] - const closeElLoading: (typeof import('../src/hooks/use-element'))['closeElLoading'] - const codesPermission: (typeof import('../src/directives/codes-permission'))['default'] - const computed: (typeof import('vue'))['computed'] - const copy: (typeof import('../src/directives/example/copy.js'))['default'] - const copyValueToClipboard: (typeof import('../src/hooks/use-common'))['copyValueToClipboard'] - const createApp: (typeof import('vue'))['createApp'] - const customRef: (typeof import('vue'))['customRef'] - const debounce: (typeof import('../src/directives/example/debounce.js'))['default'] - const defineAsyncComponent: (typeof import('vue'))['defineAsyncComponent'] - const defineComponent: (typeof import('vue'))['defineComponent'] - const directives: (typeof import('../src/directives/index'))['default'] - const effectScope: (typeof import('vue'))['effectScope'] - const elConfirm: (typeof import('../src/hooks/use-element'))['elConfirm'] - const elConfirmNoCancelBtn: (typeof import('../src/hooks/use-element'))['elConfirmNoCancelBtn'] - const elLoading: (typeof import('../src/hooks/use-element'))['elLoading'] - const elMessage: (typeof import('../src/hooks/use-element'))['elMessage'] - const elNotify: (typeof import('../src/hooks/use-element'))['elNotify'] - const freshRouter: (typeof import('../src/hooks/use-permission'))['freshRouter'] - const getCurrentInstance: (typeof import('vue'))['getCurrentInstance'] - const getCurrentScope: (typeof import('vue'))['getCurrentScope'] - const getLangInstance: (typeof import('../src/hooks/use-common'))['getLangInstance'] - const getQueryParam: (typeof import('../src/hooks/use-self-router'))['getQueryParam'] - const h: (typeof import('vue'))['h'] - const inject: (typeof import('vue'))['inject'] - const isExternal: (typeof import('../src/hooks/use-layout'))['isExternal'] - 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 lang: (typeof import('../src/directives/lang'))['default'] - const langTitle: (typeof import('../src/hooks/use-common'))['langTitle'] - const longpress: (typeof import('../src/directives/example/longpress.js'))['default'] - const markRaw: (typeof import('vue'))['markRaw'] - const nextTick: (typeof import('vue'))['nextTick'] - const onActivated: (typeof import('vue'))['onActivated'] - const onBeforeMount: (typeof import('vue'))['onBeforeMount'] - const onBeforeRouteLeave: (typeof import('vue-router'))['onBeforeRouteLeave'] - const onBeforeRouteUpdate: (typeof import('vue-router'))['onBeforeRouteUpdate'] - const onBeforeUnmount: (typeof import('vue'))['onBeforeUnmount'] - const onBeforeUpdate: (typeof import('vue'))['onBeforeUpdate'] - const 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 progressClose: (typeof import('../src/hooks/use-permission'))['progressClose'] - const progressStart: (typeof import('../src/hooks/use-permission'))['progressStart'] - 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 resetRouter: (typeof import('../src/hooks/use-permission'))['resetRouter'] - const resetState: (typeof import('../src/hooks/use-permission'))['resetState'] - const resizeHandler: (typeof import('../src/hooks/use-layout'))['resizeHandler'] - const resolveComponent: (typeof import('vue'))['resolveComponent'] + const EffectScope: typeof import('vue')['EffectScope'] + const buttonCodes: typeof import('../src/directives/button-codes')['default'] + const casHandleChange: typeof import('../src/hooks/use-element')['casHandleChange'] + const clickoutside: typeof import('../src/directives/example/clickoutside.js')['default'] + const cloneDeep: typeof import('../src/hooks/use-common')['cloneDeep'] + const closeElLoading: typeof import('../src/hooks/use-element')['closeElLoading'] + const codesPermission: typeof import('../src/directives/codes-permission')['default'] + const computed: typeof import('vue')['computed'] + const copy: typeof import('../src/directives/example/copy.js')['default'] + const copyValueToClipboard: typeof import('../src/hooks/use-common')['copyValueToClipboard'] + const createApp: typeof import('vue')['createApp'] + const customRef: typeof import('vue')['customRef'] + const debounce: typeof import('../src/directives/example/debounce.js')['default'] + const defineAsyncComponent: typeof import('vue')['defineAsyncComponent'] + const defineComponent: typeof import('vue')['defineComponent'] + const directives: typeof import('../src/directives/index')['default'] + const effectScope: typeof import('vue')['effectScope'] + const elConfirm: typeof import('../src/hooks/use-element')['elConfirm'] + const elConfirmNoCancelBtn: typeof import('../src/hooks/use-element')['elConfirmNoCancelBtn'] + const elLoading: typeof import('../src/hooks/use-element')['elLoading'] + const elMessage: typeof import('../src/hooks/use-element')['elMessage'] + const elNotify: typeof import('../src/hooks/use-element')['elNotify'] + const freshRouter: typeof import('../src/hooks/use-permission')['freshRouter'] + const getCurrentInstance: typeof import('vue')['getCurrentInstance'] + const getCurrentScope: typeof import('vue')['getCurrentScope'] + const getLangInstance: typeof import('../src/hooks/use-common')['getLangInstance'] + const getQueryParam: typeof import('../src/hooks/use-self-router')['getQueryParam'] + const h: typeof import('vue')['h'] + const inject: typeof import('vue')['inject'] + const isExternal: typeof import('../src/hooks/use-layout')['isExternal'] + 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 lang: typeof import('../src/directives/lang')['default'] + const langTitle: typeof import('../src/hooks/use-common')['langTitle'] + const longpress: typeof import('../src/directives/example/longpress.js')['default'] + const markRaw: typeof import('vue')['markRaw'] + const nextTick: typeof import('vue')['nextTick'] + const onActivated: typeof import('vue')['onActivated'] + const onBeforeMount: typeof import('vue')['onBeforeMount'] + const onBeforeRouteLeave: typeof import('vue-router')['onBeforeRouteLeave'] + const onBeforeRouteUpdate: typeof import('vue-router')['onBeforeRouteUpdate'] + const onBeforeUnmount: typeof import('vue')['onBeforeUnmount'] + const onBeforeUpdate: typeof import('vue')['onBeforeUpdate'] + const 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 progressClose: typeof import('../src/hooks/use-permission')['progressClose'] + const progressStart: typeof import('../src/hooks/use-permission')['progressStart'] + 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 resetRouter: typeof import('../src/hooks/use-permission')['resetRouter'] + const resetState: typeof import('../src/hooks/use-permission')['resetState'] + const resizeHandler: typeof import('../src/hooks/use-layout')['resizeHandler'] + const resolveComponent: typeof import('vue')['resolveComponent'] const resolveDirective: (typeof import('vue'))['resolveDirective'] - const rolesPermission: (typeof import('../src/directives/roles-permission'))['default'] - const routeInfo: (typeof import('../src/hooks/use-self-router'))['routeInfo'] - const routerBack: (typeof import('../src/hooks/use-self-router'))['routerBack'] - const routerPush: (typeof import('../src/hooks/use-self-router'))['routerPush'] - const routerReplace: (typeof import('../src/hooks/use-self-router'))['routerReplace'] - const setRouterFromDatabase: (typeof import('../src/hooks/use-permission'))['setRouterFromDatabase'] - const shallowReactive: (typeof import('vue'))['shallowReactive'] - const shallowReadonly: (typeof import('vue'))['shallowReadonly'] - const shallowRef: (typeof import('vue'))['shallowRef'] - const sleepTimeout: (typeof import('../src/hooks/use-common'))['sleepTimeout'] - const storeToRefs: (typeof import('pinia/dist/pinia'))['storeToRefs'] - 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 useBasicStore: (typeof import('../src/store/basic'))['useBasicStore'] - const useConfigStore: (typeof import('../src/store/config'))['useConfigStore'] - const useCssModule: (typeof import('vue'))['useCssModule'] - const useCssVars: (typeof import('vue'))['useCssVars'] - const useDebuggerStore: (typeof import('../src/store/debuger'))['useDebuggerStore'] - const useElement: (typeof import('../src/hooks/use-element'))['useElement'] - const useLink: (typeof import('vue-router'))['useLink'] - const useRoute: (typeof import('vue-router'))['useRoute'] - const useRouter: (typeof import('vue-router'))['useRouter'] - const useSlots: (typeof import('vue'))['useSlots'] - const useSystemStore: (typeof import('../src/store/system'))['useSystemStore'] - const useTable: (typeof import('../src/hooks/use-table'))['useTable'] - const useTagsViewStore: (typeof import('../src/store/tags-view'))['useTagsViewStore'] - const userRouteStore: (typeof import('../src/store/routes'))['userRouteStore'] - const watch: (typeof import('vue'))['watch'] - const watchEffect: (typeof import('vue'))['watchEffect'] - const watchPostEffect: (typeof import('vue'))['watchPostEffect'] - const watchSyncEffect: (typeof import('vue'))['watchSyncEffect'] - const watermark: (typeof import('../src/directives/example/watermark.js'))['default'] - const waves: (typeof import('../src/directives/example/waves.js'))['default'] + const rolesPermission: typeof import('../src/directives/roles-permission')['default'] + const routeInfo: typeof import('../src/hooks/use-self-router')['routeInfo'] + const routerBack: typeof import('../src/hooks/use-self-router')['routerBack'] + const routerPush: typeof import('../src/hooks/use-self-router')['routerPush'] + const routerReplace: typeof import('../src/hooks/use-self-router')['routerReplace'] + const setRouterFromDatabase: typeof import('../src/hooks/use-permission')['setRouterFromDatabase'] + const shallowReactive: typeof import('vue')['shallowReactive'] + const shallowReadonly: typeof import('vue')['shallowReadonly'] + const shallowRef: typeof import('vue')['shallowRef'] + const sleepTimeout: typeof import('../src/hooks/use-common')['sleepTimeout'] + const storeToRefs: typeof import('pinia/dist/pinia')['storeToRefs'] + 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 useBasicStore: typeof import('../src/store/basic')['useBasicStore'] + const useConfigStore: typeof import('../src/store/config')['useConfigStore'] + const useCssModule: typeof import('vue')['useCssModule'] + const useCssVars: typeof import('vue')['useCssVars'] + const useDebuggerStore: typeof import('../src/store/debuger')['useDebuggerStore'] + const useElement: typeof import('../src/hooks/use-element')['useElement'] + const useLink: typeof import('vue-router')['useLink'] + const useRoute: typeof import('vue-router')['useRoute'] + const useRouter: typeof import('vue-router')['useRouter'] + const useSlots: typeof import('vue')['useSlots'] + const useSystemStore: typeof import('../src/store/system')['useSystemStore'] + const useTable: typeof import('../src/hooks/use-table')['useTable'] + const useTagsViewStore: typeof import('../src/store/tags-view')['useTagsViewStore'] + const userRouteStore: typeof import('../src/store/routes')['userRouteStore'] + const watch: typeof import('vue')['watch'] + const watchEffect: typeof import('vue')['watchEffect'] + const watchPostEffect: typeof import('vue')['watchPostEffect'] + const watchSyncEffect: typeof import('vue')['watchSyncEffect'] + const watermark: typeof import('../src/directives/example/watermark.js')['default'] + const waves: typeof import('../src/directives/example/waves.js')['default'] } // for type re-export declare global { // @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' import('vue') }