Skip to content

설정

swagger-to-tanstack-query.config.json의 모든 필드를 설명합니다.

설정 파일 swagger-to-tanstack-query.config.json은 명령어를 실행하는 디렉터리 (프로젝트 루트)에서 읽어 옵니다.

전체 예시

{
// Swagger/OpenAPI document URL (a local file path also works).
"url": "https://api.example.com/v3/api-docs",
// Output directory, relative to cwd. Wiped & regenerated on every run.
"output": "./src/api",
// Your axios instance.
"client": {
"path": "@/lib/axios", // import path written verbatim into generated files
"name": "axiosInstance" // named export; omit (or "default") for a default import
},
// Optional: common success-envelope handling.
// `envelope` reuses one generic CommonResponse<T> instead of per-endpoint interfaces.
"response": {
"dataField": "data",
"envelope": { "path": "@/lib/axios", "name": "CommonResponse" }
},
// Optional: common error type, applied as AxiosError<T> to hooks.
"error": { "path": "@/lib/axios", "name": "ApiError" },
// Optional: run Prettier on output. Default true.
"format": true
}

필드

필드타입필수기본값설명
urlstringSwagger/OpenAPI 문서 URL 또는 로컬 경로. Swagger 2.0 & OpenAPI 3.x 지원.
outputstring출력 디렉터리(cwd 기준 상대 경로). 매 실행마다 비우고 재생성합니다.
client.pathstringaxios 인스턴스 모듈의 import 경로.
client.namestring"default"import할 named export. default export인 경우 생략하세요.
response.dataFieldstring(off)이 엔벨롭 필드를 payload로 꺼냅니다. Response Envelope 참고.
response.envelopeobject(off)제네릭 엔벨롭 타입의 { path, name }Envelope<Inner>. dataField가 필요합니다.
error.pathstring에러 본문 타입의 import 경로. Error Type 참고.
error.namestring"default"에러 타입의 named export. default export인 경우 생략하세요.
formatbooleantrue생성된 파일을 Prettier로 포맷합니다.

client.name 동작 방식

name은 생성된 apis.ts에 named import가 작성될지 default import가 작성될지를 결정합니다.

설정apis.ts에 생성되는 import
{ "path": "@/lib/axios", "name": "axiosInstance" }import { axiosInstance as client } from "@/lib/axios";
{ "path": "@/lib/axios" } (no name)import client from "@/lib/axios";

관련 문서

  • Response Envelope — 성공 엔벨롭을 벗겨냅니다.
  • Error Type — 모든 훅의 errorAxiosError<T>로 타입 지정합니다.