nuxt.config.ts 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. // https://nuxt.com/docs/api/configuration/nuxt-config
  2. import VitePluginSRI from 'vite-plugin-sri';
  3. export default defineNuxtConfig({
  4. typescript: {
  5. strict: false,
  6. typeCheck: false
  7. },
  8. ssr: false,
  9. app: {
  10. head: {
  11. titleTemplate: '',
  12. title: 'ShopDeli',
  13. htmlAttrs: {
  14. lang: 'ko'
  15. },
  16. link: [
  17. { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
  18. ],
  19. script: [
  20. { type: 'text/javascript', src: '//t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js' }
  21. ]
  22. },
  23. },
  24. devtools: { enabled: false },
  25. devServer : {
  26. //host: '0.0.0.0'
  27. },
  28. build: {
  29. transpile: ['vuetify'],
  30. },
  31. css: [
  32. 'ag-grid-community/styles/ag-grid.css',
  33. 'ag-grid-community/styles/ag-theme-quartz.css',
  34. 'pretendard/dist/web/static/pretendard.css',
  35. '~/assets/scss/main.scss',
  36. 'vuetify/lib/styles/main.sass',
  37. '@mdi/font/css/materialdesignicons.min.css',
  38. '@fortawesome/fontawesome-svg-core/styles.css'
  39. ],
  40. modules: [
  41. '@pinia/nuxt',
  42. '@pinia-plugin-persistedstate/nuxt',
  43. 'nuxt-lodash',
  44. 'dayjs-nuxt',
  45. ],
  46. plugins: [
  47. { src: '~/plugins/userAgent.js', mode: 'client'},
  48. { src: '~/plugins/vue3-editor.js', mode: 'client'},
  49. { src: '~/plugins/vue-cool-lightbox.js', mode: 'client'},
  50. { src: '~/plugins/fontawesome.js', mode: 'client'}
  51. ],
  52. lodash: {
  53. prefix: "_",
  54. prefixSkip: ["string"],
  55. upperAfterPrefix: false,
  56. exclude: ["map"],
  57. alias: [
  58. ["camelCase", "stringToCamelCase"], // => stringToCamelCase
  59. ["kebabCase", "stringToKebab"], // => stringToKebab
  60. ["isDate", "isLodashDate"], // => _isLodashDate
  61. ],
  62. },
  63. dayjs: {
  64. locales: ['en', 'ja'],
  65. defaultLocale: 'en',
  66. defaultTimezone: 'Asia/Tokyo',
  67. plugins: ['relativeTime', 'utc', 'timezone']
  68. },
  69. builder: 'vite',
  70. vite: {
  71. base: import.meta.env.VITE_APP_BASE_URL,
  72. define: {
  73. 'process.env.DEBUG': false,
  74. },
  75. plugins: [
  76. VitePluginSRI(),
  77. ],
  78. build: {
  79. chunkSizeWarningLimit: 1600,
  80. sourcemap: true,
  81. rollupOptions: {
  82. output: {
  83. chunkFileNames: '_nuxt/chunks/[name].js',
  84. entryFileNames: '_nuxt/js/[name].js',
  85. assetFileNames: '_nuxt/[name].[ext]',
  86. }
  87. },
  88. }
  89. },
  90. compatibilityDate: '2024-08-23',
  91. runtimeConfig: {
  92. public: {
  93. anthropicApiKey: process.env.ANTHROPIC_API_KEY
  94. }
  95. }
  96. })