From e1fa08f47756c5665763429b39321966b3164a7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Filip=20Dupanovi=C4=87?= Date: Sat, 22 Jun 2024 00:37:17 +0200 Subject: [PATCH] feat(tsconfig): Enable isolated declarations Configures TypeScript configs to enable `--isolatedDeclarations`. Closes #719. --- .projenrc.mts | 5 +++++ ...eslint-config-95f24897-c9c5-4441-8fa3-f4659c0d0096.json | 7 +++++++ ...-sha-tsconfig-88a0ba00-940f-4380-b7af-69595ab75f1b.json | 7 +++++++ packages/eslint-config/src/index.js | 1 + packages/tsconfig/base.json | 4 ++-- packages/tsconfig/build.json | 1 + packages/tsconfig/project.json | 1 + tsconfig.json | 5 +++++ 8 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 change/@langri-sha-eslint-config-95f24897-c9c5-4441-8fa3-f4659c0d0096.json create mode 100644 change/@langri-sha-tsconfig-88a0ba00-940f-4380-b7af-69595ab75f1b.json diff --git a/.projenrc.mts b/.projenrc.mts index d6aabb43d..bf33d73d3 100644 --- a/.projenrc.mts +++ b/.projenrc.mts @@ -70,6 +70,11 @@ const project = new Project({ renovate: {}, typeScriptConfig: { config: { + compilerOptions: { + allowJs: true, + checkJs: true, + isolatedDeclarations: false, + }, files: ['babel.config.js'], references: [{ path: './apps/web' }], }, diff --git a/change/@langri-sha-eslint-config-95f24897-c9c5-4441-8fa3-f4659c0d0096.json b/change/@langri-sha-eslint-config-95f24897-c9c5-4441-8fa3-f4659c0d0096.json new file mode 100644 index 000000000..1c7c5685e --- /dev/null +++ b/change/@langri-sha-eslint-config-95f24897-c9c5-4441-8fa3-f4659c0d0096.json @@ -0,0 +1,7 @@ +{ + "type": "minor", + "comment": "feat(tsconfig): Enable isolated declarations", + "packageName": "@langri-sha/eslint-config", + "email": "filip.dupanovic@gmail.com", + "dependentChangeType": "patch" +} diff --git a/change/@langri-sha-tsconfig-88a0ba00-940f-4380-b7af-69595ab75f1b.json b/change/@langri-sha-tsconfig-88a0ba00-940f-4380-b7af-69595ab75f1b.json new file mode 100644 index 000000000..18ea19d1d --- /dev/null +++ b/change/@langri-sha-tsconfig-88a0ba00-940f-4380-b7af-69595ab75f1b.json @@ -0,0 +1,7 @@ +{ + "type": "minor", + "comment": "feat(tsconfig): Enable isolated declarations", + "packageName": "@langri-sha/tsconfig", + "email": "filip.dupanovic@gmail.com", + "dependentChangeType": "patch" +} diff --git a/packages/eslint-config/src/index.js b/packages/eslint-config/src/index.js index 387d83ea2..ff5533a63 100644 --- a/packages/eslint-config/src/index.js +++ b/packages/eslint-config/src/index.js @@ -1,3 +1,4 @@ +/// import js from '@eslint/js' import ts from 'typescript-eslint' import globals from 'globals' diff --git a/packages/tsconfig/base.json b/packages/tsconfig/base.json index 444256247..578ae6be0 100644 --- a/packages/tsconfig/base.json +++ b/packages/tsconfig/base.json @@ -1,10 +1,10 @@ { "$schema": "https://json.schemastore.org/tsconfig", "compilerOptions": { - "allowJs": true, + "allowJs": false, "allowSyntheticDefaultImports": true, "baseUrl": "${configDir}", - "checkJs": true, + "checkJs": false, "esModuleInterop": true, "experimentalDecorators": false, "forceConsistentCasingInFileNames": true, diff --git a/packages/tsconfig/build.json b/packages/tsconfig/build.json index 8ce84ad52..0396a2c2e 100644 --- a/packages/tsconfig/build.json +++ b/packages/tsconfig/build.json @@ -4,6 +4,7 @@ "compilerOptions": { "declaration": true, "declarationMap": true, + "isolatedDeclarations": true, "sourceMap": true } } diff --git a/packages/tsconfig/project.json b/packages/tsconfig/project.json index d2c8c9344..53384e114 100644 --- a/packages/tsconfig/project.json +++ b/packages/tsconfig/project.json @@ -7,6 +7,7 @@ "declarationMap": true, "emitDeclarationOnly": true, "incremental": true, + "isolatedDeclarations": true, "noEmit": false, "sourceMap": true } diff --git a/tsconfig.json b/tsconfig.json index 2b96fa1ad..ebdedaaea 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,6 +2,11 @@ { "$schema": "https://json.schemastore.org/tsconfig", "extends": "@langri-sha/tsconfig", + "compilerOptions": { + "allowJs": true, + "checkJs": true, + "isolatedDeclarations": false + }, "files": [ ".projenrc.mts", "babel.config.js",