@@ -20,11 +20,11 @@ export interface EditorSessionEntry {
20
20
}
21
21
22
22
interface DeleteSessionRequest {
23
- socketPath : string
23
+ socketPath ? : string
24
24
}
25
25
26
26
interface AddSessionRequest {
27
- entry : EditorSessionEntry
27
+ entry ? : EditorSessionEntry
28
28
}
29
29
30
30
interface GetSessionResponse {
@@ -40,8 +40,8 @@ export async function makeEditorSessionManagerServer(
40
40
// eslint-disable-next-line import/no-named-as-default-member
41
41
router . use ( express . json ( ) )
42
42
43
- router . get ( "/session" , async ( req , res ) => {
44
- const filePath = req . query . filePath as string
43
+ router . get < { } , GetSessionResponse | string | unknown , undefined , { filePath ?: string } > ( "/session" , async ( req , res ) => {
44
+ const filePath = req . query . filePath
45
45
if ( ! filePath ) {
46
46
res . status ( HttpCode . BadRequest ) . send ( "filePath is required" )
47
47
return
@@ -55,22 +55,24 @@ export async function makeEditorSessionManagerServer(
55
55
}
56
56
} )
57
57
58
- router . post ( "/add-session" , async ( req , res ) => {
59
- const request = req . body as AddSessionRequest
60
- if ( ! request . entry ) {
58
+ router . post < { } , string , AddSessionRequest | undefined > ( "/add-session" , async ( req , res ) => {
59
+ const entry = req . body ?. entry
60
+ if ( ! entry ) {
61
61
res . status ( 400 ) . send ( "entry is required" )
62
+ return
62
63
}
63
- editorSessionManager . addSession ( request . entry )
64
- res . status ( 200 ) . send ( )
64
+ editorSessionManager . addSession ( entry )
65
+ res . status ( 200 ) . send ( "session added" )
65
66
} )
66
67
67
- router . post ( "/delete-session" , async ( req , res ) => {
68
- const request = req . body as DeleteSessionRequest
69
- if ( ! request . socketPath ) {
68
+ router . post < { } , string , DeleteSessionRequest | undefined > ( "/delete-session" , async ( req , res ) => {
69
+ const socketPath = req . body ?. socketPath
70
+ if ( ! socketPath ) {
70
71
res . status ( 400 ) . send ( "socketPath is required" )
72
+ return
71
73
}
72
- editorSessionManager . deleteSession ( request . socketPath )
73
- res . status ( 200 ) . send ( )
74
+ editorSessionManager . deleteSession ( socketPath )
75
+ res . status ( 200 ) . send ( "session deleted" )
74
76
} )
75
77
76
78
const server = http . createServer ( router )
0 commit comments