Automatically create bootstrap files for including your angular modules (like controllers and directives) with browserify.
Inspired by ng-classify.
Check out gulp-ng-autobootstrap!
npm install ng-autobootstrap
Creates a new NgAutoBootstrap
object with the specified options.
Returns a string with the generated bootstrap file contents.
Override default options by passing them to the NgAutoBootstrap
constructor.
var ngAutoBootstrap = new NgAutoBootstrap({
bootstrap: {
path: 'config/bootstrap.js'
}
});
This is where you configure the path to your bootstrap file. ng-autobootstrap needs to know this paths so that it can generate relative paths to the angular modules that are being pulled in.
A glob for identifying the respective module type by its file path.
How the file name should be transformed to its module name. Supports everything that change-case supports.
E.g. if a controller file is called my-awesome-controller.js
, it will be registered as MyAwesomeController
with pascalCase
or myAwesomeController
with camelCase
in your angular app.
A prefix to add to each module name of the respective module type.
A suffix to add to each module name of the respective module type.
A string to omit from the filename before casing it.
E.g. if a service file is called user-service.js
and you set options.moduleTypes.service.omit = '-service'
, then the resulting module will be registered with angular via app.service('User', ...);
(assuming PascalCasing).
Prefixes, suffixes and omits are not set by default.
var defaultOptions = {
bootstrap: {
path: 'bootstrap.js'
},
moduleTypes: {
animation: {
path: '**/animations/*.js',
casing: 'paramCase'
},
constant: {
path: '**/constants/*.js',
casing: 'constant'
},
controller: {
path: '**/controllers/*.js',
casing: 'pascalCase'
},
directive: {
path: '**/directives/*.js',
casing: 'camelCase'
},
factory: {
path: '**/factories/*.js',
casing: 'pascalCase'
},
filter: {
path: '**/filters/*.js',
casing: 'camelCase'
},
provider: {
path: '**/providers/*.js',
casing: 'camelCase'
},
service: {
path: '**/services/*.js',
casing: 'camelCase'
},
value: {
path: '**/values/*.js',
casing: 'camelCase'
},
// config modules are pulled in like this: app.config(require('./path/to-config'))
config: {
path: '**/*-config.js'
}
}
};