rivet-json-processor-plugin
Version:
A Rivet plugin to filter and count JSON items.
36 lines (35 loc) • 1.05 kB
JavaScript
// src/index.ts
var specificItems = [
{ NOME: "Mini Kendo Light - Linear", REFERENCIA: "506" },
{ NOME: "Mini Kendo Lighting", REFERENCIA: "506" }
];
function src_default(Rivet) {
return {
processJSON(jsonString) {
try {
const data = JSON.parse(jsonString);
const filteredData = data.filter(
(item) => specificItems.some(
(specific) => specific.NOME === item.NOME && specific.REFERENCIA === item.REFERENCIA
)
);
const counts = {};
filteredData.forEach((item) => {
const key = `${item.NOME} (${item.REFERENCIA})`;
counts[key] = (counts[key] || 0) + 1;
});
const result = Object.entries(counts).map(([key, count]) => `${key}: ${count}`).join("\n");
return `Filtered Results:
${result}`;
} catch (error) {
if (error instanceof Error) {
return `Error processing JSON: ${error.message}`;
}
return `An unknown error occurred.`;
}
}
};
}
export {
src_default as default
};