nuxt.config.ts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import { defineNuxtConfig } from 'nuxt'
  2. import fs from 'fs';
  3. // https://v3.nuxtjs.org/api/configuration/nuxt.config
  4. export default defineNuxtConfig({
  5. runtimeConfig: {
  6. // Private config that is only available on the server
  7. baseUrl: '',
  8. baseUrlLegacy: '',
  9. baseUrlAdminLegacy: '',
  10. baseUrlTypo3: '',
  11. baseUrlMercure: '',
  12. // Config within public will be also exposed to the client
  13. public: {
  14. baseUrl: '',
  15. baseUrlLegacy: '',
  16. baseUrlAdminLegacy: '',
  17. baseUrlTypo3: '',
  18. baseUrlMercure: '',
  19. }
  20. },
  21. hooks: {
  22. 'builder:watch': console.log
  23. },
  24. app: {
  25. head: {
  26. title: 'Opentalent',
  27. meta: [
  28. { charset: 'utf-8' },
  29. { name: 'viewport', content: 'width=device-width, initial-scale=1' },
  30. { hid: 'description', name: 'description', content: '' },
  31. { name: 'msapplication-TileColor', content: '#324250' },
  32. { name: 'msapplication-TileImage', content: '/favicon/mstile-144x144.png' }
  33. ],
  34. link: [
  35. { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
  36. { rel: 'apple-touch-icon-precomposed', sizes: '57x57', href: '/favicon/apple-touch-icon-57x57.png' },
  37. { rel: 'apple-touch-icon-precomposed', sizes: '114x114', href: '/favicon/apple-touch-icon-114x114.png' },
  38. { rel: 'apple-touch-icon-precomposed', sizes: '72x72', href: '/favicon/apple-touch-icon-72x72.png' },
  39. { rel: 'apple-touch-icon-precomposed', sizes: '144x144', href: '/favicon/apple-touch-icon-144x144.png' },
  40. { rel: 'apple-touch-icon-precomposed', sizes: '120x120', href: '/favicon/apple-touch-icon-120x120.png' },
  41. { rel: 'apple-touch-icon-precomposed', sizes: '152x152', href: '/favicon/apple-touch-icon-152x152.png' },
  42. { rel: 'icon', sizes: '32x32', type: 'image/x-icon', href: '/favicon/favicon-32x32.png' },
  43. { rel: 'icon', sizes: '16x16', type: 'image/x-icon', href: '/favicon/favicon-16x16.png' },
  44. ]
  45. }
  46. },
  47. modules: [
  48. 'nuxt-lodash',
  49. [
  50. '@pinia/nuxt',
  51. {
  52. autoImports: [
  53. // automatically imports `usePinia()`
  54. 'defineStore',
  55. // automatically imports `usePinia()` as `usePiniaStore()`
  56. ['defineStore', 'definePiniaStore'],
  57. ],
  58. },
  59. ],
  60. '@pinia-orm/nuxt',
  61. ],
  62. typescript: {
  63. strict: true
  64. },
  65. vite: {
  66. server: {
  67. https: {
  68. key: fs.readFileSync('local.app-v3.opentalent.fr.key'),
  69. cert: fs.readFileSync('local.app-v3.opentalent.fr.crt'),
  70. },
  71. port: 443,
  72. hmr: {
  73. protocol: 'wss'
  74. }
  75. }
  76. }
  77. })