@based/server 9.2.7 → 10.0.0

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.
Files changed (74) hide show
  1. package/dist/auth/index.js +1 -1
  2. package/dist/auth/index.js.map +1 -1
  3. package/dist/channel/destroy.js +3 -1
  4. package/dist/channel/destroy.js.map +1 -1
  5. package/dist/channel/start.js +10 -3
  6. package/dist/channel/start.js.map +1 -1
  7. package/dist/channel/subscribe.js +13 -1
  8. package/dist/channel/subscribe.js.map +1 -1
  9. package/dist/channel/types.d.ts +1 -0
  10. package/dist/channel/types.js.map +1 -1
  11. package/dist/channel/unsub.js +24 -3
  12. package/dist/channel/unsub.js.map +1 -1
  13. package/dist/functions/index.d.ts +1 -1
  14. package/dist/functions/index.js +50 -20
  15. package/dist/functions/index.js.map +1 -1
  16. package/dist/incoming/http/fakeWs/function.js +8 -6
  17. package/dist/incoming/http/fakeWs/function.js.map +1 -1
  18. package/dist/incoming/http/fakeWs/handleBinary.js +4 -3
  19. package/dist/incoming/http/fakeWs/handleBinary.js.map +1 -1
  20. package/dist/incoming/http/fakeWs/query.js +6 -5
  21. package/dist/incoming/http/fakeWs/query.js.map +1 -1
  22. package/dist/incoming/http/handleRequest.js.map +1 -1
  23. package/dist/incoming/http/index.js +2 -0
  24. package/dist/incoming/http/index.js.map +1 -1
  25. package/dist/incoming/http/pathMatcher.d.ts +1 -1
  26. package/dist/incoming/http/pathMatcher.js +16 -1
  27. package/dist/incoming/http/pathMatcher.js.map +1 -1
  28. package/dist/incoming/http/payloadParser.d.ts +1 -1
  29. package/dist/incoming/http/payloadParser.js +1 -0
  30. package/dist/incoming/http/payloadParser.js.map +1 -1
  31. package/dist/incoming/http/query.js +3 -2
  32. package/dist/incoming/http/query.js.map +1 -1
  33. package/dist/incoming/upgrade.js +1 -0
  34. package/dist/incoming/upgrade.js.map +1 -1
  35. package/dist/incoming/ws/auth.js +4 -6
  36. package/dist/incoming/ws/auth.js.map +1 -1
  37. package/dist/incoming/ws/channelPublish.js +4 -3
  38. package/dist/incoming/ws/channelPublish.js.map +1 -1
  39. package/dist/incoming/ws/channelSubscribe.js +6 -5
  40. package/dist/incoming/ws/channelSubscribe.js.map +1 -1
  41. package/dist/incoming/ws/function.js +8 -5
  42. package/dist/incoming/ws/function.js.map +1 -1
  43. package/dist/incoming/ws/get.js +8 -7
  44. package/dist/incoming/ws/get.js.map +1 -1
  45. package/dist/incoming/ws/index.d.ts +2 -2
  46. package/dist/incoming/ws/index.js +14 -12
  47. package/dist/incoming/ws/index.js.map +1 -1
  48. package/dist/incoming/ws/query.js +6 -5
  49. package/dist/incoming/ws/query.js.map +1 -1
  50. package/dist/incoming/ws/stream.d.ts +1 -1
  51. package/dist/incoming/ws/stream.js +29 -28
  52. package/dist/incoming/ws/stream.js.map +1 -1
  53. package/dist/protocol.d.ts +25 -14
  54. package/dist/protocol.js +312 -158
  55. package/dist/protocol.js.map +1 -1
  56. package/dist/query/destroy.js +2 -1
  57. package/dist/query/destroy.js.map +1 -1
  58. package/dist/query/send.d.ts +1 -1
  59. package/dist/query/send.js +29 -7
  60. package/dist/query/send.js.map +1 -1
  61. package/dist/query/start/error.js +4 -1
  62. package/dist/query/start/error.js.map +1 -1
  63. package/dist/query/start/update.js +22 -4
  64. package/dist/query/start/update.js.map +1 -1
  65. package/dist/query/subscribe.js +15 -5
  66. package/dist/query/subscribe.js.map +1 -1
  67. package/dist/query/types.d.ts +1 -0
  68. package/dist/query/unsub.js +32 -8
  69. package/dist/query/unsub.js.map +1 -1
  70. package/dist/sendError.js +4 -4
  71. package/dist/sendError.js.map +1 -1
  72. package/dist/sendHttpResponse.js +6 -2
  73. package/dist/sendHttpResponse.js.map +1 -1
  74. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"destroy.js","sourceRoot":"","sources":["../../src/query/destroy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAExD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAAmB,EACnB,OAAyB,EACzB,EAAE;IACF,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,IAAI,CAAC,IAAI,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;QAC1E,OAAM;IACR,CAAC;IACD,MAAM,kBAAkB,GACtB,IAAI,CAAC,kBAAkB,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAA;IAC7E,OAAO,CAAC,eAAe,GAAG,kBAAkB,CAAA;IAC5C,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAA;IAEpD,IAAI,SAAS,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QACvC,MAAM,CAAC,eAAe,GAAG,SAAS,CAAA;IACpC,CAAC;AACH,CAAC,CAAA;AAED,yDAAyD;AACzD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAmB,EAAE,EAAU,EAAE,EAAE;IAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEhD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;QAClD,OAAM;IACR,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACjD,OAAM;IACR,CAAC;IAED,IACE,GAAG,CAAC,OAAO,CAAC,IAAI;QAChB,GAAG,CAAC,sBAAsB,CAAC,IAAI;QAC/B,GAAG,CAAC,UAAU,EAAE,IAAI,EACpB,CAAC;QACD,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;YACxB,GAAG,CAAC,eAAe,GAAG,IAAI,CAAA;YAC1B,OAAO,CAAC,IAAI,CACV,mDAAmD,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,EACvE,GAAG,CAAC,OAAO,CACZ,CAAA;QACH,CAAC;QACD,OAAM;IACR,CAAC;IAED,IAAI,GAAG,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QACjC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC/B,UAAU,CAAC,MAAM,CAAC,CAAA;IACpB,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"destroy.js","sourceRoot":"","sources":["../../src/query/destroy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAExD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAAmB,EACnB,OAAyB,EACzB,EAAE;IACF,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,IAAI,CAAC,IAAI,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;QAC1E,OAAM;IACR,CAAC;IACD,MAAM,kBAAkB,GACtB,IAAI,CAAC,kBAAkB,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAA;IAC7E,OAAO,CAAC,eAAe,GAAG,kBAAkB,CAAA;IAC5C,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAA;IAEpD,IAAI,SAAS,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QACvC,MAAM,CAAC,eAAe,GAAG,SAAS,CAAA;IACpC,CAAC;AACH,CAAC,CAAA;AAED,yDAAyD;AACzD,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAmB,EAAE,EAAU,EAAE,EAAE;IAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEhD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;QAClD,OAAM;IACR,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QACjD,OAAM;IACR,CAAC;IAED,IACE,GAAG,CAAC,OAAO,CAAC,IAAI;QAChB,GAAG,CAAC,sBAAsB,CAAC,IAAI;QAC/B,GAAG,CAAC,UAAU,EAAE,IAAI;QACpB,GAAG,CAAC,UAAU,EAAE,IAAI,EACpB,CAAC;QACD,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;YACxB,GAAG,CAAC,eAAe,GAAG,IAAI,CAAA;YAC1B,OAAO,CAAC,IAAI,CACV,mDAAmD,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EAAE,EACvE,GAAG,CAAC,OAAO,CACZ,CAAA;QACH,CAAC;QACD,OAAM;IACR,CAAC;IAED,IAAI,GAAG,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;QACjC,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC/B,UAAU,CAAC,MAAM,CAAC,CAAA;IACpB,CAAC;AACH,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { Context, WebSocketSession, HttpSession } from '@based/functions';
2
2
  import { BasedServer } from '../server.js';
3
3
  import { ActiveObservable, ObservableError } from './types.js';
4
- export declare const sendObsWs: (ctx: Context<WebSocketSession>, buffer: Uint8Array, obs: ActiveObservable) => void;
4
+ export declare const sendObsWs: (ctx: Context<WebSocketSession>, buffer: Uint8Array, obs: ActiveObservable, isDiff: boolean) => void;
5
5
  export declare const sendObsGetError: (server: BasedServer, ctx: Context<WebSocketSession | HttpSession>, id: number, err: ObservableError) => void;
@@ -1,17 +1,39 @@
1
- import { updateId } from '../protocol.js';
1
+ import { updateId, cacheV2toV1, diffV2toV1 } from '../protocol.js';
2
2
  import { destroyObs } from './destroy.js';
3
3
  import { sendErrorData } from '../sendError.js';
4
- export const sendObsWs = (ctx, buffer, obs) => {
4
+ export const sendObsWs = (ctx, buffer, obs, isDiff) => {
5
5
  if (!ctx.session) {
6
6
  return;
7
7
  }
8
- if (obs.reusedCache) {
9
- const prevId = updateId(buffer, obs.id);
10
- ctx.session.ws.send(buffer, true, false);
11
- buffer.set(prevId, 4);
8
+ if (ctx.session.v < 2) {
9
+ if (obs.reusedCache) {
10
+ const prevId = updateId(buffer, obs.id);
11
+ if (isDiff) {
12
+ ctx.session.ws.send(diffV2toV1(buffer), true, false);
13
+ }
14
+ else {
15
+ ctx.session.ws.send(cacheV2toV1(buffer), true, false);
16
+ }
17
+ buffer.set(prevId, 4);
18
+ }
19
+ else {
20
+ if (isDiff) {
21
+ ctx.session.ws.send(diffV2toV1(buffer), true, false);
22
+ }
23
+ else {
24
+ ctx.session.ws.send(cacheV2toV1(buffer), true, false);
25
+ }
26
+ }
12
27
  }
13
28
  else {
14
- ctx.session.ws.send(buffer, true, false);
29
+ if (obs.reusedCache) {
30
+ const prevId = updateId(buffer, obs.id);
31
+ ctx.session.ws.send(buffer, true, false);
32
+ buffer.set(prevId, 4);
33
+ }
34
+ else {
35
+ ctx.session.ws.send(buffer, true, false);
36
+ }
15
37
  }
16
38
  };
17
39
  export const sendObsGetError = (server, ctx, id, err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/query/send.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,GAA8B,EAC9B,MAAkB,EAClB,GAAqB,EACrB,EAAE;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACjB,OAAM;IACR,CAAC;IACD,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;QACvC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACxC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IACvB,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAC1C,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,MAAmB,EACnB,GAA4C,EAC5C,EAAU,EACV,GAAoB,EACpB,EAAE;IACF,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACvB,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/query/send.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAElE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,GAA8B,EAC9B,MAAkB,EAClB,GAAqB,EACrB,MAAe,EACf,EAAE;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACjB,OAAM;IACR,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;YACvC,IAAI,MAAM,EAAE,CAAC;gBACX,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;YACvD,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,EAAE,CAAC;gBACX,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;YACtD,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;YACvD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;YACvC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;YACxC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QACvB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,MAAmB,EACnB,GAA4C,EAC5C,EAAU,EACV,GAAoB,EACpB,EAAE;IACF,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACvB,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AACxB,CAAC,CAAA"}
@@ -24,7 +24,10 @@ export const errorListener = (server, obs, err) => {
24
24
  ? { ...err, observableId: obs.id }
25
25
  : err;
26
26
  if (obs.clients.size) {
27
- server.uwsApp.publish(String(obs.id), encodeErrorResponse(valueToBuffer(obs.error)), true, false);
27
+ server.uwsApp.publish(String(obs.id), encodeErrorResponse(valueToBuffer(obs.error, true)), true, false);
28
+ }
29
+ if (obs.oldClients?.size) {
30
+ server.uwsApp.publish(String(obs.id) + '-v1', encodeErrorResponse(valueToBuffer(obs.error, true)), true, false);
28
31
  }
29
32
  // TODO: Change this make it one error handler
30
33
  if (obs.functionObserveClients.size) {
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/query/start/error.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,MAAmB,EACnB,GAAqB,EACrB,GAA4B,EAC5B,EAAE;IACF,OAAO,GAAG,CAAC,KAAK,CAAA;IAChB,OAAO,GAAG,CAAC,SAAS,CAAA;IACpB,OAAO,GAAG,CAAC,QAAQ,CAAA;IACnB,OAAO,GAAG,CAAC,gBAAgB,CAAA;IAE3B,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA;IACrB,GAAG,CAAC,WAAW,GAAG,KAAK,CAAA;IAEvB,GAAG,CAAC,KAAK;QACP,GAAG,YAAY,KAAK;YAClB,CAAC,CAAC,WAAW,CACX,MAAM,EACN;gBACE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;aACpE,EACD,cAAc,CAAC,aAAa,EAC5B;gBACE,GAAG;gBACH,YAAY,EAAE,GAAG,CAAC,EAAE;gBACpB,KAAK,EAAE;oBACL,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,OAAO;iBACd;aACF,CACF;YACD,CAAC,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,CAAC,EAAE;gBAC3B,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE;gBAClC,CAAC,CAAC,GAAG,CAAA;IAEX,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EACd,mBAAmB,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAC7C,IAAI,EACJ,KAAK,CACN,CAAA;IACH,CAAC;IAED,8CAA8C;IAC9C,IAAI,GAAG,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;QACpC,GAAG,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC9C,QAAQ,CACN,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,gBAAgB,EACpB,GAAG,CAAC,SAAS,CACd,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAA;QACjC,OAAO,GAAG,CAAC,UAAU,CAAA;QACrB,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../../src/query/start/error.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,MAAmB,EACnB,GAAqB,EACrB,GAA4B,EAC5B,EAAE;IACF,OAAO,GAAG,CAAC,KAAK,CAAA;IAChB,OAAO,GAAG,CAAC,SAAS,CAAA;IACpB,OAAO,GAAG,CAAC,QAAQ,CAAA;IACnB,OAAO,GAAG,CAAC,gBAAgB,CAAA;IAE3B,GAAG,CAAC,SAAS,GAAG,KAAK,CAAA;IACrB,GAAG,CAAC,WAAW,GAAG,KAAK,CAAA;IAEvB,GAAG,CAAC,KAAK;QACP,GAAG,YAAY,KAAK;YAClB,CAAC,CAAC,WAAW,CACT,MAAM,EACN;gBACE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;aACpE,EACD,cAAc,CAAC,aAAa,EAC5B;gBACE,GAAG;gBACH,YAAY,EAAE,GAAG,CAAC,EAAE;gBACpB,KAAK,EAAE;oBACL,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,OAAO;iBACd;aACF,CACF;YACH,CAAC,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,CAAC,EAAE;gBAC3B,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE;gBAClC,CAAC,CAAC,GAAG,CAAA;IAEX,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EACd,mBAAmB,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EACnD,IAAI,EACJ,KAAK,CACN,CAAA;IACH,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;QACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CACnB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EACtB,mBAAmB,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EACnD,IAAI,EACJ,KAAK,CACN,CAAA;IACH,CAAC;IAED,8CAA8C;IAC9C,IAAI,GAAG,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC;QACpC,GAAG,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC9C,QAAQ,CACN,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,gBAAgB,EACpB,GAAG,CAAC,SAAS,CACd,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QACnB,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAA;QACjC,OAAO,GAAG,CAAC,UAAU,CAAA;QACrB,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import { updateId, valueToBuffer, encodeObservableResponse, encodeObservableDiffResponse, } from '../../protocol.js';
1
+ import { updateId, valueToBuffer, encodeObservableResponse, encodeObservableDiffResponse, cacheV2toV1, diffV2toV1, } from '../../protocol.js';
2
2
  import { deepCopy } from '@saulx/utils';
3
3
  import { hashObjectIgnoreKeyOrder, hash } from '@saulx/hash';
4
4
  import { createPatch } from '@saulx/diff';
@@ -38,9 +38,12 @@ export const updateListener = (server, obs, data, checksum, reusedData, diff, pr
38
38
  }
39
39
  else {
40
40
  obs.reusedCache = false;
41
- const buff = valueToBuffer(data);
41
+ const buff = valueToBuffer(data, true);
42
42
  const t = typeof data;
43
- if (t === 'string' || t === 'number' || t === 'boolean') {
43
+ if (t === 'string' ||
44
+ t === 'number' ||
45
+ t === 'boolean' ||
46
+ data instanceof Uint8Array) {
44
47
  obs.rawData = data;
45
48
  obs.previousChecksum = obs.checksum;
46
49
  }
@@ -75,7 +78,7 @@ export const updateListener = (server, obs, data, checksum, reusedData, diff, pr
75
78
  ;
76
79
  [encodedData, isDeflate] = encodeObservableResponse(obs.id, checksum, buff);
77
80
  if (diff) {
78
- const diffBuff = valueToBuffer(diff);
81
+ const diffBuff = valueToBuffer(diff, true);
79
82
  const encodedDiffData = encodeObservableDiffResponse(obs.id, checksum, obs.previousChecksum, diffBuff);
80
83
  obs.diffCache = encodedDiffData;
81
84
  }
@@ -90,6 +93,7 @@ export const updateListener = (server, obs, data, checksum, reusedData, diff, pr
90
93
  if (obs.reusedCache) {
91
94
  prevDiffId = updateId(obs.diffCache, obs.id);
92
95
  }
96
+ // hello
93
97
  server.uwsApp.publish(String(obs.id), obs.diffCache, true, false);
94
98
  }
95
99
  else {
@@ -99,6 +103,20 @@ export const updateListener = (server, obs, data, checksum, reusedData, diff, pr
99
103
  server.uwsApp.publish(String(obs.id), encodedData, true, false);
100
104
  }
101
105
  }
106
+ if (obs.oldClients?.size) {
107
+ if (obs.diffCache) {
108
+ if (obs.reusedCache) {
109
+ prevDiffId = updateId(obs.diffCache, obs.id);
110
+ }
111
+ server.uwsApp.publish(String(obs.id) + '-v1', diffV2toV1(obs.diffCache), true, false);
112
+ }
113
+ else {
114
+ if (obs.reusedCache) {
115
+ prevId = updateId(encodedData, obs.id);
116
+ }
117
+ server.uwsApp.publish(String(obs.id) + '-v1', cacheV2toV1(encodedData), true, false);
118
+ }
119
+ }
102
120
  if (obs.functionObserveClients.size) {
103
121
  obs.functionObserveClients.forEach((fnUpdate) => {
104
122
  fnUpdate(obs.rawData, obs.checksum, obs.error, obs.cache, obs.diffCache, obs.previousChecksum, obs.isDeflate);
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/query/start/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/query/start/update.ts"],"names":[],"mappings":"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"}
@@ -7,10 +7,20 @@ export const subscribeWs = (server, id, checksum, ctx) => {
7
7
  if (!session) {
8
8
  return;
9
9
  }
10
- ctx.session.ws.subscribe(String(id));
11
10
  const obs = getObsAndStopRemove(server, id);
12
- session.obs.add(id);
13
- obs.clients.add(session.id);
11
+ if (ctx.session.v < 2) {
12
+ session.obs.add(id);
13
+ if (!obs.oldClients) {
14
+ obs.oldClients = new Set();
15
+ }
16
+ obs.oldClients.add(session.id);
17
+ ctx.session.ws.subscribe(String(id) + '-v1');
18
+ }
19
+ else {
20
+ session.obs.add(id);
21
+ obs.clients.add(session.id);
22
+ ctx.session.ws.subscribe(String(id));
23
+ }
14
24
  if (obs.error) {
15
25
  sendErrorData(ctx, obs.error);
16
26
  return;
@@ -20,10 +30,10 @@ export const subscribeWs = (server, id, checksum, ctx) => {
20
30
  }
21
31
  if (obs.cache && obs.checksum !== checksum) {
22
32
  if (obs.diffCache && obs.previousChecksum === checksum) {
23
- sendObsWs(ctx, obs.diffCache, obs);
33
+ sendObsWs(ctx, obs.diffCache, obs, true);
24
34
  }
25
35
  else {
26
- sendObsWs(ctx, obs.cache, obs);
36
+ sendObsWs(ctx, obs.cache, obs, false);
27
37
  }
28
38
  }
29
39
  };
@@ -1 +1 @@
1
- {"version":3,"file":"subscribe.js","sourceRoot":"","sources":["../../src/query/subscribe.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAmB,EACnB,EAAU,EACV,QAAgB,EAChB,GAA8B,EAC9B,EAAE;IACF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAE3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAM;IACR,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IACpC,MAAM,GAAG,GAAG,mBAAmB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAE3C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACnB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAE3B,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAA;QAC7B,OAAM;IACR,CAAC;IAED,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACxC,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC3C,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;YACvD,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAAmB,EACnB,EAAU,EACV,MAAgC,EAChC,EAAE;IACF,MAAM,GAAG,GAAG,mBAAmB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;IAE3C,IAAI,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,CACJ,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,QAAQ,EACZ,IAAI,EACJ,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,SAAS,EACb,GAAG,CAAC,gBAAgB,EACpB,GAAG,CAAC,SAAS,CACd,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,GAAqB,EACrB,MAAoE,EACpE,EAAE;IACF,WAAW,CAAC,GAAG,CAAC,CAAA;IAChB,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACpB,GAAG,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAA;IAC5B,CAAC;IACD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAC5B,CAAC,CAAA"}
1
+ {"version":3,"file":"subscribe.js","sourceRoot":"","sources":["../../src/query/subscribe.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export type ActiveObservable = {
9
9
  reusedCache: boolean;
10
10
  functionObserveClients: Set<ObservableUpdateFunction>;
11
11
  clients: Set<number>;
12
+ oldClients?: Set<number>;
12
13
  onNextData?: Set<(err?: ObservableError) => void>;
13
14
  payload: any;
14
15
  diffCache?: Uint8Array;
@@ -17,18 +17,35 @@ export const unsubscribeWs = (server, id, ctx) => {
17
17
  if (!session || !session.obs.has(id)) {
18
18
  return;
19
19
  }
20
- ctx.session.ws.unsubscribe(String(id));
20
+ const isV1 = ctx.session.v < 2;
21
+ if (isV1) {
22
+ ctx.session.ws.unsubscribe(String(id) + '-v1');
23
+ }
24
+ else {
25
+ ctx.session.ws.unsubscribe(String(id));
26
+ }
21
27
  const obs = server.activeObservablesById.get(id);
22
28
  session.obs.delete(id);
23
29
  if (!obs) {
24
30
  return;
25
31
  }
26
- if (obs.clients.delete(session.id)) {
27
- if (server.queryEvents) {
28
- server.queryEvents.unsubscribe(obs, ctx);
32
+ if (isV1) {
33
+ if (obs.oldClients.delete(session.id)) {
34
+ if (server.queryEvents) {
35
+ server.queryEvents.unsubscribe(obs, ctx);
36
+ }
37
+ destroyObs(server, id);
38
+ return true;
39
+ }
40
+ }
41
+ else {
42
+ if (obs.clients.delete(session.id)) {
43
+ if (server.queryEvents) {
44
+ server.queryEvents.unsubscribe(obs, ctx);
45
+ }
46
+ destroyObs(server, id);
47
+ return true;
29
48
  }
30
- destroyObs(server, id);
31
- return true;
32
49
  }
33
50
  };
34
51
  export const unsubscribeWsIgnoreClient = (server, id, ctx) => {
@@ -40,8 +57,15 @@ export const unsubscribeWsIgnoreClient = (server, id, ctx) => {
40
57
  if (!obs) {
41
58
  return true;
42
59
  }
43
- if (obs.clients.delete(session.id) && server.queryEvents) {
44
- server.queryEvents.unsubscribe(obs, ctx);
60
+ if (session.v < 2) {
61
+ if (obs.oldClients?.delete(session.id) && server.queryEvents) {
62
+ server.queryEvents.unsubscribe(obs, ctx);
63
+ }
64
+ }
65
+ else {
66
+ if (obs.clients.delete(session.id) && server.queryEvents) {
67
+ server.queryEvents.unsubscribe(obs, ctx);
68
+ }
45
69
  }
46
70
  destroyObs(server, id);
47
71
  };
@@ -1 +1 @@
1
- {"version":3,"file":"unsub.js","sourceRoot":"","sources":["../../src/query/unsub.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,MAAmB,EACnB,EAAU,EACV,MAAgC,EACnB,EAAE;IACf,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAM;IACR,CAAC;IACD,IAAI,GAAG,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACrC,CAAC;QACD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtB,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,MAAmB,EACnB,EAAU,EACV,GAA8B,EACjB,EAAE;IACf,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACrC,OAAM;IACR,CAAC;IACD,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IACtB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAM;IACR,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC1C,CAAC;QACD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtB,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,MAAmB,EACnB,EAAU,EACV,GAA8B,EACjB,EAAE;IACf,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAM;IACR,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACzD,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC1C,CAAC;IACD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"unsub.js","sourceRoot":"","sources":["../../src/query/unsub.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,MAAmB,EACnB,EAAU,EACV,MAAgC,EACnB,EAAE;IACf,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAM;IACR,CAAC;IACD,IAAI,GAAG,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QACrC,CAAC;QACD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtB,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,MAAmB,EACnB,EAAU,EACV,GAA8B,EACjB,EAAE;IACf,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;QACrC,OAAM;IACR,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;IAE9B,IAAI,IAAI,EAAE,CAAC;QACT,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAA;IAChD,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IACtB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAM;IACR,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACtC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAC1C,CAAC;YACD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YAC1C,CAAC;YACD,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACtB,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,MAAmB,EACnB,EAAU,EACV,GAA8B,EACjB,EAAE;IACf,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAM;IACR,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAChD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC7D,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACzD,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QAC1C,CAAC;IACH,CAAC;IAED,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AACxB,CAAC,CAAA"}
package/dist/sendError.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { end } from './sendHttpResponse.js';
2
2
  import { isHttpContext, isWsSession, } from '@based/functions';
3
3
  import { valueToBuffer, encodeErrorResponse } from './protocol.js';
4
- import { createError, } from './error/index.js';
4
+ import { createError } from './error/index.js';
5
5
  const sendHttpErrorData = (errorData, ctx) => {
6
6
  const { code, message, statusCode, statusMessage } = errorData;
7
7
  ctx.session.res.cork(() => {
@@ -30,7 +30,7 @@ export function sendErrorData(ctx, errorData) {
30
30
  sendHttpErrorData(errorData, ctx);
31
31
  }
32
32
  else if (isWsSession(ctx.session)) {
33
- ctx.session.ws.send(encodeErrorResponse(valueToBuffer(errorData)), true, false);
33
+ ctx.session.ws.send(encodeErrorResponse(valueToBuffer(errorData, true)), true, false);
34
34
  }
35
35
  }
36
36
  export function sendError(server, ctx, basedCode, payload) {
@@ -42,7 +42,7 @@ export function sendError(server, ctx, basedCode, payload) {
42
42
  }
43
43
  else if (isWsSession(ctx.session)) {
44
44
  const errorData = createError(server, ctx, basedCode, payload);
45
- ctx.session.ws.send(encodeErrorResponse(valueToBuffer(errorData)), true, false);
45
+ ctx.session.ws.send(encodeErrorResponse(valueToBuffer(errorData, true)), true, false);
46
46
  }
47
47
  }
48
48
  export function sendSimpleError(server, ctx, basedCode, route, id, payload) {
@@ -73,7 +73,7 @@ export function sendSimpleError(server, ctx, basedCode, route, id, payload) {
73
73
  }
74
74
  else if (isWsSession(ctx.session)) {
75
75
  const errorData = createError(server, ctx, basedCode, payload);
76
- ctx.session.ws.send(encodeErrorResponse(valueToBuffer(errorData)), true, false);
76
+ ctx.session.ws.send(encodeErrorResponse(valueToBuffer(errorData, true)), true, false);
77
77
  }
78
78
  }
79
79
  //# sourceMappingURL=sendError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sendError.js","sourceRoot":"","sources":["../src/sendError.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sendError.js","sourceRoot":"","sources":["../src/sendError.ts"],"names":[],"mappings":"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"}
@@ -59,10 +59,14 @@ export const sendHttpResponse = (ctx, result, headers, statusCode = '200 OK') =>
59
59
  }
60
60
  });
61
61
  result.on('data', (d) => {
62
- ctx.session?.res.write(d);
62
+ ctx.session.res.cork(() => {
63
+ ctx.session?.res.write(d);
64
+ });
63
65
  });
64
66
  result.on('end', () => {
65
- ctx.session?.res.end();
67
+ ctx.session.res.cork(() => {
68
+ ctx.session?.res.end();
69
+ });
66
70
  });
67
71
  return;
68
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sendHttpResponse.js","sourceRoot":"","sources":["../src/sendHttpResponse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sendHttpResponse.js","sourceRoot":"","sources":["../src/sendHttpResponse.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@based/server",
3
- "version": "9.2.7",
3
+ "version": "10.0.0",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "type": "module",
@@ -19,7 +19,7 @@
19
19
  "@based/uws": "^6.0.0",
20
20
  "@saulx/diff": "^2.0.3",
21
21
  "@saulx/hash": "^3.0.0",
22
- "@saulx/utils": "^5.0.0",
22
+ "@saulx/utils": "^6.7.0",
23
23
  "picocolors": "^1.0.0",
24
24
  "jsonexport": "^3.2.0",
25
25
  "jsonwebtoken": "^8.5.1",