svelte.config.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import adapter from '@sveltejs/adapter-static';
  2. import { vitePreprocess } from '@sveltejs/vite-plugin-svelte';
  3. /** @type {import('@sveltejs/kit').Config} */
  4. const config = {
  5. kit: {
  6. adapter: adapter(),
  7. csp: {
  8. directives: {
  9. 'script-src': ['self', 'wasm-unsafe-eval'],
  10. 'script-src-elem': ['self', 'wasm-unsafe-eval'],
  11. 'connect-src': ['self', 'https:', 'blob:', 'data:', 'wss:'],
  12. 'require-trusted-types-for': ['script'],
  13. 'frame-src': ['self', 'https:', 'blob:', 'data:'],
  14. 'img-src': ['self', 'https:', 'blob:', 'data:'],
  15. 'media-src': ['self', 'https:', 'blob:', 'data:'],
  16. 'font-src': ['self', 'blob:', 'data:'],
  17. 'style-src': ['self', 'unsafe-inline'],
  18. 'object-src': ['none'],
  19. 'base-uri': ['none'],
  20. 'default-src': ['self'],
  21. 'frame-ancestors': ['self'],
  22. },
  23. reportOnly: {
  24. 'script-src': ['self', 'wasm-unsafe-eval'],
  25. 'connect-src': ['self', 'https:', 'blob:', 'data:', 'wss:'],
  26. 'worker-src': ['self', 'wasm-unsafe-eval', 'blob:'],
  27. 'require-trusted-types-for': ['script'],
  28. 'frame-src': ['self', 'https:', 'blob:', 'data:'],
  29. 'img-src': ['self', 'https:', 'blob:', 'data:'],
  30. 'media-src': ['self', 'https:', 'blob:', 'data:'],
  31. 'font-src': ['self', 'blob:', 'data:'],
  32. 'style-src': ['self', 'unsafe-inline'],
  33. 'object-src': ['none'],
  34. 'base-uri': ['none'],
  35. 'default-src': ['self'],
  36. 'frame-ancestors': ['self'],
  37. 'report-uri': ['.']
  38. }
  39. },
  40. },
  41. preprocess: vitePreprocess()
  42. };
  43. export default config;