@gardenfi/swap 0.1.2 → 0.1.3-beta.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.
Files changed (148) hide show
  1. package/dist/index113.cjs +1 -1
  2. package/dist/index113.js +1 -1
  3. package/dist/index116.cjs +1 -1
  4. package/dist/index116.js +1 -1
  5. package/dist/index117.cjs +1 -1
  6. package/dist/index117.js +1 -1
  7. package/dist/index12.cjs +1 -1
  8. package/dist/index12.js +1 -1
  9. package/dist/index120.cjs +1 -1
  10. package/dist/index120.js +2 -2
  11. package/dist/index121.cjs +1 -1
  12. package/dist/index121.js +7 -7
  13. package/dist/index126.cjs +1 -1
  14. package/dist/index126.js +2 -2
  15. package/dist/index127.cjs +1 -1
  16. package/dist/index127.js +1 -1
  17. package/dist/index128.cjs +1 -1
  18. package/dist/index128.js +1 -1
  19. package/dist/index129.cjs +1 -1
  20. package/dist/index129.js +1 -1
  21. package/dist/index130.cjs +1 -1
  22. package/dist/index130.js +2 -2
  23. package/dist/index138.cjs +1 -1
  24. package/dist/index138.js +1 -1
  25. package/dist/index140.cjs +1 -1
  26. package/dist/index140.js +1 -1
  27. package/dist/index148.cjs +1 -1
  28. package/dist/index148.js +1 -1
  29. package/dist/index149.cjs +1 -1
  30. package/dist/index149.js +1 -1
  31. package/dist/index154.cjs +1 -1
  32. package/dist/index154.js +1 -1
  33. package/dist/index162.cjs +1 -1
  34. package/dist/index162.js +2 -2
  35. package/dist/index173.cjs +1 -1
  36. package/dist/index173.js +2 -2
  37. package/dist/index303.cjs +1 -1
  38. package/dist/index303.js +10 -43
  39. package/dist/index304.cjs +1 -1
  40. package/dist/index304.js +16 -320
  41. package/dist/index305.cjs +1 -1
  42. package/dist/index305.js +21 -604
  43. package/dist/index306.cjs +1 -1
  44. package/dist/index306.js +14 -110
  45. package/dist/index307.cjs +1 -1
  46. package/dist/index307.js +13 -167
  47. package/dist/index308.cjs +1 -1
  48. package/dist/index308.js +13 -300
  49. package/dist/index309.cjs +1 -1
  50. package/dist/index309.js +9 -93
  51. package/dist/index310.cjs +1 -1
  52. package/dist/index310.js +13 -54
  53. package/dist/index311.cjs +1 -1
  54. package/dist/index311.js +23 -51
  55. package/dist/index312.cjs +1 -1
  56. package/dist/index312.js +30 -43
  57. package/dist/index313.cjs +2 -1
  58. package/dist/index313.js +18 -15
  59. package/dist/index314.cjs +1 -1
  60. package/dist/index314.js +14 -317
  61. package/dist/index315.cjs +1 -1
  62. package/dist/index315.js +41 -58
  63. package/dist/index316.cjs +1 -1
  64. package/dist/index316.js +319 -18
  65. package/dist/index317.cjs +1 -1
  66. package/dist/index317.js +602 -26
  67. package/dist/index318.cjs +1 -1
  68. package/dist/index318.js +110 -4
  69. package/dist/index319.cjs +1 -7
  70. package/dist/index319.js +166 -236
  71. package/dist/index320.cjs +1 -1
  72. package/dist/index320.js +302 -48
  73. package/dist/index321.cjs +1 -1
  74. package/dist/index321.js +92 -211
  75. package/dist/index322.cjs +1 -1
  76. package/dist/index322.js +49 -74
  77. package/dist/index323.cjs +1 -1
  78. package/dist/index323.js +51 -27
  79. package/dist/index324.cjs +1 -1
  80. package/dist/index324.js +42 -74
  81. package/dist/index325.cjs +1 -1
  82. package/dist/index325.js +15 -9
  83. package/dist/index326.cjs +1 -1
  84. package/dist/index326.js +317 -16
  85. package/dist/index327.cjs +1 -1
  86. package/dist/index327.js +57 -20
  87. package/dist/index328.cjs +1 -1
  88. package/dist/index328.js +18 -12
  89. package/dist/index329.cjs +1 -1
  90. package/dist/index329.js +29 -13
  91. package/dist/index330.cjs +1 -1
  92. package/dist/index330.js +3 -14
  93. package/dist/index331.cjs +7 -1
  94. package/dist/index331.js +237 -9
  95. package/dist/index332.cjs +1 -1
  96. package/dist/index332.js +48 -16
  97. package/dist/index333.cjs +1 -1
  98. package/dist/index333.js +209 -22
  99. package/dist/index334.cjs +1 -1
  100. package/dist/index334.js +80 -30
  101. package/dist/index335.cjs +1 -2
  102. package/dist/index335.js +29 -18
  103. package/dist/index336.cjs +1 -1
  104. package/dist/index336.js +75 -13
  105. package/dist/index361.cjs +1 -1
  106. package/dist/index361.js +3 -94
  107. package/dist/index362.cjs +1 -1
  108. package/dist/index362.js +137 -25
  109. package/dist/index363.cjs +1 -1
  110. package/dist/index363.js +129 -144
  111. package/dist/index364.cjs +1 -1
  112. package/dist/index364.js +71 -331
  113. package/dist/index365.cjs +1 -1
  114. package/dist/index365.js +27 -72
  115. package/dist/index366.cjs +1 -1
  116. package/dist/index366.js +148 -31
  117. package/dist/index367.cjs +1 -1
  118. package/dist/index367.js +354 -5
  119. package/dist/index368.cjs +1 -1
  120. package/dist/index368.js +275 -3
  121. package/dist/index369.cjs +1 -1
  122. package/dist/index369.js +170 -140
  123. package/dist/index370.cjs +1 -1
  124. package/dist/index370.js +10 -276
  125. package/dist/index371.cjs +1 -1
  126. package/dist/index371.js +107 -170
  127. package/dist/index372.cjs +1 -1
  128. package/dist/index372.js +6 -10
  129. package/dist/index373.cjs +1 -1
  130. package/dist/index373.js +70 -104
  131. package/dist/index374.cjs +1 -1
  132. package/dist/index374.js +2 -2
  133. package/dist/index375.cjs +1 -1
  134. package/dist/index375.js +29 -131
  135. package/dist/index383.cjs +1 -1
  136. package/dist/index383.js +59 -106
  137. package/dist/index384.cjs +1 -1
  138. package/dist/index384.js +110 -3
  139. package/dist/index385.cjs +1 -1
  140. package/dist/index385.js +3 -63
  141. package/dist/index6.cjs +1 -1
  142. package/dist/index6.js +42 -42
  143. package/dist/index77.cjs +1 -1
  144. package/dist/index77.js +13 -13
  145. package/dist/index9.cjs +1 -1
  146. package/dist/index9.js +16 -14
  147. package/dist/src/lib/store/swapStore.d.ts +1 -1
  148. package/package.json +5 -5
