diff --git a/app/src/lib/graph-interface/graph-manager.svelte.ts b/app/src/lib/graph-interface/graph-manager.svelte.ts
index 5605929..4dcfa63 100644
--- a/app/src/lib/graph-interface/graph-manager.svelte.ts
+++ b/app/src/lib/graph-interface/graph-manager.svelte.ts
@@ -88,7 +88,7 @@ export class GraphManager extends EventEmitter<{
]) as Graph["edges"];
const serialized = {
id: this.graph.id,
- settings: this.settings,
+ settings: $state.snapshot(this.settings),
nodes,
edges,
};
diff --git a/app/src/lib/settings/NestedSettings.svelte b/app/src/lib/settings/NestedSettings.svelte
index 8bb59c9..11c72b7 100644
--- a/app/src/lib/settings/NestedSettings.svelte
+++ b/app/src/lib/settings/NestedSettings.svelte
@@ -4,7 +4,7 @@
import type { NodeInput } from "@nodes/types";
import Input from "@nodes/ui";
- type Button = { type: "button"; label?: string };
+ type Button = { type: "button"; callback: () => void; label?: string };
type InputType = NodeInput | Button;
@@ -99,7 +99,7 @@
Array.isArray((node as any).options) &&
typeof internalValue === "number"
) {
- value[key] = (node as any).options[internalValue] as any;
+ value[key] = (node as any)?.options?.[internalValue] as any;
} else {
value[key] = internalValue as any;
}
@@ -110,11 +110,13 @@
{#if type[key].type === "button"}
-
diff --git a/app/src/lib/settings/app-settings.svelte.ts b/app/src/lib/settings/app-settings.svelte.ts
index 349a82b..1894452 100644
--- a/app/src/lib/settings/app-settings.svelte.ts
+++ b/app/src/lib/settings/app-settings.svelte.ts
@@ -89,6 +89,14 @@ export const AppSettingTypes = {
label: "Show Stem Lines",
value: false,
},
+ logging: {
+ title: "Logging",
+ logLevel: {
+ type: "select",
+ label: false,
+ options: ["info","warning","error"]
+ }
+ },
stressTest: {
title: "Stress Test",
amount: {
diff --git a/packages/registry/src/node-registry-client.ts b/packages/registry/src/node-registry-client.ts
index 4d27624..f416aed 100644
--- a/packages/registry/src/node-registry-client.ts
+++ b/packages/registry/src/node-registry-client.ts
@@ -37,7 +37,7 @@ export class RemoteNodeRegistry implements NodeRegistry {
constructor(
private url: string,
private cache?: AsyncCache,
- ) {}
+ ) { }
async fetchUsers() {
return this.fetchJson(`nodes/users.json`);
@@ -56,17 +56,17 @@ export class RemoteNodeRegistry implements NodeRegistry {
}
private async fetchNodeWasm(nodeId: `${string}/${string}/${string}`) {
- const cachedNode = this.cache?.get(nodeId);
- if(cachedNode){
+ const cachedNode = await this.cache?.get(nodeId);
+ if (cachedNode) {
return cachedNode;
}
- const node = this.fetchArrayBuffer(`nodes/${nodeId}.wasm`);
- if (node) {
- return node;
+ const node = await this.fetchArrayBuffer(`nodes/${nodeId}.wasm`);
+ if (!node) {
+ throw new Error(`Failed to load node wasm ${nodeId}`);
}
- throw new Error(`Failed to load node wasm ${nodeId}`);
+ return node;
}
async load(nodeIds: `${string}/${string}/${string}`[]) {