@opensea/sdk 9.0.0

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 (363) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +70 -0
  3. package/lib/api/accounts.d.ts +27 -0
  4. package/lib/api/accounts.js +46 -0
  5. package/lib/api/accounts.js.map +1 -0
  6. package/lib/api/api.d.ts +489 -0
  7. package/lib/api/api.js +754 -0
  8. package/lib/api/api.js.map +1 -0
  9. package/lib/api/apiPaths.d.ts +46 -0
  10. package/lib/api/apiPaths.js +176 -0
  11. package/lib/api/apiPaths.js.map +1 -0
  12. package/lib/api/chains.d.ts +13 -0
  13. package/lib/api/chains.js +22 -0
  14. package/lib/api/chains.js.map +1 -0
  15. package/lib/api/collections.d.ts +34 -0
  16. package/lib/api/collections.js +80 -0
  17. package/lib/api/collections.js.map +1 -0
  18. package/lib/api/drops.d.ts +21 -0
  19. package/lib/api/drops.js +39 -0
  20. package/lib/api/drops.js.map +1 -0
  21. package/lib/api/events.d.ts +26 -0
  22. package/lib/api/events.js +43 -0
  23. package/lib/api/events.js.map +1 -0
  24. package/lib/api/fetcher.d.ts +24 -0
  25. package/lib/api/fetcher.js +3 -0
  26. package/lib/api/fetcher.js.map +1 -0
  27. package/lib/api/index.d.ts +2 -0
  28. package/lib/api/index.js +19 -0
  29. package/lib/api/index.js.map +1 -0
  30. package/lib/api/listings.d.ts +44 -0
  31. package/lib/api/listings.js +88 -0
  32. package/lib/api/listings.js.map +1 -0
  33. package/lib/api/nfts.d.ts +39 -0
  34. package/lib/api/nfts.js +79 -0
  35. package/lib/api/nfts.js.map +1 -0
  36. package/lib/api/offers.d.ts +54 -0
  37. package/lib/api/offers.js +124 -0
  38. package/lib/api/offers.js.map +1 -0
  39. package/lib/api/orders.d.ts +50 -0
  40. package/lib/api/orders.js +153 -0
  41. package/lib/api/orders.js.map +1 -0
  42. package/lib/api/search.d.ts +13 -0
  43. package/lib/api/search.js +22 -0
  44. package/lib/api/search.js.map +1 -0
  45. package/lib/api/tokens.d.ts +25 -0
  46. package/lib/api/tokens.js +43 -0
  47. package/lib/api/tokens.js.map +1 -0
  48. package/lib/api/types.d.ts +1113 -0
  49. package/lib/api/types.js +65 -0
  50. package/lib/api/types.js.map +1 -0
  51. package/lib/constants.d.ts +22 -0
  52. package/lib/constants.js +52 -0
  53. package/lib/constants.js.map +1 -0
  54. package/lib/index.d.ts +18 -0
  55. package/lib/index.js +24 -0
  56. package/lib/index.js.map +1 -0
  57. package/lib/orders/privateListings.d.ts +12 -0
  58. package/lib/orders/privateListings.js +130 -0
  59. package/lib/orders/privateListings.js.map +1 -0
  60. package/lib/orders/types.d.ts +160 -0
  61. package/lib/orders/types.js +10 -0
  62. package/lib/orders/types.js.map +1 -0
  63. package/lib/orders/utils.d.ts +89 -0
  64. package/lib/orders/utils.js +177 -0
  65. package/lib/orders/utils.js.map +1 -0
  66. package/lib/sdk/assets.d.ts +104 -0
  67. package/lib/sdk/assets.js +398 -0
  68. package/lib/sdk/assets.js.map +1 -0
  69. package/lib/sdk/cancellation.d.ts +97 -0
  70. package/lib/sdk/cancellation.js +235 -0
  71. package/lib/sdk/cancellation.js.map +1 -0
  72. package/lib/sdk/context.d.ts +28 -0
  73. package/lib/sdk/context.js +3 -0
  74. package/lib/sdk/context.js.map +1 -0
  75. package/lib/sdk/fulfillment.d.ts +153 -0
  76. package/lib/sdk/fulfillment.js +298 -0
  77. package/lib/sdk/fulfillment.js.map +1 -0
  78. package/lib/sdk/orders.d.ts +253 -0
  79. package/lib/sdk/orders.js +679 -0
  80. package/lib/sdk/orders.js.map +1 -0
  81. package/lib/sdk/tokens.d.ts +31 -0
  82. package/lib/sdk/tokens.js +65 -0
  83. package/lib/sdk/tokens.js.map +1 -0
  84. package/lib/sdk.d.ts +560 -0
  85. package/lib/sdk.js +693 -0
  86. package/lib/sdk.js.map +1 -0
  87. package/lib/src/api/accounts.d.ts +18 -0
  88. package/lib/src/api/accounts.js +30 -0
  89. package/lib/src/api/accounts.js.map +1 -0
  90. package/lib/src/api/api.d.ts +429 -0
  91. package/lib/src/api/api.js +652 -0
  92. package/lib/src/api/api.js.map +1 -0
  93. package/lib/src/api/apiPaths.d.ts +37 -0
  94. package/lib/src/api/apiPaths.js +140 -0
  95. package/lib/src/api/apiPaths.js.map +1 -0
  96. package/lib/src/api/collections.d.ts +26 -0
  97. package/lib/src/api/collections.js +57 -0
  98. package/lib/src/api/collections.js.map +1 -0
  99. package/lib/src/api/events.d.ts +26 -0
  100. package/lib/src/api/events.js +42 -0
  101. package/lib/src/api/events.js.map +1 -0
  102. package/lib/src/api/fetcher.d.ts +24 -0
  103. package/lib/src/api/fetcher.js +3 -0
  104. package/lib/src/api/fetcher.js.map +1 -0
  105. package/lib/src/api/index.d.ts +2 -0
  106. package/lib/src/api/index.js +19 -0
  107. package/lib/src/api/index.js.map +1 -0
  108. package/lib/src/api/listings.d.ts +44 -0
  109. package/lib/src/api/listings.js +86 -0
  110. package/lib/src/api/listings.js.map +1 -0
  111. package/lib/src/api/nfts.d.ts +35 -0
  112. package/lib/src/api/nfts.js +66 -0
  113. package/lib/src/api/nfts.js.map +1 -0
  114. package/lib/src/api/offers.d.ts +54 -0
  115. package/lib/src/api/offers.js +122 -0
  116. package/lib/src/api/offers.js.map +1 -0
  117. package/lib/src/api/orders.d.ts +50 -0
  118. package/lib/src/api/orders.js +151 -0
  119. package/lib/src/api/orders.js.map +1 -0
  120. package/lib/src/api/search.d.ts +13 -0
  121. package/lib/src/api/search.js +21 -0
  122. package/lib/src/api/search.js.map +1 -0
  123. package/lib/src/api/tokens.d.ts +25 -0
  124. package/lib/src/api/tokens.js +42 -0
  125. package/lib/src/api/tokens.js.map +1 -0
  126. package/lib/src/api/types.d.ts +840 -0
  127. package/lib/src/api/types.js +65 -0
  128. package/lib/src/api/types.js.map +1 -0
  129. package/lib/src/constants.d.ts +22 -0
  130. package/lib/src/constants.js +52 -0
  131. package/lib/src/constants.js.map +1 -0
  132. package/lib/src/index.d.ts +18 -0
  133. package/lib/src/index.js +24 -0
  134. package/lib/src/index.js.map +1 -0
  135. package/lib/src/orders/privateListings.d.ts +12 -0
  136. package/lib/src/orders/privateListings.js +130 -0
  137. package/lib/src/orders/privateListings.js.map +1 -0
  138. package/lib/src/orders/types.d.ts +160 -0
  139. package/lib/src/orders/types.js +10 -0
  140. package/lib/src/orders/types.js.map +1 -0
  141. package/lib/src/orders/utils.d.ts +89 -0
  142. package/lib/src/orders/utils.js +177 -0
  143. package/lib/src/orders/utils.js.map +1 -0
  144. package/lib/src/sdk/assets.d.ts +104 -0
  145. package/lib/src/sdk/assets.js +397 -0
  146. package/lib/src/sdk/assets.js.map +1 -0
  147. package/lib/src/sdk/cancellation.d.ts +97 -0
  148. package/lib/src/sdk/cancellation.js +234 -0
  149. package/lib/src/sdk/cancellation.js.map +1 -0
  150. package/lib/src/sdk/context.d.ts +28 -0
  151. package/lib/src/sdk/context.js +3 -0
  152. package/lib/src/sdk/context.js.map +1 -0
  153. package/lib/src/sdk/fulfillment.d.ts +153 -0
  154. package/lib/src/sdk/fulfillment.js +296 -0
  155. package/lib/src/sdk/fulfillment.js.map +1 -0
  156. package/lib/src/sdk/orders.d.ts +253 -0
  157. package/lib/src/sdk/orders.js +677 -0
  158. package/lib/src/sdk/orders.js.map +1 -0
  159. package/lib/src/sdk/tokens.d.ts +31 -0
  160. package/lib/src/sdk/tokens.js +64 -0
  161. package/lib/src/sdk/tokens.js.map +1 -0
  162. package/lib/src/sdk.d.ts +560 -0
  163. package/lib/src/sdk.js +675 -0
  164. package/lib/src/sdk.js.map +1 -0
  165. package/lib/src/typechain/contracts/ERC1155.d.ts +236 -0
  166. package/lib/src/typechain/contracts/ERC1155.js +3 -0
  167. package/lib/src/typechain/contracts/ERC1155.js.map +1 -0
  168. package/lib/src/typechain/contracts/ERC20.d.ts +141 -0
  169. package/lib/src/typechain/contracts/ERC20.js +3 -0
  170. package/lib/src/typechain/contracts/ERC20.js.map +1 -0
  171. package/lib/src/typechain/contracts/ERC721.d.ts +213 -0
  172. package/lib/src/typechain/contracts/ERC721.js +3 -0
  173. package/lib/src/typechain/contracts/ERC721.js.map +1 -0
  174. package/lib/src/typechain/contracts/Multicall3.d.ts +57 -0
  175. package/lib/src/typechain/contracts/Multicall3.js +3 -0
  176. package/lib/src/typechain/contracts/Multicall3.js.map +1 -0
  177. package/lib/src/typechain/contracts/TransferHelper.d.ts +55 -0
  178. package/lib/src/typechain/contracts/TransferHelper.js +3 -0
  179. package/lib/src/typechain/contracts/TransferHelper.js.map +1 -0
  180. package/lib/src/typechain/contracts/common.d.ts +50 -0
  181. package/lib/src/typechain/contracts/common.js +3 -0
  182. package/lib/src/typechain/contracts/common.js.map +1 -0
  183. package/lib/src/typechain/contracts/factories/ERC1155__factory.d.ts +250 -0
  184. package/lib/src/typechain/contracts/factories/ERC1155__factory.js +332 -0
  185. package/lib/src/typechain/contracts/factories/ERC1155__factory.js.map +1 -0
  186. package/lib/src/typechain/contracts/factories/ERC20__factory.d.ts +174 -0
  187. package/lib/src/typechain/contracts/factories/ERC20__factory.js +240 -0
  188. package/lib/src/typechain/contracts/factories/ERC20__factory.js.map +1 -0
  189. package/lib/src/typechain/contracts/factories/ERC721__factory.d.ts +268 -0
  190. package/lib/src/typechain/contracts/factories/ERC721__factory.js +351 -0
  191. package/lib/src/typechain/contracts/factories/ERC721__factory.js.map +1 -0
  192. package/lib/src/typechain/contracts/factories/Multicall3__factory.d.ts +43 -0
  193. package/lib/src/typechain/contracts/factories/Multicall3__factory.js +68 -0
  194. package/lib/src/typechain/contracts/factories/Multicall3__factory.js.map +1 -0
  195. package/lib/src/typechain/contracts/factories/TransferHelper__factory.d.ts +46 -0
  196. package/lib/src/typechain/contracts/factories/TransferHelper__factory.js +71 -0
  197. package/lib/src/typechain/contracts/factories/TransferHelper__factory.js.map +1 -0
  198. package/lib/src/typechain/contracts/factories/index.d.ts +5 -0
  199. package/lib/src/typechain/contracts/factories/index.js +17 -0
  200. package/lib/src/typechain/contracts/factories/index.js.map +1 -0
  201. package/lib/src/typechain/contracts/index.d.ts +11 -0
  202. package/lib/src/typechain/contracts/index.js +48 -0
  203. package/lib/src/typechain/contracts/index.js.map +1 -0
  204. package/lib/src/types.d.ts +387 -0
  205. package/lib/src/types.js +127 -0
  206. package/lib/src/types.js.map +1 -0
  207. package/lib/src/utils/chain.d.ts +60 -0
  208. package/lib/src/utils/chain.js +248 -0
  209. package/lib/src/utils/chain.js.map +1 -0
  210. package/lib/src/utils/converters.d.ts +37 -0
  211. package/lib/src/utils/converters.js +137 -0
  212. package/lib/src/utils/converters.js.map +1 -0
  213. package/lib/src/utils/dateHelper.d.ts +38 -0
  214. package/lib/src/utils/dateHelper.js +52 -0
  215. package/lib/src/utils/dateHelper.js.map +1 -0
  216. package/lib/src/utils/fees.d.ts +13 -0
  217. package/lib/src/utils/fees.js +29 -0
  218. package/lib/src/utils/fees.js.map +1 -0
  219. package/lib/src/utils/index.d.ts +2 -0
  220. package/lib/src/utils/index.js +19 -0
  221. package/lib/src/utils/index.js.map +1 -0
  222. package/lib/src/utils/protocol.d.ts +75 -0
  223. package/lib/src/utils/protocol.js +161 -0
  224. package/lib/src/utils/protocol.js.map +1 -0
  225. package/lib/src/utils/rateLimit.d.ts +34 -0
  226. package/lib/src/utils/rateLimit.js +97 -0
  227. package/lib/src/utils/rateLimit.js.map +1 -0
  228. package/lib/src/utils/stringHelper.d.ts +18 -0
  229. package/lib/src/utils/stringHelper.js +24 -0
  230. package/lib/src/utils/stringHelper.js.map +1 -0
  231. package/lib/src/utils/utils.d.ts +18 -0
  232. package/lib/src/utils/utils.js +45 -0
  233. package/lib/src/utils/utils.js.map +1 -0
  234. package/lib/typechain/contracts/ERC1155.d.ts +236 -0
  235. package/lib/typechain/contracts/ERC1155.js +3 -0
  236. package/lib/typechain/contracts/ERC1155.js.map +1 -0
  237. package/lib/typechain/contracts/ERC20.d.ts +141 -0
  238. package/lib/typechain/contracts/ERC20.js +3 -0
  239. package/lib/typechain/contracts/ERC20.js.map +1 -0
  240. package/lib/typechain/contracts/ERC721.d.ts +213 -0
  241. package/lib/typechain/contracts/ERC721.js +3 -0
  242. package/lib/typechain/contracts/ERC721.js.map +1 -0
  243. package/lib/typechain/contracts/Multicall3.d.ts +57 -0
  244. package/lib/typechain/contracts/Multicall3.js +3 -0
  245. package/lib/typechain/contracts/Multicall3.js.map +1 -0
  246. package/lib/typechain/contracts/TransferHelper.d.ts +55 -0
  247. package/lib/typechain/contracts/TransferHelper.js +3 -0
  248. package/lib/typechain/contracts/TransferHelper.js.map +1 -0
  249. package/lib/typechain/contracts/common.d.ts +50 -0
  250. package/lib/typechain/contracts/common.js +3 -0
  251. package/lib/typechain/contracts/common.js.map +1 -0
  252. package/lib/typechain/contracts/factories/ERC1155__factory.d.ts +250 -0
  253. package/lib/typechain/contracts/factories/ERC1155__factory.js +332 -0
  254. package/lib/typechain/contracts/factories/ERC1155__factory.js.map +1 -0
  255. package/lib/typechain/contracts/factories/ERC20__factory.d.ts +174 -0
  256. package/lib/typechain/contracts/factories/ERC20__factory.js +240 -0
  257. package/lib/typechain/contracts/factories/ERC20__factory.js.map +1 -0
  258. package/lib/typechain/contracts/factories/ERC721__factory.d.ts +268 -0
  259. package/lib/typechain/contracts/factories/ERC721__factory.js +351 -0
  260. package/lib/typechain/contracts/factories/ERC721__factory.js.map +1 -0
  261. package/lib/typechain/contracts/factories/Multicall3__factory.d.ts +43 -0
  262. package/lib/typechain/contracts/factories/Multicall3__factory.js +68 -0
  263. package/lib/typechain/contracts/factories/Multicall3__factory.js.map +1 -0
  264. package/lib/typechain/contracts/factories/TransferHelper__factory.d.ts +46 -0
  265. package/lib/typechain/contracts/factories/TransferHelper__factory.js +71 -0
  266. package/lib/typechain/contracts/factories/TransferHelper__factory.js.map +1 -0
  267. package/lib/typechain/contracts/factories/index.d.ts +5 -0
  268. package/lib/typechain/contracts/factories/index.js +17 -0
  269. package/lib/typechain/contracts/factories/index.js.map +1 -0
  270. package/lib/typechain/contracts/index.d.ts +11 -0
  271. package/lib/typechain/contracts/index.js +48 -0
  272. package/lib/typechain/contracts/index.js.map +1 -0
  273. package/lib/types.d.ts +389 -0
  274. package/lib/types.js +129 -0
  275. package/lib/types.js.map +1 -0
  276. package/lib/utils/chain.d.ts +64 -0
  277. package/lib/utils/chain.js +211 -0
  278. package/lib/utils/chain.js.map +1 -0
  279. package/lib/utils/chainIds.generated.d.ts +7 -0
  280. package/lib/utils/chainIds.generated.js +37 -0
  281. package/lib/utils/chainIds.generated.js.map +1 -0
  282. package/lib/utils/converters.d.ts +37 -0
  283. package/lib/utils/converters.js +137 -0
  284. package/lib/utils/converters.js.map +1 -0
  285. package/lib/utils/dateHelper.d.ts +38 -0
  286. package/lib/utils/dateHelper.js +52 -0
  287. package/lib/utils/dateHelper.js.map +1 -0
  288. package/lib/utils/fees.d.ts +13 -0
  289. package/lib/utils/fees.js +29 -0
  290. package/lib/utils/fees.js.map +1 -0
  291. package/lib/utils/index.d.ts +2 -0
  292. package/lib/utils/index.js +19 -0
  293. package/lib/utils/index.js.map +1 -0
  294. package/lib/utils/protocol.d.ts +75 -0
  295. package/lib/utils/protocol.js +161 -0
  296. package/lib/utils/protocol.js.map +1 -0
  297. package/lib/utils/rateLimit.d.ts +34 -0
  298. package/lib/utils/rateLimit.js +97 -0
  299. package/lib/utils/rateLimit.js.map +1 -0
  300. package/lib/utils/stringHelper.d.ts +18 -0
  301. package/lib/utils/stringHelper.js +24 -0
  302. package/lib/utils/stringHelper.js.map +1 -0
  303. package/lib/utils/utils.d.ts +18 -0
  304. package/lib/utils/utils.js +45 -0
  305. package/lib/utils/utils.js.map +1 -0
  306. package/package.json +72 -0
  307. package/src/abi/ERC1155.json +314 -0
  308. package/src/abi/ERC20.json +222 -0
  309. package/src/abi/ERC721.json +333 -0
  310. package/src/abi/Multicall3.json +50 -0
  311. package/src/abi/TransferHelper.json +53 -0
  312. package/src/api/accounts.ts +69 -0
  313. package/src/api/api.ts +1152 -0
  314. package/src/api/apiPaths.ts +208 -0
  315. package/src/api/chains.ts +18 -0
  316. package/src/api/collections.ts +120 -0
  317. package/src/api/drops.ts +49 -0
  318. package/src/api/events.ts +71 -0
  319. package/src/api/fetcher.ts +31 -0
  320. package/src/api/index.ts +2 -0
  321. package/src/api/listings.ts +126 -0
  322. package/src/api/nfts.ts +144 -0
  323. package/src/api/offers.ts +242 -0
  324. package/src/api/orders.ts +283 -0
  325. package/src/api/search.ts +21 -0
  326. package/src/api/tokens.ts +67 -0
  327. package/src/api/types.ts +1210 -0
  328. package/src/constants.ts +90 -0
  329. package/src/index.ts +22 -0
  330. package/src/orders/privateListings.ts +173 -0
  331. package/src/orders/types.ts +191 -0
  332. package/src/orders/utils.ts +253 -0
  333. package/src/sdk/assets.ts +591 -0
  334. package/src/sdk/cancellation.ts +346 -0
  335. package/src/sdk/context.ts +33 -0
  336. package/src/sdk/fulfillment.ts +478 -0
  337. package/src/sdk/orders.ts +1149 -0
  338. package/src/sdk/tokens.ts +95 -0
  339. package/src/sdk.ts +1051 -0
  340. package/src/typechain/contracts/ERC1155.ts +440 -0
  341. package/src/typechain/contracts/ERC20.ts +286 -0
  342. package/src/typechain/contracts/ERC721.ts +412 -0
  343. package/src/typechain/contracts/Multicall3.ts +117 -0
  344. package/src/typechain/contracts/TransferHelper.ts +122 -0
  345. package/src/typechain/contracts/common.ts +131 -0
  346. package/src/typechain/contracts/factories/ERC1155__factory.ts +331 -0
  347. package/src/typechain/contracts/factories/ERC20__factory.ts +239 -0
  348. package/src/typechain/contracts/factories/ERC721__factory.ts +350 -0
  349. package/src/typechain/contracts/factories/Multicall3__factory.ts +67 -0
  350. package/src/typechain/contracts/factories/TransferHelper__factory.ts +76 -0
  351. package/src/typechain/contracts/factories/index.ts +8 -0
  352. package/src/typechain/contracts/index.ts +14 -0
  353. package/src/types.ts +413 -0
  354. package/src/utils/chain.ts +224 -0
  355. package/src/utils/chainIds.generated.ts +34 -0
  356. package/src/utils/converters.ts +145 -0
  357. package/src/utils/dateHelper.ts +48 -0
  358. package/src/utils/fees.ts +31 -0
  359. package/src/utils/index.ts +2 -0
  360. package/src/utils/protocol.ts +185 -0
  361. package/src/utils/rateLimit.ts +147 -0
  362. package/src/utils/stringHelper.ts +25 -0
  363. package/src/utils/utils.ts +36 -0
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getNativeWrapTokenAddress = exports.getFeeRecipient = exports.getSignedZone = exports.getSeaportAddress = exports.getDefaultConduit = exports.getListingPaymentToken = exports.getOfferPaymentToken = exports.getChainId = exports.usesAlternateProtocol = void 0;
4
+ const constants_1 = require("@opensea/seaport-js/lib/constants");
5
+ const constants_2 = require("../constants");
6
+ const types_1 = require("../types");
7
+ /**
8
+ * Checks if a chain uses the alternate protocol addresses.
9
+ * These chains use non-standard Seaport, conduit, and signed zone deployments.
10
+ * @param chain The chain to check
11
+ * @returns True if the chain uses alternate protocol addresses
12
+ */
13
+ const usesAlternateProtocol = (chain) => chain === types_1.Chain.Gunzilla || chain === types_1.Chain.Somnia || chain === types_1.Chain.MegaETH;
14
+ exports.usesAlternateProtocol = usesAlternateProtocol;
15
+ /**
16
+ * Gets the chain ID for a given chain.
17
+ * @param chain The chain to get the ID for
18
+ * @returns The chain ID as a string
19
+ */
20
+ const getChainId = (chain) => {
21
+ switch (chain) {
22
+ case types_1.Chain.Mainnet:
23
+ return "1";
24
+ case types_1.Chain.Polygon:
25
+ return "137";
26
+ case types_1.Chain.Avalanche:
27
+ return "43114";
28
+ case types_1.Chain.Arbitrum:
29
+ return "42161";
30
+ case types_1.Chain.Blast:
31
+ return "238";
32
+ case types_1.Chain.Base:
33
+ return "8453";
34
+ case types_1.Chain.Optimism:
35
+ return "10";
36
+ case types_1.Chain.Zora:
37
+ return "7777777";
38
+ case types_1.Chain.Sei:
39
+ return "1329";
40
+ case types_1.Chain.B3:
41
+ return "8333";
42
+ case types_1.Chain.BeraChain:
43
+ return "80094";
44
+ case types_1.Chain.Flow:
45
+ return "747";
46
+ case types_1.Chain.ApeChain:
47
+ return "33139";
48
+ case types_1.Chain.Ronin:
49
+ return "2020";
50
+ case types_1.Chain.Abstract:
51
+ return "2741";
52
+ case types_1.Chain.Shape:
53
+ return "360";
54
+ case types_1.Chain.Unichain:
55
+ return "130";
56
+ case types_1.Chain.Gunzilla:
57
+ return "43419";
58
+ case types_1.Chain.HyperEVM:
59
+ return "999";
60
+ case types_1.Chain.Somnia:
61
+ return "5031";
62
+ case types_1.Chain.Monad:
63
+ return "143";
64
+ case types_1.Chain.MegaETH:
65
+ return "4326";
66
+ default:
67
+ throw new Error(`Unknown chainId for ${chain}`);
68
+ }
69
+ };
70
+ exports.getChainId = getChainId;
71
+ /**
72
+ * Returns the default currency for offers on the given chain.
73
+ * @param chain The chain to get the offer payment token for
74
+ * @returns The token address for offers
75
+ */
76
+ const getOfferPaymentToken = (chain) => {
77
+ switch (chain) {
78
+ case types_1.Chain.Mainnet:
79
+ return "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"; // WETH
80
+ case types_1.Chain.Polygon:
81
+ return "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"; // WETH
82
+ case types_1.Chain.Avalanche:
83
+ return "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7"; // WAVAX
84
+ case types_1.Chain.Arbitrum:
85
+ return "0x82af49447d8a07e3bd95bd0d56f35241523fbab1"; // WETH
86
+ case types_1.Chain.Blast:
87
+ return "0x4300000000000000000000000000000000000004"; // WETH
88
+ // MegaETH and OP Chains have WETH at the same address
89
+ case types_1.Chain.MegaETH:
90
+ case types_1.Chain.Base:
91
+ case types_1.Chain.Optimism:
92
+ case types_1.Chain.Zora:
93
+ case types_1.Chain.B3:
94
+ case types_1.Chain.Shape:
95
+ case types_1.Chain.Unichain:
96
+ return "0x4200000000000000000000000000000000000006"; // WETH
97
+ case types_1.Chain.BeraChain:
98
+ return "0x6969696969696969696969696969696969696969"; // WBERA
99
+ case types_1.Chain.Sei:
100
+ return "0xe30fedd158a2e3b13e9badaeabafc5516e95e8c7"; // WSEI
101
+ case types_1.Chain.Flow:
102
+ return "0xd3bf53dac106a0290b0483ecbc89d40fcc961f3e"; // WFLOW
103
+ case types_1.Chain.ApeChain:
104
+ return "0x48b62137edfa95a428d35c09e44256a739f6b557"; // WAPE
105
+ case types_1.Chain.Ronin:
106
+ return "0xe514d9deb7966c8be0ca922de8a064264ea6bcd4"; // WRON
107
+ case types_1.Chain.Abstract:
108
+ return "0x3439153eb7af838ad19d56e1571fbd09333c2809"; // WETH
109
+ case types_1.Chain.Gunzilla:
110
+ return "0x5aad7bba61d95c2c4e525a35f4062040264611f1"; // WGUN
111
+ case types_1.Chain.HyperEVM:
112
+ return "0x5555555555555555555555555555555555555555"; // WHYPE
113
+ case types_1.Chain.Somnia:
114
+ return "0x046ede9564a72571df6f5e44d0405360c0f4dcab"; // WSOMI
115
+ case types_1.Chain.Monad:
116
+ return "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"; // WMON
117
+ default:
118
+ throw new Error(`Unknown offer currency for ${chain}`);
119
+ }
120
+ };
121
+ exports.getOfferPaymentToken = getOfferPaymentToken;
122
+ /**
123
+ * Returns the default currency for listings on the given chain.
124
+ * @param chain The chain to get the listing payment token for
125
+ * @returns The token address for listings
126
+ */
127
+ const getListingPaymentToken = (chain) => {
128
+ switch (chain) {
129
+ case types_1.Chain.Mainnet:
130
+ case types_1.Chain.Somnia:
131
+ case types_1.Chain.HyperEVM:
132
+ case types_1.Chain.Arbitrum:
133
+ case types_1.Chain.Blast:
134
+ case types_1.Chain.Base:
135
+ case types_1.Chain.Optimism:
136
+ case types_1.Chain.Zora:
137
+ case types_1.Chain.B3:
138
+ case types_1.Chain.Abstract:
139
+ case types_1.Chain.Shape:
140
+ case types_1.Chain.Unichain:
141
+ case types_1.Chain.Monad:
142
+ case types_1.Chain.MegaETH:
143
+ return "0x0000000000000000000000000000000000000000"; // ETH
144
+ case types_1.Chain.Polygon:
145
+ return "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"; // WETH
146
+ case types_1.Chain.Avalanche:
147
+ return "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7"; // WETH
148
+ case types_1.Chain.BeraChain:
149
+ return "0x0000000000000000000000000000000000000000"; // BERA
150
+ case types_1.Chain.Sei:
151
+ return "0x0000000000000000000000000000000000000000"; // SEI
152
+ case types_1.Chain.Flow:
153
+ return "0xd3bf53dac106a0290b0483ecbc89d40fcc961f3e"; // WETH
154
+ case types_1.Chain.ApeChain:
155
+ return "0x0000000000000000000000000000000000000000"; // APE
156
+ case types_1.Chain.Ronin:
157
+ return "0xe514d9deb7966c8be0ca922de8a064264ea6bcd4"; // WETH
158
+ case types_1.Chain.Gunzilla:
159
+ return "0x0000000000000000000000000000000000000000"; // GUN
160
+ default:
161
+ throw new Error(`Unknown listing currency for ${chain}`);
162
+ }
163
+ };
164
+ exports.getListingPaymentToken = getListingPaymentToken;
165
+ /**
166
+ * Get the default conduit key and address for a given chain.
167
+ * @param chain The chain to get the conduit for
168
+ * @returns The conduit key and address for the chain
169
+ */
170
+ const getDefaultConduit = (chain) => {
171
+ switch (chain) {
172
+ case types_1.Chain.Abstract:
173
+ case types_1.Chain.HyperEVM:
174
+ case types_1.Chain.Monad:
175
+ return {
176
+ key: constants_2.OPENSEA_CONDUIT_KEY_2,
177
+ address: constants_2.OPENSEA_CONDUIT_ADDRESS_2,
178
+ };
179
+ default:
180
+ if ((0, exports.usesAlternateProtocol)(chain)) {
181
+ return {
182
+ key: constants_2.ALTERNATE_CONDUIT_KEY,
183
+ address: constants_2.ALTERNATE_CONDUIT_ADDRESS,
184
+ };
185
+ }
186
+ return {
187
+ key: constants_2.OPENSEA_CONDUIT_KEY,
188
+ address: constants_2.OPENSEA_CONDUIT_ADDRESS,
189
+ };
190
+ }
191
+ };
192
+ exports.getDefaultConduit = getDefaultConduit;
193
+ /**
194
+ * Get the Seaport 1.6 contract address for a given chain.
195
+ * @param chain The chain to get the Seaport address for
196
+ * @returns The Seaport 1.6 address for the chain
197
+ */
198
+ const getSeaportAddress = (chain) => {
199
+ return (0, exports.usesAlternateProtocol)(chain)
200
+ ? constants_2.ALTERNATE_SEAPORT_V1_6_ADDRESS
201
+ : constants_1.CROSS_CHAIN_SEAPORT_V1_6_ADDRESS;
202
+ };
203
+ exports.getSeaportAddress = getSeaportAddress;
204
+ /**
205
+ * Get the signed zone address for a given chain.
206
+ * @param chain The chain to get the signed zone address for
207
+ * @returns The signed zone address for the chain
208
+ */
209
+ const getSignedZone = (chain) => {
210
+ return (0, exports.usesAlternateProtocol)(chain)
211
+ ? constants_2.ALTERNATE_SIGNED_ZONE_V2_ADDRESS
212
+ : constants_2.OPENSEA_SIGNED_ZONE_V2;
213
+ };
214
+ exports.getSignedZone = getSignedZone;
215
+ /**
216
+ * Get the fee recipient address for a given chain
217
+ * @param chain The blockchain chain
218
+ * @returns The fee recipient address for the chain
219
+ */
220
+ const getFeeRecipient = (chain) => {
221
+ switch (chain) {
222
+ case types_1.Chain.Gunzilla:
223
+ return constants_2.GUNZILLA_FEE_RECIPIENT;
224
+ case types_1.Chain.Somnia:
225
+ return constants_2.SOMNIA_FEE_RECIPIENT;
226
+ case types_1.Chain.MegaETH:
227
+ return constants_2.ALTERNATE_FEE_RECIPIENT;
228
+ default:
229
+ return constants_2.OPENSEA_FEE_RECIPIENT;
230
+ }
231
+ };
232
+ exports.getFeeRecipient = getFeeRecipient;
233
+ /**
234
+ * Get the appropriate token address for wrap/unwrap operations.
235
+ * For Polygon, use WPOL. For other chains, use the wrapped native asset.
236
+ * @param chain The chain to get the token address for
237
+ * @returns The token address for wrap/unwrap operations
238
+ */
239
+ const getNativeWrapTokenAddress = (chain) => {
240
+ switch (chain) {
241
+ case types_1.Chain.Polygon:
242
+ return constants_2.WPOL_ADDRESS;
243
+ default:
244
+ return (0, exports.getOfferPaymentToken)(chain);
245
+ }
246
+ };
247
+ exports.getNativeWrapTokenAddress = getNativeWrapTokenAddress;
248
+ //# sourceMappingURL=chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../../src/utils/chain.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import type { Fee, OpenSeaAccount, OpenSeaCollection, OpenSeaPaymentToken, PricingCurrencies, RarityStrategy } from "../types";
2
+ /**
3
+ * Converts a collection JSON response to an OpenSeaCollection object.
4
+ * @param collection The raw collection JSON from the API
5
+ * @returns OpenSeaCollection object
6
+ */
7
+ export declare const collectionFromJSON: (collection: any) => OpenSeaCollection;
8
+ /**
9
+ * Converts a rarity JSON response to a RarityStrategy object.
10
+ * @param rarity The raw rarity JSON from the API
11
+ * @returns RarityStrategy object or null
12
+ */
13
+ export declare const rarityFromJSON: (rarity: any) => RarityStrategy | null;
14
+ /**
15
+ * Converts a payment token JSON response to an OpenSeaPaymentToken object.
16
+ * @param token The raw payment token JSON from the API
17
+ * @returns OpenSeaPaymentToken object
18
+ */
19
+ export declare const paymentTokenFromJSON: (token: any) => OpenSeaPaymentToken;
20
+ /**
21
+ * Converts a pricing currencies JSON response to a PricingCurrencies object.
22
+ * @param pricingCurrencies The raw pricing currencies JSON from the API
23
+ * @returns PricingCurrencies object or undefined
24
+ */
25
+ export declare const pricingCurrenciesFromJSON: (pricingCurrencies: any) => PricingCurrencies | undefined;
26
+ /**
27
+ * Converts an account JSON response to an OpenSeaAccount object.
28
+ * @param account The raw account JSON from the API
29
+ * @returns OpenSeaAccount object
30
+ */
31
+ export declare const accountFromJSON: (account: any) => OpenSeaAccount;
32
+ /**
33
+ * Converts a fee JSON response to a Fee object.
34
+ * @param fee The raw fee JSON from the API
35
+ * @returns Fee object
36
+ */
37
+ export declare const feeFromJSON: (fee: any) => Fee;
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.feeFromJSON = exports.accountFromJSON = exports.pricingCurrenciesFromJSON = exports.paymentTokenFromJSON = exports.rarityFromJSON = exports.collectionFromJSON = void 0;
4
+ /**
5
+ * Converts a collection JSON response to an OpenSeaCollection object.
6
+ * @param collection The raw collection JSON from the API
7
+ * @returns OpenSeaCollection object
8
+ */
9
+ const collectionFromJSON = (collection) => {
10
+ return {
11
+ name: collection.name,
12
+ collection: collection.collection,
13
+ description: collection.description,
14
+ imageUrl: collection.image_url,
15
+ bannerImageUrl: collection.banner_image_url,
16
+ owner: collection.owner,
17
+ safelistStatus: collection.safelist_status,
18
+ category: collection.category,
19
+ isDisabled: collection.is_disabled,
20
+ isNSFW: collection.is_nsfw,
21
+ traitOffersEnabled: collection.trait_offers_enabled,
22
+ collectionOffersEnabled: collection.collection_offers_enabled,
23
+ openseaUrl: collection.opensea_url,
24
+ projectUrl: collection.project_url,
25
+ wikiUrl: collection.wiki_url,
26
+ discordUrl: collection.discord_url,
27
+ telegramUrl: collection.telegram_url,
28
+ twitterUsername: collection.twitter_username,
29
+ instagramUsername: collection.instagram_username,
30
+ contracts: (collection.contracts ?? []).map((contract) => ({
31
+ address: contract.address,
32
+ chain: contract.chain,
33
+ })),
34
+ editors: collection.editors,
35
+ fees: (collection.fees ?? []).map(exports.feeFromJSON),
36
+ rarity: (0, exports.rarityFromJSON)(collection.rarity),
37
+ pricingCurrencies: (0, exports.pricingCurrenciesFromJSON)(collection.pricing_currencies),
38
+ totalSupply: collection.total_supply,
39
+ uniqueItemCount: collection.unique_item_count,
40
+ createdDate: collection.created_date,
41
+ requiredZone: collection.required_zone,
42
+ };
43
+ };
44
+ exports.collectionFromJSON = collectionFromJSON;
45
+ /**
46
+ * Converts a rarity JSON response to a RarityStrategy object.
47
+ * @param rarity The raw rarity JSON from the API
48
+ * @returns RarityStrategy object or null
49
+ */
50
+ const rarityFromJSON = (rarity) => {
51
+ if (!rarity) {
52
+ return null;
53
+ }
54
+ const fromJSON = {
55
+ strategyId: rarity.strategy_id,
56
+ strategyVersion: rarity.strategy_version,
57
+ calculatedAt: rarity.calculated_at,
58
+ maxRank: rarity.max_rank,
59
+ tokensScored: rarity.tokens_scored,
60
+ };
61
+ return fromJSON;
62
+ };
63
+ exports.rarityFromJSON = rarityFromJSON;
64
+ /**
65
+ * Converts a payment token JSON response to an OpenSeaPaymentToken object.
66
+ * @param token The raw payment token JSON from the API
67
+ * @returns OpenSeaPaymentToken object
68
+ */
69
+ const paymentTokenFromJSON = (token) => {
70
+ const fromJSON = {
71
+ name: token.name,
72
+ symbol: token.symbol,
73
+ decimals: token.decimals,
74
+ address: token.address,
75
+ chain: token.chain,
76
+ imageUrl: token.image,
77
+ ethPrice: token.eth_price,
78
+ usdPrice: token.usd_price,
79
+ };
80
+ return fromJSON;
81
+ };
82
+ exports.paymentTokenFromJSON = paymentTokenFromJSON;
83
+ /**
84
+ * Converts a pricing currencies JSON response to a PricingCurrencies object.
85
+ * @param pricingCurrencies The raw pricing currencies JSON from the API
86
+ * @returns PricingCurrencies object or undefined
87
+ */
88
+ const pricingCurrenciesFromJSON = (pricingCurrencies) => {
89
+ if (!pricingCurrencies) {
90
+ return undefined;
91
+ }
92
+ return {
93
+ listingCurrency: pricingCurrencies.listing_currency
94
+ ? (0, exports.paymentTokenFromJSON)(pricingCurrencies.listing_currency)
95
+ : undefined,
96
+ offerCurrency: pricingCurrencies.offer_currency
97
+ ? (0, exports.paymentTokenFromJSON)(pricingCurrencies.offer_currency)
98
+ : undefined,
99
+ };
100
+ };
101
+ exports.pricingCurrenciesFromJSON = pricingCurrenciesFromJSON;
102
+ /**
103
+ * Converts an account JSON response to an OpenSeaAccount object.
104
+ * @param account The raw account JSON from the API
105
+ * @returns OpenSeaAccount object
106
+ */
107
+ const accountFromJSON = (account) => {
108
+ return {
109
+ address: account.address,
110
+ username: account.username,
111
+ profileImageUrl: account.profile_image_url,
112
+ bannerImageUrl: account.banner_image_url,
113
+ website: account.website,
114
+ socialMediaAccounts: (account.social_media_accounts ?? []).map((acct) => ({
115
+ platform: acct.platform,
116
+ username: acct.username,
117
+ })),
118
+ bio: account.bio,
119
+ joinedDate: account.joined_date,
120
+ };
121
+ };
122
+ exports.accountFromJSON = accountFromJSON;
123
+ /**
124
+ * Converts a fee JSON response to a Fee object.
125
+ * @param fee The raw fee JSON from the API
126
+ * @returns Fee object
127
+ */
128
+ const feeFromJSON = (fee) => {
129
+ const fromJSON = {
130
+ fee: fee.fee,
131
+ recipient: fee.recipient,
132
+ required: fee.required,
133
+ };
134
+ return fromJSON;
135
+ };
136
+ exports.feeFromJSON = feeFromJSON;
137
+ //# sourceMappingURL=converters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"converters.js","sourceRoot":"","sources":["../../../src/utils/converters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Utility functions for working with Unix timestamps (seconds since epoch).
3
+ * OpenSea API and Seaport protocol use Unix timestamps in seconds, not milliseconds.
4
+ */
5
+ /**
6
+ * Get the current Unix timestamp in seconds
7
+ * @returns Current time as Unix timestamp (seconds since epoch)
8
+ */
9
+ export declare function getCurrentUnixTimestamp(): number;
10
+ /**
11
+ * Get a Unix timestamp for a future time
12
+ * @param seconds Number of seconds from now
13
+ * @returns Unix timestamp (seconds since epoch)
14
+ * @example
15
+ * // Get timestamp for 1 day from now
16
+ * const tomorrow = getUnixTimestampInSeconds(60 * 60 * 24);
17
+ */
18
+ export declare function getUnixTimestampInSeconds(seconds: number): number;
19
+ /**
20
+ * Common time durations in seconds for convenience
21
+ */
22
+ export declare enum TimeInSeconds {
23
+ /** 1 minute = 60 seconds */
24
+ MINUTE = 60,
25
+ /** 1 hour = 3600 seconds */
26
+ HOUR = 3600,
27
+ /** 1 day = 86400 seconds */
28
+ DAY = 86400,
29
+ /** 1 week = 604800 seconds */
30
+ WEEK = 604800,
31
+ /** 30 days = 2592000 seconds */
32
+ MONTH = 2592000
33
+ }
34
+ /**
35
+ * Get Unix timestamp for one month from now (30 days)
36
+ * @returns Unix timestamp (seconds since epoch) for 30 days in the future
37
+ */
38
+ export declare const oneMonthFromNowInSeconds: () => number;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /**
3
+ * Utility functions for working with Unix timestamps (seconds since epoch).
4
+ * OpenSea API and Seaport protocol use Unix timestamps in seconds, not milliseconds.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.oneMonthFromNowInSeconds = exports.TimeInSeconds = void 0;
8
+ exports.getCurrentUnixTimestamp = getCurrentUnixTimestamp;
9
+ exports.getUnixTimestampInSeconds = getUnixTimestampInSeconds;
10
+ /**
11
+ * Get the current Unix timestamp in seconds
12
+ * @returns Current time as Unix timestamp (seconds since epoch)
13
+ */
14
+ function getCurrentUnixTimestamp() {
15
+ return Math.floor(Date.now() / 1000);
16
+ }
17
+ /**
18
+ * Get a Unix timestamp for a future time
19
+ * @param seconds Number of seconds from now
20
+ * @returns Unix timestamp (seconds since epoch)
21
+ * @example
22
+ * // Get timestamp for 1 day from now
23
+ * const tomorrow = getUnixTimestampInSeconds(60 * 60 * 24);
24
+ */
25
+ function getUnixTimestampInSeconds(seconds) {
26
+ return getCurrentUnixTimestamp() + seconds;
27
+ }
28
+ /**
29
+ * Common time durations in seconds for convenience
30
+ */
31
+ var TimeInSeconds;
32
+ (function (TimeInSeconds) {
33
+ /** 1 minute = 60 seconds */
34
+ TimeInSeconds[TimeInSeconds["MINUTE"] = 60] = "MINUTE";
35
+ /** 1 hour = 3600 seconds */
36
+ TimeInSeconds[TimeInSeconds["HOUR"] = 3600] = "HOUR";
37
+ /** 1 day = 86400 seconds */
38
+ TimeInSeconds[TimeInSeconds["DAY"] = 86400] = "DAY";
39
+ /** 1 week = 604800 seconds */
40
+ TimeInSeconds[TimeInSeconds["WEEK"] = 604800] = "WEEK";
41
+ /** 30 days = 2592000 seconds */
42
+ TimeInSeconds[TimeInSeconds["MONTH"] = 2592000] = "MONTH";
43
+ })(TimeInSeconds || (exports.TimeInSeconds = TimeInSeconds = {}));
44
+ /**
45
+ * Get Unix timestamp for one month from now (30 days)
46
+ * @returns Unix timestamp (seconds since epoch) for 30 days in the future
47
+ */
48
+ const oneMonthFromNowInSeconds = () => {
49
+ return getUnixTimestampInSeconds(TimeInSeconds.MONTH);
50
+ };
51
+ exports.oneMonthFromNowInSeconds = oneMonthFromNowInSeconds;
52
+ //# sourceMappingURL=dateHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dateHelper.js","sourceRoot":"","sources":["../../../src/utils/dateHelper.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAMH,0DAEC;AAUD,8DAEC;AAlBD;;;GAGG;AACH,SAAgB,uBAAuB;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;AACtC,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,yBAAyB,CAAC,OAAe;IACvD,OAAO,uBAAuB,EAAE,GAAG,OAAO,CAAA;AAC5C,CAAC;AAED;;GAEG;AACH,IAAY,aAWX;AAXD,WAAY,aAAa;IACvB,4BAA4B;IAC5B,sDAAW,CAAA;IACX,4BAA4B;IAC5B,oDAAW,CAAA;IACX,4BAA4B;IAC5B,mDAAW,CAAA;IACX,8BAA8B;IAC9B,sDAAa,CAAA;IACb,gCAAgC;IAChC,yDAAe,CAAA;AACjB,CAAC,EAXW,aAAa,6BAAb,aAAa,QAWxB;AAED;;;GAGG;AACI,MAAM,wBAAwB,GAAG,GAAW,EAAE;IACnD,OAAO,yBAAyB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AACvD,CAAC,CAAA;AAFY,QAAA,wBAAwB,4BAEpC"}
@@ -0,0 +1,13 @@
1
+ import type { Fee } from "../types";
2
+ /**
3
+ * Sums up the basis points for fees.
4
+ * @param fees The fees to sum up
5
+ * @returns sum of basis points
6
+ */
7
+ export declare const totalBasisPointsForFees: (fees: Fee[]) => bigint;
8
+ /**
9
+ * Converts a fee to its basis points representation.
10
+ * @param fee The fee to convert
11
+ * @returns the basis points
12
+ */
13
+ export declare const basisPointsForFee: (fee: Fee) => bigint;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.basisPointsForFee = exports.totalBasisPointsForFees = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const constants_1 = require("../constants");
6
+ /**
7
+ * Sums up the basis points for fees.
8
+ * @param fees The fees to sum up
9
+ * @returns sum of basis points
10
+ */
11
+ const totalBasisPointsForFees = (fees) => {
12
+ const feeBasisPoints = fees.map(fee => (0, exports.basisPointsForFee)(fee));
13
+ const totalBasisPoints = feeBasisPoints.reduce((sum, basisPoints) => basisPoints + sum, 0n);
14
+ return totalBasisPoints;
15
+ };
16
+ exports.totalBasisPointsForFees = totalBasisPointsForFees;
17
+ /**
18
+ * Converts a fee to its basis points representation.
19
+ * @param fee The fee to convert
20
+ * @returns the basis points
21
+ */
22
+ const basisPointsForFee = (fee) => {
23
+ return BigInt(ethers_1.FixedNumber.fromString(fee.fee.toString())
24
+ .mul(constants_1.FIXED_NUMBER_100)
25
+ .toFormat(0) // format to 0 decimal places to convert to bigint
26
+ .toString());
27
+ };
28
+ exports.basisPointsForFee = basisPointsForFee;
29
+ //# sourceMappingURL=fees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fees.js","sourceRoot":"","sources":["../../../src/utils/fees.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AACpC,4CAA+C;AAG/C;;;;GAIG;AACI,MAAM,uBAAuB,GAAG,CAAC,IAAW,EAAU,EAAE;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,yBAAiB,EAAC,GAAG,CAAC,CAAC,CAAA;IAC9D,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAC5C,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,GAAG,GAAG,EACvC,EAAE,CACH,CAAA;IACD,OAAO,gBAAgB,CAAA;AACzB,CAAC,CAAA;AAPY,QAAA,uBAAuB,2BAOnC;AAED;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,CAAC,GAAQ,EAAU,EAAE;IACpD,OAAO,MAAM,CACX,oBAAW,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;SACvC,GAAG,CAAC,4BAAgB,CAAC;SACrB,QAAQ,CAAC,CAAC,CAAC,CAAC,kDAAkD;SAC9D,QAAQ,EAAE,CACd,CAAA;AACH,CAAC,CAAA;AAPY,QAAA,iBAAiB,qBAO7B"}
@@ -0,0 +1,2 @@
1
+ export * from "./dateHelper";
2
+ export * from "./utils";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./dateHelper"), exports);
18
+ __exportStar(require("./utils"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,0CAAuB"}