@gardenfi/swap 0.1.2 → 0.1.3-beta.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 (360) hide show
  1. package/dist/index104.cjs +1 -1
  2. package/dist/index104.js +4 -4
  3. package/dist/index106.cjs +1 -1
  4. package/dist/index106.js +1 -1
  5. package/dist/index107.cjs +1 -1
  6. package/dist/index107.js +1 -1
  7. package/dist/index108.cjs +1 -1
  8. package/dist/index108.js +1 -1
  9. package/dist/index116.cjs +1 -1
  10. package/dist/index116.js +1 -1
  11. package/dist/index117.cjs +1 -1
  12. package/dist/index117.js +1 -1
  13. package/dist/index120.cjs +1 -1
  14. package/dist/index120.js +2 -2
  15. package/dist/index121.cjs +1 -1
  16. package/dist/index121.js +8 -8
  17. package/dist/index126.cjs +1 -1
  18. package/dist/index126.js +4 -4
  19. package/dist/index128.cjs +1 -1
  20. package/dist/index128.js +2 -2
  21. package/dist/index129.cjs +1 -1
  22. package/dist/index129.js +2 -2
  23. package/dist/index130.cjs +1 -1
  24. package/dist/index130.js +3 -3
  25. package/dist/index131.cjs +1 -1
  26. package/dist/index131.js +1 -1
  27. package/dist/index132.cjs +1 -1
  28. package/dist/index132.js +1 -1
  29. package/dist/index133.cjs +1 -1
  30. package/dist/index133.js +2 -2
  31. package/dist/index134.cjs +1 -1
  32. package/dist/index134.js +2 -2
  33. package/dist/index135.cjs +1 -1
  34. package/dist/index135.js +1 -1
  35. package/dist/index138.cjs +1 -1
  36. package/dist/index138.js +1 -1
  37. package/dist/index141.cjs +1 -1
  38. package/dist/index141.js +1 -1
  39. package/dist/index143.cjs +1 -1
  40. package/dist/index143.js +1 -1
  41. package/dist/index145.cjs +1 -1
  42. package/dist/index145.js +1 -1
  43. package/dist/index149.cjs +1 -1
  44. package/dist/index149.js +1 -1
  45. package/dist/index150.cjs +1 -1
  46. package/dist/index150.js +1 -1
  47. package/dist/index151.cjs +1 -1
  48. package/dist/index151.js +1 -1
  49. package/dist/index153.cjs +1 -1
  50. package/dist/index153.js +2 -2
  51. package/dist/index154.cjs +1 -1
  52. package/dist/index154.js +1 -1
  53. package/dist/index155.cjs +1 -1
  54. package/dist/index155.js +1 -1
  55. package/dist/index156.cjs +1 -1
  56. package/dist/index156.js +1 -1
  57. package/dist/index158.cjs +1 -1
  58. package/dist/index158.js +1 -1
  59. package/dist/index160.cjs +1 -1
  60. package/dist/index160.js +2 -2
  61. package/dist/index161.cjs +1 -1
  62. package/dist/index161.js +3 -3
  63. package/dist/index167.cjs +1 -1
  64. package/dist/index167.js +2 -2
  65. package/dist/index168.cjs +1 -1
  66. package/dist/index168.js +2 -2
  67. package/dist/index169.cjs +1 -1
  68. package/dist/index169.js +2 -2
  69. package/dist/index170.cjs +1 -1
  70. package/dist/index170.js +3 -3
  71. package/dist/index171.cjs +1 -1
  72. package/dist/index171.js +3 -3
  73. package/dist/index172.cjs +1 -1
  74. package/dist/index172.js +2 -2
  75. package/dist/index176.cjs +1 -1
  76. package/dist/index176.js +1 -1
  77. package/dist/index178.cjs +1 -1
  78. package/dist/index178.js +1 -1
  79. package/dist/index18.cjs +1 -1
  80. package/dist/index18.js +3 -3
  81. package/dist/index181.cjs +1 -1
  82. package/dist/index181.js +1 -1
  83. package/dist/index187.cjs +1 -1
  84. package/dist/index187.js +1 -1
  85. package/dist/index19.cjs +1 -1
  86. package/dist/index19.js +15 -15
  87. package/dist/index195.cjs +1 -1
  88. package/dist/index195.js +1 -1
  89. package/dist/index20.cjs +1 -1
  90. package/dist/index20.js +2 -2
  91. package/dist/index21.cjs +1 -1
  92. package/dist/index21.js +4 -4
  93. package/dist/index210.cjs +1 -1
  94. package/dist/index210.js +3 -3
  95. package/dist/index212.cjs +1 -1
  96. package/dist/index212.js +1 -1
  97. package/dist/index213.cjs +1 -1
  98. package/dist/index213.js +3 -3
  99. package/dist/index214.cjs +1 -1
  100. package/dist/index214.js +1 -1
  101. package/dist/index215.cjs +1 -1
  102. package/dist/index215.js +6 -6
  103. package/dist/index217.cjs +1 -1
  104. package/dist/index217.js +1 -1
  105. package/dist/index224.cjs +1 -1
  106. package/dist/index224.js +1 -1
  107. package/dist/index226.cjs +1 -1
  108. package/dist/index226.js +1 -1
  109. package/dist/index231.cjs +1 -1
  110. package/dist/index231.js +1 -1
  111. package/dist/index232.cjs +1 -1
  112. package/dist/index232.js +1 -1
  113. package/dist/index234.cjs +1 -1
  114. package/dist/index234.js +1 -1
  115. package/dist/index237.cjs +1 -1
  116. package/dist/index237.js +2 -2
  117. package/dist/index24.cjs +1 -1
  118. package/dist/index24.js +2 -2
  119. package/dist/index240.cjs +1 -1
  120. package/dist/index240.js +1 -1
  121. package/dist/index242.cjs +1 -1
  122. package/dist/index242.js +1 -1
  123. package/dist/index243.cjs +1 -1
  124. package/dist/index243.js +1 -1
  125. package/dist/index245.cjs +1 -1
  126. package/dist/index245.js +2 -2
  127. package/dist/index255.cjs +1 -1
  128. package/dist/index255.js +3 -3
  129. package/dist/index256.cjs +1 -1
  130. package/dist/index256.js +2 -2
  131. package/dist/index257.cjs +1 -1
  132. package/dist/index257.js +4 -4
  133. package/dist/index259.cjs +1 -1
  134. package/dist/index259.js +2 -2
  135. package/dist/index261.cjs +1 -1
  136. package/dist/index261.js +2 -2
  137. package/dist/index262.cjs +1 -1
  138. package/dist/index262.js +4 -4
  139. package/dist/index265.cjs +1 -1
  140. package/dist/index265.js +2 -2
  141. package/dist/index266.cjs +1 -1
  142. package/dist/index266.js +2 -2
  143. package/dist/index275.cjs +1 -1
  144. package/dist/index275.js +3 -3
  145. package/dist/index278.cjs +1 -1
  146. package/dist/index278.js +1 -1
  147. package/dist/index29.cjs +1 -1
  148. package/dist/index29.js +1 -1
  149. package/dist/index299.cjs +1 -1
  150. package/dist/index299.js +41 -36
  151. package/dist/index30.cjs +1 -1
  152. package/dist/index30.js +2 -2
  153. package/dist/index300.cjs +1 -1
  154. package/dist/index300.js +320 -15
  155. package/dist/index301.cjs +1 -1
  156. package/dist/index301.js +604 -7
  157. package/dist/index302.cjs +1 -1
  158. package/dist/index302.js +110 -8
  159. package/dist/index303.cjs +1 -1
  160. package/dist/index303.js +167 -42
  161. package/dist/index304.cjs +1 -1
  162. package/dist/index304.js +291 -310
  163. package/dist/index305.cjs +1 -1
  164. package/dist/index305.js +94 -606
  165. package/dist/index306.cjs +1 -1
  166. package/dist/index306.js +44 -97
  167. package/dist/index307.cjs +1 -1
  168. package/dist/index307.js +52 -166
  169. package/dist/index308.cjs +1 -1
  170. package/dist/index308.js +41 -298
  171. package/dist/index309.cjs +1 -1
  172. package/dist/index309.js +15 -93
  173. package/dist/index310.cjs +1 -1
  174. package/dist/index310.js +310 -49
  175. package/dist/index311.cjs +1 -1
  176. package/dist/index311.js +57 -51
  177. package/dist/index312.cjs +1 -1
  178. package/dist/index312.js +18 -43
  179. package/dist/index313.cjs +1 -1
  180. package/dist/index313.js +28 -14
  181. package/dist/index314.cjs +1 -1
  182. package/dist/index314.js +3 -317
  183. package/dist/index315.cjs +7 -1
  184. package/dist/index315.js +232 -54
  185. package/dist/index316.cjs +1 -1
  186. package/dist/index316.js +47 -19
  187. package/dist/index317.cjs +1 -1
  188. package/dist/index317.js +208 -25
  189. package/dist/index318.cjs +1 -1
  190. package/dist/index318.js +81 -3
  191. package/dist/index319.cjs +1 -7
  192. package/dist/index319.js +27 -235
  193. package/dist/index320.cjs +1 -1
  194. package/dist/index320.js +77 -48
  195. package/dist/index321.cjs +1 -1
  196. package/dist/index321.js +34 -209
  197. package/dist/index322.cjs +1 -1
  198. package/dist/index322.js +14 -80
  199. package/dist/index323.cjs +1 -1
  200. package/dist/index323.js +8 -29
  201. package/dist/index324.cjs +1 -1
  202. package/dist/index324.js +7 -76
  203. package/dist/index326.cjs +1 -1
  204. package/dist/index326.js +1 -1
  205. package/dist/index327.cjs +1 -1
  206. package/dist/index327.js +1 -1
  207. package/dist/index333.cjs +1 -1
  208. package/dist/index333.js +1 -1
  209. package/dist/index334.cjs +1 -1
  210. package/dist/index334.js +1 -1
  211. package/dist/index336.cjs +1 -1
  212. package/dist/index336.js +1 -1
  213. package/dist/index349.cjs +2 -1
  214. package/dist/index349.js +193 -4
  215. package/dist/index350.cjs +1 -2
  216. package/dist/index350.js +52 -168
  217. package/dist/index351.cjs +1 -1
  218. package/dist/index351.js +331 -65
  219. package/dist/index352.cjs +1 -1
  220. package/dist/index352.js +149 -332
  221. package/dist/index353.cjs +1 -1
  222. package/dist/index353.js +5 -161
  223. package/dist/index354.cjs +1 -1
  224. package/dist/index354.js +5 -5
  225. package/dist/index356.cjs +1 -1
  226. package/dist/index356.js +3 -3
  227. package/dist/index363.cjs +1 -1
  228. package/dist/index363.js +1 -1
  229. package/dist/index364.cjs +1 -1
  230. package/dist/index364.js +1 -1
  231. package/dist/index365.cjs +1 -1
  232. package/dist/index365.js +1 -1
  233. package/dist/index366.cjs +1 -1
  234. package/dist/index366.js +1 -1
  235. package/dist/index368.cjs +1 -1
  236. package/dist/index368.js +275 -3
  237. package/dist/index369.cjs +1 -1
  238. package/dist/index369.js +170 -140
  239. package/dist/index370.cjs +1 -1
  240. package/dist/index370.js +10 -276
  241. package/dist/index371.cjs +1 -1
  242. package/dist/index371.js +107 -170
  243. package/dist/index372.cjs +1 -1
  244. package/dist/index372.js +10 -10
  245. package/dist/index373.cjs +1 -1
  246. package/dist/index373.js +3 -107
  247. package/dist/index374.cjs +1 -1
  248. package/dist/index374.js +140 -9
  249. package/dist/index381.cjs +1 -1
  250. package/dist/index381.js +22 -2
  251. package/dist/index382.cjs +1 -1
  252. package/dist/index382.js +2 -22
  253. package/dist/index385.cjs +1 -1
  254. package/dist/index385.js +1 -1
  255. package/dist/index39.cjs +1 -1
  256. package/dist/index39.js +24 -83
  257. package/dist/index40.cjs +1 -1
  258. package/dist/index40.js +15 -11
  259. package/dist/index41.cjs +1 -1
  260. package/dist/index41.js +103 -24
  261. package/dist/index42.cjs +1 -1
  262. package/dist/index42.js +12 -18
  263. package/dist/index43.cjs +1 -1
  264. package/dist/index43.js +58 -107
  265. package/dist/index44.cjs +1 -1
  266. package/dist/index44.js +522 -12
  267. package/dist/index45.cjs +1 -1
  268. package/dist/index45.js +30 -59
  269. package/dist/index46.cjs +1 -1
  270. package/dist/index46.js +26 -522
  271. package/dist/index47.cjs +1 -1
  272. package/dist/index47.js +12 -16
  273. package/dist/index48.cjs +1 -1
  274. package/dist/index48.js +34 -11
  275. package/dist/index49.cjs +1 -1
  276. package/dist/index49.js +16 -14
  277. package/dist/index50.cjs +1 -1
  278. package/dist/index50.js +16 -37
  279. package/dist/index51.cjs +1 -1
  280. package/dist/index51.js +17 -14
  281. package/dist/index52.cjs +1 -1
  282. package/dist/index52.js +19 -17
  283. package/dist/index53.cjs +1 -1
  284. package/dist/index53.js +42 -17
  285. package/dist/index54.cjs +1 -1
  286. package/dist/index54.js +39 -15
  287. package/dist/index55.cjs +1 -1
  288. package/dist/index55.js +29 -49
  289. package/dist/index56.cjs +1 -1
  290. package/dist/index56.js +29 -46
  291. package/dist/index57.cjs +1 -1
  292. package/dist/index57.js +19 -25
  293. package/dist/index58.cjs +1 -1
  294. package/dist/index58.js +18 -27
  295. package/dist/index59.cjs +1 -1
  296. package/dist/index59.js +14 -16
  297. package/dist/index60.cjs +1 -1
  298. package/dist/index60.js +15 -28
  299. package/dist/index61.cjs +1 -1
  300. package/dist/index61.js +14 -28
  301. package/dist/index62.cjs +1 -1
  302. package/dist/index62.js +86 -13
  303. package/dist/index63.cjs +1 -1
  304. package/dist/index63.js +13 -13
  305. package/dist/index70.cjs +1 -1
  306. package/dist/index70.js +6 -6
  307. package/dist/index71.cjs +1 -1
  308. package/dist/index71.js +3 -3
  309. package/dist/index72.cjs +1 -1
  310. package/dist/index72.js +1 -1
  311. package/dist/index73.cjs +1 -1
  312. package/dist/index73.js +1 -1
  313. package/dist/index74.cjs +1 -1
  314. package/dist/index74.js +2 -2
  315. package/dist/index75.cjs +1 -1
  316. package/dist/index75.js +728 -20
  317. package/dist/index76.cjs +1 -1
  318. package/dist/index76.js +482 -688
  319. package/dist/index77.cjs +1 -1
  320. package/dist/index77.js +18 -520
  321. package/dist/index78.cjs +1 -1
  322. package/dist/index78.js +19 -11
  323. package/dist/index79.cjs +1 -1
  324. package/dist/index79.js +30 -11
  325. package/dist/index80.cjs +1 -1
  326. package/dist/index80.js +24 -16
  327. package/dist/index81.cjs +1 -1
  328. package/dist/index81.js +4 -45
  329. package/dist/index82.cjs +1 -1
  330. package/dist/index82.js +6 -42
  331. package/dist/index83.cjs +1 -1
  332. package/dist/index83.js +16 -171
  333. package/dist/index84.cjs +1 -1
  334. package/dist/index84.js +12 -20
  335. package/dist/index85.cjs +1 -1
  336. package/dist/index85.js +8 -26
  337. package/dist/index86.cjs +1 -1
  338. package/dist/index86.js +11 -26
  339. package/dist/index87.cjs +1 -1
  340. package/dist/index87.js +17 -3
  341. package/dist/index88.cjs +1 -1
  342. package/dist/index88.js +45 -6
  343. package/dist/index89.cjs +1 -1
  344. package/dist/index89.js +42 -16
  345. package/dist/index90.cjs +1 -1
  346. package/dist/index90.js +171 -12
  347. package/dist/index91.cjs +1 -1
  348. package/dist/index91.js +1 -1
  349. package/dist/index92.cjs +1 -1
  350. package/dist/index92.js +3 -3
  351. package/dist/index95.cjs +1 -1
  352. package/dist/index95.js +1 -1
  353. package/dist/index96.cjs +1 -1
  354. package/dist/index96.js +1 -1
  355. package/dist/index97.cjs +1 -1
  356. package/dist/index97.js +2 -2
  357. package/dist/index98.cjs +1 -1
  358. package/dist/index98.js +2 -2
  359. package/dist/src/lib/store/swapStore.d.ts +1 -1
  360. package/package.json +4 -4
