@security-alert/sarif-to-markdown 1.9.0 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -37,6 +37,10 @@ export declare type sarifFormatterOptions = {
|
|
|
37
37
|
* Should the markdown include rule details or tool details at all
|
|
38
38
|
*/
|
|
39
39
|
simple?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Which severities should be included ?
|
|
42
|
+
*/
|
|
43
|
+
severities?: readonly string[];
|
|
40
44
|
};
|
|
41
45
|
declare type sarifToMarkdownResult = {
|
|
42
46
|
title?: string;
|
package/lib/sarif-to-markdown.js
CHANGED
|
@@ -70,33 +70,29 @@ function groupBy(arr, criteria) {
|
|
|
70
70
|
acc[currentValue[criteria]].push(currentValue);
|
|
71
71
|
return acc;
|
|
72
72
|
}, {});
|
|
73
|
-
return
|
|
73
|
+
return newObj;
|
|
74
74
|
}
|
|
75
75
|
function createGroupedResultsMarkdown(groupedResults, run, options) {
|
|
76
76
|
var _a, _b, _c, _d;
|
|
77
77
|
var groupedResultsMarkdown = "";
|
|
78
|
-
|
|
79
|
-
var
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
var properResult = result;
|
|
92
|
-
if (properResult.suppressions === undefined) {
|
|
93
|
-
groupedResultsMarkdown += " - " + createCodeURL(result, options) + "\n";
|
|
94
|
-
}
|
|
78
|
+
var _loop_1 = function (rule) {
|
|
79
|
+
var ruleMatch = run.tool.driver.rules.filter(function (r) {
|
|
80
|
+
return r.id == rule;
|
|
81
|
+
});
|
|
82
|
+
var severityLevel = (_c = (_b = (_a = ruleMatch[0].defaultConfiguration) === null || _a === void 0 ? void 0 : _a.level) === null || _b === void 0 ? void 0 : _b.toUpperCase()) !== null && _c !== void 0 ? _c : "";
|
|
83
|
+
var helpUri = ruleMatch[0].helpUri !== undefined ? (_d = "[[HELP LINK](" + ruleMatch[0].helpUri + ")]") !== null && _d !== void 0 ? _d : "" : "";
|
|
84
|
+
groupedResultsMarkdown +=
|
|
85
|
+
"- **".concat("[" + severityLevel + "]** **[" + rule + "]** " + helpUri, " `").concat(groupedResults[rule][0] ? (0, markdown_escape_1.default)(groupedResults[rule][0].message.text) : "", "`") + "\n";
|
|
86
|
+
for (var _i = 0, _e = groupedResults[rule]; _i < _e.length; _i++) {
|
|
87
|
+
var result = _e[_i];
|
|
88
|
+
var properResult = result;
|
|
89
|
+
if (properResult.suppressions === undefined) {
|
|
90
|
+
groupedResultsMarkdown += " - " + createCodeURL(result, options) + "\n";
|
|
95
91
|
}
|
|
96
|
-
};
|
|
97
|
-
for (var r in group) {
|
|
98
|
-
_loop_1(r);
|
|
99
92
|
}
|
|
93
|
+
};
|
|
94
|
+
for (var rule in groupedResults) {
|
|
95
|
+
_loop_1(rule);
|
|
100
96
|
}
|
|
101
97
|
return groupedResultsMarkdown;
|
|
102
98
|
}
|
|
@@ -104,38 +100,57 @@ function createGroupedSuppressedResultsMarkdown(groupedResults, run, options) {
|
|
|
104
100
|
var _a, _b, _c, _d;
|
|
105
101
|
var groupedSuppressedResultsMD = "";
|
|
106
102
|
var suppressedCounter = 0;
|
|
107
|
-
|
|
108
|
-
var
|
|
109
|
-
|
|
110
|
-
var
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
if (properResult.suppressions !== undefined) {
|
|
124
|
-
suppressedCounter += 1;
|
|
125
|
-
groupedSuppressedResultsMD += " - " + createCodeURL(result, options) + "\n";
|
|
126
|
-
}
|
|
103
|
+
var _loop_2 = function (rule) {
|
|
104
|
+
var groupContainsSuppressed = groupedResults[rule].filter(function (r) { return r.suppressions !== undefined; }).length > 0;
|
|
105
|
+
if (groupContainsSuppressed) {
|
|
106
|
+
var ruleMatch = run.tool.driver.rules.filter(function (r) {
|
|
107
|
+
return r.id == rule;
|
|
108
|
+
});
|
|
109
|
+
var helpUri = ruleMatch[0].helpUri !== undefined ? (_a = "[[HELP LINK](" + ruleMatch[0].helpUri + ")]") !== null && _a !== void 0 ? _a : "" : "";
|
|
110
|
+
var severityLevel = (_d = (_c = (_b = ruleMatch[0].defaultConfiguration) === null || _b === void 0 ? void 0 : _b.level) === null || _c === void 0 ? void 0 : _c.toUpperCase()) !== null && _d !== void 0 ? _d : "";
|
|
111
|
+
groupedSuppressedResultsMD +=
|
|
112
|
+
"- **".concat("[" + severityLevel + "]** **[" + rule + "]** " + helpUri, " `").concat(groupedResults[rule][0] ? (0, markdown_escape_1.default)(groupedResults[rule][0].message.text) : "", "`") + "\n";
|
|
113
|
+
for (var _i = 0, _e = groupedResults[rule]; _i < _e.length; _i++) {
|
|
114
|
+
var result = _e[_i];
|
|
115
|
+
var properResult = result;
|
|
116
|
+
if (properResult.suppressions !== undefined) {
|
|
117
|
+
suppressedCounter += 1;
|
|
118
|
+
groupedSuppressedResultsMD += " - " + createCodeURL(result, options) + "\n";
|
|
127
119
|
}
|
|
128
120
|
}
|
|
129
|
-
};
|
|
130
|
-
for (var r in group) {
|
|
131
|
-
_loop_2(r);
|
|
132
121
|
}
|
|
122
|
+
};
|
|
123
|
+
for (var rule in groupedResults) {
|
|
124
|
+
_loop_2(rule);
|
|
133
125
|
}
|
|
134
126
|
return { groupedSuppressedResultsMD: groupedSuppressedResultsMD, suppressedCounter: suppressedCounter };
|
|
135
127
|
}
|
|
128
|
+
function filterGroupedResultsBySeverity(groupedResults, severities, run) {
|
|
129
|
+
var _a, _b;
|
|
130
|
+
// 1st step, go through run and find rule severities
|
|
131
|
+
// 2nd step, filter groupedResults and remove rulegroups that don't match the severities filter
|
|
132
|
+
var ruleSeverityMapping = new Map();
|
|
133
|
+
(_b = (_a = run.tool.driver) === null || _a === void 0 ? void 0 : _a.rules) === null || _b === void 0 ? void 0 : _b.forEach(function (rule) {
|
|
134
|
+
var _a, _b;
|
|
135
|
+
var severity = (_b = (_a = rule.defaultConfiguration) === null || _a === void 0 ? void 0 : _a.level) !== null && _b !== void 0 ? _b : "";
|
|
136
|
+
ruleSeverityMapping.set(rule.id, severity);
|
|
137
|
+
});
|
|
138
|
+
var filteredResults = Object.keys(groupedResults)
|
|
139
|
+
.filter(function (rule) {
|
|
140
|
+
var _a;
|
|
141
|
+
return severities.includes((_a = ruleSeverityMapping.get(rule)) !== null && _a !== void 0 ? _a : "unknownseverity");
|
|
142
|
+
})
|
|
143
|
+
.reduce(function (obj, key) {
|
|
144
|
+
obj[key] = groupedResults[key];
|
|
145
|
+
return obj;
|
|
146
|
+
}, {});
|
|
147
|
+
return filteredResults;
|
|
148
|
+
}
|
|
136
149
|
var sarifToMarkdown = function (options) {
|
|
150
|
+
var _a;
|
|
137
151
|
var suppressedResultsFlag = options.suppressedResults !== undefined ? options.suppressedResults : true;
|
|
138
152
|
var simpleMode = options.simple !== undefined ? options.simple : false;
|
|
153
|
+
var severities = (_a = options.severities) !== null && _a !== void 0 ? _a : ["warning", "error", "note", "none"];
|
|
139
154
|
return function (sarifLog) {
|
|
140
155
|
return sarifLog.runs.map(function (run) {
|
|
141
156
|
var _a, _b;
|
|
@@ -144,7 +159,8 @@ var sarifToMarkdown = function (options) {
|
|
|
144
159
|
var ruleInfo = simpleMode ? "" : createRuleInfo(run);
|
|
145
160
|
var ruleDetails = "<details><summary>Details</summary>\n<pre>".concat(JSON.stringify(run.tool, null, 4), "</pre></details>\n");
|
|
146
161
|
var groupedResults = groupBy(run.results, "ruleId");
|
|
147
|
-
var
|
|
162
|
+
var filteredResults = filterGroupedResultsBySeverity(groupedResults, severities, run);
|
|
163
|
+
var groupedResultsMarkdown = createGroupedResultsMarkdown(filteredResults, run, options);
|
|
148
164
|
/* Results
|
|
149
165
|
- rule id
|
|
150
166
|
- message
|
|
@@ -155,7 +171,7 @@ var sarifToMarkdown = function (options) {
|
|
|
155
171
|
var results = run.results && run.results.length > 0
|
|
156
172
|
? "\n## Results\n\n".concat(groupedResultsMarkdown, "\n")
|
|
157
173
|
: "\n## Results\n\nNothing here.\n\n";
|
|
158
|
-
var _c = createGroupedSuppressedResultsMarkdown(
|
|
174
|
+
var _c = createGroupedSuppressedResultsMarkdown(filteredResults, run, options), groupedSuppressedResultsMD = _c.groupedSuppressedResultsMD, suppressedCounter = _c.suppressedCounter;
|
|
159
175
|
// careful, double ternary... first check if we should include suppressedresults (return empty string)
|
|
160
176
|
// then check if there are results, if none, return default string
|
|
161
177
|
var suppressedResultsText = suppressedResultsFlag
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sarif-to-markdown.js","sourceRoot":"","sources":["../src/sarif-to-markdown.ts"],"names":[],"mappings":";;;;;;;;;;AACA,aAAa;AACb,oEAAqC;AACrC,sDAA+B;AAE/B,SAAS,cAAc,CAAC,OAA6B;IAAE,gBAAgB;SAAhB,UAAgB,EAAhB,qBAAgB,EAAhB,IAAgB;QAAhB,+BAAgB;;IACnE,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG,EAAE,CAAC;QACjC,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,MAAM,GAAG,IAAA,yBAAM,EAAC,KAAK,CAAC,GAAG,GAAG,CAAC;SACvC;aAAM;YACH,OAAO,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;SACvC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,cAAc,CAAC,GAAQ;;IAC5B,OAAO,cAAc,gKAAA,yFAIvB,EAMA,EAAE,KANF,MAAA,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,KAAK,0CAAE,GAAG,CAAC,UAAC,IAAS;;QACpC,IAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,UAAU,0CAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,mBAAmB;QACnB,OAAO,oBACH,IAAI,CAAC,EAAE,eAAK,QAAQ,yBACpB,MAAA,IAAI,CAAC,gBAAgB,0CAAE,IAAI,OAAI,CAAC;IACxC,CAAC,CAAC,EAAG;AACL,CAAC;AAED,SAAS,cAAc,CAAC,GAAQ;;IAC5B,OAAO,yCAED,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,IAAI,+BACb,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,YAAY,0BAClC,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,eAAe,OAC5C,CAAC;AACF,CAAC;AAED,IAAM,aAAa,GAAG,UAAC,MAAc,EAAE,OAA8B;;IACjE,IAAM,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,oBAAoB,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;QAClC,OAAO,EAAE,CAAC;KACb;IACD,OAAO,MAAA,MAAM,CAAC,SAAS,0CAAE,OAAO,CAAC,UAAC,QAAa;QAC3C,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YAC5B,OAAO,EAAE,CAAC;SACb;QACD,IAAM,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE;YACpC,OAAO,EAAE,CAAC;SACb;QACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YAC1B,OAAO,EAAE,CAAC;SACb;QACD,IAAM,UAAU,GACZ,gBAAgB,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;YACzC,CAAC,CAAC,WAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,cAAI,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAE;YAC5E,CAAC,CAAC,WAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAE,CAAC;QAClD,OAAO,IAAA,kBAAO,EACV,UAAU,EACV,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,IAAI,EACZ,eAAQ,OAAO,CAAC,MAAM,CAAE,EACxB,OAAO,CAAC,UAAU,EAClB,UAAG,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,cAAI,UAAU,CAAE,CAC3D,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"sarif-to-markdown.js","sourceRoot":"","sources":["../src/sarif-to-markdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,6 +37,10 @@ export declare type sarifFormatterOptions = {
|
|
|
37
37
|
* Should the markdown include rule details or tool details at all
|
|
38
38
|
*/
|
|
39
39
|
simple?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Which severities should be included ?
|
|
42
|
+
*/
|
|
43
|
+
severities?: readonly string[];
|
|
40
44
|
};
|
|
41
45
|
declare type sarifToMarkdownResult = {
|
|
42
46
|
title?: string;
|
|
@@ -64,33 +64,29 @@ function groupBy(arr, criteria) {
|
|
|
64
64
|
acc[currentValue[criteria]].push(currentValue);
|
|
65
65
|
return acc;
|
|
66
66
|
}, {});
|
|
67
|
-
return
|
|
67
|
+
return newObj;
|
|
68
68
|
}
|
|
69
69
|
function createGroupedResultsMarkdown(groupedResults, run, options) {
|
|
70
70
|
var _a, _b, _c, _d;
|
|
71
71
|
var groupedResultsMarkdown = "";
|
|
72
|
-
|
|
73
|
-
var
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
var properResult = result;
|
|
86
|
-
if (properResult.suppressions === undefined) {
|
|
87
|
-
groupedResultsMarkdown += " - " + createCodeURL(result, options) + "\n";
|
|
88
|
-
}
|
|
72
|
+
var _loop_1 = function (rule) {
|
|
73
|
+
var ruleMatch = run.tool.driver.rules.filter(function (r) {
|
|
74
|
+
return r.id == rule;
|
|
75
|
+
});
|
|
76
|
+
var severityLevel = (_c = (_b = (_a = ruleMatch[0].defaultConfiguration) === null || _a === void 0 ? void 0 : _a.level) === null || _b === void 0 ? void 0 : _b.toUpperCase()) !== null && _c !== void 0 ? _c : "";
|
|
77
|
+
var helpUri = ruleMatch[0].helpUri !== undefined ? (_d = "[[HELP LINK](" + ruleMatch[0].helpUri + ")]") !== null && _d !== void 0 ? _d : "" : "";
|
|
78
|
+
groupedResultsMarkdown +=
|
|
79
|
+
"- **".concat("[" + severityLevel + "]** **[" + rule + "]** " + helpUri, " `").concat(groupedResults[rule][0] ? escape(groupedResults[rule][0].message.text) : "", "`") + "\n";
|
|
80
|
+
for (var _i = 0, _e = groupedResults[rule]; _i < _e.length; _i++) {
|
|
81
|
+
var result = _e[_i];
|
|
82
|
+
var properResult = result;
|
|
83
|
+
if (properResult.suppressions === undefined) {
|
|
84
|
+
groupedResultsMarkdown += " - " + createCodeURL(result, options) + "\n";
|
|
89
85
|
}
|
|
90
|
-
};
|
|
91
|
-
for (var r in group) {
|
|
92
|
-
_loop_1(r);
|
|
93
86
|
}
|
|
87
|
+
};
|
|
88
|
+
for (var rule in groupedResults) {
|
|
89
|
+
_loop_1(rule);
|
|
94
90
|
}
|
|
95
91
|
return groupedResultsMarkdown;
|
|
96
92
|
}
|
|
@@ -98,38 +94,57 @@ function createGroupedSuppressedResultsMarkdown(groupedResults, run, options) {
|
|
|
98
94
|
var _a, _b, _c, _d;
|
|
99
95
|
var groupedSuppressedResultsMD = "";
|
|
100
96
|
var suppressedCounter = 0;
|
|
101
|
-
|
|
102
|
-
var
|
|
103
|
-
|
|
104
|
-
var
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
if (properResult.suppressions !== undefined) {
|
|
118
|
-
suppressedCounter += 1;
|
|
119
|
-
groupedSuppressedResultsMD += " - " + createCodeURL(result, options) + "\n";
|
|
120
|
-
}
|
|
97
|
+
var _loop_2 = function (rule) {
|
|
98
|
+
var groupContainsSuppressed = groupedResults[rule].filter(function (r) { return r.suppressions !== undefined; }).length > 0;
|
|
99
|
+
if (groupContainsSuppressed) {
|
|
100
|
+
var ruleMatch = run.tool.driver.rules.filter(function (r) {
|
|
101
|
+
return r.id == rule;
|
|
102
|
+
});
|
|
103
|
+
var helpUri = ruleMatch[0].helpUri !== undefined ? (_a = "[[HELP LINK](" + ruleMatch[0].helpUri + ")]") !== null && _a !== void 0 ? _a : "" : "";
|
|
104
|
+
var severityLevel = (_d = (_c = (_b = ruleMatch[0].defaultConfiguration) === null || _b === void 0 ? void 0 : _b.level) === null || _c === void 0 ? void 0 : _c.toUpperCase()) !== null && _d !== void 0 ? _d : "";
|
|
105
|
+
groupedSuppressedResultsMD +=
|
|
106
|
+
"- **".concat("[" + severityLevel + "]** **[" + rule + "]** " + helpUri, " `").concat(groupedResults[rule][0] ? escape(groupedResults[rule][0].message.text) : "", "`") + "\n";
|
|
107
|
+
for (var _i = 0, _e = groupedResults[rule]; _i < _e.length; _i++) {
|
|
108
|
+
var result = _e[_i];
|
|
109
|
+
var properResult = result;
|
|
110
|
+
if (properResult.suppressions !== undefined) {
|
|
111
|
+
suppressedCounter += 1;
|
|
112
|
+
groupedSuppressedResultsMD += " - " + createCodeURL(result, options) + "\n";
|
|
121
113
|
}
|
|
122
114
|
}
|
|
123
|
-
};
|
|
124
|
-
for (var r in group) {
|
|
125
|
-
_loop_2(r);
|
|
126
115
|
}
|
|
116
|
+
};
|
|
117
|
+
for (var rule in groupedResults) {
|
|
118
|
+
_loop_2(rule);
|
|
127
119
|
}
|
|
128
120
|
return { groupedSuppressedResultsMD: groupedSuppressedResultsMD, suppressedCounter: suppressedCounter };
|
|
129
121
|
}
|
|
122
|
+
function filterGroupedResultsBySeverity(groupedResults, severities, run) {
|
|
123
|
+
var _a, _b;
|
|
124
|
+
// 1st step, go through run and find rule severities
|
|
125
|
+
// 2nd step, filter groupedResults and remove rulegroups that don't match the severities filter
|
|
126
|
+
var ruleSeverityMapping = new Map();
|
|
127
|
+
(_b = (_a = run.tool.driver) === null || _a === void 0 ? void 0 : _a.rules) === null || _b === void 0 ? void 0 : _b.forEach(function (rule) {
|
|
128
|
+
var _a, _b;
|
|
129
|
+
var severity = (_b = (_a = rule.defaultConfiguration) === null || _a === void 0 ? void 0 : _a.level) !== null && _b !== void 0 ? _b : "";
|
|
130
|
+
ruleSeverityMapping.set(rule.id, severity);
|
|
131
|
+
});
|
|
132
|
+
var filteredResults = Object.keys(groupedResults)
|
|
133
|
+
.filter(function (rule) {
|
|
134
|
+
var _a;
|
|
135
|
+
return severities.includes((_a = ruleSeverityMapping.get(rule)) !== null && _a !== void 0 ? _a : "unknownseverity");
|
|
136
|
+
})
|
|
137
|
+
.reduce(function (obj, key) {
|
|
138
|
+
obj[key] = groupedResults[key];
|
|
139
|
+
return obj;
|
|
140
|
+
}, {});
|
|
141
|
+
return filteredResults;
|
|
142
|
+
}
|
|
130
143
|
export var sarifToMarkdown = function (options) {
|
|
144
|
+
var _a;
|
|
131
145
|
var suppressedResultsFlag = options.suppressedResults !== undefined ? options.suppressedResults : true;
|
|
132
146
|
var simpleMode = options.simple !== undefined ? options.simple : false;
|
|
147
|
+
var severities = (_a = options.severities) !== null && _a !== void 0 ? _a : ["warning", "error", "note", "none"];
|
|
133
148
|
return function (sarifLog) {
|
|
134
149
|
return sarifLog.runs.map(function (run) {
|
|
135
150
|
var _a, _b;
|
|
@@ -138,7 +153,8 @@ export var sarifToMarkdown = function (options) {
|
|
|
138
153
|
var ruleInfo = simpleMode ? "" : createRuleInfo(run);
|
|
139
154
|
var ruleDetails = "<details><summary>Details</summary>\n<pre>".concat(JSON.stringify(run.tool, null, 4), "</pre></details>\n");
|
|
140
155
|
var groupedResults = groupBy(run.results, "ruleId");
|
|
141
|
-
var
|
|
156
|
+
var filteredResults = filterGroupedResultsBySeverity(groupedResults, severities, run);
|
|
157
|
+
var groupedResultsMarkdown = createGroupedResultsMarkdown(filteredResults, run, options);
|
|
142
158
|
/* Results
|
|
143
159
|
- rule id
|
|
144
160
|
- message
|
|
@@ -149,7 +165,7 @@ export var sarifToMarkdown = function (options) {
|
|
|
149
165
|
var results = run.results && run.results.length > 0
|
|
150
166
|
? "\n## Results\n\n".concat(groupedResultsMarkdown, "\n")
|
|
151
167
|
: "\n## Results\n\nNothing here.\n\n";
|
|
152
|
-
var _c = createGroupedSuppressedResultsMarkdown(
|
|
168
|
+
var _c = createGroupedSuppressedResultsMarkdown(filteredResults, run, options), groupedSuppressedResultsMD = _c.groupedSuppressedResultsMD, suppressedCounter = _c.suppressedCounter;
|
|
153
169
|
// careful, double ternary... first check if we should include suppressedresults (return empty string)
|
|
154
170
|
// then check if there are results, if none, return default string
|
|
155
171
|
var suppressedResultsText = suppressedResultsFlag
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sarif-to-markdown.js","sourceRoot":"","sources":["../src/sarif-to-markdown.ts"],"names":[],"mappings":";;;;AACA,aAAa;AACb,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,OAAO,MAAM,UAAU,CAAC;AAE/B,SAAS,cAAc,CAAC,OAA6B;IAAE,gBAAgB;SAAhB,UAAgB,EAAhB,qBAAgB,EAAhB,IAAgB;QAAhB,+BAAgB;;IACnE,OAAO,OAAO,CAAC,MAAM,CAAC,UAAC,MAAM,EAAE,GAAG,EAAE,CAAC;QACjC,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC3B,OAAO,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;SACvC;aAAM;YACH,OAAO,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;SACvC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,cAAc,CAAC,GAAQ;;IAC5B,OAAO,cAAc,gKAAA,yFAIvB,EAMA,EAAE,KANF,MAAA,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,KAAK,0CAAE,GAAG,CAAC,UAAC,IAAS;;QACpC,IAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAA,IAAI,CAAC,UAAU,0CAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,mBAAmB;QACnB,OAAO,oBACH,IAAI,CAAC,EAAE,eAAK,QAAQ,yBACpB,MAAA,IAAI,CAAC,gBAAgB,0CAAE,IAAI,OAAI,CAAC;IACxC,CAAC,CAAC,EAAG;AACL,CAAC;AAED,SAAS,cAAc,CAAC,GAAQ;;IAC5B,OAAO,yCAED,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,IAAI,+BACb,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,YAAY,0BAClC,MAAA,GAAG,CAAC,IAAI,CAAC,MAAM,0CAAE,eAAe,OAC5C,CAAC;AACF,CAAC;AAED,IAAM,aAAa,GAAG,UAAC,MAAc,EAAE,OAA8B;;IACjE,IAAM,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,oBAAoB,CAAC;IAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;QAClC,OAAO,EAAE,CAAC;KACb;IACD,OAAO,MAAA,MAAM,CAAC,SAAS,0CAAE,OAAO,CAAC,UAAC,QAAa;QAC3C,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE;YAC5B,OAAO,EAAE,CAAC;SACb;QACD,IAAM,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE;YACpC,OAAO,EAAE,CAAC;SACb;QACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YAC1B,OAAO,EAAE,CAAC;SACb;QACD,IAAM,UAAU,GACZ,gBAAgB,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;YACzC,CAAC,CAAC,WAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,cAAI,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAE;YAC5E,CAAC,CAAC,WAAI,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAE,CAAC;QAClD,OAAO,OAAO,CACV,UAAU,EACV,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,IAAI,EACZ,eAAQ,OAAO,CAAC,MAAM,CAAE,EACxB,OAAO,CAAC,UAAU,EAClB,UAAG,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,cAAI,UAAU,CAAE,CAC3D,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"sarif-to-markdown.js","sourceRoot":"","sources":["../src/sarif-to-markdown.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@security-alert/sarif-to-markdown",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.10.0",
|
|
4
4
|
"description": "Convert Sarif format to body text",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sarif",
|
|
@@ -56,5 +56,5 @@
|
|
|
56
56
|
"publishConfig": {
|
|
57
57
|
"access": "public"
|
|
58
58
|
},
|
|
59
|
-
"gitHead": "
|
|
59
|
+
"gitHead": "64e24ad981e3681055db97c6c1c420bc3ececcf9"
|
|
60
60
|
}
|