34 lines
708 B
JavaScript
34 lines
708 B
JavaScript
'use strict'
|
|
|
|
var setupDefaults = require('./setupDefaults')
|
|
|
|
var arrayEach = require('./array/arrayEach')
|
|
var each = require('./base/each')
|
|
var isFunction = require('./base/isFunction')
|
|
|
|
var assign = require('./object/assign')
|
|
|
|
function mixin () {
|
|
arrayEach(arguments, function (methods) {
|
|
each(methods, function (fn, name) {
|
|
XEUtils[name] = isFunction(fn) ? function () {
|
|
var result = fn.apply(XEUtils.$context, arguments)
|
|
XEUtils.$context = null
|
|
return result
|
|
} : fn
|
|
})
|
|
})
|
|
}
|
|
|
|
function setup (options) {
|
|
return assign(setupDefaults, options)
|
|
}
|
|
|
|
function XEUtils () {}
|
|
|
|
XEUtils.v = 'v2'
|
|
XEUtils.mixin = mixin
|
|
XEUtils.setup = setup
|
|
|
|
module.exports = XEUtils
|