opensea-js 7.2.0 → 7.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/sdk.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { Seaport } from "@opensea/seaport-js";
2
+ import { OrderComponents } from "@opensea/seaport-js/lib/types";
2
3
  import { BigNumberish, Overrides, Signer, JsonRpcProvider } from "ethers";
3
4
  import { OpenSeaAPI } from "./api/api";
4
5
  import { CollectionOffer, Order } from "./api/types";
@@ -82,6 +83,30 @@ export declare class OpenSeaSDK {
82
83
  accountAddress: string;
83
84
  }): Promise<void>;
84
85
  private getAmountWithBasisPointsApplied;
86
+ /**
87
+ * Build listing order without submitting to API
88
+ * @param options Listing parameters
89
+ * @returns OrderWithCounter ready for API submission or onchain validation
90
+ */
91
+ private _buildListingOrder;
92
+ /**
93
+ * Build listing order components without submitting to API
94
+ * @param options Listing parameters
95
+ * @returns OrderComponents ready for onchain validation
96
+ */
97
+ private _buildListingOrderComponents;
98
+ /**
99
+ * Build offer order without submitting to API
100
+ * @param options Offer parameters
101
+ * @returns OrderWithCounter ready for API submission or onchain validation
102
+ */
103
+ private _buildOfferOrder;
104
+ /**
105
+ * Build offer order components without submitting to API
106
+ * @param options Offer parameters
107
+ * @returns OrderComponents ready for onchain validation
108
+ */
109
+ private _buildOfferOrderComponents;
85
110
  private getFees;
86
111
  private isNotMarketplaceFee;
87
112
  private getNFTItems;
