Skip to content

Commit

Permalink
Removed some lodash dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
stebanos committed Jul 17, 2021
1 parent 23dd4d6 commit a815348
Show file tree
Hide file tree
Showing 7 changed files with 29 additions and 35 deletions.
15 changes: 0 additions & 15 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 0 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,7 @@
"homepage": "https://github.com/nodebox/g.js",
"dependencies": {
"async": "^3.2.0",
"lodash.assignin": "^4.2.0",
"lodash.flatten": "^4.4.0",
"lodash.groupby": "^4.6.0",
"lodash.isempty": "^4.4.0",
"lodash.reduce": "^4.6.0",
"lodash.values": "^4.3.0",
"stackblur": "^1.0.0",
Expand Down
10 changes: 4 additions & 6 deletions src/g.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
'use strict';

var isEmpty = require('lodash.isempty');
var flatten = require('lodash.flatten');

var vg = require('./libraries/vg/vg');
var img = require('./libraries/img/img');
var util = require('./libraries/util');

var g = {};

Expand Down Expand Up @@ -86,7 +84,7 @@ g.importCSV = function (csvString, delimiter) {
var m, sr, col, index;
for (var i = 0; i < csvRows.length; i += 1) {
row = csvRows[i];
if (!isEmpty(row)) {
if (!!row) {
m = {};
sr = splitRow(row, delimiter);
for (index = 0; index < sr.length; index += 1) {
Expand All @@ -100,11 +98,11 @@ g.importCSV = function (csvString, delimiter) {
};

g.merge = function () {
var args = flatten(arguments);
var args = util.flatten(arguments);
if (Array.isArray(args)) {
var objects = [];
for (var i = 0; i < args.length; i += 1) {
if (!isEmpty(args[i])) {
if (!!args[i]) {
objects.push(args[i]);
}
}
Expand Down
19 changes: 18 additions & 1 deletion src/libraries/util.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,21 @@ var randomGenerator = function (seed) {
};
};

exports.randomGenerator = randomGenerator;
var flatten = function (arg) {
var arr = Array.prototype.slice.call(arg);
var args = [];
for (var i = 0; i < arr.length; i += 1) {
var o = arr[i];
if (Array.isArray(o)) {
for (var j = 0; j < o.length; j += 1) {
args.push(o[j]);
}
} else {
args.push(o);
}
}
return args;
}

exports.randomGenerator = randomGenerator;
exports.flatten = flatten;
2 changes: 1 addition & 1 deletion src/libraries/vg/commands/filters.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

'use strict';

var flatten = require('lodash.flatten');
var flatten = require('../../util').flatten;

var ClipperLib = require('../../../../third_party/clipper');
var bezier = require('../util/bezier');
Expand Down
5 changes: 2 additions & 3 deletions src/libraries/vg/objects/path.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

'use strict';

var flatten = require('lodash.flatten');
var flatten = require('../../util').flatten;

var bezier = require('../util/bezier');
var geo = require('../util/geo');
Expand Down Expand Up @@ -569,8 +569,7 @@ Path.prototype.draw = function (ctx) {
};

Path.combine = function () {
var args = Array.apply(null, arguments);
var shapes = flatten(args);
var shapes = flatten(arguments);
var shape, commands = [];
for (var i = 0; i < shapes.length; i += 1) {
shape = shapes[i];
Expand Down
10 changes: 4 additions & 6 deletions src/libraries/vg/vg.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@

'use strict';

var assignIn = require('lodash.assignin');

var vg = {};

// Utility functions
Expand Down Expand Up @@ -39,10 +37,10 @@ function importCommands(module) {
}

var Transformable = require('./objects/transformable');
assignIn(vg.Point.prototype, Transformable);
assignIn(vg.Path.prototype, Transformable);
assignIn(vg.Group.prototype, Transformable);
assignIn(vg.Text.prototype, Transformable);
Object.assign(vg.Point.prototype, Transformable);
Object.assign(vg.Path.prototype, Transformable);
Object.assign(vg.Group.prototype, Transformable);
Object.assign(vg.Text.prototype, Transformable);

importCommands(require('./commands/draw'));
importCommands(require('./commands/filters'));
Expand Down

0 comments on commit a815348

Please sign in to comment.