@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/index331.js CHANGED
@@ -1,12 +1,240 @@
1
- function s(a) {
2
- var t;
3
- return {
4
- baseFeePerGas: a.baseFeePerGas.map((e) => BigInt(e)),
5
- gasUsedRatio: a.gasUsedRatio,
6
- oldestBlock: BigInt(a.oldestBlock),
7
- reward: (t = a.reward) == null ? void 0 : t.map((e) => e.map((r) => BigInt(r)))
8
- };
1
+ class k {
2
+ constructor(e, c) {
3
+ if (typeof e != "function")
4
+ throw new TypeError(
5
+ `DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but got: ${e}.`
6
+ );
7
+ this._batchLoadFn = e, this._maxBatchSize = p(c), this._batchScheduleFn = w(c), this._cacheKeyFn = g(c), this._cacheMap = b(c), this._batch = null, this.name = P(c);
8
+ }
9
+ /**
10
+ * Loads a key, returning a `Promise` for the value represented by that key.
11
+ */
12
+ load(e) {
13
+ if (e == null)
14
+ throw new TypeError(
15
+ `The loader.load() function must be called with a value, but got: ${String(e)}.`
16
+ );
17
+ const c = d(this), r = this._cacheMap;
18
+ let n;
19
+ if (r) {
20
+ n = this._cacheKeyFn(e);
21
+ const i = r.get(n);
22
+ if (i) {
23
+ const s = c.cacheHits || (c.cacheHits = []);
24
+ return new Promise((f) => {
25
+ s.push(() => {
26
+ f(i);
27
+ });
28
+ });
29
+ }
30
+ }
31
+ c.keys.push(e);
32
+ const a = new Promise((i, s) => {
33
+ c.callbacks.push({ resolve: i, reject: s });
34
+ });
35
+ return r && r.set(n, a), a;
36
+ }
37
+ /**
38
+ * Loads multiple keys, promising an array of values:
39
+ *
40
+ * var [ a, b ] = await myLoader.loadMany([ 'a', 'b' ]);
41
+ *
42
+ * This is similar to the more verbose:
43
+ *
44
+ * var [ a, b ] = await Promise.all([
45
+ * myLoader.load('a'),
46
+ * myLoader.load('b')
47
+ * ]);
48
+ *
49
+ * However it is different in the case where any load fails. Where
50
+ * Promise.all() would reject, loadMany() always resolves, however each result
51
+ * is either a value or an Error instance.
52
+ *
53
+ * var [ a, b, c ] = await myLoader.loadMany([ 'a', 'b', 'badkey' ]);
54
+ * // c instanceof Error
55
+ *
56
+ */
57
+ loadMany(e) {
58
+ if (!l(e))
59
+ throw new TypeError(
60
+ `The loader.loadMany() function must be called with Array<key>, but got: ${e}.`
61
+ );
62
+ const c = [];
63
+ for (let r = 0; r < e.length; r++)
64
+ c.push(this.load(e[r]).catch((n) => n));
65
+ return Promise.all(c);
66
+ }
67
+ /**
68
+ * Clears the value at `key` from the cache, if it exists. Returns itself for
69
+ * method chaining.
70
+ */
71
+ clear(e) {
72
+ const c = this._cacheMap;
73
+ if (c) {
74
+ const r = this._cacheKeyFn(e);
75
+ c.delete(r);
76
+ }
77
+ return this;
78
+ }
79
+ /**
80
+ * Clears the entire cache. To be used when some event results in unknown
81
+ * invalidations across this particular `DataLoader`. Returns itself for
82
+ * method chaining.
83
+ */
84
+ clearAll() {
85
+ const e = this._cacheMap;
86
+ return e && e.clear(), this;
87
+ }
88
+ /**
89
+ * Adds the provided key and value to the cache. If the key already
90
+ * exists, no change is made. Returns itself for method chaining.
91
+ *
92
+ * To prime the cache with an error at a key, provide an Error instance.
93
+ */
94
+ prime(e, c) {
95
+ const r = this._cacheMap;
96
+ if (r) {
97
+ const n = this._cacheKeyFn(e);
98
+ if (r.get(n) === void 0) {
99
+ let a;
100
+ c instanceof Error ? (a = Promise.reject(c), a.catch(() => {
101
+ })) : a = Promise.resolve(c), r.set(n, a);
102
+ }
103
+ }
104
+ return this;
105
+ }
106
+ }
107
+ const y = (
108
+ /** @ts-ignore */
109
+ typeof process == "object" && typeof process.nextTick == "function" ? function(t) {
110
+ o || (o = Promise.resolve()), o.then(() => {
111
+ process.nextTick(t);
112
+ });
113
+ } : (
114
+ // @ts-ignore
115
+ typeof setImmediate == "function" ? function(t) {
116
+ setImmediate(t);
117
+ } : function(t) {
118
+ setTimeout(t);
119
+ }
120
+ )
121
+ );
122
+ let o;
123
+ function d(t) {
124
+ const e = t._batch;
125
+ if (e !== null && !e.hasDispatched && e.keys.length < t._maxBatchSize)
126
+ return e;
127
+ const c = { hasDispatched: !1, keys: [], callbacks: [] };
128
+ return t._batch = c, t._batchScheduleFn(() => {
129
+ m(t, c);
130
+ }), c;
131
+ }
132
+ function m(t, e) {
133
+ if (e.hasDispatched = !0, e.keys.length === 0) {
134
+ u(e);
135
+ return;
136
+ }
137
+ let c;
138
+ try {
139
+ c = t._batchLoadFn(e.keys);
140
+ } catch (r) {
141
+ return h(
142
+ t,
143
+ e,
144
+ new TypeError(
145
+ `DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function errored synchronously: ${String(r)}.`
146
+ )
147
+ );
148
+ }
149
+ if (!c || typeof c.then != "function")
150
+ return h(
151
+ t,
152
+ e,
153
+ new TypeError(
154
+ `DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise: ${String(c)}.`
155
+ )
156
+ );
157
+ Promise.resolve(c).then((r) => {
158
+ if (!l(r))
159
+ throw new TypeError(
160
+ `DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array: ${String(r)}.`
161
+ );
162
+ if (r.length !== e.keys.length)
163
+ throw new TypeError(
164
+ `DataLoader must be constructed with a function which accepts Array<key> and returns Promise<Array<value>>, but the function did not return a Promise of an Array of the same length as the Array of keys.
165
+
166
+ Keys:
167
+ ${String(e.keys)}
168
+
169
+ Values:
170
+ ${String(r)}`
171
+ );
172
+ u(e);
173
+ for (let n = 0; n < e.callbacks.length; n++) {
174
+ const a = r[n];
175
+ a instanceof Error ? e.callbacks[n].reject(a) : e.callbacks[n].resolve(a);
176
+ }
177
+ }).catch((r) => {
178
+ h(t, e, r);
179
+ });
180
+ }
181
+ function h(t, e, c) {
182
+ u(e);
183
+ for (let r = 0; r < e.keys.length; r++)
184
+ t.clear(e.keys[r]), e.callbacks[r].reject(c);
185
+ }
186
+ function u(t) {
187
+ if (t.cacheHits)
188
+ for (let e = 0; e < t.cacheHits.length; e++)
189
+ t.cacheHits[e]();
190
+ }
191
+ function p(t) {
192
+ if (!(!t || t.batch !== !1))
193
+ return 1;
194
+ const c = t && t.maxBatchSize;
195
+ if (c === void 0)
196
+ return 1 / 0;
197
+ if (typeof c != "number" || c < 1)
198
+ throw new TypeError(`maxBatchSize must be a positive number: ${c}`);
199
+ return c;
200
+ }
201
+ function w(t) {
202
+ const e = t && t.batchScheduleFn;
203
+ if (e === void 0)
204
+ return y;
205
+ if (typeof e != "function")
206
+ throw new TypeError(`batchScheduleFn must be a function: ${e}`);
207
+ return e;
208
+ }
209
+ function g(t) {
210
+ const e = t && t.cacheKeyFn;
211
+ if (e === void 0)
212
+ return (c) => c;
213
+ if (typeof e != "function")
214
+ throw new TypeError(`cacheKeyFn must be a function: ${e}`);
215
+ return e;
216
+ }
217
+ function b(t) {
218
+ if (!(!t || t.cache !== !1))
219
+ return null;
220
+ const c = t && t.cacheMap;
221
+ if (c === void 0)
222
+ return /* @__PURE__ */ new Map();
223
+ if (c !== null) {
224
+ const n = ["get", "set", "delete", "clear"].filter(
225
+ (a) => c && typeof c[a] != "function"
226
+ );
227
+ if (n.length !== 0)
228
+ throw new TypeError("Custom cacheMap missing methods: " + n.join(", "));
229
+ }
230
+ return c;
231
+ }
232
+ function P(t) {
233
+ return t && t.name ? t.name : null;
234
+ }
235
+ function l(t) {
236
+ return typeof t == "object" && t !== null && "length" in t && typeof t.length == "number" && (t.length === 0 || t.length > 0 && Object.prototype.hasOwnProperty.call(t, t.length - 1));
9
237
  }
10
238
  export {
11
- s as formatFeeHistory
239
+ k as DataLoader
12
240
  };
package/dist/index332.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index71.cjs");function a(e){return e.map(n=>({...n,value:BigInt(n.value)}))}function r(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?t.hexToNumber(e.nonce):void 0,storageProof:e.storageProof?a(e.storageProof):void 0}}exports.formatProof=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index367.cjs"),e=require("./index368.cjs"),a=require("./index369.cjs"),n={...t.bcs,U8:t.bcs.u8(),U16:t.bcs.u16(),U32:t.bcs.u32(),U64:t.bcs.u64(),U128:t.bcs.u128(),U256:t.bcs.u256(),ULEB128:t.bcs.uleb128(),Bool:t.bcs.bool(),String:t.bcs.string(),Address:e.Address,AppId:e.AppId,Argument:e.Argument,CallArg:e.CallArg,Command:e.Command,CompressedSignature:e.CompressedSignature,GasData:e.GasData,Intent:e.Intent,IntentMessage:e.IntentMessage,IntentScope:e.IntentScope,IntentVersion:e.IntentVersion,MultiSig:e.MultiSig,MultiSigPkMap:e.MultiSigPkMap,MultiSigPublicKey:e.MultiSigPublicKey,ObjectArg:e.ObjectArg,ObjectDigest:e.ObjectDigest,Owner:e.Owner,PasskeyAuthenticator:e.PasskeyAuthenticator,ProgrammableMoveCall:e.ProgrammableMoveCall,ProgrammableTransaction:e.ProgrammableTransaction,PublicKey:e.PublicKey,SenderSignedData:e.SenderSignedData,SenderSignedTransaction:e.SenderSignedTransaction,SharedObjectRef:e.SharedObjectRef,StructTag:e.StructTag,SuiObjectRef:e.SuiObjectRef,TransactionData:e.TransactionData,TransactionDataV1:e.TransactionDataV1,TransactionEffects:a.TransactionEffects,TransactionExpiration:e.TransactionExpiration,TransactionKind:e.TransactionKind,TypeTag:e.TypeTag};exports.bcs=n;
package/dist/index332.js CHANGED
@@ -1,18 +1,50 @@
1
- import { hexToNumber as a } from "./index71.js";
2
- function t(e) {
3
- return e.map((n) => ({
4
- ...n,
5
- value: BigInt(n.value)
6
- }));
7
- }
8
- function o(e) {
9
- return {
10
- ...e,
11
- balance: e.balance ? BigInt(e.balance) : void 0,
12
- nonce: e.nonce ? a(e.nonce) : void 0,
13
- storageProof: e.storageProof ? t(e.storageProof) : void 0
14
- };
15
- }
1
+ import { bcs as t } from "./index367.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 "./index368.js";
3
+ import { TransactionEffects as h } from "./index369.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
+ };
16
48
  export {
17
- o as formatProof
49
+ V as bcs
18
50
  };
