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; }