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}");
|
OnLogMe?.Invoke($"Auth node resolved. Base URL: {_authBaseUrl}, Auth Type: {_authType}");
|
||||||
return;
|
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
|
// Handle Function nodes — execute the inner flow
|
||||||
if (op is FunctionOperationViewModel funcOp)
|
if (op is FunctionOperationViewModel funcOp)
|
||||||
|
|||||||
@@ -234,6 +234,10 @@ namespace Nodify.Calculator
|
|||||||
case SystemOperations.END:
|
case SystemOperations.END:
|
||||||
info.Input.Add(""); // flow input only
|
info.Input.Add(""); // flow input only
|
||||||
break;
|
break;
|
||||||
|
case SystemOperations.DEBUG:
|
||||||
|
info.Input.Add("Value");
|
||||||
|
info.IsFlowNode = true;
|
||||||
|
break;
|
||||||
case SystemOperations.TAKE:
|
case SystemOperations.TAKE:
|
||||||
info.Input.Add("List");
|
info.Input.Add("List");
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -99,8 +99,18 @@ namespace Nodify.Calculator
|
|||||||
authNode.Input.Add("Username");
|
authNode.Input.Add("Username");
|
||||||
authNode.Input.Add("Password");
|
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(authNode);
|
||||||
systemNodes.Add(copynode);
|
systemNodes.Add(copynode);
|
||||||
|
systemNodes.Add(debugNode);
|
||||||
systemNodes.Add(begin);
|
systemNodes.Add(begin);
|
||||||
systemNodes.Add(ending);
|
systemNodes.Add(ending);
|
||||||
systemNodes.Add(debugAndCreateModels);
|
systemNodes.Add(debugAndCreateModels);
|
||||||
@@ -321,6 +331,25 @@ namespace Nodify.Calculator
|
|||||||
return funcOp;
|
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)
|
if (info.sysOp == SystemOperations.AUTH)
|
||||||
{
|
{
|
||||||
var authOp = new AuthOperationViewModel
|
var authOp = new AuthOperationViewModel
|
||||||
|
|||||||
@@ -18,7 +18,8 @@ namespace Nodify.Calculator
|
|||||||
PARSEJSON,
|
PARSEJSON,
|
||||||
SPLIT,
|
SPLIT,
|
||||||
AUTH,
|
AUTH,
|
||||||
FUNCTION
|
FUNCTION,
|
||||||
|
DEBUG
|
||||||
}
|
}
|
||||||
|
|
||||||
public class SystemOperationViewModel : OperationViewModel
|
public class SystemOperationViewModel : OperationViewModel
|
||||||
|
|||||||
Reference in New Issue
Block a user