- Delete old Vite+Svelte frontend - Initialize new SvelteKit project with TypeScript - Configure Tailwind CSS v4 + DaisyUI - Implement JWT authentication with auto-refresh - Create login page with form validation (Zod) - Add protected route guards - Update Docker configuration for single-stage build - Add E2E tests with Playwright (6/11 passing) - Fix Svelte 5 reactivity with $state() runes Known issues: - 5 E2E tests failing (timing/async issues) - Token refresh implementation needs debugging - Validation error display timing
81 lines
2.1 KiB
TypeScript
81 lines
2.1 KiB
TypeScript
import type * as Compiler from "svelte/compiler";
|
|
export type SvelteConfig = {
|
|
compilerOptions?: Compiler.CompileOptions;
|
|
extensions?: string[];
|
|
kit?: KitConfig;
|
|
preprocess?: unknown;
|
|
vitePlugin?: unknown;
|
|
onwarn?: (warning: Compiler.Warning, defaultHandler: (warning: Compiler.Warning) => void) => void;
|
|
warningFilter?: (warning: Compiler.Warning) => boolean;
|
|
[key: string]: unknown;
|
|
};
|
|
interface KitConfig {
|
|
adapter?: unknown;
|
|
alias?: Record<string, string>;
|
|
appDir?: string;
|
|
csp?: {
|
|
mode?: "hash" | "nonce" | "auto";
|
|
directives?: unknown;
|
|
reportOnly?: unknown;
|
|
};
|
|
csrf?: {
|
|
checkOrigin?: boolean;
|
|
};
|
|
embedded?: boolean;
|
|
env?: {
|
|
dir?: string;
|
|
publicPrefix?: string;
|
|
privatePrefix?: string;
|
|
};
|
|
files?: {
|
|
assets?: string;
|
|
hooks?: {
|
|
client?: string;
|
|
server?: string;
|
|
universal?: string;
|
|
};
|
|
lib?: string;
|
|
params?: string;
|
|
routes?: string;
|
|
serviceWorker?: string;
|
|
appTemplate?: string;
|
|
errorTemplate?: string;
|
|
};
|
|
inlineStyleThreshold?: number;
|
|
moduleExtensions?: string[];
|
|
outDir?: string;
|
|
output?: {
|
|
preloadStrategy?: "modulepreload" | "preload-js" | "preload-mjs";
|
|
};
|
|
paths?: {
|
|
assets?: "" | `http://${string}` | `https://${string}`;
|
|
base?: "" | `/${string}`;
|
|
relative?: boolean;
|
|
};
|
|
prerender?: {
|
|
concurrency?: number;
|
|
crawl?: boolean;
|
|
entries?: ("*" | `/${string}`)[];
|
|
handleHttpError?: unknown;
|
|
handleMissingId?: unknown;
|
|
handleEntryGeneratorMismatch?: unknown;
|
|
origin?: string;
|
|
};
|
|
serviceWorker?: {
|
|
register?: boolean;
|
|
files?(filepath: string): boolean;
|
|
};
|
|
typescript?: {
|
|
config?: (config: Record<string, any>) => Record<string, any> | void;
|
|
};
|
|
version?: {
|
|
name?: string;
|
|
pollInterval?: number;
|
|
};
|
|
}
|
|
/**
|
|
* Resolves svelte.config.
|
|
*/
|
|
export declare function resolveSvelteConfigFromOption(options: any): SvelteConfig | null;
|
|
export {};
|