Fix all warnings from build process, svelte-check, and linting to achieve clean output.

Current Status

  • pnpm check: 0 errors, 0 warnings
  • pnpm build: 6 warnings (see below)

Build Warnings

1. tsconfig.json base config (2 warnings)

Cannot find base config file "./.svelte-kit/tsconfig.json"

Cause: esbuild runs in parallel with vite, starts before SvelteKit generates tsconfig.

Status: Added svelte-kit sync to build script but warning persists due to parallel execution. Harmless - build succeeds.

2. CSS :has() selector (4 warnings)

Expected identifier but found whitespace
Unexpected "has("

Location: src/styles/ids/settings.pcss:82

html:has(.theme_dark) { ... }

Cause: esbuild's CSS parser doesn't fully support :has() pseudo-selector.

Fix options:

  • Ignore (CSS works fine in browser, just parser warning)
  • Refactor to use JS-based theme switching instead of :has()
  • Use @supports or fallback approach

Recommended Approach

  1. tsconfig warning: Leave as-is, it's harmless and resolves on build
  2. :has() warning: Keep for now - modern CSS feature that works in browsers. Consider refactoring only if it causes actual issues.

Zero warnings

Clean build output

A static site template built with SvelteKit.

Sveleton, 2025