@ardrive/turbo-sdk 1.25.0 → 1.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +170 -62
  2. package/bundles/web.bundle.min.js +1584 -730
  3. package/lib/cjs/common/events.js +256 -0
  4. package/lib/cjs/common/events.test.js +470 -0
  5. package/lib/cjs/common/http.js +4 -13
  6. package/lib/cjs/common/turbo.js +6 -4
  7. package/lib/cjs/common/upload.js +65 -37
  8. package/lib/cjs/node/signer.js +30 -11
  9. package/lib/cjs/node/upload.js +7 -1
  10. package/lib/cjs/utils/axiosClient.js +3 -0
  11. package/lib/cjs/utils/readableStream.js +15 -0
  12. package/lib/cjs/version.js +1 -1
  13. package/lib/cjs/web/signer.js +55 -28
  14. package/lib/esm/common/events.js +249 -0
  15. package/lib/esm/common/events.test.js +468 -0
  16. package/lib/esm/common/http.js +4 -13
  17. package/lib/esm/common/turbo.js +6 -4
  18. package/lib/esm/common/upload.js +66 -38
  19. package/lib/esm/node/signer.js +30 -11
  20. package/lib/esm/node/upload.js +7 -1
  21. package/lib/esm/utils/axiosClient.js +3 -0
  22. package/lib/esm/utils/readableStream.js +15 -0
  23. package/lib/esm/version.js +1 -1
  24. package/lib/esm/web/signer.js +55 -28
  25. package/lib/types/common/events.d.ts +56 -0
  26. package/lib/types/common/events.d.ts.map +1 -0
  27. package/lib/types/common/events.test.d.ts +2 -0
  28. package/lib/types/common/events.test.d.ts.map +1 -0
  29. package/lib/types/common/http.d.ts +1 -2
  30. package/lib/types/common/http.d.ts.map +1 -1
  31. package/lib/types/common/signer.d.ts +1 -1
  32. package/lib/types/common/signer.d.ts.map +1 -1
  33. package/lib/types/common/turbo.d.ts +4 -4
  34. package/lib/types/common/turbo.d.ts.map +1 -1
  35. package/lib/types/common/upload.d.ts +13 -5
  36. package/lib/types/common/upload.d.ts.map +1 -1
  37. package/lib/types/node/signer.d.ts +1 -1
  38. package/lib/types/node/signer.d.ts.map +1 -1
  39. package/lib/types/node/upload.d.ts.map +1 -1
  40. package/lib/types/types.d.ts +61 -7
  41. package/lib/types/types.d.ts.map +1 -1
  42. package/lib/types/utils/axiosClient.d.ts.map +1 -1
  43. package/lib/types/utils/readableStream.d.ts +0 -1
  44. package/lib/types/utils/readableStream.d.ts.map +1 -1
  45. package/lib/types/version.d.ts +1 -1
  46. package/lib/types/web/signer.d.ts +1 -1
  47. package/lib/types/web/signer.d.ts.map +1 -1
  48. package/package.json +9 -7
@@ -13,11 +13,12 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { AxiosError, CanceledError } from 'axios';
16
+ import { CanceledError } from 'axios';
17
17
  import { pLimit } from 'plimit-lit';
18
18
  import { defaultRetryConfig } from '../utils/axiosClient.js';
19
19
  import { isBlob, sleep } from '../utils/common.js';
20
20
  import { FailedRequestError } from '../utils/errors.js';
21
+ import { TurboEventEmitter, createStreamWithUploadEvents } from './events.js';
21
22
  import { TurboHTTPService } from './http.js';
22
23
  import { TurboWinstonLogger } from './logger.js';
23
24
  export const creditSharingTagNames = {
@@ -39,19 +40,40 @@ export class TurboUnauthenticatedUploadService {
39
40
  });
40
41
  this.retryConfig = retryConfig;
41
42
  }
42
- async uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, signal, }) {
43
+ async uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, dataItemOpts, signal, events = {}, }) {
43
44
  const fileSize = dataItemSizeFactory();
44
45
  this.logger.debug('Uploading signed data item...');
45
- // TODO: add p-limit constraint or replace with separate upload class
46
- return this.httpService.post({
46
+ // create the tapped stream with events
47
+ const emitter = new TurboEventEmitter(events);
48
+ // create the stream with upload events
49
+ const { stream: streamWithUploadEvents, resume } = createStreamWithUploadEvents({
50
+ data: dataItemStreamFactory(),
51
+ dataSize: fileSize,
52
+ emitter,
53
+ });
54
+ const headers = {
55
+ 'content-type': 'application/octet-stream',
56
+ 'content-length': `${fileSize}`,
57
+ };
58
+ if (dataItemOpts !== undefined && dataItemOpts.paidBy !== undefined) {
59
+ const paidBy = Array.isArray(dataItemOpts.paidBy)
60
+ ? dataItemOpts.paidBy
61
+ : [dataItemOpts.paidBy];
62
+ // TODO: these should be comma separated values vs. an array of headers
63
+ if (dataItemOpts.paidBy.length > 0) {
64
+ headers['x-paid-by'] = paidBy;
65
+ }
66
+ }
67
+ // setup the post request using the stream with upload events
68
+ const postPromise = this.httpService.post({
47
69
  endpoint: `/tx/${this.token}`,
48
70
  signal,
49
- data: dataItemStreamFactory(),
50
- headers: {
51
- 'content-type': 'application/octet-stream',
52
- 'content-length': `${fileSize}`,
53
- },
71
+ data: streamWithUploadEvents,
72
+ headers,
54
73
  });
74
+ // resume the stream so events start flowing to the post
75
+ resume();
76
+ return postPromise;
55
77
  }
56
78
  }
57
79
  // NOTE: to avoid redundancy, we use inheritance here - but generally prefer composition over inheritance
@@ -63,7 +85,7 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
63
85
  /**
64
86
  * Signs and uploads raw data to the Turbo Upload Service.
65
87
  */
66
- upload({ data, dataItemOpts, signal, }) {
88
+ upload({ data, dataItemOpts, signal, events, }) {
67
89
  // This function is intended to be usable in both Node and browser environments.
68
90
  if (isBlob(data)) {
69
91
  const streamFactory = () => data.stream();
@@ -73,6 +95,7 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
73
95
  fileSizeFactory: sizeFactory,
74
96
  signal,
75
97
  dataItemOpts,
98
+ events,
76
99
  });
77
100
  }
78
101
  const dataBuffer = (() => {
@@ -89,56 +112,53 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
89
112
  fileSizeFactory: () => dataBuffer.byteLength,
90
113
  signal,
91
114
  dataItemOpts,
115
+ events,
92
116
  });
93
117
  }
