n8n/packages/nodes-base/nodes/Transform/SplitOut/utils.ts

33 lines
625 B
TypeScript

import type { NodeExecutionHint } from 'n8n-workflow';
export class FieldsTracker {
fields: { [key: string]: boolean } = {};
add(key: string) {
if (this.fields[key] === undefined) {
this.fields[key] = false;
}
}
update(key: string, value: boolean) {
if (!this.fields[key] && value) {
this.fields[key] = true;
}
}
getHints() {
const hints: NodeExecutionHint[] = [];
for (const [field, value] of Object.entries(this.fields)) {
if (!value) {
hints.push({
message: `The field '${field}' wasn't found in any input item`,
location: 'outputPane',
});
}
}
return hints;
}
}