diff --git a/applications/browser-extension/package.json b/applications/browser-extension/package.json index a906aeb705..c04bb85aa3 100644 --- a/applications/browser-extension/package.json +++ b/applications/browser-extension/package.json @@ -179,7 +179,6 @@ "@playwright/test": "^1.48.2", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.15", "@shopify/jest-dom-mocks": "^5.2.0", - "@sindresorhus/tsconfig": "^6.0.0", "@sinonjs/fake-timers": "^13.0.5", "@storybook/addon-actions": "^7.6.17", "@storybook/addon-essentials": "^7.6.17", diff --git a/applications/browser-extension/tsconfig.json b/applications/browser-extension/tsconfig.json index de1ad80454..c634f42aa1 100644 --- a/applications/browser-extension/tsconfig.json +++ b/applications/browser-extension/tsconfig.json @@ -1,22 +1,7 @@ { - // You can see the full details at https://github.com/sindresorhus/tsconfig/blob/main/tsconfig.json - // Note: `strict: true` enables many flags that aren’t explicitly listed in that file - "extends": "@sindresorhus/tsconfig", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "sourceMap": true, - "module": "esnext", - "target": "es2023", - "moduleResolution": "bundler", - "resolveJsonModule": true, "baseUrl": ".", - "outDir": null, - "declaration": false, - - // TODO: Drop these lines to make TS stricter https://github.com/pixiebrix/pixiebrix-extension/issues/775 - "strictFunctionTypes": false, - "noPropertyAccessFromIndexSignature": false, - "noImplicitReturns": false, - "noUnusedParameters": false, "paths": { "@/*": ["src/*"], "@img/*": ["img/*"], diff --git a/libraries/utils/tsconfig.json b/libraries/utils/tsconfig.json index 80838c478f..ee206358ed 100644 --- a/libraries/utils/tsconfig.json +++ b/libraries/utils/tsconfig.json @@ -1,25 +1,9 @@ { - // You can see the full details at https://github.com/sindresorhus/tsconfig/blob/main/tsconfig.json - // Note: `strict: true` enables many flags that aren’t explicitly listed in that file - "extends": "@sindresorhus/tsconfig", + "extends": "../../tsconfig.base.json", "compilerOptions": { - "sourceMap": true, - "module": "esnext", - "target": "es2023", - "moduleResolution": "bundler", - "resolveJsonModule": true, "baseUrl": ".", - "outDir": null, - "declaration": false, - - // TODO: Drop these lines to make TS stricter https://github.com/pixiebrix/pixiebrix-extension/issues/775 - "strictFunctionTypes": false, - "noPropertyAccessFromIndexSignature": false, - "noImplicitReturns": false, - "noUnusedParameters": false, "paths": { "@/*": ["src/*"] } - }, - "exclude": ["node_modules"] + } } diff --git a/package.json b/package.json index 22170d65b1..8010f2bb60 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,7 @@ }, "devDependencies": { "knip": "^5.36.7", - "prettier": "3.1.0" + "prettier": "3.1.0", + "@sindresorhus/tsconfig": "^6.0.0" } } diff --git a/pixiebrix-extension.iml b/pixiebrix-extension.iml index aa8a3a7439..3867c8347e 100644 --- a/pixiebrix-extension.iml +++ b/pixiebrix-extension.iml @@ -10,6 +10,9 @@ + + + diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 0000000000..c7f5f2a2f4 --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,22 @@ +{ + // You can see the full details at https://github.com/sindresorhus/tsconfig/blob/main/tsconfig.json + // Note: `strict: true` enables many flags that aren’t explicitly listed in that file + "extends": "@sindresorhus/tsconfig", + "compilerOptions": { + "sourceMap": true, + "module": "esnext", + "target": "es2023", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "baseUrl": ".", + "outDir": null, + "declaration": false, + + // TODO: Drop these lines to make TS stricter https://github.com/pixiebrix/pixiebrix-extension/issues/775 + "strictFunctionTypes": false, + "noPropertyAccessFromIndexSignature": false, + "noImplicitReturns": false, + "noUnusedParameters": false + }, + "exclude": ["node_modules"] +}