@pathscale/wss-adapter 1.0.10 → 1.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/wssAdapter.js +9 -4
- package/package.json +1 -1
- package/wssAdapter.ts +15 -4
package/dist/wssAdapter.js
CHANGED
|
@@ -121,7 +121,7 @@ var receiveHandler = function (event) {
|
|
|
121
121
|
var response = JSON.parse(event.data);
|
|
122
122
|
if (response.method || response.method === 0) {
|
|
123
123
|
console.log("app::".concat(((_a = store.pendingPromises[response.seq]) === null || _a === void 0 ? void 0 : _a.methodName) || response.method, " got:"), response);
|
|
124
|
-
var error = response.method === 0;
|
|
124
|
+
var error = response.method === 0 || response.params.error;
|
|
125
125
|
var done = response.method.toString().endsWith('1');
|
|
126
126
|
var resolve = function (payload, code) {
|
|
127
127
|
var executor = store.pendingPromises[response.seq];
|
|
@@ -139,7 +139,6 @@ var receiveHandler = function (event) {
|
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
else if (response.resource) {
|
|
142
|
-
console.log("app::".concat(response.resource, " got:"), response);
|
|
143
142
|
var resource = response.resource.split('@')[0];
|
|
144
143
|
//@ts-ignore
|
|
145
144
|
var executor = store.subscriptions.app[resource];
|
|
@@ -147,20 +146,26 @@ var receiveHandler = function (event) {
|
|
|
147
146
|
}
|
|
148
147
|
};
|
|
149
148
|
function onError(response) {
|
|
150
|
-
var _a;
|
|
149
|
+
var _a, _b;
|
|
151
150
|
var errorCode = response.params.error;
|
|
152
151
|
var errorMsg = (_a = store.errors[errorCode]) !== null && _a !== void 0 ? _a : errorCode;
|
|
153
152
|
if ([45349638, 45349637].includes(errorCode)) {
|
|
154
153
|
store.sequence.decreaseSeq();
|
|
155
|
-
console.log('seq has been decreased because of error');
|
|
156
154
|
}
|
|
157
155
|
// if there was only one executor saved in store.pendingPromises, then it was that request that failed
|
|
158
156
|
if (Object.keys(store.pendingPromises).length === 1) {
|
|
159
157
|
var onlyKey = Number.parseInt(Object.keys(store.pendingPromises)[0]);
|
|
160
158
|
clearTimeout(store.pendingPromises[onlyKey].toHandler);
|
|
161
159
|
store.pendingPromises[onlyKey].reject(new Error(errorMsg));
|
|
160
|
+
console.error(store.pendingPromises[onlyKey].methodName + ' failed');
|
|
162
161
|
delete store.pendingPromises[onlyKey];
|
|
163
162
|
}
|
|
163
|
+
else if (response.seq > 1 && store.pendingPromises[response.seq]) {
|
|
164
|
+
var executor = store.pendingPromises[response.seq];
|
|
165
|
+
clearTimeout(executor.toHandler);
|
|
166
|
+
executor.reject(new Error("".concat((_b = executor.methodName) !== null && _b !== void 0 ? _b : '', ": ").concat(errorCode || JSON.stringify(response.params))));
|
|
167
|
+
delete store.pendingPromises[response.seq];
|
|
168
|
+
}
|
|
164
169
|
// if there were more than one, there is no way of knowing who failed
|
|
165
170
|
else {
|
|
166
171
|
throw new Error('Unkown request failed');
|
package/package.json
CHANGED
package/wssAdapter.ts
CHANGED
|
@@ -160,7 +160,7 @@ const receiveHandler = (event: { data: string }) => {
|
|
|
160
160
|
response
|
|
161
161
|
)
|
|
162
162
|
|
|
163
|
-
const error = response.method === 0
|
|
163
|
+
const error = response.method === 0 || response.params.error
|
|
164
164
|
const done = response.method.toString().endsWith('1')
|
|
165
165
|
|
|
166
166
|
const resolve = (payload: unknown, code: number) => {
|
|
@@ -178,7 +178,6 @@ const receiveHandler = (event: { data: string }) => {
|
|
|
178
178
|
resolve(response, code)
|
|
179
179
|
}
|
|
180
180
|
} else if (response.resource) {
|
|
181
|
-
console.log(`app::${response.resource} got:`, response)
|
|
182
181
|
const resource = response.resource.split('@')[0]
|
|
183
182
|
//@ts-ignore
|
|
184
183
|
const executor = store.subscriptions.app[resource] as (
|
|
@@ -197,6 +196,7 @@ interface IResponse {
|
|
|
197
196
|
params: {
|
|
198
197
|
error: number
|
|
199
198
|
}
|
|
199
|
+
seq: number
|
|
200
200
|
}
|
|
201
201
|
|
|
202
202
|
function onError(response: IResponse) {
|
|
@@ -205,7 +205,6 @@ function onError(response: IResponse) {
|
|
|
205
205
|
|
|
206
206
|
if ([45349638, 45349637].includes(errorCode)) {
|
|
207
207
|
store.sequence.decreaseSeq()
|
|
208
|
-
console.log('seq has been decreased because of error')
|
|
209
208
|
}
|
|
210
209
|
|
|
211
210
|
// if there was only one executor saved in store.pendingPromises, then it was that request that failed
|
|
@@ -213,9 +212,21 @@ function onError(response: IResponse) {
|
|
|
213
212
|
const onlyKey = Number.parseInt(Object.keys(store.pendingPromises)[0])
|
|
214
213
|
clearTimeout(store.pendingPromises[onlyKey].toHandler)
|
|
215
214
|
store.pendingPromises[onlyKey].reject(new Error(errorMsg))
|
|
215
|
+
console.error(store.pendingPromises[onlyKey].methodName + ' failed')
|
|
216
216
|
delete store.pendingPromises[onlyKey]
|
|
217
|
+
} else if (response.seq > 1 && store.pendingPromises[response.seq]) {
|
|
218
|
+
const executor = store.pendingPromises[response.seq]
|
|
219
|
+
|
|
220
|
+
clearTimeout(executor.toHandler)
|
|
221
|
+
executor.reject(
|
|
222
|
+
new Error(
|
|
223
|
+
`${executor.methodName ?? ''}: ${
|
|
224
|
+
errorCode || JSON.stringify(response.params)
|
|
225
|
+
}`
|
|
226
|
+
)
|
|
227
|
+
)
|
|
228
|
+
delete store.pendingPromises[response.seq]
|
|
217
229
|
}
|
|
218
|
-
|
|
219
230
|
// if there were more than one, there is no way of knowing who failed
|
|
220
231
|
else {
|
|
221
232
|
throw new Error('Unkown request failed')
|