@@ -96,7 +121,6 @@ export declare class OpenSeaSDK {
96
121
  * @param options.salt Arbitrary salt. If not passed in, a random salt will be generated with the first four bytes being the domain hash or empty.
97
122
  * @param options.expirationTime Expiration time for the order, in UTC seconds
98
123
  * @param options.paymentTokenAddress ERC20 address for the payment token in the order. If unspecified, defaults to WETH
99
- * @param options.excludeOptionalCreatorFees If true, optional creator fees will be excluded from the offer. Default: true.
100
124
  * @param options.zone The zone to use for the order. If unspecified, defaults to the chain's signed zone for order protection.
101
125
  *
102
126
  * @returns The {@link OrderV2} that was created.
@@ -106,7 +130,7 @@ export declare class OpenSeaSDK {
106
130
  * @throws Error if the startAmount is not greater than 0.
107
131
  * @throws Error if paymentTokenAddress is not WETH on anything other than Ethereum mainnet.
108
132
  */
109
- createOffer({ asset, accountAddress, startAmount, quantity, domain, salt, expirationTime, paymentTokenAddress, excludeOptionalCreatorFees, zone, }: {
133
+ createOffer({ asset, accountAddress, startAmount, quantity, domain, salt, expirationTime, paymentTokenAddress, zone, }: {
110
134
  asset: AssetWithTokenId;
111
135
  accountAddress: string;
112
136
  startAmount: BigNumberish;
@@ -115,7 +139,6 @@ export declare class OpenSeaSDK {
115
139
  salt?: BigNumberish;
116
140
  expirationTime?: BigNumberish;
117
141
  paymentTokenAddress?: string;
118
- excludeOptionalCreatorFees?: boolean;
119
142
  zone?: string;
120
143
  }): Promise<OrderV2>;
121
144
  /**
@@ -133,7 +156,6 @@ export declare class OpenSeaSDK {
133
156
  * @param options.paymentTokenAddress ERC20 address for the payment token in the order. If unspecified, defaults to ETH
134
157
  * @param options.buyerAddress Optional address that's allowed to purchase this item. If specified, no other address will be able to take the order, unless its value is the null address.
135
158
  * @param options.englishAuction If true, the order will be listed as an English auction.
136
- * @param options.excludeOptionalCreatorFees If true, optional creator fees will be excluded from the listing. Default: false.
137
159
  * @param options.zone The zone to use for the order. For order protection, pass SIGNED_ZONE. If unspecified, defaults to no zone.
138
160
  * @returns The {@link OrderV2} that was created.
139
161
  *
@@ -142,7 +164,7 @@ export declare class OpenSeaSDK {
142
164
  * @throws Error if the startAmount is not greater than 0.
143
165
  * @throws Error if paymentTokenAddress is not WETH on anything other than Ethereum mainnet.
144
166
  */
145
- createListing({ asset, accountAddress, startAmount, endAmount, quantity, domain, salt, listingTime, expirationTime, paymentTokenAddress, buyerAddress, englishAuction, excludeOptionalCreatorFees, zone, }: {
167
+ createListing({ asset, accountAddress, startAmount, endAmount, quantity, domain, salt, listingTime, expirationTime, paymentTokenAddress, buyerAddress, englishAuction, zone, }: {
146
168
  asset: AssetWithTokenId;
147
169
  accountAddress: string;
148
170
  startAmount: BigNumberish;
@@ -155,7 +177,6 @@ export declare class OpenSeaSDK {
155
177
  paymentTokenAddress?: string;
156
178
  buyerAddress?: string;
157
179
  englishAuction?: boolean;
158
- excludeOptionalCreatorFees?: boolean;
159
180
  zone?: string;
160
181
  }): Promise<OrderV2>;
161
182
  /**
@@ -169,13 +190,12 @@ export declare class OpenSeaSDK {
169
190
  * @param options.salt Arbitrary salt. If not passed in, a random salt will be generated with the first four bytes being the domain hash or empty.
170
191
  * @param options.expirationTime Expiration time for the order, in UTC seconds.
171
192
  * @param options.paymentTokenAddress ERC20 address for the payment token in the order. If unspecified, defaults to WETH.
172
- * @param options.excludeOptionalCreatorFees If true, optional creator fees will be excluded from the offer. Default: false.
173
193
  * @param options.offerProtectionEnabled Build the offer on OpenSea's signed zone to provide offer protections from receiving an item which is disabled from trading.
174
194
  * @param options.traitType If defined, the trait name to create the collection offer for.
175
195
  * @param options.traitValue If defined, the trait value to create the collection offer for.
176
196
  * @returns The {@link CollectionOffer} that was created.
177
197
  */
178
- createCollectionOffer({ collectionSlug, accountAddress, amount, quantity, domain, salt, expirationTime, paymentTokenAddress, excludeOptionalCreatorFees, offerProtectionEnabled, traitType, traitValue, }: {
198
+ createCollectionOffer({ collectionSlug, accountAddress, amount, quantity, domain, salt, expirationTime, paymentTokenAddress, offerProtectionEnabled, traitType, traitValue, }: {
179
199
  collectionSlug: string;
180
200
  accountAddress: string;
181
201
  amount: BigNumberish;
@@ -184,7 +204,6 @@ export declare class OpenSeaSDK {
184
204
  salt?: BigNumberish;
185
205
  expirationTime?: number | string;
186
206
  paymentTokenAddress: string;
187
- excludeOptionalCreatorFees?: boolean;
188
207
  offerProtectionEnabled?: boolean;
189
208
  traitType?: string;
190
209
  traitValue?: string;
@@ -330,6 +349,56 @@ export declare class OpenSeaSDK {
330
349
  * @throws Error if the order's protocol address is not supported by OpenSea. See {@link isValidProtocol}.
331
350
  */
332
351
  approveOrder(order: OrderV2, domain?: string): Promise<string>;
352
+ /**
353
+ * Validates an order onchain using Seaport's validate() method. This submits the order onchain
354
+ * and pre-validates the order using Seaport, which makes it cheaper to fulfill since a signature
355
+ * is not needed to be verified during fulfillment for the order, but is not strictly required
356
+ * and the alternative is orders can be submitted to the API for free instead of sent onchain.
357
+ * @param orderComponents Order components to validate onchain
358
+ * @param accountAddress Address of the wallet that will pay the gas to validate the order
359
+ * @returns Transaction hash of the validation transaction
360
+ *
361
+ * @throws Error if the accountAddress is not available through wallet or provider.
362
+ */
363
+ validateOrderOnchain(orderComponents: OrderComponents, accountAddress: string): Promise<string>;
364
+ /**
365
+ * Create and validate a listing onchain using Seaport's validate() method. This combines
366
+ * order building with onchain validation in a single call.
367
+ * @param options Listing parameters
368
+ * @returns Transaction hash of the validation transaction
369
+ */
370
+ createListingAndValidateOnchain({ asset, accountAddress, startAmount, endAmount, quantity, domain, salt, listingTime, expirationTime, paymentTokenAddress, buyerAddress, englishAuction, zone, }: {
371
+ asset: AssetWithTokenId;
372
+ accountAddress: string;
373
+ startAmount: BigNumberish;
374
+ endAmount?: BigNumberish;
375
+ quantity?: BigNumberish;
376
+ domain?: string;
377
+ salt?: BigNumberish;
378
+ listingTime?: number;
379
+ expirationTime?: number;
380
+ paymentTokenAddress?: string;
381
+ buyerAddress?: string;
382
+ englishAuction?: boolean;
383
+ zone?: string;
384
+ }): Promise<string>;
385
+ /**
386
+ * Create and validate an offer onchain using Seaport's validate() method. This combines
387
+ * order building with onchain validation in a single call.
388
+ * @param options Offer parameters
389
+ * @returns Transaction hash of the validation transaction
390
+ */
391
+ createOfferAndValidateOnchain({ asset, accountAddress, startAmount, quantity, domain, salt, expirationTime, paymentTokenAddress, zone, }: {
392
+ asset: AssetWithTokenId;
393
+ accountAddress: string;
394
+ startAmount: BigNumberish;
395
+ quantity?: BigNumberish;
396
+ domain?: string;
397
+ salt?: BigNumberish;
398
+ expirationTime?: BigNumberish;
399
+ paymentTokenAddress?: string;
400
+ zone?: string;
401
+ }): Promise<string>;
333
402
  /**
334
403
  * Compute the `basePrice` and `endPrice` parameters to be used to price an order.
335
404
  * Also validates the expiration time and auction type.
package/lib/sdk.js CHANGED
@@ -143,11 +143,136 @@ class OpenSeaSDK {
143
143
  this._dispatch(types_2.EventType.TransactionDenied, { error, accountAddress });
144
144
  }
145
145
  }
146
- async getFees({ collection, seller, paymentTokenAddress, startAmount, endAmount, excludeOptionalCreatorFees, isPrivateListing = false, }) {
147
- let collectionFees = collection.fees;
148
- if (excludeOptionalCreatorFees) {
149
- collectionFees = collectionFees.filter((fee) => fee.required);
146
+ /**
147
+ * Build listing order without submitting to API
148
+ * @param options Listing parameters
149
+ * @returns OrderWithCounter ready for API submission or onchain validation
150
+ */
151
+ async _buildListingOrder({ asset, accountAddress, startAmount, endAmount, quantity = 1, domain, salt, listingTime, expirationTime, paymentTokenAddress = (0, utils_2.getListingPaymentToken)(this.chain), buyerAddress, englishAuction, zone = ethers_1.ZeroAddress, }) {
152
+ await this._requireAccountIsAvailable(accountAddress);
153
+ const { nft } = await this.api.getNFT(asset.tokenAddress, asset.tokenId);
154
+ const offerAssetItems = this.getNFTItems([nft], [BigInt(quantity ?? 1)]);
155
+ if (englishAuction) {
156
+ throw new Error("English auctions are no longer supported on OpenSea");
150
157
  }
158
+ if (englishAuction && paymentTokenAddress == ethers_1.ethers.ZeroAddress) {
159
+ throw new Error(`English auctions must use wrapped ETH or an ERC-20 token.`);
160
+ }
161
+ const { basePrice, endPrice } = await this._getPriceParameters(types_2.OrderSide.LISTING, paymentTokenAddress, expirationTime ?? (0, utils_2.getMaxOrderExpirationTimestamp)(), startAmount, endAmount ?? undefined);
162
+ const collection = await this.api.getCollection(nft.collection);
163
+ const considerationFeeItems = await this.getFees({
164
+ collection,
165
+ seller: accountAddress,
166
+ paymentTokenAddress,
167
+ startAmount: basePrice,
168
+ endAmount: endPrice,
169
+ isPrivateListing: !!buyerAddress,
170
+ });
171
+ if (buyerAddress) {
172
+ considerationFeeItems.push(...(0, privateListings_1.getPrivateListingConsiderations)(offerAssetItems, buyerAddress));
173
+ }
174
+ if (englishAuction) {
175
+ zone = constants_2.ENGLISH_AUCTION_ZONE_MAINNETS;
176
+ }
177
+ else if (collection.requiredZone) {
178
+ zone = collection.requiredZone;
179
+ }
180
+ const { executeAllActions } = await this.seaport_v1_6.createOrder({
181
+ offer: offerAssetItems,
182
+ consideration: considerationFeeItems,
183
+ startTime: listingTime?.toString(),
184
+ endTime: expirationTime?.toString() ??
185
+ (0, utils_2.getMaxOrderExpirationTimestamp)().toString(),
186
+ zone,
187
+ domain,
188
+ salt: BigInt(salt ?? 0).toString(),
189
+ restrictedByZone: zone !== ethers_1.ZeroAddress,
190
+ allowPartialFills: englishAuction ? false : true,
191
+ }, accountAddress);
192
+ return executeAllActions();
193
+ }
194
+ /**
195
+ * Build listing order components without submitting to API
196
+ * @param options Listing parameters
197
+ * @returns OrderComponents ready for onchain validation
198
+ */
199
+ async _buildListingOrderComponents({ asset, accountAddress, startAmount, endAmount, quantity = 1, domain, salt, listingTime, expirationTime, paymentTokenAddress = (0, utils_2.getListingPaymentToken)(this.chain), buyerAddress, englishAuction, zone = ethers_1.ZeroAddress, }) {
200
+ const order = await this._buildListingOrder({
201
+ asset,
202
+ accountAddress,
203
+ startAmount,
204
+ endAmount,
205
+ quantity,
206
+ domain,
207
+ salt,
208
+ listingTime,
209
+ expirationTime,
210
+ paymentTokenAddress,
211
+ buyerAddress,
212
+ englishAuction,
213
+ zone,
214
+ });
215
+ return order.parameters;
216
+ }
217
+ /**
218
+ * Build offer order without submitting to API
219
+ * @param options Offer parameters
220
+ * @returns OrderWithCounter ready for API submission or onchain validation
221
+ */
222
+ async _buildOfferOrder({ asset, accountAddress, startAmount, quantity = 1, domain, salt, expirationTime, paymentTokenAddress = (0, utils_2.getOfferPaymentToken)(this.chain), zone = (0, utils_2.getSignedZone)(this.chain), }) {
223
+ await this._requireAccountIsAvailable(accountAddress);
224
+ const { nft } = await this.api.getNFT(asset.tokenAddress, asset.tokenId);
225
+ const considerationAssetItems = this.getNFTItems([nft], [BigInt(quantity ?? 1)]);
226
+ const { basePrice } = await this._getPriceParameters(types_2.OrderSide.OFFER, paymentTokenAddress, expirationTime ?? (0, utils_2.getMaxOrderExpirationTimestamp)(), startAmount);
227
+ const collection = await this.api.getCollection(nft.collection);
228
+ const considerationFeeItems = await this.getFees({
229
+ collection,
230
+ paymentTokenAddress,
231
+ startAmount: basePrice,
232
+ });
233
+ if (collection.requiredZone) {
234
+ zone = collection.requiredZone;
235
+ }
236
+ const { executeAllActions } = await this.seaport_v1_6.createOrder({
237
+ offer: [
238
+ {
239
+ token: paymentTokenAddress,
240
+ amount: basePrice.toString(),
241
+ },
242
+ ],
243
+ consideration: [...considerationAssetItems, ...considerationFeeItems],
244
+ endTime: expirationTime !== undefined
245
+ ? BigInt(expirationTime).toString()
246
+ : (0, utils_2.getMaxOrderExpirationTimestamp)().toString(),
247
+ zone,
248
+ domain,
249
+ salt: BigInt(salt ?? 0).toString(),
250
+ restrictedByZone: zone !== ethers_1.ZeroAddress,
251
+ allowPartialFills: true,
252
+ }, accountAddress);
253
+ return executeAllActions();
254
+ }
255
+ /**
256
+ * Build offer order components without submitting to API
257
+ * @param options Offer parameters
258
+ * @returns OrderComponents ready for onchain validation
259
+ */
260
+ async _buildOfferOrderComponents({ asset, accountAddress, startAmount, quantity = 1, domain, salt, expirationTime, paymentTokenAddress = (0, utils_2.getOfferPaymentToken)(this.chain), zone = (0, utils_2.getSignedZone)(this.chain), }) {
261
+ const order = await this._buildOfferOrder({
262
+ asset,
263
+ accountAddress,
264
+ startAmount,
265
+ quantity,
266
+ domain,
267
+ salt,
268
+ expirationTime,
269
+ paymentTokenAddress,
270
+ zone,
271
+ });
272
+ return order.parameters;
273
+ }
274
+ async getFees({ collection, seller, paymentTokenAddress, startAmount, endAmount, isPrivateListing = false, }) {
275
+ let collectionFees = collection.fees.filter((fee) => fee.required);
151
276
  if (isPrivateListing) {
152
277
  collectionFees = collectionFees.filter((fee) => this.isNotMarketplaceFee(fee));
153
278
  }
@@ -194,7 +319,6 @@ class OpenSeaSDK {
194
319
  * @param options.salt Arbitrary salt. If not passed in, a random salt will be generated with the first four bytes being the domain hash or empty.
195
320
  * @param options.expirationTime Expiration time for the order, in UTC seconds
196
321
  * @param options.paymentTokenAddress ERC20 address for the payment token in the order. If unspecified, defaults to WETH
197
- * @param options.excludeOptionalCreatorFees If true, optional creator fees will be excluded from the offer. Default: true.
198
322
  * @param options.zone The zone to use for the order. If unspecified, defaults to the chain's signed zone for order protection.
199
323
  *
200
324
  * @returns The {@link OrderV2} that was created.
@@ -204,39 +328,18 @@ class OpenSeaSDK {
204
328
  * @throws Error if the startAmount is not greater than 0.
205
329
  * @throws Error if paymentTokenAddress is not WETH on anything other than Ethereum mainnet.
206
330
  */
207
- async createOffer({ asset, accountAddress, startAmount, quantity = 1, domain, salt, expirationTime, paymentTokenAddress = (0, utils_2.getOfferPaymentToken)(this.chain), excludeOptionalCreatorFees = true, zone = (0, utils_2.getSignedZone)(this.chain), }) {
208
- await this._requireAccountIsAvailable(accountAddress);
209
- const { nft } = await this.api.getNFT(asset.tokenAddress, asset.tokenId);
210
- const considerationAssetItems = this.getNFTItems([nft], [BigInt(quantity ?? 1)]);
211
- const { basePrice } = await this._getPriceParameters(types_2.OrderSide.OFFER, paymentTokenAddress, expirationTime ?? (0, utils_2.getMaxOrderExpirationTimestamp)(), startAmount);
212
- const collection = await this.api.getCollection(nft.collection);
213
- const considerationFeeItems = await this.getFees({
214
- collection,
331
+ async createOffer({ asset, accountAddress, startAmount, quantity = 1, domain, salt, expirationTime, paymentTokenAddress = (0, utils_2.getOfferPaymentToken)(this.chain), zone = (0, utils_2.getSignedZone)(this.chain), }) {
332
+ const order = await this._buildOfferOrder({
333
+ asset,
334
+ accountAddress,
335
+ startAmount,
336
+ quantity,
337
+ domain,
338
+ salt,
339
+ expirationTime,
215
340
  paymentTokenAddress,
216
- startAmount: basePrice,
217
- excludeOptionalCreatorFees,
218
- });
219
- if (collection.requiredZone) {
220
- zone = collection.requiredZone;
221
- }
222
- const { executeAllActions } = await this.seaport_v1_6.createOrder({
223
- offer: [
224
- {
225
- token: paymentTokenAddress,
226
- amount: basePrice.toString(),
227
- },
228
- ],
229
- consideration: [...considerationAssetItems, ...considerationFeeItems],
230
- endTime: expirationTime !== undefined
231
- ? BigInt(expirationTime).toString()
232
- : (0, utils_2.getMaxOrderExpirationTimestamp)().toString(),
233
341
  zone,
234
- domain,
235
- salt: BigInt(salt ?? 0).toString(),
236
- restrictedByZone: zone !== ethers_1.ZeroAddress,
237
- allowPartialFills: true,
238
- }, accountAddress);
239
- const order = await executeAllActions();
342
+ });
240
343
  return this.api.postOrder(order, {
241
344
  protocol: "seaport",
242
345
  protocolAddress: utils_1.DEFAULT_SEAPORT_CONTRACT_ADDRESS,
@@ -258,7 +361,6 @@ class OpenSeaSDK {
258
361
  * @param options.paymentTokenAddress ERC20 address for the payment token in the order. If unspecified, defaults to ETH
259
362
  * @param options.buyerAddress Optional address that's allowed to purchase this item. If specified, no other address will be able to take the order, unless its value is the null address.
260
363
  * @param options.englishAuction If true, the order will be listed as an English auction.
261
- * @param options.excludeOptionalCreatorFees If true, optional creator fees will be excluded from the listing. Default: false.
262
364
  * @param options.zone The zone to use for the order. For order protection, pass SIGNED_ZONE. If unspecified, defaults to no zone.
263
365
  * @returns The {@link OrderV2} that was created.
264
366
  *
@@ -267,49 +369,22 @@ class OpenSeaSDK {
267
369
  * @throws Error if the startAmount is not greater than 0.
268
370
  * @throws Error if paymentTokenAddress is not WETH on anything other than Ethereum mainnet.
269
371
  */
270
- async createListing({ asset, accountAddress, startAmount, endAmount, quantity = 1, domain, salt, listingTime, expirationTime, paymentTokenAddress = (0, utils_2.getListingPaymentToken)(this.chain), buyerAddress, englishAuction, excludeOptionalCreatorFees = false, zone = ethers_1.ZeroAddress, }) {
271
- await this._requireAccountIsAvailable(accountAddress);
272
- const { nft } = await this.api.getNFT(asset.tokenAddress, asset.tokenId);
273
- const offerAssetItems = this.getNFTItems([nft], [BigInt(quantity ?? 1)]);
274
- if (englishAuction) {
275
- throw new Error("English auctions are no longer supported on OpenSea");
276
- }
277
- if (englishAuction && paymentTokenAddress == ethers_1.ethers.ZeroAddress) {
278
- throw new Error(`English auctions must use wrapped ETH or an ERC-20 token.`);
279
- }
280
- const { basePrice, endPrice } = await this._getPriceParameters(types_2.OrderSide.LISTING, paymentTokenAddress, expirationTime ?? (0, utils_2.getMaxOrderExpirationTimestamp)(), startAmount, endAmount ?? undefined);
281
- const collection = await this.api.getCollection(nft.collection);
282
- const considerationFeeItems = await this.getFees({
283
- collection,
284
- seller: accountAddress,
372
+ async createListing({ asset, accountAddress, startAmount, endAmount, quantity = 1, domain, salt, listingTime, expirationTime, paymentTokenAddress = (0, utils_2.getListingPaymentToken)(this.chain), buyerAddress, englishAuction, zone = ethers_1.ZeroAddress, }) {
373
+ const order = await this._buildListingOrder({
374
+ asset,
375
+ accountAddress,
376
+ startAmount,
377
+ endAmount,
378
+ quantity,
379
+ domain,
380
+ salt,
381
+ listingTime,
382
+ expirationTime,
285
383
  paymentTokenAddress,
286
- startAmount: basePrice,
287
- endAmount: endPrice,
288
- excludeOptionalCreatorFees,
289
- isPrivateListing: !!buyerAddress,
290
- });
291
- if (buyerAddress) {
292
- considerationFeeItems.push(...(0, privateListings_1.getPrivateListingConsiderations)(offerAssetItems, buyerAddress));
293
- }
294
- if (englishAuction) {
295
- zone = constants_2.ENGLISH_AUCTION_ZONE_MAINNETS;
296
- }
297
- else if (collection.requiredZone) {
298
- zone = collection.requiredZone;
299
- }
300
- const { executeAllActions } = await this.seaport_v1_6.createOrder({
301
- offer: offerAssetItems,
302
- consideration: considerationFeeItems,
303
- startTime: listingTime?.toString(),
304
- endTime: expirationTime?.toString() ??
305
- (0, utils_2.getMaxOrderExpirationTimestamp)().toString(),
384
+ buyerAddress,
385
+ englishAuction,
306
386
  zone,
307
- domain,
308
- salt: BigInt(salt ?? 0).toString(),
309
- restrictedByZone: zone !== ethers_1.ZeroAddress,
310
- allowPartialFills: englishAuction ? false : true,
311
- }, accountAddress);
312
- const order = await executeAllActions();
387
+ });
313
388
  return this.api.postOrder(order, {
314
389
  protocol: "seaport",
315
390
  protocolAddress: utils_1.DEFAULT_SEAPORT_CONTRACT_ADDRESS,
@@ -327,13 +402,12 @@ class OpenSeaSDK {
327
402
  * @param options.salt Arbitrary salt. If not passed in, a random salt will be generated with the first four bytes being the domain hash or empty.
328
403
  * @param options.expirationTime Expiration time for the order, in UTC seconds.
329
404
  * @param options.paymentTokenAddress ERC20 address for the payment token in the order. If unspecified, defaults to WETH.
330
- * @param options.excludeOptionalCreatorFees If true, optional creator fees will be excluded from the offer. Default: false.
331
405
  * @param options.offerProtectionEnabled Build the offer on OpenSea's signed zone to provide offer protections from receiving an item which is disabled from trading.
332
406
  * @param options.traitType If defined, the trait name to create the collection offer for.
333
407
  * @param options.traitValue If defined, the trait value to create the collection offer for.
334
408
  * @returns The {@link CollectionOffer} that was created.
335
409
  */
336
- async createCollectionOffer({ collectionSlug, accountAddress, amount, quantity, domain, salt, expirationTime, paymentTokenAddress = (0, utils_2.getOfferPaymentToken)(this.chain), excludeOptionalCreatorFees = false, offerProtectionEnabled = true, traitType, traitValue, }) {
410
+ async createCollectionOffer({ collectionSlug, accountAddress, amount, quantity, domain, salt, expirationTime, paymentTokenAddress = (0, utils_2.getOfferPaymentToken)(this.chain), offerProtectionEnabled = true, traitType, traitValue, }) {
337
411
  await this._requireAccountIsAvailable(accountAddress);
338
412
  const collection = await this.api.getCollection(collectionSlug);
339
413
  const buildOfferResult = await this.api.buildOffer(accountAddress, quantity, collectionSlug, offerProtectionEnabled, traitType, traitValue);
@@ -350,7 +424,6 @@ class OpenSeaSDK {
350
424
  paymentTokenAddress,
351
425
  startAmount: basePrice,
352
426
  endAmount: basePrice,
353
- excludeOptionalCreatorFees,
354
427
  });
355
428
  const considerationItems = [
356
429
  convertedConsiderationItem,
@@ -726,6 +799,74 @@ class OpenSeaSDK {
726
799
  await this._confirmTransaction(transaction.hash, types_2.EventType.ApproveOrder, "Approving order");
727
800
  return transaction.hash;
728
801
  }
802
+ /**
803
+ * Validates an order onchain using Seaport's validate() method. This submits the order onchain
804
+ * and pre-validates the order using Seaport, which makes it cheaper to fulfill since a signature
805
+ * is not needed to be verified during fulfillment for the order, but is not strictly required
806
+ * and the alternative is orders can be submitted to the API for free instead of sent onchain.
807
+ * @param orderComponents Order components to validate onchain
808
+ * @param accountAddress Address of the wallet that will pay the gas to validate the order
809
+ * @returns Transaction hash of the validation transaction
810
+ *
811
+ * @throws Error if the accountAddress is not available through wallet or provider.
812
+ */
813
+ async validateOrderOnchain(orderComponents, accountAddress) {
814
+ await this._requireAccountIsAvailable(accountAddress);
815
+ this._dispatch(types_2.EventType.ApproveOrder, {
816
+ orderV2: { protocolData: orderComponents },
817
+ accountAddress,
818
+ });
819
+ const seaport = this.getSeaport(utils_1.DEFAULT_SEAPORT_CONTRACT_ADDRESS);
820
+ const transaction = await seaport
821
+ .validate([{ parameters: orderComponents, signature: "0x" }], accountAddress)
822
+ .transact();
823
+ await this._confirmTransaction(transaction.hash, types_2.EventType.ApproveOrder, "Validating order onchain");
824
+ return transaction.hash;
825
+ }
826
+ /**
827
+ * Create and validate a listing onchain using Seaport's validate() method. This combines
828
+ * order building with onchain validation in a single call.
829
+ * @param options Listing parameters
830
+ * @returns Transaction hash of the validation transaction
831
+ */
832
+ async createListingAndValidateOnchain({ asset, accountAddress, startAmount, endAmount, quantity = 1, domain, salt, listingTime, expirationTime, paymentTokenAddress, buyerAddress, englishAuction, zone, }) {
833
+ const orderComponents = await this._buildListingOrderComponents({
834
+ asset,
835
+ accountAddress,
836
+ startAmount,
837
+ endAmount,
838
+ quantity,
839
+ domain,
840
+ salt,
841
+ listingTime,
842
+ expirationTime,
843
+ paymentTokenAddress,
844
+ buyerAddress,
845
+ englishAuction,
846
+ zone,
847
+ });
848
+ return this.validateOrderOnchain(orderComponents, accountAddress);
849
+ }
850
+ /**
851
+ * Create and validate an offer onchain using Seaport's validate() method. This combines
852
+ * order building with onchain validation in a single call.
853
+ * @param options Offer parameters
854
+ * @returns Transaction hash of the validation transaction
855
+ */
856
+ async createOfferAndValidateOnchain({ asset, accountAddress, startAmount, quantity = 1, domain, salt, expirationTime, paymentTokenAddress, zone, }) {
857
+ const orderComponents = await this._buildOfferOrderComponents({
858
+ asset,
859
+ accountAddress,
860
+ startAmount,
861
+ quantity,
862
+ domain,
863
+ salt,
864
+ expirationTime,
865
+ paymentTokenAddress,
866
+ zone,
867
+ });
868
+ return this.validateOrderOnchain(orderComponents, accountAddress);
869
+ }
729
870
  /**
730
871
  * Compute the `basePrice` and `endPrice` parameters to be used to price an order.
731
872
  * Also validates the expiration time and auction type.
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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"}