Turn flow type annotations into comments
Turn flow type annotations into comments.
You should be able to use this plugin instead of babel-plugin-flow-strip-types to preserve the / @flow / directive and still use flow.
http://flowtype.org/blog/2015/02/20/Flow-Comments.html
In
``javascript`
function foo(bar?) {}
function foo2(bar?: string) {}
function foo(x: number): string {}
type B = {
name: string;
};
export type GraphQLFormattedError = number;
import type A, { B, C } from './types';
import typeof D, { E, F } from './types';
Out
`javascript
"use strict";
function foo(bar /:: ?/) {}
function foo2(bar /:: ?: string/) {}
function foo(x /: number/) /: string/ {}
/*:: type B = {
name: string;
};*/
/:: export type GraphQLFormattedError = number;/
/:: import type A, { B, C } from './types';/
/:: import typeof D, { E, F } from './types';/
`
`sh`
$ npm install babel-plugin-transform-flow-comments
.babelrc
`json`
{
"plugins": ["transform-flow-comments"]
}
`sh`
$ babel --plugins transform-flow-comments script.js
`javascript``
require("babel-core").transform("code", {
plugins: ["transform-flow-comments"]
});