| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- import fs from 'fs';
- import vuetify from 'vite-plugin-vuetify'
- import type { I18nOptions } from 'vue-i18n'
- // https://nuxt.com/docs/api/configuration/nuxt-config
- export default defineNuxtConfig({
- ssr: true,
- title: 'Opentalent',
- runtimeConfig: {
- // Private config that is only available on the server
- baseUrl: '',
- baseUrlLegacy: '',
- baseUrlAdminLegacy: '',
- baseUrlTypo3: '',
- baseUrlMercure: '',
- supportUrl: '',
- // Config within public will be also exposed to the client
- public: {
- baseUrl: '',
- baseUrlLegacy: '',
- baseUrlAdminLegacy: '',
- baseUrlTypo3: '',
- baseUrlMercure: '',
- supportUrl: '',
- school_product: 'school',
- school_premium_product: 'school-premium',
- artist_product: 'artist',
- artist_premium_product: 'artist-premium',
- manager_product: 'manager',
- cmf_network: 'CMF',
- ffec_network: 'FFEC',
- OPENTALENT_MANAGER_ID: 93931,
- CMF_ID: 12097
- }
- },
- app: {
- head: {
- title: 'Opentalent',
- meta: [
- { charset: 'utf-8' },
- { name: 'viewport', content: 'width=device-width, initial-scale=1' },
- { hid: 'description', name: 'description', content: '' },
- { name: 'msapplication-TileColor', content: '#324250' },
- { name: 'msapplication-TileImage', content: '/favicon/mstile-144x144.png' }
- ],
- link: [
- { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
- { rel: 'apple-touch-icon-precomposed', sizes: '57x57', href: '/favicon/apple-touch-icon-57x57.png' },
- { rel: 'apple-touch-icon-precomposed', sizes: '114x114', href: '/favicon/apple-touch-icon-114x114.png' },
- { rel: 'apple-touch-icon-precomposed', sizes: '72x72', href: '/favicon/apple-touch-icon-72x72.png' },
- { rel: 'apple-touch-icon-precomposed', sizes: '144x144', href: '/favicon/apple-touch-icon-144x144.png' },
- { rel: 'apple-touch-icon-precomposed', sizes: '120x120', href: '/favicon/apple-touch-icon-120x120.png' },
- { rel: 'apple-touch-icon-precomposed', sizes: '152x152', href: '/favicon/apple-touch-icon-152x152.png' },
- { rel: 'icon', sizes: '32x32', type: 'image/x-icon', href: '/favicon/favicon-32x32.png' },
- { rel: 'icon', sizes: '16x16', type: 'image/x-icon', href: '/favicon/favicon-16x16.png' },
- ]
- }
- },
- css: [
- '@/assets/css/global.scss',
- '@/assets/css/import.scss'
- ],
- typescript: {
- strict: true
- },
- modules: [
- async (options, nuxt) => {
- nuxt.hooks.hook('vite:extendConfig', config => config.plugins.push(
- vuetify()
- //Remplacer par cela quand l'issue https://github.com/vuetifyjs/vuetify-loader/issues/273 sera règlée..
- // vuetify({
- // styles: { configFile: './assets/css/settings.scss' }
- // })
- ) as any );
- },
- [
- '@pinia/nuxt',
- {
- autoImports: [
- // automatically imports `usePinia()`
- 'defineStore',
- // automatically imports `usePinia()` as `usePiniaStore()`
- ['defineStore', 'definePiniaStore'],
- ],
- }
- ],
- '@pinia-orm/nuxt',
- 'nuxt-lodash',
- '@nuxtjs/i18n'
- ],
- vite: {
- esbuild: {
- drop: process.env.DEBUG ? [] : ['console', 'debugger'],
- },
- ssr: {
- noExternal: ['vuetify', 'nuxt-lodash']
- },
- //@ts-ignore
- server : {
- https: {
- key: fs.readFileSync('local.app-v3.opentalent.fr.key'),
- cert: fs.readFileSync('local.app-v3.opentalent.fr.crt'),
- },
- //@ts-ignore
- port: 443,
- hmr: {
- protocol: 'wss',
- port: 24678
- }
- },
- },
- i18n: {
- langDir: 'lang',
- lazy: true,
- locales: [
- {
- code: 'en',
- iso: 'en-US',
- file: 'en.json',
- name: 'English'
- },
- {
- code: 'fr',
- iso: 'fr-FR',
- file: 'fr.json',
- name: 'Français'
- }
- ],
- defaultLocale: 'fr',
- fallbackLocale: 'en',
- detectBrowserLanguage: false,
- vueI18n: {
- legacy: false,
- }
- } as I18nOptions
- })
|