From 770eedf39d7da1fc9ee085d3a2db3a7e54cacb54 Mon Sep 17 00:00:00 2001 From: Sosthene Date: Mon, 25 Aug 2025 01:13:11 +0200 Subject: [PATCH] Add getMyProcesses --- src/service.ts | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/service.ts b/src/service.ts index 9a7742b..4458b97 100644 --- a/src/service.ts +++ b/src/service.ts @@ -662,7 +662,42 @@ export class Service { throw new Error('Failed to update process'); } } catch (error) { - throw new Error(`WASM error: ${error}`); + const errorMessage = error instanceof Error ? error.message : String(error || 'Unknown error'); + throw new Error(errorMessage); + } + } + + public async getMyProcesses(): Promise { + // If we're not paired yet, just skip it + let pairingProcessId = null; + try { + pairingProcessId = this.getPairingProcessId(); + } catch (e) { + return null; + } + if (!pairingProcessId) { + return null; + } + + try { + const newMyProcesses = new Set(); + // MyProcesses automatically contains pairing process + newMyProcesses.add(pairingProcessId); + for (const [processId, process] of Object.entries(this.processes)) { + try { + const roles = this.getRoles(process); + + if (roles && this.rolesContainsMember(roles, pairingProcessId)) { + newMyProcesses.add(processId); + } + } catch (e) { + console.error(e); + } + } + return Array.from(newMyProcesses); + } catch (e) { + console.error("Failed to get processes:", e); + return null; } }