UNPKG

rivet-json-processor-plugin

Version:

A Rivet plugin to filter and count JSON items.

36 lines (35 loc) 1.05 kB
// 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 };