From 9aca2bb22383687340ea7b4cb1cc04f425123312 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Rafael=20Siqueira?= Date: Tue, 20 Jan 2026 14:51:20 -0300 Subject: [PATCH] fix when does not find a workspace --- api.saladeaula.digital/app/routes/users/orgs.py | 4 +++- .../app/middleware/workspace.ts | 11 +++++++---- .../app/routes/_index/route.tsx | 2 +- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/api.saladeaula.digital/app/routes/users/orgs.py b/api.saladeaula.digital/app/routes/users/orgs.py index bc59a54..543783a 100644 --- a/api.saladeaula.digital/app/routes/users/orgs.py +++ b/api.saladeaula.digital/app/routes/users/orgs.py @@ -31,6 +31,8 @@ def get_orgs( if 'DEFAULT' in x['sk']: preferred = x.get('org_id') else: - items.append(x) + # Post-migration (users): remove the following lines + _, org_id = x['sk'].split('#') + items.append(x | {'sk': f'ORG#{org_id}'}) return r | {'items': items} | ({'preferred_org_id': preferred} if preferred else {}) diff --git a/apps/admin.saladeaula.digital/app/middleware/workspace.ts b/apps/admin.saladeaula.digital/app/middleware/workspace.ts index 89ffff8..ff76880 100644 --- a/apps/admin.saladeaula.digital/app/middleware/workspace.ts +++ b/apps/admin.saladeaula.digital/app/middleware/workspace.ts @@ -1,4 +1,4 @@ -import { createContext, type LoaderFunctionArgs } from 'react-router' +import { createContext, redirect, type LoaderFunctionArgs } from 'react-router' import { userContext } from '@repo/auth/context' import { request as req } from '@repo/util/request' @@ -52,9 +52,12 @@ export const workspaceMiddleware = async ( return { ...props, id } }) as Workspace[] - const activeWorkspace = workspaces.find( - ({ id }) => id === org_id - ) as Workspace + const activeWorkspace = workspaces.find(({ id }) => id === org_id) + + if (!activeWorkspace) { + const { id } = workspaces[0] + throw redirect(`/${id}/main`) + } const org = (await req({ url: `/orgs/${activeWorkspace.id}`, diff --git a/apps/admin.saladeaula.digital/app/routes/_index/route.tsx b/apps/admin.saladeaula.digital/app/routes/_index/route.tsx index d95f210..f705cd7 100644 --- a/apps/admin.saladeaula.digital/app/routes/_index/route.tsx +++ b/apps/admin.saladeaula.digital/app/routes/_index/route.tsx @@ -28,7 +28,7 @@ export async function loader({ context, request }: Route.ActionArgs) { const { items = [], preferred_org_id } = (await r.json()) as Response const { sk } = preferred_org_id - ? (items.find((item) => item.sk.includes(preferred_org_id)) ?? items[0]) + ? (items.find((item) => item.sk === `ORG#${preferred_org_id}`) ?? items[0]) : items[0] if (sk) {