57 lines
1.2 KiB
TypeScript
57 lines
1.2 KiB
TypeScript
/**
|
|
* plugins/vuetify.ts
|
|
*
|
|
* Framework documentation: https://vuetifyjs.com`
|
|
*/
|
|
|
|
// Styles
|
|
import '@mdi/font/css/materialdesignicons.css'
|
|
import 'vuetify/styles/main.css'
|
|
|
|
import colors from 'vuetify/util/colors'
|
|
import { fa, en, vi, zhHans, zhHant, ru } from 'vuetify/locale'
|
|
|
|
// Composables
|
|
import { createVuetify } from 'vuetify'
|
|
|
|
// https://vuetifyjs.com/en/introduction/why-vuetify/#feature-guides
|
|
export default createVuetify({
|
|
defaults: {
|
|
VRow: { density: 'compact' },
|
|
VTextField: {
|
|
variant: 'solo-filled',
|
|
},
|
|
VSelect: {
|
|
variant: 'solo-filled',
|
|
},
|
|
VCombobox: {
|
|
variant: 'solo-filled',
|
|
},
|
|
VTextarea: {
|
|
variant: 'solo-filled',
|
|
},
|
|
},
|
|
theme: {
|
|
defaultTheme: localStorage.getItem('theme') ?? 'system',
|
|
themes: {
|
|
light: {
|
|
colors: {
|
|
error: '#FF5252',
|
|
background: colors.grey.lighten4,
|
|
},
|
|
},
|
|
dark: {
|
|
colors: {
|
|
primary: colors.blue.darken4,
|
|
error: colors.red.accent3,
|
|
},
|
|
},
|
|
},
|
|
},
|
|
locale: {
|
|
locale: localStorage.getItem("locale") ?? 'en',
|
|
fallback: 'en',
|
|
messages: { en, fa, vi, zhHans, zhHant, ru },
|
|
},
|
|
})
|