JSPM

  • Created
  • Published
  • Downloads 2230
  • Score
    100M100P100Q122146F
  • License MIT

Turn flow type annotations into comments

Package Exports

  • babel-plugin-transform-flow-comments

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (babel-plugin-transform-flow-comments) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

babel-plugin-transform-flow-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

Example

In

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

"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';*/

Installation

$ npm install babel-plugin-transform-flow-comments

Usage

.babelrc

{
  "plugins": ["transform-flow-comments"]
}

Via CLI

$ babel --plugins transform-flow-comments script.js

Via Node API

require("babel-core").transform("code", {
  plugins: ["transform-flow-comments"]
});