UNPKG

ember-cli-ajh

Version:

Command line tool for developing ambitious ember.js apps

36 lines (30 loc) 1.19 kB
'use strict'; var normalizeOpts = require('es5-ext/object/normalize-options') , resolveLength = require('./lib/resolve-length') , plain = require('./plain'); module.exports = function (fn/*, options*/) { var options = normalizeOpts(arguments[1]), length; if (!options.normalizer) { length = options.length = resolveLength(options.length, fn.length, options.async); if (length !== 0) { if (options.primitive) { if (length === false) { options.normalizer = require('./normalizers/primitive'); } else if (length > 1) { options.normalizer = require('./normalizers/get-primitive-fixed')(length); } } else { if (length === false) options.normalizer = require('./normalizers/get')(); else if (length === 1) options.normalizer = require('./normalizers/get-1')(); else options.normalizer = require('./normalizers/get-fixed')(length); } } } // Assure extensions if (options.async) require('./ext/async'); if (options.dispose) require('./ext/dispose'); if (options.maxAge) require('./ext/max-age'); if (options.max) require('./ext/max'); if (options.refCounter) require('./ext/ref-counter'); return plain(fn, options); };