@azuro-org/toolkit 5.0.0-beta.9 → 5.0.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/README.md +2 -2
- package/dist/docs/bets/bets.d.ts +4 -0
- package/dist/docs/bets/fragments/bet.d.ts +4 -0
- package/dist/docs/bets/fragments/legacyLiveBet.d.ts +4 -0
- package/dist/docs/bets/fragments/legacyPrematchBet.d.ts +4 -0
- package/dist/docs/bets/legacyBets.d.ts +8 -0
- package/dist/docs/feed/navigation.d.ts +0 -1
- package/dist/docs/feed/sportsNavigation.d.ts +0 -1
- package/dist/docs/feed/types.d.ts +6 -0
- package/dist/global.d.ts +1 -0
- package/dist/index.js +61 -42
- package/dist/utils/cashout/createCashout.d.ts +1 -2
- package/dist/utils/cashout/getCalculatedCashout.d.ts +1 -2
- package/dist/utils/cashout/getCashoutTypedData.d.ts +1 -2
- package/dist/utils/cashout/getPrecalculatedCashouts.d.ts +5 -3
- package/dist/utils/getEndpoints.d.ts +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -13,9 +13,9 @@ npm i --save @azuro-org/toolkit
|
|
|
13
13
|
|
|
14
14
|
```
|
|
15
15
|
@azuro-org/dictionaries@^3.0.26
|
|
16
|
-
@wagmi/core@^2.16.7
|
|
17
|
-
viem@^2.24.3
|
|
18
16
|
graphql-tag@^2.12.6
|
|
17
|
+
@wagmi/core@^2.17.1
|
|
18
|
+
viem@^2.29.0
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
Package information can be found in our [Doc](https://gem.azuro.org/hub/apps/toolkit/overview)
|
package/dist/docs/bets/bets.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export type BetsQuery = {
|
|
|
11
11
|
v3Bets: Array<{
|
|
12
12
|
__typename?: 'V3_Bet';
|
|
13
13
|
id: string;
|
|
14
|
+
actor: string;
|
|
14
15
|
amount: string;
|
|
15
16
|
status: Types.BetStatus;
|
|
16
17
|
potentialPayout: string;
|
|
@@ -18,12 +19,14 @@ export type BetsQuery = {
|
|
|
18
19
|
result?: Types.BetResult | null;
|
|
19
20
|
odds: string;
|
|
20
21
|
settledOdds?: string | null;
|
|
22
|
+
redeemedTxHash?: string | null;
|
|
21
23
|
affiliate: string;
|
|
22
24
|
isRedeemed: boolean;
|
|
23
25
|
isRedeemable: boolean;
|
|
24
26
|
isCashedOut: boolean;
|
|
25
27
|
tokenId: string;
|
|
26
28
|
createdAt: string;
|
|
29
|
+
resolvedAt?: string | null;
|
|
27
30
|
txHash: string;
|
|
28
31
|
core: {
|
|
29
32
|
__typename?: 'CoreContract';
|
|
@@ -48,6 +51,7 @@ export type BetsQuery = {
|
|
|
48
51
|
title?: string | null;
|
|
49
52
|
status: Types.ConditionStatus;
|
|
50
53
|
gameId: string;
|
|
54
|
+
wonOutcomeIds?: Array<string> | null;
|
|
51
55
|
};
|
|
52
56
|
};
|
|
53
57
|
}>;
|
|
@@ -2,6 +2,7 @@ import * as Types from '../types';
|
|
|
2
2
|
export type BetFragment = {
|
|
3
3
|
__typename?: 'V3_Bet';
|
|
4
4
|
id: string;
|
|
5
|
+
actor: string;
|
|
5
6
|
amount: string;
|
|
6
7
|
status: Types.BetStatus;
|
|
7
8
|
potentialPayout: string;
|
|
@@ -9,12 +10,14 @@ export type BetFragment = {
|
|
|
9
10
|
result?: Types.BetResult | null;
|
|
10
11
|
odds: string;
|
|
11
12
|
settledOdds?: string | null;
|
|
13
|
+
redeemedTxHash?: string | null;
|
|
12
14
|
affiliate: string;
|
|
13
15
|
isRedeemed: boolean;
|
|
14
16
|
isRedeemable: boolean;
|
|
15
17
|
isCashedOut: boolean;
|
|
16
18
|
tokenId: string;
|
|
17
19
|
createdAt: string;
|
|
20
|
+
resolvedAt?: string | null;
|
|
18
21
|
txHash: string;
|
|
19
22
|
core: {
|
|
20
23
|
__typename?: 'CoreContract';
|
|
@@ -39,6 +42,7 @@ export type BetFragment = {
|
|
|
39
42
|
title?: string | null;
|
|
40
43
|
status: Types.ConditionStatus;
|
|
41
44
|
gameId: string;
|
|
45
|
+
wonOutcomeIds?: Array<string> | null;
|
|
42
46
|
};
|
|
43
47
|
};
|
|
44
48
|
}>;
|
|
@@ -2,6 +2,7 @@ import * as Types from '../types';
|
|
|
2
2
|
export type LegacyLiveBetFragment = {
|
|
3
3
|
__typename?: 'LiveBet';
|
|
4
4
|
id: string;
|
|
5
|
+
actor: string;
|
|
5
6
|
amount: string;
|
|
6
7
|
status: Types.BetStatus;
|
|
7
8
|
potentialPayout: string;
|
|
@@ -9,12 +10,14 @@ export type LegacyLiveBetFragment = {
|
|
|
9
10
|
result?: Types.BetResult | null;
|
|
10
11
|
odds: string;
|
|
11
12
|
settledOdds?: string | null;
|
|
13
|
+
redeemedTxHash?: string | null;
|
|
12
14
|
affiliate?: string | null;
|
|
13
15
|
isRedeemed: boolean;
|
|
14
16
|
isRedeemable: boolean;
|
|
15
17
|
isCashedOut: boolean;
|
|
16
18
|
tokenId: string;
|
|
17
19
|
createdAt: string;
|
|
20
|
+
resolvedAt?: string | null;
|
|
18
21
|
txHash: string;
|
|
19
22
|
core: {
|
|
20
23
|
__typename?: 'CoreContract';
|
|
@@ -36,6 +39,7 @@ export type LegacyLiveBetFragment = {
|
|
|
36
39
|
conditionId: string;
|
|
37
40
|
status: Types.ConditionStatus;
|
|
38
41
|
gameId: string;
|
|
42
|
+
wonOutcomeIds?: Array<string> | null;
|
|
39
43
|
};
|
|
40
44
|
};
|
|
41
45
|
}>;
|
|
@@ -2,6 +2,7 @@ import * as Types from '../types';
|
|
|
2
2
|
export type LegacyPrematchBetFragment = {
|
|
3
3
|
__typename?: 'Bet';
|
|
4
4
|
id: string;
|
|
5
|
+
actor: string;
|
|
5
6
|
amount: string;
|
|
6
7
|
status: Types.BetStatus;
|
|
7
8
|
potentialPayout: string;
|
|
@@ -9,12 +10,14 @@ export type LegacyPrematchBetFragment = {
|
|
|
9
10
|
result?: Types.BetResult | null;
|
|
10
11
|
odds: string;
|
|
11
12
|
settledOdds?: string | null;
|
|
13
|
+
redeemedTxHash?: string | null;
|
|
12
14
|
affiliate?: string | null;
|
|
13
15
|
isRedeemed: boolean;
|
|
14
16
|
isRedeemable: boolean;
|
|
15
17
|
isCashedOut: boolean;
|
|
16
18
|
tokenId: string;
|
|
17
19
|
createdAt: string;
|
|
20
|
+
resolvedAt?: string | null;
|
|
18
21
|
txHash: string;
|
|
19
22
|
core: {
|
|
20
23
|
__typename?: 'CoreContract';
|
|
@@ -37,6 +40,7 @@ export type LegacyPrematchBetFragment = {
|
|
|
37
40
|
conditionId: string;
|
|
38
41
|
status: Types.ConditionStatus;
|
|
39
42
|
title?: string | null;
|
|
43
|
+
wonOutcomeIds?: Array<string> | null;
|
|
40
44
|
game: {
|
|
41
45
|
__typename?: 'Game';
|
|
42
46
|
id: string;
|
|
@@ -11,6 +11,7 @@ export type LegacyBetsQuery = {
|
|
|
11
11
|
bets: Array<{
|
|
12
12
|
__typename?: 'Bet';
|
|
13
13
|
id: string;
|
|
14
|
+
actor: string;
|
|
14
15
|
amount: string;
|
|
15
16
|
status: Types.BetStatus;
|
|
16
17
|
potentialPayout: string;
|
|
@@ -18,12 +19,14 @@ export type LegacyBetsQuery = {
|
|
|
18
19
|
result?: Types.BetResult | null;
|
|
19
20
|
odds: string;
|
|
20
21
|
settledOdds?: string | null;
|
|
22
|
+
redeemedTxHash?: string | null;
|
|
21
23
|
affiliate?: string | null;
|
|
22
24
|
isRedeemed: boolean;
|
|
23
25
|
isRedeemable: boolean;
|
|
24
26
|
isCashedOut: boolean;
|
|
25
27
|
tokenId: string;
|
|
26
28
|
createdAt: string;
|
|
29
|
+
resolvedAt?: string | null;
|
|
27
30
|
txHash: string;
|
|
28
31
|
core: {
|
|
29
32
|
__typename?: 'CoreContract';
|
|
@@ -46,6 +49,7 @@ export type LegacyBetsQuery = {
|
|
|
46
49
|
conditionId: string;
|
|
47
50
|
status: Types.ConditionStatus;
|
|
48
51
|
title?: string | null;
|
|
52
|
+
wonOutcomeIds?: Array<string> | null;
|
|
49
53
|
game: {
|
|
50
54
|
__typename?: 'Game';
|
|
51
55
|
id: string;
|
|
@@ -97,6 +101,7 @@ export type LegacyBetsQuery = {
|
|
|
97
101
|
liveBets: Array<{
|
|
98
102
|
__typename?: 'LiveBet';
|
|
99
103
|
id: string;
|
|
104
|
+
actor: string;
|
|
100
105
|
amount: string;
|
|
101
106
|
status: Types.BetStatus;
|
|
102
107
|
potentialPayout: string;
|
|
@@ -104,12 +109,14 @@ export type LegacyBetsQuery = {
|
|
|
104
109
|
result?: Types.BetResult | null;
|
|
105
110
|
odds: string;
|
|
106
111
|
settledOdds?: string | null;
|
|
112
|
+
redeemedTxHash?: string | null;
|
|
107
113
|
affiliate?: string | null;
|
|
108
114
|
isRedeemed: boolean;
|
|
109
115
|
isRedeemable: boolean;
|
|
110
116
|
isCashedOut: boolean;
|
|
111
117
|
tokenId: string;
|
|
112
118
|
createdAt: string;
|
|
119
|
+
resolvedAt?: string | null;
|
|
113
120
|
txHash: string;
|
|
114
121
|
core: {
|
|
115
122
|
__typename?: 'CoreContract';
|
|
@@ -131,6 +138,7 @@ export type LegacyBetsQuery = {
|
|
|
131
138
|
conditionId: string;
|
|
132
139
|
status: Types.ConditionStatus;
|
|
133
140
|
gameId: string;
|
|
141
|
+
wonOutcomeIds?: Array<string> | null;
|
|
134
142
|
};
|
|
135
143
|
};
|
|
136
144
|
}>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as Types from './types';
|
|
2
2
|
export type NavigationQueryVariables = Types.Exact<{
|
|
3
|
-
first?: Types.InputMaybe<Types.Scalars['Int']['input']>;
|
|
4
3
|
sportFilter?: Types.InputMaybe<Types.Sport_Filter>;
|
|
5
4
|
countryFilter?: Types.InputMaybe<Types.Country_Filter>;
|
|
6
5
|
leagueFilter?: Types.InputMaybe<Types.League_Filter>;
|
|
@@ -88,6 +88,7 @@ export type Condition = {
|
|
|
88
88
|
game: Game;
|
|
89
89
|
/** Condition Id */
|
|
90
90
|
id: Scalars['ID']['output'];
|
|
91
|
+
isCashoutEnabled: Scalars['Boolean']['output'];
|
|
91
92
|
isExpressForbidden: Scalars['Boolean']['output'];
|
|
92
93
|
isLiveEnabled: Scalars['Boolean']['output'];
|
|
93
94
|
isPrematchEnabled: Scalars['Boolean']['output'];
|
|
@@ -243,6 +244,10 @@ export type Condition_Filter = {
|
|
|
243
244
|
id_lte?: InputMaybe<Scalars['ID']['input']>;
|
|
244
245
|
id_not?: InputMaybe<Scalars['ID']['input']>;
|
|
245
246
|
id_not_in?: InputMaybe<Array<Scalars['ID']['input']>>;
|
|
247
|
+
isCashoutEnabled?: InputMaybe<Scalars['Boolean']['input']>;
|
|
248
|
+
isCashoutEnabled_in?: InputMaybe<Array<Scalars['Boolean']['input']>>;
|
|
249
|
+
isCashoutEnabled_not?: InputMaybe<Scalars['Boolean']['input']>;
|
|
250
|
+
isCashoutEnabled_not_in?: InputMaybe<Array<Scalars['Boolean']['input']>>;
|
|
246
251
|
isExpressForbidden?: InputMaybe<Scalars['Boolean']['input']>;
|
|
247
252
|
isExpressForbidden_in?: InputMaybe<Array<Scalars['Boolean']['input']>>;
|
|
248
253
|
isExpressForbidden_not?: InputMaybe<Scalars['Boolean']['input']>;
|
|
@@ -401,6 +406,7 @@ export declare enum Condition_OrderBy {
|
|
|
401
406
|
Description = "description",
|
|
402
407
|
Game = "game",
|
|
403
408
|
Id = "id",
|
|
409
|
+
IsCashoutEnabled = "isCashoutEnabled",
|
|
404
410
|
IsExpressForbidden = "isExpressForbidden",
|
|
405
411
|
IsLiveEnabled = "isLiveEnabled",
|
|
406
412
|
IsPrematchEnabled = "isPrematchEnabled",
|
package/dist/global.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -4829,8 +4829,8 @@ const isDev = (chainId) => {
|
|
|
4829
4829
|
chainId === spicy.id ||
|
|
4830
4830
|
chainId === baseSepolia.id);
|
|
4831
4831
|
};
|
|
4832
|
-
const getFeedGraphqlEndpoint = (chainId) => (`https://thegraph.onchainfeed.org/subgraphs/name/azuro-protocol/azuro-data-feed-${endpointNameByChainId[chainId]}`);
|
|
4833
|
-
const getBetsGraphqlEndpoint = (chainId) => (`https://thegraph.
|
|
4832
|
+
const getFeedGraphqlEndpoint = (chainId) => (`https://thegraph-1.onchainfeed.org/subgraphs/name/azuro-protocol/azuro-data-feed-${endpointNameByChainId[chainId]}`);
|
|
4833
|
+
const getBetsGraphqlEndpoint = (chainId) => (`https://thegraph.onchainfeed.org/subgraphs/name/azuro-protocol/azuro-api-${endpointNameByChainId[chainId]}-v3`);
|
|
4834
4834
|
/**
|
|
4835
4835
|
* @deprecated Only for v2 feed
|
|
4836
4836
|
*/
|
|
@@ -4859,7 +4859,7 @@ const getApiEndpoint = (chainId) => {
|
|
|
4859
4859
|
// if (chainId === polygonAmoy.id) {
|
|
4860
4860
|
// return 'https://preprod-api.azuro.org/api/v1/public'
|
|
4861
4861
|
// }
|
|
4862
|
-
return 'https://api.
|
|
4862
|
+
return 'https://api.onchainfeed.org/api/v1/public';
|
|
4863
4863
|
};const ODDS_DECIMALS = 12;
|
|
4864
4864
|
const MIN_BET_AMOUNT = 1;
|
|
4865
4865
|
const CLIENT_DATA_TYPES = [
|
|
@@ -4929,11 +4929,11 @@ const gnosisData = {
|
|
|
4929
4929
|
api: getApiEndpoint(gnosis.id),
|
|
4930
4930
|
environment: environments[gnosis.id],
|
|
4931
4931
|
contracts: setupContracts({
|
|
4932
|
-
lp: '
|
|
4933
|
-
core: '
|
|
4934
|
-
relayer: '
|
|
4935
|
-
azuroBet: '
|
|
4936
|
-
cashout: '
|
|
4932
|
+
lp: '0xeb7cDA87D00d677A6Dc73EB569723b0fA51D97E7',
|
|
4933
|
+
core: '0x0e00E6ffcb5E207B800eec9e02999D1Fd9e448f2',
|
|
4934
|
+
relayer: '0x40eb85018fA18dDd10a433C8c40ca8D6744d8B32',
|
|
4935
|
+
azuroBet: '0xd7cd9342A14962C2dCB14569CB6fcA2759999089',
|
|
4936
|
+
cashout: '0x25de227af58188e656524d1C32cCf7C078cdC891',
|
|
4937
4937
|
}),
|
|
4938
4938
|
betToken: {
|
|
4939
4939
|
address: '0xe91D153E0b41518A2Ce8Dd3D7944Fa863463a97d',
|
|
@@ -4975,11 +4975,11 @@ const polygonData = {
|
|
|
4975
4975
|
api: getApiEndpoint(polygon.id),
|
|
4976
4976
|
environment: environments[polygon.id],
|
|
4977
4977
|
contracts: setupContracts({
|
|
4978
|
-
lp: '
|
|
4979
|
-
core: '
|
|
4980
|
-
relayer: '
|
|
4981
|
-
azuroBet: '
|
|
4982
|
-
cashout: '
|
|
4978
|
+
lp: '0x0FA7FB5407eA971694652E6E16C12A52625DE1b8',
|
|
4979
|
+
core: '0xF9548Be470A4e130c90ceA8b179FCD66D2972AC7',
|
|
4980
|
+
relayer: '0x8dA05c0021e6b35865FDC959c54dCeF3A4AbBa9d',
|
|
4981
|
+
azuroBet: '0x7A1c3FEf712753374C4DCe34254B96faF2B7265B',
|
|
4982
|
+
cashout: '0x4a2BB4211cCF9b9eA6eF01D0a61448154ED19095',
|
|
4983
4983
|
}),
|
|
4984
4984
|
betToken: {
|
|
4985
4985
|
address: '0xc2132d05d31c914a87c6611c10748aeb04b58e8f',
|
|
@@ -5044,14 +5044,14 @@ const chilizData = {
|
|
|
5044
5044
|
api: getApiEndpoint(chiliz.id),
|
|
5045
5045
|
environment: environments[chiliz.id],
|
|
5046
5046
|
contracts: setupContracts({
|
|
5047
|
-
lp: '
|
|
5048
|
-
core: '
|
|
5049
|
-
relayer: '
|
|
5050
|
-
azuroBet: '
|
|
5051
|
-
cashout: '
|
|
5047
|
+
lp: '0xEf6b12580301b04CD2551182C88623524B6e47b8',
|
|
5048
|
+
core: '0xa5061617Ee6565CF48d7f0FEF06910b9fb9dE2b0',
|
|
5049
|
+
relayer: '0x81F72B93ABaf061535aaF5D831F05e0CC4084b32',
|
|
5050
|
+
azuroBet: '0x3777B4F27F4B36f14454dbB1f79278bcba694B52',
|
|
5051
|
+
cashout: '0x3995eebB51793Ee353162E7400DB455B17dE3692',
|
|
5052
5052
|
}),
|
|
5053
5053
|
betToken: {
|
|
5054
|
-
address: '
|
|
5054
|
+
address: '0x677F7e16C7Dd57be1D4C8aD1244883214953DC47',
|
|
5055
5055
|
symbol: 'WCHZ',
|
|
5056
5056
|
decimals: 18,
|
|
5057
5057
|
},
|
|
@@ -5113,11 +5113,11 @@ const baseData = {
|
|
|
5113
5113
|
api: getApiEndpoint(base.id),
|
|
5114
5114
|
environment: environments[base.id],
|
|
5115
5115
|
contracts: setupContracts({
|
|
5116
|
-
lp: '
|
|
5117
|
-
core: '
|
|
5118
|
-
relayer: '
|
|
5119
|
-
azuroBet: '
|
|
5120
|
-
cashout: '
|
|
5116
|
+
lp: '0x1eD7368bc515E928A4007cEa61FB8a6F8863Af87',
|
|
5117
|
+
core: '0xF40cF1dD7d16C098cff5F8B5650A8FaEf1F4640d',
|
|
5118
|
+
relayer: '0xD2D508d66dB4fCE4B384e4C3EA2fa53BA43e73b5',
|
|
5119
|
+
azuroBet: '0xF328404Dbc8c997d12dC55a1A179AF7F8cb7df90',
|
|
5120
|
+
cashout: '0x6EDff24761F4473611B45BDAe4a779ff31af14Be',
|
|
5121
5121
|
}),
|
|
5122
5122
|
betToken: {
|
|
5123
5123
|
address: '0x4200000000000000000000000000000000000006',
|
|
@@ -5170,6 +5170,7 @@ const chainsDataByEnv = {
|
|
|
5170
5170
|
fragment LegacyLiveBet on LiveBet {
|
|
5171
5171
|
id
|
|
5172
5172
|
tokenId: betId
|
|
5173
|
+
actor
|
|
5173
5174
|
amount
|
|
5174
5175
|
status
|
|
5175
5176
|
potentialPayout
|
|
@@ -5178,7 +5179,9 @@ const chainsDataByEnv = {
|
|
|
5178
5179
|
odds
|
|
5179
5180
|
settledOdds
|
|
5180
5181
|
createdAt: createdBlockTimestamp
|
|
5182
|
+
resolvedAt: resolvedBlockTimestamp
|
|
5181
5183
|
txHash: createdTxHash
|
|
5184
|
+
redeemedTxHash
|
|
5182
5185
|
affiliate
|
|
5183
5186
|
isRedeemed
|
|
5184
5187
|
isRedeemable
|
|
@@ -5198,6 +5201,7 @@ const chainsDataByEnv = {
|
|
|
5198
5201
|
conditionId
|
|
5199
5202
|
status
|
|
5200
5203
|
gameId
|
|
5204
|
+
wonOutcomeIds
|
|
5201
5205
|
}
|
|
5202
5206
|
}
|
|
5203
5207
|
}
|
|
@@ -5209,6 +5213,7 @@ const chainsDataByEnv = {
|
|
|
5209
5213
|
fragment LegacyPrematchBet on Bet {
|
|
5210
5214
|
id
|
|
5211
5215
|
tokenId: betId
|
|
5216
|
+
actor
|
|
5212
5217
|
amount
|
|
5213
5218
|
status
|
|
5214
5219
|
potentialPayout
|
|
@@ -5217,7 +5222,9 @@ const chainsDataByEnv = {
|
|
|
5217
5222
|
odds
|
|
5218
5223
|
settledOdds
|
|
5219
5224
|
createdAt: createdBlockTimestamp
|
|
5225
|
+
resolvedAt: resolvedBlockTimestamp
|
|
5220
5226
|
txHash: createdTxHash
|
|
5227
|
+
redeemedTxHash
|
|
5221
5228
|
affiliate
|
|
5222
5229
|
isRedeemed
|
|
5223
5230
|
isRedeemable
|
|
@@ -5238,6 +5245,7 @@ const chainsDataByEnv = {
|
|
|
5238
5245
|
conditionId
|
|
5239
5246
|
status
|
|
5240
5247
|
title
|
|
5248
|
+
wonOutcomeIds
|
|
5241
5249
|
game {
|
|
5242
5250
|
id
|
|
5243
5251
|
gameId
|
|
@@ -5282,6 +5290,7 @@ const chainsDataByEnv = {
|
|
|
5282
5290
|
fragment Bet on V3_Bet {
|
|
5283
5291
|
id
|
|
5284
5292
|
tokenId: betId
|
|
5293
|
+
actor
|
|
5285
5294
|
amount
|
|
5286
5295
|
status
|
|
5287
5296
|
potentialPayout
|
|
@@ -5290,7 +5299,9 @@ const chainsDataByEnv = {
|
|
|
5290
5299
|
odds
|
|
5291
5300
|
settledOdds
|
|
5292
5301
|
createdAt: createdBlockTimestamp
|
|
5302
|
+
resolvedAt: resolvedBlockTimestamp
|
|
5293
5303
|
txHash: createdTxHash
|
|
5304
|
+
redeemedTxHash
|
|
5294
5305
|
affiliate
|
|
5295
5306
|
isRedeemed
|
|
5296
5307
|
isRedeemable
|
|
@@ -5313,6 +5324,7 @@ const chainsDataByEnv = {
|
|
|
5313
5324
|
title
|
|
5314
5325
|
status
|
|
5315
5326
|
gameId
|
|
5327
|
+
wonOutcomeIds
|
|
5316
5328
|
}
|
|
5317
5329
|
}
|
|
5318
5330
|
}
|
|
@@ -5528,7 +5540,7 @@ ${LegacyLiveBetFragmentDoc}`;const GameBetsDocument = gql `
|
|
|
5528
5540
|
}
|
|
5529
5541
|
}
|
|
5530
5542
|
${GameInfoFragmentDoc}`;const NavigationDocument = gql `
|
|
5531
|
-
query Navigation($
|
|
5543
|
+
query Navigation($sportFilter: Sport_filter, $countryFilter: Country_filter, $leagueFilter: League_filter) {
|
|
5532
5544
|
sports(where: $sportFilter, subgraphError: allow) {
|
|
5533
5545
|
id
|
|
5534
5546
|
slug
|
|
@@ -5595,7 +5607,7 @@ ${LegacyLiveBetFragmentDoc}`;const GameBetsDocument = gql `
|
|
|
5595
5607
|
}
|
|
5596
5608
|
}
|
|
5597
5609
|
${GameInfoFragmentDoc}`;const SportsNavigationDocument = gql `
|
|
5598
|
-
query SportsNavigation($
|
|
5610
|
+
query SportsNavigation($sportFilter: Sport_filter) {
|
|
5599
5611
|
sports(where: $sportFilter, subgraphError: allow) {
|
|
5600
5612
|
id
|
|
5601
5613
|
slug
|
|
@@ -6441,6 +6453,7 @@ var Condition_OrderBy;
|
|
|
6441
6453
|
Condition_OrderBy["Description"] = "description";
|
|
6442
6454
|
Condition_OrderBy["Game"] = "game";
|
|
6443
6455
|
Condition_OrderBy["Id"] = "id";
|
|
6456
|
+
Condition_OrderBy["IsCashoutEnabled"] = "isCashoutEnabled";
|
|
6444
6457
|
Condition_OrderBy["IsExpressForbidden"] = "isExpressForbidden";
|
|
6445
6458
|
Condition_OrderBy["IsLiveEnabled"] = "isLiveEnabled";
|
|
6446
6459
|
Condition_OrderBy["IsPrematchEnabled"] = "isPrematchEnabled";
|
|
@@ -6937,10 +6950,14 @@ const getFreeBets = async ({ chainId, account, affiliate }) => {
|
|
|
6937
6950
|
if (response.status === 404) {
|
|
6938
6951
|
return null;
|
|
6939
6952
|
}
|
|
6953
|
+
const data = await response.json();
|
|
6940
6954
|
if (!response.ok) {
|
|
6941
|
-
|
|
6955
|
+
const error = new Error(data?.errorMessage || `Status: ${response.status}`);
|
|
6956
|
+
if (data?.error) {
|
|
6957
|
+
error.cause = new Error(data.error);
|
|
6958
|
+
}
|
|
6959
|
+
throw error;
|
|
6942
6960
|
}
|
|
6943
|
-
const data = await response.json();
|
|
6944
6961
|
return data;
|
|
6945
6962
|
};const createComboBet = async (props) => {
|
|
6946
6963
|
const { account, amount, minOdds, nonce, clientData, bets, signature } = props;
|
|
@@ -6973,10 +6990,14 @@ const getFreeBets = async ({ chainId, account, affiliate }) => {
|
|
|
6973
6990
|
if (response.status === 404) {
|
|
6974
6991
|
return null;
|
|
6975
6992
|
}
|
|
6993
|
+
const data = await response.json();
|
|
6976
6994
|
if (!response.ok) {
|
|
6977
|
-
|
|
6995
|
+
const error = new Error(data?.errorMessage || `Status: ${response.status}`);
|
|
6996
|
+
if (data?.error) {
|
|
6997
|
+
error.cause = new Error(data.error);
|
|
6998
|
+
}
|
|
6999
|
+
throw error;
|
|
6978
7000
|
}
|
|
6979
|
-
const data = await response.json();
|
|
6980
7001
|
return data;
|
|
6981
7002
|
};const getBet = async ({ chainId, orderId }) => {
|
|
6982
7003
|
const { api } = chainsData[chainId];
|
|
@@ -7118,7 +7139,7 @@ const getWaveLevels = async ({ waveId, chainId } = { waveId: 'active', chainId:
|
|
|
7118
7139
|
if (!contracts.cashout?.address) {
|
|
7119
7140
|
throw new Error('provided chainId is not supported for cashout');
|
|
7120
7141
|
}
|
|
7121
|
-
const response = await fetch(`${api}/cashout/get-
|
|
7142
|
+
const response = await fetch(`${api}/cashout/get-available`, {
|
|
7122
7143
|
method: 'POST',
|
|
7123
7144
|
headers: {
|
|
7124
7145
|
'Accept': 'application/json',
|
|
@@ -7134,10 +7155,10 @@ const getWaveLevels = async ({ waveId, chainId } = { waveId: 'active', chainId:
|
|
|
7134
7155
|
if (!response.ok) {
|
|
7135
7156
|
throw new Error(`Status ${response.status}: ${response.statusText}`);
|
|
7136
7157
|
}
|
|
7137
|
-
const
|
|
7138
|
-
return
|
|
7158
|
+
const data = await response.json();
|
|
7159
|
+
return data;
|
|
7139
7160
|
};const getCalculatedCashout = async (props) => {
|
|
7140
|
-
const { chainId, account, graphBetId
|
|
7161
|
+
const { chainId, account, graphBetId } = props;
|
|
7141
7162
|
const { api, environment, contracts } = chainsData[chainId];
|
|
7142
7163
|
if (!contracts.cashout?.address) {
|
|
7143
7164
|
throw new Error('provided chainId is not supported for cashout');
|
|
@@ -7152,7 +7173,6 @@ const getWaveLevels = async ({ waveId, chainId } = { waveId: 'active', chainId:
|
|
|
7152
7173
|
environment,
|
|
7153
7174
|
owner: account,
|
|
7154
7175
|
betId: graphBetId,
|
|
7155
|
-
isLive,
|
|
7156
7176
|
}),
|
|
7157
7177
|
});
|
|
7158
7178
|
if (response.status === 404) {
|
|
@@ -7161,15 +7181,14 @@ const getWaveLevels = async ({ waveId, chainId } = { waveId: 'active', chainId:
|
|
|
7161
7181
|
if (!response.ok) {
|
|
7162
7182
|
throw new Error(`Status ${response.status}: ${response.statusText}`);
|
|
7163
7183
|
}
|
|
7164
|
-
const {
|
|
7184
|
+
const { owner, betId, ...rest } = await response.json();
|
|
7165
7185
|
return {
|
|
7166
|
-
multiplier: cashoutOdds,
|
|
7167
7186
|
account: owner,
|
|
7168
7187
|
tokenId: betId,
|
|
7169
7188
|
...rest,
|
|
7170
7189
|
};
|
|
7171
7190
|
};const getCashoutTypedData = (props) => {
|
|
7172
|
-
const { account, chainId, attention, tokenId,
|
|
7191
|
+
const { account, chainId, attention, tokenId, cashoutOdds, expiredAt } = props;
|
|
7173
7192
|
const { contracts } = chainsData[chainId];
|
|
7174
7193
|
if (!contracts.cashout?.address) {
|
|
7175
7194
|
throw new Error('provided chainId is not supported for cashout');
|
|
@@ -7191,8 +7210,8 @@ const getWaveLevels = async ({ waveId, chainId } = { waveId: 'active', chainId:
|
|
|
7191
7210
|
items: [
|
|
7192
7211
|
{
|
|
7193
7212
|
betId: BigInt(tokenId),
|
|
7194
|
-
bettingContract:
|
|
7195
|
-
minOdds: typeof
|
|
7213
|
+
bettingContract: contracts.core.address,
|
|
7214
|
+
minOdds: typeof cashoutOdds === 'string' ? (parseUnits(cashoutOdds, ODDS_DECIMALS)) : cashoutOdds,
|
|
7196
7215
|
},
|
|
7197
7216
|
],
|
|
7198
7217
|
expiresAt: BigInt(expiredAt),
|
|
@@ -7206,7 +7225,7 @@ const getWaveLevels = async ({ waveId, chainId } = { waveId: 'active', chainId:
|
|
|
7206
7225
|
CashoutState["Open"] = "OPEN";
|
|
7207
7226
|
})(CashoutState || (CashoutState = {}));
|
|
7208
7227
|
const createCashout = async (props) => {
|
|
7209
|
-
const { chainId, calculationId,
|
|
7228
|
+
const { chainId, calculationId, attention, signature } = props;
|
|
7210
7229
|
const { api, contracts } = chainsData[chainId];
|
|
7211
7230
|
if (!contracts.cashout?.address) {
|
|
7212
7231
|
throw new Error('provided chainId is not supported for cashout');
|
|
@@ -7215,7 +7234,7 @@ const createCashout = async (props) => {
|
|
|
7215
7234
|
calculationId,
|
|
7216
7235
|
signature: {
|
|
7217
7236
|
verifyingContract: contracts.cashout.address,
|
|
7218
|
-
bettingContract:
|
|
7237
|
+
bettingContract: contracts.core.address,
|
|
7219
7238
|
attention,
|
|
7220
7239
|
chainId,
|
|
7221
7240
|
ownerSignature: signature,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Hex
|
|
1
|
+
import { type Hex } from 'viem';
|
|
2
2
|
import { type ChainId } from '../../config';
|
|
3
3
|
export declare enum CashoutState {
|
|
4
4
|
Processing = "PROCESSING",
|
|
@@ -14,7 +14,6 @@ export type CreateCashoutResponse = {
|
|
|
14
14
|
type Props = {
|
|
15
15
|
chainId: ChainId;
|
|
16
16
|
calculationId: string;
|
|
17
|
-
betCoreAddress: Address | string;
|
|
18
17
|
attention: string;
|
|
19
18
|
signature: Hex;
|
|
20
19
|
};
|
|
@@ -7,7 +7,7 @@ export type GetCalculatedCashout = {
|
|
|
7
7
|
environment: Environment;
|
|
8
8
|
tokenId: string;
|
|
9
9
|
cashoutAmount: string;
|
|
10
|
-
|
|
10
|
+
cashoutOdds: string;
|
|
11
11
|
expiredAt: number;
|
|
12
12
|
approveExpiredAt: number;
|
|
13
13
|
isLive: boolean;
|
|
@@ -16,7 +16,6 @@ type Props = {
|
|
|
16
16
|
chainId: ChainId;
|
|
17
17
|
account: Address;
|
|
18
18
|
graphBetId: string;
|
|
19
|
-
isLive: boolean;
|
|
20
19
|
};
|
|
21
20
|
export declare const getCalculatedCashout: (props: Props) => Promise<GetCalculatedCashout>;
|
|
22
21
|
export {};
|
|
@@ -5,8 +5,7 @@ type Props = {
|
|
|
5
5
|
account: Address;
|
|
6
6
|
attention: string;
|
|
7
7
|
tokenId: string | bigint;
|
|
8
|
-
|
|
9
|
-
multiplier: string | bigint;
|
|
8
|
+
cashoutOdds: string | bigint;
|
|
10
9
|
expiredAt: number;
|
|
11
10
|
};
|
|
12
11
|
export declare const getCashoutTypedData: (props: Props) => SignTypedDataParameters<typeof CASHOUT_DATA_TYPES>;
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { type ChainId } from '../../config';
|
|
2
2
|
type GetPrecalculatedCashoutsResponse = {
|
|
3
|
-
|
|
3
|
+
margin: string;
|
|
4
|
+
marginMin: string;
|
|
5
|
+
availables: {
|
|
4
6
|
conditionId: string;
|
|
5
7
|
available: boolean;
|
|
6
8
|
outcomes: {
|
|
7
9
|
outcomeId: number;
|
|
8
|
-
|
|
10
|
+
price: string;
|
|
9
11
|
}[];
|
|
10
12
|
}[];
|
|
11
13
|
};
|
|
12
|
-
export type GetPrecalculatedCashouts = GetPrecalculatedCashoutsResponse
|
|
14
|
+
export type GetPrecalculatedCashouts = GetPrecalculatedCashoutsResponse | null;
|
|
13
15
|
type Props = {
|
|
14
16
|
chainId: ChainId;
|
|
15
17
|
conditionIds: string[];
|
|
@@ -6,4 +6,4 @@ export declare const getBetsGraphqlEndpoint: (chainId: ChainId) => string;
|
|
|
6
6
|
*/
|
|
7
7
|
export declare const getLegacyLiveGraphqlEndpoint: (chainId: ChainId) => "https://thegraph.azuro.org/subgraphs/name/azuro-protocol/azuro-api-live-data-feed-dev" | "https://thegraph.azuro.org/subgraphs/name/azuro-protocol/azuro-api-live-data-feed";
|
|
8
8
|
export declare const getSocketEndpoint: (chainId: ChainId) => "wss://dev-streams.onchainfeed.org/v1/streams" | "wss://streams.onchainfeed.org/v1/streams";
|
|
9
|
-
export declare const getApiEndpoint: (chainId: ChainId) => "https://dev-api.onchainfeed.org/api/v1/public" | "https://api.
|
|
9
|
+
export declare const getApiEndpoint: (chainId: ChainId) => "https://dev-api.onchainfeed.org/api/v1/public" | "https://api.onchainfeed.org/api/v1/public";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azuro-org/toolkit",
|
|
3
|
-
"version": "5.0.0
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"description": "Set of helpers to work with Azuro protocol",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -41,8 +41,8 @@
|
|
|
41
41
|
"peerDependencies": {
|
|
42
42
|
"@azuro-org/dictionaries": "^3.0.26",
|
|
43
43
|
"graphql-tag": "^2.12.6",
|
|
44
|
-
"@wagmi/core": "^2.
|
|
45
|
-
"viem": "^2.
|
|
44
|
+
"@wagmi/core": "^2.17.1",
|
|
45
|
+
"viem": "^2.29.0"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
48
|
"@babel/core": "^7.17.0",
|