package/dist/index310.js CHANGED
@@ -1,59 +1,320 @@
1
- import { toBase64 as c } from "./index114.js";
2
- import { normalizeSuiAddress as n } from "./index117.js";
3
- function i(e) {
4
- return {
5
- $kind: "Pure",
6
- Pure: {
7
- bytes: e instanceof Uint8Array ? c(e) : e.toBase64()
8
- }
9
- };
1
+ import { toBase58 as j } from "./index113.js";
2
+ import { parse as h } from "./index301.js";
3
+ import { bcs as b } from "./index316.js";
4
+ import { normalizeSuiAddress as d } from "./index117.js";
5
+ import { TransactionDataSchema as f, ArgumentSchema as R } from "./index303.js";
6
+ import { transactionDataFromV1 as y } from "./index304.js";
7
+ import { hashTypedData as $ } from "./index367.js";
8
+ import { getIdFromCallArg as w, remapCommandArguments as D } from "./index311.js";
9
+ function k(O) {
10
+ return d(O).replace("0x", "");
10
11
  }
11
- const d = {
12
- Pure: i,
13
- ObjectRef({ objectId: e, digest: t, version: r }) {
14
- return {
15
- $kind: "Object",
16
- Object: {
17
- $kind: "ImmOrOwnedObject",
18
- ImmOrOwnedObject: {
19
- digest: t,
20
- version: r,
21
- objectId: n(e)
22
- }
23
- }
12
+ class m {
13
+ constructor(t) {
14
+ this.version = 2, this.sender = (t == null ? void 0 : t.sender) ?? null, this.expiration = (t == null ? void 0 : t.expiration) ?? null, this.inputs = (t == null ? void 0 : t.inputs) ?? [], this.commands = (t == null ? void 0 : t.commands) ?? [], this.gasData = (t == null ? void 0 : t.gasData) ?? {
15
+ budget: null,
16
+ price: null,
17
+ owner: null,
18
+ payment: null
24
19
  };
25
- },
26
- SharedObjectRef({
27
- objectId: e,
28
- mutable: t,
29
- initialSharedVersion: r
30
- }) {
31
- return {
32
- $kind: "Object",
33
- Object: {
34
- $kind: "SharedObject",
35
- SharedObject: {
36
- mutable: t,
37
- initialSharedVersion: r,
38
- objectId: n(e)
39
- }
20
+ }
21
+ static fromKindBytes(t) {
22
+ const e = b.TransactionKind.parse(t).ProgrammableTransaction;
23
+ if (!e)
24
+ throw new Error("Unable to deserialize from bytes.");
25
+ return m.restore({
26
+ version: 2,
27
+ sender: null,
28
+ expiration: null,
29
+ gasData: {
30
+ budget: null,
31
+ owner: null,
32
+ payment: null,
33
+ price: null
34
+ },
35
+ inputs: e.inputs,
36
+ commands: e.commands
37
+ });
38
+ }
39
+ static fromBytes(t) {
40
+ const s = b.TransactionData.parse(t), e = s == null ? void 0 : s.V1, i = e.kind.ProgrammableTransaction;
41
+ if (!e || !i)
42
+ throw new Error("Unable to deserialize from bytes.");
43
+ return m.restore({
44
+ version: 2,
45
+ sender: e.sender,
46
+ expiration: e.expiration,
47
+ gasData: e.gasData,
48
+ inputs: i.inputs,
49
+ commands: i.commands
50
+ });
51
+ }
52
+ static restore(t) {
53
+ return t.version === 2 ? new m(h(f, t)) : new m(h(f, y(t)));
54
+ }
55
+ /**
56
+ * Generate transaction digest.
57
+ *
58
+ * @param bytes BCS serialized transaction data
59
+ * @returns transaction digest.
60
+ */
61
+ static getDigestFromBytes(t) {
62
+ const s = $("TransactionData", t);
63
+ return j(s);
64
+ }
65
+ // @deprecated use gasData instead
66
+ get gasConfig() {
67
+ return this.gasData;
68
+ }
69
+ // @deprecated use gasData instead
70
+ set gasConfig(t) {
71
+ this.gasData = t;
72
+ }
73
+ build({
74
+ maxSizeBytes: t = 1 / 0,
75
+ overrides: s,
76
+ onlyTransactionKind: e
77
+ } = {}) {
78
+ const i = this.inputs, n = this.commands, r = {
79
+ ProgrammableTransaction: {
80
+ inputs: i,
81
+ commands: n
40
82
  }
41
83
  };
42
- },
43
- ReceivingRef({ objectId: e, digest: t, version: r }) {
44
- return {
45
- $kind: "Object",
46
- Object: {
47
- $kind: "Receiving",
48
- Receiving: {
49
- digest: t,
50
- version: r,
51
- objectId: n(e)
84
+ if (e)
85
+ return b.TransactionKind.serialize(r, { maxSize: t }).toBytes();
86
+ const u = (s == null ? void 0 : s.expiration) ?? this.expiration, p = (s == null ? void 0 : s.sender) ?? this.sender, a = { ...this.gasData, ...s == null ? void 0 : s.gasConfig, ...s == null ? void 0 : s.gasData };
87
+ if (!p)
88
+ throw new Error("Missing transaction sender");
89
+ if (!a.budget)
90
+ throw new Error("Missing gas budget");
91
+ if (!a.payment)
92
+ throw new Error("Missing gas payment");
93
+ if (!a.price)
94
+ throw new Error("Missing gas price");
95
+ const o = {
96
+ sender: k(p),
97
+ expiration: u || { None: !0 },
98
+ gasData: {
99
+ payment: a.payment,
100
+ owner: k(this.gasData.owner ?? p),
101
+ price: BigInt(a.price),
102
+ budget: BigInt(a.budget)
103
+ },
104
+ kind: {
105
+ ProgrammableTransaction: {
106
+ inputs: i,
107
+ commands: n
52
108
  }
53
109
  }
54
110
  };
111
+ return b.TransactionData.serialize(
112
+ { V1: o },
113
+ { maxSize: t }
114
+ ).toBytes();
55
115
  }
56
- };
116
+ addInput(t, s) {
117
+ const e = this.inputs.length;
118
+ return this.inputs.push(s), { Input: e, type: t, $kind: "Input" };
119
+ }
120
+ getInputUses(t, s) {
121
+ this.mapArguments((e, i) => (e.$kind === "Input" && e.Input === t && s(e, i), e));
122
+ }
123
+ mapCommandArguments(t, s) {
124
+ const e = this.commands[t];
125
+ switch (e.$kind) {
126
+ case "MoveCall":
127
+ e.MoveCall.arguments = e.MoveCall.arguments.map(
128
+ (n) => s(n, e, t)
129
+ );
130
+ break;
131
+ case "TransferObjects":
132
+ e.TransferObjects.objects = e.TransferObjects.objects.map(
133
+ (n) => s(n, e, t)
134
+ ), e.TransferObjects.address = s(e.TransferObjects.address, e, t);
135
+ break;
136
+ case "SplitCoins":
137
+ e.SplitCoins.coin = s(e.SplitCoins.coin, e, t), e.SplitCoins.amounts = e.SplitCoins.amounts.map(
138
+ (n) => s(n, e, t)
139
+ );
140
+ break;
141
+ case "MergeCoins":
142
+ e.MergeCoins.destination = s(e.MergeCoins.destination, e, t), e.MergeCoins.sources = e.MergeCoins.sources.map(
143
+ (n) => s(n, e, t)
144
+ );
145
+ break;
146
+ case "MakeMoveVec":
147
+ e.MakeMoveVec.elements = e.MakeMoveVec.elements.map(
148
+ (n) => s(n, e, t)
149
+ );
150
+ break;
151
+ case "Upgrade":
152
+ e.Upgrade.ticket = s(e.Upgrade.ticket, e, t);
153
+ break;
154
+ case "$Intent":
155
+ const i = e.$Intent.inputs;
156
+ e.$Intent.inputs = {};
157
+ for (const [n, r] of Object.entries(i))
158
+ e.$Intent.inputs[n] = Array.isArray(r) ? r.map((u) => s(u, e, t)) : s(r, e, t);
159
+ break;
160
+ case "Publish":
161
+ break;
162
+ default:
163
+ throw new Error(`Unexpected transaction kind: ${e.$kind}`);
164
+ }
165
+ }
166
+ mapArguments(t) {
167
+ for (const s of this.commands.keys())
168
+ this.mapCommandArguments(s, t);
169
+ }
170
+ replaceCommand(t, s, e = t) {
171
+ if (!Array.isArray(s)) {
172
+ this.commands[t] = s;
173
+ return;
174
+ }
175
+ const i = s.length - 1;
176
+ this.commands.splice(t, 1, ...structuredClone(s)), this.mapArguments((n, r, u) => {
177
+ if (u < t + s.length)
178
+ return n;
179
+ if (typeof e != "number" && (n.$kind === "Result" && n.Result === t || n.$kind === "NestedResult" && n.NestedResult[0] === t)) {
180
+ if (!("NestedResult" in n) || n.NestedResult[1] === 0)
181
+ return h(R, structuredClone(e));
182
+ throw new Error(
183
+ `Cannot replace command ${t} with a specific result type: NestedResult[${t}, ${n.NestedResult[1]}] references a nested element that cannot be mapped to the replacement result`
184
+ );
185
+ }
186
+ switch (n.$kind) {
187
+ case "Result":
188
+ n.Result === t && typeof e == "number" && (n.Result = e), n.Result > t && (n.Result += i);
189
+ break;
190
+ case "NestedResult":
191
+ if (n.NestedResult[0] === t && typeof e == "number")
192
+ return {
193
+ $kind: "NestedResult",
194
+ NestedResult: [e, n.NestedResult[1]]
195
+ };
196
+ n.NestedResult[0] > t && (n.NestedResult[0] += i);
197
+ break;
198
+ }
199
+ return n;
200
+ });
201
+ }
202
+ replaceCommandWithTransaction(t, s, e) {
203
+ if (e.$kind !== "Result" && e.$kind !== "NestedResult")
204
+ throw new Error("Result must be of kind Result or NestedResult");
205
+ this.insertTransaction(t, s), this.replaceCommand(
206
+ t + s.commands.length,
207
+ [],
208
+ "Result" in e ? { NestedResult: [e.Result + t, 0] } : {
209
+ NestedResult: [
210
+ e.NestedResult[0] + t,
211
+ e.NestedResult[1]
212
+ ]
213
+ }
214
+ );
215
+ }
216
+ insertTransaction(t, s) {
217
+ var u, p;
218
+ const e = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
219
+ for (let a = 0; a < s.inputs.length; a++) {
220
+ const o = s.inputs[a], l = w(o);
221
+ let c = -1;
222
+ if (l !== void 0 && (c = this.inputs.findIndex((g) => w(g) === l), c !== -1 && ((u = this.inputs[c].Object) != null && u.SharedObject) && ((p = o.Object) != null && p.SharedObject) && (this.inputs[c].Object.SharedObject.mutable = this.inputs[c].Object.SharedObject.mutable || o.Object.SharedObject.mutable)), c !== -1)
223
+ e.set(a, c);
224
+ else {
225
+ const g = this.inputs.length;
226
+ this.inputs.push(o), e.set(a, g);
227
+ }
228
+ }
229
+ for (let a = 0; a < s.commands.length; a++)
230
+ i.set(a, t + a);
231
+ const n = [];
232
+ for (let a = 0; a < s.commands.length; a++) {
233
+ const o = structuredClone(s.commands[a]);
234
+ D(o, e, i), n.push(o);
235
+ }
236
+ this.commands.splice(t, 0, ...n);
237
+ const r = n.length;
238
+ r > 0 && this.mapArguments((a, o, l) => {
239
+ if (l >= t && l < t + n.length)
240
+ return a;
241
+ switch (a.$kind) {
242
+ case "Result":
243
+ a.Result >= t && (a.Result += r);
244
+ break;
245
+ case "NestedResult":
246
+ a.NestedResult[0] >= t && (a.NestedResult[0] += r);
247
+ break;
248
+ }
249
+ return a;
250
+ });
251
+ }
252
+ getDigest() {
253
+ const t = this.build({ onlyTransactionKind: !1 });
254
+ return m.getDigestFromBytes(t);
255
+ }
256
+ snapshot() {
257
+ return h(f, this);
258
+ }
259
+ shallowClone() {
260
+ return new m({
261
+ version: this.version,
262
+ sender: this.sender,
263
+ expiration: this.expiration,
264
+ gasData: {
265
+ ...this.gasData
266
+ },
267
+ inputs: [...this.inputs],
268
+ commands: [...this.commands]
269
+ });
270
+ }
271
+ applyResolvedData(t) {
272
+ this.sender || (this.sender = t.sender ?? null), this.expiration || (this.expiration = t.expiration ?? null), this.gasData.budget || (this.gasData.budget = t.gasData.budget), this.gasData.owner || (this.gasData.owner = t.gasData.owner ?? null), this.gasData.payment || (this.gasData.payment = t.gasData.payment), this.gasData.price || (this.gasData.price = t.gasData.price);
273
+ for (let s = 0; s < this.inputs.length; s++) {
274
+ const e = this.inputs[s], i = t.inputs[s];
275
+ switch (e.$kind) {
276
+ case "UnresolvedPure":
277
+ if (i.$kind !== "Pure")
278
+ throw new Error(
279
+ `Expected input at index ${s} to resolve to a Pure argument, but got ${JSON.stringify(
280
+ i
281
+ )}`
282
+ );
283
+ this.inputs[s] = i;
284
+ break;
285
+ case "UnresolvedObject":
286
+ if (i.$kind !== "Object")
287
+ throw new Error(
288
+ `Expected input at index ${s} to resolve to an Object argument, but got ${JSON.stringify(
289
+ i
290
+ )}`
291
+ );
292
+ if (i.Object.$kind === "ImmOrOwnedObject" || i.Object.$kind === "Receiving") {
293
+ const n = e.UnresolvedObject, r = i.Object.ImmOrOwnedObject ?? i.Object.Receiving;
294
+ if (d(n.objectId) !== d(r.objectId) || n.version != null && n.version !== r.version || n.digest != null && n.digest !== r.digest || // Objects with shared object properties should not resolve to owned objects
295
+ n.mutable != null || n.initialSharedVersion != null)
296
+ throw new Error(
297
+ `Input at index ${s} did not match unresolved object. ${JSON.stringify(n)} is not compatible with ${JSON.stringify(r)}`
298
+ );
299
+ } else if (i.Object.$kind === "SharedObject") {
300
+ const n = e.UnresolvedObject, r = i.Object.SharedObject;
301
+ if (d(n.objectId) !== d(r.objectId) || n.initialSharedVersion != null && n.initialSharedVersion !== r.initialSharedVersion || n.mutable != null && n.mutable !== r.mutable || // Objects with owned object properties should not resolve to shared objects
302
+ n.version != null || n.digest != null)
303
+ throw new Error(
304
+ `Input at index ${s} did not match unresolved object. ${JSON.stringify(n)} is not compatible with ${JSON.stringify(r)}`
305
+ );
306
+ } else
307
+ throw new Error(
308
+ `Input at index ${s} resolved to an unexpected Object kind: ${JSON.stringify(
309
+ i.Object
310
+ )}`
311
+ );
312
+ this.inputs[s] = i;
313
+ break;
314
+ }
315
+ }
316
+ }
317
+ }
57
318
  export {
58
- d as Inputs
319
+ m as TransactionDataBuilder
59
320
  };
package/dist/index311.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./index310.cjs"),t=require("./index320.cjs"),d=require("./index321.cjs");function c(e,n){return!!(e.inputs.some(r=>r.UnresolvedObject||r.UnresolvedPure)||!n.onlyTransactionKind&&(!e.gasConfig.price||!e.gasConfig.budget||!e.gasConfig.payment))}async function a(e,n,r){var s;if(g(e),!c(e,n))return await o(e),r();const i=l(n);return(((s=i.core)==null?void 0:s.resolveTransactionPlugin())??d.jsonRpcClientResolveTransactionPlugin(i))(e,n,async()=>{await o(e),await r()})}function o(e){e.inputs.forEach((n,r)=>{if(n.$kind!=="Object"&&n.$kind!=="Pure")throw new Error(`Input at index ${r} has not been resolved. Expected a Pure or Object input, but found ${JSON.stringify(n)}`)})}function l(e){if(!e.client)throw new Error("No sui client passed to Transaction#build, but transaction data was not sufficient to build offline.");return e.client}function g(e){for(const n of e.commands)switch(n.$kind){case"SplitCoins":n.SplitCoins.amounts.forEach(r=>{u(r,t.bcs.U64,e)});break;case"TransferObjects":u(n.TransferObjects.address,t.bcs.Address,e);break}}function u(e,n,r){if(e.$kind!=="Input")return;const i=r.inputs[e.Input];i.$kind==="UnresolvedPure"&&(r.inputs[e.Input]=f.Inputs.Pure(n.serialize(i.UnresolvedPure.value)))}exports.getClient=l;exports.needsTransactionResolution=c;exports.resolveTransactionPlugin=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index117.cjs");function l(e){if(typeof e=="string")return r.normalizeSuiAddress(e);if(e.Object)return e.Object.ImmOrOwnedObject?r.normalizeSuiAddress(e.Object.ImmOrOwnedObject.objectId):e.Object.Receiving?r.normalizeSuiAddress(e.Object.Receiving.objectId):r.normalizeSuiAddress(e.Object.SharedObject.objectId);if(e.UnresolvedObject)return r.normalizeSuiAddress(e.UnresolvedObject.objectId)}function c(e,o,u){const s=t=>{switch(t.$kind){case"Input":{const n=o.get(t.Input);if(n===void 0)throw new Error(`Input ${t.Input} not found in input mapping`);return{...t,Input:n}}case"Result":{const n=u.get(t.Result);return n!==void 0?{...t,Result:n}:t}case"NestedResult":{const n=u.get(t.NestedResult[0]);return n!==void 0?{...t,NestedResult:[n,t.NestedResult[1]]}:t}default:return t}};switch(e.$kind){case"MoveCall":e.MoveCall.arguments=e.MoveCall.arguments.map(s);break;case"TransferObjects":e.TransferObjects.objects=e.TransferObjects.objects.map(s),e.TransferObjects.address=s(e.TransferObjects.address);break;case"SplitCoins":e.SplitCoins.coin=s(e.SplitCoins.coin),e.SplitCoins.amounts=e.SplitCoins.amounts.map(s);break;case"MergeCoins":e.MergeCoins.destination=s(e.MergeCoins.destination),e.MergeCoins.sources=e.MergeCoins.sources.map(s);break;case"MakeMoveVec":e.MakeMoveVec.elements=e.MakeMoveVec.elements.map(s);break;case"Upgrade":e.Upgrade.ticket=s(e.Upgrade.ticket);break;case"$Intent":{const t=e.$Intent.inputs;e.$Intent.inputs={};for(const[n,i]of Object.entries(t))e.$Intent.inputs[n]=Array.isArray(i)?i.map(s):s(i);break}}}exports.getIdFromCallArg=l;exports.remapCommandArguments=c;
package/dist/index311.js CHANGED
@@ -1,56 +1,62 @@
1
- import { Inputs as c } from "./index310.js";
2
- import { bcs as o } from "./index320.js";
3
- import { jsonRpcClientResolveTransactionPlugin as f } from "./index321.js";
4
- function l(n, e) {
5
- return !!(n.inputs.some((r) => r.UnresolvedObject || r.UnresolvedPure) || !e.onlyTransactionKind && (!n.gasConfig.price || !n.gasConfig.budget || !n.gasConfig.payment));
1
+ import { normalizeSuiAddress as r } from "./index117.js";
2
+ function b(e) {
3
+ if (typeof e == "string")
4
+ return r(e);
5
+ if (e.Object)
6
+ return e.Object.ImmOrOwnedObject ? r(e.Object.ImmOrOwnedObject.objectId) : e.Object.Receiving ? r(e.Object.Receiving.objectId) : r(e.Object.SharedObject.objectId);
7
+ if (e.UnresolvedObject)
8
+ return r(e.UnresolvedObject.objectId);
6
9
  }
7
- async function w(n, e, r) {
8
- var s;
9
- if (a(n), !l(n, e))
10
- return await t(n), r();
11
- const i = d(e);
12
- return (((s = i.core) == null ? void 0 : s.resolveTransactionPlugin()) ?? f(i))(n, e, async () => {
13
- await t(n), await r();
14
- });
15
- }
16
- function t(n) {
17
- n.inputs.forEach((e, r) => {
18
- if (e.$kind !== "Object" && e.$kind !== "Pure")
19
- throw new Error(
20
- `Input at index ${r} has not been resolved. Expected a Pure or Object input, but found ${JSON.stringify(
21
- e
22
- )}`
23
- );
24
- });
25
- }
26
- function d(n) {
27
- if (!n.client)
28
- throw new Error(
29
- "No sui client passed to Transaction#build, but transaction data was not sufficient to build offline."
30
- );
31
- return n.client;
32
- }
33
- function a(n) {
34
- for (const e of n.commands)
35
- switch (e.$kind) {
36
- case "SplitCoins":
37
- e.SplitCoins.amounts.forEach((r) => {
38
- u(r, o.U64, n);
39
- });
40
- break;
41
- case "TransferObjects":
42
- u(e.TransferObjects.address, o.Address, n);
43
- break;
10
+ function p(e, o, u) {
11
+ const s = (t) => {
12
+ switch (t.$kind) {
13
+ case "Input": {
14
+ const n = o.get(t.Input);
15
+ if (n === void 0)
16
+ throw new Error(`Input ${t.Input} not found in input mapping`);
17
+ return { ...t, Input: n };
18
+ }
19
+ case "Result": {
20
+ const n = u.get(t.Result);
21
+ return n !== void 0 ? { ...t, Result: n } : t;
22
+ }
23
+ case "NestedResult": {
24
+ const n = u.get(t.NestedResult[0]);
25
+ return n !== void 0 ? { ...t, NestedResult: [n, t.NestedResult[1]] } : t;
26
+ }
27
+ default:
28
+ return t;
44
29
  }
45
- }
46
- function u(n, e, r) {
47
- if (n.$kind !== "Input")
48
- return;
49
- const i = r.inputs[n.Input];
50
- i.$kind === "UnresolvedPure" && (r.inputs[n.Input] = c.Pure(e.serialize(i.UnresolvedPure.value)));
30
+ };
31
+ switch (e.$kind) {
32
+ case "MoveCall":
33
+ e.MoveCall.arguments = e.MoveCall.arguments.map(s);
34
+ break;
35
+ case "TransferObjects":
36
+ e.TransferObjects.objects = e.TransferObjects.objects.map(s), e.TransferObjects.address = s(e.TransferObjects.address);
37
+ break;
38
+ case "SplitCoins":
39
+ e.SplitCoins.coin = s(e.SplitCoins.coin), e.SplitCoins.amounts = e.SplitCoins.amounts.map(s);
40
+ break;
41
+ case "MergeCoins":
42
+ e.MergeCoins.destination = s(e.MergeCoins.destination), e.MergeCoins.sources = e.MergeCoins.sources.map(s);
43
+ break;
44
+ case "MakeMoveVec":
45
+ e.MakeMoveVec.elements = e.MakeMoveVec.elements.map(s);
46
+ break;
47
+ case "Upgrade":
48
+ e.Upgrade.ticket = s(e.Upgrade.ticket);
49
+ break;
50
+ case "$Intent": {
51
+ const t = e.$Intent.inputs;
52
+ e.$Intent.inputs = {};
53
+ for (const [n, i] of Object.entries(t))
54
+ e.$Intent.inputs[n] = Array.isArray(i) ? i.map(s) : s(i);
55
+ break;
56
+ }
57
+ }
51
58
  }
52
59
  export {
53
- d as getClient,
54
- l as needsTransactionResolution,
55
- w as resolveTransactionPlugin
60
+ b as getIdFromCallArg,
61
+ p as remapCommandArguments
56
62
  };
package/dist/index312.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index310.cjs");function b(d){function e(t){return d(t)}return e.system=t=>{const r=t==null?void 0:t.mutable;return e(r!==void 0?c.Inputs.SharedObjectRef({objectId:"0x5",initialSharedVersion:1,mutable:r}):{$kind:"UnresolvedObject",UnresolvedObject:{objectId:"0x5",initialSharedVersion:1}})},e.clock=()=>e(c.Inputs.SharedObjectRef({objectId:"0x6",initialSharedVersion:1,mutable:!1})),e.random=()=>e({$kind:"UnresolvedObject",UnresolvedObject:{objectId:"0x8",mutable:!1}}),e.denyList=t=>e({$kind:"UnresolvedObject",UnresolvedObject:{objectId:"0x403",mutable:t==null?void 0:t.mutable}}),e.option=({type:t,value:r})=>n=>n.moveCall({typeArguments:[t],target:`0x1::option::${r===null?"none":"some"}`,arguments:r===null?[]:[n.object(r)]}),e}exports.createObjectMethods=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./index120.cjs"),o=t=>async(n,r,a)=>{const e=s.findNamesInTransaction(n);if(e.types.length===0&&e.packages.length===0)return a();const c=await i(r).core.mvr.resolve({types:e.types,packages:e.packages});s.replaceNames(n,c),await a()};function i(t){if(!t.client)throw new Error("No sui client passed to Transaction#build, but transaction data was not sufficient to build offline.");return t.client}exports.getClient=i;exports.namedPackagesPlugin=o;
package/dist/index312.js CHANGED
@@ -1,47 +1,22 @@
1
- import { Inputs as d } from "./index310.js";
2
- function l(b) {
3
- function e(t) {
4
- return b(t);
5
- }
6
- return e.system = (t) => {
7
- const r = t == null ? void 0 : t.mutable;
8
- return e(
9
- r !== void 0 ? d.SharedObjectRef({
10
- objectId: "0x5",
11
- initialSharedVersion: 1,
12
- mutable: r
13
- }) : {
14
- $kind: "UnresolvedObject",
15
- UnresolvedObject: {
16
- objectId: "0x5",
17
- initialSharedVersion: 1
18
- }
19
- }
1
+ import { findNamesInTransaction as r, replaceNames as o } from "./index120.js";
2
+ const p = (t) => async (n, s, a) => {
3
+ const e = r(n);
4
+ if (e.types.length === 0 && e.packages.length === 0)
5
+ return a();
6
+ const i = await c(s).core.mvr.resolve({
7
+ types: e.types,
8
+ packages: e.packages
9
+ });
10
+ o(n, i), await a();
11
+ };
12
+ function c(t) {
13
+ if (!t.client)
14
+ throw new Error(
15
+ "No sui client passed to Transaction#build, but transaction data was not sufficient to build offline."
20
16
  );
21
- }, e.clock = () => e(
22
- d.SharedObjectRef({
23
- objectId: "0x6",
24
- initialSharedVersion: 1,
25
- mutable: !1
26
- })
27
- ), e.random = () => e({
28
- $kind: "UnresolvedObject",
29
- UnresolvedObject: {
30
- objectId: "0x8",
31
- mutable: !1
32
- }
33
- }), e.denyList = (t) => e({
34
- $kind: "UnresolvedObject",
35
- UnresolvedObject: {
36
- objectId: "0x403",
37
- mutable: t == null ? void 0 : t.mutable
38
- }
39
- }), e.option = ({ type: t, value: r }) => (n) => n.moveCall({
40
- typeArguments: [t],
41
- target: `0x1::option::${r === null ? "none" : "some"}`,
42
- arguments: r === null ? [] : [n.object(r)]
43
- }), e;
17
+ return t.client;
44
18
  }
45
19
  export {
46
- l as createObjectMethods
20
+ c as getClient,
21
+ p as namedPackagesPlugin
47
22
  };
package/dist/index313.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index304.cjs"),i=require("./index320.cjs"),t=require("./index366.cjs");function n(r){function e(s,c){if(typeof s=="string")return r(t.pureBcsSchemaFromTypeName(s).serialize(c));if(s instanceof Uint8Array||o.isSerializedBcs(s))return r(s);throw new Error("tx.pure must be called either a bcs type name, or a serialized bcs value")}return e.u8=s=>r(i.bcs.U8.serialize(s)),e.u16=s=>r(i.bcs.U16.serialize(s)),e.u32=s=>r(i.bcs.U32.serialize(s)),e.u64=s=>r(i.bcs.U64.serialize(s)),e.u128=s=>r(i.bcs.U128.serialize(s)),e.u256=s=>r(i.bcs.U256.serialize(s)),e.bool=s=>r(i.bcs.Bool.serialize(s)),e.string=s=>r(i.bcs.String.serialize(s)),e.address=s=>r(i.bcs.Address.serialize(s)),e.id=e.address,e.vector=(s,c)=>r(i.bcs.vector(t.pureBcsSchemaFromTypeName(s)).serialize(c)),e.option=(s,c)=>r(i.bcs.option(t.pureBcsSchemaFromTypeName(s)).serialize(c)),e}exports.createPure=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index113.cjs"),l=require("./index114.cjs"),h=require("./index115.cjs");function f(e,n){switch(n){case"base58":return a.toBase58(e);case"base64":return l.toBase64(e);case"hex":return h.toHex(e);default:throw new Error("Unsupported encoding, supported values are: base64, hex")}}function p(e,n=["<",">"]){const[i,u]=n,s=[];let t="",o=0;for(let c=0;c<e.length;c++){const r=e[c];if(r===i&&o++,r===u&&o--,o===0&&r===","){s.push(t.trim()),t="";continue}t+=r}return s.push(t.trim()),s}exports.encodeStr=f;exports.splitGenericParameters=p;
package/dist/index313.js CHANGED
@@ -1,18 +1,32 @@
1
- import { isSerializedBcs as e } from "./index304.js";
2
- import { bcs as o } from "./index320.js";
3
- import { pureBcsSchemaFromTypeName as n } from "./index366.js";
4
- function f(s) {
5
- function r(i, t) {
6
- if (typeof i == "string")
7
- return s(n(i).serialize(t));
8
- if (i instanceof Uint8Array || e(i))
9
- return s(i);
10
- throw new Error("tx.pure must be called either a bcs type name, or a serialized bcs value");
1
+ import { toBase58 as a } from "./index113.js";
2
+ import { toBase64 as f } from "./index114.js";
3
+ import { toHex as p } from "./index115.js";
4
+ function d(e, o) {
5
+ switch (o) {
6
+ case "base58":
7
+ return a(e);
8
+ case "base64":
9
+ return f(e);
10
+ case "hex":
11
+ return p(e);
12
+ default:
13
+ throw new Error("Unsupported encoding, supported values are: base64, hex");
11
14
  }
12
- return r.u8 = (i) => s(o.U8.serialize(i)), r.u16 = (i) => s(o.U16.serialize(i)), r.u32 = (i) => s(o.U32.serialize(i)), r.u64 = (i) => s(o.U64.serialize(i)), r.u128 = (i) => s(o.U128.serialize(i)), r.u256 = (i) => s(o.U256.serialize(i)), r.bool = (i) => s(o.Bool.serialize(i)), r.string = (i) => s(o.String.serialize(i)), r.address = (i) => s(o.Address.serialize(i)), r.id = r.address, r.vector = (i, t) => s(
13
- o.vector(n(i)).serialize(t)
14
- ), r.option = (i, t) => s(o.option(n(i)).serialize(t)), r;
15
+ }
16
+ function g(e, o = ["<", ">"]) {
17
+ const [c, u] = o, n = [];
18
+ let t = "", s = 0;
19
+ for (let i = 0; i < e.length; i++) {
20
+ const r = e[i];
21
+ if (r === c && s++, r === u && s--, s === 0 && r === ",") {
22
+ n.push(t.trim()), t = "";
23
+ continue;
24
+ }
25
+ t += r;
26
+ }
27
+ return n.push(t.trim()), n;
15
28
  }
16
29
  export {
17
- f as createPure
30
+ d as encodeStr,
31
+ g as splitGenericParameters
18
32
  };
package/dist/index314.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("./index113.cjs"),h=require("./index305.cjs"),b=require("./index320.cjs"),d=require("./index117.cjs"),g=require("./index307.cjs"),y=require("./index308.cjs"),R=require("./index367.cjs"),w=require("./index315.cjs");function k(O){return d.normalizeSuiAddress(O).replace("0x","")}class c{constructor(t){this.version=2,this.sender=(t==null?void 0:t.sender)??null,this.expiration=(t==null?void 0:t.expiration)??null,this.inputs=(t==null?void 0:t.inputs)??[],this.commands=(t==null?void 0:t.commands)??[],this.gasData=(t==null?void 0:t.gasData)??{budget:null,price:null,owner:null,payment:null}}static fromKindBytes(t){const e=b.bcs.TransactionKind.parse(t).ProgrammableTransaction;if(!e)throw new Error("Unable to deserialize from bytes.");return c.restore({version:2,sender:null,expiration:null,gasData:{budget:null,owner:null,payment:null,price:null},inputs:e.inputs,commands:e.commands})}static fromBytes(t){const s=b.bcs.TransactionData.parse(t),e=s==null?void 0:s.V1,i=e.kind.ProgrammableTransaction;if(!e||!i)throw new Error("Unable to deserialize from bytes.");return c.restore({version:2,sender:e.sender,expiration:e.expiration,gasData:e.gasData,inputs:i.inputs,commands:i.commands})}static restore(t){return t.version===2?new c(h.parse(g.TransactionDataSchema,t)):new c(h.parse(g.TransactionDataSchema,y.transactionDataFromV1(t)))}static getDigestFromBytes(t){const s=R.hashTypedData("TransactionData",t);return j.toBase58(s)}get gasConfig(){return this.gasData}set gasConfig(t){this.gasData=t}build({maxSizeBytes:t=1/0,overrides:s,onlyTransactionKind:e}={}){const i=this.inputs,n=this.commands,r={ProgrammableTransaction:{inputs:i,commands:n}};if(e)return b.bcs.TransactionKind.serialize(r,{maxSize:t}).toBytes();const u=(s==null?void 0:s.expiration)??this.expiration,m=(s==null?void 0:s.sender)??this.sender,a={...this.gasData,...s==null?void 0:s.gasConfig,...s==null?void 0:s.gasData};if(!m)throw new Error("Missing transaction sender");if(!a.budget)throw new Error("Missing gas budget");if(!a.payment)throw new Error("Missing gas payment");if(!a.price)throw new Error("Missing gas price");const o={sender:k(m),expiration:u||{None:!0},gasData:{payment:a.payment,owner:k(this.gasData.owner??m),price:BigInt(a.price),budget:BigInt(a.budget)},kind:{ProgrammableTransaction:{inputs:i,commands:n}}};return b.bcs.TransactionData.serialize({V1:o},{maxSize:t}).toBytes()}addInput(t,s){const e=this.inputs.length;return this.inputs.push(s),{Input:e,type:t,$kind:"Input"}}getInputUses(t,s){this.mapArguments((e,i)=>(e.$kind==="Input"&&e.Input===t&&s(e,i),e))}mapCommandArguments(t,s){const e=this.commands[t];switch(e.$kind){case"MoveCall":e.MoveCall.arguments=e.MoveCall.arguments.map(n=>s(n,e,t));break;case"TransferObjects":e.TransferObjects.objects=e.TransferObjects.objects.map(n=>s(n,e,t)),e.TransferObjects.address=s(e.TransferObjects.address,e,t);break;case"SplitCoins":e.SplitCoins.coin=s(e.SplitCoins.coin,e,t),e.SplitCoins.amounts=e.SplitCoins.amounts.map(n=>s(n,e,t));break;case"MergeCoins":e.MergeCoins.destination=s(e.MergeCoins.destination,e,t),e.MergeCoins.sources=e.MergeCoins.sources.map(n=>s(n,e,t));break;case"MakeMoveVec":e.MakeMoveVec.elements=e.MakeMoveVec.elements.map(n=>s(n,e,t));break;case"Upgrade":e.Upgrade.ticket=s(e.Upgrade.ticket,e,t);break;case"$Intent":const i=e.$Intent.inputs;e.$Intent.inputs={};for(const[n,r]of Object.entries(i))e.$Intent.inputs[n]=Array.isArray(r)?r.map(u=>s(u,e,t)):s(r,e,t);break;case"Publish":break;default:throw new Error(`Unexpected transaction kind: ${e.$kind}`)}}mapArguments(t){for(const s of this.commands.keys())this.mapCommandArguments(s,t)}replaceCommand(t,s,e=t){if(!Array.isArray(s)){this.commands[t]=s;return}const i=s.length-1;this.commands.splice(t,1,...structuredClone(s)),this.mapArguments((n,r,u)=>{if(u<t+s.length)return n;if(typeof e!="number"&&(n.$kind==="Result"&&n.Result===t||n.$kind==="NestedResult"&&n.NestedResult[0]===t)){if(!("NestedResult"in n)||n.NestedResult[1]===0)return h.parse(g.ArgumentSchema,structuredClone(e));throw new Error(`Cannot replace command ${t} with a specific result type: NestedResult[${t}, ${n.NestedResult[1]}] references a nested element that cannot be mapped to the replacement result`)}switch(n.$kind){case"Result":n.Result===t&&typeof e=="number"&&(n.Result=e),n.Result>t&&(n.Result+=i);break;case"NestedResult":if(n.NestedResult[0]===t&&typeof e=="number")return{$kind:"NestedResult",NestedResult:[e,n.NestedResult[1]]};n.NestedResult[0]>t&&(n.NestedResult[0]+=i);break}return n})}replaceCommandWithTransaction(t,s,e){if(e.$kind!=="Result"&&e.$kind!=="NestedResult")throw new Error("Result must be of kind Result or NestedResult");this.insertTransaction(t,s),this.replaceCommand(t+s.commands.length,[],"Result"in e?{NestedResult:[e.Result+t,0]}:{NestedResult:[e.NestedResult[0]+t,e.NestedResult[1]]})}insertTransaction(t,s){var u,m;const e=new Map,i=new Map;for(let a=0;a<s.inputs.length;a++){const o=s.inputs[a],p=w.getIdFromCallArg(o);let l=-1;if(p!==void 0&&(l=this.inputs.findIndex(f=>w.getIdFromCallArg(f)===p),l!==-1&&((u=this.inputs[l].Object)!=null&&u.SharedObject)&&((m=o.Object)!=null&&m.SharedObject)&&(this.inputs[l].Object.SharedObject.mutable=this.inputs[l].Object.SharedObject.mutable||o.Object.SharedObject.mutable)),l!==-1)e.set(a,l);else{const f=this.inputs.length;this.inputs.push(o),e.set(a,f)}}for(let a=0;a<s.commands.length;a++)i.set(a,t+a);const n=[];for(let a=0;a<s.commands.length;a++){const o=structuredClone(s.commands[a]);w.remapCommandArguments(o,e,i),n.push(o)}this.commands.splice(t,0,...n);const r=n.length;r>0&&this.mapArguments((a,o,p)=>{if(p>=t&&p<t+n.length)return a;switch(a.$kind){case"Result":a.Result>=t&&(a.Result+=r);break;case"NestedResult":a.NestedResult[0]>=t&&(a.NestedResult[0]+=r);break}return a})}getDigest(){const t=this.build({onlyTransactionKind:!1});return c.getDigestFromBytes(t)}snapshot(){return h.parse(g.TransactionDataSchema,this)}shallowClone(){return new c({version:this.version,sender:this.sender,expiration:this.expiration,gasData:{...this.gasData},inputs:[...this.inputs],commands:[...this.commands]})}applyResolvedData(t){this.sender||(this.sender=t.sender??null),this.expiration||(this.expiration=t.expiration??null),this.gasData.budget||(this.gasData.budget=t.gasData.budget),this.gasData.owner||(this.gasData.owner=t.gasData.owner??null),this.gasData.payment||(this.gasData.payment=t.gasData.payment),this.gasData.price||(this.gasData.price=t.gasData.price);for(let s=0;s<this.inputs.length;s++){const e=this.inputs[s],i=t.inputs[s];switch(e.$kind){case"UnresolvedPure":if(i.$kind!=="Pure")throw new Error(`Expected input at index ${s} to resolve to a Pure argument, but got ${JSON.stringify(i)}`);this.inputs[s]=i;break;case"UnresolvedObject":if(i.$kind!=="Object")throw new Error(`Expected input at index ${s} to resolve to an Object argument, but got ${JSON.stringify(i)}`);if(i.Object.$kind==="ImmOrOwnedObject"||i.Object.$kind==="Receiving"){const n=e.UnresolvedObject,r=i.Object.ImmOrOwnedObject??i.Object.Receiving;if(d.normalizeSuiAddress(n.objectId)!==d.normalizeSuiAddress(r.objectId)||n.version!=null&&n.version!==r.version||n.digest!=null&&n.digest!==r.digest||n.mutable!=null||n.initialSharedVersion!=null)throw new Error(`Input at index ${s} did not match unresolved object. ${JSON.stringify(n)} is not compatible with ${JSON.stringify(r)}`)}else if(i.Object.$kind==="SharedObject"){const n=e.UnresolvedObject,r=i.Object.SharedObject;if(d.normalizeSuiAddress(n.objectId)!==d.normalizeSuiAddress(r.objectId)||n.initialSharedVersion!=null&&n.initialSharedVersion!==r.initialSharedVersion||n.mutable!=null&&n.mutable!==r.mutable||n.version!=null||n.digest!=null)throw new Error(`Input at index ${s} did not match unresolved object. ${JSON.stringify(n)} is not compatible with ${JSON.stringify(r)}`)}else throw new Error(`Input at index ${s} resolved to an unexpected Object kind: ${JSON.stringify(i.Object)}`);this.inputs[s]=i;break}}}}exports.TransactionDataBuilder=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function r(e,t){return Array.from({length:Math.ceil(e.length/t)},(u,n)=>e.slice(n*t,(n+1)*t))}exports.chunk=r;