diff --git a/.markdown-doctest-setup.js b/.markdown-doctest-setup.js
index fc16ea65e..cdb0bbb5c 100644
--- a/.markdown-doctest-setup.js
+++ b/.markdown-doctest-setup.js
@@ -2,8 +2,8 @@
delete global['__core-js_shared__'];
-var _ = require('./lodash.js'),
- globals = require('lodash-doc-globals');
+const _ = require('./lodash.js');
+const globals = require('lodash-doc-globals');
module.exports = {
'babel': false,
diff --git a/lib/common/file.js b/lib/common/file.js
index 879e96c66..8c57ab882 100644
--- a/lib/common/file.js
+++ b/lib/common/file.js
@@ -1,11 +1,11 @@
'use strict';
-var _ = require('lodash'),
- fs = require('fs-extra'),
- glob = require('glob'),
- path = require('path');
+const _ = require('lodash');
+const fs = require('fs-extra');
+const glob = require('glob');
+const path = require('path');
-var minify = require('../common/minify.js');
+const minify = require('../common/minify.js');
/*----------------------------------------------------------------------------*/
@@ -30,8 +30,8 @@ function copy(srcPath, destPath) {
* @returns {Object} Returns the object of compiled templates.
*/
function globTemplate(pattern) {
- return _.transform(glob.sync(pattern), function(result, filePath) {
- var key = path.basename(filePath, path.extname(filePath));
+ return _.transform(glob.sync(pattern), (result, filePath) => {
+ const key = path.basename(filePath, path.extname(filePath));
result[key] = _.template(fs.readFileSync(filePath, 'utf8'));
}, {});
}
@@ -64,8 +64,8 @@ function write(destPath, data) {
/*----------------------------------------------------------------------------*/
module.exports = {
- 'copy': copy,
- 'globTemplate': globTemplate,
- 'min': min,
- 'write': write
+ copy,
+ globTemplate,
+ min,
+ write
};
diff --git a/lib/common/mapping.js b/lib/common/mapping.js
index 332f5afd4..f52b86072 100644
--- a/lib/common/mapping.js
+++ b/lib/common/mapping.js
@@ -1,8 +1,8 @@
'use strict';
-var _mapping = require('../../fp/_mapping'),
- util = require('./util'),
- Hash = util.Hash;
+const _mapping = require('../../fp/_mapping');
+const util = require('./util');
+const Hash = util.Hash;
/*----------------------------------------------------------------------------*/
diff --git a/lib/common/minify.js b/lib/common/minify.js
index 5e536c2b5..c47c98600 100644
--- a/lib/common/minify.js
+++ b/lib/common/minify.js
@@ -1,10 +1,10 @@
'use strict';
-var _ = require('lodash'),
- fs = require('fs-extra'),
- uglify = require('uglify-js');
+const _ = require('lodash');
+const fs = require('fs-extra');
+const uglify = require('uglify-js');
-var uglifyOptions = require('./uglify.options');
+const uglifyOptions = require('./uglify.options');
/*----------------------------------------------------------------------------*/
@@ -32,7 +32,7 @@ function minify(srcPath, destPath, callback, options) {
if (!destPath) {
destPath = srcPath.replace(/(?=\.js$)/, '.min');
}
- var output = uglify.minify(srcPath, _.defaults(options || {}, uglifyOptions));
+ const output = uglify.minify(srcPath, _.defaults(options || {}, uglifyOptions));
fs.writeFile(destPath, output.code, 'utf-8', callback);
}
diff --git a/lib/common/util.js b/lib/common/util.js
index b7850ff4c..0ae2bf77d 100644
--- a/lib/common/util.js
+++ b/lib/common/util.js
@@ -1,6 +1,6 @@
'use strict';
-var _ = require('lodash');
+const _ = require('lodash');
/*----------------------------------------------------------------------------*/
@@ -13,7 +13,7 @@ var _ = require('lodash');
* @returns {Object} Returns the new hash object.
*/
function Hash(properties) {
- return _.transform(properties, function(result, value, key) {
+ return _.transform(properties, (result, value, key) => {
result[key] = (_.isPlainObject(value) && !(value instanceof Hash))
? new Hash(value)
: value;
@@ -35,6 +35,6 @@ function pitch(error) {
}
module.exports = {
- 'Hash': Hash,
- 'pitch': pitch
+ Hash,
+ pitch
};
diff --git a/lib/fp/build-dist.js b/lib/fp/build-dist.js
index e4764c6d7..9615f06c0 100644
--- a/lib/fp/build-dist.js
+++ b/lib/fp/build-dist.js
@@ -1,19 +1,19 @@
'use strict';
-var _ = require('lodash'),
- async = require('async'),
- path = require('path'),
- webpack = require('webpack');
+const _ = require('lodash');
+const async = require('async');
+const path = require('path');
+const webpack = require('webpack');
-var file = require('../common/file'),
- util = require('../common/util');
+const file = require('../common/file');
+const util = require('../common/util');
-var basePath = path.join(__dirname, '..', '..'),
- distPath = path.join(basePath, 'dist'),
- fpPath = path.join(basePath, 'fp'),
- filename = 'lodash.fp.js';
+const basePath = path.join(__dirname, '..', '..');
+const distPath = path.join(basePath, 'dist');
+const fpPath = path.join(basePath, 'fp');
+const filename = 'lodash.fp.js';
-var fpConfig = {
+const fpConfig = {
'entry': path.join(fpPath, '_convertBrowser.js'),
'output': {
'path': distPath,
@@ -27,7 +27,7 @@ var fpConfig = {
]
};
-var mappingConfig = {
+const mappingConfig = {
'entry': path.join(fpPath, '_mapping.js'),
'output': {
'path': distPath,
diff --git a/lib/fp/build-doc.js b/lib/fp/build-doc.js
index 6edd802a2..613444957 100644
--- a/lib/fp/build-doc.js
+++ b/lib/fp/build-doc.js
@@ -1,22 +1,22 @@
'use strict';
-var _ = require('lodash'),
- fs = require('fs-extra'),
- path = require('path');
+const _ = require('lodash');
+const fs = require('fs-extra');
+const path = require('path');
-var file = require('../common/file'),
- mapping = require('../common/mapping'),
- util = require('../common/util');
+const file = require('../common/file');
+const mapping = require('../common/mapping');
+const util = require('../common/util');
-var templatePath = path.join(__dirname, 'template/doc'),
- template = file.globTemplate(path.join(templatePath, '*.jst'));
+const templatePath = path.join(__dirname, 'template/doc');
+const template = file.globTemplate(path.join(templatePath, '*.jst'));
-var argNames = ['a', 'b', 'c', 'd'];
+const argNames = ['a', 'b', 'c', 'd'];
-var templateData = {
- 'mapping': mapping,
- 'toArgOrder': toArgOrder,
- 'toFuncList': toFuncList
+const templateData = {
+ mapping,
+ toArgOrder,
+ toFuncList
};
/**
@@ -28,8 +28,8 @@ var templateData = {
* @returns {string} Returns the named argument string.
*/
function toArgOrder(indexes) {
- var reordered = [];
- _.each(indexes, function(newIndex, index) {
+ const reordered = [];
+ _.each(indexes, (newIndex, index) => {
reordered[newIndex] = argNames[index];
});
return '`(' + reordered.join(', ') + ')`';
@@ -43,18 +43,15 @@ function toArgOrder(indexes) {
* @returns {string} Returns the function list string.
*/
function toFuncList(funcNames) {
- var chunks = _.chunk(funcNames.slice().sort(), 5),
- lastChunk = _.last(chunks),
- last = lastChunk ? lastChunk.pop() : undefined;
+ let chunks = _.chunk(funcNames.slice().sort(), 5);
+ let lastChunk = _.last(chunks);
+ const lastName = lastChunk ? lastChunk.pop() : undefined;
chunks = _.reject(chunks, _.isEmpty);
lastChunk = _.last(chunks);
- var result = '`' + _.map(chunks, function(chunk) {
- return chunk.join('`, `') + '`';
- }).join(',\n`');
-
- if (last == null) {
+ let result = '`' + _.map(chunks, chunk => chunk.join('`, `') + '`').join(',\n`');
+ if (lastName == null) {
return result;
}
if (_.size(chunks) > 1 || _.size(lastChunk) > 1) {
@@ -62,7 +59,7 @@ function toFuncList(funcNames) {
}
result += ' &';
result += _.size(lastChunk) < 5 ? ' ' : '\n';
- return result + '`' + last + '`';
+ return result + '`' + lastName + '`';
}
/*----------------------------------------------------------------------------*/
diff --git a/lib/fp/build-modules.js b/lib/fp/build-modules.js
index 9578499e7..c7acc7e63 100644
--- a/lib/fp/build-modules.js
+++ b/lib/fp/build-modules.js
@@ -1,25 +1,25 @@
'use strict';
-var _ = require('lodash'),
- async = require('async'),
- glob = require('glob'),
- path = require('path');
+const _ = require('lodash');
+const async = require('async');
+const glob = require('glob');
+const path = require('path');
-var file = require('../common/file'),
- mapping = require('../common/mapping'),
- util = require('../common/util');
+const file = require('../common/file');
+const mapping = require('../common/mapping');
+const util = require('../common/util');
-var templatePath = path.join(__dirname, 'template/modules'),
- template = file.globTemplate(path.join(templatePath, '*.jst'));
+const templatePath = path.join(__dirname, 'template/modules');
+const template = file.globTemplate(path.join(templatePath, '*.jst'));
-var aryMethods = _.union(
+const aryMethods = _.union(
mapping.aryMethod[1],
mapping.aryMethod[2],
mapping.aryMethod[3],
mapping.aryMethod[4]
);
-var categories = [
+const categories = [
'array',
'collection',
'date',
@@ -33,7 +33,7 @@ var categories = [
'util'
];
-var ignored = [
+const ignored = [
'_*.js',
'core.js',
'core.min.js',
@@ -85,7 +85,7 @@ function isThru(name) {
* @returns {*} Returns the metadata for `func`.
*/
function getTemplate(moduleName) {
- var data = {
+ const data = {
'name': _.get(mapping.aliasToReal, moduleName, moduleName),
'mapping': mapping
};
@@ -113,28 +113,28 @@ function getTemplate(moduleName) {
function build(target) {
target = path.resolve(target);
- var fpPath = path.join(target, 'fp');
+ const fpPath = path.join(target, 'fp');
// Glob existing lodash module paths.
- var modulePaths = glob.sync(path.join(target, '*.js'), {
+ const modulePaths = glob.sync(path.join(target, '*.js'), {
'nodir': true,
- 'ignore': ignored.map(function(filename) {
+ 'ignore': ignored.map(filename => {
return path.join(target, filename);
})
});
// Add FP alias and remapped module paths.
- _.each([mapping.aliasToReal, mapping.remap], function(data) {
- _.forOwn(data, function(realName, alias) {
- var modulePath = path.join(target, alias + '.js');
+ _.each([mapping.aliasToReal, mapping.remap], data => {
+ _.forOwn(data, (realName, alias) => {
+ const modulePath = path.join(target, alias + '.js');
if (!_.includes(modulePaths, modulePath)) {
modulePaths.push(modulePath);
}
});
});
- var actions = modulePaths.map(function(modulePath) {
- var moduleName = path.basename(modulePath, '.js');
+ const actions = modulePaths.map(modulePath => {
+ const moduleName = path.basename(modulePath, '.js');
return file.write(path.join(fpPath, moduleName + '.js'), getTemplate(moduleName));
});
diff --git a/lib/fp/template/doc/wiki.jst b/lib/fp/template/doc/wiki.jst
index 85ee91e42..8473e9ab3 100644
--- a/lib/fp/template/doc/wiki.jst
+++ b/lib/fp/template/doc/wiki.jst
@@ -131,8 +131,8 @@ Methods with unchanged argument orders:
<%= toFuncList(_.keys(mapping.skipRearg)) %>
Methods with custom argument orders:
-<%= _.map(_.keys(mapping.methodRearg), function(methodName) {
- var orders = mapping.methodRearg[methodName];
+<%= _.map(_.keys(mapping.methodRearg), methodName => {
+ const orders = mapping.methodRearg[methodName];
return ' * `_.' + methodName + '` has an order of ' + toArgOrder(orders);
}).join('\n') %>
@@ -148,8 +148,8 @@ Methods created to accommodate Lodash’s variadic methods:
#### Aliases
There are <%= _.size(mapping.aliasToReal) %> method aliases:
-<%= _.map(_.keys(mapping.aliasToReal).sort(), function(alias) {
- var realName = mapping.aliasToReal[alias];
+<%= _.map(_.keys(mapping.aliasToReal).sort(), alias => {
+ const realName = mapping.aliasToReal[alias];
return ' * `_.' + alias + '` is an alias of `_.' + realName + '`';
}).join('\n') %>
diff --git a/lib/main/build-dist.js b/lib/main/build-dist.js
index 137b6915e..35aac8261 100644
--- a/lib/main/build-dist.js
+++ b/lib/main/build-dist.js
@@ -1,17 +1,17 @@
'use strict';
-var async = require('async'),
- path = require('path');
+const async = require('async');
+const path = require('path');
-var file = require('../common/file'),
- util = require('../common/util');
+const file = require('../common/file');
+const util = require('../common/util');
-var basePath = path.join(__dirname, '..', '..'),
- distPath = path.join(basePath, 'dist'),
- filename = 'lodash.js';
+const basePath = path.join(__dirname, '..', '..');
+const distPath = path.join(basePath, 'dist');
+const filename = 'lodash.js';
-var baseLodash = path.join(basePath, filename),
- distLodash = path.join(distPath, filename);
+const baseLodash = path.join(basePath, filename);
+const distLodash = path.join(distPath, filename);
/*----------------------------------------------------------------------------*/
diff --git a/lib/main/build-doc.js b/lib/main/build-doc.js
index 94003448b..a7370af69 100644
--- a/lib/main/build-doc.js
+++ b/lib/main/build-doc.js
@@ -1,20 +1,20 @@
'use strict';
-var _ = require('lodash'),
- docdown = require('docdown'),
- fs = require('fs-extra'),
- path = require('path');
+const _ = require('lodash');
+const docdown = require('docdown');
+const fs = require('fs-extra');
+const path = require('path');
-var util = require('../common/util');
+const util = require('../common/util');
-var basePath = path.join(__dirname, '..', '..'),
- docPath = path.join(basePath, 'doc'),
- readmePath = path.join(docPath, 'README.md');
+const basePath = path.join(__dirname, '..', '..');
+const docPath = path.join(basePath, 'doc');
+const readmePath = path.join(docPath, 'README.md');
-var pkg = require('../../package.json'),
- version = pkg.version;
+const pkg = require('../../package.json');
+const version = pkg.version;
-var config = {
+const config = {
'base': {
'path': path.join(basePath, 'lodash.js'),
'title': 'lodash v' + version + '',
@@ -74,8 +74,8 @@ function postprocess(markdown) {
* @param {string} type The format type.
*/
function build(type) {
- var options = _.defaults({}, config.base, config[type]),
- markdown = docdown(options);
+ const options = _.defaults({}, config.base, config[type]);
+ const markdown = docdown(options);
fs.writeFile(readmePath, postprocess(markdown), util.pitch);
}
diff --git a/lib/main/build-modules.js b/lib/main/build-modules.js
index e9e3f365b..155e42f1b 100644
--- a/lib/main/build-modules.js
+++ b/lib/main/build-modules.js
@@ -1,16 +1,16 @@
'use strict';
-var _ = require('lodash'),
- async = require('async'),
- path = require('path');
+const _ = require('lodash');
+const async = require('async');
+const path = require('path');
-var file = require('../common/file'),
- util = require('../common/util');
+const file = require('../common/file');
+const util = require('../common/util');
-var basePath = path.join(__dirname, '..', '..'),
- distPath = path.join(basePath, 'dist');
+const basePath = path.join(__dirname, '..', '..');
+const distPath = path.join(basePath, 'dist');
-var filePairs = [
+const filePairs = [
[path.join(distPath, 'lodash.core.js'), 'core.js'],
[path.join(distPath, 'lodash.core.min.js'), 'core.min.js'],
[path.join(distPath, 'lodash.min.js'), 'lodash.min.js']
@@ -25,9 +25,8 @@ var filePairs = [
* @param {string} target The output directory path.
*/
function build(target) {
- var actions = _.map(filePairs, function(pair) {
- return file.copy(pair[0], path.join(target, pair[1]));
- });
+ const actions = _.map(filePairs, pair =>
+ file.copy(pair[0], path.join(target, pair[1])));
async.series(actions, util.pitch);
}
diff --git a/lib/main/build-site.js b/lib/main/build-site.js
index eada119c6..69fe8c795 100644
--- a/lib/main/build-site.js
+++ b/lib/main/build-site.js
@@ -1,41 +1,41 @@
'use strict';
-var _ = require('lodash'),
- fs = require('fs'),
- marky = require('marky-markdown'),
- path = require('path'),
- util = require('../common/util');
+const _ = require('lodash');
+const fs = require('fs');
+const marky = require('marky-markdown');
+const path = require('path');
+const util = require('../common/util');
-var basePath = path.join(__dirname, '..', '..'),
- docPath = path.join(basePath, 'doc'),
- readmePath = path.join(docPath, 'README.md');
+const basePath = path.join(__dirname, '..', '..');
+const docPath = path.join(basePath, 'doc');
+const readmePath = path.join(docPath, 'README.md');
+
+const highlights = [
+ 'comment',
+ 'constant',
+ 'delimiter',
+ 'html',
+ 'js',
+ 'method',
+ 'modifier',
+ 'numeric',
+ 'shell',
+ 'source',
+ 'string',
+ 'text',
+ 'type'
+];
function build(type) {
- var markdown = fs
+ const markdown = fs
// Load markdown.
.readFileSync(readmePath, 'utf8')
// Uncomment docdown HTML hints.
.replace(/(<)!--\s*|\s*--(>)/g, '$1$2');
- var $ = marky(markdown, { 'sanitize': false }),
- $header = $('h1').first().remove(),
- version = _.trim($header.find('span').first().text()).slice(1);
-
- var highlights = [
- 'comment',
- 'constant',
- 'delimiter',
- 'html',
- 'js',
- 'method',
- 'modifier',
- 'numeric',
- 'shell',
- 'source',
- 'string',
- 'text',
- 'type'
- ];
+ const $ = marky(markdown, { 'sanitize': false });
+ const $header = $('h1').first().remove();
+ const version = _.trim($header.find('span').first().text()).slice(1);
// Remove docdown horizontal rules.
$('hr').remove();
@@ -46,7 +46,7 @@ function build(type) {
.attr('id', null);
$(':header:not(h3) > a').each(function() {
- var $a = $(this);
+ const $a = $(this);
$a.replaceWith($a.html());
});
@@ -54,8 +54,8 @@ function build(type) {
$('p:empty + h3').prev().remove();
$('h3 ~ p:empty').each(function() {
- var $p = $(this),
- node = this.previousSibling;
+ const $p = $(this);
+ let node = this.previousSibling;
while ((node = node.previousSibling) && node.name != 'h3' && node.name != 'p') {
$p.prepend(node.nextSibling);
@@ -63,19 +63,19 @@ function build(type) {
});
$('h3 code em').parent().each(function() {
- var $code = $(this);
+ const $code = $(this);
$code.html($code.html().replace(/<\/?em>/g, '_'));
});
// Cleanup highlights class names.
$('.highlight [class]').each(function() {
- var $el = $(this),
- className = _.intersection($el.attr('class').split(/\s+/), highlights).join(' ');
+ const $el = $(this);
+ const className = _.intersection($el.attr('class').split(/\s+/), highlights).join(' ');
$el.attr('class', className || null);
});
- var html = [
+ const html = [
// Append YAML front matter.
'---',
'id: docs',