From 134b29ecb920a6ab792078c5233d52acccf7de25 Mon Sep 17 00:00:00 2001 From: karishmas6 Date: Wed, 5 Jun 2024 23:42:27 +0530 Subject: [PATCH] feat: recursively generate all possible combinations of selector nodes fromprovided stack --- server/src/workflow-management/selector.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/server/src/workflow-management/selector.ts b/server/src/workflow-management/selector.ts index 77df25bf..8beac10c 100644 --- a/server/src/workflow-management/selector.ts +++ b/server/src/workflow-management/selector.ts @@ -411,6 +411,16 @@ export const getSelectors = async (page: Page, coordinates: Coordinates) => { return value !== null && value !== undefined; } + function* combinations(stack: Node[][], path: Node[] = []): Generator { + if (stack.length > 0) { + for (let node of stack[0]) { + yield* combinations(stack.slice(1, stack.length), path.concat(node)); + } + } else { + yield path; + } + } +