fix session expiring on hotreload, wait for pocketbase client to fully initialize on auth
This commit is contained in:
@@ -10,6 +10,7 @@ export const fetchMe = createServerFn().handler(async () => {
|
||||
if (!data || !data.userAuthId) return { user: undefined, roles: [], metadata: {} };
|
||||
|
||||
try {
|
||||
await pbAdmin.authPromise;
|
||||
const result = await pbAdmin.getPlayerByAuthId(data.userAuthId);
|
||||
logger.info('Fetched player', result);
|
||||
return {
|
||||
|
||||
@@ -5,7 +5,7 @@ import { createTeamsService } from './services/teams';
|
||||
|
||||
class PocketBaseAdminClient {
|
||||
private pb: PocketBase;
|
||||
private authPromise: Promise<void>;
|
||||
public authPromise: Promise<void>;
|
||||
|
||||
constructor() {
|
||||
this.pb = new PocketBase(import.meta.env.VITE_POCKETBASE_URL);
|
||||
@@ -44,6 +44,8 @@ interface AdminClient extends
|
||||
PocketBaseAdminClient,
|
||||
ReturnType<typeof createPlayersService>,
|
||||
ReturnType<typeof createTeamsService>,
|
||||
ReturnType<typeof createTournamentsService> {}
|
||||
ReturnType<typeof createTournamentsService> {
|
||||
authPromise: Promise<void>;
|
||||
}
|
||||
|
||||
export const pbAdmin = new PocketBaseAdminClient() as AdminClient;
|
||||
|
||||
Reference in New Issue
Block a user