magic: added a way for running async functions in the top level jsx code
This commit is contained in:
+4
-2
@@ -9,6 +9,7 @@ import { StatusCodes } from 'http-status-codes'
|
||||
|
||||
import {
|
||||
createDatabase,
|
||||
createDatabaseWrapper,
|
||||
createProblem,
|
||||
createSolution,
|
||||
deleteProblem,
|
||||
@@ -39,6 +40,7 @@ import { initialDatabaseValue } from './db/example-data'
|
||||
|
||||
import { validateObjectKeys } from '../shared/utils'
|
||||
import { setupOAuth } from './auth'
|
||||
import { DatabaseConnection } from '../shared/database'
|
||||
|
||||
type SessionId = Opaque<string, string, 'session'>
|
||||
|
||||
@@ -47,7 +49,7 @@ export interface SessionService {
|
||||
getUserForSession(sid: SessionId): UserId | null
|
||||
}
|
||||
|
||||
export async function createApiRouter() {
|
||||
export async function createApiRouter(): Promise<[Router, DatabaseConnection]> {
|
||||
const sessionStore: Record<SessionId, UserId> = {}
|
||||
const sessions: SessionService = {
|
||||
createSession(userId: UserId) {
|
||||
@@ -428,5 +430,5 @@ export async function createApiRouter() {
|
||||
res.json(requestedUser)
|
||||
})
|
||||
|
||||
return r
|
||||
return [r, createDatabaseWrapper(db)]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user