node package manager

Introducing npm Enterprise add-ons. Integrate third-party dev tools into npm…

man

JS utilities/helpers

man – JS utilities and helpers

var _ = require('man');
 
_.type(null); // => null 
 
var _ = require('man');
 
// Convert to array 
_.arr(arguments);
 
// Filter values with certain type 
_.filterType(list, 'string');
_.filterTypes(list, ['number', 'undefined']);
 
// Remove values with certain type 
_.removeType(list, 'string');
_.removeTypes(list, ['number', 'undefined']);
 
// Create object with all properties set to true 
_.flagger(['prop1', 'prop2']); // => { prop1: true, prop2: true } 
 
// Improved iteration 
_.for(list)
    .check(function (value, i) {
        if (_.type(value) === 'string') {
            return false;
        }
        return true;
    })
    .catch(function (err) {
        console.log(err.stack);
    })
    .each(function (value, i) {
        // ... 
    })
    .done(function () {
        
    });
 
// Map collection to object 
_.mapToObject(list, function (value, i) {
    return {
        name: 'item' + i,
        value: value
    };
});
 
var _ = require('man');
 
var obj = {};
 
_.initEvents(obj);
 
obj.on('test', function (a, b) {
    // ... 
});
 
obj.emit('test', 1, 2);
var _ = require('man');
 
// Random number 
_.rand(min, max);
 
// Generates random unique key 
_.randomKey([prefix]);
 
// Generates counter-based unique id 
_.id([prefix]);
 
// Rounds number to top or bottom margin 
_.roundMin(85, 20); // => 80 
_.roundMax(85, 20); // => 100 
var _ = require('man');
 
// Create new object with properties of received objects 
_.collect(obj1, obj2, obj3);
 
// Extends `target` object with properties of `source`, replacing only undefined values 
_.extendUndefined(target, source);
 
// Set `name` property of `obj` object recursively 
var obj = {};
_.set(obj, 'prop1.prop2.prop3', true);
obj // => { prop1: { prop2: { prop3: true } } } 
 
// Returns `name` property of `obj` object recursively 
var obj = {
    prop1: {
        prop2: {
            prop3: true
        }
    }
};
_.get(obj, 'prop1.prop2.prop3'); // => true  
 
// Flattens object to flat structure 
var obj = {
    prop1: {
        prop2: {
            prop3: true
        }
    }
};
_.flat(obj);
obj // => { 'prop1.prop2.prop3': true } 
 
// Defines object's properties (same as Object.defineProperty and Object.defineProperties) 
_.define(obj, name, prop);
_.define(obj, props);
 
var _ = require('man');
 
// Removes HTML-tags from string 
_.removeTags(str);
 
// Trim string by specified symbol 
_.trim(str, symbol);
_.trimLeft(str, symbol);
_.trimRight(str, symbol);
 
/*
Search `sub` in `str` and returns array with objects {
    content: String,
    groups: Array,
    length: Number,
    start: Number,
    finish: Number
}
*/
_.search(str, sub, ignoreCase);
 
// Replace all found `sub` in `str` with `source` 
_.replace(str, sub, source, ignoreCase)
 
// Same as `search` but returns `false` if nothing found 
_.find(str, sub, ignoreCase);
 
// Capitalizes string 
_.capitalize(str);
 
// Decode ASCII string 
_.decodeChars(buffer);
 
// Decode Unicode string 
_.decodeUnicode(buffer);
 
var _ = require('man');
 
_.cmlParse(source); // => object 
_.cml(data); // => document 
var _ = require('man');
 
_.buildClient('index.js', {
    // Output filename 
    output: 'app.min.js',
    // Babel-transform ECMAScript6-features 
    transform: true,
    // Minify source 
    min: true
}).then(function (source) {
    // ... 
});
var _ = require('man');
 
// Create new random temp directory name 
_.tmpDir()
 
// Create new random temp filename  
_.tmpFile(prefix)
 
// Read dir 
_.rdir(dirname, {
    recursive: false,
    fullPath: false,
    onlyFiles: false,
    onlyDirs: false,
    ext: ['.js', '.md'],
    ignoreExt: ['.txt']
});
_.rdirAll(dirname);
 
// Read & write files 
_.read(filename, isBin)
_.readb(filename)
_.write(filename, content)
_.copy(from, to)
_.copyStream(from, to).then
_.remove(filename)
 
// Test filenames 
_.exists(filename)
_.isFile(filename)
_.isDir(filename)
_.firstExists(filenames, dirname, onlyFiles)
_.firstExistsFile(filenames, dirname)
var _ = require('man');
 
_.cmlDump(dir, outputJSONFilename);
_.cmlDir(dir); // => document 
_.cmlFile(filename); // => document 
_.cmlLoadUrl(url).then(function (data) {
    // ... 
});
_.get(url)
    .then(function (content) {
        // ... 
    });
    
_.getJSON(url)
    .then(function (data) {
        // ... 
    });