@0xobelisk/sui-client 1.0.8 → 1.0.10

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/dubhe.d.ts CHANGED
@@ -8,7 +8,7 @@ import { SuiContractFactory } from './libs/suiContractFactory';
8
8
  import { SuiMoveMoudleFuncType } from './libs/suiContractFactory/types';
9
9
  import { NetworkConfig } from './libs/suiInteractor';
10
10
  import { DerivePathParams, FaucetNetworkType, MapMoudleFuncQuery, MapMoudleFuncTx, DubheParams, SuiTxArg, SuiObjectArg, SuiVecTxArg } from './types';
11
- import { ConnectionResponse, OrderBy, Schema, SuiIndexerClient } from './libs/suiIndexerClient';
11
+ import { ConnectionResponse, IndexerTransaction, IndexerEvent, IndexerSchema, SuiIndexerClient, StorageResponse, StorageItemResponse } from './libs/suiIndexerClient';
12
12
  import { Http } from './libs/http';
13
13
  export declare function isUndefined(value?: unknown): value is undefined;
14
14
  export declare function withMeta<T extends {
@@ -55,17 +55,37 @@ export declare class Dubhe {
55
55
  storageType: string;
56
56
  params: any[];
57
57
  }): Promise<any[] | undefined>;
58
- getStorage({ name, key1, key2, first, after, last, before, orderBy, distinct, }: {
59
- name: string;
58
+ getTransactions({ first, after, orderBy, }: {
59
+ first?: number;
60
+ after?: string;
61
+ orderBy?: string[];
62
+ }): Promise<ConnectionResponse<IndexerTransaction>>;
63
+ getEvents({ first, after, orderBy, }: {
64
+ first?: number;
65
+ after?: string;
66
+ orderBy?: string[];
67
+ }): Promise<ConnectionResponse<IndexerEvent>>;
68
+ getSchemas({ name, key1, key2, first, after, orderBy, }: {
69
+ name?: string;
70
+ key1?: string;
71
+ key2?: string;
72
+ first?: number;
73
+ after?: string;
74
+ orderBy?: string[];
75
+ }): Promise<ConnectionResponse<IndexerSchema>>;
76
+ getStorage({ name, key1, key2, first, after, orderBy, }: {
77
+ name?: string;
60
78
  key1?: string;
61
79
  key2?: string;
62
80
  first?: number;
63
81
  after?: string;
64
- last?: number;
65
- before?: string;
66
- orderBy?: OrderBy;
67
- distinct?: boolean;
68
- }): Promise<ConnectionResponse<Schema>>;
82
+ orderBy?: string[];
83
+ }): Promise<StorageResponse<IndexerSchema>>;
84
+ getStorageItem({ name, key1, key2, }: {
85
+ name: string;
86
+ key1?: string;
87
+ key2?: string;
88
+ }): Promise<StorageItemResponse<IndexerSchema> | undefined>;
69
89
  subscribe(names: string[], handleData: (data: any) => void): Promise<WebSocket>;
