@bosonprotocol/core-sdk 1.44.0-alpha.8 → 1.44.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/dist/cjs/accounts/mixin.d.ts +1 -0
- package/dist/cjs/accounts/mixin.d.ts.map +1 -1
- package/dist/cjs/accounts/mixin.js +4 -2
- package/dist/cjs/accounts/mixin.js.map +1 -1
- package/dist/cjs/exchanges/handler.d.ts.map +1 -1
- package/dist/cjs/exchanges/handler.js +16 -15
- package/dist/cjs/exchanges/handler.js.map +1 -1
- package/dist/cjs/meta-tx/mixin.d.ts +3 -1
- package/dist/cjs/meta-tx/mixin.d.ts.map +1 -1
- package/dist/cjs/meta-tx/mixin.js +1 -1
- package/dist/cjs/meta-tx/mixin.js.map +1 -1
- package/dist/cjs/native-meta-tx/tokenSpecifics.d.ts.map +1 -1
- package/dist/cjs/offers/handler.d.ts +2 -0
- package/dist/cjs/offers/handler.d.ts.map +1 -1
- package/dist/cjs/offers/handler.js +9 -0
- package/dist/cjs/offers/handler.js.map +1 -1
- package/dist/cjs/offers/mixin.d.ts.map +1 -1
- package/dist/cjs/offers/mixin.js +1 -0
- package/dist/cjs/offers/mixin.js.map +1 -1
- package/dist/cjs/orchestration/mixin.d.ts +43 -8
- package/dist/cjs/orchestration/mixin.d.ts.map +1 -1
- package/dist/cjs/orchestration/mixin.js +84 -85
- package/dist/cjs/orchestration/mixin.js.map +1 -1
- package/dist/cjs/utils/promises.d.ts.map +1 -1
- package/dist/esm/accounts/mixin.d.ts +1 -0
- package/dist/esm/accounts/mixin.d.ts.map +1 -1
- package/dist/esm/accounts/mixin.js +3 -1
- package/dist/esm/accounts/mixin.js.map +1 -1
- package/dist/esm/exchanges/handler.d.ts.map +1 -1
- package/dist/esm/exchanges/handler.js +6 -7
- package/dist/esm/exchanges/handler.js.map +1 -1
- package/dist/esm/meta-tx/mixin.d.ts +3 -1
- package/dist/esm/meta-tx/mixin.d.ts.map +1 -1
- package/dist/esm/meta-tx/mixin.js +1 -1
- package/dist/esm/meta-tx/mixin.js.map +1 -1
- package/dist/esm/native-meta-tx/tokenSpecifics.d.ts.map +1 -1
- package/dist/esm/offers/handler.d.ts +2 -0
- package/dist/esm/offers/handler.d.ts.map +1 -1
- package/dist/esm/offers/handler.js +9 -0
- package/dist/esm/offers/handler.js.map +1 -1
- package/dist/esm/offers/mixin.d.ts.map +1 -1
- package/dist/esm/offers/mixin.js +1 -0
- package/dist/esm/offers/mixin.js.map +1 -1
- package/dist/esm/orchestration/mixin.d.ts +43 -8
- package/dist/esm/orchestration/mixin.d.ts.map +1 -1
- package/dist/esm/orchestration/mixin.js +126 -85
- package/dist/esm/orchestration/mixin.js.map +1 -1
- package/dist/esm/utils/promises.d.ts.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/accounts/mixin.ts +5 -1
- package/src/exchanges/handler.ts +18 -8
- package/src/meta-tx/mixin.ts +5 -2
- package/src/offers/handler.ts +24 -0
- package/src/offers/mixin.ts +1 -0
- package/src/orchestration/mixin.ts +315 -42
|
@@ -1,137 +1,178 @@
|
|
|
1
1
|
import { handler } from ".";
|
|
2
2
|
import { BaseCoreSDK } from "./../mixins/base-core-sdk";
|
|
3
3
|
export class OrchestrationMixin extends BaseCoreSDK {
|
|
4
|
-
|
|
5
|
-
* Creates an offer with a specific conditions
|
|
6
|
-
* @param offerToCreate - Offer arguments.
|
|
7
|
-
* @param condition - contract condition applied to the offer
|
|
8
|
-
* @param overrides - Optional overrides.
|
|
9
|
-
* @returns Transaction response.
|
|
10
|
-
*/
|
|
4
|
+
// Implementation
|
|
11
5
|
async createOfferWithCondition(offerToCreate, condition, overrides = {}) {
|
|
12
|
-
|
|
6
|
+
const { returnTxInfo } = overrides;
|
|
7
|
+
const createArgs = {
|
|
13
8
|
offerToCreate,
|
|
14
|
-
|
|
9
|
+
condition,
|
|
15
10
|
web3Lib: this._web3Lib,
|
|
16
11
|
metadataStorage: this._metadataStorage,
|
|
17
12
|
theGraphStorage: this._theGraphStorage,
|
|
18
|
-
|
|
19
|
-
}
|
|
13
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
14
|
+
};
|
|
15
|
+
if (returnTxInfo === true) {
|
|
16
|
+
return handler.createOfferWithCondition({
|
|
17
|
+
...createArgs,
|
|
18
|
+
returnTxInfo: true
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
return handler.createOfferWithCondition({
|
|
23
|
+
...createArgs,
|
|
24
|
+
returnTxInfo: false
|
|
25
|
+
});
|
|
26
|
+
}
|
|
20
27
|
}
|
|
21
|
-
|
|
22
|
-
* Creates a seller account and offer with a specific conditions
|
|
23
|
-
* This transaction only succeeds if there is no existing seller account for the connected signer.
|
|
24
|
-
* @param sellerToCreate - Addresses to set in the seller account.
|
|
25
|
-
* @param offerToCreate - Offer arguments.
|
|
26
|
-
* @param condition - contract condition applied to the offer
|
|
27
|
-
* @param overrides - Optional overrides.
|
|
28
|
-
* @returns Transaction response.
|
|
29
|
-
*/
|
|
28
|
+
// Implementation
|
|
30
29
|
async createSellerAndOfferWithCondition(sellerToCreate, offerToCreate, condition, overrides = {}) {
|
|
31
|
-
|
|
30
|
+
const { returnTxInfo } = overrides;
|
|
31
|
+
const createArgs = {
|
|
32
32
|
sellerToCreate,
|
|
33
33
|
offerToCreate,
|
|
34
|
-
|
|
34
|
+
condition,
|
|
35
35
|
web3Lib: this._web3Lib,
|
|
36
36
|
metadataStorage: this._metadataStorage,
|
|
37
37
|
theGraphStorage: this._theGraphStorage,
|
|
38
|
-
|
|
39
|
-
}
|
|
38
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
39
|
+
};
|
|
40
|
+
if (returnTxInfo === true) {
|
|
41
|
+
return handler.createSellerAndOfferWithCondition({
|
|
42
|
+
...createArgs,
|
|
43
|
+
returnTxInfo: true
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
return handler.createSellerAndOfferWithCondition({
|
|
48
|
+
...createArgs,
|
|
49
|
+
returnTxInfo: false
|
|
50
|
+
});
|
|
51
|
+
}
|
|
40
52
|
}
|
|
41
|
-
|
|
42
|
-
* Creates a preminted offer and adds it to an existing group
|
|
43
|
-
* @param offerToCreate - Offer arguments.
|
|
44
|
-
* @param reservedRangeLength - Already reserved range length.
|
|
45
|
-
* @param groupId - Group ID the offer will be added to
|
|
46
|
-
* @param overrides - Optional overrides.
|
|
47
|
-
* @returns Transaction response.
|
|
48
|
-
*/
|
|
53
|
+
// Implementation
|
|
49
54
|
async createPremintedOfferAddToGroup(offerToCreate, premintParameters, groupId, overrides = {}) {
|
|
50
|
-
|
|
55
|
+
const { returnTxInfo } = overrides;
|
|
56
|
+
const createArgs = {
|
|
51
57
|
offerToCreate,
|
|
52
58
|
premintParameters,
|
|
53
59
|
groupId,
|
|
54
|
-
contractAddress: overrides.contractAddress || this._protocolDiamond,
|
|
55
60
|
web3Lib: this._web3Lib,
|
|
56
61
|
metadataStorage: this._metadataStorage,
|
|
57
|
-
theGraphStorage: this._theGraphStorage
|
|
58
|
-
|
|
62
|
+
theGraphStorage: this._theGraphStorage,
|
|
63
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
64
|
+
};
|
|
65
|
+
if (returnTxInfo === true) {
|
|
66
|
+
return handler.createPremintedOfferAddToGroup({
|
|
67
|
+
...createArgs,
|
|
68
|
+
returnTxInfo: true
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
return handler.createPremintedOfferAddToGroup({
|
|
73
|
+
...createArgs,
|
|
74
|
+
returnTxInfo: false
|
|
75
|
+
});
|
|
76
|
+
}
|
|
59
77
|
}
|
|
60
|
-
|
|
61
|
-
* Creates a seller account and preminted offer
|
|
62
|
-
* This transaction only succeeds if there is no existing seller account for the connected signer.
|
|
63
|
-
* @param sellerToCreate - Addresses to set in the seller account.
|
|
64
|
-
* @param offerToCreate - Offer arguments.
|
|
65
|
-
* @param condition - contract condition applied to the offer
|
|
66
|
-
* @param overrides - Optional overrides.
|
|
67
|
-
* @returns Transaction response.
|
|
68
|
-
*/
|
|
78
|
+
// Implementation
|
|
69
79
|
async createSellerAndPremintedOffer(sellerToCreate, offerToCreate, premintParameters, overrides = {}) {
|
|
70
|
-
|
|
80
|
+
const { returnTxInfo } = overrides;
|
|
81
|
+
const createArgs = {
|
|
71
82
|
sellerToCreate,
|
|
72
83
|
offerToCreate,
|
|
73
84
|
premintParameters,
|
|
74
|
-
contractAddress: overrides.contractAddress || this._protocolDiamond,
|
|
75
85
|
web3Lib: this._web3Lib,
|
|
76
86
|
metadataStorage: this._metadataStorage,
|
|
77
|
-
theGraphStorage: this._theGraphStorage
|
|
78
|
-
|
|
87
|
+
theGraphStorage: this._theGraphStorage,
|
|
88
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
89
|
+
};
|
|
90
|
+
if (returnTxInfo === true) {
|
|
91
|
+
return handler.createSellerAndPremintedOffer({
|
|
92
|
+
...createArgs,
|
|
93
|
+
returnTxInfo: true
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
return handler.createSellerAndPremintedOffer({
|
|
98
|
+
...createArgs,
|
|
99
|
+
returnTxInfo: false
|
|
100
|
+
});
|
|
101
|
+
}
|
|
79
102
|
}
|
|
80
|
-
|
|
81
|
-
* Creates a preminted offer and adds it to an existing group
|
|
82
|
-
* @param offerToCreate - Offer arguments.
|
|
83
|
-
* @param reservedRangeLength - Already reserved range length.
|
|
84
|
-
* @param groupId - Group ID the offer will be added to
|
|
85
|
-
* @param overrides - Optional overrides.
|
|
86
|
-
* @returns Transaction response.
|
|
87
|
-
*/
|
|
103
|
+
// Implementation
|
|
88
104
|
async createPremintedOfferWithCondition(offerToCreate, premintParameters, condition, overrides = {}) {
|
|
89
|
-
|
|
105
|
+
const { returnTxInfo } = overrides;
|
|
106
|
+
const createArgs = {
|
|
90
107
|
offerToCreate,
|
|
91
108
|
premintParameters,
|
|
92
109
|
condition,
|
|
93
|
-
contractAddress: overrides.contractAddress || this._protocolDiamond,
|
|
94
110
|
web3Lib: this._web3Lib,
|
|
95
111
|
metadataStorage: this._metadataStorage,
|
|
96
|
-
theGraphStorage: this._theGraphStorage
|
|
97
|
-
|
|
112
|
+
theGraphStorage: this._theGraphStorage,
|
|
113
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
114
|
+
};
|
|
115
|
+
if (returnTxInfo === true) {
|
|
116
|
+
return handler.createPremintedOfferWithCondition({
|
|
117
|
+
...createArgs,
|
|
118
|
+
returnTxInfo: true
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
return handler.createPremintedOfferWithCondition({
|
|
123
|
+
...createArgs,
|
|
124
|
+
returnTxInfo: false
|
|
125
|
+
});
|
|
126
|
+
}
|
|
98
127
|
}
|
|
99
|
-
|
|
100
|
-
* Creates a seller account and preminted offer with a specific conditions
|
|
101
|
-
* This transaction only succeeds if there is no existing seller account for the connected signer.
|
|
102
|
-
* @param sellerToCreate - Addresses to set in the seller account.
|
|
103
|
-
* @param offerToCreate - Offer arguments.
|
|
104
|
-
* @param reservedRangeLength - Already reserved range length.
|
|
105
|
-
* @param condition - contract condition applied to the offer
|
|
106
|
-
* @param overrides - Optional overrides.
|
|
107
|
-
* @returns Transaction response.
|
|
108
|
-
*/
|
|
128
|
+
// Implementation
|
|
109
129
|
async createSellerAndPremintedOfferWithCondition(sellerToCreate, offerToCreate, premintParameters, condition, overrides = {}) {
|
|
110
|
-
|
|
130
|
+
const { returnTxInfo } = overrides;
|
|
131
|
+
const createArgs = {
|
|
111
132
|
sellerToCreate,
|
|
112
133
|
offerToCreate,
|
|
113
134
|
premintParameters,
|
|
114
|
-
|
|
135
|
+
condition,
|
|
115
136
|
web3Lib: this._web3Lib,
|
|
116
137
|
metadataStorage: this._metadataStorage,
|
|
117
138
|
theGraphStorage: this._theGraphStorage,
|
|
118
|
-
|
|
119
|
-
}
|
|
139
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
140
|
+
};
|
|
141
|
+
if (returnTxInfo === true) {
|
|
142
|
+
return handler.createSellerAndPremintedOfferWithCondition({
|
|
143
|
+
...createArgs,
|
|
144
|
+
returnTxInfo: true
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
return handler.createSellerAndPremintedOfferWithCondition({
|
|
149
|
+
...createArgs,
|
|
150
|
+
returnTxInfo: false
|
|
151
|
+
});
|
|
152
|
+
}
|
|
120
153
|
}
|
|
121
|
-
|
|
122
|
-
* Raises a dispute and immediately escalates it
|
|
123
|
-
* @param exchangeId - Exchange ID
|
|
124
|
-
* @param overrides - Optional overrides.
|
|
125
|
-
* @returns Transaction response.
|
|
126
|
-
*/
|
|
154
|
+
// Implementation
|
|
127
155
|
async raiseAndEscalateDispute(exchangeId, overrides = {}) {
|
|
128
|
-
|
|
156
|
+
const { returnTxInfo } = overrides;
|
|
157
|
+
const disputeArgs = {
|
|
129
158
|
exchangeId,
|
|
130
|
-
contractAddress: overrides.contractAddress || this._protocolDiamond,
|
|
131
159
|
web3Lib: this._web3Lib,
|
|
132
160
|
metadataStorage: this._metadataStorage,
|
|
133
|
-
theGraphStorage: this._theGraphStorage
|
|
134
|
-
|
|
161
|
+
theGraphStorage: this._theGraphStorage,
|
|
162
|
+
contractAddress: overrides.contractAddress || this._protocolDiamond
|
|
163
|
+
};
|
|
164
|
+
if (returnTxInfo === true) {
|
|
165
|
+
return handler.raiseAndEscalateDispute({
|
|
166
|
+
...disputeArgs,
|
|
167
|
+
returnTxInfo: true
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
return handler.raiseAndEscalateDispute({
|
|
172
|
+
...disputeArgs,
|
|
173
|
+
returnTxInfo: false
|
|
174
|
+
});
|
|
175
|
+
}
|
|
135
176
|
}
|
|
136
177
|
}
|
|
137
178
|
//# sourceMappingURL=mixin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/orchestration/mixin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/orchestration/mixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promises.d.ts","sourceRoot":"","sources":["../../../src/utils/promises.ts"],"names":[],"mappings":"AAAA,wBAAuB,UAAU,CAAC,CAAC,EACjC,KAAK,EAAE,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3B,KAAK,EAAE,MAAM,EACb,YAAY,
|
|
1
|
+
{"version":3,"file":"promises.d.ts","sourceRoot":"","sources":["../../../src/utils/promises.ts"],"names":[],"mappings":"AAAA,wBAAuB,UAAU,CAAC,CAAC,EACjC,KAAK,EAAE,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAC3B,KAAK,EAAE,MAAM,EACb,YAAY,IAAI,GAAG,CAAC,KAAG,CAAM,+CAc9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/core-sdk.ts","../src/index.ts","../src/subgraph.ts","../src/accounts/handler.ts","../src/accounts/index.ts","../src/accounts/interface.ts","../src/accounts/mixin.ts","../src/accounts/subgraph.ts","../src/accounts/types.ts","../src/disputes/handler.ts","../src/disputes/index.ts","../src/disputes/interface.ts","../src/disputes/mixin.ts","../src/disputes/subgraph.ts","../src/erc1155/handler.ts","../src/erc1155/index.ts","../src/erc1155/interface.ts","../src/erc1155/mixin.ts","../src/erc165/handler.ts","../src/erc165/interface.ts","../src/erc165/mixin.ts","../src/erc20/handler.ts","../src/erc20/index.ts","../src/erc20/interface.ts","../src/erc20/mixin.ts","../src/erc20/subgraph.ts","../src/erc721/handler.ts","../src/erc721/index.ts","../src/erc721/interface.ts","../src/erc721/mixin.ts","../src/errors/mixin.ts","../src/event-logs/index.ts","../src/event-logs/mixin.ts","../src/event-logs/subgraph.ts","../src/exchanges/getExchangeState.ts","../src/exchanges/handler.ts","../src/exchanges/index.ts","../src/exchanges/interface.ts","../src/exchanges/mixin.ts","../src/exchanges/subgraph.ts","../src/forwarder/biconomy-interface.ts","../src/forwarder/handler.ts","../src/forwarder/index.ts","../src/forwarder/mock-interface.ts","../src/funds/handler.ts","../src/funds/index.ts","../src/funds/interface.ts","../src/funds/mixin.ts","../src/funds/subgraph.ts","../src/groups/handler.ts","../src/groups/index.ts","../src/groups/interface.ts","../src/groups/mixin.ts","../src/groups/subgraph.ts","../src/marketplaces/index.ts","../src/marketplaces/mixin.ts","../src/marketplaces/opensea.ts","../src/marketplaces/types.ts","../src/meta-tx/biconomy.ts","../src/meta-tx/handler.ts","../src/meta-tx/index.ts","../src/meta-tx/interface.ts","../src/meta-tx/mixin.ts","../src/metadata/index.ts","../src/metadata/mixin.ts","../src/metadata/storeMetadataItems.ts","../src/metadata/subgraph.ts","../src/mixins/base-core-sdk.ts","../src/native-meta-tx/handler.ts","../src/native-meta-tx/index.ts","../src/native-meta-tx/interface.ts","../src/native-meta-tx/mixin.ts","../src/native-meta-tx/tokenSpecifics.ts","../src/offers/checkExchangePolicy.ts","../src/offers/getOfferStatus.ts","../src/offers/handler.ts","../src/offers/index.ts","../src/offers/interface.ts","../src/offers/mixin.ts","../src/offers/renderContractualAgreement.ts","../src/offers/storage.ts","../src/offers/subgraph.ts","../src/offers/types.ts","../src/orchestration/handler.ts","../src/orchestration/index.ts","../src/orchestration/interface.ts","../src/orchestration/mixin.ts","../src/price-discovery/handler.ts","../src/price-discovery/index.ts","../src/price-discovery/interface.ts","../src/price-discovery/mixin.ts","../src/protocol-config/handler.ts","../src/protocol-config/index.ts","../src/protocol-config/interface.ts","../src/protocol-config/mixin.ts","../src/seaport/abi.ts","../src/seaport/handler.ts","../src/seaport/index.ts","../src/seaport/interface.ts","../src/seaport/mixin.ts","../src/subgraph/mixin.ts","../src/utils/errors.ts","../src/utils/graphql.ts","../src/utils/logs.ts","../src/utils/promises.ts","../src/utils/signature.ts","../src/utils/tokenInfoManager.ts","../src/voucher/handler.ts","../src/voucher/index.ts","../src/voucher/interface.ts","../src/voucher/mixin.ts"],"version":"5.
|
|
1
|
+
{"root":["../src/core-sdk.ts","../src/index.ts","../src/subgraph.ts","../src/accounts/handler.ts","../src/accounts/index.ts","../src/accounts/interface.ts","../src/accounts/mixin.ts","../src/accounts/subgraph.ts","../src/accounts/types.ts","../src/disputes/handler.ts","../src/disputes/index.ts","../src/disputes/interface.ts","../src/disputes/mixin.ts","../src/disputes/subgraph.ts","../src/erc1155/handler.ts","../src/erc1155/index.ts","../src/erc1155/interface.ts","../src/erc1155/mixin.ts","../src/erc165/handler.ts","../src/erc165/interface.ts","../src/erc165/mixin.ts","../src/erc20/handler.ts","../src/erc20/index.ts","../src/erc20/interface.ts","../src/erc20/mixin.ts","../src/erc20/subgraph.ts","../src/erc721/handler.ts","../src/erc721/index.ts","../src/erc721/interface.ts","../src/erc721/mixin.ts","../src/errors/mixin.ts","../src/event-logs/index.ts","../src/event-logs/mixin.ts","../src/event-logs/subgraph.ts","../src/exchanges/getExchangeState.ts","../src/exchanges/handler.ts","../src/exchanges/index.ts","../src/exchanges/interface.ts","../src/exchanges/mixin.ts","../src/exchanges/subgraph.ts","../src/forwarder/biconomy-interface.ts","../src/forwarder/handler.ts","../src/forwarder/index.ts","../src/forwarder/mock-interface.ts","../src/funds/handler.ts","../src/funds/index.ts","../src/funds/interface.ts","../src/funds/mixin.ts","../src/funds/subgraph.ts","../src/groups/handler.ts","../src/groups/index.ts","../src/groups/interface.ts","../src/groups/mixin.ts","../src/groups/subgraph.ts","../src/marketplaces/index.ts","../src/marketplaces/mixin.ts","../src/marketplaces/opensea.ts","../src/marketplaces/types.ts","../src/meta-tx/biconomy.ts","../src/meta-tx/handler.ts","../src/meta-tx/index.ts","../src/meta-tx/interface.ts","../src/meta-tx/mixin.ts","../src/metadata/index.ts","../src/metadata/mixin.ts","../src/metadata/storeMetadataItems.ts","../src/metadata/subgraph.ts","../src/mixins/base-core-sdk.ts","../src/native-meta-tx/handler.ts","../src/native-meta-tx/index.ts","../src/native-meta-tx/interface.ts","../src/native-meta-tx/mixin.ts","../src/native-meta-tx/tokenSpecifics.ts","../src/offers/checkExchangePolicy.ts","../src/offers/getOfferStatus.ts","../src/offers/handler.ts","../src/offers/index.ts","../src/offers/interface.ts","../src/offers/mixin.ts","../src/offers/renderContractualAgreement.ts","../src/offers/storage.ts","../src/offers/subgraph.ts","../src/offers/types.ts","../src/orchestration/handler.ts","../src/orchestration/index.ts","../src/orchestration/interface.ts","../src/orchestration/mixin.ts","../src/price-discovery/handler.ts","../src/price-discovery/index.ts","../src/price-discovery/interface.ts","../src/price-discovery/mixin.ts","../src/protocol-config/handler.ts","../src/protocol-config/index.ts","../src/protocol-config/interface.ts","../src/protocol-config/mixin.ts","../src/seaport/abi.ts","../src/seaport/handler.ts","../src/seaport/index.ts","../src/seaport/interface.ts","../src/seaport/mixin.ts","../src/subgraph/mixin.ts","../src/utils/errors.ts","../src/utils/graphql.ts","../src/utils/logs.ts","../src/utils/promises.ts","../src/utils/signature.ts","../src/utils/tokenInfoManager.ts","../src/voucher/handler.ts","../src/voucher/index.ts","../src/voucher/interface.ts","../src/voucher/mixin.ts"],"version":"5.8.3"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bosonprotocol/core-sdk",
|
|
3
|
-
"version": "1.44.0
|
|
3
|
+
"version": "1.44.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.31.0
|
|
38
|
+
"@bosonprotocol/common": "^1.31.0",
|
|
39
39
|
"@ethersproject/abi": "^5.5.0",
|
|
40
40
|
"@ethersproject/address": "^5.5.0",
|
|
41
41
|
"@ethersproject/bignumber": "^5.5.0",
|
|
@@ -61,5 +61,5 @@
|
|
|
61
61
|
"overrides": {
|
|
62
62
|
"typescript": "^5.1.6"
|
|
63
63
|
},
|
|
64
|
-
"gitHead": "
|
|
64
|
+
"gitHead": "cbcb5b4fb8d7d4090fe2cc58a7e3665e6c840f0d"
|
|
65
65
|
}
|
package/src/accounts/mixin.ts
CHANGED
|
@@ -608,6 +608,7 @@ export class AccountsMixin<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
|
|
|
608
608
|
* @returns Created exchange id.
|
|
609
609
|
*/
|
|
610
610
|
public getPendingSellerUpdateFromLogs(logs: Log[]): {
|
|
611
|
+
sellerId: bigint;
|
|
611
612
|
assistant: string;
|
|
612
613
|
clerk: string;
|
|
613
614
|
admin: string;
|
|
@@ -626,10 +627,11 @@ export class AccountsMixin<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
|
|
|
626
627
|
tokenType: number;
|
|
627
628
|
tokenId: BigNumber;
|
|
628
629
|
}
|
|
630
|
+
| bigint
|
|
629
631
|
>({
|
|
630
632
|
iface: accounts.iface.bosonAccountHandlerIface,
|
|
631
633
|
logs,
|
|
632
|
-
eventArgsKeys: ["pendingSeller", "pendingAuthToken"],
|
|
634
|
+
eventArgsKeys: ["pendingSeller", "pendingAuthToken", "sellerId"],
|
|
633
635
|
eventNames: ["SellerUpdatePending", "SellerUpdateApplied"]
|
|
634
636
|
});
|
|
635
637
|
const pendingSellerStruct = (
|
|
@@ -645,7 +647,9 @@ export class AccountsMixin<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
|
|
|
645
647
|
tokenId: BigNumber;
|
|
646
648
|
}[]
|
|
647
649
|
)?.[0];
|
|
650
|
+
const sellerId = (valuesFromLogs["sellerId"] as bigint[])?.[0];
|
|
648
651
|
return {
|
|
652
|
+
sellerId,
|
|
649
653
|
assistant: pendingSellerStruct?.assistant,
|
|
650
654
|
admin: pendingSellerStruct?.admin,
|
|
651
655
|
clerk: pendingSellerStruct?.clerk,
|
package/src/exchanges/handler.ts
CHANGED
|
@@ -218,7 +218,12 @@ export async function completeExchange(
|
|
|
218
218
|
args.web3Lib.getSignerAddress()
|
|
219
219
|
]);
|
|
220
220
|
|
|
221
|
-
assertCompletableExchange(
|
|
221
|
+
await assertCompletableExchange(
|
|
222
|
+
args.exchangeId,
|
|
223
|
+
exchange,
|
|
224
|
+
signerAddress,
|
|
225
|
+
args.web3Lib
|
|
226
|
+
);
|
|
222
227
|
|
|
223
228
|
const transactionRequest = {
|
|
224
229
|
to: args.contractAddress,
|
|
@@ -257,15 +262,18 @@ export async function completeExchangeBatch(
|
|
|
257
262
|
): Promise<TransactionRequest | TransactionResponse> {
|
|
258
263
|
const [exchanges, signerAddress] = await Promise.all([
|
|
259
264
|
getExchanges(args.subgraphUrl, {
|
|
260
|
-
exchangesFilter: {
|
|
261
|
-
id_in: args.exchangeIds.map((id) => id.toString())
|
|
262
|
-
}
|
|
265
|
+
exchangesFilter: { id_in: args.exchangeIds.map((id) => id.toString()) }
|
|
263
266
|
}),
|
|
264
267
|
args.web3Lib.getSignerAddress()
|
|
265
268
|
]);
|
|
266
269
|
|
|
267
270
|
for (const exchange of exchanges) {
|
|
268
|
-
assertCompletableExchange(
|
|
271
|
+
await assertCompletableExchange(
|
|
272
|
+
exchange.id,
|
|
273
|
+
exchange,
|
|
274
|
+
signerAddress,
|
|
275
|
+
args.web3Lib
|
|
276
|
+
);
|
|
269
277
|
}
|
|
270
278
|
|
|
271
279
|
const transactionRequest = {
|
|
@@ -522,10 +530,11 @@ function assertSignerIsBuyerOrAssistant(
|
|
|
522
530
|
return { isSignerBuyer, isSignerAssistant };
|
|
523
531
|
}
|
|
524
532
|
|
|
525
|
-
function assertCompletableExchange(
|
|
533
|
+
async function assertCompletableExchange(
|
|
526
534
|
exchangeId: BigNumberish,
|
|
527
535
|
exchange: ExchangeFieldsFragment | null,
|
|
528
|
-
signer: string
|
|
536
|
+
signer: string,
|
|
537
|
+
web3Lib: Web3LibAdapter
|
|
529
538
|
) {
|
|
530
539
|
assertExchange(exchangeId, exchange);
|
|
531
540
|
|
|
@@ -535,8 +544,9 @@ function assertCompletableExchange(
|
|
|
535
544
|
);
|
|
536
545
|
|
|
537
546
|
if (isSignerAssistant && !isSignerBuyer) {
|
|
547
|
+
const now = await web3Lib.getCurrentTimeMs();
|
|
538
548
|
const elapsedSinceRedeemMS =
|
|
539
|
-
|
|
549
|
+
now - Number(exchange.redeemedDate || "0") * 1000;
|
|
540
550
|
const didDisputePeriodElapse =
|
|
541
551
|
elapsedSinceRedeemMS >
|
|
542
552
|
Number(exchange.offer.disputePeriodDuration) * 1000;
|
package/src/meta-tx/mixin.ts
CHANGED
|
@@ -330,7 +330,9 @@ export class MetaTxMixin<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
|
|
|
330
330
|
| "batchId"
|
|
331
331
|
| "forwarderAbi"
|
|
332
332
|
| "relayerUrl"
|
|
333
|
-
|
|
333
|
+
> & {
|
|
334
|
+
bosonVoucherAddress?: string;
|
|
335
|
+
},
|
|
334
336
|
overrides: Partial<{
|
|
335
337
|
batchId?: BigNumberish;
|
|
336
338
|
txGas?: number;
|
|
@@ -347,7 +349,8 @@ export class MetaTxMixin<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
|
|
|
347
349
|
return handler.signMetaTxSetApprovalForAllToContract(
|
|
348
350
|
{
|
|
349
351
|
web3Lib: this._web3Lib,
|
|
350
|
-
bosonVoucherAddress:
|
|
352
|
+
bosonVoucherAddress:
|
|
353
|
+
args.bosonVoucherAddress || seller.voucherCloneAddress,
|
|
351
354
|
chainId: this._chainId,
|
|
352
355
|
forwarderAddress,
|
|
353
356
|
batchId,
|
package/src/offers/handler.ts
CHANGED
|
@@ -20,12 +20,14 @@ import { storeMetadataOnTheGraph } from "./storage";
|
|
|
20
20
|
import { CreateOfferArgs } from "./types";
|
|
21
21
|
import { OfferFieldsFragment } from "../subgraph";
|
|
22
22
|
import { storeMetadataItems } from "../metadata/storeMetadataItems";
|
|
23
|
+
import { getDisputeResolverById } from "../accounts/subgraph";
|
|
23
24
|
|
|
24
25
|
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
25
26
|
export async function createOffer(args: {
|
|
26
27
|
offerToCreate: CreateOfferArgs;
|
|
27
28
|
contractAddress: string;
|
|
28
29
|
web3Lib: Web3LibAdapter;
|
|
30
|
+
subgraphUrl: string;
|
|
29
31
|
metadataStorage?: MetadataStorage;
|
|
30
32
|
theGraphStorage?: MetadataStorage;
|
|
31
33
|
txRequest?: TransactionRequest;
|
|
@@ -37,6 +39,7 @@ export async function createOffer(args: {
|
|
|
37
39
|
offerToCreate: CreateOfferArgs;
|
|
38
40
|
contractAddress: string;
|
|
39
41
|
web3Lib: Web3LibAdapter;
|
|
42
|
+
subgraphUrl: string;
|
|
40
43
|
metadataStorage?: MetadataStorage;
|
|
41
44
|
theGraphStorage?: MetadataStorage;
|
|
42
45
|
txRequest?: TransactionRequest;
|
|
@@ -48,6 +51,7 @@ export async function createOffer(args: {
|
|
|
48
51
|
offerToCreate: CreateOfferArgs;
|
|
49
52
|
contractAddress: string;
|
|
50
53
|
web3Lib: Web3LibAdapter;
|
|
54
|
+
subgraphUrl: string;
|
|
51
55
|
metadataStorage?: MetadataStorage;
|
|
52
56
|
theGraphStorage?: MetadataStorage;
|
|
53
57
|
txRequest?: TransactionRequest;
|
|
@@ -57,6 +61,26 @@ export async function createOffer(args: {
|
|
|
57
61
|
abortEarly: false
|
|
58
62
|
});
|
|
59
63
|
|
|
64
|
+
const { disputeResolverId, exchangeToken } = args.offerToCreate;
|
|
65
|
+
const disputeResolver = await getDisputeResolverById(
|
|
66
|
+
args.subgraphUrl,
|
|
67
|
+
disputeResolverId
|
|
68
|
+
);
|
|
69
|
+
if (!disputeResolver) {
|
|
70
|
+
throw new Error(
|
|
71
|
+
`Dispute resolver with id "${disputeResolverId}" does not exist`
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
if (
|
|
75
|
+
!disputeResolver.fees.some(
|
|
76
|
+
(fee) => fee.token.address.toLowerCase() === exchangeToken.toLowerCase()
|
|
77
|
+
)
|
|
78
|
+
) {
|
|
79
|
+
throw new Error(
|
|
80
|
+
`Dispute resolver with id "${disputeResolverId}" does not support exchange token "${exchangeToken}"`
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
60
84
|
await storeMetadataOnTheGraph({
|
|
61
85
|
metadataUriOrHash: args.offerToCreate.metadataUri,
|
|
62
86
|
metadataStorage: args.metadataStorage,
|
package/src/offers/mixin.ts
CHANGED
|
@@ -73,6 +73,7 @@ export class OfferMixin<T extends Web3LibAdapter> extends BaseCoreSDK<T> {
|
|
|
73
73
|
web3Lib: this._web3Lib,
|
|
74
74
|
theGraphStorage: this._theGraphStorage,
|
|
75
75
|
metadataStorage: this._metadataStorage,
|
|
76
|
+
subgraphUrl: this._subgraphUrl,
|
|
76
77
|
contractAddress: overrides.contractAddress || this._protocolDiamond,
|
|
77
78
|
txRequest: overrides.txRequest
|
|
78
79
|
} as const satisfies Parameters<typeof offers.handler.createOffer>[0];
|