@opensea/seaport-js 4.1.1 → 4.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/seaport.d.ts +45 -23
- package/lib/seaport.js +54 -23
- package/lib/seaport.js.map +1 -1
- package/lib/typechain-types/index.d.ts +6 -6
- package/lib/typechain-types/index.js +7 -7
- package/lib/typechain-types/index.js.map +1 -1
- package/lib/utils/fulfill.d.ts +2 -1
- package/lib/utils/fulfill.js +2 -2
- package/lib/utils/fulfill.js.map +1 -1
- package/package.json +5 -5
- package/src/artifacts/build-info/{solc-0_8_24-4919f060ad5018d55598e984a399ab6375a00193.json → solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd.json} +11 -104
- package/src/artifacts/build-info/solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd.output.json +1 -0
- package/src/artifacts/seaport/contracts/Seaport.sol/Seaport.json +1 -1
- package/src/artifacts/seaport/contracts/Seaport.sol/artifacts.d.ts +1 -1
- package/src/artifacts/seaport/contracts/conduit/Conduit.sol/LocalConduit.json +1 -1
- package/src/artifacts/seaport/contracts/conduit/Conduit.sol/artifacts.d.ts +1 -1
- package/src/artifacts/seaport/contracts/conduit/ConduitController.sol/LocalConduitController.json +1 -1
- package/src/artifacts/seaport/contracts/conduit/ConduitController.sol/artifacts.d.ts +1 -1
- package/src/artifacts/src/contracts/DomainRegistry.sol/DomainRegistry.json +1 -1
- package/src/artifacts/src/contracts/DomainRegistry.sol/DomainRegistryInterface.json +1 -1
- package/src/artifacts/src/contracts/DomainRegistry.sol/artifacts.d.ts +2 -2
- package/src/artifacts/src/contracts/test/TestERC1155.sol/TestERC1155.json +1 -1
- package/src/artifacts/src/contracts/test/TestERC1155.sol/artifacts.d.ts +1 -1
- package/src/artifacts/src/contracts/test/TestERC1271Wallet.sol/IERC20Approve.json +1 -1
- package/src/artifacts/src/contracts/test/TestERC1271Wallet.sol/TestERC1271Wallet.json +1 -1
- package/src/artifacts/src/contracts/test/TestERC1271Wallet.sol/artifacts.d.ts +2 -2
- package/src/artifacts/src/contracts/test/TestERC20.sol/TestERC20.json +1 -1
- package/src/artifacts/src/contracts/test/TestERC20.sol/artifacts.d.ts +1 -1
- package/src/artifacts/src/contracts/test/TestERC20USDC.sol/TestERC20USDC.json +1 -1
- package/src/artifacts/src/contracts/test/TestERC20USDC.sol/artifacts.d.ts +1 -1
- package/src/artifacts/src/contracts/test/TestERC721.sol/TestERC721.json +1 -1
- package/src/artifacts/src/contracts/test/TestERC721.sol/artifacts.d.ts +1 -1
- package/src/seaport.ts +77 -22
- package/src/typechain-types/hardhat.d.ts +12 -12
- package/src/typechain-types/index.ts +6 -6
- package/src/utils/fulfill.ts +3 -1
- package/src/artifacts/build-info/solc-0_8_24-4919f060ad5018d55598e984a399ab6375a00193.output.json +0 -1
|
@@ -15,7 +15,7 @@ export interface Seaport$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {"4332":[{"length":32,"start":11978}],"4334":[{"length":32,"start":12014}],"4336":[{"length":32,"start":11941}],"4338":[{"length":32,"start":2896},{"length":32,"start":5604}],"4340":[{"length":32,"start":2998},{"length":32,"start":5275}],"4342":[{"length":32,"start":3111},{"length":32,"start":5714}],"4344":[{"length":32,"start":11893}],"4346":[{"length":32,"start":12077}],"4349":[{"length":32,"start":4791},{"length":32,"start":12389}],"4351":[{"length":32,"start":12437}],"11391":[{"length":32,"start":877},{"length":32,"start":1076},{"length":32,"start":6770},{"length":32,"start":6853},{"length":32,"start":9445}],"11393":[{"length":32,"start":1151}]};
|
|
17
17
|
readonly inputSourceName: "npm/seaport@1.6.0/contracts/Seaport.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
|
@@ -15,7 +15,7 @@ export interface LocalConduit$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {"1656":[{"length":32,"start":466}]};
|
|
17
17
|
readonly inputSourceName: "npm/seaport@1.6.0/contracts/conduit/Conduit.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
|
@@ -15,7 +15,7 @@ export interface LocalConduitController$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {"1936":[{"length":32,"start":287},{"length":32,"start":1977},{"length":32,"start":2203}],"1938":[{"length":32,"start":322},{"length":32,"start":2065},{"length":32,"start":2271}]};
|
|
17
17
|
readonly inputSourceName: "npm/seaport@1.6.0/contracts/conduit/ConduitController.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
|
@@ -148,5 +148,5 @@
|
|
|
148
148
|
"deployedLinkReferences": {},
|
|
149
149
|
"immutableReferences": {},
|
|
150
150
|
"inputSourceName": "project/src/contracts/DomainRegistry.sol",
|
|
151
|
-
"buildInfoId": "solc-0_8_24-
|
|
151
|
+
"buildInfoId": "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd"
|
|
152
152
|
}
|
|
@@ -148,5 +148,5 @@
|
|
|
148
148
|
"deployedLinkReferences": {},
|
|
149
149
|
"immutableReferences": {},
|
|
150
150
|
"inputSourceName": "project/src/contracts/DomainRegistry.sol",
|
|
151
|
-
"buildInfoId": "solc-0_8_24-
|
|
151
|
+
"buildInfoId": "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd"
|
|
152
152
|
}
|
|
@@ -15,7 +15,7 @@ export interface DomainRegistry$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {};
|
|
17
17
|
readonly inputSourceName: "project/src/contracts/DomainRegistry.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
export interface DomainRegistryInterface$Type {
|
|
@@ -29,7 +29,7 @@ export interface DomainRegistryInterface$Type {
|
|
|
29
29
|
readonly deployedLinkReferences: {};
|
|
30
30
|
readonly immutableReferences: {};
|
|
31
31
|
readonly inputSourceName: "project/src/contracts/DomainRegistry.sol";
|
|
32
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
32
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
import "hardhat/types/artifacts";
|
|
@@ -351,5 +351,5 @@
|
|
|
351
351
|
"deployedLinkReferences": {},
|
|
352
352
|
"immutableReferences": {},
|
|
353
353
|
"inputSourceName": "project/src/contracts/test/TestERC1155.sol",
|
|
354
|
-
"buildInfoId": "solc-0_8_24-
|
|
354
|
+
"buildInfoId": "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd"
|
|
355
355
|
}
|
|
@@ -15,7 +15,7 @@ export interface TestERC1155$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {};
|
|
17
17
|
readonly inputSourceName: "project/src/contracts/test/TestERC1155.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
|
@@ -34,5 +34,5 @@
|
|
|
34
34
|
"deployedLinkReferences": {},
|
|
35
35
|
"immutableReferences": {},
|
|
36
36
|
"inputSourceName": "project/src/contracts/test/TestERC1271Wallet.sol",
|
|
37
|
-
"buildInfoId": "solc-0_8_24-
|
|
37
|
+
"buildInfoId": "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd"
|
|
38
38
|
}
|
|
@@ -109,5 +109,5 @@
|
|
|
109
109
|
"deployedLinkReferences": {},
|
|
110
110
|
"immutableReferences": {},
|
|
111
111
|
"inputSourceName": "project/src/contracts/test/TestERC1271Wallet.sol",
|
|
112
|
-
"buildInfoId": "solc-0_8_24-
|
|
112
|
+
"buildInfoId": "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd"
|
|
113
113
|
}
|
|
@@ -15,7 +15,7 @@ export interface IERC20Approve$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {};
|
|
17
17
|
readonly inputSourceName: "project/src/contracts/test/TestERC1271Wallet.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
export interface TestERC1271Wallet$Type {
|
|
@@ -29,7 +29,7 @@ export interface TestERC1271Wallet$Type {
|
|
|
29
29
|
readonly deployedLinkReferences: {};
|
|
30
30
|
readonly immutableReferences: {};
|
|
31
31
|
readonly inputSourceName: "project/src/contracts/test/TestERC1271Wallet.sol";
|
|
32
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
32
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
import "hardhat/types/artifacts";
|
|
@@ -15,7 +15,7 @@ export interface TestERC20$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {"703":[{"length":32,"start":369}],"717":[{"length":32,"start":927}],"719":[{"length":32,"start":980}]};
|
|
17
17
|
readonly inputSourceName: "project/src/contracts/test/TestERC20.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
|
@@ -15,7 +15,7 @@ export interface TestERC20USDC$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {"703":[{"length":32,"start":369}],"717":[{"length":32,"start":927}],"719":[{"length":32,"start":980}]};
|
|
17
17
|
readonly inputSourceName: "project/src/contracts/test/TestERC20USDC.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
|
@@ -364,5 +364,5 @@
|
|
|
364
364
|
"deployedLinkReferences": {},
|
|
365
365
|
"immutableReferences": {},
|
|
366
366
|
"inputSourceName": "project/src/contracts/test/TestERC721.sol",
|
|
367
|
-
"buildInfoId": "solc-0_8_24-
|
|
367
|
+
"buildInfoId": "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd"
|
|
368
368
|
}
|
|
@@ -15,7 +15,7 @@ export interface TestERC721$Type {
|
|
|
15
15
|
readonly deployedLinkReferences: {};
|
|
16
16
|
readonly immutableReferences: {};
|
|
17
17
|
readonly inputSourceName: "project/src/contracts/test/TestERC721.sol";
|
|
18
|
-
readonly buildInfoId: "solc-0_8_24-
|
|
18
|
+
readonly buildInfoId: "solc-0_8_24-3b175b848e18537609b8280784729ef8c3a59ecd";
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
import "hardhat/types/artifacts";
|
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,
|
|
@@ -936,6 +937,7 @@ export class Seaport {
|
|
|
936
937
|
* Defaults to the zero address which means the offer goes to the fulfiller
|
|
937
938
|
* @param input.domain optional domain to be hashed and appended to calldata
|
|
938
939
|
* @param input.exactApproval optional boolean to indicate whether the approval should be exact or not
|
|
940
|
+
* @param input.overrides any transaction overrides the client wants, ignored if not set
|
|
939
941
|
* @returns a use case containing the set of approval actions and fulfillment action
|
|
940
942
|
*/
|
|
941
943
|
public async fulfillOrders({
|
|
@@ -945,6 +947,7 @@ export class Seaport {
|
|
|
945
947
|
recipientAddress = ethers.ZeroAddress,
|
|
946
948
|
domain,
|
|
947
949
|
exactApproval = false,
|
|
950
|
+
overrides,
|
|
948
951
|
}: {
|
|
949
952
|
fulfillOrderDetails: {
|
|
950
953
|
order: OrderWithCounter
|
|
@@ -959,6 +962,7 @@ export class Seaport {
|
|
|
959
962
|
recipientAddress?: string
|
|
960
963
|
domain?: string
|
|
961
964
|
exactApproval?: boolean
|
|
965
|
+
overrides?: Overrides
|
|
962
966
|
}) {
|
|
963
967
|
if (
|
|
964
968
|
fulfillOrderDetails.some(orderDetails => !orderDetails.order.signature)
|
|
@@ -1063,20 +1067,26 @@ export class Seaport {
|
|
|
1063
1067
|
recipientAddress,
|
|
1064
1068
|
domain,
|
|
1065
1069
|
exactApproval,
|
|
1070
|
+
overrides,
|
|
1066
1071
|
})
|
|
1067
1072
|
}
|
|
1068
1073
|
|
|
1069
1074
|
/**
|
|
1070
|
-
*
|
|
1071
|
-
*
|
|
1072
|
-
*
|
|
1073
|
-
*
|
|
1074
|
-
*
|
|
1075
|
-
*
|
|
1076
|
-
*
|
|
1077
|
-
*
|
|
1078
|
-
* @param input.
|
|
1079
|
-
* @
|
|
1075
|
+
* Matches a set of orders against each other so that the total offer amounts
|
|
1076
|
+
* satisfy the total consideration amounts across all matched fulfillments.
|
|
1077
|
+
*
|
|
1078
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
1079
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
1080
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
1081
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
1082
|
+
*
|
|
1083
|
+
* @param input.orders The list of orders to match.
|
|
1084
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
1085
|
+
* components across the provided orders.
|
|
1086
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
1087
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
1088
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
1089
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
1080
1090
|
*/
|
|
1081
1091
|
public matchOrders({
|
|
1082
1092
|
orders,
|
|
@@ -1093,6 +1103,11 @@ export class Seaport {
|
|
|
1093
1103
|
}): TransactionMethods<
|
|
1094
1104
|
ContractMethodReturnType<SeaportContract, "matchOrders">
|
|
1095
1105
|
> {
|
|
1106
|
+
this._validateMatchOrdersNativeValue(
|
|
1107
|
+
orders.map(o => o.parameters),
|
|
1108
|
+
overrides,
|
|
1109
|
+
)
|
|
1110
|
+
|
|
1096
1111
|
return getTransactionMethods(
|
|
1097
1112
|
this._getSigner(accountAddress),
|
|
1098
1113
|
this.contract,
|
|
@@ -1103,18 +1118,27 @@ export class Seaport {
|
|
|
1103
1118
|
}
|
|
1104
1119
|
|
|
1105
1120
|
/**
|
|
1106
|
-
*
|
|
1107
|
-
*
|
|
1108
|
-
*
|
|
1109
|
-
*
|
|
1110
|
-
*
|
|
1111
|
-
*
|
|
1112
|
-
*
|
|
1113
|
-
*
|
|
1114
|
-
*
|
|
1115
|
-
* @param input.
|
|
1116
|
-
*
|
|
1117
|
-
* @
|
|
1121
|
+
* Matches a set of advanced orders against each other, supporting partial fills
|
|
1122
|
+
* (numerator/denominator), criteria resolvers, extra data, and an explicit recipient
|
|
1123
|
+
* for any unspent offer amounts or native tokens.
|
|
1124
|
+
*
|
|
1125
|
+
* WARNING: This is a low-level method that passes arguments directly to the Seaport
|
|
1126
|
+
* contract. It does NOT perform balance or approval checks. Callers are responsible
|
|
1127
|
+
* for ensuring all parties have sufficient balances and approvals before calling.
|
|
1128
|
+
* Pass `value` in `overrides` when matching orders that include ETH.
|
|
1129
|
+
*
|
|
1130
|
+
* @param input.orders The list of advanced orders to match. Each order includes
|
|
1131
|
+
* numerator/denominator for partial fill amounts and extraData for zone validation.
|
|
1132
|
+
* @param input.criteriaResolvers Resolvers for criteria-based items (e.g. collection offers),
|
|
1133
|
+
* mapping criteria to specific token identifiers with merkle proofs.
|
|
1134
|
+
* @param input.fulfillments The list of fulfillments pairing offer and consideration
|
|
1135
|
+
* components across the provided orders.
|
|
1136
|
+
* @param input.recipient The address to receive any unspent offer item amounts or
|
|
1137
|
+
* native tokens remaining after all fulfillments are applied.
|
|
1138
|
+
* @param input.overrides Transaction overrides (e.g. `{ value }` for ETH-based matches).
|
|
1139
|
+
* @param input.accountAddress Optional address to send the transaction from.
|
|
1140
|
+
* @param input.domain Optional domain to be hashed and appended to calldata.
|
|
1141
|
+
* @returns A set of transaction methods (transact, estimateGas, staticCall, buildTransaction).
|
|
1118
1142
|
*/
|
|
1119
1143
|
public matchAdvancedOrders({
|
|
1120
1144
|
orders,
|
|
@@ -1135,6 +1159,11 @@ export class Seaport {
|
|
|
1135
1159
|
}): TransactionMethods<
|
|
1136
1160
|
ContractMethodReturnType<SeaportContract, "matchAdvancedOrders">
|
|
1137
1161
|
> {
|
|
1162
|
+
this._validateMatchOrdersNativeValue(
|
|
1163
|
+
orders.map(o => o.parameters),
|
|
1164
|
+
overrides,
|
|
1165
|
+
)
|
|
1166
|
+
|
|
1138
1167
|
return getTransactionMethods(
|
|
1139
1168
|
this._getSigner(accountAddress),
|
|
1140
1169
|
this.contract,
|
|
@@ -1205,4 +1234,30 @@ export class Seaport {
|
|
|
1205
1234
|
return await domainArray
|
|
1206
1235
|
}
|
|
1207
1236
|
}
|
|
1237
|
+
|
|
1238
|
+
/**
|
|
1239
|
+
* Validates that `overrides.value` is provided when any of the matched orders
|
|
1240
|
+
* involve native ETH. Forgetting to set `value` is a common mistake that
|
|
1241
|
+
* results in an opaque revert from the Seaport contract.
|
|
1242
|
+
*/
|
|
1243
|
+
private _validateMatchOrdersNativeValue(
|
|
1244
|
+
orderParams: {
|
|
1245
|
+
offer: { itemType: ItemType }[]
|
|
1246
|
+
consideration: { itemType: ItemType }[]
|
|
1247
|
+
}[],
|
|
1248
|
+
overrides?: Overrides,
|
|
1249
|
+
) {
|
|
1250
|
+
const hasNativeToken = orderParams.some(
|
|
1251
|
+
params =>
|
|
1252
|
+
params.offer.some(item => item.itemType === ItemType.NATIVE) ||
|
|
1253
|
+
params.consideration.some(item => item.itemType === ItemType.NATIVE),
|
|
1254
|
+
)
|
|
1255
|
+
|
|
1256
|
+
if (hasNativeToken && !overrides?.value) {
|
|
1257
|
+
throw new Error(
|
|
1258
|
+
"Orders contain native ETH items but no `value` was provided in overrides. " +
|
|
1259
|
+
"Pass the required ETH amount via `overrides: { value }` to avoid a revert.",
|
|
1260
|
+
)
|
|
1261
|
+
}
|
|
1262
|
+
}
|
|
1208
1263
|
}
|
|
@@ -11,49 +11,49 @@ import * as Contracts from "./index.js";
|
|
|
11
11
|
declare module "@nomicfoundation/hardhat-ethers/types" {
|
|
12
12
|
interface HardhatEthersHelpers extends HardhatEthersHelpersBase {
|
|
13
13
|
getContractFactory(name: 'Seaport', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.Seaport__factory>
|
|
14
|
-
getContractFactory(name: 'LocalConduit', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.LocalConduit__factory>
|
|
15
|
-
getContractFactory(name: 'LocalConduitController', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.LocalConduitController__factory>
|
|
16
14
|
getContractFactory(name: 'DomainRegistry', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.DomainRegistry__factory>
|
|
17
15
|
getContractFactory(name: 'DomainRegistryInterface', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.DomainRegistryInterface__factory>
|
|
18
|
-
getContractFactory(name: '
|
|
16
|
+
getContractFactory(name: 'LocalConduit', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.LocalConduit__factory>
|
|
17
|
+
getContractFactory(name: 'LocalConduitController', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.LocalConduitController__factory>
|
|
19
18
|
getContractFactory(name: 'IERC20Approve', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.IERC20Approve__factory>
|
|
20
19
|
getContractFactory(name: 'TestERC1271Wallet', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.TestERC1271Wallet__factory>
|
|
20
|
+
getContractFactory(name: 'TestERC1155', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.TestERC1155__factory>
|
|
21
21
|
getContractFactory(name: 'TestERC20', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.TestERC20__factory>
|
|
22
22
|
getContractFactory(name: 'TestERC20USDC', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.TestERC20USDC__factory>
|
|
23
23
|
getContractFactory(name: 'TestERC721', signerOrOptions?: ethers.Signer | FactoryOptions): Promise<Contracts.TestERC721__factory>
|
|
24
24
|
|
|
25
25
|
getContractAt(name: 'Seaport', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.Seaport>
|
|
26
|
-
getContractAt(name: 'LocalConduit', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.LocalConduit>
|
|
27
|
-
getContractAt(name: 'LocalConduitController', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.LocalConduitController>
|
|
28
26
|
getContractAt(name: 'DomainRegistry', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.DomainRegistry>
|
|
29
27
|
getContractAt(name: 'DomainRegistryInterface', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.DomainRegistryInterface>
|
|
30
|
-
getContractAt(name: '
|
|
28
|
+
getContractAt(name: 'LocalConduit', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.LocalConduit>
|
|
29
|
+
getContractAt(name: 'LocalConduitController', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.LocalConduitController>
|
|
31
30
|
getContractAt(name: 'IERC20Approve', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.IERC20Approve>
|
|
32
31
|
getContractAt(name: 'TestERC1271Wallet', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.TestERC1271Wallet>
|
|
32
|
+
getContractAt(name: 'TestERC1155', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.TestERC1155>
|
|
33
33
|
getContractAt(name: 'TestERC20', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.TestERC20>
|
|
34
34
|
getContractAt(name: 'TestERC20USDC', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.TestERC20USDC>
|
|
35
35
|
getContractAt(name: 'TestERC721', address: string | ethers.Addressable, signer?: ethers.Signer): Promise<Contracts.TestERC721>
|
|
36
36
|
|
|
37
37
|
deployContract(name: 'Seaport', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.Seaport>
|
|
38
|
-
deployContract(name: 'LocalConduit', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduit>
|
|
39
|
-
deployContract(name: 'LocalConduitController', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduitController>
|
|
40
38
|
deployContract(name: 'DomainRegistry', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.DomainRegistry>
|
|
41
39
|
deployContract(name: 'DomainRegistryInterface', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.DomainRegistryInterface>
|
|
42
|
-
deployContract(name: '
|
|
40
|
+
deployContract(name: 'LocalConduit', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduit>
|
|
41
|
+
deployContract(name: 'LocalConduitController', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduitController>
|
|
43
42
|
deployContract(name: 'IERC20Approve', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.IERC20Approve>
|
|
44
43
|
deployContract(name: 'TestERC1271Wallet', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC1271Wallet>
|
|
44
|
+
deployContract(name: 'TestERC1155', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC1155>
|
|
45
45
|
deployContract(name: 'TestERC20', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC20>
|
|
46
46
|
deployContract(name: 'TestERC20USDC', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC20USDC>
|
|
47
47
|
deployContract(name: 'TestERC721', signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC721>
|
|
48
48
|
|
|
49
49
|
deployContract(name: 'Seaport', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.Seaport>
|
|
50
|
-
deployContract(name: 'LocalConduit', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduit>
|
|
51
|
-
deployContract(name: 'LocalConduitController', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduitController>
|
|
52
50
|
deployContract(name: 'DomainRegistry', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.DomainRegistry>
|
|
53
51
|
deployContract(name: 'DomainRegistryInterface', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.DomainRegistryInterface>
|
|
54
|
-
deployContract(name: '
|
|
52
|
+
deployContract(name: 'LocalConduit', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduit>
|
|
53
|
+
deployContract(name: 'LocalConduitController', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.LocalConduitController>
|
|
55
54
|
deployContract(name: 'IERC20Approve', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.IERC20Approve>
|
|
56
55
|
deployContract(name: 'TestERC1271Wallet', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC1271Wallet>
|
|
56
|
+
deployContract(name: 'TestERC1155', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC1155>
|
|
57
57
|
deployContract(name: 'TestERC20', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC20>
|
|
58
58
|
deployContract(name: 'TestERC20USDC', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC20USDC>
|
|
59
59
|
deployContract(name: 'TestERC721', args: any[], signerOrOptions?: ethers.Signer | DeployContractOptions): Promise<Contracts.TestERC721>
|
|
@@ -8,20 +8,20 @@ export type { src };
|
|
|
8
8
|
export * as factories from './factories/index.js';
|
|
9
9
|
export type { Seaport } from './seaport/contracts/Seaport.js';
|
|
10
10
|
export { Seaport__factory } from './factories/seaport/contracts/Seaport__factory.js';
|
|
11
|
-
export type { LocalConduit } from './seaport/contracts/conduit/Conduit.sol/LocalConduit.js';
|
|
12
|
-
export { LocalConduit__factory } from './factories/seaport/contracts/conduit/Conduit.sol/LocalConduit__factory.js';
|
|
13
|
-
export type { LocalConduitController } from './seaport/contracts/conduit/ConduitController.sol/LocalConduitController.js';
|
|
14
|
-
export { LocalConduitController__factory } from './factories/seaport/contracts/conduit/ConduitController.sol/LocalConduitController__factory.js';
|
|
15
11
|
export type { DomainRegistry } from './src/contracts/DomainRegistry.sol/DomainRegistry.js';
|
|
16
12
|
export { DomainRegistry__factory } from './factories/src/contracts/DomainRegistry.sol/DomainRegistry__factory.js';
|
|
17
13
|
export type { DomainRegistryInterface } from './src/contracts/DomainRegistry.sol/DomainRegistryInterface.js';
|
|
18
14
|
export { DomainRegistryInterface__factory } from './factories/src/contracts/DomainRegistry.sol/DomainRegistryInterface__factory.js';
|
|
19
|
-
export type {
|
|
20
|
-
export {
|
|
15
|
+
export type { LocalConduit } from './seaport/contracts/conduit/Conduit.sol/LocalConduit.js';
|
|
16
|
+
export { LocalConduit__factory } from './factories/seaport/contracts/conduit/Conduit.sol/LocalConduit__factory.js';
|
|
17
|
+
export type { LocalConduitController } from './seaport/contracts/conduit/ConduitController.sol/LocalConduitController.js';
|
|
18
|
+
export { LocalConduitController__factory } from './factories/seaport/contracts/conduit/ConduitController.sol/LocalConduitController__factory.js';
|
|
21
19
|
export type { IERC20Approve } from './src/contracts/test/TestERC1271Wallet.sol/IERC20Approve.js';
|
|
22
20
|
export { IERC20Approve__factory } from './factories/src/contracts/test/TestERC1271Wallet.sol/IERC20Approve__factory.js';
|
|
23
21
|
export type { TestERC1271Wallet } from './src/contracts/test/TestERC1271Wallet.sol/TestERC1271Wallet.js';
|
|
24
22
|
export { TestERC1271Wallet__factory } from './factories/src/contracts/test/TestERC1271Wallet.sol/TestERC1271Wallet__factory.js';
|
|
23
|
+
export type { TestERC1155 } from './src/contracts/test/TestERC1155.js';
|
|
24
|
+
export { TestERC1155__factory } from './factories/src/contracts/test/TestERC1155__factory.js';
|
|
25
25
|
export type { TestERC20 } from './src/contracts/test/TestERC20.js';
|
|
26
26
|
export { TestERC20__factory } from './factories/src/contracts/test/TestERC20__factory.js';
|
|
27
27
|
export type { TestERC20USDC } from './src/contracts/test/TestERC20USDC.js';
|
package/src/utils/fulfill.ts
CHANGED
|
@@ -552,6 +552,7 @@ export function fulfillAvailableOrders({
|
|
|
552
552
|
recipientAddress,
|
|
553
553
|
exactApproval,
|
|
554
554
|
domain,
|
|
555
|
+
overrides,
|
|
555
556
|
}: {
|
|
556
557
|
ordersMetadata: FulfillOrdersMetadata
|
|
557
558
|
seaportContract: SeaportContract
|
|
@@ -564,6 +565,7 @@ export function fulfillAvailableOrders({
|
|
|
564
565
|
recipientAddress: string
|
|
565
566
|
exactApproval: boolean
|
|
566
567
|
domain?: string
|
|
568
|
+
overrides?: Overrides
|
|
567
569
|
}): OrderUseCase<
|
|
568
570
|
ExchangeAction<
|
|
569
571
|
ContractMethodReturnType<SeaportContract, "fulfillAvailableAdvancedOrders">
|
|
@@ -715,7 +717,7 @@ export function fulfillAvailableOrders({
|
|
|
715
717
|
},
|
|
716
718
|
)
|
|
717
719
|
|
|
718
|
-
|
|
720
|
+
overrides = { ...overrides, value: totalNativeAmount }
|
|
719
721
|
|
|
720
722
|
const approvalActions = getApprovalActions(
|
|
721
723
|
totalInsufficientApprovals,
|