From 3a49d776f37d41f5d19a3b12692506e2cba260fe Mon Sep 17 00:00:00 2001 From: Saleh Abdel Motaal Date: Tue, 17 Sep 2024 06:17:14 -0400 Subject: [PATCH] build(extension, streams): Add new `build:types` package script --- .depcheckrc.yml | 3 +++ .gitignore | 4 ++++ package.json | 1 + packages/extension/.eslintrc.cjs | 2 ++ packages/extension/package.json | 1 + packages/streams/.eslintrc.cjs | 2 ++ packages/streams/package.json | 1 + tsconfig.packages.build.json | 7 ++++++- 8 files changed, 20 insertions(+), 1 deletion(-) diff --git a/.depcheckrc.yml b/.depcheckrc.yml index 84e3442a6..23623e902 100644 --- a/.depcheckrc.yml +++ b/.depcheckrc.yml @@ -12,3 +12,6 @@ ignores: - 'rimraf' - 'typedoc' - '@types/lodash' + +ignore-patterns: + - /types.d.ts diff --git a/.gitignore b/.gitignore index d54c2ba01..0882cf9f4 100644 --- a/.gitignore +++ b/.gitignore @@ -76,3 +76,7 @@ node_modules/ !.yarn/releases !.yarn/sdks !.yarn/versions + +# Diagnostic files +/packages/*/types.d.ts +/packages/*/types.d.ts.map diff --git a/package.json b/package.json index 5a49c1e20..4ed5ad967 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "build:clean": "yarn clean && yarn build", "build:docs": "yarn workspaces foreach --all --exclude @ocap/monorepo --exclude @ocap/extension --parallel --interlaced --verbose run build:docs", "build:source": "yarn workspaces foreach --all --topological --parallel --interlaced --exclude @ocap/monorepo --verbose run build", + "build:types": "yarn workspaces foreach --all --parallel --interlaced --verbose run build:types", "build:watch": "yarn run build --watch", "changelog:update": "yarn workspaces foreach --all --no-private --parallel --interlaced --verbose run changelog:update", "changelog:validate": "yarn workspaces foreach --all --no-private --parallel --interlaced --verbose run changelog:validate", diff --git a/packages/extension/.eslintrc.cjs b/packages/extension/.eslintrc.cjs index 8885bc716..7cd6e18b1 100644 --- a/packages/extension/.eslintrc.cjs +++ b/packages/extension/.eslintrc.cjs @@ -1,6 +1,8 @@ module.exports = { extends: ['../../.eslintrc.cjs'], + ignorePatterns: ['types.d.ts'], + overrides: [ { files: ['src/**/*.ts'], diff --git a/packages/extension/package.json b/packages/extension/package.json index 0a381a83a..9274f7c28 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -14,6 +14,7 @@ "scripts": { "build": "yarn lint:types && yarn build:vite", "build:dev": "yarn lint:types && yarn build:vite:dev", + "build:types": "tsc --project tsconfig.build.json --noEmit false --emitDeclarationOnly --outFile types.d.ts", "build:vite": "vite build --config vite.config.ts", "build:vite:dev": "yarn build:vite --mode development", "changelog:validate": "../../scripts/validate-changelog.sh @ocap/extension", diff --git a/packages/streams/.eslintrc.cjs b/packages/streams/.eslintrc.cjs index 165e7042e..beb71715b 100644 --- a/packages/streams/.eslintrc.cjs +++ b/packages/streams/.eslintrc.cjs @@ -1,3 +1,5 @@ module.exports = { extends: ['../../.eslintrc.cjs'], + + ignorePatterns: ['types.d.ts'], }; diff --git a/packages/streams/package.json b/packages/streams/package.json index d2e4b164a..1f65256ff 100644 --- a/packages/streams/package.json +++ b/packages/streams/package.json @@ -31,6 +31,7 @@ "scripts": { "build": "ts-bridge --project tsconfig.build.json --clean", "build:docs": "typedoc", + "build:types": "tsc --project tsconfig.build.json --noEmit false --emitDeclarationOnly --outFile types.d.ts", "changelog:validate": "../../scripts/validate-changelog.sh streams", "clean": "rimraf --glob ./dist './*.tsbuildinfo'", "lint": "yarn lint:eslint && yarn lint:misc --check && yarn constraints && yarn lint:dependencies", diff --git a/tsconfig.packages.build.json b/tsconfig.packages.build.json index e8af00d5b..fd35ba8d3 100644 --- a/tsconfig.packages.build.json +++ b/tsconfig.packages.build.json @@ -8,5 +8,10 @@ "skipLibCheck": true, "sourceMap": true }, - "exclude": ["**/vite.config.ts", "**/vitest.config.ts", "**/*.test.ts"] + "exclude": [ + "**/vite.config.ts", + "**/vitest.config.ts", + "**/*.test.ts", + "packages/*/types.d.ts" + ] }