flowtees 0.1.9
This tool provides support in the conversion process of converting AtlasKit Flow components to TypeScript. It takes the trivial work out of the conversion.
Requires Python: >=3.5

# FlowTees

## Purpose

This tool provides support in the conversion process of converting AtlasKit Flow components to TypeScript. It takes the trivial work out of the conversion. These are just floaties to help you but won't totally convert your component.

## Features

-   Renames files to `tsx/ts`
-   Ignores `node_modules`
-   Removing flow decorators (`@flow`, `$StringLitteral`, `$FlowFixMe`)
-   Remove `type` keyword from exports and imports
-   Renames `type` keyword to `interface` keyword when applicable and can handle `extends`
-   Configures `package.json` and creates `tsconfig.json` files

## Usage

[![asciicast](https://asciinema.org/a/246271.svg)](https://asciinema.org/a/246271)

FlowTees is a command line application, called `flowtees`, the application is used before beginning the conversion process. It assumes that no work has been started on the component yet.

To begin, run the following command:

```
$ flowtees [directory/to/component]
```

**e.g.** say you are converting the `select` component, then the command would look like this:

```
$ flowtees ~/src/atlaskit-mk-2/packages/core/select
```

The program will begin analyzing the `js` files in the directory and do a dry run to find only compatible files to convert. The compatible files will be listed in _green_ while incompatible files will be shown in _red_.

After processing the files, you will get a prompt asking whether you want to also include the build config files for TS. This helps to create the appropriate `tsconfig.json` files in the component directory and also modify the the `package.json` file so it points to the correct `index.ts` file.

## Installation

If you only have Python3 installed on your computer then the following command will install the program:

```
$ pip install flowtees
```

If you have both Python2 and Python3 installed then the following command will be more suitable:

```
$ pip3 install flowtees
```

## Releases
## 0.1.9 (12 Aug 2019)
-   Updated `tsconfig.json` build config

## 0.1.8 (31 July 2019)
-   Added the ability to check version number of FlowTees using `--version`

## 0.1.5 (30 July 2019)
-   Updated build file to extend on renamed `tsconfig.json`

## 0.1.4 (24 May 2019)

-   UPDATE! No auto conversion of `import React from 'react'` will be made by default to reflect on choice to standardize on non-namespace import, however existing `--react-namespace` will remain in place

## 0.1.3 (23 May 2019)

-   Fixed bug with folders with a single file not listed in files to process
-   NEW! Auto conversion of `import React from 'react';` to `import * as React from 'react';` to avoid future issues. (Thi can be turned off with --react-namespace option)
-   NEW! Individual file conversions can be done by pointing to a `js` file

## 0.1.2 (20 May 2019)

-   Updated build `tsconfig.json`
-   Support for emotion jsx keywords

## 0.1 (Initial release) (15 May 2019)

-   Renames files to `tsx/ts`
-   Ignores `node_modules`
-   Removing flow decorators (`@flow`, `$StringLitteral`, `$FlowFixMe`)
-   Remove `type` keyword from exports and imports
-   Renames `type` keyword to `interface` keyword when applicable and can handle `extends`
-   Configures `package.json` and creates `tsconfig.json` files