import { createApp } from 'vue' import { createPinia } from 'pinia' import PrimeVue from 'primevue/config' import ToastService from 'primevue/toastservice' import ConfirmationService from 'primevue/confirmationservice' import App from './App.vue' import router from './router' // PrimeVue components import Button from 'primevue/button' import InputText from 'primevue/inputtext' import InputNumber from 'primevue/inputnumber' import Password from 'primevue/password' import Dropdown from 'primevue/dropdown' import Calendar from 'primevue/calendar' import Textarea from 'primevue/textarea' import DataTable from 'primevue/datatable' import Column from 'primevue/column' import Dialog from 'primevue/dialog' import Toast from 'primevue/toast' import ConfirmDialog from 'primevue/confirmdialog' import FileUpload from 'primevue/fileupload' import Image from 'primevue/image' import Tag from 'primevue/tag' import Card from 'primevue/card' import TabView from 'primevue/tabview' import TabPanel from 'primevue/tabpanel' import Checkbox from 'primevue/checkbox' import RadioButton from 'primevue/radiobutton' import ProgressSpinner from 'primevue/progressspinner' import Badge from 'primevue/badge' import Toolbar from 'primevue/toolbar' import Divider from 'primevue/divider' import Tooltip from 'primevue/tooltip' import Message from 'primevue/message' // PrimeVue styles import 'primevue/resources/themes/lara-light-blue/theme.css' import 'primevue/resources/primevue.min.css' import 'primeicons/primeicons.css' // Custom styles import './assets/css/main.css' const app = createApp(App) // Pinia store app.use(createPinia()) // Router app.use(router) // PrimeVue app.use(PrimeVue, { ripple: true }) app.use(ToastService) app.use(ConfirmationService) // Register PrimeVue components globally app.component('Button', Button) app.component('InputText', InputText) app.component('InputNumber', InputNumber) app.component('Password', Password) app.component('Dropdown', Dropdown) app.component('Calendar', Calendar) app.component('Textarea', Textarea) app.component('DataTable', DataTable) app.component('Column', Column) app.component('Dialog', Dialog) app.component('Toast', Toast) app.component('ConfirmDialog', ConfirmDialog) app.component('FileUpload', FileUpload) app.component('Image', Image) app.component('Tag', Tag) app.component('Card', Card) app.component('TabView', TabView) app.component('TabPanel', TabPanel) app.component('Checkbox', Checkbox) app.component('RadioButton', RadioButton) app.component('ProgressSpinner', ProgressSpinner) app.component('Badge', Badge) app.component('Toolbar', Toolbar) app.component('Divider', Divider) app.component('Message', Message) // Register PrimeVue directives app.directive('tooltip', Tooltip) app.mount('#app')