@@ -253,9 +253,6 @@ export default function ServerlessWorkerDemo() {
253253 } ) ) ;
254254 } ;
255255
256- // Jump to the last step and start simulation
257- setActiveStep ( STEPS . length - 1 ) ;
258-
259256 setSim ( {
260257 running : true ,
261258 nodeStates : [ ...IDLE_NODES ] ,
@@ -355,9 +352,10 @@ export default function ServerlessWorkerDemo() {
355352 < div className = { styles . demo } >
356353 { /* ── Simulation: the main interactive area ── */ }
357354 < div className = { styles . columns } >
358- < div className = { styles . leftCol } >
359- < section className = { styles . section } >
360- < h3 className = { styles . sectionTitle } > Serverless Worker Flow</ h3 >
355+ < h3 className = { `${ styles . sectionTitle } ${ styles . row1Left } ` } > Serverless Worker Flow</ h3 >
356+ < div className = { styles . row1Right } />
357+
358+ < div className = { styles . row2Left } >
361359 < div className = { styles . flowDiagram } >
362360 { FLOW_NODES . map ( ( node , i ) => (
363361 < React . Fragment key = { i } >
@@ -383,10 +381,29 @@ export default function ServerlessWorkerDemo() {
383381 </ React . Fragment >
384382 ) ) }
385383 </ div >
386- </ section >
384+ </ div >
387385
388- < section className = { styles . section } >
389- < h3 className = { styles . sectionTitle } > Execution Log</ h3 >
386+ < div className = { styles . row2Right } >
387+ < button
388+ className = { `${ styles . executeBtn } ${ sim . running ? styles . executeBtnDisabled : '' } ` }
389+ onClick = { handleSimulate }
390+ disabled = { sim . running }
391+ >
392+ { sim . running ? (
393+ < >
394+ < span className = { styles . spinner } />
395+ Running...
396+ </ >
397+ ) : (
398+ 'Simulate Workflow'
399+ ) }
400+ </ button >
401+ </ div >
402+
403+ < h3 className = { `${ styles . sectionTitle } ${ styles . row3Left } ` } > Execution Log</ h3 >
404+ < h3 className = { `${ styles . sectionTitle } ${ styles . row3Right } ` } > Configuration</ h3 >
405+
406+ < div className = { styles . row4Left } >
390407 < div className = { styles . log } ref = { logScrollRef } >
391408 { sim . log . length === 0 ? (
392409 < div className = { styles . logPlaceholder } >
@@ -403,34 +420,13 @@ export default function ServerlessWorkerDemo() {
403420 </ div >
404421 ) )
405422 ) }
406- </ div >
407-
408- { sim . status === 'completed' && (
409- < div className = { styles . resultSuccess } > Workflow completed successfully.</ div >
410- ) }
411- </ section >
412- </ div >
413-
414- < div className = { styles . rightCol } >
415- < section className = { styles . section } >
416- < button
417- className = { `${ styles . executeBtn } ${ sim . running ? styles . executeBtnDisabled : '' } ` }
418- onClick = { handleSimulate }
419- disabled = { sim . running }
420- >
421- { sim . running ? (
422- < >
423- < span className = { styles . spinner } />
424- Running...
425- </ >
426- ) : (
427- 'Simulate Workflow'
423+ { sim . status === 'completed' && (
424+ < div className = { styles . resultSuccess } > Workflow completed successfully.</ div >
428425 ) }
429- </ button >
430- </ section >
426+ </ div >
427+ </ div >
431428
432- < section className = { styles . section } >
433- < h3 className = { styles . sectionTitle } > Configuration</ h3 >
429+ < div className = { styles . row4Right } >
434430 < div className = { styles . configGrid } >
435431 < ConfigField
436432 label = "Deployment Name"
@@ -458,8 +454,7 @@ export default function ServerlessWorkerDemo() {
458454 onChange = { handleFunctionNameChange }
459455 />
460456 </ div >
461- </ section >
462- </ div >
457+ </ div >
463458 </ div >
464459
465460 < Admonition type = "note" title = "Simulated logs" >
0 commit comments