@sentio/sdk 2.11.6 → 2.11.7-rc.2
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/lib/sui/builtin/0x1.d.ts +6 -6
- package/lib/sui/builtin/0x1.js.map +1 -1
- package/lib/sui/builtin/0x2.d.ts +19 -19
- package/lib/sui/builtin/0x2.js.map +1 -1
- package/lib/sui/builtin/0x3.d.ts +9 -9
- package/lib/sui/builtin/0x3.js.map +1 -1
- package/lib/sui/codegen/codegen.js +2 -2
- package/lib/sui/codegen/codegen.js.map +1 -1
- package/lib/sui/move-coder.js +2 -1
- package/lib/sui/move-coder.js.map +1 -1
- package/package.json +4 -4
- package/src/sui/builtin/0x1.ts +6 -6
- package/src/sui/builtin/0x2.ts +19 -19
- package/src/sui/builtin/0x3.ts +9 -9
- package/src/sui/codegen/codegen.ts +3 -3
- package/src/sui/move-coder.ts +2 -1
@@ -6,7 +6,7 @@ import { AbstractCodegen } from '../../move/abstract-codegen.js';
|
|
6
6
|
import { toInternalModule } from '../move-types.js';
|
7
7
|
import { moduleQname, SPLITTER, structQname } from '../../move/index.js';
|
8
8
|
import { getMeaningfulFunctionParams } from '../utils.js';
|
9
|
-
import { join } from
|
9
|
+
import { join } from 'path';
|
10
10
|
export async function codegen(abisDir, outDir = join('src', 'types', 'sui'), genExample = false) {
|
11
11
|
if (!fs.existsSync(abisDir)) {
|
12
12
|
return;
|
@@ -30,7 +30,7 @@ class SuiCodegen extends AbstractCodegen {
|
|
30
30
|
MAIN_NET = SuiNetwork.MAIN_NET;
|
31
31
|
TEST_NET = SuiNetwork.TEST_NET;
|
32
32
|
PREFIX = 'Sui';
|
33
|
-
STRUCT_FIELD_NAME = 'fields'
|
33
|
+
// STRUCT_FIELD_NAME = 'fields'
|
34
34
|
// GENERATE_ON_ENTRY = true
|
35
35
|
PAYLOAD_OPTIONAL = true;
|
36
36
|
async fetchModules(account, network) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/sui/codegen/codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAA4B,MAAM,gBAAgB,CAAA;AAEtF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAkB,MAAM,qBAAqB,CAAA;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,
|
1
|
+
{"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/sui/codegen/codegen.ts"],"names":[],"mappings":"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","sourcesContent":["import { Connection, JsonRpcProvider, SuiMoveNormalizedModules } from '@mysten/sui.js'\n\nimport { SuiNetwork } from '../network.js'\nimport * as fs from 'fs'\nimport chalk from 'chalk'\nimport { InternalMoveModule, InternalMoveStruct } from '../../move/internal-models.js'\nimport { AbstractCodegen } from '../../move/abstract-codegen.js'\nimport { toInternalModule } from '../move-types.js'\nimport { moduleQname, SPLITTER, structQname, TypeDescriptor } from '../../move/index.js'\nimport { getMeaningfulFunctionParams } from '../utils.js'\nimport { join } from 'path'\n\nexport async function codegen(abisDir: string, outDir = join('src', 'types', 'sui'), genExample = false) {\n if (!fs.existsSync(abisDir)) {\n return\n }\n const gen = new SuiCodegen()\n const numFiles = await gen.generate(abisDir, outDir)\n console.log(chalk.green(`Generated ${numFiles} for Sui`))\n}\n\nfunction getRpcEndpoint(network: SuiNetwork): string {\n switch (network) {\n case SuiNetwork.TEST_NET:\n return 'https://fullnode.testnet.sui.io/'\n }\n return 'https://fullnode.mainnet.sui.io/'\n}\n\nfunction getRpcClient(network: SuiNetwork): JsonRpcProvider {\n return new JsonRpcProvider(new Connection({ fullnode: getRpcEndpoint(network) }))\n}\n\nclass SuiCodegen extends AbstractCodegen<SuiMoveNormalizedModules, SuiNetwork> {\n ADDRESS_TYPE = 'SuiAddress'\n MAIN_NET = SuiNetwork.MAIN_NET\n TEST_NET = SuiNetwork.TEST_NET\n PREFIX = 'Sui'\n // STRUCT_FIELD_NAME = 'fields'\n // GENERATE_ON_ENTRY = true\n PAYLOAD_OPTIONAL = true\n\n async fetchModules(account: string, network: SuiNetwork): Promise<SuiMoveNormalizedModules> {\n const client = getRpcClient(network)\n return await client.getNormalizedMoveModulesByPackage({ package: account })\n }\n\n getMeaningfulFunctionParams(params: TypeDescriptor[]): TypeDescriptor[] {\n return getMeaningfulFunctionParams(params)\n }\n\n toInternalModules(modules: SuiMoveNormalizedModules): InternalMoveModule[] {\n return Object.values(modules).map(toInternalModule)\n }\n\n getEventStructs(module: InternalMoveModule) {\n const qname = moduleQname(module)\n const eventMap = new Map<string, InternalMoveStruct>()\n\n for (const struct of module.structs) {\n const abilities = new Set(struct.abilities)\n if (abilities.has('Drop') && abilities.has('Copy')) {\n eventMap.set(qname + SPLITTER + struct.name, struct)\n }\n }\n return eventMap\n }\n\n readModulesFile(fullPath: string) {\n const res = super.readModulesFile(fullPath)\n if (res.result) {\n return res.result\n }\n return res\n }\n\n generateStructs(module: InternalMoveModule, struct: InternalMoveStruct, events: Set<string>): string {\n switch (structQname(module, struct)) {\n case '0x2::object::ID':\n return `export type ${struct.name} = string`\n case '0x2::coin::Coin':\n return `export type ${struct.name}<T> = string`\n case '0x1::option::Option':\n return `export type Option<T> = T | undefined`\n }\n return super.generateStructs(module, struct, events)\n }\n\n generateOnEvents(module: InternalMoveModule, struct: InternalMoveStruct): string {\n switch (structQname(module, struct)) {\n case '0x2::object::ID':\n case '0x2::coin::Coin':\n case '0x1::option::Option':\n return ''\n }\n return super.generateOnEvents(module, struct)\n }\n}\n"]}
|
package/lib/sui/move-coder.js
CHANGED
@@ -16,7 +16,8 @@ export class MoveCoder extends AbstractMoveCoder {
|
|
16
16
|
case '0x2::coin::Coin':
|
17
17
|
return data;
|
18
18
|
case '0x1::option::Option':
|
19
|
-
return this.decode(data, type.typeArgs[0])
|
19
|
+
// return this.decode(data, type.typeArgs[0])
|
20
|
+
return data;
|
20
21
|
default:
|
21
22
|
return super.decode(data, type);
|
22
23
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"move-coder.js","sourceRoot":"","sources":["../../src/sui/move-coder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAiB,MAAM,gCAAgC,CAAA;AACjF,OAAO,EAEL,QAAQ,EAIR,UAAU,GACX,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAkB,MAAM,kBAAkB,CAAA;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAA;AAGxD,MAAM,OAAO,SAAU,SAAQ,iBAA2C;IACxE,IAAI,CAAC,MAA+B;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;YAC9C,OAAM;SACP;QACD,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7C,CAAC;IAED,MAAM,CAAC,IAAS,EAAE,IAAoB;QACpC,QAAQ,IAAI,CAAC,KAAK,EAAE;YAClB,KAAK,iBAAiB,CAAC;YACvB,KAAK,iBAAiB;gBACpB,OAAO,IAAI,CAAA;YACb,KAAK,qBAAqB;gBACxB,OAAO,IAAI,
|
1
|
+
{"version":3,"file":"move-coder.js","sourceRoot":"","sources":["../../src/sui/move-coder.ts"],"names":[],"mappings":"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","sourcesContent":["import { TypedEventInstance, TypedFunctionPayload, TypedSuiMoveObject } from './models.js'\nimport { AbstractMoveCoder, StructWithTag } from '../move/abstract-move-coder.js'\nimport {\n MoveCallSuiTransaction,\n SuiEvent,\n SuiMoveNormalizedModule,\n SuiCallArg,\n SuiMoveObject,\n SuiRawData,\n} from '@mysten/sui.js'\nimport { toInternalModule } from './move-types.js'\nimport { SPLITTER, TypeDescriptor } from '../move/index.js'\nimport { getMeaningfulFunctionParams } from './utils.js'\nimport { dynamic_field } from './builtin/0x2.js'\n\nexport class MoveCoder extends AbstractMoveCoder<SuiEvent | SuiMoveObject> {\n load(module: SuiMoveNormalizedModule) {\n if (this.contains(module.address, module.name)) {\n return\n }\n this.loadInternal(toInternalModule(module))\n }\n\n decode(data: any, type: TypeDescriptor): any {\n switch (type.qname) {\n case '0x2::object::ID':\n case '0x2::coin::Coin':\n return data\n case '0x1::option::Option':\n // return this.decode(data, type.typeArgs[0])\n return data\n default:\n return super.decode(data, type)\n }\n }\n\n toStructWithTag(val: SuiEvent | SuiMoveObject): StructWithTag<SuiEvent> {\n if (SuiEvent.is(val)) {\n return {\n ...val,\n data: val.parsedJson as any,\n }\n }\n if (SuiRawData.is(val)) {\n return {\n ...val,\n data: val.fields as any,\n }\n }\n return val as any\n }\n\n decodeEvent<T>(event: SuiEvent): TypedEventInstance<T> | undefined {\n return this.decodedStruct<T>(event) as any\n }\n filterAndDecodeEvents<T>(typeQname: string, resources: SuiEvent[]): TypedEventInstance<T>[] {\n return this.filterAndDecodeStruct(typeQname, resources)\n }\n\n getObjectsFromDynamicFields<Name, Value>(objects: SuiMoveObject[]): dynamic_field.Field<Name, Value>[] {\n return this.filterAndDecodeObjects(`0x2::dynamic_field::Field`, objects).map((o) => o.data_decoded) as any\n }\n\n filterAndDecodeObjects<T>(typeQname: string, objects: SuiMoveObject[]): TypedSuiMoveObject<T>[] {\n return this.filterAndDecodeStruct(typeQname, objects)\n }\n\n getMeaningfulFunctionParams(params: TypeDescriptor[]): TypeDescriptor[] {\n return getMeaningfulFunctionParams(params)\n }\n\n decodeFunctionPayload(payload: MoveCallSuiTransaction, inputs: SuiCallArg[]): MoveCallSuiTransaction {\n const functionType = [payload.package, payload.module, payload.function].join(SPLITTER)\n const func = this.getMoveFunction(functionType)\n const params = getMeaningfulFunctionParams(func.params)\n const args = []\n for (const value of payload.arguments || []) {\n const argValue = value as any\n if ('Input' in (argValue as any)) {\n const idx = argValue.Input\n const arg = inputs[idx]\n if (arg.type === 'pure') {\n args.push(arg.value)\n } else if (arg.type === 'object') {\n args.push(arg.objectId)\n } else {\n console.error('unexpected function arg value')\n args.push(undefined)\n }\n // args.push(arg) // TODO check why ts not work using arg.push(arg)\n } else {\n args.push(undefined)\n }\n }\n\n const argumentsTyped = this.decodeArray(args, params)\n return {\n ...payload,\n arguments_decoded: argumentsTyped,\n } as TypedFunctionPayload<any>\n }\n}\n\nexport const MOVE_CODER = new MoveCoder()\n\nexport function defaultMoveCoder(): MoveCoder {\n return MOVE_CODER\n}\n"]}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@sentio/sdk",
|
3
3
|
"license": "Apache-2.0",
|
4
|
-
"version": "2.11.
|
4
|
+
"version": "2.11.7-rc.2",
|
5
5
|
"type": "module",
|
6
6
|
"scripts": {
|
7
7
|
"compile": "tsc && cp src/utils/*.csv lib/utils && cp src/tsup.config.ts lib",
|
@@ -23,8 +23,8 @@
|
|
23
23
|
"@project-serum/anchor": "^0.26.0",
|
24
24
|
"@sentio/bigdecimal": "^9.1.1-patch.3",
|
25
25
|
"@sentio/ethers-v6": "^1.0.28",
|
26
|
-
"@sentio/protos": "^2.11.
|
27
|
-
"@sentio/runtime": "^2.11.
|
26
|
+
"@sentio/protos": "^2.11.7-rc.2",
|
27
|
+
"@sentio/runtime": "^2.11.7-rc.2",
|
28
28
|
"@solana/web3.js": "^1.74.0",
|
29
29
|
"@types/prettier": "^2.7.2",
|
30
30
|
"aptos-sdk": "npm:aptos@^1.7.2",
|
@@ -88,5 +88,5 @@
|
|
88
88
|
"engines": {
|
89
89
|
"node": ">=16"
|
90
90
|
},
|
91
|
-
"gitHead": "
|
91
|
+
"gitHead": "4d7e1b0ca602518e06d0061436ba3548fb3a74da"
|
92
92
|
}
|
package/src/sui/builtin/0x1.ts
CHANGED
@@ -69,7 +69,7 @@ export namespace ascii {
|
|
69
69
|
}
|
70
70
|
|
71
71
|
export interface CharInstance extends TypedEventInstance<Char> {
|
72
|
-
|
72
|
+
data_decoded: Char;
|
73
73
|
type_arguments: [];
|
74
74
|
}
|
75
75
|
|
@@ -79,7 +79,7 @@ export namespace ascii {
|
|
79
79
|
}
|
80
80
|
|
81
81
|
export interface StringInstance extends TypedEventInstance<String> {
|
82
|
-
|
82
|
+
data_decoded: String;
|
83
83
|
type_arguments: [];
|
84
84
|
}
|
85
85
|
}
|
@@ -122,7 +122,7 @@ export namespace bit_vector {
|
|
122
122
|
}
|
123
123
|
|
124
124
|
export interface BitVectorInstance extends TypedEventInstance<BitVector> {
|
125
|
-
|
125
|
+
data_decoded: BitVector;
|
126
126
|
type_arguments: [];
|
127
127
|
}
|
128
128
|
}
|
@@ -165,7 +165,7 @@ export namespace fixed_point32 {
|
|
165
165
|
|
166
166
|
export interface FixedPoint32Instance
|
167
167
|
extends TypedEventInstance<FixedPoint32> {
|
168
|
-
|
168
|
+
data_decoded: FixedPoint32;
|
169
169
|
type_arguments: [];
|
170
170
|
}
|
171
171
|
}
|
@@ -211,7 +211,7 @@ export namespace string_ {
|
|
211
211
|
}
|
212
212
|
|
213
213
|
export interface StringInstance extends TypedEventInstance<String> {
|
214
|
-
|
214
|
+
data_decoded: String;
|
215
215
|
type_arguments: [];
|
216
216
|
}
|
217
217
|
}
|
@@ -251,7 +251,7 @@ export namespace type_name {
|
|
251
251
|
}
|
252
252
|
|
253
253
|
export interface TypeNameInstance extends TypedEventInstance<TypeName> {
|
254
|
-
|
254
|
+
data_decoded: TypeName;
|
255
255
|
type_arguments: [];
|
256
256
|
}
|
257
257
|
}
|
package/src/sui/builtin/0x2.ts
CHANGED
@@ -77,7 +77,7 @@ export namespace bcs {
|
|
77
77
|
}
|
78
78
|
|
79
79
|
export interface BCSInstance extends TypedEventInstance<BCS> {
|
80
|
-
|
80
|
+
data_decoded: BCS;
|
81
81
|
type_arguments: [];
|
82
82
|
}
|
83
83
|
}
|
@@ -266,7 +266,7 @@ export namespace coin {
|
|
266
266
|
|
267
267
|
export interface CurrencyCreatedInstance
|
268
268
|
extends TypedEventInstance<CurrencyCreated<any>> {
|
269
|
-
|
269
|
+
data_decoded: CurrencyCreated<any>;
|
270
270
|
type_arguments: [string];
|
271
271
|
}
|
272
272
|
|
@@ -486,7 +486,7 @@ export namespace display {
|
|
486
486
|
|
487
487
|
export interface DisplayCreatedInstance
|
488
488
|
extends TypedEventInstance<DisplayCreated<any>> {
|
489
|
-
|
489
|
+
data_decoded: DisplayCreated<any>;
|
490
490
|
type_arguments: [string];
|
491
491
|
}
|
492
492
|
|
@@ -499,7 +499,7 @@ export namespace display {
|
|
499
499
|
|
500
500
|
export interface VersionUpdatedInstance
|
501
501
|
extends TypedEventInstance<VersionUpdated<any>> {
|
502
|
-
|
502
|
+
data_decoded: VersionUpdated<any>;
|
503
503
|
type_arguments: [string];
|
504
504
|
}
|
505
505
|
|
@@ -592,7 +592,7 @@ export namespace dynamic_object_field {
|
|
592
592
|
}
|
593
593
|
|
594
594
|
export interface WrapperInstance extends TypedEventInstance<Wrapper<any>> {
|
595
|
-
|
595
|
+
data_decoded: Wrapper<any>;
|
596
596
|
type_arguments: [string];
|
597
597
|
}
|
598
598
|
}
|
@@ -687,7 +687,7 @@ export namespace groth16 {
|
|
687
687
|
}
|
688
688
|
|
689
689
|
export interface CurveInstance extends TypedEventInstance<Curve> {
|
690
|
-
|
690
|
+
data_decoded: Curve;
|
691
691
|
type_arguments: [];
|
692
692
|
}
|
693
693
|
|
@@ -701,7 +701,7 @@ export namespace groth16 {
|
|
701
701
|
|
702
702
|
export interface PreparedVerifyingKeyInstance
|
703
703
|
extends TypedEventInstance<PreparedVerifyingKey> {
|
704
|
-
|
704
|
+
data_decoded: PreparedVerifyingKey;
|
705
705
|
type_arguments: [];
|
706
706
|
}
|
707
707
|
|
@@ -711,7 +711,7 @@ export namespace groth16 {
|
|
711
711
|
}
|
712
712
|
|
713
713
|
export interface ProofPointsInstance extends TypedEventInstance<ProofPoints> {
|
714
|
-
|
714
|
+
data_decoded: ProofPoints;
|
715
715
|
type_arguments: [];
|
716
716
|
}
|
717
717
|
|
@@ -722,7 +722,7 @@ export namespace groth16 {
|
|
722
722
|
|
723
723
|
export interface PublicProofInputsInstance
|
724
724
|
extends TypedEventInstance<PublicProofInputs> {
|
725
|
-
|
725
|
+
data_decoded: PublicProofInputs;
|
726
726
|
type_arguments: [];
|
727
727
|
}
|
728
728
|
}
|
@@ -810,7 +810,7 @@ export namespace kiosk {
|
|
810
810
|
}
|
811
811
|
|
812
812
|
export interface ItemInstance extends TypedEventInstance<Item> {
|
813
|
-
|
813
|
+
data_decoded: Item;
|
814
814
|
type_arguments: [];
|
815
815
|
}
|
816
816
|
|
@@ -823,7 +823,7 @@ export namespace kiosk {
|
|
823
823
|
|
824
824
|
export interface ItemListedInstance
|
825
825
|
extends TypedEventInstance<ItemListed<any>> {
|
826
|
-
|
826
|
+
data_decoded: ItemListed<any>;
|
827
827
|
type_arguments: [string];
|
828
828
|
}
|
829
829
|
|
@@ -849,7 +849,7 @@ export namespace kiosk {
|
|
849
849
|
}
|
850
850
|
|
851
851
|
export interface ListingInstance extends TypedEventInstance<Listing> {
|
852
|
-
|
852
|
+
data_decoded: Listing;
|
853
853
|
type_arguments: [];
|
854
854
|
}
|
855
855
|
|
@@ -859,7 +859,7 @@ export namespace kiosk {
|
|
859
859
|
}
|
860
860
|
|
861
861
|
export interface LockInstance extends TypedEventInstance<Lock> {
|
862
|
-
|
862
|
+
data_decoded: Lock;
|
863
863
|
type_arguments: [];
|
864
864
|
}
|
865
865
|
|
@@ -1333,7 +1333,7 @@ export namespace transfer_policy {
|
|
1333
1333
|
}
|
1334
1334
|
|
1335
1335
|
export interface RuleKeyInstance extends TypedEventInstance<RuleKey<any>> {
|
1336
|
-
|
1336
|
+
data_decoded: RuleKey<any>;
|
1337
1337
|
type_arguments: [string];
|
1338
1338
|
}
|
1339
1339
|
|
@@ -1357,7 +1357,7 @@ export namespace transfer_policy {
|
|
1357
1357
|
|
1358
1358
|
export interface TransferPolicyCreatedInstance
|
1359
1359
|
extends TypedEventInstance<TransferPolicyCreated<any>> {
|
1360
|
-
|
1360
|
+
data_decoded: TransferPolicyCreated<any>;
|
1361
1361
|
type_arguments: [string];
|
1362
1362
|
}
|
1363
1363
|
|
@@ -1418,7 +1418,7 @@ export namespace url {
|
|
1418
1418
|
}
|
1419
1419
|
|
1420
1420
|
export interface UrlInstance extends TypedEventInstance<Url> {
|
1421
|
-
|
1421
|
+
data_decoded: Url;
|
1422
1422
|
type_arguments: [];
|
1423
1423
|
}
|
1424
1424
|
}
|
@@ -1473,7 +1473,7 @@ export namespace vec_map {
|
|
1473
1473
|
}
|
1474
1474
|
|
1475
1475
|
export interface EntryInstance extends TypedEventInstance<Entry<any, any>> {
|
1476
|
-
|
1476
|
+
data_decoded: Entry<any, any>;
|
1477
1477
|
type_arguments: [string, string];
|
1478
1478
|
}
|
1479
1479
|
|
@@ -1483,7 +1483,7 @@ export namespace vec_map {
|
|
1483
1483
|
}
|
1484
1484
|
|
1485
1485
|
export interface VecMapInstance extends TypedEventInstance<VecMap<any, any>> {
|
1486
|
-
|
1486
|
+
data_decoded: VecMap<any, any>;
|
1487
1487
|
type_arguments: [string, string];
|
1488
1488
|
}
|
1489
1489
|
}
|
@@ -1523,7 +1523,7 @@ export namespace vec_set {
|
|
1523
1523
|
}
|
1524
1524
|
|
1525
1525
|
export interface VecSetInstance extends TypedEventInstance<VecSet<any>> {
|
1526
|
-
|
1526
|
+
data_decoded: VecSet<any>;
|
1527
1527
|
type_arguments: [string];
|
1528
1528
|
}
|
1529
1529
|
}
|
package/src/sui/builtin/0x3.ts
CHANGED
@@ -88,7 +88,7 @@ export namespace genesis {
|
|
88
88
|
|
89
89
|
export interface GenesisChainParametersInstance
|
90
90
|
extends TypedEventInstance<GenesisChainParameters> {
|
91
|
-
|
91
|
+
data_decoded: GenesisChainParameters;
|
92
92
|
type_arguments: [];
|
93
93
|
}
|
94
94
|
|
@@ -113,7 +113,7 @@ export namespace genesis {
|
|
113
113
|
|
114
114
|
export interface GenesisValidatorMetadataInstance
|
115
115
|
extends TypedEventInstance<GenesisValidatorMetadata> {
|
116
|
-
|
116
|
+
data_decoded: GenesisValidatorMetadata;
|
117
117
|
type_arguments: [];
|
118
118
|
}
|
119
119
|
|
@@ -215,7 +215,7 @@ export namespace staking_pool {
|
|
215
215
|
|
216
216
|
export interface PoolTokenExchangeRateInstance
|
217
217
|
extends TypedEventInstance<PoolTokenExchangeRate> {
|
218
|
-
|
218
|
+
data_decoded: PoolTokenExchangeRate;
|
219
219
|
type_arguments: [];
|
220
220
|
}
|
221
221
|
|
@@ -1265,7 +1265,7 @@ export namespace sui_system_state_inner {
|
|
1265
1265
|
|
1266
1266
|
export interface SystemEpochInfoEventInstance
|
1267
1267
|
extends TypedEventInstance<SystemEpochInfoEvent> {
|
1268
|
-
|
1268
|
+
data_decoded: SystemEpochInfoEvent;
|
1269
1269
|
type_arguments: [];
|
1270
1270
|
}
|
1271
1271
|
|
@@ -1342,7 +1342,7 @@ export namespace validator {
|
|
1342
1342
|
|
1343
1343
|
export interface StakingRequestEventInstance
|
1344
1344
|
extends TypedEventInstance<StakingRequestEvent> {
|
1345
|
-
|
1345
|
+
data_decoded: StakingRequestEvent;
|
1346
1346
|
type_arguments: [];
|
1347
1347
|
}
|
1348
1348
|
|
@@ -1359,7 +1359,7 @@ export namespace validator {
|
|
1359
1359
|
|
1360
1360
|
export interface UnstakingRequestEventInstance
|
1361
1361
|
extends TypedEventInstance<UnstakingRequestEvent> {
|
1362
|
-
|
1362
|
+
data_decoded: UnstakingRequestEvent;
|
1363
1363
|
type_arguments: [];
|
1364
1364
|
}
|
1365
1365
|
|
@@ -1499,7 +1499,7 @@ export namespace validator_set {
|
|
1499
1499
|
|
1500
1500
|
export interface ValidatorEpochInfoEventInstance
|
1501
1501
|
extends TypedEventInstance<ValidatorEpochInfoEvent> {
|
1502
|
-
|
1502
|
+
data_decoded: ValidatorEpochInfoEvent;
|
1503
1503
|
type_arguments: [];
|
1504
1504
|
}
|
1505
1505
|
|
@@ -1512,7 +1512,7 @@ export namespace validator_set {
|
|
1512
1512
|
|
1513
1513
|
export interface ValidatorJoinEventInstance
|
1514
1514
|
extends TypedEventInstance<ValidatorJoinEvent> {
|
1515
|
-
|
1515
|
+
data_decoded: ValidatorJoinEvent;
|
1516
1516
|
type_arguments: [];
|
1517
1517
|
}
|
1518
1518
|
|
@@ -1526,7 +1526,7 @@ export namespace validator_set {
|
|
1526
1526
|
|
1527
1527
|
export interface ValidatorLeaveEventInstance
|
1528
1528
|
extends TypedEventInstance<ValidatorLeaveEvent> {
|
1529
|
-
|
1529
|
+
data_decoded: ValidatorLeaveEvent;
|
1530
1530
|
type_arguments: [];
|
1531
1531
|
}
|
1532
1532
|
|
@@ -8,9 +8,9 @@ import { AbstractCodegen } from '../../move/abstract-codegen.js'
|
|
8
8
|
import { toInternalModule } from '../move-types.js'
|
9
9
|
import { moduleQname, SPLITTER, structQname, TypeDescriptor } from '../../move/index.js'
|
10
10
|
import { getMeaningfulFunctionParams } from '../utils.js'
|
11
|
-
import {join} from
|
11
|
+
import { join } from 'path'
|
12
12
|
|
13
|
-
export async function codegen(abisDir: string, outDir = join('src','types','sui'), genExample = false) {
|
13
|
+
export async function codegen(abisDir: string, outDir = join('src', 'types', 'sui'), genExample = false) {
|
14
14
|
if (!fs.existsSync(abisDir)) {
|
15
15
|
return
|
16
16
|
}
|
@@ -36,7 +36,7 @@ class SuiCodegen extends AbstractCodegen<SuiMoveNormalizedModules, SuiNetwork> {
|
|
36
36
|
MAIN_NET = SuiNetwork.MAIN_NET
|
37
37
|
TEST_NET = SuiNetwork.TEST_NET
|
38
38
|
PREFIX = 'Sui'
|
39
|
-
STRUCT_FIELD_NAME = 'fields'
|
39
|
+
// STRUCT_FIELD_NAME = 'fields'
|
40
40
|
// GENERATE_ON_ENTRY = true
|
41
41
|
PAYLOAD_OPTIONAL = true
|
42
42
|
|
package/src/sui/move-coder.ts
CHANGED
@@ -27,7 +27,8 @@ export class MoveCoder extends AbstractMoveCoder<SuiEvent | SuiMoveObject> {
|
|
27
27
|
case '0x2::coin::Coin':
|
28
28
|
return data
|
29
29
|
case '0x1::option::Option':
|
30
|
-
return this.decode(data, type.typeArgs[0])
|
30
|
+
// return this.decode(data, type.typeArgs[0])
|
31
|
+
return data
|
31
32
|
default:
|
32
33
|
return super.decode(data, type)
|
33
34
|
}
|