94
- async uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, }) {
118
+ async uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, events = {}, }) {
95
119
  let retries = 0;
96
120
  const maxRetries = this.retryConfig.retries ?? 3;
97
121
  const retryDelay = this.retryConfig.retryDelay ??
98
122
  ((retryNumber) => retryNumber * 1000);
99
123
  let lastError = undefined; // Store the last error for throwing
100
124
  let lastStatusCode = undefined; // Store the last status code for throwing
125
+ const emitter = new TurboEventEmitter(events);
126
+ // avoid duplicating signing on failures here - these errors will immediately be thrown
127
+ // TODO: create a SigningError class and throw that instead of the generic Error
128
+ const { dataItemStreamFactory, dataItemSizeFactory } = await this.signer.signDataItem({
129
+ fileStreamFactory,
130
+ fileSizeFactory,
131
+ dataItemOpts,
132
+ emitter,
133
+ });
134
+ // TODO: move the retry implementation to the http class, and avoid awaiting here. This will standardize the retry logic across all upload methods.
101
135
  while (retries < maxRetries) {
102
136
  if (signal?.aborted) {
103
137
  throw new CanceledError();
104
138
  }
105
- const { dataItemStreamFactory, dataItemSizeFactory } = await this.signer.signDataItem({
106
- fileStreamFactory,
107
- fileSizeFactory,
108
- dataItemOpts,
109
- });
110
139
  try {
111
140
  this.logger.debug('Uploading signed data item...');
112
- // TODO: add p-limit constraint or replace with separate upload class
113
- const headers = {
114
- 'content-type': 'application/octet-stream',
115
- 'content-length': `${dataItemSizeFactory()}`,
116
- };
117
- if (dataItemOpts !== undefined && dataItemOpts.paidBy !== undefined) {
118
- const paidBy = Array.isArray(dataItemOpts.paidBy)
119
- ? dataItemOpts.paidBy
120
- : [dataItemOpts.paidBy];
121
- if (dataItemOpts.paidBy.length > 0) {
122
- headers['x-paid-by'] = paidBy;
123
- }
124
- }
125
- const data = await this.httpService.post({
126
- endpoint: `/tx/${this.token}`,
141
+ // Now that we have the signed data item, we can upload it using the uploadSignedDataItem method
142
+ // which will create a new emitter with upload events. We await
143
+ // this result due to the wrapped retry logic of this method.
144
+ const response = await this.uploadSignedDataItem({
145
+ dataItemStreamFactory,
146
+ dataItemSizeFactory,
147
+ dataItemOpts,
127
148
  signal,
128
- data: dataItemStreamFactory(),
129
- headers,
149
+ events,
130
150
  });
131
- return data;
151
+ return response;
132
152
  }
133
153
  catch (error) {
134
154
  // Store the last encountered error and status for re-throwing after retries
135
155
  lastError = error;
136
- if (error instanceof AxiosError) {
137
- lastStatusCode = error.response?.status;
138
- }
139
- else if (error instanceof FailedRequestError) {
156
+ if (error instanceof FailedRequestError) {
140
157
  lastStatusCode = error.status;
141
158
  }
159
+ else {
160
+ lastStatusCode = error.response?.status;
161
+ }
142
162
  if (lastStatusCode !== undefined &&
143
163
  lastStatusCode >= 400 &&
144
164
  lastStatusCode < 500) {
@@ -198,6 +218,14 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
198
218
  }
199
219
  return this.contentTypeFromFile(file);
200
220
  }
221
+ /**
222
+ * TODO: add events to the uploadFolder method
223
+ * could be a predicate with a resolveConfig() function, eg: events: ({...file ctx}) => ({
224
+ * onProgress: (progress) => {
225
+ * console.log('progress', progress);
226
+ * },
227
+ * })
228
+ */
201
229
  async uploadFolder(params) {
202
230
  this.logger.debug('Uploading folder...', { params });
203
231
  const { dataItemOpts, signal, manifestOptions = {}, maxConcurrentUploads = 1, throwOnFailure = true, } = params;
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner, serializeTags, streamSigner, } from '@dha-team/arbundles';
17
17
  import { Readable } from 'stream';
18
+ import { createStreamWithSigningEvents } from '../common/events.js';
18
19
  import { TurboDataItemAbstractSigner } from '../common/signer.js';
19
20
  import { fromB64Url } from '../utils/base64.js';
20
21
  /**
@@ -28,23 +29,41 @@ export class TurboNodeSigner extends TurboDataItemAbstractSigner {
28
29
  constructor(p) {
29
30
  super(p);
30
31
  }
31
- async signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, }) {
32
+ async signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, emitter, }) {
32
33
  // TODO: replace with our own signer implementation
33
34
  this.logger.debug('Signing data item...');
35
+ // TODO: we could just use tee or PassThrough rather than require a fileStreamFactory
34
36
  let [stream1, stream2] = [fileStreamFactory(), fileStreamFactory()];
35
37
  stream1 = stream1 instanceof Buffer ? Readable.from(stream1) : stream1;
36
38
  stream2 = stream2 instanceof Buffer ? Readable.from(stream2) : stream2;
37
- const signedDataItem = await streamSigner(stream1, stream2, this.signer, dataItemOpts);
38
- this.logger.debug('Successfully signed data item...');
39
- // TODO: support target, anchor, and tags
40
- const signedDataItemSize = this.calculateSignedDataHeadersSize({
41
- dataSize: fileSizeFactory(),
42
- dataItemOpts,
39
+ // If we have a signing emitter, wrap the stream with events
40
+ const fileSize = fileSizeFactory();
41
+ const { stream: streamWithSigningEvents, resume } = createStreamWithSigningEvents({
42
+ data: stream1,
43
+ dataSize: fileSize,
44
+ emitter,
43
45
  });
44
- return {
45
- dataItemStreamFactory: () => signedDataItem,
46
- dataItemSizeFactory: () => signedDataItemSize,
47
- };
46
+ try {
47
+ const signedDataItemPromise = streamSigner(streamWithSigningEvents, // TODO: use generics to avoid this cast
48
+ stream2, this.signer, dataItemOpts);
49
+ // resume the stream so bytes start flowing to the streamSigner
50
+ resume();
51
+ const signedDataItem = await signedDataItemPromise;
52
+ this.logger.debug('Successfully signed data item...');
53
+ const signedDataItemSize = this.calculateSignedDataHeadersSize({
54
+ dataSize: fileSizeFactory(),
55
+ dataItemOpts,
56
+ });
57
+ return {
58
+ dataItemStreamFactory: () => signedDataItem,
59
+ dataItemSizeFactory: () => signedDataItemSize,
60
+ };
61
+ }
62
+ catch (error) {
63
+ // TODO: create a SigningError class and throw that instead of the generic Error
64
+ emitter?.emit('signing-error', error);
65
+ throw error;
66
+ }
48
67
  }
49
68
  // TODO: make dynamic that accepts anchor and target and tags to return the size of the headers + data
50
69
  // reference https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-104.md#13-dataitem-format
@@ -21,7 +21,13 @@ import { TurboAuthenticatedBaseUploadService, defaultUploadServiceURL, } from '.
21
21
  import { isNodeUploadFolderParams, } from '../types.js';
22
22
  export class TurboAuthenticatedUploadService extends TurboAuthenticatedBaseUploadService {
23
23
  constructor({ url = defaultUploadServiceURL, retryConfig, signer, logger, token, }) {
24
- super({ url, retryConfig, logger, token, signer });
24
+ super({
25
+ url,
26
+ retryConfig,
27
+ logger,
28
+ token,
29
+ signer,
30
+ });
25
31
  }
26
32
  async getAbsoluteFilePathsFromFolder(folderPath) {
27
33
  const absoluteFilePaths = [];
@@ -40,9 +40,12 @@ export const createAxiosInstance = ({ logger = TurboWinstonLogger.default, axios
40
40
  ...axiosConfig.headers,
41
41
  ...defaultRequestHeaders,
42
42
  },
43
+ adapter: 'fetch',
43
44
  validateStatus: () => true, // don't throw on non-200 status codes
44
45
  });
45
46
  if (retryConfig.retries !== undefined && retryConfig.retries > 0) {
47
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
48
+ // @ts-ignore
46
49
  axiosRetry(axiosInstance, retryConfig);
47
50
  }
48
51
  return axiosInstance;
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
1
16
  export async function readableStreamToBuffer({ stream, size, }) {
2
17
  const reader = stream.getReader();
3
18
  const buffer = Buffer.alloc(size);
@@ -14,4 +14,4 @@
14
14
  * limitations under the License.
15
15
  */
16
16
  // AUTOMATICALLY GENERATED FILE - DO NOT TOUCH
17
- export const version = '1.25.0';
17
+ export const version = '1.26.0';
@@ -39,38 +39,65 @@ export class TurboWebArweaveSigner extends TurboDataItemAbstractSigner {
39
39
  await this.setPublicKey();
40
40
  return super.getPublicKey();
41
41
  }
42
- async signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, }) {
42
+ async signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, emitter, }) {
43
43
  await this.setPublicKey();
44
- const fileStream = fileStreamFactory();
45
- // TODO: converts the readable stream to a buffer bc incrementally signing ReadableStreams is not trivial
46
- const buffer = fileStream instanceof Buffer
47
- ? fileStream
48
- : await readableStreamToBuffer({
49
- stream: fileStream,
50
- size: fileSizeFactory(),
44
+ // Create signing emitter if events are provided
45
+ const fileSize = fileSizeFactory();
46
+ try {
47
+ const fileStream = fileStreamFactory();
48
+ // start with 0 progress
49
+ emitter?.emit('signing-progress', {
50
+ processedBytes: 0,
51
+ totalBytes: fileSize,
51
52
  });
52
- let signedDataItem;
53
- this.logger.debug('Signing data item...');
54
- if (this.signer instanceof ArconnectSigner) {
55
- this.logger.debug('Arconnect signer detected, signing with Arconnect signData Item API...');
56
- const sign = Buffer.from(await this.signer['signer'].signDataItem({
57
- data: Uint8Array.from(buffer),
58
- tags: dataItemOpts?.tags,
59
- target: dataItemOpts?.target,
60
- anchor: dataItemOpts?.anchor,
61
- }));
62
- signedDataItem = new DataItem(sign);
53
+ // TODO: implement streamReadableStreamSigner that incrementally signs the stream with events instead of converting to a buffer
54
+ const buffer = fileStream instanceof Buffer
55
+ ? fileStream
56
+ : await readableStreamToBuffer({
57
+ stream: fileStream,
58
+ size: fileSize,
59
+ });
60
+ // TODO: replace this with streamSigner that uses a ReadableStream with events
61
+ emitter?.emit('signing-progress', {
62
+ processedBytes: Math.floor(fileSize / 2),
63
+ totalBytes: fileSize,
64
+ });
65
+ let signedDataItem;
66
+ this.logger.debug('Signing data item...');
67
+ if (this.signer instanceof ArconnectSigner) {
68
+ this.logger.debug('Arconnect signer detected, signing with Arconnect signData Item API...');
69
+ const sign = Buffer.from(await this.signer['signer'].signDataItem({
70
+ data: Uint8Array.from(buffer),
71
+ tags: dataItemOpts?.tags,
72
+ target: dataItemOpts?.target,
73
+ anchor: dataItemOpts?.anchor,
74
+ }));
75
+ signedDataItem = new DataItem(sign);
76
+ }
77
+ else {
78
+ signedDataItem = createData(Uint8Array.from(buffer), this.signer, dataItemOpts);
79
+ await signedDataItem.sign(this.signer);
80
+ }
81
+ // emit last progress event (100%)
82
+ emitter?.emit('signing-progress', {
83
+ processedBytes: fileSize,
84
+ totalBytes: fileSize,
85
+ });
86
+ // emit completion event
87
+ emitter?.emit('signing-success');
88
+ this.logger.debug('Successfully signed data item...');
89
+ return {
90
+ // while this returns a Buffer - it needs to match our return type for uploading
91
+ dataItemStreamFactory: () => signedDataItem.getRaw(),
92
+ dataItemSizeFactory: () => signedDataItem.getRaw().length,
93
+ };
63
94
  }
64
- else {
65
- signedDataItem = createData(Uint8Array.from(buffer), this.signer, dataItemOpts);
66
- await signedDataItem.sign(this.signer);
95
+ catch (error) {
96
+ // If we have a signing emitter, emit error
97
+ // TODO: create a SigningError class and throw that instead of the generic Error
98
+ emitter?.emit('signing-error', error);
99
+ throw error;
67
100
  }
68
- this.logger.debug('Successfully signed data item...');
69
- return {
70
- // while this returns a Buffer - it needs to match our return type for uploading
71
- dataItemStreamFactory: () => signedDataItem.getRaw(),
72
- dataItemSizeFactory: () => signedDataItem.getRaw().length,
73
- };
74
101
  }
75
102
  async generateSignedRequestHeaders() {
76
103
  await this.setPublicKey();
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { EventEmitter } from 'eventemitter3';
17
+ import { Readable } from 'stream';
18
+ import { TurboSigningEmitterEventArgs, TurboSigningEventsAndPayloads, TurboTotalEmitterEventArgs, TurboTotalEventsAndPayloads, TurboUploadEmitterEventArgs, TurboUploadEventsAndPayloads } from '../types.js';
19
+ /**
20
+ * Creates an eventing stream from the input data that emits progress and error events
21
+ */
22
+ export declare function createStreamWithEvents({ data, dataSize, emitter, eventNamesMap, }: {
23
+ data: Readable | Buffer | ReadableStream;
24
+ dataSize: number;
25
+ emitter: TurboEventEmitter;
26
+ eventNamesMap: {
27
+ 'on-progress': keyof TurboUploadEventsAndPayloads | keyof TurboSigningEventsAndPayloads | keyof TurboTotalEventsAndPayloads;
28
+ 'on-error': keyof TurboUploadEventsAndPayloads | keyof TurboSigningEventsAndPayloads | keyof TurboTotalEventsAndPayloads;
29
+ 'on-end': keyof TurboUploadEventsAndPayloads | keyof TurboSigningEventsAndPayloads | keyof TurboTotalEventsAndPayloads;
30
+ };
31
+ }): {
32
+ stream: Readable | ReadableStream;
33
+ resume: () => void;
34
+ };
35
+ export type TurboEventEmitterEvents = TurboUploadEventsAndPayloads & TurboSigningEventsAndPayloads & TurboTotalEventsAndPayloads;
36
+ export type TurboEventEmitterEventArgs = TurboUploadEmitterEventArgs & TurboSigningEmitterEventArgs & TurboTotalEmitterEventArgs;
37
+ export declare class TurboEventEmitter extends EventEmitter<TurboEventEmitterEvents> {
38
+ constructor({ onProgress, onError, onSuccess, onUploadProgress, onUploadError, onUploadSuccess, onSigningProgress, onSigningError, onSigningSuccess, }?: TurboEventEmitterEventArgs);
39
+ }
40
+ export declare function createStreamWithUploadEvents({ data, dataSize, emitter, }: {
41
+ data: Readable | Buffer | ReadableStream;
42
+ dataSize: number;
43
+ emitter?: TurboEventEmitter;
44
+ }): {
45
+ stream: Readable | ReadableStream;
46
+ resume: () => void;
47
+ };
48
+ export declare function createStreamWithSigningEvents({ data, dataSize, emitter, }: {
49
+ data: Readable | Buffer | ReadableStream;
50
+ dataSize: number;
51
+ emitter?: TurboEventEmitter;
52
+ }): {
53
+ stream: Readable | ReadableStream;
54
+ resume: () => void;
55
+ };
56
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/common/events.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAe,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE/C,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,0BAA0B,EAC1B,2BAA2B,EAC3B,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,aAAa,CAAC;AAwLrB;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,aAAa,GACd,EAAE;IACD,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,cAAc,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,aAAa,EAAE;QACb,aAAa,EACT,MAAM,4BAA4B,GAClC,MAAM,6BAA6B,GACnC,MAAM,2BAA2B,CAAC;QACtC,UAAU,EACN,MAAM,4BAA4B,GAClC,MAAM,6BAA6B,GACnC,MAAM,2BAA2B,CAAC;QACtC,QAAQ,EACJ,MAAM,4BAA4B,GAClC,MAAM,6BAA6B,GACnC,MAAM,2BAA2B,CAAC;KACvC,CAAC;CACH,GAAG;IAAE,MAAM,EAAE,QAAQ,GAAG,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAuB5D;AAED,MAAM,MAAM,uBAAuB,GAAG,4BAA4B,GAChE,6BAA6B,GAC7B,2BAA2B,CAAC;AAC9B,MAAM,MAAM,0BAA0B,GAAG,2BAA2B,GAClE,4BAA4B,GAC5B,0BAA0B,CAAC;AAE7B,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,uBAAuB,CAAC;gBAC9D,EACV,UAAU,EACV,OAAO,EACP,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,gBAAgB,GACjB,GAAE,0BAA+B;CA2DnC;AAED,wBAAgB,4BAA4B,CAAC,EAC3C,IAAI,EACJ,QAAQ,EACR,OAAiC,GAClC,EAAE;IACD,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,cAAc,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B,GAAG;IAAE,MAAM,EAAE,QAAQ,GAAG,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAW5D;AAED,wBAAgB,6BAA6B,CAAC,EAC5C,IAAI,EACJ,QAAQ,EACR,OAAiC,GAClC,EAAE;IACD,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,cAAc,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B,GAAG;IAAE,MAAM,EAAE,QAAQ,GAAG,cAAc,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAW5D"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=events.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.test.d.ts","sourceRoot":"","sources":["../../../src/common/events.test.ts"],"names":[],"mappings":""}
@@ -15,8 +15,7 @@
15
15
  */
16
16
  import { AxiosInstance } from 'axios';
17
17
  import { IAxiosRetryConfig } from 'axios-retry';
18
- import { Readable } from 'stream';
19
- import { ReadableStream } from 'stream/web';
18
+ import { Readable } from 'node:stream';
20
19
  import { TurboHTTPServiceInterface, TurboLogger, TurboSignedRequestHeaders } from '../types.js';
21
20
  export declare class TurboHTTPService implements TurboHTTPServiceInterface {
22
21
  protected axios: AxiosInstance;
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/common/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAc,aAAa,EAAgC,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,EACL,yBAAyB,EACzB,WAAW,EACX,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAIrB,qBAAa,gBAAiB,YAAW,yBAAyB;IAChE,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC;IAC/B,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;gBAElB,EACV,GAAG,EACH,WAAW,EACX,MAAM,GACP,EAAE;QACD,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,iBAAiB,CAAC;QAChC,MAAM,EAAE,WAAW,CAAC;KACrB;IAsBK,GAAG,CAAC,CAAC,EAAE,EACX,QAAQ,EACR,MAAM,EACN,eAA4B,EAC5B,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACvE,GAAG,OAAO,CAAC,CAAC,CAAC;IAOR,IAAI,CAAC,CAAC,EAAE,EACZ,QAAQ,EACR,MAAM,EACN,eAA4B,EAC5B,OAAO,EACP,IAAI,GACL,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,cAAc,CAAC;KAC1C,GAAG,OAAO,CAAC,CAAC,CAAC;YAOA,UAAU;CAwBzB"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/common/http.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAc,aAAa,EAAgC,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EACL,yBAAyB,EACzB,WAAW,EACX,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAIrB,qBAAa,gBAAiB,YAAW,yBAAyB;IAChE,SAAS,CAAC,KAAK,EAAE,aAAa,CAAC;IAC/B,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;gBAElB,EACV,GAAG,EACH,WAAW,EACX,MAAM,GACP,EAAE;QACD,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,iBAAiB,CAAC;QAChC,MAAM,EAAE,WAAW,CAAC;KACrB;IAYK,GAAG,CAAC,CAAC,EAAE,EACX,QAAQ,EACR,MAAM,EACN,eAA4B,EAC5B,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACvE,GAAG,OAAO,CAAC,CAAC,CAAC;IAOR,IAAI,CAAC,CAAC,EAAE,EACZ,QAAQ,EACR,MAAM,EACN,eAA4B,EAC5B,OAAO,EACP,IAAI,GACL,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,cAAc,CAAC;KAC1C,GAAG,OAAO,CAAC,CAAC,CAAC;YAOA,UAAU;CA0BzB"}
@@ -8,7 +8,7 @@ export declare abstract class TurboDataItemAbstractSigner implements TurboDataIt
8
8
  protected token: TokenType;
9
9
  protected walletAdapter: WalletAdapter | undefined;
10
10
  constructor({ signer, logger, token, walletAdapter, }: TurboDataItemSignerParams);
11
- abstract signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, }: TurboFileFactory<FileStreamFactory>): Promise<TurboSignedDataItemFactory>;
11
+ abstract signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, emitter, }: TurboFileFactory<FileStreamFactory>): Promise<TurboSignedDataItemFactory>;
12
12
  private ownerToNativeAddress;
13
13
  generateSignedRequestHeaders(): Promise<{
14
14
  'x-public-key': string;
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/common/signer.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,WAAW,EACX,aAAa,EAEd,MAAM,aAAa,CAAC;AAQrB;;GAEG;AACH,8BAAsB,2BACpB,YAAW,mBAAmB;IAEvB,MAAM,EAAE,WAAW,CAAC;IAE3B,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC;IAC3B,SAAS,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;gBAEvC,EACV,MAAM,EACN,MAAmC,EACnC,KAAK,EACL,aAAa,GACd,EAAE,yBAAyB;IAO5B,QAAQ,CAAC,YAAY,CAAC,EACpB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAE5E,OAAO,CAAC,oBAAoB;IA4Bf,4BAA4B;;;;;IAY5B,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAOvD,gGAAgG;IACnF,eAAe,CAAC,EAC3B,MAAM,EACN,MAAM,EACN,UAAU,GACX,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;IAkE9B,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAgBnE"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/common/signer.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,EAChB,WAAW,EACX,0BAA0B,EAC1B,WAAW,EACX,aAAa,EAEd,MAAM,aAAa,CAAC;AAQrB;;GAEG;AACH,8BAAsB,2BACpB,YAAW,mBAAmB;IAEvB,MAAM,EAAE,WAAW,CAAC;IAE3B,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC;IAC3B,SAAS,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,CAAC;gBAEvC,EACV,MAAM,EACN,MAAmC,EACnC,KAAK,EACL,aAAa,GACd,EAAE,yBAAyB;IAO5B,QAAQ,CAAC,YAAY,CAAC,EACpB,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,OAAO,GACR,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAE5E,OAAO,CAAC,oBAAoB;IA4Bf,4BAA4B;;;;;IAY5B,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAOvD,gGAAgG;IACnF,eAAe,CAAC,EAC3B,MAAM,EACN,MAAM,EACN,UAAU,GACX,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC;IAkE9B,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAgBnE"}
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { CreditShareApproval, Currency, GetCreditShareApprovalsResponse, NativeAddress, TokenType, TurboAbortSignal, TurboAuthenticatedClientConfiguration, TurboAuthenticatedClientInterface, TurboAuthenticatedPaymentServiceInterface, TurboAuthenticatedUploadServiceInterface, TurboBalanceResponse, TurboCheckoutSessionParams, TurboCheckoutSessionResponse, TurboCountriesResponse, TurboCreateCreditShareApprovalParams, TurboCryptoFundResponse, TurboCurrenciesResponse, TurboDataItemSigner, TurboFiatToArResponse, TurboFileFactory, TurboFundWithTokensParams, TurboPriceResponse, TurboRatesResponse, TurboRevokeCreditsParams, TurboSignedDataItemFactory, TurboSubmitFundTxResponse, TurboTokenPriceForBytesResponse, TurboUnauthenticatedClientConfiguration, TurboUnauthenticatedClientInterface, TurboUnauthenticatedPaymentServiceInterface, TurboUnauthenticatedUploadServiceInterface, TurboUploadDataItemResponse, TurboUploadFolderParams, TurboUploadFolderResponse, TurboWincForFiatParams, TurboWincForFiatResponse, TurboWincForTokenParams, TurboWincForTokenResponse, UploadDataInput } from '../types.js';
16
+ import { CreditShareApproval, Currency, GetCreditShareApprovalsResponse, NativeAddress, TokenType, TurboAbortSignal, TurboAuthenticatedClientConfiguration, TurboAuthenticatedClientInterface, TurboAuthenticatedPaymentServiceInterface, TurboAuthenticatedUploadServiceInterface, TurboBalanceResponse, TurboCheckoutSessionParams, TurboCheckoutSessionResponse, TurboCountriesResponse, TurboCreateCreditShareApprovalParams, TurboCryptoFundResponse, TurboCurrenciesResponse, TurboDataItemSigner, TurboFiatToArResponse, TurboFileFactory, TurboFundWithTokensParams, TurboPriceResponse, TurboRatesResponse, TurboRevokeCreditsParams, TurboSignedDataItemFactory, TurboSubmitFundTxResponse, TurboTokenPriceForBytesResponse, TurboUnauthenticatedClientConfiguration, TurboUnauthenticatedClientInterface, TurboUnauthenticatedPaymentServiceInterface, TurboUnauthenticatedUploadServiceInterface, TurboUploadAndSigningEmitterEvents, TurboUploadDataItemResponse, TurboUploadEmitterEvents, TurboUploadFolderParams, TurboUploadFolderResponse, TurboWincForFiatParams, TurboWincForFiatResponse, TurboWincForTokenParams, TurboWincForTokenResponse, UploadDataInput } from '../types.js';
17
17
  /**
18
18
  * Testing configuration.
19
19
  */
@@ -85,7 +85,7 @@ export declare class TurboUnauthenticatedClient implements TurboUnauthenticatedC
85
85
  /**
86
86
  * Uploads a signed data item to the Turbo Upload Service.
87
87
  */
88
- uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, signal, }: TurboSignedDataItemFactory & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
88
+ uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, signal, events, }: TurboSignedDataItemFactory & TurboAbortSignal & TurboUploadEmitterEvents): Promise<TurboUploadDataItemResponse>;
89
89
  /**
90
90
  * Creates a Turbo Checkout Session for a given amount and currency.
91
91
  */
