@based/client 4.8.10 → 5.0.0-alpha.1

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 (203) hide show
  1. package/dist/{Emitter.d.ts → src/Emitter.d.ts} +1 -2
  2. package/dist/{Emitter.js → src/Emitter.js} +2 -4
  3. package/dist/src/Emitter.js.map +1 -0
  4. package/dist/{authState → src/authState}/parseAuthState.d.ts +1 -2
  5. package/dist/src/authState/parseAuthState.js +44 -0
  6. package/dist/src/authState/parseAuthState.js.map +1 -0
  7. package/dist/src/authState/updateAuthState.d.ts +3 -0
  8. package/dist/src/authState/updateAuthState.js +11 -0
  9. package/dist/src/authState/updateAuthState.js.map +1 -0
  10. package/dist/src/channel/cleanUp.d.ts +2 -0
  11. package/dist/{channel → src/channel}/cleanUp.js +3 -7
  12. package/dist/src/channel/cleanUp.js.map +1 -0
  13. package/dist/{channel → src/channel}/index.d.ts +2 -4
  14. package/dist/{channel → src/channel}/index.js +15 -15
  15. package/dist/src/channel/index.js.map +1 -0
  16. package/dist/{genObserveId.d.ts → src/genObserveId.d.ts} +0 -1
  17. package/dist/src/genObserveId.js +8 -0
  18. package/dist/src/genObserveId.js.map +1 -0
  19. package/dist/{getTargetInfo.d.ts → src/getTargetInfo.d.ts} +1 -2
  20. package/dist/{getTargetInfo.js → src/getTargetInfo.js} +1 -5
  21. package/dist/src/getTargetInfo.js.map +1 -0
  22. package/dist/{incoming → src/incoming}/index.d.ts +1 -2
  23. package/dist/{incoming → src/incoming}/index.js +74 -146
  24. package/dist/src/incoming/index.js.map +1 -0
  25. package/dist/{incoming → src/incoming}/protocol.d.ts +1 -2
  26. package/dist/{incoming → src/incoming}/protocol.js +8 -18
  27. package/dist/src/incoming/protocol.js.map +1 -0
  28. package/dist/{index.d.ts → src/index.d.ts} +27 -27
  29. package/dist/{index.js → src/index.js} +92 -103
  30. package/dist/src/index.js.map +1 -0
  31. package/dist/{index_original.d.ts → src/index_original.d.ts} +27 -27
  32. package/dist/{outgoing → src/outgoing}/index.d.ts +2 -3
  33. package/dist/src/outgoing/index.js +197 -0
  34. package/dist/src/outgoing/index.js.map +1 -0
  35. package/dist/{outgoing → src/outgoing}/protocol.d.ts +4 -6
  36. package/dist/{outgoing → src/outgoing}/protocol.js +22 -64
  37. package/dist/src/outgoing/protocol.js.map +1 -0
  38. package/dist/{persistentStorage/index.d.ts → src/persistentStorage/browser.d.ts} +4 -5
  39. package/dist/src/persistentStorage/browser.js +182 -0
  40. package/dist/src/persistentStorage/browser.js.map +1 -0
  41. package/dist/src/persistentStorage/constants.d.ts +4 -0
  42. package/dist/src/persistentStorage/constants.js +5 -0
  43. package/dist/src/persistentStorage/constants.js.map +1 -0
  44. package/dist/src/persistentStorage/index.d.ts +6 -0
  45. package/dist/src/persistentStorage/index.js +128 -0
  46. package/dist/src/persistentStorage/index.js.map +1 -0
  47. package/dist/src/persistentStorage/node.d.ts +6 -0
  48. package/dist/src/persistentStorage/node.js +86 -0
  49. package/dist/src/persistentStorage/node.js.map +1 -0
  50. package/dist/{query → src/query}/index.d.ts +2 -3
  51. package/dist/{query → src/query}/index.js +19 -18
  52. package/dist/src/query/index.js.map +1 -0
  53. package/dist/src/ssr.d.ts +6 -0
  54. package/dist/src/ssr.js +11 -0
  55. package/dist/src/ssr.js.map +1 -0
  56. package/dist/{stream/index.d.ts → src/stream/browser.d.ts} +2 -3
  57. package/dist/src/stream/browser.js +34 -0
  58. package/dist/src/stream/browser.js.map +1 -0
  59. package/dist/{stream → src/stream}/fetch.d.ts +2 -3
  60. package/dist/src/stream/fetch.js +34 -0
  61. package/dist/src/stream/fetch.js.map +1 -0
  62. package/dist/src/stream/index.d.ts +4 -0
  63. package/dist/src/stream/index.js +21 -0
  64. package/dist/src/stream/index.js.map +1 -0
  65. package/dist/{stream → src/stream}/nodeStream.d.ts +3 -4
  66. package/dist/{stream → src/stream}/nodeStream.js +23 -32
  67. package/dist/src/stream/nodeStream.js.map +1 -0
  68. package/dist/{stream → src/stream}/types.d.ts +3 -2
  69. package/dist/src/stream/types.js +18 -0
  70. package/dist/src/stream/types.js.map +1 -0
  71. package/dist/{stream → src/stream}/uploadFileBrowser.d.ts +2 -3
  72. package/dist/{stream → src/stream}/uploadFileBrowser.js +12 -18
  73. package/dist/src/stream/uploadFileBrowser.js.map +1 -0
  74. package/dist/{types → src/types}/auth.d.ts +0 -1
  75. package/dist/src/types/auth.js +2 -0
  76. package/dist/{types → src/types}/auth.js.map +1 -1
  77. package/dist/src/types/cache.d.ts +6 -0
  78. package/dist/src/types/cache.js +2 -0
  79. package/dist/{types → src/types}/cache.js.map +1 -1
  80. package/dist/{types → src/types}/channel.d.ts +1 -2
  81. package/dist/src/types/channel.js +2 -0
  82. package/dist/{types → src/types}/channel.js.map +1 -1
  83. package/dist/{types → src/types}/error.d.ts +1 -2
  84. package/dist/{types → src/types}/error.js +7 -10
  85. package/dist/src/types/error.js.map +1 -0
  86. package/dist/src/types/events.d.ts +9 -0
  87. package/dist/src/types/events.js +2 -0
  88. package/dist/{types → src/types}/events.js.map +1 -1
  89. package/dist/{types → src/types}/functions.d.ts +1 -2
  90. package/dist/src/types/functions.js +2 -0
  91. package/dist/{types → src/types}/functions.js.map +1 -1
  92. package/dist/{types → src/types}/generic.d.ts +0 -1
  93. package/dist/src/types/generic.js +2 -0
  94. package/dist/{types → src/types}/generic.js.map +1 -1
  95. package/dist/src/types/index.d.ts +8 -0
  96. package/dist/src/types/index.js +9 -0
  97. package/dist/src/types/index.js.map +1 -0
  98. package/dist/{types → src/types}/observe.d.ts +1 -2
  99. package/dist/src/types/observe.js +2 -0
  100. package/dist/{types → src/types}/observe.js.map +1 -1
  101. package/dist/{websocket → src/websocket}/index.d.ts +2 -3
  102. package/dist/{websocket → src/websocket}/index.js +9 -14
  103. package/dist/src/websocket/index.js.map +1 -0
  104. package/dist/{websocket → src/websocket}/types.d.ts +0 -1
  105. package/dist/src/websocket/types.js +6 -0
  106. package/dist/src/websocket/types.js.map +1 -0
  107. package/dist/{websocket → src/websocket}/urlLoader.d.ts +0 -1
  108. package/dist/src/websocket/urlLoader.js +11 -0
  109. package/dist/{websocket → src/websocket}/urlLoader.js.map +1 -1
  110. package/package.json +37 -28
  111. package/dist/Emitter.d.ts.map +0 -1
  112. package/dist/Emitter.js.map +0 -1
  113. package/dist/authState/parseAuthState.d.ts.map +0 -1
  114. package/dist/authState/parseAuthState.js +0 -51
  115. package/dist/authState/parseAuthState.js.map +0 -1
  116. package/dist/authState/updateAuthState.d.ts +0 -4
  117. package/dist/authState/updateAuthState.d.ts.map +0 -1
  118. package/dist/authState/updateAuthState.js +0 -15
  119. package/dist/authState/updateAuthState.js.map +0 -1
  120. package/dist/channel/cleanUp.d.ts +0 -3
  121. package/dist/channel/cleanUp.d.ts.map +0 -1
  122. package/dist/channel/cleanUp.js.map +0 -1
  123. package/dist/channel/index.d.ts.map +0 -1
  124. package/dist/channel/index.js.map +0 -1
  125. package/dist/genObserveId.d.ts.map +0 -1
  126. package/dist/genObserveId.js +0 -12
  127. package/dist/genObserveId.js.map +0 -1
  128. package/dist/getTargetInfo.d.ts.map +0 -1
  129. package/dist/getTargetInfo.js.map +0 -1
  130. package/dist/incoming/debug.d.ts +0 -10
  131. package/dist/incoming/debug.d.ts.map +0 -1
  132. package/dist/incoming/debug.js +0 -132
  133. package/dist/incoming/debug.js.map +0 -1
  134. package/dist/incoming/index.d.ts.map +0 -1
  135. package/dist/incoming/index.js.map +0 -1
  136. package/dist/incoming/protocol.d.ts.map +0 -1
  137. package/dist/incoming/protocol.js.map +0 -1
  138. package/dist/index.d.ts.map +0 -1
  139. package/dist/index.js.map +0 -1
  140. package/dist/outgoing/debug.d.ts +0 -9
  141. package/dist/outgoing/debug.d.ts.map +0 -1
  142. package/dist/outgoing/debug.js +0 -70
  143. package/dist/outgoing/debug.js.map +0 -1
  144. package/dist/outgoing/index.d.ts.map +0 -1
  145. package/dist/outgoing/index.js +0 -231
  146. package/dist/outgoing/index.js.map +0 -1
  147. package/dist/outgoing/protocol.d.ts.map +0 -1
  148. package/dist/outgoing/protocol.js.map +0 -1
  149. package/dist/persistentStorage/browser.d.ts +0 -6
  150. package/dist/persistentStorage/browser.d.ts.map +0 -1
  151. package/dist/persistentStorage/browser.js +0 -178
  152. package/dist/persistentStorage/browser.js.map +0 -1
  153. package/dist/persistentStorage/index.d.ts.map +0 -1
  154. package/dist/persistentStorage/index.js +0 -61
  155. package/dist/persistentStorage/index.js.map +0 -1
  156. package/dist/persistentStorage/node.d.ts +0 -7
  157. package/dist/persistentStorage/node.d.ts.map +0 -1
  158. package/dist/persistentStorage/node.js +0 -104
  159. package/dist/persistentStorage/node.js.map +0 -1
  160. package/dist/query/index.d.ts.map +0 -1
  161. package/dist/query/index.js.map +0 -1
  162. package/dist/stream/fetch.d.ts.map +0 -1
  163. package/dist/stream/fetch.js +0 -38
  164. package/dist/stream/fetch.js.map +0 -1
  165. package/dist/stream/index.d.ts.map +0 -1
  166. package/dist/stream/index.js +0 -65
  167. package/dist/stream/index.js.map +0 -1
  168. package/dist/stream/nodeStream.d.ts.map +0 -1
  169. package/dist/stream/nodeStream.js.map +0 -1
  170. package/dist/stream/types.d.ts.map +0 -1
  171. package/dist/stream/types.js +0 -8
  172. package/dist/stream/types.js.map +0 -1
  173. package/dist/stream/uploadFileBrowser.d.ts.map +0 -1
  174. package/dist/stream/uploadFileBrowser.js.map +0 -1
  175. package/dist/types/auth.d.ts.map +0 -1
  176. package/dist/types/auth.js +0 -3
  177. package/dist/types/cache.d.ts +0 -7
  178. package/dist/types/cache.d.ts.map +0 -1
  179. package/dist/types/cache.js +0 -3
  180. package/dist/types/channel.d.ts.map +0 -1
  181. package/dist/types/channel.js +0 -3
  182. package/dist/types/error.d.ts.map +0 -1
  183. package/dist/types/error.js.map +0 -1
  184. package/dist/types/events.d.ts +0 -35
  185. package/dist/types/events.d.ts.map +0 -1
  186. package/dist/types/events.js +0 -3
  187. package/dist/types/functions.d.ts.map +0 -1
  188. package/dist/types/functions.js +0 -3
  189. package/dist/types/generic.d.ts.map +0 -1
  190. package/dist/types/generic.js +0 -3
  191. package/dist/types/index.d.ts +0 -7
  192. package/dist/types/index.d.ts.map +0 -1
  193. package/dist/types/index.js +0 -23
  194. package/dist/types/index.js.map +0 -1
  195. package/dist/types/observe.d.ts.map +0 -1
  196. package/dist/types/observe.js +0 -3
  197. package/dist/websocket/index.d.ts.map +0 -1
  198. package/dist/websocket/index.js.map +0 -1
  199. package/dist/websocket/types.d.ts.map +0 -1
  200. package/dist/websocket/types.js +0 -7
  201. package/dist/websocket/types.js.map +0 -1
  202. package/dist/websocket/urlLoader.d.ts.map +0 -1
  203. package/dist/websocket/urlLoader.js +0 -13
