@typemove/aptos 1.0.0-rc.13

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 (67) hide show
  1. package/LICENSE +201 -0
  2. package/dist/aptos-chain-adapter.d.ts +12 -0
  3. package/dist/aptos-chain-adapter.d.ts.map +1 -0
  4. package/dist/aptos-chain-adapter.js +64 -0
  5. package/dist/aptos-chain-adapter.js.map +1 -0
  6. package/dist/builtin/0x1.d.ts +2274 -0
  7. package/dist/builtin/0x1.d.ts.map +1 -0
  8. package/dist/builtin/0x1.js +2126 -0
  9. package/dist/builtin/0x1.js.map +1 -0
  10. package/dist/builtin/0x3.d.ts +514 -0
  11. package/dist/builtin/0x3.d.ts.map +1 -0
  12. package/dist/builtin/0x3.js +400 -0
  13. package/dist/builtin/0x3.js.map +1 -0
  14. package/dist/builtin/index.d.ts +3 -0
  15. package/dist/builtin/index.d.ts.map +1 -0
  16. package/dist/builtin/index.js +6 -0
  17. package/dist/builtin/index.js.map +1 -0
  18. package/dist/codegen/codegen.d.ts +2 -0
  19. package/dist/codegen/codegen.d.ts.map +1 -0
  20. package/dist/codegen/codegen.js +23 -0
  21. package/dist/codegen/codegen.js.map +1 -0
  22. package/dist/codegen/index.d.ts +2 -0
  23. package/dist/codegen/index.d.ts.map +1 -0
  24. package/dist/codegen/index.js +2 -0
  25. package/dist/codegen/index.js.map +1 -0
  26. package/dist/codegen/run.d.ts +2 -0
  27. package/dist/codegen/run.d.ts.map +1 -0
  28. package/dist/codegen/run.js +19 -0
  29. package/dist/codegen/run.js.map +1 -0
  30. package/dist/codegen/types.test.d.ts +2 -0
  31. package/dist/codegen/types.test.d.ts.map +1 -0
  32. package/dist/codegen/types.test.js.map +1 -0
  33. package/dist/index.d.ts +4 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +4 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/models.d.ts +11 -0
  38. package/dist/models.d.ts.map +1 -0
  39. package/dist/models.js +2 -0
  40. package/dist/models.js.map +1 -0
  41. package/dist/move-coder.d.ts +14 -0
  42. package/dist/move-coder.d.ts.map +1 -0
  43. package/dist/move-coder.js +70 -0
  44. package/dist/move-coder.js.map +1 -0
  45. package/dist/move-types.d.ts +12 -0
  46. package/dist/move-types.d.ts.map +1 -0
  47. package/dist/move-types.js +2 -0
  48. package/dist/move-types.js.map +1 -0
  49. package/dist/to-internal.d.ts +7 -0
  50. package/dist/to-internal.d.ts.map +1 -0
  51. package/dist/to-internal.js +52 -0
  52. package/dist/to-internal.js.map +1 -0
  53. package/package.json +42 -0
  54. package/src/abis/0x1.json +12790 -0
  55. package/src/abis/0x3.json +2275 -0
  56. package/src/aptos-chain-adapter.ts +91 -0
  57. package/src/builtin/0x1.ts +4258 -0
  58. package/src/builtin/0x3.ts +922 -0
  59. package/src/builtin/index.ts +5 -0
  60. package/src/codegen/codegen.ts +42 -0
  61. package/src/codegen/index.ts +1 -0
  62. package/src/codegen/run.ts +20 -0
  63. package/src/index.ts +3 -0
  64. package/src/models.ts +18 -0
  65. package/src/move-coder.ts +84 -0
  66. package/src/move-types.ts +13 -0
  67. package/src/to-internal.ts +72 -0
@@ -0,0 +1,91 @@
1
+ import {
2
+ ChainAdapter,
3
+ moduleQname,
4
+ SPLITTER,
5
+ TypeDescriptor,
6
+ InternalMoveModule,
7
+ InternalMoveStruct,
8
+ } from '@typemove/move'
9
+ import { AptosClient } from 'aptos'
10
+
11
+ import { Event, MoveModuleBytecode, MoveResource } from './move-types.js'
12
+ import { toInternalModule } from './to-internal.js'
13
+
14
+ export class AptosChainAdapter extends ChainAdapter<
15
+ MoveModuleBytecode,
16
+ Event | MoveResource
17
+ > {
18
+ // static INSTANCE = new AptosChainAdapter()
19
+
20
+ async fetchModules(account: string): Promise<MoveModuleBytecode[]> {
21
+ const client = getRpcClient(this.endpoint)
22
+ return await client.getAccountModules(account)
23
+ }
24
+
25
+ async fetchModule(
26
+ account: string,
27
+ module: string
28
+ ): Promise<MoveModuleBytecode> {
29
+ const client = getRpcClient(this.endpoint)
30
+ return await client.getAccountModule(account, module)
31
+ }
32
+
33
+ toInternalModules(modules: MoveModuleBytecode[]): InternalMoveModule[] {
34
+ return modules.flatMap((m) => (m.abi ? [toInternalModule(m)] : []))
35
+ }
36
+
37
+ getMeaningfulFunctionParams(params: TypeDescriptor[]): TypeDescriptor[] {
38
+ if (params.length === 0) {
39
+ return params
40
+ }
41
+ if (params[0].qname === 'signer' && params[0].reference) {
42
+ params = params.slice(1)
43
+ }
44
+ return params
45
+ }
46
+
47
+ getAllEventStructs(modules: InternalMoveModule[]) {
48
+ const eventMap = new Map<string, InternalMoveStruct>()
49
+ const structMap = new Map<string, InternalMoveStruct>()
50
+ for (const module of modules) {
51
+ const qname = moduleQname(module)
52
+ for (const struct of module.structs) {
53
+ structMap.set(qname + SPLITTER + struct.name, struct)
54
+ }
55
+ }
56
+
57
+ for (const module of modules) {
58
+ for (const struct of module.structs) {
59
+ for (const field of struct.fields) {
60
+ const t = field.type
61
+ if (t.qname === '0x1::event::EventHandle') {
62
+ const event = t.typeArgs[0].qname
63
+ const eventStruct = structMap.get(event)
64
+ if (eventStruct) {
65
+ eventMap.set(event, eventStruct)
66
+ }
67
+ }
68
+ }
69
+ }
70
+ }
71
+ return eventMap
72
+ }
73
+
74
+ getType(data: Event | MoveResource): string {
75
+ return data.type
76
+ }
77
+
78
+ getData(data: Event | MoveResource) {
79
+ if ('data' in data && 'type' in data) {
80
+ return data.data
81
+ }
82
+ return data
83
+ }
84
+ // validateAndNormalizeAddress(address: string): string {
85
+ // return validateAndNormalizeAddress(address)
86
+ // }
87
+ }
88
+
89
+ function getRpcClient(network: string): AptosClient {
90
+ return new AptosClient(network)
91
+ }