@bian-womp/spark-workbench 0.2.72 → 0.2.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.cjs +14 -9
- package/lib/cjs/index.cjs.map +1 -1
- package/lib/cjs/src/misc/context/WorkbenchContext.provider.d.ts.map +1 -1
- package/lib/esm/index.js +14 -9
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/src/misc/context/WorkbenchContext.provider.d.ts.map +1 -1
- package/package.json +4 -4
package/lib/cjs/index.cjs
CHANGED
|
@@ -280,7 +280,7 @@ class InMemoryWorkbench extends AbstractWorkbench {
|
|
|
280
280
|
}
|
|
281
281
|
// Position and selection APIs for React Flow bridge
|
|
282
282
|
setPositions(map, options) {
|
|
283
|
-
this.positions = { ...map };
|
|
283
|
+
this.positions = { ...this.positions, ...map };
|
|
284
284
|
this.emit("graphUiChanged", {
|
|
285
285
|
def: this.def,
|
|
286
286
|
change: { type: "moveNodes" },
|
|
@@ -2715,8 +2715,8 @@ function WorkbenchProvider({ wb, runner, registry, setRegistry, overrides, uiVer
|
|
|
2715
2715
|
}, [wb, registry, overrides?.getDefaultNodeSize]);
|
|
2716
2716
|
const updateEdgeType = React.useCallback((edgeId, typeId) => wb.updateEdgeType(edgeId, typeId), [wb]);
|
|
2717
2717
|
const triggerExternal = React.useCallback((nodeId, event) => runner.triggerExternal(nodeId, event), [runner]);
|
|
2718
|
-
// Helper to save runtime metadata
|
|
2719
|
-
const
|
|
2718
|
+
// Helper to save runtime metadata and UI state to extData
|
|
2719
|
+
const saveUiRuntimeMetadata = React.useCallback(async () => {
|
|
2720
2720
|
try {
|
|
2721
2721
|
const current = wb.getRuntimeState() ?? { nodes: {} };
|
|
2722
2722
|
const metadata = { nodes: { ...current.nodes } };
|
|
@@ -2729,8 +2729,13 @@ function WorkbenchProvider({ wb, runner, registry, setRegistry, overrides, uiVer
|
|
|
2729
2729
|
}
|
|
2730
2730
|
// Save cleaned metadata to workbench state
|
|
2731
2731
|
wb.setRuntimeState(metadata);
|
|
2732
|
-
//
|
|
2733
|
-
|
|
2732
|
+
// Get UI state
|
|
2733
|
+
const uiState = wb.getUIState();
|
|
2734
|
+
// Save both runtime and UI state to extData (merge to preserve both)
|
|
2735
|
+
await runner.setExtData?.({
|
|
2736
|
+
...(uiState ? { ui: uiState } : {}),
|
|
2737
|
+
runtime: metadata,
|
|
2738
|
+
});
|
|
2734
2739
|
}
|
|
2735
2740
|
catch (err) {
|
|
2736
2741
|
console.warn("[WorkbenchContext] Failed to save runtime metadata:", err);
|
|
@@ -3094,7 +3099,7 @@ function WorkbenchProvider({ wb, runner, registry, setRegistry, overrides, uiVer
|
|
|
3094
3099
|
}
|
|
3095
3100
|
if (!runner.isRunning()) {
|
|
3096
3101
|
if (event.commit) {
|
|
3097
|
-
await
|
|
3102
|
+
await saveUiRuntimeMetadata();
|
|
3098
3103
|
const history = await runner.commit(reason).catch((err) => {
|
|
3099
3104
|
console.error("[WorkbenchContext] Error committing:", err);
|
|
3100
3105
|
return undefined;
|
|
@@ -3128,7 +3133,7 @@ function WorkbenchProvider({ wb, runner, registry, setRegistry, overrides, uiVer
|
|
|
3128
3133
|
await runner.update(event.def, { dry: event.dry });
|
|
3129
3134
|
}
|
|
3130
3135
|
if (event.commit) {
|
|
3131
|
-
await
|
|
3136
|
+
await saveUiRuntimeMetadata();
|
|
3132
3137
|
const history = await runner
|
|
3133
3138
|
.commit(event.reason ?? reason)
|
|
3134
3139
|
.catch((err) => {
|
|
@@ -3149,7 +3154,7 @@ function WorkbenchProvider({ wb, runner, registry, setRegistry, overrides, uiVer
|
|
|
3149
3154
|
setSelectedNodeId(sel.nodes?.[0]);
|
|
3150
3155
|
setSelectedEdgeId(sel.edges?.[0]);
|
|
3151
3156
|
if (sel.commit) {
|
|
3152
|
-
await
|
|
3157
|
+
await saveUiRuntimeMetadata();
|
|
3153
3158
|
const history = await runner
|
|
3154
3159
|
.commit(sel.reason ?? "selection")
|
|
3155
3160
|
.catch((err) => {
|
|
@@ -3181,7 +3186,7 @@ function WorkbenchProvider({ wb, runner, registry, setRegistry, overrides, uiVer
|
|
|
3181
3186
|
reason = "viewport";
|
|
3182
3187
|
}
|
|
3183
3188
|
}
|
|
3184
|
-
await
|
|
3189
|
+
await saveUiRuntimeMetadata();
|
|
3185
3190
|
const history = await runner
|
|
3186
3191
|
.commit(event.reason ?? reason)
|
|
3187
3192
|
.catch((err) => {
|