Files
FEDEO/frontend/nuxt.config.ts
florianfederspiel 4b7cf171c8
Some checks failed
Build and Push Docker Images / build-backend (push) Successful in 31s
Build and Push Docker Images / build-frontend (push) Failing after 20s
PWA
2026-02-04 16:02:47 +01:00

163 lines
4.4 KiB
TypeScript

// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
devtools: {
enabled: false,
timeline: {
enabled: true
}
},
modules: ['@vite-pwa/nuxt','@pinia/nuxt', '@nuxt/ui', '@nuxtjs/supabase', "nuxt-editorjs", '@nuxtjs/fontaine', 'nuxt-viewport', '@nuxtjs/leaflet', '@vueuse/nuxt'],
ssr: false,
imports: {
dirs: ['stores']
},
extends: [
'@nuxt/ui-pro'
],
components: [{
path: '~/components'
}],
build: {
transpile: ['@vuepic/vue-datepicker','@tiptap/vue-3','@tiptap/extension-code-block-lowlight',
'lowlight',]
},
routeRules: {
'/printing': {ssr: false}
},
supabase: {
key: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InV3cHB2Y3hmbHJjc2lidXpzYmlsIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MDA5MzgxOTQsImV4cCI6MjAxNjUxNDE5NH0.CkxYSQH0uLfwx9GVUlO6AYMU2FMLAxGMrwEKvyPv7Oo",
url: "https://uwppvcxflrcsibuzsbil.supabase.co",
redirect: false
},
vite: {
resolve: {
dedupe: [
'vue',
'@tiptap/vue-3',
'prosemirror-model',
'prosemirror-view',
'prosemirror-state',
'prosemirror-commands',
'prosemirror-schema-list',
'prosemirror-transform',
'prosemirror-history',
'prosemirror-gapcursor',
'prosemirror-dropcursor',
'prosemirror-tables'
]
},
optimizeDeps: {
include: [
"@editorjs/editorjs",
"dayjs",
'@tiptap/vue-3',
'@tiptap/extension-code-block-lowlight',
'lowlight',
'vue',
'@tiptap/extension-task-item',
'@tiptap/extension-task-list',
'@tiptap/extension-table',
'@tiptap/extension-mention',
'prosemirror-model',
'prosemirror-view',
'prosemirror-state',
'prosemirror-commands',
'prosemirror-transform',
'tippy.js',
'prosemirror-tables',
],
},
},
ui: {
icons: ['heroicons', 'mdi', 'simple-icons']
},
colorMode: {
preference: 'system'
},
runtimeConfig: {
public: {
apiBase: '',
pdfLicense: ''
}
},
pwa: {
/* Automatische Updates des Service Workers (optional, aber empfohlen) */
registerType: 'autoUpdate',
manifest: {
name: 'FEDEO',
short_name: 'FEDEO',
description: 'FEDEO',
theme_color: '#69c350',
background_color: '#ffffff',
/* WICHTIG: Dies sorgt dafür, dass die URL-Leiste verschwindet */
display: 'standalone',
/* Icons sind essentiell für den Home Screen */
icons: [
{
src: '192.png',
sizes: '192x192',
type: 'image/png'
},
{
src: '512.png',
sizes: '512x512',
type: 'image/png'
},
{
src: '512.png',
sizes: '512x512',
type: 'image/png',
purpose: 'any maskable'
}
]
},
/* WICHTIG FÜR SAFARI / iOS */
workbox: {
navigateFallback: '/',
},
devOptions: {
enabled: true, // Damit du es auch lokal testen kannst
type: 'module',
},
},
app: {
head: {
meta: [
// Sagt iOS, dass es eine WebApp ist
{ name: 'apple-mobile-web-app-capable', content: 'yes' },
// Steuert die Farbe der Statusleiste (weiß, schwarz oder transparent)
{ name: 'apple-mobile-web-app-status-bar-style', content: 'black-translucent' },
// Name der App unter dem Icon
{ name: 'apple-mobile-web-app-title', content: 'FEDEO' },
],
link: [
// Wichtig: Das Icon für den Home Screen
{ rel: 'apple-touch-icon', href: '/512.png' }
]
}
},
compatibilityDate: '2024-12-18'
})