From abd94a7f5a50f43c797a11b53549ae48fff667c3 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 10 Oct 2016 03:43:44 +0200 Subject: add node_modules to address #4364 --- node_modules/gaze/lib/helper.js | 67 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 node_modules/gaze/lib/helper.js (limited to 'node_modules/gaze/lib/helper.js') diff --git a/node_modules/gaze/lib/helper.js b/node_modules/gaze/lib/helper.js new file mode 100644 index 000000000..e1ccc80ed --- /dev/null +++ b/node_modules/gaze/lib/helper.js @@ -0,0 +1,67 @@ +'use strict'; + +var path = require('path'); +var helper = module.exports = {}; + +// Returns boolean whether filepath is dir terminated +helper.isDir = function isDir(dir) { + if (typeof dir !== 'string') { return false; } + return (dir.slice(-(path.sep.length)) === path.sep); +}; + +// Create a `key:[]` if doesnt exist on `obj` then push or concat the `val` +helper.objectPush = function objectPush(obj, key, val) { + if (obj[key] == null) { obj[key] = []; } + if (Array.isArray(val)) { obj[key] = obj[key].concat(val); } + else if (val) { obj[key].push(val); } + return obj[key] = helper.unique(obj[key]); +}; + +// Ensures the dir is marked with path.sep +helper.markDir = function markDir(dir) { + if (typeof dir === 'string' && + dir.slice(-(path.sep.length)) !== path.sep && + dir !== '.') { + dir += path.sep; + } + return dir; +}; + +// Changes path.sep to unix ones for testing +helper.unixifyPathSep = function unixifyPathSep(filepath) { + return (process.platform === 'win32') ? String(filepath).replace(/\\/g, '/') : filepath; +}; + +/** + * Lo-Dash 1.0.1 + * Copyright 2012-2013 The Dojo Foundation + * Based on Underscore.js 1.4.4 + * Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud Inc. + * Available under MIT license + */ +helper.unique = function unique() { var array = Array.prototype.concat.apply(Array.prototype, arguments); var result = []; for (var i = 0; i < array.length; i++) { if (result.indexOf(array[i]) === -1) { result.push(array[i]); } } return result; }; + +/** + * Copyright (c) 2010 Caolan McMahon + * Available under MIT license + */ +helper.forEachSeries = function forEachSeries(arr, iterator, callback) { + if (!arr.length) { return callback(); } + var completed = 0; + var iterate = function() { + iterator(arr[completed], function (err) { + if (err) { + callback(err); + callback = function() {}; + } else { + completed += 1; + if (completed === arr.length) { + callback(null); + } else { + iterate(); + } + } + }); + }; + iterate(); +}; -- cgit v1.2.3