7693b49253
- Replace @robonen/oxlint with @robonen/eslint (composable ESLint flat-config presets: base, typescript, vue, vitest, imports, node, stylistic). - Plugins bundled as deps: typescript-eslint, eslint-plugin-vue, @vitest/eslint-plugin, eslint-plugin-import-x, eslint-plugin-n, eslint-plugin-unicorn, @stylistic/eslint-plugin. - @robonen/tsconfig: add base/dom/node/vue configs for composite project refs.
36 lines
1.1 KiB
JSON
36 lines
1.1 KiB
JSON
{
|
|
"$schema": "https://json.schemastore.org/tsconfig",
|
|
"display": "@robonen base (type-check, no DOM)",
|
|
"compilerOptions": {
|
|
/* Modules */
|
|
"module": "Preserve",
|
|
"moduleResolution": "Bundler",
|
|
"moduleDetection": "force",
|
|
"resolveJsonModule": true,
|
|
"allowImportingTsExtensions": true,
|
|
"verbatimModuleSyntax": true,
|
|
"isolatedModules": true,
|
|
"esModuleInterop": true,
|
|
"allowSyntheticDefaultImports": true,
|
|
|
|
/* Language and environment */
|
|
"target": "ESNext",
|
|
"lib": ["ESNext"],
|
|
"useDefineForClassFields": true,
|
|
|
|
/* Type checking (strict) */
|
|
"strict": true,
|
|
"noUncheckedIndexedAccess": true,
|
|
"noImplicitOverride": true,
|
|
"noImplicitReturns": true,
|
|
"noFallthroughCasesInSwitch": true,
|
|
"noUncheckedSideEffectImports": true,
|
|
"forceConsistentCasingInFileNames": true,
|
|
|
|
/* Emit is delegated to the bundler (tsdown); tsc is type-check only */
|
|
"noEmit": true,
|
|
"skipLibCheck": true
|
|
},
|
|
"exclude": ["node_modules", "dist", ".output", "coverage"]
|
|
}
|