Skip to content

Commit 85db10e

Browse files
andrii-balitskyiseambotrazor-x
authored
fix: Update generate script to pass openapi spec from @seamapi/types (#13)
* Update generate script to pass openapi spec from @seamapi/types * ci: Generate code * Fix test_workspaces_create * Update generate package.json script * Update scripts/generate.js Co-authored-by: Evan Sosenko <evan@getseam.com> * Use del package to delete main seam dir before generating code * ci: Generate code * Add prettierrc to enforce double quotes * ci: Format code * Fix imports * Remove prettierrc * ci: Format code * Improve generate script, update seamapi/types * Pin @seamapi/types version * ci: Generate code * Update @seamapi/types * ci: Generate code --------- Co-authored-by: Seam Bot <devops@getseam.com> Co-authored-by: Evan Sosenko <evan@getseam.com>
1 parent 578d399 commit 85db10e

28 files changed

+1949
-1472
lines changed

package-lock.json

Lines changed: 465 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
"private": true,
44
"type": "module",
55
"scripts": {
6-
"generate": "./scripts/generate.sh",
6+
"generate": "node ./scripts/generate.js",
77
"format": "prettier --write --ignore-path .gitignore .",
88
"preformat": "make format"
99
},
1010
"devDependencies": {
1111
"@seamapi/nextlove-sdk-generator": "1.8.1",
1212
"@seamapi/types": "1.157.0",
13+
"del": "^7.1.0",
1314
"prettier": "^3.2.5"
1415
}
1516
}

scripts/generate.js

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import { generatePythonSDK, writeFs } from '@seamapi/nextlove-sdk-generator'
2+
import { openapi } from '@seamapi/types/connect'
3+
import path from 'node:path'
4+
import { fileURLToPath } from 'node:url'
5+
import { deleteAsync } from 'del'
6+
7+
const SEAM_DIRECTORY_PREFIX = 'seam/'
8+
const PROJECT_ROOT_PATH = path.resolve(
9+
path.dirname(fileURLToPath(import.meta.url)),
10+
'../',
11+
)
12+
const MAIN_SEAM_DIR_PATH = path.resolve(
13+
PROJECT_ROOT_PATH,
14+
SEAM_DIRECTORY_PREFIX,
15+
)
16+
17+
const main = async () => {
18+
try {
19+
await deleteAsync(MAIN_SEAM_DIR_PATH)
20+
21+
const pythonSdkFileSystem = await generatePythonSDK({
22+
openApiSpecObject: openapi,
23+
})
24+
25+
const seamFiles = Object.entries(pythonSdkFileSystem).filter(([fileName]) =>
26+
fileName.startsWith(SEAM_DIRECTORY_PREFIX),
27+
)
28+
29+
writeFs(PROJECT_ROOT_PATH, Object.fromEntries(seamFiles))
30+
31+
console.log('Python SDK generated successfully!')
32+
} catch (error) {
33+
console.error('Failed to generate SDK:', error)
34+
}
35+
}
36+
37+
await main()

scripts/generate.sh

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

seam/access_codes.py

Lines changed: 96 additions & 96 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)