peregrine/app/components
pyr0ball 608e0fa922 fix(demo): block Vue navigation in demo mode; fix wizard gate ui sync
- ui_switcher.py: add explicit guard that forces pref=streamlit when
  DEMO_MODE=true, before the tier-downgrade check. Demo Vue SPA (#46)
  is not yet implemented, so navigating there produced a blank screen.
- app.py: call sync_ui_cookie inside wizard gate block before st.stop()
  so that cloud users with ui_preference=vue are redirected correctly
  even when the first-run wizard is still active. Previous behaviour
  called sync_ui_cookie after pg.run() which was never reached.
- demo/config/user.yaml: reset ui_preference to streamlit (belt-and-
  suspenders alongside the code guard).

Closes: demo blank-screen regression reported 2026-03-24.
2026-03-24 12:31:37 -07:00
..
paste_image_ui feat: paste/drag-drop image component, remove server-side Playwright capture button 2026-03-03 14:40:47 -08:00
__init__.py feat(linkedin): add shared LinkedIn import Streamlit widget 2026-03-13 10:32:23 -07:00
demo_toolbar.py fix(demo): remove reload antipattern, fix label consistency in demo_toolbar tests 2026-03-22 16:27:20 -07:00
linkedin_import.py fix(linkedin): update selectors for 2025 public DOM; surface login-wall limitation in UI 2026-03-13 19:47:21 -07:00
paste_image.py feat: paste/drag-drop image component, remove server-side Playwright capture button 2026-03-03 14:40:47 -08:00
ui_switcher.py fix(demo): block Vue navigation in demo mode; fix wizard gate ui sync 2026-03-24 12:31:37 -07:00