package/dist/index333.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index375.cjs"),b=require("./index350.cjs"),d=require("./index277.cjs");function m(...t){var e;const[o,r]=(()=>{if(Array.isArray(t[0])){const[s,f]=t;return[c(s),f]}return t})(),{bytecode:u,args:n}=r;return d.concat(u,(e=o.inputs)!=null&&e.length&&(n!=null&&n.length)?b.encode(o.inputs,n):"0x")}function y(t){return i.from(t)}function c(t){const o=t.find(r=>r.type==="constructor");if(!o)throw new i.NotFoundError({name:"constructor"});return o}exports.encode=m;exports.from=y;exports.fromAbi=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("./index317.cjs"),I=require("./index117.cjs"),w=require("./index370.cjs"),M=require("./index319.cjs"),b=require("./index322.cjs"),m=require("./index371.cjs"),U=require("./index330.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=$;
package/dist/index333.js CHANGED
@@ -1,28 +1,215 @@
1
- import { from as f, NotFoundError as s } from "./index375.js";
2
- import { encode as m } from "./index350.js";
3
- import { concat as p } from "./index277.js";
4
- function h(...o) {
5
- var c;
6
- const [n, r] = (() => {
7
- if (Array.isArray(o[0])) {
8
- const [e, u] = o;
9
- return [d(e), u];
1
+ import { parse as C } from "./index317.js";
2
+ import { normalizeSuiObjectId as w, normalizeSuiAddress as I } from "./index117.js";
3
+ import { SUI_TYPE_ARG as j } from "./index370.js";
4
+ import { ObjectRefSchema as U } from "./index319.js";
5
+ import { Inputs as m } from "./index322.js";
6
+ import { normalizedTypeToMoveTypeSignature as M, isTxContext as S, getPureBcsSchema as T } from "./index371.js";
7
+ import { chunk as R } from "./index330.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]])
92
+ );
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
+ }
10
127
  }
11
- return o;
12
- })(), { bytecode: i, args: t } = r;
13
- return p(i, (c = n.inputs) != null && c.length && (t != null && t.length) ? m(n.inputs, t) : "0x");
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;
14
200
  }
