@satrush/api 0.1.15 → 0.1.16

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/index.cjs CHANGED
@@ -33,6 +33,7 @@ __export(index_exports, {
33
33
  ClaimTypeDto: () => ClaimTypeDto,
34
34
  EpochStateDto: () => EpochStateDto,
35
35
  HashrateActionTypeDto: () => HashrateActionTypeDto,
36
+ LeaderboardSortDto: () => LeaderboardSortDto,
36
37
  NotificationEntity: () => NotificationEntity,
37
38
  OneBtcStateDto: () => OneBtcStateDto,
38
39
  RoundHistoryStateDto: () => RoundHistoryStateDto,
@@ -86,6 +87,8 @@ __export(index_exports, {
86
87
  zGetEpochWinnersResponse: () => zGetEpochWinnersResponse,
87
88
  zGetHashrateEarnedLeaderboardData: () => zGetHashrateEarnedLeaderboardData,
88
89
  zGetHashrateEarnedLeaderboardResponse: () => zGetHashrateEarnedLeaderboardResponse,
90
+ zGetLeaderboardData: () => zGetLeaderboardData,
91
+ zGetLeaderboardResponse: () => zGetLeaderboardResponse,
89
92
  zGetOneBtcHistoryData: () => zGetOneBtcHistoryData,
90
93
  zGetOneBtcHistoryResponse: () => zGetOneBtcHistoryResponse,
91
94
  zGetOneBtcIterationData: () => zGetOneBtcIterationData,
@@ -112,11 +115,17 @@ __export(index_exports, {
112
115
  zGetUserOneBtcEntriesResponse: () => zGetUserOneBtcEntriesResponse,
113
116
  zGetUserProfileData: () => zGetUserProfileData,
114
117
  zGetUserProfileResponse: () => zGetUserProfileResponse,
118
+ zGetWalletLeaderboardData: () => zGetWalletLeaderboardData,
119
+ zGetWalletLeaderboardResponse: () => zGetWalletLeaderboardResponse,
115
120
  zHashrateActionTypeDto: () => zHashrateActionTypeDto,
116
121
  zI128Dto: () => zI128Dto,
117
122
  zI64Dto: () => zI64Dto,
118
123
  zInternalErrorCodeErrorBody: () => zInternalErrorCodeErrorBody,
119
124
  zLeaderboardEntryDto: () => zLeaderboardEntryDto,
125
+ zLeaderboardPageDto: () => zLeaderboardPageDto,
126
+ zLeaderboardPageEntryDto: () => zLeaderboardPageEntryDto,
127
+ zLeaderboardRanksDto: () => zLeaderboardRanksDto,
128
+ zLeaderboardSortDto: () => zLeaderboardSortDto,
120
129
  zMinerClaimDto: () => zMinerClaimDto,
121
130
  zMinerDeploymentDto: () => zMinerDeploymentDto,
122
131
  zMinerDto: () => zMinerDto,
@@ -195,7 +204,11 @@ __export(index_exports, {
195
204
  zUserVaultEntriesApiError400InvalidWinsOnly: () => zUserVaultEntriesApiError400InvalidWinsOnly,
196
205
  zUserVaultEntriesApiError500Error: () => zUserVaultEntriesApiError500Error,
197
206
  zValidationErrorCodeErrorBody: () => zValidationErrorCodeErrorBody,
198
- zValidationErrorCodeValidationDetailsErrorBody: () => zValidationErrorCodeValidationDetailsErrorBody
207
+ zValidationErrorCodeValidationDetailsErrorBody: () => zValidationErrorCodeValidationDetailsErrorBody,
208
+ zWalletLeaderboardApiError400Error: () => zWalletLeaderboardApiError400Error,
209
+ zWalletLeaderboardApiError400InvalidAddress: () => zWalletLeaderboardApiError400InvalidAddress,
210
+ zWalletLeaderboardApiError404Error: () => zWalletLeaderboardApiError404Error,
211
+ zWalletLeaderboardDto: () => zWalletLeaderboardDto
199
212
  });
200
213
  module.exports = __toCommonJS(index_exports);
201
214
 
@@ -1353,6 +1366,21 @@ var getEpochWinnersResponseTransformer = async (data) => {
1353
1366
  data.data = data.data.map((item) => epochWinnerHistoryDtoSchemaResponseTransformer(item));
1354
1367
  return data;
1355
1368
  };
1369
+ var leaderboardPageEntryDtoSchemaResponseTransformer = (data) => {
1370
+ data.totalHashrateEarned = u64DtoSchemaResponseTransformer(data.totalHashrateEarned);
1371
+ data.totalSatsEarned = u64DtoSchemaResponseTransformer(data.totalSatsEarned);
1372
+ data.totalUsdDeployed = u64DtoSchemaResponseTransformer(data.totalUsdDeployed);
1373
+ return data;
1374
+ };
1375
+ var leaderboardPageDtoSchemaResponseTransformer = (data) => {
1376
+ data.entries = data.entries.map((item) => leaderboardPageEntryDtoSchemaResponseTransformer(item));
1377
+ data.updatedAt = new Date(data.updatedAt);
1378
+ return data;
1379
+ };
1380
+ var getLeaderboardResponseTransformer = async (data) => {
1381
+ data.data = leaderboardPageDtoSchemaResponseTransformer(data.data);
1382
+ return data;
1383
+ };
1356
1384
  var leaderboardEntryDtoSchemaResponseTransformer = (data) => {
1357
1385
  data.totalHashrateEarned = u64DtoSchemaResponseTransformer(data.totalHashrateEarned);
1358
1386
  data.totalSatsEarned = u64DtoSchemaResponseTransformer(data.totalSatsEarned);
@@ -1371,6 +1399,17 @@ var getSatsEarnedLeaderboardResponseTransformer = async (data) => {
1371
1399
  data.data = data.data.map((item) => leaderboardEntryDtoSchemaResponseTransformer(item));
1372
1400
  return data;
1373
1401
  };
1402
+ var walletLeaderboardDtoSchemaResponseTransformer = (data) => {
1403
+ data.totalHashrateEarned = u64DtoSchemaResponseTransformer(data.totalHashrateEarned);
1404
+ data.totalSatsEarned = u64DtoSchemaResponseTransformer(data.totalSatsEarned);
1405
+ data.totalUsdDeployed = u64DtoSchemaResponseTransformer(data.totalUsdDeployed);
1406
+ data.updatedAt = new Date(data.updatedAt);
1407
+ return data;
1408
+ };
1409
+ var getWalletLeaderboardResponseTransformer = async (data) => {
1410
+ data.data = walletLeaderboardDtoSchemaResponseTransformer(data.data);
1411
+ return data;
1412
+ };
1374
1413
  var oneBtcIterationHistoryDtoSchemaResponseTransformer = (data) => {
1375
1414
  if (data.endedAt) {
1376
1415
  data.endedAt = new Date(data.endedAt);
@@ -1811,6 +1850,22 @@ var zI64Dto = z.coerce.bigint().min(BigInt("-9223372036854775808"), { error: "In
1811
1850
  var zInternalErrorCodeErrorBody = z.object({
1812
1851
  code: z.enum(["internal_error"])
1813
1852
  });
1853
+ var zLeaderboardRanksDto = z.object({
1854
+ deployed: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1855
+ hashrate: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1856
+ rounds: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1857
+ satsEarned: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1858
+ score: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
1859
+ streak: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" })
1860
+ });
1861
+ var zLeaderboardSortDto = z.enum([
1862
+ "score",
1863
+ "deployed",
1864
+ "rounds",
1865
+ "sats_earned",
1866
+ "hashrate",
1867
+ "streak"
1868
+ ]);
1814
1869
  var zNotificationEntity = z.enum(["state_snapshot"]);
1815
1870
  var zOneBtcHistoryApiError400InvalidRange = z.object({
1816
1871
  code: z.enum(["invalid_range"])
@@ -2108,6 +2163,22 @@ var zLeaderboardEntryDto = z.object({
2108
2163
  totalSatsEarned: zU64Dto,
2109
2164
  totalUsdDeployed: zU64Dto
2110
2165
  });
2166
+ var zLeaderboardPageEntryDto = z.object({
2167
+ authority: zPubkeyDto,
2168
+ daysActive: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2169
+ maxStreak: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2170
+ rank: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2171
+ score: z.number(),
2172
+ totalHashrateEarned: zU64Dto,
2173
+ totalRoundsPlayed: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2174
+ totalSatsEarned: zU64Dto,
2175
+ totalUsdDeployed: zU64Dto
2176
+ });
2177
+ var zLeaderboardPageDto = z.object({
2178
+ entries: z.array(zLeaderboardPageEntryDto),
2179
+ total: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2180
+ updatedAt: z.preprocess((value) => value instanceof Date ? value.toISOString() : value, z.iso.datetime())
2181
+ });
2111
2182
  var zMinerClaimDto = z.object({
2112
2183
  authority: zPubkeyDto,
2113
2184
  btcReceived: z.optional(z.union([
@@ -2863,6 +2934,36 @@ var zValidationErrorCodeValidationDetailsErrorBody = z.object({
2863
2934
  errors: z.array(zFieldError)
2864
2935
  }))
2865
2936
  });
2937
+ var zWalletLeaderboardApiError400InvalidAddress = z.object({
2938
+ code: z.enum(["invalid_address"])
2939
+ });
2940
+ var zWalletLeaderboardApiError400Error = z.union([
2941
+ z.object({
2942
+ code: z.literal("invalid_address")
2943
+ }).and(zWalletLeaderboardApiError400InvalidAddress),
2944
+ z.object({
2945
+ code: z.union([
2946
+ z.literal("invalid_body"),
2947
+ z.literal("invalid_path"),
2948
+ z.literal("invalid_query")
2949
+ ])
2950
+ }).and(zBadRequestErrorCodeErrorBody)
2951
+ ]);
2952
+ var zWalletLeaderboardApiError404Error = z.object({
2953
+ code: z.enum(["not_found"])
2954
+ });
2955
+ var zWalletLeaderboardDto = z.object({
2956
+ authority: zPubkeyDto,
2957
+ daysActive: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2958
+ maxStreak: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2959
+ ranks: zLeaderboardRanksDto,
2960
+ score: z.number(),
2961
+ totalHashrateEarned: zU64Dto,
2962
+ totalRoundsPlayed: z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }),
2963
+ totalSatsEarned: zU64Dto,
2964
+ totalUsdDeployed: zU64Dto,
2965
+ updatedAt: z.preprocess((value) => value instanceof Date ? value.toISOString() : value, z.iso.datetime())
2966
+ });
2866
2967
  var zGetBoardData = z.object({
2867
2968
  body: z.optional(z.never()),
2868
2969
  path: z.optional(z.never()),
@@ -2927,6 +3028,18 @@ var zGetEpochWinnersData = z.object({
2927
3028
  var zGetEpochWinnersResponse = z.object({
2928
3029
  data: z.array(zEpochWinnerHistoryDto)
2929
3030
  });
3031
+ var zGetLeaderboardData = z.object({
3032
+ body: z.optional(z.never()),
3033
+ path: z.optional(z.never()),
3034
+ query: z.optional(z.object({
3035
+ sort: z.optional(zLeaderboardSortDto),
3036
+ offset: z.optional(z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" })),
3037
+ limit: z.optional(z.int().gte(0).max(2147483647, { error: "Invalid value: Expected int32 to be <= 2147483647" }))
3038
+ }))
3039
+ });
3040
+ var zGetLeaderboardResponse = z.object({
3041
+ data: zLeaderboardPageDto
3042
+ });
2930
3043
  var zGetHashrateEarnedLeaderboardData = z.object({
2931
3044
  body: z.optional(z.never()),
2932
3045
  path: z.optional(z.never()),
@@ -2951,6 +3064,16 @@ var zGetSatsEarnedLeaderboardData = z.object({
2951
3064
  var zGetSatsEarnedLeaderboardResponse = z.object({
2952
3065
  data: z.array(zLeaderboardEntryDto)
2953
3066
  });
3067
+ var zGetWalletLeaderboardData = z.object({
3068
+ body: z.optional(z.never()),
3069
+ path: z.object({
3070
+ address: z.string()
3071
+ }),
3072
+ query: z.optional(z.never())
3073
+ });
3074
+ var zGetWalletLeaderboardResponse = z.object({
3075
+ data: zWalletLeaderboardDto
3076
+ });
2954
3077
  var zGetOneBtcHistoryData = z.object({
2955
3078
  body: z.optional(z.never()),
2956
3079
  path: z.optional(z.never()),
@@ -3221,6 +3344,24 @@ var SatrushBackendSdk = class _SatrushBackendSdk extends HeyApiClient {
3221
3344
  ...params
3222
3345
  });
3223
3346
  }
3347
+ /**
3348
+ * Request a page of the general leaderboard
3349
+ */
3350
+ getLeaderboard(parameters, options) {
3351
+ const params = buildClientParams([parameters], [{ args: [
3352
+ { in: "query", key: "sort" },
3353
+ { in: "query", key: "offset" },
3354
+ { in: "query", key: "limit" }
3355
+ ] }]);
3356
+ return (options?.client ?? this.client).get({
3357
+ requestValidator: async (data) => await zGetLeaderboardData.parseAsync(data),
3358
+ responseTransformer: getLeaderboardResponseTransformer,
3359
+ responseValidator: async (data) => await zGetLeaderboardResponse.parseAsync(data),
3360
+ url: "/v1/leaderboard",
3361
+ ...options,
3362
+ ...params
3363
+ });
3364
+ }
3224
3365
  /**
3225
3366
  * Request the top miners by lifetime hashrate earned
3226
3367
  */
@@ -3257,6 +3398,20 @@ var SatrushBackendSdk = class _SatrushBackendSdk extends HeyApiClient {
3257
3398
  ...options
3258
3399
  });
3259
3400
  }
3401
+ /**
3402
+ * Request a wallet's general-leaderboard stats and ranks
3403
+ */
3404
+ getWalletLeaderboard(parameters, options) {
3405
+ const params = buildClientParams([parameters], [{ args: [{ in: "path", key: "address" }] }]);
3406
+ return (options?.client ?? this.client).get({
3407
+ requestValidator: async (data) => await zGetWalletLeaderboardData.parseAsync(data),
3408
+ responseTransformer: getWalletLeaderboardResponseTransformer,
3409
+ responseValidator: async (data) => await zGetWalletLeaderboardResponse.parseAsync(data),
3410
+ url: "/v1/leaderboard/{address}",
3411
+ ...options,
3412
+ ...params
3413
+ });
3414
+ }
3260
3415
  /**
3261
3416
  * Request 1 BTC Vault history
3262
3417
  */
@@ -3482,6 +3637,14 @@ var EpochStateDto = {
3482
3637
  COMPLETE: "complete"
3483
3638
  };
3484
3639
  var HashrateActionTypeDto = { BUY_EPOCH_TICKETS: "buy_epoch_tickets", BUY_ONE_BTC_TICKETS: "buy_one_btc_tickets" };
3640
+ var LeaderboardSortDto = {
3641
+ SCORE: "score",
3642
+ DEPLOYED: "deployed",
3643
+ ROUNDS: "rounds",
3644
+ SATS_EARNED: "sats_earned",
3645
+ HASHRATE: "hashrate",
3646
+ STREAK: "streak"
3647
+ };
3485
3648
  var NotificationEntity = { STATE_SNAPSHOT: "state_snapshot" };
3486
3649
  var OneBtcStateDto = {
3487
3650
  OPEN: "open",
@@ -3552,6 +3715,7 @@ async function unwrap(promise) {
3552
3715
  ClaimTypeDto,
3553
3716
  EpochStateDto,
3554
3717
  HashrateActionTypeDto,
3718
+ LeaderboardSortDto,
3555
3719
  NotificationEntity,
3556
3720
  OneBtcStateDto,
3557
3721
  RoundHistoryStateDto,
@@ -3605,6 +3769,8 @@ async function unwrap(promise) {
3605
3769
  zGetEpochWinnersResponse,
3606
3770
  zGetHashrateEarnedLeaderboardData,
3607
3771
  zGetHashrateEarnedLeaderboardResponse,
3772
+ zGetLeaderboardData,
3773
+ zGetLeaderboardResponse,
3608
3774
  zGetOneBtcHistoryData,
3609
3775
  zGetOneBtcHistoryResponse,
3610
3776
  zGetOneBtcIterationData,
@@ -3631,11 +3797,17 @@ async function unwrap(promise) {
3631
3797
  zGetUserOneBtcEntriesResponse,
3632
3798
  zGetUserProfileData,
3633
3799
  zGetUserProfileResponse,
3800
+ zGetWalletLeaderboardData,
3801
+ zGetWalletLeaderboardResponse,
3634
3802
  zHashrateActionTypeDto,
3635
3803
  zI128Dto,
3636
3804
  zI64Dto,
3637
3805
  zInternalErrorCodeErrorBody,
3638
3806
  zLeaderboardEntryDto,
3807
+ zLeaderboardPageDto,
3808
+ zLeaderboardPageEntryDto,
3809
+ zLeaderboardRanksDto,
3810
+ zLeaderboardSortDto,
3639
3811
  zMinerClaimDto,
3640
3812
  zMinerDeploymentDto,
3641
3813
  zMinerDto,
@@ -3714,5 +3886,9 @@ async function unwrap(promise) {
3714
3886
  zUserVaultEntriesApiError400InvalidWinsOnly,
3715
3887
  zUserVaultEntriesApiError500Error,
3716
3888
  zValidationErrorCodeErrorBody,
3717
- zValidationErrorCodeValidationDetailsErrorBody
3889
+ zValidationErrorCodeValidationDetailsErrorBody,
3890
+ zWalletLeaderboardApiError400Error,
3891
+ zWalletLeaderboardApiError400InvalidAddress,
3892
+ zWalletLeaderboardApiError404Error,
3893
+ zWalletLeaderboardDto
3718
3894
  });