@bosonprotocol/core-sdk 1.40.1 → 1.40.2-alpha.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.
Files changed (145) hide show
  1. package/dist/cjs/accounts/interface.d.ts.map +1 -1
  2. package/dist/cjs/core-sdk.d.ts +3 -1
  3. package/dist/cjs/core-sdk.d.ts.map +1 -1
  4. package/dist/cjs/core-sdk.js +5 -1
  5. package/dist/cjs/core-sdk.js.map +1 -1
  6. package/dist/cjs/erc721/handler.d.ts +6 -0
  7. package/dist/cjs/erc721/handler.d.ts.map +1 -1
  8. package/dist/cjs/erc721/handler.js +13 -1
  9. package/dist/cjs/erc721/handler.js.map +1 -1
  10. package/dist/cjs/exchanges/handler.d.ts +8 -1
  11. package/dist/cjs/exchanges/handler.d.ts.map +1 -1
  12. package/dist/cjs/exchanges/handler.js +14 -1
  13. package/dist/cjs/exchanges/handler.js.map +1 -1
  14. package/dist/cjs/exchanges/mixin.d.ts.map +1 -1
  15. package/dist/cjs/exchanges/mixin.js +2 -6
  16. package/dist/cjs/exchanges/mixin.js.map +1 -1
  17. package/dist/cjs/marketplaces/mixin.d.ts +6 -0
  18. package/dist/cjs/marketplaces/mixin.d.ts.map +1 -0
  19. package/dist/cjs/marketplaces/mixin.js +19 -0
  20. package/dist/cjs/marketplaces/mixin.js.map +1 -0
  21. package/dist/cjs/marketplaces/opensea.d.ts +62 -0
  22. package/dist/cjs/marketplaces/opensea.d.ts.map +1 -0
  23. package/dist/cjs/marketplaces/opensea.js +230 -0
  24. package/dist/cjs/marketplaces/opensea.js.map +1 -0
  25. package/dist/cjs/marketplaces/types.d.ts +67 -0
  26. package/dist/cjs/marketplaces/types.d.ts.map +1 -0
  27. package/dist/cjs/marketplaces/types.js +18 -0
  28. package/dist/cjs/marketplaces/types.js.map +1 -0
  29. package/dist/cjs/price-discovery/handler.d.ts +11 -0
  30. package/dist/cjs/price-discovery/handler.d.ts.map +1 -0
  31. package/dist/cjs/price-discovery/handler.js +57 -0
  32. package/dist/cjs/price-discovery/handler.js.map +1 -0
  33. package/dist/cjs/price-discovery/index.d.ts +3 -0
  34. package/dist/cjs/price-discovery/index.d.ts.map +1 -0
  35. package/dist/cjs/price-discovery/index.js +29 -0
  36. package/dist/cjs/price-discovery/index.js.map +1 -0
  37. package/dist/cjs/price-discovery/interface.d.ts +6 -0
  38. package/dist/cjs/price-discovery/interface.d.ts.map +1 -0
  39. package/dist/cjs/price-discovery/interface.js +11 -0
  40. package/dist/cjs/price-discovery/interface.js.map +1 -0
  41. package/dist/cjs/price-discovery/mixin.d.ts +13 -0
  42. package/dist/cjs/price-discovery/mixin.d.ts.map +1 -0
  43. package/dist/cjs/price-discovery/mixin.js +36 -0
  44. package/dist/cjs/price-discovery/mixin.js.map +1 -0
  45. package/dist/cjs/seaport/handler.d.ts +0 -45
  46. package/dist/cjs/seaport/handler.d.ts.map +1 -1
  47. package/dist/cjs/seaport/handler.js +0 -27
  48. package/dist/cjs/seaport/handler.js.map +1 -1
  49. package/dist/cjs/seaport/index.d.ts +1 -1
  50. package/dist/cjs/seaport/index.d.ts.map +1 -1
  51. package/dist/cjs/seaport/index.js +2 -2
  52. package/dist/cjs/seaport/interface.d.ts +71 -0
  53. package/dist/cjs/seaport/interface.d.ts.map +1 -0
  54. package/dist/cjs/seaport/interface.js +42 -0
  55. package/dist/cjs/seaport/interface.js.map +1 -0
  56. package/dist/cjs/seaport/mixin.d.ts +4 -0
  57. package/dist/cjs/seaport/mixin.d.ts.map +1 -0
  58. package/dist/cjs/seaport/mixin.js +8 -0
  59. package/dist/cjs/seaport/mixin.js.map +1 -0
  60. package/dist/cjs/voucher/mixin.d.ts +5 -1
  61. package/dist/cjs/voucher/mixin.d.ts.map +1 -1
  62. package/dist/cjs/voucher/mixin.js +14 -2
  63. package/dist/cjs/voucher/mixin.js.map +1 -1
  64. package/dist/esm/accounts/interface.d.ts.map +1 -1
  65. package/dist/esm/core-sdk.d.ts +3 -1
  66. package/dist/esm/core-sdk.d.ts.map +1 -1
  67. package/dist/esm/core-sdk.js +5 -1
  68. package/dist/esm/core-sdk.js.map +1 -1
  69. package/dist/esm/erc721/handler.d.ts +6 -0
  70. package/dist/esm/erc721/handler.d.ts.map +1 -1
  71. package/dist/esm/erc721/handler.js +9 -0
  72. package/dist/esm/erc721/handler.js.map +1 -1
  73. package/dist/esm/exchanges/handler.d.ts +8 -1
  74. package/dist/esm/exchanges/handler.d.ts.map +1 -1
  75. package/dist/esm/exchanges/handler.js +11 -1
  76. package/dist/esm/exchanges/handler.js.map +1 -1
  77. package/dist/esm/exchanges/mixin.d.ts.map +1 -1
  78. package/dist/esm/exchanges/mixin.js +3 -7
  79. package/dist/esm/exchanges/mixin.js.map +1 -1
  80. package/dist/esm/marketplaces/mixin.d.ts +6 -0
  81. package/dist/esm/marketplaces/mixin.d.ts.map +1 -0
  82. package/dist/esm/marketplaces/mixin.js +15 -0
  83. package/dist/esm/marketplaces/mixin.js.map +1 -0
  84. package/dist/esm/marketplaces/opensea.d.ts +62 -0
  85. package/dist/esm/marketplaces/opensea.d.ts.map +1 -0
  86. package/dist/esm/marketplaces/opensea.js +214 -0
  87. package/dist/esm/marketplaces/opensea.js.map +1 -0
  88. package/dist/esm/marketplaces/types.d.ts +67 -0
  89. package/dist/esm/marketplaces/types.d.ts.map +1 -0
  90. package/dist/esm/marketplaces/types.js +15 -0
  91. package/dist/esm/marketplaces/types.js.map +1 -0
  92. package/dist/esm/price-discovery/handler.d.ts +11 -0
  93. package/dist/esm/price-discovery/handler.d.ts.map +1 -0
  94. package/dist/esm/price-discovery/handler.js +19 -0
  95. package/dist/esm/price-discovery/handler.js.map +1 -0
  96. package/dist/esm/price-discovery/index.d.ts +3 -0
  97. package/dist/esm/price-discovery/index.d.ts.map +1 -0
  98. package/dist/esm/price-discovery/index.js +3 -0
  99. package/dist/esm/price-discovery/index.js.map +1 -0
  100. package/dist/esm/price-discovery/interface.d.ts +6 -0
  101. package/dist/esm/price-discovery/interface.d.ts.map +1 -0
  102. package/dist/esm/price-discovery/interface.js +7 -0
  103. package/dist/esm/price-discovery/interface.js.map +1 -0
  104. package/dist/esm/price-discovery/mixin.d.ts +13 -0
  105. package/dist/esm/price-discovery/mixin.d.ts.map +1 -0
  106. package/dist/esm/price-discovery/mixin.js +21 -0
  107. package/dist/esm/price-discovery/mixin.js.map +1 -0
  108. package/dist/esm/seaport/handler.d.ts +0 -45
  109. package/dist/esm/seaport/handler.d.ts.map +1 -1
  110. package/dist/esm/seaport/handler.js +0 -23
  111. package/dist/esm/seaport/handler.js.map +1 -1
  112. package/dist/esm/seaport/index.d.ts +1 -1
  113. package/dist/esm/seaport/index.d.ts.map +1 -1
  114. package/dist/esm/seaport/index.js +1 -1
  115. package/dist/esm/seaport/index.js.map +1 -1
  116. package/dist/esm/seaport/interface.d.ts +71 -0
  117. package/dist/esm/seaport/interface.d.ts.map +1 -0
  118. package/dist/esm/seaport/interface.js +37 -0
  119. package/dist/esm/seaport/interface.js.map +1 -0
  120. package/dist/esm/seaport/mixin.d.ts +4 -0
  121. package/dist/esm/seaport/mixin.d.ts.map +1 -0
  122. package/dist/esm/seaport/mixin.js +4 -0
  123. package/dist/esm/seaport/mixin.js.map +1 -0
  124. package/dist/esm/voucher/mixin.d.ts +5 -1
  125. package/dist/esm/voucher/mixin.d.ts.map +1 -1
  126. package/dist/esm/voucher/mixin.js +12 -2
  127. package/dist/esm/voucher/mixin.js.map +1 -1
  128. package/package.json +4 -3
  129. package/src/accounts/interface.ts +1 -1
  130. package/src/core-sdk.ts +8 -2
  131. package/src/erc721/handler.ts +15 -0
  132. package/src/exchanges/handler.ts +19 -2
  133. package/src/exchanges/mixin.ts +5 -6
  134. package/src/marketplaces/mixin.ts +24 -0
  135. package/src/marketplaces/opensea.ts +361 -0
  136. package/src/marketplaces/types.ts +73 -0
  137. package/src/price-discovery/handler.ts +37 -0
  138. package/src/price-discovery/index.ts +2 -0
  139. package/src/price-discovery/interface.ts +18 -0
  140. package/src/price-discovery/mixin.ts +30 -0
  141. package/src/seaport/handler.ts +0 -57
  142. package/src/seaport/index.ts +1 -1
  143. package/src/seaport/interface.ts +100 -0
  144. package/src/seaport/mixin.ts +3 -0
  145. package/src/voucher/mixin.ts +21 -2
