# Keyboard hints now use render_keyboard_hints_modal() from cjm-fasthtml-keyboard-navigationstep_renderer
Phase 1 step renderer: Source Selection & Ordering with two-column layout and collapsible preview
Keyboard Configuration
Factory functions to create keyboard navigation zones, actions, and manager for Phase 1.
Keyboard Hints Modal
Tab Components
Main Step Renderer
render_selection_step
def render_selection_step(
sources:List, # Available source plugins
transcriptions:List, # Available transcription records
selected_sources:List, # Ordered selection
grouping_mode:str, # Grouping mode: "media_path" or "batch_id"
active_tab:str, # Active tab: "db" or "files"
urls:SelectionUrls, # URL bundle for selection routes
render_local_files_panel:Optional=None, # Render fn for Files tab content
sb_state:Any=None, # SourceBrowserRouterState for DB tab VC rendering
)->Any: # FastHTML component
Render Phase 1: Source Selection & Ordering step with two-column layout.