@@ -125,11 +125,11 @@ export declare class TurboAuthenticatedClient extends TurboUnauthenticatedClient
125
125
  /**
126
126
  * Signs and uploads raw data to the Turbo Upload Service.
127
127
  */
128
- upload({ data, dataItemOpts, signal, }: UploadDataInput & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
128
+ upload({ data, dataItemOpts, signal, events, }: UploadDataInput & TurboAbortSignal & TurboUploadAndSigningEmitterEvents): Promise<TurboUploadDataItemResponse>;
129
129
  /**
130
130
  * Signs and uploads raw file data to the Turbo Upload Service.
131
131
  */
132
- uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, }: TurboFileFactory & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
132
+ uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, events, }: TurboFileFactory & TurboAbortSignal & TurboUploadAndSigningEmitterEvents): Promise<TurboUploadDataItemResponse>;
133
133
  uploadFolder(p: TurboUploadFolderParams): Promise<TurboUploadFolderResponse>;
134
134
  /**
135
135
  * Submits fund transaction to the token's blockchain then sends
@@ -1 +1 @@
1
- {"version":3,"file":"turbo.d.ts","sourceRoot":"","sources":["../../../src/common/turbo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turbo.d.ts","sourceRoot":"","sources":["../../../src/common/turbo.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { IAxiosRetryConfig } from 'axios-retry';
2
- import { Readable } from 'stream';
3
- import { ArweaveManifest, CreditShareApproval, TokenType, TurboAbortSignal, TurboAuthenticatedUploadServiceConfiguration, TurboAuthenticatedUploadServiceInterface, TurboCreateCreditShareApprovalParams, TurboDataItemSigner, TurboFileFactory, TurboLogger, TurboRevokeCreditsParams, TurboSignedDataItemFactory, TurboUnauthenticatedUploadServiceConfiguration, TurboUnauthenticatedUploadServiceInterface, TurboUploadDataItemResponse, TurboUploadFolderParams, TurboUploadFolderResponse, UploadDataInput } from '../types.js';
2
+ import { Readable } from 'node:stream';
3
+ import { ArweaveManifest, CreditShareApproval, TokenType, TurboAbortSignal, TurboAuthenticatedUploadServiceConfiguration, TurboAuthenticatedUploadServiceInterface, TurboCreateCreditShareApprovalParams, TurboDataItemSigner, TurboFileFactory, TurboLogger, TurboRevokeCreditsParams, TurboSignedDataItemFactory, TurboUnauthenticatedUploadServiceConfiguration, TurboUnauthenticatedUploadServiceInterface, TurboUploadAndSigningEmitterEvents, TurboUploadDataItemResponse, TurboUploadEmitterEvents, TurboUploadFolderParams, TurboUploadFolderResponse, UploadDataInput } from '../types.js';
4
4
  import { TurboHTTPService } from './http.js';
5
5
  export declare const creditSharingTagNames: {
6
6
  shareCredits: string;
@@ -16,7 +16,7 @@ export declare class TurboUnauthenticatedUploadService implements TurboUnauthent
16
16
  protected token: TokenType;
17
17
  protected retryConfig: IAxiosRetryConfig;
18
18
  constructor({ url, logger, retryConfig, token, }: TurboUnauthenticatedUploadServiceConfiguration);
19
- uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, signal, }: TurboSignedDataItemFactory & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
19
+ uploadSignedDataItem({ dataItemStreamFactory, dataItemSizeFactory, dataItemOpts, signal, events, }: TurboSignedDataItemFactory & TurboAbortSignal & TurboUploadEmitterEvents): Promise<TurboUploadDataItemResponse>;
20
20
  }
21
21
  export declare abstract class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadService implements TurboAuthenticatedUploadServiceInterface {
22
22
  protected signer: TurboDataItemSigner;
@@ -24,8 +24,8 @@ export declare abstract class TurboAuthenticatedBaseUploadService extends TurboU
24
24
  /**
25
25
  * Signs and uploads raw data to the Turbo Upload Service.
26
26
  */
