@typemove/iota 1.10.0-rc.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.
Files changed (134) hide show
  1. package/LICENSE +201 -0
  2. package/Readme.md +161 -0
  3. package/builtin/0x1/package.json +5 -0
  4. package/builtin/0x2/package.json +5 -0
  5. package/builtin/0x3/package.json +5 -0
  6. package/builtin/package.json +5 -0
  7. package/codegen/package.json +5 -0
  8. package/dist/cjs/builtin/0x1.d.ts +778 -0
  9. package/dist/cjs/builtin/0x1.d.ts.map +1 -0
  10. package/dist/cjs/builtin/0x1.js +4297 -0
  11. package/dist/cjs/builtin/0x1.js.map +1 -0
  12. package/dist/cjs/builtin/0x2.d.ts +4256 -0
  13. package/dist/cjs/builtin/0x2.d.ts.map +1 -0
  14. package/dist/cjs/builtin/0x2.js +16540 -0
  15. package/dist/cjs/builtin/0x2.js.map +1 -0
  16. package/dist/cjs/builtin/0x3.d.ts +1978 -0
  17. package/dist/cjs/builtin/0x3.d.ts.map +1 -0
  18. package/dist/cjs/builtin/0x3.js +6120 -0
  19. package/dist/cjs/builtin/0x3.js.map +1 -0
  20. package/dist/cjs/builtin/index.d.ts +4 -0
  21. package/dist/cjs/builtin/index.d.ts.map +1 -0
  22. package/dist/cjs/builtin/index.js +11 -0
  23. package/dist/cjs/builtin/index.js.map +1 -0
  24. package/dist/cjs/codegen/codegen.d.ts +20 -0
  25. package/dist/cjs/codegen/codegen.d.ts.map +1 -0
  26. package/dist/cjs/codegen/codegen.js +253 -0
  27. package/dist/cjs/codegen/codegen.js.map +1 -0
  28. package/dist/cjs/codegen/index.d.ts +2 -0
  29. package/dist/cjs/codegen/index.d.ts.map +1 -0
  30. package/dist/cjs/codegen/index.js +5 -0
  31. package/dist/cjs/codegen/index.js.map +1 -0
  32. package/dist/cjs/index.d.ts +4 -0
  33. package/dist/cjs/index.d.ts.map +1 -0
  34. package/dist/cjs/index.js +11 -0
  35. package/dist/cjs/index.js.map +1 -0
  36. package/dist/cjs/models.d.ts +18 -0
  37. package/dist/cjs/models.d.ts.map +1 -0
  38. package/dist/cjs/models.js +5 -0
  39. package/dist/cjs/models.js.map +1 -0
  40. package/dist/cjs/move-coder.d.ts +27 -0
  41. package/dist/cjs/move-coder.d.ts.map +1 -0
  42. package/dist/cjs/move-coder.js +274 -0
  43. package/dist/cjs/move-coder.js.map +1 -0
  44. package/dist/cjs/package.json +3 -0
  45. package/dist/cjs/sui-chain-adapter.d.ts +15 -0
  46. package/dist/cjs/sui-chain-adapter.d.ts.map +1 -0
  47. package/dist/cjs/sui-chain-adapter.js +88 -0
  48. package/dist/cjs/sui-chain-adapter.js.map +1 -0
  49. package/dist/cjs/to-internal.d.ts +4 -0
  50. package/dist/cjs/to-internal.d.ts.map +1 -0
  51. package/dist/cjs/to-internal.js +99 -0
  52. package/dist/cjs/to-internal.js.map +1 -0
  53. package/dist/cjs/transaction.d.ts +15 -0
  54. package/dist/cjs/transaction.d.ts.map +1 -0
  55. package/dist/cjs/transaction.js +98 -0
  56. package/dist/cjs/transaction.js.map +1 -0
  57. package/dist/esm/builtin/0x1.d.ts +778 -0
  58. package/dist/esm/builtin/0x1.d.ts.map +1 -0
  59. package/dist/esm/builtin/0x1.js +4293 -0
  60. package/dist/esm/builtin/0x1.js.map +1 -0
  61. package/dist/esm/builtin/0x2.d.ts +4256 -0
  62. package/dist/esm/builtin/0x2.d.ts.map +1 -0
  63. package/dist/esm/builtin/0x2.js +16534 -0
  64. package/dist/esm/builtin/0x2.js.map +1 -0
  65. package/dist/esm/builtin/0x3.d.ts +1978 -0
  66. package/dist/esm/builtin/0x3.d.ts.map +1 -0
  67. package/dist/esm/builtin/0x3.js +6115 -0
  68. package/dist/esm/builtin/0x3.js.map +1 -0
  69. package/dist/esm/builtin/index.d.ts +4 -0
  70. package/dist/esm/builtin/index.d.ts.map +1 -0
  71. package/dist/esm/builtin/index.js +7 -0
  72. package/dist/esm/builtin/index.js.map +1 -0
  73. package/dist/esm/codegen/codegen.d.ts +20 -0
  74. package/dist/esm/codegen/codegen.d.ts.map +1 -0
  75. package/dist/esm/codegen/codegen.js +247 -0
  76. package/dist/esm/codegen/codegen.js.map +1 -0
  77. package/dist/esm/codegen/index.d.ts +2 -0
  78. package/dist/esm/codegen/index.d.ts.map +1 -0
  79. package/dist/esm/codegen/index.js +2 -0
  80. package/dist/esm/codegen/index.js.map +1 -0
  81. package/dist/esm/codegen/run.d.ts +3 -0
  82. package/dist/esm/codegen/run.d.ts.map +1 -0
  83. package/dist/esm/codegen/run.js +49 -0
  84. package/dist/esm/codegen/run.js.map +1 -0
  85. package/dist/esm/index.d.ts +4 -0
  86. package/dist/esm/index.d.ts.map +1 -0
  87. package/dist/esm/index.js +4 -0
  88. package/dist/esm/index.js.map +1 -0
  89. package/dist/esm/models.d.ts +18 -0
  90. package/dist/esm/models.d.ts.map +1 -0
  91. package/dist/esm/models.js +2 -0
  92. package/dist/esm/models.js.map +1 -0
  93. package/dist/esm/move-coder.d.ts +27 -0
  94. package/dist/esm/move-coder.d.ts.map +1 -0
  95. package/dist/esm/move-coder.js +268 -0
  96. package/dist/esm/move-coder.js.map +1 -0
  97. package/dist/esm/sui-chain-adapter.d.ts +15 -0
  98. package/dist/esm/sui-chain-adapter.d.ts.map +1 -0
  99. package/dist/esm/sui-chain-adapter.js +84 -0
  100. package/dist/esm/sui-chain-adapter.js.map +1 -0
  101. package/dist/esm/to-internal.d.ts +4 -0
  102. package/dist/esm/to-internal.d.ts.map +1 -0
  103. package/dist/esm/to-internal.js +96 -0
  104. package/dist/esm/to-internal.js.map +1 -0
  105. package/dist/esm/transaction.d.ts +15 -0
  106. package/dist/esm/transaction.d.ts.map +1 -0
  107. package/dist/esm/transaction.js +83 -0
  108. package/dist/esm/transaction.js.map +1 -0
  109. package/package.json +63 -0
  110. package/src/abis/0x1.json +4213 -0
  111. package/src/abis/0x2.json +26692 -0
  112. package/src/abis/0x3.json +10598 -0
  113. package/src/builtin/0x1.ts +6110 -0
  114. package/src/builtin/0x2.ts +24700 -0
  115. package/src/builtin/0x3.ts +9680 -0
  116. package/src/builtin/index.ts +6 -0
  117. package/src/codegen/codegen.ts +290 -0
  118. package/src/codegen/index.ts +1 -0
  119. package/src/codegen/run.ts +57 -0
  120. package/src/index.ts +4 -0
  121. package/src/models.ts +21 -0
  122. package/src/move-coder.ts +318 -0
  123. package/src/sui-chain-adapter.ts +113 -0
  124. package/src/tests/abis/testnet/0x1e2b124f746a339b3cf99b9f969393a96594519aafb1d06517aacfeeae20e7a5.json +265 -0
  125. package/src/tests/abis/testnet/0x6c4a21e3e7e6b6d51c4604021633e1d97e24e37a696f8c082cd48f37503e602a.json +2429 -0
  126. package/src/tests/abis/testnet/0x7f7a37c826c88bcfe9aecc042453395ddfa9df6f29cb7c97590bf86cf2b0a75e.json +1356 -0
  127. package/src/tests/abis/testnet/0xebaa2ad3eacc230f309cd933958cc52684df0a41ae7ac214d186b80f830867d2.json +10060 -0
  128. package/src/tests/types/testnet/0x1e2b124f746a339b3cf99b9f969393a96594519aafb1d06517aacfeeae20e7a5.ts +291 -0
  129. package/src/tests/types/testnet/0x6c4a21e3e7e6b6d51c4604021633e1d97e24e37a696f8c082cd48f37503e602a.ts +2468 -0
  130. package/src/tests/types/testnet/0x7f7a37c826c88bcfe9aecc042453395ddfa9df6f29cb7c97590bf86cf2b0a75e.ts +1389 -0
  131. package/src/tests/types/testnet/0xebaa2ad3eacc230f309cd933958cc52684df0a41ae7ac214d186b80f830867d2.ts +9522 -0
  132. package/src/tests/types/testnet/index.ts +7 -0
  133. package/src/to-internal.ts +127 -0
  134. package/src/transaction.ts +127 -0
