@d8x/perpetuals-sdk 2.7.1 → 2.7.3

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 (241) 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/contracts/AMMPerpLogic.d.ts +303 -0
  14. package/dist/cjs/contracts/AMMPerpLogic.js +3 -0
  15. package/dist/cjs/contracts/AMMPerpLogic.js.map +1 -0
  16. package/dist/cjs/contracts/BeaconProxy.d.ts +63 -0
  17. package/dist/cjs/contracts/BeaconProxy.js +3 -0
  18. package/dist/cjs/contracts/BeaconProxy.js.map +1 -0
  19. package/dist/cjs/contracts/IPerpetualManagerCopy.d.ts +3223 -0
  20. package/dist/cjs/contracts/IPerpetualManagerCopy.js +3 -0
  21. package/dist/cjs/contracts/IPerpetualManagerCopy.js.map +1 -0
  22. package/dist/cjs/contracts/IPerpetualMarginViewLogic.d.ts +183 -0
  23. package/dist/cjs/contracts/IPerpetualMarginViewLogic.js +3 -0
  24. package/dist/cjs/contracts/IPerpetualMarginViewLogic.js.map +1 -0
  25. package/dist/cjs/contracts/Maintainer.d.ts +799 -0
  26. package/dist/cjs/contracts/Maintainer.js +3 -0
  27. package/dist/cjs/contracts/Maintainer.js.map +1 -0
  28. package/dist/cjs/contracts/MockToken.d.ts +263 -0
  29. package/dist/cjs/contracts/MockToken.js +3 -0
  30. package/dist/cjs/contracts/MockToken.js.map +1 -0
  31. package/dist/cjs/contracts/MockUSD.d.ts +186 -0
  32. package/dist/cjs/contracts/MockUSD.js +3 -0
  33. package/dist/cjs/contracts/MockUSD.js.map +1 -0
  34. package/dist/cjs/contracts/UUPSUpgradeable.d.ts +118 -0
  35. package/dist/cjs/contracts/UUPSUpgradeable.js +3 -0
  36. package/dist/cjs/contracts/UUPSUpgradeable.js.map +1 -0
  37. package/dist/cjs/contracts/WeETH.d.ts +503 -0
  38. package/dist/cjs/contracts/WeETH.js +3 -0
  39. package/dist/cjs/contracts/WeETH.js.map +1 -0
  40. package/dist/cjs/contracts/factories/AMMPerpLogic__factory.d.ts +452 -0
  41. package/dist/cjs/contracts/factories/AMMPerpLogic__factory.js +598 -0
  42. package/dist/cjs/contracts/factories/AMMPerpLogic__factory.js.map +1 -0
  43. package/dist/cjs/contracts/factories/BeaconProxy__factory.d.ts +61 -0
  44. package/dist/cjs/contracts/factories/BeaconProxy__factory.js +89 -0
  45. package/dist/cjs/contracts/factories/BeaconProxy__factory.js.map +1 -0
  46. package/dist/cjs/contracts/factories/IPerpetualManagerCopy__factory.d.ts +4358 -0
  47. package/dist/cjs/contracts/factories/IPerpetualManagerCopy__factory.js +5617 -0
  48. package/dist/cjs/contracts/factories/IPerpetualManagerCopy__factory.js.map +1 -0
  49. package/dist/cjs/contracts/factories/IPerpetualMarginViewLogic__factory.d.ts +221 -0
  50. package/dist/cjs/contracts/factories/IPerpetualMarginViewLogic__factory.js +304 -0
  51. package/dist/cjs/contracts/factories/IPerpetualMarginViewLogic__factory.js.map +1 -0
  52. package/dist/cjs/contracts/factories/Maintainer__factory.d.ts +609 -0
  53. package/dist/cjs/contracts/factories/Maintainer__factory.js +792 -0
  54. package/dist/cjs/contracts/factories/Maintainer__factory.js.map +1 -0
  55. package/dist/cjs/contracts/factories/MockToken__factory.d.ts +273 -0
  56. package/dist/cjs/contracts/factories/MockToken__factory.js +365 -0
  57. package/dist/cjs/contracts/factories/MockToken__factory.js.map +1 -0
  58. package/dist/cjs/contracts/factories/MockUSD__factory.d.ts +320 -0
  59. package/dist/cjs/contracts/factories/MockUSD__factory.js +431 -0
  60. package/dist/cjs/contracts/factories/MockUSD__factory.js.map +1 -0
  61. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.d.ts +87 -0
  62. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js +122 -0
  63. package/dist/cjs/contracts/factories/UUPSUpgradeable__factory.js.map +1 -0
  64. package/dist/cjs/contracts/factories/WeETH__factory.d.ts +545 -0
  65. package/dist/cjs/contracts/factories/WeETH__factory.js +721 -0
  66. package/dist/cjs/contracts/factories/WeETH__factory.js.map +1 -0
  67. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.d.ts +4136 -0
  68. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js +5324 -0
  69. package/dist/cjs/contracts/factories/lean0/IPerpetualManager__factory.js.map +1 -0
  70. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +189 -0
  71. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js +254 -0
  72. package/dist/cjs/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +1 -0
  73. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.d.ts +715 -0
  74. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js +928 -0
  75. package/dist/cjs/contracts/factories/lean0/LimitOrderBook__factory.js.map +1 -0
  76. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.d.ts +344 -0
  77. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js +456 -0
  78. package/dist/cjs/contracts/factories/lean0/ShareToken__factory.js.map +1 -0
  79. package/dist/cjs/contracts/factories/lean0/index.d.ts +4 -0
  80. package/dist/cjs/contracts/factories/lean0/index.js +15 -0
  81. package/dist/cjs/contracts/factories/lean0/index.js.map +1 -0
  82. package/dist/cjs/contracts/lean0/IPerpetualManager.d.ts +2821 -0
  83. package/dist/cjs/contracts/lean0/IPerpetualManager.js +3 -0
  84. package/dist/cjs/contracts/lean0/IPerpetualManager.js.map +1 -0
  85. package/dist/cjs/contracts/lean0/LimitOrderBook.d.ts +533 -0
  86. package/dist/cjs/contracts/lean0/LimitOrderBook.js +3 -0
  87. package/dist/cjs/contracts/lean0/LimitOrderBook.js.map +1 -0
  88. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.d.ts +210 -0
  89. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js +3 -0
  90. package/dist/cjs/contracts/lean0/LimitOrderBookFactory.js.map +1 -0
  91. package/dist/cjs/contracts/lean0/ShareToken.d.ts +320 -0
  92. package/dist/cjs/contracts/lean0/ShareToken.js +3 -0
  93. package/dist/cjs/contracts/lean0/ShareToken.js.map +1 -0
  94. package/dist/cjs/contracts/lean0/index.d.ts +4 -0
  95. package/dist/cjs/contracts/lean0/index.js +3 -0
  96. package/dist/cjs/contracts/lean0/index.js.map +1 -0
  97. package/dist/cjs/d8XMath.d.ts +4 -0
  98. package/dist/cjs/d8XMath.js +39 -4
  99. package/dist/cjs/d8XMath.js.map +1 -1
  100. package/dist/cjs/marketData.d.ts +1 -1
  101. package/dist/cjs/marketData.js +2 -2
  102. package/dist/cjs/marketData.js.map +1 -1
  103. package/dist/cjs/perpetualDataHandler.js +1 -3
  104. package/dist/cjs/perpetualDataHandler.js.map +1 -1
  105. package/dist/cjs/priceFeeds.js +1 -1
  106. package/dist/cjs/priceFeeds.js.map +1 -1
  107. package/dist/cjs/version.d.ts +1 -1
  108. package/dist/cjs/version.js +1 -1
  109. package/dist/cjs/version.js.map +1 -1
  110. package/dist/esm/abi/AMMPerpLogic.json +580 -0
  111. package/dist/esm/abi/BeaconProxy.json +71 -0
  112. package/dist/esm/abi/IPerpetualManager copy.json +5599 -0
  113. package/dist/esm/abi/IPerpetualMarginViewLogic.json +286 -0
  114. package/dist/esm/abi/Maintainer.json +774 -0
  115. package/dist/esm/abi/MockToken.json +347 -0
  116. package/dist/esm/abi/MockUSD.json +413 -0
  117. package/dist/esm/abi/UUPSUpgradeable.json +104 -0
  118. package/dist/esm/abi/WeETH.json +310 -0
  119. package/dist/esm/abi/lean0/IPerpetualManager.json +5306 -0
  120. package/dist/esm/abi/lean0/LimitOrderBook.json +910 -0
  121. package/dist/esm/abi/lean0/LimitOrderBookFactory.json +236 -0
  122. package/dist/esm/abi/lean0/ShareToken.json +438 -0
  123. package/dist/esm/abi-zkevm/IPerpetualManager.json +5366 -0
  124. package/dist/esm/abi-zkevm/LimitOrderBook.json +910 -0
  125. package/dist/esm/abi-zkevm/LimitOrderBookFactory.json +236 -0
  126. package/dist/esm/contracts/AMMPerpLogic.d.ts +303 -0
  127. package/dist/esm/contracts/AMMPerpLogic.js +2 -0
  128. package/dist/esm/contracts/AMMPerpLogic.js.map +1 -0
  129. package/dist/esm/contracts/BeaconProxy.d.ts +63 -0
  130. package/dist/esm/contracts/BeaconProxy.js +2 -0
  131. package/dist/esm/contracts/BeaconProxy.js.map +1 -0
  132. package/dist/esm/contracts/IPerpetualManagerCopy.d.ts +3223 -0
  133. package/dist/esm/contracts/IPerpetualManagerCopy.js +2 -0
  134. package/dist/esm/contracts/IPerpetualManagerCopy.js.map +1 -0
  135. package/dist/esm/contracts/IPerpetualMarginViewLogic.d.ts +183 -0
  136. package/dist/esm/contracts/IPerpetualMarginViewLogic.js +2 -0
  137. package/dist/esm/contracts/IPerpetualMarginViewLogic.js.map +1 -0
  138. package/dist/esm/contracts/Maintainer.d.ts +799 -0
  139. package/dist/esm/contracts/Maintainer.js +2 -0
  140. package/dist/esm/contracts/Maintainer.js.map +1 -0
  141. package/dist/esm/contracts/MockToken.d.ts +263 -0
  142. package/dist/esm/contracts/MockToken.js +2 -0
  143. package/dist/esm/contracts/MockToken.js.map +1 -0
  144. package/dist/esm/contracts/MockUSD.d.ts +186 -0
  145. package/dist/esm/contracts/MockUSD.js +2 -0
  146. package/dist/esm/contracts/MockUSD.js.map +1 -0
  147. package/dist/esm/contracts/UUPSUpgradeable.d.ts +118 -0
  148. package/dist/esm/contracts/UUPSUpgradeable.js +2 -0
  149. package/dist/esm/contracts/UUPSUpgradeable.js.map +1 -0
  150. package/dist/esm/contracts/WeETH.d.ts +503 -0
  151. package/dist/esm/contracts/WeETH.js +2 -0
  152. package/dist/esm/contracts/WeETH.js.map +1 -0
  153. package/dist/esm/contracts/factories/AMMPerpLogic__factory.d.ts +452 -0
  154. package/dist/esm/contracts/factories/AMMPerpLogic__factory.js +594 -0
  155. package/dist/esm/contracts/factories/AMMPerpLogic__factory.js.map +1 -0
  156. package/dist/esm/contracts/factories/BeaconProxy__factory.d.ts +61 -0
  157. package/dist/esm/contracts/factories/BeaconProxy__factory.js +85 -0
  158. package/dist/esm/contracts/factories/BeaconProxy__factory.js.map +1 -0
  159. package/dist/esm/contracts/factories/IPerpetualManagerCopy__factory.d.ts +4358 -0
  160. package/dist/esm/contracts/factories/IPerpetualManagerCopy__factory.js +5613 -0
  161. package/dist/esm/contracts/factories/IPerpetualManagerCopy__factory.js.map +1 -0
  162. package/dist/esm/contracts/factories/IPerpetualMarginViewLogic__factory.d.ts +221 -0
  163. package/dist/esm/contracts/factories/IPerpetualMarginViewLogic__factory.js +300 -0
  164. package/dist/esm/contracts/factories/IPerpetualMarginViewLogic__factory.js.map +1 -0
  165. package/dist/esm/contracts/factories/Maintainer__factory.d.ts +609 -0
  166. package/dist/esm/contracts/factories/Maintainer__factory.js +788 -0
  167. package/dist/esm/contracts/factories/Maintainer__factory.js.map +1 -0
  168. package/dist/esm/contracts/factories/MockToken__factory.d.ts +273 -0
  169. package/dist/esm/contracts/factories/MockToken__factory.js +361 -0
  170. package/dist/esm/contracts/factories/MockToken__factory.js.map +1 -0
  171. package/dist/esm/contracts/factories/MockUSD__factory.d.ts +320 -0
  172. package/dist/esm/contracts/factories/MockUSD__factory.js +427 -0
  173. package/dist/esm/contracts/factories/MockUSD__factory.js.map +1 -0
  174. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.d.ts +87 -0
  175. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js +118 -0
  176. package/dist/esm/contracts/factories/UUPSUpgradeable__factory.js.map +1 -0
  177. package/dist/esm/contracts/factories/WeETH__factory.d.ts +545 -0
  178. package/dist/esm/contracts/factories/WeETH__factory.js +717 -0
  179. package/dist/esm/contracts/factories/WeETH__factory.js.map +1 -0
  180. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.d.ts +4136 -0
  181. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js +5320 -0
  182. package/dist/esm/contracts/factories/lean0/IPerpetualManager__factory.js.map +1 -0
  183. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.d.ts +189 -0
  184. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js +250 -0
  185. package/dist/esm/contracts/factories/lean0/LimitOrderBookFactory__factory.js.map +1 -0
  186. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.d.ts +715 -0
  187. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js +924 -0
  188. package/dist/esm/contracts/factories/lean0/LimitOrderBook__factory.js.map +1 -0
  189. package/dist/esm/contracts/factories/lean0/ShareToken__factory.d.ts +344 -0
  190. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js +452 -0
  191. package/dist/esm/contracts/factories/lean0/ShareToken__factory.js.map +1 -0
  192. package/dist/esm/contracts/factories/lean0/index.d.ts +4 -0
  193. package/dist/esm/contracts/factories/lean0/index.js +8 -0
  194. package/dist/esm/contracts/factories/lean0/index.js.map +1 -0
  195. package/dist/esm/contracts/lean0/IPerpetualManager.d.ts +2821 -0
  196. package/dist/esm/contracts/lean0/IPerpetualManager.js +2 -0
  197. package/dist/esm/contracts/lean0/IPerpetualManager.js.map +1 -0
  198. package/dist/esm/contracts/lean0/LimitOrderBook.d.ts +533 -0
  199. package/dist/esm/contracts/lean0/LimitOrderBook.js +2 -0
  200. package/dist/esm/contracts/lean0/LimitOrderBook.js.map +1 -0
  201. package/dist/esm/contracts/lean0/LimitOrderBookFactory.d.ts +210 -0
  202. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js +2 -0
  203. package/dist/esm/contracts/lean0/LimitOrderBookFactory.js.map +1 -0
  204. package/dist/esm/contracts/lean0/ShareToken.d.ts +320 -0
  205. package/dist/esm/contracts/lean0/ShareToken.js +2 -0
  206. package/dist/esm/contracts/lean0/ShareToken.js.map +1 -0
  207. package/dist/esm/contracts/lean0/index.d.ts +4 -0
  208. package/dist/esm/contracts/lean0/index.js +2 -0
  209. package/dist/esm/contracts/lean0/index.js.map +1 -0
  210. package/dist/esm/d8XMath.d.ts +4 -0
  211. package/dist/esm/d8XMath.js +37 -3
  212. package/dist/esm/d8XMath.js.map +1 -1
  213. package/dist/esm/marketData.d.ts +1 -1
  214. package/dist/esm/marketData.js +3 -3
  215. package/dist/esm/marketData.js.map +1 -1
  216. package/dist/esm/perpetualDataHandler.js +1 -3
  217. package/dist/esm/perpetualDataHandler.js.map +1 -1
  218. package/dist/esm/priceFeeds.js +1 -1
  219. package/dist/esm/priceFeeds.js.map +1 -1
  220. package/dist/esm/version.d.ts +1 -1
  221. package/dist/esm/version.js +1 -1
  222. package/dist/esm/version.js.map +1 -1
  223. package/package.json +1 -1
  224. package/src/contracts/IPerpetualMarginViewLogic.ts +347 -0
  225. package/src/contracts/MockUSD.ts +378 -0
  226. package/src/contracts/factories/IPerpetualMarginViewLogic__factory.ts +313 -0
  227. package/src/contracts/factories/MockUSD__factory.ts +430 -0
  228. package/src/d8XMath.ts +44 -3
  229. package/src/marketData.ts +4 -3
  230. package/src/perpetualDataHandler.ts +2 -3
  231. package/src/priceFeeds.ts +1 -1
  232. package/src/version.ts +1 -1
  233. package/dist/cjs/main.d.ts +0 -1
  234. package/dist/cjs/main.js +0 -15
  235. package/dist/cjs/main.js.map +0 -1
  236. package/dist/esm/main.d.ts +0 -1
  237. package/dist/esm/main.js +0 -13
  238. package/dist/esm/main.js.map +0 -1
  239. package/dist/esm/main2.d.ts +0 -1
  240. package/dist/esm/main2.js +0 -18
  241. package/dist/esm/main2.js.map +0 -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/d8XMath.ts CHANGED
