@bian-womp/spark-workbench 0.3.87 → 0.3.88
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 +72 -103
- 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 +72 -103
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkbenchContext.provider.d.ts","sourceRoot":"","sources":["../../../../../src/misc/context/WorkbenchContext.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAYjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAA2C,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAejG,wBAAgB,iBAAiB,CAAC,EAChC,EAAE,EACF,MAAM,EACN,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;IACD,EAAE,EAAE,iBAAiB,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,
|
|
1
|
+
{"version":3,"file":"WorkbenchContext.provider.d.ts","sourceRoot":"","sources":["../../../../../src/misc/context/WorkbenchContext.provider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAYjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAA2C,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAejG,wBAAgB,iBAAiB,CAAC,EAChC,EAAE,EACF,MAAM,EACN,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE;IACD,EAAE,EAAE,iBAAiB,CAAC;IACtB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B,2CAygCA"}
|
package/lib/esm/index.js
CHANGED
|
@@ -4473,125 +4473,94 @@ function WorkbenchProvider({ wb, runner, overrides, uiVersion, children, }) {
|
|
|
4473
4473
|
const offWbGraphUiChangedForLog = wb.on("graphUiChanged", add("workbench", "graphUiChanged"));
|
|
4474
4474
|
const offWbValidationChanged = wb.on("validationChanged", add("workbench", "validationChanged"));
|
|
4475
4475
|
// Ensure newly added nodes start as invalidated until first evaluation
|
|
4476
|
-
const
|
|
4477
|
-
|
|
4478
|
-
|
|
4479
|
-
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
|
|
4483
|
-
|
|
4484
|
-
|
|
4485
|
-
|
|
4486
|
-
|
|
4487
|
-
|
|
4488
|
-
|
|
4489
|
-
|
|
4490
|
-
|
|
4491
|
-
|
|
4492
|
-
await runner.copyOutputs(change.copyOutputsFrom, change.nodeId, { dry: isDry });
|
|
4493
|
-
}
|
|
4494
|
-
}
|
|
4495
|
-
if (change.type === "setInputs") {
|
|
4496
|
-
await runner.setInputs(change.nodeId, change.inputs, { dry: isDry });
|
|
4497
|
-
}
|
|
4498
|
-
}
|
|
4499
|
-
}
|
|
4500
|
-
if (event.commit) {
|
|
4501
|
-
await saveUiRuntimeMetadata(wb, runner);
|
|
4502
|
-
const history = await runner.commit(batchReason).catch((err) => {
|
|
4503
|
-
console.error("[WorkbenchContext] Error committing batch:", err);
|
|
4504
|
-
return undefined;
|
|
4505
|
-
});
|
|
4506
|
-
if (history)
|
|
4507
|
-
wb.setHistory(history);
|
|
4508
|
-
}
|
|
4509
|
-
}
|
|
4510
|
-
catch (err) {
|
|
4511
|
-
console.error("[WorkbenchContext] Error processing batch:", err);
|
|
4512
|
-
}
|
|
4476
|
+
const GRAPH_REASON_BY_CHANGE = {
|
|
4477
|
+
addNode: "add-node",
|
|
4478
|
+
removeNode: "remove-node",
|
|
4479
|
+
connect: "connect-edge",
|
|
4480
|
+
disconnect: "disconnect-edge",
|
|
4481
|
+
updateParams: "update-node-params",
|
|
4482
|
+
updateEdgeType: "update-edge-type",
|
|
4483
|
+
setInputs: "set-inputs",
|
|
4484
|
+
updateResolvedHandles: "update-resolved-handles",
|
|
4485
|
+
};
|
|
4486
|
+
const getGraphReason = (event) => {
|
|
4487
|
+
const changeType = event.change?.type;
|
|
4488
|
+
return (changeType && GRAPH_REASON_BY_CHANGE[changeType]) || "graph-changed";
|
|
4489
|
+
};
|
|
4490
|
+
const commitGraphChange = async (shouldCommit, reason, errorPrefix) => {
|
|
4491
|
+
if (!shouldCommit)
|
|
4513
4492
|
return;
|
|
4493
|
+
await saveUiRuntimeMetadata(wb, runner);
|
|
4494
|
+
const history = await runner.commit(reason).catch((err) => {
|
|
4495
|
+
console.error(errorPrefix, err);
|
|
4496
|
+
return undefined;
|
|
4497
|
+
});
|
|
4498
|
+
if (history)
|
|
4499
|
+
wb.setHistory(history);
|
|
4500
|
+
};
|
|
4501
|
+
const applyAddNodeEffects = async (nodeId, inputs, copyOutputsFrom, dry) => {
|
|
4502
|
+
if (inputs) {
|
|
4503
|
+
await runner.setInputs(nodeId, inputs, { dry });
|
|
4514
4504
|
}
|
|
4515
|
-
|
|
4516
|
-
|
|
4517
|
-
|
|
4518
|
-
|
|
4519
|
-
|
|
4520
|
-
|
|
4521
|
-
|
|
4522
|
-
|
|
4523
|
-
|
|
4524
|
-
|
|
4525
|
-
|
|
4526
|
-
|
|
4527
|
-
|
|
4528
|
-
|
|
4529
|
-
|
|
4530
|
-
|
|
4531
|
-
else if (changeType === "updateParams") {
|
|
4532
|
-
reason = "update-node-params";
|
|
4533
|
-
}
|
|
4534
|
-
else if (changeType === "updateEdgeType") {
|
|
4535
|
-
reason = "update-edge-type";
|
|
4536
|
-
}
|
|
4537
|
-
else if (changeType === "setInputs") {
|
|
4538
|
-
reason = "set-inputs";
|
|
4505
|
+
if (copyOutputsFrom) {
|
|
4506
|
+
await runner.copyOutputs(copyOutputsFrom, nodeId, { dry });
|
|
4507
|
+
}
|
|
4508
|
+
};
|
|
4509
|
+
const applyBatchGraphChange = async (event) => {
|
|
4510
|
+
if (event.change?.type !== "batch")
|
|
4511
|
+
return;
|
|
4512
|
+
const { changes } = event.change;
|
|
4513
|
+
const dry = !!event.dry;
|
|
4514
|
+
if (!runner.isRunning())
|
|
4515
|
+
return;
|
|
4516
|
+
const hasNodeOps = changes.some((c) => c.type === "addNode" && (c.inputs || c.copyOutputsFrom));
|
|
4517
|
+
await runner.update(event.def, { dry: dry || hasNodeOps });
|
|
4518
|
+
for (const change of changes) {
|
|
4519
|
+
if (change.type === "addNode") {
|
|
4520
|
+
await applyAddNodeEffects(change.nodeId, change.inputs, change.copyOutputsFrom, dry);
|
|
4539
4521
|
}
|
|
4540
|
-
else if (
|
|
4541
|
-
|
|
4522
|
+
else if (change.type === "setInputs") {
|
|
4523
|
+
await runner.setInputs(change.nodeId, change.inputs, { dry });
|
|
4542
4524
|
}
|
|
4543
4525
|
}
|
|
4526
|
+
};
|
|
4527
|
+
const applySingleGraphChange = async (event) => {
|
|
4528
|
+
if (event.change?.type === "batch")
|
|
4529
|
+
return;
|
|
4544
4530
|
if (event.change?.type === "setInputs") {
|
|
4545
4531
|
const { nodeId, inputs } = event.change;
|
|
4546
4532
|
await runner.setInputs(nodeId, inputs, { dry: event.dry });
|
|
4547
4533
|
}
|
|
4548
|
-
if (!runner.isRunning())
|
|
4549
|
-
|
|
4550
|
-
|
|
4551
|
-
|
|
4552
|
-
|
|
4553
|
-
|
|
4554
|
-
|
|
4555
|
-
|
|
4556
|
-
wb.setHistory(history);
|
|
4534
|
+
if (!runner.isRunning())
|
|
4535
|
+
return;
|
|
4536
|
+
if (event.change?.type === "addNode") {
|
|
4537
|
+
const { nodeId, inputs, copyOutputsFrom } = event.change;
|
|
4538
|
+
if (event.dry) {
|
|
4539
|
+
await runner.update(event.def, { dry: true });
|
|
4540
|
+
await applyAddNodeEffects(nodeId, inputs, copyOutputsFrom, true);
|
|
4541
|
+
return;
|
|
4557
4542
|
}
|
|
4543
|
+
await runner.update(event.def, { dry: !!inputs });
|
|
4544
|
+
await applyAddNodeEffects(nodeId, inputs, undefined, false);
|
|
4558
4545
|
return;
|
|
4559
4546
|
}
|
|
4547
|
+
if (event.change?.type !== "setInputs" && event.change?.type !== "updateResolvedHandles") {
|
|
4548
|
+
await runner.update(event.def, { dry: event.dry });
|
|
4549
|
+
}
|
|
4550
|
+
};
|
|
4551
|
+
const offWbGraphChangedForUpdate = wb.on("graphChanged", async (event) => {
|
|
4560
4552
|
try {
|
|
4561
|
-
if (event.change?.type === "
|
|
4562
|
-
|
|
4563
|
-
|
|
4564
|
-
|
|
4565
|
-
if (inputs) {
|
|
4566
|
-
await runner.setInputs(nodeId, inputs, { dry: true });
|
|
4567
|
-
}
|
|
4568
|
-
if (copyOutputsFrom) {
|
|
4569
|
-
await runner.copyOutputs(copyOutputsFrom, nodeId, { dry: true });
|
|
4570
|
-
}
|
|
4571
|
-
}
|
|
4572
|
-
else {
|
|
4573
|
-
await runner.update(event.def, { dry: !!inputs });
|
|
4574
|
-
if (inputs) {
|
|
4575
|
-
await runner.setInputs(nodeId, inputs, { dry: false });
|
|
4576
|
-
}
|
|
4577
|
-
}
|
|
4578
|
-
}
|
|
4579
|
-
else if (event.change?.type !== "setInputs" && event.change?.type !== "updateResolvedHandles") {
|
|
4580
|
-
await runner.update(event.def, { dry: event.dry });
|
|
4581
|
-
}
|
|
4582
|
-
if (event.commit) {
|
|
4583
|
-
await saveUiRuntimeMetadata(wb, runner);
|
|
4584
|
-
const history = await runner.commit(event.reason ?? reason).catch((err) => {
|
|
4585
|
-
console.error("[WorkbenchContext] Error committing after update:", err);
|
|
4586
|
-
return undefined;
|
|
4587
|
-
});
|
|
4588
|
-
if (history) {
|
|
4589
|
-
wb.setHistory(history);
|
|
4590
|
-
}
|
|
4553
|
+
if (event.change?.type === "batch") {
|
|
4554
|
+
await applyBatchGraphChange(event);
|
|
4555
|
+
await commitGraphChange(event.commit, event.reason ?? "batch", "[WorkbenchContext] Error committing batch:");
|
|
4556
|
+
return;
|
|
4591
4557
|
}
|
|
4558
|
+
const reason = getGraphReason(event);
|
|
4559
|
+
await applySingleGraphChange(event);
|
|
4560
|
+
await commitGraphChange(event.commit, event.reason ?? reason, "[WorkbenchContext] Error committing:");
|
|
4592
4561
|
}
|
|
4593
4562
|
catch (err) {
|
|
4594
|
-
console.error("[WorkbenchContext] Error
|
|
4563
|
+
console.error("[WorkbenchContext] Error processing graph change:", err);
|
|
4595
4564
|
}
|
|
4596
4565
|
});
|
|
4597
4566
|
const offWbSetValidation = wb.on("validationChanged", (r) => setValidation(r));
|