1
+ import { createErr , createOk , type Result } from "option-t/plain_result" ;
1
2
import type { Socket } from "./socket-io.ts" ;
2
3
import {
3
4
type DataOf ,
4
5
type EventMap ,
5
6
type FailedResOf ,
6
7
isPageCommitError ,
7
8
type ListenEventMap ,
8
- type Result ,
9
9
type SuccessResOf ,
10
10
type TimeoutError ,
11
11
type UnexpectedError ,
@@ -62,25 +62,23 @@ export const wrap = (
62
62
typeof response . error . name === "string" &&
63
63
isPageCommitError ( { name : response . error . name } )
64
64
) {
65
- resolve ( { ok : false , value : response . error } ) ;
65
+ resolve ( createErr ( response . error ) ) ;
66
66
} else {
67
- resolve ( {
68
- ok : false ,
69
- value : { name : "UnexpectedError" , value : response . error } ,
70
- } ) ;
67
+ resolve (
68
+ createErr ( unexpectedError ( response . error ) ) ,
69
+ ) ;
71
70
}
72
71
} else if ( "data" in response ) {
73
- resolve ( { ok : true , value : response . data } ) ;
72
+ resolve ( createOk ( response . data ) ) ;
74
73
}
75
74
break ;
76
75
case "cursor" :
77
76
if ( "error" in response ) {
78
- resolve ( {
79
- ok : false ,
80
- value : { name : "UnexpectedError" , value : response . error } ,
81
- } ) ;
77
+ resolve (
78
+ createErr ( unexpectedError ( response . error ) ) ,
79
+ ) ;
82
80
} else if ( "data" in response ) {
83
- resolve ( { ok : true , value : response . data } ) ;
81
+ resolve ( createOk ( response . data ) ) ;
84
82
}
85
83
break ;
86
84
}
@@ -93,13 +91,12 @@ export const wrap = (
93
91
) ;
94
92
id = setTimeout ( ( ) => {
95
93
socket . off ( "disconnect" , onDisconnect ) ;
96
- resolve ( {
97
- ok : false ,
98
- value : {
94
+ resolve (
95
+ createErr ( {
99
96
name : "TimeoutError" ,
100
97
message : `Timeout: exceeded ${ timeout } ms` ,
101
- } ,
102
- } ) ;
98
+ } ) ,
99
+ ) ;
103
100
} , timeout ) ;
104
101
socket . once ( "disconnect" , onDisconnect ) ;
105
102
} ) ;
@@ -135,3 +132,8 @@ export const wrap = (
135
132
136
133
return { request, response } ;
137
134
} ;
135
+
136
+ const unexpectedError = ( value : unknown ) : UnexpectedError => ( {
137
+ name : "UnexpectedError" ,
138
+ value,
139
+ } ) ;
0 commit comments