15
- function A(o) {
16
- return f(o);
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;
17
209
  }
18
- function d(o) {
19
- const n = o.find((r) => r.type === "constructor");
20
- if (!n)
21
- throw new s({ name: "constructor" });
22
- return n;
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";
23
212
  }
24
213
  export {
25
- h as encode,
26
- A as from,
27
- d as fromAbi
214
+ Y as jsonRpcClientResolveTransactionPlugin
28
215
  };
package/dist/index334.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index375.cjs"),l=require("./index350.cjs"),A=require("./index277.cjs");function y(...t){const[e,n=[]]=(()=>{if(Array.isArray(t[0])){const[m,g,a]=t;return[c(m,g,{args:a}),a]}const[b,d]=t;return[b,d]})(),{overloads:o}=e,i=o?c([e,...o],e.name,{args:n}):e,u=f(i),s=n.length>0?l.encode(i.inputs,n):void 0;return s?A.concat(u,s):u}function S(t,e={}){return r.from(t,e)}function c(t,e,n){const o=r.fromAbi(t,e,n);if(o.type!=="function")throw new r.NotFoundError({name:e,type:"function"});return o}function f(t){return r.getSelector(t)}exports.encodeData=y;exports.from=S;exports.fromAbi=c;exports.getSelector=f;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./index373.cjs"),m=require("./index374.cjs"),n=require("./index117.cjs"),l=require("./index116.cjs"),y=require("./index120.cjs"),d={mainnet:"https://mainnet.mvr.mystenlabs.com",testnet:"https://testnet.mvr.mystenlabs.com"};class p extends l.Experimental_BaseClient{constructor(e){var a,r,t;super(e),this.core=this,this.mvr=new y.MvrClient({cache:this.cache.scope("core.mvr"),url:((a=e.mvr)==null?void 0:a.url)??d[this.network],pageSize:(r=e.mvr)==null?void 0:r.pageSize,overrides:(t=e.mvr)==null?void 0:t.overrides})}async getObject(e){const{objectId:a}=e,{objects:[r]}=await this.getObjects({objectIds:[a],signal:e.signal});if(r instanceof Error)throw r;return{object:r}}async getDynamicField(e){const a=o.TypeTagSerializer.parseFromStr((await this.core.mvr.resolveType({type:e.name.type})).type),r=m.deriveDynamicFieldID(e.parentId,a,e.name.bcs),{objects:[t]}=await this.getObjects({objectIds:[r],signal:e.signal});if(t instanceof Error)throw t;const s=n.parseStructTag(t.type),i=await t.content;return{dynamicField:{id:t.id,digest:t.digest,version:t.version,type:t.type,previousTransaction:t.previousTransaction,name:{type:typeof s.typeParams[0]=="string"?s.typeParams[0]:n.normalizeStructTag(s.typeParams[0]),bcs:e.name.bcs},value:{type:typeof s.typeParams[1]=="string"?s.typeParams[1]:n.normalizeStructTag(s.typeParams[1]),bcs:i.slice(n.SUI_ADDRESS_LENGTH+e.name.bcs.length)}}}}async waitForTransaction({signal:e,timeout:a=60*1e3,...r}){const t=e?AbortSignal.any([AbortSignal.timeout(a),e]):AbortSignal.timeout(a),s=new Promise((i,c)=>{t.addEventListener("abort",()=>c(t.reason))});for(s.catch(()=>{});;){t.throwIfAborted();try{return await this.getTransaction({...r,signal:t})}catch{await Promise.race([new Promise(i=>setTimeout(i,2e3)),s])}}}}exports.Experimental_CoreClient=p;