@@ -1,98 +1,67 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
1
+ import { inflateSync } from 'fflate';
2
+ // add diff to the bundle as well
3
+ import { applyPatch } from '@saulx/diff';
4
+ import { deepEqual } from '@saulx/utils';
5
+ import { updateAuthState } from '../authState/updateAuthState.js';
6
+ import { setStorage } from '../persistentStorage/index.js';
7
+ import { CACHE_PREFIX } from '../persistentStorage/constants.js';
8
+ import { parseArrayBuffer, decodeHeader, readUint8, requestFullData, } from './protocol.js';
9
+ import { encodeSubscribeChannelMessage } from '../outgoing/protocol.js';
10
+ import { getTargetInfo } from '../getTargetInfo.js';
11
+ import { convertDataToBasedError } from '../types/index.js';
12
+ const decodeAndDeflate = (start, end, isDeflate, buffer) => {
13
+ return new TextDecoder().decode(isDeflate ? inflateSync(buffer.slice(start, end)) : buffer.slice(start, end));
24
14
  };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.incoming = void 0;
27
- const fflate = __importStar(require("fflate"));
28
- const diff_1 = require("@saulx/diff");
29
- const error_1 = require("../types/error");
30
- const utils_1 = require("@saulx/utils");
31
- const updateAuthState_1 = require("../authState/updateAuthState");
32
- const persistentStorage_1 = require("../persistentStorage");
33
- const debug_1 = require("./debug");
34
- const protocol_1 = require("./protocol");
35
- const protocol_2 = require("../outgoing/protocol");
36
- const getTargetInfo_1 = require("../getTargetInfo");
37
- const incoming = async (client, data /* TODO: type */) => {
15
+ export const incoming = async (client, data) => {
38
16
  if (client.isDestroyed) {
39
17
  return;
40
18
  }
41
- const debug = client.listeners.debug;
42
19
  try {
43
20
  const d = data.data;
44
- const buffer = await (0, protocol_1.parseArrayBuffer)(d);
45
- const { type, len, isDeflate } = (0, protocol_1.decodeHeader)((0, protocol_1.readUint8)(buffer, 0, 4));
21
+ const buffer = await parseArrayBuffer(d);
22
+ const { type, len, isDeflate } = decodeHeader(readUint8(buffer, 0, 4));
46
23
  // reader for batched replies
47
24
  // ------- Function
48
25
  if (type === 0) {
49
26
  // | 4 header | 3 id | * payload |
50
- const id = (0, protocol_1.readUint8)(buffer, 4, 3);
27
+ const id = readUint8(buffer, 4, 3);
51
28
  const start = 7;
52
29
  const end = len + 4;
53
30
  let payload;
54
31
  // if not empty response, parse it
55
32
  if (len !== 3) {
56
- payload = JSON.parse(new TextDecoder().decode(isDeflate
57
- ? fflate.inflateSync(buffer.slice(start, end))
58
- : buffer.slice(start, end)));
33
+ payload = JSON.parse(decodeAndDeflate(start, end, isDeflate, buffer));
59
34
  }
60
35
  if (client.functionResponseListeners.has(id)) {
61
36
  client.functionResponseListeners.get(id)[0](payload);
62
37
  client.functionResponseListeners.delete(id);
63
38
  }
64
- if (debug) {
65
- (0, debug_1.debugFunction)(client, payload, id);
66
- }
67
39
  }
68
40
  // ------- Get checksum is up to date
69
41
  else if (type === 3) {
70
42
  // | 4 header | 8 id |
71
- const id = (0, protocol_1.readUint8)(buffer, 4, 8);
43
+ const id = readUint8(buffer, 4, 8);
72
44
  if (client.getState.has(id) && client.cache.has(id)) {
73
45
  const get = client.getState.get(id);
74
46
  for (const [resolve] of get) {
75
- resolve(client.cache.get(id).value);
47
+ resolve(client.cache.get(id).v);
76
48
  }
77
49
  client.getState.delete(id);
78
50
  }
79
- if (debug) {
80
- (0, debug_1.debugGet)(client, id);
81
- }
82
51
  }
83
52
  // ------- Subscription diff data
84
53
  else if (type === 2) {
85
54
  // | 4 header | 8 id | 8 checksum | 8 previousChecksum | * diff |
86
- const id = (0, protocol_1.readUint8)(buffer, 4, 8);
55
+ const id = readUint8(buffer, 4, 8);
87
56
  const cachedData = client.cache.get(id);
88
57
  if (!cachedData) {
89
- (0, protocol_1.requestFullData)(client, id);
58
+ requestFullData(client, id);
90
59
  return;
91
60
  }
92
- const checksum = (0, protocol_1.readUint8)(buffer, 12, 8);
93
- const previousChecksum = (0, protocol_1.readUint8)(buffer, 20, 8);
94
- if (cachedData.checksum !== previousChecksum) {
95
- (0, protocol_1.requestFullData)(client, id);
61
+ const checksum = readUint8(buffer, 12, 8);
62
+ const previousChecksum = readUint8(buffer, 20, 8);
63
+ if (cachedData.c !== previousChecksum) {
64
+ requestFullData(client, id);
96
65
  return;
97
66
  }
98
67
  const start = 28;
@@ -100,72 +69,63 @@ const incoming = async (client, data /* TODO: type */) => {
100
69
  let diff;
101
70
  // if not empty response, parse it
102
71
  if (len !== 24) {
103
- diff = JSON.parse(new TextDecoder().decode(isDeflate
104
- ? fflate.inflateSync(buffer.slice(start, end))
105
- : buffer.slice(start, end)));
72
+ diff = JSON.parse(decodeAndDeflate(start, end, isDeflate, buffer));
106
73
  }
107
74
  try {
108
- cachedData.value = (0, diff_1.applyPatch)(cachedData.value, diff);
109
- cachedData.checksum = checksum;
75
+ cachedData.v = applyPatch(cachedData.v, diff);
76
+ cachedData.c = checksum;
110
77
  }
111
78
  catch (err) {
112
- if (debug) {
113
- (0, debug_1.debugDiff)(client, diff, id, checksum, true);
114
- }
115
- (0, protocol_1.requestFullData)(client, id);
79
+ requestFullData(client, id);
116
80
  return;
117
81
  }
118
82
  if (client.observeState.has(id)) {
119
83
  const observable = client.observeState.get(id);
120
84
  if (observable.persistent) {
121
- cachedData.persistent = true;
122
- (0, persistentStorage_1.setStorage)(client, '@based-cache-' + id, cachedData);
85
+ cachedData.p = true;
86
+ setStorage(client, CACHE_PREFIX + id, cachedData);
123
87
  }
124
88
  for (const [, handlers] of observable.subscribers) {
125
- handlers.onData(cachedData.value, checksum);
89
+ handlers.onData(cachedData.v, checksum);
126
90
  }
127
91
  }
128
92
  if (client.getState.has(id)) {
129
93
  const get = client.getState.get(id);
130
94
  for (const [resolve] of get) {
131
- resolve(cachedData.value);
95
+ resolve(cachedData.v);
132
96
  }
133
97
  client.getState.delete(id);
134
98
  }
135
- if (debug) {
136
- (0, debug_1.debugDiff)(client, diff, id, checksum);
137
- }
138
99
  }
139
100
  // ------- Subscription data
140
101
  else if (type === 1) {
141
102
  // | 4 header | 8 id | 8 checksum | * payload |
142
- const id = (0, protocol_1.readUint8)(buffer, 4, 8);
143
- const checksum = (0, protocol_1.readUint8)(buffer, 12, 8);
103
+ const id = readUint8(buffer, 4, 8);
104
+ const checksum = readUint8(buffer, 12, 8);
144
105
  const start = 20;
145
106
  const end = len + 4;
146
107
  let payload;
147
108
  // If not empty response, parse it
148
109
  if (len !== 16) {
149
- payload = JSON.parse(new TextDecoder().decode(isDeflate
150
- ? fflate.inflateSync(buffer.slice(start, end))
151
- : buffer.slice(start, end)));
110
+ payload = JSON.parse(decodeAndDeflate(start, end, isDeflate, buffer));
152
111
  }
153
- const cacheData = {
154
- value: payload,
155
- checksum,
156
- };
157
- client.cache.set(id, cacheData);
158
- let found = false;
159
- if (client.observeState.has(id)) {
160
- const observable = client.observeState.get(id);
161
- if (observable.persistent) {
162
- cacheData.persistent = true;
163
- (0, persistentStorage_1.setStorage)(client, '@based-cache-' + id, cacheData);
164
- }
165
- for (const [, handlers] of observable.subscribers) {
166
- handlers.onData(payload, checksum);
112
+ const noChange = client.cache.get(id)?.c === checksum;
113
+ if (!noChange) {
114
+ const cacheData = {
115
+ v: payload,
116
+ c: checksum,
117
+ };
118
+ client.cache.set(id, cacheData);
119
+ if (client.observeState.has(id)) {
120
+ const observable = client.observeState.get(id);
121
+ if (observable.persistent) {
122
+ cacheData.p = true;
123
+ setStorage(client, CACHE_PREFIX + id, cacheData);
124
+ }
125
+ for (const [, handlers] of observable.subscribers) {
126
+ handlers.onData(payload, checksum);
127
+ }
167
128
  }
168
- found = true;
169
129
  }
170
130
  if (client.getState.has(id)) {
171
131
  const get = client.getState.get(id);
@@ -173,10 +133,6 @@ const incoming = async (client, data /* TODO: type */) => {
173
133
  resolve(payload);
174
134
  }
175
135
  client.getState.delete(id);
176
- found = true;
177
- }
178
- if (debug) {
179
- (0, debug_1.debugSubscribe)(client, id, payload, checksum, found);
180
136
  }
181
137
  }
182
138
  // ------- AuthState
@@ -187,32 +143,27 @@ const incoming = async (client, data /* TODO: type */) => {
187
143
  let payload;
188
144
  // if not empty response, parse it
189
145
  if (len !== 3) {
190
- payload = JSON.parse(new TextDecoder().decode(isDeflate
191
- ? fflate.inflateSync(buffer.slice(start, end))
192
- : buffer.slice(start, end)));
146
+ payload = JSON.parse(decodeAndDeflate(start, end, isDeflate, buffer));
193
147
  }
194
148
  if (payload === true) {
195
149
  client.authRequest.resolve?.(client.authState);
196
150
  }
197
151
  else if ('error' in payload) {
198
152
  // make a function updateAuthState
199
- (0, updateAuthState_1.updateAuthState)(client, payload);
153
+ updateAuthState(client, payload);
200
154
  client.emit('authstate-change', client.authState);
201
155
  client.authRequest.reject?.(new Error(payload.error));
202
156
  }
203
157
  else {
204
- if (!(0, utils_1.deepEqual)(client.authState, payload)) {
205
- (0, updateAuthState_1.updateAuthState)(client, payload);
158
+ if (!deepEqual(client.authState, payload)) {
159
+ updateAuthState(client, payload);
206
160
  client.emit('authstate-change', client.authState);
207
161
  }
208
162
  else {
209
- (0, updateAuthState_1.updateAuthState)(client, payload);
163
+ updateAuthState(client, payload);
210
164
  }
211
165
  client.authRequest?.resolve?.(client.authState);
212
166
  }
213
- if (debug) {
214
- (0, debug_1.debugAuth)(client, payload);
215
- }
216
167
  }
217
168
  // ------- Errors
218
169
  else if (type === 5) {
@@ -222,27 +173,25 @@ const incoming = async (client, data /* TODO: type */) => {
222
173
  let payload;
223
174
  // if not empty response, parse it
224
175
  if (len !== 3) {
225
- payload = JSON.parse(new TextDecoder().decode(isDeflate
226
- ? fflate.inflateSync(buffer.slice(start, end))
227
- : buffer.slice(start, end)));
176
+ payload = JSON.parse(decodeAndDeflate(start, end, isDeflate, buffer));
228
177
  }
229
178
  if (payload.requestId) {
230
179
  if (client.functionResponseListeners.has(payload.requestId)) {
231
180
  const [, reject, stack] = client.functionResponseListeners.get(payload.requestId);
232
- reject((0, error_1.convertDataToBasedError)(payload, stack));
181
+ reject(convertDataToBasedError(payload, stack));
233
182
  client.functionResponseListeners.delete(payload.requestId);
234
183
  }
235
184
  }
236
185
  if (payload.channelId) {
237
186
  if (client.channelState.has(payload.channelId)) {
238
- const error = (0, error_1.convertDataToBasedError)(payload);
187
+ const error = convertDataToBasedError(payload);
239
188
  const channel = client.channelState.get(payload.channelId);
240
189
  for (const [, handlers] of channel.subscribers) {
241
190
  if (handlers.onError) {
242
191
  handlers.onError(error);
243
192
  }
244
193
  else {
245
- console.error((0, getTargetInfo_1.getTargetInfo)(client, payload.channelId, 'channel'), error);
194
+ console.error(getTargetInfo(client, payload.channelId, 'channel'), error);
246
195
  }
247
196
  }
248
197
  }
@@ -250,19 +199,19 @@ const incoming = async (client, data /* TODO: type */) => {
250
199
  if (payload.observableId) {
251
200
  client.cache.delete(payload.observableId);
252
201
  if (client.observeState.has(payload.observableId)) {
253
- const error = (0, error_1.convertDataToBasedError)(payload);
202
+ const error = convertDataToBasedError(payload);
254
203
  const observable = client.observeState.get(payload.observableId);
255
204
  for (const [, handlers] of observable.subscribers) {
256
205
  if (handlers.onError) {
257
206
  handlers.onError(error);
258
207
  }
259
208
  else {
260
- console.error((0, getTargetInfo_1.getTargetInfo)(client, payload.observableId, 'sub'), error);
209
+ console.error(getTargetInfo(client, payload.observableId, 'sub'), error);
261
210
  }
262
211
  }
263
212
  }
264
213
  if (client.getState.has(payload.observableId)) {
265
- const error = (0, error_1.convertDataToBasedError)(payload);
214
+ const error = convertDataToBasedError(payload);
266
215
  const get = client.getState.get(payload.observableId);
267
216
  for (const [, reject] of get) {
268
217
  // also add stack
@@ -271,25 +220,16 @@ const incoming = async (client, data /* TODO: type */) => {
271
220
  client.getState.delete(payload.observableId);
272
221
  }
273
222
  }
274
- if (debug) {
275
- (0, debug_1.debugError)(client, payload);
276
- }
277
- // else emit ERROR maybe?
278
223
  } // ------- Re-Publish send channel name + payload
279
224
  else if (type === 6) {
280
225
  // | 4 header | 8 id | * payload |
281
226
  // get id add last send on the state
282
- const id = (0, protocol_1.readUint8)(buffer, 4, 8);
227
+ const id = readUint8(buffer, 4, 8);
283
228
  const channel = client.channelState.get(id);
284
- if (!id) {
285
- if (debug) {
286
- (0, debug_1.debugChannelReqId)(client, id, 'not-found');
287
- }
288
- }
289
- else {
229
+ if (id) {
290
230
  if (!channel.inTransit) {
291
231
  channel.inTransit = true;
292
- const { buffers, len } = (0, protocol_2.encodeSubscribeChannelMessage)(id, [
232
+ const { buffers, len } = encodeSubscribeChannelMessage(id, [
293
233
  6,
294
234
  channel.name,
295
235
  channel.payload,
@@ -310,30 +250,22 @@ const incoming = async (client, data /* TODO: type */) => {
310
250
  channel.inTransit = false;
311
251
  }
312
252
  }, 5e3);
313
- if (debug) {
314
- (0, debug_1.debugChannelReqId)(client, id, 'register');
315
- }
316
253
  }
317
254
  client.connection.ws.send(buffer);
318
- if (debug) {
319
- (0, debug_1.debugChannelReqId)(client, id, 'publish', buffer, isDeflate);
320
- }
321
255
  }
322
256
  } // ----------- Channel message
323
257
  else if (type === 7) {
324
258
  // | 4 header | 1 subType |
325
- const subType = (0, protocol_1.readUint8)(buffer, 4, 1);
259
+ const subType = readUint8(buffer, 4, 1);
326
260
  if (subType === 0) {
327
261
  // | 4 header | 1 subType | 8 id | * payload |
328
- const id = (0, protocol_1.readUint8)(buffer, 5, 8);
262
+ const id = readUint8(buffer, 5, 8);
329
263
  const start = 13;
330
264
  const end = len + 5;
331
265
  let payload;
332
266
  // if not empty response, parse it
333
267
  if (len !== 9) {
334
- const r = new TextDecoder().decode(isDeflate
335
- ? fflate.inflateSync(buffer.slice(start, end))
336
- : buffer.slice(start, end));
268
+ const r = decodeAndDeflate(start, end, isDeflate, buffer);
337
269
  try {
338
270
  payload = JSON.parse(r);
339
271
  }
@@ -341,24 +273,20 @@ const incoming = async (client, data /* TODO: type */) => {
341
273
  payload = r;
342
274
  }
343
275
  }
344
- let found = false;
345
276
  if (client.channelState.has(id)) {
346
277
  const observable = client.channelState.get(id);
347
278
  for (const [, handlers] of observable.subscribers) {
348
279
  handlers.onMessage(payload);
349
280
  }
350
- found = true;
351
- }
352
- if (debug) {
353
- (0, debug_1.debugChannel)(client, id, payload, found);
354
281
  }
355
282
  }
356
283
  }
357
284
  // ---------------------------------
358
285
  }
359
286
  catch (err) {
360
- console.error('Error parsing incoming data', err);
287
+ // just code can load error codes as well
288
+ // 981 - cannot parse data
289
+ console.error(981, err);
361
290
  }
362
291
  };
363
- exports.incoming = incoming;
364
292
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/incoming/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { BasedClient } from '..';
1
+ import { BasedClient } from '../index.js';
2
2
  export declare const decodeHeader: (nr: number) => {
3
3
  type: number;
4
4
  isDeflate: boolean;
@@ -7,4 +7,3 @@ export declare const decodeHeader: (nr: number) => {
7
7
  export declare const readUint8: (buff: Uint8Array, start: number, len: number) => number;
8
8
  export declare const parseArrayBuffer: (d: any) => Promise<Uint8Array>;
9
9
  export declare const requestFullData: (client: BasedClient, id: number) => void;
10
- //# sourceMappingURL=protocol.d.ts.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.requestFullData = exports.parseArrayBuffer = exports.readUint8 = exports.decodeHeader = void 0;
4
- const outgoing_1 = require("../outgoing");
5
- const decodeHeader = (nr) => {
1
+ import { addGetToQueue } from '../outgoing/index.js';
2
+ export const decodeHeader = (nr) => {
6
3
  // 4 bytes
7
4
  // type (3 bits)
8
5
  // 0 = functionData
@@ -25,8 +22,7 @@ const decodeHeader = (nr) => {
25
22
  len,
26
23
  };
27
24
  };
28
- exports.decodeHeader = decodeHeader;
29
- const readUint8 = (buff, start, len) => {
25
+ export const readUint8 = (buff, start, len) => {
30
26
  let n = 0;
31
27
  const s = len - 1 + start;
32
28
  for (let i = s; i >= start; i--) {
@@ -34,12 +30,12 @@ const readUint8 = (buff, start, len) => {
34
30
  }
35
31
  return n;
36
32
  };
37
- exports.readUint8 = readUint8;
38
- const parseArrayBuffer = async (d) => {
33
+ export const parseArrayBuffer = async (d) => {
39
34
  // needed for CF workers which return array buffers
40
35
  if (d instanceof ArrayBuffer) {
41
36
  return new Uint8Array(d);
42
37
  }
38
+ // can make this in browser / node build
43
39
  if (typeof window === 'undefined') {
44
40
  if (d instanceof Buffer) {
45
41
  return new Uint8Array(d);
@@ -51,16 +47,10 @@ const parseArrayBuffer = async (d) => {
51
47
  return new Uint8Array(buffer);
52
48
  }
53
49
  }
54
- throw new Error('Recieved incorrect data');
50
+ throw new Error('432');
55
51
  };
56
- exports.parseArrayBuffer = parseArrayBuffer;
57
- const requestFullData = (client, id) => {
52
+ export const requestFullData = (client, id) => {
58
53
  const sub = client.observeState.get(id);
59
- if (!sub) {
60
- console.warn(`Cannot find query function name for id from diff [id]`);
61
- return;
62
- }
63
- (0, outgoing_1.addGetToQueue)(client, sub.name, id, sub.payload);
54
+ addGetToQueue(client, sub.name, id, sub.payload);
64
55
  };
65
- exports.requestFullData = requestFullData;
66
56
  //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/incoming/protocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,EAAU,EACyC,EAAE;IACrD,UAAU;IACV,gBAAgB;IAChB,qBAAqB;IACrB,yBAAyB;IACzB,6BAA6B;IAC7B,YAAY;IACZ,iBAAiB;IACjB,8DAA8D;IAC9D,kCAAkC;IAClC,yBAAyB;IACzB,oBAAoB;IACpB,gBAAgB;IAChB,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,CAAA;IACnB,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,CAAA;IACpB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAA;IACtB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAA;IAC1B,OAAO;QACL,IAAI;QACJ,SAAS,EAAE,SAAS,KAAK,CAAC;QAC1B,GAAG;KACJ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,IAAgB,EAChB,KAAa,EACb,GAAW,EACH,EAAE;IACV,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,KAAK,CAAA;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;KACtB;IACD,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,CAAM,EAAuB,EAAE;IACpE,mDAAmD;IACnD,IAAI,CAAC,YAAY,WAAW,EAAE;QAC5B,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;KACzB;IAED,wCAAwC;IACxC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,IAAI,CAAC,YAAY,MAAM,EAAE;YACvB,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAA;SACzB;KACF;SAAM;QACL,IAAI,CAAC,YAAY,IAAI,EAAE;YACrB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,CAAA;YACpC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAA;SAC9B;KACF;IACD,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAmB,EAAE,EAAU,EAAE,EAAE;IACjE,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACvC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;AAClD,CAAC,CAAA"}
@@ -1,14 +1,11 @@
1
- import { BasedOpts, AuthState, FunctionResponseListeners, Settings, FunctionQueue, ObserveState, ObserveQueue, Cache, GetObserveQueue } from './types';
2
- import { GetState } from './types/observe';
3
- import { Connection } from './websocket/types';
4
- import Emitter from './Emitter';
5
- import { BasedQuery } from './query';
6
- import { StreamFunctionOpts } from './stream/types';
7
- import { BasedChannel } from './channel';
8
- import { ChannelQueue, ChannelPublishQueue, ChannelState } from './types/channel';
9
- import { CallOptions, QueryOptions } from './types';
10
- export * from './authState/parseAuthState';
11
- export * from './types/error';
1
+ import { BasedOpts, AuthState, FunctionResponseListeners, Settings, FunctionQueue, ObserveState, ObserveQueue, Cache, GetObserveQueue, GetState, ChannelQueue, ChannelPublishQueue, ChannelState, CallOptions, QueryOptions } from './types/index.js';
2
+ import { Connection } from './websocket/types.js';
3
+ import Emitter from './Emitter.js';
4
+ import { BasedQuery } from './query/index.js';
5
+ import { StreamFunctionOpts } from './stream/types.js';
6
+ import { BasedChannel } from './channel/index.js';
7
+ export * from './authState/parseAuthState.js';
8
+ export * from './types/error.js';
12
9
  export { AuthState, BasedQuery };
13
10
  export declare class BasedClient extends Emitter {
14
11
  constructor(opts?: BasedOpts, settings?: Settings);
@@ -17,10 +14,10 @@ export declare class BasedClient extends Emitter {
17
14
  storageEnvKey: number;
18
15
  storagePath?: string;
19
16
  storageBeingWritten?: ReturnType<typeof setTimeout>;
20
- opts: BasedOpts;
17
+ opts?: BasedOpts;
21
18
  connected: boolean;
22
- connection: Connection;
23
- url: () => Promise<string>;
19
+ connection?: Connection;
20
+ url?: () => Promise<string>;
24
21
  outgoingStreams: Map<string, {
25
22
  stream: any;
26
23
  resolve: (result: any) => void;
@@ -28,30 +25,30 @@ export declare class BasedClient extends Emitter {
28
25
  }[]>;
29
26
  isDrainingStreams: boolean;
30
27
  maxPublishQueue: number;
31
- publishQueue: ChannelPublishQueue;
32
- functionQueue: FunctionQueue;
33
- observeQueue: ObserveQueue;
34
- channelQueue: ChannelQueue;
35
- getObserveQueue: GetObserveQueue;
28
+ pQ: ChannelPublishQueue;
29
+ fQ: FunctionQueue;
30
+ oQ: ObserveQueue;
31
+ cQ: ChannelQueue;
32
+ gQ: GetObserveQueue;
36
33
  drainInProgress: boolean;
37
- drainTimeout: ReturnType<typeof setTimeout>;
38
- idlePing: ReturnType<typeof setTimeout>;
34
+ drainTimeout?: ReturnType<typeof setTimeout>;
35
+ idlePing?: ReturnType<typeof setTimeout>;
39
36
  localStorage: boolean;
40
37
  maxCacheSize: number;
41
38
  cache: Cache;
42
39
  functionResponseListeners: FunctionResponseListeners;
43
40
  requestId: number;
44
41
  channelState: ChannelState;
45
- channelCleanTimeout?: ReturnType<typeof setTimeout>;
42
+ channelCleanTimeout?: ReturnType<typeof setTimeout> | null;
46
43
  channelCleanupCycle: number;
47
44
  observeState: ObserveState;
48
45
  getState: GetState;
49
46
  authState: AuthState;
50
47
  authRequest: {
51
- authState: AuthState;
52
- promise: Promise<AuthState>;
53
- resolve: (result: AuthState) => void;
54
- reject: (err: Error) => void;
48
+ authState: AuthState | null;
49
+ promise: Promise<AuthState> | null;
50
+ resolve: ((result: AuthState) => void) | null;
51
+ reject: ((err: Error) => void) | null;
55
52
  inProgress: boolean;
56
53
  };
57
54
  onClose(): void;
@@ -200,9 +197,12 @@ export { BasedOpts };
200
197
  */
201
198
  export default function based(opts: BasedOpts, settings?: Settings): BasedClient;
202
199
  export type QueryMap = {
200
+ db: {
201
+ payload: any;
202
+ result: any;
203
+ };
203
204
  [key: string]: {
204
205
  payload: any;
205
206
  result: any;
206
207
  };
207
208
  };
208
- //# sourceMappingURL=index.d.ts.map