refactor: remove @nuxt/ui integration and update Vite configuration

- Removed @nuxt/ui plugin from main.ts and index.css
- Updated vite.config.ts to replace @nuxt/ui with unplugin-auto-import and unplugin-vue-components for better component auto-importing and resolution
This commit is contained in:
2025-12-14 20:17:52 +07:00
parent 0cefa47b46
commit 70f87d07f6
6 changed files with 30 additions and 1207 deletions

53
auto-imports.d.ts vendored
View File

@@ -356,27 +356,6 @@ declare global {
// @ts-ignore
export type { PageInstance, InputInstance, ModalInstance } from './src/utils/ionic-helper'
import('./src/utils/ionic-helper')
// @ts-ignore
export type { ShortcutConfig, ShortcutsConfig, ShortcutsOptions } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.d')
// @ts-ignore
export type { UseComponentIconsProps } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.d')
// @ts-ignore
export type { UseFileUploadOptions } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.d')
// @ts-ignore
export type { KbdKey, KbdKeySpecific } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.d')
// @ts-ignore
export type { OverlayOptions, Overlay } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.d')
// @ts-ignore
export type { UseResizableProps, UseResizableReturn } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.d')
// @ts-ignore
export type { Toast } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.d')
}
// for vue template auto import
@@ -387,7 +366,6 @@ declare module 'vue' {
readonly EffectScope: UnwrapRef<typeof import('vue')['EffectScope']>
readonly asyncComputed: UnwrapRef<typeof import('@vueuse/core')['asyncComputed']>
readonly autoResetRef: UnwrapRef<typeof import('@vueuse/core')['autoResetRef']>
readonly avatarGroupInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useAvatarGroup.js')['avatarGroupInjectionKey']>
readonly computed: UnwrapRef<typeof import('vue')['computed']>
readonly computedAsync: UnwrapRef<typeof import('@vueuse/core')['computedAsync']>
readonly computedEager: UnwrapRef<typeof import('@vueuse/core')['computedEager']>
@@ -410,22 +388,10 @@ declare module 'vue' {
readonly debouncedWatch: UnwrapRef<typeof import('@vueuse/core')['debouncedWatch']>
readonly defineAsyncComponent: UnwrapRef<typeof import('vue')['defineAsyncComponent']>
readonly defineComponent: UnwrapRef<typeof import('vue')['defineComponent']>
readonly defineLocale: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineLocale.js')['defineLocale']>
readonly defineShortcuts: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.js')['defineShortcuts']>
readonly eagerComputed: UnwrapRef<typeof import('@vueuse/core')['eagerComputed']>
readonly effectScope: UnwrapRef<typeof import('vue')['effectScope']>
readonly emailPattern: UnwrapRef<typeof import('./src/utils/pattern')['emailPattern']>
readonly extendLocale: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineLocale.js')['extendLocale']>
readonly extendRef: UnwrapRef<typeof import('@vueuse/core')['extendRef']>
readonly extractShortcuts: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.js')['extractShortcuts']>
readonly fieldGroupInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFieldGroup.js')['fieldGroupInjectionKey']>
readonly formBusInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formBusInjectionKey']>
readonly formErrorsInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formErrorsInjectionKey']>
readonly formFieldInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formFieldInjectionKey']>
readonly formInputsInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formInputsInjectionKey']>
readonly formLoadingInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formLoadingInjectionKey']>
readonly formOptionsInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formOptionsInjectionKey']>
readonly formStateInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formStateInjectionKey']>
readonly formatBalance: UnwrapRef<typeof import('./src/utils/helper')['formatBalance']>
readonly getCurrentInstance: UnwrapRef<typeof import('vue')['getCurrentInstance']>
readonly getCurrentScope: UnwrapRef<typeof import('vue')['getCurrentScope']>
@@ -434,15 +400,12 @@ declare module 'vue' {
readonly ignorableWatch: UnwrapRef<typeof import('@vueuse/core')['ignorableWatch']>
readonly inject: UnwrapRef<typeof import('vue')['inject']>
readonly injectLocal: UnwrapRef<typeof import('@vueuse/core')['injectLocal']>
readonly inputIdInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['inputIdInjectionKey']>
readonly isDefined: UnwrapRef<typeof import('@vueuse/core')['isDefined']>
readonly isProxy: UnwrapRef<typeof import('vue')['isProxy']>
readonly isReactive: UnwrapRef<typeof import('vue')['isReactive']>
readonly isReadonly: UnwrapRef<typeof import('vue')['isReadonly']>
readonly isRef: UnwrapRef<typeof import('vue')['isRef']>
readonly isShallow: UnwrapRef<typeof import('vue')['isShallow']>
readonly kbdKeysMap: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.js')['kbdKeysMap']>
readonly localeContextInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useLocale.js')['localeContextInjectionKey']>
readonly makeDestructurable: UnwrapRef<typeof import('@vueuse/core')['makeDestructurable']>
readonly markRaw: UnwrapRef<typeof import('vue')['markRaw']>
readonly nextTick: UnwrapRef<typeof import('vue')['nextTick']>
@@ -469,7 +432,6 @@ declare module 'vue' {
readonly onUpdated: UnwrapRef<typeof import('vue')['onUpdated']>
readonly onWatcherCleanup: UnwrapRef<typeof import('vue')['onWatcherCleanup']>
readonly pausableWatch: UnwrapRef<typeof import('@vueuse/core')['pausableWatch']>
readonly portalTargetInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/usePortal.js')['portalTargetInjectionKey']>
readonly provide: UnwrapRef<typeof import('vue')['provide']>
readonly provideLocal: UnwrapRef<typeof import('@vueuse/core')['provideLocal']>
readonly reactify: UnwrapRef<typeof import('@vueuse/core')['reactify']>
@@ -501,7 +463,6 @@ declare module 'vue' {
readonly toRef: UnwrapRef<typeof import('vue')['toRef']>
readonly toRefs: UnwrapRef<typeof import('vue')['toRefs']>
readonly toValue: UnwrapRef<typeof import('vue')['toValue']>
readonly toastMaxInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.js')['toastMaxInjectionKey']>
readonly triggerRef: UnwrapRef<typeof import('vue')['triggerRef']>
readonly tryOnBeforeMount: UnwrapRef<typeof import('@vueuse/core')['tryOnBeforeMount']>
readonly tryOnBeforeUnmount: UnwrapRef<typeof import('@vueuse/core')['tryOnBeforeUnmount']>
@@ -513,7 +474,6 @@ declare module 'vue' {
readonly until: UnwrapRef<typeof import('@vueuse/core')['until']>
readonly useActiveElement: UnwrapRef<typeof import('@vueuse/core')['useActiveElement']>
readonly useAnimate: UnwrapRef<typeof import('@vueuse/core')['useAnimate']>
readonly useAppConfig: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/vue/composables/useAppConfig.js')['useAppConfig']>
readonly useArrayDifference: UnwrapRef<typeof import('@vueuse/core')['useArrayDifference']>
readonly useArrayEvery: UnwrapRef<typeof import('@vueuse/core')['useArrayEvery']>
readonly useArrayFilter: UnwrapRef<typeof import('@vueuse/core')['useArrayFilter']>
@@ -530,7 +490,6 @@ declare module 'vue' {
readonly useAsyncState: UnwrapRef<typeof import('@vueuse/core')['useAsyncState']>
readonly useAttrs: UnwrapRef<typeof import('vue')['useAttrs']>
readonly useAuth: UnwrapRef<typeof import('./src/composables/useAuth')['useAuth']>
readonly useAvatarGroup: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useAvatarGroup.js')['useAvatarGroup']>
readonly useBase64: UnwrapRef<typeof import('@vueuse/core')['useBase64']>
readonly useBattery: UnwrapRef<typeof import('@vueuse/core')['useBattery']>
readonly useBluetooth: UnwrapRef<typeof import('@vueuse/core')['useBluetooth']>
@@ -542,9 +501,7 @@ declare module 'vue' {
readonly useClipboardItems: UnwrapRef<typeof import('@vueuse/core')['useClipboardItems']>
readonly useCloned: UnwrapRef<typeof import('@vueuse/core')['useCloned']>
readonly useColorMode: UnwrapRef<typeof import('@vueuse/core')['useColorMode']>
readonly useComponentIcons: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.js')['useComponentIcons']>
readonly useConfirmDialog: UnwrapRef<typeof import('@vueuse/core')['useConfirmDialog']>
readonly useContentSearch: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useContentSearch.js')['useContentSearch']>
readonly useCountdown: UnwrapRef<typeof import('@vueuse/core')['useCountdown']>
readonly useCounter: UnwrapRef<typeof import('@vueuse/core')['useCounter']>
readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
@@ -576,13 +533,10 @@ declare module 'vue' {
readonly useEyeDropper: UnwrapRef<typeof import('@vueuse/core')['useEyeDropper']>
readonly useFavicon: UnwrapRef<typeof import('@vueuse/core')['useFavicon']>
readonly useFetch: UnwrapRef<typeof import('@vueuse/core')['useFetch']>
readonly useFieldGroup: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFieldGroup.js')['useFieldGroup']>
readonly useFileDialog: UnwrapRef<typeof import('@vueuse/core')['useFileDialog']>
readonly useFileSystemAccess: UnwrapRef<typeof import('@vueuse/core')['useFileSystemAccess']>
readonly useFileUpload: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.js')['useFileUpload']>
readonly useFocus: UnwrapRef<typeof import('@vueuse/core')['useFocus']>
readonly useFocusWithin: UnwrapRef<typeof import('@vueuse/core')['useFocusWithin']>
readonly useFormField: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['useFormField']>
readonly useFps: UnwrapRef<typeof import('@vueuse/core')['useFps']>
readonly useFullscreen: UnwrapRef<typeof import('@vueuse/core')['useFullscreen']>
readonly useGamepad: UnwrapRef<typeof import('@vueuse/core')['useGamepad']>
@@ -595,12 +549,10 @@ declare module 'vue' {
readonly useIntersectionObserver: UnwrapRef<typeof import('@vueuse/core')['useIntersectionObserver']>
readonly useInterval: UnwrapRef<typeof import('@vueuse/core')['useInterval']>
readonly useIntervalFn: UnwrapRef<typeof import('@vueuse/core')['useIntervalFn']>
readonly useKbd: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.js')['useKbd']>
readonly useKeyModifier: UnwrapRef<typeof import('@vueuse/core')['useKeyModifier']>
readonly useLastChanged: UnwrapRef<typeof import('@vueuse/core')['useLastChanged']>
readonly useLink: UnwrapRef<typeof import('vue-router')['useLink']>
readonly useLocalStorage: UnwrapRef<typeof import('@vueuse/core')['useLocalStorage']>
readonly useLocale: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useLocale.js')['useLocale']>
readonly useMagicKeys: UnwrapRef<typeof import('@vueuse/core')['useMagicKeys']>
readonly useManualRefHistory: UnwrapRef<typeof import('@vueuse/core')['useManualRefHistory']>
readonly useMediaControls: UnwrapRef<typeof import('@vueuse/core')['useMediaControls']>
@@ -619,7 +571,6 @@ declare module 'vue' {
readonly useObjectUrl: UnwrapRef<typeof import('@vueuse/core')['useObjectUrl']>
readonly useOffsetPagination: UnwrapRef<typeof import('@vueuse/core')['useOffsetPagination']>
readonly useOnline: UnwrapRef<typeof import('@vueuse/core')['useOnline']>
readonly useOverlay: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.js')['useOverlay']>
readonly usePageLeave: UnwrapRef<typeof import('@vueuse/core')['usePageLeave']>
readonly useParallax: UnwrapRef<typeof import('@vueuse/core')['useParallax']>
readonly useParentElement: UnwrapRef<typeof import('@vueuse/core')['useParentElement']>
@@ -628,7 +579,6 @@ declare module 'vue' {
readonly usePointer: UnwrapRef<typeof import('@vueuse/core')['usePointer']>
readonly usePointerLock: UnwrapRef<typeof import('@vueuse/core')['usePointerLock']>
readonly usePointerSwipe: UnwrapRef<typeof import('@vueuse/core')['usePointerSwipe']>
readonly usePortal: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/usePortal.js')['usePortal']>
readonly usePreferredColorScheme: UnwrapRef<typeof import('@vueuse/core')['usePreferredColorScheme']>
readonly usePreferredContrast: UnwrapRef<typeof import('@vueuse/core')['usePreferredContrast']>
readonly usePreferredDark: UnwrapRef<typeof import('@vueuse/core')['usePreferredDark']>
@@ -639,7 +589,6 @@ declare module 'vue' {
readonly useRafFn: UnwrapRef<typeof import('@vueuse/core')['useRafFn']>
readonly useRefHistory: UnwrapRef<typeof import('@vueuse/core')['useRefHistory']>
readonly useResetRef: UnwrapRef<typeof import('./src/composables/useResetRef')['useResetRef']>
readonly useResizable: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.js')['useResizable']>
readonly useResizeObserver: UnwrapRef<typeof import('@vueuse/core')['useResizeObserver']>
readonly useRoute: UnwrapRef<typeof import('vue-router')['useRoute']>
readonly useRouter: UnwrapRef<typeof import('vue-router')['useRouter']>
@@ -649,7 +598,6 @@ declare module 'vue' {
readonly useScriptTag: UnwrapRef<typeof import('@vueuse/core')['useScriptTag']>
readonly useScroll: UnwrapRef<typeof import('@vueuse/core')['useScroll']>
readonly useScrollLock: UnwrapRef<typeof import('@vueuse/core')['useScrollLock']>
readonly useScrollspy: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useScrollspy.js')['useScrollspy']>
readonly useSessionStorage: UnwrapRef<typeof import('@vueuse/core')['useSessionStorage']>
readonly useShare: UnwrapRef<typeof import('@vueuse/core')['useShare']>
readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
@@ -679,7 +627,6 @@ declare module 'vue' {
readonly useTitle: UnwrapRef<typeof import('@vueuse/core')['useTitle']>
readonly useToNumber: UnwrapRef<typeof import('@vueuse/core')['useToNumber']>
readonly useToString: UnwrapRef<typeof import('@vueuse/core')['useToString']>
readonly useToast: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.js')['useToast']>
readonly useToggle: UnwrapRef<typeof import('@vueuse/core')['useToggle']>
readonly useTransition: UnwrapRef<typeof import('@vueuse/core')['useTransition']>
readonly useUrlSearchParams: UnwrapRef<typeof import('@vueuse/core')['useUrlSearchParams']>

View File

@@ -23,7 +23,6 @@
"@elysiajs/eden": "^1.4.5",
"@ionic/vue": "^8.7.11",
"@ionic/vue-router": "^8.7.11",
"@nuxt/ui": "^4.2.1",
"@riwa/api-types": "http://192.168.1.36:9527/api/riwa-api-types-0.0.6.tgz",
"@tailwindcss/vite": "^4.1.18",
"@vueuse/core": "^14.1.0",

1155
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,4 @@
import { IonicVue } from "@ionic/vue";
import ui from "@nuxt/ui/vue-plugin";
import { createPinia } from "pinia";
import { createApp } from "vue";
import App from "./App.vue";
@@ -45,8 +44,7 @@ const app = createApp(App)
.use(IonicVue)
.use(router)
.use(pinia)
.use(i18n)
.use(ui);
.use(i18n);
router.isReady().then(() => {
app.mount("#app");

View File

@@ -1,2 +1 @@
@import "tailwindcss";
@import "@nuxt/ui";

View File

@@ -1,13 +1,14 @@
import path from "node:path";
import ui from "@nuxt/ui/vite";
import tailwindcss from "@tailwindcss/vite";
import legacy from "@vitejs/plugin-legacy";
import vue from "@vitejs/plugin-vue";
import jsx from "@vitejs/plugin-vue-jsx";
import dotenv from "dotenv";
import autoImport from "unplugin-auto-import/vite";
import iconsResolver from "unplugin-icons/resolver";
import icons from "unplugin-icons/vite";
import { IonicResolver } from "unplugin-vue-components/resolvers";
import components from "unplugin-vue-components/vite";
import { defineConfig } from "vite";
const env = dotenv.config({ path: `.env` }).parsed as Record<string, string>;
@@ -24,17 +25,15 @@ export default defineConfig({
autoInstall: true,
}),
tailwindcss(),
ui({
autoImport: {
autoImport({
dirs: ["src/composables", "src/utils", "src/store"],
imports: ["vue", "vue-router", "@vueuse/core", "vue-i18n"],
resolvers: [IonicResolver()],
vueTemplate: true,
},
components: {
}),
components({
directoryAsNamespace: true,
resolvers: [IonicResolver(), iconsResolver({ prefix: "i" })],
},
}),
],
resolve: {