@@ -656,6 +656,49 @@ export function pmOpenFee(varphi: number, varphiBar: number, mu_m: number, m_0:
656
656
  return fee;
657
657
  }
658
658
 
659
+ function firstNonZeroNum(numDec: bigint) {
660
+ let pos = 0n;
661
+ let temp = numDec;
662
+ while (temp > 0n) {
663
+ temp /= 10n;
664
+ pos++;
665
+ }
666
+ return pos;
667
+ }
668
+
669
+ function decodeUint24Float(num: number | bigint) {
670
+ const n = BigInt(num);
671
+
672
+ const sgnE = n >> 23n;
673
+ const val = (n >> 3n) & ((1n << 20n) - 1n);
674
+ const exponent = n & ((1n << 3n) - 1n);
675
+
676
+ let v = BigInt.asIntN(128, val * 2n ** 64n);
677
+
678
+ let exponent1 = firstNonZeroNum(val);
679
+ if (exponent1 > 0n) exponent1--;
680
+
681
+ if (sgnE == 1n) {
682
+ v = (v * 2n ** 64n) / 10n ** exponent;
683
+ } else {
684
+ v = (v * 10n ** exponent) / 2n ** 64n;
685
+ }
686
+ return ABK64x64ToFloat(v);
687
+ }
688
+
689
+ export function extractLvgFeeParams(conf: bigint) {
690
+ // static replication of _checkOracleStatus and _extractLvgFeeParams
691
+ const param = BigInt.asIntN(64, conf >> 16n); // int64(conf >> 16);
692
+ const enc = BigInt.asUintN(64, BigInt.asUintN(128, param)); // uint64(uint128(_param));
693
+ const j = BigInt.asUintN(64, enc >> 44n); // uint64 j = enc >> 44; //top 4 bits
694
+ const st = BigInt.asUintN(64, enc & ((BigInt.asUintN(64, 1n) << 44n) - 1n)); // uint64 st = enc & ((uint64(1) << 44) - 1); // low 44 bits are sigt (padded 24-bit)
695
+ const jump = ABK64x64ToFloat(BigInt.asUintN(128, BigInt.asIntN(64, j)) * BigInt.asIntN(128, 922337203685477580n)); // jump = int128(int64(j)) * int128(922337203685477580); // times 0.05 in ABDK
696
+
697
+ const sigt = decodeUint24Float(BigInt.asUintN(24, st & ((1n << 24n) - 1n))); // uint24(st & ((1 << 24) - 1));
698
+
699
+ return { jump, sigt };
700
+ }
701
+
659
702
  //sigt = sigma*sqrt(t)
