@uniswap/universal-router-sdk 1.4.4 → 1.5.0-beta.1

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.
@@ -7,8 +7,22 @@ import { defaultAbiCoder } from 'ethers/lib/utils';
7
7
  import { Trade, Pair } from '@uniswap/v2-sdk';
8
8
  import { Trade as Trade$1, encodeRouteToPath, Pool } from '@uniswap/v3-sdk';
9
9
  import { Protocol, MixedRouteTrade, partitionMixedRouteByProtocol, getOutputOfPools, MixedRouteSDK, MixedRoute, encodeMixedRouteToPath } from '@uniswap/router-sdk';
10
- import { TradeType, Percent, Ether } from '@uniswap/sdk-core';
10
+ import { TradeType, Percent } from '@uniswap/sdk-core';
11
11
 
12
+ function _extends() {
13
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
14
+ for (var i = 1; i < arguments.length; i++) {
15
+ var source = arguments[i];
16
+ for (var key in source) {
17
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
18
+ target[key] = source[key];
19
+ }
20
+ }
21
+ }
22
+ return target;
23
+ };
24
+ return _extends.apply(this, arguments);
25
+ }
12
26
  function _inheritsLoose(subClass, superClass) {
13
27
  subClass.prototype = Object.create(superClass.prototype);
14
28
  subClass.prototype.constructor = subClass;
@@ -77,36 +91,47 @@ var CommandType;
77
91
  CommandType[CommandType["PAY_PORTION"] = 6] = "PAY_PORTION";
78
92
  CommandType[CommandType["V2_SWAP_EXACT_IN"] = 8] = "V2_SWAP_EXACT_IN";
79
93
  CommandType[CommandType["V2_SWAP_EXACT_OUT"] = 9] = "V2_SWAP_EXACT_OUT";
80
- CommandType[CommandType["PERMIT"] = 10] = "PERMIT";
94
+ CommandType[CommandType["PERMIT2_PERMIT"] = 10] = "PERMIT2_PERMIT";
81
95
  CommandType[CommandType["WRAP_ETH"] = 11] = "WRAP_ETH";
82
96
  CommandType[CommandType["UNWRAP_WETH"] = 12] = "UNWRAP_WETH";
83
97
  CommandType[CommandType["PERMIT2_TRANSFER_FROM_BATCH"] = 13] = "PERMIT2_TRANSFER_FROM_BATCH";
84
- CommandType[CommandType["SEAPORT_V1_4"] = 14] = "SEAPORT_V1_4";
98
+ CommandType[CommandType["BALANCE_CHECK_ERC20"] = 14] = "BALANCE_CHECK_ERC20";
85
99
  // NFT-related command types
86
100
  CommandType[CommandType["SEAPORT"] = 16] = "SEAPORT";
87
- CommandType[CommandType["LOOKS_RARE_721"] = 17] = "LOOKS_RARE_721";
101
+ CommandType[CommandType["LOOKS_RARE_V2"] = 17] = "LOOKS_RARE_V2";
88
102
  CommandType[CommandType["NFTX"] = 18] = "NFTX";
89
103
  CommandType[CommandType["CRYPTOPUNKS"] = 19] = "CRYPTOPUNKS";
90
- CommandType[CommandType["LOOKS_RARE_1155"] = 20] = "LOOKS_RARE_1155";
104
+ // 0x14
91
105
  CommandType[CommandType["OWNER_CHECK_721"] = 21] = "OWNER_CHECK_721";
92
106
  CommandType[CommandType["OWNER_CHECK_1155"] = 22] = "OWNER_CHECK_1155";
107
+ CommandType[CommandType["SWEEP_ERC721"] = 23] = "SWEEP_ERC721";
93
108
  CommandType[CommandType["X2Y2_721"] = 24] = "X2Y2_721";
94
109
  CommandType[CommandType["SUDOSWAP"] = 25] = "SUDOSWAP";
95
110
  CommandType[CommandType["NFT20"] = 26] = "NFT20";
96
111
  CommandType[CommandType["X2Y2_1155"] = 27] = "X2Y2_1155";
97
112
  CommandType[CommandType["FOUNDATION"] = 28] = "FOUNDATION";
113
+ CommandType[CommandType["SWEEP_ERC1155"] = 29] = "SWEEP_ERC1155";
114
+ CommandType[CommandType["ELEMENT_MARKET"] = 30] = "ELEMENT_MARKET";
115
+ CommandType[CommandType["SEAPORT_V1_4"] = 32] = "SEAPORT_V1_4";
116
+ CommandType[CommandType["EXECUTE_SUB_PLAN"] = 33] = "EXECUTE_SUB_PLAN";
117
+ CommandType[CommandType["APPROVE_ERC20"] = 34] = "APPROVE_ERC20";
98
118
  })(CommandType || (CommandType = {}));
99
- var PERMIT_STRUCT = '((address token,uint160 amount,uint48 expiration,uint48 nonce) details, address spender, uint256 sigDeadline)';
100
- var PERMIT_BATCH_STRUCT = '((address token,uint160 amount,uint48 expiration,uint48 nonce)[] details, address spender, uint256 sigDeadline)';
101
119
  var ALLOW_REVERT_FLAG = 0x80;