27
- upload({ data, dataItemOpts, signal, }: UploadDataInput & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
28
- uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, }: TurboFileFactory & TurboAbortSignal): Promise<TurboUploadDataItemResponse>;
27
+ upload({ data, dataItemOpts, signal, events, }: UploadDataInput & TurboAbortSignal & TurboUploadAndSigningEmitterEvents): Promise<TurboUploadDataItemResponse>;
28
+ uploadFile({ fileStreamFactory, fileSizeFactory, signal, dataItemOpts, events, }: TurboFileFactory & TurboAbortSignal & TurboUploadAndSigningEmitterEvents): Promise<TurboUploadDataItemResponse>;
29
29
  protected generateManifest({ paths, indexFile, fallbackFile, }: {
30
30
  paths: Record<string, {
31
31
  id: string;
@@ -40,6 +40,14 @@ export declare abstract class TurboAuthenticatedBaseUploadService extends TurboU
40
40
  abstract getRelativePath(file: string | File, params: TurboUploadFolderParams): string;
41
41
  abstract createManifestStream(manifestBuffer: Buffer): Readable | ReadableStream;
42
42
  private getContentType;
43
+ /**
44
+ * TODO: add events to the uploadFolder method
45
+ * could be a predicate with a resolveConfig() function, eg: events: ({...file ctx}) => ({
46
+ * onProgress: (progress) => {
47
+ * console.log('progress', progress);
48
+ * },
49
+ * })
50
+ */
43
51
  uploadFolder(params: TurboUploadFolderParams): Promise<TurboUploadFolderResponse>;
44
52
  shareCredits({ approvedAddress, approvedWincAmount, expiresBySeconds, }: TurboCreateCreditShareApprovalParams): Promise<CreditShareApproval>;
45
53
  revokeCredits({ revokedAddress, }: TurboRevokeCreditsParams): Promise<CreditShareApproval[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/common/upload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/common/upload.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EACL,eAAe,EACf,mBAAmB,EAEnB,SAAS,EACT,gBAAgB,EAChB,4CAA4C,EAC5C,wCAAwC,EACxC,oCAAoC,EACpC,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,wBAAwB,EACxB,0BAA0B,EAC1B,8CAA8C,EAC9C,0CAA0C,EAC1C,kCAAkC,EAClC,2BAA2B,EAC3B,wBAAwB,EACxB,uBAAuB,EACvB,yBAAyB,EACzB,eAAe,EAEhB,MAAM,aAAa,CAAC;AAKrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAG7C,eAAO,MAAM,qBAAqB;;;;;CAKjC,CAAC;AAEF,eAAO,MAAM,2BAA2B,+BAA+B,CAAC;AACxE,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AAEnE,qBAAa,iCACX,YAAW,0CAA0C;IAErD,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACxC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC;IAC9B,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC;IAC3B,SAAS,CAAC,WAAW,EAAE,iBAAiB,CAAC;gBAC7B,EACV,GAA6B,EAC7B,MAAmC,EACnC,WAAwC,EACxC,KAAiB,GAClB,EAAE,8CAA8C;IAW3C,oBAAoB,CAAC,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,MAAM,EACN,MAAW,GACZ,EAAE,0BAA0B,GAC3B,gBAAgB,GAChB,wBAAwB,GAAG,OAAO,CAAC,2BAA2B,CAAC;CA4ClE;AAGD,8BAAsB,mCACpB,SAAQ,iCACR,YAAW,wCAAwC;IAEnD,SAAS,CAAC,MAAM,EAAE,mBAAmB,CAAC;gBAE1B,EACV,GAA6B,EAC7B,WAAW,EACX,MAAM,EACN,MAAM,EACN,KAAK,GACN,EAAE,4CAA4C;IAK/C;;OAEG;IACH,MAAM,CAAC,EACL,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,MAAM,GACP,EAAE,eAAe,GAChB,gBAAgB,GAChB,kCAAkC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAiCrE,UAAU,CAAC,EACf,iBAAiB,EACjB,eAAe,EACf,MAAM,EACN,YAAY,EACZ,MAAW,GACZ,EAAE,gBAAgB,GACjB,gBAAgB,GAChB,kCAAkC,GAAG,OAAO,CAAC,2BAA2B,CAAC;cAwF3D,gBAAgB,CAAC,EAC/B,KAAK,EACL,SAAS,EACT,YAAY,GACb,EAAE;QACD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACtC,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,eAAe,CAAC;IA6B5B,QAAQ,CAAC,QAAQ,CACf,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM;IACzD,QAAQ,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,GAAG,cAAc;IAC7E,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM;IACjD,QAAQ,CAAC,eAAe,CACtB,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,MAAM,EAAE,uBAAuB,GAC9B,MAAM;IACT,QAAQ,CAAC,oBAAoB,CAC3B,cAAc,EAAE,MAAM,GACrB,QAAQ,GAAG,cAAc;IAE5B,OAAO,CAAC,cAAc;IActB;;;;;;;OAOG;IACG,YAAY,CAChB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAqGxB,YAAY,CAAC,EACxB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,EAAE,oCAAoC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAqCzD,aAAa,CAAC,EACzB,cAAc,GACf,EAAE,wBAAwB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC;CAwB7D"}
@@ -26,7 +26,7 @@ export { ArconnectSigner, ArweaveSigner, EthereumSigner, HexSolanaSigner };
26
26
  */
27
27
  export declare class TurboNodeSigner extends TurboDataItemAbstractSigner {
28
28
  constructor(p: TurboDataItemSignerParams);
29
- signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, }: TurboFileFactory<NodeFileStreamFactory>): Promise<{
29
+ signDataItem({ fileStreamFactory, fileSizeFactory, dataItemOpts, emitter, }: TurboFileFactory<NodeFileStreamFactory>): Promise<{
30
30
  dataItemStreamFactory: () => Readable;
31
31
  dataItemSizeFactory: StreamSizeFactory;
32
32
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/node/signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EAGhB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAEL,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAE3E;;GAEG;AACH,qBAAa,eAAgB,SAAQ,2BAA2B;gBAClD,CAAC,EAAE,yBAAyB;IAIlC,YAAY,CAAC,EACjB,iBAAiB,EACjB,eAAe,EACf,YAAY,GACb,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QACnD,qBAAqB,EAAE,MAAM,QAAQ,CAAC;QACtC,mBAAmB,EAAE,iBAAiB,CAAC;KACxC,CAAC;IA6BF,OAAO,CAAC,8BAA8B;CAkCvC"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../src/node/signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EAGhB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAEL,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAGrB;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAE3E;;GAEG;AACH,qBAAa,eAAgB,SAAQ,2BAA2B;gBAClD,CAAC,EAAE,yBAAyB;IAIlC,YAAY,CAAC,EACjB,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,OAAO,GACR,EAAE,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QACnD,qBAAqB,EAAE,MAAM,QAAQ,CAAC;QACtC,mBAAmB,EAAE,iBAAiB,CAAC;KACxC,CAAC;IAoDF,OAAO,CAAC,8BAA8B;CAkCvC"}