Skip to content

Latest commit

 

History

History
80 lines (59 loc) · 2.05 KB

config.md

File metadata and controls

80 lines (59 loc) · 2.05 KB

TODO: 英語化

Config の設定

s2s.config.jsをプロジェクトのルートに配置します。基本的に必要となる項目は、watchpluginstemplatesの 3 つです。

module.exports = {
  watch: './**/*.js', // default
  plugins: [],
  templates: [],
}

watch

対象となるファイルを Glob パターンで指定します。デフォルトは./**/*.jsjsを対象に取ります。

plugins

オブジェクトの配列を指定します。必須項目は、testです。 testは、対象とするファイルを正規表現で指定します。 pluginはそれぞれのハンドラーで指定されたオプションを指定します。デフォルトでは、babel の plugin を指定します。なので、.babelrcの指定方法と同様にプラグイン名、オプションが必要な場合は、配列で渡すことが可能です。

type EventType = 'add' | 'change' | 'unlink'
type Only = EventType[]

type Plugin = {|
  test: RegExp | string | string[],
  plugin?: *,
  only?: Only,
  input?: FileName,
  output?: FileName,
|}

templates

テンプレートからファイルをコピーします。必要項目は、testinputです。 testは、plugins と同様にファイルパスを正規表現で指定します。 input はtemplatesディレクトリにあるファイルを指定します。

type Template = {|
  test: RegExp | string | string[],
  input: Path,
  output?: Path,
|}

handlerMapper

{ [extensions: string]: Handler }

This field optional. Run handler corresponding to extension. If unspecified, run .js .jsx .ts .tsx by default.

  handlerMapper: {
    '*.ts': typescriptHandler
  }

afterHook

This field optional. Configure array of hooks. When run handler, execute hooks.

export type AfterHook = (code: Code, path: Path) => Code

prettier

This field optional. default value is true . If configure true, enable prettierHook hook.