Narcissistic Passion Minified

    ct-amd-to-es6

    1.0.0 • Public • Published

    AMD to ES6 converter

    Installation

    npm install -g @conterra/amd-to-es6

    Usage

    This project is intended to convert map.apps bundles to ES6 import syntax.

    Convert a bundle recursively with:

    amdtoes6 --src=bundle-dir --replace --quotes=double --glob=**/*.js

    Problems:

    This tool will produce export default statements. In some cases this will lead to problems, because it makes the converted file incompatible to bundles which still use the old 'define' code.

    This can be 'fixed' by replacing export default with module.exports =. But in the future if all bundles are converted to ES6, the use of export default is the correct way.

    Effects

    MyComponent.js

    define([
        "dojo/_base/declare",
        "./Other"
    ], function(declare, Other){
    
        return declare([],{
             startup: function(){
                this.other = new Other();
             }
        });
    });
    

    ES6

    import declare from "dojo/_base/declare";
    import Other from "./Other";
    
    export default declare([],{
             startup: function(){
                this.other = new Other();
             }
        });
    

    module.js

    AMD

    define([
        "./MyComponent",
        "./OtherComponent"
    ], {});
    

    ES6

    import "./MyComponent";
    import "./OtherComponent";
    ;
    

    Options

     
      Usage: amdtoes6 [options]
     
      Options:
     
        -s, --src <dirname>     Directory of the source files
        -d, --dest <dirname>    Directory of the destination files
        -g, --glob [glob]       Glob pattern for the src to match for input files
        -r, --recursive         Set glob pattern to **/*.js with no hassle
        -b, --beautify          Beautify the output
        --replace           Replace the input files with results
        --suffix <string>   Replace suffix of the files
        --side              Import side effects with camel cased named
        --assigned          Automatically assign custom name to side effects
        --quotes            Single, double or auto quotes in the output

    Forked and extended for map.apps requirements from:

    https://github.com/buxlabs/amd-to-es6

    Install

    npm i ct-amd-to-es6

    DownloadsWeekly Downloads

    0

    Version

    1.0.0

    License

    MIT

    Last publish

    Collaborators

    • a.frank
    • jessebluemr
    • schneiderlars
    • julkuh
    • m-scherpi
    • mbeckem_conterra
    • conterrade