Skip to content

Commit 6fa5579

Browse files
authored
Merge pull request #55168 from software-mansion-labs/fix-onboarding-workspace-creation
Fix onboarding flow creating multiple workspaces
2 parents 63f0c9f + 0f24c17 commit 6fa5579

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

src/pages/OnboardingEmployees/BaseOnboardingEmployees.tsx

+9-2
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ function BaseOnboardingEmployees({shouldUseNativeStyles, route}: BaseOnboardingE
3232
const [onboardingCompanySize] = useOnyx(ONYXKEYS.ONBOARDING_COMPANY_SIZE);
3333
const [onboardingPurposeSelected] = useOnyx(ONYXKEYS.ONBOARDING_PURPOSE_SELECTED);
3434
const [onboardingPolicyID] = useOnyx(ONYXKEYS.ONBOARDING_POLICY_ID);
35+
const [onboardingAdminsChatReportID] = useOnyx(ONYXKEYS.ONBOARDING_ADMINS_CHAT_REPORT_ID);
3536
const [allPolicies] = useOnyx(ONYXKEYS.COLLECTION.POLICY);
3637

3738
const paidGroupPolicy = Object.values(allPolicies ?? {}).find(PolicyUtils.isPaidGroupPolicy);
@@ -70,9 +71,15 @@ function BaseOnboardingEmployees({shouldUseNativeStyles, route}: BaseOnboardingE
7071
}
7172
Welcome.setOnboardingCompanySize(selectedCompanySize);
7273

73-
const {adminsChatReportID, policyID} = Policy.createWorkspace(undefined, true, '', Policy.generatePolicyID(), CONST.ONBOARDING_CHOICES.MANAGE_TEAM);
74+
const shouldCreateWorkspace = !onboardingPolicyID && !paidGroupPolicy;
7475

75-
if (!onboardingPolicyID && !paidGroupPolicy) {
76+
// We need `adminsChatReportID` for `Report.completeOnboarding`, but at the same time, we don't want to call `Policy.createWorkspace` more than once.
77+
// If we have already created a workspace, we want to reuse the `onboardingAdminsChatReportID` and `onboardingPolicyID`.
78+
const {adminsChatReportID, policyID} = shouldCreateWorkspace
79+
? Policy.createWorkspace(undefined, true, '', Policy.generatePolicyID(), CONST.ONBOARDING_CHOICES.MANAGE_TEAM)
80+
: {adminsChatReportID: onboardingAdminsChatReportID, policyID: onboardingPolicyID};
81+
82+
if (shouldCreateWorkspace) {
7683
Welcome.setOnboardingAdminsChatReportID(adminsChatReportID);
7784
Welcome.setOnboardingPolicyID(policyID);
7885
}

0 commit comments

Comments
 (0)