/* * SPDX-FileCopyrightText: 2024-2025 Pagefault Games * * SPDX-License-Identifier: AGPL-3.0-only */ { "compilerOptions": { "target": "ES2023", "module": "ES2022", // Modifying this option requires all values to be set manually because the defaults get overridden // Values other than "ES2024.Promise" taken from https://github.com/microsoft/TypeScript/blob/main/src/lib/es2023.full.d.ts "lib": [ "ES2023", "ES2024.Promise", "DOM", "DOM.AsyncIterable", "DOM.Iterable", "ScriptHost", "WebWorker.ImportScripts", "ES2024.Object", // NOTE: Be *very* mindful of these when updating typescript versions, // as their definitions may change in breaking ways "ESNext.Iterator", "ESNext.Collection" ], "skipLibCheck": true, // Safe and almost always beneficial "moduleResolution": "bundler", "resolveJsonModule": true, "esModuleInterop": true, "strictNullChecks": true, "sourceMap": false, "strict": false, // TODO: Enable this eventually "rootDir": ".", "outDir": "./build", "noEmit": true, "paths": { "#abilities/*": ["./src/data/abilities/*.ts"], "#api/*": ["./src/plugins/api/*.ts"], "#balance/*": ["./src/data/balance/*.ts"], "#constants/*": ["./src/constants/*.ts"], "#enums/*": ["./src/enums/*.ts"], "#events/*": ["./src/events/*.ts"], "#field/*": ["./src/field/*.ts"], "#inputs/*": ["./src/configs/inputs/*.ts"], "#modifiers/*": ["./src/modifier/*.ts"], "#moves/*": ["./src/data/moves/*.ts"], "#mystery-encounters/*": [ "./src/data/mystery-encounters/utils/*.ts", "./src/data/mystery-encounters/encounters/*.ts", "./src/data/mystery-encounters/requirements/*.ts", "./src/data/mystery-encounters/*.ts" ], "#package.json": ["./package.json"], "#phases/*": ["./src/phases/*.ts"], "#plugins/*": ["./src/plugins/vite/*.ts", "./src/plugins/*.ts"], "#sprites/*": ["./src/sprites/*.ts"], "#system/*": [ "./src/system/settings/*.ts", "./src/system/version-migration/versions/*.ts", "./src/system/version-migration/*.ts", "./src/system/*.ts" ], "#trainers/*": ["./src/data/trainers/*.ts"], "#types/*": ["./src/@types/*.ts"], "#ui/*": [ "./src/ui/battle-info/*.ts", "./src/ui/containers/*.ts", "./src/ui/handlers/*.ts", "./src/ui/settings/*.ts", "./src/ui/utils/*.ts", "./src/ui/*.ts" ], "#utils/*": ["./src/utils/*.ts"], "#data/*": ["./src/data/pokemon-forms/*.ts", "./src/data/pokemon/*.ts", "./src/data/*.ts"], "#test/*": ["./test/*.ts"], "#app/*": ["./src/*.ts"] } }, // Exclude checking for script JS files as those are covered by the folder's `jsconfig.json` "include": ["**/*.ts", "**/*.d.ts"], "exclude": ["node_modules", "dist"] }