opensea-js 8.0.3 → 8.0.4
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/api/api.d.ts +3 -1
- package/lib/api/api.js +4 -12
- package/lib/api/api.js.map +1 -1
- package/lib/api/orders.d.ts +1 -1
- package/lib/api/orders.js +3 -3
- package/lib/api/orders.js.map +1 -1
- package/lib/api/types.d.ts +15 -0
- package/lib/api/types.js +13 -1
- package/lib/api/types.js.map +1 -1
- package/lib/orders/types.d.ts +11 -0
- package/lib/orders/utils.d.ts +6 -3
- package/lib/orders/utils.js +16 -3
- package/lib/orders/utils.js.map +1 -1
- package/lib/sdk/fulfillment.d.ts +8 -7
- package/lib/sdk/fulfillment.js +59 -48
- package/lib/sdk/fulfillment.js.map +1 -1
- package/lib/sdk.d.ts +8 -7
- package/lib/sdk.js +8 -7
- package/lib/sdk.js.map +1 -1
- package/package.json +1 -1
- package/src/api/api.ts +6 -11
- package/src/api/orders.ts +5 -0
- package/src/api/types.ts +16 -0
- package/src/orders/types.ts +25 -3
- package/src/orders/utils.ts +24 -1
- package/src/sdk/fulfillment.ts +82 -72
- package/src/sdk.ts +11 -12
package/lib/api/api.d.ts
CHANGED
|
@@ -114,9 +114,11 @@ export declare class OpenSeaAPI {
|
|
|
114
114
|
* @side The side of the order (buy or sell)
|
|
115
115
|
* @param assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers)
|
|
116
116
|
* @param tokenId Optional token ID for criteria offers (e.g., collection offers)
|
|
117
|
+
* @param unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
118
|
+
* @param recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
117
119
|
* @returns The {@link FulfillmentDataResponse}
|
|
118
120
|
*/
|
|
119
|
-
generateFulfillmentData(fulfillerAddress: string, orderHash: string, protocolAddress: string, side: OrderSide, assetContractAddress?: string, tokenId?: string): Promise<FulfillmentDataResponse>;
|
|
121
|
+
generateFulfillmentData(fulfillerAddress: string, orderHash: string, protocolAddress: string, side: OrderSide, assetContractAddress?: string, tokenId?: string, unitsToFill?: string, recipientAddress?: string): Promise<FulfillmentDataResponse>;
|
|
120
122
|
/**
|
|
121
123
|
* Post an order to OpenSea.
|
|
122
124
|
* @param order The order to post
|
package/lib/api/api.js
CHANGED
|
@@ -151,10 +151,12 @@ class OpenSeaAPI {
|
|
|
151
151
|
* @side The side of the order (buy or sell)
|
|
152
152
|
* @param assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers)
|
|
153
153
|
* @param tokenId Optional token ID for criteria offers (e.g., collection offers)
|
|
154
|
+
* @param unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
155
|
+
* @param recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
154
156
|
* @returns The {@link FulfillmentDataResponse}
|
|
155
157
|
*/
|
|
156
|
-
async generateFulfillmentData(fulfillerAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId) {
|
|
157
|
-
return this.ordersAPI.generateFulfillmentData(fulfillerAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId);
|
|
158
|
+
async generateFulfillmentData(fulfillerAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId, unitsToFill, recipientAddress) {
|
|
159
|
+
return this.ordersAPI.generateFulfillmentData(fulfillerAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId, unitsToFill, recipientAddress);
|
|
158
160
|
}
|
|
159
161
|
/**
|
|
160
162
|
* Post an order to OpenSea.
|
|
@@ -456,16 +458,6 @@ class OpenSeaAPI {
|
|
|
456
458
|
headers: req.headers,
|
|
457
459
|
body: body ? JSON.stringify(body, null, 2) : undefined,
|
|
458
460
|
})}`);
|
|
459
|
-
// DEBUG: Log offer and listing requests
|
|
460
|
-
if ((url.includes("/offers") || url.includes("/listings")) && body) {
|
|
461
|
-
const type = url.includes("/offers") ? "OFFER" : "LISTING";
|
|
462
|
-
console.log("\n" + "=".repeat(80));
|
|
463
|
-
console.log(`DEBUG: ${type} REQUEST`);
|
|
464
|
-
console.log("=".repeat(80));
|
|
465
|
-
console.log("URL:", url);
|
|
466
|
-
console.log("BODY:", JSON.stringify(body, null, 2));
|
|
467
|
-
console.log("=".repeat(80) + "\n");
|
|
468
|
-
}
|
|
469
461
|
const response = await req.send();
|
|
470
462
|
if (!response.ok()) {
|
|
471
463
|
// Handle rate limit errors (429 Too Many Requests and 599 custom rate limit)
|
package/lib/api/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"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"}
|
package/lib/api/orders.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ export declare class OrdersAPI {
|
|
|
26
26
|
/**
|
|
27
27
|
* Generate the data needed to fulfill a listing or an offer onchain.
|
|
28
28
|
*/
|
|
29
|
-
generateFulfillmentData(fulfillerAddress: string, orderHash: string, protocolAddress: string, side: OrderSide, assetContractAddress?: string, tokenId?: string): Promise<FulfillmentDataResponse>;
|
|
29
|
+
generateFulfillmentData(fulfillerAddress: string, orderHash: string, protocolAddress: string, side: OrderSide, assetContractAddress?: string, tokenId?: string, unitsToFill?: string, recipientAddress?: string): Promise<FulfillmentDataResponse>;
|
|
30
30
|
/**
|
|
31
31
|
* Post an order to OpenSea.
|
|
32
32
|
*/
|
package/lib/api/orders.js
CHANGED
|
@@ -68,13 +68,13 @@ class OrdersAPI {
|
|
|
68
68
|
/**
|
|
69
69
|
* Generate the data needed to fulfill a listing or an offer onchain.
|
|
70
70
|
*/
|
|
71
|
-
async generateFulfillmentData(fulfillerAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId) {
|
|
71
|
+
async generateFulfillmentData(fulfillerAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId, unitsToFill, recipientAddress) {
|
|
72
72
|
let payload = null;
|
|
73
73
|
if (side === types_1.OrderSide.LISTING) {
|
|
74
|
-
payload = (0, utils_1.getFulfillListingPayload)(fulfillerAddress, orderHash, protocolAddress, this.chain, assetContractAddress, tokenId);
|
|
74
|
+
payload = (0, utils_1.getFulfillListingPayload)(fulfillerAddress, orderHash, protocolAddress, this.chain, assetContractAddress, tokenId, unitsToFill, recipientAddress);
|
|
75
75
|
}
|
|
76
76
|
else {
|
|
77
|
-
payload = (0, utils_1.getFulfillOfferPayload)(fulfillerAddress, orderHash, protocolAddress, this.chain, assetContractAddress, tokenId);
|
|
77
|
+
payload = (0, utils_1.getFulfillOfferPayload)(fulfillerAddress, orderHash, protocolAddress, this.chain, assetContractAddress, tokenId, unitsToFill);
|
|
78
78
|
}
|
|
79
79
|
const response = await this.fetcher.post((0, utils_1.getFulfillmentDataPath)(side), payload);
|
|
80
80
|
return response;
|
package/lib/api/orders.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orders.js","sourceRoot":"","sources":["../../src/api/orders.ts"],"names":[],"mappings":";;;AAAA,yCAIoB;AAWpB,2CAMyB;AACzB,oCAA4C;AAG5C;;GAEG;AACH,MAAa,SAAS;IACpB,YACU,OAAgB,EAChB,KAAY;QADZ,YAAO,GAAP,OAAO,CAAS;QAChB,UAAK,GAAL,KAAK,CAAO;IACnB,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,EACb,IAAI,EACJ,QAAQ,GAAG,SAAS,EACpB,cAAc,GAAG,MAAM,EACvB,OAAO,GAAG,cAAc,EACxB,GAAG,WAAW,EACoB;QAClC,4DAA4D;QAC5D,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;YAC5B,IACE,CAAC,WAAW,CAAC,oBAAoB;gBACjC,CAAC,WAAW,CAAC,QAAQ;gBACrB,WAAW,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EACjC,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,wGAAwG,CACzG,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACvC,IAAA,2BAAgB,EAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC5C,IAAA,mCAA2B,EAAC;YAC1B,KAAK,EAAE,CAAC;YACR,OAAO;YACP,cAAc;YACd,GAAG,WAAW;SACf,CAAC,CACH,CAAC;QACF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,SAAiB,EACjB,eAAuB,EACvB,QAAe,IAAI,CAAC,KAAK;QAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAEpC,IAAA,6BAAkB,EAAC,KAAK,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC;QAC1D,OAAO,IAAA,wBAAgB,EAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,EACd,IAAI,EACJ,QAAQ,GAAG,SAAS,EACpB,cAAc,GAAG,MAAM,EACvB,OAAO,GAAG,cAAc,EACxB,QAAQ,GAAG,EAAE,EACb,GAAG,WAAW,EAGf;QACC,4DAA4D;QAC5D,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;YAC5B,IACE,CAAC,WAAW,CAAC,oBAAoB;gBACjC,CAAC,WAAW,CAAC,QAAQ;gBACrB,WAAW,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EACjC,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,wGAAwG,CACzG,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACrC,IAAA,2BAAgB,EAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,EAC5C,IAAA,mCAA2B,EAAC;YAC1B,KAAK,EAAE,QAAQ;YACf,OAAO;YACP,cAAc;YACd,GAAG,WAAW;SACf,CAAC,CACH,CAAC;QACF,OAAO;YACL,GAAG,QAAQ;YACX,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAgB,CAAC;SAC9C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAC3B,gBAAwB,EACxB,SAAiB,EACjB,eAAuB,EACvB,IAAe,EACf,oBAA6B,EAC7B,OAAgB;
|
|
1
|
+
{"version":3,"file":"orders.js","sourceRoot":"","sources":["../../src/api/orders.ts"],"names":[],"mappings":"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"}
|
package/lib/api/types.d.ts
CHANGED
|
@@ -78,6 +78,17 @@ export declare enum CollectionOrderByOption {
|
|
|
78
78
|
NUM_OWNERS = "num_owners",
|
|
79
79
|
MARKET_CAP = "market_cap"
|
|
80
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Order status enum.
|
|
83
|
+
* @category API Models
|
|
84
|
+
*/
|
|
85
|
+
export declare enum OrderStatus {
|
|
86
|
+
ACTIVE = "active",
|
|
87
|
+
INACTIVE = "inactive",
|
|
88
|
+
FULFILLED = "fulfilled",
|
|
89
|
+
EXPIRED = "expired",
|
|
90
|
+
CANCELLED = "cancelled"
|
|
91
|
+
}
|
|
81
92
|
/**
|
|
82
93
|
* Base Order type shared between Listings and Offers.
|
|
83
94
|
* @category API Models
|
|
@@ -101,6 +112,8 @@ export type Order = {
|
|
|
101
112
|
export type Offer = Order & {
|
|
102
113
|
/** The criteria for the offer if it is a collection or trait offer. */
|
|
103
114
|
criteria?: Criteria;
|
|
115
|
+
/** The status of the offer. */
|
|
116
|
+
status: OrderStatus;
|
|
104
117
|
};
|
|
105
118
|
/**
|
|
106
119
|
* Collection Offer type.
|
|
@@ -129,6 +142,8 @@ export type Listing = Omit<Order, "price"> & {
|
|
|
129
142
|
};
|
|
130
143
|
/** The remaining quantity available for the listing. This is important for partially filled orders. */
|
|
131
144
|
remaining_quantity: number;
|
|
145
|
+
/** The status of the listing. */
|
|
146
|
+
status: OrderStatus;
|
|
132
147
|
};
|
|
133
148
|
/**
|
|
134
149
|
* Response from OpenSea API for fetching a list of collection offers.
|
package/lib/api/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EventOrderType = exports.AssetEventType = exports.TraitDisplayType = exports.CollectionOrderByOption = void 0;
|
|
3
|
+
exports.EventOrderType = exports.AssetEventType = exports.TraitDisplayType = exports.OrderStatus = exports.CollectionOrderByOption = void 0;
|
|
4
4
|
var CollectionOrderByOption;
|
|
5
5
|
(function (CollectionOrderByOption) {
|
|
6
6
|
CollectionOrderByOption["CREATED_DATE"] = "created_date";
|
|
@@ -10,6 +10,18 @@ var CollectionOrderByOption;
|
|
|
10
10
|
CollectionOrderByOption["NUM_OWNERS"] = "num_owners";
|
|
11
11
|
CollectionOrderByOption["MARKET_CAP"] = "market_cap";
|
|
12
12
|
})(CollectionOrderByOption || (exports.CollectionOrderByOption = CollectionOrderByOption = {}));
|
|
13
|
+
/**
|
|
14
|
+
* Order status enum.
|
|
15
|
+
* @category API Models
|
|
16
|
+
*/
|
|
17
|
+
var OrderStatus;
|
|
18
|
+
(function (OrderStatus) {
|
|
19
|
+
OrderStatus["ACTIVE"] = "active";
|
|
20
|
+
OrderStatus["INACTIVE"] = "inactive";
|
|
21
|
+
OrderStatus["FULFILLED"] = "fulfilled";
|
|
22
|
+
OrderStatus["EXPIRED"] = "expired";
|
|
23
|
+
OrderStatus["CANCELLED"] = "cancelled";
|
|
24
|
+
})(OrderStatus || (exports.OrderStatus = OrderStatus = {}));
|
|
13
25
|
/**
|
|
14
26
|
* Trait display type returned by OpenSea API.
|
|
15
27
|
* @category API Models
|
package/lib/api/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":";;;AAuFA,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,wDAA6B,CAAA;IAC7B,4DAAiC,CAAA;IACjC,gEAAqC,CAAA;IACrC,gEAAqC,CAAA;IACrC,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;AAC3B,CAAC,EAPW,uBAAuB,uCAAvB,uBAAuB,QAOlC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":";;;AAuFA,IAAY,uBAOX;AAPD,WAAY,uBAAuB;IACjC,wDAA6B,CAAA;IAC7B,4DAAiC,CAAA;IACjC,gEAAqC,CAAA;IACrC,gEAAqC,CAAA;IACrC,oDAAyB,CAAA;IACzB,oDAAyB,CAAA;AAC3B,CAAC,EAPW,uBAAuB,uCAAvB,uBAAuB,QAOlC;AAED;;;GAGG;AACH,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,sCAAuB,CAAA;IACvB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;AACzB,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB;AAqND;;;GAGG;AACH,IAAY,gBAQX;AARD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,yDAAqC,CAAA;IACrC,iDAA6B,CAAA;IAC7B,qCAAiB,CAAA;IACjB,iCAAa,CAAA;IACb,uCAAuC;IACvC,iCAAa,CAAA;AACf,CAAC,EARW,gBAAgB,gCAAhB,gBAAgB,QAQ3B;AAED;;;GAGG;AACH,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;IACb,uCAAqB,CAAA;IACrB,mCAAiB,CAAA;IACjB,2CAAyB,CAAA;AAC3B,CAAC,EANW,cAAc,8BAAd,cAAc,QAMzB;AAED;;;GAGG;AACH,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,qCAAmB,CAAA;IACnB,2CAAyB,CAAA;IACzB,uDAAqC,CAAA;IACrC,6CAA2B,CAAA;AAC7B,CAAC,EALW,cAAc,8BAAd,cAAc,QAKzB"}
|
package/lib/orders/types.d.ts
CHANGED
|
@@ -72,6 +72,17 @@ type Transaction = {
|
|
|
72
72
|
to: string;
|
|
73
73
|
value: number;
|
|
74
74
|
input_data: {
|
|
75
|
+
advancedOrder: AdvancedOrder;
|
|
76
|
+
criteriaResolvers?: unknown[];
|
|
77
|
+
fulfillerConduitKey?: string;
|
|
78
|
+
recipient: string;
|
|
79
|
+
} | {
|
|
80
|
+
basicOrderParameters: BasicOrderParametersStruct;
|
|
81
|
+
} | {
|
|
82
|
+
order: OrderWithCounter;
|
|
83
|
+
fulfillerConduitKey?: string;
|
|
84
|
+
recipient: string;
|
|
85
|
+
} | {
|
|
75
86
|
orders: OrderWithCounter[] | AdvancedOrder[] | BasicOrderParametersStruct[];
|
|
76
87
|
};
|
|
77
88
|
};
|
package/lib/orders/utils.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare const getBuildCollectionOfferPayload: (offererAddress: string, qu
|
|
|
22
22
|
offer_protection_enabled: boolean;
|
|
23
23
|
};
|
|
24
24
|
export declare const getFulfillmentDataPath: (side: OrderSide) => string;
|
|
25
|
-
export declare const getFulfillListingPayload: (fulfillerAddress: string, order_hash: string, protocolAddress: string, chain: Chain, assetContractAddress?: string, tokenId?: string) => {
|
|
25
|
+
export declare const getFulfillListingPayload: (fulfillerAddress: string, order_hash: string, protocolAddress: string, chain: Chain, assetContractAddress?: string, tokenId?: string, unitsToFill?: string, recipientAddress?: string) => {
|
|
26
26
|
listing: {
|
|
27
27
|
hash: string;
|
|
28
28
|
chain: Chain;
|
|
@@ -35,8 +35,10 @@ export declare const getFulfillListingPayload: (fulfillerAddress: string, order_
|
|
|
35
35
|
asset_contract_address: string;
|
|
36
36
|
token_id: string;
|
|
37
37
|
} | undefined;
|
|
38
|
+
units_to_fill?: string | undefined;
|
|
39
|
+
recipient?: string | undefined;
|
|
38
40
|
};
|
|
39
|
-
export declare const getFulfillOfferPayload: (fulfillerAddress: string, order_hash: string, protocolAddress: string, chain: Chain, assetContractAddress?: string, tokenId?: string) => {
|
|
41
|
+
export declare const getFulfillOfferPayload: (fulfillerAddress: string, order_hash: string, protocolAddress: string, chain: Chain, assetContractAddress?: string, tokenId?: string, unitsToFill?: string) => {
|
|
40
42
|
offer: {
|
|
41
43
|
hash: string;
|
|
42
44
|
chain: Chain;
|
|
@@ -49,6 +51,7 @@ export declare const getFulfillOfferPayload: (fulfillerAddress: string, order_ha
|
|
|
49
51
|
asset_contract_address: string;
|
|
50
52
|
token_id: string;
|
|
51
53
|
} | undefined;
|
|
54
|
+
units_to_fill?: string | undefined;
|
|
52
55
|
};
|
|
53
56
|
type OrdersQueryPathOptions = "protocol" | "side";
|
|
54
57
|
export declare const serializeOrdersQueryOptions: (options: Omit<OrdersQueryOptions, OrdersQueryPathOptions>) => {
|
|
@@ -60,7 +63,7 @@ export declare const serializeOrdersQueryOptions: (options: Omit<OrdersQueryOpti
|
|
|
60
63
|
owner: string | undefined;
|
|
61
64
|
listed_after: string | number | undefined;
|
|
62
65
|
listed_before: string | number | undefined;
|
|
63
|
-
token_ids:
|
|
66
|
+
token_ids: string[] | undefined;
|
|
64
67
|
asset_contract_address: string | undefined;
|
|
65
68
|
order_by: ("created_date" | "eth_price") | undefined;
|
|
66
69
|
order_direction: ("asc" | "desc") | undefined;
|
package/lib/orders/utils.js
CHANGED
|
@@ -50,7 +50,7 @@ const getFulfillmentDataPath = (side) => {
|
|
|
50
50
|
return `/v2/${sidePath}/fulfillment_data`;
|
|
51
51
|
};
|
|
52
52
|
exports.getFulfillmentDataPath = getFulfillmentDataPath;
|
|
53
|
-
const getFulfillListingPayload = (fulfillerAddress, order_hash, protocolAddress, chain, assetContractAddress, tokenId) => {
|
|
53
|
+
const getFulfillListingPayload = (fulfillerAddress, order_hash, protocolAddress, chain, assetContractAddress, tokenId, unitsToFill, recipientAddress) => {
|
|
54
54
|
const payload = {
|
|
55
55
|
listing: {
|
|
56
56
|
hash: order_hash,
|
|
@@ -68,10 +68,18 @@ const getFulfillListingPayload = (fulfillerAddress, order_hash, protocolAddress,
|
|
|
68
68
|
token_id: tokenId,
|
|
69
69
|
};
|
|
70
70
|
}
|
|
71
|
+
// Add optional units_to_fill
|
|
72
|
+
if (unitsToFill !== undefined) {
|
|
73
|
+
payload.units_to_fill = unitsToFill;
|
|
74
|
+
}
|
|
75
|
+
// Add optional recipient for listings
|
|
76
|
+
if (recipientAddress) {
|
|
77
|
+
payload.recipient = recipientAddress;
|
|
78
|
+
}
|
|
71
79
|
return payload;
|
|
72
80
|
};
|
|
73
81
|
exports.getFulfillListingPayload = getFulfillListingPayload;
|
|
74
|
-
const getFulfillOfferPayload = (fulfillerAddress, order_hash, protocolAddress, chain, assetContractAddress, tokenId) => {
|
|
82
|
+
const getFulfillOfferPayload = (fulfillerAddress, order_hash, protocolAddress, chain, assetContractAddress, tokenId, unitsToFill) => {
|
|
75
83
|
const payload = {
|
|
76
84
|
offer: {
|
|
77
85
|
hash: order_hash,
|
|
@@ -89,6 +97,10 @@ const getFulfillOfferPayload = (fulfillerAddress, order_hash, protocolAddress, c
|
|
|
89
97
|
token_id: tokenId,
|
|
90
98
|
};
|
|
91
99
|
}
|
|
100
|
+
// Add optional units_to_fill for offers
|
|
101
|
+
if (unitsToFill !== undefined) {
|
|
102
|
+
payload.units_to_fill = unitsToFill;
|
|
103
|
+
}
|
|
92
104
|
return payload;
|
|
93
105
|
};
|
|
94
106
|
exports.getFulfillOfferPayload = getFulfillOfferPayload;
|
|
@@ -102,7 +114,8 @@ const serializeOrdersQueryOptions = (options) => {
|
|
|
102
114
|
owner: options.owner,
|
|
103
115
|
listed_after: options.listedAfter,
|
|
104
116
|
listed_before: options.listedBefore,
|
|
105
|
-
token_ids: options.tokenIds ??
|
|
117
|
+
token_ids: options.tokenIds ??
|
|
118
|
+
(options.tokenId !== undefined ? [options.tokenId] : undefined),
|
|
106
119
|
asset_contract_address: options.assetContractAddress,
|
|
107
120
|
order_by: options.orderBy,
|
|
108
121
|
order_direction: options.orderDirection,
|
package/lib/orders/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/orders/utils.ts"],"names":[],"mappings":";;;AAAA,iEAAqF;AAOrF,oCAA4C;AAC5C,oCAA2C;AAE9B,QAAA,gCAAgC,GAC3C,4CAAgC,CAAC;AAE5B,MAAM,6BAA6B,GAAG,CAC3C,cAAsB,EACtB,aAA2B,EAC3B,SAAkB,EAClB,UAAmB,EACnB,EAAE;IACF,MAAM,OAAO,GAAG;QACd,QAAQ,EAAE;YACR,UAAU,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;SACrC;QACD,aAAa;QACb,gBAAgB,EAAE,wCAAgC;KACnD,CAAC;IACF,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;QAC5B,8DAA8D;QAC7D,OAAO,CAAC,QAAgB,CAAC,KAAK,GAAG;YAChC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,UAAU;SAClB,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AArBW,QAAA,6BAA6B,iCAqBxC;AAEK,MAAM,8BAA8B,GAAG,CAC5C,cAAsB,EACtB,QAAgB,EAChB,cAAsB,EACtB,sBAA+B,EAC/B,SAAkB,EAClB,UAAmB,EACnB,EAAE;IACF,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,cAAc;QACvB,QAAQ;QACR,QAAQ,EAAE;YACR,UAAU,EAAE;gBACV,IAAI,EAAE,cAAc;aACrB;SACF;QACD,gBAAgB,EAAE,wCAAgC;QAClD,wBAAwB,EAAE,sBAAsB;KACjD,CAAC;IACF,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;QAC5B,8DAA8D;QAC7D,OAAO,CAAC,QAAgB,CAAC,KAAK,GAAG;YAChC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,UAAU;SAClB,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AA3BW,QAAA,8BAA8B,kCA2BzC;AAEK,MAAM,sBAAsB,GAAG,CAAC,IAAe,EAAE,EAAE;IACxD,MAAM,QAAQ,GAAG,IAAI,KAAK,iBAAS,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpE,OAAO,OAAO,QAAQ,mBAAmB,CAAC;AAC5C,CAAC,CAAC;AAHW,QAAA,sBAAsB,0BAGjC;AAEK,MAAM,wBAAwB,GAAG,CACtC,gBAAwB,EACxB,UAAkB,EAClB,eAAuB,EACvB,KAAY,EACZ,oBAA6B,EAC7B,OAAgB,EAChB,EAAE;IACF,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/orders/utils.ts"],"names":[],"mappings":";;;AAAA,iEAAqF;AAOrF,oCAA4C;AAC5C,oCAA2C;AAE9B,QAAA,gCAAgC,GAC3C,4CAAgC,CAAC;AAE5B,MAAM,6BAA6B,GAAG,CAC3C,cAAsB,EACtB,aAA2B,EAC3B,SAAkB,EAClB,UAAmB,EACnB,EAAE;IACF,MAAM,OAAO,GAAG;QACd,QAAQ,EAAE;YACR,UAAU,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;SACrC;QACD,aAAa;QACb,gBAAgB,EAAE,wCAAgC;KACnD,CAAC;IACF,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;QAC5B,8DAA8D;QAC7D,OAAO,CAAC,QAAgB,CAAC,KAAK,GAAG;YAChC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,UAAU;SAClB,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AArBW,QAAA,6BAA6B,iCAqBxC;AAEK,MAAM,8BAA8B,GAAG,CAC5C,cAAsB,EACtB,QAAgB,EAChB,cAAsB,EACtB,sBAA+B,EAC/B,SAAkB,EAClB,UAAmB,EACnB,EAAE;IACF,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,cAAc;QACvB,QAAQ;QACR,QAAQ,EAAE;YACR,UAAU,EAAE;gBACV,IAAI,EAAE,cAAc;aACrB;SACF;QACD,gBAAgB,EAAE,wCAAgC;QAClD,wBAAwB,EAAE,sBAAsB;KACjD,CAAC;IACF,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;QAC5B,8DAA8D;QAC7D,OAAO,CAAC,QAAgB,CAAC,KAAK,GAAG;YAChC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,UAAU;SAClB,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AA3BW,QAAA,8BAA8B,kCA2BzC;AAEK,MAAM,sBAAsB,GAAG,CAAC,IAAe,EAAE,EAAE;IACxD,MAAM,QAAQ,GAAG,IAAI,KAAK,iBAAS,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpE,OAAO,OAAO,QAAQ,mBAAmB,CAAC;AAC5C,CAAC,CAAC;AAHW,QAAA,sBAAsB,0BAGjC;AAEK,MAAM,wBAAwB,GAAG,CACtC,gBAAwB,EACxB,UAAkB,EAClB,eAAuB,EACvB,KAAY,EACZ,oBAA6B,EAC7B,OAAgB,EAChB,WAAoB,EACpB,gBAAyB,EACzB,EAAE;IACF,MAAM,OAAO,GAeT;QACF,OAAO,EAAE;YACP,IAAI,EAAE,UAAU;YAChB,KAAK;YACL,gBAAgB,EAAE,eAAe;SAClC;QACD,SAAS,EAAE;YACT,OAAO,EAAE,gBAAgB;SAC1B;KACF,CAAC;IAEF,oDAAoD;IACpD,IAAI,oBAAoB,IAAI,OAAO,EAAE,CAAC;QACpC,OAAO,CAAC,aAAa,GAAG;YACtB,sBAAsB,EAAE,oBAAoB;YAC5C,QAAQ,EAAE,OAAO;SAClB,CAAC;IACJ,CAAC;IAED,6BAA6B;IAC7B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC;IACtC,CAAC;IAED,sCAAsC;IACtC,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CAAC,SAAS,GAAG,gBAAgB,CAAC;IACvC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAvDW,QAAA,wBAAwB,4BAuDnC;AAEK,MAAM,sBAAsB,GAAG,CACpC,gBAAwB,EACxB,UAAkB,EAClB,eAAuB,EACvB,KAAY,EACZ,oBAA6B,EAC7B,OAAgB,EAChB,WAAoB,EACpB,EAAE;IACF,MAAM,OAAO,GAcT;QACF,KAAK,EAAE;YACL,IAAI,EAAE,UAAU;YAChB,KAAK;YACL,gBAAgB,EAAE,eAAe;SAClC;QACD,SAAS,EAAE;YACT,OAAO,EAAE,gBAAgB;SAC1B;KACF,CAAC;IAEF,kEAAkE;IAClE,IAAI,oBAAoB,IAAI,OAAO,EAAE,CAAC;QACpC,OAAO,CAAC,aAAa,GAAG;YACtB,sBAAsB,EAAE,oBAAoB;YAC5C,QAAQ,EAAE,OAAO;SAClB,CAAC;IACJ,CAAC;IAED,wCAAwC;IACxC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,CAAC,aAAa,GAAG,WAAW,CAAC;IACtC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAhDW,QAAA,sBAAsB,0BAgDjC;AAGK,MAAM,2BAA2B,GAAG,CACzC,OAAyD,EACzD,EAAE;IACF,OAAO;QACL,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI;QAEtC,qBAAqB,EAAE,OAAO,CAAC,mBAAmB;QAClD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,YAAY,EAAE,OAAO,CAAC,WAAW;QACjC,aAAa,EAAE,OAAO,CAAC,YAAY;QACnC,SAAS,EACP,OAAO,CAAC,QAAQ;YAChB,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjE,sBAAsB,EAAE,OAAO,CAAC,oBAAoB;QACpD,QAAQ,EAAE,OAAO,CAAC,OAAO;QACzB,eAAe,EAAE,OAAO,CAAC,cAAc;QACvC,YAAY,EAAE,OAAO,CAAC,WAAW;KAClC,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,2BAA2B,+BAqBtC;AAEK,MAAM,gBAAgB,GAAG,CAAC,KAAwB,EAAW,EAAE;IACpE,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,YAAY;QAC/B,WAAW,EAAE,KAAK,CAAC,YAAY;QAC/B,WAAW,EAAE,KAAK,CAAC,YAAY;QAC/B,cAAc,EAAE,KAAK,CAAC,eAAe;QACrC,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,KAAK,EAAE,IAAA,uBAAe,EAAC,KAAK,CAAC,KAAK,CAAC;QACnC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,uBAAe,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QACxD,YAAY,EAAE,KAAK,CAAC,aAAa;QACjC,eAAe,EAAE,KAAK,CAAC,gBAAgB;QACvC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC;QACzC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YAC9D,OAAO,EAAE,IAAA,uBAAe,EAAC,OAAO,CAAC;YACjC,WAAW,EAAE,YAAY;SAC1B,CAAC,CAAC;QACH,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC;YAC9D,OAAO,EAAE,IAAA,uBAAe,EAAC,OAAO,CAAC;YACjC,WAAW,EAAE,YAAY;SAC1B,CAAC,CAAC;QACH,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,cAAc;QACnC,eAAe,EAAE,KAAK,CAAC,gBAAgB;QACvC,iBAAiB,EAAE,KAAK,CAAC,kBAAkB;KAC5C,CAAC;AACJ,CAAC,CAAC;AA5BW,QAAA,gBAAgB,oBA4B3B"}
|
package/lib/sdk/fulfillment.d.ts
CHANGED
|
@@ -26,28 +26,29 @@ export declare class FulfillmentManager {
|
|
|
26
26
|
private fulfillPrivateOrder;
|
|
27
27
|
/**
|
|
28
28
|
* Fulfill an order for an asset. The order can be either a listing or an offer.
|
|
29
|
+
* Uses the OpenSea API to generate fulfillment transaction data and executes it directly.
|
|
29
30
|
* @param options
|
|
30
31
|
* @param options.order The order to fulfill, a.k.a. "take"
|
|
31
32
|
* @param options.accountAddress Address of the wallet taking the offer.
|
|
32
|
-
* @param options.recipientAddress The optional address to receive the order's item(s) or currencies. If not specified, defaults to accountAddress.
|
|
33
|
-
* @param options.domain An optional domain to be hashed and included at the end of fulfillment calldata. This can be used for on-chain order attribution to assist with analytics.
|
|
34
33
|
* @param options.assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
35
34
|
* @param options.tokenId Optional token ID for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
35
|
+
* @param options.unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
36
|
+
* @param options.recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
36
37
|
* @param options.overrides Transaction overrides, ignored if not set.
|
|
37
38
|
* @returns Transaction hash of the order.
|
|
38
39
|
*
|
|
39
40
|
* @throws Error if the accountAddress is not available through wallet or provider.
|
|
40
41
|
* @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
|
|
41
|
-
* @throws Error if
|
|
42
|
+
* @throws Error if a signer is not provided (read-only providers cannot fulfill orders).
|
|
43
|
+
* @throws Error if the order hash is not available.
|
|
42
44
|
*/
|
|
43
|
-
fulfillOrder({ order, accountAddress,
|
|
45
|
+
fulfillOrder({ order, accountAddress, assetContractAddress, tokenId, unitsToFill, recipientAddress, overrides, }: {
|
|
44
46
|
order: OrderV2 | Order | Listing | Offer;
|
|
45
47
|
accountAddress: string;
|
|
46
|
-
recipientAddress?: string;
|
|
47
|
-
unitsToFill?: BigNumberish;
|
|
48
|
-
domain?: string;
|
|
49
48
|
assetContractAddress?: string;
|
|
50
49
|
tokenId?: string;
|
|
50
|
+
unitsToFill?: BigNumberish;
|
|
51
|
+
recipientAddress?: string;
|
|
51
52
|
overrides?: Overrides;
|
|
52
53
|
}): Promise<string>;
|
|
53
54
|
/**
|
package/lib/sdk/fulfillment.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FulfillmentManager = void 0;
|
|
4
|
+
const Seaport_1 = require("@opensea/seaport-js/lib/abi/Seaport");
|
|
5
|
+
const ethers_1 = require("ethers");
|
|
4
6
|
const privateListings_1 = require("../orders/privateListings");
|
|
5
7
|
const types_1 = require("../orders/types");
|
|
6
8
|
const utils_1 = require("../orders/utils");
|
|
@@ -53,21 +55,23 @@ class FulfillmentManager {
|
|
|
53
55
|
}
|
|
54
56
|
/**
|
|
55
57
|
* Fulfill an order for an asset. The order can be either a listing or an offer.
|
|
58
|
+
* Uses the OpenSea API to generate fulfillment transaction data and executes it directly.
|
|
56
59
|
* @param options
|
|
57
60
|
* @param options.order The order to fulfill, a.k.a. "take"
|
|
58
61
|
* @param options.accountAddress Address of the wallet taking the offer.
|
|
59
|
-
* @param options.recipientAddress The optional address to receive the order's item(s) or currencies. If not specified, defaults to accountAddress.
|
|
60
|
-
* @param options.domain An optional domain to be hashed and included at the end of fulfillment calldata. This can be used for on-chain order attribution to assist with analytics.
|
|
61
62
|
* @param options.assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
62
63
|
* @param options.tokenId Optional token ID for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
64
|
+
* @param options.unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
65
|
+
* @param options.recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
63
66
|
* @param options.overrides Transaction overrides, ignored if not set.
|
|
64
67
|
* @returns Transaction hash of the order.
|
|
65
68
|
*
|
|
66
69
|
* @throws Error if the accountAddress is not available through wallet or provider.
|
|
67
70
|
* @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
|
|
68
|
-
* @throws Error if
|
|
71
|
+
* @throws Error if a signer is not provided (read-only providers cannot fulfill orders).
|
|
72
|
+
* @throws Error if the order hash is not available.
|
|
69
73
|
*/
|
|
70
|
-
async fulfillOrder({ order, accountAddress,
|
|
74
|
+
async fulfillOrder({ order, accountAddress, assetContractAddress, tokenId, unitsToFill, recipientAddress, overrides, }) {
|
|
71
75
|
await this.context.requireAccountIsAvailable(accountAddress);
|
|
72
76
|
const protocolAddress = order.protocolAddress ?? order.protocol_address;
|
|
73
77
|
(0, utils_2.requireValidProtocol)(protocolAddress);
|
|
@@ -77,60 +81,67 @@ class FulfillmentManager {
|
|
|
77
81
|
[types_1.OrderType.BASIC, types_1.OrderType.ENGLISH].includes(order.type)
|
|
78
82
|
? types_2.OrderSide.LISTING
|
|
79
83
|
: types_2.OrderSide.OFFER);
|
|
80
|
-
let extraData = undefined;
|
|
81
|
-
const protocolData = order.protocolData ?? order.protocol_data;
|
|
82
|
-
if (orderHash) {
|
|
83
|
-
const result = await this.context.api.generateFulfillmentData(accountAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId);
|
|
84
|
-
// If the order is using offer protection, the extraData
|
|
85
|
-
// must be included with the order to successfully fulfill.
|
|
86
|
-
const inputData = result.fulfillment_data.transaction.input_data;
|
|
87
|
-
if ("orders" in inputData && "extraData" in inputData.orders[0]) {
|
|
88
|
-
extraData = inputData.orders[0].extraData;
|
|
89
|
-
}
|
|
90
|
-
const signature = result.fulfillment_data.orders[0].signature;
|
|
91
|
-
protocolData.signature = signature;
|
|
92
|
-
}
|
|
93
84
|
const isPrivateListing = "taker" in order ? !!order.taker : false;
|
|
94
85
|
if (isPrivateListing) {
|
|
95
|
-
if (recipientAddress) {
|
|
96
|
-
throw new Error("Private listings cannot be fulfilled with a recipient address");
|
|
97
|
-
}
|
|
98
86
|
return this.fulfillPrivateOrder({
|
|
99
87
|
order: order,
|
|
100
88
|
accountAddress,
|
|
101
|
-
domain,
|
|
102
89
|
overrides,
|
|
103
90
|
});
|
|
104
91
|
}
|
|
105
|
-
//
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
if (effectiveUnitsToFill === undefined) {
|
|
109
|
-
if ("remaining_quantity" in order &&
|
|
110
|
-
order.remaining_quantity !== undefined) {
|
|
111
|
-
// For Listing type (API response)
|
|
112
|
-
effectiveUnitsToFill = order.remaining_quantity;
|
|
113
|
-
}
|
|
114
|
-
else if ("remainingQuantity" in order &&
|
|
115
|
-
order.remainingQuantity !== undefined) {
|
|
116
|
-
// For OrderV2 type
|
|
117
|
-
effectiveUnitsToFill = order.remainingQuantity;
|
|
118
|
-
}
|
|
92
|
+
// Get fulfillment data from the API
|
|
93
|
+
if (!orderHash) {
|
|
94
|
+
throw new Error("Order hash is required to fulfill an order");
|
|
119
95
|
}
|
|
120
|
-
|
|
121
|
-
const
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
96
|
+
// Convert unitsToFill to string if provided
|
|
97
|
+
const unitsToFillStr = unitsToFill !== undefined ? unitsToFill.toString() : undefined;
|
|
98
|
+
const fulfillmentData = await this.context.api.generateFulfillmentData(accountAddress, orderHash, protocolAddress, side, assetContractAddress, tokenId, unitsToFillStr, recipientAddress);
|
|
99
|
+
// Use the transaction data returned by the API
|
|
100
|
+
const transaction = fulfillmentData.fulfillment_data.transaction;
|
|
101
|
+
const inputData = transaction.input_data;
|
|
102
|
+
// Use Seaport ABI to encode the transaction
|
|
103
|
+
const seaportInterface = new ethers_1.ethers.Interface(Seaport_1.SeaportABI);
|
|
104
|
+
// Extract function name and build parameters array in correct order
|
|
105
|
+
const functionName = transaction.function.split("(")[0];
|
|
106
|
+
let params;
|
|
107
|
+
// Order parameters based on the function being called
|
|
108
|
+
if (functionName === "fulfillAdvancedOrder" &&
|
|
109
|
+
"advancedOrder" in inputData) {
|
|
110
|
+
params = [
|
|
111
|
+
inputData.advancedOrder,
|
|
112
|
+
inputData.criteriaResolvers || [],
|
|
113
|
+
inputData.fulfillerConduitKey ||
|
|
114
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
115
|
+
inputData.recipient,
|
|
116
|
+
];
|
|
117
|
+
}
|
|
118
|
+
else if (functionName === "fulfillBasicOrder" &&
|
|
119
|
+
"basicOrderParameters" in inputData) {
|
|
120
|
+
params = [inputData.basicOrderParameters];
|
|
121
|
+
}
|
|
122
|
+
else if (functionName === "fulfillOrder" && "order" in inputData) {
|
|
123
|
+
params = [
|
|
124
|
+
inputData.order,
|
|
125
|
+
inputData.fulfillerConduitKey ||
|
|
126
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
127
|
+
inputData.recipient,
|
|
128
|
+
];
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
// Fallback: try to use values in object order
|
|
132
|
+
params = Object.values(inputData);
|
|
133
|
+
}
|
|
134
|
+
const encodedData = seaportInterface.encodeFunctionData(functionName, params);
|
|
135
|
+
// Send the transaction using the signer from context
|
|
136
|
+
const signer = this.context.signerOrProvider;
|
|
137
|
+
const tx = await signer.sendTransaction({
|
|
138
|
+
to: transaction.to,
|
|
139
|
+
value: transaction.value,
|
|
140
|
+
data: encodedData,
|
|
141
|
+
...overrides,
|
|
129
142
|
});
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
await this.context.confirmTransaction(transactionHash, types_2.EventType.MatchOrders, "Fulfilling order");
|
|
133
|
-
return transactionHash;
|
|
143
|
+
await this.context.confirmTransaction(tx.hash, types_2.EventType.MatchOrders, "Fulfilling order");
|
|
144
|
+
return tx.hash;
|
|
134
145
|
}
|
|
135
146
|
/**
|
|
136
147
|
* Returns whether an order is fulfillable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fulfillment.js","sourceRoot":"","sources":["../../src/sdk/fulfillment.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"fulfillment.js","sourceRoot":"","sources":["../../src/sdk/fulfillment.ts"],"names":[],"mappings":"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"}
|
package/lib/sdk.d.ts
CHANGED
|
@@ -251,28 +251,29 @@ export declare class OpenSeaSDK {
|
|
|
251
251
|
}): Promise<CollectionOffer | null>;
|
|
252
252
|
/**
|
|
253
253
|
* Fulfill an order for an asset. The order can be either a listing or an offer.
|
|
254
|
+
* Uses the OpenSea API to generate fulfillment transaction data and executes it directly.
|
|
254
255
|
* @param options
|
|
255
256
|
* @param options.order The order to fulfill, a.k.a. "take"
|
|
256
257
|
* @param options.accountAddress Address of the wallet taking the offer.
|
|
257
|
-
* @param options.recipientAddress The optional address to receive the order's item(s) or currencies. If not specified, defaults to accountAddress.
|
|
258
|
-
* @param options.domain An optional domain to be hashed and included at the end of fulfillment calldata. This can be used for on-chain order attribution to assist with analytics.
|
|
259
258
|
* @param options.assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
260
259
|
* @param options.tokenId Optional token ID for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
260
|
+
* @param options.unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
261
|
+
* @param options.recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
261
262
|
* @param options.overrides Transaction overrides, ignored if not set.
|
|
262
263
|
* @returns Transaction hash of the order.
|
|
263
264
|
*
|
|
264
265
|
* @throws Error if the accountAddress is not available through wallet or provider.
|
|
265
266
|
* @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
|
|
266
|
-
* @throws Error if
|
|
267
|
+
* @throws Error if a signer is not provided (read-only providers cannot fulfill orders).
|
|
268
|
+
* @throws Error if the order hash is not available.
|
|
267
269
|
*/
|
|
268
|
-
fulfillOrder({ order, accountAddress,
|
|
270
|
+
fulfillOrder({ order, accountAddress, assetContractAddress, tokenId, unitsToFill, recipientAddress, overrides, }: {
|
|
269
271
|
order: OrderV2 | Order | Listing | Offer;
|
|
270
272
|
accountAddress: string;
|
|
271
|
-
recipientAddress?: string;
|
|
272
|
-
unitsToFill?: BigNumberish;
|
|
273
|
-
domain?: string;
|
|
274
273
|
assetContractAddress?: string;
|
|
275
274
|
tokenId?: string;
|
|
275
|
+
unitsToFill?: BigNumberish;
|
|
276
|
+
recipientAddress?: string;
|
|
276
277
|
overrides?: Overrides;
|
|
277
278
|
}): Promise<string>;
|
|
278
279
|
/**
|
package/lib/sdk.js
CHANGED
|
@@ -284,29 +284,30 @@ class OpenSeaSDK {
|
|
|
284
284
|
}
|
|
285
285
|
/**
|
|
286
286
|
* Fulfill an order for an asset. The order can be either a listing or an offer.
|
|
287
|
+
* Uses the OpenSea API to generate fulfillment transaction data and executes it directly.
|
|
287
288
|
* @param options
|
|
288
289
|
* @param options.order The order to fulfill, a.k.a. "take"
|
|
289
290
|
* @param options.accountAddress Address of the wallet taking the offer.
|
|
290
|
-
* @param options.recipientAddress The optional address to receive the order's item(s) or currencies. If not specified, defaults to accountAddress.
|
|
291
|
-
* @param options.domain An optional domain to be hashed and included at the end of fulfillment calldata. This can be used for on-chain order attribution to assist with analytics.
|
|
292
291
|
* @param options.assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
293
292
|
* @param options.tokenId Optional token ID for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
293
|
+
* @param options.unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
294
|
+
* @param options.recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
294
295
|
* @param options.overrides Transaction overrides, ignored if not set.
|
|
295
296
|
* @returns Transaction hash of the order.
|
|
296
297
|
*
|
|
297
298
|
* @throws Error if the accountAddress is not available through wallet or provider.
|
|
298
299
|
* @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
|
|
299
|
-
* @throws Error if
|
|
300
|
+
* @throws Error if a signer is not provided (read-only providers cannot fulfill orders).
|
|
301
|
+
* @throws Error if the order hash is not available.
|
|
300
302
|
*/
|
|
301
|
-
async fulfillOrder({ order, accountAddress,
|
|
303
|
+
async fulfillOrder({ order, accountAddress, assetContractAddress, tokenId, unitsToFill, recipientAddress, overrides, }) {
|
|
302
304
|
return this._fulfillmentManager.fulfillOrder({
|
|
303
305
|
order,
|
|
304
306
|
accountAddress,
|
|
305
|
-
recipientAddress,
|
|
306
|
-
unitsToFill,
|
|
307
|
-
domain,
|
|
308
307
|
assetContractAddress,
|
|
309
308
|
tokenId,
|
|
309
|
+
unitsToFill,
|
|
310
|
+
recipientAddress,
|
|
310
311
|
overrides,
|
|
311
312
|
});
|
|
312
313
|
}
|
package/lib/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/api/api.ts
CHANGED
|
@@ -259,6 +259,8 @@ export class OpenSeaAPI {
|
|
|
259
259
|
* @side The side of the order (buy or sell)
|
|
260
260
|
* @param assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers)
|
|
261
261
|
* @param tokenId Optional token ID for criteria offers (e.g., collection offers)
|
|
262
|
+
* @param unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
263
|
+
* @param recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
262
264
|
* @returns The {@link FulfillmentDataResponse}
|
|
263
265
|
*/
|
|
264
266
|
public async generateFulfillmentData(
|
|
@@ -268,6 +270,8 @@ export class OpenSeaAPI {
|
|
|
268
270
|
side: OrderSide,
|
|
269
271
|
assetContractAddress?: string,
|
|
270
272
|
tokenId?: string,
|
|
273
|
+
unitsToFill?: string,
|
|
274
|
+
recipientAddress?: string,
|
|
271
275
|
): Promise<FulfillmentDataResponse> {
|
|
272
276
|
return this.ordersAPI.generateFulfillmentData(
|
|
273
277
|
fulfillerAddress,
|
|
@@ -276,6 +280,8 @@ export class OpenSeaAPI {
|
|
|
276
280
|
side,
|
|
277
281
|
assetContractAddress,
|
|
278
282
|
tokenId,
|
|
283
|
+
unitsToFill,
|
|
284
|
+
recipientAddress,
|
|
279
285
|
);
|
|
280
286
|
}
|
|
281
287
|
|
|
@@ -741,17 +747,6 @@ export class OpenSeaAPI {
|
|
|
741
747
|
})}`,
|
|
742
748
|
);
|
|
743
749
|
|
|
744
|
-
// DEBUG: Log offer and listing requests
|
|
745
|
-
if ((url.includes("/offers") || url.includes("/listings")) && body) {
|
|
746
|
-
const type = url.includes("/offers") ? "OFFER" : "LISTING";
|
|
747
|
-
console.log("\n" + "=".repeat(80));
|
|
748
|
-
console.log(`DEBUG: ${type} REQUEST`);
|
|
749
|
-
console.log("=".repeat(80));
|
|
750
|
-
console.log("URL:", url);
|
|
751
|
-
console.log("BODY:", JSON.stringify(body, null, 2));
|
|
752
|
-
console.log("=".repeat(80) + "\n");
|
|
753
|
-
}
|
|
754
|
-
|
|
755
750
|
const response = await req.send();
|
|
756
751
|
if (!response.ok()) {
|
|
757
752
|
// Handle rate limit errors (429 Too Many Requests and 599 custom rate limit)
|
package/src/api/orders.ts
CHANGED
|
@@ -135,6 +135,8 @@ export class OrdersAPI {
|
|
|
135
135
|
side: OrderSide,
|
|
136
136
|
assetContractAddress?: string,
|
|
137
137
|
tokenId?: string,
|
|
138
|
+
unitsToFill?: string,
|
|
139
|
+
recipientAddress?: string,
|
|
138
140
|
): Promise<FulfillmentDataResponse> {
|
|
139
141
|
let payload: object | null = null;
|
|
140
142
|
if (side === OrderSide.LISTING) {
|
|
@@ -145,6 +147,8 @@ export class OrdersAPI {
|
|
|
145
147
|
this.chain,
|
|
146
148
|
assetContractAddress,
|
|
147
149
|
tokenId,
|
|
150
|
+
unitsToFill,
|
|
151
|
+
recipientAddress,
|
|
148
152
|
);
|
|
149
153
|
} else {
|
|
150
154
|
payload = getFulfillOfferPayload(
|
|
@@ -154,6 +158,7 @@ export class OrdersAPI {
|
|
|
154
158
|
this.chain,
|
|
155
159
|
assetContractAddress,
|
|
156
160
|
tokenId,
|
|
161
|
+
unitsToFill,
|
|
157
162
|
);
|
|
158
163
|
}
|
|
159
164
|
const response = await this.fetcher.post<FulfillmentDataResponse>(
|
package/src/api/types.ts
CHANGED
|
@@ -94,6 +94,18 @@ export enum CollectionOrderByOption {
|
|
|
94
94
|
MARKET_CAP = "market_cap",
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
+
/**
|
|
98
|
+
* Order status enum.
|
|
99
|
+
* @category API Models
|
|
100
|
+
*/
|
|
101
|
+
export enum OrderStatus {
|
|
102
|
+
ACTIVE = "active",
|
|
103
|
+
INACTIVE = "inactive",
|
|
104
|
+
FULFILLED = "fulfilled",
|
|
105
|
+
EXPIRED = "expired",
|
|
106
|
+
CANCELLED = "cancelled",
|
|
107
|
+
}
|
|
108
|
+
|
|
97
109
|
/**
|
|
98
110
|
* Base Order type shared between Listings and Offers.
|
|
99
111
|
* @category API Models
|
|
@@ -118,6 +130,8 @@ export type Order = {
|
|
|
118
130
|
export type Offer = Order & {
|
|
119
131
|
/** The criteria for the offer if it is a collection or trait offer. */
|
|
120
132
|
criteria?: Criteria;
|
|
133
|
+
/** The status of the offer. */
|
|
134
|
+
status: OrderStatus;
|
|
121
135
|
};
|
|
122
136
|
|
|
123
137
|
/**
|
|
@@ -149,6 +163,8 @@ export type Listing = Omit<Order, "price"> & {
|
|
|
149
163
|
};
|
|
150
164
|
/** The remaining quantity available for the listing. This is important for partially filled orders. */
|
|
151
165
|
remaining_quantity: number;
|
|
166
|
+
/** The status of the listing. */
|
|
167
|
+
status: OrderStatus;
|
|
152
168
|
};
|
|
153
169
|
|
|
154
170
|
/**
|
package/src/orders/types.ts
CHANGED
|
@@ -80,9 +80,31 @@ type Transaction = {
|
|
|
80
80
|
chain: number;
|
|
81
81
|
to: string;
|
|
82
82
|
value: number;
|
|
83
|
-
input_data:
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
input_data:
|
|
84
|
+
| {
|
|
85
|
+
// For fulfillAdvancedOrder
|
|
86
|
+
advancedOrder: AdvancedOrder;
|
|
87
|
+
criteriaResolvers?: unknown[];
|
|
88
|
+
fulfillerConduitKey?: string;
|
|
89
|
+
recipient: string;
|
|
90
|
+
}
|
|
91
|
+
| {
|
|
92
|
+
// For fulfillBasicOrder
|
|
93
|
+
basicOrderParameters: BasicOrderParametersStruct;
|
|
94
|
+
}
|
|
95
|
+
| {
|
|
96
|
+
// For fulfillOrder
|
|
97
|
+
order: OrderWithCounter;
|
|
98
|
+
fulfillerConduitKey?: string;
|
|
99
|
+
recipient: string;
|
|
100
|
+
}
|
|
101
|
+
| {
|
|
102
|
+
// Legacy: for backward compatibility
|
|
103
|
+
orders:
|
|
104
|
+
| OrderWithCounter[]
|
|
105
|
+
| AdvancedOrder[]
|
|
106
|
+
| BasicOrderParametersStruct[];
|
|
107
|
+
};
|
|
86
108
|
};
|
|
87
109
|
|
|
88
110
|
// API query types
|
package/src/orders/utils.ts
CHANGED
|
@@ -75,6 +75,8 @@ export const getFulfillListingPayload = (
|
|
|
75
75
|
chain: Chain,
|
|
76
76
|
assetContractAddress?: string,
|
|
77
77
|
tokenId?: string,
|
|
78
|
+
unitsToFill?: string,
|
|
79
|
+
recipientAddress?: string,
|
|
78
80
|
) => {
|
|
79
81
|
const payload: {
|
|
80
82
|
listing: {
|
|
@@ -89,6 +91,8 @@ export const getFulfillListingPayload = (
|
|
|
89
91
|
asset_contract_address: string;
|
|
90
92
|
token_id: string;
|
|
91
93
|
};
|
|
94
|
+
units_to_fill?: string;
|
|
95
|
+
recipient?: string;
|
|
92
96
|
} = {
|
|
93
97
|
listing: {
|
|
94
98
|
hash: order_hash,
|
|
@@ -108,6 +112,16 @@ export const getFulfillListingPayload = (
|
|
|
108
112
|
};
|
|
109
113
|
}
|
|
110
114
|
|
|
115
|
+
// Add optional units_to_fill
|
|
116
|
+
if (unitsToFill !== undefined) {
|
|
117
|
+
payload.units_to_fill = unitsToFill;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// Add optional recipient for listings
|
|
121
|
+
if (recipientAddress) {
|
|
122
|
+
payload.recipient = recipientAddress;
|
|
123
|
+
}
|
|
124
|
+
|
|
111
125
|
return payload;
|
|
112
126
|
};
|
|
113
127
|
|
|
@@ -118,6 +132,7 @@ export const getFulfillOfferPayload = (
|
|
|
118
132
|
chain: Chain,
|
|
119
133
|
assetContractAddress?: string,
|
|
120
134
|
tokenId?: string,
|
|
135
|
+
unitsToFill?: string,
|
|
121
136
|
) => {
|
|
122
137
|
const payload: {
|
|
123
138
|
offer: {
|
|
@@ -132,6 +147,7 @@ export const getFulfillOfferPayload = (
|
|
|
132
147
|
asset_contract_address: string;
|
|
133
148
|
token_id: string;
|
|
134
149
|
};
|
|
150
|
+
units_to_fill?: string;
|
|
135
151
|
} = {
|
|
136
152
|
offer: {
|
|
137
153
|
hash: order_hash,
|
|
@@ -151,6 +167,11 @@ export const getFulfillOfferPayload = (
|
|
|
151
167
|
};
|
|
152
168
|
}
|
|
153
169
|
|
|
170
|
+
// Add optional units_to_fill for offers
|
|
171
|
+
if (unitsToFill !== undefined) {
|
|
172
|
+
payload.units_to_fill = unitsToFill;
|
|
173
|
+
}
|
|
174
|
+
|
|
154
175
|
return payload;
|
|
155
176
|
};
|
|
156
177
|
|
|
@@ -168,7 +189,9 @@ export const serializeOrdersQueryOptions = (
|
|
|
168
189
|
owner: options.owner,
|
|
169
190
|
listed_after: options.listedAfter,
|
|
170
191
|
listed_before: options.listedBefore,
|
|
171
|
-
token_ids:
|
|
192
|
+
token_ids:
|
|
193
|
+
options.tokenIds ??
|
|
194
|
+
(options.tokenId !== undefined ? [options.tokenId] : undefined),
|
|
172
195
|
asset_contract_address: options.assetContractAddress,
|
|
173
196
|
order_by: options.orderBy,
|
|
174
197
|
order_direction: options.orderDirection,
|
package/src/sdk/fulfillment.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { SeaportABI } from "@opensea/seaport-js/lib/abi/Seaport";
|
|
2
|
+
import { OrderComponents } from "@opensea/seaport-js/lib/types";
|
|
3
|
+
import { BigNumberish, Overrides, Signer, ethers } from "ethers";
|
|
3
4
|
import { SDKContext } from "./context";
|
|
4
5
|
import { OrdersManager } from "./orders";
|
|
5
6
|
import { Listing, Offer, Order } from "../api/types";
|
|
@@ -88,37 +89,37 @@ export class FulfillmentManager {
|
|
|
88
89
|
|
|
89
90
|
/**
|
|
90
91
|
* Fulfill an order for an asset. The order can be either a listing or an offer.
|
|
92
|
+
* Uses the OpenSea API to generate fulfillment transaction data and executes it directly.
|
|
91
93
|
* @param options
|
|
92
94
|
* @param options.order The order to fulfill, a.k.a. "take"
|
|
93
95
|
* @param options.accountAddress Address of the wallet taking the offer.
|
|
94
|
-
* @param options.recipientAddress The optional address to receive the order's item(s) or currencies. If not specified, defaults to accountAddress.
|
|
95
|
-
* @param options.domain An optional domain to be hashed and included at the end of fulfillment calldata. This can be used for on-chain order attribution to assist with analytics.
|
|
96
96
|
* @param options.assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
97
97
|
* @param options.tokenId Optional token ID for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
98
|
+
* @param options.unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
99
|
+
* @param options.recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
98
100
|
* @param options.overrides Transaction overrides, ignored if not set.
|
|
99
101
|
* @returns Transaction hash of the order.
|
|
100
102
|
*
|
|
101
103
|
* @throws Error if the accountAddress is not available through wallet or provider.
|
|
102
104
|
* @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
|
|
103
|
-
* @throws Error if
|
|
105
|
+
* @throws Error if a signer is not provided (read-only providers cannot fulfill orders).
|
|
106
|
+
* @throws Error if the order hash is not available.
|
|
104
107
|
*/
|
|
105
108
|
async fulfillOrder({
|
|
106
109
|
order,
|
|
107
110
|
accountAddress,
|
|
108
|
-
recipientAddress,
|
|
109
|
-
unitsToFill,
|
|
110
|
-
domain,
|
|
111
111
|
assetContractAddress,
|
|
112
112
|
tokenId,
|
|
113
|
+
unitsToFill,
|
|
114
|
+
recipientAddress,
|
|
113
115
|
overrides,
|
|
114
116
|
}: {
|
|
115
117
|
order: OrderV2 | Order | Listing | Offer;
|
|
116
118
|
accountAddress: string;
|
|
117
|
-
recipientAddress?: string;
|
|
118
|
-
unitsToFill?: BigNumberish;
|
|
119
|
-
domain?: string;
|
|
120
119
|
assetContractAddress?: string;
|
|
121
120
|
tokenId?: string;
|
|
121
|
+
unitsToFill?: BigNumberish;
|
|
122
|
+
recipientAddress?: string;
|
|
122
123
|
overrides?: Overrides;
|
|
123
124
|
}): Promise<string> {
|
|
124
125
|
await this.context.requireAccountIsAvailable(accountAddress);
|
|
@@ -137,86 +138,95 @@ export class FulfillmentManager {
|
|
|
137
138
|
? OrderSide.LISTING
|
|
138
139
|
: OrderSide.OFFER);
|
|
139
140
|
|
|
140
|
-
let extraData: string | undefined = undefined;
|
|
141
|
-
|
|
142
|
-
const protocolData =
|
|
143
|
-
(order as OrderV2).protocolData ?? (order as Order).protocol_data;
|
|
144
|
-
|
|
145
|
-
if (orderHash) {
|
|
146
|
-
const result = await this.context.api.generateFulfillmentData(
|
|
147
|
-
accountAddress,
|
|
148
|
-
orderHash,
|
|
149
|
-
protocolAddress,
|
|
150
|
-
side,
|
|
151
|
-
assetContractAddress,
|
|
152
|
-
tokenId,
|
|
153
|
-
);
|
|
154
|
-
|
|
155
|
-
// If the order is using offer protection, the extraData
|
|
156
|
-
// must be included with the order to successfully fulfill.
|
|
157
|
-
const inputData = result.fulfillment_data.transaction.input_data;
|
|
158
|
-
if ("orders" in inputData && "extraData" in inputData.orders[0]) {
|
|
159
|
-
extraData = (inputData.orders[0] as AdvancedOrder).extraData;
|
|
160
|
-
}
|
|
161
|
-
const signature = result.fulfillment_data.orders[0].signature;
|
|
162
|
-
protocolData.signature = signature;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
141
|
const isPrivateListing = "taker" in order ? !!order.taker : false;
|
|
166
142
|
if (isPrivateListing) {
|
|
167
|
-
if (recipientAddress) {
|
|
168
|
-
throw new Error(
|
|
169
|
-
"Private listings cannot be fulfilled with a recipient address",
|
|
170
|
-
);
|
|
171
|
-
}
|
|
172
143
|
return this.fulfillPrivateOrder({
|
|
173
144
|
order: order as OrderV2,
|
|
174
145
|
accountAddress,
|
|
175
|
-
domain,
|
|
176
146
|
overrides,
|
|
177
147
|
});
|
|
178
148
|
}
|
|
179
149
|
|
|
180
|
-
//
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
if (effectiveUnitsToFill === undefined) {
|
|
184
|
-
if (
|
|
185
|
-
"remaining_quantity" in order &&
|
|
186
|
-
order.remaining_quantity !== undefined
|
|
187
|
-
) {
|
|
188
|
-
// For Listing type (API response)
|
|
189
|
-
effectiveUnitsToFill = order.remaining_quantity;
|
|
190
|
-
} else if (
|
|
191
|
-
"remainingQuantity" in order &&
|
|
192
|
-
order.remainingQuantity !== undefined
|
|
193
|
-
) {
|
|
194
|
-
// For OrderV2 type
|
|
195
|
-
effectiveUnitsToFill = order.remainingQuantity;
|
|
196
|
-
}
|
|
150
|
+
// Get fulfillment data from the API
|
|
151
|
+
if (!orderHash) {
|
|
152
|
+
throw new Error("Order hash is required to fulfill an order");
|
|
197
153
|
}
|
|
198
154
|
|
|
199
|
-
|
|
200
|
-
const
|
|
201
|
-
|
|
155
|
+
// Convert unitsToFill to string if provided
|
|
156
|
+
const unitsToFillStr =
|
|
157
|
+
unitsToFill !== undefined ? unitsToFill.toString() : undefined;
|
|
158
|
+
|
|
159
|
+
const fulfillmentData = await this.context.api.generateFulfillmentData(
|
|
202
160
|
accountAddress,
|
|
161
|
+
orderHash,
|
|
162
|
+
protocolAddress,
|
|
163
|
+
side,
|
|
164
|
+
assetContractAddress,
|
|
165
|
+
tokenId,
|
|
166
|
+
unitsToFillStr,
|
|
203
167
|
recipientAddress,
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
168
|
+
);
|
|
169
|
+
|
|
170
|
+
// Use the transaction data returned by the API
|
|
171
|
+
const transaction = fulfillmentData.fulfillment_data.transaction;
|
|
172
|
+
const inputData = transaction.input_data;
|
|
173
|
+
|
|
174
|
+
// Use Seaport ABI to encode the transaction
|
|
175
|
+
const seaportInterface = new ethers.Interface(SeaportABI);
|
|
176
|
+
|
|
177
|
+
// Extract function name and build parameters array in correct order
|
|
178
|
+
const functionName = transaction.function.split("(")[0];
|
|
179
|
+
let params: unknown[];
|
|
180
|
+
|
|
181
|
+
// Order parameters based on the function being called
|
|
182
|
+
if (
|
|
183
|
+
functionName === "fulfillAdvancedOrder" &&
|
|
184
|
+
"advancedOrder" in inputData
|
|
185
|
+
) {
|
|
186
|
+
params = [
|
|
187
|
+
inputData.advancedOrder,
|
|
188
|
+
inputData.criteriaResolvers || [],
|
|
189
|
+
inputData.fulfillerConduitKey ||
|
|
190
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
191
|
+
inputData.recipient,
|
|
192
|
+
];
|
|
193
|
+
} else if (
|
|
194
|
+
functionName === "fulfillBasicOrder" &&
|
|
195
|
+
"basicOrderParameters" in inputData
|
|
196
|
+
) {
|
|
197
|
+
params = [inputData.basicOrderParameters];
|
|
198
|
+
} else if (functionName === "fulfillOrder" && "order" in inputData) {
|
|
199
|
+
params = [
|
|
200
|
+
inputData.order,
|
|
201
|
+
inputData.fulfillerConduitKey ||
|
|
202
|
+
"0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
203
|
+
inputData.recipient,
|
|
204
|
+
];
|
|
205
|
+
} else {
|
|
206
|
+
// Fallback: try to use values in object order
|
|
207
|
+
params = Object.values(inputData);
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
const encodedData = seaportInterface.encodeFunctionData(
|
|
211
|
+
functionName,
|
|
212
|
+
params,
|
|
213
|
+
);
|
|
214
|
+
|
|
215
|
+
// Send the transaction using the signer from context
|
|
216
|
+
const signer = this.context.signerOrProvider as Signer;
|
|
217
|
+
const tx = await signer.sendTransaction({
|
|
218
|
+
to: transaction.to,
|
|
219
|
+
value: transaction.value,
|
|
220
|
+
data: encodedData,
|
|
221
|
+
...overrides,
|
|
208
222
|
});
|
|
209
|
-
const result = (await executeAllActions()) as
|
|
210
|
-
| ContractTransactionResponse
|
|
211
|
-
| string;
|
|
212
|
-
const transactionHash = typeof result === "string" ? result : result.hash;
|
|
213
223
|
|
|
214
224
|
await this.context.confirmTransaction(
|
|
215
|
-
|
|
225
|
+
tx.hash,
|
|
216
226
|
EventType.MatchOrders,
|
|
217
227
|
"Fulfilling order",
|
|
218
228
|
);
|
|
219
|
-
return
|
|
229
|
+
return tx.hash;
|
|
220
230
|
}
|
|
221
231
|
|
|
222
232
|
/**
|
package/src/sdk.ts
CHANGED
|
@@ -478,47 +478,46 @@ export class OpenSeaSDK {
|
|
|
478
478
|
|
|
479
479
|
/**
|
|
480
480
|
* Fulfill an order for an asset. The order can be either a listing or an offer.
|
|
481
|
+
* Uses the OpenSea API to generate fulfillment transaction data and executes it directly.
|
|
481
482
|
* @param options
|
|
482
483
|
* @param options.order The order to fulfill, a.k.a. "take"
|
|
483
484
|
* @param options.accountAddress Address of the wallet taking the offer.
|
|
484
|
-
* @param options.recipientAddress The optional address to receive the order's item(s) or currencies. If not specified, defaults to accountAddress.
|
|
485
|
-
* @param options.domain An optional domain to be hashed and included at the end of fulfillment calldata. This can be used for on-chain order attribution to assist with analytics.
|
|
486
485
|
* @param options.assetContractAddress Optional address of the NFT contract for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
487
486
|
* @param options.tokenId Optional token ID for criteria offers (e.g., collection offers). Required when fulfilling collection offers.
|
|
487
|
+
* @param options.unitsToFill Optional number of units to fill. For listings, defaults to remaining quantity. For offers, defaults to 1.
|
|
488
|
+
* @param options.recipientAddress Optional recipient address for the NFT when fulfilling a listing. Not applicable for offers.
|
|
488
489
|
* @param options.overrides Transaction overrides, ignored if not set.
|
|
489
490
|
* @returns Transaction hash of the order.
|
|
490
491
|
*
|
|
491
492
|
* @throws Error if the accountAddress is not available through wallet or provider.
|
|
492
493
|
* @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
|
|
493
|
-
* @throws Error if
|
|
494
|
+
* @throws Error if a signer is not provided (read-only providers cannot fulfill orders).
|
|
495
|
+
* @throws Error if the order hash is not available.
|
|
494
496
|
*/
|
|
495
497
|
public async fulfillOrder({
|
|
496
498
|
order,
|
|
497
499
|
accountAddress,
|
|
498
|
-
recipientAddress,
|
|
499
|
-
unitsToFill,
|
|
500
|
-
domain,
|
|
501
500
|
assetContractAddress,
|
|
502
501
|
tokenId,
|
|
502
|
+
unitsToFill,
|
|
503
|
+
recipientAddress,
|
|
503
504
|
overrides,
|
|
504
505
|
}: {
|
|
505
506
|
order: OrderV2 | Order | Listing | Offer;
|
|
506
507
|
accountAddress: string;
|
|
507
|
-
recipientAddress?: string;
|
|
508
|
-
unitsToFill?: BigNumberish;
|
|
509
|
-
domain?: string;
|
|
510
508
|
assetContractAddress?: string;
|
|
511
509
|
tokenId?: string;
|
|
510
|
+
unitsToFill?: BigNumberish;
|
|
511
|
+
recipientAddress?: string;
|
|
512
512
|
overrides?: Overrides;
|
|
513
513
|
}): Promise<string> {
|
|
514
514
|
return this._fulfillmentManager.fulfillOrder({
|
|
515
515
|
order,
|
|
516
516
|
accountAddress,
|
|
517
|
-
recipientAddress,
|
|
518
|
-
unitsToFill,
|
|
519
|
-
domain,
|
|
520
517
|
assetContractAddress,
|
|
521
518
|
tokenId,
|
|
519
|
+
unitsToFill,
|
|
520
|
+
recipientAddress,
|
|
522
521
|
overrides,
|
|
523
522
|
});
|
|
524
523
|
}
|