search/nuxt.config.ts

97 lines
1.8 KiB
TypeScript
Executable File

// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
modules: ['@nuxt/eslint', '@nuxt/ui', '@vueuse/nuxt', '@nuxtjs/i18n', '@pinia/nuxt', '@sfxcode/nuxt-typesense'],
app: {
head: {
htmlAttrs: { translate: 'no' },
meta: [{ name: 'google', content: 'notranslate' }]
}
},
devtools: {
enabled: true
},
css: ['~/assets/css/main.css'],
ui: {
colorMode: false
},
runtimeConfig: {
feedbackToken: '',
public: {
feedbackWebhook: '',
recaptchaSiteKey: '',
feedbackMaxPerHour: 5,
feedbackMaxPerSession: 3,
feedbackCooldownSec: 45,
feedbackMinSeconds: 4,
entrelineasDevKey: ''
}
},
routeRules: {
'/api/**': {
cors: true
}
},
compatibilityDate: '2024-07-11',
eslint: {
config: {
stylistic: {
commaDangle: 'never',
braceStyle: '1tbs'
}
}
},
i18n: {
locales: [{
code: 'es',
name: 'Español',
language: 'es-PR',
file: 'es.json',
icon: 'i-circle-flags:es'
},
{
code: 'en',
name: 'English',
language: 'en-US',
file: 'en.json',
icon: 'i-circle-flags:en'
},
{
code: 'fr',
name: 'Francois',
language: 'fr-FR',
file: 'fr.json',
icon: 'i-circle-flags:fr'
},
{
code: 'pt',
name: 'Portugues',
language: 'pt',
file: 'pt.json',
icon: 'i-circle-flags:br'
}],
lazy: true,
langDir: '../lang/',
strategy: 'prefix',
defaultLocale: 'es',
detectBrowserLanguage: false,
bundle: {
optimizeTranslationDirective: false,
},
},
typesense: {
url: process.env.NUXT_PUBLIC_TYPESENSE_URL || 'https://searchts.carpa.com',
apiKey: process.env.NUXT_PUBLIC_TYPESENSE_API_KEY || '',
clientMode: true
}
})