@shelby-protocol/sdk 0.0.8 → 0.1.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.
- package/dist/browser/index.d.ts +13 -7
- package/dist/browser/index.mjs +102 -49
- package/dist/{chunk-HFGEQP5N.mjs → chunk-3ZL3FSNA.mjs} +4 -4
- package/dist/chunk-4MG4XGY4.mjs +91 -0
- package/dist/chunk-66GI734H.mjs +493 -0
- package/dist/chunk-AABBONAF.mjs +34 -0
- package/dist/{chunk-BBOG5JSX.mjs → chunk-AGRRYZWV.mjs} +215 -44
- package/dist/chunk-CQ6QPIZK.mjs +37 -0
- package/dist/{chunk-LGNWAXBG.mjs → chunk-DI2K6OUG.mjs} +1 -1
- package/dist/{chunk-SEXQTDX6.mjs → chunk-FLLOQZVD.mjs} +4 -0
- package/dist/chunk-IE6LYVIA.mjs +26 -0
- package/dist/{chunk-WJKSPJSS.mjs → chunk-KJ24NKPH.mjs} +46 -0
- package/dist/{chunk-ZPW742E7.mjs → chunk-LZSIZJYR.mjs} +3 -1
- package/dist/chunk-MSCUDBMH.mjs +83 -0
- package/dist/{chunk-CPNZAQVY.mjs → chunk-OMZOR2ZF.mjs} +2 -2
- package/dist/chunk-QQ57OGQ2.mjs +0 -0
- package/dist/{chunk-XWAPNLU6.mjs → chunk-RLRI2533.mjs} +4 -2
- package/dist/{chunk-NLPIHQ7K.mjs → chunk-UCDAABAS.mjs} +1 -1
- package/dist/{chunk-GY5DCVVL.mjs → chunk-W5NRGZEP.mjs} +1 -1
- package/dist/{chunk-MGAN2SBA.mjs → chunk-W6YL46DT.mjs} +28 -14
- package/dist/{chunk-CTGCK3H2.mjs → chunk-YZXIPUVQ.mjs} +32 -8
- package/dist/{chunk-QRGZJBAG.mjs → chunk-ZAM2EUVN.mjs} +165 -36
- package/dist/core/chunk.mjs +1 -1
- package/dist/core/clients/ShelbyBlobClient.d.ts +160 -11
- package/dist/core/clients/ShelbyBlobClient.mjs +11 -9
- package/dist/core/clients/ShelbyClient.d.ts +14 -3
- package/dist/core/clients/ShelbyClient.mjs +15 -13
- package/dist/core/clients/ShelbyClientConfig.d.ts +7 -2
- package/dist/core/clients/ShelbyMicropaymentChannelClient.d.ts +349 -0
- package/dist/core/clients/ShelbyMicropaymentChannelClient.mjs +16 -0
- package/dist/core/clients/ShelbyPlacementGroupClient.d.ts +73 -0
- package/dist/core/clients/ShelbyPlacementGroupClient.mjs +11 -0
- package/dist/core/clients/ShelbyRPCClient.d.ts +28 -4
- package/dist/core/clients/ShelbyRPCClient.mjs +9 -7
- package/dist/core/clients/index.d.ts +7 -3
- package/dist/core/clients/index.mjs +33 -17
- package/dist/core/clients/utils.d.ts +54 -0
- package/dist/core/clients/utils.mjs +1 -1
- package/dist/core/commitments.d.ts +5 -1
- package/dist/core/commitments.mjs +4 -2
- package/dist/core/constants.d.ts +4 -1
- package/dist/core/constants.mjs +3 -1
- package/dist/core/erasure/clay-codes.mjs +2 -2
- package/dist/core/erasure/constants.d.ts +5 -1
- package/dist/core/erasure/constants.mjs +3 -1
- package/dist/core/erasure/default.mjs +3 -3
- package/dist/core/erasure/index.d.ts +1 -1
- package/dist/core/erasure/index.mjs +8 -6
- package/dist/core/errors.d.ts +58 -0
- package/dist/core/errors.mjs +15 -0
- package/dist/core/index.d.ts +13 -7
- package/dist/core/index.mjs +102 -49
- package/dist/core/layout.mjs +2 -2
- package/dist/core/operations/generated/sdk.d.ts +207 -17
- package/dist/core/operations/generated/sdk.mjs +7 -1
- package/dist/core/operations/generated/types.d.ts +908 -0
- package/dist/core/operations/generated/types.mjs +63 -0
- package/dist/core/operations/index.d.ts +9 -3
- package/dist/core/operations/index.mjs +10 -4
- package/dist/core/rpc-responses.d.ts +69 -0
- package/dist/core/rpc-responses.mjs +15 -0
- package/dist/core/types/blobs.d.ts +7 -3
- package/dist/core/types/index.d.ts +3 -1
- package/dist/core/types/index.mjs +12 -2
- package/dist/core/types/payments.d.ts +94 -0
- package/dist/core/types/payments.mjs +9 -0
- package/dist/core/types/placement_groups.d.ts +30 -1
- package/dist/core/types/placement_groups.mjs +1 -0
- package/dist/core/types/storage_providers.d.ts +32 -2
- package/dist/node/clients/ShelbyMetadataClient.mjs +3 -3
- package/dist/node/clients/ShelbyNodeClient.d.ts +4 -3
- package/dist/node/clients/ShelbyNodeClient.mjs +16 -14
- package/dist/node/clients/index.d.ts +4 -3
- package/dist/node/clients/index.mjs +19 -17
- package/dist/node/index.d.ts +13 -7
- package/dist/node/index.mjs +106 -53
- package/package.json +3 -2
- package/dist/chunk-RBFWGDMY.mjs +0 -30
- /package/dist/{chunk-DJJD2AXO.mjs → chunk-AD2G3QYD.mjs} +0 -0
- /package/dist/{chunk-MWDW4ROU.mjs → chunk-EM67QTMR.mjs} +0 -0
- /package/dist/{chunk-RNXGC54D.mjs → chunk-FGUK6IBA.mjs} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Aptos, AccountAddress, AccountAddressInput, Account,
|
|
1
|
+
import { InputGenerateTransactionOptions, Aptos, AccountAddress, InputTransactionPluginData, AccountAddressInput, Account, PendingTransactionResponse, InputGenerateTransactionPayloadData } from '@aptos-labs/ts-sdk';
|
|
2
2
|
import { BlobName } from '../layout.js';
|
|
3
3
|
import { BlobMetadata, BlobActivity, StorageProviderAck } from '../types/blobs.js';
|
|
4
4
|
import { ShelbyIndexerClient } from '../operations/index.js';
|
|
@@ -11,27 +11,62 @@ import 'graphql-request';
|
|
|
11
11
|
import 'graphql';
|
|
12
12
|
import '../networks.js';
|
|
13
13
|
|
|
14
|
+
/**
|
|
15
|
+
* Error thrown when USD sponsorship is configured without a transaction submitter.
|
|
16
|
+
* USD sponsorship requires a transaction submitter because the sponsored transaction
|
|
17
|
+
* is a multi-agent transaction that must be co-signed by the sponsor.
|
|
18
|
+
*/
|
|
19
|
+
declare class MissingTransactionSubmitterError extends Error {
|
|
20
|
+
constructor();
|
|
21
|
+
}
|
|
22
|
+
interface BuildOptions {
|
|
23
|
+
options?: InputGenerateTransactionOptions;
|
|
24
|
+
withFeePayer?: boolean;
|
|
25
|
+
}
|
|
26
|
+
interface UsdSponsorOptions {
|
|
27
|
+
/**
|
|
28
|
+
* This should be provided by your gas station provider (e.g. Geomi) after you create
|
|
29
|
+
* a gas station.
|
|
30
|
+
*/
|
|
31
|
+
feePayerAddress: AccountAddress;
|
|
32
|
+
}
|
|
14
33
|
interface WriteBlobCommitmentsOptions {
|
|
15
|
-
build?:
|
|
16
|
-
|
|
17
|
-
|
|
34
|
+
build?: BuildOptions;
|
|
35
|
+
submit?: InputTransactionPluginData;
|
|
36
|
+
/**
|
|
37
|
+
* Whereas build.withFeePayer corresponds to regular APT fee sponsorship, this refers
|
|
38
|
+
* to the Shelby-specific fees in stables. If set, we will use the sponsored variants
|
|
39
|
+
* of the various entry functions, e.g. register_blob_with_sponsor rather than
|
|
40
|
+
* register_blob. Aptos right now requires that the payload includes the address of
|
|
41
|
+
* the second signer when it is initially built, so you must provide the fee payer
|
|
42
|
+
* address of your gas station.
|
|
43
|
+
*
|
|
44
|
+
* These payloads by definition must be signed by the sponsor as well, so you must
|
|
45
|
+
* also configure a `transactionSubmitter` in your Aptos client's pluginSettings
|
|
46
|
+
* (via `aptos.pluginSettings.TRANSACTION_SUBMITTER`) that sends the transaction to
|
|
47
|
+
* an intermediate service (like a gas station) that co-signs the transaction.
|
|
48
|
+
*
|
|
49
|
+
* If `usdSponsor` is provided without a transaction submitter configured, an error
|
|
50
|
+
* will be thrown.
|
|
51
|
+
*/
|
|
52
|
+
usdSponsor?: UsdSponsorOptions;
|
|
18
53
|
chunksetSizeBytes?: number;
|
|
19
54
|
}
|
|
20
55
|
interface AckTransactionOptions {
|
|
21
|
-
build?:
|
|
22
|
-
options?: InputGenerateTransactionOptions;
|
|
23
|
-
};
|
|
56
|
+
build?: BuildOptions;
|
|
24
57
|
}
|
|
25
58
|
declare class ShelbyBlobClient {
|
|
26
59
|
readonly aptos: Aptos;
|
|
27
60
|
readonly deployer: AccountAddress;
|
|
28
61
|
readonly indexer: ShelbyIndexerClient;
|
|
62
|
+
readonly defaultOptions: WriteBlobCommitmentsOptions;
|
|
29
63
|
/**
|
|
30
64
|
* The ShelbyBlobClient is used to interact with the Shelby contract on the Aptos blockchain. This
|
|
31
65
|
* includes functions for registering blob commitments and retrieving blob metadata.
|
|
32
66
|
*
|
|
33
67
|
* @param config - The client configuration object.
|
|
34
68
|
* @param config.network - The Shelby network to use.
|
|
69
|
+
* @param defaultOptions - Optional default options for blob operations.
|
|
35
70
|
*
|
|
36
71
|
* @example
|
|
37
72
|
* ```typescript
|
|
@@ -44,8 +79,37 @@ declare class ShelbyBlobClient {
|
|
|
44
79
|
* },
|
|
45
80
|
* });
|
|
46
81
|
* ```
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```typescript
|
|
85
|
+
* // With default options for USD sponsorship
|
|
86
|
+
* const blobClient = new ShelbyBlobClient(
|
|
87
|
+
* {
|
|
88
|
+
* network: Network.SHELBYNET,
|
|
89
|
+
* aptos: {
|
|
90
|
+
* pluginSettings: {
|
|
91
|
+
* TRANSACTION_SUBMITTER: myGasStationSubmitter,
|
|
92
|
+
* },
|
|
93
|
+
* },
|
|
94
|
+
* },
|
|
95
|
+
* {
|
|
96
|
+
* usdSponsor: { feePayerAddress: sponsorAddress },
|
|
97
|
+
* }
|
|
98
|
+
* );
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
constructor(config: ShelbyClientConfig, defaultOptions?: WriteBlobCommitmentsOptions);
|
|
102
|
+
/**
|
|
103
|
+
* Merges method-level options with default options, giving precedence to method-level values.
|
|
47
104
|
*/
|
|
48
|
-
|
|
105
|
+
private mergeOptions;
|
|
106
|
+
/**
|
|
107
|
+
* Validates that if USD sponsorship is requested, a transaction submitter is
|
|
108
|
+
* configured as well. Checks both the client-level and method-level transaction
|
|
109
|
+
* submitter configurations. Throws MissingTransactionSubmitterError if usdSponsor is
|
|
110
|
+
* provided without a transaction submitter.
|
|
111
|
+
*/
|
|
112
|
+
private validateUsdSponsorConfig;
|
|
49
113
|
/**
|
|
50
114
|
* Retrieves the blob metadata from the blockchain. If it does not exist,
|
|
51
115
|
* returns `undefined`.
|
|
@@ -190,6 +254,65 @@ declare class ShelbyBlobClient {
|
|
|
190
254
|
}): Promise<{
|
|
191
255
|
transaction: PendingTransactionResponse;
|
|
192
256
|
}>;
|
|
257
|
+
/**
|
|
258
|
+
* Deletes a blob on the blockchain.
|
|
259
|
+
*
|
|
260
|
+
* @param params.account - The account that is signing and paying for the transaction.
|
|
261
|
+
* @param params.blobName - The name/path of the blob (e.g. "foo/bar.txt").
|
|
262
|
+
* @param params.options - Optional transaction building options.
|
|
263
|
+
*
|
|
264
|
+
* @returns An object containing the pending transaction.
|
|
265
|
+
*
|
|
266
|
+
* @example
|
|
267
|
+
* ```typescript
|
|
268
|
+
*
|
|
269
|
+
* const { transaction } = await client.deleteBlob({
|
|
270
|
+
* account: signer,
|
|
271
|
+
* blobName: "foo/bar.txt",
|
|
272
|
+
* });
|
|
273
|
+
* ```
|
|
274
|
+
*/
|
|
275
|
+
deleteBlob(params: {
|
|
276
|
+
account: Account;
|
|
277
|
+
blobName: BlobName;
|
|
278
|
+
options?: InputGenerateTransactionOptions;
|
|
279
|
+
}): Promise<{
|
|
280
|
+
transaction: PendingTransactionResponse;
|
|
281
|
+
}>;
|
|
282
|
+
/**
|
|
283
|
+
* Deletes multiple blobs on the blockchain in a single atomic transaction.
|
|
284
|
+
*
|
|
285
|
+
* **Note:** This function requires the `delete_multiple_blobs` entry function
|
|
286
|
+
* which will be deployed to the smart contract on 2026-02-04. Using this
|
|
287
|
+
* function before that date will result in a transaction failure.
|
|
288
|
+
*
|
|
289
|
+
* This operation is atomic: if any blob deletion fails (e.g., blob not found),
|
|
290
|
+
* the entire transaction fails and no blobs are deleted.
|
|
291
|
+
*
|
|
292
|
+
* @param params.account - The account that is signing and paying for the transaction.
|
|
293
|
+
* @param params.blobNames - Array of blob name suffixes without the account address prefix
|
|
294
|
+
* (e.g. ["foo/bar.txt", "baz.txt"], NOT ["0x1/foo/bar.txt"]). The account address
|
|
295
|
+
* prefix is automatically derived from the signer.
|
|
296
|
+
* @param params.options - Optional transaction building options.
|
|
297
|
+
*
|
|
298
|
+
* @returns An object containing the pending transaction.
|
|
299
|
+
*
|
|
300
|
+
* @example
|
|
301
|
+
* ```typescript
|
|
302
|
+
*
|
|
303
|
+
* const { transaction } = await client.deleteMultipleBlobs({
|
|
304
|
+
* account: signer,
|
|
305
|
+
* blobNames: ["foo/bar.txt", "baz.txt"],
|
|
306
|
+
* });
|
|
307
|
+
* ```
|
|
308
|
+
*/
|
|
309
|
+
deleteMultipleBlobs(params: {
|
|
310
|
+
account: Account;
|
|
311
|
+
blobNames: BlobName[];
|
|
312
|
+
options?: InputGenerateTransactionOptions;
|
|
313
|
+
}): Promise<{
|
|
314
|
+
transaction: PendingTransactionResponse;
|
|
315
|
+
}>;
|
|
193
316
|
/**
|
|
194
317
|
* Acks the blob chunksets on-chain. If each chunkset meets the necessary threshold, the entire blob will be marked as written.
|
|
195
318
|
*
|
|
@@ -295,6 +418,7 @@ declare class ShelbyBlobClient {
|
|
|
295
418
|
blobMerkleRoot: string;
|
|
296
419
|
expirationMicros: number;
|
|
297
420
|
numChunksets: number;
|
|
421
|
+
useSponsoredUsdVariant?: boolean;
|
|
298
422
|
}): InputGenerateTransactionPayloadData;
|
|
299
423
|
/**
|
|
300
424
|
* Creates a transaction payload to register multiple blobs on the blockchain.
|
|
@@ -323,13 +447,14 @@ declare class ShelbyBlobClient {
|
|
|
323
447
|
blobMerkleRoot: string;
|
|
324
448
|
numChunksets: number;
|
|
325
449
|
}[];
|
|
450
|
+
useSponsoredUsdVariant?: boolean;
|
|
326
451
|
}): InputGenerateTransactionPayloadData;
|
|
327
452
|
/**
|
|
328
453
|
* Creates a transaction payload to delete a blob on the blockchain.
|
|
329
454
|
* This is a static helper method for constructing the Move function call payload.
|
|
330
455
|
*
|
|
331
456
|
* @param params.deployer - Optional deployer account address. Defaults to SHELBY_DEPLOYER.
|
|
332
|
-
* @param params.
|
|
457
|
+
* @param params.blobName - The blob name (e.g. "bar.txt", without the account address prefix).
|
|
333
458
|
*
|
|
334
459
|
* @returns An Aptos transaction payload data object for the delete_blob Move function.
|
|
335
460
|
*
|
|
@@ -337,7 +462,31 @@ declare class ShelbyBlobClient {
|
|
|
337
462
|
*/
|
|
338
463
|
static createDeleteBlobPayload(params: {
|
|
339
464
|
deployer?: AccountAddress;
|
|
340
|
-
|
|
465
|
+
blobName: string;
|
|
466
|
+
}): InputGenerateTransactionPayloadData;
|
|
467
|
+
/**
|
|
468
|
+
* Creates a transaction payload to delete multiple blobs on the blockchain.
|
|
469
|
+
* This is a static helper method for constructing the Move function call payload.
|
|
470
|
+
*
|
|
471
|
+
* **Note:** This function requires the `delete_multiple_blobs` entry function
|
|
472
|
+
* which will be deployed to the smart contract on 2026-02-04. Using this
|
|
473
|
+
* function before that date will result in a transaction failure.
|
|
474
|
+
*
|
|
475
|
+
* This operation is atomic: if any blob deletion fails (e.g., blob not found),
|
|
476
|
+
* the entire transaction fails and no blobs are deleted.
|
|
477
|
+
*
|
|
478
|
+
* @param params.deployer - Optional deployer account address. Defaults to SHELBY_DEPLOYER.
|
|
479
|
+
* @param params.blobNames - Array of blob name suffixes without the account address prefix
|
|
480
|
+
* (e.g. ["foo/bar.txt", "baz.txt"], NOT ["0x1/foo/bar.txt"]). The account address
|
|
481
|
+
* prefix is automatically derived from the transaction sender.
|
|
482
|
+
*
|
|
483
|
+
* @returns An Aptos transaction payload data object for the delete_multiple_blobs Move function.
|
|
484
|
+
*
|
|
485
|
+
* @see https://github.com/shelby/shelby/blob/main/move/shelby_contract/sources/blob_metadata.move
|
|
486
|
+
*/
|
|
487
|
+
static createDeleteMultipleBlobsPayload(params: {
|
|
488
|
+
deployer?: AccountAddress;
|
|
489
|
+
blobNames: string[];
|
|
341
490
|
}): InputGenerateTransactionPayloadData;
|
|
342
491
|
static createChunksetAcknowledgementsPayload(params: {
|
|
343
492
|
blobOwner: AccountAddress;
|
|
@@ -348,4 +497,4 @@ declare class ShelbyBlobClient {
|
|
|
348
497
|
}): InputGenerateTransactionPayloadData;
|
|
349
498
|
}
|
|
350
499
|
|
|
351
|
-
export { type AckTransactionOptions, ShelbyBlobClient, type WriteBlobCommitmentsOptions };
|
|
500
|
+
export { type AckTransactionOptions, type BuildOptions, MissingTransactionSubmitterError, ShelbyBlobClient, type UsdSponsorOptions, type WriteBlobCommitmentsOptions };
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import {
|
|
2
|
+
MissingTransactionSubmitterError,
|
|
2
3
|
ShelbyBlobClient
|
|
3
|
-
} from "../../chunk-
|
|
4
|
+
} from "../../chunk-AGRRYZWV.mjs";
|
|
4
5
|
import "../../chunk-XNEIWM4O.mjs";
|
|
6
|
+
import "../../chunk-OMZOR2ZF.mjs";
|
|
7
|
+
import "../../chunk-UCDAABAS.mjs";
|
|
5
8
|
import "../../chunk-PZF2VTGP.mjs";
|
|
6
|
-
import "../../chunk-
|
|
7
|
-
import "../../chunk-
|
|
8
|
-
import "../../chunk-
|
|
9
|
-
import "../../chunk-CPNZAQVY.mjs";
|
|
10
|
-
import "../../chunk-NLPIHQ7K.mjs";
|
|
9
|
+
import "../../chunk-3ZL3FSNA.mjs";
|
|
10
|
+
import "../../chunk-KJ24NKPH.mjs";
|
|
11
|
+
import "../../chunk-AABBONAF.mjs";
|
|
11
12
|
import "../../chunk-OTBLZL2S.mjs";
|
|
12
|
-
import "../../chunk-
|
|
13
|
+
import "../../chunk-RLRI2533.mjs";
|
|
13
14
|
import "../../chunk-4JZO2D7T.mjs";
|
|
14
|
-
import "../../chunk-SEXQTDX6.mjs";
|
|
15
15
|
import "../../chunk-67F5YZ25.mjs";
|
|
16
|
-
import "../../chunk-
|
|
16
|
+
import "../../chunk-LZSIZJYR.mjs";
|
|
17
|
+
import "../../chunk-FLLOQZVD.mjs";
|
|
17
18
|
import "../../chunk-7P6ASYW6.mjs";
|
|
18
19
|
export {
|
|
20
|
+
MissingTransactionSubmitterError,
|
|
19
21
|
ShelbyBlobClient
|
|
20
22
|
};
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
import { WriteBlobCommitmentsOptions, ShelbyBlobClient } from './ShelbyBlobClient.js';
|
|
2
1
|
import { Aptos, Account, AccountAddressInput } from '@aptos-labs/ts-sdk';
|
|
3
2
|
import { ShelbyBlob } from '../blobs.js';
|
|
4
3
|
import { a as ErasureCodingProvider } from '../../clay-codes-pdZFxI_B.js';
|
|
5
4
|
import { BlobName } from '../layout.js';
|
|
5
|
+
import { WriteBlobCommitmentsOptions, ShelbyBlobClient } from './ShelbyBlobClient.js';
|
|
6
6
|
import { ShelbyClientConfig } from './ShelbyClientConfig.js';
|
|
7
7
|
import { ShelbyRPCClient } from './ShelbyRPCClient.js';
|
|
8
|
-
import '../types/blobs.js';
|
|
9
|
-
import '@shelby-protocol/clay-codes';
|
|
10
8
|
import 'zod';
|
|
9
|
+
import '@shelby-protocol/clay-codes';
|
|
10
|
+
import '../types/blobs.js';
|
|
11
11
|
import '../operations/index.js';
|
|
12
12
|
import 'graphql-request';
|
|
13
13
|
import '../operations/generated/sdk.js';
|
|
14
14
|
import 'graphql';
|
|
15
15
|
import '../networks.js';
|
|
16
|
+
import '../types/payments.js';
|
|
16
17
|
|
|
17
18
|
type UploadOptions = WriteBlobCommitmentsOptions;
|
|
18
19
|
declare class ShelbyClient {
|
|
@@ -83,6 +84,11 @@ declare class ShelbyClient {
|
|
|
83
84
|
* This method handles the complete upload flow including commitment generation,
|
|
84
85
|
* blockchain registration, and storage upload.
|
|
85
86
|
*
|
|
87
|
+
* Note: This method accepts only `Uint8Array` and buffers the entire blob in memory.
|
|
88
|
+
* For streaming uploads of large files (e.g. >2 GiB), orchestrate the steps manually
|
|
89
|
+
* using `generateCommitments()`, `coordination.registerBlob()`, and `rpc.putBlob()`
|
|
90
|
+
* with a `ReadableStream`.
|
|
91
|
+
*
|
|
86
92
|
* @param params.blobData - The raw data to upload as a Uint8Array.
|
|
87
93
|
* @param params.signer - The account that signs and pays for the transaction.
|
|
88
94
|
* @param params.blobName - The name/path of the blob (e.g. "folder/file.txt").
|
|
@@ -115,6 +121,11 @@ declare class ShelbyClient {
|
|
|
115
121
|
* This method handles the complete upload flow including commitment generation,
|
|
116
122
|
* blockchain registration, and storage upload.
|
|
117
123
|
*
|
|
124
|
+
* Note: This method accepts only `Uint8Array` and buffers each blob in memory.
|
|
125
|
+
* For streaming uploads of large files, orchestrate the steps manually using
|
|
126
|
+
* `generateCommitments()`, `coordination.registerBlob()`, and `rpc.putBlob()`
|
|
127
|
+
* with a `ReadableStream`.
|
|
128
|
+
*
|
|
118
129
|
* @param params.blobs - The blobs to upload.
|
|
119
130
|
* @param params.blobs.blobData - The raw data to upload as a Uint8Array.
|
|
120
131
|
* @param params.blobs.blobName - The name/path of the blob (e.g. "folder/file.txt").
|
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ShelbyClient
|
|
3
|
-
} from "../../chunk-
|
|
4
|
-
import "../../chunk-
|
|
5
|
-
import "../../chunk-I6NG5GNL.mjs";
|
|
6
|
-
import "../../chunk-BBOG5JSX.mjs";
|
|
3
|
+
} from "../../chunk-W6YL46DT.mjs";
|
|
4
|
+
import "../../chunk-AGRRYZWV.mjs";
|
|
7
5
|
import "../../chunk-XNEIWM4O.mjs";
|
|
6
|
+
import "../../chunk-OMZOR2ZF.mjs";
|
|
7
|
+
import "../../chunk-UCDAABAS.mjs";
|
|
8
8
|
import "../../chunk-PZF2VTGP.mjs";
|
|
9
|
-
import "../../chunk-
|
|
10
|
-
import "../../chunk-
|
|
11
|
-
import "../../chunk-
|
|
12
|
-
import "../../chunk-
|
|
13
|
-
import "../../chunk-
|
|
9
|
+
import "../../chunk-ZAM2EUVN.mjs";
|
|
10
|
+
import "../../chunk-4MG4XGY4.mjs";
|
|
11
|
+
import "../../chunk-3ZL3FSNA.mjs";
|
|
12
|
+
import "../../chunk-KJ24NKPH.mjs";
|
|
13
|
+
import "../../chunk-AABBONAF.mjs";
|
|
14
|
+
import "../../chunk-W5NRGZEP.mjs";
|
|
15
|
+
import "../../chunk-I6NG5GNL.mjs";
|
|
16
|
+
import "../../chunk-IE6LYVIA.mjs";
|
|
14
17
|
import "../../chunk-OTBLZL2S.mjs";
|
|
15
|
-
import "../../chunk-
|
|
18
|
+
import "../../chunk-RLRI2533.mjs";
|
|
16
19
|
import "../../chunk-4JZO2D7T.mjs";
|
|
17
|
-
import "../../chunk-SEXQTDX6.mjs";
|
|
18
|
-
import "../../chunk-GY5DCVVL.mjs";
|
|
19
20
|
import "../../chunk-67F5YZ25.mjs";
|
|
20
|
-
import "../../chunk-
|
|
21
|
+
import "../../chunk-LZSIZJYR.mjs";
|
|
22
|
+
import "../../chunk-FLLOQZVD.mjs";
|
|
21
23
|
import "../../chunk-7P6ASYW6.mjs";
|
|
22
24
|
export {
|
|
23
25
|
ShelbyClient
|
|
@@ -42,8 +42,13 @@ interface ShelbyClientConfig {
|
|
|
42
42
|
rpc?: ShelbyRPCConfig;
|
|
43
43
|
/** An optional indexer configuration for GraphQL queries. If not provided, the default indexer will be used. */
|
|
44
44
|
indexer?: ShelbyIndexerConfig;
|
|
45
|
-
/** An optional faucet
|
|
46
|
-
faucet?:
|
|
45
|
+
/** An optional faucet configuration. */
|
|
46
|
+
faucet?: {
|
|
47
|
+
/** An optional faucet URL for funding accounts. If not provided, the default faucet will be used. */
|
|
48
|
+
baseUrl?: string;
|
|
49
|
+
/** Auth token for the faucet endpoint. */
|
|
50
|
+
authToken?: string;
|
|
51
|
+
};
|
|
47
52
|
}
|
|
48
53
|
|
|
49
54
|
export type { ShelbyClientConfig, ShelbyIndexerConfig, ShelbyRPCConfig };
|