@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,211 @@
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
+ const chainIds_generated_1 = require("./chainIds.generated");
8
+ /**
9
+ * Checks if a chain uses the alternate protocol addresses.
10
+ * These chains use non-standard Seaport, conduit, and signed zone deployments.
11
+ * @param chain The chain to check
12
+ * @returns True if the chain uses alternate protocol addresses
13
+ */
14
+ const usesAlternateProtocol = (chain) => chain === types_1.Chain.Gunzilla || chain === types_1.Chain.Somnia || chain === types_1.Chain.MegaETH;
15
+ exports.usesAlternateProtocol = usesAlternateProtocol;
16
+ /**
17
+ * Gets the chain ID for a given chain.
18
+ *
19
+ * Uses the generated CHAIN_ID_MAP from scripts/chain-data.json.
20
+ * To add a new chain, update chain-data.json and run `pnpm sync-chains`.
21
+ *
22
+ * @param chain The chain to get the ID for
23
+ * @returns The chain ID as a string
24
+ */
25
+ const getChainId = (chain) => {
26
+ const id = chainIds_generated_1.CHAIN_ID_MAP[chain];
27
+ if (id === undefined)
28
+ throw new Error(`Unknown chainId for ${chain}`);
29
+ return id;
30
+ };
31
+ exports.getChainId = getChainId;
32
+ /**
33
+ * Returns the default currency for offers on the given chain.
34
+ * @param chain The chain to get the offer payment token for
35
+ * @returns The token address for offers
36
+ */
37
+ const getOfferPaymentToken = (chain) => {
38
+ switch (chain) {
39
+ case types_1.Chain.Mainnet:
40
+ return "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2"; // WETH
41
+ case types_1.Chain.Polygon:
42
+ return "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"; // WETH
43
+ case types_1.Chain.Avalanche:
44
+ return "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7"; // WAVAX
45
+ case types_1.Chain.Arbitrum:
46
+ return "0x82af49447d8a07e3bd95bd0d56f35241523fbab1"; // WETH
47
+ case types_1.Chain.Blast:
48
+ return "0x4300000000000000000000000000000000000004"; // WETH
49
+ // MegaETH and OP Chains have WETH at the same address
50
+ case types_1.Chain.MegaETH:
51
+ case types_1.Chain.Base:
52
+ case types_1.Chain.Optimism:
53
+ case types_1.Chain.Zora:
54
+ case types_1.Chain.B3:
55
+ case types_1.Chain.Shape:
56
+ case types_1.Chain.Unichain:
57
+ case types_1.Chain.Ink:
58
+ return "0x4200000000000000000000000000000000000006"; // WETH
59
+ case types_1.Chain.BeraChain:
60
+ return "0x6969696969696969696969696969696969696969"; // WBERA
61
+ case types_1.Chain.Sei:
62
+ return "0xe30fedd158a2e3b13e9badaeabafc5516e95e8c7"; // WSEI
63
+ case types_1.Chain.Flow:
64
+ return "0xd3bf53dac106a0290b0483ecbc89d40fcc961f3e"; // WFLOW
65
+ case types_1.Chain.ApeChain:
66
+ return "0x48b62137edfa95a428d35c09e44256a739f6b557"; // WAPE
67
+ case types_1.Chain.Ronin:
68
+ return "0xe514d9deb7966c8be0ca922de8a064264ea6bcd4"; // WRON
69
+ case types_1.Chain.Abstract:
70
+ return "0x3439153eb7af838ad19d56e1571fbd09333c2809"; // WETH
71
+ case types_1.Chain.Gunzilla:
72
+ return "0x5aad7bba61d95c2c4e525a35f4062040264611f1"; // WGUN
73
+ case types_1.Chain.HyperEVM:
74
+ return "0x5555555555555555555555555555555555555555"; // WHYPE
75
+ case types_1.Chain.Somnia:
76
+ return "0x046ede9564a72571df6f5e44d0405360c0f4dcab"; // WSOMI
77
+ case types_1.Chain.Monad:
78
+ return "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"; // WMON
79
+ default:
80
+ throw new Error(`Unknown offer currency for ${chain}`);
81
+ }
82
+ };
83
+ exports.getOfferPaymentToken = getOfferPaymentToken;
84
+ /**
85
+ * Returns the default currency for listings on the given chain.
86
+ * @param chain The chain to get the listing payment token for
87
+ * @returns The token address for listings
88
+ */
89
+ const getListingPaymentToken = (chain) => {
90
+ switch (chain) {
91
+ case types_1.Chain.Mainnet:
92
+ case types_1.Chain.Somnia:
93
+ case types_1.Chain.HyperEVM:
94
+ case types_1.Chain.Arbitrum:
95
+ case types_1.Chain.Blast:
96
+ case types_1.Chain.Base:
97
+ case types_1.Chain.Optimism:
98
+ case types_1.Chain.Zora:
99
+ case types_1.Chain.B3:
100
+ case types_1.Chain.Abstract:
101
+ case types_1.Chain.Shape:
102
+ case types_1.Chain.Unichain:
103
+ case types_1.Chain.Monad:
104
+ case types_1.Chain.MegaETH:
105
+ case types_1.Chain.Ink:
106
+ return "0x0000000000000000000000000000000000000000"; // ETH
107
+ case types_1.Chain.Polygon:
108
+ return "0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"; // WETH
109
+ case types_1.Chain.Avalanche:
110
+ return "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7"; // WETH
111
+ case types_1.Chain.BeraChain:
112
+ return "0x0000000000000000000000000000000000000000"; // BERA
113
+ case types_1.Chain.Sei:
114
+ return "0x0000000000000000000000000000000000000000"; // SEI
115
+ case types_1.Chain.Flow:
116
+ return "0xd3bf53dac106a0290b0483ecbc89d40fcc961f3e"; // WETH
117
+ case types_1.Chain.ApeChain:
118
+ return "0x0000000000000000000000000000000000000000"; // APE
119
+ case types_1.Chain.Ronin:
120
+ return "0xe514d9deb7966c8be0ca922de8a064264ea6bcd4"; // WETH
121
+ case types_1.Chain.Gunzilla:
122
+ return "0x0000000000000000000000000000000000000000"; // GUN
123
+ default:
124
+ throw new Error(`Unknown listing currency for ${chain}`);
125
+ }
126
+ };
127
+ exports.getListingPaymentToken = getListingPaymentToken;
128
+ /**
129
+ * Get the default conduit key and address for a given chain.
130
+ * @param chain The chain to get the conduit for
131
+ * @returns The conduit key and address for the chain
132
+ */
133
+ const getDefaultConduit = (chain) => {
134
+ switch (chain) {
135
+ case types_1.Chain.Abstract:
136
+ case types_1.Chain.HyperEVM:
137
+ case types_1.Chain.Monad:
138
+ return {
139
+ key: constants_2.OPENSEA_CONDUIT_KEY_2,
140
+ address: constants_2.OPENSEA_CONDUIT_ADDRESS_2,
141
+ };
142
+ default:
143
+ if ((0, exports.usesAlternateProtocol)(chain)) {
144
+ return {
145
+ key: constants_2.ALTERNATE_CONDUIT_KEY,
146
+ address: constants_2.ALTERNATE_CONDUIT_ADDRESS,
147
+ };
148
+ }
149
+ return {
150
+ key: constants_2.OPENSEA_CONDUIT_KEY,
151
+ address: constants_2.OPENSEA_CONDUIT_ADDRESS,
152
+ };
153
+ }
154
+ };
155
+ exports.getDefaultConduit = getDefaultConduit;
156
+ /**
157
+ * Get the Seaport 1.6 contract address for a given chain.
158
+ * @param chain The chain to get the Seaport address for
159
+ * @returns The Seaport 1.6 address for the chain
160
+ */
161
+ const getSeaportAddress = (chain) => {
162
+ return (0, exports.usesAlternateProtocol)(chain)
163
+ ? constants_2.ALTERNATE_SEAPORT_V1_6_ADDRESS
164
+ : constants_1.CROSS_CHAIN_SEAPORT_V1_6_ADDRESS;
165
+ };
166
+ exports.getSeaportAddress = getSeaportAddress;
167
+ /**
168
+ * Get the signed zone address for a given chain.
169
+ * @param chain The chain to get the signed zone address for
170
+ * @returns The signed zone address for the chain
171
+ */
172
+ const getSignedZone = (chain) => {
173
+ return (0, exports.usesAlternateProtocol)(chain)
174
+ ? constants_2.ALTERNATE_SIGNED_ZONE_V2_ADDRESS
175
+ : constants_2.OPENSEA_SIGNED_ZONE_V2;
176
+ };
177
+ exports.getSignedZone = getSignedZone;
178
+ /**
179
+ * Get the fee recipient address for a given chain
180
+ * @param chain The blockchain chain
181
+ * @returns The fee recipient address for the chain
182
+ */
183
+ const getFeeRecipient = (chain) => {
184
+ switch (chain) {
185
+ case types_1.Chain.Gunzilla:
186
+ return constants_2.GUNZILLA_FEE_RECIPIENT;
187
+ case types_1.Chain.Somnia:
188
+ return constants_2.SOMNIA_FEE_RECIPIENT;
189
+ case types_1.Chain.MegaETH:
190
+ return constants_2.ALTERNATE_FEE_RECIPIENT;
191
+ default:
192
+ return constants_2.OPENSEA_FEE_RECIPIENT;
193
+ }
194
+ };
195
+ exports.getFeeRecipient = getFeeRecipient;
196
+ /**
197
+ * Get the appropriate token address for wrap/unwrap operations.
198
+ * For Polygon, use WPOL. For other chains, use the wrapped native asset.
199
+ * @param chain The chain to get the token address for
200
+ * @returns The token address for wrap/unwrap operations
201
+ */
202
+ const getNativeWrapTokenAddress = (chain) => {
203
+ switch (chain) {
204
+ case types_1.Chain.Polygon:
205
+ return constants_2.WPOL_ADDRESS;
206
+ default:
207
+ return (0, exports.getOfferPaymentToken)(chain);
208
+ }
209
+ };
210
+ exports.getNativeWrapTokenAddress = getNativeWrapTokenAddress;
211
+ //# sourceMappingURL=chain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/utils/chain.ts"],"names":[],"mappings":";;;AAAA,iEAAoF;AACpF,4CAeqB;AACrB,oCAAgC;AAChC,6DAAmD;AAEnD;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,CAAC,KAAY,EAAW,EAAE,CAC7D,KAAK,KAAK,aAAK,CAAC,QAAQ,IAAI,KAAK,KAAK,aAAK,CAAC,MAAM,IAAI,KAAK,KAAK,aAAK,CAAC,OAAO,CAAA;AADlE,QAAA,qBAAqB,yBAC6C;AAE/E;;;;;;;;GAQG;AACI,MAAM,UAAU,GAAG,CAAC,KAAY,EAAU,EAAE;IACjD,MAAM,EAAE,GAAG,iCAAY,CAAC,KAAK,CAAC,CAAA;IAC9B,IAAI,EAAE,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAA;IACrE,OAAO,EAAE,CAAA;AACX,CAAC,CAAA;AAJY,QAAA,UAAU,cAItB;AAED;;;;GAIG;AACI,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAE,EAAE;IACnD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,OAAO;YAChB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,OAAO;YAChB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,SAAS;YAClB,OAAO,4CAA4C,CAAA,CAAC,QAAQ;QAC9D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,KAAK;YACd,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,sDAAsD;QACtD,KAAK,aAAK,CAAC,OAAO,CAAC;QACnB,KAAK,aAAK,CAAC,IAAI,CAAC;QAChB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,IAAI,CAAC;QAChB,KAAK,aAAK,CAAC,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,KAAK,CAAC;QACjB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,GAAG;YACZ,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,SAAS;YAClB,OAAO,4CAA4C,CAAA,CAAC,QAAQ;QAC9D,KAAK,aAAK,CAAC,GAAG;YACZ,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,IAAI;YACb,OAAO,4CAA4C,CAAA,CAAC,QAAQ;QAC9D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,KAAK;YACd,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,QAAQ;QAC9D,KAAK,aAAK,CAAC,MAAM;YACf,OAAO,4CAA4C,CAAA,CAAC,QAAQ;QAC9D,KAAK,aAAK,CAAC,KAAK;YACd,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D;YACE,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAA;IAC1D,CAAC;AACH,CAAC,CAAA;AA7CY,QAAA,oBAAoB,wBA6ChC;AAED;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAC,KAAY,EAAE,EAAE;IACrD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,OAAO,CAAC;QACnB,KAAK,aAAK,CAAC,MAAM,CAAC;QAClB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,KAAK,CAAC;QACjB,KAAK,aAAK,CAAC,IAAI,CAAC;QAChB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,IAAI,CAAC;QAChB,KAAK,aAAK,CAAC,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,KAAK,CAAC;QACjB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,KAAK,CAAC;QACjB,KAAK,aAAK,CAAC,OAAO,CAAC;QACnB,KAAK,aAAK,CAAC,GAAG;YACZ,OAAO,4CAA4C,CAAA,CAAC,MAAM;QAC5D,KAAK,aAAK,CAAC,OAAO;YAChB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,SAAS;YAClB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,SAAS;YAClB,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,GAAG;YACZ,OAAO,4CAA4C,CAAA,CAAC,MAAM;QAC5D,KAAK,aAAK,CAAC,IAAI;YACb,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,MAAM;QAC5D,KAAK,aAAK,CAAC,KAAK;YACd,OAAO,4CAA4C,CAAA,CAAC,OAAO;QAC7D,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,4CAA4C,CAAA,CAAC,MAAM;QAC5D;YACE,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC,CAAA;AArCY,QAAA,sBAAsB,0BAqClC;AAED;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,CAC/B,KAAY,EACsB,EAAE;IACpC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,QAAQ,CAAC;QACpB,KAAK,aAAK,CAAC,KAAK;YACd,OAAO;gBACL,GAAG,EAAE,iCAAqB;gBAC1B,OAAO,EAAE,qCAAyB;aACnC,CAAA;QACH;YACE,IAAI,IAAA,6BAAqB,EAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,OAAO;oBACL,GAAG,EAAE,iCAAqB;oBAC1B,OAAO,EAAE,qCAAyB;iBACnC,CAAA;YACH,CAAC;YACD,OAAO;gBACL,GAAG,EAAE,+BAAmB;gBACxB,OAAO,EAAE,mCAAuB;aACjC,CAAA;IACL,CAAC;AACH,CAAC,CAAA;AAvBY,QAAA,iBAAiB,qBAuB7B;AAED;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAU,EAAE;IACxD,OAAO,IAAA,6BAAqB,EAAC,KAAK,CAAC;QACjC,CAAC,CAAC,0CAA8B;QAChC,CAAC,CAAC,4CAAgC,CAAA;AACtC,CAAC,CAAA;AAJY,QAAA,iBAAiB,qBAI7B;AAED;;;;GAIG;AACI,MAAM,aAAa,GAAG,CAAC,KAAY,EAAU,EAAE;IACpD,OAAO,IAAA,6BAAqB,EAAC,KAAK,CAAC;QACjC,CAAC,CAAC,4CAAgC;QAClC,CAAC,CAAC,kCAAsB,CAAA;AAC5B,CAAC,CAAA;AAJY,QAAA,aAAa,iBAIzB;AAED;;;;GAIG;AACI,MAAM,eAAe,GAAG,CAAC,KAAY,EAAU,EAAE;IACtD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,QAAQ;YACjB,OAAO,kCAAsB,CAAA;QAC/B,KAAK,aAAK,CAAC,MAAM;YACf,OAAO,gCAAoB,CAAA;QAC7B,KAAK,aAAK,CAAC,OAAO;YAChB,OAAO,mCAAuB,CAAA;QAChC;YACE,OAAO,iCAAqB,CAAA;IAChC,CAAC;AACH,CAAC,CAAA;AAXY,QAAA,eAAe,mBAW3B;AAED;;;;;GAKG;AACI,MAAM,yBAAyB,GAAG,CAAC,KAAY,EAAU,EAAE;IAChE,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,aAAK,CAAC,OAAO;YAChB,OAAO,wBAAY,CAAA;QACrB;YACE,OAAO,IAAA,4BAAoB,EAAC,KAAK,CAAC,CAAA;IACtC,CAAC;AACH,CAAC,CAAA;AAPY,QAAA,yBAAyB,6BAOrC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * AUTO-GENERATED by scripts/sync-chains.ts — DO NOT EDIT.
3
+ * Source of truth: OpenSea REST API + scripts/chain-data.json
4
+ * Run `pnpm sync-chains` to regenerate.
5
+ */
6
+ /** Map chain slug (Chain enum value) to numeric chain ID. */
7
+ export declare const CHAIN_ID_MAP: Record<string, string>;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * AUTO-GENERATED by scripts/sync-chains.ts — DO NOT EDIT.
4
+ * Source of truth: OpenSea REST API + scripts/chain-data.json
5
+ * Run `pnpm sync-chains` to regenerate.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.CHAIN_ID_MAP = void 0;
9
+ /** Map chain slug (Chain enum value) to numeric chain ID. */
10
+ exports.CHAIN_ID_MAP = {
11
+ ethereum: "1",
12
+ optimism: "10",
13
+ unichain: "130",
14
+ polygon: "137",
15
+ monad: "143",
16
+ shape: "360",
17
+ flow: "747",
18
+ hyperevm: "999",
19
+ sei: "1329",
20
+ soneium: "1868",
21
+ ronin: "2020",
22
+ abstract: "2741",
23
+ megaeth: "4326",
24
+ somnia: "5031",
25
+ b3: "8333",
26
+ base: "8453",
27
+ ape_chain: "33139",
28
+ arbitrum: "42161",
29
+ avalanche: "43114",
30
+ gunzilla: "43419",
31
+ ink: "57073",
32
+ animechain: "69000",
33
+ bera_chain: "80094",
34
+ blast: "81457",
35
+ zora: "7777777",
36
+ };
37
+ //# sourceMappingURL=chainIds.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chainIds.generated.js","sourceRoot":"","sources":["../../src/utils/chainIds.generated.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6DAA6D;AAChD,QAAA,YAAY,GAA2B;IAClD,QAAQ,EAAE,GAAG;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,KAAK;IACf,GAAG,EAAE,MAAM;IACX,OAAO,EAAE,MAAM;IACf,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,MAAM;IAChB,OAAO,EAAE,MAAM;IACf,MAAM,EAAE,MAAM;IACd,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,MAAM;IACZ,SAAS,EAAE,OAAO;IAClB,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,OAAO;IAClB,QAAQ,EAAE,OAAO;IACjB,GAAG,EAAE,OAAO;IACZ,UAAU,EAAE,OAAO;IACnB,UAAU,EAAE,OAAO;IACnB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,SAAS;CAChB,CAAA"}
@@ -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"}