@opensea/seaport-js 4.1.0 → 4.1.2
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.
- package/README.md +1 -1
- package/lib/package.json +3 -0
- package/lib/seaport.d.ts +54 -11
- package/lib/seaport.js +56 -10
- package/lib/seaport.js.map +1 -1
- package/lib/types.d.ts +7 -0
- package/package.json +3 -3
- package/src/seaport.ts +105 -10
- package/src/types.ts +8 -0
package/README.md
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
# Seaport.js
|
|
14
14
|
|
|
15
|
-
[Seaport][seaport-link] is a
|
|
15
|
+
[Seaport][seaport-link] is a marketplace protocol for safely and efficiently buying and selling NFTs. This is a TypeScript library intended to make interfacing with the contract reasonable and easy.
|
|
16
16
|
|
|
17
17
|
- [Synopsis](#synopsis)
|
|
18
18
|
- [Installation](#installation)
|
package/lib/package.json
ADDED
package/lib/seaport.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type BigNumberish, type JsonRpcProvider, type Overrides, type Signer } from "ethers";
|
|
2
2
|
import { type DomainRegistry } from "./typechain-types/index";
|
|
3
|
-
import type { CreateBulkOrdersAction, CreateOrderAction, CreateOrderInput, ExchangeAction, InputCriteria, MatchOrdersFulfillment, Order, OrderComponents, OrderStatus, OrderUseCase, OrderWithCounter, SeaportConfig, SeaportContract, TipInputItem } from "./types";
|
|
3
|
+
import type { AdvancedOrder, CreateBulkOrdersAction, CreateOrderAction, CreateOrderInput, CriteriaResolver, ExchangeAction, InputCriteria, MatchOrdersFulfillment, Order, OrderComponents, OrderStatus, OrderUseCase, OrderWithCounter, SeaportConfig, SeaportContract, TipInputItem } from "./types";
|
|
4
4
|
import { type ContractMethodReturnType, type TransactionMethods } from "./utils/usecase";
|
|
5
5
|
export declare class Seaport {
|
|
6
6
|
contract: SeaportContract;
|
|
@@ -209,16 +209,21 @@ export declare class Seaport {
|
|
|
209
209
|
exactApproval?: boolean;
|
|
210
210
|
}): Promise<OrderUseCase<ExchangeAction<never>>>;
|
|
211
211
|
/**
|
|
212
|
-
*
|
|
213
|
-
*
|
|
214
|
-
*
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
*
|
|
218
|
-
*
|
|
219
|
-
*
|
|
220
|
-
* @param input.
|
|
221
|
-
* @
|
|
212
|
+
* Matches a set of orders against each other so that the total offer amounts
|
|
213
|
+
* satisfy the total consideration amounts across all matched fulfillments.
|
|
214
|
+
*
|
|
215
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
216
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
217
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
218
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
219
|
+
*
|
|
220
|
+
* @param input.orders The list of orders to match.
|
|
221
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
222
|
+
* components across the provided orders.
|
|
223
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
224
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
225
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
226
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
222
227
|
*/
|
|
223
228
|
matchOrders({ orders, fulfillments, overrides, accountAddress, domain, }: {
|
|
224
229
|
orders: (OrderWithCounter | Order)[];
|
|
@@ -227,6 +232,38 @@ export declare class Seaport {
|
|
|
227
232
|
accountAddress?: string;
|
|
228
233
|
domain?: string;
|
|
229
234
|
}): TransactionMethods<ContractMethodReturnType<SeaportContract, "matchOrders">>;
|
|
235
|
+
/**
|
|
236
|
+
* Matches a set of advanced orders against each other, supporting partial fills
|
|
237
|
+
* (numerator/denominator), criteria resolvers, extra data, and an explicit recipient
|
|
238
|
+
* for any unspent offer amounts or native tokens.
|
|
239
|
+
*
|
|
240
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
241
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
242
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
243
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
244
|
+
*
|
|
245
|
+
* @param input.orders The list of advanced orders to match. Each order includes
|
|
246
|
+
* numerator/denominator for partial fill amounts and extraData for zone validation.
|
|
247
|
+
* @param input.criteriaResolvers Resolvers for criteria-based items (e.g. collection offers),
|
|
248
|
+
* mapping criteria to specific token identifiers with merkle proofs.
|
|
249
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
250
|
+
* components across the provided orders.
|
|
251
|
+
* @param input.recipient The address to receive any unspent offer item amounts or
|
|
252
|
+
* native tokens remaining after all fulfillments are applied.
|
|
253
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
254
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
255
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
256
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
257
|
+
*/
|
|
258
|
+
matchAdvancedOrders({ orders, criteriaResolvers, fulfillments, recipient, overrides, accountAddress, domain, }: {
|
|
259
|
+
orders: AdvancedOrder[];
|
|
260
|
+
criteriaResolvers: CriteriaResolver[];
|
|
261
|
+
fulfillments: MatchOrdersFulfillment[];
|
|
262
|
+
recipient: string;
|
|
263
|
+
overrides?: Overrides;
|
|
264
|
+
accountAddress?: string;
|
|
265
|
+
domain?: string;
|
|
266
|
+
}): TransactionMethods<ContractMethodReturnType<SeaportContract, "matchAdvancedOrders">>;
|
|
230
267
|
/**
|
|
231
268
|
* Set a domain on the canonical domain registry.
|
|
232
269
|
* @param domain The domain to set
|
|
@@ -254,4 +291,10 @@ export declare class Seaport {
|
|
|
254
291
|
* @returns The domains registered under the tag.
|
|
255
292
|
*/
|
|
256
293
|
getDomains(tag: string): Promise<string[]>;
|
|
294
|
+
/**
|
|
295
|
+
* Validates that `overrides.value` is provided when any of the matched orders
|
|
296
|
+
* involve native ETH. Forgetting to set `value` is a common mistake that
|
|
297
|
+
* results in an opaque revert from the Seaport contract.
|
|
298
|
+
*/
|
|
299
|
+
private _validateMatchOrdersNativeValue;
|
|
257
300
|
}
|
package/lib/seaport.js
CHANGED
|
@@ -641,20 +641,53 @@ class Seaport {
|
|
|
641
641
|
});
|
|
642
642
|
}
|
|
643
643
|
/**
|
|
644
|
-
*
|
|
645
|
-
*
|
|
646
|
-
*
|
|
647
|
-
*
|
|
648
|
-
*
|
|
649
|
-
*
|
|
650
|
-
*
|
|
651
|
-
*
|
|
652
|
-
* @param input.
|
|
653
|
-
* @
|
|
644
|
+
* Matches a set of orders against each other so that the total offer amounts
|
|
645
|
+
* satisfy the total consideration amounts across all matched fulfillments.
|
|
646
|
+
*
|
|
647
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
648
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
649
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
650
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
651
|
+
*
|
|
652
|
+
* @param input.orders The list of orders to match.
|
|
653
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
654
|
+
* components across the provided orders.
|
|
655
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
656
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
657
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
658
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
654
659
|
*/
|
|
655
660
|
matchOrders({ orders, fulfillments, overrides, accountAddress, domain, }) {
|
|
661
|
+
this._validateMatchOrdersNativeValue(orders.map(o => o.parameters), overrides);
|
|
656
662
|
return (0, usecase_1.getTransactionMethods)(this._getSigner(accountAddress), this.contract, "matchOrders", [orders, fulfillments, overrides], domain);
|
|
657
663
|
}
|
|
664
|
+
/**
|
|
665
|
+
* Matches a set of advanced orders against each other, supporting partial fills
|
|
666
|
+
* (numerator/denominator), criteria resolvers, extra data, and an explicit recipient
|
|
667
|
+
* for any unspent offer amounts or native tokens.
|
|
668
|
+
*
|
|
669
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
670
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
671
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
672
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
673
|
+
*
|
|
674
|
+
* @param input.orders The list of advanced orders to match. Each order includes
|
|
675
|
+
* numerator/denominator for partial fill amounts and extraData for zone validation.
|
|
676
|
+
* @param input.criteriaResolvers Resolvers for criteria-based items (e.g. collection offers),
|
|
677
|
+
* mapping criteria to specific token identifiers with merkle proofs.
|
|
678
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
679
|
+
* components across the provided orders.
|
|
680
|
+
* @param input.recipient The address to receive any unspent offer item amounts or
|
|
681
|
+
* native tokens remaining after all fulfillments are applied.
|
|
682
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
683
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
684
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
685
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
686
|
+
*/
|
|
687
|
+
matchAdvancedOrders({ orders, criteriaResolvers, fulfillments, recipient, overrides, accountAddress, domain, }) {
|
|
688
|
+
this._validateMatchOrdersNativeValue(orders.map(o => o.parameters), overrides);
|
|
689
|
+
return (0, usecase_1.getTransactionMethods)(this._getSigner(accountAddress), this.contract, "matchAdvancedOrders", [orders, criteriaResolvers, fulfillments, recipient, overrides], domain);
|
|
690
|
+
}
|
|
658
691
|
/**
|
|
659
692
|
* Set a domain on the canonical domain registry.
|
|
660
693
|
* @param domain The domain to set
|
|
@@ -699,6 +732,19 @@ class Seaport {
|
|
|
699
732
|
return await domainArray;
|
|
700
733
|
}
|
|
701
734
|
}
|
|
735
|
+
/**
|
|
736
|
+
* Validates that `overrides.value` is provided when any of the matched orders
|
|
737
|
+
* involve native ETH. Forgetting to set `value` is a common mistake that
|
|
738
|
+
* results in an opaque revert from the Seaport contract.
|
|
739
|
+
*/
|
|
740
|
+
_validateMatchOrdersNativeValue(orderParams, overrides) {
|
|
741
|
+
const hasNativeToken = orderParams.some(params => params.offer.some(item => item.itemType === constants_1.ItemType.NATIVE) ||
|
|
742
|
+
params.consideration.some(item => item.itemType === constants_1.ItemType.NATIVE));
|
|
743
|
+
if (hasNativeToken && !overrides?.value) {
|
|
744
|
+
throw new Error("Orders contain native ETH items but no `value` was provided in overrides. " +
|
|
745
|
+
"Pass the required ETH amount via `overrides: { value }` to avoid a revert.");
|
|
746
|
+
}
|
|
747
|
+
}
|
|
702
748
|
}
|
|
703
749
|
exports.Seaport = Seaport;
|
|
704
750
|
//# sourceMappingURL=seaport.js.map
|
package/lib/seaport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seaport.js","sourceRoot":"","sources":["../src/seaport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seaport.js","sourceRoot":"","sources":["../src/seaport.ts"],"names":[],"mappings":"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"}
|
package/lib/types.d.ts
CHANGED
|
@@ -182,6 +182,13 @@ export type Fulfillment = {
|
|
|
182
182
|
offerComponents: FulfillmentComponent[];
|
|
183
183
|
considerationComponents: FulfillmentComponent[];
|
|
184
184
|
};
|
|
185
|
+
export type CriteriaResolver = {
|
|
186
|
+
orderIndex: number;
|
|
187
|
+
side: number;
|
|
188
|
+
index: number;
|
|
189
|
+
identifier: BigNumberish;
|
|
190
|
+
criteriaProof: string[];
|
|
191
|
+
};
|
|
185
192
|
type MatchOrdersFulfillmentComponent = {
|
|
186
193
|
orderIndex: number;
|
|
187
194
|
itemIndex: number;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensea/seaport-js",
|
|
3
|
-
"version": "4.1.
|
|
4
|
-
"description": "[Seaport](https://github.com/ProjectOpenSea/seaport) is a
|
|
3
|
+
"version": "4.1.2",
|
|
4
|
+
"description": "[Seaport](https://github.com/ProjectOpenSea/seaport) is a marketplace protocol for safely and efficiently buying and selling NFTs. This is a TypeScript library intended to make interfacing with the contract reasonable and easy.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "OpenSea Developers",
|
|
7
7
|
"homepage": "https://github.com/ProjectOpenSea/seaport-js#readme",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"src"
|
|
20
20
|
],
|
|
21
21
|
"scripts": {
|
|
22
|
-
"build": "hardhat build && tsc -p tsconfig.build.json",
|
|
22
|
+
"build": "hardhat build && tsc -p tsconfig.build.json && node scripts/postbuild.mjs",
|
|
23
23
|
"check-types": "tsc --noEmit",
|
|
24
24
|
"check-types:incremental": "npm run check-types --incremental",
|
|
25
25
|
"coverage": "c8 npm run test",
|
package/src/seaport.ts
CHANGED
|
@@ -12,6 +12,7 @@ import {
|
|
|
12
12
|
CROSS_CHAIN_SEAPORT_V1_6_ADDRESS,
|
|
13
13
|
DOMAIN_REGISTRY_ADDRESS,
|
|
14
14
|
EIP_712_ORDER_TYPE,
|
|
15
|
+
ItemType,
|
|
15
16
|
KNOWN_CONDUIT_KEYS_TO_CONDUIT,
|
|
16
17
|
MAX_INT,
|
|
17
18
|
NO_CONDUIT,
|
|
@@ -26,10 +27,12 @@ import {
|
|
|
26
27
|
Seaport__factory,
|
|
27
28
|
} from "./typechain-types/index"
|
|
28
29
|
import type {
|
|
30
|
+
AdvancedOrder,
|
|
29
31
|
ApprovalAction,
|
|
30
32
|
CreateBulkOrdersAction,
|
|
31
33
|
CreateOrderAction,
|
|
32
34
|
CreateOrderInput,
|
|
35
|
+
CriteriaResolver,
|
|
33
36
|
ExchangeAction,
|
|
34
37
|
InputCriteria,
|
|
35
38
|
MatchOrdersFulfillment,
|
|
@@ -1065,16 +1068,21 @@ export class Seaport {
|
|
|
1065
1068
|
}
|
|
1066
1069
|
|
|
1067
1070
|
/**
|
|
1068
|
-
*
|
|
1069
|
-
*
|
|
1070
|
-
*
|
|
1071
|
-
*
|
|
1072
|
-
*
|
|
1073
|
-
*
|
|
1074
|
-
*
|
|
1075
|
-
*
|
|
1076
|
-
* @param input.
|
|
1077
|
-
* @
|
|
1071
|
+
* Matches a set of orders against each other so that the total offer amounts
|
|
1072
|
+
* satisfy the total consideration amounts across all matched fulfillments.
|
|
1073
|
+
*
|
|
1074
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
1075
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
1076
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
1077
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
1078
|
+
*
|
|
1079
|
+
* @param input.orders The list of orders to match.
|
|
1080
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
1081
|
+
* components across the provided orders.
|
|
1082
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
1083
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
1084
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
1085
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
1078
1086
|
*/
|
|
1079
1087
|
public matchOrders({
|
|
1080
1088
|
orders,
|
|
@@ -1091,6 +1099,11 @@ export class Seaport {
|
|
|
1091
1099
|
}): TransactionMethods<
|
|
1092
1100
|
ContractMethodReturnType<SeaportContract, "matchOrders">
|
|
1093
1101
|
> {
|
|
1102
|
+
this._validateMatchOrdersNativeValue(
|
|
1103
|
+
orders.map(o => o.parameters),
|
|
1104
|
+
overrides,
|
|
1105
|
+
)
|
|
1106
|
+
|
|
1094
1107
|
return getTransactionMethods(
|
|
1095
1108
|
this._getSigner(accountAddress),
|
|
1096
1109
|
this.contract,
|
|
@@ -1100,6 +1113,62 @@ export class Seaport {
|
|
|
1100
1113
|
)
|
|
1101
1114
|
}
|
|
1102
1115
|
|
|
1116
|
+
/**
|
|
1117
|
+
* Matches a set of advanced orders against each other, supporting partial fills
|
|
1118
|
+
* (numerator/denominator), criteria resolvers, extra data, and an explicit recipient
|
|
1119
|
+
* for any unspent offer amounts or native tokens.
|
|
1120
|
+
*
|
|
1121
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
1122
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
1123
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
1124
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
1125
|
+
*
|
|
1126
|
+
* @param input.orders The list of advanced orders to match. Each order includes
|
|
1127
|
+
* numerator/denominator for partial fill amounts and extraData for zone validation.
|
|
1128
|
+
* @param input.criteriaResolvers Resolvers for criteria-based items (e.g. collection offers),
|
|
1129
|
+
* mapping criteria to specific token identifiers with merkle proofs.
|
|
1130
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
1131
|
+
* components across the provided orders.
|
|
1132
|
+
* @param input.recipient The address to receive any unspent offer item amounts or
|
|
1133
|
+
* native tokens remaining after all fulfillments are applied.
|
|
1134
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
1135
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
1136
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
1137
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
1138
|
+
*/
|
|
1139
|
+
public matchAdvancedOrders({
|
|
1140
|
+
orders,
|
|
1141
|
+
criteriaResolvers,
|
|
1142
|
+
fulfillments,
|
|
1143
|
+
recipient,
|
|
1144
|
+
overrides,
|
|
1145
|
+
accountAddress,
|
|
1146
|
+
domain,
|
|
1147
|
+
}: {
|
|
1148
|
+
orders: AdvancedOrder[]
|
|
1149
|
+
criteriaResolvers: CriteriaResolver[]
|
|
1150
|
+
fulfillments: MatchOrdersFulfillment[]
|
|
1151
|
+
recipient: string
|
|
1152
|
+
overrides?: Overrides
|
|
1153
|
+
accountAddress?: string
|
|
1154
|
+
domain?: string
|
|
1155
|
+
}): TransactionMethods<
|
|
1156
|
+
ContractMethodReturnType<SeaportContract, "matchAdvancedOrders">
|
|
1157
|
+
> {
|
|
1158
|
+
this._validateMatchOrdersNativeValue(
|
|
1159
|
+
orders.map(o => o.parameters),
|
|
1160
|
+
overrides,
|
|
1161
|
+
)
|
|
1162
|
+
|
|
1163
|
+
return getTransactionMethods(
|
|
1164
|
+
this._getSigner(accountAddress),
|
|
1165
|
+
this.contract,
|
|
1166
|
+
"matchAdvancedOrders",
|
|
1167
|
+
[orders, criteriaResolvers, fulfillments, recipient, overrides],
|
|
1168
|
+
domain,
|
|
1169
|
+
)
|
|
1170
|
+
}
|
|
1171
|
+
|
|
1103
1172
|
/**
|
|
1104
1173
|
* Set a domain on the canonical domain registry.
|
|
1105
1174
|
* @param domain The domain to set
|
|
@@ -1161,4 +1230,30 @@ export class Seaport {
|
|
|
1161
1230
|
return await domainArray
|
|
1162
1231
|
}
|
|
1163
1232
|
}
|
|
1233
|
+
|
|
1234
|
+
/**
|
|
1235
|
+
* Validates that `overrides.value` is provided when any of the matched orders
|
|
1236
|
+
* involve native ETH. Forgetting to set `value` is a common mistake that
|
|
1237
|
+
* results in an opaque revert from the Seaport contract.
|
|
1238
|
+
*/
|
|
1239
|
+
private _validateMatchOrdersNativeValue(
|
|
1240
|
+
orderParams: {
|
|
1241
|
+
offer: { itemType: ItemType }[]
|
|
1242
|
+
consideration: { itemType: ItemType }[]
|
|
1243
|
+
}[],
|
|
1244
|
+
overrides?: Overrides,
|
|
1245
|
+
) {
|
|
1246
|
+
const hasNativeToken = orderParams.some(
|
|
1247
|
+
params =>
|
|
1248
|
+
params.offer.some(item => item.itemType === ItemType.NATIVE) ||
|
|
1249
|
+
params.consideration.some(item => item.itemType === ItemType.NATIVE),
|
|
1250
|
+
)
|
|
1251
|
+
|
|
1252
|
+
if (hasNativeToken && !overrides?.value) {
|
|
1253
|
+
throw new Error(
|
|
1254
|
+
"Orders contain native ETH items but no `value` was provided in overrides. " +
|
|
1255
|
+
"Pass the required ETH amount via `overrides: { value }` to avoid a revert.",
|
|
1256
|
+
)
|
|
1257
|
+
}
|
|
1258
|
+
}
|
|
1164
1259
|
}
|
package/src/types.ts
CHANGED
|
@@ -229,6 +229,14 @@ export type Fulfillment = {
|
|
|
229
229
|
considerationComponents: FulfillmentComponent[]
|
|
230
230
|
}
|
|
231
231
|
|
|
232
|
+
export type CriteriaResolver = {
|
|
233
|
+
orderIndex: number
|
|
234
|
+
side: number
|
|
235
|
+
index: number
|
|
236
|
+
identifier: BigNumberish
|
|
237
|
+
criteriaProof: string[]
|
|
238
|
+
}
|
|
239
|
+
|
|
232
240
|
type MatchOrdersFulfillmentComponent = {
|
|
233
241
|
orderIndex: number
|
|
234
242
|
itemIndex: number
|