@@ -326,12 +326,15 @@ defmodule LightningWeb.WorkflowLive.Helpers do
326326
327327 @ param_mappings % {
328328 direct: % {
329- "a" => "run"
329+ "a" => "run" ,
330+ "run" => "a"
330331 } ,
331332 mode_to_panel: % {
332333 "expand" => "editor" ,
333334 "workflow_input" => "run" ,
334- "settings" => "settings"
335+ "settings" => "settings" ,
336+ "editor" => "expand" ,
337+ "run" => "workflow_input"
335338 } ,
336339 preserved: [ "v" , "method" , "w-chat" , "j-chat" , "code" ] ,
337340 collaborative_only: [ "panel" ]
@@ -340,9 +343,14 @@ defmodule LightningWeb.WorkflowLive.Helpers do
340343 def legacy_editor_url ( params , live_action ) do
341344 base_url = legacy_base_url ( params , live_action )
342345
343- query_params = Map . drop ( params , [ "id" , "project_id" ] )
346+ final_params =
347+ params
348+ |> Map . drop ( [ "id" , "project_id" ] )
349+ |> Enum . reduce ( % { } , fn { key , value } , acc ->
350+ convert_param ( key , value , acc , params )
351+ end )
344352
345- build_url_with_params ( base_url , query_params )
353+ build_url_with_params ( base_url , final_params )
346354 end
347355
348356 defp legacy_base_url ( % { "project_id" => project_id } , :new ) do
@@ -428,18 +436,41 @@ defmodule LightningWeb.WorkflowLive.Helpers do
428436 Map . put ( acc , @ param_mappings . direct [ "a" ] , value )
429437 end
430438
439+ defp convert_param ( "run" , value , acc , _assigns ) do
440+ Map . put ( acc , @ param_mappings . direct [ "run" ] , value )
441+ end
442+
431443 defp convert_param ( "s" , value , acc , assigns ) do
432444 selection_type = determine_selection_type ( value , assigns )
433445 Map . put ( acc , selection_type , value )
434446 end
435447
448+ defp convert_param ( "job" , value , acc , _assigns ) do
449+ Map . put ( acc , "s" , value )
450+ end
451+
452+ defp convert_param ( "trigger" , value , acc , _assigns ) do
453+ Map . put ( acc , "s" , value )
454+ end
455+
456+ defp convert_param ( "edge" , value , acc , _assigns ) do
457+ Map . put ( acc , "s" , value )
458+ end
459+
436460 defp convert_param ( "m" , value , acc , _assigns ) do
437461 case Map . get ( @ param_mappings . mode_to_panel , value ) do
438462 nil -> acc
439463 panel -> Map . put ( acc , "panel" , panel )
440464 end
441465 end
442466
467+ defp convert_param ( "panel" , value , acc , _assigns ) do
468+ case Map . get ( @ param_mappings . mode_to_panel , value ) do
469+ nil -> acc
470+ panel -> Map . put ( acc , "m" , panel )
471+ end
472+ end
473+
443474 defp convert_param ( key , value , acc , _assigns ) do
444475 cond do
445476 key in @ param_mappings . collaborative_only ->
0 commit comments