JSPM

babel-plugin-flow-comments

1.0.5
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 57
  • Score
    100M100P100Q65938F
  • License MIT

Turn flow type annotations into comments

Package Exports

  • babel-plugin-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-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-flow-comments

Turn flow type annotations into comments.

When using this plugin, you might want to also blacklist the flow transformer to preserve the /* @flow */ directive.

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-flow-comments

Usage

.babelrc

{
  "plugins": ["flow-comments"],
  "blacklist": ["flow"]
}

Via CLI

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

Via Node API

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