バックエンドが生成するapi.jsonからmisskey-jsの型を作成する (#12434)
* ひとまず生成できるところまで * ファイル構成整理 * 生成コマンド整理 * misskey-jsへの組み込み * fix generator.ts * wip * fix generator.ts * fix package.json * 生成ロジックの調整 * 型レベルでのswitch-case機構をmisskey-jsからfrontendに持ち込めるようにした * 型チェック用のtsconfig.jsonを作成 * 他のエンドポイントを呼ぶ関数にも適用 * 未使用エンティティなどを削除 * misskey-js側で手動定義されていた型を自動生成された型に移行(ただしapi.jsonがvalidでなくなってしまったので後で修正する) * messagingは廃止されている(テストのビルドエラー解消) * validなapi.jsonを出力できるように修正 * 修正漏れ対応 * Ajvに怒られて起動できなかったところを修正 * fix ci(途中) * パラメータenumをやめる * add command * add api.json * 都度自動生成をやめる * 一気通貫スクリプト修正 * fix ci * 生成ロジック修正 * フロントの型チェックは結局やらなかったので戻しておく * fix pnpm-lock.yaml * add README.md --------- Co-authored-by: osamu <46447427+sam-osamu@users.noreply.github.com> Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
This commit is contained in:
parent
92029ac325
commit
336416261a
42 changed files with 27053 additions and 3964 deletions
19
packages/misskey-js/generator/README.md
Normal file
19
packages/misskey-js/generator/README.md
Normal file
|
@ -0,0 +1,19 @@
|
|||
## misskey-js向け型生成モジュール
|
||||
|
||||
バックエンドが吐き出すOpenAPI準拠のapi.jsonからmisskey-jsで使用される型エイリアスを生成するためのモジュールです。
|
||||
このモジュールはmisskey-jsそのものにバンドルされることは想定しておらず、生成物をmisskey-jsのsrc配下にコピーして使用することを想定しています。
|
||||
|
||||
## 使い方
|
||||
|
||||
まず、Misskeyのバックエンドからapi.jsonを取得する必要があります。任意のMisskeyインスタンスの/api-docからダウンロードしても良いですし、
|
||||
backendモジュール配下で`pnpm generate-api-json`を実行しても良いでしょう。
|
||||
|
||||
api.jsonを入手したら、このファイルがあるディレクトリに置いてください。
|
||||
|
||||
その後、以下コマンドを実行します。
|
||||
|
||||
```shell
|
||||
pnpm generate
|
||||
```
|
||||
|
||||
上記を実行することで、`./built`ディレクトリ配下にtsファイルが生成されます。
|
Loading…
Add table
Add a link
Reference in a new issue