@d8x/perpetuals-sdk 2.6.8 → 2.6.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 (221) hide show
  1. package/dist/cjs/abi/AMMPerpLogic.json +580 -0
  2. package/dist/cjs/abi/BeaconProxy.json +71 -0
  3. package/dist/cjs/abi/IPerpetualManager copy.json +5599 -0
  4. package/dist/cjs/abi/IPerpetualMarginViewLogic.json +286 -0
  5. package/dist/cjs/abi/Maintainer.json +774 -0
  6. package/dist/cjs/abi/MockToken.json +347 -0
  7. package/dist/cjs/abi/MockUSD.json +413 -0
  8. package/dist/cjs/abi/UUPSUpgradeable.json +104 -0
  9. package/dist/cjs/abi/WeETH.json +310 -0
  10. package/dist/cjs/abi-zkevm/IPerpetualManager.json +5366 -0
  11. package/dist/cjs/abi-zkevm/LimitOrderBook.json +910 -0
  12. package/dist/cjs/abi-zkevm/LimitOrderBookFactory.json +236 -0
  13. package/dist/cjs/config/priceFeedConfig.json +8 -51
  14. package/dist/cjs/contracts/AMMPerpLogic.d.ts +303 -0
  15. package/dist/cjs/contracts/AMMPerpLogic.js +3 -0
  16. package/dist/cjs/contracts/AMMPerpLogic.js.map +1 -0
  17. package/dist/cjs/contracts/BeaconProxy.d.ts +63 -0
  18. package/dist/cjs/contracts/BeaconProxy.js +3 -0
  19. package/dist/cjs/contracts/BeaconProxy.js.map +1 -0
  20. package/dist/cjs/contracts/IPerpetualManagerCopy.d.ts +3223 -0
  21. package/dist/cjs/contracts/IPerpetualManagerCopy.js +3 -0
  22. package/dist/cjs/contracts/IPerpetualManagerCopy.js.map +1 -0
  23. package/dist/cjs/contracts/IPerpetualMarginViewLogic.d.ts +183 -0
  24. package/dist/cjs/contracts/IPerpetualMarginViewLogic.js +3 -0
  25. package/dist/cjs/contracts/IPerpetualMarginViewLogic.js.map +1 -0
  26. package/dist/cjs/contracts/Maintainer.d.ts +799 -0
  27. package/dist/cjs/contracts/Maintainer.js +3 -0
  28. package/dist/cjs/contracts/Maintainer.js.map +1 -0
  29. package/dist/cjs/contracts/MockToken.d.ts +263 -0
  30. package/dist/cjs/contracts/MockToken.js +3 -0
  31. package/dist/cjs/contracts/MockToken.js.map +1 -0
  32. package/dist/cjs/contracts/MockUSD.d.ts +186 -0
  33. package/dist/cjs/contracts/MockUSD.js +3 -0
  34. package/dist/cjs/contracts/MockUSD.js.map +1 -0
  35. package/dist/cjs/contracts/UUPSUpgradeable.d.ts +118 -0
  36. package/dist/cjs/contracts/UUPSUpgradeable.js +3 -0
  37. package/dist/cjs/contracts/UUPSUpgradeable.js.map +1 -0
  38. package/dist/cjs/contracts/WeETH.d.ts +503 -0
  39. package/dist/cjs/contracts/WeETH.js +3 -0
  40. package/dist/cjs/contracts/WeETH.js.map +1 -0
  41. package/dist/cjs/contracts/factories/AMMPerpLogic__factory.d.ts +452 -0
  42. package/dist/cjs/contracts/factories/AMMPerpLogic__factory.js +598 -0
  43. package/dist/cjs/contracts/factories/AMMPerpLogic__factory.js.map +1 -0
  44. package/dist/cjs/contracts/factories/BeaconProxy__factory.d.ts +61 -0
  45. package/dist/cjs/contracts/factories/BeaconProxy__factory.js +89 -0
  46. package/dist/cjs/contracts/factories/BeaconProxy__factory.js.map +1 -0
  47. package/dist/cjs/contracts/factories/IPerpetualManagerCopy__factory.d.ts +4358 -0
  48. package/dist/cjs/contracts/factories/IPerpetualManagerCopy__factory.js +5617 -0
  49. package/dist/cjs/contracts/factories/IPerpetualManagerCopy__factory.js.map +1 -0
  50. package/dist/cjs/contracts/factories/IPerpetualMarginViewLogic__factory.d.ts +221 -0
  51. package/dist/cjs/contracts/factories/IPerpetualMarginViewLogic__factory.js +304 -0
  52. package/dist/cjs/contracts/factories/IPerpetualMarginViewLogic__factory.js.map +1 -0
  53. package/dist/cjs/contracts/factories/Maintainer__factory.d.ts +609 -0
  54. package/dist/cjs/contracts/factories/Maintainer__factory.js +792 -0
  55. package/dist/cjs/contracts/factories/Maintainer__factory.js.map +1 -0
  56. package/dist/cjs/contracts/factories/MockToken__factory.d.ts +273 -0
  57. package/dist/cjs/contracts/factories/MockToken__factory.js +365 -0
  58. package/dist/cjs/contracts/factories/MockToken__factory.js.map +1 -0
  59. package/dist/cjs/contracts/factories/MockUSD__factory.d.ts +320 -0
  60. package/dist/cjs/contracts/factories/MockUSD__factory.js +431 -0
  61. package/dist/cjs/contracts/factories/MockUSD__factory.js.map +1 -0
  62. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.d.ts +87 -0
  63. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js +122 -0
  64. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js.map +1 -0
  65. package/dist/cjs/contracts/factories/WeETH__factory.d.ts +545 -0
  66. package/dist/cjs/contracts/factories/WeETH__factory.js +721 -0
  67. package/dist/cjs/contracts/factories/WeETH__factory.js.map +1 -0
  68. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.d.ts +4136 -0
  69. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js +5324 -0
  70. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js.map +1 -0
  71. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +189 -0
  72. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js +254 -0
  73. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +1 -0
  74. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.d.ts +715 -0
  75. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js +928 -0
  76. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js.map +1 -0
  77. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.d.ts +344 -0
  78. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js +456 -0
  79. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js.map +1 -0
  80. package/dist/cjs/contracts/factories/lean0/index.d.ts +4 -0
  81. package/dist/cjs/contracts/factories/lean0/index.js +15 -0
  82. package/dist/cjs/contracts/factories/lean0/index.js.map +1 -0
  83. package/dist/cjs/contracts/lean0/IPerpetualManager.d.ts +2821 -0
  84. package/dist/cjs/contracts/lean0/IPerpetualManager.js +3 -0
  85. package/dist/cjs/contracts/lean0/IPerpetualManager.js.map +1 -0
  86. package/dist/cjs/contracts/lean0/LimitOrderBook.d.ts +533 -0
  87. package/dist/cjs/contracts/lean0/LimitOrderBook.js +3 -0
  88. package/dist/cjs/contracts/lean0/LimitOrderBook.js.map +1 -0
  89. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.d.ts +210 -0
  90. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js +3 -0
  91. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js.map +1 -0
  92. package/dist/cjs/contracts/lean0/ShareToken.d.ts +320 -0
  93. package/dist/cjs/contracts/lean0/ShareToken.js +3 -0
  94. package/dist/cjs/contracts/lean0/ShareToken.js.map +1 -0
  95. package/dist/cjs/contracts/lean0/index.d.ts +4 -0
  96. package/dist/cjs/contracts/lean0/index.js +3 -0
  97. package/dist/cjs/contracts/lean0/index.js.map +1 -0
  98. package/dist/cjs/marketData.js +11 -4
  99. package/dist/cjs/marketData.js.map +1 -1
  100. package/dist/cjs/perpetualDataHandler.js +30 -16
  101. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  102. package/dist/cjs/version.d.ts +1 -1
  103. package/dist/cjs/version.js +1 -1
  104. package/dist/cjs/version.js.map +1 -1
  105. package/dist/esm/abi/AMMPerpLogic.json +580 -0
  106. package/dist/esm/abi/BeaconProxy.json +71 -0
  107. package/dist/esm/abi/IPerpetualManager copy.json +5599 -0
  108. package/dist/esm/abi/IPerpetualMarginViewLogic.json +286 -0
  109. package/dist/esm/abi/Maintainer.json +774 -0
  110. package/dist/esm/abi/MockToken.json +347 -0
  111. package/dist/esm/abi/MockUSD.json +413 -0
  112. package/dist/esm/abi/UUPSUpgradeable.json +104 -0
  113. package/dist/esm/abi/WeETH.json +310 -0
  114. package/dist/esm/abi/lean0/IPerpetualManager.json +5306 -0
  115. package/dist/esm/abi/lean0/LimitOrderBook.json +910 -0
  116. package/dist/esm/abi/lean0/LimitOrderBookFactory.json +236 -0
  117. package/dist/esm/abi/lean0/ShareToken.json +438 -0
  118. package/dist/esm/abi-zkevm/IPerpetualManager.json +5366 -0
  119. package/dist/esm/abi-zkevm/LimitOrderBook.json +910 -0
  120. package/dist/esm/abi-zkevm/LimitOrderBookFactory.json +236 -0
  121. package/dist/esm/config/priceFeedConfig.json +8 -51
  122. package/dist/esm/contracts/AMMPerpLogic.d.ts +303 -0
  123. package/dist/esm/contracts/AMMPerpLogic.js +2 -0
  124. package/dist/esm/contracts/AMMPerpLogic.js.map +1 -0
  125. package/dist/esm/contracts/BeaconProxy.d.ts +63 -0
  126. package/dist/esm/contracts/BeaconProxy.js +2 -0
  127. package/dist/esm/contracts/BeaconProxy.js.map +1 -0
  128. package/dist/esm/contracts/IPerpetualManagerCopy.d.ts +3223 -0
  129. package/dist/esm/contracts/IPerpetualManagerCopy.js +2 -0
  130. package/dist/esm/contracts/IPerpetualManagerCopy.js.map +1 -0
  131. package/dist/esm/contracts/IPerpetualMarginViewLogic.d.ts +183 -0
  132. package/dist/esm/contracts/IPerpetualMarginViewLogic.js +2 -0
  133. package/dist/esm/contracts/IPerpetualMarginViewLogic.js.map +1 -0
  134. package/dist/esm/contracts/Maintainer.d.ts +799 -0
  135. package/dist/esm/contracts/Maintainer.js +2 -0
  136. package/dist/esm/contracts/Maintainer.js.map +1 -0
  137. package/dist/esm/contracts/MockToken.d.ts +263 -0
  138. package/dist/esm/contracts/MockToken.js +2 -0
  139. package/dist/esm/contracts/MockToken.js.map +1 -0
  140. package/dist/esm/contracts/MockUSD.d.ts +186 -0
  141. package/dist/esm/contracts/MockUSD.js +2 -0
  142. package/dist/esm/contracts/MockUSD.js.map +1 -0
  143. package/dist/esm/contracts/UUPSUpgradeable.d.ts +118 -0
  144. package/dist/esm/contracts/UUPSUpgradeable.js +2 -0
  145. package/dist/esm/contracts/UUPSUpgradeable.js.map +1 -0
  146. package/dist/esm/contracts/WeETH.d.ts +503 -0
  147. package/dist/esm/contracts/WeETH.js +2 -0
  148. package/dist/esm/contracts/WeETH.js.map +1 -0
  149. package/dist/esm/contracts/factories/AMMPerpLogic__factory.d.ts +452 -0
  150. package/dist/esm/contracts/factories/AMMPerpLogic__factory.js +594 -0
  151. package/dist/esm/contracts/factories/AMMPerpLogic__factory.js.map +1 -0
  152. package/dist/esm/contracts/factories/BeaconProxy__factory.d.ts +61 -0
  153. package/dist/esm/contracts/factories/BeaconProxy__factory.js +85 -0
  154. package/dist/esm/contracts/factories/BeaconProxy__factory.js.map +1 -0
  155. package/dist/esm/contracts/factories/IPerpetualManagerCopy__factory.d.ts +4358 -0
  156. package/dist/esm/contracts/factories/IPerpetualManagerCopy__factory.js +5613 -0
  157. package/dist/esm/contracts/factories/IPerpetualManagerCopy__factory.js.map +1 -0
  158. package/dist/esm/contracts/factories/IPerpetualMarginViewLogic__factory.d.ts +221 -0
  159. package/dist/esm/contracts/factories/IPerpetualMarginViewLogic__factory.js +300 -0
  160. package/dist/esm/contracts/factories/IPerpetualMarginViewLogic__factory.js.map +1 -0
  161. package/dist/esm/contracts/factories/Maintainer__factory.d.ts +609 -0
  162. package/dist/esm/contracts/factories/Maintainer__factory.js +788 -0
  163. package/dist/esm/contracts/factories/Maintainer__factory.js.map +1 -0
  164. package/dist/esm/contracts/factories/MockToken__factory.d.ts +273 -0
  165. package/dist/esm/contracts/factories/MockToken__factory.js +361 -0
  166. package/dist/esm/contracts/factories/MockToken__factory.js.map +1 -0
  167. package/dist/esm/contracts/factories/MockUSD__factory.d.ts +320 -0
  168. package/dist/esm/contracts/factories/MockUSD__factory.js +427 -0
  169. package/dist/esm/contracts/factories/MockUSD__factory.js.map +1 -0
  170. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.d.ts +87 -0
  171. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js +118 -0
  172. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js.map +1 -0
  173. package/dist/esm/contracts/factories/WeETH__factory.d.ts +545 -0
  174. package/dist/esm/contracts/factories/WeETH__factory.js +717 -0
  175. package/dist/esm/contracts/factories/WeETH__factory.js.map +1 -0
  176. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.d.ts +4136 -0
  177. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js +5320 -0
  178. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js.map +1 -0
  179. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +189 -0
  180. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js +250 -0
  181. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +1 -0
  182. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.d.ts +715 -0
  183. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js +924 -0
  184. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js.map +1 -0
  185. package/dist/esm/contracts/factories/lean0/ShareToken__factory.d.ts +344 -0
  186. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js +452 -0
  187. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js.map +1 -0
  188. package/dist/esm/contracts/factories/lean0/index.d.ts +4 -0
  189. package/dist/esm/contracts/factories/lean0/index.js +8 -0
  190. package/dist/esm/contracts/factories/lean0/index.js.map +1 -0
  191. package/dist/esm/contracts/lean0/IPerpetualManager.d.ts +2821 -0
  192. package/dist/esm/contracts/lean0/IPerpetualManager.js +2 -0
  193. package/dist/esm/contracts/lean0/IPerpetualManager.js.map +1 -0
  194. package/dist/esm/contracts/lean0/LimitOrderBook.d.ts +533 -0
  195. package/dist/esm/contracts/lean0/LimitOrderBook.js +2 -0
  196. package/dist/esm/contracts/lean0/LimitOrderBook.js.map +1 -0
  197. package/dist/esm/contracts/lean0/LimitOrderBookFactory.d.ts +210 -0
  198. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js +2 -0
  199. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js.map +1 -0
  200. package/dist/esm/contracts/lean0/ShareToken.d.ts +320 -0
  201. package/dist/esm/contracts/lean0/ShareToken.js +2 -0
  202. package/dist/esm/contracts/lean0/ShareToken.js.map +1 -0
  203. package/dist/esm/contracts/lean0/index.d.ts +4 -0
  204. package/dist/esm/contracts/lean0/index.js +2 -0
  205. package/dist/esm/contracts/lean0/index.js.map +1 -0
  206. package/dist/esm/marketData.js +11 -4
  207. package/dist/esm/marketData.js.map +1 -1
  208. package/dist/esm/perpetualDataHandler.js +30 -16
  209. package/dist/esm/perpetualDataHandler.js.map +1 -1
  210. package/dist/esm/version.d.ts +1 -1
  211. package/dist/esm/version.js +1 -1
  212. package/dist/esm/version.js.map +1 -1
  213. package/package.json +1 -1
  214. package/src/config/priceFeedConfig.json +9 -51
  215. package/src/contracts/IPerpetualMarginViewLogic.ts +347 -0
  216. package/src/contracts/MockUSD.ts +378 -0
  217. package/src/contracts/factories/IPerpetualMarginViewLogic__factory.ts +313 -0
  218. package/src/contracts/factories/MockUSD__factory.ts +430 -0
  219. package/src/marketData.ts +10 -4
  220. package/src/perpetualDataHandler.ts +29 -17
  221. package/src/version.ts +1 -1
