@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,109 @@
1
+ // import { AuthState, BasedClient } from '..'
2
+ // import { join } from 'path'
3
+ // import gzip from 'zlib'
4
+ // import fs from 'fs'
5
+ // import { promisify } from 'util'
6
+ export {};
7
+ // const writeFile = promisify(fs.writeFile)
8
+ // const rm = promisify(fs.rm)
9
+ // const compress = promisify(gzip.gzip)
10
+ // export const store = async (client: BasedClient) => {
11
+ // try {
12
+ // clearTimeout(client.storageBeingWritten)
13
+ // client.storageBeingWritten = null
14
+ // const file = join(
15
+ // client.storagePath,
16
+ // 'based-' + client.storageEnvKey + '.storage'
17
+ // )
18
+ // // [id, checksum, value]
19
+ // const cache: any[] = []
20
+ // client.cache.forEach((c, id) => {
21
+ // if (c.persistent) {
22
+ // cache.push(id, c.checksum, c.value)
23
+ // }
24
+ // })
25
+ // const f: { cache: any[]; authState?: AuthState } = { cache }
26
+ // if (client.authState.persistent) {
27
+ // f.authState = client.authState
28
+ // }
29
+ // client.storageBeingWritten = null
30
+ // await writeFile(file, await compress(JSON.stringify(f)))
31
+ // } catch (err) {
32
+ // console.error(
33
+ // ' [Based-client] Cannot update persistent storage',
34
+ // client.storagePath
35
+ // )
36
+ // }
37
+ // }
38
+ // const writeToStorage = (client: BasedClient) => {
39
+ // if (!client.storageBeingWritten) {
40
+ // client.storageBeingWritten = setTimeout(() => store(client), 5e3)
41
+ // }
42
+ // }
43
+ // export const initStorageNode = async (client: BasedClient) => {
44
+ // const file = join(
45
+ // client.storagePath,
46
+ // 'based-' + client.storageEnvKey + '.storage'
47
+ // )
48
+ // try {
49
+ // const s = fs.statSync(file)
50
+ // if (s) {
51
+ // try {
52
+ // const r = fs.readFileSync(file)
53
+ // const unpacked = gzip.gunzipSync(r)
54
+ // const c = JSON.parse(unpacked.toString())
55
+ // for (let i = 0; i < c.cache.length - 2; i += 3) {
56
+ // client.cache.set(c.cache[i], {
57
+ // checksum: c.cache[i + 1],
58
+ // value: c.cache[i + 2],
59
+ // persistent: true,
60
+ // })
61
+ // }
62
+ // if (c.authState) {
63
+ // client.setAuthState(c.authState).catch(() => {
64
+ // console.error(' [Based-client] Invalid authState')
65
+ // clearStorageNode(client)
66
+ // })
67
+ // }
68
+ // } catch (err) {
69
+ // console.error(' [Based-client] Corrupt persistent storage - clear')
70
+ // await clearStorageNode(client)
71
+ // }
72
+ // } else {
73
+ // const x = await compress(JSON.stringify({ cache: [] }))
74
+ // await writeFile(file, x).catch((err) => {
75
+ // if (err) {
76
+ // console.error(
77
+ // ' [Based-client] Failed creating persistent storage, cannot write file'
78
+ // )
79
+ // client.storagePath = null
80
+ // }
81
+ // })
82
+ // }
83
+ // } catch (err) {}
84
+ // }
85
+ // export const clearStorageNode = async (client: BasedClient) => {
86
+ // const file = join(
87
+ // client.storagePath,
88
+ // 'based-' + client.storageEnvKey + '.storage'
89
+ // )
90
+ // clearTimeout(client.storageBeingWritten)
91
+ // return rm(file)
92
+ // }
93
+ // export const removeStorageNode = (
94
+ // client: BasedClient,
95
+ // // eslint-disable-next-line
96
+ // key: string
97
+ // ) => {
98
+ // writeToStorage(client)
99
+ // }
100
+ // export const setStorageNode = (
101
+ // client: BasedClient,
102
+ // // eslint-disable-next-line
103
+ // key: string,
104
+ // // eslint-disable-next-line
105
+ // value: any
106
+ // ) => {
107
+ // writeToStorage(client)
108
+ // }
109
+ //# sourceMappingURL=node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/persistentStorage/node.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,8BAA8B;AAC9B,0BAA0B;AAC1B,sBAAsB;AACtB,mCAAmC;;AAEnC,4CAA4C;AAC5C,8BAA8B;AAC9B,wCAAwC;AAExC,wDAAwD;AACxD,UAAU;AACV,+CAA+C;AAC/C,wCAAwC;AACxC,yBAAyB;AACzB,4BAA4B;AAC5B,qDAAqD;AACrD,QAAQ;AACR,+BAA+B;AAC/B,8BAA8B;AAC9B,wCAAwC;AACxC,4BAA4B;AAC5B,8CAA8C;AAC9C,UAAU;AACV,SAAS;AACT,mEAAmE;AACnE,yCAAyC;AACzC,uCAAuC;AACvC,QAAQ;AACR,wCAAwC;AAExC,+DAA+D;AAC/D,oBAAoB;AACpB,qBAAqB;AACrB,+DAA+D;AAC/D,2BAA2B;AAC3B,QAAQ;AACR,MAAM;AACN,IAAI;AAEJ,oDAAoD;AACpD,uCAAuC;AACvC,wEAAwE;AACxE,MAAM;AACN,IAAI;AAEJ,kEAAkE;AAClE,uBAAuB;AACvB,0BAA0B;AAC1B,mDAAmD;AACnD,MAAM;AACN,UAAU;AACV,kCAAkC;AAClC,eAAe;AACf,cAAc;AACd,0CAA0C;AAC1C,8CAA8C;AAC9C,oDAAoD;AACpD,4DAA4D;AAC5D,2CAA2C;AAC3C,wCAAwC;AACxC,qCAAqC;AACrC,gCAAgC;AAChC,eAAe;AACf,YAAY;AACZ,6BAA6B;AAC7B,2DAA2D;AAC3D,oEAAoE;AACpE,uCAAuC;AACvC,eAAe;AACf,YAAY;AACZ,wBAAwB;AACxB,iFAAiF;AACjF,yCAAyC;AACzC,UAAU;AACV,eAAe;AACf,gEAAgE;AAChE,kDAAkD;AAClD,qBAAqB;AACrB,2BAA2B;AAC3B,0FAA0F;AAC1F,cAAc;AACd,sCAAsC;AACtC,YAAY;AACZ,WAAW;AACX,QAAQ;AACR,qBAAqB;AACrB,IAAI;AAEJ,mEAAmE;AACnE,uBAAuB;AACvB,0BAA0B;AAC1B,mDAAmD;AACnD,MAAM;AACN,6CAA6C;AAC7C,oBAAoB;AACpB,IAAI;AAEJ,qCAAqC;AACrC,yBAAyB;AACzB,gCAAgC;AAChC,gBAAgB;AAChB,SAAS;AACT,2BAA2B;AAC3B,IAAI;AAEJ,kCAAkC;AAClC,yBAAyB;AACzB,gCAAgC;AAChC,iBAAiB;AACjB,gCAAgC;AAChC,eAAe;AACf,SAAS;AACT,2BAA2B;AAC3B,IAAI"}
@@ -1,5 +1,5 @@
1
- import { ObserveDataListener, ObserveErrorListener, CloseObserve } from '../types';
2
- import { BasedClient } from '..';
1
+ import { ObserveDataListener, ObserveErrorListener, CloseObserve } from '../types/index.js';
2
+ import { BasedClient } from '../index.js';
3
3
  export declare class BasedQuery<P = any, K = any> {
4
4
  id: number;
5
5
  query: P;
@@ -15,4 +15,3 @@ export declare class BasedQuery<P = any, K = any> {
15
15
  getWhen(condition: (data: any, checksum: number) => boolean): Promise<K>;
16
16
  get(): Promise<K>;
17
17
  }
18
- //# sourceMappingURL=index.d.ts.map
@@ -1,15 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BasedQuery = void 0;
4
- const outgoing_1 = require("../outgoing");
5
- const genObserveId_1 = require("../genObserveId");
6
- const persistentStorage_1 = require("../persistentStorage");
1
+ import { addObsToQueue, addObsCloseToQueue, addGetToQueue, } from '../outgoing/index.js';
2
+ import { genObserveId } from '../genObserveId.js';
3
+ import { removeStorage, setStorage } from '../persistentStorage/index.js';
7
4
  // Can extend this as a query builder
8
5
  // TODO: maybe add user bound as option (will clear / set on a-state chage)
9
- class BasedQuery {
6
+ export class BasedQuery {
7
+ id;
8
+ query;
9
+ name;
10
+ client;
11
+ persistent;
10
12
  constructor(client, name, payload, opts) {
11
13
  this.query = payload;
12
- this.id = (0, genObserveId_1.genObserveId)(name, payload);
14
+ this.id = genObserveId(name, payload);
13
15
  this.client = client;
14
16
  this.name = name;
15
17
  this.persistent = opts?.persistent || false;
@@ -19,7 +21,7 @@ class BasedQuery {
19
21
  }
20
22
  clearCache() {
21
23
  if (this.persistent) {
22
- (0, persistentStorage_1.removeStorage)(this.client, '@based-cache-' + this.id);
24
+ removeStorage(this.client, '@based-cache-' + this.id);
23
25
  }
24
26
  this.client.cache.delete(this.id);
25
27
  }
@@ -40,14 +42,14 @@ class BasedQuery {
40
42
  persistent: this.persistent || false,
41
43
  idCnt: 1,
42
44
  });
43
- (0, outgoing_1.addObsToQueue)(this.client, this.name, this.id, this.query, cachedData?.checksum || 0);
45
+ addObsToQueue(this.client, this.name, this.id, this.query, cachedData?.c || 0);
44
46
  }
45
47
  else {
46
48
  const obs = this.client.observeState.get(this.id);
47
49
  if (this.persistent && !obs.persistent) {
48
50
  obs.persistent = true;
49
51
  if (cachedData) {
50
- (0, persistentStorage_1.setStorage)(this.client, '@based-cache-' + this.id, cachedData);
52
+ setStorage(this.client, '@based-cache-' + this.id, cachedData);
51
53
  }
52
54
  }
53
55
  subscriberId = ++obs.idCnt;
@@ -57,7 +59,7 @@ class BasedQuery {
57
59
  });
58
60
  }
59
61
  if (cachedData) {
60
- onData(cachedData.value, cachedData.checksum);
62
+ onData(cachedData.v, cachedData.c);
61
63
  }
62
64
  return () => {
63
65
  const obs = this.client.observeState.get(this.id);
@@ -65,7 +67,7 @@ class BasedQuery {
65
67
  obs.subscribers.delete(subscriberId);
66
68
  if (obs.subscribers.size === 0) {
67
69
  this.client.observeState.delete(this.id);
68
- (0, outgoing_1.addObsCloseToQueue)(this.client, this.id);
70
+ addObsCloseToQueue(this.client, this.id);
69
71
  }
70
72
  }
71
73
  else {
@@ -92,22 +94,21 @@ class BasedQuery {
92
94
  this.client.getState.set(this.id, []);
93
95
  const cachedData = this.client.cache.get(this.id);
94
96
  if (this.client.observeState.has(this.id)) {
95
- if (this.client.observeQueue.has(this.id)) {
96
- const [type] = this.client.observeQueue.get(this.id);
97
+ if (this.client.oQ.has(this.id)) {
98
+ const [type] = this.client.oQ.get(this.id);
97
99
  if (type === 1) {
98
100
  this.client.getState.get(this.id).push([resolve, reject]);
99
101
  return;
100
102
  }
101
103
  }
102
104
  if (cachedData) {
103
- resolve(cachedData.value);
105
+ resolve(cachedData.v);
104
106
  return;
105
107
  }
106
108
  }
107
109
  this.client.getState.get(this.id).push([resolve, reject]);
108
- (0, outgoing_1.addGetToQueue)(this.client, this.name, this.id, this.query, cachedData?.checksum || 0);
110
+ addGetToQueue(this.client, this.name, this.id, this.query, cachedData?.c || 0);
109
111
  });
110
112
  }
111
113
  }
112
- exports.BasedQuery = BasedQuery;
113
114
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/query/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { BasedClient } from './index.js';
2
+ import { CacheValue } from './types/cache.js';
3
+ export declare const createCacheObject: (client: BasedClient) => {
4
+ [key: string]: CacheValue;
5
+ };
6
+ export declare const createCacheScriptTag: (client: BasedClient) => string;
@@ -0,0 +1,11 @@
1
+ export const createCacheObject = (client) => {
2
+ const m = {};
3
+ client.cache.forEach((v, k) => {
4
+ m[k] = v;
5
+ });
6
+ return m;
7
+ };
8
+ export const createCacheScriptTag = (client) => {
9
+ return `<script>window.__basedcache__=${JSON.stringify(createCacheObject(client))}</script>`;
10
+ };
11
+ //# sourceMappingURL=ssr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../src/ssr.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAAmB,EAGnB,EAAE;IACF,MAAM,CAAC,GAAQ,EAAE,CAAA;IACjB,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC5B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACV,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAmB,EAAU,EAAE;IAClE,OAAO,iCAAiC,IAAI,CAAC,SAAS,CACpD,iBAAiB,CAAC,MAAM,CAAC,CAC1B,WAAW,CAAA;AACd,CAAC,CAAA"}
@@ -1,5 +1,4 @@
1
- import { BasedClient } from '..';
2
- import { StreamFunctionOpts } from './types';
1
+ import { BasedClient } from '../index.js';
2
+ import { StreamFunctionOpts } from './types.js';
3
3
  declare const _default: (client: BasedClient, name: string, options: StreamFunctionOpts, progressListener?: (progress: number) => void) => Promise<any>;
4
4
  export default _default;
5
- //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,34 @@
1
+ import { isFileContents, isStreamFunctionPath, isStreamFunctionStream, } from './types.js';
2
+ import uploadFileBrowser from './uploadFileBrowser.js';
3
+ import fetch from './fetch.js';
4
+ export default async (client, name, options, progressListener) => {
5
+ if (isStreamFunctionPath(options)) {
6
+ return;
7
+ }
8
+ if (isStreamFunctionStream(options)) {
9
+ return;
10
+ }
11
+ if (options.contents instanceof ArrayBuffer) {
12
+ options.contents = new global.Blob([options.contents], {
13
+ type: options.mimeType || 'text/plain',
14
+ });
15
+ // want to stream this XHR browser / stream + http nodejs
16
+ return fetch(client, name, options);
17
+ }
18
+ if (isFileContents(options)) {
19
+ return uploadFileBrowser(client, name, options, progressListener);
20
+ }
21
+ if (options.contents instanceof global.Blob) {
22
+ if (!options.mimeType) {
23
+ options.mimeType = options.contents.type;
24
+ }
25
+ // want to stream this XHR browser / stream + http nodejs
26
+ return fetch(client, name, options);
27
+ }
28
+ if (typeof options.contents === 'string') {
29
+ // want to stream this XHR browser / stream + http nodejs
30
+ return fetch(client, name, options);
31
+ }
32
+ throw new Error(`Invalid opts for file api ${name} ${JSON.stringify(options, null, 2)}`);
33
+ };
34
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/stream/browser.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EAEd,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAA;AACnB,OAAO,iBAAiB,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,MAAM,YAAY,CAAA;AAE9B,eAAe,KAAK,EAClB,MAAmB,EACnB,IAAY,EACZ,OAA2B,EAC3B,gBAA6C,EAC/B,EAAE;IAChB,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE;QACjC,OAAM;KACP;IAED,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE;QACnC,OAAM;KACP;IAED,IAAI,OAAO,CAAC,QAAQ,YAAY,WAAW,EAAE;QAC3C,OAAO,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACrD,IAAI,EAAE,OAAO,CAAC,QAAQ,IAAI,YAAY;SACvC,CAAC,CAAA;QACF,yDAAyD;QACzD,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KACpC;IAED,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE;QAC3B,OAAO,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAA;KAClE;IAED,IAAI,OAAO,CAAC,QAAQ,YAAY,MAAM,CAAC,IAAI,EAAE;QAC3C,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE;YACrB,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAA;SACzC;QAED,yDAAyD;QACzD,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KACpC;IAED,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACxC,yDAAyD;QACzD,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KACpC;IAED,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CACxE,CAAA;AACH,CAAC,CAAA"}
@@ -1,5 +1,4 @@
1
- import { BasedClient } from '..';
2
- import { StreamFunctionContents } from './types';
1
+ import { BasedClient } from '../index.js';
2
+ import { StreamFunctionContents } from './types.js';
3
3
  declare const _default: (client: BasedClient, name: string, options: StreamFunctionContents) => Promise<any>;
4
4
  export default _default;
5
- //# sourceMappingURL=fetch.d.ts.map
@@ -0,0 +1,34 @@
1
+ import { encodeAuthState } from '../index.js';
2
+ import fetch from '@based/fetch';
3
+ import { serializeQuery } from '@saulx/utils';
4
+ import parseOpts from '@based/opts';
5
+ export default async (client, name, options) => {
6
+ if (!client.connected) {
7
+ await client.once('connect');
8
+ }
9
+ const url = await parseOpts(client.opts, true);
10
+ const headers = {
11
+ 'Content-Type': options.mimeType || 'text/plain',
12
+ Authorization: encodeAuthState(client.authState),
13
+ };
14
+ if (options.fileName) {
15
+ headers['Content-Name'] = options.fileName;
16
+ }
17
+ let q = '';
18
+ if (options.payload) {
19
+ q = '?' + serializeQuery(options.payload);
20
+ }
21
+ // @ts-ignore
22
+ const result = await fetch(url + '/' + name + q, {
23
+ method: 'POST',
24
+ cache: 'no-cache',
25
+ headers,
26
+ body: options.contents,
27
+ }).then((t) => t.text());
28
+ try {
29
+ return JSON.parse(result);
30
+ }
31
+ catch (e) { }
32
+ return result;
33
+ };
34
+ //# sourceMappingURL=fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../../src/stream/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,eAAe,EAAE,MAAM,aAAa,CAAA;AAE1D,OAAO,KAAK,MAAM,cAAc,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,SAAS,MAAM,aAAa,CAAA;AAEnC,eAAe,KAAK,EAClB,MAAmB,EACnB,IAAY,EACZ,OAA+B,EACjB,EAAE;IAChB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;QACrB,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;KAC7B;IAED,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAE9C,MAAM,OAAO,GAAkB;QAC7B,cAAc,EAAE,OAAO,CAAC,QAAQ,IAAI,YAAY;QAChD,aAAa,EAAE,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC;KACjD,CAAA;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE;QACpB,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAA;KAC3C;IAED,IAAI,CAAC,GAAG,EAAE,CAAA;IACV,IAAI,OAAO,CAAC,OAAO,EAAE;QACnB,CAAC,GAAG,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;KAC1C;IAED,aAAa;IACb,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE;QAC/C,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,UAAU;QACjB,OAAO;QACP,IAAI,EAAE,OAAO,CAAC,QAAQ;KACvB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IAExB,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;KAC1B;IAAC,OAAO,CAAC,EAAE,GAAE;IAEd,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import { BasedClient } from '../index.js';
2
+ import { StreamFunctionOpts } from './types.js';
3
+ declare const _default: (client: BasedClient, name: string, options: StreamFunctionOpts, _progressListener?: (progress: number) => void) => Promise<any>;
4
+ export default _default;
@@ -0,0 +1,21 @@
1
+ import { isStreamFunctionPath, isStreamFunctionStream, } from './types.js';
2
+ import fetch from './fetch.js';
3
+ import { uploadFilePath, uploadFileStream } from './nodeStream.js';
4
+ export default async (client, name, options, _progressListener) => {
5
+ if (isStreamFunctionPath(options)) {
6
+ return uploadFilePath(client, name, options);
7
+ }
8
+ if (isStreamFunctionStream(options)) {
9
+ return uploadFileStream(client, name, options);
10
+ }
11
+ if (options.contents instanceof ArrayBuffer) {
12
+ options.contents = global.Buffer.from(options.contents);
13
+ return fetch(client, name, options);
14
+ }
15
+ if (typeof options.contents === 'string' ||
16
+ options.contents instanceof global.Buffer) {
17
+ return fetch(client, name, options);
18
+ }
19
+ throw new Error(`Invalid opts for file api ${name} ${JSON.stringify(options, null, 2)}`);
20
+ };
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/stream/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,MAAM,YAAY,CAAA;AAC9B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAElE,eAAe,KAAK,EAClB,MAAmB,EACnB,IAAY,EACZ,OAA2B,EAC3B,iBAA8C,EAChC,EAAE;IAChB,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE;QACjC,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KAC7C;IAED,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE;QACnC,OAAO,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KAC/C;IAED,IAAI,OAAO,CAAC,QAAQ,YAAY,WAAW,EAAE;QAC3C,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACvD,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KACpC;IAED,IACE,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,OAAO,CAAC,QAAQ,YAAY,MAAM,CAAC,MAAM,EACzC;QACA,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;KACpC;IAED,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CACxE,CAAA;AACH,CAAC,CAAA"}
@@ -1,8 +1,7 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  import { Readable } from 'stream';
3
- import { StreamFunctionPath, StreamFunctionStream } from './types';
4
- import { BasedClient } from '..';
3
+ import { StreamFunctionPath, StreamFunctionStream } from './types.js';
4
+ import { BasedClient } from '../index.js';
5
5
  export declare const isStream: (contents: any) => contents is Readable;
6
6
  export declare const uploadFilePath: (client: BasedClient, name: string, options: StreamFunctionPath) => Promise<any>;
7
7
  export declare const uploadFileStream: (client: BasedClient, name: string, options: StreamFunctionStream) => Promise<any>;
8
- //# sourceMappingURL=nodeStream.d.ts.map
@@ -1,19 +1,13 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.uploadFileStream = exports.uploadFilePath = exports.isStream = void 0;
7
- const stream_1 = require("stream");
8
- const http_1 = require("http");
9
- const https_1 = require("https");
10
- const fs_1 = __importDefault(require("fs"));
11
- const util_1 = require("util");
12
- const __1 = require("..");
13
- const opts_1 = __importDefault(require("@based/opts"));
14
- const error_1 = require("../types/error");
15
- const utils_1 = require("@saulx/utils");
16
- const stat = (0, util_1.promisify)(fs_1.default.stat);
1
+ import { Readable } from 'stream';
2
+ import { request } from 'http';
3
+ import { request as sslRequest } from 'https';
4
+ import fs from 'fs';
5
+ import { promisify } from 'util';
6
+ import { encodeAuthState } from '../index.js';
7
+ import parseOpts from '@based/opts';
8
+ import { convertDataToBasedError } from '../types/index.js';
9
+ import { serializeQuery } from '@saulx/utils';
10
+ const stat = promisify(fs.stat);
17
11
  const checkFile = async (path) => {
18
12
  try {
19
13
  const s = await stat(path);
@@ -23,16 +17,15 @@ const checkFile = async (path) => {
23
17
  }
24
18
  catch (err) { }
25
19
  };
26
- const isStream = (contents) => {
27
- return contents instanceof stream_1.Readable;
20
+ export const isStream = (contents) => {
21
+ return contents instanceof Readable;
28
22
  };
29
- exports.isStream = isStream;
30
23
  const parseUrlRe = /^(?:(tcp|wss?|https?):\/\/)?([a-z0-9.-]*)(?::(\d+))?$/;
31
- const uploadFilePath = async (client, name, options) => {
24
+ export const uploadFilePath = async (client, name, options) => {
32
25
  const info = await checkFile(options.path);
33
26
  if (info) {
34
- return (0, exports.uploadFileStream)(client, name, {
35
- contents: fs_1.default.createReadStream(options.path),
27
+ return uploadFileStream(client, name, {
28
+ contents: fs.createReadStream(options.path),
36
29
  mimeType: options.mimeType,
37
30
  extension: options.path.match(/\.(.*?)$/)?.[1],
38
31
  size: info.size,
@@ -44,7 +37,6 @@ const uploadFilePath = async (client, name, options) => {
44
37
  throw new Error(`File does not exist ${options.path}`);
45
38
  }
46
39
  };
47
- exports.uploadFilePath = uploadFilePath;
48
40
  const streamRequest = (stream, name, url, headers, query) => {
49
41
  const [, protocol, host, port] = parseUrlRe.exec(url);
50
42
  // query
@@ -66,7 +58,7 @@ const streamRequest = (stream, name, url, headers, query) => {
66
58
  try {
67
59
  const parsed = JSON.parse(result);
68
60
  if ('code' in parsed && 'error' in parsed) {
69
- reject((0, error_1.convertDataToBasedError)({
61
+ reject(convertDataToBasedError({
70
62
  code: parsed.code,
71
63
  message: parsed.error,
72
64
  }));
@@ -79,24 +71,24 @@ const streamRequest = (stream, name, url, headers, query) => {
79
71
  });
80
72
  };
81
73
  const req = protocol === 'wss' || protocol === 'https'
82
- ? (0, https_1.request)(httpOptions, incomingReady)
83
- : (0, http_1.request)(httpOptions, incomingReady);
74
+ ? sslRequest(httpOptions, incomingReady)
75
+ : request(httpOptions, incomingReady);
84
76
  stream.pipe(req);
85
77
  });
86
78
  };
87
- const uploadFileStream = async (client, name, options) => {
88
- if (!(options.contents instanceof stream_1.Readable)) {
79
+ export const uploadFileStream = async (client, name, options) => {
80
+ if (!(options.contents instanceof Readable)) {
89
81
  throw new Error('File Contents has to be an instance of "Readable"');
90
82
  }
91
83
  if (!client.connected) {
92
84
  await client.once('connect');
93
85
  }
94
86
  // key is something special
95
- const url = await (0, opts_1.default)(client.opts, true);
87
+ const url = await parseOpts(client.opts, true);
96
88
  const headers = {
97
89
  'Content-Length': String(options.size),
98
90
  'Content-Type': options.mimeType || 'text/plain',
99
- Authorization: (0, __1.encodeAuthState)(client.authState),
91
+ Authorization: encodeAuthState(client.authState),
100
92
  };
101
93
  if (options.fileName) {
102
94
  headers['Content-Name'] = options.fileName;
@@ -106,9 +98,8 @@ const uploadFileStream = async (client, name, options) => {
106
98
  }
107
99
  let q = '';
108
100
  if (options.payload) {
109
- q = '?' + (0, utils_1.serializeQuery)(options.payload);
101
+ q = '?' + serializeQuery(options.payload);
110
102
  }
111
103
  return streamRequest(options.contents, name, url, headers, q);
112
104
  };
113
- exports.uploadFileStream = uploadFileStream;
114
105
  //# sourceMappingURL=nodeStream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodeStream.js","sourceRoot":"","sources":["../../../src/stream/nodeStream.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  export type ReadableStream = {
3
3
  pipe: (x: any) => ReadableStream;
4
4
  };
@@ -35,4 +35,5 @@ export type StreamHeaders = {
35
35
  'Content-Name'?: string;
36
36
  Authorization: string;
37
37
  };
38
- //# sourceMappingURL=types.d.ts.map
38
+ export declare const isStreamFunctionPath: (options: StreamFunctionOpts) => options is StreamFunctionPath;
39
+ export declare const isStreamFunctionStream: (options: StreamFunctionOpts) => options is StreamFunctionStream;
@@ -0,0 +1,18 @@
1
+ export const isFileContents = (contents) => {
2
+ return contents.contents instanceof File;
3
+ };
4
+ const isStream = (stream) => {
5
+ return (stream !== null &&
6
+ typeof stream === 'object' &&
7
+ typeof stream.pipe === 'function' &&
8
+ stream.readable !== false &&
9
+ typeof stream._read === 'function' &&
10
+ typeof stream._readableState === 'object');
11
+ };
12
+ export const isStreamFunctionPath = (options) => {
13
+ return 'path' in options && typeof options.path === 'string';
14
+ };
15
+ export const isStreamFunctionStream = (options) => {
16
+ return 'contents' in options && isStream(options.contents);
17
+ };
18
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/stream/types.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,QAAgC,EACU,EAAE;IAC5C,OAAO,QAAQ,CAAC,QAAQ,YAAY,IAAI,CAAA;AAC1C,CAAC,CAAA;AAiCD,MAAM,QAAQ,GAAG,CAAC,MAAW,EAAW,EAAE;IACxC,OAAO,CACL,MAAM,KAAK,IAAI;QACf,OAAO,MAAM,KAAK,QAAQ;QAC1B,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU;QACjC,MAAM,CAAC,QAAQ,KAAK,KAAK;QACzB,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU;QAClC,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ,CAC1C,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,OAA2B,EACI,EAAE;IACjC,OAAO,MAAM,IAAI,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAA;AAC9D,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,OAA2B,EACM,EAAE;IACnC,OAAO,UAAU,IAAI,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;AAC5D,CAAC,CAAA"}
@@ -1,8 +1,7 @@
1
- import { BasedClient } from '..';
2
- import { StreamFunctionContents, ProgressListener } from './types';
1
+ import { BasedClient } from '../index.js';
2
+ import { StreamFunctionContents, ProgressListener } from './types.js';
3
3
  export declare const isStreaming: {
4
4
  streaming: boolean;
5
5
  };
6
6
  declare const _default: (client: BasedClient, functionName: string, options: StreamFunctionContents<File>, progressListener?: ProgressListener) => Promise<unknown>;
7
7
  export default _default;
8
- //# sourceMappingURL=uploadFileBrowser.d.ts.map