1.0.2 • Published 4 years ago
@bunchtogether/vite-plugin-flow v1.0.2
vite-plugin-flow
Support Flow static type checking in Vite
Install
npm install @bunchtogether/vite-plugin-flow --save-devor
yarn add @bunchtogether/vite-plugin-flow --devUsage
import { flowPlugin, esbuildFlowPlugin } from '@bunchtogether/vite-plugin-flow';
export default {
optimizeDeps: {
esbuildOptions: {
plugins: [esbuildFlowPlugin()]
}
},
plugins: [
flowPlugin()
]
}API
Table of Contents
flowPlugin
Create a Vite plugin object
Parameters
optionsObject? Filter options (optional, default{include:/\.(flow|jsx?)$/,exclude:/node_modules/,flow:{all:false,pretty:false,ignoreUninitializedFields:false}})options.include(string | Regexp | Array<(string | Regexp)>) Strings and/or regular expressions matching file paths to include (optional, default/\.(flow|jsx?)$/)options.exclude(string | Regexp | Array<(string | Regexp)>) Strings and/or regular expressions matching file paths to exclude (optional, default/node_modules/)
Returns VitePlugin Returns esbuild plugin object
esbuildFlowPlugin
Create an esbuild plugin object
Parameters
filterRegExp Regular expression matching the path a files to be processed (optional, default/\.(flow|jsx?)$/)loaderFunctionFunction Function that accepts the file path and returns the esbuild loader type (optional, default(path)=>(/\.jsx$/.test(path)?'jsx':'js'))flowOptionsObject Options to pass to flow-remove-types (optional, default{all:false,pretty:false,ignoreUninitializedFields:false})flowOptions.allboolean If true, bypasses looking for an @flow pragma comment before parsing. (optional, defaultfalse)flowOptions.prettyboolean If true, removes types completely rather than replacing with spaces. (optional, defaultfalse)flowOptions.ignoreUninitializedFieldsboolean If true, removes uninitialized class fields (foo;,foo: string;) completely rather than only removing the type. THIS IS NOT SPEC COMPLIANT! Instead, usedeclare foo: string;for type-only fields. (optional, defaultfalse)
Returns EsbuildPlugin Returns esbuild plugin object