package/dist/index320.js CHANGED
@@ -1,50 +1,304 @@
1
- import { bcs as t } from "./index364.js";
2
- import { TransactionKind as a, TransactionData as e, TypeTag as n, TransactionExpiration as r, TransactionDataV1 as i, SuiObjectRef as o, StructTag as s, SharedObjectRef as c, SenderSignedTransaction as u, SenderSignedData as g, PublicKey as l, ProgrammableTransaction as m, ProgrammableMoveCall as S, PasskeyAuthenticator as b, Owner as d, ObjectDigest as p, ObjectArg as T, MultiSigPublicKey as f, MultiSigPkMap as U, MultiSig as A, IntentVersion as M, IntentScope as P, IntentMessage as D, Intent as I, GasData as O, CompressedSignature as j, Command as y, CallArg as C, Argument as B, AppId as E, Address as K } from "./index370.js";
3
- import { TransactionEffects as h } from "./index371.js";
4
- const V = {
5
- ...t,
6
- U8: t.u8(),
7
- U16: t.u16(),
8
- U32: t.u32(),
9
- U64: t.u64(),
10
- U128: t.u128(),
11
- U256: t.u256(),
12
- ULEB128: t.uleb128(),
13
- Bool: t.bool(),
14
- String: t.string(),
15
- Address: K,
16
- AppId: E,
17
- Argument: B,
18
- CallArg: C,
19
- Command: y,
20
- CompressedSignature: j,
21
- GasData: O,
22
- Intent: I,
23
- IntentMessage: D,
24
- IntentScope: P,
25
- IntentVersion: M,
26
- MultiSig: A,
27
- MultiSigPkMap: U,
28
- MultiSigPublicKey: f,
29
- ObjectArg: T,
30
- ObjectDigest: p,
31
- Owner: d,
32
- PasskeyAuthenticator: b,
33
- ProgrammableMoveCall: S,
34
- ProgrammableTransaction: m,
35
- PublicKey: l,
36
- SenderSignedData: g,
37
- SenderSignedTransaction: u,
38
- SharedObjectRef: c,
39
- StructTag: s,
40
- SuiObjectRef: o,
41
- TransactionData: e,
42
- TransactionDataV1: i,
43
- TransactionEffects: h,
44
- TransactionExpiration: r,
45
- TransactionKind: a,
46
- TypeTag: n
47
- };
1
+ import { fromBase64 as d, toBase64 as c } from "./index114.js";
2
+ import { parse as b, is as S, object as j, boolean as y, array as C, pipe as g, integer as O, number as v, union as w, string as l, bigint as M } from "./index317.js";
3
+ import "./index332.js";
4
+ import { safeEnum as f, TransactionDataSchema as R, JsonU64 as U, ObjectID as P } from "./index319.js";
5
+ import { TypeTagSerializer as m } from "./index373.js";
6
+ const p = j({
7
+ digest: l(),
8
+ objectId: l(),
9
+ version: w([g(v(), O()), l(), M()])
10
+ }), V = f({
11
+ ImmOrOwned: p,
12
+ Shared: j({
13
+ objectId: P,
14
+ initialSharedVersion: U,
15
+ mutable: y()
16
+ }),
17
+ Receiving: p
18
+ }), a = f({
19
+ Object: V,
20
+ Pure: C(g(v(), O()))
21
+ });
22
+ function $(t) {
23
+ var u;
24
+ const i = t.inputs.map(
25
+ (r, e) => {
26
+ if (r.Object)
27
+ return {
28
+ kind: "Input",
29
+ index: e,
30
+ value: {
31
+ Object: r.Object.ImmOrOwnedObject ? {
32
+ ImmOrOwned: r.Object.ImmOrOwnedObject
33
+ } : r.Object.Receiving ? {
34
+ Receiving: {
35
+ digest: r.Object.Receiving.digest,
36
+ version: r.Object.Receiving.version,
37
+ objectId: r.Object.Receiving.objectId
38
+ }
39
+ } : {
40
+ Shared: {
41
+ mutable: r.Object.SharedObject.mutable,
42
+ initialSharedVersion: r.Object.SharedObject.initialSharedVersion,
43
+ objectId: r.Object.SharedObject.objectId
44
+ }
45
+ }
46
+ },
47
+ type: "object"
48
+ };
49
+ if (r.Pure)
50
+ return {
51
+ kind: "Input",
52
+ index: e,
53
+ value: {
54
+ Pure: Array.from(d(r.Pure.bytes))
55
+ },
56
+ type: "pure"
57
+ };
58
+ if (r.UnresolvedPure)
59
+ return {
60
+ kind: "Input",
61
+ type: "pure",
62
+ index: e,
63
+ value: r.UnresolvedPure.value
64
+ };
65
+ if (r.UnresolvedObject)
66
+ return {
67
+ kind: "Input",
68
+ type: "object",
69
+ index: e,
70
+ value: r.UnresolvedObject.objectId
71
+ };
72
+ throw new Error("Invalid input");
73
+ }
74
+ );
75
+ return {
76
+ version: 1,
77
+ sender: t.sender ?? void 0,
78
+ expiration: ((u = t.expiration) == null ? void 0 : u.$kind) === "Epoch" ? { Epoch: Number(t.expiration.Epoch) } : t.expiration ? { None: !0 } : null,
79
+ gasConfig: {
80
+ owner: t.gasData.owner ?? void 0,
81
+ budget: t.gasData.budget ?? void 0,
82
+ price: t.gasData.price ?? void 0,
83
+ payment: t.gasData.payment ?? void 0
84
+ },
85
+ inputs: i,
86
+ transactions: t.commands.map((r) => {
87
+ if (r.MakeMoveVec)
88
+ return {
89
+ kind: "MakeMoveVec",
90
+ type: r.MakeMoveVec.type === null ? { None: !0 } : { Some: m.parseFromStr(r.MakeMoveVec.type) },
91
+ objects: r.MakeMoveVec.elements.map(
92
+ (e) => s(e, i)
93
+ )
94
+ };
95
+ if (r.MergeCoins)
96
+ return {
97
+ kind: "MergeCoins",
98
+ destination: s(r.MergeCoins.destination, i),
99
+ sources: r.MergeCoins.sources.map((e) => s(e, i))
100
+ };
101
+ if (r.MoveCall)
102
+ return {
103
+ kind: "MoveCall",
104
+ target: `${r.MoveCall.package}::${r.MoveCall.module}::${r.MoveCall.function}`,
105
+ typeArguments: r.MoveCall.typeArguments,
106
+ arguments: r.MoveCall.arguments.map(
107
+ (e) => s(e, i)
108
+ )
109
+ };
110
+ if (r.Publish)
111
+ return {
112
+ kind: "Publish",
113
+ modules: r.Publish.modules.map((e) => Array.from(d(e))),
114
+ dependencies: r.Publish.dependencies
115
+ };
116
+ if (r.SplitCoins)
117
+ return {
118
+ kind: "SplitCoins",
119
+ coin: s(r.SplitCoins.coin, i),
120
+ amounts: r.SplitCoins.amounts.map((e) => s(e, i))
121
+ };
122
+ if (r.TransferObjects)
123
+ return {
124
+ kind: "TransferObjects",
125
+ objects: r.TransferObjects.objects.map(
126
+ (e) => s(e, i)
127
+ ),
128
+ address: s(r.TransferObjects.address, i)
129
+ };
130
+ if (r.Upgrade)
131
+ return {
132
+ kind: "Upgrade",
133
+ modules: r.Upgrade.modules.map((e) => Array.from(d(e))),
134
+ dependencies: r.Upgrade.dependencies,
135
+ packageId: r.Upgrade.package,
136
+ ticket: s(r.Upgrade.ticket, i)
137
+ };
138
+ throw new Error(`Unknown transaction ${Object.keys(r)}`);
139
+ })
140
+ };
141
+ }
142
+ function s(t, i) {
143
+ if (t.$kind === "GasCoin")
144
+ return { kind: "GasCoin" };
145
+ if (t.$kind === "Result")
146
+ return { kind: "Result", index: t.Result };
147
+ if (t.$kind === "NestedResult")
148
+ return { kind: "NestedResult", index: t.NestedResult[0], resultIndex: t.NestedResult[1] };
149
+ if (t.$kind === "Input")
150
+ return i[t.Input];
151
+ throw new Error(`Invalid argument ${Object.keys(t)}`);
152
+ }
153
+ function G(t) {
154
+ var i, u, r;
155
+ return b(R, {
156
+ version: 2,
157
+ sender: t.sender ?? null,
158
+ expiration: t.expiration ? "Epoch" in t.expiration ? { Epoch: t.expiration.Epoch } : { None: !0 } : null,
159
+ gasData: {
160
+ owner: t.gasConfig.owner ?? null,
161
+ budget: ((i = t.gasConfig.budget) == null ? void 0 : i.toString()) ?? null,
162
+ price: ((u = t.gasConfig.price) == null ? void 0 : u.toString()) ?? null,
163
+ payment: ((r = t.gasConfig.payment) == null ? void 0 : r.map((e) => ({
164
+ digest: e.digest,
165
+ objectId: e.objectId,
166
+ version: e.version.toString()
167
+ }))) ?? null
168
+ },
169
+ inputs: t.inputs.map((e) => {
170
+ if (e.kind === "Input") {
171
+ if (S(a, e.value)) {
172
+ const n = b(a, e.value);
173
+ if (n.Object) {
174
+ if (n.Object.ImmOrOwned)
175
+ return {
176
+ Object: {
177
+ ImmOrOwnedObject: {
178
+ objectId: n.Object.ImmOrOwned.objectId,
179
+ version: String(n.Object.ImmOrOwned.version),
180
+ digest: n.Object.ImmOrOwned.digest
181
+ }
182
+ }
183
+ };
184
+ if (n.Object.Shared)
185
+ return {
186
+ Object: {
187
+ SharedObject: {
188
+ mutable: n.Object.Shared.mutable ?? null,
189
+ initialSharedVersion: n.Object.Shared.initialSharedVersion,
190
+ objectId: n.Object.Shared.objectId
191
+ }
192
+ }
193
+ };
194
+ if (n.Object.Receiving)
195
+ return {
196
+ Object: {
197
+ Receiving: {
198
+ digest: n.Object.Receiving.digest,
199
+ version: String(n.Object.Receiving.version),
200
+ objectId: n.Object.Receiving.objectId
201
+ }
202
+ }
203
+ };
204
+ throw new Error("Invalid object input");
205
+ }
206
+ return {
207
+ Pure: {
208
+ bytes: c(new Uint8Array(n.Pure))
209
+ }
210
+ };
211
+ }
212
+ return e.type === "object" ? {
213
+ UnresolvedObject: {
214
+ objectId: e.value
215
+ }
216
+ } : {
217
+ UnresolvedPure: {
218
+ value: e.value
219
+ }
220
+ };
221
+ }
222
+ throw new Error("Invalid input");
223
+ }),
224
+ commands: t.transactions.map((e) => {
225
+ switch (e.kind) {
226
+ case "MakeMoveVec":
227
+ return {
228
+ MakeMoveVec: {
229
+ type: "Some" in e.type ? m.tagToString(e.type.Some) : null,
230
+ elements: e.objects.map((n) => o(n))
231
+ }
232
+ };
233
+ case "MergeCoins":
234
+ return {
235
+ MergeCoins: {
236
+ destination: o(e.destination),
237
+ sources: e.sources.map((n) => o(n))
238
+ }
239
+ };
240
+ case "MoveCall": {
241
+ const [n, k, I] = e.target.split("::");
242
+ return {
243
+ MoveCall: {
244
+ package: n,
245
+ module: k,
246
+ function: I,
247
+ typeArguments: e.typeArguments,
248
+ arguments: e.arguments.map((h) => o(h))
249
+ }
250
+ };
251
+ }
252
+ case "Publish":
253
+ return {
254
+ Publish: {
255
+ modules: e.modules.map((n) => c(Uint8Array.from(n))),
256
+ dependencies: e.dependencies
257
+ }
258
+ };
259
+ case "SplitCoins":
260
+ return {
261
+ SplitCoins: {
262
+ coin: o(e.coin),
263
+ amounts: e.amounts.map((n) => o(n))
264
+ }
265
+ };
266
+ case "TransferObjects":
267
+ return {
268
+ TransferObjects: {
269
+ objects: e.objects.map((n) => o(n)),
270
+ address: o(e.address)
271
+ }
272
+ };
273
+ case "Upgrade":
274
+ return {
275
+ Upgrade: {
276
+ modules: e.modules.map((n) => c(Uint8Array.from(n))),
277
+ dependencies: e.dependencies,
278
+ package: e.packageId,
279
+ ticket: o(e.ticket)
280
+ }
281
+ };
282
+ }
283
+ throw new Error(`Unknown transaction ${Object.keys(e)}`);
284
+ })
285
+ });
286
+ }
287
+ function o(t) {
288
+ switch (t.kind) {
289
+ case "GasCoin":
290
+ return { GasCoin: !0 };
291
+ case "Result":
292
+ return { Result: t.index };
293
+ case "NestedResult":
294
+ return { NestedResult: [t.index, t.resultIndex] };
295
+ case "Input":
296
+ return { Input: t.index };
297
+ }
298
+ }
48
299
  export {
49
- V as bcs
300
+ a as NormalizedCallArg,
301
+ p as ObjectRef,
302
+ $ as serializeV1TransactionData,
303
+ G as transactionDataFromV1
50
304
  };
