Skip to content

Commit 2aa4495

Browse files
authored
feat(codegen): move codegen in here (#130)
1 parent 59b06f5 commit 2aa4495

File tree

34 files changed

+4192
-18
lines changed

34 files changed

+4192
-18
lines changed

.github/dependabot.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,16 @@ updates:
1010
patterns:
1111
- "@rslib/*"
1212
- "rsbuild-*"
13+
- package-ecosystem: "npm"
14+
directory: '/codegen'
15+
open-pull-requests-limit: 5
16+
schedule:
17+
interval: "weekly"
18+
groups:
19+
rslib:
20+
patterns:
21+
- "@rslib/*"
22+
- "rsbuild-*"
1323
- package-ecosystem: "github-actions"
1424
directory: "/"
1525
schedule:

.github/workflows/codegen.yaml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: Codegen CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- next
8+
pull_request:
9+
branches:
10+
- main
11+
12+
defaults:
13+
run:
14+
working-directory: ./codegen
15+
16+
permissions:
17+
contents: read
18+
19+
jobs:
20+
lint:
21+
name: Lint
22+
runs-on: ubuntu-latest
23+
steps:
24+
- name: Checkout code
25+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
26+
27+
- name: Setup Node.js
28+
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
29+
with:
30+
node-version-file: ./codegen/package.json
31+
cache: npm
32+
cache-dependency-path: ./codegen/package-lock.json
33+
34+
- name: Setup Biome CLI
35+
uses: biomejs/setup-biome@454fa0d884737805f48d7dc236c1761a0ac3cc13 # v2.6.0
36+
37+
- name: Install dependencies
38+
run: npm ci
39+
40+
- name: Build packages
41+
run: npm run build
42+
43+
- name: Lint code
44+
run: biome ci --diagnostic-level=error --reporter=github

CONTRIBUTING.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,9 @@
22

33
## Development
44

5-
Assuming you have `ts-sdk-gen` in the same folder as `sumup-ts`:
6-
75
```sh
8-
npx ../ts-sdk-gen/ ./openapi.json ./src/
6+
cd codegen && npm run build && cd ..
7+
cd sdk && npm run generate && cd ..
98
```
109

1110
## Conventional Commits

codegen/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
node_modules
2+
dist

codegen/README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<div align="center">
2+
3+
# @sumup/sumup-ts-codegen
4+
5+
`@sumup/sumup-ts-codegen` is a highly opinionated OpenAPI to SDK generator for our [TypeScript](https://www.typescriptlang.org/) SDK.
6+
7+
</div>
8+
9+
## Usage
10+
11+
```sh
12+
npx @sumup/sumup-ts-codegen <schema url or file> <output dir>
13+
```
14+
15+
## Credits
16+
17+
Implementation inspired by [oxide.ts](https://github.com/oxidecomputer/oxide.ts).

codegen/biome.json

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
{
2+
"$schema": "https://biomejs.dev/schemas/2.2.6/schema.json",
3+
"vcs": {
4+
"enabled": true,
5+
"clientKind": "git",
6+
"useIgnoreFile": true
7+
},
8+
"formatter": {
9+
"enabled": true,
10+
"formatWithErrors": false,
11+
"indentStyle": "space",
12+
"includes": ["**", "!**/dist/**"]
13+
},
14+
"linter": {
15+
"enabled": true,
16+
"rules": {
17+
"recommended": true,
18+
"style": {
19+
"noNonNullAssertion": "off"
20+
}
21+
},
22+
"includes": ["**", "!**/dist/**"]
23+
},
24+
"javascript": {
25+
"formatter": {
26+
"quoteProperties": "preserve",
27+
"quoteStyle": "double"
28+
}
29+
},
30+
"assist": { "actions": { "source": { "organizeImports": "on" } } }
31+
}

0 commit comments

Comments
 (0)