Skip to content

트랜스포머

대상 런타임이 지원하지 않는 구문을 지원되는 형태로 바꾸는 고성능 트랜스포머입니다.

기능

일반 옵션

transform 함수는 파일 이름, 소스 코드, 옵션 객체를 받습니다:

js
import { transform } from "oxc-transform";

const result = await transform("lib.ts", sourceCode, {
  // 소스 언어 강제. 기본은 파일 이름에서 추론.
  lang: "tsx", // "js" | "jsx" | "ts" | "tsx" | "dts"

  // 스크립트, 모듈, CommonJS로 취급. 기본은 추론.
  sourceType: "module", // "script" | "module" | "commonjs" | "unambiguous"

  // 현재 작업 디렉터리. 상대 경로 해석에 사용.
  cwd: "/path/to/project",

  // 소스 맵 생성.
  sourcemap: true,

  // 런타임 헬퍼 전략.
  helpers: {
    mode: "Runtime", // "Runtime" (@oxc-project/runtime에서 import) 또는 "External" (전역 babelHelpers)
  },

  // 추가 옵션은 하위 페이지 참고:
  // typescript, jsx, target, assumptions, define, inject, decorator, plugins
});

transform은 비동기입니다. 같은 시그니처의 동기 transformSync도 있습니다.

설치

Node.js

Rust

transformer 기능이 포함된 통합 크레이트 oxc를 사용합니다.

Rust 사용 예는 여기에 있습니다.

연동