@@ -0,0 +1,430 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Interface, type ContractRunner } from "ethers";
6
+ import type { MockUSD, MockUSDInterface } from "../MockUSD";
7
+
8
+ const _abi = [
9
+ {
10
+ inputs: [
11
+ {
12
+ internalType: "uint8",
13
+ name: "_dec",
14
+ type: "uint8",
15
+ },
16
+ ],
17
+ stateMutability: "nonpayable",
18
+ type: "constructor",
19
+ },
20
+ {
21
+ inputs: [
22
+ {
23
+ internalType: "address",
24
+ name: "spender",
25
+ type: "address",
26
+ },
27
+ {
28
+ internalType: "uint256",
29
+ name: "allowance",
30
+ type: "uint256",
31
+ },
32
+ {
33
+ internalType: "uint256",
34
+ name: "needed",
35
+ type: "uint256",
36
+ },
37
+ ],
38
+ name: "ERC20InsufficientAllowance",
39
+ type: "error",
40
+ },
41
+ {
42
+ inputs: [
43
+ {
44
+ internalType: "address",
45
+ name: "sender",
46
+ type: "address",
47
+ },
48
+ {
49
+ internalType: "uint256",
50
+ name: "balance",
51
+ type: "uint256",
52
+ },
53
+ {
54
+ internalType: "uint256",
55
+ name: "needed",
56
+ type: "uint256",
57
+ },
58
+ ],
59
+ name: "ERC20InsufficientBalance",
60
+ type: "error",
61
+ },
62
+ {
63
+ inputs: [
64
+ {
65
+ internalType: "address",
66
+ name: "approver",
67
+ type: "address",
68
+ },
69
+ ],
70
+ name: "ERC20InvalidApprover",
71
+ type: "error",
72
+ },
73
+ {
74
+ inputs: [
75
+ {
76
+ internalType: "address",
77
+ name: "receiver",
78
+ type: "address",
79
+ },
80
+ ],
81
+ name: "ERC20InvalidReceiver",
82
+ type: "error",
83
+ },
84
+ {
85
+ inputs: [
86
+ {
87
+ internalType: "address",
88
+ name: "sender",
89
+ type: "address",
90
+ },
91
+ ],
92
+ name: "ERC20InvalidSender",
93
+ type: "error",
94
+ },
95
+ {
96
+ inputs: [
97
+ {
98
+ internalType: "address",
99
+ name: "spender",
100
+ type: "address",
101
+ },
102
+ ],
103
+ name: "ERC20InvalidSpender",
104
+ type: "error",
105
+ },
106
+ {
107
+ inputs: [
108
+ {
109
+ internalType: "address",
110
+ name: "owner",
111
+ type: "address",
112
+ },
113
+ ],
114
+ name: "OwnableInvalidOwner",
115
+ type: "error",
116
+ },
117
+ {
118
+ inputs: [
119
+ {
120
+ internalType: "address",
121
+ name: "account",
122
+ type: "address",
123
+ },
124
+ ],
125
+ name: "OwnableUnauthorizedAccount",
126
+ type: "error",
127
+ },
128
+ {
129
+ anonymous: false,
130
+ inputs: [
131
+ {
132
+ indexed: true,
133
+ internalType: "address",
134
+ name: "owner",
135
+ type: "address",
136
+ },
137
+ {
138
+ indexed: true,
139
+ internalType: "address",
140
+ name: "spender",
141
+ type: "address",
142
+ },
143
+ {
144
+ indexed: false,
145
+ internalType: "uint256",
146
+ name: "value",
147
+ type: "uint256",
148
+ },
149
+ ],
150
+ name: "Approval",
151
+ type: "event",
152
+ },
153
+ {
154
+ anonymous: false,
155
+ inputs: [
156
+ {
157
+ indexed: true,
158
+ internalType: "address",
159
+ name: "previousOwner",
160
+ type: "address",
161
+ },
162
+ {
163
+ indexed: true,
164
+ internalType: "address",
165
+ name: "newOwner",
166
+ type: "address",
167
+ },
168
+ ],
169
+ name: "OwnershipTransferred",
170
+ type: "event",
171
+ },
172
+ {
173
+ anonymous: false,
174
+ inputs: [
175
+ {
176
+ indexed: true,
177
+ internalType: "address",
178
+ name: "from",
179
+ type: "address",
180
+ },
181
+ {
182
+ indexed: true,
183
+ internalType: "address",
184
+ name: "to",
185
+ type: "address",
186
+ },
187
+ {
188
+ indexed: false,
189
+ internalType: "uint256",
190
+ name: "value",
191
+ type: "uint256",
192
+ },
193
+ ],
194
+ name: "Transfer",
195
+ type: "event",
196
+ },
197
+ {
198
+ inputs: [
199
+ {
200
+ internalType: "address",
201
+ name: "owner",
202
+ type: "address",
203
+ },
204
+ {
205
+ internalType: "address",
206
+ name: "spender",
207
+ type: "address",
208
+ },
209
+ ],
210
+ name: "allowance",
211
+ outputs: [
212
+ {
213
+ internalType: "uint256",
214
+ name: "",
215
+ type: "uint256",
216
+ },
217
+ ],
218
+ stateMutability: "view",
219
+ type: "function",
220
+ },
221
+ {
222
+ inputs: [
223
+ {
224
+ internalType: "address",
225
+ name: "spender",
226
+ type: "address",
227
+ },
228
+ {
229
+ internalType: "uint256",
230
+ name: "value",
231
+ type: "uint256",
232
+ },
233
+ ],
234
+ name: "approve",
235
+ outputs: [
236
+ {
237
+ internalType: "bool",
238
+ name: "",
239
+ type: "bool",
240
+ },
241
+ ],
242
+ stateMutability: "nonpayable",
243
+ type: "function",
244
+ },
245
+ {
246
+ inputs: [
247
+ {
248
+ internalType: "address",
249
+ name: "account",
250
+ type: "address",
251
+ },
252
+ ],
253
+ name: "balanceOf",
254
+ outputs: [
255
+ {
256
+ internalType: "uint256",
257
+ name: "",
258
+ type: "uint256",
259
+ },
260
+ ],
261
+ stateMutability: "view",
262
+ type: "function",
263
+ },
264
+ {
265
+ inputs: [],
266
+ name: "decimals",
267
+ outputs: [
268
+ {
269
+ internalType: "uint8",
270
+ name: "",
271
+ type: "uint8",
272
+ },
273
+ ],
274
+ stateMutability: "view",
275
+ type: "function",
276
+ },
277
+ {
278
+ inputs: [
279
+ {
280
+ internalType: "address",
281
+ name: "_account",
282
+ type: "address",
283
+ },
284
+ {
285
+ internalType: "uint256",
286
+ name: "_amount",
287
+ type: "uint256",
288
+ },
289
+ ],
290
+ name: "mint",
291
+ outputs: [],
292
+ stateMutability: "nonpayable",
293
+ type: "function",
294
+ },
295
+ {
296
+ inputs: [],
297
+ name: "name",
298
+ outputs: [
299
+ {
300
+ internalType: "string",
301
+ name: "",
302
+ type: "string",
303
+ },
304
+ ],
305
+ stateMutability: "view",
306
+ type: "function",
307
+ },
308
+ {
309
+ inputs: [],
310
+ name: "owner",
311
+ outputs: [
312
+ {
313
+ internalType: "address",
314
+ name: "",
315
+ type: "address",
316
+ },
317
+ ],
318
+ stateMutability: "view",
319
+ type: "function",
320
+ },
321
+ {
322
+ inputs: [],
323
+ name: "renounceOwnership",
324
+ outputs: [],
325
+ stateMutability: "nonpayable",
326
+ type: "function",
327
+ },
328
+ {
329
+ inputs: [],
330
+ name: "symbol",
331
+ outputs: [
332
+ {
333
+ internalType: "string",
334
+ name: "",
335
+ type: "string",
336
+ },
337
+ ],
338
+ stateMutability: "view",
339
+ type: "function",
340
+ },
341
+ {
342
+ inputs: [],
343
+ name: "totalSupply",
344
+ outputs: [
345
+ {
346
+ internalType: "uint256",
347
+ name: "",
348
+ type: "uint256",
349
+ },
350
+ ],
351
+ stateMutability: "view",
352
+ type: "function",
353
+ },
354
+ {
355
+ inputs: [
356
+ {
357
+ internalType: "address",
358
+ name: "to",
359
+ type: "address",
360
+ },
361
+ {
362
+ internalType: "uint256",
363
+ name: "value",
364
+ type: "uint256",
365
+ },
366
+ ],
367
+ name: "transfer",
368
+ outputs: [
369
+ {
370
+ internalType: "bool",
371
+ name: "",
372
+ type: "bool",
373
+ },
374
+ ],
375
+ stateMutability: "nonpayable",
376
+ type: "function",
377
+ },
378
+ {
379
+ inputs: [
380
+ {
381
+ internalType: "address",
382
+ name: "from",
383
+ type: "address",
384
+ },
385
+ {
386
+ internalType: "address",
387
+ name: "to",
388
+ type: "address",
389
+ },
390
+ {
391
+ internalType: "uint256",
392
+ name: "value",
393
+ type: "uint256",
394
+ },
395
+ ],
396
+ name: "transferFrom",
397
+ outputs: [
398
+ {
399
+ internalType: "bool",
400
+ name: "",
401
+ type: "bool",
402
+ },
403
+ ],
404
+ stateMutability: "nonpayable",
405
+ type: "function",
406
+ },
407
+ {
408
+ inputs: [
409
+ {
410
+ internalType: "address",
411
+ name: "newOwner",
412
+ type: "address",
413
+ },
414
+ ],
415
+ name: "transferOwnership",
416
+ outputs: [],
417
+ stateMutability: "nonpayable",
418
+ type: "function",
419
+ },
420
+ ] as const;
421
+
422
+ export class MockUSD__factory {
423
+ static readonly abi = _abi;
424
+ static createInterface(): MockUSDInterface {
425
+ return new Interface(_abi) as MockUSDInterface;
426
+ }
427
+ static connect(address: string, runner?: ContractRunner | null): MockUSD {
428
+ return new Contract(address, _abi, runner) as unknown as MockUSD;
429
+ }
430
+ }
package/src/marketData.ts CHANGED
@@ -437,12 +437,18 @@ export default class MarketData extends PerpetualDataHandler {
437
437
  ): Promise<MarginAccount[]> {
438
438
  const MAX_SYMBOLS_PER_CALL = 10;
439
439
  const pxInfo = new Array<IdxPriceInfo>();
440
+ const symbolsToFetch: string[] = [];
440
441
  for (let i = 0; i < symbols.length; i++) {
441
- let obj = await this.priceFeedGetter.fetchPricesForPerpetual(symbols[i]);
442
- pxInfo.push(obj);
442
+ try {
443
+ let obj = await this.priceFeedGetter.fetchPricesForPerpetual(symbols[i]);
444
+ pxInfo.push(obj);
445
+ symbolsToFetch.push(symbols[i]);
446
+ } catch (e) {
447
+ console.log(`skipping symbol ${symbols[i]})`);
448
+ }
443
449
  }
444
450
  let mgnAcct: MarginAccount[] = [];
445
- let callSymbols = symbols.slice(0, MAX_SYMBOLS_PER_CALL);
451
+ let callSymbols = symbolsToFetch.slice(0, MAX_SYMBOLS_PER_CALL);
446
452
  let _px = pxInfo.slice(0, MAX_SYMBOLS_PER_CALL);
447
453
  while (callSymbols.length > 0) {
448
454
  const isPred = callSymbols.map((_sym) => this.isPredictionMarket(_sym));
@@ -457,7 +463,7 @@ export default class MarketData extends PerpetualDataHandler {
457
463
  overrides
458
464
  );
459
465
  mgnAcct = mgnAcct.concat(acc);
460
- callSymbols = symbols.slice(mgnAcct.length, mgnAcct.length + MAX_SYMBOLS_PER_CALL);
466
+ callSymbols = symbolsToFetch.slice(mgnAcct.length, mgnAcct.length + MAX_SYMBOLS_PER_CALL);
461
467
  _px = pxInfo.slice(mgnAcct.length, mgnAcct.length + MAX_SYMBOLS_PER_CALL);
462
468
  }
463
469
  return mgnAcct;
@@ -149,7 +149,6 @@ export default class PerpetualDataHandler {
149
149
  protected nestedPerpetualIDs: number[][];
150
150
 
151
151
  private refreshLocked:boolean=false;
152
-
153
152
  /**
154
153
  * Constructor
155
154
  * @param {NodeSDKConfig} config Configuration object, see
@@ -176,25 +175,38 @@ export default class PerpetualDataHandler {
176
175
  }
177
176
 
178
177
  protected async initContractsAndData(signerOrProvider: Signer | Provider, overrides?: Overrides) {
179
- this.signerOrProvider = signerOrProvider;
180
- // check network
181
- let network: Network;
182
- try {
183
- if (signerOrProvider.provider) {
184
- network = await signerOrProvider.provider.getNetwork();
185
- } else {
186
- throw new Error("Signer has no provider"); // TODO: check
178
+ let count=0;
179
+ while(this.refreshLocked) {
180
+ await sleepForSec(1)
181
+ if (count==25) {
182
+ throw new Error("could not obtain lock for init");
187
183
  }
188
- } catch (error: any) {
189
- console.error(error);
190
- throw new Error(`Unable to connect to network.`);
184
+ count += 1;
191
185
  }
192
- if (network.chainId !== this.chainId) {
193
- throw new Error(`Provider: chain id ${network.chainId} does not match config (${this.chainId})`);
186
+ this.refreshLocked=true;
187
+ try {
188
+ this.signerOrProvider = signerOrProvider;
189
+ // check network
190
+ let network: Network;
191
+ try {
192
+ if (signerOrProvider.provider) {
193
+ network = await signerOrProvider.provider.getNetwork();
194
+ } else {
195
+ throw new Error("Signer has no provider"); // TODO: check
196
+ }
197
+ } catch (error: any) {
198
+ console.error(error);
199
+ throw new Error(`Unable to connect to network.`);
200
+ }
201
+ if (network.chainId !== this.chainId) {
202
+ throw new Error(`Provider: chain id ${network.chainId} does not match config (${this.chainId})`);
203
+ }
204
+ this.proxyContract = IPerpetualManager__factory.connect(this.proxyAddr, signerOrProvider);
205
+ this.multicall = Multicall3__factory.connect(this.config.multicall ?? MULTICALL_ADDRESS, this.signerOrProvider);
206
+ await this._fillSymbolMaps({ ...overrides, chainId: this.chainId });
207
+ } finally {
208
+ this.refreshLocked=false;
194
209
  }
195
- this.proxyContract = IPerpetualManager__factory.connect(this.proxyAddr, signerOrProvider);
196
- this.multicall = Multicall3__factory.connect(this.config.multicall ?? MULTICALL_ADDRESS, this.signerOrProvider);
197
- await this._fillSymbolMaps({ ...overrides, chainId: this.chainId });
198
210
  }
199
211
 
200
212
  /**
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const D8X_SDK_VERSION = "2.6.8";
1
+ export const D8X_SDK_VERSION = "2.6.10";