660
703
  function calcKappa(varphi: number, varphiLiq: number, sigt: number): number {
661
704
  const p = 1 - varphi;
@@ -1060,9 +1103,7 @@ export function pmMaxSignedOpenTradeSize(
1060
1103
  // closed
1061
1104
  return 0;
1062
1105
  }
1063
- const counterPos = isBuy ? -short : long;
1064
- const m = pmMaintenanceMarginRate(counterPos, counterPos * sm, sm, mr);
1065
1106
  let p = !isBuy ? sm - 1 : 2 - sm;
1066
1107
  p = p < 0.01 ? 0.01 : p > 0.99 ? 0.99 : p; // same cap as contract
1067
- return isBuy ? (ammFundsQC + m * p * short) / p - long : -(ammFundsQC + m * p * long) / p + short;
1108
+ return isBuy ? (ammFundsQC + mr * short) / p - long : -(ammFundsQC + mr * long) / p + short;
1068
1109
  }
package/src/marketData.ts CHANGED
@@ -28,6 +28,7 @@ import {
28
28
  ABK64x64ToFloat,
29
29
  dec18ToFloat,
30
30
  decNToFloat,
31
+ extractLvgFeeParams,
31
32
  floatToABK64x64,
32
33
  getDepositAmountForLvgTrade,
33
34
  getMaxSignedPositionSize,
@@ -849,8 +850,7 @@ export default class MarketData extends PerpetualDataHandler {
849
850
  mu_m: number,
850
851
  mr: number,
851
852
  m_0: number,
852
- sigt: number,
853
- jump: number
853
+ conf: bigint
854
854
  ): number {
855
855
  const isClose = Math.sign(traderPosBC) != Math.sign(tradeAmtBC);
856
856
  const isFlip =
@@ -864,6 +864,7 @@ export default class MarketData extends PerpetualDataHandler {
864
864
  ? traderLockedInQC / traderPosBC - 1
865
865
  : 2 - traderLockedInQC / traderPosBC;
866
866
  let fee: number;
867
+ const { jump, sigt } = extractLvgFeeParams(conf);
867
868
  if (isClose && !isFlip) {
868
869
  // exit fee
869
870
  fee = pmExitFee(varphi, varphiBar, mu_m, m_0, sigt, jump);
@@ -1287,7 +1288,7 @@ export default class MarketData extends PerpetualDataHandler {
1287
1288
 
1288
1289
  let maxLong = pmMaxSignedOpenTradeSize(longOI, shortOI, indexPriceInfo.ema, true, mr, ammFunds);
1289
1290
  let maxShort = pmMaxSignedOpenTradeSize(longOI, shortOI, indexPriceInfo.ema, false, mr, ammFunds);
1290
- console.log({ maxLong, maxShort });
1291
+
1291
1292
  if (traderPos > 0n) {
1292
1293
  // pos > 0, so short is closing direction
1293
1294
  maxShort = -Math.max(Math.abs(maxShort), ABK64x64ToFloat(traderPos));
@@ -225,7 +225,7 @@ export default class PerpetualDataHandler {
225
225
  throw new Error(`failed to fetch config (${res.status}): ${res.statusText} ${this.config.configSource}`);
226
226
  }
227
227
  let symlist = await res.json();
228
- console.log("fetched symbol list from source", this.config.configSource + "/symbolList.json");
228
+ // console.log("fetched symbol list from source", this.config.configSource + "/symbolList.json");
229
229
  this.symbolList = new Map<string, string>(Object.entries(symlist));
230
230
  }
231
231
 
@@ -303,7 +303,7 @@ export default class PerpetualDataHandler {
303
303
  const tokenOverrides = require("./config/tokenOverrides.json") as TokenOverride[];
304
304
 
305
305
  let poolInfo = await PerpetualDataHandler.getPoolStaticInfo(this.proxyContract);
306
- console.log({ poolInfo });
306
+
307
307
  const IERC20 = ERC20__factory.createInterface();
308
308
 
309
309
  const proxyCalls: Multicall3.Call3Struct[] = poolInfo.poolMarginTokenAddr.map((tokenAddr) => ({
@@ -324,7 +324,6 @@ export default class PerpetualDataHandler {
324
324
 
325
325
  // multicall
326
326
  const encodedResults = await this.multicall.aggregate3.staticCall(proxyCalls, overrides || {});
327
- console.log({ encodedResults });
328
327
 
329
328
  // pre-allocate all pool static infos with id and margin token info
330
329
  const poolStaticInfos: PoolStaticInfo[] = [];
package/src/priceFeeds.ts CHANGED
@@ -69,7 +69,7 @@ export default class PriceFeeds {
69
69
  throw new Error(`failed to fetch config (${res.status}): ${res.statusText} ${configSrc}`);
70
70
  }
71
71
  configs = await res.json();
72
- console.log("fetched price config from source", configSrc + "/priceFeedConfig.json");
72
+ // console.log("fetched price config from source", configSrc + "/priceFeedConfig.json");
73
73
  }
74
74
  this.config = PriceFeeds._selectConfig(configs, this.priceFeedConfigNetwork);
75
75
 
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const D8X_SDK_VERSION = "2.7.01";
1
+ export const D8X_SDK_VERSION = "2.7.3";
@@ -1 +0,0 @@
1
- export {};
package/dist/cjs/main.js DELETED
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const perpetuals_sdk_1 = require("@d8x/perpetuals-sdk");
4
- async function main() {
5
- console.log(perpetuals_sdk_1.MarketData);
6
- // setup
7
- const config = perpetuals_sdk_1.PerpetualDataHandler.readSDKConfig("zkevm");
8
- let mktData = new perpetuals_sdk_1.MarketData(config);
9
- await mktData.createProxyInstance();
10
- // Get all open orders for a trader/symbol
11
- let opOrder = await mktData.openOrders("0xe5a5a989b920d22323b915c36c5db8ac38b4ebd7", "BTC-USDC-USDC");
12
- console.log(opOrder);
13
- }
14
- main();
15
- //# sourceMappingURL=main.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";;AAAA,wDAAuE;AACvE,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,2BAAU,CAAC,CAAC;IACxB,QAAQ;IACR,MAAM,MAAM,GAAG,qCAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,OAAO,GAAG,IAAI,2BAAU,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACpC,0CAA0C;IAC1C,IAAI,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,4CAA4C,EAAE,eAAe,CAAC,CAAC;IACtG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AACD,IAAI,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- export {};
package/dist/esm/main.js DELETED
@@ -1,13 +0,0 @@
1
- import { MarketData, PerpetualDataHandler } from "@d8x/perpetuals-sdk";
2
- async function main() {
3
- console.log(MarketData);
4
- // setup
5
- const config = PerpetualDataHandler.readSDKConfig("zkevm");
6
- let mktData = new MarketData(config);
7
- await mktData.createProxyInstance();
8
- // Get all open orders for a trader/symbol
9
- let opOrder = await mktData.openOrders("0xe5a5a989b920d22323b915c36c5db8ac38b4ebd7", "BTC-USDC-USDC");
10
- console.log(opOrder);
11
- }
12
- main();
13
- //# sourceMappingURL=main.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACvE,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,QAAQ;IACR,MAAM,MAAM,GAAG,oBAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,OAAO,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACpC,0CAA0C;IAC1C,IAAI,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,4CAA4C,EAAE,eAAe,CAAC,CAAC;IACtG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AACD,IAAI,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- export {};
package/dist/esm/main2.js DELETED
@@ -1,18 +0,0 @@
1
- import { MarketData, PerpetualDataHandler } from "@d8x/perpetuals-sdk";
2
- async function main() {
3
- console.log(MarketData);
4
- // setup
5
- const config = PerpetualDataHandler.readSDKConfig("zkevm");
6
- let mktData = new MarketData(config);
7
- await mktData.createProxyInstance();
8
- // Get exchange info
9
- let info = await mktData.exchangeInfo();
10
- console.log(info);
11
- const pools = info.pools;
12
- pools.forEach((pool, index) => {
13
- console.log(`Perpetuals in pool ${index} (${pool.poolSymbol}):`);
14
- console.log(pool.perpetuals);
15
- });
16
- }
17
- main();
18
- //# sourceMappingURL=main2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"main2.js","sourceRoot":"","sources":["../../src/main2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACvE,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,QAAQ;IACR,MAAM,MAAM,GAAG,oBAAoB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,OAAO,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACpC,oBAAoB;IACpB,IAAI,IAAI,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAElB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAEzB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC5B,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC;AACD,IAAI,EAAE,CAAC"}