@@ -0,0 +1,268 @@
1
+ import { AbstractMoveCoder, ANY_TYPE, parseMoveType, SPLITTER, TypeDescriptor } from '@typemove/move';
2
+ import { IotaClient } from '@iota/iota-sdk/client';
3
+ import { toInternalModule } from './to-internal.js';
4
+ import { IotaChainAdapter } from './sui-chain-adapter.js';
5
+ import { bcs } from '@iota/iota-sdk/bcs';
6
+ import { normalizeIotaObjectId, normalizeIotaAddress } from '@iota/iota-sdk/utils';
7
+ export class MoveCoder extends AbstractMoveCoder {
8
+ constructor(client) {
9
+ super(new IotaChainAdapter(client));
10
+ }
11
+ async maybeGetMoveEnum(type) {
12
+ return undefined;
13
+ }
14
+ load(module, address) {
15
+ let m = this.moduleMapping.get(module.address + '::' + module.name);
16
+ const mDeclared = this.moduleMapping.get(address + '::' + module.name);
17
+ if (m && mDeclared) {
18
+ return m;
19
+ }
20
+ this.accounts.add(module.address);
21
+ m = toInternalModule(module);
22
+ this.loadInternal(m, address);
23
+ return m;
24
+ }
25
+ async decode(data, type) {
26
+ switch (type.qname) {
27
+ case '0x1::ascii::Char':
28
+ if (data !== undefined && typeof data !== 'string') {
29
+ // bcs
30
+ const byte = (await super.decode(data, type)).byte;
31
+ return String.fromCharCode(byte);
32
+ }
33
+ case '0x1::ascii::String':
34
+ if (data !== undefined && typeof data !== 'string') {
35
+ // bcs verified
36
+ const bytes = (await super.decode(data, type)).bytes;
37
+ return new TextDecoder().decode(new Uint8Array(bytes));
38
+ }
39
+ case '0x2::object::ID':
40
+ if (data !== undefined && typeof data !== 'string') {
41
+ // bcs verified
42
+ const bytes = (await super.decode(data, type)).bytes;
43
+ return normalizeIotaObjectId(bytes);
44
+ }
45
+ case '0x2::url::Url':
46
+ if (data !== undefined && typeof data !== 'string') {
47
+ // bcs
48
+ return (await super.decode(data, type)).url;
49
+ }
50
+ case '0x2::coin::Coin':
51
+ if (data !== undefined && typeof data !== 'string') {
52
+ // bcs
53
+ const bytes = (await super.decode(data, type)).id.id.bytes;
54
+ return new TextDecoder().decode(new Uint8Array(bytes));
55
+ }
56
+ return data;
57
+ case '0x2::balance::Balance':
58
+ if (data.value) {
59
+ // bcs verfied
60
+ const balance = await super.decode(data, type);
61
+ return balance.value;
62
+ }
63
+ return BigInt(data);
64
+ case '0x1::option::Option':
65
+ if (data === null) {
66
+ return data;
67
+ }
68
+ if (data.vec) {
69
+ // bcs verifed
70
+ let vec = await super.decode(data, type);
71
+ vec = vec.vec;
72
+ if (vec.length === 0) {
73
+ return null;
74
+ }
75
+ return vec[0];
76
+ }
77
+ return this.decode(data, type.typeArgs[0]);
78
+ case 'Address':
79
+ const str = data;
80
+ return normalizeIotaAddress(str);
81
+ case '0x1::string::String':
82
+ if (typeof data !== 'string') {
83
+ // bcs
84
+ return new TextDecoder().decode(new Uint8Array(data.bytes));
85
+ }
86
+ default:
87
+ return super.decode(data, type);
88
+ }
89
+ }
90
+ decodeEvent(event) {
91
+ return this.decodedStruct(event);
92
+ }
93
+ filterAndDecodeEvents(type, resources) {
94
+ if (typeof type === 'string') {
95
+ type = parseMoveType(type);
96
+ }
97
+ return this.filterAndDecodeStruct(type, resources);
98
+ }
99
+ async getDynamicFields(objects, keyType = ANY_TYPE, valueType = ANY_TYPE) {
100
+ // const type = dynamic_field.Field.TYPE
101
+ // Not using the code above to avoid cycle initialize failed
102
+ const type = new TypeDescriptor('0x2::dynamic_field::Field');
103
+ type.typeArgs = [keyType, valueType];
104
+ const res = await this.filterAndDecodeObjects(type, objects);
105
+ return res.map((o) => o.data_decoded);
106
+ }
107
+ filterAndDecodeObjects(type, objects) {
108
+ return this.filterAndDecodeStruct(type, objects);
109
+ }
110
+ async decodeFunctionPayload(payload, inputs) {
111
+ const functionType = [payload.package, payload.module, payload.function].join(SPLITTER);
112
+ const func = await this.getMoveFunction(functionType);
113
+ const params = this.adapter.getMeaningfulFunctionParams(func.params);
114
+ const args = [];
115
+ for (const value of payload.arguments || []) {
116
+ const argValue = value;
117
+ if ('Input' in argValue) {
118
+ const idx = argValue.Input;
119
+ const arg = inputs[idx];
120
+ if (arg.type === 'pure') {
121
+ args.push(arg.value);
122
+ }
123
+ else if (arg.type === 'object') {
124
+ // object is not there
125
+ args.push(undefined);
126
+ }
127
+ else {
128
+ console.error('unexpected function arg value');
129
+ args.push(undefined);
130
+ }
131
+ // args.push(arg) // TODO check why ts not work using arg.push(arg)
132
+ }
133
+ else {
134
+ args.push(undefined);
135
+ }
136
+ }
137
+ const argumentsTyped = await this.decodeArray(args, params, false);
138
+ return {
139
+ ...payload,
140
+ arguments_decoded: argumentsTyped
141
+ };
142
+ }
143
+ bcsRegistered = new Set();
144
+ bcsRegistry = new Map();
145
+ async getBCSTypeWithArgs(type, args = []) {
146
+ const qname = type.qname;
147
+ const sig = type.getNormalizedSignature();
148
+ const cached = this.bcsRegistry.get(sig);
149
+ if (cached) {
150
+ return cached;
151
+ }
152
+ const lowerQname = qname.toLowerCase();
153
+ switch (lowerQname) {
154
+ case 'u8':
155
+ case 'u16':
156
+ case 'u32':
157
+ case 'u64':
158
+ case 'u128':
159
+ case 'u256':
160
+ case 'bool':
161
+ return bcs[lowerQname]();
162
+ case 'address':
163
+ return bcs.Address;
164
+ case 'vector':
165
+ return bcs.vector(args[0]);
166
+ default:
167
+ if (!qname.includes('::')) {
168
+ throw `Unimplemented builtin type ${qname}`;
169
+ }
170
+ }
171
+ let moveStruct;
172
+ try {
173
+ moveStruct = await this.getMoveStruct(qname);
174
+ }
175
+ catch (e) {
176
+ console.error('Invalid move address', qname);
177
+ throw e;
178
+ }
179
+ const structDef = {};
180
+ for (const field of moveStruct.fields) {
181
+ if (field.type.qname.startsWith('T') && args.length) {
182
+ const index = +field.type.qname.slice(1);
183
+ structDef[field.name] = args[index];
184
+ }
185
+ else if (field.type.typeArgs.length && args.length) {
186
+ structDef[field.name] = await this.getBCSTypeWithArgs(field.type, args);
187
+ }
188
+ else {
189
+ structDef[field.name] = await this.getBCSType(field.type);
190
+ }
191
+ }
192
+ return bcs.struct(qname, structDef);
193
+ }
194
+ async getBCSType(type) {
195
+ const args = await Promise.all(type.typeArgs.map((x) => this.getBCSType(x)));
196
+ const bcsType = await this.getBCSTypeWithArgs(type, args);
197
+ this.bcsRegistry.set(type.getNormalizedSignature(), bcsType);
198
+ return bcsType;
199
+ }
200
+ async registerBCSTypes(type) {
201
+ const sig = type.getNormalizedSignature();
202
+ if (this.bcsRegistered.has(sig)) {
203
+ return;
204
+ }
205
+ this.bcsRegistered.add(sig);
206
+ const bcsType = await this.getBCSType(type);
207
+ this.bcsRegistry.set(type.getNormalizedSignature(), bcsType);
208
+ }
209
+ async decodeBCS(type, data, encoding) {
210
+ await this.registerBCSTypes(type);
211
+ if (typeof data == 'string') {
212
+ const buf = Buffer.from(data, encoding);
213
+ data = new Uint8Array(buf, buf.byteOffset, buf.byteLength);
214
+ }
215
+ const bcsType = this.bcsRegistry.get(type.getNormalizedSignature());
216
+ return bcsType?.parse(data);
217
+ }
218
+ async decodeDevInspectResult(inspectRes) {
219
+ const returnValues = [];
220
+ if (inspectRes.results != null) {
221
+ for (const r of inspectRes.results) {
222
+ if (r.returnValues) {
223
+ for (const returnValue of r.returnValues) {
224
+ const type = parseMoveType(returnValue[1]);
225
+ const bcsDecoded = await this.decodeBCS(type, new Uint8Array(returnValue[0]));
226
+ const decoded = await this.decodeType(bcsDecoded, type);
227
+ returnValues.push(decoded);
228
+ }
229
+ }
230
+ else {
231
+ returnValues.push(null);
232
+ }
233
+ }
234
+ }
235
+ return { ...inspectRes, results_decoded: returnValues };
236
+ }
237
+ }
238
+ const DEFAULT_ENDPOINT = 'https://api.mainnet.iota.cafe/';
239
+ const CODER_MAP = new Map();
240
+ const CHAIN_ID_CODER_MAP = new Map();
241
+ export function defaultMoveCoder(endpoint = DEFAULT_ENDPOINT) {
242
+ let coder = CODER_MAP.get(endpoint);
243
+ if (!coder) {
244
+ coder = new MoveCoder(new IotaClient({ url: endpoint }));
245
+ CODER_MAP.set(endpoint, coder);
246
+ }
247
+ return coder;
248
+ }
249
+ const PROVIDER_CODER_MAP = new Map();
250
+ let DEFAULT_CHAIN_ID;
251
+ export async function getMoveCoder(client) {
252
+ let coder = PROVIDER_CODER_MAP.get(client);
253
+ if (!coder) {
254
+ coder = new MoveCoder(client);
255
+ // TODO how to dedup
256
+ const id = await client.getChainIdentifier();
257
+ const defaultCoder = defaultMoveCoder();
258
+ if (!DEFAULT_CHAIN_ID) {
259
+ DEFAULT_CHAIN_ID = await defaultCoder.adapter.getChainId();
260
+ }
261
+ if (id === DEFAULT_CHAIN_ID) {
262
+ coder = defaultCoder;
263
+ }
264
+ PROVIDER_CODER_MAP.set(client, coder);
265
+ }
266
+ return coder;
267
+ }
268
+ //# sourceMappingURL=move-coder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-coder.js","sourceRoot":"","sources":["../../src/move-coder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { InternalMoveModule, InternalMoveStruct, ChainAdapter, TypeDescriptor } from '@typemove/move';
2
+ import { IotaMoveNormalizedModule, IotaEvent, IotaMoveObject, IotaClient } from '@iota/iota-sdk/client';
3
+ export declare class IotaChainAdapter extends ChainAdapter<IotaMoveNormalizedModule, IotaEvent | IotaMoveObject> {
4
+ getChainId(): Promise<string>;
5
+ client: IotaClient;
6
+ constructor(client: IotaClient);
7
+ fetchModule(account: string, module: string): Promise<IotaMoveNormalizedModule>;
8
+ fetchModules(account: string): Promise<IotaMoveNormalizedModule[]>;
9
+ getMeaningfulFunctionParams(params: TypeDescriptor[]): TypeDescriptor[];
10
+ toInternalModules(modules: IotaMoveNormalizedModule[]): InternalMoveModule[];
11
+ getAllEventStructs(modules: InternalMoveModule[]): Map<string, InternalMoveStruct>;
12
+ getType(base: IotaEvent | IotaMoveObject): string;
13
+ getData(val: IotaEvent | IotaMoveObject): any;
14
+ }
15
+ //# sourceMappingURL=sui-chain-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sui-chain-adapter.d.ts","sourceRoot":"","sources":["../../src/sui-chain-adapter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EAGZ,cAAc,EACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAEvG,qBAAa,gBAAiB,SAAQ,YAAY,CAEhD,wBAAwB,EACxB,SAAS,GAAG,cAAc,CAC3B;IACO,UAAU;IAKhB,MAAM,EAAE,UAAU,CAAA;gBACN,MAAM,EAAE,UAAU;IAKxB,WAAW,CACf,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GAEb,OAAO,CAAC,wBAAwB,CAAC;IAI9B,YAAY,CAChB,OAAO,EAAE,MAAM,GAEd,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAOtC,2BAA2B,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE;IAQvE,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,EAAE,GAAG,kBAAkB,EAAE;IAI5E,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAgBlF,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,GAAG,MAAM;IAIjD,OAAO,CAAC,GAAG,EAAE,SAAS,GAAG,cAAc;CA8BxC"}
@@ -0,0 +1,84 @@
1
+ import { toInternalModule } from './to-internal.js';
2
+ import { ChainAdapter, moduleQname, SPLITTER } from '@typemove/move';
3
+ import { IotaClient } from '@iota/iota-sdk/client';
4
+ export class IotaChainAdapter extends ChainAdapter {
5
+ async getChainId() {
6
+ return this.client.getChainIdentifier();
7
+ }
8
+ // static INSTANCE = new IotaChainAdapter()
9
+ client;
10
+ constructor(client) {
11
+ super();
12
+ this.client = client;
13
+ }
14
+ async fetchModule(account, module
15
+ // network: IotaNetwork
16
+ ) {
17
+ return await this.client.getNormalizedMoveModule({ package: account, module });
18
+ }
19
+ async fetchModules(account
20
+ // network: IotaNetwork
21
+ ) {
22
+ const modules = await this.client.getNormalizedMoveModulesByPackage({
23
+ package: account
24
+ });
25
+ return Object.values(modules);
26
+ }
27
+ getMeaningfulFunctionParams(params) {
28
+ return params;
29
+ // if (params.length === 0) {
30
+ // return params
31
+ // }
32
+ // return params.slice(0, params.length - 1)
33
+ }
34
+ toInternalModules(modules) {
35
+ return Object.values(modules).map(toInternalModule);
36
+ }
37
+ getAllEventStructs(modules) {
38
+ const eventMap = new Map();
39
+ for (const module of modules) {
40
+ const qname = moduleQname(module);
41
+ for (const struct of module.structs) {
42
+ const abilities = new Set(struct.abilities);
43
+ if (abilities.has('Drop') && abilities.has('Copy')) {
44
+ eventMap.set(qname + SPLITTER + struct.name, struct);
45
+ }
46
+ }
47
+ }
48
+ return eventMap;
49
+ }
50
+ getType(base) {
51
+ return base.type;
52
+ }
53
+ getData(val) {
54
+ // if (val.parsedJson) {
55
+ // return val.parsedJson as any
56
+ // }
57
+ if (val === undefined) {
58
+ throw Error('val is undefined');
59
+ }
60
+ if ('parsedJson' in val) {
61
+ return val.parsedJson;
62
+ }
63
+ // if (IotaParsedData.is(val)) {
64
+ // return val.fields as any
65
+ // }
66
+ if (val.dataType === 'moveObject') {
67
+ return val.fields;
68
+ }
69
+ // if (IotaMoveObject.is(val)) {
70
+ // return val.fields as any
71
+ // }
72
+ // This may not be perfect, just think everything has
73
+ if ('fields' in val) {
74
+ if ('type' in val && Object.keys(val).length === 2) {
75
+ return val.fields;
76
+ }
77
+ }
78
+ return val;
79
+ }
80
+ }
81
+ function getRpcClient(endpoint) {
82
+ return new IotaClient({ url: endpoint });
83
+ }
84
+ //# sourceMappingURL=sui-chain-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sui-chain-adapter.js","sourceRoot":"","sources":["../../src/sui-chain-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { IotaMoveNormalizedModule } from '@iota/iota-sdk/client';
2
+ import { InternalMoveModule } from '@typemove/move';
3
+ export declare function toInternalModule(module: IotaMoveNormalizedModule): InternalMoveModule;
4
+ //# sourceMappingURL=to-internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-internal.d.ts","sourceRoot":"","sources":["../../src/to-internal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,wBAAwB,EAGzB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAIL,kBAAkB,EAKnB,MAAM,gBAAgB,CAAA;AAEvB,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,wBAAwB,GAAG,kBAAkB,CAQrF"}
@@ -0,0 +1,96 @@
1
+ import { InternalMoveFunctionVisibility, SPLITTER, TypeDescriptor } from '@typemove/move';
2
+ export function toInternalModule(module) {
3
+ return {
4
+ address: module.address,
5
+ exposedFunctions: Object.entries(module.exposedFunctions).map(([n, f]) => toInternalFunction(n, f)),
6
+ name: module.name,
7
+ structs: Object.entries(module.structs).map(([n, s]) => toInternalStruct(n, s)),
8
+ enums: []
9
+ };
10
+ }
11
+ function toInternalFunction(name, func) {
12
+ let visibility;
13
+ switch (func.visibility) {
14
+ case 'Private':
15
+ visibility = InternalMoveFunctionVisibility.PRIVATE;
16
+ break;
17
+ case 'Public':
18
+ visibility = InternalMoveFunctionVisibility.PUBLIC;
19
+ break;
20
+ case 'Friend':
21
+ visibility = InternalMoveFunctionVisibility.FRIEND;
22
+ break;
23
+ default:
24
+ throw Error('No visibility for function' + name);
25
+ }
26
+ return {
27
+ typeParams: func.typeParameters.map((p) => {
28
+ return { constraints: p.abilities };
29
+ }),
30
+ isEntry: func.isEntry,
31
+ name: name,
32
+ params: func.parameters.map(toTypeDescriptor),
33
+ return: func.return.map(toTypeDescriptor),
34
+ visibility: visibility
35
+ };
36
+ }
37
+ function toInternalStruct(name, struct) {
38
+ return {
39
+ abilities: struct.abilities.abilities,
40
+ fields: struct.fields.map(toInternalField),
41
+ typeParams: struct.typeParameters.map((p) => {
42
+ return { constraints: p.constraints.abilities };
43
+ }),
44
+ isNative: false,
45
+ isEvent: false,
46
+ name: name
47
+ };
48
+ }
49
+ // function toInternalEnum(name: string, enumType: IotaMoveNormalizedEnum): InternalMoveEnum {
50
+ // return {
51
+ // name: name,
52
+ // abilities: enumType.abilities.abilities,
53
+ // typeParams: enumType.typeParameters.map((p: any) => {
54
+ // return { constraints: p.constraints.abilities }
55
+ // }),
56
+ // variants: Object.entries(enumType.variants).reduce((acc: { [key: string]: InternalMoveStructField[] }, [k, v]) => {
57
+ // acc[k] = v.map(toInternalField)
58
+ // return acc
59
+ // }, {})
60
+ // }
61
+ // }
62
+ function toInternalField(module) {
63
+ return {
64
+ name: module.name,
65
+ type: toTypeDescriptor(module.type)
66
+ };
67
+ }
68
+ function toTypeDescriptor(normalizedType) {
69
+ if (typeof normalizedType === 'string') {
70
+ return new TypeDescriptor(normalizedType);
71
+ }
72
+ if ('Struct' in normalizedType) {
73
+ const qname = [normalizedType.Struct.address, normalizedType.Struct.module, normalizedType.Struct.name].join(SPLITTER);
74
+ const args = normalizedType.Struct.typeArguments.map(toTypeDescriptor);
75
+ return new TypeDescriptor(qname, args);
76
+ }
77
+ if ('Vector' in normalizedType) {
78
+ return new TypeDescriptor('Vector', [toTypeDescriptor(normalizedType.Vector)]);
79
+ }
80
+ if ('TypeParameter' in normalizedType) {
81
+ return new TypeDescriptor('T' + normalizedType.TypeParameter);
82
+ }
83
+ if ('Reference' in normalizedType) {
84
+ const res = toTypeDescriptor(normalizedType.Reference);
85
+ res.reference = true;
86
+ return res;
87
+ }
88
+ if ('MutableReference' in normalizedType) {
89
+ const res = toTypeDescriptor(normalizedType.MutableReference);
90
+ res.reference = true;
91
+ res.mutable = true;
92
+ return res;
93
+ }
94
+ throw new Error('Unexpected sui type');
95
+ }
96
+ //# sourceMappingURL=to-internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-internal.js","sourceRoot":"","sources":["../../src/to-internal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { Transaction, TransactionArgument, TransactionObjectInput } from '@iota/iota-sdk/transactions';
2
+ export declare function isTransactionArgument(value: any): boolean;
3
+ export declare function transactionArgumentOrObject(value: TransactionArgument | TransactionObjectInput, transactionBlock: Transaction): TransactionArgument;
4
+ export declare function transactionArgumentOrPure(value: any, transactionBlock: Transaction): any;
5
+ export declare function transactionArgumentOrPureString(value: TransactionArgument | string, transactionBlock: Transaction): TransactionArgument;
6
+ export declare function transactionArgumentOrPureAddress(value: TransactionArgument | string, transactionBlock: Transaction): TransactionArgument;
7
+ export declare function transactionArgumentOrPureU8(value: TransactionArgument | number, transactionBlock: Transaction): TransactionArgument;
8
+ export declare function transactionArgumentOrPureU16(value: TransactionArgument | number, transactionBlock: Transaction): TransactionArgument;
9
+ export declare function transactionArgumentOrPureU32(value: TransactionArgument | number, transactionBlock: Transaction): TransactionArgument;
10
+ export declare function transactionArgumentOrPureU64(value: TransactionArgument | bigint | number | string, transactionBlock: Transaction): TransactionArgument;
11
+ export declare function transactionArgumentOrPureU128(value: TransactionArgument | bigint | number | string, transactionBlock: Transaction): TransactionArgument;
12
+ export declare function transactionArgumentOrPureU256(value: TransactionArgument | bigint | number | string, transactionBlock: Transaction): TransactionArgument;
13
+ export declare function transactionArgumentOrPureBool(value: TransactionArgument | boolean, transactionBlock: Transaction): TransactionArgument;
14
+ export declare function transactionArgumentOrVec(value: any, transactionBlock: Transaction): any;
15
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAA;AAEtG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAOzD;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,mBAAmB,GAAG,sBAAsB,EACnD,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,WAAW,GAAG,GAAG,CAKxF;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,mBAAmB,GAAG,MAAM,EACnC,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,mBAAmB,GAAG,MAAM,EACnC,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,mBAAmB,GAAG,MAAM,EACnC,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,mBAAmB,GAAG,MAAM,EACnC,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,mBAAmB,GAAG,MAAM,EACnC,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,mBAAmB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EACrD,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,mBAAmB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EACrD,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,mBAAmB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EACrD,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,mBAAmB,GAAG,OAAO,EACpC,gBAAgB,EAAE,WAAW,GAC5B,mBAAmB,CAKrB;AAGD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,WAAW,GAAG,GAAG,CAOvF"}
@@ -0,0 +1,83 @@
1
+ export function isTransactionArgument(value) {
2
+ if (typeof value !== 'object')
3
+ return false;
4
+ if (value === null || value === undefined)
5
+ return false;
6
+ return (value.$kind === 'GasCoin' || value.$kind === 'Result' || value.$kind === 'NestedResult' || value.$kind === 'Input');
7
+ }
8
+ export function transactionArgumentOrObject(value, transactionBlock) {
9
+ if (isTransactionArgument(value)) {
10
+ return value;
11
+ }
12
+ return transactionBlock.object(value);
13
+ }
14
+ export function transactionArgumentOrPure(value, transactionBlock) {
15
+ if (isTransactionArgument(value)) {
16
+ return value;
17
+ }
18
+ return typeof value == 'string' ? transactionBlock.pure.string(value) : transactionBlock.pure.u64(value);
19
+ }
20
+ export function transactionArgumentOrPureString(value, transactionBlock) {
21
+ if (isTransactionArgument(value)) {
22
+ return value;
23
+ }
24
+ return transactionBlock.pure.string(value);
25
+ }
26
+ export function transactionArgumentOrPureAddress(value, transactionBlock) {
27
+ if (isTransactionArgument(value)) {
28
+ return value;
29
+ }
30
+ return transactionBlock.pure.address(value);
31
+ }
32
+ export function transactionArgumentOrPureU8(value, transactionBlock) {
33
+ if (isTransactionArgument(value)) {
34
+ return value;
35
+ }
36
+ return transactionBlock.pure.u8(value);
37
+ }
38
+ export function transactionArgumentOrPureU16(value, transactionBlock) {
39
+ if (isTransactionArgument(value)) {
40
+ return value;
41
+ }
42
+ return transactionBlock.pure.u16(value);
43
+ }
44
+ export function transactionArgumentOrPureU32(value, transactionBlock) {
45
+ if (isTransactionArgument(value)) {
46
+ return value;
47
+ }
48
+ return transactionBlock.pure.u32(value);
49
+ }
50
+ export function transactionArgumentOrPureU64(value, transactionBlock) {
51
+ if (isTransactionArgument(value)) {
52
+ return value;
53
+ }
54
+ return transactionBlock.pure.u64(value);
55
+ }
56
+ export function transactionArgumentOrPureU128(value, transactionBlock) {
57
+ if (isTransactionArgument(value)) {
58
+ return value;
59
+ }
60
+ return transactionBlock.pure.u128(value);
61
+ }
62
+ export function transactionArgumentOrPureU256(value, transactionBlock) {
63
+ if (isTransactionArgument(value)) {
64
+ return value;
65
+ }
66
+ return transactionBlock.pure.u256(value);
67
+ }
68
+ export function transactionArgumentOrPureBool(value, transactionBlock) {
69
+ if (isTransactionArgument(value)) {
70
+ return value;
71
+ }
72
+ return transactionBlock.pure.bool(value);
73
+ }
74
+ // TODO vector might be nested
75
+ export function transactionArgumentOrVec(value, transactionBlock) {
76
+ if (isTransactionArgument(value)) {
77
+ return value;
78
+ }
79
+ return transactionBlock.makeMoveVec({
80
+ elements: value.map((a) => transactionBlock.object(a))
81
+ });
82
+ }
83
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/transaction.ts"],"names":[],"mappings":"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"}