all files / modules/ index.js

100% Statements 11/11
100% Branches 2/2
100% Functions 4/4
100% Lines 10/10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25      98× 106× 106×                        
/*jslint node:true, es6: true, this: true*/
(function (_, R, requireLocal) {
    "use strict";
    function extensionManager(mach) {
        const XS = new Map();
        return _.assign(mach, {
            extend(...args) {
                R.forEach(function (ex) {
                    XS[ex] = XS[ex] || R.once(ex);
                    XS[ex](mach);
                }, args);
            }
        });
    }
 
    const mach = R.mergeAll(R.map((e) => R.objOf(e, requireLocal(e)),
        ["version", "Connection", "Header", "Location", "Message"]));
    module.exports = extensionManager(mach);
    mach.extend(require("./extensions/default"));
}(
    require("lodash"),
    require("ramda"),
    require("./core/loading").locally(require)
));