primevue-mirror/nuxt.config.js

103 lines
5.9 KiB
JavaScript

import vueJsx from '@vitejs/plugin-vue-jsx';
import path from 'path';
const baseUrl = process.env.NODE_ENV === 'production' ? '/primevue-nuxt/' : '/';
// https://v3.nuxtjs.org/api/configuration/nuxt.config
export default defineNuxtConfig({
typescript: false,
components: true,
target: 'static',
app: {
baseURL: baseUrl,
head: {
title: 'PrimeVue - Vue UI Component Library',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ name: 'description', content: 'The ultimate collection of design-agnostic, flexible and accessible Vue UI Components.' },
{ name: 'robots', content: 'index,follow' },
{ name: 'twitter:card', content: 'summary_large_image' },
{ name: 'twitter:site', content: '@primevue' },
{ name: 'twitter:title', content: 'PrimeVue | Vue UI Component Library' },
{ name: 'twitter:description', content: 'The ultimate collection of design-agnostic, flexible and accessible Vue UI Components.' },
{ property: 'og:type', content: 'website' },
{ property: 'og:title', content: 'PrimeVue | Vue UI Component Library' },
{ property: 'og:url', content: 'https://www.primefaces.org/primevue' },
{ property: 'og:description', content: 'The ultimate collection of design-agnostic, flexible and accessible Vue UI Components.' },
{ property: 'og:image', content: 'https://www.primefaces.org/static/social/primevue-preview.jpg' },
{ property: 'og:ttl', content: '604800' }
],
link: [
{
id: 'home-table-link',
rel: 'stylesheet',
href: baseUrl + 'styles/landing/themes/lara-light-blue/theme.css'
},
{
id: 'theme-link',
rel: 'stylesheet',
href: baseUrl + 'themes/lara-light-blue/theme.css'
},
{ rel: 'icon', href: baseUrl + 'favicon.ico' }
],
script: [
{
strategy: 'lazyOnload',
src: 'https://www.googletagmanager.com/gtag/js?id=UA-93461466-1'
},
{
id: 'ga-analytics',
strategy: 'lazyOnload',
children: `
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-93461466-1');
`
},
{
src: baseUrl + 'scripts/prism.js',
'data-manual': true
}
]
}
},
css: ['@/assets/styles/primevue.css', '/node_modules/primeflex/primeflex.css', '/node_modules/primeicons/primeicons.css', '@/assets/styles/flags.css'],
vite: {
plugins: [vueJsx()],
resolve: {
alias: {
'primevue/ripple': path.resolve(__dirname, '/components/ripple/Ripple.js'),
'primevue/tooltip': path.resolve(__dirname, '/components/tooltip/Tooltip.js'),
'primevue/focustrap': path.resolve(__dirname, '/components/focustrap/FocusTrap.js'),
'primevue/useconfirm': path.resolve(__dirname, '/components/useconfirm/UseConfirm.js'),
'primevue/usetoast': path.resolve(__dirname, '/components/usetoast/UseToast.js'),
'primevue/usedialog': path.resolve(__dirname, '/components/usedialog/UseDialog.js'),
'primevue/utils': path.resolve(__dirname, '/components/utils/Utils.js'),
'primevue/api': path.resolve(__dirname, '/components/api/Api.js'),
'primevue/portal': path.resolve(__dirname, '/components/portal/Portal.vue'),
'primevue/button': path.resolve(__dirname, '/components/button/Button.vue'),
'primevue/inputtext': path.resolve(__dirname, '/components/inputtext/InputText.vue'),
'primevue/dialog': path.resolve(__dirname, '/components/dialog/Dialog.vue'),
'primevue/menu': path.resolve(__dirname, '/components/menu/Menu.vue'),
'primevue/tieredmenu': path.resolve(__dirname, '/components/tieredmenu/TieredMenu.vue'),
'primevue/dropdown': path.resolve(__dirname, '/components/dropdown/Dropdown.vue'),
'primevue/inputnumber': path.resolve(__dirname, '/components/inputnumber/InputNumber.vue'),
'primevue/paginator': path.resolve(__dirname, '/components/paginator/Paginator.vue'),
'primevue/progressbar': path.resolve(__dirname, '/components/progressbar/ProgressBar.vue'),
'primevue/message': path.resolve(__dirname, '/components/message/Message.vue'),
'primevue/tree': path.resolve(__dirname, '/components/tree/Tree.vue'),
'primevue/badge': path.resolve(__dirname, '/components/badge/Badge.vue'),
'primevue/confirmationeventbus': path.resolve(__dirname, '/components/confirmationeventbus/ConfirmationEventBus.js'),
'primevue/toasteventbus': path.resolve(__dirname, '/components/toasteventbus/ToastEventBus.js'),
'primevue/overlayeventbus': path.resolve(__dirname, '/components/overlayeventbus/OverlayEventBus.js'),
'primevue/terminalservice': path.resolve(__dirname, '/components/terminalservice/TerminalService.js'),
'primevue/dynamicdialogeventbus': path.resolve(__dirname, '/components/dynamicdialogeventbus/DynamicDialogEventBus.js'),
'primevue/virtualscroller': path.resolve(__dirname, '/components/virtualscroller/VirtualScroller.vue')
}
}
}
});