@levrbet/shared 0.2.87 → 0.2.89
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/core/contracts/abis/LevrManager.d.ts +1008 -988
- package/dist/core/contracts/abis/LevrManager.js +1538 -499
- package/dist/core/contracts/abis/LevrManager.js.map +1 -1
- package/dist/core/contracts/abis/index.d.ts +1008 -988
- package/dist/core/contracts/addresses.d.ts +21 -21
- package/dist/core/contracts/addresses.js +19 -19
- package/dist/react/hooks/contracts/useContracts.d.ts +19 -19
- package/dist/server/config/redis.d.ts +28 -49
- package/dist/server/config/redis.js +57 -127
- package/dist/server/config/redis.js.map +1 -1
- package/dist/server/liquidation-engine/redis.cache.manager/prices.set.manager.d.ts +9 -9
- package/dist/server/liquidation-engine/redis.cache.manager/prices.set.manager.js.map +1 -1
- package/dist/server/liquidation-engine/redis.cache.manager/prices.set.manager.test.js +1 -1
- package/dist/server/liquidation-engine/redis.cache.manager/prices.set.manager.test.js.map +1 -1
- package/dist/server/oracle/config/game-periods/providers/optic-odds.periods.d.ts +4 -0
- package/dist/server/oracle/config/game-periods/providers/optic-odds.periods.js +5 -1
- package/dist/server/oracle/config/game-periods/providers/optic-odds.periods.js.map +1 -1
- package/dist/server/oracle/config/game-periods/sports.config.d.ts +1 -1
- package/dist/server/oracle/config/game-periods/sports.config.js +53 -4
- package/dist/server/oracle/config/game-periods/sports.config.js.map +1 -1
- package/dist/server/oracle/config/game-periods/types.d.ts +9 -1
- package/dist/server/oracle/config/game-periods/types.js +5 -0
- package/dist/server/oracle/config/game-periods/types.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/channels.d.ts +2 -2
- package/dist/server/oracle/redis-cache-manager/channels.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/game.cache.service.d.ts +27 -26
- package/dist/server/oracle/redis-cache-manager/game.cache.service.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/game.progress.d.ts +4 -4
- package/dist/server/oracle/redis-cache-manager/game.progress.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/leagues.cache.service.d.ts +3 -3
- package/dist/server/oracle/redis-cache-manager/leagues.cache.service.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/market.cache.service.d.ts +10 -10
- package/dist/server/oracle/redis-cache-manager/market.cache.service.js.map +1 -1
- package/dist/server/oracle/redis-cache-manager/market.query.engine.d.ts +17 -17
- package/dist/server/oracle/redis-cache-manager/market.query.engine.js.map +1 -1
- package/dist/server/utils/game_progress/caclulate.game.progress.d.ts +132 -4
- package/dist/server/utils/game_progress/caclulate.game.progress.js +195 -24
- package/dist/server/utils/game_progress/caclulate.game.progress.js.map +1 -1
- package/dist/server/utils/game_progress/game.utils.d.ts +10 -1
- package/dist/server/utils/game_progress/game.utils.js +95 -38
- package/dist/server/utils/game_progress/game.utils.js.map +1 -1
- package/dist/server/utils/game_progress/parser.js +6 -0
- package/dist/server/utils/game_progress/parser.js.map +1 -1
- package/package.json +1 -1
- package/prisma/schema.prisma +39 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market.cache.service.js","sourceRoot":"","sources":["../../../../src/server/oracle/redis-cache-manager/market.cache.service.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAuE;AAGvE,mEAAyC;AACzC,yDAAsF;AACtF,+DAQ8B;AAE9B;;;GAGG;AAEH;;;;;;;;;GASG;AACI,MAAM,kBAAkB,GAAG,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"market.cache.service.js","sourceRoot":"","sources":["../../../../src/server/oracle/redis-cache-manager/market.cache.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Market, MarketStatus, MarketType, Odds } from "@prisma/client";
|
|
2
|
-
import {
|
|
2
|
+
import type { RedisClient } from "../../config";
|
|
3
3
|
import { LevrChain, MarketWithRelations } from "../../../core";
|
|
4
4
|
/**
|
|
5
5
|
* Redis Query Engine using RediSearch
|
|
@@ -32,34 +32,34 @@ export interface SearchResult<T> {
|
|
|
32
32
|
* @param limit - Number of latest odds to return (from the end)
|
|
33
33
|
* @returns Array of Odds objects
|
|
34
34
|
*/
|
|
35
|
-
export declare const getOddsList: (redis:
|
|
35
|
+
export declare const getOddsList: (redis: RedisClient, gameUniqueId: string, marketType: MarketType) => Promise<Odds[]>;
|
|
36
36
|
/**
|
|
37
37
|
* Fallback market query engine for Redis instances without RediSearch support
|
|
38
38
|
* Uses simple hash operations instead of full-text search indexing
|
|
39
39
|
*/
|
|
40
|
-
export declare const searchMarketsFallback: (redis:
|
|
40
|
+
export declare const searchMarketsFallback: (redis: RedisClient, levrGameObjectId: string, marketType: MarketType) => Promise<Market | null>;
|
|
41
41
|
/**
|
|
42
42
|
* Add a new market to cache with RediSearch indexing
|
|
43
43
|
* @param redis - Redis client instance
|
|
44
44
|
* @param market - Array of Market objects to cache
|
|
45
45
|
*/
|
|
46
|
-
export declare const updateMarketCache: (redis:
|
|
46
|
+
export declare const updateMarketCache: (redis: RedisClient, market: Market[]) => Promise<void>;
|
|
47
47
|
/**
|
|
48
48
|
* Create market index with proper schema
|
|
49
49
|
*/
|
|
50
|
-
export declare const createMarketIndex: (redis:
|
|
50
|
+
export declare const createMarketIndex: (redis: RedisClient) => Promise<void>;
|
|
51
51
|
/**
|
|
52
52
|
* Creates a RediSearch index for odds lists by market identifiers
|
|
53
53
|
* @param redis - Redis client instance
|
|
54
54
|
*/
|
|
55
|
-
export declare const createOddsIndex: (redis:
|
|
55
|
+
export declare const createOddsIndex: (redis: RedisClient) => Promise<void>;
|
|
56
56
|
/**
|
|
57
57
|
* Search markets using RediSearch query engine
|
|
58
58
|
* @param redis - Redis client instance
|
|
59
59
|
* @param params - Search parameters
|
|
60
60
|
* @returns Array of Market objects
|
|
61
61
|
*/
|
|
62
|
-
export declare const searchMarkets: (redis:
|
|
62
|
+
export declare const searchMarkets: (redis: RedisClient, params: SearchQuery) => Promise<Market[]>;
|
|
63
63
|
/**
|
|
64
64
|
* Get market by game unique ID and market type directly from hash
|
|
65
65
|
* @param redis - Redis client instance
|
|
@@ -67,7 +67,7 @@ export declare const searchMarkets: (redis: Redis, params: SearchQuery) => Promi
|
|
|
67
67
|
* @param marketType - Market type
|
|
68
68
|
* @returns Market object or null if not found
|
|
69
69
|
*/
|
|
70
|
-
export declare const getMarketByGameAndType: (redis:
|
|
70
|
+
export declare const getMarketByGameAndType: (redis: RedisClient, gameUniqueId: string, marketType: MarketType) => Promise<Market | null>;
|
|
71
71
|
/**
|
|
72
72
|
* Search markets with their associated odds - FALLBACK version
|
|
73
73
|
* Uses simple hash operations when RediSearch is unavailable
|
|
@@ -76,14 +76,14 @@ export declare const getMarketByGameAndType: (redis: Redis, gameUniqueId: string
|
|
|
76
76
|
* @param marketType - Market type
|
|
77
77
|
* @returns Markets with their odds
|
|
78
78
|
*/
|
|
79
|
-
export declare const searchMarketsWithOddsFallback: (redis:
|
|
79
|
+
export declare const searchMarketsWithOddsFallback: (redis: RedisClient, levrGameObjectId: string, marketType: MarketType) => Promise<MarketWithRelations | null>;
|
|
80
80
|
/**
|
|
81
81
|
* Search markets with their associated odds
|
|
82
82
|
* @param redis - Redis client instance
|
|
83
83
|
* @param query - Search query parameters
|
|
84
84
|
* @returns Search results with markets and their odds
|
|
85
85
|
*/
|
|
86
|
-
export declare const searchMarketsWithOdds: (redis:
|
|
86
|
+
export declare const searchMarketsWithOdds: (redis: RedisClient, query: any) => Promise<SearchResult<MarketWithRelations>>;
|
|
87
87
|
/**
|
|
88
88
|
* Search multiple markets with their associated odds - FALLBACK version
|
|
89
89
|
* Uses simple hash operations when RediSearch is unavailable
|
|
@@ -91,7 +91,7 @@ export declare const searchMarketsWithOdds: (redis: Redis, query: any) => Promis
|
|
|
91
91
|
* @param queries - Array of search query parameters with gameUniqueIdentifier and marketType
|
|
92
92
|
* @returns Combined search results with markets and their odds
|
|
93
93
|
*/
|
|
94
|
-
export declare const searchMultipleMarketsWithOddsFallback: (redis:
|
|
94
|
+
export declare const searchMultipleMarketsWithOddsFallback: (redis: RedisClient, queries: Array<{
|
|
95
95
|
gameUniqueIdentifier: string;
|
|
96
96
|
marketType: MarketType;
|
|
97
97
|
}>) => Promise<{
|
|
@@ -105,7 +105,7 @@ export declare const searchMultipleMarketsWithOddsFallback: (redis: Redis, queri
|
|
|
105
105
|
* @param queries - Array of search query parameters
|
|
106
106
|
* @returns Combined search results with markets and their odds
|
|
107
107
|
*/
|
|
108
|
-
export declare const searchMultipleMarketsWithOdds: (redis:
|
|
108
|
+
export declare const searchMultipleMarketsWithOdds: (redis: RedisClient, queries: SearchQuery[]) => Promise<{
|
|
109
109
|
total: number;
|
|
110
110
|
results: Record<string, MarketWithRelations[]>;
|
|
111
111
|
duration: number;
|
|
@@ -117,7 +117,7 @@ export declare const searchMultipleMarketsWithOdds: (redis: Redis, queries: Sear
|
|
|
117
117
|
* @param marketType - Market type
|
|
118
118
|
* @param odds - Array of Odds objects to cache
|
|
119
119
|
*/
|
|
120
|
-
export declare const addOddsToOddsCache: (redis:
|
|
120
|
+
export declare const addOddsToOddsCache: (redis: RedisClient, gameUniqueId: string, marketType: MarketType, odds: Odds[]) => Promise<void>;
|
|
121
121
|
/**
|
|
122
122
|
* Search odds lists by market identifiers using RediSearch
|
|
123
123
|
* @param redis - Redis client instance
|
|
@@ -126,7 +126,7 @@ export declare const addOddsToOddsCache: (redis: Redis, gameUniqueId: string, ma
|
|
|
126
126
|
* @param levrGameObjectId - Levr game object ID to search
|
|
127
127
|
* @returns Array of odds lists matching the query
|
|
128
128
|
*/
|
|
129
|
-
export declare const searchOddsLists: (redis:
|
|
129
|
+
export declare const searchOddsLists: (redis: RedisClient, gameMarketId?: string, marketType?: MarketType, levrGameObjectId?: string) => Promise<Odds[][]>;
|
|
130
130
|
/**
|
|
131
131
|
* Get the latest odds for a specific game and market type
|
|
132
132
|
* @param redis - Redis client instance
|
|
@@ -134,7 +134,7 @@ export declare const searchOddsLists: (redis: Redis, gameMarketId?: string, mark
|
|
|
134
134
|
* @param marketType - Market type
|
|
135
135
|
* @returns Latest Odds object or null if not found
|
|
136
136
|
*/
|
|
137
|
-
export declare const getLatestOdds: (redis:
|
|
137
|
+
export declare const getLatestOdds: (redis: RedisClient, gameUniqueId: string, marketType: MarketType) => Promise<Odds | null>;
|
|
138
138
|
/**
|
|
139
139
|
* Get the latest odds with its related market
|
|
140
140
|
* @param redis - Redis client instance
|
|
@@ -142,11 +142,11 @@ export declare const getLatestOdds: (redis: Redis, gameUniqueId: string, marketT
|
|
|
142
142
|
* @param marketType - Market type
|
|
143
143
|
* @returns Odds with related market or null if not found
|
|
144
144
|
*/
|
|
145
|
-
export declare const getLatestOddsWithMarket: (redis:
|
|
145
|
+
export declare const getLatestOddsWithMarket: (redis: RedisClient, gameUniqueId: string, marketType: MarketType) => Promise<(Odds & {
|
|
146
146
|
market?: Market;
|
|
147
147
|
}) | null>;
|
|
148
148
|
/**
|
|
149
149
|
* Drop all search indices
|
|
150
150
|
* @param redis - Redis client instance
|
|
151
151
|
*/
|
|
152
|
-
export declare const dropAllIndices: (redis:
|
|
152
|
+
export declare const dropAllIndices: (redis: RedisClient) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market.query.engine.js","sourceRoot":"","sources":["../../../../src/server/oracle/redis-cache-manager/market.query.engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"market.query.engine.js","sourceRoot":"","sources":["../../../../src/server/oracle/redis-cache-manager/market.query.engine.ts"],"names":[],"mappings":";;;;;;AAGA,mEAAyC;AACzC,yDAK2B;AA4B3B;;;;;;;GAOG;AACI,MAAM,WAAW,GAAG,KAAK,EAAE,KAAkB,EAAE,YAAoB,EAAE,UAAsB,EAAmB,EAAE;IACnH,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,4CAAyB,CAAA;QACrC,MAAM,KAAK,GAAG,IAAA,qCAAkB,EAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAE1D,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,EAAE,CAAA;QACb,CAAC;QAED,MAAM,QAAQ,GAAW,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAE1C,iCAAiC;QACjC,OAAO,QAAQ,CAAA;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;QAC9C,OAAO,EAAE,CAAA;IACb,CAAC;AACL,CAAC,CAAA;AAlBY,QAAA,WAAW,eAkBvB;AAED;;;GAGG;AACI,MAAM,qBAAqB,GAAG,KAAK,EACtC,KAAkB,EAClB,gBAAwB,EACxB,UAAsB,EACA,EAAE;IACxB,IAAI,CAAC;QACD,2CAA2C;QAC3C,MAAM,GAAG,GAAG,IAAA,yDAAsC,EAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;QAEhF,2BAA2B;QAC3B,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;QAEvD,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAW,CAAA;YACrD,OAAO,MAAM,CAAA;QACjB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,iBAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,CAAC,CAAC,CAAA;QACjE,CAAC;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAA;QACtD,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AAxBY,QAAA,qBAAqB,yBAwBjC;AAED;;;;GAIG;AACI,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAkB,EAAE,MAAgB,EAAiB,EAAE;IAC3F,IAAI,CAAC;QACD,oCAAoC;QACpC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;QAEjC,kCAAkC;QAClC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,IAAA,yDAAsC,EAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAA;YAEpF,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE;gBACf,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAC7B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE;gBAC3B,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;gBACxC,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG;gBAC/D,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;gBAClC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;gBAClC,mBAAmB,EAAE,CAAC,CAAC,mBAAmB,CAAC,QAAQ,EAAE;gBACrD,UAAU,EAAE,CAAC,CAAC,UAAU;gBACxB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;gBACtB,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;gBACpC,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;gBAC3C,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;gBAC3C,iBAAiB,EAAE,OAAO,CAAC,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;gBAC1G,wBAAwB,EACpB,OAAO,CAAC,CAAC,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC;gBAChH,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC1F,kBAAkB,EAAE,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;gBAC9G,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;aACjC,CAAC,CAAA;QACN,CAAC;QAED,iEAAiE;QAEjE,wCAAwC;QACxC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAErB,iBAAM,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,MAAM,mBAAmB,CAAC,CAAA;IAC5D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;QAClD,MAAM,KAAK,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AA9CY,QAAA,iBAAiB,qBA8C7B;AAED;;GAEG;AACI,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAkB,EAAiB,EAAE;IACzE,IAAI,CAAC;QACD,gCAAgC;QAChC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,oCAAiB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QAEpF,IAAI,WAAW,EAAE,CAAC;YACd,iBAAM,CAAC,IAAI,CAAC,SAAS,oCAAiB,iBAAiB,CAAC,CAAA;YACxD,OAAM;QACV,CAAC;QAED,+DAA+D;QAC/D,MAAM,KAAK,CAAC,IAAI,CACZ,WAAW,EACX,oCAAiB,EACjB,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,GAAG,EACH,oBAAoB,EACpB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,cAAc,EACd,MAAM,EACN,oBAAoB,EACpB,MAAM,EACN,cAAc,EACd,MAAM,EACN,QAAQ,EACR,MAAM,EACN,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,qBAAqB,EACrB,SAAS,EACT,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,KAAK,EACL,kBAAkB,EAClB,MAAM,EACN,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,CACZ,CAAA;QAED,iBAAM,CAAC,IAAI,CAAC,kBAAkB,oCAAiB,EAAE,CAAC,CAAA;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAA;QAClD,MAAM,KAAK,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AA7DY,QAAA,iBAAiB,qBA6D7B;AAED;;;GAGG;AACI,MAAM,eAAe,GAAG,KAAK,EAAE,KAAkB,EAAiB,EAAE;IACvE,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,eAAe,CAAA;QACjC,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QAE5E,IAAI,WAAW,EAAE,CAAC;YACd,iBAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;YAC7C,OAAM;QACV,CAAC;QAED,MAAM,KAAK,CAAC,IAAI,CACZ,WAAW,EACX,SAAS,EACT,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,GAAG,EACH,sCAAsC,EACtC,QAAQ,EACR,cAAc,EACd,MAAM,EACN,YAAY,EACZ,KAAK,EACL,kBAAkB,EAClB,MAAM,CACT,CAAA;QAED,iBAAM,CAAC,IAAI,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAA;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;IACzD,CAAC;AACL,CAAC,CAAA;AA/BY,QAAA,eAAe,mBA+B3B;AAED;;;;;GAKG;AACI,MAAM,aAAa,GAAG,KAAK,EAAE,KAAkB,EAAE,MAAmB,EAAqB,EAAE;IAC9F,IAAI,CAAC;QACD,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,MAAM,CAAA;QAE3G,MAAM,OAAO,GAAa,EAAE,CAAA;QAE5B,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,gBAAgB,UAAU,GAAG,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,YAAY,MAAM,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,YAAY,MAAM,IAAI,MAAM,GAAG,CAAC,CAAA;QACjD,CAAC;QACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,aAAa,OAAO,IAAI,OAAO,GAAG,CAAC,CAAA;QACpD,CAAC;QACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,eAAe,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAA;QACzD,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,qBAAqB,gBAAgB,EAAE,CAAC,CAAA;QACzD,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAEtD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,oCAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;QAE9F,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChD,OAAO,EAAE,CAAA;QACb,CAAC;QAED,MAAM,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,MAAM,CAAA;QAC5B,MAAM,OAAO,GAAa,EAAE,CAAA;QAE5B,kEAAkE;QAClE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAEhC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;gBAAE,SAAQ;YAEzC,iCAAiC;YACjC,MAAM,GAAG,GAAQ,EAAE,CAAA;YACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC5C,CAAC;YAED,sCAAsC;YACtC,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBAClB,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;oBAC1C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACxB,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,iBAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAA;gBACjD,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAA;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;QAC9C,OAAO,EAAE,CAAA;IACb,CAAC;AACL,CAAC,CAAA;AAhEY,QAAA,aAAa,iBAgEzB;AAED;;;;;;GAMG;AACI,MAAM,sBAAsB,GAAG,KAAK,EACvC,KAAkB,EAClB,YAAoB,EACpB,UAAsB,EACA,EAAE;IACxB,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,IAAA,yDAAsC,EAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAC5E,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;QAEvD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,IAAI,CAAA;QACf,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAW,CAAA;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAA;QACxD,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AAlBY,QAAA,sBAAsB,0BAkBlC;AAED;;;;;;;GAOG;AACI,MAAM,6BAA6B,GAAG,KAAK,EAC9C,KAAkB,EAClB,gBAAwB,EACxB,UAAsB,EACa,EAAE;IACrC,IAAI,CAAC;QACD,6BAA6B;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAA,6BAAqB,EAAC,KAAK,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAA;QAC/E,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,IAAI,CAAA;QACf,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAW,EAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;QAEjF,MAAM,eAAe,GAAwB;YACzC,GAAG,MAAM;YACT,IAAI;SACP,CAAA;QAED,OAAO,eAAe,CAAA;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAA;QACjE,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AAvBY,QAAA,6BAA6B,iCAuBzC;AAED;;;;;GAKG;AACI,MAAM,qBAAqB,GAAG,KAAK,EAAE,KAAkB,EAAE,KAAU,EAA8C,EAAE;IACtH,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAE5B,0BAA0B;QAC1B,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAa,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAEjD,mCAAmC;QACnC,MAAM,eAAe,GAA0B,MAAM,OAAO,CAAC,GAAG,CAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACzB,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAW,EAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;YACjF,OAAO;gBACH,GAAG,MAAM;gBACT,IAAI;aACgB,CAAA;QAC5B,CAAC,CAAC,CACL,CAAA;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;QAEvC,OAAO;YACH,KAAK,EAAE,eAAe,CAAC,MAAM;YAC7B,OAAO,EAAE,eAAe;YACxB,QAAQ;SACX,CAAA;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAA;QACxD,qDAAqD;QACrD,OAAO;YACH,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,CAAC;SACd,CAAA;IACL,CAAC;AACL,CAAC,CAAA;AAlCY,QAAA,qBAAqB,yBAkCjC;AAED;;;;;;GAMG;AACI,MAAM,qCAAqC,GAAG,KAAK,EACtD,KAAkB,EAClB,OAAwE,EACoB,EAAE;IAC9F,gCAAgC;IAChC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,yDAAsC,EAAC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;IAEnH,2CAA2C;IAE3C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;IACjC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;IACrC,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IAEvC,MAAM,OAAO,GAA0C,EAAE,CAAA;IACzD,IAAI,UAAU,GAAG,CAAC,CAAA;IAClB,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO;YACH,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,CAAC;SACd,CAAA;IACL,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACrF,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;QAC7B,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YAAE,SAAQ;QACnD,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAA;QACpC,IAAI,KAAK,EAAE,CAAC;YACR,iBAAM,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAA;YACxE,SAAQ;QACZ,CAAC;QACD,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC/C,IAAI,CAAC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAW,CAAA;gBAC/C,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAW,EAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;gBACjF,MAAM,mBAAmB,GAAwB;oBAC7C,GAAG,MAAM;oBACT,IAAI;iBACP,CAAA;gBACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACpC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAA;gBACzC,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAA;gBAC3D,UAAU,EAAE,CAAA;YAChB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,iBAAM,CAAC,IAAI,CAAC,oDAAoD,EAAE,CAAC,CAAC,CAAA;YACxE,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO;QACH,KAAK,EAAE,UAAU;QACjB,OAAO;QACP,QAAQ,EAAE,CAAC;KACd,CAAA;AACL,CAAC,CAAA;AAzDY,QAAA,qCAAqC,yCAyDjD;AAED;;;;;GAKG;AACI,MAAM,6BAA6B,GAAG,KAAK,EAC9C,KAAkB,EAClB,OAAsB,EACsE,EAAE;IAC9F,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAC5B,MAAM,UAAU,GAA0C,EAAE,CAAA;QAC5D,IAAI,UAAU,GAAG,CAAC,CAAA;QAElB,yCAAyC;QACzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,MAAM,IAAA,qBAAa,EAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACjD,UAAU,IAAI,OAAO,CAAC,MAAM,CAAA;YAE5B,mCAAmC;YACnC,MAAM,eAAe,GAA0B,MAAM,OAAO,CAAC,GAAG,CAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACzB,MAAM,IAAI,GAAG,MAAM,IAAA,mBAAW,EAAC,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;gBACjF,OAAO;oBACH,GAAG,MAAM;oBACT,IAAI;iBACgB,CAAA;YAC5B,CAAC,CAAC,CACL,CAAA;YAED,oCAAoC;YACpC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC/B,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;oBAC1B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBACvC,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAA;oBAC5C,CAAC;oBACD,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;gBACrD,CAAC;YACL,CAAC,CAAC,CAAA;QACN,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;QAEvC,OAAO;YACH,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,UAAU;YACnB,QAAQ;SACX,CAAA;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAA;QACjE,OAAO;YACH,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,CAAC;SACd,CAAA;IACL,CAAC;AACL,CAAC,CAAA;AAnDY,QAAA,6BAA6B,iCAmDzC;AAED;;;;;;GAMG;AACI,MAAM,kBAAkB,GAAG,KAAK,EACnC,KAAkB,EAClB,YAAoB,EACpB,UAAsB,EACtB,IAAY,EACC,EAAE;IACf,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,4CAAyB,CAAA;QACrC,MAAM,KAAK,GAAG,IAAA,qCAAkB,EAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAE1D,2BAA2B;QAC3B,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAClD,MAAM,YAAY,GAAW,aAAa,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAY,CAAC,CAAC,CAAC,EAAE,CAAA;QAEvF,mCAAmC;QACnC,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,IAAI,CAAC,CAAA;QAE1C,2DAA2D;QAC3D,mDAAmD;QAEnD,yCAAyC;QACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;QACjC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;QAClD,mDAAmD;QACnD,+CAA+C;QAC/C,uDAAuD;QACvD,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAErB,qDAAqD;QACrD,+BAA+B;QAE/B,iBAAM,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,mBAAmB,GAAG,IAAI,KAAK,EAAE,CAAC,CAAA;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAA;QACjD,MAAM,KAAK,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AApCY,QAAA,kBAAkB,sBAoC9B;AAED;;;;;;;GAOG;AACI,MAAM,eAAe,GAAG,KAAK,EAChC,KAAkB,EAClB,YAAqB,EACrB,UAAuB,EACvB,gBAAyB,EACR,EAAE;IACnB,IAAI,CAAC;QACD,MAAM,SAAS,GAAG,eAAe,CAAA;QACjC,MAAM,UAAU,GAAa,EAAE,CAAA;QAE/B,IAAI,YAAY,EAAE,CAAC;YACf,UAAU,CAAC,IAAI,CAAC,iBAAiB,YAAY,EAAE,CAAC,CAAA;QACpD,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACb,UAAU,CAAC,IAAI,CAAC,gBAAgB,UAAU,GAAG,CAAC,CAAA;QAClD,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACnB,UAAU,CAAC,IAAI,CAAC,qBAAqB,gBAAgB,EAAE,CAAC,CAAA;QAC5D,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAErE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;QAEpF,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,MAAe,CAAA;QACpC,MAAM,QAAQ,GAAa,EAAE,CAAA;QAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACxB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,GAAG,GAAQ,EAAE,CAAA;gBACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBAC5B,CAAC;gBACD,8BAA8B;gBAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;gBAC3D,IAAI,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;oBACrC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBACzB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,QAAQ,CAAA;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAA;QACjD,OAAO,EAAE,CAAA;IACb,CAAC;AACL,CAAC,CAAA;AAlDY,QAAA,eAAe,mBAkD3B;AAED;;;;;;GAMG;AACI,MAAM,aAAa,GAAG,KAAK,EAAE,KAAkB,EAAE,YAAoB,EAAE,UAAsB,EAAwB,EAAE;IAC1H,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,4CAAyB,CAAA;QACrC,MAAM,KAAK,GAAG,IAAA,qCAAkB,EAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAE1D,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAC1C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,IAAI,CAAA;QACf,CAAC;QAED,MAAM,QAAQ,GAAW,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAA;QACf,CAAC;QAED,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAC9C,OAAO,QAAQ,IAAI,IAAI,CAAA;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;QAChD,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AAtBY,QAAA,aAAa,iBAsBzB;AAED;;;;;;GAMG;AACI,MAAM,uBAAuB,GAAG,KAAK,EACxC,KAAkB,EAClB,YAAoB,EACpB,UAAsB,EACsB,EAAE;IAC9C,IAAI,CAAC;QACD,sBAAsB;QACtB,MAAM,UAAU,GAAG,MAAM,IAAA,qBAAa,EAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAC,CAAA;QACvE,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,IAAI,CAAA;QACf,CAAC;QAED,yBAAyB;QACzB,MAAM,GAAG,GAAG,IAAA,yDAAsC,EAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAC5E,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;QAEvD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,UAAU,CAAA;QACrB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAW,CAAA;QAE/C,OAAO;YACH,GAAG,UAAU;YACb,MAAM;SACT,CAAA;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC,CAAA;AA9BY,QAAA,uBAAuB,2BA8BnC;AAED;;;GAGG;AACI,MAAM,cAAc,GAAG,KAAK,EAAE,KAAkB,EAAiB,EAAE;IACtE,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;QAC9B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC7C,iBAAM,CAAC,IAAI,CAAC,SAAS,GAAG,iBAAiB,CAAC,CAAA;YAC9C,CAAC,CAAC,CAAA;QACN,CAAC;QACD,iBAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,iBAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAA;IACjD,CAAC;AACL,CAAC,CAAA;AAZY,QAAA,cAAc,kBAY1B"}
|
|
@@ -1,6 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Game progress calculation utilities for various sports.
|
|
3
|
+
* This module provides functions to calculate game progress in basis points (BPS)
|
|
4
|
+
* for different sports including Soccer, Basketball, Football, and Baseball.
|
|
5
|
+
* It supports multiple odds providers (LSports, OpticOdds) with provider-specific
|
|
6
|
+
* period mapping logic.
|
|
7
|
+
* @module game_progress/calculate.game.progress
|
|
8
|
+
*/
|
|
1
9
|
import { SportGroup } from "@prisma/client";
|
|
2
10
|
import { OddsServices } from "../../../core";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Calculates the game progress in basis points (BPS) for a given sport.
|
|
13
|
+
* This is the core calculation function used by all sport-specific progress functions.
|
|
14
|
+
*
|
|
15
|
+
* @param currentPeriod - The current period/quarter/half number from the provider
|
|
16
|
+
* @param gameClock - The game clock string (e.g., "12:30", "45:00")
|
|
17
|
+
* @param sportGroup - The sport group enum value (Soccer, Basketball, Football, Baseball)
|
|
18
|
+
* @param provider - The odds service provider (LSports, OpticOdds)
|
|
19
|
+
* @param isTopOfInning - For baseball only: whether it's the top of the inning
|
|
20
|
+
* @param leagueSelector - Optional league identifier for league-specific configurations (e.g., NCAA)
|
|
21
|
+
* @returns The game progress in basis points (0-10000) or null if invalid input
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* // Calculate NBA game progress at 5:30 remaining in Q2
|
|
25
|
+
* calculateGameProgress(2, "05:30", SportGroup.Basketball, OddsServices.LSPORTS)
|
|
26
|
+
* // Returns approximately 3125 BPS (31.25% through the game)
|
|
27
|
+
*/
|
|
28
|
+
export declare const calculateGameProgress: (currentPeriod: number, gameClock: string, sportGroup: SportGroup, provider: OddsServices, isTopOfInning?: boolean, leagueSelector?: string) => number | null;
|
|
29
|
+
/**
|
|
30
|
+
* Calculates game progress for Soccer matches in basis points (BPS).
|
|
31
|
+
* Soccer uses 2 x 45 minute halves with a count-up clock.
|
|
32
|
+
*
|
|
33
|
+
* @param currentPeriod - The current half (LSports: 10=1st half, 20=2nd half; OpticOdds: 1 or 2)
|
|
34
|
+
* @param gameClock - The elapsed time in "MM:SS" format (e.g., "32:15")
|
|
35
|
+
* @param provider - The odds service provider
|
|
36
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* // First half at 30 minutes
|
|
40
|
+
* calculateSoccerProgress(10, "30:00", SportGroup.Soccer, OddsServices.LSPORTS)
|
|
41
|
+
* // Returns ~3333 BPS (33.33% through the game)
|
|
42
|
+
*/
|
|
43
|
+
export declare const calculateSoccerProgress: (currentPeriod: number, gameClock: string, provider: OddsServices) => number | null;
|
|
44
|
+
/**
|
|
45
|
+
* Calculates game progress for Basketball (NBA) matches in basis points (BPS).
|
|
46
|
+
* NBA uses 4 x 12 minute quarters with a countdown clock.
|
|
47
|
+
*
|
|
48
|
+
* @param currentPeriod - The current quarter (1-4)
|
|
49
|
+
* @param gameClock - The time remaining in "MM:SS" format (e.g., "08:45")
|
|
50
|
+
* @param provider - The odds service provider
|
|
51
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* // Third quarter with 6 minutes remaining
|
|
55
|
+
* calculateBasketballProgress(3, "06:00", SportGroup.Basketball, OddsServices.LSPORTS)
|
|
56
|
+
* // Returns ~6250 BPS (62.5% through the game)
|
|
57
|
+
*/
|
|
58
|
+
export declare const calculateBasketballProgress: (currentPeriod: number, gameClock: string, provider: OddsServices) => number | null;
|
|
59
|
+
/**
|
|
60
|
+
* Calculates game progress for American Football (NFL) matches in basis points (BPS).
|
|
61
|
+
* NFL uses 4 x 15 minute quarters with a countdown clock.
|
|
62
|
+
*
|
|
63
|
+
* @param currentPeriod - The current quarter (1-4)
|
|
64
|
+
* @param gameClock - The time remaining in "MM:SS" format (e.g., "12:30")
|
|
65
|
+
* @param provider - The odds service provider
|
|
66
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* // Second quarter with 8 minutes remaining
|
|
70
|
+
* calculateFootballProgress(2, "08:00", SportGroup.Football, OddsServices.LSPORTS)
|
|
71
|
+
* // Returns ~3667 BPS (36.67% through the game)
|
|
72
|
+
*/
|
|
73
|
+
export declare const calculateFootballProgress: (currentPeriod: number, gameClock: string, provider: OddsServices) => number | null;
|
|
74
|
+
/**
|
|
75
|
+
* Calculates game progress for Baseball (MLB) matches in basis points (BPS).
|
|
76
|
+
* Baseball uses 9 innings, each with a top and bottom half.
|
|
77
|
+
* Progress is calculated based on completed half-innings.
|
|
78
|
+
*
|
|
79
|
+
* @param currentPeriod - The current inning (1-9)
|
|
80
|
+
* @param isTopOfInning - True if it's the top of the inning (away team batting)
|
|
81
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* // Top of the 5th inning
|
|
85
|
+
* calculateBaseballProgress(5, true)
|
|
86
|
+
* // Returns ~4444 BPS (44.44% through the game)
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* // Bottom of the 7th inning
|
|
90
|
+
* calculateBaseballProgress(7, false)
|
|
91
|
+
* // Returns ~7778 BPS (77.78% through the game)
|
|
92
|
+
*/
|
|
93
|
+
export declare const calculateBaseballProgress: (currentPeriod: number, isTopOfInning: boolean) => number | null;
|
|
94
|
+
/**
|
|
95
|
+
* Calculates game progress for NCAA Basketball (NCAAB) matches in basis points (BPS).
|
|
96
|
+
* NCAAB uses 2 x 20 minute halves with a countdown clock (different from NBA's 4 quarters).
|
|
97
|
+
*
|
|
98
|
+
* @param currentPeriod - The current half (LSports: 10=1st half, 20=2nd half; OpticOdds: 1 or 2)
|
|
99
|
+
* @param gameClock - The time remaining
|
|
100
|
+
* @param provider - The odds service provider
|
|
101
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
102
|
+
*
|
|
103
|
+
* @remarks
|
|
104
|
+
* - LSports uses period codes 10 and 20 for 1st and 2nd halves respectively
|
|
105
|
+
* - OpticOdds uses standard 1 and 2 for halves
|
|
106
|
+
* - Total game duration: 40 minutes (2 x 20 min halves)
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* // First half with 10 minutes remaining (LSports)
|
|
110
|
+
* calculateNCAABProgress(10, "10:00", OddsServices.LSPORTS)
|
|
111
|
+
* // Returns ~2500 BPS (25% through the game)
|
|
112
|
+
*/
|
|
113
|
+
export declare const calculateNCAABProgress: (currentPeriod: number, gameClock: string, provider: OddsServices) => number | null;
|
|
114
|
+
/**
|
|
115
|
+
* Calculates game progress for NCAA Football (NCAAF) matches in basis points (BPS).
|
|
116
|
+
* NCAAF uses 2 x 30 minute halves (equivalent to 4 x 15 min quarters) with a countdown clock.
|
|
117
|
+
*
|
|
118
|
+
* @param currentPeriod - The current half (LSports: 10=1st half, 20=2nd half; OpticOdds: 1 or 2)
|
|
119
|
+
* @param gameClock - The time remaining in "MM:SS" format (e.g., "25:00")
|
|
120
|
+
* @param provider - The odds service provider
|
|
121
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
122
|
+
*
|
|
123
|
+
* @remarks
|
|
124
|
+
* - LSports uses period codes 10 and 20 for 1st and 2nd halves respectively
|
|
125
|
+
* - OpticOdds uses standard 1 and 2 for halves
|
|
126
|
+
* - Total game duration: 60 minutes (2 x 30 min halves)
|
|
127
|
+
* - Quarters are grouped into halves for period tracking
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* // First half with 20 minutes remaining (LSports)
|
|
131
|
+
* calculateNCAAFProgress(10, "20:00", OddsServices.LSPORTS)
|
|
132
|
+
* // Returns ~1667 BPS (16.67% through the game)
|
|
133
|
+
*/
|
|
134
|
+
export declare const calculateNCAAFProgress: (currentPeriod: number, gameClock: string, provider: OddsServices) => number | null;
|
|
@@ -1,11 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview Game progress calculation utilities for various sports.
|
|
4
|
+
* This module provides functions to calculate game progress in basis points (BPS)
|
|
5
|
+
* for different sports including Soccer, Basketball, Football, and Baseball.
|
|
6
|
+
* It supports multiple odds providers (LSports, OpticOdds) with provider-specific
|
|
7
|
+
* period mapping logic.
|
|
8
|
+
* @module game_progress/calculate.game.progress
|
|
9
|
+
*/
|
|
2
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.calculateBaseballProgress = exports.calculateFootballProgress = exports.calculateBasketballProgress = exports.calculateSoccerProgress = void 0;
|
|
11
|
+
exports.calculateNCAAFProgress = exports.calculateNCAABProgress = exports.calculateBaseballProgress = exports.calculateFootballProgress = exports.calculateBasketballProgress = exports.calculateSoccerProgress = exports.calculateGameProgress = void 0;
|
|
4
12
|
const client_1 = require("@prisma/client");
|
|
13
|
+
const core_1 = require("../../../core");
|
|
14
|
+
const oracle_1 = require("../../oracle");
|
|
5
15
|
const game_utils_1 = require("../game_progress/game.utils");
|
|
6
16
|
const parser_1 = require("./parser");
|
|
7
|
-
|
|
8
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Provider and sport-specific period mappers.
|
|
19
|
+
* Maps raw period values from odds providers to normalized period numbers.
|
|
20
|
+
*
|
|
21
|
+
* @remarks
|
|
22
|
+
* - LSports Soccer uses 10 for 1st half, 20 for 2nd half
|
|
23
|
+
* - Other sports typically use sequential period numbers (1, 2, 3, etc.)
|
|
24
|
+
*/
|
|
9
25
|
const PERIOD_MAPPERS = {
|
|
10
26
|
[core_1.OddsServices.LSPORTS]: {
|
|
11
27
|
[client_1.SportGroup.Soccer]: (currentPeriod) => {
|
|
@@ -54,43 +70,198 @@ const PERIOD_MAPPERS = {
|
|
|
54
70
|
},
|
|
55
71
|
},
|
|
56
72
|
};
|
|
57
|
-
|
|
73
|
+
/**
|
|
74
|
+
* Period mappers specifically for NCAA leagues.
|
|
75
|
+
* NCAA sports in LSports use 10/20 notation for halves instead of 1/2.
|
|
76
|
+
*
|
|
77
|
+
* @remarks
|
|
78
|
+
* - LSports: period 10 = 1st half, period 20 = 2nd half
|
|
79
|
+
* - OpticOdds: uses standard sequential period numbering
|
|
80
|
+
*/
|
|
81
|
+
const NCAA_PERIOD_MAPPERS = {
|
|
82
|
+
[core_1.OddsServices.LSPORTS]: (currentPeriod) => {
|
|
83
|
+
if (currentPeriod === 10)
|
|
84
|
+
return 1;
|
|
85
|
+
if (currentPeriod === 20)
|
|
86
|
+
return 2;
|
|
87
|
+
return null;
|
|
88
|
+
},
|
|
89
|
+
[core_1.OddsServices.OPTIC_ODDS]: (currentPeriod, totalPeriods) => {
|
|
90
|
+
if (currentPeriod >= 1 && currentPeriod <= totalPeriods)
|
|
91
|
+
return currentPeriod;
|
|
92
|
+
return null;
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Calculates the game progress in basis points (BPS) for a given sport.
|
|
97
|
+
* This is the core calculation function used by all sport-specific progress functions.
|
|
98
|
+
*
|
|
99
|
+
* @param currentPeriod - The current period/quarter/half number from the provider
|
|
100
|
+
* @param gameClock - The game clock string (e.g., "12:30", "45:00")
|
|
101
|
+
* @param sportGroup - The sport group enum value (Soccer, Basketball, Football, Baseball)
|
|
102
|
+
* @param provider - The odds service provider (LSports, OpticOdds)
|
|
103
|
+
* @param isTopOfInning - For baseball only: whether it's the top of the inning
|
|
104
|
+
* @param leagueSelector - Optional league identifier for league-specific configurations (e.g., NCAA)
|
|
105
|
+
* @returns The game progress in basis points (0-10000) or null if invalid input
|
|
106
|
+
*
|
|
107
|
+
* @example
|
|
108
|
+
* // Calculate NBA game progress at 5:30 remaining in Q2
|
|
109
|
+
* calculateGameProgress(2, "05:30", SportGroup.Basketball, OddsServices.LSPORTS)
|
|
110
|
+
* // Returns approximately 3125 BPS (31.25% through the game)
|
|
111
|
+
*/
|
|
112
|
+
const calculateGameProgress = (currentPeriod, gameClock, sportGroup, provider, isTopOfInning, leagueSelector) => {
|
|
58
113
|
const config = oracle_1.SportsGamePeriodClockConfig[sportGroup];
|
|
59
|
-
if (!config
|
|
114
|
+
if (!config)
|
|
115
|
+
return null;
|
|
116
|
+
// Check if this is a league-specific config (NCAA)
|
|
117
|
+
const leagueConfig = leagueSelector ? config[provider].leaguePeriods?.[leagueSelector] : null;
|
|
118
|
+
const mainPeriodsConfig = leagueConfig ?? config[provider].sportPeriods;
|
|
119
|
+
// Extract the actual PeriodConfig (handle nested structure), to cater for league-specific configs
|
|
120
|
+
const periodConfig = "periodConfig" in mainPeriodsConfig ? mainPeriodsConfig.periodConfig : mainPeriodsConfig;
|
|
121
|
+
if (!periodConfig.regular.includes(currentPeriod))
|
|
60
122
|
return null;
|
|
61
|
-
|
|
123
|
+
// Use NCAA period mapper for league-specific calculations
|
|
124
|
+
const periodMapper = leagueConfig ? NCAA_PERIOD_MAPPERS[provider] : PERIOD_MAPPERS[provider]?.[sportGroup];
|
|
62
125
|
if (!periodMapper)
|
|
63
126
|
return null;
|
|
64
|
-
const
|
|
127
|
+
const totalPeriods = leagueConfig ? leagueConfig.totalPeriods : config.totalPeriods;
|
|
128
|
+
const totalPeriodDurationInSeconds = leagueConfig
|
|
129
|
+
? leagueConfig.totalPeriodDurationInSeconds
|
|
130
|
+
: config.totalPeriodDurationInSeconds;
|
|
131
|
+
const period = periodMapper(currentPeriod, totalPeriods);
|
|
65
132
|
if (period === null)
|
|
66
133
|
return null;
|
|
67
134
|
const gameClockInSeconds = (0, parser_1.parseGameClockToSeconds)(gameClock);
|
|
68
135
|
if (gameClockInSeconds === null)
|
|
69
136
|
return null;
|
|
70
|
-
return (0, game_utils_1.getGameProgressBPS)(gameClockInSeconds,
|
|
137
|
+
return (0, game_utils_1.getGameProgressBPS)(gameClockInSeconds, totalPeriodDurationInSeconds, period, totalPeriods, sportGroup, periodConfig.countUpClock, isTopOfInning);
|
|
71
138
|
};
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
139
|
+
exports.calculateGameProgress = calculateGameProgress;
|
|
140
|
+
/**
|
|
141
|
+
* Calculates game progress for Soccer matches in basis points (BPS).
|
|
142
|
+
* Soccer uses 2 x 45 minute halves with a count-up clock.
|
|
143
|
+
*
|
|
144
|
+
* @param currentPeriod - The current half (LSports: 10=1st half, 20=2nd half; OpticOdds: 1 or 2)
|
|
145
|
+
* @param gameClock - The elapsed time in "MM:SS" format (e.g., "32:15")
|
|
146
|
+
* @param provider - The odds service provider
|
|
147
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* // First half at 30 minutes
|
|
151
|
+
* calculateSoccerProgress(10, "30:00", SportGroup.Soccer, OddsServices.LSPORTS)
|
|
152
|
+
* // Returns ~3333 BPS (33.33% through the game)
|
|
153
|
+
*/
|
|
154
|
+
const calculateSoccerProgress = (currentPeriod, gameClock, provider) => {
|
|
155
|
+
return (0, exports.calculateGameProgress)(currentPeriod, gameClock, client_1.SportGroup.Soccer, provider);
|
|
76
156
|
};
|
|
77
157
|
exports.calculateSoccerProgress = calculateSoccerProgress;
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
158
|
+
/**
|
|
159
|
+
* Calculates game progress for Basketball (NBA) matches in basis points (BPS).
|
|
160
|
+
* NBA uses 4 x 12 minute quarters with a countdown clock.
|
|
161
|
+
*
|
|
162
|
+
* @param currentPeriod - The current quarter (1-4)
|
|
163
|
+
* @param gameClock - The time remaining in "MM:SS" format (e.g., "08:45")
|
|
164
|
+
* @param provider - The odds service provider
|
|
165
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
166
|
+
*
|
|
167
|
+
* @example
|
|
168
|
+
* // Third quarter with 6 minutes remaining
|
|
169
|
+
* calculateBasketballProgress(3, "06:00", SportGroup.Basketball, OddsServices.LSPORTS)
|
|
170
|
+
* // Returns ~6250 BPS (62.5% through the game)
|
|
171
|
+
*/
|
|
172
|
+
const calculateBasketballProgress = (currentPeriod, gameClock, provider) => {
|
|
173
|
+
return (0, exports.calculateGameProgress)(currentPeriod, gameClock, client_1.SportGroup.Basketball, provider);
|
|
82
174
|
};
|
|
83
175
|
exports.calculateBasketballProgress = calculateBasketballProgress;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
176
|
+
/**
|
|
177
|
+
* Calculates game progress for American Football (NFL) matches in basis points (BPS).
|
|
178
|
+
* NFL uses 4 x 15 minute quarters with a countdown clock.
|
|
179
|
+
*
|
|
180
|
+
* @param currentPeriod - The current quarter (1-4)
|
|
181
|
+
* @param gameClock - The time remaining in "MM:SS" format (e.g., "12:30")
|
|
182
|
+
* @param provider - The odds service provider
|
|
183
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
* // Second quarter with 8 minutes remaining
|
|
187
|
+
* calculateFootballProgress(2, "08:00", SportGroup.Football, OddsServices.LSPORTS)
|
|
188
|
+
* // Returns ~3667 BPS (36.67% through the game)
|
|
189
|
+
*/
|
|
190
|
+
const calculateFootballProgress = (currentPeriod, gameClock, provider) => {
|
|
191
|
+
return (0, exports.calculateGameProgress)(currentPeriod, gameClock, client_1.SportGroup.Football, provider);
|
|
88
192
|
};
|
|
89
193
|
exports.calculateFootballProgress = calculateFootballProgress;
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
194
|
+
/**
|
|
195
|
+
* Calculates game progress for Baseball (MLB) matches in basis points (BPS).
|
|
196
|
+
* Baseball uses 9 innings, each with a top and bottom half.
|
|
197
|
+
* Progress is calculated based on completed half-innings.
|
|
198
|
+
*
|
|
199
|
+
* @param currentPeriod - The current inning (1-9)
|
|
200
|
+
* @param isTopOfInning - True if it's the top of the inning (away team batting)
|
|
201
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* // Top of the 5th inning
|
|
205
|
+
* calculateBaseballProgress(5, true)
|
|
206
|
+
* // Returns ~4444 BPS (44.44% through the game)
|
|
207
|
+
*
|
|
208
|
+
* @example
|
|
209
|
+
* // Bottom of the 7th inning
|
|
210
|
+
* calculateBaseballProgress(7, false)
|
|
211
|
+
* // Returns ~7778 BPS (77.78% through the game)
|
|
212
|
+
*/
|
|
213
|
+
const calculateBaseballProgress = (currentPeriod, isTopOfInning) => {
|
|
214
|
+
const config = oracle_1.SportsGamePeriodClockConfig[client_1.SportGroup.Baseball];
|
|
215
|
+
if (!config)
|
|
216
|
+
return null;
|
|
217
|
+
return (0, game_utils_1.calculateBaseballProgressBPS)(currentPeriod, config.totalPeriods, isTopOfInning);
|
|
94
218
|
};
|
|
95
219
|
exports.calculateBaseballProgress = calculateBaseballProgress;
|
|
220
|
+
/**
|
|
221
|
+
* Calculates game progress for NCAA Basketball (NCAAB) matches in basis points (BPS).
|
|
222
|
+
* NCAAB uses 2 x 20 minute halves with a countdown clock (different from NBA's 4 quarters).
|
|
223
|
+
*
|
|
224
|
+
* @param currentPeriod - The current half (LSports: 10=1st half, 20=2nd half; OpticOdds: 1 or 2)
|
|
225
|
+
* @param gameClock - The time remaining
|
|
226
|
+
* @param provider - The odds service provider
|
|
227
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
228
|
+
*
|
|
229
|
+
* @remarks
|
|
230
|
+
* - LSports uses period codes 10 and 20 for 1st and 2nd halves respectively
|
|
231
|
+
* - OpticOdds uses standard 1 and 2 for halves
|
|
232
|
+
* - Total game duration: 40 minutes (2 x 20 min halves)
|
|
233
|
+
*
|
|
234
|
+
* @example
|
|
235
|
+
* // First half with 10 minutes remaining (LSports)
|
|
236
|
+
* calculateNCAABProgress(10, "10:00", OddsServices.LSPORTS)
|
|
237
|
+
* // Returns ~2500 BPS (25% through the game)
|
|
238
|
+
*/
|
|
239
|
+
const calculateNCAABProgress = (currentPeriod, gameClock, provider) => {
|
|
240
|
+
return (0, exports.calculateGameProgress)(currentPeriod, gameClock, client_1.SportGroup.Basketball, provider, undefined, oracle_1.LEAGUE_SELECTORS.NCAA_BASKETBALL);
|
|
241
|
+
};
|
|
242
|
+
exports.calculateNCAABProgress = calculateNCAABProgress;
|
|
243
|
+
/**
|
|
244
|
+
* Calculates game progress for NCAA Football (NCAAF) matches in basis points (BPS).
|
|
245
|
+
* NCAAF uses 2 x 30 minute halves (equivalent to 4 x 15 min quarters) with a countdown clock.
|
|
246
|
+
*
|
|
247
|
+
* @param currentPeriod - The current half (LSports: 10=1st half, 20=2nd half; OpticOdds: 1 or 2)
|
|
248
|
+
* @param gameClock - The time remaining in "MM:SS" format (e.g., "25:00")
|
|
249
|
+
* @param provider - The odds service provider
|
|
250
|
+
* @returns Game progress in BPS (0-10000) or null if invalid
|
|
251
|
+
*
|
|
252
|
+
* @remarks
|
|
253
|
+
* - LSports uses period codes 10 and 20 for 1st and 2nd halves respectively
|
|
254
|
+
* - OpticOdds uses standard 1 and 2 for halves
|
|
255
|
+
* - Total game duration: 60 minutes (2 x 30 min halves)
|
|
256
|
+
* - Quarters are grouped into halves for period tracking
|
|
257
|
+
*
|
|
258
|
+
* @example
|
|
259
|
+
* // First half with 20 minutes remaining (LSports)
|
|
260
|
+
* calculateNCAAFProgress(10, "20:00", OddsServices.LSPORTS)
|
|
261
|
+
* // Returns ~1667 BPS (16.67% through the game)
|
|
262
|
+
*/
|
|
263
|
+
const calculateNCAAFProgress = (currentPeriod, gameClock, provider) => {
|
|
264
|
+
return (0, exports.calculateGameProgress)(currentPeriod, gameClock, client_1.SportGroup.Football, provider, undefined, oracle_1.LEAGUE_SELECTORS.NCAA_FOOTBALL);
|
|
265
|
+
};
|
|
266
|
+
exports.calculateNCAAFProgress = calculateNCAAFProgress;
|
|
96
267
|
//# sourceMappingURL=caclulate.game.progress.js.map
|