package/dist/index321.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("./index305.cjs"),I=require("./index117.cjs"),w=require("./index372.cjs"),M=require("./index307.cjs"),b=require("./index310.cjs"),m=require("./index373.cjs"),U=require("./index318.cjs"),S=50,T=1000n,R=5e10;function $(n){return async function(r,a,s){return await A(r,n),await E(r,n),a.onlyTransactionKind||(await _(r,n),await k(r,n),await P(r,n)),await s()}}async function _(n,c){n.gasConfig.price||(n.gasConfig.price=String(await c.getReferenceGasPrice()))}async function k(n,c){if(n.gasConfig.budget)return;const r=await c.dryRunTransactionBlock({transactionBlock:n.build({overrides:{gasData:{budget:String(R),payment:[]}}})});if(r.effects.status.status!=="success")throw new Error(`Dry run failed, could not automatically determine a budget: ${r.effects.status.error}`,{cause:r});const a=T*BigInt(n.gasConfig.price||1n),s=BigInt(r.effects.gasUsed.computationCost)+a,d=s+BigInt(r.effects.gasUsed.storageCost)-BigInt(r.effects.gasUsed.storageRebate);n.gasConfig.budget=String(d>s?d:s)}async function P(n,c){if(!n.gasConfig.payment){const a=(await c.getCoins({owner:n.gasConfig.owner||n.sender,coinType:w.SUI_TYPE_ARG})).data.filter(s=>!n.inputs.find(g=>{var i;return(i=g.Object)!=null&&i.ImmOrOwnedObject?s.coinObjectId===g.Object.ImmOrOwnedObject.objectId:!1})).map(s=>({objectId:s.coinObjectId,digest:s.digest,version:s.version}));if(!a.length)throw new Error("No valid gas coins found for the transaction.");n.gasConfig.payment=a.map(s=>j.parse(M.ObjectRefSchema,s))}}async function E(n,c){const r=n.inputs.filter(e=>{var t;return e.UnresolvedObject&&!(e.UnresolvedObject.version||(t=e.UnresolvedObject)!=null&&t.initialSharedVersion)}),a=[...new Set(r.map(e=>I.normalizeSuiObjectId(e.UnresolvedObject.objectId)))],s=a.length?U.chunk(a,S):[],d=(await Promise.all(s.map(e=>c.multiGetObjects({ids:e,options:{showOwner:!0}})))).flat(),g=new Map(a.map((e,t)=>[e,d[t]])),i=Array.from(g).filter(([e,t])=>t.error).map(([e,t])=>JSON.stringify(t.error));if(i.length)throw new Error(`The following input objects are invalid: ${i.join(", ")}`);const l=d.map(e=>{if(e.error||!e.data)throw new Error(`Failed to fetch object: ${e.error}`);const t=e.data.owner,f=t&&typeof t=="object"?"Shared"in t?t.Shared.initial_shared_version:"ConsensusAddressOwner"in t?t.ConsensusAddressOwner.start_version:null:null;return{objectId:e.data.objectId,digest:e.data.digest,version:e.data.version,initialSharedVersion:f}}),v=new Map(a.map((e,t)=>[e,l[t]]));for(const[e,t]of n.inputs.entries()){if(!t.UnresolvedObject)continue;let f;const u=I.normalizeSuiAddress(t.UnresolvedObject.objectId),o=v.get(u);t.UnresolvedObject.initialSharedVersion??(o==null?void 0:o.initialSharedVersion)?f=b.Inputs.SharedObjectRef({objectId:u,initialSharedVersion:t.UnresolvedObject.initialSharedVersion||(o==null?void 0:o.initialSharedVersion),mutable:t.UnresolvedObject.mutable||B(n,e)}):V(n,e)&&(f=b.Inputs.ReceivingRef({objectId:u,digest:t.UnresolvedObject.digest??(o==null?void 0:o.digest),version:t.UnresolvedObject.version??(o==null?void 0:o.version)})),n.inputs[n.inputs.indexOf(t)]=f??b.Inputs.ObjectRef({objectId:u,digest:t.UnresolvedObject.digest??(o==null?void 0:o.digest),version:t.UnresolvedObject.version??(o==null?void 0:o.version)})}}async function A(n,c){const{inputs:r,commands:a}=n,s=[],d=new Set;a.forEach(i=>{if(i.MoveCall){if(i.MoveCall._argumentTypes)return;if(i.MoveCall.arguments.map(e=>e.$kind==="Input"?n.inputs[e.Input]:null).some(e=>(e==null?void 0:e.UnresolvedPure)||(e==null?void 0:e.UnresolvedObject)&&typeof(e==null?void 0:e.UnresolvedObject.mutable)!="boolean")){const e=`${i.MoveCall.package}::${i.MoveCall.module}::${i.MoveCall.function}`;d.add(e),s.push(i.MoveCall)}}});const g=new Map;d.size>0&&await Promise.all([...d].map(async i=>{const[l,v,e]=i.split("::"),t=await c.getNormalizedMoveFunction({package:l,module:v,function:e});g.set(i,t.parameters.map(f=>m.normalizedTypeToMoveTypeSignature(f)))})),s.length&&await Promise.all(s.map(async i=>{const l=g.get(`${i.package}::${i.module}::${i.function}`);if(!l)return;const e=l.length>0&&m.isTxContext(l.at(-1))?l.slice(0,l.length-1):l;i._argumentTypes=e})),a.forEach(i=>{if(!i.MoveCall)return;const l=i.MoveCall,v=`${l.package}::${l.module}::${l.function}`,e=l._argumentTypes;if(e){if(e.length!==i.MoveCall.arguments.length)throw new Error(`Incorrect number of arguments for ${v}`);e.forEach((t,f)=>{var y,h;const u=l.arguments[f];if(u.$kind!=="Input")return;const o=r[u.Input];if(!o.UnresolvedPure&&!o.UnresolvedObject)return;const p=((y=o.UnresolvedPure)==null?void 0:y.value)??((h=o.UnresolvedObject)==null?void 0:h.objectId),O=m.getPureBcsSchema(t.body);if(O){u.type="pure",r[r.indexOf(o)]=b.Inputs.Pure(O.serialize(p));return}if(typeof p!="string")throw new Error(`Expect the argument to be an object id string, got ${JSON.stringify(p,null,2)}`);u.type="object";const C=o.UnresolvedPure?{$kind:"UnresolvedObject",UnresolvedObject:{objectId:p}}:o;r[u.Input]=C})}})}function B(n,c){let r=!1;return n.getInputUses(c,(a,s)=>{if(s.MoveCall&&s.MoveCall._argumentTypes){const d=s.MoveCall.arguments.indexOf(a);r=s.MoveCall._argumentTypes[d].ref!=="&"||r}(s.$kind==="MakeMoveVec"||s.$kind==="MergeCoins"||s.$kind==="SplitCoins"||s.$kind==="TransferObjects")&&(r=!0)}),r}function V(n,c){let r=!1;return n.getInputUses(c,(a,s)=>{if(s.MoveCall&&s.MoveCall._argumentTypes){const d=s.MoveCall.arguments.indexOf(a);r=z(s.MoveCall._argumentTypes[d])||r}}),r}function z(n){return typeof n.body!="object"||!("datatype"in n.body)?!1:n.body.datatype.package==="0x2"&&n.body.datatype.module==="transfer"&&n.body.datatype.type==="Receiving"}exports.jsonRpcClientResolveTransactionPlugin=$;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index317.cjs"),n=require("./index319.cjs");function a(r){return e.union(Object.entries(r).map(([o,i])=>e.object({[o]:i})))}const t=a({GasCoin:e.literal(!0),Input:e.pipe(e.number(),e.integer()),Result:e.pipe(e.number(),e.integer()),NestedResult:e.tuple([e.pipe(e.number(),e.integer()),e.pipe(e.number(),e.integer())])}),s=e.object({budget:e.nullable(n.JsonU64),price:e.nullable(n.JsonU64),owner:e.nullable(n.SuiAddress),payment:e.nullable(e.array(n.ObjectRefSchema))}),l=e.object({package:n.ObjectID,module:e.string(),function:e.string(),typeArguments:e.array(e.string()),arguments:e.array(t)}),c=e.object({name:e.string(),inputs:e.record(e.string(),e.union([t,e.array(t)])),data:e.record(e.string(),e.unknown())}),b=a({MoveCall:l,TransferObjects:e.object({objects:e.array(t),address:t}),SplitCoins:e.object({coin:t,amounts:e.array(t)}),MergeCoins:e.object({destination:t,sources:e.array(t)}),Publish:e.object({modules:e.array(n.BCSBytes),dependencies:e.array(n.ObjectID)}),MakeMoveVec:e.object({type:e.nullable(e.string()),elements:e.array(t)}),Upgrade:e.object({modules:e.array(n.BCSBytes),dependencies:e.array(n.ObjectID),package:n.ObjectID,ticket:t}),$Intent:c}),u=a({ImmOrOwnedObject:n.ObjectRefSchema,SharedObject:e.object({objectId:n.ObjectID,initialSharedVersion:n.JsonU64,mutable:e.boolean()}),Receiving:n.ObjectRefSchema}),d=a({Object:u,Pure:e.object({bytes:n.BCSBytes}),UnresolvedPure:e.object({value:e.unknown()}),UnresolvedObject:e.object({objectId:n.ObjectID,version:e.optional(e.nullable(n.JsonU64)),digest:e.optional(e.nullable(e.string())),initialSharedVersion:e.optional(e.nullable(n.JsonU64)),mutable:e.optional(e.nullable(e.boolean()))})}),j=a({None:e.literal(!0),Epoch:n.JsonU64}),m=e.object({version:e.literal(2),sender:e.nullish(n.SuiAddress),expiration:e.nullish(j),gasData:s,inputs:e.array(d),commands:e.array(b),digest:e.optional(e.nullable(e.string()))});exports.SerializedTransactionDataV2Schema=m;
package/dist/index321.js CHANGED
@@ -1,215 +1,96 @@
1
- import { parse as C } from "./index305.js";
2
- import { normalizeSuiObjectId as w, normalizeSuiAddress as I } from "./index117.js";
3
- import { SUI_TYPE_ARG as j } from "./index372.js";
4
- import { ObjectRefSchema as U } from "./index307.js";
5
- import { Inputs as m } from "./index310.js";
6
- import { normalizedTypeToMoveTypeSignature as M, isTxContext as S, getPureBcsSchema as T } from "./index373.js";
7
- import { chunk as R } from "./index318.js";
8
- const $ = 50, _ = 1000n, k = 5e10;
9
- function Y(n) {
10
- return async function(o, a, t) {
11
- return await V(o, n), await B(o, n), a.onlyTransactionKind || (await E(o, n), await P(o, n), await A(o, n)), await t();
12
- };
13
- }
14
- async function E(n, l) {
15
- n.gasConfig.price || (n.gasConfig.price = String(await l.getReferenceGasPrice()));
16
- }
17
- async function P(n, l) {
18
- if (n.gasConfig.budget)
19
- return;
20
- const o = await l.dryRunTransactionBlock({
21
- transactionBlock: n.build({
22
- overrides: {
23
- gasData: {
24
- budget: String(k),
25
- payment: []
26
- }
27
- }
28
- })
29
- });
30
- if (o.effects.status.status !== "success")
31
- throw new Error(
32
- `Dry run failed, could not automatically determine a budget: ${o.effects.status.error}`,
33
- { cause: o }
34
- );
35
- const a = _ * BigInt(n.gasConfig.price || 1n), t = BigInt(o.effects.gasUsed.computationCost) + a, c = t + BigInt(o.effects.gasUsed.storageCost) - BigInt(o.effects.gasUsed.storageRebate);
36
- n.gasConfig.budget = String(
37
- c > t ? c : t
38
- );
39
- }
40
- async function A(n, l) {
41
- if (!n.gasConfig.payment) {
42
- const a = (await l.getCoins({
43
- owner: n.gasConfig.owner || n.sender,
44
- coinType: j
45
- })).data.filter((t) => !n.inputs.find((g) => {
46
- var i;
47
- return (i = g.Object) != null && i.ImmOrOwnedObject ? t.coinObjectId === g.Object.ImmOrOwnedObject.objectId : !1;
48
- })).map((t) => ({
49
- objectId: t.coinObjectId,
50
- digest: t.digest,
51
- version: t.version
52
- }));
53
- if (!a.length)
54
- throw new Error("No valid gas coins found for the transaction.");
55
- n.gasConfig.payment = a.map(
56
- (t) => C(U, t)
57
- );
58
- }
59
- }
60
- async function B(n, l) {
61
- const o = n.inputs.filter((e) => {
62
- var s;
63
- return e.UnresolvedObject && !(e.UnresolvedObject.version || (s = e.UnresolvedObject) != null && s.initialSharedVersion);
64
- }), a = [
65
- ...new Set(
66
- o.map((e) => w(e.UnresolvedObject.objectId))
67
- )
68
- ], t = a.length ? R(a, $) : [], c = (await Promise.all(
69
- t.map(
70
- (e) => l.multiGetObjects({
71
- ids: e,
72
- options: { showOwner: !0 }
73
- })
74
- )
75
- )).flat(), g = new Map(
76
- a.map((e, s) => [e, c[s]])
77
- ), i = Array.from(g).filter(([e, s]) => s.error).map(([e, s]) => JSON.stringify(s.error));
78
- if (i.length)
79
- throw new Error(`The following input objects are invalid: ${i.join(", ")}`);
80
- const d = c.map((e) => {
81
- if (e.error || !e.data)
82
- throw new Error(`Failed to fetch object: ${e.error}`);
83
- const s = e.data.owner, f = s && typeof s == "object" ? "Shared" in s ? s.Shared.initial_shared_version : "ConsensusAddressOwner" in s ? s.ConsensusAddressOwner.start_version : null : null;
84
- return {
85
- objectId: e.data.objectId,
86
- digest: e.data.digest,
87
- version: e.data.version,
88
- initialSharedVersion: f
89
- };
90
- }), p = new Map(
91
- a.map((e, s) => [e, d[s]])
1
+ import { object as e, optional as i, array as n, nullish as g, literal as b, nullable as o, string as s, union as O, boolean as v, unknown as S, record as j, tuple as I, pipe as l, integer as u, number as d } from "./index317.js";
2
+ import { SuiAddress as h, ObjectRefSchema as m, JsonU64 as r, ObjectID as a, BCSBytes as p } from "./index319.js";
3
+ function c(C) {
4
+ return O(
5
+ Object.entries(C).map(([f, y]) => e({ [f]: y }))
92
6
  );
93
- for (const [e, s] of n.inputs.entries()) {
94
- if (!s.UnresolvedObject)
95
- continue;
96
- let f;
97
- const u = I(s.UnresolvedObject.objectId), r = p.get(u);
98
- s.UnresolvedObject.initialSharedVersion ?? (r == null ? void 0 : r.initialSharedVersion) ? f = m.SharedObjectRef({
99
- objectId: u,
100
- initialSharedVersion: s.UnresolvedObject.initialSharedVersion || (r == null ? void 0 : r.initialSharedVersion),
101
- mutable: s.UnresolvedObject.mutable || G(n, e)
102
- }) : z(n, e) && (f = m.ReceivingRef(
103
- {
104
- objectId: u,
105
- digest: s.UnresolvedObject.digest ?? (r == null ? void 0 : r.digest),
106
- version: s.UnresolvedObject.version ?? (r == null ? void 0 : r.version)
107
- }
108
- )), n.inputs[n.inputs.indexOf(s)] = f ?? m.ObjectRef({
109
- objectId: u,
110
- digest: s.UnresolvedObject.digest ?? (r == null ? void 0 : r.digest),
111
- version: s.UnresolvedObject.version ?? (r == null ? void 0 : r.version)
112
- });
113
- }
114
- }
115
- async function V(n, l) {
116
- const { inputs: o, commands: a } = n, t = [], c = /* @__PURE__ */ new Set();
117
- a.forEach((i) => {
118
- if (i.MoveCall) {
119
- if (i.MoveCall._argumentTypes)
120
- return;
121
- if (i.MoveCall.arguments.map((e) => e.$kind === "Input" ? n.inputs[e.Input] : null).some(
122
- (e) => (e == null ? void 0 : e.UnresolvedPure) || (e == null ? void 0 : e.UnresolvedObject) && typeof (e == null ? void 0 : e.UnresolvedObject.mutable) != "boolean"
123
- )) {
124
- const e = `${i.MoveCall.package}::${i.MoveCall.module}::${i.MoveCall.function}`;
125
- c.add(e), t.push(i.MoveCall);
126
- }
127
- }
128
- });
129
- const g = /* @__PURE__ */ new Map();
130
- c.size > 0 && await Promise.all(
131
- [...c].map(async (i) => {
132
- const [d, p, e] = i.split("::"), s = await l.getNormalizedMoveFunction({
133
- package: d,
134
- module: p,
135
- function: e
136
- });
137
- g.set(
138
- i,
139
- s.parameters.map((f) => M(f))
140
- );
141
- })
142
- ), t.length && await Promise.all(
143
- t.map(async (i) => {
144
- const d = g.get(
145
- `${i.package}::${i.module}::${i.function}`
146
- );
147
- if (!d)
148
- return;
149
- const e = d.length > 0 && S(d.at(-1)) ? d.slice(0, d.length - 1) : d;
150
- i._argumentTypes = e;
151
- })
152
- ), a.forEach((i) => {
153
- if (!i.MoveCall)
154
- return;
155
- const d = i.MoveCall, p = `${d.package}::${d.module}::${d.function}`, e = d._argumentTypes;
156
- if (e) {
157
- if (e.length !== i.MoveCall.arguments.length)
158
- throw new Error(`Incorrect number of arguments for ${p}`);
159
- e.forEach((s, f) => {
160
- var O, y;
161
- const u = d.arguments[f];
162
- if (u.$kind !== "Input") return;
163
- const r = o[u.Input];
164
- if (!r.UnresolvedPure && !r.UnresolvedObject)
165
- return;
166
- const v = ((O = r.UnresolvedPure) == null ? void 0 : O.value) ?? ((y = r.UnresolvedObject) == null ? void 0 : y.objectId), b = T(s.body);
167
- if (b) {
168
- u.type = "pure", o[o.indexOf(r)] = m.Pure(b.serialize(v));
169
- return;
170
- }
171
- if (typeof v != "string")
172
- throw new Error(
173
- `Expect the argument to be an object id string, got ${JSON.stringify(
174
- v,
175
- null,
176
- 2
177
- )}`
178
- );
179
- u.type = "object";
180
- const h = r.UnresolvedPure ? {
181
- $kind: "UnresolvedObject",
182
- UnresolvedObject: {
183
- objectId: v
184
- }
185
- } : r;
186
- o[u.Input] = h;
187
- });
188
- }
189
- });
190
- }
191
- function G(n, l) {
192
- let o = !1;
193
- return n.getInputUses(l, (a, t) => {
194
- if (t.MoveCall && t.MoveCall._argumentTypes) {
195
- const c = t.MoveCall.arguments.indexOf(a);
196
- o = t.MoveCall._argumentTypes[c].ref !== "&" || o;
197
- }
198
- (t.$kind === "MakeMoveVec" || t.$kind === "MergeCoins" || t.$kind === "SplitCoins" || t.$kind === "TransferObjects") && (o = !0);
199
- }), o;
200
- }
201
- function z(n, l) {
202
- let o = !1;
203
- return n.getInputUses(l, (a, t) => {
204
- if (t.MoveCall && t.MoveCall._argumentTypes) {
205
- const c = t.MoveCall.arguments.indexOf(a);
206
- o = x(t.MoveCall._argumentTypes[c]) || o;
207
- }
208
- }), o;
209
- }
210
- function x(n) {
211
- return typeof n.body != "object" || !("datatype" in n.body) ? !1 : n.body.datatype.package === "0x2" && n.body.datatype.module === "transfer" && n.body.datatype.type === "Receiving";
212
7
  }
8
+ const t = c({
9
+ GasCoin: b(!0),
10
+ Input: l(d(), u()),
11
+ Result: l(d(), u()),
12
+ NestedResult: I([l(d(), u()), l(d(), u())])
13
+ }), k = e({
14
+ budget: o(r),
15
+ price: o(r),
16
+ owner: o(h),
17
+ payment: o(n(m))
18
+ }), A = e({
19
+ package: a,
20
+ module: s(),
21
+ function: s(),
22
+ // snake case in rust
23
+ typeArguments: n(s()),
24
+ arguments: n(t)
25
+ }), M = e({
26
+ name: s(),
27
+ inputs: j(s(), O([t, n(t)])),
28
+ data: j(s(), S())
29
+ }), U = c({
30
+ MoveCall: A,
31
+ TransferObjects: e({
32
+ objects: n(t),
33
+ address: t
34
+ }),
35
+ SplitCoins: e({
36
+ coin: t,
37
+ amounts: n(t)
38
+ }),
39
+ MergeCoins: e({
40
+ destination: t,
41
+ sources: n(t)
42
+ }),
43
+ Publish: e({
44
+ modules: n(p),
45
+ dependencies: n(a)
46
+ }),
47
+ MakeMoveVec: e({
48
+ type: o(s()),
49
+ elements: n(t)
50
+ }),
51
+ Upgrade: e({
52
+ modules: n(p),
53
+ dependencies: n(a),
54
+ package: a,
55
+ ticket: t
56
+ }),
57
+ $Intent: M
58
+ }), D = c({
59
+ ImmOrOwnedObject: m,
60
+ SharedObject: e({
61
+ objectId: a,
62
+ // snake case in rust
63
+ initialSharedVersion: r,
64
+ mutable: v()
65
+ }),
66
+ Receiving: m
67
+ }), P = c({
68
+ Object: D,
69
+ Pure: e({
70
+ bytes: p
71
+ }),
72
+ UnresolvedPure: e({
73
+ value: S()
74
+ }),
75
+ UnresolvedObject: e({
76
+ objectId: a,
77
+ version: i(o(r)),
78
+ digest: i(o(s())),
79
+ initialSharedVersion: i(o(r)),
80
+ mutable: i(o(v()))
81
+ })
82
+ }), R = c({
83
+ None: b(!0),
84
+ Epoch: r
85
+ }), x = e({
86
+ version: b(2),
87
+ sender: g(h),
88
+ expiration: g(R),
89
+ gasData: k,
90
+ inputs: n(P),
91
+ commands: n(U),
92
+ digest: i(o(s()))
93
+ });
213
94
  export {
214
- Y as jsonRpcClientResolveTransactionPlugin
95
+ x as SerializedTransactionDataV2Schema
215
96
  };