@opensea/seaport-js 1.0.2 → 1.0.5

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/LICENSE ADDED
@@ -0,0 +1,7 @@
1
+ Copyright 2022 Ozone Networks, Inc.
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
4
+
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md CHANGED
@@ -1,6 +1,14 @@
1
+ [![Version][version-badge]][version-link]
2
+ [![npm][npm-badge]][npm-link]
3
+ [![Test CI][ci-badge]][ci-link]
4
+ [![Code Coverage][coverage-badge]][coverage-link]
5
+ [![License][license-badge]][license-link]
6
+ [![Docs][docs-badge]][docs-link]
7
+ [![Discussions][discussions-badge]][discussions-link]
8
+
1
9
  # Seaport.js
2
10
 
3
- [Seaport](https://github.com/ProjectOpenSea/seaport) is a new marketplace protocol for safely and efficiently buying and selling NFTs. This is a JavaScript library intended to make interfacing with the contract reasonable and easy.
11
+ [Seaport][seaport-link] is a new marketplace protocol for safely and efficiently buying and selling NFTs. This is a JavaScript library intended to make interfacing with the contract reasonable and easy.
4
12
 
5
13
  - [Synopsis](#synopsis)
6
14
  - [Installation](#installation)
@@ -10,7 +18,7 @@
10
18
 
11
19
  ## Synopsis
12
20
 
13
- This is a JavaScript library to help interface with Seaport. It includes various helper methods and constants that makes interfacing with Seaport easier. These include creating orders, fulfilling orders, doing the necessary balance and approval checks, and more. We recommend taking a look at the [Seaport](https://github.com/ProjectOpenSea/seaport) docs to get a better understanding of how the Seaport marketplace works.
21
+ This is a JavaScript library to help interface with Seaport. It includes various helper methods and constants that makes interfacing with Seaport easier. These include creating orders, fulfilling orders, doing the necessary balance and approval checks, and more. We recommend taking a look at the [Seaport][seaport-link] docs to get a better understanding of how the Seaport marketplace works.
14
22
 
15
23
  ## Installation
16
24
 
@@ -18,7 +26,7 @@ We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage Node.js versio
18
26
 
19
27
  Then, in your project, run:
20
28
 
21
- ```
29
+ ```console
22
30
  npm install --save @opensea/seaport-js
23
31
  ```
24
32
 
@@ -26,20 +34,148 @@ npm install --save @opensea/seaport-js
26
34
 
27
35
  Instantiate your instance of seaport using your ethers provider:
28
36
 
29
- ```JavaScript
37
+ ### Examples
38
+
39
+ #### Through a browser provider (i.e. Metamask)
40
+
41
+ ```js
42
+ import { Seaport } from "@opensea/seaport-js";
43
+ import { ethers } from "ethers";
44
+
45
+ const provider = new ethers.providers.Web3Provider(window.ethereum);
46
+
47
+ const seaport = new Seaport(provider);
48
+ ```
49
+
50
+ #### Through a RPC Provider (i.e. Alchemy)
51
+
52
+ ```js
30
53
  import { Seaport } from "@opensea/seaport-js";
54
+ import { ethers } from "ethers";
31
55
 
32
- const provider = ethers.getDefaultProvider();
56
+ const provider = new ethers.provider.JsonRpcProvider(
57
+ "https://<network>.alchemyapi.io/v2/YOUR-API-KEY"
58
+ );
33
59
 
34
60
  const seaport = new Seaport(provider);
35
61
  ```
36
62
 
63
+ #### With custom signer
64
+
65
+ ```js
66
+ import { Seaport } from "@opensea/seaport-js";
67
+ import { ethers } from "ethers";
68
+
69
+ // Provider must be provided to the signer when supplying a custom signer
70
+ const provider = new ethers.provider.JsonRpcProvider(
71
+ "https://<network>.alchemyapi.io/v2/YOUR-API-KEY"
72
+ );
73
+
74
+ const signer = new ethers.Wallet("YOUR_PK", provider);
75
+
76
+ const seaport = new Seaport(signer);
77
+ ```
78
+
37
79
  Look at the relevant definitions in `seaport.ts` in order to see the different functionality this library offers.
38
80
 
39
81
  ### Use Cases
40
82
 
41
83
  Many of the main core flows return _use cases_. What this means is that if you were to create an order (a la `createOrder`), the library helps perform the necessary balance and approval checks based on the `offer` of the order being created. If the `offerer` requires approvals on one asset contract, the `actions` field of the use case would contain an approval action that the user should execute first in order for the trade to succeed in the future.
42
84
 
85
+ ### Examples
86
+
87
+ #### Listing an ERC-721 for 10 ETH and fulfilling it
88
+
89
+ ```js
90
+ const offerer = "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266";
91
+ const fulfiller = "0x70997970c51812dc3a010c7d01b50e0d17dc79c8";
92
+ const { executeAllActions } = await seaport.createOrder(
93
+ {
94
+ offer: [
95
+ {
96
+ itemType: ItemType.ERC721,
97
+ token: "0x8a90cab2b38dba80c64b7734e58ee1db38b8992e",
98
+ identifier: "1",
99
+ },
100
+ ],
101
+ consideration: [
102
+ {
103
+ amount: parseEther("10").toString(),
104
+ recipient: offerer,
105
+ },
106
+ ],
107
+ },
108
+ offerer
109
+ );
110
+
111
+ const order = await executeAllActions();
112
+
113
+ const { executeAllActions: executeAllFulfillActions } =
114
+ await seaport.fulfillOrder({
115
+ order,
116
+ accountAddress: fulfiller,
117
+ });
118
+
119
+ const transaction = executeAllFulfillActions();
120
+ ```
121
+
122
+ #### Making an offer for an ERC-721 for 10 WETH and fulfilling it
123
+
124
+ ```js
125
+ const offerer = "0xf39fd6e51aad88f6f4ce6ab8827279cfffb92266";
126
+ const fulfiller = "0x70997970c51812dc3a010c7d01b50e0d17dc79c8";
127
+ const { executeAllActions } = await seaport.createOrder(
128
+ {
129
+ offer: [
130
+ {
131
+ amount: parseEther("10").toString(),
132
+ // WETH
133
+ token: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
134
+ },
135
+ ],
136
+ consideration: [
137
+ {
138
+ itemType: ItemType.ERC721,
139
+ token: "0x8a90cab2b38dba80c64b7734e58ee1db38b8992e",
140
+ identifier: "1",
141
+ recipient: offerer,
142
+ },
143
+ ],
144
+ },
145
+ offerer
146
+ );
147
+
148
+ const order = await executeAllActions();
149
+
150
+ const { executeAllActions: executeAllFulfillActions } =
151
+ await seaport.fulfillOrder({
152
+ order,
153
+ accountAddress: fulfiller.address,
154
+ });
155
+
156
+ const transaction = executeAllFulfillActions();
157
+ ```
158
+
43
159
  ## Contributing
44
160
 
45
161
  See [the contributing guide](CONTRIBUTING.md) for detailed instructions on how to get started with this project.
162
+
163
+ ## License
164
+
165
+ [MIT](LICENSE) Copyright 2022 Ozone Networks, Inc.
166
+
167
+ [seaport-link]: https://github.com/ProjectOpenSea/seaport
168
+ [version-badge]: https://img.shields.io/github/package-json/v/ProjectOpenSea/seaport-js
169
+ [version-link]: https://github.com/ProjectOpenSea/seaport-js/releases
170
+ [npm-badge]: https://img.shields.io/npm/v/@opensea/seaport-js?color=red
171
+ [npm-link]: https://www.npmjs.com/package/@opensea/seaport-js
172
+ [ci-badge]: https://github.com/ProjectOpenSea/seaport-js/actions/workflows/main.yaml/badge.svg
173
+ [ci-link]: https://github.com/ProjectOpenSea/seaport-js/actions/workflows/main.yaml
174
+ [coverage-badge]: https://codecov.io/gh/ProjectOpenSea/seaport-js/branch/main/graph/badge.svg
175
+ [coverage-link]: https://codecov.io/gh/ProjectOpenSea/seaport-js
176
+ [license-badge]: https://img.shields.io/github/license/ProjectOpenSea/seaport-js
177
+ [license-link]: https://github.com/ProjectOpenSea/seaport-js/blob/main/LICENSE
178
+ [docs-badge]: https://img.shields.io/badge/Seaport.js-documentation-informational
179
+ [docs-link]: https://github.com/ProjectOpenSea/seaport-js/blob/main/README.md#getting-started
180
+ [discussions-badge]: https://img.shields.io/badge/Seaport.js-discussions-blueviolet
181
+ [discussions-link]: https://github.com/ProjectOpenSea/seaport-js/discussions
@@ -1,6 +1,8 @@
1
1
  import { BigNumber } from "ethers";
2
2
  export declare const SEAPORT_CONTRACT_NAME = "Seaport";
3
3
  export declare const SEAPORT_CONTRACT_VERSION = "1.1";
4
+ export declare const OPENSEA_CONDUIT_KEY = "0x0000007b02230091a7ed01230072f7006a004d60a8d4e71d599b8104250f0000";
5
+ export declare const OPENSEA_CONDUIT_ADDRESS = "0x1e0049783f008a0085193e00003d00cd54003c71";
4
6
  export declare const EIP_712_ORDER_TYPE: {
5
7
  OrderComponents: {
6
8
  name: string;
@@ -45,5 +47,7 @@ export declare enum BasicOrderRouteType {
45
47
  export declare const MAX_INT: BigNumber;
46
48
  export declare const ONE_HUNDRED_PERCENT_BP = 10000;
47
49
  export declare const NO_CONDUIT = "0x0000000000000000000000000000000000000000000000000000000000000000";
48
- export declare const KNOWN_CONDUIT_KEYS_TO_CONDUIT: {};
50
+ export declare const KNOWN_CONDUIT_KEYS_TO_CONDUIT: {
51
+ "0x0000007b02230091a7ed01230072f7006a004d60a8d4e71d599b8104250f0000": string;
52
+ };
49
53
  export declare const CROSS_CHAIN_SEAPORT_ADDRESS = "0x00000000006c3852cbef3e08e8df289169ede581";
package/lib/constants.js CHANGED
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
+ var _a;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CROSS_CHAIN_SEAPORT_ADDRESS = exports.KNOWN_CONDUIT_KEYS_TO_CONDUIT = exports.NO_CONDUIT = exports.ONE_HUNDRED_PERCENT_BP = exports.MAX_INT = exports.BasicOrderRouteType = exports.Side = exports.ItemType = exports.OrderType = exports.EIP_712_ORDER_TYPE = exports.SEAPORT_CONTRACT_VERSION = exports.SEAPORT_CONTRACT_NAME = void 0;
4
+ exports.CROSS_CHAIN_SEAPORT_ADDRESS = exports.KNOWN_CONDUIT_KEYS_TO_CONDUIT = exports.NO_CONDUIT = exports.ONE_HUNDRED_PERCENT_BP = exports.MAX_INT = exports.BasicOrderRouteType = exports.Side = exports.ItemType = exports.OrderType = exports.EIP_712_ORDER_TYPE = exports.OPENSEA_CONDUIT_ADDRESS = exports.OPENSEA_CONDUIT_KEY = exports.SEAPORT_CONTRACT_VERSION = exports.SEAPORT_CONTRACT_NAME = void 0;
4
5
  var ethers_1 = require("ethers");
5
6
  exports.SEAPORT_CONTRACT_NAME = "Seaport";
6
7
  exports.SEAPORT_CONTRACT_VERSION = "1.1";
8
+ exports.OPENSEA_CONDUIT_KEY = "0x0000007b02230091a7ed01230072f7006a004d60a8d4e71d599b8104250f0000";
9
+ exports.OPENSEA_CONDUIT_ADDRESS = "0x1e0049783f008a0085193e00003d00cd54003c71";
7
10
  exports.EIP_712_ORDER_TYPE = {
8
11
  OrderComponents: [
9
12
  { name: "offerer", type: "address" },
@@ -68,6 +71,8 @@ exports.MAX_INT = ethers_1.BigNumber.from("0xfffffffffffffffffffffffffffffffffff
68
71
  exports.ONE_HUNDRED_PERCENT_BP = 10000;
69
72
  exports.NO_CONDUIT = "0x0000000000000000000000000000000000000000000000000000000000000000";
70
73
  // Supply here any known conduit keys as well as their conduits
71
- exports.KNOWN_CONDUIT_KEYS_TO_CONDUIT = {};
74
+ exports.KNOWN_CONDUIT_KEYS_TO_CONDUIT = (_a = {},
75
+ _a[exports.OPENSEA_CONDUIT_KEY] = exports.OPENSEA_CONDUIT_ADDRESS,
76
+ _a);
72
77
  exports.CROSS_CHAIN_SEAPORT_ADDRESS = "0x00000000006c3852cbef3e08e8df289169ede581";
73
78
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/lib/seaport.d.ts CHANGED
@@ -1,16 +1,19 @@
1
1
  import { BigNumberish, PayableOverrides, providers } from "ethers";
2
- import type { SeaportConfig, CreateOrderAction, CreateOrderInput, ExchangeAction, InputCriteria, Order, OrderComponents, OrderParameters, OrderStatus, OrderUseCase, OrderWithCounter, TipInputItem, TransactionMethods, ContractMethodReturnType, MatchOrdersFulfillment, SeaportContract } from "./types";
2
+ import type { SeaportConfig, CreateOrderAction, CreateOrderInput, ExchangeAction, InputCriteria, Order, OrderComponents, OrderParameters, OrderStatus, OrderUseCase, OrderWithCounter, TipInputItem, TransactionMethods, ContractMethodReturnType, MatchOrdersFulfillment, SeaportContract, Signer } from "./types";
3
3
  export declare class Seaport {
4
4
  contract: SeaportContract;
5
5
  private provider;
6
+ private signer?;
6
7
  private multicallProvider;
7
8
  private config;
8
9
  private defaultConduitKey;
10
+ readonly OPENSEA_CONDUIT_KEY: string;
9
11
  /**
10
- * @param provider - The provider to use for web3-related calls
12
+ * @param providerOrSigner - The provider or signer to use for web3-related calls
11
13
  * @param considerationConfig - A config to provide flexibility in the usage of Seaport
12
14
  */
13
- constructor(provider: providers.JsonRpcProvider, { overrides, ascendingAmountFulfillmentBuffer, balanceAndApprovalChecksOnOrderCreation, conduitKeyToConduit, }?: SeaportConfig);
15
+ constructor(providerOrSigner: providers.JsonRpcProvider | Signer, { overrides, ascendingAmountFulfillmentBuffer, balanceAndApprovalChecksOnOrderCreation, conduitKeyToConduit, }?: SeaportConfig);
16
+ private _getSigner;
14
17
  /**
15
18
  * Returns the corresponding order type based on whether it allows partial fills and is restricted by zone
16
19
  *
package/lib/seaport.js CHANGED
@@ -86,10 +86,10 @@ var order_1 = require("./utils/order");
86
86
  var usecase_1 = require("./utils/usecase");
87
87
  var Seaport = /** @class */ (function () {
88
88
  /**
89
- * @param provider - The provider to use for web3-related calls
89
+ * @param providerOrSigner - The provider or signer to use for web3-related calls
90
90
  * @param considerationConfig - A config to provide flexibility in the usage of Seaport
91
91
  */
92
- function Seaport(provider, _a) {
92
+ function Seaport(providerOrSigner, _a) {
93
93
  var _b;
94
94
  var _c = _a === void 0 ? {} : _a, overrides = _c.overrides,
95
95
  // Five minute buffer
@@ -97,6 +97,7 @@ var Seaport = /** @class */ (function () {
97
97
  // Five minute buffer
98
98
  ascendingAmountFulfillmentBuffer = _d === void 0 ? 300 : _d, _e = _c.balanceAndApprovalChecksOnOrderCreation, balanceAndApprovalChecksOnOrderCreation = _e === void 0 ? true : _e, conduitKeyToConduit = _c.conduitKeyToConduit;
99
99
  var _f, _g;
100
+ this.OPENSEA_CONDUIT_KEY = constants_1.OPENSEA_CONDUIT_KEY;
100
101
  /**
101
102
  * Calculates the order hash of order components so we can forgo executing a request to the contract
102
103
  * This saves us RPC calls and latency.
@@ -186,8 +187,17 @@ var Seaport = /** @class */ (function () {
186
187
  ].join(""));
187
188
  return derivedOrderHash;
188
189
  };
190
+ var provider = providerOrSigner instanceof ethers_1.providers.Provider
191
+ ? providerOrSigner
192
+ : providerOrSigner.provider;
193
+ this.signer = providerOrSigner._isSigner
194
+ ? providerOrSigner
195
+ : undefined;
196
+ if (!provider) {
197
+ throw new Error("Either a provider or custom signer with provider must be provided");
198
+ }
189
199
  this.provider = provider;
190
- this.multicallProvider = new multicall_1.providers.MulticallProvider(provider);
200
+ this.multicallProvider = new multicall_1.providers.MulticallProvider(this.provider);
191
201
  this.contract = new ethers_1.Contract((_f = overrides === null || overrides === void 0 ? void 0 : overrides.contractAddress) !== null && _f !== void 0 ? _f : constants_1.CROSS_CHAIN_SEAPORT_ADDRESS, Seaport_1.SeaportABI, this.multicallProvider);
192
202
  this.config = {
193
203
  ascendingAmountFulfillmentBuffer: ascendingAmountFulfillmentBuffer,
@@ -196,6 +206,15 @@ var Seaport = /** @class */ (function () {
196
206
  };
197
207
  this.defaultConduitKey = (_g = overrides === null || overrides === void 0 ? void 0 : overrides.defaultConduitKey) !== null && _g !== void 0 ? _g : constants_1.NO_CONDUIT;
198
208
  }
209
+ Seaport.prototype._getSigner = function (accountAddress) {
210
+ if (this.signer) {
211
+ return this.signer;
212
+ }
213
+ if (!(this.provider instanceof ethers_1.providers.JsonRpcProvider)) {
214
+ throw new Error("Either signer or a JsonRpcProvider must be provided");
215
+ }
216
+ return this.provider.getSigner(accountAddress);
217
+ };
199
218
  /**
200
219
  * Returns the corresponding order type based on whether it allows partial fills and is restricted by zone
201
220
  *
@@ -246,11 +265,10 @@ var Seaport = /** @class */ (function () {
246
265
  var _this = this;
247
266
  return __generator(this, function (_k) {
248
267
  switch (_k.label) {
249
- case 0: return [4 /*yield*/, this.provider.getSigner(accountAddress)];
250
- case 1:
251
- signer = _k.sent();
268
+ case 0:
269
+ signer = this._getSigner(accountAddress);
252
270
  return [4 /*yield*/, signer.getAddress()];
253
- case 2:
271
+ case 1:
254
272
  offerer = _k.sent();
255
273
  offerItems = offer.map(order_1.mapInputItemToOfferItem);
256
274
  considerationItems = __spreadArray([], __read(consideration.map(function (consideration) {
@@ -276,7 +294,7 @@ var Seaport = /** @class */ (function () {
276
294
  operator: operator,
277
295
  }),
278
296
  ])];
279
- case 3:
297
+ case 2:
280
298
  _h = __read.apply(void 0, [_k.sent(), 2]), resolvedCounter = _h[0], balancesAndApprovals = _h[1];
281
299
  orderType = this._getOrderTypeFromOrderOptions({
282
300
  allowPartialFills: allowPartialFills,
@@ -316,15 +334,15 @@ var Seaport = /** @class */ (function () {
316
334
  operator: operator,
317
335
  })
318
336
  : [];
319
- if (!checkBalancesAndApprovals) return [3 /*break*/, 5];
337
+ if (!checkBalancesAndApprovals) return [3 /*break*/, 4];
320
338
  return [4 /*yield*/, (0, approval_1.getApprovalActions)(insufficientApprovals, signer)];
321
- case 4:
339
+ case 3:
322
340
  _j = _k.sent();
323
- return [3 /*break*/, 6];
324
- case 5:
341
+ return [3 /*break*/, 5];
342
+ case 4:
325
343
  _j = [];
326
- _k.label = 6;
327
- case 6:
344
+ _k.label = 5;
345
+ case 5:
328
346
  approvalActions = _j;
329
347
  createOrderAction = {
330
348
  type: "create",
@@ -412,7 +430,7 @@ var Seaport = /** @class */ (function () {
412
430
  return __generator(this, function (_a) {
413
431
  switch (_a.label) {
414
432
  case 0:
415
- signer = this.provider.getSigner(accountAddress);
433
+ signer = this._getSigner(accountAddress);
416
434
  return [4 /*yield*/, this._getDomainData()];
417
435
  case 1:
418
436
  domainData = _a.sent();
@@ -434,7 +452,7 @@ var Seaport = /** @class */ (function () {
434
452
  * @returns the set of transaction methods that can be used
435
453
  */
436
454
  Seaport.prototype.cancelOrders = function (orders, accountAddress) {
437
- var signer = this.provider.getSigner(accountAddress);
455
+ var signer = this._getSigner(accountAddress);
438
456
  return (0, usecase_1.getTransactionMethods)(this.contract.connect(signer), "cancel", [
439
457
  orders,
440
458
  ]);
@@ -445,7 +463,7 @@ var Seaport = /** @class */ (function () {
445
463
  * @returns the set of transaction methods that can be used
446
464
  */
447
465
  Seaport.prototype.bulkCancelOrders = function (offerer) {
448
- var signer = this.provider.getSigner(offerer);
466
+ var signer = this._getSigner(offerer);
449
467
  return (0, usecase_1.getTransactionMethods)(this.contract.connect(signer), "incrementCounter", []);
450
468
  };
451
469
  /**
@@ -456,7 +474,7 @@ var Seaport = /** @class */ (function () {
456
474
  * @returns the set of transaction methods that can be used
457
475
  */
458
476
  Seaport.prototype.validate = function (orders, accountAddress) {
459
- var signer = this.provider.getSigner(accountAddress);
477
+ var signer = this._getSigner(accountAddress);
460
478
  return (0, usecase_1.getTransactionMethods)(this.contract.connect(signer), "validate", [
461
479
  orders,
462
480
  ]);
@@ -506,11 +524,9 @@ var Seaport = /** @class */ (function () {
506
524
  case 0:
507
525
  orderParameters = order.parameters;
508
526
  offerer = orderParameters.offerer, offer = orderParameters.offer, consideration = orderParameters.consideration;
509
- return [4 /*yield*/, this.provider.getSigner(accountAddress)];
510
- case 1:
511
- fulfiller = _j.sent();
527
+ fulfiller = this._getSigner(accountAddress);
512
528
  return [4 /*yield*/, fulfiller.getAddress()];
513
- case 2:
529
+ case 1:
514
530
  fulfillerAddress = _j.sent();
515
531
  offererOperator = this.config.conduitKeyToConduit[orderParameters.conduitKey];
516
532
  fulfillerOperator = this.config.conduitKeyToConduit[conduitKey];
@@ -534,7 +550,7 @@ var Seaport = /** @class */ (function () {
534
550
  this.multicallProvider.getBlock("latest"),
535
551
  this.getOrderStatus(this.getOrderHash(orderParameters)),
536
552
  ])];
537
- case 3:
553
+ case 2:
538
554
  _h = __read.apply(void 0, [_j.sent(), 4]), offererBalancesAndApprovals = _h[0], fulfillerBalancesAndApprovals = _h[1], currentBlock = _h[2], orderStatus = _h[3];
539
555
  currentBlockTimestamp = currentBlock.timestamp;
540
556
  totalFilled = orderStatus.totalFilled, totalSize = orderStatus.totalSize;
@@ -610,11 +626,10 @@ var Seaport = /** @class */ (function () {
610
626
  var _this = this;
611
627
  return __generator(this, function (_e) {
612
628
  switch (_e.label) {
613
- case 0: return [4 /*yield*/, this.provider.getSigner(accountAddress)];
614
- case 1:
615
- fulfiller = _e.sent();
629
+ case 0:
630
+ fulfiller = this._getSigner(accountAddress);
616
631
  return [4 /*yield*/, fulfiller.getAddress()];
617
- case 2:
632
+ case 1:
618
633
  fulfillerAddress = _e.sent();
619
634
  allOffererOperators = fulfillOrderDetails.map(function (_a) {
620
635
  var order = _a.order;
@@ -663,7 +678,7 @@ var Seaport = /** @class */ (function () {
663
678
  return _this.getOrderStatus(_this.getOrderHash(order.parameters));
664
679
  })),
665
680
  ])];
666
- case 3:
681
+ case 2:
667
682
  _d = __read.apply(void 0, [_e.sent(), 4]), offerersBalancesAndApprovals = _d[0], fulfillerBalancesAndApprovals = _d[1], currentBlock = _d[2], orderStatuses = _d[3];
668
683
  ordersMetadata = fulfillOrderDetails.map(function (orderDetails, index) {
669
684
  var _a, _b, _c, _d, _e;
@@ -707,7 +722,7 @@ var Seaport = /** @class */ (function () {
707
722
  */
708
723
  Seaport.prototype.matchOrders = function (_a) {
709
724
  var orders = _a.orders, fulfillments = _a.fulfillments, overrides = _a.overrides, accountAddress = _a.accountAddress;
710
- var signer = this.provider.getSigner(accountAddress);
725
+ var signer = this._getSigner(accountAddress);
711
726
  return (0, usecase_1.getTransactionMethods)(this.contract.connect(signer), "matchOrders", [
712
727
  orders,
713
728
  fulfillments,
@@ -1 +1 @@
1
- {"version":3,"file":"seaport.js","sourceRoot":"","sources":["../src/seaport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seaport.js","sourceRoot":"","sources":["../src/seaport.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { OrderStruct, Seaport as TypeChainSeaportContract } from "./typechain/Seaport";
2
- import { BigNumber, BigNumberish, Contract, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction } from "ethers";
2
+ import { BigNumber, BigNumberish, BytesLike, Contract, ContractTransaction, ethers, Overrides, PayableOverrides, PopulatedTransaction } from "ethers";
3
3
  import { ItemType, OrderType } from "./constants";
4
4
  import type { ERC721 } from "./typechain/ERC721";
5
5
  import type { ERC20 } from "./typechain/ERC20";
@@ -12,6 +12,20 @@ export declare type SeaportConfig = {
12
12
  defaultConduitKey?: string;
13
13
  };
14
14
  };
15
+ declare type TypedDataDomain = {
16
+ name?: string;
17
+ version?: string;
18
+ chainId?: BigNumberish;
19
+ verifyingContract?: string;
20
+ salt?: BytesLike;
21
+ };
22
+ declare type TypedDataField = {
23
+ name: string;
24
+ type: string;
25
+ };
26
+ export declare type Signer = ethers.Signer & {
27
+ _signTypedData(domain: TypedDataDomain, types: Record<string, Array<TypedDataField>>, value: Record<string, any>): Promise<string>;
28
+ };
15
29
  export declare type OfferItem = {
16
30
  itemType: ItemType;
17
31
  token: string;
@@ -1,9 +1,9 @@
1
1
  import { providers as multicallProviders } from "@0xsequence/multicall";
2
- import { BigNumber, providers } from "ethers";
2
+ import { BigNumber, Signer } from "ethers";
3
3
  import type { ApprovalAction, Item } from "../types";
4
4
  import type { InsufficientApprovals } from "./balanceAndApprovalCheck";
5
5
  export declare const approvedItemAmount: (owner: string, item: Item, operator: string, multicallProvider: multicallProviders.MulticallProvider) => Promise<BigNumber>;
6
6
  /**
7
7
  * Get approval actions given a list of insufficent approvals.
8
8
  */
9
- export declare function getApprovalActions(insufficientApprovals: InsufficientApprovals, signer: providers.JsonRpcSigner): Promise<ApprovalAction[]>;
9
+ export declare function getApprovalActions(insufficientApprovals: InsufficientApprovals, signer: Signer): Promise<ApprovalAction[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"approval.js","sourceRoot":"","sources":["../../src/utils/approval.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iCAAwD;AACxD,sCAAwC;AACxC,wCAA0C;AAC1C,0CAAiD;AAKjD,+BAAqD;AACrD,qCAAkD;AAE3C,IAAM,kBAAkB,GAAG,UAChC,KAAa,EACb,IAAU,EACV,QAAgB,EAChB,iBAAuD;;;QAEvD,IAAI,IAAA,mBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAA,oBAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAEzD,QAAQ,GAAG,IAAI,iBAAQ,CAC3B,IAAI,CAAC,KAAK,EACV,kBAAS,EACT,iBAAiB,CACR,CAAC;YACZ,sBAAO,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAC,gBAAgB;oBACtE,2DAA2D;oBAC3D,OAAA,gBAAgB,CAAC,CAAC,CAAC,mBAAO,CAAC,CAAC,CAAC,kBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAA9C,CAA8C,CAC/C,EAAC;SACH;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAQ,CAAC,KAAK,EAAE;YACrC,QAAQ,GAAG,IAAI,iBAAQ,CAC3B,IAAI,CAAC,KAAK,EACV,gBAAQ,EACR,iBAAiB,CACT,CAAC;YAEX,sBAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAC;SAC5C;QAED,qDAAqD;QACrD,sBAAO,mBAAO,EAAC;;KAChB,CAAC;AA7BW,QAAA,kBAAkB,sBA6B7B;AAEF;;GAEG;AACH,SAAgB,kBAAkB,CAChC,qBAA4C,EAC5C,MAA+B;IAFjC,iBA8CC;IA1CC,OAAO,OAAO,CAAC,GAAG,CAChB,qBAAqB;SAClB,MAAM,CACL,UAAC,QAAQ,EAAE,KAAK;QACd,OAAA,KAAK,KAAK,qBAAqB,CAAC,MAAM,GAAG,CAAC;YAC1C,qBAAqB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;IADzD,CACyD,CAC5D;SACA,GAAG,CAAC,UAAO,EAAmD;YAAjD,KAAK,WAAA,EAAE,QAAQ,cAAA,EAAE,QAAQ,cAAA,EAAE,oBAAoB,0BAAA;;;;gBAC3D,IAAI,IAAA,mBAAY,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAa,EAAC,QAAQ,CAAC,EAAE;oBAE/C,QAAQ,GAAG,IAAI,iBAAQ,CAAC,KAAK,EAAE,kBAAS,EAAE,MAAM,CAAW,CAAC;oBAElE,sBAAO;4BACL,IAAI,EAAE,UAAU;4BAChB,KAAK,OAAA;4BACL,oBAAoB,sBAAA;4BACpB,QAAQ,UAAA;4BACR,QAAQ,UAAA;4BACR,kBAAkB,EAAE,IAAA,+BAAqB,EACvC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EACxB,mBAAmB,EACnB,CAAC,QAAQ,EAAE,IAAI,CAAC,CACjB;yBACF,EAAC;iBACH;qBAAM;oBACC,QAAQ,GAAG,IAAI,iBAAQ,CAAC,KAAK,EAAE,gBAAQ,EAAE,MAAM,CAAU,CAAC;oBAEhE,sBAAO;4BACL,IAAI,EAAE,UAAU;4BAChB,KAAK,OAAA;4BACL,oBAAoB,sBAAA;4BACpB,QAAQ,UAAA;4BACR,kBAAkB,EAAE,IAAA,+BAAqB,EACvC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EACxB,SAAS,EACT,CAAC,QAAQ,EAAE,mBAAO,CAAC,CACpB;4BACD,QAAQ,UAAA;yBACT,EAAC;iBACH;;;;KACF,CAAC,CACL,CAAC;AACJ,CAAC;AA9CD,gDA8CC"}
1
+ {"version":3,"file":"approval.js","sourceRoot":"","sources":["../../src/utils/approval.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iCAAqD;AACrD,sCAAwC;AACxC,wCAA0C;AAC1C,0CAAiD;AAKjD,+BAAqD;AACrD,qCAAkD;AAE3C,IAAM,kBAAkB,GAAG,UAChC,KAAa,EACb,IAAU,EACV,QAAgB,EAChB,iBAAuD;;;QAEvD,IAAI,IAAA,mBAAY,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAA,oBAAa,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAEzD,QAAQ,GAAG,IAAI,iBAAQ,CAC3B,IAAI,CAAC,KAAK,EACV,kBAAS,EACT,iBAAiB,CACR,CAAC;YACZ,sBAAO,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAC,gBAAgB;oBACtE,2DAA2D;oBAC3D,OAAA,gBAAgB,CAAC,CAAC,CAAC,mBAAO,CAAC,CAAC,CAAC,kBAAS,CAAC,IAAI,CAAC,CAAC,CAAC;gBAA9C,CAA8C,CAC/C,EAAC;SACH;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAQ,CAAC,KAAK,EAAE;YACrC,QAAQ,GAAG,IAAI,iBAAQ,CAC3B,IAAI,CAAC,KAAK,EACV,gBAAQ,EACR,iBAAiB,CACT,CAAC;YAEX,sBAAO,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAC;SAC5C;QAED,qDAAqD;QACrD,sBAAO,mBAAO,EAAC;;KAChB,CAAC;AA7BW,QAAA,kBAAkB,sBA6B7B;AAEF;;GAEG;AACH,SAAgB,kBAAkB,CAChC,qBAA4C,EAC5C,MAAc;IAFhB,iBA8CC;IA1CC,OAAO,OAAO,CAAC,GAAG,CAChB,qBAAqB;SAClB,MAAM,CACL,UAAC,QAAQ,EAAE,KAAK;QACd,OAAA,KAAK,KAAK,qBAAqB,CAAC,MAAM,GAAG,CAAC;YAC1C,qBAAqB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK;IADzD,CACyD,CAC5D;SACA,GAAG,CAAC,UAAO,EAAmD;YAAjD,KAAK,WAAA,EAAE,QAAQ,cAAA,EAAE,QAAQ,cAAA,EAAE,oBAAoB,0BAAA;;;;gBAC3D,IAAI,IAAA,mBAAY,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAa,EAAC,QAAQ,CAAC,EAAE;oBAE/C,QAAQ,GAAG,IAAI,iBAAQ,CAAC,KAAK,EAAE,kBAAS,EAAE,MAAM,CAAW,CAAC;oBAElE,sBAAO;4BACL,IAAI,EAAE,UAAU;4BAChB,KAAK,OAAA;4BACL,oBAAoB,sBAAA;4BACpB,QAAQ,UAAA;4BACR,QAAQ,UAAA;4BACR,kBAAkB,EAAE,IAAA,+BAAqB,EACvC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EACxB,mBAAmB,EACnB,CAAC,QAAQ,EAAE,IAAI,CAAC,CACjB;yBACF,EAAC;iBACH;qBAAM;oBACC,QAAQ,GAAG,IAAI,iBAAQ,CAAC,KAAK,EAAE,gBAAQ,EAAE,MAAM,CAAU,CAAC;oBAEhE,sBAAO;4BACL,IAAI,EAAE,UAAU;4BAChB,KAAK,OAAA;4BACL,oBAAoB,sBAAA;4BACpB,QAAQ,UAAA;4BACR,kBAAkB,EAAE,IAAA,+BAAqB,EACvC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EACxB,SAAS,EACT,CAAC,QAAQ,EAAE,mBAAO,CAAC,CACpB;4BACD,QAAQ,UAAA;yBACT,EAAC;iBACH;;;;KACF,CAAC,CACL,CAAC;AACJ,CAAC;AA9CD,gDA8CC"}
@@ -1,4 +1,4 @@
1
- import { BigNumber, BigNumberish, providers } from "ethers";
1
+ import { BigNumber, BigNumberish, Signer } from "ethers";
2
2
  import type { Seaport as SeaportContract, Seaport, FulfillmentComponentStruct } from "../typechain/Seaport";
3
3
  import type { ConsiderationItem, ExchangeAction, InputCriteria, Order, OrderParameters, OrderStatus, OrderUseCase, ContractMethodReturnType } from "../types";
4
4
  import { BalancesAndApprovals } from "./balanceAndApprovalCheck";
@@ -28,7 +28,7 @@ export declare function fulfillBasicOrder({ order, seaportContract, offererBalan
28
28
  timeBasedItemParams: TimeBasedItemParams;
29
29
  offererOperator: string;
30
30
  fulfillerOperator: string;
31
- signer: providers.JsonRpcSigner;
31
+ signer: Signer;
32
32
  tips?: ConsiderationItem[];
33
33
  conduitKey: string;
34
34
  }): Promise<OrderUseCase<ExchangeAction<ContractMethodReturnType<SeaportContract, "fulfillBasicOrder">>>>;
@@ -49,7 +49,7 @@ export declare function fulfillStandardOrder({ order, unitsToFill, totalSize, to
49
49
  conduitKey: string;
50
50
  recipientAddress: string;
51
51
  timeBasedItemParams: TimeBasedItemParams;
52
- signer: providers.JsonRpcSigner;
52
+ signer: Signer;
53
53
  }): Promise<OrderUseCase<ExchangeAction<ContractMethodReturnType<SeaportContract, "fulfillAdvancedOrder" | "fulfillOrder">>>>;
54
54
  export declare function validateAndSanitizeFromOrderStatus(order: Order, orderStatus: OrderStatus): Order;
55
55
  export declare type FulfillOrdersMetadata = {
@@ -71,7 +71,7 @@ export declare function fulfillAvailableOrders({ ordersMetadata, seaportContract
71
71
  currentBlockTimestamp: number;
72
72
  ascendingAmountTimestampBuffer: number;
73
73
  conduitKey: string;
74
- signer: providers.JsonRpcSigner;
74
+ signer: Signer;
75
75
  recipientAddress: string;
76
76
  }): Promise<OrderUseCase<ExchangeAction<ContractMethodReturnType<SeaportContract, "fulfillAvailableAdvancedOrders">>>>;
77
77
  export declare function generateFulfillOrdersFulfillments(ordersMetadata: FulfillOrdersMetadata): {
@@ -74,35 +74,38 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
74
74
  Object.defineProperty(exports, "__esModule", { value: true });
75
75
  exports.getTransactionMethods = exports.executeAllActions = void 0;
76
76
  var executeAllActions = function (actions) { return __awaiter(void 0, void 0, void 0, function () {
77
- var i, action, finalAction, _a;
77
+ var i, action, tx, finalAction, _a;
78
78
  return __generator(this, function (_b) {
79
79
  switch (_b.label) {
80
80
  case 0:
81
81
  i = 0;
82
82
  _b.label = 1;
83
83
  case 1:
84
- if (!(i < actions.length - 1)) return [3 /*break*/, 4];
84
+ if (!(i < actions.length - 1)) return [3 /*break*/, 5];
85
85
  action = actions[i];
86
- if (!(action.type === "approval")) return [3 /*break*/, 3];
86
+ if (!(action.type === "approval")) return [3 /*break*/, 4];
87
87
  return [4 /*yield*/, action.transactionMethods.transact()];
88
88
  case 2:
89
- _b.sent();
90
- _b.label = 3;
89
+ tx = _b.sent();
90
+ return [4 /*yield*/, tx.wait()];
91
91
  case 3:
92
+ _b.sent();
93
+ _b.label = 4;
94
+ case 4:
92
95
  i++;
93
96
  return [3 /*break*/, 1];
94
- case 4:
97
+ case 5:
95
98
  finalAction = actions[actions.length - 1];
96
- if (!(finalAction.type === "create")) return [3 /*break*/, 6];
99
+ if (!(finalAction.type === "create")) return [3 /*break*/, 7];
97
100
  return [4 /*yield*/, finalAction.createOrder()];
98
- case 5:
101
+ case 6:
99
102
  _a = _b.sent();
100
- return [3 /*break*/, 8];
101
- case 6: return [4 /*yield*/, finalAction.transactionMethods.transact()];
102
- case 7:
103
+ return [3 /*break*/, 9];
104
+ case 7: return [4 /*yield*/, finalAction.transactionMethods.transact()];
105
+ case 8:
103
106
  _a = _b.sent();
104
- _b.label = 8;
105
- case 8: return [2 /*return*/, _a];
107
+ _b.label = 9;
108
+ case 9: return [2 /*return*/, _a];
106
109
  }
107
110
  });
108
111
  }); };
@@ -1 +1 @@
1
- {"version":3,"file":"usecase.js","sourceRoot":"","sources":["../../src/utils/usecase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usecase.js","sourceRoot":"","sources":["../../src/utils/usecase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,iBAAiB,GAAG,UAG/B,OAAmC;;;;;gBAE1B,CAAC,GAAG,CAAC;;;qBAAE,CAAA,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;gBAC9B,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;qBACtB,CAAA,MAAM,CAAC,IAAI,KAAK,UAAU,CAAA,EAA1B,wBAA0B;gBACjB,qBAAM,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,EAAA;;gBAA/C,EAAE,GAAG,SAA0C;gBACrD,qBAAM,EAAE,CAAC,IAAI,EAAE,EAAA;;gBAAf,SAAe,CAAC;;;gBAJoB,CAAC,EAAE,CAAA;;;gBAQrC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAM,CAAC;qBAE9C,CAAA,WAAW,CAAC,IAAI,KAAK,QAAQ,CAAA,EAA7B,wBAA6B;gBAChC,qBAAM,WAAW,CAAC,WAAW,EAAE,EAAA;;gBAA/B,KAAA,SAA+B,CAAA;;oBAC/B,qBAAM,WAAW,CAAC,kBAAkB,CAAC,QAAQ,EAAE,EAAA;;gBAA/C,KAAA,SAA+C,CAAA;;oBAFnD,0BAEoD;;;KACrD,CAAC;AAlBW,QAAA,iBAAiB,qBAkB5B;AAEF,IAAM,mBAAmB,GAAG,UAG1B,GAAuB;IAEvB,IAAM,SAAS,GAAG;QAChB,UAAU;QACV,UAAU;QACV,cAAc;QACd,sBAAsB;QACtB,OAAO;QACP,MAAM;QACN,YAAY;QACZ,YAAY;QACZ,iBAAiB;QACjB,OAAO;QACP,UAAU;QACV,eAAe;KAChB,CAAC;IAEF,OAAO,CACL,GAAG,KAAK,SAAS;QACjB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,UAAC,GAAG,IAAK,OAAA,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAvB,CAAuB,CAAC,CACzD,CAAC;AACJ,CAAC,CAAC;AAEK,IAAM,qBAAqB,GAAG,UAInC,QAAW,EACX,MAAS,EACT,IAAmC;IAEnC,IAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEtC,IAAI,gBAA2B,CAAC;IAEhC,IAAI,mBAAmB,CAAC,OAAO,CAAC,EAAE;QAChC,gBAAgB,GAAG,OAAO,CAAC;QAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;KACZ;IAED,OAAO;QACL,UAAU,EAAE,UAAC,SAAqB;;YAChC,IAAM,eAAe,yBAAQ,gBAAgB,GAAK,SAAS,CAAE,CAAC;YAE9D,OAAO,CAAA,KAAA,QAAQ,CAAC,UAAU,CAAA,CAAC,MAAgB,CAAC,2EACnC,IAAI,YAAE,eAAe,oBAC5B;QACJ,CAAC;QACD,WAAW,EAAE,UAAC,SAAqB;;YACjC,IAAM,eAAe,yBAAQ,gBAAgB,GAAK,SAAS,CAAE,CAAC;YAE9D,OAAO,CAAA,KAAA,QAAQ,CAAC,WAAW,CAAA,CAAC,MAAgB,CAAC,2EACpC,IAAI,YAAE,eAAe,oBAC5B;QACJ,CAAC;QACD,QAAQ,EAAE,UAAC,SAAqB;YAC9B,IAAM,eAAe,yBAAQ,gBAAgB,GAAK,SAAS,CAAE,CAAC;YAE9D,OAAO,QAAQ,CAAC,MAAgB,CAAC,OAA1B,QAAQ,yCAAsB,IAAI,YAAE,eAAe,WAAE;QAC9D,CAAC;QACD,gBAAgB,EAAE,UAAC,SAAqB;;YACtC,IAAM,eAAe,yBAAQ,gBAAgB,GAAK,SAAS,CAAE,CAAC;YAE9D,OAAO,CAAA,KAAA,QAAQ,CAAC,mBAAmB,CAAA,CAAC,MAAgB,CAAC,2EAC5C,IAAI,YAAE,eAAe,oBAC5B;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AA7CW,QAAA,qBAAqB,yBA6ChC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensea/seaport-js",
3
- "version": "1.0.2",
3
+ "version": "1.0.5",
4
4
  "description": "[Seaport](https://github.com/ProjectOpenSea/seaport) is a new marketplace protocol for safely and efficiently buying and selling NFTs. This is a JavaScript library intended to make interfacing with the contract reasonable and easy.",
5
5
  "license": "MIT",
6
6
  "author": "OpenSea Developers",
@@ -24,6 +24,7 @@
24
24
  "build": "hardhat compile && tsc -p tsconfig.build.json",
25
25
  "check-types": "tsc --noEmit -p src/__tests__/tsconfig.json",
26
26
  "check-types:incremental": "npm run check-types --incremental",
27
+ "coverage": "c8 yarn test",
27
28
  "eslint:check": "eslint . --max-warnings 0 --ext .js,.jsx,.ts,.tsx",
28
29
  "lint": "concurrently \"npm run check-types\" \"npm run eslint:check\" \"npm run prettier:check\" \"npm run prettier:check:package.json\"",
29
30
  "prepare": "husky install && npm run build",
@@ -34,49 +35,50 @@
34
35
  },
35
36
  "types": "lib/index.d.ts",
36
37
  "dependencies": {
37
- "@0xsequence/multicall": "0.39.0",
38
- "ethers": "5.6.7",
39
- "merkletreejs": "0.2.31"
38
+ "@0xsequence/multicall": "^0.39.0",
39
+ "ethers": "^5.6.7",
40
+ "merkletreejs": "^0.2.31"
40
41
  },
41
42
  "devDependencies": {
42
- "@nomiclabs/hardhat-ethers": "2.0.5",
43
- "@nomiclabs/hardhat-waffle": "2.0.3",
44
- "@rari-capital/solmate": "6.2.0",
45
- "@typechain/ethers-v5": "9.0.0",
46
- "@typechain/hardhat": "5.0.0",
47
- "@types/chai": "4.3.0",
48
- "@types/chai-as-promised": "7.1.5",
49
- "@types/mocha": "9.1.0",
50
- "@types/node": "12.20.47",
51
- "@typescript-eslint/eslint-plugin": "5.27.1",
52
- "@typescript-eslint/parser": "5.27.1",
53
- "chai": "4.3.6",
54
- "chai-as-promised": "7.1.1",
55
- "concurrently": "7.1.0",
56
- "dotenv": "10.0.0",
57
- "eslint": "8.17.0",
58
- "eslint-config-prettier": "8.5.0",
59
- "eslint-config-standard": "17.0.0",
60
- "eslint-plugin-import": "2.25.4",
61
- "eslint-plugin-n": "15.2.0",
62
- "eslint-plugin-prettier": "3.4.1",
63
- "eslint-plugin-promise": "6.0.0",
64
- "ethereum-waffle": "3.4.4",
65
- "hardhat": "2.9.1",
66
- "hardhat-gas-reporter": "1.0.8",
43
+ "@nomiclabs/hardhat-ethers": "^2.0.5",
44
+ "@nomiclabs/hardhat-waffle": "^2.0.3",
45
+ "@rari-capital/solmate": "^6.2.0",
46
+ "@typechain/ethers-v5": "^9.0.0",
47
+ "@typechain/hardhat": "^5.0.0",
48
+ "@types/chai": "^4.3.0",
49
+ "@types/chai-as-promised": "^7.1.5",
50
+ "@types/mocha": "^9.1.1",
51
+ "@types/node": "^12.20.47",
52
+ "@typescript-eslint/eslint-plugin": "^5.27.1",
53
+ "@typescript-eslint/parser": "^5.27.1",
54
+ "c8": "^7.11.3",
55
+ "chai": "^4.3.6",
56
+ "chai-as-promised": "^7.1.1",
57
+ "concurrently": "^7.1.0",
58
+ "dotenv": "^10.0.0",
59
+ "eslint": "^8.17.0",
60
+ "eslint-config-prettier": "^8.5.0",
61
+ "eslint-config-standard": "^17.0.0",
62
+ "eslint-plugin-import": "^2.25.4",
63
+ "eslint-plugin-n": "^15.2.0",
64
+ "eslint-plugin-prettier": "^3.4.1",
65
+ "eslint-plugin-promise": "^6.0.0",
66
+ "ethereum-waffle": "^3.4.4",
67
+ "hardhat": "^2.9.1",
68
+ "hardhat-gas-reporter": "^1.0.8",
67
69
  "husky": ">=6",
68
70
  "lint-staged": ">=10",
69
- "prettier": "2.5.1",
70
- "prettier-package-json": "2.6.3",
71
- "prettier-plugin-solidity": "1.0.0-beta.13",
71
+ "prettier": "^2.5.1",
72
+ "prettier-package-json": "^2.6.3",
73
+ "prettier-plugin-solidity": "^1.0.0-beta.13",
72
74
  "seaport": "git+https://github.com/ProjectOpenSea/seaport.git#76e508657888e3ec84039e1da269c822826991ef",
73
- "sinon": "13.0.1",
74
- "sinon-chai": "3.7.0",
75
- "solhint": "3.3.7",
76
- "solidity-coverage": "0.7.20",
77
- "ts-node": "10.7.0",
78
- "typechain": "7.0.1",
79
- "typescript": "4.6.2"
75
+ "sinon": "^13.0.1",
76
+ "sinon-chai": "^3.7.0",
77
+ "solhint": "^3.3.7",
78
+ "solidity-coverage": "^0.7.20",
79
+ "ts-node": "^10.7.0",
80
+ "typechain": "^7.0.1",
81
+ "typescript": "^4.6.2"
80
82
  },
81
83
  "engines": {
82
84
  "node": ">=14.0.0"