first commit
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
import type { IconProps } from 'vuetify'
|
||||
import { Icon } from '#components'
|
||||
import type { VDataTable } from 'vuetify/components'
|
||||
import { useStorage } from '@vueuse/core'
|
||||
import { aliases } from 'vuetify/iconsets/mdi'
|
||||
|
||||
export type DataTableHeaders = VDataTable['$props']['headers']
|
||||
|
||||
export default defineNuxtPlugin((nuxtApp) => {
|
||||
nuxtApp.hook('vuetify:configuration', ({ vuetifyOptions }) => {
|
||||
vuetifyOptions.icons = {
|
||||
defaultSet: 'nuxtIcon',
|
||||
sets: {
|
||||
nuxtIcon: {
|
||||
component: ({ icon, tag, ...rest }: IconProps) =>
|
||||
h(tag, rest, [h(Icon, { name: aliases[icon as string] ?? icon })]),
|
||||
},
|
||||
},
|
||||
aliases,
|
||||
}
|
||||
const primary = useStorage('theme-primary', '#1697f6').value
|
||||
vuetifyOptions.theme = {
|
||||
themes: {
|
||||
light: { colors: { primary } },
|
||||
dark: { colors: { primary } },
|
||||
},
|
||||
}
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user