TODO: 英語化
s2s.config.js
をプロジェクトのルートに配置します。基本的に必要となる項目は、watch
とplugins
とtemplates
の 3 つです。
module.exports = {
watch: './**/*.js', // default
plugins: [],
templates: [],
}
対象となるファイルを Glob パターンで指定します。デフォルトは./**/*.js
でjs
を対象に取ります。
オブジェクトの配列を指定します。必須項目は、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,
|}
テンプレートからファイルをコピーします。必要項目は、test
とinput
です。
test
は、plugins と同様にファイルパスを正規表現で指定します。
input はtemplates
ディレクトリにあるファイルを指定します。
type Template = {|
test: RegExp | string | string[],
input: Path,
output?: Path,
|}
{ [extensions: string]: Handler }
This field optional.
Run handler corresponding to extension.
If unspecified, run .js
.jsx
.ts
.tsx
by default.
handlerMapper: {
'*.ts': typescriptHandler
}
This field optional. Configure array of hooks. When run handler, execute hooks.
export type AfterHook = (code: Code, path: Path) => Code
This field optional.
default value is true
.
If configure true
, enable prettierHook hook.