@shelby-protocol/sdk 0.1.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.d.ts +6 -5
- package/dist/browser/index.mjs +49 -39
- package/dist/{chunk-DI2K6OUG.mjs → chunk-33BZ7KYA.mjs} +1 -1
- package/dist/chunk-3NRBHSMQ.mjs +12 -0
- package/dist/{chunk-FLLOQZVD.mjs → chunk-4ZOFT75Q.mjs} +12 -2
- package/dist/{chunk-W6YL46DT.mjs → chunk-5CES6RPZ.mjs} +33 -10
- package/dist/{chunk-YZXIPUVQ.mjs → chunk-7O77OM4T.mjs} +108 -29
- package/dist/{chunk-LZSIZJYR.mjs → chunk-AUQDI5BS.mjs} +14 -1
- package/dist/{chunk-RLRI2533.mjs → chunk-BXEVML7N.mjs} +4 -4
- package/dist/{chunk-3ZL3FSNA.mjs → chunk-CGYJLKBU.mjs} +1 -1
- package/dist/{chunk-VRLIOKWG.mjs → chunk-D6GQHO6G.mjs} +5 -1
- package/dist/{chunk-ZAM2EUVN.mjs → chunk-EFR6H3RT.mjs} +7 -7
- package/dist/chunk-HPPMI7DC.mjs +56 -0
- package/dist/{chunk-AGRRYZWV.mjs → chunk-IBAUPQOF.mjs} +37 -24
- package/dist/{chunk-67F5YZ25.mjs → chunk-JTXYKO3U.mjs} +10 -0
- package/dist/chunk-KTVNKLBT.mjs +207 -0
- package/dist/{chunk-PZF2VTGP.mjs → chunk-NHWWORCH.mjs} +3 -1
- package/dist/{chunk-UCDAABAS.mjs → chunk-OGKZ575S.mjs} +6 -19
- package/dist/{chunk-66GI734H.mjs → chunk-OQNP5QXH.mjs} +87 -75
- package/dist/{chunk-4JZO2D7T.mjs → chunk-UEZNZBJO.mjs} +9 -2
- package/dist/{chunk-MSCUDBMH.mjs → chunk-W37FZSMA.mjs} +1 -1
- package/dist/chunk-Z4FZ7W6L.mjs +39 -0
- package/dist/{clay-codes-pdZFxI_B.d.ts → clay-codes-DHP-bYcP.d.ts} +6 -2
- package/dist/core/blobs.d.ts +2 -0
- package/dist/core/blobs.mjs +2 -1
- package/dist/core/chunk.d.ts +10 -1
- package/dist/core/chunk.mjs +2 -2
- package/dist/core/clients/ShelbyBlobClient.d.ts +5 -1
- package/dist/core/clients/ShelbyBlobClient.mjs +11 -11
- package/dist/core/clients/ShelbyClient.d.ts +8 -2
- package/dist/core/clients/ShelbyClient.mjs +16 -15
- package/dist/core/clients/ShelbyMetadataClient.d.ts +123 -0
- package/dist/{node → core}/clients/ShelbyMetadataClient.mjs +3 -2
- package/dist/core/clients/ShelbyMicropaymentChannelClient.d.ts +39 -34
- package/dist/core/clients/ShelbyMicropaymentChannelClient.mjs +6 -5
- package/dist/core/clients/ShelbyPlacementGroupClient.mjs +3 -3
- package/dist/core/clients/ShelbyRPCClient.d.ts +2 -0
- package/dist/core/clients/ShelbyRPCClient.mjs +6 -8
- package/dist/core/clients/index.d.ts +4 -2
- package/dist/core/clients/index.mjs +27 -23
- package/dist/core/commitments.d.ts +1 -1
- package/dist/core/commitments.mjs +4 -4
- package/dist/core/constants.d.ts +15 -3
- package/dist/core/constants.mjs +3 -1
- package/dist/core/erasure/clay-codes.d.ts +1 -1
- package/dist/core/erasure/clay-codes.mjs +5 -5
- package/dist/core/erasure/constants.d.ts +10 -2
- package/dist/core/erasure/constants.mjs +1 -1
- package/dist/core/erasure/default.d.ts +5 -2
- package/dist/core/erasure/default.mjs +12 -6
- package/dist/core/erasure/index.d.ts +2 -2
- package/dist/core/erasure/index.mjs +15 -9
- package/dist/core/erasure/provider.d.ts +1 -1
- package/dist/core/erasure/reed-solomon.d.ts +1 -1
- package/dist/core/erasure/reed-solomon.mjs +1 -1
- package/dist/core/erasure/utils.d.ts +1 -1
- package/dist/core/index.d.ts +6 -5
- package/dist/core/index.mjs +49 -39
- package/dist/core/layout.d.ts +5 -16
- package/dist/core/layout.mjs +3 -9
- package/dist/core/networks.d.ts +1 -1
- package/dist/core/networks.mjs +1 -1
- package/dist/core/operations/index.mjs +2 -2
- package/dist/core/types/blobs.d.ts +1 -1
- package/dist/core/types/encodings.d.ts +1 -1
- package/dist/core/types/index.d.ts +1 -1
- package/dist/core/types/index.mjs +3 -2
- package/dist/core/types/payments.d.ts +82 -9
- package/dist/core/types/payments.mjs +2 -1
- package/dist/core/types/placement_groups.d.ts +2 -2
- package/dist/core/types/storage_providers.d.ts +2 -2
- package/dist/core/utils.d.ts +3 -2
- package/dist/core/utils.mjs +3 -1
- package/dist/node/clients/ShelbyNodeClient.d.ts +5 -3
- package/dist/node/clients/ShelbyNodeClient.mjs +17 -16
- package/dist/node/clients/index.d.ts +3 -3
- package/dist/node/clients/index.mjs +18 -18
- package/dist/node/index.d.ts +6 -6
- package/dist/node/index.mjs +52 -46
- package/package.json +1 -1
- package/dist/chunk-4MG4XGY4.mjs +0 -91
- package/dist/chunk-OMZOR2ZF.mjs +0 -29
- package/dist/chunk-OTBLZL2S.mjs +0 -9
- package/dist/chunk-W5NRGZEP.mjs +0 -86
- package/dist/core/operations/generated/types.d.ts +0 -908
- package/dist/core/operations/generated/types.mjs +0 -63
- package/dist/node/clients/ShelbyMetadataClient.d.ts +0 -72
- /package/dist/{chunk-FGUK6IBA.mjs → chunk-WTICJPDB.mjs} +0 -0
package/dist/browser/index.d.ts
CHANGED
|
@@ -4,16 +4,17 @@ export { CHUNK_SIZE_PARAMS, ChunkSizeScheme, DEFAULT_CHUNKSET_SIZE_BYTES, DEFAUL
|
|
|
4
4
|
export { AckTransactionOptions, BuildOptions, MissingTransactionSubmitterError, ShelbyBlobClient, UsdSponsorOptions, WriteBlobCommitmentsOptions } from '../core/clients/ShelbyBlobClient.js';
|
|
5
5
|
export { ShelbyClient, UploadOptions } from '../core/clients/ShelbyClient.js';
|
|
6
6
|
export { ShelbyClientConfig, ShelbyIndexerConfig, ShelbyRPCConfig } from '../core/clients/ShelbyClientConfig.js';
|
|
7
|
+
export { ShelbyMetadataClient } from '../core/clients/ShelbyMetadataClient.js';
|
|
7
8
|
export { ShelbyMicropaymentChannelClient } from '../core/clients/ShelbyMicropaymentChannelClient.js';
|
|
8
9
|
export { ShelbyPlacementGroupClient } from '../core/clients/ShelbyPlacementGroupClient.js';
|
|
9
10
|
export { BlobDataSource, PutBlobProgress, ShelbyRPCClient } from '../core/clients/ShelbyRPCClient.js';
|
|
10
11
|
export { BlobCommitments, BlobCommitmentsSchema, COMMITMENT_SCHEMA_VERSION, ChunksetCommitment, ChunksetCommitmentSchema, GenerateCommitmentsOptions, expectedTotalChunksets, generateCommitments, generateMerkleRoot } from '../core/commitments.js';
|
|
11
|
-
export { DEFAULT_PROJECT_DESCRIPTION, DEFAULT_PROJECT_NAME, MICROPAYMENTS_DEPLOYER, NetworkToShelbyBlobIndexerBaseUrl, NetworkToShelbyRPCBaseUrl, SHELBYUSD_FA_METADATA_ADDRESS, SHELBYUSD_TOKEN_ADDRESS, SHELBYUSD_TOKEN_MODULE, SHELBYUSD_TOKEN_NAME, SHELBY_DEPLOYER, TOKEN_DEPLOYER, TOKEN_OBJECT_ADDRESS } from '../core/constants.js';
|
|
12
|
-
export { C as ClayErasureCodingProvider, D as DecodeConfig, E as ErasureCodingConfig, a as ErasureCodingProvider, R as ReedSolomonErasureCodingProvider } from '../clay-codes-
|
|
12
|
+
export { DEFAULT_PROJECT_DESCRIPTION, DEFAULT_PROJECT_NAME, MICROPAYMENTS_DEPLOYER, NetworkToGasStationBaseUrl, NetworkToShelbyBlobIndexerBaseUrl, NetworkToShelbyRPCBaseUrl, SHELBYUSD_FA_METADATA_ADDRESS, SHELBYUSD_TOKEN_ADDRESS, SHELBYUSD_TOKEN_MODULE, SHELBYUSD_TOKEN_NAME, SHELBY_DEPLOYER, TOKEN_DEPLOYER, TOKEN_OBJECT_ADDRESS } from '../core/constants.js';
|
|
13
|
+
export { C as ClayErasureCodingProvider, D as DecodeConfig, E as ErasureCodingConfig, a as ErasureCodingProvider, R as ReedSolomonErasureCodingProvider } from '../clay-codes-DHP-bYcP.js';
|
|
13
14
|
export { DEFAULT_ERASURE_D, DEFAULT_ERASURE_K, DEFAULT_ERASURE_M, DEFAULT_ERASURE_N, DEFAULT_SAMPLE_SIZE, ERASURE_CODE_PARAMS, ErasureCodeParams, ErasureCodingScheme, ErasureSchemeParams } from '../core/erasure/constants.js';
|
|
14
|
-
export { createDefaultErasureCodingProvider } from '../core/erasure/default.js';
|
|
15
|
+
export { createDefaultErasureCodingProvider, defaultErasureCodingConfig, erasureCodingConfig16Total10Data13Helper, erasureCodingConfig4Total2Data3Helper } from '../core/erasure/default.js';
|
|
15
16
|
export { ShelbyErrorCodes, isAccessDeniedError, isBlobAlreadyExistsError, isBlobExpiredError, isBlobNotFoundError } from '../core/errors.js';
|
|
16
|
-
export { BlobName, BlobNameSchema, ChunkKey
|
|
17
|
+
export { BlobName, BlobNameSchema, ChunkKey } from '../core/layout.js';
|
|
17
18
|
export { ShelbyNetwork, isShelbyNetwork, shelbyNetworks } from '../core/networks.js';
|
|
18
19
|
export { ShelbyIndexerClient, createShelbyIndexerClient, getShelbyIndexerClient } from '../core/operations/index.js';
|
|
19
20
|
export { CompleteMultipartUploadResponse, CompleteMultipartUploadResponseSchema, RPCErrorResponse, RPCErrorResponseSchema, StaleMicropaymentErrorResponse, StaleMicropaymentErrorResponseSchema, StartMultipartUploadResponse, StartMultipartUploadResponseSchema, UploadPartResponse, UploadPartResponseSchema } from '../core/rpc-responses.js';
|
|
@@ -22,7 +23,7 @@ export { BlobActivity, BlobActivityType, BlobEncoding, BlobMetadata, ClayEncodin
|
|
|
22
23
|
export { ChannelInfo, SenderBuiltMicropayment, StaleChannelStateError } from '../core/types/payments.js';
|
|
23
24
|
export { PlacementGroupInfo, PlacementGroupSlot, PlacementGroupSlotStatus } from '../core/types/placement_groups.js';
|
|
24
25
|
export { ActiveStateDetails, FrozenStateDetails, StorageProviderInfo, StorageProviderStateDetails, WaitlistedStateDetails } from '../core/types/storage_providers.js';
|
|
25
|
-
export { buildRequestUrl, concatHashes, getBlobNameSuffix, readInChunks, zeroPadBytes } from '../core/utils.js';
|
|
26
|
+
export { buildRequestUrl, concatHashes, getBlobNameSuffix, normalizeAddress, readInChunks, zeroPadBytes } from '../core/utils.js';
|
|
26
27
|
export { Bigint_Comparison_Exp, Blob_Activities, Blob_Activities_Aggregate, Blob_Activities_Aggregate_Fields, Blob_Activities_Aggregate_FieldsCountArgs, Blob_Activities_Avg_Fields, Blob_Activities_Bool_Exp, Blob_Activities_Max_Fields, Blob_Activities_Min_Fields, Blob_Activities_Order_By, Blob_Activities_Select_Column, Blob_Activities_Stddev_Fields, Blob_Activities_Stddev_Pop_Fields, Blob_Activities_Stddev_Samp_Fields, Blob_Activities_Stream_Cursor_Input, Blob_Activities_Stream_Cursor_Value_Input, Blob_Activities_Sum_Fields, Blob_Activities_Var_Pop_Fields, Blob_Activities_Var_Samp_Fields, Blob_Activities_Variance_Fields, Blobs, BlobsPlacement_Group_SlotsArgs, BlobsPlacement_Group_Slots_AggregateArgs, Blobs_Aggregate, Blobs_Aggregate_Fields, Blobs_Aggregate_FieldsCountArgs, Blobs_Avg_Fields, Blobs_Bool_Exp, Blobs_Max_Fields, Blobs_Min_Fields, Blobs_Order_By, Blobs_Select_Column, Blobs_Stddev_Fields, Blobs_Stddev_Pop_Fields, Blobs_Stddev_Samp_Fields, Blobs_Stream_Cursor_Input, Blobs_Stream_Cursor_Value_Input, Blobs_Sum_Fields, Blobs_Var_Pop_Fields, Blobs_Var_Samp_Fields, Blobs_Variance_Fields, Cursor_Ordering, Exact, GetBlobActivitiesCountDocument, GetBlobActivitiesCountQuery, GetBlobActivitiesCountQueryVariables, GetBlobActivitiesDocument, GetBlobActivitiesQuery, GetBlobActivitiesQueryVariables, GetBlobsCountDocument, GetBlobsCountQuery, GetBlobsCountQueryVariables, GetBlobsDocument, GetBlobsQuery, GetBlobsQueryVariables, GetPlacementGroupSlotsCountDocument, GetPlacementGroupSlotsCountQuery, GetPlacementGroupSlotsCountQueryVariables, GetPlacementGroupSlotsDocument, GetPlacementGroupSlotsQuery, GetPlacementGroupSlotsQueryVariables, GetProcessorStatusDocument, GetProcessorStatusQuery, GetProcessorStatusQueryVariables, Incremental, InputMaybe, Int_Comparison_Exp, MakeEmpty, MakeMaybe, MakeOptional, Maybe, Numeric_Comparison_Exp, Order_By, Placement_Group_Slots, Placement_Group_Slots_Aggregate, Placement_Group_Slots_Aggregate_Bool_Exp, Placement_Group_Slots_Aggregate_Bool_Exp_Count, Placement_Group_Slots_Aggregate_Fields, Placement_Group_Slots_Aggregate_FieldsCountArgs, Placement_Group_Slots_Aggregate_Order_By, Placement_Group_Slots_Avg_Fields, Placement_Group_Slots_Avg_Order_By, Placement_Group_Slots_Bool_Exp, Placement_Group_Slots_Max_Fields, Placement_Group_Slots_Max_Order_By, Placement_Group_Slots_Min_Fields, Placement_Group_Slots_Min_Order_By, Placement_Group_Slots_Order_By, Placement_Group_Slots_Select_Column, Placement_Group_Slots_Stddev_Fields, Placement_Group_Slots_Stddev_Order_By, Placement_Group_Slots_Stddev_Pop_Fields, Placement_Group_Slots_Stddev_Pop_Order_By, Placement_Group_Slots_Stddev_Samp_Fields, Placement_Group_Slots_Stddev_Samp_Order_By, Placement_Group_Slots_Stream_Cursor_Input, Placement_Group_Slots_Stream_Cursor_Value_Input, Placement_Group_Slots_Sum_Fields, Placement_Group_Slots_Sum_Order_By, Placement_Group_Slots_Var_Pop_Fields, Placement_Group_Slots_Var_Pop_Order_By, Placement_Group_Slots_Var_Samp_Fields, Placement_Group_Slots_Var_Samp_Order_By, Placement_Group_Slots_Variance_Fields, Placement_Group_Slots_Variance_Order_By, Processor_Status, Processor_Status_Bool_Exp, Processor_Status_Order_By, Processor_Status_Select_Column, Processor_Status_Stream_Cursor_Input, Processor_Status_Stream_Cursor_Value_Input, Query_Root, Query_RootBlob_ActivitiesArgs, Query_RootBlob_Activities_AggregateArgs, Query_RootBlob_Activities_By_PkArgs, Query_RootBlobsArgs, Query_RootBlobs_AggregateArgs, Query_RootBlobs_By_PkArgs, Query_RootPlacement_Group_SlotsArgs, Query_RootPlacement_Group_Slots_AggregateArgs, Query_RootPlacement_Group_Slots_By_PkArgs, Query_RootProcessor_StatusArgs, Scalars, Sdk, SdkFunctionWrapper, String_Comparison_Exp, Subscription_Root, Subscription_RootBlob_ActivitiesArgs, Subscription_RootBlob_Activities_AggregateArgs, Subscription_RootBlob_Activities_By_PkArgs, Subscription_RootBlob_Activities_StreamArgs, Subscription_RootBlobsArgs, Subscription_RootBlobs_AggregateArgs, Subscription_RootBlobs_By_PkArgs, Subscription_RootBlobs_StreamArgs, Subscription_RootPlacement_Group_SlotsArgs, Subscription_RootPlacement_Group_Slots_AggregateArgs, Subscription_RootPlacement_Group_Slots_By_PkArgs, Subscription_RootPlacement_Group_Slots_StreamArgs, Subscription_RootProcessor_StatusArgs, Subscription_RootProcessor_Status_StreamArgs, Timestamp_Comparison_Exp, getSdk } from '../core/operations/generated/sdk.js';
|
|
27
28
|
import '@aptos-labs/ts-sdk';
|
|
28
29
|
import 'zod';
|
package/dist/browser/index.mjs
CHANGED
|
@@ -1,44 +1,50 @@
|
|
|
1
1
|
import "../chunk-EM67QTMR.mjs";
|
|
2
|
-
import "../chunk-
|
|
2
|
+
import "../chunk-WTICJPDB.mjs";
|
|
3
|
+
import {
|
|
4
|
+
ShelbyPlacementGroupClient
|
|
5
|
+
} from "../chunk-W37FZSMA.mjs";
|
|
3
6
|
import {
|
|
4
7
|
ShelbyClient
|
|
5
|
-
} from "../chunk-
|
|
8
|
+
} from "../chunk-5CES6RPZ.mjs";
|
|
9
|
+
import {
|
|
10
|
+
ShelbyRPCClient
|
|
11
|
+
} from "../chunk-EFR6H3RT.mjs";
|
|
6
12
|
import {
|
|
7
13
|
MissingTransactionSubmitterError,
|
|
8
14
|
ShelbyBlobClient
|
|
9
|
-
} from "../chunk-
|
|
15
|
+
} from "../chunk-IBAUPQOF.mjs";
|
|
10
16
|
import "../chunk-XNEIWM4O.mjs";
|
|
11
17
|
import {
|
|
12
|
-
|
|
13
|
-
} from "../chunk-
|
|
18
|
+
ReedSolomonErasureCodingProvider
|
|
19
|
+
} from "../chunk-NHWWORCH.mjs";
|
|
14
20
|
import {
|
|
15
|
-
|
|
16
|
-
|
|
21
|
+
createDefaultErasureCodingProvider,
|
|
22
|
+
defaultErasureCodingConfig,
|
|
23
|
+
erasureCodingConfig16Total10Data13Helper,
|
|
24
|
+
erasureCodingConfig4Total2Data3Helper
|
|
25
|
+
} from "../chunk-HPPMI7DC.mjs";
|
|
17
26
|
import {
|
|
18
|
-
|
|
19
|
-
} from "../chunk-
|
|
27
|
+
ClayErasureCodingProvider
|
|
28
|
+
} from "../chunk-OGKZ575S.mjs";
|
|
20
29
|
import "../chunk-Z7RFCADT.mjs";
|
|
30
|
+
import {
|
|
31
|
+
ShelbyMetadataClient
|
|
32
|
+
} from "../chunk-7O77OM4T.mjs";
|
|
21
33
|
import {
|
|
22
34
|
ShelbyMicropaymentChannelClient
|
|
23
|
-
} from "../chunk-
|
|
35
|
+
} from "../chunk-OQNP5QXH.mjs";
|
|
24
36
|
import "../chunk-QQ57OGQ2.mjs";
|
|
37
|
+
import "../chunk-MQUVYMNQ.mjs";
|
|
25
38
|
import "../chunk-ZHXCVRZX.mjs";
|
|
26
39
|
import "../chunk-AD2G3QYD.mjs";
|
|
27
|
-
import "../chunk-MQUVYMNQ.mjs";
|
|
28
|
-
import {
|
|
29
|
-
ShelbyPlacementGroupClient
|
|
30
|
-
} from "../chunk-MSCUDBMH.mjs";
|
|
31
|
-
import {
|
|
32
|
-
ShelbyRPCClient
|
|
33
|
-
} from "../chunk-ZAM2EUVN.mjs";
|
|
34
40
|
import {
|
|
35
41
|
SenderBuiltMicropayment,
|
|
36
42
|
StaleChannelStateError
|
|
37
|
-
} from "../chunk-
|
|
43
|
+
} from "../chunk-KTVNKLBT.mjs";
|
|
38
44
|
import {
|
|
39
45
|
createShelbyIndexerClient,
|
|
40
46
|
getShelbyIndexerClient
|
|
41
|
-
} from "../chunk-
|
|
47
|
+
} from "../chunk-CGYJLKBU.mjs";
|
|
42
48
|
import {
|
|
43
49
|
Blob_Activities_Select_Column,
|
|
44
50
|
Blobs_Select_Column,
|
|
@@ -56,16 +62,21 @@ import {
|
|
|
56
62
|
getSdk
|
|
57
63
|
} from "../chunk-KJ24NKPH.mjs";
|
|
58
64
|
import "../chunk-AABBONAF.mjs";
|
|
65
|
+
import {
|
|
66
|
+
ShelbyErrorCodes,
|
|
67
|
+
isAccessDeniedError,
|
|
68
|
+
isBlobAlreadyExistsError,
|
|
69
|
+
isBlobExpiredError,
|
|
70
|
+
isBlobNotFoundError
|
|
71
|
+
} from "../chunk-CQ6QPIZK.mjs";
|
|
59
72
|
import {
|
|
60
73
|
BlobNameSchema,
|
|
61
|
-
ChunkKey
|
|
62
|
-
|
|
63
|
-
roundSize
|
|
64
|
-
} from "../chunk-W5NRGZEP.mjs";
|
|
74
|
+
ChunkKey
|
|
75
|
+
} from "../chunk-Z4FZ7W6L.mjs";
|
|
65
76
|
import {
|
|
66
77
|
isShelbyNetwork,
|
|
67
78
|
shelbyNetworks
|
|
68
|
-
} from "../chunk-
|
|
79
|
+
} from "../chunk-D6GQHO6G.mjs";
|
|
69
80
|
import "../chunk-I6NG5GNL.mjs";
|
|
70
81
|
import {
|
|
71
82
|
CompleteMultipartUploadResponseSchema,
|
|
@@ -85,7 +96,7 @@ import {
|
|
|
85
96
|
} from "../chunk-C6RQ3AEU.mjs";
|
|
86
97
|
import {
|
|
87
98
|
createBlobKey
|
|
88
|
-
} from "../chunk-
|
|
99
|
+
} from "../chunk-3NRBHSMQ.mjs";
|
|
89
100
|
import {
|
|
90
101
|
BlobCommitmentsSchema,
|
|
91
102
|
COMMITMENT_SCHEMA_VERSION,
|
|
@@ -93,21 +104,22 @@ import {
|
|
|
93
104
|
expectedTotalChunksets,
|
|
94
105
|
generateCommitments,
|
|
95
106
|
generateMerkleRoot
|
|
96
|
-
} from "../chunk-
|
|
107
|
+
} from "../chunk-BXEVML7N.mjs";
|
|
97
108
|
import {
|
|
98
109
|
buildRequestUrl,
|
|
99
110
|
concatHashes,
|
|
100
111
|
getBlobNameSuffix,
|
|
112
|
+
normalizeAddress,
|
|
101
113
|
readInChunks,
|
|
102
114
|
zeroPadBytes
|
|
103
|
-
} from "../chunk-
|
|
115
|
+
} from "../chunk-UEZNZBJO.mjs";
|
|
104
116
|
import {
|
|
105
117
|
CHUNK_SIZE_PARAMS,
|
|
106
118
|
ChunkSizeScheme,
|
|
107
119
|
DEFAULT_CHUNKSET_SIZE_BYTES,
|
|
108
120
|
DEFAULT_CHUNK_SIZE_BYTES,
|
|
109
121
|
ERASURE_CODE_AND_CHUNK_MAPPING
|
|
110
|
-
} from "../chunk-
|
|
122
|
+
} from "../chunk-JTXYKO3U.mjs";
|
|
111
123
|
import {
|
|
112
124
|
DEFAULT_ERASURE_D,
|
|
113
125
|
DEFAULT_ERASURE_K,
|
|
@@ -116,11 +128,12 @@ import {
|
|
|
116
128
|
DEFAULT_SAMPLE_SIZE,
|
|
117
129
|
ERASURE_CODE_PARAMS,
|
|
118
130
|
ErasureCodingScheme
|
|
119
|
-
} from "../chunk-
|
|
131
|
+
} from "../chunk-AUQDI5BS.mjs";
|
|
120
132
|
import {
|
|
121
133
|
DEFAULT_PROJECT_DESCRIPTION,
|
|
122
134
|
DEFAULT_PROJECT_NAME,
|
|
123
135
|
MICROPAYMENTS_DEPLOYER,
|
|
136
|
+
NetworkToGasStationBaseUrl,
|
|
124
137
|
NetworkToShelbyBlobIndexerBaseUrl,
|
|
125
138
|
NetworkToShelbyRPCBaseUrl,
|
|
126
139
|
SHELBYUSD_FA_METADATA_ADDRESS,
|
|
@@ -130,14 +143,7 @@ import {
|
|
|
130
143
|
SHELBY_DEPLOYER,
|
|
131
144
|
TOKEN_DEPLOYER,
|
|
132
145
|
TOKEN_OBJECT_ADDRESS
|
|
133
|
-
} from "../chunk-
|
|
134
|
-
import {
|
|
135
|
-
ShelbyErrorCodes,
|
|
136
|
-
isAccessDeniedError,
|
|
137
|
-
isBlobAlreadyExistsError,
|
|
138
|
-
isBlobExpiredError,
|
|
139
|
-
isBlobNotFoundError
|
|
140
|
-
} from "../chunk-CQ6QPIZK.mjs";
|
|
146
|
+
} from "../chunk-4ZOFT75Q.mjs";
|
|
141
147
|
import "../chunk-7P6ASYW6.mjs";
|
|
142
148
|
export {
|
|
143
149
|
BlobCommitmentsSchema,
|
|
@@ -173,6 +179,7 @@ export {
|
|
|
173
179
|
GetProcessorStatusDocument,
|
|
174
180
|
MICROPAYMENTS_DEPLOYER,
|
|
175
181
|
MissingTransactionSubmitterError,
|
|
182
|
+
NetworkToGasStationBaseUrl,
|
|
176
183
|
NetworkToShelbyBlobIndexerBaseUrl,
|
|
177
184
|
NetworkToShelbyRPCBaseUrl,
|
|
178
185
|
Order_By,
|
|
@@ -189,6 +196,7 @@ export {
|
|
|
189
196
|
ShelbyBlobClient,
|
|
190
197
|
ShelbyClient,
|
|
191
198
|
ShelbyErrorCodes,
|
|
199
|
+
ShelbyMetadataClient,
|
|
192
200
|
ShelbyMicropaymentChannelClient,
|
|
193
201
|
ShelbyPlacementGroupClient,
|
|
194
202
|
ShelbyRPCClient,
|
|
@@ -198,12 +206,14 @@ export {
|
|
|
198
206
|
TOKEN_DEPLOYER,
|
|
199
207
|
TOKEN_OBJECT_ADDRESS,
|
|
200
208
|
UploadPartResponseSchema,
|
|
201
|
-
allChunksForBlob,
|
|
202
209
|
buildRequestUrl,
|
|
203
210
|
concatHashes,
|
|
204
211
|
createBlobKey,
|
|
205
212
|
createDefaultErasureCodingProvider,
|
|
206
213
|
createShelbyIndexerClient,
|
|
214
|
+
defaultErasureCodingConfig,
|
|
215
|
+
erasureCodingConfig16Total10Data13Helper,
|
|
216
|
+
erasureCodingConfig4Total2Data3Helper,
|
|
207
217
|
expectedTotalChunksets,
|
|
208
218
|
generateCommitments,
|
|
209
219
|
generateMerkleRoot,
|
|
@@ -220,8 +230,8 @@ export {
|
|
|
220
230
|
isBlobExpiredError,
|
|
221
231
|
isBlobNotFoundError,
|
|
222
232
|
isShelbyNetwork,
|
|
233
|
+
normalizeAddress,
|
|
223
234
|
readInChunks,
|
|
224
|
-
roundSize,
|
|
225
235
|
shelbyNetworks,
|
|
226
236
|
zeroPadBytes
|
|
227
237
|
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
normalizeAddress
|
|
3
|
+
} from "./chunk-UEZNZBJO.mjs";
|
|
4
|
+
|
|
5
|
+
// src/core/blobs.ts
|
|
6
|
+
var createBlobKey = (params) => {
|
|
7
|
+
return `@${normalizeAddress(params.account).toStringLongWithoutPrefix()}/${params.blobName}`;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export {
|
|
11
|
+
createBlobKey
|
|
12
|
+
};
|
|
@@ -6,7 +6,7 @@ var NetworkToShelbyRPCBaseUrl = {
|
|
|
6
6
|
[Network.SHELBYNET]: "https://api.shelbynet.shelby.xyz/shelby",
|
|
7
7
|
[Network.NETNA]: void 0,
|
|
8
8
|
[Network.DEVNET]: void 0,
|
|
9
|
-
[Network.TESTNET]:
|
|
9
|
+
[Network.TESTNET]: "https://api.testnet.shelby.xyz/shelby",
|
|
10
10
|
[Network.MAINNET]: void 0,
|
|
11
11
|
[Network.LOCAL]: void 0,
|
|
12
12
|
[Network.CUSTOM]: void 0
|
|
@@ -15,7 +15,16 @@ var NetworkToShelbyBlobIndexerBaseUrl = {
|
|
|
15
15
|
[Network.SHELBYNET]: "https://api.shelbynet.aptoslabs.com/nocode/v1/public/cmforrguw0042s601fn71f9l2/v1/graphql",
|
|
16
16
|
[Network.NETNA]: void 0,
|
|
17
17
|
[Network.DEVNET]: void 0,
|
|
18
|
-
[Network.TESTNET]:
|
|
18
|
+
[Network.TESTNET]: "https://api.testnet.aptoslabs.com/nocode/v1/public/cmlfqs5wt00qrs601zt5s4kfj/v1/graphql",
|
|
19
|
+
[Network.MAINNET]: void 0,
|
|
20
|
+
[Network.LOCAL]: void 0,
|
|
21
|
+
[Network.CUSTOM]: void 0
|
|
22
|
+
};
|
|
23
|
+
var NetworkToGasStationBaseUrl = {
|
|
24
|
+
[Network.SHELBYNET]: "https://api.shelbynet.shelby.xyz/gs/v1",
|
|
25
|
+
[Network.NETNA]: void 0,
|
|
26
|
+
[Network.DEVNET]: void 0,
|
|
27
|
+
[Network.TESTNET]: "https://api.testnet.shelby.xyz/gs/v1",
|
|
19
28
|
[Network.MAINNET]: void 0,
|
|
20
29
|
[Network.LOCAL]: void 0,
|
|
21
30
|
[Network.CUSTOM]: void 0
|
|
@@ -34,6 +43,7 @@ export {
|
|
|
34
43
|
DEFAULT_PROJECT_DESCRIPTION,
|
|
35
44
|
NetworkToShelbyRPCBaseUrl,
|
|
36
45
|
NetworkToShelbyBlobIndexerBaseUrl,
|
|
46
|
+
NetworkToGasStationBaseUrl,
|
|
37
47
|
SHELBY_DEPLOYER,
|
|
38
48
|
MICROPAYMENTS_DEPLOYER,
|
|
39
49
|
TOKEN_DEPLOYER,
|
|
@@ -1,30 +1,39 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ShelbyRPCClient
|
|
3
|
+
} from "./chunk-EFR6H3RT.mjs";
|
|
1
4
|
import {
|
|
2
5
|
ShelbyBlobClient
|
|
3
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-IBAUPQOF.mjs";
|
|
7
|
+
import {
|
|
8
|
+
defaultErasureCodingConfig
|
|
9
|
+
} from "./chunk-HPPMI7DC.mjs";
|
|
4
10
|
import {
|
|
5
11
|
ClayErasureCodingProvider
|
|
6
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-OGKZ575S.mjs";
|
|
7
13
|
import {
|
|
8
|
-
|
|
9
|
-
} from "./chunk-
|
|
14
|
+
ShelbyMetadataClient
|
|
15
|
+
} from "./chunk-7O77OM4T.mjs";
|
|
10
16
|
import {
|
|
11
17
|
getAptosConfig
|
|
12
18
|
} from "./chunk-AABBONAF.mjs";
|
|
13
19
|
import {
|
|
14
20
|
createBlobKey
|
|
15
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-3NRBHSMQ.mjs";
|
|
16
22
|
import {
|
|
17
23
|
generateCommitments
|
|
18
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-BXEVML7N.mjs";
|
|
25
|
+
import {
|
|
26
|
+
normalizeAddress
|
|
27
|
+
} from "./chunk-UEZNZBJO.mjs";
|
|
19
28
|
import {
|
|
20
29
|
NetworkToShelbyRPCBaseUrl
|
|
21
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-4ZOFT75Q.mjs";
|
|
22
31
|
|
|
23
32
|
// src/core/clients/ShelbyClient.ts
|
|
24
33
|
import {
|
|
25
|
-
AccountAddress,
|
|
26
34
|
Aptos,
|
|
27
35
|
DEFAULT_TXN_TIMEOUT_SEC,
|
|
36
|
+
Network,
|
|
28
37
|
TransactionResponseType
|
|
29
38
|
} from "@aptos-labs/ts-sdk";
|
|
30
39
|
import pLimit from "p-limit";
|
|
@@ -34,6 +43,10 @@ var ShelbyClient = class {
|
|
|
34
43
|
* and metadata for blobs.
|
|
35
44
|
*/
|
|
36
45
|
coordination;
|
|
46
|
+
/**
|
|
47
|
+
* The metadata client is used for protocol-level metadata queries.
|
|
48
|
+
*/
|
|
49
|
+
metadata;
|
|
37
50
|
/**
|
|
38
51
|
* The RPC client is used to interact with the Shelby RPC node which can be responsible for storing,
|
|
39
52
|
* confirming, and retrieving blobs from the storage layer.
|
|
@@ -85,6 +98,7 @@ var ShelbyClient = class {
|
|
|
85
98
|
this.config = config;
|
|
86
99
|
this.aptos = new Aptos(getAptosConfig(config));
|
|
87
100
|
this.coordination = new ShelbyBlobClient(config);
|
|
101
|
+
this.metadata = new ShelbyMetadataClient(config);
|
|
88
102
|
this.rpc = new ShelbyRPCClient(config);
|
|
89
103
|
this._provider = provider;
|
|
90
104
|
}
|
|
@@ -94,7 +108,9 @@ var ShelbyClient = class {
|
|
|
94
108
|
*/
|
|
95
109
|
async getProvider() {
|
|
96
110
|
if (!this._provider) {
|
|
97
|
-
this._provider = await ClayErasureCodingProvider.create(
|
|
111
|
+
this._provider = await ClayErasureCodingProvider.create(
|
|
112
|
+
defaultErasureCodingConfig()
|
|
113
|
+
);
|
|
98
114
|
}
|
|
99
115
|
return this._provider;
|
|
100
116
|
}
|
|
@@ -151,6 +167,7 @@ var ShelbyClient = class {
|
|
|
151
167
|
blobMerkleRoot: blobCommitments.blob_merkle_root,
|
|
152
168
|
size: params.blobData.length,
|
|
153
169
|
expirationMicros: params.expirationMicros,
|
|
170
|
+
config: provider.config,
|
|
154
171
|
options: params.options
|
|
155
172
|
});
|
|
156
173
|
await this.coordination.aptos.waitForTransaction({
|
|
@@ -231,6 +248,7 @@ var ShelbyClient = class {
|
|
|
231
248
|
blobSize: blob.blobData.length,
|
|
232
249
|
blobMerkleRoot: blobCommitments[index].blob_merkle_root
|
|
233
250
|
})),
|
|
251
|
+
config: provider.config,
|
|
234
252
|
options: params.options
|
|
235
253
|
});
|
|
236
254
|
await this.coordination.aptos.waitForTransaction({
|
|
@@ -288,6 +306,11 @@ var ShelbyClient = class {
|
|
|
288
306
|
* ```
|
|
289
307
|
*/
|
|
290
308
|
async fundAccountWithShelbyUSD(params) {
|
|
309
|
+
if (this.config.network === Network.TESTNET) {
|
|
310
|
+
throw new Error(
|
|
311
|
+
`ShelbyUSD cannot be minted programmatically on ${Network.TESTNET}. Please use the faucet at https://docs.shelby.xyz/apis/faucet/shelbyusd instead.`
|
|
312
|
+
);
|
|
313
|
+
}
|
|
291
314
|
const { address, amount } = params;
|
|
292
315
|
try {
|
|
293
316
|
const faucet = this.config.faucet?.baseUrl ?? "https://faucet.shelbynet.shelby.xyz/fund?asset=shelbyusd";
|
|
@@ -295,7 +318,7 @@ var ShelbyClient = class {
|
|
|
295
318
|
const response = await fetch(`${faucet}`, {
|
|
296
319
|
method: "POST",
|
|
297
320
|
body: JSON.stringify({
|
|
298
|
-
address:
|
|
321
|
+
address: normalizeAddress(address).toString(),
|
|
299
322
|
amount
|
|
300
323
|
}),
|
|
301
324
|
headers: {
|
|
@@ -1,25 +1,28 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getAptosConfig
|
|
3
3
|
} from "./chunk-AABBONAF.mjs";
|
|
4
|
+
import {
|
|
5
|
+
normalizeAddress
|
|
6
|
+
} from "./chunk-UEZNZBJO.mjs";
|
|
4
7
|
import {
|
|
5
8
|
SHELBY_DEPLOYER
|
|
6
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-4ZOFT75Q.mjs";
|
|
7
10
|
|
|
8
|
-
// src/
|
|
11
|
+
// src/core/clients/ShelbyMetadataClient.ts
|
|
9
12
|
import {
|
|
10
13
|
AccountAddress,
|
|
11
14
|
Aptos,
|
|
12
15
|
Hex
|
|
13
16
|
} from "@aptos-labs/ts-sdk";
|
|
14
17
|
function parseStorageProviderState(raw) {
|
|
15
|
-
switch (raw.
|
|
18
|
+
switch (raw.__variant__) {
|
|
16
19
|
case "Active":
|
|
17
20
|
return {
|
|
18
21
|
variant: "Active",
|
|
19
|
-
quota: raw.
|
|
20
|
-
stakeAtStartOfStakingEpoch: raw.
|
|
21
|
-
faulty: raw.
|
|
22
|
-
leaving: raw.
|
|
22
|
+
quota: raw.quota.value,
|
|
23
|
+
stakeAtStartOfStakingEpoch: raw.stake_at_start_of_staking_epoch,
|
|
24
|
+
faulty: raw.faulty,
|
|
25
|
+
leaving: raw.leaving
|
|
23
26
|
};
|
|
24
27
|
case "Waitlisted":
|
|
25
28
|
return {
|
|
@@ -28,9 +31,9 @@ function parseStorageProviderState(raw) {
|
|
|
28
31
|
case "Frozen":
|
|
29
32
|
return {
|
|
30
33
|
variant: "Frozen",
|
|
31
|
-
frozenReason: raw.
|
|
32
|
-
frozenFrom: raw.
|
|
33
|
-
frozenTill: raw.
|
|
34
|
+
frozenReason: raw.frozen_reason,
|
|
35
|
+
frozenFrom: raw.frozen_from,
|
|
36
|
+
frozenTill: raw.frozen_till
|
|
34
37
|
};
|
|
35
38
|
}
|
|
36
39
|
}
|
|
@@ -74,11 +77,11 @@ var ShelbyMetadataClient = class {
|
|
|
74
77
|
});
|
|
75
78
|
const metadata = rawMetadata[0];
|
|
76
79
|
return metadata.map((provider) => ({
|
|
77
|
-
address:
|
|
80
|
+
address: normalizeAddress(provider.address),
|
|
78
81
|
ipAddress: provider.ip_address,
|
|
79
82
|
port: provider.port,
|
|
80
83
|
blsPublicKey: Hex.fromHexInput(provider.bls_public_key).toUint8Array(),
|
|
81
|
-
|
|
84
|
+
availabilityZone: provider.availability_zone,
|
|
82
85
|
state: parseStorageProviderState(provider.state)
|
|
83
86
|
}));
|
|
84
87
|
} catch (error) {
|
|
@@ -115,7 +118,7 @@ var ShelbyMetadataClient = class {
|
|
|
115
118
|
}
|
|
116
119
|
});
|
|
117
120
|
const metadata = addressMetadataArray[0];
|
|
118
|
-
return metadata.map((pg) =>
|
|
121
|
+
return metadata.map((pg) => normalizeAddress(pg));
|
|
119
122
|
} catch (error) {
|
|
120
123
|
if (error instanceof Error && // Depending on the network, the error message may show up differently.
|
|
121
124
|
(error.message?.includes("sub_status: Some(404)") || error.message?.includes("E_PLACEMENT_GROUP_NOT_FOUND"))) {
|
|
@@ -150,7 +153,7 @@ var ShelbyMetadataClient = class {
|
|
|
150
153
|
}
|
|
151
154
|
});
|
|
152
155
|
const metadata = addressMetadataArray[0];
|
|
153
|
-
return metadata.map((slice) =>
|
|
156
|
+
return metadata.map((slice) => normalizeAddress(slice));
|
|
154
157
|
} catch (error) {
|
|
155
158
|
if (error instanceof Error && // Depending on the network, the error message may show up differently.
|
|
156
159
|
(error.message?.includes("sub_status: Some(404)") || error.message?.includes("E_SLICE_NOT_FOUND"))) {
|
|
@@ -160,37 +163,113 @@ var ShelbyMetadataClient = class {
|
|
|
160
163
|
}
|
|
161
164
|
}
|
|
162
165
|
/**
|
|
163
|
-
*
|
|
166
|
+
* Gets the placement group address for a slice.
|
|
167
|
+
*
|
|
168
|
+
* @param sliceAddress - The address of the slice account.
|
|
169
|
+
* @returns The placement group address as a string.
|
|
170
|
+
*/
|
|
171
|
+
async getPlacementGroupAddressForSlice(sliceAddress) {
|
|
172
|
+
const sliceMetadata = await this.aptos.view({
|
|
173
|
+
payload: {
|
|
174
|
+
function: `${this.deployer.toString()}::slice::get_slice_info`,
|
|
175
|
+
functionArguments: [sliceAddress.toString()]
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
return sliceMetadata[0].placement_group_assignments[0].placement_group_address;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Retrieves the designated storage providers for a slice.
|
|
182
|
+
*
|
|
183
|
+
* Designated SPs are those appointed to store data for their slots:
|
|
184
|
+
* - Active: Currently serving data
|
|
185
|
+
* - Receiving: Receiving data during slot transfer
|
|
186
|
+
* - Repairing: Repairing data after crash or failed transfer
|
|
187
|
+
* - Reconstructing: Reconstructing data if the repair fails
|
|
164
188
|
*
|
|
165
189
|
* @param params.account - The address of the slice account.
|
|
166
|
-
* @returns
|
|
190
|
+
* @returns An array where result[i] is the designated SP for slot i, or null if no SP is designated.
|
|
167
191
|
*
|
|
168
192
|
* @example
|
|
169
193
|
* ```typescript
|
|
170
|
-
* const
|
|
194
|
+
* const providers = await client.getDesignatedStorageProvidersForSlice({ account: sliceAddress });
|
|
171
195
|
* ```
|
|
172
196
|
*/
|
|
173
|
-
async
|
|
174
|
-
const
|
|
197
|
+
async getDesignatedStorageProvidersForSlice(params) {
|
|
198
|
+
const placementGroupAddress = await this.getPlacementGroupAddressForSlice(
|
|
199
|
+
params.account
|
|
200
|
+
);
|
|
201
|
+
const rawMetadata = await this.aptos.view({
|
|
175
202
|
payload: {
|
|
176
|
-
function: `${this.deployer.toString()}::
|
|
177
|
-
functionArguments: [
|
|
203
|
+
function: `${this.deployer.toString()}::placement_group::get_designated_storage_providers`,
|
|
204
|
+
functionArguments: [placementGroupAddress]
|
|
178
205
|
}
|
|
179
206
|
});
|
|
180
|
-
const
|
|
207
|
+
const providers = rawMetadata[0];
|
|
208
|
+
return providers.map(
|
|
209
|
+
(opt) => opt.vec.length > 0 ? normalizeAddress(opt.vec[0]) : null
|
|
210
|
+
);
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Retrieves the active storage providers for a slice.
|
|
214
|
+
*
|
|
215
|
+
* Active SPs have a complete copy of the data for the slot, and are not in any data transfer/repair/reconstruction phase.
|
|
216
|
+
* Active SP can be audited for the data it contains.
|
|
217
|
+
* Each slot has at most one active SP.
|
|
218
|
+
*
|
|
219
|
+
* @param params.account - The address of the slice account.
|
|
220
|
+
* @returns An array where result[i] is the active SP for slot i, or null if no SP is active.
|
|
221
|
+
*
|
|
222
|
+
* @example
|
|
223
|
+
* ```typescript
|
|
224
|
+
* const providers = await client.getActiveStorageProvidersForSlice({ account: sliceAddress });
|
|
225
|
+
* ```
|
|
226
|
+
*/
|
|
227
|
+
async getActiveStorageProvidersForSlice(params) {
|
|
228
|
+
const placementGroupAddress = await this.getPlacementGroupAddressForSlice(
|
|
229
|
+
params.account
|
|
230
|
+
);
|
|
181
231
|
const rawMetadata = await this.aptos.view({
|
|
182
232
|
payload: {
|
|
183
|
-
function: `${this.deployer.toString()}::placement_group::
|
|
233
|
+
function: `${this.deployer.toString()}::placement_group::get_active_storage_providers`,
|
|
184
234
|
functionArguments: [placementGroupAddress]
|
|
185
235
|
}
|
|
186
236
|
});
|
|
187
|
-
const
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
237
|
+
const providers = rawMetadata[0];
|
|
238
|
+
return providers.map(
|
|
239
|
+
(opt) => opt.vec.length > 0 ? normalizeAddress(opt.vec[0]) : null
|
|
240
|
+
);
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Retrieves the serving storage providers for a slice.
|
|
244
|
+
*
|
|
245
|
+
* Serving SPs are those that can respond to read requests. The serving logic is:
|
|
246
|
+
* - If an Active SP exists for a slot: Only the Active SP is serving
|
|
247
|
+
* - If no Active SP (transition in progress): Both Designated and Vacating SPs serve
|
|
248
|
+
*
|
|
249
|
+
* Each slot may have multiple serving SPs during transitions.
|
|
250
|
+
*
|
|
251
|
+
* @param params.account - The address of the slice account.
|
|
252
|
+
* @returns An array where result[i] contains the serving SPs for slot i.
|
|
253
|
+
*
|
|
254
|
+
* @example
|
|
255
|
+
* ```typescript
|
|
256
|
+
* const providers = await client.getServingStorageProvidersForSlice({ account: sliceAddress });
|
|
257
|
+
* ```
|
|
258
|
+
*/
|
|
259
|
+
async getServingStorageProvidersForSlice(params) {
|
|
260
|
+
const placementGroupAddress = await this.getPlacementGroupAddressForSlice(
|
|
261
|
+
params.account
|
|
262
|
+
);
|
|
263
|
+
const rawMetadata = await this.aptos.view({
|
|
264
|
+
payload: {
|
|
265
|
+
function: `${this.deployer.toString()}::placement_group::get_serving_storage_providers`,
|
|
266
|
+
functionArguments: [placementGroupAddress]
|
|
267
|
+
}
|
|
192
268
|
});
|
|
193
|
-
|
|
269
|
+
const providers = rawMetadata[0];
|
|
270
|
+
return providers.map(
|
|
271
|
+
(slotProviders) => slotProviders.map((addr) => normalizeAddress(addr))
|
|
272
|
+
);
|
|
194
273
|
}
|
|
195
274
|
};
|
|
196
275
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// src/core/erasure/constants.ts
|
|
2
2
|
var ErasureCodingScheme = /* @__PURE__ */ ((ErasureCodingScheme2) => {
|
|
3
3
|
ErasureCodingScheme2["ClayCode_16Total_10Data_13Helper"] = "ClayCode_16Total_10Data_13Helper";
|
|
4
|
+
ErasureCodingScheme2["ClayCode_4Total_2Data_3Helper"] = "ClayCode_4Total_2Data_3Helper";
|
|
4
5
|
return ErasureCodingScheme2;
|
|
5
6
|
})(ErasureCodingScheme || {});
|
|
6
7
|
var ERASURE_CODE_PARAMS = {
|
|
@@ -10,7 +11,19 @@ var ERASURE_CODE_PARAMS = {
|
|
|
10
11
|
// data chunks
|
|
11
12
|
erasure_k: 10,
|
|
12
13
|
// helper nodes
|
|
13
|
-
erasure_d: 13
|
|
14
|
+
erasure_d: 13,
|
|
15
|
+
// enum index
|
|
16
|
+
enumIndex: 0
|
|
17
|
+
},
|
|
18
|
+
["ClayCode_4Total_2Data_3Helper" /* ClayCode_4Total_2Data_3Helper */]: {
|
|
19
|
+
// total chunks (data + parity)
|
|
20
|
+
erasure_n: 4,
|
|
21
|
+
// data chunks
|
|
22
|
+
erasure_k: 2,
|
|
23
|
+
// helper nodes
|
|
24
|
+
erasure_d: 3,
|
|
25
|
+
// enum index
|
|
26
|
+
enumIndex: 1
|
|
14
27
|
}
|
|
15
28
|
};
|
|
16
29
|
var DEFAULT_ERASURE_N = ERASURE_CODE_PARAMS["ClayCode_16Total_10Data_13Helper" /* ClayCode_16Total_10Data_13Helper */].erasure_n;
|
|
@@ -2,14 +2,14 @@ import {
|
|
|
2
2
|
concatHashes,
|
|
3
3
|
readInChunks,
|
|
4
4
|
zeroPadBytes
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-UEZNZBJO.mjs";
|
|
6
6
|
import {
|
|
7
7
|
DEFAULT_CHUNKSET_SIZE_BYTES
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-JTXYKO3U.mjs";
|
|
9
9
|
import {
|
|
10
10
|
DEFAULT_ERASURE_K,
|
|
11
11
|
DEFAULT_ERASURE_M
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-AUQDI5BS.mjs";
|
|
13
13
|
|
|
14
14
|
// src/core/commitments.ts
|
|
15
15
|
import { Hex } from "@aptos-labs/ts-sdk";
|
|
@@ -111,7 +111,7 @@ async function generateChunksetCommitments(shouldPad, chunksetIdx, chunksetData,
|
|
|
111
111
|
return { h: a, entry };
|
|
112
112
|
}
|
|
113
113
|
async function generateCommitments(provider, fullData, onChunk, options) {
|
|
114
|
-
const expectedChunksetSize =
|
|
114
|
+
const expectedChunksetSize = provider.config.chunkSizeBytes * provider.config.erasure_k;
|
|
115
115
|
const shouldPad = options?.pad ?? true;
|
|
116
116
|
const chunksetCommitments = [];
|
|
117
117
|
const chunksetCommitmentHashes = [];
|