diff --git a/ui/src/App.tsx b/ui/src/App.tsx
index 5d7f2ceb..019ed3b5 100644
--- a/ui/src/App.tsx
+++ b/ui/src/App.tsx
@@ -134,11 +134,17 @@ function boardRoutes() {
function CompanyRootRedirect() {
const { companies, selectedCompany, loading } = useCompany();
+ const { onboardingOpen } = useDialog();
if (loading) {
return
Loading...
;
}
+ // Keep the first-run onboarding mounted until it completes.
+ if (onboardingOpen) {
+ return ;
+ }
+
const targetCompany = selectedCompany ?? companies[0] ?? null;
if (!targetCompany) {
return ;
@@ -168,15 +174,16 @@ function UnprefixedBoardRedirect() {
);
}
-function NoCompaniesStartPage() {
+function NoCompaniesStartPage({ autoOpen = true }: { autoOpen?: boolean }) {
const { openOnboarding } = useDialog();
const opened = useRef(false);
useEffect(() => {
+ if (!autoOpen) return;
if (opened.current) return;
opened.current = true;
openOnboarding();
- }, [openOnboarding]);
+ }, [autoOpen, openOnboarding]);
return (