/
NoWhoFU
/
GalTech
Обзор
Документация
Войти
/
NoWhoFU
/
GalTech
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
frontend/src/main.js
101 строка
3 KB
VladKost999
старт проекта
02 июн 2026, 17:41
02 июн 2026, 17:41
d44a1d7
Код
Авторство
О чём код?
import { createApp } from 'vue' import App from './App.vue' import PrimeVue from 'primevue/config' import Aura from '@primeuix/themes/aura' import { definePreset } from '@primeuix/themes' // PrimeIcons и кастомные стили структуры import 'primeicons/primeicons.css' import './style.css' // Компоненты PrimeVue v4 import Button from 'primevue/button' import InputText from 'primevue/inputtext' import Card from 'primevue/card' import Dialog from 'primevue/dialog' import Select from 'primevue/select' // В PrimeVue v4 Dropdown переименован в Select import Tag from 'primevue/tag' import Badge from 'primevue/badge' import Avatar from 'primevue/avatar' import Drawer from 'primevue/drawer' // В PrimeVue v4 Sidebar переименован в Drawer import Toolbar from 'primevue/toolbar' import Divider from 'primevue/divider' import ProgressBar from 'primevue/progressbar' import Message from 'primevue/message' // Новые компоненты группировки и поиска v4 import InputGroup from 'primevue/inputgroup' import IconField from 'primevue/iconfield' import InputIcon from 'primevue/inputicon' const app = createApp(App) // Определение кастомного пресета на базе Aura const CustomPreset = definePreset(Aura, { semantic: { primary: { 50: '{sky.50}', 100: '{sky.100}', 200: '{sky.200}', 300: '{sky.300}', 400: '{sky.400}', 500: '{sky.500}', 600: '{sky.600}', 700: '{sky.700}', 800: '{sky.800}', 900: '{sky.900}', 950: '{sky.950}' }, colorScheme: { dark: { surface: { 0: '#ffffff', 50: '{slate.50}', 100: '{slate.100}', 200: '{slate.200}', 300: '{slate.300}', 400: '{slate.400}', 500: '{slate.500}', 600: '{slate.600}', 700: '{slate.700}', 800: '{slate.800}', 900: '{slate.900}', 950: '{slate.950}' } } } } }) // Инициализация PrimeVue v4 с кастомным пресетом app.use(PrimeVue, { theme: { preset: CustomPreset, options: { darkModeSelector: '.p-dark', // Официальный v4 селектор темной темы на теге HTML cssLayer: false } } }) // Глобальная регистрация компонентов (с сохранением алиасов для совместимости) app.component('pv-button', Button) app.component('pv-inputtext', InputText) app.component('pv-card', Card) app.component('pv-dialog', Dialog) app.component('pv-dropdown', Select) // Подменяем Dropdown на v4 Select app.component('pv-tag', Tag) app.component('pv-badge', Badge) app.component('pv-avatar', Avatar) app.component('pv-sidebar', Drawer) // Подменяем Sidebar на v4 Drawer app.component('pv-toolbar', Toolbar) app.component('pv-divider', Divider) app.component('pv-progressbar', ProgressBar) app.component('pv-message', Message) // Регистрация новых компонентов поиска app.component('pv-inputgroup', InputGroup) app.component('pv-iconfield', IconField) app.component('pv-inputicon', InputIcon) app.mount('#app')