Skip to content

Commit

Permalink
Remove lodash
Browse files Browse the repository at this point in the history
  • Loading branch information
ChristophRSG committed Sep 16, 2019
1 parent 35da9a3 commit 60b8902
Show file tree
Hide file tree
Showing 8 changed files with 20 additions and 37 deletions.
3 changes: 2 additions & 1 deletion package-lock.json

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

1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@
"d3-tip": "^0.9.1",
"jquery": "^3.4.0",
"jquery-ui": "^1.12.1",
"lodash": "^4.17.15",
"sanitize-html": "^1.20.1",
"tabletop": "^1.5.2"
},
Expand Down
1 change: 1 addition & 0 deletions src/common.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ require('./images/tech-radar-landing-page-wide.png');
require('./images/tw-logo.png');
require('./images/favicon.ico');
require('./images/search-logo-2x.svg');
require('./images/radar_legend.png');
11 changes: 5 additions & 6 deletions src/graphing/radar.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ import * as d3Tip from 'd3-tip';

const d3 = require('d3');
const Chance = require('chance');
const _ = require('lodash/core');
const $ = require('jquery');
require('jquery-ui/ui/widgets/autocomplete');
const {getConfig} = require('../util/normalizedConfig');
Expand Down Expand Up @@ -479,7 +478,7 @@ const Radar = function (size, radar) {
.on('click', selectQuadrant.bind({}, quadrant.order, quadrant.startAngle))
}

