@bosonprotocol/core-sdk 1.44.0-alpha.0 → 1.44.0-alpha.10
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/handler.d.ts +115 -1
- package/dist/cjs/accounts/handler.d.ts.map +1 -1
- package/dist/cjs/accounts/handler.js +126 -28
- package/dist/cjs/accounts/handler.js.map +1 -1
- package/dist/cjs/accounts/mixin.d.ts +105 -8
- package/dist/cjs/accounts/mixin.d.ts.map +1 -1
- package/dist/cjs/accounts/mixin.js +162 -122
- package/dist/cjs/accounts/mixin.js.map +1 -1
- package/dist/cjs/core-sdk.d.ts +6 -6
- package/dist/cjs/core-sdk.d.ts.map +1 -1
- package/dist/cjs/core-sdk.js.map +1 -1
- package/dist/cjs/disputes/handler.d.ts +88 -7
- package/dist/cjs/disputes/handler.d.ts.map +1 -1
- package/dist/cjs/disputes/handler.js +98 -22
- package/dist/cjs/disputes/handler.js.map +1 -1
- package/dist/cjs/disputes/mixin.d.ts +37 -17
- package/dist/cjs/disputes/mixin.d.ts.map +1 -1
- package/dist/cjs/disputes/mixin.js +116 -96
- package/dist/cjs/disputes/mixin.js.map +1 -1
- package/dist/cjs/erc1155/mixin.d.ts +2 -1
- package/dist/cjs/erc1155/mixin.d.ts.map +1 -1
- package/dist/cjs/erc1155/mixin.js.map +1 -1
- package/dist/cjs/erc165/mixin.d.ts +2 -1
- package/dist/cjs/erc165/mixin.d.ts.map +1 -1
- package/dist/cjs/erc165/mixin.js.map +1 -1
- package/dist/cjs/erc20/handler.d.ts +11 -2
- package/dist/cjs/erc20/handler.d.ts.map +1 -1
- package/dist/cjs/erc20/handler.js +8 -1
- package/dist/cjs/erc20/handler.js.map +1 -1
- package/dist/cjs/erc20/mixin.d.ts +20 -3
- package/dist/cjs/erc20/mixin.d.ts.map +1 -1
- package/dist/cjs/erc20/mixin.js +15 -10
- package/dist/cjs/erc20/mixin.js.map +1 -1
- package/dist/cjs/erc721/handler.d.ts +11 -2
- package/dist/cjs/erc721/handler.d.ts.map +1 -1
- package/dist/cjs/erc721/handler.js +8 -2
- package/dist/cjs/erc721/handler.js.map +1 -1
- package/dist/cjs/erc721/mixin.d.ts +2 -1
- package/dist/cjs/erc721/mixin.d.ts.map +1 -1
- package/dist/cjs/erc721/mixin.js.map +1 -1
- package/dist/cjs/errors/mixin.d.ts +2 -1
- package/dist/cjs/errors/mixin.d.ts.map +1 -1
- package/dist/cjs/errors/mixin.js.map +1 -1
- package/dist/cjs/event-logs/mixin.d.ts +2 -1
- package/dist/cjs/event-logs/mixin.d.ts.map +1 -1
- package/dist/cjs/event-logs/mixin.js.map +1 -1
- package/dist/cjs/exchanges/handler.d.ts +44 -1
- package/dist/cjs/exchanges/handler.d.ts.map +1 -1
- package/dist/cjs/exchanges/handler.js +76 -17
- package/dist/cjs/exchanges/handler.js.map +1 -1
- package/dist/cjs/exchanges/mixin.d.ts +24 -8
- package/dist/cjs/exchanges/mixin.d.ts.map +1 -1
- package/dist/cjs/exchanges/mixin.js +72 -72
- package/dist/cjs/exchanges/mixin.js.map +1 -1
- package/dist/cjs/funds/handler.d.ts +27 -1
- package/dist/cjs/funds/handler.d.ts.map +1 -1
- package/dist/cjs/funds/handler.js +28 -7
- package/dist/cjs/funds/handler.js.map +1 -1
- package/dist/cjs/funds/mixin.d.ts +50 -17
- package/dist/cjs/funds/mixin.d.ts.map +1 -1
- package/dist/cjs/funds/mixin.js +48 -46
- package/dist/cjs/funds/mixin.js.map +1 -1
- package/dist/cjs/groups/handler.d.ts +8 -1
- package/dist/cjs/groups/handler.d.ts.map +1 -1
- package/dist/cjs/groups/handler.js +9 -2
- package/dist/cjs/groups/handler.js.map +1 -1
- package/dist/cjs/groups/mixin.d.ts +12 -4
- package/dist/cjs/groups/mixin.d.ts.map +1 -1
- package/dist/cjs/groups/mixin.js +10 -8
- package/dist/cjs/groups/mixin.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/marketplaces/mixin.d.ts +2 -1
- package/dist/cjs/marketplaces/mixin.d.ts.map +1 -1
- package/dist/cjs/marketplaces/mixin.js.map +1 -1
- package/dist/cjs/meta-tx/handler.d.ts.map +1 -1
- package/dist/cjs/meta-tx/handler.js +12 -10
- package/dist/cjs/meta-tx/handler.js.map +1 -1
- package/dist/cjs/meta-tx/mixin.d.ts +5 -3
- 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/metadata/mixin.d.ts +2 -1
- package/dist/cjs/metadata/mixin.d.ts.map +1 -1
- package/dist/cjs/metadata/mixin.js.map +1 -1
- package/dist/cjs/mixins/base-core-sdk.d.ts +4 -4
- package/dist/cjs/mixins/base-core-sdk.d.ts.map +1 -1
- package/dist/cjs/mixins/base-core-sdk.js.map +1 -1
- package/dist/cjs/native-meta-tx/handler.d.ts.map +1 -1
- package/dist/cjs/native-meta-tx/handler.js +3 -2
- package/dist/cjs/native-meta-tx/handler.js.map +1 -1
- package/dist/cjs/native-meta-tx/mixin.d.ts +2 -2
- package/dist/cjs/native-meta-tx/mixin.d.ts.map +1 -1
- package/dist/cjs/native-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 +81 -0
- package/dist/cjs/offers/handler.d.ts.map +1 -1
- package/dist/cjs/offers/handler.js +90 -17
- package/dist/cjs/offers/handler.js.map +1 -1
- package/dist/cjs/offers/mixin.d.ts +53 -2
- package/dist/cjs/offers/mixin.d.ts.map +1 -1
- package/dist/cjs/offers/mixin.js +102 -97
- package/dist/cjs/offers/mixin.js.map +1 -1
- package/dist/cjs/orchestration/handler.d.ts +86 -1
- package/dist/cjs/orchestration/handler.d.ts.map +1 -1
- package/dist/cjs/orchestration/handler.js +64 -16
- package/dist/cjs/orchestration/handler.js.map +1 -1
- package/dist/cjs/orchestration/mixin.d.ts +2 -2
- package/dist/cjs/orchestration/mixin.d.ts.map +1 -1
- package/dist/cjs/orchestration/mixin.js.map +1 -1
- package/dist/cjs/price-discovery/handler.d.ts +11 -1
- package/dist/cjs/price-discovery/handler.d.ts.map +1 -1
- package/dist/cjs/price-discovery/handler.js +9 -2
- package/dist/cjs/price-discovery/handler.js.map +1 -1
- package/dist/cjs/price-discovery/mixin.d.ts +16 -4
- package/dist/cjs/price-discovery/mixin.d.ts.map +1 -1
- package/dist/cjs/price-discovery/mixin.js +14 -12
- package/dist/cjs/price-discovery/mixin.js.map +1 -1
- package/dist/cjs/protocol-config/handler.d.ts +9 -0
- package/dist/cjs/protocol-config/handler.d.ts.map +1 -1
- package/dist/cjs/protocol-config/handler.js +10 -3
- package/dist/cjs/protocol-config/handler.js.map +1 -1
- package/dist/cjs/protocol-config/mixin.d.ts +2 -1
- package/dist/cjs/protocol-config/mixin.d.ts.map +1 -1
- package/dist/cjs/protocol-config/mixin.js.map +1 -1
- package/dist/cjs/subgraph/mixin.d.ts +2 -2
- package/dist/cjs/subgraph/mixin.d.ts.map +1 -1
- package/dist/cjs/subgraph/mixin.js.map +1 -1
- package/dist/cjs/utils/promises.d.ts.map +1 -1
- package/dist/cjs/utils/signature.d.ts +20 -7
- package/dist/cjs/utils/signature.d.ts.map +1 -1
- package/dist/cjs/utils/signature.js +6 -2
- package/dist/cjs/utils/signature.js.map +1 -1
- package/dist/cjs/voucher/handler.d.ts +56 -1
- package/dist/cjs/voucher/handler.d.ts.map +1 -1
- package/dist/cjs/voucher/handler.js +56 -14
- package/dist/cjs/voucher/handler.js.map +1 -1
- package/dist/cjs/voucher/mixin.d.ts +66 -22
- package/dist/cjs/voucher/mixin.d.ts.map +1 -1
- package/dist/cjs/voucher/mixin.js +75 -61
- package/dist/cjs/voucher/mixin.js.map +1 -1
- package/dist/esm/accounts/handler.d.ts +115 -1
- package/dist/esm/accounts/handler.d.ts.map +1 -1
- package/dist/esm/accounts/handler.js +126 -28
- package/dist/esm/accounts/handler.js.map +1 -1
- package/dist/esm/accounts/mixin.d.ts +105 -8
- package/dist/esm/accounts/mixin.d.ts.map +1 -1
- package/dist/esm/accounts/mixin.js +249 -116
- package/dist/esm/accounts/mixin.js.map +1 -1
- package/dist/esm/core-sdk.d.ts +6 -6
- package/dist/esm/core-sdk.d.ts.map +1 -1
- package/dist/esm/core-sdk.js.map +1 -1
- package/dist/esm/disputes/handler.d.ts +88 -7
- package/dist/esm/disputes/handler.d.ts.map +1 -1
- package/dist/esm/disputes/handler.js +104 -22
- package/dist/esm/disputes/handler.js.map +1 -1
- package/dist/esm/disputes/mixin.d.ts +37 -17
- package/dist/esm/disputes/mixin.d.ts.map +1 -1
- package/dist/esm/disputes/mixin.js +171 -100
- package/dist/esm/disputes/mixin.js.map +1 -1
- package/dist/esm/erc1155/mixin.d.ts +2 -1
- package/dist/esm/erc1155/mixin.d.ts.map +1 -1
- package/dist/esm/erc1155/mixin.js.map +1 -1
- package/dist/esm/erc165/mixin.d.ts +2 -1
- package/dist/esm/erc165/mixin.d.ts.map +1 -1
- package/dist/esm/erc165/mixin.js.map +1 -1
- package/dist/esm/erc20/handler.d.ts +11 -2
- package/dist/esm/erc20/handler.d.ts.map +1 -1
- package/dist/esm/erc20/handler.js +9 -2
- package/dist/esm/erc20/handler.js.map +1 -1
- package/dist/esm/erc20/mixin.d.ts +20 -3
- package/dist/esm/erc20/mixin.d.ts.map +1 -1
- package/dist/esm/erc20/mixin.js +24 -8
- package/dist/esm/erc20/mixin.js.map +1 -1
- package/dist/esm/erc721/handler.d.ts +11 -2
- package/dist/esm/erc721/handler.d.ts.map +1 -1
- package/dist/esm/erc721/handler.js +8 -2
- package/dist/esm/erc721/handler.js.map +1 -1
- package/dist/esm/erc721/mixin.d.ts +2 -1
- package/dist/esm/erc721/mixin.d.ts.map +1 -1
- package/dist/esm/erc721/mixin.js.map +1 -1
- package/dist/esm/errors/mixin.d.ts +2 -1
- package/dist/esm/errors/mixin.d.ts.map +1 -1
- package/dist/esm/errors/mixin.js.map +1 -1
- package/dist/esm/event-logs/mixin.d.ts +2 -1
- package/dist/esm/event-logs/mixin.d.ts.map +1 -1
- package/dist/esm/event-logs/mixin.js.map +1 -1
- package/dist/esm/exchanges/handler.d.ts +44 -1
- package/dist/esm/exchanges/handler.d.ts.map +1 -1
- package/dist/esm/exchanges/handler.js +80 -16
- package/dist/esm/exchanges/handler.js.map +1 -1
- package/dist/esm/exchanges/mixin.d.ts +24 -8
- package/dist/esm/exchanges/mixin.d.ts.map +1 -1
- package/dist/esm/exchanges/mixin.js +120 -72
- package/dist/esm/exchanges/mixin.js.map +1 -1
- package/dist/esm/funds/handler.d.ts +27 -1
- package/dist/esm/funds/handler.d.ts.map +1 -1
- package/dist/esm/funds/handler.js +28 -7
- package/dist/esm/funds/handler.js.map +1 -1
- package/dist/esm/funds/mixin.d.ts +50 -17
- package/dist/esm/funds/mixin.d.ts.map +1 -1
- package/dist/esm/funds/mixin.js +62 -42
- package/dist/esm/funds/mixin.js.map +1 -1
- package/dist/esm/groups/handler.d.ts +8 -1
- package/dist/esm/groups/handler.d.ts.map +1 -1
- package/dist/esm/groups/handler.js +9 -2
- package/dist/esm/groups/handler.js.map +1 -1
- package/dist/esm/groups/mixin.d.ts +12 -4
- package/dist/esm/groups/mixin.d.ts.map +1 -1
- package/dist/esm/groups/mixin.js +16 -8
- package/dist/esm/groups/mixin.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/marketplaces/mixin.d.ts +2 -1
- package/dist/esm/marketplaces/mixin.d.ts.map +1 -1
- package/dist/esm/marketplaces/mixin.js.map +1 -1
- package/dist/esm/meta-tx/handler.d.ts.map +1 -1
- package/dist/esm/meta-tx/handler.js +20 -10
- package/dist/esm/meta-tx/handler.js.map +1 -1
- package/dist/esm/meta-tx/mixin.d.ts +5 -3
- 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/metadata/mixin.d.ts +2 -1
- package/dist/esm/metadata/mixin.d.ts.map +1 -1
- package/dist/esm/metadata/mixin.js.map +1 -1
- package/dist/esm/mixins/base-core-sdk.d.ts +4 -4
- package/dist/esm/mixins/base-core-sdk.d.ts.map +1 -1
- package/dist/esm/mixins/base-core-sdk.js.map +1 -1
- package/dist/esm/native-meta-tx/handler.d.ts.map +1 -1
- package/dist/esm/native-meta-tx/handler.js +4 -2
- package/dist/esm/native-meta-tx/handler.js.map +1 -1
- package/dist/esm/native-meta-tx/mixin.d.ts +2 -2
- package/dist/esm/native-meta-tx/mixin.d.ts.map +1 -1
- package/dist/esm/native-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 +81 -0
- package/dist/esm/offers/handler.d.ts.map +1 -1
- package/dist/esm/offers/handler.js +91 -18
- package/dist/esm/offers/handler.js.map +1 -1
- package/dist/esm/offers/mixin.d.ts +53 -2
- package/dist/esm/offers/mixin.d.ts.map +1 -1
- package/dist/esm/offers/mixin.js +162 -97
- package/dist/esm/offers/mixin.js.map +1 -1
- package/dist/esm/orchestration/handler.d.ts +86 -1
- package/dist/esm/orchestration/handler.d.ts.map +1 -1
- package/dist/esm/orchestration/handler.js +64 -16
- package/dist/esm/orchestration/handler.js.map +1 -1
- package/dist/esm/orchestration/mixin.d.ts +2 -2
- package/dist/esm/orchestration/mixin.d.ts.map +1 -1
- package/dist/esm/orchestration/mixin.js.map +1 -1
- package/dist/esm/price-discovery/handler.d.ts +11 -1
- package/dist/esm/price-discovery/handler.d.ts.map +1 -1
- package/dist/esm/price-discovery/handler.js +9 -2
- package/dist/esm/price-discovery/handler.js.map +1 -1
- package/dist/esm/price-discovery/mixin.d.ts +16 -4
- package/dist/esm/price-discovery/mixin.d.ts.map +1 -1
- package/dist/esm/price-discovery/mixin.js +19 -11
- package/dist/esm/price-discovery/mixin.js.map +1 -1
- package/dist/esm/protocol-config/handler.d.ts +9 -0
- package/dist/esm/protocol-config/handler.d.ts.map +1 -1
- package/dist/esm/protocol-config/handler.js +10 -3
- package/dist/esm/protocol-config/handler.js.map +1 -1
- package/dist/esm/protocol-config/mixin.d.ts +2 -1
- package/dist/esm/protocol-config/mixin.d.ts.map +1 -1
- package/dist/esm/protocol-config/mixin.js.map +1 -1
- package/dist/esm/subgraph/mixin.d.ts +2 -2
- package/dist/esm/subgraph/mixin.d.ts.map +1 -1
- package/dist/esm/subgraph/mixin.js.map +1 -1
- package/dist/esm/utils/promises.d.ts.map +1 -1
- package/dist/esm/utils/signature.d.ts +20 -7
- package/dist/esm/utils/signature.d.ts.map +1 -1
- package/dist/esm/utils/signature.js +6 -2
- package/dist/esm/utils/signature.js.map +1 -1
- package/dist/esm/voucher/handler.d.ts +56 -1
- package/dist/esm/voucher/handler.d.ts.map +1 -1
- package/dist/esm/voucher/handler.js +56 -14
- package/dist/esm/voucher/handler.js.map +1 -1
- package/dist/esm/voucher/mixin.d.ts +66 -22
- package/dist/esm/voucher/mixin.d.ts.map +1 -1
- package/dist/esm/voucher/mixin.js +93 -55
- package/dist/esm/voucher/mixin.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/accounts/handler.ts +369 -42
- package/src/accounts/mixin.ts +644 -57
- package/src/core-sdk.ts +26 -26
- package/src/disputes/handler.ts +294 -35
- package/src/disputes/mixin.ts +301 -46
- package/src/erc1155/mixin.ts +2 -1
- package/src/erc165/mixin.ts +2 -1
- package/src/erc20/handler.ts +36 -4
- package/src/erc20/mixin.ts +77 -10
- package/src/erc721/handler.ts +34 -4
- package/src/erc721/mixin.ts +2 -1
- package/src/errors/mixin.ts +2 -2
- package/src/event-logs/mixin.ts +2 -1
- package/src/exchanges/handler.ts +235 -25
- package/src/exchanges/mixin.ts +223 -32
- package/src/funds/handler.ts +99 -13
- package/src/funds/mixin.ts +177 -39
- package/src/groups/handler.ts +28 -3
- package/src/groups/mixin.ts +50 -7
- package/src/index.ts +1 -0
- package/src/marketplaces/mixin.ts +2 -1
- package/src/meta-tx/handler.ts +20 -10
- package/src/meta-tx/mixin.ts +8 -4
- package/src/metadata/mixin.ts +2 -1
- package/src/mixins/base-core-sdk.ts +5 -5
- package/src/native-meta-tx/handler.ts +4 -2
- package/src/native-meta-tx/mixin.ts +8 -2
- package/src/offers/handler.ts +300 -27
- package/src/offers/mixin.ts +399 -35
- package/src/orchestration/handler.ts +259 -24
- package/src/orchestration/mixin.ts +8 -2
- package/src/price-discovery/handler.ts +35 -4
- package/src/price-discovery/mixin.ts +60 -9
- package/src/protocol-config/handler.ts +26 -4
- package/src/protocol-config/mixin.ts +4 -1
- package/src/subgraph/mixin.ts +6 -2
- package/src/utils/signature.ts +46 -5
- package/src/voucher/handler.ts +192 -22
- package/src/voucher/mixin.ts +244 -66
package/src/offers/handler.ts
CHANGED
|
@@ -20,19 +20,67 @@ 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
|
|
|
25
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
24
26
|
export async function createOffer(args: {
|
|
25
27
|
offerToCreate: CreateOfferArgs;
|
|
26
28
|
contractAddress: string;
|
|
27
29
|
web3Lib: Web3LibAdapter;
|
|
30
|
+
subgraphUrl: string;
|
|
28
31
|
metadataStorage?: MetadataStorage;
|
|
29
32
|
theGraphStorage?: MetadataStorage;
|
|
30
33
|
txRequest?: TransactionRequest;
|
|
31
|
-
|
|
34
|
+
returnTxInfo: true;
|
|
35
|
+
}): Promise<TransactionRequest>;
|
|
36
|
+
|
|
37
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
38
|
+
export async function createOffer(args: {
|
|
39
|
+
offerToCreate: CreateOfferArgs;
|
|
40
|
+
contractAddress: string;
|
|
41
|
+
web3Lib: Web3LibAdapter;
|
|
42
|
+
subgraphUrl: string;
|
|
43
|
+
metadataStorage?: MetadataStorage;
|
|
44
|
+
theGraphStorage?: MetadataStorage;
|
|
45
|
+
txRequest?: TransactionRequest;
|
|
46
|
+
returnTxInfo?: false | undefined;
|
|
47
|
+
}): Promise<TransactionResponse>;
|
|
48
|
+
|
|
49
|
+
// Implementation
|
|
50
|
+
export async function createOffer(args: {
|
|
51
|
+
offerToCreate: CreateOfferArgs;
|
|
52
|
+
contractAddress: string;
|
|
53
|
+
web3Lib: Web3LibAdapter;
|
|
54
|
+
subgraphUrl: string;
|
|
55
|
+
metadataStorage?: MetadataStorage;
|
|
56
|
+
theGraphStorage?: MetadataStorage;
|
|
57
|
+
txRequest?: TransactionRequest;
|
|
58
|
+
returnTxInfo?: boolean;
|
|
59
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
32
60
|
utils.validation.createOfferArgsSchema.validateSync(args.offerToCreate, {
|
|
33
61
|
abortEarly: false
|
|
34
62
|
});
|
|
35
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
|
+
|
|
36
84
|
await storeMetadataOnTheGraph({
|
|
37
85
|
metadataUriOrHash: args.offerToCreate.metadataUri,
|
|
38
86
|
metadataStorage: args.metadataStorage,
|
|
@@ -44,20 +92,49 @@ export async function createOffer(args: {
|
|
|
44
92
|
createOffersArgs: [args.offerToCreate]
|
|
45
93
|
});
|
|
46
94
|
|
|
47
|
-
|
|
95
|
+
const transactionRequest = {
|
|
48
96
|
...args.txRequest,
|
|
49
97
|
to: args.contractAddress,
|
|
50
98
|
data: encodeCreateOffer(args.offerToCreate)
|
|
51
|
-
}
|
|
99
|
+
} satisfies TransactionRequest;
|
|
100
|
+
|
|
101
|
+
if (args.returnTxInfo) {
|
|
102
|
+
return transactionRequest;
|
|
103
|
+
} else {
|
|
104
|
+
const txResponse = await args.web3Lib.sendTransaction(transactionRequest);
|
|
105
|
+
return txResponse;
|
|
106
|
+
}
|
|
52
107
|
}
|
|
53
108
|
|
|
109
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
110
|
+
export async function createOfferBatch(args: {
|
|
111
|
+
offersToCreate: CreateOfferArgs[];
|
|
112
|
+
contractAddress: string;
|
|
113
|
+
web3Lib: Web3LibAdapter;
|
|
114
|
+
metadataStorage?: MetadataStorage;
|
|
115
|
+
theGraphStorage?: MetadataStorage;
|
|
116
|
+
returnTxInfo: true;
|
|
117
|
+
}): Promise<TransactionRequest>;
|
|
118
|
+
|
|
119
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
120
|
+
export async function createOfferBatch(args: {
|
|
121
|
+
offersToCreate: CreateOfferArgs[];
|
|
122
|
+
contractAddress: string;
|
|
123
|
+
web3Lib: Web3LibAdapter;
|
|
124
|
+
metadataStorage?: MetadataStorage;
|
|
125
|
+
theGraphStorage?: MetadataStorage;
|
|
126
|
+
returnTxInfo?: false | undefined;
|
|
127
|
+
}): Promise<TransactionResponse>;
|
|
128
|
+
|
|
129
|
+
// Implementation
|
|
54
130
|
export async function createOfferBatch(args: {
|
|
55
131
|
offersToCreate: CreateOfferArgs[];
|
|
56
132
|
contractAddress: string;
|
|
57
133
|
web3Lib: Web3LibAdapter;
|
|
58
134
|
metadataStorage?: MetadataStorage;
|
|
59
135
|
theGraphStorage?: MetadataStorage;
|
|
60
|
-
|
|
136
|
+
returnTxInfo?: boolean;
|
|
137
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
61
138
|
for (const offerToCreate of args.offersToCreate) {
|
|
62
139
|
utils.validation.createOfferArgsSchema.validateSync(offerToCreate, {
|
|
63
140
|
abortEarly: false
|
|
@@ -79,12 +156,19 @@ export async function createOfferBatch(args: {
|
|
|
79
156
|
createOffersArgs: args.offersToCreate
|
|
80
157
|
});
|
|
81
158
|
|
|
82
|
-
|
|
159
|
+
const transactionRequest = {
|
|
83
160
|
to: args.contractAddress,
|
|
84
161
|
data: encodeCreateOfferBatch(args.offersToCreate)
|
|
85
|
-
}
|
|
162
|
+
} satisfies TransactionRequest;
|
|
163
|
+
|
|
164
|
+
if (args.returnTxInfo) {
|
|
165
|
+
return transactionRequest;
|
|
166
|
+
} else {
|
|
167
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
168
|
+
}
|
|
86
169
|
}
|
|
87
170
|
|
|
171
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
88
172
|
export async function reserveRange(args: {
|
|
89
173
|
contractAddress: string;
|
|
90
174
|
subgraphUrl: string;
|
|
@@ -92,7 +176,30 @@ export async function reserveRange(args: {
|
|
|
92
176
|
length: BigNumberish;
|
|
93
177
|
to: string;
|
|
94
178
|
web3Lib: Web3LibAdapter;
|
|
95
|
-
|
|
179
|
+
returnTxInfo: true;
|
|
180
|
+
}): Promise<TransactionRequest>;
|
|
181
|
+
|
|
182
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
183
|
+
export async function reserveRange(args: {
|
|
184
|
+
contractAddress: string;
|
|
185
|
+
subgraphUrl: string;
|
|
186
|
+
offerId: BigNumberish;
|
|
187
|
+
length: BigNumberish;
|
|
188
|
+
to: string;
|
|
189
|
+
web3Lib: Web3LibAdapter;
|
|
190
|
+
returnTxInfo?: false | undefined;
|
|
191
|
+
}): Promise<TransactionResponse>;
|
|
192
|
+
|
|
193
|
+
// Implementation
|
|
194
|
+
export async function reserveRange(args: {
|
|
195
|
+
contractAddress: string;
|
|
196
|
+
subgraphUrl: string;
|
|
197
|
+
offerId: BigNumberish;
|
|
198
|
+
length: BigNumberish;
|
|
199
|
+
to: string;
|
|
200
|
+
web3Lib: Web3LibAdapter;
|
|
201
|
+
returnTxInfo?: boolean;
|
|
202
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
96
203
|
const offerFromSubgraph = await getOfferById(args.subgraphUrl, args.offerId);
|
|
97
204
|
const signerAddress = await args.web3Lib.getSignerAddress();
|
|
98
205
|
|
|
@@ -103,35 +210,87 @@ export async function reserveRange(args: {
|
|
|
103
210
|
offerFromSubgraph
|
|
104
211
|
);
|
|
105
212
|
|
|
106
|
-
|
|
213
|
+
const transactionRequest = {
|
|
107
214
|
to: args.contractAddress,
|
|
108
215
|
data: encodeReserveRange(args.offerId, args.length, args.to)
|
|
109
|
-
}
|
|
216
|
+
} satisfies TransactionRequest;
|
|
217
|
+
|
|
218
|
+
if (args.returnTxInfo) {
|
|
219
|
+
return transactionRequest;
|
|
220
|
+
} else {
|
|
221
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
222
|
+
}
|
|
110
223
|
}
|
|
111
224
|
|
|
225
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
226
|
+
export async function voidOffer(args: {
|
|
227
|
+
contractAddress: string;
|
|
228
|
+
subgraphUrl: string;
|
|
229
|
+
offerId: BigNumberish;
|
|
230
|
+
web3Lib: Web3LibAdapter;
|
|
231
|
+
returnTxInfo: true;
|
|
232
|
+
}): Promise<TransactionRequest>;
|
|
233
|
+
|
|
234
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
235
|
+
export async function voidOffer(args: {
|
|
236
|
+
contractAddress: string;
|
|
237
|
+
subgraphUrl: string;
|
|
238
|
+
offerId: BigNumberish;
|
|
239
|
+
web3Lib: Web3LibAdapter;
|
|
240
|
+
returnTxInfo?: false | undefined;
|
|
241
|
+
}): Promise<TransactionResponse>;
|
|
242
|
+
|
|
243
|
+
// Implementation
|
|
112
244
|
export async function voidOffer(args: {
|
|
113
245
|
contractAddress: string;
|
|
114
246
|
subgraphUrl: string;
|
|
115
247
|
offerId: BigNumberish;
|
|
116
248
|
web3Lib: Web3LibAdapter;
|
|
117
|
-
|
|
249
|
+
returnTxInfo?: boolean;
|
|
250
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
118
251
|
const offerFromSubgraph = await getOfferById(args.subgraphUrl, args.offerId);
|
|
119
252
|
const signerAddress = await args.web3Lib.getSignerAddress();
|
|
120
253
|
|
|
121
254
|
checkIfOfferVoidable(args.offerId, signerAddress, offerFromSubgraph);
|
|
122
255
|
|
|
123
|
-
|
|
256
|
+
const transactionRequest = {
|
|
124
257
|
to: args.contractAddress,
|
|
125
258
|
data: bosonOfferHandlerIface.encodeFunctionData("voidOffer", [args.offerId])
|
|
126
|
-
}
|
|
259
|
+
} satisfies TransactionRequest;
|
|
260
|
+
|
|
261
|
+
if (args.returnTxInfo) {
|
|
262
|
+
return transactionRequest;
|
|
263
|
+
} else {
|
|
264
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
265
|
+
}
|
|
127
266
|
}
|
|
128
267
|
|
|
268
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
129
269
|
export async function voidOfferBatch(args: {
|
|
130
270
|
contractAddress: string;
|
|
131
271
|
subgraphUrl: string;
|
|
132
272
|
offerIds: BigNumberish[];
|
|
133
273
|
web3Lib: Web3LibAdapter;
|
|
134
|
-
|
|
274
|
+
returnTxInfo: true;
|
|
275
|
+
}): Promise<TransactionRequest>;
|
|
276
|
+
|
|
277
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
278
|
+
export async function voidOfferBatch(args: {
|
|
279
|
+
contractAddress: string;
|
|
280
|
+
subgraphUrl: string;
|
|
281
|
+
offerIds: BigNumberish[];
|
|
282
|
+
web3Lib: Web3LibAdapter;
|
|
283
|
+
returnTxInfo?: false | undefined;
|
|
284
|
+
}): Promise<TransactionResponse>;
|
|
285
|
+
|
|
286
|
+
// Implementation
|
|
287
|
+
export async function voidOfferBatch(args: {
|
|
288
|
+
contractAddress: string;
|
|
289
|
+
subgraphUrl: string;
|
|
290
|
+
offerIds: BigNumberish[];
|
|
291
|
+
web3Lib: Web3LibAdapter;
|
|
292
|
+
returnTxInfo?: boolean;
|
|
293
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
135
294
|
const offersFromSubgraph = await getOffers(args.subgraphUrl, {
|
|
136
295
|
offersFilter: {
|
|
137
296
|
id_in: args.offerIds.map(String)
|
|
@@ -155,68 +314,182 @@ export async function voidOfferBatch(args: {
|
|
|
155
314
|
throw new Error(`Some offers can not be voided. ${invalidOfferIdErrors}`);
|
|
156
315
|
}
|
|
157
316
|
|
|
158
|
-
|
|
317
|
+
const transactionRequest = {
|
|
159
318
|
to: args.contractAddress,
|
|
160
319
|
data: bosonOfferHandlerIface.encodeFunctionData("voidOfferBatch", [
|
|
161
320
|
args.offerIds
|
|
162
321
|
])
|
|
163
|
-
}
|
|
322
|
+
} satisfies TransactionRequest;
|
|
323
|
+
|
|
324
|
+
if (args.returnTxInfo) {
|
|
325
|
+
return transactionRequest;
|
|
326
|
+
} else {
|
|
327
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
328
|
+
}
|
|
164
329
|
}
|
|
165
330
|
|
|
331
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
166
332
|
export async function extendOffer(args: {
|
|
167
333
|
contractAddress: string;
|
|
168
334
|
subgraphUrl: string;
|
|
169
335
|
offerId: BigNumberish;
|
|
170
336
|
validUntil: BigNumberish;
|
|
171
337
|
web3Lib: Web3LibAdapter;
|
|
172
|
-
|
|
173
|
-
|
|
338
|
+
returnTxInfo: true;
|
|
339
|
+
}): Promise<TransactionRequest>;
|
|
340
|
+
|
|
341
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
342
|
+
export async function extendOffer(args: {
|
|
343
|
+
contractAddress: string;
|
|
344
|
+
subgraphUrl: string;
|
|
345
|
+
offerId: BigNumberish;
|
|
346
|
+
validUntil: BigNumberish;
|
|
347
|
+
web3Lib: Web3LibAdapter;
|
|
348
|
+
returnTxInfo?: false | undefined;
|
|
349
|
+
}): Promise<TransactionResponse>;
|
|
350
|
+
|
|
351
|
+
// Implementation
|
|
352
|
+
export async function extendOffer(args: {
|
|
353
|
+
contractAddress: string;
|
|
354
|
+
subgraphUrl: string;
|
|
355
|
+
offerId: BigNumberish;
|
|
356
|
+
validUntil: BigNumberish;
|
|
357
|
+
web3Lib: Web3LibAdapter;
|
|
358
|
+
returnTxInfo?: boolean;
|
|
359
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
360
|
+
const transactionRequest = {
|
|
174
361
|
to: args.contractAddress,
|
|
175
362
|
data: bosonOfferHandlerIface.encodeFunctionData("extendOffer", [
|
|
176
363
|
args.offerId,
|
|
177
364
|
args.validUntil
|
|
178
365
|
])
|
|
179
|
-
}
|
|
366
|
+
} satisfies TransactionRequest;
|
|
367
|
+
|
|
368
|
+
if (args.returnTxInfo) {
|
|
369
|
+
return transactionRequest;
|
|
370
|
+
} else {
|
|
371
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
372
|
+
}
|
|
180
373
|
}
|
|
181
374
|
|
|
375
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
376
|
+
export async function extendOfferBatch(args: {
|
|
377
|
+
contractAddress: string;
|
|
378
|
+
subgraphUrl: string;
|
|
379
|
+
offerIds: BigNumberish[];
|
|
380
|
+
validUntil: BigNumberish;
|
|
381
|
+
web3Lib: Web3LibAdapter;
|
|
382
|
+
returnTxInfo: true;
|
|
383
|
+
}): Promise<TransactionRequest>;
|
|
384
|
+
|
|
385
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
182
386
|
export async function extendOfferBatch(args: {
|
|
183
387
|
contractAddress: string;
|
|
184
388
|
subgraphUrl: string;
|
|
185
389
|
offerIds: BigNumberish[];
|
|
186
390
|
validUntil: BigNumberish;
|
|
187
391
|
web3Lib: Web3LibAdapter;
|
|
188
|
-
|
|
189
|
-
|
|
392
|
+
returnTxInfo?: false | undefined;
|
|
393
|
+
}): Promise<TransactionResponse>;
|
|
394
|
+
|
|
395
|
+
// Implementation
|
|
396
|
+
export async function extendOfferBatch(args: {
|
|
397
|
+
contractAddress: string;
|
|
398
|
+
subgraphUrl: string;
|
|
399
|
+
offerIds: BigNumberish[];
|
|
400
|
+
validUntil: BigNumberish;
|
|
401
|
+
web3Lib: Web3LibAdapter;
|
|
402
|
+
returnTxInfo?: boolean;
|
|
403
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
404
|
+
const transactionRequest = {
|
|
190
405
|
to: args.contractAddress,
|
|
191
406
|
data: bosonOfferHandlerIface.encodeFunctionData("extendOfferBatch", [
|
|
192
407
|
args.offerIds,
|
|
193
408
|
args.validUntil
|
|
194
409
|
])
|
|
195
|
-
}
|
|
410
|
+
} satisfies TransactionRequest;
|
|
411
|
+
|
|
412
|
+
if (args.returnTxInfo) {
|
|
413
|
+
return transactionRequest;
|
|
414
|
+
} else {
|
|
415
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
416
|
+
}
|
|
196
417
|
}
|
|
197
418
|
|
|
419
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
420
|
+
export async function updateOfferRoyaltyRecipients(args: {
|
|
421
|
+
contractAddress: string;
|
|
422
|
+
web3Lib: Web3LibAdapter;
|
|
423
|
+
offerId: BigNumberish;
|
|
424
|
+
royaltyInfo: RoyaltyInfo;
|
|
425
|
+
returnTxInfo: true;
|
|
426
|
+
}): Promise<TransactionRequest>;
|
|
427
|
+
|
|
428
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
429
|
+
export async function updateOfferRoyaltyRecipients(args: {
|
|
430
|
+
contractAddress: string;
|
|
431
|
+
web3Lib: Web3LibAdapter;
|
|
432
|
+
offerId: BigNumberish;
|
|
433
|
+
royaltyInfo: RoyaltyInfo;
|
|
434
|
+
returnTxInfo?: false | undefined;
|
|
435
|
+
}): Promise<TransactionResponse>;
|
|
436
|
+
|
|
437
|
+
// Implementation
|
|
198
438
|
export async function updateOfferRoyaltyRecipients(args: {
|
|
199
439
|
contractAddress: string;
|
|
200
440
|
web3Lib: Web3LibAdapter;
|
|
201
441
|
offerId: BigNumberish;
|
|
202
442
|
royaltyInfo: RoyaltyInfo;
|
|
203
|
-
|
|
204
|
-
|
|
443
|
+
returnTxInfo?: boolean;
|
|
444
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
445
|
+
const transactionRequest = {
|
|
205
446
|
to: args.contractAddress,
|
|
206
447
|
data: encodeUpdateOfferRoyaltyRecipients(args)
|
|
207
|
-
}
|
|
448
|
+
} satisfies TransactionRequest;
|
|
449
|
+
|
|
450
|
+
if (args.returnTxInfo) {
|
|
451
|
+
return transactionRequest;
|
|
452
|
+
} else {
|
|
453
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
454
|
+
}
|
|
208
455
|
}
|
|
209
456
|
|
|
457
|
+
// Overload: returnTxInfo is true → returns TransactionRequest
|
|
458
|
+
export async function updateOfferRoyaltyRecipientsBatch(args: {
|
|
459
|
+
contractAddress: string;
|
|
460
|
+
web3Lib: Web3LibAdapter;
|
|
461
|
+
offerIds: BigNumberish[];
|
|
462
|
+
royaltyInfo: RoyaltyInfo;
|
|
463
|
+
returnTxInfo: true;
|
|
464
|
+
}): Promise<TransactionRequest>;
|
|
465
|
+
|
|
466
|
+
// Overload: returnTxInfo is false or undefined → returns TransactionResponse
|
|
467
|
+
export async function updateOfferRoyaltyRecipientsBatch(args: {
|
|
468
|
+
contractAddress: string;
|
|
469
|
+
web3Lib: Web3LibAdapter;
|
|
470
|
+
offerIds: BigNumberish[];
|
|
471
|
+
royaltyInfo: RoyaltyInfo;
|
|
472
|
+
returnTxInfo?: false | undefined;
|
|
473
|
+
}): Promise<TransactionResponse>;
|
|
474
|
+
|
|
475
|
+
// Implementation
|
|
210
476
|
export async function updateOfferRoyaltyRecipientsBatch(args: {
|
|
211
477
|
contractAddress: string;
|
|
212
478
|
web3Lib: Web3LibAdapter;
|
|
213
479
|
offerIds: BigNumberish[];
|
|
214
480
|
royaltyInfo: RoyaltyInfo;
|
|
215
|
-
|
|
216
|
-
|
|
481
|
+
returnTxInfo?: boolean;
|
|
482
|
+
}): Promise<TransactionRequest | TransactionResponse> {
|
|
483
|
+
const transactionRequest = {
|
|
217
484
|
to: args.contractAddress,
|
|
218
485
|
data: encodeUpdateOfferRoyaltyRecipientsBatch(args)
|
|
219
|
-
}
|
|
486
|
+
} satisfies TransactionRequest;
|
|
487
|
+
|
|
488
|
+
if (args.returnTxInfo) {
|
|
489
|
+
return transactionRequest;
|
|
490
|
+
} else {
|
|
491
|
+
return args.web3Lib.sendTransaction(transactionRequest);
|
|
492
|
+
}
|
|
220
493
|
}
|
|
221
494
|
|
|
222
495
|
function checkIfOfferVoidable(
|