mirror of
https://github.com/go-gitea/gitea.git
synced 2026-09-26 06:33:42 +09:00
Bump the TypeScript and Vite targets from ES2020 to ES2022. The frontend already calls ES2022 APIs like `Object.hasOwn` and `Array.prototype.at` without polyfills, so downleveling class syntax only added helpers. JS output shrinks by 36 KB. The only new syntax-level requirement is Safari 16.4 for mermaid, which ships class static blocks. Pale Moon supports all emitted syntax since 32.2. The ES2022 target implies `useDefineForClassFields`, so `noImplicitOverride` is enabled to flag class fields that shadow inherited DOM properties.
50 lines
1.3 KiB
JSON
50 lines
1.3 KiB
JSON
{
|
|
"include": [
|
|
"${configDir}/*",
|
|
"${configDir}/.*",
|
|
"${configDir}/tests/e2e/**/*",
|
|
"${configDir}/tests/e2e/**/.*",
|
|
"${configDir}/tools/**/*",
|
|
"${configDir}/tools/**/.*",
|
|
"${configDir}/web_src/js/**/*",
|
|
"${configDir}/web_src/js/**/.*",
|
|
],
|
|
"compilerOptions": {
|
|
"target": "es2022",
|
|
"module": "esnext",
|
|
"moduleResolution": "bundler",
|
|
"lib": ["dom", "esnext", "webworker"],
|
|
"allowImportingTsExtensions": true,
|
|
"allowJs": true,
|
|
"allowSyntheticDefaultImports": true,
|
|
"allowUnreachableCode": false,
|
|
"allowUnusedLabels": false,
|
|
"erasableSyntaxOnly": true,
|
|
"esModuleInterop": true,
|
|
"exactOptionalPropertyTypes": false,
|
|
"isolatedModules": true,
|
|
"libReplacement": false,
|
|
"noEmit": true,
|
|
"noFallthroughCasesInSwitch": true,
|
|
"noImplicitOverride": true,
|
|
"noImplicitReturns": true,
|
|
"noUncheckedSideEffectImports": true,
|
|
"noPropertyAccessFromIndexSignature": false,
|
|
"noUnusedLocals": true,
|
|
"noUnusedParameters": true,
|
|
"resolveJsonModule": true,
|
|
"skipLibCheck": true,
|
|
"sourceMap": true,
|
|
"strict": true,
|
|
"stripInternal": true,
|
|
"verbatimModuleSyntax": true,
|
|
"types": [
|
|
"node",
|
|
"vite/client",
|
|
"vitest/globals",
|
|
"./web_src/js/globals.d.ts",
|
|
"./types.d.ts",
|
|
],
|
|
}
|
|
}
|