トランスフォーマー

Transformers

規約をサポートするためにソースコードを変換する統一インターフェースを提供します。

my-transformer.ts
import { SourceCodeTransformer } from 'unocss'
import { createFilter } from 'unplugin-utils'

export default function myTransformers(options: MyOptions = {}): SourceCodeTransformer {
  return {
    name: 'my-transformer',
    enforce: 'pre', // 他のトランスフォーマーの前に適用
    idFilter(id) {
      // .tsx と .jsx ファイルのみを変換
      return id.match(/\.[tj]sx$/)
    },
    async transform(code, id, { uno }) {
      // code は MagicString インスタンス
      code.appendRight(0, '/* my transformer */')
    },
  }
}

より多くの例については公式トランスフォーマーを確認できます。