astral-angular-annotate

AngularJS DI annotation pass for astral

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
astral-angular-annotate
650.0.210 years ago10 years agoMinified + gzip package size for astral-angular-annotate in KB

Readme

Astral Angular Annotator
A pass for Astral to generate AngularJS DI annotations automatically.
For a tool CLI, see `ngmin.

Usage

Below is an example parsing, annotating, and generating JavaScript code. Note that this requires the esprima, escodegen, astral, and astral-angular-annotator npm packages.
var esprima = require('esprima'),
  escodegen = require('escodegen'),
  astral = require('astral')();

// register angular annotator pass
require('astral-angular-annotator')(astral);

var inputCode = "angular.module('myMod').controller('FooCtrl', function ($scope) {" +
"  // ..." +
"});";

var ast = esprima.parse(inputCode, {
  tolerant: true
});

astral.run(ast);

var generatedCode = escodegen.generate(ast, {
  format: {
    indent: {
      style: '  '
    }
  }
});

console.log(generatedCode);

// logs:
//
// angular.module('myMod').controller('FooCtrl', ['$scope', function ($scope) {
//   // ...
// });

API

You can also access each of the individual passes like this:
``` ```
This might be handy for more fine-tuned control.

License

MIT