Kaizen
Browse modulesInsightsinsights/sharedFunctions

Function: collectLeaves()

function collectLeaves(node: FilterNode): (
  | {
  field: string;
  kind: "condition";
  operator: "eq";
  value: string | number | boolean;
}
  | {
  field: string;
  kind: "condition";
  operator: "neq";
  value: string | number | boolean;
}
  | {
  field: string;
  kind: "condition";
  operator: "gt";
  value: string | number;
}
  | {
  field: string;
  kind: "condition";
  operator: "lt";
  value: string | number;
}
  | {
  field: string;
  kind: "condition";
  operator: "gte";
  value: string | number;
}
  | {
  field: string;
  kind: "condition";
  operator: "lte";
  value: string | number;
}
  | {
  field: string;
  kind: "condition";
  operator: "contains";
  value: string;
}
  | {
  field: string;
  kind: "condition";
  operator: "in";
  value: (string | number | boolean)[];
}
  | {
  field: string;
  kind: "condition";
  operator: "between";
  value: {
     from: string | number;
     to: string | number;
  };
}
  | {
  field: string;
  kind: "condition";
  operator: "isNull";
}
  | {
  field: string;
  kind: "condition";
  operator: "isNotNull";
})[];

Defined in: shared/insights/validate-definition.ts:255

Every condition leaf under node, in document order. Exported because the builder walks the same tree for its incomplete-value warnings — one walker, not one per lane.

Parameters

ParameterType
nodeFilterNode

Returns

( | { field: string; kind: "condition"; operator: "eq"; value: string | number | boolean; } | { field: string; kind: "condition"; operator: "neq"; value: string | number | boolean; } | { field: string; kind: "condition"; operator: "gt"; value: string | number; } | { field: string; kind: "condition"; operator: "lt"; value: string | number; } | { field: string; kind: "condition"; operator: "gte"; value: string | number; } | { field: string; kind: "condition"; operator: "lte"; value: string | number; } | { field: string; kind: "condition"; operator: "contains"; value: string; } | { field: string; kind: "condition"; operator: "in"; value: (string | number | boolean)[]; } | { field: string; kind: "condition"; operator: "between"; value: { from: string | number; to: string | number; }; } | { field: string; kind: "condition"; operator: "isNull"; } | { field: string; kind: "condition"; operator: "isNotNull"; })[]

On this page