@based/client 4.8.10 → 5.0.0-alpha.2

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 +12 -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 +73 -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 +1 -0
  48. package/dist/src/persistentStorage/node.js +109 -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 +38 -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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/outgoing/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { AuthState } from '../types/auth';
2
- import { FunctionQueueItem, GetObserveQueue, ObserveQueue } from '../types';
3
- import { ChannelPublishQueueItem, ChannelQueueItem } from '../types/channel';
4
- export declare const encodeGetObserveMessage: (id: number, o: import("../types").GetObserveQueueItem) => {
1
+ import { AuthState } from '../types/auth.js';
2
+ import { ChannelPublishQueueItem, ChannelQueueItem, FunctionQueueItem, GetObserveQueue, ObserveQueue } from '../types/index.js';
3
+ export declare const encodeGetObserveMessage: (id: number, o: import("../types/observe.js").GetObserveQueueItem) => {
5
4
  buffers: Uint8Array[];
6
5
  len: number;
7
6
  };
@@ -9,7 +8,7 @@ export declare const encodeSubscribeChannelMessage: (id: number, o: ChannelQueue
9
8
  buffers: Uint8Array[];
10
9
  len: number;
11
10
  };
12
- export declare const encodeObserveMessage: (id: number, o: import("../types").ObserveQueueItem) => {
11
+ export declare const encodeObserveMessage: (id: number, o: import("../types/observe.js").ObserveQueueItem) => {
13
12
  buffers: Uint8Array[];
14
13
  len: number;
15
14
  };
@@ -22,4 +21,3 @@ export declare const encodePublishMessage: (f: ChannelPublishQueueItem) => {
22
21
  len: number;
23
22
  };
24
23
  export declare const encodeAuthMessage: (authState: AuthState) => Uint8Array;
25
- //# sourceMappingURL=protocol.d.ts.map
@@ -1,30 +1,4 @@
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;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.encodeAuthMessage = exports.encodePublishMessage = exports.encodeFunctionMessage = exports.encodeObserveMessage = exports.encodeSubscribeChannelMessage = exports.encodeGetObserveMessage = void 0;
27
- const fflate = __importStar(require("fflate"));
1
+ import { deflateSync } from 'fflate';
28
2
  const encoder = new TextEncoder();
29
3
  const storeUint8 = (buff, n, start, len) => {
30
4
  for (let index = start; index < start + len; index++) {
@@ -51,20 +25,26 @@ const encodeHeader = (type, isDeflate, len) => {
51
25
  const nr = (len << 4) + encodedMeta;
52
26
  return nr;
53
27
  };
28
+ const createBuffer = (type, isDeflate, len, size = len) => {
29
+ const header = encodeHeader(type, isDeflate, len);
30
+ const buff = new Uint8Array(size);
31
+ storeUint8(buff, header, 0, 4);
32
+ return buff;
33
+ };
54
34
  const encodePayload = (payload, noDeflate = false) => {
55
35
  let p;
56
36
  let isDeflate = false;
57
37
  if (payload !== undefined) {
58
38
  p = encoder.encode(typeof payload === 'string' ? payload : JSON.stringify(payload));
59
39
  if (!noDeflate && p.length > 150) {
60
- p = fflate.deflateSync(p);
40
+ p = deflateSync(p);
61
41
  isDeflate = true;
62
42
  }
63
43
  return [isDeflate, p];
64
44
  }
65
45
  return [false];
66
46
  };
67
- const encodeGetObserveMessage = (id, o) => {
47
+ export const encodeGetObserveMessage = (id, o) => {
68
48
  let len = 4;
69
49
  const [type, name, checksum, payload] = o;
70
50
  // Type 3 = get
@@ -78,9 +58,7 @@ const encodeGetObserveMessage = (id, o) => {
78
58
  }
79
59
  const buffLen = 16;
80
60
  len += buffLen;
81
- const header = encodeHeader(type, isDeflate, len);
82
- const buff = new Uint8Array(1 + 4 + buffLen);
83
- storeUint8(buff, header, 0, 4);
61
+ const buff = createBuffer(type, isDeflate, len, 5 + buffLen);
84
62
  storeUint8(buff, id, 4, 8);
85
63
  storeUint8(buff, checksum, 12, 8);
86
64
  buff[20] = n.length;
@@ -93,8 +71,7 @@ const encodeGetObserveMessage = (id, o) => {
93
71
  }
94
72
  return { buffers: [], len: 0 };
95
73
  };
96
- exports.encodeGetObserveMessage = encodeGetObserveMessage;
97
- const encodeSubscribeChannelMessage = (id, o) => {
74
+ export const encodeSubscribeChannelMessage = (id, o) => {
98
75
  let len = 4;
99
76
  const [type, name, payload] = o;
100
77
  // Type 5 = subscribe
@@ -102,9 +79,7 @@ const encodeSubscribeChannelMessage = (id, o) => {
102
79
  // Type 7 = unsubscribe
103
80
  // | 4 header | 8 id |
104
81
  if (type === 7) {
105
- const header = encodeHeader(type, false, 12);
106
- const buff = new Uint8Array(4 + 8);
107
- storeUint8(buff, header, 0, 4);
82
+ const buff = createBuffer(type, false, 12);
108
83
  storeUint8(buff, id, 4, 8);
109
84
  return { buffers: [buff], len: 12 };
110
85
  }
@@ -117,9 +92,7 @@ const encodeSubscribeChannelMessage = (id, o) => {
117
92
  }
118
93
  const buffLen = 8;
119
94
  len += buffLen;
120
- const header = encodeHeader(5, isRequestSubscriber, len);
121
- const buff = new Uint8Array(1 + 4 + buffLen);
122
- storeUint8(buff, header, 0, 4);
95
+ const buff = createBuffer(5, isRequestSubscriber, len, 5 + buffLen);
123
96
  storeUint8(buff, id, 4, 8);
124
97
  buff[12] = n.length;
125
98
  if (p) {
@@ -127,8 +100,7 @@ const encodeSubscribeChannelMessage = (id, o) => {
127
100
  }
128
101
  return { buffers: [buff, n], len };
129
102
  };
130
- exports.encodeSubscribeChannelMessage = encodeSubscribeChannelMessage;
131
- const encodeObserveMessage = (id, o) => {
103
+ export const encodeObserveMessage = (id, o) => {
132
104
  let len = 4;
133
105
  const [type, name, checksum, payload] = o;
134
106
  // Type 1 = subscribe
@@ -136,9 +108,7 @@ const encodeObserveMessage = (id, o) => {
136
108
  // Type 2 = unsubscribe
137
109
  // | 4 header | 8 id |
138
110
  if (type === 2) {
139
- const header = encodeHeader(type, false, 12);
140
- const buff = new Uint8Array(4 + 8);
141
- storeUint8(buff, header, 0, 4);
111
+ const buff = createBuffer(type, false, 12);
142
112
  storeUint8(buff, id, 4, 8);
143
113
  return { buffers: [buff], len: 12 };
144
114
  }
@@ -150,9 +120,7 @@ const encodeObserveMessage = (id, o) => {
150
120
  }
151
121
  const buffLen = 16;
152
122
  len += buffLen;
153
- const header = encodeHeader(type, isDeflate, len);
154
- const buff = new Uint8Array(1 + 4 + buffLen);
155
- storeUint8(buff, header, 0, 4);
123
+ const buff = createBuffer(type, isDeflate, len, 5 + buffLen);
156
124
  storeUint8(buff, id, 4, 8);
157
125
  storeUint8(buff, checksum, 12, 8);
158
126
  buff[20] = n.length;
@@ -161,8 +129,7 @@ const encodeObserveMessage = (id, o) => {
161
129
  }
162
130
  return { buffers: [buff, n], len };
163
131
  };
164
- exports.encodeObserveMessage = encodeObserveMessage;
165
- const encodeFunctionMessage = (f) => {
132
+ export const encodeFunctionMessage = (f) => {
166
133
  // | 4 header | 3 id | 1 name length | * name | * payload |
167
134
  let len = 7;
168
135
  const [id, name, payload] = f;
@@ -172,9 +139,7 @@ const encodeFunctionMessage = (f) => {
172
139
  if (p) {
173
140
  len += p.length;
174
141
  }
175
- const header = encodeHeader(0, isDeflate, len);
176
- const buff = new Uint8Array(4 + 3 + 1);
177
- storeUint8(buff, header, 0, 4);
142
+ const buff = createBuffer(0, isDeflate, len, 8);
178
143
  storeUint8(buff, id, 4, 3);
179
144
  buff[7] = n.length;
180
145
  if (p) {
@@ -182,8 +147,7 @@ const encodeFunctionMessage = (f) => {
182
147
  }
183
148
  return { buffers: [buff, n], len };
184
149
  };
185
- exports.encodeFunctionMessage = encodeFunctionMessage;
186
- const encodePublishMessage = (f) => {
150
+ export const encodePublishMessage = (f) => {
187
151
  // | 4 header | 8 id | * payload |
188
152
  let len = 12;
189
153
  const [id, payload] = f;
@@ -191,30 +155,24 @@ const encodePublishMessage = (f) => {
191
155
  if (p) {
192
156
  len += p.length;
193
157
  }
194
- const header = encodeHeader(6, isDeflate, len);
195
- const buff = new Uint8Array(4 + 8);
196
- storeUint8(buff, header, 0, 4);
158
+ const buff = createBuffer(6, isDeflate, len, 12);
197
159
  storeUint8(buff, id, 4, 8);
198
160
  if (p) {
199
161
  return { buffers: [buff, p], len };
200
162
  }
201
163
  return { buffers: [buff], len };
202
164
  };
203
- exports.encodePublishMessage = encodePublishMessage;
204
- const encodeAuthMessage = (authState) => {
165
+ export const encodeAuthMessage = (authState) => {
205
166
  // | 4 header | * payload |
206
167
  let len = 4;
207
168
  const [isDeflate, payload] = encodePayload(authState);
208
169
  if (payload) {
209
170
  len += payload.length;
210
171
  }
211
- const header = encodeHeader(4, isDeflate, len);
212
- const buff = new Uint8Array(len);
213
- storeUint8(buff, header, 0, 4);
172
+ const buff = createBuffer(4, isDeflate, len);
214
173
  if (payload) {
215
174
  buff.set(payload, 4);
216
175
  }
217
176
  return buff;
218
177
  };
219
- exports.encodeAuthMessage = encodeAuthMessage;
220
178
  //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/outgoing/protocol.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- import { BasedClient } from '..';
1
+ import { BasedClient } from '../index.js';
2
2
  export declare const removeStorage: (client: BasedClient, key: string) => void;
3
3
  export declare const setStorage: (client: BasedClient, key: string, value: any) => void;
4
- export declare const updateStorage: (client: BasedClient) => Promise<any>;
5
- export declare const initStorage: (client: BasedClient) => Promise<any>;
6
- export declare const clearStorage: (client: BasedClient) => Promise<any>;
7
- //# sourceMappingURL=index.d.ts.map
4
+ export declare const updateStorage: (_client: BasedClient, _instant?: boolean) => Promise<void>;
5
+ export declare const initStorage: (client: BasedClient) => Promise<void>;
6
+ export declare const clearStorage: (_client: BasedClient) => Promise<void>;
@@ -0,0 +1,182 @@
1
+ import { inflateSync, deflateSync } from 'fflate';
2
+ import { CACHE_PREFIX, CACHE_SIZE, CACHE_NAME, CACHE_AUTH, } from './constants.js';
3
+ import { encodeBase64, decodeBase64 } from '@saulx/utils';
4
+ const decoder = new TextDecoder('utf-8');
5
+ const encoder = new TextEncoder();
6
+ const decode = (dataURI) => {
7
+ const uncompressed = decoder.decode(inflateSync(decodeBase64(dataURI)));
8
+ const parsed = JSON.parse(uncompressed);
9
+ return parsed;
10
+ };
11
+ const removeStorageBrowser = (client, key) => {
12
+ const prev = localStorage.getItem(key);
13
+ if (prev) {
14
+ client.storageSize -= new Blob([prev]).size;
15
+ localStorage.setItem(CACHE_SIZE, String(client.storageSize));
16
+ localStorage.removeItem(key);
17
+ }
18
+ };
19
+ const clearStorageBrowser = () => {
20
+ const keys = Object.keys(localStorage);
21
+ try {
22
+ for (const key of keys) {
23
+ if (key.startsWith(CACHE_NAME)) {
24
+ localStorage.removeItem(key);
25
+ }
26
+ }
27
+ }
28
+ catch (err) {
29
+ try {
30
+ localStorage.clear();
31
+ }
32
+ catch (err) {
33
+ // console.error(`Based - Error clearing localStorage`)
34
+ }
35
+ }
36
+ };
37
+ const setStorageBrowser = (client, key, value) => {
38
+ try {
39
+ const env = client.storageEnvKey;
40
+ if (!env) {
41
+ return;
42
+ }
43
+ const prev = localStorage.getItem(key);
44
+ const stringifiedJson = JSON.stringify(value);
45
+ const encoded = stringifiedJson.length > 70 || key === CACHE_AUTH + '-' + env
46
+ ? encodeBase64(deflateSync(encoder.encode(stringifiedJson)))
47
+ : stringifiedJson;
48
+ const blob = new Blob([encoded]);
49
+ const size = blob.size;
50
+ if (prev) {
51
+ client.storageSize -= new Blob([prev]).size;
52
+ }
53
+ client.storageSize += size;
54
+ if (client.storageSize > client.maxStorageSize) {
55
+ // console.info('Based - Max localStorage size reached - clear')
56
+ clearStorageBrowser();
57
+ client.storageSize = 0;
58
+ if (client.authState.persistent === true) {
59
+ setStorageBrowser(client, CACHE_AUTH + '-' + env, client.authState);
60
+ }
61
+ client.storageSize += size;
62
+ }
63
+ localStorage.setItem(CACHE_SIZE, String(client.storageSize));
64
+ localStorage.setItem(key, encoded);
65
+ }
66
+ catch (err) {
67
+ console.error(`Based - Error writing ${key} to localStorage`, err);
68
+ }
69
+ };
70
+ const getStorageBrowser = (client, key) => {
71
+ const env = client.storageEnvKey;
72
+ if (!env) {
73
+ return;
74
+ }
75
+ try {
76
+ const value = localStorage.getItem(key);
77
+ if (value !== undefined) {
78
+ if (value.length < 70 && key !== CACHE_AUTH + '-' + env) {
79
+ try {
80
+ return JSON.parse(value);
81
+ }
82
+ catch (err) { }
83
+ }
84
+ return decode(value);
85
+ }
86
+ return;
87
+ }
88
+ catch (err) {
89
+ // console.error(`Based - Error parsing ${key} from localStorage`)
90
+ }
91
+ };
92
+ const initStorageBrowser = async (client) => {
93
+ const env = client.storageEnvKey;
94
+ if (!env) {
95
+ return;
96
+ }
97
+ const prevCache = global.__basedcache__ ?? {};
98
+ for (const key in prevCache) {
99
+ client.cache.set(Number(key), prevCache[key]);
100
+ }
101
+ try {
102
+ // compress as option!
103
+ let totalSize = Number(localStorage.getItem(CACHE_SIZE) || 0);
104
+ if (totalSize < 0) {
105
+ // console.error('Based - Corrupt localStorage (negative size) - clear')
106
+ clearStorageBrowser();
107
+ totalSize = 0;
108
+ }
109
+ client.storageSize = totalSize;
110
+ const keys = Object.keys(localStorage);
111
+ if (keys.length === 1 && totalSize > 0) {
112
+ // console.error(
113
+ // 'Based - Corrupt localStorage (size but no keys) - clear',
114
+ // totalSize
115
+ // )
116
+ clearStorageBrowser();
117
+ totalSize = 0;
118
+ }
119
+ // console.info(
120
+ // `Based - init localstorage stored ${~~(totalSize / 1024) + 'kb'}`
121
+ // )
122
+ if (totalSize > 0) {
123
+ for (const key of keys) {
124
+ if (key === CACHE_SIZE || !key.startsWith(CACHE_NAME)) {
125
+ continue;
126
+ }
127
+ if (key === CACHE_AUTH + '-' + env) {
128
+ const authState = getStorageBrowser(client, key);
129
+ if (authState) {
130
+ client.setAuthState(authState).catch((err) => {
131
+ console.error(err.message);
132
+ removeStorageBrowser(client, key);
133
+ });
134
+ }
135
+ continue;
136
+ }
137
+ const [, keyValuePair] = key.split(CACHE_PREFIX);
138
+ if (!keyValuePair) {
139
+ continue;
140
+ }
141
+ const [id, e] = keyValuePair.split('-');
142
+ if (e !== String(env)) {
143
+ continue;
144
+ }
145
+ if (!id) {
146
+ // console.warn('Based - clear corrupt localStorage item')
147
+ removeStorageBrowser(client, key);
148
+ continue;
149
+ }
150
+ const value = getStorageBrowser(client, key);
151
+ client.cache.set(Number(id), value);
152
+ }
153
+ }
154
+ }
155
+ catch (err) {
156
+ // console.error('Based - Cannot read localStorage')
157
+ }
158
+ };
159
+ export const removeStorage = (client, key) => {
160
+ const env = client.storageEnvKey;
161
+ if (!env) {
162
+ return;
163
+ }
164
+ key += '-' + env;
165
+ removeStorageBrowser(client, key);
166
+ };
167
+ export const setStorage = (client, key, value) => {
168
+ const env = client.storageEnvKey;
169
+ if (!env) {
170
+ return;
171
+ }
172
+ key += '-' + env;
173
+ setStorageBrowser(client, key, value);
174
+ };
175
+ export const updateStorage = async (_client, _instant) => { };
176
+ export const initStorage = async (client) => {
177
+ return initStorageBrowser(client);
178
+ };
179
+ export const clearStorage = async (_client) => {
180
+ return clearStorageBrowser();
181
+ };
182
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/persistentStorage/browser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const CACHE_NAME = "@based";
2
+ export declare const CACHE_PREFIX: string;
3
+ export declare const CACHE_SIZE: string;
4
+ export declare const CACHE_AUTH: string;
@@ -0,0 +1,5 @@
1
+ export const CACHE_NAME = '@based';
2
+ export const CACHE_PREFIX = CACHE_NAME + '-cache';
3
+ export const CACHE_SIZE = CACHE_NAME + '-size';
4
+ export const CACHE_AUTH = CACHE_NAME + '-authState';
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/persistentStorage/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,QAAQ,CAAA;AAClC,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAA;AACjD,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,GAAG,OAAO,CAAA;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,GAAG,YAAY,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { BasedClient } from '../index.js';
2
+ export declare const removeStorage: (client: BasedClient, key: string) => void;
3
+ export declare const setStorage: (client: BasedClient, _key: string, _value: any) => void;
4
+ export declare const updateStorage: (client: BasedClient, instant?: boolean) => Promise<void>;
5
+ export declare const initStorage: (client: BasedClient) => Promise<void>;
6
+ export declare const clearStorage: (client: BasedClient) => Promise<void>;
@@ -0,0 +1,128 @@
1
+ import { join } from 'path';
2
+ import { gzip, gunzipSync } from 'node:zlib';
3
+ import { writeFile as wf, rm as rmOrignal, readFileSync, existsSync, } from 'node:fs';
4
+ import { promisify } from 'node:util';
5
+ const writeFile = promisify(wf);
6
+ const rm = promisify(rmOrignal);
7
+ const compress = promisify(gzip);
8
+ const store = async (client) => {
9
+ try {
10
+ clearTimeout(client.storageBeingWritten);
11
+ client.storageBeingWritten = null;
12
+ const file = join(client.storagePath, 'based-' + client.storageEnvKey + '.storage');
13
+ const cache = [];
14
+ client.cache.forEach((c, id) => {
15
+ if (c.p) {
16
+ cache.push(id, c.c, c.v);
17
+ }
18
+ });
19
+ const f = { cache };
20
+ if (client.authState.persistent) {
21
+ f.authState = client.authState;
22
+ }
23
+ client.storageBeingWritten = null;
24
+ await writeFile(file, await compress(JSON.stringify(f)));
25
+ }
26
+ catch (err) {
27
+ console.error(' [Based-client] Cannot update persistent storage', client.storagePath);
28
+ }
29
+ };
30
+ const writeToStorage = async (client, instant) => {
31
+ if (!client.storageBeingWritten) {
32
+ if (instant) {
33
+ store(client);
34
+ }
35
+ else {
36
+ client.storageBeingWritten = setTimeout(() => store(client), 5e3);
37
+ }
38
+ }
39
+ else if (instant) {
40
+ clearTimeout(client.storageBeingWritten);
41
+ await store(client);
42
+ }
43
+ };
44
+ const initStorageNode = async (client) => {
45
+ const file = join(client.storagePath, 'based-' + client.storageEnvKey + '.storage');
46
+ try {
47
+ const s = existsSync(file);
48
+ if (s) {
49
+ try {
50
+ const r = readFileSync(file);
51
+ const unpacked = gunzipSync(r);
52
+ const c = JSON.parse(unpacked.toString());
53
+ for (let i = 0; i < c.cache.length - 2; i += 3) {
54
+ client.cache.set(c.cache[i], {
55
+ c: c.cache[i + 1],
56
+ v: c.cache[i + 2],
57
+ p: true,
58
+ });
59
+ }
60
+ if (c.authState) {
61
+ client.setAuthState(c.authState).catch(() => {
62
+ console.error(' [Based-client] Invalid authState');
63
+ clearStorageNode(client);
64
+ });
65
+ }
66
+ }
67
+ catch (err) {
68
+ console.error(' [Based-client] Corrupt persistent storage - clear');
69
+ await clearStorageNode(client);
70
+ }
71
+ }
72
+ else {
73
+ const x = await compress(JSON.stringify({ cache: [] }));
74
+ await writeFile(file, x).catch((err) => {
75
+ if (err) {
76
+ console.error(' [Based-client] Failed creating persistent storage, cannot write file');
77
+ client.storagePath = null;
78
+ }
79
+ });
80
+ }
81
+ }
82
+ catch (err) { }
83
+ };
84
+ const clearStorageNode = async (client) => {
85
+ const file = join(client.storagePath, 'based-' + client.storageEnvKey + '.storage');
86
+ clearTimeout(client.storageBeingWritten);
87
+ return rm(file);
88
+ };
89
+ const removeStorageNode = (client, _key) => {
90
+ writeToStorage(client);
91
+ };
92
+ const setStorageNode = (client) => {
93
+ writeToStorage(client);
94
+ };
95
+ export const removeStorage = (client, key) => {
96
+ const env = client.storageEnvKey;
97
+ if (!env) {
98
+ return;
99
+ }
100
+ if (client.storagePath) {
101
+ removeStorageNode(client, key);
102
+ }
103
+ };
104
+ export const setStorage = (client, _key, _value) => {
105
+ const env = client.storageEnvKey;
106
+ if (!env) {
107
+ return;
108
+ }
109
+ if (client.storagePath) {
110
+ setStorageNode(client);
111
+ }
112
+ };
113
+ export const updateStorage = async (client, instant) => {
114
+ if (client.storagePath) {
115
+ return writeToStorage(client, instant);
116
+ }
117
+ };
118
+ export const initStorage = async (client) => {
119
+ if (client.storagePath) {
120
+ return initStorageNode(client);
121
+ }
122
+ };
123
+ export const clearStorage = async (client) => {
124
+ if (client.storagePath) {
125
+ return clearStorageNode(client);
126
+ }
127
+ };
128
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/persistentStorage/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};