New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

leasot

Package Overview
Dependencies
Maintainers
1
Versions
124
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

leasot - npm Package Compare versions

Comparing version 0.2.0 to 0.2.1

lib/reporters/custom.js

54

lib/reporters/markdown.js
'use strict';
var os = require('os');
var compact = require('lodash.compact');
var customReporter = require('./custom');
var defaults = require('lodash.defaults');
function getTransformedComments(todos, config) {
var transformFn = config.transformComment;
if (!todos.length) {
//early return in case of no comments
//FIXME: make the default header a configurable option
return {
TODO: []
};
}
var output = todos.reduce(function (mem, comment) {
var kind = comment.kind;
mem[kind] = mem[kind] || [];
// transformed comment as an array item
var transformedComment = transformFn(comment.file, comment.line, comment.text, kind);
// enforce array type
if (!Array.isArray(transformedComment)) {
transformedComment = [transformedComment];
}
// append to kind array
mem[kind] = mem[kind].concat(transformedComment);
return mem;
}, {});
return output;
}
function joinBlocksByHeaders(output, config) {
var padding = config.padding;
var newLine = config.newLine;
var transformHeader = config.transformHeader;
var header;
var contents = '';
//prepend headers
Object.keys(output).forEach(function (kind) {
header = transformHeader(kind);
// enforce array response
if (!Array.isArray(header)) {
header = [header];
}
output[kind] = compact(header.concat(output[kind]));
// add padding between kind blocks
if (contents.length) {
contents += new Array(padding + 1).join(newLine);
}
contents += output[kind].join(newLine);
});
return contents;
}
function parseConfig(_config) {

@@ -83,4 +35,4 @@ var config = defaults(_config || {}, {

var config = parseConfig(_config);
var output = getTransformedComments(todos, config);
return joinBlocksByHeaders(output, config);
var output = customReporter.getTransformedComments(todos, config);
return customReporter.joinBlocksByHeaders(output, config);
};
{
"name": "leasot",
"version": "0.2.0",
"version": "0.2.1",
"description": "Parse and output TODOs and FIXMEs from comments in your files",

@@ -5,0 +5,0 @@ "license": "MIT",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc