Skip to content

maximilianschmitt/ng-autobootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ng-autobootstrap

Travis Build

Automatically create bootstrap files for including your angular modules (like controllers and directives) with browserify.

Inspired by ng-classify.

Gulp plugin

Check out gulp-ng-autobootstrap!

Installation

npm install ng-autobootstrap

API

new NgAutoBootstrap([options])

Creates a new NgAutoBootstrap object with the specified options.

ngAutoBootstrap.bootstrap(filePaths)

Returns a string with the generated bootstrap file contents.

Configuring ng-autobootstrap

Options

Override default options by passing them to the NgAutoBootstrap constructor.

var ngAutoBootstrap = new NgAutoBootstrap({
	bootstrap: {
		path: 'config/bootstrap.js'
	}
});

options.bootstrap

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.

options.moduleTypes.{{moduleType}}.path

A glob for identifying the respective module type by its file path.

options.moduleTypes.{{moduleType}}.casing

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.

options.moduleTypes.{{moduleType}}.prefix

A prefix to add to each module name of the respective module type.

options.moduleTypes.{{moduleType}}.suffix

A suffix to add to each module name of the respective module type.

options.moduleTypes.{{moduleType}}.omit

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).

Default options

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'
		}
	}
};

About

Automatically create bootstrap files for requiring your angular modules with browserify.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published