@@ -0,0 +1,71 @@
1
+ import { BigNumberish } from "@ethersproject/bignumber";
2
+ export declare enum eOrderType {
3
+ FULL_OPEN = 0,
4
+ PARTIAL_OPEN = 1,
5
+ FULL_RESTRICTED = 2,
6
+ PARTIAL_RESTRICTED = 3,
7
+ CONTRACT = 4
8
+ }
9
+ export declare enum eItemType {
10
+ NATIVE = 0,
11
+ ERC20 = 1,
12
+ ERC721 = 2,
13
+ ERC1155 = 3,
14
+ ERC721_WITH_CRITERIA = 4,
15
+ ERC1155_WITH_CRITERIA = 5
16
+ }
17
+ type OfferItem = {
18
+ itemType: eItemType;
19
+ token: string;
20
+ identifierOrCriteria: BigNumberish;
21
+ startAmount: BigNumberish;
22
+ endAmount: BigNumberish;
23
+ };
24
+ type ConsiderationItem = OfferItem & {
25
+ recipient: string;
26
+ };
27
+ type OrderParameters = {
28
+ offerer: string;
29
+ zone: string;
30
+ offer: OfferItem[];
31
+ consideration: ConsiderationItem[];
32
+ orderType: eOrderType;
33
+ startTime: BigNumberish;
34
+ endTime: BigNumberish;
35
+ zoneHash: string;
36
+ salt: BigNumberish;
37
+ conduitKey: string;
38
+ totalOriginalConsiderationItems: BigNumberish;
39
+ };
40
+ export type Order = {
41
+ parameters: OrderParameters;
42
+ signature: string;
43
+ };
44
+ export type AdvancedOrder = Order & {
45
+ numerator: BigNumberish;
46
+ denominator: BigNumberish;
47
+ extraData: string;
48
+ };
49
+ export declare enum Side {
50
+ OFFER = 0,
51
+ CONSIDERATION = 1
52
+ }
53
+ export type CriteriaResolver = {
54
+ orderIndex: BigNumberish;
55
+ side: number;
56
+ index: BigNumberish;
57
+ identifier: BigNumberish;
58
+ criteriaProof: string[];
59
+ };
60
+ export type Fulfillment = {
61
+ offerComponents: FulfillmentComponent[];
62
+ considerationComponents: FulfillmentComponent[];
63
+ };
64
+ export type FulfillmentComponent = {
65
+ orderIndex: BigNumberish;
66
+ itemIndex: BigNumberish;
67
+ };
68
+ export declare function encodeValidate(orders: Order[]): string;
69
+ export declare function encodeMatchAdvancedOrders(advancedOrders: AdvancedOrder[], criteriaResolvers: CriteriaResolver[], fulfillments: Fulfillment[], recipient: string): string;
70
+ export {};
71
+ //# sourceMappingURL=interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/seaport/interface.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIxD,oBAAY,UAAU;IACpB,SAAS,IAAI;IACb,YAAY,IAAI;IAChB,eAAe,IAAI;IACnB,kBAAkB,IAAI;IACtB,QAAQ,IAAI;CACb;AAED,oBAAY,SAAS;IACnB,MAAM,IAAI;IACV,KAAK,IAAI;IACT,MAAM,IAAI;IACV,OAAO,IAAI;IACX,oBAAoB,IAAI;IACxB,qBAAqB,IAAI;CAC1B;AAED,KAAK,SAAS,GAAG;IACf,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB,EAAE,YAAY,CAAC;IACnC,WAAW,EAAE,YAAY,CAAC;IAC1B,SAAS,EAAE,YAAY,CAAC;CACzB,CAAC;AAEF,KAAK,iBAAiB,GAAG,SAAS,GAAG;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,SAAS,EAAE,UAAU,CAAC;IACtB,SAAS,EAAE,YAAY,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,+BAA+B,EAAE,YAAY,CAAC;CAC/C,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG;IAClB,UAAU,EAAE,eAAe,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG;IAClC,SAAS,EAAE,YAAY,CAAC;IACxB,WAAW,EAAE,YAAY,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,oBAAY,IAAI;IACd,KAAK,IAAI;IACT,aAAa,IAAI;CAClB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,YAAY,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE,YAAY,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,eAAe,EAAE,oBAAoB,EAAE,CAAC;IACxC,uBAAuB,EAAE,oBAAoB,EAAE,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,EAAE,YAAY,CAAC;IACzB,SAAS,EAAE,YAAY,CAAC;CACzB,CAAC;AAEF,wBAAgB,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,UAE7C;AAED,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,aAAa,EAAE,EAC/B,iBAAiB,EAAE,gBAAgB,EAAE,EACrC,YAAY,EAAE,WAAW,EAAE,EAC3B,SAAS,EAAE,MAAM,UAQlB"}
@@ -0,0 +1,37 @@
1
+ import { abis } from "@bosonprotocol/common";
2
+ import { Interface } from "@ethersproject/abi";
3
+ const seaportIface = new Interface(abis.SeaportABI);
4
+ export var eOrderType;
5
+ (function (eOrderType) {
6
+ eOrderType[eOrderType["FULL_OPEN"] = 0] = "FULL_OPEN";
7
+ eOrderType[eOrderType["PARTIAL_OPEN"] = 1] = "PARTIAL_OPEN";
8
+ eOrderType[eOrderType["FULL_RESTRICTED"] = 2] = "FULL_RESTRICTED";
9
+ eOrderType[eOrderType["PARTIAL_RESTRICTED"] = 3] = "PARTIAL_RESTRICTED";
10
+ eOrderType[eOrderType["CONTRACT"] = 4] = "CONTRACT";
11
+ })(eOrderType || (eOrderType = {}));
12
+ export var eItemType;
13
+ (function (eItemType) {
14
+ eItemType[eItemType["NATIVE"] = 0] = "NATIVE";
15
+ eItemType[eItemType["ERC20"] = 1] = "ERC20";
16
+ eItemType[eItemType["ERC721"] = 2] = "ERC721";
17
+ eItemType[eItemType["ERC1155"] = 3] = "ERC1155";
18
+ eItemType[eItemType["ERC721_WITH_CRITERIA"] = 4] = "ERC721_WITH_CRITERIA";
19
+ eItemType[eItemType["ERC1155_WITH_CRITERIA"] = 5] = "ERC1155_WITH_CRITERIA";
20
+ })(eItemType || (eItemType = {}));
21
+ export var Side;
22
+ (function (Side) {
23
+ Side[Side["OFFER"] = 0] = "OFFER";
24
+ Side[Side["CONSIDERATION"] = 1] = "CONSIDERATION"; // items that must be received
25
+ })(Side || (Side = {}));
26
+ export function encodeValidate(orders) {
27
+ return seaportIface.encodeFunctionData("validate", [orders]);
28
+ }
29
+ export function encodeMatchAdvancedOrders(advancedOrders, criteriaResolvers, fulfillments, recipient) {
30
+ return seaportIface.encodeFunctionData("matchAdvancedOrders", [
31
+ advancedOrders,
32
+ criteriaResolvers,
33
+ fulfillments,
34
+ recipient
35
+ ]);
36
+ }
37
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/seaport/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,MAAM,YAAY,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAEpD,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,qDAAa,CAAA;IACb,2DAAgB,CAAA;IAChB,iEAAmB,CAAA;IACnB,uEAAsB,CAAA;IACtB,mDAAY,CAAA;AACd,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB;AAED,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,6CAAU,CAAA;IACV,2CAAS,CAAA;IACT,6CAAU,CAAA;IACV,+CAAW,CAAA;IACX,yEAAwB,CAAA;IACxB,2EAAyB,CAAA;AAC3B,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAuCD,MAAM,CAAN,IAAY,IAGX;AAHD,WAAY,IAAI;IACd,iCAAS,CAAA;IACT,iDAAiB,CAAA,CAAC,8BAA8B;AAClD,CAAC,EAHW,IAAI,KAAJ,IAAI,QAGf;AAoBD,MAAM,UAAU,cAAc,CAAC,MAAe;IAC5C,OAAO,YAAY,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,cAA+B,EAC/B,iBAAqC,EACrC,YAA2B,EAC3B,SAAiB;IAEjB,OAAO,YAAY,CAAC,kBAAkB,CAAC,qBAAqB,EAAE;QAC5D,cAAc;QACd,iBAAiB;QACjB,YAAY;QACZ,SAAS;KACV,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { BaseCoreSDK } from "./../mixins/base-core-sdk";
2
+ export declare class SeaportMixin extends BaseCoreSDK {
3
+ }
4
+ //# sourceMappingURL=mixin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/seaport/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,qBAAa,YAAa,SAAQ,WAAW;CAAG"}
@@ -0,0 +1,4 @@
1
+ import { BaseCoreSDK } from "./../mixins/base-core-sdk";
2
+ export class SeaportMixin extends BaseCoreSDK {
3
+ }
4
+ //# sourceMappingURL=mixin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/seaport/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,MAAM,OAAO,YAAa,SAAQ,WAAW;CAAG"}
@@ -1,7 +1,7 @@
1
1
  import { TransactionResponse } from "@bosonprotocol/common";
