From 2e610e275393707796ecdc5137ef99fe4a78a005 Mon Sep 17 00:00:00 2001 From: Tom Milewski Date: Mon, 11 Dec 2023 14:56:05 -0500 Subject: [PATCH 1/4] fix(clerk-react): Fix build process not catching type errors --- .changeset/many-meals-do.md | 5 +++++ packages/react/tsup.config.ts | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 .changeset/many-meals-do.md diff --git a/.changeset/many-meals-do.md b/.changeset/many-meals-do.md new file mode 100644 index 00000000000..e421f83953a --- /dev/null +++ b/.changeset/many-meals-do.md @@ -0,0 +1,5 @@ +--- +'@clerk/clerk-react': patch +--- + +Re-implement `tsc` type-checking within the build process diff --git a/packages/react/tsup.config.ts b/packages/react/tsup.config.ts index e2b4da48307..30f1c15466f 100644 --- a/packages/react/tsup.config.ts +++ b/packages/react/tsup.config.ts @@ -13,7 +13,7 @@ export default defineConfig(overrideOptions => { entry: { index: 'src/index.ts', }, - onSuccess: shouldPublish ? 'npm run publish:local' : undefined, + onSuccess: ['tsc --noEmit', shouldPublish ? 'npm run publish:local' : undefined].filter(Boolean).join(' && '), format: ['cjs', 'esm'], bundle: true, clean: true, From 13b4881d954b4e752551c7bbe0d9a4ee3cea7212 Mon Sep 17 00:00:00 2001 From: Tom Milewski Date: Mon, 11 Dec 2023 19:00:39 -0500 Subject: [PATCH 2/4] fix(localizations,clerk-react,clerk-sdk-node,shared,types): Re-add tsc for type checking --- packages/localizations/tsup.config.ts | 1 + packages/react/tsconfig.json | 1 + packages/react/tsup.config.ts | 4 +--- packages/sdk-node/tsup.config.ts | 1 + packages/shared/tsup.config.ts | 1 + packages/types/src/localization.ts | 8 ++++++++ packages/types/tsconfig.json | 1 + packages/types/tsup.config.ts | 1 + 8 files changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/localizations/tsup.config.ts b/packages/localizations/tsup.config.ts index 020096d7747..04a22a0c63e 100644 --- a/packages/localizations/tsup.config.ts +++ b/packages/localizations/tsup.config.ts @@ -70,5 +70,6 @@ export default defineConfig(_overrideOptions => { sourcemap: true, dts: true, splitting: false, + onSuccess: 'tsc', }; }); diff --git a/packages/react/tsconfig.json b/packages/react/tsconfig.json index be04afbdc58..56ef6b8621a 100644 --- a/packages/react/tsconfig.json +++ b/packages/react/tsconfig.json @@ -3,6 +3,7 @@ "baseUrl": ".", "declaration": true, "declarationMap": false, + "emitDeclarationOnly": true, "esModuleInterop": true, "importHelpers": true, "isolatedModules": true, diff --git a/packages/react/tsup.config.ts b/packages/react/tsup.config.ts index 30f1c15466f..4a5de435ea0 100644 --- a/packages/react/tsup.config.ts +++ b/packages/react/tsup.config.ts @@ -1,8 +1,6 @@ import { defineConfig } from 'tsup'; -// @ts-expect-error for `import module with '.json' extension` import { version as clerkJsVersion } from '../clerk-js/package.json'; -// @ts-expect-error for `import module with '.json' extension` import { name, version } from './package.json'; export default defineConfig(overrideOptions => { @@ -13,7 +11,7 @@ export default defineConfig(overrideOptions => { entry: { index: 'src/index.ts', }, - onSuccess: ['tsc --noEmit', shouldPublish ? 'npm run publish:local' : undefined].filter(Boolean).join(' && '), + onSuccess: ['tsc', shouldPublish ? 'npm run publish:local' : undefined].filter(Boolean).join(' && '), format: ['cjs', 'esm'], bundle: true, clean: true, diff --git a/packages/sdk-node/tsup.config.ts b/packages/sdk-node/tsup.config.ts index f402b39bbd5..5d462d258c4 100644 --- a/packages/sdk-node/tsup.config.ts +++ b/packages/sdk-node/tsup.config.ts @@ -13,6 +13,7 @@ export default defineConfig(overrideOptions => { minify: false, sourcemap: true, dts: true, + onSuccess: 'tsc', define: { PACKAGE_NAME: `"${name}"`, PACKAGE_VERSION: `"${version}"`, diff --git a/packages/shared/tsup.config.ts b/packages/shared/tsup.config.ts index 8c912b55a08..6aa05ec398f 100644 --- a/packages/shared/tsup.config.ts +++ b/packages/shared/tsup.config.ts @@ -16,6 +16,7 @@ export default defineConfig(overrideOptions => { minify: false, sourcemap: true, dts: true, + onSuccess: 'tsc', external: ['react', 'react-dom'], esbuildPlugins: [WebWorkerMinifyPlugin as any], define: { diff --git a/packages/types/src/localization.ts b/packages/types/src/localization.ts index 1e25159acb0..b46754b9f4e 100644 --- a/packages/types/src/localization.ts +++ b/packages/types/src/localization.ts @@ -264,6 +264,10 @@ type _LocalizationResource = { formButtonPrimary__continue: LocalizationValue; formButtonPrimary__finish: LocalizationValue; formButtonReset: LocalizationValue; + navbar: { + title: LocalizationValue; + description: LocalizationValue; + }; start: { headerTitle__account: LocalizationValue; headerTitle__security: LocalizationValue; @@ -545,6 +549,10 @@ type _LocalizationResource = { badge__automaticInvitation: LocalizationValue; badge__automaticSuggestion: LocalizationValue; badge__manualInvitation: LocalizationValue; + navbar: { + title: LocalizationValue; + description: LocalizationValue; + }; start: { headerTitle__members: LocalizationValue; headerTitle__settings: LocalizationValue; diff --git a/packages/types/tsconfig.json b/packages/types/tsconfig.json index 5f65c425028..c93611c25a2 100644 --- a/packages/types/tsconfig.json +++ b/packages/types/tsconfig.json @@ -7,6 +7,7 @@ "moduleResolution": "node", "declaration": true, "declarationMap": true, + "emitDeclarationOnly": true, "noImplicitReturns": true, "noUnusedLocals": true, "noUnusedParameters": true, diff --git a/packages/types/tsup.config.ts b/packages/types/tsup.config.ts index f138fb99e10..2b9333d639c 100644 --- a/packages/types/tsup.config.ts +++ b/packages/types/tsup.config.ts @@ -7,6 +7,7 @@ export default defineConfig(() => { entry: { index: uiRetheme ? 'src/index.retheme.ts' : 'src/index.ts', }, + onSuccess: 'tsc', minify: false, clean: true, sourcemap: true, From d14202e5f8f318118b5c8c72d8f1d0a75bd478fd Mon Sep 17 00:00:00 2001 From: Tom Milewski Date: Mon, 11 Dec 2023 19:02:32 -0500 Subject: [PATCH 3/4] chore(*): Update changeset --- .changeset/many-meals-do.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.changeset/many-meals-do.md b/.changeset/many-meals-do.md index e421f83953a..2610def09fd 100644 --- a/.changeset/many-meals-do.md +++ b/.changeset/many-meals-do.md @@ -1,5 +1,9 @@ --- '@clerk/clerk-react': patch +'@clerk/clerk-sdk-node': patch +'@clerk/localizations': patch +'@clerk/shared': patch +'@clerk/types': patch --- Re-implement `tsc` type-checking within the build process From 0cdc27767c04a352fe09543c1c90ba7bbf5a04ea Mon Sep 17 00:00:00 2001 From: Tom Milewski Date: Mon, 11 Dec 2023 19:29:06 -0500 Subject: [PATCH 4/4] fix(types): Correct existing typing issues --- packages/types/src/localization.retheme.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/types/src/localization.retheme.ts b/packages/types/src/localization.retheme.ts index 28ec6415ec4..b46754b9f4e 100644 --- a/packages/types/src/localization.retheme.ts +++ b/packages/types/src/localization.retheme.ts @@ -271,6 +271,8 @@ type _LocalizationResource = { start: { headerTitle__account: LocalizationValue; headerTitle__security: LocalizationValue; + headerSubtitle__account: LocalizationValue; + headerSubtitle__security: LocalizationValue; profileSection: { title: LocalizationValue; }; @@ -554,6 +556,8 @@ type _LocalizationResource = { start: { headerTitle__members: LocalizationValue; headerTitle__settings: LocalizationValue; + headerSubtitle__members: LocalizationValue; + headerSubtitle__settings: LocalizationValue; }; profilePage: { title: LocalizationValue;