diff --git a/src/components/trace/hat-script-graph.ts b/src/components/trace/hat-script-graph.ts
index 45ea965b03..b43dd2749e 100644
--- a/src/components/trace/hat-script-graph.ts
+++ b/src/components/trace/hat-script-graph.ts
@@ -34,6 +34,7 @@ import {
DeviceAction,
EventAction,
IfAction,
+ ManualScriptConfig,
ParallelAction,
RepeatAction,
SceneAction,
@@ -478,7 +479,20 @@ export class HatScriptGraph extends LitElement {
nofocus
>
${ensureArray(node.parallel).map((action, i) =>
- this.render_action_node(action, `${path}/parallel/${i}/0`)
+ "sequence" in action
+ ? html`
+ ${ensureArray((action as ManualScriptConfig).sequence).map(
+ (sAction, j) =>
+ this.render_action_node(
+ sAction,
+ `${path}/parallel/${i}/sequence/${j}`
+ )
+ )}
+
`
+ : this.render_action_node(
+ action,
+ `${path}/parallel/${i}/sequence/0`
+ )
)}
`;
diff --git a/src/data/script.ts b/src/data/script.ts
index ada068d25e..017a72cc88 100644
--- a/src/data/script.ts
+++ b/src/data/script.ts
@@ -214,7 +214,7 @@ export interface StopAction extends BaseAction {
}
export interface ParallelAction extends BaseAction {
- parallel: Action | Action[];
+ parallel: ManualScriptConfig | Action | (ManualScriptConfig | Action)[];
}
interface UnknownAction extends BaseAction {
diff --git a/src/data/trace.ts b/src/data/trace.ts
index ae9a4b0738..600d6c9466 100644
--- a/src/data/trace.ts
+++ b/src/data/trace.ts
@@ -185,7 +185,11 @@ export const getDataFromPath = (
const asNumber = Number(raw);
if (isNaN(asNumber)) {
- result = result[raw];
+ const tempResult = result[raw];
+ if (!tempResult && raw === "sequence") {
+ continue;
+ }
+ result = tempResult;
continue;
}