Added debug node for the debugging and logging
This commit is contained in:
@@ -428,6 +428,33 @@ namespace Nodify.Calculator
|
||||
OnLogMe?.Invoke($"Auth node resolved. Base URL: {_authBaseUrl}, Auth Type: {_authType}");
|
||||
return;
|
||||
}
|
||||
if (op is SystemOperationViewModel debugSysOp && debugSysOp.SystemOperationType == SystemOperations.DEBUG)
|
||||
{
|
||||
// Find the data input connection (non-triangle)
|
||||
var debugInputCons = connections.Where(c => c.Input.Operation == op && c.Input.Shape != ConnectorShape.Triangle).ToList();
|
||||
if (debugInputCons.Any())
|
||||
{
|
||||
var sourceConn = debugInputCons.First();
|
||||
var sourceNodeId = sourceConn.Output.Operation.NodeId;
|
||||
if (outputs.TryGetValue(sourceNodeId, out var debugVal))
|
||||
{
|
||||
OnLogMe?.Invoke($"[DEBUG] {debugVal}");
|
||||
}
|
||||
else if (sourceConn.Output.Value != null)
|
||||
{
|
||||
OnLogMe?.Invoke($"[DEBUG] {sourceConn.Output.Value}");
|
||||
}
|
||||
else
|
||||
{
|
||||
OnLogMe?.Invoke($"[DEBUG] (no value)", logType.Warning);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
OnLogMe?.Invoke($"[DEBUG] No input connected", logType.Warning);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
// Handle Function nodes — execute the inner flow
|
||||
if (op is FunctionOperationViewModel funcOp)
|
||||
|
||||
@@ -234,6 +234,10 @@ namespace Nodify.Calculator
|
||||
case SystemOperations.END:
|
||||
info.Input.Add(""); // flow input only
|
||||
break;
|
||||
case SystemOperations.DEBUG:
|
||||
info.Input.Add("Value");
|
||||
info.IsFlowNode = true;
|
||||
break;
|
||||
case SystemOperations.TAKE:
|
||||
info.Input.Add("List");
|
||||
break;
|
||||
|
||||
@@ -99,8 +99,18 @@ namespace Nodify.Calculator
|
||||
authNode.Input.Add("Username");
|
||||
authNode.Input.Add("Password");
|
||||
|
||||
var debugNode = new OperationInfoViewModel()
|
||||
{
|
||||
Title = "Debug",
|
||||
Type = OperationType.System,
|
||||
sysOp = SystemOperations.DEBUG,
|
||||
IsFlowNode = true
|
||||
};
|
||||
debugNode.Input.Add("Value");
|
||||
|
||||
systemNodes.Add(authNode);
|
||||
systemNodes.Add(copynode);
|
||||
systemNodes.Add(debugNode);
|
||||
systemNodes.Add(begin);
|
||||
systemNodes.Add(ending);
|
||||
systemNodes.Add(debugAndCreateModels);
|
||||
@@ -321,6 +331,25 @@ namespace Nodify.Calculator
|
||||
return funcOp;
|
||||
}
|
||||
|
||||
if (info.sysOp == SystemOperations.DEBUG)
|
||||
{
|
||||
var debugOp = new SystemOperationViewModel
|
||||
{
|
||||
Title = info.Title,
|
||||
SystemOperationType = SystemOperations.DEBUG
|
||||
};
|
||||
// Flow connectors
|
||||
debugOp.Input.Add(new ConnectorViewModel { Title = "", Shape = ConnectorShape.Triangle });
|
||||
debugOp.Output.Add(new ConnectorViewModel { Title = "", Shape = ConnectorShape.Triangle, IsInput = false });
|
||||
// Data input
|
||||
foreach (var inp in input)
|
||||
{
|
||||
inp.ConnectorColor = Color.LimeGreen;
|
||||
debugOp.Input.Add(inp);
|
||||
}
|
||||
return debugOp;
|
||||
}
|
||||
|
||||
if (info.sysOp == SystemOperations.AUTH)
|
||||
{
|
||||
var authOp = new AuthOperationViewModel
|
||||
|
||||
@@ -18,7 +18,8 @@ namespace Nodify.Calculator
|
||||
PARSEJSON,
|
||||
SPLIT,
|
||||
AUTH,
|
||||
FUNCTION
|
||||
FUNCTION,
|
||||
DEBUG
|
||||
}
|
||||
|
||||
public class SystemOperationViewModel : OperationViewModel
|
||||
|
||||
Reference in New Issue
Block a user