Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

This tool provides support in the conversion process of converting AtlasKit Flow components to TypeScript. It takes the trivial work out of the conversion.

Project description

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

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for flowtees, version 0.1.9
Filename, size File type Python version Upload date Hashes
Filename, size flowtees-0.1.9-py3-none-any.whl (11.3 kB) File type Wheel Python version py3 Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page