2
2
  import { Range } from "@bosonprotocol/common/src/types";
3
3
  import { BigNumberish } from "@ethersproject/bignumber";
4
- import { Order as SeaportOrder } from "../seaport/handler";
4
+ import { Order as SeaportOrder } from "../seaport/interface";
5
5
  import { BaseCoreSDK } from "./../mixins/base-core-sdk";
6
6
  export declare class VoucherMixin extends BaseCoreSDK {
7
7
  /**
@@ -57,6 +57,10 @@ export declare class VoucherMixin extends BaseCoreSDK {
57
57
  setApprovalForAllToContract(operator: string, approved: boolean, overrides?: Partial<{
58
58
  contractAddress: string;
59
59
  }>): Promise<TransactionResponse>;
60
+ approveProtocolForAll(overrides?: Partial<{
61
+ operator: string;
62
+ contractAddress: string;
63
+ }>): Promise<TransactionResponse>;
60
64
  setContractURI(contractURI: string, collectionIndex: BigNumberish): Promise<TransactionResponse>;
61
65
  validateSeaportOrders(openseaConduit: string, seaportContract: string, orders: SeaportOrder[], overrides?: Partial<{
62
66
  contractAddress: string;
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/voucher/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAInE,OAAO,EAAkB,KAAK,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;;;;OAKG;IACU,qBAAqB,CAChC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,EACpB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,mBAAmB,CAAC;IAY/B;;;;;OAKG;IACU,oBAAoB,CAC/B,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,MAAM,CAAC;IAWlB;;;;;OAKG;IACU,iBAAiB,CAC5B,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,KAAK,CAAC;IAWjB;;;;;OAKG;IACU,OAAO,CAClB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,EACpB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,mBAAmB,CAAC;IAY/B;;;;;OAKG;IACU,YAAY,CACvB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,YAAY,EAChB,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,OAAO,CAAC;QACjB,KAAK,EAAE,YAAY,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,mBAAmB,CAAC;IAclB,gBAAgB,CAC3B,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM;IAeI,2BAA2B,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM;IAeI,cAAc,CACzB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,YAAY,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAwBlB,qBAAqB,CAChC,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,OAAO,CAAC;KAC1B,CAA6B;CA6BjC"}
1
+ {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/voucher/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAC;AACxD,OAAO,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAInE,OAAO,EAAkB,KAAK,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,qBAAa,YAAa,SAAQ,WAAW;IAC3C;;;;;OAKG;IACU,qBAAqB,CAChC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,EACpB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,mBAAmB,CAAC;IAY/B;;;;;OAKG;IACU,oBAAoB,CAC/B,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,MAAM,CAAC;IAWlB;;;;;OAKG;IACU,iBAAiB,CAC5B,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,KAAK,CAAC;IAWjB;;;;;OAKG;IACU,OAAO,CAClB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,EACpB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,mBAAmB,CAAC;IAY/B;;;;;OAKG;IACU,YAAY,CACvB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,YAAY,EAChB,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,OAAO,CAAC;QACjB,KAAK,EAAE,YAAY,CAAC;QACpB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM,GACN,OAAO,CAAC,mBAAmB,CAAC;IAclB,gBAAgB,CAC3B,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM;IAeI,2BAA2B,CACtC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,EACjB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM;IAeI,qBAAqB,CAChC,SAAS,GAAE,OAAO,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAM;IAeI,cAAc,CACzB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,YAAY,GAC5B,OAAO,CAAC,mBAAmB,CAAC;IAwBlB,qBAAqB,CAChC,cAAc,EAAE,MAAM,EACtB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,YAAY,EAAE,EACtB,SAAS,GAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,eAAe,EAAE,OAAO,CAAC;KAC1B,CAA6B;CA6BjC"}
@@ -1,8 +1,8 @@
1
1
  import { BigNumber } from "@ethersproject/bignumber";
2
2
  import { handler } from ".";
3
- import { accounts } from "..";
3
+ import { accounts, erc721 } from "..";
4
4
  import { getOfferById } from "../offers/subgraph";
5
- import { encodeValidate } from "../seaport/handler";
5
+ import { encodeValidate } from "../seaport/interface";
6
6
  import { BaseCoreSDK } from "./../mixins/base-core-sdk";
7
7
  export class VoucherMixin extends BaseCoreSDK {
8
8
  /**
@@ -104,6 +104,16 @@ export class VoucherMixin extends BaseCoreSDK {
104
104
  web3Lib: this._web3Lib
105
105
  });
106
106
  }
107
+ async approveProtocolForAll(overrides = {}) {
108
+ const sellerAddress = await this._web3Lib.getSignerAddress();
109
+ const seller = await accounts.subgraph.getSellerByAddress(this._subgraphUrl, sellerAddress);
110
+ return erc721.handler.setApprovalForAll({
111
+ operator: overrides.operator || this._protocolDiamond,
112
+ approved: true,
113
+ contractAddress: overrides.contractAddress || seller.voucherCloneAddress,
114
+ web3Lib: this._web3Lib
115
+ });
116
+ }
107
117
  async setContractURI(contractURI, collectionIndex) {
108
118
  const sellerAddress = await this._web3Lib.getSignerAddress();
109
119
  const seller = await accounts.subgraph.getSellerByAddress(this._subgraphUrl, sellerAddress);
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/voucher/mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/voucher/mixin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bosonprotocol/core-sdk",
3
- "version": "1.40.1",
3
+ "version": "1.40.2-alpha.0",
4
4
  "description": "Facilitates interaction with the contracts and subgraphs of the Boson Protocol",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -35,7 +35,7 @@
35
35
  "access": "public"
36
36
  },
37
37
  "dependencies": {
38
- "@bosonprotocol/common": "^1.27.1",
38
+ "@bosonprotocol/common": "^1.27.2-alpha.0",
39
39
  "@ethersproject/abi": "^5.5.0",
40
40
  "@ethersproject/address": "^5.5.0",
41
41
  "@ethersproject/bignumber": "^5.5.0",
@@ -46,6 +46,7 @@
46
46
  "graphql": "^16.5.0",
47
47
  "graphql-request": "^4.3.0",
48
48
  "mustache": "^4.2.0",
49
+ "opensea-js": "^7.1.5",
49
50
  "schema-to-yup": "^1.11.11",
50
51
  "yup": "^0.32.11"
51
52
  },
@@ -61,5 +62,5 @@
61
62
  "overrides": {
62
63
  "typescript": "^5.1.6"
63
64
  },
64
- "gitHead": "35cab4b4bd031f556f2606ed784bf8bdb3e1b02b"
65
+ "gitHead": "9e1e68033ed1d3b8cea2d5021cbdeb28abe8633c"
65
66
  }
@@ -1,6 +1,6 @@
1
1
  import { Interface } from "@ethersproject/abi";
2
2
  import { formatBytes32String } from "@ethersproject/strings";
3
- import { BigNumberish, BigNumber } from "@ethersproject/bignumber";
3
+ import { BigNumberish } from "@ethersproject/bignumber";
4
4
  import {
5
5
  CreateSellerArgs,
6
6
  CreateDisputeResolverArgs,
package/src/core-sdk.ts CHANGED
@@ -27,6 +27,8 @@ import { ERC165Mixin } from "./erc165/mixin";
27
27
  import { ProtocolConfigMixin } from "./protocol-config/mixin";
28
28
  import { ErrorMixin } from "./errors/mixin";
29
29
  import { SubgraphMixin } from "./subgraph/mixin";
30
+ import { PriceDiscoveryMixin } from "./price-discovery/mixin";
31
+ import { MarketplaceMixin } from "./marketplaces/mixin";
30
32
 
31
33
  export class CoreSDK extends BaseCoreSDK {
32
34
  /**
@@ -149,7 +151,9 @@ export interface CoreSDK
149
151
  ERC165Mixin,
150
152
  ProtocolConfigMixin,
151
153
  ErrorMixin,
152
- SubgraphMixin {}
154
+ SubgraphMixin,
155
+ PriceDiscoveryMixin,
156
+ MarketplaceMixin {}
153
157
  applyMixins(CoreSDK, [
154
158
  MetadataMixin,
155
159
  AccountsMixin,
@@ -169,5 +173,7 @@ applyMixins(CoreSDK, [
169
173
  ERC165Mixin,
170
174
  ProtocolConfigMixin,
171
175
  ErrorMixin,
172
- SubgraphMixin
176
+ SubgraphMixin,
177
+ PriceDiscoveryMixin,
178
+ MarketplaceMixin
173
179
  ]);
@@ -95,3 +95,18 @@ export async function tokenOfOwnerByIndex(args: {
95
95
  );
96
96
  return String(tokenId);
97
97
  }
98
+
99
+ export async function setApprovalForAll(args: {
100
+ contractAddress: string;
101
+ operator: string;
102
+ approved: boolean;
103
+ web3Lib: Web3LibAdapter;
104
+ }) {
105
+ return args.web3Lib.sendTransaction({
106
+ to: args.contractAddress,
107
+ data: erc721Iface.encodeFunctionData("setApprovalForAll", [
108
+ args.operator,
109
+ args.approved
110
+ ])
111
+ });
112
+ }
@@ -1,4 +1,4 @@
1
- import { BigNumberish } from "@ethersproject/bignumber";
1
+ import { BigNumberish, BigNumber } from "@ethersproject/bignumber";
2
2
  import { AddressZero } from "@ethersproject/constants";
3
3
  import { Web3LibAdapter, TransactionResponse } from "@bosonprotocol/common";
4
4
  import {
@@ -26,7 +26,7 @@ type BaseExchangeHandlerArgs = {
26
26
  web3Lib: Web3LibAdapter;
27
27
  };
28
28
 
29
- function checkOfferIsCommittable(
29
+ export function checkOfferIsCommittable(
30
30
  offerId: BigNumberish,
31
31
  offer: OfferFieldsFragment
32
32
  ) {
@@ -339,3 +339,20 @@ function assertCompletableExchange(
339
339
  }
340
340
  }
341
341
  }
342
+
343
+ export function getExchangeTokenId(
344
+ exchangeId: BigNumberish,
345
+ offerId: BigNumberish
346
+ ): BigNumber {
347
+ // Since v2.2.1, tokenId = exchangeId | offerId << 128
348
+ return BigNumber.from(offerId).shl(128).add(exchangeId);
349
+ }
350
+
351
+ export function parseTokenId(tokenId: BigNumberish): {
352
+ offerId: BigNumber;
353
+ exchangeId: BigNumber;
354
+ } {
355
+ const offerId = BigNumber.from(tokenId).shr(128);
356
+ const exchangeId = BigNumber.from(tokenId).mask(128);
357
+ return { offerId, exchangeId };
358
+ }
@@ -11,7 +11,9 @@ import {
11
11
  completeExchange,
12
12
  completeExchangeBatch,
13
13
  expireVoucher,
14
- commitToConditionalOffer
14
+ commitToConditionalOffer,
15
+ getExchangeTokenId,
16
+ parseTokenId
15
17
  } from "./handler";
16
18
  import { getExchangeById, getExchanges } from "./subgraph";
17
19
  import { bosonExchangeHandlerIface } from "./interface";
@@ -213,16 +215,13 @@ export class ExchangesMixin extends BaseCoreSDK {
213
215
  exchangeId: BigNumberish,
214
216
  offerId: BigNumberish
215
217
  ): BigNumber {
216
- // Since v2.2.1, tokenId = exchangeId | offerId << 128
217
- return BigNumber.from(offerId).shl(128).add(exchangeId);
218
+ return getExchangeTokenId(exchangeId, offerId);
218
219
  }
219
220
 
220
221
  public parseTokenId(tokenId: BigNumberish): {
221
222
  offerId: BigNumber;
222
223
  exchangeId: BigNumber;
223
224
  } {
224
- const offerId = BigNumber.from(tokenId).shr(128);
225
- const exchangeId = BigNumber.from(tokenId).mask(128);
226
- return { offerId, exchangeId };
225
+ return parseTokenId(tokenId);
227
226
  }
228
227
  }
@@ -0,0 +1,24 @@
1
+ import { BaseCoreSDK } from "./../mixins/base-core-sdk";
2
+ import { OpenSeaMarketplace, OpenSeaSDKHandler } from "./opensea";
3
+ import { MarketplaceType, MarketplaceHandler, Marketplace } from "./types";
4
+
5
+ export class MarketplaceMixin extends BaseCoreSDK {
6
+ public marketplace(
7
+ type: MarketplaceType,
8
+ handler: MarketplaceHandler,
9
+ feeRecipient: string
10
+ ): Marketplace {
11
+ switch (type) {
12
+ case MarketplaceType.OPENSEA: {
13
+ return new OpenSeaMarketplace(
14
+ type,
15
+ handler as OpenSeaSDKHandler,
16
+ this._contracts,
17
+ feeRecipient
18
+ );
19
+ }
20
+ default:
21
+ throw new Error(`Not Supported Marketplace Type '${type}'`);
22
+ }
23
+ }
24
+ }