Skip to content

Commit 533320e

Browse files
committed
chore: generate oauth-types on build
1 parent dfe6509 commit 533320e

File tree

4 files changed

+22
-71
lines changed

4 files changed

+22
-71
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ docs/providers.json
8484
packages/core/*.js
8585
packages/core/*.d.ts
8686
packages/core/*.d.ts.map
87+
packages/core/src/providers/oauth-types.ts
8788
packages/core/lib
8889
packages/core/providers
8990
packages/core/src/lib/pages/styles.ts

packages/core/package.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,11 @@
7777
}
7878
},
7979
"scripts": {
80-
"build": "pnpm css && tsc",
80+
"build": "pnpm css && pnpm providers && tsc",
8181
"clean": "rm -rf *.js *.d.ts* lib providers",
8282
"css": "node scripts/generate-css",
83-
"dev": "pnpm css && tsc -w"
83+
"dev": "pnpm css && pnpm providers && tsc -w",
84+
"providers": "node scripts/generate-providers"
8485
},
8586
"devDependencies": {
8687
"@next-auth/tsconfig": "workspace:*",
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import { join } from "path"
2+
import { readdirSync, writeFileSync } from "fs"
3+
4+
const providersPath = join(process.cwd(), "src/providers")
5+
6+
const files = readdirSync(providersPath, "utf8")
7+
8+
const providers = files.map((file) => {
9+
const strippedProviderName = file.substring(0, file.indexOf("."))
10+
return `"${strippedProviderName}"`
11+
}).filter((provider) => provider !== '"oauth-types"' && provider !== '"index"')
12+
13+
const result = `
14+
// THIS FILE IS AUTOGENERATED. DO NOT EDIT.
15+
export type OAuthProviderType =
16+
| ${providers.join("\n | ")}`
17+
18+
writeFileSync(join(providersPath, "oauth-types.ts"), result)

packages/core/src/providers/oauth-types.ts

Lines changed: 0 additions & 69 deletions
This file was deleted.

0 commit comments

Comments
 (0)