_.each([0, 1, 2, 3], function (i) {
[0, 1, 2, 3].forEach(function (i) {
addButton(quadrants[i])
});

Expand All @@ -498,12 +497,12 @@ const Radar = function (size, radar) {
.classed('search-radar', true);

$('#auto-complete').autocomplete({
source: _.flatten(_.map(quadrants, function (q, i) {
return _.map(q.quadrant.blips(), function (b) {
source: quadrants.map(function (q, i) {
return q.quadrant.blips().map(function (b) {
const name = b.name();
return {label: name, value: name, blip: b, quadrant: q}
})
})),
}).flat(),
select: searchBlip.bind({})
})
}
Expand Down Expand Up @@ -631,7 +630,7 @@ const Radar = function (size, radar) {
svg = radarElement.append('svg').call(tip);
svg.attr('id', 'radar-plot').attr('width', size).attr('height', size + 14);

_.each(quadrants, function (quadrant) {
quadrants.forEach(function (quadrant) {
var quadrantGroup = plotQuadrant(rings, quadrant);
plotLines(quadrantGroup, quadrant);
plotTexts(quadrantGroup, rings, quadrant);
Expand Down
2 changes: 0 additions & 2 deletions src/site.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
require('./common');
const normalizedConfig = require('./util/normalizedConfig');

if (normalizedConfig.logo && !normalizedConfig.logo.match(/http(s)?:/i)) {
require('./images/' + normalizedConfig.logo)
}
require('./images/radar_legend.png');

const GoogleSheetInput = require('./util/factory');

Expand Down
9 changes: 1 addition & 8 deletions src/util/contentValidator.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,3 @@
const _ = {
map: require('lodash/map'),
uniqBy: require('lodash/uniqBy'),
capitalize: require('lodash/capitalize'),
each: require('lodash/each')
};

const MalformedDataError = require('../../src/exceptions/malformedDataError');
const ExceptionMessages = require('./exceptionMessages');

Expand All @@ -21,7 +14,7 @@ const ContentValidator = function (columnNames) {
};

self.verifyHeaders = function () {
_.each(['name', 'ring', 'quadrant', 'isNew', 'description'], function (field) {
['name', 'ring', 'quadrant', 'isNew', 'description'].forEach(function (field) {
if (columnNames.indexOf(field) === -1) {
throw new MalformedDataError(ExceptionMessages.MISSING_HEADERS)
}
Expand Down
25 changes: 10 additions & 15 deletions src/util/factory.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,6 @@

const d3 = require('d3');
const Tabletop = require('tabletop');
const _ = {
map: require('lodash/map'),
uniqBy: require('lodash/uniqBy'),
capitalize: require('lodash/capitalize'),
each: require('lodash/each')
};
const {getConfig} = require('../util/normalizedConfig');

const InputSanitizer = require('./inputSanitizer');
Expand All @@ -33,18 +27,19 @@ const plotRadar = function (title, blips, currentRadarName, alternativeRadars) {
var ringMap = {};
var maxRings = 4;

_.each(rings, function (ringName, i) {
rings.forEach(function (ringName, i) {
if (i === maxRings) {
throw new MalformedDataError(ExceptionMessages.TOO_MANY_RINGS)
}
ringMap[ringName] = new Ring(ringName, i)
});
var quadrants = {};
// TODO: Handle multiple words
normalizedConfig.quadrants.forEach(function (name) {
quadrants[name] = new Quadrant(_.capitalize(name))
quadrants[name] = new Quadrant(name[0].toUpperCase() + name.substring(1).toLowerCase());
});

_.each(blips, function (blip) {
blips.forEach(function (blip) {
// errorhandling in case
const currentQuadrant = quadrants[blip.quadrant.toLowerCase()];
const currentRing = ringMap[blip.ring.toLowerCase()];
Expand All @@ -57,8 +52,8 @@ const plotRadar = function (title, blips, currentRadarName, alternativeRadars) {
});

var radar = new Radar();
_.each(quadrants, function (quadrant) {
radar.addQuadrant(quadrant)
Object.keys(quadrants).forEach(function (key) {
radar.addQuadrant(quadrants[key]);
});

if (alternativeRadars !== undefined || true) {
Expand Down Expand Up @@ -109,7 +104,7 @@ const GoogleSheet = function (sheetReference, sheetName) {
contentValidator.verifyHeaders();

var all = tabletop.sheets(sheetName).all();
var blips = _.map(all, new InputSanitizer().sanitize);
var blips = all.map(new InputSanitizer().sanitize);

plotRadar(tabletop.googleSheetName + ' - ' + sheetName, blips, sheetName, tabletop.foundSheetNames)
} catch (exception) {
Expand All @@ -130,7 +125,7 @@ const GoogleSheet = function (sheetReference, sheetName) {

const all = values;
const header = all.shift();
var blips = _.map(all, blip => new InputSanitizer().sanitizeForProtectedSheet(blip, header));
var blips = all.map(blip => new InputSanitizer().sanitizeForProtectedSheet(blip, header));
plotRadar(documentTitle + ' - ' + sheetName, blips, sheetName, sheetNames)
}

Expand Down Expand Up @@ -174,7 +169,7 @@ const CSVDocument = function (url) {
var contentValidator = new ContentValidator(columnNames);
contentValidator.verifyContent();
contentValidator.verifyHeaders();
var blips = _.map(data, new InputSanitizer().sanitize);
var blips = data.map(new InputSanitizer().sanitize);
plotRadar(FileName(url), blips, 'CSV File', [])
} catch (exception) {
throw exception;
Expand Down Expand Up @@ -401,7 +396,7 @@ function plotUnauthorizedErrorMessage() {
var queryString = window.location.href.match(/sheetId(.*)/);
var queryParams = queryString ? QueryParams(queryString[0]) : {};
const sheet = GoogleSheet(queryParams.sheetId, queryParams.sheetName);
sheet.authenticate(true, _ => {
sheet.authenticate(true, () => {
content.remove();
})
})
Expand Down
5 changes: 1 addition & 4 deletions src/util/inputSanitizer.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
const sanitizeHtml = require('sanitize-html');
const _ = {
forOwn: require('lodash/forOwn')
};

const InputSanitizer = function () {
var relaxedOptions = {
Expand All @@ -22,7 +19,7 @@ const InputSanitizer = function () {

function trimWhiteSpaces(blip) {
var processedBlip = {};
_.forOwn(blip, function (value, key) {
Object.entries(blip).forEach(function ([key, value]) {
processedBlip[key.trim()] = value.trim()
});
return processedBlip
Expand Down

0 comments on commit 60b8902

Please sign in to comment.