@fabasoad/sarif-to-slack 1.2.2 → 1.2.3
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.
package/dist/index.cjs
CHANGED
|
@@ -274,9 +274,9 @@ function sendIfLogMessage(sendIf) {
|
|
|
274
274
|
var import_webhook = require("@slack/webhook");
|
|
275
275
|
|
|
276
276
|
// src/metadata.json
|
|
277
|
-
var version = "1.2.
|
|
278
|
-
var sha = "
|
|
279
|
-
var buildAt = "2025-08-
|
|
277
|
+
var version = "1.2.3";
|
|
278
|
+
var sha = "ec8d9a860e38996de3cbf56f2e6103aa1229e85b";
|
|
279
|
+
var buildAt = "2025-08-21T04:21:37Z";
|
|
280
280
|
|
|
281
281
|
// src/model/SlackMessage.ts
|
|
282
282
|
function createSlackMessage(url, opts) {
|
|
@@ -511,12 +511,17 @@ ${summary}`;
|
|
|
511
511
|
}).join("\n\n");
|
|
512
512
|
}
|
|
513
513
|
composeCompactReport(findings, key) {
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
514
|
+
const result = [];
|
|
515
|
+
findings.reduce((grouped, f) => {
|
|
516
|
+
if (!grouped.get(f[key])) {
|
|
517
|
+
grouped.set(f[key], new Array());
|
|
517
518
|
}
|
|
518
|
-
|
|
519
|
-
|
|
519
|
+
grouped.get(f[key])?.push(f);
|
|
520
|
+
return grouped;
|
|
521
|
+
}, /* @__PURE__ */ new Map()).forEach((v, k) => {
|
|
522
|
+
result.push(`${this.bold(this.extractEnumValue(key, k))}: ${v.length}`);
|
|
523
|
+
});
|
|
524
|
+
return result.join(", ");
|
|
520
525
|
}
|
|
521
526
|
extractEnumValue(key, prop) {
|
|
522
527
|
switch (key) {
|
|
@@ -36,16 +36,19 @@ export default class CompactGroupByRepresentation extends Representation {
|
|
|
36
36
|
.join('\n\n');
|
|
37
37
|
}
|
|
38
38
|
composeCompactReport(findings, key) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
.
|
|
42
|
-
if (
|
|
43
|
-
|
|
39
|
+
const result = [];
|
|
40
|
+
findings
|
|
41
|
+
.reduce((grouped, f) => {
|
|
42
|
+
if (!grouped.get(f[key])) {
|
|
43
|
+
grouped.set(f[key], new Array());
|
|
44
44
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
.
|
|
45
|
+
grouped.get(f[key])?.push(f);
|
|
46
|
+
return grouped;
|
|
47
|
+
}, new Map())
|
|
48
|
+
.forEach((v, k) => {
|
|
49
|
+
result.push(`${this.bold(this.extractEnumValue(key, k))}: ${v.length}`);
|
|
50
|
+
});
|
|
51
|
+
return result.join(', ');
|
|
49
52
|
}
|
|
50
53
|
extractEnumValue(key, prop) {
|
|
51
54
|
switch (key) {
|
|
@@ -55,4 +58,4 @@ export default class CompactGroupByRepresentation extends Representation {
|
|
|
55
58
|
}
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tcGFjdEdyb3VwQnlSZXByZXNlbnRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9yZXByZXNlbnRhdGlvbnMvQ29tcGFjdEdyb3VwQnlSZXByZXNlbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLGNBQWMsTUFBTSxrQkFBa0IsQ0FBQTtBQUU3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM5RCxPQUFPLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRTFELE1BQU0sbUJBQW1CLEdBQUcsMEJBQTBCLENBQUE7QUFFdEQ7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLENBQUMsT0FBTyxPQUFnQiw0QkFBNkIsU0FBUSxjQUFjO0lBSXJFLGlCQUFpQixDQUFzRCxHQUFNO1FBQ3JGLE1BQU0sT0FBTyxHQUEyQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDNUQsSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sbUJBQW1CLENBQUE7UUFDNUIsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDdkIsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFzQixFQUFVLEVBQUU7WUFDdEQsUUFBUSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFBO1lBQzNDLE1BQU0sT0FBTyxHQUNYLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQztnQkFDckIsQ0FBQyxDQUFDLG1CQUFtQjtnQkFDckIsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDNUMsT0FBTyxHQUFHLEtBQUssS0FBSyxPQUFPLEVBQUUsQ0FBQTtRQUMvQixDQUFDLENBQUM7YUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDakIsQ0FBQztJQUVPLG9CQUFvQixDQUFzRCxRQUFtQixFQUFFLEdBQU07UUFDM0csTUFBTSxNQUFNLEdBQWEsRUFBRSxDQUFBO1FBQzNCLFFBQVE7YUFDTCxNQUFNLENBQUMsQ0FBQyxPQUF3QyxFQUFFLENBQVUsRUFBbUMsRUFBRTtZQUNoRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUN6QixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEtBQUssRUFBVyxDQUFDLENBQUE7WUFDM0MsQ0FBQztZQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQzVCLE9BQU8sT0FBTyxDQUFBO1FBQ2hCLENBQUMsRUFBRSxJQUFJLEdBQUcsRUFBOEIsQ0FBQzthQUN4QyxPQUFPLENBQUMsQ0FBQyxDQUFpQixFQUFFLENBQWEsRUFBUSxFQUFFO1lBQ2xELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQTtRQUN6RSxDQUFDLENBQUMsQ0FBQTtRQUNKLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMxQixDQUFDO0lBRU8sZ0JBQWdCLENBQXNELEdBQU0sRUFBRSxJQUFnQjtRQUNwRyxRQUFRLEdBQUcsRUFBRSxDQUFDO1lBQ1osS0FBSyxPQUFPLENBQUMsQ0FBQyxPQUFPLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtZQUNoRCxLQUFLLFVBQVUsQ0FBQyxDQUFDLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7WUFDdEQsT0FBTyxDQUFDLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUNwRCxDQUFDO0lBQ0gsQ0FBQztDQUNGIn0=
|
package/dist/tsdoc-metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fabasoad/sarif-to-slack",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3",
|
|
4
4
|
"description": "TypeScript library to send results of SARIF file to Slack webhook URL.",
|
|
5
5
|
"main": "dist/index.cjs",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -48,8 +48,8 @@
|
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
50
|
"@biomejs/biome": "2.2.0",
|
|
51
|
-
"@microsoft/api-documenter": "7.26.
|
|
52
|
-
"@microsoft/api-extractor": "7.52.
|
|
51
|
+
"@microsoft/api-documenter": "7.26.32",
|
|
52
|
+
"@microsoft/api-extractor": "7.52.11",
|
|
53
53
|
"@types/jest": "30.0.0",
|
|
54
54
|
"@types/uuid": "10.0.0",
|
|
55
55
|
"jest": "30.0.5",
|
|
@@ -45,19 +45,22 @@ export default abstract class CompactGroupByRepresentation extends Representatio
|
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
private composeCompactReport<K extends keyof Pick<Finding, 'level' | 'severity'>>(findings: Finding[], key: K): string {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
.
|
|
51
|
-
if (
|
|
52
|
-
|
|
48
|
+
const result: string[] = []
|
|
49
|
+
findings
|
|
50
|
+
.reduce((grouped: Map<Finding[K], Array<Finding>>, f: Finding): Map<Finding[K], Array<Finding>> => {
|
|
51
|
+
if (!grouped.get(f[key])) {
|
|
52
|
+
grouped.set(f[key], new Array<Finding>())
|
|
53
53
|
}
|
|
54
|
-
|
|
54
|
+
grouped.get(f[key])?.push(f)
|
|
55
|
+
return grouped
|
|
56
|
+
}, new Map<Finding[K], Array<Finding>>())
|
|
57
|
+
.forEach((v: Array<Finding>, k: Finding[K]): void => {
|
|
58
|
+
result.push(`${this.bold(this.extractEnumValue(key, k))}: ${v.length}`)
|
|
55
59
|
})
|
|
56
|
-
|
|
57
|
-
.join(', ')
|
|
60
|
+
return result.join(', ')
|
|
58
61
|
}
|
|
59
62
|
|
|
60
|
-
private extractEnumValue<K extends keyof Pick<Finding, 'level' | 'severity'>>(key: K, prop:
|
|
63
|
+
private extractEnumValue<K extends keyof Pick<Finding, 'level' | 'severity'>>(key: K, prop: Finding[K]): string {
|
|
61
64
|
switch (key) {
|
|
62
65
|
case 'level': return SecurityLevel[Number(prop)]
|
|
63
66
|
case 'severity': return SecuritySeverity[Number(prop)]
|