102
- var REVERTIBLE_COMMANDS = /*#__PURE__*/new Set([CommandType.SEAPORT, CommandType.SEAPORT_V1_4, CommandType.NFTX, CommandType.LOOKS_RARE_721, CommandType.LOOKS_RARE_1155, CommandType.X2Y2_721, CommandType.X2Y2_1155, CommandType.FOUNDATION, CommandType.SUDOSWAP, CommandType.NFT20, CommandType.CRYPTOPUNKS]);
103
- var ABI_DEFINITION = (_ABI_DEFINITION = {}, _ABI_DEFINITION[CommandType.PERMIT] = [PERMIT_STRUCT, 'bytes'], _ABI_DEFINITION[CommandType.PERMIT2_PERMIT_BATCH] = [PERMIT_BATCH_STRUCT, 'bytes'], _ABI_DEFINITION[CommandType.PERMIT2_TRANSFER_FROM] = ['address', 'address', 'uint160'], _ABI_DEFINITION[CommandType.PERMIT2_TRANSFER_FROM_BATCH] = ['bytes'], _ABI_DEFINITION[CommandType.TRANSFER] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.V3_SWAP_EXACT_IN] = ['address', 'uint256', 'uint256', 'bytes', 'bool'], _ABI_DEFINITION[CommandType.V3_SWAP_EXACT_OUT] = ['address', 'uint256', 'uint256', 'bytes', 'bool'], _ABI_DEFINITION[CommandType.V2_SWAP_EXACT_IN] = ['address', 'uint256', 'uint256', 'address[]', 'bool'], _ABI_DEFINITION[CommandType.V2_SWAP_EXACT_OUT] = ['address', 'uint256', 'uint256', 'address[]', 'bool'], _ABI_DEFINITION[CommandType.SEAPORT] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.SEAPORT_V1_4] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.WRAP_ETH] = ['address', 'uint256'], _ABI_DEFINITION[CommandType.UNWRAP_WETH] = ['address', 'uint256'], _ABI_DEFINITION[CommandType.SWEEP] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.NFTX] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.LOOKS_RARE_721] = ['uint256', 'bytes', 'address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.LOOKS_RARE_1155] = ['uint256', 'bytes', 'address', 'address', 'uint256', 'uint256'], _ABI_DEFINITION[CommandType.X2Y2_721] = ['uint256', 'bytes', 'address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.X2Y2_1155] = ['uint256', 'bytes', 'address', 'address', 'uint256', 'uint256'], _ABI_DEFINITION[CommandType.FOUNDATION] = ['uint256', 'bytes', 'address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.PAY_PORTION] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.SUDOSWAP] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.OWNER_CHECK_721] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.OWNER_CHECK_1155] = ['address', 'address', 'uint256', 'uint256'], _ABI_DEFINITION[CommandType.NFT20] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.CRYPTOPUNKS] = ['uint256', 'address', 'uint256'], _ABI_DEFINITION);
120
+ var REVERTIBLE_COMMANDS = /*#__PURE__*/new Set([CommandType.SEAPORT, CommandType.SEAPORT_V1_4, CommandType.NFTX, CommandType.LOOKS_RARE_V2, CommandType.X2Y2_721, CommandType.X2Y2_1155, CommandType.FOUNDATION, CommandType.SUDOSWAP, CommandType.NFT20, CommandType.EXECUTE_SUB_PLAN, CommandType.CRYPTOPUNKS, CommandType.ELEMENT_MARKET]);
121
+ var PERMIT_STRUCT = '((address token,uint160 amount,uint48 expiration,uint48 nonce) details,address spender,uint256 sigDeadline)';
122
+ var PERMIT_BATCH_STRUCT = '((address token,uint160 amount,uint48 expiration,uint48 nonce)[] details,address spender,uint256 sigDeadline)';
123
+ var PERMIT2_TRANSFER_FROM_STRUCT = '(address from,address to,uint160 amount,address token)';
124
+ var PERMIT2_TRANSFER_FROM_BATCH_STRUCT = PERMIT2_TRANSFER_FROM_STRUCT + '[]';
125
+ var ABI_DEFINITION = (_ABI_DEFINITION = {}, _ABI_DEFINITION[CommandType.EXECUTE_SUB_PLAN] = ['bytes', 'bytes[]'], _ABI_DEFINITION[CommandType.PERMIT2_PERMIT] = [PERMIT_STRUCT, 'bytes'], _ABI_DEFINITION[CommandType.PERMIT2_PERMIT_BATCH] = [PERMIT_BATCH_STRUCT, 'bytes'], _ABI_DEFINITION[CommandType.PERMIT2_TRANSFER_FROM] = ['address', 'address', 'uint160'], _ABI_DEFINITION[CommandType.PERMIT2_TRANSFER_FROM_BATCH] = [PERMIT2_TRANSFER_FROM_BATCH_STRUCT], _ABI_DEFINITION[CommandType.V3_SWAP_EXACT_IN] = ['address', 'uint256', 'uint256', 'bytes', 'bool'], _ABI_DEFINITION[CommandType.V3_SWAP_EXACT_OUT] = ['address', 'uint256', 'uint256', 'bytes', 'bool'], _ABI_DEFINITION[CommandType.V2_SWAP_EXACT_IN] = ['address', 'uint256', 'uint256', 'address[]', 'bool'], _ABI_DEFINITION[CommandType.V2_SWAP_EXACT_OUT] = ['address', 'uint256', 'uint256', 'address[]', 'bool'], _ABI_DEFINITION[CommandType.WRAP_ETH] = ['address', 'uint256'], _ABI_DEFINITION[CommandType.UNWRAP_WETH] = ['address', 'uint256'], _ABI_DEFINITION[CommandType.SWEEP] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.SWEEP_ERC721] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.SWEEP_ERC1155] = ['address', 'address', 'uint256', 'uint256'], _ABI_DEFINITION[CommandType.TRANSFER] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.PAY_PORTION] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.BALANCE_CHECK_ERC20] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.OWNER_CHECK_721] = ['address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.OWNER_CHECK_1155] = ['address', 'address', 'uint256', 'uint256'], _ABI_DEFINITION[CommandType.APPROVE_ERC20] = ['address', 'uint256'], _ABI_DEFINITION[CommandType.SEAPORT] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.SEAPORT_V1_4] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.NFTX] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.LOOKS_RARE_V2] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.X2Y2_721] = ['uint256', 'bytes', 'address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.X2Y2_1155] = ['uint256', 'bytes', 'address', 'address', 'uint256', 'uint256'], _ABI_DEFINITION[CommandType.FOUNDATION] = ['uint256', 'bytes', 'address', 'address', 'uint256'], _ABI_DEFINITION[CommandType.SUDOSWAP] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.NFT20] = ['uint256', 'bytes'], _ABI_DEFINITION[CommandType.CRYPTOPUNKS] = ['uint256', 'address', 'uint256'], _ABI_DEFINITION[CommandType.ELEMENT_MARKET] = ['uint256', 'bytes'], _ABI_DEFINITION);
104
126
  var RoutePlanner = /*#__PURE__*/function () {
105
127
  function RoutePlanner() {
106
128
  this.commands = '0x';
107
129
  this.inputs = [];
108
130
  }
109
131
  var _proto = RoutePlanner.prototype;
132
+ _proto.addSubPlan = function addSubPlan(subplan) {
133
+ this.addCommand(CommandType.EXECUTE_SUB_PLAN, [subplan.commands, subplan.inputs], true);
134
+ };
110
135
  _proto.addCommand = function addCommand(type, parameters, allowRevert) {
111
136
  if (allowRevert === void 0) {
112
137
  allowRevert = false;
@@ -136,14 +161,12 @@ var UNIVERSAL_ROUTER_ADDRESS = function UNIVERSAL_ROUTER_ADDRESS(chainId) {
136
161
  case 1:
137
162
  // mainnet
138
163
  return '0x4C60051384bd2d3C01bfc845Cf5F4b44bcbE9de5';
139
- // URv1.1
140
164
  case 5:
141
165
  // goerli
142
166
  return '0x4648a43B2C14Da09FdF82B161150d3F634f40491';
143
167
  case 137:
144
168
  // polygon
145
- return '0xe40B4A25328dc87bBE396662BAc0cD1C1bE6E883';
146
- // URv1.1
169
+ return '0x4C60051384bd2d3C01bfc845Cf5F4b44bcbE9de5';
147
170
  case 80001:
148
171
  // polygon mumbai
149
172
  return '0x4648a43B2C14Da09FdF82B161150d3F634f40491';
@@ -208,8 +231,11 @@ var WETH_ADDRESS = function WETH_ADDRESS(chainId) {
208
231
  var PERMIT2_ADDRESS = '0x000000000022D473030F116dDEE9F6B43aC78BA3';
209
232
  var CONTRACT_BALANCE = /*#__PURE__*/BigNumber.from(2).pow(255);
210
233
  var ETH_ADDRESS = '0x0000000000000000000000000000000000000000';
234
+ var ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
211
235
  var SENDER_AS_RECIPIENT = '0x0000000000000000000000000000000000000001';
212
236
  var ROUTER_AS_RECIPIENT = '0x0000000000000000000000000000000000000002';
237
+ var OPENSEA_CONDUIT_SPENDER_ID = 0;
238
+ var SUDOSWAP_SPENDER_ID = 1;
213
239
 
214
240
  var REFUND_ETH_PRICE_IMPACT_THRESHOLD = /*#__PURE__*/new Percent( /*#__PURE__*/JSBI.BigInt(50), /*#__PURE__*/JSBI.BigInt(100));
215
241
  // Wrapper for uniswap router-sdk trade entity to encode swaps for Universal Router
@@ -371,15 +397,52 @@ function riskOfPartialFill(trade) {
371
397
 
372
398
  var SIGNATURE_LENGTH = 65;
373
399
  var EIP_2098_SIGNATURE_LENGTH = 64;
374
- function encodePermit(planner, permit) {
375
- var signature = permit.signature;
376
- var length = ethers.utils.arrayify(permit.signature).length;
400
+ function encodePermit(planner, permit2) {
401
+ var signature = permit2.signature;
402
+ var length = ethers.utils.arrayify(permit2.signature).length;
377
403
  // signature data provided for EIP-1271 may have length different from ECDSA signature
378
404
  if (length === SIGNATURE_LENGTH || length === EIP_2098_SIGNATURE_LENGTH) {
379
405
  // sanitizes signature to cover edge cases of malformed EIP-2098 sigs and v used as recovery id
380
- signature = ethers.utils.joinSignature(ethers.utils.splitSignature(permit.signature));
406
+ signature = ethers.utils.joinSignature(ethers.utils.splitSignature(permit2.signature));
407
+ }
408
+ planner.addCommand(CommandType.PERMIT2_PERMIT, [permit2, signature]);
409
+ }
410
+ // Handles the encoding of commands needed to gather input tokens for a trade
411
+ // Approval: The router approving another address to take tokens.
412
+ // note: Only seaport and sudoswap support this action. Approvals are left open.
413
+ // Permit: A Permit2 signature-based Permit to allow the router to access a user's tokens
414
+ // Transfer: A Permit2 TransferFrom of tokens from a user to either the router or another address
415
+ function encodeInputTokenOptions(planner, options) {
416
+ // first ensure that all tokens provided for encoding are the same
417
+ if (!!options.approval && !!options.permit2Permit) !(options.approval.token === options.permit2Permit.details.token) ? process.env.NODE_ENV !== "production" ? invariant(false, "inconsistent token") : invariant(false) : void 0;
418
+ if (!!options.approval && !!options.permit2TransferFrom) !(options.approval.token === options.permit2TransferFrom.token) ? process.env.NODE_ENV !== "production" ? invariant(false, "inconsistent token") : invariant(false) : void 0;
419
+ if (!!options.permit2TransferFrom && !!options.permit2Permit) !(options.permit2TransferFrom.token === options.permit2Permit.details.token) ? process.env.NODE_ENV !== "production" ? invariant(false, "inconsistent token") : invariant(false) : void 0;
420
+ // if an options.approval is required, add it
421
+ if (!!options.approval) {
422
+ planner.addCommand(CommandType.APPROVE_ERC20, [options.approval.token, mapApprovalProtocol(options.approval.protocol)]);
423
+ }
424
+ // if this order has a options.permit2Permit, encode it
425
+ if (!!options.permit2Permit) {
426
+ encodePermit(planner, options.permit2Permit);
427
+ }
428
+ if (!!options.permit2TransferFrom) {
429
+ planner.addCommand(CommandType.PERMIT2_TRANSFER_FROM, [options.permit2TransferFrom.token, options.permit2TransferFrom.recipient ? options.permit2TransferFrom.recipient : ROUTER_AS_RECIPIENT, options.permit2TransferFrom.amount]);
430
+ }
431
+ }
432
+ function mapApprovalProtocol(protocolAddress) {
433
+ switch (protocolAddress.toLowerCase()) {
434
+ case '0x00000000006c3852cbef3e08e8df289169ede581':
435
+ // Seaport v1.1
436
+ return OPENSEA_CONDUIT_SPENDER_ID;
437
+ case '0x00000000000001ad428e4906ae43d8f9852d0dd6':
438
+ // Seaport v1.4
439
+ return OPENSEA_CONDUIT_SPENDER_ID;
440
+ case '0x2b2e8cda09bba9660dca5cb6233787738ad68329':
441
+ // Sudoswap
442
+ return SUDOSWAP_SPENDER_ID;
443
+ default:
444
+ throw new Error('unsupported protocol address');
381
445
  }
382
- planner.addCommand(CommandType.PERMIT, [permit, signature]);
383
446
  }
384
447
 
385
448
  var SwapRouter = /*#__PURE__*/function () {
@@ -416,7 +479,7 @@ var SwapRouter = /*#__PURE__*/function () {
416
479
  currentNativeValueInRouter = currentNativeValueInRouter.sub(tradePrice);
417
480
  }
418
481
  /**
419
- * is Uniswap Trade
482
+ * is UniswapTrade
420
483
  */
421
484
  } else if (trade.tradeType == RouterTradeType.UniswapTrade) {
422
485
  var uniswapTrade = trade;
@@ -536,13 +599,14 @@ var NFTTrade = function NFTTrade(market, orders) {
536
599
  var Market;
537
600
  (function (Market) {
538
601
  Market["Foundation"] = "foundation";
539
- Market["LooksRare"] = "looksrare";
602
+ Market["LooksRareV2"] = "looksrareV2";
540
603
  Market["NFT20"] = "nft20";
541
604
  Market["NFTX"] = "nftx";
542
605
  Market["Seaport"] = "seaport";
543
606
  Market["Sudoswap"] = "Sudoswap";
544
607
  Market["Cryptopunks"] = "cryptopunks";
545
608
  Market["X2Y2"] = "x2y2";
609
+ Market["Element"] = "element";
546
610
  })(Market || (Market = {}));
547
611
  var TokenType;
548
612
  (function (TokenType) {
@@ -2251,27 +2315,22 @@ var abi$1 = [
2251
2315
  inputs: [
2252
2316
  {
2253
2317
  internalType: "address",
2254
- name: "_currencyManager",
2255
- type: "address"
2256
- },
2257
- {
2258
- internalType: "address",
2259
- name: "_executionManager",
2318
+ name: "_owner",
2260
2319
  type: "address"
2261
2320
  },
2262
2321
  {
2263
2322
  internalType: "address",
2264
- name: "_royaltyFeeManager",
2323
+ name: "_protocolFeeRecipient",
2265
2324
  type: "address"
2266
2325
  },
2267
2326
  {
2268
2327
  internalType: "address",
2269
- name: "_WETH",
2328
+ name: "_transferManager",
2270
2329
  type: "address"
2271
2330
  },
2272
2331
  {
2273
2332
  internalType: "address",
2274
- name: "_protocolFeeRecipient",
2333
+ name: "_weth",
2275
2334
  type: "address"
2276
2335
  }
2277
2336
  ],
@@ -2279,162 +2338,297 @@ var abi$1 = [
2279
2338
  type: "constructor"
2280
2339
  },
2281
2340
  {
2282
- anonymous: false,
2341
+ inputs: [
2342
+ ],
2343
+ name: "CallerInvalid",
2344
+ type: "error"
2345
+ },
2346
+ {
2347
+ inputs: [
2348
+ ],
2349
+ name: "ChainIdInvalid",
2350
+ type: "error"
2351
+ },
2352
+ {
2353
+ inputs: [
2354
+ ],
2355
+ name: "CreatorFeeBpTooHigh",
2356
+ type: "error"
2357
+ },
2358
+ {
2359
+ inputs: [
2360
+ ],
2361
+ name: "CurrencyInvalid",
2362
+ type: "error"
2363
+ },
2364
+ {
2365
+ inputs: [
2366
+ ],
2367
+ name: "ERC20TransferFromFail",
2368
+ type: "error"
2369
+ },
2370
+ {
2371
+ inputs: [
2372
+ ],
2373
+ name: "LengthsInvalid",
2374
+ type: "error"
2375
+ },
2376
+ {
2377
+ inputs: [
2378
+ ],
2379
+ name: "MerkleProofInvalid",
2380
+ type: "error"
2381
+ },
2382
+ {
2283
2383
  inputs: [
2284
2384
  {
2285
- indexed: true,
2286
- internalType: "address",
2287
- name: "user",
2288
- type: "address"
2289
- },
2290
- {
2291
- indexed: false,
2292
2385
  internalType: "uint256",
2293
- name: "newMinNonce",
2386
+ name: "length",
2294
2387
  type: "uint256"
2295
2388
  }
2296
2389
  ],
2297
- name: "CancelAllOrders",
2298
- type: "event"
2390
+ name: "MerkleProofTooLarge",
2391
+ type: "error"
2299
2392
  },
2300
2393
  {
2301
- anonymous: false,
2302
2394
  inputs: [
2303
- {
2304
- indexed: true,
2305
- internalType: "address",
2306
- name: "user",
2307
- type: "address"
2308
- },
2309
- {
2310
- indexed: false,
2311
- internalType: "uint256[]",
2312
- name: "orderNonces",
2313
- type: "uint256[]"
2314
- }
2315
2395
  ],
2316
- name: "CancelMultipleOrders",
2317
- type: "event"
2396
+ name: "NewGasLimitETHTransferTooLow",
2397
+ type: "error"
2318
2398
  },
2319
2399
  {
2320
- anonymous: false,
2321
2400
  inputs: [
2322
- {
2323
- indexed: true,
2324
- internalType: "address",
2325
- name: "currencyManager",
2326
- type: "address"
2327
- }
2328
2401
  ],
2329
- name: "NewCurrencyManager",
2330
- type: "event"
2402
+ name: "NewProtocolFeeRecipientCannotBeNullAddress",
2403
+ type: "error"
2331
2404
  },
2332
2405
  {
2333
- anonymous: false,
2334
2406
  inputs: [
2335
- {
2336
- indexed: true,
2337
- internalType: "address",
2338
- name: "executionManager",
2339
- type: "address"
2340
- }
2341
2407
  ],
2342
- name: "NewExecutionManager",
2343
- type: "event"
2408
+ name: "NoOngoingTransferInProgress",
2409
+ type: "error"
2410
+ },
2411
+ {
2412
+ inputs: [
2413
+ ],
2414
+ name: "NoSelectorForStrategy",
2415
+ type: "error"
2416
+ },
2417
+ {
2418
+ inputs: [
2419
+ ],
2420
+ name: "NoncesInvalid",
2421
+ type: "error"
2422
+ },
2423
+ {
2424
+ inputs: [
2425
+ ],
2426
+ name: "NotAContract",
2427
+ type: "error"
2428
+ },
2429
+ {
2430
+ inputs: [
2431
+ ],
2432
+ name: "NotAffiliateController",
2433
+ type: "error"
2434
+ },
2435
+ {
2436
+ inputs: [
2437
+ ],
2438
+ name: "NotOwner",
2439
+ type: "error"
2440
+ },
2441
+ {
2442
+ inputs: [
2443
+ ],
2444
+ name: "NotV2Strategy",
2445
+ type: "error"
2446
+ },
2447
+ {
2448
+ inputs: [
2449
+ ],
2450
+ name: "NullSignerAddress",
2451
+ type: "error"
2452
+ },
2453
+ {
2454
+ inputs: [
2455
+ ],
2456
+ name: "OutsideOfTimeRange",
2457
+ type: "error"
2458
+ },
2459
+ {
2460
+ inputs: [
2461
+ ],
2462
+ name: "PercentageTooHigh",
2463
+ type: "error"
2464
+ },
2465
+ {
2466
+ inputs: [
2467
+ ],
2468
+ name: "QuoteTypeInvalid",
2469
+ type: "error"
2470
+ },
2471
+ {
2472
+ inputs: [
2473
+ ],
2474
+ name: "ReentrancyFail",
2475
+ type: "error"
2476
+ },
2477
+ {
2478
+ inputs: [
2479
+ ],
2480
+ name: "RenouncementNotInProgress",
2481
+ type: "error"
2482
+ },
2483
+ {
2484
+ inputs: [
2485
+ ],
2486
+ name: "SameDomainSeparator",
2487
+ type: "error"
2488
+ },
2489
+ {
2490
+ inputs: [
2491
+ ],
2492
+ name: "SignatureEOAInvalid",
2493
+ type: "error"
2494
+ },
2495
+ {
2496
+ inputs: [
2497
+ ],
2498
+ name: "SignatureERC1271Invalid",
2499
+ type: "error"
2344
2500
  },
2345
2501
  {
2346
- anonymous: false,
2347
2502
  inputs: [
2348
2503
  {
2349
- indexed: true,
2350
- internalType: "address",
2351
- name: "protocolFeeRecipient",
2352
- type: "address"
2504
+ internalType: "uint256",
2505
+ name: "length",
2506
+ type: "uint256"
2353
2507
  }
2354
2508
  ],
2355
- name: "NewProtocolFeeRecipient",
2356
- type: "event"
2509
+ name: "SignatureLengthInvalid",
2510
+ type: "error"
2511
+ },
2512
+ {
2513
+ inputs: [
2514
+ ],
2515
+ name: "SignatureParameterSInvalid",
2516
+ type: "error"
2357
2517
  },
2358
2518
  {
2359
- anonymous: false,
2360
2519
  inputs: [
2361
2520
  {
2362
- indexed: true,
2363
- internalType: "address",
2364
- name: "royaltyFeeManager",
2365
- type: "address"
2521
+ internalType: "uint8",
2522
+ name: "v",
2523
+ type: "uint8"
2366
2524
  }
2367
2525
  ],
2368
- name: "NewRoyaltyFeeManager",
2369
- type: "event"
2526
+ name: "SignatureParameterVInvalid",
2527
+ type: "error"
2528
+ },
2529
+ {
2530
+ inputs: [
2531
+ ],
2532
+ name: "StrategyHasNoSelector",
2533
+ type: "error"
2370
2534
  },
2371
2535
  {
2372
- anonymous: false,
2373
2536
  inputs: [
2374
2537
  {
2375
- indexed: true,
2376
- internalType: "address",
2377
- name: "transferSelectorNFT",
2378
- type: "address"
2538
+ internalType: "uint256",
2539
+ name: "strategyId",
2540
+ type: "uint256"
2379
2541
  }
2380
2542
  ],
2381
- name: "NewTransferSelectorNFT",
2382
- type: "event"
2543
+ name: "StrategyNotAvailable",
2544
+ type: "error"
2545
+ },
2546
+ {
2547
+ inputs: [
2548
+ ],
2549
+ name: "StrategyNotUsed",
2550
+ type: "error"
2551
+ },
2552
+ {
2553
+ inputs: [
2554
+ ],
2555
+ name: "StrategyProtocolFeeTooHigh",
2556
+ type: "error"
2557
+ },
2558
+ {
2559
+ inputs: [
2560
+ ],
2561
+ name: "TransferAlreadyInProgress",
2562
+ type: "error"
2563
+ },
2564
+ {
2565
+ inputs: [
2566
+ ],
2567
+ name: "TransferNotInProgress",
2568
+ type: "error"
2569
+ },
2570
+ {
2571
+ inputs: [
2572
+ ],
2573
+ name: "WrongPotentialOwner",
2574
+ type: "error"
2383
2575
  },
2384
2576
  {
2385
2577
  anonymous: false,
2386
2578
  inputs: [
2387
2579
  {
2388
- indexed: true,
2580
+ indexed: false,
2389
2581
  internalType: "address",
2390
- name: "previousOwner",
2582
+ name: "affiliate",
2391
2583
  type: "address"
2392
2584
  },
2393
2585
  {
2394
- indexed: true,
2586
+ indexed: false,
2395
2587
  internalType: "address",
2396
- name: "newOwner",
2588
+ name: "currency",
2397
2589
  type: "address"
2590
+ },
2591
+ {
2592
+ indexed: false,
2593
+ internalType: "uint256",
2594
+ name: "affiliateFee",
2595
+ type: "uint256"
2398
2596
  }
2399
2597
  ],
2400
- name: "OwnershipTransferred",
2598
+ name: "AffiliatePayment",
2599
+ type: "event"
2600
+ },
2601
+ {
2602
+ anonymous: false,
2603
+ inputs: [
2604
+ ],
2605
+ name: "CancelOwnershipTransfer",
2401
2606
  type: "event"
2402
2607
  },
2403
2608
  {
2404
2609
  anonymous: false,
2405
2610
  inputs: [
2406
2611
  {
2407
- indexed: true,
2408
- internalType: "address",
2409
- name: "collection",
2410
- type: "address"
2411
- },
2412
- {
2413
- indexed: true,
2414
- internalType: "uint256",
2415
- name: "tokenId",
2416
- type: "uint256"
2417
- },
2418
- {
2419
- indexed: true,
2420
- internalType: "address",
2421
- name: "royaltyRecipient",
2422
- type: "address"
2423
- },
2424
- {
2425
- indexed: false,
2612
+ indexed: false,
2426
2613
  internalType: "address",
2427
2614
  name: "currency",
2428
2615
  type: "address"
2429
2616
  },
2430
2617
  {
2431
2618
  indexed: false,
2432
- internalType: "uint256",
2433
- name: "amount",
2434
- type: "uint256"
2619
+ internalType: "bool",
2620
+ name: "isAllowed",
2621
+ type: "bool"
2435
2622
  }
2436
2623
  ],
2437
- name: "RoyaltyPayment",
2624
+ name: "CurrencyStatusUpdated",
2625
+ type: "event"
2626
+ },
2627
+ {
2628
+ anonymous: false,
2629
+ inputs: [
2630
+ ],
2631
+ name: "InitiateOwnershipRenouncement",
2438
2632
  type: "event"
2439
2633
  },
2440
2634
  {
@@ -2442,66 +2636,31 @@ var abi$1 = [
2442
2636
  inputs: [
2443
2637
  {
2444
2638
  indexed: false,
2445
- internalType: "bytes32",
2446
- name: "orderHash",
2447
- type: "bytes32"
2448
- },
2449
- {
2450
- indexed: false,
2451
- internalType: "uint256",
2452
- name: "orderNonce",
2453
- type: "uint256"
2454
- },
2455
- {
2456
- indexed: true,
2457
- internalType: "address",
2458
- name: "taker",
2459
- type: "address"
2460
- },
2461
- {
2462
- indexed: true,
2463
- internalType: "address",
2464
- name: "maker",
2465
- type: "address"
2466
- },
2467
- {
2468
- indexed: true,
2469
2639
  internalType: "address",
2470
- name: "strategy",
2640
+ name: "previousOwner",
2471
2641
  type: "address"
2472
2642
  },
2473
2643
  {
2474
2644
  indexed: false,
2475
2645
  internalType: "address",
2476
- name: "currency",
2646
+ name: "potentialOwner",
2477
2647
  type: "address"
2478
- },
2648
+ }
2649
+ ],
2650
+ name: "InitiateOwnershipTransfer",
2651
+ type: "event"
2652
+ },
2653
+ {
2654
+ anonymous: false,
2655
+ inputs: [
2479
2656
  {
2480
2657
  indexed: false,
2481
2658
  internalType: "address",
2482
- name: "collection",
2659
+ name: "affiliateController",
2483
2660
  type: "address"
2484
- },
2485
- {
2486
- indexed: false,
2487
- internalType: "uint256",
2488
- name: "tokenId",
2489
- type: "uint256"
2490
- },
2491
- {
2492
- indexed: false,
2493
- internalType: "uint256",
2494
- name: "amount",
2495
- type: "uint256"
2496
- },
2497
- {
2498
- indexed: false,
2499
- internalType: "uint256",
2500
- name: "price",
2501
- type: "uint256"
2502
2661
  }
2503
2662
  ],
2504
- name: "TakerAsk",
2663
+ name: "NewAffiliateController",
2505
2664
  type: "event"
2506
2665
  },
2507
2666
  {
@@ -2509,250 +2668,819 @@ var abi$1 = [
2509
2668
  inputs: [
2510
2669
  {
2511
2670
  indexed: false,
2512
- internalType: "bytes32",
2513
- name: "orderHash",
2514
- type: "bytes32"
2515
- },
2671
+ internalType: "bool",
2672
+ name: "isActive",
2673
+ type: "bool"
2674
+ }
2675
+ ],
2676
+ name: "NewAffiliateProgramStatus",
2677
+ type: "event"
2678
+ },
2679
+ {
2680
+ anonymous: false,
2681
+ inputs: [
2516
2682
  {
2517
2683
  indexed: false,
2518
- internalType: "uint256",
2519
- name: "orderNonce",
2520
- type: "uint256"
2521
- },
2522
- {
2523
- indexed: true,
2524
- internalType: "address",
2525
- name: "taker",
2526
- type: "address"
2527
- },
2528
- {
2529
- indexed: true,
2530
2684
  internalType: "address",
2531
- name: "maker",
2532
- type: "address"
2533
- },
2534
- {
2535
- indexed: true,
2536
- internalType: "address",
2537
- name: "strategy",
2685
+ name: "affiliate",
2538
2686
  type: "address"
2539
2687
  },
2540
2688
  {
2541
2689
  indexed: false,
2542
- internalType: "address",
2543
- name: "currency",
2544
- type: "address"
2545
- },
2690
+ internalType: "uint256",
2691
+ name: "rate",
2692
+ type: "uint256"
2693
+ }
2694
+ ],
2695
+ name: "NewAffiliateRate",
2696
+ type: "event"
2697
+ },
2698
+ {
2699
+ anonymous: false,
2700
+ inputs: [
2546
2701
  {
2547
2702
  indexed: false,
2548
2703
  internalType: "address",
2549
- name: "collection",
2704
+ name: "user",
2550
2705
  type: "address"
2551
2706
  },
2552
2707
  {
2553
2708
  indexed: false,
2554
2709
  internalType: "uint256",
2555
- name: "tokenId",
2556
- type: "uint256"
2557
- },
2558
- {
2559
- indexed: false,
2560
- internalType: "uint256",
2561
- name: "amount",
2710
+ name: "bidNonce",
2562
2711
  type: "uint256"
2563
2712
  },
2564
2713
  {
2565
2714
  indexed: false,
2566
2715
  internalType: "uint256",
2567
- name: "price",
2716
+ name: "askNonce",
2568
2717
  type: "uint256"
2569
2718
  }
2570
2719
  ],
2571
- name: "TakerBid",
2720
+ name: "NewBidAskNonces",
2572
2721
  type: "event"
2573
2722
  },
2574
2723
  {
2724
+ anonymous: false,
2575
2725
  inputs: [
2576
- ],
2577
- name: "DOMAIN_SEPARATOR",
2578
- outputs: [
2579
2726
  {
2580
- internalType: "bytes32",
2581
- name: "",
2582
- type: "bytes32"
2727
+ indexed: false,
2728
+ internalType: "address",
2729
+ name: "creatorFeeManager",
2730
+ type: "address"
2583
2731
  }
2584
2732
  ],
2585
- stateMutability: "view",
2586
- type: "function"
2733
+ name: "NewCreatorFeeManager",
2734
+ type: "event"
2587
2735
  },
2588
2736
  {
2737
+ anonymous: false,
2589
2738
  inputs: [
2590
2739
  ],
2591
- name: "WETH",
2592
- outputs: [
2740
+ name: "NewDomainSeparator",
2741
+ type: "event"
2742
+ },
2743
+ {
2744
+ anonymous: false,
2745
+ inputs: [
2593
2746
  {
2594
- internalType: "address",
2595
- name: "",
2596
- type: "address"
2747
+ indexed: false,
2748
+ internalType: "uint256",
2749
+ name: "gasLimitETHTransfer",
2750
+ type: "uint256"
2597
2751
  }
2598
2752
  ],
2599
- stateMutability: "view",
2600
- type: "function"
2753
+ name: "NewGasLimitETHTransfer",
2754
+ type: "event"
2601
2755
  },
2602
2756
  {
2757
+ anonymous: false,
2603
2758
  inputs: [
2604
2759
  {
2760
+ indexed: false,
2605
2761
  internalType: "uint256",
2606
- name: "minNonce",
2762
+ name: "maxCreatorFeeBp",
2607
2763
  type: "uint256"
2608
2764
  }
2609
2765
  ],
2610
- name: "cancelAllOrdersForSender",
2611
- outputs: [
2612
- ],
2613
- stateMutability: "nonpayable",
2614
- type: "function"
2766
+ name: "NewMaxCreatorFeeBp",
2767
+ type: "event"
2615
2768
  },
2616
2769
  {
2770
+ anonymous: false,
2617
2771
  inputs: [
2618
2772
  {
2619
- internalType: "uint256[]",
2620
- name: "orderNonces",
2621
- type: "uint256[]"
2773
+ indexed: false,
2774
+ internalType: "address",
2775
+ name: "newOwner",
2776
+ type: "address"
2622
2777
  }
2623
2778
  ],
2624
- name: "cancelMultipleMakerOrders",
2625
- outputs: [
2626
- ],
2627
- stateMutability: "nonpayable",
2628
- type: "function"
2779
+ name: "NewOwner",
2780
+ type: "event"
2629
2781
  },
2630
2782
  {
2783
+ anonymous: false,
2631
2784
  inputs: [
2632
- ],
2633
- name: "currencyManager",
2634
- outputs: [
2635
2785
  {
2636
- internalType: "contract ICurrencyManager",
2637
- name: "",
2786
+ indexed: false,
2787
+ internalType: "address",
2788
+ name: "protocolFeeRecipient",
2638
2789
  type: "address"
2639
2790
  }
2640
2791
  ],
2641
- stateMutability: "view",
2642
- type: "function"
2792
+ name: "NewProtocolFeeRecipient",
2793
+ type: "event"
2643
2794
  },
2644
2795
  {
2796
+ anonymous: false,
2645
2797
  inputs: [
2646
- ],
2647
- name: "executionManager",
2648
- outputs: [
2649
2798
  {
2650
- internalType: "contract IExecutionManager",
2651
- name: "",
2799
+ indexed: false,
2800
+ internalType: "uint256",
2801
+ name: "strategyId",
2802
+ type: "uint256"
2803
+ },
2804
+ {
2805
+ indexed: false,
2806
+ internalType: "uint16",
2807
+ name: "standardProtocolFeeBp",
2808
+ type: "uint16"
2809
+ },
2810
+ {
2811
+ indexed: false,
2812
+ internalType: "uint16",
2813
+ name: "minTotalFeeBp",
2814
+ type: "uint16"
2815
+ },
2816
+ {
2817
+ indexed: false,
2818
+ internalType: "uint16",
2819
+ name: "maxProtocolFeeBp",
2820
+ type: "uint16"
2821
+ },
2822
+ {
2823
+ indexed: false,
2824
+ internalType: "bytes4",
2825
+ name: "selector",
2826
+ type: "bytes4"
2827
+ },
2828
+ {
2829
+ indexed: false,
2830
+ internalType: "bool",
2831
+ name: "isMakerBid",
2832
+ type: "bool"
2833
+ },
2834
+ {
2835
+ indexed: false,
2836
+ internalType: "address",
2837
+ name: "implementation",
2652
2838
  type: "address"
2653
2839
  }
2654
2840
  ],
2655
- stateMutability: "view",
2656
- type: "function"
2841
+ name: "NewStrategy",
2842
+ type: "event"
2657
2843
  },
2658
2844
  {
2845
+ anonymous: false,
2659
2846
  inputs: [
2660
2847
  {
2848
+ indexed: false,
2661
2849
  internalType: "address",
2662
2850
  name: "user",
2663
2851
  type: "address"
2664
2852
  },
2665
2853
  {
2666
- internalType: "uint256",
2667
- name: "orderNonce",
2668
- type: "uint256"
2854
+ indexed: false,
2855
+ internalType: "uint256[]",
2856
+ name: "orderNonces",
2857
+ type: "uint256[]"
2669
2858
  }
2670
2859
  ],
2671
- name: "isUserOrderNonceExecutedOrCancelled",
2672
- outputs: [
2860
+ name: "OrderNoncesCancelled",
2861
+ type: "event"
2862
+ },
2863
+ {
2864
+ anonymous: false,
2865
+ inputs: [
2866
+ {
2867
+ indexed: false,
2868
+ internalType: "uint256",
2869
+ name: "strategyId",
2870
+ type: "uint256"
2871
+ },
2673
2872
  {
2873
+ indexed: false,
2674
2874
  internalType: "bool",
2675
- name: "",
2875
+ name: "isActive",
2676
2876
  type: "bool"
2877
+ },
2878
+ {
2879
+ indexed: false,
2880
+ internalType: "uint16",
2881
+ name: "standardProtocolFeeBp",
2882
+ type: "uint16"
2883
+ },
2884
+ {
2885
+ indexed: false,
2886
+ internalType: "uint16",
2887
+ name: "minTotalFeeBp",
2888
+ type: "uint16"
2677
2889
  }
2678
2890
  ],
2679
- stateMutability: "view",
2680
- type: "function"
2891
+ name: "StrategyUpdated",
2892
+ type: "event"
2893
+ },
2894
+ {
2895
+ anonymous: false,
2896
+ inputs: [
2897
+ {
2898
+ indexed: false,
2899
+ internalType: "address",
2900
+ name: "user",
2901
+ type: "address"
2902
+ },
2903
+ {
2904
+ indexed: false,
2905
+ internalType: "uint256[]",
2906
+ name: "subsetNonces",
2907
+ type: "uint256[]"
2908
+ }
2909
+ ],
2910
+ name: "SubsetNoncesCancelled",
2911
+ type: "event"
2912
+ },
2913
+ {
2914
+ anonymous: false,
2915
+ inputs: [
2916
+ {
2917
+ components: [
2918
+ {
2919
+ internalType: "bytes32",
2920
+ name: "orderHash",
2921
+ type: "bytes32"
2922
+ },
2923
+ {
2924
+ internalType: "uint256",
2925
+ name: "orderNonce",
2926
+ type: "uint256"
2927
+ },
2928
+ {
2929
+ internalType: "bool",
2930
+ name: "isNonceInvalidated",
2931
+ type: "bool"
2932
+ }
2933
+ ],
2934
+ indexed: false,
2935
+ internalType: "struct ILooksRareProtocol.NonceInvalidationParameters",
2936
+ name: "nonceInvalidationParameters",
2937
+ type: "tuple"
2938
+ },
2939
+ {
2940
+ indexed: false,
2941
+ internalType: "address",
2942
+ name: "askUser",
2943
+ type: "address"
2944
+ },
2945
+ {
2946
+ indexed: false,
2947
+ internalType: "address",
2948
+ name: "bidUser",
2949
+ type: "address"
2950
+ },
2951
+ {
2952
+ indexed: false,
2953
+ internalType: "uint256",
2954
+ name: "strategyId",
2955
+ type: "uint256"
2956
+ },
2957
+ {
2958
+ indexed: false,
2959
+ internalType: "address",
2960
+ name: "currency",
2961
+ type: "address"
2962
+ },
2963
+ {
2964
+ indexed: false,
2965
+ internalType: "address",
2966
+ name: "collection",
2967
+ type: "address"
2968
+ },
2969
+ {
2970
+ indexed: false,
2971
+ internalType: "uint256[]",
2972
+ name: "itemIds",
2973
+ type: "uint256[]"
2974
+ },
2975
+ {
2976
+ indexed: false,
2977
+ internalType: "uint256[]",
2978
+ name: "amounts",
2979
+ type: "uint256[]"
2980
+ },
2981
+ {
2982
+ indexed: false,
2983
+ internalType: "address[2]",
2984
+ name: "feeRecipients",
2985
+ type: "address[2]"
2986
+ },
2987
+ {
2988
+ indexed: false,
2989
+ internalType: "uint256[3]",
2990
+ name: "feeAmounts",
2991
+ type: "uint256[3]"
2992
+ }
2993
+ ],
2994
+ name: "TakerAsk",
2995
+ type: "event"
2996
+ },
2997
+ {
2998
+ anonymous: false,
2999
+ inputs: [
3000
+ {
3001
+ components: [
3002
+ {
3003
+ internalType: "bytes32",
3004
+ name: "orderHash",
3005
+ type: "bytes32"
3006
+ },
3007
+ {
3008
+ internalType: "uint256",
3009
+ name: "orderNonce",
3010
+ type: "uint256"
3011
+ },
3012
+ {
3013
+ internalType: "bool",
3014
+ name: "isNonceInvalidated",
3015
+ type: "bool"
3016
+ }
3017
+ ],
3018
+ indexed: false,
3019
+ internalType: "struct ILooksRareProtocol.NonceInvalidationParameters",
3020
+ name: "nonceInvalidationParameters",
3021
+ type: "tuple"
3022
+ },
3023
+ {
3024
+ indexed: false,
3025
+ internalType: "address",
3026
+ name: "bidUser",
3027
+ type: "address"
3028
+ },
3029
+ {
3030
+ indexed: false,
3031
+ internalType: "address",
3032
+ name: "bidRecipient",
3033
+ type: "address"
3034
+ },
3035
+ {
3036
+ indexed: false,
3037
+ internalType: "uint256",
3038
+ name: "strategyId",
3039
+ type: "uint256"
3040
+ },
3041
+ {
3042
+ indexed: false,
3043
+ internalType: "address",
3044
+ name: "currency",
3045
+ type: "address"
3046
+ },
3047
+ {
3048
+ indexed: false,
3049
+ internalType: "address",
3050
+ name: "collection",
3051
+ type: "address"
3052
+ },
3053
+ {
3054
+ indexed: false,
3055
+ internalType: "uint256[]",
3056
+ name: "itemIds",
3057
+ type: "uint256[]"
3058
+ },
3059
+ {
3060
+ indexed: false,
3061
+ internalType: "uint256[]",
3062
+ name: "amounts",
3063
+ type: "uint256[]"
3064
+ },
3065
+ {
3066
+ indexed: false,
3067
+ internalType: "address[2]",
3068
+ name: "feeRecipients",
3069
+ type: "address[2]"
3070
+ },
3071
+ {
3072
+ indexed: false,
3073
+ internalType: "uint256[3]",
3074
+ name: "feeAmounts",
3075
+ type: "uint256[3]"
3076
+ }
3077
+ ],
3078
+ name: "TakerBid",
3079
+ type: "event"
3080
+ },
3081
+ {
3082
+ inputs: [
3083
+ ],
3084
+ name: "MAGIC_VALUE_ORDER_NONCE_EXECUTED",
3085
+ outputs: [
3086
+ {
3087
+ internalType: "bytes32",
3088
+ name: "",
3089
+ type: "bytes32"
3090
+ }
3091
+ ],
3092
+ stateMutability: "view",
3093
+ type: "function"
3094
+ },
3095
+ {
3096
+ inputs: [
3097
+ ],
3098
+ name: "WETH",
3099
+ outputs: [
3100
+ {
3101
+ internalType: "address",
3102
+ name: "",
3103
+ type: "address"
3104
+ }
3105
+ ],
3106
+ stateMutability: "view",
3107
+ type: "function"
3108
+ },
3109
+ {
3110
+ inputs: [
3111
+ {
3112
+ internalType: "uint16",
3113
+ name: "standardProtocolFeeBp",
3114
+ type: "uint16"
3115
+ },
3116
+ {
3117
+ internalType: "uint16",
3118
+ name: "minTotalFeeBp",
3119
+ type: "uint16"
3120
+ },
3121
+ {
3122
+ internalType: "uint16",
3123
+ name: "maxProtocolFeeBp",
3124
+ type: "uint16"
3125
+ },
3126
+ {
3127
+ internalType: "bytes4",
3128
+ name: "selector",
3129
+ type: "bytes4"
3130
+ },
3131
+ {
3132
+ internalType: "bool",
3133
+ name: "isMakerBid",
3134
+ type: "bool"
3135
+ },
3136
+ {
3137
+ internalType: "address",
3138
+ name: "implementation",
3139
+ type: "address"
3140
+ }
3141
+ ],
3142
+ name: "addStrategy",
3143
+ outputs: [
3144
+ ],
3145
+ stateMutability: "nonpayable",
3146
+ type: "function"
3147
+ },
3148
+ {
3149
+ inputs: [
3150
+ ],
3151
+ name: "affiliateController",
3152
+ outputs: [
3153
+ {
3154
+ internalType: "address",
3155
+ name: "",
3156
+ type: "address"
3157
+ }
3158
+ ],
3159
+ stateMutability: "view",
3160
+ type: "function"
3161
+ },
3162
+ {
3163
+ inputs: [
3164
+ {
3165
+ internalType: "address",
3166
+ name: "",
3167
+ type: "address"
3168
+ }
3169
+ ],
3170
+ name: "affiliateRates",
3171
+ outputs: [
3172
+ {
3173
+ internalType: "uint256",
3174
+ name: "",
3175
+ type: "uint256"
3176
+ }
3177
+ ],
3178
+ stateMutability: "view",
3179
+ type: "function"
3180
+ },
3181
+ {
3182
+ inputs: [
3183
+ {
3184
+ internalType: "uint256[]",
3185
+ name: "orderNonces",
3186
+ type: "uint256[]"
3187
+ }
3188
+ ],
3189
+ name: "cancelOrderNonces",
3190
+ outputs: [
3191
+ ],
3192
+ stateMutability: "nonpayable",
3193
+ type: "function"
3194
+ },
3195
+ {
3196
+ inputs: [
3197
+ ],
3198
+ name: "cancelOwnershipTransfer",
3199
+ outputs: [
3200
+ ],
3201
+ stateMutability: "nonpayable",
3202
+ type: "function"
3203
+ },
3204
+ {
3205
+ inputs: [
3206
+ {
3207
+ internalType: "uint256[]",
3208
+ name: "subsetNonces",
3209
+ type: "uint256[]"
3210
+ }
3211
+ ],
3212
+ name: "cancelSubsetNonces",
3213
+ outputs: [
3214
+ ],
3215
+ stateMutability: "nonpayable",
3216
+ type: "function"
3217
+ },
3218
+ {
3219
+ inputs: [
3220
+ ],
3221
+ name: "chainId",
3222
+ outputs: [
3223
+ {
3224
+ internalType: "uint256",
3225
+ name: "",
3226
+ type: "uint256"
3227
+ }
3228
+ ],
3229
+ stateMutability: "view",
3230
+ type: "function"
3231
+ },
3232
+ {
3233
+ inputs: [
3234
+ ],
3235
+ name: "confirmOwnershipRenouncement",
3236
+ outputs: [
3237
+ ],
3238
+ stateMutability: "nonpayable",
3239
+ type: "function"
3240
+ },
3241
+ {
3242
+ inputs: [
3243
+ ],
3244
+ name: "confirmOwnershipTransfer",
3245
+ outputs: [
3246
+ ],
3247
+ stateMutability: "nonpayable",
3248
+ type: "function"
3249
+ },
3250
+ {
3251
+ inputs: [
3252
+ ],
3253
+ name: "creatorFeeManager",
3254
+ outputs: [
3255
+ {
3256
+ internalType: "contract ICreatorFeeManager",
3257
+ name: "",
3258
+ type: "address"
3259
+ }
3260
+ ],
3261
+ stateMutability: "view",
3262
+ type: "function"
3263
+ },
3264
+ {
3265
+ inputs: [
3266
+ ],
3267
+ name: "domainSeparator",
3268
+ outputs: [
3269
+ {
3270
+ internalType: "bytes32",
3271
+ name: "",
3272
+ type: "bytes32"
3273
+ }
3274
+ ],
3275
+ stateMutability: "view",
3276
+ type: "function"
2681
3277
  },
2682
3278
  {
2683
3279
  inputs: [
2684
3280
  {
2685
3281
  components: [
2686
3282
  {
2687
- internalType: "bool",
2688
- name: "isOrderAsk",
2689
- type: "bool"
3283
+ internalType: "address",
3284
+ name: "recipient",
3285
+ type: "address"
3286
+ },
3287
+ {
3288
+ internalType: "bytes",
3289
+ name: "additionalParameters",
3290
+ type: "bytes"
3291
+ }
3292
+ ],
3293
+ internalType: "struct OrderStructs.Taker[]",
3294
+ name: "takerBids",
3295
+ type: "tuple[]"
3296
+ },
3297
+ {
3298
+ components: [
3299
+ {
3300
+ internalType: "enum QuoteType",
3301
+ name: "quoteType",
3302
+ type: "uint8"
3303
+ },
3304
+ {
3305
+ internalType: "uint256",
3306
+ name: "globalNonce",
3307
+ type: "uint256"
3308
+ },
3309
+ {
3310
+ internalType: "uint256",
3311
+ name: "subsetNonce",
3312
+ type: "uint256"
3313
+ },
3314
+ {
3315
+ internalType: "uint256",
3316
+ name: "orderNonce",
3317
+ type: "uint256"
3318
+ },
3319
+ {
3320
+ internalType: "uint256",
3321
+ name: "strategyId",
3322
+ type: "uint256"
3323
+ },
3324
+ {
3325
+ internalType: "enum CollectionType",
3326
+ name: "collectionType",
3327
+ type: "uint8"
3328
+ },
3329
+ {
3330
+ internalType: "address",
3331
+ name: "collection",
3332
+ type: "address"
3333
+ },
3334
+ {
3335
+ internalType: "address",
3336
+ name: "currency",
3337
+ type: "address"
2690
3338
  },
2691
3339
  {
2692
3340
  internalType: "address",
2693
- name: "taker",
3341
+ name: "signer",
2694
3342
  type: "address"
2695
3343
  },
2696
3344
  {
2697
3345
  internalType: "uint256",
2698
- name: "price",
3346
+ name: "startTime",
2699
3347
  type: "uint256"
2700
3348
  },
2701
3349
  {
2702
3350
  internalType: "uint256",
2703
- name: "tokenId",
3351
+ name: "endTime",
2704
3352
  type: "uint256"
2705
3353
  },
2706
3354
  {
2707
3355
  internalType: "uint256",
2708
- name: "minPercentageToAsk",
3356
+ name: "price",
2709
3357
  type: "uint256"
2710
3358
  },
3359
+ {
3360
+ internalType: "uint256[]",
3361
+ name: "itemIds",
3362
+ type: "uint256[]"
3363
+ },
3364
+ {
3365
+ internalType: "uint256[]",
3366
+ name: "amounts",
3367
+ type: "uint256[]"
3368
+ },
2711
3369
  {
2712
3370
  internalType: "bytes",
2713
- name: "params",
3371
+ name: "additionalParameters",
2714
3372
  type: "bytes"
2715
3373
  }
2716
3374
  ],
2717
- internalType: "struct OrderTypes.TakerOrder",
2718
- name: "takerBid",
2719
- type: "tuple"
3375
+ internalType: "struct OrderStructs.Maker[]",
3376
+ name: "makerAsks",
3377
+ type: "tuple[]"
3378
+ },
3379
+ {
3380
+ internalType: "bytes[]",
3381
+ name: "makerSignatures",
3382
+ type: "bytes[]"
2720
3383
  },
2721
3384
  {
2722
3385
  components: [
2723
3386
  {
2724
- internalType: "bool",
2725
- name: "isOrderAsk",
2726
- type: "bool"
3387
+ internalType: "bytes32",
3388
+ name: "root",
3389
+ type: "bytes32"
2727
3390
  },
3391
+ {
3392
+ components: [
3393
+ {
3394
+ internalType: "bytes32",
3395
+ name: "value",
3396
+ type: "bytes32"
3397
+ },
3398
+ {
3399
+ internalType: "enum OrderStructs.MerkleTreeNodePosition",
3400
+ name: "position",
3401
+ type: "uint8"
3402
+ }
3403
+ ],
3404
+ internalType: "struct OrderStructs.MerkleTreeNode[]",
3405
+ name: "proof",
3406
+ type: "tuple[]"
3407
+ }
3408
+ ],
3409
+ internalType: "struct OrderStructs.MerkleTree[]",
3410
+ name: "merkleTrees",
3411
+ type: "tuple[]"
3412
+ },
3413
+ {
3414
+ internalType: "address",
3415
+ name: "affiliate",
3416
+ type: "address"
3417
+ },
3418
+ {
3419
+ internalType: "bool",
3420
+ name: "isAtomic",
3421
+ type: "bool"
3422
+ }
3423
+ ],
3424
+ name: "executeMultipleTakerBids",
3425
+ outputs: [
3426
+ ],
3427
+ stateMutability: "payable",
3428
+ type: "function"
3429
+ },
3430
+ {
3431
+ inputs: [
3432
+ {
3433
+ components: [
2728
3434
  {
2729
3435
  internalType: "address",
2730
- name: "signer",
3436
+ name: "recipient",
2731
3437
  type: "address"
2732
3438
  },
2733
3439
  {
2734
- internalType: "address",
2735
- name: "collection",
2736
- type: "address"
3440
+ internalType: "bytes",
3441
+ name: "additionalParameters",
3442
+ type: "bytes"
3443
+ }
3444
+ ],
3445
+ internalType: "struct OrderStructs.Taker",
3446
+ name: "takerAsk",
3447
+ type: "tuple"
3448
+ },
3449
+ {
3450
+ components: [
3451
+ {
3452
+ internalType: "enum QuoteType",
3453
+ name: "quoteType",
3454
+ type: "uint8"
2737
3455
  },
2738
3456
  {
2739
3457
  internalType: "uint256",
2740
- name: "price",
3458
+ name: "globalNonce",
2741
3459
  type: "uint256"
2742
3460
  },
2743
3461
  {
2744
3462
  internalType: "uint256",
2745
- name: "tokenId",
3463
+ name: "subsetNonce",
2746
3464
  type: "uint256"
2747
3465
  },
2748
3466
  {
2749
3467
  internalType: "uint256",
2750
- name: "amount",
3468
+ name: "orderNonce",
3469
+ type: "uint256"
3470
+ },
3471
+ {
3472
+ internalType: "uint256",
3473
+ name: "strategyId",
2751
3474
  type: "uint256"
2752
3475
  },
3476
+ {
3477
+ internalType: "enum CollectionType",
3478
+ name: "collectionType",
3479
+ type: "uint8"
3480
+ },
2753
3481
  {
2754
3482
  internalType: "address",
2755
- name: "strategy",
3483
+ name: "collection",
2756
3484
  type: "address"
2757
3485
  },
2758
3486
  {
@@ -2761,9 +3489,9 @@ var abi$1 = [
2761
3489
  type: "address"
2762
3490
  },
2763
3491
  {
2764
- internalType: "uint256",
2765
- name: "nonce",
2766
- type: "uint256"
3492
+ internalType: "address",
3493
+ name: "signer",
3494
+ type: "address"
2767
3495
  },
2768
3496
  {
2769
3497
  internalType: "uint256",
@@ -2777,36 +3505,70 @@ var abi$1 = [
2777
3505
  },
2778
3506
  {
2779
3507
  internalType: "uint256",
2780
- name: "minPercentageToAsk",
3508
+ name: "price",
2781
3509
  type: "uint256"
2782
3510
  },
2783
3511
  {
2784
- internalType: "bytes",
2785
- name: "params",
2786
- type: "bytes"
3512
+ internalType: "uint256[]",
3513
+ name: "itemIds",
3514
+ type: "uint256[]"
2787
3515
  },
2788
3516
  {
2789
- internalType: "uint8",
2790
- name: "v",
2791
- type: "uint8"
3517
+ internalType: "uint256[]",
3518
+ name: "amounts",
3519
+ type: "uint256[]"
2792
3520
  },
3521
+ {
3522
+ internalType: "bytes",
3523
+ name: "additionalParameters",
3524
+ type: "bytes"
3525
+ }
3526
+ ],
3527
+ internalType: "struct OrderStructs.Maker",
3528
+ name: "makerBid",
3529
+ type: "tuple"
3530
+ },
3531
+ {
3532
+ internalType: "bytes",
3533
+ name: "makerSignature",
3534
+ type: "bytes"
3535
+ },
3536
+ {
3537
+ components: [
2793
3538
  {
2794
3539
  internalType: "bytes32",
2795
- name: "r",
3540
+ name: "root",
2796
3541
  type: "bytes32"
2797
3542
  },
2798
3543
  {
2799
- internalType: "bytes32",
2800
- name: "s",
2801
- type: "bytes32"
3544
+ components: [
3545
+ {
3546
+ internalType: "bytes32",
3547
+ name: "value",
3548
+ type: "bytes32"
3549
+ },
3550
+ {
3551
+ internalType: "enum OrderStructs.MerkleTreeNodePosition",
3552
+ name: "position",
3553
+ type: "uint8"
3554
+ }
3555
+ ],
3556
+ internalType: "struct OrderStructs.MerkleTreeNode[]",
3557
+ name: "proof",
3558
+ type: "tuple[]"
2802
3559
  }
2803
3560
  ],
2804
- internalType: "struct OrderTypes.MakerOrder",
2805
- name: "makerAsk",
3561
+ internalType: "struct OrderStructs.MerkleTree",
3562
+ name: "merkleTree",
2806
3563
  type: "tuple"
3564
+ },
3565
+ {
3566
+ internalType: "address",
3567
+ name: "affiliate",
3568
+ type: "address"
2807
3569
  }
2808
3570
  ],
2809
- name: "matchAskWithTakerBid",
3571
+ name: "executeTakerAsk",
2810
3572
  outputs: [
2811
3573
  ],
2812
3574
  stateMutability: "nonpayable",
@@ -2816,76 +3578,56 @@ var abi$1 = [
2816
3578
  inputs: [
2817
3579
  {
2818
3580
  components: [
2819
- {
2820
- internalType: "bool",
2821
- name: "isOrderAsk",
2822
- type: "bool"
2823
- },
2824
3581
  {
2825
3582
  internalType: "address",
2826
- name: "taker",
3583
+ name: "recipient",
2827
3584
  type: "address"
2828
3585
  },
2829
- {
2830
- internalType: "uint256",
2831
- name: "price",
2832
- type: "uint256"
2833
- },
2834
- {
2835
- internalType: "uint256",
2836
- name: "tokenId",
2837
- type: "uint256"
2838
- },
2839
- {
2840
- internalType: "uint256",
2841
- name: "minPercentageToAsk",
2842
- type: "uint256"
2843
- },
2844
3586
  {
2845
3587
  internalType: "bytes",
2846
- name: "params",
3588
+ name: "additionalParameters",
2847
3589
  type: "bytes"
2848
3590
  }
2849
3591
  ],
2850
- internalType: "struct OrderTypes.TakerOrder",
3592
+ internalType: "struct OrderStructs.Taker",
2851
3593
  name: "takerBid",
2852
3594
  type: "tuple"
2853
3595
  },
2854
3596
  {
2855
3597
  components: [
2856
3598
  {
2857
- internalType: "bool",
2858
- name: "isOrderAsk",
2859
- type: "bool"
2860
- },
2861
- {
2862
- internalType: "address",
2863
- name: "signer",
2864
- type: "address"
3599
+ internalType: "enum QuoteType",
3600
+ name: "quoteType",
3601
+ type: "uint8"
2865
3602
  },
2866
3603
  {
2867
- internalType: "address",
2868
- name: "collection",
2869
- type: "address"
3604
+ internalType: "uint256",
3605
+ name: "globalNonce",
3606
+ type: "uint256"
2870
3607
  },
2871
3608
  {
2872
3609
  internalType: "uint256",
2873
- name: "price",
3610
+ name: "subsetNonce",
2874
3611
  type: "uint256"
2875
3612
  },
2876
3613
  {
2877
3614
  internalType: "uint256",
2878
- name: "tokenId",
3615
+ name: "orderNonce",
2879
3616
  type: "uint256"
2880
3617
  },
2881
3618
  {
2882
3619
  internalType: "uint256",
2883
- name: "amount",
3620
+ name: "strategyId",
2884
3621
  type: "uint256"
2885
3622
  },
3623
+ {
3624
+ internalType: "enum CollectionType",
3625
+ name: "collectionType",
3626
+ type: "uint8"
3627
+ },
2886
3628
  {
2887
3629
  internalType: "address",
2888
- name: "strategy",
3630
+ name: "collection",
2889
3631
  type: "address"
2890
3632
  },
2891
3633
  {
@@ -2894,9 +3636,9 @@ var abi$1 = [
2894
3636
  type: "address"
2895
3637
  },
2896
3638
  {
2897
- internalType: "uint256",
2898
- name: "nonce",
2899
- type: "uint256"
3639
+ internalType: "address",
3640
+ name: "signer",
3641
+ type: "address"
2900
3642
  },
2901
3643
  {
2902
3644
  internalType: "uint256",
@@ -2910,115 +3652,298 @@ var abi$1 = [
2910
3652
  },
2911
3653
  {
2912
3654
  internalType: "uint256",
2913
- name: "minPercentageToAsk",
3655
+ name: "price",
2914
3656
  type: "uint256"
2915
3657
  },
2916
3658
  {
2917
- internalType: "bytes",
2918
- name: "params",
2919
- type: "bytes"
3659
+ internalType: "uint256[]",
3660
+ name: "itemIds",
3661
+ type: "uint256[]"
2920
3662
  },
2921
3663
  {
2922
- internalType: "uint8",
2923
- name: "v",
2924
- type: "uint8"
3664
+ internalType: "uint256[]",
3665
+ name: "amounts",
3666
+ type: "uint256[]"
2925
3667
  },
3668
+ {
3669
+ internalType: "bytes",
3670
+ name: "additionalParameters",
3671
+ type: "bytes"
3672
+ }
3673
+ ],
3674
+ internalType: "struct OrderStructs.Maker",
3675
+ name: "makerAsk",
3676
+ type: "tuple"
3677
+ },
3678
+ {
3679
+ internalType: "bytes",
3680
+ name: "makerSignature",
3681
+ type: "bytes"
3682
+ },
3683
+ {
3684
+ components: [
2926
3685
  {
2927
3686
  internalType: "bytes32",
2928
- name: "r",
3687
+ name: "root",
2929
3688
  type: "bytes32"
2930
3689
  },
2931
3690
  {
2932
- internalType: "bytes32",
2933
- name: "s",
2934
- type: "bytes32"
3691
+ components: [
3692
+ {
3693
+ internalType: "bytes32",
3694
+ name: "value",
3695
+ type: "bytes32"
3696
+ },
3697
+ {
3698
+ internalType: "enum OrderStructs.MerkleTreeNodePosition",
3699
+ name: "position",
3700
+ type: "uint8"
3701
+ }
3702
+ ],
3703
+ internalType: "struct OrderStructs.MerkleTreeNode[]",
3704
+ name: "proof",
3705
+ type: "tuple[]"
2935
3706
  }
2936
3707
  ],
2937
- internalType: "struct OrderTypes.MakerOrder",
2938
- name: "makerAsk",
3708
+ internalType: "struct OrderStructs.MerkleTree",
3709
+ name: "merkleTree",
2939
3710
  type: "tuple"
3711
+ },
3712
+ {
3713
+ internalType: "address",
3714
+ name: "affiliate",
3715
+ type: "address"
2940
3716
  }
2941
3717
  ],
2942
- name: "matchAskWithTakerBidUsingETHAndWETH",
3718
+ name: "executeTakerBid",
2943
3719
  outputs: [
2944
3720
  ],
2945
3721
  stateMutability: "payable",
2946
3722
  type: "function"
2947
3723
  },
3724
+ {
3725
+ inputs: [
3726
+ {
3727
+ internalType: "bytes32",
3728
+ name: "root",
3729
+ type: "bytes32"
3730
+ },
3731
+ {
3732
+ internalType: "uint256",
3733
+ name: "proofLength",
3734
+ type: "uint256"
3735
+ }
3736
+ ],
3737
+ name: "hashBatchOrder",
3738
+ outputs: [
3739
+ {
3740
+ internalType: "bytes32",
3741
+ name: "batchOrderHash",
3742
+ type: "bytes32"
3743
+ }
3744
+ ],
3745
+ stateMutability: "pure",
3746
+ type: "function"
3747
+ },
3748
+ {
3749
+ inputs: [
3750
+ {
3751
+ internalType: "bool",
3752
+ name: "bid",
3753
+ type: "bool"
3754
+ },
3755
+ {
3756
+ internalType: "bool",
3757
+ name: "ask",
3758
+ type: "bool"
3759
+ }
3760
+ ],
3761
+ name: "incrementBidAskNonces",
3762
+ outputs: [
3763
+ ],
3764
+ stateMutability: "nonpayable",
3765
+ type: "function"
3766
+ },
3767
+ {
3768
+ inputs: [
3769
+ ],
3770
+ name: "initiateOwnershipRenouncement",
3771
+ outputs: [
3772
+ ],
3773
+ stateMutability: "nonpayable",
3774
+ type: "function"
3775
+ },
3776
+ {
3777
+ inputs: [
3778
+ {
3779
+ internalType: "address",
3780
+ name: "newPotentialOwner",
3781
+ type: "address"
3782
+ }
3783
+ ],
3784
+ name: "initiateOwnershipTransfer",
3785
+ outputs: [
3786
+ ],
3787
+ stateMutability: "nonpayable",
3788
+ type: "function"
3789
+ },
3790
+ {
3791
+ inputs: [
3792
+ ],
3793
+ name: "isAffiliateProgramActive",
3794
+ outputs: [
3795
+ {
3796
+ internalType: "bool",
3797
+ name: "",
3798
+ type: "bool"
3799
+ }
3800
+ ],
3801
+ stateMutability: "view",
3802
+ type: "function"
3803
+ },
3804
+ {
3805
+ inputs: [
3806
+ {
3807
+ internalType: "address",
3808
+ name: "",
3809
+ type: "address"
3810
+ }
3811
+ ],
3812
+ name: "isCurrencyAllowed",
3813
+ outputs: [
3814
+ {
3815
+ internalType: "bool",
3816
+ name: "",
3817
+ type: "bool"
3818
+ }
3819
+ ],
3820
+ stateMutability: "view",
3821
+ type: "function"
3822
+ },
3823
+ {
3824
+ inputs: [
3825
+ ],
3826
+ name: "maxCreatorFeeBp",
3827
+ outputs: [
3828
+ {
3829
+ internalType: "uint16",
3830
+ name: "",
3831
+ type: "uint16"
3832
+ }
3833
+ ],
3834
+ stateMutability: "view",
3835
+ type: "function"
3836
+ },
3837
+ {
3838
+ inputs: [
3839
+ ],
3840
+ name: "owner",
3841
+ outputs: [
3842
+ {
3843
+ internalType: "address",
3844
+ name: "",
3845
+ type: "address"
3846
+ }
3847
+ ],
3848
+ stateMutability: "view",
3849
+ type: "function"
3850
+ },
3851
+ {
3852
+ inputs: [
3853
+ ],
3854
+ name: "ownershipStatus",
3855
+ outputs: [
3856
+ {
3857
+ internalType: "enum IOwnableTwoSteps.Status",
3858
+ name: "",
3859
+ type: "uint8"
3860
+ }
3861
+ ],
3862
+ stateMutability: "view",
3863
+ type: "function"
3864
+ },
3865
+ {
3866
+ inputs: [
3867
+ ],
3868
+ name: "potentialOwner",
3869
+ outputs: [
3870
+ {
3871
+ internalType: "address",
3872
+ name: "",
3873
+ type: "address"
3874
+ }
3875
+ ],
3876
+ stateMutability: "view",
3877
+ type: "function"
3878
+ },
3879
+ {
3880
+ inputs: [
3881
+ ],
3882
+ name: "protocolFeeRecipient",
3883
+ outputs: [
3884
+ {
3885
+ internalType: "address",
3886
+ name: "",
3887
+ type: "address"
3888
+ }
3889
+ ],
3890
+ stateMutability: "view",
3891
+ type: "function"
3892
+ },
2948
3893
  {
2949
3894
  inputs: [
2950
3895
  {
2951
3896
  components: [
2952
- {
2953
- internalType: "bool",
2954
- name: "isOrderAsk",
2955
- type: "bool"
2956
- },
2957
3897
  {
2958
3898
  internalType: "address",
2959
- name: "taker",
3899
+ name: "recipient",
2960
3900
  type: "address"
2961
3901
  },
2962
- {
2963
- internalType: "uint256",
2964
- name: "price",
2965
- type: "uint256"
2966
- },
2967
- {
2968
- internalType: "uint256",
2969
- name: "tokenId",
2970
- type: "uint256"
2971
- },
2972
- {
2973
- internalType: "uint256",
2974
- name: "minPercentageToAsk",
2975
- type: "uint256"
2976
- },
2977
3902
  {
2978
3903
  internalType: "bytes",
2979
- name: "params",
3904
+ name: "additionalParameters",
2980
3905
  type: "bytes"
2981
3906
  }
2982
3907
  ],
2983
- internalType: "struct OrderTypes.TakerOrder",
2984
- name: "takerAsk",
3908
+ internalType: "struct OrderStructs.Taker",
3909
+ name: "takerBid",
2985
3910
  type: "tuple"
2986
3911
  },
2987
3912
  {
2988
3913
  components: [
2989
3914
  {
2990
- internalType: "bool",
2991
- name: "isOrderAsk",
2992
- type: "bool"
2993
- },
2994
- {
2995
- internalType: "address",
2996
- name: "signer",
2997
- type: "address"
3915
+ internalType: "enum QuoteType",
3916
+ name: "quoteType",
3917
+ type: "uint8"
2998
3918
  },
2999
3919
  {
3000
- internalType: "address",
3001
- name: "collection",
3002
- type: "address"
3920
+ internalType: "uint256",
3921
+ name: "globalNonce",
3922
+ type: "uint256"
3003
3923
  },
3004
3924
  {
3005
3925
  internalType: "uint256",
3006
- name: "price",
3926
+ name: "subsetNonce",
3007
3927
  type: "uint256"
3008
3928
  },
3009
3929
  {
3010
3930
  internalType: "uint256",
3011
- name: "tokenId",
3931
+ name: "orderNonce",
3012
3932
  type: "uint256"
3013
3933
  },
3014
3934
  {
3015
3935
  internalType: "uint256",
3016
- name: "amount",
3936
+ name: "strategyId",
3017
3937
  type: "uint256"
3018
3938
  },
3939
+ {
3940
+ internalType: "enum CollectionType",
3941
+ name: "collectionType",
3942
+ type: "uint8"
3943
+ },
3019
3944
  {
3020
3945
  internalType: "address",
3021
- name: "strategy",
3946
+ name: "collection",
3022
3947
  type: "address"
3023
3948
  },
3024
3949
  {
@@ -3027,9 +3952,9 @@ var abi$1 = [
3027
3952
  type: "address"
3028
3953
  },
3029
3954
  {
3030
- internalType: "uint256",
3031
- name: "nonce",
3032
- type: "uint256"
3955
+ internalType: "address",
3956
+ name: "signer",
3957
+ type: "address"
3033
3958
  },
3034
3959
  {
3035
3960
  internalType: "uint256",
@@ -3043,49 +3968,94 @@ var abi$1 = [
3043
3968
  },
3044
3969
  {
3045
3970
  internalType: "uint256",
3046
- name: "minPercentageToAsk",
3971
+ name: "price",
3047
3972
  type: "uint256"
3048
3973
  },
3049
3974
  {
3050
- internalType: "bytes",
3051
- name: "params",
3052
- type: "bytes"
3053
- },
3054
- {
3055
- internalType: "uint8",
3056
- name: "v",
3057
- type: "uint8"
3975
+ internalType: "uint256[]",
3976
+ name: "itemIds",
3977
+ type: "uint256[]"
3058
3978
  },
3059
3979
  {
3060
- internalType: "bytes32",
3061
- name: "r",
3062
- type: "bytes32"
3980
+ internalType: "uint256[]",
3981
+ name: "amounts",
3982
+ type: "uint256[]"
3063
3983
  },
3064
3984
  {
3065
- internalType: "bytes32",
3066
- name: "s",
3067
- type: "bytes32"
3985
+ internalType: "bytes",
3986
+ name: "additionalParameters",
3987
+ type: "bytes"
3068
3988
  }
3069
3989
  ],
3070
- internalType: "struct OrderTypes.MakerOrder",
3071
- name: "makerBid",
3990
+ internalType: "struct OrderStructs.Maker",
3991
+ name: "makerAsk",
3072
3992
  type: "tuple"
3993
+ },
3994
+ {
3995
+ internalType: "address",
3996
+ name: "sender",
3997
+ type: "address"
3998
+ },
3999
+ {
4000
+ internalType: "bytes32",
4001
+ name: "orderHash",
4002
+ type: "bytes32"
3073
4003
  }
3074
4004
  ],
3075
- name: "matchBidWithTakerAsk",
4005
+ name: "restrictedExecuteTakerBid",
3076
4006
  outputs: [
4007
+ {
4008
+ internalType: "uint256",
4009
+ name: "protocolFeeAmount",
4010
+ type: "uint256"
4011
+ }
3077
4012
  ],
3078
4013
  stateMutability: "nonpayable",
3079
4014
  type: "function"
3080
4015
  },
3081
4016
  {
3082
4017
  inputs: [
4018
+ {
4019
+ internalType: "uint256",
4020
+ name: "",
4021
+ type: "uint256"
4022
+ }
3083
4023
  ],
3084
- name: "owner",
4024
+ name: "strategyInfo",
3085
4025
  outputs: [
4026
+ {
4027
+ internalType: "bool",
4028
+ name: "isActive",
4029
+ type: "bool"
4030
+ },
4031
+ {
4032
+ internalType: "uint16",
4033
+ name: "standardProtocolFeeBp",
4034
+ type: "uint16"
4035
+ },
4036
+ {
4037
+ internalType: "uint16",
4038
+ name: "minTotalFeeBp",
4039
+ type: "uint16"
4040
+ },
4041
+ {
4042
+ internalType: "uint16",
4043
+ name: "maxProtocolFeeBp",
4044
+ type: "uint16"
4045
+ },
4046
+ {
4047
+ internalType: "bytes4",
4048
+ name: "selector",
4049
+ type: "bytes4"
4050
+ },
4051
+ {
4052
+ internalType: "bool",
4053
+ name: "isMakerBid",
4054
+ type: "bool"
4055
+ },
3086
4056
  {
3087
4057
  internalType: "address",
3088
- name: "",
4058
+ name: "implementation",
3089
4059
  type: "address"
3090
4060
  }
3091
4061
  ],
@@ -3095,10 +4065,10 @@ var abi$1 = [
3095
4065
  {
3096
4066
  inputs: [
3097
4067
  ],
3098
- name: "protocolFeeRecipient",
4068
+ name: "transferManager",
3099
4069
  outputs: [
3100
4070
  {
3101
- internalType: "address",
4071
+ internalType: "contract TransferManager",
3102
4072
  name: "",
3103
4073
  type: "address"
3104
4074
  }
@@ -3108,8 +4078,13 @@ var abi$1 = [
3108
4078
  },
3109
4079
  {
3110
4080
  inputs: [
4081
+ {
4082
+ internalType: "address",
4083
+ name: "newAffiliateController",
4084
+ type: "address"
4085
+ }
3111
4086
  ],
3112
- name: "renounceOwnership",
4087
+ name: "updateAffiliateController",
3113
4088
  outputs: [
3114
4089
  ],
3115
4090
  stateMutability: "nonpayable",
@@ -3117,27 +4092,46 @@ var abi$1 = [
3117
4092
  },
3118
4093
  {
3119
4094
  inputs: [
4095
+ {
4096
+ internalType: "bool",
4097
+ name: "isActive",
4098
+ type: "bool"
4099
+ }
3120
4100
  ],
3121
- name: "royaltyFeeManager",
4101
+ name: "updateAffiliateProgramStatus",
3122
4102
  outputs: [
4103
+ ],
4104
+ stateMutability: "nonpayable",
4105
+ type: "function"
4106
+ },
4107
+ {
4108
+ inputs: [
3123
4109
  {
3124
- internalType: "contract IRoyaltyFeeManager",
3125
- name: "",
4110
+ internalType: "address",
4111
+ name: "affiliate",
3126
4112
  type: "address"
4113
+ },
4114
+ {
4115
+ internalType: "uint256",
4116
+ name: "bp",
4117
+ type: "uint256"
3127
4118
  }
3128
4119
  ],
3129
- stateMutability: "view",
4120
+ name: "updateAffiliateRate",
4121
+ outputs: [
4122
+ ],
4123
+ stateMutability: "nonpayable",
3130
4124
  type: "function"
3131
4125
  },
3132
4126
  {
3133
4127
  inputs: [
3134
4128
  {
3135
4129
  internalType: "address",
3136
- name: "newOwner",
4130
+ name: "newCreatorFeeManager",
3137
4131
  type: "address"
3138
4132
  }
3139
4133
  ],
3140
- name: "transferOwnership",
4134
+ name: "updateCreatorFeeManager",
3141
4135
  outputs: [
3142
4136
  ],
3143
4137
  stateMutability: "nonpayable",
@@ -3145,27 +4139,41 @@ var abi$1 = [
3145
4139
  },
3146
4140
  {
3147
4141
  inputs: [
3148
- ],
3149
- name: "transferSelectorNFT",
3150
- outputs: [
3151
4142
  {
3152
- internalType: "contract ITransferSelectorNFT",
3153
- name: "",
4143
+ internalType: "address",
4144
+ name: "currency",
3154
4145
  type: "address"
4146
+ },
4147
+ {
4148
+ internalType: "bool",
4149
+ name: "isAllowed",
4150
+ type: "bool"
3155
4151
  }
3156
4152
  ],
3157
- stateMutability: "view",
4153
+ name: "updateCurrencyStatus",
4154
+ outputs: [
4155
+ ],
4156
+ stateMutability: "nonpayable",
4157
+ type: "function"
4158
+ },
4159
+ {
4160
+ inputs: [
4161
+ ],
4162
+ name: "updateDomainSeparator",
4163
+ outputs: [
4164
+ ],
4165
+ stateMutability: "nonpayable",
3158
4166
  type: "function"
3159
4167
  },
3160
4168
  {
3161
4169
  inputs: [
3162
4170
  {
3163
- internalType: "address",
3164
- name: "_currencyManager",
3165
- type: "address"
4171
+ internalType: "uint256",
4172
+ name: "newGasLimitETHTransfer",
4173
+ type: "uint256"
3166
4174
  }
3167
4175
  ],
3168
- name: "updateCurrencyManager",
4176
+ name: "updateETHGasLimitForTransfer",
3169
4177
  outputs: [
3170
4178
  ],
3171
4179
  stateMutability: "nonpayable",
@@ -3174,12 +4182,12 @@ var abi$1 = [
3174
4182
  {
3175
4183
  inputs: [
3176
4184
  {
3177
- internalType: "address",
3178
- name: "_executionManager",
3179
- type: "address"
4185
+ internalType: "uint16",
4186
+ name: "newMaxCreatorFeeBp",
4187
+ type: "uint16"
3180
4188
  }
3181
4189
  ],
3182
- name: "updateExecutionManager",
4190
+ name: "updateMaxCreatorFeeBp",
3183
4191
  outputs: [
3184
4192
  ],
3185
4193
  stateMutability: "nonpayable",
@@ -3189,7 +4197,7 @@ var abi$1 = [
3189
4197
  inputs: [
3190
4198
  {
3191
4199
  internalType: "address",
3192
- name: "_protocolFeeRecipient",
4200
+ name: "newProtocolFeeRecipient",
3193
4201
  type: "address"
3194
4202
  }
3195
4203
  ],
@@ -3202,12 +4210,27 @@ var abi$1 = [
3202
4210
  {
3203
4211
  inputs: [
3204
4212
  {
3205
- internalType: "address",
3206
- name: "_royaltyFeeManager",
3207
- type: "address"
4213
+ internalType: "uint256",
4214
+ name: "strategyId",
4215
+ type: "uint256"
4216
+ },
4217
+ {
4218
+ internalType: "bool",
4219
+ name: "isActive",
4220
+ type: "bool"
4221
+ },
4222
+ {
4223
+ internalType: "uint16",
4224
+ name: "newStandardProtocolFee",
4225
+ type: "uint16"
4226
+ },
4227
+ {
4228
+ internalType: "uint16",
4229
+ name: "newMinTotalFee",
4230
+ type: "uint16"
3208
4231
  }
3209
4232
  ],
3210
- name: "updateRoyaltyFeeManager",
4233
+ name: "updateStrategy",
3211
4234
  outputs: [
3212
4235
  ],
3213
4236
  stateMutability: "nonpayable",
@@ -3217,14 +4240,24 @@ var abi$1 = [
3217
4240
  inputs: [
3218
4241
  {
3219
4242
  internalType: "address",
3220
- name: "_transferSelectorNFT",
4243
+ name: "",
3221
4244
  type: "address"
3222
4245
  }
3223
4246
  ],
3224
- name: "updateTransferSelectorNFT",
4247
+ name: "userBidAskNonces",
3225
4248
  outputs: [
4249
+ {
4250
+ internalType: "uint256",
4251
+ name: "bidNonce",
4252
+ type: "uint256"
4253
+ },
4254
+ {
4255
+ internalType: "uint256",
4256
+ name: "askNonce",
4257
+ type: "uint256"
4258
+ }
3226
4259
  ],
3227
- stateMutability: "nonpayable",
4260
+ stateMutability: "view",
3228
4261
  type: "function"
3229
4262
  },
3230
4263
  {
@@ -3233,62 +4266,118 @@ var abi$1 = [
3233
4266
  internalType: "address",
3234
4267
  name: "",
3235
4268
  type: "address"
4269
+ },
4270
+ {
4271
+ internalType: "uint256",
4272
+ name: "",
4273
+ type: "uint256"
3236
4274
  }
3237
4275
  ],
3238
- name: "userMinOrderNonce",
4276
+ name: "userOrderNonce",
3239
4277
  outputs: [
4278
+ {
4279
+ internalType: "bytes32",
4280
+ name: "",
4281
+ type: "bytes32"
4282
+ }
4283
+ ],
4284
+ stateMutability: "view",
4285
+ type: "function"
4286
+ },
4287
+ {
4288
+ inputs: [
4289
+ {
4290
+ internalType: "address",
4291
+ name: "",
4292
+ type: "address"
4293
+ },
3240
4294
  {
3241
4295
  internalType: "uint256",
3242
4296
  name: "",
3243
4297
  type: "uint256"
3244
4298
  }
3245
4299
  ],
4300
+ name: "userSubsetNonce",
4301
+ outputs: [
4302
+ {
4303
+ internalType: "bool",
4304
+ name: "",
4305
+ type: "bool"
4306
+ }
4307
+ ],
3246
4308
  stateMutability: "view",
3247
4309
  type: "function"
3248
4310
  }
3249
4311
  ];
3250
4312
 
3251
- var LooksRareTrade = /*#__PURE__*/function (_NFTTrade) {
3252
- _inheritsLoose(LooksRareTrade, _NFTTrade);
3253
- function LooksRareTrade(orders) {
3254
- return _NFTTrade.call(this, Market.LooksRare, orders) || this;
4313
+ var LooksRareV2Trade = /*#__PURE__*/function (_NFTTrade) {
4314
+ _inheritsLoose(LooksRareV2Trade, _NFTTrade);
4315
+ function LooksRareV2Trade(orders) {
4316
+ return _NFTTrade.call(this, Market.LooksRareV2, orders) || this;
3255
4317
  }
3256
- var _proto = LooksRareTrade.prototype;
4318
+ var _proto = LooksRareV2Trade.prototype;
3257
4319
  _proto.encode = function encode(planner, config) {
3258
4320
  for (var _iterator = _createForOfIteratorHelperLoose(this.orders), _step; !(_step = _iterator()).done;) {
3259
4321
  var item = _step.value;
3260
- var calldata = LooksRareTrade.INTERFACE.encodeFunctionData('matchAskWithTakerBidUsingETHAndWETH', [item.takerOrder, item.makerOrder]);
3261
- if (item.tokenType == TokenType.ERC721) {
3262
- !(item.makerOrder.amount == 1) ? process.env.NODE_ENV !== "production" ? invariant(false, 'ERC721 token amount must be 1') : invariant(false) : void 0;
3263
- planner.addCommand(CommandType.LOOKS_RARE_721, [item.makerOrder.price, calldata, item.recipient, item.makerOrder.collection, item.makerOrder.tokenId], config.allowRevert);
3264
- } else if (item.tokenType == TokenType.ERC1155) {
3265
- planner.addCommand(CommandType.LOOKS_RARE_1155, [item.makerOrder.price, calldata, item.recipient, item.makerOrder.collection, item.makerOrder.tokenId, item.makerOrder.amount], config.allowRevert);
3266
- }
4322
+ var _this$refactorAPIData = this.refactorAPIData(item),
4323
+ takerBid = _this$refactorAPIData.takerBid,
4324
+ makerOrder = _this$refactorAPIData.makerOrder,
4325
+ makerSignature = _this$refactorAPIData.makerSignature,
4326
+ value = _this$refactorAPIData.value,
4327
+ merkleTree = _this$refactorAPIData.merkleTree;
4328
+ var calldata = LooksRareV2Trade.INTERFACE.encodeFunctionData('executeTakerBid', [takerBid, makerOrder, makerSignature, merkleTree, ZERO_ADDRESS]);
4329
+ planner.addCommand(CommandType.LOOKS_RARE_V2, [value, calldata], config.allowRevert);
3267
4330
  }
3268
4331
  };
3269
4332
  _proto.getBuyItems = function getBuyItems() {
3270
4333
  var buyItems = [];
3271
4334
  for (var _iterator2 = _createForOfIteratorHelperLoose(this.orders), _step2; !(_step2 = _iterator2()).done;) {
3272
4335
  var item = _step2.value;
3273
- buyItems.push({
3274
- tokenAddress: item.makerOrder.collection,
3275
- tokenId: item.makerOrder.tokenId,
3276
- tokenType: item.tokenType
3277
- });
4336
+ var tokenAddress = item.apiOrder.collection;
4337
+ var tokenType = item.apiOrder.collectionType == LooksRareV2Trade.ERC721_ORDER ? TokenType.ERC721 : TokenType.ERC1155;
4338
+ for (var _iterator3 = _createForOfIteratorHelperLoose(item.apiOrder.itemIds), _step3; !(_step3 = _iterator3()).done;) {
4339
+ var tokenId = _step3.value;
4340
+ buyItems.push({
4341
+ tokenAddress: tokenAddress,
4342
+ tokenId: tokenId,
4343
+ tokenType: tokenType
4344
+ });
4345
+ }
3278
4346
  }
3279
4347
  return buyItems;
3280
4348
  };
3281
4349
  _proto.getTotalPrice = function getTotalPrice() {
3282
4350
  var total = BigNumber.from(0);
3283
- for (var _iterator3 = _createForOfIteratorHelperLoose(this.orders), _step3; !(_step3 = _iterator3()).done;) {
3284
- var item = _step3.value;
3285
- total = total.add(item.makerOrder.price);
4351
+ for (var _iterator4 = _createForOfIteratorHelperLoose(this.orders), _step4; !(_step4 = _iterator4()).done;) {
4352
+ var item = _step4.value;
4353
+ total = total.add(item.apiOrder.price);
3286
4354
  }
3287
4355
  return total;
3288
4356
  };
3289
- return LooksRareTrade;
4357
+ _proto.refactorAPIData = function refactorAPIData(data) {
4358
+ var makerOrder = _extends({}, data.apiOrder);
4359
+ var makerSignature = data.apiOrder.signature;
4360
+ var takerBid = {
4361
+ recipient: data.taker,
4362
+ additionalParameters: '0x'
4363
+ };
4364
+ var value = BigNumber.from(data.apiOrder.price);
4365
+ var merkleTree = {
4366
+ root: data.apiOrder.merkleRoot,
4367
+ proof: data.apiOrder.merkleProof
4368
+ };
4369
+ return {
4370
+ takerBid: takerBid,
4371
+ makerOrder: makerOrder,
4372
+ makerSignature: makerSignature,
4373
+ value: value,
4374
+ merkleTree: merkleTree
4375
+ };
4376
+ };
4377
+ return LooksRareV2Trade;
3290
4378
  }(NFTTrade);
3291
- LooksRareTrade.INTERFACE = /*#__PURE__*/new Interface(abi$1);
4379
+ LooksRareV2Trade.INTERFACE = /*#__PURE__*/new Interface(abi$1);
4380
+ LooksRareV2Trade.ERC721_ORDER = 0;
3292
4381
 
3293
4382
  var abi$2 = [
3294
4383
  {
@@ -3598,8 +4687,18 @@ var abi$3 = [
3598
4687
  },
3599
4688
  {
3600
4689
  internalType: "address",
3601
- name: "_sushiRouter",
4690
+ name: "_WETH",
4691
+ type: "address"
4692
+ },
4693
+ {
4694
+ internalType: "address payable",
4695
+ name: "_swapTarget",
3602
4696
  type: "address"
4697
+ },
4698
+ {
4699
+ internalType: "uint256",
4700
+ name: "_dustThreshold",
4701
+ type: "uint256"
3603
4702
  }
3604
4703
  ],
3605
4704
  stateMutability: "nonpayable",
@@ -3630,38 +4729,19 @@ var abi$3 = [
3630
4729
  name: "Buy",
3631
4730
  type: "event"
3632
4731
  },
3633
- {
3634
- anonymous: false,
3635
- inputs: [
3636
- {
3637
- indexed: true,
3638
- internalType: "address",
3639
- name: "previousOwner",
3640
- type: "address"
3641
- },
3642
- {
3643
- indexed: true,
3644
- internalType: "address",
3645
- name: "newOwner",
3646
- type: "address"
3647
- }
3648
- ],
3649
- name: "OwnershipTransferred",
3650
- type: "event"
3651
- },
3652
4732
  {
3653
4733
  anonymous: false,
3654
4734
  inputs: [
3655
4735
  {
3656
4736
  indexed: false,
3657
4737
  internalType: "uint256",
3658
- name: "count",
4738
+ name: "ethAmount",
3659
4739
  type: "uint256"
3660
4740
  },
3661
4741
  {
3662
4742
  indexed: false,
3663
4743
  internalType: "uint256",
3664
- name: "ethReceived",
4744
+ name: "vTokenAmount",
3665
4745
  type: "uint256"
3666
4746
  },
3667
4747
  {
@@ -3671,119 +4751,90 @@ var abi$3 = [
3671
4751
  type: "address"
3672
4752
  }
3673
4753
  ],
3674
- name: "Sell",
4754
+ name: "DustReturned",
3675
4755
  type: "event"
3676
4756
  },
3677
4757
  {
3678
4758
  anonymous: false,
3679
4759
  inputs: [
3680
4760
  {
3681
- indexed: false,
3682
- internalType: "uint256",
3683
- name: "count",
3684
- type: "uint256"
3685
- },
3686
- {
3687
- indexed: false,
3688
- internalType: "uint256",
3689
- name: "ethSpent",
3690
- type: "uint256"
4761
+ indexed: true,
4762
+ internalType: "address",
4763
+ name: "previousOwner",
4764
+ type: "address"
3691
4765
  },
3692
4766
  {
3693
- indexed: false,
4767
+ indexed: true,
3694
4768
  internalType: "address",
3695
- name: "to",
4769
+ name: "newOwner",
3696
4770
  type: "address"
3697
4771
  }
3698
4772
  ],
3699
- name: "Swap",
4773
+ name: "OwnershipTransferred",
3700
4774
  type: "event"
3701
4775
  },
3702
4776
  {
3703
- inputs: [
3704
- ],
3705
- name: "WETH",
3706
- outputs: [
3707
- {
3708
- internalType: "contract IWETH",
3709
- name: "",
3710
- type: "address"
3711
- }
3712
- ],
3713
- stateMutability: "view",
3714
- type: "function"
3715
- },
3716
- {
4777
+ anonymous: false,
3717
4778
  inputs: [
3718
4779
  {
4780
+ indexed: false,
3719
4781
  internalType: "uint256",
3720
- name: "vaultId",
4782
+ name: "count",
3721
4783
  type: "uint256"
3722
4784
  },
3723
4785
  {
4786
+ indexed: false,
3724
4787
  internalType: "uint256",
3725
- name: "amount",
4788
+ name: "ethReceived",
3726
4789
  type: "uint256"
3727
4790
  },
3728
4791
  {
3729
- internalType: "uint256[]",
3730
- name: "specificIds",
3731
- type: "uint256[]"
3732
- },
3733
- {
3734
- internalType: "address[]",
3735
- name: "path",
3736
- type: "address[]"
3737
- },
3738
- {
4792
+ indexed: false,
3739
4793
  internalType: "address",
3740
4794
  name: "to",
3741
4795
  type: "address"
3742
4796
  }
3743
4797
  ],
3744
- name: "buyAndRedeem",
3745
- outputs: [
3746
- ],
3747
- stateMutability: "payable",
3748
- type: "function"
4798
+ name: "Sell",
4799
+ type: "event"
3749
4800
  },
3750
4801
  {
4802
+ anonymous: false,
3751
4803
  inputs: [
3752
4804
  {
4805
+ indexed: false,
3753
4806
  internalType: "uint256",
3754
- name: "vaultId",
3755
- type: "uint256"
3756
- },
3757
- {
3758
- internalType: "uint256",
3759
- name: "amount",
4807
+ name: "count",
3760
4808
  type: "uint256"
3761
4809
  },
3762
4810
  {
3763
- internalType: "uint256[]",
3764
- name: "specificIds",
3765
- type: "uint256[]"
3766
- },
3767
- {
4811
+ indexed: false,
3768
4812
  internalType: "uint256",
3769
- name: "maxWethIn",
4813
+ name: "ethSpent",
3770
4814
  type: "uint256"
3771
4815
  },
3772
4816
  {
3773
- internalType: "address[]",
3774
- name: "path",
3775
- type: "address[]"
3776
- },
3777
- {
4817
+ indexed: false,
3778
4818
  internalType: "address",
3779
4819
  name: "to",
3780
4820
  type: "address"
3781
4821
  }
3782
4822
  ],
3783
- name: "buyAndRedeemWETH",
4823
+ name: "Swap",
4824
+ type: "event"
4825
+ },
4826
+ {
4827
+ inputs: [
4828
+ ],
4829
+ name: "WETH",
3784
4830
  outputs: [
4831
+ {
4832
+ internalType: "contract IWETH",
4833
+ name: "",
4834
+ type: "address"
4835
+ }
3785
4836
  ],
3786
- stateMutability: "nonpayable",
4837
+ stateMutability: "view",
3787
4838
  type: "function"
3788
4839
  },
3789
4840
  {
@@ -3794,14 +4845,9 @@ var abi$3 = [
3794
4845
  type: "uint256"
3795
4846
  },
3796
4847
  {
3797
- internalType: "uint256[]",
3798
- name: "idsIn",
3799
- type: "uint256[]"
3800
- },
3801
- {
3802
- internalType: "uint256[]",
3803
- name: "amounts",
3804
- type: "uint256[]"
4848
+ internalType: "uint256",
4849
+ name: "amount",
4850
+ type: "uint256"
3805
4851
  },
3806
4852
  {
3807
4853
  internalType: "uint256[]",
@@ -3809,17 +4855,17 @@ var abi$3 = [
3809
4855
  type: "uint256[]"
3810
4856
  },
3811
4857
  {
3812
- internalType: "address[]",
3813
- name: "path",
3814
- type: "address[]"
4858
+ internalType: "bytes",
4859
+ name: "swapCallData",
4860
+ type: "bytes"
3815
4861
  },
3816
4862
  {
3817
- internalType: "address",
4863
+ internalType: "address payable",
3818
4864
  name: "to",
3819
4865
  type: "address"
3820
4866
  }
3821
4867
  ],
3822
- name: "buyAndSwap1155",
4868
+ name: "buyAndRedeem",
3823
4869
  outputs: [
3824
4870
  ],
3825
4871
  stateMutability: "payable",
@@ -3848,22 +4894,17 @@ var abi$3 = [
3848
4894
  type: "uint256[]"
3849
4895
  },
3850
4896
  {
3851
- internalType: "uint256",
3852
- name: "maxWethIn",
3853
- type: "uint256"
3854
- },
3855
- {
3856
- internalType: "address[]",
3857
- name: "path",
3858
- type: "address[]"
4897
+ internalType: "bytes",
4898
+ name: "swapCallData",
4899
+ type: "bytes"
3859
4900
  },
3860
4901
  {
3861
- internalType: "address",
4902
+ internalType: "address payable",
3862
4903
  name: "to",
3863
4904
  type: "address"
3864
4905
  }
3865
4906
  ],
3866
- name: "buyAndSwap1155WETH",
4907
+ name: "buyAndSwap1155",
3867
4908
  outputs: [
3868
4909
  ],
3869
4910
  stateMutability: "payable",
@@ -3887,12 +4928,12 @@ var abi$3 = [
3887
4928
  type: "uint256[]"
3888
4929
  },
3889
4930
  {
3890
- internalType: "address[]",
3891
- name: "path",
3892
- type: "address[]"
4931
+ internalType: "bytes",
4932
+ name: "swapCallData",
4933
+ type: "bytes"
3893
4934
  },
3894
4935
  {
3895
- internalType: "address",
4936
+ internalType: "address payable",
3896
4937
  name: "to",
3897
4938
  type: "address"
3898
4939
  }
@@ -3905,50 +4946,25 @@ var abi$3 = [
3905
4946
  },
3906
4947
  {
3907
4948
  inputs: [
4949
+ ],
4950
+ name: "dustThreshold",
4951
+ outputs: [
3908
4952
  {
3909
4953
  internalType: "uint256",
3910
- name: "vaultId",
3911
- type: "uint256"
3912
- },
3913
- {
3914
- internalType: "uint256[]",
3915
- name: "idsIn",
3916
- type: "uint256[]"
3917
- },
3918
- {
3919
- internalType: "uint256[]",
3920
- name: "specificIds",
3921
- type: "uint256[]"
3922
- },
3923
- {
3924
- internalType: "uint256",
3925
- name: "maxWethIn",
4954
+ name: "",
3926
4955
  type: "uint256"
3927
- },
3928
- {
3929
- internalType: "address[]",
3930
- name: "path",
3931
- type: "address[]"
3932
- },
3933
- {
3934
- internalType: "address",
3935
- name: "to",
3936
- type: "address"
3937
4956
  }
3938
4957
  ],
3939
- name: "buyAndSwap721WETH",
3940
- outputs: [
3941
- ],
3942
- stateMutability: "nonpayable",
4958
+ stateMutability: "view",
3943
4959
  type: "function"
3944
4960
  },
3945
4961
  {
3946
4962
  inputs: [
3947
4963
  ],
3948
- name: "lpStaking",
4964
+ name: "feeDistributor",
3949
4965
  outputs: [
3950
4966
  {
3951
- internalType: "contract INFTXLPStaking",
4967
+ internalType: "address",
3952
4968
  name: "",
3953
4969
  type: "address"
3954
4970
  }
@@ -3974,17 +4990,12 @@ var abi$3 = [
3974
4990
  type: "uint256[]"
3975
4991
  },
3976
4992
  {
3977
- internalType: "uint256",
3978
- name: "minWethOut",
3979
- type: "uint256"
3980
- },
3981
- {
3982
- internalType: "address[]",
3983
- name: "path",
3984
- type: "address[]"
4993
+ internalType: "bytes",
4994
+ name: "swapCallData",
4995
+ type: "bytes"
3985
4996
  },
3986
4997
  {
3987
- internalType: "address",
4998
+ internalType: "address payable",
3988
4999
  name: "to",
3989
5000
  type: "address"
3990
5001
  }
@@ -4008,27 +5019,17 @@ var abi$3 = [
4008
5019
  type: "uint256[]"
4009
5020
  },
4010
5021
  {
4011
- internalType: "uint256[]",
4012
- name: "amounts",
4013
- type: "uint256[]"
4014
- },
4015
- {
4016
- internalType: "uint256",
4017
- name: "minWethOut",
4018
- type: "uint256"
4019
- },
4020
- {
4021
- internalType: "address[]",
4022
- name: "path",
4023
- type: "address[]"
5022
+ internalType: "bytes",
5023
+ name: "swapCallData",
5024
+ type: "bytes"
4024
5025
  },
4025
5026
  {
4026
- internalType: "address",
5027
+ internalType: "address payable",
4027
5028
  name: "to",
4028
5029
  type: "address"
4029
5030
  }
4030
5031
  ],
4031
- name: "mintAndSell1155WETH",
5032
+ name: "mintAndSell721",
4032
5033
  outputs: [
4033
5034
  ],
4034
5035
  stateMutability: "nonpayable",
@@ -4036,79 +5037,30 @@ var abi$3 = [
4036
5037
  },
4037
5038
  {
4038
5039
  inputs: [
5040
+ ],
5041
+ name: "nftxFactory",
5042
+ outputs: [
4039
5043
  {
4040
- internalType: "uint256",
4041
- name: "vaultId",
4042
- type: "uint256"
4043
- },
4044
- {
4045
- internalType: "uint256[]",
4046
- name: "ids",
4047
- type: "uint256[]"
4048
- },
4049
- {
4050
- internalType: "uint256",
4051
- name: "minEthOut",
4052
- type: "uint256"
4053
- },
4054
- {
4055
- internalType: "address[]",
4056
- name: "path",
4057
- type: "address[]"
4058
- },
4059
- {
4060
- internalType: "address",
4061
- name: "to",
5044
+ internalType: "contract INFTXVaultFactory",
5045
+ name: "",
4062
5046
  type: "address"
4063
5047
  }
4064
5048
  ],
4065
- name: "mintAndSell721",
4066
- outputs: [
4067
- ],
4068
- stateMutability: "nonpayable",
5049
+ stateMutability: "view",
4069
5050
  type: "function"
4070
5051
  },
4071
5052
  {
4072
5053
  inputs: [
4073
5054
  {
4074
5055
  internalType: "uint256",
4075
- name: "vaultId",
4076
- type: "uint256"
4077
- },
4078
- {
4079
- internalType: "uint256[]",
4080
- name: "ids",
4081
- type: "uint256[]"
4082
- },
4083
- {
4084
- internalType: "uint256",
4085
- name: "minWethOut",
5056
+ name: "",
4086
5057
  type: "uint256"
4087
- },
4088
- {
4089
- internalType: "address[]",
4090
- name: "path",
4091
- type: "address[]"
4092
- },
4093
- {
4094
- internalType: "address",
4095
- name: "to",
4096
- type: "address"
4097
5058
  }
4098
5059
  ],
4099
- name: "mintAndSell721WETH",
4100
- outputs: [
4101
- ],
4102
- stateMutability: "nonpayable",
4103
- type: "function"
4104
- },
4105
- {
4106
- inputs: [
4107
- ],
4108
- name: "nftxFactory",
5060
+ name: "nftxVaultAddresses",
4109
5061
  outputs: [
4110
5062
  {
4111
- internalType: "contract INFTXVaultFactory",
5063
+ internalType: "address",
4112
5064
  name: "",
4113
5065
  type: "address"
4114
5066
  }
@@ -4242,6 +5194,34 @@ var abi$3 = [
4242
5194
  stateMutability: "view",
4243
5195
  type: "function"
4244
5196
  },
5197
+ {
5198
+ inputs: [
5199
+ {
5200
+ internalType: "bool",
5201
+ name: "_paused",
5202
+ type: "bool"
5203
+ }
5204
+ ],
5205
+ name: "pause",
5206
+ outputs: [
5207
+ ],
5208
+ stateMutability: "nonpayable",
5209
+ type: "function"
5210
+ },
5211
+ {
5212
+ inputs: [
5213
+ ],
5214
+ name: "paused",
5215
+ outputs: [
5216
+ {
5217
+ internalType: "bool",
5218
+ name: "",
5219
+ type: "bool"
5220
+ }
5221
+ ],
5222
+ stateMutability: "view",
5223
+ type: "function"
5224
+ },
4245
5225
  {
4246
5226
  inputs: [
4247
5227
  ],
@@ -4268,31 +5248,31 @@ var abi$3 = [
4268
5248
  {
4269
5249
  inputs: [
4270
5250
  {
4271
- internalType: "bytes4",
4272
- name: "interfaceId",
4273
- type: "bytes4"
5251
+ internalType: "uint256",
5252
+ name: "_dustThreshold",
5253
+ type: "uint256"
4274
5254
  }
4275
5255
  ],
4276
- name: "supportsInterface",
5256
+ name: "setDustThreshold",
4277
5257
  outputs: [
4278
- {
4279
- internalType: "bool",
4280
- name: "",
4281
- type: "bool"
4282
- }
4283
5258
  ],
4284
- stateMutability: "view",
5259
+ stateMutability: "nonpayable",
4285
5260
  type: "function"
4286
5261
  },
4287
5262
  {
4288
5263
  inputs: [
5264
+ {
5265
+ internalType: "bytes4",
5266
+ name: "interfaceId",
5267
+ type: "bytes4"
5268
+ }
4289
5269
  ],
4290
- name: "sushiRouter",
5270
+ name: "supportsInterface",
4291
5271
  outputs: [
4292
5272
  {
4293
- internalType: "contract IUniswapV2Router01",
5273
+ internalType: "bool",
4294
5274
  name: "",
4295
- type: "address"
5275
+ type: "bool"
4296
5276
  }
4297
5277
  ],
4298
5278
  stateMutability: "view",
@@ -4327,7 +5307,7 @@ var NFTXTrade = /*#__PURE__*/function (_NFTTrade) {
4327
5307
  _proto.encode = function encode(planner, config) {
4328
5308
  for (var _iterator = _createForOfIteratorHelperLoose(this.orders), _step; !(_step = _iterator()).done;) {
4329
5309
  var order = _step.value;
4330
- var calldata = NFTXTrade.INTERFACE.encodeFunctionData('buyAndRedeem', [order.vaultId, order.tokenIds.length, order.tokenIds, [Ether.onChain(1).wrapped.address, order.vaultAddress], order.recipient]);
5310
+ var calldata = NFTXTrade.INTERFACE.encodeFunctionData('buyAndRedeem', [order.vaultId, order.tokenIds.length, order.tokenIds, order.swapCalldata, order.recipient]);
4331
5311
  planner.addCommand(CommandType.NFTX, [order.value, calldata], config.allowRevert);
4332
5312
  }
4333
5313
  };
@@ -6985,11 +7965,6 @@ var abi$4 = [
6985
7965
  }
6986
7966
  ];
6987
7967
 
6988
- var SeaportVersion;
6989
- (function (SeaportVersion) {
6990
- SeaportVersion[SeaportVersion["V1_1"] = 0] = "V1_1";
6991
- SeaportVersion[SeaportVersion["V1_4"] = 1] = "V1_4";
6992
- })(SeaportVersion || (SeaportVersion = {}));
6993
7968
  var SeaportTrade = /*#__PURE__*/function (_NFTTrade) {
6994
7969
  _inheritsLoose(SeaportTrade, _NFTTrade);
6995
7970
  function SeaportTrade(orders) {
@@ -7019,17 +7994,33 @@ var SeaportTrade = /*#__PURE__*/function (_NFTTrade) {
7019
7994
  } else {
7020
7995
  calldata = SeaportTrade.INTERFACE.encodeFunctionData('fulfillAvailableAdvancedOrders', [advancedOrders, [], orderFulfillments, considerationFulFillments, SeaportTrade.OPENSEA_CONDUIT_KEY, order.recipient, 100]);
7021
7996
  }
7022
- planner.addCommand(this.commandMap(order.version), [this.getTotalOrderPrice(order).toString(), calldata], config.allowRevert);
7997
+ if (!!order.inputTokenProcessing) {
7998
+ for (var _iterator3 = _createForOfIteratorHelperLoose(order.inputTokenProcessing), _step3; !(_step3 = _iterator3()).done;) {
7999
+ var inputToken = _step3.value;
8000
+ encodeInputTokenOptions(planner, {
8001
+ approval: inputToken.protocolApproval ? {
8002
+ token: inputToken.token,
8003
+ protocol: order.protocolAddress
8004
+ } : undefined,
8005
+ permit2Permit: inputToken.permit2Permit,
8006
+ permit2TransferFrom: inputToken.permit2TransferFrom ? {
8007
+ token: inputToken.token,
8008
+ amount: this.getTotalOrderPrice(order, inputToken.token).toString()
8009
+ } : undefined
8010
+ });
8011
+ }
8012
+ }
8013
+ planner.addCommand(this.commandMap(order.protocolAddress), [this.getTotalOrderPrice(order, ETH_ADDRESS).toString(), calldata], config.allowRevert);
7023
8014
  }
7024
8015
  };
7025
8016
  _proto.getBuyItems = function getBuyItems() {
7026
8017
  var buyItems = [];
7027
- for (var _iterator3 = _createForOfIteratorHelperLoose(this.orders), _step3; !(_step3 = _iterator3()).done;) {
7028
- var order = _step3.value;
7029
- for (var _iterator4 = _createForOfIteratorHelperLoose(order.items), _step4; !(_step4 = _iterator4()).done;) {
7030
- var item = _step4.value;
7031
- for (var _iterator5 = _createForOfIteratorHelperLoose(item.parameters.offer), _step5; !(_step5 = _iterator5()).done;) {
7032
- var offer = _step5.value;
8018
+ for (var _iterator4 = _createForOfIteratorHelperLoose(this.orders), _step4; !(_step4 = _iterator4()).done;) {
8019
+ var order = _step4.value;
8020
+ for (var _iterator5 = _createForOfIteratorHelperLoose(order.items), _step5; !(_step5 = _iterator5()).done;) {
8021
+ var item = _step5.value;
8022
+ for (var _iterator6 = _createForOfIteratorHelperLoose(item.parameters.offer), _step6; !(_step6 = _iterator6()).done;) {
8023
+ var offer = _step6.value;
7033
8024
  buyItems.push({
7034
8025
  tokenAddress: offer.token,
7035
8026
  tokenId: offer.identifierOrCriteria,
@@ -7040,31 +8031,41 @@ var SeaportTrade = /*#__PURE__*/function (_NFTTrade) {
7040
8031
  }
7041
8032
  return buyItems;
7042
8033
  };
7043
- _proto.getTotalOrderPrice = function getTotalOrderPrice(order) {
8034
+ _proto.getTotalOrderPrice = function getTotalOrderPrice(order, token) {
8035
+ if (token === void 0) {
8036
+ token = ETH_ADDRESS;
8037
+ }
7044
8038
  var totalOrderPrice = BigNumber.from(0);
7045
- for (var _iterator6 = _createForOfIteratorHelperLoose(order.items), _step6; !(_step6 = _iterator6()).done;) {
7046
- var item = _step6.value;
7047
- totalOrderPrice = totalOrderPrice.add(this.calculateValue(item.parameters.consideration));
8039
+ for (var _iterator7 = _createForOfIteratorHelperLoose(order.items), _step7; !(_step7 = _iterator7()).done;) {
8040
+ var item = _step7.value;
8041
+ totalOrderPrice = totalOrderPrice.add(this.calculateValue(item.parameters.consideration, token));
7048
8042
  }
7049
8043
  return totalOrderPrice;
7050
8044
  };
7051
- _proto.getTotalPrice = function getTotalPrice() {
8045
+ _proto.getTotalPrice = function getTotalPrice(token) {
8046
+ if (token === void 0) {
8047
+ token = ETH_ADDRESS;
8048
+ }
7052
8049
  var totalPrice = BigNumber.from(0);
7053
- for (var _iterator7 = _createForOfIteratorHelperLoose(this.orders), _step7; !(_step7 = _iterator7()).done;) {
7054
- var order = _step7.value;
7055
- for (var _iterator8 = _createForOfIteratorHelperLoose(order.items), _step8; !(_step8 = _iterator8()).done;) {
7056
- var item = _step8.value;
7057
- totalPrice = totalPrice.add(this.calculateValue(item.parameters.consideration));
8050
+ for (var _iterator8 = _createForOfIteratorHelperLoose(this.orders), _step8; !(_step8 = _iterator8()).done;) {
8051
+ var order = _step8.value;
8052
+ for (var _iterator9 = _createForOfIteratorHelperLoose(order.items), _step9; !(_step9 = _iterator9()).done;) {
8053
+ var item = _step9.value;
8054
+ totalPrice = totalPrice.add(this.calculateValue(item.parameters.consideration, token));
7058
8055
  }
7059
8056
  }
7060
8057
  return totalPrice;
7061
8058
  };
7062
- _proto.commandMap = function commandMap(version) {
7063
- switch (version) {
7064
- case SeaportVersion.V1_1:
8059
+ _proto.commandMap = function commandMap(protocolAddress) {
8060
+ switch (protocolAddress.toLowerCase()) {
8061
+ case '0x00000000006c3852cbef3e08e8df289169ede581':
8062
+ // Seaport v1.1
7065
8063
  return CommandType.SEAPORT;
7066
- case SeaportVersion.V1_4:
8064
+ case '0x00000000000001ad428e4906ae43d8f9852d0dd6':
8065
+ // Seaport v1.4
7067
8066
  return CommandType.SEAPORT_V1_4;
8067
+ default:
8068
+ throw new Error('unsupported Seaport address');
7068
8069
  }
7069
8070
  };
7070
8071
  _proto.getConsiderationFulfillments = function getConsiderationFulfillments(protocolDatas) {
@@ -7108,15 +8109,13 @@ var SeaportTrade = /*#__PURE__*/function (_NFTTrade) {
7108
8109
  signature: data.signature,
7109
8110
  extraData: '0x00'
7110
8111
  };
7111
- var value = this.calculateValue(data.parameters.consideration);
7112
8112
  return {
7113
- advancedOrder: advancedOrder,
7114
- value: value
8113
+ advancedOrder: advancedOrder
7115
8114
  };
7116
8115
  };
7117
- _proto.calculateValue = function calculateValue(considerations) {
8116
+ _proto.calculateValue = function calculateValue(considerations, token) {
7118
8117
  return considerations.reduce(function (amt, consideration) {
7119
- return amt.add(consideration.startAmount);
8118
+ return consideration.token == token ? amt.add(consideration.startAmount) : amt;
7120
8119
  }, BigNumber.from(0));
7121
8120
  };
7122
8121
  return SeaportTrade;
@@ -9442,7 +10441,6 @@ var UnwrapWETH = /*#__PURE__*/function () {
9442
10441
  function UnwrapWETH(amount, chainId, permit2) {
9443
10442
  this.tradeType = RouterTradeType.UnwrapWETH;
9444
10443
  this.wethAddress = WETH_ADDRESS(chainId);
9445
- this.routerAddress = UNIVERSAL_ROUTER_ADDRESS(chainId);
9446
10444
  this.amount = amount;
9447
10445
  if (!!permit2) {
9448
10446
  !(permit2.details.token === this.wethAddress) ? process.env.NODE_ENV !== "production" ? invariant(false, "must be permitting WETH address: " + this.wethAddress) : invariant(false) : void 0;
@@ -9452,12 +10450,17 @@ var UnwrapWETH = /*#__PURE__*/function () {
9452
10450
  }
9453
10451
  var _proto = UnwrapWETH.prototype;
9454
10452
  _proto.encode = function encode(planner, _) {
9455
- if (!!this.permit2Data) encodePermit(planner, this.permit2Data);
9456
- planner.addCommand(CommandType.PERMIT2_TRANSFER_FROM, [this.wethAddress, this.routerAddress, this.amount]);
10453
+ encodeInputTokenOptions(planner, {
10454
+ permit2Permit: this.permit2Data,
10455
+ permit2TransferFrom: {
10456
+ token: this.wethAddress,
10457
+ amount: this.amount.toString()
10458
+ }
10459
+ });
9457
10460
  planner.addCommand(CommandType.UNWRAP_WETH, [ROUTER_AS_RECIPIENT, this.amount]);
9458
10461
  };
9459
10462
  return UnwrapWETH;
9460
10463
  }();
9461
10464
 
9462
- export { CryptopunkTrade, FoundationTrade, LooksRareTrade, Market, NFT20Trade, NFTTrade, NFTXTrade, PERMIT2_ADDRESS, ROUTER_AS_RECIPIENT, RouterTradeType, SeaportTrade, SeaportVersion, SudoswapTrade, SwapRouter, TokenType, UNIVERSAL_ROUTER_ADDRESS, UniswapTrade, UnwrapWETH, WETH_ADDRESS, X2Y2Trade };
10465
+ export { CryptopunkTrade, FoundationTrade, LooksRareV2Trade, Market, NFT20Trade, NFTTrade, NFTXTrade, PERMIT2_ADDRESS, ROUTER_AS_RECIPIENT, RouterTradeType, SeaportTrade, SudoswapTrade, SwapRouter, TokenType, UNIVERSAL_ROUTER_ADDRESS, UniswapTrade, UnwrapWETH, WETH_ADDRESS, X2Y2Trade };
9463
10466
  //# sourceMappingURL=universal-router-sdk.esm.js.map