70
90
  /**
71
91
  * else:
package/dist/index.js CHANGED
@@ -1071,6 +1071,49 @@ var ContractDataParsingError = class extends Error {
1071
1071
  }
1072
1072
  };
1073
1073
 
1074
+ // src/libs/suiIndexerClient/utils.ts
1075
+ var parseData = (data) => {
1076
+ if (typeof data !== "object" || data === null) {
1077
+ return data;
1078
+ }
1079
+ if (Array.isArray(data)) {
1080
+ return data.map((item) => parseData(item));
1081
+ }
1082
+ const parsedData = {};
1083
+ for (const key in data) {
1084
+ if (Object.prototype.hasOwnProperty.call(data, key)) {
1085
+ const value = data[key];
1086
+ if (typeof value === "object" && value !== null) {
1087
+ if ("variant" in value) {
1088
+ parsedData[key] = value.variant;
1089
+ } else if ("fields" in value) {
1090
+ parsedData[key] = parseData(value.fields);
1091
+ } else {
1092
+ parsedData[key] = parseData(value);
1093
+ }
1094
+ } else {
1095
+ parsedData[key] = value;
1096
+ }
1097
+ }
1098
+ }
1099
+ return parsedData;
1100
+ };
1101
+ var parseValue = (value) => {
1102
+ if (typeof value !== "object" || value === null) {
1103
+ return value;
1104
+ }
1105
+ if (Array.isArray(value)) {
1106
+ return value.map((item) => parseValue(item));
1107
+ }
1108
+ if ("variant" in value) {
1109
+ return value.variant;
1110
+ }
1111
+ if ("fields" in value) {
1112
+ return parseData(value.fields);
1113
+ }
1114
+ return parseData(value);
1115
+ };
1116
+
1074
1117
  // src/libs/suiIndexerClient/index.ts
1075
1118
  var SuiIndexerClient = class {
1076
1119
  constructor(http) {
@@ -1081,8 +1124,8 @@ var SuiIndexerClient = class {
1081
1124
  }
1082
1125
  async getTransactions(params) {
1083
1126
  const query = `
1084
- query GetTransactions($first: Int, $after: String, $last: Int, $before: String, $checkpoint: Int, $orderBy: TransactionOrderBy, $distinct: Boolean) {
1085
- transactions(first: $first, after: $after, last: $last, before: $before, checkpoint: $checkpoint, orderBy: $orderBy, distinct: $distinct) {
1127
+ query GetTransactions($first: Int, $after: String, $checkpoint: Int, $orderBy: [TransactionOrderField!]) {
1128
+ transactions(first: $first, after: $after, checkpoint: $checkpoint, orderBy: $orderBy) {
1086
1129
  edges {
1087
1130
  cursor
1088
1131
  node {
@@ -1094,10 +1137,9 @@ var SuiIndexerClient = class {
1094
1137
  }
1095
1138
  pageInfo {
1096
1139
  hasNextPage
1097
- hasPreviousPage
1098
- startCursor
1099
1140
  endCursor
1100
1141
  }
1142
+ totalCount
1101
1143
  }
1102
1144
  }
1103
1145
  `;
@@ -1106,8 +1148,8 @@ var SuiIndexerClient = class {
1106
1148
  }
1107
1149
  async getSchemas(params) {
1108
1150
  const query = `
1109
- query GetSchemas($first: Int, $after: String, $last: Int, $before: String, $name: String, $key1: String, $key2: String, $orderBy: SchemaOrderBy, $distinct: Boolean) {
1110
- schemas(first: $first, after: $after, last: $last, before: $before, name: $name, key1: $key1, key2: $key2, orderBy: $orderBy, distinct: $distinct) {
1151
+ query GetSchemas($first: Int, $after: String, $name: String, $key1: String, $key2: String, $orderBy: [SchemaOrderField!]) {
1152
+ schemas(first: $first, after: $after, name: $name, key1: $key1, key2: $key2, orderBy: $orderBy) {
1111
1153
  edges {
1112
1154
  cursor
1113
1155
  node {
@@ -1125,10 +1167,9 @@ var SuiIndexerClient = class {
1125
1167
  }
1126
1168
  pageInfo {
1127
1169
  hasNextPage
1128
- hasPreviousPage
1129
- startCursor
1130
1170
  endCursor
1131
1171
  }
1172
+ totalCount
1132
1173
  }
1133
1174
  }
1134
1175
  `;
@@ -1137,8 +1178,8 @@ var SuiIndexerClient = class {
1137
1178
  }
1138
1179
  async getEvents(params) {
1139
1180
  const query = `
1140
- query GetEvents($first: Int, $after: String, $last: Int, $before: String, $name: String, $checkpoint: String, $orderBy: EventOrderBy, $distinct: Boolean) {
1141
- events(first: $first, after: $after, last: $last, before: $before, name: $name, checkpoint: $checkpoint, orderBy: $orderBy, distinct: $distinct) {
1181
+ query GetEvents($first: Int, $after: String, $name: String, $checkpoint: String, $orderBy: [EventOrderField!]) {
1182
+ events(first: $first, after: $after, name: $name, checkpoint: $checkpoint, orderBy: $orderBy) {
1142
1183
  edges {
1143
1184
  cursor
1144
1185
  node {
@@ -1152,10 +1193,9 @@ var SuiIndexerClient = class {
1152
1193
  }
1153
1194
  pageInfo {
1154
1195
  hasNextPage
1155
- hasPreviousPage
1156
- startCursor
1157
1196
  endCursor
1158
1197
  }
1198
+ totalCount
1159
1199
  }
1160
1200
  }
1161
1201
  `;
@@ -1168,10 +1208,7 @@ var SuiIndexerClient = class {
1168
1208
  key2,
1169
1209
  first,
1170
1210
  after,
1171
- last,
1172
- before,
1173
- orderBy,
1174
- distinct
1211
+ orderBy
1175
1212
  }) {
1176
1213
  const schemas = await this.getSchemas({
1177
1214
  name,
@@ -1179,12 +1216,37 @@ var SuiIndexerClient = class {
1179
1216
  key2,
1180
1217
  first,
1181
1218
  after,
1182
- last,
1183
- before,
1184
- orderBy,
1185
- distinct
1219
+ orderBy
1186
1220
  });
1187
- return schemas;
1221
+ const data = schemas.edges.map((edge) => edge.node);
1222
+ const value = data.map((item) => parseValue(item.value));
1223
+ return {
1224
+ data,
1225
+ value,
1226
+ pageInfo: schemas.pageInfo,
1227
+ totalCount: schemas.totalCount
1228
+ };
1229
+ }
1230
+ async getStorageItem({
1231
+ name,
1232
+ key1,
1233
+ key2
1234
+ }) {
1235
+ const schemas = await this.getSchemas({
1236
+ name,
1237
+ key1,
1238
+ key2,
1239
+ first: 1
1240
+ });
1241
+ const data = schemas.edges[0]?.node;
1242
+ if (!data) {
1243
+ return void 0;
1244
+ }
1245
+ const value = parseValue(data.value);
1246
+ return {
1247
+ data,
1248
+ value
1249
+ };
1188
1250
  }
1189
1251
  async subscribe(names, handleData) {
1190
1252
  return this.http.subscribe(names, handleData);
@@ -2175,16 +2237,48 @@ var Dubhe = class {
2175
2237
  params: processedParams
2176
2238
  });
2177
2239
  }
2240
+ async getTransactions({
2241
+ first,
2242
+ after,
2243
+ orderBy
2244
+ }) {
2245
+ return await this.suiIndexerClient.getTransactions({
2246
+ first,
2247
+ after,
2248
+ orderBy
2249
+ });
2250
+ }
2251
+ async getEvents({
2252
+ first,
2253
+ after,
2254
+ orderBy
2255
+ }) {
2256
+ return await this.suiIndexerClient.getEvents({ first, after, orderBy });
2257
+ }
2258
+ async getSchemas({
2259
+ name,
2260
+ key1,
2261
+ key2,
2262
+ first,
2263
+ after,
2264
+ orderBy
2265
+ }) {
2266
+ return await this.suiIndexerClient.getSchemas({
2267
+ name,
2268
+ key1,
2269
+ key2,
2270
+ first,
2271
+ after,
2272
+ orderBy
2273
+ });
2274
+ }
2178
2275
  async getStorage({
2179
2276
  name,
2180
2277
  key1,
2181
2278
  key2,
2182
2279
  first,
2183
2280
  after,
2184
- last,
2185
- before,
2186
- orderBy,
2187
- distinct
2281
+ orderBy
2188
2282
  }) {
2189
2283
  return await this.suiIndexerClient.getStorage({
2190
2284
  name,
@@ -2192,11 +2286,20 @@ var Dubhe = class {
2192
2286
  key2,
2193
2287
  first,
2194
2288
  after,
2195
- last,
2196
- before,
2197
- orderBy,
2198
- distinct
2289
+ orderBy
2290
+ });
2291
+ }
2292
+ async getStorageItem({
2293
+ name,
2294
+ key1,
2295
+ key2
2296
+ }) {
2297
+ const response = await this.suiIndexerClient.getStorageItem({
2298
+ name,
2299
+ key1,
2300
+ key2
2199
2301
  });
2302
+ return response;
2200
2303
  }
2201
2304
  async subscribe(names, handleData) {
2202
2305
  return this.suiIndexerClient.subscribe(names, handleData);
@@ -2532,9 +2635,9 @@ var import_multisig = require("@mysten/sui/multisig");
2532
2635
 
2533
2636
  // src/libs/multiSig/publickey.ts
2534
2637
  var import_ed255193 = require("@mysten/sui/keypairs/ed25519");
2535
- var import_utils5 = require("@mysten/sui/utils");
2638
+ var import_utils6 = require("@mysten/sui/utils");
2536
2639
  function ed25519PublicKeyFromBase64(rawPubkey) {
2537
- let bytes = (0, import_utils5.fromB64)(rawPubkey);
2640
+ let bytes = (0, import_utils6.fromB64)(rawPubkey);
2538
2641
  if (bytes.length !== 32 && bytes.length !== 33)
2539
2642
  throw "invalid pubkey length";
2540
2643
  bytes = bytes.length === 33 ? bytes.slice(1) : bytes;