fix: use nitro overlay to skip dev assets in production
| 
						 | 
				
			
			@ -1 +1,3 @@
 | 
			
		|||
*.css
 | 
			
		||||
*.png
 | 
			
		||||
*.ico
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,7 +3,6 @@ import { APP_NAME, STORAGE_KEY_LANG } from '~/constants'
 | 
			
		|||
export function setupPageHeader() {
 | 
			
		||||
  const isDev = process.dev
 | 
			
		||||
  const isPreview = useRuntimeConfig().public.env === 'staging'
 | 
			
		||||
  const suffix = isDev || isPreview ? '-dev' : ''
 | 
			
		||||
 | 
			
		||||
  const i18n = useI18n()
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -12,15 +11,6 @@ export function setupPageHeader() {
 | 
			
		|||
      lang: () => i18n.locale.value,
 | 
			
		||||
    },
 | 
			
		||||
    titleTemplate: title => `${title ? `${title} | ` : ''}${APP_NAME}${isDev ? ' (dev)' : isPreview ? ' (preview)' : ''}`,
 | 
			
		||||
    bodyAttrs: {
 | 
			
		||||
      class: 'overflow-x-hidden',
 | 
			
		||||
    },
 | 
			
		||||
    link: [
 | 
			
		||||
      { rel: 'icon', type: 'image/svg+xml', href: `/favicon${suffix}.svg` },
 | 
			
		||||
      { rel: 'alternate icon', type: 'image/x-icon', href: `/favicon${suffix}.ico` },
 | 
			
		||||
      { rel: 'icon', type: 'image/png', href: `/favicon-16x16${suffix}.png`, sizes: '16x16' },
 | 
			
		||||
      { rel: 'icon', type: 'image/png', href: `/favicon-32x32${suffix}.png`, sizes: '32x32' },
 | 
			
		||||
    ],
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  // eslint-disable-next-line no-unused-expressions
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,10 @@
 | 
			
		|||
import { fileURLToPath } from 'node:url'
 | 
			
		||||
import Inspect from 'vite-plugin-inspect'
 | 
			
		||||
import { isCI, isDevelopment } from 'std-env'
 | 
			
		||||
import { i18n } from './config/i18n'
 | 
			
		||||
 | 
			
		||||
const isPreview = process.env.PULL_REQUEST === 'true'
 | 
			
		||||
 | 
			
		||||
export default defineNuxtConfig({
 | 
			
		||||
  ssr: false,
 | 
			
		||||
  modules: [
 | 
			
		||||
| 
						 | 
				
			
			@ -48,9 +51,9 @@ export default defineNuxtConfig({
 | 
			
		|||
    },
 | 
			
		||||
  },
 | 
			
		||||
  runtimeConfig: {
 | 
			
		||||
    deployUrl: !isCI
 | 
			
		||||
    deployUrl: isDevelopment
 | 
			
		||||
      ? 'http://localhost:5314'
 | 
			
		||||
      : process.env.PULL_REQUEST === 'true'
 | 
			
		||||
      : isPreview
 | 
			
		||||
        ? process.env.DEPLOY_PRIME_URL
 | 
			
		||||
        : 'https://elk.zone',
 | 
			
		||||
    cloudflare: {
 | 
			
		||||
| 
						 | 
				
			
			@ -59,7 +62,7 @@ export default defineNuxtConfig({
 | 
			
		|||
      apiToken: '',
 | 
			
		||||
    },
 | 
			
		||||
    public: {
 | 
			
		||||
      env: isCI ? process.env.PULL_REQUEST === 'true' ? 'staging' : 'production' : 'local',
 | 
			
		||||
      env: isCI ? isPreview ? 'staging' : 'production' : 'local',
 | 
			
		||||
      translateApi: '',
 | 
			
		||||
      // Masto uses Mastodon version checks to see what features are enabled.
 | 
			
		||||
      // Mastodon alternatives like GoToSocial will always fail these checks, so
 | 
			
		||||
| 
						 | 
				
			
			@ -72,6 +75,9 @@ export default defineNuxtConfig({
 | 
			
		|||
    },
 | 
			
		||||
  },
 | 
			
		||||
  nitro: {
 | 
			
		||||
    publicAssets: [
 | 
			
		||||
      ...(isDevelopment || isPreview ? [{ dir: fileURLToPath(new URL('./public-dev', import.meta.url)) }] : []),
 | 
			
		||||
    ],
 | 
			
		||||
    prerender: {
 | 
			
		||||
      crawlLinks: false,
 | 
			
		||||
      routes: ['/', '/200.html'],
 | 
			
		||||
| 
						 | 
				
			
			@ -82,6 +88,15 @@ export default defineNuxtConfig({
 | 
			
		|||
    head: {
 | 
			
		||||
      // Prevent arbitrary zooming on mobile devices
 | 
			
		||||
      viewport: 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no',
 | 
			
		||||
      bodyAttrs: {
 | 
			
		||||
        class: 'overflow-x-hidden',
 | 
			
		||||
      },
 | 
			
		||||
      link: [
 | 
			
		||||
        { rel: 'icon', type: 'image/png', href: '/favicon.png' },
 | 
			
		||||
        { rel: 'alternate icon', type: 'image/x-icon', href: '/favicon.ico' },
 | 
			
		||||
        { rel: 'icon', type: 'image/png', href: '/favicon-16x16.png', sizes: '16x16' },
 | 
			
		||||
        { rel: 'icon', type: 'image/png', href: '/favicon-32x32.png', sizes: '32x32' },
 | 
			
		||||
      ],
 | 
			
		||||
    },
 | 
			
		||||
  },
 | 
			
		||||
  i18n,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
		 Przed Szerokość: | Wysokość: | Rozmiar: 918 B Po Szerokość: | Wysokość: | Rozmiar: 918 B  | 
| 
		 Przed Szerokość: | Wysokość: | Rozmiar: 1.4 KiB Po Szerokość: | Wysokość: | Rozmiar: 1.4 KiB  | 
| 
		 Przed Szerokość: | Wysokość: | Rozmiar: 15 KiB Po Szerokość: | Wysokość: | Rozmiar: 15 KiB  | 
| 
		 Przed Szerokość: | Wysokość: | Rozmiar: 3.0 KiB Po Szerokość: | Wysokość: | Rozmiar: 3.0 KiB  | 
| 
		 Przed Szerokość: | Wysokość: | Rozmiar: 2.9 KiB Po Szerokość: | Wysokość: | Rozmiar: 2.9 KiB  |